- •Классификация систем распознавания речи
- •Наиболее распространенный подход к распознаванию речи
- •Лекция 2
- •Цифровой звук и частота дискретизации
- •Ключевые операции цос
- •Формы преобразования Фурье
- •Б. Амплитудно-фазовая форма
- •В. Комплексная форма
- •А. Прореживание по времени
- •Вейвлет-разложение как способ представления речевого сигнала
- •Лекция 3
- •Методы представления речевого сигнала на основе кепстрального анализа и кодирования с линейным предсказанием
- •Лекция 4
- •Процесс речеобразования и принципы восприятия речи
- •Образование и артикуляционная классификация звуков речи
- •Психоакустические принципы восприятия речи
- •Признаки распознавания
- •Временные и спектральные характеристики, используемые для классификации звуков речи
- •Лекция 5
- •Выделение речи из звукового сигнала (vad-алгоритмы)
- •Сегментация речевого сигнала
- •Лекция 6
- •Применение скрытых марковских моделей для распознавания речи
- •Решение задачи 1, распознавание
- •Решение задачи 2. Алгоритм Витерби
- •Решение задачи 3. Алгоритм Баума-Уэлча.
- •Лекция 7
- •Гауссовы смешанные модели (gmm)
- •Распознавание речи с помощью нейронных сетей
- •Введение в нейронные сети
- •Лекция 8
- •Метод нелинейного растяжения-сжатия оси времени
Решение задачи 2. Алгоритм Витерби
Итак, необходимо выбрать последовательность состояний Q= {q1,q2,…qτ}, которая с наибольшей вероятностью порождает указанную последовательность.
Вводятся переменные:
δt(i) = max P(qt=Si|q1q2…qt-1,o1o2…ot,λ) то есть максимальную вероятность того, что призаданных наблюдениях до момента t последовательность состояний завершится в момент времени t в состоянии Si, а также введем переменную ψt(i) для хранения аргументов, максимизирующих δt(i). Итак, алгоритм Витерби.
1 шаг. Для всех i от 1 до N
δ1(i)=πibi(o1)
ψ1(i)=0
2 шаг. Для всех j от 1 до N и t от 2 до T
δt(j)= |
max |
|δt-1(i)aij|bj(ot) |
|
i=1..N |
|
ψt(j)= |
arg max |
|δt-1(i)aij| |
|
i=1..N |
|
3 шаг.
Получаем наибольшую вероятность наблюдения последовательности o1o2…oT, которая достигается при прохождении некой оптимальной последовательности состояний Q* = {q*1, q*2,…q*T}, для которой к настоящему моменту известно только последнее состояние:
P*= |
max |
|δT(i)| |
|
i=1..N |
|
q*T,= |
arg max |
|δT(i)| |
|
i=1..N |
|
4 шаг.
Восстанавливаем оптимальную последовательность состояний (обратный проход):
Для все t от T-1 до 1 ( шаг =-1)
q*t = ψt+1(q*t+1)
Решение задачи 3. Алгоритм Баума-Уэлча.
Необходимо подобрать параметры скрытой модели Маркова так, чтобы максимизировать вероятность данной последовательности наблюдений.
Вводятся переменные
ξt(i,j) = P(qt=Si,qt+1=Sj|O,λ),
которые показывают вероятность того, что при заданной последовательности наблюдений O система в моменты времени t и t+1 будет находиться соответственно в состояниях Si и Sj. Используя прямую и обратную переменные запишем:
|
αt(i)aijbj(ot+1)βt+1(j) |
|
αt(i)aijbj(ot+1)βt+1(j) |
||||||
ξt(i,j)= |
____________________ |
= |
________________________ |
||||||
|
P(O|λ) |
|
|
Введем переменные вероятности того, что при заданной последовательности наблюдений O система в момент времени t будет находиться в состоянии Si:
|
N |
|
γt(i)= |
∑ |
ξt(i,j) |
|
j=1 |
|
При этом мы можем вычислить ожидаемое число переходов из состояния Si: равно
T-1 |
|
∑ |
γt(i) |
t=1 |
|
а ожидаемое число переходов из состояния Si в состояние Sj:
T-1 |
|
∑ |
ξt(i,j) |
t=1 |
|
Исходя из этого можно получить формулы для переоценки параметров модели Маркова:
π*i=γt(i)
|
|
||||||
a*ij= |
_________________ |
||||||
|
|
|
|
||||||
b*ij(k)= |
_________________ |
||||||
|
|
Выражение
T-1 |
|
∑ |
γt(j) |
t=1,ot=k |
|
в формуле для b*ij (k) означает что суммируются только те γt(j) , для которых значение состояния равно k, то есть Ot = k.
После переоценки параметры модели либо выясняется, что она уже была оптимальной до переоценки либо обязательно улучшаются ее параметры (то есть правдоподобность модели после переоценки выше, чем до переоценки во всех случаях, когда модель можно оптимизировать).
