Ultralytics YOLO27: Trag dich in die Warteliste ein.
YOLO lizenzieren
Zurück zum Ultralytics-Glossar

Hidden Markov Model (HMM)

Ein verborgenes Markow-Modell (HMM) leitet aus verrauschten Beobachtungen eine Folge verborgener Zustände ab. Behandelt werden seine Parameter, der Viterbi-Algorithmus und Anwendungsbereiche.

Ein Hidden-Markov-Modell (HMM) ist ein Wahrscheinlichkeitsmodell für eine Sequenz, in der ein System zwischen Zuständen wechselt, die nicht direkt beobachtbar sind. Jeder verborgene Zustand erzeugt eine beobachtbare Ausgabe. Anhand einer Sequenz von Beobachtungen, etwa Audio-Frames oder DNA-Buchstaben, berechnet ein HMM die Wahrscheinlichkeit jeder Sequenz verborgener Zustände – zum Beispiel der Phoneme hinter dem Audio oder der Genregionen hinter den Buchstaben. „Markov“ bezieht sich auf die zentrale Annahme des Modells: Der nächste Zustand hängt nur vom aktuellen Zustand ab. Leonard Baum und seine Kolleginnen und Kollegen entwickelten die Theorie Ende der 1960er-Jahre. HMMs waren anschließend jahrzehntelang eine wichtige Grundlage für die Spracherkennung. Da sie vollständig auf expliziten Wahrscheinlichkeiten beruhen, sind sie weiterhin ein Standardwerkzeug für die Zeitreihenanalyse und Bioinformatik sowie ein klassisches Beispiel für statistische KI.

Bestandteile eines HMM#

Ein HMM mit N verborgenen Zuständen wird durch drei Wahrscheinlichkeitsmengen definiert:

  • Anfangswahrscheinlichkeiten (π): Die Wahrscheinlichkeit, in jedem verborgenen Zustand zu beginnen.
  • Übergangswahrscheinlichkeiten (A): Eine N × N-Matrix, deren Eintrag A[i, j] die Wahrscheinlichkeit bezeichnet, in einem Schritt von Zustand i zu Zustand j zu wechseln. Dadurch bilden die verborgenen Zustände eine Markov-Kette.
  • Emissionswahrscheinlichkeiten (B): Die Wahrscheinlichkeit jeder Beobachtung unter Berücksichtigung des aktuellen Zustands. Für diskrete Beobachtungen wird eine Tabelle verwendet; kontinuierliche Beobachtungen, etwa akustische Merkmale, werden mit Verteilungen wie Gaußschen Mischverteilungen modelliert.

Zwei Annahmen halten das Modell handhabbar: Jeder Zustand hängt nur vom vorherigen Zustand ab, und jede Beobachtung hängt nur vom aktuellen Zustand ab. Über die Zeit aufgerollt bildet das Modell eine Kette verborgener Zustände, von denen jeder eine Beobachtung erzeugt:

Drei klassische HMM-Aufgaben#

Lawrence Rabiners viel zitierte Einführung von 1989 ordnete den Einsatz von HMMs anhand von drei Fragen. Für jede gibt es eine dynamische Lösung aus der dynamischen Programmierung, deren Aufwand bei T Beobachtungen mit N² × T wächst – statt mit den Nᵀ möglichen Zustandssequenzen:

  • Auswertung: Wie wahrscheinlich ist eine Beobachtungssequenz unter einem bestimmten Modell? Der Vorwärtsalgorithmus summiert über alle verborgenen Pfade. So wählt ein Erkennungssystem das Wortmodell aus, das eine Äußerung am besten erklärt.
  • Dekodierung: Welche Sequenz verborgener Zustände erklärt die Beobachtungen am besten? Der Viterbi-Algorithmus, den Andrew Viterbi 1967 zur Dekodierung von Faltungscodes veröffentlichte, findet den wahrscheinlichsten Pfad. Der Vorwärts-Rückwärts-Algorithmus liefert die Wahrscheinlichkeit jedes Zustands zu jedem Zeitschritt.
  • Lernen: Welche Parameter passen am besten zu einer Menge von Beobachtungssequenzen? Der Baum-Welch-Algorithmus, ein Verfahren der Erwartungsmaximierung, schätzt π, A und B anhand nicht annotierter Sequenzen. Sind die Zustandssequenzen annotiert, genügt es, Übergänge und Emissionen zu zählen.

Die Viterbi-Dekodierung lässt sich mit wenigen Zeilen NumPy umsetzen. In diesem Modell ist die Aktivität einer Person – Gehen oder Laufen – verborgen. Ein Tracker erfasst pro Frame einen Geschwindigkeitsmesswert, und Aktivitäten bleiben tendenziell von Frame zu Frame bestehen:

