Распознавание речи

Материал из Национальной библиотеки им. Н. Э. Баумана
Последнее изменение этой страницы: 19:32, 19 мая 2017.

Распознавание речи — процесс преобразования речевого сигнала в цифровую информацию (например, текстовые данные). Обратной задачей является синтез речи [Источник 1].

Речевое общение является естественным и удобным для человека. Задача распознавания речи состоит в том, что бы убрать посредника в общении человека и компьютера. Управление машиной голосом в реальном времени, а также ввод информации посредством человеческой речи намного упростит жизнь современного человека. Научить машину понимать без посредника тот язык, на котором говорят между собой люди – задачи распознавания речи [Источник 2].

Рис.1.

История

Впервые устройство, распознававшее речь, появилось в 1952, и было способно распознавать цифры, произнесённые человеком. В 1962 году на ярмарке компьютерных технологий в Нью-Йорке было представлено устройство IBM Shoebox. Коммерческие программы по распознаванию речи появились в начале девяностых годов. Обычно их используют люди, которые из-за травмы руки не в состоянии набирать большое количество текста. Эти программы (например, Dragon NaturallySpeaking, VoiceNavigator (англ.)) переводят голос пользователя в текст, таким образом, разгружая его руки. Надёжность перевода у таких программ не очень высока, но с годами она постепенно улучшается. Увеличение вычислительных мощностей мобильных устройств позволило и для них создать программы с функцией распознавания речи. Среди таких программ стоит отметить приложение Microsoft Voice Command, которое позволяет работать со многими приложениями при помощи голоса. Например, можно включить воспроизведение музыки в плеере или создать новый документ. Все большую популярность применение распознавания речи находит в различных сферах бизнеса, например, врач в поликлинике может проговаривать диагнозы, которые тут же будут внесены в электронную карточку. Или другой пример. Наверняка каждый хоть раз в жизни мечтал с помощью голоса выключить свет или открыть окно. В последнее время в телефонных интерактивных приложениях все чаще стали использоваться системы автоматического распознавания и синтеза речи. В этом случае общение с голосовым порталом становится более естественным, так как выбор в нём может быть осуществлен не только с помощью тонового набора, но и с помощью голосовых команд. При этом системы распознавания являются независимыми от дикторов, то есть распознают голос любого человека. Следующим шагом технологий распознавания речи можно считать развитие так называемых интерфейсов безмолвного доступа (silent speech interfaces, SSI). Эти системы обработки речи базируются на получении и обработке речевых сигналов на ранней стадии артикулирования. Данный этап развития распознавания речи вызван двумя существенными недостатками современных систем распознавания: чрезмерная чувствительность к шумам, а также необходимость четкой и ясной речи при обращении к системе распознавания. Подход, основанный на SSI, заключается в том, чтобы использовать новые сенсоры, не подверженные влиянию шумов в качестве дополнения к обработанным акустическим сигналам.

Классификация систем распознавания речи

Системы распознавания речи можно классифицировать в зависимости от:

  • назначения (системы диктовки, командные системы);
  • типа речи (слитная или раздельная речь);
  • размера словаря (ограниченный набор слов, словарь большого размера);
  • диктора (дикторозависимые и дикторонезависимые системы);
  • механизма функционирования ( простейшие (корреляционные) детекторы, экспертные системы с различным способом формирования и обработки базы знаний, вероятностно-сетевые модели принятия решения, в том числе нейронные сети);
  • используемого алгоритма (нейронные сети, скрытые Марковские модели, динамическое программирование);
  • типа структурной единицы (фразы, слова, фонемы, дифоны, аллофоны);
  • принципа выделения структурных единиц (распознавание по шаблону, выделение лексических элементов).
Рис.2. Различные классификации систем распознавания речи.

Для систем автоматического распознавания речи, помехозащищённость обеспечивается, прежде всего, использованием двух механизмов:

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

Типовые задачи

