Markov&HMM

алгоритм

Это 17-й день моего участия в августовском испытании обновлений. Ознакомьтесь с подробностями мероприятия: Испытание августовского обновления

Markov

Модель Маркова отличается от моделей регрессии и классификации, которые имеют дело с независимыми выборочными данными.Данные временного ряда, то есть данные с отношениями временного ряда между выборками. Основная идея Маркова: «Текущее состояние связано только с состоянием в предыдущий момент и не имеет ничего общего с состоянием любого другого момента до». Лично я считаю, что это самая большая проблема Маркова, почему — в конце статьи. Давайте рассмотрим пример, чтобы подробно объяснить марковскую модель.

Сейчас есть такой человек, у которого каждый день три состояния: есть, спать и играть. Это легендаГосударственное распределение

Теперь вы хотите знать, в каком состоянии он находится в n-й день, ест, играет или спит? Какова вероятность возникновения этих состояний?

Сначала сделайте предположение, предполагая, что его ежедневный переход состояния имеет фиксированную вероятность. Например, если мы играем сегодня, вероятность поесть завтра равна 0,6, вероятность поспать завтра равна 0,3, а вероятность продолжить игру завтра равна 0,1, то мы можем построить следующую матрицу

Эта матрицаМатрица вероятности перехода состоянияPP, и этопостоянный, то есть матрица вероятности перехода состояния в первый день такая же, как матрица вероятности перехода состояния во второй день и каждый последующий день.

С помощью этой матрицы и если известно распределение состояний (вектор) первого дня, можно рассчитать распределение вероятностей (вектор) состояния любого дня.

Чтобы привести очень простой пример, предположим, что вероятность того, что этот человек будет есть, играть и спать 1 октября, равнаS1=(0.6,0.2,0.2)S_1=(0.6, 0.2, 0.2),Так

Вектор распределения состояний на 2 октябряS2=S1*P=(0.22,0.4,0.38)S_2=S_1 * P = (0.22, 0.4, 0.38)

Вектор распределения штатов на 3 октябряS3=S2*P=(0.236,0.496,0.268)S_3=S_2 * P=(0.236,0.496,0.268)(Смотри, следуйS1S_1ничего простоS2S_2Связанный)

Вектор распределения штатов на 4 октябряS4=S3*PS_4=S_3 * P(Смотрите, просто следуйтеS3S_3Связанный)

Вектор распределения состояний за октябрь nSn=Sn1*PS_n=S_{n-1}*P(Смотрите, он следует только за состоянием перед нимSn1S_{n-1}Связанный)

Вот вам и простой марковский контент. Наконец, подведем итоги, собственно, если вы хотите вычислить состояние n-го моментаSnS_n, нужно только рассчитатьS1*PnS_1*P^nПросто

Что касается вопроса Маркова, о котором я упоминал в начале, я не знаю, видели ли вы его или нет, я думаю, что его самая большая проблема в том, что он не уделяет слишком много внимания предыдущим данным. Чтобы привести очень простой пример, предположим, что вы вернулись домой из торгового центра, и мы будем изучать этот путь.

Предположим, мы делим путь поровну на 5 моментов (синие точки на рисунке). Мы можем подумать о процессе принятия решений этой женщиной: она, должно быть, хотела пойти домой, как только вышла из торгового центра, и у нее уже была идея в сердце.длиннаяпланирование. Что, если Марков сделал предсказания? Марковская модель рассматривает это каккороткий срокОно думает, что этот человек вдруг захотел уйти домой только в начале зеленой точки Марков не знает и ему все равно, что вы думаете до этого, потому что, по его мнению, самое главное — это состояние предыдущего момента .

Лично я думаю, что у Маркова в любом случае большие проблемы с данными временных рядов. Это также то, что я обнаружил, когда писал статью.Первоначально в статье планировалось использовать модель Маркова, но позже она была изменена на модель, которая может предсказывать долгосрочные тренды + стратегия коррекции Маркова. Если вам интересно, вы можете прочитать мою статьюбумага

