Министерство образования и науки Донецкой Народной Республики
ГОУ ВПО Донецкий национальный университет
Распознавание речи
Курс лекций по дисциплине «Распознавание речи» для студентов магистратуры, обучающихся по направлению подготовки 09.04.01 – «Информатика и вычислительная техника»
Донецк – 2016
Лекция 1
Тема. Классификация и общая структура систем распознавания речи, подходы к их разработке.
В лекции будет рассмотрено:
Классификация систем распознавания речи.
Речевые базы данных.
Архитектура систем распознавания речи.
Проблемы, возникающие при разработке систем распознавания речи.
Введение: задача распознавания речи
Задача распознавания речи состоит в восстановлении по звуковому сигналу слова естественного языка (из ограниченного словаря), произнесением которого является этот звуковой сигнал. Она обычно решается путем задания эталонов слов словаря и последующего сравнения звуковых сигналов с этими эталонами. Звуковой сигнал представляет из себя целочисленный вектор значений звукового давления, измеренного в равноотстоящие друг от друга моменты времени. Мощность пространства звуковых сигналов огромна (типичное значение мощности множества сигналов длительностью в 1 сек., используемых в компьютерных системах, равно 25611025 [4]). Для решения задачи распознавания обычно сначала равномерно разбивают сигнал на окна одинаковой длины. Окна преобразуют из временной области в частотную (например, с помощью преобразования Фурье [3]), чтобы близость окон относительно простых метрик (типа Евклидовой) соответствовала близости участков сигнала "на слух". Затем решается задача нахождения соответствия между окнами звукового сигнала и окнами эталонов слов словаря. Сложность последней задачи заключается в том, что различные участки звукового сигнала в различных произнесениях одного и того же слова отличаются разной степенью сжатия или растяжения (вовсе не пропорционального). Для решения задачи нахождения соответствия между окнами сигналов традиционно используются методы динамического программирования ([2]). Создание компьютерных систем распознавания речи связано со множеством объективных трудностей, накладывающих на подобные системы искусственного интеллекта ряд ограничений.
|
Предельные возможности компьютера по распознаванию речи связаны прежде всего с тем, что человек, которого можно взять за эталон распознающей системы, распознает осмысленную речь, а компьютеру в полной мере это не дано. Компьютер принципиально не может с требуемой надежностью исправлять ошибки и неоднозначности распознавания, используя синтаксическую и семантическую связь слов предложения. Вместо этого в современных системах используется статистическая модель, задающая связь последовательных троек слов предложения. Кроме того, человек использует зачастую дополнительную, незвуковую информацию. Самым ярким примером здесь может служить так называемое "чтение по губам", которому могут обучиться глухие люди. Известно, что в шумной обстановке человеку легче распознавать речь, если он следит за губами говорящего. Человек воспринимает речь объемно, что позволяет ему производить шумоочистку и пространственное выделение сигнала более качественно, чем ЭВМ. Слуховой аппарат человека позволяет ему с точностью до полупространства определить направление на источник полезного сигнала и отделить его от остальных звуковых источников.
|
Дополнительно, картина осложняется тем, что все известные алгоритмы распознавания речи являются дикторозависимыми. После настройки на голос одного диктора распознающие системы дают удовлетворительные результаты распознавания для этого типа голоса, но хуже работают на других голосах. Надежность распознавания речи человеком, напротив, не зависит от типа голоса диктора.
Все вышесказанное приводит к тому, что распознавание речи компьютером обладает ограниченной надежностью, существенно повысить которую вероятно не удастся в будущем ни путем совершенствования алгоритмов распознавания, ни путем увеличения вычислительных мощностей компьютера. Постоянно имея в виду это утверждение, можно приступать к анализу достижений в области распознавания речи, классификации стоящих в этой области задач и оценке перспектив их решения.
Классификация систем распознавания речи
Классификацию систем распознавания речи будем производить согласно новому стандарту в области программирования таких систем, принятому сейчас практически всеми известными разработчиками систем распознавания речи - Microsoft Speech API.
Согласно этому стандарту, системы распознавания речи различают по следующим признакам:
Интервал между отдельными словами. Если система распознает непрерывную речь, пользователь может произносить речевые фразы естественно, не делая паузы между словами. Непрерывное распознавание более предпочтительно, однако оно требует большей вычислительной мощности компьютеров, что приводит пока к малому числу таких систем. В системах, работающих с дискретной речью, пользователь при диктовке должен делать паузу между отдельными словами, обычно составляющую не менее 1/4 частиь секунды. Третьей разновидностью являются системы, выделяющие одно слово из интервала речи, даже если он состоит из нескольких непрерывно произнесенных слов (word-spotting).
|
Зависимость от диктора. Системы, обладающие относительной независимостью от диктора, позволяют пользователю работать с системой без предварительной настройки, однако улучшают надежность распознавания после обучения. Независимость от диктора таких систем обычно достигается за счет хранения звуковых эталонов для всех наиболее типичных голосов носителей данного языка. Это, безусловно, требует в несколько раз большей производительности и объема памяти. Настройка на голос диктора дикторозависимых систем занимает обычно от 30 минут до нескольких часов. Это составляет главное неудобство для пользователя. Обычно дикторозависимые системы позволяют работать с относительной степенью надежности без предварительной настройки на голос конкретного пользователя. Третьей разновидностью систем по этому признаку являются системы, автоматически настраивающиеся на голос диктора по мере их использования. Системы последнего типа обладают двумя особенностями - им нужно знать, сделал ли пользователь ошибку, произнеся конкретное слово (иначе обучение будет неверным); после настройки на одного диктора такие системы перестают надежно работать с другими голосами.
Степень детализации при задании эталонов. Различают алгоритмы, в которых в качестве эталонов используются целые слова, и алгоритмы, использующие эталоны элементов слов. Сравнение целых слов дает большую точность, скорость, однако требует значительно большего объема памяти (пропорционально количеству слов в словаре) и обучения каждого слова. Алгоритмы сравнения элементов слов (фонем, слогов и т.п.) приходится применять в случае больших словарей, т.к. объем требуемой памяти пропорционален количеству этих эталонных элементов слов (например, звуков) и не зависит от объема словаря.
Размер словаря. Системы распознавания речи могут использовать большие или маленькие словари. Размер словаря системы распознавания почти не связан с реальным количеством слов, которые данная система может распознать. Он определяется количеством слов, требуемых для распознавания в данном конкретном состоянии системы. Системы, работающие с маленькими словарями (около 50 слов) позволяет пользователю давать простые команды компьютеру. Для диктовки текстов необходимы большие словари (несколько десятков тысяч слов). Если системы диктовки учитывают контекст для определения активного под-словаря в конкретном состоянии, то фактически они работают со словарями среднего размера (около 1000 слов).
Несмотря на то, что в принципе возможна любая комбинация этих характеристик, в настоящее время наиболее популярными являются системы голосового управления компьютером и системы дискретной диктовки текстов.