Поиск:

Ответ в темуСоздание новой темы Создание опроса
> СММ, инициализация параметров марк. модели 
:(
    Опции темы
Voprosnikov
Дата 23.6.2004, 16:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 19.3.2004

Репутация: нет
Всего: нет



Вопрос про скрытые модели маркова в распознавании речи.

Подскажите, плиз, каким образом осуществляется:
1) выбор количества состояний каждой модели
2) задание количества компонент Гауссовской смеси в случае непрерывных СММ
3) задание начальных значений pi, A, B (т.е. параметров СММ)

Если известна ссылка на ресурс, где все это в понятной форме разъяснено - благодарности не будет предела smile.gif

Заранее спасибо.
PM MAIL   Вверх
maxim1000
Дата 23.6.2004, 16:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 3334
Регистрация: 11.1.2003
Где: Киев

Репутация: 33
Всего: 110



Цитата
1) выбор количества состояний каждой модели

в одной из встречавшихся мне реализаций делали так:
1. выбирают достаточно большое количество состояний
2. распознают исходное слово
3. уменьшают количество состояний
4. повторяют предыдущие пункты, пока ошибка распознавания не превысит порог


--------------------
qqq
PM WWW   Вверх
podval
Дата 23.6.2004, 19:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Где я? Кто я?
****


Профиль
Группа: Экс. модератор
Сообщений: 3094
Регистрация: 25.3.2002
Где: СПб

Репутация: 18
Всего: 62



Цитата
1) выбор количества состояний каждой модели

Зависит от того, на чём обучаем СММ. Если на фонемах, то чаще всего берут 3 состояния + 2 фиктивных (как бы начало и конец фонемы). Если на аллофонах - какая-то своя методика.

На 2-й и 3-й вопрос однозначного ответа нет. Очень много "если - то".

Хорошо об этом написано в ТИИЭР в статье Рабинера "Применение СММ в распознавании речи".
Вообще на эту тему русской литературы почти нет. То, что указал выше, является переводом.

Туториал от гуру: http://www.ai.mit.edu/~murphyk/Software/HMM/rabiner.pdf

Еще чтения:
http://www.ee.washington.edu/techsite/pape...R-2002-0003.pdf
http://www.icsi.berkeley.edu/~jagota/NCS/vol2.html
http://www.datalab.uci.edu/papers/hmmpin.pdf


У Рабинера есть еще хорошая книжка "Fundamentals of speech recognition".

Вот это в качестве "галопа по европам": http://dsp-book.narod.ru/rec-notes.pdf.

Сразу обнадежу: "с нуля" поднять эту тему непросто smile.gif Но возможно, если задаться такой целью. Вот в помощь библиография: http://www.tsi.enst.fr/~cappe/docs/hmmbib.html


Полезная страничка: http://encyclopedia.thefreedictionary.com/...0Markov%20model. На ней линки не забудь.
PM WWW ICQ   Вверх
Voprosnikov
Дата 23.6.2004, 21:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 19.3.2004

Репутация: нет
Всего: нет



Цитата(podval @ 23.6.2004, 19:52)

У Рабинера есть еще хорошая книжка "Fundamentals of speech recognition".
...
Сразу обнадежу: "с нуля" поднять эту тему непросто smile.gif Но возможно, если задаться такой целью.

Спасибо за ответ и за "обнадеживание" =)
Целью я задалась, так что...

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

Вот по-поводу Рабинера... В главе 4, пункт Е он пишет о возможных (2х) способах выбора количества состояний модели: первый вариант - кол-во фонем, второй - кол-во observations, те каждые 15мс моделирует одно состояние. Так вот, во втором случае получается, что наша СММ будет иметь достаточно много состояний.

1. Меняется ли это количество в процессе тренинга или остается?

2. Что из себя представляет тренинг Витерби? (на пальцах если можно =)

3. В распознавании алгоритм Витерби может быть использован для подсчета max вероятности наблюдений, пропущенных через модель. А для чего нам может пригодится последовательность состояний, максимизирующих эту вероятность? Ведь, как я понимаю, при распознавании речи используются чаще всего лево-правые СММ 1го порядка и последовательность там может быть лишь различной комбинацией "состояние(i) - состояние(i+1)" и "состояние(i) - состояние(i)"...

4) этот вопрос был задан на другом форуме, но ответа не последовало....
Может, здесь кто подскажет...

например, нас есть СММ для слова "лом", мы произносим слово "лом" и просто "л" - какая вероятность будет больше: Р("лом"|СММ) или Р("л"|СММ)? Если считать по forward алгоритму, то Р("л"|СММ) будет больше. Как вообще длина слова может быть учтена в СММ?

