17.07.2013 Aufrufe

vorlesung_ss_08_af_0..

vorlesung_ss_08_af_0..

vorlesung_ss_08_af_0..

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

Teil 1 – Motivation<br />

Lineare Prädiktion<br />

Quelle-Filter-Modell der Spracherzeugung<br />

Herleitung der linearen Prädiktion<br />

Levinson-Durbin-Rekursion<br />

Anwendungsbeispiel<br />

Menschliche Spracherzeugung<br />

und deren Modellierung<br />

Adaptive Filter<br />

E. Hänsler und G. Schmidt<br />

E. Hänsler und G. Schmidt, TU Darmstadt, Seite 2


Spracherzeugung<br />

Quelle: Eppinger / Herter: Sprachverarbeitung, Hanser-Verlag, 1993<br />

Quelle-Filter-Modell<br />

Sprachgrundfrequenz<br />

Impulsgenerator<br />

Rauschgenerator<br />

Prinzip:<br />

Luftstrom, von der Lunge<br />

kommend, regt die<br />

Stimmbänder zum Schwingen<br />

an bzw. erzeugt ein rauschartiges<br />

Signal (bei geöffneten<br />

Stimmbändern).<br />

Der Mund-, Nasen- und Rachenraum<br />

verhält sich wie ein<br />

steuerbarer Resonanzkörper,<br />

der einige wenige Frequenzen<br />

nicht dämpft (diese werden<br />

Formantfrequenzen genannt).<br />

E. Hänsler und G. Schmidt, TU Darmstadt, Seite 3<br />

σ(n)<br />

Vokaltraktfilter<br />

s(n)<br />

E. Hänsler und G. Schmidt, TU Darmstadt, Seite 4


Literaturhinweise<br />

Basistext:<br />

E. Hänsler / G. Schmidt: Acoustic Echo and Noise Control – Kapitel 6 (Linear Prediction),<br />

Wiley, 2004<br />

Sprachsignalverarbeitung:<br />

P. Vary, R. Martin: Digital Transmi<strong>ss</strong>ion of Speech Signals – Kapitel 2 (Models of Speech<br />

Production and Hearing), Wiley 2006<br />

J. R. Deller, J. H. l. Hansen, J. G. Proakis: Discrete-Time Proce<strong>ss</strong>ing of Speech Signals –<br />

Kapitel 3 (Modeling Speech Production), IEEE Pre<strong>ss</strong>, 2000<br />

Weitere Grundlagen:<br />

E. Hänsler: Statistische Signale: Grundlagen und Anwendungen – Kapitel 6 (Linearer<br />

Prädiktor), Springer, 2001<br />

M. S. Hayes: Statistical Digital Signal Proce<strong>ss</strong>ing and Modeling – Kaptitel 4 und 5 (Signal<br />

Modeling, The Levinson Recursion), Wiley, 1996<br />

Teil 2 – Grundlagen<br />

Grundlagen der<br />

linearen Prädiktion<br />

E. Hänsler und G. Schmidt, TU Darmstadt, Seite 5<br />

E. Hänsler und G. Schmidt, TU Darmstadt, Seite 6


Ansatz<br />

Vorhersage des aktuellen Signalwertes auf der Basis der letzten N Werte:<br />

N−1 X<br />

bs(n) = hi s(n − 1 − i)<br />

s(n − 1)<br />

i=0<br />

h0<br />

z −1<br />

z −1<br />

Dabei sind:<br />

bs (n) : Ein Schätzwert für s(n)<br />

N : Länge/Ordnung des Prädiktors<br />

hi : Prädiktorkoeffizienten<br />

Optimierungskriterium<br />

Optimierung:<br />

z −1<br />

Lineares Prädiktionsfilter<br />

z −1<br />

h1 h2<br />

hN−1<br />

bs (n)<br />

E. Hänsler und G. Schmidt, TU Darmstadt, Seite 7<br />

Bestimmung der Filterkoeffizienten hi so, da<strong>ss</strong> eine Ziel- bzw. Kostenfunktion<br />

optimiert wird!<br />

Kostenfunktion:<br />

n £ ¤ o<br />

2<br />

E s(n) − bs (n) → min<br />

| {z }<br />

e(n)<br />

Strukturbild:<br />

s(n)<br />

z −1<br />

[h0, ...,hN−1] T<br />

Lineares<br />

Prädiktionsfilter<br />

e(n)<br />

bs (n)<br />

E. Hänsler und G. Schmidt, TU Darmstadt, Seite 8


Spektrales Entfärben<br />

Kostenfunktion:<br />

E © e 2 (n) ª → min<br />

Leistung<strong>ss</strong>tarke Frequenzanteile<br />

werden zunächst<br />

am stärksten gedämpft<br />

(Parseval).<br />

Dies führt auf ein spektrales<br />

Einebnen (Weißmachen)<br />

des Fehlerspektrums<br />

Inverse Filterstruktur<br />

s(n)<br />

s(n)<br />

z −1<br />

FIR-Filter (Sender)<br />

[h0, ...,hN−1] T<br />

z −1 [h0, ...,hN−1] T<br />

E. Hänsler und G. Schmidt, TU Darmstadt, Seite 9<br />

e(n)<br />

bs (n)<br />

Allpol-Filter (Empfänger)<br />

e(n)<br />

bs (n)<br />

Eigensch<strong>af</strong>ten:<br />

Das inverse Prädiktorfehlerfilter<br />

ist ein Allpol-Filter<br />

(IIR-Filter).<br />

Die kaskadierte Struktur<br />

aus Prädiktorfehlerfilter<br />

und dazu inversem<br />

Filter kann zur (verlustlosen)<br />

Datenreduktion<br />

beim Senden und<br />

Empfangen verwendet<br />

werden.<br />

E. Hänsler und G. Schmidt, TU Darmstadt, Seite 10


Bestimmung der Prädiktorkoeffizienten<br />

Beispiele – Teil 1<br />

(Herleitung an der T<strong>af</strong>el)<br />

E. Hänsler und G. Schmidt, TU Darmstadt, Seite 11<br />

Erstes Beispiel:<br />

Eingang<strong>ss</strong>ignal s(n) : weißes Rauschen mit Leistung σ (mittelwertfrei)<br />

Prädiktorordnung: N = 3<br />

Vorhersage um einen Takt: L =1<br />

2 0<br />

Daraus ergibt sich:<br />

⎡<br />

σ<br />

R<strong>ss</strong> = ⎣<br />

2 0 0 0<br />

0 σ 2 0 0<br />

0 0 σ 2 0<br />

iT r <strong>ss</strong>(1) =<br />

h<br />

0, 0, 0<br />

h = R −1<br />

<strong>ss</strong> r h iT <strong>ss</strong>(1) = 0, 0, 0<br />

⎤<br />

⎦ R −1<br />

bzw.<br />

<strong>ss</strong><br />

1<br />

=<br />

σ2 ⎡ ⎤<br />

1 0 0<br />

⎣ 0 1 0 ⎦<br />

0 0 0 1<br />

, d.h. es kann keine Vorhersage getroffen<br />

werden bzw. die beste Vorhersage ist der Mittelwert<br />

und der ist Null.<br />

E. Hänsler und G. Schmidt, TU Darmstadt, Seite 12


Beispiele – Teil 2<br />

Zweites Beispiel:<br />

Eingang<strong>ss</strong>ignal s(n) : Sprache,<br />

abgetastet mit fs =8kHz<br />

Prädiktorordnung: N =16<br />

Vorhersage um einen Takt: L =1<br />

Einmalige Optimierung<br />

der Prädiktorkoeffizienten<br />

für die gesamte Sprachpa<strong>ss</strong>age<br />

Neueinstellung der<br />

Prädiktorkoeffizienten<br />

alle 64 Abtasttakte<br />

Schätzung der Autokorrelationsfunktion – Teil 1<br />

Problem:<br />

Scharmittelwerte sind in den meisten Anwendungen nicht bekannt.<br />

E. Hänsler und G. Schmidt, TU Darmstadt, Seite 13<br />

Abhilfe:<br />

Schätzung der Scharmittelwerte durch Zeitmittelwerte (Ergodizität annehmen).<br />

n<br />

o X<br />

E s(n) s(n + l)<br />

s(n) s(n + l)<br />

Annahme:<br />

s0(n) sei eine Musterfunktion des Zufallsproze<strong>ss</strong>es s(n) .<br />

n<br />

Schätzverfahren:<br />

Es existieren eine Reihe von Schätzverfahren, die sich hinsichtlich der Eigensch<strong>af</strong>ten der geschätzen<br />

Autokorrelationsfunktion unterscheiden (Erwartungstreue, positive Definitheit der AKF-Matrix).<br />

E. Hänsler und G. Schmidt, TU Darmstadt, Seite 14


Schätzung der Autokorrelationsfunktion – Teil 2<br />

Beispiel – „Autokorrelationsmethode“:<br />

Berechnung: ⎧<br />

L−1−l<br />

1 P<br />

⎪⎨ L s0(n) s0(n + l), für l ≥ 0,<br />

n=0<br />

br <strong>ss</strong>(l) =<br />

L−1<br />

⎪⎩ 1 P<br />

L s0(n) s0(n + l), für lL<br />

br<strong>ss</strong>(l) = br<strong>ss</strong>(−l)<br />

br<strong>ss</strong>(l) · br<strong>ss</strong>(0)<br />

n o<br />

E br<strong>ss</strong>(l) · r<strong>ss</strong>(l)<br />

Die resultierende (geschätzte) Autokorrelationsmatrix ist positiv-definit.<br />

Die resultierende (geschätzte) Autokorrelationsmatrix hat Töplitz-Struktur.<br />

Levinson-Durbin-Rekursion – Teil 1<br />

Problem:<br />

Die Lösung des Gleichung<strong>ss</strong>ystems<br />

R<strong>ss</strong>hopt = r<strong>ss</strong>(L)<br />

E. Hänsler und G. Schmidt, TU Darmstadt, Seite 15<br />

hat – je nach Art und Weise der Schätzung der Autokorrelationsmatrix – einen Aufwand<br />

proportional zu N bzw. . Zusätzlich können numerische Probleme auftauchen, falls die<br />

Matrix schlecht konditioniert ist.<br />

2<br />

N 3<br />

R<strong>ss</strong><br />

Ziel:<br />

Robustes Verfahren, welches ohne direkte Invertierung von auskommt.<br />

Lösung:<br />

Ausnutzen der (Töplitz-) Struktur der Matrix .<br />

R<strong>ss</strong><br />

Rekursion über die Prädiktorordnung<br />

Kombination von Vorwärts- und Rückwärtsprädiktion<br />

Literatur:<br />

J. Durbin: The Fitting of Time Series Models, Rev. Int. Stat. Inst., Nr. 28, Seiten 233 - 244, 1960<br />

N. Levinson: The Wiener RMS Error Criterion in Filter Design and Prediction, J. Math. Phys., Nr. 25,<br />

Seiten 261 - 268, 1947<br />

R<strong>ss</strong><br />

E. Hänsler und G. Schmidt, TU Darmstadt, Seite 16


Levinson-Durbin-Rekursion – Teil 2 (Rückwärtsprädiktion)<br />

Gleichung<strong>ss</strong>ystem der Vorwärtsprädiktion:<br />

r(1)<br />

r(2)<br />

r(3)<br />

..<br />

=<br />

=<br />

=<br />

h0 r(0)<br />

h0 r(1)<br />

h0 r(2)<br />

.<br />

+<br />

+<br />

+<br />

h1 r(1)<br />

h1 r(0)<br />

h1 r(1)<br />

...<br />

+<br />

+<br />

+<br />

...<br />

...<br />

...<br />

. ..<br />

+<br />

+<br />

+<br />

hN−1 r(N − 1)<br />

hN−1 r(N − 2)<br />

