Научная статья на тему 'Модифицированная скрытая марковская модель для распознавания речевых сигналов'

Модифицированная скрытая марковская модель для распознавания речевых сигналов Текст научной статьи по специальности «Математика»

CC BY
718
105
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по математике, автор научной работы — Корицкий Дмитрий Викторович, Семенкина Ольга Эрнестовна

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по математике , автор научной работы — Корицкий Дмитрий Викторович, Семенкина Ольга Эрнестовна

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

The modified Hidden Markov Model for speech recognition

The modified Hidden Markov Model (HMM) based on graph representation is suggested. This model allows taking into account not only last state but also a sequence of some last states. The modified Vitrerbi algorithm for this model is designed. The effectiveness estimation on some test problems is fulfilled.

Текст научной работы на тему «Модифицированная скрытая марковская модель для распознавания речевых сигналов»

УДК 004.522, 004.357

Д. В. Корицкий, О. Э. Семенкина

МОДИФИЦИРОВАННАЯ СКРЫТАЯ МАРКОВСКАЯ МОДЕЛЬ ДЛЯ РАСПОЗНАВАНИЯ РЕЧЕВЫХ СИГНАЛОВ

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

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

При распознавании слов и их последовательностей наиболее эффективным и часто используемым подходом является применение скрытых марковских моделей (СММ). Этот метод позволяет для распознаваемой последовательности вычислить вероятность ее соответствия настроенной СММ эталонной последовательности.

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

Для решения этой проблемы объединяют пары, тройки либо последовательности из N состояний модели и используют их как состояния новой СММ. При этом значительно увеличивается количество состояний модели и, соответственно, квадратично растет размерность матрицы перехода состояний. Поэтому авторами была предложена модифицированная СММ, отличающаяся от известных моделей компактным способом хранения информации о вероятностях перехода как между состояниями, так и между последовательностями состояний СММ. Суть модификации заключается в хранении и обработке информации в орграфе. Это позволяет уменьшить необходимый объем памяти и количество выполняемых операций.

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

Ввод и предобработка сигнала. Ввод речевого сигнала осуществляется с помощью микрофона или из файла с частотой дискретизации 8 кГц, разрядность - 16 бит.

Для выделения речевого сигнала из пауз и шума вычисляется уровень энергии сигнала и число нулей интенсивности, их среднее значение, дисперсия и пороговые значения [1].

Далее речевой сигнал делится на T равных частей, перекрывающихся на 2 / 3 (для предотвращения потери информации на границе сигнала), а затем выполняются преобразования внутри каждого сегмента. Для снижения граничных эффектов, возникающих в результате сегментации, каждый сегмент умножается на оконную функцию Хэмминга [2].

Для каждого сегмента вычисляются характеристические признаки речевого сигнала: кепстральные коэффициенты C1, ..., Cnc, дельта-параметры ДС1, ..., ACnc, нули интенсивности Z, мгновенная энергия сигнала E [3].

Для каждого сегмента формируется вектор признаков

y = (Cj,..., Спс, АС,,..., ДСпс, E, Z). (1)

Каждый речевой сигнал представлен последовательностью векторову1, ...,уГ

Затем необходимо разбить пространство векторов признаков на M кластеров. Для этого на основе большого количества речевых сигналов формируется пространство векторов признаков {у1, ...,yny}, которое разбивается на M кластеров с центрами {v1, ., vM}. Кластеризация производится алгоритмом «к-средних» (k-mean) в евклидовом пространстве [2].

Каждому распознаваемому вектору признаков ставится в соответствие ближайший центр кластера:

y ^ vm, m = arg(mindist(y,vt)). (2)

i=\...M

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

Поэтому для сравнения последовательностей векторов используются специальные алгоритмы, позволяющие сравнивать последовательности векторов различной длины и давать оценку степени принадлежности распознаваемого вектора к одному из эталонов, такие как алгоритм динамического искажения времени (ДИВ) (Dynamic Time Wrapping, DTW) и скрытые марковские модели (Hidden Markov Models, HMM) [3].

Скрытые марковские модели. Пусть задано V = {Vj,..., vM } - множество наблюдаемых объектов (кла-

стеризованные векторы параметров); £ = } -

множество состояний модели (фонемы); Q = {д1,..., дт }, д1 е Я - состояние модели (фонемы) в момент времени I; О = {о1,..., от } о е V - наблюдаемая последовательность (векторы параметров); п = {п,}, п1 = Р(д, = Я,) - вероятность начального состояния г; А = {ауу }, ау = Р(д, = Яу \д1_1 = £) - вероятность перехода £ ^ Яу; В = {Ьу (к)}, Ьу (к) = Р(о, = Ук \д, = £)

