Выбор оптимального алфавита марковских моделей для распознавания речи (отчет)

Материал из MachineLearning.

Перейти к: навигация, поиск

Введение в проект

Описание проекта

Цель проекта

Цель проекта -- выбор оптимального набора марковских моделей для распознавания речи.

Обоснование проекта

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

Описание данных

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

Критерии качества

Критерием качества служит логарифм правдоподобия контрольной выборки относительно модели.

Требования к проекту

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

Выполнимость проекта

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

Используемые методы

В данной работе для статистического моделирования спектральной динамики гласных и согласных звуков применяется скрытая марковская модель (СММ) из 3-х последовательных состояний. Классификация аллофонов осуществляется с помощью бинарных деревьев. Для построения бинарного дерева решений разработан набор вопросов, зависящих от контекста и адресованных к центральному элементу аллофона.

Постановка задачи

Вход:

Обучающая выборка X, элементы которой x_i = \{ M, C \}, где M последовательность 12 мел-кепстральных векторов соответствует звуковой реализации фонемы, а C = \{c_{left}, c_{center}, c_{right} \} - правый, левый контекст аллофона и центральный элемент.

Список бинарных вопросов Q адресованных к центральному элементу аллофона. Служит множеством элементарных предикатов при построении бинарного дерева.

Выход:

Бинарное дерево скрытых марковских моделей (СММ) аллофонов T.

Функционал качества:

Логарифм правдоподобия выборки \{X\}_1^n относительно модели \lambda есть LL = \sum_{i=1}^n \log P(M_i|\lambda)

Критерии останова:

Приращение \Delta LL меньше порога, или число элементов выборки в вершине меньше порогового.


Базовые предположения или гипотезы, лежащие в основе алгоритма

Мы вводим понятие обобщённого (типичного) аллофона, т.е. В настоящей работе для моделирования спектральной динамики гласных используется скрытая марковская модель СММ, которая позволяет представить звук в виде последовательных состояний, соотносимых счленением звука на сегменты (субаллофоны). Внашем случае гласный разделяется на три отрезка одинаковой длины (начальный и конечный формантные переходы плюс вокалическое ядро). Поэтому СММ имеет три состояния Q = 3 и лево-правую матрицу переходных вероятностей A = \{a_{ij}\}.

Математическое описание алогритмов

Обучение скрытой марковской модели (СММ)

Составляющие СММ:

1. Q — общее количество состояний в модели. В нашей задаче Q = 3 Мы обозначим совокупность состояний модели множеством S = \left\{ S_1, S_2, \ldots S_N \right\}, а текущее состояние в момент времени t как q_t.

2. Матрица вероятностей переходов A = \left\{ a_{ij} \right\}, где

a_{ij} = P \left[ q_{t+1} = S_j | q_t =S_i \right],:: 1 \le i, j \le N,

то есть это вероятность того, что система, находящаяся в состоянии S_i, перейдет в состояние S_j. В контексте нашей задачи используется лево-правая матрица переходов. То есть a_{ii} > 0 и a_{i,i+1} > 0 для 1 \le i \le N-1. В остальных состояниях вероятность перехода a_{ii} = 0.

3. b_i(O) = \sum_{m=1}^M c_{jm} N(O, \mu_{jm}, \Sigma_{jm}),:: 1 \le i, j \le N,

где \vec{O} - моделируемый вектор наблюдений, c_{jm} - весовой коэффициент m-й компоненты в состоянии j. N(O, \mu_{jm}, \Sigma_{jm}) - гауссова плотность вероятности с вектором средних значений \mu_{jm} и ковариационной матрицей \Sigma_{jm}. У нас используется M = 6 компонет смеси.

4. Распределение вероятностей начального состояния \pi = \left\{ \pi_i \right\}, где \pi_i = P[q_1 = S_i],      1 \le i \le N,     то есть вероятность того, что S_i это начальное состояние модели. В нашем случае всегда начинаем с 1-го состояния т.е. \pi_1 = 1

Совокупность значений Q,A,B и \pi - это скрытая марковская модель, которая может сгенерировать наблюдаемую последовательность.

Для решения задачи обучения СММ требуется подобрать параметры модели \lambda = (A,B,\pi) таким образом, чтобы максимизировать P(O | \lambda). В этой работе используется метод Баума-Уэлча, EM-метод переоценки параметров СММ. Формулы повторного оценивания для коэффициентов c_{jm}, \mu_{jm} и \Sigma_{jm}, составляющих плотности имеют вид.

