Projekt OpenAI, który zajmuje się rozwojem publicznych projektów w dziedzinie sztucznej inteligencji, opublikował wyniki związane z systemem rozpoznawania mowy Whisper. Twierdzi się, że w przypadku mowy w języku angielskim system osiąga poziomy niezawodności i dokładności automatycznego rozpoznawania zbliżone do rozpoznawania ludzkiego. Kod odniesienia otwartej implementacji na bazie frameworka PyTorch oraz zestaw już wytrenowanych modeli gotowych do użycia są dostępne. Kod udostępniony jest na licencji MIT.
Do szkolenia modelu wykorzystano 680 tysięcy godzin danych głosowych, zebranych z kilku zbiorów, obejmujących różne języki i obszary tematyczne. Około 1/3 danych głosowych użytych w szkoleniu pochodzi z języków innych niż angielski. Proponowany system prawidłowo radzi sobie z takimi sytuacjami jak mowa z akcentem, obecność szumów tła oraz użycie żargonu technicznego. Oprócz transkrypcji mowy na tekst, system może także tłumaczyć mowę z dowolnego języka na angielski oraz identyfikować wystąpienie mowy w strumieniu dźwiękowym.
Modele są dostępne w dwóch wariantach: modelu dla języka angielskiego oraz modelu wielojęzycznego, który obsługuje również język rosyjski, ukraiński i białoruski. Każde z wariantów dzieli się na 5 opcji, różniących się wielkością i liczbą objętych w modelu parametrów. Im większa wielkość, tym większa dokładność i jakość rozpoznawania, jednakże wyższe są również wymagania dotyczące wielkości pamięci wideo GPU oraz niższa wydajność. Na przykład, najmniejsza wersja zawiera 39 milionów parametrów i wymaga 1 GB pamięci wideo, podczas gdy maksymalna wersja zawiera 1550 milionów parametrów i wymaga 10 GB pamięci wideo. Najmniejsza wersja jest 32 razy szybsza od maksymalnej.

W systemie zastosowano architekturę sieci neuronowej „Transformer”, obejmującą współpracujący ze sobą kodujący i dekodujący. Dźwięk dzielony jest na 30-sekundowe fragmenty, które przekształcane są w log-Mel-spektrogram, a następnie przekazywane do kodera. Wynik pracy kodera trafia do dekodera, który przewiduje tekstowe przedstawienie, zmieszane z specjalnymi tokenami, umożliwiającymi w jednym wspólnym modelu rozwiązywanie takich zadań jak określenie języka, uwzględnianie chronologii wymowy fraz, transkrypcja mowy w różnych językach oraz tłumaczenie na język angielski.
Źródło: opennet.ru
