Den Baum-Welsh-algoritmen används inom datavetenskap och statistik för att hitta okända parametrar för en dold Markov-modell (HMM). Den använder framåt-bakåt-algoritmen och är ett specialfall av den generaliserade EM-algoritmen .
En dold Markov- modell är en probabilistisk modell av en uppsättning slumpvariabler . Variabler är kända diskreta observationer och är "dolda" diskreta storheter. Inom ramen för den dolda Markov-modellen finns det två oberoende uttalanden som säkerställer konvergensen av denna algoritm:
Därefter kommer en algoritm av "antaganden och maximeringar" att föreslås för att hitta den maximala probabilistiska uppskattningen av parametrarna för den dolda Markov-modellen för en given uppsättning observationer. Denna algoritm är också känd som Baum-Welsh-algoritmen.
är en diskret slumpvariabel som tar ett av värdena . Vi kommer att anta att denna Markov-modell, definierad som , är homogen i tiden, det vill säga oberoende av . Sedan kan den specificeras som en tidsoberoende stokastisk förskjutningsmatris . Sannolikheterna för tillstånd vid en tidpunkt bestäms av den initiala fördelningen .
Vi kommer att anta att vi är i ett tillstånd vid tidpunkten om . Sekvensen av tillstånd uttrycks som , var är tillståndet för tillfället .
En observation vid en tidpunkt kan ha ett av de möjliga värdena, . Sannolikheten för en given vektor av observationer vid en tidpunkt för ett tillstånd definieras som ( är en matris på ). Sekvensen av observationer uttrycks som .
Därför kan vi beskriva den dolda Markov-modellen med . För en given observationsvektor finner den Baum-walesiska algoritmen . maximerar sannolikheten för observationer .
Inledande data: med slumpmässiga initiala villkor.
Algoritmen uppdaterar parametern iterativt tills den konvergerar vid en punkt.
Beteckna med sannolikheten för förekomsten av en given sekvens för tillståndet vid tidpunkten .
kan beräknas rekursivt:
Denna procedur tillåter oss att beräkna sannolikheten för en ändlig given sekvens , förutsatt att vi startade från initialtillståndet vid tidpunkten .
Kan beräknas :
Med hjälp av och kan du beräkna följande värden:
Med och kan vi beräkna nya värden för modellparametrarna:
var
indikativ funktion, och det förväntade antalet värden av det observerbara som är lika i tillstånd som det totala antalet tillstånd .
Genom att använda nya värden för , och , fortsätter iterationerna tills konvergens.