Современные технологии распознавания речи С момента появления первых ЭВМ одним из наиболее важных вопросов развития компьютерной техники был процесс взаимодействия человека с машиной. Долгое время это было доступно только узким специалистам – технологи «общались» с машиной через посредника-программиста. Такая ситуация просуществовала вплоть до появления диалогового интерфейса, когда пользователь смог лично вводить с клавиатуры адресованную машине команду и получить осмысленный ответ. Дальнейшее появление графического интерфейса, в котором отпала необходимость в знании человеком каких-либо команд, привела к повсеместному распространению персональных компьютеров. Однако человек всегда стремился к более универсальному и естественному способу взаимодействия с ЭВМ. Еще в эпоху перфокарт в научно-фантастических романах человек с компьютером разговаривал, как равным себе. Тогда же были предприняты первые шаги по реализации речевого интерфейса [1]. В 1971 г. была начата разработка самого крупного проекта, когда-либо предпринимавшегося на то время в области распознавания речи, после того, как Advanced Research Agency ARPA министерства обороны США приняло 5-летний проект по созданию машин, которые позволяют «понимать» произносимые слитно предложения и объем словаря которых составлял 1000 слов. В конце 1976 г. было представлено несколько систем, одной из которых была HARPY. Эта система правильно понимала 95% произносимых пятью операторами предложений, используя словарь объемом 1011 слов и строго ограниченную грамматику предложений. Современные системы распознавания речи В настоящее время речевое распознавание находит все новые и новые области применения, начиная от приложений, осуществляющих преобразование речевой информации в текст и заканчивая бортовыми устройствами управления автомобилем. Все многообразие существующих систем распознавания речи можно условно разделить на следующие группы: 1. Программные ядра для аппаратных реализаций В основе любой речевой технологии лежит так называемый «engine» или ядро программы – набор данных и правил, по которым осуществляется обработка данных. В зависимости от назначения этого ядра различают TTS и ASR engine. TTS (Text-to-Speech engine предоставляет возможность синтеза речи по тексту, а ASR Automatic Speech Recognition) engine – для распознавания речи. Существует несколько крупных производителей, занимающихся созданием ASR ядер и среди них такие компании, как SPIRIT, Advanced Recognition Technologies, IBM. Компания SPIRIT занимается созданием программных средств для цифровой телефонии, сжатия речи, идентификации говорящего, для технологий VoIP и GPS [2]. ASR engine от SPIRIT разработан для распознавания речевых команд и применяется в различных приложениях, таких как голосовое управление устройствами, голосовой набор в hands-free устройствах, ввод персональных идентификационных кодов (PIN) в системах безопасности. Данное ядро встраивается в любые DSP или RISC платформы и поставляется в виде объектного кода. Корпорация IBM уже более 30 лет занимается вопросами автоматического распознавания речи и достигла в этой области больших успехов. Так компания ProVox Technologies на основе программного ядра ViaVoice® от IBM [3] создала систему для диктовки отчетов врачей-радиологов VoxReports [4]. По результатам тестирований, данная система с точностью 95-98% распознает слитную речь нормального темпа (до 180 слов в минуту) в независимости от диктора. Однако словарь системы ограничен набором специфических медицинских терминов. Opera Software договорилась с IBM об интеграции в браузеры Opera технологии распознавания речи Embedded ViaVoice. Использование Embedded ViaVoice позволит пользователям управлять браузером не только с помощью мыши и клавиатуры, но и голосом. Технология распознавания речи все больше применяется в средствах подвижной связи. Так компания Advanced Recognition Technologies создала систему smARTspeak NG, встраиваемую в мобильные телефоны [6]. Сейчас система smARTspeak NG применяется в бесклавиатурных телефонах от Siemens [7], телефонах Panasonic стандарта TDMA в США и других. Sakrament ASR Engine – программная разработка белорусской компании «Сакрамент» [8], рассчитанная на применение в различных аппаратных системах и программных приложениях, использующих технологии распознавания речи. Заявленные характеристики: точность распознавания 95-98%; дикторонезависимость; языконезависимость; распознавание слитной речи в виде выражений и небольших предложений. Однако в данной системе нет возможности обучения – дополнительные словари создаются по заказу, самой компанией «Сакрамент». 2. Наборы библиотек для разработки приложений С развитием речевых технологий и все большим внедрением мобильных устройств, возникла идея применения речевого управления при построении сетевых приложений. Для этого было необходимо разработать унифицированный стандарт для интеграции речевых технологий. Один из открытых стандартов на основе XML-языка – VoiceXML (Voice eXtensible Markup Language), первая версия опубликована в мае 2000 г. международным консорциумом World Wide Web (W3 Consortium) – предназначен для разработки интерактивных голосовых приложений (Interactive Voice Response, IVR) управления медиаресурсами. Цель создания стандарта - привнесение всех преимуществ web-программирования в разработку IVR-приложений [9]. Однако интерес к многомодальным приложениям, сочетающим распознавание речи с другими формами ввода информации (при помощи клавиатуры, пера или набора цифровых кнопок) побудил ряд компаний, в том числе Microsoft, поддержать проект SALT Forum (Speech Application Language Tags - теги языка речевых приложений). И теперь вокруг SALT и VoiceXML консорциума W3С формируются два разных лагеря [10, 11]. До сих пор компании не могут прийти к единому мнению о выборе главного стандарта и сейчас оба направления развиваются в равной степени. Различные компании занимаются разработкой пакетов для создания речевых приложений, так называемых Software Development Kit (SDK), поддерживающих тот или иной стандарт. Так компания Philips создала пакет Speech SDK. Данный пакет поддерживает спецификацию Voice XML и выполнен для связи с C/C++ API [12]. Компаниями CompTek [13] и Philips совместно был создан SpeechPearl — продукт, представляющий из себя набор программных модулей, библиотек и утилит для разработки систем распознавания речи с поддержкой русского языка для телефонных приложений. В июне 2004 г. в сервисе Телепат, обеспечивающем управление электронными кошельками WebMoney Transfer c помощью мобильных и городских телефонов, начала работу система распознавания речи, созданная на основе SpeechPearl. Данный сервис стал первой в России коммерческой системой массового обслуживания, в которой поддерживается функция распознавания речи. С другой стороны, корпорация Microsoft распространяет свой продукт - Microsoft Speech SDK. Он содержит набор компонентов, описывающих соответствующий программный интерфейс Windows Speech API, документацию, исходные тексты программы-заготовки (ее достаточно дополнить только собственным алгоритмом распознавания), а также системы распознавания и преобразования текста в речь Microsoft Speech Recognition и Microsoft Text-to-Speech [14]. 3. Независимые пользовательские приложения В настоящее время рынок программных распознавателей речи представлен множеством приложений. Рассмотрим наиболее известные из них. Dragon NaturallySpeaking Preferred фирмы Dragon Systems [15] – единственная программа, приблизившаяся к тому, чтобы соответствовать заявленным характеристикам. В целом он очень близко подходит к достижению заявленной безошибочности распознавания - 95%. Хотя пакет Dragon и уступает некоторым из конкурентов в том, что касается перемещения по экрану, правки и форматирования, он превосходит всех в главном - способности с первого раза правильно записывать произнесенные слова. Изначально данный пакет не работает с русским языком. Компания М.С. Технолоджи [16] разработала программу «Микросервис» для управления функциями операционных систем Windows 98/Me/2000/XP и ввода текста в любой редактор. Программа поддерживает русский и английский языки и содержит словарь порядка 10000 слов. Также создана упрощенная версия – «Микросервис» Light. Здесь объем словаря ограничен 300 словами и 100 командами. Компания 1С приобрела права на это ПО и выпускает его под названием «Диктограф». Однако, по данным тестирований, «Микросервис» от М.С. Технолоджи показал неудовлетворительные результаты – 30-50% правильно распознанных слов и команд [17]. К сожалению, российский рынок программных средств распознавания речи представлен единичными разработками. Из всех программ, изначально разрабатываемых для русского языка, только ПО от белорусской компании «Сакрамент» может конкурировать по качеству распознавания с зарубежными аналогами. 4. Специализированные приложения Распознавание речи может применяться не только для ввода текста или подачи команд, но и для более специфичных целей. Так компания «Центр Речевых Технологий» разрабатывает и производит программные продукты, технологии и образцы техники для подразделений МВД, ФСБ, МЮ, МЧС, МО, служб экстренной помощи, центров обработки вызовов и для других пользователей, в деятельности которых особое значение придается регистрации и обработке речевой информации [18]. Компанией созданы следующие приложения: «ИКАР Лаб» – инструментальный комплекс криминалистического исследования фонограмм речи, «Трал» – автоматизированный комплекс распознавания дикторов в фонограммах телефонных переговоров, «Территория» – автоматизированная система диагностики диалектов и акцентов русской устной речи. Германский институт DFKI, занимающийся разработками в области искусственного интеллекта, разработал систему, названную Verbmobil, способную переводить разговорную речь с немецкого на английский или японский и обратно, непосредственно произнесенную в микрофон [19]. 5. Устройства, выполняющие распознавание на аппаратном уровне Для использования функций речевого распознавания в различных устройствах, роботах, игрушках, разрабатываются аппаратные методы решения данной проблемы. Так американская компания Sensory Inc. разработала интегральную схему Voice Direct™ 364 осуществляющую дикторозависимое распознавание небольшого числа команд (около 60) после предварительного обучения [20]. Перед началом эксплуатации модуль необходимо обучить всем командам, используемым в работе. Команды сохраняются во внешнюю память в виде образов размером 128 байт. Во время работы, образ очередной команды сравнивается с эталонными из памяти в нейросетевом модуле и принимается решение о совпадении. 6. Теоретические исследования и разработки Разработкой теоретической базы в области речевых технологий занимаются множество исследовательских групп по всему миру. В первую очередь это такие крупные корпорации как IBM, Intel, Microsoft, AT&T. Эти компании занимаются теорией распознавания уже не один десяток лет и являются законодателями в этой области. Перспективы разработки систем распознавания речи Как видно, технологии речевого распознавания нашли свое применение в различных областях. Однако в данной области множество проблем все еще остаются не решенными, многие идеи требуют дальнейшего развития. Так, программы, работающие с изолированными словами, достигли высокой точности в командных системах – в наиболее распространенных современных приложениях точность распознавания составляет в среднем 95-99% и зависит в основном от уровня шума. В то же время задача распознавания слитной речи в достаточной степени не решена, хотя в случае ограниченного словаря системы такого типа существуют (VoxReports [4] на ядре ViaVoice [3], Verbmobil) и показывают высокие результаты по точности. В настоящее время множество работ посвящено проблеме распознавания слитной речи (ИПУ РАН [23], «Истра-Софт» [25], IBM [3]), т.к. именно такой тип речевого взаимодействия считается наиболее перспективным. Важнейшим этапом обработки речи в процессе распознавания, является выделение информативных признаков, однозначно характеризующих речевой сигнал. Существует некоторое число математических методов, анализирующих речевой спектр. Здесь самым широко используемым является преобразование Фурье, известное из теории цифровой обработки сигналов. Данный математический аппарат хорошо себя зарекомендовал в данной области, имеется множество методик обработки сигналов, использующих в своей основе преобразование Фурье. Не смотря на это, постоянно ведутся работы по поиску иных путей параметризации речи. Одним из таких новых направлений, является вейвлет анализ, который стал применяться для исследования речевых сигналов сравнительно недавно. Теория данного метода сейчас развивается учеными всего мира, и многие исследователи возлагают большие надежды на использование инструмента вейвлет анализа для распознавания речи. Если рассмотреть речевые распознаватели с позиции классификации по механизму функционирования, то подавляющая их часть относится к системам с вероятностно-сетевыми методами принятия решения о соответствии входного сигнала эталонному – это метод скрытого Марковского моделирования (СММ), метод динамического программирования и нейросетевой метод (рис. 1). Например, нейронные сети могут быть использованы для классификации характеристик речевого сигнала и принятия решения о принадлежности к той или иной группе эталонов [27]. Нейросеть обладает способностью к статистическому усреднению, т.е. решается проблема с вариативностью речи. Многие нейросетевые алгоритмы осуществляют параллельную обработку информации, т.е. одновременно работают все нейроны. Тем самым решается проблема со скоростью распознавания – обычно время работы нейросети составляет несколько итераций. Сейчас многие разработчики используют аппарат нейронных сетей для построения распознавателей [19, 24, 27]. |