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

МЕНЮ


Искусственный интеллект
Поиск
Регистрация на сайте
Помощь проекту

ТЕМЫ


Новости ИИРазработка ИИВнедрение ИИРабота разума и сознаниеМодель мозгаРобототехника, БПЛАТрансгуманизмОбработка текстаТеория эволюцииДополненная реальностьЖелезоКиберугрозыНаучный мирИТ индустрияРазработка ПОТеория информацииМатематикаЦифровая экономика

Авторизация



RSS


RSS новости


В рамках проекта «Банк знаний», созданного вместе с Корпоративным университетом Сбербанка и посвященного современным технологиям и новым компетенциям, о развитии систем распознавания речи рассказывает Андрей Савченко, доктор технических наук, профессор кафедры информационных систем и технологий НИУ ВШЭ в Нижнем Новгороде.

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

От марковских моделей до нейронных сетей

Традиционные системы распознавания речи были основаны на математическом аппарате скрытых марковских моделей. Российский математик Андрей Марков, в честь которого названы модели, при исследовании задач обработки литературных текстов в начале XX века оценивал вероятность появления каждой буквы в тексте в зависимости от ее контекста. Для упрощения вычислений он предположил, что эти вероятности зависят только от одной предыдущей буквы — марковское свойство. Оказалось, что оценки вероятностей перехода от одной буквы к другой по разным фрагментам одного текста практически идентичны. В дальнейшем выяснилась уникальность параметров марковской модели (цепи Маркова) для каждого автора, что позволило применить их в задачах определения авторства текста.

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

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

Примерно до 2010 года на практике использовалась модель гауссовых смесей для задания распределения наблюдаемого сигнала в зависимости от фонемы. Для этого звуковой сигнал делится на небольшие участки (10–50 мс), для применения традиционной обработки сигналов в частотной области для каждого участка сигнала выполняется быстрое преобразование Фурье. Дальше использовалось логарифмирование получаемого спектра в связи с известным логарифмическим восприятием человеческим ухом масштаба звука. Наконец, с помощью дискретного косинусного преобразования логарифма спектра получались практически независимые признаки — кепстральные коэффициенты, распределение которых и записывалось в виде смеси гауссовских случайных векторов с диагональными ковариационными матрицами.

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

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

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

Проблемы систем распознавания речи

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

Банк знаний Подпишитесь на новости проекта «Банк знаний»

Нажимая на кнопку, вы даете согласие на обработку своих персональных данных.

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

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

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

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

Где нужны технологии распознавания речи

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

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

Будущее распознавания речи

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

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

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


Источник: postnauka.ru

Комментарии: