OLMoASR: Otwarty model rozpoznawania mowy od AI2 konkuruje z Whisper od OpenAI
Allen Institute for AI (AI2) zaskoczył branżę, udostępniając OLMoASR, pakiet otwartych modeli automatycznego rozpoznawania mowy (ASR), które realnie zagrażają dominacji zamkniętych rozwiązań, takich jak popularny Whisper od OpenAI. Rewolucyjne w tym podejściu jest nie tylko udostępnienie samych modeli, ale przede wszystkim pełnej dokumentacji procesu ich tworzenia – od danych treningowych, poprzez metody filtrowania, aż po szczegółowe receptury treningowe i skrypty benchmarkowe. W świecie, gdzie transparentność w AI jest rzadkością, AI2 stawia na otwartą naukę i reprodukowalność wyników.
Dlaczego otwarte ASR jest tak ważne?
Obecnie większość systemów rozpoznawania mowy, oferowanych przez gigantów technologicznych, takich jak OpenAI, Google czy Microsoft, dostępna jest jedynie poprzez zamknięte API. Oferują one wysoką wydajność, ale działają jak „czarne skrzynki”. Nie wiemy, na jakich danych były trenowane, jakie metody filtrowania zastosowano, a protokoły ewaluacji często odbiegają od standardów naukowych. Taki brak transparentności utrudnia weryfikację wyników, testowanie modyfikacji i adaptację modeli do nowych zastosowań. OLMoASR odpowiada na tę potrzebę, otwierając cały proces i promując ideę otwartej, weryfikowalnej nauki w dziedzinie ASR.
Architektura modelu i jego skalowalność
OLMoASR bazuje na architekturze transformatorowej typu encoder-decoder, która zdominowała nowoczesne systemy ASR. Encoder przetwarza fale dźwiękowe na ukryte reprezentacje, a decoder generuje tokeny tekstowe na podstawie wyjść encodera. Rozwiązanie to jest zbliżone do Whisper, ale implementacja OLMoASR jest w pełni otwarta. Dostępnych jest sześć wariantów modelu, wytrenowanych na języku angielskim, różniących się rozmiarem i wydajnością:
- tiny.en – 39M parametrów, dla lekkich zastosowań
- base.en – 74M parametrów
- small.en – 244M parametrów
- medium.en – 769M parametrów
- large.en-v1 – 1.5B parametrów, trenowany na 440 tys. godzin danych
- large.en-v2 – 1.5B parametrów, trenowany na 680 tys. godzin danych
Taki zakres modeli pozwala na optymalizację między kosztem obliczeniowym a dokładnością. Mniejsze modele nadają się do urządzeń wbudowanych lub transkrypcji w czasie rzeczywistym, a większe modele zapewniają maksymalną dokładność w badaniach lub przetwarzaniu wsadowym.
Dane: od web scrapingu po starannie dobrane zbiory
Kluczowym elementem OLMoASR jest otwarte udostępnienie danych treningowych. OLMOASR-POOL to ogromny zbiór (~3 miliony godzin) słabo nadzorowanej mowy z transkryptami zebranymi z internetu. Zawiera około 3 milionów godzin audio i 17 milionów transkryptów tekstowych. Podobnie jak oryginalny zbiór danych Whisper, jest on zaszumiony, zawierający niedopasowane podpisy, duplikaty i błędy transkrypcji. Aby poprawić jakość danych, AI2 zastosowało rygorystyczne filtrowanie, tworząc OLMOASR-MIX (~1 milion godzin). Obejmowało ono heurystyki dopasowania audio do transkryptów, usuwanie duplikatów i czyszczenie tekstu. W rezultacie powstał wysokiej jakości zbiór danych, który poprawia generalizację zero-shot – kluczową dla zastosowań w świecie rzeczywistym. Taka dwupoziomowa strategia odzwierciedla praktyki w uczeniu dużych modeli językowych: wykorzystanie ogromnych, zaszumionych korpusów dla skali, a następnie doprecyzowanie ich za pomocą przefiltrowanych podzbiorów dla poprawy jakości.
Wyniki benchmarków
AI2 przeprowadziło benchmarki OLMoASR na tle Whisper, na zadaniach transkrypcji krótkich i długich form audio, wykorzystując zbiory danych takie jak LibriSpeech, TED-LIUM3, Switchboard, AMI i VoxPopuli. Model średniej wielkości (769M parametrów) osiągnął 12.8% WER (współczynnik błędów słownych) na krótkich formach i 11.0% WER na długich formach. To niemal dorównuje Whisper-medium.en (12.4% i 10.5% WER). Większe modele (1.5B parametrów) również wypadają konkurencyjnie, a wersja large.en-v2 (trenowana na 680 tys. godzin) zbliża się do Whisper large-v1 z różnicą mniejszą niż 0.5% WER. Nawet mniejsze wersje, takie jak tiny.en i base.en, oferują konkurencyjne wyniki, dając deweloperom elastyczność w wyborze modelu w zależności od wymagań obliczeniowych i opóźnień.
Jak używać OLMoASR?
Transkrypcja audio wymaga zaledwie kilku linijek kodu:
import olmoasr
model = olmoasr.load_model("medium", inference=True)
result = model.transcribe("audio.mp3")
print(result)
Wynik zawiera zarówno transkrypcję, jak i segmenty czasowe, co jest przydatne do tworzenia napisów, transkrypcji spotkań i innych zastosowań NLP.
Dostrojenie i adaptacja do domeny
Dzięki udostępnieniu pełnego kodu treningowego i przepisów, OLMoASR może być dostrajany do specjalistycznych domen, takich jak rozpoznawanie mowy medycznej (na danych z MIMIC-III lub nagraniach szpitalnych), transkrypcja prawnicza (na nagraniach z sal sądowych) lub akcenty o niskich zasobach. Ta adaptacyjność jest kluczowa, ponieważ wydajność ASR często spada w specjalistycznych domenach z żargonem. Otwarte potoki ułatwiają adaptację do domeny.
Potencjalne zastosowania
OLMoASR otwiera nowe możliwości w badaniach akademickich i rozwoju AI: umożliwia badanie relacji między architekturą modelu, jakością danych i technikami filtrowania, integrację rozpoznawania mowy z systemami konwersacyjnymi, tworzenie multimodalnych asystentów i ustanawia otwarty punkt odniesienia dla przyszłych badań ASR. Udostępnienie OLMoASR to krok naprzód w kierunku transparentnego i reprodukowalnego rozwoju systemów rozpoznawania mowy. Choć modele są obecnie ograniczone do języka angielskiego i wymagają znacznych zasobów obliczeniowych, stanowią solidną podstawę do adaptacji i rozszerzeń. To ważny moment dla otwartego ASR, który ułatwi badaczom i programistom eksplorację tej technologii.