И опять длина СММ - в реальных системах она одна для всех СММ или все-таки различна?

Очень надеюсь на ответ...
PM MAIL   Вверх
podval
Дата 23.6.2004, 22:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Где я? Кто я?
****


Профиль
Группа: Экс. модератор
Сообщений: 3094
Регистрация: 25.3.2002
Где: СПб

Репутация: 18
Всего: 62



Цитата
1. Меняется ли это количество в процессе тренинга или остается?

Остается: одно наблюдение = один фрейм сигнала = одно состояние.

Цитата
2. Что из себя представляет тренинг Витерби? (на пальцах если можно =)

Это не тренинг, а декодирование.

Цитата
А для чего нам может пригодится последовательность состояний, максимизирующих эту вероятность?

Чтобы определить, к какой из фраз (слов) наиболее вероятно относится принятая реализация.

Цитата
Как вообще длина слова может быть учтена в СММ?

Принято считать не P(x), а -log P(x). Длина слова учитывается как раз количеством состояний в полученной СММ.

Цитата
И опять длина СММ - в реальных системах она одна для всех СММ или все-таки различна?

Смотря длину ЧЕГО ты спрашиваешь. Если рассматривать длину элементарной единицы речи (фонема, например), то ее длина, измеренная в количестве состояний СММ, одна и та же.
Длина слов, фраз - разная, т.к длительность их разная, т.е. разное количество фонем и, соответственно, разное количество состояний СММ.
PM WWW ICQ   Вверх
Voprosnikov
Дата 24.6.2004, 00:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 19.3.2004

Репутация: нет
Всего: нет



Цитата(podval @ 23.6.2004, 22:50)
Длина слова учитывается как раз количеством состояний в полученной СММ.

Вот в этом-то и вопрос... Предположим, что мы рассматриваем СММ для целых слов, не для фонем. Вот спикер что-то сказал (иными словами, получили мы тренировочный набор векторов свойств), теперь мы хотим создать СММ для этого слова. Как выбрать кол-во состояний модели: 2 способа упомянутые выше (из Рабинера) - и все, больше ничего не придумали? Т.е. я беру и на каждый вектор создаю состояние и в итоге для выходной ф-ции должно получиться, что для этого отдельного символа (то, что получили после VQ, т.е.) вероятность выхода большая, а для остальных символов - маленькая? Вопрос звучит несколько сумбурно, но тем не менее... это все как-то unclear пока что... Да, и потом получается подряд много одинаковых состояний, т.к. рассматриваем 15мс интервал... а что тогда делать с "петлями", если на каждый символ - свое состояние?

Да, а с "лом" и "л" как? Какой будет результат?

adv/idontnow.gif
PM MAIL   Вверх
podval
Дата 24.6.2004, 08:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Где я? Кто я?
****


Профиль
Группа: Экс. модератор
Сообщений: 3094
Регистрация: 25.3.2002
Где: СПб

Репутация: 18
Всего: 62



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


СММ используются по-разному в разных задачах. Если мы распознаем ключевые слова (keywords spotting) - это одно, если занимаемся распознаванием слитной речи (continuous speech) - это совершенно другое. СММ в этих двух случаях решают разные задачи, обучаются и используются по-разному.

Цитата
Т.е. я беру и на каждый вектор создаю состояние
Еще раз нет!
Вернись, пожалуйста к основам. Перечитай туториал.

Цитата
Да, а с "лом" и "л" как? Какой будет результат?

Цитата
Если считать по forward алгоритму, то Р("л"|СММ) будет больше

Ну и что с того? Если принятая реализация имеет длину N состояний, то декодировать будем, ориентируясь именно на N, а ветви, длина которых меньше, просто режутся. Другими словами, если мы нашли, что принятая реализация содержит 3 фонемы, то слова из 1 фонемы нас уже не волнуют, какая бы вероятность для них ни была.
PM WWW ICQ   Вверх
podval
Дата 24.6.2004, 09:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Где я? Кто я?
****


Профиль
Группа: Экс. модератор
Сообщений: 3094
Регистрация: 25.3.2002
Где: СПб

Репутация: 18
Всего: 62



Рекомендую разыскать вот такую книгу:
Frederick Jelinek. "Statistical Methods for Speech Recognition". Massachusetts Institute of Technology, 2nd printing, 1999.

Очень толково написано все, что касается применения СММ.
PM WWW ICQ   Вверх
Voprosnikov
Дата 24.6.2004, 09:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 19.3.2004

