При автоматизированном распознавании устной речи и рукописного текста на естественных языках возникают проблемы, близкие к проблемам машинного перевода.
То есть, существуют слова, близкие по звучанию, по набору фонем. Например, «шесть» и «шерсть» (рус.), ship and sheep в английском. Человек достаточно легко справляется с различением таких слов за счет понимания контекста, в котором они произнесены, тогда как для компьютерных систем различить такие близкие наборы звуков составляет почти неразрешимую задачу. Следовательно, для распознаваня речи нужно не только слышать ее, но еще и понимать о чем идет речь. Человек однозначно воспринимает контекст и восстанавливает («домысливает») нерасслышанные фонемы, в то время как существующие алгоритмы этот контекст просто не учитывают.
Аналогичные проблемы возникают и при распознавании рукописного текста. То есть, вариации в написании символов различными людьми не дают возможности построить однозначное соответствие между рукописным символом и буквой алфавита, что не дает возможности точно построить то или иное слово по его рукописному аналогу.
Наличие эти проблем обусловлено опять же механистическим подходом к распознаванию фонем и символов –делается попытка распознать их как дискретные элементы, не учитывая семантических взаимосвязей.
Здесь, как и в задаче перевода, проблема распознавания решается отражением семантическое пространство для тех гипотез значений, которые наиболее вероятны для звучаний и написаний распознаваемых слов. Изначально рассматриваются все варианты слов, которые могут быть получены из распознанной информации. Так как отражение проводится вместе с предыдущим контекстом, то сразу можно выбрать то понятие, которое наиболее семантически близко к данному контексту и по нему ( если нужно) восстановить то слово, которое требуется распознать.
Одной из проблем современных систем распознавания является восстановление по распознанным фонемам исходного слова. Это связано с тем, что транскрипция ( произношение) каждого слова не обязательно совпадает с его написанием, например лесница, здача, салома и т.д.
Подход с позиций КТПП дает простое решение данной проблемы. Представляется наиболее целесообразным не искать способы написания того или иного набора фонем, а напрямую осуществлять поиск этого набора в ПП, так же как ищутся и слова с целью определения их координат. То есть, по набору фонем определяются координаты соответствующего понятия и в сочетании с определением разрешенной/запрещенной области выдается решение о том или ином понятии уже в письменном, текстовом (или графическом) виде.
Преимущество такого подхода заключается еще и в том, что он позволяет реализовать клиент – серверную архитектуру обработки запроса, то есть распознавание фонем производить на достаточно «тонком» клиенте, а поиск соответствия набора фонем и понятия, производить на сервере – удаленном компьютере. Более того, если набор фонем из запроса не распознан на ближайшем распознающем сервере, то его можно при помощи глобальных телекоммуникационных сетей отослать другим серверам ( например, если запрос сделан на неиспользовавшемся ранее языке), то есть можно построить систему распознавания речи на нескольких (потенциально – на любых) языках.
Сейчас стали очевидны недостатки традиционного подхода распознавания речи, при котором делается попытка найти произнесенное слово (текст) по набору звуков на входе – невозможность точного, 100% понимания машинным интеллектом вводимых команд или неизбежная ограниченность словаря узким набором команд, жесткая заданность алгоритма работы такого интерфейса, большая зависимость от дикторского произношения.
Предлагаемая архитектура построения системы распознавания команд и слов на базе распределенных вычислений имеет следующие отличия.
1. предлагается производить распознавание фонем не по их звучанию, а по способу звукообразования, то есть построить математические модели не на данных статистического анализа большого корпуса фонем, а на базе подбора для каждой фонемы (бифонемы) наиболее оптимальной, адекватной модели механизма звукообразования ( взрывные (Т, Б), длительные (Ж, М), глухие – звонкие, твердые – магкие, бифонемы и т.д.). Поскольку все люди, обладают схожим механизмом извлечения звуков ;-), то и эта модель должна решить проблему дикторонезависимой речи и речи на различных языках. Математические модели не обязательно должны быть одинаковы, важно чтобы каждая модель однозначно детектировала «свою» фонему . Так, гласные и протяженные согласные фонемы , возможно, лучше будут детектироваться рядами Фурье, а бифонемы и взрывные согласные – вейвлетами. То есть, необходим набор цифровых фильтров, каждый из которых будет настроен на свою фонему. Естественно реализовать эту архитектуру виде специализированного микропроцессора.
2. предлагается отказаться от непосредственного восстановления произнесенного слова как текста, а вести распознавание значений транскрипций – наборов фонем. Это связано с тем, что, что человек не использует инвариантное к диктору описание сигнала, обеспечивающее идентификацию всего алфавита фонем, а, скорее всего, использует описание, которое позволяет уверенно различать лишь группы неразличимых фонем. Таким образом, если и существует пространство, в котором априорное распределение признаков для классов не зависит от диктора, то этими классами являются не отдельные фонемы, а группы фонем. Для этого группы фонем - транскрипции предлагается передавать в поисковую систему пространства понятий, где и будет определяться соответствие транскрипции дескриптору того или иного объекта, по принципам, описанным выше(для распознавания речи необходимо понимание смысла произнесенного).
3. предлагается отказаться от концентрации всех вычислений непосредственно в устройстве распознавания речи. То есть, использованием беспроводных средств связи и глобальных сетей перенести приемник звуков как можно ближе к источнику звука (рот), но, поскольку весь процесс распознавания требует значительных вычислительных ресурсов и объемов памяти, то имеет смысл разместить «возле микрофона» только систему распознавания фонем - набор цифровых фильтров (см. выше) и локальное хранилище наиболее часто используемых транскрипций (своего роде, «кэш»). Нераспознанные наборы фонем (транскрипции) нужно по какому то каналу связи передавать в ближайшую поисковую систему , например настроенную на определенный язык, определенную предметную область. Если данная транскрипция есть в этом наборе, то, через отражение в ПП клиенту возвращается слово, текст , соответствующий данной транскрипции. Если эта поисковая система не опознала транскрипцию (например, был использован специализированный термин или слово другого языка), то производится глобальный запрос в другие поисковые системы и ожидается ответ от них. Хотя в будущем, при росте мощности вычислительных ресурсов и появлении все более компактных решений. Возможно и появление компактных устройств.
|