Обучение HMM — объем необходимых данных

Я использую HMM для классификации. Я наткнулся на пример в Википедии алгоритм Баума-Уэлча Пример. Надеюсь, кто-нибудь может мне помочь.

Пример следующий: «Предположим, у нас есть курица, у которой мы собираем яйца каждый день в полдень. Теперь, отложила ли курица яйца для сбора, зависит от некоторых неизвестных скрытых факторов. Однако мы можем (для простоты) предположить, что есть есть только два состояния, которые определяют, несет ли курица яйца».

Обратите внимание, что в этом примере у нас есть 2 разных наблюдения (N и E) и 2 состояния (S1 и S2).

Мой вопрос вот в чем:

Сколько наблюдений/наблюдаемых последовательностей (или обучающих данных) нам нужно для наилучшего обучения модели. Есть ли способ оценить или проверить объем необходимых обучающих данных.


person Omar14    schedule 24.01.2015    source источник


Ответы (1)


Для каждой переменной в вашей модели HMM вам потребуется около 10 выборок. Используя это эмпирическое правило, вы можете легко рассчитать, сколько выборок вам нужно для создания надежного классификатора. В вашем примере у вас есть два состояния, которые приводят к матрице перехода 2 в 2 A = [a_00, a_01; a_10, a_11], где a_ij — вероятность перехода из состояния S_i в S_j.

Более того, каждое из этих состояний с вероятностью p_S1 и p_S2 генерирует наблюдения, то есть: если мы находимся в состоянии S1 с вероятностью p_S1, курица снесет яйцо, а с вероятностью 1-p_S1 - нет. Всего у вас есть 6 переменных, которые необходимо оценить. Более или менее очевидно, что точно оценить их только по двум наблюдениям невозможно. Как я упоминал ранее, принято считать, что для точной оценки этой переменной требуется не менее 10 выборок на переменную.

person TNM    schedule 24.01.2015
comment
Почему 10 проба? исходя из того, что вы даете этот номер? - person Omar14; 24.01.2015
comment
Предоставьте более подробную информацию. Это пограничная территория комментариев. - person rayryeng; 25.01.2015