Репутация: нет
Всего: нет



Цитата(podval @ 24.6.2004, 09:12)
Рекомендую разыскать вот такую книгу:
Frederick Jelinek. "Statistical Methods for Speech Recognition". Massachusetts Institute of Technology, 2nd printing, 1999.

Очень толково написано все, что касается применения СММ.

ок, спасибо за ответы! постараюсь найти книжку... а есть ли ее перевод?
PM MAIL   Вверх
podval
Дата 24.6.2004, 20:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Где я? Кто я?
****


Профиль
Группа: Экс. модератор
Сообщений: 3094
Регистрация: 25.3.2002
Где: СПб

Репутация: 18
Всего: 62



Насчет перевода очень сомневаюсь. В России людей, плотно занимающихся методами СММ, маловато.
PM WWW ICQ   Вверх
Voprosnikov
Дата 25.6.2004, 16:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 19.3.2004

Репутация: нет
Всего: нет



Цитата(podval @ 24.6.2004, 20:10)
Насчет перевода очень сомневаюсь. В России людей, плотно занимающихся методами СММ, маловато.

Ок. Я уже на английском нашла. Там математики...эх...

Кстати, в Вы не знаете ресурсы, где можно скачать работающие демки систем распознавания речи+краткое описание общих принципов их построения? Что бы немного прикоснуться к практике...
PM MAIL   Вверх
podval
Дата 25.6.2004, 18:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Где я? Кто я?
****


Профиль
Группа: Экс. модератор
Сообщений: 3094
Регистрация: 25.3.2002
Где: СПб

Репутация: 18
Всего: 62



http://www.torch.ch/ - здесь очень удачная библиотека функций на С++.

http://www.ee.ic.ac.uk/hp/staff/dmb/voicebox/voicebox.html - это матлабовский тулбокс.

http://htk.eng.cam.ac.uk/ - Hidden Markov Model Toolkit.
PM WWW ICQ   Вверх
Voprosnikov
Дата 29.6.2004, 12:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 19.3.2004

Репутация: нет
Всего: нет



Цитата(podval @ 25.6.2004, 18:33)
http://www.torch.ch/ - здесь очень удачная библиотека функций на С++.

http://www.ee.ic.ac.uk/hp/staff/dmb/voicebox/voicebox.html - это матлабовский тулбокс.

http://htk.eng.cam.ac.uk/ - Hidden Markov Model Toolkit.

ок, спасибо большое за ссылки!

Еще вопрос про инициализацию СММ...

Segmental K-means алгоритм может быть использован для тренинга как самостотятельно, так и как вспомогательная процедура для инициализации параметров СММ перед переоценкой с пом. Вом-Вэлша? Это так?

И еще: какие методы тренинга вообще используются. Как я понимаю все зависет от того, что оптимизируем. Можно кратко указать, какие алгоритмы существуют и что они оптимизируют? (а то каша в голове почти неизбежна sad.gif )

Заранее спасибо!
PM MAIL   Вверх
podval
Дата 29.6.2004, 20:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Где я? Кто я?
****


Профиль
Группа: Экс. модератор
Сообщений: 3094
Регистрация: 25.3.2002
Где: СПб

Репутация: 18
Всего: 62



Цитата
Segmental K-means алгоритм может быть использован для тренинга как самостотятельно, так и как вспомогательная процедура для инициализации параметров СММ перед переоценкой с пом. Вом-Вэлша? Это так?

Ну если ты прочитала об этом, значит так smile.gif
Слишком узкоспециализированный вопрос.

Цитата
какие алгоритмы существуют и что они оптимизируют?

Ищи EM algorithm. Гугл выдаст большую кучу ссылок.
Вот одна из них выглядит вполне убедительно: http://page.mi.fu-berlin.de/~biocomp/Lehre...EMAlgoHMM98.pdf

PM WWW ICQ   Вверх
Voprosnikov
Дата 30.6.2004, 00:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 19.3.2004

Репутация: нет
Всего: нет



Цитата(podval @ 29.6.2004, 20:28)

Ищи EM algorithm. Гугл выдаст большую кучу ссылок.
Вот одна из них выглядит вполне убедительно: http://page.mi.fu-berlin.de/~biocomp/Lehre...EMAlgoHMM98.pdf

Ух, спасибо большое...
На самом деле у меня вопросов по СММ воз и маленькая тележка... Так что тему буду продолжать, если возражений нет... smile.gif
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Алгоритмы"

maxim1000

Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Алгоритмы | Следующая тема »


 




[ Время генерации скрипта: 0.0510 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.