В настоящее время распознавание речи сводится к решению трех типов задач:

  1. распознавание отдельно произносимых слов (используется для речевого управления вычислительной машиной);
  2. распознавание слитной речи (имеет целью преобразования в текст естественной речи человека);
  3. идентификация по образцу речи (используется для целей обеспечения безопасности). Она состоит из трех стадий: регистрации, тестирования и допуска [Источник 3].
Рис.3. Схема идентификации по образцу речи.

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

Цели идентификации личности по голосу

Основные цели программных пакетов идентификации личности по голосу заключаются в следующем:

  • использование компьютера для автоматической сегментации речевого сигнала и автоматического измерения параметров;
  • повышение надежности идентификации за счет комплексного анализа речевого сигнала;
  • уменьшение субъективности эксперта и времени проведения экспертизы за счет автоматической обработки информации.

Механизмы распознавания речи

В большинстве существующих механизмов можно выделить четыре основных модуля:

  1. Модуль сбора данных - включает получение входного сигнала и его предварительную обработку, которая может включать автоматическую регулировку усиления, подавление эха, обнаружение присутствия/отсутствия речи и обнаружение интонационного конца фразы. Этот модуль включает также выделение отрезка речи из входящего речевого сигнала.
  2. Экстрактор - выполняет частотный анализ сигнала. Акустическо-фонетичесий поток данных разбивается на короткие кадры, или векторы, продолжительностью около 10 мс. Как правило, для каждого кадра определяется ряд параметров, используя быстрое преобразование Фурье. Кроме того, многие системы используют вместо или вместе с этими характеристиками другие, например, спектральные характеристики, а также первую и вторую производную от спектральных характеристик.
  3. Компаратор - осуществляет акустическое сравнение: каждый кадр, или вектор, сравнивается с имеющимися акустическо-фонетическими образцам, хранящимися в специальной базе данных. При этом сравниваться могут как отдельные фонемы, так и слова, и даже фразы. При небольшом количестве слов, используемых диктором, более высокую надежность и скорость можно ожидать от распознавания целых слов, но при увеличении словаря скорость резко падает, и оптимальным становится распознавание отдельных фонем.
  4. Интерпретатор решает задачу динамического программирования с целью найти наилучшее разбиение полученного от компаратора "алфавитного" потока на слова и фразы. В зависимости от объема используемого словаря и действующих синтаксических правил, применяются различные стратегии поиска и отсева.

В данном блоке из распознанных фонем формируются слова, а из слов фразы. При этом также часто используется балльная (или вероятностная) система сравнения результатов. Например, может использоваться алгоритм лучевого поиска по Витерби для определения наиболее вероятного предложения.

Рис.4. Схема механизма распознавания речи.

Методы и алгоритмы распознавания речи

Классификация методов распознавания речи на основе сравнения с эталоном:

  • Динамическое программирование — временные динамические алгоритмы (Dynamic Time Warping).

Контекстно-зависимая классификация - при её реализации из потока речи выделяются отдельные лексические элементы — фонемы и аллофоны, которые затем объединяются в слоги и морфемы.

  • Методы дискриминантного анализа, основанные на Байесовской дискриминации (Bayesian discrimination);
  • Скрытые Марковские модели (Hidden Markov Model);
  • Нейронные сети (Neural networks).

Существует несколько алгоритмов определения начала и конца речи.

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

Признаки эмоционально окрашенной речи в системах распознавания

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

Спектрально-временные признаки

Спектральные признаки:

  • Среднее значение спектра анализируемого речевого сигнала;
  • Нормализованные средние значения спектра;
  • Относительное время пребывания сигнала в полосах спектра;
  • Нормализованное время пребывания сигнала в полосах спектра;
  • Медианное значение спектра речи в полосах;
  • Относительная мощность спектра речи в полосах;
  • Вариация огибающих спектра речи;
  • Нормализованные величины вариации огибающих спектра речи;
  • Коэффициенты кросскорреляции спектральных огибающих между полосами спектра.

