Изменения

Перейти к: навигация, поиск

Алгоритм Баума-Велша

3200 байт добавлено, 23:12, 21 декабря 2014
Пример
{| class="wikitable"
|-
! Последовательность !! Вероятность последовательности и состояний S1 и S2 !! Наибольшая вероятность наблюдения
|-
| NN || 0.024 || 0.3584 S2,S2
|}
</center><br />
 
Таким образом получаем новую оценку перехода из S1 в S2 <tex>\frac{0.22}{2.4234} = 0.0908</tex>. После этого можно подсчитать вероятность переходов из S2 в S1, S2 в S2, S1 в S1 и изменим их так, чтобы в суммы вероятностей давали 1. В итоге получаем новую матрицу переходов:
 
<center>
{| border="0" style="background:transparent;"
|-
|
{| class="wikitable"
|+Старая матрица
|-
! !! Состояние 1 !! Состояние 2
|-
! Состояние 1
|0.5 || 0.5
|-
! Состояние 2
|0.3 || 0.7
|}
||
{| class="wikitable"
|+Новая матрица (Псевдовероятности)
|-
! !! Состояние 1 !! Состояние 2
|-
! Состояние 1
|0.0598 || 0.0908
|-
! Состояние 2
|0.2179 || 0.9705
|}
||
{| class="wikitable"
|+Новая матрица (После изменения)
|-
! !! Состояние 1 !! Состояние 2
|-
! Состояние 1
|0.3973 || 0.6027
|-
! Состояние 2
|0.1833 || 0.8167
|}
|}
</center>
 
Далее оценим новую матрицу состояний:
 
<center>
{| class="wikitable"
|-
! Последовательности !! Наибольшая вероятность наблюдения <br/> Если допустимо, что E получено из S1 !! Наибольшая вероятность наблюдения
|-
| NE || 0.1344 S2,S1 || 0.1344 S2,S1
|-
| EE || 0.0490 S1,S1 || 0.0490 S1,S1
|-
| EN || 0.0560 S1,S2 || 0.0896 S1,S2
|-
! Итог
| 0.2394 || 0.2730
|}
</center><br />
 
Новая оценка для E, полученного из S1 <tex>\frac{0.2394}{0.2730} = 0.8769</tex>.
 
Благодаря этому, возможно рассчитать матрицу состояний:
 
<center>
{| border="0" style="background:transparent;"
|-
|
{| class="wikitable"
|+Старая матрица
|-
! !! No Eggs !! Eggs
|-
! Состояние 1
|0.3 || 0.7
|-
! Состояние 2
|0.8 || 0.2
|}
||
{| class="wikitable"
|+Новая матрица (Оценка)
|-
! !! Яйца не отложены !! Яйца отложены
|-
! Состояние 1
|0.0876 || 0.8769
|-
! Состояние 2
|1.0000 || 0.7385
|}
||
{| class="wikitable"
|+Новая матрица (После изменения)
|-
! !! Яйца не отложены !! Яйца отложены
|-
! Состояние 1
|0.0908 || 0.9092
|-
! Состояние 2
|0.5752 || 0.4248
|}
|}
</center>
 
Для оценки начальной вероятности, мы предполагаем, что все последовательности начаты со скрытого состояния S1 и рассчитаны с высокой вероятностью, а затем повторяем для S2. После нормализации получаем обновленный исходный вектор.
 
Повторяем эти шаги до тех пор, пока вероятности не сойдутся.
== Псевдокод ==
50
правок

Навигация