Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Zeitliches probabilistisches Schließen

Ähnliche Präsentationen


Präsentation zum Thema: "Zeitliches probabilistisches Schließen"—  Präsentation transkript:

1 Zeitliches probabilistisches Schließen
KI 15-Zeit

2 Ü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

3 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

4 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

5 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

6 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

7 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

8 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

9 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

10 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

11 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).

12 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

13 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

14 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.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) P(X2 | x1=f) ] = α <0.9, 0.2> [ <0.7, 0.3> <0.3, 0.7> ] = α <0.9, 0.2> <0.627, 0.373> = α < 0.565, > = < 0.883, 0.117> KI 15-Zeit

15 Filtern: Beispiel KI 15-Zeit

16 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

17 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

18 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

19 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(e | 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> 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>

20 Glättung: Beispiel KI 15-Zeit

21 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

22 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

23 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

24 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

25 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

26 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

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

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

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

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

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

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

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

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

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

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

37 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

38 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

39 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

40 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

41 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:

42 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

43 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

44 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

45 2-D Tracking Beispiel: Filterung
KI 15-Zeit

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

47 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

48 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

49 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

50 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

51 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

52 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

53 Spracherkennung KI 15-Zeit

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

55 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

56 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

57 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

58 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

59 Sprachlaute Signal: Auslenkung der Mikrofon-Membran als Funktion der Zeit. Repräsentation: 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

60 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

61 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

62 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

63 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

64 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

65 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

66 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

67 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

68 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

69 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

70 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:

71 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

72 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

73 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


Herunterladen ppt "Zeitliches probabilistisches Schließen"

Ähnliche Präsentationen


Google-Anzeigen