Создать дискретную скрытую марковскую модель с матричными (NxN) наблюдениями?

Во всех дискретных HMM, которые я видел, данные наблюдений состояли из потока целых чисел. Однако что произойдет, если наблюдения на самом деле представляют собой дискретные векторы признаков? Например, что если я пытаюсь использовать HMM для обучения распознаванию жестов по значениям интенсивности оттенков серого видеокадров? То есть каждое наблюдение описывается матрицей nxn, а не одним значением? Как мне это сделать?

Спасибо!

2 ответа

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

Конечно, если значения являются непрерывными (числа с плавающей запятой), просто используйте многомерное нормальное распределение.

В зависимости от библиотеки, которую вы хотите использовать, ObservationVectors может хорошо служить. Вы можете выровнять матрицу по n²-мерному вектору и обучить модель проверенным данным. Тогда вы сможете обнаружить любой жест из последовательности векторных наблюдений.

Другие вопросы по тегам