Компания Mozilla представила движок распознавания речи DeepSpeech 0.9

Опубликован выпуск развиваемого компанией Mozilla движка распознавания речи DeepSpeech 0.9, реализующего одноимённую архитектуру распознавания речи, предложенную исследователями из компании Baidu. Реализация написана на языке Python с использованием платформы машинного обучения TensorFlow и распространяется под свободной лицензией MPL 2.0.

Поддерживается работа в Linux, Android, macOS и Windows. Производительности достаточно для использования движка на платах LePotato, Raspberry Pi 3 и Raspberry Pi 4, а также на смартфонах Google Pixel 2, Sony Xperia Z Premium и Nokia 1.3. Для встраивания функции распознавания речи в свои программы предложены готовые к применению модули для Python, NodeJS, C++ и .NET (сторонними разработчиками отдельно подготовлены модули для Rust, Go и V).

В наборе предлагаются обученные модели, примеры звуковых файлов и инструментарий для распознавания из командной строки. Готовая модель поставляется только для английского и китайского языков. Для других языков можно обучить систему самостоятельно по прилагаемой инструкции, используя голосовые данные, собранные проектом Common Voice. При использовании предлагаемой для загрузки готовой модели английского языка уровень ошибок распознавания в DeepSpeech составляет 7.06% при оценке тестовым набором LibriSpeech. Для сравнения, уровень ошибок при распознавании человеком оценивается в 5.83%.

В предложенной модели наилучший результат распознавания достигается при чистой записи мужского голоса с американским акцентом в окружении без посторонних шумов. По мнению автора библиотеки распознавания слитной речи Vosk недостатками набора Common Voice является однобокость голосового материала (преобладание людей мужского пола 20–30 лет, и недостаток материла с голосом женщин, детей и пожилых людей), отсутствие вариативности словаря (повторение одних и тех же фраз) и распространение записей во вносящем искажения формате MP3. Из недостатков DeepSpeech упоминается низкая производительность и высокое потребление памяти в декодировщике, а также существенные ресурсы для обучения модели (Mozilla использует систему с 8 GPU Quadro RTX 6000 c 24GB VRAM в каждом).

DeepSpeech состоит из двух подсистем — акустической модели и декодировщика. Акустическая модель использует методы глубинного машинного обучения для вычисления вероятности наличия определённых символов в подаваемом на вход звуке. Декодировщик применяет алгоритм лучевого поиска для преобразования данных о вероятности символов в текстовое представление. DeepSpeech значительно проще традиционных систем и при этом обеспечивает более высокое качество распознавания при наличии постороннего шума. В разработке не используются традиционные акустические модели и концепция фонем, вместо них применяется хорошо оптимизированная система машинного обучения на основе нейронной сети, которая позволяет обойтись без разработки отдельных компонентов для моделирования различных отклонений, таких как шум, эхо и особенности речи.

Обратной стороной подобного подхода является то, что для получения качественного распознавания и обучения нейронной сети движок DeepSpeech требует большого объёма разнородных данных, надиктованных в реальных условиях разными голосами и при наличии естественных шумов. Сбором подобных данных занимается созданный в Mozilla проект Common Voice, предоставляющий проверенный набор данных с 1469 часами на английском языке, 692 на немецком, 554 на французском, 105 часами на русском и 22 часами на украинском. При обучении итоговой модели английского языка для DeepSpeech, кроме Common Voice дополнительно используются данные от проектов LibriSpeech, Fisher и Switchboard, а также около 1700 часов транскрибированных записей радиошоу.

Из изменений в новой ветке отмечается возможность форсирования веса избранных слов в процессе декодирования (например, --hot_words «friend:1.5, enemy:20.4»), поддержка платформы Electron 9.2 и опциональная реализация механизма нормализации слоёв (Layer Norm) при тренировке нейронной сети.

Источник: http://www.opennet.ru/opennews/art.shtml? num=54053

© OpenNet