Zeitliches probabilistisches Schließen

Slides:



Advertisements
Ähnliche Präsentationen
Knapsack & Bin Packing Sebastian Stober
Advertisements

Zufallsfelder Def. Zufallsfeld: Sei V eine endliche Menge (von Orten). Für jedes v V existiere eine (endliche) Menge X(v) von Zuständen x(v). Der Raum.
Stochastik und Markovketten
Statistische Aspekte der PSG
Bayes-Netze KI 14-Bayes-Netze.
Genetische Algorithmen für die Variogrammanpassung
Simulated Annealing Marco Block & Miguel Domingo Seminar : Maschinelles Lernen und Markov KettenSommersemester 2002.
Zeitreihen Gliederung Allgemeines zu Zeitreihen
Mündliche Prüfungen … im Sekretariat anmelden !
Forschungsstatistik II Prof. Dr. G. Meinhardt SS 2005 Fachbereich Sozialwissenschaften, Psychologisches Institut Johannes Gutenberg Universität Mainz KLW-24.
Forschungsstatistik II Prof. Dr. G. Meinhardt SS 2006 Fachbereich Sozialwissenschaften, Psychologisches Institut Johannes Gutenberg Universität Mainz KLW-18.
PG 520 Intelligence Service – gezielte Informationen aus dem Internet
Zeitreihenanalyse WS 2004/2005 Michael Hauhs / Gunnar Lischeid
Induktive Statistik.
Statistische Methoden II
Konfidenzintervalle Intervallschätzung
TESTS. Worum es geht Man möchte testen, ob eine bestimmte Annahme (Hypothese) über Parameter der Realität entspricht oder nicht. Beobachtung (Stichprobe)
Die Student- oder t-Verteilung
Statistische Methoden I WS 2007/2008 Donnerstag, 31. Januar 2008 und Freitag, 1. Februar 2008 Probeklausur - statt Vorlesungen -
Erwartungswert und Varianz I Der endliche Fall Erwartungswert Varianz.
Konfidenzintervalle Intervallschätzung Jeder Beobachtung wird ein Intervall C( ) der reellen Zahlen zugeordnet Niveau Dabei ist die Wahrscheinlichkeit,
Statistische Methoden I SS 2005 Vorlesung:Prof. Dr. Michael Schürmann Zeit:Freitag (Pause: ) Ort:Hörsaal Loefflerstraße Übungen.
4. Markov-Ketten 4.1. Übergangsmatrizen
Statistische Methoden I WS 2006/2007 Probeklausur Freitag, 26. Januar statt Vorlesung - Nächste Woche Nächste Woche!
Statistische Methoden I WS 2007/2008 Donnerstag, 31. Januar 2008 und Freitag, 1. Februar 2008 Probeklausur - statt Vorlesungen -
Klausurtermin (laut Prüfungsamt) Probeklausur Freitag, 13. Juni 2003 statt Vorlesung.
Achtung Vorlesung am Montag, den 21. Juni Zeit: Uhr Ort: Kiste.
II. Wahrscheinlichkeitstheorie
Die Vorlesung am 14. Mai (Tag nach Himmelfahrt) wird auf Montag, den 17. Mai verlegt! Zeit: 16 Uhr Ort: Kiste Nächste Woche!!!!
Statistische Methoden II SS 2003 Vorlesung:Prof. Dr. Michael Schürmann Zeit:Freitag (Pause: ) Ort:Hörsaal Loefflerstraße Übungen.
Erwartungswert und Varianz I Der endliche Fall Erwartungswert Varianz.
Statistische Methoden I WS 2009/2010 Probeklausur Montag, 25. Januar statt Vorlesung -
Grundbegriffe der (deskriptiven) Statistikder Wahrscheinlichkeitstheorie.
Statistische Methoden I WS 2004/2005 Probeklausur Freitag, 21. Januar statt Vorlesung - In 2 Wochen In 2 Wochen!
Maximum-Likelihood-Schätzer ( diskreter Fall) Likelihood-Funktion mit oder M-L-Schätzer.
Berechnung des Osterdatums
Hauptseminar Automaten und Formale Sprachen
Tutorium
Wiederholung und Beispiele
Hidden Markov Modelle (HMM) (Rabiner Tutorial)
Vorlesung: ANOVA I
Eigenschaften der OLS-Schätzer
Variationsformalismus für das freie Teilchen
Deutsch als Zweitsprache: Experimentelle Methoden WS 2013/2014
Effiziente Algorithmen
Verwendung von Maschinellem Lernen in einer einfachen Computerspielumgebung Anglberger Harald Brandl Stephan Mai 2003.
Abschlussvortrag zur Studienarbeit
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen
Information und Kommunikation
Mittelwert und Standardabweichung
Die Gaußverteilung.
Versuch zur Messung der Geschwindigkeit
STATISIK LV Nr.: 1375 SS März 2005.
Konfidenzintervall und Testen für den Mittelwert und Anteile
STATISIK LV Nr.: 0021 WS 2005/ November 2005.
Grundlagen der Messtechnik
Mala Bachmann, Beispiel Velorennen (1) Velorennen mit 5 TeilnehmerInnen Wie kann die durchschnittliche Rennzeit berechnet werden?
3.3 Moving-Average-Prozesse (MA-Modelle)
Entscheidungstheorie für Unentschlossene Indecision Theory.
Stochastik ganz kurz Beispiel diskret Würfelwurf Beispiel stetig
Grundlagen der Positionsbestimmung mit Partikelfiltern
Die Binomialverteilung
SS 2009Maschinelles Lernen und Neural Computation 133 Kapitel 7: Ensemble Methoden.
Geoinformationssysteme
Prognose von Zeitreihen Hans Nübel Hans Nübel Prognose von Zeitreihen Aufbau 1.Motivation 2.Holt-Winters-Verfahren 3.Prognose.
Aufgabenstellung  gegeben ist die zeitliche Entwicklung der global gemittelten bodennahen Temperatur im Zeitraum (Dateiname= ytemp2m.obs, ascii-
 Präsentation transkript:

Zeitliches probabilistisches Schließen KI 15-Zeit

Überblick Zeit und Unsicherheit, Markov-Prozesse Inferenz: Filtern, Vorhersage, Glättung Wahrscheinlichste Erklärung (Viterbi-Algorithmus) Hidden-Markov-Modelle Kalman-Filter Dynamische Bayes-Netze (kurz) KI 15-Zeit

Zeit und Unsicherheit Ziel: Zeitabläufe verfolgen und vorhersagen Beispiele: Motormanagement; Einstellung von Medikamenten Idee: Kopiere Zustand und Evidenzvariable für jeden Zeitschritt Xt = Menge unbeobachtbarer Zustandsvariabler zur Zeit t z.B. Blutzuckert, Mageninhaltt, etc. Et = Menge beobachtbarer Evidenzvariabler zur Zeit t z.B. GemessenerBlutzuckert, Pulst, VerzehrteNahrungt Hierbei wird diskrete Zeit angenommen; Schrittweite problemabhängig. Notation: Xa:b= Xa, Xa+1, … , Xb-1, Xb KI 15-Zeit

Markov-Prozesse Konstruiere Bayes-Netz aus diskret zeitabhängigen Variablen: Was sind die Elternknoten? Markov-Annahme: Xt hängt nur von beschränkter Teilmenge der Variablen X0:t-1 ab (Markov-Prozess oder Markov-Kette) Markov-Prozess 1. Ordnung: P(Xt | X0:t-1) = P(Xt | Xt-1) Markov-Prozess 2. Ordnung: P(Xt | X0:t-1) = P(Xt | Xt-2,Xt-1) 1. Ordnung 2. Ordnung KI 15-Zeit

Markov-Prozesse Markov-Annahme für Sensoren: Sensorwert hängt nur vom aktuellen Wert der beobachteten Größe ab. P(Et | X0:t, E0:t-1) = P(Et | Xt) Beispiel: Tachowert Et hängt nur von aktueller Geschwindigkeit Xt ab, aber nicht von vergangener Xt-1. Gegenbeispiel: Wasserstandsanzeiger bei Hydrokultur Variable: Wasserstand Xt Evidenz (Beobachtungsgröße): Angezeigte Höhe Et Kein Markov-Sensor, denn falls X 10 Tage über Maximum ist, bilden sich Algen und Anzeiger klebt fest. KI 15-Zeit

Markov-Prozesse Stationärer Prozess: Welt verändert sich, aber Gesetze dieser Änderung und ihrer Beobachtung sind konstant: Übergangsmodell P(Xt | Xt-1) und Sensormodell (Beobachtungsmodell) P(Et | Xt) sind beide fest für alle t. KI 15-Zeit

Markov-Prozesse Beispiel für konstantes Übergangsmodell: X ist Wasserstand. Gieße jede Woche ca. 1l rein, Menge ist Gauss-verteilt mit Standardabweichung 0.2 l. Gegenbeispiel: Nachdem eine Pflanze vertrocknet ist, wird Mittelwert auf 1.2 l erhöht. Beispiel für konstantes Sensormodell: Waage, X ist Gewicht, E mit Gauss-verteiltem Fehler behaftete Anzeige. Feder der Waage leiert allmählich aus. KI 15-Zeit

Markov-Prozesse Realwelt: Annahme eines Markov-Prozesses 1. Ordnung stimmt meist nicht exakt ! Mögliche Verbesserungen: 1. Markov-Prozesse höherer Ordnung 2. Erweitere Zustand um andere Evidenzen (Meßgrößen) Beispiel: Bewegung eines Roboters Erweitere Zustandsbeschreibung (Position, Geschwindigkeit) um Batteriet KI 15-Zeit

Inferenz Ausgangspunkt: Stationärer Markov-Prozess 1. Ordnung mit geg. Übergangsmodell P(Xt | Xt-1) Markov-Sensor mit geg. Sensormodell P(Et | Xt) Inferenz: Verschiedene Problemtypen, die unterschiedliche Mischungen aus zwei Grundproblemen sind: Ableitung der Zufallsvariablen X aus den Evidenzen Vorhersage KI 15-Zeit

Inferenz Arten der Inferenz unterscheiden sich darin, für welche Zeitpunkte die Wahrscheinlichkeitsverteilung für X aus welchen Evidenzen e berechnet wird: Filtern: P(XT | e1:T) Berechne aktuellen Zustand XT aus aktueller Evidenz eT und vergangenen Evidenzen e1:T-1 (aber x1 … xT-1 sind unbekannt). 2. Vorhersage: P(XT+K | e1:T), k>0 Sage zukünftigen Zustand XT+K aus Evidenzen e1:T (ohne Kenntnis von X1 … XT+K) voraus. Wie Filtern, aber die jüngsten Evidenzen eT+1:T+K sind unbekannt. Glättung: P(XK | e1:T), Berechne vergangenen Zustand XK aus früheren Evidenzen e1:K-1 und späteren Evidenzen eK+1:T. 4. Wahrscheinlichste Erklärung: arg maxX1:T P(X1:T | e1:T) Berechne alle X1:T aus allen Evidenzen e1:T. Bsp.: Worterkennung. KI 15-Zeit

Inferenz: Filtern Gegeben: Übergangsmodell P(Xt | Xt-1) und Sensormodell P(Et | Xt) Gesucht: XT aus e1:T Idee: Suche Rekursionsbeziehung der Zustandsschätzungen, so dass, beginnend mit Annahme für X0 , aus t auch t+1 berechnet werden kann. Für t = 0, 1, … T-1: P(Xt+1 | e1:t+1) = P(Xt+1 | e1:t,et+1) = α P(et+1 | Xt+1,e1:t) P(Xt+1 | e1:t) (Bayes) = α P(et+1 | Xt+1) P(Xt+1 | e1:t) (Markov-Sensor) = α P(et+1 | Xt+1) Σxt P(Xt+1 | xt,e1:t) P(xt | e1:t) (Xt aussummieren) = α P(et+1 | Xt+1) Σxt P(Xt+1 | xt) P(xt | e1:t) (Markov-Prozess) = α Sensormodellt+1 Σxt Übergangsmodellt+1,t Zustandsverteilungt Struktur der Rekursionsbeziehung: f1:t+1 = Forward(f1:t, et+1) mit f1:t = P(Xt | e1:t) Zeit- und Speicherbedarf konstant für jeden Schritt von t-1 t (d.h. unabhängig von t).

Filtern: Beispiel Leben im Bunker: Keine direkte Beobachtung der Außenwelt Regen X wird nur daraus erschlossen, ob Chef Regenschirm E dabei hat (Chef darf raus) Zeitschritte: Tage KI 15-Zeit

Filtern: Beispiel Übergangsmodell: P(Xt | Xt-1) = P(Regent | Regent-1) mit P(Xt | Xt-1= wahr) = <0.7, 0.3> P(Xt | Xt-1= falsch) = <0.3, 0.7> Sensormodell: P(Et | Xt) = P(Schirmt | Regent) mit P(Et | Xt = wahr) = <0.9, 0.1> P(Et | Xt = falsch) = <0.2, 0.8> Frage: Was ist Regenwahrscheinlichkeit P(X2) am zweiten Tag (T=2), wenn Tag 1: Regenschirm, d.h. e1 = w. Tag 2: Regenschirm, d.h. e2 = w. Annahme über Regenwahrscheinlichkeit am Tag 0: P(X0) = <0.5, 0.5> KI 15-Zeit

Filtern: Beispiel P(Xt+1|e1:t+1) = α P(et+1 | Xt+1) Σxt P(Xt+1 | xt) P(xt | e1:t) P(X2 | e1:2) = α P(e2 | X2) Σx1 P(X2 | x1) P(x1 | e1) P(X1 | e1) = α P(e1 | X1) Σx0 P(X1 | x0) P(x0) = α P(e1 | X1) [ P(X1 | x0 =w) P(x0=w) + P(X1 | x0 =f) P(x0=f) ] = α P(e1 | X1) [ <0.7, 0.3> 0.5 + <0.3, 0.7> 0.5 ] = α P(e1 | X1) <0.5, 0.5> = α <0.9, 0.2> <0.5, 0.5> = α <0.45, 0.1> = <0.818, 0.182> = α P(e2 | X2) [ P(X2 | x1=w) 0.818 + P(X2 | x1=f) 0.182 ] = α <0.9, 0.2> [ <0.7, 0.3> 0.818 + <0.3, 0.7> 0.182 ] = α <0.9, 0.2> <0.627, 0.373> = α < 0.565, 0.075 > = < 0.883, 0.117> KI 15-Zeit

Filtern: Beispiel KI 15-Zeit

Vorhersage Gegeben: Übergangsmodell P(Xt | Xt-1) und Sensormodell P(Et | Xt) Gesucht: XT+K aus e1:T Idee: Filterung bis T Dann K weitere Schritte ohne neue Evidenzen (eT+1:T+K fehlen!) Dafür Rekursionsformel: T+k  T+k+1 Für k = 0, 1, … K-1: P(XT+k+1 | e1:T) = ΣxT+k P(XT+k+1 | xT+k) P(xT+k | e1:T) = ΣxT+k ÜbergangsmodellT+k+1,T+k ZustandsverteilungT+k Je weiter über letzte Evidenz hinaus vorausberechnet wird, desto mehr wird Verteilung allein vom Übergangsmodell bestimmt. KI 15-Zeit

Glättung Gegeben: Übergangsmodell P(Xt | Xt-1) und Sensormodell P(Et | Xt) Gesucht: XK aus e1:T wobei 1 <= K < T Idee: „Vorwärts-Rückwärts-Algorithmus“: Filterung von 1 bis K und „Rückwärtsfilterung“ von T bis K. KI 15-Zeit

Glättung Teile Evidenzen e1:T in Evidenzen bis K und nach K: e1:K, eK+1:T P(XK | e1:T) = P(XK | e1:K, eK+1:T) = α P(XK | e1:K) P(eK+1:T | XK, e1:K) (Bayes) = α P(XK | e1:K) P(eK+1:T | XK) (Markov-Sensor) = α f1:K bK+1:T Rückwärts-Rekursion für k = T-1, T-2, ... K+1, K: P(ek+1:T | Xk) = Sxk+1 P(ek+1:T | Xk, xk+1) P(xk+1 | Xk) = Sxk+1 P(ek+1:T | xk+1) P(xk+1 | Xk) (bed. unabh.) = Sxk+1 P(ek+1, ek+2:T | xk+1) P(xk+1 | Xk) = Sxk+1 P(ek+1 | xk+1) P(ek+2:T | xk+1) P(xk+1 | Xk) bk+1:T = Backward(bk+2:T, ek+1:T) mit bk+1:T = P(ek+1:T | Xk) KI 15-Zeit

Glättung: Beispiel Wie bisher: P(Xt | Xt-1= wahr) = <0.7, 0.3> P(Et | Xt = wahr) = <0.9, 0.1> P(Xt | Xt-1= falsch) = <0.3, 0.7> P(Et | Xt = falsch) = <0.2, 0.8> P(X0) = <0.5, 0.5>, e1 = w, e2 = w. P(X1 | e1:2) = ? Allg.: P(XK | e1:T) = α P(XK | e1:K) P(eK+1:T | XK), hier: T=2, K=1 Hier: P(X1 | e1:2) = α P(X1 | e1) P(e2 | X1) Aus Filterung: P(X1 | e1) = <0.818, 0.182> P(ek+1:T | Xk) = Sxk+1 P(ek+1 | xk+1) P(ek+2:T | xk+1) P(xk+1 | Xk) P(e2 | X2) = Sx2 P(e2 | x2) P(e3:2 | x2) P(x2 | X1) mit P(e3:2 | x2) = 1 = 0.9 x 1 x <0.7, 0.3> + 0.2 x 1 x <0.3, 0.7> = <0.69, 0.41> P(X1 | e1:2) = α <0.818, 0.182> x <0.69, 0.41> = <0.833, 0.177>

Glättung: Beispiel KI 15-Zeit

Wahrscheinlichste Erklärung Problem: Finde die wahrscheinlichste Erklärung für beobachtete Ereignisse Genauer: Finde wahrscheinlichste Folge versteckter Zustände, die eine beobachtete Folge von Evidenzen bewirkt. Für T Schritte gibt es 2T mögliche Zustandsfolgen (für boolesche Zustände) Naiver Ansatz: Berechne durch Glättung jede Wahrscheinlichkeit einzeln. Aber: Wahrscheinlichste Folge verlangt Maximierung gemeinsamer Wahrscheinlichkeit ! D.h. wahrscheinlichste Folge ist nicht Folge der wahrscheinlichsten Zustände ! Lösung: Viterbi-Algorithmus Anwendungen: Entzerrung und Korrektur fehlerhafter Signale, z.B. bei Handys, WLAN, Festplatten; Spracherkennung KI 15-Zeit

Wahrscheinlichste Erklärung Wahrscheinlichster Pfad zu xt+1 = wahrscheinlichster Pfad zu xt plus ein weiterer Schritt. max x1 … xt P(x1, …, xt, Xt+1 | e1:t+1) = P(et+1 | Xt+1) max xt [ P(Xt+1 | xt) max x1 … xt-1 P(x1,…,xt-1,xt | e1:t) ] Wie Filtern (f1:t+1 = α P(et+1 | Xt+1) Σxt P(Xt+1 | xt) f1:t), aber: f1:t = P(Xt | e1:t) wird ersetzt durch m1:t = max x1 … xt-1 P(x1,…,xt-1,Xt | e1:t), d.h. m1:t(i) ist die Wahrscheinlichkeit des wahrscheinlichsten Pfades zu Zustand i. 2. Ersetze Summation über xt durch Maximierung über xt (Viterbi-Algorithmus): m1:t+1 = P(et+1 | Xt+1) maxxt [ P(Xt+1 | xt) m1:t ] KI 15-Zeit

Viterbi-Algorithmus Berechne sukzessive alle m1:t. Speichere dabei jeweils „besten Vorgänger“ für jeden Zustand (dicke Pfeile). Wähle den wahrscheinlichsten Zustand zur Zeit t. Gehe von dort zurück zum besten Vorgänger etc. KI 15-Zeit

Hidden-Markov-Modelle Bisher keine formale Beschreibung für Übergangs- und Sensormodelle. Modell für Markov-Prozess mit Zuständen, die durch eine Variable beschrieben werden: Hidden-Markov-Modell (HMM). Xt sei eine diskrete Variable, Et die zugehörige Evidenz (meist ebenfalls eine einzelne Variable). Domäne von Xt sei {1 … S}. Übergangsmatrix: Tij = P(Xt = j | Xt-1= i), z.B. Sensormatrix Ot für jeden Zeitschritt, Diagonalelemente sind P(et | Xt = i) : z.B. mit E1= wahr O1= KI 15-Zeit

Hidden-Markov-Modelle Mit Übergangsmatrix Tij = P(Xt = j | Xt-1= i) und Sensormatrix (Ot)ii = P(et | Xt = i) : ergibt sich Matrix-Schreibweise, z.B. für Glättung: f1:t+1 = α Ot+1TT f1:t (statt P(Xt+1 | e1:t+1) = α P(et+1 | Xt+1) Σxt P(Xt+1 | xt) P(xt | e1:t) ) bk+1:t = TOk+1 bk+2:t (statt P(ek+1:T | Xk) = Sxk+1P(ek+1 | xk+1) P(ek+2:T | xk+1) P(xk+1| Xk) ) KI 15-Zeit

Country-Dance-Algorithmus Vorwärts-Rückwärts Algorithmus P(Xk | e1:T) = α f1:k bk+1:T mit f1:t+1 = α Ot+1TT f1:t (1) bk+1:t = TOk+1 bk+2:t (2) braucht Zeit O(S2 T) und Speicher O(S T) um die gesamte Folge zu glätten, denn alle f müssen beim Vorwärts-Durchgang gespeichert werden. Vermeide bei Glättung die Speicherung aller f, indem auch der Vorwärts-Algorithmus rückwärts angewandt wird: f1:t+1 = α Ot+1TT f1:t O-1t+1 f1:t+1 = α TT f1:t α´(TT) -1 O-1t+1 f1:t+1 = f1:t (3) Verbesserter Algorithmus: Vorwärts-Durchgang berechnet f1:T (also das letzte f) mit Gl. (1). Rückwärts-Durchgang berechnet jeweils f1:k mittels Gl. (3) und bk+1:T mit Gl. (2). KI 15-Zeit

Country-Dance-Algorithmus fT bT eT f1 b1 e1 KI 15-Zeit

Country-Dance-Algorithmus fT bT eT f1 b1 e1 KI 15-Zeit

Country-Dance-Algorithmus fT bT eT f1 b1 e1 KI 15-Zeit

Country-Dance-Algorithmus fT bT eT f1 b1 e1 KI 15-Zeit

Country-Dance-Algorithmus fT bT eT f1 b1 e1 KI 15-Zeit

Country-Dance-Algorithmus fT bT eT f1 b1 e1 KI 15-Zeit

Country-Dance-Algorithmus fT bT eT f1 b1 e1 KI 15-Zeit

Country-Dance-Algorithmus fT bT eT f1 b1 e1 KI 15-Zeit

Country-Dance-Algorithmus fT bT eT f1 b1 e1 KI 15-Zeit

Country-Dance-Algorithmus fT bT eT f1 b1 e1 KI 15-Zeit

Kalman-Filter Modellierung von Systemen, die durch eine Menge stetiger (insb. zeitabhängiger) Variabler beschrieben werden. Z.B. Trajektorienverfolgung: Zufallsvariable sind Ortskoordinaten und deren Zeitableitung. Bsp.: Vogel fliegt durch Wald, teilweise von Bäumen verdeckt. Versuche Trajektorie vorherzusagen. Weitere Beipiele: Planeten, Roboter, Ökosystem, Volkswirtschaft, Flugzeuge (insb. Fusion GPS - Trägheitsnavigation), … Bayes-Netz für lineares dynamisches System mit Position Xt und Positions- messung Zt: KI 15-Zeit

Kalman-Filter Bsp. 1D-Trajektorie: Beobachte X-Koordinate Zeitabstand der Beobachtungen: Dt Annahme: Geschwindigkeit näherungsweise konstant Einfache Trajektorien-Vorhersage: Um Meßfehler und nicht konstante Geschwindigkeit zu berücksichtigen, wird Gauß-verteilter Fehler angenommen: KI 15-Zeit

Anpassen der Gauß-Verteilungen Annahme: Gaußsche a-priori Verteilung, lineares Gaußsches Übergangsmodell, lineares Gaußsches Sensormodell. Vorhersageschritt: Wenn P(Xt | e1:t) Gauß-verteilt ist, dann ist die vorhergesagte Verteilung P(Xt+1 | e1:t) = P(Xt+1 | xt) P(xt | e1:t) dxt ebenfalls eine Gaußverteilung. Mit P(Xt+1 | e1:t) ist dann auch P(Xt+1 | e1:t+1) = α P(et+1 | Xt+1) P(Xt+1 | e1:t) Gauß-verteilt. Daher ist P(Xt | e1:t) eine (multivariate) Gaußverteilung N(mt,St) für alle t mit Mittelwertmatrix m und Kovarianzmatrix S. KI 15-Zeit

Interpretation P(Xt | e1:t) ist (und bleibt) Gaußverteilung, deren Parameter (Mittelwerte, Kovarianzen) sich mit der Zeit ändern. D.h. P(Xt | e1:t) kann für alle t mit der gleichen Anzahl Parameter beschrieben werden. Da sich die Gaußverteilung beliebig verbreitern kann, ist ggf. nur noch sehr wenig nutzbare Information über X vorhanden, aber … … diese kann zumindest durch eine konstante Zahl von Parametern ausgedrückt werden ! Dies gilt im allgemeinen (d.h. nichtlinearen, nicht-Gaußschen) Fall nicht: Im allgemeinen wächst der Aufwand zur Beschreibung einer a-posteriori Verteilung mit der Zeit unbegrenzt ! KI 15-Zeit

1-D Beispiel: Random Walk Gaußscher „Random Walk“ auf der X-Achse (z.B. krabbelnder Käfer): Zufallsvariable Xt A-priori Verteilung (Käfer wird mit begrenzter Genauigkeit in Startposition gebracht): P(x0) = N(m0, s0, x0) Übergangsmodell (Käfer krabbelt auf Zufallspfad): P(xt+1 | xt) = N(xt, sx, xt+1) Sensormodell (Positionsmessung mit begrenzter Genauigkeit): P(zt | xt) = N(zt, sz, xt) Erste Beobachtung: z1 P(x1 | z1) = N(m1, s1, x1) mit Allgemein:

1-D Beispiel: Random Walk Startverteilung: m0 = 0, s0 = 1 Übergang ist Rauschen mit sx = 2 Sensorrauschen sz = 1 Erste Beobachtung: z1 = 2.5 Vorhersage P(x1) ist flacher als P(x0) wegen Übergangsrauschen Mittelwert m1 von P(x1 | z1) kleiner als 2.5, da Vorhersage P(x1) berücksichtigt wird. KI 15-Zeit

Kalman-Filter: Allgemeiner Fall n Zufallsvariable, zusammengefasst als Vektor x. Vektor der n Sensorwerte: z. Übergangsmodell: P(xt+1 | xt) = N(F xt, Sx, xt+1) Sensormodell: P(zt | xt) = N(H xt, Sz, zt) F: n x n - Matrix des linearen Übergangsmodells H: n x n - Matrix des linearen Sensormodells Sx: n x n - Kovarianzmatrix des Übergangsrauschens Sz: n x n - Kovarianzmatrix des Sensorrauschens Gaußverteilung mit n Variablen: N(m, S, x) = a exp ( -½ (x-m)T S-1 (x-m) ) KI 15-Zeit

Kalman-Filter: Allgemeiner Fall Aktualisierung: mt+1 = F mt + Kt+1 (zt+1– H F mt ) St+1 = (1 – Kt+1) L wobei L = F St FT + Sx Kt+1 = L HT (H L HT + Sz)-1 K heißt Kalman-Gain(-Matrix). Interpretation: F mt : Gemäß lin. Modell vorhergesagtes m. H F mt : Vorhergesagte Beobachtung zt+1– HFmt: Differenz Vorhersage – Beob. Kt+1: Bewertet Vertrauenswürdigkeit der Beobachtung (dient als Gewicht gegenüber linearer Vorhersage). St und Kt sind unabhängig von der beobachteten Sequenz  Offline-Berechnung. KI 15-Zeit

2-D Tracking Beispiel: Filterung KI 15-Zeit

2-D Tracking Beispiel: Glättung KI 15-Zeit

Grenzen des Kalman-Filters Einfacher Kalman-Filter nicht anwendbar, falls Übergangsmodell nichtlinear. Erweiterter Kalman-Filter: Behandlung von Nichtlinearitäten durch Annahme lokaler Linearität in der Umgebung von xt = mt Versagt, falls System wesentliche Nichtlinearität bei xt = mt hat. Bsp.: Vogel fliegt auf Baum zu. Lösung: Switching-Kalman-Filter mehrere parallele Filter Spezialfall der DBNs

Dynamische Bayes-Netze DBN ist temporales Wahrscheinlichkeitsmodell … … mit beliebiger Anzahl von Zustandsvariablen Xt, und Evidenzvariablen Et … … für jeden Zeitschritt. Beispiele: Regenschirmnetz; Robotersteuerung KI 15-Zeit

DBNs und HMMs Jedes HMM ist ein DBN mit einer Variablen. Jedes DBN mit diskreten Variablen kann als HMM dargestellt werden: Fasse alle Variablen des DBN zu einer HMM-Variablen zusammen HMM-Variable hat für jede DBN-Wertekombination einen Wert Vorteil DBN: „Zerlegte“ Zustände  Exponentiell weniger Parameter ! Bsp: 20 boolsche Zustandsvariable mit je 3 Eltern DBN hat 20 x 23 = 160 Parameter, HMM dagegen 220 x 220 KI 15-Zeit

DBNs und Kalman-Filter Jeder Kalman-Filter ist ein DBN, aber nur wenige DBNs sind Kalman-Filter. Realwelt erfordert nicht-Gaußsche Wahrscheinlichkeiten. KI 15-Zeit

Exakte Inferenz in DBNs Naive Methode: „Aufrollen“, d.h. explizite Repräsentation aller Zeitschritte, dann Algorithmus für statische Bayes-Netze anwenden. Problem: Speicher und Zeit wachsen mit O(t). Rollup filtering: Zeitschritt t+1 hinzufügen, dann Variablen von Zeitschritt t „aussummieren“  Konstanter Zeit- und Speicherbedarf, aber Aufwand wächst exponentiell in # Zustandsvariablen.  Näherungsverfahren erforderlich, z.B. particle filtering. KI 15-Zeit

Zusammenfassung In temporalen Modellen wird die Welt durch Zustands- und Sensorvariablen für jeden Zeitschritt repräsentiert. Markov-Annahmen für Zustandsübergänge und Sensoren sowie Annahme eines stationären Prozesses ermöglichen Beschreibung durch: Übergangsmodell P(Xt | Xt-1) beschreibt Veränderung der Welt Sensormodell P(Et | Xt) beschreibt Beobachtung der Welt Typische Aufgaben: Filtern, Vorhersage, Glättung, wahrscheinlichste Folge … … sind mit konstanten Kosten pro Zeitschritt möglich. HMMs haben nur eine diskrete Zustandsvariable; Anwendung: Spracherkennung Kalman-Filter erlauben n Zustandsvariable Dynamische Bayes-Netze subsummieren HMMs und Kalman-Filters; exakte Inferenz ist jedoch nicht realisierbar (hoher Aufwand) Particle filtering ist eine gute Näherung für Filterung mit DBNs. KI 15-Zeit

Spracherkennung KI 15-Zeit

Überblick Sprache als probabilistische Inferenz Phonologie Sprachlaute Wortaussprache Wortfolgen KI 15-Zeit

Spracherkennung Spracherkennung: Erkenne Folge von Wörtern aus dem Signal Sprachverstehen: Interpretation der Wortfolge Stelle Beziehung zwischen Wortfolge und anderen Daten her, z.B. anderen Sensordaten oder WB. Sprachsignale sind höchst variabel, mehrdeutig, verrauscht, etc. Besonderes Problem: Im Gegensatz zu gewöhnlichen Klassifikationsaufgaben (Schema: Signal  Merkmalsextraktion  Klassifikator  Symbole) ist Sprachsignal so komplex, dass Erkennung auf mehreren Abstraktionsebenen gleichzeitig erfolgen muss. KI 15-Zeit

Spracherkennung als probabilistische Inferenz Aufgabe: Was ist die wahrscheinlichste Wortfolge für ein gegebenes Sprachsignal? D.h. wähle Wörter so, dass P(Wörter | Signal) maximiert wird. Anwendung der Bayes-Regel: P(Wörter | Signal) = α P(Signal | Wörter) P(Wörter) Damit wird Dekomposition in akustisches Modell + Sprachmodell erreicht. Die Wörter sind die (versteckte) Zustandsfolge, das Signal ist die Beobachtungsfolge. KI 15-Zeit

Phone und Phoneme Phonologie: Menschliche Sprache besteht aus 40 – 50 Phonen (Lauten) Phone werden durch die Artikulatoren (Lippen, Zähne, Zunge, Stimmbänder, Luftdruck) gebildet Phoneme: Kleinste bedeutungsunterscheidende Einheiten (d.h. ein einzelnes Phonem hat selbst keine Bedeutung, aber Austausch eines Phonems ändert die Wortbedeutung). Phoneme ≠ Buchstaben: Vgl. rasten – rasten Allophone: Lautliche Varianten eines Phonems Phoneme sind eine von den Phonen abstrahierte Repräsentationsebene, die zwischen Signal und Wörtern liegt. Damit Aufteilung in Akustisches Modell = Signalmodell + Aussprachemodell KI 15-Zeit

Phone und Phoneme DARPA-Alphabet (ARPAbet) für American English: Z.B. „ceiling“: [s iy l ich ng] / [s iy l ix ng] / [s iy l en] KI 15-Zeit

Sprachlaute Signal: Auslenkung der Mikrofon-Membran als Funktion der Zeit. Repräsentation: 8-16 kHz Abtastrate, 8-12 Bit Quantisierung Verarbeitung erfolgt in überlappenden Frames von 30 ms. Datenreduktion: Jedes Frame wird durch Merkmale repräsentiert. Merkmale: Z.B. Peaks im Leistungsspektrum Analogsignal Abgetastetes, digitalisiertes Signal Frames mit Merkmalen KI 15-Zeit

Lautmodelle Merkmale der Frames in P(Merkmale | Laute) werden kompakter repräsentiert durch eine natürliche Zahl, z.B. in [0…255] (nach erfolgter Vektorquantisierung) die Parameter eines Gaußschen Mischungsmodells Darstellung der inneren Struktur von Lauten durch Dreizustands-Lautmodell: Jeder Laut besteht aus Onset, Mid, End. Z.B. [t] hat stummen Anfang, explosive Mitte, Zischen am Ende P(Merkmale | Laute, Phase) KI 15-Zeit

Lautmodelle Problem: Laute klingen je nach Kontext, d.h. in einer Umgebung von anderen Lauten, unterschiedlich (Koartikulationseffekt) Koartikulationseffekt entsteht, weil Artikulatoren nicht instantan ihre Position verändern können. Kontext-Erfassung durch Triphone-Modell: Jeder von n Lauten wird durch n2 verschiedene Laute repräsentiert, die von den beiden benachbarten Lauten abhängen. Z.B. [t] in „star“ wird repräsentiert durch [t(s,aa)] Kombination aus Dreizustands-Modell und Triphone-Modell vergrößert Repräsentation von n auf 3n3. Aufwand lohnt sich ! KI 15-Zeit

Lautmodelle: Beispiel Laut-HMM für [m]: Zu jedem der drei Zustände des Laut-HMMs gehören die Ausgabewahrscheinlichkeiten für die Merkmale (z.B. VQ-Clusterzentren): KI 15-Zeit

Aussprachemodelle für Wörter Jedes Wort wird durch eine Wahrscheinlichkeitsverteilung über einer Lautfolge dargestellt, diese wird durch ein HMM repräsentiert: P([towmeytow] | „tomato“) = P([towmaatow] | „tomato“) = 0.1 P([tahmeytow] | „tomato“) = P([tahmaatow] | „tomato“) = 0.4 Struktur wird manuell erstellt Übergangswahrscheinlichkeiten werden gelernt. KI 15-Zeit

Wortmodelle Wortmodell besteht aus Lautmodell und Aussprachemodell. Wortmodell für Tomato: Zustand eines Wort-HMM = Laut + Lautzustand Z.B. hat Wort-HMM für Tomato den Zustand [m]Mid. KI 15-Zeit

Erkennung einzelner Wörter Lautmodelle + Wortmodelle bestimmen P(e1:t | Wort) für einzelne Wörter. Erkennung eines Wortes bedeutet Maximierung von P(Wort | e1:t) = α P(e1:t | Wort) P(Wort). Die a priori Wahrscheinlichkeit P(Wort) ergibt sich aus der Worthäufigkeit. P(e1:t | Wort) wird rekursiv berechnet. Sei l1:t = P(Xt, e1:t). Verwende Rekursion l1:t+1 = VORWÄRTS(l1:t, et+1) und dann P(e1:t | Wort) = S xt l1:t(xt). Einzel-Wort Erkennung erreicht mit Training 95 – 99 % Genauigkeit. KI 15-Zeit

Erkennung fortlaufender Sprache Erkennung fortlaufender Sprache ≠ Folge von Einzel-Wort-Erkennungen ! Benachbarte Wörter sind stark korreliert Folge wahrscheinlichster Wörter ≠ wahrscheinlichste Wortfolge Segmentierung von Wörtern: Schwierig, da kaum Pausen zwischen den Wörtern, die sich unmittelbar im Signal abzeichnen. Koartikulation zwischen Wörtern, z.B. „next thing“ Systeme zur Erkennung fortlaufender Sprache haben 60 – 80 % Genauigkeit. KI 15-Zeit

Sprachmodell Sprachmodell spezifiziert die a priori Wahrscheinlichkeit jeder Wortfolge, diese ist gegeben durch die Kettenregel: P(w1…wn) = Pi=1n P(wi | w1…wi-1) Die meisten Terme sind schwer zu schätzen, daher Näherung durch Bigram Modell: P(wi | w1…wi-1) ≈ P(wi | wi-1), d.h. Markov-Annahme 1. Stufe. Training: Zähle alle Wort-Paare in einem großen Text-Korpus. Kompliziertere Modelle wie Trigrams (d.h. P(wi | w1…wi-1) ≈ P(wi | wi-1, wi-2) oder Grammatik-Modelle bringen gewisse Verbesserungen. KI 15-Zeit

Erkennung von Wortfolgen: Kombiniertes HMM Kombiniere Wortmodell und Bigram-Sprachmodell zu einem HMM. Zustände des kombinierten HMM sind gegeben durch das Wort, den Laut und den Lautzustand. Bsp.: [m]TomatoMid Übergänge: Lautzustand – Lautzustand (innerhalb eines Lautes) Laut – Laut (innerhalb eines Wortes) Wort-Endzustand – Wort-Anfangszustand Repräsentationsaufwand: Für W Wörter mit durchschnittlich L Dreizustandslauten hat kombiniertes HMM 3LW Zustände. KI 15-Zeit

Erkennung von Wortfolgen: Kombiniertes HMM Wahrscheinlichste Lautfolge wird durch den Viterbi-Algorithmus ermittelt, damit ist auch eine Wortfolge bestimmt. Zugleich wird auch Wort-Segmentierungsproblem gelöst. Aber: Die aus der wahrscheinlichsten Lautfolge ermittelte Wortfolge ist nicht unbedingt die wahrscheinlichste Wortfolge. Grund: Wahrscheinlichkeit einer Wortfolge = Summe der Wahrscheinlichkeiten aller zugehörigen Zustandsfolgen ! Lösung: A*-Decoder (Jelinek 1969) KI 15-Zeit

A*-Decoder Verwende A*-Suche um wahrscheinlichste Wortfolge zu finden Repräsentation durch Graph: Wort = Knoten in Graph Wortfolge = Pfad in Graph Nachfolger eines Knotens = Mögliche nachfolgende Wörter Graph für Satzlänge S hat S Ebenen Erinnerung A*: Geschätzte Kosten über n zum Ziel = f(n) = g(n)+h(n), wobei g(n) = bisher angefallene Kosten bis n, h(n) = geschätzte Kosten von n zum Ziel. Hier: Für Bigram-Modelle ist g(wi-1, wi) = – log P(wi | wi-1) Gesamte Pfadkosten K einer Wortfolge: K(w1 … wS) = Si=1S – log P(wi | wi-1) = – log Pi=1S P(wi | wi-1) Damit: Kürzester Pfad = wahrscheinlichste Wortfolge Heuristikfunktion h:

DBN für die Spracherkennung Deterministisch,fest Stochastisch,gelernt Deteministisch,fest Phonem-Index Übergang Phonem Artikulatoren Beobachtung Weitere Variable können leicht hinzugefügt werden, z.B. Akzent, Geschlecht, Alter, Geschwindigkeit. Zweig und Russell (1998) erreichten bis 40 % Fehlerreduktion gegenüber HMMs. KI 15-Zeit

Zusammenfassung Seit den 70ern wird Spracherkennung als probabilistische Inferenz formuliert. Evidenz = Sprachsignal Versteckte Variable = Lautfolgen und Wörter „Kontext-Effekte“ wie Koartikulation werden durch Zustandserweiterung behandelt. KI 15-Zeit

Zusammenfassung Standard-Ansatz: Lautmodell + Aussprachemodell ergibt Wortmodell. Wortmodelle werden mit Bigram-Sprachmodellen zu gemeinsamem HMM vereint. Ermittlung der wahrscheinlichten Lautfolge durch Viterbi-Algorithmus Wahrscheinlichste Wortfolge mit A*-Decoder Die kontinuierliche Erkennung von Sprache ist ein ungelöstes Problem, die größten Schwierigkeiten liegen in der Variabilität natürlicher Sprache (Dialekt, Geschwindigkeit etc. etc.) und den Hintergrundgeräuschen in natürlicher Umgebung. KI 15-Zeit