HMM (скрытая марковская модель)

Скрытый значит невидимый. Заимствуем фразу: «Когда пакетик с маслом в лапше быстрого приготовления затвердевает, отаку знает, что приближается зима». Сезон (зима) здесь является скрытой переменной, отаку (наблюдатель) не выходит на улицу, поэтому он не может видеть погоду, он может видеть только приправу для лапши быстрого приготовления (наблюдаемый результат). В дополнение к требованию фиксированной вероятности перехода между самими скрытыми состояниями, HMM также требует отношения фиксированной вероятности между последовательностью наблюдения и последовательностью скрытых состояний.

ПредполагатьQQмножество всех возможных (скрытых) состояний,VVмножество всех возможных наблюдений:

Q={q1,q2,...,qN},V={v1,v2,...,vM}Q=\{q_1, q_2, ..., q_N\}, V=\{v_1,v_2,...,v_M\}

в,NNчисло возможных состояний,MMчисло возможных наблюдений.

IIдлинаTTпоследовательность состояний,OO– соответствующая последовательность наблюдений:

I=(i1,i2,...,iT),O=(o1,o2,...,oT)I=(i_1, i_2, ..., i_T), O=(o_1, o_2, ..., o_T)

AA- (скрытая) матрица вероятности перехода состояния:

A=[aij]N×NA=[a_{ij}]_{N\times N}

в,

aij=P(it+1=qjit=qi),    i,j=1,2,...,Na_{ij}=P(i_{t+1}=q_j\mid i_t=q_i),\ \ \ \ i,j=1, 2, ..., N

выражено на данный моментttв состоянииqiq_iсостояние, на данный моментt+1t+1переход в состояниеqjq_jВероятность. Например, сейчас зима, а вероятность перехода на весну, осень и лето в следующий момент

BBматрица наблюдения:

B=[bj(k)]N×MB=[b_j(k)]_{N\times M}

в,

bj(k)=P(ot=vkit=qj),    k=1,2,...,M;  j=1,2,...,Nb_j(k)=P(o_t=v_k\mid i_t=q_j),\ \ \ \ k=1,2,...,M;\ \ j=1,2,...,N

выражено на данный моментttв состоянииqjq_jпроизводить наблюдения в условияхvkv_kВероятность. Например, вероятность того, что отаку подумает, что сейчас зима, когда увидит, что мешок с маслом затвердел.

число Пи\pi– вектор вероятности начального состояния:

число Пи=(число Пиi)\pi =(\pi_i)

в,

число Пиi=P(i1=qi),    i=1,2,...,N\pi_i = P(i_1=q_i),\ \ \ \ i=1,2,...,N

время для шоуt=1t=1в состоянииqiq_iВероятность. Например, вероятность четырех сезонов весны, лета, осени и зимы в начале

Скрытая марковская модель по вектору вероятности начального состояниячисло Пи\pi, матрица вероятности перехода состоянияAAи матрица вероятности наблюденияBBПринять решение.число Пи\piиAAопределить последовательность состояний,BBОпределите последовательность наблюдения. Так скрытая марковская модельλ\lambdaможет быть представлено троичной записью, т.е.

λ=(A,B,число Пи)\lambda=(A,B, \pi)

A,B,число ПиA,B,\piтри элемента, называемые скрытыми марковскими моделями

Матрица вероятности перехода состоянияAAс вектором вероятности начального состояниячисло Пи\piВыявлены скрытые цепи Маркова, генерирующие ненаблюдаемые последовательности состояний. Матрица вероятности наблюдения B определяет, как наблюдения генерируются из состояний, а комбинация с последовательностью состояний определяет, как генерируется последовательность наблюдений.

Из определения скрытая марковская модель делает два основных предположения:

  • Однородная гипотеза Маркова. То есть предполагается, что скрытая цепь Маркова в любой момент времениttСостояниеttНе имеет значения:
P(itit1,ot1,...,i1,o1)=P(itit1),    t=1,2,...,TP(i_t\mid i_{t-1},o_{t-1},...,i_1,o_1)={P(i_t\mid i_{t-1})},\ \ \ \ t=1,2,...,T
  • Допущение наблюдательной независимости. То есть предполагается, что наблюдение в любой момент времени зависит только от состояния цепи Маркова в этот момент и не имеет ничего общего с другими наблюдениями и состояниями:

    P(otiT,oT,iT1,oT1,...,it+1,ot+1,it,it1,ot1,...,i1,o1)=P(otit)P(o_t\mid i_T,o_T,i_{T-1},o_{T-1},...,i_{t+1},o_{t+1},i_t,i_{t-1},o_{t-1},...,i_1,o_1)=P(o_t\mid i_t)

Скрытые марковские модели можно использовать для маркировки, где состояния соответствуют меткам. Задача маркировки состоит в том, чтобы предсказать соответствующую помеченную последовательность с учетом последовательности наблюдений. Данные, которые можно использовать для обозначения проблемы, генерируются скрытой марковской моделью. Таким образом, мы можем использовать алгоритм обучения и прогнозирования скрытой марковской модели для маркировки

Рассмотрим пример скрытой марковской модели.

Предположим, что есть 4 ящика, и в каждом ящике лежат красные и белые шары.Количество красных и белых шаров в ящике указано в следующей таблице

номер коробки 1 2 3 4
Количество красных шаров 5 3 6 8
Количество белых шаров 5 7 4 2

Последовательность наблюдений за цветом мяча формируется следующим образом:

  • В начале случайным образом выберите 1 ящик из 4 ящиков с равной вероятностью, случайным образом вытащите из этого ящика шарик, запишите его цвет и положите обратно.

  • Затем случайным образом переносите из текущего ящика в следующий ящик, по правилу: если текущий ящик — ящик 1, то следующий ящик должен быть ящиком 2; если текущий ящик — 2 или 3, то переносите влево и вправо. с вероятностью 0,4 и 0,6 ящик соответственно; если текущий ящик 4, то остаться в ящике 4 или перейти в ящик 3 с вероятностью 0,5

  • Определив переданный ящик, вытащите из ящика случайным образом шар, запишите его цвет и положите обратно.

  • Таким образом, повторите 5 раз, чтобы получить последовательность наблюдений за цветом мяча.

    O=(красный,красный,белый,белый,красный)O=(\текст{красный},\текст{красный},белый,белый,красный)

В этом процессе наблюдатель может наблюдать только последовательность цвета шарика, но не может наблюдать, из какой коробки был взят шарик, то есть последовательность коробки наблюдать нельзя.

В этом примере есть две случайные последовательности: последовательность ящиков (последовательность состояний) и последовательность цветов шаров (последовательность наблюдений). Первое скрыто, только второе видно. Это пример скрытой марковской модели. В соответствии с заданными условиями можно четко определить три элемента набора состояний, набора наблюдений, длины последовательности и модели.

Блоки соответствуют состояниям, а набор состояний:

Q={Коробка1,Коробка2,Коробка3,Коробка4},    N=4Q=\{Коробка 1, Коробка 2, Коробка 3, Коробка 4\}, \ \ \ \ N=4

Цвет шарика соответствует наблюдению. И этот набор наблюдений:

V={красный,белый},    M=2V=\{красный, белый\},\ \ \ \ M=2

Последовательность состояний и длина последовательности наблюденийT=5T=5

Начальное распределение вероятностей

число Пи=(0.25,0.25,0.25,0.25)T\pi = (0.25, 0.25, 0.25, 0.25)^T

Распределение вероятности перехода состояния

A=[01000.400.6000.400.6000.50.5]A = \begin{bmatrix} {0}&{1}&{0}&{0}\\ {0.4}&{0}&{0.6}&{0}\\ {0}&{0.4}&{0}&{0.6}\\ {0}&{0}&{0.5}&{0.5}\\ \end{bmatrix}

Наблюдаемое распределение вероятностей