\vec{c}_{jk} = \frac{\sum_{t=1}^T \gamma_t(j,k)}{\sum_{t=1}^T \sum_{k=1}^M  \gamma_t(j,k)}


\vec{\mu}_{jk} = \frac{\sum_{t=1}^T \gamma_t(j,k) O_t}{\sum_{t=1}^T  \gamma_t(j,k)}


\vec{\Sigma}_{jk} = \frac{\sum_{t=1}^T \gamma_t(j,k) (O_t - \mu_{jk})(O_t - \mu_{jk})\prime}{\sum_{t=1}^T \gamma_t(j,k)},

где штрих означает транспонирование вектора, а \gamma_t(j,k) - вероятность того,что (при заданной последовательности наблюдений) в момент времени t модель находиться в состоянии j, причём наблюдаемый в этот момент вектор O_t порождён k-й компонентой смеси плотности, т.е.

\gamma_t(j,k) =  \left( \frac{\alpha_t(j) \beta_t(j)}{\sum_{j=1}^N \alpha_t(j) \beta_t(j)} \right) \left( \frac{c_{jk} N(O, \mu_{jm}, \Sigma_{jm})}{\sum_{m=1}^M c_{jm} N(O, \mu_{jm}, \Sigma_{jm})}  \right),

где \alpha_t(i) = P(O_1 O_2 \ldots O_t, q_t = S_i|\lambda) - прямая переменная, а \beta_t(i) = P(O_{t+1} O_{t+2} \ldots O_t, q_t = S_i|\lambda) - обратная переменная.

Алгоритм построения решающего дерева ID3

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

Процедура LearnID3 выглядит следующим образом

Вход:

U - выборка из последовательностей мел-кепстральных векторов соответсвующих фонеме;

Q - множество вопросов к контесту фонемы, ращепляющих выборку на 2 класса.

Выход:

возвращает корневую вершину дерева

  1. найти предикат с максимальной информативностью: q = \arg\max_{q\in Q} I(q,U)
  2. разбить выборку на две части U = U_0 \cup U_1 по предикату q;
  3. eсли (U_0 = 0 <tex> или <tex>U_1 = 0 <tex>) или <tex>I(q,U) \leq I_0 то
  4.  ::создать новый лист v.
  5. иначе
    создать новую вершину v;
    L_v = LearnID3(U_0); (построить левое поддерево)
    L_r = LearnID3(U_1); (построить правое поддерево)
  6. вернуть (v)

Для построения полного дерева рекурсивная процедура LearnID3 применяется ко всей выборке. В качаестве критерия ветвления используется максимум приращения логарифма правдоподобия \Delta LL = (LL_l + LL_r) - LL_p, где LL_p - логарифм правдоподобия родительской вершины, а LL_l и LL_r - логарифм правдоподобия левой и правой дочерней вершин соответственно. Логарифм правдоподобия выборки \{X\}_1^n относительно СММ \lambda есть LL = \sum_{i=1}^n \log P(M_i|\lambda) считается алгоритмом прямого-обратного хода.

Множество вопросов к контексту фонемы (элементарных предикатов) Q задается шаблоном:

 left-center+right,

где left и right - левый и правый контекст, а center - сама фонема. Например вопрос выделяющий все гласные:

 *-ALL_VOWELS+*.

Предредукция или критерий раннего останова досрочно прекращает ветвление, если максимальное приращение информативности I(q,U) меньше порогового I_0.

Варианты или модификации

Описание системы

  • Ссылка на файл system.docs
  • Ссылка на файлы системы

Отчет о вычислительных экспериментах

Визуальный анализ работы алгоритма

Анализ качества работы алгоритма

Анализ зависимости работы алгоритма от параметров

Отчет о полученных результатах

Список литературы

Данная статья является непроверенным учебным заданием.
Студент: Участник:Дорофеев Данила
Преподаватель: Участник:В.В. Стрижов
Срок: 15 декабря 2009

До указанного срока статья не должна редактироваться другими участниками проекта MachineLearning.ru. По его окончании любой участник вправе исправить данную статью по своему усмотрению и удалить данное предупреждение, выводимое с помощью шаблона {{Задание}}.

См. также методические указания по использованию Ресурса MachineLearning.ru в учебном процессе.


Личные инструменты