- вероятность принадлежности Ук к Я,.

Тогда кортеж X = (А, В, п) называется скрытой марковской моделью.

Скрытые марковские модели позволяют для заданной модели X = (А, В, п) и последовательности О = {о1,..., от} подсчитать вероятность Р(О | X) порождения последовательности наблюдений О = {о1,..., от } моделью X и наиболее вероятную последовательность Q = {ц1,..., дт} [4].

Пусть даны последовательность наблюдений

О = {о1,..., от} и модель X = (А, В, п). Алгоритм Витер-би используется для того, чтобы выбрать последовательность состояний Q = {д1,..., дт }, которая с наибольшей вероятностью для данной модели Р(О | X) генерирует последовательность наблюдений О = {о1,..., от } [4].

Алгоритм Витерби состоит их нескольких этапов:

1. Инициализация:

61(0 = пр, (оД уДу) = 0, 1 <1< N. (3)

2. Цикл по г = 1, ..., М:

6,(,) = тах(5,_1 (,)а ) (о,), 1 < у < N,, = 2,..., T, (4)

1</^ 4 ■* ' ■*

У, (У) = а^ тах (5,_1 (0ау).

1<,< N

3. Конец цикла:

Р(О | X) = тах(5т (, )), (5)

1<^ т

где Р(О | X) - наибольшая вероятность наблюдения последовательности О = {о1,..., от }, которая достигается при прохождении некоторой оптимальной последовательности состояний Q = {д1,..., дт }, для которой к настоящему времени известно только последнее состояние:

дт = а^тах (5т (,)). (6)

1<,< N

4. Восстановление оптимальной последовательности состояний (обратный проход):

д, = у, (дм), , = т _1, Г _2,..., 1. (7)

Лево-правой СММ называется СММ, в которой по-

рядок следования объектов последовательности идет слева направо (а ^ Ь ^ с ^ d, стрелка указывает порядок следования).

Право-левой СММ называется СММ, в которой последовательность следования объектов обратная - справа налево (а Ь ^ с ^ d ).

Вероятность следования за объектом а объекта Ь обозначим как раЬ:

-РаЬ = Ра ^ Ь = Рща) - для лево-правой СММ;

-РаЬ = Ра ^ Ь = Р{а\Ь) - для право-левой СММ.

Применение скрытых марковских моделей для распознавания слов. Для словаря из п слов £, ., Б, каждое из которых может быть представлено одним или несколькими эталонами слов О, ., От, обучается своя СММ X1, ., Xn.

Для распознаваемой последовательности векторов О и моделей X1, ..., Xn вычисляется максимальная вероят-

ность Р(О | X.),I = 1, ..., п [4]:

I = arg(max(P(O | X,))), 1 = 1,..., п. (8)

Результатом распознавания является слово, соответствующее данной СММ X., г = 1, ..., п, с максимальной вероятностью Р(О I X.), г = 1, ..., п.

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

Для решения этой проблемы объединяют пары Б' = Б1Б2, тройки Б' = £££ либо последовательности из N состояний модели Б' = Б^Б1...^ и используют их как состояния новой СММ. При этом сильно увеличивается количество состояний модели и, соответственно, квадратично растет размерность матрицы переходов состояний А = {а..}, а. = Р^( = = Б), которая хранит все воз-

можные комбинации переходов [4].

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

Обычно СММ изображают в виде графа, в котором вершины - это состояния модели, а нагруженные дуги -это вероятности перехода между состояниями (рис. 1).

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

раа рЪЪ Рсс Pdd

лево-правой СММ в виде орграфа

Вершины и, к = 1, ..., К орграфа характеризуются следующими параметрами:

- вершины-состояния Бі: х(к) = р(і) - вероятностью наблюдения состояния Б в момент времени і; и(к) - текущим значением вершины к в момент времени і;

- вершины - вероятности перехода из состояния i в состояние j: x(k) = a.. - вероятностью перехода из состояния i в состояние j, a. = P(qt = S\qt_x = S.); u(k) - текущим значением вершины k в момент времени t.

Дуги Wсвязывают вершины U. и U. Вес дуги W.. w. = 1, если вершины U. и U связаны, и w. = 0 в противном случае.

Благодаря такой схеме реализации возможно вычисление вероятности P(O | X) порождения последовательности наблюдений O = {o1, ..., oT} для модели X = (A, B, п) и последовательности состояний Q = {q1, ., qT}, в точности равной вероятности, вычисленной классической СММ.

Так как в граф добавилось (Г - 1) вершины - вероятности перехода, то для порождения последовательности наблюдений O = {o1, ., oT} длиной Г необходимо время t2 = 1, ..., 2Г - 1.

Алгоритм вычисления вероятности P(O I X) состоит в пересчете текущих значений ut(k) вершин Uk в течение времени t2 = 1, ..., 2Г - 1.

Значение вершины u(t) в момент времени t2 = 1, ..., 2Г - 1 вычисляется аналогично алгоритму Витерби для полунепрерывных СММ [4]:

“i(i) = xi(j)uJ(Oj), 1 < i < K,

ut(i) = max( -i(i)wij )j(ot ~)xt2( Д 1 < j < K, t2 = 2..., (2T -1), (9)

1<i <K 4 2 ' 2

P = max (u2T-1(i)).

1<i <K

Значения x (k) у вершин - вероятностей перехода остаются неизменными: x(k) = aа у вершин-состояний значения x (k) изменяются в моменты времени t' = 1, 3,

5, ..., 2 Г - 1:

X2t,(£) = pt(i), t = 1,..., T. (10)

Максимальное из текущих значений вершин-состояний max(u (k)), k = 1, ..., K, в момент времени 2Г - 1 равно вероятности P(O | X) порождения последовательности наблюдений O = {o1, ., oT} для модели X = (A, B, п) и последовательности состояний Q = {q1, ., qT}, и является выходом модели:

P(O | X) = max (u2T-1(i)). (11)

1<i< K

Модификация скрытой марковской модели. Назовем последовательность из N объектов последовательностью длины N, а СММ, учитывающую информацию о последовательностях длины N - СММ уровня N. СММ-граф, описанный выше, будет являться СММ уровня 2.

Реализация СММ в виде орграфа позволила учитывать вероятности перехода не только между двумя состояниями вида a ^ b, но и между последовательностями состояний произвольной длины N вида abc ^ d.

СММ-граф уровня 3 реализуется в виде надстройки над орграфом СММ уровня 2. Например, пусть дана последовательность abc. СММ-граф будет состоять из вершин {Ua, и1, Uc, Uab, Ubc, Uabc} и дуг, соединяющих их. Вершина Uab связана с Ua и Ub, а вершина Ubc - с Ub и Uc.

Вершина Uabc с вероятностью pabc = pab ^ c = p(c|ab) имеет входящую дугу от вершины Uab и исходящую дугу на вершину Ubc (для лево-правой СММ).

Для право-левой СММ вершина Uabc с вероятностью pabc = pa ^ Ьс = Р(а\ьс, имеет входящую дугу от вершины U и исходящую дугу на вершину Uab.

Вершины уровня N + 1 с информацией о последовательностях длины N + 1 надстраиваются над орграфом СММ уровня N аналогичным образом (рис. 3).

Рис. 3. Схематическое изображение реализации лево-правого СММ-графа уровня 4 для последовательности аЪс<! длиной 4

Значение вершин u(t) 1-го и 2-го уровней вычисляются аналогично СММ 2-го уровня по формулам (9).

Значение вершин u(t) уровня 3, ., N в момент времени t2 = 1, ., 2 Г - 1 вычисляется следующим образом:

\1, есМи, -1(гХ>0)

Г‘2 (i) ПО

10, иначе.

low (T12.)

где rt1ow - значение Рх^дяю ей дуги с нижнег^ ур^Рня;

rhight (i) = -1 (i)Wj - значение Рх^дяшей дуги с Рерхнег^ ур^Рня;

ut(i) = max(rth‘ght(i))rt2oW(i)bj(ot2)Pt2(Л 1 < j <K, t2 =2,..., 2T-.

1<i<K 4 2 ' 1 j i

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Алгоритм надежного старта. В классических полунепрерывных СММ, где вероятности наблюдаемых символов задаются непрерывной функцией распределения, вероятность P(O|X) зависит от начальных шагов алгоритма Витерби (прямого либо обратного хода). Если сигнал был плохо распознан, были допущены ошибки сегментации либо сигнал был некачественно записан, то это существенно повлияет на качество распознавания [2].

Поэтому авторами был предложен модифицированный алгоритм Витерби, названный алгоритмом надежного старта, отличающийся от исходного алгоритма тем, что он начинает работу не с начала распознаваемой последовательности, а с элемента с максимальной дисперсией вероятности D(p(i)) принадлежности к классу S:

maxл = arg(max(D(p.(i)))), i = 1,...,M. (13)

D t=1,...,T

Элемент OmaxD последовательности O1, ., OT с максимальной дисперсией вероятности D(p(i)), i = 1, ..., M, t = 1, ..., Г назван наилучше распознанным элементом последовательности (рис. 4). Предполагается, что элемент хорошо распознан, если вероятность принадлежности к одному из классов существенно отличается от остальных, и плохо распознан, если эти вероятности принадлежности равны и нельзя с уверенностью сказать, к какому из классов принадлежит элемент.

После определения элемента с максимальной дисперсией вероятности D(pt(i)) распознаваемая последовательность делится на две подпоследовательности: от начала

до OmaxD элемента и от OmaxD элемента до конца последовательности:

0‘ = {^^ °maxo }, (14)

02 = {OmaxD , ..., OT },

p\ СО = {P1CO, ..., PmaxD COb j = 1, ..., M, t = 1 ..., maxD , (15)

P^O") = {PmaxD СЛ ..., PT (J)b j = 1 ..., M, t = maxD, T■

Для первой последовательности O1 с помощью ^го-ритма обратного хода [4] вычисляется вероятность P1(O1 | X).

Рис. 4. Схематическое изображение порядка вычислений, начиная с O _ элемента

maxD

Для второй последовательности O2 вероятность P2(O2 | X) вычисляется также с помощью алгоритма прямого хода [4].

Общая вероятность последовательности P(O \ X) вычисляется как

P(01 X) = P1(01\ X) • P2(02| X). (16)

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

Результаты. Предложенные в данной статье СММ были реализованы, протестированы и сравнены с широко используемыми классическими СММ (см. таблицу). В качестве наблюдаемых объектов классической СММ использовались триграммы (последовательность из трех фонем). Тестирование проводилось на основе речевого корпуса из 40 слов - числа 0, 1, ..., 20, 30, ..., 100, 200, ...,

1 000. Обучающая выборка - 40 слов. Тестовая выборка -400 слов.

Модифицированная скрытая марковская модель-граф позволила снизить ошибку распознавания слов в тестовых наборах данных с 15 до 13 % и на 12 % сократить

время распознавания по сравнению с классической СММ. Использование алгоритма надежного старта уменьшило ошибку распознавания с 15 до 9 %. Совместное применение СММ-графа и алгоритма надежного старта позволило уменьшить в 2 раза (с 15 до 7 %) ошибку распознавания слов в тестовом наборе данных и на 12 % сократило время распознавания по сравнению с классической скрытой марковской моделью.

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

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

Разработанные алгоритмы позволили в 2 раза (с 15 до 7 %) уменьшить ошибку распознавания слов в тестовых наборах данных и на 12 % сократили время распознавания.

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

Библиографический список

1. Рабинер, Л. Р Цифровая обработка речевых сигналов / Л. Р. Рабинер, Р. В. Шафер. М. : Радио и связь, 1981.

2. Винцюк, Т. К. Анализ, распознавание и интерпретация речевых сигналов / Т. К. Винцюк. Киев : Наук. думка, 1987.

3. Rabiner, L. R. Isolated and connected word recognition - theory and selected applications / L. R. Rabiner, S. E. Levinson // Proc. of the IEEE. Vol. 29. 1981. № 5. P. 621-659.

4. Rabiner, L. R. A Tutorial on Hidden Markov Models and Selected Applications in Speech Recognition / L. R. Rabiner // Proc. of the IEEE. Vol. 77. 1989. № 2. P. 257-286.

Результаты тестирования

Тестируемая CMM Ошибка расп^знаРания, % Время расп^знаРания ^дн^г^ сЯ^Ра, с

Классическая CMM 15 4,8

CMM-грат 7-г^ ур^Рня 13 4,2

CMM надежн^г^ старта 9 4,8

CMM-грат 7-г^ ур^Рня, аЯг^ритм надежн^г^ старта 7 4,2

D. V. Koritsky, O. E. Semenkina

THE MODIFIED HIDDEN MARKOV MODEL FOR SPEECH RECOGNITION

The modified Hidden Markov Model (HMM) based on graph representation is suggested. This model allows taking into account not only last state but also a sequence of some last states. The modified Vitrerbi algorithm for this model is designed. The effectiveness estimation on some test problems is fulfilled.

i Надоели баннеры? Вы всегда можете отключить рекламу.