B=[0.50.50.30.70.60.40.80.8]B = \begin{bmatrix} {0.5}&{0.5}\\ {0.3}&{0.7}\\ {0.6}&{0.4}\\ {0.8}&{0.8}\\ \end{bmatrix}

Генерация последовательностей наблюдений

Согласно определению скрытой марковской модели длинаTTПоследовательность наблюдения заO=o1,o2,...,oTO={o_1,o_2,...,o_T}Процесс генерации описывается следующим образом:

Вход: скрытая марковская модельλ=(A,B,число Пи)\lambda=(A,B,\pi), длина последовательности наблюденийTT

Выход: последовательность наблюденийO=(o1,o2,...,oT)O=(o_1,o_2,...,o_T)

  1. По начальному распределению состоянийчисло Пи\piпроизводить состояниеi1i_1
  2. сделатьt=1t=1
  3. По статусуi1i_1Наблюдаемое распределение вероятностейbit(k)b_{i_t}(k)генерироватьoto_t
  4. По статусуiti_tРаспределение вероятности перехода состояния{aitit+1}\{a_{i_ti_{t+1}}\}производить состояниеit+1,it+1=1,2,...,Ni_{t+1},i_{t+1}=1,2,...,N
  5. сделатьt=t+1t=t+1;еслиt<Tt<T, перейти к шагу 3, если нет, завершить

3 основные проблемы скрытых марковских моделей (курсив)

Есть 3 основные проблемы со скрытыми марковскими моделями:

  1. Проблема расчета вероятности. данная модельλ=(A,B,число Пи)\lambda=(A,B,\pi)и последовательность наблюденияO=(o1,o2,...,oT)O=(o_1,o_2,...,o_T), рассчитанный в моделиλ\lambdaнижняя последовательность наблюденийOOвероятность возникновенияP(Oλ)P(O\mid \lambda)
  2. проблемы с обучением. известная последовательность наблюденийO=(o1,o2,...,oT)O=(o_1,o_2,...,o_T), расчетная модельλ=(A,B,число Пи)\lambda=(A,B,\pi)такие, что наблюдаемая вероятность последовательности в этой моделиP(Oλ)P(O\mid \lambda)максимум. То есть использовать метод оценки максимального правдоподобия для оценки параметров
  3. Проблема предсказания, также известная как проблема декодирования. известная модельλ=(A,B,число Пи)\lambda=(A,B,\pi)и последовательность наблюденияO=(o1,o2,...,oT)O=(o_1,o_2,...,o_T), найти условие для заданной последовательности наблюденийP(IO)P(I\mid O)самая большая последовательность состоянийI=(i1,i2,...,iT)I=(i_1,i_2,...,i_T). То есть, учитывая последовательность наблюдений, найдите наиболее вероятную соответствующую последовательность состояний.

Вероятностный метод расчета HMM

Нижеследующее в основном вводит расчет вероятности последовательности наблюдения.P(Oλ)P(O\mid \lambda)прямой и обратный алгоритмы. Сначала введите метод прямого расчета, который концептуально возможен, но невозможен с точки зрения вычислений.

1. Метод прямого расчета

данная модельλ=(A,B,число Пи)\lambda=(A,B,\pi)и последовательность наблюденияO=(o1,o2,...,oT)O=(o_1,o_2,...,o_T), вычислить последовательность наблюденийOOвероятность возникновенияP(Oλ)P(O\mid \lambda). Самый прямой метод — расчет непосредственно по формуле вероятности. Перечисляя все возможные длины какTTпоследовательность состоянийI=(i1,i2,...,iT)I=(i_1,i_2,...,i_T), найти каждую последовательность состоянийIIс последовательностью наблюденияO=(o1,o2,...,oT)O=(o_1,o_2,...,o_T)совместная вероятностьP(O,Iλ)P(O,I\mid \lambda), а затем, просуммировав все возможные последовательности состояний, получимP(Oλ)P(O\mid \lambda)

последовательность состоянийI=(i1,i2,...,iT)I=(i_1,i_2,...,i_T)Вероятность

