240-2022 (664706), страница 2
Текст из файла (страница 2)
Следующий этап- распознавание. Хранимые в памяти компьютера эталоны произношения по очереди сравниваются с текущим участком последовательности десяти миллисекундных векторов, описывающих входной речевой сигнал. В зависимости от степени совпадения выбирается лучший вариант и формируется гипотеза о содержании высказывания. Здесь мы сталкиваемся с очень существенной проблемой - необходимостью нормализации сигнала по времени. Темп речи, длительность произношения отдельных слов и звуков даже для одного диктора варьируется в очень широких пределах. Таким образом, возможны значительные расхождения между отдельными участками хранимого эталона и теоретически совпадающим с ним входным сигналом за счет их временного рассогласования. Достаточно эффективно решать данную проблему позволяет разработанный в 70-х годах алгоритм динамического программирования и его разновидности (алгоритм Витерби). Особенностью таких алгоритмов является возможность динамического сжатия и растяжения сигнала по временной оси непосредственно в процессе сравнения с эталоном. С начала 80-х все более широкое применение находят марковские модели, позволяющие на основе многоуровневого вероятностного подхода к описанию сигнала производить временную нормализацию и прогнозирование продолжений , что ускоряет процесс перебора эталонов и повышает надежность распознавания.
Что такое распознавание речи?
На первый взгляд, все очень просто: вы произносите фразу, на которую техническая система реагирует адекватно .На самом деле за столь простой идеей кроются огромные сложности.
Почему же между постановкой задачи и ее решением лежит дистанция огромного размера? Распознавание речи - молодая, развивающаяся технология. Ее очертания пока зыбки и изменчивы. Поэтому в статье пока больше вопросов, чем ответов. Я попытаюсь немного рассказать о технологиях распознавания речи, и, надеюсь, вам будет интересно.
Немного о терминах
Начнем с главного термина. Что есть речь?
Говоря о речи, мы должны различать такие понятия, как «речь», «звуковая речь», «звуковой сигнал», «сообщение», «текст».
В нашем случае, в приложении к задаче распознавания такие понятия, как «речь» и «звуковая речь» означают одно и то же - некое генерируемое человеком звуковое сообщение, которое может быть объективно зарегистрировано, измерено, сохранено, обработано и, что важно, воспроизведено при помощи приборов и алгоритмов. То есть речь может быть представлена в виде некоего речевого сигнала, который в свою очередь может использоваться для обратного воспроизведения речи. То есть можно поставить знак эквивалентности между звуковой речью и ее представлением в виде речевого сигнала. При этом под понятием «сообщение» может скрываться любая полезная для получателя информация, а не только текст. Например, если интересоваться не словами а интонациями, то сообщением будут просодические нюансы речи. Что же касается распознавания речи, то в нашем случае задача сводится к извлечению из речи текста.
Но здесь мы сталкиваемся с одним противоречием. Текст, как известно, состоит из букв, слов, предложений, - то есть он дискретен. Речь же в нормальных условиях звучит слитно. Человеческая речь, в отличие от текста, вовсе не состоит из букв. Если мы запишем на магнитофонную ленту или на диск компьютера звучание каждой отдельной буквы, а потом попробуем скомпоновать из этих звуков речь, у нас ничего не получится.
Люди уже довольно давно догадались о том, что элементарные звуки, из которых состоит речь, не эквивалентны буквам. Поэтому придумали понятие фонемы для обозначения элементарных звуков речи. Хотя до сих пор специалисты никак не могут решить - сколько же всего различных фонем существует. Есть даже такой раздел лингвистики - фонетика. Большинство авторов даже для одного и того же языкового диалекта приводят разное количество фонем. В русском языке по одним данным 43 фонемы, по другим - 64, по третьим - более сотни... Но так уж повелось, что есть миф о незыблемости понятия фонемы. И о том, что речевой сигнал состоит непосредственно из кусочков сигнала, каждый из которых является фонемой. К сожалению, все далеко не так просто.
Поначалу ученые рассматривали речевой сигнал как набор неких универсалий, расположенных друг за другом на временной оси, и считали этими универсалиями фонемы. Однако дальнейшие исследования речевых сигналов никаких фонем не обнаружили.
Тогда одни исследователи справедливо решили, что при генерации речевых сигналов наблюдается коартикуляция, то есть взаимопроникновение соседних звуков (мышцы лица, язык и челюсти обладают разной инерцией). Значит, речевой сигнал должен состоять не из фонем, а из аллофонов - комбинаций «слипшихся» фонем.
Другие исследователи, подобно физикам, атаковали идею элементарности фонем и стали утверждать, что фонемы надо поделить на еще более короткие кусочки или даже вообще отказаться от этого понятия и «расчленять» речевой сигнал как-то иначе. Так родились фоноиды и еще масса авторских названий элементарных звуков.
А дальше все многозначительно замолчали. Каждый принялся рассматривать речевой сигнал со своей позиции, сообщай об успехах весьма туманно. Последнее, весьма вероятно, можно объяснить желанием сохранить ноу-хау. Вот такая картина. Люди изобрели целую кучу претендентов на универсальность. Конечно, в их основу положено прежде всего человеческое ощущение звука. Возможно поэтому фонемы ничем не лучше букв. А фоноиды, аллофоны и прочая - лишь усовершенствованная версия звукового деления речи. Может быть, в них и есть какой-то смысл. Мы ведь услышим. А технически-то сигнал состоит не из наших, человеческих компонентов восприятия. Сигнал можно разложить, отфильтровать, как-то еще преобразовать. Задача не в этом. Необходимо найти некий эквивалент, построить модель механизма восприятия звуков речи. Большой интерес для ученых, работающих в области распознавания речи, представляют различные разделы лингвистики, науки о языках. Возможно, удачный синтез достижений этих наук и теории обработки речевых сигналов приведут к успешному созданию систем распознавания .
Главные трудности фонемного подхода
Темп речи варьируется в широких пределах, часто в несколько раз. При этом различные звуки речи растягиваются или сжимаются не пропо-рционально. Например, гласные изменяются значительно сильнее, чем полугласные и особенно смычные согласные. Для так называемых щелевых звуков есть свои закономерности. (Полугласные - это звуки при генерации которых необходимо участие голосовых связок, как и для гласных звуков, но сами они в обиходе считаются согласными. Например, так обычно звучат «м», «н», «л» и «р». Смычные звуки образуются при резком смыкании и размыкании органов артикуляции. Например «б», «л», «д», «т». Образование щелевых звуков связано с шипением и прочими эффектами турбулентности в органах артикуляции. Можно назвать «в», «ж», «с», а также «ш» и другие шипящие. В качестве примеров для простоты намеренно не приведены звуки, не имеющие буквенных обозначений.) Эта свойство называется временной нестационарностью образцов речевого сигнала. Произнося одно и то же слово или фразу в разное время, под влиянием различных факторов (настроения, состояния здоровья и др.), мы генерируем заметно не совпадающие спектрально-временные распределения энергии. Это справедливо даже для дважды подряд произнесенного слова. Намного сильнее этот эффект проявляется при сравнении спектрограмм одной и той же фразы, произнесенной разными людьми. Обычно этот эффект называют спектральной нестационарной сетью образцов речевого сигнала (см. примеры спектрограмм). В Изменение темпа речи и четкости произношения является причиной коартикуляционной нестационарности, означающей изменение взаимовлияния соседних звуков от образца к образцу. Проблема кластеризации слитной речи. Из непрерывного речевого потока довольно непросто выделить какие-либо речевые единицы. Многие звуки «слипаются» либо имеют нечеткие границы.
Многообразие видов
Существующие системы распознавания речи можно классифицировать по разным признакам.
По назначению:
-
командные системы
-
системы диктовки текста.
По потребительским качествам:
-
диктороориентированные (тренируемые на конкретного диктора)
-
дикторонезависимые (рискую предложить термин «омнивойс»)
-
распознающие отдельные слова
-
распознающие слитную речь.
По механизмам функционирования:
-
простейшие (корреляционные) детекторы
-
экспертные системы с различным способом формирования и обработки базы знаний
-
вероятностно-сетевые модели принятия решения, в том числе нейронные сети.
Довольно трудно выбрать удобный показатель качества работы системы распознавания речи. Наиболее просто такой показатель качества вводится для командных систем. При тестировании в случайном порядке произносятся все возможные команды достаточно большое число раз. Подсчитывается количество правильно распознанных команд и делится на общее количество произнесенных команд. В результате получается оценка вероятности правильного распознавания команды в заданной при эксперименте акустической обстановке. Для систем диктовки похожий показатель качества может вычисляться при диктовке некоторого тестового текста. Очевидно, что это не всегда удобный показатель качества. В действительности мы сталкиваемся с самыми различными акустическими обстановками. Но как быть со сменой дикторов и сопутствующей ей тренировкой системы?
В качестве примера разрешите взять на рассмотрение вариант простейшей командной системы распознавания речи. Функционирование системы основано на гипотезе о том, что спектрально-временные характеристики команд-слов для отдельно взятого диктора изменяются слабо. Акустическая модель такой системы представляет собой преобразователь из речевого сигналов спектрально-временную матрицу и может служить типичным примером изобретательского подхода. В самом простом случае команда локализуется во времени по паузам в речевом сигнале. Лингвистический блок способен обнаружить ограниченное число команд плюс еще одну, которая означает все остальные неизвестные системе слова. Как правило, лингвистическая модель строится как алгоритм поиска максимума функционала от входного образца и образцов всего «словарного запаса» системы. Часто это обычный двумерный коррелятор. Хотя выбор размерности пространства описания и его метрики может широко варьироваться разработчиком.
Уже исходя из «конструкции» описанной системы понятно, что она представляет собой скорее игрушку, нежели полезный инструмент. В настоящее время на рынке представлено множество коммерческих систем распознавания речи с гораздо большими возможностями:
-
Voice Type Dictation , Voice Pilot , ViaVoice от IBM
-
Voice Assist Creative от Techonology
-
Listen for Windows от Verbex и многие другие.
Некоторые из них (например, ViaVoice) способны, как заявляют разработчики, вводить слитную речь.
Лингвистические блоки современных систем реализуют сложную модель естественного языка. Иногда она основана на математическом аппарате скрытых цепей Маркова, иногда использует последние достижения технологии нейронных сетей либо других ноу-хау. Устройство же акустических блоков подобных систем держится в строгом секрете. По некоторым признакам можно догадаться, что акустический блок некоторых систем пытается моделировать естественный слуховой аппарат.
Речевой вывод.
Речевой вывод информации из компьютера- проблема не менее важная, чем речевой ввод. Это вторая часть речевого интерфейса, без которой разговор с компьютером не может состояться. Я имею в виду прочтение вслух текстовой информации, а не проигрывание заранее записанных звуковых файлов. То есть выдачу в речевой форме заранее не известной информации.
Фактически, благодаря синтезу речи по тексту открывается еще один канал передачи данных от компьютера к человеку, аналогичный тому, какой мы имеем благодаря монитору. Конечно, трудновато было бы передать рисунок голосом. Но вот услышать электронную почту или результат поиска в базе данных в ряде случаев было бы довольно удобно, особенно если в это время взгляд занят чем-либо другим. Например, придя утром на работу в офис, вы могли бы поправлять галстуку зеркала или возвращать на место прическу (может быть, даже подкрашивать ногти ) в то время как компьютер будет читать вслух последние известия или почту. Или. например, в середине рабочего дня он может привлечь ваше внимание сообщением, что приближается время заранее назначенной деловой встречи.
С точки зрения пользователя, наиболее разумное решение проблемы синтеза речи - это включение речевых функций (в перспективе - многоязычных, с возможностями перевода) в состав операционной системы. Компьютеры будут озвучивать навигацию по меню, читать (дублировать голосом) экранные сообщения, каталоги файлов, и т. д. Важное замечанием пользователь должен иметь достаточные возможности по настройке голоса компьютера, в частности, при желании, суметь выключить голос совсем.
Вышеупомянутые функции и сейчас были бы не лишними для лиц, имеющих проблемы со зрением. Для всех остальных они создадут новое измерение удобства пользования компьютером и значительно снизят нагрузку на нервную систему и на зрение. По моему мнению, сейчас не стоит вопрос, нужны синтезаторы речи в персональных компьютерах или нет. Вопрос в другом - когда они будут установлены на каждом компьютере. Осталось ждать, может быть, год или два.
Методы синтеза речи
Теперь, после оптимистического описания ближайшего будущего давайте обратимся собственно к технологии синтеза речи. Рассмотрим какой-нибудь хотя бы минимально осмысленный текст, например, эту статью. Текст состоит из слов, разделенных пробелами и знаками препинания. Произнесение слов зависит от их расположения в предложении, а интонация фразы - от знаков препинания. Более того, довольно часто и от типа применяемой грамматической конструкции: в ряде случаев при произнесении текста слышится явная пауза, хотя какие-либо знаки препинания отсутствуют. Наконец, произнесение зависит и от смысла слова! Сравните, например, выбор одного из вариантов за'мок» или «замо'к» для одного и того же слова «замок».
Обобщенная функциональная система синтеза
Структура идеализированной системы автоматического синтеза речи может быть представлена блок- схемой, изображенной на рис.1.