Электронная библиотека книг Александра Фролова и Григория Фролова.
Shop2You.ru Создайте свой интернет-магазин
Библиотека
Братьев
Фроловых
[Назад] [Содержание] [Дальше]

Синтез и распознавание речи. Современные решения

© А.В. Фролов, Г.В. Фролов, 2003

Сложность проблемы

Попытки научить компьютеры общаться с людьми при помощи естественного голосового интерфейса предпринимались с первых лет истории компьютерной техники. В процессе многолетних исследований было выяснено, что к решению проблемы необходимо привлекать не только программистов, но и специалистов по языкознанию (лингвистике), радиоинженеров, математиков, биологов и даже психологов.

В самом деле, для создания системы распознавания речи нужно решить множество задач.

Прежде всего, нужно преобразовать колебания воздуха в электрические сигналы при помощи микрофона, отфильтровав при этом помехи и шумы.

Далее каким-то образом сигнал необходимо представить в цифровой форме, доступной для обработки при помощи компьютера (оцифровать). Здесь есть разные возможности: можно вводить в компьютер информацию об амплитуде звукового сигнала, а можно анализировать спектральный состав сигнала, выделяя из сигнала набор основных частот. Эту информацию можно комбинировать.

Специалисты по языкознанию необходимы для изучения принципов построения речи, выделения тех элементов речи, которые программа должна распознавать во входном потоке, — фонем, морфем, слогов, слов и т.п. Языкознание изучает такие аспекты речи, учет которых просто необходим при создании систем распознавания и синтеза речи.

Надо сказать, что извлечение из речевого потока лингвистических конструкций представляет собой непростую задачу. Только ребенок, который учится говорить или читать, произносит слова по слогам, отделяя слоги и слова паузами. В реальной жизни речь представляет собой сплошной поток звуков. В процессе формирования сплошной речи звуки, соответствующие одним и тем же буквам, могут изменяться при соединении с другими звуками.

Звуки сплошной речи содержат постоянно изменяющийся спектр гармонических частот, а также шум. Громкость и темп речи также постоянно изменяются. Более того, одна и та же фраза, сказанная разными людьми, или даже одним человеком, находящимся в разных психических состояниях, может иметь разную спектрально-временную окраску. Это сильно затрудняет создание универсальных систем распознавания, «понимающих» речь разных людей.

Для того чтобы выделить из оцифрованного звука лингвистические конструкции, применяются различные математические методы в сочетании со специальным компьютерным оборудованием, таким, например, как аппаратные или программные нейронные сети. На протяжении всей истории систем распознавания речи эти методы постоянно изменялись. При этом одни методы отмирали из-за их неэффективности, а другие разрабатывались и совершенствовались.

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

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

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

Отсюда вывод — если Вы программист и решили посвятить себя разработкам в области речевых технологий, Вам необходимо иметь представление о перечисленных выше смежных специальностях. Для наглядности мы свели все эти специальности в табл. В-1.

Таблица В-1. Специальности, имеющие отношение к речевым технологиям

Специальность

Как и для чего используется

Радиоинженер

Проектирование систем оцифровки звука с использованием микрофона, разработка фильтров, удаляющих помехи, аппаратная реализация анализатора спектра и решение других проблем, имеющих отношение к радиоэлектронным блокам систем распознавания и синтеза речи.

Лингвист

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

Математик

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

Программист

Создание программного интерфейса с аппаратурой оцифровки и генерации звука. Создание визуального интерфейса программ распознавания и синтеза речи. Разработка алгоритмов и программная реализация математических моделей и методов, используемых для фильтрации и спектрального анализа звукового сигнала. Программная реализация методик распознавания речи, а также методик обучения таких систем, необходимого для их первоначальной настройки.

Биолог

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

Психолог

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

К счастью, сегодня различные компании, в том числе компания Microsoft, выпускают средства синтеза и распознавания речи в виде программных модулей и интерфейсов. Программисты, не обладающие познаниями в области лингвистики, математики и биологии, сможет использовать такие готовые интерфейсы и программные модули для добавления речевого интерфейса в собственные разработки (учет человеческой психологии, по-видимому, все же необходим для проектирования удобных речевых интерфейсов).

Полагаясь на упомянутые выше разработки, программист окажется в ситуации, когда речевые возможности его программ будут ограничены возможностями использованных средств и технологий. Например, многие средства распознавания и синтеза речи не способны работать с русским языком, что ограничивает их использование в России.

Заметим, что проблема создания компьютерных систем речевого общения в настоящий момент представляется довольно актуальной. Вместе с тем, она не слишком широко освещена в современной литературе. Причина этого заключается, на наш взгляд, не столько в отсутствии интереса к теме, сколько в нежелании разработчиков делиться с другими своими профессиональными секретами. Это создает дополнительные трудности для тех, кто только начинает осваивать речевые технологии.

Тем не менее, многое можно найти в Интернете. В нашей книге мы попытались собрать и обобщить разрозненный материал с целью снабдить читателя некоторыми отправными базовыми знаниями, необходимыми не только для создания собственных речевых систем, но и для оптимального использования речевых систем, доступных на рынке программного обеспечения (как Вы увидите, такие системы уже существуют).

Список литературы, посвященной данной тематике, а также соответствующие ссылки на ресурсы Интернета приведены в разделе «Библиографический список и ресурсы Интернета», расположенный в конце книги.

[Назад] [Содержание] [Дальше]