P(Iλ)=число Пиi1ai1i2ai2i3aiT1iTP(I\mid \lambda) = \pi_{i_1}a_{i_1i_2}a_{i_2i_3}···a_{i_{T-1}i_T}

для фиксированной последовательности состоянийI=(i1,i2,...,iT)I=(i_1,i_2,...,i_T), последовательность наблюденияO=(o1,o2,...,oT)O=(o_1,o_2,...,o_T)Вероятность

P(OI,λ)=bi1(o1)bi2(o2)bit(oT)P(O\mid I,\lambda)=b_{i_1}(o_1)b_{i_2}(o_2)···b_{i_t}(o_T)

Тогда для всех возможных последовательностей состоянийIIСуммируем, получаем последовательность наблюденийOOВероятностьP(Oλ)P(O\mid \lambda),Сейчас

P(Oλ)=IP(OI,λ)P(Iλ)=i1,i2,..,iTчисло Пиi1bi1(o1)ai1i2bi2(o2)aiT1iTbiT(oT)\begin{aligned} P(O\mid \lambda)&=\sum_I P(O\mid I,\lambda)P(I\mid \lambda)\\ &=\sum_{i_1,i_2,..,i_T}\pi_{i_1}b_{i_1}(o_1)a_{i_1i_2}b_{i_2}(o_2)···a_{i_{T-1}i_T}b_{i_T}(o_T) \end{aligned}

Однако приведенная выше формула очень требовательна к вычислительным ресурсам, а временная сложность составляетO(TNT)O(TN^T)порядок, этот алгоритм не выполним

Ниже описано, как рассчитать вероятность последовательности наблюдений.P(Oλ)P(O\mid \lambda)Эффективный алгоритм для: вперед-назад алгоритм

2. Прямой алгоритм

Сначала определите форвардную вероятность. Учитывая скрытую марковскую модельλ\lambda, определено на данный моментttЧасть последовательности наблюденийo1,o2,...,oto_1,o_2,...,o_tи статусqiq_iВероятность - это прямая вероятность, обозначаемая как

αt(i)=P(o1,o2,...,ot,it=qiλ)\alpha_t(i)=P(o_1,o_2,...,o_t,i_t=q_i\mid \lambda)

Перспективную вероятность можно найти рекурсивноαt(i)\alpha_t(i)и вероятность последовательности наблюденийP(Oλ)P(O\mid \lambda)

Вход: скрытая марковская модельλ\lambda, последовательность наблюденияOO

Выход: вероятность последовательности наблюденийP(Oλ)P(O\mid \lambda)

(1) Начальное значение

α1(i)=число Пиibi(o1),    i=1,2,...,N\alpha_1(i)=\pi_ib_i(o_1),\ \ \ \ i=1,2,...,N

(2) Рекурсия, даt=1,2,...,T1t=1,2,...,T-1

αt+1(i)=[j=1Nαt(j)aji]bi(ot+1),    i=1,2,...,N\alpha_{t+1}(i)=\bigg [\sum_{j=1}^N \alpha_t(j)a_{ji}\bigg ]b_i(o_{t+1}),\ \ \ \ i=1,2,...,N

(3) Прекращение

P(Oλ)=i=1NαT(i)P(O\mid \lambda)=\sum_{i=1}^N \alpha_T(i)

Форвардный алгоритм, шаг (1) инициализирует форвардную вероятность, которая является состоянием в начальный моментi1=qii_1=q_iи наблюденияo1o_1совместная вероятность . Шаг (2) представляет собой рекуррентную формулу форвардной вероятности, рассчитанную до моментаt+1t+1Часть последовательности наблюденийo1,o2,...,ot,ot+1o_1,o_2,...,o_t,o_{t+1}и на данный моментt+1t+1в состоянииqiq_iФорвардная вероятность , как показано на следующем рисунке