import numpy as np

states = ["walk", "run"]
start = np.array([0.8, 0.2])  # Anfangswahrscheinlichkeiten der Zustände
trans = np.array([[0.9, 0.1], [0.1, 0.9]])  # Aktivitäten bleiben tendenziell über mehrere Frames hinweg bestehen
emit = np.array([[0.7, 0.25, 0.05], [0.1, 0.3, 0.6]])  # P(Geschwindigkeit | Zustand) für langsam, mittel, schnell
obs = [0, 0, 2, 0, 0, 1, 2, 2, 1, 2]  # Geschwindigkeitsmesswerte pro Frame

# Viterbi: beste Log-Wahrscheinlichkeit, jeden Zustand zu erreichen, plus Rückverweise
logp = np.log(start) + np.log(emit[:, obs[0]])
back = []
for o in obs[1:]:
    scores = logp[:, None] + np.log(trans)  # Zeilen: vorheriger Zustand, Spalten: nächster Zustand
    back.append(scores.argmax(axis=0))
    logp = scores.max(axis=0) + np.log(emit[:, o])

# Die wahrscheinlichste Zustandssequenz ausgehend vom besten Endzustand rückwärts verfolgen
path = [int(logp.argmax())]
for pointers in reversed(back):
    path.insert(0, int(pointers[path[0]]))
print("Speeds: ", " ".join(["slow", "medium", "fast"][o] for o in obs))
print("Decoded:", " ".join(states[s] for s in path))

Der Code dekodiert walk walk walk walk walk run run run run run. Der hohe Messwert in Frame 3 bleibt „Gehen“, denn ein Wechsel zum Laufen und zurück würde zwei unwahrscheinliche Übergänge erfordern. Die mittleren Messwerte in den Frames 6 und 9 werden aufgrund der sie umgebenden hohen Messwerte als „Laufen“ eingestuft. Ein Klassifikator pro Frame, der Übergänge ignoriert, hätte Frame 3 als Laufen eingestuft.

  • Kalman-Filter: Führt dieselbe Vorhersage- und Aktualisierungsrekursion für kontinuierliche Zustände mit linearer Dynamik und Gaußschem Rauschen aus. Der Vorwärtsalgorithmus des HMM ist das Gegenstück für diskrete Zustände.
  • Bayessche Netze: Ein HMM ist das einfachste dynamische Bayessche Netz mit einer verborgenen und einer beobachteten Variable pro Zeitschritt.
  • Markov-Entscheidungsprozess (MDP): Ergänzt eine Markov-Kette mit beobachteten Zuständen um Aktionen und Belohnungen. Das ist die Grundlage des bestärkenden Lernens.
  • Rekurrente neuronale Netze und Transformer: Lernen anhand großer Datensätze weitreichende, nichtlineare Abhängigkeiten und haben HMMs bei den meisten Sprach- und Textaufgaben abgelöst. HMMs benötigen deutlich weniger Daten, und jede ihrer Wahrscheinlichkeiten lässt sich direkt ablesen.
  • Zustandsraummodelle (SSMs): Deep-Learning-Schichten wie Mamba greifen die Zustandsraumidee aus der Regelungstechnik auf und aktualisieren einen kontinuierlichen verborgenen Vektor anhand erlernter, deterministischer Dynamik.

Anwendungen in der Praxis#

  • Spracherkennung: Von den 1980er-Jahren bis Anfang der 2010er-Jahre modellierten die meisten Spracherkennungssysteme jedes Phonem als kleines HMM mit Gaußschen Mischverteilungen für die Emissionen. Anschließend übernahmen tiefe neuronale Netze in hybriden Systemen das Emissionsmodell, und später ersetzten End-to-End-Modelle das HMM vollständig.
  • Bioinformatik: Profil-HMMs beschreiben Familien verwandter Protein- oder DNA-Sequenzen. HMMER nutzt sie, um in Sequenzdatenbanken nach weitläufig verwandten Sequenzen zu suchen, und bildet eine Grundlage der Proteinfamiliendatenbank Pfam. Außerdem kennzeichnen Genfinder mit HMMs Abschnitte eines Genoms als codierend oder nicht codierend.
  • Wortartenbestimmung: Frühe statistische Verfahren der Sprachverarbeitung kennzeichneten Wörter durch Viterbi-Dekodierung von Tag-Sequenzen als Substantive, Verben und andere Wortarten.
  • Aktivitätserkennung: Sequenzen von Körperhaltungen oder Messwerten tragbarer Sensoren werden zu Aktivitäten wie Stehen, Gehen oder Fallen dekodiert. Die Ultralytics-Lösung zur Trainingsüberwachung verfolgt eine solche Sequenz mit zwei Zuständen: Mithilfe eines Gelenkwinkels aus den Posenschätzung-Keypoints von YOLO26 – standardmäßig des Ellenbogens – kennzeichnet sie jede Person als „oben“ oder „unten“. Dabei wechselt sie oberhalb von 145° und unterhalb von 90° den Zustand und zählt bei jedem Wechsel von oben nach unten eine Wiederholung.