hN−1 r(N − 3)<br />

.<br />

r(N) = h0 r(N − 1) + h1 r(N − 2) + ... + hN−1 r(0)<br />

Umsortieren der Gleichungsreihenfolge:<br />

für h i = h opt,i<br />

r(N) = h0 r(N − 1) + h1 r(N − 2) + ... + hN−1 r(0)<br />

r(N − 1)<br />

r(N − 2)<br />

.<br />

=<br />

=<br />

h0 r(N − 2)<br />

h0 r(N − 3)<br />

.<br />

+<br />

+<br />

h1 r(N − 3)<br />

h1 r(N − 4)<br />

...<br />

+<br />

+<br />

...<br />

...<br />

. ..<br />

+<br />

+<br />

hN−1 r(1)<br />

hN−1 r(2)<br />

.<br />

r(1) = h0 r(0) + h1 r(1) + ... + hN−1 r(N − 1)<br />

für h i = h opt,i<br />

E. Hänsler und G. Schmidt, TU Darmstadt, Seite 17<br />

Levinson-Durbin-Rekursion – Teil 3 (Rückwärtsprädiktion)<br />

Nach dem Umsortieren der Gleichungsreihenfolge:<br />

r(N)<br />

r(N − 1)<br />

r(N − 2)<br />

.<br />

=<br />

=<br />

=<br />

h0 r(N − 1)<br />

h0 r(N − 2)<br />

h0 r(N − 3)<br />

.<br />

+<br />

+<br />

+<br />

h1 r(N − 2)<br />

h1 r(N − 3)<br />

h1 r(N − 4)<br />

.<br />

+<br />

+<br />

+<br />

...<br />

...<br />

...<br />

. ..<br />

+<br />

+<br />

+<br />

hN−1 r(0)<br />

hN−1 r(1)<br />

hN−1 r(2)<br />

.<br />

r(1) = h0 r(0) + h1 r(1) + ... + hN−1 r(N − 1)<br />

Umsortieren der Elementreihenfolge auf der rechten Seite:<br />

für h i = h opt,i<br />

r(N)<br />

r(N − 1)<br />

r(N − 2)<br />

.<br />

=<br />

=<br />

=<br />

hN−1 r(0)<br />

hN−1 r(1)<br />

hN−1 r(2)<br />

.<br />

+<br />

+<br />

+<br />

hN−2 r(1)<br />

hN−2 r(0)<br />

hN−2 r(1)<br />

..<br />

+<br />

+<br />

+<br />

...<br />

...<br />

...<br />

. . .<br />

+<br />

+<br />

+<br />

h0 r(N − 1)<br />

h0 r(N − 2)<br />

h0 r(N − 3)<br />

.<br />

r(1) = hN−1 r(N − 1) + hN−2 r(N − 2) + ... + h0 r(0)<br />

für h i = h opt,i<br />

E. Hänsler und G. Schmidt, TU Darmstadt, Seite 18


Levinson-Durbin-Rekursion – Teil 4 (Rückwärtsprädiktion)<br />

Nach dem Umsortieren der Elementreihenfolge auf der rechten Seite:<br />

r(N)<br />

r(N − 1)<br />

r(N − 2)<br />

..<br />

=<br />

=<br />

=<br />

hN−1 r(0)<br />

hN−1 r(1)<br />

hN−1 r(2)<br />

.<br />

+<br />

+<br />

+<br />

hN−2 r(1)<br />

hN−2 r(0)<br />

hN−2 r(1)<br />

.<br />

+<br />

+<br />

+<br />

...<br />

...<br />

...<br />

. . .<br />

+<br />

+<br />

+<br />

h0 r(N − 1)<br />

h0 r(N − 2)<br />

h0 r(N − 3)<br />

.<br />

r(1) = hN−1 r(N − 1) + hN−2 r(N − 2) + ... + h0 r(0)<br />

Matrix-Vektor-Schreibweise:<br />

für h i = h opt,i<br />

⎡ ⎤ ⎡<br />

r(N )<br />

⎢<br />