В квадратных скобках формулы шага (2), посколькуαt(j)\alpha_t(j)пораttнаблюдаемыйo1,o2,...,oto_1,o_2,...,o_tи на данный моментttв состоянииqjq_jфорвардная вероятность , то произведениеαt(j)aji\alpha_t(j)a_{ji}вовремяttнаблюдаемыйo1,o2,...,oto_1,o_2,...,o_tи на данный моментttв состоянииqjq_jи на данный моментt+1t+1достичь состоянияqiq_iсовместная вероятность . для этого продукта во времяttвсе возможноеNNсостоянияqjq_jсумме, получается, что на данный моментttнаблюдается какo1,o2,...,oto_1,o_2,...,o_tи на данный моментt+1t+1в состоянииqiq_iсовместная вероятность . Значения в квадратных скобках и наблюдаемые вероятностиbi(ot+1)b_i(o_{t+1})Продукт точно соответствует моментуt+1t+1наблюдаемыйo1,o2,...,ot,ot+1o_1,o_2,...,o_t,o_{t+1}и на данный моментt+1t+1в состоянииqiq_iФорвардная вероятностьαt+1(i)\alpha_{t+1}(i). Шаг (3) даетP(Oλ)P(O\mid \lambda)формула расчета. так как

αT(i)=P(o1,o2,...,oT,iT=qiλ)\alpha_T(i)=P(o_1,o_2,...,o_T,i_T=q_i\mid \lambda)

так

P(Oλ)=i=1NαT(i)P(O\mid \lambda)=\sum_{i=1}^N\alpha_T(i)

В качестве примера рассмотрим модель коробки и мяча.λ=(A,B,число Пи)\lambda=(A,B,\pi), набор состоянийQ={1,2,3}Q=\{1,2,3\}, набор наблюденийV={красный,белый}V=\{красный, белый\}

A=[0.50.20.30.30.50.20.20.30.5],    B=[0.50.50.40.60.70.3],    число Пи=[0.20.40.4]A = \begin{bmatrix} {0.5}&{0.2}&{0.3}\\ {0.3}&{0.5}&{0.2}\\ {0.2}&{0.3}&{0.5}\\ \end{bmatrix},\ \ \ \ B= \begin{bmatrix} {0.5}&{0.5}\\ {0.4}&{0.6}\\ {0.7}&{0.3} \end{bmatrix},\ \ \ \ \pi= \begin{bmatrix} {0.2}\\ {0.4}\\ {0.4} \end{bmatrix}

ПредполагатьT=3,O=(красный,белый,красный)T=3,O=(красный,белый,красный), попробуйте прямой алгоритм для вычисленияP(Oλ)P(O\mid \lambda)

**Решение:** По прямому алгоритму

(1) Рассчитать начальное значение

α1(1)=число Пи1b1(o1)=0.10α1(2)=число Пи2b2(o1)=0.16α1(3)=число Пи3b3(o1)=0.28\alpha_1(1)=\pi_1 b_1(o_1)=0.10\\ \alpha_1(2)=\pi_2 b_2(o_1)=0.16\\ \alpha_1(3)=\pi_3b_3(o_1)=0.28

(2) Рекурсивный расчет

α2(1)=[i=13α1(i)ai1]b1(o2)=0.154×0.5=0.077α2(2)=[i=13α1(i)ai2]b2(o2)=0.184×0.6=0.1104α2(3)=[i=13α1(i)ai3]b3(o2)=0.202×0.3=0.0606α3(1)=[i=23α1(i)ai3]b1(o3)=0.04187α3(2)=[i=23α1(i)ai3]b2(o3)=0.03551α3(3)=[i=23α1(i)ai3]b3(o3)=0.05284\begin{aligned} &\alpha_2(1)=\bigg [\sum_{i=1}^3\alpha_1(i)a_{i1}\bigg ]b_1(o_2)=0.154\times 0.5=0.077\\ &\alpha_2(2)=\bigg [\sum_{i=1}^3\alpha_1(i)a_{i2}\bigg ]b_2(o_2)=0.184\times 0.6=0.1104\\ &\alpha_2(3)=\bigg [\sum_{i=1}^3\alpha_1(i)a_{i3}\bigg ]b_3(o_2)=0.202\times 0.3=0.0606\\ &\alpha_3(1)=\bigg [\sum_{i=2}^3\alpha_1(i)a_{i3}\bigg ]b_1(o_3)=0.04187\\ &\alpha_3(2)=\bigg [\sum_{i=2}^3\alpha_1(i)a_{i3}\bigg ]b_2(o_3)=0.03551\\ &\alpha_3(3)=\bigg [\sum_{i=2}^3\alpha_1(i)a_{i3}\bigg ]b_3(o_3)=0.05284\\ \end{aligned}

(3) Прекращение

P(Oλ)=i=13α3(i)=0.13022P(O\mid \lambda)=\sum_{i=1}^3\alpha_3(i)=0.13022
3. Обратный алгоритм

Учитывая скрытую марковскую модельλ\lambda, определяя моментttСтатусqiq_iсостояние, отt+1t+1прибытьTTЧастичная последовательность наблюденияot+1,ot+2,...,oTo_{t+1},o_{t+2},...,o_TВероятность - это обратная вероятность, обозначаемая как

βt(i)=P(ot+1,ot+2,...,oTit=qi,λ)\beta_t(i)=P(o_{t+1},o_{t+2},...,o_T\mid i_t=q_i,\lambda)

Обратная вероятность может быть получена рекурсиейβt(i)\beta_t(i)вероятность последовательности наблюденийP(Oλ)P(O\mid \lambda)

Вход: скрытая марковская модельλ\lambda, последовательность наблюденияOO

Выход: вероятность последовательности наблюденийP(Oλ)P(O\mid \lambda)

(1)

βt(i)=1,  i=1,2,...,N\beta_t(i)=1, \ \ i=1,2,...,N

(2 парыt=T1,T2,...,1t=T-1,T-2,...,1

βt(i)=j=1Naijbj(ot+1)βt+1(j),  i=1,2,...,N\beta_t(i)=\sum_{j=1}^N a_{ij}b_j(o_{t+1})\beta_{t+1}(j),\ \ i=1,2,...,N

(3)

P(Oλ)=i=1Nчисло Пиibi(o1)β1(i)P(O\mid \lambda)=\sum_{i=1}^N \pi_i b_i(o_1)\beta_1(i)

Шаг (1) Инициализировать обратную вероятность для всех состояний в последний моментqiq_iРегулированиеβt(i)=1\beta_t(i)=1. Шаг (2) представляет собой рекурсивную формулу обратной вероятности. Как показано ниже

Для расчета на данный моментttСтатусqiq_iвремя в условияхt+1t+1Последующая последовательность наблюденийot+1,ot+2,...,oTo_{t+1},o_{t+2},...,o_TОбратная вероятностьβt(i)\beta_t(i), просто рассмотрите моментt+1t+1все возможноеNNсостоянияqjq_jВероятность перехода (т.е.aija_{ij}срок), и наблюдения в этом состоянииot+1o_{t+1}Наблюдаемая вероятность (т.е.bj(ot+1)b_j(o_{t+1})пункт), то рассмотрим состояниеqjq_jОбратная вероятность последующей последовательности наблюдений (т.βt+1(j)\beta_{t+1}(j)пункт). Шаг (3) ПоискP(Oλ)P(O\mid \lambda)Идея та же, что и в шаге (2), только начальная вероятностьчисло Пиi\pi_iАльтернативные вероятности перехода

Используя определения прямой вероятности и обратной вероятности, вероятность последовательности наблюдений может бытьP(Oλ)P(O\mid \lambda)написано в унисон

P(Oλ)=i=1Nj=1Nαt(i)aijbj(ot+1)βt+1(j),  t=1,2,...,T1P(O\mid \lambda)=\sum_{i=1}^N\sum_{j=1}^N\alpha_t(i)a_{ij}b_j(o_{t+1})\beta_{t+1}(j),\ \ t = 1,2,...,T-1