Algoritmus vpřed - vzad - Forward–backward algorithm
Tento článek obsahuje a seznam doporučení, související čtení nebo externí odkazy, ale její zdroje zůstávají nejasné, protože jí chybí vložené citace.Dubna 2018) (Zjistěte, jak a kdy odstranit tuto zprávu šablony) ( |
The algoritmus dopředu-dozadu je odvození algoritmus pro skryté Markovovy modely který počítá zadní marginální ze všech proměnných skrytého stavu s posloupností pozorování / emisí , tj. počítá pro všechny skryté stavové proměnné , distribuce . Tento úkol odvození se obvykle nazývá vyhlazení. Algoritmus využívá principu dynamické programování efektivně vypočítat hodnoty, které jsou nutné k získání zadního okrajového rozdělení ve dvou průchodech. První průchod jde vpřed v čase, zatímco druhý přejde zpět v čase; odtud název algoritmus dopředu-dozadu.
Termín algoritmus dopředu-dozadu se také používá k označení jakéhokoli algoritmu patřícího do obecné třídy algoritmů, které fungují na sekvenčních modelech dopředu a dozadu. V tomto smyslu popisy ve zbývající části tohoto článku odkazují, ale na jednu konkrétní instanci této třídy.
Přehled
V prvním průchodu algoritmus dopředu-dozadu vypočítá sadu pravděpodobností dopředu, která poskytuje pro všechny , pravděpodobnost, že skončíte v kterémkoli konkrétním stavu vzhledem k prvnímu pozorování v pořadí, tj. . Ve druhém průchodu algoritmus vypočítá sadu zpětných pravděpodobností, které poskytují pravděpodobnost pozorování zbývajících pozorování daného libovolného počátečního bodu , tj. . Tyto dvě sady rozdělení pravděpodobnosti lze poté zkombinovat a získat rozdělení po stavech v jakémkoli konkrétním časovém okamžiku vzhledem k celé sledované posloupnosti:
Poslední krok vyplývá z aplikace Bayesovo pravidlo a podmíněná nezávislost z a daný .
Jak je uvedeno výše, algoritmus zahrnuje tři kroky:
- výpočet pravděpodobností vpřed
- výpočet zpětných pravděpodobností
- výpočet vyhlazených hodnot.
Kroky vpřed a vzad lze také nazvat „předat předání zprávy“ a „předat zpětnou zprávu“ - tyto pojmy jsou způsobeny předávání zpráv používá se obecně šíření víry přístupy. Při každém jednotlivém pozorování v pořadí se počítají pravděpodobnosti, které se mají použít pro výpočty při příštím pozorování. Krok vyhlazení lze vypočítat současně během zpětného průchodu. Tento krok umožňuje algoritmu zohlednit veškerá minulá pozorování výstupu pro výpočet přesnějších výsledků.
Algoritmus dopředu-dozadu lze použít k nalezení nejpravděpodobnějšího stavu pro jakýkoli časový bod. Nelze jej však použít k nalezení nejpravděpodobnějšího sledu stavů (viz Viterbiho algoritmus ).
Pravděpodobnosti vpřed
Následující popis použije spíše matice hodnot pravděpodobnosti než rozdělení pravděpodobnosti, ačkoli obecně lze algoritmus dopředu-dozadu použít na spojité i diskrétní modely pravděpodobnosti.
Transformujeme rozdělení pravděpodobnosti související s daným skrytý Markovův model do maticového zápisu následovně. Pravděpodobnosti přechodu dané náhodné proměnné představující všechny možné stavy ve skrytém Markovově modelu bude reprezentováno maticí kde index sloupce bude představovat cílový stav a index řádku představuje počáteční stav. Přechod ze stavu řádek-vektor do stavu přírůstkového vektoru řádků je psán jako . Níže uvedený příklad představuje systém, kde je pravděpodobnost, že po každém kroku zůstanete ve stejném stavu, 70% a pravděpodobnost přechodu do jiného stavu je 30%. Matice přechodu je pak: