О модели звуковосприятия и её роли в распознавании речи
Здесь с некоторыми правками размещён текст, ранее размещавшийся на главной странице в 2012 г.
На главную страницу | НазадТрадиционный подход к распознаванию речи в значительной степени основывается на построении большого словаря и модели языка. А что, если пойти другим путем: отказаться от словаря, от модели языка и, может быть... от акустической модели? Ну, по крайней мере, в готовом продукте. Возможно ли распознавание речи при таких условиях? Убрав всё, нужно что-то добавить взамен. Пусть это будет модель звуковосприятия - набор чистых рефлексов, генерирующих текст по принципу "что слышим, то и пишем".
Распознавание речи чаще всего представляют, как построение текста из слов, которые в обязательном порядке имеются в словаре системы распознавания, и признаки которых с наибольшей вероятностью обнаруживаются в звуковом сигнале. Непосредственное участие словаря в этом процессе становится причиной высоких требований к системным ресурсам. Но возможно другое решение.
Разговаривая, мы обычно используем голос. Но сам по себе он не несёт ценной информации. Голос лишь увеличивает расстояние, на котором нас могут услышать. Даже если мы говорим шепотом, содержание сказанного от этого не меняется. Кодирование речевой информации обеспечивается движениями органов речевого аппарата. Эти движения оставляют особый след, способный накладываться на любой звук, играющий роль носителя. Носителем может выступать голос, шум, или любой другой более-менее однородный звук. Когда мы говорим шепотом, носителем является шум. При этом некоторые звуки речи становятся неразличимы, но благодаря естественной избыточности речь сохраняет разборчивость. А если искусственно наложить такой след, к примеру, на жужжание пчелы, скрип двери или звук работающего мотора, в итоге тоже получится вполне разборчивая речь. След, формируемый движениями органов речевого аппарата - это и есть звуки речи. Далее звуки речи собираются в слова, а те, в свою очередь, образуют смысловые конструкции. Всё, больше в речевом сообщении ничего ценного мы не найдём: только звуки речи, слова и смысловые конструкции. Все эти виды информации тесно связаны и сложно взаимодействуют. В идеале для извлечения информации должны учитываться одновременно все составляющие. Но можно и что-то отбросить, чем-то пренебречь. Это позволяет снизить сложность задачи до приемлемого уровня. Конечно, в таком случае возникают потери информации, но разумный компромисс и избыточность речевого кодирования позволяют даже при этих потерях минимизировать ошибки распознавания. Речь подобна трёхэтажному зданию: звуки речи, слова, смысловые связи. Что произойдёт, если убрать один из "этажей"? Или даже два?
Мы не можем убрать первый "этаж", иначе рухнет всё "здание". Его придётся оставить. А вот следующие два "этажа", где "живёт" модель языка, можно убрать. Жалко, конечно, но если очень хочется, то можно. И мне захотелость. Модель звуковосприятия при этом "поселилась" на первом и единственном "этаже". На уровне звуков речи содержится самая ценная информация, поэтому такое "одноэтажное" решение имеет право на существование. Решающее значение в данном случае имеет не проблема потери "верхних этажей", а то, как реализован первый "этаж". Он должен существенно отличаться от аналогичного в традиционном подходе.
Принято много внимания уделять индивидуальным особенностям диктора. Чтобы охватить разнообразие таких особенностей, часто привлекаются дикторы с разными голосами и манерой произношения. Но ведь не менее важны индивидуальные особенности слушателя - особенности его звуковосприятия. Обычно мы об этом даже не задумываемся, считая, что все мы слышим одинаково. Возможно, причина такого мнения кроется в том, что особенности звуковосприятия слушателя не так очевидны, как особенности диктора. Действительно, мы постоянно слышим речь разных людей и легко убеждаемся, что все говорят немного по-разному. Но послушать так, как слышит другой человек, мы не можем. Из-за этого мы невольно исходим из предположения, что все остальные люди слышат звуки так же, как и мы. В то же время не так уж сложно доказать, что звуковосприятие очень индивидуально. Более того, для человека звуковосприятие является приобретенным навыком, а значит, сильно зависит от условий среды, и, как следствие, не может быть одинаковым у разных людей.
Какое отношение может иметь звуковосприятие человека к задаче технического распознавания речи? Ответ кроется в другом вопросе: каким должно быть звуковосприятие технической системы, если оно даже у людей неодинаково? Разумно предположить, что оно должно быть в идеале максимально приближено к некоему "усреднённому" человеческому, свойственному носителям данного языка. Говоря об индивидуальности людей, следует говорить и об индивидуальности технической системы. Как видим, распознавание речи всегда субъективно по своей природе. Это важно учитывать, потому что оценить работу технической системы может только человек. И делает он это, опираясь на собственное звуковосприятие. Конечно, это не касается грубых и очевидных ошибок, выходящих за рамки субъективного.
Эксперименты, результаты которых легли в основу программы "Перпетуум М", ставят целью создание качественной модели звуковосприятия. К тому же есть основания утверждать, что для многих применений такая модель может быть даже самодостаточной (тот самый "одноэтажный домик"). Это обещает получение максимальных результатов ценой минимальных затрат вычислительных ресурсов, а значит и широкое распространение систем с локальной (без интернета) обработкой речевой информации.
Как сказано выше, звуковосприятие человека индивидуально и даже способно формироваться и меняться с течением времени. Рассмотрим пример. Многим знакома ситуация, описанная в данном примере, но обычно мы не обращаем на неё внимания и не интересуемся причинами. Допустим, перед телевизором на одинаковом расстоянии сидят два человека. У обоих со слухом всё в порядке. Они смотрят передачу, содержащую большое количество устной речи, но это речь не профессиональных дикторов. Время от времени обнаруживаются моменты, когда один из зрителей отлично понял сказанное, а другой - нет. Например, звучит фраза: "...странные люди - эти ко...ики". Один из зрителей пытается понять последнее слово. Похоже на "комики", но это слово не подходит по смыслу. Выясняется, что второй зритель отлично всё понял: последнее слово - "конники". Данный пример интересен тем, что слово "конники" в широких кругах употребляется сравнительно редко, а это значит, что второй телезритель вероятнее всего не угадал, а именно расслышал данное слово. Почему один расслышал, а другой - нет. Возможно, это результат небольшого отличия в звуковосприятии людей. По единичному случаю нельзя этого сказать точно, но, согласитесь, подобные ситуации происходят очень часто.
Звуковосприятие носителей одного языка отличается не так сильно, как у тех, кто говорит на разных языках. Это касается, конечно, звуков речи. А вот звуки музыки, звуки природы мы всё равно воспринимаем все по-разному (хотя что-то среднее просматривается и здесь). Отсюда различия во вкусах, предпочтениях, в реакции на одни и те же звуки. Родную речь мы осваиваем с детства и приобретаем способность различать звуки речи в соответствии с общепринятым "стандартом". А возможно ли выучить иностранный язык только письменно, и как при этом будет восприниматься устная речь носителей изучаемого языка? Допустим, у нас имеется отличный учебник иностранного языка, и мы располагаем неограниченным количеством литературы на этом языке. Но при этом мы не имеем возможности слышать речь на данном языке. Потратив какое-то количество времени, мы сможем научиться отлично писать и читать на новом для нас языке. Мы научимся правильно строить предложения, формулировать мысли, но... только на бумаге. Если же после всего этого у нас появится возможность пообщаться с носителем языка устно, то ничего не выйдет. Речь собеседника будет восприниматься как тарабарщина. Это будет бессмысленный набор звуков, ни на что не похожих, и не вызывающих никаких ассоциаций. В истории есть примеры людей, испытавших подобное на себе. В их числе и всем известный Корней Чуковский с его английским. Умение читать и писать на каком-то языке ещё не даёт возможности воспринимать его звуки. Попытка что-либо сказать, не владея устной речью на данном языке, приведёт к невольному использованию навыков, заимствованных из родного языка. В результате собеседник тоже ничего не сможет понять.
Описываемая здесь модель звуковосприятия представляет собой технический аналог навыка восприятия человеком устной речи. Так же, как навык чтения и письма воспроизводится в технических системах в виде модели языка. Приведённый выше пример с изучением иностранного языка демонстрирует, что звуковосприятие человека не только способно формироваться с течением времени, но и существует обособлено, как отдельный навык, независимо от навыка чтения и письма. Впрочем, это подтверждается и тем, что человек, знающий язык в устной форме, может при этом оставаться неграмотным. Всё это означает, что применительно к технической системе вполне разумно рассматривать модель звуковосприятия, как имеющую право на самостоятельное существование подсистему, способную выполнять свои функции даже в отсутствие текстовой модели языка. Приведённых примеров, думаю, достаточно для обоснования данной концепции.
Можно было бы возразить, что неграмотный человек знает слова и умеет строить из них предложения, а в технической системе это аналогично модели языка. Но, во-первых, неграмотный человек всё же владеет лишь звуковыми образами. Текстовая часть языка ему недоступна (без чего техническая модель языка не обходится). Во-вторых, можно научиться воспринимать, идентифицировать и даже записывать звуки вообще не имеющие никакого отношения к речи. Например, слушая пение соловья, можно постепенно выделить повторяющиеся фрагменты, присвоить им графические символы. Это позволит записывать соловьиную песню в виде текста. Обнаружить в этом тексте какой-либо смысл будет проблематично, но здесь важно то, что возможно приобретение навыка звуковосприятия (и даже письма!) без привязки к какому-либо языку. Можно записывать звуки, не зная языка. Это опять же говорит о том, что навык звуковосприятия в значительной степени может быть самодостаточным. В качестве ещё одного примера можно привести музыку и ноты. Как известно, человек, обладающий соответствующим навыком, может записывать ноты на слух.
Добавлю к вышесказанному несколько принципов, являющихся ориентиром в разработках данной технологии:
- Никаких образцов и эталонов речи в готовом продукте.
Программа, как готовый продукт, не должна содержать в себе образцов/эталонов речи в любом виде (по крайней мере, до стадии работы с текстом). Это значит, никакой речевой базы данных. - Ограничение использования статистических методов.
Статистику можно использовать лишь для исключения абсолютно невозможных вариантов. Нельзя применять вероятности, полученные статистическими методами, в качестве дополнительной информации при принятии решений. Система должна исходить из предположения, что диктор с равной вероятностью может сказать всё, что только возможно сказать, не "сломав" язык. Исключение составляют случаи, когда разные по написанию и значению слова имеют абсолютно одинаковое произношение. - Результат должен записываться сразу в виде последовательности букв.
Так как наличие текстовой части в системе (словаря, модели языка и т.п.) не является обязательным, создаваемая модель звуковосприятия сама должна уметь выводить результат своей работы сразу в символах алфавита используемого языка. - Словарь может работать только с текстом и не должен влиять на работу со звуком.
При использовании словаря недопустимо его вмешательство в работу подсистемы звуковосприятия (т.е. до получения первичного текста). Несоблюдение этого правила ведёт к искажению модели звуковосприятия из-за ограничений, навязываемых текстовым словарём. Словарю может отводиться только функция корректировки текста и идентификации команд. При этом снижаются и требования к словарю. В простейшем случае словарём может выступать любой список слов или фраз. Появляется возможность моментально менять состав словаря, что бывает полезно в самых маленьких (по затратам системных ресурсов) системах распознавания. - Предельная простота и легкость в использовании.
Пользователь должен быть избавлен от необходимости обучать, тренировать программу, или выполнять иные подобные действия. Допускается только настройка интерфейса, исполнительной и второстепенной функциональности. - Использование распространённого оборудования.
Программа не должна требовать применения дорогого или редкого оборудования.
Ознакомиться с текущей версией программного продукта можно на странице "Программные продукты". Там имеются прямые ссылки для скачивания.
На главную страницу | Назад