Временные признаки:

  • Длительность сегмента, фонемы;
  • Высота сегмента;
  • Коэффициент формы сегмента.

Спектрально-временные признаки характеризуют речевой сигнал в его физико-математической сущности исходя из наличия компонентов трех видов:

  1. периодических (тональных) участков звуковой волны;
  2. непериодических участков звуковой волны (шумовых, взрывных);
  3. участков, не содержащих речевых пауз.

Кепстральные признаки

Амплитудно-частотные признаки

  • Интенсивность, амплитуда
  • Энергия
  • Частота основного тона (ЧОТ)
  • Формантные частоты
  • Джиттер (jitter) — дрожание частотная модуляция основного тона (шумовой параметр);
  • Шиммер (shimmer) — амплитудная модуляция на основном тоне (шумовой параметр);
  • Радиальная базисная ядерная функция
  • Нелинейный оператор Тигер

Признаки нелинейной динамики

  • Отображение Пуанкаре;
  • Рекуррентный график;
  • Максимальный характеристический показатель Ляпунова — Эмоциональное состояние человека, которому соответствует определенная геометрия аттрактора (фазовый портрет);
  • Фазовый портрет (аттрактор);
  • Размерность Каплана-Йорка — количественная мера эмоционального состояния человека, от «спокойствия» до «гнева» (деформация и последующее смещение спектра речевого сигнала).

Параметры качества речи

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

Ключевые понятия

Можно выделить ряд общих терминов, которые могут использоваться в процессе распознавания речи: 1) разборчивость речи — относительное количество правильно принятых элементов речи (звуков, слогов, слов, фраз), выраженное в процентах от общего числа переданных элементов; 2) нормальный темп речи — произнесение речи со скоростью, при которой средняя длительность контрольной фразы равна 2,4 с.; 3) ускоренный темп речи — произнесение речи со скоростью, при которой средняя длительность контрольной фразы равна 1,5-1,6 с.; 4) смысловая разборчивость — показатель степени правильного воспроизведения информационного содержания речи; узнаваемость голоса говорящего — возможность слушателей отождествлять звучание голоса, с конкретным лицом, известным слушателю ранее; 5) качество речи — параметр, характеризующий субъективную оценку звучания речи в испытуемой системе передачи речи; 6) интегральное качество — показатель, характеризующий общее впечатление слушателя от принимаемой речи.

Область применения

Системы автоматического распознавания речи нашли широкое применение в различных сферах жизни обычного человека. В качестве главного достоинства голосовых систем можно назвать дружественность к пользователю. Речевые команды позволяют пользователю осуществлять ввод без использования специальных устройств. Благодаря развитию технологий, связанных с распознаванием речи, стало возможным осуществлять голосовое управление, голосовой ввод текста и голосовой поиск, а также отдавать голосовые команды. В качестве яркого примера продукта, позволяющего осуществлять распознавание речи, можно назвать CMU Sphinx (или просто Sphinx), обладающего рядом программ и библиотек, которые делают процесс распознавания более точным.

Успешными примерами использования технологии распознавания речи в мобильных приложениях являются: ввод адреса голосом в Яндекс.Навигаторе (речевые технологии SpeechKit), голосовой поиск Google Now.
Рис.5. Эмблема Yandex SpeechKit.

Также технологии распознавания речи широко применяются в различных сферах бизнеса. Например, такие технологии применяются в управлении системой "Умный дом"; ноутбуки и десктопы позволяют осуществлять голосовой ввод в различных приложениях и играх; создаются специальные сервисы для людей с ограниченными возможностями, позволяющие осуществлять голосовой ввод; стало возможным управление бытовой техникой и электронными роботами; голосовое управление в салоне автомобиля — например, навигационной системой (DIVO и VoiceCommander). В телефонии была осуществлена автоматизация обработки входящих и исходящих звонков путём создания голосовых систем самообслуживание, позволяющая получить справочную информацию и консультирование, заказать услуги или товары, изменить параметры действующих услуг, проводить опросы, анкетирования, сбор информации, информирование и любые другие сценарии (IVR-системы (Interactive Voice Response), Freeform).

