Enkel forklaring af Baum Welch / Viterbi

Jeg leder efter en meget enkel forklaring som muligt for Baum Welch og Viterbi til HMMer med et ligetil godt kommenteret eksempel. Næsten alle de forklaringer, jeg finder på nettet, springer altid fra starten til en næsten fuldstændig jargon / symbolbaseret forklaring. De få gange, de har et eksempel, skubbes det normalt til siden eller dårligt kommenteres (dvs. det er uklart, hvordan symbolerne og eksemplet er relateret til hinanden.) “Jeg har hørt ting som nogle kilder, der hævder, at Baum Welch er baseret på EM-algoritmen, og andre siger, at den er baseret på den fremadgående bagudalgoritme, og nogle siger begge, så jeg vil gerne have detaljer som det ryddede op.

Det tætteste, jeg har fundet indtil videre, er en video, der blev offentliggjort her, som folk sagde var fantastisk, men ikke kan afspilles, fordi flash er forbudt, og en forklaring på wikipedia, der har en note ved siden af, der siger, at den er forkert .

Svar

Jeg leder efter en meget enkel forklaring som muligt for Baum Welch og Viterbi for HMMer …

  • I betragtning af de observerede data finder Baum-Welch-algoritmen de sandsynlighedsmaksimerende parametre.

  • I betragtning af de observerede data og parametrene, Viterbi-algoritmen finder den mest sandsynlige rækkefølge af skjulte tilstande.

Jeg har hørt ting som nogle kilder, der hævder, at Baum Welch er baseret på EM-algoritmen …

Baum-Welch-algoritmen er et specielt tilfælde af EM-algoritmen.

… og andre siger, at den er baseret på den fremadgående bagudalgoritme

Nedadgående nedbrydning er, hvordan du udfører “E-” trin (ved hjælp af EM-terminologi). Det er specifikt for skjulte Markov-modeller.

De få gange, de har et eksempel, skubbes det normalt til siden eller dårligt kommenteres (dvs. det er uklart, hvordan symbolerne og eksemplet er relateret til hinanden)

Jeg ved ikke, hvilke eksempler du ser på, men jeg kan fortælle dig, at der er mange gode derude. Husk at disse metoder blev opfundet for meget længe siden, og de bruges stadig meget . Rabiner-en, der er knyttet til ovenstående, er sandsynligvis den mest berømte, men du skal finde en, du kan lide, som du vil fortsætte med at arbejde igennem. Jeg vil anbefale dig at finde en med et eksempel, der indeholder data, du er interesseret i, og notation, som føler er læringsdygtig. Uanset hvad du finder vil have en masse notation. Der er ingen vej uden om det, så du er lige nødt til at finde noget, du kan slå dig ned i.

Svar

Jeg har det perfekte papir til dig: http://www.stat.columbia.edu/~liam/teaching/neurostat-fall17/papers/hmm/rabiner.pdf

Bemærk afaik at der er nyere BW-metoder.

Forsøgt enkel forklaring på Viterbi: Målet med viterbi er at finde en optimal sekvens af tilstande i løbet af en diskret periode.
Start med de indledende sandsynligheder for at være i en tilstand $ s $ ad gangen. $ t = 0 $. Forøg derefter $ t $ og for hver stat på det tidspunkt ($ t = 1 $), find den bedste stat $ s $ ved $ t-1 $ (bedst som i den rækkefølge, der giver den højeste sandsynlighed Gem disse oplysninger. Det betyder for hver stat $ s $ ved $ t = 1 $ spar hvad den bedste tilstand $ s $ ved $ t = 0 $ er. Gem også sandsynligheden for den (optimale) sekvens.
Forøg derefter $ t $ til $ t = 2 $, og gentag proceduren (med sandsynlighederne for hver stat $ s $ ved $ t-1 $ er de netop beregnede bedste sandsynligheder for den tilstand). punkt når du $ t = T $ (sidste tidspunkt). Så vælger du bare staten med den højeste sandsynlighed og husker for hver stat på hver gang du har gemt den bedste tilstand for $ t-1 $, så tag den bedste tilstand ved $ t = T $ og arbejd dig altid baglæns altid vælge den gemte optimale tilstand.

At uddybe, hvad den gør på et mere generelt niveau: Hvis du har et sæt stater $ S $, som alle kan vælges over en periode $ T $, en naiv løsning for at finde den bedste sekvens ville være at opregne alle mulige sekvenser og derefter beregne sandsynligheden for hver af dem (det vil sige beregning af statens produkt og overgangssandsynligheder). Fejlen man laver her er, at mange af beregningerne duplikeres, som et eksempel kan man have to sekvenser $ p_1, p_2 $ ($ p $ er en sekvens af tilstande), hvor den eneste forskel er den endelige tilstand, alligevel med denne tilgang beregner du sandsynligheden for de delte tilstande for både $ P (p_1) $ og $ P (p_2) $.
Ved at tage den iterative tilgang, der bruges i viterbi, er der ingen duplikerede beregninger, så det vil naturligvis være meget mere effektiv.

Kommentarer

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *