Ich fand das Hidden-Markov-Modell sehr interessant und logisch. Hier möchte ich diese erstaunliche Wahrscheinlichkeitstheorie erklären und eine Vorstellung davon vermitteln, die in großem Umfang beim maschinellen Lernen, NLP und Deep Studying eingesetzt werden kann. Dieser Weblog wird nicht so sehr auf Mathematik ausgerichtet sein, deshalb werde ich versuchen, ihn so interessant wie möglich zu gestalten.
Hidden-Markov-Modell (HMMs): HMMs sind probabilistische grafische Modelle, die darauf ausgelegt sind, anhand einer Reihe beobachteter Variablen die beste Reihenfolge oder den besten Pfad verborgener Zustände zu finden. Die „verborgenen Zustände“ stellen die zugrunde liegenden Prozesse oder Variablen dar, die nicht direkt beobachtbar sind, und der „beste Pfad“ bezieht sich auf die Folge verborgener Zustände, die die Gesamtwahrscheinlichkeit der beobachteten Daten maximiert. Etwas verwirrend, oder?! Lassen Sie es mich anhand eines Beispiels erklären und wir werden dieses Beispiel bis zum Ende fortsetzen.
Nehmen wir an, es gibt zwei Wetterbedingungen (sonnig und regnerisch) und basierend auf diesen Bedingungen kann Robert glücklich oder traurig sein, und die Wahrscheinlichkeiten sind hier ebenfalls angegeben
Wenn Robert nun fünf Tage lang in der Stimmung ist: Glücklich, traurig, glücklich, traurig, glücklich
Bedeutet dies, dass das Wetter an diesen Tagen jeweils Sonne, Regen, Sonne, Regen und Sonne ist?
Nein, denn so funktioniert das Wetter normalerweise nicht.
Schauen wir uns nun das HMM-Modell an.
Lassen Sie mich nun alle Grundbegriffe hier erklären –
· Übergangswahrscheinlichkeit — Die Übergangswahrscheinlichkeit bezieht sich auf die Wahrscheinlichkeit, dass ein sonniger Tag in einen regnerischen Tag übergeht. Technisch gesehen stellt es die Wahrscheinlichkeit des Übergangs von einem Zustand in einen anderen dar.
P(Sonne->Regen)=0,2 und P(Regen->Sonne)=0,4
P(Sonne->Sonne)=0,8 und P(Regen->Regen)=0,6
· Emissionswahrscheinlichkeit – Die Wahrscheinlichkeit, ein bestimmtes Ergebnis aus einem bestimmten verborgenen Zustand im Modell zu beobachten. Grundsätzlich die Wahrscheinlichkeiten von Beobachtungen.
· Verborgener Zustand – nicht beobachtbare Variablen, die beobachtete Symbole oder Ergebnisse erzeugen. Beispielsweise sind die Wolken oder das Wetter ein verborgener Zustand und Regen ist ein beobachtetes Ergebnis.
Wie berechnen wir nun die Übergangswahrscheinlichkeit oder Emissionswahrscheinlichkeit?
Die Antwort ist, dass wir diese aus historischen Beobachtungen berechnen. Lass uns ein Beispiel haben-
Übergangswahrscheinlichkeit–
- Gesamtvorkommen (Sonne -> Sonne oder Regen) = 10
Sonne->Sonne = 8 Wahrscheinlichkeit (Sonne->Sonne)=0,8
Sonne->Regen = 2 Wahrscheinlichkeit (Sonne->Regen) = 0,2
Ähnlich,
- Gesamtvorkommen (Regen->Regen oder Sonne) =5
Regnerisch->regnerisch =3 Wahrscheinlichkeit(regnerisch->regnerisch)=0,6
Regen->Sonne= 2 Wahrscheinlichkeit (Regen->Sonne)=0,4
Emissionswahrscheinlichkeit –
- Gesamtvorkommen eines sonnigen Tages mit fröhlicher/trauriger Stimmung =10 (Endknoten wird nicht berücksichtigt, da wir die Stimmung an diesem Tag nicht kennen)
Sonne und Glück = 8 Wahrscheinlichkeit (Sonne und Glück)=0,8
Sonne und Traurigkeit = 2 Wahrscheinlichkeit (Sonne und Traurigkeit)=0,2
Ähnlich,
- Gesamtvorkommen (regnerisch UND glücklich/traurig) =5
Regnerisch und traurig =3 Wahrscheinlichkeit(regnerisch und traurig)=0,6
Regnerisch, traurig, glücklich = 2 Wahrscheinlichkeit (regnerisch und glücklich) = 0,4
Que- Nun, wie groß ist die Wahrscheinlichkeit, dass ein zufälliger Tag sonnig oder regnerisch ist?
Gesamtvorkommen = 15
Sonniger Tag =10, Wahrscheinlichkeit (Sonne)=2/3
Regentag =5, Wahrscheinlichkeit (Regentag)=1/3
Jetzt haben wir alle Wahrscheinlichkeiten und können jede Frage mit diesen Wahrscheinlichkeiten beantworten.
Wie hoch ist beispielsweise die Wahrscheinlichkeit eines sonnigen Tages, wenn gestern ein regnerischer Tag battle?
Dies ist eine Übergangswahrscheinlichkeit, daher wäre die Antwort 0,4
Versuchen wir nun, diese Frage zu beantworten: Wenn Robert heute glücklich ist, wie hoch ist die Wahrscheinlichkeit, dass es ein sonniger oder regnerischer Tag ist?
Für solche Probleme verwenden wir den Satz von Bayes
Aber raten Sie mal, wir werden diese Formel nicht verwenden, sondern einen logischeren Weg gehen
Hier ist additionally dieses Diagramm, anhand dessen wir alle diese Wahrscheinlichkeiten leicht verstehen können
Auf diesem Bild können Sie die Wahrscheinlichkeiten deutlich erkennen
Wahrscheinlichkeit, dass der Tag sonnig ist, vorausgesetzt, er battle traurig=P(sonnig/traurig)=2/5
Wahrscheinlichkeit, dass der Tag regnerisch ist, vorausgesetzt, er battle traurig=P(regnerisch/traurig)=3/5
Wahrscheinlichkeit, dass der Tag sonnig ist, vorausgesetzt, er battle glücklich =P(sonnig/glücklich)=8/10
Wahrscheinlichkeit, dass der Tag regnerisch ist, vorausgesetzt, er battle glücklich = P(regnerisch/glücklich) = 2/10
Im Second haben wir alle diese Wahrscheinlichkeiten ziemlich einfach, oder!!
Lassen Sie uns die State of affairs nun etwas verkomplizieren
Frage — Wenn Robert drei Tage lang glücklich, traurig, glücklich battle, wie battle dann das Wetter??
Machen wir das zunächst zwei Tage lang. Robert battle additionally glücklich und traurig, dann haben wir vier Möglichkeiten für das Wetter (Sonne, Sonne), (Sonne, Regen), (Regen, Sonne) und (Regen, Regen).
Nehmen wir an (Sonne, Regen) und Roberts Stimmung battle glücklich und traurig
Auf ähnliche Weise berechnen wir die Wahrscheinlichkeiten aller vier Kombinationen und die Kombination mit der höchsten Wahrscheinlichkeit wäre unsere endgültige Antwort.
Mit höchster Wahrscheinlichkeit wird unsere endgültige Antwort additionally sonnig und sonnig sein.
Drei Tage lang werden wir 8 Wetterkombinationen haben. Jetzt können Sie sich vorstellen, dass das bei n Tagen 2^n sein wird. Das kann additionally sehr hektisch sein, wenn wir dieser Brute-Pressure-Methode folgen. aber Wallah! Wir haben dafür eine Lösung.
Viterbi-Algorithmus – Der Viterbi-Algorithmus berechnet effizient die wahrscheinlichste Folge verborgener Zustände (Wetter) in einem HMM unter Berücksichtigung einer beobachteten Folge (Stimmung von Robert) von Symbolen. Dies wird erreicht, indem eine dynamische Programmiertabelle verwaltet und diese rekursiv von hyperlinks nach rechts gefüllt wird. Jede Zelle in der Tabelle stellt die Wahrscheinlichkeit der wahrscheinlichsten Zustandssequenz bis zu diesem Punkt und den entsprechenden verborgenen Zustand an diesem Punkt dar.
Nehmen wir an, wir haben im vorherigen Beispiel 6 Beobachtungen und müssen das Wetter für 6 Tage vorhersagen
Was wir tun werden, ist: Wir müssen den besten Weg bis zur letzten Beobachtung wählen.
wie man die Wahrscheinlichkeiten aller Pfade berechnet
Auf der linken Seite haben wir mit unseren Berechnungen begonnen. Damit Robert glücklich ist, berechnen wir die bedingte Wahrscheinlichkeit des Wetters. In diesem Fall können wir additionally sehen, dass es höchstwahrscheinlich sonnig ist.
Nun wählen wir den sonnigen ersten Tag.
Und wenn es nun ein sonniger Tag ist, beginnen wir mit der Berechnung für den zweiten Tag.
Sonniger Tag ->Sonniger Tag
oder
Sonniger Tag -> regnerischer Tag
Auch hier haben wir die bedingten Wahrscheinlichkeiten berechnet, wie Sie oben sehen können, und folgen der maximalen Wahrscheinlichkeit.
Wir verfolgen diesen Prozess bis zum Ende, schließlich werden wir unseren besten Weg finden.
Das wäre additionally unsere endgültige Vorhersage für das Wetter
sonnig->sonnig->sonnig->regnerisch->regnerisch->sonnig
Bewerbungen –
- Kennzeichnung von Wortarten: HMMs werden üblicherweise für die Kennzeichnung von Wortarten verwendet, wo sie bei der Bestimmung der geeigneten grammatikalischen Kategorie (Substantiv, Verb, Adjektiv usw.) für jedes Wort in einem Satz helfen.
- Roboterlokalisierung: HMMs spielen eine entscheidende Rolle bei Roboterlokalisierungs- und Navigationsaufgaben. Durch die Nutzung von Sensordaten und Zustandsübergängen helfen HMMs Robotern, ihre Place innerhalb einer Umgebung einzuschätzen und fundierte Entscheidungen auf der Grundlage der Wahrscheinlichkeitsinformationen zu treffen.
- Genetik: HMMs finden bei der Analyse genetischer Sequenzen Verwendung. Sie können zur Identifizierung von Mustern, Motiven oder regulatorischen Elementen in DNA-Sequenzen verwendet werden und so Einblicke in die Genfunktion und genetische Störungen liefern.
- Spracherkennung: HMMs werden in großem Umfang in Spracherkennungssystemen eingesetzt. Durch die Modellierung der probabilistischen Beziehungen zwischen Sprachlauten und Wörtern ermöglichen HMMs eine genaue Erkennung und Transkription gesprochener Sprache.
Zusammenfassend lässt sich sagen, dass Hidden-Markov-Modelle (HMMs) eine entscheidende Rolle bei Aufgaben der Verarbeitung natürlicher Sprache (NLP) spielen, indem sie die probabilistischen Beziehungen zwischen beobachteten Symbolen und zugrunde liegenden verborgenen Zuständen erfassen. HMMs werden häufig bei Sequenzkennzeichnungsaufgaben wie der Kennzeichnung von Wortarten und der Erkennung benannter Entitäten verwendet. Der Viterbi-Algorithmus, ein dynamischer Programmieralgorithmus, berechnet effizient die wahrscheinlichste Folge versteckter Zustände in einem HMM bei gegebener beobachteter Folge von Symbolen. Durch die Nutzung der Markov-Eigenschaft und dynamischer Programmiertechniken bietet der Viterbi-Algorithmus ein leistungsstarkes Werkzeug zum Dekodieren und Finden der optimalen Zustandssequenz. HMMs und der Viterbi-Algorithmus bilden im NLP einen grundlegenden Rahmen für die Modellierung sequenzieller Daten und die Lösung verschiedener Aufgaben der Informationsextraktion und -generierung.
Sie können sich auch dieses erstaunliche Video ansehen (Credit score) – https://youtu.be/kqSzLo9fenk