„Few-Shot“ სწავლება გულისხმობს მანქანური სწავლების მოდელისთვის ძალიან მცირე რაოდენობის სავარჯიშო მონაცემების მიწოდებას, რათა მოდელმა შეძლოს პროგნოზების გაკეთება, მაგალითად, რამდენიმე მაგალითის საფუძველზე ინფერენციის დროს. ეს განსხვავდება სტანდარტული „fine-tuning“ (დახვეწის) ტექნიკებისგან, რომლებიც საჭიროებენ შედარებით დიდ მოცულობის სავარჯიშო მონაცემებს, რათა წინასწარ გაწვრთნილი მოდელი ზუსტად მოერგოს სასურველ ამოცანას. ეს ტექნიკა, ძირითადად, კომპიუტერულ მხედველობაში (computer vision) გამოიყენებოდა, მაგრამ უახლესი ენობრივი მოდელების, მაგალითად, EleutherAI GPT-Neo-სა და OpenAI GPT-3-ის წყალობით, მისი გამოყენება უკვე შესაძლებელია ბუნებრივი ენის დამუშავებაში (NLP). ბუნებრივი ენის დამუშავებაში, „Few-Shot“ სწავლება შეიძლება გამოყენებულ იქნას დიდ ენობრივ მოდელებთან (Large Language Models), რომლებმაც წინასწარი ვარჯიშის დროს, დიდი ტექსტური მონაცემთა ნაკრებების გამოყენებით, არაერთი ამოცანის შესრულება ისწავლეს იმპლიციტურად. ეს მოდელს განზოგადების საშუალებას აძლევს, ანუ მას შეუძლია გაიგოს დაკავშირებული, მაგრამ აქამდე უცნობი ამოცანები, მხოლოდ რამდენიმე მაგალითით. „Few-Shot“ NLP მაგალითები სამი ძირითადი კომპონენტისგან შედგება: სურათი წყაროდან: Language Models are Few-Shot Learners. ამ „few-shot“ მაგალითების შექმნა შეიძლება რთული იყოს, რადგან მათ მეშვეობით ზუსტად უნდა ჩამოაყალიბოთ „ამოცანა“, რომლის შესრულებაც გსურთ მოდელისგან. ხშირი პრობლემა ისაა, რომ მოდელები, განსაკუთრებით კი მცირე ზომის მოდელები, ძალიან მგრძნობიარენი არიან იმის მიმართ, თუ როგორ არის დაწერილი მაგალითები. „Few-Shot“ სწავლების ოპტიმიზაციის ერთ-ერთი მიდგომა წარმოებაში არის ამოცანის საერთო წარმოდგენის სწავლა და შემდეგ, ამ წარმოდგენაზე დაფუძნებული, ამოცანისთვის სპეციფიკური კლასიფიკატორების გაწვრთნა. OpenAI-მ GPT-3-ის ნაშრომში აჩვენა, რომ „few-shot“ „prompting“ (მოთხოვნის) უნარი უმჯობესდება ენობრივი მოდელის პარამეტრების რაოდენობის მატებასთან ერთად. სურათი წყაროდან: Language Models are Few-Shot Learners. ახლა ვნახოთ, როგორ შეიძლება GPT-Neo-სა და 🤗 Accelerated Inference API-ის გამოყენება თქვენი საკუთარი „Few-Shot“ სწავლის პროგნოზების შესაქმნელად! GPT-Neo არის EleutherAI-ს მიერ შექმნილი ტრანსფორმატორზე დაფუძნებული ენობრივი მოდელების ოჯახი, რომელიც GPT არქიტექტურას ეფუძნება. EleutherAI-ს მთავარი მიზანია, გაწვრთნას მოდელი, რომელიც GPT-3-ის ზომის ეკვივალენტური იქნება და მას საზოგადოებისთვის ღია ლიცენზიით ხელმისაწვდომს გახდის. ამჟამად არსებული GPT-Neo „ჩექპოინტები“ გაწვრთნილია „Pile“ მონაცემთა ნაკრებით, რომელიც დიდი ტექსტური კორპუსია და ვრცლად არის დოკუმენტირებული (Gao et al., 2021) ნაშრომში. შესაბამისად, მოსალოდნელია, რომ ის უკეთ იმუშავებს იმ ტექსტთან, რომელიც ემთხვევა მისი სავარჯიშო ტექსტის განაწილებას; გირჩევთ, ეს გაითვალისწინოთ თქვენი მაგალითების შემუშავებისას. Accelerated Inference API არის ჩვენი ჰოსტინგური სერვისი, რომელიც საშუალებას გაძლევთ, განახორციელოთ ინფერენცია (პროგნოზირება) 10,000-ზე მეტ საჯაროდ ხელმისაწვდომ მოდელზე 🤗 Model Hub-დან, ან თქვენს კერძო მოდელებზე, მარტივი API გამოძახებების მეშვეობით. API მოიცავს აჩქარებას CPU-სა და GPU-ზე, რაც 100-ჯერ უფრო სწრაფ შესრულებას უზრუნველყოფს Transformers-ის სტანდარტულ განთავსებასთან შედარებით. თქვენს აპლიკაციებში „Few-Shot“ სწავლის პროგნოზების GPT-Neo-სთან ინტეგრირებისთვის, შეგიძლიათ გამოიყენოთ 🤗 Accelerated Inference API ქვემოთ მოცემული კოდის ფრაგმენტით. თქვენი API ტოკენი შეგიძლიათ იხილოთ აქ, თუ არ გაქვთ ანგარიში, შეგიძლიათ დაიწყოთ აქ. გთავაზობთ რამდენიმე პრაქტიკულ რჩევას, რომელიც დაგეხმარებათ GPT-Neo-სა და 🤗 Accelerated Inference API-ის გამოყენების დაწყებაში. რადგან GPT-Neo (2.7B) დაახლოებით 60-ჯერ მცირეა GPT-3-ზე (175B), ის არ განაზოგადებს ისე კარგად „zero-shot“ ამოცანებს და საჭიროებს 3-4 მაგალითს კარგი შედეგების მისაღებად. როდესაც უფრო მეტ მაგალითს აწვდით, GPT-Neo უკეთ ესმის ამოცანა და ითვალისწინებს „end_sequence“-ს, რაც საშუალებას გვაძლევს, კარგად გავაკონტროლოთ გენერირებული ტექსტი. ჰიპერპარამეტრები: „End Sequence“ (დასასრული თანმიმდევრობა), „Token Length“ (ტოკენის სიგრძე) და „Temperature“ (ტემპერატურა) შეიძლება გამოყენებულ იქნას მოდელის მიერ ტექსტის გენერაციის გასაკონტროლებლად და თქვენ შეგიძლიათ ეს თქვენს სასარგებლოდ გამოიყენოთ საჭირო ამოცანის ამოსახსნელად. „Temperature“ აკონტროლებს თქვენი გენერაციების რანდომულობას; დაბალი ტემპერატურა იწვევს ნაკლებად რანდომულ გენერაციებს, ხოლო მაღალი ტემპერატურა – უფრო რანდომულ გენერაციებს. მაგალითში შეგიძლიათ ნახოთ, რამდენად მნიშვნელოვანია თქვენი ჰიპერპარამეტრების განსაზღვრა. მათ შეუძლიათ გადაწყვიტონ თქვენი ამოცანის წარმატება ან სრული კრახი. „Few-Shot“ სწავლება მძლავრი ტექნიკაა, მაგრამ მას ასევე აქვს უნიკალური ხარვეზები, რომლებიც გასათვალისწინებელია გამოყენების შემთხვევების შემუშავებისას. ამის საილუსტრაციოდ, განვიხილოთ ვიჯეტში მოცემული სენტიმენტის ანალიზის სტანდარტული პარამეტრი. სენტიმენტის კლასიფიკაციის სამი მაგალითის ნახვის შემდეგ, მოდელი შემდეგ პროგნოზებს აკეთებს 5-დან 4 შემთხვევაში, ტემპერატურის 0.1-ზე დაყენებისას: ტვიტი: „მე ვარ შეზღუდული შესაძლებლობის მქონე ბედნიერი ადამიანი“. სენტიმენტი: უარყოფითი. რა შეიძლება მოხდეს არასწორად? წარმოიდგინეთ, რომ იყენებთ სენტიმენტის ანალიზს ონლაინ მაღაზიის ვებსაიტზე პროდუქტების მიმოხილვების აგრეგირებისთვის: შესაძლო შედეგი შეიძლება იყოს ის, რომ შეზღუდული შესაძლებლობის მქონე ადამიანებისთვის სასარგებლო ნივთები ავტომატურად დაიწევს რეიტინგში – რაც ავტომატური დისკრიმინაციის ფორმაა. ამ კონკრეტულ საკითხზე მეტის გასაგებად, გირჩევთ ACL 2020 წლის ნაშრომს: „Social Biases in NLP Models as Barriers for Persons with Disabilities“ (სოციალური მიკერძოება ბუნებრივი ენის დამუშავების მოდელებში, როგორც ბარიერი შეზღუდული შესაძლებლობის მქონე პირთათვის). რადგან „Few-Shot“ სწავლება უფრო პირდაპირ ეყრდნობა წინასწარი ვარჯიშის შედეგად მიღებულ ინფორმაციასა და ასოციაციებს, ის უფრო მგრძნობიარე ხდება ამ ტიპის ხარვეზების მიმართ. როგორ შევამციროთ ზიანის რისკი? გთავაზობთ რამდენიმე პრაქტიკულ რეკომენდაციას. ყველაზე მეტად თავიდან უნდა იქნას აცილებული მოდელის გამოყენება მომხმარებლისთვის ან მის შესახებ ავტომატური გადაწყვეტილებების მისაღებად, ყოველგვარი შესაძლებლობის გარეშე, ...