ნაშრომში „TAPEX: ცხრილის წინასწარი ვარჯიში ნერვული SQL შემსრულებლის სწავლით“ ჩვენ ვიკვლევთ სინთეზური მონაცემების გამოყენებას, როგორც რეალური მონაცემების შემცვლელს წინასწარი ვარჯიშის დროს და ვაჩვენებთ მის ეფექტურობას TAPEX-ის (ცხრილის წინასწარი ვარჯიში შესრულების გზით) მაგალითზე. TAPEX-ში ჩვენ ვამტკიცებთ, რომ ცხრილის წინასწარი ვარჯიში მიღწევადია სინთეზურ კორპუსზე ნერვული SQL შემსრულებლის სწავლით. შენიშვნა: [ცხრილი] არის ჩამნაცვლებელი მომხმარებლის მიერ მიწოდებული ცხრილისთვის შეყვანისას. როგორც ნაჩვენებია ზემოთ მოცემულ ფიგურაზე, ცხრილებზე შესრულებადი SQL მოთხოვნებისა და მათი შესრულების შედეგების სისტემატური შერჩევის გზით, TAPEX ჯერ სინთეზირებს სინთეზურ და არაბუნებრივ წინასწარი ვარჯიშის კორპუსს. შემდეგ, ის აგრძელებს ენის მოდელის (მაგ., BART) წინასწარ ვარჯიშს SQL მოთხოვნების შესრულების შედეგების გამოსატანად, რაც მიბაძავს ნერვული SQL შემსრულებლის პროცესს. ქვემოთ მოცემული ფიგურა ასახავს წინასწარი ვარჯიშის პროცესს. ყოველ ნაბიჯზე, ჩვენ ჯერ ვიღებთ ცხრილს ვებიდან. მაგალითის ცხრილი ეხება ოლიმპიურ თამაშებს. შემდეგ შეგვიძლია ავირჩიოთ შესრულებადი SQL მოთხოვნა `SELECT City WHERE Country = France ORDER BY Year ASC LIMIT 1`. არსებული SQL შემსრულებლის (მაგ., MySQL) მეშვეობით, შეგვიძლია მივიღოთ მოთხოვნის შესრულების შედეგი - „პარიზი“. ანალოგიურად, SQL მოთხოვნისა და გაბრტყელებული ცხრილის კონკატენაციის მოდელისთვის (მაგ., BART ენკოდერი) შეყვანად მიწოდებით, შესრულების შედეგი ემსახურება მოდელისთვის (მაგ., BART დეკოდერი) ზედამხედველობას, როგორც გამოსავალი. რატომ გამოვიყენოთ პროგრამები, როგორიცაა SQL მოთხოვნები, და არა ბუნებრივი ენის წინადადებები, როგორც წინასწარი ვარჯიშის წყარო? უდიდესი უპირატესობა ის არის, რომ პროგრამების მრავალფეროვნება და მასშტაბი შეიძლება სისტემატურად იყოს გარანტირებული, განსხვავებით უკონტროლო ბუნებრივი ენის წინადადებებისგან. ამიტომ, ჩვენ შეგვიძლია მარტივად მოვახდინოთ მრავალფეროვანი, ფართომასშტაბიანი და მაღალი ხარისხის წინასწარი ვარჯიშის კორპუსის სინთეზი SQL მოთხოვნების შერჩევის გზით. შეგიძლიათ სცადოთ გაწვრთნილი ნერვული SQL შემსრულებელი 🤗 Transformers-ში, როგორც ქვემოთ არის მოცემული: წვრილი დარეგულირების (fine-tuning) დროს, ჩვენ მოდელს შეყვანად ვაწვდით ბუნებრივი ენის კითხვისა და გაბრტყელებული ცხრილის კონკატენაციას; ანოტატორების მიერ მონიშნული პასუხი ემსახურება მოდელისთვის ზედამხედველობას, როგორც გამოსავალი. გსურთ თავად მოახდინოთ TAPEX-ის წვრილი დარეგულირება? შეგიძლიათ ნახოთ წვრილი დარეგულირების სკრიპტი აქ, რომელიც ოფიციალურად ინტეგრირებულია 🤗 Transformers 4.19.0-ში! და ამჟამად, TAPEX-ის ყველა ხელმისაწვდომ მოდელს აქვს ინტერაქტიული ვიჯეტები, რომლებიც ოფიციალურად მხარდაჭერილია Huggingface-ის მიერ! შეგიძლიათ სცადოთ რამდენიმე კითხვაზე პასუხის გაცემა, როგორც ქვემოთ არის მოცემული. ჩვენ ვაფასებთ TAPEX-ს ოთხ საეტაპო მონაცემთა ნაკრებზე, მათ შორის WikiSQL (სუსტი ზედამხედველობით), WikiTableQuestions, SQA და TabFact. პირველი სამი მონაცემთა ნაკრები ეხება ცხრილის კითხვებზე პასუხის გაცემას, ხოლო უკანასკნელი ეხება ცხრილის ფაქტების გადამოწმებას, ორივე მოითხოვს ცხრილებისა და ბუნებრივი ენის ერთობლივ მსჯელობას. ქვემოთ მოცემულია რამდენიმე მაგალითი ყველაზე რთული მონაცემთა ნაკრებიდან, WikiTableQuestions: ექსპერიმენტული შედეგები აჩვენებს, რომ TAPEX მნიშვნელოვნად აღემატება ცხრილის წინასწარი ვარჯიშის წინა მიდგომებს და ⭐აღწევს უახლეს (state-of-the-art) შედეგებს ყველა მათგანზე⭐. ეს მოიცავს გაუმჯობესებებს სუსტად კონტროლირებული WikiSQL-ის დენოტაციის სიზუსტეში 89.6%-მდე (+2.3% SOTA-ზე მეტი, +3.8% BART-ზე მეტი), TabFact-ის სიზუსტეში 84.2%-მდე (+3.2% SOTA-ზე მეტი, +3.0% BART-ზე მეტი), SQA-ის დენოტაციის სიზუსტეში 74.5%-მდე (+3.5% SOTA-ზე მეტი, +15.9% BART-ზე მეტი) და WikiTableQuestion-ის დენოტაციის სიზუსტეში 57.5%-მდე (+4.8% SOTA-ზე მეტი, +19.5% BART-ზე მეტი). ჩვენი ცოდნით, ეს არის პირველი ნაშრომი, რომელიც იყენებს წინასწარ ვარჯიშს სინთეზური შესრულებადი პროგრამების მეშვეობით და აღწევს უახლეს შედეგებს სხვადასხვა შემდგომ ამოცანებზე. ცხრილის წინასწარ ვარჯიშზე ადრეულმა ნაშრომებმა, Google Research-ის TAPAS-მა (ასევე ხელმისაწვდომია 🤗 Transformers-ში) და Meta AI-ის TaBERT-მა, აჩვენეს, რომ მეტი დომენურად ადაპტირებული მონაცემების შეგროვება აუმჯობესებს შემდგომ შესრულებას. თუმცა, ეს წინა ნაშრომები ძირითადად იყენებენ ზოგადი დანიშნულების წინასწარი ვარჯიშის ამოცანებს, მაგ., ენის მოდელირებას ან მის ვარიანტებს. TAPEX სხვა გზას იკვლევს, სწირავს რა წინასწარ გაწვრთნილი წყაროს ბუნებრიობას, რათა მიიღოს დომენურად ადაპტირებული წინასწარ გაწვრთნილი ამოცანა, ანუ SQL შესრულება. BERT-ის, TAPAS/TaBERT-ის და ჩვენი TAPEX-ის გრაფიკული შედარება შეგიძლიათ იხილოთ ქვემოთ. ჩვენ გვჯერა, რომ SQL შესრულების ამოცანა უფრო ახლოს არის შემდგომი ცხრილის კითხვებზე პასუხის გაცემის ამოცანასთან, განსაკუთრებით სტრუქტურული მსჯელობის შესაძლებლობების პერსპექტივიდან. წარმოიდგინეთ, რომ თქვენ გხვდებათ SQL მოთხოვნა `SELECT City ORDER BY Year` და ბუნებრივი კითხვა „დაალაგეთ ყველა ქალაქი წლის მიხედვით“. SQL მოთხოვნისა და კითხვის მიერ მოთხოვნილი მსჯელობის გზები მსგავსია, გარდა იმისა, რომ SQL ოდნავ უფრო ხისტია ვიდრე ბუნებრივი ენა. თუ ენის მოდელი შეიძლება წინასწარ გაწვრთნილი იყოს SQL მოთხოვნების ერთგულად „შესასრულებლად“ და სწორი შედეგების მისაღებად, მას უნდა ჰქონდეს ღრმა გაგება ბუნებრივი ენის მსგავსი განზრახვებით. რაც შეეხება ეფექტურობას? რამდენად ეფექტურია ასეთი წინასწარი ვარჯიშის მეთოდი წინა წინასწარ ვარჯიშთან შედარებით? პასუხი მოცემულია ზემოთ მოცემულ ფიგურაზე: ცხრილის წინასწარი ვარჯიშის წინა მეთოდთან, TaBERT-თან შედარებით, TAPEX-მა შეძლო 2%-იანი გაუმჯობესება მხოლოდ წინასწარი ვარჯიშის კორპუსის 2%-ის გამოყენებით, რითაც მიაღწია თითქმის 50-ჯერ გაზრდილ სიჩქარეს! უფრო დიდი წინასწარი ვარჯიშის კორპუსით (მაგ., 5 მილიონი წყვილი), ...