Разработка
Проблемы распознавания речи: что еще предстоит решить
Аспирант Стэнфордского университета Авни Ханнун написал о том, какие проблемы ещё предстоит решить, чтобы вывести системы автоматического распознавания речи на уровень человека.
Аспирант Стэнфордского университета Авни Ханнун написал о том, какие проблемы ещё предстоит решить, чтобы вывести системы автоматического распознавания речи на человеческий уровень.
С тех пор, как в распознавании речи появилось глубокое обучение, уровень ошибок сильно снизился. Но несмотря на все, что вы могли читать и видеть, у нас все ещё не существует системы распознавания речи человеческого уровня. В распознавании речи есть множество ошибок. Для продвижения вперед важно знать, когда они происходят, и предпринимать шаги по решению проблем. Только так можно перейти от автоматического распознавания речи (ASR), которое работает для некоторых людей, к ASR, которое работает для всех людей и всегда.
Говорить, что мы достигли человеческого уровня распознавания разговорной речи, основываясь на результатах Switchboards, это то же самое, что говорить, что беспилотный автомобиль водит так же хорошо, как человек, после тестирования в одном городе в солнечный день без пробок. Последние улучшения в распознавании разговорной речи изумительны. Но заявлять о достижении уровня людей слишком рано. Ниже представлены несколько разделов, требующих улучшения.
Акценты и шум
Одно из самых заметных различий в распознавании речи — это способность разбираться с акцентами и фоновым шумом. Прямая причина этого заключается в том, что данные для обучения состоят из английской речи с американским акцентом с высоким показателем отношения сигнала к шуму (SNR — signal-to-noise ratio). Например, наборы данных для обучения и тестов Switchboard включают только речь носителей английского языка с небольшим фоновым шумом.
Однако увеличение количества данных для обучения, вероятно, не решит проблему просто так. Существует множество языков с большим количеством диалектов и акцентов. Невозможно собрать достаточно данных для всех случаев. Создание качественной системы распознавания речи только для английского с американским акцентом требует пять тысяч часов транскрибированного аудио.
Что касается фонового шума, в движущемся автомобиле SNR редко бывает на показателе -5 дБ. Люди без проблем понимают друг друга в этой среде. Автоматические системы распознавания речи допускают гораздо больше ошибок с увеличением шума. На диаграмме выше мы видим, как разница между ошибками людей и модели резко возрастает от аудио с низким SNR к аудио с высоким SNR.
Семантические ошибки
Показатель уровня ошибок в словах не самый объективный показатель. Нас интересует показатель семантических ошибок. Это доля высказываний, в которых мы искажаем смысл.
Пример семантической ошибки: если кто-то сказал “let’s meet up Tuesday” (давайте встретимся во вторник), но система распознала высказывание как “let’s meet up today” (давайте встретимся сегодня). У нас также могут быть ошибки в словах без семантических ошибок: если система отбросила слово up и распознала “let’s meet Tuesday”, то семантика высказывания не изменилась.
Мы должны осторожнее использовать показатель ошибок в словах (WER — word error rate) в качестве основного. Позвольте показать вам худшую ситуацию. WER в 5% соответствует одному пропущенному слову на каждые двадцать. Если в каждом предложении двадцать слов (средний показатель для английского), то показатель ошибок в предложениях составит 100%. Но пропущенные слова вряд ли изменят смысл предложений. В ином случае даже с 5% WER каждое предложение было бы неправильно интерпретировано.
При сравнении моделей и людей важно проверять природу ошибок, а не просто смотреть на показатель WER. По своему опыту могу сказать, что когда люди расшифровывают речь, они совершают меньше ошибок, и эти ошибки не так критичны.
Исследователи в Microsoft недавно сравнили ошибки людей и систем распознавания речи с человеческим уровнем ошибок. Они обнаружили, что модель чаще путает междометия “а” и “ага”. У этих двух слов совершенно разная семантика: “а” просто заполняет паузы, а “ага” выступает в качестве подтверждения. Но модель и люди также совершили много похожих ошибок.
Один канал, множество говорящих
Тест от Switchboard проще, потому что каждый говорящий записан на отдельный микрофон. В одном канале аудио не перекрываются разные голоса. Люди же могут понимать нескольких людей, говорящих одновременно.
Хорошая систем распознавания речи должна быть способна сегментировать аудио на основании того, кто говорит (диаризация). Она также должна понимать аудио от нескольких говорящих (разделение источников). Это должно быть возможно без необходимости присутствия микрофона около каждого говорящего.
Другие области
Акценты и фоновый шум — это всего лишь два фактора, в отношении которых должна повышаться надежность распознавателя речи. Вот еще несколько:
- Реверберация от изменения акустической среды.
- Артефакты аппаратного обеспечения.
- Кодек, используемый для артефактов звука и сжатия.
- Частота выборки.
- Возраст оратора.
Многие люди даже не заметят разницы между файлами mp3 и wav. Прежде, чем мы заявим о производительности на уровне человека, распознаватели речи должны быть надежными и в отношении этих факторов.
Контекст
Вы можете заметить, что показатель ошибок людей в тестах вроде Switchboard довольно высок. Если бы вы общались с другом, и они не понимали 1 из 20 сказанных вами слов, вам было бы сложно общаться.
Одна из причин этого — оценка совершается независимо от контекста. В реальной жизни мы используем много других подсказок, чтобы понять, что говорит собеседник. Несколько примеров контекста, который используеют люди:
- Прошлые разговоры и тема обсуждения.
- Визуальные подсказки, например, выражения лица и движения губ.
- Знания о человеке, с которым мы общаемся.
Сейчас у распознавателя речи в Android есть доступ к вашему списку контактов, чтобы он мог распознавать имена ваших друзей. Голосовой поиск в картах использует геолокацию, чтобы сузить список потенциальных пунктов назначения. Точность ASR-систем возрастает с применением такого типа сигналов. Но мы только начала изучать, какой контекст мы можем включить и как мы можем это сделать.
Реализация
Недавние улучшения в распознавании разговорной речи нельзя быстро развернуть. Когда мы рассуждаем о том, что делает новый алгоритм распознавания речи реализуемым, мы обращаемся к показателям задержки и мощности. Они связаны, и алгоритмы, уменьшающие время задержки, повышают показатель мощности. Разберем каждый отдельно.
Задержка: Это время от момента завершения речи до завершения транскрибирования. Низкое время задержки — распространенное требование в системах распознавания речи. Это может сильно повлияет на опыт пользователя, и задержка часто измеряется в десятках миллисекунд. Это может показаться чрезмерным, но помните, что создание транскрипции — это первый шаг в серии вычислений. Например, в голосовом поиске сам поиск совершается после распознавания речи.
Двунаправленные рекуррентные сети являются хорошим примером значительного улучшения. Все последние современные разработки в распознавании разговорной речи используют их. Проблема в том, что мы не можем ничего вычислить после первого двунаправленного слоя, пока пользователь не закончит говорить. Таким образом, задержка увеличивается с длиной высказывания.
Хороший способ эффективного использования будущей информации в распознавании речи по-прежнему остается открытой проблемой.
Мощность: количество вычислительной мощности, которое необходимо для транскрипции высказывания является экономическим ограничением. Мы должны учитывать ценность и стоимость каждого улучшения точности распознавания речи. Если улучшение не укладывается в экономические рамки, оно не может быть воплощено.
Классическим примером улучшения, которое не реализуется, является ансамблевое обучение. Сокращение показателя ошибок на 1-2% не стоит увеличение вычислительной мощности от 2 до 8 раз. Современные модели на основе рекуррентных нейронных сетей обычно также относятся к этой категории, потому что их очень дорого использовать в лучевом поиске, хотя я ожидаю, что в будущем это изменится.
Я не считаю, что исследования, связанные с улучшением точности и большой вычислительной мощностью, бессмысленны. Мы уже видели модель “сначала медленно, но точно, затем быстро” до этого. Смысл в том, что пока улучшение не станет достаточно быстрым, его нельзя использовать.
Следующие пять лет
В распознавании речи существует много открытых и сложных проблем. Среди них:
- Расширение возможностей в новые области, на новые акценты и на речь с низким соотношением сигнала и шума.
- Внедрение большего количества контекста в процесс распознавания.
- Диаризация и разделение источников.
- Показатель семантических ошибок и инновационные методы оценки распознавателей.
- Низкая задержка и эффективные алгоритмы.
-
Видео и подкасты для разработчиков1 месяц назад
Lua – идеальный встраиваемый язык
-
Новости1 месяц назад
Poolside, занимающийся ИИ-программированием, привлек $500 млн
-
Новости1 месяц назад
Видео и подкасты о мобильной разработке 2024.40
-
Новости1 месяц назад
Видео и подкасты о мобильной разработке 2024.41