BERT (Bidirectional Encoder Representations from Transformers) – ტრანსფორმერების ორმხრივი ენკოდერის წარმოდგენების შემოკლებული ვარიანტი – მანქანური სწავლების (ML) მოდელია ბუნებრივი ენის დამუშავებისთვის (NLP). ის 2018 წელს Google AI Language-ის მკვლევარებმა შეიმუშავეს და წარმოადგენს მრავალფუნქციურ („შვეიცარიული დანის“) გადაწყვეტას 11-ზე მეტი ყველაზე გავრცელებული ენობრივი ამოცანისთვის, როგორიცაა სენტიმენტების ანალიზი და დასახელებული ერთეულების ამოცნობა. ისტორიულად, კომპიუტერებისთვის ენის „გაგება“ რთული იყო. რა თქმა უნდა, კომპიუტერებს შეუძლიათ ტექსტური შეტანების შეგროვება, შენახვა და წაკითხვა, მაგრამ მათ აკლიათ ენის საბაზისო კონტექსტი. სწორედ აქ გამოჩნდა ბუნებრივი ენის დამუშავება (NLP): ხელოვნური ინტელექტის სფერო, რომელიც მიზნად ისახავს კომპიუტერებმა წაიკითხონ, გააანალიზონ, ინტერპრეტაცია გაუკეთონ და აზრი გამოიტანონ ტექსტიდან და ნათქვამი სიტყვებიდან. ეს პრაქტიკა აერთიანებს ლინგვისტიკას, სტატისტიკასა და მანქანურ სწავლებას, რათა დაეხმაროს კომპიუტერებს ადამიანის ენის „გაგებაში“. ტრადიციულად, ინდივიდუალური NLP ამოცანები წყდებოდა ცალკეული მოდელებით, რომლებიც შექმნილი იყო თითოეული კონკრეტული ამოცანისთვის. ეს გრძელდებოდა მანამ, სანამ გამოჩნდა BERT! BERT-მა მოახდინა რევოლუცია NLP სივრცეში, რადგან მან გადაჭრა 11-ზე მეტი ყველაზე გავრცელებული NLP ამოცანა (და უკეთესად, ვიდრე წინა მოდელებმა), რითაც ის NLP-ის ყველა „ოსტატად“ აქცია. ამ სახელმძღვანელოში გაიგებთ, რა არის BERT, რითი განსხვავდება ის სხვებისგან და როგორ დაიწყოთ მისი გამოყენება: მოდით, დავიწყოთ! 🚀 BERT შეიძლება გამოყენებულ იქნას ენობრივი ამოცანების ფართო სპექტრზე: არსებობს მრავალი სხვა ენობრივი/NLP ამოცანა და მეტი დეტალი თითოეულის მიღმა. საინტერესო ფაქტი: თქვენ თითქმის ყოველდღე ურთიერთობთ NLP-სთან (და სავარაუდოდ BERT-თან)! NLP დგას Google Translate-ის, ხმოვანი ასისტენტების (Alexa, Siri და ა.შ.), ჩატბოტების, Google ძიებების, ხმით მართვადი GPS-ის და სხვა მრავალი ტექნოლოგიის მიღმა. BERT ეხმარება Google-ს უკეთ წარმოაჩინოს (ინგლისურენოვანი) შედეგები თითქმის ყველა ძიებისთვის 2020 წლის ნოემბრიდან. აი მაგალითი, თუ როგორ ეხმარება BERT Google-ს უკეთ გაიგოს კონკრეტული ძიებები, როგორიცაა: „წამლის აკრეფა ვინმესთვის“. BERT-ის გამოჩენამდე Google აჩვენებდა ინფორმაციას რეცეპტის შევსების შესახებ. BERT-ის შემდეგ Google ხვდება, რომ „ვინმესთვის“ გულისხმობს რეცეპტის სხვებისთვის აღებას და ძიების შედეგები ახლა ამ კითხვაზე პასუხის გაცემაში გვეხმარება. BERT მუშაობს შემდეგის გამოყენებით: 3.3 მილიარდი სიტყვის მასიური მონაცემთა ნაკრები მუდმივად უწყობდა ხელს BERT-ის წარმატებას. BERT სპეციალურად გაწვრთნილი იყო Wikipedia-ზე (~2.5 მილიარდი სიტყვა) და Google-ის BooksCorpus-ზე (~800 მილიონი სიტყვა). ამ დიდმა საინფორმაციო მონაცემთა ნაკრებმა ხელი შეუწყო BERT-ის ღრმა ცოდნას არა მხოლოდ ინგლისური ენის, არამედ ჩვენი სამყაროს შესახებ! 🚀 ასეთი დიდი მონაცემთა ნაკრების გაწვრთნა დიდ დროს მოითხოვს. BERT-ის გაწვრთნა შესაძლებელი გახდა ტრანსფორმერების ინოვაციური არქიტექტურის წყალობით და დაჩქარდა TPU-ების (Tensor Processing Units – Google-ის საკუთარი მიკროსქემის, რომელიც სპეციალურად დიდი ML მოდელებისთვის შეიქმნა) გამოყენებით. — 64 TPU-მ BERT გაწვრთნა 4 დღის განმავლობაში. შენიშვნა: უფრო მცირე BERT მოდელებზე მოთხოვნა იზრდება, რათა BERT-ის გამოყენება მოხდეს მცირე კომპიუტერულ გარემოში (როგორიცაა მობილური ტელეფონები და პერსონალური კომპიუტერები). 2020 წლის მარტში გამოვიდა 23 უფრო მცირე BERT მოდელი. DistilBERT გვთავაზობს BERT-ის მსუბუქ ვერსიას; ის 60%-ით უფრო სწრაფად მუშაობს, ხოლო ინარჩუნებს BERT-ის მუშაობის 95%-ზე მეტს. MLM (Masked Language Model) საშუალებას აძლევს/უზრუნველყოფს ტექსტიდან ორმხრივ სწავლებას წინადადებაში სიტყვის დაფარვით (დანიღბვით) და BERT-ის იძულებით, რომ დაფარული სიტყვის ორივე მხარეს არსებული სიტყვები ორმხრივად გამოიყენოს დანიღბული სიტყვის პროგნოზირებისთვის. ეს მანამდე არასდროს გაკეთებულა! საინტერესო ფაქტი: ჩვენ, ადამიანები, ამას ბუნებრივად ვაკეთებთ! ნიღბიანი ენის მოდელის მაგალითი: წარმოიდგინეთ, რომ მეგობარი გირეკავთ Glacier National Park-ში კემპინგის დროს და მისი კავშირი წყდება. ბოლო, რასაც გესმით ზარის გაწყვეტამდე, არის: მეგობარი: „ჯანდაბა! ვთევზაობ და უზარმაზარმა კალმახმა უბრალოდ [ცარიელი] ჩემი ხაზი!“ შეგიძლიათ გამოიცნოთ, რა თქვა თქვენმა მეგობარმა?? თქვენ ბუნებრივად შეგიძლიათ იწინასწარმეტყველოთ გამოტოვებული სიტყვა, დაკარგული სიტყვის წინ და შემდეგ არსებული სიტყვების ორმხრივად განხილვით, როგორც კონტექსტური მინიშნებები (გარდა იმისა, თუ როგორ მუშაობს თევზაობა). გამოიცანით, რომ თქვენმა მეგობარმა თქვა „გაწყვიტა“? ჩვენც ეს ვიწინასწარმეტყველეთ, მაგრამ ჩვენ, ადამიანებიც კი მიდრეკილნი ვართ შეცდომებისკენ ამ მეთოდებში. შენიშვნა: სწორედ ამიტომ ხშირად ნახავთ „ადამიანის შესრულების“ შედარებას ენის მოდელის შესრულების ქულებთან. და დიახ, უფრო ახალი მოდელები, როგორიცაა BERT, შეიძლება უფრო ზუსტი იყოს ვიდრე ადამიანები! 🤯 ორმხრივი მეთოდოლოგია, რომელიც თქვენ გამოიყენეთ ზემოთ [ცარიელი] სიტყვის შესავსებად, მსგავსია იმისა, თუ როგორ აღწევს BERT უახლეს სიზუსტეს. შემთხვევითი 15% ტოკენიზებული სიტყვები იმალება ვარჯიშის დროს და BERT-ის ამოცანაა სწორად იწინასწარმეტყველოს დამალული სიტყვები. ამრიგად, მოდელი პირდაპირ სწავლობს ინგლისურ ენას (და იმ სიტყვებს, რომლებსაც ჩვენ ვიყენებთ). განა ეს არაჩვეულებრივი არ არის? ითამაშეთ BERT-ის ნიღბიანი პროგნოზებით: საინტერესო ფაქტი: ნიღბვა დიდი ხანია არსებობს – 1953 წლის ნაშრომი Cloze პროცედურის (ანუ 'Masking') შესახებ. NSP (Next Sentence Prediction) გამოიყენება იმისთვის, რომ BERT-მა ისწავლოს წინადადებებს შორის ურთიერთობები იმის პროგნოზირებით, თუ მოცემული წინადადება მოსდევს წინა წინადადებას თუ არა. შემდეგი წინადადების პროგნოზირების მაგალითი: ვარჯიშის დროს, 50% სწორი წინადადებების წყვილები ერევა 50% შემთხვევით წინადადებების წყვილებს, რათა დაეხმაროს BERT-ს გაზარდოს შემდეგი წინადადების პროგნოზირების სიზუსტე. საინტერესო ფაქტი: BERT გაწვრთნილია როგორც MLM-ზე (50%), ასევე NSP-ზე (50%) ერთდროულად. ტრანსფორმერების არქიტექტურა შესაძლებელს ხდის პარალელურ