Sprachliche Mensch-Maschine-Kommunikation
Sprachliche Mensch-Maschine-Kommunikation
Sprachliche Mensch-Maschine-Kommunikation
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Ivica Rogina<br />
<strong>Sprachliche</strong><br />
<strong>Mensch</strong>-<strong>Maschine</strong>-<strong>Kommunikation</strong><br />
25. Februar 2005<br />
xxxxxxxx-Verlag<br />
yyyyyyyy yyyyyyyyyyyyyyyy<br />
zzzzzzzz zzzzzzzz zzzzzzzz<br />
aaaaaaaa
Vorwort<br />
Dieses Buch ist ein Lehrbuch, das sich vor allem an Studierende richtet,<br />
die die Methoden der sprachlichen <strong>Mensch</strong>-<strong>Maschine</strong>-<strong>Kommunikation</strong> kennen<br />
lernen wollen. Es dient seit einigen Jahren als Skriptum zur gleichnamigen<br />
Vorlesung an der Universität Karlsruhe. Über den eigentlichen Lesestoff zur<br />
Einführung in die Spracherkennung hinaus enthält es eine Sammlung von<br />
Java Applets anhand derer wichtige Schritte im Prozeß der Entwicklung<br />
eines Spracherkenners nachvollzogen werden können. Es wurde Java gewählt,<br />
weil dieses auf den meisten Computern unverändert einsetzbar ist, und es<br />
erlaubt, die beiliegenden Programme auf einem beliebigen Rechner mit einem<br />
aktuellen Java-fähigen WWW-Browser – selbst über eine Internetverbindung<br />
– auszuführen und die Experimente durchzuführen.<br />
Die Kapitel sind so angeordnet, daß die Themen in etwa in der Reihenfolge<br />
behandelt werden, wie sie von jemandem angegangen würden,<br />
der ohne einschlägige Vorerfahrungen einen Spracherkenner entwickelt.<br />
So ist zum Beispiel der Themenbereich der akustischen Modellierung in<br />
mehrere Kapitel eingeteilt, weil die Verwendung von kontextabhängigen<br />
Modellen nicht benötigt wird, um die restlichen Verfahren der kontinuierlichen<br />
Spracherkennung zu bearbeiten. So sind dann auch zwischen der<br />
Einführung des akustischen Modells und dem Kapitel über kontextabhängige<br />
Modellierung Kapitel über einfache Suchalgorithmen und die Verwendung<br />
von Sprachmodellen eingefügt. Entsprechend ist die Thematik der Suchalgorithmen<br />
unterteilt in einen ersten Teil, der benötigt wird, um überhaupt<br />
kontinuierliche Sprache zu erkennen, und einige Kapitel später einen Teil,<br />
der sich mit den elaborierteren Algorithmen zu diesem Thema befaßt. Dies<br />
ist bewußt so gehalten, da nicht der Anspruch erhoben wird, ein umfassendes<br />
Nachschlagewerk für den aktiven Forscher bereitzustellen, sondern<br />
vielmehr ein Buch, das den Interessierten beim Einstieg in das inzwischen<br />
sehr umfangreiche Gebiet begleitet. Die zwangsläufig nötige Auswahl der<br />
Teilgebiete wurde vor allem unter Berücksichtigung der am Lehrstuhl von<br />
Prof. Waibel durchgeführten Projekte vorgenommen.<br />
Neben der Einführung in die Spracherkennung beschreiben die beiden<br />
letzten Kapitel Forschungsarbeiten des Autors, die nach seiner Promotion an<br />
den Interactive Systems Labs des Lehrstuhls von Prof. Waibel an der Fakultät<br />
für Informatik der Universität Karlsruhe durchgeführt wurden.
Inhaltsverzeichnis<br />
Tabellenverzeichnis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IX<br />
Verzeichnis der Abbildungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . XI<br />
1. Nutzen und Anwendungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1<br />
1.1 Vorteile und Nachteile der Sprache als Eingabemodus . . . . . . . 2<br />
1.2 Anwendungsbeispiele. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4<br />
1.2.1 Diktieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4<br />
1.2.2 Steuerung von Geräten . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5<br />
1.2.3 Sprach-zu-Sprach-Übersetzung . . . . . . . . . . . . . . . . . . . . . 7<br />
1.2.4 Hilfe für Behinderte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7<br />
1.2.5 Indexierung akustischer Dokumente. . . . . . . . . . . . . . . . . 8<br />
1.2.6 Sprecheridentifikation und Authentifikation . . . . . . . . . . 9<br />
1.2.7 Identifikation von Sprachen . . . . . . . . . . . . . . . . . . . . . . . . 10<br />
1.2.8 Unterhaltung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10<br />
1.2.9 Hilfe beim Lesen und Sprechen Lernen . . . . . . . . . . . . . . 11<br />
1.2.10 Erkennung im fahrenden Fahrzeug . . . . . . . . . . . . . . . . . . 11<br />
1.2.11 Persönliche Digitale Assistenten (PDAs). . . . . . . . . . . . . 13<br />
1.2.12 Mobile Informationssysteme . . . . . . . . . . . . . . . . . . . . . . . 14<br />
1.2.13 Das Heim-Multimedia-Terminal im Intelligenten Raum 14<br />
1.2.14 Ein provokativer Ausblick . . . . . . . . . . . . . . . . . . . . . . . . . 15<br />
2. Eigenschaften und Taxonomie von Sprache und Spracherkennern<br />
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17<br />
2.1 Sprecherabhängigkeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17<br />
2.2 Kontinuierlichkeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18<br />
2.3 Spontaneität . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19<br />
2.3.1 Grammatikalität . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19<br />
2.3.2 Wortabbrüche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20<br />
2.3.3 Deutlichkeit der Aussprache . . . . . . . . . . . . . . . . . . . . . . . 21<br />
2.3.4 Betonte und unbetonte Pausen . . . . . . . . . . . . . . . . . . . . . 21<br />
2.3.5 Wiederholungen und Stottern . . . . . . . . . . . . . . . . . . . . . . 22<br />
2.3.6 Artikulatorische Geräusche . . . . . . . . . . . . . . . . . . . . . . . . 22<br />
2.3.7 Varianz der Sprechgeschwindigkeit . . . . . . . . . . . . . . . . . . 23
VIII Inhaltsverzeichnis<br />
2.4 Erkennungsszenario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24<br />
2.5 Perplexität . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24<br />
2.6 Die Signalqualität . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25<br />
2.6.1 Nahbesprechungsmikrophone. . . . . . . . . . . . . . . . . . . . . . . 25<br />
2.6.2 Telefongespräche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26<br />
2.6.3 Hintergrundgeräusche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27<br />
2.7 Das Vokabular . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28<br />
2.8 <strong>Kommunikation</strong>sart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28<br />
2.9 Wie schwierig ist Spracherkennung . . . . . . . . . . . . . . . . . . . . . . . 30<br />
3. Geschichte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33<br />
3.1 Geschichte der (D)ARPA Evaluationen . . . . . . . . . . . . . . . . . . . . 36<br />
4. Anatomie Sprachproduktion und Perzeption . . . . . . . . . . . . . 41<br />
4.1 Anatomie des Artikulationsapparates . . . . . . . . . . . . . . . . . . . . . 42<br />
4.1.1 Bestandteile des Artikulationsapparates . . . . . . . . . . . . . 43<br />
4.1.2 Der Prozeß der Sprachproduktion . . . . . . . . . . . . . . . . . . 45<br />
4.1.3 Sprachlaute . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46<br />
4.1.4 Modelle des Vokaltraktes . . . . . . . . . . . . . . . . . . . . . . . . . . 47<br />
4.2 Anatomie des Gehörs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52<br />
5. Akustische Grundlagen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55<br />
5.1 Was ist Schall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55<br />
5.2 Messung der Schallintensität . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58<br />
6. Phonetische Grundlagen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63<br />
6.1 Lautliche Einheiten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63<br />
6.2 Die IPA Lautemenge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65<br />
6.3 Gruppierung von Phonemen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67<br />
6.3.1 Vokale und Konsonanten . . . . . . . . . . . . . . . . . . . . . . . . . . 67<br />
6.3.2 Artikulationsarten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69<br />
6.3.3 Artikulationsorte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73<br />
6.3.4 Besondere Eigenschaften . . . . . . . . . . . . . . . . . . . . . . . . . . 74<br />
7. Grundlagen der Signalverarbeitung . . . . . . . . . . . . . . . . . . . . . . 77<br />
7.1 Analog/Digital Wandlung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77<br />
7.2 Systeme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80<br />
7.2.1 Die Dirac Distribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81<br />
7.2.2 Faltung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83<br />
7.2.3 Impulsantwort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84<br />
7.3 Fourieranalyse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85<br />
7.4 Die diskrete Fouriertransformation . . . . . . . . . . . . . . . . . . . . . . . . 99<br />
7.5 Codierung akustischer Signale . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
Inhaltsverzeichnis IX<br />
8. Verarbeitung von Sprachsignalen . . . . . . . . . . . . . . . . . . . . . . . . 105<br />
8.1 Eigenschaften des Signals im Zeitbereich . . . . . . . . . . . . . . . . . . 105<br />
8.1.1 Amplitude . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106<br />
8.1.2 Nulldurchgangsrate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106<br />
8.1.3 Energie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106<br />
8.2 Spektralranalyse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107<br />
8.2.1 Langzeitspektrum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109<br />
8.2.2 Kurzzeitspektrum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110<br />
8.2.3 Spektrogramme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113<br />
8.2.4 Filterbänke . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115<br />
8.3 Cepstralanalyse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119<br />
8.4 Codierung durch Lineare Vorhersage . . . . . . . . . . . . . . . . . . . . . . 121<br />
8.5 Einfache Signalnormalisierungen . . . . . . . . . . . . . . . . . . . . . . . . . . 122<br />
8.5.1 Offsetnachführung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123<br />
8.5.2 Mittelwertssubtraktion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124<br />
8.6 Wavelets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124<br />
9. Klassifikation und Mustererkennung . . . . . . . . . . . . . . . . . . . . . 127<br />
9.1 Klassifikatoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127<br />
9.1.1 Deterministische und stochastische Klassifikatoren . . . . 127<br />
9.1.2 Parametrische und nichtparametrische Schätzer . . . . . . 128<br />
9.1.3 Überwachtes und unüberwachtes Lernen. . . . . . . . . . . . . 128<br />
9.1.4 Neuronale Netze als Klassifikatoren . . . . . . . . . . . . . . . . . 129<br />
9.1.5 Vektor Quantisierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129<br />
9.1.6 Codebücher. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134<br />
9.1.7 Bayes Klassifikator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140<br />
9.1.8 Gaußklassifikatoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140<br />
9.2 Der Expectation Maximization Algorithmus . . . . . . . . . . . . . . . 144<br />
9.3 Diskriminanzoptimierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145<br />
9.3.1 Hauptachsentransformation und Lineare Diskriminanzanalyse<br />
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145<br />
9.3.2 Dimensionalitätsreduktion . . . . . . . . . . . . . . . . . . . . . . . . . 148<br />
10. Erkennung statischer Sprachsignale . . . . . . . . . . . . . . . . . . . . . . 151<br />
10.1 Zeitsignalbasierte Erkennung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151<br />
10.1.1 Endpunktdetektion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151<br />
10.1.2 Kombination von Merkmalen . . . . . . . . . . . . . . . . . . . . . . 155<br />
10.2 Das Vokaldreieck . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156<br />
10.3 Vergleich von Spektrogrammen . . . . . . . . . . . . . . . . . . . . . . . . . . . 156<br />
11. Erkennung dynamischer Sprachsignale . . . . . . . . . . . . . . . . . . . 159<br />
11.1 Minimale Editierdistanz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160<br />
11.2 Dynamisches Programmieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162<br />
11.2.1 Distanz zwischen zwei Sprachsignalen . . . . . . . . . . . . . . 167<br />
11.3 Spracherkennung mittels Dynamic Time Warping . . . . . . . . . . . 169
X Inhaltsverzeichnis<br />
11.3.1 Einschränkungen des Suchraums . . . . . . . . . . . . . . . . . . . 171<br />
11.3.2 Dynamisches Programmieren mit Strahlsuche . . . . . . . 174<br />
12. Hidden Markov Modelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177<br />
12.1 Probleme mit einfachen Mustervergleichern . . . . . . . . . . . . . . . . 177<br />
12.2 Sprache als stochastischer Prozeß . . . . . . . . . . . . . . . . . . . . . . . . . 180<br />
12.3 Der HMM-Formalismus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186<br />
12.4 Die drei Probleme der Hidden Markov Modelle . . . . . . . . . . . . . 187<br />
12.4.1 Das Evaluierungsproblem. . . . . . . . . . . . . . . . . . . . . . . . . . 188<br />
12.4.2 Das Dekodierungsproblem . . . . . . . . . . . . . . . . . . . . . . . . . 192<br />
12.4.3 Das Optimierungsproblem . . . . . . . . . . . . . . . . . . . . . . . . . 194<br />
12.5 Spracherkennung mit Hidden Markov Modellen. . . . . . . . . . . . . 198<br />
12.5.1 Ein einfacher HMM Einzelkommandoerkenner . . . . . . . 199<br />
12.5.2 Abbildung von Wörtern auf Markov Modelle . . . . . . . . . 200<br />
12.5.3 Numerische Probleme in der Praxis . . . . . . . . . . . . . . . . 203<br />
13. Das Trainieren von Spracherkennern . . . . . . . . . . . . . . . . . . . . . 205<br />
13.1 Überblick über den HMM-Entwicklungsprozeß . . . . . . . . . . . . . 205<br />
13.1.1 Initialisierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205<br />
13.1.2 Iterative Optimierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208<br />
13.2 Aufteilung der Sprachaufnahmen . . . . . . . . . . . . . . . . . . . . . . . . . 210<br />
13.3 Trainingsparadigmen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215<br />
13.3.1 Diskriminatives Trainieren . . . . . . . . . . . . . . . . . . . . . . . . . 216<br />
13.3.2 Trainieren ohne Transkriptionen . . . . . . . . . . . . . . . . . . . 219<br />
13.3.3 Momentum und adaptives Training . . . . . . . . . . . . . . . . . 221<br />
14. Das akustische Modell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223<br />
14.1 Die Fundamentalformel der Spracherkennung . . . . . . . . . . . . . . 223<br />
14.2 Der Parameterraum des Akustischen Modells . . . . . . . . . . . . . . 224<br />
14.2.1 Emissionswahrscheinlichkeitsmodelle . . . . . . . . . . . . . . . . 224<br />
14.2.2 Kontinuierlichkeitsgrade . . . . . . . . . . . . . . . . . . . . . . . . . . 225<br />
14.3 Mehrere Datenströme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229<br />
14.4 Parameterkopplung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231<br />
14.5 Mehrdimensionale Hidden-Markov-Modelle . . . . . . . . . . . . . . . . 233<br />
14.6 Aussprachemodellierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236<br />
14.6.1 Aussprachelexika und Text-To-Speech Systeme . . . . . . . 236<br />
14.6.2 Neue Wörter einbinden . . . . . . . . . . . . . . . . . . . . . . . . . . . 237<br />
14.6.3 Aussprachevarianten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239<br />
14.6.4 Flexible Transkriptionen . . . . . . . . . . . . . . . . . . . . . . . . . . 244<br />
15. Erkennung kontinuierlicher Sprache . . . . . . . . . . . . . . . . . . . . . . 247<br />
15.1 Bewertung von Erkennungshypothesen . . . . . . . . . . . . . . . . . . . . 248<br />
15.2 One Stage Dynamic Programming . . . . . . . . . . . . . . . . . . . . . . . . 251<br />
15.3 Hidden Markov Modelle für kontinuierliche Sprache . . . . . . . . 256<br />
15.4 Einbindung eines einfachen Sprachmodells . . . . . . . . . . . . . . . . . 258
Inhaltsverzeichnis XI<br />
16. Verwendung von Sprachmodellen . . . . . . . . . . . . . . . . . . . . . . . . 261<br />
16.1 Wozu Sprachmodelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261<br />
16.2 Wahrscheinlichkeiten von Wortfolgen. . . . . . . . . . . . . . . . . . . . . . 262<br />
16.3 N-Gramme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265<br />
16.4 Perplexität . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266<br />
16.5 Glättung und Interpolation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271<br />
16.5.1 Cutoffs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271<br />
16.5.2 Discounting. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272<br />
16.5.3 Backoff-Verfahren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272<br />
16.6 Verschiedene weitere Sprachmodelle . . . . . . . . . . . . . . . . . . . . . . . 274<br />
16.6.1 Trigger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274<br />
16.6.2 Cache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274<br />
16.6.3 Klassenbasierte Sprachmodelle . . . . . . . . . . . . . . . . . . . . . 275<br />
16.6.4 Spezielle Sprachmodelle . . . . . . . . . . . . . . . . . . . . . . . . . . . 276<br />
16.6.5 Gewichtung von Akustik und Linguistik . . . . . . . . . . . . . 281<br />
16.7 Adaption von Sprachmodellen. . . . . . . . . . . . . . . . . . . . . . . . . . . . 282<br />
16.7.1 Auswahl vorberechneter Modelle . . . . . . . . . . . . . . . . . . . 282<br />
16.7.2 Hypothesis driven lexicon adaptation . . . . . . . . . . . . . . . 284<br />
16.7.3 Kompositabildung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286<br />
17. Kontextabhängige akustische Modelle . . . . . . . . . . . . . . . . . . . . 289<br />
17.1 Suche nach der optimalen Spracheinheit . . . . . . . . . . . . . . . . . . . 289<br />
17.2 Ballung von Kontexten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297<br />
17.2.1 Optimierungskriterien. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297<br />
17.2.2 Ballungsalgorithmen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299<br />
17.2.3 Agglomerative Verfahren . . . . . . . . . . . . . . . . . . . . . . . . . . 300<br />
17.2.4 Divisive Verfahren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302<br />
17.2.5 Laufzeitbetrachtungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309<br />
17.2.6 Einbindung von Modalitätenfragen . . . . . . . . . . . . . . . . . 311<br />
17.3 Wortübergangskontexte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312<br />
18. Effiziente Decodierverfahren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315<br />
18.1 Decoderarten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315<br />
18.2 Beschneidung des Suchraumes. . . . . . . . . . . . . . . . . . . . . . . . . . . . 318<br />
18.3 Baumdarstellung des Such-HMMs . . . . . . . . . . . . . . . . . . . . . . . . 320<br />
18.3.1 Verzögerte Bigramme . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322<br />
18.4 Sprachmodelle höherer Ordnung . . . . . . . . . . . . . . . . . . . . . . . . . . 323<br />
18.5 Suche ohne Sprachmodell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324<br />
18.6 Längenmodellierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325<br />
18.7 Mehrpaßsuchen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326
XII Inhaltsverzeichnis<br />
19. Parameterraumoptimierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329<br />
19.1 Parameterarten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330<br />
19.1.1 Mittelwertsvektoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330<br />
19.1.2 Kovarianzmatrizen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331<br />
19.1.3 Mixturgewichte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331<br />
19.2 Parameterkopplung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331<br />
19.2.1 Kopplung von<br />
Zustandsübergangswahrscheinlichkeiten . . . . . . . . . . . . . 332<br />
19.2.2 Arten der Parameterkopplung . . . . . . . . . . . . . . . . . . . . . . 333<br />
19.3 Architekturentwurf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334<br />
19.4 Kompaktifizierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336<br />
19.4.1 Typen von Kovarianzmatrizen . . . . . . . . . . . . . . . . . . . . . 336<br />
19.4.2 Vereinfachung von Kovarianztypen . . . . . . . . . . . . . . . . . 339<br />
19.4.3 Selektive Radialisierung . . . . . . . . . . . . . . . . . . . . . . . . . . . 340<br />
19.4.4 Kopplung von Kovarianzparametern . . . . . . . . . . . . . . . . 342<br />
19.5 Lose gekoppelte Kovarianzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343<br />
20. Erkennung von Spezialvokabular . . . . . . . . . . . . . . . . . . . . . . . . . 345<br />
20.1 Buchstabiererkennung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345<br />
20.2 Erkennung beliebiger Namen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348<br />
21. Robustheit und Adaption . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353<br />
21.1 Sprecherabhängigkeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354<br />
21.2 Spontane Effekte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356<br />
21.3 Geräuschmodellierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357<br />
21.4 Adaptionsziele . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359<br />
21.5 Adaptionsmethoden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361<br />
21.5.1 MLLR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362<br />
21.5.2 Label-Boosting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363<br />
21.5.3 SAT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364<br />
21.5.4 MAP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365<br />
21.5.5 VTLN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366<br />
22. Künstliche Neuronale Netze . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371<br />
22.1 Probleme reiner HMM-Erkenner . . . . . . . . . . . . . . . . . . . . . . . . . . 372<br />
22.2 Architekturen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373<br />
22.2.1 Netze zur Klassifikation . . . . . . . . . . . . . . . . . . . . . . . . . . . 373<br />
22.2.2 Elman-Netze und Jordan-Netze . . . . . . . . . . . . . . . . . . . . 374<br />
22.2.3 LVQ – Learning Vector Quantization . . . . . . . . . . . . . . . 375<br />
22.2.4 Kohonens selbstorganisierende Karten. . . . . . . . . . . . . . . 377<br />
22.2.5 MS-TDNNs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379<br />
22.2.6 LPNNs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 382<br />
22.2.7 Hierarchische Mixturen von Experten . . . . . . . . . . . . . . 384
Inhaltsverzeichnis XIII<br />
23. Verstehen von Sprache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389<br />
23.1 Verstehen gesprochener Sprache . . . . . . . . . . . . . . . . . . . . . . . . . . 389<br />
23.2 Prosodie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390<br />
23.3 Parsing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394<br />
23.3.1 Grammatische Zerteiler . . . . . . . . . . . . . . . . . . . . . . . . . . . 394<br />
23.3.2 Suchstrategien . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395<br />
23.3.3 Repräsentation von Bedeutung . . . . . . . . . . . . . . . . . . . . . 398<br />
23.3.4 Fallschablonenzerteiler . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400<br />
24. Dialogsteuerung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401<br />
24.1 Einheiten der sprachlichen <strong>Kommunikation</strong> . . . . . . . . . . . . . . . . 403<br />
24.2 Sprechakte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405<br />
24.3 Diskursmodellierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406<br />
24.4 Entwicklung von Dialogsystemen . . . . . . . . . . . . . . . . . . . . . . . . . 407<br />
24.4.1 Vorgehensweisen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407<br />
24.4.2 Gesprochene Sprache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 409<br />
24.4.3 Wizard-of-Oz Experimente . . . . . . . . . . . . . . . . . . . . . . . . 410<br />
25. Erkennung verschiedener Sprachen . . . . . . . . . . . . . . . . . . . . . . . 413<br />
25.1 Eigenschaften verschiedener Sprachen . . . . . . . . . . . . . . . . . . . . . 413<br />
25.1.1 Definition eines Wortes. . . . . . . . . . . . . . . . . . . . . . . . . . . . 414<br />
25.1.2 Flektierende Sprachen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414<br />
25.1.3 Komposition von Wörtern . . . . . . . . . . . . . . . . . . . . . . . . . 415<br />
25.2 Identifikation von Sprachen (LID) . . . . . . . . . . . . . . . . . . . . . . . . 415<br />
26. Zusätzliche Modalitäten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419<br />
26.1 Lippenlesen auf Videoaufnahmen . . . . . . . . . . . . . . . . . . . . . . . . . 419<br />
26.2 Sprecherlokalisierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422<br />
26.2.1 Akustisch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422<br />
26.2.2 Mit Videoaufnahmen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425<br />
26.3 Handschrifterkennung, Gestikerkennung . . . . . . . . . . . . . . . . . . . 426<br />
26.4 Fehlerbehandlungsmethoden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 426<br />
26.5 Multimodale Zeitzuordnung. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 428<br />
27. Entwicklung von Anwendungen . . . . . . . . . . . . . . . . . . . . . . . . . . 431<br />
27.1 Ein Erkenner für eine neue Aufgabe . . . . . . . . . . . . . . . . . . . . . . 431<br />
27.1.1 Vorbereitung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 432<br />
27.1.2 Datensammlung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 432<br />
27.1.3 Datenaufbereitung. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433<br />
27.1.4 Erzeugen der Erkennerumgebung . . . . . . . . . . . . . . . . . . . 434<br />
27.1.5 Training und Evaluation . . . . . . . . . . . . . . . . . . . . . . . . . . 435<br />
27.1.6 Qualitätsanforderungen überprüfen und erfüllen . . . . . . 437<br />
27.2 Beispiel: Videorecorder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 438<br />
27.3 Beispiel: Adressenerkennung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439
XIV Inhaltsverzeichnis<br />
28. Der moderne Vortragsraum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 443<br />
28.1 Die Rolle der Spracherkennung . . . . . . . . . . . . . . . . . . . . . . . . . . . 444<br />
28.1.1 Automatische Bedienung der Medien. . . . . . . . . . . . . . . . 445<br />
28.1.2 Verfolgen von Vorträgen. . . . . . . . . . . . . . . . . . . . . . . . . . . 446<br />
28.1.3 Verwalten einer Vortragsdatenbank . . . . . . . . . . . . . . . . . 448<br />
28.2 Verfolgen eines Laserpointers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448<br />
28.2.1 Unterstützung des Vortragsverfolgers . . . . . . . . . . . . . . . 452<br />
28.2.2 Algorithmen zur Detektion von Laserpointern . . . . . . . . 454<br />
28.3 Erkennung spontaner Vortragssprache . . . . . . . . . . . . . . . . . . . . . 455<br />
28.3.1 Adaption des Sprachmodells . . . . . . . . . . . . . . . . . . . . . . . 456<br />
28.4 Das FAME Projekt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460<br />
28.4.1 Ziele des Projektes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460<br />
28.4.2 Die FAME Blackboard Architektur . . . . . . . . . . . . . . . . . 461<br />
Literaturverzeichnis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465<br />
Sachverzeichnis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465
Tabellenverzeichnis<br />
1.1 Eingabegeschwindigkeiten verschiedener Modalitäten (Zeichen<br />
pro Minute) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2<br />
2.1 Einige Beispiele für Vokabulargrößen . . . . . . . . . . . . . . . . . . . . . . . . . . 29<br />
5.2 Schalldruckpegel für verschiedene Geräusche . . . . . . . . . . . . . . . . . . . 60<br />
6.1 Deutsche Aussprachebeispiele für einige IPA-Symbole . . . . . . . . . . . 66<br />
7.2 Verschiede Bedeutungen des Begriffs ” Spektrum“ . . . . . . . . . . . . . . . 91<br />
8.2 Durchschnittliche Längen (in ms) von Lauten im Englischen (gemessen<br />
auf dem Wall-Street-Journal Korpus [Rog97] ). . . . . . . . . . . 111<br />
11.1 Editierschritte und entsprechende Zustandsübergänge . . . . . . . . . . . 163<br />
12.1 Beispiel für 14 Tage Wetterbeobachtungen . . . . . . . . . . . . . . . . . . . . . 182<br />
14.1 Vor- und Nachteile verschiedener zeitlicher Ausdehnung von<br />
Spracheinheiten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232<br />
14.2 Vor- und Nachteile verschiedener räumlicher Ausdehnung von<br />
Spracheinheiten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233<br />
16.1 Perplexitäten verschiedener Erkennungsaufgaben . . . . . . . . . . . . . . . 270
XVI Tabellenverzeichnis<br />
17.1 Modellierung des Wortes ” Hallo“ mit verschiedenen Spracheinheiten290<br />
17.2 Abdeckung des Vokabulars durch Quasi-Ganzwortmodelle . . . . . . . 292<br />
17.3 Vor- und Nachteile unterschiedlicher zeitlicher Modellausdehnung . 294<br />
17.4 Vor- und Nachteile unterschiedlicher räumlicher Modellausdehnung 294<br />
17.5 Wortpositionsabhängige Modellierung . . . . . . . . . . . . . . . . . . . . . . . . . 295<br />
19.1 Fehlerraten bei Kovarianzballung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343<br />
21.1 Vorkommen von Geräuschen in spontaner Sprache . . . . . . . . . . . . . . 358<br />
21.2 Wortfehlerraten mit und ohne VTLN . . . . . . . . . . . . . . . . . . . . . . . . . 369<br />
27.1 Perplexitätsreduktion durch vorgegebene Adressenkomponenten . . 441<br />
28.1 Fehlerrate des Vortragsverfolgers ohne/mit Sprachmodelladaption 459
Abbildungsverzeichnis<br />
2.1 Wortfehlerrate über Sprechgeschwindigkeit. . . . . . . . . . . . . . . . . . . . . 23<br />
2.2 Elemente der Sprachkommunikation . . . . . . . . . . . . . . . . . . . . . . . . . . 31<br />
2.3 Drei Aufnahmen des Wortes ” sieben“ . . . . . . . . . . . . . . . . . . . . . . . . . 32<br />
3.1 Zeitplan von Allan Sears (DARPA) . . . . . . . . . . . . . . . . . . . . . . . . . . . 36<br />
3.2 Entwicklung der Worterkennungsraten mit der Zeit . . . . . . . . . . . . . 37<br />
4.1 Überlagerung und Übergänge von Lauten . . . . . . . . . . . . . . . . . . . . . . 43<br />
4.2 Anatomie des Artikulationsapparates . . . . . . . . . . . . . . . . . . . . . . . . . 44<br />
4.3 Verschiedene Formen des Vokaltraktes bei verschiedenen Vokalen . 46<br />
4.4 Resonatoren für deutsche Vokale nach Christian Gottlieb von<br />
Kratzenstein . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47<br />
4.5 Ein frühes mechanisches Sprachsynthesesystem . . . . . . . . . . . . . . . . 49<br />
4.6 Ein physikalisches Model des Vokaltraktes . . . . . . . . . . . . . . . . . . . . 50<br />
4.7 Ein System von Helmholtz-Resonatoren . . . . . . . . . . . . . . . . . . . . . . 50<br />
4.8 Formanten und Impulsantwort eins Systems von Helmholtz-<br />
Resonatoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51<br />
4.9 Das Quelle-Filter-Modell der Sprachproduktion. . . . . . . . . . . . . . . . . 51<br />
4.10 Die wichtigsten Bestandteile des <strong>Mensch</strong>lichen Ohrs . . . . . . . . . . . . 52<br />
4.11 Querschnitt durch das Innenohr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54<br />
4.12 Frequenzabhängige Empfindlichkeit einzelner Basilarmembranbereiche<br />
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
XVIII Abbildungsverzeichnis<br />
5.1 Energie eines Luftmoleküls bei der Schallübertragung . . . . . . . . . . . 56<br />
5.2 Schallenergie nimmt im Quadrat zur Entfernung ab . . . . . . . . . . . . . 57<br />
5.3 Die Hörfläche: Sprache und Musik im Frequenz/Lautstärke-Raum 59<br />
5.4 Schalldruckpegel und Lautstärke . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62<br />
6.1 Die Laute des International Phonetic Alphabet . . . . . . . . . . . . . . . . . 65<br />
6.2 Das Vokalviereck . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69<br />
6.3 Dorsumweg bei den DiphthongenÁ,Ç,Íund eÁ. . . . . . . . . . . . . . 70<br />
6.4 Sagittalschnitte verschiedener Plosivlaute . . . . . . . . . . . . . . . . . . . . . . 70<br />
6.5 Sagittalschnitte verschiedener nasaler Konsonanten . . . . . . . . . . . . . 71<br />
6.6 Sagittalschnitte verschiedener Frikative . . . . . . . . . . . . . . . . . . . . . . . . 72<br />
7.1 Verschiedene Arten von Signalen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78<br />
7.2 Funktionen eines A/D Wandlers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78<br />
7.3 Veranschaulichung der Dirac Distribution δ . . . . . . . . . . . . . . . . . . . . 82<br />
7.4 Die Stufenfunktion σ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83<br />
7.5 Darstellung von Impulsen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83<br />
7.6 Die Fouriertransformierte des Einheitsimpulses . . . . . . . . . . . . . . . . . 93<br />
7.7 Die Fouriertransformierte zweier Impulse . . . . . . . . . . . . . . . . . . . . . . 93<br />
7.8 Fouriertransformierte von Impulsen mit unterschiedlichen<br />
Abständen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94<br />
7.9 Fouriertransformierte mehrerer Impulse . . . . . . . . . . . . . . . . . . . . . . . 95<br />
7.10 Fouriertransformierte unendlicher Impulsfolgen . . . . . . . . . . . . . . . . . 96<br />
7.11 Fouriertransformierte abgetasteter Signale . . . . . . . . . . . . . . . . . . . . . 97<br />
7.12 Illustration des Abtasttheorems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
Abbildungsverzeichnis XIX<br />
8.1 Signale für stimmhafte und stimmlose Laute . . . . . . . . . . . . . . . . . . . 106<br />
8.2 Unendlich verstärkte Sprachsignale sind immer noch verständlich . 107<br />
8.3 Zerteilung von Signalen in einzelne Segmente . . . . . . . . . . . . . . . . . . 112<br />
8.4 Verschiedene Fensterfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113<br />
8.5 Fouriertransformierte verschiedener Fensterfunktionen (Breite<br />
N = 51) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114<br />
8.6 Entstehung eines Spektrogramms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114<br />
8.7 Spektrogramm der Wortfolge ” eins zwei drei“ . . . . . . . . . . . . . . . . . . 115<br />
8.8 Filterbänke gleicher Größe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116<br />
8.9 Filterbänke wachsender Größe. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117<br />
8.10 Die Mel-Skala . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118<br />
8.11 verschiedene Berechnungen für Filterbänke: 1. Linear nichtüberlappend,<br />
2. logarithmisch nichtüberlappend, 3. logarithmisch<br />
überlappend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118<br />
8.12 Das Cepstrum ist die Spektralanalyse des Spektrums. . . . . . . . . . . . 120<br />
8.13 Filtern und Liftern eines Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121<br />
8.14 Nur-Pole-Funktion eines Linearen Vorhersagesystems. . . . . . . . . . . . 122<br />
8.15 Nur-Pole-Funktion beschränkt auf den Einheitskreis . . . . . . . . . . . . 122<br />
9.1 Arbeitsweise eines stochastischen parametrischen Klassifikators . . . 129<br />
9.2 Nachteile äquidistanter Merkmalsraumunterteilung . . . . . . . . . . . . . 131<br />
9.3 Nachteil der Nächste-Nachbar-Klassifikation . . . . . . . . . . . . . . . . . . . 131<br />
9.4 Klassifikator mit Mahalanobis-Distanzen . . . . . . . . . . . . . . . . . . . . . . 132<br />
9.5 k-nächste-Nachbar-Klassifikation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133<br />
9.6 Merkmalsraum als hierarchische Baumstruktur . . . . . . . . . . . . . . . . . 134<br />
9.7 Auftrennen einer Gauß-Verteilung in zwei . . . . . . . . . . . . . . . . . . . . . 137<br />
9.8 Das Bucket-Voronoi-Intersection Verfahren . . . . . . . . . . . . . . . . . . . . 139<br />
9.9 Funktionsweise eines Bayes-Klassifikators . . . . . . . . . . . . . . . . . . . . . . 141<br />
9.10 Veranschaulichung der Hauptachsentransformation. . . . . . . . . . . . . . 146<br />
9.11 Idealvorstellung der Wirkung einer LDA-Transformation . . . . . . . . 147<br />
9.12 Fehlerbestimmung bei der ” moving targets“ Methode . . . . . . . . . . . 148
XX Abbildungsverzeichnis<br />
10.1 Energiebasierter Sprachdetektor mit Schwellwertvergleich . . . . . . . . 153<br />
10.2 Sprachdetektor als Zustandsautomat . . . . . . . . . . . . . . . . . . . . . . . . . . 154<br />
10.3 Vokaldreieck nach [Lip89] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157<br />
11.1 Zwei Spektrogramme zweier Aufnahmen des Wortes ” sieben“ . . . . 159<br />
11.2 Längennormalisierung durch lineare Zuordnung . . . . . . . . . . . . . . . . 160<br />
11.3 Nichtlineare Zuordnung von Abschnitten zweier Aufnahmen . . . . . 161<br />
11.4 Zuordnung einander entsprechender Buchstaben zweier Wörter . . . 162<br />
11.5 Optimierungsschritt beim Dynamischen Programmieren . . . . . . . . . 163<br />
11.6 Kostenberechnung für einen Editierschritt . . . . . . . . . . . . . . . . . . . . . 164<br />
11.7 Berechnung der Editierdistanz mit dynamischem Programmieren . 166<br />
11.8 DTW-Pfad in Matrixdarstellung. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167<br />
11.9 Verschiedene Zustandsübergangsschemata . . . . . . . . . . . . . . . . . . . . . 169<br />
11.10 Einzelworterkennung mit DTW-Algorithmus . . . . . . . . . . . . . . . . . . . 170<br />
11.11 Erwartungen an DTW-Pfade. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172<br />
11.12 Einschränkungen des DTW-Suchraumes . . . . . . . . . . . . . . . . . . . . . . . 173<br />
11.13 Eingeschränktes Bakis-Modell ist problematisch für unterschiedlich<br />
lange Aufnahmen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174<br />
11.14 DTW mit Strahlsuche: nur wahrscheinliche Zustände werden expandiert<br />
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175<br />
12.1 Verschiedene Topologien für Hidden-Markov-Modelle . . . . . . . . . . . . 182<br />
12.2 HMM zur Modellierung des Wetters . . . . . . . . . . . . . . . . . . . . . . . . . . 183<br />
12.3 Berechnung von αt(. . .) aus αt−1(. . .) . . . . . . . . . . . . . . . . . . . . . . . . . 190<br />
12.4 Der Schritt im Forward-Algorithmus: αt(j) = bj(xt) <br />
i aijαt−1(i) 190<br />
12.5 Berechnung von zt(. . .) aus zt−1(. . .) . . . . . . . . . . . . . . . . . . . . . . . . . . 193<br />
12.6 Der Viterbi-Schritt: zt(j) = bj(xt)maxi aijzt−1(i) . . . . . . . . . . . . . . . 194<br />
12.7 Berechnung der ξ aus den α und β . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197<br />
12.8 Komposition eines Wort-HMMs aus Phonem-HMMs . . . . . . . . . . . . 202<br />
12.9 Komposition eines Wort-HMMs aus sich wiederholenden Phonemen202
Abbildungsverzeichnis XXI<br />
13.1 Training mit Viterbi statt Forward-Backward . . . . . . . . . . . . . . . . . . 208<br />
13.2 Der Overfitting-Effekt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211<br />
13.3 Angleichung einer Punktmenge durch Polynome . . . . . . . . . . . . . . . . 211<br />
13.4 Korrektives Trainieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218<br />
14.1 Rein diskretes Modell (keine Codebücher) . . . . . . . . . . . . . . . . . . . . . 225<br />
14.2 Voll kontinuierliches Modell (keine gemeinsame Nutzung von Codebüchern)<br />
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226<br />
14.3 Semikontinuierliches Modell (ein Codebuch, viele Mixturgewichteverteilungen)<br />
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227<br />
14.4 Phonetisch gekoppeltes semikontinuierliches Modell (ein Codebuch<br />
je Phonem) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228<br />
14.5 Verschiedene Ebenen der Parameterkopplung . . . . . . . . . . . . . . . . . . 234<br />
14.6 Eindimensionales und zweidimensionales HMM . . . . . . . . . . . . . . . . . 235<br />
14.7 Suchraumbeschneidung bei vielen Varianten . . . . . . . . . . . . . . . . . . . 243<br />
15.1 Erweiterung des DTW-Algorithmus für kontinuierliche Sprache . . . 252<br />
15.2 Ein DTW-Pfad über mehrere Wörter . . . . . . . . . . . . . . . . . . . . . . . . . 253<br />
15.3 Grauwertdarstellung der Emissionswahrscheinlichkeiten . . . . . . . . . 253<br />
15.4 Möglicher Pfad für die Wortfolge B D A A C . . . . . . . . . . . . . . . . . . 254<br />
15.5 Möglicher Pfad für die Wortfolge D A C B D A . . . . . . . . . . . . . . . . 255<br />
15.6 Übergänge innerhalb der Wörter, dann Übergänge zwischen den<br />
Wörtern. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255<br />
15.7 Aufbau eines HMMs für einen ganzen Satz. . . . . . . . . . . . . . . . . . . . . 256<br />
15.8 Satz-HMM mit verschiedenen Aussprachen . . . . . . . . . . . . . . . . . . . . 257<br />
15.9 Satz-HMM mit optionalen Füllwörtern . . . . . . . . . . . . . . . . . . . . . . . . 258<br />
15.10 Ein einziges HMM aus vielen einzelnen Wort-HMMs . . . . . . . . . . . . 258<br />
15.11 HMM für kontinuierliche Sprache linear dargestellt. . . . . . . . . . . . . . 259
XXII Abbildungsverzeichnis<br />
16.1 Sprachmodelle mit wenig (links) und viel (rechts) Informationsgehalt267<br />
16.2 Perplexität und Verwechselbarkeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271<br />
16.3 Sprachmodellauswahl mit einem HMM . . . . . . . . . . . . . . . . . . . . . . . . 277<br />
16.4 Automat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279<br />
16.5 Entscheidungsalgorithmus zur Kompositabildung . . . . . . . . . . . . . . . 288<br />
17.1 Beispiel für generalisierte Triphone . . . . . . . . . . . . . . . . . . . . . . . . . . . 293<br />
17.2 Beispiel für Senones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293<br />
17.3 Anzahl Polyphone für verschiedene Kontextbreiten . . . . . . . . . . . . . 295<br />
17.4 Wieviele Polyphone gibt es, die x mal vorkommen? . . . . . . . . . . . . . 296<br />
17.5 Agglomerative Ballung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299<br />
17.6 Divisive Ballung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300<br />
17.7 Blallung ergibt Querschnitt durch Ballungsbaum) . . . . . . . . . . . . . . 300<br />
17.8 Agglomerative Ballung kann zu Vokabularabhängigkeit führen. . . . 302<br />
17.9 Kontextentscheidungsbaum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304<br />
17.10 Auswahl der Kontextfragen in Abhängigkeit von der Baumtiefe. . . 307<br />
17.11 Ausschnitt aus mehrstufigem Kontextentscheidungsbaum . . . . . . . . 308<br />
17.12 unterschiedlich ” scharfe“ Emissionswahrscheinlichkeitenmatrizen . . 310<br />
17.13 Ballungsbaum mit Modalitätenfragen . . . . . . . . . . . . . . . . . . . . . . . . . 311<br />
17.14 Ballung deutscher Dialektregionen in vier Klassen . . . . . . . . . . . . . . 313
Abbildungsverzeichnis XXIII<br />
18.1 Zustandsbezogene und Wortbezogene Rückwärtszeiger . . . . . . . . . . 316<br />
18.2 Rückwärtszeigertabelle für die Wortfolge A C B D . . . . . . . . . . . . . . 316<br />
18.3 Synchrone und asynchrone Suche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317<br />
18.4 Identische Bereiche des Suchraums. . . . . . . . . . . . . . . . . . . . . . . . . . . . 320<br />
18.5 Lineare und baumartige Anordnung des Suchraumes . . . . . . . . . . . . 321<br />
18.6 Umgestaltung der Modellachse der Suchmatrix . . . . . . . . . . . . . . . . . 321<br />
18.7 Bigrammwahrscheinlichkeit nicht bei Übergang anwendbar. . . . . . . 322<br />
18.8 Such-HMM für Trigramm-Sprachmodelle . . . . . . . . . . . . . . . . . . . . . . 324<br />
18.9 Expansionder Wortendezustände ohne/mit Sprachmodellk . . . . . . . 325<br />
18.10 Ein aus phonetischer Sicht sehr unwahrscheinlicher Pfad . . . . . . . . . 326<br />
18.11 Wortaktivitätsmatrix zur Beschneidung des Suchraumes . . . . . . . . . 327<br />
19.1 Ein typischer schlechter Viterbi-Pfad . . . . . . . . . . . . . . . . . . . . . . . . . . 338<br />
19.2 Fehlerrate nach Radialisierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341<br />
20.1 Kombination von n-besten Hypothesen . . . . . . . . . . . . . . . . . . . . . . . . 346<br />
20.2 Endlicher Mealy-Automat zum Buchstabieren von Maier, Mayer,<br />
Miller und Minsky . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347<br />
21.1 Fehlerraten für verschiedene Sprecher und Erkenner . . . . . . . . . . . . . 355<br />
21.2 Verschiedene Ziele für die Adaption: Signal oder Modelle) . . . . . . . 360<br />
21.3 Label-Boosting Verfahren. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364<br />
21.4 Sprecheradaptives Training (SAT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365<br />
21.5 Spektren für verschiedene Vokaltraktlängen . . . . . . . . . . . . . . . . . . . . 366<br />
21.6 Einfache VTLN-Filterbanktransformation . . . . . . . . . . . . . . . . . . . . . 367<br />
21.7 Verteilung der Spektren für verschiedene Vokaltraktlängen . . . . . . . 368
XXIV Abbildungsverzeichnis<br />
22.1 Maximum Likelihood und Maximum A-Posteriori Klassifikatoren . 373<br />
22.2 Rekurrentes Neuronales Netz nach Jordan und Elman . . . . . . . . . . . 375<br />
22.3 LVQ-Algorithmus als Neuronales Netz . . . . . . . . . . . . . . . . . . . . . . . . 377<br />
22.4 Kohonens selbstorganisierende Karte . . . . . . . . . . . . . . . . . . . . . . . . . . 379<br />
22.5 Typische Folge aktivster Neuronen für das finnische Wort ” humppila“<br />
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380<br />
22.6 Time Delay Neural Network (TDNN) zur Erkennung von b, d, und g381<br />
22.7 Ein Time Delay Neuron . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 382<br />
22.8 Multi-State TDNN für die Wörter W1, . . .Wn . . . . . . . . . . . . . . . . . . 383<br />
22.9 Linked Predictive Neural Networks für kontinuierliche Spracherkennung<br />
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384<br />
22.10 Hierarchische Mixtur von Experten . . . . . . . . . . . . . . . . . . . . . . . . . . . 385<br />
22.11 Domänenadaption mit Hierarchischen Mixturen von Experten . . . . 386<br />
23.1 Verstehen gesprochener Sprache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391<br />
23.2 Verschiedene Arten von Zerteilern (Parsern) . . . . . . . . . . . . . . . . . . . 395<br />
23.3 Der Suchraum beim Bottom-Up-Parsing . . . . . . . . . . . . . . . . . . . . . . . 397<br />
23.4 Der Suchraum beim Top-Down-Parsing . . . . . . . . . . . . . . . . . . . . . . . 398<br />
24.1 Dialogs mit anpaßbarer Freiheit für Benutzereingaben . . . . . . . . . . . 402<br />
24.2 Dialogsystem mit Sprachein- und Sprachausgabe . . . . . . . . . . . . . . . 403<br />
24.3 Wizard-of-Oz-Experimentierumgebung . . . . . . . . . . . . . . . . . . . . . . . . 411<br />
26.1 Schallquellenortung mit 2 Mikrophonen . . . . . . . . . . . . . . . . . . . . . . . 423<br />
26.2 Geschätzter Winkel zur Schallquelle. . . . . . . . . . . . . . . . . . . . . . . . . . . 423<br />
26.3 Zeiten zum Eingeben und Korrigieren eines Textes . . . . . . . . . . . . . . 428<br />
26.4 mehrdimensionaler DTW Algorithmus . . . . . . . . . . . . . . . . . . . . . . . . 429
Abbildungsverzeichnis XXV<br />
28.1 Verschiedene Bereiche der (maschineninvolvierten) <strong>Kommunikation</strong>443<br />
28.2 Synchronisierung von Folien mit Erkennerhypothesen . . . . . . . . . . . 446<br />
28.3 Tracking-Fehler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447<br />
28.4 Beispielaufnahmen von Projektionsflächen . . . . . . . . . . . . . . . . . . . . . 449<br />
28.5 Berechnen der Position des Laserpointers auf der Folie . . . . . . . . . . 450<br />
28.6 Positionsbestimmung bei zusätzlicher optischer Krümmung . . . . . . 451<br />
28.7 Beispiel für eine Wortklasse im Sprachmodell von [RS01] . . . . . . . . 458<br />
28.8 Die FAME Blackboard Architektur . . . . . . . . . . . . . . . . . . . . . . . . . . . 462
1. Nutzen und Anwendungen<br />
Der Einsatz automatischer Spracherkennung kann vielerlei Motive haben.<br />
Zahlreiche Arbeiten, die von <strong>Mensch</strong>en durchgeführt werden, bestehen<br />
darin, gesprochene Sprache in irgend einer Form in Text umzuwandeln. Das<br />
augenscheinlichste Beispiel dafür ist die Bürokraft, die diktierte Briefe tippt.<br />
Oft sind Computer beziehungsweise die auf ihnen laufende Software als<br />
sogenannte Job-Killer verschrien. Die Vergangenheit hat aber gezeigt, daß<br />
kaum Bürokräfte durch den Einsatz eines computergestützten Diktiersystems<br />
überflüssig geworden sind. Im Gegenteil, wie in vielen anderen Bereichen<br />
auch, so hat die Computertechnik auch hier die Arbeit der <strong>Mensch</strong>en eher<br />
erleichtert und um neue Aspekte und Möglichkeiten bereichert. Wir wollen<br />
aber an dieser Stelle nicht weiter ins Philosophisch-Politische abschweifen.<br />
Festzuhalten bleibt, daß Spracherkennung durchaus eingesetzt wird, um<br />
Kosten zu sparen, wo menschliche Arbeitskräfte teuer sind. Die Verschriftung<br />
von Sprache ist aber nur ein kleiner Anwendungsbereich. Ein viel größerer<br />
ist der Bereich der <strong>Mensch</strong>-<strong>Maschine</strong>-<strong>Kommunikation</strong>. Dabei geht es weniger<br />
darum, menschliche Arbeit zu automatisieren, als vielmehr darum, den<br />
ohnehin nötigen Umgang mit <strong>Maschine</strong>n zu erleichtern.<br />
Schließlich gibt es noch einen dritten Bereich nämlich das Ermöglichen<br />
von Aktionen, die ohne automatische Erkennung kaum oder gar nicht<br />
durchführbar wären, wie z.B. das Bedienen von Geräten für Behinderte.<br />
Aber auch für nicht Behinderte gibt es Situationen, in denen eine normale<br />
Bedienung aus verschiedenen Gründen unangebracht ist, wie zum Beispiel<br />
das Wählen einer Telefonnummer auf einem Mobiltelefon oder das Eingeben<br />
eines Reisezieles während der Autofahrt. In diesem Kapitel wollen wir<br />
die Vorteile der Sprache gegenüber anderen Arten der <strong>Kommunikation</strong><br />
beleuchten, den Einsatz automatischer Spracherkennungssysteme anhand<br />
einiger Anwendungsbeispiele motivieren und schließlich einige wichtige<br />
Begriffe im Zusammenhang mit Spracherkennungssystemen einführen und<br />
einen ersten Eindruck von der Schwierigkeit der Materie gewinnen.
2 1. Nutzen und Anwendungen<br />
1.1 Vorteile und Nachteile der Sprache als<br />
Eingabemodus<br />
Die typischen Alternativen zur Sprache für die Eingabe von Informationen<br />
in ein technisches System sind Tastaturen oder auch die Handschrift, wie<br />
man vor allem bei den kleinen Handflächencomputern (Palmtop), die auch<br />
als personal digital assistant (PDA) bezeichnet werden, beobachten kann.<br />
Hin und wieder werden auch ungewöhnliche Eingabemethoden verwendet,<br />
wie z.B. eingeblendete Tastaturen auf PDAs oder die Art wie der berühme<br />
Physiker Stephen Hawking schreibt: Dabei werden im wesentlichen alle<br />
eingebbaren Einheiten (Zeichen oder auch Wörter) zyklisch hervorgehoben,<br />
und es genügt, einen einzigen Auslöser zu betätigen, um das gerade hervorgehobene<br />
Symbol zu übernehmen. Mit einiger Übung und mit einer etwas<br />
intelligenten Auswahl der Reihenfolge der Präsentation der Zeichen kann<br />
auf dieser Art immer noch eine recht brauchbare Eingabegeschwindigkeit<br />
erreicht werden. Es ist allerdings so, daß für den durchschnittlichen Benutzer<br />
von Computern die Sprache immer noch der schnellste Modus der<br />
Informationsübertragung vom <strong>Mensch</strong>en in die <strong>Maschine</strong> ist. Ein Vergleich<br />
verschiedener ” Übertragungsraten“ ist in Tabelle 1.1 angegeben.<br />
Eingabemodus Durchschnitt Spitzenleistung<br />
Handschrift 200 500<br />
Tastatur 200 1000<br />
Stenographie 500 2000<br />
Sprache 1000 4000<br />
Tabelle 1.1. Eingabegeschwindigkeiten verschiedener Modalitäten (Zeichen pro<br />
Minute)<br />
Außer der reinen Eingabegeschwindigkeit bietet die Spracherkennung<br />
auch einen Produktivitätsgewinn dadurch, daß andere Handlungen<br />
ermöglicht werden, die sonst nicht einfach möglich wären. Wenn z.B. die<br />
Hände nicht zum Bedienen einer Tastatur benötigt werden, können diese<br />
in der Zeit andere Aufgaben erledigen. So kann eine Person eine Inventur<br />
durchführen, dabei mit den Händen die Waren sortieren und gleichzeitig per<br />
Sprache ein Protokoll aufnehmen. Ein Chirurg kann mit den Händen eine<br />
Operation durchführen und per Sprache den Assistenzroboter bedienen.<br />
Neben der Entlastung der Hände bietet die Spracheingabe für viele Leute<br />
auch eine Entlastung der Augen. Viele Aufgaben mit Informationseingabe
1.1 Vorteile und Nachteile der Sprache als Eingabemodus 3<br />
können nur dann gut erledigt werden, wenn der Blick auf die Tastatur<br />
gerichtet ist oder zumindest auf den Bildschirm, um sicherzustellen, daß<br />
beim Tippen keine Fehler gemacht werden. Wenn es sinnvoll ist, daß die<br />
Aufmerksamkeit auf etwas anderes gerichtet ist als den Computer, wie<br />
zum Beispiel in einem fahrenden Auto, dann ist eine Dateneingabe per<br />
Sprache besonders sinnvoll. Sprachgesteuerte Autotelefone sind heute schon<br />
Standard. Erste Navigationssysteme mit Spracheingabe sind auf dem Weg<br />
zum Produkt.<br />
Sprache kann auch als zusätzliche Eingabemodalität neben anderen eingesetzt<br />
werden. So kann man Sprache zusammen mit Handschrifterkennung<br />
und der Erkennung von Gesten koppeln. Als Beispiel dafür stellt [?] und<br />
[?] einen Terminkalender vor. Man kann wie bei PDAs Termine per Stift<br />
(Handschrift) oder Tastatur eingeben, man kann Bereiche auswählen und<br />
verschieben, Wörter unterstreichen oder durchstreichen. So kann man zum<br />
Beispiel einen Termin mit dem Stift auswählen und sagen ” Verschiebe diesen<br />
Termin auf Mittwoch“.<br />
Sprache ist nicht nur die natürlichste Art der <strong>Kommunikation</strong> für<br />
<strong>Mensch</strong>en, sie ist auch für einige Übertragungskanäle am besten geeignet.<br />
So zum Beispiel das Telefon. Um einen Videorecorder von unterwegs zu programmieren,<br />
wäre es am einfachsten, diesen per (Mobil-)Telefon anzurufen<br />
und ihm zu sagen, ” was man möchte“.<br />
Aber selbst in Situationen, in denen Dateneingaben selten sind, Sprache<br />
keinen Geschwindigkeitsvorteil gegenüber anderen Modalitäten hätte und<br />
auch kein Problem mit der Aufmerksamkeit oder der Verfügbarkeit der<br />
Hände besteht, gibt es viele Fällen, in denen Sprache trotzdem das <strong>Kommunikation</strong>smittel<br />
der Wahl ist. Dies zum Beispiel deshalb, weil Mikrophone<br />
wesentlich leichter und kleiner sind als Tastaturen. Damit sind sie einfacher<br />
zu transportieren und am Körper beziehungsweise der Kleidung zu befestigen<br />
und man kann sogar während der Bewegung Daten eingeben oder Texte<br />
diktieren.<br />
Schließlich bleibt noch zu erwähnen, das Sprache nicht nur für Blinde<br />
sondern auch für Sehende in der Dunkelheit zur <strong>Kommunikation</strong> geeignet ist.<br />
Allerdings gibt es auch ebenso Situationen, in denen Sprache unerwünscht<br />
ist, zum Beispiel wenn dadurch andere Personen gestört werden könnten<br />
(Restaurant, Theater), oder in Umgebungen, in denen die Erkennungsrate<br />
besonders schlecht ist (Fußballstadion, Cocktailparty) oder nahezu bei null<br />
wäre (beim Schnorcheln). In solchen Fällen wird man in absehbarer Zukunft<br />
auch weiterhin Tastaturen verwenden.
4 1. Nutzen und Anwendungen<br />
1.2 Anwendungsbeispiele<br />
Seit es kommerzielle Diktiersysteme sehr günstig zu kaufen gibt und<br />
Sprachsteuerung sogar bei einigen Betriebssystemen und Anwendungsprogrammen<br />
mit dabei ist, hört man oft die Meinung, daß das Problem der<br />
Spracherkennung schon gelöst ist. Vergleicht man aber die Fähigkeiten<br />
dieser Diktiersysteme mit denen von <strong>Mensch</strong>en, stellt man schnell fest, daß<br />
noch sehr viel Potential für Verbesserungen vorhanden ist und noch viel<br />
Entwicklungsaufwand zu erwarten ist. Selbst unter idealen Bedingungen –<br />
stille Umgebung, saubere Artikulation, gutes Nahbesprechungsmikrophon<br />
und ein dem System bekannter Sprecher – machen Diktiersysteme immer<br />
noch wesentlich mehr Fehler als <strong>Mensch</strong>en.<br />
In einigen Untersuchungen [?] [?] wurde bei Versuchspersonen, denen<br />
Aufnahmen von Diktaten einiger Journalisten vorgespielt wurden, eine<br />
Wortfehlerrate von deutlich unter 1% gemessen. Ein Großteil der Fehler<br />
bestand zudem aus entschuldbaren falschen Schreibweisen von Eigennamen<br />
oder unterschiedlicher Interpretation verschiedener Wörtern mit gleicher<br />
Aussprache (sog. Homophone wie ” two“ und ” too“).<br />
Wenn wir aber von den Idealbedingungen für automatische Spracherkennung<br />
abweichen, stellen wir schnell fest, daß die Genauigkeit dramatisch<br />
nachläßt. Selbst das Wechseln des Teppichbodens in einem Büro kann schon<br />
dazu führen, daß die Zahl der Fehler eines Diktiersystems spürbar ansteigt.<br />
Bei zahlreichen Anwendungen für automatische Spracherkenner, die über<br />
das Diktieren hinausgehen, herrschen keine Idealbedingungen. Dort gibt es<br />
noch sehr viel Forschungsbedarf. Im folgenden werden einige Gebiete für den<br />
Einsatz von Spracherkenner vorgestellt und diskutiert.<br />
1.2.1 Diktieren<br />
Für viele ist die naheliegendste Anwendung für Spracherkennung das<br />
Diktieren. Das kommt auch daher, daß bereits zahlreiche Produkte dafür<br />
erhältlich sind. Das erste auf handelsüblichen Personalcomputern wirklich<br />
sinnvoll nutzbare Diktiersystem wurde Anfang der neunziger Jahre von der<br />
amerikanischen Firma Dragon Systems unter dem Namen ” Dragon Dictate“<br />
eingeführt. Es war ein sprecherabhängiges Einzelworterkennungssystem.<br />
Dabei mußten Diktate so gesprochen werden, daß zwischen je zwei Wörtern<br />
eine Pause mit einer Mindestlänge (ca. 1/10 Sekunde) gemacht werden mußte.<br />
Inzwischen sind PC-basierte Diktiersysteme in der Lage, kontinuierlich<br />
gesprochene Sprache zu erkennen. Die Sprecherabhängigkeit nimmt auch<br />
ständig ab.
1.2 Anwendungsbeispiele 5<br />
Die Erkennungsleistungen kommerziell erhältlicher Erkenner sind schon<br />
im sprecherunabhängigen Zustand (also noch bevor der Erkenner auf einen<br />
bestimmten Sprecher eintrainiert wurde) so hoch, daß damit bestimmte<br />
kleinere Aufgaben relativ zuverlässig gelöst werden können. Um beim<br />
fließenden Diktieren jedoch so wenige Fehler wie möglich zu machen, ist es<br />
immer noch hilfreich, den Erkenner auf die Stimme des Diktierenden zu<br />
adaptieren. Diktiersysteme funktionieren um so besser, je bekannter und<br />
eingeschränkter die Domäne, das Themengebiet des Diktats, ist. Wenn ein<br />
Diktiersystem zum Diktieren beliebiger Briefe verwendet wird, macht es<br />
mehr Fehler als wenn es in einer relativ kleinen bekannten Domäne wie<br />
zum Beispiel das Diktieren von ärztlichen Diagnosen oder pathologischen<br />
Berichten oder Anklageschriften eines Anwalts verwendet wird. Dabei<br />
haben automatische Spracherkenner mit komplizierten Wörtern, wie sie<br />
oft von Fachleuten eines Gebietes verwendet werden, überraschenderweise<br />
sehr wenige Schwierigkeiten, während ihnen alltägliche Begriffe meist mehr<br />
Probleme bereiten. Dieser Sachverhalt wird in späteren Kapiteln erklärt.<br />
1.2.2 Steuerung von Geräten<br />
Während noch vor wenigen Generationen die Eltern ihren Kindern die<br />
Benutzung von ” Geräten“ in Haus und Hof zunächst verbaten und wenn sie<br />
alt genug waren, erklärten, kann man heute immer öfter den Fall beobachten,<br />
daß Kinder ihren Eltern erklären müssen, wie der Computer funktioniert,<br />
wie man ins Internet kommt, den neuen Herd, die Kaffeemaschine, den<br />
Wecker oder den Videorecorder programmiert. Offensichtlich übersteigt<br />
die Komplexität vieler moderner Geräte die Bereitschaft vieler <strong>Mensch</strong>en,<br />
den Umgang mit Ihnen zu lernen. Es gibt zwar Tendenzen, die Bedienung<br />
komplizierter Geräte zu vereinfachen, allerdings steigt oft auch parallel dazu<br />
Funktionsumfang derselben immer weiter an.<br />
Eine Studie der Universität Dortmund [?] kommt zu dem Schluß:<br />
” Betrachtet man die Zugriffsmöglichkeiten, so erscheint einem die<br />
sprachliche <strong>Kommunikation</strong> am geeignetsten, weil sie für den Bewohner am<br />
einfachsten zu benutzen ist und wohl auch die gewünschten Informationen<br />
am schnellsten vermittelt.“<br />
Auf die Frage, welches Gerät im Haushalt am schwierigsten zu bedienen<br />
ist, nennen die meisten <strong>Mensch</strong>en den Videorecorder, obwohl es inzwischen<br />
recht viele Vereinfachungen für seine Programmierung gibt. So gibt es relativ<br />
verständliche Menüs, den Zugriff über Videotext-Seiten, die Verwendung<br />
von ShowView Nummern und ähnliches. Die Ausschreibung zu einer Di-
6 1. Nutzen und Anwendungen<br />
plomarbeit der ETH Zürich [?] meint sogar:<br />
” Moderne Geräte sind sehr flexibel und bieten eine große Zahl von Parametern,<br />
welche überwacht und eingestellt werden können. Diese Freiheit wird<br />
aber schnell zu einem Nachteil, wenn dadurch die Bedienung so kompliziert<br />
wird, daß der Anwender die Übersicht verliert. Man denke z.B. an gewisse<br />
Videorecorder, welche praktisch nur noch von Spezialisten bedient werden<br />
können.“<br />
und von Wiener Verein für Konsumenteninformation [?] stammt ein<br />
Gerätetest, dessen Ergebnis für die Designer von Benutzerschnittstellen ein<br />
vernichtendes Urteil ausstellt:<br />
” Die Programmierung eines Videorecorders ist nicht nur für technische<br />
Laien ein Problem. Auch erfahrene Tester der Zeitschrift Konsument hatten<br />
Probleme, anhand der Bedienungsanleitung die beschriebenen Programmierschritte<br />
nachzuvollziehen. In seinem Hifi-Videorecodertest nahm Konsument<br />
insgesamt 17 Modelle der neuen Generation unter die Lupe und prüfte<br />
auch die Bedienungsfreundlichkeit der Geräte. Abgesehen von der sehr<br />
zeitraubenden Tätigkeit, scheiterten die Tester auch an der Programmierung<br />
von vier Modellen. Gründe für die Misere sind die meist unverständlich<br />
formulierten Gebrauchsanleitungen und die verunglückten Konstruktionen<br />
der Fernbedienungen.“<br />
Wäre es da nicht wesentlich besser, ganz ohne Bedienungsanleitungen<br />
auszukommen? Wenn wir uns fragen, wie die Bedienung eines Gerätes<br />
aussehen müßte, damit man es benutzen kann, ohne sich vorher über die<br />
Funktionsweise informiert zu haben, dann lautet die häufigste Antwort:<br />
” Am besten wäre es, wenn man dem Gerät einfach sagt, was man will“. Das<br />
gilt nicht nur für komplizierte Geräte wie Videorecorder sondern auch für<br />
vermeintlich einfache, wie Fahrkartenautomaten. Der Autor selbst ist schon<br />
vor einem solchen der Münchner U-Bahn gestanden und mußte zugeben,<br />
daß es ihm nicht möglich war innerhalb einer Minute festzustellen, welche<br />
Karte wohl am geeignetsten war, damit zwei Personen ein Wochenende in<br />
München verbringen und dabei ein paar anvisierte Ziele besuchten. Wäre<br />
es nicht besser gewesen, wenn man dem Automaten einfach hätte sagen<br />
können: Wir zwei wollen bis Sonntag abend bleiben, das Olympiastadion,<br />
”<br />
das Deutsche Museum, das Platzl, die Wiesn und noch so zwei drei andere<br />
Attraktionen besuchen. Bitte das dafür günstigste Ticket.“.
1.2.3 Sprach-zu-Sprach-Übersetzung<br />
1.2 Anwendungsbeispiele 7<br />
Im Jahr 1992 wurde vom Bundesministerium für Forschung und Technik<br />
das Projekt VERBMOBIL ausgeschrieben, das zum Ziel hatte, ein kleines,<br />
portables Sprach-zu-Sprach-Übersetzungssystem zu entwickeln, mit dem sich<br />
Geschäftsleute mit Partnern, deren Sprache sie nicht sprechen, unterhalten<br />
können. Es konnte zwar ein Vorführgerät entwickelt werden, aber die<br />
Leistung – insbesondere der Komponenten, die nach der Erkennung für die<br />
Übersetzung des Erkannten zuständig waren – hinter den ursprünglichen<br />
Hoffnungen zurückblieb. Eine brauchbare Übersetzungsrate konnte nur für<br />
stark eingeschränkte Aufgaben wie zum Beispiel die Vereinbarung eines<br />
Termins erreicht werden.<br />
1.2.4 Hilfe für Behinderte<br />
Für blinde <strong>Mensch</strong>en ist meist das Gehör der wichtigste der Sinne. So<br />
ist hat auch die akustische <strong>Kommunikation</strong> einen wesentlich höheren<br />
Stellenwert als bei Sehenden. Wie sehr wir auf die visuelle Information<br />
um uns herum angewiesen sind, merken wir erst, wenn wir sie nicht mehr<br />
haben. Wir brauchen sie nicht nur, um selbst Nachrichten zu empfangen,<br />
wir brauchen sie auch, um Nachrichten abzuschicken. Um einen Text in<br />
das Textverarbeitungssystem einzugeben müssen wir uns vorher die visuelle<br />
Information über die Position der Tasten besorgen. Und weil wir beim<br />
Schreiben viele Fehler machen, brauchen wir ständiges Feedback, um zu<br />
kontrollieren, ob das was wir tippen wollten, auch wirklich angekommen ist.<br />
Für Blinde fehlt sowohl die visuelle Orientierung als auch das Feedback.<br />
Obwohl viele Blinde erstaunliche Fähigkeiten entwickeln, um trotzdem in<br />
ihrer Umgebung zurecht zu kommen, so sind die Problemlösungsstrategien<br />
oft mit erheblichem Mehraufwand – sowohl zeitlich als auch technisch –<br />
verbunden. Computertastaturen können mit einer zusätzlichen Braille-Zeile<br />
ausgestattet sein, aber das Lesen von Braille geht selbst für den schnellsten<br />
Leser immer noch viel langsamer als das Lesen von gedrucktem Text mit<br />
sehenden Augen. Das Leben könnte für Blinde wesentlich erleichtert werden,<br />
wenn sie weniger auf die oben beschriebenen Orientierungs- und Feedbackinformationen<br />
angewiesen wären. Wäre es nicht wesentlich einfacher, in einen<br />
Fahrstuhl zu steigen und das gewünschte Ziel zu sagen, statt erst die Wände<br />
nach den Knöpfen abzusuchen und dann mit etwas Glück aus der Anordnung<br />
dieser herauszuinterpretieren, welcher was bedeuten könnte. Zwar sieht man<br />
oft auch mit Braille beschriftete Tasten in Fahrstühlen, aber es gibt immer<br />
noch zahlreiche Geräte und <strong>Maschine</strong>n, für die das nicht gilt. Versuchen Sie<br />
einmal, ohne Hinzusehen Ihren Videorecorder zu programmieren, sofern das<br />
nicht auch mit Hinsehen problematisch ist.
8 1. Nutzen und Anwendungen<br />
Wo immer eine ” mechanische“ Bedienung für bestimmte Personen problematisch<br />
ist, sei dies mangels visuellen Informationskanals oder mangels<br />
Mobilität, bietet sich die natürliche Sprache an. Dies gilt vor allem für<br />
Gelähmte oder auf andere Art körperlich beeinträchtigte.<br />
Aber auch normalerweise nicht behinderte <strong>Mensch</strong>en finden sich hin und<br />
wieder in Situationen, in denen sie in ihrer Mobilität den Behinderten nicht<br />
im Vorteil sind. So zum Beispiel als Patient im Krankenhaus. Das Rufen<br />
nach Hilfe wird auch heute schon in einigen Krankenhäusern per Stimme<br />
und nicht nur per Drücken auf einen Schalter ermöglicht. Viele einfache<br />
Handlungen, wie zum Beispiel das Einstellen der Temperatur, das Wählen<br />
des Fernsehsenders oder das Ein- und Ausschalten des Lichts können in<br />
solchen Fällen vom Patienten allein ohne fremde Hilfe durchgeführt werden.<br />
1.2.5 Indexierung akustischer Dokumente<br />
Im Zeitalter des Internets mit E-Mails und dem World Wide Web und in<br />
Zeiten, in denen Fernsehnachrichten einen viel größeren Beitrag zur Verbreitung<br />
von Nachrichten leisten als Zeitschriften, verwischt die Bedeutung<br />
des Begriffs Dokument. Während vor nicht allzu langer Zeit darunter nur<br />
beschriebenes Papier gemeint war werden heute damit auch Daten auf<br />
Datenträgern und Video- oder Audioaufnahmen bezeichnet. In den Archiven<br />
der Fernsehanstalten lagern Millionen von Bändern mit Aufzeichnungen von<br />
Nachrichten, Reportagen, Spielfilmen und anderem. Alle diese ” Dokumente“<br />
müssen mühsam durchsucht und angesehen werden um eine Datenbasis mit<br />
deren Inhalten zu erstellen. Wenn die Inhaltsangaben sehr detailliert sein<br />
sollen, dann erfordert das viel Zeit und viel menschliche Arbeitsleistung.<br />
Aber nicht nur die Indexerstellung für archivierte Dokumente, sondern auch<br />
die für die Flut der täglich neu auf uns einstürzenden Informationsfluten<br />
ruft nach einer Automatisierung.<br />
Die Spracherkennung bietet dafür ein brauchbares Mittel. Auch wenn die<br />
Erkennungsraten noch deutlich unter 100% liegen, so genügt doch meistens<br />
die Erkennung einiger wichtiger inhaltstragender Wörter um das Thema<br />
einer Sendung oder eines Nachrichtenblocks zu identifizieren.<br />
Mehrere Projekte (z.B. das Informedia Projekt Informedia an der Carnegie<br />
Mellon University in Pittsburgh, USA [?] [?] und das View4You Projekt<br />
der Universität Karlsruhe [?] [?] [?]) beschäftigen sich mit dem Thema, auf<br />
mündliche Anfrage des Benutzers Videoclips aus den Nachrichten der letzten<br />
Zeit herauszusuchen. So kann der Benutzer zum Beispiel fragen ” Was gibt<br />
es Neues von der Börse?“ und das System liefert daraufhin Nachrichten zum
Thema Börse.<br />
1.2 Anwendungsbeispiele 9<br />
Diese Vorgehensweise wird auch immer mehr für die im Internet erhältlichen<br />
Dokumente interessant. Die gestiegenen Übertragungsraten und<br />
die immer größeren zur Verfügung stehenden Bandbreiten verleiten die<br />
Netzgemeinde dazu mehr Audio- und Videodokumente zu publizieren. Wenn<br />
Suchmaschinen irgendwann auch WWW-Seiten finden sollen, in denen ein<br />
Film über ein bestimmtes Thema vorkommt, dann wird die automatische<br />
Spracherkennung dazu gute Dienste leisten.<br />
1.2.6 Sprecheridentifikation und Authentifikation<br />
Die Erkenntnis, daß sprecherabhängige Spracherkenner wesentlich bessere<br />
Erkennungsleistungen erreichen als sprecherunabhängige, hat schon früh<br />
dazu geführt, daß die Eigenschaften der Stimme, die einen Sprecher vom<br />
anderen unterscheiden, detektiert und dazu verwendet werden, den aktuellen<br />
Sprecher zu identifizieren. In den heutigen Zeiten, in denen die meiste<br />
<strong>Kommunikation</strong> elektronisch stattfinden und in denen die Prüfung der<br />
Korrektheit einer Urkunde aus Papier sich schwieriger gestalten kann als<br />
die Prüfung eines elektronischen Dokuments werden immer mehr Methoden<br />
gesucht, die eine möglichst sichere Identifikation von Personen garantieren.<br />
Dazu gehört auch die Authentifikation per Stimme. Automatische Portale,<br />
die durchgehende Personen filmen und zum Sprechen eines Paßwortes auffordern,<br />
können nur sehr schwer getäuscht werden. Es gibt zwar Eigenschaften<br />
des menschlichen Körpers, die noch eindeutiger sind als seine Stimme (z.B.<br />
die Fingerabdrücke oder die Muster der Blutgefäße in der Retina), aber<br />
nicht immer ist es opportun, diese Eigenschaften zu messen. Insbesondere<br />
bei akustischen Dokumenten, von denen es im Internet- und Multimedia-<br />
Zeitalter immer mehr gibt, wird die Feststellung der Authentizität immer<br />
wichtiger werden.<br />
Allerdings gab es den Bedarf für Sprecheridentifikation schon sehr früh.<br />
Schon zur Zeit des zweiten Weltkriegs, als der Einsatz von Telekommunikationseinrichtungen<br />
(Telefonen, Funkgeräten) vermehrt vorkam, entstand die<br />
Notwendigkeit der Feststellung, daß diejenige Person am anderen Ende der<br />
Leitung autorisiert ist, Kommandos zu geben, bzw. diejenige ist, für die sie<br />
sich ausgibt. So wurden schon damals Forschungsarbeiten durchgeführt, die<br />
die automatische Überprüfung der ” ID-of-Command“ zum Ziel hatten.<br />
Auch bei der Untersuchung von Flugzeugabstürzen wurden schon zur<br />
damaligen Zeit Tonbandaufnahmen aus dem Cockpit verwendet, auf denen<br />
die Sprecher automatisch identifiziert wurden. Und in der Forensik kommt<br />
es immer wieder vor, daß akustische Aufnahmen eindeutig einer Person
10 1. Nutzen und Anwendungen<br />
zugeordnet werden müssen. Dabei ist es auch möglich, Stimmenimitatoren,<br />
die die Stimme eines anderen für menschliche Ohren täuschend ähnlich<br />
nachmachen können, zu entlarven.<br />
1.2.7 Identifikation von Sprachen<br />
Es gibt verschiedene Gründe, warum die Identifikation einer Sprache in<br />
einer Aufnahme nützlich sein kann. Immer dann, wenn eine Entscheidung<br />
aufgrund der Sprache getroffen werden muß, z.B. bei einem automatischen<br />
Übersetzungssystem oder einer Anrufer-Hotline, bei der <strong>Mensch</strong>en aus aller<br />
Welt anrufen können, kann die <strong>Kommunikation</strong> bequemer gemacht werden,<br />
wenn die Sprache, in der der Sprecher spricht, automatisch erkannt wird, und<br />
die entsprechende Übersetzungsmaschine aufgerufen wird oder der Anrufer<br />
mit einer Person verbunden wird, die seine Sprache spricht. Ein derartiges<br />
System wurde eine Zeit lang in Südkalifornien eingesetzt. Dort ist es nicht<br />
unüblich, daß viele <strong>Mensch</strong>en des Englischen nicht ausreichend mächtig sind,<br />
um z.B. bei einem Anruf der Nummer 911 wegen eines Notfalls ihr Problem<br />
zu beschreiben. Viele reden einfach auf spanisch oder chinesisch oder in einer<br />
anderen Sprach los. Das eingesetzte System war in der Lage, automatisch<br />
zu erkennen, welche Sprache der Anrufer sprach und konnte so diesen mit<br />
einem seine Sprache verstehenden menschlichen Telefonisten verbinden.<br />
1.2.8 Unterhaltung<br />
Eine nicht zu unterschätzende Bedeutung für die automatische Spracherkennung<br />
ist die Unterhaltung. Hiermit ist nicht die deutsche Übersetzung<br />
des englischen conversation sondern des englischen entertainment gemeint.<br />
Sprachgesteuerte Computerspiele und sprachgesteuertes Spielzeug werden in<br />
naher Zukunft völlig normal sein. Viele technische Neuerungen haben ihren<br />
Siegeszug im Bereich der Unterhaltungssoftware oder der Spielzeugwelt<br />
angetreten bevor sie dann später in ” ernsthafteren“ Anwendungen Einsatz<br />
fanden. So wurden zum Beispiel zahlreiche graphische Algorithmen aufgrund<br />
der Anforderungen von Computerspielen entwickelt. Schließlich sollte man<br />
sich auch bewußt machen, daß in der heutigen Welt auch die Unterhaltungsindustrie<br />
einen wichtigen Anteil an unserem Wohlstand hat. Die Umsätze,<br />
die mit Spielesoftware und -hardware gemacht werden, sind in etwa in der<br />
gleichen Größenordnung wie sie mit Bürosoftware gemacht werden.
1.2.9 Hilfe beim Lesen und Sprechen Lernen<br />
1.2 Anwendungsbeispiele 11<br />
Mitte der neunziger Jahre wurde an der Carnegie Mellon University (CMU)<br />
ein Projekt durchgeführt, das zum Ziel hatte, Kindern das Lesenlernen zu<br />
erleichtern. Motiviert wurde es durch die Meldung der US-Regierung, daß<br />
der Schaden, der in den USA jährlich durch Analphabetismus entsteht, sich<br />
auf ca. 100 Millionen Dollar beziffern läßt. Auch wenn die häufigsten Gründe<br />
für Analphabetismus eher sozialer Natur sind und weniger auf Probleme mit<br />
dem Lernen zurückzuführen sind, so gibt es doch viele Kinder, denen das<br />
Lesen und Schreiben leichter gemacht werden kann, indem man sie mit Spaß<br />
bereitenden Lernhilfeprogrammen dabei unterstützt. Das CMU-Projekt<br />
LISTEN [?] [?], verwendet automatische Spracherkenner, um Kindern beim<br />
Vorlesen von auf dem Bildschirm eingeblendeten Texten, ein Feedback zu<br />
geben. Wenn der Text korrekt vorgelesen wird und das System mit lustigen<br />
ermunternden Antworten reagiert, wird das Kind gelobt und dazu motiviert,<br />
noch mehr zu lesen. In einigen Experimenten konnte gezeigt werden, daß<br />
Kinder, die solche Systeme verwenden, im Durchschnitt schneller lernen als<br />
andere.<br />
1.2.10 Erkennung im fahrenden Fahrzeug<br />
Eine ganz besonders sinnvolle Anwendung für automatische Spracherkennung<br />
ist die Bedienung von Geräten in fahrenden Fahrzeugen. In den letzten<br />
Jahren wurde in den meisten Ländern Europas das Telefonieren während der<br />
Fahrt aus Sicherheitsgründen gesetzlich eingeschränkt. In einigen Ländern<br />
dürfen während der Fahrt sogar nur Telefone verwendet werden, die es<br />
ermöglichen, die Nummer des gewünschten Gesprächspartners per Stimme<br />
einzugeben. Oft ist es nämlich der Wählprozeß, bei dem die Autofahrer am<br />
meisten abgelenkt werden und am längsten den Blick von der Straße nehmen.<br />
Bereits heute gibt es relativ gut funktionierende Spracherkenner, die das<br />
Wählen per Stimme ermöglichen. Typischerweise erwarten sie eine kurze<br />
Einlernphase, in der der Benutzer die Namen der möglichen Gesprächspartner<br />
vorsprechen und so eintrainieren muß. Dadurch werden die Erkenner<br />
sprecherabhängig. Einige Systeme ermöglichen sogar eine sprecherunabhängige<br />
Erkennung der Ziffern 0 bis 9 und einiger spezieller vorgegebener<br />
Kommandos. Außer der Bedienung von Mobiltelefonen gibt es auf ähnliche<br />
Weise funktionierende Systeme zur Steuerung bestimmter Funktionen<br />
elektrischer und elektronischer Geräte im Auto. Über die Sinnhaftigkeit, die<br />
Lautstärke oder den Sender des Autoradios per Stimme einzustellen, mag<br />
man streiten. Typischerweise sind die dazu nötige Zeit und Aufmerksamkeit<br />
relativ gering. Die Steuerung sicherheitsrelevanter Funktionen wie Bremsen,<br />
Beleuchtung und so weiter wird man auf absehbare Zeit nicht automatischen
12 1. Nutzen und Anwendungen<br />
Spracherkennern überlassen, solange die Erkennungsgenauigkeit nicht sehr<br />
nahe bei 100% liegt.<br />
Es ist aber zu erwarten, daß in Zukunft im Auto einige zusätzliche<br />
Funktionen einziehen werden, die heute noch gar nicht oder nur wenig<br />
verbreitet sind. Alle Hersteller von Automobilen planen für die Zukunft<br />
sogenannte Car-PCs, also vollwertige Computer mit leistungsstarker Hardware,<br />
einem Betriebsystem und vielfältiger Software. Viele Funktionen, die<br />
heute in verschiedenen Geräten stecken (Radio, Navigation, Bordelektronik,<br />
Fahrtenbuch etc.) können dann in einem Gerät vereint werden. Das wird<br />
zum einen Kosten senken und zum anderen neue interessante Möglichkeiten<br />
eröffnen. Insbesondere wird es möglich sein, während der Fahrt Arbeiten zu<br />
erledigen, die heute kaum machbar sind. So werden Autofahrer das Auto<br />
auch als mobiles Büro nutzen können. Das Auto wird eine Verbindung zum<br />
Internet haben, es wird möglich sein, E-Mails zu diktieren, abzuschicken<br />
oder E-Mails von anderen Leuten zu empfangen. Man wird während der<br />
Fahrt im World-Wide-Web surfen können, das Navigationssystem wird<br />
nicht nur den Weg zum Ziel weisen, sondern wird sich mit dem Fahrer<br />
unterhalten können und auch über freie Hotelzimmer und Zimmerpreise, die<br />
Speisekarten naheliegender Restaurants oder die aktuellen Programme der<br />
Kinos in der Umgebung informieren. Eine derart komplizierte Interaktion<br />
kann – wenn überhaupt – nur mit natürlicher Sprache gemacht werden. Es<br />
wäre dem Fahrer weder zuzumuten, seine Eingaben per Tastatur oder Mini-<br />
Joystick zu machen, noch daß er eine Sammlung von Kommandowörtern<br />
oder Sequenzen derselben auswendig lernen müßte, um die Funktionen des<br />
Car-PCs zu steuern. Spontane unvorbereitete Sprache ist aber wesentlich<br />
schwieriger zu erkennen als zum Beispiel sorgfältig vorgelesene Sprache. Die<br />
grammatikalische Korrektheit und die Freiheit von Aussprachefehlern wird<br />
auch nachlassen, wenn wie beim Autofahren davon auszugehen ist, daß die<br />
Hauptkonzentration des Sprecher bei anderen Aktivitäten als dem Sprechen<br />
liegt, nämlich dem Beobachten des Verkehrs und dem Führen des Fahrzeugs.<br />
Schließlich kommt noch eine dritte Problematik hinzu: Die akustischen<br />
Verhältnisse in Fahrenden Autos sind alles andere als ideal. Störgeräusche<br />
kommen vom Motor, dem Autoradio, Blinkern, Scheibenwischern, dem<br />
Fahrtwind, eventuellem Regen und von anderen Verkehrsteilnehmern. Die<br />
Qualität des Sprachsignals, hängt zudem von der Kopfstellung des Fahrers<br />
ab und davon, ob die Fenster geöffnet oder geschlossen sind.<br />
Die Anstrengungen auf dem Gebiet der Spracherkennung im Auto zielen<br />
vor allem auf die Problematik der großen Variabilität und der niedrigen<br />
Qualität der Sprachsignale ab. In [?] [?] wird gezeigt, wie es möglich ist,<br />
basierend auf Spracherkennern, die für Erkennung in einer Büroumgebung<br />
entwickelt wurden, durch kleine Änderung und durch das Wissen über die<br />
typischen Geräusche in Autos, automatisch Erkenner zu erzeugen, die in
1.2 Anwendungsbeispiele 13<br />
Fahrenden Fahrzeugen mindestens so gut funktionieren wie Erkenner, die<br />
speziell für die Erkennung im Auto mit im Auto gesammelten Beispieldaten<br />
trainiert wurden.<br />
1.2.11 Persönliche Digitale Assistenten (PDAs)<br />
Mobilität macht sich heute nicht nur durch Auto-Mobilität bemerkbar, sondern<br />
vor allem auch dadurch, daß Dinge, die früher stationär waren, relativ<br />
leicht portabel werden. Dazu gehören Geräte wie Telefone, Fernsehempfänger<br />
und Computer. Diese verschmelzen sogar immer mehr miteinander. PDAs<br />
werden heute schon mit Mobilfunkfähigkeit ausgestattet, und so manches<br />
Mobiltelefon bietet seinem Benutzer nicht nur die Möglichkeit, einfach<br />
Spiele zum Zeitvertreib zu spielen, sondern sogar volle Programmierbarkeit<br />
in verschiedenen Programmiersprachen und die Funktionalität, die typischerweise<br />
in PDAs vorhanden ist, wie Terminkalender, Notizblock und<br />
Adressensammlung. Im Hinblick auf die baldige Einführung der UMTS<br />
Technik wird heute schon neben der Möglichkeit der Bildtelefonie davon<br />
gesprochen, daß Internetinhalte wie Videos oder sogar Live-Empfang von<br />
digitalem Fernsehen dargestellt werden können.<br />
Die meisten Benutzer bevorzugen leichte und kleine Geräte, die unproblematisch<br />
mitzuführen sind. Aber je kleiner die Geräte werden, umso<br />
schwieriger wird es, Tastaturen oder andere Eingabegeräte unterzubringen.<br />
Die meisten Mobiltelefone haben eine Tastatur mit nur wenigen Tasten,<br />
so daß Eingeben von Texten zum Beispiel für SMS sehr umständlich und<br />
langwierig ist. Selbst mit viel Übung dauert es wesentlich länger als auf<br />
einer Standard Computertastatur. Einige Geräte bieten die Möglichkeit<br />
an, Eingaben mit Hilfe eines Stiftes auf einer berührungsempfindlichen<br />
Oberfläche zu machen. Dabei können Zeichen nach vorgegebenem Muster<br />
oder sogar in der eigenen vorher einzutrainierender Handschrift geschrieben<br />
werden. Dies kann zwar mit etwas Übung deutlich schneller gehen als mit<br />
einer kleinen Telefontastatur, allerdings braucht man in der Regel dazu beide<br />
Hände und den freien Blick auf die Geräte, was sie in vielen Situationen<br />
kaum benutzbar macht.<br />
Einige PDAs bieten schon heute Spracherkennungsfähigkeiten. Allerdings<br />
sind diese vor allem wegen der noch zu geringen Rechenleistung der<br />
Geräte sehr schwach. Das erkennen einzelner isolierter Kommandos aus<br />
einer vorgegebenen relativ kleinen Menge von Kommandos funktioniert<br />
ausreichend gut, aber das Diktieren von Briefen oder gar freies spontanes<br />
Sprechen beliebiger Inhalte wird auf PDAs noch etwas länger dauern als<br />
es ohnehin schon für Desktop PCs dauern wird. Zweifellos wird aber die
14 1. Nutzen und Anwendungen<br />
Spracherkennung die Verwendbarkeit von PDAs wesentlich verbessern.<br />
1.2.12 Mobile Informationssysteme<br />
Betrachten wir die Entwicklung in der Informationstechnologie der letzten<br />
Jahre und Jahrzehnte, so läßt sich eins deutlich erkennen. Eine der am<br />
meisten florierenden Sparten ist die der mobilen <strong>Kommunikation</strong>. Die<br />
Mobiltelefonie hat seit Anfang der neunziger Jahre einen Aufschwung erlebt,<br />
den damals niemand ernsthaft vorherzusagen wagte. Die Geschwindigkeit,<br />
mit der neue Telefon-Hardware und neue Dienste angeboten werden ist<br />
atemberaubend. Bereits heute übertrifft der Leistungsumfang und die Miniaturisierung<br />
der Geräte bei weitem das, was man sich zum Beispiel in den<br />
sechziger Jahren in Science-Fiction Serien wie dem ” Startrek“ erst für die<br />
Zeit in zweihundert Jahren vorgestellt hatte. Ein in diesem Zusammenhang<br />
erkennbarer Trend ist die Nutzung der Mobiltelefone für immer mehr Zwecke<br />
als für die reine sprachliche <strong>Kommunikation</strong>. Fotografie, Internetzugang,<br />
ja sogar einige Aspekte des mobilen Büros werden angeboten. Die Geräte<br />
Mobiltelefon und PDA verschmelzen immer mehr miteinander und sie werden<br />
recht bald zusätzlich nicht nur Diktiersysteme und Navigationssysteme<br />
enthalten, sie werden sich zum persönlichen mobilen Informationssystem<br />
entwickeln, das seinen Benutzer und dessen Profil kennt und jederzeit die<br />
für ihn interessanten Informationen zu Verfügung hält und entsprechende<br />
Fragen beantworten kann. Prototypen für sprachgesteuerte tragbare Touristeninformationssysteme<br />
existieren bereits [?] [?]. Solche Systeme erlauben<br />
es ihren Benutzern, nach dem Weg zu fragen und sich durch eine fremde<br />
Stadt navigieren zu lassen, sich Informationen über Sehenswürdigkeiten<br />
geben zu lassen, ja sogar in den wichtigsten touristischen Szenarien wie<br />
Hotelankunft, Souvenireinkauf, Restaurantbesuch und so weiter zwischen<br />
verschiedenen Sprachen übersetzen zu lassen.<br />
1.2.13 Das Heim-Multimedia-Terminal im Intelligenten Raum<br />
Eine andere Entwicklung der letzten Zeit ist die Technisierung vieler<br />
alltäglicher Vorgänge und Geräte. Hierbei ist nicht nur ein Zuwachs des<br />
Leistungsumfangs viele technischer und unterhaltungselektronischer Geräte<br />
zu beobachten, auch die Verschmelzung dieser ist ein Trend. So erfüllen<br />
heutige Personal Computer immer mehr Zwecke und vereinen immer<br />
mehr Geräte wie zum Beispiel das Telefon – für Computer-Telephony-<br />
Integration hat sich das Kürzel CTI schon eingebürgert – Faxgeräte, CDund<br />
Videoabspielgeräte, Videorecorder [?] [?] und Raumsteuerung [?]. Die<br />
Erweiterung der Befriedigung des Informationsbedarfs durch das World-<br />
Wide-Web geht einher mit einer kaum noch persönlich zu bewältigenden
1.2 Anwendungsbeispiele 15<br />
Informationsflut. Deshalb ist zu erwarten, daß in Zukunft in vielen Heimen<br />
eine Art Heim-Multimedia-Terminal zu finden sein wird, welches seine<br />
Nutzer kennt, Nachrichten für sie aussucht und aufbereitet und per Sprache<br />
bedienbar sein wird. Die Benutzer werden nach Hause kommen und ihr<br />
Multimedia-Terminal fragen ” Was gibt’s Neues?“ und dieses wird dann dem<br />
Sportinteressierten die neuesten Fußballergebnisse nennen und dem politisch<br />
interessierten über die neuesten Kabinettsbeschlüsse berichten. Es wird<br />
auch als intelligenter Anrufbeantworter fungieren und die meisten Aufgaben<br />
einer Bürokraft erledigen wie die Verwaltung und teilweise autonome<br />
Durchführung der Korrespondenz oder das Organisieren von Ereignissen und<br />
Reisen. Um diesen enormen Funktionsumfang benutzerfreundlich anbieten<br />
zu können wird es um die sprachliche Bedienung keinen Weg herum geben.<br />
Auf lange Sicht wird das Multimedia-Terminal keinen konkreten Platz<br />
im Raum einnehmen, sondern überall, wo es der Benutzer gerne benutzen<br />
möchte, verfügbar sein. So werden Projektoren Informationen auf vielen<br />
verschiedenen Wänden im Haus darstellen können. Wenn der Benutzer sich<br />
aufs Sofa setzt, werden die Nachrichten auf dem Fernsehgerät dargestellt,<br />
wenn er im Flur ist, am LCD-Display, das an der Wand hängt und sonst<br />
zumeist ein Gemälde darstellt, wenn er im Bürozimmer ist, dann auf<br />
dem Computer-Monitor und so weiter. Das intelligente Haus wird voller<br />
intelligenter Räume sein die alle die Aktivitäten der Benutzer verfolgen<br />
– nicht nur was diese sagen, sondern auch wo sie sich befinden, welche<br />
Gesten sie machen und sogar in welcher Gemütslage sie sich befinden – um<br />
jederzeit die passenden Dienste anzubieten und erwartungsgemäß auf die<br />
Benutzerwünsche reagieren zu können.<br />
1.2.14 Ein provokativer Ausblick<br />
Woran denken wir, wenn wir uns die Spracherkennung in ferner Zukunft vorstellen?<br />
Den meisten von uns werden vermutlich Szenen aus Science-Fiction<br />
Filmen einfallen, in denen Sprache auf irgend eine Art von <strong>Maschine</strong>n<br />
erkannt wird. Schon in der Ersten Staffel der Serie ” Raumschiff Enterprise“<br />
gibt es eine Folge, in der jemand spricht und eine mechanische Schreibmaschine<br />
das Gesprochene tippt. Während dies vor 30 Jahren noch ziemlich<br />
realitätsfremd war, wäre diese Szene heute kein Science-Fiction mehr. Aber<br />
es gibt viele andere Szenen, in denen die <strong>Maschine</strong>n nicht nur erkennen, was<br />
gesprochen wurde, sondern auch noch verstehen, was der <strong>Mensch</strong> meint.<br />
Der Computer weiß, wann er angesprochen wird, und wann er nicht mehr<br />
gebraucht wird. Er ist meist zwar logisch, aber versteht trotzdem auch<br />
Konzepte wie Humor und mehrdeutige Äußerungen. Die Ultimative Sprache<br />
erkennende <strong>Maschine</strong> ist der Android. Diese <strong>Maschine</strong> ist in vielen Beziehungen<br />
dem <strong>Mensch</strong>en nachempfunden. Dabei ist das Gesamtbild ” künstlicher
16 1. Nutzen und Anwendungen<br />
<strong>Mensch</strong>“ so dominant, daß das Detail ” die <strong>Maschine</strong> erkennt Sprache“ so<br />
selbstverständlich und unwichtig ist, daß es nicht einen Moment in Frage<br />
gestellt wird. Auch die perfekte Funktionsweise wird stets erwartet. Ein<br />
Android in einem Science-Fiction hat bestenfalls algorithmische Probleme.<br />
Er weiß nicht, wie er sich verhalten soll, oder er hat mechanische Probleme,<br />
aber eine fehlerhafte Erkennung von Sprache kommt genauso selten oder<br />
noch seltener vor als bei lebenden <strong>Mensch</strong>en. Was ist es, das viele von uns so<br />
fasziniert, wenn wir daran denken, Spracherkennungssysteme zu entwerfen.<br />
Abgesehen von einigen, die die ganze Sache sehr nüchtern sehen und alles nur<br />
als Mittel zur Verbesserung der Lebensqualität (nicht zuletzt der eigenen)<br />
sehen, steckt doch oft in einigen Forschen ein kleiner Dr. Frankenstein. Der<br />
Wunsch, Eigenschaften natürlichen Lebens nachzubauen, zu mechanisieren,<br />
automatisch reproduzierbar zu machen, die Erfüllung des Traumes des deus<br />
ex machina erhebt uns ein wenig zu Halbgöttern.
2. Eigenschaften und Taxonomie von Sprache<br />
und Spracherkennern<br />
In diesem Kapitel wollen wir einige Eigenschaften von Spracherkennern und<br />
Spracherkennungsaufgaben besprechen. Diese werden uns helfen, schneller<br />
beurteilen zu können, wie schwierig einzelne Aufgaben mit der heutigen Technik<br />
zu lösen sind, und welche Aufgaben welche Ressourcen und welche Erfolgsaussichten<br />
haben. So werden wir im folgenden auch eine Taxonomie der<br />
Spracherkennung einführen, eine Sammlung von Begriffen, mit denen Erkennungssysteme<br />
beschrieben werden, wie Automobile mit PS, Hubraumzahlen<br />
und Beschleunigungszeiten.<br />
2.1 Sprecherabhängigkeit<br />
Da wir nicht ausreichendes Wissen darüber haben, was genau die Akustik<br />
eines Wortes oder eines Phonems ausmacht, haben bisher alle Ansätze,<br />
Sprache rein wissensbasiert zu erkennen keinen zufriedenstellenden Erfolg<br />
gehabt. Das größte Problem ist, daß ein und dasselbe Wort, ja sogar ein<br />
und derselbe Laut auf quasi unendliche viele verschiedene Arten artikuliert<br />
werden kann. Wir <strong>Mensch</strong>en besitzen die faszinierende Gabe, bestimmte<br />
Laute sofort identifizieren zu können, egal ob sie normal gesprochen oder<br />
geschrien oder geflüstert oder gesungen werden. Es ist auch egal, von welcher<br />
Person sie gesprochen werden. Unser Gehirn befähigt uns, sehr schnell diese<br />
sprecherspezifischen Eigenschaften eines Sprachsignals von denen, die über<br />
alle Sprecher hinweg in etwas konstant sind, zu trennen und die Erkennung<br />
der Sprache auf dem sprecherunabhängigen Teil des Signals durchzuführen.<br />
In der automatischen Spracherkennung sind einige andere Abhängigkeiten<br />
des Sprachsignals bekannt und haben ähnliche Probleme wie die Sprecherabhängigkeit.<br />
Im allgemeinen kann man sagen, die akustische Ausprägung<br />
eines Lautes oder Wortes variiert mit einigen Variablen wie zum Beispiel<br />
der Variablen ” Sprecher“ oder ” Übertragungsleitung“ oder ” Hintergrundgeräusche“<br />
oder ” Sprechstil“. Es leuchtet ein, daß statistische Verfahren,<br />
die wir mangels Wissen über das Sprachsignal verwenden müssen, größere<br />
Probleme haben, Modelle für bestimmte sprachliche Einheiten zu schätzen,<br />
wenn die Beispielmuster stark variieren. Daher funktionieren Erkenner, die
18 2. Eigenschaften und Taxonomie von Sprache und Spracherkennern<br />
mit uniformen bzw. wenig variierenden Daten trainiert wurden und auf<br />
passenden Daten eingesetzt werden, besser. Die Parameter der Modelle für<br />
eine sprecherabhängige Datenmenge sind viel ” schärfer“ und leichter von<br />
anderen Modellen zu unterscheiden als bei sprecherunabhängigen Daten.<br />
In einigen Situationen ist es unproblematisch, sprecherabhängige Erkenner<br />
zu verwenden. Bei persönlichen Diktiersystemen zum Beispiel, oder<br />
erst recht bei sicherheitskritischen Anwendungen, die sowieso nur von<br />
einer bestimmten Person verwendet werden dürfen. In solchen Situation<br />
ist man gut beraten, die höhere Leistungsfähigkeit sprecherabhängiger<br />
Systeme auszunutzen. Im allgemeinen jedoch wird man auf Anwendungen<br />
treffen, bei denen der Sprecher keine Zeit hat, erst langwierig seine Stimme<br />
einzutrainieren. Wer will schon erst einen langen Text vorlesen, ehe er<br />
am Fahrkartenautomaten sein Ziel eingeben kann? Daher fokussiert sich<br />
die Spracherkennungsforschung auf die sprecherunabhängige Erkennung,<br />
bestenfalls gesteht man ein, daß wenige Sekunden Sprache verwendet werden,<br />
um die Parameter der Erkenner an den Sprecher zu adaptieren. Ein Teil der<br />
Forschungsanstrengungen versucht das Sprachsignal so zu verarbeiten, daß<br />
die sprecherspezifischen Eigenschaften ausgeblendet werden und möglichst<br />
nur noch sprecherunabhängige übrigbleiben.<br />
2.2 Kontinuierlichkeit<br />
Die Erkennung einzelner Kommandos ist aus verschiedenen Gründen, die<br />
in den folgenden Kapiteln beleuchtet werden, einfacher als die Erkennung<br />
fließender Sprache. Bei gleichen zur Verfügung stehenden Ressourcen<br />
und gleich großem Vokabular funktioniert die Einzelkommandoerkennung<br />
präziser als die Erkennung kompletter beliebig formbarer Sätze. Das heißt,<br />
daß insbesondere bei Anwendungen, die mit wenig Ressourcen auskommen<br />
müssen, wie zum Beispiel Mobiltelefone, und bei Anwendungen, die kein<br />
großes Vokabular benötigen, wie zum Beispiel das Eingeben einer Telefonnummer,<br />
die Wahl eines Einzelkommandoerkenners naheliegt.<br />
In vielen Situationen ist aber ein fließendes Sprechen natürlicher. Eines<br />
der wichtigsten Ziele der automatische Spracherkennung ist es, die <strong>Kommunikation</strong><br />
von <strong>Mensch</strong>en mit <strong>Maschine</strong>n natürlicher zu machen. Daher<br />
beschäftigen sich die meisten Spracherkennungsforscher mit der Problematik<br />
der kontinuierlichen Spracherkennung.
2.3 Spontaneität<br />
2.3 Spontaneität 19<br />
Eine der wichtigsten Qualitäten einer Spracherkennungsaufgabe ist die Spontaneität<br />
der dabei gesprochenen Sprache. Man unterscheidet verschiedene<br />
Spontaneitätsgrade. Am einen Ende der Skala steht die sauber vorgelesene<br />
grammatikalisch korrekte Sprache. In der Praxis sind Situationen, in denen<br />
eine solch hoch qualitative Sprache erkannt werden soll, recht selten. Wenn<br />
die Texte, die vorgelesen werden, sowieso schon als Text vorliegen, ist es<br />
sicher einfacher, die Textvorlage zu verwenden als die Audioaufnahme des<br />
Vorgelesenen – immerhin machen heutige OCR-Systeme immer noch wesentlich<br />
weniger Fehler als Spracherkenner. Dennoch wurde lange Zeit bis Mitte<br />
der 90er Jahre zum größten Teil mit gelesen Daten (Resource Management<br />
Task [?], Wall Street Journal Task [?]) experimentiert, weil man von den<br />
Problemen, die eine größere Spontaneität mit sich bringt abstrahieren wollte.<br />
Am anderen Ende der Skala liegt die völlig ungeplante Sprache, so wie<br />
sie zwischen einander gut bekannten <strong>Mensch</strong>en stattfindet. Zu den die Erkennung<br />
erschwerende Eigenschaften der spontanen Sprache gehören solche<br />
Effekte wie stark variable Sprechgeschwindigkeit, Lautstärke und Betonung,<br />
grammatikalisch falsche Konstrukte, abgebrochene oder wiederholte Wörter,<br />
Stottern, vermehrt auftretende nichtsprachliche Geräusche wie Atmen und<br />
andere Geräusche des Artikulationsapparates (Schmatzen, Husten, Zungenund<br />
Lippenbewegungen etc.), schlechte oder unkorrekte Aussprache vieler<br />
Wörter, vermehrte Verwendung von Akzenten oder Dialekten, hyperartikulierte<br />
und auch schwach artikulierte Wörter und Phrasen, stille und<br />
emphatische ( ” äh“) Pausen. In der Praxis kommt oft noch hinzu, daß die<br />
Erkennung solcher Sprache zusätzlich noch dadurch erschwert wird, daß<br />
die <strong>Kommunikation</strong> in nicht schallisolierten Räumen stattfindet, sondern<br />
in geräuschbehafteten Umgebungen mit Mikrophonen, deren Position und<br />
Qualität eventuell unbekannt sind.<br />
2.3.1 Grammatikalität<br />
Beim fließenden spontanen Sprechen werden viele grammatikalisch unkorrekte<br />
Sätze gesprochen, teilweise unbeabsichtigt, weil weniger Zeit zur Planung<br />
eines Satzes als beim Schreiben zur Verfügung steht, und teilweise beabsichtigt,<br />
um kürzere Äußerungen zu formulieren, die die gewünschte Information<br />
trotzdem übertragen. In einigen Sprachen entstehen grammatikalische<br />
Unkorrektheiten auch indirekt durch eine Veränderung der Aussprache. Im<br />
Deutschen zum Beispiel wird der Akkusativ des unbestimmten Artikels ein“<br />
”<br />
also das Wort einen“ oft verkürzt wie der Nominativ gesprochen. Zum<br />
”<br />
Beispiel würde der folgende Satz beim Hörer keine Probleme verursachen:<br />
” Lassen Sie uns ein Termin ausmachen“. Eine geübte Bürokraft würde beim
20 2. Eigenschaften und Taxonomie von Sprache und Spracherkennern<br />
Diktat dieses Satzes auch ohne großes Nachdenken die Akkusativform zu<br />
Papier bringen. Für einen automatischen Spracherkenner gehört aber schon<br />
ein wenig Intelligenz dazu, dies zu erkennen. Grammatikalisch falsche Sätze<br />
entstehen auch als mittelbare Folge anderer spontansprachlicher Effekte, die<br />
im folgenden beschrieben werden.<br />
Warum sollte ungrammatikalische Sprache schwieriger zu erkennen sein<br />
als grammatikalisch korrekte? In der Tat sollte da kein Unterschied sein,<br />
wenn jedes Wort isoliert und ohne Wissen um seinen Kontext erkannt werden<br />
müßte. Aber selbst, wenn isolierte Wörter erkannt werden müssen, ist das<br />
Wissen um den Kontext, in dem es gesprochen wird, für die Erkennung<br />
hilfreich, weil in einem bestimmten Kontext nicht jedes Wort erwartet oder<br />
zumindest nicht für wahrscheinlich angesehen wird. So läßt sich also eine<br />
Auswahl oder eine Gewichtung der zu erkennenden Wörter treffen, die<br />
bei der Erkennung hilfreich sein kann. Und bei fließender Sprache haben<br />
ungrammatikalische Phasen in einem Satz auch oft eine Unterbrechung<br />
des Redeflusses zur Folge oder bringen den Sprecher zum Stottern, was<br />
wiederum schlecht für die Erkennung ist.<br />
2.3.2 Wortabbrüche<br />
Ein typisches Phänomen beim spontanen Sprechen sind abgebrochene<br />
Wörter. Es gibt unterschiedliche Gründe dafür. In manchen Fällen kommt es<br />
daher, daß wir eine etwas unwahrscheinliche Wortfolge sagen wollen und uns<br />
eine dazu ähnliche aber viel wahrscheinlichere Folge ” herausrutscht“. Man<br />
kann sich vorstellen, daß in unserem Gehirn einige festgefahrene Denkstrukturen<br />
existieren, auch Engramme genannt, die immer wieder ablaufende<br />
Prozesse quasi vorberechnen und bei Bedarf als aufrufbare Unterprozedur<br />
bereitstellen. Wenn nun solche Engramme dadurch in Aktion treten, daß sie<br />
zwar teilweise ablaufen sollen aber an irgendeiner Stelle davon abgewichen<br />
werden soll, dann geschieht es leicht, daß unser Denkprozeß in diesem<br />
Engramm quasi eine Weile festgehalten wird und sich erst ” befreien“ muß.<br />
Dabei schießt er zunächst über den Punkt hinaus, an dem vom Standardweg<br />
abgezweigt werden sollte. Wir merken aber dann schnell, daß wir im Begriff<br />
sind, etwas ganz anderes zu artikulieren als wir eigentlich sagen wollten.<br />
Manchmal rutscht uns ein ganzes Wort oder sogar mehrere Wörter heraus,<br />
manchmal bemerken wir den Fehler mitten in einem Wort und brechen<br />
dieses ab.<br />
In anderen Fällen kommen die Wortabbrüche daher, daß wir zwar bewußt<br />
etwas sagen, uns aber mitten im Satz entschließen, die Sache anders zu<br />
formulieren. Üblicherweise wird dann die angefangene Formulierung nicht zu<br />
Ende gebracht, sondern sofort abgebrochen, gegebenenfalls auch mitten in
einem Wort.<br />
2.3 Spontaneität 21<br />
Zu erkennen, daß ein akustisches Fragment einen Wortabbruch darstellt<br />
und kein eigenständiges kurzes Wort ist, ist meist nur mit Intelligenz und<br />
Wissen über den Kontext machbar. Deshalb stellen abgebrochene Wörter<br />
automatische Spracherkenner vor besondere Probleme.<br />
2.3.3 Deutlichkeit der Aussprache<br />
Spontane Sprache zeichnet sich auch dadurch aus, daß man sich keine<br />
Zeit nimmt, jedes Wort deutlich zu artikulieren. Das führt zum Weglassen<br />
(Elision) einzelner Laute, ja sogar ganzer Silben. So entstellte Wörter sind<br />
schwieriger zu erkennen. Oft kommt es vor, daß verschiedene Wörter zu den<br />
gleichen kleinen Fragmenten zusammenschrumpfen. Ohne Kontextwissen ist<br />
es nicht möglich festzustellen ob der Laut s“ die Abkürzung für es“, für<br />
” ”<br />
” das“ oder für ist“ ist. Genauso schwierig ist es zu bestimmen, ob der Laut<br />
”<br />
” n“ von ” den“, ” ein“ oder einen“ kommt.<br />
”<br />
Neben Elisionen gibt es auch andere Undeutlichkeiten. So werden Laute<br />
entstellt, indem beim spontanen Sprechen vermehrt Koartikulationseffekte<br />
durch sich überlagernde oder gegenseitig beeinflussende Laute auftreten. Es<br />
werden nicht nur einzelne Laute anders artikuliert als bei sorgfältig geplanter<br />
Sprache, sondern ganze Lautfolgen werden durch andere ersetzt. Nicht selten<br />
geht das so weit, daß eine Wortfolge wie ” haben wir“ ersetzt wird durch<br />
etwas wie ” hammer“. Solche extremen Koartikulationen kommen nicht nur<br />
in Dialektsprache sondern auch bei Sprache vor, die man auf den ersten<br />
Blick als Hochdeutsch bezeichnen würde.<br />
2.3.4 Betonte und unbetonte Pausen<br />
Da beim spontanen Sprechen nur ein Minimum an Planung stattfindet, aber<br />
manchmal doch viel Planung nötig, muß das Sprechen für diese unterbrochen<br />
werden. <strong>Mensch</strong>en verwenden vier Methoden, um die Planungspausen<br />
zu überbrücken. Die erste und einfachste ist, einfach nicht zu sprechen<br />
und während der Denkphase still zu sein. Die zweite ist das berühmte<br />
” äh“, das in verschiedenen Ausprägungen existiert. Im Deutschen sind<br />
die Formen äh“ und ähm“ die beliebtesten, aber auch mh“ wird gerne<br />
” ” ”<br />
verwendet. In anderen Sprachen sind andere solcher betonter (emphatischer)<br />
Pausen üblich. In einigen Sprachen werden sogar komplizierte Lautfolgen,<br />
ja sogar mehrsilbige Wörter zum Pausenfüllen benutzt wie zum Beispiel im<br />
Japanischen das Wort ano“. Die dritte Technik besteht darin, die zuletzt<br />
”
22 2. Eigenschaften und Taxonomie von Sprache und Spracherkennern<br />
gesprochene Silbe in die Länge zu ziehen bis die Planung beendet ist, und<br />
der Redefluß fortgesetzt werden kann. Die vierte wird häufiger bei Sprachen<br />
mit vielen einsilbigen Wörtern (z.B. im ostasiatischen Raum) beobachtet.<br />
Dabei wird eine Silbe mehrfach hintereinander wiederholt. Das hört sich<br />
für manche Hörer ähnlich an wie Stottern, es handelt sich aber um einen<br />
anderen Effekt.<br />
2.3.5 Wiederholungen und Stottern<br />
Wiederholungen entstehen zum Beispiel, wenn man nach einer Unterbrechung<br />
z.B. durch eine betonte oder unbetonte Pause weiterspricht und dabei<br />
eine Phrase vollständig sprechen will: ” Da drüben steht eine - eine Vase.“<br />
Bei diesem Satz wurde nach der Pause die Nominalphrase ” eine Vase“ als<br />
komplette Einheit gesprochen.<br />
Andere Wiederholungen entstehen wie im vorigen Abschnitt beschrieben<br />
durch Ausfüllen von Planungspausen, dann aber normalerweise nur mit<br />
einsilbigen Wörtern.<br />
Mehrsilbige Wörter werden manchmal wiederholt, wenn der Sprecher den<br />
Eindruck hat, daß die erste Version nicht korrekt oder schwer verständlich<br />
ausgesprochen wurde.<br />
Schließlich gibt es auch noch beabsichtigte Wiederholungen, teilweise um<br />
der Verständlichkeit Willen, teilweise aus rhetorischen Gründen. Solche Fälle<br />
sind aber, da beabsichtigt, keine spontansprachlichen Effekte im eigentliche<br />
Sinne.<br />
Das Wiederholen von einzelnen Wortfragmenten, oft nur Fragmente<br />
von Silben oder einzelne Phoneme, landläufig auch Stottern genannt, stellt<br />
Spracherkenner vor Probleme. Stottern kann verschiedene Ursachen haben,<br />
auf die wir hier aber nicht eingehen wollen.<br />
2.3.6 Artikulatorische Geräusche<br />
Häufiger als bei geplanter oder vorgelesener Sprache tauchen bei spontaner<br />
Sprache Geräusche auf, die wir <strong>Mensch</strong>en leicht ” herausfiltern“ und so<br />
ignorieren können. Für einen automatischen Spracherkenner sind aber<br />
Atemgeräusche, Schmatzlaute und andere Geräusche, die durch den Artikulationsapparat<br />
verursacht werden kaum anders als reguläre Phoneme auch.<br />
Die häufigste Methode, dieses Problem anzugehen, besteht darin, solche
2.3 Spontaneität 23<br />
Geräusche wie jedes sprachliche Wort zu behandeln, und womöglich sogar<br />
die Kenntnis auszunutzen, daß einige Geräusche vermehrt an bestimmten<br />
Stellen auftreten. So werden Atempausen gerne zwischen vollständigen<br />
Phrasen gemacht und selten innerhalb dieser.<br />
2.3.7 Varianz der Sprechgeschwindigkeit<br />
In einem interessanten Experiment wurden Personen, die sich spontan<br />
unterhielten, aufgenommen und die Aufnahmen von Experten so transkribiert,<br />
daß jeder spontane Effekt und jedes artikulatorische Geräusch<br />
in der Verschriftung festgehalten wurde. Daraufhin wurden die Sprecher<br />
aufgefordert, die Verschriftungen noch einmal vorzulesen, dabei aber so<br />
spontan wie möglich zu klingen, also zu versuchen, das gleiche, was sie zuvor<br />
spontan gesprochen hatten, noch einmal möglichst exakt nachzusprechen.<br />
Schließlich wurden Spracherkenner auf beide Versionen angesetzt, und wie<br />
erwartet waren die Erkennungsraten auf den ursprünglichen Aufnahmen<br />
wesentlich schlechter als auf den nachgesprochenen Aufnahmen. Ein Grund<br />
für diese Beobachtung liegt darin, daß die Sprechgeschwindigkeit beim<br />
Vorlesen konstanter ist, als wenn völlig spontan gesprochen wird.<br />
Wortfehlerrate [%]<br />
35<br />
30<br />
25<br />
20<br />
15<br />
10<br />
5<br />
2 2.2 2.4 2.6 2.8 3 3.2 3.4<br />
Abb. 2.1. Wortfehlerrate über Sprechgeschwindigkeit<br />
Sprechgeschwindigkeit [Wörter/Sekunde]
24 2. Eigenschaften und Taxonomie von Sprache und Spracherkennern<br />
In Abb. 2.1 ist die durchschnittliche (über die einzelnen Teilnehmer der<br />
DARPA Evaluation gemittelte) Wortfehlerrate auf den Wall Street Journal<br />
Daten von 1994 in Abhängigkeit von der Sprechgeschwindigkeit aufgetragen.<br />
Man erkennt nicht nur, daß die Fehlerrate bei sehr hohen Sprechgeschwindigkeiten<br />
dramatisch ansteigt. Auch bei besonders langsamer Sprechweise<br />
treten mehr Fehler auf als bei der mittleren Geschwindigkeit. Vergleichbare<br />
Beobachtungen werden bei Spracherkennern immer wieder gemacht. Je<br />
mehr die Testbedingungen vom Durchschnitt abweichen, umso schwieriger<br />
ist die Erkennung. Bei erhöhter Sprechgeschwindigkeit kommt zusätzlich<br />
zu der schlechten Übereinstimmung der Trainings- und Testdaten noch die<br />
Problematik hinzu, daß beim schnellen Sprechen viel öfter einzelne Laute<br />
extrem kurz und verfälscht ausgesprochen werden oder schlimmstenfalls<br />
sogar ganz ausgelassen werden.<br />
2.4 Erkennungsszenario<br />
Je kompakter das Szenario ist, umso wahrscheinlicher ist es, daß ein guter<br />
Erkenner dafür gebaut werden kann. Dies hängt zum einen damit zusammen,<br />
daß das Vokabular eines kompakten Szenarios kleiner ist, zum anderen damit,<br />
daß die Menge der verwendeten Sprachkonstrukte und Wortfolgen auch klein<br />
ist. Durch ein Szenario wird eine Erwartung vorgegeben. Erkennung bedeutet<br />
Vergleichen der aufgenommenen Sprache mit möglichen Erwartungen. Je<br />
kleiner die Menge der Erwartungen, umso weniger wahrscheinlich ist eine<br />
Verwechslung.<br />
2.5 Perplexität<br />
Auch wenn wir den Begriff der Perplexität erst in Kapitel 16 formal<br />
definieren, so wollen wir ihn doch schon hier verwenden. Zunächst genügt<br />
es zu wissen, daß die Perplexität ein Maß dafür ist, wie viele Wörter<br />
ein Erkenner im Schnitt gleichzeitig erkennen können muß. Eine niedrige<br />
Perplexität bedeutet, daß nur wenige Wörter zu einem Zeitpunkt<br />
zu unterscheiden sind, was bedeutet, daß die Erkennungsaufgabe leicht<br />
ist. Eine hohe Perplexität heißt, daß die Verwechslungsgefahr höher ist<br />
und damit auch die Fehlerwahrscheinlichkeit und die Schwierigkeit der<br />
Erkennungsaufgabe. So ist es zum Beispiel wesentlich einfacher, von einem<br />
Arzt diktierte Diagnosen zu erkennen, als den Name einer Person, die sich<br />
vorstellt. Während die Sprache von ärztlichen Diagnosen relativ uniform<br />
ist und an einer Stelle nur wenige verschiedene Wörter erwarten läßt,
2.6 Die Signalqualität 25<br />
muß beim Erkennen eines Namens dieser aus einer Menge von mehreren<br />
Millionen ausgewählt werden. Im Gegensatz zu so manchem ersten Eindruck<br />
ist es auch keineswegs schwierig, Wörter wie ” Desoxyribonukleinsäure“<br />
zu erkennen. Womit könnte denn so ein Wort überhaupt verwechselt werden?<br />
2.6 Die Signalqualität<br />
Eine interessante Beobachtung kann man mit fast jedem Spracherkenner machen:<br />
Wenn die Übereinstimmung der zu erkennenden Aufnahme mit einem<br />
Muster oder einem Modell über der Zeit gemessen wird, hat die Meßkurve<br />
stets in etwa den gleichen Verlauf, unabhängig vom Vergleichsmuster oder<br />
dem zugrundegelegten Modell. Das heißt, die Varianz der Übereinstimmung,<br />
die durch den Vergleich mit verschiedenen Modellen entsteht, ist meist<br />
deutlich kleiner als die Varianz, die durch das Signal beziehungsweise seine<br />
Qualität selbst entsteht. Dies mag auf den ersten Blick als Problem für die<br />
Spracherkennung erscheinen. In der Praxis kommt es aber auf die Varianz<br />
der Signalqualität gar nicht so sehr an. Denn wenn es darum geht, das am<br />
besten passende Modell zu einer Aufnahme zu finden, werden tatsächlich nur<br />
die Übereinstimmungsunterschiede bei Vergleich mit verschiedenen Modellen<br />
gemessen und davon das Optimum für die Klassifikation verwendet.<br />
Trotzdem hat die Qualität des Signals einen großen Einfluß auf die Erkennungsrate.<br />
Dabei sind manche Störungen, die der <strong>Mensch</strong> als unerträglich<br />
empfindet (z.B. Rauschen) für Spracherkenner weniger problematisch und<br />
andere, die der <strong>Mensch</strong> fast überhören kann (z.B. laute Hintergrundmusik,<br />
Stimmen anderer <strong>Mensch</strong>en) vom Erkenner sehr schwer in den Griff zu<br />
bekommen.<br />
Die Signalqualität hängt von der Aufnahmeumgebung ab. Welche<br />
Geräusche außer der zu erkennenden Sprache gibt es noch? Was für ein<br />
Mikrophon wird verwendet und wie ist es relativ zum Sprecher positioniert?<br />
Was für ein Übertragungskanal wird verwendet (störungsfrei oder Telefon)?<br />
2.6.1 Nahbesprechungsmikrophone<br />
Nahbesprechungsmikrophone haben die Eigenschaft, daß sie die Leistung<br />
des Audiosignals messen, welche umgekehrt proportional zum Quadrat des<br />
Abstands der Schallquelle vom Mikrophon ist. Das heißt, daß ein Mikrophon,<br />
das im Abstand von ca. 2 cm vom Mund – typisch für sogenannte Headsets<br />
oder Bügelmikrophone – befestigt ist, den Sprachschall 2000- bis 3000-facher
26 2. Eigenschaften und Taxonomie von Sprache und Spracherkennern<br />
stärker aufnimmt, als gleichlaute Geräusche in etwa 1 m Entfernung. Der<br />
Autor hat selbst die Erfahrung gemacht, daß bei Verwendung eines billigen<br />
Nahbesprechungsmikrophons die Erkennungsgenauigkeit des auf mehreren<br />
Messen vorgeführten Spracherkenners nicht merklich darunter leidet, wenn<br />
am 10 m entfernten Nachbarstand so laute Musik gespielt wird, daß man sich<br />
dort fast nur schreiend unterhalten kann. Fast die gesamte Forschung auf<br />
dem Gebiet der Spracherkennung bis Mitte der neunziger Jahre wurde im<br />
wesentlichen mit Nahbesprechungsmikrophonen gemacht. Die Signalqualität<br />
von fernbesprechbaren Mikrophonen – oft auch Raummikrophone genannt<br />
– ist selbst bei vorherigem Wissen über den Abstand der Schallquelle zum<br />
Mikrophon deutlich schlechter. Die größten Schwierigkeiten aber kommen<br />
dadurch zum Vorschein, daß Störgeräusche jeglicher Art viel stärker in<br />
die Aufnahmen eingehen, vor allem dadurch, daß die Variationen der<br />
Signale, hervorgerufen durch viel mehr verschiedene mögliche Abstände und<br />
Eigenschaften der Raumakustik, stark zunehmen.<br />
Man kann feststellen, daß selbst bei großem Abstand (von ca. 2 bis 3<br />
Metern) Sprache noch verhältnismäßig gut erkannt werden kann, wenn zuvor<br />
dieser Abstand genau bekannt ist und keine Störgeräusche vorhanden sind.<br />
Das gelingt nur deshalb gut, weil der Spracherkenner auf diese besonderen<br />
Abstands- und Raumakustikverhältnisse spezialisiert wird. Wenn aber keine<br />
idealen Bedingungen vorliegen, und der Abstand nicht bekannt ist, fällt die<br />
Erkennungsgenauigkeit dramatisch ab.<br />
2.6.2 Telefongespräche<br />
Auch wenn in den Zeiten der Breitband-Individualkommunikation es immer<br />
mehr möglich ist, Sprache nahezu unverfälscht zu übertragen, so ist dennoch<br />
damit zu rechnen, daß in vielen Teilen der Welt noch eine Zeit lang Sprachkommunikation<br />
über das Medium Telefon geführt wird, so wie es seit über<br />
hundert Jahren praktiziert wird.<br />
Fast alle Telefonnetze der Welt verwenden einen Bandpaßfilter, der<br />
nur einen Teil des akustischen Spektrums durch die Leitungen überträgt –<br />
typischerweise in etwa zwischen 300 Hz und 3000 Hz. Nicht nur automatische<br />
Spracherkenner, auch <strong>Mensch</strong>en haben größere Probleme, Telefonsprache<br />
zu verstehen, als breitbandige Sprache. Insbesondere diejenigen Laute, die<br />
sich vor allen durch Frequenzanteile jenseits der oberen Grenze von 3000<br />
Hz manifestieren sind schwerer zu unterscheiden. So kann man z.B. am<br />
Telefon ein S von einem F viel schwerer trennen, als wenn man dem Sprecher<br />
gegenüber steht.
2.6 Die Signalqualität 27<br />
Allerdings besteht die Problematik bei der Telefonspracherkennung nicht<br />
nur in der kleineren Bandbreite der Signale, sondern auch darin, daß die<br />
Telefonleitungen und die Übertragungsgeräte (Telefone, Vermittlungsstellen,<br />
usw.) die Signale zusätzlich verzerren.<br />
Schließlich bleibt noch zu erwähnen, daß der Sprechstil beim Telefonieren<br />
sich vom Sprechen mit einem direkt sichtbaren Gegenüber unterscheidet.<br />
Gestik und Mimik werden bei rein akustischen Telefonen nicht übertragen<br />
und können somit nicht als zusätzliches <strong>Kommunikation</strong>smittel verwendet<br />
werden. Daher werden oft Sachverhalte, die sonst mittels Gesten ausgedrückt<br />
werden, mit Worten umschrieben. Auch das Wissen um die Verschlechterung<br />
des Sprachsignals führt dazu, daß man teilweise versucht, überdeutlich zu<br />
sprechen (Hyperartikulation).<br />
2.6.3 Hintergrundgeräusche<br />
Auch wenn bei Nahbesprechungsmikrophonen nur wenige Probleme mit<br />
Hintergrundgeräuschen zu beobachten sind, so kann man dennoch feststellen,<br />
daß bei hochspezialisierten Erkennern, zum Beispiel solchen, die stark auf<br />
einen bestimmten Sprecher in einer bestimmten Umgebung eingestellt sind,<br />
wie die ersten kommerziell erhältlichen Erkennungssyteme, der Wechsel der<br />
Umgebung oder auch das Hinzukommen von Hintergrundgeräuschen, die in<br />
der Trainingsphase noch nicht vorhanden waren, zu geringerer Erkennungsleistung<br />
führt.<br />
In vielen Fällen ist die Verwendung von Nahbesprechungsmikrophonen<br />
nicht opportun. Das Tragen eines Bügelmikrophons schränkt in einigen<br />
Situationen die (Bewegungs-)Freiheit des Sprechers zu sehr ein. Bei der<br />
Bedienung von Automaten, z.B. eines Fahrkartenautomaten am Bahnhof,<br />
kann nicht erwartet werden, daß der Benutzer sich ein Mikrophon zum<br />
Munde führt oder seinen Mund nahe an das Mikrophon halten muß.<br />
Auch beim Autofahren ist es angenehmer, wenn das Mikrophon nicht am<br />
Kopf befestigt ist, sondern sich beispielsweise irgendwo am Armaturenbrett<br />
befindet. Bei dieser Entfernung sind aber zahlreiche Geräusche wie das<br />
Motorengeräusche, der Lärm der anderen Verkehrsteilnehmer, die Geräusche<br />
von Geräten am und im Auto (Blinker, Scheibenwischer, Radio) deutlich in<br />
der Sprachaufnahme zu hören.<br />
Während es bei einigen Autogeräuschen wie dem eigenen Motor und<br />
dem Radio möglich ist, diese dort abzugreifen, wo sie entstehen und dann<br />
mittels relativ einfacher Filter aus der Sprachaufnahme nahezu komplett<br />
zu entfernen, so ist dies bei anderen Geräuschen, vor allem der Sprache
28 2. Eigenschaften und Taxonomie von Sprache und Spracherkennern<br />
anderer Personen, kaum möglich. Der so genannte Cocktail-Party-Effekt<br />
beschreibt die Problematik, eine einzelne Stimme aus einem Wirrwarr vieler<br />
verschiedener Stimmen herauszuhören. Wir <strong>Mensch</strong>en sind bei dieser Aufgabe<br />
erstaunlich gut. Wir können selbst relativ leise Stimme von Personen<br />
verfolgen und mithören, die sich in einer <strong>Mensch</strong>enmenge weiter weg von uns<br />
befinden, als manche in unmittelbarer Nachbarschaft sprechende <strong>Mensch</strong>en.<br />
Wenn wir uns konzentrieren, können wir aus einer Aufnahme, auf der zwei<br />
bis drei Leute mit gleicher Lautstärke sprechen jeden einzelnen Sprecher<br />
heraushören und erkennen, was er sagt. Die Spracherkennungstechnik ist bei<br />
weitem noch nicht in der Lage diese Fähigkeit auch nur annährend so gut<br />
nachzuahmen.<br />
2.7 Das Vokabular<br />
Ein Kriterium, das die Anfänge der Entwicklung der Spracherkennungsforschung<br />
begleitet hat war die Größe des Erkennervokabulars, das heißt<br />
die Zahl der verschiedenen Wörter, die ein Erkenner gleichzeitig erkennen<br />
kann. Während man früher vor allem an der Erkennung einzelner Laute<br />
und später einzelner vollständiger Wörter arbeitete, wurde klar, daß die<br />
Schwierigkeit mit der Zahl der zu erkennenden Wörter schnell steigt.<br />
Spracherkennungssysteme waren nur für sehr eingeschränkte eng umrissene<br />
Aufgaben möglich. Anfang und Mitte der Achtziger Jahre sprach man<br />
noch von großen Vokabularen ab ca. 1000 Wörtern. In den Neunzigern war<br />
die Größe von 64000 Wörtern lange Zeit Standard für große Vokabulare<br />
(LVCSR = Large Vocabulary Continuous Speech Recognition). Diese Größe<br />
hatte drei Ursachen: Zum einen läßt sich so das Vokabular mit 16 Bits<br />
codieren, zum anderen genügt diese Größe, um im Englischen mehr als<br />
99% der in Zeitungstexten verwendeten Wörter abzudecken, und drittens<br />
wurde der in den Neunzigern beliebte Benchmarktest, der auf vorgelesenen<br />
Wall-Street-Journal-Artikeln basiert, auf eine Vokabulargröße von 60000<br />
Wörtern festgelegt.<br />
2.8 <strong>Kommunikation</strong>sart<br />
Einen wichtigen Einfluß auf die Schwierigkeit einer Erkennungsaufgabe hat<br />
die Art der <strong>Kommunikation</strong>. Damit meinen wir, ob sich zwei Personen<br />
miteinander unterhalten, also ein Dialog stattfindet, oder ob eine Person<br />
allein redet (z.B. Briefe diktiert oder einen Vortrag hält).
2.8 <strong>Kommunikation</strong>sart 29<br />
zu erkennende Aufgabe Vokabulargröße<br />
Ein/Aus-Schalter, Not-Aus-Schalter 1<br />
Triviales Menü (Ja/Nein) 2<br />
Ziffern 0 bis 9 (z.B. Telefonwahl) 10 + x<br />
Einfache <strong>Maschine</strong>n bedienen 20 − 500<br />
Informationssysteme<br />
(Zugfahrplan, Flugbuchung, Resource Management) 500 − 5 000<br />
Alltägliche <strong>Kommunikation</strong> 10 000 − 20 000<br />
Bürokorrespondenz 20 000 − 60 000<br />
Normales Englisch −200000<br />
Deutsche Zeitschrift (Süddeutsche) während eines Jahres 1 600 000<br />
Tabelle 2.1. Einige Beispiele für Vokabulargrößen<br />
Bei Dialogen oder gar bei Diskussionen mit mehreren Beteiligten kommen<br />
Probleme hinzu, die bei einzelnen Sprechern nicht zu erwarten sind, wie zum<br />
Beispiel das Abbrechen des Sprachflusses mitten im Satz, weil gerade eine<br />
andere Person spricht, oder auch das Inswortfallen oder Gleichzeitigsprechen<br />
mehrerer Sprecher.<br />
Der Stil der Sprache hängt auch stark davon ab, was man vom <strong>Kommunikation</strong>spartner<br />
erwartet. Mit einer vertrauten Person spricht man viel<br />
umgangssprachlicher, verwendet häufiger Dialekte, akustische Verschmierungen<br />
und Floskeln, die alle Gesprächspartner kennen. Beim Reden mit<br />
Fremden spricht man in der Regel deutlicher und vorsichtiger.<br />
Solange das Sprechen mit <strong>Maschine</strong>n nicht alltäglich ist - und vermutlich<br />
auch dann nicht, wenn es soweit ist - ist der Dialog mit <strong>Maschine</strong>n oft<br />
irgendwie unangenehm. Als Anrufbeantworter noch eine Besonderheit waren<br />
und in Deutschen Telefonbüchern sogar durch ein Q neben der Telefonnummer<br />
gekennzeichnet waren, empfanden viele Leute das Sprechen einer<br />
Aufnahme als sehr unnatürlich und irgendwie seltsam. Anrufbeantworter<br />
sind inzwischen alltäglich geworden. Dennoch sprechen sehr viele anders als<br />
mit einem menschlichen Gesprächspartner.<br />
Wenn man <strong>Mensch</strong>en dabei beobachtet, wie sie sich mit <strong>Maschine</strong>n unterhalten<br />
(z.B. mit einer Zugfahrplanauskunft oder einem System, das Auskunft<br />
über das Kinoprogramm gibt) kann man oft zwei Extreme beobachten.<br />
Manche <strong>Mensch</strong>en sprechen übervorsichtig und artikulieren übertrieben<br />
langsam mit vielen Pausen, verwenden ein vereinfachtes Vokabular und<br />
reden ähnlich wie mit einem Kind oder einem <strong>Mensch</strong>en der die Sprache
30 2. Eigenschaften und Taxonomie von Sprache und Spracherkennern<br />
nicht versteht. Andere wiederum versuchen sich so zu verhalten als würden<br />
sie mit einem <strong>Mensch</strong>en reden, was oft dazu führt, daß die Grenzen des<br />
Erkennungssystems überschritten werden, und das System sich nicht wie<br />
erwartet verhält. Teilweise wird dann versucht, das System ins Lächerliche<br />
zu ziehen oder zu provozieren. Meist endet das damit, daß der Benutzer<br />
enttäuscht (oder manchmal auch erheitert) die <strong>Kommunikation</strong> aufgibt.<br />
2.9 Wie schwierig ist Spracherkennung<br />
Im Jahr 1971 hat die von der US-Amerikanischen Regierungsagentur ARPA<br />
eingesetzte ” Speech Understanding Systems Study Group“ einen Bericht [?]<br />
verfaßt, in dem die so genannten 19 Dimensionen von sprachverstehenden<br />
Systemen aufgelistet werden. Diese 19 Eigenschaften beschreiben insbesondere<br />
die Schwierigkeit der Erkennungsaufgabe. Es waren dies im einzelnen:<br />
Art der Sprache (Speech) einzelne Kommandos oder fließend<br />
Anzahl der Spracher einer oder mehrere<br />
Art der Sprecher Muttersprachler, Dialekt, etc.<br />
Art der Umgebung Geräusche, Lärm<br />
<strong>Kommunikation</strong>ssystem Übertragungsmedium, Telefon<br />
Systemtraining Menge der Trainingsdaten<br />
Sprechertraining Vorbereitung der Benutzer<br />
Vokabulars Größe und ” Freiheit“ des Wortschatzes<br />
Art der Sprache (Language) Menge der syntaktischen Regeln<br />
Aufgabe des Systems Menge der semantischen Regeln<br />
Sprecherpsychologie Modell des Benutzers<br />
Interaktivität Komplexität des Dialogs<br />
Zuverlässigkeit Welche/Wieviele Fehler sind tolerierbar<br />
Rechenzeit Wie schnell muß das Ergebnis vorliegen<br />
Rechnerleistung Anforderung an die Hardware<br />
Speicher Anforderung an den Rechnerspeicher<br />
Systemorganisation Komplexität des gesamten Systems<br />
Kosten Preis aller Bestandteile<br />
Fertigstellungstermin Wann wird das System fertig sein<br />
Abgesehen davon, daß uns heute einige Punkte als überspezifiziert erscheinen,<br />
insbesondere die Menge der Punkte über die Systemanforderungen,<br />
gibt es einzelne Dimensionen, die wir heute anders formulieren würden als<br />
1971. Immerhin war die Erkennung völlig freier Sprache mit Vokabularen in<br />
der Größenordnung von 10 5 Wörtern damals noch nicht machbar. So würden<br />
wir heute die Dimension ” Vokabular“ ergänzen durch die Perplexität der<br />
Aufgabe (die Zahl der im Mittel an einer Stelle des Erkennungsvorgangs zu
erwartenden Wörter).<br />
2.9 Wie schwierig ist Spracherkennung 31<br />
In der obigen Liste beziehen sich die meisten Punkte auf die Komplexität<br />
der Aufgabe. Zweifelsohne war der Rechen- und Speicheraufwand lange Zeit<br />
ein die Forschung stark einschränkendes Kriterium. Selbst heute, da die Leistung<br />
gewöhnlicher verbreiteter Prozessoren um mehrere Größenordnungen<br />
über derer von 1971 liegt, wären wir nicht so weit, wie wir sind, wenn nicht<br />
schon damals viel Energie darin investiert worden wäre, Spracherkennung<br />
mit den wenigen zur Verfügung stehenden Ressourcen zu machen. Es ist<br />
auch heute nicht abzusehen, daß die Leistung von Standardrechnern so<br />
dramatisch zunehmen wird, daß ein ökonomischer Umgang mit Zeit und<br />
Speicherplatz nicht mehr wichtig wäre.<br />
Dennoch kann man sagen, daß der größte Teil der Probleme der Spracherkennung<br />
nicht von der Komplexität sondern eher von der Variabilität<br />
kommt. Es ist so, daß aus den wenigen Bits pro Sekunde, die im Gehirn<br />
eines <strong>Mensch</strong>en entstehen, um eine Nachricht zu formulieren, schließlich<br />
eine Folge von typischerweise 256000 Bits pro Sekunde wird (s. Abb. 2.2).<br />
Ohne bedeutenden Informationsverlust, lassen sich diese 256 KBit um<br />
ca. 90% reduzieren. Diese Datenflut läßt sich relativ einfach und schnell<br />
verarbeiten. In einem Bruchteil der Zeit, in der die Daten anfallen, werden sie<br />
verarbeitet und in komprimierter Form dem eigentlichen Erkenner zugeführt.<br />
Technisches Gegenstück<br />
Sprachgenerierung<br />
gedruckter Text<br />
(50 bps)<br />
Phonemfolgen/Prosodie<br />
Formulierung<br />
der Nachricht<br />
(200 bps)<br />
diskret<br />
Codierung<br />
mit Sprache<br />
kontinuierlich neuromuskuläre<br />
Aktionen<br />
artikulatorische<br />
Bewegungsparameter<br />
(2000 bps)<br />
Schallquelle<br />
Stimmbänder<br />
Sprecher<br />
Artikulattionsapparat<br />
(30000 bps)<br />
Datenübertragung<br />
Abb. 2.2. Elemente der Sprachkommunikation<br />
Sprachverstehen<br />
Verstehen<br />
der Nachricht<br />
Sprachdekodierung<br />
Neuroübertragung<br />
Basilarmembran<br />
Zuhörer<br />
Bedeutung/Semantik<br />
Phoneme, Wörter,<br />
Sätze, Prosodie<br />
diskret<br />
kontinuierlich<br />
Merkmalsextraktion<br />
Spektralanalyse
32 2. Eigenschaften und Taxonomie von Sprache und Spracherkennern<br />
Aus der Sicht des automatischen Spracherkenners besteht Sprache aus<br />
einer über der Zeitachse aufgetragenen Folge von Spannungsmessungen, die<br />
am Mikrophon durch Luftdruckänderungen ausgelöst werden. In Abb. 2.3<br />
sind drei Aufnahmen des Wortes ” sieben“ von der selben Person dargestellt.<br />
Obwohl es sich jedes Mal um dasselbe Wort handelt, sehen die Aufnahmen<br />
sehr verschieden aus. Bis jetzt ist es noch niemandem gelungen definitiv<br />
festzulegen, wie bestimmte Laute in einer Aufnahme aussehen müßten oder<br />
welche Eigenschaften die Aufnahme haben müßte. Man kann sehr wohl<br />
einige Eigenschaften für die meisten Laute angeben. Allerdings zeigt sich in<br />
der Praxis, daß zum einen diese Eigenschaften nicht immer leicht zu messen<br />
sind und deren konkrete Ausprägung sehr stark schwanken kann, zum<br />
anderen genügt selbst die Feststellung dieser Eigenschaften nicht immer, um<br />
einen Laut zu identifizieren.<br />
Es ist faszinierend, mit welcher Selbstverständlichkeit, wir <strong>Mensch</strong>en einen<br />
Laut oder ein Wort verstehen können, unabhängig davon, ob sie laut oder<br />
leise, schnell oder langsam gesprochen sind, ob sie normal gesagt, geflüstert,<br />
geschrien oder gesungen werden, unabhängig davon, wer sie spricht, in welcher<br />
Gemütslage der Sprecher sind befindet, und unabhängig von vielen anderen<br />
das Signal maßgeblich verändernden Kriterien.<br />
Abb. 2.3. Drei Aufnahmen des Wortes ” sieben“
3. Geschichte der Spracherkennung<br />
Die Idee, Sprache automatisch zu erkennen, hat schon die <strong>Mensch</strong>en im<br />
Altertum fasziniert. Weltbekannt sind die Geschichten um Ali Baba, der<br />
versuchte, mittels des Paßwortes ” Sesam öffne dich“ in eine Höhle zu<br />
kommen. In Sizilien nahe der antiken Stadt Syrakus gibt es noch heute eine<br />
Höhle, die das Ohr des Dionysos genannt wird. Sie ist so geformt, daß sie wie<br />
eine riesige Ohrmuschel wirkt und im Altertum von den Syrakusern dazu<br />
benutzt wurde, die Geräusche von Angreifern frühzeitig zu erkennen.<br />
Die ersten Versuche, Sprache auf irgend eine algorithmische Art zu<br />
bearbeiten, gehen wohl auf Homer Dudley zurück. Der in vielen Abhandlungen<br />
über Spracherkennung zitierte Artikel [?] von 1939 ” Remaking<br />
Speech“ und schon zuvor in [?] beschreibt eine Erfindung, die Homer<br />
Dudley, ein Mitarbeiter der Bell Telephony Laboratories, 1928 gemacht<br />
hatte, die es ermöglichen sollte, Sprache über ein im selben Jahr verlegtes<br />
transatlantisches Kabel zu übertragen, obwohl das Kabel nur Frequenzen<br />
bis maximal 100 Hz übertragen konnte. Zwar waren 100 Hz für die damalige<br />
Zeit und für eine so weite Entfernung enorm, jedoch viel zu wenig, um damit<br />
verständliche Sprache zu übertragen. Dudleys Idee war es nun, einen so<br />
genannten ” Vocoder“ zu bauen, der bestimmte Eigenschaften des Sprachsignals<br />
extrahiert, diese codiert und über das Kabel schickt. Auf der anderen<br />
Seite könnte dann das Sprachsignal aus den übertragenen Eigenschaften<br />
wieder synthetisiert werden. Sprachübertragung durch elektromagnetische<br />
Wellen war damals schon weit verbreitet, selbst transatlantisch war dies<br />
schon gelungen, und im Hinblick darauf, daß damals nicht klar war, welche<br />
Eigenschaften des Sprachsignals übertragen werden sollten – die Bestimmung<br />
der Zustände des Artikulationsapparates war zwar angedacht aber technisch<br />
nicht machbar – war es nicht weiter verwunderlich, daß die Erfindung gute<br />
zehn Jahre benötigte um zum ersten Mal ernsthaft eingesetzt zu werden.<br />
Im Jahr 1939 wurde ein riesiger Apparat aus vielen Röhrenverstärkern und<br />
anderen klobigen Bauteilen auf der Weltausstellung in New York vorgeführt,<br />
der die spektralen Eigenschaften des Signals analysieren und codieren<br />
konnte. Vermutlich war die Hauptattraktion des Gerätes das Abspielen<br />
von lustig klingender Sprache, nachdem diese auf 1551 Bit pro Sekunde<br />
komprimiert worden war. Im zweiten Weltkrieg allerdings wurde es nötig,
34 3. Geschichte<br />
eine abhörsichere Leitung zwischen dem Weißen Haus in Washington und<br />
London zu verwenden auf der auch Sprache übertragen werden konnte. Da<br />
Dudleys Erfindung die Sprache digitalisierte, war es ein Leichtes, die digitale<br />
Version zu verschlüsseln und über das Atlantikkabel zu übertragen. Schon<br />
bald wurden höhere Übertragungsraten möglich, und die Verwendung der<br />
Halbleitertechnik ermöglichte weiteren Fortschritt, so daß Dudleys Vocoder<br />
bald nicht mehr aktuell war. Jedoch ist es ihm zu verdanken, daß viele<br />
Sprachforscher sich Gedanken gemacht haben, welche Eigenschaften ein<br />
Sprachsignal ausmachen, was benötigt wird, um den Inhalt des Gesprochenen<br />
wiederzuerkennen, und wie diese Eigenschaften sinnvoll codiert werden<br />
können. Auch spätere Sprachanalysesysteme (z.B. [?]) bedienten sich des<br />
Begriffs ” Vocoder“.<br />
Schon Ende der vierziger, Anfang der fünfziger Jahre [?] [?] wurden<br />
Forschungsarbeiten durchgeführt, um aus digitalisierten Sprachsignalen<br />
deren Inhalt zu extrahieren. Die ersten Experimente wurden noch auf<br />
dem reinen Signal gemacht. Später ging man dazu über, das Signal so<br />
vorzuverarbeiten, daß als Merkmalsraum für die Erkennung nicht mehr der<br />
Zeitbereich, sondern der Frequenzbereich des Signals verwendet wurde. Die<br />
erstaunlich guten Leistungen von Experten [?], die anhand einer vorliegenden<br />
Spektralanalyse eines Sprachsegments das Gesagte korrekt herauslesen<br />
konnten, ermunterte die Forscher dazu, das Spektrum als das Merkmal der<br />
Wahl für die automatische Spracherkennung zu verwenden.<br />
Die frühen Forschungsarbeiten wurden mit Aufnahmen von Vokalen eines<br />
Sprechers durchgeführt [?] [?]. Erst später fing man an, größere Spracheinheiten<br />
zu erkennen. Als es möglich war, ganze Wörter zu erkennen [?] [?],<br />
entstanden verschiedene Anwendungen, wie zum Beispiel die Steuerung von<br />
Geräten oder die Identifizierung von Sprechern. Der Benutzer mußte jedes<br />
zu erkennende Wort ein oder mehrere Male sprechen, damit der Erkenner<br />
Referenzmuster anlegen konnte. Während der Erkennung wurde dann das<br />
Gesprochene mit den gespeicherten Referenzen verglichen und die Klasse<br />
des am besten passenden Musters identifiziert.<br />
In den siebziger Jahren wurde die Erkennung von kontinuierlicher<br />
sowie sprecherunabhängiger Sprache vorangetrieben [?]. Die Größen der<br />
verwendeten Wortschätze und die Vielfalt der akustischen Eigenschaften<br />
verschiedener Sprecher machten es nicht mehr praktikabel, für jedes zu<br />
erkennende Wort Referenzmuster zu sammeln und abzuspeichern. Die<br />
angelegten Referenzmuster bezogen sich nun auf kleinere Spracheinheiten,<br />
wie Phoneme, aus denen jedes Wort des Erkennervokabulars konkateniert<br />
werden konnte. Der Einsatz kontinuierlicher Sprache brachte einen weiteren<br />
Schwierigkeitsgrad mit sich. Nun waren die Grenzen der einzelnen Wörter<br />
nicht mehr vorgegeben und mußten vom Erkenner selbst gefunden werden,
3. Geschichte 35<br />
so daß neuartige Fehler wie das Nichterkennen gesprochener Wörter oder das<br />
fälschlicherweise Erkennen nicht gesprochener Wörter auftraten. Außerdem<br />
werden die Wörter in kontinuierlicher Sprache anders ausgesprochen, die<br />
Satzmelodie fängt an eine Rolle zu spielen, und an den Wortgrenzen<br />
treten Koartikulationseffekte auf. Zur Lösung all dieser Probleme boten<br />
sich Hidden Markov Modelle als die geeignetste Lösung an. Sie boten die<br />
Möglichkeit, komplexe Spracheinheiten wie Wörter oder Sätze aus kleineren<br />
Einheiten leicht zusammenzusetzen. Suchtechniken ermöglichten es, unter<br />
Zuhilfenahme von Sprachmodellen Wortfolgen zu erkennen, die nie zuvor<br />
in der Entwicklung der Erkenner oder der Sprachmodelle beobachtet wurden.<br />
Verschiedene Anwendungen für das Erkennen sprecherunabhängiger<br />
Sprache wurden entwickelt. Dazu gehörten so einfache Dinge wie das<br />
Bedienen von Geräten, aber auch so komplizierte wie die Übersetzung in<br />
eine andere Sprache [?]. Lange Zeit war eine ausreichend gute Erkennung<br />
nur bei einer Einschränkung der Domäne gesichert. Das Diktieren beliebiger<br />
Texte war dennoch nur mit kurzen Pausen zwischen je zwei Wörtern sinnvoll<br />
möglich. Bis heute hat sich auf dem Markt noch kein Produkt etabliert,<br />
das es erlaubt, beliebige Diktate von beliebigen Sprechern mit zufriedenstellender<br />
Genauigkeit zu erkennen. Selbst die Forschungsprototypen sind<br />
nur wenig besser als die käuflich erhältlichen. Die Anforderungen an ein<br />
Diktiersystem sind normalerweise so hoch, daß jedes mißverstandene Wort<br />
als unakzeptabler Fehler angesehen wird. Bei anderen Anwendungen, bei<br />
denen die Sprache dazu verwendet wird, eine bestimmte Aktion zu initiieren,<br />
können Fehlerkennungen toleriert werden, solange immer noch die korrekte<br />
Aktion durchgeführt wird. Diktierte Sprache ist in der Regel anders als<br />
spontane Sprache, weil der Diktierende sorgfältiger spricht und versucht,<br />
grammatikalische Fehler und Störungen wie Geräusche oder Stottern zu<br />
vermeiden. Das heißt, daß die Erkennung spontaner Sprache eine größere<br />
Herausforderung darstellt, was sich auch in der Praxis durchweg in Form<br />
schlechterer Erkennungsraten bemerkbar macht. Dennoch lassen sich die<br />
meisten Erkenntnisse, die in der Forschung mit diktierter Sprache gewonnen<br />
werden, auch auf die Erkennung spontaner Sprache anwenden.<br />
Einer der wichtigsten Motoren der Spracherkennungsforschung waren<br />
die Programme der Defense Advanced Research Projects Agency“<br />
”<br />
(DARPA – zeitweise auch nur ARPA genannt) der US Regierung, von<br />
deren Seite zunehmend Wert darauf gelegt wird, Sprache unter widrigen<br />
Bedingungen (schlechte Aufnahmequalität, laute Hintergrundgeräusche,<br />
Nichtmuttersprachler, Telefonsprache etc.) zu erkennen. Obwohl diese Ziele<br />
erstrebenswert sind, ist die Leistung der weltbesten Erkenner auf sogenannter<br />
” sauberer“ Sprache noch lange nicht gut genug, um das Problem als gelöst<br />
zu betrachten. Aus Untersuchungen [?] [?] weiß man, daß <strong>Mensch</strong>en beliebige<br />
klare Aufnahmen in ihrer Muttersprache mit weniger als einem Prozent
36 3. Geschichte<br />
Fehler erkennen können. Davon sind die heutigen Spracherkenner noch eine<br />
Größenordnung entfernt. Abb. 3.1 zeigt die Beschreibung der Situation und<br />
die etwas zu optimistischen Erwartungen der DARPA Mitte der neunziger<br />
Jahre, die bis heute nocht nicht in vollem Umfang erfüllt werden konnten.<br />
Mobilität Einsatzmöglichkeiten<br />
Panzer, Hubschrauber<br />
(überall)<br />
Geräuschumgebung<br />
Automobilgeräusche<br />
Funkverbindungen<br />
Mobiltelefone<br />
normales Büro<br />
verschiedene Mikrophone<br />
Telefongespräche<br />
Sprechstil<br />
geplante<br />
Sprache<br />
stiller Raum<br />
hochqualitative<br />
Mikroph.<br />
natürlichsprachlicher<br />
<strong>Mensch</strong>-<strong>Maschine</strong> Dialog<br />
alle Sprechstile, incl.<br />
<strong>Mensch</strong>-zu-<strong>Mensch</strong> Dialoge<br />
alle Sprecher einer Sprache<br />
auch Nichtmuttersprachler<br />
regionale Akzente<br />
mehrere Sprachen<br />
sprecherabängig<br />
vorsichti- anwendungs-<br />
ges Lesen spezifisch<br />
Englisch<br />
sprecheradaptiv<br />
mehrere Expertenjahre<br />
für Sprachmodell<br />
Abb. 3.1. Zeitplan von Allan Sears (DARPA)<br />
ein Ingengieurjahr<br />
mit spezifischen Daten<br />
Benutzermenge<br />
Portierbarkeit auf neue Anwendungen<br />
anwendungsunabhängig<br />
oder -adaptiv<br />
Verfügbarkeit Kosten<br />
1985 1995 1999 2002<br />
3.1 Geschichte der (D)ARPA Evaluationen<br />
Abb. 3.2 zeigt die Entwicklung der Fehlerraten der besten Erkenner bei<br />
DARPA Evaluationen. Noch vor Beginn der Zeitachse in Abb. 3.2, in der Zeit<br />
von 1971 bis 1976, initiierte die DARPA das SUR (Speech Understanding<br />
Research) Projekt mit dem Ziel, Spracherkenner zu entwickeln, die bis dahin<br />
unerreichte Leistungen erbringen sollten. So wurde erwartet, daß zusammenhängende<br />
Sprache erkannt werden sollte. Dabei sollte es möglich sein,<br />
mehrere Sprecher zu verstehen. Das System sollte nicht notwendigerweise<br />
vollständig sprecherunabhängig sein, aber zumindest sollte die Menge and<br />
Daten, die benötigt würde um auf einen neuen Sprecher umzustellen, gering
% Wortfehlerrate<br />
100<br />
60<br />
50<br />
40<br />
30<br />
20<br />
10<br />
6<br />
5<br />
vorgelesene spontane<br />
Sprache Sprache<br />
RM<br />
5000<br />
Wörter<br />
3.1 Geschichte der (D)ARPA Evaluationen 37<br />
Telefonkonversationen<br />
WSJ<br />
20000<br />
Wörter<br />
unbeschränktes<br />
Vokabular<br />
1000Wörter 60000Wörter<br />
Nachrichten<br />
SWB<br />
4<br />
’87 ’88 ’89 ’90 ’91 ’92 ’93 ’94 ’95 ’96 ’97 ’98 ’99 ’00 ’01 ’02 ’03 ’04<br />
BN<br />
Abb. 3.2. Entwicklung der Worterkennungsraten mit der Zeit<br />
STT<br />
Meetings<br />
gehalten werden. Die Größe des Vokabulars wurde mit mindestens 1000<br />
Wörtern veranschlagt, und die Menge der erlaubten Äußerungen wurde<br />
durch eine künstliche Grammatik mit einem mittleren Verzweigungsgrad<br />
von 33 definiert. Die zu entwickelnden Systeme sollten auf einem 100<br />
MIPS Rechner weniger als 10% Fehler machen und dabei nur wenige Male<br />
langsamer als in Echtzeit laufen.<br />
Das erfolgreichste System des SUR Projektes wurde 1976 an der Carnegie<br />
Mellon University in Pittsburgh entwickelt und erfüllte alle Erwartungen.<br />
Bei nur ca. 20 Adaptionssätzen je Sprecher konnte HARPY die Sprache von<br />
fünf Sprechern mit weniger als 5% Fehlern erkennen. Auf einem 4 MIPS<br />
Rechner (einer PDP-10 von digital) lief der Erkenner in ca. 80-facher Echtzeit.<br />
Seit dem SUR Projekt wurden bis heute verschiedene Evaluationen von<br />
Spracherkennern organisiert. Ende der Achtziger und Anfang der Neunziger<br />
war noch die so genannte Resource Management Task der internationale<br />
Standard Benchmark für die Leistungsmessung von Erkennern für sprecherunabhängige<br />
kontinuierliche Sprache. Die Resource Management Task (RM)<br />
bot für das Training der Erkenner mehrere Stunden Sprachaufnahmen von<br />
ca. 80 verschiedenen Sprechern. Ebenso wie im SUR Projekt wurde auch bei<br />
RM eine künstliche Grammatik verwendet die geeignet war, die Kommandos<br />
zu beschreiben, die ein Marineoffizier zur Kontrolle und Steuerung der<br />
weltweiten US-Marineressourcen sprechen sollte. Die Vokabulargröße betrug
38 3. Geschichte<br />
auch hier ca. 1000 Wörter.<br />
Als abzusehen war, daß RM der Forschung kaum noch Herausforderungen<br />
bot, ging die DARPA dazu über, schwierigere Aufgaben zu verfolgen. Anfang<br />
der Neunziger wurden die ATIS (Air Travel Information System) und WSJ<br />
(Wall Street Journal) Benchmarks definiert. Bei ATIS bestand die Aufgabe<br />
darin, nicht nur die Sprache einer Person zu erkennen, die einen Flug buchen<br />
möchte, sondern auch das Gesprochene zu verstehen und mit dem Sprecher<br />
einen Dialog zu führen, bis der gewünschte Flug gefunden und gebucht<br />
war. Die größte Herausforderung gegenüber RM stellte jetzt die spontane<br />
Sprache dar. Zwar waren die zu sprechenden Sätze in der Regel nicht sehr<br />
kompliziert, aber es wurde keine feste Grammatik vorgegeben, die Benutzer<br />
konnten frei sprechen. Die Behandlung spontaner Sprache mußte mit neuen<br />
Problemen (fehlerhafte Aussprache, Geräusche, Wortabbrüche etc.) fertig<br />
werden. Die neue Herausforderung bei WSJ bestand vor allem in dem großen<br />
Vokabular. Ausgehend von zunächst 5000 Wörtern wurde der Benchmark<br />
in wenigen Jahren auf schließlich offiziell unbeschränkte (praktisch aber<br />
60000 Wörter große) Vokabulare ausgeweitet. Derart große Vokabulare<br />
brachten nicht nur die Problematik mit sich, mehr verwechselbare Wörter<br />
zu besitzen, sie trieben auch die entwickelten Erkenner an die Grenzen der<br />
Rechnerkapazitäten. Die zur Verfügung gestellten Trainingsdaten übertrafen<br />
beim WSJ alle bis dahin verfügbaren. Mit insgesamt fast 200 Stunden<br />
Sprachaufnahmen von mehreren hundert Sprechern standen so viele Trainingsdaten<br />
zur Verfügung, daß die Parameterräume der Akustischen Modelle<br />
sehr groß gewählt werden konnten. Auch die Textdaten, die zum Trainieren<br />
der linguistischen Sprachmodelle verwendet wurden hatten mit 300 000 000<br />
Worten eine enorme Größe. Die WSJ Aufnahmen bestanden aus diktierten<br />
und vorgelesenen Zeitungsartikeln. Die Qualität der Aufnahmen war wie bei<br />
SUR, RM und ATIS sehr gut. Die Sprache wurde immer in einem ruhigen<br />
Büro mit einem Nachbesprechungsmikrophon aufgenommen.<br />
Mitte der Neunziger, als die Fehlerraten der besten Erkenner, die an den<br />
alljährlichen Evaluationen teilnahmen, für unbeschränkte Vokabulare bei ca.<br />
6% war, ging die DARPA dazu über, Erkennungsaufgaben zu definieren,<br />
bei denen die Umstände deutlich schwieriger waren. Dabei wurden dann<br />
zunächst die SWB (Switchboard) Task und die BN (Broadcast News) Task<br />
definiert. Bei SWB ging es darum, Sprache von Personen zu erkennen, die<br />
sich über das Telefon über ein vorgegebenes Thema unterhalten. In einer<br />
späteren Varianten (Call Home Task) wurde auf die Vorgabe des Themas<br />
verzichtet, und die Personen durften sich mit Bekannten oder Verwandten<br />
am Telefon über beliebige Themen unterhalten. Die Gespräche wurden<br />
mitgeschnitten und in Handarbeit transkribiert. Für die SWB-Evaluation<br />
im Jahre 2004 wurde die Trainingsdatenmenge um ein Größenordnung<br />
von 250 auf ca. 2500 Stunden erweitert. Die ersten Evaluationen auf
3.1 Geschichte der (D)ARPA Evaluationen 39<br />
SWB ergaben bei allen Teilnehmern sehr hohe Fehlerraten um 50%. Experimente<br />
ergaben, daß weniger die die Signalqualität verschlechternden<br />
Eigenschaften der Telefonleitungen, sondern vielmehr die sehr spontane<br />
völlig freie Sprache für den großen Fehlerzuwachs verglichen mit WSJ<br />
verantwortlich war. Im Laufe weniger Jahre verbesserten sich die bei den<br />
Evaluationen gemessenen Fehlerraten auf schließlich nahe 20%. Mit den<br />
extrem erweiterten Trainingsdaten des Jahres 2004 konnten die Fehlerraten<br />
noch einmal deutlich auf schließlich ca. 15% reduziert werden. Die neue<br />
Herausforderung bei BN bestand vor allem darin, daß die Audiodaten aus<br />
vielen verschiedenen Quellen stammten. Die aufgezeichneten Nachrichtensendungen<br />
bestanden nicht nur aus der Sprache des Nachrichtensprechers,<br />
sondern enthielten auch Sprache von Interviewpartner, Korrespondenten,<br />
telefonisch übermittelten Berichten und sogar von Titelmusik, Jingles,<br />
und der zwischendurch gesendeten Werbeblöcken. 2004 wurde in die Reihe<br />
der DARPA Evaluationen unter dem Bereich ” Speech-to-Text (STT)“ die<br />
Erkennung von spontanen Besprechungen aufgenommen. Die beiden Punkte<br />
in Abb. 3.2 geben die Wortfehlerraten der besten Systeme für Nahbesprechungsmikrophone<br />
(32.7%) und für ein einzelnes Tischmikrophon (49.8%) an.<br />
Die Tendenz der am häufigsten bearbeiteten Erkennungsaufgaben<br />
geht heute in die Richtung von maschinenunterstützter <strong>Mensch</strong>-<strong>Mensch</strong>-<br />
<strong>Kommunikation</strong>, wie sie zum Beispiel bei Verhandlungen, Besprechungen<br />
und auch Vorträgen oder Vorlesungen zu finden ist. Die Schwierigkeiten<br />
dieser Aufgaben liegen zum einen in der größeren Spontaneität als zum Beispiel<br />
beim Diktieren oder bei geplanter Sprache in Fernsehnachrichten, zum<br />
anderen im größeren (Spezial-)Vokabular und einer größeren Spezialisierung<br />
bei den verwendeten Phrasen als bei alltäglichen Telefondialogen.
4. Anatomie Sprachproduktion und Perzeption<br />
In diesem Kapitel werden einige Grundlagen der Biologie der Sprachkommunikation<br />
behandelt. Ein Verständnis der Prozesse, die in der Natur des<br />
Sprechens und Hörens liegen, kann helfen, die Modelle, die wir uns von<br />
der Natur machen, leichter zu verstehen. Ohne das Bewußtsein, daß alle<br />
Mathematik zur automatischen Spracherkennung im Prinzip das nachbilden<br />
soll, was in der Natur abläuft, laufen wir leicht gefahr, die Modelle für die<br />
Realität zu halten. So manches schwer erklärliche Verhalten der Programme,<br />
die wir entwickeln, ist darauf zurückzuführen, daß das zugrundegelegte<br />
Modell der Wirklichkeit nicht ausreichend genau entspricht.<br />
Bei der Frage nach der besten Art, Funktionen der Natur nachzubilden,<br />
hört man oft das Argument, daß es nicht nötig sei, der Natur genau auf die<br />
Finger zu schauen. Schließlich schlagen Flugzeuge ja auch nicht mit ihren<br />
Flügeln. Aber auch wenn Flugzeuge starre Flügel haben und Autos keine<br />
Beine, so ist ein Studium der Vorgänge in der Natur nicht grundsätzlich<br />
wertlos.<br />
Gerade in der automatischen Spracherkennung ist es so, daß die Art der<br />
Modellierung der natürlichen Prozesse nicht wirklich überzeugend ist. Das<br />
größte Problem ist, daß wir gar nicht wissen, was eigentlich modelliert werden<br />
soll und welches das geeignetste Modell ist. Die am besten funktionierenden<br />
Spracherkennungssysteme basieren fast ausschließlich auf Statistik. Wenn wir<br />
einen Spracherkenner bauen, dann leiten wir keine Regeln dafür ab, welche<br />
Eigenschaften bestimmte Laute haben, und wie man diese Eigenschaften<br />
messen kann. Wir wissen nämlich gar nicht, welche Eigenschaften zum<br />
Beispiel der Laut ” ah“ hat. Wir können uns vielleicht viele ” ah“-Laute hören<br />
oder auch die aufgezeichneten und verarbeiteten Signale betrachten, wir<br />
werden aber nur statistische Aussagen machen können, weil wir feststellen<br />
müssen, daß häufig beobachtete Eigenschaften nicht notwendigerweise<br />
vorhanden sein müssen. Und wenn wir dann noch verschiedene ” ah“-Laute<br />
unter verschiedenen Bedingungen betrachten (geschrien, geflüstert, gesungen,<br />
von Kindern gesprochen, von Rauchern gesprochen, usw.), stellen wir<br />
sogar fest, daß sogar eine statistische Aussage über ihre Eigenschaften nur<br />
schwer möglich ist. Zum einen kann es vorkommen, daß die akustischen
42 4. Anatomie Sprachproduktion und Perzeption<br />
Eigenschaften eines ah“, das auf eine bestimmte Art gesprochen wurde,<br />
”<br />
den Eigenschaften eines oh“ ähnlicher sind, als den Eigenschaften eines<br />
”<br />
” ah“, das auf eine andere Art gesprochen wurde. Zum anderen ist es so,<br />
daß selbst der Laut, den wir als ah“ bezeichnen, sich ganz unterschiedlich<br />
”<br />
anhören kann, je nachdem von welchem <strong>Mensch</strong>en er artikuliert wird, und<br />
in welchem Kontext er gesprochen wird. Neben der großen Variabilität der<br />
möglichen Aussprachen desselben Lautes stellt die Menge an Daten, die<br />
bei Sprachaufnahmen anfallen, ein weiteres Problem dar. Erst Anfang der<br />
80er Jahre war die Technik in der Lage, digitalisierte Audioaufnahmen in<br />
zufriedenstellender Qualität zu verarbeiten und der breiten Bevölkerung<br />
zugänglich zu machen. Während eine Schreibmaschinenseite Text etwa 2<br />
KByte (unkomprimiert) Speicher benötigt, braucht man zu Speichern einer<br />
Sprachaufnahme in der diese Seite vorgelesen wird – angenommen, das<br />
dauert zwei Minuten – in CD-Mono-Qualität immerhin ca. 10 MByte, also<br />
das 5000-fache. Selbst mit sehr guten Kompressionsverfahren läßt sich ein<br />
Zwei-Minuten-Sprachsignal nicht auf nennenswert weniger als 100 KByte<br />
komprimieren, wenn es hinterher noch verständlich sein soll. Allein schon die<br />
Tatsache, daß sich Sprachaufnahmen so drastisch komprimieren lassen, läßt<br />
darauf schließen, daß sie sehr viel für das Verstehen redundante Information<br />
enthalten. Eine wichtige Aufgabe der Sprachsignalverarbeitung besteht<br />
demnach darin, möglichst viel von dieser Redundanz zu entfernen und nur<br />
das übrig zu lassen, was wirklich benötigt wird, um die Sprache zu erkennen.<br />
Leider sind wir von der idealen Lösung dieses Problems noch sehr weit<br />
entfernt. Um zu verstehen, was in einem Sprachsignal wirklich wichtig ist,<br />
kann es unter Umständen hilfreich sein, zu verstehen, wie ein Sprachsignal<br />
entsteht, und wie die Anatomie im <strong>Mensch</strong>en funktioniert, die Sprache<br />
produziert: der Vokaltrakt mit seinen Bestandteilen, und auch der Apparat,<br />
der Sprachsignale verarbeitet und zum Verstehen weiter ins Gehirn leitet,<br />
das Ohr.<br />
4.1 Anatomie des Artikulationsapparates<br />
Das Verständnis der Anatomie der Teile des <strong>Mensch</strong>en, die für die Produktion<br />
von Sprache zuständig sind, ist hilfreich für das Verstehen der Signale, die<br />
der Artikulationsapparat erzeugt. Tatsächlich gibt es einige Bestrebungen,<br />
die Sprache nicht nur als Beobachtung akustischer Phänomene zu betrachten,<br />
sondern als akustische Manifestation von Zuständen und Zustandsfolgen<br />
der Artikulatoren, der Bestandteile des Artikulationsapparates. Dies ist<br />
insbesondere deshalb sinnvoll, weil allein schon aus physikalischen und<br />
biologischen Gründen nicht jeder Zustand des Artikulationsapparates<br />
jedem anderen unmittelbar folgen kann. Die Artikulatoren müssen stetige<br />
Bewegungen durchführen, können keine Sprünge machen. Die Ausprägung
4.1 Anatomie des Artikulationsapparates 43<br />
einzelner Laute hängt also davon ab, welche Laute danach und welche<br />
davor artikuliert werden. Teilweise wird der Schluß eines Lautes noch von<br />
einem Teil der Artikulatoren gesprochen während ein anderer Teil schon den<br />
Anfang des folgenden Lautes produziert (s. Abb. 4.1).<br />
[U] [F] [ER]<br />
Abb. 4.1. Überlagerung und Übergänge von Lauten<br />
4.1.1 Bestandteile des Artikulationsapparates<br />
Abbildung 4.2 skizziert einen Sagittalschnitt durch den Kopf eines <strong>Mensch</strong>en,<br />
bei dem alle wichtigen an der Artikulation von Sprache beteiligten<br />
Teile ausgewiesen sind. Dazu gehören Mund- und Rachenraum, der einen<br />
Resonanzkörper darstellt, ebenso wie die Nasenhöhle, die bei einigen<br />
Lauten (den Nasalen) als zusätzlicher Resonanzraum hinzugenommen<br />
werden kann. Die Luftröhre verläuft vor der Speiseröhre. Letztere ist an<br />
der Spracherzeugung kaum beteiligt. Damit beim Schlucken keine Speisen<br />
und Flüssigkeiten in die Luftröhre gelangen, wird diese abgedeckt durch ein<br />
Luftröhrenverschlußläppchen, der sogenannten Epiglottis. In der Höhe des<br />
Halses befindet sich der Kehlkopf. Geschützt vom Schildknorpel beinhaltet<br />
er die Stimmbänder. Die Stimmbänder sind wie zwei halbkreisförmige<br />
Läppchen ähnlich einer doppelten Schwingtüre, wie man sie aus den Saloons<br />
der Wildwestfilme kennt, die einander gegenüberliegend die Luftröhre<br />
verschließen können. Die Luftröhrenöffnung, die durch die Stimmbänder<br />
freigelassen wird, nennt man Glottis. Neben den Stimmbänden ist das<br />
wichtigste Organ des Artikulationsapparates die Zunge. Ihre Stellung ist<br />
verantwortlich für die meisten Lautunterscheidungen, vor allem bei Vokalen.<br />
Das Gaumensegel (Velum) ist das hintere Ende des weichen Gaumens<br />
und kann die Verbindung zwischen der Mundhöhle und der Nasenhöhle<br />
verschließen, was bei den meisten Lauten auch geschieht. Nur bei nasalen<br />
Lauten senkt sich das Velum und öffnet die Verbindung. Der Mundraum<br />
ist nach oben hin abgeschlossen, in der Mitte durch den harten Gaumen<br />
(Palatum) und vorne durch den Zahndamm. Auch die Zähne und die Lippen<br />
sind an der Artikulation beteiligt, vor allem bei Reibelauten. Schließlich wird<br />
auch die Abstrahlung der Schallwellen durch die Form der Öffnungen der<br />
Nasenlöcher und der Lippen beeinflußt. Der Bereich von den Stimmbändern<br />
Zeit
44 4. Anatomie Sprachproduktion und Perzeption<br />
Speiseröhre<br />
(Esophagus)<br />
Gaumensegel<br />
(Velum)<br />
Uvula<br />
Rachen<br />
Glottis<br />
Zähne<br />
Schildknorpel<br />
Luftröhre<br />
(Trachäa)<br />
Nasenhöhle<br />
Zahndamm (Alveoli)<br />
Gaumen (Palatum)<br />
Epiglottis<br />
Abb. 4.2. Anatomie des Artikulationsapparates<br />
Zunge<br />
Nasenlöcher<br />
Oberlippe<br />
Unterlipe
4.1 Anatomie des Artikulationsapparates 45<br />
bis zum Mundraum wird auch als Vokaltrakt bezeichnet. Typischerweise ist<br />
der Vokaltrakt bei Männern länger als bei Frauen.<br />
4.1.2 Der Prozeß der Sprachproduktion<br />
Beim Sprechen wird zunächst durch Verkleinern der Lunge die darin enthaltene<br />
Luft komprimiert, sie strömt in der Luftröhre nach oben. Bei stimmlosen<br />
Lauten ist die Glottis weit geöffnet und die Luft kann ungehindert hindurchfließen.<br />
Es entstehen zwar Verwirbelungen der Luft beim Vorbeiströmen<br />
an den Stimmbändern und anderen Organen aber der Luftfluß wird in der<br />
Glottis nicht unterbrochen. Bei stimmhaften Lauten wird die Glottis durch<br />
die Stimmbänder periodisch verschlossen und geöffnet. Dabei wird der aus<br />
der Lunge kommende Luftstrom in einzelne Impulse zerhackt. Die Frequenz,<br />
mit der dies geschieht, wird durch die Anspannung der Stimmbänder<br />
bestimmt. Die Spannung der Stimmbänder wird durch Muskeln am Rand<br />
der Luftröhre gesteuert. Ähnlich wie bei Gitarrensaiten schwingen auch die<br />
Stimmbänder schneller, wenn sie stärker angespannt sind. Die Frequenz, mit<br />
der Luftimpulse erzeugt werden, nennt man die Grundfrequenz. Der Leser<br />
mache sich aber klar, daß durch die Stimmbänder die Luft nicht wie bei<br />
schwingenden Saiten von Musikinstrumenten in Schwingungen versetzt wird,<br />
sondern in diskrete einzelne Impulse zerstückelt wird. Da die Impulse sehr<br />
hochfrequent sind und im Rest des Artikulationsraumes moduliert werden,<br />
können wir die einzelnen Impulse nicht mehr getrennt wahrnehmen.<br />
Die Luftimpulse verlassen die Luftröhre in den Rachenraum, wobei<br />
die Epiglottis geöffnet sein muß. Deshalb ist es auch nicht ratsam, beim<br />
Sprechen zu essen oder zu trinken. Wenn das Velum die Öffnung zum<br />
Nasenraum freigibt, dann breiten sich die Impulse auch in die Nasenhöhle<br />
aus, sonst nur in den Mundraum. Die Form der Mundhöhle bestimmt stark,<br />
wie sich einzelne Laute anhören. Sie wird vor allem durch die Lage der<br />
Zunge bestimmt.<br />
Abb. 4.3 zeigt mehrere Sagittalschnitte für verschiedene Vokale. Man<br />
unterscheidet zwischen tonalen Sprachen und nicht tonalen Sprachen.<br />
Während bei nicht tonalen Sprachen die an den Stimmbändern erzeugte<br />
Impulsfrequenz (die Grundfrequenz) keine Rolle für die Unterscheidung<br />
von Lauten spielt, ist dies bei tonalen Sprachen anders. Insbesondere im<br />
Chinesischen ist der Verlauf der Grundfrequenz während eines Lauts von<br />
entscheidender Bedeutung. Im Deutschen allerdings kann jeder Laut mit<br />
verschiedenen Grundfrequenzen und sogar mit verschiedenen zeitlichen<br />
Frequenzverläufen artikuliert werden, ohne daß er mit einem anderen<br />
verwechselt werden kann. So ist es also nicht die Erzeugung des Schalls an<br />
den Stimmbändern, die einen Laut vom anderen trennt, sondern allein die
46 4. Anatomie Sprachproduktion und Perzeption<br />
Form des Vokaltraktes. Dabei spielt insbesondere die Position des obersten<br />
Punktes der Zunge (Dorsum) die ausschlaggebende Rolle.<br />
die<br />
Mähr Aah Jean Heu<br />
Fluß<br />
mit hey<br />
Fuß<br />
matt<br />
nett<br />
Abb. 4.3. Verschiedene Formen des Vokaltraktes bei verschiedenen Vokalen<br />
4.1.3 Sprachlaute<br />
Bei naiver Betrachtung der Sprachproduktion geht man davon aus, daß<br />
Sprache eine Aneinanderreihung von irgendwie klassifizierbaren und benennbaren<br />
Einheiten, den Sprachlauten besteht. Die Bennennung dieser<br />
Einheiten kann man schon als eigene Teildisziplin der Phonetik ansehen.<br />
Alle in Europa üblichen Schriften verwenden eine Art Buchstabenalphabet,<br />
bei dem jeder Buchstabe – oder zumindest einige kleine Buchstabengruppen<br />
– einem Laut entsprechen. Die sehr alten hebräischen, arabischen<br />
und griechischen Schriften, aber auch die lateinischen und kyrillischen<br />
Schriften waren ursprünglich als lautebeschreibende Schriften konzipiert.<br />
hör
4.1 Anatomie des Artikulationsapparates 47<br />
Verschiedene Dialekte sowie ständige modifizierende Einflüsse durch andere<br />
Sprachen haben oft die Aussprache von der Schriftform abweichen lassen,<br />
so daß heute aus der Schriftform oft nur mit Hilfe von Kontextwissen<br />
die Aussprache in einer ” Hochsprache“ abgeleitet werden kann. Mit der<br />
immer weiter fortschreitenden Globalisierung und Internationalisierung der<br />
Sprachen werden die Vokabulare mit neuen Namen und neuen Fremdwörtern<br />
angereichert, bei denen nicht immer eine neue Schriftform eingeführt wird.<br />
Einige Sprachen – vor allem slawische – haben den Einzug von Fremdwörtern<br />
und sogar fremder Eigennamen stets mit einer neuen Orthographie begleitet.<br />
So konnte man in Serbokroatischen Lexika von Gete (Goethe) und Sreda<br />
(Schröder) lesen.<br />
Wegen der sehr unterschiedlichen Verwendung der Alphabete war schon<br />
früh klar, daß die üblicherweise verwendeten Orthographien ungeeignet<br />
waren, um Folgen von Lauten zu beschreiben. In allen Sprachen gibt es viel<br />
mehr verschiedene Laute als Buchstaben. Die Wissenschaft, die sich mit<br />
der Erforschung der Sprachlaute befaßt, ist die Phonetik, abgeleitet vom<br />
griechischen Wort für Laut: ” Phon“. Die ”<br />
iInternational Phonetics Assosiation“ (IPA) hat eine Lautschrift eingeführt,<br />
das IPA-Alphabet, mit dem es ermöglicht werden sollte, alle Laute aller<br />
Sprachen der Welt in Textform darzustellen (s. Abs. 6.2).<br />
4.1.4 Modelle des Vokaltraktes<br />
Weil die Originale schwer zu beschreiben sind, machen uns gerne Modelle.<br />
Ein Modell kann man schon von vorn herein so entwerfen, daß es physikalisch<br />
und mathematisch analysierbar und beschreibbar ist. Außerdem kann das<br />
Modell nach Belieben verfeinert oder vereinfacht werden, je nachdem welche<br />
Funktionen wir untersuchen wollen.<br />
A<br />
E I O U<br />
Abb. 4.4. Resonatoren für deutsche Vokale nach Christian Gottlieb von Kratzen-<br />
stein
48 4. Anatomie Sprachproduktion und Perzeption<br />
Physikalische Modelle<br />
Noch lange bevor man an die Realisierbarkeit automatischer Spracherkennung<br />
glaubte, wurden Sprachsynthesesysteme gebaut, die immerhin in der<br />
Lage waren, Vokale verständlich zu sprechen. Dabei wurde versucht, die<br />
Funktion des menschlichen Vokaltraktes so gut wie möglich nachzubilden.<br />
Abb. 4.4 zeigt die Entwürfe von Christian Gottlieb von Kratzenstein. Dabei<br />
wird von unten Luft in die Modelle geblasen. Allerdings gehört schon viel<br />
guter Wille dazu, die entstehenden Geräusche als die entsprechenden Vokale<br />
zu interpretieren. 1846 baute Joseph Faber die sogenannte ” Speech Organ“<br />
(siehe Abbildung 4.5) – ein Instrument, dem man nachsagt, daß es verständliche<br />
Sprache produzieren konnte, ja sogar flüstern und Arien singen konnte.<br />
In London wurden damals Konzerte gegeben, auf denen die <strong>Maschine</strong> ” God<br />
Save the Queen“ gesungen haben soll. Sicherlich wären die meisten von uns,<br />
die mit den besten heute erhältlichen Sprachsynthesesystemen unzufrieden<br />
sind, mit der Qualität der von der Speech Organ produzierten Sprache noch<br />
viel unzufriedener gewesen, aber angesichts der mageren Ressourcen der<br />
damaligen Zeit war die Leistung, so eine <strong>Maschine</strong> zu bauen, doch beachtlich.<br />
Ähnliche mechanische Nachbildungen des Vokaltraktes kann man auch<br />
im Deutschen Museum in München bewundern und einige sogar selbst<br />
ausprobieren, indem man mit Hilfe eine Blasebalges Luft durch einen<br />
verformbaren künstlichen Vokaltrakt pumpen kann.<br />
Je nach eingestellter Form hört sich der produzierte Laut anders an, für<br />
das menschliche Ohr meist sehr ungewöhnlich. Sicher spielt dabei ein wenig<br />
auch die Psychologie eine Rolle. Wissend, daß ein Geräusch von so einem<br />
einfachen Gerät produziert wird, nehmen wir an, daß es künstlich klingen<br />
muß.<br />
Wird aus einer Tonaufnahme menschlicher Sprache ein sehr kurzes<br />
Stück, ein Laut, herausgeschnitten und in einer Endlosschleife abgespielt,<br />
dann fängt auch dieses an, sich sehr künstlich anzuhören und es ist schwer<br />
vorstellbar, daß es menschlichen Ursprungs ist.<br />
Aus dem Physikunterricht der Schule werden die meisten Leser sich an<br />
akustische Experimente mit einfachen Röhren erinnern. Den Effekt, den eine<br />
Röhre auf den durch sie hindurchlaufenden Schall hat, kann man relativ einfach<br />
beschreiben. Abb. 4.6 zeigt eine mögliche Vorstellung für ein Modell des<br />
Vokaltraktes, das physikalisch analysiert werden kann. Eine Vereinfachung<br />
dieses komplizierten Modells ist die Anordnung mehrerer einfacher Röhren<br />
mit unterschiedlichen Längen und Durchmessern hintereinander. Wenn die<br />
Röhren alle die gleiche Länge aber unterschiedliche Querschnittsflächen<br />
A1 . . .An haben (s. Abb. 4.7), läßt sich die Impulsantwort des Gesamtsy-
4.1 Anatomie des Artikulationsapparates 49<br />
Abb. 4.5. Ein frühes mechanisches Sprachsynthesesystem<br />
stems relativ einfach beschreiben ([?], [?]).<br />
Betrachtet man das Verhalten des Röhrensystems als Filter, stellt<br />
man fest, daß einige Frequenzen des durchlaufenden Schalls weniger, andere<br />
stärker gedämpft werden. Trägt man die ” Durchlässigkeit“ über der Frequenzachse<br />
auf, entstehen typischerweise Funktionen wie in Abb. 4.8. Diejenigen<br />
Frequenzen, die besonders ungedämpft durch die Röhren kommen, heißen<br />
Formanten. Als erste Formante wird die niedrigste Frequenz bezeichnet, bei<br />
der in der Impulsantwort ein deutlicher Maximalwert vorkommt. In Abb.<br />
4.8 sind die ersten drei Formanten eines Beispielsystems markiert. .
50 4. Anatomie Sprachproduktion und Perzeption<br />
Luftröhre<br />
00000 11111<br />
00000 11111 00 11<br />
00 11<br />
Rachen<br />
Stimmbänder<br />
00000<br />
11111<br />
00000<br />
11111<br />
00000<br />
11111 00 11<br />
Lunge<br />
00000<br />
11111<br />
00000<br />
11111 00 11<br />
00000<br />
11111<br />
00000<br />
11111<br />
00000<br />
11111<br />
Abb. 4.6. Ein physikalisches Model des Vokaltraktes<br />
Lippen<br />
A1<br />
A2<br />
A5<br />
A6<br />
Abb. 4.7. Ein System von Helmholtz-Resonatoren<br />
Nasenhöhle<br />
Velum Mund<br />
Glottis
4.1 Anatomie des Artikulationsapparates 51<br />
Impulsantwort<br />
1. 2. 3. f [Hz]<br />
Abb. 4.8. Formanten und Impulsantwort eins Systems von Helmholtz-Resonatoren<br />
Systemtheoretische Modelle<br />
Zu den beliebtesten Modellen des Vokaltraktes gehören so genannte Quelle-<br />
Filter-Modelle. Die Idee bei diesen Modellen ist, daß am Anfang des<br />
Spracherzeugungsprozesses ein Generator steht, der sowohl strukturierte<br />
Wellen (wie bei stimmhaften Lauten) als auch weißes Rauschen (wie bei<br />
stimmlosen Lauten) erzeugen kann. Diese Wellen durchlaufen dann einen<br />
Kanal (den Vokaltrakt), dessen Wirkung auf die Wellen mit Hilfe eines<br />
linearen zeitinvarianten Systems (LTI - linear time-invariant) beschrieben<br />
werden kann. Solche Effekte werden auch als Filter bezeichnet. Die Funktion<br />
eines Filters wird am besten durch seine Reaktion auf einen Impuls, die<br />
Impulsantwort, beschrieben. Die Impulsantwort ist diejenige Funktion,<br />
mit der ein in den Filter hineingeleitetes Signal gefaltet wird, um das<br />
Ausgangssignal zu berechnen. Ein Kanal wie der Vokaltrakt kann dabei aus<br />
mehreren hintereinandergeschalteten Filtern bestehen, wobei der Ausgang<br />
von Filter i+1 aus dem Ausgang von Filter i gefaltet mit der Impulsantwort<br />
von Filter i + 1 besteht.<br />
Abb. 4.9 zeigt ein Beispiel für ein Quelle-Filter-Modell.<br />
Rausch−<br />
generator<br />
Wellen−<br />
generator<br />
u Vokal− u ∗ v u ∗ v ∗ l<br />
Lippen<br />
trakt<br />
Abb. 4.9. Das Quelle-Filter-Modell der Sprachproduktion
52 4. Anatomie Sprachproduktion und Perzeption<br />
4.2 Anatomie des Gehörs<br />
Bei der Frage, welche Eigenschaften des Sprachsignals wichtig für die<br />
Erkennung sind, bietet es sich an, den menschlichen Perzeptionsapparat zu<br />
untersuchen. Die Erwartung besteht darin, daß mit dem Wissen, wie das<br />
Ohr Schall verarbeitet, dieses auch auf die Modelle übertragen werden kann.<br />
Wenn wir wüßten, welche Merkmale eines Signals überhaupt vom Ohr über<br />
den Hörnerv ans Gehirn geliefert werden, könnten wir daraus schließen, daß<br />
die anderen Merkmale für das Erkennen nicht von Bedeutung sind.<br />
Es leuchtet ein, daß diejenigen Frequenzen des Schalls, die wir nicht<br />
hören, weil sie zu hoch oder zu niedrig sind, auch irrelevant für die Spracherkennung<br />
sein müssen.<br />
Äußerer<br />
Gehörgang<br />
Außenohr Mittel- ohr Innenohr<br />
Hammer<br />
Amboß<br />
Steigbügel<br />
Trommelfell<br />
Ovales Fenster<br />
Rundes Fenster<br />
Eustachische Röhre<br />
Bogengänge<br />
zur Nasenhöhle<br />
Abb. 4.10. Die wichtigsten Bestandteile des <strong>Mensch</strong>lichen Ohrs<br />
Hörnerv<br />
Gehörschnecke<br />
Abb. 4.10 zeigt die wichtigsten Bestandteile des menschlichen Ohrs.<br />
Die von außen sichtbare Ohrmuschel dient als Schalltrichter. Die Bedeutung<br />
so eines Schalltrichters wird schnell klar, wenn man sich selbst die<br />
Trichterwirkung durch anlegen der gewölbten Handflächen hinter die Ohren<br />
verstärkt. Der ” eingefangene“ Schall wird durch den äußeren Gehörgang<br />
bis zum Trommelfell geleitet. Dieses wird in Schwingungen versetzt, die<br />
an eine Konstruktion von Gehörknöchelchen weitergegeben werden. Der<br />
Hohlraum hinter dem Trommelfell ist über die Eustachische Röhre mit dem
4.2 Anatomie des Gehörs 53<br />
Nasenraum verbunden. Die Eustachische Röhre dient vor allem dazu, den<br />
Druckunterschied zwischen dem Raum hinter dem Trommelfell und dem<br />
Außendruck auszugleichen. Wir empfinden eine schnelle Druckänderung<br />
zumeist unangenehm, weil dadurch das Trommelfell in die eine oder andere<br />
Richtung gedehnt wird, bevor der Druck über die Eustachische Röhre<br />
ausgeglichen wird. Gelegentlich kann man den Druckausgleich absichtlich<br />
herbeizwingen, indem man sich die Nase zuhält und soviel Druck aufbaut,<br />
daß die Eustachische Röhre ” durchgepustet“ wird. Das Trommelfell und die<br />
drei Gehörknöchelchen bilden das Mittelohr. Direkt mit dem Trommelfell ist<br />
der Hammer verbunden. Dieser überträgt die Schwingungen auf den Amboß,<br />
welcher diese wiederum an den Steigbügel weitergibt. Der Steigbügel ist<br />
am so genannten ovalen Fenster mit dem Innenohr verbunden. Hinter dem<br />
ovalen Fenster befinden sich die Gehörschnecke und die darüber liegenden<br />
Bogengänge. Beide sind mit einer Flüssigkeit gefüllt, die die Schwingungen<br />
des ovalen Fensters aufnimmt. In der Gehörschnecke sind letztendlich die<br />
Rezeptoren, die die Bewegung der Flüssigkeit an die Nervenstränge des<br />
Gehörnervs weitergeben.<br />
Ein Querschnitt durch die Gehörschnecke (Cochlea) ist in Abb. 4.11<br />
dargestellt. Von Bedeutung sind hier insbesondere die Haarzellen auf der<br />
Basilarmembran. Diese Härchen werden von der schwingenden Flüssigkeit<br />
angeregt. Dabei reagieren verschiedene Bereiche der Basilarmembran unterschiedlich<br />
stark auf bestimmte Frequenzen.<br />
Abb. 4.12 stellt die Reaktion einzelner Haarzellen auf verschiedene<br />
Frequenzen dar. Jede Kurve im Schaubild entspricht einem Härchen. Einige<br />
Härchen reagieren überhaupt nicht auf Frequenzen über ca. 1000 Hz, andere<br />
reagieren ganz besonders auf Frequenzen von mehreren tausend Hz und<br />
nur ganz wenig auf niedrige Frequenzen. Die hier dargestellten Messungen<br />
wurden zwar an einem Katzenohr durchgeführt, qualitativ unterscheiden<br />
sie sich aber nicht vom menschlichen Ohr. Eine weitere Auffälligkeit im<br />
Schaubild ist, daß auf der x-Achse die Frequenz logarithmisch aufgetragen<br />
ist, d.h. es gibt wesentlich mehr Härchen, die auf niedrige Frequenzen<br />
reagieren als solche, die auf hohe Frequenzen reagieren. Härchen, die nur<br />
auf Frequenzen über 1000 Hz reagieren, gibt es gar keine. Dies deutet<br />
darauf hin, daß für das Gehör – und insbesondere für das Verstehen von<br />
Sprache – vor allen die niedrigeren Frequenzen von Bedeutung sind. Ein<br />
Spracherkennungssystem könnte diese Feststellung nutzen.
54 4. Anatomie Sprachproduktion und Perzeption<br />
Hörnerv<br />
Reißnersche<br />
Membran<br />
Tektoriale<br />
Membran<br />
Haarzellen<br />
Basilarmembran<br />
Abb. 4.11. Querschnitt durch das Innenohr<br />
Dämpfung (dB)<br />
0<br />
-20<br />
-40<br />
-60<br />
-80<br />
100 1000 10000<br />
Frequenz (Hz)<br />
Abb. 4.12. Frequenzabhängige Empfindlichkeit einzelner Basilarmembranbereiche
5. Akustische Grundlagen<br />
Zum Verständnis der Spracherkennung und insbesondere zum Verständnis<br />
der dabei verwendeten Algorithmen für die Verarbeitung von Sprachsignalen<br />
sind Kenntnisse über die physikalische Natur von Sprachsignalen nützlich. In<br />
diesem Kapitel werden die Eigenschaften von Schall, dem Träger von Sprachsignalen<br />
beschrieben.<br />
5.1 Was ist Schall<br />
Aus physikalischer Sicht ist Schall eine Longitudinalwelle, die sich in einem<br />
Medium ausbreitet. Das Medium bestimmt nicht nur die Ausbreitungsgeschwindigkeit<br />
sondern auch die Dämpfung verschiedener Frequenzbereiche.<br />
Bei der Ausbreitung von Schall bewegen sich die Moleküle des Mediums,<br />
indem sie die Anregung durch die Schallquelle in Ausbreitungsrichtung<br />
weitergeben. Wenn wir von Schall sprechen, denken wir beim Medium<br />
meistens an Luft. Bei Luft, genauso wie bei anderen Gasen, ändert sich<br />
der Druck durch Kompression des Mediums. Bei anderen Medien (z.B. bei<br />
Flüssigkeiten) scheidet Kompression aus, aber auch bei solchen Medien gibt<br />
es Druckwellen, bzw. Eigenschwingungen und Resonanzen.<br />
Eine elementare Schallwelle zeichnet sich dadurch aus, daß der Druck an<br />
einer Stelle sich wie eine Sinusfunktion verhält, also beschreibbar ist durch<br />
eine Wellenlänge, eine Amplitude und eine Phase. Jeder konstante Ton ist<br />
die Überlagerung von elementaren Wellen.<br />
Für die Spracherkennung ist nur die Schallübertragung durch die Luft<br />
interessant. Der Luftdruck wird in Pascal (Pa) gemessen. Der durchschnittliche<br />
Luftdruck auf der Erdoberfläche beträgt 10 5 Pa (der Standard<br />
Luftdruck, 10 5 Pa = 1 bar). Der kleinste Druckunterschied, den wir als<br />
hörbar empfinden, beträgt etwa 10 −5 Pa (= 10 − 10 bar). Das sind zehn<br />
Größenordnungen kleiner als der Standard Luftdruck. Eine sehr laute<br />
Schallquelle, z.B. der Knall beim Abfeuern einer Gewehrkugel, erzeugt<br />
in unmittelbarer Umgebung ein Geräusch, dessen Luftdruckschwankung<br />
nur ca. 10 2 Pa erreicht. Das ist weniger als der Unterschied zwischen dem
56 5. Akustische Grundlagen<br />
normalen Luftdruck im Erdgeschoß und im Keller eines Gebäudes. Man<br />
möchte meinen, daß der Abstieg in den Keller sehr laut und schmerzhaft sein<br />
sollte. Das wäre er auch, wenn wir mehrere hundert mal pro Sekunde auf<br />
und absteigen könnten. Denn alle Frequenzen, die unterhalb von ca. 10 bis<br />
20 Hz liegen nehmen wir nicht mehr als Schall wahr, und deswegen bringen<br />
sie unseren Gehörapparat nicht in Schwingungen.<br />
Mit dem Schall wird Energie übertragen. Unter der Voraussetzung, daß<br />
die Wellenfronten einer Schallwelle einen Kreisring bzw. eine Kugeloberfläche<br />
bilden, und unter der Idealannahme, daß keine Schallenergie in thermische<br />
Energie des Mediums umgewandelt wird, ist die Energiemenge, die durch<br />
eine Fläche bestimmter Größe senkrecht zur Schallausbreitungsrichtung<br />
gelangt, umgekehrt proportional zum Quadrat des Abstandes der Fläche<br />
von der Schallquelle. Die Energie steckt in der Bewegung der Moleküle des<br />
Übertragungsmediums (Abb. 5.1).<br />
Abb. 5.1. Energie eines Luftmoleküls bei der Schallübertragung<br />
0<br />
x<br />
v<br />
E = 1<br />
2 mv2 + 1<br />
2 kx2<br />
Dabei wechselt die Form der Energie zwischen der rein kinetischen<br />
Energie, 1<br />
2 mv2 der Moleküle und der in einer ” virtuellen“ Rückholfeder mit<br />
Federkonstante k gespeicherten Energie, 1<br />
2 kx2 , die die Moleküle wieder in<br />
ihre Ausgangslage zieht. Dabei bewegt sich die Molekülgeschwindigkeit v<br />
zwischen −vmax und +vmax, und die Auslenkung x der Moleküle zwischen<br />
−xmax und +xmax.<br />
Der Druck eines Gases ist proportional zur durchschnittlichen Geschwindigkeit<br />
seiner Moleküle, während die Energie proportional zur maximalen<br />
Geschwindigkeit der Moleküle ist. Daraus ergibt sich, daß die Schallenergie<br />
mit dem Quadrat des Abstandes zur Schallquelle abnimmt, während der<br />
Druck linear abnimmt (s. Abb. 5.2).<br />
Es gibt Mikrophone unterschiedlichster Art. Wir wollen an dieser Stelle<br />
aber zunächst ein Kriterium genauer betrachten. Einige Mikrophone messen<br />
eher die Energie, die durch den Schall auf sie übertragen wird, andere<br />
Mikrophone hingegen messen die Luftdruckänderungen. Es gibt auch Zwischenformen<br />
und verschiedene elektronische Schaltungen, die die eigentliche<br />
Messung nachbearbeiten, so daß praktisch alle denkbaren Eigenschaften<br />
des Schalls mehr oder weniger erfaßt und übertragen werden können.
Quelle<br />
a<br />
x<br />
2a<br />
Abb. 5.2. Schallenergie nimmt im Quadrat zur Entfernung ab<br />
4x<br />
5.1 Was ist Schall 57<br />
Grundsätzlich gilt aber festzuhalten, daß diejenigen Mikrophone, die eher<br />
den Luftdruck messen, besser geeignet sind, um als Fernbesprechungsmikrophone<br />
verwendet zu werden, während diejenigen, die eher die Schallenergie<br />
messen, mehr als Nahbesprechungsmikrophone verwendet werden. Wenn ein<br />
Mikrophon auf die Schallenergie reagiert und in einer Entfernung von einem<br />
Zentimeter vor dem Mund besprochen wird, dann ist eine Schallquelle,<br />
die genauso laut wie der Sprecher aber 1 Meter entfernt ist, ca. 10 000<br />
mal schwächer im Ausgangssignal des Mikrophons vorhanden. Solche<br />
Nahbesprechungsmikrophone sind in der Regel so unempfindlich gegenüber<br />
entfernten Störgeräuschen, daß selbst Musik in Rock-Konzertlautstärke aus<br />
der Nachbarschaft die Aufgabe für einen Spracherkenner kaum erschwert.<br />
Umgekehrt ist es so, daß energie-sensitive Mikrophone ungeeignet sind, um<br />
Sprache über größere Distanzen aufzunehmen.<br />
In vielen Situationen ist es wünschenswert, daß der Benutzer eines<br />
sprachverstehenden Systems kein Mikrophon vor dem Mund tragen muß,<br />
sondern frei sprechen kann, während das Mikrophon irgendwo im Raum in<br />
einer unscheinbaren Ecke steht. Die Erkennung von Sprache, die über so<br />
große Distanzen aufgezeichnet wird bereitet Spracherkennern immer noch<br />
große Probleme. Zum einen ist es so, daß Störgeräusche im Gegensatz zu<br />
Aufnahmen mit Nahbesprechungsmikrophonen kaum gedämpft werden,<br />
und zum anderen werden die Aufnahmen durch viele Reverberationen<br />
(Schallreflexionen an den Wänden) gestört. Bei großer Entfernung zwischen<br />
Sprecher und Mikrophon ist zudem eine vermehrte Variabilität der Signale<br />
zu erkennen. Der am Mikrophon ankommende Schall hängt stark ab von der
58 5. Akustische Grundlagen<br />
Entfernung des Sprechers, von seiner Orientierung (spricht er in Richtung<br />
Mikrophon oder in eine andere Richtung) und von den Räumlichen Gegebenheiten<br />
(Position von Möbeln, Beschaffenheit des Bodenbelags, Größe des<br />
Raumes etc.).<br />
Experiment 5.1: Synthese Akustischer Signale<br />
Starten Sie das Applet Sound Composition. Auf der Oberfläche sehen Sie<br />
zwei Felder. Im oberen sind mehrere Schieberegler dargestellt, von denen<br />
jeder einer bestimmten Frequenz entspricht.<br />
Im unteren Feld sehen Sie die Welle, die entsteht, wenn die Frequenzen<br />
gewichtet mit dem Wert des Schiebereglers aufaddiert werden. Wir ignorieren<br />
hier, daß die Wellen auch mit unterschiedlichen Phasen aufaddiert werden<br />
könnten.<br />
Erzeugen Sie verschiedene Überlagerungen, sehen Sie sich das Bild der<br />
resultierenden Wellenform an und spielen Sie das Signal durch Drücken von<br />
PLAY ab.<br />
Versuchen Sie, so etwas wie harmonische und weniger harmonische Töne zu<br />
erzeugen und festzustellen, was einen Ton harmonisch macht.<br />
5.2 Messung der Schallintensität<br />
Bedenken wir, daß der leiseste hörbare Ton den Luftdruck um ca. 10 −5 Pa<br />
moduliert, und daß der lauteste hörbare, sehr schmerzhafte, Ton den Druck<br />
um ca. 10 2 Pa moduliert, dann verstehen wir, daß eine logarithmische Skala<br />
zur Messung des Schalldruckpegels sinnvoll ist. Das etablierte Maß ist das<br />
Dezibel (dB). Das Dezibel ist keine eigenständige physikalische Einheit,<br />
sondern beschreibt nur den Logarithmus eines Verhältnisses zweier Werte.<br />
Daher wir das dB auch für andere Zwecke als für die Messung des Schalls<br />
verwendet. Insbesondere bei der Angabe von Verstärkungsfaktoren bedient<br />
man sich gerne des Dezibels. Die ursprünglich zu Ehren von Alexander<br />
Graham Bell benannte Pegel- Einheit ” Bel“ ist gerade eine um den Faktor<br />
10 gröbere Skala. Um auch Absolutwerte zu beschreiben verwendet man<br />
das dBA, den mit 10 multiplizierten Zehnerlogarithmus des Verhältnisses<br />
der übertragen Schallenergie zu einem willkürlich festgelegten Wert. Der
absolute Schalldruckpegel ist definiert als<br />
20 · log 10<br />
<br />
P<br />
P0<br />
5.2 Messung der Schallintensität 59<br />
(5.1)<br />
wobei P die Luftdruckänderung des gemessenen Schalls ist und<br />
P0 = 2 ·10 −5 Pa ein willkürlich festgelegter Basisdruck ist. Unter Berücksichtigung<br />
der Tatsache, daß die vom Schall übertragene Energie proportional<br />
zum Quadrat der Luftdruckänderung ist, ergibt sich somit auch die Gleichung:<br />
10 · log 10<br />
<br />
I<br />
I0<br />
(5.2)<br />
wobei I die vom gemessenen Schall übertragene Energie ist, und I0 die<br />
Energie ist, die ein Schall überträgt, der den Luftdruck um P0 moduliert.<br />
Zur Veranschaulichung können wir zum Beispiel sagen, wenn ein Kanal den<br />
Schall um +20dB verstärkt, dann bedeutet das, daß der Luftdruck um den<br />
Faktor 10 verstärkt wird. Oder wenn ein Kanal den Schall um -6dB dämpft,<br />
wird der Luftdruck um ca. den Faktor 2 gesenkt.<br />
Übertragungsleistung (W/m<br />
00000000000000<br />
11111111111111<br />
00000000000000<br />
11111111111111<br />
0000000000<br />
1111111111<br />
00000000000000<br />
11111111111111<br />
0000000000<br />
1111111111<br />
0000000000<br />
1111111111<br />
00000000000000<br />
11111111111111<br />
0000000000<br />
1111111111<br />
00000000<br />
11111111<br />
0000000000<br />
1111111111<br />
00000000000000<br />
11111111111111<br />
0000000000<br />
1111111111<br />
00000000<br />
11111111<br />
0000000000<br />
1111111111<br />
00000000000000<br />
11111111111111<br />
0000000000<br />
1111111111<br />
00000000<br />
11111111<br />
0000000000<br />
1111111111<br />
00000000000000<br />
11111111111111<br />
0000000000<br />
1111111111<br />
00000000<br />
11111111<br />
0000000000<br />
1111111111<br />
00000000000000<br />
11111111111111<br />
00000000000000<br />
11111111111111<br />
00000000000000<br />
11111111111111<br />
2 ) Schalldruckpegel (dB)<br />
10<br />
130 phon<br />
100<br />
80<br />
60<br />
40<br />
20<br />
0<br />
−10<br />
10 −11<br />
10 −12<br />
10 −9<br />
10 −8<br />
10 −7<br />
10 −6<br />
10 −5<br />
10 −4<br />
10 −3<br />
10 −2<br />
10 −1<br />
100<br />
10<br />
1<br />
140<br />
130<br />
120<br />
120<br />
110<br />
100<br />
90<br />
80<br />
70<br />
60<br />
50<br />
40<br />
30<br />
20<br />
10<br />
0<br />
20 40 100 200 1000 4000 10000 Hz<br />
000 111<br />
000 111<br />
Hörschwelle<br />
000 111<br />
000 111<br />
000 111<br />
Musik<br />
000 111<br />
000 111<br />
Sprache<br />
Abb. 5.3. Die Hörfläche: Sprache und Musik im Frequenz/Lautstärke-Raum<br />
Abbildung 5.3 veranschaulicht, in welchem Bereich wir Sprache und<br />
Musik hören. Die Schalldruckpegel von Sprache liegen zwischen 35 dB und
60 5. Akustische Grundlagen<br />
75 dB, je nach Frequenz sogar nur in einem kleineren Intervall dazwischen.<br />
Die Dynamik von Musik ist deutlich größer, ebenso der Frequenzbereich.<br />
Die maximale Frequenz bei der Produktion von Sprache liegt bei ca. 5 kHz<br />
bis 6 kHz, in sehr kleinen Anteilen auch einige Oberwellen die noch darüber<br />
liegen können. Höhere Frequenzen spielen aber keine Rolle.<br />
Geräusch Schalldruckpegel<br />
Referenzwert P0<br />
0 dB<br />
leisester hörbarer 1000 Hz Ton 6 dB<br />
ruhige Nacht 20 dB<br />
leises Flüstern 25 dB<br />
Brummen eines Kühlschranks 40 dB<br />
leises Sprechen 50 dB<br />
normale Unterhaltung 65 dB<br />
typischer Straßenlärm 80 dB<br />
vorbeifahrendes Motorrad 90 dB<br />
Schreien 100 dB<br />
Preßlufthammer 100 dB<br />
Hubschrauber 110 dB<br />
Rock-Konzert 120 dB<br />
Luftalarmsirene 130 dB<br />
Schmerzgrenze 140 dB<br />
Gewehrschuß 140 dB<br />
Raketenstart 180 dB<br />
Tabelle 5.2. Schalldruckpegel für verschiedene Geräusche<br />
In Kap. 4 wurde beschrieben, wie unser Gehörapparat die Empfindlichkeit<br />
auf der Frequenzachse logarithmiert. Die tiefen Frequenzen enthalten<br />
wichtigere Informationen und werden deshalb feiner aufgelöst. Aber nicht<br />
nur die Frequenzachse wird logarithmiert sondern auch die Intensitätsachse,<br />
das heißt, daß wir n Schallquellen, die mit der gleichen Energie abstrahlen<br />
nicht als n mal so laut empfinden wie eine einzelne, sondern nur um einen<br />
additiven Wert, der proportional zu n ist. Unser Lautstärkeempfinden läßt<br />
sich also beschreiben durch:<br />
Lautstärke von 1 Schallquelle = L<br />
Lautstärke von n Schallquellen = L + a · n<br />
(5.3)
5.2 Messung der Schallintensität 61<br />
Daraus geht hervor, daß die Steigerung im Lautstärkeempfinden nicht<br />
von der Ausgangslautstärke abhängt. Das heißt, daß n auf den Boden<br />
fallende Nadeln genauso viel lauter sind als eine Nadel, wie n Gewehrschüsse<br />
lauter sind als einer. Das mag auf den ersten Blick seltsam klingen, aber bei<br />
genauer Betrachtung sieht man die Vorteile einer solchen Logarithmierung.<br />
Es wäre zum Beispiel bei einer linearen Abbildung von Schallintensität auf<br />
die Lautstärke nicht besonders hilfreich, die Fähigkeit zu besitzen, genau<br />
zu unterscheiden, ob man 100 Stimmen oder 101 Stimme gleichzeitig hört,<br />
während sich eine einzelne etwas leise sprechende Person so anhören würde<br />
wie null Personen.<br />
Das subjektive Empfinden von Lautstärke weicht sowieso von der<br />
physikalischen Definition des Schalldruckpegels ab. Ganz offensichtlich<br />
wird das bei Tönen einer Frequenz, die am Rande der Hörfläche liegen.<br />
Um einen 20 kHz Ton zu hören – nicht jedes menschliche Ohr ist<br />
dazu in der Lage – muß schon ein beträchtlicher Schalldruckpegel vorliegen.<br />
Bei anderen Frequenzen so zwischen 1000 und 3000 Hz genügen<br />
schon viel kleinere Schalldrücke um einen deutlich hörbaren Ton zu erzeugen.<br />
Wenn man Testpersonen Tone verschiedener Intensitäten und verschiedener<br />
Frequenzen vorspielt und sie subjektiv die Lautstärke schätzen läßt,<br />
ergibt sich ein Zusammenhang zum Schalldruckpegel, wie er in Abb. 5.4 dargestellt<br />
ist. Das Maß, das die subjektiv empfundene Lautstärke wiedergibt,<br />
ist das Phon. Bei 1000 Hz entspricht der Phon-Wert dem absoluten Schalldruckpegel.<br />
Für Frequenzen zwischen 1000 Hz und einigen 1000 Hz ist der<br />
Phon-Wert meist höher als der dBA-Wert. Für Frequenzen unter 1000 Hz<br />
und Frequenzen weit über 3000 Hz ist meist der dBA-Wert höher.
absoluter<br />
Schalldruckpegel [dB]<br />
100<br />
90<br />
80<br />
70<br />
60<br />
50<br />
40<br />
30<br />
20<br />
10<br />
0<br />
50 Hz<br />
100 Hz<br />
200 Hz<br />
500 Hz<br />
Abb. 5.4. Schalldruckpegel und Lautstärke<br />
100 phon<br />
80<br />
60<br />
40<br />
20<br />
0<br />
1 kHz 2 kHz 5 kHz 10 kHz 20 kHz
6. Phonetische Grundlagen<br />
Die Phonetik war schon im Altertum eine wissenschaftliche Disziplin. Spätestens<br />
zu der Zeit, als man dazu über ging, die Symbole der Schrift nicht mehr<br />
als sinntragende Einheiten zu betrachten, sondern als Repräsentanten akustischer<br />
Phänomene [?], wurde die genauere Untersuchung des Phonemsatzes<br />
verschiedener Sprachen interessant. Dies ging sogar so weit, daß die Schrift,<br />
die ursprünglich dafür gedacht war, die Sprache zu beschreiben, zur Norm<br />
wurde und die Sprache in ihrer Entwicklung von der Schrift geprägt wurde.<br />
Bis heute hat sich die gegenseitige Beeinflussung von gesprochener und geschriebener<br />
Sprache fortgesetzt. Vor allem im angelsächsischen Sprachraum<br />
wurde der Einfluß auf die Sprache vor allem durch die Schrift geprägt, was<br />
sich dadurch manifestiert, daß die Regeln für die Aussprache von Wörtern<br />
bei gegebener Orthographie dort besonders kompliziert sind. Im Englischen<br />
wurden Erweiterungen der Sprache meist in Schriftform aufgenommen und<br />
eine neue Aussprache wurde dafür kreiert (z.B. knob, vision, orange, etc.). In<br />
anderen Sprachen gab es aber auch die gegenteilige Tendenz. So wurde vor<br />
allem in Slawischen Sprachen, die dafür bekannt sind, daß ihre Orthographie<br />
oft eins zu eins auf eine Lautschrift abgebildet werden kann, die Lautfolge<br />
eines neuen Wortes in die Sprache aufgenommen und eine neue Orthographie<br />
kreiert (z.B. Gete statt Goethe). Durch die starke gegenseitige Beeinflussung<br />
von Schrift und Sprache und durch die Jahrtausende andauernde Entwicklung<br />
beider <strong>Kommunikation</strong>sformen sind die beiden so weit auseinander divergiert,<br />
daß es heute schon eine relativ schwierige Aufgabe geworden ist,<br />
aus der orthographischen Darstellung eines Wortes die dazu gehörige phonetische<br />
Darstellung zu gewinnen. Algorithmen, die dieses Problem lösen,<br />
werden ” Text-To-Speech“ Systeme (TTS) genannt und werden vor allem für<br />
die Sprachsynthese gebraucht.<br />
6.1 Lautliche Einheiten<br />
Es ist sehr schwer, Laute, die der <strong>Mensch</strong> artikulieren kann, so genau zu<br />
beschreiben, daß sie eindeutig wiedererkannt werden könnten. Das kommt<br />
nicht zuletzt daher, daß artikulatorische Laute keine diskreten Erscheinungen<br />
sind, sondern daß auch unendlich viele Zwischenformen zwischen zwei
64 6. Phonetische Grundlagen<br />
Lauten existieren können. So kann man zwischen je zwei Vokalen beliebig<br />
viele Abstufungen artikulieren. Wann ein bestimmter Laut ein ” A“ ist, ist<br />
gar nicht so einfach zu definieren. Hört man zum Beispiel arabischer Sprache<br />
zu, so würde man, wenn das Arabische fremd ist, viele Laute, die ein Araber<br />
als ein ” I“ bezeichnet, als ein ” Ä“ bezeichnen. In welche phonetische Klasse<br />
man einen Laut kategorisieren würde, hängt nicht nur von der Gewohnheit<br />
des Gehörs ab, sondern auch vom Kontext, in dem der Laut gesprochen wird.<br />
Trotz der Schwierigkeit, exakte Klassen definieren zu können und der<br />
Schwierigkeit, Laute zu klassifizieren, ist eine sinnvolle Forschung nur dann<br />
möglich, wenn man zumindest von einer Existenz von Klassen ausgeht,<br />
auch ohne deren Beschreibung zu kennen. Bevor wir das Problem, die<br />
Klassen automatisch zu finden, angehen, sollten wir als Grundlage das die<br />
Erkenntnisse verwenden, die die Phonetiker in den letzen Jahrhunderten<br />
erarbeitet haben.<br />
In so gut wie jeder Sprache gibt es viele hundert verschiedene Laute<br />
gibt. Nicht alle dienen der Unterscheidung von Wörtern, und nicht alle<br />
entsprechen einem Buchstaben des Alphabets oder einer Buchstabensequenz.<br />
Oft läßt sich aus einer Buchstabensequenz die dazu passende Lautfolge nicht<br />
ableiten. Das kommt zum einen daher, daß einige Wörter auf verschiedene<br />
Arten korrekt ausgesprochen werden können ( König“ oder Könich“), und<br />
” ”<br />
zum anderen daher, daß selbst zwei auf den ersten Blick gleiche Aussprachen<br />
doch unterschiedlich sind, wenn man genau hinhört ( weg“ oder Weg“).<br />
” ”<br />
Ein eindeutig bestimmter Laut wird auch als Phon bezeichnet. Neben der<br />
Einteilung der Laute in Phone gibt es auch die Einteilung in Phoneme.<br />
Während Phone akustisch motivierte Einheiten sind (es sind einfach sich<br />
ausreichend voneinander unterscheidende Laute), handelt es sich bei Phonemen<br />
um linguistisch motivierte Einheiten. Ein Phonem ist eine Menge von<br />
Phonen (seinen Allophonen), definiert dadurch, daß es zur Unterscheidung<br />
von Wörtern benötigt wird. Genauer gesagt: Ein Phonem ist ein Laut, der<br />
ein Wort von einem minimalen Partner unterscheidet. Ein minimales Paar<br />
sind zum Beispiel Haus“ und Maus“. Das heißt die jeweils ersten Laute<br />
” ”<br />
dieser beiden Wörter sind Phoneme. Auf den ersten Blick möchte man<br />
meinen, daß es zu jedem Phon ein minimales Paar existieren müßte. Dem<br />
ist aber nicht so. Im Deutschen gibt es zum Beispiel verschiedene Arten, das<br />
” ch“ auszusprechen. Weiter hinten im Mundraum artikuliert wird es nach<br />
den Vokalen A, O, und U (z.B. Dach, doch). In allen anderen Fällen wird es<br />
weiter vorne artikuliert (z.B. dich, Molch). Es gibt keine zwei Wörter, die<br />
verwechselt werden könnten, wenn die falsche Aussprache gewählt würde.<br />
Also handelt es sich beim deutschen ch“-Laut um ein Phonem, das die<br />
”<br />
Menge der zwei Phone ch“ wie in Dach“ und ch“ wie in dich“ vereint.<br />
” ” ” ”<br />
Ähnlich verhält es sich auch beim R“-Laut, der den Sinn eines Wortes<br />
”<br />
nie verfälscht, egal auf welche Art er artikuliert wird. Selbst zu beginn
6.2 Die IPA Lautemenge 65<br />
des zwanzigsten Jahrhunderts, als die offizielle Deutsche Bühnenaussprache<br />
definiert wurde, und genauer definiert wurde, welche ” R“-Laute gerollt und<br />
welche weicher gesprochen werden sollten, existierte nur ein Phonem ” R“.<br />
Während zwei Phone in einer Sprache ein einziges Phonem sind, könnten<br />
die gleichen zwei Phone in einer anderen Sprache verschiedene Phoneme<br />
sein, das heißt, daß die Definition eines Phonems von der zugrundeliegenden<br />
Sprache abhängt. Aber trotz der klaren Definition der Phoneme als Unterscheidungskriterium<br />
minimaler Paare sind sich Linguisten und Phonetiker<br />
nicht immer einig. Teilweise kommt das daher, daß viele Sprachen lebendig<br />
sind und mit der Zeit verschiedene Fremdwörter aufnehmen müssen, die<br />
vielleicht sprachfremde Laute enthalten (z.B. ” Restaurant“) oder neue<br />
minimale Paare erzeugen (z.B. ” froh“ und ” Francs“).<br />
6.2 Die IPA Lautemenge<br />
Das bisher erfolgreichste System zur Darstellung von Lauten ist das Alphabet<br />
der ” International Phonetics Association“, IPA(s. Abb. 6.1). Auch<br />
wenn viele Phonetiker unterschiedlicher Meinung sind, was die Gleichheit<br />
oder Verschiedenheit bestimmter Laute betrifft, und auch wenn mit der Zeit<br />
neuere Symbole in das IPA-Alphabet aufgenommen werden mußten, so ist<br />
auch heute noch dieses Alphabet die international anerkannte Standardschreibweise<br />
für lautliche Beschreibungen von Aussprachen.<br />
Abb. 6.1. Die Laute des International Phonetic Alphabet<br />
Bei genauerer Betrachtung fällt allerdings schnell auf, daß das IPA-<br />
Alphabet, ebenso wie viele Weisheiten der Phonetik sehr stark linguistisch<br />
und viel weniger akustisch geprägt sind. So gib es im IPA-Alphabet Symbole
66 6. Phonetische Grundlagen<br />
Konsonanten Vokale<br />
IPA Beispiel IPA Beispiel<br />
p Papa, hoppla, Abt iIgel, Biene<br />
t Tal, Theater, Lotto, Rad i Idee, Kritik<br />
k Kopf, Chaos, Backe, Fuchs, Tag Áintakt, Mitte, Kritik<br />
b Bote, Ebbe yüben, Bühne<br />
d Deich, buddeln y Büro, Physik<br />
g Garten, Egge üppig, müssen, Gymnasium<br />
f faul, Vater, Phonetik, Affe eedel, Mehl, See<br />
s Sandwich, City, Masse, große e lebendig, Detail<br />
ËSchule, Stamm, Chef, mischen Ähre, käme<br />
ç Chemie, Predigt, Mädchen Äste, Essen, entzwei, Fest<br />
Lachen, Buch, Tauchen begehren, Liebe<br />
ÎWagen, Vase, ewig øÖse, trösten, Friseur<br />
z Sahne, Dose, äußerst, Puzzle ø Ökonomie<br />
Genie, Journal, Garage œ öffnen, Gehöft, Flirt<br />
j ja, Mayonnaise, Nation uBluse, Blues, Filou<br />
Ã,, r Rose, Krug, Karren u Uran, Ouvertüre, Akku<br />
pf Pfahl, Kopf, hüpfen ÍKuckuck, Mutter, good-bye<br />
ñZunge, heizen, Katzen, Ivica oohne, groß, Depot<br />
tratschen, Cevapcici o Moral, Auto<br />
Dschungel, Maharadscha, Job ÇOchse, Sorge, Konflikt<br />
m Mund, Kamm, Trommel Atem, nah, Etat<br />
n Nase, Henne, Mann a alt, Ratte<br />
Bretagne, Cognac erfahren, Verband, Kur, Oper<br />
Æsingen, sinken, lang aÁEi, Kaiser, Geweih<br />
l Lust, Schnalle, Knall aÍaus, rauh, Couch<br />
h Hahn, Uhu ÇTreue, Efeu, Bläue<br />
Tabelle 6.1. Deutsche Aussprachebeispiele für einige IPA-Symbole
6.3 Gruppierung von Phonemen 67<br />
für Diphthonge (Vokalübergänge) und Affrikate (bestimmte Doppelkonsonanten),<br />
die aus akustischer Sicht ganz klar kein einzelner Laut sondern eine<br />
Folge mehrerer Laute sind.<br />
6.3 Gruppierung von Phonemen<br />
Es gibt sicherlich viele sinnvolle Arten, Phoneme in Gruppen zusammenzufassen.<br />
Die Motivation liegt dabei aus der Sicht des Spracherkennungsforschers<br />
in der Hoffnung, daß Phoneme, die in einer Gruppe liegen, eine gewisse<br />
Gemeinsamkeit haben, welche sich gegebenenfalls maschinell lernen läßt<br />
und so eine automatische Klassifikation vereinfachen könnte. Insbesondere<br />
besteht die Hoffnung, aus der Tatsache, daß der Artikulationsapparat sich<br />
beim Sprechen stetig bewegt und keine Sprünge von einem Zustand in eine<br />
völlig anderen machen kann, schließen zu können, daß die Manifestation<br />
eines Lautes davon abhängt, welches der vorhergehende und der nachfolgende<br />
Laut ist. Im Kapitel 17 werden Beispiele dafür gegeben, wie diese<br />
Kontextabhängigkeit für die Spracherkennung modelliert werden kann.<br />
Im folgenden werden Phoneme unterschieden nach ihrer Artikulationsart<br />
(physikalisches Phänomen), den Ort der Artikulation im Vokaltrakt und<br />
einiger anderer besonderer Eigenschaften.<br />
6.3.1 Vokale und Konsonanten<br />
Die erste Unterteilung von Lauten lernt man schon früh in der Schule,<br />
nämlich diejenige in Vokale und Konsonanten. Hierbei bezeichnen Vokale<br />
solche Laute, die allein artikuliert und ” gehalten“ werden können, während<br />
Konsonanten nur zusammen (con-) mit anderen Lauten gut klingen (sonant).<br />
Auf den ersten Blick sind diese Unterscheidungen relativ einfach zu<br />
treffen. Bei näherer Betrachtung muß man im Deutschen allerdings zu den<br />
üblichen fünf Vokalen A, E, I, O, U (jeweils mit mehreren IPA-Symbolen)<br />
zumindest noch die Umlaute Ä, Ö, und Ü hinzunehmen. Etwas strittiger<br />
wird dann die Frage, ob auch Doppellaute wie EI und EU als Vokale zu<br />
betrachten sind. Im übrigen sind auch viele im allgemeinen den Konsonanten<br />
zugeordnete Laute wie M, N, S und andere problemlos allein artikulierbar.<br />
In der Tat gibt es in vielen Sprachen (vor allem in den slawischen)<br />
Wörter, die ganz ohne Laute auskommen, die im Deutschen als Vokale gelten.<br />
Daher sind die deutschen Bezeichnungen Selbstlaute“ für Vokale und<br />
”<br />
” Mitlaute“ für Konsonanten irreführend. In der Spracherkennung wird
68 6. Phonetische Grundlagen<br />
die Unterscheidung zwischen Vokalen und Konsonanten demnach auch<br />
nicht wirklich vorgenommen. Das was man landläufig als Vokal bezeichnet<br />
müßte aus phonetischer Sicht vielmehr als ” stimmhafter Laut, bei dem der<br />
Luftstrom durch den Mundraum nicht behindert wird“ genannt werden.<br />
Vokale und Konsonanten haben allerdings eine sehr unterschiedliche<br />
Bedeutung für die Schrift und für die Aussprache. Es ist nahezu unmöglich,<br />
den folgenden Satz, bei dem die Konsonanten entfernt wurden zu verstehen:<br />
E OE OAE I I E U EEE<br />
Wenn der gleiche Satz aber ohne Vokale geschrieben wird:<br />
TXT HN VKL ST NCHT SCHWR Z VRSTHN<br />
dann hat man durchaus eine realistische Chance. In der Tat werden<br />
in einigen Sprachen (zum Beispiel Arabisch und Hebräisch) in der Schrift<br />
meist die Vokale weggelassen. Der Schluß, daß somit auch für die Spracherkennung<br />
die Konsonanten die wichtigere Rolle spielen wäre allerdings<br />
nicht korrekt. Tatsächlich ist es nämlich so, daß der Anteil der Vokale<br />
am Sprachsignal sowohl zeitlich als auch energetisch Betrachtet wesentlich<br />
höher ist als der der Konsonanten. Daher dürfen wir erwarten, daß Vokale<br />
auch einen erheblichen Einfluß auf die Funktion eines Spracherkenners haben.<br />
Wir bezeichnen Laute als ” stimmhaft“, wenn bei ihrer Artikulation, die<br />
Stimmbänder schwingen. Man kann dies leicht fühlen, indem man seine<br />
Finger beim Sprechen seitlich an den Kehlkopf hält. Auch die Laute m, n<br />
und j sind stimmhafte Laute. Wenn dann noch die Luft ungehindert durch<br />
den Mund strömen kann handelt es sich um einen Vokal. Bei m und n strömt<br />
die Luft durch die Nase – der Leser möge zum Test ein m oder n artikulieren<br />
und sich dann die Nase zuhalten. Beim j-Laut wird der Luftstrom durch die<br />
Zunge behindert und strömt seitlich an ihr vorbei.<br />
Wie sich ein Vokal anhört hängt nun im wesentlichen von der Position des<br />
höchsten Punktes des Zungenrückens (Dorsum) ab. Sicherlich spielt auch die<br />
Schwingungsfrequenz der Stimmbänder eine Rolle. Sie bestimmt aber nur die<br />
Tonhöhe des Vokals, während die Qualität durch die Form des Mundraumes<br />
vorgegeben wird. Das Dorsum befindet sich bei Vokalen in einem Bereich<br />
den man grob als Viereck ansehen kann. Das sogenannte ” Vokalviereck“ [?]<br />
ist in Abb. 6.2 dargestellt. Es berücksichtigt nicht unterschiedliche Längen<br />
(z.B. e in ” weg“ gegenüber ein ” Weg“). Dazu wäre eine weitere Dimension<br />
nötig, die das Vokalviereck dann zu einem Vokalklotz macht. Die links der von<br />
oben nach unten verlaufenden Linien stehenden Laute werden mit gerundeten<br />
Lippen artikuliert, die rechts stehenden mit nicht gerundeten.
Abb. 6.2. Das Vokalviereck<br />
uÏ oÇ<br />
<br />
6.3 Gruppierung von Phonemen 69<br />
Áy<br />
i<br />
ø e<br />
œ<br />
æ<br />
<br />
Œ a<br />
Ufer<br />
Biene<br />
Mutter Physik Mitte<br />
Auto<br />
Öko genug<br />
Liebe<br />
morgen<br />
Flirt Essen<br />
Äh<br />
alt<br />
Í<br />
<br />
<br />
In den meisten Sprachen werden auch so genannte Diphthonge verwendet.<br />
Dabei handelt es sich um zwei Vokale, die hintereinander mit fließendem<br />
Übergang artikuliert werden (s. Abb. 6.3).<br />
6.3.2 Artikulationsarten<br />
Während Vokale vorrangig durch die Position des Dorsums definiert werden,<br />
ist das Hauptkriterium zur Unterscheidung von Konsonanten die Artikulationsart.<br />
Sie gibt an, mit welchem Mechanismus der Luftstrom manipuliert<br />
wird um einen Laut entstehen zu lassen.<br />
Verschlußlaute oder Plosive<br />
Bei Verschlußlauten wird der Luftstrom durch den Vokaltrakt für eine kurze<br />
Zeit vollständig unterbrochen.<br />
Die typischen Verschlußlaute sind b, d, g, p, t, k. Sie lassen sich in zwei<br />
Untergruppen aufteilen, p, t und k sind völlig stimmlos, während bei den<br />
Anfangsstücken von b, d und g die Stimmbänder noch etwas mitschwingen.<br />
Bei b und p findet der Verschluß des Vokaltraktes durch die Lippen statt.<br />
Bei d und t wird der Luftstrom dadurch unterbrochen, daß die Zunge an den<br />
Zahndamm und die Zähne des Oberkiefers gedrückt wird. Und bei g und k
Á<br />
70 6. Phonetische Grundlagen<br />
00000000<br />
11111111<br />
00000000<br />
11111111<br />
00000000<br />
11111111<br />
00000000<br />
11111111<br />
00000000<br />
11111111<br />
00000000<br />
11111111<br />
00000000<br />
11111111<br />
00000000<br />
11111111<br />
00000000<br />
11111111<br />
00000000<br />
11111111<br />
<br />
000000<br />
111111<br />
000000<br />
111111<br />
000000<br />
111111<br />
000000<br />
111111<br />
000000<br />
111111<br />
000000<br />
111111<br />
Ç<br />
Í Á<br />
eÁ<br />
0000 1111<br />
0000 1111<br />
0000 1111<br />
0000 1111<br />
0000 1111<br />
0000 1111<br />
0000 1111<br />
0000 1111<br />
a<br />
Abb. 6.3. Dorsumweg bei den DiphthongenÁ,Ç,Íund<br />
wird der Rücken der Zunge gegen den Gaumen gedrückt.<br />
00 11<br />
00 11<br />
00 11<br />
00 11<br />
00 11<br />
00 11<br />
In den Anfängen der Spracherkennungsforschung wurden gerne Systeme<br />
untersucht, die nur die sechs typischen Plosive erkennen mußten. Beschränkt<br />
auf die teilweise stimmhaften wurde damals die sogenannte B-D-G-Task<br />
zum Standard-Benchmark für Spracherkenner.<br />
b, p d,t g,k<br />
Abb. 6.4. Sagittalschnitte verschiedener Plosivlaute
6.3 Gruppierung von Phonemen 71<br />
In Abb. 6.4 sind drei Sagittalschnitte für sechs verschiedene Plosivlaute<br />
dargestellt. Grau unterlegt ist jeweils die Stelle des Vokaltraktes, an der der<br />
Luftstrom unterbrochen wird.<br />
Nasale<br />
Die typischen Nasallaute, die in fast allen Sprachen der Welt vorkommen<br />
sind die Konsonanten m und n, oft auchÆ. In einigen Sprachen – die<br />
bekannteste dürfte wohl Französisch sein – werden auch viele Vokale nasal<br />
ausgesprochen. Dabei senkt sich das Gaumensegel, das normalerweise die<br />
Öffnung des Rachenraums zur Nasenhöhle verschließt, und läßt so einen<br />
Teil des Luftstroms durch die Nasenhöhle. Diese dient dann als zusätzlicher<br />
Resonanzkörper, der den Luftstrom moduliert und über die Nasenlöcher<br />
abgestrahlt. Deshalb hören sich auch Nasallaute seltsam an, wenn man<br />
verschnupft ist.<br />
m n Æ<br />
Abb. 6.5. Sagittalschnitte verschiedener nasaler Konsonanten<br />
In Abb.6.5 sind drei Sagittalschnitte für die Nasalen Konsonanten dargestellt.<br />
Auch bei diesen Lauten wird der Luftstrom im Mundbereich an einer<br />
Stelle blockiert (grau unterlegt). Da hier aber im Gegensatz zu den Plosiven<br />
das Velum geöffnet ist, kann die Luft über die Nase ausströmen. Bei genauer<br />
Betrachtung kann man feststellen, daß die Form des Vokaltraktes mit Ausnahme<br />
des Velums beim m genauso aussieht wie bei den Plosiven b und p,<br />
beim n wie bei den Plosiven f und t, und beimÆwie bei den Plosiven g und<br />
k. Eine Unterscheidung in stimmhaft und stimmlos gibt es bei den nasalen<br />
Konsonanten nicht, sie sind alle stimmhaft.
72 6. Phonetische Grundlagen<br />
Vibrationslaute<br />
Bei Vibrationslauten befindet sich ein Teil des Artikulationsapparates, typischerweise<br />
die Zungenspitze (Apis), das Zäpfchen (Uvula), oder Teile des<br />
Gaumensegels (Velum). Dabei handelt es sich fast ausschließlich um Varianten<br />
des R-Lautes (IPA SymboleÃ,, r und andere).<br />
Frikative<br />
Die Bezeichnung Frikativ kommt von Friktion (Reibung). In der deutschsprachigen<br />
Literatur werden Frikative oft auch Reibelaute genannt. Sie entstehen<br />
dadurch, daß der Luftstrom an einer Stelle im Vokaltrakt behindert wird.<br />
An dieser Stelle reibt die Luft an den Teilen des Artikulationsapparates, die<br />
die Verengung erzeugen.<br />
Î,f z,s ,Ë<br />
j,<br />
Abb. 6.6. Sagittalschnitte verschiedener Frikative<br />
Auch bei den Frikativen gibt es die Unterscheidung zwischen stimmhaften<br />
und stimmlosen. In Abb. 6.6 sind die stimmhaften FrikativeÎ, z,und j, sowie<br />
die ihnen entsprechenden stimmlosen Frikative f, s,Ë, unddargestellt.<br />
Affrikate<br />
Als Affrikate werden Laute bezeichnet, die eigentlich aus zwei Lauten bestehen:<br />
einem Plosiv und einem unmittelbar folgenden Frikativ, wie z.B. am Anfang<br />
von Pfeffer oder Zaun. Wenn der Plosivlaut und der Frikativ unabhängig<br />
ausgesprochen werden, hört es sich anders an (z.B. wie in Klumpf uß).
6.3.3 Artikulationsorte<br />
6.3 Gruppierung von Phonemen 73<br />
Neben der Möglichkeit, die Laute nach der Artikulationsart zu klassifizieren,<br />
gibt es die Klassifikation nach dem Artikulationsort.<br />
Bilabiale<br />
Wenn ein Laut dadurch entsteht, daß beide Lippen sich (beinahe) berühren,<br />
wird er als bilabialer Laut bezeichnet. Beispiele dafür sind b, m und p. In<br />
einigen Sprachen gibt es noch weitere Laute. Z.B. der H-Laut im Japanischen<br />
oder der spanische Mischlaut zwischen b undÎwerden auch oft bilabial<br />
gesprochen.<br />
Labiodentale<br />
Lippe und Zähne artikulieren gegeneinander. Meist sind es die Unterlippe<br />
und die oberen Schneide- und Eckzähne. Z.B. f undÎ.<br />
Dentale / Alveolare<br />
Die Zunge, vor allem der vordere Teil der Zunge, berührt die Zähne (dental),<br />
wie bei t und d, oder den Zahndamm (alveolar), wie bei n und l.<br />
Palatoalveolare<br />
Zunge und Zahndamm bzw. harter Gaumen artikulieren zusammen. Dies ist<br />
meist bei Frikativen der Fall. Je nach genauer Position können so verschiedene<br />
als härter oder weicher empfundene Zischlaute erzeugen. Typische Vertreter<br />
palatoalveolarer Laute sind das stimmloseËund sein stimmhaftes Pendant,<br />
das in der deutschen Sprache so gut wie gar nicht vorkommt. Bei korrekter<br />
Aussprache müßte es im Wort Garage stimmhaft gesprochen werden.<br />
Velare<br />
Bei den velaren Lauten wird die Zunge gegen das Gaumensegel gedrückt, wie<br />
bei k, g undÆ.<br />
Laterale<br />
Der Artikulationsort ist neben der Zunge. Die Zunge berührt an mehreren<br />
möglichen Stellen das Dach des Mundraumes (Zahndamm, harter oder weicher<br />
Gaumen), während die Luft seitlich an der Zunge vorbeiströmt. Dies ist<br />
beim j und l so.
74 6. Phonetische Grundlagen<br />
Glottale<br />
Bei einigen Lauten wie dem silbeninitialen h im Deutschen entsteht die Reibung<br />
der Luft an der Stimmritze. Die Stimmbänder sind nicht in Schwingung,<br />
verengen aber die Stimmritze. Bei vielen silbeninitialen Vokalen ist die Glottis<br />
vor Beginn der Silbe geschlossen. Bevor die Stimmbänder anfangen zu<br />
schwingen, wird unterhalb der Stimmbänder etwas Druck aufgebaut. Beim<br />
Öffnen der Stimmritze entsteht dann ein kleiner Plosivlaut, der sogenannte<br />
Glottale Verschlußlaut, IPA-SymbolÈ. In der fließenden Sprache ist der Verschlußlaut<br />
kaum merklich, bei genauer Analyse des Sprachsignals ist er aber<br />
meistens deutlich zu erkennen.<br />
6.3.4 Besondere Eigenschaften<br />
Viele Laute haben neben dem Artikulationsort und der Artikulationsart diverse<br />
andere Eigenschaften, nach denen Sie unterschieden werden können.<br />
Stimmhaftigkeit<br />
Einer der offensichtlichsten und wichtigsten Eigenschaften eines Lautes ist<br />
die Frage, ob er stimmhaft oder stimmlos ist. Wenn man sich beim Sprechen<br />
die Finger an den Kehlkopf hält, kann man die Vibrationen der Stimmbänder<br />
spüren. Auch im Sprachsignal ist es sehr einfach stimmlose Laute (vergleichbar<br />
mit ungeordnetem Rauschen) von stimmhaften Lauten (erkennbare, sich<br />
wiederholende Wellenform) zu unterscheiden.<br />
Aspiration<br />
In der alten deutschen Rechtschreibung, wie sie bis Anfang des 20. Jahrhunderts<br />
gültig war, wurden viele T-Laute, die heute mit einfachem T geschrieben<br />
werden, noch mit TH geschrieben (z.B. thun statt tun). In dieser Schreibweise<br />
spiegelte sich die Tatsache wider, daß die meisten T-Laute mit einem<br />
unmittelbar folgenden ” Ausatmen“ artikuliert werden, also aspiriert sind. Da<br />
die Aspirationseigenschaft im Deutschen nicht zur Unterscheidung von Lauten<br />
dient, und da es so gut wie keine nicht-aspirierten T laute gibt, ist die<br />
TH-Schreibweise fast nur noch bei Fremdwörtern aufrechterhalten worden.<br />
Stärke<br />
Bei einigen Lauten werden verschiedene Artikulationsstärken unterschieden.<br />
Im Deutschen spielt die Unterscheidung von schwach artikulierten Lauten<br />
(Lenes) und stark artikulierten Lauten (Fortes) keine Rolle.
Lippenrundung<br />
6.3 Gruppierung von Phonemen 75<br />
Lippenrundung Die letzte Instanz des Vokaltraktes bilden meist die Lippen.<br />
Für einige Laute sind alle Teile des Artikulationsapparates bis auf die Lippen<br />
identisch. So unterscheiden sich die Laute i (wie in Tier) und y (wie in Tür)<br />
nur dadurch, daß im einen Fall die Lippen weniger im anderen mehr gerundet<br />
sind. Durch die Rundung ändern sich die Schallabstrahlungseigenschaften.
7. Grundlagen der Signalverarbeitung<br />
Ein Verständnis für die Verarbeitung von Signalen ist im Zusammenhang<br />
mit der Spracherkennung nicht nur wichtig, weil die Algorithmen bei<br />
der Aufarbeitung von Sprachsignalen verwendet werden, sondern auch,<br />
weil sich die Eigenschaften von Signalen bis in die höheren Ebenen des<br />
Spracherkenners auswirken. Eine Detaillierte Abhandlung aller Grundlagen<br />
und Methoden der Signalverarbeitung würde den Rahmen dieses Buches<br />
sprengen. Das folgende Kapitel konzentriert sich daher vor allem auf die<br />
aus der Sicht der Spracherkennungsforschung interessanten Aspekte dieses<br />
Themas.<br />
7.1 Analog/Digital Wandlung<br />
Das erste, was eine Schallwelle durchläuft, wenn sie von Digitalrechnern<br />
verarbeitet wird ist normalerweise ein Analog/Digital Wandler (A/D<br />
Wandler). Wir wollen uns an dieser Stelle nicht mir der Physik oder<br />
den elektrotechnischen Grundlagen von A/D Wandlern befassen. Wir wollen<br />
aber einige Dinge festhalten, die im weiteren Verlauf von Bedeutung sind.<br />
Schallwellen als physikalisches Phänomen bewirken in jedem Punkt des<br />
Raumes Luftdruckänderungen. Beim Messen dieser Luftdruckänderungen<br />
bzw. der dadurch transportierten Energie werden von einem Mikrophon<br />
elektrische Spannungen geliefert. Diese Spannungen ergeben über die Zeit<br />
betrachtet eine kontinuierliche reellwertige analoge Funktion. Analogrechner<br />
werden schon lange nicht mehr in nennenswerter Häufigkeit verwendet, und<br />
Digitalrechner arbeiten nur mit digitalen Daten. Um aus einem analogen<br />
kontinuierlichen Signal ein zeitdiskretes und digitales Signal zu machen<br />
sind zwei Operationen nötig (s. Abb. 7.1). Der Schritt, der aus einem<br />
kontinuierlichen Signal ein diskretes macht, heißt ” Abtastung“ und wird von<br />
einem so genannten Halteglied bewerkstelligt. Der Schritt, der aus einem<br />
analogen Signal ein digitales macht, heißt ” Quantisierung“ und wird von<br />
einem oder mehreren Komparatoren durchgeführt. Abb. 7.2 zeigt die groben
78 7. Grundlagen der Signalverarbeitung<br />
Bestandteile eines Analog/Digital Wandlers.<br />
kontinuierlich<br />
diskret<br />
analog<br />
Abb. 7.1. Verschiedene Arten von Signalen<br />
00 11<br />
00 11<br />
00 11<br />
Anti-<br />
Aliasing<br />
Filter<br />
(Tiefpaß)<br />
Halte-<br />
glied<br />
Abb. 7.2. Funktionen eines A/D Wandlers<br />
digital<br />
Abtastung<br />
Quanti-<br />
sierung<br />
Quantisierung<br />
Wird die Meßwerteachse im Bereich zwischen f min und fmax in dem<br />
alle Meßwerte liegen, in 2 n äquidistante Intervalle eingeteilt, dann bedeutet<br />
Quantisieren das Abbilden eines Wertes x auf q(x) gemäß:<br />
q(x) = ⌊2 n ·<br />
(x − fmin )<br />
⌋ (7.1)<br />
(fmax − fmin )<br />
Die Werte f min und fmax werden durch die Hardware (A/D-Wandler)<br />
bestimmt. Wenn das physikalische Signal so stark ist, daß der Wertebereich
7.1 Analog/Digital Wandlung 79<br />
des Wandlers oft nicht ausreicht, dann wird dieses Phänomen ” Übersteuern“<br />
genannt.<br />
Beim Quantisieren geht Information verloren. In Gl. 7.1 wird jeder Wert<br />
auf den Anfang des Intervalls, in dem er liegt abgebildet. Wenn innerhalb der<br />
Intervalle die Meßwerte einigermaßen gleichverteilt sind (wovon auszugehen<br />
ist, wenn ausreichend viele Intervalle vorhanden sind), dann ist der Erwartungswert<br />
der Abweichung e des quantisierten vom ursprünglichen Wert eine<br />
halbe Intervallbreite:<br />
E[e] = 1<br />
2 n+1 · (fmax − f min ) (7.2)<br />
Diese Abweichung wird Quantisierungsfehler genannt. Man kann den<br />
Effekt des Quantisierungsfehlers so betrachten, als sei das ursprüngliche<br />
Signal mit einem Störsignal verrauscht worden.<br />
Der Signal-Rausch-Abstand gibt das Verhältnis der Energie des Signals<br />
zur Energie des Quantisierungsrauschens an. Die Energie des Signals x<br />
ist x 2 , und die Energie des Quantisierungsrauschens ist e 2 . Das heißt der<br />
Signal-Rausch-Abstand (SNR für signal to noise ratio) ist definiert als:<br />
SNR = 10 log10( E[x2 ]<br />
E[e2 ) in dB (7.3)<br />
]<br />
Der Erwartungswert der Signalenergie E[x2 ] ist nicht unbedingt<br />
( 1<br />
2 (fmax − fmin )) 2 , weil die Meßwerte normalerweise nicht zwischen fmin und fmax gleichverteilt sind. Daß in der Regel dennoch ( 1<br />
2 (fmax − fmin )) 2<br />
herauskommt liegt daran, daß typischerweise fmax = −fmin , und die<br />
Aussteuerung in den positiven Meßbereich fast die gleiche ist, wie die in den<br />
negativen Meßbereich.<br />
Da wir hier aber vor allem auf die Verarbeitung von Sprachsignalen<br />
mit Digitalrechnern eingehen wollen, bezeichnen wir mit A/D Wandler<br />
das, was die meisten handelsüblichen Soundkarten tatsächlich tun. Der<br />
erste Schritt (Anti-Aliasing Filter) dient dazu, daß Artefakte ausgeschlossen<br />
werden, die durch Frequenzen im Schallsignal, die höher sind als die doppelte<br />
Abtastfrequenz, entstehen. Oft sind diese Anti-Aliasing Filter tatsächliche<br />
Widerstand-Kondensator-Einheiten, die nur eine bestimmte Maximalfrequenz<br />
passieren lassen, also einen Tiefpaßfilter bilden.<br />
Dabei wird der Wertebereich des Signals in eine endliche Zahl von<br />
Intervallen aufgeteilt. Typischerweise ist diese Zahl eine Potenz von 2. Dies<br />
ist nicht nur wegen der Architektur der Digitalrechner sinnvoll, sondern
80 7. Grundlagen der Signalverarbeitung<br />
wird quasi automatisch aufgrund des hierarchischen internen Aufbaus vieler<br />
A/D Wandler postuliert. Der Zweierlogarithmus dieser Intervallzahl wird<br />
als ” Auflösung“ des Wandlers mit der Einheit ” bit“ angegeben. Übliche<br />
Werte sind 8 bit oder 16 bit. Je nach Aufgabe gibt es in einigen Fällen auch<br />
Wandler mit anderen Auflösungen. Wie wir aus Abs. 5.2 wissen, schwankt<br />
der Schalldruckpegel von Sprache um ca. 60 dB zwischen leisem Flüstern<br />
und lautem Schreien. Wenn wir wollen, daß der Signal-zu-Rausch-Abstand<br />
in der gleichen Größenordnung ist, dann stellen wir fest, daß eine Auflösung<br />
von ca. 12 bit in der Regel ausreichend ist. Eine höhere Auflösung würde<br />
nur mehr wertlose Information in die Aufnahme bringen.<br />
Die Abtastfunktion des A/D Wandlers wird im wesentlichen durch die Abtastfrequenz<br />
beschrieben. Sie gibt die Rate an, mit welcher die quantisierten<br />
Signale in eine diskrete Folge von Abtastwerten gewandelt werden. Aufnahmen<br />
in CD-Qualität verwenden eine Abtastrate von 44.1 kHz, DAT (Digital<br />
Audio Tape) Recorder tasten mit 48 kHz ab, die meisten Sound-Karten bieten<br />
standardmäßig 16 kHz und 8 kHz an. Im weiteren Verlauf dieses Kapitels<br />
wird auf das Abtasttheorem eingegangen, welches besagt, daß man, um keine<br />
Information zu verlieren, ein Signal mit der maximalen Frequenz ω mit einer<br />
Abtastfrequenz von mindestens 2ω abtasten muß. Die in diesem Zusammenhang<br />
relevante Maximalfrequenz wird normalerweise durch den Anti-Aliasing<br />
Filter festgelegt, aber auch durch den Gesamtaufbau der Aufzeichnungseinrichtung<br />
(z.B. der Mikrophoneigenschaften) beeinflußt. Meistens paßt die digitalisierte<br />
Version des Signals nicht optimal auf die analoge Version, selbst<br />
wenn die Abtastrate ausreichend hoch ist, weil die meisten A/D Wandler verschiedene<br />
Frequenzen unterschiedlich gut quantisieren. Wir wollen uns aber<br />
mit dieser Problematik nicht weiter befassen und gehen davon aus, daß die<br />
Qualität der verwendeten A/D Wandler ausreichend hoch ist. Halten wir also<br />
fest: Die Funktion eines A/D Wandlers wird im wesentlichen durch drei<br />
Variablen beschrieben: ωg, die Grenzfrequenz des Anti-Aliasing Filters; b, die<br />
Auflösung in bits; und r die Abtastrate.<br />
7.2 Systeme<br />
Im Zusammenhang mit der Signalverarbeitung wird oft von Systemen<br />
gesprochen. Im allgemeinen ist damit ein Algorithmus gemeint, der aus<br />
einem Eingabesignal ein Ausgabesignal erzeugt: f in → System → f out .<br />
Wenn es aber um die digitale Verarbeitung von Sprachsignalen geht, interessiert<br />
eigentlich nur eine bestimmte Klasse von Systemen, die sogenannten<br />
kausalen linearen zeitinvarianten Systeme. Kausal bedeutet, daß f out (x)<br />
nur von f in (−∞ . . . x) abhängt, d.h. die Ausgabe eines Systems hängt zu<br />
einem Zeitpunkt nur von den bis dahin gelesenen Eingaben ab und nicht<br />
von den in der ” Zukunft“ noch ankommenden ab. Ein System wird dann
7.2 Systeme 81<br />
als zeitinvariant bezeichnet, wenn die Ausgabe nur von der Eingabe und<br />
nicht vom ” Zeitpunkt“ der Eingabe abhängt, also wenn f in (x) = g in (x − t)<br />
dann ist auch f out (x) = g out (x − t). Ein zeitinvariantes System wird<br />
darüber hinaus als linear bezeichnet, wenn es die Eigenschaften der Linearität<br />
erfüllt, also: wenn f in (x) = a · g in1 (x) + b · g in2 (x), dann ist<br />
auchf out (x) = a · g out1 (x) + b · g out2 (x). Lineare zeitinvariante Systeme<br />
werden in der Literatur gerne mit der Abkürzung LTI (linear time-invariant)<br />
bezeichnet. Einige einfache Eigenschaften von LTI Systemen kann man schon<br />
an der Definition ablesen. Kein LTI System ist z.B. eines, das als Ausgabe<br />
das Quadrat der Eingabe ausgibt. Ein besonders einfaches LTI System ist<br />
eines mit einer konstanten Ausgabe, bei dem gilt f out (x) = c∀x, oder auch<br />
ein so genanntes Verzögerungsglied mit f out (x) = f in (x − t).<br />
Systeme können auch diskret sein. Dann geht man davon aus, daß sowohl<br />
die Eingabe f in [i] als auch die Ausgabe f out [i] Folgen sind, mit natürlichen<br />
i ∈ N oder zumindest ganzen i ∈ Z. Die o.a. Eigenschaften Kausalität,<br />
Zeitinvarianz und Linearität gelten entsprechend auch für diskrete Systeme.<br />
In der Praxis der Mustererkennung genügt meist der Umgang mit diskreten<br />
Systemen, während analoge Systeme nur als mathematischen Fundierung<br />
dienen.<br />
7.2.1 Die Dirac Distribution<br />
Ein besonderes, in der Theorie der Signalverarbeitung häufig verwendetes<br />
Signal ist die so genannte Dirac Distribution. Oder auch ” Impuls“ genannt.<br />
Dabei handelt es sich im mathematischen Sinne nicht um eine Funktion.<br />
Daher auch die Bezeichnung Distribution. In der Praxis wird die Dirac<br />
Distribution jedoch oft wie eine normale Funktion behandelt. Man kann die<br />
Distribution definieren als<br />
<br />
0 falls |x| > |t|<br />
δ(x) := lim ft(x) mit ft(x) =<br />
t→0 t/2 falls |x| ≤ |t|<br />
(7.4)<br />
Dieser Sachverhalt wird in Abbildung 7.3 veranschaulicht. Offensichtlich<br />
gilt:<br />
∀t :<br />
∞<br />
−∞<br />
ft(x)dx = 1 (7.5)<br />
Entsprechend wird dann in mathematischen Berechnungen, in denen die<br />
Dirac Distribution vorkommt auch angenommen, daß
82 7. Grundlagen der Signalverarbeitung<br />
∞<br />
−∞<br />
a · δ(x)dx = a (7.6)<br />
Das ist so als wäre a · δ(x) eine Funktion, die überall 0 ist außer für<br />
x = 0, wo sie den Wert a · ∞ annimmt. An dieser Stelle sieht man auch<br />
die Problematik, wenn man die Dirac Distribution als Funktion behandelt.<br />
Eine ausführliche Diskussion dieser Problematik würde aber den Rahmen<br />
des vorliegenden Buches sprengen.<br />
f<br />
1/6<br />
f<br />
1/4<br />
f<br />
1/2<br />
f<br />
1<br />
Abb. 7.3. Veranschaulichung der Dirac Distribution δ<br />
Die Definition von δ über das Integral hat zur Folge, daß die Multiplikation<br />
von δ mit einer Funktion g den Wert von g(0) ” extrahiert“ genauer:<br />
∞<br />
−∞<br />
∞<br />
−∞<br />
δ(x) · g(x)dx = g(0) (7.7)<br />
δ(x − τ) · g(x)dx = g(τ) (7.8)<br />
Eine andere Sichtweise der Dirac Distribution ist die, daß δ(x) definiert<br />
ist als die Ableitung der Stufenfunktion<br />
σ(x) =<br />
0 falls x < 0<br />
1 falls x ≥ 0<br />
f 2<br />
f<br />
3<br />
(7.9)<br />
Da ein Impuls keine Funktion im Mathematischen Sinne ist, hat es auch<br />
nicht viel Sinn von einem Funktionswert zu sprechen. Dennoch verwendet<br />
man zur Veranschaulichung von Impulsen gerne Diagramme, bei denen Funktionskurven<br />
eingezeichnet werden, die aus einem Strich bestehen, der an der
σ(x)<br />
Abb. 7.4. Die Stufenfunktion σ<br />
7.2 Systeme 83<br />
Stelle des Impulses, als Höhe den Wert des Integrals des Impulses hat (s.<br />
Abb. 7.5).<br />
1<br />
h<br />
Einheitsimpuls mit h skalierter Impuls mehrere Impulse<br />
Abb. 7.5. Darstellung von Impulsen<br />
In der Signalverarbeitung werden oft diskrete Meßreihen verwendet. Dabei<br />
werden in gleichen zeitlichen Abständen t Werte h0, h1, . . . hn gemessen. Die<br />
gesamte Meßwertreihe kann nun interpretiert werden als Impulsfolge n i=0 hi·<br />
δ(x − i · t)<br />
7.2.2 Faltung<br />
Die Wirkung eines Kanals auf ein Signal läßt sich mathematisch am besten<br />
als eine Faltung beschreiben.<br />
(f ∗ g)(x) =<br />
∞<br />
−∞<br />
f(x − t)g(t)dt (7.10)<br />
In Gl. 7.10 ist f das Signal und g die Funktion des Kanals, mit der das<br />
Signal gefaltet wird.<br />
Betrachten wir ein diskretes lineares zeitinvariantes System, so läßt sich<br />
jeder seiner Ausgabewerte f out [n] als Linearkombination einer begrenzten<br />
Menge von Eingabewerten f in [n − k], f in [n − k + 1], . . .f in [n] mit den<br />
Gewichtungskoeffizienten a[i] darstellen:<br />
f out [n] =<br />
k<br />
a[i]fin [n − i] (7.11)<br />
i=0
84 7. Grundlagen der Signalverarbeitung<br />
Man erkennt in Gl.7.11 die diskrete Variante von Gl. 7.10. In der Tat<br />
ist Gl. 7.11 die diskrete Faltung f ∗ a wobei alle nicht betrachteten Folgenelemente<br />
implizit als 0 angesehen werden. Man kann also manche Faltungen<br />
als lineare zeitinvariante Systeme betrachten. Umgekehrt können die meisten<br />
in der Praxis der Signalverarbeitung relevanten Übertragungskanäle als LTI-<br />
Systeme angesehen werden und somit mit Hilfe einer Faltung beschrieben<br />
werden.<br />
Experiment 7.1: Faltung von Signalen<br />
Starten Sie das Applet Convolution. Auf der Oberfläche sehen Sie zwei<br />
Signalauswahlfelder, mehrere Funktionsgraphen und einen Schieberegler.<br />
Mit dem linken Auswahlfeld wählen Sie die Funktion f aus Gl. 7.10 und<br />
mit dem rechten die Funktion g. Die ausgewählen Signale werden darunter<br />
dargestellt. Der Schieberegler am unteren Rand bestimmt den Wert der<br />
Laufvariablen t.<br />
Unterhalb der Signale werden f(t − x) und g gleichzeitig dargestellt.<br />
Durch verstellen des Schiebereglers können Sie die horizontale Position von<br />
f(t − x) steuern. Das Produkt von f(t − x) und g wird darunter in Form<br />
einer Schwarzen Fläche dargestellt. Die Größe dieser Fläche (der Wert des<br />
Integrals) folgt darunter als orange gefüllte Kurve.<br />
Wählen Sie verschiedene Signale aus und Falten Sie diese miteinander.<br />
Beobachten Sie insbesondere den Effekt der Faltung mit einer Impulsfolge<br />
und dabei die Wirkung des Abstandes der Impulse auf das Resultat.<br />
7.2.3 Impulsantwort<br />
Betrachten wir die Faltung eines Impulses δ(x) mit einer Kanalfunktion g(x),<br />
so erhalten wir (δ ∗ g)(x) = ∞<br />
δ(x − t)g(t)dt = g(x). Mit anderen Worten,<br />
−∞<br />
die Kanalfunktion g ist gleichzeitig die Ausgabe des Kanals, wenn als Eingabe<br />
ein einzelner Impuls verwendet wird. Daher wird die Funktion meist auch<br />
als Impulsantwort bezeichnet. Man kann also die komplette Wirkung eines<br />
Kanals dadurch beschreiben, daß man angibt, wie der Kanal auf einen Impuls<br />
reagiert.
7.3 Fourieranalyse<br />
7.3 Fourieranalyse 85<br />
Fourier stellte die Behauptung auf, jede periodische Funktion, die ein paar<br />
minimale Bedingungen erfüllt, läßt sich darstellen als die (möglicherweise<br />
unendliche) Summe von Sinusfunktionen. Aus heutiger Sicht erscheint es<br />
unverständlich, warum führende Mathematiker der damaligen Zeit, vor<br />
allem der große Lagrange, Fouriers Theorie mit naiven Begründungen<br />
ablehnten wie z.B. daß die Summe von differenzierbaren Funktionen stets<br />
differenzierbar sei. Trotz der zunächst mangelnden Anerkennung setzte sich<br />
Fourier schließlich durch, und viele Mathematiker, die zuvor verächtlich auf<br />
ihn herabgeschaut hatten, mußten seine Ergebnisse akzeptieren.<br />
Betrachten wir zunächst nur periodische Funktionen. Es leuchtet ein, daß<br />
eine Funktion f(x) mit der Periode T dargestellt werden kann als g(t) =<br />
f(t ·T/2π) wobei g die Periode 2π hat. Betrachten wir nun die Frage, ob sich<br />
jede 2π-periodische Funktion f als trigonometrische Reihe darstellen läßt,<br />
definiert als<br />
∞<br />
f(x) = an · cosnx + bn · sin nx<br />
n=0<br />
In der Literatur findet man auch andere Darstellungen. Wenn man beachtet,<br />
daß cosx = sin(x − π/2) so kann man auch ganz auf die Verwendung des cos<br />
verzichten.<br />
Wir verwenden aber wegen der Eleganz der folgenden Gleichungsumformungen<br />
die Darstellung mit sin und cos. Man kann an der obigen Darstellung<br />
einige Eigenschaften der Funktion recht einfach ablesen. Es gilt z.B.: wenn<br />
f(x) an der Stelle t konvergiert, dann auch an der Stelle t + 2π und auch für<br />
alle ganzen k an den Stellen t + 2kπ. Wenn die Reihe überall konvergiert,<br />
dann ist f(x) eine periodische Funktion mit der Periode 2π. Sollten alle<br />
ai = 0 sein, so ist die Funktion ungerade, und wenn alle bi = 0, dann ist die<br />
Funktion gerade.<br />
Versuchen wir für eine gegebene 2π-periodische Funktion f(x) die Werte<br />
an und bn zu berechnen. Sei also:<br />
f(x) = 1/2a0 + a1 cosx + b1 sin x + · · · + an cosnx + bn sin nx + · · ·<br />
Wenn die Reihe gleichmäßig konvergiert, dann ist f(x) auf dem Intervall<br />
[0, 2π] integrierbar. Multiplizieren wir beide Seiten der Gleichung mit cosmx<br />
und berechnen dann das bestimmte Integral von 0 bis 2π, so erhalten wir<br />
2π<br />
0<br />
f(x) · cosmx dx (7.12)
86 7. Grundlagen der Signalverarbeitung<br />
=<br />
2π<br />
0<br />
<br />
a0<br />
2<br />
∞<br />
∞<br />
<br />
cosmx + an cosnxcosmx + bn sin nxcosmx dx<br />
n=1<br />
für die rechte Seite von Gl. 7.12 gilt:<br />
2π<br />
0<br />
und<br />
2π<br />
0<br />
und<br />
2π<br />
0<br />
a0<br />
2<br />
cosmx dx =<br />
0 für m = 0<br />
π · a0 für m = 0<br />
⎧<br />
⎨0<br />
für m = n<br />
cosnxcosmx dx = π<br />
⎩<br />
2π<br />
für m = n = 0<br />
für m = n = 0<br />
n=1<br />
(7.13)<br />
(7.14)<br />
sin nxcosmx dx = 0 (für alle m, n) (7.15)<br />
Aus den Gl. 7.13 bis 7.15 können wir ableiten, daß<br />
2π<br />
0<br />
<br />
π · an für m = n = 0<br />
f(x) · cosmx dx =<br />
0 sonst<br />
(7.16)<br />
Jetzt wird auch deutlich, wieso der Faktor 1<br />
2 vor dem a0 zur besseren<br />
Eleganz der Formel beiträgt. Er erspart uns bei der Bestimmung der ai eine<br />
Fallunterscheidung für i = 0 oder i = 0.<br />
Lösen wir also komplett nach an auf, so erhalten wir:<br />
an = 1<br />
π<br />
2π<br />
0<br />
f(x) · cosnx dx (7.17)<br />
Wir können die Gl. 7.12 analog nach bn auflösen, indem wir statt beide<br />
Seiten mit cosmx diesmal mit sin mx multiplizieren und ansonsten genauso<br />
weiter vorgehen. Dann erhalten wir schließlich:<br />
bn = 1<br />
π<br />
2π<br />
0<br />
f(x) · sin nx dx (7.18)
7.3 Fourieranalyse 87<br />
Die gezeigte Darstellung einer periodischen Funktion als trigonometrische<br />
Reihe bezeichnen wir als Fourierreihenzerlegung, und die Werte<br />
a0, a1, b1, a2, b2, . . . an, bn . . . heißen Fourierkoeffizienten der Funktion f im<br />
Intervall [0, 2π].<br />
Es gilt offensichtlich für f periodisch mit Periode 2π, daß sich die<br />
Fourierkoeffizienten auch über einem beliebigen Intervall der Länge 2π<br />
berechnen lassen, also:<br />
an = 1<br />
t+2π<br />
π<br />
bn = 1<br />
π<br />
t<br />
t+2π<br />
t<br />
f(x) · cosnx dx (7.19)<br />
f(x) · sin nx dx (7.20)<br />
Oft ist die zu analysierende Funktion f nicht periodisch. Dann ist es aber<br />
meist so, daß man sich sowieso nur für einen Teil des Definitionsbereiches<br />
interessiert und berechnet dann die Fourierkoeffizienten nur für diesen Teil.<br />
Das ist dann so, als würde man annehmen, die Funktion wiederhole sich<br />
auf dem Rest des Definitionsbereichs und hätte als Periode die Länge des<br />
untersuchten Intervalls.<br />
Auf einige Eigenschaften der Fourierreihenzerlegung sei hier noch hingewiesen.<br />
Es gilt für alle f(x):<br />
lim<br />
s<br />
n→∞<br />
r<br />
s<br />
lim<br />
n→∞<br />
r<br />
f(x)cos nxdx = 0 (7.21)<br />
f(x)sin nxdx = 0 (7.22)<br />
deshalb gilt auch (für f auf [r, s] integrierbar):<br />
lim<br />
n→∞ an = 0 und lim<br />
n→∞ bn = 0 (7.23)<br />
Das heißt, f(x) wird durch die partielle Teilsumme der Fourierreihenzerlegung
88 7. Grundlagen der Signalverarbeitung<br />
1<br />
2 a0 +<br />
N<br />
(an cosnx + bn sinnx) (7.24)<br />
n=1<br />
immer genauer angenähert. Sollte die Periode T = 2π sein, so ergibt sich<br />
aus<br />
f(x) = 1<br />
2 a0 +<br />
∞<br />
<br />
an cos( 2π<br />
T nx) + bn sin( 2π<br />
T nx)<br />
<br />
n=1<br />
für die Fourierreihenkoeffizienten<br />
an = 2<br />
T<br />
T<br />
bn = 2<br />
T<br />
0<br />
T<br />
0<br />
(7.25)<br />
f(x) · cos( 2π<br />
nx) dx (7.26)<br />
T<br />
f(x) · sin( 2π<br />
nx) dx (7.27)<br />
T<br />
Die Fourierreihenentwicklung läßt sich statt mit trigonometrischen<br />
Funktionen auch in Exponentialdarstellung schreiben. Nehmen wir an, f(t)<br />
sei periodisch mit der Periode L = 2π/ω0, also:<br />
f(t) = a0<br />
2 +<br />
∞<br />
(an coskω0t + bn sin kω0t) (7.28)<br />
n=1<br />
dann ergibt sich für die Fourierkoeffizienten:<br />
ak = 2<br />
L/2<br />
f(t) · coskω0t dt (7.29)<br />
L −L/2<br />
und<br />
bk = 2<br />
L/2<br />
f(t) · sin kω0t dt (7.30)<br />
L −L/2<br />
Verwenden wir nun noch die Exponentialdarstellung der trigonometrischen<br />
Funktionen:<br />
cosx = eix + e −ix<br />
2<br />
und sinx = eix − e −ix<br />
2i<br />
(7.31)
so erhalten wir<br />
f(t) =<br />
∞<br />
k=−∞<br />
cke ikω0t<br />
7.3 Fourieranalyse 89<br />
mit ck = 1<br />
L/2<br />
f(t)e<br />
L −L/2<br />
−ikω0t dt (7.32)<br />
Die Koeffizienten ck lassen sich auch durch die entsprechenden ak und bk<br />
darstellen:<br />
⎧<br />
⎨a0/2<br />
k = 0<br />
ck = (ak − ibk)/2<br />
⎩<br />
(a−k + ib−k)/2<br />
k > 0<br />
k < 0<br />
Der partiellen Summe<br />
1<br />
2 a0 +<br />
(7.33)<br />
n<br />
(ak coskω0t + bk sin kω0t) (7.34)<br />
k=1<br />
entspricht dann:<br />
n<br />
k=−n<br />
cke ikωot<br />
(7.35)<br />
Die Fourierreihenzerlegung ist eine Art Vorstufe zur Fouriertransformation,<br />
welche sich nicht nur auf periodische sondern auf beliebige integrierbare<br />
Funktionen anwenden läßt. Dies ergibt sich zum Beispiel, wenn die Periode<br />
L in den Gl. 7.26 und 7.27 gegen unendlich strebt.<br />
Während die ursprüngliche Signalfunktion eine Funktion über dem<br />
Definitionsbereich der Zeit ist, ist die Fouriertransformierte eine Funktion<br />
über dem Definitionsbereich der Frequenzen. Wir sprechen daher auch von<br />
einer Transformation aus dem Zeitbereich in den Frequenzbereich.<br />
Die kontinuierliche Fouriertransformierte F(ω) der kontinuierlichen<br />
Funktion f(t) ist definiert als<br />
F(ω) =<br />
+∞<br />
−∞<br />
f(t) · e −iωt dt (7.36)
90 7. Grundlagen der Signalverarbeitung<br />
F wird auch als das Spektrum von f bezeichnet. Die inverse Abbildung<br />
wird inverse Fouriertransformation genannt:<br />
f(t) = 1<br />
2π<br />
+∞<br />
−∞<br />
F(ω) · e iωt dω (7.37)<br />
Der partiellen Summe bei der Fourierreihenentwicklung entspricht bei<br />
der kontinuierlichen Fouriertransformation die Integration über ein endliches<br />
Intervall der Frequenzachse. Wenn eine Funktion f(t) zusammengesetzt ist<br />
aus Schwingungen mit einer maximalen Frequenz die kleiner als ωg ist, dann<br />
heißt f(t) bandbegrenzt und läßt sich schreiben als:<br />
f(t) = 1<br />
+ωg<br />
F(ω) · e<br />
2π −ωg<br />
iωt dω (7.38)<br />
Das heißt insbesondere, daß F(ω) = 0 für |ω| > ωg. In der Praxis können<br />
wir davon ausgehen, daß Sprachsignale immer bandbegrenzt sind. Selbst<br />
wenn sie sehr hohe Frequenzen enthalten sollten, was sehr selten vorkommt,<br />
führt dies durch die in der Regel bei typischen Analog-Digital Wandlern<br />
(bzw. ” Soundkarten“) vorgeschalteten Anti-Aliasing-Filter dazu, daß diese<br />
Frequenzen keinen Effekt auf die Signalverarbeitung haben. Für die Sprache<br />
sind sowieso nur Frequenzen wie in Abb. 5.3 dargestellt von Bedeutung.<br />
Mischt man Schwingungen verschiedener Frequenzen ω1, ω2, . . . zu einem<br />
Signal f(t) = sin(ω1t + φ1) + sin(ω2t + φ2) + . . . zusammen, und kann<br />
man davon ausgehen, daß keine zwei Frequenzen ωi und ωj Vielfache<br />
voneinander sind, so spielt es für den resultierenden Ton keine Rolle, mit<br />
welchen Phasenverschiebungen φ1, φ2, . . . die Mischung durchgeführt wird.<br />
Das Ergebnis hört sich gleich ein. In der Praxis sind Sprachsignale sowieso<br />
nicht nur aus einer Handvoll einzelner Schwingungen zusammengesetzt, so<br />
daß das Problem der Phasenverschiebung komplett vernachlässigt werden<br />
kann. Gehen wir nun davon aus, daß eine Fouriertransformierte F(ω) aus<br />
einem Phasenanteil und einem Amplitudenanteil besteht:<br />
F(ω) = |F(ω)| · e iΦ(ω)<br />
(7.39)<br />
Auch wenn nach der Definition der Begriff Spektrum für die gesamte<br />
Fouriertransformierte steht, so wird er oft auch abkürzend für das Leistungsspektrum<br />
verwendet. Tab. 7.2 faßt verschiedene Bedeutungen des Begriffes<br />
zusammen. Für die Spracherkennung spielt das (komplexe) Spektrum<br />
sowie das Phasenspektrum keine bedeutende Rolle. Am wichtigsten ist das
7.3 Fourieranalyse 91<br />
Leistungsspektrum oder das Amplitudenspektrum. Diese unterscheiden sich<br />
nach der beliebten Anwendung des Logarithmus nur noch um einen Faktor<br />
2 voneinander.<br />
Bezeichnung Term<br />
Spektrum |F(ω)| · e iΦ(ω)<br />
Amplitudenspektrum |F(ω)|<br />
Phasenspektrum Φ(ω)<br />
Leistungsspektrum |F(ω)| 2<br />
= Energiespektrum<br />
Tabelle 7.2. Verschiede Bedeutungen des Begriffs ” Spektrum“<br />
Ähnlich wie bei der Willkürlichkeit der Wahl der Koeffizienten bei der<br />
Fourierreihenzerlegung (z.B. beim Vorfaktor des Koeffizienten a0 und bei<br />
der Entscheidung cos(x) statt sin(x + π/2) zu verwenden) gibt es auch<br />
verschiedene Möglichkeiten der Transformation aus dem Zeitbereich in den<br />
Spektralbereich. So findet man in mancher Literatur auch Definitionen, die<br />
von Gl. 7.36 abweichen. Dementsprechend ist dann auch die inverse Fouriertransformierte<br />
etwas anders definiert. So findet man z.B. in physikalischen<br />
Lehrbüchern auch öfter mal die etwas symmetrischere Definition, bei der die<br />
Faktoren vor dem Integral nicht 1 gegenüber 1/(2π) sind, sondern sowohl<br />
für die Vorwärts- als auch für die Rückwärtstransformation jeweils 1/ √ 2π.<br />
Aus der Definition der Fouriertransformierten lassen sich leicht einige<br />
interessante Eigenschaften ableiten. Wenn F(h) die Fouriertransformierte<br />
der Funktion h ist, dann gelten die folgenden Gleichungen:<br />
Linearität<br />
F(c1f1 + c2f2) = c1F(f1) + c2F(f2) (7.40)<br />
Ableitung<br />
F(f (n)<br />
1 ) = (iω) n F(f) (f (n) = n − te Ableitung von f) (7.41)
92 7. Grundlagen der Signalverarbeitung<br />
Verschiebung<br />
F(f(t − T)) = e −iωT F(f) (7.42)<br />
F(e −iω0t f(t)) = F(ω − ω0) (7.43)<br />
Faltung<br />
F(f ∗ g) = F(f) · F(g) (7.44)<br />
Für die Verarbeitung von Sprachsignalen sind vor allem die Linearitätseigenschaft<br />
und die Faltungseigenschaft von Interesse. Dies leuchtet<br />
besonders ein, wenn wir die Produktion von Sprache entsprechend dem<br />
Quelle-Filter Modell (s. Abs. 4.1.4) betrachten, dann gibt es ein Anregungssignal<br />
u(t), das in der Regel an der Stimmritze entsteht, und einen Kanal<br />
v(t), der durch die Form des Vokaltraktes geprägt wird. Man kann die<br />
Abstrahlfunktion l(t) der Lippen und Nasenlöcher getrennt betrachten oder<br />
auch der Einfachheit halber mit in den Vokaltraktkanal einfließen lassen.<br />
Der Vollständigkeit wegen sollte man auch noch den Kanal betrachten,<br />
der in der Schallübertragung durch die Luft a(t) und in der elektrischen<br />
Signalübertragung vom Mikrophon bis zum Analog/Digital-Wandler m(t)<br />
gegeben ist. Berücksichtigt man auch hier, daß die Hintereinanderausführung<br />
mehrerer Faltungsoperationen wieder eine Faltung ist, so kann man auch<br />
alle Kanäle zu einem einzigen h(t) zusammenfassen.<br />
Die Fouriertransformierte des gemessenen Signals s(t) = u(t) ∗v(t) ∗l(t) ∗<br />
a(t) ∗ m(t) = u(t) ∗ h(t) ist dann S(ω) = U(ω) · V (ω) · L(ω) · A(ω) · M(ω) =<br />
U(ω) · H(ω) wobei S, U, V, L, A, M und H die Fouriertransformierten von<br />
s, u, v, l, a, m und h sind. Aus der recht komplizierten Operation der Faltung<br />
eines Signals mit der Kanaleigenschaft im Zeitbereich entsteht also eine<br />
recht einfache Multiplikation im Frequenzbereich.<br />
Betrachten wir die Fouriertransformierte eines einfachen Impulses (Abb.<br />
7.6), also ˆ δ = F(δ). Wir können dies mit ein wenig salopper Mathematik wie<br />
folgt berechnen:<br />
F(δ)(ω) =<br />
∞<br />
δ(t)e<br />
−∞<br />
−iωt dt = e −iω·0 = 1 (7.45)<br />
Oder, wenn wir berücksichtigen, daß ω = 2π/T, können wir auch<br />
schreiben F(δ)(t) = 1<br />
2π , wobei t jetzt nicht mehr als Kreisfrequenzvariable<br />
(Einheit: Radialwinkel pro Sekunde) sondern als Zeitfrequenzvariable<br />
(Einheit: 1.0 pro Sekunde) betrachtet wird.
δ(x)<br />
F(δ)(ω)<br />
Abb. 7.6. Die Fouriertransformierte des Einheitsimpulses<br />
7.3 Fourieranalyse 93<br />
Und die Fouriertransformierte von zwei Impulsen (Abb. 7.7) F(δτ + δ−τ)<br />
ist entsprechend<br />
F(δτ + δ−τ)(ω) =<br />
δτ(x) + δ−τ(x)<br />
∞<br />
−∞<br />
(δ(t − τ) + δ(t + τ))e −iωt dt<br />
= e −iω·τ + e −iω·(−τ)<br />
= 2 cos(ωτ) (7.46)<br />
Abb. 7.7. Die Fouriertransformierte zweier Impulse<br />
F(δτ + δ−τ)(ω) = 2 cos(ωτ)<br />
Man kann an der Fouriertransformierten 2 cos(ωτ) leicht erkennen, daß<br />
die ” Frequenz“ τ des Cosinus umso höher ist, je weiter die beiden Impulse<br />
voneinander entfernt sind. Lassen wir die beiden Impulse aufeinander zu<br />
gegen null wandern, so verlängert sich die Periode der Fouriertransformierten<br />
bis sie schließlich ∞ ist und die Fouriertransformierte nur noch eine<br />
Konstante ist, wie die eines einfachen Impulses mit doppelter Höhe (vgl.<br />
Abb. 7.8).<br />
Je mehr Impulse wir transformieren, umso mehr Schwingungen enthält<br />
im allgemeinen die Transformierte. Abb. 7.9 zeigt die Transforierten für 3, 5,<br />
9 und 17 Impulse. Wenn wir die Zahl der Impulse unendlich werden lassen,
94 7. Grundlagen der Signalverarbeitung<br />
Abb. 7.8. Fouriertransformierte von Impulsen mit unterschiedlichen Abständen<br />
also eine unendliche Impulsfolge betrachten, dann ist die Fouriertransformierte<br />
auch eine Impulsfolge (Abb. 7.10). Auch hier gilt, die ” Frequenz“ der<br />
Transformierten ist umgekehrt proportional zur Frequenz der ursprünglichen<br />
Funktion. Oder allgemein:<br />
f(x) = <br />
δak(x) ⇒ F(ω) = <br />
δ2πk/a(ω) (7.47)<br />
k∈Z<br />
k∈Z<br />
Die inverse Fouriertransformation ist fast die gleiche Transformation wie<br />
die ” Vorwärtstransformation“. Im Prinzip gibt es keinen Grund, warum<br />
man nicht die Inverse als die eigentliche und umgekehrt definiert. Es ist eine<br />
willkürliche Festlegung. Es gilt nämlich:<br />
∞<br />
f(x) = α e<br />
−∞<br />
iωt<br />
∞<br />
1<br />
f(s)e<br />
2πα −∞<br />
−iωs <br />
ds dω (7.48)
Abb. 7.9. Fouriertransformierte mehrerer Impulse<br />
7.3 Fourieranalyse 95
96 7. Grundlagen der Signalverarbeitung<br />
Abb. 7.10. Fouriertransformierte unendlicher Impulsfolgen<br />
Wie auch immer man die Fouriertransformation als vorwärts“ oder<br />
”<br />
” rückwärts“ deklariert, und egal welche Kombination der Vorfaktoren<br />
α, 1/(2πα) man wählt, die wesentlichen Eigenschaften der Transformation<br />
bleiben erhalten. Man muß nur beim Rechnen entsprechend konsistent<br />
vorgehen. Wir hatten die Fouriertransformierte eines Impulses berechnet<br />
(oder auch zweier Impulse, wobei ein Impuls als Spezialfall von zwei<br />
aufeinanderfallenden Impulsen gesehen wurde) und gefunden, daß die<br />
zugehörige Transformierte eine Cosinus-Funktion ist. Wir erwarten also, daß<br />
die Fouriertransformierte eines Cosinus ein (Doppel-)Impuls ist. Prüfen wir<br />
dies nach:<br />
F(ω) = 1<br />
∞<br />
cos(t)e<br />
2π −∞<br />
−iωt dt (7.49)<br />
= 1<br />
∞<br />
cost · (cosωt + i sinωt)dx<br />
2π<br />
−∞
∞<br />
∞<br />
= 1<br />
cost · i sinωt dx+<br />
2π −∞<br />
<br />
= 0 ∀ω<br />
1<br />
costcosωt dx<br />
2π −∞<br />
<br />
<br />
∞ ω = ±1<br />
=<br />
0 sonst<br />
7.3 Fourieranalyse 97<br />
Wenn wir wieder ein bißchen salopp mit der Mathematik der Funktionen<br />
und Distributionen umgehen, sehen wir, daß die Fouriertransformierte<br />
des Cosinus fast überall null ist, außer an den Stellen ω = −1 und<br />
ω = 1, an denen sie jeweils einen positiven Einheitsimpuls hat. Das heißt,<br />
F(ω) = δ(ω − 1) + δ(ω + 1).<br />
Die Betrachtung von Fouriertransformierten von Impulsen ist deshalb<br />
interessant, weil Spracherkenner in der Praxis mit abgetasteten, also diskreten,<br />
Signalen arbeiten. Ein solches Signal kann als Folge von Impulsen<br />
unterschiedlicher Höhe betrachtet werden.<br />
f(t)<br />
f(t) · s2(t)<br />
Zeitraum<br />
Frequenzraum<br />
F(ω) ∗ S2(ω)<br />
F(ω)<br />
s1(t) S1(ω)<br />
s2(t) S2(ω)<br />
f(t) · s1(t)<br />
F(ω) ∗ S1(ω)<br />
Abb. 7.11. Fouriertransformierte abgetasteter Signale<br />
In Abb. 7.11 ist der Effekt der Abtastung auf die Spektralanalyse von<br />
Signalen dargestellt. Das Abtasten eines kontinuierlichen reellwertigen<br />
Signals mit der Zeitdarstellung f(t) entspricht der Multiplikation mit der<br />
Impulsfolge (Kammfunktion) s(t), die sich als Summe unendlich vieler
98 7. Grundlagen der Signalverarbeitung<br />
einzelner Impulse mit Abstand T schreiben läßt. Im Frequenzbereich ist<br />
die Transformierte dieses Produktes die Faltung F(ω) ∗ S(ω) der Transformierten<br />
F und S der beiden Faktorfunktionen, wobei S(ω) wiederum eine<br />
Impulsfolge ist, deren Impulse allerdings einen Abstand von 2π/T haben.<br />
Die Faltung des Spektrums F mit der Impulsfolge S ist dann die regelmäßige<br />
Wiederholung des Spektrum im selben Abstand wie die Impulse von S.<br />
Wenn wir im einen Fall die Funktion mit einer kurzperiodigen Impulsfolge<br />
s1 abtasten und im anderen Fall mit einer langperiodigen Impulsfolge s2,<br />
dann ist der Effekt im Frequenzraum der, daß die Wiederholungen des<br />
Spektrums im ersten Fall in relativ großem Abstand erfolgen und im zweiten<br />
Fall in so kurzen Abständen, daß das i-te Spektrum noch nicht ” abgeklungen“<br />
ist, wenn das i + 1-te Spektrum schon ” anfängt“. Die Folge sind also<br />
überlagerte Einzelspektren, deren Summe mit dem Einzelspektrums weniger<br />
Ähnlichkeit hat.<br />
Bei nicht bandbegrenzten Signalen f ist das Spektrum F unendlich<br />
ausgedehnt (alle Frequenzen kommen vor), die allermeisten in der Natur<br />
gemessenen Signale (eigentlich alle, wenn man quantenphysikalischen<br />
Artefakten absieht) sind aber bandbegrenzt. Außerdem fallen die Anteile<br />
höher werdender Frequenzen immer kleiner aus, so daß bei ausreichend<br />
großen Abständen der Impulse der Transformierten Abtastfunktion keine<br />
nennenswerte Überlagerung eintritt.<br />
Der Effekt der Überlagerung der Einzelspektren wird als Aliasing-Effekt<br />
bezeichnet. Er ist immer dann zu beobachten, wenn in einem Signal<br />
sehr hohe Frequenzen vorkommen und/oder die Abtastfunktion zu selten<br />
abtastet. Die Berechnung einer minimalen Abtastrate, die nötig ist, um<br />
den Aliasing-Effekt zu vermeiden, ist nicht weiter schwierig. In Abb. 7.12<br />
ist die Situation für ein bandbegrenztes Signal f dargestellt. Weil wir im<br />
Falle von Sprachaufnahmen davon ausgehen, daß f reellwertig ist, ist F eine<br />
symmetrische Funktion (läßt sich nur mit Hilfe von Cosinus-Komponenten<br />
zusammenbauen). Wenn f als maximalen Frequenzanteil die Grenzfrequenz<br />
ωg enthält, dann ist der Frequenzbereich, in dem F ungleich null sein kann<br />
auf −ωg ≤ ω ≤ +ωg beschränkt. Wir können also die ” Breite“ des Spektrums<br />
mit 2ωg angeben. Der Abstand, in dem die Spektren sich wiederholen ist<br />
2π/T, wenn die Abtastung im Abständen von T erfolgt. Um Aliasing zu<br />
verhindern, muß also für die Abtastrate ωs gelten:<br />
2π<br />
T > 2ωg ⇒ T < 2π<br />
2ωg<br />
ωs = 2π<br />
T ⇒ ωs > 2ωg<br />
(7.50)<br />
(7.51)
7.4 Die diskrete Fouriertransformation 99<br />
Gl. 7.51 wird das Abtasttheorem oder auch das Nyquist-Theorem<br />
genannt, in anderem Zusammenhang gelegentlich auch Shannon-Theorem.<br />
Die Gültigkeit des Theorems läßt sich wie folgt auch beweisen:<br />
Sei f(t) eine bandbegrenzte Funktion mit der Periode L und der Grenzfrequenz<br />
ωg. Die Fourierreihe von f ist<br />
f(t) =<br />
dann ist<br />
n<br />
k=−n<br />
e iωgt f(t) = e iωgt<br />
cke ikω0t<br />
n<br />
k=−n<br />
mit ω0 = ωg/n (7.52)<br />
cke ikω0t =<br />
2n<br />
ck−n(e iω0t ) k<br />
k=0<br />
(7.53)<br />
Der letzte Term in Gl. 7.53 ist ein Polynom 2n−ten Grades in e iω0t . Das<br />
heißt, es ist mit 2n + 1 Punkten eindeutig bestimmbar, nämlich durch die<br />
Abtastpunkte f(t0), f(t0 + ts), . . . , f(t0 + 2nts) mit n = ωg · (L/2π) und<br />
ts < π/ωg.<br />
Daß 2n Punkte nicht ausreichen und somit eine Abtastung mit einer<br />
Frequenz ωs = 2ωg, die nicht echt größer als die Grenzfrequenz ωg ist,<br />
unzureichend ist, kann man an einem einfachen Beispiel nachprüfen. Sei als<br />
Signal ein einfacher Sinus f(x) = sinx mit der Frequenz 1 gegeben. Eine<br />
Abtastung mit der Frequenz 2 würde die Werte sin 0, sinπ, sin 2π, . . .sin nπ<br />
liefern. Diese sind alle 0.<br />
7.4 Die diskrete Fouriertransformation<br />
Prinzipiell läßt sich die Fouriertransformierte einer Impulsfolge analytisch<br />
als die Summe der Transformierten jedes einzelnen Impulses berechnen.<br />
Sinnvoller ist allerdings die Anwendung der diskreten Fouriertransformation<br />
für zeitdiskrete Signale.<br />
Sei durch Abtasten der Funktion f(x) an den Stellen 0, 2π 4π<br />
n , n<br />
das zeitdiskrete Signal s[0], s[1], . . .s[n − 1] entstanden, also s[k] = f(k · 2π<br />
n ).<br />
Wenn f(x) bandbegrenzt ist, dann ist entsprechend der Gl. 7.52<br />
, . . . (n−1)·2π<br />
n
100 7. Grundlagen der Signalverarbeitung<br />
f(t)<br />
f(t) · s(t)<br />
Zeitraum<br />
Frequenzraum<br />
−ωg<br />
F(ω) ∗ S(ω)<br />
F(ω)<br />
+ωg<br />
s(t) = ∞ −∞ δ(n · T) S(ω) = ∞ δ(n · 2π/T)<br />
−∞<br />
Abb. 7.12. Illustration des Abtasttheorems<br />
f(t) =<br />
m<br />
k=−m<br />
c[k]e ikt<br />
2π/T<br />
Wenn f(x) nicht bandbegrenzt ist, dann gilt für große m immer noch<br />
f(t) ≈<br />
m<br />
k=−m<br />
c[k]e ikt<br />
Schreiben wir nun f als Impulsfolge:<br />
n−1 <br />
f(t) =<br />
k=0<br />
2ωg<br />
(7.54)<br />
(7.55)<br />
s[k] · δ 2kπ (t) (7.56)<br />
n<br />
dann ist entsprechend Gl. 7.35<br />
s[k] = f(k · 2π<br />
n−1 <br />
<br />
) = c[j] e<br />
n 2kπi<br />
j n<br />
j=0<br />
Bezeichnen wir e 2πi<br />
n als w, so ergibt sich:<br />
(7.57)
n−1 <br />
s[k] = c[j] · w kj<br />
j=0<br />
Offensichtlich gilt<br />
7.4 Die diskrete Fouriertransformation 101<br />
(7.58)<br />
w n = e 2πi = 1 (7.59)<br />
Das heißt, w n ist eine n-te Einheitswurzel. Der Vektor C =<br />
(c[0], c[1], . . .c[n − 1]) ⊤ , das heißt die komplexen Koeffizienten der Fourierreihe<br />
wird als die diskrete Fouriertransformierte des Vektors<br />
S = s[0], s[1], . . .s[n − 1] bezeichnet und berechnet sich analog zum kontinuierlichen<br />
Fall als<br />
c[k] = 1<br />
n−1 <br />
s[j] ·<br />
n<br />
w −kj<br />
j=0<br />
(7.60)<br />
Dementsprechend wird Gl. 7.58 auch die inverse diskrete Fouriertransformation<br />
genannt. Bei genauerer Betrachtung der Gl. 7.60 ist<br />
erkennbar, daß die Transformation in Form einer Matrix-Multiplikation<br />
darstellbar ist:<br />
⎛<br />
⎜<br />
⎝<br />
c[0]<br />
c[1]<br />
c[2]<br />
.<br />
c[n−1]<br />
⎞<br />
⎟<br />
⎠<br />
= 1<br />
n<br />
⎛<br />
1 1 1 . . . 1<br />
⎜<br />
⎝ .<br />
.<br />
.<br />
. .. .<br />
Oder in Kompaktdarstellung:<br />
1 w−1 w−2 . . . w−(n−1) 1 w−2 w−4 . . . w−2(n−1) 1 w −(n−1) w −2(n−1) . . . w −(n−1)(n−1)<br />
⎞ ⎛<br />
⎟ ⎜<br />
⎟ ⎜<br />
⎟ ⎜<br />
⎟·<br />
⎜<br />
⎟ ⎜<br />
⎠ ⎝<br />
s[0]<br />
s[1]<br />
s[2]<br />
.<br />
s[n−1]<br />
⎞<br />
⎟<br />
⎟(7.61)<br />
⎟<br />
⎠<br />
C = DFTn · S (7.62)<br />
Hierbei ist DFTn die Vandermondsche Matrix von<br />
(1, w −1 , w −2 , . . .w −(n−1) ) der Ordnung n, auch diskrete Fouriertransformationsmatrix<br />
der Größe n genannt. Sie ist leicht invertierbar, und es gilt<br />
DFT −1<br />
n (i, j) =<br />
1<br />
n · DFTn(i, j)<br />
(7.63)
102 7. Grundlagen der Signalverarbeitung<br />
Die Berechnung des Signals s[i] aus den Frequenzanteilen c[i] geschieht<br />
entsprechend einfach mit Hilfe der inversen diskreten Fouriertransformation<br />
S = DFT −1<br />
n · C (7.64)<br />
Bei der Berechnung eines diskreten Leistungsspektrums (c[0], c[1], . . .c[n−<br />
1]) eines Signals (s[0], s[1], . . .s[n − 1]), das aus einem durch ω bandbegrenz-<br />
ten f(x) durch Abtasten mit der Abtastrate 2 · ω gewonnen wurde, ist der<br />
am Gesamtsignal.<br />
Wert c[i] der Anteil der Frequenz iω<br />
n<br />
Betrachtet man die Rechenschritte, die nötig sind, um die DFT-<br />
Matrixmultiplikation durchzuführen stellt man fest, daß viele Rechenoperationen<br />
wiederholt werden. Da w eine n-te Einheitswurzel ist, gilt zum<br />
Beispiel (w j ) n = w j oder (w j ) (n/2) = −w j . Unter Vermeidung doppelter<br />
Berechnung derselben Werte wurde in [?] ein Teile-und-herrsche-Algorithmus<br />
vorgestellt, der die obige Matrixmultiplikation statt mit dem üblichen zeitlichen<br />
Aufwand von ca. O(n 3 ) in nur O(n log n) berechnet. Der Algorithmus<br />
ist unter dem Namen schnelle Fouriertransformation (engl. fast Fourier<br />
transform FFT) bekannt. Er funktioniert optimal für Werte von n, die<br />
Zweierpotenzen sind (wegen des Teile-und-herrsche-Prinzips). Er hat in<br />
vielen Bereichen der Signalverarbeitung und Mustererkennung den Aufwand<br />
für Umwandlung eines Signals aus dem Zeitbereich in den Frequenzbereich<br />
so reduziert, daß durch ihn erst sinnvolles Arbeiten möglich wurde. Es existieren<br />
einige Abwandlungen des Algorithmus, die bei Kenntnis der Art des<br />
Signals (zum Beispiel reellwertig) oder bei bestimmten Einschränkungen des<br />
Ergebnisses (zum Beispiel nur Leistungsspektrum ist interessant) besonders<br />
effizient arbeiten.<br />
7.5 Codierung akustischer Signale<br />
Die natürlichste Methode der Codierung von Sprachsignalen ist die so<br />
genannte Pulse Code Modulation (PCM). Auf irgend eine Art sind die<br />
allermeisten gängigen Codes (ob bekannt als .wav oder .au oder .riff etc.)<br />
PCM-Codes. In einer Datei stehen die Meßwerte in ihrer zeitlichen Reihenfolge<br />
hintereinander, wobei n Bits (typischerweise 8 oder 16) als natürliche<br />
Binärzahl oder als ganze Zahl in Zweierkomplementdarstellung den Bereich<br />
f min bis fmax auf die Werte 0 bis 2 n − 1 bzw. −2 n−1 bis 2 n−1 − 1 abbilden.<br />
In der Regel werden die meisten Meßwerte von Sprachsignalen, die der<br />
Analog/Digital-Wandler liefert, eher in der Nähe der 0 (bzw. des Wertes,
7.5 Codierung akustischer Signale 103<br />
der dem Ruhezustand entspricht) liegen als in der Nähe der extremen<br />
Aussteuerung. Wenn quantisierte Sprache mit 8 Bits codiert wird, dann<br />
können damit 256 verschiedene Werteintervalle referenziert werden. Die<br />
meisten Messungen ballen sich in derselben Gegend. Um die 8 Bits besser<br />
auszunutzen, empfiehlt es sich, mehr und dafür kleinere Intervalle um den<br />
Stillemeßwert herum zu verwenden und wenige größere Intervall in der Nähe<br />
der Extrema. So kann dann je nach Sichtweise entweder mehr Information<br />
in den 8 Bits codiert werden oder man benötigt weniger Bits um die gleiche<br />
Menge an Information zu codieren. Die gebräuchlichsten Methoden der<br />
variablen Intervallfestlegung sind die so genannten a-law und µ-law Codes.<br />
Bei µ-law wird vor der Codierung der Meßwert f(x) zu f µ (x) abgebildet,<br />
wobei<br />
f µ (x) = fmax · sgn(f(x)) · log(1 + µ|f(n)|/fmax)/ log(1 + µ) (7.65)<br />
mit µ = 100 . . .500<br />
Der Wert µ kann mehr oder weniger willkürlich gewählt werden, und<br />
bestimmt den ” Stauchungsgrad“ der Abbildung.<br />
Bei der Codierung von Sprachsignalen spielt bis in die heutige Zeit,<br />
in der wir immer weniger mit Speicherplatzproblemen in Computern zu<br />
kämpfen haben die Kompression von Audiosignalen eine Rolle. Ohne Videound<br />
Audio-Dateien ist es heute für den durchschnittlichen Computer-<br />
Privatanwender kaum mehr möglich die riesigen Festplatten sinnvoll zu<br />
füllen. Auch die üblichen RAM Speichergrößen genügen bei weitem, um<br />
mehrere Stunden Audio-Aufnahmen in sehr guter Qualität aufzunehmen.<br />
Während in den Anfängen der digitalen Signalverarbeitung oft nur wenige<br />
Sekunden Audio im Speicher gehalten werden konnten und man sich<br />
Gedanken machen mußte, wie man die Dateien komprimieren kann, so wird<br />
dies heute immer noch, wenn auch auf höherem Niveau bei den so genannten<br />
MP3 Dateien gemacht.<br />
Im Laufe der Zeit wurden verschiedene Kompressionsmethoden entwickelt.<br />
Nur wenige versuchen die abgetasteten Signalwerte völlig verlustfrei<br />
zu speichern. Die besten verlustfreien Komprimierer können Sprachsignale<br />
je nach Abtasttiefe, Abtastrate und Qualität der Aufnahme auf ca. 50% der<br />
ursprünglichen Größe reduzieren. Im Zusammenhang mit dem Phasenspektrum<br />
wurde festgestellt, daß die Phaseninformation in Sprachsignalen für das<br />
Verständnis derselben ohne Bedeutung ist. Oft kann man weitere Information<br />
einsparen, wenn man z.B. berücksichtigt, daß eine Schwingung mit sehr<br />
hoher Amplitude, eine andere mit sehr niedriger Amplitude ” übertönt“, und<br />
so die Information über die leisere Schwingung manchmal ganz weggelassen<br />
werden kann, ohne daß sich die gesamte Hörempfindung merklich ändert. Auf<br />
solche und weiteren Annahmen berufen sich so genannte verlustbehaftete
104 7. Grundlagen der Signalverarbeitung<br />
Kompressionsverfahren wie z.B. das für MP3 verwendete.<br />
Auch die in Kap. 8 beschriebenen LPC-Koeffizienten wurden ursprünglich<br />
nicht als sinnvolle Sprachsignalvorverarbeitung für die Spracherkennung<br />
eingeführt, sondern als mögliche Kompressionsmethode.
8. Verarbeitung von Sprachsignalen<br />
Sprachsignale werden typischerweise als diskrete Abtastfolgen von Spannungsverläufen,<br />
die an einem Mikrophon durch Änderungen des umgebenden<br />
Schalldrucks bzw. der Schallschnelle anliegen, dargestellt. Die Spannungsverläufe<br />
werden von einem Analog-Digital-Wandler zu diskreten Zeitpunkten<br />
quantisiert und als diskretes Signal mit endlichem Wertebereich ausgegeben.<br />
Die wichtigsten Parameter der Analog-Digital-Wandlung sind die Abtastfrequenz<br />
und die Auflösung. Typische Werte sind 16kHz und 16 bit.<br />
8.1 Eigenschaften des Signals im Zeitbereich<br />
Die Darstellung eines abgetasteten Sprachsignals als Kurve hat vermutlich<br />
jeder Leser schon einmal gesehen (zum Beispiel Abb. 2.3). Schon beim Anblick<br />
einer solchen Darstellung des Signals im Zeitbereich erscheint es dem<br />
Betrachter sehr schwierig, damit gesprochene Sprache zu erkennen. Betrachten<br />
wir zunächst einige leicht erkennbare Eigenschaften. Wenn die horizontale<br />
Auflösung der Darstellung nicht ausreicht, um jeden Abtastwert einzeln anzuzeigen,<br />
erkennt man meist nur die sogenannte Einhüllende (engl.: envelope).<br />
Diese ist stark korreliert mit der Energie des Signals. Meist kann man an<br />
dieser Einhüllenden ziemlich leicht erkennen, in welchen Zeitbereichen des<br />
Signals gesprochen wurde. Umgekehrt ist das in der Regel nicht so einfach.<br />
Dort, wo die Einhüllende nicht nennenswert von der Nullinie abweicht, kann<br />
trotzdem Sprache vorliegen, dann aber meist solche Teile, die nicht stimmhafte<br />
Laute enthalten. Abb. 8.1 stellt zwei Signale gegenüber. Das linke ist<br />
ein Ausschnitt aus einer Aufnahme eines stimmhaften Lauts, in dem deutlich<br />
eine Regelmäßigkeit zu erkennen ist. Auf den ersten Blick wird das Signal aus<br />
nur wenigen einzelnen Wellen zusammengesetzt. Auf der Rechten Seite der<br />
Abbildung ist die Aufnahme eines stimmlosen Lauts zu sehen. Hier ist keine<br />
Ordnung zu erkennen. In der Tat lassen sich stimmlose Frikative wie zum<br />
Beispiel ein [s] auch sehr gut durch einfaches weißes Rauschen synthetisieren.
106 8. Verarbeitung von Sprachsignalen<br />
stimmhafter Laut [a] stimmloser Laut [s]<br />
Abb. 8.1. Signale für stimmhafte und stimmlose Laute<br />
8.1.1 Amplitude<br />
Mit ” Amplitude“ wird normalerweise bei einem periodischen Signal die regelmäßig<br />
wiederkehrende maximale Aussteuerung bezeichnet. Ein Sprachsignal<br />
an sich ist nicht periodisch. Es enthält aber oft kurze Abschnitte, vor<br />
allem bei stimmhaften Lauten, die man als annähernd periodisch bezeichnen<br />
kann. Daher wird auch die maximale Aussteuerung innerhalb eines kurzen<br />
Zeitbereichs als Amplitude bezeichnet.<br />
8.1.2 Nulldurchgangsrate<br />
Die Nulldurchgangsrate gibt an, wie oft das Signal in einem Zeitabschnitt<br />
von einem Abtastwert auf den nächsten sein Vorzeichen wechselt. Abgesehen<br />
vom Hintergrundrauschen kann man davon ausgehen, daß die Nulldurchgangsrate<br />
bei stimmhaften Lauten kleiner ist als bei stimmlosen. Stimmlose<br />
Laute haben meist weniger Energie und werden durch ein nichtperiodisches<br />
Rauschen angeregt.<br />
Wenn das Sprachsignal und das Hintergrundrauschen sich überlagern<br />
und die Sprache lauter als das Rauschen ist, dann wird der Anteil des<br />
Rauschens an der Nulldurchgangsrate reduziert, weil seine Nulldurchgänge<br />
nicht durch null sondern durch c = 0 wobei |c| größer ist als die Amplitude<br />
des Hintergrundrauschens.<br />
Im Jahr 1950 zeigte J.C.R. Licklider [?], daß unendlich verstärkte Sprachsignale<br />
sich zwar seltsam anhören aber dennoch in der Regel für <strong>Mensch</strong>en<br />
gut verständlich sind. Unendlich verstärkte Signale sind natürlich nicht<br />
beliebig laut, aber sie stoßen immer an den Grenzbereich der maximalen<br />
Aussteuerung der verwendeten Geräte an.<br />
8.1.3 Energie<br />
Die Energie eines Signals innerhalb eines Zeitabschnittes ist definiert als die<br />
Summe der Quadrate der einzelnen Abtastwerte. In Anlehnung an die Physik
8.2 Spektralranalyse 107<br />
ursprüngliches<br />
Signal<br />
unendlich<br />
verstärktes<br />
Signal<br />
Abb. 8.2. Unendlich verstärkte Sprachsignale sind immer noch verständlich<br />
kann man die Energie eines Signals auch mit der Energie einer schwingenden<br />
Feder vergleichen. Die gespeicherte Energie in einer ausgelenkten Feder<br />
ist auch proportional zum Quadrat der Auslenkung bzw. proportional zur<br />
maximalen Geschwindigkeit bei einer Schwingung.<br />
Die Energie eines Abschnitts einer Sprachaufnahme ist ganz besonders<br />
hilfreich, um zu entscheiden, ob in dem Abschnitt überhaupt Sprache vorliegt.<br />
In der Praxis werden oft ziemlich einfache Sprachdetektoren verwendet<br />
um die Aufmerksamkeit eines Spracherkenners zu steuern, der nicht erst<br />
durch Knopfdruck vom Benutzer zum Erkennen aufgefordert werden muß.<br />
Solche einfachen Sprachdetektoren basieren oft auf nicht viel mehr als auf<br />
der Energie des Signals. Typischerweise werden Toleranzintervalle definiert,<br />
in denen die Energie kurzzeitig auch einmal unter einen Schwellwert fallen<br />
kann, ohne daß ein Ende der Sprache angenommen wird, oder umgekehrt<br />
in Stillephasen kurzzeitig den Schwellwert übersteigen kann, ohne das der<br />
Erkenner gleich anspringt (siehe auch Abs. 10.1.1).<br />
8.2 Spektralranalyse<br />
Eine Vorgehensweise zur automatischen Spracherkennung scheint beim<br />
Anblick von Sprachsignalen im Zeitbereich von vorn herein als aussichtslos,
108 8. Verarbeitung von Sprachsignalen<br />
nämlich der direkte Vergleich zweier unmodifizierter Signale. Angesichts der<br />
riesigen Varianz, die der gleiche Laut in seiner Zeitbereichsdarstellung haben<br />
kann, kann ein direkter Vergleich der Abtastwerte, wenn überhaupt, nur in<br />
sehr eingeschränkten Erkennungsaufgaben und nur unter sehr eingeschränkten<br />
Bedingungen zu irgendwelchen nennenswerten Erkennungsraten führen.<br />
Das Identifizieren von einem Vokal aus einer Menge von zwei Vokalen könnte<br />
womöglich so gemacht werden, aber kontinuierliche Sprache bedarf ganz<br />
anderer Vorgehensweisen.<br />
Bei der Frage, welche Information in einem Sprachsignal denn überhaupt<br />
für die Erkennung von Bedeutung ist, orientiert man sich gerne daran,<br />
welche Information das menschliche Ohr dem Gehirn liefert. Dabei kann<br />
man davon ausgehen, daß die wesentliche Information in den Anteilen<br />
einzelner Frequenzen am Gesamtsignal enthalten ist. Zwar können wir<br />
durch die Wahrnehmung von Phasenverschiebungen die Quelle eines Signals<br />
orten, da dessen Schallwellen an dem einen Ohr früher als an dem anderen<br />
ankommen, aber ganz offensichtlich kann man Sprache auch genauso gut<br />
verstehen, wenn sie nur durch ein Ohr gehört wird. Bei der Ortung von<br />
Schallquellen spielt zusätzlich noch die Form und Bewegung des Kopfes eine<br />
Rolle. Aber auch diese tragen bestenfalls zur virtuellen Verbesserung eines<br />
Sprachsignals bei und nicht zum Verstehen selbst. Durch Untersuchungen<br />
am menschlichen Ohr, wie sie im Kapitel 4 beschrieben wurden, wissen wir,<br />
daß einzelne Abschnitte der Gehörschnecke auf bestimmte Frequenzbereiche<br />
im Signal reagieren und so das Ohr eine Art Fourieranalyse durchführt.<br />
Daher arbeiten die allermeisten Spracherkennungssysteme auf irgend einer<br />
Art der Darstellung des Sprachsignals im Frequenzbereich.<br />
Experiment 8.1: Spektralanalyse<br />
Starten Sie das Applet Signal Processing. Auf der Oberfläche sehen Sie ein<br />
Feld, in dem eine Wellenform dargestellt wird, und einige Schaltflächen zum<br />
Aufnehmen, Abspielen und Analysieren eines Teilsignals.<br />
Wenn Sie auf Aufnahme drücken, können Sie in das Mikrophon Ihres<br />
Computers ein paar Sekunden lang sprechen und die Wellenform des Signals<br />
betrachten. Nehmen Sie zunächst einen einfachen Pfeifton auf.<br />
Markieren Sie den Teil der Aufnahme, in dem der Pfeifton zu erkennen ist<br />
und spielen Sie ihn mit Abspielen zur Kontrolle nochmal ab.
8.2 Spektralranalyse 109<br />
Klicken Sie jetzt auf Fouriertransform und betrachten Sie das angezeigte<br />
Spektrum. Wenn Ihr Pfeifton ” sauber“ war, dann dürfte im Spektrum<br />
abgesehen von ein paar Wacklern hier und da im wesentlichen nur ein<br />
einziger deutlicher Ausschlag zu erkennen sein.<br />
Die horizontale Achse des Spektrums ist die Frequenzachse. An Ihr können<br />
Sie ablesen, welche Frequenz Ihr Pfeifton hatte.<br />
Machen Sie noch eine Aufnahme, bei der Sie diesmal zwei oder drei Pfeiftöne<br />
hintereinander mit unterschiedlichen Tonhöhen aufnehmen. Im Spektrum<br />
sollten Sie dann zwei oder drei Ausschläge erkennen.<br />
Machen Sie noch ein paar Aufnahmen und betrachten Sie die dazugehörigen<br />
Spektren. Probieren Sie insbesondere einige Vokale und einige Frikative aus<br />
(z.B. ein lautes und deutliches Ah oder ein besonders lautes Sch.)<br />
Machen Sie eine Aufnahme, in der Sie viele verschiedene Laute sprechen,<br />
z.B. einen ganzen Satz.<br />
8.2.1 Langzeitspektrum<br />
Nimmt man eine komplette Aufnahme, die es gilt zu erkennen, also zum<br />
Beispiel ein Wort oder einen Satz, und berechnet das Spektrum dieser<br />
Aufnahme, dann erhält man so etwas ähnliches wie die Überlagerung der<br />
Spektren aller in der Aufnahme vorkommenden Laute. Es ist schon bei<br />
wenigen Lauten kaum möglich, und bei vielen Lauten eigentlich unmöglich,<br />
in so einem Spektrum die ” Teilspektren“ der einzelnen Laute zu identifizieren.<br />
Eine Rekonstruktion der Reihenfolge, in der die Laute artikuliert<br />
wurden, ist unmöglich. Daher eignet sich ein Spektrum, das über einer längeren<br />
Aufnahme berechnet wird, nicht, um darauf Spracherkennung zu machen.<br />
Wir können aber leicht feststellen, daß die Spektren einzelner ” uniformer“<br />
Laute diese Laute oft recht gut charakterisieren. Die naheliegende<br />
Vorgehensweise besteht also darin, nicht ein Spektrum über die gesamte<br />
Aufnahme zu berechnen, sondern viele Spektren über einzelne Teile der<br />
Aufnahme, in denen ein wenigstens einigermaßen stationärer Laut zu hören<br />
ist.<br />
Im übrigen bringen echte Langzeitspektren eine weitere Herausforderung<br />
mit sich. Wenn die Aufnahme aus Tausenden oder gar Hunderttausenden<br />
Abtastwerten besteht, dann ist die Berechnung der diskreten Fouriertransformierten<br />
(DFT) auf einem so langen Vektor extrem aufwendig bis gar nicht<br />
mehr sinnvoll durchführbar. So sind viele Langzeitspektraldarstellung (wie
110 8. Verarbeitung von Sprachsignalen<br />
z.B. im Experiment 8.1) in Wirklichkeit nur gemittelte Spektren mehrerer<br />
gleichlanger Teilaufnahmen, für die die Berechnung einer DFT in akzeptabler<br />
Zeit machbar ist.<br />
8.2.2 Kurzzeitspektrum<br />
Um Sprache zu erkennen, bietet es sich also an, statt eines Langzeitspektrums<br />
viele aufeinanderfolgende Kurzzeitspektren zu berechnen, von denen<br />
jedes einem Laut entspricht. Da wir zu der Zeit, zu der wir entscheiden<br />
müssen, auf welchen Teilen eines Signals ein Kurzzeitspektrum berechnet<br />
wird, ja noch gar nicht wissen, wo ein Laut anfängt und wo die Grenze zum<br />
nachfolgenden Laut ist, müssen wir also anders vorgehen. Die erste Idee, im<br />
Signal nach stationären Teilen zu suchen ist relativ schwierig umzusetzen.<br />
Aus der reinen Wellenform des Signals ist es zwar möglich, bestimmte grobe<br />
Strukturen wie Sprache / Stille, oder stimmhaft / stimmlos zu erkennen,<br />
aber die Auftrennung in einzelne Laute ist nicht sinnvoll machbar. Als<br />
Alternative drängt sich die Methode auf, einfach in regelmäßigen kurzen<br />
Zeitintervallen ein neues Spektrum zu berechnen. Wenn diese Intervalle<br />
genügend kurz sind – z.B. kürzer als der zu erwartende kürzeste Laut – dann<br />
können wir davon ausgehen, daß jeder Laut aus mehreren hintereinander<br />
liegenden ähnlichen Kurzzeitspektren besteht.<br />
Mit Framerate wird üblicherweise der zeitliche Abstand einzelner Kurzzeitspektren<br />
bezeichnet. Jedes einzelne Spektrum wird auf einem kleinen<br />
Zeitrahmen (Frame) berechnet. Bevor wir uns für einen bestimmten regelmäßigen<br />
Abstand entscheiden, könnte ein Blick auf die durchschnittlichen<br />
Längen einzelner Laute hilfreich sein. Eine Längenstatistik für Laute des<br />
amerikanischen Englisch ist in Tab. 8.2 dargestellt (die Werte wurden mit<br />
einem Erkenner, der nicht alle IPA-Laute kannte, ermittelt, daher die nicht<br />
1:1 Abbildung von IPA-Symbolen zu Lauten). Die kürzesten Laute nehmen<br />
im Schnitt ca. 40 Millisekunden Zeit in Anspruch. Die längsten haben<br />
einen Schnitt von einer achtel Sekunde. Selbstverständlich kommen in der<br />
natürlichen Sprache auch Laute vor, die signifikant kürzer sind als 40 ms,<br />
und es ist auch problemlos möglich, einzelne Laute mehrere Sekunden lang<br />
anzuhalten. Dennoch ist es sinnvoll, alle 10 ms ein neues Spektrum zu<br />
berechnen. Dann kann man davon ausgehen, daß selbst die kürzesten Laute<br />
im Schnitt aus einigen wenigen Kurzzeitspektren zusammengebaut werden<br />
können. Die meisten Spracherkenner verwenden daher auch Frameraten von<br />
ca. 10 ms. Unter Umständen kann eine dynamische Variation dieses Wertes<br />
sinnvoll sein, zum Beispiel um variierende Sprechgeschwindigkeiten etwas<br />
auszugleichen oder auch um in relativ stationären Teilen dadurch Rechenzeit<br />
einzusparen, daß weniger Frames berechnet werden.
Ê<br />
8.2 Spektralranalyse 111<br />
Laut Beispiel Länge Laut Beispiel Länge Laut Beispiel Länge<br />
Á u i butter 39 m mam 64 a /Bob 88<br />
d<br />
Æ aÍ<br />
dad 47 r red 64/ her 91<br />
but 49/ e get 66 see 94<br />
v vet 52 you 66 w wow 94<br />
bit 53 t toe 67 cow 98<br />
h hat 54 g get 68Ì thin 100<br />
ring 56 k can 69Ë<br />
aÁ<br />
61Ç oÍ eÁ<br />
she 102<br />
n nun 58 f fun 70 s so 103<br />
b Bob 58 l let 72 bye 108<br />
this 59 p pie 77 say 115<br />
j yes 60 æ bad 79 go 116<br />
Joe saw 87 chat 125<br />
Tabelle 8.2. Durchschnittliche Längen (in ms) von Lauten im Englischen (gemes-<br />
sen auf dem Wall-Street-Journal Korpus [Rog97] )<br />
Die Anzahl der Abtastwerte, aus denen ein Kurzzeitspektrum berechnet<br />
wird, wird Fensterbreite genannt und muß nicht unbedingt mit dem Abstand<br />
der einzelnen Spektren übereinstimmen (s. Abb. 8.3). Typischerweise<br />
sind die Längen der Segmente größer als ihr Abstand, so daß sie sich<br />
überlappen. Es gibt hauptsächlich zwei Gründe für ein solches Vorgehen.<br />
Zum einen wählt man gerne eine Framerate von 10 ms, und bei einer<br />
Abtastrate von z.B. 16 kHz würden 10 ms aus 160 Werten bestehen. Will<br />
man die Fouriertransformierte eines 160-dimensionalen Vektors mit Hilfe der<br />
schnellen Fouriertransformation (FFT) berechnen, muß man eine 256 × 256<br />
DFT-Matrix verwenden – dazu müssen die fehlenden 96 Koeffizienten auf<br />
Null gesetzt werden. Zum anderen werden wir im folgenden Abschnitt sehen,<br />
daß es sinnvoll ist, die Ränder eines ausgeschnittenen Segments zu ” glätten“,<br />
weshalb eine Überlappung der Segmente eine bessere Ausnutzung der darin<br />
enthaltenen Information bedeutet.<br />
Nun ist die Fouriertransformierte im kontinuierlichen Fall definiert als unendliches<br />
Integral, und im diskreten Fall so als wäre das zu transformierende<br />
Signal periodisch indem es immer wieder wiederholt würde. Wenn aus der<br />
Aufnahme f(x) ein Segment s(x) zwischen den Zeitpunkten t1 und t2 her-
112 8. Verarbeitung von Sprachsignalen<br />
Framerate<br />
1.<br />
Segment<br />
2.<br />
Segment<br />
Abb. 8.3. Zerteilung von Signalen in einzelne Segmente<br />
ausgenommen wird, dann entspricht dies der Multiplikation des Signals mit<br />
einer Rechteck-Fensterfunktion“ w(x), wobei:<br />
”<br />
<br />
1 für x ∈ [t1, t2]<br />
s(x) = f(x) · w(x) und w(x) =<br />
(8.1)<br />
0 sonst<br />
Von Gl. 7.44 wissen wir, daß die Fouriertransformierte (wie jede andere z-<br />
Transformierte auch) des Produktes zweier Funktionen gleich der Faltung der<br />
beiden Transformierten der Funktionen ist. Wenn wir also die Fouriertransformierte<br />
eines ” ausgeschnittenen“ Segmentes berechnen, ist das Ergebnis die<br />
Faltung der Transformierten des Gesamtsignals mit der Transformierten der<br />
Fensterfunktion. Wollen wir nun, daß der Effekt des Fensters möglichst minimal<br />
auf die Spektralanalyse ausfällt, können wir ein bestimmtes Fenster<br />
wählen. Gar keinen Effekt hätte es, wenn die Transformierte der Fensterfunktion<br />
ein Impuls wäre, denn die Faltung einer Funktion mit einem Impuls<br />
verändert die Funktion nicht. Leider ist es aber so, daß der Impuls die
8.2 Spektralranalyse 113<br />
Transformierte der Funktion w(x) = 1∀x ist, was hieße, wir dürften aus dem<br />
Signal gar nichts ausschneiden. Wenn wir ein Segment mit der Rechteck-<br />
Fensterfunktion ausschneiden, entspricht dies im Spektralbereich der Faltung<br />
des Spektrums des Gesamtsignals mit dem Spektrum der Rechteckfunktion.<br />
Nun weicht das Spektrum der Rechteckfunktion deutlich von einem Impuls<br />
ab. Wir sollten also eine bessere Kurzzeitspektralanalyse erwarten dürfen,<br />
wenn wir die Segmente mit einer Fensterfunktion ausschneiden, deren Transformierte<br />
einem Impuls näher kommt als die Transformierte des Rechtecks.<br />
Abb. 8.4 zeigt einige typische Fensterfunktionen. In Abb. 8.5 sind die Fouriertransformierten<br />
(d.h. die Leistungsspektren) eines Rechteckfensters und<br />
eines Hanning-Fensters (jeweils der Breite 51 Abtastwerte) dargestellt. Es ist<br />
gut zu erkennen, daß die Transformierte des Hanning-Fensters viel näher an<br />
der Dirac-Distribution liegt als die Transformierte eines Rechtecks.<br />
Rechteck Gauß<br />
wn = 1 wn = e − 1 2 ·<br />
Hamming<br />
Hanning<br />
n−N/2 2<br />
σN/2<br />
wn = 0.54 − 0.56 · cos( 2πn<br />
2πn<br />
) wn = 0.5 − 0.5 · cos( N−1) N−1) )<br />
Abb. 8.4. Verschiedene Fensterfunktionen<br />
8.2.3 Spektrogramme<br />
Die häufigste Darstellung von Sprachsignalen sind Spektrogramme. Dabei werden<br />
viele aufeinanderfolgende Kurzzeitspektren hintereinander als Graustufenvektoren<br />
dargestellt. In Abb. 8.6 sind fünf Spektren, s1, . . .s5, dargestellt.<br />
Zu jedem Spektrum wird ein entsprechender Graustufenvektor, v1, . . .v5 erzeugt.<br />
Die Aneinanderreihung mehrerer vertikaler Graustufenvektoren ergibt
114 8. Verarbeitung von Sprachsignalen<br />
dB<br />
0<br />
-20<br />
-40<br />
-60<br />
-80<br />
-100<br />
-120<br />
Rechteckfenster<br />
Hanning-Fenster<br />
0 π/2<br />
π<br />
Abb. 8.5. Fouriertransformierte verschiedener Fensterfunktionen (Breite N = 51)<br />
dann eine Graustufenmatrix, deren i-te Zeile dem i-ten Frequenzband entspricht,<br />
und deren j-te Spalte dem Zeitpunkt j entspricht. Abb. 8.7 zeigt<br />
einen Ausschnitt aus einem Spektrogramm einer tatsächlichen Sprachaufnahme,<br />
bei der die Worte ” eins, zwei, drei“ gesprochen wurden.<br />
s1 s2 s3 s4 s5<br />
v1 v2 v3 v4 v5<br />
s1 s2s3s4s5<br />
f<br />
v1 v3 v5<br />
v2 v4<br />
Abb. 8.6. Entstehung eines Spektrogramms<br />
Es gibt <strong>Mensch</strong>en, die mit erstaunlicher Zuverlässigkeit Graustufendarstellungen<br />
von Spektrogrammen ” lesen“ können. Diese Fähigkeit geht nicht<br />
t
Abb. 8.7. Spektrogramm der Wortfolge ” eins zwei drei“<br />
8.2 Spektralranalyse 115<br />
– zumindest nicht nur – darauf zurück, daß sie für jedes Kurzzeitspektrum<br />
erkennen können, von welchem Laut es stammt, sondern vielmehr darauf,<br />
daß sie eine herausragende Kombinationsgabe besitzen, ähnlich wie bei<br />
<strong>Mensch</strong>en, die Texte lesen können, bei denen von jeder Zeile die obere Hälfte<br />
oder gar noch mehr verdeckt ist.<br />
8.2.4 Filterbänke<br />
Wie in Abs. 4.2 beschrieben, ist die Empfindlichkeit des Ohres unterschiedlich<br />
für verschiedene Frequenzen. Das menschliche Ohr hat eine feinere<br />
Auflösung für niedrigere Frequenzen. So liegt es nahe, anzunehmen, daß<br />
diejenigen Frequenzbereiche, die das Ohr schlechter auflöst, auch weniger<br />
wichtig für die Erkennung von Sprachlauten sind. Zumindest würde man<br />
erwarten, daß eine Signalverarbeitung, die das Verhalten des Ohres in dieser<br />
Beziehung nachahmt, dadurch eher Vorteile als Nachteile für die Erkennungsgenauigkeit<br />
hat. Die übliche diskrete n-Punkt-Fouriertransformierte<br />
liefert n + 1 diskrete Werte, wobei der 0-te Wert der Frequenz ω = 0 (dem<br />
durchschnittlichen Abstand des Signals von der Zeitachse) entspricht und<br />
der i-te Wert der Frequenz ωs n<br />
2i mit ωs als Abtastrate. Zweifellos ist es bei<br />
einer durchaus typischen 256-Punkt-DFT äußerst unwahrscheinlich, daß zwei<br />
Laute darin unterschieden werden können, daß ein ganz bestimmter Punk<br />
einen ganz bestimmten Wert hat. Vielmehr sind Laute daran zu erkennen,<br />
daß bestimmte Punktbereiche in bestimmten Wertebereichen liegen. Eine<br />
Auflösung von 256 Punkten enthält zwar viel Information, vieles davon ist<br />
aber entweder redundant oder zumindest irrelevant. Wünschenswert wäre<br />
eine Transformation, die die 256 Koeffizienten in wesentlich weniger wandelt<br />
und dabei die für die Erkennung wichtigen Inhalte beibehält.<br />
Bei der Kompression von Videos und Bildern mit Hilfe der JPEG und<br />
MPEG Verfahren werden unter anderem dadurch Daten eingespart, daß
116 8. Verarbeitung von Sprachsignalen<br />
bestimmte Details so weggelassen werden, daß ein Ausschnitt eines Bildes<br />
nur noch niedrige Frequenzen enthält. Eine völlig weiße Fläche mit gelegentlichen<br />
schwarzen Punkten hat in der entsprechenden zweidimensionalen<br />
Fouriertransformierten viele hohe Frequenzanteile. Ein Tiefpaßfilter und<br />
eine anschließende Rücktransformation in den Bildbereich führt dazu, daß<br />
die schwarzen Punkte ganz verschwinden oder nur noch die Fläche grau<br />
einfärben. Ein ähnliches Vorgehen verfolgen verschiedene Kompressionsalgorithmen<br />
bei der Kompression von Sprachsignalen.<br />
Die Frage, was bei Audiosignalen irrelevante Details sind, wird dabei<br />
etwas anders beantwortet als bei Bildern, aber das Prinzip ist ähnlich.<br />
Leiten wir ein Signal, das eine Grenzfrequenz von 16 kHz hat durch einen 8<br />
kHz Tiefpaßfilter, dann benötigen wir zum Codieren des Resultat auch nur<br />
noch die Hälfte der Datenmenge. Das Signal bleibt dennoch verständlich. Je<br />
stärker wir filtern, umso weniger Daten fallen an und umso unverständlicher<br />
wird das Signal.<br />
Sinnvoller als ein Tiefpaßfilter ist die Zusammenfassung von benachbarten<br />
DFT-Koeffizienten. Dadurch werden die Informationen über die hohen Frequenzen<br />
nicht ignoriert und kleine unwichtige Variationen werden dennoch<br />
” geglättet“. Die einfachste Art wäre die Verwendung mehrerer Bandpaßfilter,<br />
deren Koeffizienten alle zu einem so genannten Filterbankkoeffizienten zusammengefaßt<br />
werden. Bei einer Aufteilung der n DFT-Koeffizienten a1, . . .,an<br />
in m Filterbankkoeffizienten b1, . . .,bm (s. Abb. 8.8) würde sich bi berechnen<br />
als:<br />
bi = n<br />
m ·<br />
(i+1)· m<br />
n −1<br />
<br />
j=i· m<br />
n<br />
aj<br />
ωg/2<br />
ωg/4<br />
ωg/6<br />
0<br />
Abb. 8.8. Filterbänke gleicher Größe<br />
b0 b1 b2<br />
(8.2)<br />
Wollen wir die Funktion des Ohres einigermaßen nachahmen und die<br />
tieferen Frequenzen feiner auflösen, dann sollten wir Filterbänke verwenden,<br />
die mit steigender Frequenz immer breiter werden, wie in Abb. 8.9.
0 b1 b2<br />
Abb. 8.9. Filterbänke wachsender Größe<br />
8.2 Spektralranalyse 117<br />
Bleibt noch zu klären, wie die einzelnen Filter am besten zu wählen sind.<br />
In zwei verschiedenen Experimenten wurden zwei Funktionen, die Mel-Skala<br />
und die Bark-Skala [?] [?] gefunden, die an die entsprechenden Funktionen<br />
des menschlichen Ohrs angelehnt sind.<br />
Der Begriff Mel ist die Abkürzung für Melody und ist darin motiviert,<br />
die Frequenzskala so in Abschnitte zu unterteilen, wie sie ein (ungeübter)<br />
<strong>Mensch</strong> einteilen würde. Bei den Mel-Experimenten werden Probanden Töne<br />
verschiedener Frequenzen vorgespielt, und die Hörer müssen schätzen, um<br />
welche Frequenz es sich handelt. Trägt man in einem Koordinatensystem die<br />
geschätzten Frequenzen f ′ (mit der Einheit 1 Mel) gegen die tatsächlichen f<br />
(mit der Einheit 1 Hz) auf ergibt sich eine in etwa logarithmische Kurve. Im<br />
Mittel läßt sich diese Kurve approximieren durch<br />
f ′ = 1125 log(0.0016f + 1) (8.3)<br />
Die so genannte Bark-Skala ist benannt nach dem deutschen Akustiker<br />
von Barkhausen. Die Idee hierbei ist es, Versuchspersonen zwei Töne<br />
vorzuspielen und die Hörer dann entscheiden zu lassen, ob es sich um zwei<br />
verschiedene oder um die selben Frequenzen handelt. Weil das menschliche<br />
Ohr tiefere Frequenzen besser auflösen kann, ist zu erwarten, daß zwei Töne<br />
mit den Frequenzen 100 Hz und 110 Hz besser voneinander zu unterscheiden<br />
sind, als zwei Töne mit den Frequenzen 1000 Hz und 1010 Hz. Für<br />
jeden Frequenz gibt es somit eine kritische Bandbreite (minimale hörbare<br />
Frequenzdistanz) gemessen in der Einheit 1 bark. Trägt man die kritische<br />
Bandbreite gegen die Frequenz auf, ergibt sich eine ähnlich gekrümmte<br />
Kurve wie bei der Mel-Skala.<br />
In Abb. 8.11 sind verschiedene Möglichkeiten der Berechnung von Filterbänken<br />
dargestellt. Wenn das diskrete Kurzzeitspektrum 100 Koeffizienten<br />
liefert, und am Ende 10 Filterbänke erzeugt werden sollen, so werden<br />
diese in der Praxis meist in Form von überlappenden Intervallen berechnet.<br />
Der achte Filterbank-Koeffizient ist in der Abb. grau dargestellt. Er wird<br />
als die Gewichtete Summe der Spektralkoeffizienten im Bereich des grauen<br />
Dreiecks berechnet. Hierbei beginnt und endet jedes Dreieck in der Mitte der<br />
angrenzenden Bereiche, und die Höhe des Dreiecks gibt die Gewichtungsfaktoren<br />
an. Da bei einer solchen Definition die Summe der Integrale unter allen
118 8. Verarbeitung von Sprachsignalen<br />
geschätzte Frequenz [Hz]<br />
3000<br />
2500<br />
2000<br />
1500<br />
1000<br />
500<br />
0<br />
0 1000 2000 3000 4000 5000 6000 7000 8000<br />
tatsächliche Frequenz [Hz]<br />
Abb. 8.10. Die Mel-Skala<br />
Dreiecken genauso groß ist wie die entsprechenden Fläche nichtüberlappender<br />
Rechtecke, bleibt die gesamte Signalenergie erhalten, wird allerdings über<br />
die einzelnen Filterbankkoeffizienten ” verschmiert“.<br />
1.<br />
2.<br />
3.<br />
Abb. 8.11. verschiedene Berechnungen für Filterbänke: 1. Linear nichtüberlap-<br />
pend, 2. logarithmisch nichtüberlappend, 3. logarithmisch überlappend
8.3 Cepstralanalyse<br />
8.3 Cepstralanalyse 119<br />
Betrachten wir das Quelle-Filter-Modell des Vokaltraktes wie in Abb. 4.9<br />
dargestellt. Dabei nehmen wir an, daß das aufgezeichnete Sprachsignal<br />
entsteht, indem eine Anregungsschwingung a durch mehrere hintereinanderfolgende<br />
Filter gefiltert wird. Wenn wir davon ausgehen, daß es sich bei<br />
diesen Filtern um lineare zeitinvariante Filter handelt, dann können wir die<br />
Hintereinanderausführung mehrerer Filter zur Anwendung eines einzigen<br />
Filters b zusammenfassen. Die Beobachtung ist dann also die Faltung<br />
c = a ∗ b von a mit b.<br />
Wenn wir eine Spektralanalyse, also eine Fouriertransformation der Beobachtung<br />
durchführen, erhalten wir: C = A · B wobei C die Transformierte<br />
von c, A die Transformierte von a und B die Transformierte von b ist. Eine<br />
anschließende Logarithmierung liefert log C = log A + log B. Jetzt sehen<br />
wir, daß das logarithmierte Spektrum eine Summe zweier logarithmierter<br />
Spektren ist. Spricht jemand mehrere Vokale hintereinander, so kann dabei<br />
die Anregungsschwingung unverändert bleiben während sich die Form des<br />
Vokaltraktes, insbesondere die Lage der Zunge ändert. Das heißt über eine<br />
gewisse Zeit bleibt a konstant, während nur b sich ändert. Berechnet man<br />
den Mittelwert ¯ C = Ā + ¯ B von log C über diesem Zeitraum und subtrahiert<br />
ihn von jedem einzelnen logarithmierten Kurzzeitspektrum, dann erhalten<br />
wir log A(t) + log B(t) − ¯ C = log B(t) − ¯ B, also nur noch Anteile des<br />
” variablen“ Anteils des Signals. Analog verhält es sich, wenn wir annehmen,<br />
daß der Vokaltrakt – und somit der gesamte Filter – konstant bleibt. Dann<br />
befinden sich im mittelwertsbefreiten logarithmierten Spektrum nur die<br />
” variablen“ Anteile der Anregungsfunktion.<br />
Eine anschließende Fouriertransformation oder auch deren Inverse ändert<br />
aufgrund der Linearitätseigenschaften derselben an diesen Sachverhalten<br />
nichts. In Anlehnung an die Bezeichnung ” Spektrum“ bezeichnen wir die<br />
Funktion FT −1 (log FT(f)) als das Cepstrum der Funktion f.<br />
Statt der vollständigen inversen Fouriertransformation FT −1 kann<br />
auch eine andere spektralanalysierende Transformation wie z.B. die diskrete<br />
Cosinus-Transformation verwendet werden. In jedem Fall ist das<br />
Ergebnis die Spektralanalyse des Spektrums selbst, so daß die niedrigen<br />
Cepstralkoeffizienten die niedrigen Schwingungsanteile des als Schwingung<br />
betrachteten Spektrums enthalten und die höheren Cepstralkoeffizienten die<br />
höherfrequenten Schwingungsanteile enthalten.<br />
Insbesondere kann man sagen, daß der 0-te Cepstralkoeffizient den<br />
Konstantanteil des Spektrums beschreibt, also den durchschnittlichen Wert<br />
aller einzelnen Spektralanteile des Ursprungssignals, d.h. die Gesamtenergie.
120 8. Verarbeitung von Sprachsignalen<br />
Der erste Cepstralkoeffizient gibt im wesentlichen die Differenz der<br />
Anteile der niedrigeren Frequenzen (untere Hälfte aller Frequenzen) im<br />
Signal und der Anteile der hohen Frequenzen (obere Hälfte aller Frequenzen)<br />
an.<br />
Die Einheit des Argumentes einer Cepstralfunktion ist die Quefrenz<br />
(auch Hertz). Wenn ein Signal mit der Abtastrate ωs abgetastet wird<br />
und dann mit einer n-Punkt DFT transformiert wird, entspricht der i-te<br />
Cepstralkoeffizient der Quefrenz ωs · i/(2n). Wenn in einem Spektrum die<br />
Frequenzanteile f, 2f, 3f . . . usw. besonders stark vertreten sind, bedeutet<br />
dies, daß in der Spektralanalyse des Spektrums die Quefrenz f besonders<br />
stark ausschlägt.<br />
Wenn ein Kanal wie der Vokaltrakt eine Frequenz f besonders wenig<br />
dämpft, dann gilt dies auch für die Oberschwingungen i·f. Dies wirkt sich im<br />
Spektrum eines Signals darin aus, daß im Cepstrum bei der Quefrenz f ein<br />
herausragender Ausschlag zu beobachten ist (s. Abb. 8.12 – die Oberwellen<br />
der Grundfrequenz von 200 Hz sind im Cepstrum deutlich sichtbar).<br />
Spektrum<br />
(Frequenz)<br />
Cepstrum<br />
(Quefrenz)<br />
200 1000 Hz ∞ 800 400 200 Hz<br />
Abb. 8.12. Das Cepstrum ist die Spektralanalyse des Spektrums<br />
Wird ein Signal dadurch transformiert, daß bestimmte Frequenzen<br />
unterdrückt werden (niedrige bei einem Hochpaßfilter, hohe bei einem<br />
Tiefpaßfilter), dann spricht man vom Filtern eines Signals. Wird nur ein<br />
bestimmtes Frequenzband durchgelassen und alle kleineren und größeren<br />
Frequenzen unterdrückt, dann ist das ein Bandpaßfilter. Entsprechend<br />
spricht man bei Unterdrücken/Durchlassen bestimmter Quefrenzen eines<br />
Cepstrums vom Liftering (s. Abb. 8.13).<br />
Eine Lifter-Transformation, die z.B. die höheren Cepstralkoeffizienten<br />
unterdrückt, wirkt sich auf das in den Zeitraum zurücktransformierte Signal<br />
so aus, daß die Anteile, die die Mikrostruktur des Spektrums bewirken<br />
beseitigt werden. Das ist in etwa vergleichbar mit einer Transformation, die<br />
aus einem ” reichen“ Ton wie den einer Violine einen ” ärmeren“ Ton wie den
Spektrum<br />
Cepstrum<br />
Abb. 8.13. Filtern und Liftern eines Signals<br />
einer Flöte macht.<br />
8.4 Codierung durch Lineare Vorhersage 121<br />
Filtern 000 111<br />
000 111<br />
000 111<br />
000 111<br />
Liftern 000 111<br />
000 111<br />
000 111<br />
000 111<br />
8.4 Codierung durch Lineare Vorhersage<br />
In den Sechzigern wurde zunächst ohne die Motivation, dadurch eine<br />
Vorverarbeitung für die Spracherkennung zu entwickeln, an Codierverfahren<br />
gearbeitet, die eine kompaktere Darstellung des Sprachsignals ermöglichen,<br />
insbesondere für die digitale Speicherung und Übertragung [?]. Als besonders<br />
sinnvoll erwies sich das Verfahren der linearen Vorhersage. Wir werden<br />
im folgenden zeigen, wieso es sich dabei um eine Art Spektralanalyse handelt.<br />
Ziel der Linearen Vorhersage ist es, eine möglichst gute Schätzung des<br />
Abtastwertes s(n) als Linearkombination der p vorausgegangenen Abtastwerte<br />
s(n − 1)...s(n − p) abzugeben, also:<br />
s(n) = e(n) +<br />
p<br />
ais(n − i) (8.4)<br />
i=1<br />
Da meist s(n) nicht exakt als Linearkombination der vorherigen p Werte<br />
dargestellt werden kann, liegt die Vorhersage um einen Fehler e(n) daneben.<br />
Man wird sagen, daß eine Wahl der Vorhersagekoeffizienten ai umso besser<br />
ist, je kleiner der Fehler im Schnitt ist. Die Vorhersagekoeffizienten ai werden<br />
auch LPC-Koeffizienten (Linear Predictive Coding [?]) genannt.<br />
Abb. 8.15 zeigt, wie die Funktion aus Abb. 8.14 auf dem Einheitskreis<br />
aussieht. Da Sprachsignale reellwertig sind, ist die hier dargestellte<br />
z-Transformierte symmetrisch. Die Funktionswerte auf dem Einheitskreis<br />
zwischen 0 ◦ und 180 ◦ wiederholen sich spiegelbildlich zwischen 180 ◦ und 360 ◦ .<br />
Später wurde dann die LPC-Darstellung als sinnvoller Merkmalsraum für<br />
Spracherkennungssysteme erkannt [?]. Mit der Zeit ging ihre Bedeutung aber
122 8. Verarbeitung von Sprachsignalen<br />
Abb. 8.14. Nur-Pole-Funktion eines Linearen Vorhersagesystems<br />
180 ◦<br />
Abb. 8.15. Nur-Pole-Funktion beschränkt auf den Einheitskreis<br />
90 ◦<br />
0 ◦<br />
0 ◦<br />
approximiertes<br />
Spektrum<br />
im Bereich der Erkennung von sauberer Sprache über Nahbesprechungsmikrophone<br />
zurück und das Cepstrum entwickelte sich zum Merkmalsraum der<br />
Wahl für die meisten Erkenner.<br />
8.5 Einfache Signalnormalisierungen<br />
Wie in Abschnitt 2.9 erläutert, liegt der wichtigste Grund für die Schwierigkeit<br />
der automatischen Spracherkennung in der großen Variabilität, mit<br />
der die gleiche Wortfolge in einem akustischen Signal manifestiert werden<br />
kann. Betrachtet man die orthographische Darstellung als die kanonische<br />
Darstellung der entsprechenden Wortfolge, so kann man den gesamten<br />
90 ◦
8.5 Einfache Signalnormalisierungen 123<br />
Spracherkennungsprozeß als eine Art Normierung ansehen. So weit wollen<br />
wir aber nicht gehen. Wenn wir hier von Normierung reden, dann meinen<br />
wir damit die Transformation des Signals, so daß die Variabilität abnimmt<br />
und die Parameter des Erkennungssystems besser geschätzt werden können,<br />
bzw. daß weniger Parameter für die gleiche Klassifikationsleistung benötigt<br />
werden. Eine sehr einfache Normierung, die man leicht als sinnvoll ansieht,<br />
ist die Normierung der Lautstärke. Eine Wortfolge bleibt sicher dieselbe,<br />
unabhängig davon wie der Mikrophonverstärker eingestellt ist. Wozu sollte<br />
man also dem Erkenner die ” Mühe“ machen, Darstellung der gleichen Laute<br />
für verschiedene Lautstärken lernen zu müssen. Einige Normierungsverfahren<br />
können schon auf dem reinen Signal durchgeführt werden, andere verwenden<br />
Wissen über die Lautfolge und greifen erst viel später im Erkennungsprozeß.<br />
8.5.1 Offsetnachführung<br />
Je nachdem, auf welche Art das Sprachsignal weiter verarbeitet wird, kann<br />
es durchaus schädlich sein, wenn die ” Nullinie“ nicht bei null sondern<br />
irgendwo daneben liegt. Bei vielen A/D Wandlern kann es vorkommen, daß,<br />
selbst wenn gar kein Signal anliegt, ein Wert ungleich null geliefert wird.<br />
Dieser Wert wird als Offset des A/D Wandlers bezeichnet. Insbesondere<br />
wenn die Energie eines Signals berechnet werden soll, kann das Ergebnis<br />
durch einen Offset stark verfälscht werden. Daher ist es sinnvoll, bei einer<br />
Sprachaufnahme den Durchschnittswert aller Abtastwerte zu berechnen<br />
und diesen von allen Werten zu subtrahieren. Um einer schleichenden<br />
Wanderung des Offsets entgegenzuwirken, sollte dies sogar auf jedem<br />
ausreichend langen Teilstück einer Aufnahme gemacht werden. Wenn wir<br />
davon ausgehen, daß die kleinste Informationstragende Frequenz in einer<br />
Sprachaufnahme nicht unter 10 Hz liegt, dann kann der Offset auf Abschnitten<br />
der Länge 1/10 Sekunde jeweils neu geschätzt und so nachgeführt werden.<br />
Einen vergleichbaren Effekt kann man dadurch erzielen, daß man statt<br />
des aufgezeichneten Signals dessen Ableitung verwendet. In der Regel ist der<br />
Unterschied zwischen einem Sprachsignal und dessen Ableitung nicht hörbar.<br />
Nimmt man an, daß das Signal als Superposition mehrerer Sinus-Funktionen<br />
mit verschiedenen Frequenzen und Phasen entseht, dann ist die Ableitung<br />
davon wieder einer Superposition von den gleichen Sinus-Funktionen mit<br />
denselben Frequenzen nur mit anderen Phasen. Da aber nach allgemeiner<br />
Einschätzung das Phasenspektrum keine Rolle bei der Erkennung von Sprache<br />
spielt, enthält das abgeleitete Signal alle relevanten Informationen, ist<br />
aber mittelwert- bzw. offset-bereinigt.
124 8. Verarbeitung von Sprachsignalen<br />
8.5.2 Mittelwertssubtraktion<br />
Unabhängig von der Bedeutung der Cepstralkoeffizienten, bei denen ein<br />
” konstanter“ und eine variabler“ Signalanteil entfaltet werden, enthalten<br />
”<br />
Sprachaufnahmen oft auch über eine gewisse Zeit konstante additiv überlagerte<br />
Geräusche. Aufgrund der Linearität der Fouriertransformation (und<br />
auch der Inversen) finden sich additive Anteile in der Zeitdarstellung als<br />
additive Anteile in der Frequenzdarstellung wieder. Das heißt, daß z.B.<br />
ein Hintergrundrauschen (z.B. die typische Büroakustik mit dem Surren<br />
von PC-Lüftern und Festplatten) sich sowohl im Spektrum als auch im<br />
Cepstrum als additiver Anteil wiederfinden, der über eine bestimmte Zeit<br />
relativ konstant ist.<br />
Wenn wir davon ausgehen, daß das Hintergrundgeräusch während<br />
einer gesamten Aufnahme unverändert ist, dann empfiehlt es sich, das<br />
durchschnittliche Spektrum oder das durchschnittliche Cepstrum von allen<br />
Kurzzeitspektren bzw. Kurzzeitcepstren zu subtrahieren. Dadurch wird<br />
auf jeden Fall der zeitlich konstante Anteil des Hintergrundgeräusches aus<br />
dem Signal entfernt, allerdings werden auch konstante Anteile aus dem<br />
Sprachanteil des Signals auch entfernt. Die Praxis hat gezeigt (z.B. [?]), daß<br />
der Schaden durch die Mittelwertssubtraktion bei weitem durch die Vorteile<br />
aufgewogen wird. Zum einen ist für die Erkennung von Sprachsignalen der<br />
konstante Anteil weniger wichtig als der variable, zum anderen können<br />
störende Hintergrundgeräusche, die während der Erkennung aber nicht in<br />
den Trainingsdaten auftreten, die Erkennungsqualität sehr stark senken.<br />
Dabei ist weniger das Vorhandensein der Geräusche ausschlaggebend sondern<br />
vielmehr die Unterschiedlichkeit der Trainings- und der Testaufnahmen.<br />
Wenn wir nicht davon ausgehen, daß das Hintegrundrauschen während einer<br />
gesamten Aufnahme konstant ist, können wir mit Hilfe eines Schleppfensters<br />
von jedem Kurzzeitspektrum, den Mittelwert einiger vorangegangenen<br />
Spektren subtrahieren. Am einfachsten ist es, dabei ein exponentiell abfallend<br />
gewichtetes Fenster zu verwenden, so daß des i-te Spektrum xi ersetzt<br />
wird durch x ′ i = i−1<br />
k=0 ek−i · xk.<br />
8.6 Wavelets<br />
Für den Raum der bandbegrenzten 2π-periodische Funktionen bilden die<br />
Funktionen cos(0x), sin(x), cos(x), sin(2x), cos(2x), . . . sin(nx), cos(nx) eine<br />
Orthonormalbasis. Jede Funktion läßt sich als Linearkombination von Sinusund<br />
Cosinusfunktionen verschiedener Frequenzen darstellen. Schon relativ<br />
früh nachdem Fouriers Theorie anerkannt wurde, wurden auch andere Basen<br />
angedacht. Betrachtet man die Fourierreihen für unstetige Funktionen,
8.6 Wavelets 125<br />
zum Beispiel eine Rechteckfunktion, so ist diese nur sehr schwer durch<br />
die Summe von Sinus- und Cosinusfunktionen zu synthetisieren. Während<br />
die Summe im ” flachen“ Bereich des Rechtecks relativ schnell konvergiert,<br />
bilden sich an den ” Ecken“ extreme Ausschläge, deren Höher kurioserweise<br />
trotz Konvergenz nicht kleiner wird. Solches und ähnliches Verhalten der<br />
Fourieranalyse unstetigen oder ” sehr spitzen“ Funktionen hat dazu geführt,<br />
daß eine Synthese mit Hilfe anderer Funktionen so genannter ” Wavelets“ [?]<br />
angestrebt wurde. Dabei werden keine unendlich ausgedehnten Funktionen<br />
(wie sin und cos) verwendet, sondern Funktionen mit endlichem Definitionsbereich.<br />
Die Basis besteht dann aus einer Menge gleichartiger Funktionen,<br />
die aber unterschiedlich stark im Zeitbereich in die Breite gedehnt sind<br />
(verschiedenskalige Basisfunktionen). Die ungedehnte Ursprungsfunktion<br />
wird auch als ” Mutterfunktion“ Φ bezeichnet. Die Basis besteht aus den<br />
Funktionen:<br />
s −<br />
Φsl(x) = 2 2 Φ(2 −s x − l) (8.5)<br />
mit verschiedenen ganzzahligen ” Dehnungsfaktoren“ s und verschiedenen<br />
Phasenverschiebungen l. Die Überlegungen zur Waveletanalyse von<br />
Funktionen sind dann vergleichbar mit der Fourieranalyse und führen für<br />
Diskrete Signale zu einer Diskreten Wavelet Transformation (DWT) die<br />
ebenso eine lineare Matrixtransformation ist und auch eine schnelle Variante<br />
(fast wavelet transform) besitzt. Bei der Wahl der Mutterfunktion Φ gibt<br />
es viele Freiheiten. Manche Forscher [?] verwenden sogar fraktale Mutterfunktionen.<br />
In der Erkennung kontinuierlicher Sprache unter alltäglichen<br />
Bedingungen haben sich Wavelettransformation allerdings nicht gegenüber<br />
Fouriertransformationen durchsetzen können.
9. Klassifikation und Mustererkennung<br />
Automatische Spracherkennung kann als eine Art der Klassifikation angesehen<br />
werden. Gegeben ist eine Sprachaufnahme, also ein Muster, und gesucht<br />
ist die Klasse (z.B. Phonem, Silbe, Wort, Wortfolge), zu der das Muster<br />
gehört. In der Tat waren die frühen Versuche, Sprache zu erkennen, vergleichbar<br />
mit den meisten Musterklassifikationsaufgaben, wie die Erkennung<br />
von Zeichen, oder Bildern.<br />
9.1 Klassifikatoren<br />
Klassifikatoren lassen sich in verschiedene Gruppen aufteilen. Eine mögliche<br />
Aufteilung ist die in deterministische und stochastische Klassifikatoren. Deterministische<br />
Klassifikatoren basieren auf Regeln, die fest vorgegeben sind<br />
und bestimmen genau eine Klasse zu der das Muster gehört. Stochastische<br />
Klassifikatoren bedienen sich der Wahrscheinlichkeitstheorie, und bestimmen<br />
für ein Muster x die A-Posteriori-Wahrscheinlichkeit p(C|x) dafür, daß x zur<br />
Klasse C gehört. Eine Klassifikation wird dann so durchgeführt, daß x der<br />
Klasse C ∗ mit<br />
C ∗ = argmaxp(C|x)<br />
(9.1)<br />
C<br />
zugeordnet wird.<br />
9.1.1 Deterministische und stochastische Klassifikatoren<br />
Der Begriff Determinismus hat in diesem Zusammenhang nichts damit zu<br />
tun, daß die Ausgabe eines Algorithmus nicht vorherbestimmt ist. Mit<br />
deterministischen Klassifikatoren sind nicht diejenigen gemeint, die das<br />
Gegenstück zu den indeterministischen sind (letztere werden hier sowieso<br />
nicht betrachtet), sondern die das Gegenstück zu den stochastischen Klassifikatoren<br />
bilden. Stochastische Klassifikatoren sind solche, die auf den Einsatz<br />
von Verfahren aus der Wahrscheinlichkeitstheorie und Stochastik beruhen.<br />
Deterministische Klassifikatoren kommen in der Regel nur für sehr einfache<br />
Aufgaben in Betracht, bei denen einige Eigenschaften über die Klassen
128 9. Klassifikation und Mustererkennung<br />
bekannt sind, deren korrekte Erkennung sofort mit absoluter Sicherheit auf<br />
die dazugehörige Klasse schließen läßt. Die allermeisten Mustererkennungsaufgaben<br />
sind aber so gestaltet, daß derartige Eigenschaften entweder nicht<br />
bekannt sind, nicht ausreichend exakt definiert werden können oder nicht<br />
ausreichend sicher erkannt werden können.<br />
Für die Erkennung von Sprache gelten alle drei Einschränkungen, für<br />
viele Laute können wir weder genau beschreiben, was diese Laute ausmacht,<br />
noch könnten wir diese Eigenschaften in einem Sprachsignal mit hinreichender<br />
Genauigkeit detektieren. Daher werden wir uns hier auch nicht mit<br />
deterministischen Klassifikatoren befassen.<br />
Stochastische Klassifikatoren werden gerne in parametrische und nicht<br />
parametrische Schätzer unterteilt, je nachdem ob eine bestimmte parametrisierbare<br />
Annahme über die Verteilung der Stichprobendaten gemacht<br />
wird oder nicht. Beim Lernen der Schätzer anhand der Trainingsstichprobe<br />
wird außerdem unterschieden zwischen überwachtem und unüberwachtem<br />
Lernen. Im ersteren Fall wird zum Lernen die Klassenzugehörigkeit eines<br />
Stichprobenelements verwendet, im letzteren liegen diese Informationen<br />
nicht vor oder werden nicht benutzt.<br />
9.1.2 Parametrische und nichtparametrische Schätzer<br />
Nichtparametrische Schätzer kommen in der Spracherkennung selten zum<br />
Einsatz. Typische Beispiele für nichtparametrische Schätzer sind diskrete<br />
Wahrscheinlichkeitsfunktionen (meist dargestellt als Histogramme), die für<br />
jedes Ereignis aus einer diskreten Menge von Ereignissen durch Zählen der<br />
Häufigkeiten aller Ereignisse die relative Häufigkeit berechnet und damit<br />
die Wahrscheinlichkeit des Ereignisses schätzen. Für kontinuierliche Merkmalsräume<br />
können auf ähnliche Art Häufigkeiten für bestimmte Intervalle<br />
oder Teilräume berechnet werden. Mit der Parzen-Fenster Methode [?] [?]<br />
geht das sogar für unterschiedlich groß gewählte Teilräume in Abhängigkeit<br />
von der lokalen Belegungsdichte durch die Trainingsdaten.<br />
Bei stochastischen Klassifikatoren gibt es typischerweise eine Trainingsphase,<br />
in der die Parameter des Systems geschätzt werden und eine Testphase<br />
in der zuvor ungesehene Stichproben klassifiziert werden (s. Abb. 9.1).<br />
9.1.3 Überwachtes und unüberwachtes Lernen<br />
Beim Lernen von Klassifikatoren, egal ob parametrisch oder nicht parametrisch,<br />
kann man unterscheiden zwischen überwachtem und unüberwachtem
Transkript<br />
A/D<br />
Converter<br />
Parameterschätzung<br />
Parameter<br />
Signal-<br />
Verarbeitung<br />
Klassifikator<br />
Hypothese<br />
9.1 Klassifikatoren 129<br />
Trainining<br />
Klassifikation<br />
Abb. 9.1. Arbeitsweise eines stochastischen parametrischen Klassifikators<br />
Lernen. Beim überwachten Lernen ist für jedes Muster bekannt, zu welcher<br />
Klasse es gehört. Beim unüberwachten Lernen ist dies nicht der Fall. Oft<br />
ist es sogar so, daß nicht einmal bekannt ist, wieviele und welche Klassen es<br />
überhaupt gibt. In der Spracherkennung kommen beide Varianten des Lernens<br />
vor. Das unüberwachte Lernen findet zum Beispiel Verwendung beim<br />
Erzeugen von Codebüchern mit dem k-Mittelwerte Verfahren. Überwachtes<br />
Lernen wird allerdings viel häufiger verwendet.<br />
9.1.4 Neuronale Netze als Klassifikatoren<br />
Für die meisten interessanten Klassifikationsaufgaben ist es kaum sinnvoll<br />
möglich, deterministische Klassifikatoren zu definieren. Eine naheliegende<br />
Idee besteht darin, die Regeln des Klassifikators ” zu lernen“. Für einfache<br />
lineare Klassifikationsaufgaben wurde schon früh eine einfache Variante eines<br />
neuronalen Netzes eingesetzt, das sogenannte Perzeptron.<br />
Neuronale Netze werden zur Lösung von Klassifikationsaufgaben auch<br />
außerhalb des Gebiets der automatischen Spracherkennung eingesetzt. Immer<br />
dann, wenn anzunehmen ist, daß die optimalen Trennflächen zwischen<br />
den zu unterscheidenden Klassen im oft hochdimensionalen Merkmalsraum<br />
nichtlinear sind, bietet sich der Einsatz etwas komplexerer neuronaler Netze<br />
an, z.B. sogenannte mehrschichtige Perzeptronen (Multi Layer Perceptrons<br />
- MLPs).<br />
Die Verwendung neuronaler Netze in der Spracherkennung wird in Kap.<br />
22 ausführlich behandelt.<br />
9.1.5 Vektor Quantisierung<br />
In der Regel sind die zu klassifizierenden Muster Punkte aus einem mehrdimensionalen<br />
prinzipiell unendlichen Vektorraum, typischerweise R n . In
130 9. Klassifikation und Mustererkennung<br />
vielerlei Hinsicht wäre es leichter mit Indizes von Mustern zu arbeiten. Dann<br />
könnten viele Funktionen auf den Mustern in Form einer Tabelle implementiert<br />
werden. Aus komplizierten Dichtefunktionen, die nur parametrisch<br />
geschätzt werden können, würden nichtparametrisch schätzbare diskrete<br />
Wahrscheinlichkeitsverteilungen. Daher werden gerade für Systeme mit<br />
kleiner Rechenleistung wie zum Beispiel Mobiltelefone gerne einfache Indizes<br />
statt hochdimensionaler reellwertiger Vektoren verwendet. Die Gewinnung<br />
der Indizes erfolgt mittels einer Vektor Quantisierung.<br />
Abstandsmaße<br />
Die übliche Art der Vektor Quantisierung ist der Vergleich des zu quantisierenden<br />
Vektors X mit zuvor abgespeicherten Referenzvektoren µ1 . . .µk.<br />
Als Index I(X) des Vektors X wird dann der Index des ihm am nächsten<br />
liegenden Referenzvektors verwendet, also:<br />
I(X) = argmind(X,<br />
µi) (9.2)<br />
i<br />
Das am häufigsten verwendete Distanzmaß d(·) ist die euklidische<br />
Distanz. Für einige bestimmte Fälle kann auch eine andere Distanz, z.B.<br />
City-Block sinnvoll sein.<br />
Manchmal werden nicht Distanzen zu einzelnen Referenzvektoren<br />
berechnet, sondern gleich zu alle gegebenen k Klassen C1 . . .Ck. Hier<br />
ist es üblich, als Distanz d(X, C) den Abstand von X zum Mittelwert<br />
der Klasse C, also den durchschnittlichen Abstand zu allen bekannten<br />
Elementen der Klasse C, zu verwenden. Auch hier gilt, daß je nach Problem<br />
auch andere Distanzmaße sinnvoll sein können, zum Beispiel der kleinste<br />
oder auch der größte Abstand d(X, µ) zu allen bekannten Elementen µ von C.<br />
Klassifikation mit Vektor Quantisierung<br />
Im Rahmen der Vektorquantisierung ist es ein Ziel, die Abbildung Mustervektor<br />
→ Referenzvektor so zu gestalten, daß die Abweichung möglichst<br />
klein ist. Denn wo immer ein Referenzvektor an der Stelle des eigentlichen<br />
Mustervektors verwendet wird, macht das System Fehler, so genannte<br />
Quantisierungsfehler.<br />
Es ist also sinnvoll, die Quantisierung so zu gestalten, daß möglichst<br />
kleine Quantisierungsfehler vorkommen. Die einfachste naheliegende Lösung,<br />
eine Unterteilung des Merkmalsraums in gleich große, äquidistante Teilräume<br />
wie in Abb. 9.2 ist für die meisten Anwendungen, in denen zu erwarten<br />
ist, daß die Mustervektoren nicht gleichverteilt im Raum liegen, nicht<br />
praktikabel. Die Referenzvektoren 1,4,5,6,7,11 und 12 in Abb. 9.2 haben<br />
gar keine Beispiele während die anderen Referenzvektoren jeweils mehrere
1 2 3 4 5<br />
6 7 8 9 10<br />
11 12 13 14 15<br />
Abb. 9.2. Nachteile äquidistanter Merkmalsraumunterteilung<br />
Beispiele repräsentieren müssen.<br />
9.1 Klassifikatoren 131<br />
Verwendet man die häufigste Klassifikationsmethode mittels Vektorquantisierung,<br />
den Index des Referenzvektors mit kleinstem euklidischen Abstand,<br />
so ergibt sich eine Unterteilung des Merkmalsraum in so genannte Voronoi-<br />
Regionen. Positioniert man mehrere Referenzvektoren in einem Raum, so<br />
umschließt die Voronoi-Region eines Vektors alle Punkte des Raumes, die<br />
näher an diesem als an allen anderen Referenzvektoren liegen. Es ist leicht<br />
einzusehen, daß jede Voronoi-Region konvex sein muß.<br />
Abb. 9.3. Nachteil der Nächste-Nachbar-Klassifikation<br />
Abb. 9.3 illustriert, daß der mit × markierte Punkt zu einem Referenzvektor<br />
auf der rechten Hälfte des Merkmalsraumes zugeordnet würde.<br />
Ein menschlicher Beobachter würde diese Zuordnung allerdings als eher<br />
unwahrscheinlich ansehen, weil alle Punkte der rechten Hälfte einen sehr<br />
kleinen Teilraum einnehmen, in den der mit × markierte nicht hineinfällt.
132 9. Klassifikation und Mustererkennung<br />
Würde man auf diese Art zwei verschiedene Phänomene modellieren, so<br />
würden durch eine einfache Nächste-Nachbar-Schätzung die Punkte in der<br />
grau unterlegten Fläche mit großer Wahrscheinlichkeit falsch klassifiziert<br />
werden.<br />
Abb. 9.4. Klassifikator mit Mahalanobis-Distanzen<br />
Eine Lösung dieses Problems bietet die Verwendung von Mahalanobis-<br />
Distanzen statt euklidischer Distanzen:<br />
d(µ, x) = (x − µ) ⊤ Σ −1 (x − µ) (9.3)<br />
Hierbei ist die Distanz eines Musters x zu einem Klassenrepräsentanten µ<br />
zusätzlich durch die Kovarianzmatrix Σ beeinflußt. Wenn Σ die Einheitsmatrix<br />
ist, so ist die Mahalanobis-Distanz gleich dem Quadrat der euklidischen<br />
Distanz. Mahalanobis-Distanzen sind allerdings wesentlich aufwendiger zu<br />
berechnen, und benötigen darüber hinaus noch die Schätzung von Σ aus<br />
allen Beispielvektoren, die zu der Klasse gehören. Abb. 9.4 illustriert, die<br />
Mahalanobis-Distanzen für zwei Repräsentanten, von denen der linke mehr<br />
und der rechte weniger streut. Die Höhe des Gitters gibt für jeden Punkt<br />
des Merkmalsraums die Summe der Mahalanobis-Distanzen zu den beiden<br />
Repräsentanten an. Die konzentrischen Ellipsen sind jeweils Punkte mit<br />
gleicher Mahalanobis-Distanz zu einem der Repräsentanten. Der mit dem<br />
Pfeil markierte Punkt würde – obwohl näher am rechten Repräsentanten –<br />
zur linken Klasse zugeordnet werden.<br />
k-Nächste-Nachbarn<br />
Ein typischer Fehler, den einfache Nächster-Nachbar-Klassifikatoren machen,<br />
ist das Nichterkennen eines Ausreißers in den Referenzdaten. Liegt ein
9.1 Klassifikatoren 133<br />
Beispiel aus Klasse C1 mitten unter vielen Beispielen für C2, dann definiert<br />
es einen Teil des Merkmalsraum fälschlicherweise als zur Klasse C1 gehörend.<br />
Solche Fehlklassifikationen lassen sich leicht vermeiden, wenn man statt des<br />
einen nächsten Nachbarn die k nächsten Nachbarn betrachtet.<br />
Abb. 9.5. k-nächste-Nachbar-Klassifikation<br />
nächster Nachbar<br />
Klasse<br />
6 nächste Nachbarn<br />
Klasse<br />
Abb. 9.5 illustriert, wie der nächste Nachbar des als Kreuz markierten<br />
Testpunktes zur Klasse der Dreiecke gehört. Erweitert man aber den<br />
Umgebungskreis, so daß die nächsten 6 Nachbarn darin liegen, dann ist die<br />
darunter am häufigsten vertretene Klasse die Klasse der Kreise. Was für ein<br />
Wert für k sinnvoll ist, hängt von der Menge der Klassen und der Dichtheit<br />
der Referenzmuster im Merkmalsraum ab.<br />
Baumstrukturen<br />
Teilt man den Merkmalsraum hierarchisch in Unterräume auf, so kann<br />
diese Hierarchie als Baum dargestellt werden, dessen Blätter dann Teilräumen<br />
entsprechen die jeweils durch einen Referenzvektor repräsentiert werden.<br />
So eine Hierarchie kann sinnvollerweise durch Trennhyperebenen entwickelt<br />
werden, die jeweils orthogonal zu einer Koordinatenachse liegen.<br />
Der Aufbau der Baumstruktur [?] [?] erfolgt am besten durch Aufteilung<br />
des Raums entlang der Achse der größten Ausdehnung (s. Abb 9.6). Ohne<br />
weiteres Wissen, ist die Annahme, daß wenn die Daten überhaupt irgendwie<br />
multimodal verteilt sind, daß dies dann am wahrscheinlichsten an den Enden<br />
der Achse mit größter Varianz ist.
134 9. Klassifikation und Mustererkennung<br />
3.<br />
2.<br />
3.<br />
A B<br />
1. 1.<br />
1.<br />
3.<br />
2.<br />
C<br />
3.<br />
D<br />
3.<br />
Abb. 9.6. Merkmalsraum als hierarchische Baumstruktur<br />
9.1.6 Codebücher<br />
2.<br />
3.<br />
Eine Sammlung von Referenzvektoren wird Codebuch genannt. Verschiedene<br />
Verfahren zur Erzeugung von Codebüchern sind üblich. Hier werden einige<br />
davon vorgestellt.<br />
k-Mittelwerte / Neural Gas<br />
Das k-Mittelwerte Verfahren wird oft auch Linde-Buzo-Gray-Algorithmus<br />
(LBG-Algorithmus) oder auch Basic Isodata Algorithmus genannt. Er läuft<br />
wie folgt ab:<br />
Geben seien T Beispielvektoren v1, v2, . . . vT sowie der Wert k, der angibt,<br />
aus wie vielen Referenzvektoren das Codebuch bestehen soll.<br />
1. initialisiere k beliebige Mittelwerte µ1, µ2, . . .µk<br />
(z.B. µi = vi)<br />
2. ordne jedem Vekor vi den Repräsentanten µ f(i)<br />
zu, zu dessen Klasse vi gehört<br />
3. ersetze jeden Mittelwert µi durch den Durchschnitt<br />
aller ihm zugeordneter Beispielvektoren<br />
4. solange mit dem Ergebnis nicht zufrieden, fahre<br />
mit Schritt 2 fort<br />
Typische Abbruchbedingungen sind z.B. eine vorgegebene Zahl an<br />
Iterationen, meist ein auf Erfahrung basierender Wert. Möglich ist es auch,<br />
2.<br />
3.<br />
1.<br />
2.<br />
2.<br />
3.
9.1 Klassifikatoren 135<br />
den durchschnittlichen (oder ggf. maximalen) Abstand aller Beispielvektoren<br />
zu ihrem Referenzvektor zu betrachten, und die Schleife dann abzubrechen,<br />
wenn dieser Abstand unter einen festgelegten Wert fällt, oder wenn der<br />
durchschnittliche Abstand sich nicht mehr oder kaum noch ändert.<br />
Prinzipiell kann die Zuordnung f(i) der Beispiele zu Referenzen auch<br />
überwacht erfolgen, allerdings würden sich im Falle des überwachten Lernens<br />
eher andere Verfahren anbieten. Der k-Mittelwerte Algorithmus ist vielmehr<br />
das Standardverfahren für unüberwachtes Lernen. Dann wird in der Regel<br />
f(i) = argmin j |µj − vi| gewählt, als der zu vi nächste Referenzvektor.<br />
Eine Verallgemeinerung des LBG-Algorithmus ist das so genannte Neural<br />
Gas. Dabei wird keine harte“ Zuordnung f(i) getroffen, sondern eine ver-<br />
”<br />
teilte Zuordnung f(i, j) mit k j=1 f(i, j) = 1. Dann wird der Schritt 3 des<br />
LBG-Algorithmus dahingehend modifiziert, daß jeder Mittelwert durch den<br />
gewichteten Durchschnitt aller Beispielvektoren ersetzt wird, also<br />
µ ′ j =<br />
<br />
i<br />
1 <br />
· (f(i, j) · vi) (9.4)<br />
f(i, j)<br />
Experiment 9.1: k-Mittelwerte<br />
i<br />
Starten Sie das Applet k-Means. Am oberen Rand sehen Sie verschiedene<br />
Schaltflächen. Neben der Anzeige für den Wert der Variablen k befinden sich<br />
Schalter zum Verändern derselben. Stellen Sie k auf den Wert 3 ein.<br />
Klicken Sie nun beliebig viele Punkte in die freie Fläche. Wenn sie danach<br />
auf Init drücken, werden die k = 3 zuerst eingegebenen Punkte mit drei<br />
verschiedenfarbigen Symbolen (initiale Mittelwerte) markiert. Jeder andere<br />
eingegebene Punkt erscheint in einer der drei Farben, je nachdem welcher<br />
der Mittewerte ihm am nächsten ist.<br />
Am oberen Rand sehen Sie den Wert der Streuung (korrekter gesagt, den<br />
durchschnittlichen euklidischen Abstand aller Punkte zu ihren jeweiligen<br />
Referenzmittelwerten) Eingeblendet. Betätigen Sie die Schaltfläche Step<br />
und beobachten Sie, wie die Mittelwertemarkierungen sich bewegen und die<br />
Streuung abnimmt. Die einzelnen Stichprobenpunkte ändern nun durch die<br />
neue Position der Mittelwerte gegebenenfalls ihre Farbe.<br />
Nach endlich vielen Schritten wird die Streuung nicht mehr weiter sinken<br />
und die Mittelwerte ändern ihre Position nicht mehr. Ebenso bleiben die<br />
Zuordnungen der Stichprobenpunkte zu den Mittelwerten konstant.
136 9. Klassifikation und Mustererkennung<br />
Durch Klicken auf Reset können Sie Eingabefläche wieder löschen und ein<br />
neues Problem eingeben. Versuchen Sie für verschiedene Werte von k Punkte<br />
so einzugeben, daß möglichst viele Iterationen durchlaufen werden können,<br />
bis ein Optimum erreicht wird.<br />
Der Begriff ” neural gas“ ist angelehnt an die Vorstellung eines<br />
abkühlenden Gases. Der Grad an Streuung der Zuordnung variiert dabei<br />
wie bei allen Simulated-Annealing-Algorithmen von anfangs sehr stark<br />
(f(i, j) = 1/k ∀i, j) bis schließlich die Zuordnung eindeutig (f(i, j) = 1 für<br />
ein bestimmtes j und 0 für alle anderen) wie beim reinen LBG-Algorithmus<br />
ausfällt.<br />
Bleibt noch zu klären, wie ein sinnvoller Wert für k bestimmt werden<br />
kann. Es wurden Ansätze verfolgt, die Größe eines Codebuchs automatisch<br />
zu bestimmen [?]. Dabei wird im Wesentlichen für verschiedene Werte von<br />
k ein Neural-Gas- oder ein k-Mittelwerte-Algorithmus berechnet und die<br />
durchschnittliche Streuung auf einer zuvor aus den Trainingsdaten entfernten<br />
Teilmenge (Kreuzvalidierungsmenge) bestimmt. Ab einem bestimmten k<br />
ist zu erwarten, daß die Streuung auf den Kreuzvaldierungsdaten nicht<br />
mehr genauso schnell absinkt wie auf den Trainingsdaten. Dies ist dann ein<br />
sinnvoller Wert für k. Experimente in [?] haben die Erwartung bestätigt,<br />
daß Klassen, die von vorn herein eher uniform beziehungsweise unimodal<br />
erscheinen wie zum Beispiel die Klasse der Beispielspektren für Stillelaute,<br />
auch mit wesentlich weniger Referenzen auskommen als eher Komplexe<br />
Klassen wie die Spektren von Diphthongen.<br />
In der Praxis hat sich allerdings herausgestellt, daß der Gewinn an<br />
fein dosierter Modellierungsgenauigkeit oft durch die sich ergebenden<br />
numerischen Probleme wieder aufgehoben werden. Der Vergleich von multivariaten<br />
Gauß-Mischverteilungen mit stark unterschiedlichen Größen von<br />
Mixturen benötigt nachträgliche Korrekturparameter (so genannte fudge<br />
factors). Die Erkennungsraten von Spracherkennern mit so automatisch<br />
bestimmten Codebuchgrößen waren nicht signifikant besser als diejenigen<br />
von Erkennern mit im voraus auf konstante Größe festgelegten Codebüchern.<br />
In der Tat gehört zu den am häufigsten angewandten Methoden der<br />
Codebuchgrößenbestimmung die auf Erfahrung basierte Schätzung. In diese<br />
Schätzung fließen vor allem die Menge der Trainingsdaten und der maximale<br />
erlaubte Aufwand für die Erkennung ein. Je mehr Trainingsdaten zur<br />
Verfügung stehen und je weniger Anforderungen and die Echtzeitfähigkeit<br />
des Klassifikators gestellt werden, umso größer können die Codebücher<br />
gewählt werden.
9.1 Klassifikatoren 137<br />
Eine weitere Möglichkeit ist das Erzeugen von Codebüchern durch<br />
” Wachsenlassen“. Dabei besteht das initiale Codebuch aus nur einem Refe-<br />
renzvektor. In Abb. 9.7 ist das einelementige Codebuch links als Gausglocke<br />
(s.u.) über allen Trainingsmustern dargestellt. Der Algorithmus zum Wachsenlassen<br />
der Codebücher [?] prüft nun iterativ welche Referenzvektoren<br />
aus so vielen Daten gemittelt werden, daß diese Daten womöglich bimodal<br />
verteilt sind und es sinnvoller wäre, sie mit zwei Referenzvektoren N1 und<br />
N2 zu modellieren, die jeweils auf den Daten X1 und X2 geschätzt werden.<br />
Das Wachstum der Codebücher kann abgebrochen werden, wenn sonst nicht<br />
mehr ausreichend Trainingsdaten zum schätzen der einzelnen Mittelwerte<br />
vorhanden wären.<br />
N1<br />
Abb. 9.7. Auftrennen einer Gauß-Verteilung in zwei<br />
Das Bucket Voronoi Intersection Verfahren<br />
Bei sehr großen Codebüchern (manche Spracherkenner haben mehrere Millionen<br />
Referenzvektoren) muß natürlich die ständig vorkommende Berechnung<br />
der Distanzen möglichst zeitsparend durchgeführt werden. Dazu bieten<br />
sich zwei Strategien an: einmal eine effiziente Berechnung der Distanzen<br />
selbst, und zum anderen die Einsparung von unnötigen Distanzberechnungen.<br />
Wenn es darum geht, nur den nächsten Referenzvektor zu finden, dann<br />
ist es möglich, die euklidische Distanzberechnung abzubrechen, wenn die<br />
nach j Dimensionen akkumulierte Teildistanz größer ist, als die bis dahin gefundenen<br />
kleinste Gesamtdistanz. Sortiert man die Dimensionen absteigend<br />
nach ihrer Varianz, dann kann man so zusätzlich die Wahrscheinlichkeit<br />
dafür maximieren, daß ein Abbruch der Distanzberechung vorgenommen<br />
werden kann. Die Praxis hat gezeigt, daß man für Sprachdaten, und da<br />
insbesondere für ca. 16-dimensionale Spektral- oder Cepstral-Vektoren,<br />
durch den Abbruch der Distanzberechnungen nur wenig Zeit einsparen kann.<br />
Immerhin führt man durch die jetzt benötigten Vergleiche der Teildistanzen<br />
mit der minimalen Gesamtdistanz einen zusätzlichen Aufwand ein. Diesen<br />
kann man zwar wiederum reduzieren, indem man den Vergleich nicht nach<br />
X1<br />
N2<br />
X2
138 9. Klassifikation und Mustererkennung<br />
jeder Dimension, sondern nur nach jeder zweiten oder dritten durchführt,<br />
aber ein Zeitgewinn von mehr als etwa 10% bis 20% ist nur selten möglich.<br />
Viel mehr Zeit kann eingespart werden, wenn man die Zahl der in Betracht<br />
zu ziehenden Referenzvektoren deutlich reduziert. Das im allgemeinen<br />
hierfür geeignetste Verfahren ist das Bucket Voronoi Intersection Verfahren,<br />
ursprünglich eingeführt in [?], später für die Spracherkennung eingesetzt in<br />
[?]. Die Idee hierbei ist es, den Merkmalsraum hierarchisch zu unterteilen,<br />
zum Beispiel zu halbieren und so die in Frage kommenden Referenzvektoren<br />
im Idealfall mit n Merkmalsraumunterteilungen auf nur noch O(log n) Stück<br />
zu reduzieren.<br />
Wählt man als Unterteilung des Merkmalsraums eine einfache zu einer<br />
Koordinatenachse xj senkrechte Hyperebene H : xj = t, dann genügt es,<br />
einen einzigen Vergleich (vi < t) zweier reeller Zahlen durchzuführen, um<br />
zu entscheiden, auf welcher Seite der Hyperebene ein zu klassifizierender<br />
Testvektor V = (v1, . . . vd) liegt. Allerdings ist es jetzt nicht korrekt, für<br />
den Rest der Nächste-Nachbar-Suche nur noch diejenigen Referenzvektoren<br />
zu betrachten, die auf der selben Seite der Hyperebene liegen wie der<br />
Testvektor. Statt dessen müssen zusätzlich alle Referenzvektoren, deren<br />
Voronoi-Regionen auch nur zum Teil auf der Seite des Testvektors liegen,<br />
auch betrachtet werden. Glücklicherweise ist das Feststellen, ob die Voronoi-<br />
Region eine Hyperebene schneidet, relativ schnell (in logarithmischer Zeit<br />
bezüglich der Anzahl der Referenzvektoren) machbar.<br />
Der Bucket Voronoi Intersection Algorithmus ist in Abb. 9.8 illustriert.<br />
Im vorliegenden Beispiel wird der Merkmalsraum zuoberst von der Trennhyperebene<br />
A zerteilt, die linke ” Hälfte“ wird durch B und die rechte<br />
durch C abermals unterteilt. Um einen möglichst nahe am Logarithmus<br />
liegenden Unterteilungsfaktor zu erreichen, ist es sinnvoll, im voraus diese<br />
Trennhyperbenen so zu wählen, daß möglichst wenige Voronoi-Regionen<br />
durch sie zerschnitten werden. Auch wenn diese Prüfung etwas Zeit kostet,<br />
so ist dies nicht weiter problematisch, denn es genügt, dies für jede Ebene<br />
ein einziges Mal zu machen. Dies kann ” im voraus“ berechnet werden,<br />
und kostet während der Klassifikation keine Zeit mehr. So entsteht also<br />
eine komplette Baumstruktur. Jeder Baumknoten repräsentiert eine<br />
Trenhyperebene, und die Klassifikation, beziehungsweise das Finden des<br />
nächsten Referenzvektors, besteht aus den Abstieg in diesem Baum, wobei<br />
jeder Abstiegsschritt jeweils nur ein einziger reellwertiger Vergleich ist. Der<br />
Idealfall, daß keine Voronoi-Region durch eine Hyperebene zerschnitten wird<br />
kommt im allgemeinen so gut wie nie vor. In der Praxis ist es sogar so, daß<br />
es bei sehr hochdimensionalen Räumen völlig impraktikabel ist, den Baum<br />
so tief durchzusuchen, bis für jedes Blatt nur noch ein Referenzvektor übrig<br />
bleibt. Daher beendet man die Konstruktion des Baumes nach einer zuvor
B<br />
A<br />
A<br />
B C<br />
Abb. 9.8. Das Bucket-Voronoi-Intersection Verfahren<br />
9.1 Klassifikatoren 139<br />
C
140 9. Klassifikation und Mustererkennung<br />
festgelegten Tiefe und ist damit zufrieden, daß in jedem Baumblatt dann<br />
noch einige wenige Referenzvektoren aufgelistet sind, zu denen es dann gilt,<br />
Distanzen zu berechnen.<br />
In [?] [?] konnte mit Hilfe des Bucket-Voronoi-Intersection Verfahrens<br />
eine Reduktion des Aufwandes zum Finden des nächsten Referenzvektors<br />
um 50% bis 80% erreicht werden. In [?] wird eine Erweiterung<br />
des Verfahrens von der einfachen Nächste-Nachbar-Suche auf die approximative<br />
Auswertung von Gauß-Mischverteilungen (s. Abs. 9.1.8) vorgestellt.<br />
9.1.7 Bayes Klassifikator<br />
Die zentrale Idee hinter dem Bayes Klassifikator besteht darin, daß für jede<br />
Klasse C ein Modell definiert wird, das die klassenbedingten Wahrscheinlichkeiten<br />
P(x|C) berechnet. Die Bayes Regel besagt nun:<br />
P(C|x) =<br />
P(x|C) · P(C)<br />
P(x)<br />
Entsprechend 9.1 wird nun x der Klasse C ∗ zugeordnet mit<br />
C ∗ = argmaxP(C|x)<br />
C<br />
(9.5)<br />
P(x|C) · P(C)<br />
= argmax<br />
C P(x)<br />
= argmaxP(x|C)<br />
· P(C) (9.6)<br />
C<br />
Ein Bayes-Klassifikator kann also die A-Priori-Verteilung der Merkmale<br />
ignorieren und arbeitet wie in Abb. 9.9 dargestellt.<br />
9.1.8 Gaußklassifikatoren<br />
Viele natürliche Zufallsprozesse produzieren normalverteilte Beobachtungen.<br />
Normalverteilungen werden auch Gauß-Verteilungen genannt, sie haben einige<br />
angenehme mathematische Eigenschaften, weshalb sie gerne als Standard<br />
Modelle verwendet werden, wenn kein Wissen über die tatsächliche Verteilung<br />
der zu modellierenden Daten vorhanden ist. Wenn eine einzelne Zufallsvariable<br />
x normalverteilt ist, dann läßt sich die Wahrscheinlichkeitsdichte für ihre<br />
Beobachtung angeben als:<br />
p(x) =<br />
1<br />
√<br />
2πσ2 e−1<br />
(x − µ)<br />
2<br />
2<br />
σ2 (9.7)
K1<br />
p(x|2)<br />
x<br />
K2<br />
max<br />
p(2)<br />
.<br />
p(x|n)<br />
Kn<br />
p(x|1)<br />
p(2)<br />
p(n)<br />
Abb. 9.9. Funktionsweise eines Bayes-Klassifikators<br />
t=1<br />
9.1 Klassifikatoren 141<br />
argmax i p(C|x)<br />
wobei µ der Erwartungswert (das erste Moment) der Verteilung ist, und<br />
σ2 die Varianz (das zweite Moment, definiert mit Hilfe des Erwartungswertes<br />
gemäß σ2 = E(x2 ) − E 2 (x)). Wenn Zum Schätzen dieser Parameter die Trainingsmuster<br />
x1, x2, . . . xT verwendet werden, so ergibt sich als bester Schätzwert<br />
ˆµ = 1<br />
⊤<br />
xt und ˆσ<br />
n<br />
2 = 1<br />
⊤<br />
(xt − ˆµ)<br />
n<br />
2<br />
(9.8)<br />
Da in der Praxis das Gesetz der großen Zahl so gut wie niemals dazu<br />
führt, daß die geschätzten Parameter (Mittelwert) den Verteilungseigenschaften<br />
(Erwartungswert) exakt gleichen, und da diese Unterscheidung<br />
auch nur von theoretischer Bedeutung ist, werden sie im folgenden auch<br />
nicht mehr unterschieden, und wir schreiben einfach µ unabhängig davon,<br />
ob µ oder ˆµ gemeint ist.<br />
Sehr viele Klassifikationsaufgaben, und dazu gehört insbesondere die<br />
Spracherkennung, haben hochdimensionale Merkmalsräume. Mehrdimensionale<br />
Normalverteilungen werden auch multivariate Normalverteilungen genannt.<br />
In diesem Fall besteht eine Beobachtung aus einem d-dimensionalen<br />
Spaltenvektor xi = (xi1, xi2, . . .xid) ⊤ , und die Verteilung berechnet sich als:<br />
p(x) =<br />
t=1<br />
1<br />
e<br />
(2π) d |Σ| −1<br />
2 (x − µ)⊤Σ −1 (x − µ)<br />
(9.9)<br />
wobei µ hier der d-dimensionale Mittelwertsvektor und Σ die Kovarianzmatrix<br />
ist und geschätzt wird gemäß:<br />
µ = 1<br />
n<br />
⊤<br />
t=1<br />
xt und Σ = 1<br />
n<br />
⊤<br />
(xt − µ) · (xt − µ) ⊤ (9.10)<br />
t=1
142 9. Klassifikation und Mustererkennung<br />
Experiment 9.2: Multivariate Normalverteilungen<br />
Starten Sie das Applet ” One Gaussian“. Auf der Oberfläche sehen Sie<br />
die Darstellung einer zweidimensionalen Normalverteilung (Gaußglocke).<br />
Am oberen Rand können sie in den Eingabefeldern die Parameter dieser<br />
Verteilung eingeben.<br />
Verändern sie die x- und y-Koordinaten der Mittelwerte, und beobachten<br />
Sie, wie sich die Darstellung ändert.<br />
Durch ändern des Kovarianzwertes a können sie die Ausdehnung der Gaußglocke<br />
in x-Richtung ändern. Der Wert von d beeinflußt die Ausdehnung in<br />
y-Richtung.<br />
Beachten Sie, daß Sie nicht beliebige Werte eingeben können, da die<br />
Determinante der Kovarianzmatrix immer größer als 0 sein muß.<br />
Wenn die Ausdehnungen in x- und y-Richtung verschieden sind, dann kann<br />
die Gaußglocke durch ändern des Wertes c rotiert werden. Probieren Sie<br />
auch hier verschiedene Einstellungen aus.<br />
Gauß-Mischverteilungen<br />
Die in der Spracherkennung am häufigsten verwendeten parametrischen<br />
Schätzer sind Gauß-Mischverteilungen. Eine einzelne multivariate Gauß-<br />
Verteilung – auch Normalverteilung genannt – hat die Form:<br />
Nµ,Σ(x) =<br />
1<br />
e<br />
2πd |Σ| −1<br />
2 · (x − µ)TΣ −1 (x − µ)<br />
(9.11)<br />
Bei der Gauß-Mischverteilung wird die Wahrscheinlichkeit dafür, daß eine<br />
Beobachtung x zur Klasse j gehört, berechnet als gewichtete Summe mehrerer<br />
einzelner multivariater Gauß-Verteilungen:<br />
kj <br />
Nj(x) =<br />
i=1<br />
cji<br />
1<br />
<br />
2πd |Σji| e−12<br />
· (x − µji) T Σ −1<br />
ji (x − µji)<br />
(9.12)
9.1 Klassifikatoren 143<br />
Hierbei ist µji der Mittelwert der i-ten Gauß-Verteilung der Klasse j,<br />
Σji die Kovarianzmatrix der i-ten Gauß-Verteilung der Klasse j und kj die<br />
Anzahl der Gauß-Verteilungen mit Hilfe derer die Klasse j modelliert wird.<br />
Experiment 9.3: Gauß-Mischverteilungen<br />
Starten Sie das Applet ” Gaussian Mixture“. Auf der Oberfläche sehen<br />
Sie die Darstellung einer zweidimensionalen Mischverteilung von vier<br />
Gaußglocken. Am oberen Rand können sie in den Eingabefeldern die Parameter<br />
der einzelnen Gauß-Verteilungen sowie die Mixturgewichte eingeben.<br />
Verändern sie zunächst die Mixturgewichte, und beobachten Sie, wie sich die<br />
Höhe einer einzelenen Gaußglocke ändert.<br />
Versuchen Sie durch Einstellen der passenden Parameter eine Mischverteilung<br />
zu erzeugen, die die Form des Buchstabens U hat.<br />
Es leuchten ein – und kann es auch beweisen – daß jede sinnvolle Verteilung<br />
durch die gewichtete Summer einer ausreichend großen Zahl einzelner<br />
Gauß-Verteilungen beliebig genau angenähert werden kann. Wenn also<br />
Gauß-Mischverteilungen verwendet werden, dann kann davon ausgegangen<br />
werden, daß das Modell auf jeden Fall ausreichend mächtig gestaltet werden<br />
kann. Allerdings erweist es sich in der Praxis, daß kaum jemals genügend<br />
Trainingsdaten vorliegen, um eine große Mischverteilung gut zu schätzen.<br />
Laplace-Mischverteilungen<br />
Manche Erkenner (zum Beispiel [?]) verwenden statt Gauß-Mischverteilungen<br />
die numerisch etwas einfacheren Laplace-Mischverteilungen, bei denen die<br />
rechenaufwendigen Exponentiationen entfallen.<br />
kj <br />
Lj(x) =<br />
i=1<br />
cji<br />
1<br />
d<br />
k=1 2λijk<br />
−<br />
· e<br />
d |xk − µijk|<br />
k=1<br />
λijk<br />
(9.13)<br />
Statt einer Kovarianzmatrix werden hier Werte λijk zur Modellierung<br />
der Streuung der Muster der j-ten Laplace-Verteilung des i-ten Modells<br />
in der k-ten Dimension des Merkmalsraumes verwendet. Hierbei wird<br />
eine Unabhängigkeit (nur Varianzen, keine Kovarianzen) der einzelnen<br />
Dimensionen angenommen. Da man auch mit ausreichend vielen Laplace-<br />
Verteilungen eine beliebge reale Verteilung annähern kann, unterscheiden
144 9. Klassifikation und Mustererkennung<br />
sich die beiden Ansätze Gauß- und Laplace-Verteilungen qualitativ kaum.<br />
Wenn im logarithmischen Bereich gerechnet wird, und der Logarithmus<br />
des von der Beobachtung unabhängigen Vorfaktors 1/ (2π) d |Σ| im voraus<br />
berechnet wird, dann besteht auch im Falle der Gauß-Mischverteilungen<br />
die Berechnung der Wahrscheinlichkeit lediglich aus Multiplikationen und<br />
Additionen.<br />
9.2 Der Expectation Maximization Algorithmus<br />
Für das Schätzen der Parameter einer Gauß-Mischverteilung mittels Maximum<br />
Likelihood ist keine analytische Lösung bekannt. Das Problem<br />
liegt darin, daß zwar für eine gegebene Zuordnung von Trainingsmustern<br />
zu Referenzvektoren für jeden Referenzvektor mittels üblicher Maximum-<br />
Likelohood Verfahren das globale Optimum für die Parameter der einzelnen<br />
Gauß-Verteilungen sowie die optimalen Mixturgewichte zu bestimmen<br />
sind. Bei unüberwachtem Lernen ist aber eine solche Zuordnung nicht<br />
gegeben. Statt dessen wird die Zuordnung automatisch berechnet, indem<br />
jeder Trainingsvektor zu jedem Referenzvektor proportional zum Anteil<br />
des Referenzvektorbeitrags zur Gesamtwahrscheinlichkeit zugeordnet wird.<br />
Diese hängt aber wiederum von den Gauß-Parametern ab.<br />
Da eine simultane Optimierung sowohl der Gauß-Parameter und der<br />
Trainingsdatenzuordnung nicht möglich ist, bietet sich ein iteratives Verfahren<br />
an, bei dem in jeder Iteration die eine Parametermenge in Abhängigkeit<br />
von der Einstellung der anderen Parametermenge der vorigen Iteration<br />
optimiert wird. Im Detail sieht dies aus wie folgt:<br />
Bezeichne γtk := E[xt ∈ k], den Erwartungswert dafür, daß der Beispielvektor<br />
xt ∈ R d (aus der Trainingsmenge x1, x2, . . . xT) zu Klasse k, also<br />
zum k-ten Referenzvektor gehört. Somit ist γtk die gewichtete Zuordnung des<br />
Beispielvektors xt zum k-ten Referenzvektor. Wenn µk der k-te Mittelwertsvektor<br />
ist, Σk die Kovarianzmatrix der k-ten Gauß-Verteilung ist und ck das<br />
entsprechende Mixturgewicht ist, dann werden diese Werte ersetzt durch:<br />
¯ck = 1<br />
T<br />
¯µk =<br />
¯Σk =<br />
⊤<br />
t=1<br />
1<br />
<br />
t γtk<br />
γtk<br />
1<br />
<br />
t γtk<br />
⊤<br />
t1<br />
γtkxt<br />
⊤<br />
γtk(xt − µk)(xt − µk) T<br />
t1<br />
(9.14)<br />
(9.15)<br />
(9.16)
Dabei wird γtk geschätzt als<br />
γtk = ck · Nk(xt)<br />
<br />
j cjNj(xt)<br />
9.3 Diskriminanzoptimierung 145<br />
(9.17)<br />
Dieser iterative Optimierungsalgorithmus wird Expectation Maximization<br />
Algorithmus (EM-Algorithmus) genannt.<br />
9.3 Diskriminanzoptimierung<br />
Allein schon bei der Betrachtung des unverarbeiteten Zeitsignals wird klar,<br />
daß es sehr viel Information enthält, die für die Unterscheidung verschiedener<br />
Laute nicht von Bedeutung sind. Bei vielen Klassifikationsaufgaben ist es<br />
daher sinnvoll, den verwendeten Merkmalsraum so zu transformieren, daß<br />
diejenigen Eigenschaften der Muster, die zur Diskriminierung verschiedener<br />
Klassen stärker beitragen können, auch stärker berücksichtigt werden. Im<br />
folgenden werden wir zwei Transformationen betrachten, die eine Optimierung<br />
der Diskriminanzeigenschaften des Merkmalsraums zum Ziel haben:<br />
Die einfache Hauptachsentransformation und die etwas aufwendigere lineare<br />
Diskriminanzanalyse (LDA), oft auch als Karhunen/Leuve Transformation<br />
bekannt.<br />
9.3.1 Hauptachsentransformation und Lineare<br />
Diskriminanzanalyse<br />
Die Hauptachsentransformation (HAT) wird oft auch Karhunen-Loeve-<br />
Transformation (KLT) oder im Englischen principal component analysis<br />
(PCA) genannt. Sie hat zum Zweck einen n-dimensionalen Merkmalsraum<br />
so in einen m < n-dimensionalen zu transformieren, daß der entstehende<br />
quadratische Fehler minimal wird. Unter günstigen Umständen (wie in Abb.<br />
9.10 mit n = 2, m = 1) können zwei Klassen nach der Transformation immer<br />
noch problemlos getrennt werden.<br />
Wie gut eine Klassentrennung (Diskriminanz) Diskriminanzanalyse<br />
möglich ist, spielt bei der Hauptachsentransformation keine Rolle. Sie<br />
berücksichtigt weder die Zahl der Klassen, noch deren einzelne Verteilungen.<br />
Die lineare Diskriminanzanalyse (LDA) beruht auf der Idee der Erweiterung<br />
der Hauptachsentransformation auf sehr viele Klassen [?]. Abb. 9.11 zeigt<br />
die (praktisch nicht erreichbare) Idealvorstellung einer LDA. Dabei wird<br />
eine lineare Transformation des Merkmalsraums gesucht, die – wenn auf alle<br />
Mustervektoren angewandt – dazu führt, daß die einzelnen Klassen einer
146 9. Klassifikation und Mustererkennung<br />
Abb. 9.10. Veranschaulichung der Hauptachsentransformation<br />
Klassifikationsaufgabe besser getrennt werden. Im nicht transformierten<br />
Raum (links) sind die Trennlinien viel schwerer zu lernen als im transformierten<br />
Raum (rechts).<br />
Allgemein läßt sich das Ziel einer LDA-Transformation wie folgt definieren:<br />
Seien k Klassen gegeben. Bezeichne µi denn Mittelwert aller Muster x (i)<br />
j ,<br />
die zur Klasse i gehören, und Wi die Streumatrix der Klasse i (within scatter).<br />
µ sei der Mittelwert aller Muster und T die Streumatrix aller Klassen (total<br />
scatter). Die durchschnittliche Streuung W sei der mit den Klassengrößen ni<br />
gewichtete Mittelwert aller Wi, also:<br />
Wi = 1<br />
ni <br />
ni<br />
j=1<br />
(x (i)<br />
j − µi) · (x (i) ⊤<br />
j − µi)<br />
k ni<br />
W =<br />
n<br />
i=1<br />
Wi,<br />
k<br />
mit n =<br />
i<br />
T = 1 <br />
N(xj − µ) · (xj − µ)<br />
n<br />
⊤<br />
j=1<br />
ni<br />
(9.18)<br />
(9.19)<br />
(9.20)<br />
Gesucht ist nun eine lineare Transformation A, die dazu führt, daß die<br />
Klassen möglichst weit voneinander weg liegen und jede Klasse möglichst<br />
kompakt ist, d.h. daß die Beispiele einer Klasse möglichst nahe beieinander<br />
liegen. Formal heißt das, wir suchen:<br />
Ā = argmax<br />
A<br />
|TA|<br />
|WA|<br />
= argmax<br />
A<br />
|TA · W −1<br />
A | (9.21)
9.3 Diskriminanzoptimierung 147<br />
wobei TA die Gesamtstreumatrix und WA die gemittelte Klassenstreumatrix<br />
nach Anwenden der Transformation A sind.<br />
Dieses Optimierungsproblem läßt sich mit Hilfe einer simultanen Diagonalisierung<br />
[?] lösen. Die gesuchte Matrix A ergibt sich demnach als die<br />
Matrix der Eigenvektoren von TW −1 , absteigend sortiert nach der Größe der<br />
dazugehörigen Eigenwerte:<br />
A = (φ1φ2 · · · φd) (9.22)<br />
wobei d die Dimensionalität des Merkmalsraums ist und φi der i-te Eigenvektor<br />
von TW −1 .<br />
Abb. 9.11. Idealvorstellung der Wirkung einer LDA-Transformation<br />
Nach dem Erfolg der linearen Diskriminanzanalyse in der Spracherkennung<br />
wurden einige Versuche unternommen, auch nichtlineare Varianten<br />
zu verwenden [?]. Während die analytische Optimierung der Parameter<br />
einer linearen Transformation noch zu bewerkstelligen ist, ist dies für<br />
beliebige Transformation in der Regel nicht möglich. Die naheliegende<br />
Vorgehensweise bei der Suche nach einer guten nichtlinearen Transformation<br />
ist die Verwendung von neuronalen Netzen. Man kann zeigen, daß die<br />
Transformation, die ein Perzeptron mit einer verborgenen Schicht, das<br />
als Klassifikator trainiert wird und eine lineare Übertragungsfunktion<br />
verwendet, genau eine Hauptachsentransformation lernt. Die Gewichte<br />
der verborgenen Schicht – betrachtet als Matrix – sind die Koeffizienten<br />
der HAT-Matrix. Nur das Ersetzen der linearen Übertragungsfunktion<br />
durch eine nichtlineare (z.B. Stufenfunktion oder Sinoid) ändert an der<br />
Qualität der Transformation nur wenig. Es ist aber möglich, die Optimierungsfunktion<br />
an die Diskriminanzfunktion der LDA (|T ·W −1 |) anzunähern.<br />
Das Verfahren der ” moving targets“ beginnt mit einem Neuronalen Netz,<br />
das eine Identitätsabbildung oder eine zufällige Abbildung durchführt. Die
148 9. Klassifikation und Mustererkennung<br />
zurückzupropagierenden Fehler werden erst dann auf Basis der Ausgabe des<br />
Netzes berechnet, indem die Bilder aller Elemente einer Klasse als in die<br />
Richtung des Mittelwerts der Klasse zu verschieben sind. Zusätzlich wird zum<br />
Fehlervektor ein Vielfaches des Vektors addiert, der den Klassenmittelwert<br />
vom Mittelwert aller Klassen entfernt. Wenn N(x) die Ausgabe des Netzes<br />
für den Vektor x ist, und C(x) die Klasse ist, zu der x gehört, dann berechnet<br />
sich der Fehler E(x) wie:<br />
E(x) = N(x) − αµW(x) − βµT<br />
(9.23)<br />
µW = 1/|C| <br />
N(y) (9.24)<br />
y∈C(x)<br />
µT = 1/n <br />
N(y) (9.25)<br />
y<br />
wobei n die Zahl aller Trainingsmuster ist.<br />
αµW<br />
βµT<br />
Abb. 9.12. Fehlerbestimmung bei der ” moving targets“ Methode<br />
In [?] konnte mit Hilfe der reinen analytischen LDA die Fehlerrate eines<br />
Diktiererkenners im kontextunabhängigen Fall von 24% auf 13% und um<br />
kontextabhängigen Fall von 13% auf 10% gesenkt werden. Die konnektionistische<br />
Variante konnte zwar die Erkennungsleistung nicht noch weiter<br />
steigern, jedoch die Optimierungsfunktion |TA|/|WA| besser optimieren. Die<br />
LDA gehört damit zu den Beiträgen, die die Qualität der Spracherkennung<br />
relativ stark verbessert haben. Allerdings sollte auch angemerkt werden, daß<br />
sich die Gewinne mit den Gewinnen anderer hilfreicher Algorithmen, wie<br />
Signaladaption (s. Kap. 21), Mittelwertssubtraktion, Vokaltraktlängennormierung<br />
(s. Abs. 21.5.5) nicht additiv verhalten.<br />
9.3.2 Dimensionalitätsreduktion<br />
Es ist bekannt, daß durch eine (deterministische) Transformation egal<br />
welcher Art keine Informationen gewonnen werden können, die nicht schon
9.3 Diskriminanzoptimierung 149<br />
im Ursprungsmuster enthalten sind [?]. Allerdings ist auch offensichtlich,<br />
daß nicht alle Information in einem Sprachsignal für die Erkennung von Bedeutung<br />
ist. Und selbst die wichtige kommt meist redundant vor. Bevor ein<br />
Spracherkenner oder ein Klassifikator ein Muster zur Erkennung bekommt,<br />
wird dieses aus dem Ursprungssignal durch verschiedene Informationsreduktionsschritte<br />
gewonnen. Dabei spielen sowohl wissensbasierte als auch<br />
stochastische beziehungsweise datengetriebene Verfahren eine Rolle. So wird<br />
zum Beispiel zuerst basieren auf dem Wissen, daß die Phaseninformation<br />
unbedeutend ist, diese bei der Transformation des Signals vom Zeitbereich<br />
in den Frequenzbereich ignoriert. Später werden die einzelnen Frequenzbereichskoeffizienten<br />
zu wenigen Filterbankkoeffizienten zusammengefaßt. Die<br />
Art der Zusammenfassung ist zumindest teilweise datengetrieben, indem sie<br />
sich an den Definitionen der Mel- oder Bark-Skalen orientiert. In der Erwartung,<br />
daß selbst bei den Filterbankkoeffizienten immer noch redundante<br />
Information steckt, insbesondere dann, wenn mehrere aufeinanderfolgende<br />
Vektoren zusammen betrachtetet werden, und mit dem Wissen, daß ein<br />
kleiner dimensionierter Merkmalsraum die Klassifikationsaufgabe erleichtern<br />
und den Parameterraum verkleinern kann, hat es durchaus Sinn, auch nach<br />
der Filterbankberechnung eine weitere Reduktion des Informationsgehalts<br />
durchzuführen.<br />
Einige Arbeiten versuchen die Dimensionalität des Merkmalsraums<br />
durch Auswahl bestimmter Dimensionen zu reduzieren. Wesentlich mehr<br />
Freiheiten hat man allerdings wenn man eine LDA anwendet. Betrachtet<br />
man die LDA-Transformationsmatrix A, so steht in der i-ten Spalte der<br />
Eigenvektor des der Größe nach i-ten Eigenwertes, also der Eigenvektor des<br />
größten Eigenwertes in der ersten Spalte und derjenige mit dem kleinsten<br />
Eigenwert in der letzten Spalte.<br />
Offensichtlich sind diejenigen Dimensionen des transformierten Merkmalsraumes,<br />
die eine sehr kleinen Eigenwert haben für die Klassifikation<br />
eher unwichtig, so daß statt der Transformation A die dimensionsreduzierte<br />
Transformation A ′ verwendet werden kann, ohne daß dadurch große Nachteile<br />
für die Klassifikation befürchtet werden müssen.<br />
⎛ ⎞<br />
a11 · · · a1n<br />
⎜<br />
A = ⎝<br />
.<br />
. ..<br />
⎟<br />
. ⎠ A ′ ⎛ ⎞<br />
a11 · · · a1d<br />
⎜<br />
= ⎝<br />
.<br />
. ..<br />
⎟<br />
. ⎠ (9.26)<br />
an1 · · · ann<br />
an1 · · · and<br />
Im Falle der nichtlinearen Transformation mit künstlichen neuronalen<br />
Netzen läßt sich die Reduktion der Dimensionalität des Zielmerkmalsraumes<br />
gleichzeitig mit der Berechnung der Transformationsfunktion durchführen,<br />
indem einfach die Zahl der Ausgabeneuronen reduziert wird. Allerdings ist es<br />
dann nicht mehr so einfach möglich, anhand der Eigenwerte zu entscheiden,
150 9. Klassifikation und Mustererkennung<br />
wie viele und welche Dimensionen erhalten bleiben sollen.<br />
Ein Nachteil der LDA besteht darin, daß alle Informationen über die<br />
Klassen in nur zwei Streumatrizen steckt. Dadurch werden die individuellen<br />
Verteilungen für einzelne Klassen nicht berücksichtigt. Verschiedene Ansätze<br />
versuchen die LDA dahingehend zu erweitern, daß diese Informationen beim<br />
Bestimmen der Transformation berücksichtigt werden (zum Beispiel [?] [?]).
10. Erkennung statischer Sprachsignale<br />
In diesem Kapitel werden wir einen ersten funktionierenden Spracherkenner<br />
zusammenstellen. Er wird aber nur sehr eingeschränkt einsetzbar sein. Basierend<br />
auf den Erkenntnissen aus den vorausgegangenen Kapiteln werden<br />
wir Sprachsignale verarbeiten und auf die so gefundenen Eigenschaften der<br />
Signale Klassifikationsalgorithmen anwenden.<br />
10.1 Zeitsignalbasierte Erkennung<br />
Versuchen wir zunächst einmal Merkmale des Zeitsignals selbst zu untersuchen.<br />
Betrachten wir die Wellenform einer Sprachaufnahme, so fällt als<br />
erstes auf, daß die auf den Amplituden bestimmte Einhüllende in etwa die<br />
Silbenstruktur der Äußerung widerspiegelt. Zweifellos scheint der Versuch,<br />
größere Vokabulare anhand der Einhüllenden zu erkennen, aussichtslos.<br />
Denkbar wäre höchstens ein Erkenner, der zum Beispiel zwei oder drei<br />
Wörter unterscheiden soll, die alle unterschiedlich viele Silben haben.<br />
Im folgenden werden einige Möglichkeiten der Untersuchung des reinen<br />
Zeitsignals veleuchtet.<br />
10.1.1 Endpunktdetektion<br />
Im Sprachaufnahmeapplet wird der Beginn und das Ende einer Sprachaufnahme<br />
durch Drücken eines Aufnahmeknopfes festgelegt. In vielen Situationen<br />
ist die Verwendung eines solchen Knopfes jedoch nicht wünschenswert. Zum<br />
einen sind das Situationen, in denen man die Hände frei haben möchte, um<br />
mit ihnen andere Aufgaben zu erledigen, und zum anderen solche Fälle, in<br />
denen das Anbringen solcher Knöpfe unpassend ist, wie zum Beispiel bei<br />
einem Münzfernsprecher.<br />
Abgesehen davon, daß die ständige Betätigung eines Knopfes für den<br />
Benutzer lästig ist und dem eigentlichen Ziel der maschinellen Sprachkommunikation,<br />
nämlich der Steigerung der Ergonomie der <strong>Mensch</strong>-<strong>Maschine</strong>-<br />
Schnittstelle, entgegensteht, stellen solche Knöpfe auch Fehlerquellen dar.
152 10. Erkennung statischer Sprachsignale<br />
Jeder, der schon mal Walkie-Talkies oder CB-Funk Geräte benutzt hat, hat<br />
den ein oder anderen Fall erlebt, daß der Sprecher den Sendeknopf mitten<br />
in der ersten gesprochenen Silbe betätigt und mitten oder kurz vor der<br />
letzten Silbe schon wieder losläßt, so daß der Anfang und das Ende des<br />
Gesprochenen abgeschnitten werden.<br />
Aus Erfahrung mit Vorführungen von Spracherkennungssystemen wissen<br />
wir außerdem, daß unerfahrene Benutzer sich unsicher sind über die korrekte<br />
Bedienung eines Aufnahmeknopfes. Das fängt an mit der Frage, ob der<br />
Knopf nur einmal kurz gedrückt werden soll oder ob er während der<br />
gesamten Aufnahme gedrückt bleiben soll, und reicht bis zu Personen, die<br />
den Knopf für jedes Wort, das sie sprechen, einzeln kurz antippen. Bei<br />
solchen Problemen hilft auch möglicherweise vorhandenes Feedback in Form<br />
eines akustischen Start-/Stoppsignals oder eines visuellen hervorgehobenen<br />
Ohres nicht viel.<br />
Teilweise ist es problematisch, auf Aufnahmegrenzen zu verzichten und<br />
den Erkenner ununterbrochen laufen zu lassen. Dies ist deshalb nicht immer<br />
angebracht, weil die durchschnittliche Erkennung dann höchstens in Echtzeit<br />
oder noch schneller ablaufen müßte. Nicht jede Erkennungsaufgabe kann so<br />
schnell mit ausreichender Erkennungsgenauigkeit ablaufen. Außerdem stellt<br />
es eine große Ressourcenverschwendung dar, wenn ganze Computer ständig<br />
damit beschäftigt sind, Sprache zu erkennen, obwohl nur einen Bruchteil der<br />
Zeit wirklich Sprache vorliegt.<br />
Wünschenswert wäre es, wenn auf das Bestimmen der Aufnahmegrenzen<br />
durch den Benutzer ganz verzichtet werden könnte. Das Sprachverarbeitungssystem<br />
sollte selbständig erkennen, wann die aufgezeichnete Wellenform<br />
Sprache darstellt und wann nicht. Die naheliegendste Vorgehensweise ist<br />
ein einfacher Schwellwertdetektor, der immer dann, wenn die Energie des<br />
Signals über einem Schwellwert liegt, diesen Bereich der Aufnahme dem<br />
Spracherkenner zur Erkennung gibt. Dabei wird die Energie des Signals<br />
über einen bestimmten Zeitraum gemessen (typischerweise 10 bis 100 Millisekunden).<br />
Diese Meßwerte bilden eine zeitliche Folge. Um zu vermeiden,<br />
daß der Sprachdetektor anspringt, wenn nur eine kurzzeitige Überschreitung<br />
des Schwellwertes – z.B. durch Störgeräusche – verzeichnet wird, kann die<br />
Entscheidung ” Sprache liegt vor“ auch erst dann getroffen werden, wenn<br />
eine ausreichend große Zahl an aufeinanderfolgenden Meßwerten über dem<br />
Schwellwert liegt. Entsprechend wird das kurzzeitige Unterbrechen der Sprache<br />
durch kurze Niedrigenergiephasen verhindert, indem das System erlaubt,<br />
daß einige wenige Meßwerte unterhalb des Schwellwertes akzeptiert werden,<br />
ohne daß die Hochenergiephase als beendet angesehen wird. Solche kurzen<br />
Unterbrechungen könnten zwar auch durch Störungen im Aufnahmeapparat<br />
verursacht werden, viel eher aber kommen sie von den Pausen beim Spre-
10.1 Zeitsignalbasierte Erkennung 153<br />
chen. Nicht nur zwischen einzelnen Wörtern werden Sprechpausen gemacht,<br />
oft sogar innerhalb eines Wortes. Und oft handelt es sich bei kurzzeitigen<br />
Niedrigenergiephasen auch nicht um explizite Sprechpausen sondern um<br />
leises Sprechen oder auch um die Artikulation von etwas länger anhaltenden<br />
Konsonanten oder Konsonantenfolgen, die in der Regel wesentlich weniger<br />
Energie haben als Vokale.<br />
In Abb. 10.1 ist der Verlauf der Signalenergie über die Zeit dargestellt<br />
und der Bereich, der vom Sprachdetektor als Sprache erkannt würde grau<br />
unterlegt. Eine kleine Spitze über dem Schwellwert und eine kurze Phase<br />
darunter ändern nichts am aktuellen Zustand.<br />
Abb. 10.1. Energiebasierter Sprachdetektor mit Schwellwertvergleich<br />
Wir können also einen derartigen auf Messung der Signalenergie basierenden<br />
Sprachdetektor durch ein Zustandsautomaten darstellen.<br />
In Abb. 10.2 ist ein solcher Zustandsautomat dargestellt. Nach jeder<br />
Energiemessung findet ein Zustandsübergang statt. Wenn die Energie<br />
über dem Schwellwert liegt, wird jeweils der mit ⊕ markierte Übergang<br />
genommen, im anderen Fall der mit ⊖ markierte.<br />
Natürlich kann in der Praxis ein solcher Automat beliebig verfeinert<br />
werden. So können (und sollten meist auch) für verschiedene Übergänge<br />
verschiedene Schwellwerte verwendet werden. Auch die Zahl der Zwischenzustände,<br />
in denen ein Sprache/Nichtsprachewechsel antizipiert wird (die<br />
Werte u und v in Abb. 10.2) können variiert werden.<br />
Die Einstellung des Schwellwertes erfolgt bei solchen Detektoren meist<br />
empirisch. Es werden einige Aufnahmen gemacht und die Energie gemessen.<br />
Daraufhin entscheidet der Bediener, welcher Schwellwert sinnvoll ist. Besser<br />
ist eine automatische Einstellung, entweder mit Hilfe eines genormten<br />
Signalgebers oder adaptiv mit Hilfe der vom Spracherkenner gelieferten<br />
Erkennungshypothesen. Man kann erwarten, daß ein einigermaßen gut<br />
funktionierender Erkenner zumindest ausreichend genau Stille von Sprache<br />
unterscheiden kann, um damit einen initialen Schwellwert zu bestimmen,
154 10. Erkennung statischer Sprachsignale<br />
Stille<br />
1 mal über Schwellwert<br />
2 mal über Schwellwert<br />
v mal über Schwellwert<br />
1 mal unter Schwellwert<br />
2 mal unter Schwellwert<br />
u mal unter Schwellwert<br />
Abb. 10.2. Sprachdetektor als Zustandsautomat<br />
Sprache<br />
der dann schrittweise mit jeder neuen Aufnahme angepaßt und so verbessert<br />
werden kann.<br />
Für sehr viele Anwendungen, vor allem in wenig störgeräuschbehafteter<br />
Umgebung, funktioniert ein einfacher Zustandsautomat ausreichend gut.<br />
Manchmal kann es jedoch vorkommen, daß das Hintergrundrauschen oder<br />
die Umgebungsgeräusche so stark sind, daß ein sinnvoller Schwellwert kaum<br />
zu finden ist. In solchen Fällen empfiehlt es sich, weitere Merkmale außer der<br />
Signalenergie zur Sprachdetektion zu verwenden. Um Sprache von Rauschen<br />
zu unterscheiden bietet sich zum Beispiel die Nulldurchgangsrate an. In der<br />
Annahme, daß das Signal ohne Sprache sich im Idealfall um den Wert Null<br />
herumbewegt und im Falle von Sprache niedrigfrequentere Energieanteile<br />
diese kleinen Schwankungen von der Nulldurchgangslinie etwas entfernen,<br />
kann man erwarten, daß die Nulldurchgangsrate bei Sprache (vor allem<br />
bei Vokalen) niedriger ist als bei einfachem Rauschen. Allerdings hängt die<br />
Nulldurchgangsrate auch von den gerade artikulierten Lauten ab, so daß die<br />
einfache Verwendung eines Schwellwertes oder - im Falle eines zweidimensionalen<br />
Merkmalsraumes bestehend aus Energie und Nulldurchgangsrate<br />
- einer Schwellebene nicht mehr gut genug funktioniert. Ein nichtlinearer
10.1 Zeitsignalbasierte Erkennung 155<br />
Klassifikator scheint in solchen Situationen angebrachter. Zum Beispiel<br />
könnte ein Gauß-Klassifikator verwendet werden, der zwei multivariate<br />
Normalverteilungen, eine für Sprache und eine für Stille modelliert. Im<br />
allgemeineren Fall könnten sogar mehrere Verteilungen je Modell verwendet<br />
werden und so der Grenzverlauf zwischen den Modellen beliebig kompliziert<br />
modelliert werden.<br />
In machen Situationen, insbesondere wenn die Rechnerkapazität dies<br />
erlaubt, kann zur Detektion von Stille sogar ein kompletter Spracherkenner<br />
verwendet werden. Dieser Spracherkenner muß nicht mit einem großen<br />
Vokabular laufen. Zum Beispiel würde ein Lauteerkenner, der auch den<br />
” Laut“ Stille erkennen kann ausreichen. Im Extremfall kann das Vokabular<br />
des Erkenners aus nur zwei Vokabeln“, Stille und Sprache, bestehen, was<br />
”<br />
dann einem einfachen Klassifikator wie weiter oben beschrieben sehr nahe<br />
kommt.<br />
10.1.2 Kombination von Merkmalen<br />
Für Nahbesprechungsmikrophone funktionieren einfache, nur die Energie<br />
messende Detektoren meist ausreichend gut. Wenn die Aufnahmebedingungen<br />
aber so sind, daß die Hintergrundgeräusche in etwa so laut sind wie<br />
leise Anteile der Sprache, müssen etwas intelligentere Detektoren verwendet<br />
werden. Hin und wieder beobachtet man das Phänomen, daß die letzten<br />
Silben eines Satzes von Detektoren abgeschnitten werden, weil es üblich ist,<br />
die Lautstärke am Ende eines Satzes zu senken, was dazu führt, daß die<br />
Signalenergie unter den Schwellwert fällt, der höher als das Hintergrundrauschen<br />
gewählt wurde.<br />
Auch Sprachlaute, die nur wenig Energie haben, wie zum Beispiel Konsonanten,<br />
werden leicht von einfachen Detektoren als Stille mißverstanden.<br />
In solchen Fällen bietet es sich an, weitere Eigenschaften des Signals außer<br />
der Energie zu messen.<br />
Die Nulldurchgangsrate und der Verlauf der Amplituden sind Merkmale,<br />
die gerne verwendet werden. Zwar ist es so, daß die Energie des Signals<br />
dem Integral unter dem Quadrat der Amplitude entspricht, aber dennoch<br />
enthält die Amplitude zusätzliche Information. Hohe Amplituden, die nicht<br />
lange anhalten haben wenig Energie, deuten aber auf Plosivlaute oder<br />
Stopplaute hin. Die Nulldurchgangsrate bzw. die Änderung derselben kann<br />
auch Hinweise darauf geben, daß Sprache vorliegt, obwohl die Energie sehr<br />
niedrig ist.
156 10. Erkennung statischer Sprachsignale<br />
Eine der sinnvollsten Arten, einen Sprachdetektor unter Verwendung<br />
mehrer Eigenschaften des Signals zu machen, ist ein multivariater Gauß-<br />
Klassifikator. Im n-dimensionalen Merkmalsraum wird je Klasse (Stille vs.<br />
Sprache) eine Normalverteilung geschätzt. Wenn genügend Aufnahmedaten<br />
vorliegen, kann man auch mehrere Normalverteilungen zu einem Codebuch<br />
je Klasse schätzen. Solche Gaußklassifikatoren, zusätzlich versehen mit einer<br />
” dynamischen Entscheidungsglättung“ ähnlich wie beim Zustandsautomaten<br />
funktionieren, in der Regel höchst zufriedenstellend.<br />
10.2 Das Vokaldreieck<br />
In Abb. 4.8 ist die Bedeutung des Begriffes Formanten skizziert. Ende<br />
der Achtziger wurden Versuche unternommen, aus dem Sprachsignal die<br />
Formanten zu extrahieren [?] [?]. Dabei wurden verschiedene amerikanische<br />
Vokale gesprochen. Die erste und zweite Formante, F1 und F2 wurden gemessen<br />
und zur Charakterisierung der Aufnahmen verwendet. Beim Auftragen<br />
der Meßpunkte in ein Koordinatensystem nahmen die Koordinatenpaare<br />
in etwa den Bereich eines Dreiecks ein (s. Abb. 10.3). Daher entstand der<br />
Name ” Vokaldreieck“.<br />
Bei den Klassifikationsexperimenten von [?] wurden ein einfaches dreischichtiges<br />
Perzeptron verwendet, das zur Klassifikation die in Abb. 10.3<br />
eingezeichneten Trennlinien fand.<br />
In der Praxis stellt sich jedoch die Formantenanalyse für die Erkennung<br />
kontinuierlicher Sprache als ungeeignet heraus, hauptsächlich deshalb, weil<br />
es meistens sehr schwierig bis unmöglich ist, die Formanten zu extrahieren.<br />
10.3 Vergleich von Spektrogrammen<br />
Ist ein Stück Audioaufzeichnung erst einmal als Sprache identifiziert, muß<br />
es nun klassifiziert werden. Die Standardmethode der Einzelworterkennung<br />
wie sie auch heute in einfachen Erkennern (z.B. Einzelkommandoerkenner<br />
in Mobiltelefonen, Fernbedienungen oder PDAs) verwendet wird, ist der<br />
Vergleich des aufgezeichneten Musters mit allen in Frage kommenden<br />
Mustern aus einem zuvor gelernten und abgespeicherten Katalog von<br />
Referenzmustern. Jedem zu erkennenden Kommando wird eine oder mehrere<br />
Referenzen zugeordnet.<br />
Ein direkter Vergleich der Wellenformen hätte keine Chance, sinnvolle<br />
Erkennungsergebnisse zu liefern. Selbst die mit allergrößter Sorgfalt
F2 [Hz]<br />
4000<br />
2000<br />
1000<br />
500<br />
0<br />
ÁÁÁ<br />
ÍÍÍ<br />
ÁÁ<br />
Á<br />
Á<br />
iÁ ÁÁÁÁÁÁ<br />
ÍÍÍ ÍÍÍÍ<br />
<br />
ÇÇÇÇ ÍÍ<br />
ÍÇ<br />
<br />
Á Á<br />
Á<br />
æ <br />
10.3 Vergleich von Spektrogrammen 157<br />
i i<br />
i<br />
i<br />
i<br />
i<br />
i i<br />
i<br />
iii i<br />
i i i<br />
i i<br />
i i<br />
ii<br />
i<br />
i i i<br />
ii i<br />
i<br />
i i<br />
i<br />
æ<br />
æ æ<br />
æ æ æ æ<br />
æ æ æ<br />
æ æ æ<br />
æ æ æ<br />
æ<br />
æ æ<br />
æ<br />
<br />
æ <br />
ÁÁÁÁ ÁÁÁÁ<br />
ÁÁÁÁ ÁÁ<br />
i<br />
ÍÍ<br />
Í <br />
<br />
<br />
<br />
æ<br />
æ<br />
ÍÍÍ<br />
<br />
æ<br />
ÇÇÇ<br />
uu u u<br />
u<br />
u uuu uuu<br />
u<br />
u uu u<br />
uu u uu<br />
u u<br />
u u<br />
u<br />
500<br />
Abb. 10.3. Vokaldreieck nach [Lip89]<br />
ÍÍ Í<br />
<br />
ÇÇÇ<br />
<br />
æ<br />
æ<br />
æ<br />
ÇÇÇ Ç ÇÇÇÇ<br />
<br />
1000<br />
1500<br />
möglichst exakt wiederholten Wörter resultieren in völlig verschiedenen<br />
Signalen. Selbst das Abspielen ein und derselben Aufnahme über ein und<br />
denselben Lautsprecher, zweimal aufgezeichnet mit ein und derselben<br />
Aufnahmeapparatur liefert verschiedene Wellenformen, bei denen man<br />
bestenfalls Ähnlichkeiten im Verlauf der Amplitude (Einhüllende) erkennen<br />
kann, kaum aber in den Details einzelner Abtastwerte.<br />
Viel robuster ist da die Verwendung von Spektren, oder besser noch auf<br />
wenige Filterbänke reduzierte Spektren. Die Erkennung einiger isolierter<br />
Phoneme ist schon anhand des Leistungsspektrums möglich. Dies kann bei<br />
Vokalen durch Bestimmen der Formanten und durch Positionierung des<br />
Lauts im Vokaldreieck geschehen. Für Konsonanten kann man mehrere<br />
Spektren aufzeichnen und mitteln oder mehrere gemittelte in einem Codebuch<br />
abspeichern. Bei der Erkennung wird das zu erkennende Muster mit<br />
F1 [Hz]
158 10. Erkennung statischer Sprachsignale<br />
denen der Codebücher verglichen und so klassifiziert.<br />
Sobald die Menge der zu erkennenden Klassen mehr als nur eine ” Handvoll“<br />
ist, versagen solche einfachen Spektrenvergleiche. Ähnlich schlecht funktionieren<br />
sie, wenn nicht nur statische Laute wie Vokale, sondern etwas kompliziertere<br />
Dinge wie kurze Lautfolgen erkannt werden sollen. Dies ist beim<br />
Buchstabieren der Fall. Die bereits mehrfach erwähnte B-D-G-Task ist ein<br />
Beispiel dafür. Anfang der Achtziger war die erfolgreichste Vorgehensweise<br />
bei dieser Beliebten Aufgabe die Analyse mehreren aufeinanderfolgender<br />
Kurzzeitspektren. In der Tat gehörten relativ einfach strukturierte neuronale<br />
Netze (Multi-Layer-Perzeptronen) zu den am besten funktionierenden Lösungen.<br />
Dabei wurden oft die Eingangsneuronen als ein Fenster zum Spektrogramm<br />
betrachtet, so daß n aufeinanderfolgende Kurzzeitspektren als jeweils<br />
d-dimensionale Filterbankvektoren in die n·d große Eingabeschicht der Netze<br />
geführt. Die Trainingsmethoden und Architekturfeinheiten wurden dann oft<br />
noch so modifiziert, daß die in der Dynamik des Signals liegende Besonderheit<br />
der Sprache berücksichtigt wurde (vgl. Kap. 22).
11. Erkennung dynamischer Sprachsignale<br />
Sprache ist ein sehr dynamischer Prozeß. Viele Laute hören sich nur im<br />
Kontext so an, wie man das erwartet. Selbst wenn wir unsere eigene Stimme<br />
aufnehmen und ein Kurzzeitspektrum berechnen und diesen Bereich immer<br />
wieder abspielen erkennen wir uns meist selbst nicht darin. Ein aus einer<br />
Aufnahme herausgeschnittener Vokal hört sich plötzlich wie das Brummen<br />
eines Automotors an, Konsonanten verschwinden komplett und ähnliche<br />
Beobachtungen können leicht gemacht werden. Das kann sogar so weit<br />
gehen, daß drei verschiedene geübte Akustiker in dem gleichen Stückchen<br />
Sprachaufnahme völlig verschiede Wörter, ja sogar Zwei- oder Dreiwortfolgen<br />
zu hören glauben.<br />
Erst das Hintereinanderabspielen aller kleinen Spracheinheiten läßt<br />
das Phänomen Sprache entstehen. Daher sind nur auf die Klassifikation<br />
statischer Sprachstückchen basierende Erkenner nie über das Erkennen<br />
einzelner Phoneme hinausgekommen.<br />
Abb. 11.1. Zwei Spektrogramme zweier Aufnahmen des Wortes ” sieben“<br />
In Abb. 11.1 sind zwei Spektrogramme dargestellt. In beiden Aufnahmen<br />
wurde das Wort ” sieben“ gesprochen. Wenn eine der Aufnahme eine Referenzaufnahme<br />
wäre und die andere mit dieser bei der Klassifikation verglichen<br />
würde, müßten nicht nur Distanzen zwischen einzelnen Kurzzeitspektren<br />
berechnet werden sondern auch noch bestimmt werden, welche Spektren aus<br />
der einen Aufnahme mit welchen aus der anderen verglichen werden sollen.
160 11. Erkennung dynamischer Sprachsignale<br />
In Abb. 11.2 sieht man, daß eine einfache lineare Zuordnung von Kurzzeitspektren<br />
verschieden langer Aufnahmen problematisch ist. Die relativ lange<br />
Stillephase am Anfang der vertikal dargestellten Aufnahme trifft so auf schon<br />
einsetzende Sprache aus der horizontal dargestellten Aufnahme. In der vertikalen<br />
folgt außerdem eine Stillephase zwischen den beiden letzten Wörtern<br />
oder Lauten, der überhaupt kein Gegenstück aus der horizontalen Aufnahme<br />
entspricht.<br />
Abb. 11.2. Längennormalisierung durch lineare Zuordnung<br />
Vielmehr müßte die Zuordnung von Teilen zweier Signale eher nichtlinear<br />
wie in Abb. 11.3 geschehen.<br />
11.1 Minimale Editierdistanz<br />
Zur Motivation des Prinzips des dynamischen Programmierens wollen<br />
wir hier mit einem einfacheren aber dem Vergleich von Spektrogrammen<br />
ähnlichen Problem anfangen. Beim Vergleich von Texten gibt es verschiedene<br />
Anwendungen, bei denen die so genannte minimale Editierdistanz gemessen<br />
wird. Viele Textverarbeitungsprogramme bieten nicht nur die Möglichkeit,<br />
Texte auf Rechtschreibfehler zu überprüfen, sondern erlauben sich gelegentlich<br />
auch diese während der Eingabe durch den Benutzer automatisch
11.1 Minimale Editierdistanz 161<br />
Abb. 11.3. Nichtlineare Zuordnung von Abschnitten zweier Aufnahmen<br />
zu korrigieren. Einige auf Texteingabe basierende Benutzerschnittstellen<br />
z.B. Shells in UNIX können auch Eingabefehler selbständig korrigieren.<br />
Beim Suchen von Stichwörtern in Textkorpora kann es sinnvoll sein, die<br />
Übereinstimmung des Suchwortes mit einem Teil des Textes nicht unbedingt<br />
fehlerfrei zu verlangen, z.B. um leicht veränderte Versionen wie konjugierte<br />
Formen oder Tippfehler auch finden zu können. Bei der Erkennung von<br />
gedruckten Texten (Optical Character Recognition – OCR) können falsch<br />
erkannte Buchstaben oft dadurch korrigiert werden, daß zu allen zu erkennenden<br />
Wörtern die Minimale Editierdistanz berechnet wird, und so aus<br />
SPRAGHE schnell SPRACHE wird, weil letzteres durch Vertauschen eines<br />
einzigen Buchstaben aus ersterem erzeugt werden kann.<br />
Wie lösen wir das Problem nach der Suche der minimalen Editierdistanz<br />
zwischen zwei Wörtern X = x1, . . .xn und Y = y1, . . .ym? Ein einfacher<br />
Vergleich von xi mit yi liefert offensichtlich nicht das gewünschte Ergebnis,<br />
denn dann wäre die Distanz zwischen SPRACHE und SRACHE viel zu<br />
groß, obwohl nur ein Buchstabe ausgelassen wurde. Wir müssen also zuerst<br />
wissen, welches Zeichen von X mit welchem Zeichen von Y verglichen<br />
werden muß. Der Einfachheit halber nehmen wir an, es gibt nur folgende<br />
Editierschritte: Ein Zeichen unter dem Cursor überschreiben, ein Zeichen<br />
unter dem Cursor löschen, ein Zeichen an der Cursorposition einfügen<br />
und den Cursor bewegen. Wenn wir das Bewegen des Cursors nicht als<br />
distanzrelevante Editierschritte betrachten, und das Überschreiben eines<br />
Zeichens mit sich selbst auch nicht, dann bleiben nur drei Editierschritte,<br />
die zur Distanz beitragen: Das Überschreiben oder Vertauschen eines<br />
Zeichens, das Einfügen und das Löschen eines Zeichens. So kann z.B. aus<br />
den Wort SPRACHEN STRAUSSE werden, indem man das P durch ein T
162 11. Erkennung dynamischer Sprachsignale<br />
überschreibt, das U nach dem A einfügt, CH durch SS ersetzt (zwei Schritte)<br />
und schließlich das N löscht. Insgesamt wären das also fünf Editierschritte.<br />
Die Zuordnung der einzelnen Buchstaben sieht dann aus wie in Abb. 11.4.<br />
S P R A C H E N<br />
S T R A U S S E<br />
Abb. 11.4. Zuordnung einander entsprechender Buchstaben zweier Wörter<br />
Natürlich kann man auch auf andere Art aus SPRACHEN das Wort<br />
STRAUSSE machen. Wenn man so will ist es auch möglich, indem man<br />
erst alle Zeichen von SPRACHEN löscht (8 Schritte) und dann alle Zeichen<br />
von STRAUSSE einfügt (8 Schritte), insgesamt also 16 Editierschritte<br />
durchführt. Tatsächlich werden mindestens fünf Schritte benötigt.<br />
11.2 Dynamisches Programmieren<br />
Die Standardmethode zur Berechnung der minimalen Editierdistanz ist<br />
das so genannte dynamische Programmieren (DP). Es wird nicht nur<br />
beim Vergleich von Mustern, sondern auch bei zahlreichen anderen Optimierungsproblemen<br />
eingesetzt. Die Idee ist dabei immer, daß man eine<br />
optimale Gesamtlösung aus mehreren optimalen Teillösungen berechnen<br />
kann. Im Falle der minimalen Editierdistanz können wir zum Beispiel davon<br />
ausgehen, daß wir wüßten, was die Minimalen Editierdistanzen zwischen<br />
den Teilwörtern x1, . . . xk und y1, . . .yl bekannt sind. Welche Teildistanzen<br />
müßten bekannt sein, um die minimale Distanz zwischen x1, . . . xi und<br />
y1, . . . yj zu berechnen.<br />
Wenn wir nur die drei oben genannten Schritte (Einfügen, Löschen,<br />
Überschreiben) haben, dann kann am Ende des Editierens y1, . . . yj nur dann<br />
herauskommen, wenn als letzter Schritt entweder xi gelöscht wurde, xi mit<br />
yj überschrieben wurde oder yj eingefügt wurde (oder xi und yj gleich sind,<br />
also kein Editierschritt nötig wäre).<br />
Wenn wird das Editieren als Prozeß betrachten, dann durchläuft dieser<br />
eine Folge von Zuständen, wobei ein Zustand durch die beiden Positionen<br />
i und j beschrieben ist. Dem gesamten Editierprozeß steht also ein Zustandsraum<br />
der Größe n · m zur Verfügung (wenn X = x1, x2 dotsxn und
11.2 Dynamisches Programmieren 163<br />
Y = y1, y2, . . .ym). Der Prozeß beginnt mit dem Zustand (1, 1) und muß<br />
am Ende im Zustand (n, m) ankommen. Jeder Editierschritt ist nun ein<br />
Zustandsübergang:<br />
Editierschritt Zustandsübergang<br />
xi−1 auslassen (i − 1,j) → (i, j)<br />
yi einfügen (i ,j − 1) → (i, j)<br />
xi durch yj ersetzen (bzw. unverändert lassen) (i − 1,j − 1) → (i, j)<br />
Tabelle 11.1. Editierschritte und entsprechende Zustandsübergänge<br />
c1<br />
c2<br />
cn<br />
q1<br />
q2<br />
qn<br />
d2i<br />
d1i<br />
d3i<br />
Si<br />
mink ck + dki<br />
Abb. 11.5. Optimierungsschritt beim Dynamischen Programmieren<br />
Die Idee hinter dem dynamischen Programmieren besteht nun darin, die<br />
minimalen Kosten für das Erreichen eines Zustandes aus den minimalen<br />
Kosten aller möglichen Vorgängerzustände und den Kosten für den Zustandsübergang<br />
zu berechnen. In Abb. 11.5 hat der Zustand Si insgesamt n<br />
verschiedene mögliche Vorgängerzustände q1, q2, . . .qn, für die die jeweiligen<br />
minimalen Kosten c1, c2, . . . cn bekannt sind. Wenn die Kosten für den<br />
Zustandsübergang von qk nach Si mit dki bezeichnet wird, dann sind die<br />
Kosten für das Erreichen von Si über den Vorgängner qk gleich ck + dki, und<br />
die minimalen Kosten dafür, auf egal welchem Wege zu Si zu kommen, sind<br />
mink ck + dki.<br />
Wenn zur Darstellung des Editierprozesses eine Anordnung wie in Abb.<br />
11.2 gewählt wird, also x1, x2, . . .xn entlang der Abszisse und y1, y2, . . .ym<br />
entland der Ordinaten, dann ergibt sich eine Matrix. Jeder Matrixkoeffizient
164 11. Erkennung dynamischer Sprachsignale<br />
entspricht einem DP-Zustand. Editieren bedeutet, die Matrix von links unten<br />
nach rechts oben zu durchlaufen, wobei als Editierschritte, die in Abb. 11.6<br />
dargestellten möglich sind. Bezeichnen wir mit C(i, j) die minimale Editierdistanz<br />
zwischen x1, . . . xi und y1, . . .yi. Dann können wir C(i, j) mit Hilfe der<br />
Kenntnis von xi, yj, C(i−1, j), C(i, j−1) und C(i−1, j−1) berechnen gemäß:<br />
⎧<br />
⎨ cd +C(i − 1, j)<br />
C(i, j) = min c<br />
⎩ i +C(i, j − 1)<br />
δxi,yj · cs +C(i, j − 1)<br />
(11.1)<br />
wobei δxi,yj das Kronecker-Delta ist. c d bezeichnet die Kosten für das<br />
Auslassen (delete) eines Zeichens c i die Kosten für das Einfügen (insert) und<br />
cs (substitute) die Kosten für das Ersetzen eines Zeichens durch ein anderes.<br />
Im einfachsten Fall setzt man ce = c i = cs = 1.<br />
yi<br />
yi−1<br />
xi−1<br />
xi<br />
C(i, j) xi−1 auslassen<br />
Abb. 11.6. Kostenberechnung für einen Editierschritt<br />
xi ggf. mit<br />
yi überschreiben<br />
yi einfügen<br />
Wenn das Ziel nicht nur die Berechnung der minimal Anzahl der Editierschritte<br />
sein soll, sondern auch noch die Folge dieser Schritte selbst, dann ist<br />
es nötig, daß zu jedem Zustand der beste Vorgängerzustand abgespeichert<br />
wird. Für diese Referenzen wird oft der Ausdruck Rückwärtszeiger (englisch<br />
backpointer) verwendet, und die Menge aller Rückwärtszeiger als Tabelle der<br />
Rückwärtszeiger (englisch: backpointer table). Der Rückwärtszeiger des Zu-<br />
stands (i, j) berechnet sich analog zu Gl. 11.1 als:<br />
R(i, j) = argmin<br />
{(i−1,j), (i−1,j−1), (i,j−1)}<br />
⎧<br />
⎨ cd +C(i − 1, j)<br />
c<br />
⎩ i +C(i, j − 1)<br />
δxi,yj · cs +C(i, j − 1)<br />
(11.2)<br />
Schließlich gibt R(n, m) den letzen Editierschritt an. Ist R(n, m) =<br />
(n − 1, m), so heißt dies, daß im letzten Schritt xn ausgelassen werden muß.<br />
R(n, m) = (n, m − 1), dann muß im letzten Schritt ym eingefügt werden.
11.2 Dynamisches Programmieren 165<br />
Und wenn R(n, m) = (n − 1, m − 1), dann muß – falls xn = ym – xn durch<br />
ym ersetzt werden. Bezeichnet man mit E(n, m) diesen Editierschritt und<br />
verfolgt man die Rückwärtszeiger zurück bis zum Zustand (1, 1). Dann<br />
erhält man aus der umgekehrten Folge der Editierzustände<br />
R(n, m), R(R(n, m)), . . . R(R(· · ·(R(n, m)) · · ·)) = R (e) (n, m) (11.3)<br />
die Folge der nötigen Editierschritte:<br />
E(R (e−1) (n, m)), E(R (e−2) (n, m)), . . . E(R(n, m)), E(n, m) (11.4)<br />
Diese Folge enthält dann alle Schritte, auch die Ersetzungen von einzelnen<br />
Zeichen durch das gleiche Zeichen, die dann beim Berechnen der Kosten<br />
nicht mitgezählt werden dürfen.<br />
Unter Umständen kann es bei Gl. 11.3 zu algorithmischen Randerscheinungen<br />
kommen. Wenn zum Beispiel X = AB und Y = C verglichen<br />
werden sollen, dann hat die Resultierende DP-Matrix nur eine Zeile und<br />
es wäre nicht möglich, einen wie in Abb. 11.6 dargestellten ” diagonalen“<br />
Schritt zu machen. Es gäbe auch nur einen Rückwärtszeiger und somit nur<br />
einen möglichen Editierschritt. Sicher lassen sich solche Randfälle durch<br />
entsprechende Fallunterscheidungen explizit behandeln. Der Algorithmus<br />
selbst kann aber so einfach wie oben vorgestellt bleiben, wenn man die<br />
zu vergleichenden Zeichenfolgen leicht modifiziert: Man ersetzt X durch<br />
x0, x1, . . .xn+1, wobei x0 und xn+1 jeweils Sonderzeichen sind, die weder in<br />
X noch in Y vorkommen (analog wird mit Y verfahren). Dann entspricht<br />
das Auslassen einer Anfangssequenz x1, . . .xk der Zuordnung dieser Zeichen<br />
zu y0.<br />
Der Vergleich der Wörter X = ANDACHT und Y = NOCHMAL ist in<br />
Abb. 11.7 dargestellt. In jeder Matrixzelle ist die zu dem entsprechenden<br />
Zustand gehörige minimale Editierdistanz angegeben und ein Verweis auf<br />
den Vorgängerzustand. Die Zuordnung der xi zu den yj ist durch graue<br />
Kreisscheiben markiert. Verfolgt man diese von links unten nach rechts oben,<br />
so ergibt sich in diesem Beispiel die folgende Folge von Editierschritten zur<br />
Umwandlung von ANDACHT in NOCHMAL:<br />
Auslassen von A (Kosten 1)<br />
Ersetzen von N durch N (Kosten 0)<br />
Auslassen von D (Kosten 1)<br />
Ersetzen von A durch O (Kosten 1)<br />
Ersetzen von C durch C (Kosten 0)<br />
Ersetzen von H durch H (Kosten 0)
166 11. Erkennung dynamischer Sprachsignale<br />
Einfügen von M (Kosten 1)<br />
Einfügen von A (Kosten 1)<br />
Ersetzen von T durch L (Kosten 1)<br />
Das ergibt als Gesamtkosten: 6 Editierschritte. Je nachdem, welcher<br />
Editierschritt in Gl. 11.1 gewählt wird, wenn verschiedene Schritte die<br />
gleichen Minimalkosten verursachen, können durchaus verschiedene Editierfolgen<br />
minimal sein. So läßt sich zum Beispiel die Schrittfolge Auslassen +<br />
Ersetzten auch alternativ als Ersetzen + Auslassen mit dem gleichen Effekt<br />
erreichen.<br />
#<br />
L<br />
A<br />
M<br />
H<br />
C<br />
O<br />
N<br />
#<br />
#<br />
8<br />
7<br />
6<br />
5<br />
4<br />
3<br />
2<br />
1<br />
0<br />
7 7 7 7 7 7 7<br />
6 6<br />
5 6 6 5<br />
1 1<br />
1<br />
7<br />
5 5 5 5 5<br />
4 4 4 4 4 3 4<br />
3 3 3 3<br />
2 2 2<br />
2<br />
2<br />
3<br />
6 6 6 6 6<br />
A N D A C H T<br />
Abb. 11.7. Berechnung der Editierdistanz mit dynamischem Programmieren<br />
Experiment 11.1: Minimale Editierdistanz<br />
Starten Sie das Applet Edit Distance. Auf der Oberfläche sehen sie zwei<br />
Felder, in die sie die Wörter X und Y eintragen können.<br />
Wenn sie auf Start drücken, wird eine neue DP-Matrix erzeugt, die den<br />
Aufbau hat wie Abb. 11.7.<br />
Durch Klicken auf Schritt wird ein DP-Schritt ausgeführt, das heißt, alle<br />
minimalen Editierdistanzen, die mit dem aktuell angezeigten Informationen<br />
unmittelbar zu berechnen sind, werden berechnet.<br />
Auf der DP-Matrix erscheinen dann die minimalen Editierdistanzen sowie<br />
für jeden Zustand eine Referenz auf den ” besten“ Vorgänger.<br />
3<br />
3<br />
4<br />
6<br />
3<br />
4<br />
4<br />
5<br />
5<br />
4<br />
4<br />
5<br />
5<br />
6<br />
5<br />
4<br />
5<br />
6<br />
6<br />
7<br />
#<br />
6<br />
5<br />
5<br />
5<br />
6<br />
7<br />
7<br />
8
11.2 Dynamisches Programmieren 167<br />
Wenn der letzte Schritt ausgeführt wurde und der Zustand in der rechten<br />
oberen Ecke erreicht ist, dann wird der DP-Pfad (also alle für das minimale<br />
Editieren zu durchlaufenden Zustände) hervorgehoben.<br />
11.2.1 Distanz zwischen zwei Sprachsignalen<br />
Das dynamische Programmieren gibt uns also ein Werkzeug in die Hand,<br />
mit dessen Hilfe es möglich ist, zwei Folgen so miteinander zu vergleichen,<br />
daß möglichst viele gleiche Abschnitte einander zugeordnet werden. Dieses<br />
Prinzip läßt sich auch auf den Vergleich von Sprachsignalen anwenden.<br />
Statt der Wortfolgen X und Y treten dort dann die Mustervektorfolgen X<br />
und Y auf, wobei xt das zum Zeitpunkt t gemessene Sprachsignal ist. Im<br />
Unterschied zu Texten haben wir bei Sprachsignalen das Problem, daß die<br />
miteinander zu vergleichenden Vektoren (z.B. mel-skalierte Spektren) so gut<br />
wie nie identisch sind. Dann wäre die Editierdistanz immer gleich der Länge<br />
der längeren Aufnahme. Eine einfache Änderung beseitigt das Problem.<br />
Statt für das ” Überschreiben“ eines Vektors 1.0 Editierschritte zu rechnen,<br />
verwenden wir ein Distanzmaß (z.B. die Euklidische Distanz) zwischen den<br />
Vektoren. In der Praxis stellt sich heraus, daß dies sogar genügt, und für das<br />
Einfügen und Löschen von Vektoren gar kein Editierschritt bzw. gar keine<br />
Kosten berechnet werden müssen.<br />
1 2 5 6 9<br />
3 10 1314<br />
4 7 8 1112 1516 1 2 5 6 9<br />
3 10 1314<br />
4 7 8 1112 1516 16<br />
15<br />
14<br />
13<br />
12<br />
11<br />
10<br />
9<br />
8<br />
7<br />
6<br />
5<br />
4<br />
3<br />
2<br />
1<br />
Abb. 11.8. DTW-Pfad in Matrixdarstellung<br />
1 2 5 6 9<br />
3 10 1314<br />
4 7 8 1112 1516
168 11. Erkennung dynamischer Sprachsignale<br />
Wenn das dynamische Programmieren also dazu verwendet wird, zwei<br />
Sprachsignale zeitlich so zu verzerren, daß sie dadurch möglichst gut<br />
aufeinander passen, dann wird dies dynamic time warping (DTW) genannt.<br />
Auch im Deutschen findet man häufiger den englischsprachigen Ausdruck<br />
als das deutsche Pendant ” dynamische Zeitverzerrung“. Das Ergebnis ist<br />
dann analog zum DP-Pfad ein DTW-Pfad (s. Abb. 11.8). Je feiner die<br />
Sprachaufnahmen granuliert sind, das heißt, je kürzer die Zeitabschnitte<br />
sind, für die jeweils ein neuer Merkmalsvektor beobachtet wird, umso<br />
unwichtiger wird die Betrachtung von Auslassungen und Einfügungen. Wenn<br />
wir zwei Signale X = x1, . . . xn und Y = y1, . . .ym betrachten gehen wir<br />
davon aus, der DTW-Pfad k = min(n, m) Zuordnungen (also eine Relation)<br />
{(xi1, yj1), (xi2, yj2), . . . (xik , yjk )} (11.5)<br />
findet, und die Distanz zwischen X und Y berechnet sich als Summe<br />
(kumulative Distanz) aller ” lokalen“ Distanzen:<br />
d(X, Y ) =<br />
k<br />
|xil − yjl | (11.6)<br />
l=1<br />
Als lokale Distanzen |xil − yjl | werden meist einfache euklidische Distanzen<br />
verwendet. In der Praxis stellt sich heraus, daß in der Tat das<br />
Nichtberücksichtigen der Auslassungen und Einfügungen keine merklichen<br />
Auswirkungen auf die Distanzberechnung hat. Somit stellt sich an dieser<br />
Stelle die Frage, ob nicht auch andere Zustandsübergangsschemata als<br />
bei der minimalen Editierdistanz sinnvoll sind. Abb. 11.9 zeigt verschiede<br />
Möglichkeiten an. Oben links ist das Schema zu sehen, das auch für die Editierdistanz<br />
verwendet wurde. Oben in der Mitte ist eine leichte Abwandlung<br />
davon dargestellt, bei der höchsten eine Auslassung oder Einfügung hintereinander<br />
stattfinden darf, so daß nicht längere Abschnitte eines Musters<br />
komplett ignoriert werden können. Das Übergangsschema oben links wird<br />
Bakis-Schema genannt. Es ist für die Berechnung von Editierdistanzen wegen<br />
des fehlenden Einfügeschrittes nicht geeignet. Da dies aber beim Vergleich<br />
von Sprachaufnahmen keine Bedeutung hat, und da das Bakis-Schema als<br />
sehr angenehme Eigenschaft hat, immer nur von Zuständen (t, . . .) auf<br />
Zustände (t + 1, . . .) überzugehen, ist es das in der Spracherkennung am<br />
häufigsten benutzte. Es ermöglicht so relativ effiziente Implementierungen.<br />
Das Schema unten links ist eine Modifikation des Bakis-Schemas, bei der<br />
keine zwei aufeinanderfolgenden horizontalen Schritte erlaubt sind – auch<br />
hier, um zu verhindern, daß größere Bereiche einer Aufnahme komplett<br />
ignoriert werden können. Auch wesentlich komplexere Schemata wie unten<br />
in der Mitte und unten rechts (hier mit zusätzlich gewichteten in die<br />
Distanzberechnung mit eingehenden Straftermen versehen) wurden gelegentlich<br />
verwendet. Das Schema unten links (Itakura-Schema) verbietet ein<br />
zweimaliges Nach-Rechts-Gehen“ und stellt so auch eine Mindeststeigung<br />
”
11.3 Spracherkennung mittels Dynamic Time Warping 169<br />
des Pfades sicher. In der Praxis hat sich allerdings das Bakis-Modell als das<br />
praktikabelste herausgestellt. Nennenswerte Vorteile konnten für die anderen<br />
Schemata bei ” gewöhnlichen“ Spracherkennungsaufgaben nicht festgestellt<br />
werden.<br />
Abb. 11.9. Verschiedene Zustandsübergangsschemata<br />
2 2<br />
11.3 Spracherkennung mittels Dynamic Time Warping<br />
Abb. 11.10 gibt einen Überblick über einen Einzelwort Spracherkenner, der<br />
auf dem DTW-Algorithmus basiert. Eine Testaufnahme wird analysiert<br />
und in eine Folge von Kurzzeitspektren umgewandelt. Im Erkenner ist<br />
für jedes von n Vokabularwörtern ein Referenzmuster abgespeichert. Die<br />
Testaufnahme wird mit jeder Referenz verglichen, ein DTW-Pfad wird<br />
berechnet und die kumulative Distanz ausgegeben. Unter allen Referenzen<br />
wird diejenige mit der kleinsten kumulativen Distanz als Erkennungshypothese<br />
gewählt. Der Begriff Einzelwort bezeichnet hier nicht ein Wort im<br />
linguistischen Sinne, sondern lediglich die Tatsache, daß keine Sätze aus<br />
Wörtern beliebig kombiniert werden können. Als Einzelworte in diesem<br />
Sinne können durchaus auch mehrere Worte hintereinander gesprochen oder<br />
sogar (linguistisch gesehen) ganz Sätze sein. Der vielleicht korrektere Begriff<br />
wäre Erkennung von isolierten oder Einzelkommandos.<br />
Um die Leistung zu verbessern, können für jedes Vokabularwort mehrere<br />
Referenzen abgespeichert werden. Als Hypothese kann dann immer noch das<br />
Wort ausgegeben werden, zu dem die Referenz mit dem kleinsten Abstand<br />
1<br />
2<br />
1
170 11. Erkennung dynamischer Sprachsignale<br />
Testaufnahme<br />
Wort 1<br />
Wort 2<br />
Wort n<br />
. . .<br />
Abb. 11.10. Einzelworterkennung mit DTW-Algorithmus<br />
gehört, oder man gibt das Wort aus, dessen alle Referenzen den kleinsten<br />
durchschnittlichen Abstand haben.<br />
Derartige Erkenner sind durchaus als einfache Kommandoerkenner tauglich.<br />
Einige Soundkarten beinhalten solche Erkenner in ihrem Softwarepaket<br />
und die in Mobiltelefonen eingebauten sprachgesteuerten Wählmechanismen<br />
funktionieren auf derselben Idee.<br />
Experiment 11.2: DTW-Erkenner<br />
Starten Sie das Applet DTW. Auf der Oberfläche sehen zwei Karteikarten,<br />
eine (betitelt mit ” Recording“) zum Aufzeichnen und Abspielen von drei<br />
kurzen Sprachaufnahmen. Sie können einen Teil der dargestellten Aufnahme<br />
ausschneiden indem Sie ihn mit gedrücktem Mauszeiger überfahren. Eine<br />
der Aufnahemn ist mit Reference bezeichnet, die anderen mit Signal 1 und<br />
Signal 2.<br />
Wenn Sie drei Aufnahmen gemacht haben und auf die Kartei DTW<br />
zurückschalten, sehen Sie zwei DTW-Matrizen, die die lokalen Distanzen<br />
der Sprachvektoren als Graustufen darstellen. Wenn Sie dieselbe Aufnahme<br />
für die das Testmuster und für die Referenz verwenden, sehen Sie, daß die<br />
Graustufenmatrix symmetrisch ist und entlang der Diagonalen (von links<br />
unten nach rechts oben) überall die Distanzen 0 hat.<br />
Durch Klicken auf DTW 1 wird ein kompletter DTW-Algorithmus zum<br />
Vergleichen des Signals 1 mit dem Referenzmuster berechnet. Entsprechend<br />
verhält sich DTW 2 .<br />
Auf der DTW-Matrix erscheint dann der DTW-Pfad hervorgehoben und<br />
darunter wird die akkumulierte Distanz angezeigt.<br />
d1<br />
d2<br />
dn<br />
min
11.3 Spracherkennung mittels Dynamic Time Warping 171<br />
Nehmen Sie zwei verschiedene Wörter auf, und speichern sie das eine als<br />
Signal 1 und das andere als Signal 2. Damit ist die Datenbasis dieses<br />
minimalistischen Erkenners komplett.<br />
Nehmen Sie nun ein weiteres Wort auf (praktischerweise sprechen Sie eines<br />
der schon gespeicherten Wörter noch einmal) und speichern dieses als<br />
Testmuster ab.<br />
Wenn Sie nun die DTW-Algorithmen auf beiden Signalen rechnen lassen,<br />
dann können Sie die beiden akkumulierten Distanzen vergleichen und das<br />
Wort mit der kleineren Distanz als erkannt betrachten.<br />
Versuchen Sie einen Eindruck davon zu gewinnen, wie gut/schlecht die<br />
Erkennung funktioniert in Abhängigkeit davon, wie ähnlich sich die Wörter<br />
sind.<br />
Mit den Schaltflächen ” Bakis“, ” Itakura“ und ” Symmetrisch“ können Sie<br />
das Übergangsmuster wählen, das der DTW-Algorithmus verwenden soll.<br />
11.3.1 Einschränkungen des Suchraums<br />
Wenn man Muster von mehreren Sekunden Länge mit dem DTW-<br />
Algorithmus vergleichen möchte, kann es lohnenswert sein, nicht die gesamte<br />
DTW-Matrix abzusuchen, sondern nur solche Zustände zu betrachten,<br />
die überhaupt betreten werden können oder sogar nur solche, die eine<br />
Mindestwahrscheinlichkeit haben. Das Bestimmen, welche Zustände als<br />
Nachfolger des Zustandes (i, j) in Frage kommen wird als ” Expandieren“<br />
von (i, j) bezeichnet. Zwei Sprachsignale mit jeweils 1000 Vektoren würden<br />
eine DTW-Matrix mit 1 000000 Elementen aufspannen. Auch wenn diese<br />
heute vom Speicherbedarf her unproblematisch wäre, so sollte zumindest<br />
aus Laufzeitgründen geprüft werden, wie das Expandieren eines Zustandes<br />
gegebenenfalls die Suche nach dem DTW-Pfad vereinfacht werden kann. Die<br />
Menge der besuchbaren Zustände wird DTW-Suchraum genannt.<br />
Auf jeden Fall sollten die resultierenden DTW-Pfade einige Erwartungen<br />
erfüllen, wie sie in Abb. 11.11 dargestellt sind. Es sollte sichergestellt sein,<br />
daß die Pfade von links unten nach rechts oben verlaufen. Sie sollten auch<br />
monoton sein. Eine Nichtmonotonie des Pfades würde bedeuteten, daß ein<br />
Teil einer Aufnahme mit zwei verschiedenen Teilen der anderen Aufnahme<br />
verglichen würde, etwas das für normale Spracherkennung keinen Sinn hat<br />
(außer gegebenenfalls beim Vergleichen eines Lachens bestehend aus vielen<br />
” ha“ mit einem Lachen bestehend aus einem einzigen ha“). Besonders<br />
”<br />
hohe Sprünge sollten vermieden werden, um so eine lokale Kontinuität des
172 11. Erkennung dynamischer Sprachsignale<br />
Pfades zu gewährleisten. Lange Stücke mit großer Steilheit bedeuten, daß<br />
ein sehr kleiner Teil einer Aufnahme mit einem sehr großen Teil der anderen<br />
verglichen würde. Eine mangelnde Geradlinigkeit des Pfades würde darauf<br />
hindeuten, daß die Sprechgeschwindigkeiten besonders ungleichmäßig wären,<br />
was zwar möglich aber eher unwahrscheinlich wäre. Und schließlich deutet<br />
eine extreme Abweichung des Pfades von der Diagonalen auch darauf hin,<br />
daß die Aufnahmen sehr schwer vergleichbar sind.<br />
Endpunkte<br />
links unten / rechts oben<br />
Monotonie lokale Kontinuität<br />
Geradlinigkeit nahe an der Diagonalen<br />
Abb. 11.11. Erwartungen an DTW-Pfade<br />
Einige Einsparungen am Suchraum ergeben sich direkt aus dem<br />
verwendeten Übergangsschema. Abb. 11.12 zeigt, daß bei bestimmten<br />
DTW-Übergangsschemata – wie z.B. dem Bakis-Schema ohne zwei aufeinanderfolgende<br />
horizontale Schritte – der DTW-Pfad eine Mindeststeigung<br />
von 1/2 und eine Maximalsteigung von 2 haben muß. Wenn der Pfad links<br />
unten beginnen und rechts oben enden muß, so bleibt nur ein rautenförmiger<br />
Bereich der gesamten DTW-Matrix übrig, der überhaupt ” betreten“ werden<br />
kann. Weder eine Expansion in den nicht betretbaren Teil der Matrix noch<br />
die Berechnung lokaler Distanzen ist nötig. Der vergrößerte Ausschnitt in der<br />
Abbildung zeigt, daß der mit dem Pfeil markierte Übergang nicht betrachtet<br />
werden muß, weil ein Betreten des Zielzustandes nicht mehr in Einem Pfad<br />
resultieren kann, dessen Ende rechts oben ist.<br />
Geht man davon aus, daß ein stark von der Diagonalen abweichender<br />
Pfad ohnehin nur bei schlecht übereinstimmenden Aufnahmen vorkommen<br />
kann, dann kann es sich lohnen, den DTW-Suchraum auf ein Fenster um
Steigung<br />
2<br />
1/2<br />
2<br />
11.3 Spracherkennung mittels Dynamic Time Warping 173<br />
Steigung<br />
1/2<br />
Abb. 11.12. Einschränkungen des DTW-Suchraumes<br />
die Diagonale herum zu beschränken, so daß aus der Raute eine Schlauch<br />
mit spitzen Enden entsteht. Dadurch reduziert sich der Rechenaufwand von<br />
O(n · m) auf O(n + m), also von quasi-quadratischem auf linearen Aufwand.<br />
Solche Suchraumeinschränkungen sind allerdings nicht immer anwendbar.<br />
Sie bieten sich an für Kleinsterkenner, die mit sehr wenigen<br />
Ressourcen auskommen müssen (wie zum Beispiel in Mobiltelefonen oder<br />
Haushaltsgeräten), und einen kleinen Wortschatz von unter 100 Wörtern<br />
beziehungsweise Kommandos erkennen können, die nur als isolierte Kommandos<br />
und nicht im Kontext beliebiger Sprache gesprochen werden dürfen.<br />
Auch dürfen keine Sprechpausen erlaubt sein, und die Sprechgeschwindigkeit<br />
muß bei der zu erkennenden Aufnahme und den abgespeicherten Mustern<br />
in etwas gleich groß sein. Abb. 11.13 zeigt, was geschehen kann, wenn die<br />
Sprechgeschwindigkeiten zu unterschiedlich sind und damit die Länge der<br />
Aufnahmen stark voneinander abweichen. Solange die Aufnahmen gleich<br />
lang sind, entsteht als Suchraum eine gleichseitige Raute. Diese verengt<br />
sich umso mehr, je unterschiedlicher die Aufnahmezeiten sind, und kann im<br />
Extremfall dazu führen, daß der Suchraum komplett verschwindet, wenn die<br />
eine Aufnahme mehr als doppelt so lang ist wie die andere.<br />
Möglichkeiten diesen Problemen zu begegnen gibt es in der vorherigen<br />
Längennormierung, bei der Jede Aufnahme auf eine vorher festgelegte Länge
174 11. Erkennung dynamischer Sprachsignale<br />
Abb. 11.13. Eingeschränktes Bakis-Modell ist problematisch für unterschiedlich<br />
lange Aufnahmen<br />
gestaucht oder gedehnt wird, oder in der Verwendung komplizierterer Übergangsschemata,<br />
die dann aber die Suchraumbeschränkung wie beim Bakis-<br />
Schema nicht mehr erlauben. Eine Längennormierung kann aber auch den<br />
nachteiligen Effekt der Verfälschung der Aufnahme haben und so zu mehr Erkennungsfehlern<br />
führen. In der Praxis hat sich gezeigt, daß die beste Möglichkeit<br />
sowohl den Suchraum einzuschränken als auch unterschiedliche Aufnahmelängen<br />
und beliebige Übergangsschemata zu verwenden in der Strahlsuche<br />
besteht.<br />
11.3.2 Dynamisches Programmieren mit Strahlsuche<br />
Der Begriff der Strahlsuche ist die Übersetzung aus dem Englischen beam<br />
search. Die Idee hierbei ist angelehnt an einen <strong>Mensch</strong>en, der im Dunkeln mit<br />
einer Taschenlampe einen Gegenstand sucht. Der Lichtkegel der Taschenlampe<br />
kann nun verschieden breit sein. Ein sehr breiter Strahl leuchtet einen<br />
großen Bereich des Suchraumes aus. Der Mesch muß dann entsprechend lange<br />
diesen ausgeleuchteten Bereich betrachten, festzustellen, ob der gesuchte<br />
Gegenstand darin liegt. Die Wahrscheinlichkeit ihn so zu finden ist dafür<br />
groß. Klein ist diese Wahrscheinlichkeit, wenn der Lichtkegel eher schmal ist.<br />
Dafür ist das Analysieren des ausgeleuchteten Bereichs in viel kürzerer Zeit<br />
möglich. Unter Umständen ist es sogar möglich, schnell Entscheidungen zu<br />
treffen, wo die Suche fortgesetzt werden soll. Eine Strahlsuche läuft darauf<br />
hinaus einen passende Strahlbreite zu finden, die einen guten Kompromiß<br />
darstellt zwischen Suchaufwand und Wahrscheinlichkeit das Gesuchte zu<br />
finden. Ein zu enger Strahl birgt die Gefahr, daß die Suche fehlschlägt, ein<br />
zu breiter, daß sie zu lange dauert.<br />
Abb. 11.14 zeigt wie die Strahlsuche beim DTW-Algorithmus angewandt<br />
werden kann. Im Suchraum gibt es dann drei verschiedene Arten von<br />
Zuständen: wahrscheinliche, unwahrscheinliche und unbesuchte. Ein Zustand<br />
wird als wahrscheinlich angesehen, wenn die für ihn akkumulierte Distanz<br />
unterhalb eines Schwellwertes liegt, sonst gilt er als unwahrscheinlich. Die<br />
Strahlsuche expandiert jeden wahrscheinlichen Zustand entsprechend des
11.3 Spracherkennung mittels Dynamic Time Warping 175<br />
verwendeten Übergangsschemas und expandiert die unwahrscheinlichen<br />
Zustände überhaupt nicht. Dies führt dann dazu, daß einige Zustände im<br />
Suchraum auch nicht besucht werden. Für diese finden dann auch keine<br />
Berechnungen von lokalen oder kumulativen Distanzen statt, und sie werden<br />
selbstverständlich auch nicht expandiert. Zu jedem Zeitpunkt der Sucht<br />
gibt es also eine Menge expandierbarer Zustände. Wenn darunter auch der<br />
Zielzustand (rechts oben in der DTW-Matrix) ist, dann kann die Suche<br />
beendet werden.<br />
nicht besuchte<br />
Zustände<br />
unwahrscheinliche<br />
Zustände<br />
wahrscheinliche<br />
Zustände<br />
Abb. 11.14. DTW mit Strahlsuche: nur wahrscheinliche Zustände werden expan-<br />
diert<br />
Der Schwellwert, der bestimmt, welche Zustände als wahrscheinlich gelten,<br />
kann entweder empirisch festgelegt werden, oder aber man kann ihn<br />
dynamisch während der Suche modifizieren, zum Beispiel so, daß er vergrößert<br />
wird (also der Strahl verbreitert wird), wenn nur wenige Zustände<br />
wahrscheinlich sind, und daß er verkleinert wird (engerer Strahl), wenn die<br />
Expansionsrate sehr hoch ist.
12. Hidden Markov Modelle<br />
Man kann sagen, daß alle Erkenner für sprecherunabhängige kontinuierliche<br />
Erkennung großer Vokabulare entweder direkt auf der Theorie der Hidden-<br />
Markov-Modelle beruhen oder zumindest wesentliche Teile der Erkenner nach<br />
deren Prinzipien funktionieren. Wegen der großen Bedeutung der Hidden-<br />
Markov-Modelle werden sie in diesem Kapitel detailliert behandelt.<br />
12.1 Probleme mit einfachen Mustervergleichern<br />
Wie bereits bei der Einführung des DTW-Algorithmus kennengelernt,<br />
bringen einfache Vergleiche von Sprachaufnahmen einige Probleme mit sich.<br />
Nicht nur die zeitliche Verzerrung spielt da eine Rolle, sondern vor allem<br />
die Menge der Referenzmuster. Bisher sind wir immer davon ausgegangen,<br />
daß wir für jedes zu erkennende Wort ein Referenzmuster abgespeichert<br />
haben. Dies bedeutet zum einen, daß wir entweder ein durchschnittliches auf<br />
viele Einzellfälle gar nicht gut passendes Muster verwenden, oder sehr viele<br />
Muster benötigen, was wiederum ein Problem für die Erkennerlaufzeit und<br />
für das Sammeln der Muster darstellt. Man stellt schnell fest, daß der reine<br />
Mustervergleichsansatz für die Erkennung sprecherunabhängiger Sprache<br />
eher ungeeignet ist.<br />
Ein weiteres gravierendes Problem ist die Skalierung des Aufwandes mit<br />
der Vokabulargröße. Wenn wir für jedes Wort ein Muster benötigen, dann<br />
sehen wir bald ein, daß ein Erkenner für Vokabulare in der Größenordnung<br />
10 5 kaum sinnvoll realisierbar ist. Insbesondere dann, wenn für jedes Wort<br />
auch noch mehrere Muster abgelegt werden sollen. Diese müßten vorher erst<br />
einmal mühevoll gesammelt werden.<br />
Abgespeicherte Muster sind nicht nur sprecherspezifisch, sondern auch<br />
umgebungsspezifisch. Das heißt, daß die Erkennungsrate bei Sprecherwechsel<br />
aber auch bei Umgebungswechsel (anderes Mikrophon, andere Raumakustik)<br />
abfällt.
178 12. Hidden Markov Modelle<br />
Wenn es um die Erkennung kontinuierlicher Sprache geht, dann machen<br />
Mustervergleicherkenner zusätzliche Schwierigkeiten. Der Dynamic Programming<br />
Algorithmus kann zwar für kontinuierliche Sprache eingesetzt werden,<br />
aber wir haben schon bei seiner Einführung auf Probleme hinsichtlich der<br />
Effizienz bei großen Vokabularen hingewiesen.<br />
Der schwerwiegendste Nachteil (abgesehen von der Erkennungsqualität)<br />
ist aber die Abhängigkeit vom Vokabular. Wenn für jedes zu erkennende<br />
Wort ein Muster abgespeichert werden muß, bedeutet dies, daß Wörter, für<br />
die keine Muster vorhanden sind, auch nicht erkannt werden können. Dies<br />
ist vor allem für Sprachen mit vielen Flexionsmöglichkeiten wie zum Beispiel<br />
die deutsche Sprache problematisch.<br />
Der innerhalb eines Jahres verwendete Wortschatz einer Tageszeitung<br />
kann leicht in der Größenordnung 10 6 liegen. Es ist im Deutschen völlig<br />
unproblematisch, neue Wörter zu bilden, die die meisten von uns noch<br />
nie gehört haben aber trotzdem auf Anhieb verstehen. Denken Sie zum<br />
Beispiel an diesen Satz: ” Das Kondensmilchdosenloch ist zugemilcht.“ Es<br />
ist wahrscheinlich, daß Sie die Hälfte der Wörter dieses Satzes zum ersten<br />
Mal lesen. Das erste seltene Wort ( ” Kondensmilchdosenloch“) illustriert<br />
die Fähigkeit der deutschen Sprache, einzelne Wörter zu größeren zusammenzukleben.<br />
Und das zweite ( ” zugemilcht“) zeigt, wie durch Flexion ein<br />
Wort aus Partikeln (Morphemen) gebildet werden kann. Die Behandlung<br />
solcher Probleme wird auch weiterhin schwierig sein, aber wenn wir bei der<br />
Erkennung mittels einfachen Mustervergleichen wie bisher kennengelernt<br />
bleiben wollen, werden solche Probleme kaum lösbar sein.<br />
Wir sehen schon, die Problematik läuft auf die Stückelung der Sprache<br />
hinaus. Ganze Wörter scheinen für die Spracherkennung problembehaftet<br />
zu sein. Das Trainieren von einzelnen Silben oder Phonemen, um deren<br />
Muster abzuspeichern, dürfte aber auch nicht erfolgversprechend sein. Die<br />
akustische Evidenz eines Phonems in einem Sprachsignal ist ziemlich klein<br />
(im Schnitt ca. 50 bis 60 ms). Derartig kurze Muster zu vergleichen zieht<br />
sehr hohe Fehlerraten nach sich.<br />
Wie stellen wir uns also den kontinuierlichen Spracherkenner vor? Welche<br />
Eigenschaften sollte er haben?<br />
Kurze Spracheinheiten<br />
Wir wollen nicht mit ganzen Wörtern als Einheiten arbeiten. Kurze Einheiten,<br />
aus denen Wörter ” zusammengebaut“ werden können sind geeigneter,<br />
weil sie öfter in den Trainingsdaten auftreten und so besser trainiert werden<br />
können. Und wir brauchen weniger Trainingsdaten, zumindest nicht mehr so
12.1 Probleme mit einfachen Mustervergleichern 179<br />
viele Daten, daß jedes zu erkennende Wort darin vorkommt.<br />
Sprecherunabhängigkeit<br />
Wir wollen Sprache von jedem beliebigen Sprecher erkennen können, ohne<br />
daß vorher eine Einlernphase nötig wäre. Das bedeutet, daß wir keine<br />
sprecherspezifischen Muster abspeichern sollten, sondern versuchen müssen,<br />
das aus dem Sprachsignal zu extrahieren, was über alle Sprecher hinweg<br />
invariant ist. Zumindest sollten wir versuchen die Varianz über verschiedene<br />
Sprecher irgendwie zu modellieren.<br />
Kontinuierliche Sprache<br />
Wir wollen nicht auf die Erzwingung von Stillepausen zwischen einzelnen<br />
Wörtern setzen. Jeder Sprecher soll ganz natürlich sprechen dürfen und dabei<br />
Pausen machen, wann er es für richtig hält. Dabei werden wir das Problem<br />
der Koartikulationseffekte lösen müssen. Ein Wort, das isoliert gesprochen<br />
wird, hört sich ganz anders an, als wenn es in einem Satz gesprochen wird.<br />
In einigen Sprachen – wie zum Beispiel dem Englischen oder Französischen<br />
– fallen die Koartikulationseffekte wesentlich deutlicher aus als in Sprachen<br />
wie Deutsch oder Japanisch. So spricht der US-Amerikaner Wörter, die mit<br />
einem S-Laut enden aus, als würden sie mit einem SH-Laut enden, wenn<br />
die Wörter gefolgt werden von einem Wort, das mit einem Y-Laut beginnt<br />
(z.B.: this year → thishyear). Ganz extrem wird es aber, wenn durch die<br />
Koartikulation eigentlich neue Wörter entstehen, so finden heute schon die<br />
koartikulierten Folgen want to oder give me als neue Wörter wanna und<br />
gimme Einzug in Wörterbücher. Auch im Deutschen gibt es derart heftige<br />
Koartikulationen: Wir sagen zum Beispiel solche Dinge wie hammer“ statt<br />
”<br />
” haben wir“ oder ” haste“ statt hast du“. Ein einfacher Mustervergleicher<br />
”<br />
hätte damit fast unlösbare Probleme. Unser idealer Erkenner sollte damit<br />
zurechtkommen.<br />
Unbekannte Wörter<br />
Es soll möglich sein, auch nicht trainierte Wörter dadurch zu erkennen,<br />
daß ihre Komponenten erkannt werden, und das Wort als Sequenz seiner<br />
Komponenten definiert wird. So erreichen wir eine Unabhängigkeit des<br />
Erkenners vom Vokabular. Im Idealfall kann der Erkenner unverändert für<br />
jede Aufgabe verwendet werden, wenn zuvor eine Datei erstellt wurde, in<br />
der steht, wie die zu erkennenden Wörter aus den Untereinheiten gebildet<br />
werden können.
180 12. Hidden Markov Modelle<br />
Mathematisches Fundament<br />
Es wäre schön, wenn die Verfahren, die unser idealer Erkenner verwendet,<br />
auf einer soliden mathematischen Grundlage basierten. Auf diese Art wäre<br />
es dann einfacher, Algorithmen nachzuvollziehen und deren Funktionsweise<br />
und Korrektheit zu begründen.<br />
12.2 Sprache als stochastischer Prozeß<br />
Der selbe Laut hört sich jedes Mal ein bißchen anders an, selbst wenn er<br />
vom selben Sprecher unter den selben Bedingungen artikuliert wird. Es ist<br />
praktisch ausgeschlossen, daß ein <strong>Mensch</strong> zwei identische Sprachsignale der<br />
durchschnittlichen Länge eines Phonems (ca. 50ms) von sich geben kann.<br />
Wenn bei der Vorverarbeitung des Signals soviel Information entfernt wird,<br />
daß ein 50ms langer Abschnitt mit nur wenigen Parametern beschrieben<br />
wird, kann dies zwar schon mal vorkommen, aber wenn es möglich wäre,<br />
genau die Information aus einem Sprachsignal zu extrahieren, die die phonetische<br />
Klasse des gesprochenen Lauts eindeutig bestimmt, dann wäre das<br />
Problem der Spracherkennung allein schon mit dieser Vorverarbeitung gelöst.<br />
Wir können aber leicht beobachten, daß ein bestimmter Laut, mehrmals<br />
gesprochen, in seinen Signalformen gewisse Ähnlichkeiten besitzt. So können<br />
wir zwar am Signal erkennen, ob ein Laut z.B. stimmhaft oder stimmlos<br />
ist. Es ist auch nicht weiter schwer, einen Erkenner zu bauen, der nur<br />
anhand des rohen Signals ein ” Ah“- von einem ” Sch“-Laut unterscheidet,<br />
aber es ist uns dennoch nicht möglich, genau die Eigenschaften anzugeben,<br />
die ein Signal haben muß, damit ein <strong>Mensch</strong> es als ein ” Ah“ erkennt. Das<br />
geht schon allein deshalb nicht, weil sich <strong>Mensch</strong>en untereinander, selbst<br />
nach beliebig häufigem genauem Hinhören, nicht einig sind, was in einer<br />
Aufnahme tatsächlich gesprochen wurde.<br />
Experimente [?] [?] haben gezeigt, daß selbst bei Aufnahmen von<br />
vorgelesenen Texten unter perfekten Aufnahmebedingungen die Hörer nicht<br />
zu 100% in der Lage waren, den gelesenen Text korrekt wiederzugeben,<br />
sondern auch 0.5% bis 2% Fehler machten. Bei sehr schlechten Aufnahmebedingungen<br />
wie sie z.B. beim Telefon vorliegen, kommt es sogar vor, daß der<br />
eine Hörer ein Wort wie ” Okay“ versteht, während ein anderer sich sicher<br />
ist, daß ” Yeah“ gesagt wurde.<br />
Man kann also festhalten, daß sowohl gilt, ein und dasselbe Signal kann<br />
verschieden interpretiert werden, als auch ein und derselbe Laut kann und<br />
wird in der Regel bei verschiedenen Äußerungen verschieden ausfallen.
12.2 Sprache als stochastischer Prozeß 181<br />
Betrachtet man die Signale mehrerer Aufnahmen eines Lautes, so stellt<br />
man fest, daß diese (wenn geeignet vorverarbeitet) mehr oder weniger von<br />
einem ” durchschnittlichen“ Signal abweichen. Je nachdem, wie die Definition<br />
eines Lautes ist (Phonem, Phon, etc.), kann es auch oft vorkommen, daß<br />
derselbe Laut verschiedene ” durchschnittliche“ Ausprägungen hat, z.B.<br />
in verschiedenen akustischen Kontexten. Wie ein Signal für einen Laut<br />
genau aussehen wird, kann man nur mit einer gewissen Wahrscheinlichkeit<br />
vorhersagen. Das heißt, man kann den Vorgang der Spracherzeugung als<br />
stochastischen Prozeß betrachten, stochastischer Prozeß ein Prozeß der<br />
bestimmte Signale emittiert in Abhängigkeit vom Zustand, in dem er sich<br />
gerade befindet. Als Zustände können die einzelnen Laute näherungsweise<br />
angenommen werden. Wenn jemand also das Wort ” Hallo“ sagt, nehmen<br />
wir näherungsweise an, daß sein Artikulationsapparat ca. vier Zustände (H,<br />
A, L, O) durchläuft, in jedem Zustand eine gewisse Zeit verweilt und in<br />
jedem Zustand ein Signal erzeugt (bzw. Symbol emittiert), dessen Form<br />
zufällig aber abhängig vom Zustand ausfällt. Wenn wir nun noch die Zeit<br />
diskretisieren und das gesamte Modell nur zu diskreten Zeitpunkten betrachten,<br />
wenn wir außerdem den Zustandswechseln zu jedem Zeitpunkt eine<br />
Wahrscheinlichkeit zuordnen, dann erhalten wir ein Markov Modell. Markov<br />
Modelle werden in der Forschung in verschiedenen Disziplinen verwendet.<br />
In der Spracherkennung typische Topologien sind in Abb. 12.1 dargestellt.<br />
Bei ergodischen Modellen sind alle Zustandsfolgen gleich gut möglich.<br />
Solche Modelle werden nur für spezielle Teilaufgaben der Spracherkennung<br />
verwendet. Für die Modellierung von Sprache findet man viel häufiger mehr<br />
oder weniger linear angeordnete Zustande. Im einfachsten Fall hat jeder<br />
Zustand nur einen Übergang zum nächsten Zustand und zu sich selbst.<br />
Beim Bakis-Modell kommen zusätzlich noch Übergänge zum übernächsten<br />
Zustand dazu. Dieses Bakis-HMM entspricht dem Bakis-Übergangsmuster<br />
beim DTW-Algorithmus (vgl. Abs. 11.2.1). Einige Erkenner verwendet noch<br />
weitere Sprünge, so daß – wie im links-nach-rechts Modell gezeigt beliebig<br />
viele Zustände übersprungen werden können. Gelegentlich ist es sinnvoll<br />
zwei einfache Modelle als Alternativen parallel zu schalten. Dies wird vor<br />
allem dann genutzt, wenn für dasselbe Phänomen zwei verschiedene Modelle<br />
(z.B. zwei verschiedene Aussprachen desselben Wortes) eingesetzt werden.<br />
Ein gerne verwendetes Beispiel für Markov Modelle ist das Wetter.<br />
Man stelle sich vor, das Wetter kann zwei Zustände annehmen, nämlich<br />
” schönes Wetter“ und schlechtes Wetter“. Dabei kann sowohl bei schönem<br />
”<br />
Wetter als auch bei schlechtem Wetter die Sonne scheinen. Sicher ist es<br />
wahrscheinlicher, daß man das Wetter als schön bezeichnet, wenn die<br />
Sonne scheint, aber auch ohne Sonnenschein kann dies mit einer kleinen<br />
Wahrscheinlichkeit vorkommen. Außerdem kann man meist beobachten, daß<br />
das Wetter ein wenig konstant ist. Das heißt, wenn das Wetter erst einmal
182 12. Hidden Markov Modelle<br />
linear<br />
links-nach-rechts<br />
alternative Pfade<br />
Bakis<br />
ergodisch<br />
Abb. 12.1. Verschiedene Topologien für Hidden-Markov-Modelle<br />
schlecht ist, dann ist die Wahrscheinlichkeit dafür, daß es am nächsten<br />
Tag auch schlecht ist, größer, als daß es gut ist (ungeachtet irgendwelcher<br />
Wettervorhersagen). Man könnte zwei Wochen lang das Wetter beobachten<br />
und jeden Tag notieren, ob das Wetter schön oder schlecht war und ob<br />
die Sonne geschienen hat. Dann könnte eine Tabelle wie 12.2 entstehen (+<br />
bedeutet schönes Wetter, − bedeutet schlechtes Wetter).<br />
Tag 1 2 3 4 5 6 7 8 9 10 11 12 13 14<br />
Zustand + + + + – – – + + – – + + +<br />
Sonne<br />
Tabelle 12.1. Beispiel für 14 Tage Wetterbeobachtungen<br />
Der Tabelle kann man entnehmen, daß von den 14 protokollierten Tagen<br />
9 als schön und 5 als schlecht markiert wurden. An 6 der 9 schönen Tage<br />
schien die Sonne, während sie nur an einem der 5 schlechten Tage zu sehen<br />
war. Insgesamt fanden zwischen den 14 Tagen 13 Zustandsübergänge statt,<br />
davon waren 6 Übergänge von schön“ nach schön“, 2 von schön“ nach<br />
” ” ”<br />
” schlecht“, 3 von ” schlecht“ nach ” schlecht“ und 2 von schlecht“ nach<br />
”<br />
” schön“. Das heißt zum Beispiel, daß die Wahrscheinlichkeit, dafür daß das<br />
Wetter, wenn es einmal schön ist, mit 75%-iger Wahrscheinlichkeit auch am
12.2 Sprache als stochastischer Prozeß 183<br />
folgenden Tag schön ist. Daraus läßt sich das Markov Modell in Abbildung<br />
12.2 konstruieren.<br />
Die Zustandsübergänge sind mit ihren entsprechenden Wahrscheinlichkeiten<br />
markiert. In jedem Zustand ist zudem eine diskrete Wahrscheinlichkeitsverteilung<br />
über dem diskreten Raum der zwei möglichen Beobachtungen<br />
” Sonnenschein“ und kein Sonnenschein“ gegeben. Entsprechend der Sprech-<br />
”<br />
weise ein Zustand emittiert ein Merkmal“ werden diese Verteilungen auch<br />
”<br />
Emissionswahrscheinlichkeitsverteilungen genannt. In diesem Beispiel sind<br />
wir davon ausgegangen, daß am ersten Tag der Beobachtungen schönes<br />
Wetter war.<br />
Da wir nur zwei Wochen protokolliert haben, können wir keine sinnvolle<br />
Aussage über die Wahrscheinlichkeit der Art des ersten Zustandes machen.<br />
Würden wir mehrere unabhängige Beobachtungssequenzen protokollieren,<br />
dann könnten wir aus den einzelnen ersten Zuständen auch eine Wahrscheinlichkeitsverteilung<br />
für diese schätzen.<br />
P( |+)<br />
P(¬ |+)<br />
P(−|+)<br />
P(+|+)<br />
+ −<br />
P(+|−)<br />
P(−|−)<br />
Abb. 12.2. HMM zur Modellierung des Wetters<br />
P( |−)<br />
P(¬ |−)<br />
Abb. 12.2 stellt das HMM dar, das die Beobachtung von Tab. 12.2<br />
modelliert. Hierbei ist die Wahrscheinlichkeit für einen Übergang von<br />
gutem zu gutem Wetter P(+|+) = 0.75, von guten zu schlechten Wetter<br />
P(−|+) = 0.25, von schlechtem zu gutem Wetter P(+|−) = 0.4, und dafür<br />
daß das Wetter schlecht bleibt P(−|−) = 0.6. Die Wahrscheinlichkeit dafür,<br />
bei schönem Wetter Sonnenschein zu beobachten, ist P( |+) = 2/3, bei<br />
schönem Wetter keine Sonne zu sehen P(¬ |+) = 1/3, bei schlechtem<br />
Wetter die Sonne zu sehen P( |−) = 0.2 und bei schlechtem Wetter keine<br />
Sonne zu sehen P(¬ |−) = 0.8.<br />
Das so erhaltene Markov Modell kann nun auch dazu verwendet werden,<br />
beispielhafte Zustandsfolgen und Beobachtungssequenzen zu generieren. Wir<br />
nehmen der Einfachheit halber an, daß am ersten Beobachtungstag immer<br />
schönes Wetter ist. Dann lassen wir einen Zufallsgenerator entsprechend
184 12. Hidden Markov Modelle<br />
der Emissionswahrscheinlichkeitenverteilung des Zustands ” schön“ mit<br />
9/14 Wahrscheinlichkeit die Sonne scheinen. Dann wählen wir zufällig den<br />
Zustand für den zweiten Tag, der mit 75%-iger Wahrscheinlichkeit wieder<br />
schön sein wird, und machen von dort aus weiter.
12.2 Sprache als stochastischer Prozeß 185<br />
Experiment 12.1: Markov Modell als Wetter-Zufallsgenerator<br />
Starten Sie das Applet WeatherHMM und klicken Sie auf Rücksetzen . Auf<br />
dem Bildschirm sind die Zustände ” schön“ und ” schlecht“ dargestellt mit<br />
ihren möglichen Übergängen und den initialen Übergangswahrscheinlichkeiten.<br />
Neben jedem Zustand ist eine diskrete Wahrscheinlichkeitsverteilung<br />
in Form eines Balkendiagramms zu sehen. Jeder Zustand ist außerdem<br />
mit der Wahrscheinlichkeit π, erster Zustand zu sein, versehen. Rechts<br />
neben der Modelldarstellung sehen Sie einen Kalenderausschnitt, in dem<br />
die Wetterbeobachtungen und Zustandsbestimmungen protokolliert werden.<br />
Der Kalender ist zunächst leer.<br />
Jedes Mal, wenn Sie auf Nächster Tag klicken wird für den nächsten<br />
freien Kalendertag ein neuer Zustand zufällig gewählt und dann zufällig die<br />
Beobachtung ” Sonnenschein“ oder ” kein Sonnenschein“ gemacht.<br />
Sie können durch Klicken auf einen Wahrscheinlichkeitswert (Übergang oder<br />
Emissionswahrscheinlichkeit oder Initialwahrscheinlichkeit) diesen um 0.1<br />
erhöhen. Dabei wird die entsprechende Komplementärwahrscheinlichkeit<br />
automatisch um 0.1 erniedrigt.<br />
Versuchen Sie, verschiedene Wahrscheinlichkeitswerte einzustellen, und<br />
erzeugen Sie zufällige Zustandsfolgen.<br />
Das obige Protokoll wäre mit seinen 9 schönen Tagen vermutlich im<br />
Sommer gemacht worden. In einem Wintermonat hätte das Protokoll<br />
wohl anders ausgesehen, und wir hätten ein anderes Markov Modell erhalten.<br />
Wäre neben dem Sommermodell auch ein Wintermodell definiert,<br />
bestünde eine interessanteste Aufgabe darin, festzustellen, welches Modell<br />
am wahrscheinlichsten für eine gegebene Beobachtung ist. Oder – um<br />
wieder in die Terminologie der Spracherkennung zu kommen – welches Wort<br />
am wahrscheinlichsten gesprochen wurde, wenn uns nur die Beobachtung<br />
gewisser Merkmale gegeben ist. Bevor wir uns diesem Problem zuwenden<br />
betrachten wir zunächst einige einfachere Probleme. Das einfachste wird<br />
allgemein als das Evaluierungsproblem bezeichnet. Dabei geht es darum, bei<br />
einem gegebenen Markov Modell die gemeinsame Wahrscheinlichkeit für eine<br />
Zustandsfolge und Beobachtungsfolge zu ermitteln. Um dies zu berechnen<br />
führen wir im folgenden einen Formalismus ein.
186 12. Hidden Markov Modelle<br />
12.3 Der HMM-Formalismus<br />
Definition: Ein Markov Modell λ ist ein Fünftupel (S, A, B, π, V ). Dabei<br />
sind die Komponenten eines HMMs gegeben als:<br />
S Die Menge aller Zustände: S = {s1, . . .sn}<br />
A Die Zustandsübergangsmatrix: A = (aij), mit aij ist die Wahrscheinlichkeit,<br />
daß nach Zustand si der Zustand sj folgt.<br />
B Die Menge der Emissionswahrscheinlichkeitsverteilungen bzw.<br />
Dichten: B = {b1, . . . bn}, bi(x) = die Wahrscheinlichkeit, im Zustand<br />
si die Beobachtung x zu machen.<br />
π Die Anfangswahrscheinlichkeitsverteilung: π(i) = Wahrscheinlichkeit,<br />
daß si der erste Zustand ist<br />
V Der Merkmalsraum, d.h. der Definitionsbereich von bi, der diskret<br />
sein kann (V = {v1, v2, . . .} ⇒ bi ist Wahrscheinlichkeit) oder<br />
kontinuierlich sein kann (V = R d ⇒ bi ist Dichte)<br />
Gelegentlich findet man in der Literatur auch Definitionen für Markov<br />
Modelle, bei denen die Emissionen nicht an Zustände sondern<br />
an Zustandsübergänge gebunden sind. Dann wird nicht von einer zustandsindizierten<br />
Menge von Emissionswahrscheinlichkeitsverteilungen<br />
B = {b1, . . . bn} gesprochen, sondern von einer übergangsindizierten Menge<br />
B = {b1,1, . . . b1,n, . . . bn,n} wobei bi,j(x) die Wahrscheinlichkeit dafür ist,<br />
daß beim Übergang von Zustand si in den Zustand sj die Beobachtung x<br />
emittiert wird. Je nach Sichtweise kann man mit den zustandsindizierten<br />
Modellen bestimmte Sachverhalte kompakter ausdrücken, aber qualitativ<br />
unterscheiden sich die beiden Modellarten nicht. Keines ist wirklich mächtiger.<br />
Mit welcher Art man rechnet, hängt eher vom eigenen Geschmack oder<br />
von der Implementierung ab.<br />
Selbstverständlich müssen die Komponenten von HMMs bestimmte Eigenschaften<br />
erfüllen, damit das mathematische Fundament korrekt ist. Dazu<br />
gehören:<br />
• Anfangswahrscheinlichkeiten:<br />
Offensichtlich muß gelten n i=1 π(i) = 1. In der Praxis wird meist eine<br />
Vereinfachung verwendet, wonach π(i) = 1 für i = 0 und π(i) = 0 für<br />
alle anderen Zustände. Damit entfällt zum einen das Trainieren der<br />
Anfangswahrscheinlichkeiten und zum anderen vereinfacht es die Lösung
12.4 Die drei Probleme der Hidden Markov Modelle 187<br />
der unten vorgestellten zentralen Probleme der Hidden Markov Modelle.<br />
Da HMMs für Spracherkennung in der Regel immer eine Äußerung<br />
umfassen, die dadurch gekennzeichnet ist, daß davor und danach Stille<br />
ist. Daher kann man normalerweise problemlos davon ausgehen, daß bei<br />
jedem Sprach-HMM der jeweils erste und letzte Zustand fest vorgegeben<br />
sind und für den Stille-Laut stehen.<br />
• Übergangswahrscheinlichkeiten:<br />
Die Summe der Wahrscheinlichkeiten aller aus einem Zustand ausgehenden<br />
Übergänge muß 1 sein: n<br />
j=1 aij = 1. Dies gilt natürlich nicht für die<br />
eingehenden Übergänge. In der Spracherkennung werden – abgesehen<br />
von gelegentlichen Spezialproblemen – keine Hidden Markov Modelle<br />
verwendet, bei denen es möglich wäre von jedem Zustand in jeden anderen<br />
überzugehen. So gilt meist, daß die meisten Koeffizienten der Matrix A<br />
der Zustandsübergangswahrscheinlichkeiten 0 sind, und lediglich in der<br />
Nähe der Diagonalen Werte ungleich 0 auftreten.<br />
Der Begriff der Hidden Markov Modelle hat sich so auch im Deutschsprachigen<br />
Raum eingebürgert, auch wenn man gelegentlich von ” versteckten“<br />
oder ” verdeckten“ Markov Modellen spricht. Sie heißen so, weil die tatsächliche<br />
Zustandsfolge, die ein stochastischer Prozeß durchläuft, im Verborgenen<br />
bleibt. Es ist für eine gegebene Beobachtung lediglich möglich, eine Aussage<br />
darüber zu treffen, welche Zustandsfolge welche Wahrscheinlichkeit hat, aber<br />
nicht welche ” in Wirklichkeit“ durchlaufen wurde.<br />
12.4 Die drei Probleme der Hidden Markov Modelle<br />
Sicherlich gibt es unzählige Probleme, die mit Hilfe von Hidden Markov<br />
Modellen bearbeitet werden können, ebenso zahlreich sind die Probleme, auf<br />
die man stößt, wenn man Hidden Markov Modelle entwickeln und mit ihnen<br />
arbeitet möchte. In diesem Abschnitt werden die drei als fundamental angesehenen<br />
Probleme, das Evaluierungsprobleme, das Dekodierungsproblem<br />
und das Optimierungs- bzw. Lernproblem behandelt. Alle drei Probleme<br />
gehen von der gleichen Ausgangssituation aus: Es ist ein bereits vorhandenes<br />
HMM und eine Beobachtung gegeben. Das Evaluierungsproblem betrifft<br />
die Berechnung der Wahrscheinlichkeit, mit der das gegebene HMM die<br />
gegebene Beobachtung emittiert. Das Dekodierungsproblem beschreibt, wie<br />
die in der Praxis weder bekannte noch meist überhaupt tatsächlich vorhandene<br />
Zustandsfolge berechnet werden kann, bzw. wie die wahrscheinlichste<br />
unter ihnen gefunden wird. Das Optimierungs- oder Lernproblem versucht
188 12. Hidden Markov Modelle<br />
aus dem gegebenen HMM ein neues zu berechnen, das mit einer größeren<br />
Wahrscheinlichkeit die gegebene Beobachtung emittiert.<br />
12.4.1 Das Evaluierungsproblem<br />
Formal läßt sich das Evaluierungsproblem wie folgt beschreiben:<br />
gegeben: HMM λ und Beobachtung X = (x1, x2, . . . xT)<br />
gesucht: die Wahrscheinlichkeit P(X|λ)<br />
Betrachten wir zuvor ein einfacheres Problem, nämlich das Evaluierungsproblem<br />
mit zusätzlich gegebener Zustandsfolge:<br />
gegeben: HMM λ und Beobachtung X = (x1, x2, . . .xT) und Zustandsfolge<br />
sq1, sq2, . . . sqT<br />
gesucht: die Wahrscheinlichkeit P(X|λ, sq1, sq2, . . .sqT )<br />
Diese Wahrscheinlichkeit läßt sich direkt aus der Definition der Hidden<br />
Markov Modelle ableiten. Sie beträgt:<br />
<br />
T −1<br />
P(X|λ, sq1, sq2, . . . sqT ) = π(sq1)bq1(x1)<br />
vereinfachtes Evaluierungsproblem<br />
k=1<br />
Experiment 12.2: Das vereinfachte Evaluierungsproblem<br />
aqk,qk+1 bk+1(xk+1) (12.1)<br />
Starten sie das Applet WeatherHMM und klicken Sie auf Rücksetzen .<br />
Geben Sie eine beliebige Folge von Beobachtungen und Zuständen ein.<br />
Klicken Sie auf die Schaltfläche Evaluieren .<br />
Je nachdem, was für ein Merkmalsraum verwendet wird, also je<br />
nachdem, ob die xt diskrete oder kontinuierliche Beobachtungen sind,<br />
berechnet man mit dem Evaluierungsproblem eine Wahrscheinlichkeit<br />
P(X|λ, sq1, sq2, . . .sqT ) oder eine Dichte p(X|λ, sq1, sq2, . . .sqT ). Der<br />
Einfachheit halber beschränken wir uns hier auf die Version mit der
12.4 Die drei Probleme der Hidden Markov Modelle 189<br />
Wahrscheinlichkeit. Die Gleichungen werden zunächst für beide Versionen<br />
identisch sein.<br />
Aus Gleichung 12.1 und aus<br />
P(X|λ) = <br />
P(X|λ, sq1, sq2, . . .sqT ) (12.2)<br />
q1,q2,...qT<br />
läßt sich ableiten:<br />
P(X|λ) = <br />
q1,q2,...qT<br />
T −1<br />
π(sq1) · bq1(x1) · aqk,qk+1 · bk+1(xk+1) (12.3)<br />
Gleichung 12.3 drückt also aus, daß sich die Wahrscheinlichkeit, X im<br />
Modell λ zu beobachten, aus der Summe der entsprechenden bedingten<br />
Wahrscheinlichkeiten über alle Zustandsfolgen berechnen läßt. (Man beachte,<br />
daß die Laufvariable der Summe eine Zustandsfolge als Wert hat und nicht<br />
einzelne Zustände.) Offensichtlich läßt sich dies – obwohl als geschlossene<br />
Formel gegeben – so nur für triviale Markov Modelle mit sehr wenigen<br />
Zuständen berechnen. Bei n verschiedenen Zuständen gibt es immerhin n!<br />
verschiedene Zustandsfolgen. Eine andere Art der Berechnung ist also nötig.<br />
Am anschaulichsten wird das Evaluierungsproblem mit Hilfe des<br />
Forward-Algorithmus berechnet. Der Begriff ” Forward“-Algorithmus kommt<br />
vom so genannten ” Forward-Backward“ Algorithmus, der zur Lösung des<br />
Optimierungsproblems verwendet wird. Für das Evaluierungsproblem wird<br />
nur ein Teil des Forward-Backward verwendet. Die zentrale Idee hinter dem<br />
Forward-Algorithmus ist die rekursive Berechnung von P(x1, x2, . . . xt|λ) als<br />
Funktion von t − 1:<br />
Offensichtlich gilt:<br />
k=1<br />
P(x1, x2, . . . xT |λ)<br />
= <br />
j=1..n P(x1, x2, . . . xT , qT = j |λ)<br />
(12.4)<br />
Übrigens gilt Gleichung 12.4 selbstverständlich nicht nur für qT sondern<br />
auch für jedes beliebige qt.<br />
Sei nun<br />
αt(j) = P(x1, x2, . . .xt, qt = j|λ) (12.5)<br />
Es bezeichnet also αt(j) die Wahrscheinlichkeit, daß sich das HMM λ<br />
zum Zeitpunkt t im Zustand sqt befindet und bis dahin die Beobachtung<br />
x1, x2, . . .xt gemacht bzw. emittiert wurde. Ähnlich wie beim Dynamischen<br />
Programmieren in Abschnitt 11.2 kann αt(j) berechnet werden aus verschiedenen<br />
αt−1(. . .).
190 12. Hidden Markov Modelle<br />
αt−1(1)<br />
αt−1(i)<br />
αt−1(n)<br />
...<br />
si<br />
...<br />
aij<br />
a1j<br />
anj<br />
Abb. 12.3. Berechnung von αt(. . .) aus αt−1(. . .)<br />
αt(j)<br />
Die Wahrscheinlichkeit, zum Zeitpunkt t im Zustand j zu sein, läßt sich<br />
berechnen aus den Wahrscheinlichkeiten, zum Zeitpunkt t − 1 im Zustand<br />
si, (i = 1 . . .N) zu sein und dann den Übergang von si nach sj zu machen.<br />
Wenn wir dann noch zusätzlich die Beobachtung weiterführen erhalten wir<br />
(s. Abb. 12.3 und 12.4):<br />
αt(j) = bj(xt) ·<br />
N<br />
αt−1(i) · aij<br />
i=1<br />
(12.6)<br />
Den Rekursionsanfang machen die α1(j), die Wahrscheinlichkeit, als<br />
erstes mit dem Zustand sj anzufangen und dabei x1 zu beobachten. Also ist<br />
α1(j) = π(j) · bj(x1).<br />
αt(j + 1)<br />
p(x1, . . . xt−1, qt−1 = j + 1|λ)<br />
αt(j)<br />
p(x1, . . . xt−1, qt−1 = j|λ)<br />
αt(j − 1)<br />
p(x1, . . . xt−1, qt−1 = j − 1|λ)<br />
αt(j − 2)<br />
p(x1, . . . xt−1, qt−1 = j − 2|λ)<br />
αt+1(j)<br />
p(x1, . . . xt, qt = j|λ)<br />
Abb. 12.4. Der Schritt im Forward-Algorithmus: αt(j) = bj(xt) <br />
i aijαt−1(i)
12.4 Die drei Probleme der Hidden Markov Modelle 191<br />
Der gesuchte Wert für die Wahrscheinlichkeit, bei gegebenem HMM λ die<br />
Beobachtung X = x1, x2, . . .xn zu machen, läßt sich direkt aus den Gl. 12.4<br />
und 12.5 folgern:<br />
P(X|λ) =<br />
n<br />
αT(j) (12.7)<br />
j=1<br />
Durch die rekursive Definition von αt(j) läßt sich nun P(X|λ) statt<br />
durch Gl. 12.3 in O(T · n T ) mit dem Forward-Algorithmus viel schneller in<br />
O(T · n) berechnen (unter der Annahme, daß die Zahl der Übergänge mit<br />
positiver Wahrscheinlichkeit für jeden Zustand durch eine kleine Konstante<br />
nach oben begrenzt ist). Der Forward-Algorithmus ist zudem auch sehr<br />
speichereffizient, weil zu jedem Zeitpunkt t lediglich Speicherplatz für die<br />
αt−1(. . .) und die αt(. . .) benötigt wird. Alle zuvor berechneten α1...t−2(. . .)<br />
werden nicht mehr benötigt. D.h. aus der Sicht eines DP-Algorithmus<br />
werden immer nur zwei Spalten der DP-Matrix im Speicher gehalten.<br />
Mit Hilfe des Forward-Algorithmus läßt sich auch ein Erkennungsalgorithmus<br />
konstruieren. Hierbei gehen wir davon aus, daß eine Sprachaufnahme in<br />
eine von K Klassen klassifiziert werden muß. Diese Klassen könnten beispielsweise<br />
einzelne Phoneme, ganze Wörter oder sogar Phrasen sein. Gesucht ist<br />
also zu einer Aufnahme X die Klasse Ĉ mit:<br />
Ĉ = argmax<br />
C<br />
P(λC|X) = argmaxP(X|λC)<br />
· P(C) (12.8)<br />
C<br />
wobei λC das zur Klasse C gehörende HMM ist, und P(C) die zuvor<br />
ermittelte a priori Wahrscheinlichkeit für die Klasse C ist. Die Klassifikation<br />
läuft so ab, daß für alle in Frage kommenden Klassen mit Hilfe<br />
des Forward-Algorithmus P(X|λC) berechnet wird und unter allen das<br />
Maximum entsprechend Gl. 12.8 gewählt wird.<br />
Experiment 12.3: Erkennung mit dem Forward-Algorithmus<br />
Starten sie das Applet WeatherHMM und klicken Sie auf Rücksetzen .<br />
Geben Sie irgend eine Folge X von Beobachtungen ohne Zustände ein.<br />
Wählen Sie einmal das Sommer-Modell und klicken Sie auf die Schaltfläche<br />
Evaluieren . Das Ergebnis ist der Wert P(X|Sommer). Berechnen sie<br />
entsprechend P(X|Winter).<br />
Unter der Annahme, daß P(Sommer) = P(Winter) kann man nun schließen,<br />
daß wenn P(X|Sommer) > P(X|Winter) und die Beobachtung X gemacht<br />
wurde, die aktuelle Jahreszeit eher der Sommer ist.
192 12. Hidden Markov Modelle<br />
Wiederholen Sie dieses Experiment für verschiedene Beobachtungen und für<br />
verschiedene Einstellungen der Sommer- und Winterparameter.<br />
12.4.2 Das Dekodierungsproblem<br />
Beim Dekodierungsproblem manifestiert sich ganz besonders die Tatsache,<br />
daß Hidden Markov Modelle eben doch nur Modelle sind, die die Wirklichkeit<br />
mehr oder weniger gut modellieren. Man kann sagen, ein Modell ist dann<br />
gut, wenn es die Wirklichkeit zuverlässig vorhersagen kann. Im Falle der<br />
Hidden Markov Modelle hieße das, daß ein HMM gut ist, wenn der Wert<br />
P(X|λ) der tatsächlichen Wahrscheinlichkeitsverteilung sehr ähnlich ist.<br />
Allerdings ergeben sich hierbei zwei kaum lösbare Probleme: Zum einen<br />
läßt sich die ” tatsächliche“ Wahrscheinlichkeitsverteilung meist gar nicht<br />
bestimmen und die vom HMM berechnete Modellverteilung ist sowieso die<br />
beste bekannte. Zum anderen bleibt es fragwürdig, ob ein Hidden Markov<br />
Modell überhaupt geeignet ist. Insbesondere muß man sich die Frage gefallen<br />
lassen, welcher Zustand der Wirklichkeit einem Zustand des Markov Modells<br />
entspricht, oder sogar noch tiefgreifender: läuft die Wirklichkeit überhaupt<br />
in Zuständen und Zustandsübergängen statt. Aus der Sicht der Spracherkennung<br />
könnten Zustände der Sprachproduktion in etwa den IPA-Lauten<br />
entsprechen. Betrachten wir aber ein digitalisiertes Sprachsignal, so sehen<br />
wir in der Regel keine exakt bestimmbaren Zeitpunkte, an denen ein Laut<br />
endet und der folgende Laut anfängt. Ähnlich wie bei Diphthongen, die<br />
Übergänge von einem in einen anderen Vokal sind, gibt es auch bei fast<br />
allen Lautpaaren mehr oder weniger fließende Übergänge. Zwar ist es oft<br />
möglich, einen Bereich des Sprachsignals eindeutig einem Laut zuzuordnen,<br />
aber die Übergänge sind eher unscharf, so daß man nicht von einem klaren<br />
Zustandsübergang sprechen kann. Trotzdem muß das HMM die Wirklichkeit<br />
so modellieren, als würden Sprünge stattfinden.<br />
Das Dekodierungsproblem hat zum Ziel, herauszufinden, welche Zustandsfolge<br />
am ehesten durchlaufen wurde. Formal bedeutet das:<br />
gegeben: HMM λ und Beobachtung X = (x1, x2, . . . xT)<br />
gesucht: die wahrscheinlichste Zustandsfolge sq1, sq2, . . .sqT<br />
also<br />
argmax P(q1, q2, . . . qT |x1, x2, . . . xT , λ) (12.9)<br />
q1,q2,...qT<br />
Dies läßt sich nach Bayes schreiben als
12.4 Die drei Probleme der Hidden Markov Modelle 193<br />
P(q1, q2, . . . qT , x1, x2, . . .xT |λ)<br />
argmax<br />
q1,q2,...qT P(x1, x2, . . .xT |λ)<br />
(12.10)<br />
= argmax P(q1, q2, . . . qT , x1, x2, . . .xT |λ) (12.11)<br />
q1,q2,...qT<br />
Ähnlich wie beim Forward-Algorithmus können wir sowohl den<br />
Wert maxq1,q2,...qt P(q1, q2, . . .qt , x1, x2, . . . xt|λ) aus der Kenntnis von<br />
P(q1, q2, . . . qt−1 , x1, x2, . . . xt−1|λ) für alle q1, q2, . . . qt−1 berechnen, als auch<br />
den für jeden Zustand j zum Zeitpunkt t ” besten“ Vorgängerzustand rt(j)<br />
(s. Abb. 12.5 und 12.6):<br />
zt(j) = bj(xt)max<br />
i aijzt−1(i) (12.12)<br />
rt(j) = argmaxaijzt−1(i)<br />
i<br />
(12.13)<br />
zt−1(1)<br />
zt−1(i)<br />
zt−1(n)<br />
...<br />
si<br />
...<br />
aij<br />
a1j<br />
rt(j)<br />
anj<br />
Abb. 12.5. Berechnung von zt(. . .) aus zt−1(. . .)<br />
zt(j)<br />
Das Verfahren, das auf die iterative Auswertung der Gl. 12.12 und<br />
12.13 basiert ist dem Forward-Algorithmus insofern ähnlich, als es die<br />
gleichen Vorwärtsschritte verwendet, wobei statt der Addition von Wahrscheinlichkeiten<br />
deren Maximierung durchgeführt wird. Er ist auch dem<br />
DTW-Algorithmus insofern ähnlich, als zt(j) der kumulativen Distanz des<br />
Zustands (t, j) entspricht, wobei statt der Minimierung der Distanzsumme<br />
hier eine Maximierung der Wahrscheinlichkeit berechnet wird. Dieser<br />
Algorithmus wird Viterbi-Algorithmus [?] genannt, nach Andrew Viterbi<br />
[?]. Genau so wie beim DTW-Algorithmus werden auch beim Viterbi-<br />
Algorithmus Rückwärtszeiger gespeichert (Gl. 12.13 entspricht Gl. 11.3),<br />
aus denen dann ein Viterbi-Pfad q∗ 1, q∗ 2, . . .q ∗ T rekursiv berechnet wird gemäß:<br />
q ∗ t =<br />
argmaxj zT(j) für t = T<br />
rt(q ∗ t+1) für t < T<br />
(12.14)
194 12. Hidden Markov Modelle<br />
zt(j + 1)<br />
max t−1 P(Q Q<br />
1<br />
t−1<br />
1 , qt−1 = j + 1 , X t−1<br />
1 |λ)<br />
zt(j)<br />
max t−1 P(Q Q<br />
1<br />
t−1<br />
1 , qt−1 = j , X t−1<br />
1 |λ)<br />
zt(j − 1)<br />
max t−1 P(Q Q<br />
1<br />
t−1<br />
1 , qt−1 = j − 1 , X t−1<br />
1 |λ)<br />
zt(j − 2)<br />
max t−1 P(Q Q<br />
1<br />
t−1<br />
1 , qt−1 = j − 2 , X t−1<br />
1 |λ)<br />
zt+1(j)<br />
max Q t 1 P(Q t 1, qt = j , X t 1|λ)<br />
Abb. 12.6. Der Viterbi-Schritt: zt(j) = bj(xt) maxi aijzt−1(i)<br />
Ähnlich der Forderung beim DTW-Algorithmus, daß der DTW-Pfad<br />
im Zustand, der dem rechten oberen DP-Matrixelement entspricht, enden<br />
soll, verwendet man gerne HMM-Architekturen, die einen ausgezeichneten<br />
Finalzustand qF haben, so daß in Gl. 12.14 q∗ T = qF gesetzt wird.<br />
Abschließend sei noch einmal bemerkt, daß der Viterbi-Algorithmus<br />
nicht berechnet, durch welche Zustände ein als HMM modellierter stochastischer<br />
Prozeß gelaufen sein muß, um eine bestimmte Beobachtungssequenz<br />
zu emittieren, sondern vielmehr die wahrscheinlichste Folge unter vielen<br />
möglichen.<br />
12.4.3 Das Optimierungsproblem<br />
Spracherkenner werden ” trainiert“, auch solche, die sprecherunabhängig<br />
sind. Hidden Markov Modelle sind viel zu kompliziert, als daß es eine<br />
einfache Methode gäbe, für alle Parameter eines Erkenners analytisch<br />
mit Hilfe einer geschlossenen Formel den optimalen Wert zu berechnen.<br />
Daher werden solche Systeme iterativ optimiert. Im Gegensatz zu manchen<br />
mathematischen (stochastischen oder konnektionistischen) Modellen ist es<br />
bei nichttrivialen HMMs nicht einfach möglich, als Optimierungskriterium<br />
die Erkennungsgenauigkeit zu berechnen und diese nach jedem Parameter<br />
abzuleiten, um so diejenige Änderung des Parameters zu bestimmen, die den<br />
besten Effekt auf die Optimierungsfunktion hat.<br />
Iteratives Optimieren bei Hidden Markov Modellen bedeutet, daß wir<br />
zu verschiedenen Zeitpunkten i verschiedene Modelle λi haben, so daß gilt:
12.4 Die drei Probleme der Hidden Markov Modelle 195<br />
Q(λi+1) > Q(λi) für eine bestimmte Optimierungsfunktion Q. Optimal wäre<br />
Q = Worterkennungsrate. Sinnvolle Regeln, wie λi+1 dann aus λi berechnet<br />
werden könnte, wurden dafür noch nicht gefunden. Auch wenn in einigen<br />
Experimenten andere Optimierungskriterien mit unterschiedlichem Erfolg<br />
untersucht wurden, so hat sich dennoch das Verfahren durchgesetzt, das die<br />
Beobachtungswahrscheinlichkeit der Trainingsdaten (also das Evaluierungsproblem)<br />
optimiert. Wenn X die Beobachtung der gesamten Trainingsdaten<br />
darstellt, dann läßt sich das Optimierungsproblem formal definieren als:<br />
gegeben: HMM λ und Beobachtung X = (x1, x2, . . . xT)<br />
gesucht: λ ′ , wobei p(X|λ ′ ) > p(X|λ).<br />
Um die Parameter von λ zu optimieren, wäre es gut, die Wahrscheinlichkeit<br />
γt(i) := P(qt = i|x1, x2, . . . xT,λ), zu kennen. Dieser Wert könnte<br />
dann als ” Gewichtung“ benutzt werden, mit der die Beobachtung xt in<br />
das Training der Parameter des Zustands si eingehen soll. γt(i) ist die<br />
Wahrscheinlichkeit dafür, daß sich der durch λ modellierte Prozeß zum<br />
Zeitpunkt t im Zustand si befindet, wenn die Beobachtung x1, x2, . . .xT<br />
gegeben ist.<br />
Der Forward-Algorithmus berechnet den Wert P(qt = i, x1, x2, . . . xt|λ)<br />
(s. Gl. 12.5). Im Hinblick darauf, daß wir später mit Hilfe der Bayes-Regel die<br />
Bedingung und das Ereignis im Wahrscheinlichkeitsterm vertauschen können,<br />
können wir an dieser Stelle versuchen, den Term P(qt = i, x1, x2, . . . xT |λ)<br />
zu berechnen, also in Abweichung von αt(i) die Wahrscheinlichkeit zum<br />
Zeitpunkt t in si zu sein und die komplette Beobachtung X zu machen.<br />
Dann erhalten wir:<br />
P(qt = i, x1, . . . xT |λ) = P(qt = i, x1, . . . xt|λ)<br />
· P(xt+1, . . . xT |qt = i, λ)<br />
<br />
αt(i) fehlender Term<br />
Wenn wir den fehlenden Term mit βt(i) bezeichnen, dann ergibt sich:<br />
P(qt = i, x1, . . . xT |λ) = αt(i) · βt(i) (12.15)<br />
Der fehlende Term βt(i) gibt die Wahrscheinlichkeit dafür an, daß die<br />
” zweite Hälfte“ der Beobachtung, also (xt+1, xt+2, . . .xT) beobachtet wird<br />
unter der Bedingung, daß sich das System zum Zeitpunkt t im Zustand si<br />
befindet. Das Produkt der αt(i) und βt(i) ergibt zwar nicht den gewünschten<br />
Term γt(i), aber mit der einfachen Anwendung der Bayes-Regel erhalten<br />
wir:
196 12. Hidden Markov Modelle<br />
γt(i) = P(qt = i|X, λ) = P(qt = i, X|λ)<br />
P(X|λ)<br />
= αt(i) · βt(i)<br />
<br />
j αt(j) · βt(j)<br />
(12.16)<br />
So erhalten wir mit γt(i) die Wahrscheinlichkeit dafür, daß sich das<br />
System λ zum Zeitpunkt t im Zustand si befindet, wenn es die Beobachtung<br />
X macht (bzw. emittiert). Aus der Sicht des Trainingsalgorithmus, der die<br />
Parameter des Zustands si neu schätzen, also optimieren, muß, genügt es,<br />
alle Beobachtung xt und die dazu gehörigen γt(i) zu kennen. Dann weiß der<br />
Algorithmus, wie stark xt ins Training eingehen soll. Wenn γt(i) sehr klein<br />
ist, kann xt fast ignoriert werden, bei sehr großem γt(i) hat xt einen sehr<br />
großen Einfluß auf die Schätzung der Parameter von si.<br />
Wie genau nun der Trainingsalgorithmus aussieht, hängt natürlich<br />
von der Wahl der Emissionswahrscheinlichkeitenschätzer ab. Bei Gauß-<br />
Mischverteilungen heißt das, daß der EM-Algorithmus wie in Gl. 9.14 bis Gl.<br />
9.16 Anwendung findet. Bei neuronalen Netzen würde der Backpropagation-<br />
Algorithmus oder eine Variante davon angewendet und die γt(i) auf die<br />
Lernrate aufmultipliziert, wenn die Beobachtung xt trainiert wird.<br />
Bleibt noch festzustellen, wie βt(i) sinnvollerweise berechnet wird. Auf<br />
den ersten Blick sehen die β den α sehr ähnlich. Auch sie können rekursiv<br />
berechnet werden:<br />
βT(i) = 1 ∀i (12.17)<br />
n<br />
βt(i) = aij · bj(xt+1) · βt+1(j) (12.18)<br />
j=1<br />
Gl. 12.17 leuchtet ein, wenn man sich klar macht, daß βT(i) die<br />
Wahrscheinlichkeit dafür ist, daß ” nach dem Ende der Beobachtung keine<br />
weitere Beobachtung“ gemacht wird. Das ist natürlich 1.0, unabhängig<br />
davon, welcher Zustand der letzte ist. Die Berechnung der β läuft also<br />
ganz analog zur Berechnung der α nur diesmal rückwärts. Daher heißt der<br />
Algorithmus, der mit Hilfe der Gl. 12.17 und 12.18 alle βt(i) berechnet,<br />
Backward-Algorithmus. Die Durchführung des Forward-Algorithmus und des<br />
Backward-Algorithmus, um damit die γt(i) zu bestimmen heißt Forward-<br />
Backward Algorithmus.<br />
Mit Hilfe der γ können also die Parameter der Emissionswahrscheinlichkeitsmodelle<br />
optimiert werden. Was jetzt noch fehlt, ist die Optimierung der<br />
Übergangswahrscheinlichkeiten.<br />
Um die Wahrscheinlichkeit aij für den Übergang von Zustand si<br />
zum Zustand sj neu zu schätzen benötigen wir die Wahrscheinlichkeit<br />
ξt(i, j) := P(qt = i, qt+1 = j|X, λ). Auch hier können wir die Bayes Regel
anwenden und erhalten:<br />
12.4 Die drei Probleme der Hidden Markov Modelle 197<br />
ξt(ij) = P(qt = i, qt+1 = j, X|λ)<br />
P(X|λ)<br />
t − 1 t t + 1 t + 2<br />
...<br />
...<br />
si<br />
aij · b(xt+1)<br />
sj<br />
αt(i) βt+1(j)<br />
Abb. 12.7. Berechnung der ξ aus den α und β<br />
...<br />
...<br />
(12.19)<br />
Der Zähler des Bruches von Gl. 12.19 gibt die Wahrscheinlichkeit dafür<br />
an, daß die Beobachtung X gemacht wird und ein Übergang von si nach sj<br />
stattfindet. Dies läßt sich schreiben, als das Produkt der Wahrscheinlichkeiten<br />
αt(i), βt+1(j) und der ” Verbindung“ dazwischen, so wie in Abb. 12.7<br />
dargestellt:<br />
ξt(ij) = αt(i)aijbj(xt+1)βt+1(j)<br />
<br />
l αt(l) · βt(l)<br />
(12.20)<br />
Wie nun mit Hilfe der α, β, γ und ξ die HMM-Parameter optimiert<br />
werden können, definieren die Baum-Welch-Regeln:<br />
Die Wahrscheinlichkeit π(i) dafür, daß si der erste Zustand eines Prozesses<br />
ist, wird ersetzt durch π ′ (i) mit:<br />
π ′ (i) = P(q1 = i|X, λ) = P(q1 = i, X|λ)<br />
P(X|λ)<br />
α1(i)β1(i)<br />
= γ1(i) = <br />
j αt(j) · βt(j)<br />
(12.21)<br />
Die Übergangswahrscheinlichkeit aij dafür, daß sj der Nachfolgezustand<br />
von si ist, wird ersetzt durch a ′ ij mit:<br />
a ′ ij =<br />
T t=1 P(X, qt = i, qt+1 = j|λ)<br />
T t=1 P(X, qt<br />
T t=1 =<br />
= i|λ)<br />
ξt(i, j)<br />
T t=1 γt(i)<br />
(12.22)
198 12. Hidden Markov Modelle<br />
Für diskrete Hidden-Markov-Modelle gilt darüber hinaus, daß die Wahrscheinlichkeit<br />
bi(vk) dafür, im Zustand si die Beobachtung vk zu machen,<br />
ersetzt wird durch b ′ i (vk) mit:<br />
b ′ i (vk) =<br />
T t=1 P(X, qt = i|λ) · δ(xt, vk)<br />
T t=1 P(X, qt = i|λ)<br />
T t=1 =<br />
γt(i) · δ(xt, vk)<br />
T t=1 γt(i)<br />
<br />
0 für xt = vk<br />
wobei δ(xt, vk) =<br />
1 für xt = vk<br />
(12.23)<br />
In mancher Literatur über Hidden-Markov-Modell findet man nach<br />
der Definition der Baum-Welch-Regeln den Beweis für die Lösung des<br />
Optimierungsproblems, also dafür daß P(X|λ ′ ≥ P(X|λ). Die Idee hinter<br />
dem Beweis ist die Definition einer Hilfsfunktion, deren Optimierung leichter<br />
gezeigt werden kann, deren Optimierung aber auch eine Optimierung des<br />
HMMs impliziert. Da dieser Beweis nicht zum Verständnis der HMMs in der<br />
Spracherkennung beiträgt, sei der interessierte Leser zum Beispiel auf [?]<br />
verwiesen.<br />
12.5 Spracherkennung mit Hidden Markov Modellen<br />
Hidden Markov Modelle sind besonders geeignet dafür, dynamische Prozesse<br />
zu modellieren, Prozesse, die sich in bestimmten Zuständen befinden können,<br />
zwischen denen mehr oder weniger wahrscheinliche Übergänge gemacht werden.<br />
Im Prinzip genügt es, zum Definieren eines HMMs für die Modellierung<br />
von Sprache einen Merkmalsraum der beobachtbaren Ereignisse und die<br />
Zuordnung von HMM-Zuständen zu bestimmten sprachlichen Einheiten<br />
anzugeben. Wie sich herausstellen wird, liegen genau in diesen beiden Problemen<br />
mit die größten Herausforderungen. Der verwendete Merkmalsraum<br />
wird durch die verwendeten Verfahren der Signalverarbeitung bestimmt, und<br />
die Zuordnung von Zuständen zu Spracheinheiten bestimmt nicht nur, welche<br />
Spracheinheiten überhaupt verwendet werden und wie der Parameterraum<br />
des Erkenners aussehen wird, sondern auch in erheblichem Maße, welche<br />
Leistung der Erkenner haben wird.
12.5 Spracherkennung mit Hidden Markov Modellen 199<br />
12.5.1 Ein einfacher HMM Einzelkommandoerkenner<br />
Im folgenden werden die Bestandteile und die Funktionsweise eines einfachen<br />
auf Hidden-Markov-Modellen basierenden Einzelworterkenners beschrieben.<br />
Der Begriff ” Einzelwort“ ist in diesem Zusammenhang eher akustisch als<br />
linguistisch gemeint. ” Einzelkommandoerkenner“ wäre vielleicht der bessere<br />
Begriff. Als Einzelwort kann auch eine Folge von Wörtern gemeint sein.<br />
Allerdings ist dies aus der Sicht des Erkenners irrelevant. Jede Aufnahme<br />
wird als eine Einheit betrachtet, die zu einer einzigen aus einer Menge<br />
gegebener Klassen gehört.<br />
Die Erkennungsaufgabe bestehe darin, einzelne Wörter aus einem<br />
Vokabular L = {w1, w2, . . .w |L|} zu erkennen. Das bedeutet, der Erkenner<br />
verwendet |L| verschiedene HMMs λ(w1), λ(w2), . . . λ(w |L|). Zunächst muß<br />
jedes λ(wi) definiert werden. Ohne weiteres Wissen werden alle Modell mit<br />
der gleichen Architektur und den gleichen Parametern initialisiert, zum<br />
Beispiel mit je n Zuständen im Bakis-Schema und Gauß-Mischverteilungen<br />
mit je k Normalverteilungen zur Modellierung der Emissionswahrscheinlichkeiten.<br />
Da das Baum-Welch-Verfahren keine Anforderungen an die<br />
Initialwerte der HMM-Parameter stellt, kann man mit beliebigen (zufällig<br />
initialisierten) Werten anfangen.<br />
Für jedes Vokabularwort werden eines oder mehr Beispiele aufgezeichnet<br />
und vorverarbeitet (zum Beispiel zu Cepstren mit 13-koeffizientigen Cepstralvektoren<br />
alle 10ms).<br />
Jedes Wort-HMM wird mit seinen Trainingsbeispielen entsprechend<br />
dem Baum-Welch-Verfahren optimiert. Dabei wird das Verfahren (Forward-<br />
Backward, Baum-Welch-Regeln) für alle Trainingsbeispiele hintereinander<br />
durchgefürht. Gegebenenfalls werden mehrere Iteration über die gesamten<br />
Trainingsdaten gerechnet.<br />
Damit ist der Erkenner fertig trainiert und einsatzbereit. Zum Erkennen<br />
wird ein Wort gesprochen und die Aufnahme X genauso verarbeitet wie die<br />
Trainingsdaten. Auf der Aufnahme werden nun alle P(X|λ(wi)) mit Hilfe<br />
des Forward-Algorithmus berechnet. Gesucht ist allerdings: P(λ(wi)|X).<br />
Dies läßt sich mit der Kenntnis der a priori Wahrscheinlichkeiten P(wi) und<br />
der Bayes-Regel ausrechnen. Die P(wi) können – wenn kein Wissen und<br />
keine Statistik darüber bekannt ist – gleichverteilt angenommen werden.<br />
Das Wort ˆw gilt als erkannt, wenn<br />
ˆw = argmaxP(λ(wi)|X)<br />
(12.24)<br />
wi
200 12. Hidden Markov Modelle<br />
12.5.2 Abbildung von Wörtern auf Markov Modelle<br />
Es leuchtet ein, daß ein HMM-Zustand einem sprachlichen Ereignis entsprechen<br />
sollte, das einigermaßen stationär ist, also z.B. einem einzigen Laut.<br />
Silben oder gar Wörter sollten sinnvollerweise mit mehreren Zuständen<br />
modelliert werden. Selbst einzelne Laute – oder zumindest das was von vielen<br />
Phonetikern als Laut bezeichnet wird – sind oft nicht wirklich stationär. Am<br />
deutlichsten sieht man das an den Diphthongen und Affrikaten, die ja zwei<br />
verschiedene fließend ineinander übergehende Laute sind. Der Diphthong<br />
[aÁ] (d.h. die Aussprache des Wortes: Ei“) beginnt mit einem Laut [a],<br />
”<br />
und endet mit einem Laut [Á]. Der Affrikat [] wie am Anfang des Wortes<br />
” zu“ beginnt ähnlich wie ein [t] und endet wie ein [s]. Diphthonge, Affrikate<br />
und viele andere Laute sind nicht ausreichend lange stationär, so daß man<br />
berechtigterweise sagen könnte, über einen Zeitraum von einigen hundertstel<br />
oder gar zehntel Sekunden würde das Spektrum des Sprachsignals im<br />
wesentlichen unverändert bleiben.<br />
Wie viele Zustände sollte man also für ein Wort, eine Silbe, ein Phon(em)<br />
oder einen Laut verwenden? In [?] wird ein Verfahren vorgestellt, mit dem<br />
die Zahl der Zustände und sogar deren Übergänge rein datengetrieben für<br />
einzelne Phoneme bestimmt werden kann. In [?] wird dieses Verfahren sogar<br />
auf ganze Wörter ausgeweitet und als tauglich befunden, allerdings wird<br />
ein automatisches Erzeugen von Wort-Markov-Modellen aus praktischen<br />
Gründen nicht verwendet. Um ein Modell für ein Wort zu erzeugen, muß<br />
dazu ausreichend akustische Evidenz vorhanden sein. Für kleine Vokabulare<br />
mag das noch zu machen sein. Eine Datenbasis, die aus ” normalen Sätzen“<br />
besteht und von jedem Wort aus einem Vokabular von mehreren Zigtausend<br />
verschiedenen Wörtern, ausreichend viele Vorkommen hat, gibt es nicht. In<br />
ca. 50 000 Sätzen aus dem Wall Street Journal Trainingskorpus kommen nur<br />
etwa 15 000 verschiedene Wörter vor, ein relativ großer Teil davon nur ein<br />
oder zwei mal. Die Menge an Daten, die man bräuchte, um 60 000 Wörter<br />
jeweils mindestens 10 mal zu beobachten, wäre enorm riesig. Daher empfiehlt<br />
es sich, nicht für jedes Wort ein einzelnes HMM zu bauen, sondern für<br />
kleinere Einheiten, aus denen die Wörter ” zusammengebaut“ werden können.<br />
Ein Wort-HMM besteht dann aus der Konkatenation der einzelnen<br />
Einheiten-HMMs. Als Einheiten kommen z.B. Silben oder Phone in Frage.<br />
Auch mit Teilen von Phonen (Fenones) wurden Experimente durchgeführt<br />
[?]. Wiederum waren es praktische Gründe, die dafür sprachen Phone(me)<br />
zu verwenden. Denn um festzulegen, aus welchen Untereinheiten ein Wort<br />
besteht, benötigt man einen Experten – nicht unbedingt einen Phonetiker,<br />
aber zumindest jemanden, der weiß, wie die Akustik eines Wortes in<br />
einer eindeutigen Lautschrift dargestellt werden kann. Die Umschreibung<br />
von Aussprachen mittels subphonetischer Einheiten ist zum einen enorm<br />
schwierig und aufwendig, zum anderen ist es schwierig, eine sinnvolle
12.5 Spracherkennung mit Hidden Markov Modellen 201<br />
Menge subphonetischer Einheiten festzulegen. Daß die Modellierung von<br />
Aussprachen mittels einer vorgegebenen Menge von Silben nicht einfach<br />
ist, erkennt man gelegentlich an der Schwierigkeit, mit der Fremdwörter in<br />
die Japanische Sprache aufgenommen werden. Im Japanischen gibt es eine<br />
feste Silbenmenge und jede Silbe hat eine eigene im wesentlichen kontextunabhängige<br />
Aussprache. Wenn für bestimmte Wörter keine exakt passende<br />
Silbenfolge gefunden werden kann, wird leicht aus einem Wort wie ” Stuttgart“<br />
etwas, das sich anhört wie ” Schututogaruto“. Also sind es die Phoneme.<br />
Linguisten und Phonetiker verwenden schon seit langer Zeit das international<br />
genormte IPA Alphabet. Viele Sprachen (z.B. die meisten slawischen<br />
Sprachen, auch skandinavische Sprachen) verwenden eine Orthographie, die<br />
sehr eng an die Aussprache angelehnt ist. Bedenkt man, daß der Ursprung<br />
unseres lateinischen und auch des griechischen und arabischen Alphabets<br />
die Umschreibung der akustischen Erscheinung ist, so verwundert es nicht,<br />
daß selbst Laien sehr schnell lernen können, zu einem Wort die passende<br />
Aussprache in Lautschrift zu finden. Die meisten Sprachen verwenden ca.<br />
50 verschiedene Laute. Je nach Definition eines Lautes können das auch<br />
nur 20 oder mehrere hundert sein. Im Chinesischen zum Beispiel gibt es<br />
von jedem Vokal mehrere (je nach Dialekt vier bis fünf) Ausprägungen.<br />
In jedem Fall sind es ” ausreichend wenige“, damit jeder Laut in einer<br />
Standard-Datenbasis genügend Vorkommen hat. Damit ist sichergestellt,<br />
daß ein Phonem-HMM bzw. seine Parameter robust trainiert werden können.<br />
Abb. 12.8 zeigt, wie ein typisches HMM für das Wort ” Tag“ entsteht.<br />
Im ersten Schritt würde ein HMM-System in einem Aussprachelexikon<br />
nachsehen, um festzustellen, daß das Wort aus drei Phonemen besteht: t, a<br />
und g. Für jedes Phonem gibt ein vorkonstruiertes Phonem-HMM basierend<br />
auf dem Bakis Übergangsschema. Jedes der Phonem-HMMs ist aus drei<br />
Zuständen aufgebaut, von denen der erste (jeweils mit ” -b“ markiert) die<br />
akustischen Eigenschaften des Segments zu Beginn des Phonems modelliert,<br />
der zweite (mit ” -m“ markiert) den Mittelteil, und der dritte (mit ” -e“<br />
markiert das Ende. Würden wir streng nach dem Bakis-Schema vorgehen,<br />
dann müßte zu den eingezeichneten Übergängen noch ein Übergang aus dem<br />
letzten Zustand in den ” zweiten“ des darauffolgenden Teil-HMMs gehen.<br />
Erstens ist es gar nicht sicher, ob dieses dann überhaupt mehr als einen<br />
Zustand hat, und zweitens könnte es sogar mehrere ” zweite“ Zustände<br />
haben. In der Praxis haben sich derartige kleine Abweichungen von der<br />
Definition des Übergangsschemas als meistens irrelevant erwiesen. Das<br />
Ergebnis der Komposition des Wort-HMMs aus Phonem-HMMs ist in Abb.<br />
12.8 unten zu sehen. Ohne daß dies in der Abbildung gekennzeichnet wäre,<br />
ist der mit ” T-b“ markierte Zustand der Erste (also π( ” T-b“) = 1.0) und<br />
der mit “G-e“ markierte der Finalzustand.
202 12. Hidden Markov Modelle<br />
Bakis-Modell für Phonem T<br />
Bakis-Modell für Phonem A<br />
Bakis-Modell für Phonem G<br />
T-b<br />
A-b<br />
G-b<br />
T-b T-m T-e A-b A-m A-e<br />
T-m T-e<br />
A-m A-e<br />
G-m G-e<br />
Hidden-Markov-Modell für das Wort ” Tag“ [T] [A] [G]<br />
G-b<br />
Abb. 12.8. Komposition eines Wort-HMMs aus Phonem-HMMs<br />
G-m G-e<br />
So ist es möglich, durch Verwenden von ca. 50 Phonem-HMMs die<br />
Wort-HMMs für ein unbegrenztes Vokabular bauen zu können. Ein Erkenner<br />
könnte also auch ein Wort erkennen, das niemals in der Entwicklungs- oder<br />
Trainingsphase des HMMs aufgetaucht ist, solange die Aussprache dieses<br />
Wortes aus Phonemen besteht, die zum vorliegenden Phonemsatz gehören.<br />
Hidden-Markov-Modell für das Wort ” Tat“ [T] [A] [T]<br />
T-b T-m T-e A-b A-m A-e T-b T-m T-e<br />
Abb. 12.9. Komposition eines Wort-HMMs aus sich wiederholenden Phonemen
12.5 Spracherkennung mit Hidden Markov Modellen 203<br />
Abb. 12.9 zeigt das Wort-HMM für das Wort ” Tat“ bestehend aus den<br />
drei Phonemen t, a und noch einmal t. Obwohl das Wort mit neun Zuständen<br />
modelliert wird, werden nur sechs verschiedene Emissionswahrscheinlichkeitsmodelle<br />
(Gauß-Mischverteilungen) verwendet. Die ersten drei und die letzten<br />
drei Zustände benutzen dieselben Parameter.<br />
Neben der schnell einleuchtenden gemeinsamen Nutzung von Parametern<br />
für die selben Laute an verschiedenen Stellen eines Wortes oder Textes gibt<br />
es eine Reihe weiterer Gründe, warum Parameter gekoppelt werden sollten.<br />
Dadurch wird nicht nur die Möglichkeit, beliebige nichttrainierte Wörter<br />
zu bilden, erleichtert, sondern auch die Robustheit der Modelle erhöht. So<br />
werden im Beispiel der Abb. 12.9 die drei linken Gauß-Mischverteilungen mir<br />
mehr Trainingsdaten trainiert. Ohne Diese Kopplung würde ein Erkenner<br />
mir mehr als ca. 50 Vokabularwörtern mehr Parameter benötigen als ein<br />
ungekoppelter. Und somit würden auf jeden Parameter im Schnitt weniger<br />
Trainingsbeispiele fallen.<br />
12.5.3 Numerische Probleme in der Praxis<br />
Wenn wir eine Berechnung von Merkmalsvektoren in Abständen von 10ms<br />
zugrunde legen und annehmen, daß ein Forward-Algorithmus (oder auch<br />
Backward- bzw. Viterbi-Algorithmus) auf einer 10s langen Aufnahme durchgerechnet<br />
werden soll, dann berechnet sich am Ende der Wert αT(j) als ein<br />
Produkt von 2000 Wahrscheinlichkeiten (bei diskreten HMMs) bzw. 1000<br />
Wahrscheinlichkeiten und 1000 Dichtewerten (bei kontinuierlichen HMMs).<br />
Man erkennt schnell, daß der Wertebereich der üblichen IEEE-32-Bit<br />
Fließkommazahlen nicht ausreicht, ja selbst der Bereich der IEEE-64-Bit<br />
Zahlen kann leicht gesprengt werden und das Produkt kann zu 0.0 werden.<br />
Zwei verschiedene Gegenmaßnahmen bieten sich an: Erstens die regelmäßige<br />
Skalierung und zweitens das Rechnen im logarithmischen Bereich.<br />
Bei der regelmäßigen Skalierung gehen wir davon aus, daß uns der Absolutwert<br />
der Wahrscheinlichkeit der Beobachtung P(x) nicht interessiert.<br />
Sowohl zur Berechnung der Trainingsfaktoren γt(i) als auch zum Vergleich<br />
von P(x|λ1) mit P(x|λ2) genügt es, statt αt(i) ein skaliertes αt(i) · kt für ein<br />
beliebiges (aber bezüglich i konstantes) k zu verwenden. Der Skalierungsfaktor<br />
k kürzt sich in allen relevanten Rechnungen heraus.<br />
αt(j) = kt · bj(xt) ·<br />
N<br />
αt−1(i) · aij<br />
i1<br />
(12.25)<br />
Um zu vermeiden, daß kt im voraus (manuell) bestimmt werden muß,<br />
kann man einen Schwellwert θ festlegen, und so lange kt = 1 lassen, bis zum<br />
Zeitpunkt t1 für einen Zustand i der Wert αt1(i) < θ ist. die Multiplikation
204 12. Hidden Markov Modelle<br />
aller αt1(i) mit kt1 = 1 sorgt dann dafür, daß für einige Zeitpunkte nach t1<br />
der Schwellwert nicht mehr unterschritten wird.<br />
Die andere Alternative, das Rechnen im logarithmischen Bereich erfordert<br />
kein Skalieren. Hierbei werden statt der Wahrscheinlichkeiten deren Logarithmen<br />
beziehungsweise negierte Logarithmen verwendet. So wird dann<br />
beim Viterbi-Algorithmus aus Gl. 12.12:<br />
log zt(j) = log bj(xt) + max(log<br />
aij + log zt−1(i)) (12.26)<br />
i<br />
Ein Überlaufen des Wertebereichs von Fließkommazahlen beim logarithmischen<br />
Rechnen kann nach menschlichem Ermessen ausgeschlossen werden.<br />
Ein weiterer Vorteil des Rechnens im Logarithmus besteht in der vereinfachten<br />
Auswertung von Gauß-Mischverteilungen. Die in jeder solchen Verteilung<br />
enthaltene Exponentiation kann entfallen.<br />
Etwas komplizierter sieht es allerdings beim Forward-Backward-<br />
Algorithmus aus. Da wird aus Gl. 12.6:<br />
<br />
N<br />
<br />
log αt(j) = log bj(xt) + log αt−1(i) · aij<br />
(12.27)<br />
i=1<br />
Hier haben wir im Argument des Logarithmus eine Summe, die sich nicht<br />
weiter Auflösen läßt, so daß vor der Anwendung des Logarithmus die bereits<br />
bekannten log αt−1(i) erst exponentiert werden müssen.
13. Das Trainieren von Spracherkennern<br />
Der Begriff ” Training“ ist nicht eindeutig definiert. Im allgemeinen wird<br />
damit der Prozeß bezeichnet, bei dem die Parameter eines Klassifikators optimiert<br />
werden. Der Kern des Trainings bei Hidden-Markov-Modellen sind die<br />
Baum-Welch Optimierungsregeln und im Fallen von Gauß-Mischverteilungen<br />
der Expectation Maximization Algorithmus. In der Praxis gibt es allerdings<br />
noch einige andere Aspekte, die berücksichtigt werden sollten. Im folgenden<br />
werden einige dieser Aspekte erläutert.<br />
13.1 Überblick über den HMM-Entwicklungsprozeß<br />
Man kann die HMM-Entwicklung ganz grob in drei Phasen aufteilen: Nach<br />
der Initialisierungsphase kommt die iterative Optimierung und schließlich<br />
die Evaluation und Bewertung des Systems.<br />
13.1.1 Initialisierung<br />
Verschiedene Möglichkeiten für die initiale Einstellung der Erkennerparameter<br />
sind sinnvoll. Dazu gehört sowohl die völlig unvoreingenommene<br />
zufällig oder gleichverteilte Initialisierung als auch die Verwendung von<br />
zuvor gesammeltem Wissen in Form von exakt beschriebenen (etikettierten)<br />
Sprachaufnahmen.<br />
Zufällige oder gar keine Initialisierung<br />
Grundsätzlich kann man davon ausgehen, daß aus der Theorie der Hidden-<br />
Markov-Modelle und insbesondere der Baum-Welch Optimierungsregeln zu<br />
folgern ist, daß die Trainingsdaten mit jedem Optimierungsschritt besser<br />
modelliert werden. Das heißt, daß es im Prinzip nicht nötig ist, die Parameter<br />
mit irgendwelchen besonderen Werten zu initialisieren. Lediglich die<br />
mathematische Korrektheit (z.B. symmetrische nicht-singuläre Kovarianzmatrizen,<br />
Mixturgewichteverteilungen und Übergangswahrscheinlichkeit, die
206 13. Das Trainieren von Spracherkennern<br />
der Wahrscheinlichkeitstheorie entsprechen, usw.) sollte erfüllt sein. Dennoch<br />
empfiehlt es sich, sinnvolle Startwerte für die Parameter zu verwenden.<br />
Zum einen garantieren die Baum-Welch Regeln nur das Approximieren<br />
eines lokalen Optimums nicht aber des globalen, und zum anderen kann das<br />
Erreichen selbst dieses lokalen Optimums vielleicht erst nach sehr langer<br />
Zeit erreicht werden. In Experimenten [?] wurde gezeigt, daß in der Tat mit<br />
zufällig bzw. schlecht initialisierten Parametern nach signifikant längerer<br />
Trainingsdauer beinahe ähnlich gute Erkennungsleistungen erreicht werden<br />
können wie mit gut initialisierten Parametern.<br />
Etikettierte Daten<br />
Der Forward-Backward-Algorithmus liefert die Werte γt(i) = P(qt = i, X|λ)<br />
mit Hilfe derer dann die HMM-Parameter trainiert werden können. Für<br />
eine einfache Initialisierung würde es genügen, wenn wenigstens irgend<br />
eine sinnvolle Verteilung der Trainingsdaten auf die verschiedenen Modelle<br />
vorgegeben wäre. Wenn an jedem Merkmalsvektor xt ein ” Etikett“ et hinge,<br />
auf dem angegeben ist, zu welchem Model der Vektor gehört, dann könnten<br />
wir zumindest so tun, als wäre<br />
<br />
0 für i = et<br />
γt(i) =<br />
. (13.1)<br />
1 für i = et<br />
Mit diesen Informationen können nun die Baum-Welch-Regeln angewandt<br />
werden ohne daß zuvor ein Forward-Backward gerechnet werden muß, der<br />
sonst mangels sinnvoller Parameter nur schlechte Schätzungen für die γt(i)<br />
geliefert hätte.<br />
Der etablierte Begriff für Etiketten ist sowohl im Englischen als auch<br />
im Deutschen Labels. Sie können auf verschiedene Arten gewonnen werden.<br />
Je weniger Trainingsdaten zur Verfügung stehen und je schwieriger die<br />
Bedingungen sind (hohe Spontaneität der Sprache, Dialekte, viel Rauschen<br />
oder Störgeräusche, neue fremde Sprache etc.) umso hilfreicher sind ” gute“<br />
Labels. Am besten sind Labels, die von <strong>Mensch</strong>en erstellt werden, die sich<br />
eine Aufnahme anhören und dann jeden Laut und jedes Geräusch exakt<br />
lokalisieren. Derart feine Labels werden seit Anfang der achtziger Jahre<br />
nicht mehr hergestellt, weil der Aufwand für die heute verwendeten sehr<br />
großen Sprachdatensammlungen zu hoch ist. Wenn heute <strong>Mensch</strong>en Labels<br />
erzeugen, dann bestehen diese in der Regel nur aus der Niederschrift der<br />
gesprochenen Worte und der gut hörbaren Geräusche. Wenn es besonders<br />
auffällig ist, werden falsche Aussprachen als solche markiert. Allerdings<br />
werden weder die zeitlichen Positionen einzelner Laute noch einzelner<br />
Wörter markiert. Lediglich Anfänge und Enden der einzelnen Äußerungen<br />
sind bekannt – wobei diese meist sowieso vollautomatisch (vgl. Abs. 10.1.1)<br />
gefunden werden, oder durch die Aufnahmeapparatur vorgegeben sind. Bei
13.1 Überblick über den HMM-Entwicklungsprozeß 207<br />
derartig ” dünnen“ Labels spricht mach dann auch eher von ” Transkripten“<br />
oder ” Transkriptionen“. Sie sind das Minimum, das an Wissen nötig ist, um<br />
überhaupt ein HMM zum Trainieren einer Äußerung aufzubauen, und bieten<br />
somit keine zusätzlichen Informationen die speziell für die Initialisierung der<br />
Parameter verwendet werden kann. Daher werden für die meisten Initialisierungen<br />
neuer Erkenner automatisch erzeugte detaillierte Labels verwendet.<br />
Dazu wird ein bereits existierender Erkenner genommen und ein Forward-<br />
Backward oder Viterbi-Algorithmus auf den Trainingsaufnahmen gerechnet.<br />
Dieser existierende Erkenner produziert relativ schlechte Viterbi-Pfade beziehungsweise<br />
relativ schlechte γt(i), weil er entweder für eine andere Sprache,<br />
ein anderes Vokabular, andere Aufnahmebedingungen oder sonstige andere<br />
Unstände gebaut wurde, oder weil er mit sehr wenig Daten trainiert wurde.<br />
Diese Labels haben dann eine geringere Qualität als von <strong>Mensch</strong>en erzeugte,<br />
dafür sind sie für beliebig große Datenmengen quasi kostenlos zu erhalten.<br />
Das Vorhandensein initialer Labels ist die Voraussetzung zur Berechnung<br />
initialer Erkennerparameter. Die HMM-Parameter wie Übergangswahrscheinlichkeiten,<br />
und Anfangswahrscheinlichkeiten lassen sich mit den<br />
Baum-Welch Regeln direkt bestimmen. Problematischer ist dies für die Modellierung<br />
der Emissionswahrscheinlichkeiten. Werden diese mit neuronalen<br />
Netzen berechnet, dann können deren Gewichte in der Tat beliebig zufällig<br />
initialisiert werden. Bei Gauß-Mischverteilungen wäre aber eine zufällige<br />
Initialisierung problematisch. Auch der EM-Algorithmus garantiert nicht,<br />
daß das System am Ende in einem globalen Optimum landet. Tatsächlich<br />
kann man in der Praxis immer wieder beobachten, daß einzelne Vektoren<br />
von Codebücher (d.h. einzelne Gauß-Verteilungen einer Mischverteilung)<br />
quasi ” ungenutzt“ bleiben, weil fast keine Trainingsdaten auf diese Fallen.<br />
Wenn es zu viele solcher Ausreißerfälle gibt, dann wird der zur Verfügung<br />
stehende Parameterraum nur unzureichend genutzt und die Qualität des<br />
Erkenners sinkt. Daher ist es wichtig, schon vor der ersten Aktualisierung<br />
der Gauß-Mischverteilungsparameter für diese sinnvolle Werte zu haben.<br />
Die beliebteste Methode, Codebücher sinnvoll zu initialisieren ist das k<br />
Mitellewerte Verfahren (s. Abs. 9.1.6). Dabei werden die vorhandenen Labels<br />
verwendet, um zu bestimmen welcher Trainingsvektor in welches Codebuch<br />
gehört. Wenn alle Trainingsvektoren ihrem Codebuch zugeordnet worden<br />
sind, könne initiale Codebücher mit dem k-Mittelwerte beziehungsweise<br />
LBG-Verfahren erzeugt werden.<br />
Parametertransfer<br />
Schließlich bleibt noch eine dritte auch häufig angewandte Methode der<br />
Parameterinitialisierung zu erwähnen. Man verwendet dabei einfach die<br />
bereits vorhandenen Parameter eines existierenden Erkenners für einer<br />
andere möglichst ähnliche Aufgabe. Wenn die angestrebte Architektur
208 13. Das Trainieren von Spracherkennern<br />
des neuen Parameterraumes mit der des existierenden identisch ist, lassen<br />
sich die Parameter alle eins zu eins übertragen. Wenn die Architekturen<br />
verschieden sind (zum Beispiel andere Phonemmengen), dann muß<br />
erst bestimmt werden, welcher ” neue“ Parameter welchem ” alten“ entspricht.<br />
13.1.2 Iterative Optimierung<br />
In der Praxis ist es eher die Regel als die Ausnahme, daß zum Trainieren<br />
statt des Forward-Backward-Algorithmus der Viterbi-Algorithmus verwendet<br />
wird. Zwar liefert dieser nicht die Trainingswahrscheinlichkeiten γt(i) =<br />
P(qt = i|X, λ) sondern die wahrscheinlichste Folge Q = q1, q2, . . . qT von<br />
Zuständen, also<br />
Q = argmaxP(Q|X,<br />
λ) (13.2)<br />
Q<br />
Es ist zwar mathematisch nicht korrekt, aber für sehr große T in etwa<br />
gleich gut, die Trainingswahrscheinlichkeiten genauso wie bei der Verwendung<br />
von Labels in Gl. 13.1 als<br />
<br />
0 für i = qt<br />
γt(i) = δi,qt =<br />
. (13.3)<br />
1 für i = qt<br />
zu definieren.<br />
Graustufenmatrix der γt(i) des Viterbi-Pfad<br />
Forward-Backward-Algorithmus<br />
Abb. 13.1. Training mit Viterbi statt Forward-Backward<br />
Die Verwendung des Viterbi-Algorithmus bietet mehrere Vorteile<br />
gegenüber dem Forward-Backward-Algorithmus. Ein großer Vorteil ist<br />
der wesentlich geringere zeitliche Aufwand. Wie bereits in Abs. 12.5.3<br />
angesprochen, läßt sich der Viterbi-Algorithmus relativ einfach im logarithmischen<br />
Zahlenbereich anwenden. Bei ihm ist es auch einfach möglich,<br />
die gleichen Techniken zur Suchraumbeschneidung anzuwenden wie beim<br />
DTW-Algorithmus (vgl. Abs. 11.3.1). Beim Forward-Backward ist es zwar
13.1 Überblick über den HMM-Entwicklungsprozeß 209<br />
auch denkbar auf die ” Expansion“ einzelner αt(i), die unterhalb eines<br />
Schwellwertes liegen, zu verzichten. Jedoch ist dies wesentlich komplizierter<br />
und birgt eine zusätzliche Gefahr in sich, daß nämlich beim Vorwärtsdurchgang<br />
völlig andere Bereiche des Suchraumes beschnitten werden als beim<br />
Rückwärtsdurchgang. So kann dies bei zu starker Beschneidung dazu führen,<br />
daß keine sinnvollen γt(i) berechnet werden können, weil in den meisten<br />
Fällen entweder αt(i) oder βt(i) durch Beschneiden auf 0 gesetzt wurden.<br />
Dies führt dazu, daß in der Praxis ein Forward-Backward um ein Vielfaches<br />
mehr zeitlichen Aufwand hat als ein Viterbi.<br />
Der Vorteil des Forward-Backward besteht darin, daß jedes einzelne<br />
Trainingsmuster auf mehrere Modelle mit unterschiedlicher Wahrscheinlichkeit<br />
verteilt werden kann. Somit erhalten die einzelnen Modelle mehr<br />
Trainingsmuster zum Schätzen ihrer Parameter als bei einer ” harten“ Zuordnung,<br />
wie sie der Viterbi-Algorithmus findet. Je mehr Trainingsdaten zur<br />
Verfügung stehen, umso weniger fallen die Nachteile des Viterbi-Trainings<br />
gegenüber dem Forward-Backward-Trainings ins Gewicht. Bei sehr großen<br />
Trainingsdatenmengen wirkt sich auch das bessere Laufzeitverhalten des<br />
Viterbi-Algorithmus aus.<br />
Noch schneller als das Viterbi-Training ist das Trainieren entlang vorberechneter<br />
Labels. Die Ähnlichkeit der Gl. 13.1 und 13.2 deutet darauf hin,<br />
daß Labels nicht nur zu Initialisierungszwecken verwendet werden können,<br />
sondern auch zum regulären Baum-Welch-Training. Natürlich gilt es hierbei<br />
zu berücksichtigen, daß zum einen schlechte (weil von einem unpassenden<br />
Erkenner erzeugte) Labels auch in schlechten Parameterschätzungen resultieren,<br />
und zum anderen die Konvergenz des Baum-Welch-Verfahrens<br />
nur dann gegeben ist, wenn sich die Zuordnungen von Trainingsmustern<br />
zu Modellen auch ändern können. Daher verwenden viele Forscher beim<br />
Trainieren ihrer Erkenner ein Gemisch von verschiedenen Verfahren. Je<br />
nach Entwicklungsphase wird entlang Labels trainiert, und zwischendurch<br />
werden mit Forward-Backward oder mit Viterbi neue (inzwischen bessere)<br />
Labels berechet. Das ganze wird mehrfach iteriert, bis keine Verbesserung<br />
des Erkenners mehr zu beobachten ist.<br />
Auch beliebt ist die Vorgehensweise, mehrere Erkenner mit aufsteigend<br />
komplexen Parameterräumen zu entwickeln, von denen jeder die Grundlage<br />
(in Form von Berechnen der Labels und Lieferant initialer Parameter)<br />
für den nächsten komplexeren Erkenner ist. Die Komplexitätssteigerungen<br />
gehen einher mit größeren HMM-Zustandsräumen, mehr oder größeren<br />
Gauß-Mischverteilungen und feineren Parameterkopplungsgraden.<br />
Grundsätzlich orientieren sich aber alle Trainingsmethoden am Prinzip<br />
des wiederholten Trainierens und Testens. Nach jeder Trainingsphase wird
210 13. Das Trainieren von Spracherkennern<br />
eine Testphase durchgeführt, in der die mittlerweile erreichte Erkennerleistung<br />
gemessen wird. Trainingsphasen können einfache Wiederholungen<br />
des Baum-Welch-Trainings sein, ohne daß dabei der Parameterraum oder<br />
die Daten verändert werden. Sie können aber auch Komplexitätssprünge<br />
enthalten. Solange sich die Qualität verbessert, wird weiter trainiert. Das<br />
Training wird dann beendet, wenn keine Aussicht auf weitere Verbesserungen<br />
zu erwarten sind.<br />
Die regelmäßige Evaluation der Erkennerleistung dient aber nicht<br />
nur dazu, zu bestimmen, wann ein guter Zeitpunkt zum Beenden des<br />
Trainings erreicht wird. Sie dient auch dazu, Entscheidungen zu treffen,<br />
welche von mehreren Varianten der Fortsetzung des Trainingsprozesses<br />
die bessere ist. So kann entschieden werden, ob sich eine Steigerung der<br />
Parameterraumkomplexität lohnt oder ob die Anwendung eines bestimmten<br />
Trainingsparadigmas erfolgversprechend ist.<br />
13.2 Aufteilung der Sprachaufnahmen<br />
Bei den allermeisten Klassifikationsaufgaben empfiehlt es sich, die Klassifikationsleistung<br />
nicht auf den Daten zu messen, die verwendet wurden,<br />
um die Parameter des Klassifikators zu schätzen. Meistens interessiert nur<br />
die Leistung auf ” ungesehenen Daten“, das heißt die Generalisierungsfähigkeit.<br />
Für viele parametrische Klassifikatoren existieren Algorithmen zum<br />
iterativen Schätzen ihrer Parameter. Die Klassifikationsleistung auf den<br />
für die Schätzung der Parameter verwendeten Trainingsdaten wächst mit<br />
jeder Iteration. Dies gilt jedoch nicht für ungesehene Daten (s. Abb. 13.2).<br />
Der Parameter des Schätzers beschreiben die Trainingsdaten immer besser.<br />
Sie stellen ein immer genaueres Modell der Trainingsmenge dar, bis sie<br />
irgendwann die Trainingsdaten quasi ” auswendig lernen“. Dann paßt das<br />
Modell nicht mehr so gut auf die ungesehenen Daten und die Klassifikationsleistung<br />
auf diesen nimmt ab. Dieser Effekt wird als ” Overfitting“ bezeichnet.<br />
Der gleiche Effekt tritt auch ein bei Klassifikatoren mit variabler Anzahl<br />
Parameter auf. Je größer die Zahl der Parameter, umso genauer kann das<br />
Modell die Trainingsdaten modellieren. Eine einfache Manifestation dieses<br />
Effektes kann man bei der Schätzung eines Polynoms, das von einer gegebenen<br />
Menge von Meßwerten möglichst wenig abweichen soll, beobachten.<br />
Wenn man zur Erfassung der Punkte aus Abb. 13.3 ein Polynom<br />
zweiten (a) Grades verwendet wird die Abweichung noch recht groß bleiben,<br />
ein Polynom dritten Grades (b) paßt schon besser. Und bei Verwendung<br />
eines Polynoms siebten (c) Grades können die sechs Trainingsdatenpunkte
Fehlerrate<br />
auf<br />
Trainingsdaten<br />
Abb. 13.2. Der Overfitting-Effekt<br />
13.2 Aufteilung der Sprachaufnahmen 211<br />
optimales<br />
Trainingsende<br />
auf<br />
Testdaten<br />
Abb. 13.3. Angleichung einer Punktmenge durch Polynome<br />
Trainingszeit<br />
(a)<br />
(c)<br />
(b)
212 13. Das Trainieren von Spracherkennern<br />
fehlerfrei modelliert werden. Die Wahrscheinlichkeit dafür, daß ein weiterer<br />
zufälliger Meßwert vom Polynom weit verfehlt wird, ist aber sehr groß.<br />
Um den Overfitting-Effekt zu vermeiden ist es notwendig, die Evaluation<br />
des Systems nicht auf den Trainingsdaten zu machen sondern auf Kreuzvalidierungsdaten.<br />
Diese Kreuzvalidierungsdaten dürfen nach Beendigung der<br />
Erkennerentwicklung nicht verwendet werden, um die Erkennerleistung zu<br />
messen und diese zu veröffentlichen. Schließlich werden Kreuzvalidierungsdaten<br />
dazu benutzt, Entscheidungen zu treffen, die sich auf eben diese Daten<br />
positiv auswirken.<br />
Das bedeutet, daß die wissenschaftlich korrekte Vorgehensweise bei<br />
der Entwicklung von Spracherkennern mindestens eine Dreiteilung der<br />
zur Verfügung stehenden Daten erfordert. Die drei überschneidungsfreien<br />
Teildatenmengen werden Trainingsdaten, Kreuzvalidierungsdaten, und<br />
Evaluierungsdaten genannt. Statt des Begriffs Kreuzvalidierungsdaten<br />
wird auch manchmal der Begriff Entwicklungsdaten (engl.: development<br />
data) verwendet, und statt Evaluierungsdaten auch manchmal Testdaten.<br />
Im Grunde dürfen Evaluierungsdaten nur ein einziges Mal eingesetzt werden<br />
– abgesehen von der Verwendung für verschiedene unabhängige Projekte,<br />
deren Leistungen dann durch Evaluierung auf denselben Daten verglichen<br />
werden können. Gelegentlich wird es akzeptiert Evaluierungsdaten mehrfach<br />
zu verwenden, um eine einfachere Vergleichbarkeit von Leistungsbewertungen<br />
zu ermöglichen, wenn davon auszugehen ist, daß keine Entscheidungen<br />
von den Systementwicklern getroffen wurden, die auf dem Wissen basierten,<br />
wie sie sich auf den Evaluierungsdaten auswirken.<br />
Experiment 13.1: HMM Training<br />
Starten Sie das Applet HMM Training und klicken Sie auf Start . Auf<br />
der Oberfläche sehen Sie die Darstellung einer Wellenform, darunter befinden<br />
sich 25 Felder (numeriert von 0 bis 24). Durch Klicken auf eines<br />
dieser Felder können sie verschiedene vorbereitete Aufnahmen einiger<br />
englischer Wörter auswählen. Wenn Sie eine Aufnahme auswählen wird<br />
ihr Signal angezeigt und Sie können sie durch Betätigen von Play abspielen.<br />
Sie können auch einzelne Felder mit selbstgemachten Aufnahmen überspielen.<br />
Lassen Sie dazu zunächst die Aufnahmen 0 bis 23 unverändert und<br />
wählen Aufnahme 24 aus. Jetzt können Sie mit Record selbst eine kurze<br />
Aufnahme machen, die dann unter Feld 24 abrufbar ist.
13.2 Aufteilung der Sprachaufnahmen 213<br />
Am unteren Rand des Applets befindet sich das Spektrogramm der gerade<br />
ausgewählten Aufnahme. Hierbei handelt es sich allerdings um nur zwei<br />
Filterbankkoeffizienten (sie entsprechen grob dem Anteil tiefer und hoher<br />
Frequenzen im Signal). Wenn Sie z.B. die Aufnahme 0 (das englische Wort<br />
” ache“ betrachten, sehen Sie in der vorderen zeitlichen Hälfte mehr Energie<br />
(wegen des Vokals) vor allem im unteren Frequenzband, und in der hinteren<br />
Hälfte, die dem k-Laut entspricht sind die Filterbankkoeffizienten heller, d.h.<br />
kleiner.<br />
Unterhalb der 25 Aufnahmefelder befinden sich acht Gauß-Mischverteilungen<br />
(markiert mit AE-b, AE-e, EY-b, EY-e, K-b, K-e, SH-b und SH-e). Diese<br />
bestehen aus jeweils zwei einzelnen Gauß-Verteilungen über dem zweidimensionalen<br />
Merkmalsraum der beiden Filterbänke. Ein dunkler Punkt auf der<br />
Darstellung an der Position (x, y) entspricht einer hohen Wahrscheinlichkeit<br />
für das Beobachten eines Merkmals, dessen unterer Filterbankkoeffizient x<br />
ist und dessen oberer Filterbankkoeffizient y ist.<br />
Zu beginn sind alle Gauß-Mischverteilungen gleich initialisiert. Die beiden<br />
einzelnen Gauß-Verteilungen haben leicht unterschiedliche Mittelwerte, so<br />
daß die initialen Graustufenbilder etwas oval aussehen.<br />
Unterhalb der Darstellungen der Gauß-Mischverteilungen sehen sie verschiedene<br />
Hidden-Markov-Modelle, je eines für die Wörter ache“, ash“, cake“,<br />
” ” ”<br />
” shack“ und shake“. Unter den einzelnen Zuständen befinden sich die<br />
”<br />
Namen der zugehörigen Gauß-Mischverteilungen. Die Zustandsübergänge<br />
sind mit dem Zehnfachen ihrer Wahrscheinlichkeit beschriftet (ggf. kann<br />
durch Rundungsfehler die Summe ungleich 1 sein). Durch Anklicken eines<br />
dieser Wörter können Sie das entsprechende HMM auswählen, woraufhin es<br />
rot eingefärbt wird und seine Zustände auf der vertikalen Beschriftungsachse<br />
der darunterliegenden (DP-)Matrix erscheinen.<br />
Der Forward-Algorithmus berechnet p(X|λ), durch Auswahl einer bestimmten<br />
Aufnahme wählen Sie das X aus, und durch Auswahl eines bestimmten<br />
Wortes das λ. Wählen Sie nun die Aufnahme 0 und das Wort ” ache“. Nach<br />
Klicken von Forward wird die Matrix mit mehr oder weniger gefärbten<br />
Rechtecken gefüllt. Die Stärke der Färbung des Rechtecks in der j-ten Zeile<br />
und t−ten Spalte entspricht dem Wert αt(j) aus dem Forward-Algorithmus.<br />
Am unteren Rand, unterhalb des Spektrogramms wird der Wert p(X|λ)<br />
ausgegeben - er sollte ca. 8 · 10 −9 sein.<br />
Nachdem Sie nun P(Aufnahme0|λ(ache)) berechnet haben, versuchen sie<br />
dies auch für P(Aufnahme0|λ(ash)) und für die anderen Wörter. Machen<br />
Sie sich klar, daß immer die gleiche Wahrscheinlichkeit herauskommt, weil<br />
zu beginn alle akustischen Parameter gleich initialisiert sind.
214 13. Das Trainieren von Spracherkennern<br />
Wählen Sie nun wieder Aufnahme 0 und ” ache“ aus. Klicken Sie auf<br />
Forward-Backward . Auch jetzt erscheint eine Matrix mit eingefärbten<br />
Zellen, die diesmal den γt(j) des Forward-Backward-Algorithmus entsprechen.<br />
Diese werden im Programm intern abgespeichert. Wenn Sie danach<br />
auf Update klicken. Werden Die Parameter des HMMs entsprechend<br />
der Baum-Welch Regeln und dem Expectation Maximization Algorithmus<br />
optimiert.<br />
Sie können erkennen, daß jetzt die Darstellung der Gauß-Mischverteilungen<br />
nicht mehr überall gleich ist. Insbesondere haben sich die Verteilungen<br />
für die Modelle EY-b, EY-e, K-b und K-e verändert. Auch wenn diese<br />
Veränderungen nur minimal ausfallen, ist erkennbar, daß der Schwerpunkt<br />
der K-b und K-e Modelle näher zum Nullpunkt gerückt ist. Dies ist darauf<br />
zurückzuführen, daß diese Modelle tendenziell eher mit den Mustern trainiert<br />
wurden, die dem verhältnismäßig energiearmen k-Laut entsprechen.<br />
Wenn Sie die Verteilungen von EY-b und EY-e miteinander vergleichen<br />
erkennen Sie, daß der Schwerpunkt der EY-e Verteilung weiter ” oben“ liegt.<br />
Dies ist darauf zurückzuführen, daß der EY-Laut ein Diphthong ist, dessen<br />
vorderer Teil (EY-b) durch das eher etwas tiefer klingende E dominiert wird,<br />
während der hintere Teil (EY-e) durch das eher etwas höher klingende Y<br />
dominiert wird. Daher wurde die Mischverteilung des EY-e Modells tendenziell<br />
eher mit Mustern trainiert, deren oberes Frequenzband energiereicher ist.<br />
Wenn Sie nun wiederholt Forward-Backward Update klicken, können<br />
Sie beobachten, wie mit jeder Iteration die angezeigte Wahrscheinlichkeit<br />
für P(Aufnahme0|λ(ache)) steigt. Die eben festgestellten Veränderungen an<br />
den Gauß-Mischverteilungen der Modelle, die im Word ” ache“ vorkommen,<br />
werden zementiert.<br />
Um den Erkenner mit mehreren Aufnahmen zu trainieren müßten Sie<br />
die Aufnahmen einzeln zusammen mit ihren entsprechenden Wort-HMMs<br />
auswählen und jeweils Forward-Backward ausführen; am Ende dann<br />
einmalig Update , um alle akkumulierte Trainingsinformation auszuwerten.<br />
Die Aufnahmen sind so angeordnet daß für jedes der Vokabularwörter vier<br />
Aufnahmen vorhanden sind. Da es zur Beurteilung der Erkennerqualität<br />
nicht korrekt wäre, die Fehlerrate auch auf den Trainingsdaten zu messen,<br />
sollte ein Teil der Daten nicht für das Training verwendet werden. Wenn Sie<br />
die Aufnahmen 3, 7, 11, 15, 19 und 23 (und 24) auslassen, dann bleibt von<br />
jedem Wort eine Aufnahme für die spätere Evaluation übrig. Es wäre sogar<br />
interessant, alle Aufnahmen des Wortes ” shake“ wegzulassen, um später die<br />
Erkennung auf untrainierten Wörtern zu Testen.
13.3 Trainingsparadigmen 215<br />
Der Einfachheit halber kann im Applet dieses gesamte Training (auf<br />
den Aufnahmen 0,1,2,4,5,6,8,9,10,12,13,14,16,17 und 18) mit einmaligem<br />
Klicken auf Train All und Update durchgeführt werden. Bevor Sie dies<br />
tun, setzten sie zur Sicherheit alle Parameter mit Reset wieder auf ihre<br />
Ausgangswerte zurück.<br />
Wenn Sie das gesamte Training nun durchgeführt haben, sehen sie, daß<br />
sich alle Gauß-Mischverteilungen verändert haben. Auch wenn selbst nach<br />
dem umfangreichen Training die Änderungen nur gering ausfallen, ist<br />
jetzt erkennbar, daß die aktualisierten Verteilungen für die SH-Laute ihren<br />
Schwerpunkt eher weiter ” oben“ haben. Dies ist darauf zurückzuführen, daß<br />
diese Laute tendenziell weniger Energie im unteren Frequenzband haben<br />
(daher nach rechts gerückt) und mehr Energie im oberen Frequenzband habe<br />
(daher nach oben gerückt).<br />
Berechnen Sie jetzt mit dem trainierten System noch einmal<br />
P(Aufnahme0|λ(ache)). Der Wert sollte ca. 0.002 sein, also sogar signifikant<br />
höher als er nach ein- oder zweimaligem Training der Aufnahme 0<br />
war. Diese deutliche Verbesserung ist darauf zurückzuführen, daß jetzt die<br />
HMM-Parameter mit deutlich mehr Daten Trainiert wurden.<br />
Gehen Sie jetzt zum Testen des Erkenners über. Wählen Sie Aufnahme 15<br />
aus (diese war nicht im Training dabei). Wählen Sie das Modell des Wortes<br />
” ache“ und berechnen Sie P(Aufnahme15|λ(ache)). Dies sollte ca. 8.7 · 10 −4<br />
sein. Stellen Sie entsprechend fest, daß P(Aufnahme15|λ(ash)) ca. 8.3 · 10 −4 .<br />
Um nicht alle P(Aufnahme15|λ(. . .)) manuell berechnen zu müssen, klicken<br />
Sie einfach Test . Jetzt erscheint am unteren Rand auf der Höhe jedes<br />
Wortes die entsprechende Wahrscheinlichkeit. Den eindeutig größten Wert<br />
hat mit ca. 0.002 das Wort ” cache“. In diesem Fall hat also der Erkenner das<br />
korrekte Wort mit der höchsten Wahrscheinlichkeit versehen - also richtig<br />
erkannt.<br />
Wählen Sie nun Aufnahme 20 (die genauso wie alle anderen Aufnahmen<br />
des Wortes ” shake“ im Training nicht dabei war) und klicken Sie auf Test .<br />
Tatsächlich hat das Wort ” shake“ nun mit ca. 9 ·10 −4 die mit Abstand beste<br />
Wahrscheinlichkeit.<br />
13.3 Trainingsparadigmen<br />
Das Trainieren der Erkennerparameter kann auf verschiedene Arten erfolgen.<br />
Die in Kap. 12 vorgestellten Baum-Welch-Regeln sind nur eine – aber nicht
216 13. Das Trainieren von Spracherkennern<br />
die einzige – Möglichkeit. Ähnliches gilt für den EM-Algorithmus in Kap. 9.<br />
So werden in der Spracherkennung nicht nur komplett andere Trainingsparadigmen<br />
verwendet, sondern immer wieder auch leichte Abwandlungen der<br />
mathematisch hergeleiteten Methoden, immer auch mit dem Wissen, daß<br />
die zugrundegelegten Modelle eben nur Modelle sind, und zur ” Annäherung<br />
an die Wirklichkeit“ auch Abweichungen von der Mathematik sinnvoll sein<br />
können. Im folgenden werde einige alternative Trainingsmethoden beleuchtet.<br />
13.3.1 Diskriminatives Trainieren<br />
Der EM-Algorithmus ist durch seine auf Maximum-Likelihood Schätzung<br />
basierte Optimierung aus Prinzip nichtdiskriminativ. Das heißt, jeder<br />
Parameter wird allein mit Hilfe der ihm zugeordneten (positiven) Trainingsmuster<br />
aktualisiert, unabhängig von den Parametern anderer Modelle.<br />
Das Ziel diskriminativen Trainings ist jedoch die Parameter so zu schätzen,<br />
daß nicht nur die Beobachtungswahrscheinlichkeit der positiven Beispielmuster<br />
maximiert wird, sondern auch die Wahrscheinlichkeit der negativen<br />
Beispielmuster minimiert wird. Bei Neuronalen Netzen, die mit der Error<br />
Backpropagation Methode trainiert werden, ist es aus mathematischer<br />
Sicht unproblematisch, das Vorzeichen der einzelnen Trainingsschritte<br />
umzudrehen. Aus der Definition der McCullogh-Pitts Neuronen folgt, daß<br />
jede Parameterbelegung wenn auch nicht unbedingt sinnvoll so aber auf<br />
jeden Fall legal ist. Bei Gauß-Mischverteilungen ist dies nicht der Fall. Die<br />
Mixturgewichte müssen Werte zwischen 0 und 1 annehmen. Kovarianzmatrizen<br />
müssen symmetrisch und nichtsingulär sein. Wenn beim Akkumulieren<br />
der Trainingsinformation für dem EM-Algorithmus einzelne Schritte mit<br />
negativem Vorzeichen versehen werden, kann dies dazu führen, daß z.B.<br />
Mixturgewichte negativ werden. Dennoch wurde immer wieder der Versuch<br />
unternommen, auch den EM-Algorithmus so zu modifizieren, daß er die<br />
diskriminative Fähigkeit der Modelle verbessert. Eine Möglichkeit, dies zu<br />
erreichen und dabei die Konsistenz der Parameter zu gewährleisten, besteht<br />
in der gezielten Auswahl der Trainingsmuster.<br />
Der Trainingsprozeß kann so modifiziert werden, daß Muster, die der<br />
Diskriminativität schaden, aus dem Training herausgenommen werden oder<br />
daß Muster, die der Diskriminativität helfen, dem Trainingsalgorithmus<br />
mehrfach präsentiert werden. Welche Muster der Diskriminativität zuträglich<br />
und welche ihr abträglich sind, hängt vom Einzelfall ab. Dabei ist es durchaus<br />
nicht so, daß diejenigen Muster, die in der Nähe der Klassifikationsgrenzen<br />
liegen und somit schwierig zuzuordnen sind, dazu beitragen, diese Grenzen<br />
zu verwischen und somit der Diskriminativität zu schaden. Ganz im Gegenteil:<br />
Diejenigen Muster, die weit weg von Klassifikationsgrenzen liegen,<br />
bewirken als ” Ausreißer“, daß die zu trainierenden Gewichte extreme Werte
13.3 Trainingsparadigmen 217<br />
annehmen. Sehr viele ” grenznahe“ Muster tragen eher dazu bei eine scharfe<br />
Trennlinie robust zu lernen.<br />
Diese konsistenzbewahrende Methode des diskriminativen Trainings<br />
arbeitet ohne Negativbeispiele. Eine explizite Wahrscheinlichkeitsreduktion<br />
für bestimmte Muster kann nicht direkt herbeigeführt werden, sondern<br />
ergibt sich - wenn überhaupt - nur durch die relative Verbesserung der<br />
Wahrscheinlichkeiten für die positiven Muster. Wenn man nicht fordert,<br />
daß die Modellparameter konsistent bleiben, ist es auch denkbar, beim<br />
Aufakkumulieren der Trainingsdaten des EM-Algorithmus, verschiedene<br />
Muster verschieden stark zu gewichten, insbesondere negative Beispiele mit<br />
negativen Gewichtungsfaktoren zu versehen. Die entschuldigende Annahme<br />
dabei ist die, daß es deutlich mehr positive Beispiele als negative geben<br />
sollte, so daß die wenigen negativen Beispiele an der Gesamtmasse der<br />
akkumulierten Information nur wie ein kleines Korrektiv wirken. Daher<br />
auch der in diesem Zusammenhang gern benutzte Begriff des korrektiven<br />
Trainings (s.u.). Dennoch kann man in der Regel nicht ausschließen, daß<br />
die Akkumulatoren inkonsistent werden, und muß Vorkehrungen treffen. Die<br />
einfachste Absicherung ist die Einführung von Minimalwerten (ǫ > 0 )für<br />
die Werte γ(. . .). Sollte ein γ(. . .) unter den Minimalwert fallen, wird es vor<br />
der Aktualisierung der Parameter auf diesen angehoben.<br />
Korrektives Trainieren<br />
Eine bereits recht früh angewandte Technik des diskriminativen Trainierens<br />
war das so genannte korrektive Trainieren (corrective training [?]). Die Idee<br />
hierbei ist, den Spracherkenner im Erkennungsmodus auf allen Trainingsaufnahmen<br />
laufen zu lassen und Erkennerhypothesen zu erzeugen. Nun<br />
kann man annehmen, daß diejenigen Aufnahmen, auf denen der Erkenner<br />
überhaupt keine Fehler macht ausreicheichend gut modelliert werden können<br />
und keinen Bedarf an Korrektur der Erkennerparameter stellen. Dort<br />
allerdings, wo der Erkenner Fehler macht, ist davon auszugehen, daß die<br />
Parameter nicht ausreichend gut trainiert sind. Nun ist es nicht sinnvoll,<br />
den kompletten Beitrag, den die falsch erkannte Aufnahme zum Training<br />
geleistet hat wieder zu entfernen oder gar negativ zu trainieren, sondern am<br />
besten nur diejenigen Bereiche, die fehlerhaft erkannt werden. Man kann<br />
dann, nachdem für jede Trainingsaufnahme sowohl eine korrekte Wortfolge<br />
(Transkription) und einer unter Umständen fehlerhafte Transkription (Hypothese).<br />
Für beide Wortfolgen kann nun ein Viterbi-Pfad berechnet werden.<br />
Dann werden die üblichen Baum-Welch Regeln angewandt, wobei die γt(i)<br />
für die Zustands-Zeit-Paare (t, i), die auf dem korrekten Viterbi-Pfad liegen,<br />
mit einem positiven Wert f > 0 und für diejenigen, die auf dem falschen<br />
Viterbi-Pfad liegen, mit einen negativen Wert g < 0 multipliziert (s. Abb.
218 13. Das Trainieren von Spracherkennern<br />
13.4).<br />
korrekter Pfad<br />
falscher Pfad<br />
+<br />
−<br />
Abb. 13.4. Korrektives Trainieren<br />
Für den einfachen Fall, daß der positive und negative Faktor absolut<br />
gleich sind (also f + g = 0), ergibt sich, daß auf allen Bereichen einer<br />
Aufnahme, auf denen der Erkenner keine Fehler macht, oder besser gesagt,<br />
auf denen die Viterbi-Pfade für Transkription und Hypothese gleich sind, gar<br />
keine Trainingskorrektur stattfindet. Auf den Bereichen, wo sich die Pfade<br />
unterscheiden, wird der korrekte Pfad ” normal“ trainiert und der falsche Pfad<br />
negativ. In der Praxis hat sich gezeigt, daß ein negativer aber absolut kleinerer<br />
Wert für g als für f am schnellsten zu den gewünschten Ergebnissen führt.<br />
MMIE-Training<br />
Man kann zeigen, daß mit einer unbegrenzten Menge an Trainingsdaten und<br />
einem Merkmalsraum, der die echte Quelle enthält, die globale Maximum<br />
Likelihood Schätzung in dem Sinne optimal ist, daß sie eine korrekte<br />
Mittelwerteschätzung und eine minimale Varianz liefert. Allerdings ist es<br />
so, daß bei der Entwicklung von HMM Spracherkennern die Trainingsdaten<br />
keineswegs in unbegrenztem Maße vorliegen, in der Regel haben wir weniger<br />
Trainingsmuster als der Merkmalsraum Ecken hat. Und wie nahe das Modell<br />
beziehungsweise der Parameterraum der Wirklichkeit kommen ist schwer<br />
abzuschätzen und mit Sicherheit nicht optimal. So kann man sehr wohl ein<br />
vom Maximum-Likelihood Training abweichendes Verfahren anwenden, das<br />
eine bessere Diskriminierungsfähigkeit hat, wie zum Beispiel das Maximum<br />
Mutual Information Estimation (MMIE) Verfahren.<br />
−<br />
+
13.3 Trainingsparadigmen 219<br />
Das für Hidden Markov Modelle meist angewendete Trainingsverfahren,<br />
das Baum-Welch Training ist auf die Maximum-Likelihood Schätzung ausgelegt<br />
und ist a priori nicht geeignet für diskriminatives Training. Es läßt<br />
sich allerdings erweitern zu einem MMIE-Verfahren [?], wie im folgenden<br />
beschrieben:<br />
Bei der Maximum-Likelihood Schätzung ist das Ziel die Maximierung des<br />
Terms<br />
T<br />
Lλ = lnpλ(X(t)|H(t)) (13.4)<br />
t<br />
wobei H(t) das Transkript der t-ten Trainingsäußerung, oder genauer gesagt<br />
das dazu gehörige Markov Modell ist, und X(t) die Beobachtung, also<br />
die Folge der Merkmalsvektoren der t-ten Trainingsäußerung ist. Der Baum-<br />
Welch Algorithmus transformiert die Parameter λ so, daß garantiert werden<br />
kann, daß Lλ gegen ein lokales Maximum konvergiert. Mit Verwendung von<br />
Lλ berechnet der Baum-Welch Algorithmus beispielsweise die Übergangswahrscheinlichkeiten<br />
für die Iteration t + 1 als<br />
a t+1<br />
ij =<br />
<br />
at ∂L<br />
ij<br />
t λ<br />
∂aij<br />
k at ∂L<br />
ik<br />
t λ<br />
∂aik<br />
Beim MMIE-Training wird statt Lλ der Term Iλ Optimiert:<br />
Iλ =<br />
(13.5)<br />
T<br />
lnpλ(X(t)|H(t)) − lnpλ(X(t)|R) (13.6)<br />
t<br />
wobei R nicht das HMM, das der einen t-ten Äußerung entspricht,<br />
sondern das HMM, das den kompletten Suchraum enthält, wie es bei der<br />
Erkennung verwendet wird. Iλ drückt also nicht die Wahrscheinlichkeit für<br />
die Beobachtung der t-ten Äußerung bei bekannter Wortfolge, sondern das<br />
Verhältnis dieser Wahrscheinlichkeit zur entsprechenden Wahrscheinlichkeit<br />
ohne bekannte Wortfolge. Darin steckt der diskriminative Charakter dieses<br />
Verfahrens.<br />
Der interessierte Leser findet die Details zur Modifikation des Standard<br />
Baum-Welch Algorithmus für die Verwendung des MMIE-Kriteriums zum<br />
Beispiel in [?]. Dort werden Ergebnisse von Experimenten auf einer Buchstabieraufgabe<br />
vorgestellt, die eine Reduktion der Fehlerrate um ca. 8% enthalten.<br />
13.3.2 Trainieren ohne Transkriptionen<br />
Wie bereits im Kap. 9 besprochen, können Trainingsverfahren überwacht<br />
oder unüberwacht sein. In der Spracherkennung bedeutet das im Extremfall
220 13. Das Trainieren von Spracherkennern<br />
die Frage, ob es möglich ist, einen Erkenner mit Sprachaufnahmen zu<br />
trainieren, ohne daß dabei die Transkriptionen der Aufnahmen vorhanden<br />
sind. Die Erfahrung hat gezeigt, daß das Zitat von Bob Mercer: ” there’s<br />
no data like more data“ fast immer anwendbar ist. Daraus entsteht die<br />
Vorstellung, daß die sehr großen vorhandenen Audiodatenmengen genutzt<br />
werden können, um Spracherkenner zu trainieren, ohne vorher den sehr langwierigen<br />
und teuren Prozeß der Transktiption durchlaufen zu müssen. Wenn<br />
man bedenkt, daß die größten sauber transkribierten spontansprachlichen<br />
Datenbasen gerade mal etwa 250h Sprachaufnahmen beinhalten und daß in<br />
den Archiven verschiedener Medien und Sendeanstalten mehrere Millionen<br />
Stunden Sprachaufnahmen existieren, scheint die Hoffnung aus diesen riesigen<br />
Datenmengen einen Vorteil zu ziehen, nicht unbegründet, auch wenn die<br />
dann zu verwendenden Trainingsmethoden weniger gute Ergebnisse erzielen<br />
als überwachte Methoden es auf der gleichen Trainingsmenge könnten.<br />
Die Idee beim Trainieren ohne Transkriptionen ist, einen ersten schlechten<br />
Spracherkenner zu verwenden automatisch Transkriptionen zu erzeugen.<br />
Diese sind dann natürlich von schlechter Qualität und enthalten viele Fehler.<br />
Selbst wenn die Fehlerrate 30% beträgt, könnten so immer noch 70% von<br />
riesigen Datenmengen (z.B. aufgezeichnete Rundfunknachrichten) korrekt<br />
transkribiert zum Trainieren verwendet werden. Es muß allerdings etwas<br />
dagegen unternommen werden, daß die 30% falsch transkribierten Daten die<br />
geschätzten Modelle nicht zu stark verfälschen. Zu den Gegenmaßnahmen<br />
gehören im wesentlichen zwei Vorgehensweisen: die Adaption und konfidenzgewichtetes<br />
Training. Bei der Adaption wird versucht, durch Optimieren<br />
des Erkenners auf den neuen Daten (s. Kap. 21) an die Spracheigenschaften<br />
und Aufnahmebedingungen der großen untranskribierten Datenmengen<br />
anzupassen, und so die Fehlerrate etwas zu senken. Wenn der Erkenner<br />
bessere Transkriptionen erzeugt, dann wird auch der folgende Trainingsprozeß<br />
erfolgreicher verlaufen. Die Erwartung ist nun, durch wiederholtes<br />
Iterieren der automatischen Transkription und des Trainings einen immer<br />
besser werdenden Erkenner zu erhalten, der immer bessere Transkriptionen<br />
erzeugen kann, die wiederum zu besseren Trainingserfolgen führen.<br />
Das Verfahren des konfidenzgewichteten Trainings beruht auf der Feststellung,<br />
daß ein Erkenner zwar nicht angeben kann, welche Teile seiner<br />
Hypothese korrekt sind und welche falsch, aber es ist möglich bestimmte<br />
Konfidenzmaße zu bestimmen [?] [?], die ausdrücken, wie wahrscheinlich<br />
es ist, daß der Erkenner an einer bestimmten Stelle einen Fehler gemacht<br />
hat. Ein relativ leicht verständliches Konfidenzmaß ist zum Beispiel der<br />
Vergleich der (durch den Forward-Algorithmus) berechneten Beobachtungswahrscheinlichkeit<br />
des wahrscheinlichsten Wortes mit der des zweit- oder<br />
drittwahrscheinlichsten Wortes an der gleichen Stelle. Wenn diese Wahrscheinlichkeiten<br />
stark voneinander abweichen, also das wahrscheinlichste
13.3 Trainingsparadigmen 221<br />
viel wahrscheinlicher ist als die anderen, dann ist davon auszugehen, daß<br />
der Erkenner ” sich seiner Hypothese sehr sicher ist“. Wenn die Wahrscheinlichkeiten<br />
jedoch nahe beieinander liegen, kann man annehmen, daß bereits<br />
eine kleine Änderung der Aufnahme womöglich dazu geführt hätte, daß ein<br />
anderes Wort das wahrscheinlichste geworden wäre. In diesem Fall ist die<br />
Konfidenz in die Hypothese eher gering.<br />
Die Konfidenz kt zum Zeitpunkt t kann nun verwendet werden, um<br />
das Training damit zu gewichten. Wenn kt zwischen 0 und 1 liegt, kann es<br />
direkt auf die γt(i) aufmultipliziert werden bevor die Baum-Welch-Regeln<br />
angewandt werden. Es ist aber auch möglich, einen Schwellwert h zu<br />
definieren, und γt(i) auf 0 (für kt < h) oder 1 (für kt ≥ h) zu setzen.<br />
Diese würde bedeuten, daß ein Training nur auf denjenigen Bereichen einer<br />
Aufnahme stattfinden, auf denen der Erkenner sich einigermaßen sicher<br />
ist, die korrekte Hypothese erzeugt zu haben. Selbstverständlich sind auch<br />
die Konfidenzmaße mit der tatsächlichen Korrektheit bestenfalls korreliert<br />
und geben keineswegs 100%-ige Sicherheit. Allerdings helfen sie deutlich,<br />
den Trainingserfolg auf untranskribierten Daten zu steigern. In [?] wird<br />
festgestellt, daß für die gleiche Steigerung der Erkennungsleistung eines<br />
schlechten Erkenners mit initialer Fehlerrate von 78.5%, etwa 100 mal so viele<br />
untranskribierte Daten benötigt werden wie fehlerfrei transkribierte. Dies<br />
berechtigt auf den ersten Blick durchaus zu Optimismus. Allerdings stellt [?]<br />
auch fest, daß die Gewinnaussichten mit steigender Erkennerqualität sinken.<br />
Das heißt, es ist wesentlich mehr Aufwand und Daten nötig, um einen<br />
bereits guten Erkenner noch besser zu machen. So daß dieses Verfahren nur<br />
bedingt anwendbar ist. In [?] wird berichtet, daß durch dieses Verfahren, ein<br />
Erkenner mit initialer Fehlerrate von 38.8% durch Trainieren auf korrekten<br />
Transkriptionen auf eine Fehlerrate von 24.5% verbesser werden konnte. Die<br />
immer noch beachtliche Verbesserung durch Trainieren auf denselben Daten<br />
ohne Transkriptionen allerdings unter Verwendung eines Konfidenzmaßes<br />
reichte allerdings nur zu einer Fehlerrate von 28.5%.<br />
13.3.3 Momentum und adaptives Training<br />
Gelegentlich kommt es vor, daß heterogene Daten vorliegen und eine<br />
Erkennung auf einer Art von Sprache bzw. Aufnahmequalität durchgeführt<br />
werden muß, die sich deutlich von der Art der Trainingsdaten unterscheidet.<br />
Wenn es möglich ist, wenigstens eine kleine Menge an Aufnahmen der neuen<br />
Art zu erhalten, kann diese kleine Menge verwendet werden, um die Parameter<br />
des Erkenners neu zu schätzen. Selbst wenn dabei davon auszugehen<br />
ist, daß diese kleine Menge besser mit der aktuellen Erkennungsaufgabe<br />
übereinstimmt als die große Menge an Daten, mit denen der Erkenner<br />
trainiert worden war, so wäre es doch meistens nicht sinnvoll, die große
222 13. Das Trainieren von Spracherkennern<br />
Menge an Information aus den Trainingsdaten zu verwerfen bzw. nur dazu<br />
zu verwenden, die neuen Daten zu etikettieren. Würde man aber die neuen<br />
Daten einfach nur zu den Trainingsdaten hinzufügen und so die Parameter<br />
neu schätzen, würde die Wirkung der neuen Daten auf die Parameter kaum<br />
merkbar ausfallen.<br />
Eine einfache Möglichkeit, dem Problem zu begegnen, ist die unterschiedliche<br />
Gewichtung der großen alten Datenmenge und der kleinen neuen<br />
Datenmenge. Dabei könnten z.B. die neuen Daten mehrfach trainiert werden.<br />
Alternativ kann man in Anlehnung an entsprechende Trainingsverfahren bei<br />
künstlichen neuronalen Netzen mit Hilfe eines Momentums arbeiten.<br />
Bei Verwendung eines Momentums werden die alten Trainingsdaten nicht<br />
mehr benutzt. Die Systemparameter werden aber nicht einfach durch die<br />
Schätzung mit den neuen Daten ersetzt, sondern nur leicht in deren Richtung<br />
verändert. Müßte nach dem EM-Algorithmus oder der Baum-Welch-Regeln<br />
der Parameter c ersetzt werden durch c ′ = d, dann wird statt dessen<br />
c ′ = ǫ · c + (1 − ǫ) · d gewählt. Der Wert von ǫ kann unterschiedlich – je<br />
nach Größe der neuen Trainingsdatenmenge – gewählt werden, ja sogar<br />
unterschiedlich für verschiedene Parameter.
14. Das akustische Modell<br />
In der Spracherkennung sowie in anderen Mustererkennungsproblemen werden<br />
oft mathematische Modelle der realen Welt entwickelt. Typischerweise<br />
werden bei derart komplexen Problemen selten Modelle verwendet, die das<br />
gesamte Problem auf einmal erfassen. Vielmehr wird das Problem in verschiedene<br />
Teilprobleme unterteilt, von denen man annehmen kann, daß sie<br />
einigermaßen orthogonal sind und getrennt modelliert werden können. Eine<br />
solche Aufteilung ist die in die getrennte Modellierung der Akustik und der<br />
Linguistik. In diesem Kapitel wird die Modellierung der Akustik detailliert<br />
behandelt.<br />
14.1 Die Fundamentalformel der Spracherkennung<br />
Die geeignetste mathematische Darstellung des Problems der Spracherkennung<br />
ist die so genannten Fundamentalformel der Spracherkennung:<br />
ˆW = argmaxp(W|X)<br />
(14.1)<br />
W<br />
= argmax<br />
W<br />
= argmax<br />
W<br />
p(X|W) · p(W)<br />
p(X)<br />
(14.2)<br />
p(X|W) · p(W) (14.3)<br />
Die Formel sagt aus, daß die gesuchte Wortfolge ˆ W diejenige ist, deren<br />
Wahrscheinlichkeit bei gegebener Beobachtung X maximal ist. Nach<br />
Umformung mit der Bayes-Regel stellt man fest, daß der Nenner in Gl.<br />
14.2 der Nenner p(X) , also die A-priori-Wahrscheinlichkeit dafür, daß X<br />
überhaupt beobachtet wird, für das Maximieren unerheblich ist. So bleiben<br />
nur noch zwei Faktoren, die gemeinhin als das akustische Modell p(X|W)<br />
und das Sprachmodell p(W) bezeichnet werden. Das Sprachmodell berechnet<br />
die Wahrscheinlichkeit dafür, daß eine Wortfolge W gesprochen wird, unabhängig<br />
davon, wie sie letztendlich artikuliert wird und wie das produzierte<br />
Signal aussieht. Das akustische Modell berechnet die Wahrscheinlichkeit<br />
dafür, daß eine Beobachtung so aussieht wie das beobachtete Signal, wenn<br />
eine gegebene Wortfolge gesprochen wurde.
224 14. Das akustische Modell<br />
14.2 Der Parameterraum des Akustischen Modells<br />
Während der gesamte Parameterraum des akustischen Modells eines Spracherkennungssystems<br />
aus vielen verschiedenen Arten von Parametern bestehen<br />
kann, so bilden die Parameter der parametrischen Schätzer der Emissionswahrscheinlichkeiten<br />
den größten und wichtigsten Teil dabei. Neben<br />
den Emissionswahrscheinlichkeiten rechnet man üblicherweise auch die Zustandsübergangswahrscheinlichkeiten<br />
zwischen den Zuständen eines Wortes<br />
zum akustischen Modell.<br />
14.2.1 Emissionswahrscheinlichkeitsmodelle<br />
Auch wenn verschiedene Modelle zur Berechnung der HMM-Emissionswahrscheinlichkeiten<br />
eingesetzt werden, so verwendet doch die weitaus größte<br />
Zahl der erfolgreichen Spracherkenner dafür Gauß-Mischverteilungen bzw.<br />
leichte Abwandlungen davon.<br />
Alternative Methoden sind Neuronale Netze wie mehrschichtige Perzeptronen.<br />
Auch kompliziertere Konstruktionen wie hierarchische Mixturen von<br />
Experten [?] (s. Abs. 22.2.7) oder Time-Delay Neuronale Netze [?] (s. Abs.<br />
22.2.5) werden eingesetzt.<br />
Wie in Abb. 12.8 schon gezeigt ist es üblich, daß verschiedene HMM-<br />
Zustände dieselben Emissionswahrscheinlichkeiten benutzen. Diese können<br />
wie in Abb. 12.8 Phoneme repräsentieren aber auch andere Spracheinheiten.<br />
Aus der Sicht eines Hidden-Markov-Modells spielt es keine unmittelbare Rolle,<br />
was für eine Spracheinheit U einem Zustand zugeordnet ist und welcher<br />
Bauart die Emissionswahrscheinlichkeitsmodelle sind. Bei der Implementierung<br />
eines Spracherkenners können diese wie eine abstrakte Klasse behandelt<br />
werden, die einige Operationen bieten muß. Zu diesen Operationen gehören:<br />
• Wahrscheinlichkeitsberechnung:<br />
gegeben: Beobachtung xt<br />
gesucht: P(xt|U)<br />
• Trainingsdatenakkumulation:<br />
gegeben: Beobachtung xt und Trainingsgewicht γt(U)<br />
Aufgabe: je nach Modell,<br />
bei Gauß-Mischverteilungen: E(x) und E(x 2 ) nachführen<br />
• Neuberechnung der Parameter:<br />
Aufgabe: je nach Modell,<br />
bei Gauß-Mischverteilungen: EM-Algorithmus ausführen
14.2 Der Parameterraum des Akustischen Modells 225<br />
Mit diesen Operationen sind alle Schnittstellen zum HMM definiert.<br />
Während der Forward-Backward oder Viterbi-Algorithmus gerechnet werden,<br />
wird immer wieder P(xt|U) angefordert. Für jede Trainingsaufnahme<br />
und jede Beobachtung xt wird dann die Operation zum Akkumulieren<br />
der Trainingsinformationen aufgerufen. Für Gauß-Mischverteilungen bedeutet<br />
dies, daß für jede Gauß-Verteilung Uk die ihr zugeordneten und<br />
sowohl mit dem vom Forward-Backward gelieferten Gewicht γt(i) als auch<br />
dem Anteilsgewicht der Verteilung an P(xt|U) multiplizierten xt und x 2 t<br />
jeweils aufaddiert werden. Dann können am Ende einer Trainingsiteration<br />
mit der Operation zur Parameterneuberechnung entsprechend dem<br />
EM-Algorithmus die neuen Mittelwerte µ = E(x) und Kovarianzmatrizen<br />
Σ = E(x 2 ) − E 2 (x) berechnet werden. Wenn statt Gauß-Mischverteilungen<br />
zum Beispiel neuronale Netze verwendet werden, dann muß statt des EM-<br />
Algorithmus zum Beispiel ein Backpropagation-Verfahren verwendet werden.<br />
Später (im Kap. 17) werden je nach phonetischem Kontext verschiedene<br />
Spracheinheiten vorgestellt und die Thematik behandelt, wie sinnvolle<br />
Einheiten gefunden werden. Jetzt soll der Fokus vielmehr auf die Möglichkeiten<br />
der Modellierung von Emissionswahrscheinlichkeiten bei vorgegebenen<br />
Spracheinheiten gelegt werden.<br />
14.2.2 Kontinuierlichkeitsgrade<br />
Wenn Hidden Markov Modelle für Probleme mit einem diskreten Merkmalsraum<br />
verwendet werden, ist das dazugehörige mathematische Grundgerüst,<br />
ebenso wie die Algorithmen deutlich einfacher. In den Anfängen der Spracherkennung,<br />
als die Verwendung von Fließkommaoperation im Vergleich zu<br />
Rechnungen mit Ganzzahlen wesentlich aufwendiger waren, bot es sich oft<br />
an, den Merkmalsraum zu diskretisieren und statt reellwertiger hochdimensionaler<br />
Spektralvektoren jeweils nur einen einzigen Quantisierungsindex zu<br />
verwenden. Statt Mischverteilungen auf Spektral- oder Cepstralvektoren zu<br />
berechnen, wurden nichtparametrische diskrete Verteilungen (Abb. 14.1) auf<br />
zuvor vektorquantisierten Werten geschätzt.<br />
Abb. 14.1. Rein diskretes Modell (keine Codebücher)<br />
...
226 14. Das akustische Modell<br />
Da bei diesen diskreten Hidden-Markov-Modellen das Berechnen der<br />
Emissionswahrscheinlichkeiten durch ein einfaches Nachsehen in einer<br />
Tabelle geschieht, sind solche Erkenner besonders schnell. Gegebenenfalls<br />
kann sogar auf die Verwendung teurer Fließkommaoperationen verzichtet<br />
werden. Diskrete HMM-Spracherkenner haben aber durchweg eine schlechtere<br />
Leistung (immerhin könnte jedes diskrete HMM durch ein kontinuierliches<br />
” simuliert“ werden). Sie bieten sich daher nur für Spezialaufgaben an,<br />
bei denen keine großen Erkennungsfähigkeiten verlangt werden oder für<br />
Systemen deren Hardware-Ressourcen beschränkt sind.<br />
Da die mit großem Abstand beliebteste Modellierung vom Emissionswahrscheinlichkeiten<br />
Gauß-Mischverteilungen sind, haben sie sich im Sprachgebrauch<br />
inzwischen als Bestandteil eines Hidden-Markov-Modells etabliert. So<br />
spricht man von Semikontinuierlichen Hidden-Markov-Modellen, meint damit<br />
aber vielmehr Hidden-Markov-Modelle mit kontinuierlichem Merkmalsraum<br />
und Gauß-Mischverteilungen mit gekoppelten Mittelwerten und Kovarianzmatrizen.<br />
Betrachten wir zunächst (voll) kontinuierliche Hidden-Markov-Modelle.<br />
Sie zeichnen sich dadurch aus, daß jede Spracheinheit ein eigenes komplettes<br />
Codebuch mit Gauß-Verteilungen und den dazu gehörigen Mixturgewichten<br />
hat. Kein Parameter dieses Codebuchs wird von anderen Spracheinheiten mit<br />
genutzt (s. Abb. 14.2). Der große Vorteil solcher Modelle ist die Möglichkeit<br />
der sehr feinen Modellierung.<br />
Abb. 14.2. Voll kontinuierliches Modell (keine gemeinsame Nutzung von Co-<br />
debüchern)<br />
Die Nachteile voll kontinuierlicher Modelle bestehen vor allem in der<br />
meist sehr großen Zahl an Parametern und in dem damit verbundenen<br />
großen Bedarf an Daten zur robusten Schätzung dieser Parameter. Auf den<br />
ersten Blick mag man den Eindruck haben, daß auch der Aufwand für die
14.2 Der Parameterraum des Akustischen Modells 227<br />
Durchführung eines Viterbi- oder Forward-Backward-Algorithmus deutlich<br />
erhöht wird. Zum einen weil vermehrt Fließkommaoperationen berechnet<br />
werden müssen, zum anderen weil die Auswertung der Gaußverteilungen<br />
eines Codebuchs nicht von mehreren Modellen gemeinsam genutzt werden<br />
kann. In der Praxis stellt sich jedoch oft heraus, daß die ” bessere Qualität“<br />
der kontinuierlich berechneten Emissionswahrscheinlichkeiten viel bessere<br />
Möglichkeiten zur Beschneidung des Suchraumes (s. Kap. 18) bieten, und<br />
somit zwar teurere aber dafür wesentlich weniger Emissionswahrscheinlichkeiten<br />
berechnet werden müssen.<br />
Bis Ende der achtziger Jahre waren kaum Datenbasen verfügbar, die<br />
ausreichten, um sehr große Parameterräume für voll kontinuierliche HMM-<br />
Spracherkenner mit großen Vokabularen gut zu trainieren. Für solche Fälle<br />
bieten sich so genannte semikontinuierliche Hidden-Markov-Modelle an. Bei<br />
diesen hat jede Spracheinheit eine eigene Mischverteilung, aber alle Einheiten<br />
teilen sich dieselbe Menge Gauß-Verteilungen (s. Abb. 14.3).<br />
Abb. 14.3. Semikontinuierliches Modell (ein Codebuch, viele Mixturgewichtever-<br />
teilungen)<br />
Da der größte Teil der Parameter in einem voll kontinuierlichen HMM<br />
in den Mittelwerten und Kovarianzmatrizen der Gauß-Verteilungen steckt,<br />
kann durch Reduktion auf ein einziges Codebuch der Parameterraum<br />
drastisch verkleinert werden. Die wenigen verbleibenden Parameter können<br />
wesentlich robuster geschätzt werden. Selbstverständlich ist die Modellierung<br />
des Merkmalsraumes mit semikontinuierlichen Modellen nicht so fein wie<br />
mit voll kontinuierlichen. Allerdings bieten semikontinuierliche Systeme<br />
einen sehr sinnvollen Kompromiß zwischen guter Trainierbarkeit (da wenige<br />
Parameter) und feiner Modellierung (da kontinuierlicher Merkmalsraum).<br />
Üblicherweise verwenden semikontinuierliche Erkenner ein Codebuch mit<br />
wesentlich mehr Gauß-Verteilungen (zum Beispiel über 1 000 in [?]) als in<br />
den typischerweise zwischen 10 und 100 Verteilungen enthaltenden kleinen
228 14. Das akustische Modell<br />
Codebücher voll kontinuierlicher Systeme. Da alle Gauß-Verteilungen für<br />
jede Beobachtung xt nur einmal ausgewertet werden müssen, können ohne<br />
nennenswerten zusätzlichen Aufwand für die Berechnung der Emissionswahrscheinlichkeiten<br />
sehr viele verschiedene Spracheinheiten mit eigenen<br />
Mixturgewichten verwendet werden.<br />
In der Praxis hat sich allerdings herausgestellt, daß die mangelnde Modellierungsfeinheit<br />
semikontinuierlicher Systeme von Nachteil ist, so daß auch<br />
Mischformen zwischen voll kontinuierlichen Systemen und semikontinuierlichen<br />
mit einem Codebuch entwickelt wurden. Bei diesen Mischformen teilen<br />
sich nicht mehr alle Spracheinheiten ein gemeinsames Codebuch, sondern<br />
mehrere Einheiten einer Gruppe. Gruppen können zum Beispiel Phoneme<br />
sein. Dann ergeben sich phonetisch gekoppelte semikontinuierliche Hidden-<br />
Markov-Modelle (s. Abb. 14.4, in der Literatur gelegentlich als PTSCHMM<br />
bezeichnet: phonetically tied semi continuous hidden Markov models. Die verschiedene<br />
Teile eines Phonems, die dasselbe Codebuch verwenden können<br />
zum Beispiel die zeitlichen Segmente zu Beginn, in der Mitte und am Ende<br />
sein, die jeweils mit einem eigenen HMM-Zustand modelliert werden. Verschiedene<br />
Ausprägungen eines Phonems könnten zum Beispiel die verschiedenen<br />
Erscheinungsformen je nach Kontext (s. Kap. 17) sein.<br />
Verschiedene Teile bzw. Verschiedene Teile bzw.<br />
Ausprägungen Ausprägungen<br />
von Phonem 1 von Phonem 2<br />
Phonem 1 Phonem 2 ...<br />
Abb. 14.4. Phonetisch gekoppeltes semikontinuierliches Modell (ein Codebuch je<br />
Phonem)<br />
Weitere Verfeinerungen gibt es bei subphonetisch gekoppelten Modellen.<br />
Bei diesen teilen sich verschiedene Ausprägungen des gleichen<br />
Phonemsegments ein Codebuch, während jede Ausprägung eine eigene<br />
Mixturgewichteverteilung hat.
14.3 Mehrere Datenströme 229<br />
Ganz allgemein kann man bei der Verwendung von Mischverteilungen zur<br />
Berechnung von Emissionswahrscheinlichkeiten sagen, daß die Wahrscheinlichkeit<br />
dafür, daß eine Beobachtung x zu einer Spracheinheit U gehört, als<br />
p(x|U) =<br />
lU<br />
cUk · NUk(x) (14.4)<br />
k=1<br />
berechnet werden kann. Hierbei ist NUk die k-te von lU Gauß-Verteilungen<br />
des Codebuchs, das von U verwendet wird.<br />
Im Falle von voll kontinuierlichen Modellen gilt, daß für zwei verschiedene<br />
Spracheinheiten i = j sowohl cik = cjk als auch Nik = Njk (hier bedeutet<br />
= nicht, daß die Werte echt verschieden sind, sondern daß es sich um zwei<br />
verschiedene Parameter handelt, die zufällig auch mal die gleichen Werte<br />
haben können).<br />
Im Falle von rein semikontinuierlichen Modellen gilt immer noch cik = cjk<br />
für verschiedene Einheiten i und j, jedoch Nik = Njk ∀i, j, da es nur ein<br />
einziges Codebuch gibt.<br />
Im Falle von phonetisch gekoppelten semikontinuierlichen Modellen<br />
gilt Nik = Njk, wenn die Einheiten i und j verschiedene Segmente oder<br />
verschiedene Ausprägungen desselben Phonems sind.<br />
14.3 Mehrere Datenströme<br />
Bevor die lineare Diskriminanzanalyse das bevorzugte Mittel zur Beherrschung<br />
hochdimensionaler Merkmalsräume wurde verwendeten viele Erkenner<br />
(zum Beispiel [?] [?]) R unabhängige Teilräume, die jeder für sich Emis-<br />
sionswahrscheinlichkeiten b r j<br />
(x) für die Beobachtung X im Zustand j berech-<br />
neten, und die Gesamtemissionswahrscheinlichkeit berechnete sich aus dem<br />
Produkt aller Teilraumwahrscheinlichkeiten:<br />
bj(x) =<br />
R<br />
r<br />
b r j (x) (14.5)<br />
Typische Unterteilungen des Merkmalsraumes waren zum Beispiel<br />
ein Teilraum für die Spektral- oder Cepstralkoeffizienten und ein zweiter<br />
Teilraum für die Ableitung dieser (Delta-Koeffizienten). Da diese Teilraumunterteilung<br />
wie die Verwendung mehrerer Datenströme aussah wurde sie<br />
auch ” Multi-Stream“ Methode genannt.
230 14. Das akustische Modell<br />
Der große Vorteil der Multi-Stream Methode liegt nicht nur in der Unterteilung<br />
des Merkmalsraumes ist mehrere Teilräume, die jeder für sich leichter<br />
und besser trainierbar sind, sondern auch in den folgenden möglichen Anwendungen:<br />
• Verwendung unterschiedlicher Rechenverfahren für Emissionswahrscheinlichkeiten:<br />
So ist es zum Beispiel möglich, eine Emissionswahrscheinlichkeit zu<br />
berechnen, zu der sowohl Gauß-Mischverteilungen als auch andere Modelle<br />
wie künstliche neuronale Netze oder andere parametrische Schätzer beitragen.<br />
Dann kann die Gesamtemissionswahrscheinlichkeit als gewichtetes<br />
Produkt der Ergebnisse der einzelnen Berechnungsmethoden zusammengesetzt<br />
werden. Erfolgreich wurde dies schon bei hierarchischen Mixturen<br />
von Experten [?] eingesetzt (s. Abs. 22.2.7).<br />
• Möglichkeit, die verschiedenen Ströme je nach HMM-Zustand unterschiedlich<br />
zu gewichten:<br />
Zunächst wurden bei Multi-Stream Systemen die Gewichtungsfaktoren für<br />
die einzelnen Ströme empirisch bestimmt und dieselben Gewichte für alle<br />
akustischen Modelle verwendet, so zum Beispiel in [?] [?] [?]. Nun ist es<br />
durchaus sinnvoll zu erwarten, daß manche akustischen Modelle von dem<br />
einen oder anderen Strom stärker abhängen als von anderen. So könnte man<br />
vermuten, daß Diphthonge mehr von den Delta-Koeffizienten abhängen<br />
beziehungsweise von diesen besser modelliert werden, während Frikative<br />
eher weniger von den Delta-Koeffizienten abhängen. So berechnet sich die<br />
Emissionswahrscheinlichkeit bj(x) für die Beobachtung von x im Zustand<br />
j mit n Datenströmen als:<br />
bj(x) =<br />
n<br />
b i j(x) fi(j)<br />
i=1<br />
(14.6)<br />
Die Gewichtung fi(j), mit der der i-te Datenstrom in die Berechnung für<br />
den Zustand j eingeht, muß selbstverständlich im Exponenten geschehen,<br />
wenn die Einzelwahrscheinlichkeiten aufmultipliziert werden. Betrachtet<br />
man statt der Emissionswahrscheinlichkeiten deren Logarithmen, so ergibt<br />
sich eine multiplikative Gewichtung. Um sicherzustellen, daß die bj(xt)<br />
echte Wahrscheinlichkeiten sind, muß natürlich gelten, daß 0 ≤ fi(j) ≤ 1<br />
und n<br />
i=1 fi(j) = 1.0 ∀j.<br />
Eine Möglichkeit, geeignete Werte für die fi(j) zu finden, wird in [?]<br />
vorgestellt. Dabei wird für jede Trainingsaufnahme ein Viterbi-Pfad<br />
q1, q2, . . .qn und alle Emissionswahrscheinlichkeiten bj(xt) berechnet.<br />
Letzteres kann je nach Parameterraum sehr aufwendig werden. Wenn der
14.4 Parameterkopplung 231<br />
Zustand s B mit der besten (d.h. höchsten) Emissionswahrscheinlichkeit<br />
zum Zeitpunkt t nicht der Zustand sqt des Viterbi-Pfades ist, dann werden<br />
fi(B) und fi(qt) jeweils um einen kleinen Wert verändert, so daß bqt(xt)<br />
vergrößert und bB(xt) verkleinert wird. In [?] konnte so die Fehlerrate<br />
gegenüber einem System mit gleichgewichteten Strömen um 20% bis über<br />
40% reduziert werden.<br />
• Verwendung artikulatorischer Merkmale:<br />
Die Verwendung mehrerer unabhängiger Ströme bietet sich auch an bei<br />
der Abstraktion von Phonemen und der Erkennung mit Hilfe artikulatorischer<br />
Eigenschaften. Diese sind in Abs. 6.3.2 beschrieben und umfassen<br />
Eigenschaften wie Stimmhaftigkeit, Artikulationsort und so weiter. Nun<br />
ist es möglich, die Emissionswahrscheinlichkeit für einen Zustand als das<br />
– gegebenenfalls gewichtete – Produkt der Klassifikationswahrscheinlichkeiten<br />
der für diesen Zustand relevanten Artikulatorischen Eigenschaften<br />
zu definieren [?] [?]. Auf diese Art kann die Notation eines Phonems als<br />
Wortuntereinheit beibehalten werden, jedoch ist die Modellierung mehr<br />
an der akustischen als an der linguistischen Manifestation orientiert.<br />
Ein weiterer Vorteil der Verwendung artikulatorischer Merkmale besteht<br />
in ihrer relativ hohen Sprachenunabhängigkeit. So konnte gezeigt werden<br />
[?] [?], daß sie auch gewinnbringend für multilinguale Spracherkenner (s.<br />
Kap. 25) eingesetzt werden können.<br />
14.4 Parameterkopplung<br />
Parameterkopplung manifestiert sich auf verschiedene Arten:<br />
• mehrere reale Phänomene teilen sich ein Modell<br />
• mehrere Modelle teilen sich einige Parameter<br />
• einzelne Parameter eines Modells werden mit entsprechenden Parametern<br />
anderer Modelle interpoliert (geglättet)<br />
Die Motivation für die Parameterkopplung ist einmal die Gleichbehandlung<br />
gleicher oder ähnlicher Phänomene, und außerdem die Erwartung, daß<br />
bei weniger Parametern diese robuster trainiert werden können. Wenn man<br />
die Entwicklung von Spracherkennern als eine Mischung zwischen Technik<br />
und Kunst ansehen möchte, so hat die Wahl der Parameterkopplung den<br />
größten Anteil an der Kunst. Vergleicht man die Architektur verschiedener<br />
Systeme, die an DARPA Evaluationen teilnehmen, so stellt man fest,<br />
daß im wesentlichen alle Hidden-Markov-Modelle und nahezu identische
232 14. Das akustische Modell<br />
Signalverarbeitungsmethoden verwenden. Die größten Unterschiede findet<br />
man in der Art wie die Parameter gekoppelt werden [?].<br />
Eine für die Qualität eines Spracherkenners entscheidende Frage ist also<br />
die Frage danach, welche Phänomene aus der ” realen Welt“ mit einem<br />
eigenen Modell in der Modellwelt modelliert werden. Dabei gilt es, zwei Dimensionen<br />
zu beachten. Die eine ist die Dimension der zeitlichen Ausbreitung<br />
eines Modells, die andere die der merkmalsräumlichen Ausbreitung. Unterschiedliche<br />
zeitliche Ausbreitungen können sich dadurch manifestieren, daß<br />
entweder Modell für kurze Einheiten wie z.B. Phoneme oder deren Untereinheiten<br />
gebildet werden, oder für längere Einheiten wie z.B. Silben oder gar<br />
Wörter. Bei der Frage, welche Ausbreitung im Merkmalsraum die Modelle<br />
haben, kann man zwischen sehr spezifischen Modellen, wie z.B. einer ganz<br />
bestimmten Ausprägung eines Phonems, und sehr groben Modellen, wie z.B.<br />
Klassen von Phonemen (vgl. Kap. 6) unterscheiden. Tab. 14.1 und Tab. 14.2<br />
fassen die Vor- und Nachteile unterschiedlicher Spracheinheiten zusammen.<br />
Zeitliche<br />
Ausdehnung Vorteile Nachteile<br />
kurz hohe Flexibilität wenig Evidenz im Sprachsignal<br />
Domänenunabhängigkeit ⇒ hohe Verwechselbarkeit<br />
lang hohe Erkennungsrate wenig Trainingsdaten pro Einheit<br />
Tabelle 14.1. Vor- und Nachteile verschiedener zeitlicher Ausdehnung von<br />
Spracheinheiten<br />
Zeitlich kurze Einheiten (Phoneme) haben den Vorteil, daß sich aus ihnen<br />
sehr einfach längere Einheiten (Silben, Wörter) durch Konkatenation zusammensetzen.<br />
Würden Silben verwendet, wäre es schwierig beliebige Wörter<br />
(insbesondere Frendwörter) aus ihnen bauen. Der Nachteil kurzer Einheiten<br />
manifestiert sich in der geringeren Evidenz im Signal. Dadurch werden sie<br />
leichter verwechselbar als lange Einheiten. Den Vorteil der besseren Erkennungsgenauigkeit<br />
erkaufen sich lange Einheiten durch das Problem, daß sie<br />
seltener in den Trainingsdaten vorkommen und somit schwer trainierbar sind.<br />
Einheiten mit kleiner räumlicher Ausdehnung können durch eine relativ<br />
exakte Positionierung im Merkmalsraum gut beschrieben werden. Überla-
Räumliche<br />
14.5 Mehrdimensionale Hidden-Markov-Modelle 233<br />
Ausdehnung Vorteile Nachteile<br />
klein gute diskriminative wenig Trainingsdaten pro Einheit<br />
Fähigkeiten<br />
groß robust trainierbar schlechte Diskriminativität<br />
Tabelle 14.2. Vor- und Nachteile verschiedener räumlicher Ausdehnung von<br />
Spracheinheiten<br />
gerungen mit anderen Einheiten sind weniger wahrscheinlich als bei breiter<br />
ausgedehnten, somit ist die Unterscheidbarkeit (Diskriminativität) höher.<br />
Allerdings gibt es umso weniger Trainingsdaten pro Einheit, je kleiner ihr<br />
Anteil am Merkmalsraum ist. Räumlich große Einheiten haben entsprechend<br />
mehr Trainingsdaten und sind so robust trainierbar, allerdings ist die Wahrscheinlichkeit<br />
der Überlagerung mit anderen Einheiten im Merkmalsraum<br />
größer, womit die Diskriminativität sinkt.<br />
Abb. 14.5 illustriert verschiedene Möglichkeiten der Parameterkopplung.<br />
Auf oberster Ebene wird die Entscheidung getroffen, welche HMM-Zustände<br />
durch das gleiche ” akustische Atom“ modelliert werden. Wenn Gauß-<br />
Mischverteilungen verwendet werden, dann ist ein akustisches Atom durch<br />
eine Mixturgewichteverteilung definiert. Auf der nächst tieferen Ebene wird<br />
festgelegt, welche Mixturgewichteverteilung über welchen Codebüchern von<br />
Gauß-Verteilungen definiert ist. Hier sind grundsätzlich beliebige Kopplungsgrade<br />
– nicht nur die in Abs. 14.2.2 vorgestellten – realisierbar und<br />
werden auch in der Praxis realisiert. Kap. 17 wird darauf weiter eingehen.<br />
Auf unterster Ebene ist es des weiteren noch möglich, daß verschiedene<br />
Gauß-Mischverteilungen sich einige Parameter (z.B. - wie dargestellt -<br />
Kovarianzmatrizen) teilen.<br />
14.5 Mehrdimensionale Hidden-Markov-Modelle<br />
<strong>Mensch</strong>en haben die Fähigkeit, aus einem Stimmengewirr von zwei oder mehr<br />
gleichzeitig sprechenden Personen eine herauszuhören und zu verstehen. Dies<br />
geht sogar – wenn auch mit mehr Verständnisfehlern – wenn die Stimmen
234 14. Das akustische Modell<br />
Σ Σ Σ Σ<br />
Abb. 14.5. Verschiedene Ebenen der Parameterkopplung<br />
aus einem Lautsprecher kommen und so die getrennte Lokalisierung der<br />
Schallquellen durch das binaurale Hören nicht möglich ist. Nach dem heutigen<br />
Stand der Technik ist nicht abzusehen, daß maschinelle Spracherkenner<br />
ähnliche Leistungen bald auch erbringen können. Dennoch gibt es viele<br />
ähnliche Aufnahmesituationen, die etwas einfacher zu handhaben sind, bei<br />
denen zum Beispiel ein Sprecher und irgendwelche Hintergrundgeräusche<br />
sich überlagern. Wenn die Hintergrundgeräusche wesentlich weniger Energie<br />
enthalten als die zu erkennende Stimme, dann bieten oft Adaptionsmethoden<br />
(s. Kap. 21) gute Lösungen. Wenn die Energie der Hintergrundgeräusche<br />
jedoch in die Größenordnung der Energie der Sprache kommt, und wenn<br />
die Hintergrundgeräusche eine eigene Struktur haben, dann bietet sich eine<br />
Vorgehensweise an, die als Verwendung mehrdimensionaler Hidden-Markov-<br />
Modelle bezeichnet werden kann.<br />
Die bei solchen Modellen basiert auf der Annahme, daß alle (beide)<br />
Schallquellen Signale erzeugen, die durch ein Hidden-Markov-Modell modelliert<br />
werden können. Im einfachen Fall, würde ein HMM die Sprache<br />
und eines die Geräusche (Musik, Auto, Büro etc.) modellieren. Jedes HMM<br />
hat seine eigene Zustandsmenge. Die Forward-Backward- und Viterbi-<br />
Algorithmen können aber nicht unabhängig voneinander durchgeführt<br />
werden, weil die einzelnen Signale nicht isoliert vorliegen. Daher wird für<br />
sie ein Zustandsraum aufgebaut, der das kartesische Produkt der einzelnen<br />
Zustandsräume S (1) × S (2) ist. Wenn der Zustand s (1)<br />
i der i-te Zustand
14.5 Mehrdimensionale Hidden-Markov-Modelle 235<br />
des ersten HMMs ist und s (2)<br />
j der j-te Zustand des zweiten HMMs, dann<br />
verwendet das mehrdimensionale HMM den Zustand sij, der Ausdrückt,<br />
daß sich der erste stochastische Prozeß im Zustand s (1)<br />
i und der zweite im<br />
Zustand s (2)<br />
j befindet. Die Wahrscheinlichkeit für einen Übergang von sij<br />
in den Zustand skl berechnet sich dann aus dem Produkt der einzelnen<br />
Übergangswahrscheinlichkeiten a (1)<br />
ik · a (2)<br />
jl . Diese einfache Multiplikation<br />
kann aufgrund der Unabhängigkeitsannahme für die beiden stochastischen<br />
Prozesse gemacht werden. Etwas komplizierter ist die Berechnung der<br />
Emissionswahrscheinlichkeiten. Hier wäre es falsch bij(x) = b (1)<br />
i (x) · b (2)<br />
j (x)<br />
zu setzen, denn die Beobachtung x ist eigentlich die Summe zweier Beobachtungen<br />
x (1) + x (2) . Wenn das einfachere der Modelle (dasjenige, das die<br />
Störgeräusche modelliert) nur weniger Zustände hat, dann ist es denkbar,<br />
für jedes Zustandspaar aus S (1) × S (2) eine eigene Gauß-Mischverteilung<br />
zu trainieren – vorausgesetzt es gibt ausreichend viele Daten. Wenn aber<br />
die Daten nicht reichen, oder wenn der resultierende Zustandsraum zu groß<br />
ist (zum Beispiel wenn beide Quellen Sprache enthalten), dann muß aus<br />
für jedes HMM getrennt trainierten Mischverteilungen ein gemeinsamer<br />
Emissionswahrscheinlichkeitswert kombiniert werden. Diese Kombination<br />
hängt natürlich von den Details der einzelnen Modelle ab.<br />
B<br />
A<br />
Pfad = A, A, A, B, B, D, F<br />
C<br />
D<br />
E<br />
F<br />
1 2 3 4 5 6 7<br />
t<br />
Pfad = (A,X), (A,X), (A,Y), (B,Y), (D,Z), (F,Z)<br />
Z<br />
Y<br />
X<br />
1 2 3 4 5 6 7<br />
Abb. 14.6. Eindimensionales und zweidimensionales HMM<br />
Das Ergebnis des Viterbi-Algorithmus ist dann nicht mehr ein Pfad durch<br />
eine Zustandsmatrix, sondern durch einen höherdimensionalen Zustandsraum<br />
(s. Abb. 14.6).<br />
t<br />
A<br />
B<br />
C<br />
D<br />
E<br />
F
236 14. Das akustische Modell<br />
14.6 Aussprachemodellierung<br />
Wenn wir das akustische Modell aus der Fundamentalformel der Spracherkennung<br />
berechnen, läßt sich p(x|W) auf viele verschiedene Arten zerlegen.<br />
Die bei weitem am meisten verwendete Zerlegung ist die von W in eine Folge<br />
von akustischen Einheiten, typischerweise Allophone bzw. deren Untersegmente.<br />
In letzter Zeit häufen sich Ansätze, die eine Zerlegung von W weniger<br />
nach phonetischen Einheiten sondern eher nach Sequenzen artikulatorischer<br />
Eigenschaften [?] gestalten. Der große Vorteil einer Zerlegung in Phoneme<br />
besteht darin, daß ein in die Lautschrift Eingeweihter – nicht unbedingt<br />
ein Phonetiker – relativ einfach die phonetische Umschrift für ein Wort<br />
bestimmen kann.<br />
Es gibt einige Ansätze, Spracherkennung mit null phonetischem Wissen<br />
zu machen [?] [?] [?], allerdings bisher für die meisten Sprachen mit deutlich<br />
schlechterer Erkennungsrate. Für Sprachen mit phonetischer Orthographie<br />
ist es einfach möglich, aus der Orthographie die korrekte Aussprache direkt<br />
abzuleiten. Für die meisten Sprachen, insbesondere für das Englische ist dies<br />
nicht mehr möglich. So verwenden die allermeisten Spracherkenner im voraus<br />
erstellte Lexika, in denen für jedes erkennbare Wort zur Orthographie dieses<br />
Wortes auch die entsprechende phonetische Umschrift eingetragen ist. Nur<br />
mit dieser Information können gute HMMs für die Wörter aufgebaut werden.<br />
14.6.1 Aussprachelexika und Text-To-Speech Systeme<br />
Dieser Abschnitt beschäftigt sich nicht mit der akustischen Qualität<br />
von Sprachsynthesesystemen. Wenn wir hier von <strong>Mensch</strong>-<strong>Maschine</strong>-<br />
<strong>Kommunikation</strong> reden, ist der die <strong>Kommunikation</strong> vom <strong>Mensch</strong>en zur<br />
<strong>Maschine</strong> gemeint. Inwiefern können Text-To-Speech Systeme für das<br />
Verstehen menschlicher Sprache dennoch gewinnbringend eingesetzt werden?<br />
Der Begriff ” Text-To-Speech Systeme“ wird für zweierlei Dinge verwendet,<br />
einmal für die Generierung der Phonemfolge aus einem gegebenen<br />
Text, und darüber hinaus auch für komplette Sprachsynthesesysteme mit<br />
zusätzlicher Erzeugung eines Sprachsignals.<br />
Zweifellos ist es nötig, für eine große Akzeptanz von natürlichsprachlichen<br />
<strong>Mensch</strong>-<strong>Maschine</strong> Dialogsystemen eine sehr gute Sprachsynthese zu<br />
verwenden. Dazu gehören im wesentlichen drei nicht unbedingt unabhängige<br />
Teile: Die akustische Qualität, die korrekte Prosodie (s. 23) und die korrekte<br />
Auswahl der Lautefolge.<br />
Die meisten Sprachsynthesesysteme verwenden einen mehrstufigen<br />
Prozeß zum Generieren eines Sprachsignals. In der ersten Phase wird dem
14.6 Aussprachemodellierung 237<br />
auszusprechende Text eine Folge von Lauten aus einem Lauteinventar<br />
zugewiesen. Parallel dazu werden außerdem für diese Laute Eigenschaften<br />
wie Betonung und Länge berechnet. In einer zweiten Phase werden die<br />
zu den Lautfolgen passenden Signalstückchen zu einem Gesamtsignal<br />
” zusammengeklebt“. Dabei werden noch diverse Glättungsmethoden und<br />
vor allem die prosodischen Eigenschaften (Sprechrhythmus und -melodie)<br />
berücksichtigt. Damit sich eine Frage auch als Frage anhört und der Ton<br />
am Ende des Satzes wie bei Fragen üblich nach oben geht, müssen bei<br />
guten Systemen auch die Interpunktionszeichen ausgewertet werden oder<br />
sogar eine eingebundene Verstehenskomponente verwendet werden, die die<br />
benötigten Informationen über die Satzstruktur liefert.<br />
Aber nicht nur für die Qualität der Sprachausgabe sind gute Aussprachelexika<br />
von Bedeutung. Selbstverständlich wird durch die Lexika<br />
auch das akustische Modell von Spracherkennern bestimmt. Weichen die<br />
Einträge im Lexikon stark von den tatsächlich gesprochenen ab, so hat<br />
dies zur Folge, daß beim Erkennen die berechneten Wahrscheinlichkeiten<br />
für verschiedene Wörter ” irreführend“ sind, und beim Trainieren Modelle<br />
mit einer großen Varianz entstehen, bzw. sehr ähnliche Daten aus<br />
den in Wirklichkeit gleichen Lauten auf verschiedene Modelle verteilt werden.<br />
So hat sich in der Praxis herausgestellt, daß die besten Erkennungsergebnisse<br />
unter Verwendung von Aussprachelexika erzielt wurden, die von<br />
Experten auf den Gebieten der Phonetik und der Spracherkennung manuell<br />
entwickelt wurden. Unerläßlich für ein gutes Funktionieren ist dabei auch<br />
die Auswahl mehrerer Aussprachevarianten für ein Wort.<br />
14.6.2 Neue Wörter einbinden<br />
In vielen Aufgaben, in denen Spracherkenner eingesetzt werden, ist das<br />
Vokabular nicht im voraus bekannt. Insbesondere Eigennamen von Personen,<br />
geographischen Entitäten, Firmen oder Ereignissen können nicht immer<br />
vorher bekannt sein. In diesen Fällen ist es interessant, automatisch –<br />
also ohne Hinzuziehen von menschlichen Experten – neue Wörter in das<br />
Aussprachelexikon aufzunehmen.<br />
Das Einbinden neuer Wörter ist eine eigene Teildisziplin der Spracherkennung<br />
für sich [?]. Da geht es einmal um die Detektion neuer Wörter, die<br />
Generierung einer Aussprache, das Hinzunehmen ins Sprachmodell und die<br />
Bestimmung geeigneter akustischer Modelle. Aus der Sicht des Akustischen<br />
Modells steht man zwei Herausforderungen gegenüber: der Bestimmung<br />
eines Eintrags im Aussprachelexikon und schließlich der Bestimmung der<br />
akustischen Atome für die HMM-Zustände. Bei völlig kontextunabhängigen
238 14. Das akustische Modell<br />
akustischen Atomen kann aus der Aussprache die dazu gehörige HMM-<br />
Zustandsfolge direkt ohne Umwege abgeleitet werden. Wenn wir aber davon<br />
ausgehen, daß wir spezifischere Modelle verwenden, kann es vorkommen, daß<br />
in dem neuen Wort Phoneme in bestimmten Kontexten oder Ausprägungen<br />
vorkommen, die bis dahin in den Trainingsdaten nicht beobachtet worden<br />
waren. In solchen Fällen gilt es, aus dem vorhandenen Repertoire an<br />
akustischen Einheiten die passenden auszuwählen (Details dazu in Kap. 17).<br />
Mitte der achtziger Jahre machte ein Experiment von T. Sejnowski<br />
Furore und trug mit dazu bei, daß die durch den Artikel von Minski<br />
und Papert quasi betäubte Forschung an künstlichen neuronalen Netzen<br />
wiederbelebt wurde [?]. Bei diesem Experiment wurde ein verhältnismäßig<br />
einfaches dreischichtiges Perzeptron (vgl. Kap. 22) mit ca. 200 Neuronen<br />
trainiert, bei Eingabe eines Buchstaben und seiner Nachbarbuchstaben in<br />
einem Text das dazu passende Phonem zu generieren. Natürlich hatte das<br />
Netz Schwierigkeiten beim Erzeugen von Phonemfolgen für Eigennamen,<br />
Fremdwörter oder Buchstabenfolgen bei denen die Zuordnung Buchstabezu-Phonem<br />
stark von einer Eins-zu-eins-Zuordnung abwich. Auch wenn die<br />
Qualität der so produzierten Aussprache von der heutiger Systeme noch<br />
weit weg war, so kann man es allein schon wegen seiner Einfachheit als<br />
einen sehr gelungenes Experiment bezeichnen. Deutlich besser als so ein<br />
einfaches Perzeptron funktionieren Regelbasierte Text-To-Speech Systeme.<br />
Diese enthalten Regeln, wie bestimmte Buchstabenfolgen der Orthographie<br />
ausgesprochen werden, und für einige Wörter und Eigennamen auch komplette<br />
Phonemfolgen.<br />
Die typischen Aussprachelexika werden heute in einem zweistufigen<br />
Prozeß erzeugt. Zuerst wird mit einem Regelbasierten System für jedes<br />
Vokabularwort eine Aussprache erzeugt. Dabei wird gegebenenfalls geprüft,<br />
ob Teile des zu phonetisierenden Wortes selbst schon bekannte Wörter oder<br />
Teile bekannter Wörter sind. Dann können diese bereits bekannten Aussprachen<br />
verwendet werden. Im zweiten Durchgang überprüft ein <strong>Mensch</strong> die<br />
automatisch erzeugten Umschriften, was schneller geht, als wenn der <strong>Mensch</strong><br />
von Anfang an die Umschriften erzeugt. Schlechte Umschriften lassen sich<br />
teilweise dadurch aufdecken, daß auf einer Testdatenmenge die phonetisch<br />
falsch beschriebenen Wörter überdurchschnittlich viele Fehler verursachen.<br />
Solche müssen dann bei Bedarf manuell korrigiert werden. Ein als ganzes<br />
sorgfältig manuell erzeugtes, auf die Belange der Spracherkennung hin<br />
optimiertes Aussprachelexikon [?] kann gegenüber einem halbautomatisch<br />
erzeugten Lexikon [?] die Fehlerrate eines Erkenners um über 10% (von<br />
10.7% auf 9.3%) senken [?].
14.6.3 Aussprachevarianten<br />
14.6 Aussprachemodellierung 239<br />
Das gleiche Wort kann auf unterschiedliche Weise ausgesprochen werden. Das<br />
kann an verschiedenen Gründen liegen. Zu den häufigsten zählen:<br />
• Verschiedene Kontexte<br />
In der Deutschen Sprache ist dies seltener zu beobachten als in vielen<br />
anderen Sprachen. Relativ gut bekannt ist dieses Phänomen im Französischen.<br />
Ob ein Konsonant am Ende eines Wortes artikuliert wird oder<br />
nicht hängt dort davon ab, mit welchem Laut das nachfolgende Wort<br />
beginnt. Daher läßt sich nicht immer eine eindeutige Aussprache für ein<br />
bestimmtes Wort angeben. Gegebenenfalls müssen mehrere Varianten<br />
angegeben werden.<br />
• Dialekte und regionale Unterschiede<br />
Bei vielen <strong>Mensch</strong>en läßt sich ihre Herkunft bzw. ihr bevorzugter Dialekt<br />
auch dann noch aus ihrer Aussprache erkennen, wenn sie sich Mühe geben,<br />
die Hochsprache zu sprechen. So werden z.B. in manchen Regionen gerollte<br />
R-Laute bevorzugt. Gerade in spontaner Sprache machen sich viele Sprecher<br />
aber nicht die Mühe, ihren Dialekt komplett zu unterdrücken, so daß<br />
ein guter Spracherkenner verschiedene mögliche Aussprachen kennen sollte.<br />
• Verschiedene korrekte Aussprachen<br />
Dasselbe Wort kann oft auf verschiedene Arten korrekt, d.h. auch ohne<br />
regionale Einfärbung ausgesprochen werden. So ist es im Deutschen oft<br />
üblich das G am Ende einer Silbe wie ein CH zu sprechen (König vs.<br />
Könich, oder ” Jachtfluchzeuch“). Manche Wörter besitzen per se schon<br />
verschiedene Varianten wie das Wort Chemie (Aussprache: Schemie oder<br />
Kemie).<br />
• Häufigste Aussprache nicht korrekt<br />
Ein Erkenner, der zwar die korrekten Aussprachen der Wörter kennt, aber<br />
nicht die am häufigsten verwendeten, wird viele Fehler machen. Im Deutschen<br />
kann dies zum Beispiel besonders bei Fremdwörtern vorkommen. So<br />
werden zum Beispiel Wörter wie ” Sex“ oder ” Super“ oft fälschlicherweise<br />
mit stimmhaftem S am Anfang gesprochen. Andere Beispiele für die<br />
nicht-kanonische Aussprache sind Wörter wie ” und“ und ” Hand“ die am<br />
Ende sehr selten mit einem D- und viel öfter mit einem T-Laut gesprochen<br />
werden.<br />
Aussprachelexika mit Varianten<br />
Daher verwenden heute alle erfolgreichen Spracherkenner Aussprachelexika
240 14. Das akustische Modell<br />
mit Varianten. Die beliebteste Vorgehensweise ist die, daß für jedes Wort, das<br />
mehrere Aussprachen hat, auch mehrere Einträge ins Lexikon eingetragen<br />
werden. Manche Lexika verwenden ganze Phonemgraphen, die als eine Art<br />
regulärer Ausdruck dargestellt werden. Z.B. kann der Eintrag für HABEN<br />
aussehen wie H A {B [E] N | M} und damit die Aussprachen HABEN<br />
HABN und HAM beinhalten. In einem Experiment auf dem Amerikanischen<br />
Wall Street Journal Benchmark konnte die Fehlerrate des Erkenners durch<br />
Verwenden von Aussprachevarianten von 15% auf 12.2% gesenkt werden<br />
Eine in diesem Zusammenhang sehr wichtige Frage ist die nach der<br />
Herkunft und Menge der verwendeten Aussprachevarianten. In einschlägigen<br />
gedruckten Lexika findet man oft nur eine kanonische Aussprache und nur<br />
sehr selten Varianten. Dialekte, regionale Einfärbungen und häufige Abweichungen<br />
findet man sehr selten. Typische Möglichkeiten für die Gewinnung<br />
von Varianten sind:<br />
• Linguisten / Phonetiker<br />
Experten auf diesen Gebieten kennen sich sehr gut aus. Die Praxis zeigt<br />
aber immer wieder, daß die tatsächlichen Laute aus akustischer Sicht oft<br />
nicht den linguistischen Erwartungen entsprechen.<br />
• Akustiker / Spracherkennungsforscher<br />
Diese Experten bringen die besten Aussprachelexika zustande. Oft ist es<br />
erst die Erfahrung mit der Akustik oder mit der Spracherkennung, die zu<br />
solchen Erkenntnissen führt, aufgrund derer eine Aussprachevariante U N<br />
T für das Wort ” und“ eingeführt wird.<br />
• Regelwerk<br />
Ähnlich wie die Beobachtung, daß silbenabschließende G-Laute oft<br />
wie CH-Laute gesprochen werden, kann man auch zahlreiche andere<br />
Regelmäßigkeiten beobachten, die sich in ein Regelwerk zusammenfassen<br />
lassen, mit dessen Hilfe aus einem kanonischen Lexikon eines mit vielen<br />
Varianten vollautomatisch erzeugt werden kann. Typische Regeln für das<br />
Deutsche sind z.B. die so genannte Schwa-Ellision, bei der Schwa-Laute<br />
wie der zweite Vokal im Wort ” haben“ komplett weggelassen werden kann,<br />
oder Änderungen der Vokalqualität wie z.B. beim Wort ” Bäcker“ das eher<br />
wie ” Becker“ ausgesprochen wird.<br />
• Phonemerkenner<br />
Bei diesem Ansatz wird ein Spracherkenner verwendet, der Phoneme statt<br />
Wörter erkennt. Bei ausreichend vielen Beispielen kann selbst auf den<br />
relativ stark fehlerbehafteten Phonemhypothesen eine Statistik erstellt
14.6 Aussprachemodellierung 241<br />
werden, die die häufigsten Aussprachen bestimmter Wörter zu Tage treten<br />
läßt.<br />
Auswahl der Varianten<br />
Leider ist es nicht so, daß ein willkürliches Volladen des Aussprachelexikons<br />
mit vielen Varianten zum Erfolg führt. Das dabei entstehende Problem ist<br />
im folgenden illustriert:<br />
Sprecher meinte:<br />
” Nimm mal einen Hammer.“<br />
Sprecher sagte:<br />
” Nimm mal ’n’ Hammer.“<br />
Erkenner ohne Varianten:<br />
” Nimm mal Hammer.“<br />
In diesem Beispiel wurde das Wort einen“ – wie so oft – so schwach ar-<br />
”<br />
tikuliert, daß der Erkenner nichts Sinnvolles an dieser Stelle Erkennen konnte.<br />
Die erste Idee zur Beseitigung des Problems ist nun, das Aussprachelexikon<br />
so anzureichern, daß auch die Variante ’n’ als Aussprache für ” einen“<br />
darin vorkommt. Bei der Gelegenheit könnten dann auch gleich einige<br />
weitere Varianten hinzugefügt werden, so daß das Lexikon die folgenden<br />
zusätzlichen Einträge erhält:<br />
Wort Aussprache<br />
einen AI N E N<br />
einen AI N<br />
einen N<br />
haben-wir H A B N W IE R<br />
haben-wir H A M ER<br />
einmal AI N M A L<br />
einmal M A L<br />
Mit diesem angereicherten Lexikon sollte der Erkenner nun in der Lage<br />
sein, auch die Kurzversion des Wortes ” einen“ zu erkennen. Allerdings kann<br />
es auch vorkommen, daß sich die Situation jetzt so darstellt:<br />
Sprecher meinte:<br />
Sprecher sagte:<br />
Erkenner mit Varianten:<br />
” Nimm mal einen Hammer.“<br />
” Nimm mal ’n’ Hammer.“<br />
” einen im einmal einen haben wir.“<br />
Die Verwendung von zu vielen Varianten kann also auch kontraproduktiv<br />
sein und zu mehr Erkennungsfehlern führen. Insbesondere Varianten mit<br />
wenigen Phonemen können leicht als ” Lückenfüller“ bei der Erkennung<br />
von qualitativ schlechten Aufnahmen dienen. Wenn keines der langen<br />
Vokabularwörter auf ein Segment der Aufnahme mit ausreichender Wahr-
242 14. Das akustische Modell<br />
scheinlichkeit paßt, dann kommt es oft vor, daß eine Folge von kurzen<br />
Varianten eine höhere Beobachtungswahrscheinlichkeit liefert.<br />
Gerade im Deutschen kann eine übermäßige Verwendung von Varianten<br />
– insbesondere, wenn sie automatisch durch Regeln erzeugt werden – zu<br />
einem zusätzlichen Problem führen. Man stelle sich einfach nur das Wort<br />
” siebenundzwanzig“ vor. Wenn das Wort sieben“ drei bis vier Varianten<br />
”<br />
hat (Z IE B E N, Z IE B N, Z IE M, usw.), das Wort und“ mehrere<br />
”<br />
Varianten hat (z.B. U N D, U N T, U N, N, usw.), und auch noch zwanzig“<br />
”<br />
auf viele Arten gesprochen werden kann, dann entstehen somit automatisch<br />
für das aus diesen Wörtern zusammengesetzte siebenundzwanzig“ leicht<br />
”<br />
mehrere Dutzend verschiedener Aussprachen. Da die deutsche Sprache für<br />
ihre Fähigkeit, lange Komposita bilden zu können, bekannt ist, kann man<br />
sich leicht ausmalen wie ein deutsches Aussprachelexikon stark aufgeblasen<br />
werden kann.<br />
Da während des Trainings von Hidden Markov Modellen die gesprochene<br />
Wortfolge bekannt ist, ist es an dieser Stellen unproblematisch, sehr viele<br />
Varianten zu verwenden, eine Verwechslung mit einem anderen Wort kann ja<br />
beim Aufbau des Satz-HMMs ausgeschlossen werden. Daher verwenden die<br />
meisten Spracherkenner verschiedene Trainings- und Erkennungslexika. Im<br />
Trainingslexikon kommen sehr viele Varianten vor, ins Erkennungslexikon<br />
werden vor allem die sehr kurzen und sehr seltenen Varianten nicht mit<br />
aufgenommen.<br />
Varianten in der Suche<br />
Eine weitere Problematik im Zusammenhang mit Aussprachevarianten sollte<br />
an dieser Stellen noch angesprochen werden. Da sowohl beim Training als<br />
auch beim Erkennen der Suchprozeß für einigermaßen komplexe Erkenner<br />
Techniken zur Beschneidung des Suchraums benötigen, können Wörter mit<br />
vielen Varianten gegenüber Wörtern mit wenigen Varianten benachteiligt<br />
werden. In Abb. 14.7 konkurrieren die Wörter wi und wj miteinander. Sollte<br />
an der Stelle t ein Entscheidung zur Beschneidung des Suchraums getroffen<br />
werden müssen, so kann es sein, daß, obwohl das Wort wi in allen seinen<br />
Varianten eine Wahrscheinlichkeitssumme akkumuliert hat, die größer ist als<br />
der entsprechende Wert für wi.<br />
Außerdem stellt sich natürlich die Frage, welche Werte die Übergangswahrscheinlichkeiten<br />
in ein Wort mit n Varianten erhalten soll. Wenn<br />
man jeder Variante die selbe Wahrscheinlichkeit P gibt, die das Wort<br />
unabhängig von seiner Aussprache hat, dann verletzen wir die Bedingung<br />
aus der Definition der Hidden Markov Modelle, nach der die Summe<br />
aller Ausgangswahrscheinlichkeiten eines Zustands 1.0 sein muß. Geben
14.6 Aussprachemodellierung 243<br />
wir jeder Varianten wi die selbe Wahrscheinlichkeit P/n oder auch eine<br />
andere aus ihrer tatsächlichen Vorkommenshäufigkeit geschätzten Wert<br />
Pi mit Pi = 1 geben, dann benachteiligen wir Wörter mit vielen Varianten.<br />
wi1<br />
wi2<br />
wi3<br />
wi4<br />
wj1<br />
wj2<br />
Abb. 14.7. Suchraumbeschneidung bei vielen Varianten<br />
t<br />
Daher muß entweder der Suchalgorithmus (vgl. Kap. 18) erheblich<br />
verkompliziert werden, indem bei der Beschneidungsentscheidung auch die<br />
auf anderen Pfaden für andere Varianten akkumulierten Wahrscheinlichkeiten<br />
berücksichtigt werden, oder man verzichtet auf die mathematische<br />
Korrektheit und spart Rechenzeit durch Nichtbeachten der Problematik.<br />
In der Praxis wird die mathematisch fragwürdigere aber einfachere und<br />
schnellere Variante in der Regel bevorzugt.<br />
Gelegentlich werden Aussprachevarianten für Zwecke verwendet, für die<br />
sie ursprünglich nicht vorgesehen waren. Bei machen Applikationen hat es<br />
wenig Sinn, im Sprachmodell jede mögliche Ausprägung einer Wortklasse<br />
zu berücksichtigen. Beim Entwurf eines Spracherkenners für ein Sprache<br />
verstehendes Navigationssystem kann man sich im Sprachmodell auf die<br />
Modellierung eines Wortes ” x-Straße“ beschränken. Die verschiedenen<br />
tatsächlichen in Frage kommenden Straßennamen können dann als Aussprachevarianten<br />
des Wortes ” x-Straße“ im Lexikon aufgenommen werden.<br />
Der Vorteil dieser Vorgehensweise besteht darin, daß beim Wechseln der<br />
Einsatzumgebung des Erkenners (z.B. andere Stadt beim Navigationssystem,<br />
oder anderer Fernsehsender beim verstehenden Videorecorder)<br />
das Sprachmodell komplett unverändert gelassen werden kann. Lediglich<br />
die Auswahl der verfügbaren Aussprachevarianten muß neu getroffen werden.
244 14. Das akustische Modell<br />
Verwendung von Wortclustern<br />
Für die meisten Sprachen gibt es bestimmte, häufig verwendete Phrasen, deren<br />
Aussprache sich mit der Zeit von der Konkatenation der Aussprache der<br />
einzelnen Phrasenbestandteile weg entwickelt hat. Beispiel für solche Phänomene<br />
sind im Deutschen zum Beispiel die Wortfolge haben wir“ die gerne<br />
”<br />
wie hammer“ oder hamwer“ ausgesprochen wird, oder das im Englischen<br />
” ”<br />
typische going to“, das eher wie gonna“ ausgesprochen wird. Manche Kon-<br />
” ”<br />
traktionen finden sich sogar in der Bildung neuer Wörter wieder, wie zum<br />
Beispiel die Wörter fürs“ und aufs“ als Zusammenfassung der Wortfolgen<br />
” ”<br />
” für das“ bzw. auf das“. Daher verwenden viele Aussprachelexika gesonderte<br />
”<br />
Einträge für einige wenige aber häufig auftretende kurze Wortfolgen.<br />
14.6.4 Flexible Transkriptionen<br />
Die Trainingsdaten für einen Spracherkenner bestehen in der Regel aus einer<br />
Sammlung von Aufnahmen und einer Datei, in der beschrieben ist, was auf<br />
den Aufnahmen zu hören ist, die sogenannten Transkriptionen. Es gehört<br />
nicht viel Weisheit dazu, zu schließen, daß die Qualität der Trainingsdaten<br />
auch die Qualität des aus ihnen berechneten Modells bestimmt. Dabei kommt<br />
es vor allem darauf an, daß in den Sprachsignalen auch das gesprochen<br />
wird, was in den zugehörigen Transkriptionen steht. In den Anfängen der<br />
Spracherkennung verwendete man daher sicherheitshalber nur sehr saubere<br />
Aufnahmen, also solche, in denen keine störenden Geräusche und auch<br />
keine störenden menschlichen Laute wie Atem- oder Lippengeräusche zu<br />
hören waren. Selbst Pausen zwischen den Wörtern eines kontinuierlich<br />
gesprochenen Satzes waren unerwünscht. Die Trainingsdaten wurden meist<br />
eigens für das Trainieren von Spracherkennern gesammelt. Inzwischen ist<br />
es üblich Aufnahmen zu verwenden, die nicht für die Spracherkennung<br />
vorgesehen waren – Aufnahmen, in denen <strong>Mensch</strong>en natürlich z.B. mit<br />
anderen <strong>Mensch</strong>en reden. In solcher ” ungeplanter“ Sprache kommen sehr<br />
wohl Störgeräusche und Pausen vor.<br />
Der erste Schritt in Richtung der Verwendung ungeplanter Sprache geht<br />
dahin, in den Transkriptionen auch die Geräusche festzuhalten. Darüber<br />
hinaus gibt es noch eine Reihe weiterer Phänomene, die ebenfalls in die<br />
Transkriptionen mit aufgenommen werden können, wie z.B. die Tatsache,<br />
daß ein Wort falsch oder auch im Dialekt ausgesprochen wurde, oder daß<br />
nur Wortfragmente ausgesprochen bzw. gestottert wurden.<br />
Selbst erfahrenen Transkribieren unterlaufen dabei oft Fehler, weil kurze<br />
Stotterer, dialektische Einfärbungen oder für den <strong>Mensch</strong>en das Verständnis<br />
nicht störende Geräusche einfach ” psychologisch“ überhört werden. Daher<br />
gibt es das Bestreben, sehr gut ausgebildete Transkribierer in mehreren
14.6 Aussprachemodellierung 245<br />
Durchläufen über dieselben Daten in einem sehr zeitaufwendigen Prozeß<br />
hochqualitative Transkriptionen zu erzeugen. Der zeitliche Aufwand für das<br />
Abhören der Aufnahmen und schreiben der Transkriptionen kann dabei<br />
sogar vom Zehnfachen bis zum Hundertfachen der Länge der Aufnahme<br />
betragen. Dabei werden nicht einmal die zeitlichen Zuordnungen ( ” Labels“)<br />
angegeben, sondern lediglich der gesprochene mit diversen Effekten angereicherte<br />
Text.<br />
Aus den Transkriptionen werden die im Training verwendeten Satz-<br />
HMMs erzeugt. Wären die Transkriptionen perfekt, dann würde stets ein<br />
Satz-HMM mit einer einzigen völlig linearen Anordnung der Zustände<br />
genügen. Gestehen wir aber den Transkribierern zu, daß sie nicht nur die<br />
Länge von Pausen sondern sogar deren Existenz zwischen zwei Wörtern<br />
überhören dürfen, dann müssen wir zumindest zwischen dem letzten Zustand<br />
eines Wortes und dem ersten Zustand des darauffolgenden Wortes<br />
einen optionalen Stillezustand einbauen, der das Stillephonem modelliert.<br />
Gestatten wir den Transkribierern, einige zwar im Signal recht gut wiederzuerkennenden<br />
Laute wie Atmen, Lippen- oder Zungengeräusche, Reiben<br />
oder Klopfen am Mikrophon etc. zu überhören, dann bietet es sich an,<br />
zwischen den Wörtern nicht nur optionale Stillelaute sondern auch noch<br />
optionale Geräusche zu erlauben. Ganz besonders offensichtlich wird dies bei<br />
Mischgebilden zwischen Geräuschen und Wörtern, wie z.B. bei emphatischen<br />
Pausen, die im Deutschen typischerweise mit ” Äh“-Lauten und Varianten<br />
davon gefüllt werden. Selbst solche ” Ah“ Laute entgehen Transkribierern<br />
hin und wieder. Ganz besonders kompliziert kann es werden, wenn Wortfragmente<br />
oder Stotterer abgebildet werden sollen. Es ist oft gar nicht<br />
möglich eine sinnvolle Beschreibung zu liefern, weil z.B. das gesprochene<br />
Fragment keine korrekte textuelle Umschreibung hat. Man stelle sich vor,<br />
jemand stottert beim Sprechen des Wortes ” Manager“ und spricht die erste<br />
Silbe zweimal: ” Man- Manager“. Würde man dies so in die Transkription<br />
schreiben, hätte das System wohl große Schwierigkeiten, zu dem ” Man-“ eine<br />
passende Phonemfolge zu finden, der nächstbeste Lexikoneintrag für ” man“<br />
wäre jedenfalls ungeeignet. Schlimmer noch sind in der Praxis tatsächlich<br />
nicht selten beobachtete Lautartikulationen, die gar nicht im phonetischen<br />
Inventar einer Sprache enthalten sind. Erlauben wir den Transkribierern,<br />
solche Dinge nicht immer perfekt zu umschreiben und erlauben wir darüber<br />
hinaus zusätzlich, das Überhören dialektgeprägter Einfärbungen der Sprache<br />
nicht explizit festzuhalten, so kommen wir schnell an einem Punkt an, an<br />
dem die Qualität der Transkriptionen deutlich abnimmt. An diesem Punkt<br />
gibt es dann nur noch zwei Alternativen, entweder man investiert noch<br />
viel mehr Aufwand zum Verbessern dieser Qualität, oder man unternimmt<br />
Maßnahmen zum Umgang mit nicht vollständig korrekt transkribierten<br />
Aufnahmen. Gerade bei sehr großen Trainingsdatenbasen wird sich die
246 14. Das akustische Modell<br />
letztere Variante anbieten.<br />
Die Methode der Wahl ist die der sogenannten flexiblen Transkription.<br />
Dabei werden dann nicht nur optionale Stille und Geräusche automatisch in<br />
das Satz-HMM aufgenommen, sondern auch noch typische Dinge, die Transkriptoren<br />
nicht festgehalten haben. Dazu gehören dann z.B. verschiedene,<br />
durch den aktuell gesprochenen Dialekt auszuwählende Aussprachevarianten,<br />
typische Wortverschmelzungen ( ” hammer“ statt ” haben wir“) und<br />
ähnliches. Diese Anreicherungen des Satz-HMMs im Vergleich zur Transkription<br />
geschieht regelbasiert [?]. Ein Katalog mit Regeln gibt an, wie aus<br />
einer einfachen Transkription ein wesentlich komplizierteres Netzwerk wird,<br />
das mit großer Wahrscheinlichkeit das tatsächlich Gesprochene widerspiegelt.
15. Erkennung kontinuierlicher Sprache<br />
Kontinuierliche Sprache bietet gegenüber isolierten Wörtern zusätzliche<br />
Herausforderungen in mehreren Bereichen. Wenn man fließend spricht,<br />
spricht man meist unvorsichtiger und ungenauer. Außerdem ist fließende<br />
Sprache meist deutlich schneller, und es treten Koartikulationseffekte auf,<br />
die einzelne Wörter im Kontext anders klingen lassen, als wenn diese Wörter<br />
isoliert ausgesprochen würden. Diese Probleme könnten im Prinzip ignoriert<br />
werden, wenn wir wüßten, wo in einer Aufnahme ein Wort beginnt und wo<br />
es aufhört. Dann wäre die Erkennung wegen der größeren Variablität und<br />
schlechteren Qualität der Signale zwar schwieriger, aber wir könnten die<br />
bisher betrachteten Algorithmen weiter verwenden. Jetzt ist es aber so, daß<br />
das Erkennungssystem keine explizite Information darüber hat, wo sich in<br />
einer Aufnahme Wortgrenzen befinden, es muß diese selbst finden.<br />
Da beim automatischen Finden der Wortgrenzen Fehler gemacht werden,<br />
ist zu erwarten, daß der Erkenner bei Eingaben wie ” geh heim“ Hypothesen<br />
wie ” geheim“ liefert, oder statt ” Nordirlandbeauftragter“ das falsche ” nord<br />
Ihr Land beauftragt er“ erkennt. Wie auch immer diese Wortgrenzen zustande<br />
kommen, man kann schon jetzt sagen, daß ein Vorgehen, bei dem ein<br />
Sprachsignal zunächst in unabhängige Segmente zerstückelt wird, um dann<br />
auf den Segmenten eine Isoliertworterkennung durchzuführen, zum Scheitern<br />
verurteilt ist. Ein ausreichend exaktes Finden von Wortgrenzen nur mit Hilfe<br />
des akustischen Signals ist nahezu ausgeschlossen. Manche Sprachen wie<br />
z.B. die chinesische sind so geartet, daß die geübten Nachrichtensprecher im<br />
Rundfunk die Silben mit einer relativ gleichbleibenden ” Taktrate“ vorlesen<br />
und daß sich diese Silbenfrequenz in der energetischen Analyse des Signals<br />
wiederfinden läßt, so daß eine automatische Segmentierung in Silben manchmal<br />
machbar ist. Aber die allermeisten Chinesen sprechen weniger getaktet<br />
und in den meisten anderen Sprachen ist eine Taktung viel schwieriger im<br />
Signal zu erkennen. In Sprachen wie im Englischen und Deutschen, in denen<br />
nicht einmal eindeutig definiert ist, was eine Silbe ist (wieviele Silben hat das<br />
Wort Uhr?), ist eine automatische Wortsegmentierung vor der eigentlichen<br />
Erkennung nicht möglich. Daher werden wir auf andere Algorithmen zum<br />
Trainieren von Erkennern und zum Erkennen von Aufnahmen angewiesen<br />
sein. Im folgenden werden Probleme, die mit kontinuierlicher Sprache
248 15. Erkennung kontinuierlicher Sprache<br />
zusätzlich entstehen, und einige Lösungen für diese vorgestellt.<br />
15.1 Bewertung von Erkennungshypothesen<br />
Die Bewertung der Leistung eines Einzelworterkenners ist recht einfach.<br />
Wenn die Testmenge aus n Wörtern besteht und der Erkenner c Wörter<br />
korrekt erkennt, kann man seine Worterkennungsrate WCR (word correct<br />
rate) angeben als<br />
WCR = c<br />
· 100% (15.1)<br />
n<br />
Beim Erkennen von kontinuierlicher Sprache ist dies nicht mehr so selbstverständlich.<br />
Wie würde man die Worterkennungsrate angeben, wenn der<br />
Sprecher ” Erkenner“ spricht und der Erkenner ” der Kenner“ erkennt, und<br />
wie wenn ” der Erkenner“ erkannt wird. Zweifellos wäre es nicht angebracht,<br />
bei der Fehlerkennung ” der Erkenner“ zu sagen, daß 100% der gesprochenen<br />
Wörter richtig erkannt wurden und somit die Worterkennungsrate 100%<br />
beträgt. Außerdem wäre es wünschenswert, daß ein Qualitätsmaß die<br />
Hypothese ” wer erkennt er“ schlechter bewertet als die Hypothese ” erkennt“<br />
obwohl in beiden Fällen kein einziges Wort richtig erkannt wurde.<br />
In der kontinuierlichen Spracherkennung wurden verschiedene Qualitätsmaße<br />
eingesetzt, wirklich etabliert hat sich aber nur eins, das drei<br />
Fehlerarten kennt, nämlich<br />
• Vertauschungen: z.B.<br />
• Einfügungen: z.B.<br />
• Auslassungen: z.B.<br />
→<br />
→<br />
→<br />
” Guten Tag Herr Müller.“<br />
” Guten Tag wer Müller.“<br />
” Guten Tag Herr Müller.“<br />
” Guten Tag der Herr Müller.“<br />
” Guten Tag Herr Müller.“<br />
” Guten Tag Müller.“<br />
Diese Art der Fehler erinnert stark an die Arten der Editierschritte, wie<br />
sie im Abschnitt 11.1 definiert wurden, und ebenso wie es zwischen zwei<br />
Texten eine minimale Editierdistanz gibt, gibt es bei zwei Wortfolgen eine<br />
minimale Fehlerzahl bestehend aus den o.a. Fehlern. Wenn der Satz ” Guten<br />
Tag Herr Müller.“ mißverstanden wird als ” Ja guten Tal Müller“, dann kann
15.1 Bewertung von Erkennungshypothesen 249<br />
man sagen, daß die Hypothese drei Fehler enthält. Erstens wurde ein ” Ja“<br />
fälschlicherweise eingefügt, zweitens wurde ” Tag“ durch ” Tal“ ersetzt, und<br />
drittens wurde das ” Herr“ ausgelassen. Basierend auf dieser Art der Fehlermessung<br />
kann die Wortfehlerrate WER (word error rate) definiert werden als<br />
WER =<br />
s + d + i<br />
n<br />
· 100%, (15.2)<br />
wobei s die Zahl der Vertauschungen (substitutions), d die Zahl der<br />
Auslassungen (deletions), i die Zahl der Einfügungen (insertions) und n die<br />
Zahl der gesprochenen Wörter ist. Man sieht leicht, daß die Wortfehlerrate<br />
auch über 100% liegen kann, wenn z.B. statt ” Guten Tag Herr Müller“<br />
fälschlicherweise ” Ja Guter Tal der Meier“ erkannt wird. Dann werden bei<br />
vier gesprochenen Wörtern insgesamt fünf Fehler gemacht, also beträgt die<br />
Wortfehlerrate 125%.<br />
Die Messung der Wortfehlerrate erfolgt genau auf die gleiche Art mit<br />
einem Algorithmus des dynamischen Programmierens wie bei der Bestimmung<br />
der minimalen Editierdistanz. Ebenso wie bei der Editierdistanz ist<br />
auch bei der Wortfehlerrate das Minimum nicht eindeutig. So kann stets<br />
die Folge Auslassung/Vertauschung/Einfügung auch interpretiert werden als<br />
Einfügung/Vertauschung/Auslassung mit der gleichen Fehlerzahl.<br />
Neben der Wortfehlerrate wird auch oft die Worterkennungsrate WRR<br />
(word recognition rate oder word accuracy) verwendet. Hier gilt einfach:<br />
WRR = 100% − WER =<br />
n − s − d − i<br />
n<br />
· 100% (15.3)<br />
Die Worterkennungsrate kann durchaus negativ werden, wenn mehr<br />
Fehler gemacht werden, als Wörter gesprochen wurden.<br />
Selten findet man auch Referenzen auf die Wortkorrektrate WCR (word<br />
correct rate)für kontinuierliche Sprache:<br />
WCR =<br />
n − s − d<br />
n<br />
· 100%, (15.4)<br />
die niemals negativ werden kann. In wenigen Fällen ist die Angabe der<br />
WCR sinnvoll. Dieses Maße kann man leicht ad absurdum führen, indem<br />
ein Erkenner, der das gesamte Erkennervokabular vielfach hintereinander<br />
ausgibt, 100% WCR erreichen könnte obwohl er ein Vielfaches der gesprochenen<br />
Wörter an Fehlern gemacht hat.
250 15. Erkennung kontinuierlicher Sprache<br />
Man kann sich darüber streiten, wie sinnvoll das Maß der Wortfehlerrate<br />
zur Bestimmung der Qualität eines Spracherkenners ist. In der Forschergemeinde<br />
werden auch immer wieder andere Möglichkeiten diskutiert. So<br />
spielen zum Beispiel bei den meisten so genannten HUB-5 Evaluationen<br />
[?] der DARPA (Erkennung spontaner Telefondialoge zwischen <strong>Mensch</strong>en)<br />
zusätzlich die korrekten Zeitangaben eine Rolle. Da wird jedes Wort der<br />
Erkennerhypothese mit einem Anfangs- und einem Endzeitstempel versehen,<br />
und es wird nur dann als korrekt erkannt angesehen, wenn die Zeitstempel<br />
und die tatsächliche Zeit sich überlappen. Andere Fehlermaße berücksichtigen<br />
die Wichtigkeit bestimmter Wörter für das Verstehen einer Äußerung.<br />
Hierbei geht man davon aus, daß ein falsch erkannter Artikel weniger schlimm<br />
ist als ein falsch erkanntes Substantiv. So definiert man für jedes Wort eine<br />
” Wichtigkeit“ und zählt dann nicht 1,0 für jede Vertauschung, Einfügung<br />
und Auslassung, sondern einen Wert, der sich aus der Wichtigkeit der in<br />
den Fehler involvierten Wörter berechnet. Bei dem Anfang der neunziger<br />
Jahre eingeführten so genannten Wall-Street-Journal-Test (HUB-1) [?] sind<br />
bei den meisten Erkennern an einem guten Drittel aller Fehler die englischen<br />
Artikel the und a beteiligt.<br />
Die Motivation für die Einbeziehung der Wichtigkeit falsch erkannter<br />
Wörter ist deswegen von Bedeutung, weil gerade bei der Evaluation von<br />
Erkennern und der Veröffentlichung von Erkennungsergebnissen sonst nur<br />
Aufmerksamkeit auf eine einzige Zahl gelegt wird, und die Forschung sich<br />
durch die Konzentration auf das Beseitigen von unwichtigen Fehlern von der<br />
Arbeit an der Beseitigung wichtigerer Fehler abhalten läßt.<br />
Allerdings haben auch die alternativen Fehlermaße ihre Probleme: Wer<br />
soll definieren, wie schwerwiegend welcher Fehler ist. Hier kommt eine<br />
gewisse Subjektivität ins Spiel. Je komplizierter ein Fehlermaß ist, umso<br />
mehr Möglichkeiten der unfairen Bewertung bietet es. Ein derart einfaches<br />
Maß, wie die oben definierte Wortfehlerrate ist per se wesentlich objektiver.<br />
Bei einigen bestimmten Erkennungsproblemen gibt man aber in der Regel<br />
auch andere Maße zusätzlich zur Wortfehlerrate an. So ist dies zum Beispiel<br />
vor allem bei Sprachen sinnvoll, bei denen die Definition eines Wortes<br />
problematisch ist. Dies ist bei vielen asiatischen, auf Silben basierenden<br />
Sprachen wie Chinesisch und Japanisch der Fall. Im Japanischen gibt es<br />
nur 48 grundlegende Silben aus denen die komplette Sprache aufgebaut<br />
wird. Texte sind Aneinanderreihungen dieser Silben, wobei kein Unterschied<br />
gemacht wird zwischen Silbenübergängen innerhalb eines Wortes und<br />
Wort-zu-Wort-Übergängen. Bestimmte Sachverhalte (anderer Tempus bei<br />
Verben, Singular/Plural bei Substantiven, etc.) werden durch Verwenden<br />
besonderer dafür vorgesehener Silben ausgedrückt. Ob diese Silben Teil<br />
eines Wortes oder ein eigenständiges Wort sind, darüber kann man sich
15.2 One Stage Dynamic Programming 251<br />
streiten. Darüber hinaus gibt es das Problem, daß eine Folge von Silben<br />
oft auf verschiedene Arten zu Wortfolgen zusammengefaßt werden kann.<br />
So wird für silbenbasierte Sprachen neben der Wortfehlerrate oft auch die<br />
Silbenfehlerrate mit angegeben.<br />
Ähnliche Probleme gibt es im Deutschen. Es ist dafür bekannt, daß es<br />
die Zusammensetzung von sehr langen komplexen Wörtern erlaubt. Aus rein<br />
akustischer Sicht ist es meist überhaupt nicht möglich und aus der Sicht<br />
der stochastischen Wortfolgemodellierung in vielen Fällen kaum möglich zu<br />
entscheiden, ob zwei aufeinanderfolgende Wörter ein oder zwei Wörter sind.<br />
Wie schwer ist der Fehler eines Spracherkenners, der Norddeutschland mit<br />
Nord Deutschland verwechselt? Ein derartiger Fehler kann im Englischen<br />
kaum vorkommen.<br />
Bei offiziellen Evaluationen deutschsprachiger Erkenner (gelegentlich<br />
auch für andere Sprachen) werden gerne vor dem Messen der Fehlerrate<br />
Normierungen durchgeführt. Selbst bei genauem Hinhören können oft nicht<br />
einmal <strong>Mensch</strong>en Wie geht’s? von Wie geht es? unterscheiden. Würde ein<br />
Spracherkenner diese Verwechslung machen, so würde das gleich zu einer<br />
Wortfehlerrate von 67% bzw. 100% führen, je nachdem welche Version<br />
die Referenz und welche die Hypothese ist. Daher normiert man vorher<br />
Apostroph-S-Anhängsel sowohl in der Referenz als auch in der Hypothese<br />
zu einem eigenständigen Wort es. Ähnlich geht man vor bei Wortpaaren wie<br />
gerne und gern, oder habe und hab’ vor [?].<br />
Bei Systemen, die über die reine Erkennung hinaus gehen, zum Beispiel<br />
Sprach-zu-Sprach-Übersetzungssysteme oder Dialog- und Auskunftssysteme,<br />
bietet es sich an, ein so genanntes End-to-End-Fehlermaß anzuwenden. Dabei<br />
wird nicht die Wortfehlerrate als wichtigstes Qualitätsmerkmal sondern der<br />
Anteil der korrekt übersetzten Äußerungen oder der Anteil der korrekten<br />
Dialogreaktionen gemessen. Dieses Maß abstrahiert dann automatisch von<br />
weniger wichtigen Fehlern, die durch die nachgeschaltete Übersetzung oder<br />
die Dialogsteuerung wieder problemlos ausgebügelt werden können.<br />
15.2 One Stage Dynamic Programming<br />
Es ist nicht weiter schwierig, den DTW-Algorithmus, wie wir ihn für die Einzelworterkennung<br />
kennengelernt haben, so zu erweitern, daß kontinuierliche<br />
Sprache erkannt werden kann (vgl. Abb. 15.1). Während bei der Verarbeitung<br />
isolierter Wörter für jedes Wort völlig unabhängig von den anderen<br />
ein DTW-Pfad und die dazugehörige Distanz berechet wird, kann man für<br />
kontinuierliche Sprache die ” vielen Referenzachsen“ zu einer Referenzachse
252 15. Erkennung kontinuierlicher Sprache<br />
konkatenieren und eine einzige große DTW-Matrix bilden. Jetzt muß nur<br />
noch das Übergangsmuster dahingehend erweitert werden, daß aus jedem<br />
Endzustand jedes Wortes ein Übergang in die Anfangszustände aller Wörter<br />
erlaubt wird (s. Abb. 15.1). Mit dieser Erweiterung wird der Algorithmus<br />
” One Stage Dynamic Programming“ genannt [?].<br />
Wort 1<br />
Wort 2<br />
Wort 3<br />
Einzelworterkennung<br />
Wortübergang<br />
Erkennung<br />
kontinuierlicher Sprache<br />
Endzustand Wort 1<br />
Anfangszustand Wort 1<br />
Endzustand Wort 2<br />
Anfangszustand Wort 2<br />
Endzustand Wort 3<br />
Anfangszustand Wort 3<br />
Abb. 15.1. Erweiterung des DTW-Algorithmus für kontinuierliche Sprache<br />
Die Algorithmen, wie sie in Kap. 11 eingeführt wurden, können nahezu<br />
unverändert übernommen werden. Der One-Stage-Algorithmus liefert auch<br />
eine Folge von Rückwärtszeigern. Allerdings ist es hier zusätzlich nötig,<br />
den letzten Zustand zu bestimmen. Was bei der DTW-Matrix für einzelne<br />
Wörter der Zustand ” rechts oben“ war hat nun keine Bedeutung, außer<br />
daß es der letzte Zustand irgend eines Wortes ist. In welcher Reihenfolge<br />
die Wörter auf der Referenzachse angeordnet werden, spielt schließlich<br />
keine Rolle. Daher muß entweder als letzter Zustand derjenige aus der<br />
rechtesten Spalte gewählt werden, der die kleinste kumulative Distanz<br />
hat, oder es wird verlangt, daß als Letzte Wort immer das Stille-Wort<br />
erkannt werden muß – was durchaus sinnvoll ist, wenn davon auszugehen ist,<br />
daß die Aufnahme nicht unmittelbar mit dem letzten Laut beendet wurde,<br />
sondern noch ein wenige Stille jeweils am Anfang und am Ende vorhanden ist.<br />
Das Ergebnis des One-Stage-Algorithmus ist auch ein Pfad, der dann<br />
nicht unbedingt von links unten nach rechts oben führt sondern vom<br />
Anfangszustand des ersten Wortes zum Endzustand des Letzen Wortes.<br />
Abb. 15.2 zeigt ein Beispiel, in dem das Vokabular aus den Wörtern A, B, C
D<br />
C<br />
B<br />
A<br />
15.2 One Stage Dynamic Programming 253<br />
A D D A B<br />
Abb. 15.2. Ein DTW-Pfad über mehrere Wörter<br />
und D besteht. Der dargestellte Pfad entspricht der Wortfolge A D D A B.<br />
D<br />
C<br />
B<br />
A<br />
Abb. 15.3. Grauwertdarstellung der Emissionswahrscheinlichkeiten<br />
Abb. 15.3 zeigt die Darstellung einer DTW-Matrix, in der die lokalen<br />
Distanzen, beziehungsweise die Emissionswahrscheinlichkeiten durch Graustufen<br />
(dunkel = kleine Distanz = hohe Wahrscheinlichkeit, hell = große<br />
Distanz = niedrige Wahrscheinlichkeit). Die in der Abbildung erkennbaren<br />
kurzen Teilpfade sind in der Praxis meist nicht so deutlich sichtbar. Sie sind<br />
hier nur des einfacheren Verständnisses wegen deutlich erkennbar. Allerdings<br />
ist auf den ersten Blick nicht selbstverständlich, welcher One-Stage-Pfad der<br />
wahrscheinlichste ist. Die Aufgabe des One-Stage-Algorithmus kann dadurch<br />
t
254 15. Erkennung kontinuierlicher Sprache<br />
veranschaulicht werden, daß er einen Pfad über möglichst viele dunkle<br />
Bereiche finden muß. Eine Möglichkeit ist in Abb. 15.4 für die Wortfolge B<br />
D A A C dargestellt.<br />
D<br />
C<br />
B<br />
A<br />
Abb. 15.4. Möglicher Pfad für die Wortfolge B D A A C<br />
Eine andere Möglichkeit zeigt Abb. 15.5 mit der Wortfolge D A C B D A.<br />
Der Leser mache sich klar, daß es keine Ausgezeichneten Zeitpunkte gibt,<br />
zu denen Wortübergänge stattfinden dürfen. Das heißt, daß zu jedem einzelnen<br />
Zeitpunkt jeder (aktive) Zustand expandiert wird, unabhängig davon,<br />
ob es ein Zustand in der Mitte des Wortes oder ein Wortendzustand ist (vgl.<br />
Abb. 15.6).<br />
Prinzipiell wäre es schon an dieser Stelle möglich, auf der Modellachse<br />
statt ganzer Wörter kleinere Einheiten zu verwenden (Silben, Phoneme) und<br />
dann statt der Erkennung einer Wortfolge eine Silben- oder Phonemfolge<br />
zu erkennen. Dies wäre dann schon der erste Schritt in Richtung der<br />
Hidden-Markov-Modelle, die insbesondere für kontinuierliche Sprache große<br />
Vorteile gegenüber Mustervergleichern nach den DTW-Schema haben.<br />
t
D<br />
C<br />
B<br />
A<br />
15.2 One Stage Dynamic Programming 255<br />
Abb. 15.5. Möglicher Pfad für die Wortfolge D A C B D A<br />
D D<br />
C<br />
B<br />
A<br />
Abb. 15.6. Übergänge innerhalb der Wörter, dann Übergänge zwischen den<br />
Wörtern<br />
C<br />
B<br />
A<br />
t
256 15. Erkennung kontinuierlicher Sprache<br />
15.3 Hidden Markov Modelle für kontinuierliche<br />
Sprache<br />
Während bei der Einzelworterkennung sowohl für das Training als auch für<br />
die Erkennung die gleichen Hidden-Markov-Modelle verwendet werden, auf<br />
denen dann im Training der Forward-Backward- und bei der Erkennung<br />
der Forward-Algorithmus eingesetzt werden, so gilt dies für kontinuierliche<br />
Sprache nicht mehr. Die aus der Einzelworterkennung bekannten Wort-<br />
HMMs könnten für das Training übernommen werden, wenn bekannt wäre,<br />
wo in einer Aufnahme jedes Wort anfängt und wo es aufhört. Da eine solche<br />
Segmentierung in der Regel nicht gegeben ist, muß hier ein anderer Weg<br />
beschritten werden.<br />
Meistens haben wir es beim Trainieren eines HMM-Erkenners für<br />
kontinuierliche Sprache mit Aufnahmen zu tun, in denen ganze Sätze stehen.<br />
Manchmal sind es auch mehrere Sätze, manchmal nur Satzfragmente.<br />
Eine Trainingsdatenmenge besteht aus vielen solcher Aufnahmen und den<br />
dazugehörigen Transkripten. Gelegentliche kleine Fehler in den Transkripten<br />
können meist toleriert werden, dennoch ist es vorteilhaft, wenn sie so<br />
exakt wie möglich sind, und sogar Atemgeräusche, Schmatzlaute, Stotterer,<br />
Telefonklingeln und andere Geräusche als solche beschrieben werden.<br />
Guten Tag<br />
G U T N T A G<br />
Wortgraph<br />
Phonemgraph<br />
G1 G2 U1 U2 T1 T2 N1 N2 T1 T2<br />
Abb. 15.7. Aufbau eines HMMs für einen ganzen Satz<br />
Zustandsgraph<br />
A1 A2 G1 G2<br />
Um auf einer kompletten Aufnahme mit mehreren Worten einen Forward-<br />
Backward Algorithmus zu rechnen, benötigen wir ein HMM, das alle Worte<br />
(und Geräusche) der Aufnahme modelliert. Im einfachsten Fall genügt es,<br />
die einzelnen Wort-HMMs zu einem einzigen HMM zu konkatenieren, wie in<br />
Abb. 15.7 dargestellt.<br />
Typischerweise besteht die Erzeugung des finalen HMMs (Zustandsgraph)<br />
aus drei Schritten. Im ersten Schritt wird ein Pseudo-HMM (Wortgraph)<br />
erzeugt, dessen Zustände ganzen Wörtern entsprechen. Im zweiten Schritt<br />
wird jeder Wortzustand durch ein HMM ersetzt, bei dem jeder Zustand
15.3 Hidden Markov Modelle für kontinuierliche Sprache 257<br />
einem Phonem entspricht (Phonemgraph), und schließlich wird jeder Phonemzustand<br />
im dritten Schritt durch das HMM ersetzt, das einem Phonem<br />
entspricht (meist ca. drei linear angeordnete Zustände).<br />
Das Ersetzen eines Wortzustandes durch eine Phonemfolge (oder einen<br />
kleinen Phonemgraphen) geschieht durch Nachschauen in einem Aussprachelexikon.<br />
Viele Aussprachelexika geben für einige Wörter mehrere mögliche<br />
Aussprachen an. Für solche Fälle verwendet man dann keine lineare Folge<br />
von Phonemzuständen, sondern entweder je möglicher Aussprache eine<br />
eigene Phonemfolge, die alternativ (vgl. Abb. 12.1 rechts unten) durchlaufen<br />
werden können, oder einen Phonemgraphen, der alle Aussprachen berücksichtigt<br />
(s. Abb. 15.8).<br />
Guten Tag<br />
T G<br />
G U N T A<br />
CH<br />
G1 G2 U1 U2<br />
T1 T2<br />
Wortgraph<br />
N1 N2 T1 T2<br />
Abb. 15.8. Satz-HMM mit verschiedenen Aussprachen<br />
Phonemgraph<br />
A1 A2<br />
Zustandsgraph<br />
G1 G2<br />
CH1<br />
CH2<br />
Auch wenn es wünschenswert ist, sehr ausführliche und korrekte Transkripte<br />
zu verwenden, so muß man davon ausgehen, daß solche in vielen<br />
Fällen nicht zur Verfügung stehen. Kurze Pausen werden üblicherweise gar<br />
nicht schriftlich festgehalten. Will man potentielle Pausen zwischen zwei aufeinanderfolgenden<br />
Wörtern korrekt modellieren, muß dafür in das HMM ein<br />
Zustand oder eine Zustandsfolge eingebaut werden. Für den Wortgraphen<br />
bedeutet das, daß jeder Wortübergang optional über ein Stillewort umgeleitet<br />
wird. Und wenn wir schon davon ausgehen, daß nicht alle Pausen in den<br />
Transkripten enthalten sind, dann könnten wir gleich berücksichtigen, daß<br />
andere Geräusche wie z.B. die Geräusche, die beim Öffnen der Lippen entstehen<br />
oder Atemgeräusche oder Stotterlaute vor Beginn eines Wortes auch<br />
nicht immer in den Transkripten stehen. Das heißt, daß wir in den Wortgraphen<br />
neben den optionalen Stillen auch optionales Gemurmel erlauben<br />
(s. Abb. 15.9). Will man weitere Eventualitäten berücksichtigen, könnten sogar<br />
Übergänge zwischen den Stille- und den Murmelzuständen (engl. mumble<br />
words) eingefügt werden. Damit ist schon ein Teil des Weges, den das Flexible<br />
Transcription Alignment (s. Abs. 14.6.4) geht genommen.
258 15. Erkennung kontinuierlicher Sprache<br />
Stille Stille Stille<br />
Guten Tag<br />
Murmeln Murmeln Murmeln<br />
– T – G –<br />
G U N T A<br />
*<br />
* CH *<br />
Abb. 15.9. Satz-HMM mit optionalen Füllwörtern<br />
Wortgraph<br />
Phonemgraph<br />
Ein HMM für einen ganzen Satz – oder besser gesagt für eine Äußerung –<br />
muß nur für das Training aufgebaut werden. Nur dort ist überhaupt bekannt,<br />
welche Worte gesprochen wurden. Im Gegensatz zur Einzelworterkennung<br />
ist es bei kontinuierlicher Sprache nicht möglich, für jede erlaubte Äußerung<br />
ein Referenz-HMM zu erzeugen. Daher wird ein ähnlicher Weg bestritten<br />
wie beim One-Stage Dynamic Programming. Von jedem Endzustand eines<br />
Wortes werden Zustandsübergänge in die Anfangszustände aller Wörter<br />
eingefügt. Das Resultat ist ein einziges HMM, das alle n Einzelwort-HMMs<br />
enthält und zusätzlich n 2 Wort-zu-Wort-Übergänge (s. Abb. 15.10).<br />
Wort 1<br />
Wort 2<br />
Wort n<br />
. . .<br />
Abb. 15.10. Ein einziges HMM aus vielen einzelnen Wort-HMMs<br />
Auch wenn das HMM in Abb. 15.10 nicht so aussieht, daß es einfach als<br />
” eine“ Referenzachse verwendet werden kann wie in Kap. 12 angenommen.<br />
Grundsätzlich aber ist es, wie Abb. 15.11 auch linear darstellbar.<br />
15.4 Einbindung eines einfachen Sprachmodells<br />
Wenn wir bei Abb. 15.10 Wahrscheinlichkeiten für die Wortübergänge festlegen<br />
wollen, so könnten wir im einfachsten Fall einfach für jeden Übergang<br />
die Wahrscheinlichkeit 1/n verwenden. Besser ist allerdings die Verwendung<br />
n 2
C<br />
B<br />
A<br />
15.4 Einbindung eines einfachen Sprachmodells 259<br />
Abb. 15.11. HMM für kontinuierliche Sprache linear dargestellt.<br />
von ” hilfreicheren“ Werten.<br />
Wenn nicht von jedem Wortende zu jedem Wortanfang ein Übergang<br />
besteht, und wenn alle Übergänge aus einem Wortende gleich wahrscheinlich<br />
sind, dann sprechen wir von einer so genannten Wortpaar Grammatik. Der<br />
Erkenner würde ganz ohne Grammatik laufen, wenn nicht nur einige sondern<br />
alle Wortpaare erlaubt wären. Am erfolgversprechendsten ist allerdings der<br />
Einsatz von ” echten“ Wahrscheinlichkeiten, die auch berücksichtigen, welche<br />
Wörter einander mit welcher Wahrscheinlichkeit folgen können. So würden<br />
wir sicher den Übergang von ” Guten“ zu ” Tag“ als wahrscheinlicher festlegen<br />
als den Übergang von ” Guten“ zu ” sein“. Im Kapitel 16 werden wir uns noch<br />
ausführlich mit der Findung sinnvoller Wortübergangswahrscheinlichkeiten<br />
befassen.
16. Verwendung von Sprachmodellen<br />
Im Deutschen wird der Begriff ” Sprache“ für verschiedene Dinge gebraucht,<br />
die im Englischen durch ” speech“ und ” language“ unterschieden werden.<br />
Während ” speech“ sich auf die akustischen, phonetischen und biologischen<br />
Aspekte des Sprechens bezieht, ist mit ” language“ der linguistische Aspekt<br />
gemeint, wie er sich vor allem in geschriebener Sprache manifestiert. Der<br />
Teil eines Spracherkenners, der sich mit der Behandlung der linguistischen<br />
Eigenschaften der Sprache beschäftigt wird das Sprachmodell genannt.<br />
16.1 Wozu Sprachmodelle<br />
Die Verwendung von Wissen, das über das in den Parametern von Hidden<br />
Markov Modellen mit ihren unterschiedlichen Emissionswahrscheinlichkeitsmodellen<br />
vorhandenen hinausgeht, kann auf verschiedene Arten motiviert<br />
werden.<br />
Zum einen ist es selbstverständlich, daß zusätzliches Wissen, korrekt<br />
angewendet, keinesfalls dazu führen kann, die Leistung von Spracherkennern<br />
zu senken. Viele Wörter, die akustisch leicht verwechselbar sind, könnten<br />
unter Zuhilfenahme von Sprachmodellen besser unterschieden werden. Im<br />
Extremfall ist das Sprachmodell die einzige Instanz, die in der Lage ist<br />
zwischen ” Sie“ (Anrede) und ” sie“ (dritte Person Plural) zu unterscheiden.<br />
Solche Wörter, die sich in ihrer Aussprache nicht unterscheiden, werden<br />
Homophone genannt. Sie sind für viele Spracherkenner eine nicht zu<br />
vernachlässigende Fehlerquelle. Vor allem in Sprachen wie dem Englischen<br />
oder Französischen existieren viele Homophone. Im Französischen ist oft<br />
die Unterscheidung zwischen Singular- oder Pluralform bzw. zwischen<br />
weiblicher und männlicher Form eines Wortes rein aufgrund der Akustik<br />
nicht möglich. Um festzustellen, ob der englische Satz ” I owe you, too.“<br />
wahrscheinlicher gesprochen wurde als ” Eye O U two.“ bedarf es einer<br />
Wissensquelle, welche die Wahrscheinlichkeit von Wortfolgen berechnet.<br />
So eine Instanz, das Sprachmodell, würde dann feststellen, daß ” Eye O<br />
U two.“ viel unwahrscheinlicher ist als ” I owe you, too.“ und somit allein
262 16. Verwendung von Sprachmodellen<br />
die Entscheidung zwischen zwei Erkennerhypothesen treffen, die akustisch<br />
identisch sind.<br />
Sprachmodelle können auch dazu dienen, den Suchraum einen HMM-<br />
Erkenners für kontinuierliche Sprache einzuschränken. Wenn man bedenkt,<br />
wie stark die kombinatorische Explosion der Zahl der möglichen Wortfolgen<br />
ist (man denke an Sätze mit zwanzig bis dreißig Wörtern aus einem Vokabular<br />
von 50000), bietet sich der Einsatz eines Sprachmodells zur Auswahl<br />
von in Frage kommenden Wortfolgen und somit zur Steuerung der Suche des<br />
Erkenners an. In der Tat kann man so viele Suchpfade, die zwar akustisch<br />
wahrscheinlich sind aber syntaktisch oder semantisch absurden Wortfolgen<br />
entsprechen würden, frühzeitig beschneiden und viel Suchaufwand einsparen.<br />
16.2 Wahrscheinlichkeiten von Wortfolgen<br />
Erinnern wir uns noch einmal an die Fundamentalformel der Spracherkennung<br />
(14.2):<br />
ˆW = argmaxP(X|W)<br />
· P(W)<br />
W<br />
Die Aufgabe des Sprachmodells ist die Berechnung von P(W). Geht<br />
man davon aus, das W = (w1, w2, . . . wn), also eine Folge von n Wörtern ist,<br />
dann läßt sich P(W) schreiben als<br />
P(W) = P(w1) · P(w2|w1) · P(w3|w1, w2) · · · P(wn|w1, w2, . . .wn−1), (16.1)<br />
wobei P(w1) die Wahrscheinlichkeit dafür ist, daß eine Wortfolge mit<br />
dem Wort w1 anfängt, und P(wi|w1, w2, . . . wi−1) die Wahrscheinlichkeit<br />
dafür ist, daß das Wort wi gesprochen wird unter der Voraussetzung, daß<br />
die ganze Worthistorie w1 bis wn−1 davor gegeben ist.<br />
Prinzipiell wäre es auch möglich gewesen, die Definition ” rückwärts“ zu<br />
machen und zu definieren:<br />
P(W) = P(wn) · P(wn−1|wn) · P(wn−2|wn−1, wn) · · ·P(w1|w2, w3, . . . wn)
16.2 Wahrscheinlichkeiten von Wortfolgen 263<br />
wobei dann P(wn) die Wahrscheinlichkeit dafür wäre, daß wn das letzte<br />
Wort ist, und P(wi|wi+1, wi+2, . . .wn) die Wahrscheinlichkeit dafür, daß das<br />
Wort wi gesprochen wird unter der Voraussetzung, daß der ganze noch zu<br />
sprechende Rest der Wortfolge bekannt ist.<br />
Für Spracherkenner, die erst dann mit der Erkennung anfangen, wenn<br />
eine zu erkennende Äußerung abgeschlossen ist, stellt die zweite, rückwärts<br />
gerichtete, Variante kein Problem dar. Es spricht auch nichts prinzipiell<br />
dagegen, den Forward- oder Viterbi-Algorithmus auf der Zeitachse rückwärts<br />
laufen zu lassen. Der einzige Grund, warum man doch besser die vorwärts<br />
gerichtete Variante verwenden würde ist bei der so genannten schritthaltenden<br />
(Run-On-) Erkennung gegeben, bei der der Erkenner schon anfängt<br />
Teilhypothesen für den bereits gesprochenen Teil einer Äußerung zu liefern,<br />
während der Sprecher noch dabei ist, den Rest der Äußerung zu sprechen.<br />
Bei den obigen Definitionen haben wir vorausgesetzt, daß die Länge einer<br />
Wortfolge bekannt und fest vorgegeben ist. In der Praxis ist dies natürlich<br />
nicht der Regelfall. Das heißt, die Definition für die Wahrscheinlichkeit einer<br />
Wortfolge ohne bekannte Länge wäre:<br />
n−1 <br />
P(W) = P(n) · P(w1) · P(w2|w1, . . .wi) (16.2)<br />
i=1<br />
Hier ist P(n) die Wahrscheinlichkeit dafür, daß eine Wortfolge die<br />
Länge n hat. Dies nimmt dem Term etwas seiner Uniformität. Es wird sich<br />
herausstellen, daß in der Praxis an vielen Stellen von den Forderungen der<br />
Mathematik abgewichen wird, damit die gebauten Systeme funktionieren.<br />
Das liegt teilweise daran, daß wir oft versuchen aus den zur Verfügung<br />
stehenden Datenmengen das größtmögliche herauszuholen, und so Parameter<br />
von stochastischen Modellen mit so wenig Daten schätzen, daß für diese das<br />
aus der Stochastik bekannte Gesetz der großen Zahl nicht greift. Teilweise<br />
liegt es aber auch daran, daß die Modelle, die wir uns von der Wirklichkeit<br />
machen, von dieser Wirklichkeit weit weg sind. Um das mathematische<br />
Gewissen zu erleichtern können wir uns auch vorstellen, daß wir bei der<br />
Berechnung der Wahrscheinlichkeit einer Wortfolge davon ausgehen, daß alle<br />
Wortfolgen immer unendlich lang sind, sie haben aber eine Stelle, ab der<br />
nur noch ein Satz-Ende-Wort Ve kommt. Dann können wir von der Länge<br />
abstrahieren und sagen:
264 16. Verwendung von Sprachmodellen<br />
⎧<br />
#(Hwn)<br />
falls wn = Ve und Ve ∈ H<br />
⎪⎨<br />
#(H)<br />
P(H) falls wn = Ve und Ve ∈ H<br />
P(wn|H) =<br />
0.0 falls wn = Ve und Ve ∈ H<br />
⎪⎩<br />
1.0 falls wn = Ve und Ve ∈ H<br />
(16.3)<br />
wobei #(H) die Häufigkeit der Beobachtung der Wortfolge H ist, #(Hw)<br />
die Häufigkeit der Beobachtung der Wortfolge H gefolgt vom Wort w ist.<br />
Bei einem Vokabular von 100 000 Wörtern könnten 10 50 verschiedene<br />
Zehnwortfolgen erzeugt werden. Das bedeutet, daß es ausgeschlossen ist,<br />
daß wir eine Tabelle anlegen, die für jedes Wort w und jede Worthistorie<br />
H einen gut geschätzten Eintrag P(w|H) enthält. Bleiben also nur drei<br />
Möglichkeiten. Erstens wir setzen sehr viele Einträge in der Tabelle auf null.<br />
Zweitens, wir berechnen P(w|H) erst dann wenn wir es wirklich benötigen,<br />
und nicht alles im voraus. Oder drittens, wir fassen verschiedene Historien<br />
in Klassen zusammen und approximieren:<br />
P(w|H) ≈ P(w|C(H)), (16.4)<br />
wobei C(H) die Klasse von Historien ist, in die auch H fällt. Nur in<br />
wenigen Fällen ist es sinnvoll, die Sprachmodellwahrscheinlichkeit ” im Fluge“<br />
zu berechnen. Der Aufwand, der getrieben werden muß, um die Suche eines<br />
Spracherkenners in akzeptabler Zeit durchzuführen, ist schon so groß, daß<br />
eine sehr oft durchgeführte Anfrage nach Sprachmodellwahrscheinlichkeiten,<br />
die erst noch berechnet werden müßten, den Gesamtablauf so sehr verlangsamen<br />
würde, daß kein sinnvoller Einsatz des Erkenners mehr denkbar wäre.<br />
Aus ebenso praktischen Gründen bietet es sich meist nicht an, die gesamte<br />
Historie einer Aufnahme mitzuführen und ständig für die Berechnung<br />
von Sprachmodellwahrscheinlichkeiten bereitzustellen. Abgesehen davon,<br />
daß durch beliebig lange Historien die Komplexität des Suchalgorithmus<br />
sehr hoch wird, können wir davon ausgehen, daß der Einfluß eines Wortes<br />
auf die Beobachtungswahrscheinlichkeit eines anderen Wortes, daß erst sehr<br />
viel später im Satz oder gar erst in einem viel späteren Satz auftritt mit<br />
zunehmendem Abstand gegen null geht.<br />
Somit bietet sich an dieser Stelle eine Art der Klassenbildung der<br />
Historien an, nämlich die Beschränkung auf eine Maximallänge:<br />
C(H = w1, w2, . . . wn) = {v1, v2, . . .vk|vi = wn−k+i}, (16.5)
16.3 N-Gramme 265<br />
also alle Historien, bei denen die letzten k Wörter gleich sind, kommen<br />
in dieselbe Klasse. Sicherlich sind auch andere Arten der Historienklassifizierung<br />
sinnvoll und werden in der Praxis auch eingesetzt. So können<br />
einzelne Wörter oder auch Wortfolgen je nach ihrer semantischen oder auch<br />
syntaktischen Bedeutung in gemeinsame Klassen eingeordnet werden.<br />
16.3 N-Gramme<br />
Die bei weitem am häufigsten verwendete Historienklassifizierung ist die der<br />
Einschränkung auf maximal ein bis zwei Vorgängerwörter. Drückt man die<br />
Wahrscheinlichkeit eines Wortes in Abhängigkeit der n − 1 Vorgänger aus,<br />
so spricht man von n-Grammen:<br />
n-Gramm P(wm|w1, . . . wm−1) ≈<br />
n = 1 (Unigramm) P(wm)<br />
n = 2 (Bigramm) P(wm|wm−1)<br />
n = 3 (Trigramm) P(wm|wm−2, wm−1)<br />
n = k P(wm|w m−(k−1), . . . wm−1)<br />
Eine spezielle Form der Bigramme sind Wortpaargrammatiken. Sie<br />
definieren lediglich welche Wörter einem Wort folgen dürfen. Diese erhalten<br />
dann alle die gleiche positive Bigramm-Wahrscheinlichkeit, während alle<br />
anderen (nicht erlaubten Folgewörter) die Wahrscheinlichkeit 0 erhalten.<br />
Die naheliegende Maximum-Likelihood Schätzung für ein n-<br />
Gramm ist das Verhältnis der Vorkommen der gesamten“ Wort-<br />
”<br />
folge wm−(k−1), . . .wm−1, wm zu den Vorkommen der<br />
” Geschichte“<br />
wm−(k−1), . . . wm−1, also:<br />
P(wm|w m−(k−1), . . .wm−1) = #(w m−(k−1), . . . wm−1, wm)<br />
#(w m−(k−1), . . .wm−1)<br />
(16.6)<br />
Ein Blick auf eine typische Textdatenbasis wie die des Wall-Street-<br />
Journals läßt schnell erkennen, daß das Gesetz der großen Zahl für die<br />
Modellierung von Wortfolgen so enorm große Zahlen meint, daß wir kaum<br />
eine Chance haben, diese jemals zu erreichen. Im Standard-Benchmark<br />
der Wall-Street-Journal Datenbasis kommen Texte vor, die sich ca. 300<br />
Millionen Wörter aufsummieren. Auf den ersten Blick eine sehr große Zahl.<br />
Betrachten wir jetzt alle 300 Millionen Worttripel, dann stellen wir fest, daß<br />
ca. 65 Millionen, also gut ein fünftel, in der gesamten Textdatenbank nur ein
266 16. Verwendung von Sprachmodellen<br />
einziges Mal vorkommt, so selten also, daß sinnvolle statistische Aussagen<br />
kaum zu machen sind.<br />
Bevor wir uns überlegen, ob wir nicht besser nach erfolgversprechenderen<br />
Sprachmodellen suchen sollten, betrachten wir zwei Experimente, die uns<br />
bei der Einschätzung der Wirkung von n-Grammen helfen könnten.<br />
Im ersten Experiment wurde aus der Wall Street Journal Datenbasis<br />
derjenige Teil herausgenommen, der nur Wörter aus der Menge der 1000<br />
häufigsten Wörter enthält (das war eine Textmenge von ca. 400 000<br />
Wörtern). 300 000 (Trainingsdaten) davon wurden zum Schätzen von<br />
Trigrammen entsprechend Gl. 16.6 verwendet, und auf den restlichen<br />
100 000 (Testdaten) wurde das Trigramm-Modell gestestet. Wir werden uns<br />
später in diesem Kapitel mit der Qualität von Sprachmodellen beschäftigen<br />
und an dieser Stelle lediglich die Zahl der Worttripel betrachten, die in<br />
den Trainingsdaten und in den Testdaten vorkommen. Diese Zahlen bilden<br />
die Basis für die Schätzung von Trigrammen. Bei der Betrachtung der<br />
Worttripel der Testdaten wurde festgestellt, daß 23% von ihnen in den<br />
Trainingsdaten überhaupt nicht vorkamen. Das würde bedeuten, daß fast<br />
jedes vierte bei der Erkennung der Testdaten zu verwendende Trigramm<br />
eine Wahrscheinlichkeit von null hätte. Sicher könnte man statt 0.0 einen<br />
kleinen Wert ǫ nahe 0.0 wählen, damit diese Worttripel überhaupt eine<br />
Chance haben, erkannt zu werden. Dennoch sollte man erwarten, daß ein<br />
Sprachmodell, das in einem Viertel aller Fälle willkürlich festgelegte Werte<br />
nahe null verwendet nur wenig hilfreich ist. Das erste Experiment ist also für<br />
den Einsatz von n-Grammen eher entmutigend. Für Werte von n > 3 ist der<br />
Anteil der in den Trainingsdaten nicht vorkommenden n-Tupel noch größer.<br />
In einem anderen Experiment, dem sogenannten ” Bag of Words“, wurden<br />
aus der Datenmenge, die aus dem ersten Experiment bekannt ist, Sätze mit<br />
maximal 10 Wörtern genommen. Aus jedem Satz wurde statt einer Wortfolge<br />
eine Wortmenge gebildet, in der die ursprüngliche Reihenfolge der Wörter<br />
nicht mehr bekannt war. Ein Algorithmus suchte dann zu jeder Wortmenge<br />
diejenige Wortfolge, deren Trigramm-Wahrscheinlichkeit am größten ist.<br />
Bei 63% aller Sätze wurde der ursprüngliche Satz exakt rekonstruiert, und<br />
79% aller Sätze wurden immerhin so rekonstruiert, daß wenigstens der Sinn<br />
erhalten blieb.<br />
16.4 Perplexität<br />
Die Messung der Qualität eines Sprachmodells kann so erfolgen, daß ein<br />
Erkenner das Sprachmodell verwendet und die Worterkennungsrate dann als
16.4 Perplexität 267<br />
Qualität des Modells verwendet wird. Das Sprachmodell, das weniger Fehler<br />
produziert, würde dann als das bessere angesehen werden. Allerdings hat<br />
man hier drei Probleme: Erstens ist das Durchführen einer Erkennung auf<br />
einer aussagekräftigen Testmenge aufwendig, zweitens hängt die Wortfehlerrate<br />
sehr wesentlich davon ab, wie gut das Sprachmodell zur Testdatenmenge<br />
paßt, und drittens hängt das Ergebnis auch von der Zusammenarbeit des<br />
Sprachmodells und des akustischen Modells ab.<br />
Wenn wir den einen Zweck von Sprachmodellen, nämlich die Vereinfachung<br />
der Erkennungsaufgabe, betrachten, dann ist ein Modell, dessen<br />
Übergangswahrscheinlichkeiten nahezu gleichverteilt sind (s. Abb. 16.1<br />
rechts), deutlich weniger ” nützlich“ als eines, das eine weniger glatte<br />
Verteilung hat (s. Abb. 16.1 links) – vorausgesetzt natürlich, die Wahrscheinlichkeitswerte<br />
sind sinnvoll geschätzt.<br />
wi<br />
0.19<br />
0.22<br />
0.18<br />
0.19<br />
0.22<br />
wi+1,1<br />
wi+1,5<br />
wi+1,2<br />
wi+1,4<br />
wi+1,3<br />
wi<br />
0.55<br />
0.10<br />
0.01<br />
0.05<br />
0.29<br />
wi+1,1<br />
wi+1,5<br />
wi+1,2<br />
wi+1,4<br />
wi+1,3<br />
Abb. 16.1. Sprachmodelle mit wenig (links) und viel (rechts) Informationsgehalt<br />
Ein Sprachmodell mit absolut gleichverteilten Übergangswahrscheinlichkeiten<br />
ist völlig wertlos, es liefert keine Information und könnte auch gleich<br />
ganz weggelassen werden. Ein Maß, das die ” Glattheit“ einer Verteilung<br />
mißt, also die mangelnde Information, ist die Entropie:<br />
H = −<br />
n<br />
pi · log2 pi<br />
i=1<br />
(16.7)<br />
Betrachten wir das Sprachmodell als eine Informationsquelle und jedes<br />
Wort als ein Symbol, das die Quelle zufällig entsprechend der Sprachmodellwahrscheinlichkeiten<br />
emittiert, dann ist die Entropie der Quelle definiert als:<br />
HQ = lim<br />
n→∞ −<br />
n<br />
pi · log2 pi, (16.8)<br />
i=1
268 16. Verwendung von Sprachmodellen<br />
wobei pi die vom Sprachmodell vorgegebene Wahrscheinlichkeit für das<br />
i-te Wort wi bei gegebener Historie w1, w2, . . . wi−1 ist.<br />
Ergodische Quellen sind solche, deren Verhalten durch eine unendlich<br />
lange Symbolfolge komplett beschrieben werden kann. Es ist vernünftig<br />
anzunehmen, daß es sich bei einem Sprachproduktionssystem um eine solche<br />
Quelle handelt. Für ergodische Quellen gilt:<br />
1<br />
HE = − lim<br />
n→∞ n log2 P(w1, w2, . . .wn) (16.9)<br />
Da aber niemals eine unendliche Wortfolge zur Verfügung steht, sondern<br />
eine sehr große aber endliche Folge w1, w2, . . . wn, wird die Entropie der<br />
Quelle, die diese Folge produziert approximiert durch:<br />
HE ≈ − 1<br />
n log 2 P(w1, w2, . . .wn) (16.10)<br />
Dieser Wert HE ist ein Maß für die Schwierigkeit einer Spracherkennungsaufgabe<br />
aus linguistischer Sicht (d.h. ohne Berücksichtigung der<br />
akustischen Gegebenheiten). Ein großer Wert bedeutet viel Entropie =<br />
wenig Information = schwierige Aufgabe, ein kleiner Wert bedeutet wenig<br />
Entropie = viel Information = leichte Aufgabe. Der Wert<br />
PP = 2 HE 1 −<br />
= P(w1, w2, . . . wn) n (16.11)<br />
Wäre in einem Sprachmodell über dem Vokabular V jede Wortfolge gleich<br />
wahrscheinlich, so wäre P(w1, w2, . . .wn) = (1/|V |) n und die Perplexität<br />
wäre ((1/|V |) n 1 − ) n = |V |. Das heißt, eine Quelle mit der Entropie PP<br />
enthält den gleichen Informationsgehalt wie eine Quelle, die aus einem<br />
Vokabular der Größe |V | = PP gleichverteilt Wörter emittiert. Eine andere<br />
Veranschaulichung des Perplexitätswertes ist die des geometrischen Mittels<br />
der Zahl der zu jedem Zeitpunkt zu erwartender Wörter:<br />
PP =<br />
1<br />
<br />
P(w1, w2, . . . wn) =<br />
n<br />
1<br />
n n<br />
i=1 pi<br />
(16.12)<br />
Aus der Sicht des Spracherkenners bedeutet dies, daß die Aufgabe,<br />
Sprache mit beliebigem Vokabular und einer Perplexität von PP so schwer<br />
zu erkennen ist, wie Sprache mit einem Vokabular der Größe PP und dem<br />
Verzicht auf den Einsatz eines Sprachmodells. Im übrigen gilt: jede von der
16.4 Perplexität 269<br />
Gleichverteilung abweichende Verteilung hat eine Perplexität zur Folge, die<br />
kleiner ist als |V |.<br />
Die Perplexität ist eine intrinsische Eigenschaft einer Symbolquelle oder<br />
eines Sprachmodells. Wird sie allerdings gemäß Gl. 16.11 geschätzt, dann<br />
spricht man von der ” Test-Set-Perplexität“, ein Wert, der selbstverständlich<br />
von der endlichen Wortfolge (dem Test-Set) w1, w2, . . .wn abhängt.<br />
Das bedeutet, daß dasselbe Sprachmodelle je nach Test-Set, verschiedene<br />
Test-Set-Perplexitäten hat. Spricht man nur von der Perplexität eines<br />
Sprachmodells, dann meint man damit die Test-Set-Perplexität auf der<br />
Wortfolge, mit der das Modell geschätzt wurde, oder eine Kreuzvalidierungsteilmenge<br />
davon.<br />
Tab. 16.1 gibt die typischen Perplexitäten einiger Erkennungsaufgaben<br />
an. Am Beispiel der Wall Street Journal Daten ist zu erkennen, daß die<br />
Perplexität eines Trigramm-Modells erwartungsgemäß niedriger ist als<br />
die eines Bigramm-Modells. Ein Bigramm-Modell enthält wiederum mehr<br />
Information als ein noch einfacheres Wortpaarmodell (PP=20 ggü. PP=60<br />
für die Resource Management Daten). Ein ganz starker Effekt für die<br />
Test-Set-Perplexität läßt sich an den deutschsprachigen Daten aus der<br />
Süddeutschen Zeitung sehen. Verwendet man als Test-Set ebenso wie für<br />
das Schätzen des Modells Texte aus der gleichen Zeitschrift, so beträgt<br />
die Perplexität ca. 400. Dies ist an sich schon wesentlich höher als für<br />
typische englischsprachige Aufgaben, was im wesentlichen auf die vielen<br />
Flexionsformen im Deutschen, die es im Englischen sehr viel weniger gibt,<br />
zurückzuführen. Einen gewaltigen Sprung in die Höhe macht die Perplexität<br />
allerdings noch, wenn als Test-Set Märchen (in diesem Experiment [?]<br />
” Schneewittchen“) verwendet werden. Die Tatsache, daß Märchentexte von<br />
Nachrichtentexten sehr verschieden sind, führt dazu daß die n-Gramm-<br />
Wahrscheinlichkeiten sehr klein geraten und somit die Perplexität sehr groß<br />
wird. Hier bedeutet dies, daß die Erkennung eines gesprochenen Märchens<br />
mit Hilfe eines Trigramm-Sprachmodells aus der Süddeutschen Zeitung in<br />
etwa so schwierig ist wie die Erkennung mit einem Vokabular der Größe<br />
1000 Wörter ganz ohne Sprachmodell.<br />
Die Perplexität ist geeignet, die Schwierigkeit einer Erkennungsaufgabe<br />
einigermaßen zu beschreiben. In vielen Fällen ist es jedoch so, daß eine<br />
Aufgabe trotz niedrigerer Perplexität schwieriger ist, weil bei der reinen<br />
Perplexität die Verwechslungswahrscheinlichkeit nicht berücksichtigt wird.<br />
In Abb. 16.2 ist die lokale Wahrscheinlichkeitsverteilung der Nachfolger des<br />
Wortes wi auf der linken Seiten wesentlich schärfer (d.h. hat niedrigere<br />
Perplexität) als auf der rechten Seite. Dennoch ist die Erkennungsaufgabe<br />
der rechten Seite einfacher. Zwar hilft hier das nahezu gleichverteilte Sprachmodell<br />
nicht, aber die in Frage kommenden Wörter sind aus akustischer Sicht
270 16. Verwendung von Sprachmodellen<br />
Daten |V | Sprachmodell PP<br />
Conference Registration [?] 400 Bigramme 7<br />
Resource Management [?] 1000 Bigramme 20<br />
Resource Management 1000 Wortpaare 60<br />
Wall Street Journal [?] 60000 Bigramme 160<br />
Wall Street Journal 60000 Trigramme 120<br />
Süddeutsche Zeitung (SZ) 60000 Trigramme 400<br />
SZ mit Märchen als Test-Set 60000 Trigramme 1000<br />
Tabelle 16.1. Perplexitäten verschiedener Erkennungsaufgaben<br />
nahezu unverwechselbar. An solchen Stellen benötigt ein Spracherkenner<br />
die Information aus dem Sprachmodell überhaupt nicht. Um auch solche<br />
Phänomene zu erfassen, wurde der Begriff der akustischen Perplexität (im<br />
Englischen oft aperplexity genannt) eingeführt:<br />
APP = 2 HA mit HA = − 1<br />
n<br />
n<br />
log P(w1, w2, . . . wn−1, A(wn)) (16.13)<br />
i=1<br />
wobei A(w) die Menge der akustisch mit w verwechselbaren Wörter<br />
ist. Die Definition ist also ganz analog zur reinen Perplexität, nur daß die<br />
Wahrscheinlichkeit für das letzte Wort durch die Wahrscheinlichkeit für eine<br />
Klasse von Wörtern ersetzt wird. In der Praxis wird die akustische Perplexität<br />
allerdings recht selten angegeben. Der Vorteil, den die Perplexität hat,<br />
nämlich bei der Beschreibung Schwierigkeit einer Erkennungsaufgabe, vom<br />
verwendeten Erkenner ganz unabhängig zu sein, geht bei der akustischen<br />
Perplexität verloren, denn die Definition der akustisch verwechselbaren<br />
Wörter hängt sehr wohl auch vom verwendeten Erkenner ab. Zumindest ist<br />
es nicht in jedem Fall selbstverständlich ob zwei Wörter verwechselbar sind<br />
oder nicht.
wi<br />
0.8<br />
0.03<br />
0.17<br />
” ein“<br />
” und“<br />
” an“<br />
Abb. 16.2. Perplexität und Verwechselbarkeit<br />
16.5 Glättung und Interpolation<br />
16.5 Glättung und Interpolation 271<br />
wi<br />
0.33<br />
0.33<br />
0.34<br />
” ich“<br />
” Banane“<br />
” mikroskopisch“<br />
Berücksichtigt man die Tatsache, daß von den ca. 300 000 000 Worttripeln<br />
aus den Wall Street Journal Trainingsdaten ca. 65 000 000, also über<br />
20%, nur ein einziges Mal vorkommen, stellt man fest, daß eine naive<br />
Maximum-Likelihood Schätzung wie in Gl. 16.6 nur sehr schlechte Ergebnisse<br />
produzieren kann. Ob ein Worttrippel ein mal, zwei mal oder drei mal<br />
vorkommt ist oft ein Sache des reinen Zufalls und berechtigt in der Regel<br />
nicht zur Annahme, daß eine Wortfolge, die drei mal vorkommt, auch drei<br />
mal so wahrscheinlich ist, wie eine, die nur ein mal vorkommt. Ganz extrem<br />
ist dies der Fall, bei Wortfolgen, die in den Trainingsdaten überhaupt nicht<br />
vorkommen. Deren Wahrscheinlichkeit auf 0 zu setzen würde sie vom Erkennungsprozeß<br />
komplett ausschließen. Wegen solcher Probleme verwenden<br />
gute Sprachmodell verschiedene Glättungstechniken um Wortfolgen, deren<br />
Wahrscheinlichkeiten nur sehr schlecht geschätzt werden können, dennoch<br />
gut zu modellieren. Im folgenden werden einige Methoden dazu vorgestellt.<br />
16.5.1 Cutoffs<br />
Mit dem englischen Begriff cutoff bezeichnet man das ” Abschneiden“<br />
beziehungsweise das Ignorieren eines Teils der Trainingsdaten. Das typische<br />
Vorgehen dabei besteht darin, alle Wortfolgen, die weniger als m mal vorkommen<br />
komplett zu ignorieren. Wenn sichergestellt ist, daß jede Wortfolge,<br />
die zur Schätzung der Sprachmodellparameter verwendet wird, mindestens<br />
m mal im Trainingstext vorkommt, dann kann man davon ausgehen, daß die<br />
Schätzung umso robuster ausfällt, je größer m ist. Selbstverständlich darf<br />
m nicht zu groß gewählt werden, da sonst irgendwann der Effekt eintritt,<br />
daß zu viele Trainingsdaten ignoriert werden und so die Schätzung wieder<br />
verschlechtert wird. Die am häufigsten verwendeten Werte für m sind 1, 2<br />
oder 3, je nachdem wie viele Daten zur Verfügung stehen.
272 16. Verwendung von Sprachmodellen<br />
16.5.2 Discounting<br />
Beim Discounting handelt es sich prinzipiell auch um eine Art von Glättung.<br />
Dabei wird jede absolute Häufigkeit #(w) ersetzt durch # ′ (w), z.B. wie in:<br />
# ′ (w) = #(w) − d absolutes Discounting (16.14)<br />
# ′ (w) = #(w) + 1 Jeffrey Smoothing (16.15)<br />
# ′ (w) = #(w) + 1/2 uniforme Bayes Glättung (16.16)<br />
Durch das Discounting ändern sich die Unterschiede der absoluten Häufigkeiten<br />
bestimmter Wörter untereinander nicht, die relativen Häufigkeiten<br />
werden aber einander ein wenig angenähert (geglättet). Beim absoluten<br />
Discounting muß selbstverständlich eine Regelung getroffen werden, wie mit<br />
negativen Häufigkeiten umzugehen ist. Bei großen Textdatenmengen gehen<br />
wir meist davon aus, daß neben der Anwendung eines absoluten Discountings<br />
um den Wert d auch ein Cutoff-Wert c > d gesetzt wurde, so daß negative<br />
Häufigkeiten nicht auftreten können. d muß nicht unbedingt eine natürliche<br />
Zahl sein, auch kleine Discounting-Werte von 0.1 können durchaus Sinn<br />
haben. Das Discounting wird bei der Konstruktion von Sprachmodellen in<br />
der Spracherkennung allerdings weniger zum Zwecke der Glättung verwendet,<br />
sondern vielmehr zur Reduktion der ” Wahrscheinlichkeitsmasse“. Die<br />
sinnvollste Art, die entfernte Wahrscheinlichkeitsmasse einzusetzen, ist das<br />
im folgenden vorgestellte Backoff-Verfahren.<br />
16.5.3 Backoff-Verfahren<br />
Die Maximum-Likelihood Lösung zur Schätzung von n-Grammen liefert für<br />
Wortfolgen, die in den Trainingsdaten überhaupt nicht vorkommen eine<br />
Wahrscheinlichkeit von null. Solche Wortfolgen können vom Spracherkenner<br />
nicht erkannt werden. Um auch solche Wortfolgen erkennen zu können,<br />
wird die Backoff-Technik verwendet. Wenn die Wahrscheinlichkeit für das<br />
n-Gramm P(wk|wk−1, wk−2, . . .w k−(n−1) nicht geschätzt werden konnte,<br />
weil die Wortfolge w k−(n−1), . . . wk−2, wk−1, wk im Trainingstext nicht beobachtet<br />
wurde, dann bietet es sich an, statt dessen als Rückfallmethode (engl.<br />
backoff ) das n − 1-Gramm P(wk|wk−1, wk−2, . . .w k−(n−2) zu verwenden.<br />
Für ein korrektes Sprachmodell muß allerdings gelten:<br />
<br />
wq 1 ,wq 2 ,...wqn<br />
P(wqn|wqn−1, . . . wq1) = 1 (16.17)
16.5 Glättung und Interpolation 273<br />
Die Summe der Wahrscheinlichkeiten aller n-Gramme muß für jedes n<br />
exakt 1 ergeben. Dies ist bei einer Maximum-Likelihood Schätzung schon für<br />
die ” gesehenen“ n-Gramme der Fall. Ordnen wir den ” nicht gesehenen“ auch<br />
Wahrscheinlichkeiten > 0 zu, so ist die geforderte Bedingung von Gl. 16.17<br />
nicht erfüllt. Um auch für die Rückfallwahrscheinlichkeiten etwas Wahrscheinlichkeitsmasse<br />
übrig zu haben, muß diese zuvor aus den n-Grammen<br />
mittels Discounting herausgenommen werden. Am häufigsten wird dafür ein<br />
absolutes Discounting gemäß Gl. 16.14 mit d ≈ 0.5 verwendet.<br />
Dann berechnet sich die Wahrscheinlichkeit für die gesehene Wortfolge<br />
w k−(n−1), . . . wk−2, wk−1, wk zu<br />
p+(wk|wk−1, wk−2, . . . w k−(n−1)) = #(w k−(n−1), w k−(n−2), . . . wk) − d<br />
#(w k−(n−1), w k−(n−2), . . . wk−1) (16.18)<br />
Für den Fall, daß w k−(n−1), . . .wk−2, wk−1, wk nicht gesehen wurde:<br />
p−(wk|wk−1, wk−2, . . . w k−(n−1))<br />
= p+(wk|wk−1, wk−2, . . . w k−(n−2)) · b(w1, w2, . . . wk−1) (16.19)<br />
wobei das ” Korrektiv“ b(w1, w2), der Backoff-Faktor, berechnet wird als:<br />
b(w1, w2, . . . wk−1) =<br />
<br />
w∈Vokabular<br />
d · δ(w1, w2, . . .wk−1, w)<br />
#(w1, w2, . . . wk−1)<br />
(16.20)<br />
wobei δ(w1, w2, . . .wk−1, w) entweder 1 ist (wenn w1, w2, . . .wk−1, w<br />
gesehen wurde) oder 0 ist (wenn es nicht gesehen wurde). Hat die<br />
Wortfolge w1, w2, . . . wk−1) in den Trainingsdaten sehr viele verschiedene<br />
Nachfolgewörter ist die Wahrscheinlichkeit für einen ” nicht gesehenen“<br />
Wortübergang größer als wenn sie nur wenige verschiedene Nachfolger hat.<br />
Das Rückfallen auf eine niedrigere n-Gramm-Stufe kann durchaus auch<br />
kaskadiert nötig sein. Wenn in Gl. 16.19 p+(wk|wk−1, wk−2, . . . w k−(n−2))<br />
nicht bekannt ist, weil auch die kürzere Wortfolge w k−(n−2), . . .wk nicht<br />
gesehen wurde, so muß auch hier mit Hilfe der Backoff-Methode auf<br />
p−(wk|wk−1, wk−2, . . . w k−(n−2)) zurückgefallen werden, so daß im allgemeinen<br />
eine Berechnung des n-Gramms wie folgt aussieht:
274 16. Verwendung von Sprachmodellen<br />
p−(wk|wk−1, wk−2, . . . w k−(n−1)) (16.21)<br />
T −1<br />
= p+(wk|wk−1, wk−2, . . . wk−(n−T)) · b(w1, w2, . . . wk−t)<br />
t=1<br />
16.6 Verschiedene weitere Sprachmodelle<br />
Die mit großem abstand beliebtesten Sprachmodelle in der Spracherkennung<br />
sind n-Gramme. Dennoch gibt es auch andere Ansätze, die erfolgreich<br />
eingesetzt werden. Meist handelt es sich dann um besondere Erkennungsaufgaben,<br />
für die n-Gramm weniger geeignet sind, weil zum Beispiel zu wenige<br />
oder gar keine Trainingsdaten vorhanden sind, oder weil die verwendete<br />
Sprache bestimmte Eigenschaften hat – zum Beispiel Kommandosprache,<br />
Buchstabieren, und so weiter. In anderen Fällen, in denen die alternativen<br />
Sprachmodell zum Einsatz kommen, sind oft solche, in denen sie mit<br />
vorhandenen n-Grammen interpoliert oder parallel dazu verwendet werden.<br />
Im folgenden werden einige besondere Methoden der Sprachmodellierung<br />
vorgestellt.<br />
16.6.1 Trigger<br />
Die Wahrscheinlichkeit für die Beobachtung bestimmter Wörter hängt oft<br />
davon ab, ob andere Wörter zuvor beobachtet worden sind. Sicher ist es<br />
wahrscheinlicher, das Wort ” Geld“ zu beobachten, wenn im Laufe eines<br />
Dokuments oder eines Dialogs zuvor das Wort ” Bank“ verwendet wird, als<br />
wenn ” Bank“ nicht vorkommt. Solche Wortpaare nennt man Trigger-Paare.<br />
Oft ist es so, daß beide Wörter eines Trigger-Paars ihre Wahrscheinlichkeiten<br />
gegenseitig beeinflussen. Beim Einsatz von Trigger-Paaren verwendet man<br />
meist für jedes beobachtbare Wort w aus einem Katalog von wichtigen<br />
Wörtern, eine Liste von Trigger-Partnern zusammen mit den dazu gehörigen<br />
erhöhten Beobachtungswahrscheinlichkeiten. Trigger-Modelle verändern also<br />
die Wortwahrscheinlichkeiten zur Laufzeit des Erkenners. Die Hypothese<br />
einer erkannten Äußerung beeinflußt die Erkennung der nachfolgenden<br />
Äußerungen.<br />
16.6.2 Cache<br />
Die Idee, die hinter Cache-Sprachmodellen steckt basiert auf der Annahme,<br />
daß ähnlich wie bei Trigger-Modellen die Wahrscheinlichkeiten für einzelne<br />
Wörter aber auch für Wortfolgen vom Thema abhängt, über das gerade
16.6 Verschiedene weitere Sprachmodelle 275<br />
gesprochen wird. Da ein Sprachmodell, das nur mit Hilfe von Texten eines<br />
bestimmten Themas geschätzt wurde, wegen des geringeren Volumens der<br />
Trainingsdaten schlecht geschätzt ist und schlecht generalisiert, bietet es<br />
sich an, es mit einem auf sehr vielen Daten sehr gut geschätzten besser<br />
generalisierenden aber im Spezialfall weniger gut passenden Model zu<br />
interpolieren. Lediglich die Interpolationsfaktoren müßten von Zeit zu Zeit<br />
optimiert werden.<br />
Da es beliebig viele Themen gibt und da es nicht möglich ist, für jedes<br />
denkbare Thema ein eigenes Sprachmodell zu erzeugen und bei Bedarf mit<br />
mehr oder weniger Interpolationsgewicht zum statischen Basissprachmodell<br />
statisches Basissprachmodell dynamisches Basissprachmodell hinzuzunehmen,<br />
kann statt dessen ein temporäres oder dynamisches Sprachmodell auf<br />
den bisher erkannten Hypothesen des Spracherkenners trainiert werden. Dabei<br />
wird die Annahme zugrundegelegt, daß das Thema, über das ein Sprecher<br />
spricht, verhältnismäßig langsam wechselt, zumindest so langsam, daß eine<br />
ausreichende Menge an Text vorhanden ist, mit dem man n-Gramme oder<br />
andere Sprachmodelle schätzen kann. Berechnet man diese n-Gramme auf<br />
einem ” Fenster“ der letzten Hypothesen, so daß sehr alte Hypothesen wieder<br />
aus der Schätzung des dynamischen Modells herausgenommen werden,<br />
dann ergibt sich als resultierendes Sprachmodell λ eine Mischung aus dem<br />
statischen Basismodell λ S und dem dynamischen Modell λ D :<br />
λ = α · λ S + (1 − α) · λ D<br />
das heißt für die einzelnen Wahrscheinlichkeiten:<br />
(16.22)<br />
Pλ(w|H) = α · Pλ S (w|H) + (1 − α) · Pλ D (w|H) (16.23)<br />
Der Interpolationsfaktor α in Gl. 16.22 sollte zweckmäßigerweise vor<br />
allem von der Menge der Daten, mit denen λ D geschätzt wurde, abhängig<br />
gemacht werden. Bei einem sehr kleinen Fenster sollte ein sehr großes α<br />
knapp unter 1.0 gewählt werden, und bei sehr großen Fenstern kann das α<br />
langsam kleiner werden. In der Regel wird es aber dennoch nahe bei 1.0<br />
bleiben.<br />
16.6.3 Klassenbasierte Sprachmodelle<br />
Eine wichtige Form von Sprachmodellen bilden klassenbasierte Modelle.<br />
Viele Wörter sind in einem bestimmten Kontext oft beliebig austauschbar,<br />
ohne daß sich die Wahrscheinlichkeit der gesamten Wortfolge merklich<br />
ändert. Das können zum Beispiel Zahlen, Wochentage, Personennamen
276 16. Verwendung von Sprachmodellen<br />
und ähnliches sein. Ersetzt man in einem Trainingstext alle Personennamen<br />
durch das Wort ” “ so kommen Wortfolgen wie ” Guten<br />
Tag, Herr relativ häufig vor, die Wahrscheinlichkeit für<br />
P(< Personenname > |Guten, Tag, Herr) läßt sich sehr gut schätzen, jedenfalls<br />
viel besser als die Wahrscheinlichkeit für P(Rogina|Guten, Tag, Herr),<br />
ein Viergramm, das in den Trainingsdaten womöglich so selten vorkommt, daß<br />
es im Rahmen des Cutoff-Verfahrens entfernt wurde. Wenn also die Wahrscheinlichkeit,<br />
für eine Wortklasse C bei gegebener Historie w1, w2, wn−1 als<br />
n-Gramm-Wahrscheinlichkeit P(C|w1, w2, wn−1) bekannt ist, dann berechnet<br />
sich die Wahrscheinlichkeit für ein Bestimmtes Wort wn aus dieser Klasse<br />
einfach als:<br />
P(wn|w1, w2, wn−1) = P(C|w1, w2, wn−1) · P(wn|C) (16.24)<br />
Das heißt, neben den Klassen-n-Grammen werden noch die Wahrscheinlichkeiten<br />
der Wörter innerhalb der Klassen benötigt. Wenn die Klassen<br />
ausreichend groß sind, lassen sich die klassenbedingten Wahrscheinlichkeiten<br />
durch einfaches Zählen (Unigramme) bestimmen. In anderen Fällen kann die<br />
klassenbedingte Wahrscheinlichkeitsmasse mehr oder weniger proportional<br />
auf die Elemente der Klasse verteilt werden.<br />
Ein besonderer Vorteil klassenbedingter Wahrscheinlichkeiten ist nicht<br />
nur die Möglichkeit der robusten n-Gramm-Schätzung, sondern vor allem<br />
auch die Möglichkeit, auf einfachste Weise neue Wörter ins Sprachmodell<br />
einzufügen, ohne dieses erneut berechnen zu müssen. So kann<br />
ein Nachrichtensprachmodell über Jahre hinweg unverändert bleiben,<br />
wenn nur die Klassen , , ,<br />
und so weiter regelmäßig mit den neuesten Klassenelementen<br />
aktualisiert werden.<br />
16.6.4 Spezielle Sprachmodelle<br />
Im folgenden werden einige besondere Arten der Sprachmodellierung vorgestellt.<br />
Sie bilden nur einen kleinen Ausschnitt aus einer sehr großen Menge<br />
von Möglichkeiten zur Berechnung von Wortfolgewahrscheinlichkeiten.<br />
HMM-basierte Modellwahl<br />
Schon beim Diktieren eines Briefes, aber vielmehr noch bei <strong>Mensch</strong>-<br />
<strong>Maschine</strong>- und erst recht bei <strong>Mensch</strong>-<strong>Mensch</strong>-Dialogen gibt es deutlich<br />
erkennbare <strong>Kommunikation</strong>sstrukturen, die sich über die Zeit ändern. So<br />
bestehen Briefe typischerweise aus Adreßangaben, Anrede, Text und Gruß.<br />
Ein Dialog zwischen <strong>Mensch</strong>en könnte aus Begrüßung, Smalltalk, Abschied
16.6 Verschiedene weitere Sprachmodelle 277<br />
bestehen. Abb. 16.3 zeigt ein Beispielmodell für ein Terminvereinbarungsgespräch.<br />
Je nach Zweck der <strong>Kommunikation</strong> kann die Struktur beliebig<br />
gestaltet und verfeinert werden. Der Gedanke, diese Struktur in Form eines<br />
Markov-Modells darzustellen liegt nahe. Ein Zustand des Modells entspricht<br />
dann einem Zustand der <strong>Kommunikation</strong>. Nicht alle Zustandsfolgen sind<br />
gleich wahrscheinlich, so daß die Übergänge zwischen den Markov-Zuständen<br />
mit den dazugehörigen Wahrscheinlichkeiten den Wechseln der <strong>Kommunikation</strong>szustände<br />
entsprechen.<br />
Ähnlich wie in der Akustik, so läßt sich bei der Modellierung eines<br />
<strong>Kommunikation</strong>sprozesses nicht jede Äußerung eindeutig einem bestimmten<br />
Zustand zuordnen. So wie bei einem akustischen HMM ein Zustand<br />
eine akustische Beobachtung emittiert, so kann man sagen, daß ein<br />
<strong>Kommunikation</strong>sstruktur-HMM eine Äußerung emittiert. Als Emissionswahrscheinlichkeiten<br />
dienen die Wortfolgewahrscheinlichkeiten der jetzt<br />
zustandsabhängigen Sprachmodelle. Jeder <strong>Kommunikation</strong>szustand hat<br />
ein eigenes Sprachmodell, das auf die Art der <strong>Kommunikation</strong> in diesem<br />
Zustand spezialisiert ist und diese somit besser modelliert als ein allgemeines<br />
Sprachmodell. In Abb. 16.3 berechnet das Modell B für die Wortfolge W die<br />
Wahrscheinlichkeit P B (W), die bei korrektem Modell höher ist als P S (W),<br />
wenn W eine Begrüßungsfloskel ist.<br />
P B (W)<br />
Begrüßung<br />
P T (W)<br />
Terminverhandlung<br />
Smalltalk<br />
P S (W)<br />
Abb. 16.3. Sprachmodellauswahl mit einem HMM<br />
Verabschiedung<br />
P V (W)<br />
Ein derartiges <strong>Kommunikation</strong>s-HMM kann benutzt werden, um<br />
komplette Dialoge oder komplexe <strong>Kommunikation</strong>en zu erkennen. Die Wahrscheinlichkeit<br />
einer Wortfolge wird dann dynamisch berechnet und hängt<br />
vom aktuellen Zustand ab. Das Durchlaufen der <strong>Kommunikation</strong>szustände<br />
geschieht mit Hilfe der gleichen Algorithmen wie bisher für die Spracher-
278 16. Verwendung von Sprachmodellen<br />
kennung kennengelernt. In einem Experiment [?] konnte die Leistung des<br />
Erkenners unter Verwendung eines <strong>Kommunikation</strong>sstruktur-HMMs etwas<br />
verbessert werden.<br />
Verzahnte Sprachmodelle<br />
Betrachten wir den Satz: ” Der Leiter dieser Abteilung sagte, sie würden<br />
expandieren.“ Die Wörter in diesem Satz haben unterschiedliche Wichtigkeit<br />
für die Bedeutung. In der Linguistik unterscheidet man oft zwischen<br />
bedeutungstragenden (content words) und nicht-bedeutungstragenden<br />
(non-content words) Wörtern. Die nicht-bedeutungstragenden werden oft<br />
auch Funktionswörter (function words) genannt. In diesem Beispiel wären<br />
die bedeutungstragenden Wörter ” Leiter, Abteilung, sagte, expandieren“.<br />
Man kann leicht nur anhand dieser Wörter den kompletten Sinn des Satzes<br />
rekonstruieren. Aus den Funktionswörtern ” Der, dieser, sie, würden“ kann<br />
kein Sinn extrahiert werden. Ganz grob kann man sagen, daß die bedeutungstragenden<br />
Wörter Teile der semantischen und pragmatischen Information<br />
des Satzes enthalten und die Funktionswörter eher Teile der Semantik und<br />
die Syntax beinhalten. Wörter wie Leiter, Abteilung und expandieren sind<br />
typisch für wirtschaftliche Texte. Die Erwartung des Wortes ” expandieren“<br />
ist viel mehr von den Wörtern ” Leiter“ und ” Abteilung“ getragen als von<br />
den unmittelbar davor stehenden wenig sagenden ” sie würden“.<br />
Auf dieser Erkenntnis baut die Idee der verzahnten Sprachmodelle von<br />
[?] auf. Sie verwenden getrennte Modelle für bedeutungstragende und Funktionswörter.<br />
So wird die Wahrscheinlichkeit für ein bedeutungstragendes<br />
Wort von den Identitäten der zuvor gesprochenen bedeutungstragenden<br />
Wörter gemacht. Der Vorteil dieses Vorgehens hängt von der verwendeten<br />
Sprache ab. In der deutschen Sprache sind starke Bindungen zwischen<br />
Funktionswörtern und bedeutungstragenden allein schon durch die oft<br />
gemeinsame Flexionsform gegeben. Ein ignorieren dieser führt zu Nachteilen.<br />
Solche Nachteile gibt es im Englischen mangels Flexion weniger. Im<br />
Japanischen wird überhaupt nicht flektiert, statt dessen werden Relationen,<br />
Zeiten, Mengen etc. durch spezielle Partikelwörter ausgedrückt. Gerade dort<br />
funktionieren verzahnte Modelle besonders gut.<br />
Reguläre und Kontextfreie Grammatiken<br />
Ein einfaches Bigramm Sprachmodell läßt sich leicht mit Hilfe eines<br />
Zustandsandsautomaten wie in Abb. 15.10 darstellen. Aus der Sicht des
16.6 Verschiedene weitere Sprachmodelle 279<br />
Sprachmodells kann von der HMM-Struktur innerhalb der Wörter abstrahiert<br />
werden, so daß ein Automat mit n Zuständen (einer für jedes<br />
Wort) entsteht. Es gibt keine Ausgezeichneten Start- und Finalzustände,<br />
jeder Zustand kann diese Rolle übernehmen. Ein Trigramm Sprachmodell<br />
würde einen erheblich komplizierteren Automaten ergeben, der statt n<br />
Zuständen n 2 hätte. Bedenkt man aber, daß nicht alle Wortfolgen explizit<br />
modelliert werden müssen, dann wäre es grundsätzlich möglich auch wesentlich<br />
kompliziertere Grammatiken als Bigramme und Trigramme in einem<br />
Zustandsautomaten zu kodieren.<br />
Einige Forscher [?] gehen dazu über, das Sprachmodell und die Wort-<br />
HMMs zusammen in einen einzigen großen Automaten zu stecken, der<br />
dann sowohl große oder komplizierte Wortkontexte als auch die akustische<br />
Modellierung der Wörter inklusive varianter Aussprachen berücksichtigt.<br />
Nach einer Umwandlung in einen deterministischen Automaten und einer<br />
anschließenden Minimierung desselben entsteht ein Automat (Transduktor<br />
mit gewichteten Übergängen, engl. weighted finte state transducer WFST),<br />
der mit einer Viterbi-Suche durchlaufen werden kann.<br />
Endliche Automaten entsprechen an sich regulären Grammatiken, können<br />
also nicht beliebige kontextfreie akzeptieren. Die menschliche Sprach selbst<br />
läßt sich nicht einmal mit kontextsensitiven Grammatiken beschreiben, und<br />
schon gar nicht mit kontextfreien. Demnach stellen endliche Automaten einen<br />
sehr schlechten Mechanismus zur Modellierung der natürlichen Sprache dar.<br />
In der Praxis läßt sich aber oft relativ viel mit Hilfe einfacher Automaten<br />
ausdrücken. Insbesondere für kommandoorientierte Benutzerschnittstellen<br />
bieten sich Netzwerke wie in Abb. 16.4 an.<br />
Achtung<br />
Abb. 16.4. Automat<br />
ǫ<br />
ǫ<br />
Roboter<br />
bring<br />
hole<br />
besorge<br />
ǫ<br />
ǫ<br />
ǫ<br />
mir<br />
drei<br />
zwei<br />
kleine<br />
kleine<br />
große<br />
große<br />
ǫ<br />
ǫ<br />
Tassen<br />
Solche Netzwerke lassen sich sehr einfach in HMM-artige Automaten<br />
wandeln, mit denen dann die Hypothesensuche durchgeführt wird. Sie sind
280 16. Verwendung von Sprachmodellen<br />
außerdem relativ einfach für den Betrachter verständlich. Etwas mächtiger<br />
sind kontextfreie Grammatiken (CFGs). Mit ihnen ließe sich der Automat<br />
aus Abb. 16.4 beschreiben als:<br />
::= | <br />
::= <br />
::= Achtung | ǫ<br />
::= Roboter | ǫ<br />
::= mir <br />
::= hole | bring | besorge<br />
::= Tassen<br />
::= zwei | drei<br />
::= große | kleine<br />
Auch solche kontextfreien Grammatiken (insbesondere in Backus-Naur<br />
Form, BNF) sind für den Spracherkennungslaien gut lesbar. Verwendet<br />
man nur einfache Regeln, so lassen sich derartige Grammatiken automatisch<br />
in HMM-Suchnetzwerke umwandeln. Der große Vorteil gegenüber<br />
der Verwendung von n-Grammen besteht in dem Verzicht auf Trainingsdaten.<br />
Heutige Spracherkenner sind noch weit weg von der Idealvorstellung, auf<br />
jeder Erkennungsaufgabe, unabhängig von der <strong>Kommunikation</strong>sart und den<br />
<strong>Kommunikation</strong>szielen gleich gut zu funktionieren. Die zu verwendenden<br />
Vokabulare und Sprachmodelle sind einfach zu verschieden. Wenn ein<br />
Spracherkennungssystem für eine neue Aufgabe entwickelt werden soll,<br />
z.B. zum Steuern eines Rasenmäherroboters, dann liegen meist keine oder<br />
zumindest keine ausreichenden Textdatenmengen vor, mit denen man für<br />
die Aufgabe spezifische n-Gramme schätzen könnte. Eine Person, die die<br />
<strong>Kommunikation</strong>sschnittstelle zwischen dem <strong>Mensch</strong>en und dem Sprache<br />
erkennenden System beschreiben kann, hat in der Regel keine Probleme,<br />
diese Schnittstelle, das heißt insbesondere die erlaubten beziehungsweise<br />
erwarteten Wortfolgen in Form einer CFG in BNF darzustellen. Mit einem<br />
Text-To-Speech System können dann noch gegebenenfalls zu neuen Wörter<br />
in dieser Darstellung Aussprachen generiert werden, und der Erkenner ist<br />
damit sehr schnell einsatzbereit.<br />
Außer dem ” rapid prototyping“ haben endliche Automaten weitere<br />
Vorteile. Sie sind leicht modularisierbar. Es ist möglich, für Teilaufgaben<br />
Teilgrammatiken zu generieren und das Gesamtsystem aus den Teilen<br />
zusammenzusetzen. Grundsätzlich lassen sich die Regeln einer Grammatik<br />
beziehungsweise die Gewichte der Zustandsübergänge der Automaten auch<br />
mit Wahrscheinlichkeiten versehen und sogar mit denen von allgemeinen<br />
n-Grammen interpolieren. Ein Nachteil von Automaten ist die relativ feste
16.6 Verschiedene weitere Sprachmodelle 281<br />
Struktur, die sich während des Erkennungsprozesses nur sehr schwer ändern<br />
läßt. Dynamisch berechnete Übergänge und deren Wahrscheinlichkeiten<br />
(wie zum Beispiel bei Trigger-Modellen) sind hier nur sehr schwer zu<br />
implementieren.<br />
16.6.5 Gewichtung von Akustik und Linguistik<br />
Beim Betrachten der Fundamentalformel der Spracherkennung (14.2) fällt<br />
auf, daß in dieser das akustische Modell mit p(X|W) als Faktor einen Dichtewert<br />
und das Sprachmodell mit P(W) eine echte Wahrscheinlichkeit als Faktor<br />
beiträgt. Rein mathematisch ist dies nicht weiter problematisch, allerdings<br />
kann es je nachdem, auf welche Art die Emissionswahrscheinlichkeiten berechnet<br />
werden, dazu führen, daß für zwei verschiedene Hypothesen W1 und<br />
W2 der Unterschied der beiden akustischen Beiträge |p(X|W1) − p(X|W2)|<br />
um viele Größenordnungen größer sein kann als der Unterschied der beiden<br />
Sprachmodellbeiträge |P(W1)−P(W2)|. Dies kann dazu führen, daß der Einfluß<br />
des Sprachmodells auf den Erkennungsvorgang zu gering ausfällt. Daher<br />
wird in der Praxis das Produkt von akustischem Modell und Sprachmodell<br />
mit Hilfe eines Exponenten z über dem Sprachmodell gewichtet. Außerdem<br />
wird der Nichtberücksichtigung der A-priori-Wahrscheinlichkeit für die Länge<br />
einer Hypothese P(|W| = n) ein zuzsätzlicher Faktor q n in die Formel aufgenommen:<br />
ˆW = argmaxP(X|W)<br />
· P(W)<br />
W<br />
z · q |W|<br />
(16.25)<br />
Wenn - wie bei fast allen Spracherkennern üblich - die Wahrscheinlickeiten<br />
und Dichten im logarithmischen Raum betrachtet werden ergibt sich somit:<br />
ˆW = argmax(log<br />
P(X|W) + log P(W) · z + q · |W|) (16.26)<br />
W<br />
In dieser Darstellung ist leicht zu sehen, wie ein größerer Wert für z<br />
den Einfluß des Sprachmodells erhöht. Mit einer passenden Wahl von q läßt<br />
sich der Erkenner dahingehend beinflussen, mehr oder weniger Wörter in<br />
den Hypothesen unterzubringen. Die optimale Einstellung von z und q wird<br />
in der Regel anhand einer Kreuzvalidierungsmenge bestimmt, indem die<br />
Fehlerrate des Erkenners auf dieser Menge für verschiedene Kombinationen<br />
der z und q gemessen wird und schließlich die Kombination mit den besten<br />
Resultaten weiterverwendet wird.<br />
In [?] wid ein Verfahren vorgestellt, wie mit Hilfe eines Multi-Layer-<br />
Perzeptrons bei Kenntnis verschiedener Eigenschaften des Signals und einer<br />
tentativen Hypothese die für jede Aufnahme individuell optimierten Einstellung<br />
von z und q berechnet werden können. Mit einer derartigen individuellen<br />
Einstellung kann in vielen Fällen die durchschnittliche Fehlerrate etwas
282 16. Verwendung von Sprachmodellen<br />
gesenkt werden, auf jeden Fall jedoch kann auf den Aufwand des ” Ausprobierens“<br />
und Auswertens verschiedener Kombinationen auf der Kreuzvalidierungsmenge<br />
verzichtet werden.<br />
16.7 Adaption von Sprachmodellen<br />
Im Prinzip kann man Cache Sprachmodelle als sich ständig adaptierende<br />
Sprachmodelle bezeichnen. Auch Trigger-Modelle enthalten eine Art<br />
Adaptionskomponente. Grundsätzlich läßt sich ein Sprachmodell aber<br />
auch mit Daten adaptieren, die nicht direkt aus den Erkennerhypothesen<br />
kommen. Im folgenden wollen wir zwei Vorgehensweisen dazu vorstellen,<br />
die hypothesenbasierte Auswahl zuvor berechneter Modelle bzw. deren<br />
Interpolationsfaktoren, und die HDLA Methode (hypothesis driven lexicon<br />
adaptation) [?].<br />
16.7.1 Auswahl vorberechneter Modelle<br />
Wie gut ein Text zu einer Menge von Hypothesen paßt, läßt sich auf verschiedene<br />
Arten bestimmen. Zu den geeignetsten gehören wohl das Messen<br />
der Perplexität, die die Hypothesen als Testset auf einem auf dem Text<br />
geschätzten Sprachmodell haben, und das Berechnen einer tfidf-basierten<br />
Dokumentendistanz, bei der der Text und die Hypothesen als zwei verschiedene<br />
Dokumente betrachtet werden.<br />
Die Aufgabe der Themenbasierten Adaption eines Sprachmodells durch<br />
Auswahl vorbereiteter Sprachmodelle kann wie folgt definiert werden.<br />
gegeben: n Dokumente D1, D2, . . . Dn, ein Vokabular V = {w1, w2, . . .wk}<br />
und eine erkannte Wortfolge H = h1, h2, . . . hm<br />
gesucht: j so, daß das auf Dj trainierte (oder damit interpolierte)<br />
Sprachmodelle die Wortfolge H am besten modelliert<br />
Unter der Voraussetzung, daß die Dokumente sehr groß sind und so<br />
sinnvolle Sprachmodelle darauf trainiert werden können, bietet es sich in<br />
der Tat an, die Testset-Perplexität dieser Sprachmodelle auf der Testmenge<br />
H zu messen. Die meist stabilere Alternative ist die Bestimmung einer<br />
tfidf-Distanz. Das tfidf-Maß bestimmt die Wichtigkeit eines Wortes w für<br />
ein Dokument Di. Sie ist das Produkt der Faktoren tf (term frequency) und<br />
idf (inverse document frequency):
tf(w, Di) =<br />
#w in Di<br />
|Di|<br />
16.7 Adaption von Sprachmodellen 283<br />
(16.27)<br />
Der Wert tf(w, Di) ist also die Anzahl der Vorkommen von w im<br />
Dokument Di dividiert durch die Größe von Di.<br />
n<br />
idf(w) = log(<br />
) (16.28)<br />
#Dj mit Dj enthält w<br />
Ist w ein Artikel, der in nahezu jedem Dokument sehr oft vorkommt,<br />
dann ist zwar tf(w, Di) relativ groß – zumindest größer als für die meisten<br />
anderen Wörter – aber idf(w) ist nahezu null, da #Dj mit Dj enthält ≈ n.<br />
Somit ist tfidf(w, Di) = tf(w, Di) · idf(w) ≈ 0. Wörter, die in sehr wenigen<br />
Dokumenten vorkommen haben einen relativ hohen idf-Wert.<br />
Bei einem vorgegebenen Vokabular V läßt sich ein Dokument H thematisch<br />
durch einen k-dimensionale Vektor T(H) beschreiben:<br />
T(H) = (tfidf(w1, H), tfidf(w2, H), . . . tfidf(wk, H)) (16.29)<br />
Die tfidf-Distanz zweier Dokumente H1 und H2 läßt sich nun durch<br />
Vergleich von T(H1) und T(H2). Hier kann im einfachsten Fall (für<br />
kleine Vokabulare und große Dokumentemengen) eine Euklidische Distanz<br />
verwendet werden, und für stabilere Resultate einen Korrelationsabstand wie<br />
j=1<br />
k<br />
(tfidf(wj, H1) · tfidf(wj, H2))<br />
j=1<br />
δ(H1, H2) = 1 − <br />
⎛<br />
k <br />
⎝<br />
tfidf 2 ⎞ ⎛<br />
k<br />
(wj, H1) ⎠ ⎝ tfidf 2 ⎞ (16.30)<br />
(wj, H2) ⎠<br />
In Gl. 16.30 ist δ(H1, H2) = 0 wenn H1 = H2, und δ(H1, H2) = 1, wenn<br />
die Menge der Wörter in H1 und die Menger der Wörter in H2 disjunkt<br />
sind. Aus mathematischer Sicht gilt auch: 1 − δ(H1, H2) ist der Cosinus<br />
des Winkels zwischen den Vektoren T(H1) und T(H2) im R k . Aus dem<br />
Bereich des Information-Retrieval und Data-Mining sind zahlreiche weitere<br />
vergleichbare Distanz- und Ähnlichkeitsmaße bekannt.<br />
Die Adaption eines Standard Sprachmodells λ S auf das aktuelle Thema<br />
kann nun wie folgt durchgeführt werden. Die beste verfügbare Beschreibung<br />
j=1
284 16. Verwendung von Sprachmodellen<br />
des aktuellen Themas ist die Erkennerhypothese (beziehungsweise die Konkatenation<br />
der letzen Hypothesen) H. Diese kann als Dokument betrachtet<br />
werden, und zu jedem Dokument Di mit vorberechnetem Sprachmodell<br />
kann δ(H, Di) berechnet werden. Im einfachsten Fall wird ein konkretes<br />
Dokument Dj = argmin Dl δ(H, Dl) ausgewählt, und als adaptiertes Model<br />
λ A = λ(Dl) beziehungsweise eine Interpolation von λ S mit λ(Dl) verwendet.<br />
Eine feinere Adaption läßt sich durchführen, indem λ S mit allen vorberechneten<br />
Sprachmodellen interpoliert wird:<br />
λ A = α · λ S + β ·<br />
n<br />
(1 − δ(H, Di)) · λ(Di) (16.31)<br />
i=1<br />
Die Faktoren α und β müssen experimentell bestimmt werden und<br />
addieren sich normalerweise nicht zu 1. Welche Werte sinnvoll sind, hängt<br />
von der Anzahl und Größe der Dokumente Di ab.<br />
Grundsätzlich ist es auch möglich, die Dokumente mit ihren themenspezifischen<br />
Sprachmodellen nicht im voraus bereitzuhalten. Statt dessen<br />
können zu Laufzeit des Erkenners Dokumente aus dem World-Wide-Web<br />
besorgt und ausgewertet werden. Mit Hilfe von Internet-Suchmaschinen<br />
lassen sich so zu den Erkennerhypothesen passende Dokumente finden,<br />
darauf Sprachmodelle berechnen und der Erkenner so adaptieren.<br />
In Experimenten [?] konnte durch Adaption des Sprachmodells an<br />
das aktuelle Thema die Perplexität des Sprachmodells um ca. 15% und<br />
Fehlerrate des Erkenners ein wenig gesenkt werden.<br />
16.7.2 Hypothesis driven lexicon adaptation<br />
Oft wird mit dem Begriff ” Sprachmodell“ nur der Teil eines Spracherkenners<br />
bezeichnet, der die Wahrscheinlichkeit von Wortfolgen berechnet. Prinzipiell<br />
gehört aber auch die Definition des Vokabulars dazu. Die größten Probleme<br />
mit dem Vokabular haben Erkenner für stark flektierende Sprachen. Dazu<br />
gehört auch die Deutsche Sprache. Selbst wenn wir alle ca. 1,6 Millionen<br />
verschiedene Vokabularwörter, die im Laufe eines Jahres in der Süddeutschen<br />
Zeitung stehen, betrachten, so werden darunter für die meisten Wörter<br />
nicht alle Flexionsformen sein. Womöglich kommt das Wort ” lichten“ vor,<br />
vielleicht sogar ” gelichtet“ aber dann fehlt vielleicht ” gelichteter“. Neue<br />
Formen können aber auch durch andere Vorsilben entstehen: ” ungelichteter“.<br />
Wird jede Buchstabenfolge zwischen zwei Leer- oder Satzzeichen als Wort<br />
betrachtet, dann ist im Deutschen aussichtslos, so viele Wörter ins Vokabular
16.7 Adaption von Sprachmodellen 285<br />
aufzunehmen, daß das Fehlen bestimmter Wortformen vernachlässigt werden<br />
könnte.<br />
Eine in verschiedenen Varianten von vielen Spracherkennungssystemen<br />
benutztes Verfahren ist die so genannte hypothesis driven lexicon adaptation,<br />
HDLA [?]. Die Idee dabei ist, ähnlich wie bei der Sprachmodelladaption<br />
an ein Thema, die Erkennerhypothese zu verwenden, um zusätzliche Informationen<br />
zu besorgen. Das Ziel der HDLA ist es, immer ein Vokabular zu<br />
verwenden, das möglichst wenige der zu erkennenden Wörter nicht enthält,<br />
das heißt, der Anteil der Nichtvokabularwörter (engl. out of vocabulary words,<br />
OOV-words) im Gesprochenen möglichst gering zu halten. Die zusätzlichen<br />
Informationen können zum Beispiel aus einem Hintergrundlexikon entnommen<br />
werden, das so groß ist, daß der Spracherkenner es nicht als ganzes<br />
komplett verwenden kann. Sie kann aber auch zur Laufzeit aus dem Internet<br />
besorgt werden. Der HDLA-Algorithmus kann grob wie folgt skizziert werden:<br />
1. erkenne mit nicht adaptiertem Lexikon und erhalte Hypothese<br />
(oder Hypothesenliste) H<br />
2. verwende alle Wörter in H,<br />
um ähnliche Wörter W aus Hintergrundwissen zu besorgen<br />
3. entferne einige der seltensten Wörter aus dem Lexikon<br />
und ersetze sie durch die Wörter in W<br />
4. wiederhole die Erkennung mit dem adaptierten Lexikon<br />
und erhalte Hypothese H ′<br />
Die Erwartung, daß H ′ weniger Fehler enthält als H stützt sich auf die<br />
Annahme, daß die aus dem Lexikon entfernten Wörter bei der Erkennung<br />
keine Rolle spielen (Wörter aus H werden selbstverständlich nicht entfernt),<br />
und daß die hinzugenommenen Wörter möglicherweise bestimmte Wortformen<br />
von Wörtern aus H enthalten, die zunächst falsch erkannt wurden.<br />
Beispielsweise könnte das Wort ” Spracherkenner“ an der Stelle, an der der<br />
Sprecher ” Spracherkenners“ gesagt hatte, erkannt worden sein, weil es von<br />
allen Wörtern im Vokabular dem Gesagten am nächsten kommt. Durch die<br />
Adaption, wäre ” Spracherkenners“ ins Vokabular aufgenommen worden und<br />
könnte dann korrekt erkannt werden.<br />
In [?] werden verschiedene Ähnlichkeitsmaße zwischen Wörtern getestet<br />
um im Schritt 2 zu entscheiden, welche Wörter in Vokabular aufgenommen<br />
werden sollten. Als ähnlich werden nicht nur Wörter betrachtet, die verschiedene<br />
Formen desselben Wortstammes sind, sondern auch solche, die einfach
286 16. Verwendung von Sprachmodellen<br />
eine ähnliche Orthographie oder phonetische Umschrift haben. Darüber<br />
hinaus werden thematisch ähnlich Wörter auch betrachtet. [?] konnte durch<br />
den Einsatz von HDLA die Fehlerraten von Spracherkennern um 25% bis<br />
29% verbessern.<br />
16.7.3 Kompositabildung<br />
Im Deutschen sowie in einigen anderen Sprachen gibt es wesentlich mehr als<br />
im Englischen Probleme mit der Bildung von Komposita. Zwar können auch<br />
Komposita-Verben (zurückhalten, nachdenken) und Komposita-Adjektive<br />
(blaugrün, kleinkariert) gebildet werden, der weitaus größte Teil sind aber<br />
Komposita-Substantive. Betrachtet man die ca. 1.6 Millionen verschiedene<br />
Wörter, die im Laufe eines Jahres in einer deutschen Tageszeitung vorkommen<br />
und untersucht diejenigen, die nicht zu den häufigsten ca. 100 000<br />
gehören, so fallen darunter drei Gruppen auf: seltene Flexionsformen,<br />
Eigennamen und Komposita. Es ist relativ einfach möglich, einen Großteil<br />
der Komposita in ihre Komponenten zu zerlegen. Dazu genügt es, zu<br />
untersuchen, ob sie sich aus kürzeren Wörtern zusammensetzen lassen. Auf<br />
diese Art ist es möglich, einfach alle Texte zu zerlegen, so daß nur noch<br />
sehr wenige Komposita vorkommen. Die Menge der verschiedenen Wörter<br />
in einem zerlegten Text kann so dramatisch verkleinert werden, was dem<br />
Vokabular und der Qualität des dann berechneten Sprachmodells zugute<br />
kommt.<br />
Bei der Zerlegung ist es wichtig, einige Heuristiken anzuwenden. Die<br />
wichtigste ist, daß keine zu kleinen Komponenten betrachtet werden.<br />
Wörter mit nur drei oder weniger Buchstaben erzeugen Probleme, weil<br />
viele ” normale“ Wörter, die eigentliche keine Komposita sind sich aus ihnen<br />
zusammensetzen lassen (zum Beispiel: Bei-Spiel, ab-er, An-Ton, Stand-Art<br />
usw.). So erweist sich die Auftrennung in Wörter von mindestens vier<br />
Buchstaben als guter Kompromiß. Es entstehen dann immer noch einige<br />
falsche Zerlegungen (zum Beispiel Verein-Barte). Von diesen können aber<br />
häufigsten manuell korrigiert werden, und die seltenen fallen kaum ins<br />
Gewicht.<br />
Ein Erkenner, der nur einzelne Wörter erkennt, produziert dann Hypothesen<br />
der Art ” Der Staats Sekretär sagte ...“. Für einen deutschen<br />
Muttersprachler ist diese Getrenntschreibung (selbst nach der in dieser<br />
Beziehung sehr toleranten neuen Rechtschreibung) sofort als unkorrekt zu<br />
erkennen. Es ist daher wünschenswert, daß eine Instanz des Erkenners solche<br />
Wörter zusammenfügt, so daß ” Der Staatssekretär sagte ...“ als Hypothese<br />
heraus kommt. An der verbreiteten Diskussion zur neuen deutschen Rechtschreibung<br />
ist zu erkennen, daß in vielen Fällen selbst Muttersprachler
16.7 Adaption von Sprachmodellen 287<br />
Schwierigkeiten damit haben, zu entscheiden, ob zwei aufeinanderfolgende<br />
Wörter zusammen oder getrennt oder gar mit Bindestrich geschrieben<br />
werden sollten. Spracherkenner machen dabei relativ viele Fehler. In [?] wird<br />
festgestellt, daß unter den Fehlern, die ein Diktiererkenner auf deutschen<br />
Nachrichtentexten Produziert, ca. 16% aller Fehler falsche Komposita sind.<br />
Genauer gesagt, der Erkenner hat es versäumt zwei getrennt erkannte<br />
Komponenten zu einem Kompositum zusammenzufügen.<br />
Die erste Idee, das Problem anzugehen wird in [?] vorgestellt. Dabei<br />
werden alle Zerlegungen, die beim Aufbereiten der Texte durchgeführt<br />
wurden abgespeichert. Für jedes Wortpaar wird geprüft, ob es sich aus<br />
zwei Komponenten zusammensetzen läßt, von denen die erste einmal das<br />
Vorderteil und die zweite einmal das Hinterteil eines Kompositums war.<br />
Wenn ja, wird aus dem Wortpaar ein einzelnes Wort gemacht. Würde<br />
dabei verlangt werden, daß auch das entstehende Kompositum schon einmal<br />
als ganzes im Trainingstext aufgetaucht war, würde man ja gerade den<br />
Vorteil der Zerlegung entgegenwirken. Häufig vorkommende Komposita wie<br />
” Bundeskanzler“ werden in der Regel gar nicht erst zerlegt, weil sie ohnehin<br />
unter den häufigsten 100 000 Wörtern vorkommen. Eine Komposition von<br />
Wörtern in der Erkennerhypothese ist damit im wesentlichen nur für die<br />
seltenen Wörter wichtig, deren Auftrittswahrscheinlichkeit in irgendwelchen<br />
Textdaten nahe null ist. In [?] wird berichtet, daß die Anwendung<br />
der einfachen Regel ” wi war mal Vorne-Komponente und wi+1 war mal<br />
Hinten-Komponente, dann füge wi und wi+1 zusammen“ nicht hilfreich<br />
ist, im Gegenteil, die Wortfehlerrate steigt sogar an, weil nicht nur viele<br />
Zusammenfügungen unterlassen werden sondern vor allem weil zu viele<br />
falsche Zusammenfügungen gemacht werden.<br />
Ein verfeinertes Kompositabildungsverfahren wird in [?] vorgestellt. Dabei<br />
werden vor einer Prüfung ob wi eine Vorne-Komponente und wi+1 eine<br />
Hinten-Komponente ist, noch einige Heuristiken angewendet. Der Algorithmus<br />
ist eher dadurch motiviert, festzustellen, welche Substantiv-Paare nicht<br />
kombiniert werden sollten. Abb. 16.5 skizziert den Entscheidungsalgorithmus.<br />
Dabei wird zunächst geprüft, ob eines der Wörter ein Eigenname ist<br />
(vergleich mit den häufigsten Eigennamen aus einem Telefonbuch). In den<br />
seltensten Fällen ist eine Komponente eines Kompositums ein häufiger Eigenname.<br />
Wenn kein Eigenname dabei ist, wird geprüft, ob zwei aufeinanderfolgende<br />
Substantive zu einer Aufzählung gehören ( ” Substantiv1 Substantiv2<br />
und/oder Substantiv3“). Zwar würden mit dieser Regel Hypothesen wie ” Die<br />
Staats Sekretäre und Minister sagten ...“ fälschlicherweise als Aufzählung erkannt<br />
werden, aber in der Praxis überwiegen die Fälle, in denen Substantive<br />
nicht zusammengesetzt werden sollten, wenn sie in Aufzählungen auftauchen.<br />
Sind die Substantive mit Adjektiven oder Artikel davor versehen greift die<br />
Regel nicht oder sie müßte erheblich komplizierter implementiert werden.
288 16. Verwendung von Sprachmodellen<br />
Wortpaar ” A B“<br />
Name?<br />
Aufzählung?<br />
zu lang?<br />
nein<br />
nein<br />
ja<br />
ja<br />
ja<br />
nein<br />
Abkürzung?<br />
ja<br />
v-Komponente?<br />
nein<br />
+ v-Komponente<br />
h-Komponente ?<br />
ja<br />
nein<br />
zusammen schreiben: ” AB“<br />
ja<br />
getrennt lassen: ” A B“<br />
nein<br />
mit Bindestrich: ” A-B“<br />
Abb. 16.5. Entscheidungsalgorithmus zur Kompositabildung<br />
Aber auch hierfür stellt sich heraus, daß solche Fälle in der Praxis nur eine<br />
unwesentliche Rolle spielen. Im nächsten Schritt des Entscheidungsverfahrens<br />
werden Komponenten, die selbst schon sehr lang sind und erst recht<br />
Komposita, die sehr lange wären als getrennt zu schreiben erkannt. Man<br />
kann leicht empirisch feststellen, daß in Zeitungstexten ab einer bestimmten<br />
Anzahl von Buchstaben kaum noch Komposita gebildet werden. Danach<br />
wird geprüft, ob das erste Wort des Wortpaares eine Abkürzung ist. In den<br />
meisten Fällen werden die Wörter dann mit Bindestrich geschrieben (zum<br />
Beispiel UNO-Mitglied, DAX-Gewinne, usw.). Erst wenn diese Heuristiken<br />
abgearbeitet worden sind, wird nachgesehen, ob wi als Vorne-Komponente<br />
und wi+1 als Hinten-Komponente möglich sind. Nur dann werden sie Zusammengelegt.<br />
Durch diesen Algorithmus zur Nachbearbeitung von Hypothesen<br />
konnten die durch Falsches Zusammenfügen zusätzlich entstehenden<br />
Fehlern minimiert werden und etwa die Hälfte aller Komposita-Fehler des<br />
Spracherkenners korrigiert werden. Mißt man die Wortfehlerrate auf den in<br />
Komponenten zerlegten Zeitungstexten im Vergleich mit den Originaltexten,<br />
so erhält man eine Fehlerrate von ca. 5%. Wird der Algorithmus von [?] auf<br />
die zerlegten Texte angewandt, haben diese danach nur noch eine Fehlerrate<br />
von ca. 1.4%, also eine Reduktion von über 70%.
17. Kontextabhängige akustische Modelle<br />
kontextabhängige akustische Modelle In der Geschichte der Spracherkennung<br />
gab es relativ wenige Meilensteine, von denen man sagen kann, sie haben<br />
die Erkennungsleistung dramatisch verbessert. Einer davon ist der Einsatz<br />
kontextabhängiger akustischer Modelle. Da unser Artikulationsapparat<br />
mechanischen Gesetzen genügen muß, kann er keine Sprünge zwischen<br />
zwei Idealzuständen für zwei aufeinanderfolgende Laute machen. Was bei<br />
Diphthongen offensichtlich ist, gilt im Prinzip für jedes Lautepaar. Das heißt<br />
vor allem, daß die zeitlichen Randgebiete eines Lautes mit den angrenzenden<br />
Lauten verschwimmen, aber auch daß die Ausprägung des gesamten Lautes<br />
von den ihm umgebenden Lauten abhängt. Den ersten großen Durchbruch<br />
auf dem Gebiet erreichte Kai-Fu Lee in seiner Dissertation [?]. Seine<br />
Erfahrungen werden inzwischen in nahezu allen aktuellen Spracherkennern<br />
eingebracht und führen zu etwa einem Drittel weniger Fehlern als bei den<br />
Erkennern, die nur kontextunabhängige Modelle benutzen.<br />
17.1 Suche nach der optimalen Spracheinheit<br />
Bereits im Kap. 14 wurde die Problematik der verschiedenen Einheiten der<br />
Sprache, die ein eigenes Modell erhalten sollen, einführend behandelt. Hier<br />
werden verschiedene in der Praxis verwendete Einheiten gegenübergestellt<br />
und insbesondere darauf eingegangen, wie diese Einheiten gefunden werden.<br />
Tab. 17.1 zeigt, wie das Wort ” Hallo“ mit verschiedenen Spracheinheiten<br />
modelliert werden kann. Diese unterscheiden sich in ihrer zeitlichen und<br />
räumlichen Ausdehnung. Mit der zeitlichen Ausdehnung ist die Dauer<br />
der Einheit in der Sprachaufnahme gemeint, und mit der räumlichen<br />
Ausdehnung der Anteil am Merkmalsraum, der durch die Einheit abgedeckt<br />
wird. Die längste zeitliche Ausdehnung hat eindeutig die Modellierung<br />
mit der Einheit ” Wort“. Damit würde das Wort ” Hallo“ wie in der ersten<br />
Zeile der Tabelle dargestellt mit einer einzigen Einheit modelliert (die im<br />
Beispiel sinnigerweise den Namen Hallo erhalten hat). Welchen Teil des<br />
Merkmalsraum so eine Worteinheit abdeckt hängt natürlich davon ab, wie
290 17. Kontextabhängige akustische Modelle<br />
Einheit Beispiel für Modellfolge<br />
Wort Hallo<br />
Silbe Ha, Lo<br />
(Mono-)Phone H, A, L, O<br />
Links-Diphone H(-), A(H), L(A), O(L)<br />
Rechts-Diphone H(A), A(L), L(O), O(-)<br />
Triphone H(-|A), A(H|L), L(A|0), O(L|-)<br />
Quintphone H(-|A,L), A(-,H|L,O), L(H,A|0,-), O(A,L|-)<br />
Polyphone H(-|A,L,O,-), A(-,H|L,O,-), L(-,H,A|0,-), ...<br />
generalisierte Polyphone H37, A11, L32, O8<br />
Sub-Monophone H-b, H-e, A-b, A-e, L-b, L-e, O-b, O-e<br />
Sub-Triphone H(-|A)-b, H(-|A)-e, A(H|L)-b, A(H|L)-e, ...<br />
Sub-(generalisierte Polyphone) H13-b, H13-e, A45-b, A45-e, L3-b, L3-e, ...<br />
generalisierte Subpolyphone H-b29, H-e3, A-b51, A-e12, L-b14, L-e24, ...<br />
Tabelle 17.1. Modellierung des Wortes ” Hallo“ mit verschiedenen Spracheinheiten<br />
viele Modelle es insgesamt gibt.<br />
Eine geringere Zeitliche Ausdehnung hat die Einheit der Silbe. Damit<br />
sind schon zwei Einheiten nötig, um das Wort Hallo zu modellieren. Der<br />
Vorteil von Silben gegenüber Wörtern ist ganz offensichtlich die Möglichkeit<br />
mit Ihnen Wörter zu formen. Für den deutschen Standard Wortschatz (ohne<br />
Eigennamen und Fremdwörter) genügen gut 10000 Silben. Mit ihnen ließen<br />
sich Millionen von Wörtern zusammenbauen.<br />
Noch flexibler ist man mit einzelnen Phonen – oft auch Monophone<br />
genannt. Mit einem Standard Phonemsatz von typischerweise ca. 50<br />
Phonemen lassen sich im Prinzip alle Wörter einer Sprache modellieren.<br />
Einige Sprachen haben einen etwas größeren Phonemschatz, und machen<br />
kommen auch schon mit nur 30 Phonemen aus. Allerdings halten sich die<br />
meisten Spracherkenner bei der Definition ihres Phonemsatzes nicht an die<br />
phonetisch-linguistische Definition, sondern orientieren sich vielmehr an der<br />
Akustik der Laute. Die zeitliche Ausdehnung der Phoneme ist noch kleiner
als die der Silben.<br />
17.1 Suche nach der optimalen Spracheinheit 291<br />
Die gleiche zeitliche Ausdehnung wie Monophone haben auch Diphone<br />
(oft auch fälschlicherweise Biphone genannt). Allerdings nehmen diese<br />
einen kleineren Bereich des Merkmalsraums ein. Man kann Diphone als<br />
phon-indizierte Monophone betrachten. Sie gehören zu den einfachsten<br />
Kontextabhängigen Modellen. Je nachdem, ob ein Monophon von seinem<br />
linken oder rechten Nachbarn abhängt spricht man von Links- oder Rechts-<br />
Diphonen. Links-Diphone Das Wort ” Hallo“ kann beispielsweise mit 4<br />
Rechts-Diphonen modelliert werden. Das erste davon wäre der H-Laut, aber<br />
nicht der allgemeine, sondern derjenige H-Laut, der von einem A gefolgt<br />
wird. Danach kommt derjenige A-Laut, der von einem L-Laut gefolgt wird,<br />
und so weiter. Alle Diphone X(. . .) eines Monophons X nehmen denselben<br />
Teil des Merkmalsraumes ein wie das Monophon X.<br />
Triphone sind kontextabhängige Phone, die sowohl vom linken als auch<br />
vom rechten Nachbarn abhängen. Auch sie haben die gleiche Zeitliche<br />
Ausdehnung wie Monophone und Diphone, unterteilen den Merkmalsraum<br />
aber in noch kleinere Teile. Lange Zeit gehörten Triphone zu den beliebtesten<br />
Kontextbreiten. Erst Mitte, Ende der neunziger Jahre wurde vermehrt noch<br />
breitere Kontexte Verwendet.<br />
Der Begriff Quintphon sollte eher Pentaphon heißen, allerdings hat sich<br />
im Amerikanischen die lateinisch-griechische Mischform eingebürgert und<br />
wurde meistens auch so im Deutschen verwendet. Je breiter der Kontext<br />
wird, umso eher kommt es vor, daß er bis über das Ende des Wortes hinausreicht.<br />
Modelliert man das Wort ” Hallo“ wie in Tab. 17.1 kommt in jedem<br />
Quintphon ein Kontext, der jenseits des Wortes liegt, vor. Solche Kontexte<br />
bedürfen meist einer besonderen Behandlung. Es wäre nicht korrekt an<br />
diesen Stellen anzunehmen, daß dort der Stille-Laut steht. Korrekterweise<br />
müßte man den an dieser Stelle stehenden Laut des Nachbarwortes oder<br />
gar des übernächsten Wortes betrachten. In der Praxis ist die vollständig<br />
korrekte Implementierung so breiter Kontexte viel zu aufwendig um damit<br />
noch in akzeptabler Zeit HMM-Spracherkennung machen zu können. Daher<br />
werden meistens Einschränkungen in kauf genommen, wie zum Beispiel<br />
die Beschränkung der Nachbarwortabhängigkeit auf das erste oder letzte<br />
Phonem eines Wortes. Und dieses wird dann meist auch nur von dem unmittelbaren<br />
Nachbarn im angrenzenden Wort abhängig gemacht. Natürlich sieht<br />
das Erkennungs-HMM bei Berücksichtigung von Wortübergangskontexten<br />
wesentlich komplizierter.<br />
Mit Polyphonen bezeichnet man Phone mit unbegrenztem Kontext.<br />
Praktisch heißt dies bis an die Wortgrenzen. In diesem Fall entspricht die<br />
Aufteilung des Merkmalsraumes demjenigen, den wir auch haben, wenn
292 17. Kontextabhängige akustische Modelle<br />
wir komplette Wortmodelle verwenden, da auch hier jedes Modell komplett<br />
vom Wort abhängt. Die zeitliche Ausdehnung bleibt aber die gleiche wie bei<br />
Monophonen.<br />
Tab. 17.2 gibt an, welcher Anteil an allen Wall Street Journal Vokabularwörtern<br />
durch die Kontextbreite komplett abgedeckt wird, also mit anderen<br />
Worten, welcher Anteil des Vokabulars so gut wie mit Ganzwortmodellen<br />
modelliert wird. Man sieht, daß eine allzu große Kontextbreite keine nennenswerten<br />
Vorteile mehr erwarten läßt.<br />
Kontextbreite: Mono- Di- Tri- Quint- Septphone<br />
Ganzwortabdeckung: 3% 27% 49% 80% 90%<br />
Tabelle 17.2. Abdeckung des Vokabulars durch Quasi-Ganzwortmodelle<br />
Wenn der Phonemsatz aus 50 Monophonen besteht, dann kann es theoretisch<br />
bis zu 2500 Diphone geben. Das wäre noch handhabbar. Allerdings<br />
ist es illusorisch alle möglichen Polyphone einer Sprache zu modellieren, so<br />
daß in der Praxis ein Zusammenfassung zu generalisierten Polyphonen zu<br />
Polyphonklassen nötig wird. Auch diese habe die zeitliche Ausdehnung von<br />
Monophonen. Aus der Kenntnis der Polyphonklasse läßt sich dann aber<br />
nicht mehr der Kontext selbst ableiten.<br />
Auch wenn Phoneme eine relativ kurze Zeitspanne von 10ms bis 100ms<br />
abdecken, so beobachtet man dennoch oft innerhalb dieser Zeit eine Variation.<br />
Gerade bei Diphthongen und Affrikaten ist es offensichtlich, daß der<br />
Anfang des Lautes nicht auf die gleiche Art wie sein Ende modelliert weden<br />
sollte. Daher verwenden alle erfolgreichen Spracherkenner zeitlich kürzere<br />
Einheiten, wie zum Beispiel die kontextunabhängigen Submonophone. Meist<br />
wird ein Phonem in drei Teile, ein Beginn-, ein Mittel- und ein Endsegment.<br />
Seltener in zwei Teile wie in Tab. 17.1. Dort besteht nun das Wort ” Hallo“<br />
aus acht Einheiten.<br />
Subtriphone sind die Unterteilung von Triphonen in zeitlich kürzere<br />
Einheiten. Subtriphone haben die gleiche zeitliche Ausdehnung wie Submonophone<br />
(bei gleicher Anzahl von Segmenten). Sie bilden aber schon eine<br />
so feine Unterteilung des Merkmalsraumes, daß in der Regel nicht genug<br />
Trainingsdaten zur Verfügung stehen, um jedes Modell zu trainieren.
17.1 Suche nach der optimalen Spracheinheit 293<br />
Zeitliche Untereinheiten lassen sich natürlich auch von generalisierten<br />
Polyphonen bilden. Im Beispiel in Tab. 17.1 wird das Wort ” Hallo“ am<br />
Anfang mit dem in die Klasse 13 generalisierte Version des H-Lautes, H13,<br />
modelliert. H13 selbst wird in mehrere Segmente, hier ein Beginn- (b) und<br />
ein Endsegment (e). Der Unterschied zu generalisierten Subpolyphonen ist<br />
der, daß bei den letzteren zuerst die Unterteilung der Polyphone in Segmente<br />
gemacht wird und dann die Zusammenfassung in Klassen stattfindet.<br />
A(H|U) A(B|P) A(L|N) A(M|M)<br />
b m e<br />
b m e b m e b m e<br />
A(37) A(38)<br />
b m e b m e<br />
Abb. 17.1. Beispiel für generalisierte Triphone<br />
Der Unterschied zwischen der Unterteilung von generalisierten Subtriphonen,<br />
wie sie von Lee [?] eingeführt und verwendet wurden, und generalisierter<br />
Subtriphone, so genannter Senones, wie sie von Hwang [?] entwickelt wurden,<br />
wird in den Abb. 17.1 und 17.2 dargestellt. Die Einheiten, die bei generalisierten<br />
Triphonen zusammengefaßt werden, haben die zeitliche Ausdehnung eines<br />
Monophons. Damit ist sowohl die Menge der zusammenfaßbaren Modelle als<br />
auch die Freiheit des Ballungsalgorithmus kleiner als bei den Senones.<br />
A(H|U) A(B|P) A(L|N) A(M|M)<br />
b m e<br />
b m e b m e b m e<br />
A-b(17) A-m(13) A-e(22) A-b(3) A-m(11) A-e(4)<br />
Abb. 17.2. Beispiel für Senones
294 17. Kontextabhängige akustische Modelle<br />
Die Problematik mit Modellen unterschiedlicher zeitlicher und räumlicher<br />
Ausdehnung ist eine in der Mustererkennung immer wiederkehrende. Die bei<br />
der Gestaltung des Parameterraumes eines Erkenners zu berücksichtigenden<br />
Kriterien, die Vor- und Nachteile unterschiedlich ausgedehnter Modelle sind<br />
in Tab. 17.3 17.4 zusammengefaßt.<br />
Vorteile Nachteile<br />
kurz hohe Flexibilität wenig Evidenz im Sprachsignal<br />
⇒ vokabularunabhängig ⇒ hohe Verwechselbarkeit<br />
lang geringe Verwechselbarkeit wenig Trainingsdaten pro Einheit<br />
Tabelle 17.3. Vor- und Nachteile unterschiedlicher zeitlicher Modellausdehnung<br />
Vorteile Nachteile<br />
spezifisch gute diskriminative wenig Trainingsdaten<br />
Fähigkeiten pro Einheit<br />
generell robust trainierbar schlechte diskriminative<br />
Fähigkeiten<br />
Tabelle 17.4. Vor- und Nachteile unterschiedlicher räumlicher Modellausdehnung<br />
Die meisten Spracherkenner verwenden neben der Information über die<br />
benachbarten Phoneme auch die Information über die Position eines Phonems<br />
innerhalb eines Wortes. Die Hypothese dabei ist, daß sich ein Phonem<br />
anders anhört, wenn es am Anfang eines Wortes steht, als wenn es mitten<br />
im Wort steht, auch wenn der phonetische Kontext der gleiche ist. Diese Annahme<br />
ist in der Tat begründet, weil wir bei Sprechen sehr wohl das Wort<br />
als Einheit sehen, und dies sich im Sprechrhythmus und den Betonungsregeln<br />
widerspiegelt. Tab. 17.5 zeigt ein Beispiel, in dem die D- und L-Laute unterschiedlich<br />
behandelt werden, obwohl ihr Triphon (und sogar Quintphon)<br />
Kontext identisch sind. Tatsächlich hört sich die Aussprache von ” handlich“<br />
merkbar anders and als diejenige von ” Hand Licht“ (natürlich auch abgesehen<br />
vom T-Laut in ” Licht“).<br />
Abb. 17.3 zeigt wie viele verschiedene Polyphone es gibt, wenn unterschiedlich<br />
breite Kontexte betrachtet werden. Das Schaubild enthält zwei<br />
Kurven, die durchgezogene für die auf der Wall Street Journal (WSJ) Datenbank<br />
gemessenen Werte und die gepunktete für die entsprechenden Werte auf<br />
der Switchboard (SWB) Datenbank. Als Unterschiedlich wurden Polyphone<br />
betrachtet, wenn sie sich entweder in einem Phon unterschieden oder an ver-
100000<br />
Wortfolge Modelle<br />
17.1 Suche nach der optimalen Spracheinheit 295<br />
handlich ... N(A|D) D(N|L) L(D|I) ...<br />
Hand Licht ... N(A|D) Dwe(N|L) L wb (D|I) ...<br />
Tabelle 17.5. Wortpositionsabhängige Modellierung<br />
10000<br />
1000<br />
100<br />
+ ⋄<br />
+<br />
⋄<br />
+<br />
⋄<br />
+<br />
+ +<br />
⋄ ⋄ ⋄<br />
WSJ<br />
SWB<br />
0 ±1 ±2 ±3 ±4 ±5<br />
Abb. 17.3. Anzahl Polyphone für verschiedene Kontextbreiten<br />
schiedenen Stellen Wortübergänge hatten). Folgende Auffälligkeiten sind zu<br />
bemerken:<br />
• Der größte Anstieg ist beim Übergang von Kontextbreite 0, das heißt ca.<br />
50 Monophone, auf Kontextbreite ±1, das heißt mehrere Zehntausend<br />
Triphone. Selbst beim Übergang von Kontextbreite ±4 auf ±5 ist noch<br />
ein merklicher Anstieg der Polyphonzahl zu beobachten.<br />
• Bei der Switchboard Datenbank kommen mehr verschiedene Polyphone<br />
bei gleicher Kontextbreite vor. Dies ist auf die größere Spontaneität der<br />
darin verwendeten Sprache zurückzuführen. Die sprachlich wesentlich<br />
” sauberere“ Wall Street Journal Daten sind viel uniformer.<br />
⋄<br />
+
296 17. Kontextabhängige akustische Modelle<br />
Auf den ersten Blick hat man den Eindruck, daß es von Vorteil sein<br />
müßte relativ große Kontextbreiten zu berücksichtigen, weil auch für diese<br />
immer noch neue Polyphone dazukommen. Andererseits sollte man auch<br />
berücksichtigen, wieviele Trainingsdaten man für diese zur Verfügung hat.<br />
Abb. 17.4 trägt auf der Ordinaten auf, wie viele Polyphone es gibt, die<br />
in den WSJ-Trainingsdaten x mal beobachtet werden. Auf den ersten<br />
Blick fällt auf, daß die häufigste Beobachtungszahl die 1 ist. Je größer die<br />
Beobachtungszahl ist umso weniger Polyphone gibt es, die so oft vorkommen.<br />
Diese Eigenschaft verschärft sich umso mehr, je breiter der Kontext gewählt<br />
wird. Bei einer Kontextbreite von ±1 gibt es ca. 7400 Polyphone, die nur<br />
ein einziges Mal in den Trainingsdaten vorkommen, bei einer Kontextbreite<br />
von ±5 sind es schon ca. 50000. Bei sehr breiten Kontexten gibt es also sehr<br />
viele Polyphone die zu selten vorkommen, um ausreichend robust modelliert<br />
werden zu können.<br />
Anzahl Polyphone mit gegebener Beobachtungshäufigkeit<br />
100000<br />
△⋆<br />
△⋆<br />
× ×<br />
△⋆<br />
×<br />
△⋆<br />
× △⋆<br />
×<br />
⋆<br />
× ⋆<br />
△△△△△△<br />
⋆<br />
10000<br />
+ + + + +<br />
1000<br />
⋆⋆⋆⋆⋆⋆⋆⋆<br />
⋆⋆⋆<br />
⋆ ×××××××<br />
100<br />
△ ×××<br />
Kontextbreite ±1 + ⋆⋆⋆<br />
△△<br />
Kontextbreite ±2 ×<br />
⋆ △<br />
△△ × ++++++<br />
Kontextbreite ±3 △ ⋆<br />
10<br />
⋆<br />
△×<br />
Kontextbreite ±5 ⋆<br />
△<br />
×<br />
⋆⋆<br />
1<br />
+<br />
×<br />
+<br />
⋆ ×<br />
⋆ △ × +<br />
1 10 100 1000 10000 100000<br />
Anzahl der Beobachtungen in den Trainingsdaten<br />
Abb. 17.4. Wieviele Polyphone gibt es, die x mal vorkommen?<br />
Die große Zahl der verschiedenen kontextabhängigen Modelle schon bei<br />
relativ kleinen Kontextbreiten erzwingt eine Zusammenfassung (Ballung)<br />
derselben in eine wesentlich kleinere und somit handhabbare Zahl an<br />
Modellklassen.<br />
+++
17.2 Ballung von Kontexten<br />
17.2 Ballung von Kontexten 297<br />
Bevor man einen Algorithmus zum Ballen von akustischen Modellen verwendet,<br />
sollte klar sein, was die Ziele der Ballung sind. Es ist selbstverständlich,<br />
daß die in Tab. 17.3 und 17.4 aufgeführten Vorteile optimal ausgeschöpft werden<br />
sollen. Es gilt also einen geeigneten Kompromiß zwischen spezifischen,<br />
räumlich wenig ausgedehnten und generellen, räumlich weit ausgedehnten<br />
Modellen zu finden. Aus den Abb. 17.3 und 17.4 ist zu entnehmen, daß<br />
der beste Kompromiß wohl weit weg von der expliziten Modellierung jedes<br />
einzelnen Phänomens liegen muß. Um nahezu eine Million verschiedener Modelle<br />
sinnvoll zu trainieren, reichen die heute üblichen Trainingsdatenmenge<br />
nicht aus. Es kommt beim Erzeugen von HMMs auf den Trainingsdaten wie<br />
in Abs. 15.3 beschrieben (s. Abb. 15.8) sogar oft vor, daß einige Phänomene<br />
im den Trainingsdaten überhaupt nicht vorkommen, zum Beispiel weil<br />
nicht alle im Lexikon vorgesehenen Varianten auch tatsächlich irgendwann<br />
gesprochen werden, oder weil nicht alle im HMM möglichen verschiedenen<br />
Wortübergangskontexte auch genommen werden. Da es aber nicht<br />
vorhersagbar ist, ob solche Phänomene in den Testdaten dann doch vorkommen<br />
könnten und da das Testvokabular ja sogar vom Trainingsvokabular<br />
abweichen könnte, gehört zu den Zielen eines Ballungsalgorithmus, auch<br />
vorzusehen, für nicht-trainierte Phänomene eine sinnvolle Lösung anzubieten.<br />
17.2.1 Optimierungskriterien<br />
Jeder Ballungsalgorithmus trifft ständig Entscheidungen, welche Modelle<br />
zusammen in eine Klasse gehören und welche nicht. Es ist völlig unrealistisch,<br />
jede dieser Entscheidungen so zu treffen, daß der Effekt auf die<br />
Wortfehlerrate des resultierenden Erkenners minimiert wird. Man wird<br />
daher auf zu optimierende Kriterien zurückgreifen müssen, die sich sehr<br />
schnell während des Ballungsprozesses berechnen lassen. Die am häufigsten<br />
verwendeten Kriterien sind die Maximierung der Beobachtungswahrscheinlichkeit<br />
der Trainingsdaten und die Maximierung des Informationsgehaltes<br />
(negative Entropie) des Parameterraumes. Je nach Art der Berechnung<br />
der Emissionswahrscheinlichkeiten, können diese beiden Kriterien sogar<br />
identisch sein [?].<br />
Die Entropie einer Klasse von Modellen ist definiert durch die Wahrscheinlichkeitsverteilung<br />
f dieser Klasse über dem Merkmalsraum. Wenn<br />
man Gauß-Mischverteilungen zur Berechnung der Emissionswahrscheinlichkeiten<br />
verwendet, so ist die Berechnung der Entropie ein sehr aufwendiges<br />
numerisches Verfahren, das die Integration der Gauß-Verteilungen beinhaltet.<br />
In der Spracherkennung kommen derart komplexe Entropieberechnungen<br />
nicht vor, da entweder als Wahrscheinlichkeitsmodelle entweder nur einzelne
298 17. Kontextabhängige akustische Modelle<br />
Gauß-Verteilungen verwendet werden oder wie bei semikontinuierlichen<br />
HMMs nur die diskreten Mixturgewichteverteilungen. Letztere zu den<br />
häufigen Vorgehensweisen, da vor der Ballung von Modellen in der Regel so<br />
viele verschiedene trainiert werden, daß es gar nicht sinnvoll wäre, für jedes<br />
eine eigene Gauß-Mischverteilung mit eigenem Codebuch zu trainieren. Ein<br />
weiterer Vorteil der Verwendung von semikontinuierlichen Modellen liegt<br />
in der einfachen Vereinigung und Disjunktion von Modellklassen. Während<br />
komplette Gauß-Mischverteilungen für die Vereinigung der Klassen C1<br />
und C2 zu C1 ∪ C2 bei bekannten Einzelmodellen nur mit erheblichem<br />
Aufwand neu berechnet werden können, bedeutet die Vereinigung von<br />
diskreten Verteilungen eine einfache gewichtete Addition: Sei fC1 die<br />
diskrete Mixturgewichteverteilung der Klasse C1 und fC2 die diskrete<br />
Mixturgeweichteverteilung der Klasse C2, beide über demselben Codebuch<br />
definiert. Die Klasse C1 habe in den Trainingsdaten n1 Beispiele (nicht zu<br />
verwechseln mit der Zahl ihrer Elemente) und C2 habe n2 Trainingsbeispiele.<br />
Dann berechnet sich die Mixturgewichteverteilung der vereinigten Klasse<br />
C1 ∪ C2 als:<br />
fC1∪C2(i) = 1/(n1 + n2)(n1 · fC1(i) + n2 · fC2(i)) (17.1)<br />
Wenn sich die Modelle also nur in ihren Mixturgewichten unterscheiden,<br />
genügt es auch, nur diese im Ballungsprozeß zu betrachten. Die Entropie der<br />
diskreten Verteilung (Mixturgewichteverteilung) f ist definiert als:<br />
H(f) =<br />
k<br />
f(i)log 2 f(i) (17.2)<br />
i=1<br />
Haben zwei Modellklassen die Verteilungen fC1 und fC2, dann ist die<br />
einfache Entropiedistanz definiert als:<br />
d(C1, C2) = H(fC1∪C2) − H(fC1) − H(fC2) (17.3)<br />
Die gewichtete Entropiedistanz ist:<br />
d(C1, C2) = (n1 + n2) · H(fC1∪C2) − n1 · H(fC1) − n2H(fC2) (17.4)<br />
Jede Vereinigung zweier Klassen in eine hat einen Informationsverlust<br />
zur Folge. Der Ballungsalgorithmus mit Entropiedistanz sieht also zwei<br />
Verteilungen als ähnlich (also ” vereinigungswürdig“) an, wenn ihre Vereinigung<br />
wenig Informationsverlust bedeuten würde. Ein Ballungsalgorithmus
17.2 Ballung von Kontexten 299<br />
mit Likelihood-Distanz verfolgt das gleiche Ziel, wie das Baum-Welch Trainingsverfahren<br />
für HMMs, nämlich die Maximum-Likelihood Optimierung<br />
der Beobachtungswahrscheinlichkeit aller Trainingsdaten. Die Likelihood-<br />
Distanz zweier Klassen C1 und C2 ist definiert als:<br />
PC1(B1) · PC2(B2)<br />
PC1∪C2(B1 ∪ B2)<br />
(17.5)<br />
wobei PQ(R) die Beobachtungswahrscheinlichkeit der Trainingsdaten R<br />
gemessen mit dem Modell Q ist. Jede Vereinigung zweier Klassen hat eine<br />
Verkleinerung der Beobachtungswahrscheinlichkeit zur Folge. Der Ballungsalgorithmus<br />
mit Likelihood-Distanz sieht also zwei Verteilungen als ähnlich<br />
and, wenn ihre Vereinigung zu einem kleinen Wahrscheinlichkeitsrückgang<br />
führen würde.<br />
17.2.2 Ballungsalgorithmen<br />
Ballungsalgorithmen lassen sich in zwei verschiedene Gruppen einteilen:<br />
agglomerative und divisive. Agglomerative Verfahren beginnen mit vielen<br />
Klassen mir jeweils einzelnen Elementen und vereinigen in jedem Schritt<br />
zwei Klassen zu einer größeren Klasse (s. Abb. 17.5). Divisive Verfahren<br />
beginnen mit einer einzigen Klasse mit allen Elementen und teilen in jedem<br />
Schritt eine Klasse in zwei Unterklassen auf (s. Abb. 17.6).<br />
Abb. 17.5. Agglomerative Ballung
300 17. Kontextabhängige akustische Modelle<br />
Abb. 17.6. Divisive Ballung<br />
Würde man einen Ballungsalgorithmus so lange weiter laufen lassen, bis<br />
keine Schritte mehr möglich sind, dann würde ein agglomerativer so lange<br />
rechnen, bis nur noch eine Klasse vorhanden ist, und ein divisiver so lange bis<br />
jede Klasse nur noch ein Element enthält. Das Ziel ist allerdings ein Zustand<br />
zwischen der minimalen und maximalen Zusammenlegung. So entsteht bei<br />
beiden Arten der Ballung ein Querschnitt durch einen Ballungsbaum (s.<br />
Abb. 17.7).<br />
Abb. 17.7. Blallung ergibt Querschnitt durch Ballungsbaum)<br />
17.2.3 Agglomerative Verfahren<br />
Verfahren der agglomerativen Kontextballung wurden in der kontinuierlichen<br />
Spracherkennung zum ersten Mal erfolgreich von Kai-Fu Lee eingesetzt [?].<br />
Dabei wurden mehrere komplette Triphone in eine Gruppe zusammengelegt.
17.2 Ballung von Kontexten 301<br />
Lee verwendete einen rein semikontinuierlichen HMM-Spracherkenner mit<br />
drei Datenströmen (Cepstren, Delta-Cepstren und Energie). Da jedes Triphon<br />
mit drei HMM-Zuständen modelliert wurde, bestanden die Parameter<br />
einer zu ballenden Einheit s aus neun diskreten Wahrscheinlichkeitsverteilungen<br />
γs,1 . . .γs,9. Als Distanzmaß verwendete Lee die Summe des<br />
Entropieanstiegs, der sich durch das Zusammenlegen zweier Ballungsknoten<br />
q und r zu s ergibt:<br />
D(q, r) =<br />
9 <br />
nq · H(γq,d) + nr · H(γr,d) − ns · H(γs,d) <br />
d=1<br />
(17.6)<br />
wobei ni die Anzahl der Trainingsdaten des Knotens i ist, und H(γ) die<br />
Entropie der Verteilung γ darstellt.<br />
Lees Ballungsalgorithmus sah wie folgt aus: 1<br />
1. initialisiere jeden Ballungsknoten mit einem Triphon<br />
2. berechne paarweise Distanzen zwischen allen Knoten<br />
3. vereinige die beiden Knoten mit der kleinsten Distanz<br />
4. a) berechne für jedes Triphon den Informationsgewinn, der durch<br />
Versetzen desselben in einen anderen Knoten entsteht<br />
b) falls durch Versetzen Gewinn erzielt werden kann, führe die<br />
Versetzung aus und gehe zu 4a<br />
5. solange Endekriterium nicht erfüllt, gehe zu 2<br />
Der Schritt 4 ist nötig, um optimale Leistung zu erzielen. Wird er weggelassen,<br />
fällt die Erkennungsrate des resultierenden Erkenners signifikant ab.<br />
Es ist allerdings genau dieser Schritt, der den Algorithmus sehr aufwendig<br />
macht. Der Schritt 2 ist nur zu Beginn des Algorithmus aufwendig. Später<br />
müssen immer nur die noch nicht berechneten Distanzen berechnet werden,<br />
das heißt die Distanzen zwischen dem gerade neu erzeugten Ballungsknoten<br />
und den anderen Knoten. Im Schritt 4a muß für jedes einzelne Triphon,<br />
das nicht zum neu erzeugten Ballungsknoten gehört, getestet werden, ob es<br />
1 Er unterscheidet sich von dem Standardalgorithmus in [?] im wesentlichen nur<br />
im zusätzlich eingeführten Schritt 4.
302 17. Kontextabhängige akustische Modelle<br />
vorteilhaft wäre, es dorthin zu versetzen. Und für jedes Triphon des neuen<br />
Ballungsknotens muß geprüft werden, ob es vorteilhaft wäre, es in einen<br />
anderen Knoten zu versetzen. Die Anzahl der zu berechnenden Distanzen<br />
wächst also durch den Schritt 4 um ein Vielfaches an.<br />
Der obige Algorithmus kann auch zur Ballung anderer Einheiten als<br />
Triphone verwendet werden. In [?] wird berichtet, daß die Wortfehlerrate<br />
durch die Verwendung von Senones (vgl. Abb. 17.2) statt gesamter Triphone<br />
um ca. 20% reduziert werden konnte.<br />
17.2.4 Divisive Verfahren<br />
Sowohl divisive als auch agglomerative Verfahren haben ihre Nachteile.<br />
Das Problem bei den divisiven Verfahren ist die Frage, auf welche Art die<br />
Modelle eines Knotens in zwei Unterknoten aufgeteilt werden können. Das<br />
könnten schließlich bei einem Knoten mit n Elementen immerhin 2 n mögliche<br />
Aufteilungen sein. Der Nachteil der agglomerativen Verfahren wiegt aber<br />
viel schwerer: nämlich die Vokabularabhängigkeit. Gehen wir beispielsweise<br />
davon aus, daß in den Trainingsdaten die Phonemtripel p1 p0 p2, p3 p0 p4,<br />
p5 p0 p6 und p7 p0 p8 vorkommen und dies alle Kontexte sind, in denen p0<br />
gesehen wird. Durch den Ballungsalgorithmus werden die Tripel p1 p0 p2 und<br />
p3 p0 p4 zu dem verallgemeinerten Modell m1 und die Tripel p5 p0 p6 und<br />
p7 p0 p8 zu dem Modell m2 zusammengelegt (Abb. 17.8).<br />
p1 p0 p2 p3 p0 p4 p5 p0 p6 p7 p0 p8<br />
m1<br />
Abb. 17.8. Agglomerative Ballung kann zu Vokabularabhängigkeit führen<br />
Das heißt, es gibt zwei verschiedenen Modelle, mit denen das Phonem<br />
p0 modelliert werden kann. Je nach Kontext entweder mit m1 oder m2.<br />
In den Testdaten könnten nun Wörter vorkommen, die es im Training<br />
nicht gab, und in einem Wort könnte das Phonem p0 im Kontext p2 p0 p5<br />
auftauchen. Die Fragen, welches der beiden vorhandenen Modelle für diesen<br />
Kontext besser geeignet ist, läßt sich auf Anhieb nicht beantworten. Zur<br />
m2
17.2 Ballung von Kontexten 303<br />
korrekten Beantwortung müßte der gesamte Ballungsvorgang, wiederholt<br />
werden, diesmal aber unter Einschließung von p2 p0 p5. Während des<br />
Trainings war es ja mangels Vorkommens dieses Kontextes und mangels<br />
akustischer Evidenz nicht möglich. Während der Erkennung ist zwar<br />
akustische Evidenz vorhanden, allerdings ist es weder praktikabel, zur<br />
Laufzeit, den Ballungsalgorithmus zu wiederholen noch wäre es berechtigt,<br />
zu erwarten, daß die wenige Evidenz in den Testdaten ausreicht, um ein gutes<br />
Ballungsergebnis zu liefern. Die einzig sinnvolle Vorgehensweise in einem<br />
solchen Fall wäre, für jedes Phonem auch ein kontextunabhängiges Modell<br />
bereitzuhalten und gegebenenfalls dieses zu verwenden. Auf jeden Fall wäre<br />
sowohl die Verwendung eines kontextunabhängigen Modells als auch die<br />
eines ” falschen“ kontextabhängigen keine optimale Lösung. Besser wäre es,<br />
herauszufinden, welches der vorhandenen kontextabhängigen am besten paßt.<br />
Dies kann durch den Einsatz eines divisiven Ballungsalgorithmus erreicht<br />
werden. Statt alle möglichen 2 n Divisionen einer Klasse von n Modellen<br />
zu antizipieren können nur einige wenige berücksichtigt werden. Da also<br />
bei der Ballung in jedem Knoten des Ballungsbaumes eine Entscheidung<br />
getroffen wird, wie der Knoten aufzutrennen ist, spricht man auch von<br />
Kontextentscheidungsbäumen. Sie fallen in den Komplex der allgemeinen<br />
Entscheidungsbäume (classification and regression trees CART). Dabei wird<br />
ein Fragenkatalog verwendet. Jede Frage ist eine ja/nein Frage und für jeden<br />
Kontext in einem aufzutrennenden Knoten wird mit Hilfe einer dem Knoten<br />
eigenen Frage entschieden, in welchen der entstehenden Unterknoten der<br />
Kontext kommen soll.<br />
Typische Fragen bei Kontextentscheidungsbäumen sind Fragen wie:<br />
” Ist das Vorgängerphonem ein Vokal“, oder “Ist das Nachfolgerphonem<br />
ein Frikativ“, aber auch Ist das Phonem selbst stimmhaft“ oder – wie<br />
”<br />
in Tab. 17.5 erwähnt – “Ist das Phonem am Anfang eines Wortes“. Das<br />
Ergebnis einer divisiven Ballung ist in Abb. 17.9 dargestellt. Ganz oben<br />
ist der Startknoten, in dem alle 17 in den Trainingsdaten vorkommenden<br />
Phoneme im Kontext enthalten sind. Diese sind entsprechend der<br />
in verschiedenen Spracherkennungssystemen üblichen Schreibweise als<br />
Phonem(linkerKontext|rechterKontext) angegeben. Die Frage, die in<br />
diesem Beispiel durch den Ballungsalgorithmus dem Startknoten zugeordnet<br />
wurde ist mit −1 = Vokal“ markiert und entspricht der umgangssprach-<br />
”<br />
lichen Formulierung: Ist das Vorgängerphonem ein Vokal“. Diese Frage<br />
”<br />
wird für 13 Kontexte mit ja und für vier Kontexte mit nein beantwortet.<br />
Der Ja-Nachfolgeknoten stellt dann die Frage, ob das Nachfolgephonem<br />
ein Stopplaut ist: +1 =Stopp“. Der Beispielbaum hat schließlich sieben<br />
”<br />
Blätter mit jeweils einem bis vier Kontexten. Wäre das das Ende des<br />
Ballungsprozesses, so würde das akustische Modell des Erkenners sieben<br />
akustische Einheiten haben, deren zeitliche Ausdehnung der eines
304 17. Kontextabhängige akustische Modelle<br />
Phonems entsprechen und deren räumliche Ausdehnung zwischen dem<br />
Raum eines einzelnen Kontextes (O(F|B)) und dem von vier Kontexten<br />
(F(O|M),F(A|M),A(O|M),B(A|M)) liegt – wobei natürlich der tatsächlich<br />
abgedeckte Teil des Merkmalsraums von einem Kontext auch größer sein<br />
könnte als der von vielen Kontexten.<br />
N(O|F) M(A|B) F(A|M)<br />
F(A|B) K(A|B)<br />
B(A|M) O(K|S) F(A|P)<br />
O(A|F) O(F|F) A(O|M) O(F|B) E(K|S)<br />
M(I|B) F(O|M) F(E|N) F(A|N)<br />
-1=Vokal<br />
ja<br />
nein<br />
M(A|B) F(O|M) F(A|B) F(E|N) K(A|B)<br />
B(A|M) O(A|F) F(A|M)<br />
A(O|M) F(A|P) F(A|N) M(I|B) N(O|F)<br />
+1=Stopp<br />
ja<br />
nein<br />
M(A|B) M(I|B) F(O|M) O(A|F) F(E|N)<br />
F(A|P) B(A|M) F(A|N) N(O|F)<br />
F(A|B) K(A|B) A(O|M) F(A|M)<br />
ja<br />
0=stimmlos<br />
ja<br />
+1=labial<br />
nein<br />
F(A|B)<br />
K(A|B)<br />
F(A|P)<br />
M(A|B)<br />
M(I|B)<br />
F(O|M)<br />
F(A|M)<br />
A(O|M)<br />
B(A|M)<br />
Abb. 17.9. Kontextentscheidungsbaum<br />
ja<br />
ja<br />
O(A|F)<br />
F(E|N)<br />
O(A|F)<br />
F(A|N)<br />
E(K|S) O(F|F)<br />
O(K|S) O(F|B)<br />
+1=Frikativ<br />
O(F|F)<br />
O(K|S)<br />
E(K|S)<br />
nein<br />
N(O|F)<br />
F(A|N)<br />
-1=A<br />
O(F|B)<br />
nein<br />
F(E|N)<br />
N(O|F)<br />
Durch die Angabe eines Fragenkatalogs mit k Fragen (typischerweise<br />
werden zwei bis drei Dutzend verschiedener Phonemklassen verwendet<br />
[?] [?]) sind also nicht mehr 2 n sondern nur noch k Aufteilungen eines<br />
Knotens möglich. Der Nachteil, daß dann die womöglich beste Aufteilung<br />
nicht gemacht werden kann, weil für diese keine entsprechende Frage im<br />
Katalog existiert, wird überwogen vom Vorteil, daß kaum noch ” unsinnige“<br />
Auftrennungen erlaubt werden, die eventuell nur wegen eines schlecht<br />
trainierten Modells (Ausreißer) stattfinden würden.<br />
nein
17.2 Ballung von Kontexten 305<br />
Ein divisiver Ballungsalgorithmus kann also im allgemeinen wie folgt<br />
skizziert werden:<br />
1. initialisiere einen Ballungsknoten mit allen zu ballenden Modellen<br />
2. berechne für jeden Blattknoten und jede Frage aus dem Fragenkatalog<br />
den Gewinn einer Auftennung<br />
3. führe von allen Auftrennung die gewinnbringendste aus<br />
4. solange Abbruchkriterium nicht erfüllt, gehe zu 2<br />
Der Gewinn einer Auftrennung in Schritt 2 kann als Gewinn der Beobachtungswahrscheinlichkeit<br />
(Likelihood-Distanz) oder als Informatinsgewinn<br />
(Entropie-Distanz) berechnet werden. Auf jeden Fall ist es wichtig, hier die<br />
gewichtete Distanz (also Gl. 17.4 statt Gl. 17.3) zu verwenden. Bei einer<br />
ungewichteten Distanz kann sich herausstellen, daß eine Auftrennung von n<br />
Modellen in (n − 1) : 1 (sofern es Fragen im Katalog gibt, die dies erlauben)<br />
am gewinnbringendsten ist, nur weil eines der Modelle eine Art Ausreißer<br />
ist. Die Folge wären entartete Kontextentscheidungsbäume mit geringer<br />
Breite und großer Tiefe. Grundsätzlich ist zu beobachten, daß die Gewinne<br />
mit wachsender Tiefe des Baumes abnehmen.<br />
Im Beispiel von Abb. 17.9 werden Kontexte verschiedener Phoneme in<br />
einem Modell zusammengelegt. Dies macht das Beispiel insofern unrealistisch,<br />
als eine gemeinsame Modellierung des Frikativs F und des Vokals O<br />
nicht sinnvoll ist. Sie sind offensichtlich viel mehr verschieden als gleiche<br />
Phoneme in verschiedenen Kontexten. Daher werden in der Spracherkennung<br />
normalerweise mehrere Kontextentscheidungsbäume erzeugt, zum Beispiel<br />
je ein Baum für jedes Phonem (Monophon) oder je ein Baum für jedes<br />
Subphonem. Die Wurzelknoten werden dann nur mit den verschiedenen<br />
Allophonen eines Phonems gefüllt, oder bei noch feinerer Aufteilung nur mit<br />
den gleichen Segmenten (Beginn, Mitte, Ende) der Allophone eines Phonems.<br />
Auf diese Art wird Wissen in den Ballungsalgorithmus gesteckt, das diesem<br />
zum einen die Arbeit erleichetrt, weil dann kleinere Bäume entstehen und<br />
weniger Entscheidungen getroffen werden müssen, zum anderen aber auch<br />
einige Freiheiten nimmt, akustische Phänomene gemeinsam zu modellieren.<br />
Es mag zwar einige Fälle geben, in denen Teile verschiedener Phoneme<br />
sogar sinnvollerweise zusammengelegt werden könnten, zum Beispiel das<br />
Ende des Affrikatsñ(erstes Phonem im Wort ” Zaun“) mit einem Segment<br />
des Frikativs s. Allerdings hat die Praxis gezeigt, daß die seltenen<br />
Fälle, in denen so etwas sinnvoll wäre den zusätzlichen Aufwand nicht lohnen.
306 17. Kontextabhängige akustische Modelle<br />
Es ist grundsätzlich möglich, auch andere Phänomene als (Sub-)Triphone<br />
zu ballen. Im allgemeinen Fall werden Entscheidungsbäume über Mengen<br />
von Subpolyphonen mit beliebieger Kontextbreite berechnet. Bei solchen<br />
Aufgaben kann es vermehrt dazu kommen, daß eine Kontextfrage über<br />
einen vom Zentralphonem weit entfernen Kontext weder mit ja noch mit<br />
nein beantwortet werden kann. Die Frage ” −5 = Vokal“, also ” ist das fünfte<br />
Phonem nach links ein Vokal“, kann für den Kontext A(B,D|N) gar nicht<br />
beantwortet werden, weil dieser Kontext nicht bekannt ist. Theoretisch<br />
müßten als statt binärer Entscheidungsbäume ternäre verwendet werden,<br />
die neben den Antworten ja und nein auch noch die Antwort ” unbekannt“<br />
erlauben. Allerdings gilt auch hier [?], daß der zusätzliche Aufwand und<br />
die zusätzlichen Komplikationen den Gewinn nicht lohnen, und man am<br />
einfachsten solche nicht beantwortbaren Fragen mit nein beantwortet.<br />
In [?] und [?] werden Experimente mit verschiedenen Kontextbreiten<br />
vorgestellt. Die Erkenntnis dabei entspricht im wesentlichen den Erwartungen,<br />
daß der Vorteil einer kontextabhängigen Modellierung mit wachsender<br />
Kontextbreite immer geringer wird. Beim Vergleich der deutschen mit der<br />
englischen Sprache stellt sich sogar heraus, daß im Deutschen noch weniger<br />
Kontext benötigt wird. Während im Englischen Kontexte der Breite ±3<br />
gelegentlich noch leichte Gewinne gegenüber ±2 bringen, ist im Deutschen<br />
schon bei ±2 (Quintphonen) kaum noch ein nennenswerter Unterschied<br />
zu ±1 (Triphonen) festzustellen. Das hängt vor allem von der viel stärker<br />
koartikulierten englischen Sprache ab.<br />
Abb. 17.10 zeigt, wie viele Fragen zu welcher Kontextbreite in einem<br />
Ballungsvorgang [?] mit divisiver Ballung und Entropiedistanz auf dem Wall<br />
Street Journal Korpus gestellt wurden. Zwei Erkenntnisse sind dabei zu<br />
entnehmen: Erstens, Kontexte geringerer Breite sind von größerer Bedeutung,<br />
und werde öfter befragt, und zweitens kommen Fragen zu entfernten<br />
Kontexten erst in sehr tiefen Regionen des Entscheidungsbaumes vor, also<br />
erst dann, wenn die Auftrennungsgewinne schon relativ klein geworden sind.<br />
Die gemeinsame Modellierung verschiedener akustischer Phänomene<br />
kann auf verschiedene Art erfolgen. Wie in Kap. 14 im Zusammenhang<br />
mit verschiedenen Kontinuierlichkeitsgraden schon besprochen, so kann die<br />
Vereinigung der Modelle auf der Ebene der Mixturgewichte oder auf der<br />
Ebene kompletter Mischverteilungen geschehen. In [?] wird die allgemeine<br />
Variante einer mehrstufigen Ballung mit dem JANUS Spracherkenner<br />
[?] vorgestellt. Dort wird in der ersten Stufe eine Zusammenlegung der<br />
Modelle auf der Ebene kompletter Mischverteilungen (Codebücher als<br />
Graustufenmatrizen und Mixturgewichte als Histogramme dargestellt)<br />
durchgeführt, und in der zweiten Stufe eine Zusammenlegung auf der Ebene<br />
der Mixturgewichte. Das Ergebnis des JANUS-Ballungsverfahren ist ein
Anzahl der<br />
Fragen ✻<br />
2000<br />
17.2 Ballung von Kontexten 307<br />
Baumtiefe<br />
✯<br />
Kontext<br />
links ②<br />
-5 -4 -3 -2 -1 0 1/4<br />
+1 +2 +3 +4 ③<br />
+5 Kontext rechts<br />
1/2<br />
3/4 1/1<br />
0<br />
Abb. 17.10. Auswahl der Kontextfragen in Abhängigkeit von der Baumtiefe<br />
Kontextentscheidungsbaum wie in Abb. 17.11 dargestellt. Das Ergebnis<br />
der ersten Phase ist dunkelgrau unterlegt. Die Blätter des Baumes nach<br />
dieser Phase werden alle durch eigene komplette Gauß-Mischverteilungen<br />
modelliert. In der zweiten Phase wird der divisive Ballungsalgorithmus<br />
fortgeführt. Die Codebücher mit den Gauß-Verteilungen bleiben unverändert<br />
erhalten. Am Ende der zweiten Phase werden dann verschiedene<br />
Mixturgewichteverteilungen über den Codebüchern der ersten Phase erzeugt.<br />
Der mehrstufige Ballungsprozeß kann somit wie folgt skizziert werden:
308 17. Kontextabhängige akustische Modelle<br />
B−m(31)(1)<br />
0=B<br />
B−m(30) B−m(31)<br />
B−m(30)(1)<br />
nein<br />
nein<br />
nein<br />
nein<br />
+2=Frikativ<br />
nein<br />
+1=Vokal<br />
Wurzelknoten<br />
(Mittelsegmente)<br />
ja<br />
ja<br />
−3=Stopp<br />
nein<br />
0=A<br />
−1=Vokal<br />
ja<br />
+2=Stille<br />
B−m(31)(3) B−m(31)(4)<br />
ja<br />
ja<br />
B−m(17)<br />
nein<br />
B−m(17)(1)<br />
ja<br />
B−m(31)(2)<br />
+1=Wortende<br />
B−m(17)(2)<br />
Abb. 17.11. Ausschnitt aus mehrstufigem Kontextentscheidungsbaum<br />
1. Phase<br />
ja<br />
2. Phase
17.2 Ballung von Kontexten 309<br />
1. Initialisiere einen Ballungsknoten mit allen n zu ballenden Modellen.<br />
Alle Modelle haben eine eigene Mixturgewichteverteilung über<br />
einem gemeinsamen Codebuch (semikontinuierliche HMMs).<br />
2. Führe divisive Ballung durch bis m Klassen entstanden sind<br />
(Abbruchkriterium).<br />
3. Für jede der m Klassen: trainiere ein eigenes Codebuch (Gauß-<br />
Mischverteilung) und eine eigene Mixturgewichteverteilung.<br />
4. Führe divisive Ballung erneut durch (ausgehend von bisher erzeugtem<br />
Baum und trainierten Mixturgewichten).<br />
Als Abbruchkriterium wird in den meisten Fällen ein auf Erfahrung<br />
basierender Wert für die Zahl der resultierenden Modelle (typischerweise in<br />
der Größenordnung von mehreren tausend bis mehreren zehntausend) verwendet.<br />
Dieser Wert hängt davon ab, wieviel Trainingsdaten zur Verfügung<br />
stehen. Andere mögliche Kriterien beziehen sich auf die Entwicklung der<br />
Entropie- beziehungsweise Likelihood-Distanzen. Der Ballungsprozeß kann<br />
abgebrochen werden, wenn die besten Distanzen unter einen Schwellwert<br />
fallen oder sich nicht mehr nennenswert ändern. Auf jeden Fall wird durch<br />
jede Auftrennung eines Knotens ein echt positiver Gewinn erzielt (abgesehen<br />
von der unrealistischen Auftrennung in zwei völlig gleiche Unterknoten).<br />
Darüber hinaus kann mit Hilfe einer Kreuzvalidierungsmenge ein automatischen<br />
Abbruch der Ballung erreicht, ohne daß zuvor vom Entwickler ein<br />
Endekriterium definiert werden muß.<br />
17.2.5 Laufzeitbetrachtungen<br />
Bei der Verwendung kontextabhängiger Modelle fällt ein Teil des Potentials<br />
für die Einsparung von Laufzeit weg, da im kontextunabhängigen Fall zum<br />
Beispiel für das Wort ” lila“ zu jedem Zeitpunkt nur eine Emissionswahrscheinlichkeit<br />
für beide L-Laute berechnet werden muß. Wenn die L-Laute<br />
kontextabhängig behandelt werden, haben sie – sofern sie nicht in eine Klasse<br />
zusammengefaßt werden – verschiedene Modelle. Ganz deutlich wird dieses<br />
Phänomen, wenn wir einen Erkenner für sehr große Vokabulare betrachten.<br />
Ist er kontextunabhängig und verwendet 50 Monophone zur Modellierung der<br />
Akustik, dann müssen – wenn die Phoneme nicht in Untersegmente aufgeteilt<br />
sind – zu jedem Zeitpunkt nur maximal 50 Emissionswahrscheinlichkeiten berechnet<br />
werden. Wenn der Erkenner aber Triphone verwendet, dann könnten
310 17. Kontextabhängige akustische Modelle<br />
das mehrere Zehntausend verschiedene sein, von denen je nach Einstellung<br />
des Suchalgorithmus fast alle berechnet werden müssen. Dies scheint auf<br />
den ersten Blick ein unter Umständen dramatischer Anstieg des Rechenaufwandes.<br />
Allerdings darf man diese Betrachtung nicht ohne Berücksichtigung<br />
der Möglichkeiten zur Beschneidung des Suchraumes machen. Abb. 17.12<br />
illustriert die Auswirkung der Verwendung von kontextabhängigen Modellen<br />
auf die Verteilung der Emissionswahrscheinlichkeiten. Die Abbildung stellt<br />
Emissionswahrscheinlichkeiten als Graustufen (weiß = niedrig, schwarz =<br />
hoch) dar. Da kontextabhängige Modelle einen kleineren Teil des Merkmalsraumes<br />
einnehmen haben sie eine deutlich größere diskriminative Fähigkeit<br />
und die Verteilung der verschiedenen Wahrscheinlichkeitswerte ist wesentlich<br />
” schärfer“ als für kontextunabhängige Modelle. Die Folge ist, daß es dann<br />
möglich ist, die Parameter des Suchalgorithmus, die die Beschneidung des<br />
Suchraumes festlegen viel aggressiver einzustellen und größere Bereiche des<br />
Suchraumes auszublenden.<br />
kontextabhängig kontextunabhängig<br />
Abb. 17.12. unterschiedlich ” scharfe“ Emissionswahrscheinlichkeitenmatrizen<br />
In der Praxis stellt sich so heraus, daß je nach Qualität der Sprachsignale<br />
und je nach Größe und Komplexität des Erkennervokabulars, mal mehr mal<br />
weniger aber doch in den meisten Fällen die kontextabhängigen Modelle<br />
letztendlich einen geringeren Aufwand haben beziehungsweise bei gleicher<br />
Laufzeit die besseren Erkennungsergebnisse erzielen.
17.2.6 Einbindung von Modalitätenfragen<br />
17.2 Ballung von Kontexten 311<br />
Die Ausprägung eines Lauts hängt natürlich nicht nur vom phonetischen<br />
Kontext ab, sondern auch von zahlreichen anderen Umständen. Am offensichtlichsten<br />
wird dies, wenn wir dasselbe Wort von Personen sprechen<br />
lassen, deren Aussprache von unterschiedlichen Dialekten oder zumindest<br />
Akzenten geprägt wird. Damit ist jetzt nicht eine komplett andere Aussprachevariante<br />
gemeint, die einen eigenen Eintrag im Aussprachelexikon<br />
verdient hätte, sondern die ” gleiche“ Phonemfolge, die sich jedoch anders<br />
anhört, je nachdem aus welcher Gegend der Sprecher kommt. Außer dem<br />
phonetischen Kontext und dem aktuellen Dialekt bzw. Akzent gibt es weitere<br />
so genannte Modalitäten, die die Aussprache beeinflussen. Das Geschlecht<br />
der Sprecherin oder des Sprechers hat erheblichen Einfluß vor allem auf<br />
die Tonlage. Bestimmte Laute verändern sich, wenn besonders schnell oder<br />
besonders langsam gesprochen wird. Selbst Hintergrundrauschen kann sich<br />
auf verschiedene Laute unterschiedlich auswirken, hochenergetische Laute<br />
wie Vokale werden durch Rauschen weniger gestört als niedrigenergetische<br />
wie Konsonanten. Ähnliches kann man auch bei Telefonsprache beobachten.<br />
Der typische Bandpaß eines Telefonkanals stört Laute, die große Anteile an<br />
hohen Frequenzen haben wie Frikative mehr, was man auch daran erkennt,<br />
daß die Laute F und S am Telefon schwer zu unterscheiden sind.<br />
0=stimmlos<br />
K1 K2<br />
+1=Stop<br />
0=Wortende<br />
K3 K4<br />
K5 K6<br />
-1=Vokal<br />
Geschwindigkeit = hoch<br />
+1=B<br />
-1=Frikativ<br />
K9 K10<br />
SNR < 30dB Geschlecht = F<br />
Abb. 17.13. Ballungsbaum mit Modalitätenfragen<br />
K7 K8<br />
Manche dieser Modalitäten sind vollkommen statisch wie zum Beispiel<br />
das Geschlecht oder der Dialekt und lassen sich womöglich vor dem eigentlichen<br />
Erkennungslauf bestimmen. Danach kann das passende akustische<br />
Modell ausgewählt und beibehalten werden. Andere Modalitäten wie Hintergrundrauschen<br />
oder auch die Sprechgeschwindigkeit können wesentlich<br />
dynamischer sein, und sich sogar innerhalb eines Satzes verändern.
312 17. Kontextabhängige akustische Modelle<br />
Verwendet man einen Entscheidungsbaum zum Auswählen der akustischen<br />
Atome in Abhängigkeit vom Kontext, so kann man den Entscheidungsbaum<br />
mit Fragen zu Modalitäten anreichern (s. Abb. 17.13. Gegebenenfalls<br />
muß man dann beim Bestimmen der Atome bis zur Berechnung der Emissionswahrscheinlichkeiten<br />
warten, weil erst dann feststeht, welche Modalitäten<br />
vorliegen, und kann dies nicht schon im voraus beim Aufbau des Suchbaumes<br />
festlegen.<br />
In [?] werden Experimente vorgestellt, in denen gezeigt wird, daß die<br />
Modalitäten Signal-Rausch-Abstand, Dialekt, Geschlecht des Sprechers<br />
und die Sprechgeschwindigkeit alle gewinnbringend in den Kontextentscheidungsbaum<br />
eingebunden werden können. Es gibt verschiedene<br />
Experimente, die zeigen, daß modalitätenspezifische Erkenner (zum Beispiel<br />
geschlechtsspezifische Erkenner in [?]) bessere Erkennungsleistung haben<br />
als ” gemischtmodale“. Dennoch kann man erwarten, daß ein Erkenner mit<br />
Modalitätenfragen gegenüber mehreren speziellen Erkennern Vorteile hat.<br />
Ein spezialisierter Erkenner wird nur mit einem Teil der Trainingsdaten<br />
trainiert und muß somit weniger Parameter haben oder er läuft Gefahr,<br />
diese schlecht zu trainieren. Ein Erkenner mit Modalitätenfragen trennt die<br />
Trainingsdaten nur für diejenigen Phoneme oder Allophone auf, für die dies<br />
hilfreich ist. Auf diese Art können modalitätenspezifische Modelle trainiert<br />
werden, aber dort wo dies keine Vorteile bringt, werden die Parameter mit<br />
allen Trainingsdaten statt nur mit einem Teil trainiert.<br />
Abb. 17.14 zeigt die Einteilung deutscher Dialektregionen in vier Klassen,<br />
wie sie mit Hilfe einer automatischen Ballung [?] gefunden wurden.<br />
Ausgangslage waren 21 deutsche Sprachregionen. Die durch die Ballung<br />
resultierenden vier Dialektklassen wurden als Modalitätenfragen in einem<br />
Experiment auf einer Terminvereinbarungsdatenbank [?] verwendet. Die<br />
Sprecher wurden explizit dazu angehalten Hochdeutsch zu sprechen, dennoch<br />
war die Sprache bei den meisten dialektisch gefärbt. Der Erkenner, der die<br />
Modalitätenfragen zur Herkunft des Sprechers beantworten konnte erzielte<br />
eine Verbesserung der Fehlerrate von 14.5% auf 13.5%.<br />
17.3 Wortübergangskontexte<br />
In einigen Sprachen wie im Englischen und ganz besonders im Französischen<br />
hängt die Aussprache eines Lautes stark von den angrenzenden Wörtern ab.<br />
Dies gilt vor allem für die Laute am Anfang und am Ende eines Wortes,<br />
aber durchaus auch für weiter im Inneren liegende Laute. Bei Aufbau eines<br />
HMM für ein Wort kann dies nicht einfach berücksichtigt werden. Wenn<br />
während der Trainingsphase ein Satz-HMM aufgebaut wird, dann steht die
0000000<br />
1111111<br />
01<br />
0000000<br />
1111111 A0<br />
1 000000<br />
111111<br />
01<br />
000000<br />
111111<br />
0000000<br />
1111111 01<br />
000000<br />
111111<br />
000 111 000000<br />
111111 D<br />
0000000<br />
1111111<br />
B C000000<br />
111111<br />
000 111 000000<br />
111111<br />
000 111 000000<br />
111111<br />
0000000<br />
1111111 000000<br />
111111<br />
000000<br />
111111 01<br />
0000000<br />
1111111 000000<br />
111111 L 01<br />
E<br />
0000000<br />
1111111<br />
00000 11111000000<br />
111111<br />
F 00000 11111<br />
G 00000<br />
11111 000000<br />
111111 N<br />
00000<br />
11111 O<br />
00000 11111 H 00000<br />
11111 000000<br />
111111<br />
M<br />
K00000<br />
11111<br />
00000 11111 00000<br />
11111<br />
I 000000<br />
111111<br />
00000<br />
11111<br />
00000 11111000000<br />
111111<br />
P<br />
00000 11111 J<br />
0000000<br />
1111111<br />
0000000<br />
1111111<br />
0000000<br />
1111111<br />
0000000<br />
1111111<br />
0000000<br />
1111111<br />
0000000<br />
1111111<br />
0000000<br />
1111111<br />
0000000<br />
1111111<br />
0000000<br />
1111111<br />
0000000<br />
1111111<br />
0000000000<br />
1111111111<br />
0000000000<br />
1111111111<br />
0000000000<br />
1111111111<br />
0000000000<br />
1111111111<br />
0000000000<br />
1111111111<br />
0000000000<br />
1111111111<br />
Q R<br />
0000000000<br />
1111111111<br />
0000000000<br />
1111111111<br />
0000000000<br />
1111111111<br />
0000000000<br />
1111111111<br />
S T U<br />
0000000000<br />
1111111111<br />
0000000000<br />
1111111111<br />
0000000000<br />
1111111111<br />
0000000000<br />
1111111111<br />
17.3 Wortübergangskontexte 313<br />
000 111<br />
000 111<br />
000 111<br />
000 111<br />
000 111<br />
000 111<br />
Abb. 17.14. Ballung deutscher Dialektregionen in vier Klassen<br />
A Nordfriesland, B Ostfriesland, C Nordniedersachsen, D Mecklenburg, E<br />
Ostfalen, F Westfalen, G Niederrhein, H Mittelfranken, I Moselfranken, J Pfalz, K<br />
Hessen, L Brandenburg, M Thüringen, N Obersachsen, O Sorbien, P Ostfranken,<br />
Q Südfranken, R Nordbayern, S Niederalemanien, T Schwaben, U Mittelbayern<br />
benötigte Information unmittelbar zur Verfügung. Für die Erkennungsphase<br />
bedeutet aber die Verwendung von Wortübergangskontexten einen erheblichen<br />
Mehraufwand. Wollte man die Akustischen Modelle zur Modellierung<br />
eines Wortes sowohl vom vorausgehenden als auch vom nachfolgenden Wort<br />
abhängig machen müßte man theoretisch statt n Wörter n 3 Worttripel<br />
im Vokabular verwenden. In der Praxis reduziert man den Aufwand aber<br />
dadurch, daß man nur das erste und das letzte Phonem eines Wortes von<br />
den angrenzenden Wörtern abhängig macht, und dies auch noch nur von<br />
dem unmittelbar angrenzenden Phonem, selbst wenn innerhalb der Wörter<br />
breitere Kontexte verwendet werden. Mit diesen Einschränkungen ergibt<br />
sich für den Erkennungsprozeß lediglich ein etwas erhöhter Speicher- und<br />
Rechenaufwand beim Berechnen der Wortübergänge.
18. Effiziente Decodierverfahren<br />
Der größte Unterschied zwischen der Trainings- und der Erkennungsphase<br />
bei Hidden Markov Modellen ist die Art der verwendeten Suche. Für beide<br />
Probleme wird in der Regel der Viterbi-Algorithmus eingesetzt. Während<br />
beim Training die Transkription der Äußerung bekannt ist und so das HMM<br />
selbst mit optionalen Füllwörtern immer noch relativ einfach gestaltet ist,<br />
so enthält das entsprechende HMM für die Erkennung alle Vokabularwörter.<br />
Auch wenn das Erkennungs-HMM nie komplett aufgebaut wird, so bildet<br />
es doch einen riesigen Suchraum, durch den ein Viterbi-Pfad gefunden werden<br />
muß. Beim Entwurf des Viterbi-Algorithmus, ja sogar schon beim einfacheren<br />
DTW-Algorithmus, haben wir Optimierungen zur Zeitersparnis eingeführt.<br />
Möglich wäre es aber trotzdem, mit etwas mehr Zeitaufwand den<br />
Viterbi-Algorithmus ohne Beschneidungen des Suchraums für ein einzelnes<br />
Satz-HMM komplett abzuarbeiten. Bei der Erkennung kontinuierlicher Sprache<br />
mit sehr großen Vokabularen ist das nicht mehr möglich. Dafür ist es mit<br />
heutigen und auf absehbare Zeit verfügbaren Rechnern undenkbar, das komplette<br />
Erkennungs-HMM im Speicher zu halten, und schon gar nicht, dieses<br />
komplett zu durchsuchen. Daher bildet diese Suche in der Spracherkennungsforschung<br />
eine eigene Teildisziplin. Der Teil eines Spracherkenners, in dem<br />
die Suche implementiert ist, wird Decoder genannt.<br />
18.1 Decoderarten<br />
Um am Ende des Erkennungsvorganges eine Wortfolge ausgeben zu können,<br />
muß wie beim DTW die wahrscheinlichste Folge von Zuständen oder etwas<br />
einfacher die wahrscheinlichste Folge von Wörtern ausgegeben werden.<br />
Wenn die exakte Folge der Zustände nicht interessiert, kann der Viterbi-<br />
Algorithmus dahingehend modifiziert werden, daß auf die Berechnung und<br />
Speicherung der Rückwärtszeiger (Gl. 12.13) für Zustände, die nicht letzter<br />
Zustand eines Wortes sind, verzichtet wird.<br />
Wie Abb. 18.1 zeigt, daß es genügt, für jeden Wortendezustand abzuspeichern,<br />
welches Wort das beste Vorgängerwort war. Bei der Expansion eines<br />
Zustands in ein neues Wort kann diese Information erzeugt werden, und bei
316 18. Effiziente Decodierverfahren<br />
Wort i Wort i + 1<br />
Abb. 18.1. Zustandsbezogene und Wortbezogene Rückwärtszeiger<br />
Wort i + 1<br />
Wort i<br />
jeder weiteren Expansion eines In-Wort-Zustandes kann sie durchpropagiert<br />
werden, bis sie schließlich im Wortendezustand gespeichert werden.<br />
D<br />
C<br />
B<br />
A<br />
Abb. 18.2. Rückwärtszeigertabelle für die Wortfolge A C B D
18.1 Decoderarten 317<br />
Eine partielle Hypothese besteht so aus einer Folge von Wortendezuständen<br />
oder Wörtern zusammen mit den Zeitpunkten ihre Anfänge und<br />
Enden (s. Abb. 18.2). Am Ende des Erkennungsprozesses wird unter allen<br />
partiellen Hypothesen die Wahrscheinlichste als die endgültige ausgewählt.<br />
Man kann die Decoder für Spracherkennung in zwei Gruppen unterteilen:<br />
synchrone und asynchrone. Asynchrone Decoder verarbeiten mehrere partielle<br />
Hypothesen, die zu einem Zeitpunkt unterschiedlich lang sein können.<br />
Bei synchronen Decodern sind alle partiellen Hypothesen gleich lang (s.<br />
Abb. 18.3).<br />
synchron asynchron<br />
Abb. 18.3. Synchrone und asynchrone Suche<br />
Sowohl synchrone als auch asynchrone Decoder verwenden die gleiche<br />
Vorgehensweise der Zustandsexpansion und der Definition der kumulativen<br />
Distanz beziehungsweise Wahrscheinlichkeit, wie sie für den Viterbi-<br />
Algorithmus definiert ist. Die Unterschiede liegen in der Bestimmung, welche<br />
Zustände wann expandiert werden und welche Informationen über partielle<br />
Hypothesen gespeichert werden. Beide Suchparadigmen haben ihre Vor- und<br />
Nachteile. Der Typische asynchrone Decoder ist ein sogenannter Stack Decoder<br />
[?]. Er unterhält einen [?] Stapel (engl. stack) oder mehrere [?] Stapel,<br />
auf denen verschiedene Hypothesen abgelegt sind. Das oberste Stapelelement<br />
enthält die wahrscheinlichste partielle Hypothese (die mit der kleinsten<br />
kumulativen Distanz beziehungsweise größten kumulativen Wahrscheinlichkeit).<br />
Die anderen Stapelelemente sind nach absteigender Wahrscheinlichkeit<br />
sortiert. Wenn der Suchalgorithmus immer die wahrscheinlichste Hypothese<br />
vom Stapel nimmt, diese (das heißt ihren letzten Zustand) dann expandiert,<br />
und die resultierenden längeren Hypothesen in den Stapel einfügt so daß die<br />
Sortierung erhalten bleibt, dann ist sichergestellt, daß die erste Hypothese,<br />
die die komplette Aufnahme abdeckt, automatisch die beste ist.<br />
Zu den Vorteilen solcher Stack Decoder gehört der leichte Zugriff auf<br />
komplette Hypothesen. In jedem Stapelelement können Informationen abgespeichert<br />
werden, die sehr weit in die Vergangenheit zurückreichen. Bei einer
318 18. Effiziente Decodierverfahren<br />
reinen Viterbi-Algorithmus kann in einem Zustand der DTW-Matrix derartige<br />
Information nur schwer abgelegt werden, weil ein Zustand gleichzeitig<br />
in vielen verschiedenen Hypothesen enthalten sein kann. Die weitreichende<br />
Information kann dann bei Stack Decodern dafür verwendet werden sehr<br />
hilfreiche Entscheidungen zur Beschneidung des Suchraums zu treffen. Ein<br />
anderer Vorteil ist die leichte Extraktion von n-besten Listen. Wenn mehr<br />
als nur die Wahrscheinlichste Hypothese benötigt wird, dann stehen diese im<br />
Stapel direkt zum Auslesen bereit. Beschneidung des Suchraumes bedeutet<br />
bei Stack Decodern, daß einige Hypothesen aus den Stapel unten heraus<br />
fallen. Die Größe des Stapels ist beschränkt, und so wird dieser schon bei<br />
einem kleinen durchschnittlichen Verzweigungsgrand beim Expandieren von<br />
Hypothesen schnell gefüllt.<br />
In der Praxis werden synchrone Decoder häufiger verwendet als asynchrone.<br />
Dies liegt zum einen an traditionellen Gründen und zum anderen<br />
daran, daß für synchrone Decoder viele effiziente Algorithmen existieren.<br />
18.2 Beschneidung des Suchraumes<br />
Alle Suchalgorithmen in der Spracherkennung für große Vokabulare haben<br />
gemeinsam, daß der Suchraum auf die eine oder andere Art eingeschränkt<br />
werden muß. Dies läuft im Endeffekt immer darauf hinaus, zu entscheiden,<br />
ob die Expansion eines Zustands durchgeführt werden sollte oder nicht.<br />
Beim Verzicht auf eine Expansion kann die Suche Fehler machen. Als<br />
Suchfehler wird der Fall bezeichnet, bei dem die wahrscheinlichste Hypothese<br />
eine geringere Wortfehlerrate hat als die von Algorithmus gefundene.<br />
Auch wenn eine Expansion eine noch so geringe Wahrscheinlichkeit im<br />
Folgezustand hätte, kann in der Regel nicht ausgeschlossen werden, daß<br />
aus dieser partiellen Hypothese am Ende doch die Beste wird. Um solche<br />
Fälle zu minimieren ist es wichtig, richtige Entscheidungen zu treffen. Diese<br />
Entscheidungen müssen nicht nur auf der kumulativen Wahrscheinlichkeit<br />
eines Zustands basieren. Es ist auch sinnvoll ein wenig Vorauszuschauen.<br />
Die sogenannte Lookahead-Technik berechnet sehr schnell eine Vorhersage<br />
über die Entwicklung der kumulativen Wahrscheinlichkeit einer partiellen<br />
Hypothese, indem es zum Beispiel Expansionen mit Hilfe einfacher und somit<br />
schnell zu berechnender Emissionswahrscheinlichkeiten bewertet. Andere<br />
Möglichkeiten der Vorausschau ist die Berechnung von Sprachmodellwahrscheinlichkeiten<br />
der Wörter in die Expandiert werden soll. Natürlich kosten<br />
diese Vorausschauen Zeit, wenn sie aber eine deutlich bessere Beschneidung<br />
des Suchraums ermöglichen, so kann die dadurch gesparte Zeit überwiegen.
18.2 Beschneidung des Suchraumes 319<br />
Man kann die Auswahl der Expansionen nach verschiedenen Kriterien<br />
treffen. Bei synchronen Decodern kann entweder festgelegt werden, wie<br />
viele Zustände maximal zu jedem Zeitpunkt expandiert werden dürfen,<br />
oder welche Mindestwahrscheinlichkeit die Zielzustände haben sollen. Das<br />
Verlangen einer minimalen Wahrscheinlichkeit des Zielzustandes entspricht<br />
genau der Strahlsuche, wie sie in Abs. 11.3.2 definiert wurde. Auch die<br />
Beschränkung der Anzahl der Zustände ist eine Strahlsuche.<br />
Bei der Festlegung der Minimalwahrscheinlichkeit wird in der Regel<br />
die Wahrscheinlichkeit P0 der besten Hypothese als Ausgangspunkt genommen,<br />
und nur solche Zustände Expandiert, deren Wahrscheinlichkeit<br />
mindestens b · P0 beträgt. Die Breite des Suchstrahls wird durch den Faktor<br />
b ∈ [0, 1] bestimmt. Ist er 0, findet keine Suche statt, ist er 1, so findet<br />
keine Suchraumbeschneidung statt. Je kleiner er ist, umso stärker wird der<br />
Suchraum eingeschränkt. Der Vorteil dieser Vorgehensweise ist, daß sich<br />
die Strahlbreite automatisch reguliert. Wenn zu einem Zeitpunkt sehr viele<br />
Zustände eine Wahrscheinlichkeit nahe der besten haben, dann werden<br />
sehr viele Zustände expandiert. Dies ist insbesondere dann der Fall, wenn<br />
das Modell des Spracherkenners keine scharfe Unterscheidung unter den<br />
besten Hypothesen machen kann, wenn es also eine geringe Konfidenz hat.<br />
In solchen Fällen ist es sinnvoll, viele Expansionen durchzuführen, um<br />
die wahrscheinlichste Endhypothese nicht zu verlieren. Wenn der Abstand<br />
der Wahrscheinlichkeit der besten Hypothese zu den nächstbesten groß<br />
ist, also wenn der Erkenner eine hohe Konfidenz hat, dann fallen auch<br />
weniger Zustandswahrscheinlichkeiten in den Bereich [b · P0, P0] und es<br />
werden weniger Zustände expandiert. Problematisch kann dies allerdings<br />
werden, wenn zum Beispiel wegen einer schlechten Signalqualität über einen<br />
Zeitraum hinweg sehr viele Hypothesen nahezu gleich wahrscheinlich sind.<br />
Dann kann es vorkommen, daß so viele Zustände expandiert werden, daß<br />
der Erkennungsprozeß zu langsam wird.<br />
Die Verwendung einer Maximalzahl von ” aktiven“ Zuständen zu jedem<br />
Zeitpunkt hat den Vorteil, daß die Strahlbreite im voraus festgelegt ist. Es<br />
kann nicht passieren, daß die Suche in schlechten Regionen zu langsam wird.<br />
Dafür gibt es hier den Nachteil, daß die wahrscheinlichste Endhypothese<br />
verworfen wird, wenn zeitweise sehr viele partielle Hypothesen eine ähnlich<br />
hohe Wahrscheinlichkeit wie die beste haben.<br />
Daher werden in der Praxis oft beide Beschneidungsmethoden gleichzeitig<br />
angewendet. Die eigentliche Beschneidung findet mit Hilfe einer dynamischen<br />
Strahlbreite b · P0 statt. Eine Begrenzung der Zahl der aktiven Zustände<br />
verhindert aber, daß der Strahl zu breit wird.
320 18. Effiziente Decodierverfahren<br />
Die meisten Spracherkenner verwenden verschiedene Strahlfaktoren b, je<br />
nachdem in welchem Stadium sich der Erkennungsprozeß befindet. So ist es<br />
zum Beispiel sinnvoll für Expansionen an Wortübergängen andere Maßstäbe<br />
zu verwenden, da dort nicht nur die akustischen Wahrscheinlichkeiten sondern<br />
auch die Sprachmodellwahrscheinlichkeiten einfließen. mehrere Abhängige<br />
beams<br />
18.3 Baumdarstellung des Such-HMMs<br />
Die Rechenoperationen, die beim One-Stage-DP Algorithmus durchzuführen<br />
sind, um die Übergänge von Zeitrahmen t zu Zeitrahmen t + 1 zu berechnen,<br />
sind die gleichen für viele Zellen der DP-Matrix. So werden zum<br />
Beispiel für alle Wörter mit gleicher Anfangsphonemfolge innerhalb dieser<br />
übereinstimmenden Präfixe die gleichen Operationen durchgeführt. Es<br />
ist nun naheliegend, diese Operationen nur einmal durchzuführen, was<br />
im Prinzip bedeutet, daß die Menge aller Zustände des Such-HMMs als<br />
Präfix-Baum angeordnet werden. In Abb. 18.4 ist eine Synchrone Suche zu<br />
einem Zeitpunkt dargestellt. Die eingezeichneten Pfade sind drei partielle<br />
Hypothesen. Man kann erkennen, daß vom Anfang der Äußerung bis zum<br />
Zeitpunkt t1 alle Wörter des Vokabulars (HUT, HUF und HOF) völlig<br />
identisch behandelt werden. Zwischen t1 und t2 werden immer noch HUT<br />
und HUF gleich behandelt. Alle Pfade sind bis t1 ” parallel“. Grundsätzlich<br />
werden für die gleich schraffierten Bereichen auch die gleichen Berechnungen<br />
gemacht.<br />
Die einfachste Art, Wörter mit gleichen Anfängen gleich zu behandeln,<br />
ist sie in einem Phonem-Präfix-Baum anzuordnen. Statt einer linearen<br />
Anordnung (Abb. 18.5 links) kann das Such-HMM baumartig angeordnet<br />
werden (Abb. 18.5 rechts). Aus den ursprünglich neun Zuständen für das<br />
Vokabular HUT, HUF und HOF werden dann nur noch sechs zustände. Für<br />
sehr große Vokabular ergibt sich in der Praxis eine ungefähre Einsparung<br />
von zwischen 50% und 70% weniger Zuständen.<br />
Man beachte, daß die beiden Zustände für die F-Laute von HOF und<br />
HUF wegen der verschiedenen Vorgänger nicht gemeinsam modelliert werden<br />
können. Die besten Anfangszustände der F-Laute können zu verschiedenen<br />
Zeitpunkten beginnen und so zu völlig verschiedenen Teilpfaden führen.<br />
Da auch die Baumanordnung des Vokabulars als HMM betrachtet werden<br />
kann, können hier die gleichen auf dem Viterbi basierende Suchalgorithmen<br />
durchgeführt werden. Die Modellachse sieht nach der Transformation auch<br />
anders aus (s. Abb. 18.6).
HUT<br />
HUF<br />
HOF<br />
T<br />
18.3 Baumdarstellung des Such-HMMs 321<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
U01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
H<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
F<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
U01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
H<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
F<br />
O01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
H<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
01<br />
H<br />
t1<br />
HU<br />
HU<br />
Abb. 18.4. Identische Bereiche des Suchraums<br />
H U T<br />
H<br />
H<br />
U F<br />
O F<br />
Abb. 18.5. Lineare und baumartige Anordnung des Suchraumes<br />
T<br />
U<br />
H<br />
F<br />
U<br />
H<br />
F<br />
O<br />
H<br />
Abb. 18.6. Umgestaltung der Modellachse der Suchmatrix<br />
t2<br />
F<br />
T<br />
F<br />
U<br />
O<br />
H<br />
H<br />
U<br />
O<br />
T<br />
F<br />
F
322 18. Effiziente Decodierverfahren<br />
Die tatsächliche Zeitersparnis für den Suchalgorithmus ist in der Praxis<br />
etwas geringer als der Anteil der eingesparten Zustände. Zwar müssen<br />
weniger Zustandsexpansionen berechnet werden, aber bei der Berechnung<br />
der Emissionswahrscheinlichkeiten kann auch schon im linearen Fall mit<br />
Hilfe eines Caches die Mehrfachberechnung derselben Wahrscheinlichkeiten<br />
umgangen werden.<br />
18.3.1 Verzögerte Bigramme<br />
Wenn die Modellachse als Baum dargestellt ist, dann ist es nicht mehr<br />
möglich, beim Übergang aus dem letzten Zustand eines Wortes in das<br />
nächste Wort eine Bigramm-Wahrscheinlichkeit zu verwenden. In Abb. 18.7<br />
ist zu sehen, wie der Übergang aus dem letzten Zustand des Wortes HUT<br />
in den ersten Zustand des Wortes HOF bei linearer Anordnung mit einer<br />
Bigramm Wahrscheinlichkeit versehen werden kann, bei einer baumartigen<br />
Anordnung aber nicht.<br />
P(HOF|HUT) P(?|HUT)<br />
H U T<br />
H<br />
H<br />
U F<br />
O F<br />
Abb. 18.7. Bigrammwahrscheinlichkeit nicht bei Übergang anwendbar<br />
Bei der Baumstruktur steht beim Betreten des Zustands H noch nicht<br />
fest, zu welchem Wort der Zustand einmal gehören wird. Dies ist erst dann sicher,<br />
wenn der letzte Zustand eines Wortes betreten wird. Da aber – wie oben<br />
beschrieben – die Information über das beste Vorgängerwort beim Berechnen<br />
des Viterbi-Algorithmus durchpropagiert wird ist dies auch beim Betreten<br />
des letzten Zustands eines Wortes bekannt. Die Bigrammwahrscheinlichkeit<br />
kann nun an dieser Stelle zur kumulativen Hypothesenwahrscheinlichkeit<br />
dazumultipliziert werden. Dies geschieht zwar spät (daher ” verzögerte<br />
Bigramme“, engl: delayed bigrams) [?], aber immer noch rechtzeigtig, um am<br />
Ende eine völlig korrekte Gesamthypothesenwahrscheinlichkeit zu erhalten.<br />
Dennoch gibt es bei der Verwendung von verzögerten Bigrammen<br />
Probleme. Diese manifestieren sich insbesondere bei der Suchraumbeschneidung.<br />
Wenn Beschneidungsentscheidungen in einem Zustand, der kein<br />
H<br />
U<br />
O<br />
T<br />
F<br />
F
18.4 Sprachmodelle höherer Ordnung 323<br />
Wortendezustand ist, getroffen werden, dann steht weniger Information zur<br />
Verfügung. Möglicherweise wird eine Hypothese verworfen, die, wenn die<br />
Bigrammwahrscheinlichkeit in das aktuelle Wort bekannt wäre, wesentlich<br />
besser bewertet und somit erhalten worden wäre. Umgekehrt kann es<br />
vorkommen, daß die Suche unnötigerweise Zustände expandiert, die bei<br />
Kenntnis der niedrigen Bigrammwahrscheinlichkeit gar nicht erst betreten<br />
worden wären. Der geringer Zeitverlust ist dabei unproblematisch. Wie<br />
schwerwiegender ist die erhöhte Wahrscheinlichkeit für Suchfehler.<br />
18.4 Sprachmodelle höherer Ordnung<br />
An Abb. 15.10 ist zu erkennen, daß ein derartiges Such-HMM bestenfalls<br />
Bigramme als Wortübergangswahrscheinlichkeiten verwenden kann. Wenn<br />
trigramme verwendet werden sollen müßte das HMM wesentlich größer sein<br />
(s. Abb. 18.8).<br />
Das Trigramm-HMM enthält also n Kopien des Bigramm-HMMs aus<br />
Abb. 15.10. Auf die gleiche Art lassen sich auch Kopien von als Baumstruktur<br />
angeordneten HMMs zu einem Trigramm-Modell verbinden. Selbstverständlich<br />
kann für die Erkennung großer Vokabulare ein derartig großes HMM<br />
nicht komplett im Speicher gehalten werden. Daher werden nur die Teile<br />
dynamisch angelegt, die benötigt werden. Wenn ein Zustand expandiert<br />
wird, werden die ihm folgenden Zustände alloziert. Wenn Baumkopien<br />
erzeugt werden, entsteht auch hier wieder die gleiche Problematik wie bei<br />
den verzögerten Bigrammen.<br />
Eine Alternative selbst bei Bigramm-HMMs trotzdem Trigramm-<br />
Informationen zu verwenden sind sogenannte ” poor man’s trigrams“. Dabei<br />
wird für jeden Zeitpunkt t das Wort ˆw(t) gemerkt, das den wahrscheinlichsten<br />
Endzustand hat. Wenn dann ein Wortübergang von w1 nach w2<br />
stattfindet, und der Viterbi-Rückwärtszeiger von Wort w1 auf den Zeitpunkt<br />
t zeigt, so wird unabhängig davon, welches das beste Vorgängerwort von w1<br />
ist, als Übergangswahrscheinlichkeit P3(w2| ˆw(t), w1) verwendet.<br />
Statt umständliche Baumkopien zu machen, ist es auch möglich in den<br />
einzelnen Baumknoten mehrere Historien (Linguistische Kontexte) zu speichern,<br />
die dann bei der Expansion gegebenenfalls in den Nachfolgezustand<br />
” mitgenommen“ werden [?].
324 18. Effiziente Decodierverfahren<br />
Wort 1<br />
Wort 2<br />
Wort n<br />
Wort 1<br />
Wort 2<br />
Wort n<br />
Wort 1<br />
Wort 2<br />
Wort n<br />
. . .<br />
. . .<br />
. . .<br />
Abb. 18.8. Such-HMM für Trigramm-Sprachmodelle<br />
18.5 Suche ohne Sprachmodell<br />
.<br />
.<br />
.<br />
Wenn man die Erkenntnisse aus der Verwendung von Trigrammen und<br />
Bigrammen extrapoliert, so mußte man zum Schluß kommen, daß der<br />
komplette Verzicht auf ein Sprachmodell die Information zum Beschneiden<br />
des Suchraums derart minimiert, daß die Suche wesentlich länger dauern<br />
muß als mit irgend ein Sprachmodell. Genau das Gegenteil ist der Fall. In<br />
Abb. 18.9 ist der Übergang vom Zeitpunkt t zum Zeitpunkt t + 1 links ohne<br />
und rechts mit Sprachmodell dargestellt. Wenn kein Sprachmodell verwendet<br />
wird ist der beste Vorgängerzustand für alle Wortanfangszustände zum<br />
Zeitpunkt t+1 derselbe. In der Abbildung hat der Endzustand des Wortes D<br />
die kleinste kumulative Distanz. Das heißt aber, daß zum Zeitpunkt t auf die<br />
Expansion aller anderen Wortenden verzichtet werden kann. Es müssen also<br />
(abgesehen von eventuellen Suchraumbeschneidungen) zu jedem Zeitpunkt<br />
nur n (= Vokabulargröße) Wortübergänge hypothetisiert werden. Wird<br />
n 2<br />
n 2<br />
. . .<br />
n 2<br />
. . .<br />
. . .
18.6 Längenmodellierung 325<br />
ein Sprachmodell verwendet, müssen n 2 Übergänge genommen werden, da<br />
zum Zeitpunkt t noch nicht bekannt ist, welche Wortendezustände später<br />
inklusive der Sprachmodellwahrscheinlichkeiten als beste Vorgänger der<br />
Wortanfangszustände zum Zeitpunkt t + 1 sein werden.<br />
1715<br />
D D<br />
C<br />
B<br />
A<br />
991<br />
722<br />
1715<br />
991<br />
722<br />
1234 1234<br />
t − 1 t t + 1 t − 1 t t + 1<br />
Abb. 18.9. Expansionder Wortendezustände ohne/mit Sprachmodellk<br />
18.6 Längenmodellierung<br />
Betrachten wir den Viterbi-Pfad, wie er in Abb. 18.10 dargestellt ist. Hier<br />
wurde das Wort ” Apfel“ erkannt. Die Hypothese geht davon aus, daß die<br />
ersten drei Zeiteinheiten der A-Laut gesprochen wurde, dann elf Zeiteinheiten<br />
lang ein P-Laut, um schließlich die verbleibenden drei Laute in je einem<br />
Zustand abzuarbeiten. Ein derartiger Pfad ist aus phonetischer Sicht äußerst<br />
unwahrscheinlich. Das P ist ein Plosivlaut, der in der Regel sehr kurz ist, auf<br />
jeden Fall ist er meist wesentlich kürzer als typische Vokale. Das Problem,<br />
das den abgebildeten Pfad verursachen kann ist zum Beispiel ein gestörtes<br />
Sprachsignal. Da P-Laute sehr wenig Energie haben, unterscheiden sie sich<br />
kaum von Stillelauten. Vielleicht war das Signal im Bereich der zweiten Hälfte<br />
des Wortes gestört, oder es wurde sehr langsam gesprochen. Woran könnte<br />
ein Spracherkenner feststellen, daß ein derartiger Pfad sehr unwahrscheinlich<br />
ist?<br />
C<br />
B<br />
A
326 18. Effiziente Decodierverfahren<br />
L<br />
E<br />
F<br />
P<br />
A<br />
Abb. 18.10. Ein aus phonetischer Sicht sehr unwahrscheinlicher Pfad<br />
Die Faktoren, die die ” Aufenthaltsdauer“ einer Hypothese in einer<br />
Spracheinheit (zum Beispiel einem HMM-Zustand) beeinflussen, sind die<br />
Übergangswahrscheinlichkeiten und in noch größerem Maße die Emissionswahrscheinlichkeiten.<br />
Ignoriert man den Einfluß der Emissionswahrscheinlichkeiten<br />
und ist p die Wahrscheinlichkeit für einen Übergang aus einem<br />
HMM-Zustand zu sich selbst, dann verhält sich die Wahrscheinlichkeit für eine<br />
Aufenthaltsdauer von t Zeittakten exponentialverteilt gemäß (1 − p)p t−1 .<br />
Zweifellos reflektiert dies nicht in den meisten Fällen nicht die tatsächliche<br />
Verteilung. Eine explizite Längenmodellierung kann allerdings realisiert werden,<br />
indem für jede zu modellierende Spracheinheit (Zustand, Phonem, Wort)<br />
ein Längenhistogramm auf den Trainingsdaten geschätzt wird. Beim Expandieren<br />
eines Endzustandes einer Spracheinheit wird dann ein Strafterm zur<br />
kumulativen Wahrscheinlichkeit hinzugerechnet, der sich aus der Verweildauer<br />
und dem entsprechenden Histogrammwert ergibt [?].<br />
18.7 Mehrpaßsuchen<br />
Ähnlich wie es beim Forward-Backward-Algorithmus einen Vorwärtsund<br />
einen Rückwärtsdurchgang gibt, kann diese Idee auch auf die Suche<br />
übertragen werden. Auch wenn wir bei der Suche andere Motive haben,<br />
so gibt es durchaus auch hier gute Gründe mehrere Durchläufe durch die<br />
Aufnahme zu machen. Mitte der neunziger Jahre war es eine Art ” Running<br />
Gag“ bei den alljährlichen SLT-Workshops zu sagen, daß der Erkenner<br />
des Forschungslabors der US-Firma BB&N bei jeder DARPA-Evaluationen<br />
einen Durchgang (engl. pass) mehr als im Jahr davor hatte. Teilweise wurden<br />
Erkenner mit bis zu sechs Durchläufen vorgestellt.<br />
Grundsätzlich gibt es keinen Grund anzunehmen, daß in einem zweiten<br />
Durchgang Informationen gewonnen werden, die nicht auch schon im ersten<br />
Durchgang hätten gewonnen werden können. Die Frage ist nur, wieviel<br />
Aufwand dies macht. Und so kann es sich sehr wohl lohnen, in einem ersten<br />
besonders schnellen Durchlauf Informationen zu sammeln, die zwar nicht<br />
unmittelbar zu einer besseren Hypothese führen, aber mit deren Hilfe es
18.7 Mehrpaßsuchen 327<br />
möglich ist, den Suchraum des zweiten oder der darauffolgenden Durchgänge<br />
so zu beschneiden, daß ein sehr großer Laufzeitgewinn bei fast keinen<br />
Suchfehlern erzielt werden kann. Dies funktioniert natürlich nur, wenn der<br />
zweite Durchlauf aufgrund seines aufwendigen Verfahrens bessere Ergebnisse<br />
liefert als der erste.<br />
Die gleichzeitige Verwendung von als Baumstruktur organisierten Modellachsen<br />
und weitreichender Sprachmodelle ist höchst kompliziert. Schon bei<br />
so einfachen Sprachmodellen wie Bigrammen (s. Abs. 18.3.1) ergeben sich<br />
Schwierigkeiten. Sollen sogar Trigramme oder noch breitere Sprachmodelle<br />
verwendet werden, hat dies zur Folge, daß für Teile der Modellachse Kopien<br />
angefertigt werden müssen (Details dazu gibt es in [?]), was sowohl speicherals<br />
auch zeitaufwendig ist. Insbesondere die Entscheidungen, welche Teile<br />
des Suchraums beschnitten werden sollten, können oft nur mit unzureichender<br />
Information getroffen werden, oder können bei Fehlentscheidungen zu<br />
großen Verlusten in der Erkennungsgenauigkeit führen. Daher bietet es sich<br />
an, eine dramatische Beschneidung des Suchraumes im Voraus auszuführen,<br />
dabei ein einfacheres Suchmodell zu verwenden (z.B. nur Bigramme und kontextunabhängige<br />
akustische Modelle) und dann im zweiten Durchgang das<br />
komplexe Suchmodell (z.B. mit Trigrammen und vielen kontextabhängigen<br />
akustischen Modellen) auf dem beschnittenen Suchraum wesentlich schneller<br />
auszuführen. Man kann also sagen, daß der erste schnelle Durchgang die sehr<br />
Hilfreiche Information zur Beschneidung des Suchraums des zweiten Durchgangs<br />
liefert. Diese Information kann (wie z.B. in [?] in Form einer Matrix<br />
vorliegen, die angibt, welche Wörter zu welchen Zeiten überhaupt in Frage<br />
kommen (s. Abb. 18.11). Das Infragekommen eines Wortes kann darauf basieren,<br />
daß ein Minimum der dem Wort zugehörigen HMM-Zuständen aktiv<br />
sind, d.h. im ersten Durchgang vom Suchalgorithmus besucht werden.<br />
wn<br />
.<br />
w4<br />
w3<br />
w2<br />
w1<br />
Abb. 18.11. Wortaktivitätsmatrix zur Beschneidung des Suchraumes<br />
t
19. Parameterraumoptimierung<br />
Bei der Entwicklung eines HMM-basierten Spracherkenners müssen mehrere<br />
Entwurfsvariablen gefunden und optimiert werden. Entwurfsvariablen, die<br />
den Parameterraum der akustischen Modellierung betreffen, sind zum Beispiel<br />
die Anzahl der akustischen Modelle, die Anzahl der Mixturgewichteverteilungen<br />
und der Codebücher, der Kopplungsgrad der Kovarianzmatrizen,<br />
die Breite der modellierten Kontexte, die Anzahl der Zustände eines HMMs<br />
für die verwendeten Spracheinheiten, sowie deren Topologien. Weitere einzustellende<br />
Variablen sind die Größe der Codebücher, das heißt die Anzahl der<br />
Referenzvektoren je Codebuch und die Dimensionalität des Merkmalsraumes.<br />
Auch auf dem Gebiet der temporalen Modellierung der HMMs gilt es,<br />
Entwurfsentscheidungen zu treffen und Variablen einzustellen, wie zum<br />
Beispiel die Feinheit und den Kopplungsgrad der Übergangswahrscheinlichkeiten<br />
und eventuell vorhandene Parameter für explizite Längenmodellierung.<br />
Oft ist es sehr aufwendig und ressourcenintensiv, verschiedene mögliche<br />
sinnvolle Werte für die Entwurfsvariablen durch Experimente auszuwerten<br />
und auf diese Art zu optimieren. Teilweise wird in manchen Bereichen<br />
der Spracherkennungsforschung sogar von einer Art schwarzen Magie<br />
gesprochen, wenn Forscher sogenannte ” educated guesses“ (auf Erfahrung<br />
basierte Schätzungen) vornehmen. Nicht selten kann man beobachten, daß<br />
eine nur sehr wenig vom Optimum abweichende Einstellung bestimmter<br />
Architekturvariablen die Fehlerrate des Erkenners enorm erhöht.<br />
Auf Erfahrung basierende Schätzungen sind auch bei den zahlreichen<br />
sogenannten ” fudge factors“ 1 üblich. Dabei handelt es sich um der Theorie<br />
eigentlich widersprechende Parameter, wie z.B. die Werte z und q in Gleichung<br />
16.25. Solche Parameter werden aus verschiedenen Gründen für eine<br />
zufriedenstellende Funktion der Spracherkenner benötigt. Zum einen ist die<br />
getroffene Modellannahme (HMM erster Ordnung, Gauß-Mischverteilungen)<br />
nicht in völliger Übereinstimmung mit der Natur des Sprachproblems, zum<br />
anderen liegen in der Regel nicht so viele Trainingsdaten vor, daß das in der<br />
Statistik oft zitierte Gesetz der großen Zahl wirkt. Im Gegenteil, meistens<br />
1 engl. fudge: schmierige Schokoladencreme
330 19. Parameterraumoptimierung<br />
wird der Parameterraum der Spracherkenner so weit aufgeblasen wie nur<br />
irgendwie trainierbar. Man tendiert eher dazu, ein paar schlecht geschätzte<br />
Parameter zuviel zu verwenden, und notfalls Glättungsmethoden einzusetzen,<br />
als zu wenige Parameter zu verwenden, die dann aber gut geschätzt<br />
werden, denn fehlende Information kann nicht ersetzt werden, während<br />
zuviel Information bei geeigneter Handhabung nicht schädlich sein muß.<br />
Schließlich ist ein weiterer Grund für die Verwendung von ” fudge factors“<br />
die oft inkorrekte Implementierung der mathematischen Grundlagen, bei<br />
der, um Rechenzeit zu sparen, Approximationen vorgenommen werden.<br />
Das Ziel der Spracherkennungsforschung ist es, nicht nur fertige, funktionierende<br />
Produkte zu entwickeln, sondern auch Laien zu ermöglichen,<br />
einen für ihre speziellen Zwecke optimierten Spracherkenner selbst zu<br />
bauen, ohne dabei von ihnen zu verlangen, sich mit den verschiedenen<br />
Entwurfsvariablen auszukennen. Solange nicht abzusehen ist, daß fertige<br />
Spracherkennungsprodukte in jeder Umgebung, mit beliebigen Vokabularen,<br />
mit verschiedenen Sprachen und Dialekten sowie für viele verschiedene<br />
Anwendungsszenarien einwandfrei funktionieren, solange wird es interessant<br />
bleiben, daß Entwicklungsumgebungen existieren, mit denen auch Personen,<br />
die nicht auf dem Gebiet der Spracherkennung arbeiten, funktionierende<br />
Spracherkenner bauen können.<br />
Für die Umsetzung eines Forschungsprototypen in ein fertiges Produkt<br />
ist es deshalb sinnvoll, Methoden zu finden, die es ermöglichen, Entwurfsvariablen<br />
automatisch zu optimieren.<br />
19.1 Parameterarten<br />
Im folgenden gehen wir auf die Rolle verschiedener Parameter von typischen<br />
HMM-basierten Spracherkennern ein. Es ist nicht möglich, hier alle denkbaren<br />
Parameter zu behandeln, so daß vor allem die wichtigsten aufführen,<br />
das heißt diejenigen, die für Erkennungsleistung die größte Bedeutung haben.<br />
19.1.1 Mittelwertsvektoren<br />
Die Mittelwertsvektoren sind die wichtigsten Parameter der akustischen<br />
Modellierung mit Normalverteilungen, in dem Sinne, daß die Erkennungsleistung<br />
von einer optimalen Schätzung der Referenzvektoren erfahrungsgemäß<br />
stärker abhängt als von den Kovarianzmatrizen und den Mixturgewichten. Je<br />
größer die Dimensionalität des Merkmalsraumes ist, desto stärker fällt auch
19.2 Parameterkopplung 331<br />
der Einfluß der Referenzvektoren aus, da der durchschnittliche euklidische<br />
Abstand zweier Punkte im Einheitswürfel mit der Wurzel der Dimension<br />
wächst. Der durchschnittliche Wert eines Mixturgewichtes ist aber stets<br />
1/ns, unabhängig von der Dimension.<br />
19.1.2 Kovarianzmatrizen<br />
Lange Zeit wurde der JANUS-Spracherkenner ganz ohne trainierte Kovarianzmatrizen<br />
betrieben, das heißt, als Kovarianzmatrizen wurde stets die<br />
Einheitsmatrix angenommen. Wenn die restlichen Parameter unter dieser<br />
Annahme trainiert werden, so steigt die Fehlerrate des Erkenners um ca.<br />
10% bis 20% gegenüber einem Erkenner, der diagonale Kovarianzmatrizen<br />
verwendet. Auf die Verwendung von vollen Kovarianzmatrizen wurde im<br />
JANUS-Erkenner stets verzichtet, da der Zuwachs des Parameterraumes<br />
und der zusätzliche wesentliche erhöhte Rechenaufwand bei der Berechnung<br />
der Emissionswahrscheinlichkeiten in unerträgliche, nicht mehr handhabbare<br />
Größenordnungen steigt.<br />
Erstmals wurden im JANUS-Erkenner radiale Kovarianzmatrizen erfolgreich<br />
eingesetzt (siehe Abschnitt 19.4.1). Diese reduzieren die benötigten<br />
Kovarianz-Parameter um den Faktor der Dimensionalität des Merkmalsraumes,<br />
ohne daß dabei die Erkennungsrate zu sehr leiden muß.<br />
19.1.3 Mixturgewichte<br />
Typische Werte einzelner Normalverteilungen, wie sie in dieser Arbeit<br />
verwendet wurden, liegen im Bereich zwischen 10 −30 und 10 −10 mit einer<br />
entsprechend großen Varianz. Gleichzeitig schwanken die Mixturgewichte nur<br />
typischerweise zwischen 10 −5 und 10 0 . Im Hinblick auf diese Werte verwundert<br />
es nicht, daß die gemessenen Fehlerraten nur um wenige Prozentpunkte<br />
steigen, wenn alle Mixturgewichteverteilungen durch Gleichverteilungen<br />
ersetzt werden. Eine zufällige Initialisierung der Referenzvektoren dagegen<br />
würde den Erkenner total funktionsunfähig machen.<br />
19.2 Parameterkopplung<br />
Neben den Kopplungsmethoden, die durch den Kontinuierlichkeitsgrad des<br />
verwendeten HMMs vorgegeben sind, sind auch andere Parameterkopplungen<br />
von Interesse:
332 19. Parameterraumoptimierung<br />
19.2.1 Kopplung von<br />
Zustandsübergangswahrscheinlichkeiten<br />
Eine korrekte Schätzung der Zustandsübergangswahrscheinlichkeiten hat<br />
sich in den letzten Jahren als eher weniger bedeutend herausgestellt. Der<br />
Hauptzweck dieser Parameter ist – neben der Definition der erlaubten<br />
Zustandsfolgen – die Modellierung der Aufenthaltsdauern in den einzelnen<br />
Zuständen. Im folgenden seien die drei wesentlichen Gründe für die geringe<br />
Bedeutung dieser Parameter aufgeführt:<br />
Inkompatibilität zwischen Dichtewerten und Wahrscheinlichkeiten<br />
Während die Zustandsübergangswahrscheinlichkeiten echte Wahrscheinlichkeiten<br />
sind, müssen sie während der Berechnung eines Viterbi- oder<br />
Forward-Backward-Pfades mit den Dichtewerten der Emissionswahrscheinlichkeiten<br />
multipliziert werden. Da erfahrungsgemäß die Varianz der<br />
Dichtewerte einer hochdimensionalen Normalverteilung viel größer ist als<br />
die Varianz der echten Wahrscheinlichkeiten, werden alle Entscheidungen<br />
während des Viterbi- oder Forward-Backward-Algorithmus von den<br />
Emissionswahrscheinlichkeiten dominiert. Der Einfluß der Zustandsübergangswahrscheinlichkeiten<br />
kann vernachlässigt werden.<br />
Längenmodellierung durch die Emissionswahrscheinlichkeiten<br />
Da fast alle Spitzenspracherkenner sehr einfache HMM-Topologien verwenden,<br />
bei denen drei bis sechs linear angeordnete Zustände verwendet werden,<br />
wird die Aufenthaltsdauer in einem HMM-Zustand im wesentlichen von der<br />
Paßgenauigkeit der akustischen Modelle gesteuert. Ob ein Zustand verlassen<br />
und der Nachfolgezustand betreten werden sollte, kann ausreichend sicher<br />
nur mit Hilfe des akustischen Modells entschieden werden.<br />
Explizite Längenmodellierung<br />
Durch die Verwendung von Zustandsübergangswahrscheinlichkeiten können<br />
nur sehr eingeschränkte Wahrscheinlichkeitsverteilungen über die Aufenthaltsdauern<br />
in einzelnen Zuständen realisiert werden. Wenn die<br />
Wahrscheinlichkeit dafür, daß ein Zustand sein eigener Nachfolgezustand ist,<br />
p beträgt, dann berechnet sich die Wahrscheinlichkeit für einen Aufenthalt<br />
eines Viterbi-Pfades von t Zeiteinheiten als p t−1 · (1 − p). Es handelt sich<br />
also um eine einfache Exponentialverteilung. Durch geschicktes Anordnen<br />
mehrerer Zustände, die dasselbe akustische Modell verwenden, läßt sich zwar<br />
auch jede beliebige kompliziertere Verteilung approximieren, jedoch lohnt<br />
sich dieser Aufwand nicht. Stattdessen bietet sich eher an, eine explizite
19.2 Parameterkopplung 333<br />
Längenmodellierung einzusetzen. Dabei wird für jeden HMM-Zustand, bzw.<br />
für jede Äquivalenzklasse von Zuständen oder Zustandsfolgen, eine diskrete<br />
Wahrscheinlichkeitsverteilung von Aufenthaltslängen geschätzt. Nach Verlassen<br />
eines Zustandes oder einer Zustandsfolge wird dann die bis dahin<br />
akkumulierte Pfadwahrscheinlichkeit mit der Längenwahrscheinlichkeit<br />
verrechnet.<br />
Einschränkungen der Parameterkopplung<br />
In der Regel wird man nicht erlauben, daß jeder Parameter mit jedem<br />
anderen seiner Sorte gekoppelt werden kann. Das ist zum einen der Fall, weil<br />
die Parameter trotz Gleichartigkeit völlig verschiedene Bereiche des Parameterraumes<br />
belegen. So wird man eher davon absehen, die Kovarianzmatrizen<br />
aus einem Codebuch des Phonems G mit den Kovarianzmatrizen des<br />
Phonems S zu koppeln. Man wird also unter Einsatz von Wissen bestimmte<br />
Arten der Kopplung ausschließen. Ein weiterer Grund für die Einschränkung<br />
der möglichen Kopplungen ist die Vermeidung einer kombinatorischen<br />
Explosion. Es ist zum Beispiel mit der Leistung der heutigen Workstations<br />
ausgeschlossen, alle möglichen Kopplungen von 700 000 Subpolyphonen –<br />
ein nicht untypischer Wert – zu erlauben. Schon zu Beginn müßten ca. 245<br />
Milliarden Distanzen berechnet werden.<br />
Typische Einschränkungen für die Parameterkopplung werden so vorgenommen,<br />
daß keine Kopplungen über Phoneme hinweg erlaubt sind. Das<br />
heißt, es können keine Parameter eines Phonems mit denen eines anderen<br />
Phonems gekoppelt werden. Bei der Verwendung von subphonetischen<br />
Spracheinheiten, vermeidet man meist sogar die Kopplung von Parametern<br />
desselben Phonems, wenn sie zu verschiedenen Untereinheiten gehören.<br />
19.2.2 Arten der Parameterkopplung<br />
Kopplung durch A-priori-Wissen<br />
Verschiedene gleichartige Parameter können auf verschiedene Arten gekoppelt<br />
werden. Ebenso wie Einschränkungen der möglichen Kopplungen<br />
durch A-priori-Wissen vorgenommen werden, werden auch einfach wissensbasiert<br />
bestimmte Parameter gekoppelt, ohne daß eine mathematische<br />
Untersuchung der Sinnhaftigkeit durchgeführt wird. So verwendet man<br />
keine kontextabhängigen akustischen Modelle für Stille oder für bestimmte
334 19. Parameterraumoptimierung<br />
Geräusche. Man nimmt einfach a priori an, daß die akustische Erscheinung<br />
der Stille nicht von den davor oder danach gesprochenen Worten abhängt.<br />
Als weiteres Beispiel des Einsatzes von A-priori-Wissen kann man die<br />
Zustandsübergangswahrscheinlichkeiten ansehen. Im JANUS-Erkenner<br />
werden diese für alle artikulatorischen akustischen Modelle einfach einmalig<br />
festgesetzt und dann nicht mehr verändert.<br />
Kopplung über den Kontext<br />
In die Entscheidung, ob zwei akustische Modelle gekoppelt werden sollen,<br />
kann auch Kontextinformation einfließen. Zwei Modelle können sich ihre<br />
gesamten akustischen Parameter teilen, wenn sie das gleiche Phonem<br />
oder Subphonem in verschiedenen aber bezüglich eines Maßes ähnlichen<br />
Kontexten modellieren. So bietet es sich an, Phoneme, deren zwei oder drei<br />
rechte und linke Nachbarn gleich sind, aber der weiter entfernte Kontext sich<br />
unterscheidet, gemeinsam zu modellieren, in der Erwartung, daß durch die<br />
verschieden weiten Kontexte der Unterschied der Akustik unbedeutend ist.<br />
Datengetriebene Kopplung<br />
Der statistisch korrekteste Weg ist die datengetriebene Kopplung. Dabei<br />
wird ein Distanzmaß zwischen verschiedenen Parametern oder Parametermengen<br />
definiert. Diejenigen Parametermengen, die eine sehr kleine Distanz<br />
haben, werden gemeinsam modelliert. Wenn die Parametermengen einzelnen<br />
akustischen Modellen entsprechen, spricht man von einer Ballung dieser<br />
Modelle. Modellballung wird in fast allen leistungsfähigen Spracherkennern<br />
eingesetzt. In der Regel handelt es sich dabei um eine hierarchische Ballung,<br />
meist unter Verwendung von Entscheidungsbäumen.<br />
19.3 Architekturentwurf<br />
Während für die Suche der besten Parameter eines gegebenen parametrischen<br />
Modells etablierte und gut verstandene Algorithmen (z.B. Maximum<br />
Likelihood) existieren, gibt es keine Möglichkeit, uniform zu berechnen, welches<br />
parametrische Modell das beste ist. Man beschränkt sich daher darauf,<br />
zwischen zwei (oder mehr) verschiedenen Modellen dasjenige auszuwählen,<br />
das gemäß eines festgelegten Kriteriums das bessere ist. Für die Einstellung<br />
der Architekturvariablen bedeutet das, daß zum Beispiel an einem gegebenen<br />
System unter verschiedenen möglichen Modifikationen diejenige tatsächlich<br />
vorzunehmen ist, der die größte Gewinnerwartung zugeordnet wird.
19.3 Architekturentwurf 335<br />
Als Kriterien zur Bewertung einer Architekturmodifikation dienen<br />
in der Regel Maße, die basierend auf der Gesamtwahrscheinlichkeit der<br />
Trainingsdaten diejenige Architektur bevorzugen, für die die Gesamtwahrscheinlichkeit<br />
aller Trainingsdaten größer ist. Im folgenden werden solche<br />
Verfahren als ” likelihood-basierte“ Architekturoptimierungen bezeichnet.<br />
Andere Bewertungskriterien sind zum Beispiel solche, die andere prinzipiell<br />
wünschenswerte Eigenschaften berücksichtigen, wie den Informationsgewinn<br />
(das heißt den Entropieverlust), der durch eine Architekturmodifikation<br />
entsteht.<br />
Bei allen likelihood-basierten Optimierungsverfahren besteht die Gefahr<br />
der Überanpassung, wenn versucht wird, die Gesamtwahrscheinlichkeit aller<br />
Trainingsdaten zu optimieren, weil dabei nicht berücksichtigt wird, wie sich<br />
die Architekturmodifikation auf andere, nicht zur Trainingsmenge gehörende<br />
Daten auswirkt.<br />
Das Problem der Überanpassung ist auch bekannt aus der Theorie der<br />
künstlichen neuronalen Netze. Dort beobachtet man den Effekt, wenn ein<br />
neuronales Netz zu viele Epochen auf den Trainingsdaten trainiert wird.<br />
Wenn die Zahl der Parameter des Netzes ausreicht, so fängt es irgendwann<br />
an, die Trainingsdaten ” auswendig“ zu lernen, statt zu lernen, was deren<br />
Struktur ist. Für ungesehene Testdaten wird das im Netz gespeicherte<br />
Weltmodell ab diesem Zeitpunkt immer schlechter. Das Netz verliert an<br />
Generalisierungsfähigkeit. Das Problem wird dadurch gelöst, daß mit Hilfe<br />
einer Kreuzvalidierungsmenge der Zeitpunkt bestimmt wird, ab dem ein<br />
Leistungsabfall auf den Kreuzvalidierungsdaten eintritt. Diese Menge ist<br />
in der Regel eine Teilmenge der zur Verfügung stehenden Trainingsdaten,<br />
die, nachdem sie bestimmt ist, nicht mehr zum Trainieren verwendet wird.<br />
Sobald der Effekt der Überanpassung einsetzt, wird der Trainingsprozeß<br />
abgebrochen.<br />
Die Idee der Verwendung von Kreuzvalidierungsmengen läßt sich auch<br />
auf likelihood-basierte Optimierungsverfahren anwenden, sowohl um zu<br />
entscheiden, ob ein iterativer Optimierungsprozeß fortgeführt werden soll,<br />
als auch um zu bewerten, wie gut eine Architektur- bzw. Parametermodifikation<br />
ist. Die Bewertung einer Modifikation wird so vorgenommen,<br />
daß die Gesamtwahrscheinlichkeit der Kreuzvalidierungsmenge unter der<br />
Bedingung des modifizierten Systems berechnet wird. Wenn nun mehrere<br />
mögliche Systemmodifikationen antizipiert werden, dann sollte diejenige<br />
ausgeführt werden, die den größten Wahrscheinlichkeitsgewinn verspricht.<br />
Bei einem iterativen Optimierungsverfahren sollte das Verfahren so lange<br />
fortgesetzt werden, bis auf der Kreuzvalidierungsmenge kein Gewinn mehr<br />
festzustellen ist. Man sieht leicht ein, daß ohne eine Kreuzvalidierungsmenge<br />
ein Optimierungsverfahren, das die Zahl der Parameter mit jedem Schritt
336 19. Parameterraumoptimierung<br />
erhöht, auch die Gesamtwahrscheinlichkeit der Trainingsdaten beliebig weit<br />
erhöhen kann, im Extremfall so weit, daß jedes einzelne Trainingsdatum<br />
seinen eigenen Parameter im Parameterraum hat.<br />
Typische Vorgehensweisen beim Architekturentwurf werden selten<br />
veröffentlicht. Bei den obligatorischen Systembeschreibungen der Spracherkenner,<br />
die an den offiziellen internationalen (D)ARPA Evaluationen<br />
teilnehmen, werden die Parameterräume zwar beschrieben, aber man findet<br />
kaum Informationen darüber, warum diese Architektur ausgewählt wurde.<br />
In der Praxis sieht zum Beispiel die Optimierung der Zahl der akustischen<br />
Modelle so aus, daß für eine Reihe verschiedener Werte ein Erkenner trainiert<br />
und danach evaluiert wird. Der am besten arbeitende Erkenner wird<br />
schließlich zum System der Wahl. Oft läßt sich dieses Vorgehen allerdings<br />
automatisieren, so daß die Hauptlast vor allem durch den Rechenzeitbedarf<br />
bestimmt wird.<br />
19.4 Kompaktifizierung<br />
Ein kompakter Parameter hat mehrere Vorteile. Dazu gehören nicht nur<br />
die leichtere Trainierbarkeit sondern auch Aufwandsaspekte. Weniger<br />
Parameter können sowohl den zeitlichen als auch räumlichen Aufwand von<br />
Spracherkenner deutlich senken. Insbesondere im Hinblick darauf, daß in<br />
naher Zukunft die Spracherkennungstechnologie immer mehr in alltägliche<br />
kleine Geräte Einzug finden wird, ist es wichtig, auch mit kleinen Ressourcen<br />
gute Ergebnisse zu erzielen.<br />
19.4.1 Typen von Kovarianzmatrizen<br />
Es gibt verschiedene Gründe anzunehmen, daß die Verwendung von normalen<br />
Kovarianzmatrizen für die Berechnung der HMM Emissionswahrscheinlichkeiten<br />
mit Mixturen von Normalverteilungen nicht die beste denkbare<br />
Lösung ist. Die Gründe dafür sind zum einen praktischer Natur. Die Anzahl<br />
der Parameter einer vollen Kovarianzmatrix für einen d-dimensionalen<br />
Merkmalsraum beträgt d(d + 1)/2, während die Mittelwertevektoren<br />
lediglich jeweils d Parameter haben. Dadurch ergibt sich nicht nur ein<br />
enormer Speicherbedarf, sondern auch das Problem der Trainierbarkeit.<br />
Viele Parameter benötigen auch viele Trainingsdaten, um ausreichend gut<br />
geschätzt werden zu können.<br />
Ein anderer Nachteil voller Kovarianzmatrizen ist der erhöhte Rechenaufwand.<br />
Die Berechnung einer Normalverteilung mit einer Kovarianzmatrix,
19.4 Kompaktifizierung 337<br />
bei der nur die Diagonalelemente ungleich Null sind, kann wesentlich<br />
schneller durchgeführt werden, als wenn alle Matrixelement in die Rechnung<br />
mit einbezogen werden müssen.<br />
Ein weiterer Grund, der für die Verwendung diagonaler Kovarianzmatrizen<br />
spricht, ist die Tatsache, daß viele Dimensionen des Merkmalsraumes in<br />
der Regel gar nicht nennenswert miteinander korreliert sind, insbesondere<br />
dann, wenn Vorverarbeitungsmethoden angewendet werden, die als Seiteneffekt<br />
die Dekorrelation des Merkmalsraumes haben, wie zum Beispiel die<br />
lineare Diskriminanzanalyse (LDA).<br />
Schließlich bleibt noch zu erwähnen, daß zu wenige Trainingsdaten<br />
für volle Kovarianzmatrizen leicht dazu führen können, daß Beinahe-<br />
Singularitäten entstehen, das heißt, daß die Form der Gaußglocke einer<br />
Normalverteilung in einer bestimmten Richtung so spitz ist, daß die berechnete<br />
Wahrscheinlichkeit für Merkmalsvektoren, die in die Mitte der<br />
Gaußglocke fallen, extrem hoch ausfällt, während weiter entfernt liegenden<br />
Vektoren eine extrem niedrige Wahrscheinlichkeit zugewiesen wird. Wenn so<br />
eine beinahe-singuläre Kovarianzmatrix in dem Codebuch eines bestimmten<br />
Modells vorkommt, und ein Merkmalsvektor eines anderen Modells<br />
befindet sich ” zufällig“ innerhalb dieser Beinahe-Singularität, so wird ihm<br />
eine vermutlich wesentlich überhöhte Wahrscheinlichkeit zugewiesen, im<br />
ungünstigen Fall sogar eine wesentlich höhere als diejenige, die ihm vom<br />
Codebuch seines eigenen Modells zugewiesen würde.<br />
Wenn man Viterbi-Pfade analysiert und sich diejenigen genauer ansieht,<br />
die eine verhältnismäßig kleine Gesamtwahrscheinlichkeit haben, dann<br />
findet man oft eine Pfadform, wie sie in Abbildung 19.1 dargestellt ist. Der<br />
durch ausgefüllte Punkte dargestellte Pfad sei der ” korrekte“, bestimmt<br />
zum Beispiel durch einen besseren Erkenner. Der von einem schlechteren<br />
Erkenner gefundene Pfad ist durch die nicht ausgefüllten Markierungen<br />
dargestellt. Der Grund für die Abweichung des schlechten Pfades liegt an<br />
dem mit dem Quadrat markierten Punkt. Man sieht, daß der Pfad davor<br />
sehr steil nach oben steigt, das heißt, er überspringt viele HMM Zustände in<br />
kurzer Zeit, um an dem markierten Punkt anzukommen. Danach bleibt er<br />
lange Zeit im erreichten Zustand, um schließlich wieder mit dem korrekten<br />
Pfad zu verschmelzen. In diesem Fall war die lokale Wahrscheinlichkeit des<br />
quadratisch markierten Punktes so groß, daß dieser unter allen Umständen<br />
in den Pfad mit aufgenommen werden mußte. Wie Überprüfungen in<br />
solchen Fällen ergeben haben, ist oft eine Beinahe-Singularität in einer<br />
Kovarianzmatrix des zugehörigen Modells dafür verantwortlich.<br />
Bei der Verwendung von diagonalen Kovarianzmatrizen sinkt die Wahrscheinlichkeit<br />
des Auftretens von Beinahe-Singularitäten für Modelle mit
338 19. Parameterraumoptimierung<br />
Abb. 19.1. Ein typischer schlechter Viterbi-Pfad<br />
wenigen Trainingsdaten, weil alle kleinen Eigenwerte, deren Eigenvektoren<br />
nicht nahezu parallel zu einer Raumachse liegen, auf alle Achsen verteilt“<br />
”<br />
werden. So ist z.B. die volle Kovarianzmatrix der Menge { 0 1<br />
0 , 1 } singulär,<br />
die diagonale aber nicht.<br />
Aber selbst diagonale Kovarianzmatrizen können mehr Parameter als<br />
nötig enthalten. Oft ist es möglich, ohne signifikante Leistungseinbußen<br />
statt voller oder diagonaler Kovarianzmatrizen einfach die Einheitsmatrix<br />
zu verwenden. Einen Kompromiß zwischen diagonalen Matrizen und der<br />
Einheitsmatrix stellen radiale Matrizen dar, deren Diagonalelemente alle<br />
denselben Wert r haben, wobei die Nichtdiagonalelemente alle Null sind.<br />
Es liegt nun nahe, für verschiedene Codebuchvektoren auch verschiedene<br />
Kovarianzmatrixtypen zu verwenden. Da eine volle Matrix mehr Parameter<br />
hat, ist anzunehmen, daß sie – vorausgesetzt, sie kann hinreichend gut<br />
geschätzt werden – die Daten besser modelliert als eine diagonale. Wenn<br />
also für einen Codebuchvektor sehr viele Trainingsdaten zur Verfügung<br />
stehen, dann kann es vorteilhaft sein, für diesen Vektor eine volle Matrix zu<br />
verwenden. Umgekehrt kann es sinnvoll sein, für einen Vektor, der nur sehr<br />
wenige Trainingsdaten hat, eine Matrix mit wenigen Parametern, z.B. eine<br />
radiale Matrix zu verwenden.
19.4.2 Vereinfachung von Kovarianztypen<br />
19.4 Kompaktifizierung 339<br />
Die Verwendung von diagonalen statt vollen bzw. radialen statt diagonalen<br />
Kovarianzmatrizen führt nicht nur zu einer Verkleinerung des Parameterraumes,<br />
sondern auch zu einer Beschleunigung der Berechnung der<br />
Emissionswahrscheinlichkeiten. Die Mahalanobis-Distanz zwischen x und µ<br />
mit einer vollen Kovarianzmatrix Σ −1 = (1/σi,j) berechnet sich:<br />
M = (x − µ) T Σ −1 (x − µ)<br />
d d<br />
= yi · (yj · 1/σi,j) wobei yi = xi − µi<br />
i=1<br />
j=1<br />
Dabei müssen – vorausgesetzt, die Invertierung von Σ wurde bereits<br />
berechnet – O(d2 ) Multiplikationen und O(d) Additionen und Subtraktionen<br />
durchgeführt werden.<br />
⎛ ⎞<br />
Für eine diagonale Kovarianzmatrix Σ−1 = ⎝ 1/σ1<br />
...<br />
M = (x − µ) T Σ −1 (x − µ)<br />
d<br />
= y 2 i · 1/σi<br />
i=1<br />
1/σd<br />
⎠ ergibt sich:<br />
Hier müssen nur 2d Multiplikationen und O(d) Additionen und Subtraktionen<br />
gerechnet werden.<br />
Bei einer radialen Kovarianzmatrix Σ−1 <br />
1/σ...<br />
= ergibt sich:<br />
1/σ<br />
M = (x − µ) T Σ −1 (x − µ)<br />
d<br />
= 1/σ ·<br />
i=1<br />
y 2 i<br />
also neben O(d) Additionen und Subtraktionen, nur noch d + 1 Multiplikationen.
340 19. Parameterraumoptimierung<br />
Beim Umwandeln von Kovarianzmatrizen eines Typs in einen anderen<br />
sollte stets darauf geachtet werden, daß die resultierende Determinante<br />
gleich der ursprünglichen Determinanten ist.<br />
σ1 <br />
...σd<br />
Wenn eine diagonale Kovarianzmatrix MD = in eine radiale<br />
<br />
σ...σ<br />
<br />
MR = umgewandelt wird, dann wird σ definiert als d<br />
i σi.<br />
Dann gilt |MD| = |MR|. Veranschaulicht bedeutet das, daß der Ellipsoid,<br />
der die einfache Kovarianz um den Mittelwert darstellt, umgewandelt wird<br />
in eine Kugel mit gleichem Volumen.<br />
19.4.3 Selektive Radialisierung<br />
Motivation<br />
Der Begriff Radialisierung bezeichne die Umwandlung von diagonalen Kovarianzmatrizen<br />
in radiale, entsprechend der obigen Definition. Ausgehend<br />
davon, daß Fließkommamultiplikationen den größten Teil des Aufwands zur<br />
Berechnung einer multivariaten Normalverteilung darstellen, lohnt es sich,<br />
deren Anzahl zu minimieren. Die Multiplikation mit den Diagonalwerten der<br />
inversen Kovarianzmatrizen stellen auch ca. ein Drittel aller Fließkommaoperationen.<br />
Das heißt, daß durch Radialisierung im günstigsten Fall eine<br />
Zeitersparnis von etwa 30% erwartet werden kann. In der Praxis fällt diese<br />
Zeitersparnis kleiner aus, da die heutigen Rechnerarchitekturen komplizierte<br />
Fließkommaprozessoren besitzen, die mehrere Operationen gleichzeitig bzw.<br />
im sogenannten ” Pipeline-Modus“ durchführen können, was bedeutet, daß<br />
durch Vermeidung von Rechenschritten vor allem eine geringere Auslastung<br />
der Fließkommaprozessoren, aber nur eine kleine Zeitersparnis erreicht wird.<br />
Es lohnt sich aber auch aus anderen Gründen, so viele Kovarianzmatrizen<br />
wie möglich zu radialisieren. Ein Spracherkenner mit 5 000 Codebüchern<br />
zu je 32 48-dimensionalen Normalverteilungen benötigt für seine insgesamt<br />
160 000 Mittelwertsvektoren 7.68 Millionen Parameter. Die gleiche Menge<br />
wird noch einmal für die zugehörigen diagonalen Kovarianzmatrizen<br />
benötigt. Wenn nun jede Matrix mit einem einzigen statt 48 Parametern<br />
darstellbar ist, dann reduziert sich der Gesamtparameterraum von 15.36<br />
Millionen Parametern um 49% auf nur noch 7.84 Millionen.<br />
Durch die Verwendung von radialen Kovarianzmatrizen geht natürlich<br />
Information verloren. Dafür kann aber angenommen werden, daß zumindest<br />
durch die Radialisierung der weniger gut geschätzten Kovarianzmatrizen
19.4 Kompaktifizierung 341<br />
die Generalisierungsfähigkeit des Erkenners steigt. Während der Informationsgehalt<br />
mit der Anzahl der radialisierten Matrizen sinkt, steigt<br />
die Generalisierungsfähigkeit. Diese beiden auf die Erkennungsleistung<br />
entgegengesetzt wirkenden Einflüsse könnten bei einer bestimmten Zahl von<br />
radialisierten Matrizen eine optimale Erkennungsleistung liefern, die sogar<br />
über der Leistung des unveränderten, nur diagonale Matrizen verwendenden<br />
Erkenners liegt.<br />
Auswirkungen der Radialsierung<br />
Ausgehend von einem Erkenner, dessen Fehlerrate bei 8.8% lag, wurden<br />
in einem Experiment [?] unterschiedliche Mengen an Kovarianzmatrizen<br />
radialisiert. Die Abbildung 19.2 zeigt die Fehlerraten für verschiedene<br />
Kompaktifizierungsgrade. Dabei wurden alle Kovarianzmatrizen der Codebücher<br />
mit den wenigsten Trainingsdaten radialisiert. Man sieht, daß der<br />
Fehler durch geeignete Wahl der zu radialisierenden Matrizen von 8.8%<br />
auf 8.1% reduziert werden kann. Das ist eine relative Fehlerreduktion von<br />
8%. Eine Radialisierung aller Kovarianzmatrizen führt zu einer moderaten<br />
Erhöhung der Fehlerrate um etwa 1%, bei gleichzeitiger Nahezu-Halbierung<br />
des Parameterraumes und einer Einsparung von fast einem Drittel aller<br />
Fließkommaoperationen zur Berechnung der Emissionswahrscheinlichkeiten.<br />
Fehlerrate<br />
9<br />
8.8<br />
8.6<br />
8.4<br />
8.2<br />
8<br />
0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100%<br />
Menge Radialisierter Matrizen<br />
Abb. 19.2. Fehlerrate nach Radialisierung
342 19. Parameterraumoptimierung<br />
19.4.4 Kopplung von Kovarianzparametern<br />
Neben der Verwendung von Kovarianzmatrizen mit wenigen Parametern<br />
bietet sich eine weitere Möglichkeit an, Parameter einzusparen, nämlich die<br />
Kopplung von Kovarianzmatrizen verschiedener Vektoren eines Codebuchs.<br />
Auf den ersten Blick stellt sich natürlich die Frage, weshalb ein Zusammenhang<br />
zwischen den Kovarianzen verschiedener Vektoren bestehen soll. In der<br />
Praxis stellt sich aber heraus, daß es oft gar nicht nötig ist, wirklich für jeden<br />
Vektor eine eigene Matrix zu verwenden. Dadurch, daß mehrere Vektoren<br />
sich eine Matrix teilen, wird diese zwar nicht mehr so spezifisch ausfallen,<br />
ihre Determinante wird wachsen, aber dafür kann sie dann auch zuverlässiger<br />
geschätzt werden und kann eine bessere Generalisierungsfähigkeit besitzen.<br />
Im folgenden werden Experimente [?] vorgestellt, bei denen verschiedene<br />
Grade der Kopplung bis hin zur Nahezuhalbierung aller akustischen Parameter<br />
ausgewertet wurden.<br />
Distanzmaß<br />
Um zu entscheiden, ob eine gemeinsame Modellierung zweier Kovarianzmatrizen<br />
erfolgversprechend ist, wird ein Distanzmaß benötigt, so daß<br />
Matrizen, die sehr verschieden sind, seltener und einander sehr ähnliche<br />
Matrizen öfter zusammengeballt werden. Die hier beschriebenen Ballungsexperimente<br />
wurden alle mit rein diagonalen Kovarianzmatrizen durchgeführt.<br />
Als Distanzmaße wurde die einfache euklidische Distanz verwendet. Sie ist<br />
einfach die euklidische Distanz der als Vektor betrachteten Diagonalelemente.<br />
Ballung der Kovarianzmatrizen<br />
Zur Ballung der Kovarianzmatrizen wurde der folgende einfache agglomerative<br />
Algorithmus verwendet:<br />
1. bestimme für jedes Codebuch s alle Distanzen D(s, i, j) zwischen den<br />
Kovarianzmatrizen Σs(i) und Σs(j)<br />
2. für die n kleinsten Distanzen:<br />
kopple die zugehörigen Kovarianzmatrizen<br />
Dabei wurde die Wirkung des Wertes n auf die Erkennungsleistung<br />
ausgewertet. Da bei der akustischen Modellierung mit Mixturen von multivariaten<br />
Normalverteilungen der Parameterraum im wesentlichen aus den<br />
Mittelwertsvektoren und den Kovarianzmatrizen besteht, nehmen diagonale<br />
Kovarianzmatrizen also etwa die Hälfte der gesamten Parameter ein. Damit<br />
wird die maximal erreichbare Einsparung an Parametern festgelegt.
Tabelle 19.1. Fehlerraten bei Kovarianzballung<br />
19.5 Lose gekoppelte Kovarianzen 343<br />
weniger Matrizen 0 0.625% 1.25% 2.5% 5% 10% 20%<br />
Fehlerrate 8.8% 8.9% 8.9% 8.9% 9.7% 11.2% 20.2%<br />
Man sieht aus Tabelle 19.1, daß durch Ballung von Kovarianzmatrizen<br />
mit euklidischer Distanz keine sinnvolle Kompaktifizierung des Parameterraumes<br />
möglich ist. Schon ab einer Beseitigung von nur 5% der Matrizen<br />
stellt sich eine nicht mehr tolerable Steigerung der Fehlerrate ein. An dieser<br />
Stelle bleibt die Frage offen, ob durch ein anderes Distanzmaß, oder ein<br />
spezielles Nachtrainieren des reduzierten Systems ein besseres Ergebnis<br />
erreichbar ist.<br />
In diesem Kapitel wurde gezeigt, daß es möglich ist, einen bereits<br />
trainierten Erkenner mit großem Parameterraum so zu verkleinern, daß ca.<br />
die Hälfte aller Parameter eingespart werden, ohne daß dies zu Lasten der<br />
Erkennungsleistung geht.<br />
Weniger erfolgreich verliefen Experimente, die zum Ziel hatten, die<br />
Anzahl der Referenzvektoren zu reduzieren. Keines der drei untersuchten<br />
Auswahlkriterien für zu entfernende Vektoren führte zu einer signifikanten<br />
Verkleinerung des Parameterraumes ohne eine gleichzeitige deutliche<br />
Erhöhung der Fehlerrate.<br />
Erfolgreicher war Idee der Radialisierung der Kovarianzmatrizen. Durch<br />
die Radialisierung bleibt die Determinante und somit das Volumen des durch<br />
die Kovarianzmatrix beschriebenen Ellipsoiden unverändert. Allerdings<br />
genügt ein einziger Parameter je Kovarianzmatrix, und die Zeit zur Berechnung<br />
der HMM-Emissionswahrscheinlichkeiten kann zusätzlich reduziert<br />
werden.<br />
19.5 Lose gekoppelte Kovarianzen<br />
Wie bei allen parametrischen Klassifikatoren, so auch bei Gauß-<br />
Mischverteilungen, hängt die Qualität der Parameter von der Menge<br />
der Trainingsdaten ab, mit deren Hilfe sie geschätzt werden. Da für das
344 19. Parameterraumoptimierung<br />
Schätzen voller Kovarianzmatrizen in der Regel nicht ausreichend viele<br />
Trainingsmuster zur Verfügung stehen bietet sich ein Vorgehen an, das in<br />
der Literatur als semitied covariances bezeichnet wird [?]. Hierbei werden<br />
für die Gauß-Mischverteilungen diagonale Kovarianzmatrizen Dj verwendet,<br />
allerdings teilen sich mehrere Gauß-Verteilungen zusätzlich eine gemeinsame<br />
volle Matrix A, so daß die effektive Kovarianzmatrix ADjA ⊤ ist und<br />
der Wahrscheinlichkeitswert für die Beobachtung x im Modell j wie folgt<br />
berechnet wird:<br />
1<br />
<br />
2πd |ADjA⊤ | e−12<br />
(x − µj) ⊤ (ADjA ⊤ ) −1 (x − µj)<br />
(19.1)<br />
Hierbei ist die Kovarianzmatrix σj = ADj, das Produkt einer modellunabhängigen<br />
vollen Matrix A und einer modellabhängigen Diagonalmatrix<br />
Dj. Die Berechnung von Gl. 19.1 kann vereinfacht werden:<br />
1 1<br />
<br />
|A| 2 2πd |Dj| e−12<br />
(x′ − µ ′ j )⊤D −1<br />
j (x′ − µ ′ j )<br />
mit<br />
(19.2)<br />
x ′ = A −1 x und µ ′ = A −1 µ (da A = A ⊤ ) (19.3)<br />
In Gl. 19.2 ist zu erkennen, daß für die Verwendung von semitied covariances<br />
kein besonderer zusätzlicher Rechenaufwand während der Erkennung<br />
nötig ist. Die resultierende Gauß-Verteilung ist verwendet weiterhin eine<br />
diagonale Kovarianzmatrix. Lediglich die Mittelwerte sowie die Vorfaktoren<br />
der Verteilungen müssen angepaßt werden. Die Multiplikation der Beobachtung<br />
x kann unter Umständen mit anderen Linearen Operationen in<br />
der Signalverarbeitung (zum Beispiel LDA, Vokaltraktlängennormierung<br />
oder ähnliche) kombiniert werden. Es ist nicht möglich, diejenige Matrix<br />
A, die die Beobachtungswarhscheinlichkeit aller Trainingsdaten optimiert,<br />
analytisch zu bestimmen. Daher ist wird ein iteratives Verfahren ähnlich<br />
dem Expectation Maximization Algorithmus verwendet.
20. Erkennung von Spezialvokabular<br />
Standard Spracherkenner versagen oft, wenn es darauf ankommt Dinge zu<br />
Erkennen, die in gewöhnlicher vorgelesener Sprache selten vorkommen. Dazu<br />
gehören zum Beispiel Buchstabierungen, bestimmte Eigennamen oder auch<br />
besondere Aussprachen. Diese Probleme lassen sich erleichtern, indem spezielle<br />
Spracherkenner oder Standard Spracherkenner mit speziellen Algorithmen<br />
verwendet werden, die genau auf dieses außergewöhnliche Vokabular<br />
spezialisiert sind. Im folgenden wird eine Auswahl von spezialisierten Erkennungsmethoden<br />
vorgestellt.<br />
20.1 Buchstabiererkennung<br />
Auch wenn in der natürlichen Sprache Buchstabierungen eher selten vorkommen<br />
und ein schlechtes Abschneiden eines Erkenners auf diesen Passagen sich<br />
auf die Gesamtperformanz eher wenig auswirkt, so gehören diese Fehler zu<br />
den unangenehmsten, weil der <strong>Mensch</strong> Buchstabierungen benutzt um entweder<br />
Eigennamen (Abkürzungen) von Firmen, Ereignissen zu referenzieren,<br />
oder um die Orthographie eines Wortes exakt zu definieren. Gerade in diesen<br />
Fällen, in denen es um die korrekte Orthographie geht, ist jeder Fehler ein<br />
Kardinalfehler. Bei einigen Erkennungsaufgaben sind Buchstabierungen fast<br />
immer die geeignetste Art der Informationsübermittlung, zum Beispiel beim<br />
Angeben seiner Adresse oder seines Namens. In Auto-Navigationssystemen<br />
ist Sprache ohnehin die schon aus Sicherheitsgründen vorzuziehende Bedienungsmethode,<br />
allerdings ist es relativ schwierig, Straßennamen aus einem<br />
Katalog von Hunderttausenden zu erkennen. Die Perplexität und die Verwechselbarkeit<br />
sind so hoch, daß ein Ausweichen auf die Buchstabierung die<br />
beste Methode darstellt. Gegebenenfalls kann ein Straßenname sogar als Wort<br />
ausgesprochen werden und zusätzlich buchstabiert werden. Durch dieses Redundanz<br />
wird die Aufgabe für den Erkenner wesentlich erleichtert. In solchen<br />
Fällen kann dann ein regulärer Erkenner für kontinuierliche Sprache verschiedene<br />
Hypothesen für den kontinuierlich gesprochenen Namen produzieren,<br />
unter denen der korrekte Name oft nicht die höchste Wahrscheinlichkeit hat.<br />
Ein zweiter Erkenner, der auf Buchstabiersequenzen spezialisiert ist, kann<br />
die Buchstabierung erkennen und ebenfalls mehrere Hypothesen erzeugen.
346 20. Erkennung von Spezialvokabular<br />
Eine Kombination der beiden Hypothesenlisten sieht im einfachsten Falle so<br />
aus, daß durch einfache Multiplikation der Wahrscheinlichkeiten ” gleicher“<br />
Namenshypothesen eine gemeinsame Hypothesenliste gebildet wird, in der<br />
dann mit höherer Wahrscheinlichkeit die korrekte Hypothese die beste ist (s.<br />
Abb. 20.1).<br />
Kontinuierlicher<br />
Erkenner<br />
Göthestraße<br />
Gothaer Straße<br />
Mörikestraße<br />
Gatterstraße<br />
Geraer Straße<br />
Göttersberg<br />
Krötengraben<br />
.<br />
0.19<br />
0.11<br />
0.09<br />
0.07<br />
0.04<br />
0.02<br />
0.01<br />
Buchstabier-<br />
Erkenner<br />
GERAERST...<br />
GEBERTS...<br />
GATTERS...<br />
GOTHAER...<br />
GOTTLIEB...<br />
GÖTHEST...<br />
GABLERS...<br />
.<br />
0.22<br />
0.10<br />
0.09<br />
0.08<br />
0.07<br />
0.05<br />
Abb. 20.1. Kombination von n-besten Hypothesen<br />
Gemeinsame<br />
n-besten Liste<br />
Gothaer Straße 0.0099<br />
Göthestraße<br />
.<br />
0.0095<br />
Geraer Straße 0.0088<br />
Gatterstraße 0.0063<br />
Gottliebstraße 0.0006<br />
Gartenstraße 0.0003<br />
0.04 Gablerstraße 0.0001<br />
Schon bei der Erkennung einzelner Buchstaben (z.B. der B-D-G-Task)<br />
wurde festgestellt, daß einfache Mustervergleicher mittels dynamischen<br />
Programmierens unter anderem deshalb Probleme haben, weil ein großer<br />
zeitlicher Teil der akustischen Evidenz eines Buchstaben nicht für die<br />
Unterscheidung von den anderen hilfreich ist. So sind die zur Unterscheidung<br />
der Buchstaben B, D und G wichtigen Verschlußlaute, die Phoneme b, d und<br />
g, nur sehr kurz, während die zur Unterscheidung unwichtigen Endungen,<br />
das Phonem esehr viel Raum einnimmt und so viel mehr zum Distanzmaß<br />
beiträgt.<br />
Wenn solche Eigenschaften des zu erkennenden Vokabulars vorher<br />
bekannt sind, kann der Erkenner auch daraufhin optimiert werden. Spezielle<br />
Trainingsmethoden oder Parameterräume können die Erkennungsraten<br />
deutlich verbessern.<br />
Eine wichtige Eigenschaft, die für die Erkennung von Buchstabiersequenzen<br />
erfolgversprechend ist, ist ein diskriminatives Training, wobei sich<br />
die Verwendung der Systemparameter vermehrt auf die Unterscheidung der<br />
Buchstaben konzentriert statt auf die möglichst exakte Modellierung jedes<br />
einzelnen Buchstaben unabhängig von den anderen. Immer wenn es um<br />
diskriminatives Training geht drängt sich die Idee der künstlichen neuronalen
20.1 Buchstabiererkennung 347<br />
Netze auf. In den letzten Jahren wurden immer wieder Methoden entwickelt,<br />
um Standard Modelle, die klassenabhängige Wahrscheinlichkeiten schätzen,<br />
auf diskriminative Art zu trainieren (Korrectives Training Abs. 13.3.1,<br />
Maximum Mutual Information Estimation - MMIE Abs. 13.3.1 und andere).<br />
Bei einem Buchstabiererkenner gibt es im Grunde zwei Vokabulare. Das<br />
eine besteht aus den ca. 30 Buchstabenbezeichnungen (A bis Z, Umlaute,<br />
Strich, Scharf-S, etc.), das andere aus den Wörtern, die Buchstabiert werden<br />
können. Im Prinzip läßt sich ein Erkenner bauen, dessen Vokabular aus nur<br />
den Buchstaben besteht, der aber ein n-Gramm Sprachmodell verwendet,<br />
wobei ” Gramm“ in diesem Fall nicht für ” Wort“ sondern für “Buchstabe“<br />
steht. Ein solcher Erkenner kann dann beliebige Buchstabensequenzen<br />
erkennen, bevorzugt aber diejenigen, die wahrscheinlicher sind. Ganz ohne<br />
Verwendung eines Buchstabensprachmodells wären alle (gleich langen)<br />
Buchstabenfolgen gleich wahrscheinlich. Der negative Effekt auf die Erkennungsrate<br />
wäre vergleichbar mit dem Effekt auf einen kontinuierlichen<br />
Spracherkenner, der kein Sprachmodell verwendet. Beim Buchstabieren stellt<br />
sich jedoch heraus, daß das zu verwendende Sprachmodell mit wachsendem<br />
Namensverzeichnis eine sehr große Kontextbreite (n-Gramme mit n >> 2)<br />
benötigt. Würden nur Bigramme oder Trigramme verwendet, so wäre<br />
deren Einfluß relativ gering. Eine wesentlich stärkere Einschränkung des<br />
Suchraums durch das Sprachmodell läßt sich durch Bauen eines minimalen<br />
Automaten erreichen [?] (s. Abb. 20.2).<br />
M<br />
01<br />
A I<br />
01<br />
Start<br />
I<br />
Y E<br />
L L<br />
N<br />
S K<br />
R<br />
Y<br />
Ende<br />
Abb. 20.2. Endlicher Mealy-Automat zum Buchstabieren von Maier, Mayer, Miller<br />
und Minsky<br />
Würde man alle zu erkennenden Buchstabiersequenzen als einzelne<br />
Wörter betrachten, könnte ein Isoliertworterkenner gebaut werden. Bei<br />
einem sehr großen Vokabular sollte der Zustandsraum kompaktifiziert<br />
werden, zum Beispiel in Form eines phonetischen Präfix-Baumes oder gleich
348 20. Erkennung von Spezialvokabular<br />
als minimierter Automat.<br />
Wenn die Benutzerschnittstelle so gestaltet ist, daß das System weiß,<br />
wann der Sprecher Buchstabierfolgen eingibt, kann ein isoliertes System<br />
mit einem Automaten wie in Abb. 20.2 direkt auf der Aufnahme eingesetzt<br />
werden. Dies wurde zum Beispiel in [?] für eine vollautomatische Telefonauskunft<br />
bzw. Telefonvermittlung mir sehr guter Erkennungsleistung gemacht.<br />
In vielen Anwendungen muß aber damit gerechnet werden, daß neben<br />
den Buchstabiersequenzen auch fließend gesprochene Wörter oder Phrasen<br />
auftreten, zum Beispiel: Mein Name ist Maier, M, A, I, E, R, ich wohne in<br />
”<br />
...“. Für solche Aufgaben genügt ein reiner Buchstabiererkenner nicht. Dann<br />
ist die beste Vorgehensweise eine Hintereinanderausführung von Erkennung<br />
mit einem kontinuierlichen Spracherkenner und einem spezialisierten Buchstabiererkenner<br />
[?]. Der Standard Spracherkenner erkennt dann im obigen<br />
Beispiel womöglich Mein Name ist Maier M ah Ihr R ich wohne in ...“. Mit<br />
”<br />
Hilfe von Konfidenzmaßen und eines Sprachmodells kann die Wortsequenz<br />
” M ah Ihr R“ als wahrscheinliche Buchstabierfolge identifiziert und der<br />
entsprechende Teil aus dem Sprachsignal herausgeschnitten werden, so daß<br />
der spezialisierte Buchstabiererkenner darauf die korrekte Buchstabenfolge<br />
erkennen kann. Ein Vergleich des Buchstabierhypothese mit der Hypothese<br />
des Standarderkenners kann am Ende noch zusätzliche Informationen liefern,<br />
die zur Entscheidung oder Revidierung, daß es sich um Buchstabieren<br />
handelt, verwendet werden können.<br />
20.2 Erkennung beliebiger Namen<br />
Lange Zeit wurde die Forschung auf dem Gebiet der Erkennung unbekannter<br />
Wörter vernachlässigt. Dies geschah vor allem deshalb, weil ein Großteil<br />
der Forschung auf englischer bzw. amerikanisch-englischer Sprache stattfand<br />
und immer noch stattfindet. Aufgrund der sehr wenigen Flexionen und<br />
sehr eingeschränkten Möglichkeiten der Komposition von Wörtern im<br />
Englischen genügen in der Regel wenige hunderttausend Wörter in einem<br />
Erkennervokabular um weit über 99% des Wörter der allermeisten Dokumente<br />
abzudecken. Von den nicht abgedeckten Wörtern sind die meisten<br />
Eigennamen, Abkürzungen oder seltene Symbolfolgen (z.B. Zahlen).<br />
Weil seit den achtziger Jahren fast ausschließlich die Wortfehlerrate als<br />
Maß für die Qualität eines Spracherkenners verwendet wurde, und weil dabei<br />
keine Unterscheidung gemacht wurde, welche Fehler schwerwiegender sind<br />
oder welche Fehler schwerwiegendere Konsequenzen für die nachgeschalteten<br />
Systeme wie Verstehen und Übersetzen haben, wurde auch wenig Energie in<br />
die Erkennung dieser OOV-Wörter investiert. In der Praxis stellt sich aber
20.2 Erkennung beliebiger Namen 349<br />
heraus, daß gerade das Falscherkennen oder Nichterkennen von Eigennamen<br />
zwar selten aber dafür umso ärgerlicher ist. Wenn gelegentlich der Kasus<br />
eines Artikels nicht richtig erkannt wird (dem statt den), so hat das meistens<br />
keine negativen Konsequenzen, der Satz kann immer noch richtig verstanden<br />
und übersetzt werden, die Reaktion des Gesamtsystems fällt immer noch zur<br />
Zufriedenheit des Benutzers aus. Wenn aber ein Eigenname (Person, Ort,<br />
Firma, Ereignis, etc.) falsch erkannt wird, ist ein korrektes Verstehen meist<br />
gar nicht möglich.<br />
Bei der Behandlung von unbekannten Wörtern gibt es zwei wesentliche<br />
Probleme zu lösen: Zum einen muß der Erkenner detektieren, daß an<br />
einer bestimmten Stelle ein unbekanntes Wort wahrscheinlich ist, und zum<br />
anderen muß er dann an dieser Stelle ein Wort hypothetisieren, das nicht in<br />
seinem Vokabular vorhanden ist.<br />
Die Detektion des Vorhandenseins eines Wortes außerhalb des Erkennervokabulars<br />
(OOV-Wort) kann auf unterschiedliche Art geschehen. In der<br />
Regel wird ein Detektor nicht nur eine binäre Entscheidung treffen, sondern<br />
eine bestimmte Wahrscheinlichkeit dafür schätzen, daß an einer Stelle der<br />
Hypothese ein OOV-Wort steht.<br />
Die naheliegendste Methode für solche Schätzungen ist die direkte Verwendung<br />
einer OOV-Sprachmodellklasse. Meist werden beim Berechnen von<br />
Sprachmodellen mit Hilfe großer Textkorpora selten beobachtete Wortfolgen<br />
als sogenanntes Discounting nicht explizit geschätzt. In vielen Fällen werden<br />
nicht nur ganze Wortfolgen, sondern sogar selten vorkommende Wörter –<br />
egal in welchem Kontext – überhaupt nicht modelliert. Wenn diese Wörter<br />
im Trainingstext für das Sprachmodell durch ein spezielles Wort, z.B.<br />
” OOV“, ersetzt werden, und nicht in das Vokabular des Erkenners aufgenommen<br />
werden, dann berechnet das Sprachmodell die Wahrscheinlichkeit,<br />
daß OOV“ an einer bestimmten Stelle auftritt. Diese Wahrscheinlichkeit<br />
”<br />
ist im Grunde schon relativ gut geschätzt, und weitere Informationsquellen<br />
scheinen nicht nötig zu sein, insbesondere wenn man bedenkt, daß bei vielen<br />
Erkennungsaufgaben die Wahrscheinlichkeit, ein OOV-Wort zu beobachten,<br />
sowieso ziemlich klein ist. Weitere Informationsquellen können aus dem akustischen<br />
Modell kommen. Typischerweise würde man erwarten, daß an einer<br />
Stelle der Hypothese, an der die Wahrscheinlichkeiten, die das akustische<br />
Modell für ein Wort liefert, wesentlich höher ist als die Wahrscheinlichkeiten<br />
für alle anderen Wörter, der Erkenner viel sicherer, d.h. konfidenter, ist als<br />
an einer Stelle, an der viele verschiedene Wörter eine Wahrscheinlichkeit<br />
ähnlich der besten Wahrscheinlichkeit haben. An solchen Stellen niedriger<br />
Konfidenz ist eher anzunehmen, daß ein OOV-Wort vorliegt, als an Stellen<br />
hoher Konfidenz.
350 20. Erkennung von Spezialvokabular<br />
Verschiedene Vorgehensweisen wurden untersucht, um nicht nur neue<br />
Wörter zu detektieren, sondern auch um eine sinnvolle Hypothese an ihrer<br />
Stelle auszugeben. In [?] wurde ein generisches Modell Verwendet, das durch<br />
ein großes HMM modelliert wurde, das alle Phoneme und eine gewisse<br />
Phonotaktik in Form bestimmter erlaubter Zustandsübergänge enthielt.<br />
Dieses Neue-Wörter-HMM wurde in der Suche genauso wie alle anderen<br />
Wörter verwendet und konkurrierte mit diesen. In vielen Fällen wurde<br />
das Neue-Wörter-HMM in die Hypothese eingebunden, wenn keines der<br />
Vokabularwörter eine ausreichend hohe Wahrscheinlichkeit hatte. Durch die<br />
relativ Große Freiheit in der Bildung von Phonemfolgen konnte in solchen<br />
Fällen die Wahrscheinlichkeit für irgend eine erlaubte Phonemfolge des<br />
Neue-Wörter-HMMs größer sein als die für jedes Vokabularwort (inklusive<br />
der entsprechenden Sprachmodellwahrscheinlichkeiten). Als Hypothese kann<br />
dann die Folge der Zustände durch das HMM angegeben werden, die dann<br />
zumindest die phonetische Repräsentation des Wortes Enthält, welche von<br />
einem geeigneten Algorithmus (zum Beispiel mittels HMMs [?]) in eine<br />
Textuelle Form gebracht werden kann.<br />
Für Diktiererkenner ist eine Vorgehensweise sinnvoll, wie sie zum Beispiel<br />
in der HDLA-Techik (s. Abs. 16.7.2) verwendet wird. Dort wird das Lexikon<br />
nach der ersten Erkennung verändert. Aus einem riesigen Hintergrundlexikon,<br />
das der Spracherkenner nicht verarbeiten könnte, das aber sehr viele<br />
Wörter und Eigennamen enthält, werden die erfolgversprechendsten Kandidaten<br />
anhand der zunächst fehlerhaften Hypothese ausgewählt und in das<br />
Erkennnervokabular aufgenommen. Ein erneuter zweiter Erkennungsvorgang<br />
hat dann eine größere Wahrscheinlichkeit, die korrekte Ausgabe zu liefern.<br />
Bei spontaner Sprache entsteht ein zusätzliches Problem, das bei<br />
Diktiererkenner weniger wichtig ist, nämlich das häufige Vorkommen von<br />
Wortfragmenten. Man kann nicht wirklich erwarten, daß ein Hintergrundlexikon<br />
nicht nur fast alle sinnvollen Wörter enthält und zusätzlich noch<br />
aller möglicherweise sprechbaren Wortfragmente. Daher wird in [?] ein<br />
Algorithmus vorgestellt, der einen endlichen Automaten aus einer Liste<br />
aller im Deutschen regulären Silben (ca. 11 000 Stück) baut, und dieses als<br />
Neue-Wörter-Modell verwendet.<br />
In [?] wird vor allem die Problematik der unbekannten Eigennamen<br />
behandelt, die sich oft nicht an die übliche Phonotaktik halten. Die dort<br />
verfolgte Idee besteht darin, keine ganzen Wörter durch HMMs mit hohen<br />
Freiheiten bei der Phonemfolgenwahl zu modellieren, sondern nur Teile<br />
davon. Die Anfänge der neuen Wörter müssen statt dessen mit einer<br />
Phonemsequenz aus einer aus den Trainingsdaten gewonnenen Menge<br />
beginnen. Dadurch werden dem Erkenner weniger Freiheiten gegeben und<br />
die Wahrscheinlichkeit für das Auftreten so genannter false alarms für
20.2 Erkennung beliebiger Namen 351<br />
OOV-Wörter an Stellen, an denen gar keine sind, minimiert.<br />
Je nach Erkennungsaufgabe (Diktieren oder spontaner Dialog), je nach<br />
Domäne (viele oder wenige Eigennamen) und je nach Vokabulargröße ist<br />
eine andere Vorgehensweise die sinnvollste. Ganz grob läßt sich sagen: je<br />
mehr Freiheiten der Sprecher beim Sprechen hat umso mehr sollte auch der<br />
Erkenner beim Konstruieren der neuen Wörter haben.
21. Robustheit und Adaption<br />
Lange Zeit waren Spracherkenner nur unter ganz bestimmten eng umrissenen<br />
Umständen verwendbar. Noch Ende der achtziger Jahre waren<br />
die Forderungen nach Sprecherabhängigkeit, hochqualitativen Nahbesprechungsmikrophonen,<br />
und relativ kleinen Vokabularen kaum zu umgehen.<br />
Die verwendeten Domänen mußten sich mit relativ einfachen Grammatiken<br />
beschreiben lassen und eine niedrige Perplexität haben. Der verwendete<br />
Sprachstil mußte dem beim Diktieren sehr nahe kommen. Spontane<br />
Sprache war nur sehr eingeschränkt einsetzbar. Die Umgebung durfte keine<br />
Störgeräusche produzieren und mußte möglichst ständig unverändert bleiben.<br />
Das Abweichen von einer dieser Forderungen führte stets zu einer<br />
deutlichen Erhöhung der Fehlerrate. So galten die Daumenregeln, daß<br />
sprecherunabhängige Erkenner doppelt so viele Fehler machen wie sprecherabhängige.<br />
Erkenner für spontane Sprache machten zwei bis drei mal<br />
so viele Fehler wie Diktiererkenner. Ähnlich Faktoren waren auch bei den<br />
anderen Problemen zu beobachten. Auch wenn die einzelnen Problemdimensionen<br />
nicht ganz orthogonal sind, so gilt dennoch oft, daß die Faktoren<br />
bei Erkennern, die mehere Probleme gleichzeitig angehen sich tendenziell<br />
multuplikativ verhalten.<br />
In diesem Zusammenhangen bezeichnet der Begriff Robustheit, die<br />
Fähigkeit eines Spracherkenners, nicht nur unter kanonischen Bedingungen<br />
sondern auch unter veränderten Umständen gut erkennen zu können. Also<br />
zum Beispiel auch dann, wenn der Sprecher sich ändert, der Sprechstil sich<br />
wechselt, der Erkenner in einer andere Umgebung wie etwa im fahrenden<br />
Auto oder auf der Straße eingesetzt wird, oder auch die Domäne und somit<br />
das Vokabular und die typischen Wortfolgen sich ändern.<br />
Die Geschichte der Spracherkennung läßt einen deutlichen roten Faden<br />
erkennen, der das Bestreben nach immer höherer Robustheit beschreibt.<br />
Tendenziell ist es sogar so, daß wenn ein Problemtyp wie zum Beispiel das<br />
Diktieren einigermaßen als gelöst erscheint, die Forschergemeinde das nächst<br />
schwierigere Problem angeht. Obwohl man zugeben muß, daß Diktiersysteme<br />
noch nicht die Qualität haben, die sie bräuchten, um eine weite Verbreitung
354 21. Robustheit und Adaption<br />
zu finden, fokussiert sich ein Großteil der Forschung auf wesentlich schwierigere<br />
Probleme wie das Erkennen spontaner Telefondialoge. Dies illustriert<br />
die Bedeutung, die der Problematik der Robustheit zugemessen wird.<br />
Zu den Verfahren, die am meisten zur Verbesserung der Robustheit<br />
beitragen, gehören verschiedene Methoden der Adaption. Hierbei gibt es<br />
zahlreiche Verfahren, die auf allen Ebenen eines Spracherkenners, von der<br />
Signalverarbeitung bis hin zur Nachbearbeitung der Hypothesen, eingesetzt<br />
werden. Im diesem Kapitel werden einige der wichtigeren vorgestellt.<br />
21.1 Sprecherabhängigkeit<br />
Die Fehlerraten für verschiedene Sprecher können mit dem selben Erkenner<br />
extrem stark variieren. Abb. 21.1 zeigt die Fehlerraten für die Sprecher 4t1<br />
bis 4tk der DARPA Wall Street Journal Evaluation vom Dezember 1994. Für<br />
jeden Sprecher sind die Fehlerraten mit allen Erkennern als Kreuze markiert.<br />
Abgesehen von der Schwankung der Fehlerraten für jeden einzelnen Sprecher<br />
ist erkennbar, daß die Fehler beim besten Sprecher, 4t3, zwischen ca. 2% und<br />
8% liegen, während die Fehler für den schwierigsten Sprecher, 4td, zwischen<br />
ca. 25% und 50% also etwa zehn mal so hoch liegen.<br />
Es gibt nun verschiedene Möglichkeiten, Erkenner auf einen bestimmten<br />
Sprecher zu adaptieren. Einige Eigenschaften, die einzelne Sprecher von<br />
anderen unterscheiden sind relativ leicht zu beschreiben, dazu gehören<br />
zum Beispiel die typische Sprechgeschwindigkeit, der gesprochene Dialekt<br />
oder Akzent, das Geschlecht und die damit verbundene Anatomie des<br />
Artikulationsapparates. Andere Eigenschaften sind wesentlich schwieriger<br />
zu beschreiben und sind fast nur in den Parametern der Spracherkenner<br />
wiederzufinden.<br />
Bereits erfolgreich eingesetzt wurden Verfahren, bei denen verschiedene<br />
Erkenner für verschiedene Gruppen von Sprechern trainiert wurden. Bei<br />
der Konstruktion von Multilingualen Erkennern sieh man es als selbstverständlich<br />
an, daß die erste naheliegende Vorgehensweise das Training<br />
von Sprachenabhängigen Erkennern ist, und das Training eines sprachenunabhängigen<br />
Erkenners erst danach folgt. Im grunde könnte man die gleiche<br />
Argumentation auch für Gruppen von Sprechern gelten lassen. Solange<br />
ausreichend viele Trainingsdaten für jede Gruppe zur Verfügung stehen,<br />
kann es sehr wohl von Vorteil sein, mehrere in sich homogene Gruppen<br />
zu definieren, die jeweils eine kleine Streuung für die HMM-Parameter zur<br />
Folge haben und so sehr gute ” scharfe“ Modell haben.
50<br />
45<br />
40<br />
35<br />
30<br />
25<br />
20<br />
15<br />
10<br />
5<br />
0<br />
21.1 Sprecherabhängigkeit 355<br />
+ + + + +<br />
+<br />
+ + + + +<br />
+<br />
+<br />
+ +<br />
+<br />
+ +<br />
+<br />
+<br />
+ + + + + + + + +<br />
+ + + + + +<br />
+<br />
+<br />
+<br />
+<br />
+<br />
+ + + + + + +<br />
+<br />
+<br />
+<br />
+ +<br />
+<br />
+ + + +<br />
+ +<br />
+<br />
+ + + + + +<br />
+ + + + +<br />
+ + +<br />
+<br />
+ +<br />
+<br />
+<br />
+<br />
+<br />
+<br />
+<br />
+<br />
+<br />
+<br />
+<br />
+<br />
+<br />
+<br />
+<br />
+<br />
+ +<br />
+ + + +<br />
+<br />
+<br />
+ +<br />
+ +<br />
+<br />
+ + + + + + + + + +<br />
+<br />
+<br />
+ +<br />
+<br />
+ +<br />
+<br />
+<br />
+ +<br />
+ + + +<br />
+ +<br />
+ +<br />
+<br />
+<br />
+ +<br />
+ +<br />
+ + + +<br />
+ + + +<br />
+ + + + +<br />
+<br />
+<br />
+ +<br />
+ +<br />
+<br />
+ + + + +<br />
+<br />
+<br />
+ + + +<br />
+ +<br />
+ +<br />
+<br />
+<br />
+ +<br />
+<br />
+<br />
+<br />
+<br />
+<br />
+<br />
+ +<br />
+ + +<br />
+<br />
+<br />
+<br />
+<br />
+<br />
+<br />
+<br />
+<br />
+<br />
+<br />
+ + + +<br />
+<br />
+ + + +<br />
+<br />
+<br />
+ +<br />
+ +<br />
+ + +<br />
+ +<br />
+<br />
+<br />
+<br />
+<br />
+<br />
+<br />
+<br />
+<br />
+ +<br />
+<br />
+<br />
+<br />
+ +<br />
+<br />
+<br />
+<br />
+<br />
+ + + + + +<br />
+ +<br />
+<br />
+ + + +<br />
+<br />
+<br />
+<br />
+<br />
+ +<br />
+<br />
+ + + +<br />
+ +<br />
+<br />
+<br />
+ + + +<br />
+<br />
+<br />
+ +<br />
+<br />
+<br />
+ +<br />
+ + + + + + + +<br />
+<br />
+<br />
+<br />
+ +<br />
+<br />
+<br />
+ +<br />
+<br />
+ +<br />
4t34t94ta4th4tc 4t74t1 4te 4t54tk4t2 4ti 4t44t8 4tj 4tb4tg4t04t64td<br />
Abb. 21.1. Fehlerraten für verschiedene Sprecher und Erkenner<br />
Die erste naheliegende Auftrennung der Sprecher in Gruppen ist die<br />
Auftrennung in Geschlechter. So sind oft zwei getrennte Erkenner, einer für<br />
Frauen und einer für Männer, die jeweils mit der Hälfte der Trainingsdaten<br />
trainiert wurden, besser als ein geschlechtsunabhängiger Erkenner, der<br />
mit allen Daten trainiert wurde; natürlich vorausgesetzt, daß vor dem<br />
eigentlichen Erkennungsvorgang das Geschlecht des Sprechers bestimmt<br />
werden kann.<br />
Die Bestimmung des Geschlechts kann zumindest in den meisten Sprachen<br />
nicht mit Hilfe linguistischer oder phonetischer Mittel, wie sie zum Beispiel<br />
für die Bestimmung der Sprache oder des Dialekts verwendet werden,<br />
durchgeführt werden. In vielen Sprachen gibt es zwar geschlechtsabhängige<br />
Partizipien oder es wäre möglich, bei selbstbezüglichen Adjektiven deren<br />
Genus zu bestimmen, allerdings kann man sich kaum darauf verlassen, daß<br />
solche Selbstbezüglichkeiten, in denen die Sprecherin oder der Sprecher über<br />
sich selbst reden, auch tatsächlich in der Sprache vorkommen. Im Japanischen<br />
unterscheidet sich auch das typische Vokabular und die typischen<br />
verwendeten Wortfolgen zwischen der Sprache von Männern und der von<br />
Frauen. Allerdings hilft auch dies nur bei sehr langen spontan gesprochenen<br />
Passagen. Viel schneller und einfacher kann man das Geschlecht in allen<br />
Sprachen mit recht hoher Genauigkeit bestimmen, indem man zwei Merkma-<br />
+
356 21. Robustheit und Adaption<br />
le betrachtet: Ohne weiteres Wissen, gibt allein die Grundfrequenz F0 der<br />
Stimme einen wertvollen Hinweis. Männer sprechen in der Regel mit tieferer<br />
Stimme als Frauen. Das andere Kriterium kann man aus den Gesamtbeobachtungswahrscheinlichkeiten<br />
der beiden geschlechtsspezifischen Erkennern<br />
gewinnen. Unter der Voraussetzung, daß beide Erkenner die gleiche Struktur<br />
des Parameterraumes haben, so daß sich deren HMM-Emissions- und Übergangswahrscheinlichkeiten<br />
vergleichen lassen, und unter der Voraussetzung,<br />
daß beide das gleiche Sprachmodell verwenden, kann man P(X|λ männlich<br />
mit P(X|λ weiblich vergleichen und sich für das Geschlecht mit größerer<br />
Wahrscheinlichkeit entscheiden. Gegebenenfalls kann man noch, falls bekannt,<br />
die a priori Wahrscheinlichkeiten für die Geschlechter mit einbeziehen<br />
und mit Hilfe der Bayes-Regel sogar die a posteriori Wahrscheinlichkeiten<br />
P(Geschlecht|X) bestimmen. Es mag zwar sein, daß diese Methode nicht<br />
immer zum richtigen Ergebnis führt. In der Praxis stellt sich aber heraus,<br />
daß selbst dann, wenn die Geschlechtsklassifikation einen Fehler macht,<br />
der dann ” falsche“ Erkenner trotzdem die besseren Erkennungsergebnisse<br />
produziert, weil die Ursache für die Fehlklassifikation daher kommt, daß sich<br />
die Stimme der Sprecherin wie die eines eher typischen Mannes oder die<br />
Stimme des Sprechers wie die einer Frau anhören.<br />
21.2 Spontane Effekte<br />
Oft werden als die vier wichtigsten Qualitätseigenschaften von Spracherkennern<br />
beziehungsweise Spracherkennungsaufgaben genannt: die<br />
Sprecher(un)abhängigkeit, die Komplexität des Vokabulars, die Qualität<br />
des Signals und die Spontaneität der Sprache. Sie spannen sozusagen einen<br />
vierdimensionalen Raum auf, in dem sprecherabhängige Erkennung eines<br />
kleinen diktierten, also sorgfältig gesprochenen Vokabulars über einen<br />
ungestörten Kanal in der “leichtesten“ Ecke liegt, und sprecherunabhängige<br />
Erkennung spontaner <strong>Mensch</strong>-<strong>Mensch</strong>-Dialoge mit sehr großen Vokabularen<br />
und störungsbehafteten Übertragungskanälen in der ” schwersten“ Ecke liegt.<br />
Die Dimension der Sprecher(un)abhängigkeit verliert in der Forschung immer<br />
mehr an Bedeutung. Es wird kaum noch an sprecherabhängigen Systemen<br />
geforscht. Sprecherunabhängigkeit und Adaption sind hier die Mittel der<br />
Wahl. Kleine Vokabulare findet man nur noch für Spezialaufgaben, und<br />
die Größen typischer Vokabulare stellen weniger den Spracherkenner selbst<br />
von Schwierigkeiten, sondern vielmehr die Entwickler von Sprachmodellen.<br />
Die Problematik der Signalqualität wird in der Regel durch besondere<br />
Signal- und Modelladaptionsverfahren angegangen, und für viele bekannte<br />
Störungen (zum Beispiel Automobilgeräusche [?]) existieren auch relativ<br />
gute Lösungen. Die Dimension, die somit als die vermutlich schwierigste<br />
bezeichnet werden kann, ist die Spontaneität. Teilweise ist es sogar so, daß
21.3 Geräuschmodellierung 357<br />
ein Erkenner, der auf Spontaner Telefonsprache trainiert wurde, bessere<br />
Ergebnisse auf spontaner Sprache liefert, die über ein hochqualitatives<br />
Nahbesprechungsmikrophon aufgenommen wurde, als ein sehr guter Diktiererkenner<br />
für Nahbesprechungsmikrophone. Mit anderen Worten, die<br />
Änderung des Übertragungskanals wirkt sich weniger schädlich aus als die<br />
Änderung des Spontaneitätsgrades. Im folgenden werde einige Aspekte der<br />
Handhabung spontaner Sprache erläutert.<br />
Diktierte Sprache zeichnet sich nicht nur dadurch aus, daß die Artikulation<br />
der Worte sauberer ist, sondern auch dadurch, daß die Äußerung<br />
zuvor geplant werden kann. Je nach Anwendung ist es auch möglich, diese<br />
bei Auftreten irgendwelcher Probleme, zu wiederholen, so daß der Erkenner<br />
in der Regel eine saubere, fehlerfreie und Störgeräuschfreie Aufnahme bekommt.<br />
Bei spontaner Sprache entfällt diese Planung. Bei einigen Aufgaben<br />
sind sich die Sprecher nicht einmal bewußt, daß die Sprache aufgezeichnet<br />
wird und für die Erkennung verwendet wird. Solche Sprache enthält sehr oft<br />
Störgeräusche, so daß diese zu den spontanen Effekten zu rechnen sind.<br />
Andere spontane Effekte sind die Varianz der Sprechgeschwindigkeit, das<br />
ungrammatikalische Sprechen und die unsaubere Artikulation, die bis zum<br />
Falschaussprechen und Weglassen ganzer Lautfolgen geht.<br />
21.3 Geräuschmodellierung<br />
Sogar diktierte Sprache, aber vor allem spontane Sprache, insbesondere<br />
Dialoge zwischen <strong>Mensch</strong>en enthalten viele Abschnitte, die in der Regel in<br />
keinem Wörterbuch zu finden sind. Dazu gehören emphatische Pausen wie<br />
” äh“, ” ähm“, hm“ und so weiter, nichtsprachliche Laute wie Husten, La-<br />
”<br />
chen, Räuspern, unbeabsichtigte Geräusche mit der Zunge oder den Lippen,<br />
und vor allem Atemgeräusche. Gerade wenn es sich beim verwendeten Mikrophon<br />
um ein Nahbesprechungsmikrophon handelt, kann es leicht passieren,<br />
daß der Zug der Atemluft deutliche Artefakte ins Sprachsignal einbringt.<br />
Neben diesen durch den Artikulationsapparat erzeugten Geräuschen treten<br />
auch nichtartikulatorische Geräusche auf. Oft wird sogar das eigentliche<br />
Sprachsignal durch solche Geräusche überlagert. Dazu gehören Geräusche,<br />
die durch Bewegungen von Personen oder Gegenständen entstehen, die sich<br />
im Raum, in dem die Sprachaufnahme stattfindet, befinden.<br />
Artikulatorische Geräusche sind meist viel stärker mit der sie umgebenden<br />
Sprache korreliert als nichtartikulatorische. Emphatische Pausen<br />
werden an verschiedenen Stellen mit unterschiedlicher Wahrscheinlichkeit<br />
gemacht. Einige Wortsequenzen werden oft wie ein einzelnes Wort betrach-
358 21. Robustheit und Adaption<br />
tet, und werden kaum von Pausen unterbrochen, während an Stellen in einer<br />
Äußerung, an denen ein Gedankensprung stattfindet, die Wahrscheinlichkeit<br />
von Pausen jeder Art deutlich größer ist. Nichtartikulatorische Geräusche<br />
sind viel schwieriger zu handhaben, nicht nur weil sie mit der eigentlichen<br />
Sprache kaum korreliert sind, sondern auch weil sie eine viel größere Varianz<br />
haben. So ist es z.B. nicht leicht, ein Telefonklingeln als solches zu erkennen,<br />
weil heutzutage viele verschiedene Klingelgeräusche verwendet werden. Das<br />
Zuschlagen von Türen, das Klappern von Tastaturen oder das Quietschen<br />
von Bürostühlen, die selbst <strong>Mensch</strong>en oft nicht klassifizieren können,<br />
verschärfen das Problem noch.<br />
Akustische Geräuschmodellierung<br />
Vor einer expliziten Modellierung von Geräuschen ist es sinnvoll, zu analysieren<br />
welche Arten von Geräuschen vorkommen. In [?] werden die Geräusche<br />
auf einer spontansprachlichen Datenbank [?] mit transkribierten Geräuschen<br />
untersucht. Die artikulatorischen Geräusche verteilen sich wie in Tab. 21.1.<br />
Geräusch Anteil Durchschnittlich Anzahl<br />
pro Äußerung<br />
Füllwörter (ah, eh, oh, mh, etc.) 30% 1.5<br />
Atemgeräusche 47% 2.4<br />
Lachen 1% 0.6<br />
Lippen- und Schmatzgeräusche 20% 1.0<br />
Sonstige 2% 0.7<br />
Tabelle 21.1. Vorkommen von Geräuschen in spontaner Sprache<br />
Man sieht, daß im Schnitt über fünf artikulatorische Geräusch pro<br />
Äußerung vorkommen. Hinzu kommen noch die schwerer in Kategorien<br />
zusammenfaßbaren nicht-artikulatorischen Geräusche, von denen die häufigsten<br />
Tastaturgeklapper, Papier-Rascheln und Mikrophongeräusche (Reiben,<br />
Bewegen, Anstoßen) sind. Die nichtartikulatorischen Geräusche machen ca.<br />
1/5 aller Geräusche aus.<br />
In [?] werden ca. 40 verschiedene Geräuscharten untersucht und gezeigt,<br />
daß die beste Art der Geräuschmodellierung die Zusammenlegung aller
21.4 Adaptionsziele 359<br />
Geräusche in fünf oder sechs Klassen ist. Die Klassen können mit Hilfe eines<br />
agglomerativen Ballungsverfahrens gefunden werden. In [?] konnten auf<br />
ähnliche Weise mit 14 Geräuschklassen dramatische Verbesserungen der Fehlerrate<br />
erreicht werden, ca. 50% weniger Fehler insgesamt, und immer noch<br />
über ca. 10% weniger Fehler selbst auf sauberen Aufnahmen ohne Geräusche.<br />
Einbindung von Geräuschen ins Sprachmodell<br />
Es gibt zwei Paradigmen, die beim Modellieren von geräuschbehafteten<br />
Wortfolgen beachtet werden sollten. Einmal die Behandlung von Geräuschen<br />
wie gewöhnliche Wörter. Unter der Annahme, daß manche Geräusch<br />
bevorzugt an bestimmten Stellen in der Sprache auftreten, sollten sie<br />
bei der Berechnung der n-Gramme wie alle andere Wörter behandelt<br />
werden. Dies gilt insbesondere für Atemgeräusche, Lippenschmatzen und die<br />
meisten Füllwörter. Andere Geräusche, insbesondere nichtartikulatorische,<br />
können schwer vorhergesagt werden. Für diese sollte das Paradigma der<br />
Transparenz aus der Sicht des Sprachmodells verfolgt werden. Das heißt,<br />
sie sollten nicht wir gewöhnliche Wörter bei der Berechnung der n-Gramme<br />
verwendet, sondern an dieser Stelle zunächst ignoriert werden. Später,<br />
während der Erkennung sollten sie allerdings vom Sprachmodell nicht für<br />
” unmöglich“ gehalten werden, sondern “durchgereicht“ werden, so daß<br />
P(wn|w1, w2, . . . wi, wGeräusch , wi+1 . . . wn−1) genauso berechnet wird wie<br />
P(wn|w1, w2, . . . wi, wi+1 . . . wn−1).<br />
21.4 Adaptionsziele<br />
Die Adaption eines Spracherkenners an aktuelle Gegebenheiten kann verschiedene<br />
Ziele verfolgen. Entweder werden die Parameter des Erkenners and<br />
die Gegebenheiten oder das aufgezeichnete Signal wird an die Parameter des<br />
Erkenners angepaßt. Der erste Fall wird Modelladaption genannt, der zweite<br />
Signaladaption (s. Abb. 21.2.<br />
In beiden Fällen wird davon ausgegangen, daß die Trainingsdaten eine<br />
Art kanonischer Daten sind, die entweder durch Normierung oder durch<br />
Mittelung der Trainingsdaten den Durchschnitt aller Gegebenheiten (Sprecher,<br />
Kanal, Hintergrund) darstellen. Mit diesen Daten wird das kanonische<br />
Modell geschätzt, das direkt für die nichtadaptierte Erkennung verwendet<br />
wird.<br />
Wenn festgestellt wird, daß die Testdaten nicht dem Mittel der Trainingsdaten<br />
entsprechen, kann im Falle der Signaladaption eine Transformation
360 21. Robustheit und Adaption<br />
Trainings-<br />
daten<br />
Training<br />
Test Modelladaption<br />
Signaladaption<br />
Test-<br />
daten<br />
Signaltransformation<br />
Parameterschätzung<br />
Modell<br />
Erkennung<br />
transformiertes<br />
Signal<br />
Parametertransformation<br />
transformiertes<br />
Modell<br />
Hypothese<br />
Abb. 21.2. Verschiedene Ziele für die Adaption: Signal oder Modelle)<br />
berechnet und auf den Testdaten angewendet werden, so daß das Transformierte<br />
Signal besser auf das Modell paßt. Der Begriff ” passen“ kann in<br />
diesem Zusammenhang verschiedenes bedeuten. In den meisten Fällen ist<br />
damit gemeint, daß die Beobachtungswahrscheinlichkeit der Testdaten bei<br />
gegebenem Modell möglichst groß ist (Maximum Likelihood).<br />
Im Falle der Modelladaption, werden die Parameter des Erkenners so<br />
transformiert, daß sie auf das aktuelle Signal möglichst gut passen. Im<br />
Prinzip ist es auch möglich und oft sogar sinnvoll, beide Adaptionsziele<br />
gleichzeitig zu verfolgen. Wenn mit Hilfe der Signaladaption auch schon<br />
während des Trainings eine Normierung der Daten erzielt wird, dann kann<br />
auf diese Art die Streuung der Parameter oder auch deren Anzahl verkleinert<br />
werden und das ganze Modell robuster geschätzt werden.<br />
Die Transformation kann – und tut es in vielen Fällen auch – aus<br />
mehreren einzelnen Transformationen bestehen, die jeweils für einen Teil<br />
des Merkmalsraums oder einen Teil der Modelle gilt. Im Extremfall könnte<br />
jeder Parameter eine eigene Transformation haben. Wenn dafür ausreichend<br />
Adaptionsdaten zur Verfügung stünden, könnten allerdings die Parameter<br />
selbst damit trainiert werden.<br />
Gl. 21.1 zeigt, wie sich eine mögliche Signaladaption fS j (x) auf die<br />
Berechnung der Emissionswahrscheinlichkeiten mit Gauß-Mischverteilungen
auswirkt. In Gl. 21.2 wird eine Transformation fM j<br />
vektoren der Gauß-Verteilungen angewandt.<br />
K<br />
k=1<br />
K<br />
k=1<br />
cik ·<br />
cik ·<br />
21.5 Adaptionsmethoden 361<br />
(µ) auf die Mittelwerts-<br />
1<br />
· e−12<br />
2πd |Σik| (fS j (x) − µik) ⊤ Σ −1<br />
ik (fS j (x) − µik)<br />
1<br />
· e−12<br />
2πd |Σik| (x − fM j (µik)) ⊤ Σ −1<br />
ik (x − fM j (µik))<br />
(21.1)<br />
(21.2)<br />
Der Index jdeutet darauf hin, daß verschiedene Transformationen zur<br />
Verfügung stehen, so daß vor der Anwendung, j in Abhängigkeit vom Signal<br />
x, dem Modell i oder beiden bestimmt werden muß.<br />
21.5 Adaptionsmethoden<br />
Die Frage, die bei der Definition der Adaptionsziele offen gelassen wurde, ist<br />
die Frage nach der Bedeutung von ” Signal und Modell passen zusammen“.<br />
Die Frage, wie gut modelliert ein Modell das vorliegende Signal, wird in<br />
der Regel mit der Beobachtungswahrscheinlichkeit des Signals beantwortet.<br />
Auch wenn wir am liebsten als Optimierungskriterium die Wortfehlerrate<br />
verwenden würden, so gibt es keine analytischen Methoden, die Transformationen<br />
nach Gl. 21.1 oder 21.2 so berechnen, daß die resultierende<br />
Wortfehlerrate minimal wird. Wesentlich einfacher ist es mit Hilfe von<br />
Maximum-Likelihood Methoden die Beobachtungswahrscheinlichkeit zu<br />
optimieren. Für Gauß-Mischverteilungen bedeutet so eine Optimierung<br />
meisten das Lösen eines zwar hochdimensionalen aber ansonsten nicht weiter<br />
problematischen Gleichungssystems.<br />
Während die Maximum-Likelihood Methode (ML) die Signalwahrscheinlichkeit<br />
p(x|λ) zu optimieren versucht, ist das Ziel der Maximum-A-Posteriori<br />
Methode (MAP) die Optimierung der Parameterwahrscheinlichkeit p(λ|x),<br />
also die Frage welches sind denn die wahrscheinlichsten Parameter bei gegebenem<br />
Signal. Zusammengefaßt:<br />
ˆλ ML = argmaxp(X|λ)<br />
(21.3)<br />
λ<br />
ˆλ MAP = argmaxp(λ|X)<br />
(21.4)<br />
λ
362 21. Robustheit und Adaption<br />
Einen großen Unterschied macht die Existenz von transkribierten gegenüber<br />
nicht transkribierten Adaptionsdaten aus. Wenn bekannt ist, was<br />
der Sprecher des Signals, das zur Adaption verwendet wird, gesprochen<br />
hat, handelt es sich um eine überwachte Adaption. Im anderen Fall um<br />
eine unüberwachte. Beide Varianten haben ihre Existenzberechtigung.<br />
Der typische Einsatz überwachter Adaption sie so aus, daß der Sprecher<br />
aufgefordert wird einige wenige Sätze zu sprechen (vorzulesen), die dem<br />
System bekannt sind. Auf diesen Sätzen kann nun mit Hilfe eines Viterbioder<br />
Forward-Backward-Algorithmus eine relativ genaue Zuordnung von<br />
Einzelbeobachtungen zu Einzelmodellen gemacht werden. Das ist die Grundlage<br />
für eine gute Schätzung der Adaptionstransformationen. Unüberwachte<br />
Adaption ist immer dort interessant, wo es dem Sprecher nicht zugemutet<br />
werden kann, vor der eigentlichen Problemlösung durch Spracheingabe<br />
erst einige Adaptionssätze zu sprechen, zum Beispiel bei Bedienen eines<br />
Fahrkartenautomaten am Bahnhof, oder bei der Fahrplanauskunft über<br />
Telefon. In diesen Fällen dient in der Regel die Hypothese des Erkenners als<br />
(suboptimaler) Ersatz für die nicht vorhandene Transkription. Vorausgesetzt<br />
der Erkenner macht wesentlich mehr richtig als falsch kann ähnlich wie<br />
beim Trainieren ohne Transkriptionen (vgl. Abs. 13.3.2) mit Hilfe eines<br />
Konfidenzmaßes entschieden werden, welche Teile des Signals mit welchem<br />
Gewicht ins Training eingehen sollen.<br />
Im folgenden werden einige typische Transformationen und ihre Anwendung<br />
zur Adaption vorgestellt.<br />
21.5.1 MLLR<br />
Die Maximum-Likelihood lineare Regression ist eine Adaptionsmethode [?],<br />
die sich sowohl für den überwachten als auch unüberwachten Fall einsetzen<br />
läßt. Hierbei bedeutet ” unüberwacht“ nicht, daß die Zuordnung von Mustern<br />
zu Modellen vom MLLR-Algorithmus automatisch durchgeführt wird. Diese<br />
Zuordnung wird dem Algorithmus selbst in jedem Fall von außen vorgegeben,<br />
allerdings meist nicht in Form von Transkriptionen ( ” überwacht“) sondern<br />
in Form von (fehlerhaften) Erkennerhypothesen ( ” unüberwacht“). Eine<br />
vollständig adaptierte Gauß-Mischverteilung ist in Gl. 21.5 gegeben:<br />
pj(x|i) =<br />
K<br />
k=1<br />
cik ·<br />
1<br />
· e−1 2<br />
2πd |Σik| (x−Ajµik−bj) ⊤ (SjΣik) −1 (x−Ajµik−bj)<br />
(21.5)<br />
Hierbei wird der k-te Mittelwert µik der i-ten Mischverteilung ersetzt<br />
durch den transformierten Wert Ajµik − bj. Der Index j ist im Grunde
21.5 Adaptionsmethoden 363<br />
eine Funktion von i und k. Im einfachsten Fall gibt es nur eine einzige<br />
Transformation für alle Mittelwerte, im komplexesten Fall hat jede Gauß-<br />
Verteilung eine eigene Transformation (welche aber entweder bei wenig<br />
Adaptionsdaten nicht ausreichend gut geschätzt werden können, oder sehr<br />
vielen Adaptionsdaten, die schlechtere Variante im Vergleich mit einem<br />
EM-Training wären). Der Maximum-Likelihood Aspekt kommt von der Art,<br />
wie die Transformation gefunden wird:<br />
(Âj, ˆSj, ˆbj) = argmax pj(x|i) (21.6)<br />
(Aj,Sj,bj)<br />
Zwar könnte Aj eine beliebige Matrix sein, allerdings laßt sich die<br />
Maximum-Likelihood Optimierung am besten für Rotationsmatrizen<br />
durchführen. Im übrigen kann es sinnvoll sein, bei besonders wenigen<br />
Trainingsdaten, für Aj und Sj einfach Einheitsmatrizen zu verwenden, und<br />
die resultierende Transformation als eine einfache Translation der Mittelwertsvektoren<br />
zu implementieren. Tatsächlich stellt sich heraus, daß eine<br />
Transformation der Sj der Kovarianzmatrizen einen wesentlich geringeren<br />
positiven Effekt auf die Adaption hat als die Transformation der Mittelwerte<br />
[?].<br />
21.5.2 Label-Boosting<br />
Der zentrale Algorithmus beim Trainieren von Hidden Markov Modellen ist<br />
die Berechnung der γt(i) = P(qt = i|X, λ), also der Wahrscheinlichkeit dafür,<br />
daß der stochastische Sprachprozeß sich zum Zeitpunkt t bei gegebener<br />
Beobachtung X und HMM λ im Zustand si befindet (Gl. 12.16). Die Werte<br />
γt(i) werden nach der reinen Theorie mit Hilfe des Forward-Backward<br />
Algorithmus berechnet. Wie in Abs. 13.1.2 gezeigt, wird in der Praxis aber<br />
meist statt dessen der Viterbi-Algorithmus verwendet, beziehungsweise im<br />
voraus berechnete und abgespeicherte Viterbi-Pfade. Selbstverständlich ist<br />
die Qualität der Viterbi-Pfade von größter Bedeutung. Unexakt positionierte<br />
Zustandsübergänge führen dazu, daß die Modelle (Gauß-Mischverteilungen)<br />
mit ” falschen“ Trainingsdaten trainiert werden.<br />
Von Viterbi-Pfaden, die mit einem Sprecherunabhängigen Erkenner<br />
berechnet werden, kann man erwarten, daß sie nicht so gut sind wie Pfade,<br />
die mit einem auf den Sprecher spezialisierten Erkenner erzeugt wurden.<br />
Daher bietet sich ein Vorgehen an, das unter dem Namen ” Label-Boosting“<br />
bekannt ist (s. Abb. 21.3. Dabei werden iterativ neue HMM-Parameter St<br />
berechnet, wobei allerdings die Berechnung der γt(i) nicht mit sprecherunabhängigen<br />
HMM-Parametern sondern mit durch MLLR adaptierten
364 21. Robustheit und Adaption<br />
Parameter durchgeführt wird.<br />
sprecherunabhängiger<br />
Erkenner<br />
Sprecher 1<br />
Viterbi-<br />
Pfad<br />
Sprecher 2<br />
Viterbi-<br />
Pfad<br />
St .<br />
Sprecher n<br />
Viterbi-<br />
Pfad<br />
Abb. 21.3. Label-Boosting Verfahren<br />
MLLR1<br />
MLLR2<br />
MLLRn<br />
Viterbi-<br />
Pfad<br />
Viterbi-<br />
Pfad<br />
Viterbi-<br />
Pfad<br />
sprecherunabhängiger<br />
Erkenner<br />
St+1<br />
In jeder Iteration werden zunächst für jeden Sprecher j Pfade (Labels)<br />
dieses Sprechers aus der letzten Iteration verwendet um mit ihrer Hilfe<br />
die MLLRj Transformation auf den Sprecher j zu berechnen. Mit den so<br />
transformierten HMM-Parametern werden dann neue bessere Viterbi-Pfade<br />
berechnet. Erst die neuen Pfade beziehungsweise die daraus resultierenden<br />
γt(i) werden dann von Baum-Welch Trainingsalgorithmus zur Schätzung der<br />
neuen Parameter St+1 verwendet.<br />
21.5.3 SAT<br />
Während beim Label-Boosting für jeden Sprecher zwar eine eigene MLLR-<br />
Transformation berechnet wird, so findet dennoch keine Normierung in<br />
dem Sinne statt, daß versucht würde die Variationen zwischen den Sprechern<br />
auszugleichen. Dies ist Ziel des so genannten sprecheradaptiven<br />
Trainings (SAT). Dabei werden alle HMM-Parameter mit einer für alle<br />
Sprecher oder Sprechergruppen gemeinsamen Transformation adaptiert.<br />
Ähnlich wie beim Label-Boosting werden auch beim SAT sprecherabhängige<br />
MLLR-Transformationen basierend auf sprecherabhängigem EM-Training<br />
und mit vom Sprecher j abhängigen HMM-Parametern λ (j)<br />
i berechnet.<br />
In einem Synchronisierungsschritt wird aber aus allen sprecherabhängigen<br />
MLLR-Transformationen eine globale Transformation berechnet, die dann
21.5 Adaptionsmethoden 365<br />
auf die HMM-Parameter angewandt wird und in den sprecherunabhängigen<br />
Werten λi resultiert. Sowohl die neuen λi als auch die sprecherabhängigen<br />
Gewichte G (j)<br />
i werden in die nächste Iteration propagiert und dort als neue<br />
Ausgangsbasis verwendet.<br />
G (1)<br />
i−1<br />
λi−1<br />
G (n)<br />
i−1<br />
Adaption<br />
.<br />
.<br />
Adaption<br />
λ (1)<br />
i−1<br />
λ (n)<br />
i−1<br />
EM<br />
Training<br />
.<br />
.<br />
EM<br />
Training<br />
λ (1)<br />
i<br />
λ (n)<br />
i<br />
Abb. 21.4. Sprecheradaptives Training (SAT)<br />
21.5.4 MAP<br />
Berechne<br />
MLLR<br />
Berechne<br />
MLLR<br />
G (1)<br />
i<br />
G (n)<br />
i<br />
sync.<br />
Sei λ das Modell (Parametervektor), das durch die Beobachtung X adaptiert<br />
werden soll, mit der Beobachtungswahrscheinlichkeit p(X|λ). Wenden wir die<br />
Bayes-Regel auf Gl. 21.4 an, so erhalten wir:<br />
ˆλ = argmaxp(X|λ)<br />
· p(λ) (21.7)<br />
λ<br />
p(X|λ) läßt sich leicht berechnen. Es fehlen allerdings die p(λ). Diese<br />
müssen vor der Adaption auf dem Parameterraum geschätzt werden. Man<br />
sieht, daß sich die MAP-Adaption von der Maximum-Likelihood Adaption<br />
nur in diesem einen Faktor. Er sorgt dafür, daß eine kleine Menge an<br />
Adaptionsdaten nicht das gesamte Modell verändert. Die MAP-Adaption<br />
ändert somit nur diejenigen Parameter signifikant, für die es ausreichen<br />
Adaptionsdaten gibt.<br />
λi
366 21. Robustheit und Adaption<br />
21.5.5 VTLN<br />
Abb. 21.5 zeigt die idealisierte Vorstellung der Auswirkung unterschiedlich<br />
langer Vokaltrakte auf das durchschnittliche Spektrum eines Sprechers.<br />
Die fett gezeichnete Kurve in der Mitte stellt das Langzeitspektrum eines<br />
Sprechers mit durchschnittlich langem Vokaltrakt. Bei der linken Kurve,<br />
die in etwa die gleich Form hat wie die durchschnittliche, kommen eher<br />
niedrigere Frequenzen vor, so als sei die durchschnittliche Kurve nach links<br />
verschoben. Dies ist bei Sprechern mit langem Vokaltrakt zu erwarten, da<br />
lange Vokaltrakte längere Wellenlängen also niedrigere Frequenzen weniger<br />
dämpfen. Bei Personen mit relativ kurzem Vokaltrakt ist zu erwarten, daß<br />
vermehrt hohe Frequenzen vorkommen, daß also tendenziell das durchschnittliche<br />
Spektrum nach rechts verschoben ist.<br />
langer<br />
Vokal-<br />
trakt<br />
durchschnittliches<br />
Spektrum<br />
Abb. 21.5. Spektren für verschiedene Vokaltraktlängen<br />
kurzer<br />
Vokaltrakt<br />
Frequenz<br />
In der Praxis sehen die Durchschnittsspektren natürlich nicht so idealisiert<br />
aus wie in Abb. 21.5. Schließlich bestimmt nicht nur die Vokaltraktlänge<br />
sondern auch die von den Stimmbändern erzeugte Grundfrequenz die Anteile<br />
der verschiedenen Frequenzen am Spektrum.<br />
Eine Möglichkeit der Vokaltraktlängenadaption besteht darin, das<br />
Sprachsignal so zu transformieren, daß es dem eines Sprechers mit durchschnittlichem<br />
Vokaltrakt möglichst nahe kommt. Es handelt sich dabei<br />
also um eine Normierung und um eine Signaladaption (vgl. Gl. 21.1).<br />
Diese Normierung wird oft auch als Vokaltraktlängennormierung (VTLN)<br />
bezeichnet. Die beliebteste Art der VTLN ist die Neudefinition der Zusammenfassung<br />
der Fourierkoeffizienten zu Filterbänken. Sei B0(f) der<br />
Index des Filterbankkoeffizienten, der unter anderen den Energieanteil der<br />
Frequenz f aufnimmt. Betrachten wir einen Laut, bei dem der Durchschnitt<br />
der Frequenzen mit höchster Energie über alle Sprecher bei f0 liegt.<br />
Spricht nun ein Sprecher diesen Laut so, daß der größte Energieanteil bei<br />
der Frequenz f1 vorkommt, dann ist die Idee jetzt, eine Filterbankfunk-
21.5 Adaptionsmethoden 367<br />
tion B1(f) zu verwenden, bei der die Frequenz f1 auf B0(f0) abgebildet wird.<br />
Nun lassen sich Filterbankfunktionen prinzipiell beliebig kompliziert<br />
gestaltet. In der Praxis genügt es aber für die VTLN eine einfache Transformation<br />
v zu definieren, die aus zwei linearen Abbildungen zusammengesetzt,<br />
so daß B0(v(f1)) ≈ B0(f0):<br />
<br />
f · a für f ≤ q<br />
v(f) = 1 − p p − q<br />
f ·<br />
1 − q<br />
+<br />
1 − q<br />
für f ≥ q<br />
(21.8)<br />
Abb. 21.6 zeigt, wie die Funktion v(f) und der dazugehörende Effekt<br />
auf die Filterbankberechnung aussieht. Wenn der Vokaltrakt des Sprechers<br />
überdurchschnittlich lang ist (l > 1) dann wird für p ein Wert größer q<br />
gewählt, so daß v lang , die obere der dargestellten Kurven, verwendet wird.<br />
Für die Filterbänke bedeutet das, daß den oberen Frequenzen stärker zusammengestaucht<br />
werden und somit mehr Spektralkoeffizienten auf denselben<br />
Filterbankkoeffizienten abgebildet werden. Und die unteren Frequenzen<br />
werden gedehnt, so daß weniger Information aus diesen Bereichen, in denen<br />
der Sprecher bevorzugt spricht, in den Filterbankkoeffizienten erhalten<br />
bleiben. Für unterdurchschnittlich kurze Vokaltrakte (l < 1) ergibt sich das<br />
entsprechende gegenteilige Bild.<br />
1.0<br />
v(f)<br />
v lang<br />
l > 1<br />
l = 1<br />
vkurz l < 1<br />
q 1.0<br />
Abb. 21.6. Einfache VTLN-Filterbanktransformation<br />
p<br />
f<br />
l > 1 l < 1<br />
p<br />
Filterbänke Filterbänke<br />
für l > 1 für l < 1<br />
Bleibt noch die Frage zu klären, wie geeignete Werte für q und p gefunden<br />
werden. In der Praxis hat sich gezeigt, daß durch einer Verkomplizierung<br />
der Funktion v kaum Gewinne für die Erkennungsgenauigkeit erzielt werden<br />
können. So spielt es auch nur eine kleine Rolle, welcher Wert für q gewählt
368 21. Robustheit und Adaption<br />
wird. Aus empirischen Experimenten hat sich ergeben, daß mit q = 0.8 eine<br />
ausreichend gute Ausgangslage besteht, und dafür ein ” passender“ Wert für<br />
p gesucht wird. Möglich wäre es, p so zu bestimmen, daß die Abweichung<br />
des durchschnittlichen Sprecherspektrums vom Durchschnittsspektrum aller<br />
Sprecher minimal wird. Bessere Ergebnisse liefert allerdings die Bestimmung<br />
von p mit einer Maximum Likelihood Methode. Dabei wird für verschiedene<br />
Werte von p (typischerweise 0.9q, 0.92q, . . .1.08q, 1.10q) mit dem Forwardoder<br />
dem Viterbi-Algorithmus die Beobachtungswahrscheinlichkeit der zum<br />
Adaptieren verfügbaren Äußerungen gemessen, und schließlich derjenige<br />
Wert genommen, für die die Wahrscheinlichkeit am größten ist. Abb. 21.7<br />
zeigt die Verteilung verschiedener Werte für p eingestellt für mehrere hundert<br />
Sprecherinnen und Sprechern. Sehr gut zu erkennen ist die Bimodalität<br />
der Verteilung. Links die Werte p < 1, die vor allem bei Frauen gemessen<br />
wurden, und rechts die p > 1, die vor allem bei Männern gemessen wurden.<br />
180<br />
160<br />
140<br />
120<br />
100<br />
80<br />
60<br />
40<br />
20<br />
0.95 1.05 1.15 1.25<br />
0.90 1.00 1.10 1.20<br />
Abb. 21.7. Verteilung der Spektren für verschiedene Vokaltraktlängen<br />
Die VTLN-Adaption kann zu verschiedenen Zeiten durchgeführt werden.<br />
Die erste naheliegende Idee ist, einen HMM-Erkenner ganz ohne Veränderung<br />
des Signals zu trainieren. Dadurch entstehen automatisch Modelle, die<br />
den Durchschnitt aller Trainingssprecher widerspiegeln. Vor der Erkennung<br />
einer Äußerung wird diese dann aber VTLN-adaptiert, so daß eventuelle<br />
Abweichungen vom Durchschnitt korrigiert werden. Schon dieses Vorgehen
21.5 Adaptionsmethoden 369<br />
trägt zur Reduktion der Fehlerraten bei (s. Tab. 21.2). Noch besser funktioniert<br />
das Verfahren allerdings, wenn es auch beim Trainieren verwendet<br />
wird. Denn der Effekt dabei ist eine zusätzliche Varianzverkleinerung der<br />
Modelle, da die Signale vor dem Training normiert werden. Experimente<br />
auf den Switchboard und Call-Home Benchmark Datenbasen ergaben<br />
Fehlerreduktionen von ca. 10% durch den Einsatz von VTLN-Adaption.<br />
VTLN im VTLN im<br />
Training Test Switchboard Call Home<br />
33.9% 46.7%<br />
× 33.0% 43.4%<br />
× × 31.3% 40.1%<br />
Tabelle 21.2. Wortfehlerraten mit und ohne VTLN
22. Künstliche Neuronale Netze<br />
Künstliche neuronale Netze haben mehrere Phasen ihrer Hochkonjunktur<br />
erlebt. Mit der Definition des McCulloch-Pitts-Neurons 1943 [?] wurde<br />
der Versuch unternommen, das Verhalten von neuronalen Systemen wie<br />
z.B. Gehirne mathematisch erfaßbar und beschreibbar zu machen. Als<br />
1962 Frank Rosenblatt ein Trainingsverfahren für eine bestimmte Art<br />
künstlicher neuronaler Netze (sogenannte Perzeptronen) vorstellte, wurden<br />
Hoffnungen geweckt, daß schon bald komplizierteste Probleme allein dadurch<br />
gelöst werden könnten, daß man einem künstlichen neuronalen Netz Trainingsmuster<br />
zusammen mit ihren erwarteten Ausgabemustern präsentiert<br />
und das Netz von ganz allein lernt, wie die ihm gestellte Aufgabe zu lösen ist.<br />
In einem abwertenden Artikel von Minsky und Papert [?] wurde das<br />
Perzeptron für untauglich erklärt, da es noch nicht einmal in der Lage war,<br />
das einfache XOR-Problem zu lösen. Obwohl schon damals klar war, daß<br />
das einfache Perzeptron sowieso nicht für die Lösung komplizierter Probleme<br />
herangezogen werden könnte, hatte der Artikel von Minsky und Papert eine<br />
dämpfende Wirkung auf die Weiterentwicklung der künstlichen neuronalen<br />
Netze. Mangelnde Erfolge in der Forschung auf dem Gebiet taten ihr weiteres<br />
um das hochgehandelte Thema für ein gutes Jahrzehnt abzukühlen.<br />
Erst Anfang bis Mitte der achtziger Jahre sorgten einige Arbeiten mit<br />
neuronalen Netzen für Aufsehen. Relativ schwierig empfundene Klassifikationsaufgaben<br />
wurden mit Hilfe künstlicher neuronaler Netze überraschend<br />
gut gelöst. Besonders spektakulär war zum Beispiel das System von Terrence<br />
Sejnowski [?], ein einfaches mehrschichtiges Perzeptron, das lernte, bei<br />
gegebenen sieben aufeinanderfolgenden Buchstaben, die dazu passende<br />
Aussprache im amerikanischen Englisch auszugeben. Wurde die Ausgabe des<br />
Netzes in damals schon vorhandene Sprachsynthesegeräte geleitet, konnte<br />
der Zuhörer den Lernvorgang mitverfolgen und beeindruckt miterleben,<br />
wie die Qualität der Aussprache sich mit jeder Trainingsiteration verbesserte.<br />
Ab Mitte der Achtziger wurden vermehrt künstliche neuronale Netze<br />
zum Zwecke der Spracherkennung eingesetzt. Anfangs wurden vor allem<br />
Phonemklassifikatoren gebaut, die mit sauber artikulierten und detailgenau
372 22. Künstliche Neuronale Netze<br />
ausgeschnittenen Aufnahmen einzelner Phoneme oder Diphone trainiert<br />
wurden.<br />
Der Einfachheit halber werden wir ab jetzt das Adjektiv ” künstlich“ im<br />
Zusammenhang mit neuronalen Netzen weglassen, weil wir uns nicht für die<br />
Funktionalität biologischer neuronaler Netze interessieren und auch nicht<br />
auf solche Netze eingehen werden. In diesem Kapitel wird die Einführung in<br />
die Arbeitsweise und das Training von neuronalen Netzen nicht ausführlich<br />
behandelt. Der interessierte Leser möge sich aus einem Fachbuch zu diesem<br />
Thema informieren. Wir wollen uns hier auf die Anwendung neuronaler<br />
Netze in der Spracherkennung konzentrieren, und nur soweit in die Theorie<br />
eindringen, wie dies für die hier beschriebenen Netze und Aufgaben sinnvoll<br />
ist.<br />
22.1 Probleme reiner HMM-Erkenner<br />
Die Standardmethode für das Trainieren von Hidden Markov Erkennern<br />
besteht aus den Baum-Welch Optimierungsregeln und dem Expectation Maximization<br />
Algorithmus zur iterativen Optimierung von Mischverteilungen.<br />
Beide Prinzipien basieren auf dem Auswerten von ” positiven Beispielen“.<br />
Dabei wird nur die Zugehörigkeit eines Musters zu einer Klasse aber nicht<br />
die Nichtzugehörigkeit zu anderen Klassen explizit berücksichtigt. Zwar gibt<br />
es auch für das Optimieren von HMM Erkennern diskriminative Verfahren<br />
(z.B. das Korrektive Training, Abs. 13.3.1), aber für neuronale Netze sind<br />
diskriminative Verfahren meist die geeignetste Trainingsmethode.<br />
Die Praxis hat außerdem gezeigt, daß viele Klassifikationsaufgaben mit<br />
Hilfe von neuronalen Netzen mit deutlich weniger Parametern bewältigt<br />
werden können als mit maximum-likelihood-basierten Klassifikatoren. Ein<br />
Maximum-Likelihood Klassifikator muß für jede Klasse C die klassenbedingte<br />
Wahrscheinlichkeit(-sdichte) P(x|C) über dem Merkmalsraum lernen.<br />
Dies geschieht für jede Klasse unabhängig von den anderen Klassen und<br />
unabhängig von der A-Priori-Wahrscheinlichkeit der Klasse. Zu dem Zeitpunkt,<br />
an dem der Maximum-Likelihood Klassifikator seine klassenbedingten<br />
Wahrscheinlichkeitsfunktionen schätzen muß, kann er noch nicht absehen,<br />
welche Details dieser Funktion wichtig sind und welche weniger wichtig sind.<br />
Abbildung 22.1 veranschaulicht den Mehrbedarf an Parametern für einen<br />
Maximum-Likelihood Klassifikator gegenüber einem Maximum-A-Posteriori<br />
Klassifikator. Der letztere berechnet P(C|x) und berücksichtigt dabei den<br />
Zusammenhang aller Klassen. Ein neuronales Netz, das diese a-posteriori<br />
Wahrscheinlichkeiten schätzen soll, muß nur eine einfache Näherung an das
p(x|A)<br />
22.2 Architekturen 373<br />
p(x|B) 1 p(A|x) p(B|x)<br />
Abb. 22.1. Maximum Likelihood und Maximum A-Posteriori Klassifikatoren<br />
tatsächliche P(C|x) berechnen, wofür weniger Parameter benötigt werden als<br />
für das Schätzen der wesentlich komplizierteren Kontur der klassenbedingten<br />
Wahrscheinlichkeitsfunktionen.<br />
Es wurden auch Versuche unternommen, neuronalen Netzen das Simulieren<br />
von Maximum-Likelihood Schätzern beizubringen (z.B. [?] [?]), die dabei<br />
verwendeten Trainingsalgorithmen erinnern aber an Standard stochastische<br />
Schätzer.<br />
22.2 Architekturen<br />
Je nach der Aufgabe, für die die neuronalen Netze eingesetzt werden<br />
sind verschiedene Architekturen sinnvoll. Werden sie als Berechner von<br />
Emissionswahrscheinlichkeiten verwendet, so sind mehrschichtige Perzeptronen<br />
ohne besondere Berücksichtigung der Dynamik eine gute Wahl. Die<br />
Aufgabe solcher Netze ist schließlich keine Klassifikationsaufgabe sondern<br />
die Approximation einer Dichtefunktion.<br />
Netze, die Entscheidungen treffen, arbeiten besser, wenn sie diese in<br />
Abhängigkeit von zuvor gemachten Entscheidungen treffen können, wenn sie<br />
also einen größeren zeitlichen Kontext verwenden. Solche Netze, die zuvor<br />
gewonnene Informationen für spätere Entscheidungen verwenden heißen<br />
rekurrente Netze.<br />
22.2.1 Netze zur Klassifikation<br />
In den Anfängen der Spracherkennung bestanden viele Forschungsaufgaben<br />
aus der Klassifikation von Lauten – meist einzelne Phoneme oder der so<br />
genannen BDG- bzw. BDGPTK-Task, bei der es um die Klassifikation der
374 22. Künstliche Neuronale Netze<br />
Plosivlaute b, d, g, p, t, k mit jeweils nachfolgendem englischen ” ee“-Laut<br />
ging. Da die Aufnahmen für solche Spracheinheiten relativ kurz waren, war<br />
es üblich, diese als ganzes auf die Eingabeneuronen eines mehrschichtigen<br />
Perzeptrons (engl. multi-layer perceptron MLP) zu legen. So gelang es unter<br />
günstigen Bedinungen (ein Sprecher, geräuschfreie Umgebung, saubere<br />
und exakt geschnittene Aufnahmen) relativ gute Klassifikationsraten zu erzielen<br />
(z.B. [?] [?]). Es stellte sich allerdings recht schnell heraus, daß einfache<br />
MLPs nicht geeignet waren um damit Laute unter ungünstigen Bedingungen<br />
oder gar kontinuierlich gesprochene Sprache zu erkennen. Im Laufe<br />
der Zeit wurden vermehrt komplexere Achitekturen als MLPs verwendet um<br />
die speziellen Eigenheiten gesprochener Sprache zu berücksichtigen. Einfache<br />
MLP-Klassifikatoren werden aber bis heute noch verwendet, um damit Teilaufgaben<br />
der Spracherkennung zu lösen, wie z.B. die Erkennung bestimmter<br />
Umstände (Sprechermerkmale, akustische Umgebung o.ä.) welche dann zu<br />
Steuerung des Erkennungsprozesses weiterverwendet werden.<br />
22.2.2 Elman-Netze und Jordan-Netze<br />
Ein häufiger Kritikpunkt an der Verwendung von neuronalen Netzen zur<br />
Erkennung von Sprache ist die Tatsache, daß ein ” reguläres“ MLP eine in<br />
dem Sinne statische Ausgabe produziert, daß diese nur von einem statischen<br />
Eingabefenster abhängt und nicht vom Zeitlichen Verlauf der Eingabemuster.<br />
Während Hidden Markov Modelle in der Lage sind, die Dynamik der<br />
Sprache durch ihre Zustandsfolgen zu modellieren, fehlt diese Fähigkeit<br />
bei gewöhnlichen MLPs. Ein Ansatz, der sich bis heute bei den erfolgreich<br />
verwendeten konnektionistischen Spracherkennern gehalten hat, besteht<br />
darin, daß die ” Entscheidung“, die das Netz trifft, davon abhängig gemacht<br />
wird, welche Entscheidung es einen oder einige Zeittakte zuvor getroffen<br />
hat. Dadurch wird eine Kontextabhängigkeit in den Entscheidungsprozeß<br />
eingebaut, die dafür sorgt, daß nicht zu jedem Muster ein ganz bestimmtes<br />
Klassifikationsergebnis nur durch die Netzgewichte definiert ist, sondern daß<br />
auch das vorherige Klassifikationsergebnis eine Rolle spielt.<br />
Die beiden naheliegenden Netzwerkarchitekturen werden als Elman-Netze<br />
und Jordan-Netze (s. Abb. 22.2). Bei Jordan-Netzen werden Ausgänge des<br />
Netzes wieder als Teil der Eingabe verwendet. Das heißt der Kontext wird<br />
durch die vorherige Klassifikation definiert. Bei Elman-Netzen werden die<br />
Ausgaben einiger Neuronen der versteckten Schichten wieder als Eingabe<br />
verwendet.
Jordan Elman<br />
22.2 Architekturen 375<br />
Eingabemuster Kontext Eingabemuster Kontext<br />
Abb. 22.2. Rekurrentes Neuronales Netz nach Jordan und Elman<br />
22.2.3 LVQ – Learning Vector Quantization<br />
Auf den ersten Blick erscheint die Einordnung des Learning Vector Quantisation<br />
Verfahrens in den Bereich der Neuronalen Netze als irgendwie<br />
unmotiviert. Tatsächlich ist der im folgenden vorgestellte LVQ-Algorithmus<br />
mit denen, die für das Trainieren und die Funktion von Perzeptronen<br />
verwendet werden, durchaus in vielen Bereichen vergleichbar.<br />
Die Idee hinter dem LVQ liegt darin, daß Referenzvektoren, die bestimmte<br />
Klassen repräsentieren, iterativ im Merkmalsraum verschoben werden.<br />
Das Ziel, das dabei verfolgt wird, ist den durchschnittlichen (euklidischen<br />
oder anderen) Abstand der Trainingsmuster zu ihrem entsprechenden<br />
Referenzvektoren zu minimieren. Der einfache LVQ-Algorithmus sieht wie<br />
folgt aus:<br />
1. gegeben: die Anhahl k der Klassen,<br />
und die Menge der Trainingsmuster v1, v2, . . . vT<br />
2. initialisiere beliebige k Referenzvektoren µ1, µ2, . . . µk,<br />
z.B. durch µi = vi<br />
3. ordne jedem Trainingsmuster vi den Repräsentanten<br />
µ f(i) seiner Klasse zu<br />
4. bewege µ f(i) ein wenig in Richtung vi,<br />
also µ ′ f(i) = µ f(i) + t · (vi − µ f(i))<br />
5. wenn Optimierungskriterium noch nicht ausreichend erfüllt,<br />
gehe zu Schritt 3
376 22. Künstliche Neuronale Netze<br />
Eine Variation des LVQ-Algorithmus ist die Erweiterung zu einem diskriminativen<br />
Lernverfahren. Dabei wird der Schritt 3 des obigen Algorithmus<br />
dahingehend erweitert, daß neben der Bestimmung der Klassenzugehörigkeit<br />
f(i) auch eine Klasse g(i) bestimmt wird, zu der das Trainingsmuster vi<br />
nicht gehört (aber zu der es klassifiziert würde, wenn das LVQ-Verfahren<br />
beendet wäre). Dann wird nicht nur µ f(i) in Richtung von vi bewegt, sondern<br />
auch µ g(i) von vi weg bewegt:<br />
µ ′ f(i) = µ f(i) + t · (vi − µ f(i)) (22.1)<br />
µ ′ g(i) = µ g(i) − t · (vi − µ f(i)) (22.2)<br />
Der um diese Funktionalität erweiterte LVQ-Algorithmus wird auch<br />
LVQ-2-Algorithmus genannt.<br />
In der Praxis kann man sowohl beim einfachen LVQ-Algorithmus als<br />
auch beim LVQ-2 das Problem beobachten, daß einige Ausreißer unter den<br />
Trainingsdaten dazu führen, daß die Verschiebungen bestimmter Referenzvektoren<br />
sehr groß ausfallen und so das ganze Gefüge der Referenzvektoren<br />
(das Codebuch) durcheinander gewürfelt werden kann. Um dies zu vermeiden,<br />
bietet es sich an, den Schritt 3 nur dann auszuführen, wenn das<br />
Trainingsmuster nicht allzu weit weg vom Referenzvektor liegt, also wenn<br />
|µ f(i) − vi| < w. Für den Fall des LVQ-2 bietet es sich sogar an, nur dann<br />
diskriminativ zu trainieren, wenn das Trainingsmuster in einem Fenster um<br />
die Trenngerade zwischen µ f(i) und µ g(i) zu liegen kommt.<br />
Abb. 22.3 illustriert, wie das LVQ-Verfahren als Neuronales Netz<br />
betrachtet werden kann. Das dargestellte Netz hat k Ausgabeneuronen,<br />
die den k Klassen entsprechen. Wenn an die Eingänge das d-dimensionale<br />
Muster vt = (vt1, vt2, . . . vtd) angelegt wird, dann ist die Ausgabe des j-ten<br />
Ausgabeneurons oj = <br />
i vtiwij. Dieser Wert ist genau die Korrelation<br />
zwischen dem angelegten Muster und dem Eingangsgewichtevektor des<br />
j-ten Neurons (w1j, w2j, . . . wdj). D.h. diejenige Klasse wird klassifiziert,<br />
deren Gewichtevektor die größte Korrelation hat. Es ist nun sowohl möglich,<br />
das abgebildete Perzeptron mit Hilfe des Backpropagation Verfahrens zu<br />
trainieren, als auch mit Hilfe des LVQ Verfahrens, wenn man lediglich die<br />
Eingabegewichte des j-ten Ausgangsneurons mit dem j-ten Referenzvektor<br />
des obigen LVQ-Algorithmus gleich setzt. Die Klassifikation selbst verwendet<br />
dann nicht den euklidischen sondern den Korrelationsabstand.<br />
Einige erfolgreiche Einsätze von LVQ in der Spracherkennung wurden<br />
z.B. in [?] [?] vorgestellt. Dabei wurden auf Hidden Markov Modellen
o1 . . . oj . . .<br />
vt1 . . . vti . . . vtd<br />
Abb. 22.3. LVQ-Algorithmus als Neuronales Netz<br />
ok<br />
22.2 Architekturen 377<br />
basierende Erkenner verwendet, bei denen die Emissionswahrscheinlichkeiten<br />
mit Hilfe eines LVQ-Netzes für jedes von drei Segmenten eines Phonems<br />
berechnet wurden. Die sprecherabhängigen Erkennungsraten lagen auf<br />
dem damaligen ” Conference Registration“ Benchmark in vergleichbaren<br />
Regionen wie die von auf Gauß-Mischverteilungen basierenden Erkennern.<br />
Bei sprecherunabhängiger Erkennung waren die Ergebnisse deutlich besser<br />
als mit vergleichbaren auf LPNNs basierenden Erkennern, jedoch konnten sie<br />
nicht an die von kontextabhängigen Gauß-Mischverteilungen heranreichen.<br />
22.2.4 Kohonens selbstorganisierende Karten<br />
Betrachtet man Sprachsignale aber auch andere Mustererkennungsaufgaben,<br />
so stellt man sich bald die Frage, wie man am geeignetsten den oft sehr<br />
hochdimensionalen Merkmalsraum umgestalten kann, ja sogar die Frage, wie<br />
hochdimensional der Merkmalsraum ” in Wirklichkeit“ ist, bzw. auf einen<br />
wie kleindimensionalen Raum man ihn schrumpfen lassen könnte. Nun sind<br />
rohe diskrete Sprachsignale per se eindimensional, allerdings werden einzelne<br />
Abtastwerte daraus nie für die Erkennung direkt verwendet. Kohonens selbst<br />
organisierende Karten (engl. Kohonen maps oder Kononen’s self organizing<br />
maps) sind neuronale Netze, die zum Ziel haben, einen hochdimensionalen<br />
Merkmalsraum so auf einen niedrigdimensionalen abzubilden, daß durch<br />
die Abbildung sowohl eine Klassifikation durchgeführt wird, als auch daß<br />
eine Ähnlichkeits- bzw. Nachbarschaftsbeziehung im Ursprungsraum auf<br />
eine Nachbarschaftsbeziehung im Zielraum abgebildet wird. Das heißt, daß<br />
tendenziell für drei Punkte X1, X2, X3 mit |X1 − X2| < |X1 − X3| nach der<br />
Abbildung f auf den Zielraum gilt |f(X1) − f(X2)| < |f(X1) − f(X3)|. Dies<br />
kann per definitionem nicht grundsätzlich in jedem Fall erreicht werden.<br />
Wenn man aber davon ausgeht, daß der Ursprungsraum nicht gleichförmig<br />
gefüllt ist, sondern die Daten darin eine gewisse Struktur haben, und daß die<br />
Dimensionalität des Zielraumes nicht zu niedrig ist, so kann ein relativ großer<br />
Anteil der Nachbarschaftsbeziehung durch die Abbildung aufrechterhalten<br />
wij
378 22. Künstliche Neuronale Netze<br />
werden.<br />
Der Algorithmus zum Erzeugen eines Kohonen-Netzwerkes sieht wie<br />
folgt aus:<br />
1. erzeuge eine Menge (eine ” Schicht“) von Neuronen Ei mit<br />
Nachbarschaftsbeziehung. z.B. eine zweidimensionales Gitter<br />
mit City-Block-Nachbarschaft, oder ein Wabenmuster etc.<br />
bezeichne N(m, n) die ” Nähe“ zweier Neuronen Em und En (z.B.<br />
1.0 für m = n und 0.0 für zwei Neuronen an entgegengesetzten<br />
Ecken der ” Schicht“)<br />
2. erzeuge für jede Dimension j = 1 . . .d des Ursprungsmerkmalsraums<br />
ein Eingabeneuron Ej, verbinde jedes Eingabeneuron mit<br />
jedem Schicht-Neuron i über das zufällig initialisierte Gewicht<br />
wji<br />
3. für die Eingabe X = (x1, x2, . . .xd) ist die Ausgabe des Neurons<br />
o(Ei) = |(w1i, . . . wdi) − (x1, . . . xd)|<br />
4. Trainingsphase<br />
a) wähle zur Eingabe X<br />
gezeichneten Knoten<br />
=<br />
i<br />
(x1, x2, . . .xd) den aus-<br />
∗ , dessen Gewichtevektor<br />
Wi∗ = (w1i∗, w2i∗, . . . wdi∗) am nächsten zu X liegt, also:<br />
|Wi∗ − X| ≤ |Wi − X|∀i<br />
b) verändere jedes Gewicht wji um einen Werte δji<br />
mit δji = α · N(i, i ∗ ) · (xj − wji)<br />
Die Klassifikation mit so einem Netzwerk geschieht genau so wie bei der<br />
Auswahl des i ∗ im Schritt 4a des obigen Trainingsalgorithmus. Man beachte,<br />
daß hier i ∗ eine zunächst einmal abstrakte Klasse ist, der man ohne weitere<br />
Analyse keinen konkreten ” Namen“ geben kann. Es ist allerdings so, daß<br />
durch den Faktor N(i, i ∗ ) bei der Anpassung der Gewichte benachbarte<br />
Neuronen ähnlich behandelt werden. Dies führt zwangsläufig dazu, daß<br />
benachbarte Neuronen auch ein ähnliches Reaktionsmuster an den Tag legen.<br />
Verwenden wir ein Kohonen-Netz zur Klassifikation von Sprachlauten,<br />
und protokollieren wir für einige bekannte Trainingslaute, welches Neuron<br />
jeweils das i ∗ ist, beziehungsweise bestimmen wir für jedes Neuron, bei
22.2 Architekturen 379<br />
welchem Laut/Phon es die größte Ausgabe produziert, dann ergibt sich ein<br />
” Karte“ der Laute, die zum Beispiel so aussehen kann wie in Abb. 22.4.<br />
a a<br />
o<br />
l<br />
.<br />
o<br />
o<br />
l<br />
o<br />
o<br />
.<br />
a<br />
o<br />
u<br />
a<br />
a<br />
u<br />
u<br />
a h<br />
a<br />
v<br />
h<br />
h<br />
v<br />
v<br />
h<br />
r<br />
r<br />
r<br />
œ<br />
r<br />
v vn<br />
tk<br />
p<br />
k<br />
œ<br />
m<br />
d<br />
œ<br />
r<br />
n<br />
p<br />
. . v k pt t p t p h # #<br />
Abb. 22.4. Kohonens selbstorganisierende Karte<br />
ah<br />
a<br />
Das Netz versucht also so gut wie möglich ähnliche Laute in ähnliche<br />
Gebiete der Netzschicht zu positionieren. Beim hier abgebildeten Netz<br />
wurde eine zweidimensionale Wabenstruktur als Nachbarschaftsbeziehung<br />
verwendet. Das Gebiet am oberen linken Rand der Schicht spricht vor<br />
allem bei A- und O-ähnlichen Lauten an, rechts unten finden sich vor allem<br />
verschiedene Konsonanten.<br />
Neben der Klassifikation eines einzelnen Lautes kann man mit Hilfe von<br />
Kohonen-Netzen auch kontinuierliche Sprache erkennen. Verwendet man zum<br />
Beispiel als Merkmale Kurzzeitspektren X1, . . . Xt für die Zeitpunkte 1 . . .t,<br />
und bestimmt zu jedem Zeitpunkt das Neuron mit maximaler Ausgabe.<br />
Diese Neuronen ergeben schließlich einen Pfad durch den Zielraum, anhand<br />
dessen ein Wort erkannt werden kann. Ein Beispiel dafür ist in Abb. 22.5 zu<br />
sehen, bei dem Teuvo Kohonen persönlich das finnische Wort ” humppila“<br />
gesprochen hatte.<br />
22.2.5 MS-TDNNs<br />
Eine in der Spracherkennung beliebte Architektur zur Berücksichtigung<br />
dynamischer Eigenschaften der Sprache ist das so genannten Time Delay<br />
Neural Net (TDNN). Die Dynamik geht auf zwei Arten in die Klassifikation<br />
ein, einmal in Form eines Fensters, das einen größeren Zeitlichen Kontext<br />
des Signals überdeckt und somit mehr als nur ein Kurzzeitspektrum als<br />
l<br />
n<br />
d<br />
f<br />
g<br />
n<br />
p<br />
f<br />
n<br />
t<br />
f<br />
g<br />
h<br />
p<br />
y<br />
n<br />
r<br />
e<br />
y<br />
hj<br />
r<br />
y<br />
j<br />
h<br />
e<br />
j<br />
j<br />
k<br />
j<br />
i<br />
hi<br />
e<br />
i<br />
j<br />
#<br />
i<br />
i<br />
j
380 22. Künstliche Neuronale Netze<br />
u<br />
a<br />
l<br />
h<br />
Abb. 22.5. Typische Folge aktivster Neuronen für das finnische Wort ” humppila“<br />
Eingabe in das Netz liefert, und darüber hinaus über die Definition der<br />
Netzwerkgewichte.<br />
Das erstmals in [?] [?] für die Spracherkennung verwendete TDNN<br />
ist in Abb. 22.6 dargestellt. Das Netz wurde verwendet um die isoliert<br />
gesprochenen Phoneme b, d, und g zu erkennen. Das Sprachsignal wurde<br />
zu 15 Vektoren (ein Vektor alle 10ms) zu je 16 Mel-Spektralkoeffizienten<br />
verarbeitet. Als Eingabeschicht wird ein Feld von 3 × 16 Neuronen als 30ms<br />
breites Fenster über die Aufnahme ” geschoben“. Über der Eingabeschicht<br />
ist die Verdeckte Schicht mit 8 Neuronen. Zwischen der Eingabe- und der<br />
verdeckten Schicht befinden sich drei verschiedene 16x8 große Gewichtematrizen.<br />
Jede enthält die Gewichte für eine andere Zeittaktverschiebung<br />
(Time Delay). Die Eingabe in ein Neuron der verdeckten Schicht in Abb.<br />
22.7 abgebildet. Für jedes Eingabeneuron ui gibt es n Zeitverzögerungen<br />
mit eigener Gewichtung. Diese Gewichtungen sind so angeordnet, daß die<br />
Gewichte für verschiedene Neuronen der verdeckten Schicht mit gleicher<br />
Zeitverzögerung miteinander gekoppelt sind.<br />
Die TDNNs haben eine zufriedenstellende Leistung bei der Erkennung<br />
isoliert gesprochener Phoneme. Für kontinuierliche Sprache sind sie jedoch<br />
nicht geeignet. Dafür wurden sie in [?] zu so genannten Multi-State Time<br />
Delay Neural Nets (MS-TDNNs) weiterentwickelt. Die MS-TDNNs sind eine<br />
Mischung zwischen Konnektionistischen Ansätzen und Hidden Markov Modellen.<br />
Dabei wird von den HMMs die Idee der Zustände, Zustandsübergänge<br />
und des Dekodierungsproblems übernommen, von den neuronalen Netzen<br />
werde die diskriminative Art des Trainings und die ” feed-forward“-basierte<br />
Art der Berechnung der Emissionswahrscheinlichkeiten übernommen.<br />
Bis zur Ebene der Phonemschicht sind TDNNs und MS-TDNNs gleich.<br />
Beide implementieren eine Phonemschicht, bei der jedem zu erkennenden<br />
p<br />
m<br />
i
g<br />
d<br />
b<br />
b d g<br />
Integration über die Zeit<br />
Phonemschicht<br />
3 Neuronen<br />
22.2 Architekturen 381<br />
versteckte Schicht<br />
8 Neuronen<br />
Eingabeschicht16 Mel-Koeffizienten<br />
15 Zeittakte<br />
Abb. 22.6. Time Delay Neural Network (TDNN) zur Erkennung von b, d, und g<br />
Phonem eine Reihe von Aktivierungswerten eines Neurons zugeordnet wird.<br />
Während bei TDNNs diese Aktivierungswerte über die Zeit aufsummiert werden<br />
sie bei MS-TDNNs als Ersatz für Emissionswahrscheinlichkeiten bzw.<br />
für lokale Distanzen in einem DTW-Algorithmus verwendet. Als reines neuronales<br />
Netz betrachtet, besitzt das MSTDNN einen (oder mehrere) Wortschichten<br />
über der Phonemschicht. Jedes Wort ist eine Konkatenation von<br />
Phonemen, durch die wie beim Viterbi- beziehungsweise DTW-Algorithmus<br />
die wahrscheinlichste Folge beziehungsweise diejenige mit der geringsten kumulativen<br />
Distanz gesucht (s. Abb. 22.8).
382 22. Künstliche Neuronale Netze<br />
wi<br />
wi+1<br />
d1 . . .<br />
ui<br />
dn<br />
wi+n<br />
Abb. 22.7. Ein Time Delay Neuron<br />
22.2.6 LPNNs<br />
<br />
. . . . . .<br />
wj<br />
wj+1<br />
d1 . . .<br />
uj<br />
dn<br />
wj+n<br />
Linked Predictive Neural Nets (LPNNs) wurden vor allem Anfang der<br />
Neunziger eingesetzt [?] [?]. Die Idee hinter diesen Netzen ist das Berechnen<br />
der Emissionswahrscheinlichkeiten durch Vorhersagenetzwerke. Dabei wird<br />
für jedes Modell ein Vorhersagenetzwerk (in der Regel ein einfaches mehrschichtiges<br />
Perzeptron) trainiert, das bei der Eingabe eines oder mehrerer<br />
Merkmalsvektoren einen anderen ” vorhersagen“ muß. Hierbei bedeutet Vorhersage<br />
nicht unbedingt Blick in die Zukunft. Eine ” Vorhersage“ des Vektors<br />
Xt zum Zeitpunkt t aus den Merkmalen Xt−1 und Xt+1 ist genauso denkbar<br />
und wurde auch in(engl. multi-layer perceptron MLP) der Tat verwendet.<br />
Das erwartete Verhalten dieser Vorhersagenetzwerke wird damit begründet,<br />
daß jedes Netzwerk seine Vorhersagefunktion nur auf Daten der ihm<br />
entsprechenden Modelle trainiert. Nun kann man davon ausgehen, daß die<br />
Qualität der Vorhersage, also die Nähe zum tatsächlichen Merkmalsvektor,<br />
für ein Netz, das mit A-Lauten trainiert wurde, besser ist, wenn es auf<br />
A-Lauten getestet wird, als wenn es auf B-Lauten getestet wird.<br />
Der kontinuierliche Spracherkenner selbst kann nur auf Basis der Baum-<br />
Welch Trainingsalgorithmen für Hidden Markov Modelle gebaut werden,<br />
lediglich die Emissionswahrscheinlichkeiten werden nicht wie zumeist mit<br />
Gauß-Mischverteilungen, sondern mit der Vorhersagequalität der Vorhersagenetze<br />
berechnet. In Abb. 22.9 ist der Zustand dargestellt, in dem sich<br />
der Erkenner zum Zeitpunkt t befindet. Die Größe der schwarzen Kreise in<br />
der DP-Matrix entspricht den Werten der Emissionswahrscheinlichkeiten<br />
beziehungsweise der Qualität der Vorhersage von Xt aus Xt−2 und Xt−1 für
Wn<br />
.<br />
.<br />
.<br />
W2<br />
W1<br />
Wn<br />
W2<br />
W1<br />
Abb. 22.8. Multi-State TDNN für die Wörter W1, . . . Wn<br />
22.2 Architekturen 383<br />
jedes der vier Vorhersagenetzwerke. Am besten paßt hier die Vorhersage des<br />
a2-Netzes. Die Wahrscheinlichkeit dafür, daß das Wort ” BAB“ gesprochen<br />
wurde, läßt sich dann aus der Summe der Emissionswahrscheinlichkeiten<br />
auf dem DTW-Pfad schätzen. Für andere Wörter würde die y-Achse der<br />
DP-Matrix eine andere Folge der Vorhersagenetze zusammengestellt werden.<br />
Die Ergebnisse beim Einsatz so gebauter Spracherkenner waren für<br />
sprecherabhängige Erkennung durchaus beachtlich. Die Fehlerraten für einen<br />
einzelnen Sprechern auf dem ” Conference Registration“ Benchmark lagen<br />
im einstelligen Prozentbereich.<br />
Pn<br />
P4<br />
P3<br />
P2<br />
P1
384 22. Künstliche Neuronale Netze<br />
BAB<br />
b1<br />
b2 a1<br />
a2<br />
b b b b a a a a a b b b b b<br />
Abb. 22.9. Linked Predictive Neural Networks für kontinuierliche Spracherken-<br />
nung<br />
22.2.7 Hierarchische Mixturen von Experten<br />
Die Feststellung, daß automatische Spracherkennung nicht nur aus Sicht des<br />
Sprachmodells, sondern auch aus Sicht des akustischen Modells abhängig<br />
von der Einsatzdomäne ist, und daß die Portierbarkeit und Skalierbarkeit<br />
über verschiedene Erkennungsaufgaben hinweg unzureichend ist, diente als<br />
Motivation zur Entwicklung von Hierarchischen Mixturen von Experten<br />
(HME) für das akustische Modell von Spracherkennern. Diese bilden die<br />
ideale Voraussetzung für eine leichte Skalierung der Parameterraumgröße<br />
durch entsprechende Wahl der Zahl der Hierarchieebenen [?]. Je mehr<br />
Hierarchieebenen verwendet werden, umso feiner gestaltet sich das akustische<br />
Modell. Bei Bedarf (Portierung auf andere Aufgaben oder andere<br />
Erkennungsumgebungen) kann die Zahl der Ebenen auch reduziert werden<br />
und so eine Version des Parameterraums verwendet werden, die weniger<br />
spezifisch und dafür mehr generalisierungsfähig ist. Mehr noch: in ein und<br />
derselben Hierarchie können verschiedene Parameterräume für verschiedene<br />
Zwecke integriert sein, und bei Bedarf mehr der eine oder mehr der andere<br />
Parameterraum verwendet werden.<br />
Die Idee hinter hierarchischen Mixturen von Experten ist die Modularisierung.<br />
Alle Parameter werden in einer Baumstruktur angelegt. Jeder<br />
Baumknoten beschreibt einen Teil des Merkmalsraums (zum Beispiel ein<br />
Phonem). Wenn dieser Teil der Raumes ausreichend genau beschrieben<br />
ist, oder sowieso nur wenige Trainingsbeispiele hat, ist es sinnvoll diesen<br />
Knoten als Blattknoten zu verwenden. Wenn aber der Raum groß ist, viele<br />
Trainingsdaten hat und diese auch noch eine große Varianz haben, dann<br />
t
22.2 Architekturen 385<br />
lohnt es sich, den Knoten ähnlich wie bei der divisiven Ballung (vgl. Abs.<br />
17.2.4) in zwei Unterknoten aufzutrennen. Die Auftrennung kann dann zum<br />
Beispiel zwei verschiedene Kontexte oder Kontextklassen erzeugen, sie kann<br />
aber auch dasselbe Modell auf zwei verschiedene Arten modellieren (zum<br />
Beispiel einmal mit Gauß-Mischverteilungen und einmal mit mehrschichtigen<br />
Perzeptronen). Die Auswahl des passenden Teilmodells oder der besseren<br />
Modellierungsart geschieht dann durch ein so genanntes Gate. Diese muß die<br />
Auswahl nicht digital treffen, viel besser ist eine von der aktuellen Situation<br />
und vom aktuell vorliegenden Signal abhängige Gewichtung der beiden<br />
Unterknoten. Das Resultat einer hierarchischen Mixtur von Experten ist in<br />
Abb. 22.10 skizziert.<br />
Gatingnetzwerk<br />
1<br />
x<br />
g11<br />
Expertennetzwerk<br />
1.1<br />
µ1<br />
Knoten 0<br />
µ<br />
<br />
g2<br />
g1<br />
µ2 <br />
Knoten 1 Knoten 2<br />
g12<br />
g21<br />
Gatingnetzwerk<br />
0<br />
g22<br />
Gatingnetzwerk<br />
2<br />
µ11 µ12 µ21<br />
µ22<br />
Experten- Experten- Expertennetzwerk<br />
1.2 netzwerk 2.1 netzwerk 2.2<br />
x x<br />
x x<br />
Abb. 22.10. Hierarchische Mixtur von Experten<br />
Die dargestellt Mixtur berechnet die Emissionswahrscheinlichkeit<br />
oder einen entsprechend umrechenbaren Bewertungsterm µ für einen<br />
HMM-Zustand. Dafür werden insgesamt vier spezialisierte Modelle (Expertennetzwerke)<br />
eingesetzt. Jeder dieser Experten ist auf einen bestimmten<br />
Aspekt des Modells (bestimmter Teil des Merkmalsraums, bestimmte<br />
Ausprägung des Modells, bestimmte äußere Bedingungen der Aufnahme)<br />
spezialisiert. Die Ausgaben von je zwei Experten werden mit Hilfe eines<br />
Gates gewichtet gemittelt. Sowohl die Experten als auch die Gates können<br />
auf verschiedenste Arten implementiert werden. In Abb. 22.10 sind beide<br />
als Neuronale Netzwerke dargestellt. Die Gating-Netze erhalten als Eingabe<br />
das aktuelle Sprachsignal und berechnen auf dieser Grundlage die<br />
Gating-Gewichte, so daß die Gesamtausgabe der Hierarchie schließlich<br />
x<br />
x
386 22. Künstliche Neuronale Netze<br />
µ = g1µ1 + g2µ2 = g1(g11µ11 + g12µ12) + g2(g21µ21 + g22µ22) ist.<br />
Der besondere Vorteil von Expertenhierarchien gegenüber größeren<br />
Netzwerken, die das Gesamtbild sehen können, besteht in der einfacheren<br />
Trainierbarkeit und Optimierbarkeit der einzelnen Experten. Insbesondere<br />
das diskriminative Trainieren derselben ist umso genauer, je sorgfältiger der<br />
Ausschnitt aus dem Merkmalsraum ausgewählt wird.<br />
00 11<br />
00 11<br />
00 11<br />
00 11<br />
00 11<br />
00 11<br />
00 11<br />
00 11<br />
00 11<br />
00 11<br />
Knoten mit #Muster ≥ c1 (⇒ Adaption)<br />
00 11<br />
Knoten mit #Muster < c0 (⇒ beschneiden)<br />
00 11<br />
00 11<br />
00 11<br />
00 11<br />
00 11<br />
00 11<br />
00 11<br />
00 11<br />
00 11<br />
00 11<br />
00 11<br />
Neue Knoten mit Adaptierten Netzen<br />
00 11<br />
Neue Blattknoten mt gekoppelten Modellen<br />
Abb. 22.11. Domänenadaption mit Hierarchischen Mixturen von Experten
22.2 Architekturen 387<br />
Die Adaption eines HME-Systems an eine neue Domäne geschieht<br />
ausgehend von einem großen detaillierten System das auf einer großen<br />
Menge von Trainingsdaten viele Modelle trainiert wurde (Abb. 22.11 oben).<br />
Zwei in der Regel empirisch zu bestimmende Schwellwerte c0 und c1 legen<br />
fest, mit den einzelnen Knoten bei der Adaption verfahren wird. Wenn<br />
die Zahl der Muster in den Testdaten (den Daten der neuen Domäne)<br />
mindestens c1 ist, so kann man davon ausgehen, daß ausreichend viele Daten<br />
vorhanden sind, um das dem Knoten entsprechende Modell mit Hilfe von<br />
Adaptionsmethoden (s. Kap. 21) auf die neue Domäne einzustellen. Die<br />
Knoten, für die es zwischen c0 und c1 Muster gibt, bleiben unverändert. Für<br />
die Knoten, auf die weniger als c0 Muster entfallen, wird angenommen, daß<br />
sie <strong>Sprachliche</strong> Einheiten modellieren, die nicht typisch für die neue Domäne<br />
sind. Wenn ein Knoten zu dieser Menge gehört, dann offensichtlich auch alle<br />
seine Nachfolgerknoten. Diese können dann aus dem Baum herausgenommen<br />
werden. Letztes bedeutet aber nicht, daß diese Phänomene gar nicht mehr<br />
modelliert werden. Es bedeutet nur, daß alle feiner Aufteilung aufgegeben<br />
wird, und alle seine Blätter zu einem neuen Blatt zusammengefaßt werden<br />
(s. Abb. 22.11 unten).
23. Verstehen von Sprache<br />
In den Anfängen der Spracherkennung waren die erkennbaren Vokabulare<br />
und auch die daraus konstruierbaren Sätze so einfach, daß die Bedeutung<br />
des Gesprochenen durch einfaches Nachsehen in einer zuvor angelegten<br />
Tabelle machbar war. Die ersten ernsthaften und weit verbreiteten Spracherkennungssysteme<br />
mit sehr großen Vokabularen waren Diktiersysteme.<br />
Bei solchen Systemen spielt die Bedeutung des Gesagten aus der Sicht<br />
des Erkenners nur eine untergeordnete bzw. gar keine Rolle. Auch wenn<br />
es möglich ist, die Erkennungsgenauigkeit durch Verstehen zu verbessern,<br />
beschränken sich Diktiersysteme auch heute noch größtenteils lediglich auf<br />
die Ausgabe von Wortfolgen, ohne dabei zu beachten, welchen Sinn diese<br />
haben. Bei Diktieraufgaben ist ein Verstehen auch nicht nötig. Die vom<br />
Benutzer gestellte Aufgabe ist dann erfüllt, wenn die gesprochene Wortfolge<br />
auf dem Bildschirm erscheint.<br />
Bei zahlreichen <strong>Kommunikation</strong>saufgaben ist es nötig, die Bedeutung des<br />
Gesprochenen zu erkennen, und das geht ab einer gewissen Komplexität der<br />
Sprache nicht mehr durch Nachsehen in einfachen Tabellen. Spezielle Algorithmen<br />
sind nötig, um mit Hilfe eines Kommandos ” Robbie, ich habe Durst.“<br />
den Haushaltsroboter dazu zu bewegen, ein Getränk zu holen oder zumindest<br />
die Frage zu stellen, was der Benutzer denn gerne trinken möchte.<br />
23.1 Verstehen gesprochener Sprache<br />
Geschriebene (elektronisch vorliegende) Texte sind aus mancherlei Gründen<br />
einfacher maschinell zu verstehen, als gesprochene Sprache. In der Regel kann<br />
man davon ausgehen, daß Personen, die Texte schreiben, dabei wesentlich<br />
mehr Zeit zum Überlegen und Formulieren von Sätzen haben als wenn sie<br />
spontan sprechen müssen. So sind grammatikalische Fehler in Texten viel<br />
seltener zu finden. Spontane Sprache enthält außerdem zahlreiche Effekte,<br />
die die eigentliche Wortfolge mit viel Ballast (emphatische Pausen, Stotterer,<br />
Wortabbrüche, Geräusche etc.) anreichern. Zusätzlich macht dann noch der<br />
Spracherkenner Fehler, so daß die Wortfolge, deren Sinngehalt verstanden<br />
werden soll, weit mehr von dem abweicht, was der Sprecher sagen wollte, als
390 23. Verstehen von Sprache<br />
wenn er es getippt hätte.<br />
Eine akustische Aufnahme einer Äußerung enthält außerdem keine<br />
Interpunktionszeichen und keine Unterscheidung zwischen Groß- und Kleinschreibung.<br />
Selbst wir <strong>Mensch</strong>en haben mit Texten ohne Interpunktion<br />
Probleme beim Verstehen. All diese Unterschiede zwischen gesprochener und<br />
geschriebener Sprache lassen vermuten, daß das Verstehen von Gesprochenem<br />
wesentlich schwieriger ist.<br />
Dies trifft in der Regel auch zu, insbesondere auch deshalb, weil die<br />
textuelle Darstellung von einem Spracherkenner erzeugt wird, der schon<br />
bei diktierter Sprache und bei spontaner Sprache noch mehr Fehler macht.<br />
Selbst wenn der Erkenner überhaupt keine Fehler machen würde, wäre die<br />
erkannte Sprache so voller störender Artefakte wie abgebrochener Wörter,<br />
lauter Pausen, und die Grammatik genügt fast nie den Regeln der Syntax,<br />
so daß die Analysemethoden für das Verstehen von Texten hier nicht<br />
ausreichend gut funktionieren.<br />
Allerdings hat gesprochene Sprache auch Merkmale, die normalerweise<br />
nur ihr eigen sind, und sich in Texten nicht widerspiegeln. Dazu gehört zum<br />
Beispiel die Prosodie (s.u.), aber auch andere <strong>Kommunikation</strong>smöglichkeiten<br />
wie Gestik, Mimik und Ausdruck von Emotionen. Zumindest die Prosodie<br />
und die emotionale Situation des Sprechers lassen sich im reinen Audiosignal<br />
wiederfinden. Abb. 23.1 zeigt ganz grob, wie ein System, das natürliche<br />
Sprache verstehen soll, aufgebaut ist.<br />
23.2 Prosodie<br />
Prof. Raj Reddy von der Carnegie Mellon University, Pittsburgh, sagte<br />
einmal, daß die Prosodie in der gesprochenen Sprache vergleichbare Bedeutung<br />
habe wie die Zwischenräume in der Schrift. Mit Prosodie wird im<br />
wesentlichen die Melodie und der Rhythmus einer Äußerung bezeichnet.<br />
Die meisten Spracherkenner verwenden zum Erkennen von Wortfolgen keine<br />
zuvor extrahierten prosodischen Informationen. Die in der Aussprache der<br />
selben Wortfolge ohnehin mögliche Variation überwiegt meist die durch die<br />
Melodie aufgesetzte zusätzliche Variation, so daß Spracherkenner in der<br />
Regel keine nennenswerten zusätzlichen Probleme daraus erwachsen, daß<br />
eine Wortfolge einmal als Aussage und einmal als Frage betont werden kann.<br />
In einigen wenigen tonalen Sprachen wie in einigen chinesischen Sprachen<br />
spielt die Melodie innerhalb eines einzelnen Lautes eine Rolle zur Unterscheidung<br />
von Silben und Wörtern. Solche Lautmelodien werden aber nicht<br />
vom Begriff Prosodie subsumiert, sondern lediglich die makroskopischen
Spracherkenner<br />
Wortfolge<br />
(Hypothesengraph)<br />
Analyse<br />
Sinn<br />
prosodische<br />
Merkmale<br />
weitere Detekoren<br />
Emotionserkenner<br />
Prosodie-Detektor<br />
Abb. 23.1. Verstehen gesprochener Sprache<br />
Emotionen<br />
23.2 Prosodie 391<br />
sonstige<br />
Merkmale<br />
satz- beziehungsweise phrasenübergreifende Melodien und Rhythmen.<br />
Zu den wichtigsten, die Prosodie bestimmenden Merkmalen gehören die<br />
folgenden:<br />
• Intonation<br />
Die Intonation (engl. Pitch) ist die Tonhöhe der Grundfrequenz mit der<br />
stimmhafte Laute artikuliert werden. Diese Grundfrequenz wird oft auch<br />
als F0 (wie die nullte Formante) bezeichnet. Sie kann auf verschiedene<br />
Arten bestimmt werden. Eine Möglichkeit ist die Analyse des Cepstrums<br />
(vgl. Abs. 8.3), die Grundfrequenz manifestiert sich dort in einem außergewöhnlich<br />
hohen Ausschlag bei der Quefrenz die der Grundfrequenz<br />
entspricht. Eine andere Möglichkeit besteht darin, die Autokorrelation<br />
auf dem Signal für verschiedene Verschiebungen zu messen. Wenn wir<br />
annehmen, daß die Grundfrequenz F0 Hz ist und daß das diskrete<br />
Sprachsignal s[n] mit einer Abtastrate von r Hz abgetastet wurde, dann<br />
ist davon auszugehen, daß die Autokorrelation <br />
i s[i] · s[i − r/F0] für eine<br />
Verschiebung um r/F0 am größten ausfällt. Auch für Vielfache k · r/F0<br />
dieser Verschiebung sind erhöhte Werte der Autokorrelation zu messen. In<br />
der Praxis ergeben sich für die Messung von F0 einige Probleme, die darin<br />
begründet sind, daß Sprache auch viele nicht stimmhafte Phasen enthält,<br />
daß Rauschen und Störgeräusche verschiedenster Art die Korrelationsmessungen<br />
und Cepstenbestimmung beeinträchtigen, und daß F0 selbst<br />
nicht konstant ist, sondern sich über die Zeit hinweg ändert – wodurch ja
392 23. Verstehen von Sprache<br />
der Beitrag zur Prosodie erst entsteht. Gute F0-Verfolger (Pitch-Tracker)<br />
erreichen korrekte Erkennungsraten in der Größenordnung von ca. 90% [?].<br />
• Pausen<br />
Aus der Dialogforschung weiß man, auch Nichtsprechen kann ein bedeutungstragender<br />
Sprechakt sein. Die Position und Länge von Pausen in<br />
einer Äußerung bestimmen die Prosodie dieser Äußerung mit. Bei nicht<br />
allzu verrauschten Aufnahmen bedarf es in der Regel keiner besonderen<br />
Pause-Detektoren. Alle ausreichend mächtigen Spracherkenner verwenden<br />
ein besonderes Pause- oder Stille-Wort, das von den meisten Instanzen<br />
eines Erkenners wie ein reguläres Wort behandelt wird und als solches<br />
auch in der Erkennerhypothese ausgegeben werden kann.<br />
• Betonung / Lautstärke<br />
Teilweise geht die Betonung eines Teils einer Äußerung einher mit einer<br />
Anhebung der Stimme (Erhöhung von F0). Der andere Weg zur Betonung<br />
ist die Erhöhung der Lautstärke. Auch wenn die empfundene Lautstärke<br />
etwas anderes ist als die Signalenergie, sowohl wegen der unterschiedlichen<br />
Phon und dBA Skalen als auch wegen der Tatsache, daß verschiedene<br />
Laute an sich schon in der unbetonten Version verschiedene typische<br />
Energien haben, so genügt in der Regel die Messung der Signalenergie zur<br />
Bestimmung der Lautstärke.<br />
• Rhythmus<br />
Der Rhythmus einer Äußerung wird durch den Lautstärkeverlauf und<br />
durch die Abfolge von Pausen und Sprache bestimmt. Er beschreibt<br />
mehr als nur eine lokale Betonung oder Hervorhebung sondern umfaßt<br />
weiterreichende die gesamte Äußerung umfassende Eigenschaften.<br />
Die prosodische Analyse einer sprachlichen Äußerung wird in zwei Phasen<br />
durchgeführt. In der ersten Phase werden die oben beschriebenen Merkmale<br />
bestimmt. In der zweiten Phase werden diese Merkmale beziehungsweise die<br />
zeitliche Abfolge dieser Merkmale analysiert und bestimmte Eigenschaften<br />
der Äußerung klassifiziert. Zum Beispiel, ob es sich um eine Frage handelt.<br />
Zu den durch die Prosodie klassifizierbaren Eigenschaften gehören:<br />
• Intention der Äußerung
War die Äußerung eine Aussage, eine Frage<br />
oder ein Befehl? Am einfachsten ist die Frage<br />
von einer gewöhnlichen Aussage zu Unterscheiden,<br />
weil bei Fragen üblicherweise am Ende<br />
die Grundfrequenz F0 angehoben wird. Die<br />
gleiche Wortfolge kann so einmal eine Aussage<br />
sein und einmal eine Frage (siehe nebenstehen-<br />
de Abb.).<br />
F0<br />
23.2 Prosodie 393<br />
” Es regnet.“<br />
F0<br />
” Es regnet?“<br />
Über die Eigenschaften Aussage/Frage hinaus gibt es noch die Unterscheidung<br />
nach Dialogakten, so kann eine Aussage initiativ sein. Ein völlig<br />
unbetontes ” Dieses Auto ist rot.“ dient lediglich der Informationsübermittlung.<br />
Wenn in dem Satz die Betonung auf das Wort ” ist“ gelegt wird,<br />
dann handelt es sich eher um eine Entgegnung beziehungsweise um die<br />
Kundgebung des Nichteinverstandenseins mit einer vorherigen Äußerung<br />
des Dialogpartners.<br />
• Aufmerksamkeitssteuerung<br />
Mit Hilfe der Prosodie kann durch Betonung bestimmter Wörter oder<br />
Phrasen die Aufmerksamkeit der Zuhörer auf diese gelenkt werden.<br />
Dadurch ändert sich zwar nicht die Bedeutung der Äußerung an sich,<br />
aber sehr wohl die Bedeutung der Äußerung oder der betonten Phrase im<br />
Zusammenhang mit den vorhergehenden und nachfolgenden Äußerungen.<br />
Zum Beispiel ist die Betonung des Wortes ” dieses“ im Satz ” Dieses Auto<br />
ist rot.“ als Kontrast zu Aussagen über Farben anderer Autos in früheren<br />
Äußerungen zu sehen, und ergibt erst zusammen mit den vorhergehenden<br />
Äußerungen seinen gesamten Sinn.<br />
• Auflösung von Ambiguitäten<br />
Oft ist die Kontrolle des Rhythmus oder die Positionierung von Pausen<br />
notwendig, um mehrdeutige Aussagen eindeutig zu machen. Da wir<br />
keine Satzzeichen sprechen, kann man aus einer prosodielosen monotonen<br />
Äußerung der Wortfolge ” Montag paßt mir nicht aber Dienstag“ die<br />
Bedeutung nicht zweifelsfrei extrahieren. Diese Worte können nämlich<br />
einmal wie ” Montag paßt mir, nicht aber Dienstag“ und ein anderes Mal<br />
wie ” Montag paßt mir nicht, aber Dienstag“ interpretiert werden. Wenn<br />
wir diesen Satz verständlich artikulieren wollen, müssen wir an der Stelle,<br />
an der in der Schriftform ein Komma steht, eine Pause machen.<br />
• Ausdruck der Emotionslage<br />
In der Prosodie spiegelt sich oft auch die emotionale Lage des Sprecher<br />
wider. Übermäßige Lautstärke, schneller Rhythmus und übertriebene<br />
Betonung sind oft Zeichen für Ärger. Eine betonungsarme leise Sprache
394 23. Verstehen von Sprache<br />
ist eher ein Hinweis auf eine traurige Gemütslage. Das Wissen um den<br />
emotionalen Zustand ist gerade für Dialogsysteme wichtig, die sich auf<br />
den Dialogpartner und seine aktuelle Lage einstellen sollten.<br />
23.3 Parsing<br />
Aus der Programmierung in sogenannten höheren Programmiersprachen ist<br />
der Begriff des Parsers bekannt. Ein Parser (im Deutschen oft auch Zerteiler<br />
genannt) hat die Aufgabe aus einer für <strong>Mensch</strong>en einfach lesbaren Darstellung<br />
eines Programms eine Darstellung zu erzeugen, die für die <strong>Maschine</strong> leichter<br />
zu verarbeiten ist. Der gleiche Begriff wird bei der linguistischen Analyse<br />
sprachlicher Wortfolgen verwendet. In diesem Abschnitt soll keine komplette<br />
Einführung in das Parsing gegeben werden. Dem Leser soll vor allem ein Eindruck<br />
davon vermittelt werden, welche Techniken beim Verstehen natürlicher<br />
Sprache Verwendung finden.<br />
23.3.1 Grammatische Zerteiler<br />
Die allermeisten Zerteilen für natürliche Sprache basieren auf einer im<br />
vergleich zu Programmiersprachen sehr viel größeren Menge an Regeln<br />
(sogenannte Produktionen). Solche Regelwerke lassen sich in eine der Kategorien<br />
” syntaktische Parser“ oder ” semantische Parser“ einordnen. Komplexe<br />
Parser enhtalten aber oft Anteile beider Kategorien. Snytaktische Parser<br />
orientieren sich mehr an den Regeln, wie Wörter zusammengesetzt werden<br />
können, um sinnvolle Sätze zu Bilden. Dabei spielen vor allem grammatische<br />
Konstrukte eine Rolle (s. linke Seite von Abb. 23.2), bei semantischen Parsern<br />
spielt die Anordnung der Wörter bzw. ihre grammatischen Bedeutungen<br />
eine untergeordnete Rolle (s. rechte Seite von Abb. 23.2). Hier kommen vielmehr<br />
semantische Eigenschaften, d.h. die Bedeutung der Wörter zum Tragen.<br />
In der Praxis erweist sich als besonderer Unterschied zwischen syntaktischen<br />
und semantischen Parsern ihre Domänen(un)abhängigkeit.<br />
Syntaktische Parser sind daher eher domänenunabhängig, da sie keine das<br />
Thema der zu analysisrenden Wörter betreffenden Informationen benötigen<br />
oder verarbeiten. Semantische Parser hingegen, können nach dem heutigen<br />
Stand der Technik nur domänenabhängig sein. Wenn, wie in Abb. 23.2<br />
dargestellt, Begriffe wie ” Essenswunsch“ modelliert werden, so is dies ein<br />
so konkretes ereignis, daß dieses in der allgemeinen Sprache nur sehr selten<br />
vorkommt. Eine entsprechende Regel würde z.B. nur sinnvoll als Teil eines<br />
Restaurant-Dialog-Parsers verwendet werden. Ein semantischer Parser für<br />
allgemeine themenunabhängige Sprache würde viel mehr Regeln benötigen
Syntaktischer Parser Semantischer Parser<br />
Nominalphrase Verbalphrase<br />
Nomen Hilfsverb<br />
PETER WILL<br />
Satz<br />
Nominalphrase<br />
Nomen<br />
PUDDING<br />
Verbalphrase<br />
Verbalphrase<br />
Verb<br />
ESSEN<br />
Essenswunsch<br />
Esser Essen<br />
Abb. 23.2. Verschiedene Arten von Zerteilern (Parsern)<br />
PETER PUDDING<br />
23.3 Parsing 395<br />
WILL ESSEN<br />
als in akzeptabler Zeit von <strong>Mensch</strong>en zusammengetragen werden könnten,<br />
er ist also domänenabhängig.<br />
Eines haben alle grammatischen Parser gemeinsam. Sie verarbeiten Terme<br />
und ersetzen Teile dieser Terme durch andere Terme (Termersetzungssystem).<br />
Die Terme befinden sich stets zwsichen zwei extremen, dem Extrem<br />
der ursrpünglichen Darstellung (d.h. der zu parsenden Wortfolge) und der<br />
Darstellung als Interpretation der Wortfolge. Es ist üblich, die Wörter (oder<br />
Symbole) der Wortfolge als ” Terminale“ und die Symbole der Interpretation<br />
als ” Nichtterminale“ zu bezeichnen. Ziel des Parsers ist es stets, eine Folge<br />
von Regelanwendungen zu finden, die eine Darstellung aus dem einen in das<br />
andere Extrem überführen. Man spricht von<br />
23.3.2 Suchstrategien<br />
Ab einer gewissen Komplexität des grammatikalischen Regelwerkes und<br />
der zu verstehenden Wortfolge ist es nicht mehr möglich, alle erlaubten<br />
Folgen von Regelanwendungen auszutesten. Die kombinatorische Explosion<br />
ist einfach zu groß. Es ist also nötig, den Suchraum geeignet zu beschneiden.<br />
Genauso wie bei der Suche nach wahrscheinlichen Zustandsfolgen im Viterbi-<br />
Algorithmus oder nach wahrscheinlichen Wortfolgen im One-Stage Dynamic<br />
Time Warping so kann man auch beim Zerteilen von Wortfolgen einzelnen<br />
Regeln und auch ganzen Folgen von Regeln Wahrscheinlichkeiten zuordnen,<br />
so daß für jede partielle Zerteilung (Parsebaum) eine Wahrscheinlichkeit<br />
(oder zumindest eine entsprechende Bewertung) berechnet werden kann,<br />
die dann als Basis für die Beschneidung des Suchraums dienen kann. Eine
396 23. Verstehen von Sprache<br />
Strahlsuche kann dann entscheiden, welche Parsebäume expandiert werden<br />
sollen und welche verworfen werden.<br />
Ganz abgesehen davon, daß in vielen Fällen Zerteilungen nicht eindeutig<br />
richtig oder falsch sind, kann durch eine Beschneidung des Suchraumes eine<br />
partielle Zerteilung verworfen werden, die wenn sie expandiert worden wäre,<br />
schließlich doch zur besten bzw. wahrscheinlichsten Zerteilung geführt hätte.<br />
Neben der Entscheidung, welche Zustände expandiert werden sollen,<br />
bleibt noch die Entscheidung, in welche Richtung die Suche durchgeführt<br />
wird. In jedem Fall wird eine Folge bzw. Baum von Regelanwendungen<br />
gesucht, an dessen Wurzel das Startsymbol der Grammatik steht, und an<br />
dessen Blättern die Wörter der zu verstehenden Wortfolge als Terminalsymbole<br />
stehen.<br />
Ebenso wie bei der Ballung akustischer Modelle (Abs. 17.2) lassen sich<br />
auch Parsebäume nach der bottom-up oder nach der top-down Methode<br />
konstruieren. Entsprechend unterscheidet man zwischen Bottom-Up-Parsern<br />
und Top-Down-Parsern. Bei Bottom-Up-Parsern besteht die Ausgangslage<br />
aus den Blättern, die nun wie bei der agglomerativen Ballung auf verschiedene<br />
Arten zu syntaktischen oder semantischen Einheiten zusammengefaßt<br />
werden, solange bis schließlich bei der letzten Zusammenfassung nur noch<br />
das Startsymbol entsteht. Erst dann wird aus dem Parse-Wald ein richtiger<br />
Parsebaum, denn erst dann gibt es nur noch eine Wurzel, wobei bis dahin<br />
viele einzelne Teilbäume auf verschiedenen Teilen der Wortfolge berechnet<br />
worden sind.<br />
Beim Top-Down-Parsen besteht jeder Zustand des Suchraumes aus<br />
einem richtigen Parsebaum, bei dem allerdings nicht alle Blätter Terminale<br />
sind. Die Suche ist erst dann zu Ende, wenn jedem Blatt des Baumes ein<br />
Terminalwort zugeordnet wurde.<br />
Beide Verfahren, top-down und bottom-up, haben Vor- und Nachteile.<br />
Der Vorteil des Top-Down-Parsens besteht darin, daß jeder Zustand des<br />
Suchraums einem ” grammatikalisch“ korrekten Parsebaum entspricht. So<br />
kann es nicht vorkommen, daß nach der Grammatik unzulässige Interpretationen<br />
untersucht werden.<br />
Der Nachteil des Top-Down-Verfahrens liegt in der Schwierigkeit, den<br />
Suchraum zu beschneiden. Schon bei kleinen Grammatiken mit kleinem Regelwerk<br />
können nach wenigen Regelanwendungen eine astronomische Zahl an<br />
möglichen partiellen Parsebäumen entstehen, die noch kein einziges Terminalsymbol<br />
enthalten. Ein reines Top-Down-Parsen hat also dann keinen Sinn,<br />
wenn so Beschneidungen des Suchraums vorgenommen werden müssen, be-
...<br />
SEIN RASEN GRÜNT<br />
Verb Verb Verb<br />
SEIN RASEN GRÜNT<br />
...<br />
...<br />
Nomen Verb Verb<br />
SEIN RASEN GRÜNT<br />
...<br />
Nominalphrase<br />
Pronomen<br />
...<br />
Pronomen<br />
Verbalphrase<br />
SEIN RASEN GRÜNT<br />
Nominalphrase<br />
Pronomen<br />
Nomen<br />
SEIN RASEN GRÜNT<br />
Satz<br />
Nomen<br />
Verb<br />
Nomen<br />
Verb<br />
Nominalphrase Verbalphrase<br />
Pronomen<br />
Verbalphrase<br />
Verb<br />
SEIN RASEN GRÜNT<br />
Nomen<br />
SEIN RASEN<br />
Abb. 23.3. Der Suchraum beim Bottom-Up-Parsing<br />
...<br />
...<br />
23.3 Parsing 397<br />
Verb<br />
GRÜNT<br />
vor auch nur ein Wort aus der zu analysierenden Wortfolge betrachtet wurde.<br />
Der Vorteil des Bottom-Up-Parsens besteht darin, daß alle Suchzustände<br />
aus Parsewäldern bestehen, die zu der Wortfolge passen. Allerdings kann<br />
es dazu kommen, daß die vielen (unabhängig voneinander konstruierten)<br />
Bäume des Parsewaldes nicht mehr zusammengefaßt werden können und das<br />
Startsymbol nicht mehr erreichbar ist.
398 23. Verstehen von Sprache<br />
Nominalphrase<br />
Nominalphrase<br />
Artikel Nomen<br />
...<br />
...<br />
Satz<br />
Satz<br />
Satz<br />
Verbalphrase<br />
...<br />
Satz<br />
Verbalphrase<br />
Verb Nominalphrase<br />
Artikel Nomen<br />
Nominalphrase<br />
Possesivpronomen<br />
Verbalphrase<br />
Nomen<br />
...<br />
...<br />
Verbalphrase<br />
Verb<br />
SEIN RASEN GRÜNT<br />
Abb. 23.4. Der Suchraum beim Top-Down-Parsing<br />
23.3.3 Repräsentation von Bedeutung<br />
Satz<br />
Verbalphrase<br />
Verb Nominalphrase<br />
Satz<br />
Verbalphrase<br />
Verb Nominalphrase<br />
...<br />
Satz<br />
Verbalphrase<br />
Nomen<br />
Richtig sinnvoll wird das Verstehen von Sprache erst dann, wenn mit der<br />
Bedeutung ” gerechnet“ werden kann, d.h. wenn z.B. Fragen beantwortet<br />
werden können, Daten gesammelt und zu neuen Sachverhalten zusammengelegt<br />
werden können. Dazu ist es nötig, ein Kalkül zu verwenden, das es<br />
erlaubt, aus vorhandenem Wissen neues abzuleiten, den Wahrheitsgehalt<br />
von Aussagen nachzuprüfen und neue Aussagen zu treffen. Ein besonders<br />
geeigneter Formalismus dafür ist die bekannte Prädikatenlogik. Zweifellos ist<br />
es so, daß die allgemeine Prädikatenlogik - schon die Prädikatenlogik erster<br />
Ordnung (PL1) - uns ein viel mächtigeres Werkzeug in die Hand gibt, als für<br />
die Darstellung der meisten einfachen Sachverhalte, wie sie in alltäglicher<br />
Sprache beschrieben werden, nötig ist. Andererseits ist es aber auch so, daß<br />
die natürliche Sprache wegen ihrer Ambiguität Möglichkeiten hat, die sich
23.3 Parsing 399<br />
weder durch exakte Logik noch durch eine Fuzzy Logic sinnvoll nachbilden<br />
lassen. Man denke nur an solche Dinge wie Humor, Ironie, Sarkasmus und<br />
andere Phänomene, die nicht einmal von <strong>Mensch</strong>en eindeutig und objektiv als<br />
solche erkannt werden können. Und wenn wir noch die Ergebnisse von Gödel<br />
und die sprachliche Möglichkeit, Paradoxien zu formulieren, betrachten,<br />
dann müssen wir der natürlichen Sprache eine Mächtigkeit zugestehen, die<br />
weder mit der PL1 noch mit Logiken höherer Stufen oder modalen Logiken<br />
erreichbar ist. In der Praxis sind solche Überlegungen bis heute nur selten<br />
von Bedeutung. Die heutigen, Sprache verstehenden Systeme sind noch<br />
sehr weit weg von der Leistungsfähigkeit, die ein nennenswert kompliziertes<br />
Kalkül benötigen würde. Daher werden oft auch für die Repräsentation von<br />
Wissen Ansätze verwendet, die eher in die Richtung von Entity-Relationship<br />
Modellen, KL-ONE, relationaler oder auch objektorientierter Datenbanken<br />
gehen. Solche Systeme sind ausreichend erforscht und ausreichend mächtig,<br />
um die Informationen zu modellieren, die in gewöhnlichen sprachlichen<br />
Dialogen ausgetauscht werden, und auf diesen Informationen einfache, aus<br />
der Logik abgeleitete Operationen durchzuführen. Dennoch haben alle diese<br />
Systeme als Grundlage die Prädikatenlogik, lediglich die Darstellung und die<br />
implementierten Kalküle unterscheiden sich. Daher werden wir im folgenden<br />
auch bevorzugt sprachlich geäußerte Sachverhalte als prädikatenlogische<br />
Formeln darstellen.<br />
Eine mögliche Darstellung des Satzes ” Peter ißt.“ könnte sein:<br />
Essen(Peter). Hierbei wird Peter als eine Konstante betrachtet und<br />
Essen als ein einwertiges Prädikat, das angibt, ob das Argument gerade ißt<br />
oder nicht. Ein Prädikat kann also für ein Ereignis verwendet werden. Die<br />
Argumente des Prädikats sind dann die Eigenschaften des Ereignisses. Das<br />
Prädikat ist genau dann wahr, falls das Ereignis stattfindet. Nun könnte<br />
der Satz aber auch komplizierter sein, zum Beispiel ” Peter ißt Pudding.“<br />
Um diesen Sachverhalt darzustellen, können wir nicht dasselbe Prädikat<br />
verwenden, weil es nicht in der Lage ist die zusätzliche Information über<br />
das Gegessene darzustellen. Wir brauchen daher ein anderes Prädikat, zum<br />
Beispiel EssenWas(Peter,Pudding). Dieses Prädikat ist zweiwertig und<br />
beinhaltet schon in seinem Namen, daß es nicht nur die essende Person,<br />
sondern auch das, was gegessen wird, ausdrückt. Es ist wahr, genau dann<br />
wenn Peter Pudding ißt, aber nicht, wenn er einen Apfel ißt. Wir können<br />
uns nun leicht vorstellen, welche Komplikationen nötig wären um auch Ereignisse<br />
wie ” Peter ißt abends gerne zum Nachtisch einen Pudding in seinem<br />
Lieblingslokal.“ Es erscheint nicht besonders sinnvoll, eine Wissensbank zu<br />
entwerfen, die auch das Prädikat EssenWerWasWoWannWieWozu mit fünf oder<br />
mehr Argumenten verwendet. An dieser Stelle bietet es sich an, das Ereignis<br />
selbst als Variable zu sehen und die Eigenschaften des Ereignisses jeweils<br />
mit eigenen Prädikaten zu modellieren:
400 23. Verstehen von Sprache<br />
∃w : Essen(w) ∧ Wer(w,Peter) ∧ Was(w,Pudding) ∧<br />
Wo(w,Lieblingslokal) ∧ Wie(w,gerne) ∧<br />
Wann(w,abends) ∧ Wozu(w,Nachtisch)<br />
also eine Konjunktion mehrerer Prädikate. So ist es leicht möglich, Ereignisse<br />
mit beliebig vielen Eigenschaften zu modellieren. Braucht man eine<br />
zusätzliche, während des Entwurfsprozesses noch nicht benutzte Eigenschaft<br />
A eines Ereignisses e, dann führt man ein neues Prädikat N(e, A) ein.<br />
Ereignisse, wie wir sie oben eingeführt haben, müssen nicht unbedingt<br />
” temporale“ Entitäten sein. Sie können auch konzeptuelle“ Entitäten sein.<br />
”<br />
Man spricht dann von Kategorien oder Konzepten. So drückt zum Beispiel<br />
der Satz Peter mag Pudding.“ kein konkretes Ereignis aus. Dennoch kann<br />
”<br />
man es mit Hilfe eines PrädikatsMögen(Peter,Pudding), das die Argumente<br />
WerMagEtwas und WasWirdGemocht hat, gut modellieren.<br />
Eine beliebte Repräsentation von Konzepten, Kategorien oder Ereignissen<br />
ist die Darstellung als so genannte Fallschablonen (engl.: case frames).<br />
Eine Fall-Schablone ist ein Behälter, der einen Namen hat, wodurch das<br />
modellierte Konzept beschrieben wird, und verschiedene Attribute. Dies ist<br />
ganz analog zur Darstellung von Klassen und Objekten in objektorientierten<br />
Modellen (z.B. UML). Eine Besonderheit der Fallschablonen ist, daß die<br />
Attribute keine Werte besitzen müssen. Eine Schablone kann also auch unvollständig<br />
ausgefüllt sein. In diesem Fall sind dann nicht alle Eigenschaften<br />
bekannt:<br />
” Peter ißt Pudding.“<br />
Essen<br />
Wer Peter<br />
Wo<br />
Was Pudding<br />
Wann<br />
Wie<br />
Wozu<br />
23.3.4 Fallschablonenzerteiler<br />
” Peter ißt gerne abends Pudding.“<br />
Essen<br />
Wer Peter<br />
Wo<br />
Was Pudding<br />
Wann abends<br />
Wie gerne<br />
Wozu
24. Dialogsteuerung<br />
Ein Dialog hat gegenüber einer einseitigen <strong>Mensch</strong>-<strong>Maschine</strong> <strong>Kommunikation</strong><br />
einige wesentliche Vorteile. Damit ist nicht nur die Selbstverständlichkeit<br />
gemeint, daß ein Dialog ” natürlicher“ ist als ein Monolog, und daß sich<br />
der Benutzer wohler fühlt. Aus der Sicht des Entwicklers sprachgesteuerter<br />
Systeme kann ein Dialog zwar einem System zusätzliche Komplexität<br />
verleihen, aber dafür erleichtert er auch in vielen anderen Bereichen die<br />
Probleme. So kann zum Beispiel mit Hilfe eines Dialoges dem Benutzer<br />
mitgeteilt werden, in welcher Phase der ” gemeinsamen“ Problemlösung man<br />
sich befindet. Oft ist es so, daß unvorbereitete oder ungeübte Benutzer von<br />
sprachgesteuerten Systemen nicht wissen, was von ihnen erwartet wird. Die<br />
Folge ist nicht nur, daß der Benutzer leicht Sätze formuliert, die nicht im<br />
vorgesehenen Szenario liegen, sondern auch daß die Sprache selbst unsicher<br />
wird und die akustischen Eigenschaften vom Normalfall erheblich abweichen.<br />
Eingespannt in einen Dialog hat der Benutzer die meiste Zeit über eine<br />
Rückkopplung und eine genauer umrissene Erwartungshaltung des Systems.<br />
Viele existierende Dialogsystemen – wenn man sie überhaupt so bezeichnen<br />
möchte – stellen die Benutzer vor das Problem, nicht genau zu wissen,<br />
was das System kann, und wie man sich als Benutzer verhalten sollte. So<br />
manche automatischen Telefonschnittstellen, bei denen ein ” Dialog“ mit<br />
Hilfe der Telefontastatur geführt werden soll, sind äußerst unfreundlich. Der<br />
Benutzer muß manchmal sehr lange warten um sich Optionen anzuhören,<br />
die er nicht benötigt oder nicht versteht, nur um schließlich doch die Taste<br />
zu betätigen, die ihn mit einem menschlichen Gesprächspartner verbindet.<br />
In einem natürlichsprachlichen oder sogar multimodalen Dialogsystem ist es<br />
viel leichter Möglich, den Benutzer aufzuklären, was er tun oder sagen kann<br />
und ihm bei bestimmten Problemen unter die Arme zu greifen. Nicht nur<br />
die Möglichkeit, den Benutzer zu informieren, sondern auch die Möglichkeit,<br />
ihn zu steuern, ist ein weiterer wichtiger Aspekt von Dialogsystemen. Im<br />
Extremfall kann das Dialogsystem von Benutzer verlangen, daß dieser nur<br />
eines aus einer kleinen Liste von erlaubten Kommandos äußert, so daß<br />
auf diese Art das Erkennervokabular klein gehalten werden kann und die<br />
Erkennungsrate hoch bleibt. Gerade die korrekte Reaktion in Fällen von<br />
<strong>Kommunikation</strong>sproblemen wie Erkennungsfehlern oder Fehlbedienungen ist
402 24. Dialogsteuerung<br />
ein Dialog sehr hilfreich.<br />
Grundsätzlich ist es auch möglich, die restriktive Wirkung des Dialogs<br />
an die aktuelle Situation anzupassen. Wenn aus irgendwelchen Gründen<br />
die <strong>Kommunikation</strong> schwierig wird, zum Beispiel durch schlechte akustische<br />
Verhältnisse, dann kann der Dialog die Freiheit des Benutzers einengen, und<br />
in Phasen leichter Verständlichkeit wieder mehr Freiheit gewähren (s. Abb.<br />
24.1). Schließlich sind Dialogsysteme das Mittel der Wahl zur Lösung komplexer<br />
Aufgaben, die sich in einem Monolog nur schwer formulieren lassen. In<br />
einem Dialog kann das System den Benutzer nach fehlenden Informationen<br />
fragen, ihn auf Fehler in seinen Kommandos aufmerksam machen und auch<br />
selbst Vorschläge zum weiteren Vorgehen machen. Es kann Inkonsistenzen<br />
erkennen und ein Klärungsgespräch führen, ehe es zum normalen Verlauf des<br />
Dialogs zurückkehrt.<br />
beginne mit<br />
maximaler Freiheit<br />
Benutzereingabe<br />
Eingabe klar<br />
verständlich?<br />
Systemantwort<br />
erhöhe Freiheit<br />
verringere Freiheit<br />
Abb. 24.1. Dialogs mit anpaßbarer Freiheit für Benutzereingaben<br />
Das Schema eines typisches Dialogsystem ist in Abb. 24.2 dargestellt.<br />
Die zentrale Komponente ist der Dialogmanager (oft auch Dialog Controller<br />
genannt, obwohl manche Autoren diese Begriffe semantisch trennen). Er<br />
enthält verbale Eingaben, entweder durch Eintippen oder – wie in der<br />
Abbildung dargestellt – als Hypothesen eines Spracherkenners, und er<br />
produziert Ausgaben die vom Ausgabemanager in Form von Grafiken, Textausgaben<br />
oder – wie abgebildet – als synthetisierte Sprache dem Benutzer<br />
präsentiert werden. Der Dialogmanager benutzt einen Algorithmus zum
24.1 Einheiten der sprachlichen <strong>Kommunikation</strong> 403<br />
Entscheiden welche Ausgabe er macht. Dieser Algorithmus benutzt nicht<br />
nur die letzte Eingabe, sondern er greift auch auf ein statisches Weltwissen<br />
in einer Wissensdatenbank und auf ein dynamisch von ihm selbst angelegtes<br />
Kontextwissen zu. Die statische Wissensdatenbank enthält Informationen<br />
über die Domäne (Objekte, Personen, Ereignisse, deren Namen und Eigenschaften,<br />
etc.). Die Kontextdatenbank enthält Informationen, die aus den<br />
Benutzereingaben extrahiert wurden (was wünscht der Benutzer, was weiß<br />
er, welche Daten hat er eingegeben, etc.).<br />
Wissens-<br />
datenbank<br />
Spracherkenner<br />
Hypothese<br />
Dialog-<br />
manager<br />
Kontext-<br />
wissen<br />
Sprach-<br />
synthese<br />
Ausgabemanager<br />
Abb. 24.2. Dialogsystem mit Sprachein- und Sprachausgabe<br />
24.1 Einheiten der sprachlichen <strong>Kommunikation</strong><br />
Im Zusammenhang mit Dialogsystemen werden verschiedene Verarbeitungseinheiten<br />
verwendet. Die aus der Linguistik bekannte und wohl<br />
als naheliegendste sinntragende Einheit ist ein Satz. Allerdings ist die<br />
Definition eines Satzes nicht selbstverständlich. Je nachdem, worauf es<br />
gerade ankommt, kann man zwei durch Komma getrennte Hauptsätze als<br />
einen Satz oder als zwei Sätze bezeichnen. Einige Wortfolgen bilden an sich<br />
keinen ” korrekten“ bzw. vollständigen Satz, weil ihnen ein oder mehrere<br />
wichtige Bestandteile wie Subjekt und Prädikat fehlen. Imperativsätze<br />
können durchaus auch ohne explizit angegebenes Subjekt vollständig sein<br />
(zum Beispiel. ” Geh schlafen!“). Ein einfaches ” Ja.“ enthält weder Subjekt
404 24. Dialogsteuerung<br />
noch Prädikat, und dennoch gehört es zu dem am häufigsten gehörten<br />
Äußerungen in den meisten Dialogen. Daher genügt der linguistische Begriff<br />
eines Satzes nicht, um alle Phänomene zu beschreiben, mit denen wir uns<br />
hier als Verarbeitungseinheiten in einem Dialogsystem beschäftigen.<br />
Eine aus Sicht der Spracherkennung geeignetere Einheit ist die Äußerung<br />
(utterance). Sie beinhaltet alles, was ein Sprecher zwischen zwei<br />
(nicht all zu kurzen) Pausen sagt. Dies kann ein vollständiger Satz sein,<br />
kann aber genauso auch nur ein Satzfragment, eine Phrase, ein einzelnes<br />
Wort oder gar nur ein Laut sein, andererseits aber auch aus mehreren<br />
aufeinanderfolgenden Sätzen bestehen. Viele Dialogsysteme, die von ihrem<br />
Benutzer nicht verlangen, den Beginn und das Ende einer Aufnahme durch<br />
Betätigen einer Taste zu markieren, verwenden Sprachdetektoren, die den an<br />
sich unbegrenzten Audiostrom segmentieren. Ein Segment ist üblicherweise<br />
von zwei Stillephase umgeben und entspricht einer Äußerung.<br />
In Dialogen (oder – wenn es den Begriff gäbe – in Polylogen) kann ein<br />
Sprecher mehrere Äußerungen tätigen, bevor ein anderer einen Dialogbeitrag<br />
leistet. Im Englischen wird die Menge der Äußerungen eines Sprechers, die<br />
er ununterbrochen macht, als Turn bezeichnet. Im Deutschen wurde diesem<br />
Begriff bisher kein anderes Wort als Übersetzung gegeben, so daß auch im<br />
Deutschen das Wort Turn verwendet wird. In vielen Sprachdatenbanken, die<br />
auch heute noch sehr oft mit expliziter Markierung von Aufnahmeanfängen<br />
und -enden gemacht werden, fällt der Begriff Turn meist mit dem Begriff<br />
Äußerung zusammen.<br />
Ein Dialog ist demnach eine folge von Turns, die abwechselnd von<br />
dem einen und dem anderen Dialogpartner kommen. Die Problematik des<br />
Gleichzeitigsprechens mehrerer Sprecher ist in der Spracherkennung noch<br />
nicht ausreichend behandelt. Vor allem bei <strong>Mensch</strong>-<strong>Mensch</strong>-Dialogen ist<br />
sogenannter crosstalk zu beobachtet. Bei <strong>Mensch</strong>-<strong>Maschine</strong>-Dialogen ist<br />
es unproblematisch, die Sprachsynthese abzubrechen, wenn die <strong>Maschine</strong><br />
feststellt, daß der menschliche Dialogpartner spricht. Aus diesen Gründen ist<br />
eine gesonderte Untersuchung des Gleichzeitigsprechens bei der Entwicklung<br />
von automatischen Dialogsystemen eher uninteressant, und wir gehen davon<br />
aus, daß die Sprecher bzw. der Sprecher und die <strong>Maschine</strong> sich abwechseln.<br />
Eine bestimmte Art des Gleichzeitigsprechens tritt jedoch so häufig auf,<br />
daß sie an dieser Stelle erwähnt werden muß. Dabei handelt es sich um die<br />
sogenannten Back-Channels. Sie sind keine Turns im eigentlichen Sinne. Es<br />
handelt sich vielmehr um sehr kurze Äußerungen, die man macht, während<br />
der Dialogpartner spricht, ohne diesen dabei zu unterbrechen. Das sind meist<br />
Äußerungen der Art ” hm“, ” ja“, ” aha“, ” oh“, ” okay“, die im wesentlichen<br />
nur das Vorhandensein der Aufmerksamkeit vermitteln sollen, bestenfalls
24.2 Sprechakte 405<br />
enthalten sie Information über Zustimmung, Erstaunen, Ablehnung und<br />
Ähnliches.<br />
Wenn der Turn des Dialogpartners unterbrochen oder abgebrochen wird,<br />
weil man selbst anfängt zu sprechen und der Dialogpartner daraufhin aufhört,<br />
wird im Englischen als Barge-In bezeichnet. Dieses Nicht-Ausredenlassen<br />
oder Hineinreden führt zum Wechsel des Turns.<br />
Selbst ganze Dialoge können selbst wiederum Bestandteile bzw. Untereinheiten<br />
anderer Dialoge sein. So redet man von Subdialogen, wenn der<br />
” eigentliche“ Dialog für kurze Zeit beiseite gelegt (geparkt) wird, während<br />
man sich einem speziellen Teilthema widmet. Nachdem dann der Subdialog<br />
beendet wird, wird der Hauptdialog fortgesetzt. Dies ist vergleichbar mit der<br />
Verwendung von Nebensätzen. Entsprechend kann es vorkommen, daß der<br />
” eigentliche“ Dialog verlassen wird um über den Dialog selbst zu reden. In<br />
diesem Fall reden wir von Metadialogen.<br />
24.2 Sprechakte<br />
Einige der oben aufgeführten <strong>Kommunikation</strong>seinheiten (meistens Äußerungen<br />
oder Turns) enthalten nicht nur einen semantischen Inhalt, wie er von<br />
einem Parser ermittelt würde, sondern auch eine Intention. Diese Intention,<br />
die ein Sprecher mit dem Sprechen verfolgt nennen wir Sprechakt. Der Einfachheit<br />
halber unterscheiden wir nicht zwischen verschiedenen Sprechakten<br />
in Abhängigkeit von der <strong>Kommunikation</strong>seinheit. Ein Sprechakt kann aus<br />
mehreren <strong>Kommunikation</strong>seinheiten bestehen, und eine <strong>Kommunikation</strong>seinheit,<br />
selbst ein kurzer Satz, kann mehrere Sprechakte beinhalten.<br />
Sprechakte können zum Beispiel als Aussage, Frage oder Antwort<br />
beschrieben werden. Um was für einen Sprechakt es sich bei einer Äußerung<br />
handelt, ist nicht immer eindeutig. Man denke zum Beispiel an rhetorische<br />
Fragen. Ebenso uneindeutig ist die Art der Unterteilung von Sprechakten in<br />
Klassen. Eine häufig verwendete Unterteilung ist die in sogenannte lokutive,<br />
illokutive und perlokutive Sprechakte. Gelegentlich liest man auch die<br />
Bezeichnungen lokutionär, illokutionär und perlokutionär (im Englischen:<br />
locutionary, illocutionary, perlocutionary). Diese Unterteilung wird als<br />
Klassifizierung in verschiedene Ebenen bezeichnet.<br />
Bei lokutiven Sprechakten handelt es sich um das direkte Ausdrücken<br />
eine Sachverhaltes. Man kann sagen, ein Satz hat seine Semantik als<br />
Bedeutung. Lokutive Sprechakte dienen meist dazu, eine Information zu<br />
übermitteln. Wenn ein Sprecher sagt: ” Draußen ist schönes Wetter.“, und
406 24. Dialogsteuerung<br />
der Zweck dieser Aussage ist lediglich eine Feststellung, dann ist dies ein<br />
lokutiver Sprechakt.<br />
Illokutive Sprechakte sind eher eine indirekte Ausdrucksweise. Ein<br />
Elternteil, das gerade mit einer wichtigen Arbeit beschäftigt ist und vom<br />
Kind dabei gestört wird, könnten den selben Satz ” Draußen ist schönes<br />
Wetter.“ äußern, damit aber weniger die Information des Kindes im Sinne<br />
haben, sondern vielmehr der Wunsch, das Kind möge draußen spielen.<br />
Perlokutive Sprechakte haben den – oft direkt geäußerten, aber<br />
manchmal auch unbeabsichtigten – Zweck, beim Zuhörer einen Effekt zu<br />
bewirken, wie zum Beispiel ihn etwas glauben oder fühlen machen, oder<br />
sogar ihn dazu zu bewegen, bestimmte Handlungen durchzuführen.<br />
24.3 Diskursmodellierung<br />
Die Diskursmodellierung ist bestrebt vor allem zwei Fragen zu beantworten:<br />
” Welche Information enthält eine Folge von Sätzen über die Summe der<br />
Informationen der einzelnen isolierten Sätze hinaus?“ und “Wie beeinflußt<br />
der Kontext, in dem eine Äußerung gemacht wird, den Sinngehalt derselben?“<br />
Diese Fragen wurden ursprünglich auf Texten untersucht. Obwohl es<br />
Gemeinsamkeiten zwischen Texten und gesprochenen Dialogen gibt, sind die<br />
Herausforderungen doch sehr verschieden. Wir wollen uns hier nur auf die<br />
gesprochenen Dialoge konzentrieren.<br />
Die Begriffe Dialog, Diskurs, Kontext, werden leider in der Literatur sehr<br />
unterschiedlich benutzt. Es hat wenig Sinn, zu versuchen, eine verbindliche<br />
Definition dieser Begriffe zu geben. Als Dialog werden derartig einfache Dinge<br />
wie Schaltflächen auf grafischen Benutzeroberflächen bezeichnet, aber auch<br />
derart komplexe Dinge wie die gesamte Steuerung umfangreicher <strong>Mensch</strong>-<br />
<strong>Maschine</strong> <strong>Kommunikation</strong>ssysteme. In mancher Literatur ist mit Dialog nur<br />
der verbale Dialog gemeint, und andere <strong>Kommunikation</strong>smodalitäten werden<br />
nicht dazu gerechnet. Diskurs und Kontext werden teilweise miteinander<br />
vertauscht. Die meisten Verwendungen dieser Begriffe überlappen sich in den<br />
Bedeutungen dahingehend, daß mit Dialog eine Komponente eines Systems<br />
gemeint ist, zu deren Aufgaben folgendes gehört:<br />
• Führen einer Folge von Interaktion zwischen mindestens zwei Dialogpartnern<br />
• Analyse der Benutzereingabe und Extraktion der Intention derselben<br />
• Erkennung eines oder mehrerer Ziele, die der Benutzer verfolgt<br />
• Aufbau und Pflege eines Kontextmodells
24.4 Entwicklung von Dialogsystemen 407<br />
• Planung der Schritte zum Erreichen der Ziele<br />
• Generierung von an den Benutzer gerichteten <strong>Kommunikation</strong>seinheiten<br />
24.4 Entwicklung von Dialogsystemen<br />
In der Forschung an der Dialogsystementwicklung werden vor allem zwei<br />
Ziele verfolgt: Die Gestaltung eines kooperativen auf Problemlösung ausgerichteten<br />
Dialogs und die Maximierung der Portabilität. Mit letzterem ist<br />
gemeint, daß Dialogsysteme mehr domänenunabhängig funktionieren sollen.<br />
Sie sollen bestimmte Interaktions- und Zielverfolgungsmuster realisieren,<br />
und des einem Nicht-Dialogexperten ermöglichen, sie an verschiedene<br />
Einsatzgebiete anzupassen. So sollte es beispielsweise dem Betreiber eines<br />
telefonischen Bestellservice möglich sein, festzulegen, welche Ziele bei einem<br />
Bestellungsgespräch erreicht werden sollen, welche Informationen dafür<br />
benötigt werden und wie die interne Objektdatenbank aufgebaut ist. Den<br />
Rest sollte das System automatisch erledigen können.<br />
24.4.1 Vorgehensweisen<br />
In der Forschung werden verschiedene Ansätze untersucht. Zu den wichtigsten<br />
gehören:<br />
• planbasierte Verfahren<br />
Hierbei wird ein Zustandsraum angenommen, in dem sich das System<br />
und somit der Dialog befinden kann. Verschiedene Sprechakte des Benutzers<br />
und verschiedene Reaktionen des Systems können verschiedene<br />
Zustandsübergänge hervorrufen. Ziel des Dialogsystems ist es, diejenigen<br />
<strong>Kommunikation</strong>sschritte zu unternehmen, die am wahrscheinlichsten<br />
und/oder am schnellsten zu dem gewünschten Dialogziel führen. Wenn<br />
zum Beispiel der Benutzer die Frage stellt: ” Entschuldigung, wissen Sie<br />
wie spät es ist?“ wäre eine Antwort wie ” Ich verzeihe Ihnen.“ oder ” Ja“<br />
semantisch und logisch korrekt, führt aber nicht so schnell zum Ziel wie<br />
die Antwort ” Nein.“ oder ” Kurz vor sieben.“<br />
• Dialoggrammatiken<br />
Ähnlich wie bei Grammatiken, die definieren, wie legal beziehungsweise<br />
wie wahrscheinlich eine Wortfolge ist, gibt es Grammatiken, die Folgen<br />
von <strong>Kommunikation</strong>sakten und deren Wahrscheinlichkeiten modellieren.<br />
Daß dies sinnvoll ist, erkennt man an typischen Paaren von zusammengehörigen<br />
Dialogakten (engl. adjacency pairs) wie Frage/Antwort,
408 24. Dialogsteuerung<br />
Vorschlag/Zustimmung oder Vorschlag/Ablehnung und so weiter. Solche<br />
Grammatiken werden Phasenstrukturgrammatiken genannt. Sie können<br />
zum Beispiel in der beliebten Form von kontextfreien Grammatiken dargestellt<br />
werden. Die Terminale dieser Grammatiken sind Akte wie: Frage,<br />
Forderung, Angebot, Antwort, Entgegnung, Vorschlag, Zustimmung,<br />
Ablehnung, etc. Mit Hilfe der Phasenstrukturgrammatik kann der gesamte<br />
Dialog geparst werden. Verschiedene Dialogabläufe und Dialogziele können<br />
so erkannt beziehungsweise verfolgt werden.<br />
• Fallschablonenbasierte Systeme<br />
Ähnlich wie bei Fallschablonenparsern zum Verstehen einzelner Äußerung,<br />
können solche meist relativ flachen Parser dazu verwendet werden<br />
Fallschablonen aus den im Dialog gewonnenen Informationen zu füllen.<br />
Die zwei Herausragenden Aufgaben des Dialogsystems bestehen aus dem<br />
Erkennen, für was für eine Art Fallschablone die eingegebenen Informationen<br />
von Bedeutung sind, und <strong>Kommunikation</strong>sakte durchzuführen – meist<br />
Rückfragen stellen (engl. grounding) – die dazu führen, daß der Benutzer<br />
die für das Füllen einer Schablone nötige Informationen liefert. Wenn eine<br />
Schablone “voll“ ist, dann hat das System alles benötigte Wissen um die<br />
mit der Schablone in Verbindung stehende Aktion auszulösen.<br />
• Statistische Systeme<br />
Solche Systeme verwenden auch Zustände und Übergänge oder Grammatiken<br />
mit Regelwerken oder Fallschablonen, die Wahrscheinlichkeiten und<br />
Vorbedingungen für bestimmte Aktionen des Systems werden allerdings<br />
anhand von vielen Beispielen automatisch gelernt. Dem System müssen<br />
Beispieldialoge mit der Information, ob sie erfolgreich verlaufen sind oder<br />
nicht, präsentiert werden, worauf das System seine internen Parameter so<br />
einstellt, daß es möglichst erfolgreiche Dialoge führt.<br />
• Endliche Automaten<br />
Dialogsysteme auf Basis endlicher Automaten sind eine Art Spezialfall<br />
von Planbasierten System, die auch einen Zustandsraum haben, und auf<br />
Dialoggrammatiken basierenden Systemen. Allerdings sind die Grammatiken<br />
für Automaten in der Chomsky-Hierarchie. niedriger (CH-3 statt<br />
CH-2), und somit weniger mächtig als kontextfreie. Trotz der Einfachheit<br />
solcher Systeme sind sie beliebt, weil es selbst für Laien einfach ist einen<br />
Dialog zu definieren. Noch einfacher als bei kontextfreien Grammatiken<br />
kann man die Dialogstruktur auch grafisch darstellen und so schnell<br />
überblicken. Typische Probleme bei solchen Systemen sind zu beobachten,
24.4 Entwicklung von Dialogsystemen 409<br />
wenn einzelne Dialogakte über mehrere Turns verteilt sind. Dann ist es<br />
schwer auf nur einem Turn die Intention zu erkennen und den Akt korrekt<br />
zu interpretieren. Umgekehrt kann es auch vorkommen, daß ein Turn<br />
multifunktional ist und eigentlich mehrere Dialogakte gleichzeitig enthält.<br />
Ein weiteres Problem grammatikbasierter Dialogsysteme besteht in der<br />
durch sie vorgegeben Strukturiertheit des Dialogs. Dadurch ist es zwar<br />
relativ einfach Das Verhalten des Systems zu definieren, allerdings mangelt<br />
es beim Einsatz an Flexibilität. Kleine Änderungen an der vorgesehen<br />
grammatikalischen Struktur können leicht zum Versagen des gesamten<br />
Systems führen.<br />
• regelbasierte Systeme (rational agency)<br />
Solche Systeme basieren auf einer Sammlung von Regeln und einem<br />
Inferenzsystem. Für besonders portable Systeme besteht das Regelwerk<br />
aus einen Teil domänenunabhängiger Regeln. Die Idee hinter rational<br />
agency ist die formale Beschreibung und Simulation von rationalem<br />
Verhalten. Typische Regeln sind zum Beispiel:<br />
System weiß: Benutzer kennt X<br />
⇒ System informiert Benutzer nicht über X<br />
oder<br />
System weiß: Benutzer kennt X nicht<br />
System weiß: Benutzer will Ziel Z erreichen<br />
System weiß: um Z zu erreichen, muß Benutzer X kennen<br />
⇒ System informiert Benutzer über X<br />
Um zu entscheiden, welche Aktionen das System als nächsten tun soll<br />
wendet es Methoden und Algorithmen aus dem Bereich des Automatischen<br />
Beweisens an.<br />
24.4.2 Gesprochene Sprache<br />
Gegenüber Dialogen auf grafischen Benutzeroberflächen oder textbasierten<br />
Dialogen mit Tastatureingabe treten bei gesprochenen Dialogen zusätzliche<br />
Probleme dadurch auf, daß die verwendeten Kognitiven Algorithmen zur<br />
Spracherkennung und Erfassung der Benutzeraktivitäten Fehler machen.
410 24. Dialogsteuerung<br />
Selbst bei völlig fehlerfrei eingetippten Texten kommen sehr oft Mißverständnisse<br />
zustande, weil die Dialoggrammatiken nicht vollständig sind<br />
und nicht alle möglichen Benutzereingaben vorhergesehen haben, und weil<br />
viele Dialogakte ambig zu verstehen sind. Diese Probleme verstärken sich<br />
noch, wenn ein Vorgeschalteter Spracherkenner die für spontane Dialoge<br />
übliche 10% bis 20% Wortfehlerrate produziert.<br />
Zusätzlich entstehen Probleme durch spontane Effekte in der Sprache.<br />
Das geht über die akustischen Störungen hinaus. Durch solche Effekte wird<br />
nicht nur die Aufgabe für den Spracherkenner erschwert. Wenn Satzfragmente<br />
gesprochen werden, kann dies selbst bei perfekter Erkennung zu<br />
Problemen bei der Interpretation ihrer Intention führen.<br />
Wenn Dialogsysteme dazu verwendet werden multilaterale Dialoge mit<br />
der Beteiligung mehrerer <strong>Mensch</strong>en zu unterstützen, dann sind vermehrt<br />
soziale Interaktionen zu beobachten. Wenn <strong>Mensch</strong>en mit anderen <strong>Mensch</strong>en<br />
reden gehen sie (in der Regel berechtigterweise) davon aus, daß<br />
die Dialogpartner ein bestimmten Weltwissen haben, das weit über das<br />
eines Computersystems hinaus reicht. So können bestimmte Sachverhalte<br />
manchmal durch Fallenlassen eines einzelnen Wortes oder einer kurzen<br />
Phrase angesprochen werden. Die <strong>Maschine</strong> hat dann ohne das Weltwissen<br />
keine Chance den Dialog zu verstehen.<br />
Darüber hinaus verwenden viele <strong>Mensch</strong>en beim Führen eines natürlichsprachlichen<br />
Dialogs auch nichtverbale <strong>Kommunikation</strong>sakte durch. Oft wird<br />
ein beachtlicher Teil der Information durch Gesichtszüge, Bewegungen und<br />
Gesten übermittelt. Diese Art zu kommunizieren ist in vielen <strong>Mensch</strong>en so<br />
verwurzelt, daß sie selbst beim Telefonieren gestikulieren und eine aktive<br />
Mimik an den Tag legen. Für andere <strong>Mensch</strong>en ist es in der Regel sehr einfach<br />
diese Information zu Interpretieren. Manche Dialogakte wie Zustimmung<br />
oder Ablehnung können mit einer einfachen kurzen Bewegung verständlich<br />
gemacht werden. Für maschinelle Systeme, die nur auf der Hypothese eines<br />
Spracherkenners beruhen ist dies nicht möglich. Die Forschung an multimodalen<br />
Dialogen, in denen auch videobasierte Kognition der Benutzeraktivitäten<br />
verwendet wird, befindet erst in den Anfängen, ebenso wie die Forschung<br />
an der Berücksichtigung und Einbindung Emotionalen Verhaltens in Dialoge.<br />
24.4.3 Wizard-of-Oz Experimente<br />
Ein Problem, das bei der Entwicklung dialogbasierter <strong>Mensch</strong>-<strong>Maschine</strong><br />
<strong>Kommunikation</strong>ssysteme ist der Wunsch, diese möglichst realistisch zu<br />
gestalten. Realistisch bedeutet dabei zum einen, daß das System sich so<br />
verhalten soll wie es menschliche Benutzer erwarten, und zum anderen,
24.4 Entwicklung von Dialogsystemen 411<br />
daß die Daten, die zur Entwicklung und zum Test des Systems verwendet<br />
werden, denen, wie sie beim fertigen System im Einsatz auftauchen sollen,<br />
möglichst nahe kommen. Gerade letzteres ist sehr schwierig zu erhalten.<br />
Die Erwartungen der Benutzer lassen sich aus Fragebögen oder aus vergleichbaren<br />
<strong>Mensch</strong>-<strong>Mensch</strong>-Dialogen extrahieren. Solange aber nicht zu<br />
erwarten ist, daß <strong>Maschine</strong>n genauso gute Dialogpartner wie <strong>Mensch</strong>en sind,<br />
und solange die meisten <strong>Mensch</strong>en mit einem maschinellen Dialogpartner<br />
ohnehin anders reden möchten als mit einem menschlichen, sind aufgezeichnete<br />
<strong>Mensch</strong>-<strong>Mensch</strong>-Dialog kein realistisches Vorbild für ein künstliches<br />
Dialogsystem.<br />
Bei der Datensammlung für die Spracherkennung kann meistens die<br />
Situation, in der später der Erkenner arbeiten soll simuliert werden, so daß<br />
die Sprachdaten relativ realistisch ausfallen. Eine Simulation des künstlichen<br />
Dialogsystems ist ohne seine Existenz sehr schwierig. Immerhin müßte ein<br />
guter Simulator ja schon die meisten Fähigkeiten des zu bauenden Systems<br />
haben. Die Problematik der besonderen Sprech- und Denkweise beim<br />
Kommunizieren mit <strong>Maschine</strong>n kann beim Sammeln der Beispieldialoge<br />
dadurch simuliert werden, daß der Testperson nur vorgegaukelt wird, sie<br />
würde mit einer <strong>Maschine</strong> sprechen. In Wirklichkeit ist für sie unsichtbar<br />
(und in manchen Datensammlungen sogar ohne sie zuvor davon in Kenntnis<br />
zu setzen) ein anderer <strong>Mensch</strong> (Experte oder Entwickler), der versucht die<br />
Reaktion des Systems manuell möglichst so zu generieren, daß der Benutzer<br />
(Datenspender) nicht merkt, daß ein <strong>Mensch</strong> dahintersteckt.<br />
Solche Situationen werden ” Wizard-of-Oz-Experimentierumgebungen“<br />
genannt (s. Abb. 24.3). Wenn Teile des Systems schon entwickelt sind, kann<br />
die versteckte Person (der Wizard of Oz) wo möglich das System reagieren<br />
lassen und bei Bedarf sich selbst einschalten.<br />
Benutzer<br />
00 11<br />
11 00<br />
00 11<br />
11 00<br />
Benutzer-<br />
schnittstelle<br />
00 11<br />
11 00<br />
00 11<br />
11 00<br />
Abb. 24.3. Wizard-of-Oz-Experimentierumgebung<br />
11 00<br />
<strong>Maschine</strong><br />
eingeweihter<br />
<strong>Mensch</strong>
25. Erkennung verschiedener Sprachen<br />
Auf der Welt gibt es mehrere tausend verschiedene Sprachen (die Schätzungen<br />
gehen von ca. 4000 bis nahezu 10000). Selbst Linguisten sind sich nicht<br />
immer einig darüber, ob es sich bei einem Paar um zwei eigenständige<br />
Sprachen oder um zwei Dialekte derselben Sprache handelt. Teilweise spielen<br />
historische Aspekte, teilweise auch politische Aspekte eine Rolle. So werden<br />
zum Beispiel das Kroatische und das Serbische von vielen Muttersprachlern<br />
aus politischen Gründen vehement als eigenständige Sprache verteidigt,<br />
obwohl die Unterschiede zwischen ihnen kleiner sind als zum Beispiel<br />
zwischen bairischem und Kölner Dialekt. Allerdings ist es auch so, daß nur<br />
ca. 100 bis 200 Sprachen von einer signifikanten Menge Personen gesprochen<br />
werden. Für den allergrößten Teil der Sprachen der Welt gibt es nur sehr<br />
wenige, manchmal nur einige Dutzend Sprecher. Teilweise existieren nicht<br />
einmal Schriftformen.<br />
Unter multilingualer Spracherkennung verstehen wir Systeme, die<br />
Komponenten haben, die prinzipiell unabhängig von einer bestimmten<br />
Sprache sind. Zwei wesentliche Gründe motivieren die Forschung, solche<br />
Systeme zu realisieren: Erstens sind wir noch weit davon entfernt, für alle<br />
wichtigen Sprachen gut funktionierende Erkenner zur Verfügung zu haben<br />
– geschweige denn für alle ca. 4000 Sprachen, und zweitens besteht die<br />
durchaus berechtigte Hoffnung, daß Erfahrungen, die mit einer Sprache<br />
gemacht werden, sich auch auf andere Sprachen anwenden lassen und so<br />
ein Synergieeffekt eintreten könnte, der einen multilingualen Erkenner im<br />
Schnitt zu besseren Erfolgen führt, als viele einzelne Erkenner.<br />
25.1 Eigenschaften verschiedener Sprachen<br />
Beim Beschäftigen mit verschiedenen Sprachen treten aus der Sicht des<br />
Spracherkennungsforschers Probleme auf, die aus linguistischer Sicht weniger<br />
bedeutsam sind oder bisher zumindest nicht besonders prominent waren.<br />
Allein schon die Frage nach der Definition eines Wortes scheint erstaunliche
414 25. Erkennung verschiedener Sprachen<br />
Probleme bereiten zu können.<br />
25.1.1 Definition eines Wortes<br />
In der Welt der Sprachen, die die lateinische oder kyrillische oder ähnliche<br />
Schriften verwenden, ist die Definition eines Wortes relativ einfach. Ein Wort<br />
ist das, was zwischen zwei Leerzeichen steht. Diese Definition hätte schon<br />
vor über 2000 Jahren standgehalten, einer Zeit in der noch keine Rede von<br />
Computerautomation und ASCII- oder UNI-Codes war.<br />
Aber schon beim Betrachten des Deutschen ist man sich nicht immer<br />
sicher, was aus linguistischer Sicht als einzelnes Wort betrachtet werden<br />
sollte. Wie wäre es mit ” Rad fahren“ gegenüber ” radfahren“ oder ” Europameisterschaft“<br />
gegenüber ” Europa Meisterschaft“. Die neulich eingeführte<br />
Rechtschreibreform hilft, die Konfusion diesbezüglich noch zu erhöhen. Aber<br />
auch in anderen einfachen Sprachen ist die Wortdefinition nicht immer klar.<br />
Im relativ einfachen Englischen kann man ” videotape“ neben ” video tape“<br />
verwenden. Noch schwieriger wird es in fernöstlichen Sprachen wie dem Chinesischen<br />
und dem Japanischen. Selbst wenn dort klar wäre, ob ein Partikel<br />
Teil des dazugehörigen Wortes ist oder ein eigenständiges Wort ist. Japaner<br />
und Chinesen unterscheiden in der Regel nicht die Zwischenräume zwischen<br />
Silben und Wörtern. Bei einer gegebenen Folge von Chinesischen Silben ist<br />
die korrekte Zusammenfassung in Wörter oft nur mit pragmatischem Wissen<br />
und mit dem Wissen über den Kontext, in dem sich die Silbenfolge befindet,<br />
möglich.<br />
25.1.2 Flektierende Sprachen<br />
Deutsch zählt zu den stark flektierenden Sprachen. Englisch und viele asiatische<br />
Sprachen, vor allem Chinesisch und Japanisch, sind nicht flektierende<br />
Sprachen. Bei flektierenden Sprachen werden semantische Modifikationen<br />
eines Wortes (Genus, Tempus, Kasus, Numerus, etc.) meist durch Anhängen<br />
oder Verändern bestimmter Morpheme, manchmal auch durch Ändern<br />
des Wortstammes gekennzeichnet. Bei nicht flektierenden Sprachen ergibt<br />
sich die Semantische Disambiguierung aus dem Kontext, manchmal durch<br />
Voranstellen oder Folgen eines zusätzlichen Wortes. Zwar gibt es auch<br />
im Englischen einige wenige Flexionen, sie beschränken sich aber auf die<br />
Partizipbildung, das Plural-S, das Possesiv-S und die Verbformen für die<br />
dritten Personen.
25.1.3 Komposition von Wörtern<br />
25.2 Identifikation von Sprachen (LID) 415<br />
Wer erinnert sich nicht mehr an die Wörter ” Donaudampfschiffahrtsgesellschaft“<br />
oder ” Radelrutschrunkelrübenscheibenräder“, die auch heute noch<br />
Schülern die für das Deutsche typische Kompositionsfähigkeit von Wörtern<br />
durch Konkatenation einzelner teilweise flektierter Wörter veranschaulicht.<br />
25.2 Identifikation von Sprachen (LID)<br />
Für das automatische Erkennen der Identität einer Sprache (engl.: Language<br />
IDentification, LID) gibt es verschiedene Anwendungen. Multilinguale<br />
Systemen haben den Zweck, in verschiedenen Sprachen benutzt werden zu<br />
können. Sie müssen irgendwie festgestellten, in welcher Sprache der Sprecher<br />
gerade spricht. Dies kann im nicht ergonomischen Fall so geschehen, daß der<br />
Sprecher bevor er anfängt zu sprechen mit Hilfe eines Auswahlschalters die<br />
entsprechende Sprache wählt und dann der passende Erkenner die Hypothesen<br />
liefert. Im ergonomischen Fall geschieht dies vollautomatisch. Sinnvoll<br />
ist das zum Beispiel bei Informationskiosken für Touristen, Messeständen<br />
und telefonischen Informationsdiensten.<br />
Angewandt wurde LID in der Praxis sogar bei einigen kalifornischen<br />
Notrufzentralen. Eine berühmte Einrichtung ist zum Beispiel der Language<br />
Line Interpreter der amerikanischen Telefongesellschaft AT&T im<br />
Zusammenhang mit der Notrufnummer 911 [?] . Anrufer, die in Not oder<br />
Panik geraten sind, sprechen häufig in ihrer Muttersprache einfach darauf<br />
los, auch wenn sie die englische Sprache ausrechend beherrschen, um ihr<br />
Problem zu beschreiben. LID kann hier helfen, Leben zu retten, wenn<br />
die Sprache eines hilfesuchenden Anrufers erkannt wird und dadurch, daß<br />
möglichst schnell ein verstehender Gesprächspartner zugeschaltet wird,<br />
schneller Hilfe geleistet werden kann. Im deutschen Forschungprojekt<br />
VERBMOBIL wurde zwischen verschiedenen Sprachen (Deutsch, Englisch,<br />
Japanisch) hin und her übersetzt. Dabei durften die Benutzer ohne vorher<br />
zu deklarieren, in welcher Sprache sie sprechen wollten, in das Gerät<br />
hineinsprechen und das Gesprochene übersetzten lassen. Andere denkbare<br />
Anwendungen liegen im Bereich der Überwachung und Sicherheitstechnik,<br />
zum Beispiel um alle Telefonate zwischen zwei Ländern herauszufiltern,<br />
die in einer bestimmten Sprache durchgeführt wurden. Im Hinblick darauf,<br />
daß die Welt immer ” kleiner“ wird, und auf internationaler Ebene immer<br />
mehr <strong>Kommunikation</strong> stattfindet, wird die Aufgabe der LID immer wichtiger.<br />
Für die LID wurden zahlreichen verschiedene Verfahren untersucht<br />
und ausgewertet. Die Aufgabe der Identifikation von Sprachen ist mit der<br />
reinen Spracherkennung und der Identifizierung von Sprechern verwandt.
416 25. Erkennung verschiedener Sprachen<br />
Erkenntnisgewinne und Leistungsverbesserungen in einem dieser Gebiete<br />
haben sich oft auch auf die anderen ausgewirkt. Dennoch hat die Identifizierung<br />
von Sprachen einige Eigenheiten: Während bei der Spracherkennung<br />
eine möglichst korrekte Wortfolge gefunden werden muß, ist dies für die<br />
Identifizierung einer Sprache eher weniger wichtig. Im Grunde kann ein<br />
System – ebenso wie <strong>Mensch</strong>en auch – eine Sprache identifizieren, ohne auch<br />
nur ein einziges Wort zu verstehen. Die Schwierigkeiten der LID resultieren<br />
zum einen aus der großen Variationsbreite der Sprechweise verschiedener<br />
Sprecher (Aussprache, Intonation, Sprechgeschwindigkeit, usw.), zum anderen<br />
aus der Veränderlichkeit der Themen und Inhalte des Gesprochenen. Im<br />
übrigen spielen nichtsprachliche Phänomene wie die Kanaleigenschaften, das<br />
Hintergrundrauschen oder Störgeräusche eine besonders schädliche Rolle,<br />
wenn die Klassifikatoren mangels linguistischen Wissens von diesen schlecht<br />
abstrahieren können.<br />
<strong>Mensch</strong>en haben die faszinierende Fähigkeit, innerhalb weniger Sekunden,<br />
teilweise anhand von nur zwei, drei Silben, nicht nur entscheiden zu<br />
können, ob ihnen eine gesprochene Sprache bekannt ist, sondern meist<br />
sogar um welche Sprache es sich handelt. Falls nicht, kann der <strong>Mensch</strong><br />
zumindest typische Charakteristika der Sprache angeben. Bevor wir uns<br />
darum bemühen, <strong>Maschine</strong>n diese Fähigkeit zur Sprachenidentifizierung<br />
beizubringen, sollte untersucht werden, welche Spracheigenschaften beziehungsweise<br />
welche Wissensquellen <strong>Mensch</strong>en zur Identifizierung heranziehen.<br />
Daraus können dann verschiedene Strategien und Informationsquellen, die<br />
für ein automatisches System sinnvoll sein können, abgeleitet werden. In [?]<br />
wird zu diesem Zweck eine Untersuchung an je zwei Personen aus zehn verschiedensprachlichen<br />
Ländern gemacht. Testpersonen wurden Sprachauszüge<br />
von 1, 2, 4 und 6 Sekunden Länge vorgespielt und die Tespersunen wurden<br />
anschließend gefragt, welche der zehn möglichen Sprachen gesprochen wurde.<br />
Danach wurden den Testpersonen mitgeteilt, welche Antwort richtig gewesen<br />
wären so daß sie daraus während der Versuchsreihe lernen konnten. Die<br />
Erkennungsrate lag im Schnitt bei 69,4% (zwischen 39,2% und 100%).<br />
Wichtige Faktoren, die die Erkennungsrate beeinflußten waren die Dauer der<br />
vorgelegten Sprachauszüge, die Vertrautheit der Testperson mit der Sprache<br />
und die Anzahl der Sprachen, die die Testpersonen schon vorher kannten.<br />
Am Ende der menschlichen LID-Experimente wurden die Testpersonen<br />
nach ihren Strategien zur Identifizierung der Sprachen befragt. Demnach<br />
benutzten viele eine Kombination mehrerer Methoden wie dem Heraushören<br />
bestimmter sprachentypischer Phoneme oder Wörter sowie der phonetischen<br />
und prosodischen Merkmale einer Sprache.<br />
Das Verstehen menschlicher Strategien ist ein wichtiges Hilfsmittel zur<br />
Lösung des Problems der automatischen Identifizierung von Sprachen.<br />
Grundsätzlich können sehr viele verschiedene Informationsquellen zur LID
25.2 Identifikation von Sprachen (LID) 417<br />
herangezogen werden. Sie können im wesentlichen in unterteilt werden in<br />
akustisch-phonetische Merkmale der Sprache, phonologische und<br />
phonotaktische Merkmale der Sprache, prosodische Merkmale der<br />
Sprache, Regeln über die Bildung von Wörtern einer Sprache aus<br />
Wortteilen, Regeln über die grammatikalische Struktur der Sprache:<br />
• Akustisch-phonetische Merkmale<br />
In verschiedenen Sprachen treten bestimmte Phoneme unterschiedlich<br />
häufig auf. Jede Sprache hat einen ureigenen Satz von Phonemen, der<br />
gelegentlich durch den Einfluß einiger Fremdwörter angereichert wird.<br />
Anzahl und Art der Phoneme können von Sprache zu Sprache stark<br />
variieren. So gibt es in der französischen Sprache vergleichsweise viele<br />
Nasallaute, die im Hochdeutschen so gut wie nie (außer in aus dem<br />
Französischen kommenden Fremdwörtern wie Restaurant“) vorkommen.<br />
”<br />
Das Deutsche hat den typischen velaren Reibelaut ç (wie im Wort<br />
” ich“), der vielen Nichtdeutschen beim Lernen der Sprache besondere<br />
Schwierigkeiten macht. Englisch ist berühmtberüchtigt für dasÌwie in<br />
” thin“ oder daswie in the“.<br />
”<br />
• Phonologische und phonotaktische Merkmale<br />
Verschiedene Sprache haben verschiedene Regeln, die definieren, wie<br />
phonetischen Einheiten zu Silben und Wörtern konkateniert werden<br />
können, oder zumindest, wie wahrscheinlich diese Konkatenationen sind.<br />
Die Hawaiianische Sprache ist dafür bekannt, daß sie sehr vokalreich ist<br />
und zwischen den Vokalen oft glottale Stopplaut vorkommen. Im den<br />
slawischen Sprachen können Laute wie r undsilbenbildend sein, etwa bei<br />
prst (Finger), was im Deutschen nicht erlaubt ist.<br />
• Prosodische Merkmale<br />
Prosodische Eigenschaften wie Betonung, Intonation, Rhythmus, Tempo<br />
und Pausen sind auch hilfreich, um Sprachen zu klassifizieren. Tonale<br />
Sprachen wie Vietnamesisch oder die chinesischen Sprachen haben eine<br />
ganz andere Intonationscharakteristik als die deutsche Sprache.<br />
• Regeln über erlaubte Wortbildungen<br />
Ähnlich wie Sprachen einen eigenen typischen Phonemsatz haben, so gilt<br />
dies erst recht für den Wortschatz. Wenn von einem LID-System erwartet<br />
wird, daß es eine Sprache identifizieren kann, auch wenn sie von einem<br />
Nichtmuttersprachler akzentuiert ausgesprochen wird, dann besteht bei<br />
Untersuchung der phonetischen Merkmale die Gefahr, daß der Sprecher<br />
bevorzugt die Phoneme seiner eigenen Sprache verwendet (zum Beispiel<br />
verwenden viele Deutsche beim Englischsprechen das ” deutsche“ r, ein v
418 25. Erkennung verschiedener Sprachen<br />
statt eines w, d oder s stattoderÌ. Dieses Problem ist nur in den Griff<br />
zu bekommen, wenn das System über den Wortschatz bescheid weiß.<br />
• Grammatikalische Struktur<br />
So wie die Phonotaktik definiert, wie aus Phonemen Wörter entstehen<br />
können, so gibt die Grammatik an, wie aus Wörtern Sätze entstehen.<br />
Beide sind von der Sprache abhängig. Daher kann eine Analyse der Grammatikalischen<br />
Struktur eines Satzes Identifizierung der Sprache hilfreich<br />
sein. Dafür muß natürlich ein Spracherkennungssystem vorhanden sein,<br />
um überhaupt Wortfolgen aus dem Gesprochenen heraus erkennen. Es ist<br />
dann zu erwarten, daß ein Erkenner, für eine Sprache A auf Sätzen in der<br />
Sprache A mit höherer Wahrscheinlichkeit Wortfolgen produziert, die den<br />
Grammatikregeln von A entsprechen, als wenn er einen Satz der Sprache<br />
B erkennt.<br />
Ein sprachidentifizierendes System sollte zur Unterscheidung von Sprachen<br />
möglichst viele dieser Informationsquellen einbeziehen.<br />
Die Architekturen für LID-Systeme können in zwei Gruppen unterteilt<br />
werden. In der ersten wird für jede zu identifizierende Sprache ein<br />
eigenständiges Modell trainiert. Bei der Identifizierung laufen alle eigenständigen<br />
Modelle parallel und produzieren unabhängig voneinander<br />
Erkennerhypothesen (Phonemfolgen oder Wortfolgen) mit dazugehörigen<br />
Beobachtungswahrscheinlichkeiten oder Konfidenzwerten. Diejenige Sprache,<br />
deren Modell die beste Bewertung für die Testäußerung liefert, wird als die<br />
gesprochene Sprache identifiziert. Architekturen dieser Gruppe werden von<br />
einem Großteil der Forscher verwendet (z.B. [?], [?], [?]).<br />
Die andere Gruppe zeichnet sich durch ein einziges Modell für alle Sprachen<br />
aus. Beim Erkennen der Testäußerung konkurrieren einzelne Teilmodelle<br />
(zum Beispiel Phoneme oder Wörter) miteinander. Die Teilmodelle haben in<br />
verschiedenen Sprachen verschiedene Auftretenswahrscheinlichkeiten. Diejenige<br />
Sprache, deren typische Teilmodelle am häufigsten in der Hypothese<br />
vorkommen wird schließlich identifiziert ([?], [?]).<br />
Ein Nachteil der Verfahren aus der ersten Gruppe ist, daß mit wachsender<br />
Zahl der zu identifizierenden Sprachen der insgesamt zu leistende Rechenund<br />
Speicherbedarf anwächst. Bei der zweiten Gruppe manifestiert sich ein<br />
ähnlich Nachteil in der steigenden Zahl verschiedener Teilmodelle. Diese<br />
wachsen allerdings sublinear mit der Zahl der Sprachen, da viele Sprachen<br />
auch viele gemeinsame Eigenschaften haben.
26. Zusätzliche Modalitäten<br />
Zweifellos ist die natürliche Sprache in den meisten Fällen die schnellste<br />
Methode, Information aus unserem Bewußtsein in einen Rechner einzugeben.<br />
Es gibt allerdings recht viele Situationen, in denen Sprache entweder<br />
überhaupt nicht verwendet werden kann (unter Wasser, im Theater, Konzert<br />
oder allgemein bei Veranstaltungen, bei denen Stille von den Anwesenden<br />
erwartet wird), und es gibt Situationen, in denen die <strong>Kommunikation</strong><br />
per Sprache durch andere Informationsübertragungskanäle unterstützt<br />
werden kann. Wir bezeichnen die unterschiedlichen Informationsübertragungskanäle<br />
üblicherweise als Modalitäten, nicht zu verwechseln mit<br />
dem gleichen Begriff im Zusammenhang mit der modalitätenabhängigen<br />
Modellierung Akustischer Modelle. <strong>Kommunikation</strong>ssysteme, die verschiedene<br />
<strong>Kommunikation</strong>skanäle unterstützen, werden als multimodale Systeme<br />
bezeichnet. In diesem Kapitel werden einige der wichtigsten Modalitäten und<br />
ihre Kombination mit Spracherkennung zu multimodalen Systemen erläutert.<br />
26.1 Lippenlesen auf Videoaufnahmen<br />
Taube <strong>Mensch</strong>en können oft mit erstaunlicher Genauigkeit Sprache von<br />
den Lippen sprechender <strong>Mensch</strong>en ablesen. Natürlich geht das nicht immer<br />
gut. Es gibt zahlreiche Wortpaare, die nicht anhand der Lippenbewegungen<br />
voneinander unterscheidbar sind. Zum Beispiel ” hart“ und ” Art“. Außerdem<br />
kann man noch relativ verständlich sprechen, ohne dabei die Lippen<br />
nennenswert zu bewegen, wie es viele Bauchredner in Varietes vorführen.<br />
Zum Leidwesen vieler Tauber sprechen viele Nicht-Bauchredner auch so, daß<br />
das Ablesen von den Lippen kaum möglich ist. Aber selbst bei perfekter,<br />
sehr deutlicher Aussprache ist eine <strong>Kommunikation</strong> nur mit Lippenlesen<br />
sehr schwierig und sehr fehlerbehaftet. Dennoch ist es so, daß das Bild der<br />
Lippen die Erkennung eines dazugehörigen akustischen Signals unterstützen<br />
kann. Dazu gibt es das kognitive Experiment, bei den <strong>Mensch</strong>en eine Video<br />
vorgespielt wird, auf dem das Gesicht einer Person zu sehen ist, die ein<br />
Wort wie zum Beispiel ” Bach“ spricht. Die Tonspur des Videos ist allerdings<br />
ausgetauscht durch eine Aufnahme auf der die Person ” Fach“ spricht. Die zu
420 26. Zusätzliche Modalitäten<br />
den beiden Wörtern gehörenden Lippenbewegungen sind klar voneinander<br />
zu unterscheiden. Der Anteil der Versuchspersonen, die bei so einem Video<br />
auf die Frage ” Was haben Sie gehört?“ mit ” Bach“, also dem Wort, das<br />
nur visuell aber nicht akustisch zu erkennen war, antworten, ist signifikant<br />
höher als bei einem Experiment, bei dem auch in der Videosequenz ” Fach“<br />
gesprochen wird. Dieses Experiment zeigt, daß <strong>Mensch</strong>en beim Erkennen<br />
von Sprache auch die visuelle Information die vom Sprecher kommt,<br />
nutzen. Dieser Effekt wird nach seinem Entdecker McGurk Effekt genannt [?].<br />
Ein weiteres Beispiel dafür ist die in diesem Zusammenhang gerne<br />
verwendete Cocktail-Party. Wenn viele <strong>Mensch</strong>en in einem Raum gleichzeitig<br />
reden, muß zum Verständnis des Gesprächspartners mehr als nur die Schallwelle<br />
des Sprechers analysiert werden. Weil wir zwei Ohren haben, können<br />
wir eine Art ” Beam-Forming“ machen und uns auf den Schall, der aus einer<br />
bestimmten Richtung kommt, konzentrieren. Der Leser kann sich leicht<br />
davon überzeugen, wie wichtig in so einer Situation zwei Ohren sind, indem<br />
er sich ein Ohr mit der Hand zuhält und dann kaum noch die Position der<br />
einzelnen Sprecher nur mit einem Ohr bestimmen kann. Zusätzlich zu dem<br />
Konzentrieren auf eine bestimmte Richtung der Signalherkunft, kann unser<br />
Gehirn sich auch noch auf bestimmte Frequenzbereiche konzentrieren und<br />
so die Sprache des Gegenüber mehr ” verstärken“ als die anderen Geräusche<br />
im Raum. Und schließlich hilft es auch noch, auf die Mundpartie zu schauen<br />
und die Lippenbewegungen zu verfolgen. So können insbesondere solche<br />
Wörter, die akustisch leicht verwechselbar sind, z.B. ” man“ und ” wann“<br />
besser unterschieden werden.<br />
Viseme sind die optischen Gegenstücke zu den akustischen Phonemen.<br />
Ähnlich wie ein Wort aus mehreren Phonemen zusammengebaut werden<br />
kann, so erscheint es im Videobild als Folge verschiedener Viseme. Die Abbildung<br />
zwischen Phonemen und Visemen ist allerdings nicht bijektiv. So sind<br />
zum Beispiel die Wörter ” Haus“ und ” aus“ zwar akustisch unterscheidbar,<br />
aber nicht auf der Videoaufnahme. Der Fall, daß es verschiedene Viseme für<br />
denselben Laut gibt, ist in natürlicher Sprache praktisch ausgeschlossen und<br />
für das Lippenlesen nicht von Bedeutung.<br />
In den Anfängen des Lippenlesens waren die Anforderungen an die Bildqualität<br />
noch sehr hoch. In [?] wird eine sehr gute Beleuchtung von mehreren<br />
Seiten erwartet. Aus den Aufnahmen wurden bestimmte Eigenschaften der<br />
Lippen gemessen (Höhe, Breite, Umfang, Fläche, usw.). Diese Meßwerte<br />
bildeten einen Merkmalsvektor, der dann mit wortweise abgespeicherten<br />
Mustern mittels DTW verglichen wurde, um so für verschiedene Wörter<br />
Wahrscheinlichkeiten zu berechnen. Der Lippenleser wurde verwendet, um<br />
die akustische Erkennung von isoliert gesprochenen Ziffern und Buchstaben<br />
zu verbessern. Dabei wurden mit Hilfe eines akustischen Erkenners die n
26.1 Lippenlesen auf Videoaufnahmen 421<br />
besten Hypothesen extrahiert, und unter diesen dann die am besten mit<br />
dem visuellen Erkenner übereinstimmende gewählt. Die Fehlerrate des Akustischen<br />
Erkenners für Buchstaben konnte von 36% auf 34% gesenkt werden.<br />
Die berichtete Fehlerreduktion von 5% auf 0% bei der Ziffernerkennung<br />
berechtigt allerdings zu Zweifeln an der Signifikanz der Testdaten.<br />
Später folgten andere Ansätze, bei denen zum Beispiel der optische<br />
Fluß berechnet und zu Klassifikation benutzt wurde [?]. Erste neuronale<br />
Ansätze wurden von [?] verfolgt. Dabei wurden zunächst nur statische<br />
Grauwertbilder der Lippen verwendet. Erwähnenswert für diese Arbeit<br />
war die Tatsache, daß bei der auch hier vorgenommenen gemeinsamen<br />
Erkennung mit einen zusätzlichen akustischen Erkenner die Gewichtung<br />
der visuellen und akustischen Klassifikatoren auf Basis der Messung des<br />
Signal-Rausch-Abstandes vorgenommen wurde. Das führte dazu, daß bei<br />
stark verrauschten Aufnahmen mehr Wert auf das Videosignal und bei sehr<br />
sauberen Aufnahmen mehr Wert auf das Audiosignal gelegt wurde.<br />
In [?] werden TDNNs [?] verwendet. Allerdings wurden die Lippenbewegungen<br />
nicht mit Hilfe eine Videokamera aufgezeichnet sondern mit Hilfe<br />
von im Gesicht der Sprecher befestigten Sensoren. Die Klassifikation erfolgte<br />
durch Multiplikation der Wahrscheinlichkeiten des akustischen Erkenners<br />
und des TDNNs.<br />
Spätere Arbeiten gehen dazu über kontinuierliche Sprache zu verarbeiten<br />
und dynamische Ansätze zu verfolgen. Die Verwendung neuronaler Netze<br />
hat sich aber zumindest für die Analyse und Vorklassifikation der Videoaufnahmen<br />
gehalten. [?] verwendet MS-TDNNs [?] [?] für die Erkennung<br />
kontinuierlich gesprochener Buchstabiersequenzen. Das Besondere an der<br />
Arbeit ist, daß die gleiche konnektionistische MS-TDNN Architektur sowohl<br />
für die visuelle als auch für die akustische Erkennung verwendet wurde.<br />
Dies erlaubt zahlreiche Freiheiten bei der Entscheidung der Fusion der<br />
Informationsströme. Prinzipiell war es möglich, bei exakt synchronisierten<br />
Daten die Fusion der akustischen und optischen Merkmale schon auf<br />
Signalebene durchzuführen. Allerdings führten die großen Unterschiede in<br />
der Dimensionalität und Informationsgehalt des Videostroms gegenüber dem<br />
Audiostrom zu Schwierigkeiten (das Netz konzentrierte sich fast ausschließlich<br />
auf den Videostrom). Eine Fusion auf höherer Ebene (verdeckte Schicht<br />
des neuronalen Netzes) funktionierte wesentlich besser [?]. Die Fehlerraten<br />
konnten im sprecherabhängigen Fall gegenüber einem rein akustischen<br />
Erkenner auf sauberen Daten um bis zu 40% und bei verrauschten Daten<br />
um über 50% gesenkt werden.
422 26. Zusätzliche Modalitäten<br />
26.2 Sprecherlokalisierung<br />
In Szenarien, in denen <strong>Maschine</strong>n für die Perzeption menschlicher <strong>Kommunikation</strong><br />
eingesetzt werden – unabhängig davon, ob für <strong>Mensch</strong>-<strong>Mensch</strong>- oder<br />
<strong>Mensch</strong>-<strong>Maschine</strong>-<strong>Kommunikation</strong> – kommt es oft vor, daß die räumliche<br />
Position eines Sprechers von Bedeutung ist. So ist es zum Beispiel für das<br />
Erzeugen einer Zusammenfassung einer Besprechung wichtig festzuhalten,<br />
von welchem Sprecher was gesagt wurde. Auch wenn dem System die Sprecher<br />
nicht bekannt sind, so kann es dennoch jedem Besprechungsteilnehmer<br />
einen virtuellen Namen zuordnen. Wenn keine zusätzlichen perzeptiven<br />
Möglichkeiten über im Raum installierte Kameras existieren, dann besteht<br />
eine Person für das System aus einer Stimme und einer Position. Personen<br />
könnte man sicher auch über den Inhalt dessen, was sie sagen, identifizieren.<br />
Sicherer aber geht es indem man entweder die Stimme analysiert, was in<br />
der Komplexität vergleichbar aufwendig ist, wie die Erkennung der Sprache<br />
selbst, oder man stellt den Ort des Schallquelle fest, von der aus das gerade<br />
Gesagte kommt.<br />
26.2.1 Akustisch<br />
Wenn zur Aufnahme eines Sprachsignals mehr als ein Mikrophon verwendet<br />
wird, kann man auf die Position der Quelle des Signals Rückschlüsse ziehen.<br />
Betrachten wir die stereophone Aufnahme eines Signals. Jedes der beiden<br />
Mikrophone ist mit einem eigenen Eingang eines Mehrkanal-Analog-Digital-<br />
Wandlers verbunden. Die Verwendung eines solchen Wandlers ist nötig, um<br />
eine exakte zeitliche Zuordnung der einzelnen Abtastwerte aus verschiedenen<br />
Kanälen zu ermöglichen. Nehmen wir der Einfachheit halber an, die<br />
Aufnahmevorrichtung, das heißt die beiden Mikrophone und die Schallquelle,<br />
befinden sich in der selben Ebene. Das erste Mikrophon liefert die Abtastwerte<br />
X1 = (x1[1], x1[2], . . .x1[n]) und das zweite Mikrophon die Werte<br />
X2 = (x2[1], x2[2], . . . x2[n]). Nehmen wir außerdem an, daß die Schallwellen,<br />
die bei den beiden Mikrophonen ankommen, sich nur unwesentlich voneinander<br />
unterscheiden, und daß der Hauptunterschied der zeitliche Versatz ist,<br />
also das der Schallquelle nähere Mikrophon die Welle zuerst mißt bevor diese<br />
auf das entferntere Mikrophon trifft. Wenn die beiden gemessenen Signale<br />
ausreichend ähnlich<br />
<br />
sind, kann man mit Hilfe der Korrelation den Zeitversatz<br />
d = argmaxd x1[i]·x2[i−d] messen. Bei einer Abtastrate von r Hz bedeutet<br />
ein Zeitversatz von m Abtastwerten einen Laufzeitunterschied von r · m Sekunden.<br />
Bei einer Aufnahme mit für die Spracherkennung typischen 16 kHz<br />
kann also der Laufzeitunterschied mit einer Genauigkeit von ca. 1/16000 Sekunde<br />
gemessen werden. Wenn nun noch die Schallgeschwindigkeit c bekannt<br />
ist, dann läßt sich daraus der Distanzunterschied der Schallquelle zu den<br />
beiden Mikrophonen berechnen:
∆d =<br />
m · r<br />
c<br />
26.2 Sprecherlokalisierung 423<br />
(26.1)<br />
Aus der Mathematik ist bekannt, daß die Menge der Punkte, die den<br />
gleichen Abstandsunterschied zu zwei gegebenen Punkten a und b haben,<br />
eine Hyperbel mit den beiden Brennpunkten a und b ist (s. Abb. 26.1).<br />
Betrachtet man noch das Vorzeichen des Abstandsunterschieds, dann bleibt<br />
für die mögliche Position der Schallquelle nur noch eine Hälfte einer Hyperbel.<br />
a<br />
∆a<br />
b<br />
∆b<br />
Abb. 26.1. Schallquellenortung mit 2 Mikrophonen<br />
Wenn die beiden Mikrophone so im Raum angeordnet sind, daß die<br />
Schallquelle eigentlich nur auf einer Seite der Verbindungsgeraden sein kann<br />
(z.B. wenn die Mikrophone an einer Vorrichtung angebracht sind, die an einer<br />
Wand befestigt ist), dann bleibt nur noch ein Arm einer Hyperbelhälfte. So<br />
kann zumindest der ungefähre Winkel der Schallquelle zu den Mikrophonen<br />
geschätzt werden. Für einige Anwendungen kann diese Schätzung schon<br />
genügen, zum Beispiel um ein Richtmikrophon auf die Quelle auszurichten<br />
oder um einen Roboter zu rufen, der sich dann zum Rufenden bewegt bzw.<br />
seine Kamera entsprechend positioniert.<br />
a b<br />
00000<br />
11111<br />
00000<br />
11111<br />
00000<br />
11111<br />
00000<br />
11111<br />
00000<br />
11111<br />
Abb. 26.2. Geschätzter Winkel zur Schallquelle
424 26. Zusätzliche Modalitäten<br />
Eine wichtige Rolle spielt der Abstand der beiden Mikrophone. Wenn<br />
dieser zu gering ist, dann wird durch die Ungenauigkeit bei der Bestimmung<br />
der maximalen Korrelation ein Fehler gemacht. Zwar ist es möglich, nicht<br />
nur diskrete natürlichzahlige Werte d für die Korrelation zu verwenden<br />
(z.B. indem man stückweise Polynome durch die Abtastwerte schätzt und<br />
gegeneinander verschiebt), aber eine perfekte Messung des Laufzeitunterschiedes<br />
ist nicht möglich, insbesondere bei stark verrauschten Aufnahmen.<br />
Der Meßfehler fällt umso stärker aus, je geringer der Abstand zwischen den<br />
Mikrophonen ist. Im Extremfall, wenn der Abstand der Mikrophone kleiner<br />
ist als die Strecke, die der Schall in der Zeit zwischen zwei Abtastungen<br />
zurücklegt, kann die Korrelation nur für d ∈ {−1, 0, 1} maximal werden.<br />
Wird also nur ein diskretes d bestimmt, dann wird der Raum der möglichen<br />
Schallquellen nur in drei Unterräume getrennt. Es ist also sinnvoll, die<br />
beiden Mikrophone möglichst weit voneinander zu positionieren.<br />
Es ist nun nicht weiter schwierig, mit Hilfe eines dritten Mikrophons<br />
zwei weitere Hyperbeln zu berechnen, so daß sich alle drei in einem Punkt<br />
schneiden, in dem die Schallquelle liegen muß. Wir lassen die dazu gehörige<br />
Mathematik weg, da sie im wesentlichen nur aus dem Lösen eines unansehnlichen<br />
Gleichungssystems besteht und vom interessierten Leser leicht<br />
durchgeführt werden kann.<br />
Bei na Mikrophonen können also n/2 · (n − 1) Hyperbeln berechnet und<br />
alle miteinander geschnitten werden. Ist n hinreichend groß, dann können<br />
so viele Hyperbelschnitte berechnet werden, daß trotz verschiedener Ungenauigkeiten<br />
bei den Bestimmungen der Hyperbeln, der Durchschnitt aller<br />
Schnittpunkte eine sehr gute Schätzung für den Ort der Schallquelle darstellt.<br />
Beim menschlichen Hören mit zwei Ohren (dem binauralen Hören),<br />
spielen neben dem Laufzeitunterschied auch weitere Effekte eine Rolle. So<br />
” hören“ wir zum Beispiel den Schallschatten, den unser Kopf wirft. Wenn<br />
ein Signal von rechts kommt, dann kommt es am linken Ohr nicht nur später<br />
an als am Rechten, sondern auch noch durch den Kopf etwas gedämpfter.<br />
Diese Dämpfung hilft uns zusätzlich bei der Lokalisierung der Schallquelle.<br />
Ähnlich wie es für einäugige <strong>Mensch</strong>en möglich ist, dadurch dreidimensional<br />
zu sehen, daß der Kopf bewegt wird und so ein Auge die Aufgabe von<br />
zwei Augen quasi im Zeitmultiplexverfahren übernimmt, genauso können<br />
wir auch bei Hören, die Lokalisierungsgenauigkeit durch Bewegen des Kopfes<br />
verbessern. Insbesondere bei recht hochfrequenten Geräuschen, bei denen<br />
die Bestimmung der Laufzeitunterschiede besonders schwierig ist, kann man<br />
diese oft nur noch mit Zuhilfenahme von Kopfbewegungen orten.
26.2 Sprecherlokalisierung 425<br />
Eine andere Möglichkeit, die räumliche Auflösung des Gehörs zu verbessern,<br />
ist die Verwendung von Basisverbreiterern, wie sie in der Seefahrt<br />
zur Lokalisierung von Nebelhörnern heute noch eingesetzt werden. Dabei<br />
werden in jedes Ohr das Ende eines tubus-, muschel- oder kegelförmigen<br />
Schalleiters gesteckt, während die anderen Enden für die Schallaufnahme<br />
dienen und einen wesentlich größeren Abstand voneinander haben als die<br />
Ohren des <strong>Mensch</strong>en. Auf diese Art ist eine viel exaktere Bestimmung<br />
der Korrelation der beiden gehörten Signale und somit eine Messung von<br />
Laufzeitunterschieden möglich.<br />
Beamforming<br />
Beim Beamforming nutzt man die gleichen Techniken wie bei der Sprecherlokalisierung<br />
mittels Mikrophonarrays. Während bei der Sprecherlokalisierung<br />
der Laufzeitunterschied des Schalls von der Schallquelle zu verschiedenen<br />
Mikrophonen gemessen wird, wird beim Beamforming den eintreffenden<br />
Signalen je nach Mikrophon eine berechnete Verzögerung zugefügt, so daß<br />
die Summe der unterschiedlich verzögerten Signal alle Schallwellen, die von<br />
einer bestimmten Quelle kommen verstärkt und die Signale, die aus anderen<br />
Richtungen kommen unterdrückt.<br />
Wenn xi(t) das Signal bezeichnet, das am Mikrophon Mi ankommt, und<br />
∆i die Schallaufzeit vom gewünschten Ort Q bis zu Mi ist, dann berechnet<br />
sich das endgültige Signal x(t) wie:<br />
x(t) = <br />
xi(t − ∆i) (26.2)<br />
i<br />
Die Folge ist, daß in x(t) die Schallwellen von allen Orten außer Q nicht<br />
in Phase sind und nur die Wellen von Q in Phase sind. Eigentlich ist die<br />
Bezeichnung ” Beamforming“ zu schwach, denn in Wirklichkeit kann man das<br />
Verfahren bei Verwendung von drei oder mehr Mikrophonen ” Spotforming“<br />
nennen, denn es werden nicht nur Wellen aus einer bestimmten Richtung<br />
sondern von einem bestimmten Punkt selektiert.<br />
26.2.2 Mit Videoaufnahmen<br />
Eine weitere Möglichkeit, eine Sprecherlokalisierung durchzuführen ist die<br />
Verwendung einer Videokamera. Mit Hilfe eines Gesichterdetektionsverfahrens<br />
[?] und Gesichterverfolgungsverfahrens können Gesichter im Raum<br />
erkannt werden, die Analyse der Lippenregion sollte selbst bei entfernten
426 26. Zusätzliche Modalitäten<br />
Kameras, deren Aufnahmen nicht zum Lippenlesen geeignet sind, erkennbar<br />
sein, ob die Lippen sich bewegen. Die Korrelation der Information, wo sich<br />
im Raum bewegende Lippen befinden, mit der Information der akustischen<br />
Schallquellenlokalisierung gibt dann eine Robuste Schätzung der Position<br />
des Sprechers wieder.<br />
26.3 Handschrifterkennung, Gestikerkennung<br />
In der Handschrifterkennung unterscheidet man grundsätzlich zwischen zwei<br />
verschiedenen Ansätzen, der ” Offline“- und der ” Online“-Erkennung. Bei der<br />
Offline-Erkennung liegt dem Erkenner nur das Bild des handgeschriebenen<br />
Textes vor, bei der Online-Erkennung kann der Erkenner zusätzlich die<br />
gemessene Dynamik der Schrift zur Erkennung verwenden. In der Regel<br />
führt diese zusätzliche Information zu besseren Erkennungsraten, so daß<br />
sogar Systeme entwickelt werden, die versuchen, aus dem statischen Bild die<br />
verlorene Dynamikinformation zu rekonstruieren.<br />
Außer zur Erkennung von handgeschriebenen Texten bietet sich die<br />
Modalität der stiftbasierten Eingabe auch für die Erkennung von Formeln,<br />
Skizzen, Bildern und bestimmten Schreibgesten an. Während es einigermaßen<br />
einfach ist, in Skizzen zu erkennen, ob ein Objekt ein Rechteck<br />
oder ein Kreis ist, so gehört zur genauen Interpretation von komplexeren<br />
Objekten und insbesondere von deren Relationen zueinander wesentlich<br />
mehr ” Intelligenz“.<br />
Als zusätzliche Modalität zur Spracherkennung hat sich die Handschrifterkennung<br />
im Zusammenhang mit der Korrektur von Erkennungsfehlern von<br />
Diktiererkennern hilfreich gezeigt (s. folgenden Abschnitt).<br />
26.4 Fehlerbehandlungsmethoden<br />
Die Erfahrung hat gezeigt, daß die allermeisten stochastischen Klassifikatoren,<br />
sei es für die Erkennung von Sprache, Handschrift, Gesten oder<br />
Bilder, Fehler machen. Je nachdem, um was für eine Anwendung es sich<br />
handelt, sind Fehler mehr oder weniger tolerierbar. Bei einem Dialogsystem,<br />
bei dem der Benutzer per Sprache ein Kommando gibt ist es nicht weiter<br />
problematisch, wenn zwar das eine oder andere Wort des Kommandos<br />
mißverstanden wird, aber die gewünschte Aktion dennoch richtig verstanden<br />
und ausgeführt wird. So ist es zum Beispiel egal, ob der Erkenner in einem<br />
Videorecorder beim Kommando ” nimm die Tagesschau auf“ fälschlicherweise<br />
” nimm den Tagesschau auf“ verstanden wird. Hauptsache, das Gerät
26.4 Fehlerbehandlungsmethoden 427<br />
zeichnet die Tagesschau auf. Wenn man aber diesen Satz in ein Diktiersystem<br />
eingibt, so ist jeder einzelner Fehler ärgerlich und muß korrigiert werden.<br />
Bei den frühen käuflichen Diktiersystemen konnte man ein Codewort<br />
verwenden, das den Erkenner darüber informierte, daß das letzte Wort<br />
falsch erkannt wurde. So konnte man zum Beispiel ” oops“ sagen und das<br />
mißverstandene Wort wiederholen. Ein doppeltes Oops würde zum Ersetzen<br />
des vorletzten Wortes verwendet werden können. Entsprechend viele Oops<br />
hintereinander würden den Cursor um genauso viele Wörter zurück setzen.<br />
Selbst wenn man davon ausgeht, daß Fehlerkennungen sehr selten sind,<br />
so ist das Problem meistens nicht durch einfaches Wiederholen des falsch<br />
erkannten Wortes gelöst. Entweder spricht man das Wort bei der Wiederholung<br />
genauso aus wie beim ersten Mal, was dazu führt, daß der Erkenner<br />
genau den gleichen Fehler noch einmal macht, oder man tendiert zur<br />
Hyperartikulation und versucht das Wort überdeutlich auszusprechen, was<br />
dazu führt, daß es sich für den Erkenner ganz anders ” anhört“ als reguläre<br />
nicht hyperartikulierte Beispiele und so erst recht zu Erkennungsfehlern führt.<br />
Wenn wir uns zum Ziel setzen, einen Text möglichst schnell in einen<br />
Computer einzugeben, dann stellt sich die Frage, ob eine reine Eingabe per<br />
Sprache inklusive der nötigen Korrekturen tatsächlich die schnellste Methode<br />
ist. Zweifelsfrei wäre eine fließen gesprochene Spracheingabe wesentlich<br />
schneller als eine Eingabe per Handschrift, Tastatur oder Buchstabieren.<br />
Eine Eingabe per Tastatur ist sicher die am wenigsten fehleranfällige, dafür<br />
aber auch viel langsamere als die Sprache – zumindest für den durchschnittlichen<br />
Computerbenutzer.<br />
In [?] werden verschiedene Methoden der Fehlerkorrektur miteinander<br />
verglichen und anhand von Benutzerstudien gezeigt, daß bei einer geeigneten<br />
Auswahl von Korrekturmechanismen ein Text signifikant schneller eingegeben<br />
werden kann als nur mit Sprache allein (s. Abb. 26.3).<br />
Zum Korrigieren eignen sich neben der Wiederholung von Abschnitten<br />
einer Äußerung auch die Neueingabe per Tastatur oder Handschrift. Auch<br />
das sprachliche Buchstabieren eines Wortes ist möglich und insbesondere<br />
dann sinnvoll, wenn es sich um ein Wort handelt, das sich nicht im Erkennervokabular<br />
befindet. Schließlich ist es oft am einfachsten, ein Wort aus<br />
einer Liste auszuwählen. Dabei wird, wenn das fehlerhaft erkannte Wort<br />
identifiziert ist, auf dem Bildschirm eine Liste von Alternativen angeboten.<br />
Dann kann mit Hilfe des Mauszeigers – oder des Fingers im Falle eines<br />
Touchscreens – das in der Liste hoffentlich vorhandene korrekte Wort<br />
ausgewählt werden.
428 26. Zusätzliche Modalitäten<br />
0000000000000000<br />
111111111111111100<br />
11<br />
0000000000000000<br />
111111111111111100<br />
11<br />
0000000000000000<br />
111111111111111100<br />
11<br />
Erstes Tippen eines Textes Tippkorrekturen<br />
0000000000000000000<br />
11111111111111111110000000000<br />
1111111111<br />
0000000000<br />
1111111111<br />
0000000000000000000<br />
11111111111111111110000000000<br />
1111111111<br />
Erstes Diktieren eines Textes Gesprochene Korrekturen<br />
0000000000000000000<br />
1111111111111111111<br />
0000000000000000000<br />
1111111111111111111<br />
00000<br />
11111<br />
00000<br />
11111<br />
00000<br />
11111<br />
Erstes Diktieren eines Textes Multimodale<br />
Korrekturen<br />
Abb. 26.3. Zeiten zum Eingeben und Korrigieren eines Textes<br />
26.5 Multimodale Zeitzuordnung<br />
Immer, wenn mehrere <strong>Kommunikation</strong>smodalitäten parallel verwendet<br />
werden, begegnet man der Problematik der Zuordnung von Ereignissen<br />
bzw. Beobachtungen in der einen Modalität mit den Ereignissen und<br />
Beobachtungen in anderen Modalitäten. Wenn z.B. in einem multimodalen<br />
Terminkalender ein Termin verschoben werden soll, indem sein Zeitpunkt<br />
mit dem Stift durch Umkreisen markiert wird, der stattdessen gewünschte<br />
Zeitpunkt danach auch mit einer Schreibgeste markiert wird und während<br />
des Schreibens die Worte ” Verschiebe diesen Termin nach da.“ gesprochen<br />
werden, so bereitet es dem <strong>Mensch</strong>en überhaupt kein Problem, das Ereignis<br />
des Markierens des ursprünglichen Zeitpunkts dem Satzabschnitt ” diesen<br />
Termin“ und das Ereignis des Markierens des neuen Zeitpunktes dem<br />
Zeitabschnitt ” nach da“ zuzuordnen. Dies ist selbst dann noch der Fall,<br />
wenn der zeitliche Versatz der beiden Modalitäten so groß ist, daß zwei nicht<br />
einander zuzuordnende Ereignisse tatsächlich gleichzeitig stattfinden.<br />
Prinzipiell gibt es zwei verschiedene Methoden, dieses Problem zu<br />
lösen. Entweder die beiden Modalitäten werden komplett unabhängig<br />
voneinander erkannt und danach werden die Zustände der erkannten<br />
Zustandsfolgen mit Hilfe von übergeordnetem Wissen einander zugeordnet.<br />
Oder es wird ein Verfahren angewandt, bei dem schon während der<br />
Erkennung beide Modalitäten gleichzeitig in einem Durchlauf abgearbeitet<br />
werden. Die zweite Idee entspricht einem ” mehrdimensionalen“ DTW-<br />
Algorithmus. Wenn zwei Modalitäten mit zwei Hidden-Markov-Modellen<br />
λ1 und λ2 mit den Zuständen S1 = {s11, s1n} und S2 = {s21, s2m} modelliert<br />
werden, dann ist es möglich, einen gemeinsamen Zustandsraum<br />
t
26.5 Multimodale Zeitzuordnung 429<br />
S ′ = S1 × S2 = {s11,21, s11,22, . . .s11,2m, . . . s12,21 . . . s1n,2m} als Kreuzprodukt<br />
der beiden Zustandsmengen zu definieren. Die Wahrscheinlichkeit<br />
a ′ 1i,2j,1k,2l für den Übergang von Zustand s1i,2j in den Zustand s1k,2l läßt<br />
sich dann berechnen als das Produkt der Übergangswahrscheinlichkeiten<br />
a1i,1k und a2j,2l berechnen. Abb. 26.4 illustriert die Ausführung eines<br />
zweidimensionalen DTW-Algorithmus.<br />
Distanzfrage<br />
Ziel<br />
Distanzfrage<br />
Start<br />
Ende der<br />
Zeigegeste<br />
Beginn der<br />
Zeigegeste<br />
Wie weit ist es von hier nach da?<br />
Abb. 26.4. mehrdimensionaler DTW Algorithmus<br />
Die Modalität auf der X-Achse kommt von einem Spracherkenner, die Modalität<br />
der Y-Achse kommt von einem Zeigegestenerkenner. Die gemeinsame<br />
Modalität ist auf der Z-Achse aufgetragen. Im angegebenen Beispiel wird ein<br />
DTW-Pfad für das (gemeinsame) Modell einer Distanzabfrage dargestellt.<br />
Eine Distanzabfrage besteht demnach aus den beiden Zuständen Distanzab-<br />
”<br />
frage Start“ und Distansabfrage Ziel“. Während der Spracherkenner durch<br />
”<br />
seine Zustände wie“, weit“, ist“, es“, von“, hier“, nach“ und da“<br />
” ” ” ” ” ” ” ”<br />
geht, durchläuft der Gestikerkenner die Zustände Beginn einer Zeigegeste“<br />
”<br />
und Ende einer Zeigegeste“. Der resultierende DTW-Pfad liefert so auto-<br />
”<br />
matisch die wahrscheinlichkeitstheoretisch optimale Folge von gemeinsamen<br />
” Doppelzuständen“ aus der sich direkt die Zuordnung der Spracherkennerbeobachtungen<br />
zu den Gestikerkennerbeobachtungen extrahieren läßt.
27. Entwicklung von Anwendungen<br />
In diesem Kapitel wird die Entwicklung einiger Beispielanwendungen für<br />
automatische Spracherkenner vorgestellt. Dabei werden vor allem Aspekte,<br />
die über das reine Trainieren eines Erkenners hinausgehen beleuchtet. In der<br />
Praxis stellt sich nicht selten heraus, daß der eigentliche Trainingsprozeß<br />
wie er in Kap. 12 und Kap. 13 behandelt wurde, nur einen kleinen Teil des<br />
gesamten Entwicklungsaufwandes darstellt.<br />
27.1 Ein Erkenner für eine neue Aufgabe<br />
Obwohl es heute bestimmt Tausende Implementierungen von Spracherkennern<br />
für die meisten gängigen Sprachen gibt, stehen Spracherkennungsforscher<br />
dennoch immer wieder vor dem Problem, einen Erkenner zu<br />
entwickeln, der einer neuen Aufgabe besser gewachsen ist als die vorhandenen<br />
Erkenner. Die Gründe dafür, daß kein existierender Erkenner ausreichend<br />
gut funktioniert sind mannigfaltig. Über die gleichen Gründe hinaus, die<br />
die Spracherkennung schwierig machen (s. Kap. 2) und die eine Adaption<br />
sinnvoll machen (s. Kap. 21), spielen immer wieder neue Algorithmen<br />
und Verfahren eine Rolle, und führen dazu, daß kein Erkenner universal<br />
und optimal ist. Zur Zeit ist nicht abzusehen, daß dies in naher Zukunft<br />
anders sein sollte. Spannt man einen hochdimensionalen Raum auf, in dem<br />
jede Dimension einer Eigenschaft der Sprache wie in Kap. 2 beschrieben<br />
entspricht, dann verwundert es nicht, daß immer wieder ” neue Aufgaben“<br />
auftauchen, die noch nicht gut genug gelöst sind.<br />
Als ” neue Aufgaben“ treten häufig neue Domänen oder neue Sprachen<br />
auf. Im folgenden wird die Entstehung eines Erkenners für eine neue Sprache<br />
beschrieben. Die groben Schritte lassen sich zusammenfassen als:<br />
• Vorbereitung (Analyse des Problems / der neuen Sprache)<br />
• Datensammlung (Audioaufnahmen und Texte)<br />
• Datenaufbereitung
432 27. Entwicklung von Anwendungen<br />
• Erzeugen der Erkennerumgebung (Lexikon, Phonemklassen)<br />
• Training und Evaluation<br />
• Einbau in die Anwendung<br />
• Qualitätsanforderungen überprüfen und erfüllen<br />
27.1.1 Vorbereitung<br />
Zur Vorbereitung gehören Aufgaben wie das Sammeln von Informationen<br />
über die neue Sprache. Viele Sprachen haben Eigenheiten, die es im Englischen<br />
und Deutschen nicht in der Art gibt. Einige Sprachen verwenden in<br />
der Schriftform meist keine Vokale (hebräisch, arabisch), andere Sprachen<br />
benötigen die Tonalität zur Bedeutungsunterscheidung (chinesisch), wieder<br />
andere haben eine enorme Flexionsfreiheit (koreanisch), und einige Sprachen<br />
verwenden Laute, die es in kaum einer anderen Sprache gibt. Solche<br />
Eigenheiten müssen im voraus bekannt sein, und es muß eine Lösung der<br />
mit ihnen verbundenen Probleme geplant werden.<br />
Zur Vorbereitung gehört auch die Planung der anstehenden Datensammlung.<br />
Viele Informationen lassen sich aus dem Internet besorgen. Wichtig ist<br />
zu wissen, ob die Sprache eine an die Aussprache angelehnte Orthographie<br />
hat, was in der Sprache ein ” Wort“ ist, welcher anderen Sprache, in der es<br />
bereits Erfahrungen gibt, sie ähnlich ist und so weiter.<br />
27.1.2 Datensammlung<br />
Eine typische Datensammlung beginnt mit der Spezifikation der benötigten<br />
Daten. Für kontinuierliche Erkennung großer Vokabulare sind mindestens<br />
ca. 10 Stunden reiner Sprache nötig. Die Zahl der Sprecher sollte möglichst<br />
groß sein (mehrere Dutzend). Die Verteilung der Geschlechter und der<br />
Altersstufen sollte einigermaßen repräsentativ sein. Der Sprechstil sollte<br />
möglichst dem Stil, für den der Erkenner gebaut wird entsprechen (vorgelesenen<br />
Sprache für Diktiererkenner, spontane Sprache für Dialogerkenner).<br />
Meistens werden Sprachdaten von freiwilligen ” Sprachspendern“ gesammelt.<br />
Wenn es um eine neue Sprache geht, ist es nicht immer leicht, eine<br />
ausreichende Menge Muttersprachler in der Nähe des Forschungslabors zu<br />
finden. Im GlobalPhone Projekt der Universität Karlsruhe [?] reisten daher<br />
Studierende verschiedener Nationalitäten mit Aufnahmegeräten in ihre<br />
Heimatländer und sammelten dort von Muttersprachlern Sprachaufnahmen.<br />
Für spontansprachliche Aufnahmen wird eine Art Beispieldrehbuch<br />
benötigt, in dem festgehalten ist, wie die Aufnahmen grob aussehen sollen,
27.1 Ein Erkenner für eine neue Aufgabe 433<br />
und anhand dessen sich die Sprachspender orientieren können. Aufnahmen<br />
spontaner Sprache ziehen einen enormen Aufbereitungsaufwand (s.u.) nach<br />
sich. Viel leichter ist die Aufbereitung von diktierten Daten. Dazu empfiehlt<br />
es sich, vor den Aufnahmen Texte zu sammeln, die dann vorgelesen werden<br />
können. Ein einfaches Programm kann den Spendern einen Satz auf dem<br />
Bildschirm eines tragbaren Computers anzeigen. Den Spendern kann man<br />
zumuten, nach jedem korrekt vorgelesenen Satz eine Taste zu drücken, so<br />
daß das Aufnahmeprogramm den nächsten Satz anzeigt. Falls der Spender<br />
einen Fehler macht drückt er eine andere Taste und wiederholt den Satz. Auf<br />
diese Art läßt sich sehr schnell eine große Menge transkribierter Aufnahmen<br />
sammeln. Die Auswahl der Texte ist wichtig. Wenn der Erkenner für eine<br />
bestimmte Domäne gedacht ist, ist es hilfreich, auch Texte aus dieser<br />
Domäne zu verwenden. Auf diese Art kann sichergestellt werden, daß die<br />
akustische Übereinstimmung (typische Spracheinheiten und phonetische<br />
Kontexte) zwischen dem Modell des Erkenners und der zu erkennenden<br />
Sprache möglichst groß ist.<br />
Die Aufnahmeeinrichtung sollte die gleiche Art Mikrophone verwenden,<br />
wie sie später bei der Erkennung zum Einsatz kommen. Wenn kein tragbarer<br />
Computer zur Verfügung steht, kann ein digitales Tonbandgerät verwendet<br />
werden. Statt der ” weiter“- und “Fehler“-Tasten auf dem Computer kann<br />
hier ein akustischer Signalgeber verwendet werden, der unterschiedliche<br />
Piepstöne erzeugt, die sich hinterher leicht automatisch detektieren lassen.<br />
27.1.3 Datenaufbereitung<br />
Zur Datenaufbereitung gehört das Organisieren der gesammelten Aufnahmen<br />
in einer Datenbank. Ein Eintrag in der Datenbank sollte mindestens eine<br />
Referenz auf die Audio-Datei, die Transkription des darin Gesprochenen<br />
und die Information über die Zugehörigkeit zur Trainings-, Entwicklungsoder<br />
Testdatenmenge. Weitere Informationen über den Sprecher können je<br />
nach später durchgeführten Verfahren auch hilfreich sein.<br />
Bei diktierten und vorsegmentierten Aufnahmen ist diese Aufgabe relativ<br />
einfach zu erledigen. In der Regel genügt es, alle Aufnahmen zur Kontrolle<br />
anzuhören und mit der Transkription zu vergleichen, so daß eventuelle<br />
Fehler erkannt und beseitigt werden können. Bei spontaner Sprache ist<br />
der Prozeß der Datenaufbereitung viel aufwendiger. Die nicht vorhandenen<br />
Transkiptionen müssen in mühevoller Handarbeit erstellt werden. Wenn<br />
gewünscht, werden im ersten Schritt die Aufnahmen in einzelne Äußerungen<br />
segmentiert. Die Transkribieren müssen die Aufnahmen anhören und den<br />
Text (am besten inklusive aller Geräusche und falsch ausgesprochener
434 27. Entwicklung von Anwendungen<br />
Wörter oder Wortfragmente) eintippen.<br />
Zu den wichtigsten Daten die vom Erkenner benötigt werden gehört das<br />
Sprachmodell. Diese sollte aus einer sehr großen Menge Text erzeugt werden.<br />
Für Diktiererkenner, die vorgelesene Sprache erkennen sollen, ist dies oft<br />
relativ einfach. Meistens werden Nachrichtentexte verwendet, die es im<br />
Internet oder von Zeitungsverlagen auf CDs gibt. Als erstes müssen solche<br />
Texte ” normalisiert“ werden. Dazu gehört die Entfernung der Interpunktion,<br />
die Verschriftung von Zahlen, die Uniformisierung von Abkürzungen und die<br />
Entfernung von Formatierungsinformationen. Dies ist nötig, damit später<br />
die Berechnung von Sprachmodellen problemlos durchgeführt werden kann.<br />
Für die Erkenner von Spontansprache ist es wesentlich schwieriger, eine<br />
vergleichbar große Menge Textdaten zu sammeln. Die Standard Trainingsdaten<br />
für das Sprachmodell der Wall Street Journal Diktieraufgabe [?]<br />
umfassen über 300 Millionen Wörter. Für die spontanen Verbmobil Dialoge,<br />
mit denen ein großer Teil der Spracherkennungsforschung in deutscher Sprache<br />
durchgeführt wurde, standen hingegen gerade einmal 1/4 Million Wörter<br />
zur Verfügung. Daher empfiehlt es sich beim Erzeugen des Sprachmodells<br />
für spontane Sprache besonders vorsichtig umzugehen, und die wenigen<br />
vorhandenen spontanen Daten gegebenenfalls mit größeren nichtspontanen<br />
Daten zu interpolieren.<br />
Es gibt auch Bestrebungen, spontane Texte künstlich zu erzeugen.<br />
Die Idee hierbei ist es, große Mengen Schriftsprache so zu transformieren,<br />
daß die ähnlich wie spontane Sprache aussieht. Dazu gehören mehrere<br />
Einzeltransformationen wie das Umstellen von Wörtern, das Aufteilen<br />
langer Sätze in kürzere, das Ersetzen typisch schriftsprachiger Wörter durch<br />
umgangssprachliche und so weiter. Solche Verfahren werden Corpus Mapping<br />
genannt. Künstlich erzeugte Textkorpora sind aber erwartungsgemäß<br />
deutlich weniger wertvoll und für die Entwicklung von Spracherkennern<br />
weniger hilfreich als ” echte“.<br />
27.1.4 Erzeugen der Erkennerumgebung<br />
Bevor das Training beginnen kann müssen einige Entwurfskriterien festgelegt<br />
und einige Dateien erzeugt werden. Zu den Entwurfskriterien gehören zum<br />
Beispiel die Art der Berechnung der Emissionswahrscheinlichkeiten, dazu die<br />
Frage nach der Gestaltung des Parameterraums und der Signalverarbeitungsmethoden.<br />
Ohne weiteres Wissen wird man hier die gleichen Entscheidungen<br />
treffen, die bei einen vorhandenen Erkenner bekanntermaßen erfolgreich<br />
funktioniert haben.
27.1 Ein Erkenner für eine neue Aufgabe 435<br />
Aus den Textkorpora müssen n-Gramme berechnet werden. Typische<br />
Größen dieser n-Gramm Sprachmodelle liegen in der Größenordnung von<br />
mehreren Millionen bis mehreren Zig Millionen Bigrammen und Trigrammen<br />
sowie den dazugehörigen Back-Off Parametern.<br />
Ein weiterer Wichtiger Bestandteil der Erkennerumgebung ist das Aussprachelexikon.<br />
Für die verbreitetsten Sprachen existieren schon zahlreiche<br />
Lexika. Für seltenere Sprachen oft keine in elektronischer Form. In manchen<br />
Sprachen (zum Beispiel Serbisch und Kroatisch) kann die Orthographie<br />
direkt auch als phonetische Umschrift verwendet werden. In anderen Sprachen<br />
ist dies nicht möglich. In der Tat gibt es sogar sehr viele Sprachen die<br />
ganz ohne Schriftform existieren – zugegebenermaßen sind solche Sprachen<br />
nicht besonders weit verbreitet. Das Aussprachelexikon muß das gesamte<br />
Trainingsvokabular abdecken. Wörter, die nicht im Lexikon enthalten sind,<br />
können nicht mit den üblichen HMM-Erkennungsmethoden von Kap. 12<br />
erkannt werden. An dieser Stelle entstehen oft sehr zeitraubende Arbeiten.<br />
Selbst in etablierten Sprachen wie die deutsche tauchen immer wieder Wörter<br />
auf, die in den bis dahin benutzten Lexika nicht vorkommen. So kann man bei<br />
einer deutschen Datensammlung von mehreren Stunden Sprache erwarten,<br />
Hunderte von Wörtern zu erfassen, für die noch keine phonetische Umschrift<br />
vorhanden ist. Einige davon lassen sich automatisch erzeugen – zum Beispiel<br />
weil sie Komposita von bekannten Wörtern sind. für andere müssen Text-To-<br />
Speech-Systeme verwendet werden. Da weder die Kompositaerkennung noch<br />
die Text-To-Speech-Systeme perfekt funktionieren bedarf ein derart automatisch<br />
erzeugtes Lexikon einer nachträgliche Durchsicht durch einen Experten.<br />
Das Aussprachelexikon definiert somit auch den Phonemsatz der neuen<br />
Sprache. Dieser bildet die Grundlage für die initialen akustischen Modelle.<br />
Für die Erzeugung von Kontextentscheidungsbäumen wird ein Fragenkatalog<br />
benötigt, der an den Phonemsatz der neuen Sprache angepaßt ist. In<br />
der Regel ist es möglich, mit Hilfe der IPA-Lautedefinitionen jedem Phonem<br />
artikulatorische Eigenschaften zuzuordnen und in etwa die gleichen Mengen<br />
dieser Eigenschaften über verschiedene Sprachen hinweg zu verwenden.<br />
27.1.5 Training und Evaluation<br />
Vor dem eigentlichen Training steht die Initialisierung des Parameterraumes.<br />
Wenn es sich um einen Erkenner für eine neue Sprache handelt, dann liegen<br />
in der Regel keine Labels vor und es existiert auch kein ausreichend guter<br />
Erkenner, der gute Labels erzeugen könnte. Wenn ein Erkenner in einer<br />
ähnlichen Sprache existiert könnte dieser dazu herangezogen werden, initiale<br />
(schlechte) Labels zu erzeugen. Problematisch wird dies allerdings dann,<br />
wenn die Phonemsätze der alten und der neuen Sprache nicht übereinstimmen.<br />
Phoneme aus der neuen Sprache kann der alte Erkenner gar nicht
436 27. Entwicklung von Anwendungen<br />
etikettieren. Eine mögliche Vorgehensweise ist das Kopieren vorhandener<br />
Phonemmodelle in die neuen Modelle. Dann sind diese zwar aus der Sicht des<br />
Erkenners akustisch identisch, aber sie lassen sich immerhin mehr schlecht<br />
als recht erkennen. So wäre es möglich, im einen neuen Erkenner für die<br />
deutsche Sprache das im Amerikanischen übliche oÍ(wie in go oder show)<br />
als Ersatz für das deutsche o zu verwenden.<br />
In einem so frühen Stadium der Erkennerentwicklung ist es nicht<br />
ratsam gleich kontextabhängige akustische Modelle zu verwenden. Da diese<br />
jeweils einen kleinen Teil des Merkmals- und Parameterraumes einnehmen<br />
benötigen sie auch eine umso exaktere Zuordnung von Beobachtungen zu<br />
Modellen. Solange aber kein guter Erkenner existiert, genügt die Qualität<br />
dieser Zuordnungen nicht für ” scharfe“ kontextabhängige Modelle.<br />
Der neue Erkenner muß sich mit den unpassenden Parametern akustischer<br />
Modellen einer anderen Sprache oder mit schlechten Labels quasi<br />
am eigenen Schopf aus dem Sumpf ziehen. Diese geschieht in der Regel in<br />
einem iterativen Prozeß. In jeder Iteration wird ein etwas besserer Erkenner<br />
trainiert, der etwas bessere Viterbi-Pfade (Labels) berechnet, die dann für<br />
die nächste Iteration bessere Modelle erzeugen. Die Qualität des Erkenners<br />
wird nach jeder Iteration auf einer Kreuzvalidierungsmenge gemessen. Wenn<br />
festgestellt wird, daß keine weiteren Verbesserungen zu erwarten sind, wird<br />
der Schritt in die nächst höhere Komplexitätsstufe gemacht. Dann können<br />
feinere, kontextabhängige Modelle trainiert werden, die wiederum in der<br />
Lage sind, bessere Labels zu erzeugen. Ein Ballungsalgorithmus zum Zusammenfassen<br />
verschiedener Kontexte optimiert schließlich den Merkmalsraum.<br />
Es ist nicht ungewöhnlich, daß dieser iterative Trainingsvorgang mehrfach<br />
wiederholt wird. Insbesondere im Hinblick darauf, daß einige Algorithmen<br />
sich gegenseitig beeinflussen. So könnte zum Beispiel in einem relativ frühen<br />
Stadium eine LDA-Transformation berechnet werden, die auf einer mangelhaften<br />
Etikettierung der Daten beruht. Mehrere Erkenner mit verschieden<br />
vielen Trainingsiterationen und Komplexitätsgraden ihrer Parameterräume<br />
bauen auf dieser Merkmalsraumtransformation auf. Es ist nun nicht sinnvoll,<br />
einfach eine Neue LDA-Transformation mit den Labels eines besseren<br />
Erkenners zu berechnen. Der so transformierte Raum würde nicht mehr auf<br />
die Modelle des Erkenners passen. Daher muß nach der Erzeugung einer<br />
neuen LDA-Matrix das akustische Modell des Erkenners auch von Anfang<br />
an neu Trainiert werden.
27.1 Ein Erkenner für eine neue Aufgabe 437<br />
27.1.6 Qualitätsanforderungen überprüfen und erfüllen<br />
Wenn der Erkenner fertig trainiert ist, kann es schon zu spät sein, bestimmte<br />
Änderungen vorzunehmen. Daher müssen gegebenenfalls einige Anforderungen<br />
schon während des Trainingsprozesses berücksichtigt werden. Andere<br />
werden oft erst hinterher erfüllt. Typische Anforderungen an Spracherkenner<br />
sind zum Beispiel die Erwartung, daß er in Echtzeit läuft. Zwar gilt auch<br />
bei der Entwicklung von Spracherkennern immer wieder der Wahlspruch<br />
der Softwaretechnik ” Make it work first, before you make it work fast“,<br />
allerdings kann eine ungeeignete Architektur des Parameterraumes dazu<br />
führen, daß eine Erkennung in Echtzeit hoffnungslos ist. Die Geschwindigkeit<br />
der Erkennung kann in der Regel mit einigen Parametern (Breite des<br />
Suchstrahls) eingestellt werden, wobei eine Reduzierung der Erkennungszeit<br />
so gut wie immer mit einer Erhöhung der Fehlerrate verbunden ist. Unter<br />
Umständen kann es nötig sein, einen kleineren Parameterraum oder ein<br />
kleineres Sprachmodell verwenden zu müssen, um Echtzeitanforderungen<br />
erfüllen zu können.<br />
Manche Aufgaben benötigen eine schritthaltende Erkennung. Das heißt<br />
der Erkenner muß bevor eine Äußerung beendet ist, den Anfang schon erkannt<br />
haben. Er arbeitet dann nicht auf einer fertigen Audio-Datei sondern<br />
auf einem Audio-Strom oder auf einer wachsenden Audio-Datei. Wenn der<br />
Benutzer eines intelligenten Vortragsunterstützungssystem zum Beispiel sagt<br />
” Auf der nächsten Folie sehen Sie wir die Ergebnisse dieser Experimente auf<br />
den Daten ausgefallen sind, die wir letztes Jahr im Rahmen des Projektes<br />
FAME gesammelt ...“. Wenn der Redner keine Sprechpause macht, wird ein<br />
Sprachdetektor auch kein Ende der Äußerung detektieren, und das System<br />
würde nicht erwartungsgemäß funktionieren, wenn es nicht schon am Anfang<br />
dieser Äußerung auf die nächste Präsentationsfolie schalten würde.<br />
Wenn schritthaltende Erkennung benötigt wird, muß dies gegebenenfalls<br />
in den Signalverarbeitungsroutinen des Erkenners berücksichtigt werden.<br />
Normierungsverfahren, die auf Äußerungsebene arbeiten (zum Beispiel<br />
verschiedene Mittelwertsubtraktionsverfahren), müssen darauf ausgerichtet<br />
werden, mit einem Audiodatenstrom zu arbeiten, dessen Ende nicht abzusehen<br />
ist. Für Mittelwertssubtraktionen bedeutet dies meistens, daß die<br />
Mittelwert auf einem Zeitfenster in der Vergangenheit berechnet werden<br />
müssen. Bei komplizierten Suchalgorithmen bedeutet schritthaltende Erkennung,<br />
daß es nicht sinnvoll ist, mehrere Vorwärts- und Rückwärtsdurchläufe<br />
über die Aufnahme zu machen, wenn nicht klar ist, wann der Rückwärtsdurchgang<br />
gestartet werden soll.<br />
Andere Qualitätsanforderungen beziehen sich zum Beispiel auf die<br />
Adaptierbarkeit des Erkenners. Die am meisten verbreiteten Adaptionsmethoden<br />
sind Vokaltraktlängennormierungen und Maximum-Likelihood
438 27. Entwicklung von Anwendungen<br />
lineare Regression (s. Kap. 21).<br />
27.2 Beispiel: Videorecorder<br />
Auch wenn der technische Fortschritt die Bedienung von Videorecordern<br />
durch Techniken wie Videotextauswahl und Showview-Codes vereinfacht<br />
hat, scheuen immer noch viele <strong>Mensch</strong>en vor der Programmierung der<br />
Geräte zurück und benutzten sie zumeist nur zum Abspielen ausgeliehener<br />
Videofilme.<br />
Die Schnittstellenproblematik der Videorecorder hat nichts damit zu tun,<br />
daß die Aufnahmetechnik veraltet ist. Egal, ob die Geräte VHS-Kassetten,<br />
DVD oder Festplatten verwenden, das Problem liegt vielmehr in der <strong>Kommunikation</strong><br />
des Gerätes mit dem Benutzer.<br />
Ende der neunziger Jahre wurde an der Universität Karlsruhe ein Gerät<br />
entwickelt, das es dem Benutzer ermöglicht, einen Videorecorder nicht nur zu<br />
programmieren, sondern ihn auch als elektronische Programmzeitschrift zu<br />
benutzen. Das Gerät versteht Fragen wie Wann kommen heute abend die<br />
”<br />
Nachrichten?“ oder “Gibt es heute einen Krimi?“, einfache Bandfunktionen<br />
” Wirf die Kassette aus!“, aber auch Programmieranweisungen “Nimm den<br />
Film mit John Wayne auf!“.<br />
Für die Spracherkennung wurde ein mit spontaner deutscher Sprache<br />
trainierter Erkenner verwendet. Das Vokabular war mit ca. 600 Wörtern<br />
sehr klein. Allerdings lag die Perplexität der Aufgabe bei teilweise über<br />
2 000. Dies lag daran, daß das Aussprachelexikon für einige Wörter Hunderte<br />
verschiedener Aussprachen hatte. Da keine ausreichenden Mengen an Textdaten<br />
mit <strong>Mensch</strong>-Videorecorder Gesprächen zur Verfügung standen, konnte<br />
auch kein sinnvolles n-Gramm Modell dafür trainiert werden. Würde man<br />
von den vielen Schauspieler-, Sportler- und Politikernamen sowie Titeln und<br />
Untertiteln von Sendungen und deren Themen abstrahieren dann ist es aber<br />
mögliche eine einfache Grammatik zu definieren, die die meisten üblichen<br />
Gespräche, die ein <strong>Mensch</strong> mit einem Videorecorder führen würde abdeckt.<br />
Auf den Messen, auf denen das Vorführgerät ausgestellt wurde stellte sich<br />
heraus, daß mehr als die Hälfte der Äußerungen von der Sorte waren:<br />
” Programmiere “, ” Wann kommt “, ” Ich<br />
möchte einen sehen“ oder ” aufnehmen“. So wurde<br />
mangels Sprachmodell ein Ähnliches Vorgehen, wie bei klassenbasierten<br />
Sprachmodellen gewählt, nämlich ein klassenbasiertes Aussprachelexikon.<br />
Neben den ca. 600 alltäglichen Wörtern, die in einem einfachen <strong>Mensch</strong>-<br />
<strong>Maschine</strong>-Dialog verwendet werden, gab es Wörter wie
27.3 Beispiel: Adressenerkennung 439<br />
oder . Diese hatten jeweils Hunderte verschiedener möglicher<br />
Aussprachevarianten. Aus dem Index der Varianten, die der Erkenner<br />
auswählte, konnte dann der entsprechende Sendungstitel oder Schauspielername<br />
generiert werden.<br />
Neben dem Spracherkenner wurde noch ein so genannter flacher<br />
Parser benutzt, der entsprechend der einfachen grammatischen Struktur<br />
der Äußerungen mit Hilfe von regulären Ausdrücken nach bestimmten<br />
Phrasen suchte und so die Äußerungen klassifizierte und deren Inhalte<br />
in Fallschablonen ablegte. Fallschablonen waren zum Beispiel: Programmieranweisung,<br />
Senderabfrage, Zeitabfrage, Bandlaufwerkkommando,<br />
Uhrzeitabfrage und andere. Darüber hinaus gab es Datenstrukturen für<br />
partielle Sendungsspezifikationen. Zu einer vollständigen Programmieranweisung<br />
gehörten auch die vollständige Sendungsspezifikation. Um dies<br />
zu erreichen genügte es in manchen Fällen nur einen Schauspielernamen<br />
zu nennen (wenn dieser im gesamten überschaubaren Fernsehprogramm<br />
nur einmal auftaucht), in anderen Fällen konnte eine Sendung auch durch<br />
Angeben des Senders und einer Uhrzeit, oder durch Angeben einer Sparte<br />
und etwas über den Inhalt der Sendung exakt identifiziert werden. Wenn<br />
der Parser eine Programmieranweisung oder eine Inforationsanfrage zu<br />
einer nicht vollständig spezifizierten Sendung erkannt hatte, wurde der<br />
Benutzer darüber informiert, daß mehrere Sendungen in Frage kommen<br />
und er wurde aufgefordert im Dialog die Sendung vollständig zu spezifizieren.<br />
Für den praktischen Einsatz des Gerätes war vorgesehen, daß es sich<br />
die Informationen über das Fernsehprogramm aus dem Internet oder aus<br />
dem bei vielen Sendern vorhandenen Videotext-Dienst besorgt. Das System<br />
erreichte eine korrekte Transaktionsrate von ca. 90% auf den kooperativen<br />
Eingaben der Messebesucher [?] [?].<br />
27.3 Beispiel: Adressenerkennung<br />
Abgesehen von den zahlreichen bereits im Einsatz befindlichen Diktiersystemen<br />
gehören zu den Anwendungen, die einigermaßen gut realisierbar sind<br />
und für die auch reichlich Bedarf besteht, gehören Adressenerkennungssysteme.<br />
Dabei geht es darum, daß viele Telefondienste während des Anrufs voll<br />
automatisch ablaufen, und es lediglich hinterher nötig ist, die Adressen der<br />
Anrufer abzuhören und einzutippen. Solche Vorgehensweisen sind bei vielen<br />
TV-Gewinnspielen, Kunden-Hotlines verschiedener Firmen, Werbeaktionen<br />
etc. üblich.
440 27. Entwicklung von Anwendungen<br />
Auf den ersten Blick erscheint eine Automatische Erkennung solcher<br />
Daten als hoffnungslos. Das Problem ist ähnlich schwierig wie die Bedienung<br />
von Navigationssystemen oder von Web-Browsern. Die riesige Menge an<br />
möglichen Namen – und Adressen bestehen nahezu nur aus Namen und<br />
einigen Zahlen – macht eine Erkennung extrem schwierig. Dennoch ist<br />
es so, daß der Arbeitsaufwand, der normalerweise für die Transkribierer<br />
entsteht wesentlich gesenkt werden kann, wenn ein beachtlicher Anteil der<br />
Adressen mit ausreichender Sicherheit automatisch erkannt werden könnte.<br />
Bei mehreren Millionen Personennamen in Deutschland ist dies allerdings<br />
ohne zusätzliche Maßnahmen mit einem Standard Erkenner nicht möglich.<br />
Nicht nur, daß ein noch so großes Aussprachelexikon viele Namen gar nicht<br />
enthalten würde, auch ein naives Sprachmodell wäre wenig hilfreich. Eine<br />
Erkennungsaufgabe mit einer Perplexität von mehreren Millionen wäre mit<br />
den heutigen Techniken aussichtslos.<br />
Es ist nun aber möglich, auf zweierlei Art das Problem dramatisch<br />
zu erleichtern. Zum einen werden nur diejenigen Aufnahmen automatisch<br />
transkribiert, bei denen eine ausreichend hohe Konfidenz festgestellt wird.<br />
Alle anderen werden verworfen, und an einen menschlichen Transkribierer<br />
verwiesen. Natürlich sollte der Anteil solcher Aufnahmen möglichst gering<br />
sein. Bei der Mehrzahl der Adressen könnte man allerdings zur Senkung der<br />
Perplexität ein Telefonbuch benutzen. Ein allgemeines Sprachmodell, daß<br />
Klassen für Ortsnamen, Postleitzahlen, Straßennamen, Hausnummern, Vorund<br />
Nachnamen verwendet und ansonsten einige Wörter berücksichtigt,<br />
die bei der Formulierung von Adressen verwendet werden können, hat eine<br />
relativ niedrige Perplexität, weit unterhalb der Perplexität von Diktiersystemen,<br />
ja sogar unterhalb der Perplexität von einfachen Dialogsystemen wie<br />
Zugfahrplan- oder Kinoprogramm-Auskunftssystemen. Nur die Perplexität<br />
innerhalb dieser Klassen ist sehr groß. Ohne Verwendung weiteren Wissens,<br />
wäre die Perplexität innerhalb der Nachnamen-Klasse bei mehreren hunderttausend.<br />
Wenn man aber den Ort und sogar die Straße kennt, dann<br />
ist die Auswahl der möglichen Namen schon viel kleiner und bei bekannter<br />
Hausnummer in vielen Fällen sogar eindeutig. Umgekehrt kann aber auch ein<br />
erkannter Name für die Verringerung der Perplexität bei der Erkennung der<br />
Adresse hilfreich sein. Im Grunde hängen alle Komponenten einer Adresse<br />
voneinander ab.<br />
Erste Vorgehensweise:<br />
Jede Komponente wird unabhängig von den anderen Komponenten<br />
erkannt. Die Wahrscheinlichkeit, daß die beste Hypothese des Erkenners<br />
auch gleich die richtige ist, ist äußerst klein. Wenn der Erkenner für jede<br />
Komponente eine n-besten Hypothesenliste liefert, dann ist zu erwarten,<br />
daß die richtige Hypothese im Schnitt einen besseren Rang hat als der
27.3 Beispiel: Adressenerkennung 441<br />
Bekannte Komponenten Anzahl möglicher restlicher Adressen<br />
keine 38114 164<br />
Postleitzahl 11006<br />
Postleitzahl + Hausnummer 3930<br />
Nachnahme 14097<br />
Tabelle 27.1. Perplexitätsreduktion durch vorgegebene Adressenkomponenten<br />
Durchschnitt, also in der besseren Hälfte der n-besten Liste zu finden ist.<br />
Wenn pi(j) die Wahrscheinlichkeit dafür ist, daß das Vokabularwort wj<br />
die Hypothese für die i-te Adreßkompontente ist, dann erhalten wir für die<br />
aus k Komponenten bestehende Gesamthypothese<br />
argmax<br />
j1,j2,...,jk i=1<br />
k<br />
pi(ji) (27.1)<br />
Da es sich bei den pi(j) meistens um Dichten handelt bietet es sich an,<br />
alternativ statt der Dichtewerte den Rang ri(j) für das Wort wj innerhalb<br />
der n-besten Liste der i-ten Komponente zu verwenden und dann<br />
argmin<br />
j1,j2,...,jk i=1<br />
oder<br />
argmin<br />
j1,j2,...,jk<br />
k<br />
ri(ji) (27.2)<br />
k<br />
ri(ji) (27.3)<br />
i=1<br />
oder eine ähnliche Formulierung für die Gesamthypothese zu verwenden.<br />
Zweite Vorgehensweise:<br />
Eine zweite Vorgehensweise ist möglich, insbesondere dann, wenn die<br />
Menge der in Frage kommenden Adressen vor der Erkennung deutlich eingeschränkt<br />
werden kann. Dann ist es möglich, eine kontextfreie Grammatik zu<br />
definieren, die alle erwarteten Adressen abdeckt. Für alle ca. 40 Millionen<br />
Adressen aus allen deutschen Telefonbüchern würde diese Grammatik riesige<br />
Ausmaße annehmen. Wenn es aber möglich ist, weitere Hilfsmittel zu Rate<br />
zu ziehen, wie zum Beispiel die automatisch ermittelbare Rufnummer des<br />
Anrufers, oder zumindest die Vorwahl, oder wenn durch die Natur des angebotenen<br />
Telefondienstes nicht alle möglichen Adressen in Frage kommen, so<br />
daß die zu erzeugende kontextfreie Grammatik ausreichend kompakt ausfällt,<br />
dann kann man einen reinen HMM-Erkenner auf dem durch die Grammatik
442 27. Entwicklung von Anwendungen<br />
definierten Zustandsraum laufen lassen. Je größer dieser Zustandsraum<br />
ist, umso mehr wird es nötig sein, diesen zu beschneiden. Ein geeigneter<br />
Kompromiß zwischen dem Anteil der zuverlässig erkannten Adressen und<br />
dem dafür benötigten Zeitaufwand muß dann je nach Anwendung gefunden<br />
werden.<br />
Dritte Vorgehensweise:<br />
Es ist möglich verschiedene Spezialerkenner neben einem gewöhnlichen<br />
allgemeinen HMM-Erkenner für kontinuierliche Sprache einzusetzen. So<br />
bietet es sich gerade für Adressenerkennung an, besondere Systeme für das<br />
Verstehen von Buchstabiersequenzen [?] und Zahlen zu verwenden. In einem<br />
ersten Schritt müssen in der Aufnahme die Passagen detektiert werden, in<br />
denen buchstabiert wird oder Zahlen gesprochen werden. Dies kann zum<br />
Beispiel durch Vergleich der Konfidenzmaße des Allgemeinerkenners mit<br />
den entsprechenden Maßen der Spezialerkenner geschehen. Wir erwarten<br />
dann auf den Passagen, in denen Zahlen gesprochen werden ein besonders<br />
gutes Verhältnis der Konfidenz des Zahlenerkenners zur Konfidenz des<br />
Allgemeinerkenners. Ähnlich ist es auch bei Buchtabiersequenzen. Die<br />
Erkennungsleistung spezialisierter Erkenner auf den für sie vorgesehenen<br />
Daten ist meist deutlich besser als die eines allgemeinen Erkenners. Wenn<br />
erst einmal auf diese Art die Postleitzahl einer Adresse erkannt ist, kann<br />
dann der Suchraum für die restlichen Komponenten einer Adresse drastisch<br />
reduziert werden. Dabei können auch erkannte Buchstabensequenzen zu<br />
Hilfe genommen werden.<br />
Diese schrittweise Reduzierung des Suchraums kann auf unterschiedlichen<br />
Wegen geschehen. So kann, wenn statt der Postleitzahl der Nachname oder<br />
eine andere Komponente konfident erkannt wurde diese zur Verkleinerung<br />
des Suchraums verwendet werden und die weniger konfidenten Komponenten<br />
dann später bei kleinerem Suchraum mit weniger Verwechslungsgefahr<br />
erkannt werden.<br />
Schließlich bietet es sich an, mehrere der oben aufgeführten Vorgehensweisen<br />
parallel zu verwenden und so eine weitere Quelle zur Konfidenzsteigerung<br />
zu haben. Nur solche Aufnahmen, die nicht durch mindestens zwei Vorgehensweisen<br />
zu identischen Adressen erkannt werden, werden zur manuellen<br />
Transkription weitergereicht.
28. Der moderne Vortragsraum<br />
<strong>Kommunikation</strong> kann in verschiedene Bereiche unterteilt werden. Die<br />
Begriffe <strong>Mensch</strong>-<strong>Maschine</strong>-<strong>Kommunikation</strong> (MMK) und <strong>Mensch</strong>-<strong>Maschine</strong>-<br />
Interaktion umfassen eine große Zahl verschiedener Konzepte. Der wohl<br />
häufigste Kontext, in dem von MMK gesprochen wird, sind graphische<br />
und mechanische Benutzerschnittstellen. Benutzerschnittstellen können<br />
mehr oder weniger natürlich sein. Je natürlicher sie sein sollen, umso<br />
mehr perzeptive Fähigkeiten müssen sie haben. Der uns in diesem Kapitel<br />
interessierende Bereich ist derjenige, in dem es um die maschinenunterstützte<br />
<strong>Mensch</strong>-<strong>Mensch</strong>-<strong>Kommunikation</strong> geht. Dazu gehören zum Beispiel<br />
Sprachübersetzungssysteme [?] oder Verhandlungen unterstützende Systeme<br />
[?]. Zwei weitere wichtige Szenarien sind einmal Besprechungen und Diskussionen,<br />
zum anderen Vorträge und Vorlesungen.<br />
<strong>Kommunikation</strong><br />
<strong>Mensch</strong>-<strong>Mensch</strong> <strong>Mensch</strong>-<strong>Maschine</strong><br />
interaktiv nicht interaktiv interaktiv nicht interaktiv<br />
Verhandlungen,<br />
Besprechungen,<br />
Vorträge etc.<br />
klassisch, ohne<br />
<strong>Maschine</strong>n<br />
Fernsehen,<br />
Radio etc.<br />
komplexe<br />
Geräte,<br />
GUIs etc.<br />
mit maschineller Unterstützung<br />
moderner Vortragsraum<br />
Transkription,<br />
Diktieren etc.<br />
Abb. 28.1. Verschiedene Bereiche der (maschineninvolvierten) <strong>Kommunikation</strong>
444 28. Der moderne Vortragsraum<br />
Warum bieten sich gerade Vorträge und Vorlesungen als Einsatzgebiet<br />
der sprachlichen <strong>Mensch</strong>-<strong>Maschine</strong>-<strong>Kommunikation</strong> an? Die zwei wichtigsten<br />
Motivationsgründe sind die Unterhaltung einer durchsuchbaren Datenbank<br />
und die ” Multimedialisierung“ von Vortragsräumen.<br />
” Es ist klar, was in der Informationsgesellschaft die knappste Ressource<br />
ist. Die menschliche Aufmerksamkeit.“ sagte einmal Herbert Simon, zu<br />
Lebzeiten Nobelpreisträger und Professor für Wirtschaftswissenschaften,<br />
Psychologie und Informatik an der Carnegie Mellon University in Pittsburgh,<br />
USA. Das Zitat faßt mehrere Forderungen an die <strong>Kommunikation</strong>stechnologie<br />
zusammen, Computer sollen ubiquitär sein, damit sie den <strong>Mensch</strong>en<br />
jederzeit und überall helfen können. Sie sollen pervasiv sein, also alle<br />
wichtigen Lebensbereiche durchdringen, und – ganz wichtig – sie sollen<br />
unsichtbar sein, also keine Aufmerksamkeit der Benutzer auf sich ziehen,<br />
sondern den <strong>Mensch</strong>en ermöglichen ihre gesamte Aufmerksamkeit den<br />
kommunizierten Inhalten sowie den anderen <strong>Mensch</strong>en, mit denen sie<br />
kommunizieren, zu widmen.<br />
Vorträge und Vorlesungen sind typische Ereignisse die als primäres Ziel<br />
die <strong>Kommunikation</strong> zwischen <strong>Mensch</strong>en haben. Ein moderner Vortragsraum<br />
sollte dafür sorgen, daß diese <strong>Kommunikation</strong> möglichst effizient und<br />
problemlos durchgeführt werden kann.<br />
28.1 Die Rolle der Spracherkennung<br />
Ein moderner Vortragsraum sollte ein multimodales System sein, das alle<br />
natürlichen <strong>Kommunikation</strong>sarten unterstützt. Die Sprache darf dabei<br />
nicht isoliert behandelt werden, sondern sie muß zusammen mit anderen<br />
Modalitäten interpretiert werden. Da Sprache aber zweifellos die einfachste<br />
und schnellste <strong>Kommunikation</strong>sart für komplizierte Sachverhalte ist, übernimmt<br />
sie in einem intelligenten interaktiven Raum die wichtigste Rolle<br />
unter den Modalitäten. In einem interaktiven Vortragsraum gibt es im<br />
wesentlichen drei verschiedene Arten von Sprache. Die erste ist solche, die<br />
direkt an den Raum gerichtet ist und Kommandos oder Anfragen an den<br />
Raum enthält oder Teil eines Dialogs mit dem Raum ist. Diese Sprache<br />
muß zwar nicht perfekt erkannt werden, aber dennoch nahezu perfekt<br />
verstanden werden. Erkennungsfehler sind weniger wichtig, wenn das System<br />
das gesagte dennoch versteht. Die zweite Art ist die Vortragssprache, also<br />
das, was der Redner über sein Thema erzählt. Diese Sprache muß weder<br />
perfekt erkannt noch verstanden werden. Es genügt, wenn die wichtigsten<br />
Inhalte erkannt werden, damit der Raum in der Lage ist, dem Vortrag zu<br />
folgen und abschätzen zu können, in welchem Stadium sich der Vortrag
28.1 Die Rolle der Spracherkennung 445<br />
befindet, und damit er nach dem Vortrag eine kurze Zusammenfassung für<br />
die Vortragsdatenbank generieren kann. Die dritte Art der Sprache ist die,<br />
die der Raum möglichst überhören sollte, also solche, bei der sich Benutzer<br />
des Raumes miteinander unterhalten.<br />
28.1.1 Automatische Bedienung der Medien<br />
Der Begriff ” Vorlesung“ stammt noch aus einer Zeit, in der Studenten und<br />
ein Dozent zusammenkamen. Die verwendeten Medien – sofern überhaupt<br />
welche verwendet wurden und nicht völlig freihändig vorgetragen wurde –<br />
bestanden aus einem handgeschriebenen Buch, das sehr schwer erhältlich<br />
war und nur mit sehr viel Aufwand reproduziert werden konnten. Und weil<br />
gleichzeitiges Lesen von vielen Personen in einem Buch sehr umständlich<br />
ist, wurde eben von einer Person vorgelesen, daher auch die Bezeichnung<br />
Vorlesung.<br />
Inzwischen sind die bei Vorlesungen verwendeten Medien viel leichter<br />
kopierbar. Oft sind sie sogar nahezu kostenlos aus dem Internet erhältlich.<br />
Sie sind nicht mehr handschriftlich sondern meist farbig und oft auch<br />
animiert. Trotz der einfachen Verfügbarkeit gibt es immer noch Vorlesungen.<br />
Ein wichtiger Grund, warum das Publikum immer noch zu Vorlesungen<br />
kommt ist die Unmittelbarkeit des Kontaktes zum Vortragenden und auch<br />
die Möglichkeit Zwischenfragen zu stellen. Zweifelsohne erfüllen Vorlesungen<br />
und Vorträge nicht nur den Zweck der Informationsvermittlung sondern vor<br />
allem auch einen sozialen Zweck, der im wesentlichen aus der Interaktion<br />
sowohl zwischen den Zuhörern und den Vortragenden als auch zwischen den<br />
Zuhörern untereinander besteht.<br />
Wenn wir die Entwicklung von Vorträgen und Vorlesungen über die Zeit<br />
extrapolieren, dann können wir erwarten, daß die Medien in Zukunft noch<br />
multimedialer werden. Sie werden immer mehr Video- und Audio-Dokumente<br />
und sogar interaktive Komponenten enthalten. Dieses wird insbesondere für<br />
die Vortragenden zweierlei Probleme mit sich bringen. Zum einen wird die<br />
Durchführung des Vortrags selbst komplizierter, zum anderen werden dafür of<br />
technische Geräte verwendet werden müssen, mit denen der Redner oft nicht<br />
vertraut ist. Daher sollte zu den zukünftigen Aufgaben eines Vortragsraumes<br />
neben dem Angebot technischer Geräte wie Projektoren, Lautsprecher, Videoabspielgeräte,<br />
Beleuchtung und Verdunkelung und Internet-Browser auch<br />
die Unterstützung der Anwesenden bei der Benutzung dieser Geräte gehören.<br />
Die ersten Schritte in Richtung eines intelligenten interaktiven Vortragsraumes<br />
bestehen darin einen einfachen Dialog zur Bedienung der<br />
wichtigsten Geräte anzubieten sowie das Weiterschalten der Vortragsfolien
446 28. Der moderne Vortragsraum<br />
zu übernehmen. Dazu gehören Benutzerkommandos wie ” Spiel dieses Video<br />
ab!“, “Könnten wir es etwas dunkler haben?“, oder “Wo ist der VGA-Stecker<br />
für den Projektor“. Solche Kommandos können teilweise sofort ausgeführt<br />
werden (Licht geht aus) oder einfach beantwortet werden (“Der Stecker liegt<br />
rechts auf dem Rednerpult.“), oder es wird etwas Unklares im Dialog geklärt<br />
( ” Welches Video meinen Sie?“).<br />
28.1.2 Verfolgen von Vorträgen<br />
Für die Archivierung von Vorträgen ist es weniger wichtig, daß das System<br />
das Gesprochene den einzelnen Folien oder sonstigen Präsentationsdokumenten<br />
exakt zuordnen kann. Es kann ja einfach mitprotokollieren zu<br />
welchem Zeitpunkt welche Folie aufgelegt war. So ist es dann nicht mehr<br />
schwierig eine Datenbasis (s. Abb. 28.2) anzulegen. Während des Vortrags<br />
ist es allerdings nötig, daß der Vortragsraum weiß, worüber der Redner<br />
gerade spricht, zum einen um so abhängig vom aktuellen Kontext passende<br />
Dienste anbieten zu können bzw. angeforderte Dienste richtig zu verstehen,<br />
und zum anderen um bei Bedarf automatisch Folien umzuschalten, Videos<br />
abzuspielen, Dokumente aus dem Internet zu besorgen und anzuzeigen.<br />
MY NAME IS *(IVI-<br />
CA) *(ROGINA)<br />
AND I WOULD LIKE<br />
TO INTRODUCE<br />
YOU TO THE<br />
*(INTERACTIVE) ...<br />
SPEAKING<br />
MAKING<br />
*(GESTURES)<br />
*(HAND-<br />
WRITING)<br />
EXPRESSING<br />
*(EMOTIONS)<br />
GIVING...<br />
HORSE<br />
BEACH<br />
*(RECO-<br />
GNITION)<br />
*(TOOLKIT)<br />
*(JANUS)<br />
+BREATH+<br />
HAS BEEN<br />
*(BENCH-<br />
MARKED)<br />
AT ...<br />
Abb. 28.2. Synchronisierung von Folien mit Erkennerhypothesen<br />
Das automatische Weiterschalten der Folien ist für einfache ” linear<br />
strukturierte“ Vorträge zunächst nur ein kleine Erleichterung für den<br />
Vortragenden. Wenn allerdings die Vorträge komplizierter und weniger linear
28.1 Die Rolle der Spracherkennung 447<br />
werden, wenn Folien nicht mehr linear durchgearbeitet werden oder wenn sie<br />
mit Bezug auf den Inhalt referenziert werden (zum Beispiel kann der Benutzer<br />
sagen “Zeige noch einmal die Folie mit der Tabelle mit den Ergebnissen der<br />
Experimente!“), dann kann dieser Dienst des Vortragsraumes noch hilfreicher<br />
sein. Die Entscheidung, ob eine neue Folie angezeigt werden soll, kann auf<br />
zwei Informationen basieren: Einmal die aktuelle Phase des Vortrags (welche<br />
Teile wurden schon bearbeitet, welche stehen bevor, worüber redet der Vortragende<br />
gerade) und zum anderen durch spezielle Auslöser, also bestimmte<br />
Wörter oder Phrasen, die eine bestimmte Folie mit großer Wahrscheinlichkeit<br />
identifizieren. Das können Wörter oder Wortfolgen aus der Folienüberschrift<br />
sein, oder Wörter, die nur auf einer einzigen Folie auftauchen beziehungsweise<br />
einen sehr hohen tfidf-Wert bezüglich einer Folie als Dokument haben.<br />
Unter der Voraussetzung, daß die vorgesehene Reihenfolge der Folien<br />
bekannt ist, kann eine Zuordnung der aktuellen Äußerung des Vortragenden<br />
zu einer Folie mit Hilfe eines DP-Algorithmus bestimmt werden. Dabei<br />
werden die vom Spracherkenner hypothetisierten Wörter mit denen auf<br />
den Folien verglichen (der Vergleich kann durchaus ” fuzzy“ stattfinden,<br />
so daß Wörter dennoch als ähnlich angesehen werden, auch wenn sie<br />
sich in ihre Flexionsform oder Zusammensetzung unterscheiden. Andere<br />
Ähnlichkeitskriterien wie bei der HDLA (s. Abs. 16.7.2) sind auch sinnvoll.<br />
Unter Berücksichtigung alles bis zu einem Zeitpunkt Gesagten kann ein<br />
Viterbi-Pfad berechnet werden, aus dem hervorgeht, welche Folie die zu<br />
diesem Zeitpunkt wahrscheinlichste ist. Der Anteil der Zeit, während der<br />
sich das System irrt und eine falsche Folie annimmt wird als Tracking-Fehler<br />
bezeichnet (engl. to track = verfolgen). In Abb. 28.3 zeigt der obere Balken<br />
der tatsächlichen zeitlichen Verlauf der benutzten Folien eines Vortrags,<br />
darunter die angenommenen Folien des Systems (nur aus den Hypothesen<br />
des Erkenners gefolgert). Die hellgrauen Bereiche sind diejenigen, in denen<br />
das System richtig liegt, die dunkelgrauen Bereiche sind die Tracking Fehler.<br />
Abb. 28.3. Tracking-Fehler
448 28. Der moderne Vortragsraum<br />
In [?] wird ein Tracking-Fehler einer einfachen Viterbi-Pfad-Berechnung<br />
um ca. 30% angegeben. Wird die Information des Viterbi-Pfades mit der<br />
Heuristik der Auslösewörter kombiniert kann diese auf ca. 5% gesenkt werden.<br />
28.1.3 Verwalten einer Vortragsdatenbank<br />
Im Hinblick darauf, daß Lerninhalte aus Vorlesungen und Informationen<br />
aus Vorträgen immer mehr über Datennetze verbreitet und gesucht werden,<br />
sollte eine sehr wichtige Aufgabe eines modernen Vortragsraums das Angebot<br />
eines Dienstes zur Archivierung von Vorträgen und Präsentationen und vor<br />
allem zum Suchen und Wiederfinden archivierter Vorträge sein. In [?] werden<br />
Arbeiten zum Archivieren und wiederfinden von Besprechungen vorgestellt.<br />
Die gleiche Vorgehensweise kann auch für Vorträge angewandt werden.<br />
28.2 Verfolgen eines Laserpointers<br />
Seit es die so genannten Laserpointer günstig zu kaufen gibt und diese<br />
kaum noch gefährlich sind, werden sie gerne an Stelle eines Zeigestockes<br />
während Präsentationen verwendet. Die Detektion eines Laserpointers auf<br />
der projizierten Präsentation kann für verschiedene Zwecke genutzt werden:<br />
Dies sind Unterstüzung des Vortragsverfolgers, Steuerung einer intelligenten<br />
Kamera, Verwendung lebendiger interaktiver ” Präsentationsfolien“, Interaktion<br />
mit dem Publikum. Diese werden im folgenden etwas näher beleuchtet:<br />
Wo möglich, läßt sich der Vortragsraum gleich mit einer kalibrierten<br />
Kamera ausstatten. Oft ist es aber so, daß ein Redner seinen ” eigenen kleinen<br />
Vortragsraum“ mit sich in seinem Notebook-Computer zu den Ereignissen<br />
trägt, bei denen er eine Präsentation geben möchte. Für solche Fälle muß<br />
das System zumindest ein wenig auf die wechselnde Umgebung adaptiert<br />
werden. Dies gilt sowohl für die akustischen Gegebenheiten aber auch für die<br />
Einstellungen der Video-Kamera. Die in allen Fällen bequemste Methode<br />
besteht darin, eine einfache Webcam auf die Projektionsfläche zu richten<br />
und die Kalibrierung vollautomatisch durchführen zu lassen.<br />
Zu dieser Kalibrierung gehören zum einen die Anpassung an die<br />
Lichtverhältnisse, zum anderen das Erkennen der Projektionsfläche auf dem<br />
Videobild. Ist die Projektionsfläche erst einmal erkannt, dann gilt es noch aus<br />
der Position des detektierten Laserpointers auf dem Videobild die entsprechende<br />
Position auf der Folie zu berechnen. Hierbei kann man im allgemeinen<br />
kaum hilfreiche Annahmen über die Projektion und deren Videoaufnahme<br />
machen. Manche Projektionen sind schon auf der Wand eher ein Trapez als
28.2 Verfolgen eines Laserpointers 449<br />
ein Rechteck. Zusätzlich ist oft die Projektionsfläche nicht vollständig senkrecht,<br />
und die Kamera kann auch nicht immer zentral im optimalen Abstand<br />
vor ihr positioniert werden. So kann man bestenfalls annehmen, daß das Bild<br />
der Projektionsfläche im Video zumindest ein Viereck darstellt (s. Abb. 28.4).<br />
Abb. 28.4. Beispielaufnahmen von Projektionsflächen<br />
In Abb. 28.5 ist eine Beispielaufnahme skizziert. Das Kamerabild ist die<br />
grau unterlegte Fläche. Die Präsentation ist durch die Punkte A, B, C und<br />
D begrenzt. Wird an der Stelle Q ein Laserpointer detektiert, dann sind<br />
die eigentlichen Koordinaten auf der Präsentation durch die Werte α und β<br />
geben, die wie folgt berechnet werden:<br />
A + α · (D − A) = Q + γ1 · (E − Q)<br />
D + α · (C − D) = Q + γ2 · (F − Q) (28.1)<br />
Genauer wird die Positionsbestimmung, wenn zusätzlich mögliche<br />
Krümmungen der Aufnahme der Projektion durch die Optik des Projektors<br />
oder der Kamera oder auch durch die Krümmung der Projektionswand<br />
berücksichtigt wird. In der Regel reicht die Auflösung einer einfachen
450 28. Der moderne Vortragsraum<br />
E<br />
Abb. 28.5. Berechnen der Position des Laserpointers auf der Folie<br />
Webcam nicht aus, um beliebig komplizierte Krümmungen zu schätzen.<br />
Allerdings ist der einfachste Schritt schon hilfreich, bei dem angenommen<br />
wird, daß die Ränder der Projektion als Kreisbögen darstellbar sind (vgl.<br />
Abb. 28.6, bei der das graue Rechteck das Kamerabild darstellt und die<br />
weiße gekrümmte Fläche die Folienprojektion). Dann kann man ähnlich wie<br />
bei Gl. 28.1 statt den Winkel zwischen den horizontalen Kanten, den Anteil<br />
des horizontalen “Halbmondes“ E − Q − F (unterbrochene Linien durch den<br />
Laserpunkt) am gesamten Halbmond, der durch die beiden Kreise K oben<br />
und K unten definiert wird, die relative vertikale Position des Laserpunktes<br />
berechnen.<br />
Eine sehr sinnvolle Anwendung für die Verfolgung eines Laserpointers<br />
ist die Positionierung eines Markierers. Laserpointer werden meist nur dazu<br />
verwendet, die Aufmerksamkeit des Publikums auf eine bestimmte Stelle<br />
der Projektion zu lenken. Leider ist es oft so, daß ein Zuhörer eine gewisse<br />
Reaktionszeit hat, um festzustellen, daß überhaupt ein Laserpointer auf die<br />
A<br />
D<br />
α<br />
β<br />
F<br />
Q<br />
C<br />
B
E<br />
K oben<br />
Q<br />
K rechts<br />
K unten<br />
H horiz<br />
H vert<br />
28.2 Verfolgen eines Laserpointers 451<br />
F<br />
G<br />
H<br />
K links<br />
Abb. 28.6. Positionsbestimmung bei zusätzlicher optischer Krümmung<br />
Projektion gerichtet wird. Dessen Position ist dann meist so unstabil, daß er<br />
bevor der Zuhörer erkannt hat, was hervorgehoben werden soll, schon wieder<br />
ausgeschaltet ist. Um ihn sinnvoll als Zeigestockersatz einzusetzen, müßte<br />
seine Erscheinung deutlich größter sein, als eine Art Piktogramm erscheinen<br />
und wesentlich stabiler positioniert werden. Alle diese Forderungen lassen<br />
sich durch ein Laserverfolgungssystem realisieren. Auf die Stelle, an der<br />
der Laser erkannt wurde, kann ein Zeigepiktogramm in Form eines Fingers<br />
projiziert werden. Die Bewegung des Punktes, verursacht durch zittrige<br />
Hände, kann durch die Software ausgeglichen werden. Der Zeiger kann<br />
dann auf der gewünschten Position verbleiben, auch nachdem der Laser<br />
abgeschaltet wurde – so lange bis er explizit wieder aus der Projektionsfläche<br />
herausbewegt wird.<br />
Ähnlich wie die meisten Präsentationsprogramme die Möglichkeit bieten,<br />
in bestimmten kleinen Bereichen wie der linken unteren Ecke mit Hilfe einer<br />
Schaltfläche oder mit Hilfe von Funktionstasten die Erscheinung und Funk-
452 28. Der moderne Vortragsraum<br />
tion des (Maus-)Zeigers einzustellen, so kann auch mit den Laserpointer eine<br />
Funktion ausgewählt werden, die zum Beispiel zwischen Fingerpiktogramm,<br />
Zeichenstift, Pfeil, Vergrößerungsglas und ähnliches wechselt.<br />
28.2.1 Unterstützung des Vortragsverfolgers<br />
Wird der Laserpointer zum Markieren einer Textpassage auf der aktuellen<br />
Folie verwendet, so kann diese Information dafür nützlich sein, die erkannten<br />
Hypothesen des Spracherkenners genauer den einzelnen Teilen der Präsentation<br />
zuzuordnen.<br />
Steuerung einer intelligenten Kamera<br />
Zur Archivierung von Vorlesungen und Vorträgen ist es sinnvoll, nicht nur die<br />
Folien abzuspeichern, sondern auch noch die Audio- und Video-Aufnahmen.<br />
Optimal wären Videoaufnahmen, die so aussehen, wie sie ein menschlicher<br />
Kameramann aufnehmen würde. Das heißt insbesondere, daß die Zoom-<br />
Funktion auf Weitwinkel gestellt wird, wenn im Vortrag nichts Besonderes<br />
passiert, in den anderen Fällen sollte die meiste Zeit die Projektion gefilmt<br />
werden und gelegentlich auch auf den Sprecher geschwenkt werden. Wenn der<br />
Sprecher über einen bestimmten Teil der Projektion spricht, ist es sinnvoll,<br />
diesen Teil zu vergrößern. Ein solches Verhalten läßt sich zum größten<br />
Teil automatisieren. Wenn eine neue Folien aufgelegt wird, wird diese eine<br />
Zeitlang festgehalten. Wenn sie ausreichend lange zu sehen war, kann die<br />
Kamera hin und wieder für eine kurze Zeit auf das Gesicht oder den Körper<br />
des Vortragenden schwenken. Immer wenn anhand der Erkennerhypothese<br />
ein Bereich der Projektion angesprochen wird, und insbesondere dann,<br />
wenn mit dem Laserpointer auf die Projektion gezeigt wird, wird dieser<br />
Teil vergrößert angezeigt. Eine derartige Aufnahme ist viel angenehmer zu<br />
verfolgen als die Aufnahme einer statischen Kamera, die immer das gleiche<br />
Bild zeigt.<br />
Außer der Archivierung hat ein ” intelligentes Kameramodul“ als ganz<br />
besonders wichtiges Einsatzgebiet räumlich verteilte Vorträge, bei denen<br />
das ganze Publikum oder ein oder mehrere Teile des Publikums sich in<br />
anderen Räumen als im Vortragsraum befinden. So wurden in den Jahren<br />
der hohen Informatik-Studierendenzahlen (2000 und 2001) vom Autor an<br />
der Universität Karlsruhe Vorlesungen in Informatik für zeitweise über 700<br />
Studierende in mehreren Hörsälen gleichzeitig gehalten. An den Interactive<br />
Systems Labs, die sowohl an der Universität Karlsruhe als auch an der<br />
Carnegie Mellon University in Pittsburgh, USA, angesiedelt sind, werden<br />
regelmäßig transatlantische Seminare durchgeführt. Für solche akademische,<br />
aber auch für ähnliche Veranstaltungen bei kommerziellen Videokonferenzen
28.2 Verfolgen eines Laserpointers 453<br />
ist die Übermittlung der Position eines Laserpointers sehr hilfreich, nicht<br />
zuletzt deshalb weil außer dem Redner selbst auch jeder aus dem Publikum<br />
so kommunizieren kann.<br />
Interaktive Präsentationsfolien<br />
Ein Laserpointer kann auch als eine Art Ersatz-Mauszeiger verwendet<br />
werden. Dies ermöglicht es, interaktive Schaltflächen auf den Folien unterzubringen.<br />
Wird eine Schaltfläche mit dem Laserpointer ausgewählt und wird<br />
eine Zeitlang darauf gezeigt, so kann dies detektiert und eine entsprechende<br />
Aktion ausgelöst werden. Optimal ist diese Funktionalität, wenn sie mit der<br />
Verarbeitung der Spracherkennerhypothese kombiniert wird. So kann dann<br />
der Redner mit der Sprache die Aktion bestimmen und mit dem Laserpointer<br />
das dazugehörige Objekt auswählen. Zum Beispiel könnten auf einer Folie<br />
mehrere Videos aufgeführt sein. Der Sprecher kann dann sagen ” Spiel dieses<br />
Video ab.“ und dabei mit dem Pointer eines der Videos auswählen.<br />
Es ist sogar möglich, während der Präsentation in diese hineinzuzeichnen.<br />
Dazu ist nur nötig, das Präsentationsprogramm so zu modifizieren, daß es<br />
an den Stellen auf die der Pointer zeigt eine Spur hinterläßt. Sicher sind<br />
die allermeisten Redner nicht in der Lage, einen Laserpointer so exakt zu<br />
bewegen, daß damit etwas so Feines wie Handschrift gezeichnet werden kann.<br />
Aber für grobe Objekte wie Striche, Ovale oder einfache Symbole reicht die<br />
Zeigegenauigkeit normalerweise aus.<br />
Interaktion mit dem Publikum<br />
Während die meisten Projektoren heutzutage Infrarot-Fernbedienungen<br />
haben, die gleichzeitig als Funk-Mauszeiger für einen angeschlossenen<br />
Computer fungieren können. Allerdings funktioniert dies normalerweise nur<br />
durch Betätigen von Tasten oder eines Rollballes auf der Fernbedienung und<br />
nicht durch Zeigegesten. Ein Vorteil von Laserpointern ist die Tatsache, daß<br />
seine Benutzung viel eher einem verlängerten Arm oder einem Zeigestock<br />
ähnelt und somit viel natürlicher ist. Ein weiterer Vorteil besteht in der<br />
Universalität. Sie sind unabhängig von der restlichen Hardware des Vortragsraumes.<br />
Und als dritten Vorteil muß man schließlich noch die Möglichkeit<br />
nennen, daß sich auch Personen aus dem Publikum mit einem eigenen<br />
Laserpointer an der Interaktion mit der Präsentation beteiligen können.<br />
28.2.2 Algorithmen zur Detektion von Laserpointern<br />
Im allgemeinen kann man nicht davon ausgehen, daß die Hardware von<br />
Projektoren und Kameras in einem Vortragsraum so aufeinander abge-
454 28. Der moderne Vortragsraum<br />
stimmt sind und so miteinander verbunden sind, daß die Kamera die<br />
Besonderheiten der Projektion berücksichtigen kann. Solche Besonderheiten<br />
sind zum Beispiel die Bildwiederholfrequenz. Wer kennt nicht die rückwärts<br />
rollenden Wagenräder der Postkutschen aus alten Wildwestfilmen oder die<br />
dunklen Balken, die über einen abgefilmten Bildschirm wandern. Diese<br />
Effekte kommen von unterschiedlichen Bildraten in der Bilddarstellung und<br />
der Aufnahme. Die gleichen Probleme kann man auch beim Abfilmen von<br />
projizierten Präsentationen beobachten. Darüber hinaus gibt es eine Vielzahl<br />
verschiedener Projektoren. Einige haben für jede der drei Grundfarben eine<br />
eigene Linse und einen eigenen Teilprojektor, andere projizieren für jedes<br />
Bild drei aufeinanderfolgende Teilbilder, für jede Grundfarbe eines. So kann<br />
es durchaus vorkommen, daß auf der Videoaufnahme immer nur der Rot-,<br />
Grün- oder Blauanteil eines Bildes zu sehen ist, aber nie ein Bild mit allen<br />
drei Farben gleichzeitig. Bei anderen Projektoren kommt es vor, daß nur<br />
ein Teil des Bildes auf der Aufnahme zu sehen ist und nie das komplette Bild.<br />
Die zwei naheliegenden Lösungen für die genannten Probleme sind das<br />
zeitliche Glätten entweder durch einen Algorithmus der aus mehreren aufeinanderfolgenden<br />
Bildern ein geglättetes berechnet oder durch Verwenden<br />
einer relativ langen Belichtungszeit. Beide Varianten bringen allerdings<br />
weitere Probleme mit sich. Die meisten handelsüblichen Kameras haben<br />
nicht die Fähigkeit, die das menschliche Auge hat, für verschiedene Teile des<br />
Sichtfeldes unterschiedliche Lichtempfindlichkeiten einzustellen. Wählt man<br />
eine relativ kleine Lichtausbeute wird die Aufnahmequalität schlecht, läßt<br />
man die Lichtausbeute unverändert, wählt aber eine lange Belichtungszeit,<br />
so wird die Belichtungsfläche extrem stark ausgeleuchtet und die Unterschiede<br />
zwischen dem hellen Laserpunkt und der Projektion werden immer kleiner.<br />
Besonders hilfreich ist die Betrachtung von ” Delta-Bildern“. Die meiste<br />
Zeit eines Vortrags bleibt die Projektionsfläche unverändert. Unter der<br />
Annahme, das die Kameraeinstellung so vorgenommen wurden, daß Asynchronizitäten<br />
keinen Effekt auf die Aufnahme haben, gibt es vier verschiedene<br />
Arten der Bildänderung. Erstens den Wechsel der Lichtverhältnisse (Sonne,<br />
Raumbeleuchtung), zweitens Verdeckungen der Projektionsfläche durch Personen<br />
oder Gegenstände, drittens das Wechseln der Folien und viertens das<br />
Erscheinen, Bewegen oder Verschwinden eines Laserpointers. Folienwechsel<br />
kann das System direkt ohne den Umweg über die Kamera detektieren.<br />
Änderungen der Lichtverhältnisse sind grundsätzlich bei allen videobasierten<br />
kognitiven Systemen problematisch. Man begegnet ihnen meist mit Helligkeitsnormierungsverfahren.<br />
Beim Verfolgen von Laserpointern spielen solche<br />
Änderungen eine untergeordnete Rolle, ebenso wie temporäre Verdeckungen,<br />
da diese in den wenigsten Fällen auch nur annähernd punktförmig sind und<br />
sich meistens auch auf mehrere Farben und nicht nur auf die Farbe des
Lasers auswirken.<br />
28.3 Erkennung spontaner Vortragssprache 455<br />
Die meisten heutigen Laser haben ein rotes licht. Einige sind grün.<br />
Für solche Laser ist eine Detektion am einfachsten, indem die Differenz<br />
der Ableitung des Grünanteils und der Ableitung des Rotanteils betrachtet<br />
wird. Wenn ein Bildfolge gegeben ist als folge von RGB Werten<br />
{R1(x, y), G1(x, y), B1(x, y), . . . Rn(x, y), Gn(x, y), Bn(x, y)}, dann kann die<br />
Position eines erscheinenden oder gerade bewegten Lasers zum Zeitpunkt t<br />
bestimmt werden als:<br />
(ˆx, ˆy) = argmax<br />
(x,y)<br />
(Rt(x, y) − Rt−1(x, y))<br />
− (Gt(x, y) − Gt−1(x, y))<br />
− (Bt(x, y) − Bt−1(x, y))<br />
(28.2)<br />
Gl. 28.2 basiert auf der Annahme, daß ein Laserpunkt so hell und so rot<br />
ist, daß die anderen Farben im Verhältnis zum Rot extrem schwach vertreten<br />
sind. Mit den bekanten ” Pixel-Koordinaten“ (ˆx, ˆy) kann dann nach Gl. 28.1<br />
die Position auf der Präsentation berechnet werden.<br />
28.3 Erkennung spontaner Vortragssprache<br />
Vortragssprache ist nicht ganz so spontan wie die Sprache in Besprechungen<br />
oder Telefonaten zwischen einander bekannten Personen. Bei Vorträgen redet<br />
meistens nur eine Person, ein gleichzeitiges Sprechen mehrerer ist kaum zu<br />
erwarten. Der Vortragende hat den Vortrag meistens ein wenig vorbereitet,<br />
oft auch die Präsentationsfolien selbst erstellt, so daß die Vortragssprache<br />
einigermaßen geplant ist. Dennoch ist sie wesentlich spontaner als diktierte<br />
Sprache. Die Verwendung eines völlig unadaptierten Diktiersystems zur<br />
Transkription von Vorträgen führt zu sehr schlechten Erkennungsraten, die<br />
drei bis fünf mal höher liegen als für diktierte Sprache [?]. Und dies gilt<br />
für die Benutzung von Nahbesprechungsmikrophonen. Bei Verwendung von<br />
Kragenmikrophonen steigt die Fehlerrate noch zusätzlich. Bis heute sind<br />
dem Autor keine Studien bekannt, die untersuchen, wie sich die mögliche<br />
Anspannung des Redners vor einem großen Publikum auf die Aussprache<br />
und insbesondere auf die Qualität der Spracherkennung auswirken. Man<br />
kann aber sicherlich davon ausgehen, daß die Situation in der sich ein<br />
Vortragender befindet der Sicherheit und Sauberkeit der Aussprache nicht<br />
gerade dienlich ist.<br />
Ein weiteres Problem von Vorträgen ist, daß sie sich meist auf ein ganz<br />
speziellen Thema beziehen und dieses auch tiefgreifend behandeln. Die
456 28. Der moderne Vortragsraum<br />
meisten guten Spracherkenner sind im wesentlichen mit Nachrichtentexten<br />
und vorgelesenen Nachrichten trainiert, so daß die Inhalte von zum Beispiel<br />
wissenschaftlichen Vortragen sehr schlecht darauf passen.<br />
Problematisch ist sehr wohl auch die Tatsache, daß oft keine Nahbesprechungsmikrophone<br />
verwendet werden. Ohne Adaption kann die Fehlerraten<br />
von Diktiererkennern auf Konferenzvorträgen bei über 90% liegen. Zu dieser<br />
großen Menge Fehler führt auch die größtenteils schlechte englische Aussprache<br />
von Nicht-Muttersprachlern. Eine deutliche Reduktion der Fehler auf ca.<br />
40% ist durch den Einsatz von MLLR-Adaption und Sprachmodelladaption<br />
möglich. Diese immer noch recht hohen Fehlerraten illustrieren deutlich wie<br />
problematisch Vortragssprache sein kann.<br />
28.3.1 Adaption des Sprachmodells<br />
Wenn Spracherkenner gute Erkennungsleistungen erbringen sollen, sind sie<br />
in der Regel auf irgend eine Art auf die Erkennungsaufgabe eingestellt. Auch<br />
wenn heute die Entwicklung immer mehr in Richtung sprecherunabhängiger<br />
Erkennung ganz ohne Einlernphase geht, so machen sprecherabhängige Erkenner<br />
immer noch wesentlich weniger Fehler. Aber nicht nur die Adaption<br />
an die akustischen Gegebenheiten ist hilfreich, sondern auch die Adaption<br />
des Sprachmodells. Gerade für die Schätzung von Sprachmodellparametern<br />
ist es sehr wichtig, daß eine große Menge an Textdaten existiert. Vorträge<br />
und Vorlesungen befassen sich oft mit wissenschaftlichen Themen, die man in<br />
den typischen Texten von Zeitungen nur sehr selten findet. Es ist viel leichter,<br />
riesige Mengen an politischen Nachrichtentexten zu sammeln als Texte über<br />
Spracherkennung. Selbst wenn man wissenschaftliche Abhandlungen als<br />
Quelle verwendet, so sind diese zwar sehr hilfreich bei der Erweiterung des<br />
Erkennervokabulars, aber der darin verwendete Sprachstil weicht sehr stark<br />
von der typischerweise recht spontanen Sprache eines Vortrags ab.<br />
Die häufigste Ausgangslage für einen intelligenten Vortragsraum ist die,<br />
daß das Thema des Vortrags und die Medien, die der Vortragende verwenden<br />
möchte, im voraus bekannt sind. Unter Umständen ” erfährt“ der Raum erst<br />
unmittelbar vor dem Vortrag, in dem Moment in dem der Redner seinen<br />
Notebook Computer anschließt, etwas über den Inhalt des Vortrags. Es ist<br />
nun wünschenswert, das ein Verfahren einsetzt, das mit Hilfe der wenigen<br />
Informationen, die es aus den Präsentationsfolien extrahieren kann, das<br />
Sprachmodell des Spracherkenners adaptiert. Da auf den Folien viel zu<br />
wenig Text steht, um damit robuste n-Gramme zu schätzen, benötigen wir<br />
also eine Ausgangslage, die auch mit sehr wenig Daten leicht und schnell<br />
adaptierbar ist.
28.3 Erkennung spontaner Vortragssprache 457<br />
Die Untersuchung der Präsentationsfolien und Dokumente verfolgt zwei<br />
Ziele. Das eine ist die Extraktion der wichtigen sinntragenden Wörter, das<br />
andere die Erzeugung einer textuellen Repräsentation (einfaches ASCII) der<br />
Dokumente, die dann dazu verwendet werden kann, eine Korrelation mit<br />
der Ausgabe des Spracherkenners zu berechnen. So weiß das System immer,<br />
über welchen Teil der Präsentation der Sprecher gerade spricht.<br />
Die extrahierten Wörter werden mit dem großen Hintergrundlexikon des<br />
Spracherkenners verglichen. Für jedes sinntragende Wort wird ein tfidf-Wert<br />
berechnet. Schließlich werden alle OOV-Wörter sowie die Wörter, deren<br />
tfidf-Wert über dem Durchschnitt liegt, als ” wichtige“ Wörter angesehen.<br />
Danach wird jedes wichtige Wort aus den Präsentationsdokumenten für<br />
eine Anfrage bei einer Internet-Suchmaschine verwendet. Die höchstrangigen<br />
m WWW-Seiten werden heruntergeladen und analysiert. Alle Fünfgramme<br />
deren mittleres Wort ein wichtiges Wort ist, werden extrahiert und abgespeichert.<br />
Zusätzlich können Anfragen gemacht werden, in denen mehrere<br />
(eventuell alle) wichtigen Wörter vorkommen. Bei solchen Anfragen kann<br />
erwartet werden, daß die gefundenen WWW-Seiten eine größere Ähnlichkeit<br />
mit dem Thema des Vortrags haben.<br />
Das primäre Ziel des Entwurfs des Sprachmodells ist es, zu ermöglichen<br />
daß neue Wörter möglichst einfach integriert werden können. Dafür eignet<br />
sich ein klassenbasiertes Trigramm-Sprachmodell. In [?] wird das Basis-<br />
Sprachmodell nur auf einem Vokabular besteht aus den häufigsten 2/3 der<br />
Wörter des Trainingskorpus trainiert. Die selteneren 1/3 der Trainingswörter<br />
werden mit Hilfe eines Ballungsverfahrens [?] zu einer Menge von Wortklassen<br />
zusammengeballt. Aus der Sicht des Basis-Sprachmodells handelt es sich<br />
bei den Klassen also um Klassen von OOV-Wörtern.<br />
Von den Klassen werden nur die Z größten verwendet. Alle kleineren<br />
Klassen werden in der Annahme, sie könnten eventuell durch zu wenige<br />
Trainingsdaten schlecht geschätzt sein, verworfen. Daraufhin wird ein<br />
klassenbasiertes Sprachmodell, bestehend aus dem Basis-Sprachmodell und<br />
den Klassen, erzeugt.<br />
Die entstehenden Klassen enthalten typischerweise Wörter gleicher Wortart,<br />
oder gleicher Flexionsform, aber auch Namen von Personen oder auch<br />
thematisch zusammenhängende Wörter, wie zum Beispiel in Abb. 28.7.<br />
Ein solches Sprachmodell ist nun dazu vorbereitet, neue Wörter aufzunehmen,<br />
indem sie als zusätzliches Element in eine passende Klasse eingefügt<br />
werden. Das Finden einer passenden Klasse geschieht wie folgt:
458 28. Der moderne Vortragsraum<br />
KLASSE-30 = { ASTHMA TUBERCULOSIS DIABETES POLIO PNEUMONIA<br />
DIARRHEA CHOLERA RAPHAEL ALCOHOLISM HEPATITIS MALARIA OBESITY<br />
MEASLES DEHYDRATION SCHIZOPHRENIA INGENUITY NAUSEA ADVIL<br />
MALNUTRITION ALLERGIES VALIUM UNTREATED MELANOMA HERPES<br />
ACETAMINOPHEN DYSENTERY ULCER SYPHILIS OSTEOPOROSIS COLDS<br />
LONGEVITY VOMITING PEROXIDE FLASHBACKS LIGGETT MENINGITIS ALS<br />
DIZZINESS TREMORS INFLUENZA SOYBEANS INDIGESTION DIPHTHERIA<br />
INSOMNIA NUMBNESS BULIMIA DEMENTIA LUPUS SIRHAN MENOPAUSAL<br />
AFFECTIONS PIMPLES MAIM MARKIE CHLAMYDIA POLYGAMY }<br />
Abb. 28.7. Beispiel für eine Wortklasse im Sprachmodell von [RS01]<br />
Sei v ein Wort das in das Sprachmodell eingefügt werden soll, und sei<br />
Φ(w) der Index der Klasse in die das Nicht-OOV-Wort w gehört. Für jede<br />
Klasse c ∈ Z wird Φv c (w) definiert als:<br />
Φ v ⎧<br />
⎨Φ(w)<br />
w ∈ V<br />
c(w) = c w = v<br />
⎩<br />
Φ(UNK) sonst<br />
(28.3)<br />
p(w|Φ v ⎧<br />
⎪⎨<br />
p(OOVc|c) · p(v|OOVc) w = v<br />
c (w)) =<br />
⎪⎩ #(w)<br />
#(Instanzen in c)<br />
w ∈ V<br />
(28.4)<br />
wobei<br />
p(OOVc|c) =<br />
und<br />
p(v|OOVc) =<br />
#(OOV-Instanzen in c)<br />
#(alle Instanzen in c)<br />
1<br />
#(verschiedene OOV Wörter in c)<br />
(28.5)<br />
(28.6)<br />
ist annähernd die Wahrscheinlichkeit dafür das Wort v unter den OOV-<br />
Wörtern in c ist, unter der Annahme daß alle Wörter darin gleichverteilt<br />
sind.<br />
Ĉv = argmax c∈Z<br />
wobei H = Φ v c(w1), . . . Φ v c(wj−1)<br />
<br />
j p(wj|Φ v c (wj)) · p(Φ v c (wj)|H)<br />
(28.7)<br />
Hier steht wj für das j-te Wort eines Textes der aus der Konkatenation<br />
aus dem Internet heruntergeladener Dokumente, die v enthalten, besteht<br />
Während in Gl. 28.7, H im allgemeinen die gesamte Historie des Wortes wj
28.3 Erkennung spontaner Vortragssprache 459<br />
meint, ist es sinnvoll, die Historie auf Trigramme zu beschränken, um so eine<br />
Übereinstimmung mit dem Sprachmodell des Erkenners zu gewährleisten.<br />
Eine Erweiterung des Verfahrens besteht darin, in Gl. 28.7 nicht nur<br />
die beste Klasse zu berechnen, sondern die besten n Klassen. Das optimale<br />
Ergebnis kann meist dadurch erzielt werden, daß die wichtigen Wörter in<br />
die besten drei bis fünf Klassen eingefügt werden. Durch das Einfügen aller<br />
wichtigen Wörter, auch der Nicht-OOV-Wörter kommen letztere mehrfach<br />
im Sprachmodell vor, einmal als einzelnen Individuum und einmal als<br />
Element einer oder mehrerer Klassen. Dies ist durchaus sinnvoll, denn mache<br />
Fachwörter haben in Vorträgen eine besondere Semantik, die möglicherweise<br />
besser durch die OOV-Klasse erfaßt wird als durch die durchschnittliche<br />
Verwendung des Wortes in den Trainingsdaten des Basis-Modells.<br />
Die in [?] vorgestellen Experimente belegen, daß die Wortfehlerrate des<br />
Spracherkenners auf drei verschiedenen Vorträgen allein durch Hinzufügen<br />
der aus den Vortragsfolien extrahierten OOV-Wörtern (ca. 5% der Vortragssprache)<br />
deutlich gesenkt werden konnte. Das Hinzufügen der ohnehin schon<br />
im Vokabular vorhandenen wichtigen sinntragenden Wörter in ausgewählte<br />
Sprachmodellklassen konnte die Fehlerrate darüber hinaus noch weiter reduzieren<br />
(s. Tab. 28.1).<br />
Vortrag A B C<br />
Ausgangssystem 33.5% 43.7% 31.0%<br />
nur OOV-Wörter hinzugefügt 28.1% 39.7% 29.8%<br />
alle ” wichtigen Wörter“ hinzugefügt 26.8% 37.8% 27.6%<br />
Tabelle 28.1. Fehlerrate des Vortragsverfolgers ohne/mit Sprachmodelladaption<br />
Im gleichen Experiment konnte gezeigt werden, daß auch die Tracking-<br />
Fehlerrate des nicht adaptierten Systems von zwischen 31.8% und 34.7% auf<br />
27.8% bis 31.0% beim adaptierten System verbessert werden konnte.<br />
Für die Leistung eines Vortragsverfolgers ist es selbstverständlich von<br />
größter Bedeutung, wie umfangreich die Informationen auf den Vortragsfolien<br />
sind. Wenn sich dort im wesentlichen nur Bilder und kaum Text befinden,<br />
dann ist die Aufgabe wesentlich schwieriger. Je mehr Text auf den Folien<br />
ist, und je näher der gesprochene Vortrag an den Folien liegt, umso sicherer<br />
arbeitet das System.
460 28. Der moderne Vortragsraum<br />
28.4 Das FAME Projekt<br />
Das EU-Projekt FAME beschäftigt sich unter anderem auch mit intelligenten<br />
Vortragsräumen. Es ist ein sehr gutes Beispiel dafür, welche Probleme<br />
auftauchen und welche Lösungen benötigt werden, wenn mehrere <strong>Mensch</strong>en<br />
gemeinsam an einer Aufgabe in einem intelligenten Raum arbeiten. FAME<br />
steht für Facilitating Agent for Multicultural Exchange. Am Projekt sind<br />
sieben akademische und industrielle Partner aus vier europäischen Ländern<br />
beteiligt [?].<br />
28.4.1 Ziele des Projektes<br />
Auch wenn das Projekt über die Problemstellung eines Vortragsraumes<br />
weit hinausgeht, so bildet dieser doch einen integralen Bestandteil des<br />
Gesamtsystems. Man kann Vorträge als Spezialfall einer allgemeinen Besprechung,<br />
wie sie in FAME auch betrachtet wird, sehen. Die Unterschiede<br />
zwischen wissenschaftlichen Vorträgen und wissenschaftlichen Besprechungen<br />
beziehungsweise Arbeitssitzungen lassen sich im wesentlichen wie folgt<br />
zusammenfassen:<br />
• Organisation<br />
Vorträge sind wesentlich strukturierter als Besprechungen. Es gibt eine<br />
(selten mehr) herausragende Person, den Redner. Dessen Position im<br />
Raum ist in etwas vorherzusehen, so daß ein automatischer Kameramann<br />
ihn relativ einfach finden kann. Der Ablauf eines Vortrags folgt gewissen<br />
Regeln (Begrüßung Präsentation, Fragen und Antworten, Verabschiedung).<br />
• Mikrophone<br />
Bei Vorträgen kann eher vom Sprecher erwartet werden, daß er ein am<br />
Kopf befestigtes Nachbesprechungsbügelmikrophon verwendet. Dieses<br />
liefert eine deutliche höhere Signalqualität als entfernt positionierte<br />
Mikrophone, wie sie im Falle einer Besprechung oder Arbeitssitzung<br />
verwendet werden müßten.<br />
• Sprechstil<br />
Vortragssprache ist mehr geplant als Diskussionssprache. Nicht nur weil<br />
der Redner sich schon vor dem Vortrag Gedanken gemacht hat, sondern<br />
auch weil er beim Vortragen etwas langsamer spricht und jeder einzelne<br />
Satz ein wenig in Gedanken vorformuliert wird. Daher kann man davon
ausgehen, daß die Erkennung etwas einfacher ist.<br />
• gleichzeitiges Sprechen<br />
28.4 Das FAME Projekt 461<br />
Schon in einfachen Dialogen, aber erst recht bei hitzigen Diskussionen<br />
tauchen vermehr spontane Effekte auf, Sätze werden mitten im Wort<br />
abgebrochen, teilweise später wieder fortgesetzt. Teilnehmer unterbrechen<br />
andere beim Sprechen, oder mehrere Leute sprechen gleichzeitig. All diese<br />
Phänomene sind bei einem Vortrag nicht oder nur sehr selten zu erwarten.<br />
• Vokabular und Sprachmodell<br />
Selbst bei wissenschaftlichen Besprechungen orientiert sich das verwendete<br />
Vokabular mehr an der Alltagssprache als an der Schriftsprache. Dies<br />
ist bei Vorträgen etwas anders. Hier werden Fachbegriffe öfter in unabgekürzter<br />
und nicht umgangssprachlicher Form verwendet. Bestimmte<br />
in der Schrift typische Phrasen fließen in die Vortragssprache ein. Die<br />
Wahrscheinlichkeit der Wortfolgen läßt sich eher anhand wissenschaftlicher<br />
Abhandlungen und sogar anhand von Zeitungstexten modellieren als mit<br />
spontanen Dialogen.<br />
• Dokumente<br />
Ein wichtiger besonders hilfreicher Vorteil ist das Vorhandensein von<br />
Dokumenten, die im Vorfeld analysiert werden können und zu Adaption<br />
des Erkenners und des gesamten Systems verwendet werden können. Diese<br />
fehlen in der Regel bei Besprechungen.<br />
28.4.2 Die FAME Blackboard Architektur<br />
Abb. 28.8 zeigt einen Ausschnitt aus der Beschreibung der Funktionalität des<br />
intelligenten Vortragsraumes, wie er im FAME Projekt implementiert wurde.<br />
Der Kasten in der Mitte stellt ein schwarzes Brett (blackboard) dar, über<br />
das die darum herum angebrachten Agenten miteinander kommunizieren.<br />
Zu den zentralen Agenten gehört der Aufmerksamkeitsdetektor, dessen<br />
wichtigste Aufgabe darin besteht, festzustellen, welche Informationsströme<br />
für welche Agenten von Interesse sind. Wie weiter oben erläutern gibt<br />
es vier verschiedene Arten der Sprache. Es ist vor allem Aufgabe des<br />
Aufmerksamkeitsverfolgers zu entscheiden, um was für eine Art Sprache es<br />
sich handelt.
462 28. Der moderne Vortragsraum<br />
Vortragsverfolgung<br />
X10 Raumsteuerung<br />
allgemeiner<br />
Spracherkenner<br />
Vortragssprache<br />
Vortragszustand<br />
X10-<br />
Kommando<br />
spezialisierter<br />
Spracherkenner<br />
Audiosegmente<br />
allgemeine<br />
Hypothese<br />
spezielle<br />
Hypothese<br />
Objektverfolgung<br />
Personenverfolgung<br />
Objekte<br />
Raumsteuersprache<br />
Raumzustand<br />
InformationsbedarfS<br />
Informationretrieval<br />
Abb. 28.8. Die FAME Blackboard Architektur<br />
Dokumente<br />
Videostrom<br />
Personen<br />
Systemantwort<br />
Ausgabemanager<br />
intelligente<br />
Kamera<br />
Sprachsegmentierer<br />
Aufmerksamkeitsverfolgung<br />
Dialogsteuerung<br />
Die Unterscheidung zwischen einem Dialog mit dem Raum und einem<br />
Dialog mit dem Publikum beziehungsweise der Vortragssprache geschieht<br />
vor allem auf zwei Arten. Einmal die Analyse der Erkennerhypothese eines<br />
allgemeinen ” Mehrzweckerkenners“, die auf das Vorkommen bestimmter<br />
Phrasen untersucht wird, die aussehen wir Raumkommandos. Und als<br />
zweite Methode der Vergleich der Hypothese des ” Mehrzweckerkenners“ mit<br />
der Hypothese eines spezialisierten Erkenners, der mit einer kontextfreien<br />
Grammatik als Sprachmodell auf Raumkommandos spezialisiert ist. Es liegt<br />
in der Bauart des spezialisierten Erkenners, daß dieser immer ein Raumkommando<br />
erkennt, auch wenn der Redner gerade seinen Vortrag hält, weil das<br />
Sprachmodell nur Raumkommandos zuläßt. Wie Experimente gezeigt haben<br />
[?] kann aber die Korrelation zwischen der speziellen Hypothese und der<br />
Mehrzweckhypothese herangezogen werden, um zu entscheiden, ob es sich<br />
wirklich um ein Raumkommando handelt. Im positiven Fall ist zu erwarten,<br />
daß die Korrelation hoch ist, im negativen eher niedrig. Diese Zweiteilung<br />
der Erkenner geschieht vor allem, weil ein spezialisierter Erkenner wesentlich<br />
weniger Fehler auf den Äußerungen macht, die für ihn vorgesehen sind.<br />
Der Wunsch des Redners, das Licht zu dimmen, läuft im FAME Blackboard<br />
Modell so ab. Der Redner spricht die Äußerung ” Licht dimmen, bitte“
28.4 Das FAME Projekt 463<br />
in sein Nahbesprechungsmikrophon. Über die Soundkarte des Raum-PCs<br />
gelangt das Sprachsignal zum Segmentierer. Dieser ist ein Agent mit der<br />
Aufgabe, Audiosegmente, die Sprache enthalten, auf das schwarze Brett<br />
zu legen. Diese Segmente werden dann von allen Erkennern (gegebenenfalls<br />
können sogar Erkenner für verschiedene Sprachen vorhanden sein)<br />
gelesen, und jeder Erkenner legt seine Hypothese auf das schwarze Brett<br />
zurück. Diese Hypothesen werden dann zusammen mit Informationen über<br />
Personen und Objekte (zum Beispiel deren Identitäten und Positionen)<br />
dazu verwendet, zu entscheiden, ob eine Nachricht an den Vortragsverfolger<br />
( ” Vortragssprache“) oder an die Dialogsteuerung ( ” Raumsteuersprache“)<br />
geschickt wird. Im Falle der Vortragssprache übernimmt der Vortragsverfolger<br />
die weitere Verarbeitung wie oben beschrieben. Im Falle eine<br />
Dialogs mit dem Raum kann nun die Dialogsteuerung verschiedene Aktionen<br />
durchführen. Sie kann eine Systemantwort erzeugen, die dann zum Beispiel<br />
als synthetisierte Sprache über Lautsprecher ausgegeben wird, oder sie<br />
kann direkt Steuerbefehle (zum Beispiel mit Hilfe des standardisierten X10<br />
Protokolls) an die Raumsteuerhardware schicken, oder auch eine Nachricht<br />
an einen Information-Retrieval Agenten schicken mit der Anforderung nach<br />
bestimmten Dokumenten. Im angeführten Beispiel, würde die Dialogsteuerung<br />
vom Aufmerksamkeitsdetektor darüber informiert werden, daß ” Licht<br />
dimmen, bitte“ ein Raumsteuerbefehl war. Wenn klar ist, welches Licht<br />
gemeint ist, kann ein entsprechendes Kommando an den Dimmer geschickt<br />
werden. Andernfalls kann die Systemantwort ” Welches Licht?“ als Teil eines<br />
Klärungsdialogs ausgegeben werden.
Literaturverzeichnis<br />
[Abt98] Abt. Intelligentes Bedienterminal. Ausschreibung Diplomarbeit,<br />
http://www.ee.ethz.ch/abt/all-div.html, ETH Zürich, (EEK 16), 1998.<br />
[ADNS94] X. Aubert, C. Dugast, H. Ney und V. Steinbiss. Large Vocabulary<br />
Continuous Speech Recognition of Wall Street Journal Corpus. In Proc.<br />
IEEE International Conference on Acoustics, Speech, and Signal Processing,<br />
Band 2, S. 129–132. IEEE, April 1994, Adelaide, Australia.<br />
[AS67] B. Atal und M. Schroeder. Predictive Coding of Speech Signals. In<br />
Proceedings of the IEEE Conference on Communication and Processing, S. 360–<br />
361. IEEE, 1967.<br />
[BAB94] K. Berkling, T. Arai und E. Barnard. Analysis of Phoneme-based<br />
Features for Language Identification. In Proc. IEEE International Conference<br />
on Acoustics, Speech, and Signal Processing, S. 289–292, Adelaide, April 1994.<br />
IEEE.<br />
[Ber] K. Bernardin. Automatische Generierung Akustischer Spracheinheiten.<br />
Studienarbeit, Universität Karlsruhe (TH).<br />
[BFRB96] A. Berton, P. Fetter und P. Regel-Brietzmann. Compound Words<br />
in Large Vocabulary German Speech Recognition. In Proc. IEEE International<br />
Conference on Acoustics, Speech, and Signal Processing, 1996.<br />
[BGY + 00] M. Bett, H. Gross, X. Yu, Y. Zhu, Y. Pan, J. Yang und A. Waibel.<br />
Multimodal meeting tracker. In Proceedings of the RIAO, April 2000, Paris.<br />
[BH95] M. Betz und H. Hild. Language Models for a Spelled Letter Recognizer.<br />
In Proc. IEEE International Conference on Acoustics, Speech, and Signal<br />
Processing, S. 856–859. IEEE, Mai 1995, Detroit, USA.
466 Literaturverzeichnis<br />
[BMHW93a] C. Bregler, S. Manke, H. Hild und A. Waibel. Bimodal Sensor<br />
Integration on the Example of “Speech-Reading”. In Proc. International<br />
Conference on Neural Networks, S. 667–670. IEEE, März 1993, San Francisco.<br />
[BMHW93b] C. Bregler, S. Manke, H. Hild und A. Waibel. Improving<br />
Connected Letter Recognition by Lipreading. In Proc. IEEE International Conference<br />
on Acoustics, Speech, and Signal Processing, S. I–557–561. IEEE, April<br />
1993, Minneapolis.<br />
[BMSZ97] J. Billa, K. Ma, G. Siu und G. Zavaliagkos. Acoustic Modelling<br />
Work at BBN. In Proceedings of the Hub-5 Conversational Speech Recognition<br />
Workshop, Linthicum Heights, Maryland, November 1997. NIST.<br />
[BPBB88] D. Bodoff, B. Petajan, B. Bischoff und N. Brooke. An Improved<br />
Automatic Lip Reading System to Enhance Speech Recognition. ACM SIGCHI,<br />
1988.<br />
[CT65] J. W. Cooley und J. W. Tukey. An Algorithm for the Machine Calculation<br />
of Complex Fourier Series. Mathematics of Computation, 19:297–301,<br />
1965.<br />
[CT91] T. M. Cover und J. A. Thomas. Elements of Information Theory.<br />
John Wiley & Sons, Inc., New York, 1991.<br />
[Dau88] I. Daubechies. Orthonormal of Compactly Supported Wavelets. Comm.<br />
Pure Appl. Mathematics, 41:906–966, 1988.<br />
[DBB52] K. Davis, R. Biddulph und S. Balashek. Automatic Recognition of<br />
Spoken Digits. Journal of the Acoustic Society of America (JASA), 24:637–642,<br />
1952.<br />
[DDC99] K. Demuynck, J. Duchateau und D. V. Compernolle. Optimal<br />
Feature Sub-space Selection based on Discriminant Analysis. In EURO-<br />
SPEECH99, Band II, S. 1311–1314, September 1999, Budapest, Ungarn.<br />
[DGDP96] N. Deshmukh, R. Ganapathiraju, R. J. Duncan und J. Picone.<br />
Human Speech Recognition Performance on the 1995 HUB-3 Corpus. In<br />
DARPA Speech Recognition Workshop, S. 129–134. Morgan Kaufmann, Februar<br />
1996, Arden House, New York.
Literaturverzeichnis 467<br />
[DH73] R. O. Duda und P. E. Hart. Pattern Classification and Scene Analysis.<br />
John Wiley & Sons, New York, Chichester, Brisbane, Toronto, Signapore, 1973.<br />
[DP96] S. Das und M. Picheny. Automatic Speech and Speaker Recognition: Advanced<br />
Topics, chapter 19: Issues in Practical Large Vocabulary Isolated Word<br />
Recognition: The IBM Tangora System. Kluwer Academic Publishers, 1996.<br />
[Dud] H. Dudley. The Vocoder. Bell Labs, Record 18, S. 122-126, 1937; später<br />
in R.W. Schafer und J.D. Markel: Speech Analysis, IEEE Press, 1997.<br />
[Dud39] H. Dudley. Remaking Speech. Journal of the Acoustic Society of America<br />
(JASA), 11:169–177, 1939.<br />
[EP95] W. J. Ebel und J. Picone. Human Speech Recognition Performance on<br />
the 1994 CSR Spoke 10 Corpus. In DARPA Speech Recognition Workshop, S.<br />
53–59. Morgan Kaufmann, Januar 1995, Austin, Texas.<br />
[FAM] FAME. Projekt der EU im Rahmen des 5. Rahmenprograms, IST. Im<br />
Internet: http://www.fame-project.org.<br />
[FF59] J. Forgie und C. Forgie. Results Obtained from a Vowel Recognition<br />
Computer Program. Journal of the Acoustic Society of America (JASA),<br />
31(11):1480–1489, 1959.<br />
[FG66] J. Flanagan und R. Golden. Phase Vocoder. Bell Systems Technology<br />
Journal, 45 S. 1493ff, 1066.<br />
[FGH + 97] M. Finke, P. Geutner, H. Hild, T. Kemp, K. Ries und M. Westphal.<br />
The Karlsruhe-Verbmobil Speech Recognition Engine. In Proc. IEEE<br />
International Conference on Acoustics, Speech, and Signal Processing, Band 1,<br />
S. 83–86. IEEE, April 1997, München.<br />
[For73] G. D. Forney, Jr. The Viterbi Algorithm. Proceedings of the IEEE,<br />
61(3):268–278, März 1973.<br />
[FR96] J. Fritsch und I. Rogina. The Bucket Box Intersection Algorithm for<br />
Fast Approximative Evaluation of Diagonal Mixture Gaussians. In Proc. IEEE<br />
International Conference on Acoustics, Speech, and Signal Processing. IEEE,<br />
Mai 1996, Atlanta, USA.
468 Literaturverzeichnis<br />
[FR97] M. Finke und I. Rogina. Wide Context Acoustic Modeling in Read<br />
vs. Spontaneous Speech. In Proc. IEEE International Conference on Acoustics,<br />
Speech, and Signal Processing, Band 3, S. 1743–1746. IEEE, April 1997,<br />
München.<br />
[FR00] C. Fuegen und I. Rogina. Integrating Dynamic Speech Modalities into<br />
Context Descition Trees. In Proc. IEEE International Conference on Acoustics,<br />
Speech, and Signal Processing. IEEE, 2000, Istanbul.<br />
[Fri95] J. Fritsch. Schnelle Vektorquantisierung durch Bucket Voronoi Intersection<br />
Suche. Studienarbeit, Universität Karlsruhe (TH), März 1995.<br />
[Fri99] J. Fritsch. Hierarchical Connectionist Acoustic Modelling for Domain-<br />
Adaptive Large Vocabulary Speech Recognition. Dissertation, Universität Karlsruhe,<br />
1999.<br />
[FRSW95] J. Fritsch, I. Rogina, T. Sloboda und A. Waibel. Speeding Up<br />
the Score Computation of HMM Speech Recognizers with the Bucket Voronoi<br />
Itersection Algorithm. In EUROSPEECH95, S. 1091–1094, Madrid, September<br />
1995.<br />
[Fry59] D. Fry. Theoretical Aspects of Mechanical Speech Recognition. Journal<br />
of the Britisch Institute for Radio Engineering, 19:211–219, 1959.<br />
[Fue98] C. Fuegen. Optimierung der Sprachmodellgewichtung mit Hilfe neuronaler<br />
Netze. Diplomarbeit, Universität Karlsruhe, 1998.<br />
[Fue99] C. Fuegen. Integration von situationsabhängigen Modalitäten in Kontextentscheungsbäume.<br />
Diplomarbeit, Universität Karlsruhe, November 1999.<br />
[FW97] M. Finke und A. Waibel. Flexible Transcription Alignment. In IEEE<br />
Workshop on Speech Recognition and Understanding, Dezember 1997, Santa<br />
Barbara, California.<br />
[FWS + 01] C. Fügen, M. Westphal, M. Schneider, T. Schultz und A. Waibel.<br />
LingWear: A Mobile Tourist Information System. In Proceedings of the of<br />
the First International Conference on Human Language Technology Conference<br />
(HLT), März 2001, San Diego.<br />
[Gal97] M. Gales. Semi-Tied Full-Covariance Matrices for Hidden Markov Modells.<br />
Technical Report CUED/F-INFENG/TR 287, Cambridge University,
Literaturverzeichnis 469<br />
Engineering Department, Trumpington Street, Cambridge CB2 1PC, England,<br />
April 1997.<br />
[GFW98] P. Geutner, M. Finke und A. Waibel. Phonetic-Distance-Based<br />
Hypothesis Driven Lexical Adaptation for Transcribing Multilingual Broadcast<br />
News. In ICSLP, 1998.<br />
[GFWW98] P. Geutner, P. Finke, M. Scheytt, A. Waibel und H. Wactlar.<br />
Transcribing Multilingual Broadcast New Using Hypothesis Driven Lexical<br />
Adaptation. In DARPA Broadcast News Transcription and Understanding<br />
Workshop, 1998, Lansdowne, Virginia.<br />
[Gro97] S. Gross. Entwicklung eines Spracherkenners fr die Kroatische Sprache<br />
im Rahmen des GlobalPhone Projekts. Studienarbeit, Universität Karlsruhe<br />
(TH), März 1997.<br />
[GYS89] M. Goldstein, B. Yuhas und T. Sejnowski. Integration of Acoustic<br />
and Visual Speech Signals Using Neural Networks. IEEE Communications,<br />
November 1989.<br />
[HAH + 92] X. Huang, F. Alleva, S. Hayamizu, H. Hon, M. Hwang und<br />
K. Lee. The SPHINX-II Speech Recognition System. Technical Report CMU-<br />
CS-92-112, Carnegie Mellon University, Pittsburgh, 1992.<br />
[HAJ90] X. Huang, Y. Ariki und M. D. Jack. Hidden Markov Models for<br />
Speech Recognition. Edinburgh University Press, 1990.<br />
[HFS93] M. M. Hochberg, J. T. Foote und H. F. Silverman. A Comparison<br />
of State-Duration Distributions for HMM-Based, Connected Speech Recognition.<br />
IEEE Transactions on Speech and Audio Processing, 1993.<br />
[HFW91] P. Haffner, M. Franzini und A. Waibel. Integrating Time Alignment<br />
and Neural Networks for High Performance Continuous Speech Recognition. In<br />
Proc. IEEE International Conference on Acoustics, Speech, and Signal Processing.<br />
IEEE, Mai 1991.<br />
[HGD90] C. Hemphill, J. Godfrey und G. R. Doddington. The ATIS Spoken<br />
Language System Pilot Corpus. NIST-Disc CD5-1.1, 1990.<br />
[HH91] M.-Y. Hwang und X. Huang. Shared-Distribution Hidden Markov<br />
Models for Speech Recognition. Technical Report CMU-CS-91-124, School of<br />
Computer Science, Carnegie Mellon University, Pittsburgh, PA 15213, USA,<br />
April 1991.
470 Literaturverzeichnis<br />
[Hil03] A. Hildebrand. Rekombination von Komposita in der Spracherkennung.<br />
Studienarbeit, Universität Karlsruhe (TH), August 2003.<br />
[HL88] W. Huang und R. Lippmann. Neural Net and Traditional Classifiers. In<br />
D. Anderson, Herausgeber, Neural Information Processing Systems, S. 387–396.<br />
American Institute of Physics, New York, 1988.<br />
[HMR + ] A. Hauptmann, J. Mostow, S. Roth, M. Kane und A. Swift. A<br />
Prototype Reading Coach that Listens: Summary of Project LISTEN.<br />
[HNB + 02] A. Hauptmann, T. Ng, R. Baron, W. Lin, M. Chen, M. Derthick,<br />
M. Christel und R. Jin. Video Classification and Retrieval with<br />
the Informedia Digital Video Library System. In Text Retrieval Conference<br />
(TREC02), November 2002, Gaithersburg.<br />
[HRRK94] M. M. Hochberg, S. Renals, A. Robinson und D. Kerschaw.<br />
Large Vocabulary Continuous Speech Recognition Using a Hybrid<br />
Connectionist-HMM System. In Proceedings of the International Conference<br />
on Speech and Language Processing, S. 1499–1502, September 1994, Yokohama.<br />
[HW92] P. Haffner und A. Waibel. Multi-State Time Delay Neural Networks<br />
for Continuous Speech Recognition. In Advances in Neural Network Information<br />
Processing Systems (NIPS-4-). Morgan Kaufman, 1992.<br />
[HW95] H. Hild und A. Waibel. Integrating Spelling Into Spoken Dialogue<br />
Recognition. In EUROSPEECH’95 (4th European Conference on Speech Communication<br />
and Technology), S. 1977–1980. IEEE, September 1995, Madrid,<br />
Spain.<br />
[HW96] H. Hild und A. Waibel. Recognition of Spelled Names over the Telephone.<br />
In Proceedings Fourth International Conference on Speech and Language<br />
Processing, S. 346–349, Oktober 1996, Philadephia, USA.<br />
[HZ93] T. Hazen und V. Zue. Language Identification using a Segment-based<br />
Approach. S. 1303–1306, Berlin, 1993.<br />
[IM94] R. Isotani und S. Matsunaga. A Stochastic Language Model for Speech<br />
Recognition Integrating Local and Global Constraints. In Proc. IEEE International<br />
Conference on Acoustics, Speech, and Signal Processing, Mai 1994,<br />
Adelaide, Australia.
Literaturverzeichnis 471<br />
[Ita75] F. Itakura. Minimum Prediction Residual Principle Applied to Speech<br />
Recognition. In IEEE Transactions on Acoustic, Speech, Signal Processing,<br />
Band 23, S. 67–72, 1975.<br />
[JBM75] F. Jelinek, L. R. Bahl und R. L. Mercer. Design of a Linguistic Statistical<br />
Decoder for the Recognition of Continuous Speech. IEEE Transactions<br />
on Information Theory, 21(3):250–256, 1975.<br />
[Jed98] M. Jedamzik. Ein ergonomisches Dialogsystem zur Steuerung von technischen<br />
Systemen in Wohnbereichen. Ausschreibung Diplomarbeit, Universität<br />
Dortmund, (Projektgruppe 277), 1998.<br />
[KA98] N. Kumar und A. Andreou. Heteroscedastic Discriminant Analysis<br />
and Reduced Rank HMMs for Improved Speech Recognition. Speech Communication,<br />
26:86–96, 1998.<br />
[Kat03] M. Katzenmaier. Verfolgen der Sprecheraufmerksamkeit mit Hilfe der<br />
Ausgabe des Spracherkenners. Studienarbeit, Universität Karlsruhe (TH), Februar<br />
2003.<br />
[Kau99] S. Kaufmann. Ein sprachgesteuerter Videorecorder. rfe, Verlag Technik,<br />
Dezember 1999.<br />
[Kem95] T. Kemp. Data-Driven Codebook Adaptation in Phonetically Tied<br />
SCHMMs. In Proc. IEEE International Conference on Acoustics, Speech, and<br />
Signal Processing, Band 1, S. 377–479. IEEE, Mai 1995, Detroit, USA.<br />
[Kem99] T. Kemp. Ein Automatisches Indexierungssystem für Fernsehnachrichtensendungen.<br />
Dissertation, Universität Karlsruhe, Dezember 1999.<br />
[KGS + 98] T. Kemp, P. Geutner, M. Schmidt, B. Tomaz, M. Weber,<br />
M. Westphal und A. Waibel. The Interactive Systems Labs View4You<br />
Video Indexing System. In ICSLP, Dezember 1998, Sydney.<br />
[KJ96] T. Kemp und A. Jusek. Modelling Unknown Words in Spontaneous<br />
Speech. In Proc. IEEE International Conference on Acoustics, Speech, and<br />
Signal Processing. IEEE, 1996.<br />
[Kla77] D. Klatt. Review of the ARPA Speech Understanding Project. Journal<br />
of the Acoustic Society of America (JASA), 62:1345–1366, 1977. (Siehe auch<br />
[?], S. 554-575).
472 Literaturverzeichnis<br />
[Kle00] M. Klein. Ein auf Flexionsformen basierendes Sprachmodell. Studienarbeit,<br />
Universität Karlsruhe (TH), Mai 2000.<br />
[KN93] R. Kneser und H. Ney. Improved Clustering Techniques For Class-<br />
Based Statistical Language Modelling. In EUROSPEECH’93 (3rd European<br />
Conference on Speech Communication and Technology), S. 973–977, September<br />
1993, Berlin, Germany.<br />
[KN02] S. Kanthak und H. Ney. Context-Dependent Acoustic Modeling Using<br />
Graphemes for Large Vocabulary Speech Recognition. In ICASSP 2002. IEEE,<br />
2002, Orlando, Florida.<br />
[Koh77] K. Kohler. Einführung in die Phonetik des Deutschen. Erich Schmidt<br />
Verlag, Berlin, 1977.<br />
[KS73] D. Klatt und K. Stevens. On the Automatic Recognition of Continuous<br />
Speech: Implications from a Spectrogram Reading Experiment. IEEE<br />
Transactions on Audio Electroacoustics, 21:210–217, 1973.<br />
[KSS03] M. Killer, S. Stüker und T. Schultz. Grapheme Based Speech Recognition.<br />
In Eurospeech 2003, 2003, Genf.<br />
[Kuh99] U. Kuhlmann. Achtung Aufnahme: Der sprachgesteuerte Videorecorder.<br />
ct, Heise Verlag, 23, 1999.<br />
[KVY93] S. Kapadia, V. Valtchev und S. Young. MMI Training For Continuous<br />
Phoneme Recognition on the TIMIT Database. In Proc. IEEE International<br />
Conference on Acoustics, Speech, and Signal Processing. IEEE, April<br />
1993, Minneapolis.<br />
[KWW00] T. Kemp, M. Weber und A. Waibel. End-to-End Evaluation of the<br />
View4You Broadcast News Transcription System. In RIAO 2000, April 2000,<br />
Paris.<br />
[LA96] L. Lamel und G. Adda. On Designing Pronunciation Lexicons for Large<br />
Vocabulary, Continuous Speech Recognition. In Proceedings Fourth International<br />
Conference on Speech and Language Processing, Oktober 1996, Philadephia,<br />
USA.<br />
[LCVC93] P. Le Cerf und D. Van Compernolle. Speaker Independent Small<br />
Vocabulary Speech Recognition using MLPs for Phonetic Labelling. In EURO-
Literaturverzeichnis 473<br />
SPEECH’93 (3rd European Conference on Speech Communication and Technology),<br />
S. 143–146, September 1993, Berlin, Germany.<br />
[Lee88] K.-F. Lee. Large-Vocabulary Speaker-Independent Continuous Speech Recognition:<br />
The SPHINX System. CMU-CS-88-148, Carnegie Mellon University,<br />
Pittsburgh, PA, April 1988.<br />
[Lee89] K.-F. Lee. Automatic Speech Recognition: the Development of the<br />
SPHINX System. Kluwer Academic Publishers, Boston, 1989.<br />
[LG93] L. Lamel und J. Gauvain. Identifying Non-linguistic Speech Features.<br />
S. 23–30, Berlin, 1993.<br />
[Lic50] J. Licklider. The intelligibility of amplitude-dichotomized, time-quantized<br />
speech waves. J. Acoustic Am., 22:820–823, 1950.<br />
[Lip89] R. Lippmann. Review of Research on Neural Nets for Speech Recognition.<br />
Neural Computation, 1(1):1–38, März 1989. (Auch in [?], S. 374–392).<br />
[LM89] K.-F. Lee und S. Mahajan. Corrective and Reinforcement Learning for<br />
Speaker-Independent Continuous Speech Recognition. Technical Report CMU-<br />
CS-89-100, Carnegie Mellon University, Pittsburgh, PA 15213, Januar 1989.<br />
[LW94] C. Leggetter und P. Woodland. Speaker Adaptation of Continuous<br />
Density HMMs Using Linear Regression. In Proceedings of the International<br />
Conference on Speech and Language Processing, Band 2, S. 451–454, 1994, Yokohama.<br />
[LW95] C. Leggetter und P. Woodland. Maximum Likelihood Linear Regression<br />
for Speaker Adaptation of Continuous Density Hidden Markov Models.<br />
Computer Speech and Language, 9:171–185, 1995.<br />
[LWL + 97] A. Lavie, A. Waibel, L. Levin, M. Finke, D. Gates, M. Gavalda,<br />
T. Zeppenfeld und Z. Puming. JANUS-III: Speech-to-Speech Translation<br />
in Multiple Languages. In Proc. IEEE International Conference on Acoustics,<br />
Speech, and Signal Processing, Band 1, S. 99–102. IEEE, April 1997, München.<br />
[MA01] J. Mostow und G. Aist. Smart Machines in Education, chapter Evaluating<br />
tutors that listen: An overview of Project LISTEN, S. 169–234. MIT/AAAI<br />
Press, 2001.
474 Literaturverzeichnis<br />
[Mai94] M. Maier. Dimensionalitätsreduktion von Sprachsignalen mit statistischen<br />
und neuronalen Methoden. Diplomarbeit, Universität Karlsruhe, 1994.<br />
[Mak75] J. Makhoul. Linear Prediction: A Tutorial Review. Proceedings of the<br />
IEEE, 63(4):561–580, 1975.<br />
[MBA + 93] Y. Muthusamy, K. Berklinig, T. Arai, R. Cole und E. Barnard.<br />
Comparison of Approaches to Automatic Language Identification using<br />
Telephone Speech. S. 1307–1310, Berlin, 1993.<br />
[Mey93] Y. Meyer. Wavelets: Algorithms and Applications. Society for Industrial<br />
and Applied Mathematics, Philadelphia, S. 13–31,101–105, 1993.<br />
[MK00] F. Metze und T. Kemp. Das View4You-System: End-to-End Evaluation.<br />
In Proceedings of KONVENS 2000, Oktober 2000, Illmenau.<br />
[MM76] H. McGurk und J. MacDonald. Hearing Lips and Seeing Voices.<br />
Nature, 264, 1976.<br />
[Moh97] M. Mohri. Finite-State Transducers in Language and Speech Processing.<br />
Computational Linguistics, 23(2), 1997.<br />
[MP43] W. S. McCulloch und W. Pitts. A Logical Calculus of the Ideas<br />
Immanent in Nervous Activity. Bulletin of Mathematical Biophysics, 5:115–<br />
133, 1943.<br />
[MP69] M. Minsky und S. Papert. Perceptrons: An Introduction to Computational<br />
Geometry. MIT Press, Cambridge, Mass., 1969.<br />
[MP89] K. Mase und A. Pentland. Lip Reading: Automatic Visual Recognition<br />
of Spoken Words. Image Understanding and Machine Vision, Optical Society<br />
of America, Juni 1989.<br />
[MVC90] W. Ma und D. Van Compernolle. TDNN Labeling for a HMM<br />
Recognizer. In Proc. IEEE International Conference on Acoustics, Speech, and<br />
Signal Processing, April 1990.<br />
[MW02] F. Metze und A. Waibel. A Flexible Stream Architecture for ASR<br />
Using Articulatory Features. In ICSLP, 2002, Denver.
Literaturverzeichnis 475<br />
[Nag85] H.-H. Nagel. Einführung in die Mustererkennung. Skriptum zur gleichnamigen<br />
Vorlesung an der TH Karlsruhe, 1985.<br />
[NBF + 73] A. Newell, J. Barnett, J. Forgie, C. Green, D. Klatt, J. Licklider,<br />
J. Munson, D. Reddy und W. Woods. Speech Understanding Systems:<br />
Final Report of a Study Group. North Holland / American Elsevier, 1973.<br />
[Nes] Nespole! Projekt der EU im Rahmen des 5. Rahmenprograms, IST. Im<br />
Internet: http://www.itc-irst.it/nespole/.<br />
[Ney84] H. Ney. The Use of a One-Stage Dynamic Programming Algorithm for<br />
Connected Word Recognition. In IEEE Transactions on Acoustics, Speech, and<br />
Signal Processing, S. 263–271. IEEE, April 1984. (Auch in [?], S. 188–196).<br />
[Ney91] H. Ney. Speech Recognition in a Neural Network Framework: Discriminative<br />
Training of Gaussians Models and Mixture Desnities as Radial Basis<br />
Functions. In Proc. IEEE International Conference on Acoustics, Speech, and<br />
Signal Processing. IEEE, 1991.<br />
[NF90] M. Niranjan und F. Fallside. Neural Networks and Radial Basis Functions<br />
in Classifying Static Speech Patterns. Computer Speech and Language,<br />
4:275–289, 1990.<br />
[OB56] H. Olson und H. Belar. Phonetic Typewriter. Journal of the Acoustic<br />
Society of America (JASA), 28(6):1072–1081, 1956.<br />
[Ode92] J. J. Odell. The Use of Decision Trees with Context Sensitive Phoneme<br />
Modelling. Diplomarbeit, Department of Engineering, Cambridge University,<br />
Cambridge, UK, August 1992.<br />
[Pal89] D. S. Pallett. Benchmark Tests for DARPA Resource Management Database<br />
Performance Evaluations. In Proceedings of the ICASSP 89, S. 536–593,<br />
Glasgow, 1989. IEEE.<br />
[Pal97] D. Pallet. Proceedings of the Hub-5 Conversational Speech Recognition<br />
Workshop. Linthicum Heights, Maryland, November 1997. NIST.<br />
[Pau92] D. B. Paul. An Efficient A* Stack Decoder Algorithm for Continuous<br />
Speech Recognition with a Stochastic Language Model. In Proc. IEEE International<br />
Conference on Acoustics, Speech, and Signal Processing, S. 25–28, San<br />
Francisco, März 1992. IEEE.
476 Literaturverzeichnis<br />
[PGF + 95] D. S. Pallett, F. J. G., W. M. Fisher, J. S. Garofolo, B. A.<br />
Lund, A. Marin und M. A. Przybocki. 1994 Benchmark Tests for the<br />
ARPA Spoken Language Programm. In ARPA Workshop on Spoken Language<br />
Systems Technology, S. 5–36. Morgan Kaufmann, Januar 1995, Austin, Texas.<br />
[Reg88] P. Regel. Akustisch-Phonetische Transkription für die automatische Spracherkennung.<br />
In Informatik/<strong>Kommunikation</strong>stechnik, Band 10. VDI Verlag,<br />
Düsseldorf, 1988.<br />
[RK91] P. Rentzepopoulos und G. Kokkinakis. Phoneme to Grapheme Conversion<br />
Using HMM. In EUROSPEECH91, Genua, September 1991.<br />
[RLRW79] L. Rabiner, S. Levinson, A. Rosenberg und J. Wilpon. Speaker-<br />
Independent Recognition of Isolated Words Using Clustering Techniques. In<br />
IEEE Transactions on Acoustic, Speech, Signal Processing, Band 27, S. 336–<br />
349, 1979.<br />
[Rog97a] I. Rogina. Automatic Architecture Desing by Likelihood-Based Context<br />
Clustering with Crossvalidation. In Eurospeech, September 1997, Rhodos.<br />
[Rog97b] I. Rogina. Parameterraumoptimierung für Diktiersysteme mit unbeschränktem<br />
Vokabular. Dissertation, Universität Karlsruhe, Juni 1997.<br />
[RP92] V. Ramasubramanian und K. Paliwal. Fast K-dimensional Tree Algorithms<br />
for the Nearest Neighbor Search with Application to Vector Quantization<br />
Encoding. IEEE Transactions on Signal Processing, 40(3), 1992.<br />
[RS01] I. Rogina und T. Schaaf. Lecture and Presentation Tracking in an Intelligent<br />
Meeting Room. IEEE International Conference on Multimodal Interfaces,<br />
2001, Pittsburgh.<br />
[Rus89] G. Ruske. Gehörbezogene automatische Spracherkennung. Informationstechnik,<br />
31(5):316–323, 1989.<br />
[RW94] I. Rogina und W. Waibel. Learning State-Dependent Stream Weights<br />
for Multi-Codebook HMM Speech Recognition Systems. In Proc. IEEE International<br />
Conference on Acoustics, Speech, and Signal Processing, Band 2, S.<br />
217–220. IEEE, April 1994, Adelaide, Australia.
Literaturverzeichnis 477<br />
[RW95] I. Rogina und A. Waibel. The JANUS Speech Recognizer. In AR-<br />
PA Workshop on Spoken Language Systems Technology, S. 166–169. Morgan<br />
Kaufmann, Januar 1995, Austin, Texas.<br />
[Sch94] K. Schuber. Grundfrequenzverfolgung und deren Anwendung in der Spracherkennung.<br />
Diplomarbeit, Universität Karlsruhe, 1994.<br />
[Sch96] T. Schaaf. Vertrauensmaße für die maschinelle Spracherkennung. Diplomarbeit,<br />
Universität Karlsruhe, Oktober 1996.<br />
[Sch00] T. Schultz. Multilinguale Spracherkennung - Kombination akustischer<br />
Modelle zur Portierung auf neue Sprachen. Dissertation, Universität Karlsruhe,<br />
Jul 2000.<br />
[Sch01] T. Schaaf. Detection of OOV Words Using Generalized Word Models and<br />
a Semantic Class Language Model. In EUROSPEECH01, Aalborg, September<br />
2001.<br />
[Shi86] K. Shikano. Evaluation of LPC Spectral Matchin Measures for Phonetic<br />
Unit Recognition. Technical Report Technical Report, Carnegie Mellon University,<br />
Pittsburgh, 1986.<br />
[SMFW02] H. Soltau, F. Metze, C. Fügen und A. Waibel. A One-Pass<br />
Decoder Based on Polymorphic Linguistic Context Assignment. In ASRU, 2002.<br />
[SMW96] B. Suhm, B. Myers und A. Waibel. Interactive Recovery from<br />
Speech Recognition Errors in Speech User Interfaces. In ICSLP, S. 861–864,<br />
1996, Philadelphia.<br />
[SR86] T. Sejnowski und C. Rosenberg. NETtalk: A Parallel Network that<br />
Learns to Read Aloud. Technical Report JHU/EECS-86/01, John Hopkins<br />
University, Juni 1986.<br />
[SR87] T. J. Sejnowski und C. R. Rosenberg. Parallel Networks that Learn<br />
to Pronounce English Text. Complex Systems, 1:145–168, 1987.<br />
[SR95] T. Schultz und I. Rogina. Acoustic and Language Modeling of Human<br />
and Nonhuman Noises for Human-To-Human Spontaneous Speech Recognition.<br />
In Proc. IEEE International Conference on Acoustics, Speech, and Signal<br />
Processing, Band 1, S. 293–296. IEEE, Mai 1995, Detroit, USA.
478 Literaturverzeichnis<br />
[SR97] K. Seymore und R. Rosenfeld. Large-scale Topic Detection and Language<br />
Model Adaptation. In tech. report CMU-CS-97-152, Computer Science<br />
Department, Carnegie Mellon University, Juni 1997.<br />
[SSMW03] S. Stüker, T. Schultz, F. Metze und A. Waibel. Multilingual<br />
Articulatory Features. In ICASSP, 2003.<br />
[ST91] O. Schmidbauer und J. Tebelskis. An LVQ based Reference Model for<br />
Speaker-Adaptive Speech Recognition. CMU-Internal Report, 1991.<br />
[ST92] O. Schmidbauer und J. Tebelskis. An LVQ Based Reference Model for<br />
Speaker-Adaptive Speech Recognition. In Proc. IEEE International Conference<br />
on Acoustics, Speech, and Signal Processing, San Francisco, März 1992. IEEE.<br />
[ST95] E. Schukat-Talamazzini. Automatische Spracherkennung. Vieweg,<br />
Braunschweig, Germany, 1995.<br />
[Stü03] S. Stüker. Multilingual Articulatory Features. Diplomarbeit, Universität<br />
Karlsruhe, Mai 2003.<br />
[SWW93] B. Suhm, M. Woszczyna und A. Waibel. Detection and Transcription<br />
of New Words. In EUROSPEECH93, Berlin, September 1993.<br />
[TS91] J.-I. Takami und S. Sagayama. A successive State Splitting Algorithm<br />
for Efficient Allophone Modelling. ATR-Internal Report, ATR Interpreting Telephony<br />
Research Laboratories, Kyoto, Japan, 1991.<br />
[TW90] J. Tebelskis und A. Waibel. Large Vocabulary Recognition Using<br />
Linked Predictive Neural Networks. In Proc. IEEE International Conference<br />
on Acoustics, Speech, and Signal Processing. IEEE, April 1990.<br />
[TWPS91] J. Tebelskis, A. Waibel, B. Petek und O. Schmidbauer. Continuous<br />
Speech Recognition by Linked Predictive Neural Networks. In R. Lippmann,<br />
J. Moody und D. Touretzky, Herausgeber, Advances in Neural Information<br />
Processing Systems, San Mateo, CA, 1991. Morgan Kaufmann.<br />
[van99] D. van Compernolle. Speech Recognition by Goats, Wolves, Sheeps,<br />
and Non-Natives. In ESCA-NATO Tutorial and Research Workshop on Multilingual<br />
Interoperability in Speech Technology, S. 3–9, September 1999, Leusden,<br />
Niederlande.
Literaturverzeichnis 479<br />
[Ver98] Verein für Konsumenteninformation. Videorecorder Test. Konsument,<br />
Februar 1998.<br />
[Vit67] A. J. Viterbi. Error Bounds for Convolutional Codes and an Asymptotically<br />
Optimal Decoding Algorithm. IEEE Transactions on Information Theory,<br />
13(2):260–269, April 1967.<br />
[VW96] M. T. Vo und C. Wood. Building an Application Framework for Speech<br />
and Pen Input Integration in Multimodal Learning Interfaces. In ICASSP.<br />
IEEE, 1996, Atlanta.<br />
[Wai88] A. Waibel. Consonant Recognition by Modular Construction of Large<br />
Phonemic Time-Delay Neural Networks. In Advances in Neural Information<br />
Processing Systems. Morgan Kaufmann, November 1988.<br />
[War89] W. Ward. Modelling Non-verbal Sounds for Speech Recognition. In<br />
DARPA Workshop on Speech and Natural Language Processing, Oktober 1989.<br />
[WE92] W. Wahlster und J. Egelkamp. Wissenschaftliche Ziele und Netzpläne<br />
für das VERBMOBIL Projekt. DFKI Saarbrücken, April 1992.<br />
[Wei95] B. Weide. The Carnegie Mellon Pronunciation Dictionary, CMUDICT<br />
V0.4. Freie Software der Carnegie Mellon University, http://www.cs.cmu.edu,<br />
1995.<br />
[Wes00] M. Westphal. Robuste Kontinuierliche Spracherkennung für mobile informationssysteme.<br />
Dissertation, Universität Karlsruhe, Juni 2000.<br />
[WHH + 87] A. Waibel, T. Hanazawa, G. Hinton, K. Shikano und K. Lang.<br />
Phoneme Recognition Using Time-Delay Neural Networks. Technical Report<br />
TR-1-0006, ATR Interpreting Telephony Research Laboratories, Oktober 1987.<br />
[Woo91] C. A. Wood. ATR Interpreting Telephony - Carnegie Mellon University<br />
Conference Registration Task. Tech Report ??, März 1991.<br />
[Woo95] P. Woodland. Persönliches Gespräch auf dem ARPA Workshop Spoken<br />
Language Technology, SLT, in Austin, Texas, im Januar 1995, 1995.<br />
[Wos98] M. Woszczyna. Fast Speaker Independent Large Vocabulary Continuous<br />
Speech Recognition. Dissertation, Universität Karlsruhe, Februar 1998.
480 Literaturverzeichnis<br />
[WOVY94] P. Woodland, J. Odell, V. Valtchev und S. Young. The HTK<br />
Large Vocabulary Recognition System: An Overview. In ARPA Spoken Language<br />
Technology Workshop, (keine Seitennumerierung ), März 1994, Princeton,<br />
New Jersey.<br />
[WSL92] G. Wolff, D. Stork und E. Levine. Nural Network Lipreading System<br />
for Improved Speech Recognition. In IJCNN, Juni 1992.<br />
[WSVJ97] A. Waibel, B. Suhm, M. T. Vo und Y. Jie. Multimodal Interfaces<br />
for Multimedia Information Agents. In ICASSP. IEEE, 1997, München.<br />
[WW94] M. Woszczyna und A. Waibel. Inferring Linguistic Structure in Spoken<br />
Languge. In Proceedings of the International Conference on Speech and<br />
Language Processing, 1994.<br />
[WW01] M. Westphal und A. Waibel. Model-Combination-Based Acoustic<br />
Mapping. In ICASSP, Mai 2001, Salt Lake City.<br />
[WWH98] H. Wactlar, M. Witbrock und A. Hauptmann. Informedia News-<br />
On-Demand: Using Speech Recognition to Create a Digital Video Library.<br />
Technical Report CMU-CS-98-109, Carnegie Mellon University, Pittsburgh, PA<br />
15213, USA, 1998.<br />
[Yan02] M. Yang. Detecting Faces in Images: A Survey. IEEE Transactions on<br />
Pattern Analysis and Machine Intelligence, 24, 2002.<br />
[YBC94] M. Y.K., E. Barnard und R. Cole. Reviewing Automatic Language<br />
Identification. IEEE Signal Processing, 11(4):33–41, Oct 1994.<br />
[YJC94] M. Y.K., N. Jain und R. Cole. Perceptual Benchmarks for Automatic<br />
Language Identification. In Proc. IEEE International Conference on Acoustics,<br />
Speech, and Signal Processing, S. 333–336, Adelaide, April 1994. IEEE.<br />
[YYDW99] J. Yang, W. Yang, M. Denecke und A. Waibel. Smart Sight: A<br />
Tourist Assistant System. In The Third International Symposium on Wearable<br />
Computers (ISWC), Oktober 1999, San Francisco.<br />
[Zis93] M. Zissmann. Automatic Language Identification using Gaussian Mixtures<br />
and Hidden Markov Models. In Proc. IEEE International Conference on<br />
Acoustics, Speech, and Signal Processing, S. 309–402, Minneapolis, 1993. IEEE.
Literaturverzeichnis 481<br />
[Zwi60] E. Zwicker. Zur Unterteilung des hörbaren Frequenzbereiches in Frequenzgruppen.<br />
Acustica, 10:185, 1960.
Sachverzeichnis<br />
F0, 391<br />
N-Gramme, 265<br />
αt(j), 189<br />
µ-law, 102<br />
k-Mittelwerte Verfahren, 134<br />
k-Nächste-Nachbarn, 132<br />
a-law, 102<br />
A/D Wandler, 77<br />
absolutes Discounting, 272<br />
Abtastfrequenz, 79<br />
Abtastfunktion, 80<br />
Abtasttheorem, 80, 98<br />
Abtastung, 77<br />
Adaption, 354<br />
Adaptionsmethoden, 361<br />
Adaptionsziele, 359<br />
adjacency pairs, 407<br />
Adressenerkennung, 439<br />
Affrikate, 72<br />
agglomerative Kontextballung, 300<br />
Air Travel Information System, 38<br />
Akustisch-phonetische Merkmale, 417<br />
akustisches Modell, 224<br />
Ali Baba, 33<br />
Aliasing-Effekt, 98<br />
Allophonen, 64<br />
Amplitude, 55, 106<br />
Amplitudenspektrum, 91<br />
Analog/Digital Wandler, 77<br />
Anatomie, 42<br />
Anfangswahrscheinlichkeiten, 186<br />
Anfangswahrscheinlichkeitsverteilung,<br />
186<br />
Anrufbeantworter, 29<br />
Anti-Aliasing Filter, 79<br />
aperplexity, 270<br />
Architekturentwurf, 336<br />
ARPA, 35<br />
Artikulationsapparat, 42<br />
Artikulationsort, 73<br />
artikulatorische Geräusche, 22, 357<br />
aspiriert, 74<br />
ATIS, 38<br />
Atlantikkabel, 34<br />
Auflösung von Ambiguitäten, 393<br />
Aufmerksamkeitssteuerung, 393<br />
Aufnahmeknop, 152<br />
Auslassungen, 248<br />
Aussprachelexika, 236<br />
Aussprachemodellierung, 236<br />
Aussprachevarianten, 240<br />
Aussteuerung, 79<br />
Authentifikation, 9<br />
Automatisches Folienweiterschalten,<br />
445<br />
B-D-G-Task, 346<br />
Back-Channels, 404<br />
Backoff-Verfahren, 272<br />
Backpropagation, 376<br />
Backward Algorithmus, 196<br />
Bag of Words, 266<br />
Bakis, 172<br />
Bakis-HMM, 201<br />
Bakis-Modell, 173<br />
Ballung von Kontexten, 297<br />
Ballungsbaum, 300<br />
bandbegrenzt, 90<br />
Barge-In, 405
484 Sachverzeichnis<br />
Bark-Skala, 117<br />
Basic Isodata Algorithmus, 134<br />
Basilarmembran, 53<br />
Baum-Welch-Regeln, 197<br />
Bayes Klassifikator, 140<br />
Beam Search, 174<br />
Beamforming, 425<br />
behinderte <strong>Mensch</strong>en, 8<br />
Beobachtungswahrscheinlichkeit, 195<br />
Beschneidung des Suchraumes, 318<br />
Bestimmung des Geschlechts, 355<br />
betonte Pausen, 21<br />
Betonung, 392<br />
Bigramm, 265<br />
bilabial, 73<br />
binaurales Hören, 424<br />
Biologie der Sprachkommunikation, 41<br />
Biphone, 291<br />
blinde <strong>Mensch</strong>en, 7<br />
BN (Broadcast News) Task, 38<br />
Bottom-Up-Parser, 396<br />
Buchstabenalphabet, 46<br />
Buchstabiererkennung, 345<br />
Bucket Voronoi Intersection, 137<br />
BVI, 137<br />
Cache-Sprachmodelle, 274<br />
Call Home Task, 38<br />
Car-PC, 12<br />
Carnegie Mellon University, 37<br />
CART, 303<br />
case frames, 400<br />
Cepstrum, 119<br />
CFG, 279<br />
Cochlea, 53<br />
Cocktail-Party, 420<br />
Cocktail-Party-Effekt, 28<br />
Codebuch, 134<br />
Computerspiele, 10<br />
Corpus Mapping, 434<br />
CTI, 14<br />
Cutoffs, 271<br />
DARPA, 35<br />
Data-Mining, 283<br />
Datenaufbereitung, 433<br />
Datensammlung, 432<br />
Datenströme, 229<br />
dBA, 58<br />
Decoder, 315<br />
Decoderarten, 315<br />
Dekodierungsproblem, 192<br />
delayed bigrams, 322<br />
Delta-Koeffizienten, 230<br />
dental, 73<br />
deterministische Klassifikatoren, 127<br />
Dezibel, 58<br />
diagonalen Kovarianzmatrizen, 337<br />
Dialekte, 413<br />
Dialog, 401<br />
Dialoggrammatiken, 407<br />
Dialogsystementwicklung, 407<br />
digitales Signal, 77<br />
Diktiersystem, 1, 4<br />
Dimensionalitätsreduktion, 148<br />
Diphone, 291<br />
Diphthonge, 69<br />
Dirac Distribution, 81<br />
Discounting, 272, 349<br />
diskrete Fouriertransformation, 99<br />
diskrete HMMs, 225<br />
Diskriminanzanalyse, 145<br />
Diskriminanzoptimierung, 145<br />
diskriminiatives Trainieren, 217<br />
divisive Kontextballung, 302<br />
Dorsum, 46<br />
Dozent, 445<br />
Druckwellen, 55<br />
DTW, 168<br />
DTW-Algorithmus, 169, 251<br />
DTW-Pfad, 168<br />
Dudley, 33<br />
dynamic time warping, 168<br />
dynamische Modalitäten, 311<br />
dynamisches Basissprachmodell, 275<br />
dynamisches Programmieren, 162<br />
Editierdistanz, 248<br />
Editierschritte, 161<br />
Eigennamen, 348
Eingabegeschwindigkeit, 2<br />
Einzelkommandoerkennung, 18<br />
Einzelspektrum, 98<br />
Einzelwort Spracherkenner, 169<br />
Elision, 21<br />
Elman-Netze, 374<br />
EM-Algorithmus, 145, 216<br />
Emissionswahrscheinlichkeit, 186<br />
emotionale Lage, 393<br />
emphatische Pausen, 21<br />
endliche Automaten, 408<br />
Endpunktdetektion, 151<br />
Energiespektrum, 91<br />
Engramme, 20<br />
Entropie einer Quelle, 267<br />
Entropiedistanz, 298<br />
Epiglottis, 43<br />
Ergodische Quellen, 268<br />
Erkennerentwicklung, 431<br />
Erkennungsszenario, 24<br />
erste Formante, 49<br />
Etikett, 206<br />
Evaluierungsproblem, 188<br />
Expectation Maximization, 144<br />
Expertenhierarchien, 386<br />
Faber, Joseph, 48<br />
Fahrzeug, 11<br />
Fallschablonen, 400<br />
Faltung, 83<br />
Faltungseigenschaft, 92<br />
FAME, 460<br />
Fehlerbehandlungsmethoden, 426<br />
Fensterbreite, 111<br />
Fernbesprechungsmikrophone, 57<br />
FFT, 102<br />
Filter, 51<br />
Filterbänke, 115<br />
flektierende Sprachen, 414<br />
Flexible Transkriptionen, 244<br />
Formanten, 49<br />
Fortes, 74<br />
Forward-Algorithmus, 189<br />
Forward-Backward Algorithmus, 196<br />
Fourieranalyse, 85<br />
Sachverzeichnis 485<br />
Fourierkoeffizienten, 87<br />
Fourierreihenzerlegung, 87<br />
Fouriertransformation, 89<br />
Framerate, 110<br />
Frequenzbereich, 34, 89, 108<br />
Frikative, 72<br />
Friktion, 72<br />
FTA, 244<br />
fudge factors, 329<br />
Fundamentalformel, 223<br />
Gate, 385<br />
Gaumen, 43<br />
Gaumensegel, 43<br />
Gaumensegels, 72<br />
generalisierte Poloyphone, 292<br />
Genus, 414<br />
Gerätesteuerung, 5<br />
Geräuschmodellierung, 357<br />
Geschichte, 33<br />
Gestikerkennung, 426<br />
Glottale, 74<br />
Glottis, 43<br />
Glättung von Sprachmodellen, 271<br />
Grammatikalität, 19<br />
Grammatische Zerteiler, 394<br />
Grenzfrequenz, 80<br />
grounding, 408<br />
Grundfrequenz, 45<br />
Haarzellen, 53<br />
Hammer, 53<br />
Handschrifterkennung, 426<br />
HARPY, 37<br />
HAT, 145<br />
Hauptachsentransformation, 145<br />
HDLA, 284<br />
Heim-Multimedia-Terminal, 14<br />
Helmholtz-Resonatoren, 49<br />
Hidden Markov Modelle, 35<br />
Hidden-Markov-Modelle, 177<br />
Hierarchische Mixturen von Experten,<br />
384<br />
hierarchischen Mixturen von Experten,<br />
230
486 Sachverzeichnis<br />
Hintergrundgeräusche, 27<br />
Hintergrundrauschen, 124<br />
Historie, 264<br />
HMEs, 384<br />
HMM-Einzelkommandoerkenner, 199<br />
HMM-Entwicklung, 205<br />
HMMs, 181<br />
Homophone, 261<br />
Hyperartikulation, 27, 427<br />
Hypothesis driven lexicon adaptation,<br />
284<br />
Hörfläche, 59<br />
ID of Command, 9<br />
Identifikation von Sprachen, 415<br />
illokutive Sprechakte, 406<br />
Impuls, 81<br />
Impulsantwort, 51, 84<br />
Indexierung, 8<br />
Information-Retrieval, 283<br />
Informationsgehalt des Parameterraumes,<br />
297<br />
Informationsgehalt von Sprachmodellen,<br />
267<br />
Informationsquelle, 267<br />
Informedia, 8<br />
Intelligenter Raum, 14<br />
Interaktive Präsentationsfolien, 453<br />
Intonation, 391<br />
inverse Fouriertransformation, 90<br />
IPA, 65<br />
IPA-Alphabet, 47, 65<br />
JANUS-Ballungsverfahren, 306<br />
Jeffrey Smoothing, 272<br />
Jordan-Netze, 374<br />
Kammfunktion, 97<br />
Kanalfunktion, 84<br />
Karhunen-Loeve-Transformation, 145<br />
Kasus, 414<br />
Katzenohr, 53<br />
Kausalität, 80<br />
Kehlkopf, 43<br />
Klassenbasierte Sprachmodelle, 275<br />
Klassenstreumatrix, 147<br />
KLT, 145<br />
Koartikulationseffekte, 21, 179, 247<br />
Kohonen Maps, 377<br />
<strong>Kommunikation</strong>sart, 28<br />
<strong>Kommunikation</strong>seinheiten, 403<br />
Kompaktifizierung, 336<br />
Kompositabildung, 286<br />
konfidenzgewichtetes Training, 220<br />
Kontextbreite, 292, 295<br />
kontinuierliche Fouriertransformierte,<br />
89<br />
kontinuierliche HMMs, 226<br />
kontinuierliche Sprache, 247<br />
Kontinuierlichkeit, 18<br />
Kontinuierlichkeitsgrade, 225<br />
Korrektives Trainieren, 217<br />
Kovarianzmatrix, 143<br />
Kovarianzmatrizen, 331, 336<br />
Kratzenstein, 48<br />
Kreisfrequenzvariable, 92<br />
kritische Bandbreite, 117<br />
kumulative Distanz, 168<br />
Kurzzeitspektrum, 110, 159<br />
Label-Boosting, 363<br />
Labels, 206<br />
labiodental, 73<br />
Lagrange, 85<br />
Language Line Interpreter, 415<br />
Langzeitspektrum, 109<br />
Laplace-Mischverteilungen, 143<br />
Laserpointer, 448<br />
laterale, 73<br />
LBG-Algorithmus, 134<br />
LDA, 145<br />
LDA-Transformation, 436<br />
Learning Vector Quantization, 375<br />
Lecture Tracker, 446<br />
Leistungsspektrum, 91<br />
Lenes, 74<br />
Lernen von Klassifikatoren, 128<br />
Lernrate, 196<br />
Licklider, 106<br />
LID, 10, 415
Liftering, 120<br />
Likelihood Distanz, 299<br />
Linde-Buzo-Gray, 134<br />
Linear Predictive Coding, 121<br />
lineare Diskriminanzanalyse, 145<br />
Lineare Vorhersage, 121<br />
lineare zeitinvariante Systeme, 80<br />
Linearität, 80<br />
Linked Predictive Neural Nets, 382<br />
Links-Diphone, 291<br />
Lippen, 43<br />
Lippenlesen, 419<br />
Lippenrundung, 75<br />
LISTEN, 11<br />
lokale Distanz, 168<br />
Lokalisierung der Schallquelle, 424<br />
lokutive Sprechakte, 405<br />
Longitudinalwelle, 55<br />
Lookahead, 318<br />
LPC-Koeffizienten, 121<br />
LPNNs, 382<br />
LTI Systeme, 81<br />
Luft, 55<br />
Luftdruck, 55<br />
Luftimpulse, 45<br />
Lunge, 45<br />
LVQ, 375<br />
Längenmodellierung, 325<br />
maximum mutual information<br />
estimation, 218<br />
Maximum-Likelihood lineare Regression,<br />
362<br />
McGurk Effekt, 420<br />
Mehrpaßsuchen, 326<br />
Mel-Skala, 117<br />
<strong>Mensch</strong>-<strong>Maschine</strong>-<strong>Kommunikation</strong>, 1<br />
Merkmalsraum, 186<br />
Mikrophonarray, 425<br />
Minimale Editierdistanz, 160<br />
minimales Paar, 64<br />
Mittelohr, 53<br />
Mittelwertssubtraktion, 124<br />
Mittelwertsvektoren, 330<br />
Mixturgewichte, 331<br />
Sachverzeichnis 487<br />
MLLR, 362<br />
MLP, 374, 382<br />
MMIE, 218<br />
Mobile Informationssysteme, 14<br />
Mobiltelefonie, 14<br />
moderner Vortragsraum, 444<br />
Momentum, 222<br />
Monophone, 290<br />
moving targets, 147<br />
MP3, 103<br />
MS-TDNNs, 379<br />
Multi-Streams, 229<br />
multilinguale Spracherkennung, 413<br />
multimodale Systeme, 419<br />
mumble words, 257<br />
Nachrichtensendung, 8<br />
Nahbesprechungsmikrophone, 25, 57<br />
Nasallaute, 71<br />
Natur des Sprechens, 41<br />
Navigationssysteme, 345<br />
neue Wörter, 237<br />
Neural Gas, 135<br />
neuronale Netze, 371<br />
nichtsprachliche Laute, 357<br />
Nichtterminale, 395<br />
Normierung, 123<br />
Nulldurchgangsrate, 106<br />
Numerus, 414<br />
Nur-Pole-Funktion, 121<br />
Nyquist-Theorem, 98<br />
Oberschwingungen, 120<br />
Offsetnachführung, 123<br />
Ohr, 52<br />
One Stage Dynamic Programming, 251<br />
Optimierungsproblem, 194<br />
optionale Füllwörter, 257<br />
ovales Fenster, 53<br />
Overfitting, 210<br />
palatoalveolar, 73<br />
Palatum, 43<br />
Parameterarten, 330<br />
Parameterkopplung, 203, 231, 331
488 Sachverzeichnis<br />
Parameterraum, 224, 329<br />
Parsing, 394<br />
Pascal, 55<br />
Pausen, 21<br />
PCA, 145<br />
PCM, 102<br />
PDA, 13<br />
Pentaphon, 291<br />
perlokutive Sprechakte, 406<br />
Perplexität, 24, 266<br />
Perzeptionsapparat, 52<br />
Perzeptronen, 371<br />
Phasenspektrum, 91<br />
Phasenstrukturgrammatiken, 408<br />
Phasenverschiebung, 90<br />
Phasenverschiebungen, 108<br />
Phon, 61<br />
Phone, 64, 290<br />
Phonem-HMM, 201<br />
Phoneme, 64<br />
Phonemsatz, 292<br />
Phonetik, 46, 63<br />
phonetisch gekoppelte HMMs, 228<br />
phonotaktische Merkmale, 417<br />
Pitch), 391<br />
Planungspausen, 21<br />
Plosivlaute, 71<br />
Polyphonen, 291<br />
poor man’s trigrams, 323<br />
Produktionen, 394<br />
Prosodie, 390<br />
prosodische Merkmale, 417<br />
Pulse Code Modulation, 102<br />
Qualitätsanforderungen, 437<br />
Quantisierung, 77<br />
Quantisierungsfehler, 79<br />
Quantisierungsrauschen, 79<br />
Quefrenz, 120<br />
Quelle-Filter-Modell, 51, 119<br />
Quintphon, 291<br />
radiale Kovarianzmatrizen, 331<br />
rational agency, 409<br />
Rechts-Diphone, 291<br />
Referenzmuster, 34<br />
Referenzvektoren, 134<br />
Reibelaute, 72<br />
rekurrente Netze, 374<br />
Resource Management, 270<br />
Resource Management Task, 37<br />
Reverberation, 57<br />
rhetorische Fragen, 405<br />
Rhythmus, 392<br />
Robustheit, 353<br />
Run-On-Erkennung, 263<br />
räumliche Ausdehnung, 293<br />
SAT, 364<br />
Satz, 403<br />
Schall, 55<br />
Schalldruckpegel, 58<br />
Schallenergie, 56<br />
Schallquelle, 55<br />
Schallwelle, 55<br />
Schildknorpel, 43<br />
schnelle Fouriertransformation, 102<br />
schritthaltende Erkennung, 263<br />
Schwa-Ellision, 240<br />
Schwellwertdetektor, 152<br />
Sejnowski, 238<br />
Selektive Radialisierung, 340<br />
semantische Parser, 394<br />
semikontinuierliche HMMs, 227<br />
Semitied Covariances, 343<br />
Senones, 293<br />
Shannon-Theorem, 98<br />
Signal-Rausch-Abstand, 79<br />
Signalenergie, 106<br />
Signalnormierung, 122<br />
Signalqualität, 25<br />
Silbe, 290<br />
SNR, 79<br />
Soundkarte, 79<br />
speaker-adaptive training, 364<br />
Speech Organ, 48<br />
Spektralanalyse, 97<br />
Spektrogramme, 113<br />
Spektrum, 91<br />
Spotforming, 425
Sprachdetektor, 152<br />
Sprachenidentifikation, 10<br />
Sprachlaute, 46<br />
Sprachmodell, 261<br />
Sprachsignale, 77, 105<br />
Sprachsynthese, 236<br />
Sprachsynthesesysteme, 48<br />
Sprachverstehen, 389<br />
Sprechakte, 405<br />
Sprecherabhängigkeit, 17, 354<br />
sprecheradaptives Training, 364<br />
Sprecherindentifikation, 9<br />
Sprecherlokalisierung, 422<br />
Sprechgeschwindigkeit, 23<br />
Stack Decoder, 317<br />
statische Modalitäten, 311<br />
statisches Basissprachmodell, 275<br />
stimmhaft, 72, 74<br />
stimmlos, 72, 74<br />
stochastische Klassifikatoren, 128<br />
Stottern, 22<br />
Strahlsuche, 174, 175<br />
Subdialogen, 405<br />
Subpolyphonen, 293<br />
Such-HMM, 320<br />
Sucharten, 315<br />
Suchfehler, 318<br />
SUR Projekt, 37<br />
SWB (Switchboard) Task, 38<br />
syntaktische Parser, 394<br />
TDNNs, 379<br />
Telefongespräche, 26<br />
Tempus, 414<br />
Termersetzungssystem, 395<br />
Terminale, 395<br />
Text-To-Speech Systeme, 236<br />
Text-To-Speech-Systeme, 435<br />
Time Delay Neural Nets, 379<br />
Top-Down-Parser, 396<br />
Training, 205<br />
Trainingsdaten, 210<br />
Transkriptionen, 207, 219<br />
Trigger, 274<br />
Trigramm, 265<br />
Triphone, 291<br />
Trommelfell, 52<br />
Turn, 404<br />
Übertragungsraten, 2<br />
unbetonte Pausen, 21<br />
ungeplante Sprache, 19<br />
ungrammatikalische, 20<br />
Unigramm, 265<br />
Uvula, 72<br />
Sachverzeichnis 489<br />
Vandermondsche Matrix, 101<br />
Varianten, 240<br />
Vektor Quantisierung, 129<br />
velare, 73<br />
Velum, 43, 72<br />
VERBMOBIL, 7, 415<br />
vereinfachtes Evaluierungsproblem, 188<br />
Verfolgen von Vorträgen, 446<br />
verschiedenskalige Basisfunktionen, 125<br />
Vertauschungen, 248<br />
verzögerte Bigramme, 322<br />
Vibrationslaute, 72<br />
Videoclips, 8<br />
Videorecorder, 6<br />
View4You, 8<br />
Viseme, 420<br />
Viterbi-Algorithmus, 193<br />
Viterbi-Pfad, 193<br />
Viterbi-Training, 209<br />
Vocoder, 33<br />
Vokabular, 28<br />
Vokaldreieck, 156<br />
Vokaltrakt, 45<br />
Vokaltraktformen, 46<br />
Vokaltraktlängennormierung, 366<br />
Vokaltraktmodelle, 47<br />
volle Kovarianzmatrizen, 337<br />
von Barkhausen, 117<br />
Vorhersagenetzwerke, 382<br />
Voronoi Regionen, 131<br />
Vortragssprache, 455<br />
VTLN, 366<br />
Wahrscheinlichkeitsmasse, 272
490 Sachverzeichnis<br />
Wall Street Journal, 38, 269<br />
Wavelets, 124<br />
weighted finte state transducer, 279<br />
Wetter-HMM, 184<br />
Widerstand-Kondensator-Einheit, 79<br />
Wizard-of-Oz, 410<br />
Wort, 289, 414<br />
Wort-HMM, 200<br />
Wortabbrüche, 20<br />
Wortcluster, 244<br />
Worterkennungsrate, 248<br />
Worterkennungsraten, 37<br />
Wortfehlerrate, 249<br />
Wortkorrektrate, 249<br />
Wortmodelle, 292<br />
Wortübergangskontexte, 312<br />
WSJ, 38<br />
Zahndamm, 43<br />
Zeitbereich, 89<br />
Zeitfrequenzvariable, 92<br />
zeitinvariant, 81<br />
Zeitinvarianz, 80<br />
zeitliche Ausdehnung, 293<br />
Zunge, 43