Пример

Как примера можно рассмотреть алгоритм распознавания речи по короткому словарю на основе MFCC[1] [Источник 4]. В качестве базы обучения будем использовать множество файлов, каждый из которых представляет собой набор MFCC-векторов, полученных из фонограммы с записью того или иного слова. При этом файлы с записью одного и того же слова должны быть объединены в одну группу.

Рис.6. Распределение первых двух компонент MFCC-векторов всей базы обучения.

Алгоритм

Пункт 1. Находим супервектор средних для всей базы обучения при помощи алгоритма K-средних.

Рис.7. Пример работы алгоритма K-средних для K=10.

Пункт 2. Для каждого файла базы находим собственные средние значения по формуле: где — среднее значение, найденное в пункте 1, — среднее значение, полученное в результате применения одной итерации алгоритма K-средних для MFCC-векторов файла с использованием в качестве начального значения , , где R — коэффициент «чувствительности», Nk — число MFCC-векторов, соответствующие среднему значению . Найденные таким образом средние значения будем называть адаптированными средними значениями.

Рис.8. Пример адаптированных средних значений для файла.

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

Рис.9. Пример для N=4.

Пункт 4. Проецируем все адаптированные супервектора средних на новый базис и находим средние значения и СКО (среднее квадратичное отклонение) проекций для каждого класса.

Пункт 5. Для определения принадлежности тестовой фонограммы тому или иному классу (т.е. распознавания), выполняем для неё пункты 2 и 4, далее находим расстояния полученной проекции до средних значений всех классов (можно дополнительно нормировать их на соответствующее СКО). Минимальное расстояние и будет соответствовать классу, к которому принадлежит тестовая фонограмма.

Реализация

Создание собственной системы распознавания слов состоит из следующих этапов:

  1. Запись фонограмм для обучения и тестирования
  2. Построение MFCC-векторов
  3. Обучение и тестирование системы

Результат экспериментов

В качестве эксперимента была создана система, которая умеет распознавать 14 записанных голосом слов. Для обучения системы каждое слово было записано 4-5 раз, а для тестирования — 7 раз. Итого база обучения содержит 63 файла, а база тестирования — 98. Использовались следующие параметры при обучении:

  • Количество средних значений: 10
  • Коэффициент «чувствительности» при адаптации: 20
  • Размерность проекции: 20
  • Использование нормализации на СКО: отсутствует

Результат тестирования на базе обучения показал уровень ошибки распознавания слов (WER) 1,6%, а на базе тестирования - 5,1%.

Ссылки

CMU Sphinx:

  1. Распознавание речи с помощью CMU Sphinx.
  2. Распознавание речи и голосовое управление в Linux.
  3. Сверхбыстрое распознавание речи без серверов на реальном примере.

Freeform:

  1. Freeform распознавание речи в реальном времени и распознавание записей звонков.

Yandex Speechkit:

  1. Распознавание речи от Яндекса. Под капотом у Yandex.SpeechKit.

Источники

  1. Распознавание речи // Википедия. [2017—2017]. Дата обновления: 16.04.2017. URL: http://ru.wikipedia.org/?oldid=84896714 (дата обращения: 19.05.2017)
  2. Распознавание речи // Речевые технологии. URL:http://www.speetech.by/technologies/raspoznovanie#fragment-1 (дата обращения 05.03.2017)
  3. Распознавание речи // tpl-it. URL:http://tpl-it.wikispaces.com/системы+распознавания+речи (дата обращения: 05.03.2017)
  4. Простой алгоритм распознавания речи по короткому словарю на основе MFCC // Хабрахабр. URL:https://habrahabr.ru/post/150251/ (дата обращения: 25.03.2017)