Открытые модели для распознавания русской речи

Обновлено 15.04.2024:

Последняя версия за 2024 год здесь: https://alphacephei.com/nsh/2024/04/14/russian-models.html

Обновлено 10.04.2023:

  • добавлены 3 набора данных - телевещание, медицина (спасибо Александре Антоновой), русский librispeech
  • добавлены 2 модели - vosk 0.42, обновлённый bond005, funasr

Мы протестировали доступные модели для распознавания русской речи на различных наборах данных. Интересных моделей довольно много, каждая со своими особенностями.

Dataset Vosk Small Vosk Big 0.22 Vosk Big 0.42 Nvidia RNNT Large Whisper Medium Whisper Adapted Medium Whisper Adapted Large HF Wav2VecLM HF Wav2VecLM Bond005 Salute Citrinet FunASR
Аудиокниги АЦ 17.8 5.4 4.5 8.2 8.6 8.9 7.5 11.9 13.1 18.4 13.2
Аудиокниги Silero 21.1 12.1 11.1 13.6 19.9 15.2 14.9 19.8 18.4 29.6 23.4
Ru Librispeech 25.5 9.7 9.0 11.9 16.3 15.0 12.8 18.1 16.2 19.4 20.4
CommonVoice 12.0 21.8 8.7 8.2 5.8 10.4 9.6 7.9 7.5 13.5 5.8 12.3
Golos Crowd 10.1 8.6 4.4 2.8 22.6 20.8 19.1 10.1 7.8 2.4 24.6
Golos Farfield 21.6 15.8 13.2 7.9 27.4 25.9 17.0 18.6 17.0 11.1 42.0
Sova устройства 28.9 18.5 17.9 6.6 18.5 19.2 16.3 27.0 6.6 34.0 22.3
Youtube Silero 31.0 20.1 19.5 19.4 20.8 15.7 15.1 26.1 25.7 45.6 21.9
Телевещание 30.6 21.0 20.6 22.5 21.3 16.5 16.0 26.9 31.9 51.1 24.5
Медицина 33.9 18.5 14.9 20.2 18.4 15.6 15.5 23.5 25.4 28.3 23.6
Команды Яндекса 16.8 12.0 9.5 4.0 30.2 21.7 22.4 14.2 14.7 8.1 23.6
Звонки Silero 49.9 37.0 36.0 28.9 32.0 29.0 28.0 41.1 37.2 71.1 34.3
Звонки заказы 43.0 27.8 26.3 23.0 37.1 35.5 35.8 38.6 34.5 32.5 34.4
Звонки поддержка 44.9 31.8 28.2 24.3 35.3 29.6 28.4 36.3 32.9 44.4 33.9

Ссылки на модели:

Скорость декодирования на сервере. Большинство моделей тестировались на GPU GTX1080 8Gb на сервере i7 с 8 ядрами. Скорость Воска на CPU на 8 параллельных потоках. Указана скорость xRT.

  Vosk Small Vosk Big 0.22 Vosk Big 0.42 Nvidia RNNT Large Whisper Medium Whisper Adapted Medium Whisper Adapted Large HF Wav2VecLM HF Wav2VecLM Bond005 Salute Citrinet FunASR
xRT 0.056 0.12 0.13 0.01 0.61 0.15 0.32 0.24 0.10 0.014 0.3

Результаты:

  • Nemo RNNT очень быстрый и довольно точный
  • Vosk начитанный
  • Whisper не очень хорошо работает для русского и его тяжело дообучить. Тем не менее на Silero он дообучился.
  • Whisper медленный, но даже на старой карте вполне удовлетворительный. Когда-то давно 10xRT считалось хорошей скоростью распознавания.
  • Wav2Vec переобучен на CommonVoice, в целом модель не очень хороша. Имеет смысл попробовать его с другой моделью языка, может будет получше.

Пишите, если знаете о хорошей модели, которую можно протестировать