r(N − 1) ⎥ ⎢<br />

⎥<br />

⎢ ⎥ =<br />

⎢<br />

⎣ . ⎦ ⎣<br />

r(0)<br />

r(1)<br />

..<br />

r(1)<br />

r(0)<br />

.<br />

...<br />

...<br />

. ..<br />

⎤ ⎡<br />

⎤<br />

r(N − 1) hopt,N − 1<br />

r(N − 2) ⎥ ⎢<br />

⎥ ⎢<br />

h ⎥<br />

opt,N − 2 ⎥<br />

⎥ ⎢<br />

⎥<br />

. ⎦ ⎣ . ⎦<br />

|<br />

r(1)<br />

{z } |<br />

r(N − 1) r(N − 2)<br />

{z<br />

... r(0)<br />

} |<br />

hopt,0<br />

{z }<br />

˜r <strong>ss</strong>(1)<br />

R<strong>ss</strong><br />

˜h opt<br />

E. Hänsler und G. Schmidt, TU Darmstadt, Seite 19<br />

Levinson-Durbin-Rekursion – Teil 5 (Rückwärtsprädiktion)<br />

Matrix-Vektor-Schreibweise:<br />

˜r<strong>ss</strong>(1) = R<strong>ss</strong> ˜ hopt<br />

Symmetrieüberlegungen: h<br />

iT ˜r <strong>ss</strong>(1) = r(N), r(N − 1), ..., r(1)<br />

=<br />

.......... r(l)=r(−l) einsetzen<br />

h<br />

iT r(−N ), r(−N +1), ..., r(−1)<br />

= r<strong>ss</strong>(−N)<br />

Rückwärtsprädiktion um N Takte:<br />

˜r<strong>ss</strong>(1) = R<strong>ss</strong> ˜ hopt<br />

r<strong>ss</strong>(−N) = R<strong>ss</strong> ˜ hopt<br />

˜hopt = R −1<br />

<strong>ss</strong> r<strong>ss</strong>(−N)<br />

s(n) s(n − N − 1) e(n)<br />

z −N−1<br />

z −1<br />

˜hopt<br />

bs (n − N − 1)<br />

E. Hänsler und G. Schmidt, TU Darmstadt, Seite 20


Levinson-Durbin-Rekursion – Teil 6 (Rekursionsgleichungen)<br />

Levinson-Durbin-Rekursion – Teil 7 (Veranschaulichung)<br />

Vorhergesagtes Signal für ein Prädiktionsfilter der Länge N:<br />

ˆs ( N) (n) =<br />

N−1 X<br />

h<br />

i=0<br />

(N)<br />

N−2 X<br />

i s(n − 1 − i) = h<br />

i=0<br />

(N)<br />

i s(n − 1 − i) + h (N)<br />

N−1s(n − N)<br />

Rekursionsgleichung h einsetzen:<br />

(N)<br />

= h (N−1)<br />

− h (N)<br />

i<br />

Vorwärtsprädiktor<br />

der Länge N-1<br />

i<br />

N−1 h(N−1)<br />

N−2−i<br />

Neu hinzugekommener<br />

Signalwert<br />

(Herleitung an der T<strong>af</strong>el)<br />

E. Hänsler und G. Schmidt, TU Darmstadt, Seite 21<br />

ˆs<br />

Innovation<br />

