Bert-Uwe Köhler Konzepte der statistischen Signalverarbeitung
Bert-Uwe Köhler
Konzepte der statistischen Signalverarbeitung Mit 61 Abbildungen
13
Dr. Bert-Uwe Köhler Siemens AG Communications WM RD SW 2 13623 Berlin
[email protected] Bibliografische Information der Deutschen Bibliothek Die deutsche Bibliothek verzeichnet diese Publikation in der deutschen Nationalbibliografie; detaillierte bibliografische Daten sind im Internet über abrufbar.
ISBN 3-540-23491-8 Springer Berlin Heidelberg New York Dieses Werk ist urheberrechtlich geschützt. Die dadurch begründeten Rechte, insbesondere die der Übersetzung, des Nachdrucks, des Vortrags, der Entnahme von Abbildungen und Tabellen, der Funksendung, der Mikroverfilmung oder Verviefältigung auf anderen Wegen und der Speicherung in Datenverarbeitungsanlagen, bleiben, auch bei nur auszugsweiser Verwertung, vorbehalten. Eine Vervielfältigung dieses Werkes oder von Teilen dieses Werkes ist auch im Einzelfall nur in den Grenzen der gesetzlichen Bestimmungen des Urheberrechtsgesetzes der Bundesrepublik Deutschland vom 9. September 1965 in der jeweils geltenden Fassung zulässig. Sie ist grundsätzlich vergütungspflichtig. Zuwiderhandlungen unterliegen den Strafbestimmungen des Urheberrechtsgesetzes. Springer ist ein Unternehmen von Springer Science+Business Media springer.de © Springer-Verlag Berlin Heidelberg 2005 Printed in The Netherlands Die Wiedergabe von Gebrauchsnamen, Handelsnamen, Warenbezeichnungen usw. in diesem Buch berechtigt auch ohne besondere Kennzeichnung nicht zu der Annahme, dass solche Namen im Sinne der Warenzeichen- und Markenschutz-Gesetzgebung als frei zu betrachten wären und daher von jedermann benutzt werden dürften. Sollte in diesem Werk direkt oder indirekt auf Gesetze, Vorschriften oder Richtlinien (z.B. DIN, VDI, VDE) Bezug genommen oder aus ihnen zitiert worden sein, so kann der Verlag keine Gewähr für die Richtigkeit, Vollständigkeit oder Aktualität übernehmen. Es empfiehlt sich, gegebenenfalls für die eigenen Arbeiten die vollständigen Vorschriften oder Richtlinien in der jeweils gültigen Fassung hinzuzuziehen. Einbandgestaltung: medionet AG, Berlin Satz: Digitale Druckvorlage des Autors Herstellung: medionet AG, Berlin Gedruckt auf säurefreiem Papier
68/3020 5 4 3 2 1 0
Inhaltsverzeichnis
1
Einf¨ uhrung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1
2
Mathematische Grundlagen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
2.1 Grundbegriffe der statistischen Signalverarbeitung . . . . . . . . . . .
3
2.1.1 Zufallsexperiment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
2.1.2 Absolute und relative H¨aufigkeit . . . . . . . . . . . . . . . . . . . .
3
2.1.3 Wahrscheinlichkeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4
2.1.4 Zufallsvariablen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4
2.1.5 Verteilungs- und Verteilungsdichtefunktion . . . . . . . . . . .
5
2.1.6 Erwartungswerte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8
2.1.7 Verbunderwartungswerte . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.1.8 Erwartungswerte von Vektoren und Matrizen . . . . . . . . . 11 2.1.9 Momente und Kumulanten . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.1.10 Stochastische Prozesse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 2.1.11 Stationarit¨at . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 2.1.12 Transformation stochastischer Prozesse durch Nichtlinearit¨aten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 2.1.13 Transformation stochastischer Prozesse durch LTI-Systeme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 2.2 Matrizen und Vektoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 2.2.1 Definition der verwendeten Matrix- und Vektorschreibweise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
VI
Inhaltsverzeichnis
2.2.2 Besondere Matrix- und Vektorstrukturen . . . . . . . . . . . . . 22 2.2.3 Grundlegende Rechenregeln f¨ ur Matrizen und Vektoren
25
2.2.4 Eigenschaften von Matrizen und Vektoren . . . . . . . . . . . . 27 2.2.5 Weitere Rechenregeln und abgeleitete Gr¨ oßen . . . . . . . . . 28 2.2.6 Matrix- und Vektor-Normen . . . . . . . . . . . . . . . . . . . . . . . . 33 3
Optimierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 ¨ 3.1 Uberblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 3.2 Minimierung einer Funktion einer Variablen . . . . . . . . . . . . . . . . . 38 3.2.1 Problemstellung und Optimalit¨ atsbedingungen . . . . . . . . 38 3.2.2 Nummerische Optimierungsverfahren . . . . . . . . . . . . . . . . 39 3.3 Minimierung einer Funktion mehrerer Variablen ohne Nebenbedingungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 3.3.1 Problemstellung und Optimalit¨ atsbedingungen . . . . . . . . 41 3.3.2 Nummerische Optimierungsverfahren . . . . . . . . . . . . . . . . 43 3.3.3 Schrittweitenbestimmung . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 3.3.4 Abbruch und Re-Start . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 3.4 Skalierungsfragen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 3.5 Minimierung unter Gleichungsnebenbedingungen . . . . . . . . . . . . 54 3.5.1 Problemstellung und Optimalit¨ atsbedingungen . . . . . . . . 54 3.5.2 Optimierungsalgorithmen . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 3.6 Minimierung unter Gleichungs- und Ungleichungsnebenbedingungen . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 3.6.1 Problemstellung und Optimalit¨ atsbedingungen . . . . . . . . 59 3.6.2 Weitere L¨ osungsans¨ atze . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 3.7 Weitere Bemerkungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
4
Bayes-Sch¨ atzung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 ¨ 4.1 Uberblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 4.2 Sch¨atztheorie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 4.2.1 Zielstellung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Inhaltsverzeichnis
VII
4.2.2 Bewertungskriterien f¨ ur Sch¨atzer . . . . . . . . . . . . . . . . . . . . 65 4.2.3 Die Cram´er-Rao-Schranke . . . . . . . . . . . . . . . . . . . . . . . . . . 66 4.3 Verfahren der Bayes-Sch¨atzung . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 4.3.1 Die Berechnung der A-posteriori-Verteilungsdichte . . . . . 68 4.3.2 Klassische Sch¨atzverfahren im Kontext der Bayes-Sch¨atzung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 4.4 Die Maximum-Likelihood-Sch¨atzung . . . . . . . . . . . . . . . . . . . . . . . 74 4.5 Der Expectation-Maximization-Algorithmus . . . . . . . . . . . . . . . . 77 ¨ 4.5.1 Uberblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 4.5.2 Maximum-Likelihood-Sch¨ atzung mit unvollst¨ andigen Daten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 4.5.3 Die mathematischen Grundlagen des EM-Algorithmus . 79 4.5.4 Der EM-Algorithmus am Beispiel von MOG-Modellen . . 81 5
Blinde Quellentrennung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 ¨ 5.1 Uberblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 5.2 Informationstheorie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90 5.3 Independent Component Analysis . . . . . . . . . . . . . . . . . . . . . . . . . 94 5.4 Kontrastfunktionen und ihre Optimierung . . . . . . . . . . . . . . . . . . 96 5.4.1 Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96 5.4.2 Informationstheoretische Kontrastfunktionen . . . . . . . . . . 96 5.4.3 Statistik h¨oherer Ordnung . . . . . . . . . . . . . . . . . . . . . . . . . . 104 5.5 Der nat¨ urliche Gradient . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105 5.6 Hauptkomponentenanalyse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108 ¨ 5.6.1 Uberlick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108 5.6.2 Berechnung der Transformationsmatrix . . . . . . . . . . . . . . 109 5.6.3 Variablenreduktion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112 5.6.4 Pre-Whitening . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 5.7 Blinde Quellentrennung mit Statistik zweiter Ordnung . . . . . . . 114 5.7.1 Blinde Quellentrennung mit Zeitverz¨ ogerungsverfahren . 114 5.7.2 Blinde Quellentrennung mit linearen Operatoren . . . . . . 116 5.7.3 Blinde Quellentrennung mit FIR-Filtern . . . . . . . . . . . . . . 118 5.8 Die Verbunddiagonalisierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
VIII
6
Inhaltsverzeichnis
Wiener-Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 ¨ 6.1 Uberblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 6.2 Algorithmus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 6.3 Orthogonalit¨ atsprinzip . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 6.4 Wiener-Filter im Frequenzbereich . . . . . . . . . . . . . . . . . . . . . . . . . . 131 6.5 Weitere Bemerkungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
7
Kalman-Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 ¨ 7.1 Uberblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 7.2 Rekursive Filterung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 7.3 Kalman-Filter in Zustandsraum-Darstellung . . . . . . . . . . . . . . . . 141 7.3.1 Zustandsraum-Darstellung . . . . . . . . . . . . . . . . . . . . . . . . . . 141 7.3.2 Algorithmus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142 7.4 Erweiterte Kalman-Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146 7.5 Implementierungsfragen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147 ¨ 7.5.1 Uberblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147 7.5.2 QR- und Cholesky-Faktorisierung . . . . . . . . . . . . . . . . . . . 148 7.5.3 Quadratwurzel-Kalman-Filterung . . . . . . . . . . . . . . . . . . . . 149 7.5.4 Householder-Reflexionen und Givens-Rotationen . . . . . . 151
8
Adaptive Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 ¨ 8.1 Uberblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 8.2 Kostenfunktion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160 8.3 Algorithmen mit adaptivem Gradienten . . . . . . . . . . . . . . . . . . . . 162 8.4 Konvergenzverhalten des Gradientenverfahrens . . . . . . . . . . . . . . 164 8.5 Recursive-Least-Squares-Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167 8.6 Blockadaptive Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170 ¨ 8.6.1 Uberblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170 8.6.2 Block-LMS-Algorithmus . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170 8.6.3 Exakter Block-LMS-Algorithmus . . . . . . . . . . . . . . . . . . . . 171 8.6.4 Blockadaptive Verfahren im Vergleich . . . . . . . . . . . . . . . . 176
Inhaltsverzeichnis
9
IX
Blinde Entfaltung und Entzerrung . . . . . . . . . . . . . . . . . . . . . . . . . 177 ¨ 9.1 Uberblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177 9.2 Bussgang-Verfahren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179 9.2.1 Bussgang-Entzerrung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179 9.2.2 Bussgang-Entfaltung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181 9.2.3 Der ged¨ achtnislose Sch¨atzer als Nichtlinearit¨ at . . . . . . . . 181 9.2.4 Konvergenz von Bussgang-Entzerrern . . . . . . . . . . . . . . . . 184 9.3 Kumulantenbasierte Entfaltungsalgorithmen . . . . . . . . . . . . . . . . 184 9.3.1 Kostenfunktion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184 9.3.2 Optimierung der Kostenfunktion . . . . . . . . . . . . . . . . . . . . 186
10 Nichtlineare Filterung mit k¨ unstlichen neuronalen Netzen . 189 10.1 Nichtlineare Filterung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189 10.2 Das Multilagen-Perzeptron . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190 10.2.1 Aufbau . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190 10.2.2 Training der Verbindungsgewichte . . . . . . . . . . . . . . . . . . . 192 10.2.3 Netzwerk-Komplexit¨ at . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195 10.3 Filteranwendungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196 10.4 Weitere Bemerkungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197 11 Sprachverbesserungssysteme mit spektraler Subtraktion . . . 199 ¨ 11.1 Uberblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199 11.2 Prinzip der spektralen Subtraktion . . . . . . . . . . . . . . . . . . . . . . . . 200 11.3 Transformation in den Frequenzbereich . . . . . . . . . . . . . . . . . . . . . 202 11.4 Algorithmen der spektralen Subtraktion . . . . . . . . . . . . . . . . . . . . 203 11.4.1 Amplituden- und Spektralsubtraktion . . . . . . . . . . . . . . . . 203 11.4.2 Wiener-Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205 11.4.3 Maximum-Likelihood-Spektralsubtraktion . . . . . . . . . . . . 205 11.4.4 Ephraim-Malah-Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207 11.5 Algorithmische Erweiterungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207 11.5.1 Probleme der spektralen Subtraktion . . . . . . . . . . . . . . . . 207
X
Inhaltsverzeichnis
11.5.2 Sch¨atzung des Rauschspektrums . . . . . . . . . . . . . . . . . . . . 208 11.5.3 Spektrogramm-Filterung . . . . . . . . . . . . . . . . . . . . . . . . . . . 209 11.5.4 Nachverarbeitung zur Entfernung des Musical Noise . . . 209 11.6 Sprachpausenerkennung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210 11.7 Das Ephraim-Malah-Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211 ¨ 11.7.1 Uberblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211 11.7.2 Algorithmus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211 11.7.3 Interpretation der Funktionsweise . . . . . . . . . . . . . . . . . . . 214 Literaturverzeichnis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217 Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
1 Einfu ¨hrung
Das Gebiet der Signalverarbeitung umfasst eine breite Vielfalt von Verfahren zur Bearbeitung und Manipulation analoger und digitaler Signale. Zu den Aufgaben der Signalverarbeitung z¨ahlt unter anderem die anwendungsspezifische Umkodierung der im Signal enthaltenen Information sowie deren Extraktion, die Unterdr¨ uckung von st¨orenden oder irrelvanten Signalanteilen, die Signalgenerierung und die Ereigniserkennung. Statistische Signalverarbeitung zeichnet sich in diesem Kontext durch die verst¨arkte Nutzung statistischer Methoden aus. Die Beispiele m¨ oglicher Anwendungsgebiete zeigen, welchen Stellenwert die Signalverarbeitung besitzt und wie weit der Alltag inzwischen von ihr durchdrungen ist [83]: •
Luft- und Raumfahrt: Erdfernerkundung, Wettervorhersage, Satellitenphotographie, Datenkompression, Datenanalyse
•
Telekommunikation: Sprach- und Videokompression, Echoreduktion, Filterung, Entzerrung, Kodierung
• Medizintechnik: Computertomographie, Magnetresonanztomographie, Ultraschall, computerassistierte Chirurgie, Datenanalyse • Multimedia: Spracherkennung, Videokonferenzen, Musik- und Videoerzeugung und -bearbeitung •
Milit¨ artechnik: Radar, Sonar, Abh¨ortechnik, Data Mining
•
Industrielle Anwendungen: CAD, zerst¨orungsfreies Testen
•
Verkehrstechnik: Navigation, Regelungen, Steuerungen
•
¨ Erze), ErdbebenvorGeologie und Seismologie: Rohstofferkundung (Ol, hersage, Simulation, Modellierung
2
1 Einf¨ uhrung
Die Signalverarbeitung kann aufgrund der Vielfalt m¨ oglicher Anwendungen nicht als einzeln stehendes Fachgebiet betrachtet werden. Vielmehr stellt sie Werkzeuge zur Verf¨ ugung, mit denen anwendungsspezifische Problemstellun¨ gen bearbeitet werden k¨onnen. Dabei gibt es große Uberschneidungen mit Methoden anderer Forschungsbereiche wie unter anderem der nummerischen Mathematik, der Statistik und Wahrscheinlichkeitsrechnung, der Entscheidungstheorie oder dem Maschinenlernen. Die Verarbeitung analoger und digitaler Signale verf¨ ugt u ¨ber eine lange Geschichte. Die breite Einf¨ uhrung der Signalverarbeitung in die Technik begann jedoch vor allem mit der Entwicklung von Radar1 und Sonar2 in der Mitte des zwanzigsten Jahrhunderts. Seit dieser Zeit wurden in den Ingenieurwissenschaften immer weitere Einsatzgebiete f¨ ur die Signalverarbeitung erobert. Die Entdeckung schneller Algorithmen zur Fourieranalyse 1965 und die Entwicklung der Mikroelektronik ebneten den Weg f¨ ur die Erschließung bis dahin ungeahnter Anwendungsm¨ oglichkeiten. Deren schnelles Entstehen befl¨ ugelte im Gegenzug die Entwicklung der Signalverarbeitung selbst, so dass viele neue Algorithmen und Verfahren und sogar neue Forschungsgebiete hervorgebracht wurden. Das vorliegende Buch besch¨ aftigt sich vorrangig mit zwei Teilgebieten der statistischen Signalverarbeitung: der Datenanalyse und der digitalen Filterung. Die Datenanalyse beinhaltet die Suche nach interessanten Strukturen innerhalb der Daten sowie die Erfassung und den Vergleich ihrer Eigenschaften. Die digitale Filterung dient der Ver¨ anderung von Signalen mit dem Ziel einer anderen Darstellung der im Signal enthaltenen Information beispielsweise durch die Entfernung bestimmter Frequenzanteile oder Signalkomponenten. Obwohl die Methoden im vorliegenden Buch getrennt voneinander erl¨ autert werden, sind sie doch eng miteinander verflochten. Oftmals ist es nur eine Frage der Interpretation, in welches Teilgebiet der Signalverarbeitung eine Methode einzuordnen ist. Die Zielsetzung dieses Buches besteht in der Vermittlung der konzeptionellen Ideen f¨ ur die Funktionsweise der beschriebenen Signalverarbeitungsverfahren. Aus diesem Grunde wird auf mathematische Rigorosit¨ at h¨ aufig verzichtet, nicht jedoch auf f¨ ur das Verstehen notwendige Herleitungen und Rechenschritte. Bewusst wird neben der Rechnung auch Wert auf die Interpretation der Vorgehensweise gelegt. Die Bearbeitung der verschiedenen Kapitel kann mit Ausnahme der Kapitel zwei bis vier, die die Grundlagen f¨ ur alle weiteren Kapitel zur Verf¨ ugung stellen, unabh¨angig von der im Buch gew¨ ahlten Reihenfolge vorgenommen werden.
1 2
RADAR: RAdio Detection And Ranging SONAR: SOund NAvigation and Ranging
2 Mathematische Grundlagen
2.1 Grundbegriffe der statistischen Signalverarbeitung 2.1.1 Zufallsexperiment Ein Zufallsexperiment ist ein Experiment, das folgenden drei Bedingungen gen¨ ugt [33]: • Alle m¨ oglichen Ergebnisse1 des Experimentes sind im Voraus bekannt. •
Das Ergebnis eines konkreten Versuches ist im Voraus nicht bekannt.
•
Das Experiment kann unter identischen Bedingungen wiederholt werden.
Der Begriff des Zufallsexperiments bildet die Grundlage aller in den weiteren Abschnitten folgenden Definitionen. 2.1.2 Absolute und relative H¨ aufigkeit Bei N -maliger Durchf¨ uhrung des Zufallsexperimentes tritt das Ereignis A ∈ Ω insgesamt N (A) mal auf. N (A) wird auch als absolute H¨ aufigkeit bezeichnet, also die absolute Anzahl des Auftretens des jeweiligen Ereignisses. Die relative H¨aufigkeit gibt die absolute H¨aufigkeit bezogen auf die Gesamtanzahl aller aufgetretenen Ereignisse an N (A) . (2.1) Pˆ (A) = N Die Darstellung der absoluten bzw. der relativen H¨ aufigkeiten in Abh¨ angigkeit von den Ereignissen wird als absolute bzw. relative H¨ aufigkeitsverteilung bezeichnet. 1
Ein Ergebnis wird auch als Ereignis bezeichnet. Die Gesamtheit aller Ergebnisse bildet den Ergebnisraum Ω.
4
2 Mathematische Grundlagen
2.1.3 Wahrscheinlichkeit Aus der relativen H¨ aufigkeit ergibt sich mit N → ∞ die Wahrscheinlichkeit des Ereignisses A N (A) . (2.2) P (A) = lim N →∞ N Aus Gleichung 2.2 wird unmittelbar klar, dass die Summe der Ereigniswahrscheinlichkeiten eines Zufallsexperimentes den Wert 1 ergibt.
Die Darstellung der Ereigniswahrscheinlichkeiten eines Zufallsexperimentes erfolgt mit der diskreten Wahrscheinlichkeitsverteilung, die mit wachsendem N aus der relativen H¨aufigkeitsverteilung hervorgeht. Die Wahrscheinlichkeit des gemeinsamen Auftretens mehrerer beobachteter Ereignisse A, B, C, . . . wird durch die Verbundwahrscheinlichkeit P (A, B, C, . . .) erfasst. Sind die Ereignisse voneinander unabh¨ angig, ist die Verbundwahrscheinlichkeit das Produkt der Einzelwahrscheinlichkeiten. Zum Beispiel erh¨ alt man f¨ ur zwei unabh¨angige Ereignisse A und B P (A, B) = P (A) · P (B).
(2.3)
Verbundwahrscheinlichkeiten, die dem gemeinsamen Aufreten von Ereignissen zugeordnet sind, k¨onnen zusammen in einer diskreten Verbundwahrscheinlichkeitsverteilung dargestellt werden. 2.1.4 Zufallsvariablen Eine Zufallsvariable x ist eine Funktion, die den Ergebnisraum des Zufallsexperimentes Ω auf den Bereich der rellen Zahlen R abbildet2 x : Ω → R.
(2.4)
Diese Abbildung ist ¨außerst sinnvoll, da durch die Abbildung der Ereignisse auf Zahlenwerte die Nutzung vieler mathematischer Methoden erst erm¨ oglicht wird. Zufallsvariablen k¨onnen diskret3 oder kontinuierlich4 sein. Von vektoriellen Zufallsvariablen spricht man, wenn die Elemente eines Vektors Zufallsvariablen sind. So k¨onnen zum Beispiel die Zufallsvariablen x1 , x2 , . . . , xN zu dem Zufallsvektor x = [x1 , x2 , . . . , xN ]T zusammengestellt werden. 2
3 4
Sowohl Zufallsvariablen als auch ihr Wert werden bevorzugt mit kleinen lateinischen Buchstaben notiert. In einigen F¨ allen ist jedoch eine Unterscheidung zwischen der Zufallsvariable selbst und ihrem Wert notwendig. Dann wird die Zufallsvariable mit einem Großbuchstaben, z.B. X, und der Wert der Zufallsvariable mit einem Kleinbuchstaben, z.B. x, gekennzeichnet. Die Werte der Zufallsvariablen sind diskrete Punkte in R. Die Werte der Zufallsvariablen stammen aus einem Intervall oder mehreren Intervallen in R.
2.1 Grundbegriffe der statistischen Signalverarbeitung
5
2.1.5 Verteilungs- und Verteilungsdichtefunktion Die Verteilungsfunktion FX (x) gibt die Wahrscheinlichkeit P an, mit der die Zufallsvariable X kleiner oder gleich dem konkreten Wert x ist FX (x) = P (X ≤ x).
(2.5)
Die Wahrscheinlichkeit, dass die Zufallsvariable X Werte aus dem Intervall (x, x + x] annimmt, ist somit P (x < X ≤ x + x) = FX (x + x) − FX (x).
(2.6)
Der Zusammenhang zwischen der Verteilungsfunktion und der Verteilungsdichtefunktion einer kontinuierlichen Zufallsvariable ergibt sich aus der Normierung von Gleichung 2.6 auf die L¨ ange des Intervalls x, d.h. x 1 x x 1 FX x + = <X ≤x+ P x− 2 x 2 2 x x . (2.7) −FX x − 2
Geht die Intervalll¨ange x gegen Null, erh¨alt man die Verteilungsdichtefunktion als Ableitung der Verteilungsfunktion5
x x 1 − FX x − FX x + x→0 x 2 2
(2.8)
dFX (x) . dx
(2.9)
fX (x) = lim
=
Die Aufenthaltswahrscheinlichkeit Pi der Zufallsvariable X im Intervall (xi , xi + x] ist analog zu Gleichung 2.66 x i +x
fX (x)dx ≈ fX (xi )· x.
Pi =
(2.10)
xi
Erweitert man den Integrationsbereich auf den gesamten Definitionsbereich von x bzw. allgemein (−∞, ∞), erh¨ alt man ∞ fX (x)dx = 1. −∞
5 6
bei vorausgesetzter Differenzierbarkeit f¨ ur gen¨ ugend kleine x und gutartige Verteilungsdichten fX (x)
(2.11)
6
2 Mathematische Grundlagen
In der statistischen Signalverarbeitung findet eine große Anzahl von Verteilungsdichten Verwendung. Wichtige Verteilungsdichten sind: •
eindimensionale Gaußverteilungsdichte fX (x) = √
•
1 (x − µx )2 1 exp − σx2 2 2πσx
multivariate Gaußverteilungsdichte 1 1 T −1 exp − (x − µx ) R (x − µx ) fX (x) = 2 (2π)N/2 det(R)1/2
(2.12)
(2.13)
mit µx = E[x] als vektorieller Mittelwert, N als Dimension von x und R = E[(x − µx )(x − µx )T ] als Kovarianzmatrix (siehe Abschnitt 2.1.7) • Exponential-Verteilungsdichte 0 f¨ ur x < 0 fX (x) = λ exp[−λx] f¨ ur x ≥ 0
(2.14)
mit λ > 0 •
Gleichverteilungsdichte fX (x) =
•
1/(b − a) x ∈ [a, b] 0 sonst
(2.15)
|x − α| 1 exp − β 2β
(2.16)
Laplace-Verteilungsdichte fX (x) =
mit β > 0 •
Gamma-Verteilungsdichte ⎧ ⎨0 f¨ ur x ≤ 0 αr r−1 fX (x) = x exp[−αx] f¨ ur x > 0 ⎩ Γ (r)
(2.17)
mit Γ (·) als Gamma-Funktion, α > 0 und r > 0 •
Rayleigh-Verteilungsdichte ⎧ f¨ ur x < 0 ⎪ ⎨0
2 x 1 x fX (x) = f¨ ur x ≥ 0 ⎪ ⎩ β 2 exp − 2 β
mit β > 0.
(2.18)
2.1 Grundbegriffe der statistischen Signalverarbeitung
7
Abb. 2.1. Beispiele f¨ ur Verteilungsdichtefunktionen (qualitative Darstellung): Eindimensionale Gaußverteilungsdichte (oben links), multivariate Gaußverteilungsdichte (oben rechts), Exponentialverteilungsdichte (mitte links), LaplaceVerteilungsdichte (mitte rechts), Gamma-Verteilungsdichte (unten links) und Rayleigh-Verteilungsdichte (unten rechts)
Eine Auswahl der beschriebenen Verteilungsdichten ist in Abbildung 2.1 dargestellt. Analog zum diskreten Fall7 beschreiben Verbundverteilungsdichten die gemeinsame Statistik mehrerer kontinuierlicher Zufallsvariablen. Die Verbundverteilungsdichte zweier Zufallsvariablen X und Y wird beispielsweise mit fXY (x, y) notiert. Ist man an der Verteilungsdichte nur einer oder eines Teils der beteiligten Zufallsvariablen interessiert, kann man diese per Integration 7
siehe Abschnitt 2.1.3
8
2 Mathematische Grundlagen
berechnen8 ; z.B. f¨ ur die Zufallsvariable X mit ∞ fX (x) =
fXY (x, y)dy.
(2.19)
−∞
Die Verbundverteilungsdichte statistisch unabh¨ angiger Zufallsvariablen ergibt sich aus dem Produkt der zugeh¨ origen Randdichten. Zum Beispiel gilt f¨ ur die Verteilungsdichten der statistisch unabh¨angigen Zufallsvariablen X und Y fXY (x, y) = fX (x) · fY (y).
(2.20)
2.1.6 Erwartungswerte Die Definition des Erwartungswertes lehnt sich an den im Alltag u ¨blichen Begriff des Durchschnitts an. Dazu zun¨achst ein einfaches Beispiel. Beispiel 2.1. Bekanntermaßen wird der Notendurchschnitt bei einer Klausur mit der Summe aller Einzelnoten geteilt durch die Anzahl der Klausurteilnehmer gebildet. Die f¨ unf Teilnehmer einer Klausur haben die Noten 1, 2, 1, 3 und 5 erhalten. Der Durchschnitt ergibt sich dementsprechend mit µ ˆ=
12 (1 + 2 + 1 + 3 + 5) = 2, 4. = 5 5
(2.21)
Die absoluten und relativen H¨aufigkeiten sind in Tabelle 2.1 aufgef¨ uhrt. Die entsprechenden H¨aufigkeitsverteilungen zeigt Abbildung 2.2. Note xi
absolute H¨ aufigkeit N (A)
relative H¨ aufigkeit Pˆi
1 2 3 4 5
2 1 1 0 1
0,4 0,2 0,2 0,0 0,2
Tabelle 2.1. Absolute und relative H¨ aufigkeiten in Beispiel 2.1
F¨ ur den Durchschnitt bzw. Mittelwert ergibt sich unter Verwendung von absoluten und relativen H¨ aufigkeiten 8
Die berechnete Verteilungsdichte wird in diesem Zusammenhang als Randdichteverteilung bezeichnet.
2.1 Grundbegriffe der statistischen Signalverarbeitung
9
Abb. 2.2. Absolute H¨ aufigkeitsverteilung (links) und relative H¨ aufigkeitsverteilung (rechts) f¨ ur Beispiel 2.1
(2 · 1 + 1 · 2 + 1 · 3 + 0 · 4 + 1 · 5) 5 1 0 1 1 2 = ·1+ ·2+ ·3+ ·4+ ·5 5 5 5 5 5 = Pˆ (1) · 1 + Pˆ (2) · 2 + Pˆ (3) · 3 + Pˆ (4) · 4 + Pˆ (5) · 5.
µ ˆ=
(2.22)
Eine verallgemeinerte Darstellung von Gleichung 2.22 erh¨ alt man mit µ ˆ=
5
Pˆ (xi ) · xi ,
(2.23)
i=1
wobei Pˆ (xi ) die relative H¨ aufigkeit des Wertes xi der Zufallsvariable X (Abbildung des Ergebnisraumes Ω = {1, 2, 3, 4, 5} des Zufallsexperimentes auf die Realachse R) symbolisiert. F¨ ur eine große Anzahl von Wiederholungen des Zufallsexperimentes9,10 geht die relative H¨ aufigkeit Pˆ (xi ) in die Auftretenswahrscheinlichkeit P (xi ) u ¨ber. Damit wird f¨ ur diskrete Zufallsvariablen der Erwartungswert definiert P (xi ) · xi . (2.24) E[x] = µ = ∀i
Erwartungswerte von Funktionen g(·), die von einer diskreten Zufallsvariable x abh¨ angen, werden mit P (xi ) · g(xi ) (2.25) E[g(x)] = ∀i
berechnet. Den Erwartungswert einer kontinuierlichen Zufallsvariablen erh¨ alt man ausgehend von den Berechnungen f¨ ur diskrete Zufallsvariablen und infinitesimal kleine x mit 9 10
genauer: f¨ ur N → ∞ Im Beispiel 2.1 entspricht dies einer hohen Teilnehmerzahl N .
10
2 Mathematische Grundlagen
µ≈
∀i
∞ xi fX (xi )· x −−−−→ x→0
xfX (x)dx = E[x] = µ.
(2.26)
−∞
Analog zum diskreten Fall ist der Erwartungswert f¨ ur Funktionen g(x) gegeben mit ∞ E[g(x)] = g(x)fX (x)dx. (2.27) −∞
2.1.7 Verbunderwartungswerte Verbunderwartungswerte werden auf der Basis von diskreten Verbundverteilungen bzw. Verbundverteilungsdichten gebildet. F¨ ur den diskreten zweidimensionalen Fall erh¨ alt man zum Beispiel g(xi , yj )P (xi , yj ), (2.28) E[g(x, y)] = i
j
mit g(·) als Funktion von x und y. F¨ ur kontinuierliche Zufallsvariablen gilt ∞ ∞ E[g(x, y)] = g(x, y)fXY (x, y)dxdy. (2.29) −∞ −∞
Die Autokorrelationsfunktion Rxx (t, τ ) ist ein Spezialfall von Gleichung 2.29. Sie ist mit11 ∞ ∞ Rxx (t, τ ) = x(t)x(t + τ )f [x(t), x(t + τ )]dxt dxt+τ (2.30) −∞ −∞
= E[x(t)x(t + τ )]
(2.31)
definiert und liefert ein Maß f¨ ur die Selbst¨ahnlichkeit von x(t), d.h. die statistischen Gemeinsamkeiten zwischen dem Signal x zum Zeitpunkt t und dem gleichen Signal x zu einem anderen Zeitpunkt t + τ . Beispiel 2.2. Im Falle der statistischen Unabh¨ angigkeit zwischen x(t) und x(t + τ ) ergibt sich f¨ ur die Autokorrelationsfunktion ∞ ∞ Rxx (t, τ ) = x(t)x(t + τ )f [x(t), x(t + τ )]dxt dxt+τ (2.32) −∞ −∞ ∞ ∞
x(t)x(t + τ )f [x(t)]f [x(t + τ )]dxt dxt+τ
=
(2.33)
−∞ −∞
= E[x(t)]E[x(t + τ )]. 11
(2.34)
¨ Aus Ubersichtlichkeitsgr¨ unden wird im Folgenden bei den Verteilungsdichten auf den Index verzichtet, d.h. f [x(t), x(t + τ )] = fX(t)X(t+τ ) [x(t), x(t + τ )].
2.1 Grundbegriffe der statistischen Signalverarbeitung
11
Bei Mittelwertfreiheit, d.h. E[x(t)] = 0 und/oder E[x(t+τ )] = 0, verschwindet die Autokorrelationsfunktion in Gleichung 2.34. Sind jedoch x(t) und x(t + τ ) vollst¨andig voneinander abh¨ angig, d.h. x(t) = x(t + τ ), dann bekommt man ∞ ∞ Rxx (t, τ ) = −∞ −∞ ∞ ∞
=
x(t)x(t + τ )f [x(t), x(t + τ )]dxt dxt+τ
(2.35)
x2 (t)f [x(t), x(t + τ )]dxt dxt+τ
(2.36)
−∞ −∞ ∞
x2 (t)dxt = E[x2 (t)].
=
(2.37)
−∞
In diesem Fall entspricht der Wert der Autokorrelationsfunktion der Signalleistung von x. Im Gegensatz zur Autokorrelationsfunktion quantifiziert die Kovarianzfunktion die Gemeinsamkeiten zweier Zufallsvariablen x(t) und y(t) mit CXY (t, τ ) = E [{x(t) − µx (t)} · {y(t + τ ) − µy (t + τ )}] ,
(2.38)
wobei µx und µy die Erwartungswerte von x bzw. y bezeichnen. Im Falle ergodischer Prozesse (siehe Abschnitt 2.1.10) k¨ onnen Autokorrelations- und Kovarianzfunktion mit ∞ Rxx (τ ) =
x(t)x(t + τ )dt = x(τ ) ∗ x(−τ ) bzw.
(2.39)
[x(t) − µx ][y(t + τ ) − µy ]dt
(2.40)
−∞ ∞
CXY (τ ) = −∞
berechnet werden.
2.1.8 Erwartungswerte von Vektoren und Matrizen Der Erwartungswert einer vektoriellen Zufallsvariable x = [x1 , x2 , . . . , xN ]T ist definiert mit ⎛ ⎞ E[x1 ] ⎜ E[x2 ] ⎟ ⎜ ⎟ (2.41) E[x] = µx = ⎜ . ⎟ . ⎝ .. ⎠ E[xN ]
12
2 Mathematische Grundlagen
Entsprechend ⎡⎛ x11 ⎢⎜ x21 ⎢⎜ E ⎢⎜ . ⎣⎝ ..
gilt f¨ ur den Erwartungswert einer Matrix ⎞⎤ ⎛ E[x11 ] E[x12 ] · · · E[x1M ] x12 · · · x1M ⎥ ⎜ E[x21 ] E[x22 ] · · · E[x2M ] x22 · · · x2M ⎟ ⎟⎥ ⎜ ⎟⎥ = ⎜ .. .. .. . . .. . . .. ⎠⎦ ⎝ . . . . . . .
⎞ ⎟ ⎟ ⎟. ⎠
(2.42)
E[xN 1 ] E[xN 2 ] · · · E[xN M ]
xN 1 xN 2 · · · xN M
F¨ ur den Spezialfall x = [x(n), x(n−1), . . . , x(n−N +1)]T und xi = x(n−i+1), wobei n den diskreten Zeitindex bezeichnet und i = 1, . . . , N gilt, ergibt sich die Autokorrelationsmatrix ⎛ ⎞ E[x1 x1 ] E[x1 x2 ] · · · E[x1 xN ] ⎜ E[x2 x1 ] E[x2 x2 ] · · · E[x2 xN ] ⎟ ⎜ ⎟ (2.43) E[xxT ] = ⎜ ⎟. .. .. .. .. ⎝ ⎠ . . . . E[xN x1 ] E[xN x2 ] · · · E[xN xN ] Ferner erh¨alt man unter Ber¨ ucksichtigung der Kovarianzdefinition in Gleichung 2.38 und x = [x1 , x2 , . . . , xN ]T die Kovarianzmatrix ⎛ ⎞ CX1 X1 (0) CX1 X2 (0) · · · CX1 XN (0) ⎜ CX2 X1 (0) CX2 X2 (0) · · · CX2 XN (0) ⎟ ⎜ ⎟ E[(x − µx )(x − µx )T ] = ⎜ ⎟ . (2.44) .. .. .. .. ⎝ ⎠ . . . . CXN X1 (0) CXN X2 (0) · · · CXN XN (0) 2.1.9 Momente und Kumulanten Momente und zentrale Momente einer Verteilungsdichtefunktion werden definiert mit ∞ n n Mom[x ] = E[x ] = xn fX (x)dx n-tes Moment und −∞
∞
(x − E[x])n fX (x)dx
E[(x − E[x])n ] =
n-tes zentrales Moment.
−∞
(2.45) Momente beschreiben die Gestalt der Verteilungsdichtefunktion. Dies wird deutlich, wenn zun¨ achst die momentengenerierende Funktion12 , d.h. die konjugiert komplexe Fouriertransformierte der Verteilungsdichtefunktion 13 gebildet wird ∞ ΦX (ω) = ejωx fX (x)dx = E[ejωx ]. (2.46) −∞ 12 13
engl.: moment generating function (MGF) auch unter dem Begriff charakteristische Funktion bekannt
2.1 Grundbegriffe der statistischen Signalverarbeitung
13
Die Taylorreihenentwicklung14 der MGF um den Punkt ω = 0 enth¨ alt die Momente der Verteilungsdichte als Koeffizienten ΦX (ω) =
k 1 E[xn ](jω)n + Rest. n! n=0
(2.47)
Die Gesamtheit der Momente umfasst somit alle Informationen u ¨ber die Verteilungsdichtefunktion. Bei r Zufallsvariablen {x1 , x2 , . . . , xr } ergibt sich das Verbundmoment der Ordnung n = n1 + n2 + . . . + nr aus [71] Mom[xn1 1 , xn2 2 , . . . , xnr r ] =E[xn1 1 , xn2 2 , . . . , xnr r ]
(2.48) Φ(ω1 , ω2 , . . . , ωr ) , = (−j) ∂ω1n1 ∂ω2n2 · · · ∂ωrnr ω1 =ω2 =···=ωr =0 n∂
n
mit Φ(ω1 , ω2 , . . . , ωr ) = E [exp (j(ω1 x1 + ω2 x2 + · · · + ωr xr ))] .
(2.49)
Kumulanten werden, ¨ahnlich wie die Momente, mit Hilfe einer kumulantengenerierenden Funktion15 definiert. Die CGF entsteht durch Logarithmierung aus der MGF ! (2.50) ΨX (ω) = ln[ΦX (ω)] = ln E[ejωx ] . Aufgrund der strengen Monotonie der Logarithmusfunktion tritt bei der Logarithmierung kein Informationsverlust auf; MGF und CGF enthalten deshalb die gleiche Information u ¨ber die Verteilungsdichtefunktion. Die Taylorreihe der CGF um den Punkt ω = 0 ist ΨX (ω) =
k 1 cX (n)(jω)n + Rest, n! n=0
(2.51)
mit den Kumulanten als Taylor-Koeffizienten Cum[xn ] = cX (n) = (−j)n
dn ΨX (ω) . dω n ω=0
(2.52)
Wie bei den Momenten kann mit der Gesamtheit der Kumulanten die Verteilungsdichtefunktion vollst¨ andig beschrieben werden. 14
Die Taylorreihenentwicklung der Funktion Φ(ω) um den Punkt ω0 ist gegeben mit Φ(ω0 + ω) = Φ(ω0 ) +
15
( ω)k (k) ( ω)2 ω Φ (ω0 ) + Rest. Φ (ω0 ) + . . . + Φ (ω0 ) + k! 2! 1!
engl.: cumulant generating function (CGF)
14
2 Mathematische Grundlagen
Im multivariaten Fall erh¨ alt man die kumulantengenerierende Funktion entsprechend mit ΨX (ω1 , ω2 , . . . , ωr ) = ln[ΦX (ω1 , ω2 , . . . , ωr )].
(2.53)
Die Verbundkumulanten der Ordnung n = n1 + n2 + . . . + nr entstehen mit der Ableitung der CGF im Punkt ω1 = ω2 = · · · = ωr = 0 [71] ∂ n Ψ (ω1 , ω2 , . . . , ωr ) . (2.54) Cum[xn1 1 , xn2 2 , . . . , xnr r ] = (−j)n ∂ω1n1 ∂ω2n2 · · · ∂ωrnr ω1 =ω2 =···=ωr =0
Der Zusammenhang zwischen Verbundkumulanten Cum[x1 , x2 , . . . , xn ] und Verbundmomenten Mom[x1 , x2 , . . . , xn ] jeweils der Ordnung r = n ist [71] " " " Cum[x1 , x2 , . . . , xn ] = (−1)p−1 (p − 1)! · E[ xi ] · E[ xi ] · · · E[ xi ]. p
i∈s1
i∈s2
i∈sp
(2.55) Die Summe in Gleichung 2.55 geht u oglichen Partitionierungen ¨ber alle m¨ s1 , s2 , . . . , sp mit p = 1, 2, . . . , n. Beispiel 2.3. (vgl. [71]) F¨ ur p = 1, 2, 3 ergeben sich folgende Partitionierungen: p=1: p=2:
p=3:
s1 s1 s1 s1 s1
= {1, 2, 3} = {1}, = {2}, = {3}, = {1},
s2 s2 s2 s2
= {2, 3} = {1, 3} = {1, 2} = {2}, s3 = {3}.
Der sich daraus ergebende Kumulant dritter Ordnung ist Cum[x1 , x2 , x3 ] =E[x1 x2 x3 ] − E[x1 ]E[x2 x3 ] − E[x2 ]E[x1 x3 ] − E[x3 ]E[x1 x2 ] + 2E[x1 ]E[x2 ]E[x3 ].
(2.56)
F¨ ur die Ordnung n = 4 erh¨alt man bei angenommener Mittelwertfreiheit der Zufallsvariablen Cum[x1 , x2 , x3 , x4 ] =E[x1 x2 x3 x4 ] − E[x1 x2 ]E[x3 x4 ] − E[x1 x3 ]E[x2 x4 ] − E[x1 x4 ]E[x2 x3 ].
(2.57)
Im Falle von x = x1 = x2 = x3 = x4 gelten die Vereinfachungen Cum[x] = E[x] Cum[x, x] = E[x2 ] − E[x]2 Cum[x, x, x] = E[x3 ] − 3E[x2 ]E[x] + 2E[x]3 Cum[x, x, x, x] = E[x4 ] − 4E[x3 ]E[x] − 3E[x2 ]2 +12E[x2 ]E[x]2 − 6E[x]4 .
(2.58) (2.59) (2.60) (2.61)
2.1 Grundbegriffe der statistischen Signalverarbeitung
15
Bei zus¨atzlicher Mittelwertfreiheit erh¨ alt man schließlich (Varianz), Cum[x, x] = cX (2) = E[x2 ] (Schiefe bzw. Skewness), (2.62) Cum[x, x, x] = cX (3) = E[x3 ] Cum[x, x, x, x] = cX (4) = E[x4 ] − 3E[x2 ]2 (Exzess bzw. Kurtosis). Momente und Kumulanten besitzen eine Vielzahl interessanter Eigenschaften, unter anderem [71]: •
F¨ ur symmetrische Verteilungsdichten mittelwertfreier Zufallsvariablen sind alle Kumulanten und Momente ungerader Ordnung Null.
•
Kumulanten aller Ordnungen n > 2 sind f¨ ur gaußsche Verteilungsdichten Null.
•
F¨ ur die Konstanten a1 , a2 , . . . , an gilt Mom[a1 x1 , a2 x2 , . . . , an xn ] = a1 a2 · · · an Mom[x1 , x2 , . . . , xn ] (2.63) Cum[a1 x1 , a2 x2 , . . . , an xn ] = a1 a2 · · · an Cum[x1 , x2 , . . . , xn ]. (2.64)
•
Die Reihenfolge der Argumente von Momenten und Kumulanten ist unerheblich, d.h. Mom[x1 , x2 , x3 ] = Mom[x2 , x1 , x3 ] = Mom[x3 , x2 , x1 ] = . . . (2.65) Cum[x1 , x2 , x3 ] = Cum[x2 , x1 , x3 ] = Cum[x3 , x2 , x1 ] = . . . (2.66)
•
Kann die Menge von Zufallsvariablen {x1 , x2 , . . . , xn } in zwei oder mehr voneinander statistisch unabh¨angige Teilgruppen zerlegt werden, dann ist der gemeinsame Kumulant n-ter Ordnung Null Cum[x1 , x2 , . . . , xn ] = 0.
(2.67)
Diese Eigenschaft kann im Allgemeinen nicht auf Momente u ¨bertragen werden. •
Sind die beiden Mengen {x1 , x2 , . . . , xn } und {y1 , y2 , . . . , yn } voneinander statistisch unabh¨ angig, gilt Cum[x1 + y1 , x2 + y2 , . . . , xn + yn ] =Cum[x1 , x2 , . . . , xn ] + Cum[y1 , y2 , . . . , yn ].
(2.68)
Diese Eigenschaft ist im Allgemeinen ebenfalls nicht auf Momente u ¨bertragbar. Allerdings gilt f¨ ur die Menge von Zufallsvariablen {y1 , x1 , x2 , . . . , xn } Cum[x1 + y1 , x2 , . . . , xn ] = Cum[x1 , x2 , . . . , xn ] + Cum[y1 , x2 , . . . , xn ] (2.69) und Mom[x1 + y1 , x2 , . . . , xn ] = Mom[x1 , x2 , . . . , xn ] + Mom[y1 , x2 , . . . , xn ]. (2.70)
16
2 Mathematische Grundlagen
Der Nutzen von Kumulanten und Momenten liegt vor allem in ihrer einfachen Anwendung, zum Beispiel bei der Bestimmung der Parameter von Verteilungsdichten oder bei der Erstellung von Kostenfunktionen. In der Regel erfolgt ihre Sch¨atzung aufgrund nummerischer Schwierigkeiten und des abnehmenden Einflusses auf die Gestalt der Verteilungsdichte nicht u ¨ber die Ordnung n = 4 hinaus.
2.1.10 Stochastische Prozesse Das Konzept des stochastischen Prozesses ist fundamental f¨ ur das Verstehen vieler Algorithmen der statistischen Signalverarbeitung. Die den stochastischen Prozessen zugrunde liegende Problematik verdeutlicht das folgende Beispiel. Beispiel 2.4. Abbildung 2.3 zeigt ein Sprachsignal sowie verschiedene Mittelungszeitr¨aume zur Bestimmung der Varianz des Sprachsignals. Abh¨ angig vom Mittelungszeitraum ergeben sich verschiedene Varianzsch¨ atzwerte σ12 = σ22 = angig, also σ32 = σ42 . Offenbar ist die Varianz zeitabh¨ !
σ 2 = σ 2 (t).
(2.71)
Damit sind aber prinzipiell auch Verteilungsdichtefunktionen zeitabh¨ angig, d.h. f (x) = f (x, t). Daraus ergibt sich ein wichtiges Problem: Wie soll die Verteilungsdichtefunktion ermittelt werden, wenn sie sich zu jedem Zeitpunkt oglich sein. ¨andern kann? Dies sollte zumindest in der Theorie m¨
Abb. 2.3. Sprachsignal und verschiedene Abschnitte zur Sch¨ atzung der Signalvarianz
Die L¨ osung f¨ ur das Problem in Beispiel 2.4 liefert das Konzept des stochastischen Prozesses. Es handelt sich hierbei um eine Modellvorstellung, die insbesondere bei theoretischen Betrachtungen außerordentlich hilfreich ist. Wie in
2.1 Grundbegriffe der statistischen Signalverarbeitung
17
Abbildung 2.4 gezeigt, wird das vorliegende Signal durch eine Schar16 modelliert. Die Schar besteht aus unendlich vielen Signalen, die zu jedem Zeitpunkt der gleichen Statistik wie das vorliegende Signal gen¨ ugen. Ein Signal dieser Schar wird als Musterfolge bezeichnet. Jede Musterfolge der Schar h¨ atte als Signal gemessen werden k¨ onnen, wobei das wirklich gemessene Signal per Zufallsexperiment aus der Schar ausgew¨ ahlt wurde. War es ohne die Modellvorstellung des stochastischen Prozesses notwendig, die Verteilungsdichte aus dem gemessenen Signal zu bestimmen, ist es in der Theorie nun m¨oglich, zu jedem Zeitpunkt t die Verteilungsdichte und deren Parameter aus den Werten der Musterfolgen zum Zeitpunkt t zu gewinnen. Erwartungswerte m¨ ussen nun nicht mehr wie in Beispiel 2.4 entlang des vorliegenden Signals bestimmt, sondern k¨ onnen u ¨ber die Schar ermittelt werden. Somit wird der Zeitabh¨ angigkeit von Verteilungsdichtefunktionen und Erwartungswerten Rechnung getragen.
Abb. 2.4. Stochastischer Prozess; die Verteilungsdichten werden nicht aus dem Zeitsignal (horizontal) sondern aus den Werten der Musterfolgen zum jeweiligen Zeitpunkt (vertikal) ermittelt
Stochastische Prozesse, bei denen Zeit- und Scharmittelwerte gleich sind, werden als ergodisch bezeichnet. Ergodische Prozesse sind notwendigerweise auch station¨ ar. 16
Eine Schar wird auch als Ensemble bezeichnet.
18
2 Mathematische Grundlagen
2.1.11 Stationarit¨ at Der Begriff der Stationarit¨ at beschreibt die zeitliche Konstanz statistischer Eigenschaften oder Parameter wie Mittelwert, Varianz oder Spektrum eines stochastischen Prozesses. Es handelt sich hierbei nicht um die Konstanz des Signals an sich, sondern um das Gleichbleiben statistischer Parameter. Erst durch eine ausreichende Stationarit¨at k¨ onnen statistische Verfahren sinnvoll zur Anwendung gebracht werden. Es werden verschiedene Stationarit¨ atsgrade unterschieden •
Stationarit¨at im engeren Sinne17 : alle statistischen Parameter sind zeitinvariant und
•
Stationarit¨at im weiteren Sinne18 : Mittelwert und Autokorrelation sind zeitinvariant.
2.1.12 Transformation stochastischer Prozesse durch Nichtlinearit¨ aten H¨aufig durchlaufen stochastische Signale Transformationsstufen, die auch die statistischen Eigenschaften, d.h. die Verteilungsfunktionen der Signale beeinflussen. Beispiel 2.5. Die diskrete Zufallsvariable X ∈ {1, 2, 3, 4, 5} wird in die diskrete Zufallsvariable Y ∈ {1, 2, 3} transformiert. Die Abbildungsvorschrift ist in Tabelle 2.2 festgelegt. X
1
2
3
4
5
Y
1
1
3
2
2
Tabelle 2.2. Abbildungsvorschrift f¨ ur die Transformation Y = g(X)
Die Auftretenswahrscheinlichkeit f¨ ur einen konkreten Y -Wert entspricht genau der Summe der Auftretenswahrscheinlichkeiten der zugeh¨origen X-Werte, d.h. P (Y = 1) = P (X = 1) + P (X = 2), P (Y = 2) = P (X = 4) + P (X = 5) und
(2.72) (2.73)
P (Y = 3) = P (X = 3).
(2.74)
17 18
engl.: strict sense stationarity engl.: wide sense stationarity
2.1 Grundbegriffe der statistischen Signalverarbeitung
19
Verallgemeinernd ergibt sich f¨ ur diskrete Zufallsvariablen X und Y sowie f¨ ur eine ged¨achtnislose nichtlineare Transformation Y = g(X) PX (X = xi ). (2.75) PY (Y = yj ) = xi →yj
F¨ ur kontinuierliche Zufallsvariablen gilt wie bei diskreten Zufallsvariablen PY (yj < Y ≤ yj + y) = fX (xi )dx, (2.76) xi |yj 0 f¨ ur alle x = 0; – positiv semidefinit, wenn xT Ax ≥ 0 f¨ ur alle x = 0. F¨ ur negativ definite Matrizen gilt Entsprechendes. Kann keine derartige Aussage getroffen werden, ist die Matrix indefinit.
28
2 Mathematische Grundlagen
2.2.5 Weitere Rechenregeln und abgeleitete Gr¨ oßen Die im Folgenden aufgef¨ uhrten Rechenregeln und von Matrizen abgeleiteten Gr¨oßen spielen eine wichtige Rolle in Signalverarbeitungsalgorithmen: •
Eigenwerte und Eigenvektoren: Die Eigenwerte λ und Eigenvektoren x einer (N ×N )-Matrix A sind durch die Eigengleichung A · x = λx (2.124) bestimmt. Es entstehen nur dann nichttriviale L¨ osungen, wenn r{A − λI} < N bzw. det(A − λI) = 0 gilt. In diesem Falle existieren origen Eigenvektoren xi . Sie k¨ onnen in N Eigenwerte λi mit den zugeh¨ den Matrizen Λ und X zusammengefasst werden, so dass gilt A · X = X · Λ, mit
⎛
λ1 0 · · · ⎜ ⎜ 0 λ2 . . . Λ=⎜ ⎜ . . . ⎝ .. . . . . 0 ··· 0 •
⎞ 0 .. ⎟ . ⎟ ⎟ ⎟ 0 ⎠ λN
(2.125)
! und X = x1 x2 · · · xN .
(2.126)
Spur21 : Die Spur einer quadratischen (N × N )-Matrix ist die Summe der Hauptdiagonalelemente tr(A) = a11 + a22 + . . . + aN N =
N
aii .
(2.127)
i=1
Es gelten folgende Rechenregeln: tr(AT ) = tr(A)
(2.128)
tr(A + B) = tr(A) + tr(B) tr(λA) = λ · tr(A) tr(AT A) = tr(A
i
N N
(2.129) (2.130)
a2ij
(2.131)
xTi Axi
(2.132)
i=1 j=1
xi xTi ) =
i
tr[(AB)(AB)T ] ≤ tr(AAT ) · tr(BBT ) (2.133) 2 2 tr(B ) ≤ [tr(B)] mit B > 0 und symmetrisch (2.134) 21
engl.: trace
2.2 Matrizen und Vektoren
29
F¨ ur Matrizen A und B der entsprechenden Dimension gilt ferner tr(AB) = tr(BT AT ) = tr(BA) = tr(AT BT ).
(2.135)
Dar¨ uber hinaus erh¨ alt man mit den Eigenwerten λ1 , . . . , λN der (N × N )Matrix A N λi . (2.136) tr(A) = i=1
Außerdem kann f¨ ur eine (N × N )-Matrix A die G¨ ultigkeit von # tr(A) ≤ N · tr(AAT )
(2.137)
gezeigt werden. F¨ ur nicht-negativ definite symmetrische Matrizen A und B sowie mit (A − B) positiv semidefinit gilt tr(AAT ) ≥ tr(BBT )
bzw.
tr(A2 ) ≥ tr(B2 ).
(2.138)
Gleichung 2.138 ist nicht auf nicht-symmetrische Matrizen u ¨bertragbar. •
Determinante: Die Determinante einer Matrix A wird notiert mit a11 a12 · · · a1N a21 a22 · · · a2N ∆ = |A| = . .. . . .. = det(A). .. . . . aN 1 aN 2 · · · aN N
(2.139)
Die Unterdeterminante der Ordnung (N − 1) des Elementes aij einer Determinante der Ordnung N ist die Determinante, die durch Streichen der i-ten Zeile und j-ten Spalte der urspr¨ unglichen Determinante entsteht. Der Wert einer Determinante kann mit Hilfe des Laplace’schen Entwicklungssatzes berechnet werden [14] det(A) =
N
aij Aij
j beliebig, aber fest,
(2.140)
i=1
mit den zum Element aij geh¨orenden Adjunkten (Kofaktoren) Aij . Die Adjunkte Aij ist die zum Element aij geh¨orende Unterdeterminante multipliziert mit dem Vorzeichenfaktor (−1)i+j . Ebenso wie die hier gezeigte Berechnung durch die Laplace’sche Entwicklung nach Zeilen ist in gleicher Weise eine Entwicklung nach Spalten m¨oglich. Adjunkten k¨ onnen zu einer adjungierten Matrix zusammengestellt werden
30
2 Mathematische Grundlagen
⎛
A11 ⎜ A21 ⎜ adj(A) = ⎜ . ⎝ .. AN 1
⎞ A12 · · · A1N A22 · · · A2N ⎟ ⎟ ⎟. .. . . .. ⎠ . . . AN 2 · · · AN N
(2.141)
F¨ ur Determinanten einer (N ×N )-Matrix A gelten unter anderem folgende Rechenregeln: det(AT ) = det(A)
(2.142)
∗
H
det(A ) = det (A) det(cA) = cN · det(A)
(c skalar)
det(AB) = det(A)det(B) 1 det(A−1 ) = det(A)
•
(2.143) (2.144) (2.145)
(2.146)
Ableitung einer Determinante: Aus Gleichung 2.140 folgt ∂det(A) = Aij , ∂aij
(2.147)
wobei die Aij die den Matrixelementen aij zugeh¨ origen Adjunkten bezeichnen. Kompakter kann man auch schreiben22 ∂det(A) = adj(A)T . ∂A
(2.148)
Mit Gleichung 2.151 ergibt sich daraus unmittelbar ∂ det(A) = (AT )−1 det(A). ∂A
(2.149)
Dar¨ uber hinaus gilt f¨ ur den Logarithmus des Betrages der Determinante
∂|det(A)| 1 ∂ log |det(A)| = (AT )−1 . = ∂A |det(A)| ∂A 22
Die Schreibweise ∂K/∂A bedeutet f¨ ur die (M × N )-Matrix A ⎞ ⎛ ∂K ∂K ∂K · · · ∂a ∂a12 ∂a11 1N ⎟ ⎜ ∂K ∂K ⎟ ⎜ ∂K ⎜ ∂a21 ∂a22 · · · ∂a2N ⎟ ∂K ⎟ ⎜ = ⎜. ⎟. .. . . .. ⎟ ⎜. ∂A . ⎟ ⎜. . . ⎠ ⎝ ∂K ∂K ∂K · · · ∂aM N ∂aM 1 ∂aM 2
(2.150)
2.2 Matrizen und Vektoren
•
31
Matrixinversion: Eine Matrix heißt inverse Matrix A−1 der Matrix A, wenn A−1 A = I und ar. In diesem Falle AA−1 = I gelten. Existiert die Inverse, dann ist A regul¨ ist die Determinante von A ungleich Null. Die Inverse kann unter Zuhilfenahme von adjungierter Matrix und Determinante berechnet werden A−1 =
•
1 adj(A). det(A)
(2.151)
Moore-Penrose-Pseudoinverse: Die Moore-Penrose-Pseudoinverse einer Matrix A ∈ RM ×N ist definiert mit ⎧ ⎨ (AT A)−1 AT M ≥N # A = (2.152) ⎩ AT (AAT )−1 M ≤ N. Rechenregeln f¨ ur die Pseudoinverse: (A# )# = A # T
(2.153) T #
(A ) = (A ) AAT (A# )T = A (A# )T AT A = A
(2.154) (2.155) (2.156)
(λA)# = λ−1 A# A = (A A)# AT = AT (AAT )#
(2.157) (2.158)
A# AAT = AT AT AA# = AT
(2.159) (2.160)
#
T
• Matrix-Inversions-Lemma (Woodbury-Formel): Mit A als einer regul¨aren (N × N )-Matrix sowie den (N × M )-Matrizen B und C gilt, falls (A + BCT ) ∈ RN ×N und (I + CT A−1 B) ∈ RM ×M ebenfalls regul¨ar sind, (A + BCT )−1 = A−1 − A−1 B(I + CT A−1 B)−1 CT A−1 .
(2.161)
N¨ utzlich ist diese Beziehung vor allem bei M N . Bei bekannter Matrix A−1 muss dann nur noch eine (M × M )-Matrix invertiert werden. Eine Verallgemeinerung ergibt sich f¨ ur positiv definite Matrizen A, B und (A + CBCT ). Dann gilt (A + CBCT )−1 = A−1 − A−1 C(B−1 + CT A−1 C)−1 CT A−1 . (2.162)
32
•
2 Mathematische Grundlagen
Gradient einer skalaren Gr¨oße:
⎛
∂y ∂x1
⎜ ∂y ⎜ ∂x2 ∂y(x) ⎜ =⎜ grad y = ∇x y = yx (x) = ⎜ . ∂x ⎜ .. ⎝
⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠
(2.163)
∂y ∂xN
Regeln f¨ ur die Gradientenberechnung:
∂b(x) T ∂a(x) T ∂[a(x)T b(x)] ] a(x) ] b(x) + [ =[ ∂x ∂x ∂x
= [∇x aT (x)]b(x) + [∇x bT (x)]a(x) ∂ T (x y) = y ∂x
∂ T (x Ay) = Ay ∂x ∂ T (x x) = 2x ∂x ∂ T (x Ax) = (A + AT )x ∂x ∂ T (y Ax) = (yT A)T = AT y ∂x
∂ T [a (x)Qa(x)] = [∇x aT (x)][Q + QT ]a(x) ∂x
(2.164)
(2.165)
(2.166)
(2.167)
(2.168)
(2.169)
(2.170)
F¨ ur eine quadratische und symmetrische Matrix A und y(x) = xT Ax − 2bT x + zT z
(2.171)
erh¨alt man den Gradienten ∂y(x) = 2Ax − 2b. ∂x
•
Gradient einer vektoriellen Gr¨ oße (Jacobi-Matrix): ⎛ ∂y1 ∂y1 ∂y1 ⎞ ∂x1 ∂x2 · · · ∂xN ⎟ ⎜ ∂y ∂y ∂y2 ⎟ 2 ⎜ 2 · · · ⎜ ∂xN ⎟ ∂y(x) ⎜ ∂x1 ∂x2 ⎟ =⎜ . .. . . .. ⎟ ⎜ .. ∂x . . ⎟ . ⎟ ⎜ ⎠ ⎝ ∂y ∂y ∂y M M M ∂x1 ∂x2 · · · ∂xN
(2.172)
(2.173)
2.2 Matrizen und Vektoren
33
2.2.6 Matrix- und Vektor-Normen Normen sind nichtnegative Skalare, die, in Abh¨ angigkeit vom Kontext, als Maß f¨ ur die L¨ange, Gr¨oße oder Distanz genutzt werden. Eine Vektor-Norm im RN ist eine Funktion f (x) = x : RN → R, die folgende Eigenschaften aufweist: x ≥ 0 α · x = |α| · x x + y ≤ x + y
mit Gleichheit f¨ ur x = 0,
(2.174)
f¨ ur ein beliebiges skalares α, Dreiecksungleichung.
(2.175) (2.176)
Die p-Norm eines (N × 1)-Vektors x = [x1 , ..., xN ]T ist definiert mit $ %N % p |xi |p mit p ∈ R+ . (2.177) xp = & i=1
¨ Ubliche Werte f¨ ur p sind p = 1, 2 und ∞.23 Die Tschebyscheff-Norm kann abweichend (jedoch ¨aquivalent) zu Gleichung 2.177 auch mit x∞ = max |xi |
(2.178)
notiert werden. Allgemein gilt f¨ ur p-Normen die H¨ older-Ungleichung |xT y| ≤ xp · yq
mit
1 1 + = 1. p q
(2.179)
Daraus ergibt sich als Spezialfall die Cauchy-Schwarz’sche Ungleichung |xT y| ≤ x2 · y2 ,
(2.180)
mit Gleichheit genau dann, wenn f¨ ur ein skalares α die Beziehung x = α · y gilt. Alle Vektor-Normen im RN sind ¨ aquivalent, d.h. es gibt Konstanten c1 und ur alle x ∈ RN gilt c2 , so dass f¨ c1 xα ≤ xβ ≤ c2 xα .
(2.181)
Zum Beispiel gelten [44] x2 ≤ x1 ≤
√
√
N · x2 ,
x∞ ≤ x2 ≤ N · x∞ x∞ ≤ x1 ≤ N · x∞ . 23
(2.182)
und
p = 1: Eins-Norm, p = 2: euklidische Norm, p = ∞: Tschebyscheff-Norm
(2.183) (2.184)
34
2 Mathematische Grundlagen
Matrix-Normen werden wie Vektor-Normen zum Messen von L¨ angen und Abst¨anden in Matrixr¨ aumen genutzt. Auch sie sind Funktionen f : RM ×N → R, die die folgenden drei Eigenschaften besitzen: A ≥ 0 α · A = |α| · A
mit Gleichheit f¨ ur A = 0, α ∈ R,
A + B ≤ A + B Dreiecksungleichung. Die u ¨blichen Matrixnormen sind die Frobenius-Norm $ %M N % |aij |2 AF = &
(2.185) (2.186) (2.187)
(2.188)
i=1 j=1
und die p-Normen Ap = sup
x=0
Axp . xp
(2.189)
P -Normen gen¨ ugen der Cauchy-Schwarz’schen-Ungleichung24 A ∈ RM ×N , B ∈ RN ×Q .
ABp ≤ Ap Bp
(2.190)
Matrixnormen f¨ ur Matrizen A ∈ RM ×N besitzen unter anderem folgende Eigenschaften [44]: √ (2.191) A2 ≤ AF ≤ N · A2 √ (2.192) max |aij | ≤ A2 ≤ M N · max |aij | i,j
i,j
A1 = max
1≤j≤N
A2 =
'
M
λmax ;
A∞ = max
1≤i≤M
|aij |
(2.193)
i=1
N
λmax: maximaler Eigenwert von ATA(2.194) |aij |
(2.195)
i=1
√ 1 √ A∞ ≤ A2 ≤ M A∞ N √ 1 √ A1 ≤ A2 ≤ N A1 M
(2.196)
(2.197)
Die Konditionszahl25 einer Matrix A ∈ RN ×N ist definiert als condp (A) = Ap · A−1 p . 24 25
Diese Ungleichung gilt nicht f¨ ur alle Matrixnormen! engl.: condition number
(2.198)
2.2 Matrizen und Vektoren
35
Anstelle einer p-Norm kann in Gleichung 2.198 auch die Frobenius-Norm genutzt werden. Es kann ferner gezeigt werden, dass cond(A) ≥ 1 gilt. Matrizen mit kleinen Konditionszahlen werden als gut konditioniert, Matrizen mit großen Konditionszahlen als schlecht konditioniert bezeichnet. Mit einer großen Konditionszahl sind bei der L¨ osung von Gleichungssystemen große nummerische Fehler zu erwarten.
3 Optimierung
¨ 3.1 Uberblick Optimierungsverfahren sind ein unabdingbares Hilfsmittel f¨ ur die Beantwortung vieler naturwissenschaftlicher, technischer und wirtschaftlicher Fragestellungen. Ihre Aufgabe besteht in der systematischen Suche und Lokalisierung der Minimalpunkte von Funktionen, oft auch unter Ber¨ ucksichtigung verschiedener Nebenbedingungen. Die Aufgabenstellung der Optimierung ist gegeben mit: Minimiere f (x), ucksichtigung von x ∈ RN , unter Ber¨ c(x) = 0, c : RN → RM
Gleichungsnebenbedingungen (GNB)
(3.1)
und h(x) ≤ 0, h : RN → RQ
Ungleichungsnebenbedingungen (UNB). (3.2)
Im Allgemeinen gilt f¨ ur eine Optimierungsaufgabe M < N . Bei M = N ist x bereits durch die Gleichungsnebenbedingungen weitgehend festgelegt, d.h. die Optimierungsm¨ oglichkeit entf¨allt. Im Falle von M > N ist x u ¨berbestimmt. In kompakter Schreibweise erh¨alt man als Aufgabenstellung der Optimierung min f (x)
x∈X
mit X = {x|c(x) = 0; h(x) ≤ 0}.
(3.3)
Die Funktion f (x) wird als Kosten- oder G¨ utefunktion bezeichnet und X gibt den zul¨ assigen Bereich an. Funktionen k¨ onnen lokale und globale Minima besitzen. F¨ ur ein lokales Minimum der Kostenfunktion an der Stelle x∗ gilt f (x∗ ) ≤ f (x)
(3.4)
38
3 Optimierung
f¨ ur alle zul¨assigen x in einer ausreichend kleinen Umgebung von x∗ . Ein globales Minimum gen¨ ugt der Bedingung f (x∗ ) ≤ f (x)
∀x ∈ X.
(3.5)
Beide F¨alle werden in Abbildung 3.1 gezeigt.
Abb. 3.1. Lokale und globale Minima
3.2 Minimierung einer Funktion einer Variablen 3.2.1 Problemstellung und Optimalit¨ atsbedingungen Die Anwendung der in Gleichung 3.3 beschriebenen allgemeinen Optimierungsproblemstellung auf diesen Spezialfall f¨ uhrt zu min f (x);
x∈X
X ⊆ R.
(3.6)
Gleichungsnebenbedingungen bleiben hier unber¨ ucksichtigt, da mit einer solchen die Variable x bereits auf die L¨osungsmenge von c(x) = 0 festgelegt w¨ are und das Optimierungsproblem dann meist entf¨ allt. Ungleichungsnebenbedingungen k¨ onnen jedoch angegeben werden. Die f¨ ur ein lokales Minimum im Inneren des zul¨ assigen Bereiches notwendige Bedingung erster Ordnung ist die verschwindende Ableitung f (x∗ ) = 0.
(3.7)
Die hinreichende Bedingung zweiter Ordnung lautet f (x∗ ) = 0
und f (x∗ ) > 0.
(3.8)
Prinzipiell k¨ onnen Minima auch in Randpunkten des zul¨ assigen Bereiches liegen. In einem solchen Fall m¨ ussen die Bedingungen erster oder zweiter Ordnung nicht gelten. Ein Beispiel daf¨ ur ist das globale Minimum in Abbildung 3.1.
3.2 Minimierung einer Funktion einer Variablen
39
3.2.2 Nummerische Optimierungsverfahren Eine rechnergest¨ utzte L¨osungsfindung ist vorwiegend dann notwendig, wenn die Kostenfunktion selbst bzw. ihre Ableitung analytisch nicht verf¨ ugbar oder die analytische Optimierungsrechnung insgesamt zu schwierig ist. Nummerische Optimierung besteht aus meist zwei Phasen: der Eingrenzungsphase und der Suchphase [72]. Die erste Phase (Eingrenzungsphase) beinhaltet die Suche nach einem Intervall [a; b], in dem das Minimum der Funktion f (x) vermutet wird. Die zweite Phase (Suchphase) dient der Minimumsuche innerhalb des in der ersten Phase gefundenen Suchintervalls. In den Abbildungen 3.2 und 3.4 wird jeweils ein solches Verfahren vorgestellt.
Abb. 3.2. Prinzipielle Programmstruktur des Eingrenzungsverfahrens (vgl. [72])
Der in Abbildung 3.2 dargestellte Eingrenzungsalgorithmus kann verbessert ugbar werden, wenn Informationen u ¨ber den Wert des Minimums f (x∗ ) verf¨ sind. Dann kann die Schrittweite ∆x mit ∆x =
−2[f (a) − f (x∗ )] f (a)
(3.9)
gew¨ahlt werden [72]. Dieser Schrittweite liegt eine quadratische Interpolation zugrunde, d.h., es wird ein quadratisches Sch¨atzpolynom fˆ(x) = αx2 + βx + γ gebildet und an die Funktion f (x) angepasst, indem die Koeffizienten des Sch¨atzpolynoms aus dem Gleichungssystem
40
3 Optimierung
fˆ(a) = αa2 + βa + γ = f (a) fˆ(ˆ x) = αˆ x2 + β x ˆ + γ = f (x∗ )
(3.10)
ˆ
(3.12)
(3.11)
f (a) = 2αa + β = f (a)
gewonnen werden. Wie in Abbildung 3.3 gezeigt, ergibt sich ∆x in Gleichung 3.9 aus der Differenz zwischen dem aktuellen Wert a und dem Minimumpunkt des Sch¨atzpolynoms x ˆ, d.h. ∆x = x ˆ − a.
x f(a)
f(x)
a
x*
f(x)
x
x
f(x*)
Abb. 3.3. Wahl der Schrittweite der Eingrenzungsphase bei bekanntem Minimalwert f (x∗ )
Ist das Suchintervall eingegrenzt, d.h. ist das Intervall [a; b] gefunden, kann die Suchphase begonnen werden. Der hier vorgestellte Suchalgorithmus basiert auf einer quadratischen Interpolation1 . Dazu wird vorausgesetzt, dass die Funktionswerte f (a), f (b) und deren Ableitungen f (a) oder f (b) bekannt sind bzw. berechnet oder abgesch¨atzt werden k¨onnen. Die zu minimierende Funktion f (x) wird in diesem Verfahren durch die quadratische Funktion fˆ(x) = αx2 + βx + γ approximiert. Um die Parameter α, β und γ zu ermitteln, werden von den bekannten Funktionswerten f (a), f (b), f (a), f (b) drei ausgew¨ahlt. So ergibt sich zum Beispiel mit der Auswahl f (a), f (b) und f (a) das Gleichungssystem fˆ(a) = αa2 + βa + γ = f (a) fˆ(b) = αb2 + βb + γ = f (b) fˆ (a) = 2αa + β = f (a).
(3.13) (3.14) (3.15)
Die Stelle x ˆ, an der die approximierende Funktion fˆ(x) ihr Minimum besitzt, dient als Sch¨atzwert f¨ ur die Stelle des Minimums von f (x). Die Minimalstelle von fˆ(x) liegt bei !
x) = 2αˆ x+β =0 f (ˆ β ⇒x ˆ=− . 2α 1
Weitere Algorithmen werden in Abschnitt 3.3 besprochen.
(3.16)
(3.17)
3.3 Minimierung einer Funktion mehrerer Variablen ohne Nebenbedingungen
41
Befindet sich die Sch¨ atzung x ˆ außerhalb des Suchintervalls, wird gem¨ aß (1 − δ)a + δb x ˆ 0
und ⎛
mit
fxx
⎜ ⎜ ⎜ =⎜ ⎜ ⎝
∂2f ∂2f (x) (x) · · · ∂x1 ∂xN ∂x1 ∂x1 .. .. . . 2
2
∂ f ∂ f (x) (x) · · · ∂xN ∂xN ∂x1 ∂xN
∀η ∈ RN ,
(3.23)
⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠
(3.24)
als Hesse-Matrix. Die Bedingung η T fxx (x∗ )η > 0 in Gleichung 3.23 zeigt, dass die Hesse-Matrix im Falle eines Minimums positiv definit sein muss. Zur Pr¨ ufung der Definitheit einer Matrix existieren verschiedene Kriterien, unter anderem das Sylvesterkriterium und das Eigenwertkriterium. F¨ ur das Sylvesterkriterium werden die nordwestlichen Unterdeterminanten Di einer quadratischen Matrix A ∈ RN ×N definiert [72] a11 · · · a1N a11 a12 .. , . . . , DN = .. (3.25) D1 = a11 , D2 = . . . a21 a22 aN 1 · · · aN N Es gilt dann2 f¨ ur alle i = 1, . . . , N 2
Es gelten folgende Bezeichnungen: A > 0: A ist positiv definit, A ≥ 0: A ist positiv semidefinit, A < 0: A ist negativ definit und A ≤ 0: A ist negativ semidefinit.
3.3 Minimierung einer Funktion mehrerer Variablen ohne Nebenbedingungen
Di Di (−1)i Di (−1)i Di
>0 ≥0 >0 ≥0
⇒A>0 ⇒A≥0 ⇒A 0, ≥ 0, < 0, ≤ 0,
reell reell reell reell
⇒A>0 ⇒A≥0 ⇒A 0 gibt, f¨ ur das gilt x(l+1) − x∗ ≤ cx(l) − x∗ 2 ;
3 4
(3.29)
l bezeichnet den Index der Optimierungsiteration. Weitere Kriterien zur Beurteilung von Optimierungsverfahren sind [84]: a) der Anwendbarkeitsbereich, b) genutzte Funktions- und Ableitungswerte usw. und c) der Rechenaufwand pro Iteration.
44
•
3 Optimierung
{x(l) } ist superlinear konvergent, wenn gilt x(l+1) − x∗ = 0. l→∞ x(l) − x∗ lim
(3.30)
Algorithmische Struktur Die hier betrachteten Verfahren, die auch als Suchrichtungsverfahren bezeichnet werden, besitzen eine einheitliche algorithmische Struktur [72]: 1. Wahl des Startpunktes x(0) ; Initialisierung des Iterationsindex auf l = 0 2. Bestimmung der Suchrichtung s(l) 3. Bestimmung der skalaren Schrittweite α(l) > 0 und Neuberechnung von x mit (3.31) x(l+1) = x(l) + α(l) s(l) 4. Bei Erf¨ ullung des Abbruchkriteriums: Beendigung der Iteration; andernfalls Start der n¨achsten Iteration ab Schritt (2) mit inkrementiertem Iterationsindex, d.h. l = l + 1 Die bei diesem Verfahren auftretenden Probleme entstehen5 unter anderem durch lokale Minima, zu denen die Verfahren konvergieren. Globale oder zumindest bessere Minima k¨onnen z.B. durch mehrere Optimierungsversuche mit jeweils unterschiedlichen Startpunkten oder auch weitere, nicht in die Kostenfunktion integrierte Kriterien zur L¨osungsg¨ ute gefunden werden. Die Suchrichtung wird generell so festgelegt, dass der Gradient g und die Suchrichtung s einen stumpfen Winkel bilden, d.h. sT · g < 0
(Abstiegsbedingung).
(3.32)
Die Begr¨ undung f¨ ur diese Bedingung liefert Abbildung 3.5. Der Gradient weist in Richtung des gr¨oßten Anstiegs und steht senkrecht auf der Isokoste6 . Eine Verringerung der Kostenfunktion ist nur m¨oglich, wenn die Suchrichtung vom Startpunkt aus in die obere Bildh¨alfte in Abbildung 3.5 weist. Die Bestimmung einer geeigneten Suchrichtung wird in den folgenden Abschnitten besprochen. 5 6
außer bei konvexen Problemen Isokoste: H¨ ohenlinie der Kostenfunktion
3.3 Minimierung einer Funktion mehrerer Variablen ohne Nebenbedingungen
45
Abb. 3.5. Geometrische Veranschaulichung der Abstiegsbedingung (vgl. [72])
Bestimmung der Suchrichtung Gradientenverfahren (Steilster Abstieg) Bei dem einfachsten Verfahren zur Suchrichtungsbestimmung ist die Suchrichtung gleich dem negativen Gradienten s(l) = −g(l) .
(3.33)
Die Erf¨ ullung der Abstiegsbedingung kann leicht gezeigt werden mit (s(l) )T g(l) = −|g|2 < 0.
(3.34)
Der Erfolg dieses Verfahrens liegt in seiner Einfachheit. In der Regel wird ein Bereich in der N¨ ahe des Minimums rasch erreicht. Nachteilig ist jedoch die
Abb. 3.6. Schlecht konditioniertes Problem (links) und gut konditioniertes Problem (rechts). Die Konditionierung beeinflusst wesentlich die Anzahl der notwendigen Iterationsschritte.
aufgrund des kleinen Gradienten langsame, lineare Konvergenz des Verfahrens in der unmittelbaren N¨ahe des Minimums. Bei schlechter Problemkonditionierung k¨onnen mitunter sehr viele Iterationsschritte notwendig sein. Ein schlecht sowie ein gut konditioniertes Problem zeigt Abbildung 3.6.
46
3 Optimierung
Newton-Verfahren Das Newton-Verfahren dient zur iterativen L¨osung nichtlinearer Gleichungssysteme g(x) = 0, d.h. zur iterativen Suche der Nullstellen von g(x). Wie Abbildung 3.7 f¨ ur den eindimensionalen Fall veranschaulicht, wird in jeder Iteration die Nullstelle von g(x) gesch¨atzt, in dem beim vorhandenen Sch¨ atzwert f¨ ur die Nullstelle x(l) eine Tangente an die Funktion g(x(l) ) gelegt wird. Der
Abb. 3.7. Veranschaulichung des Newton-Verfahrens f¨ ur den eindimensionalen Fall
Schnittpunkt der Tangente mit der x-Achse ist der neue Nullstellen-Sch¨ atz¨ ∆x = x(l+1) − x(l) erh¨ alt man mit wert x(l+1) . Die Anderung !
g(x(l+1) ) = g(x(l) ) + g (x(l) )∆x = 0 und ∆x = −
g(x(l) ) . g (x(l) )
(3.35)
(3.36)
Erweitert man diesen eindimensionalen Fall auf mehrere Dimensionen, ergibt sich aus der Taylor-Entwicklung bis zum Glied erster Ordnung7 !
g(x(l+1) ) = g(x(l) ) + gx (x(l) )∆x(l) = 0,
(3.37)
und nach Umstellen ∆x(l) = −gx−1 (x(l) ) · g(x(l) ).
(3.38)
Die Verbindung zwischen dem Newton-Verfahren zur Nullstellensuche und Optimierungsproblemen entsteht aus der Optimalit¨ atsbedingung erster Ordnung, bei der die erste Ableitung bzw. der Gradient verschwinden muss. Das heißt, das Newtonverfahren wird zum Finden der Nullstellen der ersten Ableitung oder des Gradienten eingesetzt. Die Gleichungsbedingung g(x) = 0 des 7
Dies entspricht der Berechnung der Tangente.
3.3 Minimierung einer Funktion mehrerer Variablen ohne Nebenbedingungen
47
Newton-Verfahrens und die Optimalit¨ atsbedingung erster Ordnung fx (x) = 0 werden deshalb zusammengef¨ uhrt !
!
g(x) = 0 = fx (x).
(3.39)
Die im Newton-Verfahren genutzte Ableitung gx (x) entspricht der HesseMatrix der Kostenfunktion gx (x) = fxx (x).
(3.40)
Mit Gleichung 3.38 sowie s(l) = ∆x(l) erh¨ alt man nun die Suchrichtung des Newton-Verfahrens zur Optimierung −1 (l) s(l) = −fxx (x )fx (x(l) ).
(3.41)
−T (s(l) )T fx(l) = −fxT (x(l) )fxx (x(l) )fx (x(l) ) < 0.
(3.42)
Die Abstiegsbedingung
ist erf¨ ullt, wenn die Hesse-Matrix positiv definit ist, also fxx (x(l) ) > 0. Falls die Hesse-Matrix nicht positiv definit ist, kann sie im jeweiligen Iterationsdurchlauf durch die Einheitsmatrix ersetzt werden. In diesem Falle geht das Newton-Verfahren in das Gradientenverfahren u ¨ber. Der Vorteil des Newton-Verfahrens besteht in seiner schnellen Konvergenz, die in der N¨ahe des Optimums quadratisch ist. Nachteilig ist der hohe Rechenaufwand, der durch die Invertierung der Hesse-Matrix entsteht. Quasi-Newton-Verfahren Bei den Quasi-Newton-Verfahren wird die inverse Hesse-Matrix nicht wie im Newton-Verfahren berechnet, sondern symmetrisch approximiert. Daraus resultiert eine beachtliche Reduktion des notwendigen Rechenaufwandes. Die Suchrichtung wird festgelegt mit s(0) = −g(0) = −fx (x(0) ) s(l) = −G(l) g(l) l ≥ 1.
(3.43) (3.44)
F¨ ur die Approximation G der inversen Hesse-Matrix fxx (x(l) ) existieren verschiedene L¨osungen, unter anderem [72]
48
3 Optimierung
1. die DFP-Formel8
G
(l)
GyyT G δδ T = G+ T − T y Gy δ y
(l−1) (3.45)
,
mit δ (l−1) = x(l) − x(l−1) , (l−1)
y =g (0) G =I 2. die BFGS-Formel9
G
(l)
yT Gy = G+ 1+ T δ y
(l)
(l−1)
−g sowie
(3.46) und
δyT G + Gyδ T δδ T − T δT y δ y
(3.47) (3.48)
(l−1) ,
(3.49)
mit zur DFP-Formel ¨aquivalenten Abk¨ urzungen und Startbedingungen. Die Abstiegsbedingung ist erf¨ ullt, wenn G(l) > 0 gilt. Dies ist zumindest bei 10 exakter Linienoptimierung der Fall [72]. Die Vorteile des Verfahrens bestehen in der schnellen Konvergenz11 und dem im Vergleich zum Newton-Verfahren erheblich verringerten Rechenaufwand. Die positive Definitheit der Approximationsmatrix G ist bei Nichtanwendung von exakter Linienoptimierung nicht gew¨ahrleistet und sollte dann mit einem geeigneten Kriterium u ¨berwacht werden. Die BFGS-Formel ist nach [72] in einigen F¨ allen robuster. Bei quadratischen Problemen der Dimension N ist eine L¨ osung nach maximal N Iterationsschritten erreicht. Konjugiertes Gradientenverfahren Das konjugierte Gradientenverfahren liegt bez¨ uglich seiner Effizienz nur wenig hinter den Quasi-Newton-Verfahren zur¨ uck und ben¨otigt gleichzeitig nur wenig mehr Gesamtrechenkapazit¨at als ein Gradientenverfahren. Die Suchrichtung ergibt sich aus s(0) = −g(0) (l)
s
= −g
(l)
(3.50) +β
(l)
(l−1)
·s
mit der Fletcher-Reeves-Formel 8 9 10 11
DFP: Davidon, Fletcher, Powell (1963) BFGS: Broyden, Fletcher, Goldfarb, Shano (1970) Linienoptimierung: siehe Abschnitt 3.3.3 etwas langsamer als das Newton-Verfahren
l ≥ 1,
(3.51)
3.3 Minimierung einer Funktion mehrerer Variablen ohne Nebenbedingungen
β (l) =
(g(l) )T g(l) (g(l−1) )T g(l−1)
oder der Polak-Ribi`ere-Formel ( (l) T (l) (g ) (g − g(l−1) ) , 0 . β (l) = max (g(l−1) )T g(l−1)
49
(3.52)
(3.53)
Gem¨aß [81] konvergiert der Algorithmus mit der Polak-Ribi`ere-Formel in der Regel schneller. Die Pr¨ ufung der Abstiegsbedingung ergibt (s(l) )T g(l) = −(g(l) )T g(l) + β (l) (s(l−1) )T g(l) .
(3.54)
Der erste Term ist stets kleiner Null, w¨ahrend der zweite Term zumindest bei exakter Linienoptimierung stets Null ist. Daher ist die Abstiegsbedingung, zumindest bei exakter Linienoptimierung, immer erf¨ ullt. Zusammenfassung der Verfahren zur Bestimmung der Suchrichtung Einen prinzipiellen Trend bez¨ uglich des Aufwandes der einzelnen Verfahren zeigt Abbildung 3.8. In vielen F¨allen sind die Quasi-Newton-Verfahren mit dem geringsten Gesamtaufwand verbunden [72].
Abb. 3.8. Aufwand der einzelnen Optimierungsverfahren im Vergleich
3.3.3 Schrittweitenbestimmung Effiziente Schrittweiten Neben der Suchrichtung u ¨bt die Schrittweite einen entscheidenden Einfluss auf die Konvergenz eines Optimierungsverfahrens aus. Zu kleine Schrittweiten haben einen Anstieg der Anzahl der zur Konvergenz notwendigen Iterationen zur Folge. Unter Umst¨ anden kann der Algorithmus auch in nicht optimale
50
3 Optimierung
Punkte konvergieren. Zu große Schrittweiten verursachen h¨ aufig die Divergenz des Optimierungsverfahrens. Einen Ausgleich zwischen beiden Extremen erh¨ alt man, wenn die Schrittweite ullt, d.h. [84] α(l) das Prinzip des hinreichenden Abstiegs erf¨ f (x(l) ) − f (x(l) + α(l) s(l) ) ≥ −c1 α(l) (g(l) )T s(l)
und
(3.55)
(l) T (l)
(g ) s α(l) ≥ −c2 ) )2 , )s(l) )
(3.56)
mit g(l) = fx (x(l) ) und den Konstanten c1 , c2 > 0. Die Abstiegsbedingung ullt vorausgesetzt. (g(l) )T s(l) < 0 wird dabei als erf¨
Schrittweitenbestimmung nach Goldstein-Armijo Zur Bestimmung einer Schrittweite, die der Anforderung des hinreichenden Abstiegs gen¨ ugt, kann der iterativ durchzuf¨ uhrende Goldstein-ArmijoAbstiegstest [84, 2] genutzt werden. Hierbei w¨ahlt man den Iterationsstartwert unter den Voraussetzungen (g(l) )T s(l) < 0 und 0 < c3 c4 mit (g(l) )T s(l) (g(l) )T s(l) . (3.57) , −c α0 ∈ −c3 4 s(l) 2 s(l) 2
angig zu w¨ahlen. Mit ihnen soll Die Konstanten c3 und c4 sind problemabh¨ ein sinnvoller Startbereich f¨ ur die Schrittweiten-Iteration eingegrenzt werden. Die Schrittweite αj wird im Schrittweiten-Iterationsschritt j mit αj = β j α0
j = 0, 1, 2, . . . ; 0 < β < 1
(3.58)
berechnet. Abgebrochen wird die Schrittweiten-Iteration, wenn die Bedingung f (x(l) ) − f (x(l) + αj s(l) ) ≥ −δαj (g(l) )T s(l) ,
δ>0
(3.59)
erf¨ ullt ist. Das Ergebnis der Schrittweiten-Iteration kann nun in der aktuellen Iteration des Optimierungsalgorithmus als Schrittweite u ¨bernommen werden, ur die Konvergenz dieses Verfahrens zu einer d.h. α(l) = αj . Einen Beweis f¨ Schrittweite, die dem Prinzip des hinreichenden Abstiegs gen¨ ugt, findet man unter anderem in [84]. Geeignete Werte f¨ ur δ und β sind nach [84] δ = 0.01
und β = 0.5.
(3.60)
Die graphische Interpretation dieses Tests enth¨alt Abbildung 3.9. Verglichen ¨ wird beim Armijo-Verfahren die Anderung der Kostenfunktion f (x(l) +αj s(l) ) (l) mit dem mit der Tangente im Punkt x erzielbaren hypothetischen Abstieg. Unterscheiden sich Kostenfunktion und Tangente zu stark, ist die Schrittweite zu groß und die Tangente approximiert die Kostenfunktion im Punkt
3.3 Minimierung einer Funktion mehrerer Variablen ohne Nebenbedingungen
51
Abb. 3.9. Graphische Interpretation der Goldstein-Armijo-Regel
x(l) + αj s(l) nicht mehr ausreichend gut. In diesem Fall muss die Schrittweite reduziert werden. Die Bewertung des Grades der Unterschiedlichkeit wird vor allem durch den Parameter δ gesteuert. Unter Nutzung der Interpolationsformeln in Abschnitt 3.2.2 kann, alternativ zu Gleichung 3.58, eine geeignete Schrittweite auch mit einer Kombination aus Interpolation und Reduktion ermittelt werden [84] (( −(g(l) )T s(l) α2j−1 , αj = max β αj−1 , min βαj−1 , 2[f (x(l) +αj−1 s(l) )−f (x(l) )+αj−1 (g(l) )T s(l) ] (3.61) mit 0 < β < β < 1.
Linienoptimierung Einen anderen Weg zur Bestimmung sinnvoller Schrittweiten bietet die Linienoptimierung. Die mehrdimensionale Optimierungsaufgabe wird hier auf ein eindimensionales Problem zur¨ uckgef¨ uhrt. Gesucht wird das Minimum der Kostenfunktion f (·) entlang der durch die Suchrichtung vorgegebenen Linie, d.h. (3.62) min F (α) = min f (x(l) + αs(l) ). α>0
α>0
Die Schrittweite im aktuellen Iterationsschritt ist dann α(l) = argmin[f (x(l) + αs(l) )] = α∗ .
(3.63)
Dieser Vorgehensweise liegt die Annahme zugrunde, dass die Suchrichtung zum Minimum der Kostenfunktion weist. Bei vorausgesetzter G¨ ultigkeit dieser Annahme stimmt das Minimum entlang der durch die Suchrichtung vorgegebenen Linie mit dem gesuchten Minimum der Kostenfunktion u ¨berein. Zumindest bei gut konditionierten Problemen kann die Anzahl der Iterationen auf diese Weise erheblich reduziert werden.
52
3 Optimierung
Am Linienminimum ist der Gradient der Kostenfunktion orthogonal zur Suchrichtung. Dies ergibt sich unmittelbar aus der Optimalit¨ atsbedingung erster Ordnung F (α∗ ) = 0, denn mit der Kurzschreibweise X(α) = x(l) + αs(l) und unter Ber¨ ucksichtigung von Gleichung 3.62 gilt im Minimalpunkt der Suchrichtungslinie [72] !
F (α∗ ) = fx [X(α∗ )]T · X (α∗ ) = g[X(α∗ )]T · s(l) = 0.
(3.64)
¨ Setzt man in Gleichung 3.64 die Vorschrift f¨ ur die Anderung des Funktionsargumentes innerhalb des Iterationszyklus x(l+1) = x(l) + α∗ s(l) = X(α∗ ) = X(α(l) )
(3.65)
ein und substituiert zus¨atzlich g[X(α(l) )] = g(l+1) ,
(3.66)
erh¨alt man sofort die Orthogonalit¨at von Gradient und Suchrichtung im Linienminimum (g(l+1) )T · s(l) = 0. (3.67) Dieses Ergebnis ist sehr plausibel, denn h¨ atte der Gradient noch Anteile in Suchrichtung, k¨onnte der gefundene Punkt kein Optimalpunkt sein. Falls die Funktion f (·) nicht analytisch vorliegt oder die Ableitung nicht analytisch berechnet werden kann, besteht die M¨ oglichkeit, das Minimum entlang der Linie s mit einem nummerischen Verfahren zu finden, z.B. mit den in Abschnitt 3.2 besprochenen Interpolationsformeln. Da die Linienoptimierung bei zerkl¨ ufteten Kostenfunktionen nicht immer schnell zum Minimum f¨ uhrt, sollte die nummerische Suche des Linienminimums nicht zu exzessiv betrieben werden. Falls die Anzahl der notwendigen Suchschritte zu stark ansteigt, kann man die Linienoptimierung abbrechen oder mit einem Re-Start neu beginnen. Dieser Weg wird im folgenden Abschnitt beschrieben. 3.3.4 Abbruch und Re-Start Die iterative Suche nach dem Minimum wird beendet, wenn die erste Optimalit¨ atsbedingung zu einem gewissen Grade erf¨ ullt ist. In der Regel vergleicht man dazu den Betrag bzw. die L¨ ange des Gradienten |g(l) | mit einem Schwellwert θ > 0. Der Abbruch der Minimumsuche erfolgt, wenn die L¨ ange des Gradienten den vorgegebenen Schwellwert unterschreitet, d.h. |g(l) | < θ.
(3.68)
Prinzipiell k¨onnen, insbesondere bei den Quasi-Newton- und KonjugierteGradienten-Verfahren, Fehlsituationen auftreten, die zu einer schlechten Konvergenz f¨ uhren. In solchen F¨ allen m¨ ussen geeignete Gegenmaßnahmen getroffen werden, z.B. die Durchf¨ uhrung eines Re-Starts [72]. Dazu wird die laufende
3.4 Skalierungsfragen
53
Iteration abgebrochen und im n¨achsten Zyklus zun¨ achst mit der Suchrichtung uber hinaus ein s(l+1) = −g(l+1) weiter optimiert. Gegebenenfalls muss dar¨ neuer Startvektor ausgew¨ ahlt werden. Typische Merkmale von Fehlsituationen, die einen Re-Start erfordern k¨ onnen, sind unter anderem eine zu hohe Anzahl von Iterationen in der Linienoptimierung oder eine Degeneration der Suchrichtung. W¨ ahrend bei der Linienoptimierung die Anzahl der notwendigen Iterationsschritte im Vorfeld begrenzt werden kann, sind Degenerationen der Suchrichtung erkennbar durch zum Gradienten orthogonale Suchrichtungsvektoren, d.h. (s(l) )T · g(l) ≈ 0.
(3.69)
Diese Degeneration kann zum Beispiel mit einer vorgegebenen Schwelle θ u ¨berpr¨ uft werden θ > 0. (3.70) (s(l) )T · g(l) < θ|s(l) | · |g(l) | Insbesondere bei hochdimensionalen Problemen wird in [10, 72] ein periodischer Re-Start alle N Iterationen vorgeschlagen.
3.4 Skalierungsfragen Alle Suchrichtungsverfahren k¨ onnen das Optimierungsproblem bei exakter Linienoptimierung in einer Iteration l¨osen, falls es sich bei der Kostenfunktion um eine Hyperkugel handelt. Praktisch liegen solche Optimierungsprobleme nur in seltenen F¨ allen vor. Vielmehr muss h¨ aufig von einer schlechten Konditionierung ausgegangen werden, die zu einer erheblichen Erh¨ ohung der Anzahl der notwendigen Iterationen f¨ uhren kann. Eine Umskalierung der Optimierungsvariablen wird in einigen F¨ allen dazu genutzt, die Konditionierung des Optimierungsproblems zu verbessern. Unter Umst¨ anden ist damit eine betr¨achtliche Verringerung der Anzahl der Iterationsschritte m¨ oglich. Die Optimierungsvariablen werden dazu mit einer regul¨ aren quadratischen Matrix A transformiert [72] ˜ = Ax x
bzw.
˜. x = A−1 x
(3.71)
Die urspr¨ ungliche Kostenfunktion f (x) kann nun in eine Funktion der transformierten Variablen u uhrt werden ¨berf¨ ˜ ) = f˜(˜ f (x) = f (A−1 x x).
(3.72)
Der Zusammenhang zwischen den Gradienten der urspr¨ unglichen und der transformierten Kostenfunktion ergibt sich mit [72] T d˜ x ˜ (˜ x) = A T g f˜x˜ (˜ x). (3.73) x) = g(x) = fx (x) = f˜x (˜ dx
54
3 Optimierung
Analog folgt f¨ ur die Hesse-Matrix gx (x) =
bzw.
˜ (˜ x)] d[AT g = AT f˜x˜ x˜ (˜ x)A dx
x) = A−T fxx (x)A−1 . f˜x˜ x˜ (˜
(3.74)
(3.75)
Eine gute Konditionierung liegt vor, wenn x) ≈ I. f˜x˜ x˜ (˜
(3.76)
Probleme bei dieser Umskalierung ergeben sich nicht nur aus der Schwierigkeit, eine geeignete Matrix A zu finden, sondern vor allem auch aus dem Umstand, dass die Hesse-Matrizen im Allgemeinen nicht konstant sind, d.h. sich von Iteration zu Iteration ver¨andern. Trotz der Ver¨ anderlichkeit der HesseMatrix sind jedoch oft Verbesserungen erreichbar. Gegebenenfalls kann die Umskalierung auch zu Beginn eines jeden Re-Starts neu durchgef¨ uhrt werden, z.B. mit der Skalierungsmatrix [10, 72] ' fxi xi (x) . (3.77) A = diag
3.5 Minimierung unter Gleichungsnebenbedingungen 3.5.1 Problemstellung und Optimalit¨ atsbedingungen Optimalit¨ atsbedingung nach Lagrange Das allgemeine Optimierungsproblem in Gleichung 3.3 reduziert sich in diesem Fall auf mit X = {x|c(x) = 0}. (3.78) min f (x) x∈X
Zur Ableitung der Optimalit¨atsbedingung wird die Kostenfunktion um einen ¯ in eine nach dem ersten Glied abgebrochene Taylor-Reihe zul¨assigen Punkt x entwickelt [72] x)T ∆x. (3.79) f (¯ x + ∆x) ≈ f (¯ x) + fx (¯ Zul¨assig sind lediglich die Variationen ∆x, die in erster N¨ aherung die Gleichungsnebenbedingungen erf¨ ullen, d.h. f¨ ur die c(¯ x + ∆x) = 0 gilt. Die nach dem ersten Glied abgebrochene Taylor-Reihenentwicklung der Gleichungsnebenbedingungen ergibt !
x)∆x = 0, c(¯ x + ∆x) ≈ c(¯ x) + cx (¯ mit der Jacobi-Matrix
(3.80)
3.5 Minimierung unter Gleichungsnebenbedingungen
⎛
c1,x1 ⎜ c2,x1 ⎜ cx = ⎜ . ⎝ .. cM,x1
c1,x2 · · · c1,xN c2,x2 · · · c2,xN .. . . .. . . . cM,x2 · · · cM,xN
⎞
⎛
55
⎞
−−− c1,x −−− ⎟ ⎜ −−− c2,x −−− ⎟ ⎟ ⎜ ⎟ ⎟=⎜ ⎟. .. ⎠ ⎝ ⎠ . −−− cM,x −−−
(3.81)
¯ zul¨ Da bereits x assig ist, d.h. c(¯ x) = 0, muss als notwendige Bedingung cx (¯ x)∆x = 0
(3.82)
gelten. Dies bedeutet, dass eine zul¨assige Variation ∆x orthogonal zu jeder Zeile der Jacobi-Matrix cx (¯ x) sein muss. Die Zeilenvektoren ci,x der Jacobi-
Abb. 3.10. Die zul¨ assige Variation ist orthogonal zur Ableitung der Gleichungsnebenbedingungen (hier f¨ ur den Fall N = 3 und M = 2).
Matrix sind an einem regul¨aren Punkt unabh¨ angig und spannen einen M dimensionalen Vektorraum Ψ auf, der, wie in Abbildung 3.10 gezeigt, orthogonal zur Variation ∆x ist [72]. Die zul¨assige Variation ∆x liegt demnach im komplement¨ aren, (N − M )-dimensionalen Vektorraum Φ. Da jedoch auch die erste Variation fxT ∆x der Kostenfunktion im Optimum verschwinden muss12 , ist auch der Gradient fx orthogonal zur Variation ∆x und liegt daher ebenfalls im Vektorraum Ψ [72]. Aus diesem Grunde kann er durch die Linearkombination der Zeilenvektoren der Jacobi-Matrix dargestellt werden, d.h. fx (x∗ ) +
M
λ∗i cTi,x (x∗ ) = 0,
(3.83)
i=1
mit den skalaren λ∗i als optimale Lagrange-Multiplikatoren. Gleichung 3.83 kann als Gradient der Lagrange-Funktion L(x, λ) = f (x) + λT c(x) 12
(3.84)
Nicht der gesamte Gradient fx muss im Optimum Null sein, sondern lediglich seine Komponenten in die zul¨ assigen Variationsrichtungen. Dies ist gleichbedeutend mit fx ⊥ ∆x.
56
3 Optimierung
aufgefasst werden, wobei λT = [λ1 , λ2 , . . . , λM ] bezeichnet. Die notwendigen Optimalit¨atsbedingungen erster Ordnung sind damit Lx (x∗ , λ∗ ) = fx (x∗ ) + cTx (x∗ )λ∗ = 0
und
Lλ (x∗ , λ∗ ) = c(x∗ ) = 0.
(3.85) (3.86)
Als notwendige Bedingung zweiter Ordnung gilt wie im Falle der Optimierung ohne Gleichungsnebenbedingungen Lxx (x∗ , λ∗ ) > 0.
(3.87)
Die Bedeutung der Lagrange-Multiplikatoren Die Lagrange-Multiplikatoren λi k¨onnen als Maß f¨ ur die Empfindlichkeit des Minimalwertes der Kostenfunktion gegen¨ uber einer Ver¨ anderung der jeweiligen Gleichungsnebenbedingung ci (x) interpretiert werden (vgl. [72]).13 Die Begr¨ undung sei im Folgenden kurz skizziert. Es wird zun¨ achst eine kleine Abweichung ε der Gleichungsnebenbedingungen vom Nullpunkt angenommen, d.h.14 c(x) = ε, (3.88) mit 0 < |ε| 1. Die Lagrange-Funktion wird dann zu L(x, λ, ε) = f (x) + λ[c(x) − ε].
(3.89)
Die L¨osungen des Optimierungsproblems k¨onnen nun, wie in Abbildung 3.11 beispielhaft gezeigt, als Funktionen von ε aufgefasst werden, d.h. x∗ = x∗ (ε) und λ∗ = λ∗ (ε) bzw. f ∗ (ε) = f [x∗ (ε)] und L∗ (ε) = L(x∗ (ε), λ∗ (ε)). Die Empfindlichkeit des Minimums der Kostenfunktion gegen¨ uber Ver¨ anderungen der Gleichungsnebenbedingungen erh¨alt man, indem man ε variiert, die zugeh¨origen Optimalstellen x∗ (ε) zu einer Kurve verbindet und schließlich die Ableitung von ∂f (x∗ (ε))/∂ε entlang dieser Kurve berechnet15
f (x∗ (ε + ∆ε)) − f (x∗ (ε)) ∂f (x∗ (ε)) = lim ∆ε→0 ∆ε ∂ε ∂L(x∗ (ε), λ∗ (ε)) L(x∗ (ε + ∆ε)) − L(x∗ (ε)) . = = lim ∆ε→0 ∂ε ∆ε 13
14 15
(3.90)
¨ Mit der Anderung der Gleichungsnebenbedingungen ¨ andert sich auch der zul¨ assige Bereich. Deshalb ¨ andern sich im Allgemeinen auch Stelle und Funktionswert des Minimums der Kostenfunktion. ¨ Aus Ubersichtlichkeitsgr¨ unden wird in der folgenden Rechnung M = 1, d.h. nur eine Nebenbedingung, angenommen. Die ausreichende Differenzierbarkeit von f (x(ε)) und L(x(ε), λ(ε)) wird vorausgesetzt.
3.5 Minimierung unter Gleichungsnebenbedingungen
57
Abb. 3.11. Variation der Nebenbedingungen durch Variation von ε und die Ver¨ anderung der Kostenfunktion
Die Gleichheit der Ableitungen von Kosten- und Lagrangefunktion ergibt sich wegen [c(x) − ε] = 0 in allen durch die Nebenbedingung vorgegebenen Punkten. Aus Gleichung 3.90 folgt ferner
∂L(x∗ (ε), λ∗ (ε)) ∂f (x∗ (ε)) = ∂ε ∂ε
= fxT (x∗ )
(3.91)
∂x∗ ∂λ∗ ∂x∗ − 1 (3.92) [c(x∗ ) − ε] + λ∗ cTx (x∗ ) + ∂ε ∂ε ∂ε
* + ∂x∗ ∂λ∗ [c(x∗ ) − ε] − λ∗ + = fxT (x∗ ) + λ∗ cTx (x∗ ) ∂ε ∂ε
= LTx (x∗ , λ∗ )
∂λ∗ ∂x∗ Lλ (x∗ , λ∗ ) − λ∗ . + ∂ε ∂ε
(3.93)
(3.94)
Aufgrund der Optimalit¨ atsbedingungen Lx (x∗ , λ∗ ) = 0 und Lλ (x∗ , λ∗ ) = 0 erh¨alt man schließlich ∂f (x∗ ) = −λ∗ . (3.95) ∂ε
Die Interpretation der Lagrange’schen Multiplikatormethode Die Nebenbedingungen sind nicht in allen Punkten der Kostenfunktion f (x) erf¨ ullt, sondern nur in bestimmten Bereichen, z.B. entlang einer Kurve c(x) = 0. Eine solche Kurve f¨ ur genau eine Nebenbedingung ist in Abbildung 3.12 dargestellt. Ein Optimalpunkt entlang dieser Kurve ist dann gefunden, wenn der Gradient fx keine Anteile in Richtung der Nebenbedingungskurve aufweist, also senkrecht auf der Kurve steht. Der Gradient der Nebenbedingungen steht ebenfalls senkrecht auf der Kurve, da sich der Wert der Nebenbedingung entlang der Kurve nicht ¨andert. F¨ ur ein Optimum m¨ ussen also die Gradienten von Kostenfunktion und Nebenbedingung parallel verlaufen, d.h.
58
3 Optimierung
Abb. 3.12. Kurve, auf der die Nebenbedingungen erf¨ ullt sind
˜ · cx (x∗ ). fx (x∗ ) = λ
(3.96)
˜ sorgt f¨ Der skalare Proportionalit¨atsfaktor λ = −λ ur gleiche L¨ ange und Vorzeichen der Gradientenvektoren. Durch Umstellen der Gleichung 3.96, d.h. fx (x∗ ) + λ · cx (x∗ ) = 0
(3.97)
wird deutlich, dass es sich hier um den Gradienten einer neuen Kostenfunktion L(x) = f (x) + λ · c(x)
(3.98)
handelt. Bei mehreren Gleichungsnebenbedingungen kann diese letztere Gleichung erweitert werden auf L(x) = f (x) + λi · ci (x), (3.99) i
womit man die Lagrange-Kostenfunktion erh¨alt.
3.5.2 Optimierungsalgorithmen ¨ Ublicherweise wird im Falle der Minimierung unter Gleichungsnebenbedingungen versucht, die Lagrange-Funktion aufzustellen und das daraus resultierende Gleichungssystem zur Optimierung zu l¨osen. Einen ¨ aquivalenten Weg bietet das Einsetzverfahren, das unter anderem in [84] und [2] ausf¨ uhrlich beschrieben ist.
3.6 Minimierung unter Gleichungs- und Ungleichungsnebenbedingungen
59
3.6 Minimierung unter Gleichungs- und Ungleichungsnebenbedingungen 3.6.1 Problemstellung und Optimalit¨ atsbedingungen Die Optimierung mit Gleichungs- und Ungleichungsnebenbedingungen entspricht der allgemeinen Form des Optimierungsproblems in Gleichung 3.3 mit X = {x|c(x) = 0; h(x) ≤ 0}.
min f (x)
x∈X
(3.100)
F¨ ur einen m¨oglichen L¨ osungsansatz und zur Bestimmung der Optimalit¨ atsbedingungen k¨onnen die Ungleichungsnebenbedingungen h(x) ≤ 0 in aktive und inaktive Ungleichungsnebenbedingungen unterschieden werden, wobei im ¯ f¨ x) = 0 zul¨assigen Punkt x ur die aktiven Ungleichungsnebenbedingungen ha (¯ x) < 0 gilt. und f¨ ur die inaktiven Ungleichungsnebenbedingungen hi (¯ Die inaktiven Ungleichungsnebenbedingungen k¨ onnen bei der Optimierung zun¨achst unber¨ ucksichtigt bleiben. F¨ ur die aktiven Ungleichungsnebenbedingungen muss jedoch die zul¨ assige Variation ∆x um einen zul¨ assigen Punkt der Bedingung x)∆x ≤ 0 (3.101) hax (¯ gen¨ ugen. Mit der gleichen Begr¨ undung wie im Falle der Gleichungsnebenbedingungen ist der Gradient der Kostenfunktion im Optimum x∗ eine Linearkombination der Zeilenvektoren der Jacobi-Matrizen der Gleichungs- und der aktiven Ungleichungsnebenbedingungen, d.h. fx (x∗ ) +
M i=1
λ∗i cTi,x (x∗ ) +
∗ µ∗i ha,T i,x (x ) = 0,
(3.102)
i∈Qa
bei gleichzeitiger G¨ ultigkeit von c(x∗ ) = 0 und ha (x∗ ) = 0. Im Optimum ur gilt dar¨ uber hinaus µ∗i ≥ 0. Dies bedeutet, dass, wie in Abbildung 3.13 f¨ eine Ungleichungsnebenbedingung gezeigt, der Gradient der Kostenfunktion entgegengesetzt zum Gradienten der aktiven Ungleichungsnebenbedingung ausgerichtet sein muss. Andernfalls w¨ urde die Kostenfunktion im zul¨ assigen onnen ohne die UngleichungsneBereich (ha < 0) kleinere Werte annehmen k¨ benbedingung zu verletzen16 , der Punkt x∗ also nicht optimal sein. Die allgemeine Kostenfunktion einschließlich Gleichungs- und Ungleichungsnebenbedingungen ist L(x, λ, µ) = f (x) + λT c(x) + µT h(x), 16
Der negative Gradient zeigt in den zul¨ assigen Bereich hinein.
(3.103)
60
3 Optimierung
Abb. 3.13. Bedeutung der Ungleichungsnebenbedingung f¨ ur eine UNB (vgl. [72])
mit λ als Vektor der Lagrange-Multiplikatoren und µ als Vektor der KuhnTucker-Multiplikatoren. Die notwendigen Bedingungen 1. Ordnung (KuhnTucker-Bedingungen) f¨ ur ein Optimum sind Lx (x∗ , λ∗ , µ∗ ) = fx (x∗ ) + cx (x∗ )T λ∗ + hx (x∗ )T µ∗ = 0 Lλ (x∗ , λ∗ , µ∗ ) = c(x∗ ) = 0 h(x∗ ) ≤ 0 h(x∗ )T µ∗ = 0 µ∗ ≥ 0.
(3.104) (3.105) (3.106) (3.107) (3.108)
Die notwendige Bedingung h(x∗ )T µ∗ = 0 kann auch als hi (x∗ ) · µ∗i = 0,
i = 1, . . . , q
(3.109)
interpretiert werden, da f¨ ur die Kuhn-Tucker-Multiplikatoren µi ≥ 0 gilt und ullt sein muss. Dementspredie Ungleichungsnebenbedingung hi (x∗ ) ≤ 0 erf¨ chend sind alle Summanden dieser notwendigen Bedingung nicht-positiv. Da die Summe jedoch Null ist, m¨ ussen auch die Summanden Null sein. Daraus ur folgt, dass f¨ ur die inaktiven Ungleichungsnebenbedingungen µ∗i = 0 und f¨ die aktiven Ungleichungsnebenbedingungen µ∗i ≥ 0 gilt. F¨ ur die L¨ osung des Optimierungsproblems m¨ ussen nun alle m¨ oglichen Kombinationen von aktiven und inaktiven Ungleichungsnebenbedingungen abgearbeitet werden. 3.6.2 Weitere L¨ osungsans¨ atze Prinzipiell besteht die M¨oglichkeit, zun¨achst das Optimierungsproblem ohne Ber¨ ucksichtigung der Ungleichungsnebenbedingungen zu l¨ osen. Ist eine L¨osung gefunden, kann gepr¨ uft werden, ob die gefundene L¨ osung den Ungleichungsnebenbedingungen gen¨ ugt. Falls dies so ist, ist die Optimierungsaufgabe gel¨ ost. Ist nur eine Nebenbedingung verletzt, kann eventuell noch auf heuristischem Wege eine Optimall¨osung gefunden werden. Bei mehreren verletzten Ungleichungsnebenbedingungen d¨ urfte dies jedoch erheblich schwieriger
3.7 Weitere Bemerkungen
61
sein, so dass insgesamt ein wie oben beschriebenes systematisches Verfahren ben¨otigt wird.
3.7 Weitere Bemerkungen Der Einsatz der hier vorgestellten Optimierungsverfahren ist im Allgemeinen auf Optimierungsprobleme niedriger Dimension beschr¨ ankt. Insbesondere bei großen Problemdimensionen ist die Anwendung anderer Methoden notwendig, z.B. Straffunktionsverfahren, Verfahren der zul¨ assigen Richtung, Verfahren der Multiplikatoren-Straffunktion oder der exakten Straffunktion. Diese sind in vielen Mathematik-Programmbibliotheken verf¨ ugbar. Prinzipiell ist es sinnvoll, solche Bibliotheken zu benutzen, da die eigene Entwicklung im Allgemeinen zu aufw¨andig und fehleranf¨allig ist. Auskunft u ¨ber geeignete Programmbibliotheken gibt unter anderem [14]. Die Entwicklungen der letzten Jahre haben viele weitere Optimierungsstrategien hervorgebracht, so zum Beispiel [85] genetische Algorithmen [43, 49, 42], Simulated Annealing [58] und evolution¨ are Verfahren [79, 35, 36]. Insbesondere im Falle von stark zerkl¨ ufteten oder durch große Ebenen gekennzeichneten Kostenfunktionen k¨onnen solche Verfahren vorteilhaft eingesetzt werden.
4 Bayes-Sch¨ atzung
¨ 4.1 Uberblick Die Bayes-Sch¨ atzung geh¨ort zu den wichtigsten Konzepten der Signalverarbeitung. Sie stellt die Verallgemeinerung und damit ein Rahmenwerk f¨ ur einen Großteil klassischer und moderner Sch¨atzalgorithmen dar, so unter anderem f¨ ur die Maximum-Likelihood-Sch¨atzung, die Sch¨ atzung nach dem Prinzip des kleinsten mittleren Fehlerquadrats und die Maximum-a-posteriori-Sch¨ atzung. Die Bayes-Sch¨ atzung basiert auf dem Satz von Bayes: Mit den Auftretenswahrscheinlichkeiten P (A) und P (B) f¨ ur die Ereignisse A und B, den bedingten Wahrscheinlichkeiten1 P (A|B) und P (B|A) sowie der Wahrscheinlichkeit P (A, B) des gemeinsamen Auftretens der Ereignisse A und B gilt P (A|B)P (B) = P (B|A)P (A) = P (A, B).
(4.1)
Direkt aus dem Satz von Bayes folgt P (A|B) =
P (B|A)P (A) . P (B)
(4.2)
Die Wahrscheinlichkeit P (A) in Gleichung 4.2 wird als A-priori-Wahrscheinlichkeit bezeichnet, da sie die Wahrscheinlichkeit des Auftretens des Ereignisses A ohne Wissen um das Ereignis B wiedergibt. Die A-priori-Wahrscheinlichkeit repr¨asentiert im Bayes’schen Ansatz das Vorwissen. P (A|B) ist die 1
Die bedingte Wahrscheinlichkeit P (A|B) ist die Auftretenswahrscheinlichkeit von Ereignis A, wenn das Ereignis B bei einem anderen Zufallsexperiment oder bei einer vorherigen Durchf¨ uhrung des gleichen Zufallsexperimentes bereits eingetreten ist.
64
4 Bayes-Sch¨ atzung
Abb. 4.1. Veranschaulichung des Satzes von Bayes (P (B|A) = 1/4, P (A|B) = 1/4, P (A, B) = 1/12)
A-posteriori-Wahrscheinlichkeit, die die Wahrscheinlichkeit des Ereignisses A nach Eintreffen des Ereignisses B angibt. Analog zu den Auftretenswahrscheinlichkeiten in Gleichung 4.2 gilt f¨ ur Verteilungsdichten der kontinuierlichen Zufallsvariablen X und Y fX|Y (x|y) =
fY |X (y|x)fX (x) . fY (y)
(4.3)
4.2 Sch¨ atztheorie 4.2.1 Zielstellung Die Sch¨atztheorie besch¨aftigt sich zum einen mit der Entwicklung von Sch¨ atzalgorithmen, zum anderen aber auch mit der Bewertung und dem Vergleich verschiedener Sch¨atzverfahren. Die Aufgabe von Sch¨ atzverfahren besteht in der Sch¨atzung von Parametern von z.B. Verteilungsdichtefunktionen2 bzw. adiktiver Modelstatistischen Modellen3 , der Sch¨atzung der Koeffizienten pr¨ atigten Beobachtungen. le4 oder auch der Sch¨atzung von Signalen aus get¨ 2 3
4
z.B. Mittelwert und Varianz Ein statistisches bzw. probabilistisches Modell beschreibt die zuf¨ alligen Signalfluktuationen mit Verteilungsdichtefunktionen und deren Parametern wie z.B. Mittelwert, Varianz, Kovarianz. Die Motivation f¨ ur die Anwendung von Modellen in der Signalverarbeitung ergibt sich aus der M¨ oglichkeit der Verkn¨ upfung von im Modell enthaltenem Vorwissen mit den beobachteten Signalwerten. Auf diesem Wege ist zum Beispiel der Ausschluss abwegiger Messdaten m¨ oglich bzw. allgemein die Gewichtung von Vorwissen und beobachteten Signalwerten entsprechend ihrer statistischen Sicherheit. Dar¨ uber hinaus geben Modelle die M¨ oglichkeit, Struktur, Zusammensetzung und Entstehung von Signalen zu verstehen und gezielt zu beeinflussen. Ein pr¨ adiktives Modell beschreibt die Korrelationsstruktur eines Signals, siehe z.B. lineare Pr¨ adiktion. Ebenso k¨ onnen auch konditionale probabilistische Modelle die Korrelationsstruktur erfassen.
4.2 Sch¨ atztheorie
65
4.2.2 Bewertungskriterien f¨ ur Sch¨ atzer Sch¨atzalgorithmen5 verarbeiten beobachtete Signalwerte. Diese Signalwerte sind in gewissem Grade zuf¨allig oder unterliegen zuf¨ alligen Schwankungen. Deshalb sind die Ergebnisse eines Sch¨atzers gleichfalls zuf¨ allig und k¨ onnen z.B. mit einer Verteilungsfunktion statistisch beschrieben werden. Mit Hilfe dieser statistischen Beschreibung der Sch¨ atzergebnisse ist deren Bewertung m¨ oglich. Wichtig f¨ ur die Bewertung eines Sch¨atzverfahrens sind vor allem folgende Kennwerte: •
ˆ Mit ihm wird das mittlere Ergebnis eines Sch¨ der Erwartungswert E[θ]: atzalgorithmus angegeben6 .
•
ˆ − θ: Mit ihm wird die durchder systematische Fehler7 E[θˆ − θ] = E[θ] schnittliche Abweichung des Sch¨atzergebnisses vom wahren Parameterwert bemessen.
•
ˆ = E[(θˆ − E[θ])( ˆ θˆ − E[θ]) ˆ T ]: Sie ist die Kovarianz der Sch¨ atzung Cov(θ) ein Index f¨ ur die Schwankung des Sch¨atzergebnisses um den mittleren Sch¨atzwert sowie Abh¨ angigkeiten der verschiedenen Sch¨ atzwertschwankungen untereinander.
Ein guter Sch¨atzer weist keinen systematischen Fehler sowie eine m¨ oglichst kleine Kovarianz auf. Mit Bezug auf die Bewertungskriterien k¨ onnen folgende Eigenschaften von Sch¨atzalgorithmen definiert werden: •
erwartungstreuer Sch¨ atzer8 : ˆ =θ E[θ]
(4.4)
Der Sch¨atzalgorithmus ermittelt den wahren Parameterwert. •
asymptotisch erwartungstreuer Sch¨ atzer9 : ˆ =θ lim E[θ]
N →∞
(4.5)
Das Ergebnis des Sch¨atzalgorithmus n¨ ahert sich mit gr¨ oßerer Datenanzahl N an den wahren Parameterwert an. 5 6 7 8 9
Sch¨ atzalgorithmen werden auch als Sch¨ atzer bezeichnet. θˆ bezeichnet den Sch¨ atzwert f¨ ur den zu sch¨ atzenden Parameter θ. engl.: bias engl.: unbiased estimator engl.: asymptotically unbiased estimator
66
•
4 Bayes-Sch¨ atzung
konsistenter Sch¨ atzer10 : lim P [|θˆ − θ| > ε] = 0,
N →∞
(4.6)
mit ε > 0 und beliebig klein. Gleichung 4.6 beschreibt eine Konvergenz in Wahrscheinlichkeit und definiert die einfache bzw. schwache Konsistenz. Von starker Konsistenz spricht man bei Konvergenz mit Wahrscheinlichkeit 1 [13] (4.7) P [ lim θˆ = θ] = 1 N →∞
und von Konsistenz im quadratischen Mittel bei lim E[(θˆ − θ)T (θˆ − θ)] = 0.
N →∞
(4.8)
Starke Konsistenz und Konsistenz im quadratischen Mittel schließen einfache Konsistenz mit ein. •
wirksamer Sch¨ atzer11 : ˆ Cov(θˆwirksam ) ≤ Cov(θ)
(4.9)
Die Varianz des Sch¨atzergebnisses besitzt im eindimensionalen Fall, d.h. θ = θ, den kleinstm¨ oglichen Wert. Im Falle mehrdimensionaler Parametervektoren ber¨ uhrt Cov(θˆwirksam ) die Cram´er-Rao-Schranke (siehe Abschnitt 4.2.3). Beim Entwurf von Sch¨atzalgorithmen ist man im Allgemeinen bem¨ uht, wirksame Verfahren zu entwickeln. Dies ist mit den im Abschnitt 4.4 beschriebenen Maximum-Likelihood-Sch¨atzern (ML-Sch¨ atzern) prinzipiell m¨ oglich. Allerdings sind ML-Sch¨atzer oft schwierig zu berechnen, so dass in diesen F¨ allen auf einfachere, meist nicht-wirksame Methoden, z.B. Momenten-Verfahren, zur¨ uckgegriffen werden muss. 4.2.3 Die Cram´ er-Rao-Schranke Das Kriterium der Wirksamkeit soll im Folgenden noch einmal n¨ aher betrachtet werden. Prinzipiell k¨ onnen Sch¨atzalgorithmen einen Parameterwert nicht beliebig genau bestimmen. Es gibt vielmehr eine untere Schranke f¨ ur die ˆ = E[(θˆ − θ)2 ] eines erwartungsVarianz einer Sch¨atzung. Die Varianz var(θ) treuen Sch¨atzers ist von unten beschr¨ankt durch die Cram´er-Rao-Schranke (CR-Schranke), die sich aus der Verteilungsdichte des beobachteten Signals12 f (y|θ) mit 10 11 12
engl.: consistent estimator engl.: efficient estimator ¨ Aus Ubersichtlichkeitsgr¨ unden wird die bedingte Verteilungsdichte fY |Θ (y|θ) im Folgenden mit f (y|θ) notiert.
4.2 Sch¨ atztheorie
1 ˆ var(θ) ≥ E [(∂ log f (y|θ)/∂θ)2 ]
= I −1 (θ)
67
(4.10)
θ=wahrer Parameterwert
ergibt. I(θ) ist die Fisher-Information. Zur Herleitung von Gleichung 4.10 wendet man die Cauchy-Schwarz’sche Unalt gleichung13 auf E[(∂ log f (y|θ)/∂θ)(θˆ − θ)] an und erh¨ (E[(∂ log f (y|θ)/∂θ)(θˆ − θ)])2 ≤ E[(∂ log f (y|θ)/∂θ)2 ]E[(θˆ − θ)2 ].
(4.11)
Ferner gilt bei vorausgesetzter Vertauschbarkeit von Differentiation und Inteˆ =θ gration sowie E[θ] ∂ log f (y|θ) ˆ ∂ log f (y|θ) ˆ (θ − θ)f (y|θ)dy (4.12) (θ − θ) = E ∂θ ∂θ ∂f (y|θ) ˆ (θ − θ)dy (4.13) = ∂θ ∂f (y|θ) ∂f (y|θ) ˆ dy (4.14) θdy − θ = ∂θ ∂θ ∂ ˆ −θ ∂ f (y|θ)dy (4.15) f (y|θ)θdy = ∂θ ∂θ ∂ ˆ − θ ∂ 1 = ∂ θ − θ · 0 = 1. (4.16) E[θ] = ∂θ ∂θ ∂θ
Wird dieses Ergebnis in Gleichung 4.11 eingesetzt, ergibt sich sofort die Cram´er-Rao-Schranke. Ein Sch¨atzer, der die CR-Schranke erreicht, ist wirksam. Soll eine differenzierbare Funktion g(θ) gesch¨atzt werden, ergibt sich die CRSchranke mit (∂g/∂θ)2 . (4.17) var(ˆ g) ≥ E [(∂ log f (y|θ)/∂θ)2 ]
F¨ ur Parameter-Vektoren ist die CR-Schranke f¨ ur die Kovarianz-Matrix des Parametervektors Cθˆ gegeben mit Cθˆ ≥ I−1 θ ,
(4.18)
wobei Iθ die Informations-Matrix bezeichnet und Gleichung 4.18 die positive Semidefinitheit von Cθˆ − I−1 θ bedeutet. Die Informations-Matrix ist definiert mit
T ∂ log f (y|θ) ∂ log f (y|θ) (4.19) Iθ = E . wahrer ∂θ ∂θ θ=
13
(E[x1 x2 ])2 ≤ E[x21 ]E[x22 ]
Parameterwert
68
4 Bayes-Sch¨ atzung
Soll eine differenzierbare vektorwertige Funktion g(θ) gesch¨ atzt werden, ergibt sich die CR-Schranke aus T (4.20) C(ˆ g) ≥ JI−1 θ J , mit J als Jacobi-Matrix der Funktion g(θ).
4.3 Verfahren der Bayes-Sch¨ atzung 4.3.1 Die Berechnung der A-posteriori-Verteilungsdichte Das Bayes’sche Konzept beruht auf der folgenden Idee: Vorhandenes Wissen u ¨ber m¨ogliche Signal- oder Parameterwerte kann zur Bewertung beobachteter Signal- oder gesch¨ atzter Parameterwerte genutzt werden. Das Vorwissen14 legt einen A-priori-Raum aller m¨ oglichen Werte des Signals bzw. des zu sch¨ atzenden Parameters fest. Nach erfolgter Beobachtung, d.h. mit Kenntnis des gemessenen Signals entsteht ein A-posteriori-Raum, in dem alle sowohl mit dem Vorwissen als auch mit der Beobachtung konsistenten Werte enthalten sind. Die Umsetzung dieser Idee erfolgt mit der Verkn¨ upfung von A-priori- und Aposteriori-Verteilungsdichte gem¨ aß dem Bayes’schen Satz. Zum Beispiel erh¨ alt man f¨ ur einen beobachteten Signalvektor y = [y1 , y2 , . . . , yN ] und den gesuchten Parametervektor θ fΘ|Y (θ|y) =
fY |Θ (y|θ)fΘ (θ) fY |Θ (y|θ)fΘ (θ) . = fY (y) fY |Θ (y|θ)fΘ (θ)dθ
(4.21)
θ
Die A-posteriori-Verteilungsdichte fΘ|Y (θ|y) ist proportional zum Produkt von A-priori-Verteilungsdichte fΘ (θ) und der aus der Beobachtung resultierenden Likelihood-Funktion fY |Θ (y|θ). Der Prior wichtet also die Beobachtung und sorgt so f¨ ur deren Konsistenz mit dem Vorwissen. ur eine konkrete Beobachtung konstant und Die Verteilungsdichte fY (y) ist f¨ besitzt lediglich die Aufgabe der Normierung. Allerdings ist fY (y) wegen des Integrals im Nenner des rechten Terms von Gleichung 4.21 oft schwierig zu berechnen. Im Falle gaußscher Verteilungsdichten ist jedoch die analytische Berechnung von fY (y) und damit auch von fΘ|Y (θ|y) relativ einfach, wie das folgende Beispiel zeigt. Beispiel 4.1. Gesucht ist die A-posteriori-Verteilungsdichte f¨ ur den Mittelwert µ bei gaußschem Prior und N gaußverteilten, voneinander statistisch unabh¨angigen Messdaten. Die Varianz der Messdaten wird als bekannt vorausgesetzt. 14
engl.: prior
4.3 Verfahren der Bayes-Sch¨ atzung
Der Prior f¨ ur den Mittelwert ist gegeben mit (µ − µ0 )2 1 , exp − f (µ) = ' 2σ02 2πσ02
69
(4.22)
wobei die Vorinformation sowohl in der gaußschen Verteilungsdichte als auch in den konkreten Werten f¨ ur Varianz und Mittelwert, d.h. σ02 bzw. µ0 besteht. Da die N beobachteten Werte yi laut Aufgabenstellung einer gaußschen Veruber hinaus unteilungsdichte mit bekannter Varianz σ 2 entstammen und dar¨ tereinander statistisch unabh¨ angig sind, ergibt sich die Likelihood-Funktion mit N N " " (yi − µ)2 1 √ (4.23) exp − f (yi |µ) = fY |µ (y|µ) = 2σ 2 2πσ 2 i=1 i=1 , N 2 (y − µ) i . (4.24) = (2πσ 2 )−N/2 exp − i=1 2 2σ
Die Verteilungsdichte f (y) ergibt sich unter Ber¨ ucksichtigung der Gleichungen 4.22 und 4.24 zu ∞ fY |µ (y|µ)f (µ)dµ =
f (y) =
∞ " N
f (yi |µ)f (µ)dµ
−∞ i=1
−∞
(2πσ 2 )−N/2 = ' 2πσ02
∞ −∞
N σ 2 (µ − µ0 )2 + σ02 i=1 (yi − µ)2 dµ exp − 2σ02 σ 2 ,
, N σ 2 µ20 + σ02 i=1 yi2 (2πσ 2 )−N/2 exp − = ' 2σ02 σ 2 2πσ02 ∞ × −∞
Mit [14]
N µ2 (σ 2 + N σ02 ) µ(µ0 σ 2 + σ02 i=1 yi ) dµ. + exp − σ02 σ 2 2σ02 σ 2
∞ −∞
,
. 2 h 2π 1 2 exp exp − A · µ + h · µ dµ = 2A A 2
(4.25)
und A=
σ 2 + N σ02 σ02 σ 2
h=
N σ 2 µ0 + σ02 i=1 yi σ02 σ 2
(4.26)
(4.27)
70
4 Bayes-Sch¨ atzung
erh¨alt man
N N 1 (σ 2 µ0 + σ02 i=1 yi )2 1 σ 2 µ20 + σ02 i=1 yi2 . + f (y) ∝ exp − 2 σ02 σ 2 (σ 2 + N σ02 ) σ02 σ 2 2 ,
(4.28)
Nach Einsetzen der Gleichungen 4.22, 4.24 und 4.28 in Gleichung 4.21 ergibt sich die gaußsche A-posteriori-Verteilungsdichte fµ|Y (µ|y) mit dem Mittelwert und der Varianz µN = µ0
N σ02 σ2 yi + σ 2 + N σ02 i=1 σ 2 + N σ02
1 N 1 2 = σ2 + σ2 σN 0
bzw.
2 σN = σ02
(4.29)
σ2 . + σ2
N σ02
(4.30)
Aus den Gleichungen 4.29 und 4.30 wird die Abh¨angigkeit der Parametersch¨atzwerte von der Datenanzahl deutlich. Wenn keine Messdaten vorhanden sind, gleichen die Parametersch¨ atzwerte den Parameterwerten der A-priori-Verteilungsdichte. F¨ ur große N schrumpft jedoch der Einfluss des Vorwissens. Abbildung 4.2 zeigt dieses Prinzip qualitativ.
Abb. 4.2. Bayes-Lernen: A-posteriori-Verteilungsdichte in Abh¨ angigkeit von der Datenanzahl N (qualitative Darstellung)
4.3.2 Klassische Sch¨ atzverfahren im Kontext der Bayes-Sch¨ atzung Die Bayes’sche Risikofunktion W¨ahrend im vorigen Abschnitt die A-posteriori-Verteilungsdichte mit ihren Parametern direkt berechnet wurde, erfolgt die Parametersch¨atzung nun durch die Minimierung der Bayes’schen Risikofunktion
4.3 Verfahren der Bayes-Sch¨ atzung
ˆ = E[C(θ, ˆ θ)] R(θ) ˆ θ)fY,Θ (y, θ)dydθ = C(θ, θ
71
(4.31) (4.32)
y
ˆ θ)fΘ|Y (θ|y)fY (y)dydθ, C(θ,
= θ
(4.33)
y
ˆ θ) als gewichtete Fehlerfunktion, die die um einen Gewichtsfaktor mit C(θ, erg¨anzten Sch¨atzfehler enth¨ alt.15 Da bei gegebenem Beobachtungsvektor die Verteilungsdichte fY (y) konstant, d.h. ohne Einfluss auf die Optimierung ist, kann die Risikofunktion reduziert werden auf (bedingte Risikofunktion) ˆ = C(θ, ˆ θ)fΘ|Y (θ|y)dθ. R(θ|y) (4.34) θ
Die Minimierung der bedingten Risikofunktion f¨ uhrt zum Bayes-Sch¨ atzwert des Parameters θ ˆ θˆBayes = argmin R(θ|y)
(4.35)
θˆ
⎛ ⎞ ˆ θ)fΘ|Y (θ|y)dθ ⎠ = argmin ⎝ C(θ, θˆ
θ
⎛ ⎞ ˆ θ)fY |Θ (y|θ)fΘ (θ)dθ ⎠ . = argmin ⎝ C(θ, θˆ
(4.36)
(4.37)
θ
ˆ θ) und Prior fΘ (θ) In Abh¨angigkeit von gewichteter Fehlerfunktion C(θ, ergeben sich verschiedene Sch¨atzungen, unter anderem die im Folgenden besprochene Maximum-a-posteriori-Sch¨ atzung (MAP), die Maximum-Likelihood-Sch¨atzung (ML), die Sch¨ atzung nach dem kleinsten mittleren Fehlerquadrat (minimum mean square error, MMSE) und die Sch¨ atzung nach dem kleinsten mittleren Absolutfehler (minimum mean absolute value of error, MAVE). 15
Die Berechnung der Risikofunktion kann als dreistufiges Verfahren interpretiert werden: Zun¨ achst werden f¨ ur alle denkbaren Kombinationen von y und θ die Sch¨ atzwerte θˆ berechnet. Anschließend bewertet die gewichtete Fehlerfunktion ˆ θ) die entstandenen Sch¨ C(θ, atzfehler. Zum Beispiel k¨ onnen gr¨ oßere Fehler st¨ arker gewichtet werden als kleine. Die Mittelung der bewerteten Sch¨ atzfehler im dritten Schritt liefert schließlich einen einzigen Kennwert f¨ ur die G¨ ute der Sch¨ atzung. Sch¨ atzverfahren k¨ onnen nun so entworfen werden, dass sie diesen Kennwert minimieren.
72
4 Bayes-Sch¨ atzung
Maximum-a-posteriori-Sch¨ atzung Die gewichtete Fehlerfunktion der MAP-Sch¨ atzung ist gegeben mit ˆ θ) = 1 − δ(θ, ˆ θ). CM AP (θ, Aus Gleichung 4.34 folgt somit f¨ ur die bedingte Risikofunktion16 ˆ = [1 − δ(θ, ˆ θ)]fΘ|Y (θ|y)dθ RM AP (θ|y)
(4.38)
(4.39)
θ
ˆ = 1 − fΘ|Y (θ|y).
(4.40)
ˆ ist genau dort, wo Das Minimum der bedingten Risikofunktion RM AP (θ|y) ˆ maximal wird. F¨ ur den optimalen die bedingte Verteilungsdichte fΘ|Y (θ|y) ˆ MAP-Sch¨atzwert θM AP folgt deshalb θˆM AP = argmax fΘ|Y (θ|y) = argmax fY |Θ (y|θ)fΘ (θ). θ
(4.41)
θ
Maximum-Likelihood-Sch¨ atzung Die ML-Sch¨atzung besitzt die gleiche gewichtete Fehlerfunktion wie die MAPSch¨atzung ˆ θ) = 1 − δ(θ, ˆ θ). CM L (θ, (4.42) Folglich erh¨alt man die gleiche bedingte Risikofunktion ˆ = [1 − δ(θ, ˆ θ)]fΘ|Y (θ|y)dθ RM L (θ|y)
(4.43)
θ
ˆ = 1 − fΘ|Y (θ|y).
(4.44)
Analog zur MAP-Sch¨ atzung liegt das Minimum der bedingten Risikofunktion ˆ beim Maximum der bedingten Verteilungsdichte fΘ|Y (θ|y), ˆ d.h. RM L (θ|y) θˆM L = argmax fΘ|Y (θ|y) = argmax fY |Θ (y|θ)fΘ (θ). θ
16
θ
unter Ber¨ ucksichtigung der Ausblendeigenschaft der Deltafunktion ∞ ˆ θ)dθ ˆ = f (θ)δ(θ, f (θ) −∞
und der Fl¨ acheneigenschaft der Verteilungsdichte ∞ f (θ)dθ = 1 −∞
(4.45)
4.3 Verfahren der Bayes-Sch¨ atzung
73
Der Unterschied zur MAP-Sch¨atzung resultiert aus einem anderen Prior. Bei der ML-Sch¨atzung wird eine konstante A-priori-Verteilungsdichte fΘ (θ) = const. angenommen. Alle Werte von θ sind aufgrund dieser A-prioriVerteilungsdichte zun¨achst gleichwahrscheinlich. Es fließt demnach kein Vorwissen u atzung ein. Der ML-Sch¨ atzer ist dem¨ber den Parameter θ in die Sch¨ nach gegeben mit (4.46) θˆM L = argmax fY |Θ (y|θ). θ
Die Maximum-Likelihood-Sch¨ atzung wird im Abschnitt 4.4 vertieft.
Sch¨ atzung nach dem kleinsten mittleren Fehlerquadrat Die gewichtete Fehlerfunktion ergibt sich bei diesem Sch¨ atzverfahren aus der quadrierten Differenz zwischen Sch¨atzwert θˆ und wahrem Parameter θ ˆ θ) = (θˆ − θ)2 . CM SE (θ,
(4.47)
Daraus folgt die bedingte Risikofunktion mit ˆ = E[(θˆ − θ)2 |y] RM SE (θ|y) = (θˆ − θ)2 fΘ|Y (θ|y)dθ.
(4.48) (4.49)
θ
Das Minimum der bedingten Risikofunktion erh¨ alt man mit ˆ ∂RM SE (θ|y) ˆ = 2θ fΘ|Y (θ|y)dθ −2 θfΘ|Y (θ|y)dθ ∂ θˆ θ θ 2 01 / =1 ! ˆ = 2θ − 2 θfΘ|Y (θ|y)dθ = 0.
(4.50)
(4.51)
θ
Somit entspricht die MMSE-Sch¨ atzung dem bedingten Erwartungswert (4.52) θˆM M SE = θfΘ|Y (θ|y)dθ = E[θ|y]. θ
Sch¨ atzung nach dem kleinsten mittleren Absolutfehler Als gewichtete Fehlerfunktion wird der Absolutwert der Abweichung zwischen Sch¨ atzwert θˆ und wahrem Parameter θ genutzt ˆ θ) = |θˆ − θ|. CM AV E (θ,
(4.53)
74
4 Bayes-Sch¨ atzung
Die daraus resultierende bedingte Risikofunktion ist ˆ = E[|θˆ − θ|] RM AV E (θ|y) = |θˆ − θ|fΘ|Y (θ|y)dθ
(4.54) (4.55)
θ θ(y) ˆ
∞ ˆ Θ|Y (θ|y)dθ. (4.56) [θ − θ]f
[θˆ − θ]fΘ|Y (θ|y)dθ +
= −∞
ˆ θ(y)
Die Minimierung erfolgt mit θ(y) ˆ ∞ ˆ ∂RM AV E (θ|y) ! = fθ|Y (θ|y)dθ = 0. fθ|Y (θ|y)dθ − ∂ θˆ −∞
(4.57)
ˆ θ(y)
Durch Umstellen ergibt sich unmittelbar θ(y) ˆ
∞
fθ|Y (θ|y)dθ = −∞
fθ|Y (θ|y)dθ.
(4.58)
ˆ θ(y)
Die MAVE-Sch¨ atzung θˆM AV E ergibt somit den Median17 der A-posterioriVerteilungsdichte f¨ ur den Parameter θ. Die Abbildungen 4.3 und 4.4 fassen die verschiedenen gewichteten Fehlerfunktionen und die daraus resultierenden Sch¨atzwerte am Beispiel einer bimodalen Verteilungsdichte noch einmal zusammen.
4.4 Die Maximum-Likelihood-Sch¨ atzung Aufgrund ihrer hervorragenden Eigenschaften ist die ML-Sch¨ atzung ein sehr beliebtes Sch¨ atzverfahren. Sie ist asymptotisch erwartungstreu und gleichfalls wirksam. Die Sch¨atzergebnisse sind gaußverteilt. Die ML-Sch¨ atzung liefert in der Regel auch bei kurzen Datens¨atzen gute Ergebnisse, obwohl die asymptotischen Eigenschaften dann keine G¨ ultigkeit besitzen. Die ML-Sch¨ atzung besitzt die Eigenschaft der Invarianz [57]. Dies bedeutet, dass die ML-Sch¨atzung einer Funktion g(θ) auch durch die Transformation des gesch¨ atzten Parametervektors θˆ berechnet werden kann, d.h. 17
Der Median ist der Punkt einer Verteilung, f¨ ur den gr¨ oßere Werte und kleinere Werte gleichwahrscheinlich sind, also P (x < xM edian ) = P (x > xM edian ).
4.4 Die Maximum-Likelihood-Sch¨ atzung
75
Abb. 4.3. Klassische gewichtete Fehlerfunktionen im Kontext der Bayes-Sch¨ atzung
Abb. 4.4. Beispielhafte Resultate der klassischen Sch¨ atzverfahren im Kontext der Bayes-Sch¨ atzung (MAP f¨ ur den Fall fehlender Vorinformation)
ˆ g ˆ = g(θ).
(4.59)
Gem¨ aß Gleichung 4.46 muss im Rahmen der ML-Sch¨ atzung der Parametervektor θˆ gefunden werden, der die Likelihood-Funktion maximiert. Die vorliegenden Messwerte repr¨ asentieren dann den wahrscheinlichsten Messwertvektor, der mit diesem gefundenen Parametervektor θˆ und der angenommenen Verteilungsdichtefunktion gemessen werden kann.18 Insbesondere bei Verteilungsdichten der exponentiellen Familie wird anstelle der Likelihood-Funktion L die Log-Likelihood-Funktion log L verwendet. Wegen der strengen Monotonie der Logarithmusfunktion ergeben sich f¨ ur Likelihood- und Log-Likelihood-Funktion gleiche Optimalstellen. Der Grund f¨ ur die Nutzung der Log-Likelihood-Funktion besteht in der sich vereinfachenden Rechnung, da zumindest bei exponentiellen Verteilungsdichten die Exponentialfunktion entf¨ allt. Durch Produktbildung entstandene Verbund18
Die der ML-Sch¨ atzung zugrunde liegende Idee ist: Der Messwertvektor y wurde gemessen; deshalb muss sein Auftreten sehr wahrscheinlich sein. Die MLSch¨ atzung gibt den Parametervektor, der den Messwertvektor zum Wahrscheinlichsten aller m¨ oglichen Messwertvektoren werden l¨ asst.
76
4 Bayes-Sch¨ atzung
verteilungsdichten gehen bei der Logarithmierung in einfache Summen u ¨ber. Ferner wird durch die Logarithmierung der Dynamikbereich der Verteilungsdichten eingeschr¨ ankt, womit eine h¨ohere Rechengenauigkeit erzielt werden kann. Nachteilig an der Log-Likelihood-Funktion ist die mitunter, im Vergleich zur Likelihood-Funktion, weniger deutliche Auspr¨ agung der Optima. Die Durchf¨ uhrung einer ML-Sch¨atzung ist nicht immer praktikabel. Im Allgemeinen ergeben sich im Verlaufe der Sch¨atzung nichtlineare Gleichungen, die gegebenenfalls aufw¨andig mit nummerischen Verfahren gel¨ ost werden m¨ ussen. In einigen F¨allen ist eine analytische Rechnung jedoch m¨ oglich. Dazu nutzt man h¨aufig die Annahme, dass N voneinander statistisch unabh¨ angige Messwerte y1 , y2 , . . . , yN der kontinuierlichen Zufallsvariable Y beobachtet werangigkeit der den k¨onnen19 . Aufgrund der angenommenen statistischen Unabh¨ Messwerte yi resultiert die Likelihood-Funktion L = fY|Θ (y|θ) aus der Mulur die beobtiplikation der Werte der Verteilungsdichtefunktion fY |Θ (yi |θ) f¨ achteten yi N " L(y|θ) = fY|Θ (y|θ) = fY |Θ (yi |θ). (4.60) i=1
Beispiel 4.2. Aus N Messwerten yi ist der wahrscheinlichste Mittelwert zu berechnen. Als Voraussetzung wird angenommen, dass alle Messwerte die gleiche gaußsche Verteilungsdichtefunktion mit gleicher unbekannter Varianz und gleichem unbekannten Mittelwert besitzen. Die Likelihood-Funktion erh¨alt man mit N "
* + 1 √ exp −(yi − µ ˆ)2 /(2σ 2 ) 2πσ i=1
N N 1 2 2 exp −1/(2σ ) (yi − µ ˆ) . = √ 2πσ i=1
L=
(4.61)
(4.62)
Daraus ergibt sich die Log-Likelihood-Funktion log L = −
N 1 N (yi − µ ˆ )2 . ln(2π) − N ln σ − 2 2σ i=1 2
(4.63)
Aus der Ableitung der Log-Likelihood-Funktion
∂ log L =0= (yi − µ ˆ) ∂µ ˆ i=1 N
(4.64)
entsteht die bekannte Gleichung f¨ ur den Mittelwert 19
Die Messwerte k¨ onnen zu einem Messwertvektor zusammengestellt werden, d.h. y = [y1 , y2 , . . . , yN ]T .
4.5 Der Expectation-Maximization-Algorithmus
µ ˆ=
N 1 yi . N i=1
77
(4.65)
4.5 Der Expectation-Maximization-Algorithmus ¨ 4.5.1 Uberblick Der Expectation-Maximization-Algorithmus (EM-Algorithmus) geh¨ ort zu den wichtigsten Sch¨ atzalgorithmen der Signalverarbeitung. Er ist ein iteratives Verfahren und wird zur Maximum-Likelihood-Sch¨ atzung aus unvollst¨ andigen Daten verwendet [69]. Die Konvergenz des EM-Algorithmus wird unter anderem in [28] gezeigt.
4.5.2 Maximum-Likelihood-Sch¨ atzung mit unvollst¨ andigen Daten Der EM-Algorithmus erm¨oglicht eine Parameter- oder Signalsch¨ atzung auf der Basis unvollst¨andiger Daten. Unvollst¨andig bedeutet in diesem Zusammenhang, dass nicht alle zur Sch¨atzung notwendigen Informationen vorliegen. Der EM-Algorithmus versucht, diese fehlenden Informationen aus den vorhandenen Daten und vorhandenen Sch¨atzwerten f¨ ur die gesuchten Parameter zu gewinnen. Anschließend wird auf der Grundlage der beobachteten Daten und den Sch¨ atzwerten f¨ ur die fehlenden Informationen eine Maximierung der Likelihood-Funktion bez¨ uglich der gesuchten Parameter durchgef¨ uhrt. Dies f¨ uhrt zu verbesserten Sch¨atzwerten f¨ ur die gesuchten Parameter. Da im Allgemeinen die Sch¨atzung f¨ ur die gesuchten Parameter zu diesem Zeitpunkt noch nicht ausreichend gut ist, wird diese Prozedur mehrfach wiederholt, wobei die verbesserten Parametersch¨atzwerte jeweils im n¨ achsten Durchlauf zur Sch¨ atzung der fehlenden Information genutzt werden. Diese Vorgehensweise f¨ uhrt zu der in Abbildung 4.5 dargestellten Iteration.
Der E-Schritt Die Sch¨ atzung der fehlenden Informationen erfolgt indirekt, indem der Erwaruglich der Verteilungsdichte der tungswert der Log-Likelihood-Funktion20 bez¨ fehlenden Daten berechnet wird. Dieser Schritt wird deshalb als E-Schritt21 bezeichnet. Dies wird im Folgenden vertieft. 20 21
Die Log-Likelihood-Funktion h¨ angt sowohl von den beobachteten Daten als auch von den fehlenden Informationen ab. Expectation (Erwartungswertbildung)
78
4 Bayes-Sch¨ atzung
Abb. 4.5. Ablaufschema des EM-Algorithmus
Die unvollst¨ andigen22 Daten werden mit y bezeichnet, die fehlenden Informationen bzw. fehlenden Daten mit h. Unvollst¨ andige und fehlende Daten vereinigen sich zu den vollst¨andigen Daten z. Die Log-Likelihood-Funktion der vollst¨andigen Daten ist gegeben mit log L = log fZ (z|θ) = log fZ (y, h|θ).
(4.66)
Durch das Fehlen der Daten h ist die Maximum-Likelihood-Sch¨ atzung meist erheblich erschwert. Deshalb wird zun¨achst eine Hilfsfunktion Q eingef¨ uhrt, mit der der Erwartungswert der Log-Likelihood-Funktion der vollst¨ andigen Daten bez¨ uglich der Verteilungsdichte der fehlenden Daten berechnet wird Q = E[log fZ (y, h|θ)].
(4.67)
Die Verteilungsdichte der fehlenden Daten fH (h|y, θˆp ) wird hierbei unter Nutzung der bereits aus der Iteration p vorhandenen Sch¨ atzwerte θˆp der gesuchten Parameter berechnet. Damit ergibt sich Q = [log fZ (y, h|θ)]fH (h|y, θˆp )dh. (4.68) h 22
d.h. die beobachteten Daten
4.5 Der Expectation-Maximization-Algorithmus
79
Der M-Schritt Die Hilfsfunktion Q ist der Erwartungswert der Log-Likelihood-Funktion. Das heißt, sie ist die Log-Likelihood-Funktion, die man im Mittel f¨ ur die verschiedenen Werte der fehlenden Daten h erwarten kann. Deshalb ist es sinnvoll, mit ihr die Maximum-Likelihood-Sch¨atzung f¨ ur die gesuchten Parameter θ durchzuf¨ uhren θˆneu = argmax Q. (4.69) θ
Die neu berechnete ML-Sch¨atzung der gesuchten Parameter kann in der n¨achsten Iteration p + 1 zur Berechnung der Verteilungsdichte fH (h|y, θˆp+1 ) genutzt werden. 4.5.3 Die mathematischen Grundlagen des EM-Algorithmus Der EM-Algorithmus kann als Maximierung einer unteren Schranke der Likelihood-Funktion angesehen werden. Die untere Schranke wird so gew¨ ahlt, dass sie im Punkt der aktuellen Parametersch¨atzung die Likelihood-Funktion ber¨ uhrt. Die Maximierung dieser unteren Schranke f¨ uhrt automatisch zu einem Punkt im Parameterraum, bei dem die Likelihood-Funktion einen
Abb. 4.6. Maximierung der Likelihood-Funktion mit einer unteren Schranke (nach [67])
gr¨ oßeren Wert einnimmt23 . Dies veranschaulicht Abbildung 4.6. Der EMAlgorithmus entspricht der iterativen Durchf¨ uhrung dieses Zweischritt-Verfahrens aus Berechnung und anschließender Maximierung der unteren Schranke. Dies wird im Folgenden vertieft. Die Likelihood-Funktion f (y|θ) = k(θ) ist die zu maximierende Kostenfunktion. Sie ist gleichzeitig die Randdichte von fZ (y, h|θ) 23
vorausgesetzt, dass der Gradient an der aktuellen Stelle ungleich Null ist
80
4 Bayes-Sch¨ atzung
k(θ) = f (y|θ) =
fZ (y, h|θ)dh.
(4.70)
h
Nach der Erweiterung um die weiter unten definierte Verteilungsdichte q(h) kann die Jensen-Ungleichung24 auf die Kostenfunktion angewendet werden [67] k(θ) = h
" fZ (y, h|θ) q(h)dh ≥ g(θ, q(h)) = q(h) h
fZ (y, h|θ) q(h)
q(h)dh , (4.71)
mit
q(h)dh = 1.
(4.72)
h
Mit g(θ, q(h)) ist man im Besitz einer unteren Schranke f¨ ur die Kostenfunktion. Die Verteilungsdichte q(h) muss nun so bestimmt werden, dass die untere Schranke die Kostenfunktion im Punkt der aktuellen Parametersch¨ atzung θˆp ber¨ uhrt. Dazu wird die Funktion g(θ, q(h)) zun¨ achst logarithmiert G(θ, q) = log g(θ, q) = [q(h) log fZ (y, h|θ) − q(h) log q(h)]dh. (4.73) h
Die Maximierung von G bez¨ uglich q(h) erfolgt unter zus¨ atzlicher Ber¨ ucksichtigung der Normierungsnebenbedingung f¨ ur q(h)25 G(θ, q) = λ(1 − q(h)dh) + [q(h) log fZ (y, h|θ) − q(h) log q(h)]dh. (4.74) h
h
Die Ableitung nach q(h) f¨ ur ein beliebiges, aber festes h [67]26 sowie an der ˆ Stelle θ p ergibt schließlich die Optimalit¨atsbedingung ∂G = −λ − 1 + log fZ (y, h|θˆp ) − log q(h) = 0. ∂q(h)
(4.75)
Durch Umstellen der letzten Gleichung erh¨ alt man λ + 1 = log(
bzw. 24 25 26
fZ (y, h|θˆp ) ) q(h)
(4.76)
Jensen-Ungleichung: j g(j)aj ≥ j g aj (j) mit j aj = 1, aj ≥ 0 und g(j) ≥ 0 (Das arithmetische Mittel ist nie kleiner als das geometrische Mittel [67].) Zur Optimierung mit Gleichungsnebenbedingungen (Lagrangesche Multiplikatormethode): siehe Abschnitt 3.5. Aufgrund h beliebig, aber fest entf¨ allt das Integral beim Differenzieren.
4.5 Der Expectation-Maximization-Algorithmus
81
exp(λ + 1)q(h) = fZ (y, h|θˆp ).
(4.77)
Die Integration beider Seiten bez¨ uglich h f¨ uhrt zu exp(λ + 1) = fZ (y, h|θˆp )dh.
(4.78)
h
Substituiert man in dieser letzten Gleichung exp(λ + 1) = fZ (y, h|θˆp )/q(h), erh¨alt man f¨ ur q(h) q(h) = 3 h
fZ (y, h|θˆp ) = fH (h|y, θˆp ). fZ (y, h|θˆp )dh
(4.79)
F¨ ur dieses q(h) ergibt sich f¨ ur den Wert der unteren Schranke g(θ, q(h)) an der Stelle θˆp -q(h)dh -q(h)dh , , " fZ (y, h|θˆp ) " fZ (y, h|θˆp ) (4.80) = g(θˆp , q) = q(h) fH (h|y, θˆp ) h h q(h)dh " f (y|θˆp ) (4.81) = h
= [f (y|θˆp )]
h
q(h)dh
= f (y|θˆp ).
(4.82)
Das Ergebnis27 in Gleichung 4.82 bedeutet, dass die untere Schranke g(θ, q(h)) uhrt. die Kostenfunktion f (y|θ) im Punkt θˆp ber¨ Um das Maximum der untere Schranke zu finden, muss in G(θ, q) lediglich der Term q(h) log fZ (y, h|θ)dh = fH (h|y, θˆp ) log fZ (y, h|θ)dh (4.83) h
h
bez¨ uglich θ maximiert werden. Dies aber entspricht exakt dem EM-Algorithmus in den Gleichungen 4.68 und 4.69. 4.5.4 Der EM-Algorithmus am Beispiel von MOG-Modellen MOG-Modelle Kompliziert strukturierte Verteilungsdichten werden h¨aufig mit einer Summe gewichteter Gaußverteilungsdichten, sogenannten MOG28 -Modelle approximiert. Diese Modelle sind einfach handhabbar und erm¨oglichen die statistische Erfassung sehr komplexer Prozesse. 27
28
Beim Schritt von Gleichung 4.81 zu Gleichung 4.82 wurde die Beziehung N bi N = a i=1 bi genutzt. i=1 a MOG: Mixture of Gaussians (Mischung gaußscher Verteilungsdichten)
82
4 Bayes-Sch¨ atzung
MOG-Modelle besitzen die Form f (y) =
M
f (y|m)P (m),
(4.84)
m=1
mit P (m) als Gewichtungsfaktoren f¨ ur die Gaußverteilungsdichten f (y|m). Die Gewichtungsfaktoren P (m) erf¨ ullen die Randbedingung M
0 ≤ P (m) ≤ 1.
P (m) = 1,
(4.85)
m=1
Sie k¨onnen als Wahrscheinlichkeiten interpretiert werden, mit der ein Signalsample yi von der Komponente m des MOG-Modells generiert wurde. Die Verteilungsdichten f (y|m) sind im Allgemeinen multivariat und besitzen als Parameter jeweils den Mittelwertvektor µm und die Kovarianzmatrix Rm . Die Gaußverteilungsdichten bzw. Komponenten des MOG-Modells sind somit 1 1 T −1 (y − µ ) R (y − µ ) , (4.86) exp − f (y|m) = m m m 2 (2π)d/2 |Rm |1/2
wobei d die Dimension von y angibt. In der Nomenklatur des EM-Algorithmus repr¨asentieren die jeweils zum Zeitandigen Daten, w¨ ahrend punkt i beobachteten Signalsamples yi die unvollst¨ die vollst¨andigen Daten aus den Wertepaaren {yi , mi } bestehen. Die Komponenten-Label mi k¨onnen nicht direkt beobachtet werden.
Der EM-Algorithmus f¨ ur MOG-Modelle Die Log-Likelihood-Funktion der vollst¨ andigen Daten Die Verbundverteilungsdichte aller beobachteten Daten bei gegebenem Parametervektor θ und angenommener statistischer Unabh¨ angigkeit zwischen den Signalsamples ist N " f˜(y|θ) = f (yi |θ). (4.87) i=1
Die Kombination der Gleichungen 4.84 und 4.87 sowie die anschließende Logarithmierung ergeben die Log-Likelihood-Funktion der unvollst¨ andigen Daten 4 5 N N M log f (yi |θ) = log f (yi |m, θ m )P (m) . Lu = log f˜(y|θ) = i=1
i=1
m=1
(4.88)
4.5 Der Expectation-Maximization-Algorithmus
83
Mit dem EM-Algorithmus sollen nun die Parameter der einzelnen Normalatzt verteilungen θ m = {µm , Rm } sowie die Wahrscheinlichkeiten P (m) gesch¨ werden.29 Aufgrund der Summe innerhalb des Logarithmus ist dieses Sch¨ atzproblem schwierig zu l¨osen. Wenn die fehlenden Daten, d.h. das Komponenten-Label m f¨ ur jeden Zeitpunkt i, bekannt w¨ aren, w¨ urde sich Gleichung 4.88 erheblich vereinfachen, da so die Summe innerhalb des Logarithmus entf¨ allt. Die LogLikelihood-Funktion der dann vollst¨ andigen Daten w¨ are [11] N
Lv =
log [f (yi , mi |θ)] =
i=1
N
log [f (yi |mi , θ)P (mi )] .
(4.89)
i=1
Der E-Schritt Im E-Schritt des EM-Algorithmus wird zun¨ achst die diskrete Wahrscheinlichur die aktuelle Iteration p des keitsverteilung der fehlenden Daten f (m|y, θˆp ) f¨ EM-Algorithmus gesch¨ atzt30 f (m|y, θˆp ) =
N "
f (mi |yi , θˆp ),
(4.90)
i=1
wobei die diskreten Wahrscheinlichkeitsverteilungen f (mi |yi , θˆp ) unter Verwendung des Bayes’schen Satzes sowie der Sch¨ atzwerte Pˆp (mi ) und θˆp mit f (mi |yi , θˆp ) =
f (yi |mi , θˆp )Pˆp (mi ) f (yi |mi , θˆp )Pˆp (mi ) . (4.91) = M f (yi |θˆp ) fm (yi |mi , θˆp )Pˆp (mi ) m=1
ermittelt werden. Der Erwartungswert folgt mit Q= Lv f (m|y, θˆp ) m
=
N m
=
log f (yi |mi , θ)P (mi )
i=1
M M
N "
30
(4.93)
···
N M mN =1 i=1
29
ˆ f (mk |yk , θ p )
k=1
m1 =1 m2 =1
···
(4.92)
log [f (yi |mi , θ)P (mi )]
N "
f (mk |yk , θˆp ) .
(4.94)
k=1
¨ Aus Ubersichtlichkeitsgr¨ unden wird der Index von θ m im Folgenden nicht weiter mitgeschrieben. θ symbolisiert den im jeweiligen Kontext zu bestimmenden Parametervektor. Zu beachten ist, dass f (m|y, θˆp ) eine multivariate diskrete Wahrscheinlichkeitsverteilung der vektoriellen Zufallsvariable m = [m1 , m2 , . . . , mN ] ist. Dies muss unter anderem bei der Bildung des Erwartungswertes ber¨ ucksichtigt werden, in dem u ¨ber jedes einzelne Element von m summiert wird.
84
4 Bayes-Sch¨ atzung
Die Struktur dieses Ausdrucks soll anhand eines Beispiels veranschaulicht werden. Beispiel 4.3. Gleichung 4.94 wird f¨ ur den Fall N = 3 untersucht. Die diskrete Wahrscheinlichkeitsverteilung der fehlenden Daten ist f (m|y, θˆp ) = f (m1 |y1 , θˆp ) · f (m2 |y2 , θˆp ) · f (m3 |y3 , θˆp ).
(4.95)
Als Log-Likelihood-Funktion der vollst¨andigen Daten bekommt man Lv = log [f (y1 |m1 , θ)P (m1 )] + log [f (y2 |m2 , θ)P (m2 )] + log [f (y3 |m3 , θ)P (m3 )] .
(4.96)
Zur Berechnung des Erwartungswertes Q werden nun f (m|y, θˆp ) und Lv in Gleichung 4.92 eingesetzt M M M
Q=
Lv f (m|y, θˆp )
(4.97)
m1 =1 m2 =1 m3 =1 M M M
=
log [f (y1 |m1 , θ)P (m1 )] f (m|y, θˆp )
m1 =1 m2 =1 m3 =1
+
M M M
log [f (y2 |m2 , θ)P (m2 )] f (m|y, θˆp )
(4.98)
m1 =1 m2 =1 m3 =1
+
M M M
log [f (y3 |m3 , θ)P (m3 )] f (m|y, θˆp ).
m1 =1 m2 =1 m3 =1
Bei genauer Betrachtung der drei Terme in Gleichung 4.98 k¨ onnen Vereinfachungen vorgenommen werden. Dies soll zun¨ achst am Beispiel des ersten Terms gezeigt werden. Es gilt M M M
log [f (y1 |m1 , θ)P (m1 )] f (m|y, θˆp )
m1 =1 m2 =1 m3 =1
=
M M M
log [f (y1 |m1 , θ)P (m1 )] f (m1 |y1 , θˆp )f (m2 |y2 , θˆp )
m1 =1 m2 =1 m3 =1
×f (m3 |y3 , θˆp ) =
M
(4.99)
log [f (y1 |m1 , θ)P (m1 )] f (m1 |y1 , θˆp )
m1 =1
×
M m2 =1
f (m2 |y2 , θˆp )
M m3 =1
f (m3 |y3 , θˆp ).
(4.100)
4.5 Der Expectation-Maximization-Algorithmus
85
Da jedoch auch M
f (m2 |y2 , θˆp ) =
M
f (m3 |y3 , θˆp ) = 1
(4.101)
m3 =1
m2 =1
gilt, erh¨alt man f¨ ur den ersten Term von Gleichung 4.98 M M M
log [f (y1 |m1 , θ)P (m1 )] f (m|y, θˆp )
m1 =1 m2 =1 m3 =1
=
M
log [f (y1 |m1 , θ)P (m1 )] f (m1 |y1 , θˆp ).
(4.102)
m1 =1
¨ Ubertr¨ agt man dieses Ergebnis auf die anderen Terme in Gleichung 4.98, ergibt sich f¨ ur den Erwartungswert Q=
M
log [f (y1 |m1 , θ)P (m1 )] f (m1 |y1 , θˆp )
m1 =1
+
M
log [f (y2 |m2 , θ)P (m2 )] f (m2 |y2 , θˆp )
m2 =1
+
M
log [f (y3 |m3 , θ)P (m3 )] f (m3 |y3 , θˆp ).
m3 =1
(4.103) Durch die Umbenennung m = mi bekommt man schließlich Q=
3 M
log [f (yi |m, θ)P (m)] f (m|yi , θˆp ).
(4.104)
i=1 m=1
Das Ergebnis aus Gleichung 4.104 kann auf einen beliebigen Wert N verallgemeinert werden und man erh¨alt f¨ ur den E-Schritt Q=
N M
log(f (yi |m, θ)P (m))f (m|yi , θˆp )
(4.105)
i=1 m=1
=
N M
log[f (yi |m, θ)]f (m|yi , θˆp )
i=1 m=1
+
N M
log[P (m)]f (m|yi , θˆp ).
(4.106)
i=1 m=1
Die Maximierung von Gleichung 4.106 kann nach P (m) und θ getrennt erfolgen, da beide unabh¨ angig voneinander in verschiedenen Termen von Gleichung 4.106 existieren.
86
4 Bayes-Sch¨ atzung
Der M-Schritt Zun¨achst wird Gleichung4.106 bez¨ uglich P (m) maximiert. Dabei ist die Gleichungsnebenbedingung P (m) = 1 zu ber¨ ucksichtigen. Zusammen mit der Nebenbedingung erh¨ alt man f¨ ur die Ableitung bez¨ uglich P (m) , M -
M N ∂ ! ˆ log[P (m)]f (m|yi , θ p ) + λ ( P (m)) − 1 = 0. ∂P (m) m=1 i=1 m=1 (4.107) Daraus folgen N 1 f (m|yi , θˆp ) + λ = 0 (4.108) P (m) i=1
und weiter −λP (m) =
N
f (m|yi , θˆp ).
i=1
Wird die letzte Gleichung u ¨ber m summiert, ergibt sich wegen f¨ ur λ der Wert λ = −N und somit31 P (m) =
N 1 ! f (m|yi , θˆp ) = Pˆp+1 (m). N i=1
(4.109) m
P (m) = 1
(4.110)
Bei der Maximierung des verbleibenden Terms von Gleichung 4.106 gilt zun¨ achst f¨ ur die gaußschen Verteilungsdichten N M
log[f (yi |m, θ)]f (m|yi , θˆp )
m=1 i=1
N M 1 1 d T −1 = − log(2π) − log |Rm | − (yi − µm ) Rm (yi − µm ) 2 2 2 m=1 i=1 ×f (m|yi , θˆp ).
(4.111)
uhrt auf Das Nullsetzen der Ableitung nach µm f¨ N
ˆ R−1 m (yi − µm )f (m|yi , θ p ) = 0
(4.112)
i=1
und
31
N yi f (m|yi , θˆp ) ! =µ ˆ m,p+1 . µm = i=1 N ˆ i=1 f (m|yi , θ p )
(4.113)
Die diskreten Wahrscheinlichkeitsverteilungen f (m|yi , θˆp ) ergeben sich aus Gleichung 4.91, wobei auch dort die Substitution m = mi vorgenommen werden muss.
4.5 Der Expectation-Maximization-Algorithmus
87
Die Bestimmung der KovarianzmatrixRm erfolgt aus Gleichung 4.111 unter Nutzung von i yiT R−1 yi = tr(R−1 i yi yiT ) N M
log[f (yi |m, θ)]f (m|yi , θˆp )
m=1 i=1
=
N M 1 d |) f (m|yi , θˆp ) − log(2π) + log(|R−1 m 2 2 m=1 i=1
N M 1 ˆ (yi − µm )T R−1 (4.114) m (yi − µm )f (m|yi , θ p ) 2 m=1 i=1 N M 1 d −1 = − log(2π) + log(|Rm |) f (m|yi , θˆp ) 2 2 m=1 i=1
M N 1 tr R−1 (yi − µm )(yi − µm )T f (m|yi , θˆp ) . (4.115) − m 2 m=1 i=1
−
ucksichtigung Die Ableitung von Gleichung 4.115 nach R−1 m erfolgt unter Ber¨ der Beziehungen ∂ log |det(A)| = A−T ∂A
und
∂tr(AB) = BT ∂A
(4.116)
sowie mit Hilfe der Symmetrie-Eigenschaft der Kovarianzmatrix Rm = RTm . Damit bekommt man Rm
N
f (m|yi , θˆp ) −
i=1
N
(yi − µm )(yi − µm )T f (m|yi , θˆp ) = 0
(4.117)
i=1
und schließlich N f (m|yi , θˆp )(yi − µm )(yi − µm )T ! ˆ = Rm,p+1 . Rm = i=1 N ˆ i=1 f (m|yi , θ p )
(4.118)
Die Adaptionsgleichungen in jeder Iteration sind somit N 1 f (m|yi , θˆp ) Pˆp+1 (m) = N i=1
N µ ˆ m,p+1 = i=1 N
yi f (m|yi , θˆp ) f (m|yi , θˆp )
(4.119)
(4.120)
i=1
N ˆ m,p+1 = R
i=1
f (m|yi , θˆp )(yi − µm,p+1 )(yi − µm,p+1 )T . (4.121) N ˆ i=1 f (m|yi , θ p )
88
4 Bayes-Sch¨ atzung
Beispiel 4.4. Ein Beispiel-Datensatz wurde mit folgenden Parametern generiert: P (1) = 0.7, µ1 = −1, σ12 = 0.1; P (2) = 0.3, µ2 = 1, σ22 = 0.5. Die Anzahl der generierten Daten betr¨ agt N = 10000. Die Iteration erfolgt mit den Gleichungen 4.119 bis 4.121. Die diskreten Wahrscheinlichkeitsverteilungen f (m|yi , θˆp ) werden mit Gleichung 4.91 berechnet. Tabelle 4.1 und die folgenden Abbildungen zeigen den Verlauf der Iteration. Iteration Startwert 1 10 20 30 40 50 60
P (1) 0.1 0.990996565 0.883977031 0.709794409 0.706746846 0.706686218 0.706684955 0.706684928
µ1 0.0 -0.430898603 -0.670766489 -0.993638696 -0.996091761 -0.996138296 -0.996139265 -0.996139286
σ12 0.1 0.986740580 0.556306624 0.103459381 0.102033667 0.102007413 0.102006866 0.102006855
P (2) 0.9 0.009003435 0.116022969 0.290205591 0.293253154 0.293313782 0.293315045 0.293315072
µ2 10.0 2.668559073 1.637170064 1.041628295 1.026389209 1.026083285 1.026076907 1.026076774
σ22 1.0 0.076061023 0.225741481 0.474012113 0.492333730 0.492708181 0.492715989 0.492716152
Tabelle 4.1. Konvergenz des Verfahrens
Abb. 4.7. Konvergenz der Komponentenwahrscheinlichkeiten (links), der Mittelwerte (mitte) und der Varianzen (rechts)
Abb. 4.8. Histogramm der beobachteten Daten (links) sowie die theoretische und die berechnete Verteilungsdichte (beide sind nahezu u ¨berlappend) der beobachteten Daten (rechts).
Die Konvergenz des Verfahrens ist in diesem Falle unproblematisch. Dies liegt vor allem an der G¨ ultigkeit des Modells, der geringen Parameterzahl, der einfachen Struktur der zu approximierenden Verteilungsdichte sowie an der hohen Anzahl von Datensamples.
5 Blinde Quellentrennung
¨ 5.1 Uberblick Blinde Quellentrennung1 ist ein Verfahren zur Rekonstruktion unbeobachteter Signale (Quellen) aus beobachteten Signalvektoren. Es wird angenommen, dass die beobachteten Signale durch Mischung aus den unbeobachteten Quellsignalen hervorgegangen sind. Dabei sind weder konkrete Informationen u ¨ber den Verlauf der Quellsignale noch u ¨ber die Gewichtungsfaktoren der Mischung vorhanden. Diese Restriktionen werden bei existierenden Algorithmen durch die physikalisch h¨aufig gut begr¨ undete Annahme der statistischen Unabh¨ angigkeit der Quellsignale kompensiert. Die Realisierung der blinden Quellentrennung erfolgt dementsprechend mit der Suche nach statistisch unabh¨ angigen Signalkomponenten, die bei G¨ ultigkeit der Unabh¨ angigkeitsannahme identisch mit den unbeobachteten Quellen sind. Das einfachste Mischungsmodell ist in diesem Zusammenhang die lineare Mischung wie sie in Abbildung 5.1 gezeigt wird. Die unabh¨ angigen (unbeobachteten) Quellsignale s1 , s2 , . . . , sN werden im Mischungssystem A linear mit-
Abb. 5.1. System zur blinden Quellentrennung 1
engl.: blind source separation, BSS
90
5 Blinde Quellentrennung
einander vermischt. Das Mischungssystem hat den Rang N . Die beobachteten ur das EntmiSignale x1 , x2 , . . . , xM (M ≥ N ) dienen als Eingangssignale f¨ alt die rekonschungssystem W. Der Signalvektor u = [u1 , u2 , . . . , uN ]T enth¨ struierten Signale. Daraus ergeben sich das Mischungs- und das EntmischungsGleichungssystem ⎞ ⎛ ⎞ ⎛ ⎞ ⎛ a11 a12 · · · a1N s1 x1 ⎜ x2 ⎟ ⎜ a21 a22 · · · a2N ⎟ ⎜ s2 ⎟ ⎟ ⎜ ⎟ ⎜ ⎟ ⎜ (5.1) ⎟ · ⎜ .. ⎟ Mischung ⎜ .. ⎟ = ⎜ .. .. . . .. ⎝ ⎠ ⎝. ⎠ ⎝. . . . . ⎠ xM aM 1 aM 2 · · · aM N sN ⎛
u1 ⎜ u2 ⎜ ⎜ .. ⎝. uN
⎞ ⎟ ⎟ ⎟ ⎠
⎛
w11 ⎜ w21 ⎜ = ⎜. ⎝ .. wN 1
⎞ ⎛ ⎞ x1 w12 · · · w1M ⎜ ⎟ w22 · · · w2M ⎟ ⎟ ⎜ x2 ⎟ ⎟ · ⎜ .. ⎟ Entmischung. .. . . .. ⎠ ⎝. ⎠ . . . wN 2 · · · wN M xM
(5.2)
Erweiterungen dieses einfachen Modells sind unter anderem nichtlineare Mischungsmodelle, konvolutive Mischungen, zus¨ atzliche Rauschquellen, komplexwertige Signale oder unterbestimmte Mischungssysteme 2 . F¨ ur alle Erweiterungen und Varianten dieser Mischungsmodelle existieren vielf¨ altige Anwendungen, siehe auch [19]. Die Suche nach statistisch unabh¨ angigen Signalkomponenten wird in der Literatur auch als Independent Component Analysis (ICA) bezeichnet. ICA findet als Methode nicht nur Anwendung im Rahmen der blinden Quellentrennung, sondern auch in anderen Bereichen, wie der Datenanalyse oder der Kodierung und Datenkompression. F¨ ur das Verst¨ andnis der Prinzipien der ICA-basierten blinden Quellentrennung ist es notwendig, zun¨ achst einige Grundbegriffe der Informationstheorie zu erl¨autern.
5.2 Informationstheorie Eine wesentliche Grundlage der Informationstheorie lieferte Shannon [80] mit seiner Definition des Begriffes Information. Das Ziel dieser Definition ist die Bereitstellung eines quantitativen Maßes f¨ ur den Informationsgehalt von Symbolen einer Datenquelle, mit dem ein weitgehend intuitiver Umgang m¨ oglich sein soll. Der Informationsgehalt eines Symbols einer diskreten Datenquelle wird im ¨ Shannonschen Sinne definiert als Maß f¨ ur die Uberraschung des Empf¨ angers, der dieses Symbol erh¨ alt. D.h., je geringer die Auftretenswahrscheinlichkeit 2
Das System ist unterbestimmt f¨ ur den Rang r{A} < N .
5.2 Informationstheorie
91
eines Symbols, desto gr¨oßer ist die damit verbundene Information. Nach Shannon wird der Informationsgehalt eines Symbols xi der diskreten Datenquelle berechnet mit 1 (5.3) = − log P (xi ). H(xi ) = log P (xi )
Die Entropie, d.h. der Informationsgehalt einer Datenquelle wird gem¨ aß der Shannonschen Definition3 mit dem Mittelwert der Informationsgehalte der einzelnen Quellensymbole beschrieben, d.h. P (xi ) log P (xi ) diskrete Quelle. (5.4) H(X) = E[H(xi )] = − ∀i
F¨ ur den kontinuierlichen Fall divergiert die Entropie4 . Deshalb wird hier mit der differentiellen Entropie gearbeitet. Sie ist definiert als ∞ H(X) = −
fX (x) log fX (x)dx
kontinuierliche Quelle.
(5.5)
−∞
Im Gegensatz zur Entropie diskreter Quellen kann die differentielle Entropie auch negative Werte annehmen. 3
Neben der Shannonschen Entropie existieren weitere Entropiedefinitionen, so unter anderem die R`enyi-Entropie [26] f¨ ur diskrete Quellen ⎧ r 1 ⎪ ⎨ 1−r log P (xi ) 0 < r < ∞, r = 1 i Hr (X) = ⎪ ⎩ − P (xi ) log P (xi ) r = 1, i
bzw. f¨ ur kontinuierliche Quellen ⎧ r 1 ⎨ 1−r log fX (x)dx Hr (X) = ⎩ − f (x) log f (x)dx X X 4
0 < r < ∞, r = 1 r = 1.
In − i P (xi ) log P (xi ) ≈ − i fX (xi )∆x log[fX (xi )∆x] ergibt sich als Grenzwert f¨ ur ∆x → 0 fX (xi )∆x log(fX (xi )∆x)] = lim [ − ∆x→0
∀i
= lim [− ∆x→0
=−
log[fX (xi )]fX (xi )∆x − log[∆x]
∀i
log[fX (x)]fX (x)dx − lim log[∆x] ·
Der Term log[∆x] divergiert f¨ ur ∆x → 0.
∆x→0
fX (xi )∆x]
∀i
fX (x)dx.
92
5 Blinde Quellentrennung
Der Informationsgehalt einer Verbundquelle wird als Verbundentropie bezeichnet und ist gegeben mit P (xi , yj ) log P (xi , yj ). (5.6) H(X, Y ) = − ∀i
∀j
Die bedingte Entropie einer Quelle Y bei Kenntnis der Quelle X ist der Mittelwert u ¨ber die Entropie der Quelle Y , wenn jeweils ein (konkretes) xi gegeben ist, d.h. H(Y |X) = H(Y |xi )P (xi ) (5.7) ∀i
=−
P (xi )
∀i
P (yj |xi ) log P (yj |xi )
↓ Satz von Bayes P (xi , yj ) log P (yj |xi ). =− ∀i
(5.8)
∀j
(5.9)
∀j
Die bedingte Entropie H(Y |X) ist die Information, die Y noch erbringen kann, wenn X bereits bekannt ist. Die Entropie besitzt eine Reihe n¨ utzlicher Eigenschaften5 : •
Die Gesamtinformation einer Verbundquelle besteht aus der Information, die X enth¨alt plus der Information, die Y noch zus¨ atzlich beisteuert, d.h. H(X, Y ) = H(X) + H(Y |X), denn H(X, Y ) = − =− =−
∀i
∀j
∀i
∀j
∀i
∀j
P (xi , yj ) log P (xi , yj )
(5.11)
P (xi , yj ) log[P (xi )P (yj |xi )]
(5.12)
P (xi , yj ) log P (xi ) −
=−
∀i
P (xi , yj ) log P (yj |xi )
(5.13)
∀j
P (xi ) log P (xi )
∀i
−
∀i
5
(5.10)
P (xi , yj ) log P (yj |xi ).
(5.14)
∀j
Die folgenden Eigenschaften der Entropie werden u ¨berwiegend am Beispiel der Entropie diskreter Quellen gezeigt. Sie sind jedoch auch f¨ ur differentielle Entropien kontinuierlicher Quellen g¨ ultig.
5.2 Informationstheorie
•
Falls X und Y statistisch unabh¨angig sind, gilt H(X, Y ) = H(X) + H(Y ) P (xi , yj ) log P (xi , yj ) =− =− =−
∀i
∀j
∀i
∀j
∀i
∀j
P (xi )P (yj ) log[P (xi )P (yj )]
=−
∀i
P (xi )P (yj ) log P (yj )
∀j
P (xi ) log P (xi ) −
∀i
• Allgemein gilt
(5.15) (5.16) (5.17)
P (xi )P (yj ) log P (xi ) −
•
93
P (yj ) log P (yj ).
(5.18) (5.19)
∀j
H(X, Y ) ≤ H(X) + H(Y ).
(5.20)
Ein wichtiges Kriterium f¨ ur die Bewertung der Unterschiedlichkeit zweier Verteilungsdichtefunktionen ist die Kullback-Leibler-Distanz6 D[P (x)||Q(x)] =
P (xi ) log
∀i
D[fX (x)||qX (x)] =
P (xi ) Q(xi )
diskret
(5.21) fX (x) dx fX (x) log qX (x)
kontinuierlich.
Die Kullback-Leibler-Distanz weist unter anderem folgende Eigenschaften auf: – D ≥ 0, mit Gleichheit f¨ ur P (x) = Q(x) bzw. fX (x) = qX (x) – kein Abstandsmaß wegen D[P (x)||Q(x)] = D[Q(x)||P (x)] und Nichterf¨ ullung der Dreiecksungleichung7 • Die gemeinsame Information8 ist ein Sonderfall der Kullback-LeiblerDistanz. Sie ist definiert mit P (xi , yj ) (5.22) P (xi , yj ) log I(X; Y ) = P (xi ) · P (yj ) ∀i
∀j
= D [P (x, y)||P (x)P (y)] .
(5.23)
Bei I(X; Y ) = 0 sind die Zufallsvariablen X und Y statistisch unabh¨angig. 6 7 8
Die Kullback-Leibler-Distanz wird auch als relative Entropie bezeichnet. F¨ ur x, y, z ∈ X und die Funktion ρ ist die Dreiecksungleichung gegeben mit ρ(x, y) ≤ ρ(x, z) + ρ(z, y) [14]. engl.: mutual information
94
•
5 Blinde Quellentrennung
Die Relation zwischen Entropie und gemeinsamer Information ist I(X; Y ) = H(X) − H(X|Y ) P (xi , yj ) P (xi , yj ) log = P (xi )P (yj ) ∀i
=
=−
P (xi , yj ) log
∀j
∀i
P (xi |yj )P (yj ) P (xi )P (yj )
(5.26)
P (xi , yj ) log P (xi )
∀j
+ =−
(5.25)
∀j
∀i
(5.24)
∀i
P (xi , yj ) log P (xi |yj )
(5.27)
∀j
P (xi ) log P (xi )
∀i
+
∀i
P (xi , yj ) log P (xi |yj ).
(5.28)
∀j
Die gemeinsame Information I ist die Reduktion der Unsicherheit von X durch die Kenntnis von Y . Ferner gilt I(X; Y ) = H(Y ) − H(Y |X) = H(X) + H(Y ) − H(X, Y ).
(5.29) (5.30)
Die Beziehungen zwischen den einzelnen Entropien sind im Venn-Diagramm in Abbildung 5.2 dargestellt.
Abb. 5.2. Venn-Diagramm f¨ ur die Entropien
5.3 Independent Component Analysis Die Zielsetzung der Independent Component Analysis besteht in der Extraktion statistisch unabh¨ angiger Komponenten si eines meist vektoriellen Signals x. Dazu wird die Entstehung des Signals x zun¨achst mit einer linearen
5.3 Independent Component Analysis
95
oder nichtlinearen Funktion x = f (s1 , s2 , . . .) = f (s) modelliert. Die Aufgabe der ICA besteht dann in der Suche nach einer geeigneten Umkehrfunktion s = f −1 (x). Um diese Aufgabe mathematisch traktabel zu machen, ist es sinnvoll, die Freiheitsgrade der Funktion f zu beschr¨anken. Zur Vereinfachung wird f¨ ur f h¨aufig eine lineare, vektorwertige Funktion angenommen. Daraus resultiert ein lineares Mischungsmodell, das dem der linearen blinden Quellentrennung gleicht, d.h.9 x = f (s) = As ⎛ a11 ⎜ a21 ⎜ = ⎜. ⎝ .. aN 1
⎞ ⎛ ⎞ s1 a12 · · · a1N ⎜ ⎟ a22 · · · a2N ⎟ ⎟ ⎜ s2 ⎟ ⎟ · ⎜ .. ⎟ . .. . . .. ⎠ ⎝. ⎠ . . . aN 2 · · · aN N sN
(5.31)
Dementsprechend besteht die ICA-Zielstellung auf der Basis dieses linearen Modells in der Berechnung einer inversen Matrix W = A−1 , wobei gegebenenfalls auch Zeilenpermutationen in W und zeilenweise unterschiedliche Skalierungen zul¨assig sind10,11 . Diese Zielstellung setzt die Invertierbarkeit von A voraus. Unter den Quellsignalen darf maximal ein Signal mit einer gaußschen Verteilungsdichte vertreten sein. Der Grund f¨ ur die Beschr¨ ankung wird aus einer kurzen Rechnung deutlich (vgl. [54]). W¨are beispielsweise die Verbundverteilungsdichte zweier unabh¨angiger Komponenten s1 und s2 eine Gaußverteilungsdichte, d.h. 2
f (s1 , s2 ) =
s 1 s2 + s22 1 ) exp(− )= exp(− 1 2 2π 2 2π
(5.32)
und die Mischungsmatrix A orthogonal, d.h. A−1 = AT , dann w¨ urde man f¨ ur die gemischten Signale die Verbundverteilungsdichte ) T )2 ) A x) 1 )|det(AT )| (5.33) exp(− f (x1 , x2 ) = 2 2π ) )2 2 erhalten. Aufgrund der Orthogonalit¨at gelten jedoch )AT x) = x und T ur die Verbundverteilungsdichte der ge|det(A )| = 1. Daraus ergibt sich f¨ mischten Signale 9 10 11
Dieses lineare Modell ist die Grundlage der folgenden Ausf¨ uhrungen. Bei Auftreten von Zeilenpermutationen gilt W = PA−1 , wobei P aus einer Einheitsmatrix durch Vertauschen von Zeilen abgeleitet wird. Dies zeigt zwei wesentliche Mehrdeutigkeiten bei der Rekonstruktion der statistisch unabh¨ angigen Signalkomponenten: Zum einen ist die urspr¨ ungliche Amplitude der Signale nicht rekonstruierbar und zum anderen ist die Wiederherstellung der urspr¨ unglichen Reihenfolge der Signale im Signalvektor s nicht m¨ oglich.
96
5 Blinde Quellentrennung 2
x 1 ). (5.34) exp(− 2 2π Die Gegen¨ uberstellung der Gleichungen 5.32 und 5.34 zeigt, dass im Falle gaußscher Signale und einer orthogonalen Mischung die Verteilungsdichten der gemischten und ungemischten Signale u ¨bereinstimmen. Eine Unterscheidung und dementsprechend eine Trennung auf der Basis eines Unabh¨ angigkeitskriteriums w¨aren unm¨oglich. Mit anderen Worten: Bei mehreren gaußverteilten Quellsignalen kann die ICA-Mischungsmatrix nur bis auf eine orthogonale Drehung bestimmt werden. f (x1 , x2 ) =
Zusammenfassend ergeben sich folgende Voraussetzungen f¨ ur die Durchf¨ uhrung der linearen ICA [54]: •
die Signale si sind gegenseitig statistisch unabh¨ angig,
•
maximal eine unabh¨angige Komponente darf eine gaußsche Verteilungsdichte besitzen,
•
die Mischungsmatrix A ist invertierbar.
5.4 Kontrastfunktionen und ihre Optimierung 5.4.1 Definition Im Kontext der ICA werden Kostenfunktionen auch als Kontrastfunktionen bezeichnet. Sie sind reellwertige, von einer Verteilungsdichte abh¨ angige Funktionen. Die Notation φ[u] bezeichnet eine Kontrastfunktion, die von der Verteilungsdichte fU (u) abh¨angt. Kontrastfunktionen werden so aufgestellt, dass sie ihr Minimum genau dann erreichen, wenn die rekonstruierten Signale einen maximal m¨oglichen Trennungsgrad aufweisen, d.h. [19] ˆ φ[u = WAs] ≥ φ[s],
(5.35)
mit Gleichheit bei maximal m¨oglicher Trennung. F¨ ur den Fall, dass die gesuchte Entmischungsmatrix orthogonal ist, kann es sinnvoll sein, orthogonale Kontrastfunktionen φo [u] zu nutzen, die unter der Restriktion E[uuT ] = I minimiert werden.
5.4.2 Informationstheoretische Kontrastfunktionen Maximum Likelihood Die Maximum-Likelihood-Sch¨atzung der Entmischungsmatrix erh¨ alt man mit
5.4 Kontrastfunktionen und ihre Optimierung
ˆ = argmax fX (x|W), W
97
(5.36)
W
ˆ ≈ A−1 zu finden, f¨ d.h., es ist diejenige Entmischungsmatrix W ur die fX (x|W) maximal wird. Bei der Verteilungsdichte fX (x|W) handelt es sich hier nicht um die wahre (gemessene) Verteilungsdichte der Signale x, sondern um ein parametrisches Modell, das die Signale x als Ergebnis der Transformation x = As betrachtet [64, 54]. F¨ ur die Verteilungsdichte ergibt sich mit Gleichung 2.83 fX (x|W) = |det(W)|fS (s) = |det(W)|
N "
fS (si )
(5.37)
i=1
bzw. fX (x|W) = |det(W)|
N "
fS (wiT x),
(5.38)
i=1
mit wiT als i-ter Zeilenvektor von W. Bei T unabh¨ angigen Beobachtungen ultigkeit des Modells in Gleichung x1 , . . . , xT erh¨alt man, bei vorausgesetzter G¨ 5.38, die Likelihood-Funktion f¨ ur das Auftreten genau dieser Beobachtungen L(W) =
T "
fX (xt |W)
(5.39)
t=1
bzw. als Log-Likelihood-Funktion und unter Normierung auf die Anzahl der Samples T T 1 1 log fX (xt |W). (5.40) log L(W) = T t=1 T
F¨ ur T → ∞ geht die Summe in den Erwartungswert u ¨ber lim
T →∞
1 log L(W) = E[log fX (x|W)] T
=
fˆX (x) log fX (x|W)dx,
(5.41) (5.42)
mit fˆX (x) als gemessene Verteilungsdichte der Signale x. Damit erh¨alt man ferner
fX (x|W)fˆX (x) ˆ ˆ dx (5.43) fX (x) log fX (x|W)dx = fX (x) log fˆX (x)
(x|W) f X dx = fˆX (x) log fˆX (x) + fˆX (x) log fˆX (x)dx (5.44)
= −D[fˆX (x)fX (x|W)] − H[fˆX (x)]. (5.45)
98
5 Blinde Quellentrennung
Der Term H[fˆX (x)] ist konstant und spielt bei einer Optimierung keine Rolle. Die Log-Likelihood-Funktion kann deshalb auf die negative Kullback-LeiblerDistanz zwischen der beobachteten Verteilungsdichte fˆX (x) und dem Modell uckgef¨ uhrt werden. Da im Modell die statistische Unabh¨ angigfX (x|W) zur¨ keit der Quellen enthalten ist, f¨ uhrt die Maximierung der Log-LikelihoodFunktion bzw. die Minimierung der Kullback-Leibler-Distanz zur Quellentrennung. Die Kullback-Leibler-Distanz in Gleichung 5.45 ist deshalb die Kontrastfunktion der Maximum-Likelihood-Sch¨atzung. Setzt man Gleichung 5.38 in Gleichung 5.41 ein, ergibt sich
N 1 log L(W) = log |det(W)| + E log fS (wiT x) . lim T →∞ T i=1
(5.46)
F¨ ur den Gradienten bez¨ uglich der Entmischungsmatrix W folgt daraus12
∂ ∂ 1 log |det(W)| log L(W) = ∂W ∂W T
N ∂ T E log fS (wi x) + ∂W i=1
N ∂ T −T E log fS (wi x) . =W + ∂W i=1
(5.47)
(5.48)
Der Gradient in Gleichung 5.48 nutzt Modellannahmen u ¨ber die Verteilungsdichten der Quellsignale. Wird die Optimierung per Gradientenverfahren durchgef¨ uhrt, kann dies bei ung¨ unstiger Auswahl der Verteilungsdichten zu einer schlechten Konvergenz und zum Fehlschlagen der Quellentrennung f¨ uhren. Durch Nutzung des nat¨ urlichen Gradienten (siehe Abschnitt 5.5) kann die Konvergenz deutlich beschleunigt werden.
Infomax Eng mit dem Maximum-Likelihood-Ansatz verkn¨ upft ist das Infomax-Prinzip [63], das im Kontext der blinden Quellentrennung vor allem im Bereich der neuronalen Netze genutzt wird [4]. 12
Die zur Berechnung des Gradienten notwendige Ableitung des Logarithmus der Quellenverteilungsdichte ϕi = −(log fS (si )) = −
fS (si ) fS (si )
wird in der Literatur auch als Score-Funktion bezeichnet [19].
5.4 Kontrastfunktionen und ihre Optimierung
99
Eine entscheidende Rolle innerhalb dieser Betrachtungen spielt die Transformation von Zufallsprozessen X durch Nichtlinearit¨ aten der Form g : R → (0; 1), streng monoton.
y = g(wT x) = g(u),
(5.49)
Diese Nichtlinearit¨at kann bei einem eindimensionalen Ausgangssignal als ein wie in Abbildung 5.3 dargestelltes konnektionistisches Neuron interpretiert werden (vgl. Kapitel 10).
Abb. 5.3. Konnektionistisches Neuron
Die Ver¨ anderung der Verteilungsdichtefunktion bei der nichtlinearen Transformation eines Zufallsprozesses durch eine streng monoton steigende Funktion ist im eindimensionalen Fall gegeben mit (vgl. Abschnitt 2.1.12) pY (y) =
pU (u) pU (u) . = dy/du g (u)
(5.50)
Es gilt also pY (y) · dy = pU (u) · du.
(5.51)
Die Entropie des Ausgangssignals ist somit ∞ H(Y ) = −
pY (y) log pY (y)dy
−∞ ∞
=− −∞
pU (u) log
pU (u) du. g (u)
(5.52)
(5.53)
Letzteres Integral ist wieder die Kullback-Leibler-Distanz. Daher ist die Entropie H(Y ) maximal13 , wenn pU (u) = g (u) gilt. D.h., f¨ ur eine maximale Ausgangsentropie muss die Nichtlinearit¨ at g(u) gleich der Verteilungsfunktion von U sein. Im multikanaligen Fall wird ein Netzwerk konnektionistischer Neuronen entsprechend Abbildung 5.4 konstruiert. F¨ ur die Verbund-Ausgangsentropie gilt dann 13
Maximal bedeutet hier H(Y ) = 0.
100
5 Blinde Quellentrennung
Abb. 5.4. Neuronales Netz f¨ ur die blinde Quellentrennung
H(Y) =
H(Yi ) − I(Y).
(5.54)
∀i
Die Nichtlinearit¨ aten werden durch die Elemente der Entmischungsmatrix W parametrisiert. Eine Maximierung der Verbund-Ausgangsentropie bez¨ uglich der Elemente der Entmischungsmatrix W bewirkt: aten g(u) • die Maximierung der Einzelentropien H(Yi ), d.h. die Nichtlinearit¨ schmiegen sich an die Verteilungsfunktionen an, •
die Reduktion der gemeinsamen Information I(Y) zwischen den Signalen yi .
Ist jedoch die gemeinsame Information zwischen den Signalen yi minimal, dann trifft dies aufgrund der Systemanordnung auch auf die Signale ui zu, die in diesem Falle gegenseitig maximal unabh¨angig sind. Damit ist das Ziel der Quellentrennung erreicht. F¨ ur die Berechnung der Verbund-Ausgangsentropie muss zun¨ achst die Verbundverteilungsdichte der Ausgangssignale der Nichtlinearit¨ aten bestimmt werden. Sie ergibt sich mit fY (y) =
wobei gilt
⎛
fX (x) , |det(J)|
∂y1 ∂x1
⎜ ∂y2 ⎜ ∂x 1 det(J) = det ⎜ ⎜ .. ⎝ .
(5.55)
∂y1 ∂x2
···
∂y1 ∂xN
∂y2 ∂x2
··· .. . ···
∂y2 ∂xN
.. .
∂yN ∂yN ∂x1 ∂x2
Damit folgt f¨ ur die Verbund-Ausgangsentropie
⎞
⎟ ⎟ ⎟ .. ⎟ . . ⎠
∂yN ∂xN
(5.56)
5.4 Kontrastfunktionen und ihre Optimierung
101
∞ H(Y) = −E[log fY (y)] = −
fY (y) log fY (y)dy
(5.57)
−∞
= E [log |det(J)|] − E [log fX (x)] .
(5.58)
Die Maximierung der Verbund-Ausgangsentropie erfolgt mit einem stochastischen Gradientenverfahren. Der stochastische Gradient14 ist gegeben durch15 [4]
∂ ∂ log |det(J)| H(Y) = ∂W ∂W " ∂ ∂ log |gi (ui )| log |det(W)| + = ∂W ∂W i ∂ log |gi (ui )|. = W−T + ∂W
(5.59)
(5.60)
(5.61)
∀i
¨ Aus der Gleichung 5.61 wird die Ubereinstimmung mit dem MaximumLikelihood-Ansatz offensichtlich, und zwar genau dann, wenn g (u) = fS (u) gilt. Damit ist auch f¨ ur das Infomax-Verfahren die Kullback-Leibler-Distanz die zugeh¨ orige Kontrastfunktion. Die Verteilungsfunktionen der Quellsignale sind a priori nicht bekannt. Die Nichtlinearit¨ at ist somit frei w¨ahlbar, wenngleich damit implizit Annahmen u ¨ber die Verteilungsfunktionen der Quellen getroffen werden. Eine h¨aufig genutzte Nichtlinearit¨at ist die logistische Funktion16 y = g(u) =
1 . 1 + e−u
(5.62)
In der Tat sind damit nicht alle denkbaren Quellsignale rekonstruierbar, sonur dern nur Signale mit einer supergaußschen Verteilungsdichtefunktion17 . F¨ andere Signale m¨ ussen andere Nichtlinearit¨aten ausgew¨ahlt werden18 . Unter Nutzung der logistischen Nichtlinearit¨at ergibt sich f¨ ur den stochastischen Gradienten [4] ∆W ∝
∂ H(Y) = W−T + (1 − 2y)xT . ∂W
(5.63)
Das Konvergenzverhalten eines auf Gleichung 5.63 basierenden Gradientenverfahrens kann mit der Anwendung des nat¨ urlichen Gradienten erheblich verbessert werden (siehe Abschnitt 5.5). 14 15 16 17 18
Beim stochastischen Gradienten entf¨ allt der Erwartungswertoperator. Aufgrund seiner Konstanz entf¨ allt der Term E [log fX (x)] bei der Optimierung. In der Regel wird an allen Ausg¨ angen die gleiche Nichtlinearit¨ at verwendet. Supergaußsche Signale besitzen eine positive Kurtosis. Es existieren Erweiterungen, die eine Anwendung dieses Verfahrens sowohl f¨ ur supergaußsche als auch subgaußsche Verteilungsdichten erm¨ oglichen, z.B. [39].
102
5 Blinde Quellentrennung
Gemeinsame Information Beim Maximum-Likelihood-Ansatz wird in Gleichung 5.45 die KullbackLeibler-Distanz zwischen der gemessenen Verbundverteilungsdichte fˆ(x) und der Modell-Verbundverteilungsdichte f (x|W) bez¨ uglich der Entmischungsmaahlter Modell-Verbundverteilungstrix W minimiert19 . Im Falle schlecht gew¨ dichten besteht die M¨oglichkeit des Fehlschlagens der Quellentrennung. Es ist deshalb sinnvoll, die Kullback-Leibler-Distanz auch bez¨ uglich der ModellVerbundverteilungsdichte f (s) zu optimieren. ˜ gebildet, deren ElemenDazu wird zun¨achst eine vektorielle Hilfsvariable u te zum einen unabh¨ angig voneinander sind und zum anderen die gleichen Verteilungsdichten wie die korrespondierenden Elemente des rekonstruierten Signalvektors u besitzen, d.h. u) = fU˜ (˜
N " i=1
ui ) = fU˜i (˜
N "
fUi (ui ).
(5.64)
i=1
Da auch der Quellvektor s voneinander unabh¨ angige Elemente besitzt, gilt20 D[fU (u)fS (s)] = D[fU (u)fU˜ (˜ u)] + D[fU˜ (˜ u)fS (s)].
(5.65)
Die Herleitung von Gleichung 5.65 soll im Folgenden kurz skizziert werden. Ausgangspunkt ist die Kullback-Leibler-Distanz zwischen der Verbundverteilungsdichte der rekonstruierten Signale und der Verbundverteilungsdichte der statistisch unabh¨angigen Quellen " fSi (si )] (5.66) D[fU (u)fS (s)] = D[fU (u) 6 fU (z) fUi (zi ) fU (z) 6 dz (5.67) dz = fU (z) log 6 = fU (z) log 6 f (z ) fUi (zi ) fSi (zi ) 6 Si i fU (zi ) fU (z) dz (5.68) dz + fU (z) log 6 i = fU (z) log 6 fSi (zi ) fUi (zi ) fU (zi ) dz. (5.69) = D[fU (u)fU˜ (˜ u)] + fU (z) log i fSi (zi ) i
F¨ uhrt man im zweiten Term der letzten Gleichung die Integration bez¨ uglich aller zj mit i = j durch, ergibt sich 19 20
Dies entspricht der Minimierung der Kullback-Leibler-Distanz zwischen f (u) und f (s). F¨ ur die konkrete Berechnung des Integrals der Kullback-Leibler-Distanz m¨ ussen die beteiligten Verteilungsdichten in Abh¨ angigkeit von der gleichen Integrationsvariable, z.B. z, dargestellt werden, d.h. fU (z) dz. D[fU (u) fS (s)] = fU (z) log fS (z)
5.4 Kontrastfunktionen und ihre Optimierung
. . . = D[fU (u)fU˜ (˜ u)] +
fUi (zi ) log
i
fUi (zi ) dzi . fSi (zi )
103
(5.70)
Durch Erweitern von fUi auf fU˜ und die Erg¨anzung der zugeh¨ origen Integrationsvariablen im Integral folgt21 fU (zi ) dz (5.71) . . . = D[fU (u)fU˜ (˜ u)] + fU˜ (z) log i fSi (zi ) i 6 fU (zi ) dz (5.72) = D[fU (u)fU˜ (˜ u)] + fU˜ (z) log 6 i fSi (zi ) = D[fU (u)fU˜ (˜ u)] + D[fU˜ (˜ u)fS (s)]. (5.73)
Die Richtigkeit von Gleichung 5.65 ist damit gezeigt. uglich der Modell-VerbundverteiDie Optimierung von D[fU (u)fS (s)] bez¨ lungsdichte betrifft lediglich den zweiten Term auf der rechten Seite von Gleiu)fS (s)] = 0 befindet sich bei fS,opt. (s) = chung 5.65. Das Minimum D[fU˜ (˜ u). Die anschließende Minimierung von D[fU (u)fS (s)] bez¨ uglich der EntfU˜ (˜ mischungsmatrix W muss dann nur noch den ersten Term von Gleichung 5.65 ber¨ ucksichtigen. Dieser erste Term ist gem¨ aß Gleichung 5.22 die gemeinsame Information zwischen den Signalen ui
fU (u) du. (5.74) φM I [u] = D[fU (u)fU˜ (˜ u)] = fU (u) log 6N i=1 fUi (ui )
Er bewertet die G¨ ute der Sch¨ atzung der Entmischungsmatrix ohne von den Vorannahmen bez¨ uglich der Verteilungsdichten der Quellen abh¨angig zu sein und stellt somit das eigentliche Unabh¨ angigkeitsmaß, auch der MaximumLikelihood-Sch¨atzung, dar. Der Maximum-Likelihood-Ansatz enth¨ alt folglich implizit zwei Terme: einen ersten Term zur eigentlichen Bewertung der statistischen Unabh¨angigkeit der Ausg¨ange und einen zweiten Term zur Messung der Unterschiede zwischen den Verteilungsdichten der Ausgangssignale und den Modell-Verteilungsdichten. Orthogonale Kontrastfunktionen Wenn die gesuchte Mischungs- bzw. Entmischungsmatrix orthogonal ist22 , vereinfacht sich die gemeinsame Information φM I [u] auf die Summe der Einzelentropien und einen konstanten Term, d.h. [19] 21
22
Diese Erweiterung ver¨ andert den Wert des Integrals nicht, da die hinzugef¨ ugten Verteilungsdichten unabh¨ angig voneinander sind und ihr Integral jeweils den Wert 1 besitzt. Z.B. nach Pre-Whitening (vgl. Abschnitt 5.6) ist E[xxT ] = E[uuT ] = I, wodurch das Separationsproblem auf die Suche nach einer Orthogonalmatrix eingegrenzt wird.
104
5 Blinde Quellentrennung
φoM I [u] =
N
H[ui ]
mit der Restriktion E[uuT ] = I.
(5.75)
i=1
Da das Mischen tendenziell die Entropien der einzelnen Ausgangssignale erh¨oht, wird die Entmischung tendenziell durch eine Minimierung der Einuber hinzelentropien erreicht. Die negative Entropie −H[ui ] entspricht dar¨ aus, bis auf eine Konstante, der Kullback-Leibler-Distanz zwischen der Verteilungsdichte von ui und der mittelwertfreien Gaußverteilung mit Varianz 1. Die Minimierung der Einzelentropien kommt deshalb der Maximierung dieser Kullback-Leibler-Distanz gleich - die Verteilungsdichten der ui sollen also so weit wie m¨oglich von einer gaußschen Verteilungsdichte entfernt sein [19]. 5.4.3 Statistik h¨ oherer Ordnung Statistik h¨oherer Ordnung23 kann zur Approximation der auf dem MaximumLikelihood-Prinzip basierenden Kontrastfunktion genutzt werden. Im Allgemeinen beschr¨ankt man sich bei der Nutzung von Statistik h¨ oherer Ordnung auf die Verwendung von Kumulanten zweiter und vierter Ordnung. Sie sind f¨ ur mittelwertfreie Zufallsvariablen definiert mit [71, 19] (vgl. Abschnitt 2.1.9) Cum[a, b] = E[ab]
(5.76)
Cum[a, b, c, d] = E[a, b, c, d] − E[ab]E[cd] − E[ac]E[bd] −E[ad]E[bc].
(5.77)
Wenn die Zufallsvariablen a, b, c, d in zwei voneinander statistisch unabh¨ angige Gruppen eingeteilt werden k¨onnen, wird der Kumulant zu Null. Kreuzkumulanten zwischen den statistisch unabh¨ angigen, mittelwertfreien Quellen si m¨ ussen dementsprechend verschwinden24 Cij [s] = σi2 δij
und Cijkl [s] = ki δijkl ,
(5.78)
mit δ als Kronecker-Delta-Funktion, der Quellsignal-Varianz σ 2 und der Kurtosis k. Damit ergeben sich die Unabh¨angigkeitsmaße [19] !2 2 φ2 [u] = Cij [u] − σi2 δij (Cij [u] − Cij [s]) = (5.79) ij
φ4 [u] =
ijkl
ij 2
(Cijkl [u] − Cijkl [s]) =
2
(Cijkl [u] − ki δijkl ) .
(5.80)
ijkl
W¨ahrend φ2 [u] nur Statistik zweiter Ordnung auswertet und deshalb keine Kontrastfunktion25 ist, stellt φ4 [u] bei bekannter Kurtosis der Quellen eine 23 24 25
engl.: higher-order statistics, HOS Cij [s] = Cum[si , sj ] und Cijkl [s] = Cum[si , sj , sk , sl ] Mit Statistik zweiter Ordnung kann die Mischungsmatrix A bis auf eine orthogonale Drehung bestimmt werden (siehe auch Abschnitt 5.6). F¨ ur die Bestimmung
5.5 Der nat¨ urliche Gradient
105
Kontrastfunktion dar. Die Kombination von φ2 [u] und φ4 [u] kann als Approximation des Maximum-Likelihood-Kontrasts interpretiert werden. Mit Hilfe einer Edgeworth-Reihenentwicklung [1, 24] kann gezeigt werden, dass D[f (u)f (s)] ≈
1 (12φ2 [u] + φ4 [u]) 48
(5.81)
gilt [19]. F¨ ur orthogonale Kontraste, d.h. unter der Bedingung φ2 [u] = 0 vereinfacht sich φ4 [u] bei Vernachl¨assigung eines konstanten Terms zu [19] φo4 [u] = −2 ki Ciiii [u]. (5.82) i
In diesem Modell werden Annahmen u ¨ber die Kurtosiswerte ki der Quellen uglich der Kurtosiswerte f¨ uhrt zu einer si getroffen. Eine Optimierung bez¨ Approximation der gemeinsamen Information [25, 19] 2 2 Cijkl [u] = − φM I [u] ≈ φoHOS [u] = Ciiii [u] + const. (5.83) ijkl=iiii
i
Ein wesentlicher Vorteil des orthogonalen Kontrastes φoHOS [u] besteht in der M¨ oglichkeit einer effizienten Optimierung mit Hilfe von Jacobi-Rotationen [20].
5.5 Der natu ¨rliche Gradient Bei der Optimierung von Kostenfunktionen kommt dem gew¨ ahlten Koordinatensystem eine immense Bedeutung zu. Wie in Abbildung 5.5 gezeigt wird, beeinflusst das Koordinatensystem die Lage und Anzahl m¨ oglicher Minima sowie die m¨ oglichen Wege dorthin. Ung¨ unstige Koordinatensysteme k¨ onnen zu starken Verzerrungen der Kostenfunktion f¨ uhren und eine Optimierung schwierig, wenn nicht gar unm¨oglich machen. Aus diesem Grunde ist es sinnvoll, vor der Optimierung ein geeignetes Koordinatensystem zur Darstellung der Kostenfunktion zu suchen oder w¨ahrend der Optimierung die Verzerrungen gesondert zu ber¨ ucksichtigen. Im g¨ unstigsten Fall ergibt sich ein orthogonales Koordinatensystem mit einer konvexen Kostenfunktion. Der nat¨ urliche Gradient ergibt sich aus dem normalen Gradienten zuz¨ uglich eines Korrekturfaktors, der die Verzerrungen der Kostenfunktion aufgrund des ung¨ unstigen Koordinatensystems korrigiert. Eine entscheidende Rolle spielt hierbei die Berechnung der L¨ ange eines Vektors in verschiedenen Koordinatensystemen. der orthogonalen Rotationsmatrix ist im allgemeinen Statistik h¨ oherer Ordnung notwendig. Unter bestimmten Voraussetzungen ist die Identifizierung der orthogonalen Rotationsmatrix auch mit spektralen Parametern m¨ oglich (siehe Abschnitt 5.7).
106
5 Blinde Quellentrennung
Abb. 5.5. Konturplot der Kostenfunktion K = (x − 1)2 + (y − 1)2 + (x − 1)(y − 1) in kartesischen Koordinaten (links) und in Polarkoordinaten (rechts), x = r cos(θ) und y = r sin(θ), (nach [29])
Beispiel 5.1. Wie in Abbildung 5.6 (links) gezeigt wird, ergibt sich die L¨ ange des Vektors z im orthogonalen Koordinatensystem gem¨ aß des Satzes von Pythagoras mit 2 (5.84) z = x2 + y 2 , wobei x bzw. y jeweils die konkreten L¨angen entlang der Achsen x bzw. y angeben. Wird der gleiche Vektor z in einem nicht-orthogonalen Koordinatensystem wie in Abbildung 5.6 (rechts) dargestellt, so w¨ urde eine L¨ angenberechnung gem¨ aß Gleichung 5.84 ein falsches Ergebnis liefern.
Abb. 5.6. L¨ angenberechnung von Vektoren: links orthogonales, rechts nichtorthogonales Koordinatensystem
Mit anderen Worten, es gilt 2
z = α2 + β 2 ,
(5.85)
wobei α und β die Anteile von z in Richtung der Achsen u bzw. v bezeichnen, also z1 v1 x u1 z= +β . (5.86) = = αu + βv = α v2 z2 u2 y Das Quadrat der L¨ange des Vektors z ergibt sich nun aus
5.5 Der nat¨ urliche Gradient
z12 + z22 = (αu1 + βv1 )2 + (αu2 + βv2 )2 = (u21 + u22 )α2 + 2(u1 v1 + u2 v2 )αβ + (v12 + v22 )β 2 .
107
(5.87) (5.88)
Daran zeigt sich die Notwendigkeit der Einf¨ uhrung einer allgemeineren L¨ angenberechnungsformel. F¨ ur nicht-orthogonale Koordinatensysteme gem¨ aß obiger Abbildung gilt im zweidimensionalen Fall mit a1 = α, a2 = β, g11 = (u21 +u22 ), g12 = g21 = (u1 v1 + u2 v2 ) und g22 = (v12 + v22 ) 2
z =
2 2
gij ai aj .
(5.89)
i=1 j=1
In Matrix-Vektor-Schreibweise ergibt sich g11 g12 a1 2 z = (a1 a2 ) = aT Ga. g21 g22 a2
(5.90)
Fasst man dar¨ uber hinaus die Basisvektoren u und v zu einer Matrix W = [u v] zusammen, kann die Korrekturmatrix G mit G = W T W gebildet werden. Eine Verallgemeinerung f¨ ur h¨ohere Dimensionen ist nach diesem Schema leicht m¨oglich. Die Richtung des steilsten Anstiegs einer Kostenfunktion φ(w) an der Stelle w ist durch den Vektor dw gegeben, der φ(w + dw) maximiert. F¨ ur dw wird eine feste L¨ange vorausgesetzt 2
dw = ε2 ,
ε fest, beliebig klein.
(5.91)
F¨ ur eine u uhrt. Nun ¨bersichtlichere Rechnung wird zun¨achst dw = εz eingef¨ besteht das Optimierungsproblem darin, einen Vektor z zu finden, der φ(w + dw) ≈ φ(w) + ε∇φ(w)T z
(5.92)
unter der Nebenbedingung 2
z = zT Gz = 1
(5.93)
maximiert. Die Matrix G ber¨ ucksichtigt wie im letzten Beispiel die m¨ ogliche Verzerrung der Kostenfunktion im zugrunde liegenden Koordinatensystem. Mit Hilfe der Lagrange’schen Multiplikatormethode ergibt sich unmittelbar ∂ [∇φ(w)T z − λ(zT Gz − 1)] = 0 ∂z
(5.94)
∇φ(w) = 2λGz.
(5.95)
bzw. Durch Umstellen nach z erh¨alt man
108
5 Blinde Quellentrennung
z=
Der Ausdruck
1 −1 G ∇φ(w). 2λ
˜ ∇φ(w) = G−1 ∇φ(w)
(5.96)
(5.97)
wird als nat¨ urlicher Gradient bezeichnet [3]. Im Kontext der blinden Quellentrennung ist der nat¨ urliche Gradient gegeben mit [3] ˜ = (∇φ)WT W. ∇φ (5.98) Die Vorschrift f¨ ur die Adaption der Entmischungsmatrix, z.B. beim InfomaxVerfahren unter Nutzung der logistischen Nichtlinearit¨ at, ist dann + * −T ∆W ∝ W + (1 − 2y)xT WT W (5.99) bzw. ∆W ∝ W + (1 − 2y)uT W.
(5.100)
5.6 Hauptkomponentenanalyse ¨ 5.6.1 Uberlick Die Hauptkomponentenanalyse26 [52] ist weit verbreitet in der Datenanalyse, ¨ Mustererkennung und Datenkompression. Ahnlich wie bei der ICA geht es bei der PCA um die Darstellung der Daten auf der Grundlage eines neuen Koordinatensystems (5.101) u = VT x, wobei x den zu transformierenden Signalvektor, V T die Transformationsmatrix und u den transformierten Signalvektor bezeichnet. Beide Verfahren unterscheiden sich jedoch in der Kostenfunktion und den Nebenbedingungen. W¨ ahrend bei einer ICA die Koordinatenachsen so berechnet werden, dass die gr¨ oßtm¨ ogliche statistische Unabh¨angigkeit zwischen den transformierten Signalen entsteht27 , werden die Koordinatenachsen bei einer PCA in die Richtung der gr¨ oßten Varianz gelegt, wobei als Nebenbedingung die Orthogonalit¨ at der Koordinatenachsen zueinander zu ber¨ ucksichtigen ist. Ein Vergleich zwischen ICA und PCA wie in Abbildung 5.7 zeigt, dass mit dem aus einer ICA berechneten Koordinatensystem Strukturen innerhalb der Daten besser erfasst werden k¨ onnen. Die Vorteile und Aufgaben der PCA liegen jedoch an anderer Stelle. 26 27
engl.: principal component analysis (PCA) Die Transformationsmatrix ist lediglich invertierbar.
5.6 Hauptkomponentenanalyse
109
Abb. 5.7. Streudiagramme zur PCA (links) und zur ICA (rechts); (nach [61])
Die Hauptkomponentenanalyse ist eine Orthogonaltransformation. Die Originalsignale k¨ onnen deshalb ohne Informationsverlust aus den transformierten Signalen zur¨ uckzugewonnen werden. Ferner besitzt die Hauptkomponentenoglichst wenigen Transforanalyse die Eigenschaft, die Signalenergie28 in m¨ mationskoeffizienten29 zu konzentrieren. Da Transformationskoeffizienten mit wenig Energie oftmals relativ unbedeutend sind, werden sie in der weiteren Signalanalyse meist nicht weiter ber¨ ucksichtigt. Die PCA eignet sich deshalb hervorragend als Werkzeug zur Variablenreduktion. Dar¨ uber hinaus sind die Transformationkoeffizienten dekorreliert. Diese sehr n¨ utzlichen Eigenschaften der PCA werden im ICA-Kontext h¨aufig in Vorverarbeitungsstufen genutzt.
5.6.2 Berechnung der Transformationsmatrix Ausgangspunkt der Hauptkomponentenanalyse sind M -dimensionale Signalvektoren x(t) = [x1 (t), x2 (t), . . . , xM (t)]T , deren Elemente Zufallsvariablen bzw. in der Praxis verschiedene Messkan¨ale darstellen. Mit der Hauptkomponentenanalyse werden statistisch ¨ahnliche Signalanteile30 in den einzelnen Komponenten des Signalvektors gefunden und zu M neuen, dekorrelierten Variablen bzw. Signalen per Linearkombination zusammengestellt. Bei einer ¨ großen statistischen Ubereinstimmung der Signale gen¨ ugen gegebenenfalls einige wenige der neuen Variablen zur Erfassung der wesentlichen Eigenschaften aller M urspr¨ unglichen Signale. Zur Berechnung der PCA-Transformationsmatrix wird der Signalvektor x ¨ zun¨ achst als gewichtete Uberlagerung der Basisvektoren vi des PCA-Koordinatensystems dargestellt 28 29 30
f¨ ur Energiesignale; f¨ ur Leistungssignale gilt entsprechendes Transformationskoeffizienten: Elemente des transformierten Signalvektors Die Hauptkomponentenanalyse verwertet die Signalstatistik zweiter Ordnung.
110
5 Blinde Quellentrennung
x= ⎛
x1 ⎜ x2 ⎜ ⎜ .. ⎝.
⎞ ⎟ ⎟ ⎟ ⎠
M i=1
(5.102)
u i vi ⎛
⎛
⎞
⎟ ⎟ ⎟ + · · · + uM ⎠
v1M ⎜ v2M ⎜ · ⎜. ⎝ ..
⎞ ⎟ ⎟ ⎟.(5.103) ⎠
vM M
vM 2
vM 1
xM
⎛
⎞
v12 ⎜ v22 ⎟ ⎜ ⎟ ⎟ + u2 · ⎜ .. ⎝. ⎠
v11 ⎜ v21 ⎜ = u1 · ⎜ . ⎝ ..
Die Basisvektoren vi sind per Definition zueinander orthonormal, d.h. viT vj
=
M
vm,i vm,j =
m=1
1 0
i=j . i = j
(5.104)
Aufgrund dieser Orthonormalit¨ at ergeben sich die Gewichtungsfaktoren bzw. Transformationskoeffizienten zu M
ui = viT x =
(5.105)
vm,i xm .
m=1
Die Analyse- und die Synthesegleichung der Hauptkomponentenanalyse sind dann ⎛ ⎞ ⎞ u1 ⎛ | | | ⎜ u2 ⎟ ⎜ ⎟ Synthesegleichung (5.106) x = ⎝ v1 v2 · · · vM ⎠ ⎜ . ⎟ = Vu ⎝ .. ⎠ | | | uM und
⎞ ⎞⎛ −− v1T −− x1 ⎜ −− v2T −− ⎟ ⎜ x2 ⎟ ⎜ ⎟ ⎟⎜ u=⎜ ⎟ ⎜ .. ⎟ = VT x .. ⎝ ⎠⎝ . ⎠ . T xM −− −− vM ⎛
Analysegleichung.
(5.107)
Die Berechnung der Basisvektoren vi erfolgt u ¨ber die Minimierung des mittleren quadratischen Fehlers, der bei einer Approximation von x mit N < M ˆ erh¨ Basisvektoren entsteht. Die Approximation x alt man mit ˆ= x
N
u i vi
(5.108)
N < M.
i=1
ˆ , und zwar e = x − x ˆ . Mit Daraus ergibt sich ein Fehler zwischen x und x x=
M i=1
u i vi =
N i=1
u i vi +
M i=N +1
u i vi
(5.109)
5.6 Hauptkomponentenanalyse
111
kann der mittlere quadratische Fehler dargestellt werden als ⎡, ⎞⎤ -⎛ M M M E = E[eT e] = E ⎣ ui viT ⎝ uj vj ⎠⎦ = E[u2i ]. (5.110) i=N +1
j=N +1
i=N +1
Die rechte Seite in Gleichung 5.110 folgt aus der Orthonormalit¨ at der Basisvektoren. Der Approximationsfehler wird nun unter Ber¨ ucksichtigung der normierten L¨ange der Basisvektoren minimiert M
L=
M
viT Rvi +
i=N +1
λi (1 − viT vi ),
(5.111)
i=N +1
wobei E[u2i ] = E[viT xxT vi ] = viT E[xxT ]vi = viT Rvi gilt und R = E[xxT ] atsbedingung erster Orddie Kovarianzmatrix31 bezeichnet. Mit der Optimalit¨ nung32 gelangt man schließlich zu dem Eigenwertproblem ∂ L = Rvi − λi vi = 0 ∂vi
bzw.
Rvi = λi vi ,
(5.112)
origen mit den Basisvektoren vi als Eigenvektoren und den λi als den zugeh¨ Eigenwerten. Der verbleibende mittlere quadratische Fehler ist gegeben mit M
E=
i=N +1
viT Rvi =
M
viT (λi vi ) =
i=N +1
M
λi .
(5.113)
i=N +1
Er ist minimal, da die Kovarianzmatrix R positiv semidefinit ist33 . F¨ ur die Approximation des Signals x nutzt man schließlich die zu den gr¨ oßten Eigenwerten geh¨ orenden Eigenvektoren, da so die mittlere Fehlerenergie minimal wird. Die Orthogonalit¨at der Eigenvektoren ist automatisch gew¨ ahrleistet, da die Kovarianzmatrix eine symmetrische Matrixstruktur aufweist und die zu unterschiedlichen Eigenwerten geh¨orenden Eigenvektoren reeller symmetrischer Matrizen stets orthogonal sind. Dies kann wie folgt gezeigt werden (vgl. [78]). origen Eigenwerten λi und Mit den Eigenvektoren vi und vj sowie den zugeh¨ λj , λi = λj , einer reellen symmetrischen Matrix gilt Rvi = λi vi Rvj = λj vj .
und
Dann gilt aber auch 31 32 33
f¨ ur mittelwertfreie Signale verschwindende Ableitung bez¨ uglich der Basisvektoren Optimalit¨ atsbedingung 2. Ordnung (siehe Kapitel 3)
(5.114) (5.115)
112
5 Blinde Quellentrennung
λi vjT · vi = vjT · Rvi λj vjT
und
· vi = (Rvj ) · vi = T
vjT RT
(5.116) · vi .
(5.117)
Unter Ausnutzung von R = RT kann die rechte Seite von Gleichung 5.117 umformuliert werden zu vjT RT · vi = vjT R · vi .
(5.118)
Aus den Gleichungen 5.116, 5.117 und 5.118 erh¨ alt man durch Subtraktion (λi − λj )vjT · vi = vjT Rvi − vjT Rvi = 0.
(5.119)
Da die Eigenwerte laut Voraussetzung verschieden sind, d.h. λi = λj , gilt vjT vi = 0.
(5.120)
5.6.3 Variablenreduktion Die Eigenwerte der Kovarianzmatrix R k¨onnen zu einer Absch¨ atzung der Anzahl der im Signalgemisch enthaltenen Signale genutzt werden [86, 88].
Abb. 5.8. Sch¨ atzung der Anzahl der im Signalgemisch enthaltenen Signale mit Hilfe einer PCA (hier: vier Signale). Die Eigenwerte sind entsprechend ihrer Gr¨ oße sortiert. (nach [61])
Abbildung 5.8 zeigt einen typischen Verlauf der nach ihrer Gr¨ oße sortierten Eigenwerte. Der Signalvektor x mit urspr¨ unglich M = 10 Signalkomponenten ist bereits mit N = 4 Basisvektoren erkl¨arbar, d.h. in diesem Falle sind vermutlich vier Quellen im Signalgemisch enthalten. Die M − N kleinsten Eigenwerte weisen eine gleiche Gr¨oßenordnung auf. Sie erm¨ oglichen die Sch¨ atzung der Leistung des im Signalgemisch enthaltenen st¨ orenden Rauschens [86].
5.6 Hauptkomponentenanalyse
113
5.6.4 Pre-Whitening Die Kovarianzmatrix E[uuT ] der transformierten Daten ist eine Diagonalmatrix, d.h. die transformierten Daten sind zueinander dekorreliert. Diese Dekorrelationseigenschaft der PCA in Kombination mit einer Normierung der Varianz wird in vielen ICA-Algorithmen als Vorverarbeitungsstufe genutzt. Dieses auch als Sphering oder Pre-Whitening bezeichnete Verfahren, bei dem der Signalvektor x mit einer Sphering-Matrix M multipliziert wird, f¨ uhrt zu einer Kovarianzmatrix mit der Struktur einer Einheitsmatrix. Die Sphering-Matrix M wird ausgehend von der Hauptkomponentenanalyse mit den Eigenvektoren und Eigenwerten der Kovarianzmatrix berechnet. Die Kovarianzmatrix R kann dargestellt werden als R = VΛVT ,
(5.121)
wobei V die aus den Eigenvektoren zusammgesetzte Orthogonalmatrix ist und die Diagonalmatrix Λ die zugeh¨origen Eigenwerte enth¨ alt. Mit ⎞ ⎛ ⎞ ⎛√ λ1 √0 · · · 0 v11 v12 · · · v1M ⎜ v21 v22 · · · v2M ⎟ ⎜ 0 λ2 · · · 0 ⎟ 1 ⎟ ⎜ ⎟ ⎜ (5.122) ·⎜ . Q = VΛ 2 = ⎜ . ⎟ . . . . .. . . .. ⎠ ⎝ .. .. . . . ... ⎟ ⎠ ⎝ .. √ vM 1 v M 2 · · · v M M 0 0 · · · λM
gilt R = QQT
1
(5.123)
bzw. Q = R 2 .
Benutzt man M = Q−1 als Sphering-Matrix ergibt sich 1
xs = Mx = R− 2 x.
(5.124)
Die Kovarianzmatrix der transformierten Signale xs besitzt dann die Struktur einer Einheitsmatrix, denn 1
1
1
1
Rs = E[xs xTs ] = R− 2 E[xxT ]R− 2 T = R− 2 RR− 2 T = I.
(5.125)
Pre-Whitening kann, wie in Abbildung 5.9 gezeigt, als Drehung und Normierung der Daten x interpretiert werden. Die Vorverarbeitung mit Pre-Whitening bewirkt, dass die durch die nachfolgende ICA-Stufe zu findende Matrix orthogonal sein muss, denn mit Gleichung 5.125 und (5.126) xs = Mx = MAs = Os, wobei O = MA gilt, erh¨ alt man die Beziehung [18, 53] E[xs xTs ] = I = OE[ssT ]OT .
(5.127)
114
5 Blinde Quellentrennung
Abb. 5.9. Geometrische Interpretation der Vorverarbeitung durch Dekorrelation und Normierung: Die Halbachsen der dem Streudiagramm unterlegten Ellipse sind nach dem Sphering parallel zu den Koordinatenachsen und besitzen die gleiche L¨ ange (nach [61]).
Mit der statistischen Unabh¨angigkeit der Quellsignale und der frei w¨ ahlbaren Normierung der Varianz der Quellsignale auf σs2i = 1 gilt E[ssT ] = I
(5.128)
OE[ssT ]OT = OOT = I,
(5.129)
und somit womit die Orthogonalit¨at von O gezeigt ist.
5.7 Blinde Quellentrennung mit Statistik zweiter Ordnung Neben der Nutzung von Statistik h¨oherer Ordnung kann blinde Quellentrennung auch auf der Basis von Statistik zweiter Ordnung durchgef¨ uhrt werden. Voraussetzung ist, dass sich die Quellsignale spektral ausreichend voneinander unterscheiden [68, 87, 34, 7, 6]. Die im Folgenden besprochenen Algorithmen basieren alle auf diesem Prinzip. Ihre Beschreibung h¨ alt sich eng an die Darstellung in [61].
5.7.1 Blinde Quellentrennung mit Zeitverz¨ ogerungsverfahren Besitzen die Quellsignale eine zeitliche Struktur, d.h. sie sind spektral eingef¨ arbt, ist es sinnvoll, auch Korrelationen zwischen zeitlich versetzten Signalen zur Berechnung der Entmischungsmatrix heranzuziehen. Der gemeinsame
5.7 Blinde Quellentrennung mit Statistik zweiter Ordnung
115
Erwartungswert zweier statistisch unabh¨angiger Quellsignale34 E[s1 (t)s2 (t + τ )] verschwindet nicht nur f¨ ur τ = 0, sondern ebenso f¨ ur beliebige Werte von τ , d.h. (5.130) E[si (t)sj (t + τ )] = 0 τ = 0, ±1, ±2 . . . . Angewendet auf die beobachteten Signale ergibt sich f¨ ur verschiedene Zeitverz¨ogerungen τi ein Satz von Kovarianzmatrizen Ri [68] Ri = E[x(t)xT (t + τi )] = AE[s(t)sT (t + τi )]AT = AΛi AT , (5.131) angigkeit der Quellwobei die Matrizen Λi aufgrund der statistischen Unabh¨ ur signale diagonal sind. Die Kombination der Kovarianzmatrizen Ri und Rj f¨ die zwei verschiedenen Zeitverz¨ogerungen τi und τj zu einem Eigenwertprour die Mischungsmatrix A [68] blem35 ergibt einen L¨osungsansatz f¨ −1 (Ri R−1 j )A = A(Λi Λj ).
(5.132)
Durch die Verbindung von Kovarianzmatrizen mit verschiedenen Zeitverz¨ ogerungen werden die Kreuz- und Autokorrelationsfunktionen der Signale xi ber¨ ucksichtigt. So wird aufgrund des Wiener-Khintchine-Theorems36 in diesem Verfahren indirekt der spektrale Gehalt der Signale bei der Signaltrennung genutzt. Die Leistungsf¨ahigkeit37 des Algorithmus wird wesentlich durch die Wahl einer geeigneten Zeitverz¨ogerung τ beeinflusst. Mit ung¨ unstigen Werten f¨ ur τ kann die Signaltrennung sogar fehlschlagen. F¨ ur die richtige Wahl von τ ist in der Regel Vorwissen u ¨ber die spektrale Zusammensetzung der Quellsignale notwendig. Die Probleme bei der Auswahl einer geeigneten Zeitverz¨ ogerung τ k¨ onnen mit einer Vorverarbeitung durch Pre-Whitening sowie mit der Anwendung eines Verbunddiagonalisierungsalgorithmus abgemildert werden. Durch PreWhitening wird zun¨ achst die Suche nach der Mischungsmatrix auf orthogonale Matrizen eingeschr¨ankt, d.h. die mit Pre-Whitening vorverarbeiteten Daten xs ergeben sich aus den Quellsignalen mit xs = Os, wobei O eine orthogonale Rotationsmatrix ist. F¨ ur verschiedene Zeitverz¨ ogerungen erh¨ alt man verschiedene Kovarianzmatrizen [7] 34 35 36
bei vorausgesetzter Mittelwertfreiheit von s1 und s2 bei Invertierbarkeit von Λ−1 j Wiener-Khintchine-Theorem: Das Leistungsdichtespektrum ist die Fouriertransformierte der Autokorrelationsfunktion 2
∞
|X(jω)| =
Rxx (τ ) exp(−jωτ )dτ. −∞
37
Eine detaillierte Analyse der Leistungsf¨ ahigkeit dieser Algorithmen befindet sich in [7].
116
5 Blinde Quellentrennung
Ri = E[xs (t)xTs (t + τi )] = OE[s(t)sT (t + τi )]OT = OΛi OT (5.133) bzw. verschiedene Eigenwertprobleme OT Ri O = Λi ,
(5.134)
die alle ein und dieselbe Orthogonalmatrix O als L¨ osung besitzen. Der in Abschnitt 5.8 besprochene Verbunddiagonalisierungsalgorithmus [20] ist in der Lage, diese Eigenwertprobleme simultan zu bearbeiten und daraus die Orthogonalmatrix O zu berechnen. Durch die Nutzung mehrerer verschiedener Zeitverz¨ ogerungen kann man die Auswirkungen schlecht gew¨ahlter Zeitverz¨ ogerungen ausgleichen. Die Anzahl der genutzten Zeitverz¨ ogerungen ist begrenzt durch Anforderungen an die rechentechnische Komplexit¨ at des Gesamtverfahrens sowie durch Anforderungen an die Sicherheit der Sch¨ atzung der Kovarianzmatrix. Die zweite Anforderung kann vor allem bei kurzen Datens¨ atzen schwierig zu erf¨ ullen sein. Oftmals beschr¨ankt man den maximalen Wert der Zeitverz¨ ogerung auf zehn Prozent der L¨ange der zur Verf¨ ugung stehenden Datenvektoren. Neben der Wahl der Zeitverz¨ ogerung bereitet auch die Struktur der Matrix osungen des Ri R−1 j Schwierigkeiten. Ihre Unsymmetrie provoziert komplexe L¨ Eigenwertproblems, auch im Falle reeller Mischungsmatrizen. Vor allem bei h¨oherdimensionalen Problemen ist dies aufgrund der Sensibilit¨ at von Eigenwertproblemen gegen¨ uber Parameterschwankungen fast immer der Fall. Dieses Problem kann jedoch umgangen werden, wenn das Eigenwertproblem lediglich f¨ ur den symmetrischen Anteil von Gleichung 5.132 gel¨ ost wird. Der symmetrische Teil ergibt sich aus Rsymm. =
+ 1* −1 T . Ri R−1 j + (Ri Rj ) 2
(5.135)
Komplexe L¨ osungen k¨onnen so verhindert werden. Da die Matrix A wegen der Symmetrie von Rsymm. orthogonal ist, muss hier ein Pre-Whitening zwingend durchgef¨ uhrt werden.
5.7.2 Blinde Quellentrennung mit linearen Operatoren Die in Abschnitt 5.7.1 eingef¨ uhrten Zeitverz¨ogerungen k¨ onnen als Spezialfall allgemeiner linearer Operatoren interpretiert werden. Operatoren T [·] sind linear, wenn T [a · x + b · y] = a · T [x] + b · T [y], (5.136) gilt [15], wobei a und b skalare Konstanten sowie x und y die unabh¨ angigen Variablen bezeichnen. F¨ ur die blinde Quellentrennung eignet sich insbesondere ein linearer Operator der Form
5.7 Blinde Quellentrennung mit Statistik zweiter Ordnung
z = T(s) = T([s1 , s2 , . . . , sN ]T ) = [T1 (s1 ), T2 (s2 ), . . . , TN (sN )]T .
117
(5.137)
angig, wird diese EigenSind die Signale si untereinander statistisch unabh¨ schaft direkt auf die transformierten Signale zi = T [si ] u ¨bertragen. Der lineare Operator T [·] kann jedoch die spektrale Zusammensetzung beeinflussen, d.h. die Signale zi und si unterscheiden sich im Allgemeinen in ihren spektralen Eigenschaften. F¨ ur die in Gleichung 5.137 definierten linearen Operatoren soll im Folgenden die Einschr¨ankung T = [T1 , T2 , . . . , TN ]
mit T1 = T2 = . . . = TN = T
(5.138)
gelten. Ihre Anwendung auf die mit Pre-Whitening vorverarbeiteten Signale xs ergibt (5.139) T(xs ) = T(O · s) = O · T(s). Die rechte Seite in Gleichung 5.139 erh¨ alt man wegen der Linearit¨ at des Operators T, denn es gilt [61] ⎛ ⎞ T (o11 s1 + o12 s2 + · · · + o1N sN ) ⎜ T (o21 s1 + o22 s2 + · · · + o2N sN ) ⎟ ⎜ ⎟ (5.140) T(xs ) = ⎜ ⎟ .. ⎝ ⎠ . ⎛ ⎜ ⎜ =⎜ ⎝
T (oN 1 s1 + oN 2 s2 + · · · + oN N sN ) o11 T (s1 ) + o12 T (s2 ) + · · · + o1N T (sN ) o21 T (s1 ) + o22 T (s2 ) + · · · + o2N T (sN ) .. .
⎞ ⎟ ⎟ ⎟ ⎠
(5.141)
oN 1 T (s1 ) + oN 2 T (s2 ) + · · · + oN N T (sN ) ⎛
o11 o12 ⎜ o21 o22 ⎜ =⎜ . .. ⎝ .. . oN 1 o N 2
⎞⎛ ⎞ T (s1 ) · · · o1N ⎜ ⎟ · · · o2N ⎟ ⎟ ⎜ T (s2 ) ⎟ ⎟ ⎜ ⎟. . . .. . .. ⎠ ⎝ .. ⎠ · · · oN N T (sN )
(5.142)
Die Kovarianzmatrix der mit T[·] transformierten Daten ist E[T(xs )T(xTs )] = E[T(Os)T(Os)T ] = OE[T(s)T(sT )]OT = ODT OT .
(5.143)
Die Matrix DT ist diagonal, da der lineare Operator T[·] die statistischen Abh¨angigkeiten zwischen den Quellsignalen nicht beeinflusst. Gleichung 5.143 beschreibt dementsprechend ein Eigenwertproblem f¨ ur die Matrix osung die orthogonale Rotationsmatrix O ist. Die E[T(xs )T(xTs )], dessen L¨ Symmetrie von E[T(xs )T(xTs )] garantiert die Reellwertigkeit von O.
118
5 Blinde Quellentrennung
Mit der Verwendung mehrerer verschiedener linearer Operatoren Ti k¨ onnen verschiedene Kovarianzmatrizen Ri = E[Ti (xs )Ti (xTs )] erzeugt werden, die sich alle durch ein und dieselbe Orthogonalmatrix O diagonalisieren lassen. Wie bei den Zeitverz¨ ogerungsverfahren in Abschnitt 5.7.1 eignet sich der in Abschnitt 5.8 beschriebene Verbunddiagonalisierungsalgorithmus zur simultanen Diagonalisierung der Kovarianzmatrizen Ri bzw. zur Berechnung von O. Ein m¨ogliches Verfahren zum Entwurf geeigneter linearer Operatoren wird im folgenden Abschnitt besprochen.
5.7.3 Blinde Quellentrennung mit FIR-Filtern Pre-Whitening entfernt statistische Abh¨angigkeiten zweiter Ordnung durch Auswertung der Kovarianzmatrix der gemischten Signale x. Die verbliebenen statistischen Abh¨angigkeiten in den mit Pre-Whitening vorverarbeiteten Signalen xs sind in der Kovarianzmatrix Rs = E[xs xTs ] = I nicht sichtbar. Es gilt deshalb, nach dem Pre-Whitening im Signalgemisch enthaltene Abh¨ angigkeiten zwischen den Signalen aufzudecken. Diese Abh¨angigkeiten entstehen, wenn ein Quellsignal si gleichzeitig in mehreren gemischten Kan¨alen xsi vertreten ist. Da der Verlauf der Quellsignale unbekannt ist, kann ersatzweise nach Anteilen des Signals xsi im Signal xsj , j = i, gesucht werden. F¨ ur die Dimension N = 2 gilt dann und xs1 = o11 s1 + o12 s2 xs2 = xs1 + (o21 − o11 )s1 + (o22 − o12 )s2 .
(5.144) (5.145)
Die Transformation der Signale xsi mit einem linearen Operator ergibt und T [xs1 ] = T [o11 s1 + o12 s2 ] T [xs2 ] = T [xs1 ] + T [(o21 − o11 )s1 + (o22 − o12 )s2 ].
(5.146) (5.147)
Das Ziel der Transformation mit dem linearen Operator besteht darin, die statistischen Gemeinsamkeiten zwischen den Signalen T [xsi ] sichtbar zu machen. Der Operator wird dementsprechend mit dem Ziel konstruiert, einen ¨ Ahnlichkeitsindex, der die statistischen Gemeinsamkeiten der Signale T [x si ] bemisst, zu maximieren. ¨ Als Ahnlichkeitsindex wird die Kreuzkorrelation zwischen den transformierten Signalen genutzt. Sie ist maximal f¨ ur den Fall, daß der Operator T [·] auf der rechten Seite in Gleichung 5.147 den Term T [xs1 ] maximiert oder den Term T [(o21 − o11 )s1 + (o22 − o12 )s2 ] minimiert. Da die Minimierung des letzteren Terms f¨ ur Modelldimensionen N > 2 nicht praktikabel ist, wird der erste Term, d.h. T [xs1 ], maximiert. Parametrisiert man den linearen Operator als FIR-Filter, muss eine Filter¨ ubertragungsfunktion gefunden werden, die die Leistung des Signals T [x s1 ]
5.7 Blinde Quellentrennung mit Statistik zweiter Ordnung
119
unter der Nebenbedingung beschr¨ankter Filterkoeffizienten maximiert. Aufgrund der Anpassung von T [·] an xs1 werden die anderen Signalanteile T [(o21 − o11 )s1 + (o22 − o12 )s2 ] relativ ged¨ampft. Mit der FIR-Parametrisierung des linearen Operators ist das Filter-Ausgangssignal f¨ ur den i-ten Kanal [62] yi (n) = T [xsi (n)] =
P
a(k) · xsi (n − k) = a(n) ∗ xsi (n),
(5.148)
k=0
mit xsi als gemischtem Signal im Kanal i und [a(0), a(1), . . . , a(P )]T = a als Impulsantwort bzw. Koeffizientenvektor des FIR-Filters. Die Maximierung der Filterausgangsleistung unter der Nebenbedingung beschr¨ ankter Filterkoeffizienten, d.h. a = 1, f¨ uhrt auf die Optimierungsgleichung K = yT y − λ(aT a − 1) → max.,
(5.149)
mit y = [yi (1), yi (2), . . . , yi (n), . . .]T . Die Faltung innerhalb des FIR-Filters kann in Matrix-Schreibweise als y = Xa,
(5.150)
formuliert werden, wobei die Matrix X zeitverz¨ ogerte Versionen des gemischten Kanals xs enth¨alt38 ⎛ ⎞ xs (0) 0 0 ··· 0 ⎜ xs (1) xs (0) 0 ··· 0 ⎟ ⎜ ⎟ ⎜ .. ⎟ .. .. ⎜ . . . ··· 0 ⎟ (5.151) X=⎜ ⎟. ⎜ xs (P ) xs (P − 1) xs (P − 2) · · · xs (0) ⎟ ⎝ ⎠ .. .. .. .. .. . . . . . Setzt man Gleichung 5.150 in Gleichung 5.149 ein und berechnet den Gradienten bez¨ uglich der Filterkoeffizienten, erh¨ alt man ∇a K = 2XT Xa − 2λa.
(5.152)
Mit ∇a K = 0 ergibt sich das Eigenwertproblem XT Xa = λa.
(5.153)
Von den P +1 L¨osungen f¨ ur dieses Eigenwertproblem ist diejenige die gesuchte L¨osung, die die Ausgangsleistung des Filters maximiert. Mit Gleichung 5.153 sowie der Normierungsbedingung aT a = 1 gilt 38
¨ Aus Ubersichtlichkeitsgr¨ unden wird der Index i im Folgenden nicht verwendet, d.h. xs = xsi .
120
5 Blinde Quellentrennung
yT y = aT XT Xa = aT λa = λaT a = λ.
(5.154)
D.h., die Leistung des Ausgangssignals entspricht dem dem Filterkoeffizientenvektor zugeordneten Eigenwert der Autokorrelationsmatrix von xsi . Folglich ist der zum gr¨oßten Eigenwert geh¨orige Eigenvektor der gesuchte Koeffizientenvektor a. Da der Signalvektor xs insgesamt N Elemente umfasst, muss f¨ ur alle N Signale ein optimales FIR-Filter berechnet werden. Daraus ergibt sich ein Satz von insgesamt N linearen Operatoren, die in der in Abschnitt 5.7.2 beschriebenen Art und Weise zur Berechnung von N Kovarianzmatrizen genutzt werden. Die simultane Diagonalisierung dieser Kovarianzmatrizen erfolgt mit der im folgenden Abschnitt besprochenen Verbunddiagonalisierung. Abbildung 5.10 enth¨alt eine Zusammenfassung des Quellentrennungsalgorithmus mit FIR-Filtern anhand einiger Beispielsignale.
5.8 Die Verbunddiagonalisierung Die Diagonalisierung symmetrischer Matrizen basiert auf der Jacobi-Transformation. Zun¨achst wird der Jacobi-Algorithmus f¨ ur eine einzelne, symmetrische und reellwertige Matrix erl¨autert (vgl. [74]). Die Jacobi-Transformation39 besteht aus einer Reihe nacheinander ausgef¨ uhr40 ¨ , wobei jedes mal ein einzelnes Paar von ter Ahnlichkeitstransformationen ¨ Off-Diagonal-Elementen41 zu Null gesetzt wird. Eine Ahnlichkeitstransformation der (N × N )-Matrix A, die die Matrixelemente aij und aji zu Null setzt, erfolgt mit (5.155) A = Oij · A · OTij , wobei
⎛
⎞
1
⎜ ··· ⎜ ⎜ ⎜ ⎜ Oij = ⎜ ⎜ ⎜ ⎜ ⎝
c ··· .. . 1 s ···
⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ c ⎟ ··· ⎠ 1
−s .. .
(5.156)
gilt. Alle Diagonalelemente der Matrix O, ausgenommen in den Zeilen i und j, sind okk = 1. F¨ ur die Diagonalelemente in den Zeilen i und j gilt oii = ojj = c. 39 40 41
Die Jacobi-Transformation ist nummerisch sehr sicher. F¨ ur symmetrische Matrizen ist die Konvergenz quadratisch. engl.: similarity transform Off-Diagonal-Element einer Matrix: Matrix-Element abseits der Hauptdiagonalen
5.8 Die Verbunddiagonalisierung
121
Abb. 5.10. Prinzip der Quellentrennung mit optimalen FIR-Filtern; a,b: Quellsignale; c,d: gemischte Signale; e,f: Signale nach Pre-Whitening; g,h,i,j: Ausgangssignale der FIR-Filter; k,l: rekonstruierte Signale
Die Off-Diagonal-Elemente sind s¨amtlich Null, mit den Ausnahmen oij = −s und oji = s. F¨ ur c und s gilt ferner
c2 + s2 = 1,
(5.157)
d.h., sie k¨ onnen als Kosinus bzw. Sinus eines Rotationswinkels ϕ interpretiert werden. F¨ ur die Elemente der Matrix A gilt dann
122
5 Blinde Quellentrennung
ari = cari − sarj arj = carj + sari
r = i, r = j r = i, r = j
(5.158) (5.159)
aii = c2 aii + s2 ajj − 2scaij ajj = s2 aii + c2 ajj + 2scaij
(5.160) (5.161)
aij = (c2 − s2 )aij + sc(aii − ajj ).
(5.162)
Diese Beziehungen gelten ebenso f¨ ur die durch die Symmetrie von A vorgegebenen Matrixelemente, z.B. ari = air . Alle anderen Matrixelemente werden durch die Transformation nicht ver¨andert. Mit aij = 0 ergibt sich Θ = cot2ϕ =
ajj − aii c2 − s2 . = 2aij 2sc
(5.163)
¨ Uber t = s/c erh¨ alt man die quadratische Gleichung t2 + 2tΘ − 1 = 0.
(5.164)
Die dem Betrage nach kleinere L¨osung ist am stabilsten [74]. Daraus resultiert in Verbindung mit Gleichung 5.157 c= √
1 t2 + 1
und s = t · c.
(5.165)
Sind K Matrizen gleichzeitig zu diagonalisieren, ist die Berechnung der Variablen c und s anzupassen. Dazu wird die Kostenfunktion [21] |aij |2 (5.166) off(A ) = 1≤i=j≤N
eingef¨ uhrt. Sie enth¨ alt die Summe aller quadrierten Off-Diagonal-Elemente ur alle K Matrizen ergibt sich der Matrix A . F¨ R(c, s) =
K
off(Oij Ak OTij ).
(5.167)
k=1
Aufgrund der Invarianz der Norm |aij |2 bei einer Orthogonaltransformation gilt (5.168) off(A ) + |aii |2 + |ajj |2 = off(A) + |aii |2 + |ajj |2 . Die Minimierung der Off-Diagonal-Elemente entspricht somit zwangsl¨aufig der Maximierung der Diagonalelemente [21] 8 8 7 2 7 (5.169) ˆ |aii | + |ajj |2 . Min off(Oij AOTij ) =Max Mit 2 · (|aii |2 + |ajj |2 ) = |aii + ajj |2 + |aii − ajj |2 und der Invarianz der Spur bei Orthogonaltransformationen verbleibt die Maximierung von |aii − ajj |2 . Mit den Gleichungen 5.160 und 5.161 gilt
5.8 Die Verbunddiagonalisierung
aii − ajj = (c2 − s2 )(aii − ajj ) − 4csaij = hT · v,
123
(5.170)
mit h = [aii − ajj , 2aij ]T und v = [c2 − s2 , −2cs]T . Somit muss schließlich hhT v (5.171) |hT v|2 = vT k
unter Ber¨ ucksichtigung der Normierungsnebenbedingung v T v = 1 maximiert werden. Die L¨osung dieses Optimierungsproblems ist der dem gr¨ oßten Eigenwert zugeh¨orige Eigenvektor vmax = [x, y]T . Aus der Nebenbedingung ur die gesuchten c2 + s2 = 1 und x = c2 − s2 resultieren schließlich die Werte f¨ Elemente der Orthogonalmatrix O . . 1+x 1−x . (5.172) und c = s= 2 2
Neben dem hier besprochenen Verbunddiagonalisierungsalgorithmus existieren weitere Verfahren, z.B. [51, 97].
6 Wiener-Filter
¨ 6.1 Uberblick Die in den vierziger Jahren des zwanzigsten Jahrhunderts vor allem von Norbert Wiener und seinen Kollegen [94] entwickelte Wiener-Filter-Theorie stellt die Grundlage f¨ ur den Entwurf signalabh¨angiger Filter dar. Sie und darauf aufbauende Weiterentwicklungen, z.B. Kalman-Filter [55], nehmen in der modernen Signalverarbeitung einen zentralen Platz ein, unter anderem in der Systemidentifikation, linearen Pr¨adiktion, Kodierung, Echo-Kompensation, Signalrekonstruktion und Kanalentzerrung.
6.2 Algorithmus Die Struktur eines Wiener-Filters wird in Abbildung 6.1 gezeigt. Die Einatzung yˆ(n) des Zielsignals gangssignale xi (n) werden im Filter zu einer Sch¨
Abb. 6.1. Struktur eines Wiener-Filters
y(n) verarbeitet. Der dabei entstehende Sch¨atzfehler wird mit e(n) bezeichnet. Der Sch¨atzwert yˆ(n) entsteht im Wiener-Filter durch die Linearkombination der Eingangssignale gem¨aß
126
6 Wiener-Filter
yˆ(n) =
M
wi xi (n) = wT x(n),
(6.1)
i=0
mit dem Filterkoeffizientenvektor w = [w0 , w1 , . . . , wM ]T und dem Eingangssignalvektor x(n) = [x0 (n), x1 (n), . . . , xM (n)]T . Oftmals werden die verschiedenen Eingangssignale xi (n) aus einem einzigen Eingangssignal x(n) durch ur diesen Fall sowie in Zeitverz¨ogerungen gewonnen, d.h. xi (n) = x(n − i). F¨ Abh¨angigkeit vom Zielsignal ergeben sich f¨ ur Wiener-Filter unter anderem die folgenden wichtigen Anwendungsgebiete [86]: •
Rauschentfernung Eingangssignal: xi (n) = s(n − i) + η(n − i) Zielsignal: y(n) = s(n)
i≥0
Das Wiener-Filter berechnet die Sch¨ atzung yˆ(n) des Nutzsignals s(n) aus dem aktuellen Wert sowie vergangenen Werten des durch Rauschen η(n) gest¨orten Eingangssignals x(n). • Signalpr¨ adiktion Eingangssignal: xi (n) = x(n − i) Zielsignal: y(n) = x(n)
i>0
Das Wiener-Filter berechnet aus den vergangenen Werten des Eingangssignals eine Sch¨atzung yˆ(n) = x ˆ(n) des aktuellen Wertes des Eingangssignals x(n). •
Signalgl¨ attung Eingangssignal: xi (n) = s(n − i) + η(n − i) Zielsignal: y(n) = s(n − q) q>0
i≥0
yˆ(n) ist die Sch¨atzung des Nutzsignalwertes s(n − q) auf der Basis verrauschter zeitlich umliegender Eingangssignalwerte. Das Filterausgangssignal ist im Vergleich zum Eingangssignal entrauscht und gegl¨ attet. Die Wiener-Filter-Theorie besch¨aftigt sich mit der Frage, wie die Filterkoefur die Summation der einzelnen fizienten wi , die die Gewichtungsfaktoren f¨ ussen, um den Sch¨ atzfehler Eingangssignale xi darstellen, gew¨ahlt werden m¨ e(n) im Mittel so klein wie m¨oglich zu machen. Die Wiener-Filter-Theorie bietet hierzu eine L¨osung, die auf der Minimierung der Fehlerleistung E[e2 (n)] beruht1 . Die Berechnung der Filterkoeffizienten erfolgt u ¨ber die Parametrisierung des Sch¨atzfehlers gem¨aß Gleichung 6.1 1
Dies entspricht einer Minimierung des mittleren quadratischen Fehlers.
6.2 Algorithmus
E[e2 (n)] = E
!2
127
y(n) − wT x(n) * 2 + = E y (n) − 2wT x(n)y(n) + wT x(n)xT (n)w
(6.2)
= E[y 2 (n)] − 2wT E[x(n)y(n)] + wT E[x(n)xT (n)]w
(6.4)
= σy2 − 2wT rxy + wT Rxx w,
(6.5)
(6.3)
mit σy2 als Leistung des Zielsignals, rxy als Kreuzkorrelationsvektor zwischen Eingangssignalen und Zielsignal sowie Rxx als Kovarianzmatrix der Eingangssignale2 . Die optimalen Filterkoeffizienten ergeben sich mit dem verschwindenden Gradienten bez¨ uglich der Koeffizienten wi (Wiener-Hopf-Gleichung) !
∇w E[e2 (n)] = −2rxy + 2Rxx wopt. = 0
(6.6)
rxy = Rxx wopt. wopt. = R−1 xx rxy .
(6.7) (6.8)
Die Fehlerleistung f¨ ur den optimalen Koeffizientenvektor wopt. ist nach Zusammenf¨ uhrung der Gleichungen 6.5 und 6.7 T rxy . E[e2 (n)] = σe2 = σy2 − wopt.
(6.9)
Die praktische Implementierung der Wiener-Hopf-Gleichung erfolgt meist u atzung3 . Der Erwartungswert wird dann durch ¨ber eine Least-Squares-Sch¨ einen Zeitmittelwert in einem begrenzten Signalsegment der L¨ ange N approximiert. Dazu werden die Signale y(n), xi (n) und e(n) in vektorieller Schreibweise notiert, d.h. e = [e(0), e(1), . . . , e(n), . . . , e(N − 1)]T
(6.10)
y = [y(0), y(1), . . . , y(n), . . . , y(N − 1)]T
(6.11)
⎛
x0 (0) x1 (0) ··· ⎜ x0 (1) x (1) ··· 1 ⎜ ⎜ .. .. .. ⎜. . . X=⎜ ⎜ x0 (n) x (n) · · · 1 ⎜ ⎜. . . .. .. ⎝ .. x0 (N − 1) x1 (N − 1) · · ·
xM (0) xM (1) .. . xM (n) .. .
⎞ ⎟ ⎟ ⎟ ⎟ ⎟. ⎟ ⎟ ⎟ ⎠
(6.12)
xM (N − 1)
Der mittlere quadratische Fehler ist bis auf den f¨ ur die Optimierung unwichtigen Faktor 1/N gegeben mit eT e = (y − Xw)T (y − Xw)
(6.13)
e e = y y − 2w X y + w X Xw. T
2 3
T
T
bei angenommener Mittelwertfreiheit kleinster mittlerer quadratischer Fehler
T
T
T
(6.14)
128
6 Wiener-Filter
Analog zu Gleichung 6.6 erh¨ alt man den optimalen Koeffizientenvektor u ¨ber das Nullsetzen des Gradienten ∇w eT e = −2XT y + 2XT Xwopt. = 0.
(6.15)
Nach Umstellen von Gleichung 6.15 ergibt sich !−1 T X y = X# y, wopt. = XT X
(6.16)
mit der Moore-Penrose-Pseudoinversen4 X# . Die Matrix XT X kann, abgesehen vom Faktor 1/N , als Approximation der Kovarianzmatrix E[xxT ] aufgefasst werden. F¨ ur ein unendlich langes Signalsegment, d.h. N → ∞, n¨ ahert sich die Least-Squares-L¨ osung bei vorausgesetzter Ergodizit¨ at der beteiligten stochastischen Prozesse der Wiener-L¨osung an, d.h. !−1 T XT X X y = R−1 (6.17) wopt. = lim xx rxy . N →∞
6.3 Orthogonalit¨ atsprinzip Das f¨ ur Approximationsaufgaben grundlegende Orthogonalit¨ atsprinzip, das auch f¨ ur Wiener-Filter G¨ ultigkeit besitzt, soll zun¨ achst an einem Beispiel verdeutlicht werden. Beispiel 6.1. Ein zweidimensionaler Vektor y = [y1 , y2 ]T wird durch den Vekˆ ist ein Vektor, dessen Richtung bereits festgeˆ = [ˆ tor y y1 , 0]T approximiert. y legt ist und dessen L¨ange |ˆ y1 | so bestimmt werden soll, dass der quadratische ˆ minimal wird. Fehler zwischen y und y Der quadratische Fehler ist gegeben mit ˆ )T (y − y ˆ ) = (y1 − yˆ1 )2 + (y2 )2 . eT e = (y − y
(6.18)
F¨ ur die Ableitung nach yˆ1 bekommt man deTmin. emin. = −2(y1 − yˆ1,opt. ) = 0. dˆ y1
(6.19)
Der optimale Wert yˆ1,opt. ist somit yˆ1,opt. = y1 . 4
(6.20)
Prinzipiell existieren unendlich viele Pseudoinverse C# zu einer Matrix C, deren Struktur mit C# = (CT QC)−1 CT Q gegeben ist, wobei mit Q eine positiv definite Gewichtungsmatrix bezeichnet wird. Gleichung 6.16 erh¨ alt man f¨ ur den Spezialfall Q = I.
6.3 Orthogonalit¨ atsprinzip
129
Abb. 6.2. Das Orthogonalit¨ atsprinzip: Im Optimum steht der Fehler senkrecht auf der Approximation.
Setzt man den berechneten Wert in den Sch¨ atzvektor ein und berechnet den Kosinus des Winkels zwischen Fehler- und Sch¨atzvektor, so erh¨ alt man ˆ opt. (y1 − y1 ) · y1 + (y2 − 0) · 0 eTmin. y = 0. = |emin. ||ˆ yopt. | |emin. ||ˆ yopt. |
(6.21)
Dieses Ergebnis zeigt, dass Sch¨ atzfehler und Sch¨atzvektor senkrecht, also orthogonal, aufeinander stehen. Der minimale quadratische Fehler besitzt den Wert ˆ opt. )T emin. = yT emin. = y22 . (6.22) eTmin. emin. = (y − y Die Verallgemeinerung dieses Beispiels ergibt, dass das Fehlersignal im Optimum immer senkrecht zum Eingangssignal steht bzw. der optimale Approximationsvektor eine rechtwinklige Projektion des Zielvektors in den Raum des ¨ Approximationsvektors darstellt. Ubertragen auf das Wiener-Filter gilt E[emin. (n)xi (n)] = 0 E[e2min. (n)]
=
bzw. E[emin. (n)x(n)] = 0 und
σe2min.
= E[y(n) · emin. (n)].
(6.23) (6.24)
Der Beweis f¨ ur die Richtigkeit der Verallgemeinerungen in den Gleichungen 6.23 und 6.24 kann leicht gef¨ uhrt werden. Mit der Substitution emin. (n) = T x(n) erh¨ alt man auf der linken Seite von Gleichung 6.235 y(n) − wopt. T T T x) · xi ] = E[yxi ] − wopt. E[x · xi ] = rxi y − wopt. rxxi . E[(y − wopt.
Mit Gleichung 6.7 und E[xi xj ] = rxi xj = rxj xi = E[xj xi ] gilt ⎛ ⎞ rxi x0 ⎜ rxi x1 ⎟ ⎜ ⎟ T T T rxi y = wopt. E[x · xi ] = wopt. rxxi . ⎜ .. ⎟ = wopt. ⎝. ⎠ rxi xM 5
(6.25)
(6.26)
¨ Aus Ubersichtlichkeitsgr¨ unden wird im Folgenden auf die Mitf¨ uhrung des Zeitpunktes n verzichtet, d.h. xi = xi (n).
130
6 Wiener-Filter
Das Einsetzen dieses Ergebnisses in Gleichung 6.25 zeigt die Richtigkeit von Gleichung 6.23. Gleichung 6.24 folgt aus T x(n))] E[e2min. (n)] = E[emin. (n)(y(n) − wopt.
(6.27)
= E[emin. (n)y(n)] −
(6.28)
= E[emin. (n)y(n)] −
T E[emin. (n)wopt. x(n)] T wopt. E[emin. (n)x(n)].
(6.29)
Unter Ber¨ ucksichtigung von Gleichung 6.23 verschwindet der zweite Term in der letzten Gleichung womit Gleichung 6.24 best¨ atigt ist. F¨ ur optimale Pr¨adiktionsfilter6 kann gezeigt werden, dass das Fehlersignal ugend großer Filterordnung M dekorreliert, d.h. weiß ist. Aus emin. (n) bei gen¨ Gleichung 6.23 folgt f¨ ur die lineare Pr¨ adiktion ferner E[x(n − i)emin. (n)] = E[x(n − i)(x(n) − x ˆopt. (n))] (6.30)
, - M = E x(n − i) x(n) − wk,opt. x(n − k) (6.31) k=1
= E[x(n − i)x(n)] −
M
wk,opt. E[x(n − i)x(n − k))]
(6.32)
k=1
= rxx (−i) −
M
wk,opt. rxx (k − i) = 0
(6.33)
k=1
und aus Gleichung 6.24 σe2min. = E[x(n)emin. (n)] = rxx (0) −
M
wk,opt. rxx (k).
(6.34)
k=1
Werden die Gleichungen 6.33 und 6.34 zu einem Gleichungssystem zusammengestellt, erh¨alt man die Normalengleichungen7 ⎞ ⎛ 2⎞ ⎛ ⎞⎛ σe rxx (0) 1 rxx (1) · rxx (M ) ⎜ rxx (−1) rxx (0) ⎟ ⎜ −w1 ⎟ ⎜ 0 ⎟ · r (M − 1) xx ⎟ ⎜ ⎟ ⎜ ⎟⎜ ⎟ = ⎜ .. ⎟ . (6.35) ⎜ .. ⎟ ⎜ .. .. . . .. ⎠ ⎝. ⎠ ⎝. ⎠ ⎝ . . . . rxx (−M ) rxx (−M + 1) ·
rxx (0)
−wM
0
F¨ ur reelle Signale und Koeffizienten sind die Normalengleichungen a ¨quivalent zu den hier nicht besprochenen Yule-Walker-Gleichungen. Eine alternative Darstellung ergibt sich mit 6 7
vgl. Abschnitt 6.2 F¨ ur reelle Signale gilt rxx (i) = rxx (−i), so dass die Matrix auf der linken Seite von Gleichung 6.35 eine symmetrische Toeplitz-Struktur besitzt.
6.4 Wiener-Filter im Frequenzbereich
⎛
rxx (0) rxx (1) · ⎜ rxx (−1) r (0) · xx ⎜ ⎜ .. .. .. ⎝. . . rxx (−M + 1) rxx (−M + 2) ·
⎞⎛
⎞
⎛
131
⎞
rxx (−1) w1 rxx (M − 1) ⎜ w2 ⎟ ⎜ rxx (−2) ⎟ rxx (M − 2) ⎟ ⎟ ⎜ ⎟⎜ ⎟ ⎟ ⎜ .. ⎟ = ⎜ .. ⎟. .. ⎝ ⎠ ⎠ ⎝ ⎠ . . . rxx (0) wM rxx (−M ) (6.36)
6.4 Wiener-Filter im Frequenzbereich Wiener-Filter k¨onnen auch im Frequenzbereich bestimmt werden8 . Das gesch¨ atzte Signal ergibt sich im Frequenzbereich mit Yˆ (jω) = W (jω) · X(jω),
(6.37)
mit Yˆ (jω), W (jω) und X(jω) als den Fouriertransformierten von yˆ(n), w(n) bzw. x(n). F¨ ur die Fouriertransformierte des Fehlers gilt E(jω) = Y (jω) − Yˆ (jω) = Y (jω) − W (jω) · X(jω).
(6.38)
Die Berechnung des Filters erfolgt wie im Zeitbereich u ¨ber die Minimierung der Fehlerleistung9 + * E |E(jω)|2 = E [{Y (jω) − W (jω)X(jω)}∗ · {Y (jω) − W (jω)X(jω)}] . (6.39) Die Ableitung bez¨ uglich des konjugiert komplexen Frequenzgangs W ∗ (jω) ergibt + * ∂E |E(jω)|2 ! = Wopt. (jω)E[|X(jω)|2 ] − E[Y (jω) · X ∗ (jω)] = 0. (6.40) ∂W ∗ (jω)
Dementsprechend erh¨alt man f¨ ur den Frequenzgang des Wiener-Filters Wopt. (jω) =
E[Y (jω) · X ∗ (jω)] . E[|X(jω)|2 ]
(6.41)
¨ Die im Frequenzbereich ermittelte Ubertragungsfunktion kann prinzipiell zu nichtkausalen Impulsantworten korrespondieren. Hierin liegt der wesentliche Nachteil des auf diese Weise entworfenen Filters. Der Vorteil besteht in der M¨oglichkeit, gegebenenfalls unendlich lange Impulsantworten im Frequenzbereich approximieren zu k¨onnen. Die Filterung selbst kann bei diesen Filtern meist nur im Frequenzbereich durchgef¨ uhrt werden. 8 9
Bei dem hier betrachteten Fall wird davon ausgegangen, dass die Eingangssignale des Filters aus Verz¨ ogerungen eines einzigen Eingangssignals gewonnen werden. * kennzeichnet konjugiert komplexe Zahlen.
132
6 Wiener-Filter
6.5 Weitere Bemerkungen Die Berechnung der Koeffizienten des Wiener-Filters ist mit einer MatrixInversion verkn¨ upft. Der damit verbundene Rechenaufwand ist durch die Anwendung des Levinson-Durbin- bzw. des Split-Algorithmus quadratisch statt kubisch wie bei einer allgemeinen Matrixinversion. Mit dem SchurAlgorithmus ist eine Parallelisierung m¨ oglich. Die Nullstellen eines Wiener-Pr¨ adiktionsfilters liegen immer innerhalb des Einheitskreises. Wiener-Pr¨adiktionsfilter sind also Minimalphasensysteme. Dies ist zum Beispiel nachteilig bei der Identifizierung von Impulsantworten nichtminimalphasiger Systeme. Hier m¨ ussen dann z.B. Verfahren der blinden Entfaltung angewendet werden.
7 Kalman-Filter
¨ 7.1 Uberblick Ein Kalman-Filter dient der Sch¨atzung der internen Zust¨ ande eines Systems.1 Die Theorie f¨ ur zeitdiskrete Systeme wurde von Rudolf E. Kalman als eine Erweiterung der Wiener-Filter-Theorie vorgestellt [55] und sp¨ ater von Richard S. Bucy auf zeitkontinuierliche Systeme erweitert [56]. Der Erfolg des Kalman-Filters beruht auf seinen vielen hervorragenden Eigenschaften. Vorteilhaft sind unter anderem die Integration von Vorwissen u ¨ber das System und die Einbindung von Rauschmodellen in den Filteralgorithmus, die rekursive, d.h. effiziente Berechnung, der u ¨berschaubare Formelapparat und die gute Implementierbarkeit auf Standardprozessoren [91].
Abb. 7.1. Konfiguration der Kalman-Filterung
Wie in Abbildung 7.1 gezeigt, verarbeitet das Kalman-Filter die Steuersignale und die verrauschten Ausgangssignale des Systems. An seinem Ausgang liefert es die Sch¨atzungen der Systemzust¨ande, wobei der mittlere quadratische 1
Mit Kenntnis der Struktur eines Systems sowie seiner internen Zust¨ ande kann das Systemverhalten, z.B. Position, Beschleunigung oder Geschwindigkeit, sehr genau beschrieben werden.
134
7 Kalman-Filter
Fehler als Kostenfunktion dient. Zur Sch¨atzung der Systemzust¨ ande ben¨ otigen Kalman-Filter ein Systemmodell, das zur Bewertung bzw. gegebenenfalls Korrektur der beobachteten Ausgabewerte des vorliegenden Systems verwen¨ det wird. Uber die Einbindung von Vorwissen auf diese Art und Weise ist eine qualitativ sehr hochwertige Sch¨atzung der Systemzust¨ ande m¨ oglich. Der Kalman-Filter-Algorithmus besteht aus einer Schleife, die f¨ ur jeden Zeitpunkt n durchlaufen wird. Wie in Abbildung 7.2 dargestellt, wird beim Kalman-Filter-Algorithmus unterschieden zwischen einerseits der Sch¨ atzung der Systemzust¨ande zum Zeitpunkt n und andererseits der Pr¨ adiktion der Systemzust¨ande zum Zeitpunkt n f¨ ur den Zeitpunkt n + 1. Die Sch¨ atzung der Systemzust¨ande zum Zeitpunkt n ergibt sich aus einer gewichteten Mitadiktion der telung des aktuellen Messwertes2 vom Zeitpunkt n und der Pr¨ Systemzust¨ande f¨ ur den Zeitpunkt n. Die Gewichtsfaktoren bei dieser Mit-
Abb. 7.2. Prinzip des Kalman-Filter-Algorithmus
telung werden gebildet aus den im jeweiligen Schleifendurchlauf gesch¨ atzten Unsicherheiten, die jeweils mit dem pr¨adizierten Systemzustand bzw. dem neuen Messwert verbunden sind. Je geringer die Unsicherheit, desto h¨ oher ist der relative Gewichtsfaktor. Die Unsicherheit wird jeweils u ¨ber die Kovarianzmatrix festgestellt. Beispiel 7.1. Gemessen wird ein Widerstandswert. Der Nennwert ist 100Ω, die angegebene Toleranz (± Standardabweichung) liegt bei ±5Ω. Der wahre Widerstandswert ist unbekannt, soll aber als konstant angenommen werden. Zur Ermittlung des wahren Widerstandswertes wird der Widerstand vermes2
Der Gewichtsfaktor f¨ ur den aktuellen Messwert wird als Kalman-Faktor (engl.: Kalman gain) bezeichnet.
¨ 7.1 Uberblick
135
sen. Das Messger¨at hat eine Messungenauigkeit (± Standardabweichung) von ±1Ω, wobei der Messfehler mittelwertfrei sein soll. Der Widerstandswert ist der einzige Zustand x des Systems. Aufgrund dessen Konstanz ist die Zustands¨ ubergangsgleichung x(n + 1) = x(n).
(7.1)
Die Messwerte y(n) ergeben sich aus dem jeweiligen Zustand x(n) zuz¨ uglich additiven Messrauschens v(n), also y(n) = x(n) + v(n).
(7.2)
Der Kalman-Algorithmus beginnt mit einer Anfangssch¨ atzung x ˆ− (0) f¨ ur den Zustand x zum Zeitpunkt n = 0. Als Anfangssch¨ atzung wird der Nennwert ur diesen des Widerstandes genutzt, d.h. x ˆ− (0) = 100Ω. Die Unsicherheit f¨ 2 2 Wert betr¨agt σe− (0) = (5Ω) . Im Anschluss erfolgt die Berechnung des Kalman-Faktors. Der Kalmanfaktor legt die Gewichtung fest, mit der der n¨ achste eintreffende Messwert in die Zustandssch¨atzung einfließt. Der Kalman-Faktor ergibt sich aus der Verkn¨ upfung von Unsicherheit der Anfangssch¨ atzung σe2− (0) und Messunsicher2 2 heit σv (0) = (1Ω) K0 =
σe2− (0) 2 σe− (0) + σv2 (0)
=
25 . 25 + 1
(7.3)
Die Aktualisierung des Sch¨atzwertes f¨ ur den Systemzustand nach Eintreffen des Messwertes erfolgt dann mit x− (0) + K0 y(0) = x ˆ− (0) + K0 [y(0) − x ˆ− (0)]. x ˆ(0) = (1 − K0 )ˆ
(7.4)
F¨ ur die Varianz der Zustandssch¨atzung nach Eintreffen des Messwertes ergibt sich3 σe2 = E[e2 ] = E[(x − x ˆ)2 ] = E[(x − (1 − K0 )ˆ x− − K0 (x + v))2 ] = E[((1 − K0 )(x − x ˆ− ) − K0 v)2 ] = E[((1 − K0 )e− − K0 v)2 ],
(7.5) (7.6) (7.7)
mit dem Pr¨adiktionssch¨atzfehler e− = x − x ˆ− vor Eintreffen des Messwertes und dem Sch¨atzfehler e = x − x ˆ nach Eintreffen des Messwertes. alt man aus Aufgrund der statistischen Unabh¨angigkeit zwischen e− und v erh¨ den Gleichungen 7.3 und 7.7 nach kurzer Rechnung σe2 (0) = (1 − K0 )σe2− (0) = 3
25 2 1 Ω . · 25Ω 2 = 26 26
(7.8)
¨ Auf die Zeitindizes wird im Folgenden aus Ubersichtlichkeitsgr¨ unden verzichtet, d.h. x = x(0), v = v(0) usw.
136
7 Kalman-Filter
Die Sch¨atzunsicherheit nach Eintreffen des Messwertes, d.h. σe2 (0), ist also deutlich geringer als die Sch¨atzunsicherheit vor Eintreffen des Messwertes, d.h. σe2− (0). In den folgenden Durchl¨ aufen des Kalman-Algorithmus wird die Anfangssch¨atzung lediglich durch eine Pr¨adiktion ersetzt. Als Pr¨ adiktionswerte f¨ ur die n¨achste Iteration werden in diesem Beispiel wegen Gleichung 7.1 die aktuellen Sch¨atzwerte genommen, d.h. ˆ(0) x ˆ− (1) = x bzw.
x ˆ− (n + 1) = x ˆ(n)
und σe2− (1) = σe2 (0) und σe2− (n + 1) = σe2 (n).
(7.9)
(7.10)
Abbildung 7.3, zeigt wie sich die Sch¨atzung f¨ ur den Widerstandswert und die zugeh¨orige Sch¨atzunsicherheit in Abh¨angigkeit von den eintreffenden Messwerten entwickeln.
Abb. 7.3. Berechnete Widerstandswerte und die zugeh¨ orige Unsicherheit (Varianz)
Eine genauere Betrachtung der Berechnungsvorschrift f¨ ur die gesch¨atzten Widerstandswerte und die zugeh¨orige Unsicherheit zeigt, dass es sich um die Bayes-Berechnungsvorschriften zur Bestimmung der A-posteriori-Verteilungsdichte im Falle gaußscher Verteilungsdichten handelt (siehe Abschnitt 4.3.1): Aus pr¨adiziertem Widerstandswert (A-priori-Sch¨atzwert) und aktuellem Messwert wird, dem Satz von Bayes entsprechend, der A-posterioriSch¨atzwert gewonnen. Das im Beispiel 7.1 vorgestellte Verfahren wird im Folgenden auf den nichtkonstanten eindimensionalen Fall erweitert, wobei dar¨ uber hinaus zus¨atzlich zum Messwertrauschen auch Systemrauschen ber¨ ucksichtigt wird.
7.2 Rekursive Filterung
137
7.2 Rekursive Filterung Die rekursive Filterung ist ein Spezialfall des Kalman-Filters. Die Aufgabenstellung besteht in der Sch¨ atzung eines eindimensionalen, durch mittelwertfreies weißes Rauschen v(n) gest¨orten Signals x(n) aus dem Messsignal y(n) = x(n) + v(n). Die Autokorrelationsfunktion des Signals Rx (τ ) und die Varianz des Rauschens σv2 werden als bekannt vorausgesetzt (vgl. [86]). Der Signalsch¨atzwert x ˆ(n) wird rekursiv aus dem vorangegangenen Sch¨ atzwert x ˆ(n−1) und dem zum Zeitpunkt n neu eintreffenden Messwert y(n) berechnet, d.h. [86] x ˆ(n) = Bn x ˆ(n − 1) + Kn y(n),
(7.11)
mit den zu berechnenden Gewichtungsfaktoren Bn und Kn . Wie beim WienerFilter beruht die Rechnung auf einer Minimierung des mittleren quadratischen Sch¨atzfehlers ˆ(n))2 ]. (7.12) E[e2 (n)] = E[(x(n) − x F¨ ur eine optimale Sch¨atzung muss der Sch¨ atzfehler orthogonal auf den Eingangsdaten stehen, d.h.4, 5 E[e(n)y(n − τ )] = 0
τ = 0, 1, . . . , n.
(7.13)
Aus dem Spezialfall τ = 0 resultiert E[e(n)(x(n) + v(n))] = E[e(n)x(n)] + E[e(n)v(n)] = 0.
(7.14)
Aufgrund des Orthogonalit¨atsprinzips gilt dar¨ uber hinaus f¨ ur die Leistung des minimalen Sch¨atzfehlers 2 σe(n) = E[e(n)x(n)].
(7.15)
Damit ergibt sich in Gleichung 7.14 2 σe(n) + E[(x(n) − Bn x ˆ(n − 1) − Kn y(n))v(n)]
(7.16)
2 + E[x(n)v(n)] − Bn E[ˆ x(n − 1)v(n)] − Kn E[y(n)v(n)] = 0. = σe(n)
Wegen der Unabh¨ angigkeit des Nutzsignals vom Rauschen sind die Erwartungswerte E[x(n)v(n)] und E[ˆ x(n − 1)v(n)] gleich Null. Daher folgt aus der letzten Gleichung 4 5
Es werden alle Eingangsdaten vom Zeitpunkt 0 bis zum aktuellen Zeitpunkt n ber¨ ucksichtigt. ¨ Das Orthogonalit¨ atsprinzip gilt nur f¨ ur den minimalen Fehler. Aus Ubersichtlichkeitsgr¨ unden wird im Folgenden der minimale Fehler jedoch nicht gesondert gekennzeichnet; d.h. bei Anwendung des Orthogonalit¨ atsprinzips gilt stets e(n) = emin. (n).
138
7 Kalman-Filter 2 σe(n) − Kn σv2 = 0
bzw. Kn =
2 σe(n)
σv2
(7.17)
.
F¨ ur den Spezialfall τ > 0 erh¨alt man aus den Gleichungen 7.13 und 7.11 ˆ(n − 1) − Kn y(n))y(n − τ )] (7.18) E[e(n)y(n − τ )] = E[(x(n) − Bn x x(n − 1)y(n − τ )] = E[x(n)y(n − τ )] − Bn E[ˆ −Kn E[y(n)y(n − τ )] = 0. Da Nutzsignal und Rauschen unkorreliert sind sowie weißes Rauschen angenommen wurde6 , gelten [86]7 E[x(n)y(n − τ )] = E[x(n)(x(n − τ ) + v(n − τ ))] = Rx (τ ), E[y(n)y(n − τ )] = E[(x(n) + v(n))(x(n − τ ) + v(n − τ ))] = Rx (τ ) + σv2 δ(τ ), E[y(n)v(n)] = E[(x(n) + v(n))v(n)] =
σv2 .
(7.19) (7.20) (7.21)
Unter Ber¨ ucksichtigung der Gleichungen 7.19 bis 7.21 und τ > 0 resultiert aus Gleichung 7.18 (1 − Kn )Rx (τ ) − Bn E[(x(n − 1) − e(n − 1))y(n − τ )] = 0
τ > 0. (7.22)
Da e(n − 1) orthogonal zu y(n − τ ) ist8 , entf¨allt der letzte Term der letzten Gleichung und es gilt Rx (τ ) −
Bn Rx (τ − 1) = 0 1 − Kn
(7.23)
bzw. Rx (τ ) = αRx (τ − 1) = ατ Rx (0)
mit
α=
Bn . 1 − Kn
(7.24)
Damit ist man im Besitz einer Berechnungsvorschrift f¨ ur Bn = α(1 − Kn ). Gleichzeitig gibt Gleichung 7.24 eine notwendige Bedingung f¨ ur die Autokorrelationsfunktion vor, die erf¨ ullt sein muss, um das Nutzsignal rekursiv sch¨ atzen zu k¨ onnen. Eine solche Autokorrelationsfunktion entsteht durch ein Signal, das der Bedingung9 6 7
8 9
Bei weißem Rauschen gilt R(τ ) = 0 f¨ ur τ = 0. δ(n) bezeichnet die Kronecker-Delta-Funktion mit 1 n=0 δ(n) = 0 sonst. τ > 0! Aus x(n) = αx(n − 1) + w(n) folgt durch beidseitige Multiplikation mit x(n − τ ) und Erwartungswertbildung E[x(n)x(n−τ )] = αE[x(n−1)x(n−τ )]+E[w(n)x(n− τ )], wobei der letzte Term aufgrund der statistischen Unabh¨ angigkeit von w(n) und x(n−τ ), τ > 0, verschwindet. Daraus resultiert schließlich R(τ ) = αR(τ −1).
7.2 Rekursive Filterung
x(n) = αx(n − 1) + w(n)
139
(7.25)
gen¨ ugt10 , wobei w(n) eine von v(n) unabh¨ angige weiße Rauschsequenz bezeichnet. Damit ergibt sich schließlich der Sch¨ atzwert f¨ ur das Nutzsignal x ˆ(n) = α(1−Kn )ˆ x(n−1)+Kn y(n) = αˆ x(n−1)+Kn [y(n)−αˆ x(n−1)]. (7.26) Der Kalman-Faktor Kn wird gem¨ aß Gleichung 7.17 aus der Varianz des 2 berechnet. Aufgrund des Orthogonalit¨ atsprinzips ergibt Sch¨atzfehlers σe(n) 2 [86] sich als rekursive Sch¨ atzgleichung f¨ ur σe(n) 2 = E[x(n)e(n)] σe(n) = E[x(n)(x(n) − α(1 − Kn )ˆ x(n − 1) − Kn y(n))]
= σx2 (1 − Kn ) − α(1 − Kn )E[x(n)ˆ x(n − 1)] * 2 + = (1 − Kn ) σx − αE[x(n)ˆ x(n − 1)] * + = (1 − Kn ) σx2 − αE[(αx(n − 1) + w(n))ˆ x(n − 1)] * + = (1 − Kn ) σx2 − α2 E[x(n − 1)ˆ x(n − 1)] .
(7.27) (7.28) (7.29) (7.30) (7.31) (7.32)
F¨ ur die Bildung des Startwertes zum Zeitpunkt n = 0 existieren verschiedene Ans¨atze [86]. Ein m¨oglicher Ansatz geht von x ˆ(−1) = y(−1) aus. Daraus folgt E[x(−1)ˆ x(−1)] = E[x(−1)y(−1)] = E[x(−1)(x(−1) + v(−1))] = σx2 . (7.33) 2 Mit diesem Ergebnis ist σe(0) gegeben mit 2 σe(0) = (1 − K0 )σx2 (1 − α2 )
(7.34)
σx2 (1 − α2 ) . 1 + σx2 (1 − α2 )/σv2
(7.35)
bzw. mit Gleichung 7.17 2 σe(0) =
Bei einem weiteren m¨oglichen Ansatz wird die Annahme x ˆ(−1) = 0 getroffen. Daraus ergibt sich die Anfangssch¨atzung 2 σe(0) =
σx2 . 1 + σx2 /σv2
(7.36)
Aufgrund der notwendigen Bedingung an die Autokorrelationsfunktion in Gleichung 7.24, d.h. der Modellierung des Nutzsignals x als AR(1)-Prozess, 10
Ein solches Signal wird als AR(1)-Prozess (autoregressiver Prozess mit genau einer R¨ uckkopplung) bezeichnet.
140
7 Kalman-Filter
gilt11
2 σw = (1 − α2 )σx2 .
(7.37)
Die beiden Ans¨atze f¨ ur die Sch¨ atzung von E[x(−1)ˆ x(−1)] aus den Gleichungen 7.35 und 7.36 werden damit zu 2 σw 2 /σ 2 1 + σw v
(7.38)
2 2 σv σw . 2 2 σw + σv (1 − α2 )
(7.39)
2 = σe(0)
bzw. 2 σe(0) =
F¨ ur Zeitpunkte n > 0 ergibt sich 2 σe(n−1) = E[x(n − 1)e(n − 1)] = E[x(n − 1)(x(n − 1) − x ˆ(n − 1))](7.40)
= σx2 − E[x(n − 1)ˆ x(n − 1)].
(7.41)
Damit erh¨alt man in Gleichung 7.32 unter Ber¨ ucksichtigung von Gleichung 7.37 2 2 − σx2 ) (7.42) = (1 − Kn ) σx2 + α2 (σe(n−1) σe(n) 2 (7.43) = (1 − Kn ) σx2 (1 − α2 ) + α2 σe(n−1) 2 2 = (1 − Kn ) σw . (7.44) + α2 σe(n−1) Nach Substitution von Kn durch Gleichung 7.17 folgt [86] 2 = σe(n)
2 2 + α2 σe(n−1) σw
2 + α2 σ 2 σv2 + σw e(n−1)
σv2
n > 0.
(7.45)
Aus dieser letzten Gleichung wird vor allem deutlich, dass der Kalman-Faktor unabh¨ angig von den eigentlichen Daten ist. Die Sequenz Kn kann daher im Vorfeld berechnet werden12 . Beispiel 7.2. F¨ ur den Spezialfall α = 1 ergibt sich das Signalmodell f¨ ur ein konstantes Signal analog zu Beispiel 7.1 x(n) = x(n − 1) = x. 11
(7.46)
Die Quadrierung und Erwartungswertbildung von Gleichung 7.25 f¨ uhrt auf E[x2 (n)] = α2 E[x2 (n − 1)] + 2αE[w(n)x(n − 1)] + E[w 2 (n)],
12
wobei der mittlere Term aufgrund der Unabh¨ angigkeit von x(n − 1) und w(n) 2 . Null ist. Damit ergibt sich σx2 = α2 σx2 + σw bei vorausgesetzter Stationarit¨ at der beteiligten Rauschprozesse
7.3 Kalman-Filter in Zustandsraum-Darstellung
141
Die daraus resultierende vereinfachte Sch¨ atzgleichung ist (vgl. Gleichung 7.26) x ˆ(n) = x ˆ(n − 1) + Kn [y(n) − x ˆ(n − 1)].
(7.47)
Da in diesem Falle auch w(n) = 0 gilt, vereinfacht sich die rekursive Gleichung f¨ ur die Varianz des Sch¨ atzfehlers auf 2 σe(n) =
2 σe(n−1)
2 1 + σe(n−1) /σv2
.
(7.48)
Da der Nennerterm immer gr¨oßer als 1 ist, ist der Funktionsverlauf der Sch¨ atzfehlervarianz monoton fallend. Wird der Kalman-Algorithmus zur Pr¨adiktion eingesetzt, ist der optimale Pr¨adiktionswert im Sinne des Kriteriums des kleinsten mittleren quadratischen Fehlers gegeben mit [86] x ˆ− (n + 1) = αˆ x(n).
(7.49)
Diese Beziehung resultiert aus der Orthogonalit¨ at zwischen Sch¨ atzfehler und Eingangsdaten, denn mit dem Pr¨adiktionsfehler e− (n + 1) = x(n + 1) − x ˆ− (n + 1)
(7.50)
und der Orthogonalit¨atsbedingung E[y(n − τ )e− (n + 1)] = 0, τ = 0, 1, . . . , n, gilt E[y(n − τ )e− (n + 1)] = E[y(n − τ )(x(n + 1) − x ˆ− (n + 1))] (7.51) = E[y(n − τ )(αx(n) + w(n + 1) − αˆ x(n))] (7.52) = αE[y(n − τ )(x(n) − x ˆ(n))] (7.53) = αE[y(n − τ )e(n)] = 0.
(7.54)
Die letzte Gleichung ist Null aufgrund der Optimalit¨ at der Sch¨ atzung des Kalman-Algorithmus zum Zeitpunkt n, womit die G¨ ultigkeit von Gleichung 7.49 gezeigt ist.
7.3 Kalman-Filter in Zustandsraum-Darstellung 7.3.1 Zustandsraum-Darstellung Die Beschreibung des Kalman-Filters erfolgt mit Hilfe der Zustandsraumdarstellung des zugrunde liegenden Systems. Diese ist im zeitdiskreten linearen und zeitinvarianten Fall gegeben durch
142
7 Kalman-Filter
x(n) = Ax(n − 1) + Bu(n) + w(n − 1) y(n) = Cx(n) + v(n),
(7.55) (7.56)
mit dem Zustandsvektor x ∈ RN ×1 , dem Steuersignal u ∈ RP ×1 und dem ubergangsBeobachtungssignal y ∈ RQ×1 sowie mit A ∈ RN ×N als Zustands¨ matrix, B ∈ RN ×P als Steuermatrix und C ∈ RQ×N als Beobachtungsmatrix sowie dem Zeitindex n. Die Signale w ∈ RN ×1 und v ∈ RQ×1 sind gaußverteiltes, weißes und voneinander statistisch unabh¨ angiges Rauschen. Dar¨ uber hinaus sind beide Rauschprozesse mittelwertfrei und besitzen die Kovarianzmatrizen Rw = E[wwT ] bzw. Rv = E[vvT ]. F¨ ur die Sch¨atzung der Systemzust¨ande x(n) aus den Messwerten y(n) m¨ ussen die Matrizen A, B, C, Rw und Rv bekannt sein.
7.3.2 Algorithmus ˆ − (n) der Sch¨ Mit Bezug auf Abbildung 7.2 ist der A-priori-Sch¨ atzwert x atzwert f¨ ur den Zustandsvektor x(n) des Systems, der aus der Anfangssch¨ atzung oder vorherigen Durchl¨aufen des Kalman-Algorithmus resultiert. Der aktuelle Messwert vom Zeitpunkt n bleibt noch unber¨ ucksichtigt. Der A-priori-Sch¨ atzfehler folgt dementsprechend mit ˆ − (n). e− (n) = x(n) − x
(7.57)
ˆ beNach Eintreffen des Messwertes y(n) wird der A-posteriori-Sch¨ atzwert x rechnet. Der zugeh¨ orige A-posteriori-Sch¨atzfehler ist ˆ (n). e(n) = x(n) − x
(7.58)
Die Kovarianzmatrizen von A-priori- und A-posteriori-Sch¨ atzfehler sind − −,T R− (n)] e (n) = E[e (n)e T Re (n) = E[e(n)e (n)].
(7.59) (7.60)
Die in Abbildung 7.2 gezeigte Vorgehensweise zur Berechnung des Filters kann, wie in Abbildung 7.4 gezeigt, zu zwei Stufen zusammengefasst werden. In der erste Stufe erfolgt die zeitliche Pr¨ adiktion des Zustandsvektors. ˆ − (n). Die zweite Stufe beinhalDas Ergebnis ist die A-priori-Sch¨atzung x tet den Abgleich der Sch¨atzung mit der Messung, d.h. die Korrektur der Aˆ (n). Sowohl priori-Sch¨atzung. Das Ergebnis ist die A-posteriori-Sch¨ atzung x im Pr¨adiktions- als auch im Korrekturschritt m¨ ussen neben der Sch¨ atzung des Zustandsvektors auch die Kovarianzmatrizen der Sch¨ atzfehler nachgef¨ uhrt werden. Der Pr¨adiktionsschritt erfolgt mit
7.3 Kalman-Filter in Zustandsraum-Darstellung
143
Abb. 7.4. Kalman-Filter als Pr¨ adiktor-Korrektor-Verfahren
ˆ − (n) = Aˆ x(n − 1) + Bu(n) und x T (n) = AR (n − 1)A + R . R− e w e
(7.61) (7.62)
Der Korrekturschritt wird mit * +−1 T T K(n) = R− CR− e (n)C e (n)C + Rv * + ˆ (n) = x ˆ − (n) + K(n) y(n) − Cˆ x x− (n)
(7.64)
K(n)C]R− e (n)
(7.65)
Re (n) = [I −
(7.63)
ˆ (n) kann als Sch¨ durchgef¨ uhrt. Der Term Cˆ x− (n) = y atzwert f¨ ur den aktuellen Messwert gedeutet werden. Daraus resultiert eine einfache Interpretation ˆ (n) wird durch Mulf¨ ur diesen Filteralgorithmus: Der Sch¨atzfehler y(n) − y tiplikation mit dem Kalmanfaktor zur Korrektur der Sch¨ atzung der Systemzust¨ ande verwendet. Die Gewichtung des Fehlers durch den Kalmanfaktor ist umso st¨ arker, je gr¨oßer die relative Unsicherheit der A-priori-Sch¨ atzung der Systemzust¨ ande gegen¨ uber der Messunsicherheit ist. Die Gleichungen 7.61 bis 7.65 werden im Folgenden weiter untersucht. •
Gleichung 7.61: Die Zustandspr¨adiktion ohne aktuellen Messwert (A-priori-Sch¨ atzwert) wird mit Hilfe der Systemgleichungen durchgef¨ uhrt. Diese Vorgehensweise f¨ uhrt analog zu Gleichung 7.49 zu einer optimalen Pr¨ adiktion, wie mit Hilfe des Orthogonalit¨atsprinzips gezeigt werden kann. Im Optimum ist der Pr¨ adiktionsfehler orthogonal zu den Eingangsdaten, d.h.13, 14
13
14
¨ Das Orthogonalit¨ atsprinzip gilt nur f¨ ur den minimalen Fehler. Aus Ubersichtlichkeitsgr¨ unden wird im Folgenden der minimale Fehler jedoch nicht gesondert gekennzeichnet; d.h. bei Anwendung des Orthogonalit¨ atsprinzips gilt stets (n). e(n) = emin. (n) bzw. e− (n) = e− min. Jedes Element des Fehlervektors e− i (n+1) ist orthogonal zu jedem Eingangsdatum − atsbeziehungen zusammen y(n−l), d.h. E[ei (n+1)y(n−l)] = 0. Alle Orthogonalit¨ ergeben Gleichung 7.66.
144
7 Kalman-Filter
* + E e− (n + 1)yT (n − l) = 0
l = 0, 1, . . . .
(7.66)
Die G¨ ultigkeit von Gleichung 7.66 zeigt sich mit dem Pr¨ adiktionsfehler e− (n + 1) = x(n + 1) − Aˆ x(n) − Bu(n + 1) und * + E e− (n + 1)yT (n − l) = E (x(n + 1) − Aˆ x(n) − Bu(n + 1)) × yT (n − l) (7.67) ! x(n) − Bu(n + 1) = E Ax(n) + Bu(n + 1) − Aˆ × yT (n − l) (7.68) + * ˆ (n)) yT (n − l) (7.69) = E A (x(n) − x * + T = AE e(n)y (n − l) = 0. (7.70) Da das Kalman-Filter den Sch¨atzfehler e(n) minimiert, ist aufgrund des Orthogonalit¨atsprinzips die letzte Gleichung gleich Null. Damit ist die Optimalit¨at der Pr¨adiktion in Gleichung 7.61 best¨ atigt. • Gleichung 7.62: Mit jedem neuen Pr¨adiktionsschritt muss auch die Kovarianzmatrix des A-priori-Sch¨atzfehlers aktualisiert werden. Sie ist gegeben mit − −,T R− ] e (n) = E[e e = E (x(n) − Aˆ x(n − 1) − Bu(n))
(7.71)
T × (x(n) − Aˆ x(n − 1) − Bu(n)) = E (x(n) − A[x(n − 1) − e(n − 1)] − Bu(n)) × (x(n) − A[x(n − 1) − e(n − 1)] − Bu(n))
T
(7.72) .
(7.73)
Mit w(n − 1) = x(n) − Ax(n − 1) − Bu(n) folgt T R− (7.74) e (n) = E (w(n − 1) + Ae(n − 1)) (w(n − 1) + Ae(n − 1)) + * + * = E w(n − 1)wT (n − 1) + E w(n − 1)(Ae(n − 1))T (7.75) * + * + +E Ae(n − 1)w(n − 1)T + E Ae(n − 1)eT (n − 1)AT = Rw + ARe (n − 1)AT .
(7.76)
Die letzte Gleichung folgt unter Ber¨ ucksichtigung der statistischen Unabh¨angigkeit von e(n − 1) und w(n − 1) sowie der Stationarit¨ at von w.
7.3 Kalman-Filter in Zustandsraum-Darstellung
•
145
Gleichung 7.63: Der Kalman-Faktor K(n) wird so berechnet, dass der mittlere quadratische Fehler zwischen dem wahren und dem gesch¨ atzten Zustandsvektor minimal wird, d.h. + * + * ˆ (n)2 = E eT (n)e(n) → min. (7.77) E x(n) − x ˆ − (n) − K(n)[y(n) − Cˆ Unter Nutzung von e(n) = x(n) − x x− (n)] f¨ uhrt die Ableitung von Gleichung 7.77 bez¨ uglich K(n) und das anschließende Nullsetzen auf E K(n)[y(n) − Cˆ x− (n)][y(n) ˆ − (n)][y(n) − Cˆ (7.78) −Cˆ x− (n)]T − [x(n) − x x− (n)]T = 0. ˆ − und v = y − Cx vereinfacht sich die letzte Gleichung Mit e− = x − x 15 zu (7.79) E K[v + Ce− ][v + Ce− ]T − e− [v + Ce− ]T = 0. Da der A-priori-Sch¨ atzfehler und das Messrauschen voneinander statistisch unabh¨angig sind, kann weiter vereinfacht werden T − T K[Rv + CR− e C ] − Re C = 0.
(7.80)
Daraus ergibt sich unmittelbar Gleichung 7.63. •
Gleichung 7.64: Wie bereits in Abschnitt 7.2 gezeigt, liefert die Theorie der Bayes-Sch¨ atzung im Falle gaußscher Verteilungsdichten eine Motivation f¨ ur die Anwendung einer Linearkombination aus A-priori-Sch¨ atzwert und neuem Messwert zur Berechnung des A-posteriori-Sch¨atzwertes.
•
Gleichung 7.65: Die Aktualisierung der Kovarianzmatrix des A-posteriori-Sch¨ atzfehlers erfolgt nach der Einarbeitung des aktuellen Messwertes in die Sch¨ atzung. Der A-posteriori-Sch¨ atzfehler ist gegeben mit16 ˆ =x−x ˆ − − K[y − Cˆ e = x−x x− ] = e− − K[y − Cˆ x− ] ! = e− − K[y − C x − e− ] = e− − K[y − Cx + Ce− ] = e− − K[v + Ce− ].
15 16
(7.81) (7.82) (7.83) (7.84)
¨ Auf den Zeitindex n wird im Folgenden aus Ubersichtlichkeitsgr¨ unden verzichtet. ¨ Auf den Zeitindex n wird im Folgenden aus Ubersichtlichkeitsgr¨ unden verzichtet.
146
7 Kalman-Filter
F¨ ur die Kovarianzmatrix folgt daraus + * Re = E[eeT ] = E (e− − K[v + Ce− ])(e− − K[v + Ce− ])T .
(7.85)
Mit Gleichung 7.80 sowie der statistischen Unabh¨ angigkeit zwischen v und e− ergibt sich − T T − − T T Re = R− e − Re C K − KCRe + Re C K − = [I − KC]Re .
(7.86) (7.87)
7.4 Erweiterte Kalman-Filter Die bisherigen Betrachtungen des Kalman-Filters setzten lineare Systeme voraus. Reale Systeme sind jedoch h¨aufig nichtlinear, so dass lineare Ans¨ atze oftmals nicht erfolgreich sind. Die Kalman-Filter-Theorie bietet die M¨ oglichkeit einer Erweiterung auf nichtlineare Systeme. Die Idee hinter diesen erweiterten Kalman-Filtern besteht im wesentlichen in einer Linearisierung der Systemfunktionen um den jeweiligen Arbeitspunkt. Das nichtlineare, zeitinvariante Zustandsmodell ist gegeben mit [48, 90] x(n) = f [x(n − 1), u(n), w(n − 1)] y(n) = c[x(n), v(n)],
und
(7.88) (7.89)
wobei f = [f1 , f2 , . . .]T und c = [c1 , c2 , . . .]T nichtlineare vektorwertige Funktionen sind. Die Rauschprozesse w(n) und v(n) sind mittelwertfrei und weiß. Wie beim linearen Fall k¨ onnen auch hier der aktuelle Zustandsvektor und der aktuelle Messvektor mit Hilfe der Systemfunktionen und w(n − 1) = v(n) = 0 pr¨ adiziert werden [90] ˆ − (n) = f [ˆ x x(n − 1), u(n), 0], − ˆ (n) = c[ˆ x− (n), 0]. y
(7.90) (7.91)
Die wahren Werte von Zustands- und Messvektor werden u ¨ber eine Taylorreihenentwicklung approximiert17 ˆ − (n) + A · [x(n − 1) − x ˆ (n − 1)] + Ww(n − 1), x(n) ≈ x ˆ − (n) + C · [x(n) − x ˆ − (n)] + Vv(n), y(n) ≈ y mit den zeitabh¨angigen Jacobi-Matrizen 17
Abbruch nach dem ersten Glied
(7.92) (7.93)
7.5 Implementierungsfragen
Aij =
Cij
∂fi [ˆ x(n − 1), u(n), 0] , ∂xj
x− (n), 0] ∂c [ˆ , = i ∂xj
Wij =
Vij
147
∂fi [ˆ x(n − 1), u(n), 0] , ∂wj
x− (n), 0] ∂c [ˆ . = i ∂vj
(7.94)
Die Gleichungen 7.92 und 7.93 k¨ onnen nun so umgestellt werden, dass ihre Form mit der Zustandsraumdarstellung in den Gleichungen 7.55 und 7.56 u ¨bereinstimmt. Aus Gleichung 7.92 wird [48] 7 − 8 ˆ (n) − Aˆ x(n) ≈ Ax(n − 1) + Ww(n − 1) + x x(n − 1) (7.95) = Ax(n − 1) + Ww(n − 1) + d. (7.96) F¨ ur Gleichung 7.93 erh¨ alt man zun¨ achst ˆ − (n) − Cˆ x− (n). y(n) ≈ Cx(n) + Vv(n) + y
(7.97)
¯ (n) = y(n) − y ˆ − (n) + Cˆ x− (n) ergibt Mit der Einf¨ uhrung einer Hilfsvariable y sich ¯ (n) ≈ Cx(n) + Vv(n). y (7.98) Aufgrund der u ¨bereinstimmenden Struktur zwischen den Gleichungen 7.55 und 7.56 einerseits und den Gleichungen 7.96 und 7.98 andererseits, wird der Kalman-Algorithmus des linearen Falles per Analogieschluss direkt u ¨bernommen. Pr¨adiktionsschritt: ˆ − (n) = f [ˆ x x(n − 1), u(n), 0]
und
T T R− e (n) = ARe (n − 1)A + WRw W ,
(7.99) (7.100)
Korrekturschritt: * +−1 T T CR− K(n) = R− e (n)C e (n)C + VRv V * + ˆ (n) = x ˆ − (n) + K(n) y(n) − c(ˆ x x− (n), 0) Re (n) = [I − K(n)C]R− e (n).
(7.101) (7.102) (7.103)
7.5 Implementierungsfragen ¨ 7.5.1 Uberblick Insbesondere im Falle begrenzter Wortl¨ angen sind beim Kalman-Algorithmus nummerische Instabilit¨ aten m¨ oglich. Zu einer verbesserten nummerischen Stabilit¨at tragen die Quadratwurzel-Verfahren18 bei, die auf der QR- und der Cholesky-Zerlegung beruhen. 18
engl.: square root methods
148
7 Kalman-Filter
7.5.2 QR- und Cholesky-Faktorisierung Die QR-Zerlegung kann mit Hilfe des Orthogonalisierungsverfahrens von Gram und Schmidt abgeleitet werden. Gegeben ist eine Matrix X = (x1 , x2 , . . . , xN ) ,
(7.104)
die aus N linear unabh¨angigen Spaltenvektoren x1 bis xN der Form xi = [xi1 , xi2 , . . . , xiK ]T , mit K ≥ N , besteht. Mit Hilfe der Gram-SchmidtOrthogonalisierung ist es m¨ oglich, f¨ ur den durch die Vektoren xi aufgespannten Raum ein orthonormales Koordinatensystem zu finden, dessen Basisvektoren qi als Spaltenvektoren in der Matrix Q1 zusammengefasst werden. Der erste Basisvektor q1 wird definiert mit ˆ 1 = x1 q
und q1 =
ˆ1 q . ||ˆ q1 ||
(7.105)
Der zweite Basisvektor wird gebildet mit ˆ 2 = x2 − (xT2 q1 )q1 q
und q2 =
ˆ2 q . ||ˆ q2 ||
(7.106)
Verallgemeinert ergibt sich f¨ ur alle n ≤ N die Rekursion ˆ n = xn − q
n−1 i=1
(xTn qi )qi
und qn =
ˆn q . ||ˆ qn ||
(7.107)
Der Vektor q1 liegt aufgrund dieser Konstruktion der orthonormalen Basis in dem durch den Vektor x1 aufgespannten Raum, q2 liegt in dem von x1
Abb. 7.5. Veranschaulichung der Gram-Schmidt-Orthogonalisierung f¨ ur den zweidimensionalen Fall
und x2 aufgespannten Raum bzw. allgemein liegt der Vektor qn in dem durch die Vektoren x1 bis xn aufgespannten Raum. Damit kann die neue Basis geschrieben werden als
7.5 Implementierungsfragen
⎛
ρ11 ρ12 · · · ⎜ 0 ρ22 · · · ⎜ (q1 , q2 , . . . , qN ) = (x1 , x2 , . . . , xN ) ⎜ . .. 2 ⎝ .. 01 2 / 01 / . X Q1 0 0 ··· 01 / R−1 1
ρ1N ρ2N .. . ρN N
149
⎞ ⎟ ⎟ ⎟, ⎠
(7.108)
2
mit den ρij als Gewichtungsfaktoren. Aufgrund der Gram-Schmidt-Orthogonalisierung ist R−1 1 eine obere Dreiecksmatrix. Man kann zeigen, dass deshalb auch R1 die Struktur einer oberen Dreiecksmatrix besitzen muss. Daraus folgt ⎛ ⎞ r11 r12 · · · r1N ⎜ 0 r22 · · · r2N ⎟ ⎜ ⎟ (7.109) X = Q1 R1 = (q1 , q2 , . . . , qN ) ⎜ . ⎟. . . .. ⎝ .. ⎠ . . 0
0
· · · rN N
Die Zerlegung der Matrix X in eine Orthogonalmatrix Q1 und eine obere ur Dreiecksmatrix R1 ist unter dem Begriff QR-Zerlegung bekannt. Sie kann f¨ die triangul¨are Zerlegung der Korrelationsmatrix genutzt werden, denn es gilt wegen der Orthogonalit¨at von Q1 XT X = RT1 QT1 Q1 R1 = RT1 R1 .
(7.110)
RT1 ist eine untere und R1 eine obere Dreiecksmatrix. Diese Zerlegung in eine untere Dreiecksmatrix und deren Transponierte19 wird auch als Cholesky20 Zerlegung bezeichnet. Sie ist f¨ ur positiv definite Matrizen eindeutig [14].
7.5.3 Quadratwurzel-Kalman-Filterung Problembehaftet ist beim Kalman-Algorithmus vor allem die Sch¨atzung der Kovarianzmatrizen. Aufgrund begrenzter Wortl¨angen kann es zu negativ definiten Sch¨atzungen der Kovarianzmatrix kommen, die zu einer Divergenz des Verfahrens f¨ uhren. Die Quadratwurzel-Filter-Verfahren bieten eine nummerisch verbesserte Methode zur Sch¨atzung der Kovarianzmatrizen. Anstelle der Kovarianzmatrix R = RT1 R1 wird gem¨aß der Cholesky-Zerlegung die Matrixwurzel R1 gesch¨atzt. Das Produkt RT1 R1 und damit auch die zu sch¨atzende Kovarianzmatrix R sind notwendigerweise positiv semidefinit. Die Adaptionsgleichungen f¨ ur die A-priori- und A-posteriori-Sch¨atzfehler-Kovarianzmatrizen 7.62 und 7.65 k¨onnen zun¨achst so vereinigt werden, dass 19 20
im komplexen Fall hermitesch transponiert Andre-Louis Cholesky: franz¨ osischer Geod¨ asist, geboren 1875, gefallen 1918. Die von ihm entwickelte Methode wurde erst nach seinem Tod 1924 von Benoit ver¨ offentlicht.[86]
150
7 Kalman-Filter
lediglich die Sch¨ atzung der A-priori-Sch¨ atzfehler-Kovarianzmatrix verbleibt (Riccati-Gleichung) − T R− e (n) = A[I − K(n − 1)C]Re (n − 1)A + Rw .
(7.111)
Das Quadratwurzel-Kalman-Filter soll nun f¨ ur den folgenden Spezialfall betrachtet werden, bei dem die Systemgleichungen gegeben sind durch (vgl. [48, 77]) x(n) = λ−1/2 x(n − 1), y(n) = cT x(n) + v(n)
0 λ≤1
(7.112) (7.113)
und Rv = 1.
(7.114)
Die Sch¨atzgleichung f¨ ur den Kalman-Faktor und Gleichung 7.111 vereinfachen sich dann zu21 −1/2 − Re (n − 1)c ˜ − 1) = λ k(n cT R− e (n − 1)c + 1
und
−1 − ˜ − 1)cT R− (n − 1). Re (n − 1) − λ−1/2 k(n R− e (n) = λ e
(7.115)
(7.116)
Die verschiedenen Terme dieser beiden Gleichungen k¨ onnen in einer (2 × 2)Blockmatrix angeordnet werden T − c Re (n − 1)c + 1 λ−1/2 cT R− e (n − 1) . (7.117) M(n) = λ−1 R− λ−1/2 R− e (n − 1)c e (n − 1) Die Matrix M(n) wird per Cholesky-Zerlegung aufgegliedert in M(n) = M1/2 (n)M1/2,T (n) 1/2 1 cT (R− (n − 1) e ) = 1/2 (n − 1) 0 λ−1/2 (R− e ) 1 0T . × 1/2,T 1/2,T (R− (n − 1)c λ−1/2 (R− (n − 1) e ) e ) (7.118) Mit einer orthogonalen Rotationsmatrix Θ kann die Matrix M1/2 (n) so gedreht werden, dass die Matrix B entsteht, d.h. 1/2 b11 (n) (n − 1) 0T 1 cT (R− e ) Θ= = B. (7.119) 1/2 b21 (n) B22 (n) (n − 1) 0 λ−1/2 (R− e ) 21
Der Vorfaktor λ−1/2 beim Kalmanfaktor erm¨ oglicht im Folgenden eine bessere Symmetrierung.
7.5 Implementierungsfragen
151
Da M(n) = M1/2 (n)M1/2,T (n) = B(n)BT (n) gilt22 , k¨ onnen die Elemente der Matrix B u ¨ber einen Koeffizientenvergleich ermittelt werden23 # (7.120) b11 (n) = cT R− e (n − 1)c + 1
λ−1/2 R− e (n − 1)c ˜ − 1) = k(n b21 (n) = # − cT Re (n − 1)c + 1
#
cT R− e (n − 1)c + 1(7.121)
1/2 B22 (n) = (R− (n). e )
(7.122)
Mit der orthogonalen Drehung Θ k¨ onnen daher die Matrixwurzel der Kovarianzmatrix des Zustandspr¨ adiktionsfehlers sowie der Kalman-Faktor aus den jeweils vorangegangenen Werten berechnet werden. Geeignete Matrizen Θ gewinnt man unter anderem mit der Householder-Transformation oder mit Givens-Rotationen (siehe Abschnitt 7.5.4). 7.5.4 Householder-Reflexionen und Givens-Rotationen Rotationen und Reflexionen Die Berechnung der Orthogonalmatrix Θ in Gleichung 7.119 kann auf verschiedenen Wegen erfolgen, unter anderem mit Givens-Rotationen oder Householder-Reflexionen.24 Zur Verdeutlichung werden zun¨ achst die grundlegenden Prinzipien von Rotation und Reflexion im zweidimensionalen Fall erl¨autert. Die Rotationsmatrix cos(θ) sin(θ) Q= (7.123) − sin(θ) cos(θ) wird genutzt, um einen Vektor x in einen Vektor y = QT x zu transformieren, wobei y durch Rotation aus dem Vektor x entsteht. Mit der Matrix QT erfolgt die Drehung um den Winkel θ im entgegengesetzten Uhrzeigersinn. Eine Reflexion entsteht durch die Multiplikation des Vektors x mit der Matrix cos(θ) sin(θ) Q= . (7.124) sin(θ) − cos(θ) Der transformierte Vektor y = QT x = Qx entsteht mit dieser Vorschrift aus der Reflexion des Vektors x an der durch den Vektor [cos(θ/2), sin(θ/2)] 22 23 24
Diese Beziehung gilt aufgrund der Orthogonalit¨ at von Θ. F¨ ur die Berechnung von Gleichung 7.122 wird Gleichung 7.116 genutzt. Dar¨ uber hinaus ist z.B. auch die Anwendung eines modifizierten Gram-SchmidtVerfahrens m¨ oglich [44].
152
7 Kalman-Filter
vorgegebenen Linie. Sowohl Rotationen als auch Reflexionen sind aufgrund ihrer einfachen Berechnungsweise gut geeignet, um an bestimmten Stellen eines Vektors oder einer Matrix Nulleintr¨age zu erzeugen.
Householder-Reflexionen Eine Householder-Reflexion25 P wird zur Drehung eines Vektors genutzt, so dass dieser nach der Transformation in Richtung einer Koordinatenachse zeigt. Die Householder-Reflexion wird definiert u ¨ber [78] P=I−
2
vT v
vvT
(7.125)
mit v ∈ RN \{0} und I ∈ RN ×N als Einheitsmatrix. Die Multiplikation y = Px erzeugt eine Reflexion des Vektors x an der Hyperebene span v ⊥ , wobei v⊥ orthogonal auf v steht. Die Wahl dieser Matrix wird aus Abbildung 7.6 deutlich. Der Vektor x soll in den Vektor y = ||x||e1 gedreht werden. Der Vektor v ist gegeben mit v = x − ||x||e1 . Orthogonal dazu steht v⊥ = x + ||x||e1 . Die Projektion von x auf v ergibt sich aus v T xv/(vT v). Das Doppelte der Differenz zwischen x und dieser Projektion ergibt den Differenzvektor zwischen x und −||x||e1 , d.h. T vv x −x (7.126) −||x||e1 = x + 2 vT v
vvT x = −x + 2 T v v vvT x. = − I−2 T v v
(7.127)
(7.128)
Daraus resultiert unmittelbar die Householder-Reflexion. Die Matrix P ist orthogonal, denn es gilt PPT = PT P T 2vvT 2vvT · I− T = I− T v v v v
vvT vvT vvT +4 T T T v vv v v v vvT vvT = I − 4 T + 4 T = I. v v v v
= I−4
25
(7.129)
(7.130)
(7.131)
(7.132)
Die Householder-Reflexion wird oft auch als Householder-Transformation bezeichnet.
7.5 Implementierungsfragen
153
Abb. 7.6. Householder-Reflexion (nach [78])
Der Vektor v wird so gew¨ ahlt, dass nur das erste Element des transformierten Vektors ungleich Null ist, d.h. y = [y1 , 0, . . . , 0]T in die Richtung des ersten Einheitsvektors zeigt. Dazu wird v mit (7.133)
v = x + αe1
parametrisiert, wobei e1 den Einheitsvektor der ersten Komponente von x bezeichnet. Darauf aufbauend ergibt sich
bzw.
vT x = xT x + αx1
(7.134)
vT v = xT x + 2αx1 + α2
(7.135)
und damit [44]
2vT x 2vvT x=x− T v Px = I − T v v v v vT x xT x + αx1 x − 2α T e1 . = 1−2 T 2 v v x x + 2αx1 + α
(7.136)
(7.137)
Um den Vektor x in die Richtung von e1 zu drehen, muss der erste Term der letzten Gleichung verschwinden, d.h. !
Daraus folgt
xT x + 2αx1 + α2 − 2xT x − 2αx1 = 0.
(7.138)
√ α = ± xT x.
(7.139)
Oftmals wird der Vektor v so normiert, dass v1 = 1 gilt [44]. Die Anwendung der Householder-Reflexion auf eine Matrix A ∈ RM ×N , M > N , kann zu einer Triangularisierung26 , wie sie im Quadratwurzel26
Unter Triangularisierung einer Matrix A wird die Erzeugung einer oberen oder einer unteren Dreiecksmatrix durch Multiplikation mit einer orthogonalen Matrix verstanden.
154
7 Kalman-Filter
Filterverfahren gefordert wird, genutzt werden. Dazu werden N HouseholderReflexionen hintereinander ausgef¨ uhrt. Dabei wird die i-te Reflexion dazu genutzt, um im i-ten Spaltenvektor alle Elemente ab der (i + 1)-ten Zeile zu Null zu setzen. Der Vektor vi wird entsprechend der obigen Vorschrift aus einem Teilvektor des jeweiligen Spaltenvektors gebildet, d.h. v i = [ai,i , ai+1,i , . . . , aM,i ]T + ||ai,i ||e1 , wobei der Einheitsvektor e1 die dazu passende Dimension besitzen muss. Aus dem Vektor vi und der darauf aufbauenden Matrix Pi wird die Matrix Ii−1 0 ˜ iT ˜iv Qi = (7.140) = IM − β v 0 Pi ˜ i = [0, viT ]T . Um die gesamte Matrix A zu konstruiert, mit β = 2/(viT vi ) und v triangularisieren, sind N Multiplikationen mit den entsprechenden Matrizen Q1 , . . . , QN notwendig. Beispiel 7.3. Zu triangularisieren ist die Matrix ⎛ ⎞ 1234 ⎜5 4 3 6⎟ ⎟ A=⎜ ⎝7 1 4 2⎠. 4251
(7.141)
Zun¨achst soll der erste Spaltenvektor ab Zeile zwei zu Null werden. Der Vektor v ist dementsprechend gegeben mit ⎛ ⎞ ⎛ ⎞ ⎛ ⎞ 1 1 10.5394 ⎜5⎟ ⎜0⎟ ⎜ 5⎟ ⎟ ⎜ ⎟ ⎜ ⎟. v1 = a1 + ||a1 ||e1 = ⎜ (7.142) ⎝ 7 ⎠ + 9.5394 · ⎝ 0 ⎠ = ⎝ 7⎠ 4 0 4 Die Matrix P1 ergibt sich folglich mit ⎛ ⎞ −0.1048 −0.5241 −0.7338 −0.4193 ⎜ −0.5241 0.7513 −0.3481 −0.1989 ⎟ ⎟ P1 = ⎜ ⎝ −0.7338 −0.3481 0.5126 −0.2785 ⎠ . −0.4193 −0.1989 −0.2785 0.8409 Mit Gleichung 7.140 und A = Q1 · A erh¨alt man ⎛ ⎞ −9.5394 −3.8787 −6.9187 −5.4511 ⎜ 0.0000 1.2111 −1.7055 1.5163 ⎟ ⎟ A = ⎜ ⎝ 0.0000 −2.9045 −2.5877 −4.2772 ⎠ . 0.0000 −0.2311 1.2356 −2.5870 In der zweiten Iteration ergibt sich mit
(7.143)
(7.144)
7.5 Implementierungsfragen
⎛
⎞
4.3664 v1 = ⎝ −2.9045 ⎠ −0.2311
⎛
−0.3838 0.9205 0.0732 bzw. P2 = ⎝ 0.9205 0.3877 −0.0487 ⎠ 0.0732 −0.0487 0.9961
sowie mit Gleichung 7.140 ⎛ ⎞ −9.5394 −3.8787 −6.9187 −5.4511 ⎜ 0.0000 −3.1553 −1.6369 −4.7086 ⎟ ⎟ A = ⎜ ⎝ 0.0000 0.0000 −2.6334 −0.1365 ⎠ . 0.0000 0.0000 1.2319 −2.2575 Die letzte Reflexion f¨ uhrt gem¨ aß Gleichung 7.140 sowie mit 0.2739 0.9058 −0.4237 v3 = bzw. P3 = 1.2319 −0.4237 −0.9058
155
⎞ (7.145)
(7.146)
(7.147)
⎛
auf A
⎞ −9.5394 −3.8787 −6.9187 −5.4511 ⎜ 0.0000 −3.1553 −1.6369 −4.7086 ⎟ ⎟ =⎜ ⎝ 0.0000 0.0000 −2.9073 0.8329 ⎠ . 0.0000 0.0000 0.0000 2.1026
(7.148)
Givens-Rotationen Givens-Rotationen stellen eine andere M¨oglichkeit dar, durch Orthogonaltransformationen Nullen in einzelnen Vektor-Positionen zu erhalten. Die Rotationsmatrix Qij entsteht aus einer Einheitsmatrix durch Modifikation der Matrixelemente qii , qjj , qij und qji , d.h. [44] ⎞ ⎛ 1 ··· 0 ··· 0 ··· 0 ⎜ .. . . .. .. .. ⎟ ⎜. . . . .⎟ ⎟ ⎜ ⎜ 0 · · · c · · · −s · · · 0 ⎟ ⎟ ⎜ ⎜ .. . . .. .. ⎟ (7.149) Qij = ⎜ ... ⎟ . . . . ⎟ ⎜ ⎜0 ··· s ··· c ··· 0⎟ ⎟ ⎜ ⎜. .. .. . . .. ⎟ ⎝ .. . . . .⎠ 0 ··· 0 ··· 0 ··· 1 mit c = cos(θ) und s = sin(θ). Damit sind Givens-Rotationen in jedem Falle orthogonal. Die Elemente des Ergebnisvektors y = Qij x sind dann ⎧ k=i ⎨ cxi − sxj k=j yk = sxi + cxj (7.150) ⎩ k = i, j. xk
156
7 Kalman-Filter
Soll das j-te Element des Ergebnisvektors Null werden, dann gilt unter Ber¨ ucksichtigung der Nebenbedingung c2 + s2 = 1 c= #
xi
x2i
+
x2j
s= #
−xj
x2i + x2j
.
(7.151)
Die Anwendung der Givens-Rotationen auf Matrizen erfolgt ein gleicher Weise wie die Householder-Transformation, d.h. anstelle der Matrix P wird die Matrix Qij genutzt. Im Gegensatz zur Householder-Transformation sind GivensRotationen jedoch selektiver.
8 Adaptive Filter
¨ 8.1 Uberblick Die Anwendung fest konfigurierter Filter ist m¨ oglich und sinnvoll, wenn keine Anpassung an sich ¨andernde Umgebungsbedingungen w¨ ahrend des Einsatzes notwendig ist und das Filter bereits im Vorfeld spezifiziert werden kann. In vielen praktisch relevanten F¨allen sind jedoch die Umgebung und die zu verarbeitenden Signale instation¨ar, so dass die vor dem Einsatz des Filters vorhandenen Informationen keinen optimalen Filterentwurf zulassen. Vielmehr sind adaptive Filter notwendig, die sich selbst¨andig an ver¨ anderte Bedingungen anpassen. Die Adaption kann segmentweise oder mit jedem neu eintreffenden Datum erfolgen. Im ersten Fall werden zun¨achst ganze Datensegmente aufgenommen, f¨ ur die dann jeweils ein optimales Filter entworfen wird. Im zweiten Fall werden die Filterparameter mit jedem neu eintreffenden Datum durch einen rekursiven Algorithmus nachgeregelt. In diesem Abschnitt stehen vor allem rekursive Verfahren im Vordergrund. Dar¨ uber hinaus erfolgt eine Beschr¨ankung auf lineare adaptive Filter1 . Aufgrund ihrer Einfachheit und im Gegensatz zu IIR2 -Filtern gesicherten Stabilit¨ at werden FIR3 -Filter bei der praktischen Realisierung eines adaptiven 1
2 3
Aufgrund der Zeitvarianz der Filterkoeffizienten sind die betrachteten adaptiven Filter nicht linear im mathematischen Sinne. Linearit¨ at bezieht sich hier auf die Berechnung des aktuellen Ausgangssignals aus den Eingangssignalwerten, die bei linearen adaptiven Filtern u ¨ber eine gewichtete Linearkombination erfolgt. Nichtlineare adaptive Filter k¨ onnen zum Beispiel mit k¨ unstlichen neuronalen Netzen realisiert werden. IIR: infinite impulse response FIR: finite impulse response
158
8 Adaptive Filter
Filters bevorzugt4 . H¨ aufig eingesetzte Filterstrukturen sind die Direktformen und Lattice-Filter. Sie lassen sich in den in Abbildung 8.1 dargestellten Line-
Abb. 8.1. Linearkombinierer
arkombinierer u uhren, aus dem die Berechnungsvorschrift f¨ ur das Filter¨berf¨ Ausgangssignal schnell deutlich wird: Das Ausgangssignal des adaptiven Filters ist das Skalarprodukt zwischen dem Filterkoeffizienten- und dem Eingangssignalvektor yˆ(n) =
M
wk (n)xk (n) = wT x(n),
(8.1)
k=0
mit w(n) = [w0 (n), w1 (n), . . . , wM (n)] und x(n) = [x0 (n), x1 (n), . . . , xM (n)]. F¨ ur vektorielle Ausgangssignale wird der Koeffizientenvektor w(n) zu einer Koeffizientenmatrix W(n) erweitert. Die Bewertung adaptiver Filter und der zugeh¨origen Adaptions- und Filteralgorithmen kann nach verschiedenen, zum Teil miteinander verkn¨ upften Kriterien vorgenommen werden [48, 41]: •
Genauigkeit der Ergebnisse: Wie stark weichen die Koeffizienten des adaptiven Filters nach einer ausreichenden Anzahl von Adaptionsschritten und in einer station¨ aren Umgebung von der Wiener-L¨osung5 ab?
•
Konvergenzgeschwindigkeit: Wie viele Adaptionsschritte sind zum Erreichen der Wiener-L¨ osung in einer station¨ aren Umgebung notwendig?
•
Folgef¨ ahigkeit: Wie schnell kann der Algorithmus Ver¨anderungen in der Umgebung folgen?
4
5
Der Einsatz stabiler FIR-Filter bedeutet nicht, dass auch der Algorithmus zur Berechnung der Filterkoeffizienten stabil ist, d.h. zu endlichen Filterkoeffizienten konvergiert. Das Wiener-Filter wird im Kontext der Bewertung adaptiver Filter h¨ aufig als Referenz genutzt.
¨ 8.1 Uberblick
159
•
Rechentechnische Komplexit¨at: Wie viele Rechenoperationen pro Adaptionsschritt sind erforderlich? Wie groß ist der Speicherbedarf? Wie groß ist der Programmier- und Implementierungsaufwand?
•
Robustheit gegen St¨orungen und Wortl¨angenbegrenzung: Wie groß ist der Einfluss von St¨orungen (extern oder intern) auf die Leistungsf¨ahigkeit des Algorithmus? Welche Wortbreiten sind notwendig, um eine gute Leistungsf¨ ahigkeit und eine nummerische Stabilit¨ at zu erreichen?
•
Struktur: Wie ist der Signalfluss des Algorithmus? Ist eine Hardware-Implementierung parallel bzw. modular m¨ oglich?
Beispiele f¨ ur Einsatzgebiete adaptiver Filter sind unter anderem Echokompensation, Beamforming, pr¨adiktive Kodierung, Signalerkennung, Equalisierung, Systemidentifikation, seismologische Modellierung sowie Radar und Zielverfolgung [48]. Beispiele zu typischen Anwendungskonfigurationen zeigen die Abbildungen 8.2 und 8.3.
(Konfiguration a)
(Konfiguration b) Abb. 8.2. Grundkonfigurationen zur Anwendung adaptiver Filter (nach [48]): a) Systemidentifikation, b) inverse Modellierung.
160
8 Adaptive Filter
(Konfiguration c)
(Konfiguration d) Abb. 8.3. Weitere Grundkonfigurationen zur Anwendung adaptiver Filter (nach [48]): c) Signalentst¨ orung, d) Pr¨ adiktion.
Die Konfigurationen entsprechend den Abbildungen 8.2 und 8.3 k¨ onnen zur in Abbildung 8.4 gezeigten Struktur verallgemeinert werden, die die Grundlage f¨ ur die weiteren Berechnungen bildet. Dar¨ uber hinaus soll im weite-
Abb. 8.4. Allgemeine Konfiguration zur adaptiven Filterung
ren ausschließlich der h¨ aufig relevante Spezialfall x(n) = [x(n), x(n − 1), . . . , x(n − M )]T betrachtet werden.
8.2 Kostenfunktion Die Koeffizienten des adaptiven Filters werden zeitabh¨angig so nachgef¨ uhrt, dass der Wert einer von den Filterkoeffizienten abh¨angigen Kostenfunktion J(w) kleiner oder, bestenfalls, minimal wird. Im Allgemeinen ist die Kostenfunktion der Erwartungswert einer Funktion Q(w, η), d.h. [41] J(w) = E[Q(w, η)] −→ min .,
(8.2)
8.2 Kostenfunktion
161
wobei η additive Rauschst¨ orungen symbolisiert. Bei den in diesem Abschnitt besprochenen Verfahren werden adaptive Filter behandelt, die den mittleren quadratischen Fehler minimieren. Mit den Bezeichnungen aus Abbildung 8.4 gilt dann (8.3) Q(w, η) = e2 (n), wobei e(n) = y(n) − yˆ(n) den Fehler zwischen einer Zielfunktion y(n) und der durch das adaptive Filter gebildeten Approximation yˆ(n) bezeichnet. Andere Kostenfunktionen werden im Abschnitt zur blinden Entfaltung behandelt. Die Adaption der Filterkoeffizienten kann prinzipiell nichtrekursiv oder rekursiv vorgenommen werden. Im nichtrekursiven Fall wird das stochastische Approximationsproblem auf ein deterministisches (Least-Squares-)Problem zur¨ uckgef¨ uhrt, d.h. das Signal wird in Segmente der L¨ ange N unterteilt, f¨ ur die jeweils die optimalen Filterkoeffizienten berechnet werden [41] JN (w) =
N −1 1 Q(w, η(n)) −→ min . N n=0
(8.4)
Diese segmentweise Verarbeitung besitzt den Nachteil einer Verarbeitungsverz¨ ogerung und erfordert im Allgemeinen einen erh¨ ohten Speicheraufwand. Im Falle einer rekursiven Approximation wird analog zu den iterativen Suchrichtungs-Optimierungsverfahren die Kostenfunktion schrittweise mit jedem neu eintreffenden Datum weiter optimiert. Dazu werden je nach Verfahren die Werte der Kostenfunktion J(n), des Gradienten Jw (n) und der Hesseˆ Jˆw (n) und Jˆww (n) verwendet. Matrix Jww (n) bzw. deren Sch¨atzwerte J(n), Die Adaptierung der Koeffizienten erfolgt mit w(n + 1) = w(n) + α(n)s(n).
(8.5)
Die vielen existierenden Verfahren unterscheiden sich im wesentlichen in der Bestimmung der Suchrichtung s(n) sowie der Schrittweite α(n). Verwendung finden vor allem Gradientenabstiegs- und Newtonverfahren. F¨ ur die Gradientenabstiegsverfahren gilt 1 s(n) = − Jw (n) 2
1 bzw. s(n) = − Jˆw (n). 2
(8.6)
Bei Newton-Verfahren wird die Suchrichtung um eine Gewichtungsmatrix K(n) erg¨ anzt 1 s(n) = − K(n)Jw (n) 2
mit
−1 (n K(n) = Jww
1 bzw. s(n) = − K(n)Jˆw (n) 2
(8.7)
−1 (n). K(n) = Jˆww
(8.8)
bzw.
162
8 Adaptive Filter
Die Gewichtungsmatrix K(n) muss positiv definit sein, um die Abstiegsbedingung (vgl. Kapitel 3) zu erf¨ ullen. Gegebenenfalls kann diese Eigenschaft erzwungen werden durch K(n) = (Jww (n) + δI)
−1
bzw.
K(n) = (Jˆww (n) + δI)−1 ,
(8.9)
wobei δ eine Konstante repr¨asentiert. Der Faktor 1/2 in den Gleichungen 8.6 und 8.7 hat keine Auswirkung auf die Lage des Optimums der Kostenfunktion. Er wird jedoch in der Literatur h¨aufig verwendet, da bei der Berechnung des Gradienten aufgrund der quadratischen Kostenfunktion der Faktor 2 entsteht, der somit in der weiteren Rechnung gek¨ urzt werden kann.
8.3 Algorithmen mit adaptivem Gradienten Da der exakte Gradient im Allgemeinen nicht verf¨ ugbar ist, existiert eine Vielzahl von Algorithmen, die auf jeweils unterschiedliche Weise den Gradienten approximieren. Einer der ersten und bekanntesten ist der LMS-Algorithmus von Widrow und Hoff [93]. Die Kostenfunktion J(w) wird hier durch den Momentanwert des Fehlers approximiert, d.h. * +2 ˆ J(w, n) = e2 (n) = y(n) − wT (n)x(n) . Damit ergibt sich als Sch¨ atzwert f¨ ur den Gradienten * + Jˆw (n) = −2 y(n) − wT (n)x(n) x(n) = −2e(n)x(n).
(8.10)
(8.11)
Die Regel zur Adaption der Filterkoeffizienten ist somit (LMS-Algorithmus) w(n + 1) = w(n) + α(n)e(n)x(n).
(8.12)
Wird eine Linienoptimierung zur Bestimmung der optimalen Schrittweite α(n) durchgef¨ uhrt, gelangt man zum normierten LMS-Algorithmus6 . Das Optimierungsproblem bez¨ uglich der Schrittweite lautet dann * +2 αopt. (n) = argmin y(n) − xT (n)w(n + 1)
(8.13)
α
* +2 = argmin y(n) − xT (n) (w(n) + α(n)x(n)e(n)) .
(8.14)
α
Die Optimalit¨atsbedingung erster Ordnung ergibt + * ! −2 y(n) − xT (n) (w(n) + αopt. (n)x(n)e(n)) xT (n)x(n)e(n) = 0 bzw. 6
engl.: normalized LMS (NLMS)
(8.15)
8.3 Algorithmen mit adaptivem Gradienten
163
* + y(n) − xT (n) (w(n) + αopt. (n)x(n)e(n)) = 0
(8.16)
y(n) = xT (n)w(n) + αopt. (n)xT (n)x(n)e(n).
(8.17)
und damit Nach Umstellen erh¨alt man y(n) − xT (n)w(n) = αopt. (n)xT (n)x(n)e(n). 2 01 / e(n)
(8.18)
Mit e(n) = 0 gilt 1 = αopt. (n)xT (n)x(n) 1 . αopt. (n) = T x (n)x(n)
(8.19)
(8.20)
Damit erh¨ alt man die Adaptionsregel f¨ ur den normierten LMS-Algorithmus w(n + 1) = w(n) +
x(n)e(n) . xT (n)x(n)
(8.21)
Etwas robuster wird der NLMS-Algorithmus durch [41] α(n) =
κ , β + xT (n)x(n)
(8.22)
mit κ ∈ (0; 2) und β ≥ 0. Damit ist ein Nullwerden des Nenners von Gleichung 8.22 ausgeschlossen. Eine Variante des normierten LMS-Algorithmus ist der leistungsnormierte LMS-Algorithmus7 κ , (8.23) α(n) = 2 σ ˆx (n)
mit σ ˆx2 (n) als Sch¨atzwert f¨ ur die Leistung von x(n) und κ wie beim NLMSAlgorithmus. Die Vorteile des LMS-Algorithmus und der besprochenen Modifikationen bestehen in der geringen rechentechnischen Komplexit¨at, da weder eine fortlaufende Berechnung der Korrelationsfunktionen noch die Invertierung der Autokorrelationsmatrix erforderlich ist. Zu den entscheidenden Nachteilen des Algorithmus z¨ahlt die relativ langsame lineare Konvergenz. Neben den in diesem Abschnitt beschriebenen Verfahren existiert eine Vielzahl weiterer auf dem LMS-Algorithmus aufbauender adaptiver Filtermethoden, so zum Beispiel Methoden, • 7
die weitere Vereinfachungen im Adaptionsalgorithmus vornehmen (quantized error LMS, sign LMS), engl.: power normalized LMS (PN-LMS)
164
8 Adaptive Filter
•
die Erwartungswerte der Gradienten nutzen (sliding window LMS),
•
die in Zeit- oder Frequenzbereich (allgemein Transformationsbereich) eine Dekorrelation und Koeffizientenadaptierung vornehmen und damit eine bessere Konvergenz erreichen (Filtered-x LMS, FFT-LMS, DCT-LMS).
¨ Einen breiten Uberblick u ¨ber diese und weitere Verfahren geben [41, 48].
8.4 Konvergenzverhalten des Gradientenverfahrens Das Konvergenzverhalten geh¨ort zu den wichtigsten Bewertungskriterien adaptiver Filteralgorithmen. F¨ ur das dem LMS-Algorithmus eng verwandte Gradientenverfahren ist eine einfache Konvergenzuntersuchung m¨ oglich. Sie soll deshalb im Folgenden durchgef¨ uhrt werden (vgl. [48]). Die dabei gewonnenen Ergebnisse sind in den wesentlichen Punkten auf den LMS-Algorithmus u ¨bertragbar [48]. Mit der Kostenfunktion J(w) = E[e2 (n)] = E[y 2 (n)] − 2wT (n)p + wT (n)Rw(n)
(8.24)
und p = E[y(n)x(n)] sowie R = E[xxT ] ist der Gradient gegeben mit Jw = −2p + 2Rw(n).
(8.25)
Bei der Adaption der Koeffizienten mit dem negativen Gradienten erh¨ alt man 1 w(n + 1) = w(n) − αJw 2 = w(n) + α[p − Rw(n)].
(8.26) (8.27)
Der Abstand zwischen dem Koeffizientenvektor des n-ten Adaptionsschrittes w(n) und dem optimalen Koeffizientenvektor wopt. wird definiert mit [48] c(n) = w(n) − wopt. .
(8.28)
F¨ ur eine Konvergenz muss die Folge |c(n)| mit zunehmendem n kleiner werden. Die Konvergenzvoraussetzungen werden im Folgenden untersucht. Die Adaptionsgleichung f¨ ur c(n) ist zun¨achst c(n + 1) = w(n + 1) − wopt. = w(n) + α[p − Rw(n)] − wopt. (8.29) = c(n) + αp − αRw(n). (8.30) Mit dem Ergebnis der Wiener-Hopf-Gleichung p = Rwopt. gilt ferner
8.4 Konvergenzverhalten des Gradientenverfahrens
c(n + 1) = c(n) + αRwopt. − αRw(n) = c(n) − αR [w(n) − wopt. ] 2 01 / c(n) = [I − αR]c(n).
165
(8.31) (8.32)
(8.33)
¨ Uber eine Eigenwertzerlegung kann nun die Autokorrelationsmatrix R als R = QΛQT
(8.34)
dargestellt werden, wobei Q orthogonal ist und Λ = diag(λ1 , λ2 , . . . , λM +1 ) die Eigenwerte der Autokorrelationsmatrix R enth¨ alt. In Gleichung 8.33 ergibt sich dann [48, 92] (8.35) c(n + 1) = [I − αQΛQT ]c(n) bzw. QT c(n + 1) = [I − αΛ]QT c(n).
(8.36)
Die letzte Gleichung kann mit der Substitution v(n) = QT c(n) vereinfacht werden v(n + 1) = [I − αΛ]v(n). (8.37) Jede Gleichung dieses Gleichungssystems besitzt die Form vk (n + 1) = [1 − αλk ]vk (n).
(8.38)
Mit vk (0) als Anfangswert gilt [1 − αλk ]n / 01 2
vk (n + 1) =
vk (0).
(8.39)
geometrische Folge
Die geometrische Folge ist nur f¨ ur −1 < 1 − αλk < 1
(8.40)
konvergent. Damit folgt als Bedingung f¨ ur die Schrittweite α 0 0, D > 0 (positiv definit) und A = B−1 + CD−1 CT gilt
(8.59)
A−1 = B − BC(D + CT BC)−1 CT B.
Der Beweis kann leicht durch die Multiplikation AA werden.
−1
=I=A
(8.60) −1
A gef¨ uhrt
Die Anwendung des Matrix-Inversions-Lemmas auf die Sch¨ atzung der Inversen der Autokorrelationsmatrix ergibt mit A = R(n) C = x(n)
B = λ−1 R−1 (n − 1) D=1
(8.61)
die Rekursion R−1 (n) = λ−1 R−1 (n − 1) −
λ−2 R−1 (n − 1)x(n)xT (n)R−1 (n − 1) . (8.62) 1 + λ−1 xT (n)R−1 (n − 1)x(n)
F¨ ur eine u ¨bersichtliche Schreibweise der letzten Gleichung ist es sinnvoll, weitere Symbole einzuf¨ uhren. Es werden definiert [48] Φ(n) = R−1 (n) k(n) =
=
und
(8.63)
λ−1 R−1 (n − 1)x(n) 1 + λ−1 xT (n)R−1 (n − 1)x(n)
(8.64)
λ−1 Φ(n − 1)x(n) . 1 + λ−1 xT (n)Φ(n − 1)x(n)
(8.65)
Daraus ergibt sich die Rekursionsgleichung (Riccati-Gleichung) f¨ ur die Sch¨atzung der inversen Autokorrelationsmatrix
8.5 Recursive-Least-Squares-Filter
R−1 (n) = Φ(n) = λ−1 Φ(n − 1) − λ−1 k(n)xT (n)Φ(n − 1).
169
(8.66)
Durch Umsortieren in Gleichung 8.65 erh¨alt man k(n) = λ−1 Φ(n − 1)x(n) − λ−1 k(n)xT (n)Φ(n − 1)x(n) * + = λ−1 Φ(n − 1) − λ−1 k(n)xT (n)Φ(n − 1) x(n).
(8.67) (8.68)
Aus der Zusammenf¨ uhrung der Gleichungen 8.66 und 8.68 resultiert k(n) = Φ(n)x(n).
(8.69)
F¨ ur den optimalen Koeffizientenvektor ergibt sich zum Zeitpunkt n unter Nutzung der Gleichungen 8.53, 8.58 und 8.63 w(n) = R−1 (n)p(n) = Φ(n)p(n) = Φ(n) [λp(n − 1) + x(n)y(n)] = λΦ(n)p(n − 1) + Φ(n)x(n)y(n).
(8.70) (8.71) (8.72)
Mit dem Einsetzen der Gleichungen 8.66 und 8.69 in Gleichung 8.72 folgt * + w(n) = λ−1 Φ(n − 1) − λ−1 k(n)xT (n)Φ(n − 1) λp(n − 1) +k(n)y(n) (8.73) = Φ(n − 1)p(n − 1) − k(n)xT (n)Φ(n − 1)p(n − 1) +k(n)y(n).
(8.74)
Mit w(n − 1) = Φ(n − 1)p(n − 1) gelangt man zur Adaptionsgleichung f¨ ur die Filterkoeffizienten w(n) = w(n − 1) − k(n)xT (n)w(n − 1) + k(n)y(n) = w(n − 1) + k(n) [y(n) − xT (n)w(n − 1)] 2 01 / ξ(n) = w(n − 1) + k(n)ξ(n).
(8.75) (8.76)
(8.77)
Der Fehler ξ(n) = y(n) − xT (n)w(n − 1) wird auch als A-priori-Fehler bezeichnet, da er durch Filterung mit den alten Filterkoeffizienten vom Zeitpunkt n − 1 entsteht. Die Initialisierung des RLS-Algorithmus erfolgt im Allgemeinen mit Φ = δ −1 I w(0) = 0.
mit δ klein und gr¨ oßer Null
(8.78) (8.79)
Die Adaptierung der Matrix Φ und des Vektors k wird mit Hilfe der Gleichungen 8.65 und 8.66 vorgenommen.
170
8 Adaptive Filter
8.6 Blockadaptive Filter ¨ 8.6.1 Uberblick Insbesondere bei langen Filtern, z.B. in der akustischen Echokompensation, ist der mit der Adaptierung verbundene Rechenaufwand sehr hoch. Im Vergleich zum Standard-LMS-Algorithmus erbringen blockadaptive Verfahren eine zum Teil betr¨ achtliche Reduzierung des Rechenaufwandes bei nahezu gleicher Leistungsf¨ ahigkeit. Unterschieden wird vor allem in approximative Blockverfahren (z.B. BLMS13 ) und exakte Blockverfahren (z.B. FELMS14 ). Der Effizienzgewinn ergibt sich im wesentlichen aus der nur blockweisen Adaptierung der Filterkoeffizienten sowie aus der Einsparung von im LMSAlgorithmus inh¨arenten Mehrfachberechnungen, die mit der blockweisen Formulierung der Problemstellung deutlich hervortreten und schließlich vermieden werden k¨onnen. 8.6.2 Block-LMS-Algorithmus Die Filterkoeffizienten w(n + 1) werden rekursiv aus den Filterkoeffizienten w(n − N + 1) berechnet. Die Adaptierung der Koeffizienten erfolgt also blockweise15 . Im Gegensatz dazu wird der Fehler zu jedem Zeitpunkt mit den im jeweiligen Block g¨ ultigen Filterkoeffizienten ermittelt. Die Herleitung der Gleichungen dieser Blockrekursion erfolgt ausgehend von der Rekursionsgleichung des Standard-LMS-Algorithmus w(n + 1) = w(n) + αx(n)e(n). Wird nun w(n) in Abh¨angigkeit von w(n−1) dargestellt, so ergibt sich w(n + 1) = w(n − 1) + αx(n − 1)e(n − 1) + αx(n)e(n) = w(n − 1) + α
1
x(n − k)e(n − k).
(8.80) (8.81)
k=0
Verallgemeinert kann bei einer Adaptierung der Filterkoeffizienten nach N Zeitpunkten formuliert werden w(n + 1) = w(n − N + 1) + α
N −1
x(n − k)e(n − k).
(8.82)
k=0
Mit Einf¨ uhrung des Blockindex m ergibt sich f¨ ur die Blockrekursion (BLMSAlgorithmus)16 [22, 23] 13 14 15 16
BLMS: Block-LMS-Algorithmus FELMS: Fast-Exact-LMS-Algorithmus Die Filterkoeffizienten sind innerhalb eines Blocks konstant. F¨ ur die Berechnung der Fehlerwerte e(mN − k) im Block m werden die Filterkoeffizienten w(m) genutzt.
8.6 Blockadaptive Filter
w(m + 1) = w(m) + α
N −1
x(mN − k)e(mN − k).
171
(8.83)
k=0
Die Eigenschaften des BLMS-Algorithmus gleichen im wesentlichen denen des Standard-LMS-Algorithmus. Unterschiede ergeben sich vor allem aus der aufgrund der blockweisen Mittelung des Gradienten glatteren Konvergenz und einer um den Faktor N reduzierten maximal zul¨ assigen Schrittweite αmax [82]. Aufgrund der blockweisen Adaptierung verschlechtert sich die Folgef¨ ahigkeit des Verfahrens. Dem gegen¨ uber steht eine erhebliche Reduzierung des notwendigen Rechenaufwandes.
8.6.3 Exakter Block-LMS-Algorithmus Wie bei dem im Abschnitt 8.6.2 beschriebenen approximativen Blockalgorithmus werden bei den exakten Blocktechniken die Fehlerwerte f¨ ur jeden Zeitpunkt berechnet, die Filterkoeffizienten jedoch nur blockweise nachgeregelt [8]. Im Gegensatz zum approximativen Verfahren wird der Fehler so berechnet, dass sich, zumindest an den Blockgrenzen, zum Standard-LMS-Algorithmus keine Unterschiede ergeben. Die rechentechnische Effizienz resultiert hier vor allem aus der Einsparung redundanter Rechenoperationen, die sich aus der Blockformulierung des Adaptionsproblems ergibt. Wie beim approximativen BLMS-Algorithmus verschlechtert sich auch hier die Folgef¨ ahigkeit. F¨ ur die weitere Rechnung wird angenommen, dass die Filterl¨ ange M + 1 ein ganzzahliges Vielfaches der Blockl¨ ange N ist, d.h. M + 1 = P · N mit P ∈ N. Mit dieser Voraussetzung soll das Verfahren zun¨ achst f¨ ur die Blockl¨ ange N = 2 vorgestellt werden (vgl. [8]). Die Gleichungen des Standard-LMS-Algorithmus sind e(n) = y(n) − xT (n)w(n)
(8.84)
w(n + 1) = w(n) + αe(n)x(n).
(8.85)
Zum Zeitpunkt n − 1 ergibt sich damit e(n − 1) = y(n − 1) − xT (n − 1)w(n − 1)
(8.86)
w(n) = w(n − 1) + αe(n − 1)x(n − 1).
(8.87)
Durch Einsetzen von Gleichung 8.87 in Gleichung 8.84 erh¨ alt man e(n) = y(n) − xT (n)w(n − 1) − αe(n − 1)xT (n)x(n − 1) = y(n) − x (n)w(n − 1) − e(n − 1)s(n), T
mit
(8.88) (8.89)
172
8 Adaptive Filter
s(n) = αxT (n)x(n − 1).
(8.90)
Aus der Kombination der Gleichungen 8.86 und 8.89 resultiert T e(n − 1) y(n − 1) x (n − 1) = − w(n − 1) e(n) y(n) xT (n) 0 0 e(n − 1) − s(n) 0 e(n)
(8.91)
und schließlich17 T e(n − 1) 1 0 y(n − 1) x (n − 1) w(n − 1) . = − e(n) −s(n) 1 y(n) xT (n) (8.92) Der letzte Term der letzten Gleichung entspricht zwei aufeinander folgenden Ausgabewerten eines Filters mit dem festen Koeffizientenvektor w(n−1), d.h. T x (n − 1) w(n − 1) xT (n) ⎛
⎞
w0 (n − 1) ⎜ w (n − 1) x(n − 1) x(n − 2) · · · x(n − M − 1) ⎜ 1 = ⎜ .. x(n) x(n − 1) · · · x(n − M ) ⎝.
⎟ ⎟ ⎟. ⎠
(8.93)
wM (n − 1) In Polyphasendarstellung, d.h. mit der Definition der Zeilenvektoren a0 = [x(n), x(n − 2), . . . , x(n − M + 1)], a1 = [x(n − 1), x(n − 3), . . . , x(n − M )],
(8.94) (8.95)
a2 = [x(n − 2), x(n − 4), . . . , x(n − M − 1)],
(8.96)
sowie mit w0 (n − 1) = [w0 (n − 1), w2 (n − 1), . . . , wM −1 (n − 1)]T w1 (n − 1) = [w1 (n − 1), w3 (n − 1), . . . , wM (n − 1)]T gilt
xT (n − 1) xT (n)
w(n − 1) =
a 1 a2 a0 a1
w0 (n − 1) w1 (n − 1)
und (8.97) (8.98)
.
(8.99)
F¨ ur die Filterkoeffizienten ergibt sich aus den Gleichungen 8.85 und 8.87 in Polyphasenschreibweise 17
Es gilt
ab c d
−1 =
1 ad − bc
d −b −c a
8.6 Blockadaptive Filter
w(n + 1) = w(n − 1) + αe(n)x(n) + αe(n − 1)x(n − 1)
173
(8.100)
bzw. T T w0 (n − 1) a0 a1 w0 (n + 1) = + αe(n) + αe(n − 1) . (8.101) w1 (n + 1) w1 (n − 1) aT1 aT2 In dieser Schreibweise kann der LMS-Algorithmus formuliert werden als e(n − 1) 1 0 y(n − 1) a 1 a2 w0 (n − 1) = − a0 a1 e(n) −s(n) 1 y(n) w1 (n − 1)
w0 (n + 1) w1 (n + 1)
=
w0 (n − 1) w1 (n − 1)
+α
aT1 aT0 aT2 aT1
e(n − 1) e(n)
(8.102)
.
(8.103)
Bis zu diesem Punkt haben sich noch keine rechentechnischen Vereinfachungen im Vergleich zum Standard-LMS-Algorithmus ergeben. Mit einer anderen Schreibweise der letzten beiden Gleichungen, d.h. e(n − 1) 1 0 y(n − 1) = − e(n) −s(n) 1 y(n) a1 (w0 (n − 1) + w1 (n − 1)) + (a2 − a1 )w1 (n − 1) a1 (w0 (n − 1) + w1 (n − 1)) − (a1 − a0 )w0 (n − 1)
w0 (n + 1) w1 (n + 1)
=
(8.104)
w0 (n − 1) w1 (n − 1) T a1 [e(n − 1) + e(n)] − [a1 − a0 ]T e(n) +α , aT1 [e(n − 1) + e(n)] + [a2 − a1 ]T e(n − 1) (8.105)
werden jedoch rechnerisch redundante Strukturen deutlich [8]: •
Der Term a1 (w0 + w1 ) ist mehrfach enthalten und muss nur einmal berechnet werden.
•
Die Terme a2 − a1 und a1 − a0 enthalten jeweils gemeinsame Elemente aus verschiedenen Rekursionszyklen, so dass effektiv pro Zeitpunkt nur zwei Differenzen, d.h. x(n − 2) − x(n − 1) und x(n − 1) − x(n) berechnet werden m¨ ussen.
•
Der Ausdruck s(n) kann rechentechnisch g¨ unstig u ¨ber s(n) = s(n − 2) + α[x(n − 1)(x(n) + x(n − 2)) −x(n − M − 2)(x(n − M − 1) + x(n − M − 3))] (8.106) berechnet werden. Der zweite Term in der Klammer steht dar¨ uber hinaus aus den Berechnungen vom Zeitpunkt n − M − 1 zur Verf¨ ugung.
174
8 Adaptive Filter
Insgesamt kann f¨ ur die Blockl¨ange N = 2 eine Recheneinsparung von etwa 25 Prozent erreicht werden [8]. Das Beispiel wird nun f¨ ur andere Blockl¨ angen verallgemeinert. Innerhalb des Zeitblockes [n − N + 1, n] gilt beim Standard-LMS-Algorithmus f¨ ur die Werte des Fehlers e(n − N + 1) = y(n − N + 1) − xT (n − N + 1)w(n − N + 1) .. . (8.107) e(n) = y(n) − xT (n)w(n). Mit Hilfe der Adaptionsregel f¨ ur die Filterkoeffizienten w(n + 1) = w(n) + αx(n)e(n) k¨onnen die Filterkoeffizientenvektoren in der obigen Gleichung als Funktion von w(n − N + 1) dargestellt werden. Zum Beispiel gilt dann f¨ ur e(n − N + 3) e(n − N + 3) = y(n − N + 3) − xT (n − N + 3)w(n − N + 1) (8.108) −αe(n − N + 1)xT (n − N + 3)x(n − N + 1) −αe(n − N + 2)xT (n − N + 3)x(n − N + 2). Allgemein ergibt sich das Gleichungssystem [41] ˜ T (n)w(n − N + 1) − S(n)˜ ˜(n) = y ˜ (n) − X e e(n),
(8.109)
mit ˜(n) = [e(n − N + 1), . . . , e(n)]T , e ˜ (n) = [y(n − N + 1), . . . , y(n)]T y ˜ X(n) = [x(n − N + 1), . . . , x(n)]. Die Matrix S ist definiert mit ⎛ 0 0 ··· ⎜ s1 (n − N + 2) 0 · ·· ⎜ ⎜ S(n) = ⎜ s2 (n − N + 3) s1 (n − N + 3) · · · ⎜ .. .. .. ⎝ . . . sN −1 (n)
sN −2 (n)
(8.110) und
0 0 0 .. .
⎞ 0 0⎟ ⎟ 0⎟ ⎟ .. ⎟ .⎠
(8.111) (8.112)
(8.113)
· · · s1 (n) 0
und si (n) = αxT (n)x(n − i),
i = 1, 2, . . . , N − 1.
Durch Aufl¨osen nach dem Fehlervektor erh¨ alt man ˜ T (n)w(n − N + 1) ˜(n) = G(n) y ˜ (n) − X e und
(8.114)
(8.115)
8.6 Blockadaptive Filter
G(n) = [S(n) + I]
−1
.
175
(8.116)
Die Matrix G(n) kann aufgrund der Dreiecksstruktur von S(n) berechnet werden mit18 G(n) = GN −1 (n) · GN −2 (n) · · · G1 (n) (8.117) und Gi (n) = Zi (n) + I
(8.118)
sowie Zi (n) als Matrix mit dem Vektor [−si (n−N +i+1), −si−1 (n−N +i+1), . . . , −s1 (n−N +i+1), 0, . . . , 0] (8.119) in der (i+1)-ten Zeile. Die restlichen Zeilen von Zi (n) sind mit Nullen besetzt. onnen u Die Skalare si (k) k¨ ¨ber eine einfache Rekursion berechnet werden (siehe Fallbeispiel f¨ ur N = 2). Zusammenfassend ergibt sich f¨ ur den exakten Block-LMS-Algorithmus (FELMS) ˜ T (n)w(n − N + 1) ˜(n) = G(n) y ˜ (n) − X e (8.120) ˜ w(n + 1) = w(n − N + 1) + αX(n)˜ e(n).
(8.121)
Da die Adaption der Filterkoeffizienten blockweise erfolgt, k¨ onnen effiziente Berechnungsmethoden f¨ ur die Filterung verwendet werden. Dazu wird wieder die Polyphasendarstellung ⎞ ⎛ aN −1 aN · · · a2N −3 a2N −2 ⎜ aN −2 aN −1 · · · · · · a2N −3 ⎟ ⎟ ⎜ ⎟ ⎜ .. . . . .. T ˜ .. .. .. X (n)w(n − N + 1) = ⎜ . ⎟ . ⎟ ⎜ ⎠ ⎝ a1 ··· ··· ··· aN a0 a1 · · · aN −2 aN −1 ⎛ ⎞ w0 (n − N + 1) ⎜ w1 (n − N + 1) ⎟ ⎜ ⎟ ⎜ ⎟ × ⎜ ... (8.122) ⎟ ⎜ ⎟ ⎝ wN −2 (n − N + 1) ⎠ wN −1 (n − N + 1) genutzt, wobei aj = [x(n − j), x(n − N − j), . . . , x(n − N · i − j), . . . , x(n − M − 1 + N − j)] j = 0, 1, . . . , 2N − 2; 18
i = 0, 1, . . . , (M + 1)/N − 1
(8.123) (8.124)
Dies entspricht dem Verfahren der gaußschen Elimination zur Matrixinvertierung.
176
8 Adaptive Filter
und k = 0, 1, . . . , N − 1 (8.125) gelten. Durch die Linearkombinationen der einzelnen Polyphasenvektoren a k¨onnen analog zum Fall N = 2 redundante Rechenoperationen eingespart werden. Gleiches gilt auch f¨ ur das Matrix-Vektor-Produkt in der Adaptionsgleichung der Filterkoeffizienten. wk = [wk , wk+N , . . . wk+N ·i , . . . , wk+M −N +1 ]T ,
8.6.4 Blockadaptive Verfahren im Vergleich Ein Vergleich zwischen approximativem und exaktem Block-LMS-Algorithmus zeigt, dass beide Verfahren die gleiche algorithmische Struktur aufweisen. Unterschiede ergeben sich lediglich in der Matrix S bzw. G = (S+I)−1 . FELMSund BLMS-Algorithmus geh¨ oren in diesem Sinne zu einer gr¨ oßeren Klasse von Algorithmen, die weitere Blockverfahren mit jeweils anderen Berechnungsvorschriften f¨ ur die Matrix S umfasst [82]. Einen Vergleich der rechentechnischen Effizienz der hier vorgestellten LMS-Varianten enth¨ alt Abbildung 8.5.
Abb. 8.5. Vergleich der Anzahl der Rechenoperationen f¨ ur verschiedene LMSVarianten (Zahlenwerte aus [8]). a) M=1023, N=64; b) M=511, N=32; c) M=255, N=32; d) M=127, N=16.
9 Blinde Entfaltung und Entzerrung
¨ 9.1 Uberblick Signale k¨ onnen im Allgemeinen nicht verzerrungsfrei u ale ¨ber Nachrichtenkan¨ u ¨bertragen werden. Das Empfangssignal entsteht durch die Faltung des Sen1 ¨ designals mit der Impulsantwort des Ubertragungskanals . Die darauf zur¨ uckzuf¨ uhrenden Signalverzerrungen k¨onnen einen erheblichen Einfluss auf die Qualit¨ at des Empfangssignals aus¨ uben und unter Umst¨ anden eine Informations¨ ubertragung verhindern. Das Ziel der blinden Entfaltung und Entzerrung2 besteht in einer Umkehrung dieser Faltungsoperation mit statistischen Methoden, jedoch ohne Kenntnis ¨ des konkreten Nutzsignals oder der Impulsantwort des Ubertragungskanals. Als Modellvorstellung wird die Struktur in Abbildung 9.1 genutzt. Die Fal-
Abb. 9.1. Faltung und Entfaltung
tungsoperation wird beschrieben durch 1 2
Additive und andere Rauschst¨ orungen werden vernachl¨ assigt. Blinde Entfaltung bezieht sich auf die nachtr¨ agliche Verarbeitung komplett aufgenommener Signalsequenzen, w¨ ahrend blinde Entzerrung die Realzeitverarbeitung empfangener Signale bezeichnet.
178
9 Blinde Entfaltung und Entzerrung
x(n) =
a(k)w(n − k) = a(n) ∗ w(n),
(9.1)
k
¨ mit a(n) als Impulsantwort des Ubertragungskanals und w(n) als Originalsignal. Im Ergebnis entsteht das beobachtbare Signal x(n). Die Entfaltung soll mit Hilfe einer zweiten Faltungsoperation durchgef¨ uhrt werden, d.h. b(k)x(n − k) = b(n) ∗ x(n), (9.2) y(n) = k
mit b(n) als Impulsantwort des Entfaltungsfilters. Eine ideale Entfaltung liegt vor, wenn das Ausgangssignal des Entfaltungsfilters y(n) einer skalierten, zeitverz¨ogerten Version des Originalsignals w(n) entspricht y(n) = γ · w(n − m)
γ ∈ R, γ = 0, m ∈ N.
(9.3)
Somit ist das Faltungsprodukt der Impulsantworten von Faltungs- und Entfaltungsfilter im Idealfall eine skalierte Kronecker-Delta-Funktion3 h(n) = a(k) · b(n − k) = γδ(n − m). (9.4) k
Die Bedingung in Gleichung 9.4 ist notwendig und gleichzeitig hinreichend f¨ ur die ideale Entfaltung. F¨ ur die Berechnung von Entfaltungs- oder Entzerrerfiltern m¨ ussen Informationen u ¨ber die Statistik des Originalsignals w(n) vorliegen. Soll die Phaseninformation des Originalsignals nicht wiederhergestellt werden, gen¨ ugt bereits die Kenntnis der Leistungsdichtespektren von Original- und Beobachtungssignal f¨ ur den Entwurf eines Entfaltungs- oder Entzerrerfilters mit Standardverfahren der Spektralanalyse. Zur Rekonstruktion der Phaseninformation des Originalsignals ist ein Entwurfsverfahren erforderlich, dass die Statistik h¨ oherer Ordnung oder zyklostation¨ are Eigenschaften des Originalsignals ber¨ ucksichtigt. Informationen zur Statistik h¨oherer Ordnung k¨ onnen aus der Verteilungsdichte von w(n) gewonnen werden. Dazu darf w(n) keine Gaußverteilung besitzen, da dann die Verteilungsdichte bereits durch die Statistik erster und zweiter Ordnung vollst¨ andig beschrieben ist, d.h. Statistik h¨ oherer Ordnung keine dar¨ uber hinaus gehenden Informationen beisteuert. Bei vielen Entfaltungsalgorithmen muss die Originalsequenz w(n) die IID 4 Eigenschaft besitzen. Die Konstruktion des Entfaltungsfilters b(n) wird dann 3 4
Zur Definition der Kronecker-Delta-Funktion: siehe Abschnitt 7.2. IID: Independent Identically Distributed - die Werte des stochastischen Prozesses sind zu jedem Zeitpunkt statistisch unabh¨ angig von den Werten zu anderen Zeitpunkten und besitzen zu jedem Zeitpunkt die gleiche Verteilungsdichte. Ein IID-Prozess ist u ¨ber alle Ordnungen weiß (keine zeitliche Korrelation zwischen den Abtastwerten).
9.2 Bussgang-Verfahren
179
mit der Zielstellung durchgef¨ uhrt, die durch das Faltungsfilter a(n) verursachte spektrale Formung zu equalisieren und ein Ausgangssignal y(n) zu erzeugen, das im Idealfall wieder eine IID-Sequenz ist. Besondere Bedeutung haben im Rahmen der blinden Entfaltung und Entzerrung Bussgang-Verfahren und kumulantenbasierte Algorithmen erlangt. Sie werden im Folgenden besprochen.
9.2 Bussgang-Verfahren 9.2.1 Bussgang-Entzerrung Abbildung 9.2 zeigt das Prinzip des Bussgang5 -Entzerrers: Dem Entzerrerfilter mit der Impulsantwort b(n) ist eine nichtlineare Transformationsstufe beigef¨ ugt, die aus dem entfalteten Signal y(n) einen, gegebenenfalls zeitverschobenen, Sch¨atzwert w(n) ˆ = v[y(n)] f¨ ur das Originalsignal w(n) berechnet. Mit Verwendung der Nichtlinearit¨at v(y) wird implizit Statistik h¨ oherer Ordnung zur Einstellung der Entzerrerkoeffizienten genutzt.
Abb. 9.2. Entzerrer-Struktur in Bussgang-Verfahren
In der Regel finden im Kontext der Entzerrung FIR-Filter Verwendung. Die optimalen Filterkoeffizienten6 ergeben sich dann aus der Minimierung des mittleren quadratischen Fehlers !2 2 , (9.5) min E e2 (n) = (w(n) ˆ − y(n)) = w(n) ˆ − bT (n)x(n) b
mit x(n) = [x(n), x(n − 1), . . . , x(n − M )]T als Vektor der zeitverz¨ ogerten Eingangswerte und b(n) = [b0 (n), b1 (n), . . . , bM (n)]T als Vektor der Filterkoeffizienten zum Zeitpunkt n sowie M als Ordnung des Entzerrerfilters. F¨ ur die 5 6
nach Julian J. Bussgang benannt F¨ ur FIR-Filter sind Filterkoeffizienten und Impulsantwort identisch.
180
9 Blinde Entfaltung und Entzerrung
adaptive Koeffizientenberechnung zur Minimierung von Gleichung 9.5 eignet sich im Falle der Entzerrung unter anderem der LMS-Algorithmus [48] b(n + 1) = b(n) + α(n)x(n)e(n).
(9.6)
Im Falle einer Konvergenz des Verfahrens muss in Gleichung 9.6 der Term x(n)e(n) im Mittel verschwinden E[x(n)e(n)] = E[x(n) (w(n) ˆ − y(n))] = 0
(9.7)
E[x(n)v(y(n))] = E[x(n)y(n)].
(9.8)
bzw. T
Durch die linksseitige Multiplikation mit b (n) ergibt sich E[y(n)v(y(n))] = E[y(n)y(n)]
(9.9)
und f¨ ur unendlich lange Entzerrerfilter sogar [5] E[y(n − k)v(y(n))] = E[y(n − k)y(n)].
(9.10)
Diese in Gleichung 9.10 gezeigte Bussgang-Eigenschaft des entzerrten Signals y(n) ist namensgebend f¨ ur den Algorithmus und wegen den Gleichungen 9.7 bis 9.10 zugleich Voraussetzung f¨ ur die Konvergenz des Verfahrens. Als Nichtlinearit¨ at kann unter anderem der bedingte Erwartungswert E[w|y] verwendet werden. Dies wird in Abschnitt 9.2.3 n¨ aher erl¨ autert. Die Optimalit¨at der Nichtlinearit¨ at v(y) h¨angt prinzipiell vom Fortschritt der Entzerrung ab, so dass die Nichtlinearit¨ at in jeder Iteration oder zu anderen geeigneten Zeitpunkten entsprechend angepasst werden sollte. Dar¨ uber hinaus muss unter Umst¨anden auch ein Verst¨arkungsausgleich nach jedem Adaptionsschritt so durchgef¨ uhrt werden, dass die Bedingung E[wv(w)] = 1
(9.11)
erf¨ ullt ist. Diese Forderung ergibt sich aus der im Falle einer optimalen Entzerrung geltenden Beziehung y(n) = w(n) und dem Orthogonalit¨ atsprinzip a(l)E [w(n − k − l) (w(n) − v(w(n)))] E [x(n − k) (w(n) − v(w(n)))] = l
=0
k = 0, . . . , M.
(9.12)
Unter Ber¨ ucksichtigung der IID-Eigenschaft des Signals w(n) und dessen 2 = 1 folgt daraus m¨ oglicher Normierung7 auf σw a(−k) (1 − E [w(n)v(w(n))]) = 0,
(9.13)
woraus unmittelbar Gleichung 9.11 resultiert. 7
Da man die Leistung des Originalsignals w(n) nicht kennt, kann man zur Rekon2 = 1. struktion der Signalform eine beliebige Leistung annehmen, z.B. auch σw
9.2 Bussgang-Verfahren
181
9.2.2 Bussgang-Entfaltung Bei der Entfaltung erfolgt die Einstellung der Filterkoeffizienten b iterativ mit der Annahme, dass die Sch¨atzung w ˆ m (n) in der m-ten Iteration direkt m+1 (n) entstanden ist, d.h. [5] aus der Faltung x(n) ∗ b ˆ m = v[y m (n)]. x(n) ∗ bm+1 (n) = w
(9.14)
Es gilt also w ˆ m (n) = x(n) ∗ bm+1 (n) =
M
bm+1 (k)x(n − k) = xT (n)bm+1 ,
(9.15)
k=0
mit xT (n) = [x(n), x(n − 1), . . . , x(n − M )] und bm+1 = [bm+1 (0), bm+1 (1), . . . , bm+1 (M )]T .8 Die Filterkoeffizienten werden mit Hilfe der Methode des kleinsten mittleren quadratischen Fehlers F gefunden !2 . (9.16) Fmin = min E w ˆ m (n) − xT (n)bm+1 Mit der Optimalit¨ atsbedingung ∇b Fmin = 0 ergibt sich f¨ ur den Koeffizientenvektor b * + ˆ m (n)x(n)] + 2E x(n)xT (n) bm+1 = 0. (9.17) ∇b Fmin = −2E[w Das optimale Entfaltungsfilter f¨ ur die (m + 1)-te Iteration ist somit bm+1 = E[x(n)xT (n)]
!−1
E[w ˆ m (n)x(n)].
(9.18)
Der verbliebene Restfehler d(n) = y(n) − w(n)
(9.19)
wird als Faltungsrauschen bezeichnet.
9.2.3 Der ged¨ achtnislose Sch¨ atzer als Nichtlinearit¨ at F¨ ur die nichtlineare Sch¨ atzfunktion v[y(n)] kann der bedingte Erwartungswert9 genutzt werden w(n) ˆ = v[y(n)] = E[w(n)|y(n)]. 8 9
(9.20)
Die Definition des Koeffizientenvektors b weicht hier von der f¨ ur Gleichung 9.5 g¨ ultigen Definition ab. Dies entspricht im Kontext des Bayes’schen Rahmenwerkes einer Parametersch¨ atzung nach dem Kriterium des kleinsten mittleren Fehlerquadrates - siehe auch Kapitel 4.
182
9 Blinde Entfaltung und Entzerrung
Unter Vernachl¨assigung von Abh¨angigkeiten zwischen Originalsignal w(n) und Faltungsrauschen d(n) ergibt sich mit dem Satz von Bayes [5] fW (w|y) =
fY (y|w)fW (w) fY (y|w)fW (w) = 3∞ fY (y) fY (y|w)fW (w)dw
(9.21)
−∞
f¨ ur den bedingten Erwartungswert 3∞ v(y) = E[w|y] =
−∞ 3∞
3∞
wfY (y|w)fW (w)dw
−∞
= fY (y|w)fW (w)dw
−∞ 3∞
wfD (y − w)fW (w)dw
−∞
, fD (y − w)fW (w)dw
(9.22) wobei fD die Verteilungsdichte des Faltungsrauschens d(n) = y(n) − w(n) bezeichnet. Mit dieser Auswahl der Nichtlinearit¨at werden Annahmen u ¨ber die Verteilungsdichte des Originalsignals getroffen. Die konkrete Auswahl der Nichtlinearit¨at ist dementsprechend anwendungsabh¨angig. Beispiel 9.1. F¨ ur ein 8-PAM-Signal10 ist der bedingte Erwartungswert E[w|y] zu berechnen (vgl. [5]). Die Verteilungsdichte des Originalsignals ist fW (w) =
8 1 δ(w − ln ), 8 n=1
(9.23)
ur das Falwobei ln die entsprechenden Pegelstufen des Signals bezeichnet. F¨ tungsrauschen d(n) = y(n) − w(n) wird eine mittelwertfreie gaußsche Verteilungsdichte angenommen11 (y − w)2 1 . (9.24) exp − fD (d) = √ 2σ 2 2πσ 2
Damit erh¨alt man wegen fY (y|w) = fD (y − w) ∞ wfY (y|w)fW (w)dw = −∞
(y − ln )2 l √n exp − 2 2σ 2 n=1 8 2πσ 8
(9.25)
und ∞ −∞ 10 11
8
(y − ln )2 √ exp − fY (y|w)fW (w)dw = 2 2σ 2 n=1 8 2πσ 1
.
(9.26)
8-PAM: achtstufige PulsAmplitudenModulation Diese Annahme kann mit dem zentralen Grenzwertsatz begr¨ undet werden, nach dem die Verteilungsdichte einer Summe statistisch unabh¨ angiger Zufallsvariablen im Grenzwert eine Gaußverteilungsdichte ist.
9.2 Bussgang-Verfahren
183
Der bedingte Erwartungswert ist dementsprechend 8
v(y) = E[w|y] =
2 n) ln exp − (y−l 2 2σ
n=1 8
exp
n=1
2 n) − (y−l 2σ 2
.
(9.27)
Die sich daraus ergebende Nichtlinearit¨ at wird in Abbildung 9.3 gezeigt. Mit kleiner werdendem Rauschpegel, d.h., je geringer das Faltungsrauschen, nimmt die Nichtlinearit¨ at die f¨ ur einen Entscheider typische Kennlinie an.
Abb. 9.3. Auf dem bedingten Erwartungswert basierende Nichtlinearit¨ at v(y) f¨ ur verschiedene Rauschleistungen σ 2 (nach [5])
Der bedingte Erwartungswert v(y) = E[w|y] kann auch formuliert werden als [5] (9.28) v(y) = E[w|y] = y − σd2 z(y) mit der Bussgang-Nichtlinearit¨ at z(y) = −
fY (y) fY (y)
(9.29)
und fY (y) als Ableitung der Verteilungsdichte fY (y). Voraussetzung f¨ ur diese Darstellung ist die gaußsche Verteilungsdichte des Faltungsrauschens12 , denn es gilt13 [5] 12 13
¨ Die Voraussetzung der gaußschen Verteilungsdichte wird beim Ubergang von Gleichung 9.31 nach Gleichung 9.32 ben¨ otigt. Werden zwei statistisch unabh¨ angige Signale addiert, ergibt sich die Verteilungsdichte des Summensignals aus der Faltung der Verteilungsdichten der beiden Summanden.
184
9 Blinde Entfaltung und Entzerrung
σd2 z(y) = −σd2
= −σd2
[fW (y) ∗ fD (y)] fY (y) = −σd2 fW (y) ∗ fD (y) fY (y)
(9.30)
fW (y) ∗ fD (y) fW (y) ∗ fD (y)
(9.31)
∞ fW (w)(y − w)fD (y − w)dw =
−∞
= y − v(y).
∞
(9.32)
fW (w)fD (y − w)dw −∞
Neben dem bedingten Erwartungswert wurden weitere Funktionen als Sch¨atzer vorgeschlagen, so unter anderem die Signumfunktion [76] w(n) ˆ = v[y(n)] = α · sgn[y(n)],
α > 0,
(9.33)
die auch als grobe und recheng¨ unstige Approximation des bedingten Erwartungswertes interpretiert werden kann.
9.2.4 Konvergenz von Bussgang-Entzerrern Die Konvergenz von Bussgang-Algorithmen konnte f¨ ur den Entzerrer-Fall nur mit zum Teil erheblichen Einschr¨ ankungen14 gezeigt werden [9]. Es existieren jedoch viele praktische Beispiele, bei denen Entzerrerfilter mit BussgangAlgorithmen schnell und zuverl¨ assig konvergieren. Bei einer Implementierung sind die richtige Wahl von Filterl¨ ange und Zeitverz¨ogerung des Filters besonders wichtig.
9.3 Kumulantenbasierte Entfaltungsalgorithmen 9.3.1 Kostenfunktion Bei einer direkten Nutzung der IID-Eigenschaft des Eingangssignals w(n) in Abbildung 9.1 kann die Filteroperation y(n) = h(n)∗w(n) als Linearkombination der statistisch unabh¨ angigen Zufallsvariablen Wi = w(n − i) interpretiert werden15 Y = h 0 W0 + h 1 W1 + h 2 W2 + . . . + h T WT , (9.34) 14 15
z.B. nur f¨ ur unendlich lange Entzerrerfilter Zur Vereinfachung der Notation gilt im Folgenden h(n) = hn .
9.3 Kumulantenbasierte Entfaltungsalgorithmen
185
mit T + 1 als L¨ange der Impulsantwort von h(n). Mit der Additivit¨ atseigenschaft von Kumulanten aus Gleichung 2.68 sowie der Linearit¨ atseigenschaft aus Gleichung 2.64 erh¨alt man f¨ ur den Kumulanten k-ter Ordnung cY (k) = hk0 cW0 (k) + hk1 cW1 (k) + hk2 cW2 (k) + . . . + hkT cWT (k).
(9.35)
Aufgrund der IID-Eigenschaft des Eingangssignals gilt cW0 (k) = cW1 (k) = . . . = cWT (k) = cW (k)
(9.36)
und deshalb [16] cY (k) = cW (k)
T
hkn .
(9.37)
n=0
F¨ ur die Anwendung dieses Zusammenhangs zwischen den Eingangs- und Ausgangskumulanten auf die blinde Entfaltung ist es notwendig, die Kumulanten so zu normieren, dass sie unabh¨ angig von der Signalleistung sind. Dazu werden die normierten Kumulanten der Ordnung (p, q) eingef¨ uhrt k(p, q) =
c(p) . |c(q)|p/q
(9.38)
Bei einer Filterung mit einem Filter der Impulsantwort h(n) ergeben sich mit Gleichung 9.37 die normierten Kumulanten des Ausgangs aus den normierten Kumulanten des Eingangs p hn (9.39) kY (p, q) = n q p/q kW (p, q). | hn | n
F¨ ur die normierten Kumulanten gelten unter den gegebenen Voraussetzungen die Ungleichungen [16] |ky (p, q)| ≤ |kW (p, q)| |ky (p, q)| ≥ |kW (p, q)|
p>q q > p.
(9.40) (9.41)
Gleichheit tritt genau dann ein, wenn die notwendige und hinreichende Bedingung der Entfaltung erf¨ ullt ist, d.h. y(n) = γ · w(n − m).
(9.42)
Da q im Allgemeinen mit q = 2 festgelegt ist16 , wird, um Gleichung 9.40 anwenden zu k¨onnen, p entsprechend gr¨oßer gew¨ ahlt. Wegen p > q folgt, dass 16
F¨ ur das Paar p = 4 und q = 2 gibt es eine rechentechnisch g¨ unstige Berechnungsm¨ oglichkeit - siehe Gleichung 9.44.
186
9 Blinde Entfaltung und Entzerrung
f¨ ur eine Entfaltung der Betrag des normierten Kumulanten |kY (p, q)| maximiert werden muss. Die Maximierung m¨ usste im Hinblick auf die Gesamtimpulsantwort h(n) erfolgen. Da jedoch die Impulsantwort des Faltungsfilters a(n) implizit im empfangenen Signal enthalten und daher nicht zug¨ anglich ist, kann der Betrag des normierten Kumulanten nur im Hinblick auf die Impulsantwort des Entfaltungsfilters b(n) maximiert werden. Daraus folgt die Optimierungsaufgabe max |kY (p, q)| = max[kY (p, q)sgn(kY (p, q))], b
b
(9.43)
wobei der Vektor b die Koeffizienten des Entfaltungsfilters enth¨ alt17 .
9.3.2 Optimierung der Kostenfunktion F¨ ur den normierten Kumulanten findet in der Regel die normierte Kurtosis Anwendung. Sie ist definiert mit (p = 4, q = 2)18 kY (4, 2) =
µ ˆy (4) E[y 4 ] − 3E[y 2 ]2 cy (4) − 3, ≈ 2 = 2 µ ˆy (2) E[y 2 ]2 cy (2)
(9.44)
wobei µ ˆ(k) =
m ˆY =
1 N −M
1 N −M
N
[y(n) − m ˆ Y ]k
und
(9.45)
n=M +1
N
(9.46)
y(n)
n=M +1
gelten19 . Mit M wird die Filterordnung des Entfaltungsfilters und N die Anzahl der zur Verf¨ ugung stehenden Datenpunkte bezeichnet. Die Sch¨atzung f¨ ur die normierte Kurtosis ist somit
kˆY (4, 2) =
1 N −M
1 N −M 17
18 19
N n=M +1
N n=M +1
[y(n) − m ˆ Y ]4
2 − 3.
(9.47)
[y(n) − m ˆ Y ]2
Mit gr¨ oßer werdendem Betrag der Kurtosis entfernt sich die Verteilungsdichte fY (y) von einer Gaußverteilung. Entfaltung bedeutet deshalb auch, die Entfernung zwischen der Verteilungsdichte des entfalteten Signals und einer Gaußverteilung gleicher Varianz zu maximieren. Zur Kurtosisdefinition: siehe auch Gleichung 2.62 F¨ ur die Berechnung von µ ˆ(k) und m ˆ Y werden ausschließlich Daten y(n) von Zeitpunkten verwendet, zu denen das Entfaltungsfilter bereits eingeschwungen ist.
9.3 Kumulantenbasierte Entfaltungsalgorithmen
187
Die Maximierung kann zum Beispiel mit einem Gradientenverfahren erfolgen. Die Ableitung der Kostenfunktion bez¨ uglich eines Filterkoeffizienten bi ist gegeben mit [16]
N 4 ∂ kˆY (4, 2) [y(n) − m ˆ Y ]3 = (N − M )ˆ µ2Y (2) ∂bi n=M +1 ⎤ ⎡ N 1 x(j − i)⎦ × ⎣x(n − i) − N −M
j=M +1
N
4ˆ µY (4) [y(n) − m ˆY] (N − M )ˆ µ3Y (2) n=M +1 ⎤ ⎡ N 1 x(j − i)⎦ . × ⎣x(n − i) − N −M
−
(9.48)
j=M +1
Mit Hilfe des daraus leicht zu bildenden Gradienten ist eine Maximierung einfach m¨ oglich. Prinzipiell ist mit einem solchen Verfahren eine Konvergenz in lokale Maxima denkbar, so dass gegebenenfalls nur suboptimale L¨osungen gefunden werden.
10 Nichtlineare Filterung mit ku ¨nstlichen neuronalen Netzen
10.1 Nichtlineare Filterung Nichtlineare Filter bilden die Eingangssignale nichtlinear auf den Ausgang ab. Sie verallgemeinern damit die Funktionalit¨at linearer Filter und erbringen in einer Vielzahl von Anwendungen bessere Ergebnisse aufgrund •
des nichtlinearen Charakters vieler realer Prozesse,
•
des oft eingeschr¨ankten G¨ ultigkeitsbereiches linearer Modelle und
•
der eingeschr¨ ankten Linearisierbarkeit vieler realer Problemstellungen.
In seiner allgemeinen Form kann ein nichtlineares Filter als vektorwertige nichtlineare Funktion y = f (x) interpretiert werden. Aufgrund der daraus resultierenden unendlichen Anzahl der Freiheitsgrade sind f¨ ur eine mathematische Traktierbarkeit Einschr¨ankungen notwendig, beispielsweise durch strukturelle Vorgaben. H¨aufig verwendete, durch ihre Struktur gekennzeichnete, nichtlineare Filter sind unter anderem •
neuronale Netze, z.B. Multilagen-Perzeptron (MLP), Radiale-Basis-Funktionen-Netzwerke (RBF), Zeitverz¨ogerungsnetzwerke (TDNN),
•
Volterra-Filter und
•
Median-Filter.
Nichtlineare Filteralgorithmen sind vielfach heuristisch begr¨ undet. Im Vordergrund dieses Abschnittes stehen jedoch k¨ unstliche neuronale Netze, insbesondere neuronale Netzwerke ohne R¨ uckkopplung1,2 , denen ein umfangreiches theoretisches Fundament zugrunde liegt. 1 2
Innerhalb des Netzes werden Signale ausschließlich von der Eingangsschicht in Richtung Ausgang propagiert. engl.: feed forward networks
190
10 Nichtlineare Filterung mit k¨ unstlichen neuronalen Netzen
10.2 Das Multilagen-Perzeptron 10.2.1 Aufbau Der prinzipielle Aufbau des Multilagen-Perzeptrons ist in Abbildung 10.1 dargestellt. Die jeweils von unten nach oben gerichteten Verbindungslinien verbinden die Knoten (Neuronen) der benachbarten Lagen bzw. Schichten
Abb. 10.1. Multilagen-Perzeptron (Beispiel f¨ ur 10 Eingangssignale und 1 Ausgabesignal)
vollst¨ andig miteinander. Prinzipiell sind, in Erweiterung der Darstellung in Abbildung 10.1, mehrere versteckte Schichten, mehrere Ausgabeneuronen und eine beliebige Anzahl Eingabeneuronen m¨oglich. Abgesehen von den Neuronen aß der Eingabeschicht3 , wird in jedem Neuron eine Funktionsberechnung gem¨ ⎞ ⎛ L (10.1) o = ϕ ⎝w0 + wj xj ⎠ = ϕ(u) j=1
ausgef¨ uhrt, mit xj als j-tes Eingangssignal des Neurons, wj als zugeh¨ origem Gewicht und o als Ausgangssignal des Neurons4 . Strukturell ist jedes Neuron damit in einen Linearkombinierer und eine nichtlineare Ausgabefunktion5 entsprechend Abbildung 10.2 unterteilt. Mit dem Koeffizienten w0 ist die Verschiebung der Nichtlinearit¨at um einen festen Betrag m¨ oglich. H¨ aufig finden 3 4 5
Die Neuronen der Eingabeschicht besitzen nur ein Eingangssignal x, das unver¨ andert zum Ausgang des Eingabeneurons o durchgeleitet wird, d.h. o = x. Abweichend zu dieser Bezeichnungsweise werden die Ausgangssignale der Ausgabeschicht mit y benannt. oftmals auch als Aktivierungsfunktion bezeichnet
10.2 Das Multilagen-Perzeptron
191
Abb. 10.2. Konnektionistisches Neuron
sigmoidale Funktionen6 Verwendung, so unter anderem die logistische Nichtlinearit¨ at 1 (10.2) ϕ(u) = 1 + e−cu
mit c als Temperaturkonstante [75]. Der Vorteil der logistischen Funktion liegt in der mit (10.3) ϕ (u) = cϕ(u)[1 − ϕ(u)] gegebenen Ableitung, die unter Verwendung von ϕ sehr einfach berechnet werden kann. Da die Ableitung bei der iterativen Berechnung der Gewichtsfaktoren per Gradientenverfahren ben¨otigt wird, ergibt sich hieraus eine besonders g¨ unstige Implementierungsm¨oglichkeit. Dar¨ uber hinaus bietet diese Funktion den Vorteil, dass sowohl sie selbst als auch ihre Ableitung im gesamten Bereich der reellen Zahlen wohldefiniert ist. Andere h¨aufig verwendete Aktivierungsfunktionen sind zum Beispiel abschnittweise lineare Funktionen, die Signumfunktion oder auch der TangensHyperbolicus. Aus der Struktur des MLP ergeben sich drei Entwurfsaufgaben [48]: • Bestimmung der Anzahl der versteckten Schichten, •
Bestimmung der Anzahl der Neuronen jeder versteckten Schicht und
•
Bestimmung der Verbindungsgewichte.
Die Gr¨oße der Eingangsschicht ist durch die Dimension des Eingangsraumes und die Gr¨oße der Ausgabeschicht durch die Dimension der gew¨ unschten Ausgabe vorgegeben. Die Bestimmung des Eingangsraumes ist ein komplizierter 6
Der Verlauf einer sigmoidalen Funktion ¨ ahnelt der Form des Buchstabens S.
192
10 Nichtlineare Filterung mit k¨ unstlichen neuronalen Netzen
und wichtiger Teilaspekt der nichtlinearen Filterung, der die Leistungsf¨ ahigkeit der Filterung maßgeblich beeinflusst. Da die Bestimmung des Eingangsraumes jedoch nicht zu den MLP-Entwurfsaufgaben im engeren Sinne z¨ ahlt, soll sie im Folgenden unber¨ ucksichtigt bleiben.
10.2.2 Training der Verbindungsgewichte Das Ziel bei der Anwendung eines k¨ unstlichen neuronalen Netzes besteht in der Realisierung einer Funktion f in Abh¨ angigkeit von den Eingangsvariablen x. Im Allgemeinen liegt diese Funktion jedoch nicht in geschlossener Form vor, sondern ist nur anhand einiger weniger Beispielabbildungen x → t bekannt. Gesucht ist demnach eine Funktion, die die N Beispiel-Eingabevektoren x der Dimension M in die N Beispiel-Zielvektoren t der Dimension K abbildet ⎛ ⎞ ⎞ ⎛ t1 x1 ⎜ t2 ⎟ ⎜ x2 ⎟ neuronales Netz ⎜ ⎟ ⎟ ⎜ (10.4) −−−−−−−−− −→ ⎜ .. ⎟ . ⎜ .. ⎟ ⎝. ⎠ ⎝. ⎠ tK
xM
Die N Wertepaare (xn , tn ), n = 1, 2, . . . , N werden genutzt, um den diesen Beispielabbildungen zugrunde liegenden funktionalen Zusammenhang durch die Adaption der Gewichtsfaktoren des k¨ unstlichen neuronalen Netzes zu lernen7 . Beim Lernen dient die quadratische Fehlersumme8 zwischen den Ausgabevektoren yn = [y1n , y2n , . . . , yKn ]T des Netzes und den Zielvektoren tn = [t1n , t2n , . . . , tKn ]T als Kostenfunktion, d.h. J=
N K N 1 1 (tkn − ykn )2 . ||tn − yn ||2 = 2 n=1 2 n=1
(10.5)
k=1
F¨ ur die Justierung der Verbindungsgewichte verwendet man in der Regel den im Folgenden erl¨auterten Backpropagation-Algorithmus. Zur Vereinfachung wird ein MLP mit nur einer versteckten Schicht und nur eine Beispielabbildung, d.h. N = 1 angenommen. Eine Erweiterung des Algorithmus auf mehrere verdeckte Schichten oder beliebige Werte f¨ ur N ist einfach m¨oglich. Die Gewichtsfaktoren zwischen Eingabeschicht und versteckter Schicht werden mit wij bezeichnet, wobei der Index i das jeweilige Eingabeneuron und der Index j das jeweilige Neuron der versteckten Schicht symbolisiert. Analog dazu werden die Gewichtsfaktoren zwischen versteckter Schicht und Ausgabeschicht mit wjk benannt. 7 8
Das Lernen der Verbindungsgewichte anhand von Beispiel-Abbildungen wird in der Literatur auch als Lernen mit Lehrer bzw. als supervised learning bezeichnet. Dies entspricht, von einem Vorfaktor abgesehen, dem mittleren quadratischen Fehler.
10.2 Das Multilagen-Perzeptron
193
Der Backpropagation-Algorithmus ist ein aus drei Schritten bestehendes Gradienten-Abstiegsverfahren: 1. Vorw¨artsberechnung; Berechnung des Ausgangsvektors y aus den Eingangsdaten x, 2. R¨ uckw¨artsberechnung (Backpropagation); R¨ uckkopplung des Approximationsfehlers zur Berechnung des Gradienten bez¨ uglich der Gewichtsfaktoren des Netzes und schließlich 3. Adaption der Gewichtsfaktoren. Im ersten Schritt wird der Eingabevektor x in das Netzwerk eingegeben und der zugeh¨orige Ausgabevektor y berechnet. Daraus ergibt sich unmittelbar der Fehler zwischen Ziel- und Ausgabevektor e = t−y sowie die quadratische Fehlersumme entsprechend Gleichung 10.5. An jedem Neuron wird gleichzeitig zu dieser Vorw¨artsberechnung die Ableitung des Ausgabewertes jedes einzelnen Neurons entsprechend Gleichung 10.3 berechnet. Im zweiten Schritt werden die partiellen Ableitungen der Kostenfunktion bez¨ uglich jedes einzelnen Gewichtsfaktors des Netzwerkes ermittelt. Mit der Kostenfunktion K K 1 2 1 ek , (10.6) (tk − yk )2 = J= 2 2 k=1
k=1
dem Ausgabewert oj des versteckten Neurons j und dem Ausgabewert9 des Ausgabeneurons k ⎛ ⎞ L wjk oj ⎠ = ϕk (uk ) (10.7) yk = ϕ k ⎝ j=0
ergibt sich die Ableitung der Kostenfunktion bez¨ uglich der Koeffizienten wjk mit ∂ϕk (uk ) ∂uk ∂ek ∂J . (10.8) = −ek = ek ∂uk wjk ∂wjk ∂wjk
Unter Ber¨ ucksichtigung von Gleichung 10.3 resultiert f¨ ur die Ableitung ∂J = yk (1 − yk )(yk − tk )oj = δk oj . ∂wjk
(10.9)
Die Berechnung der partiellen Ableitungen nach den Gewichtsfaktoren zwischen Eingabeschicht und versteckter Schicht ist etwas umfangreicher, erfolgt jedoch nach dem gleichen Prinzip. Da jeder der Gewichtsfaktoren wij alle 9
Entsprechend Abbildung 10.2 gilt o0 = +1. Die Koeffizienten w0k legen die Verschiebung der Sigmoidfunktion (Bias) fest.
194
10 Nichtlineare Filterung mit k¨ unstlichen neuronalen Netzen
Neuronen der Ausgabeschicht beeinflusst, gilt zun¨ achst f¨ ur die Ableitung der Kostenfunktion
∂ϕk (uk ) ∂uk ∂ek 1 ∂e2k ∂J ek =− = ek = ∂uk ∂wij ∂wij ∂wij 2 ∂wij
=−
K
K
K
k=1
k=1
k=1
K k=1
ek
∂ϕk (uk ) ∂uk ∂oj . ∂uk ∂oj ∂wij
(10.10)
(10.11)
Mit ek = tk − yk = tk − ϕk , ∂ϕk (uk ) = ϕk (uk )[1 − ϕk (uk )] = yk [1 − yk ], ∂uk
∂uk = wjk ∂oj
und
∂oj = oj [1 − oj ]xi ∂wij
(10.12)
(10.13)
(10.14)
ergibt sich aus Gleichung 10.11
∂J = (yk − tk )yk [1 − yk ]wjk oj [1 − oj ]xi . ∂wij K
(10.15)
k=1
Mit der Substitution δj = oj (1 − oj )
K
wjk δk
(10.16)
k=1
folgt schließlich ∂J = δj xi . ∂wij
(10.17)
Nachdem f¨ ur alle Gewichtsfaktoren die Ableitung bestimmt worden ist, kann im dritten Schritt mit Hilfe eines Optimierungsverfahrens die Korrektur der Gewichtsfaktoren vorgenommen werden. Im Falle eines Gradientenverfahrens (vgl. Abschnitt 3.3.2) erh¨ alt man f¨ ur die Korrektur der Gewichtsfaktoren zum Zeitpunkt n ∂J , (10.18) ∆w(n) = −α ∂w mit α als Lernrate. Als konvergenzbeschleunigend hat sich in vielen F¨ allen die Einf¨ uhrung eines Momentum-Terms10 erwiesen
∆w(n) = −α
∂J + γ∆w(n − 1) ∂w
(10.19)
mit 0 ≤ γ ≤ 1 [12]. Initialisiert wird der Lernprozess in der Regel mit zuf¨allig gew¨ ahlten Koeffizienten. 10
Der Momentum-Term wird in der Literatur auch als Impulsterm bezeichnet.
10.2 Das Multilagen-Perzeptron
195
10.2.3 Netzwerk-Komplexit¨ at Neben den Gewichtsfaktoren u ¨bt die Struktur des Netzwerkes einen beachtlichen Einfluss auf dessen Leistungsf¨ ahigkeit aus. Sie gibt die Rahmenbedingungen vor, innerhalb derer die Gewichtsfaktoren gelernt werden k¨ onnen.11 Eine schlechte Wahl der Struktur kann zu einer schlechten Approximation der Trainingsausgabevektoren oder zu einer schlechten Generalisierungsf¨ ahiguhren. Approximationsg¨ ute und Generalisierungsf¨ ahigkeit sind zuminkeit12 f¨ dest teilweise konkurrierende Ziele. Sie werden durch die Komplexit¨ at des Netzwerkes maßgeblich beeinflusst.13 Die Aufgabenstellung beim Strukturentwurf besteht deshalb in der Suche nach einem Ausgleich zwischen Approximationsg¨ ute und Generalisierungsf¨ ahigkeit. Zwei Standardverfahren f¨ ur die L¨ osung dieser Aufgabe sind das Netzwerkwachstum14 und die Netzwerkeinschr¨ankung15 . Beim Netzwerkwachstum wird zun¨achst ein kleines Netzwerk vorgegeben, f¨ ur das die optimalen Gewichte bestimmt werden. Erf¨ ullt das Ergebnis die Vorgaben an z.B. den Approximationsfehler nicht, so wird das Netz schrittweise um neue Neuronen oder neue Schichten erweitert bis, mit den jeweils optimalen Koeffizienten, die Approximation dem G¨ utekriterium gen¨ ugt. Das Verfahren der Netzwerkeinschr¨ankung beginnt im Gegensatz dazu mit einem großen Netzwerk. Unn¨otige Gewichte werden schrittweise eliminiert, bis die Leistungsf¨ahigkeit des Netzwerks unter die vorgegebene Schwelle sinkt. F¨ ur beide Strategien existieren viele Algorithmen. In [89] wird z.B. vorgeschlagen, die Kostenfunktion um einen Strafterm f¨ ur Komplexit¨ at zu erweitern J(w) = Je2 (w) + λJc (w)
(10.20)
mit Je2 (w) als Kostenfunktion auf der Basis des mittleren Fehlerquadrats, λ als Regularisierungsparameter und Jc (w) =
i
11 12 13
14 15
(wi /ρ)2 1 + (wi /ρ)2
(10.21)
Zum Beispiel wird die Struktur des MLP durch die Anzahl der Neuronen in den einzelnen Schichten sowie die Anzahl der verdeckten Schichten bestimmt. Generalisierungsf¨ ahigkeit bedeutet, dass das Netzwerk bei vergleichbaren Eingabevektoren vergleichbare Ausgabewerte liefert. Mit einer hohen Komplexit¨ at erzielt man im Allgemeinen eine gute Approximation der Trainingsausgabevektoren - meist einhergehend mit einer schlechten Generalisierungsf¨ ahigkeit. Eine geringe Komplexit¨ at bewirkt oft eine gute Generalisierungsf¨ ahigkeit - meist aber gleichzeitig auch eine schlechte Approximation der Trainingsausgabevektoren. engl.: network growing engl.: network pruning
196
10 Nichtlineare Filterung mit k¨ unstlichen neuronalen Netzen
als Strafterm. ρ stellt einen weiteren einstellbaren Parameter dar, der u ¨ber Gleichung 10.21 hinaus zur Entfernung aller Gewichte wi , die dem Kriteriugen, genutzt wird. Daraus ergibt sich eine Reduktion der um |wi | |ρ| gen¨ Netzwerkverbindungen und schließlich eine Reduktion der Neuronenanzahl.
10.3 Filteranwendungen K¨ unstliche neuronale Netze werden in sehr verschiedenen Applikationen eingesetzt, so unter anderem in der •
Medizintechnik [96, 50],
•
Sprachverarbeitung und -analyse [59, 60],
•
Systemidentifikation [48, 70],
•
Bildverarbeitung [47] oder
•
der akustischen L¨armbek¨ ampfung [40].
K¨ unstliche neuronale Netze potenzieren die M¨oglichkeiten einer linearen Verarbeitung. Dies wird nicht zuletzt im Kontext der Systemidentifikation deutlich. W¨ahrend die klassische ARMA16 -Systemidentifikation auf einem Systemmodell gem¨aß N M y(n) = ai y(n − i) + bi x(n − i) (10.22) i=1
i=0
basiert, kann der klassische Ansatz nichtlinear verallgemeinert werden zu [70, 48] y(n) =
N
ai y(n − i) + g[x(n), x(n − 1), . . .]
(10.23)
i=1
y(n) = f [y(n − 1), y(n − 2), . . .] +
M
bi x(n − i),
(10.24)
i=0
y(n) = f [y(n − 1), y(n − 2), . . .] + g[x(n), x(n − 1), . . .] oder (10.25) y(n) = f [y(n − 1), y(n − 2), . . . , x(n), x(n − 1), . . .]. (10.26) K¨ unstliche neuronale Netze sind prinzipiell geeignet, die unbekannten nichtlinearen Funktionen f und g darzustellen. Damit ist man im Besitz eines Hilfsmittels zur Beschreibung komplizierter technischer oder nat¨ urlicher Systeme - eine entscheidende Voraussetzung f¨ ur deren gezielte Beeinflussung. 16
ARMA: Auto-Regressive, Moving Average
10.4 Weitere Bemerkungen
197
10.4 Weitere Bemerkungen Neben dem Multilagen-Perzeptron finden vielfach RBF17 -Netzwerke Verwendung18 . Der Ausgabewert eines RBF-Netzes ist gegeben mit einer Linearkombination radialer Basis-Funktionen ϕk [48] y=
K
wk ϕk (x, ck ) + w0 .
(10.27)
k=1
In vielen F¨allen, jedoch nicht notwendigerweise, werden als radiale BasisFunktionen Gaußfunktionen gew¨ahlt, d.h. r2 (10.28) ϕ(x, ck ) = exp − 2 2σ 1 (10.29) = exp − 2 x − ck 2 , 2σk
mit ck als Zentren, die oft u ¨ber Clustering-Verfahren gefunden werden. Die Gewichte wi berechnet man u ¨ber die Minimierung des mittleren quadratischen Fehlers.
Abb. 10.3. RBF-Netz
Der Vorteil eines RBF-Netzwerkes liegt vor allem in der guten Interpretierbarkeit seiner Elemente und Parameter, worauf aufbauend ein gutes Verstehen der funktionalen Zusammenh¨ ange zwischen Eingang und Ausgang des Netzes erm¨ oglicht wird. 17 18
RBF: Radiale Basis-Funktion F¨ ur Klassifikationsaufgaben werden h¨ aufig MLP- und f¨ ur Approximationsaufgaben RBF-Netzwerke bevorzugt.
11 Sprachverbesserungssysteme mit spektraler Subtraktion
¨ 11.1 Uberblick Sprachverbesserungssysteme1 werden eingesetzt, um Rauschen oder andere Fremdger¨ ausche aus gest¨orten Sprachsignalen zu entfernen. Ziel dieser Maßnahme ist zum einen die Verbesserung der subjektiven Sprachwahrnehmung und zum anderen die Erh¨ohung der Sprachverst¨ andlichkeit2 . Die Anwendungsfelder f¨ ur den Einsatz von Sprachverbesserungssystemen sind vielf¨ altig, unter anderem in Mobilfunksystemen3 , ¨ offentlichen Fernsprechern, Telefonkonferenzsystemen, Sprechfunkverbindungen und Spracherkennungssystemen [30]. Sehr ¨ahnliche Verfahren finden auch bei der Restauration alter Audioaufnahmen Verwendung. Abbildung 11.1 zeigt eine f¨ ur den Einsatz von Sprachverbesserungssystemen typische Situation: Das Originalsignal breitet sich auf mehreren Wegen von der Quelle zum Mikrophon aus. Zus¨atzlich u ¨berlagern am Mikrophon St¨orger¨ ausche das Nutzsignal. Dieses Szenario kann durch die Faltung des ¨ Originalsignals x(t) mit der Impulsantwort des Ubertragungsweges h(t) und ¨ die additive Uberlagerung des St¨orsignals d(t) erfasst werden y(t) = h(t) ∗ x(t) + d(t).
(11.1)
Im Vordergrund der Betrachtung hier steht die Entfernung der additiven Rauschst¨ orung. Dazu wird das Modell vereinfacht auf 1 2
3
engl.: speech enhancement systems Diese Ziele sind nicht notwendigerweise miteinander gekoppelt. Zum Beispiel geht bei der automatischen Spracherkennung eine hohe Erkennungsleistung nicht zwangsl¨ aufig mit einer qualitativ hochwertigen menschlichen Wahrnehmungsempfindung einher. Sprachkodierer, wie z.B. in Mobiltelefonen verwendet, basieren im Allgemeinen auf rauschfreien Modellen des menschlichen Geh¨ ors. Dementsprechend sinkt die Leistungsf¨ ahigkeit dieser Kodierer in ger¨ auschbehafteten Umgebungen.
200
11 Sprachverbesserungssysteme mit spektraler Subtraktion
Abb. 11.1. St¨ orung durch Verhallung und additive Ger¨ ausche
y(t) = x(t) + d(t).
(11.2)
Dar¨ uber hinaus wird vorausgesetzt, dass f¨ ur die Aufnahme nur ein Mikrophon zur Verf¨ ugung steht.4 F¨ ur diese spezielle Problemstellung haben sich vor allem folgende Verfahrensklassen herauskristallisiert: •
die spektrale Subtraktion,
•
die modellbasierte Rauschunterdr¨ uckung und
•
Subspace-Methoden.
Im praktischen Gebrauch sind vor allem Verfahren der spektralen Subtraktion, die im Folgenden detailliert besprochen werden.
11.2 Prinzip der spektralen Subtraktion Unter dem Begriff spektrale Subtraktion werden Verfahren zusammengefasst, ˆ die eine Sch¨ atzung des entrauschten Signals X(jω) aus dem verrauschten Sig¨ nal Y (jω) durch Anwendung einer frequenzabh¨ angigen Ubertragungsfunktion G(ω) gewinnen ˆ X(jω) = G(ω)Y (jω). (11.3) ¨ Die verschiedenen Ubertragungsfunktionen dieser Algorithmenklasse ergeben ¨ sich aus unterschiedlichen Uberlegungen, die in den folgenden Abschnitten ¨ ¨ besprochen werden. Einen Uberblick u ¨ber wichtige Ubertragungsfunktionen gibt Tabelle 11.1. 4
Obwohl eine gr¨ oßere Anzahl von Mikrophonen prinzipiell bessere M¨ oglichkeiten einer Entst¨ orung bietet, wird in vielen Anwendungen aus Kostengr¨ unden nur ein Mikrophon verwendet.
11.2 Prinzip der spektralen Subtraktion
G(ω) = 1 − α
Amplitudensubtraktion
201
|D(jω)| |Y (jω)|
1−α
|D(jω)|2 |Y (jω)|2
Spektralsubtraktion
G(ω) =
Wiener-Filter
G(ω) = 1 −
Maximum-Likelihood-Subtraktion
1 G(ω) = ⎣1 + 2
Ephraim-Malah-Filter
G(ω) = f (SNRpost , SNRprio )
|D(jω)|2 |Y (jω)|2 ⎡
⎤ |D(jω)|2 ⎦ 1− |Y (jω)|2
¨ Tabelle 11.1. Ubertragungsfunktionen (D(jω): Fouriertransformierte des Rauschens, Y (jω): Fouriertransformierte des gest¨ orten Signals, SNRpost und SNRprio : siehe Abschnitt 11.7)
Das namensgebende Prinzip der spektralen Subtraktion ist in Abbildung 11.2 dargestellt. Das gest¨orte Sprachsignal wird mit der diskreten Fouriertransformation (DFT) in den Frequenzbereich transformiert. In jedem einzelnen Frequenzband wird von der Leistung des gest¨orten Sprachsignals eine Sch¨atzung
Abb. 11.2. Prinzip der spektralen Subtraktion
der Rauschleistung abgezogen. Nach der sich anschließenden Nachbearbeitung wird die Phaseninformation des gest¨orten Signals wieder zum Amplitudensignal hinzugef¨ ugt und u ¨ber eine inverse diskrete Fouriertransformation (IDFT) das entst¨orte Zeitsignal gebildet. Begr¨ undet wird diese Struktur durch die ¨ Aquivalenz von Zeitbereichs- und Fourierbereichsdarstellung, d.h. y(t) = x(t) + d(t)
◦−−•
Y (jω) = X(jω) + D(jω).
(11.4)
202
11 Sprachverbesserungssysteme mit spektraler Subtraktion
Bei vorausgesetzter gegenseitiger statistischer Unabh¨ angigkeit von Sprachund St¨orsignal gilt E[|Y (jω)|2 ] = E[|X(jω)|2 ] + E[|D(jω)|2 ].
(11.5)
Die Leistung des Sprachsignals ergibt sich durch Umstellen der letzten Gleichung als Leistungsdifferenz zwischen aufgenommenem Signal und St¨ orsignal E[|D(jω)|2 ] ). E[|Y (jω)|2 ] (11.6) Bei vielen Methoden innerhalb des Rahmenwerks der spektralen Subtraktion werden die Leistungen von gest¨ortem und entst¨ ortem Signal durch die entsprechenden Momentanwerte ersetzt, d.h. E[|X(jω)|2 ] = E[|Y (jω)|2 ] − E[|D(jω)|2 ] = E[|Y (jω)|2 ](1 −
E[|Y (jω)|2 ] −→ |Y (jω)|2
und
E[|X(jω)|2 ] −→ |X(jω)|2 .
(11.7) (11.8)
Die Rauschsignalleistung wird in der Regel mit einem Mittelwert des Quadrates der Rauschamplitude gesch¨atzt E[|D(jω)|2 ] −→ |D(jω)|2 .
(11.9)
Dazu muss das Rauschen station¨ar sein oder darf seine Eigenschaften nur langsam ver¨andern. Die Sch¨atzung kann entweder mit Hilfe einer Referenzaufnahme oder, bei nur einem Aufnahmekanal, w¨ ahrend der Sprachpausen erfolgen. Die Phase des verrauschten Signals wird gleichzeitig als Phase des entst¨ orten Signals genutzt. Dies entspricht, wie in [31] gezeigt wird, einer MMSESch¨atzung der Phase des entst¨orten Signals. Dar¨ uber hinaus besitzt die Phase nur einen geringen Einfluss auf die menschliche Wahrnehmung, so dass der konkrete Phasenwert bei der Entst¨orung nur eine untergeordnete Rolle spielt.
11.3 Transformation in den Frequenzbereich F¨ ur die Transformation der Sprachdaten in den Frequenzbereich wird die utzstelDiskrete Fouriertransformation5 verwendet. Da nur endlich viele St¨ len gleichzeitig ausgewertet werden k¨onnen, werden vor Anwendung der DFT Signalsegmente mit einer Fensterfunktion aus dem Gesamtsignal ausgeschnitten und dann separat per DFT in den Frequenzbereich transformiert.6 Unter Hinzunahme der Fensterfunktion w(t) entsteht aus Gleichung 11.4 5 6
Im Allgemeinen werden schnelle Algorithmen (FFT) genutzt. Zu jedem Segment existiert ein Vektor mit Fourierkoeffizienten. Dies f¨ uhrt zu einer als Spektrogramm bezeichneten Zeit-Frequenz-Darstellung des Signals, bei der die Betr¨ age oder quadrierten Betr¨ age der Fourierkoeffizienten u ¨ber den Segmentindizes aufgetragen werden.
11.4 Algorithmen der spektralen Subtraktion
yw (t) = w(t) · y(t) = xw (t) + dw (t)
203
◦−−•
Y (jω) = Xw (jω) + DW (jω). (11.10) Im Allgemeinen werden in der Sprachverarbeitung Hanning- oder HammingFenster einer L¨ange von 20-30 ms eingesetzt. Dies entspricht bei einer Abtastfrequenz von 8 kHz etwa 256 Abtastwerten. Dar¨ uber hinaus werden die einzelnen Zeitsegmente u ¨berlappend in den Fourierbereich transformiert, meist ¨ ¨ mit einer Uberlappung von 50 oder 75 Prozent. Diese Uberlappung ist notwendig, um den Einfluss von bei der R¨ ucktransformation in den Zeitbereich entstehenden Unstetigkeiten an den Segmentr¨andern7 gering zu halten. Mit der Segment- oder Fensterl¨ange L und der Fensterverschiebung8 S und [45] ⎧√ ⎪ ⎨ √S 0≤t 0 legt fest, ob z.B. Betr¨ age (b = 1) oder Leistungen (b = 2) voneinander subtrahiert werden. Der Einfluss von b auf die Qualit¨ at des entst¨ orten Signals ist jedoch relativ gering. Im Gegensatz dazu besitzt der Parameter α eine erhebliche Bedeutung. Er bestimmt maßgeblich den Wert des vom gest¨ orten Signal subtrahierten Rauschens. ¨ ¨ Die Ubertragungsfunktion ergibt sich in Ubereinstimmung mit Tabelle 11.1 aus # b ˆ (11.15) |X(jω)| = |Y (jω)|b − α|D(jω)|b 9 |D(jω)|b b |Y (jω)| = G(jω)|Y (jω)|, (11.16) = 1−α |Y (jω)|b
onnen jedoch wobei |Y (jω)|b − α|D(jω)|b ≥ 0 vorausgesetzt wird. Prinzipiell k¨ durch die formale Anwendung der spektralen Subtraktion negative Werte f¨ ur ˆ |X(jω)| = |Y (jω)|b − α|D(jω)|b entstehen. Deshalb werden die aus der Subtraktion gewonnenen Werte nichtlinear entsprechend ⎧ ˆ ˆ ⎨ |X(jω)| |X(jω)| > β|Y (jω)| ˆ T [|X(jω)|] = (11.17) ⎩ f (|Y (jω)|) sonst
korrigiert, wobei f¨ ur f (·) h¨aufig eine kleine Konstante oder f (|Y (jω)|) = β|Y (jω)|, mit 0 < β 1, gew¨ahlt wird. Der Parameter α bestimmt, wie viel von der gesch¨ atzten Rauschleistung vom gemessenen Signal tats¨achlich subtrahiert wird. F¨ ur α > 1 spricht man von 11 ¨ ¨ . Ubersubtraktion f¨ uhrt in Verbindung mit der nichtlinearen Ubersubtraktion Sch¨atzwertkorrektur in Gleichung 11.17 zu einer Verminderung der Entstehung von Musical Noise (siehe Abschnitt 11.5.1). F¨ ur die spektrale Subtraktion gilt n¨amlich b ˆ = |Y (jω)|b − α|D(jω)|b |X(jω)|
≈ |X(jω)| + |D(jω)| − α|D(jω)|b ≈ |X(jω)|b + VD (jω), b
b
(11.18)
(11.19) (11.20)
wobei VD (jω) die Zufallskomponente des Rauschens bezeichnet. Ihre Werte k¨onnen prinzipiell sowohl gr¨ oßer als auch kleiner Null sein. Bei geringer Nutzsignalamplitude, d.h. |X(jω)|b ≈ 0, ergibt sich b ˆ |X(jω)| ≈ VD (jω). 11
engl.: over-subtraction
(11.21)
11.4 Algorithmen der spektralen Subtraktion
205
In Verbindung mit der nichtlinearen Sch¨atzwertkorrektur w¨ urde diese Zufallskomponente f¨ ur das zuf¨allige und kurzzeitige Auftreten von Frequenzkomponenten im Signal (Musical Noise) ' verantwortlich sein. Ein großer α-Wert f¨ uhrt jedoch dazu, dass permanent b VD (jω) < β|Y (jω)| gilt und folglich das zuf¨ allige Auftreten kurzlebiger Frequenzkomponenten unterdr¨ uckt wird.
Die Spektralsubtraktion (b = 2) entspricht unter der Annahme gaußscher Verteilungsdichten f¨ ur die Fourierkoeffizienten von Sprachsignal und Rauschen einer Maximum-Likelihood-Sch¨atzung der Fourierkoeffizienten des entst¨ orten Signals [66].
11.4.2 Wiener-Filter Das Wiener-Filter minimiert den mittleren quadratischen Fehler zwischen Zielfunktion und Approximation (vgl. Kapitel 6). Im Frequenzbereich erh¨ alt ¨ man entsprechend Gleichung 6.41 f¨ ur die Ubertragungsfunktion des WienerFilters E[X(jω) · Y ∗ (jω)] (11.22) E[|Y (jω)|2 ] E[(Y (jω) − D(jω)) · Y ∗ (jω)] (11.23) = E[|Y (jω)|2 ] E[Y (jω)Y ∗ (jω)] − E[D(jω)(X ∗ (jω) + D ∗ (jω))] . (11.24) = E[|Y (jω)|2 ]
G(jω) =
Aufgrund der statistischen Unabh¨ angigkeit zwischen D(jω) und X(jω) ver¨ schwindet der gemeinsame Erwartungswert. Die Ubertragungsfunktion des Wiener-Filters ist somit gegeben durch G(jω) = 1 −
E[|D(jω)|2 ] . E[|Y (jω)|2 ]
(11.25)
Es kann gezeigt werden [66, 95], dass das Wiener-Filter, unter der Annahme von Gaußverteilungen f¨ ur die komplexen Fourierkoeffizienten von Sprachsignal und Rauschen, einer MMSE-Sch¨atzung der Amplituden der Fourierkoeffizienten des Sprachsignals entspricht.
11.4.3 Maximum-Likelihood-Spektralsubtraktion Unter der Voraussetzung von gaußschem Rauschen als St¨orsignal und eines mit X(jω) = A(ω) exp(jθ(ω)) gegebenen Sprachsignals kann eine MaximumLikelihood-Sch¨ atzung f¨ ur die Sprachsignalamplitude A(ω) berechnet werden
206
11 Sprachverbesserungssysteme mit spektraler Subtraktion
[66]. Die bedingte Verteilungsdichte des gemessenen Signals bei gegebenem Sprachsignal (Likelihood-Funktion) ist12, 13 |D|2 1 (11.26) f (Y |A, θ) = 2 exp − σ 2 πσD D |Y |2 − 2ARe[exp(−jθ)Y ] + A2 1 , (11.27) exp − = 2 2 σD πσD
mit σD = E[|D(jω)|2 ]. Da der Phasenterm unbekannt ist und bei der Optimierung unber¨ ucksichtigt bleiben soll14 , wird ein Mittelwert der m¨oglichen Verteilungsdichten f (Y |A, θ) bez¨ uglich des Phasenterms θ f¨ ur die weiteren Berechnungen genutzt15
2π f (Y |A) =
f (Y |A, θ)f (θ)dθ.
(11.28)
0
F¨ ur die Verteilungsdichte f (θ) wird eine Gleichverteilung angesetzt. Somit ergibt sich
2π 2ARe[Y exp(−jθ)] 1 |Y |2 + |A|2 1 dθ. exp · f (Y |A) = 2 2 2 exp − σD 2π σD πσD 0
(11.29) Das Integral in Gleichung 11.29 ist die modifizierte Besselfunktion erster Art 2 ur z = |2AY /σD | ≥ 3 approximiert werden durch [66] I0 (z) [1]. Sie kann f¨ 1 I0 (z) = 2π
2π exp 0
2ARe[Y exp(−jθ)] 2 σD
dθ ≈ √
1 exp(z). 2πz
(11.30)
|Y |2 2 σD
(11.31)
Mit den Definitionen SNRprio =
A2 2 σD
gilt z=2
'
und SNRpost =
SNRprio SNRpost .
F¨ ur die gemittelte Likelihood-Funktion ergibt sich dann |Y |2 − 2A|Y | + A2 1 1 ' . exp − f (Y |A) = 2 2 2 σD πσD 2π · 2A|Y |/σD 12 13 14 15
(11.32)
(11.33)
¨ Aus Gr¨ unden der Ubersichtlichkeit wird der Frequenzindex im Folgenden weggelassen. Die folgenden Gleichungen gelten f¨ ur jedes Frequenzband separat. Zur Berechnung von Verteilungsdichten komplexer Zahlen: siehe Abschnitt 11.7.2. Die Phase besitzt bei der Wahrnehmung nur eine geringe Bedeutung. Dies entspricht der Randdichte von f (Y, θ|A).
11.5 Algorithmische Erweiterungen
Die gemittelte Likelihood-Funktion besitzt ihr Maximum bei # 1 2 . |Y | + |Y |2 − σD Aˆ = 2
207
(11.34)
Unter Ber¨ ucksichtigung der Phaseninformation ergibt sich als Sch¨ atzwert f¨ ur das Sprachsignal Y (jω) X(jω) = Aˆ |Y (jω)| 9
2 (jω) 1 1 |Y (jω)|2 − σD Y (jω) + = |Y (jω)|2 2 2 9
1 1 1 Y (jω) = G(jω) · Y (jω). 1− + = SNRpost 2 2
(11.35)
(11.36)
(11.37)
11.4.4 Ephraim-Malah-Filter Ephraim-Malah-Filter berechnen eine MMSE-Sch¨atzung der spektralen Am¨ plitude des Sprachsignals. Die Ubertragungsfunktion des Ephraim-MalahFilters wird analog zur Maximum-Likelihood-Sch¨atzung in Abschnitt 11.4.3 in Abh¨angigkeit von den beiden Parametern SNRprio und SNRpost berechnet, deren besondere Art der Sch¨atzung maßgeblichen Einfluss auf die Qualit¨at der Sprachverbesserung besitzt und entscheidend zum Erfolg des EphraimMalah-Filters beigetragen hat. Aufgrund ihrer großen Bedeutung werden Ephraim-Malah-Filter im Abschnitt 11.7 gesondert besprochen.
11.5 Algorithmische Erweiterungen 11.5.1 Probleme der spektralen Subtraktion Gem¨aß Gleichung 11.14 und den algorithmischen Varianten in Tabelle 11.1 wird ein Mittelwert der Rauschleistung im jeweiligen Frequenzband zur Korrektur des gest¨orten Spektralanteils genutzt. Die f¨ ur Rausch- und Sprachsignale typischen kurzfristigen Leistungsvariationen bleiben jedoch unber¨ ucksichtigt. Das gest¨orte Spektrum wird daher nicht um den tats¨achlich im Signalsegment vorhandenen Rauschanteil korrigiert. Vielmehr k¨onnen wie in Abbildung 11.3 kurz andauernde Spitzen im Spektrum entstehen, die im Zeitbereich als kurzzeitige harmonische Schwingungen sehr st¨orend wirken. Entstehung und Auswirkungen dieser zeitlich kurz andauernden harmonischen Schwingungen, die auch als Musical Noise bezeichnet werden, k¨onnen durch die im Folgenden besprochenen Vor- und Nachverarbeitungsstufen deutlich vermindert werden.
208
11 Sprachverbesserungssysteme mit spektraler Subtraktion
Abb. 11.3. Entstehung von Musical Noise: Die Subtraktion eines mittleren Rauschpegels f¨ uhrt zu vereinzelten Spitzen im Spektrogramm, die nach R¨ ucktransformation in den Zeitbereich kurzzeitige Schwingungen ergeben.
11.5.2 Sch¨ atzung des Rauschspektrums Die Varianz der Rauschleistungssch¨atzung ist gegeben durch16 [86] 4 Var[|D(jω)|2 ] = σD(ω) .
(11.38)
Diese, durch Eigenschaften der Fouriertransformation bedingte und in Abbildung 11.4 deutlich zu erkennende sehr große Streubreite kann durch eine Mittelung der Rauschleistungssch¨atzungen u ¨ber mehrere Signalsegmente re-
Abb. 11.4. Beispielspektrum eines Sprachsignalsegmentes 16
bei Berechnung des Spektrums u ¨ber das Periodogramm
11.5 Algorithmische Erweiterungen
209
duziert werden, z.B. mit
|D(jω)|b
m
K 1 |Dm−i (jω)|b = K i=0
(11.39)
oder rekursiv durch
|D(jω)|b m = ρ|D(jω)|b m−1 + (1 − ρ)|D(jω)|bm ,
(11.40)
mit 0 ρ < 1 als Ged¨ achtnisfaktor. Die Varianz der Rauschleistungssch¨atzung verringert sich im Falle K statistisch unabh¨ angiger Segmente um den Faktor K
K−1 1 4 1 . (11.41) |Di (jω)|2 ≈ σD(ω) Var K K i=0
Der Vorteil der Rauschleistungsmittelung besteht in einem glatteren Zeitverlauf der Rauschleistungssch¨atzung. Nachteilig ist die Verringerung der Sensitivit¨at der Sch¨atzung gegen¨ uber Ver¨anderungen der Rauschleistung. Die Anzahl der in der Mittelung ber¨ ucksichtigten Segmente K spiegelt diesbez¨ uglich einen Kompromiss wider. 11.5.3 Spektrogramm-Filterung Die Variation des Rauschens im gest¨orten Signal kann durch die Tiefpassfilterung des Spektrogramms verringert werden, d.h. |YT P (jω)|m = ρ|YT P (jω)|m−1 + (1 − ρ)|Y (jω)|m .
(11.42)
¨ Die Tiefpassfilterung des Spektrogramms f¨ uhrt zu einer verbesserten Ubereinstimmung zwischen Rauschsch¨atzung und Rauschen im gest¨orten Signal. Der Nachteil besteht vor allem in einer Verhallung des Nutzsignals. 11.5.4 Nachverarbeitung zur Entfernung des Musical Noise Durch eine verbesserte Rauschsch¨atzung sowie die Mittelung des Spektrogramms kann die Entstehung von Musical Noise verringert werden. Eine weitere Reduktion ist mit der Ausnutzung der unterschiedlichen Eigenschaften von Musical Noise und Audionutzsignal m¨oglich. Bei Audiosignalen sind Frequenzkomponenten im Spektrogramm im Allgemeinen u ¨ber mehrere zusammenh¨angende Zeitbl¨ocke vorhanden und meist breitbandig. Im Vergleich dazu sind die Frequenzkomponenten von Musical Noise kurzlebig, von geringer Amplitude und im Regelfall schmalbandig. Darauf aufbauend werden entsprechend Abbildung 11.5 die Komponenten aus dem Spektrogramm entfernt, die kurzlebig sind und gleichzeitig unterhalb einer vorzugebenden Schwelle liegen.
210
11 Sprachverbesserungssysteme mit spektraler Subtraktion
Abb. 11.5. Nachbearbeitung zur Entfernung von Musical Noise (nach [88])
11.6 Sprachpausenerkennung Im Falle von Sprachaufnahmen ohne St¨orreferenz ist es notwendig, das Rauschspektrum aus dem aufgenommenen Signal zu sch¨ atzen. Dazu werden Sprachpausen genutzt. Vorausgesetzt wird dabei eine nur geringf¨ ugige Instationarit¨ at des Rauschsignals. Die G¨ ute der Sprachpausenerkennung17 u ¨bt einen wesentlichen Einfluss auf die G¨ ute der Rauschsch¨atzung und entsprechend auf den Erfolg des gesamten Verfahrens aus. Ihr sollte daher besondere Aufmerksamkeit gewidmet werden. Geeignete Verfahren werden unter anderem in [27, 38, 37, 46] beschrieben. W¨ ahrend einer Sprachpause kann das gest¨orte Eingangssignal ged¨ ampft direkt zum Ausgang geleitet werden. Daraus ergibt sich die in Abbildung 11.6 gezeigte, um die Sprachpausenerkennung erweiterte, Gesamtstruktur eines Sprachverbesserungssystems.
Abb. 11.6. Gesamtfunktionsschema der spektralen Subtraktion
17
oft auch als Voice Activity Detection (VAD) bezeichnet
11.7 Das Ephraim-Malah-Filter
211
11.7 Das Ephraim-Malah-Filter ¨ 11.7.1 Uberblick Das von Ephraim und Malah vorgestellte Verfahren [31, 32] nimmt im Rahmen der Sprachverbesserungssysteme eine Sonderstellung ein. W¨ ahrend andere Methoden Musical Noise vorrangig erst nach seiner Entstehung durch Nachbearbeitungsverfahren d¨ ampfen, kann mit dem Ephraim-Malah-Filter bereits die Entstehung von Musical Noise weitgehend reduziert werden.
11.7.2 Algorithmus Amplitudensch¨ atzung Analog zu den anderen Verfahren der spektralen Subtraktion wird zun¨ achst von statistisch unabh¨ angigen, gaußverteilten Fourierkoeffizienten [73] ausgegangen. Darauf aufbauend erfolgt die Bestimmung der Nutzsignalamplitude [31] oder der logarithmierten Nutzsignalamplitude [32] aus dem gest¨ orten Signal mit einer MMSE-Sch¨ atzung. Die Fourierkoeffizienten von gest¨ ortem Signal und Sprachsignal werden nach Betrag und Phase parametrisiert Y (jω) = R(ω) exp[jϑ(ω)]
und X(jω) = A(ω) exp[jα(ω)].
(11.43)
Aufgrund der Annahme der statistischen Unabh¨ angigkeit zwischen einzelnen Fourierkoeffizienten kann eine Sch¨atzung der Nutzsignalamplitude Ak im Frequenzband ωk direkt aus der gest¨orten Signalamplitude Rk des gleichen Frequenzbandes erfolgen. D.h., in jedem Frequenzband kann die Nutzsignalamplitude unabh¨angig von den anderen Frequenzb¨ andern bestimmt werden. Der MMSE-Sch¨atzer f¨ ur die Nutzsignalamplitude ist der bedingte Erwartungswert18 von Ak bei gegebener Messung Yk [31] ∞ 2π ak f (Yk |ak , αk )f (ak , αk )dαk dak Aˆk = E[Ak |Yk ] =
0
0
,
∞ 2π
(11.44)
f (Yk |ak , αk )f (ak , αk )dαk dak 0 18
0
Der Zusammenhang zwischen MMSE-Sch¨ atzung und bedingtem Erwartungswert wird u.a. in Abschnitt 4.3.2 erl¨ autert.
212
11 Sprachverbesserungssysteme mit spektraler Subtraktion
mit
1 jαk 2 | f (Yk |ak , αk ) = 2 (k) exp − σ 2 (k) |Yk − ak e πσD D 1
a2k ak f (ak , αk ) = 2 (k) exp − σ 2 (k) πσX X
(11.45)
(11.46)
2 2 (k) = 2E[|Xk |2 ] bzw. σD (k) = 2E[|Dk |2 ]. Die Gleichungen 11.45 und und σX 11.46 zeigen gaußsche Verteilungsdichten f¨ ur komplexe Zufallsvariablen19 .
Durch Einsetzen der Gleichungen 11.45 und 11.46 in Gleichung 11.44 ergibt sich der MMSE-STSA-Sch¨ atzer20 [31, 17] 9 SNRprio 1 Aˆ = Γ (1.5) 1 + SNRprio 1 + SNRpost v v v k k k Rk . (11.47) + vk I1 (1 + vk )I0 × exp − 2 2 2 √ Γ (·) ist die Gamma-Funktion und Γ (1.5) = π/2. I0 (·) sowie I1 (·) bezeichnen die modifizierten Besselfunktionen nullter bzw. erster Ordnung, wobei f¨ ur das Argument vk definiert wird
vk =
SNRprio (1 + SNRpost ). 1 + SNRprio
(11.48)
A-priori- und A-posteriori-SNR werden in diesem Kontext abweichend zu Gleichung 11.31 definiert mit [17]21 19
Die Verteilungsdichte einer komplexen gaußverteilten Zufallsvariablen x = u + jv ergibt sich aus den Verteilungsdichten von Real- und Imagin¨ arteil, d.h. u ∼ 2 2 /2) und v ∼ N (µv , σX /2) und der Annahme der statistischen UnN (µu , σX abh¨ angigkeit zwischen u und v mit [57] (u − µu )2 + (v − µv )2 1 2 2 . exp − /2) · N (µv , σX /2) = f (u, v) = N (µu , σX 2 2 σX πσX
Mit a als Betrag und α als Phase gilt unter Ber¨ ucksichtigung der Transformationsvorschrift f¨ ur differentielle Fl¨ achen von kartesischen Koordinaten in Polarkoordinaten (dudv = adadα) [15] a2 a . exp − f (a, α) = 2 2 σX πσX 20 21
STSA: Short Term Spectral Amplitude Der A-priori-SNR ist im wesentlichen eine SNR-Sch¨ atzung auf der Basis eines Mittelwertes des SNR vergangener Segmente. Der A-posteriori-SNR ist eine SNRSch¨ atzung, die auf dem Signalpegel des jeweils aktuellen Segmentes beruht.
11.7 Das Ephraim-Malah-Filter
SNRprio =
E[A2k ] 2 (k) σD
und SNRpost =
Rk2 2 σD (k)
− 1.
213
(11.49)
¨ Mit Gleichung 11.47 erh¨alt man die Ubertragungsfunktion des EphraimMalah-Filters GST SA−M M SE (SNRprio (jω), SNRpost (jω)) =
ˆ A(jω) . R(jω)
(11.50)
In [32] wird auf ¨ ahnlichem Wege eine MMSE-Sch¨atzung f¨ ur die logarithmierte Amplitude berechnet E[(log Ak − log Aˆk )2 ] = E[log(Ak |Yk )].
(11.51)
Diese Sch¨ atzung soll die logarithmische Funktionsweise des menschlichen Geh¨ ors st¨ arker ber¨ ucksichtigen. Die daraus resultierende MMSE-LSA-Sch¨atur die logarithmierte Amplitude ist gegeben mit [32] zung22 f¨ ⎞ ⎛ ∞ −t e 1 SNR prio dt⎠ Rk . (11.52) exp ⎝ Aˆk = t 2 1 + SNRprio vk
Effiziente Berechnungsverfahren f¨ ur die Integralexponentialfunktion in Glei¨ chung 11.52 werden unter anderem in [14] beschrieben. Die Ubertragungsfunktion des Ephraim-Malah-Filters f¨ ur logarithmierte Amplituden ist analog zu Gleichung 11.50 gegeben durch GLSA−M M SE (SNRprio (jω), SNRpost (jω)) =
ˆ A(jω) . R(jω)
(11.53)
Die Sch¨ atzung von A-priori- und A-posteriori-SNR Der A-posteriori-SNR wird in jedem Segment m, d.h. f¨ ur jeden Wert des Spektrogramms in Zeitrichtung, und f¨ ur jede Frequenz neu entsprechend Gleichung 11.49 berechnet. Der A-posteriori-SNR ist somit eine lokale Sch¨ atzung f¨ ur den aktuellen SNR [17]. Entsprechend Gleichung 11.49 ergibt sich der A-priori-SNR als Erwartungswert des A-posteriori-SNR [31, 17] SNRprio (k, m) = 22
E[A2k (m)] 2 (k, m) = E[SNRpost (k, m)]. σD
LSA: Logarithmic Spectral Amplitude
(11.54)
214
11 Sprachverbesserungssysteme mit spektraler Subtraktion
Der A-priori-SNR kann deshalb stochastisch aus dem A-posteriori-SNR und der spektralen Amplitude gesch¨ atzt werden [31]23 SNRprio (k, m) = (1 − α) max{SNRpost (k, m), 0} Aˆ2 (m − 1) +α 2 k σD (k, m − 1) = (1 − α) max{SNRpost (k, m), 0} |G(k, m − 1)Y (k, m − 1)|2 . +α 2 (k, m − 1) σD
(11.55)
(11.56)
Der Ged¨achtnisfaktor α ist etwa zwischen 0.95 und 0.98 zu w¨ ahlen [65]. Der jeweils erste Term in den Gleichungen 11.55 und 11.56 sorgt daf¨ ur, dass der A-priori-SNR stets nichtnegativ ist und somit die Wurzel in Gleichung 11.47 eine L¨osung im Bereich der reellen Zahlen besitzt. ¨ Wie auch im Falle der Spektralsubtraktion wird in [17, 65, 27] eine Ubersub¨ traktion sowie eine Begrenzung der Ubertragungsfunktion G(jω) nach unten hin empfohlen. Dazu kann ein Minimalwert f¨ ur den A-priori-SNR vorgegeben werden, z.B. SN Rprio,min = −15dB.
11.7.3 Interpretation der Funktionsweise ¨ Die Ubertragungsfunktion G(jω) unterliegt beim Ephraim-Malah-Filter deutlich geringeren zeitlichen Schwankungen24 als bei anderen Verfahren der spektralen Subtraktion. Dadurch wird die Entstehung von Musical Noise stark vermindert. Die Gr¨ unde f¨ ur dieses Verhalten des Ephraim-Malah-Filters ergeben sich aus den Kennlinien in Abbildung 11.7 (vgl. [17]). Bei Spektralsubtraktion und Wiener-Filterung ist der A-posteriori-SNR der dominierende Parameter, w¨ahrend beim Ephraim-Malah-Filter der A-priori-SNR den Verlauf der ¨ Ubertragungsfunktion entscheidend beeinflusst. Beim Ephraim-Malah-Filter besitzt der A-posteriori-SNR nur noch eine korrigierende Funktion, mit dem die D¨ampfung zwischen den D¨ampfungsfaktoren der Spektralsubtraktion und der Wiener-Filterung variiert werden kann. Dabei w¨ achst, innerhalb der gezeigten Grenzen, die D¨ampfung mit gr¨oßerem A-posteriori-SNR. Dies hat Auswirkungen auf die Sch¨atzung des A-priori-SNR in Gleichung 11.56. Große Werte des A-posteriori-SNR im zweiten Term von Gleichung 11.56 werden 23
24
¨ Da der A-priori-SNR vom Zeitpunkt m − 1 die Ubertragungsfunktion G(k, m − 1) maßgeblich bestimmt, entspricht Gleichung 11.56 einer rekursiven Mittelwertbildung zur Bestimmung des A-priori-SNR. von Segment zu Segment
11.7 Das Ephraim-Malah-Filter
215
Abb. 11.7. Einfluss des A-posteriori-SNR bei spektraler Subtraktion (b = 2) und Wiener-Filterung (links) und Einfluss von A-priori- und A-posteriori-SNR beim Ephraim-Malah-Filter (MMSE-STSA-Amplitudensch¨ atzung); (nach [17])
st¨ arker ged¨ ampft als kleine, woraus sich vor allem bei kleinen A-priori-SNRWerten25 ein gegl¨atteter Verlauf des A-priori-SNR und dementsprechend von G ergibt. ¨ Da die Ubertragungsfunktion G implizit vergangene Sch¨ atzwerte des A-prioriSNR enth¨ alt, entspricht Gleichung 11.56 einer rekursiven Gl¨ attung des Apriori-SNR. Allerdings kommt die Gl¨attung nur bei kleinen Werten des Apriori-SNR zustande, da G nur dann eine signifikante D¨ ampfung aufweist. Mit gr¨ oßer werdendem A-posteriori-SNR verringert sich die Gl¨ attung. In diesem Falle folgt der A-priori-SNR dem A-posteriori-SNR mit einem Segment Verz¨ ogerung, denn mit Gleichung 11.56 und den Kennlinien in Abbildung 11.7 gilt [17]26 SNRprio (k, m) ≈ (1 − α)SNRpost (k, m) + α
|Y (k, m − 1)|2 2 (k, m − 1) σD
(11.57)
und f¨ ur SNRpost 1 SNRprio (k, m) ≈ (1 − α)SNRpost (k, m) + αSNRpost (k, m − 1).
(11.58)
Bei einer Wahl von α ≈ 1 erh¨alt man [17] SNRprio (k, m) ≈ αSNRpost (k, m − 1).
(11.59)
Der Parameter α, 0 α < 1, bestimmt sowohl die Adaptionsgeschwindigkeit als auch die Gl¨attung des A-priori-SNR. Je n¨ aher α an den Wert 1 gelegt wird, desto l¨anger dauert die Anpassung des A-priori-SNR an Ver¨ anderungen im A-posteriori-SNR. Andererseits f¨ uhrt ein großes α auch zu einem zeitlich 25 26
¨ Bei großen A-priori-SNR-Werten ist der zeitliche Verlauf der Ubertragungsfunktion aufgrund der Kennlinie ohnehin nur geringen Schwankungen unterworfen. Bei großen A-posteriori-SNR ist auch der A-priori-SNR groß, so dass G ≈ 1 gilt.
216
11 Sprachverbesserungssysteme mit spektraler Subtraktion
glatteren A-priori-SNR und dementsprechend zu einer Verringerung des Musical Noise. Der f¨ ur α gew¨ ahlte Wert muss deshalb einen Ausgleich zwischen beiden Effekten herstellen.
Literaturverzeichnis
[1] M. Abramowitz and I.A. Stegun. Modified Bessel Functions I and K, § 9.6. In Handbook of Mathematical Functions with Formulas, Graphs, and Mathematical Tables, S. 374–377. Dover, New York, 9. Auflage, 1972. [2] W. Alt. Nichtlineare Optimierung. Vieweg Studium: Aufbaukurs Mathematik. Vieweg, Braunschweig/Wiesbaden, 1. Auflage, 2002. [3] S.-I. Amari. Natural gradient works efficiently in learning. Neural Computation, 10(2):251–276, 1998. [4] A. Bell and T. Sejnowski. An Information-Maximization Approach to Blind Separation and Blind Deconvolution. Neural Computation, 7:1129– 1159, 1995. [5] S. Bellini. Bussgang Techniques for Blind Deconvolution and Equalization. In S. Haykin (Hrsg.), Blind Deconvolution. Prentice Hall, 1994. [6] A. Belouchrani and M.G. Amin. Blind Source Separation Using TimeFrequency Distributions: Algorithms and Asymptotic Performance. Proc. ICASSP’97, S. 3469–3472, Apr. 1997. [7] A. Belouchrani, K.A. Meraim, and J.-F. Cardoso. A Blind Source Separation Technique Based on Second Order Statistics. IEEE Transactions on Signal Processing, 45(2):434–444, Feb. 1997. [8] J. Benesty and P. Duhamel. A Fast Exact LMS Adaptive Algorithm. IEEE Transactions on Signal Processing, 45(12):2904–2920, Dec. 1992. [9] A. Benveniste, M. Goursat, and G. Ruget. Robust identification of a nonminimum phase system: Blind adjustment of linear equalizer in data communications. IEEE Transactions on Automatic Control, 25:385–399, 1980. [10] D.P. Bertsekas. Partial conjugate gradient methods for a class of optimal control problems. IEEE Transactions on Automatic Control, 19:209–217, 1974.
218
Literaturverzeichnis
[11] J.A. Bilmes. A Gentle Tutorial of the EM Algorithm and its Application to Parameter Estimation for Gaussian Mixture and Hidden Markov Models. Technical Report TR-97-021, International Computer Science Institute and Computer Science Division of U.C. Berkeley, Apr. 1998. [12] C.M. Bishop. Neural Networks for Pattern Recognition. Oxford University Press, Oxford, New York, 1. Auflage, 1995. [13] J.F. B¨ohme. Stochastische Signale. B.G. Teubner, Stuttgart, 1993. [14] I.N. Bronstein, K.A. Semendjajew, G. Musiol, and H. M¨ uhlig. Taschenbuch der Mathematik. Verlag Harri Deutsch, Frankfurt am Main, Thun, 3., u ¨berarbeitete und erweiterte Auflage, 1997. [15] K. Burg, H. Haf, and F. Wille. H¨ ohere Mathematik f¨ ur Ingenieure. B.G. Teubner, Stuttgart, 2. Auflage, 1989. [16] J.A. Cadzow. Blind deconvolution via cumulant extrema. IEEE Signal Processing Magazine, S. 24–42, May 1996. [17] O. Capp´e. Elimination of the Musical Noise Phenomenon with the Ephraim and Malah Noise Suppressor. IEEE Transactions on Speech and Audio Processing, 2(2):345–349, Apr. 1994. [18] J.-F. Cardoso. Source Separation Using Higher-Order Moments. Proc. ICASSP’89, S. 2109–2112, 1989. [19] J.-F. Cardoso. Blind Signal Separation: Statistical Principles. Proceedings of the IEEE; Special Issue on Blind Identification and Estimation, R.-W. Liu and L. Tong (Hrsg.), (10):2009–2025, 1998. [20] J.-F. Cardoso and A. Souloumiac. Blind Beamforming For Non Gaussian Signals. IEE Proceedings-F, 140(6):362–370, Dec. 1993. [21] J.-F. Cardoso and A. Souloumiac. Jacobi Angles For Simultaneous Diagonalization. SIAM Journal of Matrix Analysis and Applications, 17(1), Jan. 1996. [22] G.A. Clark, S.K. Mitra, and S.R. Parker. Block implementation of adaptive digital filters. IEEE Transactions on Circuits and Systems, 28:584– 592, 1981. [23] G.A. Clark, S.R. Parker, and S.K. Mitra. A unified approach to time and frequency domain realization of FIR adaptive digital filters. IEEE Transactions on Acoustics, Speech and Signal Processing, 31(5):1073–1083, Oct. 1983. [24] P. Comon. Independent Component Analysis, A New Concept? Signal Processing, 24:287–314, 1994. [25] P. Comon and B. Mourrain. Decomposition of quantics in sums of powers of linear forms. Signal Processing, 53(2):93–107, Sep. 1996.
Literaturverzeichnis
219
[26] T. Cover and J. Thomas. Elements of Information Theory. John Wiley and Sons, New York, 1991. [27] C. Demirkir, F. Karahan, and T. Ciloglu. Speech Enhancement Based on Spectral Estimation with Adaptive Lower Limit on Spectral Attenuation. Proc. 3rd DSP and Education Conference, Paris, Sep. 2000. [28] A.P. Dempster, N.M. Laird, and D.B. Rubin. Maximum Likelihood from incomplete data via the EM algorithm. J. Royal Statistical Soc., Ser. B, 39(1):1–38, 1977. [29] S.C. Douglas and S.-I. Amari. Natural-gradient adaption. In S. Haykin (Hrsg.), Unsupervised Adaptive Filtering, volume 1, S. 13–61. Wiley, 2000. [30] Y. Ephraim. Statistical-Model-Based Speech Enhancement Systems. Proceedings of the IEEE, 80(10):1526–1555, Oct. 1992. [31] Y. Ephraim and D. Malah. Speech Enhancement Using a Minimum Mean-Square Error Short-Time Spectral Amplitude Estimator. IEEE Transactions on Acoustics, Speech and Signal Processing, 32(6):1109– 1121, Dec. 1984. [32] Y. Ephraim and D. Malah. Speech Enhancement Using a Minimum Mean-Square Error Log-Spectral Amplitude Estimator. IEEE Transactions on Acoustics, Speech and Signal Processing, 33(2):443–445, Apr. 1985. [33] A.J. Feelders. Statistical Concepts. In M. Berthold and D.J. Hand (Hrsg.), Intelligent Data Analysis, S. 15–66. Springer, Berlin, Heidelberg, New York, 1999. [34] L. F´ety. M´ethodes de traitement d’antenne adapt´ee aux radiocommunications. PhD thesis, ENST, Paris, 1988. [35] D.B. Fogel. System Identification through Simulated Evolution: A Machine Learning Approach to Modeling. Ginn Press, Needham Heights, MA 02194, 1991. [36] L.J. Fogel, A.J. Owens, and M.J. Walsh. Artificial Intelligence Through Simulated Evolution. John Wiley, 1966. [37] D.K. Freeman, G. Cosier, C.B. Sourthcott, and I. Boyd. The voice activity detector of the pan-European digital mobile telephone service. IEEE, CH2673-2, 1989. [38] N.R. Garner, P.A. Barrett, D.M. Howard, and A.M. Tyrrell. Robust noise detection for speech detection and enhancement. Electronics Letters, 33(4):270–271, Feb. 1997. [39] M. Girolami and C. Fyfe. Generalised Independent Component Analysis Through Unsupervised Learning With Emergent Bussgang Properties. Proc. IEEE/ICNN, International Conference on Neural Networks, Oct. 1997.
220
Literaturverzeichnis
[40] R. Glasberg. Akustische L¨ armbek¨ ampfung. TU Berlin, Dissertation, 2000. [41] G.-O. Glentis, K. Berberidis, and S. Theodoridis. Efficient Least Squares Adaptive Algorithms for FIR Transversal Filtering. IEEE Signal Processing Magazine, 16(4):13–41, Jul. 1999. [42] D.E. Goldberg. Genetic Algorithms in Search, Optimization, and Machine Learning. Addison Wesley Publishing Company, 1989. [43] D.E. Goldberg. Genetic and Evolutionary Algorithms Come of Age. Communications of the ACM, 37(3):113–119, Mar. 1994. [44] G.H. Golub and C.F. van Loan. Matrix Computations. Johns Hopkins Studies in Mathematical Sciences. The Johns Hopkins University Press, Baltimore, London, 3. Auflage, 1996. [45] D.W. Griffin and J.S. Lim. Signal Estimation from Modified Short-Time Fourier Transform. IEEE Transactions on Acoustics, Speech and Signal Processing, 32(2):236–243, Apr. 1984. [46] GSM Specification 06.32. Voice Activity Detector (VAD) for full rate speech traffic channels, version 8.0.1 Release 99. Digital cellular telecommunications system (Phase 2+); Full rate speech, 2000. [47] H. Hanek and N. Ansari. Speeding up the generalized adaptive neural filters. IEEE Transactions on Image Processing, 5:705–712, May 1996. [48] S. Haykin. Adaptive Filter Theory. Prentice-Hall, Englewood Cliffs, New Jersey 07632, 3. Auflage, 1996. [49] H. Holland. Adaption in Natural and Artificial Systems. Ann Arbor: The University of Michigan Press, 1975. [50] Th. Hopf. Untersuchungen zur Klassifikation krankhafter menschlicher Stimmsignale mit Hilfe k¨ unstlicher neuronaler Netze. Shaker Verlag, Aachen, 2000. [51] G. Hori. A new approach to joint diagonalization. Proc. ICA 2000, Helsinki, Jun. 19-22, S. 151–155, 2000. [52] H. Hotelling. Analysis of a Complex of Statistical Variables into Principal Components. The Journal of Educational Psychology, 24:417–441, 498– 520, 1936. [53] A. Hyv¨arinen and E. Oja. A Fast Fixed-Point Algorithm For Independent Component Analysis. Neural Computation, 9(7):1483–1492, 1997. [54] A. Hyv¨arinen, J. Karhunen, and E. Oja. Independent Component Analysis. John Wiley and Sons, New York, 2001. [55] R.E. Kalman. A New Approach to Linear Filtering and Prediction Problems. J. Basic Eng., 82:34–45, Mar. 1960.
Literaturverzeichnis
221
[56] R.E. Kalman and R.S. Bucy. New results in linear filtering and prediction theory. Transactions of the ASME, Series D, Journal of Basic Engineering, 83:95–107, 1961. [57] S.M. Kay. Modern Spectral Estimation. Signal Processing Series. Prentice Hall, London, 1988. [58] S. Kirkpatrick, C.D. Gellat Jr., and M.P. Vecchi. Optimization by Simulated Annealing. Science, 220(4598):671–680, 1983. [59] W.G. Knecht. Nonlinear Noise Filtering and Beamforming Using the Perceptron and its Volterra Approximation. IEEE Transactions on Speech and Audio Processing, 2:55–62, Jan. 1994. [60] W.G. Knecht, M.E. Schenkel, and G.S. Moschytz. Neural Network Filters for Speech Enhancement. IEEE Transactions on Speech and Audio Processing, 3:433–438, Nov. 1995. [61] B.-U. K¨ohler. Realzeitf¨ ahige Blinde Quellentrennung am Beispiel elektroenzephalographischer Signale. Shaker Verlag, Aachen, 2000. [62] B.-U. K¨ohler and R. Orglmeister. Blind Source Separation Algorithm Using Weighted Time Delays. In Proc. International Workshop on Independent Component Analysis and Blind Separation of Signals, S. 471–475, Helsinki, Jun. 2000. [63] R. Linsker. Self-Organization in a Perceptual network. Computer, 21:105– 117, 1988. [64] D. MacKay. Maximum Likelihood and Covariant Algorithms for Independent Component Analysis. University of Cambridge, Cavendish Lab., 1996. [65] D. Malah, R.V. Cox, and A.J. Accardi. Tracking Speech-Presence Uncertainty to Improve Speech Enhancement in Non-Stationary Noise Environments. Proc. ICASSP’99, S. 789–792, 1999. [66] R.J. McAulay and M.L. Malpass. Speech Enhancement Using a SoftDecision Noise Suppression Filter. IEEE Transactions on Acoustics, Speech and Signal Processing, 28(2):137–145, Apr. 1980. [67] T. Minka. Expectation-Maximization as lower bound maximization. Tutorial published on the web at http://www-white.media.mit.edu/ tpminka/paper/em.html, 1998. [68] L. Molgedey and H.G. Schuster. Separation of a Mixture of Independent Signals Using Time Delayed Correlations. Physical Review Letters, 72:3634–3637, 1994. [69] T.K. Moon. The Expectation-Maximization Algorithm. IEEE Signal Processing Magazine, 13(6):47–60, Nov. 1996.
222
Literaturverzeichnis
[70] K.S. Narendra and K. Parthasarathy. Identification and Control of Dynamical Systems Using Neural Networks. IEEE Transactions on Neural Networks, 1(1):4–27, 1990. [71] C.L. Nikias and A.P. Petropulu. Higher-Order Spectral Analysis: A Nonlinear Signal Processing Framework. Prentice Hall, Englewood Cliffs, NJ 07632, 1993. [72] M. Papageorgiou. Optimierung. Oldenbourg-Verlag, 1991. [73] W.A. Pearlman and R.M. Gray. Source Coding of the Discrete Fourier Transform. IEEE Transactions on Information Theory, 24:683–692, Nov. 1978. [74] W.H. Press, S.A. Teukolsky, W.T. Vetterling, and B.P. Flannery. Numerical Recipes in C: The Art of Scientific Computing. Cambridge University Press, Cambridge, 2. Auflage, 1992. [75] R. Rojas. Theorie der neuronalen Netze. Springer-Lehrbuch, 4., korrigierter Nachdruck, Berlin, 1996. [76] Y. Sato. A Method of Self-Recovering Equalization for Multilevel Amplitude-Modulation Systems. IEEE Transactions on Communications, 23:679–682, 1975. [77] A.H. Sayed and Th. Kailath. A state-space approach to adaptive RLS filtering. IEEE Signal Processing Magazine, 11:18–60, Jul. 1994. [78] L.L. Scharf. Statistical Signal Processing: Detection, Estimation, and Time Series Analysis. Addison-Wesley Publishing Company, Inc., Reading, Massachusetts, 1991. [79] H.P. Schwefel. Numerical Optimization of Computer Models. John Wiley, Chichester, 1981. [80] C.E. Shannon. A mathematical theory of communication. The Bell System Technical Journal, 27(3):379–423 and 623–656, 1948. [81] J.R. Shewchuk. An Introduction to the Conjugate Gradient Method Without the Agonizing Pain. verf¨ ugbar per anonymous FTP von warp.cs.cmu.edu, Dateiname: quake-papers/painless-conjugategradient.ps, 1994. [82] J.J. Shynk. Frequency-Domain and Multirate Adaptive Filtering. IEEE Signal Processing Magazine, 9(1):14–37, Jan. 1992. [83] S.W. Smith. The Scientist and Engineer’s Guide to Digital Signal Processing. California Technical Publishing, San Diego, CA 92150-2407, 2. Auflage, 1999. [84] P. Spellucci. Numerische Verfahren der nichtlinearen Optimierung. Birkh¨auser, Basel, Boston, Berlin, 1993.
Literaturverzeichnis
223
[85] K.S. Tang, K.F. Man, S. Kwong, and Q. He. Genetic Algorithms and their Applications. IEEE Signal Processing Magazine, 13(6):22–37, Nov. 1996. [86] C.W. Therrien. Discrete Random Signals and Statistical Signal Processing. Prentice Hall, Englewood Cliffs, New Jersey 07632, 1992. [87] L. Tong, V. Soo, R. Liu, and Y. Huang. Amuse: A New Blind Identification Algorithm. Proc. ISCAS, 1990. [88] S.V. Vaseghi. Advanced Signal Processing and Digital Noise Reduction. Wiley-Teubner, New York, 1996. [89] A.S. Weigend, D.E. Rumelhart, and B.A. Huberman. Generalization by weight elimination with application to forecasting. Advances in Neural Information Processing Systems, 3:875–882, 1991. Morgan Kaufman, San Mateo, California. [90] G. Welch and G. Bishop. An Introduction to the Kalman Filter. Technical Report TR 95-041, Department of Computer Science, University of North Carolina at Chapel Hill, Chapel Hill, NC 27599-3175, Mar. 2002. [91] L. Wenzel. Kalman-Filter, Teil 2. Elektronik, 49(8):50–55, 2000. [92] B. Widrow. Adaptive Filters. In R.E. Kalman and N. DeClaris (Hrsg.), Aspects of Network and System Theory. Holt, Rinehart and Winston, New York, 1970. [93] B. Widrow and M. Hoff. Adaptive Switching Circuits. IRE WESCON Convention Record, 4:96–104, 1960. [94] N. Wiener. Extrapolation, Interpolation and Smoothing of Stationary Time Series, with Engineering Applications. Technology Press and Wiley, New York, 1949. [95] P.J. Wolfe and S.J. Godsill. On Bayesian Estimation of Spectral Components for Broadband Noise Reduction in Audio Signals. Technical Report CUED/F-INFENG/TR.404, Signal Processing Group, University of Cambridge, Department of Engineering, Trupington Street, CB2 1PZ, Cambridge, UK; http://www-sigproc.eng.cam.ac.uk, Aug. 2001. [96] Q. Xue, Y.H. Hu, and W.J. Tompkins. Neural-Network-Based Adaptive Matched Filtering for QRS Detection. IEEE Transactions on Biomedical Engineering, 39(4):317–329, 1992. [97] A. Yeredor. Approximate joint diagonalization using non-orthogonal matrices. Proc. ICA 2000, Helsinki, Jun. 19-22, S. 33–38, 2000.
Index
A-posteriori-SNR, 206, 213 A-posteriori-Verteilungsdichte, 64, 68 A-posteriori-Wahrscheinlichkeit, 64 A-priori-SNR, 206, 213 A-priori-Verteilungsdichte, 64, 68 A-priori-Wahrscheinlichkeit, 63 Abbruch, 52 Abstieg hinreichender, 50 steilster, 45 Abstiegsbedingung, 44 Adaptive Filter, 157–176 Anwendungskonfigurationen, 159 Bewertungskriterien, 158 BLMS-Algorithmus, 170 blockadaptiv, 170–176 FELMS-Algorithmus, 171 Gradientenverfahren, 161 Konvergenzverhalten, 164 Kostenfunktion, 160 LMS-Algorithmus, 162 Newtonverfahren, 161 NLMS-Algorithmus, 163 PNLMS-Algorithmus, 163 RLS-Algorithmus, 167 Suchrichtung, 161 Adjunkte, 29 Aktivierungsfunktion, 190 ARMA-Modell, 196 Autokorrelationsfunktion, 10 Autokorrelationsmatrix, 12 Backpropagation-Algorithmus, 192 Bayes
Risikofunktion, 70 Risikofunktion, bedingte, 71 Satz von, 63 Bayes-Sch¨ atzung, 63–88 BFGS-Formel, 48 Bias, 65 Blinde Entfaltung, 177–187 Bussgang-Verfahren, 181 Definition, 177 ideale, 178 kumulantenbasierte, 184–187 Modell, 177 Nichtlinearit¨ at, 181 Blinde Entzerrung, 177–187 Bussgang-Verfahren, 179 Definition, 177 ideale, 178 Konvergenz, 184 Modell, 177 Nichtlinearit¨ at, 181 Blinde Quellentrennung, 89–123 FIR-Filter, 118 lineare Mischung, 89 lineare Operatoren, 116 Mischungsmodell, 89 mit ICA, 94–108 mit Statistik 2. Ordnung, 114–123 Zeitverz¨ ogerungsverfahren, 114 BLMS-Algorithmus, siehe Block-LMSAlgorithmus Block-LMS-Algorithmus, 170 Blockadaptive Filter, 170 Bussgang-Verfahren, 179–184
226
Index
Entfaltung, 181 Entzerrung, 179 Cauchy-Schwarz’sche Ungleichung, 33, 34 Charakteristische Funktion, 12 Cholesky-Faktorisierung, 148 Cram´er-Rao-Schranke, 66 Definitheit, 27 Determinante, 29 DFP-Formel, 48 Dreiecksungleichung, 33 Eigenvektor, 28 Eigenwert, 28 Eigenwertkriterium, 42 Eigenwertverh¨ altnis, 166 Eingrenzungsphase, 39 Ensemble, 17 Entfaltung, siehe Blinde Entfaltung Entropie, 91 differentielle, 91 R`enyi, 91 relative, 93 Shannon, 91 Verbundquelle, 92 Entzerrung, siehe Blinde Entzerrung Ephraim-Malah-Filter, 211–216 Amplitudensch¨ atzung, 211 Interpretation, 214 LSA-MMSE-Sch¨ atzung, 213 MMSE-STSA-Sch¨ atzung, 212 Ergodizit¨ at, 17 Erwartungstreue, 65 Erwartungswert, 8, 9 Matrix, 12 Vektor, 11 Verbund-, 10 Exakter Block-LMS-Algorithmus, 171 Expectation-Maximizaton, 77–88 E-Schritt, 77 M-Schritt, 79 mathematische Grundlagen, 79 Mixture of Gaussians, 82 Faktorisierung Cholesky, 148 QR, 148
FELMS-Algorithmus, siehe Exakter Block-LMS-Algorithmus Fisher-Information, 67 Fletcher-Reeves-Formel, 48 Ged¨ achtnisfaktor, 167 Givens-Rotation, 155 Gleichungsnebenbedingungen, 59 Gradient, 32 nat¨ urlicher, 105 Rechenregeln, 32 Gradientenverfahren, 45 konjugiertes, 48 Konvergenzverhalten, 164 Gram-Schmidt-Verfahren, 148 H¨ aufigkeit, 3 H¨ aufigkeitsverteilung, 3, 9 H¨ older-Ungleichung, 33 Hamming-Fenster, 203 Hanning-Fenster, 203 Hauptkomponentenanalyse, 108–114 Analysegleichung, 110 Definition, 108 Synthesegleichung, 110 Unterschied zur ICA, 108 Variablenreduktion, 109, 112 Vorverarbeitung f¨ ur ICA, 113 HOS, siehe Statistik h¨ oherer Ordnung Householder-Reflexion, 152 ICA, siehe Independent Component Analysis Independent Component Analysis, 94–108 gaußsche Komponenten, 95 Mischungsmodell, 95 Voraussetzungen, 96 Independent Identically Distributed, 178 Information Definition, 91 gemeinsame, 93 Informationstheorie, 90 Isokoste, 44 Jacobi-Rotationen, 105 Jacobi-Transformation, 120 Kalman-Filter, 133–156
Index A-posteriori-Sch¨ atzwert, 142 A-priori-Sch¨ atzwert, 142 algorithmische Struktur, 134 erweitertes, 146 Implementierungsfragen, 147 Pr¨ adiktor-Korrektor-Verfahren, 143 Quadratwurzelverfahren, 149 rekursive Filterung, 137 Sch¨ atzgleichungen, 142 Systemstruktur, 133 und Bayes-Sch¨ atzung, 136, 145 Zustandsraumdarstellung, 141 Konsistenz, 66 Kontrastfunktionen, 96–105 Definition, 96 gemeinsame Information, 102 Infomax, 98 informationstheoretische, 96 Maximum Likelihood, 96 orthogonale, 103 Statistik h¨ oherer Ordnung, 104 Konvergenz lineare, 43 quadratische, 43 superlineare, 44 Konvergenzgeschwindigkeit, 43 Kovarianzfunktion, 11 Kovarianzmatrix, 12 Kuhn-Tucker-Multiplikatoren, 60 Kullback-Leibler-Distanz, 93 Eigenschaften, 93 Kumulant, 13 Eigenschaften, 15 kumulantengen. Funktion, 13 normierter, 185 Kurtosis, 15 normierte, 186 Lagrange-Methode Bedeutung, 56 Interpretation, 57 Verfahren, 55 Least-Squares-Sch¨ atzung, 127 Likelihood-Funktion, 64, 68 Lineare Operatoren, 116 Linearkombinierer, 158 Linienoptimierung, 51 LMS-Algorithmus, 162 leistungsnormierter, 163
normierter, 162 Logistische Funktion, 101, 191 Matrix Addition, 25 Adjunkte, 29 Assoziativgesetz, 25 Autokorrelations-, 12 definite, 27 Determinante, 29 Diagonal-, 22 Distributivgesetz, 25 Dreiecks-, 24 Eigenschaften, 27 Eigenvektor, 28 Eigenwert, 28 Einheits-, 22 Eins-, 23 Hankel-, 24 hermitesche, 21 Hesse-, 42 Hessenberg-, 24 Informations-, 67 Inversion, 31 Inversions-Lemma, 31 Jacobi-, 32, 54 Kofaktor, 29 Koidentit¨ ats-, 23 Konditionszahl, 34 Kovarianz-, 12 Multiplikation, 25 Norm, 34 Notation, 21 Off-Diagonal-Element, 120 orthogonale, 27 Pseudo-Diagonal-, 22 Pseudoinverse, 31, 128 Rang, 27 Spur, 28 Toeplitz-, 23 transponierte, 21 unit¨ are, 27 Vandermonde-, 24 zirkulante, 23 Matrix-Inversions-Lemma, 31 Median, 74 Mixture of Gaussians, 81 MLP, siehe Multilagen-Perzeptron MOG, 81
227
228
Index
Moment, 12 Eigenschaften, 15 momentengen. Funktion, 12 zentrales, 12 Multilagen-Perzeptron Entwurfsaufgaben, 191 Struktur, 190 Musical Noise, 207 Musterfolge, 17 Neuron, 99, 190 Neuronale Netze, 189–197 Backpropagation-Algorithmus, 192 Filteranwendungen, 196 Komplexit¨ at, 195 Multilagen-Perzeptron, 190 Netzwerkeinschr¨ ankung, 195 Netzwerkwachstum, 195 Radiale Basisfunktionen, 197 zur Quellentrennung, 100 Newton-Verfahren, 46 Norm Eins-, 33 euklidische, 33 Frobenius-, 34 Matrix-, 34 Tschebyscheff-, 33 Vektor-, 33 Normalengleichungen, 130 Optimierung, 37–61 Abbruch, 52 Aufgabenstellung, 37 Funktion einer Variablen, 38 Funktion mehrerer Variablen, 41 Gleichungs- und Ungleichungsnebenbedingungen, 59 Gleichungsnebenbedingungen, 54 globales Minimum, 38 Lagrange-Verfahren, 55 lokales Minimum, 37 Re-Start, 52 Skalierungsfragen, 53 Orthogonalisierungsverfahren nach Gram und Schmidt, 148 Orthogonalit¨ atsprinzip, 128 PCA, siehe Hauptkomponentenanalyse Polak-Ribi`ere-Formel, 49
Polyphasendarstellung, 172 Pre-Whitening, 113 Prior, 68 Pseudoinverse, 31 QR-Faktorisierung, 148 Quasi-Newton-Verfahren, 47 Radiale Basisfunktionen, 197 RBF, siehe Radiale Basisfunktionen Re-Start, 52 Recursive Least Squares, siehe RLS-Algorithmus Reflexion, 151 Householder-, 152 Rekursive Filterung, 137 Riccati-Gleichung, 150, 168 RLS-Algorithmus, 167 Rotation, 151 Givens-, 155 Jacobi-, 105 Sch¨ atzer asympt. erwartungstreuer, 65 Bewertungskriterien, 65 erwartungstreuer, 65 ged¨ achtnisloser, 181 kleinster Absolutfehler, 73 kleinster quadr. Fehler, 73 konsistenter, 66 Maximum-a-posteriori, 72 Maximum-Likelihood, 72 Eigenschaften, 74 unvollst. Daten, 77 wirksamer, 66 Sch¨ atztheorie, 64 Schar, 17 Schiefe, 15 Schrittweiten, 49 effiziente, 49 Goldstein-Armijo-Abstiegstest, 50 Linienoptimierung, 51 Sigmoid-Funktion, 191 Spektrale Subtraktion, 199–216 ¨ Ubersubtraktion, 204 Amplitudensubtraktion, 203 Ephraim-Malah-Filter, 207, 211–216 Fensterung, 202 Maximum-Likelihood, 205 Modell, 199
Index Nachverarbeitung, 209 nichtlineare Korrektur, 204 Rauschleistungsmittelung, 209 Spektralsubtraktion, 203 Spektrogramm-Filterung, 209 Sprachpausenerkennung, 210 Wiener-Filter, 205 Spektrogramm, 202, 208, 209 Sphering, 113 Sprachverbesserungssysteme, 199 Spur, 28 Stationarit¨ at, 18 Statistik h¨ oherer Ordnung, 104 Stochastischer Prozess, 16 Transformation, LTI, 20 Transformation, nichtlinear, 18 Suchphase, 39 Suchrichtung, 45 Suchrichtungsverfahren, 44 Sylvesterkriterium, 42 Ungleichungsnebenbedingungen, 59 Unitarit¨ at, 27 Unterdeterminante, 29 nordwestliche, 42 Variablenreduktion, 112 Varianz, 15 Vektor außeres Produkt, 26 ¨ Differentiation, 32 Eigenschaften, 27 Einheits-, 22 Eins-, 23 Gradient, 32 inneres Produkt, 26
229
lineare Unabh¨ angigkeit, 27 Norm, 33 Notation, 21 Verbunddiagonalisierung, 120 Verteilungsdichte Exponential-, 6 Gamma-, 6 Gauß-, eindimensional, 6 Gauß-, multivariat, 6 Gleich-, 6 Laplace-, 6 Rayleigh-, 6 Verteilungsdichtefunktion, 5 Verteilungsfunktion, 5 Wahrscheinlichkeit, 4 a-posteriori, 64 a-priori, 63 Wahrscheinlichkeitsverteilung, diskr., 4 Widrow-Hoff-Algorithmus, 162 Wiener-Filter, 125–132 Frequenzbereich, 131 Kostenfunktion, 126 Least-Squares-Sch¨ atzung, 127 Pr¨ adiktion, 130 Struktur, 125 Wiener-Hopf-Gleichung, 127 Wiener-Khintchine-Theorem, 115 Wirksamkeit, 66 Yule-Walker-Gleichungen, 130 Zeitverz¨ ogerungsverfahren, 114 Zufallsexperiment, 3 Zufallsvariablen, 4 Zustandsraumdarstellung, 141
Privacy Statement MetaPress is committed to respecting data-protection regulations. This statement informs you of the steps we take to protect your rights. By personal data we mean (a) the details you provide us via our forms, e.g. your email address, all ordering and billing information, such as postal addresses and payment details, and (b) all data captured in authentication and tracking logs. By using our site and by registering for any of our services or products, you accept that such personal data will be gathered and stored in our databases. We will maintain appropriate safeguards to ensure the security, integrity and privacy of your personal data. We do not share personal data with other companies for marketing or similar purposes. This data will be used by MetaPress to provide you with the services and products you have ordered. We may also occasionally use it to inform you of new services and products related to those you have ordered and of changes and activities within MetaPress. By registering for services and products in MetaPress, you agree to MetaPress using your email address in this way. Authentication and tracking logs will be used to produce usage statistics. This information does not contain any personally identifiable information. MetaPress reserves the right to have logs and databases analyzed by external service providers, in which case every effort will be made to protect the security, integrity and privacy of the data. Please note that we take no responsibility for personal data posted on any open forums or message boards. Disclaimer MetaPress cannot take responsibility for information found on third party Web sites outside its control. While we attempt to provide links only to third-party Web sites that comply with all applicable laws and regulations and our standards, please understand that the content on these third-party Web sites is subject to change without notice to MetaPress. We therefore cannot be responsible for, and accept no liability for, any information or opinion contained in any third-party web site.