Lösungen entdecken

Computer Vision im Sport

Computer Vision im Sport

Entdecke, wie Ultralytics YOLO die Sportbildanalyse voranbringt – mit Spieler- und Ballverfolgung, Leistungsanalysen, Erkenntnissen für das Coaching und der Rehabilitation von Athleten.
Mehr erfahren
Computer Vision für Luftbilder

Computer Vision für Luftbilder

Verwandle Drohnen- und Luftbilder mit Ultralytics YOLO in Echtzeit-Erkenntnisse für Landwirtschaft, Aquakultur, Naturschutz und Geodatenanalyse.
Mehr erfahren
Computer Vision in der Luft- und Raumfahrt

Computer Vision in der Luft- und Raumfahrt

Setze Computer Vision in der Luft- und Raumfahrt mit Ultralytics YOLO ein – für Flugzeuginspektionen, die Erkennung von Fremdkörpern auf Start- und Landebahnen, den Bodenbetrieb am Flughafen und die Erkennung von Verbundwerkstofffehlern.
Mehr erfahren
Computer Vision im Sicherheitsbereich

Computer Vision im Sicherheitsbereich

Schütze jeden Standort mit Ultralytics YOLO-Modellen. Vision-KI ermöglicht die Überwachung von Grundstücksgrenzen, die Erkennung von Bedrohungen, die Kennzeichenerkennung und die Sicherheit am Arbeitsplatz.
Mehr erfahren
Computer Vision in der Robotik

Computer Vision in der Robotik

Mach Maschinen mit Ultralytics YOLO-Modellen leistungsfähiger. Vision-KI in der Robotik ermöglicht autonome Navigation, Wahrnehmung, Objektverfolgung und Steuerung in Echtzeit.
Mehr erfahren
Bildverarbeitung in der Logistik

Bildverarbeitung in der Logistik

Optimiere die Logistik mit Ultralytics YOLO-Modellen. Vision AI ermöglicht die Paketprüfung, Sortierung und Fahrzeugverfolgung sowie die Sicherheitsüberwachung von Lagerhäusern in Echtzeit.
Mehr erfahren
Bildverarbeitung im Einzelhandel

Bildverarbeitung im Einzelhandel

Gestalte den Einzelhandel mit Ultralytics YOLO-Modellen neu. Vision AI ermöglicht Bestandsverfolgung, Regalüberwachung und Warteschlangenmanagement und liefert bessere Einblicke in das Kundenverhalten.
Mehr erfahren
Bildverarbeitung im Gesundheitswesen

Bildverarbeitung im Gesundheitswesen

Entwickle Lösungen für das Gesundheitswesen mit Ultralytics YOLO-Modellen. Vision AI ermöglicht im Gesundheitswesen schnellere medizinische Bildgebung, bessere Diagnostik und die Überwachung von Patienten.
Mehr erfahren
Computer Vision in der Fertigung

Computer Vision in der Fertigung

Optimiere die Fertigung mit Ultralytics-YOLO-Modellen. Vision AI ermöglicht Qualitätskontrolle, Fehlererkennung, die Überprüfung der Einhaltung von Vorgaben zu persönlicher Schutzausrüstung und die Automatisierung von Montagelinien.
Mehr erfahren
Computer Vision in der Automobilbranche

Computer Vision in der Automobilbranche

Setze Computer Vision in der Automobilbranche mit Ultralytics-YOLO-Modellen ein. Vision AI verbessert die Verkehrssicherheit, Fahrerassistenz und Fahrzeugautomatisierung – für intelligentere Straßen.
Mehr erfahren
Computer Vision in der Landwirtschaft

Computer Vision in der Landwirtschaft

Setze mit Ultralytics YOLO-Modellen KI für Bildverarbeitung in der intelligenten Landwirtschaft ein. Ermögliche die Überwachung von Nutzpflanzen, die Verfolgung von Nutztieren und Präzisionslandwirtschaft für höhere und nachhaltigere Erträge.
Mehr erfahren

Lass uns gemeinsam die Zukunft der KI gestalten!

Starte deine Reise in die Zukunft des maschinellen Lernens