z }| {<br />

| {z } | {z } | {z }<br />

( N) (n) =<br />

N−2 X ³<br />

h<br />

i =0<br />

(N−1)<br />

i − h (N)<br />

N−1 h(N−1)<br />

´<br />

( N)<br />

N−2−i s(n − 1 − i) + h N−1s(n − N)<br />

=<br />

N−2 X<br />

h<br />

i =0<br />

(N−1)<br />

i s(n − 1 − i) − h (N)<br />

N−2 X<br />

N−1 h<br />

i =0<br />

(N−1)<br />

N−2−is(n − 1 − i) + h(N)<br />

N−1s(n − N)<br />

=<br />

N−2 X<br />

h<br />

i =0<br />

(N−1)<br />

i s(n − 1 − i)+h (N)<br />

Ã<br />

N−2 X<br />

N−1 s(n − N) − h<br />

i =0<br />

(N−1)<br />

!<br />

N−2−is(n − 1 − i)<br />

Rückwärtsprädiktor<br />

der Länge N-1<br />

E. Hänsler und G. Schmidt, TU Darmstadt, Seite 22


Levinson-Durbin-Rekursion – Teil 8 (Veranschaulichung)<br />

Strukturbild der Ordnungsrekursion:<br />

s(n − 1)<br />

Kurzform:<br />

Rückwärtsprädiktor der Länge N-1<br />

s(n − 1) s(n − 2) s(n − 3) s(n − N +1)<br />

z −1<br />

z −1<br />

Vorwärtsprädiktor der Länge N-1<br />

s(n − N)<br />

z −1<br />

h (N)<br />

N−1<br />

Vorwärtsprädiktor der Länge N<br />

Neuer Schätzwert = Alter Schätzwert + Gewichtung * (Neu – Vorhersage des Neuen)<br />

z −1<br />

bs (N−1) (n)<br />

bs (N) (n) = bs (N−1) (n) + h (N)<br />

µ<br />

N−1 s(n − N) − bs (N−1) <br />

(n − N)<br />

bs (N−1) (n − N)<br />

bs (N) (n)<br />

E. Hänsler und G. Schmidt, TU Darmstadt, Seite 23<br />

Levinson-Durbin-Rekursion – Teil 9 (Rekursion der Fehlerleistung)<br />

(Herleitung an der T<strong>af</strong>el)<br />

E. Hänsler und G. Schmidt, TU Darmstadt, Seite 24


Levinson-Durbin-Rekursion – Teil 10 (Zusammenfa<strong>ss</strong>ung)<br />

Initialisierung:<br />

Prädiktor:<br />

Fehlerleistung (optional): E (0)<br />

min = r(0)<br />

Rekursion:<br />

Reflexionskoeffizient:<br />

Vorwärtsprädiktor:<br />

Rückwärtsprädiktor:<br />

Fehlerleistung (optional):<br />

Abbruchbedingungen:<br />

Numerische Probleme:<br />

Ordnung:<br />

Matlab-Beispiel<br />

h (1)<br />

0<br />

h (N)<br />

N−1 =<br />

³<br />

r(N ) − ˜r (N−1)<br />

´ T<br />

<strong>ss</strong> (1) h (N−1)<br />

opt<br />

³<br />

r(0) − ˜r (N−1)<br />

´ T (N−1)<br />

<strong>ss</strong> (1) ˜h<br />

opt<br />

£ (N)<br />

h 0 ,h (N)<br />

1 , ..., h (N) ¤ T (N−1)<br />

N−2 = h opt − h (N)<br />

N−1 ˜h (N−1)<br />

opt<br />

˜h<br />

( N)<br />

i = h (N)<br />

N−i−1<br />

E (N)<br />

min<br />

= ˜ h (1)<br />

0<br />

= E(N−1)<br />

min<br />

= r(1)/r(0)<br />

³<br />

1 − ¡ h (N) ¢ ´<br />

2<br />

N−1<br />

¡ (N) ¢ 2<br />

Falls h N−1 > 1 − ε , verwende die Prädiktorkoeffizienten des<br />

vorherigen Rekursion<strong>ss</strong>chritts und stoppe die Rekursion.<br />

Falls N die gewünschte Ordnung erreicht hat, stoppe<br />

die Rekursion.<br />

E. Hänsler und G. Schmidt, TU Darmstadt, Seite 25<br />

E. Hänsler und G. Schmidt, TU Darmstadt, Seite 26


Matlab-Beispiel – Geschätztes Sprachsignal<br />

Matlab-Beispiel – Ausgang<strong>ss</strong>ignale<br />

E. Hänsler und G. Schmidt, TU Darmstadt, Seite 27<br />

E. Hänsler und G. Schmidt, TU Darmstadt, Seite 28

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!