2013-05-16 4 views
0

Я читал о теории HMM. Из того, что я понимаю, нам нужна интуитивная вероятность, вероятность перехода и вероятность эмиссии, чтобы соединиться с HMM. Примеры, которые я видел о внедрении HMM, определяют все эти вероятности при запуске. Но проблема в том, что я хочу распознавать жесты с помощью HMM, и я не смог выяснить, как определить вероятности (т. Е. Вероятность перехода и матрица вероятности излучения). Я знаю, как использовать алгоритм viterbi для получения наилучшей последовательности или как получить вывод с использованием forward-backward, это только стартовые вероятности, о которых я беспокоюсь оHMM Confusion с распознаванием жестов

Может ли кто-нибудь вести меня по этому поводу.

ответ

3

Есть на самом деле три основных алгоритма для скрытых марковских моделей, и вы упомянули два из трех:

  1. вперед-назад алгоритм.
  2. Алгоритм Витерби
  3. Baum Welch algorithm: Определение параметров (начальная вероятность, вероятность перехода, вероятность излучения) из данных обучения.

Алгоритм Баум-Велч в основном алгоритм ожидания максимизации, где вы начать со случайными исходными параметрами, и, используя алгоритм вперед-назад, вычислить значение максимального правдоподобия для начальных параметров, и итерации. Хорошая экспозиция с псевдокодом для алгоритма представлена ​​в this lecture note. В нем также обсуждается связанная с этим проблема распознавания речи, очень успешное применение HMM. К сожалению, он не обсуждает тот факт, что Baum-Welch или другие алгоритмы, как правило, довольно сложно реализовать на практике, потому что вероятности становятся чрезвычайно маленькими. Таким образом, на практике вам нужно либо использовать тщательное масштабирование, использовать логарифмические вероятности, либо использовать реализацию HMM с помощью sci-kit learn, которая включает в себя все три основных алгоритма HMM.

1

Здесь вы можете ознакомиться с моим blog post, который представляет собой базовое представление о том, как можно распознать жесты с помощью HMM (это из моего опыта, полученного при выполнении моего студенческого проекта). В нем освещаются основы трех необходимых алгоритмов, а также, как вы можете оценить начальные вероятности для задействованных матриц, в конце концов следуют характер данных обучения и алгоритм обучения. Надеюсь, это поможет вам начать хотя бы.

Ответ на часть вашего вопроса здесь, ваша оценка исходных вероятностей может отличаться от реализации к реализации, но это во многом зависит от характера вашей марковской модели, т. Е. Вы будете работать над одним из трех типов моделей: Ergodic, LRB и LR. В зависимости от этого исходные значения для ваших параметров перехода, эмиссии и начальных вероятностей могут различаться. Затем, чтобы распознать жест, вам нужно «наблюдать» определенную конкретную (или группу) функцию (ы) в ваших захваченных кадрах изображения. Я предлагаю вам пройти мой блог, чтобы получить более подробное объяснение тому же.

+1

Я прочитал ваш блог, и я должен сказать, что это кристально чистое объяснение :), но в конце вы говорите, что напишете о алгоритме Баума Уэлша и закончите статью. Надеюсь, вы скоро это сделаете :) Тем не менее простейший объяснение HMM. Спасибо. –

+0

Да, я давно намереваюсь право на эту статью по Баум-Уэлчу;) Надеюсь, это будет сделано в ближайшем будущем. Спасибо за ваши отзывы :) –

+0

Ваш блог, похоже, не работает. Вы когда-нибудь больше писали по этой теме? – codedude