![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
Случай слитной речи получается простым последовательным соединением нескольких СММ. Каждая модель в этой последовательности прямо соответствует предполагаемому базовому символу. Это могут быть либо целые слова при так называемом распознавании связной речи, либо фрагменты слов, такие как фонемы, при распознавании слитной речи. Теперь становится очевидной причина включения входного и выходного непорождающих состояний (начальный и конечный узлы) - эти состояния объединяют модели (рисунок 17.1).
Рисунок 17.1. Пример композитной СММ для фонемного распознавания слов «нет» и «да»
Есть, однако, несколько практических трудностей, которые нужно преодолеть. При слитной речи обучающие данные должны представлять собой слитно произносимые слова и, в общем случае, границы, разделяющие сегменты речи, соответствующие каждой базовой модели под-слова, не известны. На практике, при малом объеме данных, обычно удается пометить границы вручную. После этого все сегменты, соответствующие данной модели можно извлечь, и можно использовать описанный выше способ обучения на изолированных словах. Однако при таком способе можно обработать весьма ограниченный объем данных, в результате полученные модели будут плохо оцененными. Кроме того, даже если бы было большое количество данных, границы, полученные ручной маркировкой, не могут быть оптимальными, как это нужно для СММ. Таким образом, применение в HTK инструментов HInit и HRest для инициализации моделей частей слов (под-слов) рассматривается как процедура начальной загрузки (botstrap). На практике нужно хорошенько дополнительно поработать, чтобы достигнуть эффективного результата на больших базах обучающих данных. Например, инструмент HERest располагает возможностями для отсечения (pruning) при прямом и обратном проходах, а также для параллельной работы с сетью компьютеров.
На основной стадии обучения используется инструмент HERest, реализующий встроенное обучение (embedded training).
При встроенном обучении используется та же процедура Баума-Уэлча, что и для случая изолированных слов, с тем отличием, что вместо того, чтобы обучать каждую модель индивидуально, все модели обучаются параллельно. Этот процесс состоит из следующих шагов:
1. Выделить память и обнулить сумматоры для всех параметров всех СММ.
2. Взять следующий обучающий образец произнесения.
3. Построить составную СММ путем соединения отдельных СММ в последовательность в соответствии с символьной транскрипцией обучающего произнесения.
4. Вычислить прямые и обратные вероятности для составной СММ. Включение промежуточных непорождающих состояний в составную модель требует некоторых изменений в вычислении прямых и обратных вероятностей, однако они незначительны.
5. Использовать прямые и обратные вероятности для вычисления вероятностейсостояния каждого временного фрейма, и произвести обновление содержания сумматоров.
6. Повторять все пункты, начиная с 2, до тех пор, пока все обучающие произнесения не будут обработаны.
7. Использовать сумматоры для вычисления новых оценок параметров для всех СММ.
Эти шаги в дальнейшем можно повторять столько раз, сколько нужно для достижения нужной сходимости. Заметим, что хотя в данной процедуре локализация границ символа в обучающих данных не обязательна (хотя и желательна), символьная транскрипция каждого обучающего произнесения необходима.
Хотя необходимые для осуществления процедуры Баума-Уэлча доработки, обеспечивающие обучение моделей частей слов, относительно невелики, соответствующие доработки алгоритма Витерби более существенны.
Используемая в HTK альтернативная формулировка алгоритма Витерби названа моделью пересылки маркера (Token Passing Model). Коротко говоря, модель пересылки маркера делает явным понятие пути состояний для выравнивания. Представим, что каждое состояние j СММ в момент t владеет единственным передвигаемым маркером, который содержит, помимо другой информации, частичный логарифм вероятности . Этот маркер тогда представляет частичное соответствие между последовательностью наблюдений от
до
и моделью, при условии, что модель находится в состоянии j в момент времени t. Представленный рекуррентным уравнением алгоритм продолжения пути затем заменяется эквивалентным алгоритмом пересылки маркера, выполняемым для каждого фрейма, соответствующего моменту времени t. Ключевые шаги этого алгоритма таковы.
Перешлите копию каждого маркера состояния i всем связанным состояниям j, увеличивая логарифм вероятности копии на .
Проверьте маркеры каждого состояния и удалите все, за исключением маркера с наивысшей вероятностью.
На практике, при работе с непорождающими состояниями, необходимы некоторые модификации, однако они простые, если предположить, что маркеры входных состояний представляют пути, простирающиеся до момента времени , а маркеры выходных состояний представляют пути, простирающиеся до момента времени
.
Обучение и распознавание в случае слитной речи производится благодаря все тем же алгоритмам Баума-Уэлча и Витерби.
Дата публикования: 2015-09-17; Прочитано: 380 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!