გასულ თვეს, MetaAI-მ გამოუშვა Wav2Vec2-BERT, როგორც მათი Seamless Communication-ის, ხელოვნური ინტელექტის მთარგმნელობითი მოდელების ოჯახის, ერთ-ერთი შემადგენელი ნაწილი. Wav2Vec2-BERT არის ორიგინალური მოდელის, Wav2Vec2-ის, გაუმჯობესებების სერიის შედეგი. Wav2Vec2 არის ავტომატური მეტყველების ამოცნობისთვის (ASR) წინასწარ გაწვრთნილი მოდელი, რომელიც 2020 წლის სექტემბერში ალექსეი ბაევსკიმ, მაიკლ აულიმ და ალექს კონომ გამოუშვეს. მხოლოდ 10 წუთიანი მარკირებული აუდიო მონაცემებით, Wav2Vec2 შესაძლებელი გახდა ისე დახვეწილიყო, რომ LibriSpeech მონაცემთა ბაზაზე სიტყვების შეცდომის 5%-იანი მაჩვენებელი მიეღწია, რითაც პირველად იქნა დემონსტრირებული დაბალრესურსიანი ტრანსფერული სწავლება ASR-ისთვის. მულტილინგვური გაუმჯობესებების სერიის (XLSR, XLS-R და MMS) შემდეგ, Wav2Vec2-BERT არის 580 მილიონი პარამეტრის მქონე მრავალმხრივი აუდიო მოდელი, რომელიც წინასწარ გაწვრთნილია 4.5 მილიონი საათის არამარკირებულ აუდიო მონაცემებზე, რაც მოიცავს 143-ზე მეტ ენას. შედარებისთვის, XLS-R-მა გამოიყენა თითქმის ნახევარი მილიონი საათის აუდიო მონაცემი 128 ენაზე, ხოლო MMS-ის შემოწმების წერტილები წინასწარ იყო გაწვრთნილი ნახევარ მილიონზე მეტი საათის აუდიოზე 1,400-ზე მეტ ენაზე. მილიონობით საათამდე გაზრდილი მონაცემები საშუალებას აძლევს Wav2Vec2-BERT-ს მიაღწიოს კიდევ უფრო კონკურენტულ შედეგებს მეტყველებასთან დაკავშირებულ ამოცანებში, მიუხედავად ენისა. ASR-ისთვის გამოსაყენებლად, Wav2Vec2-BERT შეიძლება დახვეწილ იქნას Connectionist Temporal Classification (CTC) გამოყენებით, რომელიც არის ალგორითმი, რომელიც გამოიყენება ნეირონული ქსელების მოსამზადებლად თანმიმდევრობიდან-თანმიმდევრობაზე ამოცანებისთვის, როგორიცაა ASR და ხელნაწერი ტექსტის ამოცნობა. ჩვენ გირჩევთ წაიკითხოთ კარგად დაწერილი ბლოგპოსტი „Sequence Modeling with CTC (2017)“ ონნი ჰანუნის ავტორობით, რათა მეტი გაიგოთ CTC ალგორითმის შესახებ. ამ ნოუთბუქის მიზანია მოგაწოდოთ ყველა ის ელემენტი, რაც გჭირდებათ Wav2Vec2-BERT მოდელის – უფრო კონკრეტულად კი წინასწარ გაწვრთნილი ჩექპოინტის `facebook/w2v-bert-2.0` – ASR ამოცანებზე გასაწვრთნელად, ღია წყაროს ინსტრუმენტებისა და მოდელების გამოყენებით. ის ჯერ წარმოადგენს სრულ წინასწარი დამუშავების პაიპლაინს, შემდეგ კი W2V2-BERT-ის მცირედ დახვეწას ახორციელებს. საბოლოო განყოფილება აერთიანებს Hugging Face-ის ექსპერტების ტრენინგის რჩევებს CTC ტრენინგის მასშტაბირებისთვის. დემონსტრაციის მიზნით, ჩვენ დავხვეწეთ მოდელი Common Voice 16.0-ის დაბალრესურსიან მონღოლურ ASR მონაცემთა ნაკრებზე, რომელიც დაახლოებით 14 საათის ვალიდირებულ საწვრთნელ მონაცემს შეიცავს. Whisper არის ASR მოდელების ნაკრები, რომელიც საყოველთაოდ მიღებულია, როგორც ASR ამოცანისთვის საუკეთესოდ მოქმედი მოდელი. ის უზრუნველყოფს უახლეს შესრულებას ინგლისურ ASR-ისთვის, ამასთანავე კარგად ერგება მულტილინგვურ დახვეწას შეზღუდული რესურსებიდან. თუმცა, როდესაც საქმე ეხება „ღარიბ რესურსებით“ ენებს, როგორიცაა მონღოლური, Whisper ცუდად მუშაობს, როგორც ეს Whisper-ის ნაშრომის D.2.2 განყოფილებაშია ნაჩვენები – მონღოლურმა ან მალაიალამურმა მიაღწია 100%-ზე მეტ WER-ს Whisper-ის ყოველ შემოწმების წერტილზე. არსებულ შემოწმების წერტილებს ასევე აქვთ შეზღუდული ლექსიკონი და, შესაბამისად, მათი დახვეწა შეუძლებელია იმ ენაზე, რომლის ანბანიც არ ემთხვევა ამ ლექსიკონს. გარდა ამისა, Whisper არის თანმიმდევრობიდან-თანმიმდევრობაზე მოდელი, რომელიც ASR-ს აუტო-რეგრესიულად ახორციელებს, რაც მას თავისთავად „ნელა“ ხდის. Whisper-ის სიჩქარის ნაკლებობა მწვავდება იმ ენებისთვის, რომელთა მახასიათებლებიც იშვიათია საწვრთნელ მონაცემთა ბაზაში. ამ შემთხვევაში, Whisper-ს საშუალოდ მეტი ტოკენის გენერირება უწევს თითო სიტყვაზე, რის გამოც უფრო მეტი დრო სჭირდება. შეზღუდული რესურსების პირობებში – როგორც საწვრთნელი მონაცემების ხელმისაწვდომობის, ასევე ინფერენციის შეზღუდვების თვალსაზრისით – საჭიროა უფრო „ეკონომიური“ მოდელები. ამ შემთხვევაში, Wav2Vec2-BERT ზუსტად ის არის, რაც საჭიროა. Wav2Vec2-BERT ASR-ს ერთჯერადი გავლით პროგნოზირებს, რაც მას Whisper-ზე ბევრად სწრაფს ხდის. როგორც ეს ნოუთბუქი აჩვენებს, მას მცირე მონაცემები სჭირდება კონკურენტული შესრულების მისაღწევად, ადვილად ადაპტირებადია ნებისმიერ ანბანთან და უფრო რესურსეფექტურია. სინამდვილეში, ის მსგავს WER შესრულებას აღწევს მონღოლურ ASR-ზე Whisper-large-v3-თან შედარებით მსგავსი დახვეწის შემდეგ, ამასთანავე არის 10-დან 30-ჯერ უფრო სწრაფი და 2.5-ჯერ უფრო რესურსეფექტური. შენიშვნა: შეფასება ჩატარდა 16GB V100-ით Google Colab-ზე, სერიული ზომების გამოყენებით 1-დან 8-მდე მონღოლური CV16 ტესტის ნაკრებზე. სანამ დავიწყებთ, დავაინსტალიროთ `datasets` და `transformers`. ასევე, გვჭირდება `accelerate` ტრენინგისთვის, `torchaudio` აუდიო ფაილების ჩასატვირთად და `jiwer` ჩვენი დახვეწილი მოდელის შესაფასებლად სიტყვების შეცდომის მაჩვენებლის (WER) მეტრიკის გამოყენებით. ჩვენ მკაცრად გირჩევთ, რომ თქვენი საწვრთნელი ჩექპოინტები პირდაპირ 🤗 Hub-ზე ატვირთოთ ტრენინგის დროს. 🤗 Hub გთავაზობთ: ამისათვის თქვენ უნდა შეინახოთ თქვენი ავტორიზაციის ტოკენი Hugging Face-ის ვებგვერდიდან (დარეგისტრირდით აქ, თუ ჯერ არ გაგიკეთებიათ!). ეს ხდება თქვენი Hub-ის ავტორიზაციის ტოკენის შეყვანით ქვემოთ მოთხოვნისას. იპოვეთ თქვენი Hub-ის ავტორიზაციის ტოკენი აქ: ASR მოდელები მეტყველებას ტექსტად გარდაქმნიან, რაც ნიშნავს, რომ ჩვენ გვჭირდება როგორც ფუნქციის ამომღები (feature extractor), რომელიც ამუშავებს მეტყველების სიგნალს მოდელის შეყვანის ფორმატში, მაგ. ფუნქციის ვექტორად, ასევე ტოკენაიზერი, რომელიც ამუშავებს მოდელის გამომავალ ფორმატს ტექსტად. 🤗 Transformers-ში Wav2Vec2-BERT მოდელს თან ახლავს როგორც ტოკენაიზერი, სახელად Wav2Vec2CTCTokenizer, ასევე ფუნქციის ამომღები, სახელად SeamlessM4TFeatureExtractor, რომელსაც მოდელი Seamless-M4T-ის პირველ და მეორე ვერსიებთან იზიარებს, რადგან ისინი ყველა ერთნაირად ამუშავებენ აუდიოს. დავიწყოთ ტოკენაიზერის შექმნით, რათა წინასწარმეტყველებული გამომავალი კლასები გამომავალ ტრანსკრიფციად გადავაქციოთ.