Выбор оптимального алфавита марковских моделей для распознавания речи (отчет)
Материал из MachineLearning.
Введение в проект
Описание проекта
Цель проекта
Построение дерева скрытых марковских моделей (СММ) аллофонов.
Обоснование проекта
Полученные данные могут быть использованы в качестве словаря аллофонов в масштабных дикторонезависимых системах распознавания слитной русской речи.
Описание данных
В качестве речевого материала используется обучающая выборка базы данных TeCoRus, предназначенная для приложений, использующих телефонный канал связи. Обучающая выборка представляет собой шестичасовую запись чтения 6 дикторами и состоит из 510 отдельных предложений, отсегментированных и размеченных вручную. Звуковые данные перведены в мел-кепстральное представление, т.е. последовательность 12 компонентных мел-кепстральных векторов с шириной окна квантования 512 точек.
Критерии качества
Критерием качества служит логарифм правдоподобия контрольной выборки относительно модели.
Требования к проекту
Логарифм правдоподобия для нашего дерева должн быть больше логарифма правдоподобия для базового. В качестве базового выбран набор марковских моделей соответсвующих фонемам русского языка.
Выполнимость проекта
Сложность распознавания ухудшается высокой вариативностю произношения одних и тех же звуков, а так же различными артикулярными характеристиками речевого аппарата у разных дикторов. Так же в данных присутсвует фоновый шум.
Используемые методы
В данной работе для статистического моделирования спектральной динамики гласных и согласных звуков применяется скрытая марковская модель (СММ) из 3-х последовательных состояний. Классификация аллофонов осуществляется с помощью бинарных деревьев. Построение дерева осуществляется алгоритмом ID3.
Постановка задачи
Вход:
- Обучающая выборка , элементы которой , где последовательность 12 мел-кепстральных векторов соответствует звуковой реализации фонемы, а - правый, левый контекст аллофона и центральный элемент.
- Список бинарных вопросов адресованных к центральному элементу аллофона. Служит множеством элементарных предикатов при построении бинарного дерева.
Выход:
- Бинарное дерево скрытых марковских моделей аллофонов .
Функционал качества:
- Логарифм правдоподобия выборки относительно модели есть
Критерии останова:
- Приращение меньше порога, или число элементов выборки в вершине меньше порогового.
Базовые предположения или гипотезы, лежащие в основе алгоритма
В настоящей работе для моделирования спектральной динамики гласных и согласных используется СММ, которая позволяет представить звук в виде последовательных состояний, соотносимых счленением звука на сегменты (субаллофоны). Внашем случае фонема разделяется на три отрезка (начальный и конечный формантные переходы плюс вокалическое ядро). Поэтому СММ имеет три состояния и лево-правую матрицу переходных вероятностей .
Математическое описание алогритмов
Обучение скрытой марковской модели (СММ)
Составляющие СММ:
1. — общее количество состояний в модели. В нашей задаче . Мы обозначим совокупность состояний модели множеством , а текущее состояние в момент времени как .
2. Матрица вероятностей переходов , где
то есть это вероятность того, что система, находящаяся в состоянии , перейдет в состояние . В контексте нашей задачи используется лево-правая матрица переходов. То есть и для . В остальных состояниях вероятность перехода .
3. ,
где - моделируемый вектор наблюдений, - весовой коэффициент -й компоненты в состоянии .
- гауссова плотность вероятности с вектором средних значений и ковариационной матрицей .
4. Распределение вероятностей начального состояния , где то есть вероятность того, что это начальное состояние модели. В нашем случае всегда начинаем с 1-го состояния т.е.
Совокупность значений и - это скрытая марковская модель, которая может сгенерировать наблюдаемую последовательность.
Для решения задачи обучения СММ требуется подобрать параметры модели таким образом, чтобы максимизировать . В этой работе используется метод Баума-Уэлча, EM-метод переоценки параметров СММ. Формулы повторного оценивания для коэффициентов , и , составляющих плотности имеют вид.
- ,
где штрих означает транспонирование вектора, а - вероятность того,что (при заданной последовательности наблюдений) в момент времени модель находиться в состоянии , причём наблюдаемый в этот момент вектор порождён -й компонентой смеси плотности, т.е.
- ,
где - прямая переменная, а - обратная переменная.
Алгоритм построения решающего дерева ID3
В качетсве основного алгоритма использовался рекурсивный алгоритм синтеза бинарного решающего дерева ID3. Идея заключается в последовательном дроблении выборки на две части до тех пор, пока дальнейшее расщепление не перестанет давать достаточное приращение информативности.
Процедура LearnID3 выглядит следующим образом
Вход:
- - выборка из последовательностей мел-кепстральных векторов соответсвующих фонеме;
- - множество вопросов к контесту фонемы, расщепляющих выборку на 2 класса.
Выход:
- возвращает корневую вершину дерева
- найти предикат с максимальной информативностью:
- разбить выборку на две части по предикату ;
- eсли ( = ∅ или = ∅ ) или ≤ то
- создать новый лист .
- иначе
- создать новую вершину ;
- ; (построить левое поддерево)
- ; (построить правое поддерево)
- вернуть
Для построения полного дерева рекурсивная процедура LearnID3 применяется ко всей выборке.
В качаестве критерия ветвления используется максимум приращения логарифма правдоподобия при ращеплении , где - логарифм правдоподобия родительской вершины, а и - логарифм правдоподобия левой и правой дочерней вершин соответственно. Логарифм правдоподобия выборки относительно СММ есть считается алгоритмом прямого-обратного хода. Т.е для каждого вопроса выборка из родительского узла разбивается на 2 части, на каждой части обучается СММ. Считается приращение и выбирется вопрос дающий максимальное приращение информативности.
Множество вопросов к контексту фонемы (элементарных предикатов) задается шаблоном:
left-center+right,
где left и right - названия классов левого и правого контекста, а center - имя класса центрального элемента, * - любая фонема. Например вопрос выделяющий все гласные:
*-ALL_VOWELS+*.
Предредукция или критерий раннего останова досрочно прекращает ветвление, если максимальное приращение информативности меньше порогового .
Описание системы
Описание системы находится в файле Systemdocs.doc Файлы системы можно скачать здесь: BuildTreeAllophone
Отчет о вычислительных экспериментах
Выбор оптимальных значений параметров алгоритма
Выбор оптимального количества компонент смеси. Вычисления проводились дважды, видно что есть небольшой разброс. Оптимальный параметр M = 6.
Выбор минимального размера представительной выборки для гласных (фонемы А) и согласных (Т) минимальный размер равен примерно 200 фонем.
Отчет о полученных результатах
Фрагмент дерева (первые 3 уровня), правая ветвь ответ на вопрос к контексту фонемы ДА, левая - НЕТ Формат представления вершин следующий:
- для узлов
название_вопроса [NNNNx -xx.x]
где NNNNx - число элементов в вершине, -xx.x - нормированный логарифм правдоподобия
- для терминальных вершин
{список превалирующих фонем} [NNNNx -xx.x]
ALL_HARD_CONS_FRONT [1696x, -10.6] ALL_NASAL [7345x, -13.4] | ALL_LATERALS | [5649x, -13.5] ALL_HARD_CONS_VOICED [26379x, -14.5] | | ALL_SOFT_CONS_VOICELESS | | [6476x, -13.7] | ALL_SOFT_CONS | [19034x, -14.0] | ALL_HARD_CONS | [12558x, -13.4] ALL_CONS [39983x, -15.0] | { W I E A O } | [820x, -12.3] | L_ALL_SOFT_NASAL | [5308x, -12.8] | | L_ALL_SOFT_CONS_VOICELESS | | [4488x, -12.5] L_ALL_SOFT_CONS [13604x, -14.1] | { A U JA Y O } | [635x, -12.2] R_PHRASE_BOUNDARY [8296x, -14.0] L_ALL_HARD_BILAB [7661x, -13.7]
Вопрос представляет собой следующее (* - любая фонема) например:
L_ALL_SOFT_CONS = ALL_SOFT_CONS-*+*
где ALL_SOFT_CONS класс фонем
ALL_SOFT_CONS = {B' P' D' T' G' K' CH' JH' V' F' Z' S' X' XV' ZH' SH' M' N' L' R' J'}
Список литературы
- К. В. Воронцов, Лекции по логическим алгоритмам классификации
- Л. Рабинер, Скрытые марковские модели, ТИИЭР №2, февраль 1989
- Рабинер, Шафер, Цифровая обработка речевых сигналов, М., Радио и связь, 1980
- X. Huang, A. Acero, H. Hon, Spoken Language Processing, A Guide to Theory, Algorithm and System Development, Prentice-Hall Inc, 2001
Данная статья является непроверенным учебным заданием.
До указанного срока статья не должна редактироваться другими участниками проекта MachineLearning.ru. По его окончании любой участник вправе исправить данную статью по своему усмотрению и удалить данное предупреждение, выводимое с помощью шаблона {{Задание}}. См. также методические указания по использованию Ресурса MachineLearning.ru в учебном процессе. |