Springer-Lehrbuch
Beat Pfister · Tobias Kaufmann
Sprachverarbeitung Grundlagen und Methoden der Sprachsynthese und S...
14 downloads
297 Views
10MB Size
Report
This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
Report copyright / DMCA form
Springer-Lehrbuch
Beat Pfister · Tobias Kaufmann
Sprachverarbeitung Grundlagen und Methoden der Sprachsynthese und Spracherkennung
123
Dr. Beat Pfister Tobias Kaufmann Institut für Technische Informatik und Kommunikationsnetze ETH Zürich CH-8092 Zürich www.tik.ee.ethz.ch/∼pfister
Extras zum Buch online verfügbar unter: www.springer.com/978-3-540-75909-6
ISBN 978-3-540-75909-6
e-ISBN 978-3-540-75910-2
DOI 10.1007/978-3-540-75910-2 Bibliografische Information der Deutschen Nationalbibliothek Die Deutsche Bibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie; detaillierte bibliografische Daten sind im Internet über http://dnb.d-nb.de abrufbar. © 2008 Springer-Verlag Berlin Heidelberg Dieses Werk ist urheberrechtlich geschützt. Die dadurch begründeten Rechte, insbesondere die der Übersetzung, des Nachdrucks, des Vortrags, der Entnahme von Abbildungen und Tabellen, der Funksendung, der Mikroverfilmung oder der Vervielfältigung auf anderen Wegen und der Speicherung in Datenverarbeitungsanlagen, bleiben, auch bei nur auszugsweiser Verwertung, vorbehalten. Eine Vervielfältigung dieses Werkes oder von Teilen dieses Werkes ist auch im Einzelfall nur in den Grenzen der gesetzlichen Bestimmungen des Urheberrechtsgesetzes der Bundesrepublik Deutschland vom 9. September 1965 in der jeweils geltenden Fassung zulässig. Sie ist grundsätzlich vergütungspflichtig. Zuwiderhandlungen unterliegen den Strafbestimmungen des Urheberrechtsgesetzes. Die Wiedergabe von Gebrauchsnamen, Handelsnamen, Warenbezeichnungen usw. in diesem Werk berechtigt auch ohne besondere Kennzeichnung nicht zu der Annahme, dass solche Namen im Sinne der Warenzeichen- und Markenschutz-Gesetzgebung als frei zu betrachten wären und daher von jedermann benutzt werden dürften. Text und Abbildungen wurden mit größter Sorgfalt erarbeitet. Verlag und Autor können jedoch für eventuell verbliebene fehlerhafte Angaben und deren Folgen weder eine juristische Verantwortung noch irgendeine Haftung übernehmen. Herstellung: LE-TEX Jelonek, Schmidt & Vöckler GbR, Leipzig Einbandgestaltung: eStudioCalamar S.L., F. Steinen-Broo, Girona, Spain Gedruckt auf säurefreiem Papier 987654321 springer.com
Vorwort Das vorliegende Buch ist aus den Skripten zur zweisemestrigen Vorlesung Sprachverarbeitung an der ETH Z¨ urich entstanden. Am Aufbau dieser Vorlesung haben etliche fr¨ uhere Mitarbeiter der Gruppe f¨ ur Sprachverarbeitung mitgewirkt, insbesondere Hans-Peter Hutter, Christof Traber und Ren´e Beutler. Der Aufbau der Skripte war konsequent auf den zeitlichen Ablauf der Vorlesung ausgerichtet. Die Vorlesung ist so konzipiert, dass Studierende, die nur ein Semester lang die Vorlesung belegen, trotzdem von fast allen wichtigen Aspekten der Sprachsynthese und der Spracherkennung mindestens einen gro¨ ben Uberblick erhalten. Das f¨ uhrte zwangsl¨ aufig dazu, dass mehrere Gebiete im Band I des Vorlesungsskripts nur eingef¨ uhrt und erst im Band II eingehend behandelt oder vertieft wurden. Inhaltlich deckt das Buch den Vorlesungsstoff ab, aber es ist neu gegliedert worden, sodass nun Grundlagen, Sprachsynthese und Spracherkennung je einen Block bilden. Wir m¨ ochten an dieser Stelle allen, die zu diesem Buch beigetragen haben, bestens danken. Es sind dies zur Hauptsache die Mitglieder der Gruppe f¨ ur Sprachverarbeitung, n¨ amlich Thomas Ewender, Michael Gerber, Sarah Hoffmann und Harald Romsdorfer. Insbesondere Sarah und Thomas haben sich als kritische Leser intensiv mit dem Inhalt und der Form des Buches auseinandergesetzt und zu vielen fruchtbaren Diskussionen beigetragen. Z¨ urich, Januar 2008
Beat Pfister und Tobias Kaufmann
Inhaltsverzeichnis Einf¨ uhrung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1
1 1.1 1.1.1 1.1.2 1.2 1.2.1 1.2.2 1.2.3 1.2.4 1.3 1.3.1 1.3.2 1.3.3 1.4 1.4.1 1.4.2 1.4.3 1.4.4 1.4.5 1.5
Grunds¨ atzliches zur Sprache Sprache als Kommunikationsmittel ......................... Lautsprachliche Kommunikation ............................ Geschriebene vs. gesprochene Sprache ..................... Die Beschreibung von Sprache .............................. Die linguistischen Ebenen .................................... Die phonetische Schrift ....................................... Die akustisch-phonetische Ebene............................ Die Prosodie der Sprache ..................................... Die menschliche Sprachproduktion ......................... ¨ Ubersicht u ¨ber den Sprechapparat .......................... Die Funktion des Sprechapparates .......................... Die Artikulation der Sprachlaute ............................ Das menschliche Geh¨ or ....................................... Wahrnehmung der Schallintensit¨ at ......................... Periodizit¨ at und Tonh¨ ohe..................................... Die Phasenwahrnehmung ..................................... Der Verdeckungseffekt ........................................ Wahrnehmung der Sprachlaute .............................. Verarbeitung nat¨ urlicher Sprache ...........................
5 5 6 8 8 10 11 11 12 12 12 14 15 16 17 18 18 19 21
2 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.8.1 2.8.2
¨ Ubersicht uber die Sprachverarbeitung ¨ Was in einem Sprachsignal steckt........................... Teilgebiete der Sprachverarbeitung ......................... Sprachsynthese.................................................. Spracherkennung ............................................... Sprecheridentifikation.......................................... Sprachidentifikation ............................................ Sprechertransformation ....................................... Sprachsignalcodierung ......................................... Signalformcodierung ........................................... Modellierung von Sprachsignalen ...........................
25 26 27 28 29 29 30 30 32 35
3 3.1 3.1.1 3.1.2 3.1.3
Darstellung und Eigenschaften des Sprachsignals Digitalisieren von Sprachsignalen ........................... Bandbegrenzungsfilter ......................................... Zeit- und Amplitudendiskretisierung........................ Rekonstruktionsfilter ...........................................
39 39 41 41
VIII
Inhaltsverzeichnis
3.2 3.3 3.4 3.5 3.6 3.6.1 3.6.2 3.6.3 3.6.4
Darstellung digitaler Sprachsignale im Zeitbereich ...... Darstellung im Frequenzbereich ............................. Kombinierte Zeit-Frequenz-Bereichs-Darstellungen...... Darstellung der Phase eines Sprachsignals ................ Sprachmerkmale und ihre Darstellung...................... Grundfrequenz .................................................. Formanten ....................................................... Dauer der Laute ................................................ Intensit¨ at der Laute ............................................
4 4.1 4.2 4.2.1 4.2.2 4.2.3 4.2.4 4.2.5 4.3 4.4 4.4.1 4.4.2 4.4.3 4.5 4.5.1 4.5.2 4.5.3 4.6 4.6.1 4.6.2 4.6.3 4.6.4 4.6.5 4.6.6 4.6.7 4.6.8 4.7 4.7.1 4.7.2
Analyse des Sprachsignals Kurzzeitanalyse ................................................. 59 Sch¨ atzung des Kurzzeitspektrums .......................... 60 Diskrete Fouriertransformation .............................. 60 Eigenschaften der DFT ....................................... 64 Fensterfunktionen .............................................. 64 Die Frequenzaufl¨ osung der DFT ............................ 66 Zeitabh¨ angige Fouriertransformation ....................... 69 Sch¨ atzung des Leistungsdichtespektrums.................. 71 Autokorrelation ................................................. 73 Definition der Autokorrelationsfunktion.................... 73 Eigenschaften der Autokorrelationsfunktion............... 73 Kurzzeit-Autokorrelation ...................................... 74 Lineare Pr¨ adiktion.............................................. 77 Herleitung der LPC-Analyse.................................. 77 Sprachmodellierung mittels linearer Pr¨ adiktion........... 80 Interpretation der linearen Pr¨ adiktion ...................... 86 Homomorphe Analyse ......................................... 89 Das verallgemeinerte Superpositionsprinzip ............... 89 Homomorphe Systeme ........................................ 89 Das DFT-Cepstrum ............................................ 90 Cepstrale Gl¨ attung ............................................. 92 Das Mel-Cepstrum ............................................. 94 Das Delta-Cepstrum ........................................... 96 Mittelwertfreie Cepstren ...................................... 97 Cepstrale Distanz............................................... 99 Vektorquantisierung............................................ 100 Realisation der Vektorquantisierung ........................ 101 Generieren eines Codebuches ................................ 103
5 5.1
Hidden-Markov-Modelle Struktur und Parameter eines HMM ....................... 109
43 45 48 50 52 52 53 54 55
Inhaltsverzeichnis
IX
5.1.1 5.1.2 5.2 5.3 5.4 5.4.1 5.4.2 5.4.3 5.4.4 5.4.5 5.4.6 5.4.7 5.4.8 5.4.9 5.5 5.5.1 5.5.2 5.5.3 5.5.4 5.5.5 5.5.6 5.5.7 5.6 5.7
Zustands¨ ubergangswahrscheinlichkeiten ................... Beobachtungswahrscheinlichkeiten.......................... Die grundlegenden HMM-Probleme ........................ Trellis-Diagramm ............................................... Grundlegende Algorithmen f¨ ur DDHMM .................. Evaluationsproblem ............................................ Forward-Algorithmus f¨ ur DDHMM ......................... Decodierungsproblem .......................................... Viterbi-Algorithmus f¨ ur DDHMM ........................... Sch¨ atzproblem .................................................. Backward-Algorithmus f¨ ur DDHMM ....................... Baum-Welch-Algorithmus f¨ ur DDHMM ................... Viterbi-Training f¨ ur DDHMM................................ Initial-DDHMM................................................. Grundlegende Algorithmen f¨ ur CDHMM .................. Forward-Algorithmus f¨ ur CDHMM ......................... Viterbi-Algorithmus f¨ ur CDHMM ........................... Backward-Algorithmus f¨ ur CDHMM ....................... Baum-Welch-Algorithmus f¨ ur CDHMM ................... Viterbi-Training f¨ ur CDHMM ................................ Initial-CDHMM ................................................. Mixture Splitting ............................................... Training mit mehreren Beobachtungssequenzen ......... Underflow ........................................................
6 6.1 6.2 6.2.1 6.2.2 6.2.3 6.2.4 6.2.5 6.3 6.3.1 6.3.2 6.3.3 6.4 6.5 6.5.1 6.5.2
Repr¨ asentation und Anwendung linguistischen Wissens Formale Sprachen und Grammatiken ....................... 139 Die Sprachhierarchie nach Chomsky........................ 140 Regul¨ are Sprachen (Typ 3) ................................... 143 Kontextfreie Sprachen (Typ 2) .............................. 145 Kontextsensitive Sprachen (Typ 1) ......................... 146 Allgemeine Sprachen (Typ 0) ................................ 150 Das Wortproblem .............................................. 150 Die Wortanalyse ................................................ 152 Wortanalyse f¨ ur Typ-3-Grammatiken ....................... 152 Wortanalyse f¨ ur Typ-2-Grammatiken ....................... 160 Wortanalyse f¨ ur Typ-1- und Typ-0-Grammatiken ........ 167 Formalisierung nat¨ urlicher Sprachen........................ 167 Der DCG-Formalismus ........................................ 172 Definition und Eigenschaften von DCG .................... 172 Unifikation ....................................................... 175
110 112 114 115 117 117 118 120 120 122 122 123 126 128 129 129 129 129 129 131 132 133 133 135
X
Inhaltsverzeichnis
6.5.3 6.5.4 6.5.5 6.6 6.6.1 6.6.2 6.6.3
DCG-Ableitungen............................................... DCG-Ableitungsbaum ......................................... DCG und Chart-Parsing....................................... Two-Level-Regeln und Transduktoren...................... Einf¨ uhrung ....................................................... Two-Level-Regeln .............................................. Transduktoren...................................................
175 177 178 178 178 179 182
7 7.1 7.2 7.3 7.4 7.4.1 7.4.2 7.5 7.5.1 7.5.2
Einf¨ uhrung in die Sprachsynthese ¨ Uberblick u ¨ber die Geschichte der Sprachsynthese ...... Aufgabe der Sprachsynthese ................................. Zusammenhang zwischen Lautsprache und Schrift ...... Teile der Sprachsynthese...................................... Die Transkription ............................................... Die phonoakustische Stufe ................................... Lautinventar f¨ ur die Sprachsynthese ........................ Linguistische Grundlagen ..................................... Festlegen der Lautdifferenzierung ...........................
193 194 195 196 197 199 200 200 201
8 8.1 8.1.1 8.1.2 8.2 8.2.1 8.2.2 8.3 8.3.1 8.3.2 8.3.3 8.4 8.4.1 8.4.2 8.4.3 8.4.4 8.4.5 8.4.6 8.4.7 8.4.8 8.4.9
Sprachsynthese: Transkription Linguistische Grundlagen f¨ ur die Transkription........... Ermitteln der Lautfolge ....................................... Ermitteln der Prosodie ........................................ Automatische Transkription .................................. Der “direkte” Ansatz der Transkription..................... Der linguistische Ansatz der Transkription ................ Automatische morphosyntaktische Analyse ............... Morphologische Analyse mit DCG .......................... Generierung der phonetischen Umschrift in einer DCG . Hauptprobleme der morphosyntaktischen Analyse ....... Realisation einer Transkriptionsstufe ....................... DCG in SVOX .................................................. Morphologische Analyse in SVOX .......................... Syntaxanalyse in SVOX ....................................... Analyse unbekannter Wortst¨ amme ......................... Bestimmung der phonetischen Umschrift ganzer W¨ orter Akzentuierung................................................... Phrasierung ...................................................... Generierung der phonologischen Darstellung.............. Weiterverarbeitung der phonologischen Darstellung .....
205 206 210 212 212 213 215 215 217 218 222 223 223 224 226 226 228 231 232 233
Inhaltsverzeichnis
XI
9 9.1 9.1.1 9.1.2 9.1.3 9.2 9.2.1 9.2.2 9.2.3 9.3 9.3.1 9.3.2 9.3.3 9.3.4 9.3.5
Sprachsynthese: Phonoakustische Stufe Verfahren f¨ ur die Sprachsignalproduktion ................. Der artikulatorische Ansatz .................................. Der Signalmodellierungsansatz .............................. Der Verkettungsansatz ........................................ Sprachsynthese nach dem Verkettungsansatz ............ Wahl der Grundelemente ..................................... Ausschneiden von Grundelementen ......................... Ver¨ anderung der prosodischen Gr¨ ossen .................... Steuerung der Prosodie ....................................... Dauersteuerung ................................................. Grundfrequenzsteuerung ...................................... Intensit¨ atssteuerung ........................................... Umsetzung der prosodischen Gr¨ ossen auf die Laute..... Prosodische Ver¨ anderung der Grundelemente ............
237 238 239 242 243 244 245 247 255 256 266 276 278 278
10 10.1 10.2 10.3 10.4 10.5 10.6 10.6.1 10.6.2 10.7 10.7.1 10.7.2 10.7.3 10.7.4 10.7.5
Einf¨ uhrung in die Spracherkennung Zur Geschichte der Spracherkennung....................... Ans¨ atze zur Spracherkennung................................ Probleme der Spracherkennung.............................. Anwendungen ................................................... Einteilung der Spracherkennungssysteme .................. Evaluation der Erkennungsleistung ......................... Wortfehlerrate .................................................. Algorithmus zur Bestimmung der Wortfehlerrate ........ Merkmalsextraktion ............................................ Mel-Frequency Cepstral Coefficients (MFCC) ............ Gegl¨ attete Mel-Spektren von Vokalen und Frikativen... Plosivlaute im gegl¨ atteten Mel-Spektrogramm ........... Spektrale Variabilit¨ at .......................................... Rekonstruktion des Signals ...................................
283 285 286 289 290 292 293 293 294 296 297 298 300 300
11 11.1 11.1.1 11.1.2 11.1.3 11.1.4 11.1.5 11.1.6 11.1.7 11.2
Spracherkennung mit Mustervergleich Sprachmustervergleich......................................... Das Prinzip des Sprachmustervergleichs ................... Zeitliche Anpassung zweier Sprachmuster ................. Randbedingungen f¨ ur die Warping-Kurve ................. Der DTW-Algorithmus ........................................ Spracherkennung mittels DTW.............................. Generieren von Referenzmustern ............................ Einsatzm¨ oglichkeiten und Grenzen.......................... ¨ Aufnehmen einer Ausserung..................................
305 305 308 309 312 314 315 317 317
XII
Inhaltsverzeichnis
11.2.1 Anwendungsszenarien ......................................... 11.2.2 Anfangs- und Endpunktdetektion ...........................
317 320
12 12.1 12.2 12.3 12.3.1 12.4 12.4.1 12.4.2 12.4.3 12.5 12.5.1 12.5.2 12.5.3 12.5.4 12.5.5 12.5.6 12.6 12.6.1 12.6.2 12.7 12.7.1 12.7.2 12.7.3 12.8 12.8.1 12.8.2 12.8.3 12.9
Statistische Spracherkennung Informationstheoretische Sicht............................... Spracherkennung gem¨ ass MAP-Regel ...................... Modellierung von Merkmalssequenzen ..................... Variabilit¨ at von Merkmalssequenzen........................ Akustische Modelle f¨ ur W¨ orter .............................. Sprachmerkmale f¨ ur die Spracherkennung................. HMM als Wortmodell ......................................... Erzeugen von Wortmodellen ................................. Spracherkennung mit Wort-HMM .......................... Einzelworterkennung ........................................... Worterkenner mit Erkennungsnetzwerk .................... Schl¨ usselworterkennung ....................................... Verbundworterkennung ........................................ Erkennung mit dem N-best-Viterbi-Algorithmus ......... Erkennung kontinuierlicher Sprache ........................ Akustische Modelle f¨ ur Wortteile ........................... Wahl der Grundelemente ..................................... Erzeugen von Grundelementmodellen ...................... Modelle f¨ ur verschiedene akustische Ereignisse........... Modelle f¨ ur Pausen ............................................ Modelle f¨ ur Ger¨ ausche ........................................ Modell f¨ ur beliebige Sprachsignale .......................... Spracherkennung mit Laut-HMM ........................... Erkennung einzeln gesprochener W¨ orter ................... Erkennung kontinuierlicher Sprache ........................ Reduktion des Rechenaufwands (Pruning) ................ St¨ arken und Schw¨ achen von HMM .........................
327 327 329 329 333 334 336 337 341 341 343 345 345 347 348 349 349 355 361 361 362 363 363 363 364 364 365
13 13.1 13.2 13.2.1 13.2.2 13.2.3 13.2.4 13.2.5 13.2.6
Sprachmodellierung Zum Begriff Sprachmodellierung in der Spracherkennung Statistische Sprachmodellierung ............................. Sprachmodellierung bei der Einzelworterkennung ........ Sprachmodellierung f¨ ur Wortfolgen ......................... Das allgemeine statistische Sprachmodell ................. N-Gram-Sprachmodelle ....................................... Sch¨ atzen der Parameter von N-Gram-Sprachmodellen . Kategorielle N-Gram-Sprachmodelle ........................
369 370 371 373 373 375 377 380
Inhaltsverzeichnis
XIII
13.2.7 Anwendung von N-Gram-Sprachmodellen im Viterbi13.2.8 13.2.9 13.3 13.3.1 13.3.2
Algorithmus ..................................................... Bewertung von Sprachmodellen ............................. St¨ arken und Schw¨ achen der statistischen Modellierung Wissensbasierte Sprachmodellierung........................ Linguistisches Wissen in der Spracherkennung ........... Formale Grammatiken als Sprachmodelle .................
382 383 386 389 389 392
A A.1 A.2 A.3 A.4 A.4.1 A.4.2 A.5 A.5.1 A.5.2 A.5.3 A.5.4 A.5.5
Verschiedene Grundlagen Phonetische Schrift in ASCII-Darstellung ................. Phonemsystem des Deutschen ............................... Z-Transformation............................................... Wahrscheinlichkeitstheorie.................................... Regeln der Wahrscheinlichkeitsrechnung .................. Wahrscheinlichkeitsverteilungen ............................. Neuronale Netze: Mehrschicht-Perzeptron ................ Das Neuronenmodell........................................... Das Mehrschicht-Perzeptron ................................. Anwendungen von Mehrschicht-Perzeptronen ............ Training eines Mehrschicht-Perzeptrons ................... Hinweise zum Einsatz von neuronalen Netzen............
401 404 405 407 407 409 415 415 416 417 418 420
B B.1 B.2 B.2.1 B.2.2 B.3 B.3.1 B.3.2 B.4 B.4.1 B.4.2 B.4.3 B.5 B.6 B.6.1 B.6.2 B.6.3
Fourier-Analyse-Synthese von Sprachsignalen Das Prinzip der Fourier-Analyse-Synthese................. Das wirkliche Spektrum eines Signals ...................... Die Wahl der Fensterfunktion ............................... Analyse eines stark instation¨ aren Signals .................. Sch¨ atzen des wirklichen Spektrums von Sprachsignalen Ermittlung schwacher spektraler Komponenten .......... Elimination unechter spektraler Maxima .................. Bestimmen der Grundfrequenz .............................. Berechnung der Autokorrelation............................. Detektion des AKF-Maximums .............................. Erh¨ ohung der Genauigkeit .................................... Rekonstruktion des Sprachsignals ........................... Prosodische Ver¨ anderung im Kurzzeitspektrum .......... Dauerver¨ anderung .............................................. Grundfrequenzver¨ anderung ................................... Frequenzskalierung und Signalbandbreite..................
426 428 430 431 436 438 440 442 442 444 445 446 448 448 451 457
XIV
Inhaltsverzeichnis
Notationen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 461 Glossar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465 Literaturverzeichnis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
475
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477
Einf¨ uhrung Im Deutschen wird unter dem Begriff Sprachverarbeitung sowohl die Verarbeitung lautlicher als auch geschriebener Sprache verstanden. Im Gegensatz dazu gibt es beispielsweise im Englischen die Begriffe Speech Processing und Natural Language Processing, wobei mit dem ersten ausschliesslich die Verarbeitung gesprochener Sprache gemeint ist und der zweite die Verarbeitung geschriebener Sprache bezeichnet. Da es in diesem Buch haupts¨ achlich um den Zusammenhang zwischen lautlicher und textlicher Form von Sprache geht, bzw. um die Umsetzung lautlicher Sprache in Text oder umgekehrt, wird konsequent zwischen den beiden Formen unterschieden: Lautsprache bezieht sich stets mehr oder weniger direkt auf das Sprechen oder H¨ oren und wird je nach Zusammenhang auch als gesprochene Sprache, als akustische Form der Sprache oder im technischen Sinne als Sprachsignal bezeichnet. Text bezeichnet die geschriebene Form der Sprache, f¨ ur die auch Begriffe wie orthographische oder graphemische Form der Sprache verwendet werden. Die technische Umsetzung von Text in Lautsprache wird als Sprachsynthese bezeichnet. Der umgekehrte Prozess, die Spracherkennung, ermittelt aus der Lautsprache den entsprechenden textlichen Inhalt. Die Zielsetzung dieses Buches besteht darin, die im Zusammenhang mit Sprachsynthese und Spracherkennung relevanten Grundlagen und Verfahren zu erkl¨ aren. Dazu geh¨ oren insbesondere: Grundkenntnisse u ¨ ber die menschliche Sprachproduktion und Sprachwahrnehmung Eigenschaften von Sprachsignalen und ihre Darstellung Grundkenntnisse in Linguistik der deutschen Sprache, insbesondere Phonetik, Morphologie und Syntax die wichtigsten Transformationen und Methoden der digitalen Sprachsignalverarbeitung die statistische Beschreibung vieldimensionaler Gr¨ ossen mittels HiddenMarkov-Modellen Darstellung komplexer Zusammenh¨ ange mit neuronalen Netzen die Formulierung und Anwendung von Wissen in der Form von Regeln
2
Einf¨ uhrung
Aufbauend auf diesen Grundlagen werden die wichtigsten Ans¨ atze zur Sprachsynthese und Spracherkennung behandelt. In der Sprachsynthese sind dies: die Umwandlung von Text in eine phonologische Beschreibung, wie sie im ETH-Sprachsynthesesystem SVOX verwirklicht ist einfachere und ausgekl¨ ugeltere Ans¨ atze zur Steuerung der Prosodie verschiedene M¨ oglichkeiten zum Generieren von Sprachsignalen In der Spracherkennung werden zwei grundlegende Ans¨ atze behandelt: der ¨ altere Mustererkennungsansatz, der prim¨ ar in einfachen Systemen zur Anwendung kommt die moderne statistische Spracherkennung mittels Hidden-Markov-Modellen und N-Grams Das Buch ist haupts¨ achlich mathematisch-technisch ausgerichtet. Um die interdisziplin¨ aren Aspekte der Sprachverarbeitung angemessen zu behandeln, werden jedoch auch die linguistischen Grundlagen eingef¨ uhrt, soweit dies f¨ ur das Verst¨ andnis der Sprachsynthese und der Spracherkennung n¨ utzlich ist. Viele Sachverhalte, sowohl aus dem Bereich der Sprachsignalverarbeitung als auch aus der Linguistik, werden mit Beispielen illustriert. Vor allem u ¨ ber diese Beispiele, aber auch u ¨ ber die linguistischen Konventionen, wird ein starker Bezug zur deutschen Sprache hergestellt. Die behandelten Grundlagen und Verfahren sind jedoch weitgehend sprachunabh¨ angig. Die Gliederung das Buches ist wie folgt: Das erste Kapitel enth¨ alt einf¨ uhrende Angaben zur Sprache als Kommunikationsmittel, zur Beschreibung von Sprache, zur Sprachproduktion und zur akustischen Wahrnehmung. Kapitel 2 ¨ vermittelt einen Uberblick u ¨ ber die verschiedenen Bereiche der Sprachverarbeitung. Dabei werden auch einige in diesem Buch nicht behandelte Bereiche gestreift. Das 3. Kapitel zeigt die wesentlichen Darstellungsarten und Eigenschaften von Sprachsignalen. Die Kapitel 4 bis 6 enthalten wichtige Grundlagen: Im Kapitel 4 werden alle in diesem Buch verwendeten Signaloperationen und Transformationen behandelt. Das Kapitel 5 umfasst die Grundlagen der Hidden-Markov-Modelle. Im Kapitel 6 werden die Methoden zur Beschreibung und Anwendung regelbasierten, linguistischen Wissens eingef¨ uhrt. Die weiteren Kapitel befassen sich mit der Sprachsynthese (Kapitel 7 bis 9) und mit der Spracherkennung (Kapitel 10 bis 13).
Kapitel 1 Grunds¨ atzliches zur Sprache
1
1
1 1.1 1.1.1 1.1.2 1.2 1.2.1 1.2.2 1.2.3 1.2.4 1.3 1.3.1 1.3.2 1.3.3 1.4 1.4.1 1.4.2 1.4.3 1.4.4 1.4.5 1.5
Grunds¨ atzliches zur Sprache Sprache als Kommunikationsmittel ......................... Lautsprachliche Kommunikation ............................ Geschriebene vs. gesprochene Sprache ..................... Die Beschreibung von Sprache .............................. Die linguistischen Ebenen .................................... Die phonetische Schrift ....................................... Die akustisch-phonetische Ebene............................ Die Prosodie der Sprache ..................................... Die menschliche Sprachproduktion ......................... ¨ Ubersicht u ¨ber den Sprechapparat .......................... Die Funktion des Sprechapparates .......................... Die Artikulation der Sprachlaute ............................ Das menschliche Geh¨ or ....................................... Wahrnehmung der Schallintensit¨ at ......................... Periodizit¨ at und Tonh¨ ohe..................................... Die Phasenwahrnehmung ..................................... Der Verdeckungseffekt ........................................ Wahrnehmung der Sprachlaute .............................. Verarbeitung nat¨ urlicher Sprache ...........................
5 5 6 8 8 10 11 11 12 12 12 14 15 16 17 18 18 19 21
1 Grunds¨ atzliches zur Sprache In diesem Kapitel werden allgemeine Grundlagen und Begriffe eingef¨ uhrt, auf denen die weiteren Kapitel aufbauen.
1.1
1.1 Sprache als Kommunikationsmittel 1.1.1 Lautsprachliche Kommunikation ¨ Kommunikation bezeichnet allgemein die Ubermittlung von Information. Da¨ bei k¨ onnen die Art der Information und das Ubertragungsmedium sehr unterschiedlich sein. Bei der direkten lautsprachlichen Kommunikation zwischen Menschen wird die Information (Botschaft, Gedanke, Idee etc.) in die Form der gesprochenen Sprache umgesetzt, die sich vom Mund des Sprechers via das Medium Luft als Schallwellen ausbreitet, wie in der Abbildung 1.1 schematisch dargestellt. Die Schallwellen gelangen an das Ohr des Zuh¨ orers, der aus dem Sprachschall die Botschaft ermittelt. sprechende Person
zuhörende Person
Gedanke
kognitiver Prozess
Gedanke
Artikulatoren
Gehör
kognitiver Prozess
¨ Abbildung 1.1. Symbolische Darstellung der lautsprachlichen Ubertragung einer gedanklichen Botschaft von einem Sprecher zu einem Zuh¨ orer
Lautsprachliche Kommunikation kann nicht nur zwischen Menschen, sondern auch zwischen einer Maschine und einem Menschen stattfinden. Im Gegensatz zum menschlichen Sprecher versteht jedoch gew¨ ohnlich die sprechende Maschine den Sinn der ausgegebenen Lautsprache nicht. Die sprechende Maschine ersetzt somit im Allgemeinen nicht einen Sprecher, der Gedanken in Lautsprache umsetzt. Heutzutage geben die meisten der sogenannt sprechenden Maschinen bloss vorg¨ angig aufgezeichnete Sprachsignale aus. Neuerdings kommt auch Sprachsynthese zum Einsatz, also das Umsetzen einer als Text ¨ ausformulierten Meldung in ein Sprachsignal. Das Ubersetzen von Ideen, Fakten etc. in sprachlich korrekte und sinnvolle Texte wird jedoch weitgehend bei der Konzeption der Maschine vollzogen und ist somit Sache des Menschen.
6
1. Grunds¨ atzliches zur Sprache
Sinngem¨ ass trifft dies auch f¨ ur den Vergleich einer Spracherkennungsmaschine mit einem Zuh¨ orer zu. W¨ ahrend der Zuh¨ orer das Geh¨ orte automatisch auf seinen Sinn hin u uft, indem er es zum aktuellen Thema und zu allgemei¨ berpr¨ nem Wissen in Bezug setzt, begn¨ ugt sich die Spracherkennung in der Regel damit, das Sprachsignal in eine Folge von W¨ ortern zu transformieren. Ob diese Wortfolge auch sinnvoll ist, l¨ asst sich i.a. maschinell nicht u ufen. ¨ berpr¨
1.1.2 Geschriebene vs. gesprochene Sprache Die lautliche Form der menschlichen Sprache ist viel ¨ alter als die geschriebene. Entwicklungsgeschichtlich gesehen ist das Bestreben, nebst der Lautsprache auch eine schriftliche Form der Kommunikation zu haben, relativ jung, insbesondere im deutschen Sprachraum. Urspr¨ unglich versuchte die (alphabetische) Schrift ein Abbild der Lautsprache zu geben, war also eher eine Art phonetische Schreibweise. Die so entstandene Orthographie der deutschen Sprache war naheliegenderweise stark durch den Dialekt und die pers¨ onliche Auffassung des Schreibers gepr¨ agt und somit sehr uneinheitlich.1 Mit der zunehmenden Bedeutung der schriftlichen Kommunikation durch die Erfindung des Buchdrucks Mitte des 15. Jahrhunderts und noch ausgepr¨ agter durch die Einf¨ uhrung der allgemeinen Schulpflicht zu Beginn des 19. Jahrhunderts wurde die Vereinheitlichung der deutschen Rechtschreibung verst¨ arkt. Die Ver¨ offentlichung des “Vollst¨ andiges orthographisches W¨ orterbuch der deutschen Sprache” von Konrad Duden im Jahre 1880 war ein wichtiger Schritt auf diesem Wege. Eine allgemein anerkannte und als verbindlich festgelegte deutsche Orthographienorm entstand jedoch erst 1901 an der Orthographischen Konferenz in Berlin. Die moderne Zivilisation mit ihrer starken Abh¨ angigkeit von der geschriebenen Sprache verleitet dazu, Sprache in erster Linie in ihrer geschriebenen Form zu betrachten und die Lautsprache zur ungenauen verbalen Realisation eines Textes abzuqualifizieren. Tats¨ achlich sind jedoch die Ausdrucksm¨ oglichkeiten der Lautsprache vielf¨ altiger als diejenigen der geschriebenen Sprache (vergl. auch Abschnitt 1.2.4), und zwar unabh¨ angig davon, ob es sich um gelesene Sprache oder um sogenannte Spontansprache handelt. Dieses Buch befasst sich sowohl mit der geschriebenen, als auch mit der gesprochenen Sprache und insbesondere mit der automatischen Umwandlung der einen Form in die jeweils andere. Die Charakterisierung von geschriebener bzw. gesprochener Sprache erfolgt dementsprechend unter einer technischen Perspektive. 1
So sind beispielsweise f¨ ur das Wort “Leute” in Dokumenten aus dem 14. bis 16. Jahrhundert unter anderem die folgenden Schreibweisen zu finden: Leut, Le¨ uthe, ut, L´ ut, Lui te, wobei nicht alle hinsichtlich Bedeutung identisch Lude, Lue de, Lute, L¨ sind (vergl. [28]).
1.1
Sprache als Kommunikationsmittel
7
Unter geschriebener Sprache soll hier Text verstanden werden, der z.B. als Zeichenfolge in einem Computer vorliegt. Mit gesprochener Sprache sind digitalisierte Sprachsignale, sogenannte Zeitreihen gemeint. Die augenf¨ alligsten Unterschiede sind somit (vergl. auch Abbildung 1.2): Text besteht grunds¨ atzlich aus einer Folge diskreter Zeichen aus einem relativ kleinen Zeichensatz, den Buchstaben des Alphabets. Die Zeichen beeinflussen sich gegenseitig nicht und die W¨ orter sind klar gegeneinander abgegrenzt. Lautsprache ist zwar auch eine Abfolge von Elementen, n¨ amlich von Lauten, die wir mehr oder weniger eindeutig wahrnehmen k¨ onnen. Die in der Form des Sprachsignals physikalisch erfassbare Lautsprache zeigt jedoch, dass die Laute nicht scharf voneinander abgegrenzt sind, weder in zeitlicher Hinsicht noch bez¨ uglich der charakteristischen Eigenschaften. Die lautlichen Eigenschaften des Sprachsignals ver¨ andern sich kontinuierlich von einem Laut zum n¨ achsten, auch u ¨ ber die Wortgrenzen hinweg. Wortgrenzen sind somit in der Regel nicht ersichtlich. Zudem ist die Auspr¨ agung eines Lautes stark von seinen Nachbarlauten (Koartikulation), von seiner Stellung im Wort bzw. Satz und nicht zuletzt vom Sprecher abh¨ angig. Ein digitalisiertes Sprachsignal ist eine Folge von Abtastwerten, also eine Zahlenreihe und somit auch eine Folge diskreter Zeichen. Im Gegensatz zur geschriebenen Sprache, bei der z.B. jedes ASCII-Zeichen genau einem Buchstaben entspricht, besteht jedoch zwischen einem Signalabtastwert und einem Laut kein direkter Zusammenhang. Diese rudiment¨ are Charakterisierung zeigt, dass das Sprachsignal von diversen sehr unterschiedlichen Faktoren gepr¨ agt wird. Es kann deshalb kaum erstaunen, dass das Detektieren von Lauten im Sprachsignal und damit die Spracherkennung alles andere als trivial ist.
Text:
“Heinrich kommt nach Hause.”
Sprachsignal:
0
0.2
0.4
0.6
0.8
1
1.2
1.4
[s]
Abbildung 1.2. Veranschaulichung der Verschiedenheit von Text und Sprachsignal
8
1.2
1. Grunds¨ atzliches zur Sprache
1.2 Die Beschreibung von Sprache In diesem Abschnitt geht es um die Beschreibung von Sprache aus der Sicht der Linguistik. Dabei interessiert, aus welchen Elementen die Sprache besteht, welche Gesetzm¨ assigkeiten zwischen Elementen (oder Folgen von Elementen) vorhanden sind und welche Beziehungen zwischen den Elementen und dem “Rest der Welt” bestehen (siehe Abschnitt 1.2.1). Diese vielschichtigen Zusammenh¨ ange werden auch als Struktur der Sprache bezeichnet und die sprachlichen Elemente werden dabei als Symbole oder Abstrakta betrachtet. Aus der Sicht der Phonetik geht es bei der Beschreibung von Sprache um die Eigenschaften der konkreten lautsprachlichen Realisierungen der abstrakten Elemente. Dabei wird zwischen der segmentalen Ebene, also der Ebene der Laute (vergl. Abschnitt 1.2.3), und der suprasegmentalen Ebene, der Prosodie (siehe Abschnitt 1.2.4) unterschieden.
1.2.1 Die linguistischen Ebenen Bei der Beschreibung der Struktur der Sprache unterscheidet die Linguistik verschiedene Ebenen. Es ist u at zu ordnen, ¨ blich, die Ebenen nach Komplexit¨ wobei zur Komplexit¨ at haupts¨ achlich die Vielfalt und die Gr¨ osse der Elemente beitragen. Auf der untersten Ebene wird zudem zwischen Lautsprache und geschriebener Sprache unterschieden: Graphemische Ebene: Sie definiert den Vorrat an Schriftzeichen, das sogenannte Alphabet. Die Elemente des Alphabets werden auch als Grapheme bezeichnet. Wie alle anderen Ebenen ist auch die graphemische Ebene a, ¨ o sprachspezifisch. Sie spezifiziert beispielsweise, dass die Grapheme ¨ und u oren. ¨ zum deutschen, nicht aber zum englischen Alphabet geh¨ Phonemische Ebene: Die kleinsten Einheiten der Lautsprache sind die Laute oder Phone, wobei die Linguistik unterscheidet zwischen den Phonemen und den Allophonen: Die Phoneme sind die kleinsten bedeutungsunterscheidenden Einheiten einer Sprache. Die Phoneme einer Sprache k¨ onnen mit der Minimalpaaranalyse ermittelt werden. So gibt es im Deutschen beispielsweise das Wortpaar “doch” und “roch” (in phonemischer Darstellung gem¨ ass Abschnitt A.2 geschrieben als /dOx/ und /rOx/) und damit die Phoneme /d/ und /r/. Weil im Deutschen auch Wortpaare wie “Rate” /ra:t@/ und “Ratte” /rat@/ existieren, sind auch /a/ und /a:/ Phoneme. Zwar nicht im Deutschen, aber in sogenannten Tonsprachen (z.B. Chinesisch) gibt es auch Wortpaare und damit Laute, die sich nur in der Tonh¨ ohe bzw. im Tonh¨ ohenverlauf unterscheiden. Solche Laute sind definitionsgem¨ ass auch Phoneme.
1.2
Die Beschreibung von Sprache
9
Die Allophone sind zum selben Phonem geh¨ orige Laute oder Lautvarianten. Sie bewirken in der betrachteten Sprache keinen Bedeutungsunterschied. So ist die Bedeutung des Wortes “roch” dieselbe, unabh¨ angig davon, ob es als [rOx] (mit Zungenspitzen-R) oder als [öOx] (mit Z¨ apfchen-R) gesprochen wird. Die Laute [r] und [ö] werden als Allophone des Phonems /r/ bezeichnet. Sind die Allophone beliebig gegeneinander austauschbar (d.h. unabh¨ angig von der Stellung), dann heissen sie freie Allophone. So sind z.B. [ö] und [r] freie Allophone des Phonems /r/. Kommen die Laute nur in bestimmten Kontexten vor, dann werden sie als stellungsbedingte Allophone bezeichnet. Im Deutschen sind beispielsweise die Laute [¸c] in “ich” und [x] in “ach” stellungsbedingte Allophone des Phonems /x/. Morphologische Ebene: Die Morphologie beschreibt, wie aus Morphemen korrekte Wortformen aufgebaut werden. In der Linguistik werden mit dem Begriff Morphem Abstrakta wie Stamm-, Pr¨ afix- und Pluralmorphem bezeichnet. Die konkreten Realisationen sind die Morphe. Morphe aus, die zu einer gemeinsamen Grundform {haus} geh¨ owie haus und h¨ ren, werden Allomorphe genannt und die Grundform {haus} wird ebenfalls als Morphem bezeichnet. Morpheme sind die kleinsten bedeutungstragenden Einheiten einer Sprache. Eine wesentliche Eigenschaft der Morphe ist, dass sie nicht anhand eines kompakten Satzes von Regeln beschrieben werden k¨ onnen. Sie lassen sich bloss aufz¨ ahlen. Syntaktische Ebene: Die Syntax beschreibt mittels Regeln, wie Wortformen zu Konstituenten (Satzteilen oder Wortgruppen) und diese wiederum zu S¨ atzen kombiniert werden k¨ onnen. F¨ ur das Deutsche gibt es beispielsweise die Regel, dass Artikel, Adjektiv und Nomen in einer Nominalgruppe bez¨ uglich Kasus, Numerus und Genus (Fall, Zahl und grammatisches Geschlecht) u ussen. So ist “des alten Hauses” ¨ bereinstimmen m¨ eine korrekte neutrale (s¨ achliche) Nominalgruppe im Genitiv Singular. Semantische Ebene: Die Semantik befasst sich mit der Bedeutung von W¨ ortern, Ausdr¨ ucken und S¨ atzen. Die Abgrenzung gegen¨ uber der Syntax zeigt sich einleuchtend anhand von S¨ atzen wie “Die Polizei f¨ angt den ausgebrochenen Vulkan wieder ein.”, der zwar syntaktisch, nicht aber semantisch korrekt (sinnhaft im Gegensatz zu sinnlos) ist. Pragmatische Ebene: Diese Ebene wird oft nicht der Linguistik im engeren Sinne zugerechnet. Sie befasst sich mit dem Zweck der Sprache und stellt das Geschriebene oder Gesprochene in Bezug zur schreibenden bzw. sprechenden Person und in einen gr¨ osseren Zusammenhang. Beispielswei-
10
1. Grunds¨ atzliches zur Sprache
se kann der Satz “Du musst dieses Buch lesen!” eine Empfehlung oder ein Befehl sein, abh¨ angig davon, ob die Kommunikation zwischen Kollegen stattfindet oder ob ein Lehrer den Satz zu einem Sch¨ uler spricht. Zudem erzielt die Sprache je nach Wortwahl oder Formulierung (bei der Lautsprache ist auch die Sprechweise2 relevant) eine unterschiedliche Wirkung.
1.2.2 Die phonetische Schrift Aus dem Fremdsprachenunterricht weiss man, dass aus der Schreibweise (graphemische Form) von W¨ ortern oft nicht ohne weiteres auf deren korrekte Aussprache (phonetische Form) geschlossen werden kann. Vielen Menschen fallen diese Unterschiede zwischen Schreib- und Sprechweise in ihrer Muttersprache nicht auf. Sie sind jedoch in jeder Sprache in mehr oder weniger ausgepr¨ agter Form vorhanden, so auch im Deutschen. Da die Lautvielfalt gr¨ osser als die Anzahl der Buchstaben ist, haupts¨ achlich weil auch Dauer, Tonh¨ ohe, Nasalierung, Stimmhaftigkeit etc. lautunterscheidende Merkmale sind, ist zur Notation der Aussprache eine spezielle Schrift erforderlich, also eine phonetische Schrift. Es gibt eine grosse Vielfalt von phonetischen Schriften, die das Lautsystem einer Sprache verschieden differenziert beschreiben. F¨ ur den Sprachenunterricht hat sich die als IPA-Alphabet (International Phonetic Association) bezeichnete phonetische Schrift durchgesetzt. Die IPA-Lautschrift wird auch in diesem Buch verwendet. Einige Beispiele solcher IPA-Symbole sind in der Tabelle 1.1 aufgef¨ uhrt. Die vollst¨ andige Liste aller hier verwendeten IPA-Symbole ist im Anhang A.1 zu finden. Tabelle 1.1. IPA-Symbole mit Beispielen in graphemischer und phonetischer Schreibweise.
a a: a ˜ a: ˜ 5 a
2
hat Bahn Pens´ee Gourmand Ober weit Haut Ball
[hat] [ba:n] [p˜ a"se:] [gUr"m˜ a:] ["Šo:b5] [va
c¸ d e e: E E: @ .. .
sich dann Methan Beet h¨ atte w¨ ahle halte
[zI¸c] [dan] [me"ta:n] [be:t] ["h Et@] ["v E:l@] ["halt@]
Bei der Lautsprache ist selbstverst¨ andlich die Prosodie (siehe Abschnitt 1.2.4) ein wichtiges pragmatisches Element. So wird im vorgetragenen M¨ archen der Wolf mit m¨ achtig bedrohlicher Stimme sprechen, das Rotk¨ appchen situationsbedingt jedoch mit einem d¨ unnen, a ¨ngstlichen Stimmlein antworten.
1.2
Die Beschreibung von Sprache
11
1.2.3 Die akustisch-phonetische Ebene Im Gegensatz zu den Abschnitten 1.2.1 und 1.2.2, in denen die lautsprachlichen Elemente (also die Laute) als Abstrakta betrachtet werden, bezieht sich die akustisch-phonetische Ebene der Sprache auf die konkreten Realisierungen. Es interessiert insbesondere die Frage, wodurch sich die verschiedenen Laute auszeichnen bzw. unterscheiden. In der Phonetik werden die Sprachlaute anhand verschiedenartiger Merkmale charakterisiert. So sind Laute z.B. stimmhaft oder stimmlos (periodisch oder rauschartig), sind gerundet oder ungerundet, hell oder dunkel, zeichnen sich durch bestimmte Formantfrequenzen aus (siehe Abschnitt 1.4.5), sind vokalisch oder konsonantisch. Die Merkmale k¨ onnen sich somit auf die Lautproduktion bzw. den Sprechapparat (nasal, gerundet etc.), auf das Sprachsignal selbst (messbare physikalische Gr¨ ossen wie Periodizit¨ at und Formantfrequenzen), auf die akustische Wahrnehmung (hell / dunkel) oder auf linguistische Konventionen (vokalisch / konsonantisch) beziehen. Da die Laute anhand dieser Merkmale unterschieden werden, werden sie als distinktive Merkmale bezeichnet.3 1.2.4 Die Prosodie der Sprache Die Laute bilden die segmentale Ebene der gesprochenen Sprache. Die suprasegmentale Ebene der Lautsprache wird als Prosodie bezeichnet. Die Prosodie ist ausschliesslich ein Ph¨ anomen der gesprochenen Sprache. Ein Pendant dazu gibt es in der geschriebenen Sprache nicht.4 Die linguistische Funktion der Prosodie umfasst: Kennzeichnung des Satztyps, z.B. von Frages¨ atzen, die nicht aufgrund der Wortstellung zu erkennen sind, und deshalb mit einer gegen das Satzende ansteigenden Intonation gekennzeichnet werden Gewichtung, d.h. Unterscheidung wichtiger von weniger wichtigen Teilen ¨ einer Ausserung ¨ Gliederung l¨ angerer Ausserungen in sinnvolle Teile. 3 In der Phonetik wird gew¨ ohnlich versucht, die Laute einer Sprache anhand eines minimalen Satzes distinktiver Merkmale zu beschreiben, z.B. in [16], Seite 128 ff. Dadurch lassen sich relevante Unterschiede von irrelevanten trennen, was grunds¨ atzlich eine gute Grundlage f¨ ur die Lautunterscheidung in der Spracherkennung liefern k¨ onnte. Weil jedoch gewisse Merkmale nur auf linguistischen Konventionen beruhen (z.B. vokalisch / konsonantisch) und nicht einer physikalischen Eigenschaft des Sprachsignals entsprechen, sind diese Merkmale in der Spracherkennung nicht sehr hilfreich. 4
Zwar bietet die textliche Form der Sprache die M¨ oglichkeit, Zeichen (Frage-, Ausrufzeichen, Anf¨ uhrungsstriche etc.) oder Markierungen (z.B. das Unterstreichen) anzubringen, oder den Text hinsichtlich Layout zu gestalten. Aber diese M¨ oglichkeiten sind bei weitem nicht gleichwertig.
12
1. Grunds¨ atzliches zur Sprache
Die linguistischen Abstrakta der Prosodie sind die Akzente (Betonungen) und die Phrasen (Sprechgruppen), wobei sowohl Akzente als auch Phrasengrenzen verschiedene St¨ arkegrade aufweisen. Nebst der linguistischen hat die Prosodie auch eine ausserlinguistische Funktion: Sie bestimmt, ob eine Stimme gehetzt, zaghaft, traurig, langweilig, w¨ utend usw. wirkt. Damit spielt die Prosodie eine wesentliche Rolle auf der pragmatischen Ebene der Sprache (vergl. Abschnitt 1.2.1). Diesen komplexen, die sinnliche Wahrnehmung betreffenden Eigenschaften der Prosodie stehen die im Sprachsignal messbaren physikalischen Gr¨ ossen gegen¨ uber, die auch als prosodische Gr¨ ossen bezeichnet werden: der zeitliche Verlauf der Grundfrequenz und der Signalleistung und die Dauer der Laute und der Pausen. Wie in Abschnitt 1.2.1 erw¨ ahnt ist, k¨ onnen je nach Sprache die Dauer und die Tonh¨ ohe auch phonemischen Charakter haben, also bedeutungsunterscheidend sein. So ist etwa im Deutschen die Dauer der Vokale teils phonemisch, weil es beispielsweise Wortpaare wie /va:l/ und /val/ (Wahl und Wall) oder ahle und Welle) gibt. Hingegen ist die Tonh¨ ohe in der /v E:l@/ und /v El@/ (w¨ deutschen Sprache ein rein suprasegmentales Ph¨ anomen, ganz im Gegensatz zu den sogenannten Tonsprachen, zu denen beispielsweise Chinesisch geh¨ ort. Bemerkenswert ist, dass sich sowohl die segmentalen, als auch die suprasegmentalen Merkmale auf dieselben physikalischen Gr¨ ossen auswirken. So wird der an einer konkreten Stelle eines Sprachsignals messbare Wert der Grundfrequenz beeinflusst durch den Laut an dieser Stelle (die Art des Lautes und, bei Tonsprachen, die Art des Tones), durch den Betonungsgrad der Silbe und durch die Position im Satz.
1.3
1.3 Die menschliche Sprachproduktion ¨ 1.3.1 Ubersicht uber den Sprechapparat ¨ Die Gesamtheit der menschlichen Organe, die an der Produktion von Lautsprache beteiligt sind, wird als Sprechapparat bezeichnet. Dazu geh¨ oren im Wesentlichen die Lunge, die Luftr¨ ohre, der Kehlkopf mit den Stimmlippen (oder Stimmb¨ andern), das Gaumensegel, die Zunge, die Z¨ ahne und die Lippen. Wichtig im Zusammenhang mit der Sprachproduktion sind auch die ¨ Hohlr¨ aume, insbesondere Rachen, Mund und Nasenraum. Eine Ubersicht u ber den Aufbau des menschlichen Sprechapparates zeigt Abbildung 1.3. ¨ 1.3.2 Die Funktion des Sprechapparates Hinsichtlich der Funktion beim Sprechprozess k¨ onnen beim menschlichen Sprechapparat zwei Komponenten unterschieden werden:
1.3
Die menschliche Sprachproduktion
1
4
2 3
9
6
5
8
7
10
2 11
13
1
Nasenraum (Cavum nasi)
2
Lippen (Labia)
3
Zähne (Dentes)
4
Zahndamm (Alveolen)
5
harter Gaumen (Palatum)
6
weicher Gaumen (Velum)
7
Halszäpfchen (Uvula)
8
Mundraum (Cavum oris)
9
Zungenspitze (Apex)
10
Zungenrücken (Dorsum)
11
Stimmlippen im Kehlkopf (Larynx)
Abbildung 1.3. Mittelschnitt (Sagittalschnitt) durch den menschlichen Sprechapparat
a) Schallproduktion: W¨ ahrend des Sprechens wird aus der Lunge Luft ausgestossen, welche die aneinander liegenden Stimmlippen in Schwingung versetzt, wodurch der Luftstrom periodisch unterbrochen wird. Die Schwingfrequenz der Stimmlippen betr¨ agt bei M¨ annern im Mittel etwa 120 Hz, bei Frauen etwa 220 Hz. Die Schwingfrequenz variiert beim Sprechen in einem etwa eine Oktave umfassenden Bereich. Der pulsierende Luftstrom ist nichts anderes als ein akustisches Signal. Da die Stimmlippen im Luftstrom nicht frei schwingen, sondern periodisch aneinander schlagen und so den Unterbruch des Luftstromes bewirken, ist das entstehende akustische Signal stark oberwellenhaltig. Liegen die Stimmlippen beim Ausstossen der Luft nicht aneinander, dann entweicht die Luft gleichf¨ ormig durch Mund und/oder Nase. Wird der Luftstrom durch eine Engstelle behindert, dann entstehen Turbulenzen, die sich akustisch als zischendes Ger¨ ausch ¨ aussern. b) Klangformung: Die mehr oder weniger neutralen akustischen Signale von den Stimmlippen und von den Engstellen werden durch Rachen, Mund und Nasenraum (sie bilden zusammen den sogenannten Vokaltrakt), die als akustisches Filter wirken, klanglich ver¨ andert. Wesentlich ist, dass sich mit der Bewegung der Artikulatoren (Zunge, Lippen, Kiefer und Gaumen¨ segel) die Ubertragungsfunktion und damit auch die Resonanzfrequenzen bzw. die Formanten (vergl. Abschnitt 1.4.5) dieses akustischen Filters verandern. So entstehen aus dem Signal von den Stimmlippen recht verschie¨
14
1. Grunds¨ atzliches zur Sprache
dene Kl¨ ange, n¨ amlich die Laute, insbesondere die stimmhaften. Auch die von den Luftturbulenzen herr¨ uhrenden Ger¨ ausche werden durch den Vokaltrakt klanglich geformt, wobei hier in erster Linie der Ort der Engstelle massgebend ist. Der Zusammenhang zwischen der Stellung der Artikulatoren und den Elementen der Lautsprache, also den Lauten, wird in Abschnitt 1.3.3 erl¨ autert.
1.3.3 Die Artikulation der Sprachlaute Die beiden folgenden Abschnitte charakterisieren die Laute der deutschen Sprache anhand der Stellung der Artikulatoren. Die Laute werden dazu in zwei grosse Gruppen unterteilt, die Vokale und die Konsonanten. Die Vokale Vokale sind Laute, bei denen die Stimmlippen im Kehlkopf schwingen und die Atemluft ungehindert durch den Mund bzw. durch Mund und Nase (bei nasalierten Vokalen) ausstr¨ omt. Die beweglichen Artikulatoren (Lippen, Zungenspitze, Zungenr¨ ucken etc.) d¨ urfen sich deshalb nur so verschieben, dass nirgends im Vokaltrakt zu enge Stellen auftreten. So darf auch der Zungenr¨ ucken eine gewisse Grenzlinie nicht u ¨ berschreiten. Die Klangfarbe des durch den Vokaltrakt produzierten Signals h¨ angt vor allem von der Stellung des Zungenr¨ uckens und der Lippen ab. Bez¨ uglich der Lippenstellung werden gerundete und ungerundete Vokale unterschieden:
ungerundet: [i I e E a @] gerundet: [y Y ø œ u U o O] Der Zusammenhang zwischen der Stellung des Zungenr¨ uckens und des produzierten Lautes wird durch das Vokalviereck in Abbildung 1.4 beschrieben. vorn
hinten
i (y)
(Ω)
e (ø)
e
3 (œ)
(o) tief
I (Y )
hoch
(u)
(c) a
Abbildung 1.4. Das Vokalviereck gem¨ ass [7] beschreibt grob den Zusammenhang zwi-
schen der Stellung des Zungenr¨ uckens und den Vokalen. Die Klammern bedeuten gerundete Laute. Das Zentrum des Vokalvierecks bedeutet die entspannte Mittellage, in welcher der sogenannte Schwa-Laut artikuliert wird.
1.4
Das menschliche Geh¨ or
15
kg
nasal
m
n
nJ
frikativ
fv
sz
lateral
l
vibriert
r
aspiriert
∫
çj
glottal
td
velar
pb
palatal
plosiv
dorsouvular
palatoalveolar
alveolar
labiodental
Art
bilabial
Ort
Die Konsonanten Konsonanten sind Laute, bei denen ausstr¨ omende Atemluft durch eine Verengung im Vokaltrakt behindert oder durch einen Verschluss w¨ ahrend einer gewissen Zeit gestoppt wird. Je nach Laut schwingen oder ruhen dabei die Stimmlippen. Im Deutschen werden die Konsonanten u ¨ blicherweise nach Artikulationsart und -ort gegliedert, was zu einer Tabelle f¨ uhrt, wie sie in Abbildung 1.5 dargestellt ist. Da die Affrikaten keine eigenst¨ andigen Laute sind, sondern durch enge Verbindung eines Verschlusslautes mit dem homorganen Reibelaut (homorgane Laute haben denselben Artikulationsort) entstehen, sind sie in dieser Tabelle nicht aufgef¨ uhrt.
x
R h
Abbildung 1.5. Die Konsonanten der deutschen Sprache (ohne Affrikaten) geordnet nach
Artikulationsort und -art gem¨ ass [7]
1.4 Das menschliche Geh¨ or Im Zusammenhang mit der Sprachverarbeitung ist die Anatomie des menschlichen Geh¨ ors nur von untergeordnetem Interesse, weil sich auf diesem Wege die sinnliche Wahrnehmung akustischer Ereignisse nur zu einem kleinen Teil erkl¨ aren l¨ asst. Nicht selten kommt es vor, dass aus der Anatomie gezogene Schl¨ usse der Perzeption widersprechen. Ein derartiges Ph¨ anomen ist beispielsweise, dass der Mensch die H¨ ohe eines Tons von 1000 Hz auf etwa 0,1 % genau h¨ ort, also viel genauer als aufgrund des Aufbaus des Innenohres zu schliessen w¨ are. Ebenso ist das gute Richtungsh¨ oren mit dem Aufbau des Ohres nicht erkl¨ arbar.
1.4
16
1. Grunds¨ atzliches zur Sprache
In diesem Abschnitt werden deshalb weder der physiologische Aufbau des Ohrs, noch Hypothesen u ¨ ber die Arbeitsweise des Gehirns behandelt. Vielmehr sollen ein paar f¨ ur die Sprachverarbeitung bedeutsame Geh¨ orph¨ anomene dargelegt werden, die sich u ¨ ber psychoakustische Experimente feststellen lassen.
1.4.1 Wahrnehmung der Schallintensit¨ at Schallintensit¨ at I und Schalldruck p sind physikalische Gr¨ ossen5 und damit messtechnisch erfassbar. Die Lautst¨ arke oder Lautheit bezeichnet hingegen eine subjektive Wahrnehmung, die u ¨ ber Messungen an Versuchspersonen in Beziehung zur Schallintensit¨ at gebracht werden kann. So l¨ asst sich beispielsweise feststellen, dass die wahrgenommene Lautheit von Sinust¨ onen stark frequenzabh¨ angig ist, wie Abbildung 1.6 zeigt.
Abbildung 1.6. Kurven gleicher Lautheit nach [32], wobei f¨ ur 1 kHz die Lautheit in Phon
so definiert ist, dass sie gleich der Schallintensit¨ at in dB ist. Die gestrichelte Kurve ist die mittlere Ruheh¨ orschwelle.
Diese Frequenzabh¨ angigkeit ist insbesondere in der N¨ ahe der sogenannten Ruheh¨ orschwelle (gestrichelte Kurve) ausgepr¨ agt. Die Ruheh¨ orschwelle gibt in Funktion der Frequenz die minimale Schallintensit¨ at an, die das Ohr noch zu h¨ oren vermag.6 5
Der Zusammenhang zwischen Schallintensit¨ at und Schalldruck ist f¨ ur eine sinusf¨ ormige Schallwelle gegeben als: I = p2eff /(c), wobei die spezifische Dichte des Gases (Luft: 1.293 kg/m3 ) und c die Schallgeschwindigkeit ist. 6
Interessanterweise wird in ¨ alteren Publikationen die Ruheh¨ orschwelle bei 1 kHz at mit einem Schalldruck von peff = 2 · 10−5 N/m2 angegeben, was der Schallintensit¨ orschwelle bei 1 kHz ermittelte von etwa 10−12 W/m2 entspricht. Dieser als Ruheh¨
1.4
Das menschliche Geh¨ or
17
Wichtig zu erw¨ ahnen ist auch, dass das Geh¨ or Schallintensit¨ aten relativ wahrnimmt und zwar u ¨ ber einen enorm grossen Bereich. Dieser erstreckt sich von der Ruheh¨ orschwelle bis zur Schmerzgrenze (ca. 130 Phon) u ¨ ber gut sechs Gr¨ ossenordnungen.
1.4.2 Periodizit¨ at und Tonh¨ ohe Das menschliche Ohr h¨ ort die Frequenz von Sinusschwingungen in einem Bereich von etwa 20 Hz bis 18 kHz als Tonh¨ ohe, wobei mit zunehmendem Alter ¨ die obere Grenze etwas abnimmt. Ahnlich wie im Fall der Lautheit nimmt das Ohr auch die relative Tonh¨ ohe wahr. So h¨ ort beispielsweise das Ohr dann einen positiven Halbtonschritt zwischen zwei T¨ onen, wenn das Frequenzveragt. h¨ altnis f2 /f1 = 21/12 betr¨ Die meisten nat¨ urlichen Schallquellen geben jedoch keine reinen T¨ one (Sinusschwingungen) ab, auch der menschliche Sprechapparat nicht. Mit den periodisch schwingenden Stimmlippen als Schallquelle entsteht aus dem Vokaltrakt ein periodisches Signal, aus dem das Ohr eindeutig eine Tonh¨ ohe wahrnimmt, die als Grundfrequenz F0 bezeichnet wird und umgekehrt proportional zur Periode T0 ist. Diese Formulierung scheint auf den ersten Blick u ¨ bertrieben kompliziert zu sein. Sie tr¨ agt jedoch der Tatsache Rechnung, dass das Ohr aus einem Signal mit harmonischen Komponenten nicht alle diese Komponenten mit ihren Tonh¨ ohen h¨ ort, sondern einen einzigen Klang mit einer Tonh¨ ohe, die gleich der Frequenz der Grundwelle ist. Wird jedoch die Grundwelle aus dem Signal ausgefiltert, dann h¨ ort das Ohr trotzdem noch die urspr¨ ungliche Tonh¨ ohe. Dies zeigt sich beispielsweise beim Telefon, wo ja nur die Frequenzkomponenten zwischen 300 Hz und 3400 Hz u annerstimmen gehen ¨ bertragen werden. Bei M¨ somit in der Regel die Grundwelle und die erste Oberwelle verloren. Trotzdem t¨ ont die Stimme durch das Telefon nicht ein oder zwei Oktaven h¨ oher als beim direkten Hinh¨ oren. Vielfach wird deshalb gesagt, dass das Ohr die reziproke Periode als Tonh¨ ohe wahrnimmt.7 Aus einem oberwellenhaltigen Signal h¨ ort das Ohr nebst der Tonh¨ ohe auch eine Klangfarbe, welche durch die Amplitudenverh¨ altnisse der Frequenzkomponenten bestimmt wird. Oberwellenhaltige Schallsignale werden deshalb auch als Kl¨ ange bezeichnet. Schalldruck wurde deshalb als 0 dB definiert. Heute scheint sich die Ruheh¨ orschwelle f¨ ur Versuchspersonen unter 25 Jahren um etwa 3 dB erh¨ oht zu haben, wahrscheinlich infolge der allgemeinen akustischen Reiz¨ uberflutung. 7 H¨ aufig ist dieses Modell der Tonh¨ ohenwahrnehmung zweckm¨ assig, insbesondere auch in der Sprachverarbeitung. Es darf jedoch nicht mit der wirklichen Tonh¨ ohenwahrnehmung verwechselt werden, die nach wie vor unbekannt ist, wie sich mit Signalbeispielen zeigen l¨ asst.
18
1. Grunds¨ atzliches zur Sprache
Periodische und rauschartige Teile von Sprachsignalen unterscheiden sich im Wesentlichen durch die Aktivit¨ at der Stimmlippen und werden deshalb stimmhaft bzw. stimmlos genannt. Signale, f¨ ur welche das Ohr keine Tonh¨ ohe feststellen kann, sind rauschartig. Dies trifft z.B. f¨ ur das Sprachsignal des Lautes [s] zu, beim dem die Stimmlippen inaktiv sind.
1.4.3 Die Phasenwahrnehmung Stark vereinfachend wird das menschliche Geh¨ or oft als phasentaub bezeichnet. Richtig ist, dass beliebige, frequenzabh¨ angige Laufzeitver¨ anderungen im Bereich von wenigen Millisekunden (Kurzzeitphase, wie sie mit einem nicht allzu langen Allpassfilter erzeugt wird) nur sehr schlecht h¨ orbar sind. Gr¨ ossere Phasenver¨ anderungen werden aber als Hall oder sogar als Echo wahrgenommen. Eine wichtige Funktion hat die Phase beim binauralen H¨ oren, n¨ amlich in Bezug auf die Schallortung. Insbesondere der Laufzeitenunterschied des Schalls von der Quelle zu den beiden Ohren wird im Gehirn ausgewertet um die Einfallsrichtung des Schalls zu detektieren. Dementsprechend kann durch Verandern der Phase eines oder beider H¨ orsignale die Ortung der Schallquelle ¨ erschwert, verunm¨ oglicht oder sogar irregef¨ uhrt werden, je nach Art der Phasenver¨ anderung. 1.4.4 Der Verdeckungseffekt Eine im Zusammenhang mit der Sprachverarbeitung wichtige Eigenschaft des menschlichen Geh¨ ors ist der Maskier- oder Verdeckungseffekt. Er besteht qualitativ darin, dass eine Schallkomponente mit gr¨ osserer Leistung eine andere mit kleinerer Leistung verdeckt, also unh¨ orbar macht, wobei der Maskierungsbereich vor allem von der Frequenz und der Intensit¨ at des maskierenden Signals abh¨ angt. Messtechnisch kann der Maskierungsbereich mit verschiedenen Methoden und Signalarten erfasst werden, wobei die Resultate leicht unterschiedlich ausfallen. In [32] ist die als Mith¨ orschwelle bezeichnete Grenze des Maskierungsbereiches f¨ ur Schmalbandrauschen mit der Mittenfrequenz fm bestimmt worden. Die Mith¨ orschwelle gibt die Intensit¨ at eines Sinussignals in Funktion der Frequenz an, das durch das Maskierungsrauschen gerade noch verdeckt wird. In Abbildung 1.7 sind die Mith¨ orschwellen f¨ ur Schmalbandrauschen (als maskierendes Signal) mit verschiedenen Mittenfrequenzen dargestellt. Abbildung 1.8 zeigt die gemessenen Mith¨ orschwellen, wenn Schmalbandrauschen gleicher Mittenfrequenz aber mit verschiedener Intensit¨ at als maskierendes Signal verwendet wird.
1.4
Das menschliche Geh¨ or
19
Abbildung 1.7. Mith¨ orschwellen f¨ ur Schmalbandrauschen mit den Mittenfrequenzen
0.25 kHz, 1 kHz und 4 kHz (nach [32])
Abbildung 1.8. Mith¨ orschwellen f¨ ur Schmalbandrauschen mit der Mittenfrequenz 1 kHz
und verschiedenen Schallpegeln (nach [32])
1.4.5 Wahrnehmung der Sprachlaute In der Phonetik werden die Laute nicht nur anhand artikulatorischer Kriterien eingeteilt, sondern vor allem auch aufgrund akustischer Merkmale. So ist es beispielsweise gebr¨ auchlich, Vokale mittels der Formanten zu beschreiben. Als Formanten werden die lokalen Maxima des Spektrums des Sprachsignals bezeichnet, welche von den Resonanzen des Vokaltraktes herr¨ uhren. Da der Vokaltrakt eine komplizierte Form aufweist, treten beim Artikulieren eines Lautes gew¨ ohnlich mehrere Formanten gleichzeitig auf, die als F1 , F2 , F3 etc. bezeichnet werden. Ein Formant wird mit den Parametern Mittenfrequenz (oder Formantfrequenz), Bandbreite und Amplitude beschrieben. Die ur die Formantfrequenzen Bezeichnungen F1 , F2 , F3 etc. werden oft auch f¨
20
1. Grunds¨ atzliches zur Sprache
Abbildung 1.9. Durchschnittswerte der zwei untersten Formanten deutscher Vokale (aus
[16], Seite 50)
verwendet. F¨ ur die Formantfrequenzen eines Lautes gilt: F1 < F2 < F3 etc. Der tiefste Formant oder die tiefste Mittenfrequenz ist also stets F1 . Die Mittenfrequenz und die Bandbreite der Formanten sind von der Stellung der Artikulatoren abh¨ angig. Wie in Abschnitt 1.3.3 erl¨ autert, bestimmt die Stellung der Artikulatoren den gesprochenen Laut und somit gibt es auch einen Zusammenhang zwischen den Lauten und den Formantfrequenzen. Dieser Zusammenhang ist f¨ ur die beiden tiefsten Formanten der deutschen Vokale in Abbildung 1.9 veranschaulicht. Da im Vokaltrakt nur bei den Vokalen ausgepr¨ agte Resonanzen auftreten, wird der Begriff der Formanten nur auf die Vokale angewandt.
1.5
Verarbeitung nat¨ urlicher Sprache
21
1.5 Verarbeitung nat¨ urlicher Sprache Die Tatsache, dass der Mensch Lautsprache ohne nennenswerte Anstrengung produzieren und verstehen kann, verleitet zur Annahme, dass es sich dabei um eine einfache Aufgabe handle, die auch von einem Computer leicht zu bew¨ altigen sein m¨ usse. Vergleicht man jedoch beispielsweise die heute mit modernsten Mitteln erreichbare Spracherkennungsleistung mit den menschlichen F¨ ahigkeiten, dann stellt sich das bisher Erreichte als noch recht bescheiden heraus. Ende der sechziger Jahre herrschte die euphorische Ansicht vor, dass im Hinblick auf die rasante Entwicklung der Computertechnik das Spracherkennungsproblem in wenigen Jahren gel¨ ost sein werde. Heute wird die Situation allgemein realistischer eingesch¨ atzt. Viele Forscher sind der Ansicht, dass trotz grosser Forschungsanstrengungen die maschinelle Spracherkennung auch in 20 Jahren noch nicht den Stand der menschlichen Sprachwahrnehmungsf¨ ahigkeit erreicht haben wird. Ein wesentlicher Grund daf¨ ur ist sicher, dass die Handhabung nat¨ urlicher ahrend heuSprache der grossen Komplexit¨ at wegen enorm schwierig ist.8 W¨ te die maschinelle Beherrschung des Wortschatzes einer nat¨ urlichen Sprache9 halbwegs gelingt, ist ein Computer nicht in der Lage, f¨ ur beliebige S¨ atze zu entscheiden, ob sie syntaktisch korrekt sind oder nicht. Noch viel schwieriger wird es beim Entscheid u atzen, die sich je nach ¨ ber die Bedeutung von S¨ Situation stark a ndern kann. Genau dies macht der Mensch jedoch beim Ver¨ stehen von Sprache: er untersucht fortw¨ ahrend, ob das Geh¨ orte Sinn macht und kann damit z.B. sehr effizient ¨ ahnlich klingende W¨ orter mit unterschiedlicher Bedeutung gut auseinander halten. Eine weitere Schwierigkeit liegt darin, dass die beiden Erscheinungsformen nat¨ urlicher Sprachen sehr unterschiedlich sind (siehe Abschnitt 1.1.2) und folglich mit v¨ ollig anderen Mitteln und Methoden beschrieben bzw. verarbeitet werden m¨ ussen. Deshalb sind viele Aufgaben der Sprachverarbeitung, insbesondere auch die Sprachsynthese und die Spracherkennung nicht rein linguistische Probleme. Sie sind mit verschiedenen Wissensbereichen verkn¨ upft (vergl. Abbildung 1.10). 8 Im Gegensatz zu nat¨ urlichen Sprachen sind formale Sprachen (z.B. Programmiersprachen) relativ kompakt und insbesondere genau definiert. Die maschinelle Verarbeitung ist deshalb vergleichsweise unproblematisch. Es kann beispielsweise einfach entschieden werden, ob ein Programm syntaktisch korrekt ist oder nicht. 9
Die Linguistik bezeichnet den Wortschatz der deutschen Sprache zwar als nicht begrenzt, weil durch Bildung von Komposita stets neue Nomen, Verben und Adjektive gebildet werden k¨ onnen. Im mathematischen Sinne ist der Wortschatz aber begrenzt, weil W¨ orter praktisch nicht beliebig lang sein k¨ onnen.
1.5
22
1. Grunds¨ atzliches zur Sprache
Linguistik Akustik
Informatik
Sprachverarbeitung
Physiologie
Statistik Signalverarbeitung
Abbildung 1.10. Die Sprachverarbeitung st¨ utzt sich auf Wissen und Methoden verschiedener Disziplinen: sie ist interdisziplin¨ ar.
In der Sprachverarbeitung ist es deshalb erforderlich, sich mit Wissen aus recht verschiedenen Disziplinen zu besch¨ aftigen, wobei hier selbstverst¨ andlich nur ein paar Schwerpunkte behandelt werden k¨ onnen, die im Zusammenhang mit der Spracherkennung und der Sprachsynthese wichtig sind.
Kapitel 2 ¨ Ubersicht u ¨ber die Sprachverarbeitung
2
2
2 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.8.1 2.8.2
¨ Ubersicht uber die Sprachverarbeitung ¨ Was in einem Sprachsignal steckt........................... Teilgebiete der Sprachverarbeitung ......................... Sprachsynthese.................................................. Spracherkennung ............................................... Sprecheridentifikation.......................................... Sprachidentifikation ............................................ Sprechertransformation ....................................... Sprachsignalcodierung ......................................... Signalformcodierung ........................................... Modellierung von Sprachsignalen ...........................
25 26 27 28 29 29 30 30 32 35
¨ 2 Ubersicht u ¨ber die Sprachverarbeitung 2.1
2.1 Was in einem Sprachsignal steckt Der wichtigste Gegenstand der Sprachverarbeitung ist das Sprachsignal. Es entsteht, wenn eine Person etwas spricht und die produzierten Schallwellen u ¨ ber einen elektroakustischen Wandler (Mikrophon) in ein elektrisches Signal umgewandelt werden. Das Sprachsignal wird also durch das, was die Person sagt (Aussage), gepr¨ agt. Das Sprechen kann man im Sinne eines Prozesses auffassen, wobei die Eingabe des Sprechprozesses die Aussage ist und die Ausgabe das Sprachsignal. Wie in Abbildung 2.1 dargestellt, wirkt jedoch nicht nur die Aussage auf den Sprechprozess, sondern auch die Stimme der sprechenden Person. So k¨ onnen beispielsweise der Dialekt, die Sprechgewohnheiten, die Physiologie des Vokaltraktes, aber auch der momentane emotionale Zustand und eventuell sogar die Gesundheit einen starken Einfluss haben. Auch Umgebungsger¨ ausche k¨ onnen auf den Sprechprozess wirken, z.B. indem die Person lauter spricht, wenn es l¨ armig ist. Da ein Zuh¨ orer sein Ohr nicht beim Mund der sprechenden Person hat, hat in ¨ der Regel die Ubertragung der Schallwellen (Raumakustik) bzw. des elektrischen Signals (Mikrophoncharakteristik, Signalcodierung und -kompression) einen Einfluss auf das schlussendlich vorhandene Sprachsignal. Man kann also sagen, dass sich all diese Einfl¨ usse im Sprachsignal niederschlagen. Dies verursacht der Sprachverarbeitung erhebliche Schwierigkeiten. Bei der Spracherkennung interessiert beispielsweise nur die im Sprachsignal Gesundheit Störgeräusche
Emotionen
SPRECHPROZESS
Aussage
Physiologie Sprechgewohnheiten
Signalcodierung & -kompression
Signalübertragung
Raumakustik
Sprachsignal
Wandlercharakteristik
Dialekt
Abbildung 2.1. Nicht nur die zu machende Aussage steuert den Sprechprozess. Auch viele
Eigenheiten der sprechenden Person (dunkelgrau) wirken auf diesen Prozess. Zudem wird ¨ das Sprachsignal von der Ubertragung (hellgrau) beeinflusst.
26
¨ 2. Ubersicht u ¨ ber die Sprachverarbeitung
steckende Aussage. Alle anderen Einfl¨ usse sind dabei bloss st¨ orend und erschweren die Aufgabe der Spracherkennung betr¨ achtlich (vergl. Kapitel 10). Die sprecherspezifischen Komponenten im Sprachsignal sind jedoch dann wichtig, wenn anhand des Sprachsignals die sprechende Person identifiziert werden soll. Dazu sind etwa die Einfl¨ usse des Dialekts, der Sprechgewohnheiten und der Physiologie auf das Sprachsignal nutzbar, weil sie f¨ ur eine Person einigermassen konstant sind. Die emotionalen und gesundheitlichen Effekte, obwohl sie auch von der sprechenden Person herr¨ uhren, sind nicht konstant und deshalb bei der Sprecheridentifikation eher st¨ orend.
2.2
2.2 Teilgebiete der Sprachverarbeitung Die maschinelle Verarbeitung nat¨ urlicher Sprache umfasst sehr unterschiedliche Bereiche. Die Verarbeitung kann sich ausschliesslich auf die geschriebene Form der Sprache beziehen, wie beispielsweise bei der automatischen Textu ¨ bersetzung, oder sie kann nur die akustische Form der Sprache betreffen, wie dies bei der Sprachsignalcodierung der Fall ist. Abbildung 2.2 zeigt eine ¨ Ubersicht u ¨ ber die verschiedenen Sprachverarbeitungsprozesse, welche entweder ein Sprachdokument in eine andere Form u uhren oder daraus den ¨ berf¨ Sprecher oder die Sprache bestimmen. In der Abbildung nicht enthalten ist Sprachverarbeitung im Sinne der graphischen Gestaltung von Texten. Übersetzung
TEXT Sprache A Sprachsynthese
Spracherkennung
SPRACHSIGNAL Sprache A Sprecher X
Dolmetschen
Sprecher- & Sprachidentifikation Sprecher oder Sprache
TEXT Sprache B
SPRACHSIGNAL Sprache B Sprecher X
Sprechertransformation Sprachsignalcodierung
codiertes Sprachsignal
SPRACHSIGNAL Sprache A Sprecher Y
Abbildung 2.2. Zusammenstellung der Erscheinungsformen eines sprachlichen Dokumen-
tes und der Verarbeitungsprozesse, welche eine Form in eine andere u uhren. Die grau ¨berf¨ eingetragenen Prozesse werden hier nicht behandelt.
2.3
Sprachsynthese
27
In diesem Buch interessiert in erster Linie der Zusammenhang zwischen der textlichen und der akustischen Erscheinungsform der Sprache. Es werden deshalb vorwiegend die Spracherkennung und die -synthese behandelt. In diesem Kapitel werden zus¨ atzlich noch kurz die Bereiche Sprecheridentifikation, Sprachidentifikation, Sprechertransformation und Sprachcodierung gestreift. ¨ Auf das Ubersetzen von geschriebener und gesprochener Sprache (letzteres ist unter der Bezeichnung Dolmetschen bekannt) wird nicht eingegangen.
2.3 Sprachsynthese Das Ziel der Sprachsynthese ist, eine Aussage, die in einer symbolischen Notation vorliegt, in ein Sprachsignal umzusetzen. Mit symbolischer Notation ist hier beispielsweise orthographischer Text gemeint, im Unterschied etwa zu physikalischen Merkmalen des Sprachsignals. Je nach Art der Eingabe wird bei der Sprachsynthese zwischen zwei Arten von Systemen unterschieden: a) Hat die Eingabe die Form eines orthographischen Textes, dann spricht man von TTS-Synthese (engl. text-to-speech synthesis). Dies impliziert, dass die Synthese nebst der eigentlichen Sprachsignalproduktion auch die Aussprache der W¨ orter, die Akzentst¨ arke der Silben uvm. bestimmen muss. Dazu ist eine linguistische Analyse des Eingabetextes n¨ otig. Die TTSSynthese wird in den Kapiteln 7 bis 9 eingehend behandelt. b) Sind die Eingabedaten hierarchisch strukturiert, z.B. als Syntaxbaum (formale Beschreibung des Satzaufbaus), dann wird von CTS-Synthese (engl. concept-to-speech synthesis) gesprochen. CTS-Synthese kommt in Systemen zum Einsatz, welche die auszugebenden Meldungen selbst¨ andig generieren, also eine Komponente haben, welche Information in eine nat¨ urlichsprachliche Form umsetzt und u ur n¨ otige linguistische ¨ ber das daf¨ Wissen verf¨ ugt. Der syntaktische Aufbau dieser Meldungen ist somit vor der eigentlichen Sprachsynthese bekannt und kann dem Synthesesystem u ¨ bergeben werden. Von der TTS- und der CTS-Synthese ist die Sprachausgabe zu unterscheiden. Es werden Sprachsignale ausgegeben, die vorg¨ angig von einem Sprecher gesprochen und aufgezeichnet worden sind. Der Vorrat an m¨ oglichen akustischen Meldungen ist damit automatisch auf die aufgenommenen Sprachsignale begrenzt, im Gegensatz zur Sprachsynthese, die grunds¨ atzlich jeden Text in ein Sprachsignal umsetzen kann.
2.3
28
2.4
¨ 2. Ubersicht u ¨ ber die Sprachverarbeitung
2.4 Spracherkennung In Abbildung 2.2 wird das Umsetzen eines Sprachsignals in eine textliche Form als Spracherkennung bezeichnet. Es ist auch heute noch praktisch unm¨ oglich, ein Spracherkennungssystem zu verwirklichen, welches das Spracherkennungsproblem allgemein l¨ ost. Spracherkennungssysteme werden deshalb stets f¨ ur spezielle Anwendungsf¨ alle oder Szenarien konzipiert. Spezialf¨ alle, f¨ ur welche das Spracherkennungsproblem einfacher zu l¨ osen ist, sind beispielsweise die folgenden: Spracherkennung nur f¨ ur einzeln gesprochene W¨ orter Spracherkennung f¨ ur kleines Vokabular sprecherabh¨ angige Spracherkennung Spracherkennung nur f¨ ur Telefonsignale Mit dieser Spezialisierung erreicht man zweierlei: Erstens zeigt sich, dass bessere Resultate erreicht werden k¨ onnen (weniger Erkennungsfehler) und zweitens sind diese Speziall¨ osungen kompakter (weniger Rechenleistung und geringerer Speicheraufwand erforderlich) als eine allgemeinere L¨ osung und damit wirtschaftlicher. Dies trifft jedoch nur dann zu, wenn die spezialisierte Spracherkennung genau auf die Erfordernisse der Anwendung abgestimmt wird. Je nach zu l¨ osendem Spracherkennungsproblem k¨ onnen unterschiedliche Ans¨ atze angewendet werden. Die beiden wichtigsten sind: a) Mustervergleich: Diese Art von Spracherkennung wird praktisch nur zum Erkennen einzeln gesprochener W¨ orter oder kurzer Ausdr¨ ucke verwendet. Dabei wird das Sprachsignal bzw. eine daraus berechnete Merkmalssequenz mit abgespeicherten Mustern der zu erkennenden W¨ orter und Ausdr¨ ucke verglichen. Es gilt dasjenige Wort als erkannt, dessen Muster am ¨ ahnlichsten ist. b) Statistische Spracherkennung: Bei den heute erfolgreichsten Spracherkennungsmethoden werden statistische Beschreibungen f¨ ur Laute oder W¨ orter eingesetzt. Die Erkennung von Lauten oder kurzen W¨ ortern ist jedoch recht fehleranf¨ allig. Um die Erkennungsleistung in einem konkreten Anwendungsfall zu erh¨ ohen, wird deshalb eine Statistik verwendet, die angibt, mit welcher Wahrscheinlichkeit welche W¨ orter vorkommen oder einander folgen k¨ onnen. Auf die Probleme der Spracherkennung und die wichtigsten Verfahren zur L¨ osung dieser Probleme wird in den Kapiteln 10 bis 13 ausf¨ uhrlich eingegangen.
2.6
Sprachidentifikation
29
2.5 Sprecheridentifikation
2.5
Das Problem, aus einem Sprachsignal die Identit¨ at des Sprechers zu ermitteln, wird als Sprecheridentifikation oder auch als Sprechererkennung bezeichnet. Die Aufgabe besteht konkret darin, eine Sprachprobe (Testsignal) einer von N Personen zuzuordnen, von denen Referenzdaten vorhanden sein m¨ ussen. Oft geht es auch darum, f¨ ur zwei Sprachsignale (Referenz- und Testsignal) zu entscheiden, ob sie von derselben Person gesprochen worden sind. Dies wird als Sprecherverifikation bezeichnet. Die Sprecherverifikation kommt haupts¨ achlich in Zulassungssystemen zur Anwendung, wo die Sprache als zus¨ atzliches Sicherheitselement eingesetzt wird. Ein Benutzer muss z.B. zuerst seine Codenummer eintippen, das System gibt die Anweisung, ein bestimmtes Wort zu sprechen, und vergleicht dann das Sprachsignal mit dem zugeh¨ origen Referenzsprachsignal. Es gibt textabh¨ angige und textunabh¨ angige Verfahren. Bei der ersten Art muss f¨ ur die Referenz- und die Testaufnahme derselbe Text gesprochen werden, f¨ ur letztere ist es bloss n¨ otig, dass die Signale gen¨ ugend lang sind, damit die daraus gewonnenen statistischen Merkmale aussagekr¨ aftig sind. Hinsichtlich der angewendeten Methoden gibt es zwischen der Sprecheridentifikation und der Spracherkennung viele Parallelen. So kann beispielsweise bei der textabh¨ angigen Sprecheridentifikation a ¨hnlich wie bei der Erkennung einzeln gesprochener W¨ orter ein Mustervergleich eingesetzt werden (siehe Abschnitt 2.4). Bei kooperativem Verhalten, d.h. die Person ist daran interessiert, bei der Testaufnahme m¨ oglichst gleichartig zu sprechen wie bei der Referenzaufnahme, wird heute bereits eine Entscheidungssicherheit erreicht, welche die diesbez¨ uglichen menschlichen F¨ ahigkeiten klar u ¨ bertrifft.
2.6 Sprachidentifikation Sprachidentifikation kann grunds¨ atzlich auf Texte oder auf Sprachsignale angewendet werden, wobei selbstverst¨ andlich methodisch verschieden vorgegangen wird. Wir wollen uns hier auf die Sprachidentifikation von gesprochener Sprache beschr¨ anken. Die Sprachidentifikation hat die Aufgabe, f¨ ur ein gegebenes Sprachsignal zu entscheiden, in welcher von N Sprachen L1 , L2 , . . . , LN gesprochen wird. In der Regel wird dabei nach einer der folgenden Strategien vorgegangen: Suche nach sprachspezifischen W¨ ortern: Im Sprachsignal wird nach h¨ aufigen W¨ ortern wie Artikel, Pronomen, Pr¨ apositionen der Sprachen L1 bis LN gesucht (mit einem Spracherkenner). Im Gegensatz zu Texten, bei denen die Wortgrenzen stets mit Leerzeichen markiert sind und damit klar
2.6
30
¨ 2. Ubersicht u ¨ ber die Sprachverarbeitung
ist, von wo bis wo ein Wort reicht, sind in Sprachsignalen die Wortgrenzen in der Regel nicht mit Pausen markiert. Ein Spracherkenner verwechselt deshalb kurze W¨ orter h¨ aufig mit Teilen l¨ angerer W¨ orter, auch sprach¨ ubergreifend. Die geschickte Wahl der W¨ orter, welche f¨ ur die Suche eingesetzt werden, ist somit Voraussetzung daf¨ ur, dass dieser Ansatz funktioniert. Untersuchen der lautlichen Zusammensetzung: Nicht nur das Lautinventar, sondern auch die H¨ aufigkeit gewisser Lautfolgen ist sprachspezifisch. Beides l¨ asst sich mit statistischen Modellen (z.B. mit HMM bzw. N-Grams; siehe Abschnitte 12.6 und 13.2.4) beschreiben. F¨ ur jede der N zu unterscheidenden Sprachen k¨ onnen die Modelle zur Identifikation der Sprache in einer ¨ ahnlichen Art eingesetzt werden wie beim statistischen Ansatz der Spracherkennung.
2.7
2.7 Sprechertransformation Das Ziel der Sprechertransformation ist, ein Sprachsignal, das von einem Sprecher X gesprochen worden ist, so zu ver¨ andern, dass es als die Stimme eines Sprechers Y wahrgenommen wird. Je nach Anwendungsszenario kann die Zielstimme in der Form von Sprachsignalen einer realen Person vorgegeben sein oder sie wird durch gewisse abstrakten Parameter spezifiziert, z.B. Frauenstimme, tiefere Lage, flottes Sprechtempo, ausgepr¨ agte Betonungen. In jedem Fall wird gefordert, dass die transformierte Stimme nat¨ urlich klingt. Die Sprechertransformation kann auf die Ver¨ anderung der Prosodie abzielen und/oder die lautlichen Eigenschaften des Sprachsignals modifizieren.
2.8
2.8 Sprachsignalcodierung Das Ziel bei der Codierung digitaler Daten ist, die Information kompakt darzustellen, die Daten gegen Fehler zu sch¨ utzen, oder zu verhindern, dass unberechtigterweise auf eine Information zugegriffen werden kann. Dementsprechend werden in der Codierung drei Gebiete unterschieden: a) Die Quellencodierung hat zum Ziel, Daten in eine kompaktere Darstellung umzuformen, damit diese effizienter gespeichert oder u ¨bertragen werden k¨ onnen. Nach dem Lesen der gespeicherten Daten, bzw. nach dem Empfangen der u ussen diese decodiert, also in ihre ¨bertragenen Daten m¨ urspr¨ ungliche Form gebracht werden. Es gibt verlustlose Codierungen, welche die Daten nur so stark komprimieren, dass sie bei der Decodierung wieder exakt rekonstruiert werden k¨ onnen. Dies wird als Redundanzreduktion bezeichnet. Bei der Quellen-
2.8
Sprachsignalcodierung
31
codierung digitaler Sprachsignale sind jedoch diese Codierungen i.a. nicht besonders interessant, weil die erreichbare Datenreduktion relativ gering ist. Interessanter sind Codierungen, die bei der Decodierung zwar nicht mehr das identische Sprachsignal liefern, aber eines, das vom menschlichen Geh¨ or als (fast) gleich wahrgenommen wird. Dazu geh¨ oren die Signalformcodierung und die Sprachsignalmodellierung, auf die in den Abschnitten 2.8.1 und 2.8.2 n¨ aher eingegangen wird. b) Die Kanalcodierung bringt digitale Daten in ein Format, das sich f¨ ur ¨ einen Ubertragungskanal oder ein Speichermedium eignet. In der Regel ist dieses Format so ausgelegt, dass bei der Decodierung festgestellt werden ¨ kann, ob die Daten nach der Ubertragung richtig empfangen bzw. korrekt vom Speichermedium gelesen worden sind. Eine sehr verbreitete Kanalcodierung ist die Parit¨ at. Dabei wird f¨ ur je ein Datenwort, meistens 7 oder 8 Bits, ein zus¨ atzliches Bit u ¨ bertragen, das angibt, ob die Quersumme gerade oder ungerade ist (even or odd parity). Damit k¨ onnen alle Ein-Bit-Fehler und 50 % der Mehrbitfehler detektiert, jedoch nicht korrigiert werden. Um mehr falsche Bits detektieren oder sogar korrigieren zu k¨ onnen, m¨ ussen kompliziertere Codierungen angewandt werden. Grunds¨ atzlich gilt: Je mehr Fehler detektierbar oder korrigierbar sein sollen, umso mehr Redundanz muss den Daten zugef¨ ugt werden, wodurch sich das zu u andlich ver¨ bertragende Datenvolumen selbstverst¨ ¨ gr¨ ossert, also die Nettodatenrate bei der Ubertragung sinkt. c) Die Datenchiffrierung soll den unberechtigten Zugriff auf Daten verhindern. Dies wird beispielsweise dadurch erreicht, dass zu den Daten bit-
uncodierte Daten
1 1 0 0 1 0 0 0 1 0 1 1 1
Zufallsfolge
1 0 0 1 1 1 0 0 1 1 1 1 0
codierte Daten
0 1 0 1 0 1 0 0 0 1 0 0 1
Zufallsfolge
1 0 0 1 1 1 0 0 1 1 1 1 0
decodierte Daten
1 1 0 0 1 0 0 0 1 0 1 1 1
Chiffrierung
Dechiffrierung
Abbildung 2.3. Eine digitale Nachricht kann durch bit-weise Addition (XOR-Funktion)
mit einer Zufallsfolge chiffriert werden. Durch nochmaliges bit-weises Addieren derselben Zufallsfolge wird die Nachricht dechiffriert.
¨ 2. Ubersicht u ¨ ber die Sprachverarbeitung
32
weise eine Zufallsfolge addiert wird, wie in Abbildung 2.3 dargestellt ist. Um die Daten zu entschl¨ usseln, wird dieselbe Operation auf die codierten Daten angewendet. Nur wer diese Zufallsfolge kennt oder erzeugen kann, also den Schl¨ ussel besitzt, kann die chiffrierte Nachricht decodieren. Die Sicherheit der Chiffrierung h¨ angt im Verfahren von Abbildung 2.3 nur von der Beschaffenheit der Zufallsfolge ab (mehr u ¨ ber Verfahren zur Chiffrierung und deren Sicherheit ist beispielsweise in [1] zu finden). In der Regel wird nur bei der Quellencodierung ber¨ ucksichtigt, dass es sich bei den zu codierenden Daten um Sprachsignale handelt. Es wird im Folgenden deshalb nur auf diesen Bereich noch etwas weiter eingegangen.
2.8.1 Signalformcodierung Mit der Signalformcodierung wird versucht, die Datenmenge eines digitalisierten Sprachsignals zu reduzieren, indem der zeitliche Verlauf des Sprachsignals so approximiert wird, dass zwar weniger Bits f¨ ur das approximierte Signal ben¨ otigt werden, aber der Approximationsfehler vom menschlichen Geh¨ or m¨ oglichst wenig wahrgenommen wird. Die Reduktion von Daten impliziert, dass eine Anfangsdatenmenge vorhanden ist, zu der die reduzierte Menge in Bezug gesetzt wird. Um diese Mengenangaben von der Dauer des Sprachsignals unabh¨ angig zu machen, wird gew¨ ohnlich mit Daten pro Signaldauer, also mit Bit/sec operiert und daf¨ ur die Bezeichnung Datenrate verwendet. Als Referenzdatenrate dient im Folgenden der Wert von 96 kBit/sec. Diese Datenrate erh¨ alt man beim Digitalisieren eines Signals mit einer Abtastrate von 8 kHz und einer Amplitudenaufl¨ osung von 12 Bit (dies entspricht einem ganzzahligen Wertebereich von -2048 bis +2047), wie es in Abbildung 2.4 dargestellt ist. Die Abtastrate von 8 kHz ist in der Telefonie u ¨ blich, und bei der Amplitudenquantisierung mit 12 Bit ist der Quantisierungsfehler f¨ ur Sprachsignale so klein, dass er nicht wahrgenommen wird, d.h. er wird durch das Sprachsignal verdeckt (vergl. Abschnitt 1.4.4). 2048
0
−2048
0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
Zeit [s]
Abbildung 2.4. Ausschnitt aus einem Sprachsignal mit 12-Bit-Au߬ osung. Der Ausschnitt
umfasst die W¨ orter “Dies ist die Modulationsleitung”.
2.8
Sprachsignalcodierung
33
2.8.1.1 Logarithmischer Kompander Beim Quantisieren wird jeder Signalabtastwert auf die n¨ achste Quantisierungsstufe gerundet. Der Betrag des dabei gemachten Quantisierungsfehlers ist maximal ein halbes Quantisierungsintervall. F¨ ur Signale, deren Amplitude viel gr¨ osser ist als das Quantisierungsintervall, ist der Quantisierungsfehler statistisch nur sehr schwach vom Sprachsignal abh¨ angig. Der Quantisierungsfehler ist in diesem Fall also ein rauschartiges Signal, das auch vom Geh¨ or als dem Originalsignal u ¨ berlagertes Rauschen wahrgenommen wird. Bei gleichf¨ ormiger oder linearer Quantisierung, bei der die Quantisierungsintervalle Q u ¨ ber den ganzen Wertebereich gleich gross sind, ist der Quantisierungsfehler ein station¨ ares Rauschsignal, dessen Abtastwerte im Bereich [−Q/2 . . .+Q/2] gleichverteilt sind (siehe oberer Teil von Abbildung 2.5). Die Leistung dieses Rauschsignals ist also zeitlich konstant. Das lokale Verh¨ altnis zwischen Signal- und Rauschleistung (SNR: signal-to-noise ratio) ist somit proportional zur momentanen Signalleistung. F¨ ur die H¨ orbarkeit des Quantisierungsfehlers ist das SNR massgebend. Das Quantisierungsrauschen ist deshalb bei linearer Quantisierung an leisen Stellen des Sprachsignals und in den Sprechpausen besser zu h¨ oren als an den lauten Stellen. F¨ ur eine geh¨ orm¨ assig optimale Quantisierung mit minimaler Datenrate ist es deshalb n¨ otig, leise Stellen des Signals feiner zu quantisieren als laute. Die logarithmische Kompandierung (Kurzform f¨ ur Komprimieren und Expandieren), bei der die Quantisierungsintervalle auf einer logarithmierten Amplitudenachse gleichf¨ ormig sind, ist ein einfacher Ansatz, der in diese Richtung zielt. Weil dabei das Quantisierungsintervall mit dem Betrag des zu quantisierenden Wertes zunimmt, ist die Gr¨ osse des Quantisierungsfehlers im 40
0
−40
0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
0
0.2
0.4
0.6
0.8
1 Zeit [s]
1.2
1.4
1.6
1.8
2
40
0
−40
Abbildung 2.5. F¨ ur das Sprachsignal aus Abbildung 2.4 resultiert bei linearer 8-BitQuantisierung der Quantisierungsfehler oben und bei 8-Bit-log-Quantisierung nach [11] der Fehler unten.
34
¨ 2. Ubersicht u ¨ ber die Sprachverarbeitung
Mittel proportional zum Momentanwert der Signalamplitude (vergl. Abbildung 2.5). Dadurch wird f¨ ur leise und laute Signalstellen ein ausgeglicheneres SNR erreicht, und das Sprachsignal kann praktisch ohne wahrnehmbare Verminderung der Sprachqualit¨ at statt mit 12 Bit nur mit 8 Bit pro Abtastwert dargestellt werden, was einer Datenreduktion von 33 % entspricht. 2.8.1.2 Differenzcodierer Als Differenzcodierer wird nicht ein einzelnes, sondern eine ganze Klasse von Codierverfahren bezeichnet. Das wesentliche Klassenmerkmal ist, dass ein ur den momentanen Signalabtastwert s(n) ermittelt, und Sch¨ atzwert s˜(n) f¨ die Differenz bzw. der Sch¨ atzfehler codiert und u ¨ bertragen wird. Das Blockschema des Differenzcodierers ist in Abbildung 2.6 zu sehen. Wichtig ist zu bemerken, dass ein Pr¨ adiktor immer Speicherelemente enth¨ alt (siehe z.B. Formel (1); vergl. auch Abschnitt 4.5), vielfach auch der Codierer und der Decodierer. Ein einfaches Differenzcodierungsverfahren ist die Deltamodulation, bei welcher als Fehlercodierer der 1-Bit-Quantisierer c(n) = 0.5 · {sign(e(n)) + 1} eingesetzt wird. F¨ ur die Funktion sign(x) wird hier angenommen, dass sie f¨ ur x < 0 den Wert -1 und f¨ ur x ≥ 0 den Wert 1 liefert. Der decodierte Fehler e˜(n) = 2 c(n)−1 stimmt somit nur hinsichtlich des Voratzwert s˜(n) wird zeichens mit dem Sch¨ atzfehler e(n) u ¨ berein. Der Signalsch¨ mit dem Pr¨ adiktor (ein verlustbehafteter Integrator) aus dem decodierten Fehler gewonnen:
s˜(n) = k1 · s˜(n − 1) + k2 · e˜(n − 1) .
(1)
Die Konstante k1 , die etwas kleiner als 1 sein muss, bestimmt den Verlust ¨ des Integrators und damit die Dauer, wie lange sich ein Ubertragungsfehler im Empf¨ anger auswirkt. Die Konstante k2 wird so eingestellt, dass der oglichst klein ist. Erwartungswert des Fehlers e(n) m¨
s(n) +
e(n)
Codierer (Quantisierer)
-
c(n)
~ s(n) Prädiktor
~ e(n)
Decodierer
Abbildung 2.6. Blockschema des allgemeinen Differenzcodierers. Das Blockschema zeigt
den Sender. Der Empf¨ anger umfasst nur zwei Bl¨ ocke: Mit dem Decodierer wird c(n) in e˜(n) umgesetzt und daraus mit dem Pr¨ adiktor s˜(n) rekonstruiert.
2.8
Sprachsignalcodierung
35
Bei komplexeren Differenzcodierungsverfahren, beispielsweise bei der bekannten ADPCM (adaptive differential pulse code modulation; siehe [12]) werden sowohl der Quantisierer als auch der Pr¨ adiktor adaptiv gestaltet, damit sie sich stets optimal an die momentanen Eigenschaften des Signals anpassen. Dies ist bei Sprachsignalen sehr wichtig, weil die Signaleigenschaften von Laut zu Laut sehr stark variieren k¨ onnen.
2.8.2 Modellierung von Sprachsignalen Ein Codierer, der auf einem Sprachsignal-Modellierungsverfahren beruht, wird im Englischen als Vocoder (Kurzform aus voice und coder) bezeichnet. Das Grundlegende der Vocoder ist, dass in grober Analogie zum menschlichen Sprechapparat die Tonerzeugung und die Klangformung getrennt gehandhabt werden. Wie die Bezeichnung Sprachsignal-Modellierung ant¨ ont, werden dabei mathematische Modelle eingesetzt. Diese Modelle haben eine Anzahl von Parametern, die aus dem Sprachsignal (genauer aus kurzen, aufeinander folgenden Abschnitten des Sprachsignals) berechnet werden. Anstelle des Sprachsignals selbst werden dann f¨ ur jeden Sprachsignalabschnitt nur die Modellparameter u asst sich das Sprachsignal nach Be¨ bertragen oder gespeichert. Aus diesen l¨ darf wieder rekonstruieren.1 Die Rekonstruktion ist allerdings verlustbehaftet, wobei der Verlust vom eingesetzten Modell und von der Zahl der Parameter abh¨ angt. Das mit Abstand am meisten eingesetzte Modell verwendet zur Klangformung ein digitales Filter, welches das Spektrum des zu modellierenden Signalst¨ ucks approximiert. Die Filterkoeffizienten werden mit Hilfe der linearen Pr¨ adiktion bestimmt. Das Verfahren wird in Abschnitt 4.5 eingehend behandelt. Als Eingangssignal f¨ ur das Filter wird eine periodische Impulsfolge oder ein weisses Rauschen verwendet, je nachdem, ob ein stimmhafter oder stimmloser Abschnitt des Sprachsignals zu modellieren ist. Die Reduktion der Datenrate kommt in zwei Schritten zustande: Erstens ist die Anzahl der Modellparameter etwa um einen Faktor 10 kleiner als die Zahl der Abtastwerte des modellierten Sprachsignalabschnittes, und zweitens k¨ onnen die Parameter mit viel geringerer Pr¨ azision (Anzahl Bits pro Parameter) dargestellt werden als die Signalabtastwerte. So ist es m¨ oglich, Datenraten von 2 – 3 kBit/s zu erreichen. Dies entspricht einem Reduktionsfaktor von 32 – 48, im Vergleich zur Referenzdatenrate von 96 kBit/s (vergl. Seite 32). Allerdings muss betont werden, dass der Qualit¨ atsverlust beim rekonstruierten Sprachsignal gut h¨ orbar ist. 1 Diese Rekonstruktion wird in der Literatur oft als Synthese bezeichnet. Hier soll jedoch der Begriff Synthese ausschliesslich f¨ ur die automatische Umsetzung von Text in Lautsprache (vergl. Abschnitt 2.3) verwendet werden.
Kapitel 3 Darstellung und Eigenschaften des Sprachsignals
3
3
3 3.1 3.1.1 3.1.2 3.1.3 3.2 3.3 3.4 3.5 3.6 3.6.1 3.6.2 3.6.3 3.6.4
Darstellung und Eigenschaften des Sprachsignals Digitalisieren von Sprachsignalen ........................... Bandbegrenzungsfilter ......................................... Zeit- und Amplitudendiskretisierung........................ Rekonstruktionsfilter ........................................... Darstellung digitaler Sprachsignale im Zeitbereich ...... Darstellung im Frequenzbereich ............................. Kombinierte Zeit-Frequenz-Bereichs-Darstellungen...... Darstellung der Phase eines Sprachsignals ................ Sprachmerkmale und ihre Darstellung...................... Grundfrequenz .................................................. Formanten ....................................................... Dauer der Laute ................................................ Intensit¨ at der Laute ............................................
39 39 41 41 43 45 48 50 52 52 53 54 55
3 Darstellung und Eigenschaften des Sprachsignals Menschen produzieren beim Sprechen Schallwellen, die u ¨ ber einen elektroakustischen Wandler, also ein Mikrophon, in zeitabh¨ angige, elektrische Signale umgewandelt werden k¨ onnen. Zur Darstellung und Verarbeitung von Sprachsignalen werden heute praktisch ausschliesslich die Mittel der digitalen Signalverarbeitung eingesetzt. Deshalb sind die Analog-Digital-Umsetzung (Digitalisierung) und die Digital-Analog-Umsetzung gew¨ ohnlich die einzigen Verarbeitungsschritte, die mit dem analogen Signal zu tun haben.
3.1
3.1 Digitalisieren von Sprachsignalen 3.1.1 Bandbegrenzungsfilter Beim Digitalisieren wird das analoge Signal xa (t) zu den ¨ aquidistanten Zeitpunkten t = nTs = n/fs abgetastet. Ts ist das Abtastintervall, fs die Abtastfrequenz. Das Abtasten entspricht der Multiplikation des analogen Signals xa (t) mit der Pulsfolge s(t) xs (t) = xa (t) · s(t) = xa (t) ·
∞
δ(t−nTs ).
(2)
n=−∞
Im Frequenzbereich entspricht der Multiplikation in Gleichung (2) die Faltung mit der Fouriertransformierten der Pulsfolge (vergl. Abbildung 4.2):
Xs (ω) =
∞ 1 ωs Xa (ω) ∗ S(ω) = Xa (ω) ∗ δ(ω−kωs ). 2π 2π
(3)
k=−∞
Das Spektrum Xs (ω) entsteht also durch Superposition von frequenzverschobenen Xa (ω) um ganze Vielfache von ωs = 2πfs = 2π/Ts . Die Abbildung 3.1 zeigt, dass im Spektrum Xs (ω) nur dann Frequenzkomponenten zusammenoher ist als die halbe fallen k¨ onnen, wenn die Nyquist-Frequenz1 von xa (t) h¨ Abtastfrequenz. Dies wird als Aliasing bezeichnet. Der Aliasing-Effekt l¨ asst sich auch im Zeitbereich veranschaulichen. Abbilosser dung 3.2 zeigt, dass eine Signalkomponente mit der Frequenz fa , die gr¨ als die halbe Abtastfrequenz fs /2 ist, die identische Folge von Abtastwerten ergibt wie die Komponente mit der Frequenz fb = fs − fa . 1
Der Begriff Nyquist-Frequenz wird verschieden gebraucht. In Anlehnung an [18] wird hier die obere Frequenzgrenze eines bandbegrenzten Signals als Nyquist-Frequenz bezeichnet und die halbe Abtastrate (oder -frequenz) als Nyquist-Rate.
40
3. Darstellung und Eigenschaften des Sprachsignals
|Xa(ω)| −2πfN
2πfN
ω
|Xs(ω)| ωs
0
ω
2ω
s
Abbildung 3.1. Aus dem bandbegrenzten Spektrum Xa (ω) des analogen Signals xa (t)
wird durch das Abtasten das unbegrenzte Spektrum Xs (ω) des abgetasteten Signals xs (t).
Da die zusammengefallenen Frequenzkomponenten nicht mehr getrennt werden k¨ onnen, ist beim Digitalisieren von Signalen darauf zu achten, dass das Abtasttheorem nicht verletzt wird. Dieses schreibt vor: Beim Digitalisieren muss die Abtastfrequenz mindestens doppelt so hoch sein wie die Nyquist-Frequenz des analogen Signals, damit dieses wieder rekonstruiert werden kann. Sprachsignale, die mit einem guten Mikrophon aufgenommen worden sind, weisen praktisch u orbereich verteilte Frequenzkomponen¨ ber den gesamten H¨ ten auf. Weil aber f¨ ur die Sprachverst¨ andlichkeit die hohen Frequenzanteile nur eine untergeordnete Bedeutung haben, werden in vielen Anwendungen Sprachsignale mittels Tiefpassfilter bandbegrenzt, d.h. die Nyquist-Frequenz wird reduziert. Der Nyquist-Frequenz entsprechend kann dann auch die Abtastrate tief gew¨ ahlt werden. Die durch die Filterung eliminierten Frequenzanteile gehen jedoch endg¨ ultig verloren.
1 0.5 0 −0.5 −1 0
0.02
0.04
0.06
0.08
0
0.02
0.04
0.06
0.08
0.1
0.12
0.14
0.16
0.18
0.2
0.1
0.12
0.14
0.16
0.18
0.2
1 0.5 0 −0.5 −1
Zeit [s]
Illustration des Aliasing-Effekts im Zeitbereich: Wird ein 70 HzSinussignal mit 100 Hz abgetastet (oben), dann resultiert die gleiche Folge von Abtastwerten, wie wenn ein 30 Hz-Sinussignal mit 100 Hz abgetastet wird (unten).
Abbildung 3.2.
3.1
Digitalisieren von Sprachsignalen
41
Merke: Die durch Aliasing zusammenfallenden Frequenzkomponenten eines Signals k¨ onnen nicht mehr getrennt werden. Es ist deshalb wichtig, vor dem Digitalisieren die Grenzfrequenz des Tiefpassfilters (auch Anti-Aliasing-Filter genannt) und die Abtastfrequenz richtig zu w¨ ahlen.
3.1.2 Zeit- und Amplitudendiskretisierung Weil bei Sprachsignalen i.a. die absolute Zeit nicht interessiert,2 ist mit der Wahl der Abtastfrequenz im Wesentlichen auch die Diskretisierung der Zeit festgelegt. Bei der Diskretisierung bzw. Quantisierung der Amplitude wird der kontinuierliche Wertebereich der Signalabtastwerte auf eine Menge diskreter Werte abgebildet. Wir gehen davon aus, dass es sich dabei um eine uniforme Quantisierung handelt, bei der also die Quantisierungsintervalle u ¨ ber den ganzen Wertebereich gleich gross sind. Durch das Runden auf diskrete Werte wird dem Signal ein sogenanntes Quantisierungsrauschen u ¨ berlagert. Die Amplitude dieses Rundungsrauschens ist auf ein halbes Quantisierungsintervall begrenzt (vergl. Abschnitt 2.8.1.1). Die Zeit- und die Amplitudendiskretisierung k¨ onnen voneinander unabh¨ angig gew¨ ahlt werden. Als Kriterium zur Festlegung der Amplitudendiskretisierung dient die Gr¨ osse des im konkreten Fall noch akzeptierbaren Quantisierungsrauschens bzw. das Verh¨ altnis von Signal- und Rauschleistung (SNR). 3.1.3 Rekonstruktionsfilter Ein digitales Signal ist nur zu den diskreten Abtastzeitpunkten bestimmt. Um daraus ein analoges, also ein zeit- und amplitudenkontinuierliches Signal xa (t) zu erzeugen, muss das Signal auch zwischen den Abtastzeitpunkten ermittelt werden. Eine Methode ist, aus den Abtastwerten des digitalen Signals s(n) ein Signal xd (t) zu erzeugen, das zu den Zeitpunkten t = nTs (n ganzzahlig) gleich s(n) ist und sonst null. Das Spektrum von xd (t) ist nicht begrenzt und entspricht gem¨ ass Abbildung 3.1 einer Wiederholung des Spektrums des gesuchten analogen Signals xa (t). Falls kein Aliasing vorliegt, dann kann entsprechend den Ausf¨ uhrungen in Abschnitt 3.1.1 das analoge Signal gewonnen werden, indem das aus den digitalen Abtastwerten erzeugte abgetastete Signal xd (t) mit einem Tiefpass gefiltert wird. Die Transfercharakteristik dieses Tiefpassfilters ist idealerweise im Durchlassbereich unterhalb der Nyquist-Frequenz fN gleich eins und oberhalb von fs −fN gleich null. 2
Bei gewissen Signalen ist die absolute Zeit eine massgebliche Information. So kann beispielsweise bei den Abtastwerten einer Temperaturkurve wesentlich sein, ob ein bestimmter Abtastwert am Mittag, am Abend oder in der Nacht gemessen worden ist.
42
3. Darstellung und Eigenschaften des Sprachsignals
x (t) d
0
Ts
0
Ts
0
Ts
2Ts
4Ts
6Ts
8Ts
t
1
h (t) 0
t
x (t) h
2Ts
4Ts
6Ts
8Ts
t
Abbildung 3.3. Durch Faltung des abgetasteten Signals xd (t) mit dem Impuls ho (t) entsteht die Treppenfunktion xh (t).
Weil das Signal xd (t) nur zu den diskreten Zeitpunkten t = nTs ungleich null ist (es ist aus δ -Funktionen zusammengesetzt wie das mit Gleichung (2) beschriebene Signal), und der Umgang mit der δ -Funktion in der Praxis schwierig ist, hat die obige Methode der Rekonstruktion des analogen Signals eher eine theoretische Bedeutung. Das in der Praxis u ¨ bliche Verfahren nimmt an, dass die Abtastwerte w¨ ahrend des Abtastintervalls Ts konstant bleiben. Das entsprechende Signal xh (t) entsteht aus der Operation
xh (t) = xd (t) ∗ ho (t),
(4)
wobei ho (t) die Impulsantwort der Haltefunktion (englisch: zero-order hold function) ist, also ein Impuls mit: 1 f¨ ur − Ts /2 ≤ t < +Ts /2 ho (t) = 0 sonst. Im Zeitbereich betrachtet entsteht durch die Faltung des abgetasteten Signals mit ho (t) eine Treppenfunktion, wie sie in Abbildung 3.3 gezeigt wird. Die oFaltung xd (t) ∗ ho (t) im Zeitbereich entspricht der Multiplikation der zugeh¨ rigen Spektren (siehe Abbildung 3.4):
Xh (ω) = Xd (ω) · Ho (ω) =
1 {Xa (ω) ∗ S(ω)} · Ho (ω) , 2π
(5)
wobei S(ω) so definiert ist wie in Gleichung (3) und Xa (ω) dem Spektrum des asst sich aus xh (t) das gew¨ unschten analogen Signals xa (t) entspricht. Damit l¨ ¨ analoge Signal mit einem Rekonstruktionsfilter mit der Ubertragungsfunktion
3.2
Darstellung digitaler Sprachsignale im Zeitbereich
Hr (ω) =
43
1/Ho (ω) f¨ ur − π/Ts < ω < +π/Ts 0 sonst
(6)
exakt gewinnen. Voraussetzung ist jedoch, dass kein Aliasing vorliegt, dass also die Nyquist-Frequenz von xa (t) kleiner als fs /2 ist. |Xd(ω)| 0
ωs
2ωs
0
ωs
2ω
0
ωs
2ωs
ω
|H (ω)| 0
ω
s
|Xh(ω)| ω
|H (ω)| r
0
ω
ωs/2
|Xa(ω)| −2πf
N
2πf
ω
N
Abbildung 3.4. Der Faltung des abgetasteten Signals xd (t) mit der Haltefunktion ho (t)
entspricht die Multiplikation der entsprechenden Spektren. Aus Xh (ω) kann mittels des Tiefpasses Hr (ω) das analoge Signal rekonstruiert werden.
3.2 Darstellung digitaler Sprachsignale im Zeitbereich Die naheliegendste Darstellung eines digitalisierten Sprachsignals ist das Oszillogramm, also die Darstellung der Abtastwerte in Funktion der Zeit. Oszillogramme sind eigentlich Aufzeichnungen von einem meist analogen x/tSchreiber, einem Oszillographen. Die Bezeichnung wird jedoch auch allgemein f¨ ur die Darstellung physikalischer Messgr¨ ossen in Funktion der Zeit ¨ verwendet. Ublicherweise werden dabei jeweils zwei benachbarte Punkte mit einer Geraden verbunden, so dass eine amplituden- und zeitkontinuierliche ahnlich wie bei einem Oszillogramm, das mit einem AnalogLinie3 entsteht, ¨ 3
Die lineare Interpolation ist f¨ ur die graphische Darstellung in der Regel ausreichend. Soll das Signal jedoch h¨ orbar gemacht werden, dann ist das analoge Signal aus den Abtastwerten so zu rekonstruieren, wie im Abschnitt 3.1.3 beschrieben.
3.2
44
3. Darstellung und Eigenschaften des Sprachsignals 1 0
−1
0
0.2
0.4
0.6
0.8
1 Zeit [s]
1.2
1.4
1.6
1.8
2
1 0.5 0 −0.5 −1 1.4
1.45
1.5 Zeit [s]
1.55
1.6
Abbildung 3.5. Vom 2 s langen Sprachsignal “dies ist die Modulationsleitung” ist der 0.2 s lange, grau unterlegte Ausschnitt mit der Lautfolge [sla
Kurvenschreiber hergestellt worden ist. Eine solche Darstellung im Zeitbereich zeigt Abbildung 3.5, wobei hier die Amplitude so skaliert worden ist, dass der Betrag aller Abtastwerte kleiner als 1 ist (Darstellung im Einheitsformat). Im Oszillogramm kann man gut die quasi-periodischen, stimmhaften Bereiche des Sprachsignals von den rauschartigen, stimmlosen unterscheiden. Wie die Vergr¨ osserung zeigt, sind die Laute jedoch nicht scharf gegeneinander abgegrenzt. Die Laut¨ uberg¨ ange sind stets mehr oder weniger fliessend, auch u ¨ ber die Wortgrenzen hinweg. An den Wortgrenzen sind in der Regel keine Pausen. Die kurzen Pausen, die im Sprachsignal in Abbildung 3.5 sichtbar sind, sind alles pr¨ aplosive Pausen. Es sind also nicht Sprechpausen, sondern sie geh¨ oren je zu einem Plosiv (Verschlusslaut), n¨ amlich diejenige bei 0.5 s zum [t] in “ist”, die bei 1.1 s zur Affrikate [t<s] in “Modulation” und die bei 1.75 s zum [t] in “Leitung”. Um einen Plosiv zu produzieren, m¨ ussen die Artikulatoren im Vokaltrakt an einer Stelle kurz einen Verschluss machen. W¨ ahrend der Dauer des Verschlusses ¨ verstummt das Sprachsignal, es baut sich hinter dem Verschluss ein Uberdruck ¨ auf, und bei Offnen des Verschlusses entsteht die Plosion, ein kurzes, knallendes bis zischendes Ger¨ ausch, das meistens recht schnell in den nachfolgenden Laut u ¨ bergeht.
3.3
Darstellung im Frequenzbereich
45
3.3 Darstellung im Frequenzbereich Nebst der Zeitbereichsdarstellung ist bei Sprachsignalen die Frequenzbereichsdarstellung wichtig. Weil das Sprachsignal nicht station¨ ar ist, ist man prim¨ ar an seinen lokalen oder momentanen Eigenschaften interessiert. So will man beispielsweise wissen, wie das Spektrum an einer bestimmten Stelle des Signals aussieht. Um aus einer Zeitfunktion (physikalische Gr¨ osse in Funktion der Zeit) das zugeh¨ orige Spektrum zu bestimmen, wird die Fouriertransformation eingesetzt. Die Frequenzaufl¨ osung im Spektrum ist proportional zur L¨ ange der Zeitfunktion. Um ein sinnvolles Spektrum zu erhalten, kann man deshalb die Fouriertransformation nicht auf einen einzelnen Abtastwert des Signals anwenden, sondern nur auf einen kurzen Signalabschnitt (bzw. eine kurze Folge von Abtastwerten). Die L¨ ange diese Abschnittes muss so gew¨ ahlt werden, dass das resultierende Spektrum eine gen¨ ugend hohe Aufl¨ osung hat. Die diskrete Fouriertransformation und deren Anwendung auf Sprachsignale werden im Abschnitt 4.2 behandelt. Die in den Abbildungen 3.6 und 3.7 gezeigten Spektren sind mit einer hochaufl¨ osenden Fouriertransformation ermittelt worden (vergl. 4.2.4). Soll beispielsweise f¨ ur das Sprachsignal von Abbildung 3.5 f¨ ur den Zeitpunkt 0.18 s das Spektrum bestimmt werden, dann wird ein Abschnitt des Signals ausgew¨ ahlt, bei dem dieser Zeitpunkt in der Mitte liegt, wie dies in Abbildung 3.6 oben dargestellt ist. Mittels der Fouriertransformation kann aus diesem Signalabschnitt das im unteren Teil der Abbildung gezeigte Spektrum (Betrag und Phase) bestimmt werden. Weil das Signal in diesem Abschnitt stimmhaft und damit ungef¨ ahr periodisch ist, und zwar mit einer Periode von etwa 8 ms, weist das Spektrum eine deutlich sichtbare harmonische Struktur auf. Es ist eine Grundwelle vorhanden, hier bei etwa 125 Hz, und auch viele der Oberwellen bei ganzzahligen Vielfachen der Grundwelle sind mehr oder weniger deutlich sichtbar. Ein Sprachsignalabschnitt ist nie exakt periodisch. Einerseits schwingen die Stimmlippen, die ja den quasi-periodischen Anteil im Sprachsignal erzeugen, nicht exakt konstant und andererseits ist stets ein Rauschanteil vorhanden, welcher von der beim Sprechen durch den Vokaltrakt ausstr¨ omenden Luft herr¨ uhrt. Das Spektrum in Abbildung 3.6 ist aus einem stimmhaften Signalabschnitt um den Zeitpunkt 0.18 s ermittelt worden. Im Gegensatz dazu ist das Sprachsignal von Abbildung 3.5 zum Zeitpunkt 1.15 s nicht periodisch, also stimmlos. Dies ist auch im zugeh¨ origen Betragsspektrum von Abbildung 3.7 zu erkennen: Das Spektrum weist keine harmonische Struktur auf.
3.3
46
3. Darstellung und Eigenschaften des Sprachsignals 0.5
0
−0.5
0.15
0.16
0.17
0.18
0.19
0.2
0.21
Zeit [s] Grundwelle 30
Betrag [dB]
20 10 0 −10 −20 −30
0
500
1000
1500
2000
2500
3000
3500
4000
2500
3000
3500
4000
Frequenz [Hz]
Phase
π
0
−π
0
500
1000
1500
2000
Frequenz [Hz] Abbildung 3.6. Vom grau unterlegten Teil des stimmhaften Sprachsignals oben (Aus-
schnitt des Lautes [i:] aus dem Wort “dies” bzw. [di:s] des Sprachsignals von Abbildung 3.5) resultiert via Fouriertransformation das komplexe Spektrum. Das daraus ermittelte Betragsspektrum ist in der Mitte dargestellt, das Phasenspektrum unten.
Es zeigt sich also, dass sich das Betragsspektrum eines stimmhaften Signalabschnittes deutlich vom Betragsspektrum eines stimmlosen Abschnittes unterscheidet. Kein offensichtlicher Unterschied ist hingegen bei den Phasenspektren ersichtlich. Sowohl beim stimmhaften wie beim stimmlosen Abschnitt ist am auff¨ alligsten, dass der Phasenverlauf Spr¨ unge aufzuweisen scheint. Tats¨ achlich werden diese jedoch durch das Analysefenster verursacht. So bewirkt der Schmiereffekt des Fensters (vergl. Abschnitt 4.2.3) beispielsweise im Betragsspektrum von Abbildung 3.6, dass die Grundwelle nicht als eine Frequenzlinie erscheint, sondern stark verbreitert ist. Die Frequenzkomponenten
3.4
Kombinierte Zeit-Frequenz-Bereichs-Darstellungen
47
0.5
0
−0.5
1.13
1.14
1.15
1.16
1.17
1.18
1.19
Zeit [s] 10
Betrag [dB]
0 −10 −20 −30 −40 −50
0
500
1000
1500
2000
2500
3000
3500
4000
2500
3000
3500
4000
Frequenz [Hz]
Phase
π
0
−π
0
500
1000
1500
2000
Frequenz [Hz] Abbildung 3.7. Vom grau unterlegten Teil des stimmlosen Sprachsignals oben (Ausschnitt
der Affrikate [t<s] aus dem Wort “Modulation” bzw. [modulat<sio:n] des Sprachsignals von Abbildung 3.5) resultieren via Fouriertransformation das Betrags- und das Phasenspektrum unten.
dieser Verbreiterung sind jedoch nicht im Signal vorhanden. Die Phase dieser im Signal nicht existierenden Frequenzkomponenten kann somit kaum etwas u ¨ ber das Signal aussagen. Eine Darstellung der Phase eines Sprachsignals kann aber durchaus wichtig sein, z.B. im Zusammenhang mit der Fourier-Analyse-Synthese. Dann wird jedoch auf eine spezielle Darstellung zur¨ uckgegriffen, die im Abschnitt 3.5 erl¨ autert wird.
48
3.4
3. Darstellung und Eigenschaften des Sprachsignals
3.4 Kombinierte Zeit-Frequenz-Bereichs-Darstellungen Da Sprachsignale an verschiedenen Stellen spektral sehr unterschiedlich zusammengesetzt sind, ist eine Darstellung n¨ utzlich, in der die Zusammensetzung des Signals sowohl in Funktion der Zeit, als auch in Funktion der Frequenz ersichtlich ist. Diese Darstellung mit drei Dimensionen wird als Spektrogramm bezeichnet. Sie wird aus einem Sprachsignal ermittelt, indem dieses in kurze Abschnitte unterteilt und von jedem Abschnitt mittels der Fouriertransformation das Betrags- oder das Leistungsdichtespektrum berechnet wird. Die resultierende Folge von Kurzzeitspektren kann unter anderem auf die folgenden Arten graphisch dargestellt werden: a) Zeit- und Frequenzachse werden als Abszisse bzw. Ordinate gezeichnet, die also die Zeit-Frequenz-Ebene aufspannen. In dieser Ebene wird nun jeder Punkt der Folge der Kurzzeitspektren entsprechend als Grauwert eingetragen. Dabei gilt, je gr¨ osser der Betrag an einer Stelle, desto dunkler wird der betreffende Punkt gesetzt. Wie bei Sprachspektren u ¨ blich, wird auch hier eine logarithmische Skala (in Dezibel) verwendet. Je nach L¨ ange des bei der Fouriertransformation verwendeten Analysefensters entsteht dabei ein etwas unterschiedliches Bild. Ist das Fenster im Vergleich zur Signalperiode lang, dann resultiert ein sogenanntes Schmalbandspektrogramm mit einer hohen spektralen, aber geringen zeitlichen Aufl¨ osung, wie es Abbildung 3.8 oben zeigt. Die Frequenzaufl¨ osung dieses Spektrums ist so hoch, dass in stimmhaften (periodischen) Sprachsignalausschnitten die harmonische Struktur gut als Linienmuster erkennbar ist (Oberwellen ergeben Rippel in Richtung der Frequenzachse). Dabei zeigt die Linie mit der tiefsten Frequenz die Grundwelle an und die restlichen Linien die Oberwellen. Weil stimmlose Laute, insbesondere die Frikative und Affrikaten (z.B. die Affrikate [t<s], die zwischen den Zeitpunkten 1.1 und 1.2 s liegt) rauschartig sind, sind die Linienmuster an den betreffenden Stellen unterbrochen. Umgekehrt entsteht mit einem relativ kurzen Fenster ein Breitbandspektrogramm mit gr¨ osserer zeitlicher Aufl¨ osung, aber mit st¨ arkerer spektraler “Verschmierung” (siehe Abbildung 3.8 unten). Darin sind insbesondere die harmonischen Muster der stimmhaften Laute nicht mehr auszumachen. Hingegen erscheinen die Formanten (Resonanzen des Vokaltraktes) im Breitbandspektrum deutlicher. Zudem ist hier ein Muster mit vertikalen Linien zu sehen, und zwar wiederum bei stimmhaften Lauten. Dies ist ein Hinweis daf¨ ur, dass das Analysefenster in diesem Fall eher zu kurz gew¨ ahlt worden ist, n¨ amlich etwa 1.5 Perioden lang. Die zweckm¨ assige Wahl der Form und der L¨ ange des Analysefensters wird im Abschnitt 4.2 behandelt.
3.4
Kombinierte Zeit-Frequenz-Bereichs-Darstellungen
49
4000 20
3500
10 0
2500
−10
2000 1500
−20
1000
−30
500
−40
0
0.6
0.7
0.8
0.9
1
1.1
1.2
1.3
1.4
1.5
1.1
1.2
1.3
1.4
1.5
Betrag [dB]
Frequenz [Hz]
3000
−50
Zeit [s] 1 0.5 0 −0.5 −1
0.6
0.7
0.8
0.9
1
Zeit [s] 4000 10
3500
0
2500
−10
2000 −20 1500
Betrag [dB]
Frequenz [Hz]
3000
−30 1000 −40
500 0
0.6
0.7
0.8
0.9
1
1.1
1.2
1.3
1.4
1.5
−50
Zeit [s]
Abbildung 3.8. Oszillogramm des Sprachsignalausschnitts “die Modulations” (Mitte) und zugeh¨ origes Schmalbandspektrogramm (oben), das mit einem Hamming-Fenster der L¨ ange 32 ms ermittelt worden ist. F¨ ur das Breitbandspektrogramm (unten) ist ein HammingFenster der L¨ ange 12.5 ms verwendet worden.
50
3. Darstellung und Eigenschaften des Sprachsignals
30 20 1
0 −10
0.8
−20
−40
0.4
it [ s]
0.6
−30
Ze
Betrag [dB]
10
0 1000
0.2
2000
Frequ
enz [H z]
3000 4000
0
Abbildung 3.9. Breitbandspektrogramm aus dem Sprachsignal von Abbildung 3.8, drei-
dimensional dargestellt als zeitliche Folge gegl¨ atteter Spektren.
b) F¨ ur feste Zeitpunkte bilden die Werte des Kurzzeitspektrums in Funktion der Frequenz Kurven, die sich in einem dreidimensionalen Koordinatensystem eintragen und als Schr¨ agbild darstellen lassen, wie das Beispiel in Abbildung 3.9 zeigt. Diese Darstellung ist jedoch nur f¨ ur Breitbandspektren tauglich, weil diese einigermassen glatte Kurven aufweisen, d.h. die der Signalperiode entsprechenden harmonischen Frequenzkomponenten sind nicht sichtbar.
3.5
3.5 Darstellung der Phase eines Sprachsignals Die Spektrogramme im Abschnitt 3.4 zeigen, welche Frequenzen zu welcher Zeit wie stark in einem Signal vorhanden sind. Diese Darstellungen beruhen ¨ auf dem mit der Fouriertransformation ermittelten Betragsspektrum. Uber die Phase geben sie keine Auskunft. In gewissen F¨ allen interessieren jedoch nicht nur die Amplitude und die Frequenz der Komponenten, aus denen ein Signal zusammengesetzt ist, sondern
3.5
Darstellung der Phase eines Sprachsignals
51
1
0
−1 1.55
1.56
1.57
1.58
1.59
1.6 Zeit [s]
1.61
1.62
1.63
1.64
1.65
1.56
1.57
1.58
1.59
1.6 Zeit [s]
1.61
1.62
1.63
1.64
1.65
2000
1800
1600
1400
Frequenz [Hz]
1200
1000
800
600
400
200
0 1.55
Abbildung 3.10. F¨ ur den stimmhaften Sprachsignalausschnitt oben ist alle 5 ms die spek-
trale Zusammensetzung (Zerlegung in Sinuskomponenten) ermittelt worden. Diese Sinuskomponenten sind unten auf der Zeit-Frequenz-Ebene aufgetragen (nur bis 2000 Hz).
52
3. Darstellung und Eigenschaften des Sprachsignals
auch die Phase dieser Komponenten. Eine M¨ oglichkeit, die zeitliche Ver¨ anderung der Frequenz, der Amplitude und der Phase eines Sprachsignals darzustellen, wurde in [21] vorgeschlagen. Ein Beispiel dieser Darstellungsart ist in Abbildung 3.10 zu sehen. Sie zeigt, aus welchen Sinuskomponenten jeder stimmhafte Sprachsignalausschnitt zusammengesetzt ist. Diese Darstellung wird wie folgt ermittelt: F¨ ur jeden Ls = 5 ms langen Abschnitt des Sprachsignals wird gesch¨ atzt, aus welchen Sinuskomponenten er sich zusammensetzt, d.h. f¨ ur jede Sinuskomponente die Frequenz f , die Amasst sich eine Art plitude a und die Phase p. Aus diesen Sinuskomponenten l¨ Spektrogramm zeichnen, in dem bei gen¨ ugend hoher zeitlicher Aufl¨ osung auch die Phase ersichtlich ist. Dies wird dadurch erreicht, dass f¨ ur jede durch ein Tripel (f, a, p) beschriebene Sinuskomponente, die zum Abschnitt t = k Ls geh¨ ort, in der Zeit-Frequenz-Ebene f¨ ur das Zeitintervall [tt+5 ms] und die Frequenz f ein Abschnitt einer Sinuswelle mit (f, a, p) eingetragen wird (wieder mit logarithmierter Amplitude).
3.6
3.6 Sprachmerkmale und ihre Darstellung In der Sprachverarbeitung interessieren nebst dem Spektrum bzw. Spektrogramm weitere aus dem Sprachsignal berechnete Gr¨ ossen wie die Grundfrequenz, die Formanten, die Lautdauer und die Intensit¨ at. In den folgenden Abschnitten werden diese Gr¨ ossen erl¨ autert, um die Eigenheiten von Sprachsignalen eingehender zu illustrieren.
3.6.1 Grundfrequenz Stimmhafte Sprachsignalabschnitte sind quasi-periodisch und weisen folglich eine Grundwelle und Oberwellen auf, die sowohl im Spektrum (Abbildung 3.6) als auch im Schmalbandspektrogramm (Abbildung 3.8) ersichtlich sind, sofern das Analysefenster lang genug ist. Die Frequenz der Grundwelle, die gleich dem Abstand der Oberwellen ist, wird als Grundfrequenz oder F0 bezeichnet und entspricht dem Reziproken der Signalperiode T0 . Es gilt also: F0 = 1/T0 . Wie in Abschnitt 1.4.2 erl¨ autert, h¨ ort man von einem oberwellenhaltigen Signal die Grundfrequenz als Tonh¨ ohe. Die Grundfrequenz eines Sprachsignals ist jedoch nicht konstant, sondern ¨ andert sich laufend. Dies ist an der Grundwelle im Schmalbandspektrogramm von Abbildung 3.8 nur schlecht erkennbar. Wird die Grundfrequenz jedoch wie in Abbildung 3.11 dargestellt, dann ist dies klar ersichtlich. Die Grundfrequenz ist deshalb ein wichtiges Merkmal eines Sprachsignals, weil der Mittelwert der Grundfrequenz als Stimmlage und die zeitliche Variation der Grundfrequenz als Sprechmelodie wahrgenommen wird.
3.6
Sprachmerkmale und ihre Darstellung
53
1 0
Grundfrequenz [Hz]
−1
0
0.2
0.4
0.6
0.8
1 Zeit [s]
1.2
1.4
1.6
1.8
2
0
0.2
0.4
0.6
0.8
1 Zeit [s]
1.2
1.4
1.6
1.8
2
150 100 50 0
Abbildung 3.11. Sprachsignal “dies ist die Modulationsleitung” und daraus ermittelter Verlauf der Grundfrequenz. Da nur f¨ ur stimmhafte Segmente die Grundfrequenz ermittelt werden kann, ist der Grundfrequenzverlauf eines Sprachsignals i.a. l¨ uckenhaft. Die L¨ ucken zwischen den Kurvenst¨ ucken sind also dort, wo sich stimmlose Segmente oder Pausen befinden.
3.6.2 Formanten Im Spektrum von Abbildung 3.6 ist zu sehen, dass in gewissen Frequenzbereichen die Amplitude der Oberwellen ausgepr¨ agte lokale Maxima aufweist. Diese Maxima r¨ uhren von Resonanzen des Vokaltraktes her und werden Formanten genannt. 30
F1
Betrag [dB]
20
F2
10
F3
0 −10 −20 −30
0
500
1000
1500
2000
2500
3000
3500
4000
Frequenz [Hz] Abbildung 3.12. Spektrum eines Signalabschnittes des Lautes [i:] und zugeh¨ origes LPC-
Spektrum (punktiert, vergl. auch Abschnitt 4.5) mit eingetragenen Formanten. Innerhalb der 3-dB-Bandbreite sind die Formanten durchgezogen markiert.
54
3. Darstellung und Eigenschaften des Sprachsignals
Im Spektrum von Abbildung 3.12 sind drei Formanten eingetragen. Die Formanten werden mit aufsteigender Frequenz als F1 , F2 , F3 etc. bezeichnet. Formanten werden durch drei Gr¨ ossen charakterisiert: Frequenz, Amplitude und Bandbreite. In der Regel wird die 3-dB-Bandbreite verwendet, manchmal auch die G¨ ute, also der Quotient aus Bandbreite und Formantfrequenz. Die Formanten sind lautspezifisch (vergl. auch Abschnitt 1.4.5). In einem Sprachsignal ver¨ andern sich deshalb die Formantfrequenzen in Funktion der Zeit fortw¨ ahrend. In Abbildung 3.12 ist nur eine Momentaufnahme der Foranderung der mantkonstellation f¨ ur den Laut [i:] zu sehen. Die zeitliche Ver¨ Formanten kann in der Zeit-Frequenz-Ebene dargestellt werden, wie dies Abbildung 3.13 zeigt. 4000 3500
Frequenz [Hz]
3000 2500 2000 1500 1000 500 0
0.6
0.7
0.8
0.9
1 Zeit [s]
1.1
1.2
1.3
1.4
1.5
Abbildung 3.13. Vom Sprachsignal in Abbildung 3.8 ermittelte Formanten in der ZeitFrequenz-Ebene dargestellt: Die Formanten erscheinen umso dunkler, je h¨ oher deren Amplitude ist; zudem sind Formantfrequenz und -bandbreite ersichtlich.
3.6.3 Dauer der Laute ¨ In Sprachsignalen sind die Lautgrenzen der gleitenden Uberg¨ ange wegen im Allgemeinen nicht klar ersichtlich. Es besteht deshalb stets ein gewisser Ermessensspielraum, wo die Grenzen zu setzen sind. Beim Sprachsignal in Abbildung 3.14 sind die Lautgrenzen manuell so gesetzt worden, dass beim Anh¨ oren eines Lautsegmentes nur der betreffende Laut h¨ orbar ist. Die Lautsegmente sind in ETHPA-Notation beschriftet. Die Transkription in IPA-Notation lautet [di:s Ist di: modulat<sio:nsla
3.6
Sprachmerkmale und ihre Darstellung
55
1 0 −1
d 0
i: s 0.2
I st 0.4
i: 0.6
m o d u l a t_s i o: n s l a_i 0.8
1 Zeit [s]
1.2
1.4
t
1.6
U
N
1.8
2
Abbildung 3.14. Im Sprachsignal “dies ist die Modulationsleitung” sind die Lautgrenzen
eingetragen. Die Laute sind in ETHPA-Notation beschriftet (vergl. Seite 401).
Aus dieser Abbildung ist ersichtlich, dass die Dauer der Laute stark variiert. Einerseits scheint die Dauer vom Laut abh¨ angig zu sein, andererseits hat ein bestimmter Laut nicht stets dieselbe Dauer.
3.6.4 Intensit¨ at der Laute In Abbildung 3.15 ist der Intensit¨ atsverlauf des Sprachsignals von Abbildung 3.14 dargestellt. Als Intensit¨ at wird hier der RMS-Wert (root mean square) u ¨ ber ein 30 ms langes Fenster verwendet, also die Wurzel aus der Leistung, die u ¨ ber einen 30 ms langen Signalabschnitt ermittelt wird. Es f¨ allt auf, dass die Intensit¨ at der Laute sehr unterschiedlich ist. Beispielsweise ist im Wort “dies” (am Anfang des Signals) die Intensit¨ at des Lautes at des Lautes [s]. Beim Anh¨ oren des [i:] etwa zehnmal so gross wie die Intensit¨ Sprachsignal gewinnt man jedoch den Eindruck, dass alle Laute gleich laut sind. Die gemessene Intensit¨ at (also der RMS) der Laute und die subjektive Wahrnehmung sind demzufolge sehr verschieden. 0.3
d
i: s
I st
i:
m o d u l a t_s i o: n s l a_i
t
U
N
0.2 0.1 0
0
0.2
0.4
0.6
0.8
1 Zeit [s]
1.2
1.4
1.6
Abbildung 3.15. Intensit¨ atsverlauf des Sprachsignals von Abbildung 3.14
1.8
2
Kapitel 4 Analyse des Sprachsignals
4
4
4 4.1 4.2 4.2.1 4.2.2 4.2.3 4.2.4 4.2.5 4.3 4.4 4.4.1 4.4.2 4.4.3 4.5 4.5.1 4.5.2 4.5.3 4.6 4.6.1 4.6.2 4.6.3 4.6.4 4.6.5 4.6.6 4.6.7 4.6.8 4.7 4.7.1 4.7.2
Analyse des Sprachsignals Kurzzeitanalyse ................................................. 59 Sch¨ atzung des Kurzzeitspektrums .......................... 60 Diskrete Fouriertransformation .............................. 60 Eigenschaften der DFT ....................................... 64 Fensterfunktionen .............................................. 64 Die Frequenzaufl¨ osung der DFT ............................ 66 Zeitabh¨ angige Fouriertransformation ....................... 69 Sch¨ atzung des Leistungsdichtespektrums.................. 71 Autokorrelation ................................................. 73 Definition der Autokorrelationsfunktion.................... 73 Eigenschaften der Autokorrelationsfunktion............... 73 Kurzzeit-Autokorrelation ...................................... 74 Lineare Pr¨ adiktion.............................................. 77 Herleitung der LPC-Analyse.................................. 77 Sprachmodellierung mittels linearer Pr¨ adiktion........... 80 Interpretation der linearen Pr¨ adiktion ...................... 86 Homomorphe Analyse ......................................... 89 Das verallgemeinerte Superpositionsprinzip ............... 89 Homomorphe Systeme ........................................ 89 Das DFT-Cepstrum ............................................ 90 Cepstrale Gl¨ attung ............................................. 92 Das Mel-Cepstrum ............................................. 94 Das Delta-Cepstrum ........................................... 96 Mittelwertfreie Cepstren ...................................... 97 Cepstrale Distanz............................................... 99 Vektorquantisierung............................................ 100 Realisation der Vektorquantisierung ........................ 101 Generieren eines Codebuches ................................ 103
4 Analyse des Sprachsignals In diesem Kapitel werden die Transformationen und Signalverarbeitungsmethoden behandelt, auf welche in den Kapiteln u ¨ ber Sprachsynthese und Spracherkennung zur¨ uckgegriffen wird.
4.1
4.1 Kurzzeitanalyse Die Kurzzeitanalyse ist ein wichtiges Instrument in der Sprachverarbeitung, da das Sprachsignal nicht station¨ ar ist, sondern sich zeitlich ver¨ andert. Diese ¨ zeitliche Anderung wird wesentlich dadurch bestimmt, was und wie eine Person spricht. Daneben weist das Sprachsignal aber auch Komponenten auf, die zuf¨ alliger Natur sind (vergl. Abschnitt 2.1). Das Ziel der Kurzzeitanalyse ist also, gewisse Eigenschaften des Sprachsignals in Funktion der Zeit zu ermitteln. Die meisten Analysetechniken nutzen die Tatsache, dass sich die Artikulatoren beim Sprechen relativ langsam bewegen und sich folglich auch die zeitabh¨ angigen Eigenschaften des Sprachsignals entsprechend langsam ver¨ andern. Um die zeitliche Ver¨ anderung des Signals zu erfassen, wird das Signal in kurze Analyseabschnitte unterteilt, wie dies Abbildung 4.1 veranschaulicht. Auf jeden dieser Signalabschnitte wird sodann eine Analyse angewendet, beispielsweise die Fouriertransformation oder die LPC-Analyse. Dadurch entsteht eine zeitliche Abfolge von Analyseresultaten, die wir im Folgenden als Merkmale bezeichnen. F¨ ur die Analyse wird i.a. vorausgesetzt, dass sich die interessierenden Eigenschaften innerhalb des Analyseabschnittes nicht stark ¨ andern und somit das Sprachsignal n¨ aherungsweise als station¨ ar betrachtet werden kann. Die meisten Analysetechniken setzen Stationarit¨ at voraus und liefern u ¨ ber den Analyseabschnitt “gemittelte” Werte. F¨ ur eine gute Sch¨ atzung der Eigenschaften sollte der Analyseabschnitt m¨ oglichst lang gew¨ ahlt werden, um statistische Einfl¨ usse auszumitteln. Andererseits muss aber der Analyseabschnitt so kurz
Verschiebung
Analyseabschnitt
Abbildung 4.1. Um den zeitlichen Verlauf interessierender Gr¨ ossen (Merkmale) aus dem
Sprachsignal zu extrahieren, wird das Signal abschnittweise analysiert, wobei sich aufeinander folgende Analyseabschnitte in der Regel u ¨berlappen.
60
4. Analyse des Sprachsignals
sein, dass die tats¨ achlichen Werte der zu ermittelnden Gr¨ ossen innerhalb des Analyseabschnittes nicht zu stark variieren und so die Resultate der Analyse verf¨ alscht werden. Da nicht beide Ziele gleichzeitig erf¨ ullt werden k¨ onnen, ist in jedem konkreten Fall ein sinnvoller Kompromiss anzustreben. Die Verschiebung zwischen aufeinanderfolgenden Analyseabschnitten ist von der L¨ ange des Abschnittes unabh¨ angig und muss so gew¨ ahlt werden, dass die zeitliche Aufl¨ osung der zu ermittelnden Gr¨ ossen gen¨ ugend hoch ist.
4.2
4.2 Sch¨ atzung des Kurzzeitspektrums Um etwas u onnen, bedient man ¨ ber das Spektrum eines Signals aussagen zu k¨ sich meistens der Fouriertransformation. Das Resultat der Fouriertransformation bezeichnet man als Fouriertransformierte. Mit Spektrum bezeichnen wir hingegen eine Eigenschaft des Signals, die wir als frequenzm¨ assige Zusammensetzung des Signals umschreiben k¨ onnen. Man kann zwar aufgrund der Fouriertransformierten unter Umst¨ anden etwas u ber das Spektrum aussagen, also eine Sch¨ a tzung machen, die Fouriertrans¨ formierte und das Spektrum sind bei Sprachsignalen aber stets verschieden und somit auseinander zu halten.
4.2.1 Diskrete Fouriertransformation Das bekannteste Kurzzeitanalyseverfahren ist zweifellos die Kurzzeit-Fouriertransformation, wobei f¨ ur digitale Signale selbstverst¨ andlich die diskrete Fouriertransformation (DFT) eingesetzt wird. Die DFT bildet eine Sequenz von N Abtastwerten eines Signals x(n) auf N Abtastwerte X(k) der entsprechenden Fouriertransformierten ab. Die DFT und die inverse DFT werden durch die beiden folgenden Gleichungen beschrieben: X(k) =
N −1
x(n)e−j(2π/N )kn
0 ≤ k ≤ N −1
(7)
0 ≤ n ≤ N −1.
(8)
n=0
x(n) =
N −1 1 X(k)ej(2π/N )kn N k=0
Um besser zu verstehen, wie die DFT mit der kontinuierlichen Fouriertransformation zusammenh¨ angt, werden anhand der Abbildung 4.2 die einzelnen ¨ Schritte beim Ubergang von der Fouriertransformation eines zeitkontinuierlichen Signals xa (t) zur entsprechenden diskreten Fouriertransformierten X(k) erl¨ autert. Die Abbildungen auf gleicher H¨ ohe bilden jeweils ein Fouriertransformationspaar: links die Zeitbereichsdarstellung, rechts der Betrag der entsprechenden kontinuierlichen Fouriertransformierten.
4.2
Sch¨ atzung des Kurzzeitspektrums
61
Zeitsignal
a)
Fouriertransformierte
xa (t)
|Xa (f )|
s(t)
S(f )
xs (t)
|Xs (f )|
w(t)
|W (f )|
x¯s (t)
¯ s (f )| |X
sN (t)
SN (f )
x¯sp (t)
¯ sp (f )| |X
b)
c)
d)
e)
f)
g)
0
1
2
Zeit [ms]
3
4
−10
−5
0
5
10
Frequenz [kHz]
Abbildung 4.2. Veranschaulichung des Zusammenhangs zwischen der DFT und der zeit-
kontinuierlichen Fouriertransformierten am Beispiel einer 1.25-kHz-Sinusschwingung xa (t). Die Abtastfrequenz, also die Pulsrate des Abtastsignals s(t), betr¨ agt 8 kHz.
62
4. Analyse des Sprachsignals
Das zeitkontinuierliche Signal xa (t) in Abbildung 4.2a ist eine Sinusschwingung der Frequenz 1.25 kHz. Die Fouriertransformation dieses Signals ist: ∞ Xa (f ) = xa (t)e−j2πf t dt . (9) −∞
F¨ ur das Signal xa (t) = sin(2π · 1250 · t) ist die Fouriertransformierte Xa (f ) nur an den Stellen f = ±1250 Hz gr¨ osser als null. Der Betrag der Fouriertransformierten ist in Abbildung 4.2a in der rechten Spalte eingetragen. Das zeitkontinuierliche Signal wird mit fs = 8 kHz abgetastet. Das Abtasten entspricht der Multiplikation des zeitkontinuierlichen Signals xa (t) mit der periodischen Pulsfolge (vergl. Seite 39)
s(t) =
∞
δ(t−nTs )
(10)
n=−∞
wobei der Einheits-Dirac-Puls δ(t) definiert wird als ur t = 0 1 f¨ δ(t) = 0 sonst
(11)
Die Fouriertransformation der periodischen Pulsfolge s(t) ist wiederum eine periodische Pulsfolge, n¨ amlich:
S(f ) =
∞ 1 k δ(f − ) Ts Ts
(12)
k=−∞
Im Frequenzbereich ist diese Periode gleich der Abtastfrequenz fs = 1/Ts . Das Fouriertransformationspaar s(t) und S(f ) ist in Abbildung 4.2b dargestellt. Das abgetastete Signal xs (t) in Abbildung 4.2c resultiert aus der Multiplikation des zeitkontinuierlichen Signals xa (t) mit der Pulsfolge s(t):
xs (t) = xa (t) · s(t) .
(13)
Dem Faltungstheorem gem¨ ass entspricht die Multiplikation im Zeitbereich einer Faltung im Frequenzbereich.
Xs (f ) = Xa (f ) ∗ S(f )
(14)
Das Spektrum des abgetasteten Signals Xs (f ) ist periodisch mit der Abtastoher frequenz fs (Abbildung 4.2c). Ist die Nyquistfrequenz des Signals xa (t) h¨ onnen verschiedene Frequenzkompoals fs /2, dann entsteht Aliasing und es k¨ ungliche nenten des Signals xa (t) im Signal xs (t) zusammenfallen. Das urspr¨ Signal kann dann nicht mehr korrekt aus dem abgetasteten Signal rekonstruiert werden (vergl. Abschnitt 3.1).
4.2
Sch¨ atzung des Kurzzeitspektrums
63
Da nur endlich viele Abtastwerte auf dem Computer verarbeitet werden k¨ onnen, oder weil man nur am Spektrum eines Ausschnittes des Signals interessiert ist, schneidet man N Abtastwerte aus dem Signal heraus. Dies entspricht nun der Multiplikation des abgetasteten Signals mit einer Rechteckfensterfunktion w(t). Das Spektrum der Rechteckfunktion w(t) mit der Dauer N Ts ist eine sin(x)/x-Funktion mit Nullstellen bei den Frequenzen f = kfs /N , wobei k ganzzahlig und ungleich null ist. Im Beispiel von Abbildung 4.2d ist N = 16, was einer Fensterl¨ange von 2 ms entspricht. Das Spektrum des mit der Fensterfunktion multiplizierten Signals ist wiederum das Resultat einer Faltung, n¨ amlich der Faltung des Spektrums des abgetasteten Signals xs (t) mit dem Spektrum der Fensterfunktion w(t):
¯ s (f ) = Xs (f ) ∗ W (f ) X
(15)
Durch diese Faltung wird das urspr¨ ungliche Spektrum verschmiert (Abbildung 4.2e). Die Verschmierung ist um so gr¨ osser, je k¨ urzer das Fenster gew¨ ahlt wird (vergl. Abschnitt 4.2.3). Um nun noch den Schritt von der kontinuierlichen zur diskreten Fouriertrans¯ s (f ) abgetastet, wobei das Abformation zu machen, wird das Spektrum X tastintervall fs /N ist. Dies entspricht wiederum einer Multiplikation, diesmal ¯ s (f ) mit der periodischen Pulsfolge SN (f ). Im Zeitbereich des Spektrums X ¯sp (t) perientspricht dies der Faltung mit sN (t), was heisst, dass das Signal x odisch wird, wobei die Periode N Ts ist. ¯ sp (kfs /N ) im Bereich n, k = ¯sp (nTs ) und X Die Werte der Funktionen x 0, 1, . . . , N −1 stellen nun nichts anderes dar als die Funktionswerte von x(n) und X(k) des diskreten Fouriertransformationspaares (bis auf einen Skalierungsfaktor). Diese Illustration des Zusammenhangs zwischen der kontinuierlichen Fouriertransformation und der DFT zeigt folgendes: Bei der Anwendung einer N-Punkt-DFT nimmt man implizit an, dass sowohl das Zeitsignal x(n), als auch das Spektrum X(k) periodisch fortgesetzt sind mit der Periode N . Die Fouriertransformierte, also das Resultat der DFT, entspricht demzufolge nur dann der tats¨ achlichen spektralen Zusammensetzung eines Signals, wenn die L¨ ange des Analyseabschnittes ein ganzzahliges Vielfaches der Periode betr¨ agt. In allen anderen F¨ allen, also insbesondere auch f¨ ur aperiodische Signale, kann mit der DFT bloss eine mehr oder weniger grobe Sch¨ atzung des wirklichen Spektrums erzielt werden. Die Genauigkeit dieser Sch¨ atzung h¨ angt einerseits vom Signal selbst ab, andererseits auch von der verwendeten Fensterfunktion (siehe Abschnitt 4.2.3).
64
4. Analyse des Sprachsignals
4.2.2 Eigenschaften der DFT Die wichtigsten Eigenschaften der DFT sind in Tabelle 4.1 zusammengefasst. Eine ausf¨ uhrlichere Behandlung der DFT und deren Eigenschaften ist beispielsweise in [18] zu finden. Tabelle 4.1. Die wichtigsten Eigenschaften der DFT. Die Bezeichnung (())N bedeutet,
dass das Argument in der Klammer modulo N gerechnet werden muss.
Periodizit¨ at (i ganzzahlig) Linearit¨ at
Zeitsequenz
DFT
x(n) = x(n+iN )
X(k) = X(k + iN )
x3 (n) = ax1 (n) + bx2 (n) X3 (k) = aX1 (k) + bX2 (k) x((n+n0 ))N
X(k)ej(2π/N )kn0
x(n)e−j(2π/N )kn0
X((k+n0 ))N
x((−n))N
X ∗ (k)
x(n) X(n)
X(k) N x((−k))N
Verschiebung
Zeitumkehr Dualit¨ at
Faltung
N −1
x1 (m) x2 ((n−m))N
m=0
Multiplikation
x1 (n)x2 (n)
X1 (k)X2 (k) N −1 1 X1 (i)X2 ((k−i))N N i=0
4.2.3 Fensterfunktionen Wie im Abschnitt 4.2.1 gezeigt worden ist, wird f¨ ur die DFT eine endliche Anzahl von N Abtastwerten verwendet (Analyseabschnitt). Die Auswahl der N Abtastwerte aus dem Sprachsignal ist a¨quivalent zur Multiplikation des Sprachsignals mit einem Rechteckfenster der L¨ ange N . Dieser Multiplikation des Sprachsignals mit dem Rechteckfenster entspricht im Frequenzbereich eine Faltung der betreffenden Spektren. Dies f¨ uhrt zu zwei unerw¨ unschten Effekten, dem Verschmieren und dem Lecken. Beide Effekte haben damit zu tun, dass das Spektrum eines Rechteckfensters nicht aus einem einzelnen Diracpuls besteht, sondern aus einem Hauptlappen und vielen Nebenlappen (siehe Abbildung 4.3). Durch die Faltung dieses Spektrums mit dem Signalspektrum wird eine einzelne Frequenzlinie auf die Form des Hauptlappens verbreitert bzw. verschmiert. Eine einzelne Spektrallinie des urspr¨ unglichen Spektrums liefert somit Beitr¨ age an mehrere nebeneinander liegende Spektrallinien der DFT. Die Breite des Hauptlappens bestimmt
4.2
Sch¨ atzung des Kurzzeitspektrums
65
Rechteckfenster
Rechteckfenster
1
[dB]
0 −20 −40 −60
0
0
10
20
30
−80 −0.5 f
40
s
Hamming−Fenster
0
0.5 f
s
Hamming−Fenster
1
[dB]
0 −20 −40 −60
0
0
10
20
30
−80 −0.5 fs
40
Hanning−Fenster
0
0.5 fs
Hanning−Fenster
1
[dB]
0 −20 −40 −60
0
0
10
20 Abtastwerte
30
40
−80 −0.5 fs
0 Frequenz
0.5 fs
Abbildung 4.3. Gebr¨ auchliche Fensterfunktionen und ihre Spektren. Im Zeitbereich sind
die Fensterfunktionen mit einer L¨ ange von 40 Abtastwerten gezeichnet, im Frequenzbereich sind sie im Intervall [−fs /2, +fs /2] mit hoher Frequenzaufl¨ osung (vergl. Abschnitt 4.2.4) dargestellt.
somit das spektrale Aufl¨ osungsverm¨ ogen der DFT. Bei einem Rechteckfenster der L¨ ange N Ts ist die Breite des Hauptlappens (der Abstand zwischen oglichst hohe spektraden zwei Nullstellen) durch 2fs /N gegeben. Um eine m¨ le Aufl¨ osung zu erreichen, muss also das Analysefenster m¨ oglichst lang sein. ¨ Durch ein langes Analysefenster werden aber schnelle Anderungen im Spektrum ausgemittelt und k¨ onnen somit nicht mehr detektiert werden. Die Wahl der L¨ ange des Analysefensters h¨ angt davon ab, ob man der spektralen oder der zeitlichen Aufl¨ osung mehr Gewicht beimisst. Der zweite unerw¨ unschte Effekt der Multiplikation mit der Fensterfunktion, das Lecken (engl. leakage), wird durch die Nebenlappen des Spektrums der Fensterfunktion hervorgerufen. Diese f¨ uhren dazu, dass neue Spektrallinien ausserhalb des Hauptlappens im abgetasteten Spektrum entstehen. Der Leckeffekt l¨ asst sich nicht durch die L¨ ange des Fensters ver¨ andern, sondern durch dessen Form. Beim Rechteckfenster ist die H¨ ohe des ersten Nebenlappens 13 dB unter dem Maximum des Hauptlappens.
66
4. Analyse des Sprachsignals
In Abbildung 4.3 sind nebst dem Rechteckfenster zwei weitere oft verwendete Fensterfunktionen mit ihren Spektren dargestellt. Das in der Sprachverarbeitung am h¨ aufigsten verwendete Fenster ist das sogenannte Hamming-Fenster, das wie folgt definiert ist: 0 ≤ n ≤ N −1 0.54 − 0.46 cos N2πn −1 w(n) = (16) 0 sonst. Dieses weist zwar gegen¨ uber dem Rechteckfenster einen etwa doppelt so breiten Hauptlappen auf, daf¨ ur ist die D¨ ampfung der Nebenlappen mit 41 dB wesentlich besser. In der Sprachverarbeitung ebenfalls gebr¨ auchlich ist das Hanning-Fenster mit der Definition 0 ≤ n ≤ N −1 0.5 − 0.5 cos N2πn −1 w(n) = (17) 0 sonst. Ein detaillierter Vergleich dieser und weiterer Fensterfunktionen ist in [18] zu finden. Wie sich die eingesetzte Fensterfunktion auf die Sch¨ atzung des Spektrums eines Sprachsignals auswirkt, ist in Abbildung 4.4 zu sehen. In diesem Beispiel ist der Unterschied zwischen den st¨ arksten und den schw¨ achsten Frequenzkomponenten ziemlich gross. Deshalb bewirkt das Lecken des Rechteckfensters, dass die schwachen Frequenzkomponenten im Bereich zwischen 1500 und 3500 Hz nicht ersichtlich sind. Es kann insbesondere nicht entschieden werden, welche relativen Maxima auf eine im Signal vorhandene Komponente hinweisen und welche bloss durch das Lecken der starken Komponenten entstanden sind. Nur bei den st¨ arksten Komponenten ist das harmonische Muster erkennbar, das aufgrund der Signalperiode zu erwarten ist. Wird jedoch ein Hamming-Fenster verwendet, dann sind zwar die Frequenzkomponenten st¨ arker verschmiert, aber immer noch problemlos zu unterscheiden. Insbesondere die schwachen harmonischen Frequenzkomponenten sind viel besser ersichtlich. F¨ ur eine wirklich gute Sch¨ atzung der spektralen Zusammensetzung sind ausser der passenden Fensterfunktion jedoch noch weitere Massnahmen erforderlich (siehe Anhang B).
4.2.4 Die Frequenzaufl¨ osung der DFT Die spektrale Aufl¨ osung der DFT einer N Abtastwerte langen Sequenz beosung tr¨ agt fs /N , wobei fs die Abtastfrequenz ist. Um eine hohe Frequenzaufl¨ ahlt werden. W¨ ahrend dies zu erhalten, muss also N entsprechend gross gew¨ bei station¨ aren Signalen oder solchen mit sehr langsam ver¨ anderlicher spektraler Charakteristik problemlos m¨ oglich ist, muss bei Sprachsignalen ein an¨ derer Weg beschritten werden. Dieser beruht auf der folgenden Uberlegung.
4.2
Sch¨ atzung des Kurzzeitspektrums
67
0.5
0
−0.5
1.25
1.26
1.27
1.28
1.29
1.3
[s]
1.31
30 [dB] 20 10 0 −10 −20 −30
0
500
1000
1500
2000
2500
3000
3500 [Hz] 4000
0
500
1000
1500
2000
2500
3000
3500 [Hz] 4000
30 [dB] 20 10 0 −10 −20 −30
Abbildung 4.4. Aus dem grau hinterlegten Signalabschnitt des Lautes [o] ermittelte Spektren unter Verwendung eines Rechteck- bzw. eines Hamming-Fensters (Mitte bzw. unten)
Die DFT der Sequenz x(n) = x0 , x1 , . . . , xN −1 liefert die spektralen Weragt die te X(k) = X0 , X1 , . . . , XN −1 , und mit der Abtastfrequenz fs betr¨ anspektrale Aufl¨ osung fs /N . Wird nun obige Sequenz mit Nullen auf die L¨ anzt (das Erg¨ anzen mit Nullen wird im Engge von 2N Abtastwerten erg¨ lischen als zero padding bezeichnet), dann entsteht die Sequenz x (n) = x0 , x1 , . . . , xN −1 , 0, 0, . . . , 0, deren Abtastfrequenz nach wie vor fs ist. Die osung DFT von x (n) liefert X (k) = X0 , X1 , . . . , X2N −1 . Die spektrale Aufl¨ agt fs /(2N ), ist also gegen¨ uber X(k) verdoppelt. von X (k) betr¨
68
4. Analyse des Sprachsignals 0.65−kHz−Signal 1 0 −1
0
1
2
3
4 [ms] 5
40−Punkt−Fouriertransformation 0 [dB] −20
Max: −7.1048 dB bei 0.6 kHz
−40 0
1
2
3 [kHz] 4
80−Punkt−Fouriertransformation 0 [dB] −20
Max: −7.0933 dB bei 0.7 kHz
−40 0
1
2
3 [kHz] 4
400−Punkt−Fouriertransformation 0 [dB] −20
Max: −6.264 dB bei 0.66 kHz
−40 0
1
2
3 [kHz] 4
Abbildung 4.5. Aus dem 40 Abtastwerte langen 650 Hz-Sinussignal mit -6 dB (oben) er-
gibt die DFT 40 Frequenzpunkte (zweite Teilabbildung, nur positive Frequenzkomponenten eingezeichnet). Die DFT des mit Nullen auf doppelte L¨ ange erg¨ anzten Signalabschnittes (dritte Teilabbildung) zeigt, dass zwischen den urspr¨ unglichen Werten je ein zus¨ atzlicher Wert ermittelt worden ist. Wird das Signal auf zehnfache L¨ ange mit Nullen erg¨ anzt, ergibt das Maximum der DFT bereits eine viel bessere Sch¨ atzung f¨ ur die Frequenz und die Intensit¨ at des Sinussignals.
Es stellt sich nun die Frage nach dem Zusammenhang von X(k) und X (k). Leicht l¨ asst sich zeigen, dass X(k) = X (2k) gilt:
X (2k) = =
2N −1 n=0 N −1 n=0
x (n)e
−j(2π/(2N ))2kn
=
N −1
x(n)e−j(2π/(2N ))2kn
n=0
x(n)e−j(2π/N )kn = X(k) ,
0≤k
4.2
Sch¨ atzung des Kurzzeitspektrums
69
Alle Frequenzpunkte von X(k) sind somit in X (k) enthalten, wie dies in Abbildung 4.5 mit einer 40- und einer 80-Punkt-DFT illustriert wird. Weil mit dem Erg¨ anzen von Nullen die spektrale Aufl¨ osung der DFT vergr¨ ossert werden kann, wird hier oft von “hochaufl¨ osender Fouriertransformation” gesprochen, insbesondere dann, wenn die Anzahl der Nullen viel gr¨ osser ist als die Zahl der Signalabtastwerte. Zu bedenken ist jedoch, dass das Resultat der hochaufl¨ osenden DFT nicht zwangsl¨ aufig besser ist als die normale DFT. In beiden F¨ allen wird n¨ amlich implizit angenommen, dass das Signal periodisch ist: Bei der normalen DFT ist die angenommene Periodizit¨ at gleich dem N Abtastwerte langen Signalabschnitt; bei der hochaufl¨ osenden DFT geh¨ oren die Nullen auch zur Periode. Bei zweckm¨ assiger Wahl der Fensterfunktion (Form und L¨ ange) kann mit der hochaufl¨ osenden DFT die spektrale Zusammensetzung eines Signals recht genau ermittelt werden. Bei einem Signal mit einer einzigen Sinuskomponente ist dies einfach (vergl. Abbildung 4.5). Bei einem Sprachsignal sind jedoch noch weitere Punkte zu beachten, die im Abschnitt B.3 erl¨ autert werden.
4.2.5 Zeitabh¨ angige Fouriertransformation Um f¨ ur ein nicht oder quasi-station¨ ares Signal den zeitlichen Verlauf des Kurzzeitspektrums zu erhalten, wird das Analysefenster u ¨ ber das Signal geschoben, wie dies in Abschnitt 4.1 beschrieben ist. Die zeitabh¨ angige Fouriertransformation, also die DFT an der Stelle n des Signals unter Verwendung einer N Abtastwerte langen Fensterfunktion w(n) ist somit gegeben durch X(n, k) =
n+N −1
w(m−n) x(m) e−j(2π/N )km .
(18)
m=n
Die Fensterfunktion w(m−n) bestimmt den Signalausschnitt, der zum Zeitpunkt n analysiert wird. X(n, k) ist somit eine Funktion der beiden Variablen n und k , welche die diskrete Zeit bzw. die diskrete Frequenz darstellen. Das durch Gleichung (18) definierte Spektrum kann auf zwei Arten interpretiert werden. Wird die zeitabh¨ angige Fouriertransformation f¨ ur ein fixes n betrachtet, dann verwenden wir die Bezeichnung Xn (k), womit die gew¨ ohnliche Fouriertransformation des mit der Fensterfunktion multiplizierten Signalabschnittes x(m) w(m−n) gemeint ist. Betrachtet man die zeitabh¨ angige Fouriertransformation f¨ ur ein fixes k , wir bezeichnen sie dann mit Xk (n), so beschreibt die Gleichung (18) die Faltung der Fensterfunktion w(n) mit dem Signal xk (n) = x(n) e−j(2π/N )kn . Das Signal xk (n) entsteht aus x(n), indem es mit dem komplexen Signal e−j(2π/N )kn multipliziert wird, was einer Modulation entspricht, die alle Frequenzkomponenten des Signals um fk = −fs (k/N ) verschiebt.
70
4. Analyse des Sprachsignals xk(n)
x(n)
* w(m)
Xk(n)
e-j2πfkn Abbildung 4.6. Die zeitabh¨ angige Fouriertransformation f¨ ur eine fixe Frequenz fk ent-
spricht der Filterung des mit dem komplexen Tr¨ agersignal e−j(2πfk )n modulierten Signals x(n). Sowohl xk (n) als auch Xk (n) sind komplexwertig.
Die Faltung von w(n) mit dem Signal xk (n) entspricht der Filterung des ¨ Signals xk (n) mit dem Filter w(n), also einem Tiefpassfilter, dessen Ubertragungsfunktion durch die Fensterfunktion gegeben ist (siehe Fig. 4.3). Diese anBetrachtungsweise ist f¨ ur ein k in Abbildung 4.6 dargestellt. Die zeitabh¨ gige DFT kann somit auch als Filterbank mit N Filtern betrachtet werden, deren Mittenfrequenzen fk = fs (k/N ), k = 0, 1, . . . , N −1 sind und deren Bandbreite durch die Fensterfunktion bestimmt wird. Die DFT stellt demzufolge eine spezielle Art von Filterbank dar, bei der die Bandpassfilter gleichm¨ assig auf den zu analysierenden Frequenzbereich verteilt sind. Man nennt sie deshalb eine uniforme Filterbank. Generell kann man durch die Parallelschaltung von Bandpassfiltern, wie in Abbildung 4.7 dargestellt, beliebige Filterb¨ anke zusammenstellen. Das k -te Bandpassfilter hat dabei die Impulsantwort hk (n) mit der Mittenfrequenz fk und der Bandbreite Δfk . Die Mittenfrequenzen und Bandbreiten der einzelnen Filter werden
x(n)
* h1(n)
x1(n)
* h2(n)
x2(n)
* hJ(n)
xJ(n)
Abbildung 4.7. Allgemeine Filterbank mit J Kan¨ alen: Die Filter h1 (n), h2 (n), . . . , hJ (n)
k¨ onnen Durchlassbereiche unterschiedlicher Breite haben, und es sind transversale oder rekursive Filter einsetzbar.
4.3
Sch¨ atzung des Leistungsdichtespektrums
71
normalerweise so gew¨ ahlt, dass sie den gesamten interessierenden Frequenzbereich abdecken. In der Sprachverarbeitung spielen nebst uniformen Filterb¨ anken auch nicht uniforme Filterb¨ anke eine wichtige Rolle, mit denen bestimmte Eigenschaften des menschlichen Geh¨ ors nachgebildet werden (vergl. Abschnitt 4.6.5).
4.3
4.3 Sch¨ atzung des Leistungsdichtespektrums In den vorherigen Abschnitten wurde die Fourieranalyse von periodischen Signalen behandelt. Diese haben ein diskretes Spektrum, dessen Komponenten mittels der (hochaufl¨ osenden) Kurzzeit-DFT gesch¨ atzt werden k¨ onnen. Rauschartige Signale, z.B. Sprachsignale von stimmlosen Lauten, haben kein diskretes Spektrum und werden gew¨ ohnlich mit dem Leistungsdichtespektrum beschrieben. Die Frage ist also, was die Kurzzeit-DFT u ¨ ber das Leistungsdichares, zeitdiskretes tespektrum eines Rauschsignals aussagt. Sei x(n) ein station¨ Zufallssignal und X(k) dessen diskrete Fouriertransformierte
X(k) =
N −1
w(n) x(n) e−j(2π/N )kn ,
(19)
n=0
wobei die Fensterfunktion w(n) den zu analysierenden Signalabschnitt definiert. Aus dieser DFT k¨ onnen wir das Leistungsdichtespektrum des Signalausschnittes an diskreten Frequenzstellen ωk = 2πfs k/N , mit k = 0, 1, . . . , N −1, sch¨ atzen als ˜ k ) = 1 |X(k)|2 , S(ω (20) NU wobei N die L¨ ange des Fensters ist. Mit der Konstanten U wird der Einfluss des Fensters auf die Sch¨ atzung kompensiert: N −1 1 2 U= w (n) N n=0
(21)
Wird f¨ ur w(n) eine Rechteckfensterfunktion angenommen, so nennt man die˜ k ) Periodogramm. Werden andere Fensterfunktionen besen Sch¨ atzwert S(ω n¨ utzt, so spricht man von einem modifizierten Periodogramm. Es l¨ asst sich zeigen (siehe z.B. [18]), dass bei der Wahl von U nach Formel (21) das Periodogramm eine asymptotisch erwartungstreue Sch¨ atzung des Leistungsdichteatzung spektrums an den Stellen ωk ist, d.h. dass der Erwartungswert der Sch¨ dem wahren Wert entspricht, wenn die Fensterl¨ ange N gegen unendlich geht. Die Varianz der Sch¨ atzung ist auch f¨ ur die einfachsten F¨ alle a ¨usserst schwierig zu bestimmen. Es wurde jedoch gezeigt, dass u ¨ ber einen weiten Bereich von
72
4. Analyse des Sprachsignals
Bedingungen die Varianz der Sch¨ atzung f¨ ur N → ∞ gegeben ist durch
˜ k )} P 2 (ωk ) , var{S(ω
(22)
wobei P (ωk ) das wahre Leistungsdichtespektrum von x(n) darstellt. Das heisst, die Standardabweichung der Sch¨ atzung des Leistungsdichtespektrums ossenordnung wie das Leisist auch f¨ ur Fensterl¨ angen N → ∞ in derselben Gr¨ tungsdichtespektrum selbst. Daraus folgt, dass das Periodogramm eine nicht konsistente Sch¨ atzung des Leistungsdichtespektrums liefert, da die Varianz mit wachsender Fensterl¨ ange nicht gegen null strebt (siehe Abbildung 4.8). Die Sch¨ atzung des Leistungsdichtespektrums u ¨ber das Periodogramm kann verbessert werden, indem mehrere unabh¨ angige Periodogramme gemittelt werden. Die Varianz von k gemittelten Periodogrammen ist k -mal kleiner als die eines einzelnen Periodogramms (vergl. Abbildungen 4.8 und 4.9). Soange N → ∞ trotzdem mit erhalten wir f¨ ur k → ∞ und mit einer Fensterl¨ noch eine erwartungstreue und konsistente Sch¨ atzung.
a)
10 [dB] 0 −10 −20 −30
b)
0
500
1000
1500
2000
2500
3000
3500 [Hz] 4000
0
500
1000
1500
2000
2500
3000
3500 [Hz] 4000
10 [dB] 0 −10 −20 −30
Abbildung 4.8. Die Sch¨ atzung des Leistungsdichtespektrums nach Formel (20) weist f¨ ur
ein Rauschsignal (weisses Rauschen mit 0 dB Leistung) eine grosse Varianz auf. Die Vergr¨ osserung des Analysefensters von 300 Abtastwerten (oben) auf 3000 Abtastwerte (unten) ver¨ andert zwar die spektrale Aufl¨ osung, nicht aber die Varianz.
4.4
Autokorrelation
73
10 [dB] 0 −10 −20 −30
0
500
1000
1500
2000
2500
3000
3500 [Hz] 4000
Abbildung 4.9. Die Sch¨ atzung des Leistungsdichtespektrums f¨ ur das gleiche weisse Rau-
schen wie in Abbildung 4.8 ist hier durch Mittelung der Periodogramme aus zehn Abschnitten mit je 300 Abtastwerten gewonnen worden. Die Varianz ist entsprechend reduziert worden.
4.4
4.4 Autokorrelation 4.4.1 Definition der Autokorrelationsfunktion F¨ ur ein energiebegrenztes, zeitdiskretes Signal x(n) ist die Autokorrelationsfolge (AKF) definiert als r(k) =
∞
x(n) x(n+k) .
(23)
n=−∞
F¨ ur periodische Signale sowie f¨ ur station¨ are, stochastische Signale gilt die entsprechende Beziehung:
r(k) = lim
N →∞
N 1 x(n) x(n+k) . 2N + 1
(24)
n=−N
4.4.2 Eigenschaften der Autokorrelationsfunktion F¨ ur die in Formel (23) bzw. (24) definierte AKF r(k) eines zeitdiskreten Signals x(n) gelten folgende Eigenschaften: 1. r(k) = r(−k). 2. |r(k)| ≤ r(0) f¨ ur alle k . 3. r(0) entspricht gem¨ ass (23) und (24) der Energie f¨ ur energiebegrenzte Signale bzw. der mittleren Leistung f¨ ur periodische oder station¨ are, stochastische Signale. 4. Falls x(n) periodisch ist mit Periode P , dann ist auch r(k) periodisch mit derselben Periode (selbstverst¨ andlich ist dann r(k) nach Formel (24) zu berechnen).
74
4. Analyse des Sprachsignals
4.4.3 Kurzzeit-Autokorrelation Um die Kurzzeit-Autokorrelation an der Stelle n eines zeitdiskreten Signals x(n) zu ermitteln, wird durch das Anwenden einer Fensterfunktion ein zeitlich begrenzter Signalabschnitt an der Stelle n ausgeschnitten mit x¯n (m) = x(n+m) w(m) ,
0 ≤ m ≤ N −1 .
(25)
Weil x ¯n (m) energiebegrenzt ist, kann die Kurzzeit-AKF grunds¨atzlich nach Gleichung (23) ermittelt werden. Selbstverst¨ andlich ist es jedoch sinnvoll, die Summationsgrenzen dem Signalabschnitt entsprechend zu setzen, womit sich f¨ ur die Kurzzeit-AKF an der Stelle n die folgende Formel ergibt: N −1−|k|
rn (k) =
x ¯n (m) x ¯n (m+k) ,
|k| < N
(26)
m=0
Es ist leicht zu sehen, dass die Kurzzeit-AKF nach Formel (26) symmetrisch ist. Die Symmetrie ist auch in Abbildung 4.10 ersichtlich, in der das Ermitteln der Kurzzeit-AKF anhand eines synthetischen Signals mit drei Sinuskomponenten illustriert wird. Weil dieses Signal periodisch ist, sollte gem¨ ass Abschnitt 4.4.2 die AKF auch periodisch sein. Dies ist tats¨ achlich der Fall, aber die Amplitude der AKF scheint mit zunehmendem Index |k| abzunehmen. Dies ist aufgrund von Gleichung (26) einleuchtend, weil die obere Summationsgrenze mit |k| abnimmt, also immer weniger Werte aufsummiert werden.
1
x(n) 0 −1
0
50
− xn (m) 0
100
n0
150
200
250
n
1 0 −1
0
20
40
60
20
40
60
m
k
10
rn (k) 0
0 −10 −60
−40
−20
0
k
Abbildung 4.10. Berechnung der Kurzzeit-AKF: Durch Multiplikation des Signals x(n) mit einem Rechteckfenster der L¨ ange N an der Stelle n0 resultiert der zeitbegrenzte Signalabschnitt x ¯n0 (m) und unter Anwendung von Formel (26) die AKF rn0 (k).
4.4
Autokorrelation
75
1
x(n) 0 −1
0
50
100
150
200
250
n
− x(n)
FT
2
|X(f)|
[dB] 20 0 −20 0
0.1
0.2
0.3
FT
0.4
0.5 f
s
−1
10
r′(k) 0 −10 −60
−40
−20
0
20
40
60
80
100
120
k
Abbildung 4.11. Die AKF kann gem¨ ass Gleichung (27) auch mit Fouriertransformation ermittelt werden. Das Resultat ist aber nur dann gleich wie in Abbildung 4.10, wenn eine hochaufl¨ osende Fouriertransformation (vergl. Abschnitt 4.2.4) angewendet wird. Falls genau die N = 64 Abtastwerte (als Punkte gezeichnet) f¨ ur die Fouriertransformation verwendet werden, dann wird implizit angenommen, dass der Signalabschnitt x ¯n0 (m) periodisch fortgesetzt ist (grau gezeichnet) und es resultieren die N Punkte des Leistungsdichtespektrums (nur positive Frequenzen dargestellt) bzw. die N Punkte der AKF, die wiederum mit N periodisch ist (vergl. Abschnitt 4.2.1).
Falls N gross ist, kann die Kurzzeit-AKF effizienter mit Hilfe der Fouriertransformation wie folgt ermittelt werden:
rn (k) = F −1 {|F {¯ xn (m)}|2 } .
(27)
Dies geht aus dem Wiener-Khintchine-Theorem hervor, das grob besagt, dass das Leistungsdichtespektrum und die Autokorrelationsfunktion ein Fourierpaar bilden. Wie aus Abbildung 4.11 jedoch ersichtlich ist, liefert nur eine hochaufl¨ osende Fouriertransformation mit mindestens 2N Punkten das gleiche Resultat wie die Formel (26). In vielen Anwendungen sind die Absolutwerte der Kurzzeit-AKF nicht von alBelange, sondern nur deren Verh¨ altnis zu r(0). Deshalb wird in diesen F¨ len die normierte AKF verwendet, bei der jeder AKF-Koeffizient durch r(0) dividiert wird.
76
4. Analyse des Sprachsignals stimmhafter Signalabschnitt 1
a) 0
−1
0
10
20
30
40
[ms]
50
40
[ms]
50
40
[ms]
50
[ms]
50
normierte AKF des stimmhaften Signalabschnittes 1
b) 0
−1
0
10
20
30
stimmloser Signalabschnitt 1
c) 0
−1
0
10
20
30
normierte AKF des stimmlosen Signalabschnittes 1
d) 0
−1
0
10
20
30
40
Abbildung 4.12. F¨ ur den 50 ms langen, stimmhaften Sprachsignalabschnitt a) resultiert
die AKF b), und aus dem stimmlosen Sprachsignalabschnitt c) ergibt sich die AKF d).
Die Kurzzeit-AKF wird in der Sprachverarbeitung unter anderem verwendet, um festzustellen, ob ein Signalabschnitt stimmhaft ist oder nicht. Ein stimmhafter Signalabschnitt ist (quasi-)periodisch. Aus den im Abschnitt 4.4.2 aufur ein Signal mit Periode gef¨ uhrten Eigenschaften der AKF folgt, dass r(k) f¨ P an den Stellen 0, ±P, ±2P, . . . relative Maxima aufweist. Somit kann die Periode eines Signals anhand der Maxima der AKF bestimmt werden. In der Abbildung 4.12 ist f¨ ur einen stimmhaften und einen stimmlosen Sprachsignalabschnitt je die normierte AKF gezeichnet. Aus der AKF des stimmhaften Abschnittes sieht man aufgrund des gr¨ ossten relativen Maximums (abgesehen vom Nullpunkt), dass das Signal eine Periode T0 von etwa 9.5 ms hat. Die Grundfrequenz des Signals betr¨ agt somit F0 = 1/T0 ≈ 105 Hz. Die aus dem stimmlosen Signalabschnitt in Abbildung 4.12c) ermittelte normierte AKF in Abbildung 4.12d) zeigt keine Hinweise auf eine Signalperiodizit¨ at. Sie f¨ allt relativ schnell auf kleine Werte ab.
4.5
Lineare Pr¨ adiktion
77
4.5
4.5 Lineare Pr¨ adiktion Bei vielen digitalen Signalen sind aufeinander folgende Abtastwerte nicht statistisch unabh¨ angig. Dies trifft auch f¨ ur Sprachsignale zu. Der linearen Pr¨ adiktion liegt die Idee zugrunde, diese Abh¨ angigkeit zu nutzen, indem der n-te Abtastwert des Signals s(n) durch eine gewichtete Summe aus den K vorhergehenden Abtastwerten s(n−1), . . . , s(n−K) vorausgesagt wird. Der pr¨ adizierte Abtastwert s˜(n) ist:
s˜(n) = −
K
ak s(n−k).
(28)
k=1
Das Minuszeichen vor der Summe in Gleichung (28) k¨ onnte grunds¨ atzlich andlich ihr Vorzeiweggelassen werden, wodurch die Werte von ak selbstverst¨ chen wechseln w¨ urden. Um aber den gew¨ ohnlich bei Digitalfiltern verwendeten Vorzeichenkonventionen zu entsprechen, wird der Pr¨ adiktor wie gezeigt adiktors werden auch als definiert. Die Gewichtungskoeffizienten ak des Pr¨ adiktors. LPC-Koeffizienten1 bezeichnet und K als die Ordnung des Pr¨ Mit dem Pr¨ adiktor werden nun N Abtastwerte des Signals s˜(n) generiert, wie ur einen dies in Abbildung 4.13 dargestellt ist. Um die K LPC-Koeffizienten f¨ N Abtastwerte langen Sprachsignalabschnitt s(n) zu bestimmen, k¨onnen N Gleichungen aufgeschrieben werden. Dieses lineare Gleichungssystem ist im Allgemeinen dann eindeutig l¨ osbar, wenn N =K ist. Bei der Anwendung der linearen Pr¨ adiktion in der Sprachverarbeitung ist jedoch der Fall N K von Interesse. Im folgenden Abschnitt wird gezeigt, wie f¨ ur diesen Fall die LPCKoeffizienten bestimmt werden.
4.5.1 Herleitung der LPC-Analyse Ein Pr¨ adiktor der Ordnung K nach Gleichung (28) kann f¨ ur einen N Abtastwerte langen Abschnitt des Sprachsignals s(n) die Abtastwerte i.a. nicht adiktionsfehler l¨ asst sich schreifehlerfrei pr¨ adizieren, wenn N K ist. Der Pr¨ ben als K e(n) = s(n) − s˜(n) = s(n) + ak s(n−k), (29) k=1
f¨ ur n = n0 , . . . , n0 +N −1. Die Pr¨ adiktorkoeffizienten ak sollen nun so bestimmt werden, dass die Energie des Fehlersignals e(n) u ¨ ber den Signalab1
Da die lineare Pr¨ adiktion anf¨ anglich haupts¨ achlich zu Codierungszwecken eingesetzt wurde, hat sich f¨ ur die Bezeichnung linear predictive coding das Akronym LPC durchgesetzt. Dieses kommt nun in vielen Bezeichnungen vor, die mit der linearen Pr¨ adiktion zusammenh¨ angen, auch wenn es dabei nicht um Codierung geht.
78
4. Analyse des Sprachsignals s(n)
K Abtastwerte
Prädiktor ˜ s(n)
N Abtastwerte
Abbildung 4.13. Der Pr¨ adiktor berechnet aus den Abtastwerten s(n−1), . . . , s(n−K) den Abtastwert s˜(n), dann aus s(n), . . . , s(n−K+1) den Abtastwert s˜(n+1) usw. bis zum Abtastwert s˜(n+N −1).
schnitt minimal wird. Die Fehlerenergie betr¨ agt 2 K 2 E= e (n) = ak s(n−k) . s(n) + n
n
(30)
k=1
F¨ ur das Minimum der Fehlerenergie E gilt, dass die partiellen Ableitungen adiktorkoeffizienten eine Nullstelle haben m¨ ussen: von E nach den Pr¨ K ∂E ! =2 ak s(n−k) s(n−i) = 0 , 1 ≤ i ≤ K (31) s(n) + ∂ai n k=1
Aus diesen K Gleichungen mit K Unbekannten erh¨ alt man durch eine einfache Umformung die sogenannten Normalgleichungen: K k=1
ak
n
s(n−k) s(n−i) = −
s(n) s(n−i) ,
1≤i≤K
(32)
n
Die Summationen u ¨ ber n in den Gleichungen (30) und (32) liefern etwas unterschiedliche Ergebnisse, je nachdem, ob die Signalabtastwerte s(n0 −K), . . . , s(n0 −1) gleich null angenommen werden oder nicht. Dadurch
4.5
Lineare Pr¨ adiktion
79
ergeben sich zwei Methoden f¨ ur die L¨ osung der Normalgleichungen (32), die sogenannte Autokorrelationsmethode und die Kovarianzmethode. 4.5.1.1 Autokorrelationsmethode Die Autokorrelationsmethode geht davon aus, dass der zu analysierende Signalabschnitt durch die Multiplikation des Signals mit einer Fensterfunktion entstanden ist und deshalb ausserhalb des Analyseabschnittes null ist. Das zu analysierende Signal wird an der Stelle n ausgeschnitten mit:
s¯n (m) = s(n+m) w(m) ,
0 ≤ n ≤ N −1
(33)
Mit dieser Definition von s¯n (m) k¨ onnen die Normalgleichungen (32) in der folgenden Form aufgeschrieben werden:2 K
r(i−k) ak = −r(i) ,
1≤i≤K.
(34)
k=1
Dabei ist r(i) der i-te Term der (Kurzzeit-)Autokorrelationsfolge
r(i) =
N −1
s¯n (m) s¯n (m+i).
(35)
m=0
Da die Autokorrelationsfolge symmetrisch ist, d.h. r(i) = r(−i), ergibt sich die Matrixformulierung von (34) zu ⎡ ⎡ ⎤ ⎤⎡ ⎤ a1 r(1) r(0) r(1) r(2) · · · r(K−1) ⎢ ⎢ r(2) ⎥ ⎢ r(1) ⎥ r(0) r(1) · · · r(K−2) ⎥ ⎢ ⎢ ⎥ ⎢ a2 ⎥ ⎥ ⎢ ⎢ r(2) ⎥ ⎥ ⎥ r(1) r(0) · · · r(K−3) ⎥ ⎢ a3 ⎥ = − ⎢ (36) ⎢ r(3) ⎥ ⎢ ⎢ ⎢ ⎢ ⎥ ⎥ .. .. .. .. .. ⎦ .. ⎥ ⎣ ⎣ ⎣ ⎦ ⎦ . . . . . . r(K−1) r(K−2) r(K−3) · · · r(0) aK r(K) Die Matrix der (Kurzzeit-)Autokorrelationskoeffizienten r(i) ist eine sogenannte symmetrische Toeplitz-Matrix, da alle Elemente mit gleicher Distanz zur Diagonalen den gleichen Wert haben. F¨ ur das L¨ osen des Gleichungssystems (36) existieren effiziente Algorithmen, welche die spezielle Struktur der symmetrischen Toeplitz-Matrix ausn¨ utzen. Der sogenannte Durbin-Algorithmus z.B. berechnet den Pr¨ adiktor der Ordadiktor der Ordnung i−1. nung i rekursiv aus dem Pr¨ 2
Diese Gleichungen sind in der Statistik unter dem Namen Yule-Walker-Gleichungen bekannt, wobei dort mit den Erwartungswerten der Autokorrelationsfolge gerechnet wird.
80
4. Analyse des Sprachsignals
Initialisation:
i=0 E (0) = r(0) i = i+1
Rekursion:
r(i) +
E
(i−1)
= (1 −
r(i−j)
E (i−1)
= ki = aj
(i−1)
aj
j=1
ki = − (i) ai (i) aj (i)
i−1
(i−1)
+ ki ai−j
ki2 )E (i−1)
1 ≤ j ≤ i−1
.
Dabei werden mit (i) die Gr¨ ossen der i-ten Rekursion bezeichnet. Die Koeffizi(K) enten des Pr¨ adiktors K -ter Ordnung sind schliesslich die aj . Die Parameter ki , i = 1, 2, . . . , K werden als Parcor- (engl. partial correlation) oder Reflexionskoeffizienten bezeichnet (siehe auch Abschnitt 4.5.3). 4.5.1.2 Kovarianzmethode Bei der Kovarianzmethode werden im Gegensatz zur Autokorrelationsmethode die Signalwerte s¯n (m−K), . . . , s¯n (m−1) nicht gleich null angenommen. Die Normalgleichungen f¨ uhren deshalb auf eine Matrixgleichung mit einer Autokovarianzmatrix, die zwar symmetrisch ist, aber keine Toeplitz-Form hat. Der Durbin-Algorithmus l¨ asst sich somit nicht anwenden. Der Vorteil der Kovarianzmethode liegt darin, dass u ¨ ber das ganze Analyur den Pr¨ adiktor seintervall stets die entsprechenden K Signalabtastwerte f¨ verf¨ ugbar sind und die Pr¨ adiktion also genauer ist. Ein wesentlicher Nachteil der Kovarianzmethode liegt darin, dass sie instabile L¨ osungen produzieren ur kann. Sie liefert also unter gewissen Umst¨ anden f¨ ur die a1 , . . . , aK Werte, f¨ welche H(z) = 1/A(z) nicht ein stabiles Filter ist, was bei der Anwendung in Abbildung 4.14 zu Problemen f¨ uhrt. In der Sprachverarbeitung wird f¨ ur die L¨ osung der Normalgleichungen praktisch ausschliesslich die Autokorrelationsmethode verwendet. Deshalb wird hier auf eine weitere Diskussion der Kovarianzmethode verzichtet. Interessierte Leser werden auf die einschl¨ agige Literatur verwiesen, z.B. [23].
4.5.2 Sprachmodellierung mittels linearer Pr¨ adiktion Aus der Gleichung (29) ergibt sich unter Anwendung der z-Transformation (siehe Anhang A.3) die folgende Beziehung zwischen dem Sprachsignal und dem Pr¨ adiktionsfehler: E(z) = S(z) +
K k=1
ak z −k S(z) =
K k=0
ak z −k S(z) = A(z)S(z),
(37)
4.5
Lineare Pr¨ adiktion
s(n)
A(z)
ak
e(n)
81
Quantisierung & Codierung
˜ e(n) Decodierung
˜ H(z)
˜ s(n)
a˜ k
LPCAnalyse
¨ Abbildung 4.14. Effiziente Ubertragung eines Sprachsignals mittels linearer Pr¨ adiktion
¨ wobei a0 = 1 ist. Umgekehrt kann mit der inversen Ubertragungsfunktion von A(z) aus dem Fehlersignal wieder das Sprachsignal erzeugt werden, also
S(z) =
1 E(z) = H(z)E(z). A(z)
(38)
Da in der Gleichung (38) das Sprachsignal mit dem Filter H(z) “resynthetisiert” wird, bezeichnet man dieses als Synthesefilter. A(z) wird als inverses Filter bezeichnet und die Operation in Gleichung (37) dementsprechend als inverse Filterung. Mit der Serienschaltung von inversem Filter und Synthesefilter in Abbildung 4.14 ist selbstverst¨ andlich hinsichtlich Codierung im Sinne von Datenreduktion noch nichts gewonnen. Im Gegenteil, zus¨ atzlich zum Fehlersignal e(n) m¨ ussen nun noch f¨ ur jedes Analyseintervall die ak u ¨ bertragen werden. Erst bei genauerem Betrachten der zu u ossen stellt man fest, dass ¨ bertragenden Gr¨ bei der Codierung in Abbildung 4.14 die Datenmenge sehr stark reduziert asst sich sehr stark komwerden kann. Insbesondere das Fehlersignal e(n) l¨ primieren. Aus den Abbildungen 4.15 und 4.16 ist ersichtlich, dass das LPC¨ Spektrum (Betrag der Ubertragungsfunktion des Synthesefilters H(z)) mit zunehmender Pr¨ adiktorordnung die Enveloppe des DFT-Spektrums des gegebenen Sprachsignalabschnittes besser approximiert. F¨ ur das Fehlersignal, das aus der inversen Filterung in Gleichung (37) resultiert, bedeutet dies, dass bei gen¨ ugend hoher Pr¨ adiktorordnung K das DFT-Spektrum des Fehlersignals eine ungef¨ ahr ebene Enveloppe erh¨ alt, wie dies Abbildung 4.17 zeigt. Weiter ist zu sehen, dass der Pr¨ adiktionsfehler f¨ ur einen stimmhaften Sprachat aufweist. signalabschnitt mit der Grundfrequenz F0 die gleiche Periodizit¨ Dies muss selbstverst¨ andlich so sein, weil e(n) durch eine lineare Filterung aus s(n) entstanden ist und deshalb dieselben harmonischen Frequenzkomponenten aufweisen muss wie das Sprachsignal selbst. Bloss die Amplituden dieser Komponenten k¨ onnen sich ¨ andern. Dementsprechend muss e(n) rauschartig sein, wenn der zugeh¨ orige Sprachsignalabschnitt stimmlos ist.
82
4. Analyse des Sprachsignals
Betrag des Signalspektrums und der Übertragungsfunktion von H(z) 20 [dB] 10
Ordnung des Prädiktors: 4
0 −10 −20
0
500
1000
1500
20 [dB] 10
2000
2500
3000
3500 [Hz] 4000
Ordnung des Prädiktors: 8
0 −10 −20
0
500
1000
1500
20 [dB] 10
2000
2500
3000
3500 [Hz] 4000
Ordnung des Prädiktors: 12
0 −10 −20
0
500
1000
1500
20 [dB] 10
2000
2500
3000
3500 [Hz] 4000
Ordnung des Prädiktors: 16
0 −10 −20
0
500
1000
1500
2000
2500
3000
3500 [Hz] 4000
Abbildung 4.15. Mit zunehmender Ordnung K approximiert das LPC-Spektrum, also
¨ der Betrag der Ubertragungsfunktion des Filters H(z) die Enveloppe des DFT-Spektrums des Vokals [a] besser.
4.5
Lineare Pr¨ adiktion
83
Betrag des Signalspektrums und der Übertragungsfunktion von H(z) 20 [dB] 10
Ordnung des Prädiktors: 4
0 −10 −20
0
500
1000
1500
20 [dB] 10
2000
2500
3000
3500 [Hz] 4000
Ordnung des Prädiktors: 8
0 −10 −20
0
500
1000
1500
20 [dB] 10
2000
2500
3000
3500 [Hz] 4000
Ordnung des Prädiktors: 12
0 −10 −20
0
500
1000
1500
20 [dB] 10
2000
2500
3000
3500 [Hz] 4000
Ordnung des Prädiktors: 16
0 −10 −20
0
500
1000
1500
2000
2500
3000
3500 [Hz] 4000
Abbildung 4.16. Mit zunehmender Ordnung K approximiert das LPC-Spektrum, also
¨ der Betrag der Ubertragungsfunktion des Filters H(z) die Enveloppe des DFT-Spektrums des Konsonanten [s] besser.
84
4. Analyse des Sprachsignals
a)
stimmhaftes Signal 1
s(n) 0
−1 1
−10
0
10
20
Spektrum
30 [ms] 40 −20
− s(n)
[dB] 0
−40 −60
−1
0
1
10
20
30 [ms]
0
1
2
3 [kHz] 4
0
1
2
3 [kHz] 4
−20
e(n)
[dB] 0
−40 −60
−1
0
b)
10
20
30 [ms]
stimmloses Signal 0.5
s(n) 0
−0.5 0.5
−10
0
10
20
Spektrum
30 [ms] 40 −20
− s(n)
[dB] 0
−0.5 0.5
−40 −60 0
10
20
30 [ms]
0
1
2
3 [kHz] 4
0
1
2
3 [kHz] 4
−20
e(n)
[dB] 0
−0.5
−40 −60 0
10
20
30 [ms]
Abbildung 4.17. Darstellung des Pr¨ adiktionsfehlers f¨ ur einen stimmhaften (a) und einen
stimmlosen (b) Signalabschnitt. Auf der linken Seite zeigen je drei Teilabbildungen das mit 8 kHz abgetastete Sprachsignal (oben), der mit einem 30 ms langen Hamming-Fenster multiplizierte Signalabschnitt (Mitte) und das Fehlersignal des Pr¨ adiktors 12. Ordnung (unten). Auf der rechten Seite ist jeweils das Spektrum des daneben stehenden Signalabschnittes gezeichnet. Daraus ist ersichtlich, dass das Fehlersignal eine ungef¨ ahr ebene Enveloppe aufweist. Diese wird umso ebener, je h¨ oher die Ordnung des Pr¨ adiktors ist.
4.5
Lineare Pr¨ adiktion
85
Prädiktionsfehlersignal
normierte AKF
0.2
1 Max = 0.55 @ 9.1ms 0.5
T
VU
0
= 0.3
0 −0.2
0
5
10
15
20
25 [ms] 30
0.2
−0.5
0
10
[ms]
20
1 Max < T
VU
0.5
TVU = 0.3
0 0 −0.2
0
5
10
15
20
25 [ms] 30
−0.5
0
10
[ms]
20
Abbildung 4.18. Aus dem 30 ms langen Abschnitt des Pr¨ adiktionsfehlersignals e(n) l¨ asst
sich anhand der Autokorrelationsfunktion (nur bis 20 ms gezeichnet) die Periodizit¨ at bestimmen. Das gr¨ osste relative Maximum der normierten AKF im Suchbereich zwischen T0min = 6.25 ms und T0max = 15 ms zeigt an, dass das obere Signal periodisch ist, weil ange der Periode betr¨ agt das Maximum gr¨ osser als der Schwellwert TV U = 0.3 ist. Die L¨ T0 = 9.1 ms, was einer Grundfrequenz von 109.9 Hz entspricht. F¨ ur das untere Signal wird aufgrund des Maximums auf nicht periodisch entschieden.
Das Fehlersignal e(n) eines Analyseabschnittes kann nun durch ein k¨ unstliches Signal ersetzt werden, welches f¨ ur das Geh¨ or gen¨ ugend ¨ ahnlich t¨ ont. Dabei wird insbesondere ber¨ ucksichtigt, dass das Ohr f¨ ur Phasenverschiebungen wenig empfindlich ist. Das angen¨ aherte Signal e˜(n) muss somit eine ebene spektrale Enveloppe haben und die gleiche Periodizit¨ at und Signalleistung aufweisen wie e(n). Somit kann das Eingangssignal des Synthesefilters H(z) in Abbildung 4.14 spezifiziert werden mit:
e˜(n) = G u(n),
(39)
wobei das Signal u(n) die Leistung 1 hat, und G ein Verst¨ arkungsfaktor ist. ⎧ ⎨ T0 /Ts δ(n−mT0/Ts ) falls e(n) periodisch mit T0 /Ts u(n) = m ⎩ N0 sonst (weisses Rauschen) (40) N −1 12 1 G= e2 (n) . N n=0 Die Periode T0 von e(n) kann, wie in Abbildung 4.18 dargestellt, mittels osste der normierten Autokorrelationsfunktion r(j) bestimmt werden. Das gr¨
86
4. Analyse des Sprachsignals F0
Impulsgenerator
a1 . . . aK G Synthesefilter H(z)
~ s(n)
Rauschgenerator Abbildung 4.19. Das LPC-Sprachproduktionsmodell veranschaulicht, wie aus den LPCParametern das Sprachsignal erzeugt wird. Diese Anordnung kann bei entsprechender Steuerung der Gr¨ ossen G, F0 und a1 , . . . , aK in Funktion der Zeit beliebige Sprachsignale produzieren.
relative Maximum von r(j) im Bereich T0min /Ts ≤ j ≤ T0max /Ts wird dabei zweifach eingesetzt: 1. Aufgrund der H¨ ohe des Maximums kann entschieden werden, ob e(n) und amdamit auch s(n) als periodisch, also als stimmhaft zu betrachten ist, n¨ lich dann, wenn das Maximum die empirische Schwelle TV U u ¨ bersteigt. 2. Der Index j des Maximums liefert die Periodendauer von e(n), n¨ amlich T0 = jTs . Das zu einem Analyseabschnitt geh¨ orige Pr¨ adiktionsfehlersignal e(n) kann also n¨ aherungsweise durch zwei Werte beschrieben werden, n¨ amlich G und F0 = 1/T0 (bzw. F0 = 0, falls e(n) nicht periodisch ist). Dementsprechend sind nur diese Werte zu u ¨ bertragen. Auf der Seite der Decodierung wird ass den Formeln (39) und (40) das Signal e˜(n) erzeugt. aus F0 und G gem¨ Durch Filterung mit dem Synthesefilter resultiert s˜(n), das rekonstruierte Sprachsignal. Diese Art der Sprachsignalrekonstruktion aus den Gr¨ ossen G, F0 und ak , k = 1, . . . , K , die kurz als LPC-Parameter bezeichnet werden, ist in Abbildung 4.19 veranschaulicht. achtliche Mit dem Ersetzen von e(n) durch e˜(n) kann offensichtlich eine betr¨ Datenreduktion (allerdings nicht eine verlustlose) erreicht werden. Wenn zudem die zu u ossen (G, F0 und die a1 , . . . , aK ) optimal quan¨ bertragenden Gr¨ ¨ tisiert werden, dann ben¨ otigt das codierte Sprachsignal f¨ ur die Ubertragung in Abbildung 4.14 nur noch etwa 2–3 kBit/sec.
4.5.3 Interpretation der linearen Pr¨ adiktion Im Abschnitt 1.3.2 ist die Funktion des menschlichen Sprechapparates grob mit den beiden Komponenten Schallproduktion und Klangformung umschrieben worden. Insbesondere f¨ ur die Vokale, bei denen die Stimmlippen den
4.5
Lineare Pr¨ adiktion
87
Schall produzieren und der Vokaltrakt als akustisches Filter den Lautklang formt, ist die Analogie mit dem LPC-Sprachproduktionsmodell in Abbildung 4.19 offensichtlich. Diese Analogie ist in Abbildung 4.20 dargestellt. Es fragt ¨ H(z) des LPC-Synthesefilters auf sich nun, ob von der Ubertragungsfunktion die Form des Vokaltraktes bzw. auf die Stellung der Artikulatoren geschlossen werden kann. Stimmlippen
e(n)
Vokaltrakt (akust. Filter)
s(n)
Pulsgenerator
~ e(n)
LPC-Synthesefilter H(z)
~ s(n)
Abbildung 4.20. Analogie zwischen dem Modell des menschlichen Vokaltraktes (oben) und dem LPC-Sprachproduktionsmodell (unten)
Das Spektrum des Eingangssignals e˜(n) des LPC-Synthesefilters H(z) hat eine ebene Enveloppe. Im von den Stimmlippen erzeugten Signal e(n) sind jedoch die tiefen Frequenzkomponenten viel st¨ arker vorhanden als die hohen. Weil die Spektren der Sprachsignale s(n) und s˜(n) im Wesentlichen gleich sind, m¨ ussen das Vokaltraktfilter und das LPC-Synthesefilter also klar ver¨ schiedene Ubertragungsfunktionen haben. Aufgrund von H(z) ist somit keine Aussage u oglich. Man kann das Modell des ¨ ber die Form des Vokaltraktes m¨ menschlichen Vokaltraktes jedoch wie in Abbildung 4.21 gezeigt erweitern. Mit einem sogenannten Pr¨ aemphase-Filter P (z) wird der Tiefpasscharakter des Signals e(n) von den Stimmlippen so kompensiert, dass das Spektrum alt. Als Pr¨ aemphase-Filter kann ein des Signal e (n) eine ebene Enveloppe erh¨ Transversalfilter erster Ordnung eingesetzt werden:
P (z) = 1 + bz −1 .
(41)
Dabei h¨ angt der optimale Koeffizient b etwas vom Sprecher ab, muss aber im ungef¨ ahr −0.98 sein. Stimmlippen
e(n)
P(z)
e'(n)
Vokaltrakt (akust. Filter)
s'(n)
1 P(z)
s(n)
Abbildung 4.21. Erweitertes Modell des menschlichen Vokaltraktes
Selbstverst¨ andlich entspricht dann das Spektrum des Ausgangssignals s (n) des Vokaltraktes nicht mehr dem Spektrum des Sprachsignals s(n). Um die Pr¨ aemphase zu kompensieren muss noch ein Deemphase-Filter 1/P (z) eingesetzt werden. Aus der Abbildung 4.21 ist nun ersichtlich, dass wir das Signal
88
4. Analyse des Sprachsignals
s (n) verwenden k¨onnen, um mittels der LPC-Analyse das Filter H (z) zu ermitteln, das dem Vokaltraktfilter entspricht. Wenn wir also mit der LPC-Analyse aus dem Sprachsignal die Form des Vokaltraktes sch¨ atzen wollen, dann m¨ ussen wir das Sprachsignal zuerst mit dem onnen Pr¨ aemphase-Filter filtern, weil s (z) = s(z)P (z). Aus dem Signal s (n) k¨ sodann mit dem Durbin-Algorithmus (Seite 80) die Reflexionskoeffizienten ki , i = 1, . . . , K ermittelt werden. Aus den Reflexionskoeffizienten l¨asst sich ein ohrenabaquivalentes akustisches Filter aus K+1 gleichlangen, verlustlosen R¨ ¨ schnitten bestimmen. Die L¨ ange der R¨ ohrenabschnitte betr¨ agt L = c Ts = c/fs , altnis der Querschnittsfl¨ achen wobei c die Schallgeschwindigkeit ist. Das Verh¨ zweier aufeinander folgender R¨ ohrenabschnitte ist gegeben durch die sogenannte Area Ratio: Ai+1 1 − ki = , Ai 1 + ki
1≤i≤K
(42)
Damit ist das in Abbildung 4.22 dargestellte akustische Filter bis auf einen Skalierungsfaktor bestimmt. Der Radius der Segmente wird deshalb im Verh¨ altnis zum ersten Segment (bei der Glottis) angegeben. relativer Radius der Segmente 3
[a]
2 1 0 3
[e]
2 1 0
Röhrensegmente
3
[i]
2 1 0 3
[o]
2 1 0 3
[u]
2 1 0
0
Glottis
10
20
[cm]
30
Lippen
Abbildung 4.22. R¨ ohrenmodell des Vokaltraktes und relativer Radius der Segmente f¨ ur die Vokale [a], [e], [i], [o] und [u]. Die L¨ ange der Segmente betr¨ agt c/8000 = 4.287 cm.
4.6
Homomorphe Analyse
89
4.6
4.6 Homomorphe Analyse 4.6.1 Das verallgemeinerte Superpositionsprinzip Bekanntlich verlangt das Superpositionsprinzip f¨ ur lineare Systeme, dass die Systemantwort auf die Summe zweier Eingangssignale gleich der Summe der Antworten der einzelnen Eingangssignale sein muss. Zudem muss die Systemantwort auf ein Eingangssignal multipliziert mit einer Konstanten gleich der Antwort auf das Eingangssignal allein multipliziert mit derselben Konussen somit die folgenden Gleistanten sein. F¨ ur jedes lineare System T m¨ chungen gelten: T {x1 (n) + x2 (n)} = T {x1 (n)} + T {x2 (n)} T {c · x(n)} = c · T {x(n)}.
(43) (44)
Das verallgemeinerte Superpositionsprinzip schreibt f¨ ur ein System H vor, dass zwei Eingangssignale, welche durch die Operation miteinander verkn¨ upft sind, dieselbe Systemantwort ergeben, wie die einzelnen Systemantworten verkn¨ upft mit der Operation ◦. Zudem muss die Systemantwort von H f¨ ur ein Eingangssignal, auf das eine Konstante mit der Operation angewandt wird, gleich sein wie die Systemantwort auf das Eingangssignal allein, auf welche dieselbe Konstante mit der Operation angewandt wird. Das verallgemeinerte Superpositionsprinzip l¨ asst sich somit schreiben als:
H{x1 (n) x2 (n)} = H{x1 (n)} ◦ H{x2 (n)} H{c x(n)} = c H{x(n)}.
(45) (46)
Systeme, f¨ ur die das verallgemeinerte Superpositionsprinzip gilt, heissen homomorphe Systeme. Lineare Systeme sind somit spezielle homomorphe Systeme, wobei f¨ ur die Operationen und ◦ die Addition, und f¨ ur und die Multiplikation zu setzen ist.
4.6.2 Homomorphe Systeme Die Abbildung 4.23 zeigt ein homomorphes System H[·] (gestrichelt eingetragen) mit der Eingangsoperation und der Ausgangsoperation ◦. Jedes homomorphe System kann so in drei kaskadierte Teilsysteme zerlegt werden, dass das mittlere Teilsystem ein lineares System ist. Das Teilsystem D [·], das die Eingangsoperation auf die Addition abbildet, wird als charakteristisches System f¨ ur die Operation bezeichnet. Dementsprechend ist das Teilsystem D◦−1 [·] das inverse charakteristische System f¨ ur die Operation ◦. Die Teilsysteme D [·] und D◦−1 [·] sind homomorphe Systeme, jedoch spezielle, weil die Ausgangsoperation bzw. die Eingangsoperation die Addition ist.
90
4. Analyse des Sprachsignals
x(n)
+
D [·]
x+(n)
+
+
L [·]
y+(n)
+
D-1 [·]
y(n)
H [·] Abbildung 4.23. Jedes homomorphe System l¨ asst sich in die kanonische Darstellung u ¨ber-
f¨ uhren, d.h. in eine Kaskade von drei Systemen, wobei das mittlere ein lineares System ist.
So wird es m¨ oglich, auf allgemein superponierte Gr¨ ossen x1 (n) x2 (n) → x(n) die bekannten linearen Operationen (insbes. lineare Filter) anzuwenden, in+ dem zuerst x(n) mit dem System D [·] in x+ (n) = x+ 1 (n) + x2 (n) transfor+ miert wird, wo also die Komponenten von x (n) additiv vorliegen. Nach der linearen Operation kann der Ausgang y + (n) mit dem System D◦−1 [·] in y(n) transformiert werden, wobei und ◦ nicht identisch zu sein brauchen. Charakteristisches System f¨ ur die Faltung In der Sprachverarbeitung sind vor allem charakteristische Systeme f¨ ur die Faltung von Interesse. Sie werden beispielsweise zum Gl¨ atten von Spektren und Spektrogrammen (siehe Abschnitt 4.6.4), zur Detektion der Grundperi¨ ode T0 (vergl. Abbildung 4.25) oder zur Kompensation des Ubertragungskanals (siehe Abschnitt 4.6.7) eingesetzt. Ein charakteristisches System f¨ ur die Faltung bildet eine Eingangsfolge x(n) im Zeitbereich in eine Ausgangssequenz c(m) ab, welche als Cepstrum bezeichnet wird. Die Bezeichnung Cepstrum ist ein Wortspiel des englischen Begriffs spectrum. In gleicher Weise wurden auch die Ausdr¨ ucke “quefrency” und “lifter” aus den W¨ ortern “frequency” bzw. “filter” gebildet.
4.6.3 Das DFT-Cepstrum Ein charakteristisches System f¨ ur die Faltung D∗ [·] ist in Abbildung 4.24 dargestellt. Weil dieses charakteristische System f¨ ur die Faltung auf der diskreten Fouriertransformation basiert, wird es zur Unterscheidung von anderen Arten der Ermittlung genauer DFT-Cepstrum genannt. Aus einem Signalabschnitt x(n) mit N Abtastwerten wird das DFT-Cepstrum folgendermassen ermittelt (vergl. Abbildung 4.24): X(k) =
N −1
x(n) e−j(2π/N )kn
0 ≤ k ≤ N −1
(47)
n=0
X + (k) = log{X(k)}
(48)
4.6
Homomorphe Analyse
+
* x(n)
91
*
• DFT
X(k)
•
+ Log
X+(k)
+
+ DFT-1
c(m)
D [·] * Abbildung 4.24. Charakteristisches System f¨ ur die Faltung, basierend auf der diskreten
Fouriertransformation N −1 1 + c(m) = X (k) ej(2π/N )km N
0 ≤ m ≤ N −1.
(49)
k=0
Je nachdem, ob als Argument des Logarithmus die komplexwertige Folge X(k) eingesetzt wird (wie dies in Gleichung (48) der Fall ist) oder der Betrag des Arguments (Betragsspektrum), resultiert das komplexe oder das reelle DFT-Cepstrum. Zur Berechnung des komplexen Cepstrums wird die “wirkliche” Phase von X(k) ben¨otigt. Da jedoch aus der DFT die Phase nur bis auf ein ganzzahliges atzt werden, was Vielfaches von 2π resultiert, muss die wirkliche Phase gesch¨ oft schwierig ist. In der Sprachverarbeitung wird deshalb u ¨berall dort das reelle Cepstrum verwendet, wo die Kurzzeitphase sowieso nicht von Bedeutung ist, beispielsweise in der Spracherkennung. Weil das Cepstrum die inverse Fouriertransformierte des logarithmierten Spektrums ist, und die DFT und ihre Inverse bis auf eine Konstante formal gleich sind, ergibt sich, dass die cepstralen Koeffizienten mit den niedrigen Indizes (tiefe “Quefrenz”) die Grobstruktur des Spektrums beschreiben, w¨ ahrend die Koeffizienten mit h¨ oheren Indizes die Feinstruktur repr¨ asentieren. Somit beschreiben die cepstralen Koeffizienten mit tiefen Indizes im Wesentlichen die Klangformung und damit die Charakteristik des Vokaltrakts, w¨ ahrend die Koeffizienten mit h¨ oheren Indizes das Anregungssignal spezifizieren. Im cepstralen Bereich lassen sich also die Komponenten Signalproduktion und Klangformung, die gefaltet das Sprachsignal ergeben, n¨ aherungsweise wieder trennen. Eine bemerkenswerte Eigenschaft des Cepstrums ist die folgende: Da der Koeffizient c(0) dem Mittelwert des logarithmierten Spektrums und somit dem Logarithmus der Signalenergie entspricht, ist er von der Aussteuerung oder Skalierung des Signals abh¨ angig, die h¨ oheren Koeffizienten jedoch nicht.
92
4. Analyse des Sprachsignals
4.6.4 Cepstrale Gl¨ attung Eine in der Sprachverarbeitung oft eingesetzte homomorphe Verarbeitung ist die cepstrale Gl¨ attung, wie sie Abbildung 4.25 veranschaulicht. Sie wird dann angewendet, wenn nicht das Amplituden- oder das Leistungsdichtespektrum selbst von Interesse ist, sondern nur der grobe Verlauf des Spektrums. F¨ ur die cepstrale Gl¨ attung eines Spektrums X(k), mit k = 0, . . . , N −1, wird der Betrag des Spektrums logarithmiert, mit der inversen DFT das zugeh¨ orige Cepstrum berechnet, dieses mit einem cepstralen Fenster multipliziert und darauf schliesslich die DFT angewendet. Das cepstrale Fenster hat die Form: ⎧ ur 0 ≤ m ≤ L c ⎪ ⎨ 1 f¨ wc (m) = 0 f¨ (50) ur Lc +1 ≤ m ≤ N −Lc −1 ⎪ ⎩ 1 f¨ ur N −Lc ≤ m ≤ N −1. ¨ Uber die L¨ ange des cepstralen Fensters Lc kann eingestellt werden, wie stark attung schw¨ ader Gl¨ attungseffekt sein soll: Mit zunehmendem Lc wird die Gl¨ cher. Wie im Abschnitt 4.2.3 erl¨ autert worden ist, resultiert durch das Reduzieren der L¨ ange des Analysefensters bei der Fouriertransformation auch eine Art Gl¨ attung des Spektrums, weil der Schmiereffekt der Fensterfunktion zunimmt. So entsteht bei der Verwendung eines kurzen Analysefensters das Breitbandspektrogramm von Abbildung 3.8, bei dem die harmonische Struktur verschwindet. Das Problem dabei ist, die Fensterl¨ ange so weit zu verk¨ urzen (ausgehend vom Schmalbandspektrogramm), dass einerseits die Harmonischen (Rippel in Frequenzrichtung) nicht mehr sichtbar sind, und andererseits die Periode des Signals (Rippel in Zeitrichtung) noch nicht erscheint. Wie das Beispiel in Abbildung 3.8 zeigt, ist dies nur schlecht m¨ oglich. Die cepstrale Gl¨ attung bietet den Vorteil, dass die L¨ ange des Analysefensters und die St¨ arke der Gl¨ attung voneinander unabh¨ angig u ossen N ¨ ber die Gr¨ und Lc (mit der Einschr¨ ankung, dass Lc < N/2 sein muss) gesteuert werden k¨ onnen. Im Abschnitt 4.5.2 haben wir gesehen, dass auch u adikti¨ ber die lineare Pr¨ on ein gegl¨ attetes Spektrum eines Signalabschnittes ermittelt werden kann, ¨ n¨ amlich der Betrag der Ubertragungsfunktion des Synthesefilters H(z), den wir als LPC-Spektrum bezeichen. Wie die Abbildungen 4.15 und 4.16 zeigen, bestimmt dabei die Ordnung des Pr¨ adiktors die St¨ arke der Gl¨ attung. Es stellt sich somit die Frage, was der Unterschied zwischen dem LPC-Spektrum und dem cepstral gegl¨ atteten DFT-Spektrum ist. In Abbildung 4.26 wird dieser Unterschied veranschaulicht, wobei haupts¨ achlich zwei Eigenheiten auffallen: Die erste betrifft die Lage der Kurven. Das LPC-Spektrum liegt h¨ oher als das cepstral gegl¨ attete DFT-Spektrum. Der Grund ist, dass
4.6
Homomorphe Analyse
93
Signal 1 0 −1
0
0.01
0.02
0.03
0.04
[s]
0.05
0.02
[s]
0.025
Cepstrum 0.4 c(0) = −0.6291
0.3
c(73)
0.2 0.1 0 −0.1
0
0.005
0.01
0.015
DFT des Cepstrums 40
Lc = 0 Lc = 20
[dB] 20 0 −20 −40
0
1000
2000
3000
[Hz]
4000
Abbildung 4.25. Vom mit 8 kHz abgetasteten Sprachsignalabschnitt (oben) ist in der
Mitte das reelle DFT-Cepstrum aufgetragen (c(0) hat einen grossen, negativen Wert und ist deshalb nicht eingezeichnet worden). Der Wert von c(73) zeigt an, dass das Signal eine starke Komponente mit der Periode 73 Ts aufweist, also stimmhaft ist. Im unteren Teil der Abbildung ist der Zusammenhang zwischen dem Spektrum des Signals (Betrag in dB), der Fouriertransformierten von c(0) (punktiert) und der Fouriertransformierten des begrenzten Cepstrums cL (m) = c(m)·wc (m) dargestellt, wobei wc (m) ein cepstrales Fenster der L¨ ange Lc = 20 Ts = 2.5 ms ist (vergl. Formel 50).
die cepstrale Gl¨ attung auf dem logarithmierten Spektrum erfolgt, die LPCApproximation jedoch im linearen Bereich. Der zweite Unterschied liegt in der Form der Kurven. Beim LPC-Spektrum sind die relativen Maxima in der Regel deutlich schmaler als die relativen Minima. Dies ist deshalb so, weil H(z) ein Allpolfilter ist, also nur Pole hat, jedoch keine Nullstellen. Beim cepstral gegl¨ atteten DFT-Spektrum ist die Form der relativen Maxima und Minima gleich.
94
4. Analyse des Sprachsignals 40 DFT−Spektrum LPC−Spektrum gegl. Spektrum
[dB] 20 0 −20 −40
0
1000
2000
3000
[Hz]
4000
Abbildung 4.26. DFT-Spektrum des Sprachsignalabschnittes von Abbildung 4.25, zuge-
h¨ origes LPC-Spektrum der Ordnung K = 16 und mit einem cepstralen Fenster der L¨ ange Lc = 16 Ts = 2 ms gegl¨ attetes Spektrum
4.6.5 Das Mel-Cepstrum In der Spracherkennung wird anstatt des DFT-Cepstrums h¨ aufig auch das sogenannte Mel-Cepstrum verwendet. Das Mel-Cepstrum wird nicht direkt aus dem Fourierspektrum, sondern ausgehend von einer nicht uniformen Filterbank berechnet. Dabei werden die folgenden Erkenntnisse aus der Psychoakustik ber¨ ucksichtigt: Untersuchungen u ohe haben er¨ ber die subjektive Empfindung der Tonh¨ geben, dass die empfundene H¨ ohe eines Tones, die sogenannte Tonheit, sich nicht linear zu dessen Frequenz verh¨ alt. Vielmehr folgt sie u ¨ ber einen weiten Frequenzbereich einem logarithmischen Verlauf. F¨ ur die Tonheit wurde eine neue Skala, die sogenannte Mel-Skala eingef¨ uhrt, auf der die subjektiv wahrgenommene Tonh¨ ohe angegeben ist. Auf dieser Skala ist der Abstand zwischen zwei T¨ onen, die beispielsweise eine Oktave3 Abstand haben, immer gleich gross, unabh¨ angig von der absoluten Frequenz. Als Referenzpunkt wurde dem Ton mit der Frequenz 1000 Hz in [29] willk¨ urlich der Wert 1000 mel auf der Mel-Skala zugeordnet. Andere psychoakustische Experimente haben gezeigt, dass das Geh¨ or die Schallintensit¨ aten von Einzelsignalen in einem schmalen Frequenzbereich zu einer Gesamtintensit¨ at zusammenfasst. Solche Frequenzbereiche werden Frequenzgruppen (engl. critical bands) genannt. Das Geh¨ or bildet u ¨ ber den gesamten H¨ orbereich Frequenzgruppen. Die gemessenen Bandbreiten der Frequenzgruppen ergaben in etwa konstante Werte bis etwa zur Frequenz 500 Hz. Oberhalb von 1000 Hz wurden exponentiell ansteigende Bandbreiten gemessen. 3
In der Musik spricht man von einem Oktavschritt zwischen zwei T¨ onen, wenn sie ein Frequenzverh¨ altnis von 1:2 aufweisen.
4.6
Homomorphe Analyse
95
Tonheit [mel]
3000
2000
1000
0
0
1000
2000
3000
4000 5000 Frequenz [Hz]
6000
7000
8000
Abbildung 4.27. Zusammenhang zwischen der Frequenzskala in Hz und der in der Sprachverarbeitung gebr¨ auchlichen Definition der Mel-Skala nach Formel (51). Der Referenzpunkt ist so festgesetzt, dass die Frequenz 1000 Hz der Tonheit 1000 mel entspricht.
Aufgrund dieser Erkenntnisse wurde vorgeschlagen, das Spektrum nicht u ¨ ber einer linearen Frequenzskala zu betrachten, sondern u ¨ ber einer Mel-Skala. Dieses Spektrum wird als Mel-Spektrum bezeichnet. In der Sprachverarbeitung ist die folgende Skalentransformation gebr¨ auchlich:
h(f ) = 2595 ∗ log10 (1+
f ). 700Hz
(51)
ohe bzw. Dabei bezeichnet f die Frequenz in Hz und h entspricht der Tonh¨ Tonheit in mel (vergl. auch Abbildung 4.27). Prinzipiell kann das Mel-Spektrum aus dem DFT-Spektrum (d.h. aus der Fouriertransformierten X(k), k = 0, . . . , N −1), das ja eine lineare Frequenzskala in Hz aufweist, u ¨ ber die Transformation (51) ermittelt werden. Da die Freange des Analysefensters quenz jedoch im Index k steckt und zudem von der L¨ N abh¨angt, kann die Gleichung (51) nicht direkt eingesetzt werden. In der Sprachverarbeitung wird deshalb das Mel-Spektrum gew¨ ohnlich mit einer Mel-Filterbank, wie sie in Abbildung 4.28 dargestellt ist, aus dem linearen DFT-Spektrum gewonnen. Es wird also eine Frequenzbereichsfilterung durch˘ j der Mel-Filterbank gef¨ uhrt, bei welcher der Ausgang des j -ten Filters H durch die Multiplikation der betreffenden Spektren gewonnen wird. ˘ j (k) , 1 ≤ j ≤ J . S˘j = X(k) · H (52) k
˘ j (k), k = 0, . . . , N −1 selbstverst¨andlich dieselDabei m¨ ussen die Mel-Filter H be Frequenzaufl¨ osung haben wie die Fouriertransformierte des Signals. Da die ˘ j (k) stets passend ermittelt Mel-Filter analytisch gegeben sind, k¨ onnen die H werden. Zu beachten ist, dass sie nicht nur von den Werten von J und N abh¨ angig sind, sondern der Gleichung (51) wegen auch von der Abtastfrequenz.
96
4. Analyse des Sprachsignals
1
0
1000
2000
3000
[Hz]
4000
Abbildung 4.28. Nicht-uniforme Filterbank mit J=24 Filtern f¨ ur die Berechnung des Mel-Spektrums. Die sich u assig auf der Mel-Skala ¨berlappenden Dreieckfilter sind gleichm¨ verteilt. Auf der linearen Frequenzskala werden folglich die Abst¨ ande der Mittenfrequenzen mit zunehmender Frequenz gr¨ osser.
Aus dem mit der Gleichung (52) beschriebenen Mel-Spektrum S˘j , j = 1, . . . , J kann nun das Mel-Cepstrum wie folgt ermittelt werden:
c˘(m) =
J 1 π , (log S˘j ) cos m · (j− 12 ) J j=1 J
0 ≤ m ≤ D,
(53)
unschte Anzahl cepstraler Koeffizienten ist. Da das Betragswobei D die gew¨ spektrum reell und symmetrisch ist, wird hier anstelle der DFT die diskrete Cosinus-Transformation verwendet.
4.6.6 Das Delta-Cepstrum Nebst dem Cepstrum werden in der Sprachverarbeitung auch dessen zeitliche Ableitungen eingesetzt. Die Ableitung wird dabei f¨ ur jeden cepstralen Koeffizienten einzeln ermittelt. Da die Differenz zweier zeitlich aufeinander folgender cepstraler Koeffizienten eine sehr verrauschte Sch¨ atzung der zeitlichen Ableitung liefert, wird meistens eine robustere Sch¨ atzung verwendet. Dazu wird der zeitliche Verlauf der cepstralen Koeffizienten zuerst durch ein Polynom u ¨ ber ein zeitlich begrenztes Intervall von 2L+1 Analyseabschnitten approximiert. Von diesem approximierten Verlauf werden sodann die Ableitungen bestimmt. Die erste zeitliche Ableitung des cepstralen Koeffizienten c(m) zum diskreten Zeitpunkt n ergibt sich mit dieser Approximation aus der Formel L l cn+l (m) Δcn (m) =
l=−L L l=−L
1 ≤ m ≤ D. l
2
(54)
4.6
Homomorphe Analyse
97
Dabei definiert L das zeitliche Fenster, u ¨ ber das die Ableitung approximiert aufig ein Wert zwischen 1 und 3 gew¨ ahlt. Die erste zeitliche wird. F¨ ur L wird h¨ Ableitung des Cepstrums wird auch Delta-Cepstrum genannt. H¨ ohere zeitliche Ableitungen k¨ onnen ebenfalls berechnet werden, indem der zeitliche Verlauf des Cepstrums durch Polynome approximiert wird. H¨ aufig wird aber die zweite zeitliche Ableitung einfach durch nochmaliges Anwenden der Formel (54) auf den zeitlichen Verlauf des Delta-Cepstrums berechnet.
4.6.7 Mittelwertfreie Cepstren F¨ ur ein Sprachsignal s1 (n), das u ¨ ber einen Kanal mit der Impulsantwort g(n) u ¨ bertragen wird, resultiert am Ausgang des Kanals das Signal s2 (n) = ¨ gefals1 (n) ∗ g(n), also das mit der Impulsantwort der Ubertragungsfunktion tete Signal (vergl. Abbildung 4.29). Es fragt sich nun, wie sich g(n) auf das Cepstrum auswirkt, also auf die aus dem Signal s2 (n) ermittelte Folge von Kurzzeit-Cepstren c2j (m) mit den Analyseabschnitten j = 1, 2, . . . und mit den cepstralen Koeffizienten m = 1, . . . , D. Aufgrund des charakteristischen Systems f¨ ur die Faltung in Abbildung 4.24 ist offensichtlich, dass der Faltung s1j (n) ∗ g(n) im Zeitbereich die Multiplikation S1j (k) · G(k) im Frequenzbereich entspricht und diese wiederum der Addition der logarithmierten Spektren log S1j (k) + log G(k) im logarithmierten Frequenzbereich und somit der Addition der Cepstren c1j (m) + cG (m). F¨ ur das Cepstrum eines Analyseabschnittes j des Signals s2 gilt somit: c2j (m) = c1j (m) + cG (m)
(55)
¨ F¨ ur den m-ten cepstralen Koeffizienten bewirkt der Ubertragungskanal also onnte somit das Addieren der Konstanten cG (m). Der Einfluss des Kanals k¨ ur alle Analygrunds¨ atzlich einfach kompensiert werden, indem von c2j (m) f¨ seabschnitte j der Kanaleinfluss cG (m) subtrahiert wird. Da cG (m) jedoch nicht bekannt ist (d.h. nicht aus dem Sprachsignal s2 (n) allein ermittelt werden kann), muss der Einfluss des Kanals auf eine andere Art eliminiert werden, n¨ amlich durch Subtraktion des cepstralen Mittelwertes. Der cepstrale Mittelwert c¯1 (m) u ¨ ber das Signal s1 (n) ergibt sich aus
c¯1 (m) =
J 1 c1j (m) J j=1
(56)
ur das Signal s2 (n) ermittelt. Nun ergibt sich und analog dazu wird c¯2 (m) f¨ aus der Gleichung (55) f¨ ur die cepstralen Mittelwerte
c¯2 (m) = c¯1 (m) + cG (m) .
(57)
98
4. Analyse des Sprachsignals
F¨ ur die mittelwertfreien Cepstren cˇ1j (m) und cˇ2j (m) gilt somit:
cˇ1j (m) = c1j (m) − c¯1 (m) = c2j (m) − cG (m) − c¯1 (m) = c2j (m) − c¯2 (m) = cˇ2j (m) .
(58)
Die mittelwertfreien Folgen von Cepstren der Signale s1 (n) und s2 (n) sind also ¨ gleich, oder anders ausgedr¨ uckt: Der Einfluss des Ubertragungskanals kann eliminiert werden, indem statt der Cepstren die mittelwertfreien Cepstren betrachtet werden, wie dies in Abbildung 4.30 gezeigt wird. ¨ Die Kompensation des Ubertragungskanals setzt eine gen¨ ugend allgemeine Sch¨ atzung des cepstralen Mittelwertes voraus, was in einem konkreten Anwendungsfall oft nur ungenau m¨ oglich ist. Der cepstrale Mittelwert ist nicht ¨ nur vom Ubertragungskanal, sondern auch von der lautlichen Zusammensetzung des Sprachsignals abh¨ angig. Im Beispiel von Abbildung 4.30 spielt dies keine Rolle, weil die Sprachsignale abgesehen vom Kanaleinfluss gleich sind. 1
S1 0 −1 0.5
0.6
0.7
0.8
0.9
[s]
1
15 [dB] 10
G(2πf) 5
0
−5
−10 0
1
2
3
[kHz]
4
1
S
2
0 −1 0.5
0.6 0.7 0.8 0.9 1 [s] ¨ Abbildung 4.29. Das Sprachsignal s1 u ¨ber einen Kanal mit der Ubertragungsfunktion
G(ω) = G(2πf ) u ¨bertragen ergibt das Sprachsignal s2 .
4.6
Homomorphe Analyse
99
c(1)
0.4 0.2 0 −0.2 −0.4 0.5
0.6
0.7
0.8
0.9
1
1.1
1.2
1.3
1.4 [s]
1.5
0.6
0.7
0.8
0.9
1
1.1
1.2
1.3
1.4 [s]
1.5
0.3
c(2)
0.2 0.1 0 −0.1 −0.2 0.5
Abbildung 4.30. F¨ ur das Sprachsignal s1 in Abbildung 4.29 ist der zeitliche Verlauf der
cepstralen Koeffizienten c1 (1) (oben) und c1 (2) (unten) als schwarze Linie aufgetragen. ur das Signal s2 am Ausgang des Kanals Die cepstralen Koeffizienten c2 (1) und c2 (2) f¨ sind grau dargestellt. Im Gegensatz zu den Cepstren fallen die mittelwertfreien Cepstren der beiden Signale s1 (Kreise) und s2 (Kreuze) praktisch zusammen, sind also vom Kanal unabh¨ angig.
In der Spracherkennung hingegen ist das Sprachsignal, mit dem der Erkenner trainiert worden ist, und das zu erkennende Sprachsignal nicht gleich oder sogar v¨ ollig verschieden (insbesondere bei einem auf Lautmodellen basierenden Spracherkenner). In solchen F¨ allen kann es besser sein, nicht mit dem mittelwertfreien Cepstrum, sondern mit dem Delta-Cepstrum zu arbeiten.
4.6.8 Cepstrale Distanz Die verschiedenen Arten von Cepstren haben in der Sprachverarbeitung eine grosse Bedeutung erlangt. F¨ ur die Sprach- und Sprechererkennung werden heute u aufig das Mel-Cepstrum) und davon ab¨ blicherweise das Cepstrum (h¨ geleitete Gr¨ ossen als Merkmale verwendet (siehe Kapitel 10). Sowohl f¨ ur die Sprecher- als auch f¨ ur die Spracherkennung kann ein Vergleich von Sprachmustern eingesetzt werden. Dabei wird der Unterschied zwischen gegl¨ atteten, logarithmierten Spektren (bzw. Spektrogrammen, also Folgen von Kurzzeitspektren) ermittelt. Der Unterschied zwischen zwei logarithmierten Spektren X1+ und X2+ wird uckt als anhand der RMS-Distanz dc ausgedr¨ N −1 2 1 + X1 (k) − X2+ (k) dc = (59) N k=0
100
4. Analyse des Sprachsignals
Die logarithmierten Spektren k¨ onnen durch die entsprechenden Cepstren ausgedr¨ uckt werden:
X + (k) =
N −1
c(m)e−j(2π/N )km
(60)
m=0
Durch Einsetzen von (60) in (59) und Umformen resultiert die euklidische, cepstrale Distanz: N −1 dc = [c1 (m) − c2 (m)]2 (61) m=0
Die Distanz zwischen zwei logarithmierten Spektren kann also auch aus den Cepstren ermittelt werden. Dies ist insbesondere dann interessant, wenn die Distanz zwischen den gegl¨ atteten Spektren gesucht ist. Dann kann auf die unschten Gl¨ attung entsprechendes Cepstren c1 (m) und c2 (m) ein der gew¨ cepstrales Fenster angewendet und anschliessend mit der Formel (61) die Distanz ermittelt werden. Oft ist auch die von der Signalleistung unabh¨ angige Distanz von Interesse. Diese erh¨ alt man, indem c1 (0) und c2 (0) auf null gesetzt werden.
4.7
4.7 Vektorquantisierung Unter Quantisierung versteht man allgemein eine Abbildung, die einen Wert x aus einer sehr grossen oder unendlichen Menge von Werten einem Wert zi aus einer kleinen Menge von Werten zuordnet. Wir bezeichnen im Folgenden diese osse M und die kleine Menge von Werten {z1 , z2 , . . . , zM } als Codebuch der Gr¨ zi als Codebuchwerte bzw. im mehrdimensionalen Fall als Codebuchvektoren. Bei der Quantisierung werden die Schritte Codierung und Decodierung unterschieden. Als Codierung wird die Zuordnung eines Wertes x zu einem Index i ¨ verstanden, als Decodierung die Uberf¨ uhrung des Indexes i auf den entsprechenden Codebuchwert. osse mit einem eindimensionalen Handelt es sich bei x um eine skalare Gr¨ Wertebereich, dann spricht man von skalarer Quantisierung. Ebenfalls um eine skalare Quantisierung handelt es sich, wenn die zu quantisierende Gr¨ osse zwar ein Vektor ist, aber jede Komponente des Vektors einzeln, d.h. von den anderen Komponenten unabh¨ angig quantisiert wird. Bei der Quantisierung einer mehrdimensionalen Gr¨ osse sind die Quantisierungsintervalle Teilbereiche des entsprechenden mehrdimensionalen Wertebereichs. Lassen sich diese Teilbereiche nicht auf eine skalare Quantisierung der einzelnen Vektorkomponenten zur¨ uckf¨ uhren, spricht man von einer Vektorquantisierung.
4.7
Vektorquantisierung
101
Bei der Vektorquantisierung ist es grunds¨ atzlich unerheblich, welcher Zusammenhang zwischen den Komponenten des Vektors besteht. Wichtig ist nur, dass die Vektorquantisierung einen allf¨ alligen Zusammenhang der Komponenten zur effizienteren Darstellung der Information ausn¨ utzt, im Gegensatz zu einer skalaren Quantisierung. Shannon hat bereits 1948 gezeigt, dass die Vektorquantisierung theoretisch immer mindestens gleich effektiv ist wie die skalare Quantisierung. In der Sprachverarbeitung wird die Vektorquantisierung haupts¨ achlich im Bereich der Quellencodierung eingesetzt. So kann beispielsweise bei der in Abbildung 4.14 dargestellten Sprach¨ ubertragung der Vektor der LPC-Koeffizienten ¨ vor der Ubertragung vektorquantisiert und nur der betreffende Codebuchindex u atzlich kann auch das Pr¨ adiktionsfehersignal vek¨ bertragen werden. Zus¨ torquantisiert werden, indem eine Anzahl aufeinander folgender Abtastwerte dieses Signals als Vektor betrachtet wird. Ein anderes Anwendungsgebiet der Vektorquantisierung ist die Spracherkennung. Wenn zur Spracherkennung Hidden-Markov-Modelle mit diskreten Beobachtungswahrscheinlichkeitsverteilungen (siehe Abschnitt 5.1.2.1) eingesetzt werden, dann m¨ ussen die aus der Kurzzeitanalyse des Sprachsignals resultierenden reellwertigen Merkmalsvektoren zuerst in diskrete Symbole umgewandelt werden.
4.7.1 Realisation der Vektorquantisierung Ein Vektorquantisierer f¨ ur D-dimensionale Vektoren unterteilt den D-dimensionalen Wertebereich (bzw. Raum) RD in eine fixe Anzahl Teilbereiche RiD , 1 ≤ i ≤ M , die wir im Folgenden Partitionen nennen. Abbildung 4.31 illustriert, wie ein Vektorquantisierer den zweidimensionalen Raum in M =8 Partitionen unterteilt. Jeder Partition ist ein Prototypvektor zugeordnet, der alle Vektoren in der jeweiligen Partition repr¨ asentiert. Dieser Vektor wird Codebuchvektor genannt. Die Menge der Codebuchvektoren {z1 , z2 , . . . , zM } stellt das Codebuch der Vektorquantisierung dar. Der Vektorquantisierer ordnet einem Vektor x den Codebuchvektor zi derjenigen Partition Ri zu, in welcher x liegt. Man sagt dann, dass x mit zi quantisiert wird. Als Resultat der Vektorquantisierung wird der Index des betreffenden Codebuchvektors ausgegeben, also i. Die Quantisierung des Vektors x mit zi f¨ uhrt im Allgemeinen zu einem Quantisierungsfehler, der Distorsion genannt wird. Um diesen Fehler zu quantifizieren, wird ein Distanzmass eingef¨ uhrt. Es sind verschiedenste Distanzmasse denkbar. Sinnvoll ist hier ein Distanzmass, wenn es die beiden folgenden Bedingungen erf¨ ullt: 0 < d(x, y) < ∞ d(x, x) = 0 .
f¨ ur x = y ,
(62) (63)
102
4. Analyse des Sprachsignals 10 8 6 4 2 0 −2 −4 −6 −8
−10 −10 −8 −6 −4 −2 0 2 4 6 8 10 Abbildung 4.31. Illustration eines Codebuches der Gr¨ osse 8 f¨ ur eine Menge zweidimen-
sionaler Vektoren. Durch das Codebuch wird der zweidimensionale Wertebereich in Teilbereiche (Partitionen) aufgeteilt. Jeder Codebuchvektor ist das Zentroid der Teilmenge von Vektoren, die in der betreffenden Partition liegen.
Ein Distanzmass, das diese zwei Bedingungen erf¨ ullt, wird auch als positiv definit bezeichnet. Das einfachste und auch am h¨ aufigsten verwendete Distanzmass ist die euklidische Distanz D 2 d(x, y) = x − y = (xi − yi )2 . (64) i=1
Ein Vektorquantisierer, der optimal sein soll im Sinne einer minimalen mittleren Distorsion, muss die folgenden beiden Eigenschaften aufweisen: 1. Der Codebuchvektor zi der Partition Ri muss so bestimmt werden, dass die mittlere Distorsion innerhalb der Partition minimal wird. Dieser Vektor wird als Zentroid der Partition bezeichnet. Die Berechnung des Zentroids h¨ angt selbstverst¨ andlich vom gew¨ ahlten Distanzmass ab. F¨ ur die euklidische Distanz entspricht das Zentroid dem Mittelwert(vektor) aller
4.7
Vektorquantisierung
103
Vektoren x1 , x2 , . . . , xL , die in die Partition Ri fallen:
1 xj L j=1 L
zi =
(65)
Es ist zu beachten, dass der Codebuchvektor zi im Allgemeinen nicht im Zentrum der Partition Ri liegt. Viele der Partitionen sind ja auch nicht begrenzt (vergl. Abbildung 4.31). 2. Der Vektorquantisierer muss einen Vektor x demjenigen Codebuchvektor zi zuweisen, f¨ ur den die Distanz zwischen x und zi minimal ist, d.h.
x → zi falls d(x, zi ) ≤ d(x, zj ) ∀j = i , 1 ≤ j ≤ M .
(66)
Der zu quantisierende Vektor x muss also mit allen Codebuchvektoren verglichen werden.
4.7.2 Generieren eines Codebuches Da die Verteilung der zu quantisierenden Vektoren im Normalfall nicht im Voraus bekannt ist, muss das Codebuch aus der H¨ aufigkeitsverteilung einer repr¨ asentativen Stichprobe bestimmt werden. Als Stichprobe, mit der die Vektorquantisierung “trainiert” wird, und die darum auch Menge der Trainingsvektoren oder Trainingsset genannt wird, nimmt man deshalb eine m¨ oglichst grosse Anzahl dieser Vektoren. Es existiert keine analytische L¨ osung zum Bestimmen des Codebuches mit der minimalen mittleren Distorsion f¨ ur eine gegebene Menge von Trainingsvektoren. Aber es gibt verschiedene iterative Verfahren, mit denen zumindest ein relatives Optimum gefunden werden kann. Zwei solche Verfahren werden nachfolgend beschrieben. 4.7.2.1 K-means-Algorithmus Der K-means-Algorithmus4 wird verwendet, um f¨ ur eine gegebene Menge von osse M mit m¨ oglichst kleiner Trainingsvektoren {xk } ein Codebuch der Gr¨ mittlerer Distorsion bez¨ uglich der Trainingsvektoren zu finden. Der Algorithmus besteht aus den folgenden Schritten:
Gegeben:
Trainingsset {xk }.
Gesucht:
Codebuch der Gr¨ osse M mit m¨ oglichst kleiner mittlerer Distorsion bez¨ uglich der Trainingsvektoren.
4 Das K in der Bezeichnung “K-means” deutet die Zahl der gew¨ unschten Partitionen bzw. Codebuchvektoren an. Hier wird jedoch die Gr¨ osse des Codebuchs mit M bezeichnet.
104
4. Analyse des Sprachsignals
Verfahren:
K-means-Algorithmus 1. Initialisierung: Auswahl M beliebiger, verschiedener Vektoren aus dem Trainingsset als Initialcodebuch. 2. Klassierung: Zuordnen jedes Trainingsvektors xk zum Codebuchvektor zi mit der kleinsten Distanz. 3. Aufdatieren des Codebuches: Aus den Trainingsvektoren, die demselben Codebuchvektor zi zugeordnet worden sind, wird der Mittelwertvektor (Zentroid) bestimmt und als neuer Codebuchvektor zi verwendet. ¨ 4. Iteration: Wiederholen der Schritte 2 und 3 bis die Anderung der mittleren Distorsion unter eine vorgegebene Schwelle f¨ allt.
Der K-means-Algorithmus hat das Problem, dass er langsam konvergiert und je nach Anfangsbedingungen (d.h. welche Vektoren aus dem Trainingsset als Initialcodebuch gew¨ ahlt werden) in einem relativ schlechten lokalen Minimum der mittleren Distorsion stecken bleiben kann. 4.7.2.2 LBG-Algorithmus Das Konvergenzproblem wird im Linde-Buzo-Gray-Algorithmus (oder kurz LBG-Algorithmus) entsch¨ arft, indem aus einem Initialcodebuch der Gr¨ osse M =1 (d.h. mit einem einzigen Codebuchvektor) das Codebuch der gew¨ unschten Gr¨ osse schrittweise erzeugt wird. Dabei entsteht jeweils aus einem Codeosse 2M , wie der folgende Algorithmus zeigt buch der Gr¨ osse M eines der Gr¨ (siehe auch Abbildung 4.32):
Gegeben:
Trainingsset {xk }.
Gesucht:
Codebuch der Gr¨ osse M (normalerweise eine 2er-Potenz) mit der lokal minimalen mittleren Distorsion bez¨ uglich der Trainingsvektoren.
Verfahren:
LBG-Algorithmus 1. Initialisierung: Als Codebuch der Gr¨ osse M = 1 wird das Zentroid aller Trainingsvektoren verwendet. 2. Verdoppeln der Anzahl Codebuchvektoren durch Splitting: Aus jedem bestehenden Codebuchvektor werden zwei neue erzeugt, indem ein kleiner Zufallsvektor zum bestehenden Codebuchvektor addiert bzw. von diesem subtrahiert wird. 3. Klassierung: Zuordnen jedes Trainingsvektors xk zum Codebuchvektor zi mit der kleinsten Distanz.
4.7
Vektorquantisierung
105
4. Aufdatieren des Codebuches: Aus den Trainingsvektoren, die demselben Codebuchvektor zi zugeordnet worden sind, wird der Mittelwertvektor (Zentroid) bestimmt und als neuer Codebuchvektor zi verwendet. ¨ 5. Iteration A: Wiederholen der Schritte 3 und 4 bis die Anderung der mittleren Distorsion des Codebuches unter eine vorgegebene Schwelle f¨ allt. 6. Iteration B: Wiederholen der Schritte 2 bis 5 bis das Codebuch die gew¨ unschte Gr¨ osse erreicht hat. Die Schritte 3–5 des LBG-Algorithmus sind die gleichen wie die Schritte 2–4 des K-means-Algorithmus.
10 8
Anzahl Iterationen: 10
6 4 2 0 −2 −4 −6 −8 −10 −10 −8 −6 −4 −2 0 2 4 6 8 10 Abbildung 4.32. Der LBG-Algorithmus erzeugt aus dem Codebuch der Gr¨ osse 8 von
Abbildung 4.31 eines der Gr¨ osse 16: Die Anzahl Codebuchvektoren wird durch Splitting verdoppelt und anschliessend werden 12 Iterationen der Schritte 3 und 4 durchgef¨ uhrt. Es ist ersichtlich, wie sich die neuen Codebuchvektoren mit jeder Iteration etwas ver¨ andern, wobei die Ver¨ anderung mit jedem Schritt kleiner wird.
Kapitel 5 Hidden-Markov-Modelle
5
5
5 5.1 5.1.1 5.1.2 5.2 5.3 5.4 5.4.1 5.4.2 5.4.3 5.4.4 5.4.5 5.4.6 5.4.7 5.4.8 5.4.9 5.5 5.5.1 5.5.2 5.5.3 5.5.4 5.5.5 5.5.6 5.5.7 5.6 5.7
Hidden-Markov-Modelle Struktur und Parameter eines HMM ....................... Zustands¨ ubergangswahrscheinlichkeiten ................... Beobachtungswahrscheinlichkeiten.......................... Die grundlegenden HMM-Probleme ........................ Trellis-Diagramm ............................................... Grundlegende Algorithmen f¨ ur DDHMM .................. Evaluationsproblem ............................................ Forward-Algorithmus f¨ ur DDHMM ......................... Decodierungsproblem .......................................... Viterbi-Algorithmus f¨ ur DDHMM ........................... Sch¨ atzproblem .................................................. Backward-Algorithmus f¨ ur DDHMM ....................... Baum-Welch-Algorithmus f¨ ur DDHMM ................... Viterbi-Training f¨ ur DDHMM................................ Initial-DDHMM................................................. Grundlegende Algorithmen f¨ ur CDHMM .................. Forward-Algorithmus f¨ ur CDHMM ......................... Viterbi-Algorithmus f¨ ur CDHMM ........................... Backward-Algorithmus f¨ ur CDHMM ....................... Baum-Welch-Algorithmus f¨ ur CDHMM ................... Viterbi-Training f¨ ur CDHMM ................................ Initial-CDHMM ................................................. Mixture Splitting ............................................... Training mit mehreren Beobachtungssequenzen ......... Underflow ........................................................
109 110 112 114 115 117 117 118 120 120 122 122 123 126 128 129 129 129 129 129 131 132 133 133 135
5 Hidden-Markov-Modelle Unter einem Hidden-Markov-Modell (HMM) versteht man zwei gekoppelte Zufallsprozesse. Der erste ist ein Markov-Prozess mit einer Anzahl Zust¨ anande sind verdeckt (engl. den, die wir als S1 , S2 , . . . , SN bezeichnen. Die Zust¨ hidden), also von aussen nicht sichtbar. Sie steuern den zweiten Zufallsprozess. ass einer zustandsabh¨ anDieser erzeugt zu jedem (diskreten) Zeitpunkt t gem¨ gigen Wahrscheinlichkeitsverteilung eine Beobachtung xt . Beim Durchlaufen einer Sequenz von Zust¨ anden Q = q1 q2 . . . qT , mit qi ∈ {S1 , S2 , . . . , SN }, erzeugt das HMM eine Sequenz von Beobachtungen X = x1 x2 . . . xT . F¨ ur ein Markov-Modell erster Ordnung gilt: Wenn sich das Modell zum Zeitpunkt t−1 im Zustand Si befindet, ist die Wahrscheinlichkeit, dass es zum angig. Insbesondere Zeitpunkt t im Zustand Sj ist, nur vom Zustand Si abh¨ anden sich das ist sie unabh¨ angig von der Zeit t und davon, in welchen Zust¨ Modell fr¨ uher befunden hat. Formal ausgedr¨ uckt heisst dies:
P (qt =Sj |qt−1 =Si , qt−2 =Sk , . . .) = P (qt =Sj |qt−1 =Si ) = aij .
(67)
F¨ ur den zweiten Zufallsprozess gilt: Wenn sich das Modell zum Zeitpunkt t im Zustand Sj befindet, h¨ angt die Wahrscheinlichkeit der Beobachtung xt nur uheren Zust¨ anden oder Beobachtungen: von Sj ab, nicht aber von fr¨
P (xt |qt =Sj , qt−1 =Si , . . . , x1 , x2 , . . . , xt−1 ) = P (xt |qt =Sj ) = bj (xt ) .
(68)
5.1 Struktur und Parameter eines HMM Ein HMM erster Ordnung ist in Abbildung 5.1 dargestellt. Die Konfiguration der Zust¨ ande tr¨ agt der Tatsache Rechnung, dass es zur Modellierung von Merkmalssequenzen angewendet werden soll, die aus Sprachsignalen ermittelt werden. Solche Merkmalssequenzen haben eine endliche L¨ ange und das HMM sollte dementsprechend Beobachtungssequenzen endlicher L¨ ange erzeugen. Dies wird dadurch erreicht, dass das HMM zwei spezielle Zust¨ ande aufweist: Der Zustand S1 ist der Anfangszustand, also der Zustand, in welchem sich das HMM befindet bevor es die erste Beobachtung erzeugt. Der Zustand SN ist der Endzustand, in dem sich das HMM befindet, nachdem es eine Beobauft dabei achtungssequenz X = x1 x2 . . . xT erzeugt hat. Das HMM durchl¨ eine Zustandssequenz Q = q0 q1 q2 . . . qT qT +1 , wobei immer q0 = S1 und qT +1 = SN sein muss. Wenn das HMM in einem dieser speziellen Zust¨ande ist, erzeugt es also keine Beobachtung. Man sagt deshalb, dass der Anfangsund der Endzustand nicht-emittierend sind.
5.1
110
5. Hidden-Markov-Modelle
aN-1,2
a22
S1
a12
a33 a32 a23
S2
S3
aN-1,N-1 aN-1,3 aN-1,N-2
a34
SN-1
aN-1,N
SN
a3,N-1
a13
a3N
a2,N-1 a1,N-1
b2(x)
a2N b3(x)
bN-1(x)
Abbildung 5.1. HMM mit N Zust¨ anden
Ein HMM λ , wie es in Abbildung 5.1 dargestellt ist, wird durch zwei Gr¨ ossen vollst¨ andig beschrieben, n¨ amlich durch die Zustands¨ ubergangswahrscheinlichkeiten aij = P (qt =Sj |qt−1 =Si ) und die Beobachtungswahrscheinlichkeiten bj (x) = P (x|Sj ). Wir schreiben deshalb: λ = (A, B), wobei A die N ×N -Matrix der Zustands¨ ubergangswahrscheinlichkeiten ist, und B die Beobachtungswahrscheinlichkeitsverteilungen in den emittierenden Zust¨ anden S2 . . . SN −1 umfasst. Je nach Art der Beobachtungen ist B anders definiert (siehe Abschnitt 5.1.2).
5.1.1 Zustands¨ ubergangswahrscheinlichkeiten Aus obiger Beschreibung des Anfangs- und des Endzustandes folgt, dass nur die in Abbildung 5.1 mit Pfeilen angedeuteten Zustands¨ uberg¨ ange m¨ oglich sind, also eine Zustands¨ ubergangswahrscheinlichkeit gr¨ osser null haben k¨ on¨ nen. Insbesondere ist auch der direkte Ubergang vom Anfangs- in den Endzustand ausgeschlossen. Das HMM kann also keine Beobachtungssequenz der L¨ ange null erzeugen. F¨ ur das HMM in Abbildung 5.1 sieht die Matrix der Zustands¨ ubergangswahrscheinlichkeiten aij somit wie folgt aus: ⎤ ⎡ 0 a12 a13 · · · a1,N −1 0 ⎥ ⎢ a22 a23 · · · a2,N −1 a2N ⎥ ⎢ 0 ⎥ ⎢ ⎢ 0 a32 a33 · · · a3,N −1 a3N ⎥ ⎥ ⎢ ⎥ A=⎢ (69) .. .. .. .. .. ⎥ ⎢ .. ⎥ ⎢ . . . . . . ⎥ ⎢ ⎥ ⎢ ⎣ 0 aN−1,2 aN−1,3 · · · aN−1,N−1 aN−1,N ⎦ 0 0 0 0 0 0
5.1
Struktur und Parameter eines HMM
111
F¨ ur die Zustands¨ ubergangswahrscheinlichkeiten gelten zudem die folgenden Bedingungen:
N
aij ≥ 0
f¨ ur alle
aij = 1
f¨ ur
i, j
(70)
1
(71)
j=1
Das in Abbildung 5.1 dargestellte HMM kann von jedem emittierenden Zustand direkt in jeden anderen emittierenden Zustand u ¨ bergehen. Es wird deshalb als vollverbundenes HMM bezeichnet. atzliche Elemente auf null Werden in der A-Matrix von Gleichung (69) zus¨ gesetzt, dann wird der Freiheitsgrad des HMM weiter eingeschr¨ ankt. Je nach Art der Einschr¨ ankungen werden die HMM dann unterschiedlich bezeichnet. Wir wollen hier zwei solche Spezialf¨ alle auff¨ uhren. 5.1.1.1 Links-Rechts-HMM Ein Links-Rechts-HMM hat die Eigenschaft, dass es nicht mehr zu einem Zustand zur¨ uckkehren kann, den es einmal verlassen hat. Formal ausgedr¨ uckt ¨ sind keine Uberg¨ ange zu Zust¨ anden mit niedrigeren Indizes als der des aktuur j < i . ellen Zustandes zugelassen, d.h. aij = 0 f¨ a22
S1
a12
S2
a33
a23
a13
S3
a44
a34
a24
a45
S5
a35
a14 b2(x)
S4
⎡ ⎢ ⎢ A=⎢ ⎢ ⎣
a25 b3(x)
0 a12 0 a22 0 0 0 0 0 0
a13 a23 a33 0 0
a14 a24 a34 a44 0
⎤ 0 a25 ⎥ ⎥ a35 ⎥ ⎥ a45 ⎦ 0
b4(x)
5.1.1.2 Lineares HMM Schr¨ ankt man die Zustands¨ uberg¨ ange eines Links-Rechts-HMM weiter ein, sodass keine Zust¨ ande u onnen, dann erh¨ alt man ein ¨ bersprungen werden k¨ lineares HMM. a22
S1
a12
S2
b2(x)
a33
a23
S3
b3(x)
⎡
a44
a34
S4
b4(x)
a45
S5
⎢ ⎢ A=⎢ ⎢ ⎣
0 a12 0 a22 0 0 0 0 0 0
0 a23 a33 0 0
0 0 a34 a44 0
⎤ 0 0 ⎥ ⎥ 0 ⎥ ⎥ a45 ⎦ 0
112
5. Hidden-Markov-Modelle
5.1.2 Beobachtungswahrscheinlichkeiten Die Beobachtungen von HMM k¨ onnen diskret oder kontinuierlich sein. Die Wahrscheinlichkeitsverteilung wird f¨ ur die beiden Arten von Beobachtungen unterschiedlich beschrieben. 5.1.2.1 Diskrete Beobachtungen Eine Beobachtung wird als diskret bezeichnet, wenn sie nur M verschiedene ankt ist (siehe auch Anhang A.4.2.1). Werte annehmen kann, wobei M beschr¨ Wir bezeichnen die m¨ oglichen Werte mit ck , k = 1, . . . , M . Es spielt dabei keine Rolle, ob die ck ein- oder mehrdimensional (also Skalare oder Vektoren) sind, sie werden einfach nummeriert. Der Zufallsprozess, der in Abh¨ angigkeit des Zustandes Sj die diskreten Beobachtungen erzeugt, wird beschrieben als bj (k) = P (x=ck | Sj ), d.h. als die Wahrscheinlichkeit, dass das HMM im Zustand j die Beobachtung ck erzeugt. F¨ ur alle Zust¨ ande und alle diskreten Beobachtungen werden die Wahrscheinlichkeiten bj (k) in einer (N −2)×M -Matrix zusammengefasst:
⎡
b2 (1)
b2 (2)
b2 (3)
⎢ ⎢ b3 (1) b3 (2) b3 (3) ⎢ B=⎢ .. .. .. ⎢ . . . ⎣ bN−1 (1) bN−1 (2) bN−1 (3)
···
b2 (M −1)
b2 (M )
··· .. .
b3 (M −1) .. .
b3 (M ) .. .
⎤ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦
(72)
· · · bN−1 (M −1) bN−1 (M )
B beschreibt also N −2 diskrete Beobachtungswahrscheinlichkeitsverteilungen. F¨ ur die je M Beobachtungswahrscheinlichkeiten dieser Verteilungen gelten die folgenden Bedingungen: M
bj (k) ≥ 0
f¨ ur alle
bj (k) = 1
f¨ ur
j, k
(73)
1<j
(74)
k=1
HMM mit diskreten Beobachtungen und somit auch mit diskreten Beobachtungswahrscheinlichkeitsverteilungen werden als DDHMM (engl. discrete density HMM) bezeichnet. 5.1.2.2 Kontinuierliche Beobachtungen Sind die Beobachtungen nicht diskret, dann spricht man von kontinuierlichen Beobachtungen. Die Wahrscheinlichkeitsverteilung solcher Beobachtungen wird als Wahrscheinlichkeitsdichte beschrieben (vergl. Anhang A.4.2.2). HMM mit kontinuierlichen Beobachtungswahrscheinlichkeitsdichten werden als CDHMM (engl. continuous density HMM) bezeichnet.
5.1
Struktur und Parameter eines HMM
113
bj (x) = P (k|Sj )
a)
P (k=10|Sj ) 5
13 7
1
3 14
15
2
9
11 16 8
10 6
4 12
x(2)
b)
bj (x) = p(x(1), x(2)|Sj )
x(1)
x(2) x(1)
Abbildung 5.2. Wahrscheinlichkeitsverteilungen f¨ ur diskrete und kontinuierliche, zwei-
dimensionale Beobachtungen bj (x) f¨ ur einen HMM-Zustand Sj . a) DDHMM: Das kontinuierliche, mehrdimensionale Merkmal x wird durch Vektorquantisierung auf diskrete Werte abgebildet, die hier mit k = 1, . . . , 16 nummeriert sind. Die Wahrscheinlichkeitsverteilung der vektorquantisierten Beobachtungen ist somit diskret. b) CDHMM: Durch die Verwendung einer Wahrscheinlichkeitsdichtefunktion kann direkt eine mehrdimensionale, kontinuierliche Verteilung beschrieben werden. Die Vektorquantisierung entf¨ allt hier.
Auch bei CDHMM k¨ onnen die Beobachtungen mehrdimensional sein. Um den allgemeinen Fall zu behandeln, wollen wir von mehrdimensionalen Beobachtungen ausgehen. Abbildung 5.2 illustriert den Unterschied zwischen diskreten und kontinuierlichen Wahrscheinlichkeitsverteilungen f¨ ur zweidimensionale Beobachtungen. Zur mathematischen Beschreibung der Wahrscheinlichkeitsverteilung kontinuierlicher, mehrdimensionaler Beobachtungen bietet sich die multivariate Gauss-Mischverteilung (engl. Gaussian mixture model oder kurz GMM) an, wie sie im Anhang A.4.2.2 erl¨ autert wird. Sie kann jede beliebige kontinuierliche Verteilung in einem mehrdimensionalen Raum approximieren und hat einfache analytische Eigenschaften.
114
5. Hidden-Markov-Modelle
F¨ ur ein CDHMM kann also die Beobachtungswahrscheinlichkeitsverteilung bj (x) des Zustandes Sj mit einer multivariaten Gauss-Mischverteilung beschrieben werden als:
bj (x) =
M k=1
cjk bjk (x) =
M
cjk N (x, μjk , Σjk ) .
(75)
k=1
Die Gesamtheit der Beobachtungswahrscheinlichkeiten B eines CDHMM mit N −2 emittierenden Zust¨anden und D-dimensionalen, kontinuierlichen Beobangige Gr¨ ossen, achtungen umfasst somit (N −2) M (D+D(D+1)/2) unabh¨ wobei M die Zahl der Mischkomponenten ist. Ein Beispiel f¨ ur eine solche Mischverteilung f¨ ur zweidimensionale Beobachtungen ist im unteren Teil von Abbildung 5.2 zu sehen. In diesem Beispiel wird die Wahrscheinlichkeitsdichte durch zwei Mischkomponenten beschrieben.
5.2
5.2 Die grundlegenden HMM-Probleme Im Zusammenhang mit Hidden-Markov-Modellen spricht man von den drei folgenden grundlegenden Problemen: Evaluationsproblem Das erste Problem ist die Berechnung der Produktionswahrscheinlichkeit P (X|λ). Das ist die Wahrscheinlichkeit, mit der ein gegebenes HMM λ eine ebenfalls gegebene Beobachtungssequenz X erzeugt. Um P (X|λ) zu beoglichen Zurechnen, m¨ ussen die Wahrscheinlichkeiten P (X, Q|λ) u ¨ ber alle m¨ standssequenzen Q aufsummiert werden. Der Forward-Algorithmus berechnet diese Summe sehr effizient. Decodierungsproblem Nebst der Produktionswahrscheinlichkeit, mit der ein HMM eine Beobachtungssequenz erzeugt, interessiert h¨ aufig auch diejenige Zustandssequenz ˆ = S qˆ1 qˆ2 . . . qˆT S , welche eine gegebene Beobachtungssequenz mit der Q 1 N ˆ wird als die optimale Zustandssequenz gr¨ ossten Wahrscheinlichkeit erzeugt. Q bezeichnet und kann mit Hilfe des Viterbi-Algorithmus berechnet werden. Sch¨ atzproblem Bei diesem Problem geht es darum, die Parameter eines HMM so zu bestimmen, dass das HMM die Trainingsbeispiele (vorgegebene Beobachtungssequenzen) m¨ oglichst gut beschreibt. Der sogenannte Baum-Welch-Algorithmus erm¨ oglicht es, anhand von Trainings-Beobachtungssequenzen die Parameter
5.3
Trellis-Diagramm
115
eines HMM so zu bestimmen, dass die Produktionswahrscheinlichkeit P (X|λ) dieser Beobachtungssequenzen f¨ ur das HMM maximiert wird. Die L¨ osungen f¨ ur die drei grundlegenden HMM-Probleme, also die oben erw¨ ahnten Algorithmen, werden in den Abschnitten 5.4 und 5.5 f¨ ur DDHMM und f¨ ur CDHMM besprochen. Zuerst wird im n¨ achsten Abschnitt noch ein dabei verwendetes Hilfsmittel eingef¨ uhrt, n¨ amlich das Trellis-Diagramm.
5.3 Trellis-Diagramm Um die grundlegenden HMM-Algorithmen anschaulich erkl¨ aren zu k¨ onnen, ist es n¨ utzlich, den zeitlichen Verlauf von Zustands¨ uberg¨ angen graphisch darzustellen. Dies kann mit dem sogenannten Trellis-Diagramm erreicht werden. Das Trellis-Diagramm ist ein Graph in der Zeit-Zustands-Ebene mit einem Knoten f¨ ur jeden HMM-Zustand zu jedem Zeitpunkt. Ein Knoten zum Zeitpunkt t kann mit einem Knoten zum Zeitpunkt t+1 durch eine Kante verbunden werden. Welche Kanten bzw. Zustands¨ uberg¨ ange im Diagramm eingetragen werden, h¨ angt davon ab, welche Zusammenh¨ ange illustriert werden sollen. Anhand eines Beispiels wollen wir diese Darstellung und ihre Interpretation erl¨ autern. Gegeben sei das HMM in Abbildung 5.3 mit sechs Zust¨ anden, wovon vier emittierend sind. Bei diesem HMM sind nur die mit Pfeilen angegebenen Zustands¨ uberg¨ ange erlaubt. Ein Trellis-Diagramm f¨ ur dieses HMM und f¨ ur eine Beobachtungssequenz der L¨ ange 5 ist ebenfalls in Abbildung 5.3 dargestellt. Es sind nur diejenigen Zustands¨ uberg¨ ange eingetragen, die zu einer g¨ ultigen Zustandssequenz vom Anfangszustand in den Endzustand geh¨ oren. Damit gibt das Diagramm Auskunft dar¨ uber, in welchen Zust¨ anden sich das Modell jeweils zu einem bestimmten Zeitpunkt t befinden kann. So zeigt es beispielsweise, dass die erste Beobachtung x1 nur vom Zustand S2 stammen kann und anden herr¨ uhren kann, n¨ amlich von S2 , dass x2 hingegen von mehreren Zust¨ S3 oder S4 . Erst die letzte Beobachtung x5 ist wieder eindeutig mit einem bestimmten Zustand verkn¨ upft, n¨ amlich mit S5 . Da jeder Knoten im Gitter genau einem Zeitpunkt und damit eindeutig einer Beobachtung und genau einem Zustand zugeordnet ist, ist mit ihm implizit eine Beobachtungswahrscheinlichkeit verbunden. Ebenso entspricht eine ¨ Kante der Ubergangswahrscheinlichkeit zwischen zwei Zust¨ anden. Dies ist in Abbildung 5.4 illustriert. Mit dieser Interpretation des Trellis-Diagramms werden in den folgenden Abschnitten die drei grundlegenden HMM-Probleme (Evaluationsproblem, Decodierungsproblem und Sch¨ atzproblem) erl¨ autert.
5.3
116
5. Hidden-Markov-Modelle
Zustand S6
6
S5
5
S4
4
S3
3
S2
2
S1
1
Zeit 1
2
3
4
5
x1
x2
x3
x4
x5
Abbildung 5.3. Das Trellis-Diagramm (rechts) zeigt alle m¨ oglichen Zustandsfolgen an,
die das HMM (links) durchlaufen kann, wenn es eine Beobachtungssequenz der L¨ ange 5 erzeugt.
S4
b4(xt-1) a43
S3
S2
b3(xt-1)
a33 b3(xt)
b2(xt-1)
a23
t-1
t
xt-1
xt
Abbildung 5.4. Ausschnitt aus einem Trellis-Diagramm: Jeder Knoten entspricht ei-
ner Beobachtungswahrscheinlichkeit bi (xt ) und jede Kante einer Zustands¨ ubergangswahrscheinlichkeit aij .
5.4
Grundlegende Algorithmen f¨ ur DDHMM
117
5.4
5.4 Grundlegende Algorithmen f¨ ur DDHMM In diesem Abschnitt werden die drei grundlegenden Probleme in Bezug auf DDHMM erl¨ autert, also im Zusammenhang mit diskreten Beobachtungen und Beobachtungswahrscheinlichkeitsverteilungen. Zur L¨ osung dieser Probleme werden effiziente Algorithmen eingef¨ uhrt.
5.4.1 Evaluationsproblem Das Evaluationsproblem besteht darin, die Produktionswahrscheinlichkeit P (X|λ) zu berechnen, also zu ermitteln, mit welcher Wahrscheinlichkeit das HMM λ die Beobachtungssequenz X erzeugt. Ein einfacher Ansatz kann wie folgt formuliert werden: Da jede m¨ ogliche Zustandssequenz Q die Beobachtungssequenz X mit einer bestimmten Wahrscheinlichkeit erzeugen kann, und sich alle Zustandssequenzen gegenseitig ausschliessen, erhalten wir die gesuchte Wahrscheinlichkeit, indem wir die Wahrscheinlichkeiten P (X, Q|λ) u ¨ ber alle m¨ oglichen Zustandssequenzen Q aufsummieren: P (X|λ) = P (X, Q|λ) . (76) alle
Q
Unter Anwendung des Multiplikationsgesetzes (siehe Anhang A.4) kann die Verbundwahrscheinlichkeit P (X, Q|λ) durch das Produkt P (X|Q, λ) P (Q|λ) ersetzt werden. Damit ergibt sich aus Gleichung (76): P (X|λ) = P (X|Q, λ)P (Q|λ) . (77) alle
Q
Da bei einem HMM die Wahrscheinlichkeit einer Beobachtung xt zum Zeitangt, in welchem sich das HMM zu diesem punkt t nur vom Zustand abh¨ Zeitpunkt befindet, jedoch nicht von fr¨ uheren Zust¨ anden oder Beobachtungen, kann der erste Faktor von Gleichung (77) berechnet werden als
P (X|Q, λ) = P (x1 |q1 , λ) P (x2 |q2 , λ) . . . P (xT |qT , λ) = bq1 (x1 ) bq2 (x2 ) . . . bqT (xT )
(78)
Da zudem die Zustands¨ ubergangswahrscheinlichkeiten zeitinvariant sind, kann der zweite Faktor von Gleichung (77) geschrieben werden als
P (Q|λ) = P (S1 q1 . . . qT SN |λ) = a1q1 aq1 q2 . . . aqT −1 qT aqT N .
(79)
Durch Einsetzen der Gleichungen (78) und (79) in (77) erhalten wir die gesuchte Produktionswahrscheinlichkeit P (X|λ) = a1q1 bq1 (x1 ) aq1 q2 bq2 (x2 ) . . . aqT −1 qT bqT (xT ) aqT N . (80) alle
Q
118
5. Hidden-Markov-Modelle
Der Rechenaufwand, um Formel (80) direkt zu berechnen, ist enorm. Zu jedem Zeitpunkt t = 1, 2, . . . , T muss sich das HMM in einem der N −2 emittierenogliche Zustandssequenzen, den Zust¨ ande befinden. Damit gibt es (N −2)T m¨ u ¨ ber die aufsummiert werden muss. Der Rechenaufwand steigt demnach exponentiell mit der L¨ ange der Beobachtungssequenz. Eine Methode, um die Produktionswahrscheinlichkeit P (X|λ) effizienter zu berechnen, ist unter dem Namen Forward-Algorithmus bekannt.
5.4.2 Forward-Algorithmus f¨ ur DDHMM Der Grund, weshalb die Produktionswahrscheinlichkeit in Gleichung (80) aufw¨ andig zu berechnen ist, liegt darin, dass alle Zustandssequenzen voneinander unabh¨ angig betrachtet werden. Tats¨ achlich u ¨ berlappen sich jedoch viele davon. Die Idee f¨ ur die Optimierung liegt nun darin, Zwischenresultate von Teilsequenzen wiederzuverwenden. Um den Forward-Algorithmus herzuleiten, ist es hilfreich, die sogenannte Vorw¨ artswahrscheinlichkeit zu definieren: αt (j) = P (Xt1 , qt =Sj |λ) .
(81)
αt (j) ist die Verbundwahrscheinlichkeit, dass das HMM λ zum Zeitpunkt t im Zustand Sj ist und die partielle Beobachtungssequenz Xt1 = x1 x2 . . . xt erzeugt hat. Um αt (j) zu berechnen, kann die Wahrscheinlichkeit P (Xt1 , Qt1 |λ) aufsummiert werden f¨ ur alle partiellen Zustandssequenzen Qt1 , die zum Zeitpunkt t im Zustand Sj enden. αt (j) = P (Xt1 , Qt1 |λ) . (82) alle
Qt1
mit
qt =Sj
Die Berechnung von αt (j) wird anhand von Abbildung 5.5 veranschaulicht: Alle m¨ oglichen partiellen Zustandssequenzen Qt1 , die zum Zeitpunkt t im Zuande stand Sj enden, haben zum Zeitpunkt t−1 einen der emittierenden Zust¨ passiert. Unter Anwendung der Eigenschaften von HMM erster Ordnung, die mit den Gleichungen (67) und (68) ausgedr¨ uckt worden sind, kann somit die Gleichung (82) wie folgt geschrieben werden:
αt (j) = =
N −1 i=2 N −1 i=2
P (Xt−1 1 , qt−1 =Si |λ) P (qt =Sj |qt−1 =Si ) P (xt |qt =Sj ) P (Xt−1 1 , qt−1 =Si |λ) aij bj (xt ) .
(83)
5.4
Grundlegende Algorithmen f¨ ur DDHMM
119
Zustand Verarbeitungsrichtung
N
t-1(N-1)
N-1
t-1(i)
t(j)
j
3
t-1(3)
2
t-1(2)
1
Zeit 1
2
3
t-1
t
T
Abbildung 5.5. Veranschaulichung der Berechnung der Vorw¨ artswahrscheinlichkeit αt (j).
Durch Einsetzen von (81) in (83) ergibt sich die Rekursionsformel f¨ ur αt (j) als N −1 αt (j) = αt−1 (i) aij bj (xt ) , 1
Die Anfangsbedingungen f¨ ur t = 1 sind:
α1 (j) = a1j bj (x1 ) ,
1<j
(85)
Die Produktionswahrscheinlichkeit P (X|λ) ergibt sich schliesslich aus
P (X|λ) =
N −1
αT (i) aiN .
(86)
i=2
Der Rechenaufwand f¨ ur den Forward-Algorithmus steigt folglich linear mit der L¨ ange der Beobachtungssequenz.
120
5. Hidden-Markov-Modelle
5.4.3 Decodierungsproblem Wie wir im vorherigen Abschnitt gesehen haben, tragen grunds¨ atzlich alle erlaubten Zustandssequenzen eines HMM zu dessen Produktionswahrscheinlichkeit P (X|λ) bei. Deshalb gibt es im Allgemeinen keine Zustandssequenz, die einer gegebenen Beobachtungssequenz eindeutig entspricht. Falls man aber dennoch einer Beobachtungssequenz eine Zustandssequenz zuordnen will, so muss man ein Kriterium definieren, nach dem diese Zustandssequenz bestimmt werden soll. Ein m¨ ogliches Kriterium ist, die wahrscheinlichste Zustandssequenz Q bei gegebener Beobachtungssequenz X und gegebenem Modell λ als die optimale Zustandssequenz zu definieren, d.h. die Zustandssequenz mit der h¨ ochsten A-posteriori-Wahrscheinlichkeit: ˆ = argmax P (Q|X, λ) Q
(87)
Q
Da P (Q|X, λ) = P (Q, X|λ)/P (X|λ) ist, und zudem P (X|λ) nicht von Q abh¨ angt, sind die Optimierungen (87) und (88) gleichwertig.
ˆ = argmax P (Q, X|λ) Q
(88)
Q
Auf das Trellis-Diagramm bezogen bedeutet die optimale Zustandssequenz gem¨ ass Gleichung (88) zu bestimmen, also den optimalen Pfad vom Anfangszustand zum Endzustand zu ermitteln. Eine effiziente Methode, um diesen Pfad zu suchen, basiert auf der dynamischen Programmierung. Das Verfahren, das diese Aufgabe l¨ ost, wird als Viterbi-Algorithmus bezeichnet.
5.4.4 Viterbi-Algorithmus f¨ ur DDHMM In Analogie zur Vorw¨ artswahrscheinlichkeit wird f¨ ur den Viterbi-Algorithmus die Wahrscheinlichkeit δt (j) =
alle
max Qt1
mit
qt =Sj
P (Xt1 , Qt1 |λ)
(89)
definiert. δt (j) ist die Verbundwahrscheinlichkeit der partiellen Beobachtungsˆ t gem¨ass (88), der zum Zeitpunkt sequenz Xt1 und des optimalen Teilpfades Q 1 ¨ t im Zustand Sj endet. Dieselben Uberlegungen wie bei der Vorw¨ artswahrδ scheinlichkeit f¨ uhren auf eine sehr a hnliche Rekursionsformel f¨ u r ¨ t (j):
δt (j) = max [δt−1 (i) aij ] bj (xt ) , 1
1
(90)
Um am Schluss der Rekursion die wahrscheinlichste Zustandssequenz bestimmen zu k¨ onnen, muss w¨ ahrend der Rekursion f¨ ur jeden Zeitpunkt t und Zuangerzustand in Ψt (j) abgespeichert werstand j der jeweilige optimale Vorg¨
5.4
Grundlegende Algorithmen f¨ ur DDHMM
121
Zustand N t-1(N-1)
N-1
t-1(i)
t(j)
j
3
t-1(3)
2
t-1(2)
t(j)
1
Zeit 1
2
3
t-1
t
T
Abbildung 5.6. Veranschaulichung der Rekursion des Viterbi-Algorithmus.
den. Der vollst¨ andige Viterbi-Algorithmus besteht deshalb aus den folgenden Schritten (siehe auch Abbildung 5.6): Initialisierung:
δ1 (j) = a1j bj (x1 ) ,
1<j
(91)
Rekursion:
δt (j) = max [δt−1 (i) aij ] bj (xt )
(92)
1
Ψt (j) = argmax [δt−1 (i) aij ] , 1
1
(93)
Terminierung:
δT (N ) = max [δT (i) aiN ]
(94)
ΨT (N ) = argmax [δT (i) aiN ]
(95)
1
1
R¨ uckverfolgung des optimalen Pfades:
qˆT = ΨT (N ) qˆt = Ψt+1 (ˆ qt+1 ) ,
(96)
1≤t
(97)
122
5. Hidden-Markov-Modelle
In der optimalen Zustandssequenz wird der Zustand zum Zeitpunkt t mit qˆt bezeichnet. δT (N ) ist die Verbundwahrscheinlichkeit des optimalen Pfades ˆ . und der Beobachtungssequenz, also P (X, Q|λ) Der Viterbi-Algorithmus ist also mit dem Forward-Algorithmus eng verwandt. In der Rekursionsformel muss lediglich die Summation durch eine Maximierung ersetzt werden.
5.4.5 Sch¨ atzproblem Das schwierigste der drei im Abschnitt 5.2 aufgef¨ uhrten HMM-Probleme ist das Sch¨ atzproblem. Dabei geht es darum, f¨ ur eine gegebene Beobachtungssequenz X die Parameter eines HMM λ = (A, B) so zu bestimmen, dass die Produktionswahrscheinlichkeit P (X|λ) maximal wird. Bis heute ist keine analytische L¨ osung bekannt, welche die optimalen Parameter von λ in geschlossener Form bestimmt. Es existieren aber iterative Methoden, die zumindest ein lokales Maximum von P (X|λ) finden. Die bekannteste Methode ist eine Maximum-Likelihood-Sch¨ atzung und wird als Baum-Welch- oder ForwardBackward-Algorithmus bezeichnet. 5.4.6 Backward-Algorithmus f¨ ur DDHMM Im Hinblick auf die L¨ osung des Sch¨ atzproblems definieren wir analog zur Vorw¨ artswahrscheinlichkeit eine sogenannte R¨ uckw¨ artswahrscheinlichkeit, die zu ur jeden Zustand qt die Produktionswahreinem bestimmten Zeitpunkt t f¨ scheinlichkeit der noch verbleibenden Beobachtungssequenz XTt+1 beschreibt. Die entsprechende Definition lautet: βt (i) = P (XTt+1 |qt =Si , λ)
(98)
Dies ist die Wahrscheinlichkeit, dass das HMM λ die partielle Beobachtungssequenz XTt+1 erzeugt, vorausgesetzt es ist zum Zeitpunkt t im Zustand Si . Der Iterationsschritt f¨ ur die Berechnung der R¨ uckw¨ artswahrscheinlichkeit kann analog zur Vorw¨ artswahrscheinlichkeit gem¨ ass Abbildung 5.7 dargestellt werden. Dementsprechend erh¨ alt man f¨ ur die R¨ uckw¨ artswahrscheinlichkeit die Rekursionsformel
βt (i) =
N −1
aij bj (xt+1 ) βt+1 (j) ,
1≤t
(99)
j=2
Zur Initialisierung der Rekursion definiert man
βT (i) = aiN ,
1
(100)
5.4
Grundlegende Algorithmen f¨ ur DDHMM
123
Zustand Verarbeitungsrichtung
N
t+1(N-1)
N-1
t+1(i)
t(i)
i
3
t+1(3)
2
t+1(2)
1
Zeit 1
2
3
t
t+1
T
Abbildung 5.7. Veranschaulichung des Iterationsschrittes beim Backward-Algorithmus.
Die Produktionswahrscheinlichkeit berechnet sich aus
P (X|λ) =
N −1
a1j bj (x1 ) β1 (j) .
(101)
j=2
Die Berechnung der R¨ uckw¨ artswahrscheinlichkeiten ben¨ otigt denselben Rechenaufwand wie die Vorw¨ artswahrscheinlichkeit. F¨ ur die Berechnung der Produktionswahrscheinlichkeit P (X|λ) braucht man nur entweder die Vorw¨ arts- oder die R¨ uckw¨ artswahrscheinlichkeiten. Wie wir aber im n¨ achsten Abschnitt sehen werden, ist die R¨ uckw¨ artswahrscheinlichkeit zum L¨ osen des Sch¨ atzproblems notwendig.
5.4.7 Baum-Welch-Algorithmus f¨ ur DDHMM Der Baum-Welch-Algorithmus ist ein iteratives Trainingsverfahren, welches ein gegebenes DDHMM Schritt f¨ ur Schritt verbessert. Dieses gegebene DDHMM kann entweder ein Initial-DDHMM sein (siehe Abschnitt 5.4.9) oder ein DDHMM aus einer vorg¨ angigen Trainingsiteration. F¨ ur die Herleitung der Sch¨ atzformeln ist es n¨ utzlich, zwei Hilfswahrscheinlichkeiten zu definieren. Die eine Hilfswahrscheinlichkeit ist definiert als
124
5. Hidden-Markov-Modelle t-1(N-1)
SN-1
SN-1 t(i)
t-1(3)
t-1(2)
S3
t+1(N-1)
t(i)
S3
Si
S2
S2
t+1(3)
t+1(2)
Abbildung 5.8. Ausschnitt aus einem Trellis-Diagramm: Es zeigt alle Pfade, die zum
Zeitpunkt t im Zustand Si sind.
γt (i) = P (qt =Si |X, λ) =
(102)
P (X, qt =Si |λ) , P (X|λ)
1≤t≤T , 1
(103)
γt (i) ist die A-posteriori-Wahrscheinlichkeit, dass das HMM zum Zeitpunkt t im Zustand Si ist, gegeben die Beobachtungssequenz X und das Modell λ . ahler von Gleichung (103) kann beDie Wahrscheinlichkeit P (X, qt =Si |λ) im Z¨ rechnet werden, indem die Verbundwahrscheinlichkeiten P (X, Q|λ) aller Pfade, die zum Zeitpunkt t im Zustand Si sind, aufsummiert werden. Vergleicht man Abbildung 5.8 mit den Abbildungen 5.5 und 5.7, so erkennt man, dass der Z¨ ahler in Gleichung (103) durch die Vorw¨ arts- und R¨ uckw¨ artswahrscheinlichkeiten ausgedr¨ uckt werden kann. Aus der Definition von αt (i) und βt (i) resultiert n¨ amlich die Beziehung P (X, qt =Si |λ) = P (Xt1 , qt =Si |λ) · P (XTt+1 |qt =Si , λ) = αt (i) βt (i)
(104) (105)
Die Produktionswahrscheinlichkeit P (X|λ) im Nenner von Gleichung (103) kann mit dem Forward- oder mit dem Backward-Algorithmus berechnet werden. Somit ergibt sich f¨ ur γt (i) die Formel:
γt (i) =
αt (i) βt (i) , P (X|λ)
1≤t≤T ,
1
(106)
¨ Analog zu γt (i) definiert man die A-posteriori-Wahrscheinlichkeit des Ubergangs vom Zustand Si zum Zustand Sj zum Zeitpunkt t, gegeben das Modell λ und die Beobachtungssequenz X:
ξt (i, j) = P (qt =Si , qt+1 =Sj |X, λ) , =
P (X, qt =Si , qt+1 =Sj |λ) , P (X|λ)
(107)
1 ≤ t < T , 1 < i, j < N
(108)
5.4
Grundlegende Algorithmen f¨ ur DDHMM t-1(N-1)
SN-1
SN-1
t(i) t-1(3)
t-1(2)
125
S3
Si
t+2(N-1)
t+1(j)
aijbj(xt+1) Sj
S2
S3 S2
t+2(3)
t+2(2)
Abbildung 5.9. Graphische Darstellung aller Pfade, die zum Zeitpunkt t im Zustand Si
sind und im n¨ achsten Zeitschritt in den Zustand Sj u ¨bergehen
Die Wahrscheinlichkeit im Z¨ ahler von Gleichung (108) kann wieder durch das Aufsummieren der Verbundwahrscheinlichkeiten P (X, Q|λ) u ¨ ber alle Pfade mit qt =Si und qt+1 =Sj berechnet werden. Die Pfade, die dabei ber¨ ucksichtigt werden m¨ ussen, sind in Abbildung 5.9 dargestellt. Aus dieser Darstellung wird klar, dass der Z¨ ahler von Gleichung (108) wieder mit den Vorw¨ arts- und asst sich R¨ uckw¨ artswahrscheinlichkeiten ausgedr¨ uckt werden kann. ξt (i, j) l¨ somit schreiben als:
ξt (i, j) =
αt (i) aij bj (xt+1 ) βt+1 (j) . P (X|λ)
(109)
Wenn wir nun die Hilfswahrscheinlichkeiten γt (i) und ξt (i, j) u ¨ ber die ganze Beobachtungssequenz aufsummieren, erhalten wir Gr¨ ossen, die sich als Erwartungswerte verschiedener Ereignisse interpretieren lassen: T
γt (i) = erwartete Anzahl Male im emittierenden Zustand Si
t=1
= T −1 t=1
ξt (i, j) =
erwartete Anzahl Zustands¨ uberg¨ ange ausgehend vom (110) ¨ ange zum Endzustand SN ) Zustand Si (inkl. Uberg¨ erwartete Anzahl Zustands¨ uberg¨ ange vom Zustand Si zum emittierenden Zustand Sj
(111)
Mit diesen Interpretationen k¨ onnen wir nun neue Sch¨ atzwerte der Parameter ahlen der entsprechenden Ereignisse finden. F¨ ur die von λ durch einfaches Z¨ alt man somit folgende Parameter λ = (A, B) eines gegebenen DDHMM erh¨ Sch¨ atzformeln f¨ ur eine gegebene Beobachtungssequenz X:
a ˜1j = erwartete Anzahl Male im Zustand Sj zum Zeitpunkt t=1 = γ1 (j) , 1 < j < N
(112)
126
5. Hidden-Markov-Modelle
a ˜ij =
¨ erwartete Anzahl Uberg¨ ange vom Zustand Si zum Zustand Sj ¨ erwartete totale Anzahl Uberg¨ ange vom Zustand Si aus T −1
=
ξt (i, j)
t=1 T
, 1 < i, j < N
(113)
γt (i)
t=1
erwartete Anzahl Male im Zustand Si zum Zeitpunkt t = T erwartete totale Anzahl Male im Zustand Si γT (i) = T , 1
a ˜iN =
t=1
˜bj (k) =
=
erwartete Anzahl Male im Zustand Sj mit der Beobachtung ck erwartete totale Anzahl Male im Zustand Sj γt (j) t mit xt =ck T
, 1<j
1≤k≤M
(115)
γt (j)
t=1
Mit diesen Sch¨ atzformeln k¨ onnen nun ausgehend von einem gegebenen ˜ = (A, ˜ B) ˜ gesch¨atzt werDDHMM λ die Parameter eines neuen DDHMM λ den. Baum et al. haben bewiesen, dass die Produktionswahrscheinlichkeit ˜ immer h¨oher ist als P (X|λ), ausser wenn sich das HMM λ in einem P (X|λ) ˜ = P (X|λ).1 lokalen Optimum befindet. Dann ist P (X|λ) Das Vorgehen, die Parameter eines Modells so einzustellen, dass die Wahrscheinlichkeit der gegebenen Daten maximiert wird, bezeichnet man auch als Maximum-Likelihood-Methode. Der Baum-Welch-Algorithmus liefert also eine Maximum-Likelihood-Sch¨ atzung f¨ ur die HMM-Parameter.
5.4.8 Viterbi-Training f¨ ur DDHMM Bei einem HMM ist definitionsgem¨ ass nicht bestimmt, in welchem Zustand es beim Erzeugen einer Beobachtung ist. Um die Zustands¨ ubergangs- und die Beobachtungswahrscheinlichkeiten bestimmen zu k¨ onnen, muss die Zuordnung von Beobachtungen zu Zust¨ anden jedoch in irgendeiner Form bekannt sein. Der Baum-Welch-Algorithmus l¨ ost dieses Problem mit der A-posterioriWahrscheinlichkeit γt (i) = P (qt =Si |X, λ), also der Wahrscheinlichkeit, dass sich das Modell zum Zeitpunkt t in einem bestimmten Zustand Si befindet, 1
Baum et al. haben diesen Beweis nur f¨ ur DDHMM erbracht. Der Beweis wurde sp¨ ater auf eine breite Klasse von CDHMM erweitert.
5.4
Grundlegende Algorithmen f¨ ur DDHMM
127
gegeben die Beobachtungssequenz X und das HMM. Er ber¨ ucksichtigt damit die Tatsache, dass grunds¨ atzlich jede m¨ ogliche Zustandsfolge die Beobachtungssequenz erzeugen kann. Das Zuordnen von Beobachtungen zu Zust¨ anden kann aber auch als Decodierungsproblem betrachtet werden (siehe Abschnitt 5.4.3). Der Viterbi-Algorithmus findet f¨ ur eine gegebene Beobachtungssequenz und ein gegebenes ˆ = S1 qˆ1 . . . qˆT S , welche die Beobachtung HMM diejenige Zustandssequenz Q N mit der gr¨ ossten Wahrscheinlichkeit erzeugt hat, und ordnet damit jeder Beobachtung eindeutig einen Zustand zu. Die beiden Hilfswahrscheinlichkeiten γt (i) und ξt (i, j) des Baum-Welch-Algorithmus werden damit zu 1 falls qˆt =Si , γt (i) = (116) 0 sonst , 1 falls qˆt =Si und qˆt+1 =Sj , ξt (i, j) = (117) 0 sonst . In diesem Fall spricht man von Viterbi-Training. Die beiden Hilfswahrscheinlichkeiten k¨ onnen u ¨ ber t aufsummiert werden und haben dann die folgende Bedeutung: T
γt (i) = Anzahl Male im emittierenden Zustand Si
t=1
= T −1 t=1
ξt (i, j) =
¨ Anzahl Uberg¨ ange ausgehend vom Zustand Si ¨ (inklusive Uberg¨ ange zum Endzustand SN )
(118)
Anzahl Zustands¨ uberg¨ ange von Zustand Si zum emittierenden Zustand Sj
(119)
Zum Ermitteln der neuen Sch¨ atzwerte f¨ ur die Zustands¨ ubergangswahrschein˜ij und der Beobachtungswahrscheinlichkeitsverteilungen ˜bj (k) aus lichkeiten a ahrt man gleich wie beim Baum-Welchden Hilfsgr¨ ossen γt (i) und ξt (i, j) verf¨ Algorithmus:
a ˜1j = γ1 (j) , 1 < j < N T −1
a ˜ij =
(120)
ξt (i, j)
t=1 T t=1
, 1 < i, j < N
γt (i)
(121)
128
5. Hidden-Markov-Modelle
a ˜iN =
γT (i) T
, 1
(122)
γt (i)
t=1
˜bj (k) =
γt (j)
t mit xt =ck T
, 1<j
1≤k≤M
(123)
γt (j)
t=1
Auch beim Viterbi-Training wird ein Initial-DDHMM vorausgesetzt. Es wird verwendet, um mit dem Viterbi-Algorithmus die optimale Zustandssequenz ˆ zu bestimmen. Aus dieser Sequenz k¨onnen dann die HilfswahrscheinlichQ atzformeln (120) bis (123) keiten γt (i) und ξt (i, j) berechnet und mit den Sch¨ die Parameter des HMM neu gesch¨ atzt werden. Mit dem neu gesch¨ atzten HMM wird in der n¨ achsten Iteration erneut die optimale Zustandssequenz bestimmt und f¨ ur die Parametersch¨ atzung verwendet. Das Verfahren wird ˆ konvergiert. solange iteriert, bis die Wahrscheinlichkeit P (X, Q|λ) Beim Viterbi-Training wird im ersten Schritt eine Zuordnung von Beobachtungen und Zust¨ anden gemacht. Dies wird auch als Segmentierung bezeichnet. Unter Umst¨ anden ist aber bereits eine Segmentierung gegeben, die man ben¨ utzen m¨ ochte. In diesem Fall wird in der ersten Iteration des Trainings die vorgegebene Segmentierung verwendet und das DDHMM neu gesch¨ atzt. In den folgenden Iterationen wird dann wieder der Viterbi-Algorithmus f¨ ur die Segmentierung verwendet.
5.4.9 Initial-DDHMM Um ein Initial-DDHMM erzeugen zu k¨ onnen, muss zuerst die gew¨ unschte Topologie des HMM gew¨ ahlt werden. Dazu muss man insbesondere die Anzahl oglichen diskreten Beobachtungen M der Zust¨ ande N und die Anzahl der m¨ festlegen. Zudem ist zu definieren, welche Zustands¨ uberg¨ ange erlaubt sein sollen, wodurch bestimmt wird, ob das DDHMM vollverbunden, links-rechts, linear etc. sein soll (vergl. Abschnitt 5.1.1). Die Konfiguration muss selbstverst¨ andlich an die konkrete Anwendung angepasst werden. Was dies f¨ ur den Anwendungsfall der Spracherkennung heisst, wird im Kapitel 12 besprochen. Nebst der Konfiguration sind f¨ ur das Initial-DDHMM die Zustands¨ ubergangswahrscheinlichkeiten (soweit sie nicht beim Konfigurieren bereits auf null gesetzt worden sind) und die Beobachtungswahrscheinlichkeiten zu initialisieren. Zweckm¨ assig ist es z.B. alle Wahrscheinlichkeiten gleichverteilt zu initialisieren. F¨ ur die Zustands¨ ubergangswahrscheinlichkeiten heisst dies: aij = aik ,
f¨ ur aij , aik > 0 ,
(124)
5.5
Grundlegende Algorithmen f¨ ur CDHMM
129
wobei selbstverst¨ andlich die Randbedingung von Gleichung (71) einzuhalten ist. Die diskreten Beobachtungswahrscheinlichkeiten sind alle gleich, also
bj (k) = 1/M ,
1<j
(125)
5.5 Grundlegende Algorithmen f¨ ur CDHMM Die im Abschnitt 5.4 behandelten DDHMM erzeugen diskrete Beobachtungen. Wie die grundlegenden Algorithmen im Falle von kontinuierlichen Beobachtungen aussehen, also f¨ ur CDHMM, wird in diesem Abschnitt erl¨ autert. Die Wahrscheinlichkeitsverteilung der Beobachtungen in einem Zustand werden dabei wie im Abschnitt 5.1.2.2 erl¨ autert mit einer multivariaten GaussMischverteilung beschrieben. Diese in Gleichung (75) definierte Verteilung ist die allgemeinste Form von Wahrscheinlichkeitsverteilungen f¨ ur CDHMM, f¨ ur die bis heute Sch¨ atzformeln hergeleitet worden sind.
5.5.1 Forward-Algorithmus f¨ ur CDHMM Die Hilfswahrscheinlichkeit αt (j) wird nach den Gleichungen (84) und (85) ass Formel ermittelt, wobei die Beobachtungswahrscheinlichkeiten bj (xt ) gem¨ (75) einzusetzen sind.2 Die Produktionswahrscheinlichkeit P (X|λ) ergibt sich dann aus Gleichung (86). 5.5.2 Viterbi-Algorithmus f¨ ur CDHMM Der Viterbi-Algorithmus, wie er mit den Gleichungen (91) bis (97) beschrieben ist, kann auch f¨ ur CDHMM angewendet werden. Die dabei verwendeten ass Formel (75) zu Beobachtungswahrscheinlichkeiten bj (xt ) sind jedoch gem¨ berechnen. 5.5.3 Backward-Algorithmus f¨ ur CDHMM Die Hilfswahrscheinlichkeit βt (i) kann auch f¨ ur CDHMM mit den Gleichungen (99) und (100) berechnet werden, wobei wiederum die Beobachtungsass Formel (75) zu verwenden sind. wahrscheinlichkeiten bj (xt ) gem¨ 5.5.4 Baum-Welch-Algorithmus f¨ ur CDHMM Die Gleichungen (106) und (109) zur Berechnung der Hilfswahrscheinlichatzformeln (112) bis (114) f¨ ur die Zukeiten γt (i) und ξt (i, j) sowie die Sch¨ 2
Da die Formel (75) eine Wahrscheinlichkeitsdichtefunktion beschreibt, ist bj (xt ) genau genommen nicht eine Wahrscheinlichkeit, sondern eine Likelihood. Um aber nicht f¨ ur die im Zusammenhang mit den DDHMM eingef¨ uhrten Wahrscheinlichkeiten und Hilfswahrscheinlichkeiten neue Begriffe einf¨ uhren zu m¨ ussen, nehmen wir diese Ungenauigkeit der Bezeichnungen in Kauf.
5.5
130
5. Hidden-Markov-Modelle
stands¨ ubergangswahrscheinlichkeiten k¨ onnen auch auf CDHMM angewendet ass Formel werden, wobei die Beobachtungswahrscheinlichkeiten bj (xt ) gem¨ (75) berechnet werden m¨ ussen. Um die Parameter μjk und Σjk der Beobachtungswahrscheinlichkeitsverteilungen zu sch¨ atzen, muss jedoch eine neue Hilfswahrscheinlichkeit eingef¨ uhrt werden:
ζt (j, k) = P (qt =Sj , xt →Njk |X, λ) .
(126)
ζt (j, k) ist die Wahrscheinlichkeit, dass sich das HMM zum Zeitpunkt t im Zustand Sj befindet und die k -te Mischkomponente (des Zustandes Sj ) die Beobachtung xt erzeugt, gegeben die Beobachtungssequenz X und das Modell λ . Diese Hilfswahrscheinlichkeit kann wieder mit Hilfe der Vorw¨ arts- und R¨ uckw¨ artswahrscheinlichkeit ausgedr¨ uckt werden (siehe auch Abbildung 5.10): ζ1 (j, k) =
a1j cjk bjk (x1 ) β1 (j) , P (X|λ) N −1
ζt (j, k) =
1<j
(127)
1
(128)
αt−1 (i) aij cjk bjk (xt ) βt (j)
i=2
,
P (X|λ)
bjM(x)
SjM aij cjM bj(x) aij
Sj
bjk(x) aij cjk
aij cj1
Sjk bj1(x)
Sj1 Abbildung 5.10. Ein Zustand, dessen Beobachtungswahrscheinlichkeitsverteilung aus M
Mischkomponenten besteht, kann als M parallele Zust¨ ande mit je einer einzelnen Mischkomponente dargestellt werden, wobei die Zustands¨ ubergangswahrscheinlichkeiten den Mischkoeffizienten entsprechen. Die Produktionswahrscheinlichkeit bleibt dabei gleich.
5.5
Grundlegende Algorithmen f¨ ur CDHMM
131
Wenn die Hilfswahrscheinlichkeit ζt (j, k) u ¨ ber die ganze Beobachtungssequenz aufsummiert wird, kann die resultierende Gr¨ osse interpretiert werden als: T
ζt (j, k) =
t=1
erwartete Anzahl Beobachtungen, die von der k -ten Mischkomponente des Zustands Sj erzeugt werden
(129)
Um die Zustands¨ ubergangswahrscheinlichkeiten von CDHMM zu sch¨ atzen, werden die Gleichungen (112) bis (114) verwendet. F¨ ur die Parameter der Mischverteilungen erh¨ alt man die folgenden Sch¨ atzformeln:
c˜jk
erwartete Anzahl der von bjk (x) erzeugten Beobachtungen = = erwartete Anzahl der von bj (x) erzeugten Beobachtungen
T
ζt (j, k)
t=1 T
(130)
γt (j)
t=1
˜ jk μ
erwartete Summe der von bjk (x) erzeugten Beobachtungen = = erwartete Anzahl der von bjk (x) erzeugten Beobachtungen
T
ζt (j, k)xt
t=1 T
(131)
ζt (j, k)
t=1 T
˜ jk = Σ
˜ jk )(xt −μ ˜ jk )t ζt (j, k)(xt −μ
t=1 T t=1
(132)
ζt (j, k) 1<j
5.5.5 Viterbi-Training f¨ ur CDHMM Auch im Fall der CDHMM kann eine Zuordnung von Beobachtungen und ˆ = S qˆ1 . . . qˆT S ermittelt Zust¨ anden aus der optimalen Zustandssequenz Q 1 N werden. Es gilt also wiederum: 1 falls qˆt =Si , γt (i) = (133) 0 sonst , 1 falls qˆt =Si und qˆt+1 =Sj , ξt (i, j) = (134) 0 sonst . So wie i.a. einer Beobachtung nicht eindeutig ein Zustand zugeordnet werden kann, so ist es auch nicht m¨ oglich, diejenige Mischkomponente der Mischverteilung eines Zustands zu identifizieren, die eine Beobachtung erzeugt hat. W¨ ahrend der Baum-Welch-Algorithmus alle Mischkomponenten eines Zu-
132
5. Hidden-Markov-Modelle
stands ber¨ ucksichtigt, wird beim Viterbi-Training nur die jeweils wahrscheinlichste Mischkomponente ber¨ ucksichtigt. Will man das Viterbi-Training auch auf kontinuierliche HMM anwenden, so muss zus¨ atzlich zur optimalen Zustandssequenz f¨ ur jeden Zustand qˆt die optiˆ male Mischkomponente kt bestimmt werden, also diejenige Mischkomponenossten Wahrscheinlichkeit die te, welche f¨ ur einen Zustand qˆt =Sj mit der gr¨ Beobachtung erzeugt:
kˆt = argmax cjk bjk (xt ) , 1≤k≤M
1 ≤ t ≤ T , qˆt = Sj
Damit kann die Hilfswahrscheinlichkeit ζt (j, k) berechnet werden: 1 falls qˆt =Sj und kˆt =k, ζt (j, k) = 0 sonst .
(135)
(136)
Die Summe dieser Hilfswahrscheinlichkeit u ¨ ber die ganze Beobachtungssequenz hat nun die Bedeutung T t=1
ζt (j, k) =
Anzahl Beobachtungen, die von der k -ten Mischkomponente des Zustands Sj erzeugt werden
(137)
Unter Verwendung der Hilfswahrscheinlichkeiten γt (i), ξt (i, j) und ζt (j, k) k¨ onnen nun die Zustands¨ ubergangswahrscheinlichkeiten a ˜ij mit den Gleichungen (112) bis (114) ermittelt werden. Die Beobachtungswahrscheinlichkeiten ˜bj (x) bzw. die Parameter c˜jk , μ ˜ jk lassen sich mit den Gleichungen ˜ jk und Σ (130) bis (132) bestimmen.
5.5.6 Initial-CDHMM Auch f¨ ur ein Initial-CDHMM muss zuerst eine dem konkreten Anwendungsfall entsprechende Konfiguration gew¨ ahlt werden: Es sind die Anzahl der Zuuberg¨ ange zu definieren. st¨ ande N festzulegen und die erlaubten Zustands¨ Die Zustands¨ ubergangswahrscheinlichkeiten werden wiederum gleichverteilt initialisiert (vergl. auch Abschnitt 5.4.9). Zus¨ atzlich m¨ ussen die multivariaten Gauss-Mischverteilungen initialisiert werden. Die Sch¨ atzformeln des Baum-Welch-Algorithmus f¨ ur CDHMM (Abschnitt 5.5.4) funktionieren f¨ ur eine beliebige Anzahl Mischverteilungen. Im Prinzip k¨ onnte ein HMM mit einer Vielzahl von Mischverteilungen initialisiert und nach dem beschriebenen Verfahren trainiert werden. Es hat sich aber gezeigt, dass es besser ist, das Training mit einem einfachen Modell mit nur einer einzigen Mischkomponente zu beginnen und die Anzahl der Mischkomponenten im Verlauf des Trainings durch Mixture Splitting (siehe Abschnitt 5.5.7) zu erh¨ ohen.
5.6
Training mit mehreren Beobachtungssequenzen
133
Die Initialwerte f¨ ur die Beobachtungswahrscheinlichkeitsverteilungen werden f¨ ur alle Zust¨ ande des CDHMM gleich gew¨ ahlt, n¨ amlich gleich dem Mittelwertvektor bzw. der Kovarianzmatrix aller Beobachtungen.
5.5.7 Mixture Splitting Das Training von CDHMM f¨ uhrt in der Regel zu besseren Modellen, wenn mit einem Initialmodell mit einfachen Beobachtungswahrscheinlichkeitsverteilungen begonnen wird, d.h. mit multivariaten Gauss-Mischverteilungen mit nur einer Mischkomponente. Dieses Modell wird so lange trainiert, bis die Proˆ , duktionswahrscheinlichkeit (bzw. die Verbundwahrscheinlichkeit P (X, Q|λ) falls Viterbi-Training eingesetzt wird) nicht mehr wesentlich ansteigt. Das so trainierte HMM ist ein geeigneter Ausgangspunkt f¨ ur ein komplexeres Modell. Aus einzelnen Mischkomponenten werden mit dem sogenannten Mixture Splitting je zwei Mischkomponenten erzeugt. Das neue Modell wird als Initialmodell f¨ ur eine weitere Trainingsphase verwendet. Durch fortgesetztes Aufteilen von Mischkomponenten kann jede gew¨ unschte Anzahl Mischkomponenten erreicht werden. Eine Komponente kann beispielsweise folgendermassen in zwei Komponenten aufgeteilt werden: Von der Komponente wird eine Kopie erstellt, dann werden die beiden Mischkoeffizienten halbiert und schliesslich die Mittelwerte um plus oder minus einen Faktor mal die Standardabweichung verschoben. c → c = c = 0.5c μ → μ = μ + 0.2σ ,
μ = μ − 0.2σ
(138)
Σ→Σ =Σ =Σ Die Standardabweichung σ ist ein Vektor, dessen Elemente die Wurzel aus den Diagonalelementen der Kovarianzmatrix sind: σ = diag(Σ). Wenn die Anzahl Mischkomponenten um eins erh¨ oht werden soll und mehrere Komponenten f¨ ur das Splitting zur Wahl stehen, stellt sich die Frage, welche aufgeteilt werden soll. H¨ aufig wird diejenige Komponente gew¨ ahlt, deren Mischkoeffizient am gr¨ ossten ist. Ein grosser Mischkoeffizient bedeutet, dass die erwartete Anzahl von erzeugten Beobachtungen f¨ ur diese Mischkomponente gross ist. Je mehr Beobachtungen vorhanden sind, desto besser l¨ asst sich die Verteilung sch¨ atzen.
5.6 Training mit mehreren Beobachtungssequenzen Mit den bisher angegebenen Sch¨ atzformeln werden aufgrund einer einzelnen ubergangswahrscheinlichkeiten aij und Beobachtungssequenz X die Zustands¨ ur ein HMM λ so bedie Beobachtungswahrscheinlichkeitsverteilungen bj (x) f¨
5.6
134
5. Hidden-Markov-Modelle
stimmt, dass die Produktionswahrscheinlichkeit maximal wird. Bei HMM f¨ ur zeitlich begrenzte Beobachtungssequenzen, wie sie im Abschnitt 5.1 spezifiziert worden sind, gen¨ ugt jedoch eine einzelne Beobachtungssequenz nicht, um die HMM-Parameter zuverl¨ assig zu sch¨ atzen. Es m¨ ussen daf¨ ur mehrere Sequenzen verwendet werden. Mit der Annahme, dass die Beobachtungssequenzen unabh¨ angig voneinander sind, k¨ onnen die Sch¨ atzformeln leicht f¨ ur den Fall mehrerer Beobachtungssequenzen angepasst werden. Das Ziel der Maximum-Likelihood-Sch¨ atzung ist es, f¨ ur einen Satz von Beobachtungssequenzen X = {X1 , X2 , . . . , XS }, die Produktionswahrscheinlichkeit
P (X |λ) =
S
P (Xs |λ)
(139)
s=1
zu maximieren. Da alle Sch¨ atzformeln auf dem Z¨ ahlen von verschiedenen Ereignissen beruhen, k¨ onnen diese Z¨ ahlwerte (bzw. Erwartungswerte) einfach ¨ u ur die Ubergangs¨ ber alle Beobachtungssequenzen aufsummiert werden. F¨ wahrscheinlichkeiten lauten die Sch¨ atzformeln dann
a ˜1j =
S 1 s γ (j) , S s=1 1 S T s −1
a ˜ij =
1<j
(140)
1 < i, j < N ,
(141)
1
(142)
ξts (i, j)
s=1 t=1 Ts S
,
γts (i)
s=1 t=1 S
a ˜iN =
γTs s (i)
s=1 Ts S
,
γts (i)
s=1 t=1
Die Beobachtungswahrscheinlichkeiten eines DDHMM werden wie folgt ermittelt:
˜bj (k) =
S
s=1
t mit xt =ck
Ts S s=1 t=1
γts (j)
γts (j)
,
1 < j < N, 1 ≤ k ≤ M .
(143)
5.7
Underflow
135
Die Beobachtungswahrscheinlichkeitsverteilungen eines CDHMM werden analog zum diskreten Modell berechnet, also indem man in den Gleichungen (130) bis (132) jeweils im Z¨ ahler und im Nenner u ¨ ber alle Beobachtungssequenzen summiert.
5.7
5.7 Underflow Wie man beispielsweise aus den Gleichungen (84), (90) und (99) sieht, werden die Werte von αt (i), δt (i) und βt (i) mit wachsender Beobachtungssequenzl¨ ange T exponentiell kleiner, da fortlaufend Werte ≤ 1 miteinander multipliziert werden. Fr¨ uher oder sp¨ ater werden diese Wahrscheinlichkeiten deshalb auf jedem Computer zu einem Underflow f¨ uhren, wodurch die Berechnungen unbrauchbar werden. Davon sind alle besprochenen HMM-Algorithmen betroffen. Eine M¨ oglichkeit, einen Underflow zu verhindern (genau genommen nur zu verz¨ ogern), ist die Verwendung von Logarithmen. Das Problem besteht ja darin, dass durch fortw¨ ahrendes Multiplizieren mit Werten ≤ 1 das Produkt exponentiell kleiner wird. Berechnet man nun aber nicht das Produkt, sondern den Logarithmus davon, so wird das Resultat mit wachsender Beobachtungssequenzl¨ ange nur linear kleiner. Dank dieser Methode kann zudem der Viterbi-Algorithmus effizienter ausgef¨ uhrt werden. Dabei wird ausgenutzt, dass der Logarithmus eines Produktes gleich der Summe der logarithmierten Faktoren ist. Die Multiplikationen der Rekursionsgleichung (93) werden so in Additionen umgewandelt, die auf den meisten Rechnern effizienter berechenbar sind. Dazu werden die HMMParameter des Erkenners logarithmiert. Die Rekursionsgleichung f¨ ur log δt (j) besteht dann nur noch aus Additionen und Maximierungen:
log δt (j) = max[log δt−1 (i) + log aij ] + log bj (xt ) i
(144)
Dabei muss ber¨ ucksichtigt werden, dass der Logarithmus von null nicht definiert ist. In Anlehnung an die beiden Grenzwerte
lim logb x = −∞
(145)
lim bx = 0
(146)
x→0+
x→−∞
definiert man in der Praxis
. logb 0 = −∞ und . b−∞ = 0 .
(147) (148)
136
5. Hidden-Markov-Modelle
Das ist zwar mathematisch nicht korrekt, aber es vereinfacht die Berechnungen wesentlich und hat auf das Resultat keinen Einfluss. Bei der logarithmischen Berechnung der Vorw¨ arts- und R¨ uckw¨ artswahrscheinlichkeiten entsteht das Problem, dass der Logarithmus einer Summe von Werten berechnet werden muss, die so klein sind, dass sie ebenfalls nur als Logarithmen darstellbar sind. Mit Hilfe der Kingsbury-Rayner-Formel kann jedoch der Logarithmus einer Summe direkt aus den Logarithmen der Summanden berechnet werden: y logb (x + y) = logb x 1 + (149) x y = logb x + logb 1 + (150) x ! = logb x + logb 1 + blogb y−logb x , (151) wobei ohne Einschr¨ ankung der Allgemeinheit x ≥ y und x > 0 vorausgesetzt wird. Wenn x und y null sind, kommt direkt Definition (147) zum Einsatz.
Kapitel 6 Repr¨ asentation und Anwendung linguistischen Wissens
6
6
6 6.1 6.2 6.2.1 6.2.2 6.2.3 6.2.4 6.2.5 6.3 6.3.1 6.3.2 6.3.3 6.4 6.5 6.5.1 6.5.2 6.5.3 6.5.4 6.5.5 6.6 6.6.1 6.6.2 6.6.3
Repr¨ asentation und Anwendung linguistischen Wissens Formale Sprachen und Grammatiken ....................... 139 Die Sprachhierarchie nach Chomsky........................ 140 Regul¨ are Sprachen (Typ 3) ................................... 143 Kontextfreie Sprachen (Typ 2) .............................. 145 Kontextsensitive Sprachen (Typ 1) ......................... 146 Allgemeine Sprachen (Typ 0) ................................ 150 Das Wortproblem .............................................. 150 Die Wortanalyse ................................................ 152 Wortanalyse f¨ ur Typ-3-Grammatiken ....................... 152 Wortanalyse f¨ ur Typ-2-Grammatiken ....................... 160 Wortanalyse f¨ ur Typ-1- und Typ-0-Grammatiken ........ 167 Formalisierung nat¨ urlicher Sprachen........................ 167 Der DCG-Formalismus ........................................ 172 Definition und Eigenschaften von DCG .................... 172 Unifikation ....................................................... 175 DCG-Ableitungen............................................... 175 DCG-Ableitungsbaum ......................................... 177 DCG und Chart-Parsing....................................... 178 Two-Level-Regeln und Transduktoren...................... 178 Einf¨ uhrung ....................................................... 178 Two-Level-Regeln .............................................. 179 Transduktoren................................................... 182
6 Repr¨ asentation und Anwendung linguistischen Wissens In diesem Kapitel geht es darum, die Grundlagen einzuf¨ uhren, die zur Anwendung sprachlichen Wissens aus den Bereichen Morphologie und Syntax eingesetzt werden. Dieses Wissen bezieht sich darauf, wie W¨ orter und S¨ atze einer Sprache aufgebaut sind. Da es eine grosse Anzahl von Formalismen zum Festhalten solchen Wissens gibt und viele verschiedene Methoden, um es ¨ anzuwenden, ist es nicht m¨ oglich, hier eine vollst¨ andige Ubersicht zu geben. Wir beschr¨ anken uns im Wesentlichen auf diejenigen Grundlagen, die f¨ ur das Verst¨ andnis der Kapitel 8 und 13 erforderlich sind. Obwohl unser eigentliches Ziel die Beschreibung nat¨ urlicher Sprache ist, wird in diesem Kapitel auch die Rede von formalen Sprachen sein.
6.1 Formale Sprachen und Grammatiken F¨ ur die Beschreibung von Sprachen und Grammatiken werden die folgenden Notationen verwendet:
VT
das Alphabet, eine endliche, nichtleere Menge von Zeichen, die auch als Terminalsymbole bezeichnet werden, z.B. VT = {a, b, c, . . . , z}
VN
die endliche Menge der sogenannten Nicht-Terminalsymbole, beispielsweise VN = {A, B, . . . , L} (siehe auch Definition 6.2)
w
eine beliebige Folge von Elementen aus der Menge VT , wird als Wort bezeichnet
|w|
die Anzahl der Zeichen im Wort w, auch die L¨ ange des Wortes w
a
n
eine Folge von n gleichen Zeichen a; |an | = n
ε
das leere Wort oder auch Nullsymbol; |ε| = 0
|V |
die Anzahl der Elemente in der Menge V
V∗
die Menge aller W¨ orter, die sich durch eine beliebige Reihung von Zeiulle) chen aus der Menge V bilden lassen (sogenannte Kleenesche H¨
V+
die Menge aller W¨ orter in V ∗ ohne das leere Wort: V + = V ∗ \ {ε} (f¨ ur Mengen wird die Subtraktion mit \ bezeichnet)
L
eine formale Sprache u ¨ ber dem Alphabet VT mit L ⊆ VT∗ (siehe auch Definition 6.1)
Li
die Menge der formalen Sprachen, die zur Chomsky-Sprachklasse i geh¨ oren (siehe Definition 6.3)
6.1
140
6. Repr¨ asentation und Anwendung linguistischen Wissens
ϕ→ψ
r
i u⇒ v
eine Produktionsregel, welche die Zeichenfolge ϕ durch die Zeichenur Regeln mit folge ψ ersetzt, wobei ϕ, ψ ∈ (VT ∪ VN )∗ sind. F¨ gleicher linker Seite wie ϕ → ψ1 , ϕ → ψ2 , . . . , ϕ → ψn wird die Kurzform ϕ → ψ1 |ψ2 | . . . |ψn verwendet. Das Wort v ist unter Anwendung der Produktionsregel ri direkt aus dem Wort u ableitbar. Falls nicht auf eine bestimmte Regel Bezug genommen wird, kann der Zusatz ri fehlen.
u ⇒∗ v Das Wort u geht unter wiederholter Anwendung von Produktionsregeln einer gegebenen Grammatik in das Wort v u ¨ ber. Definition 6.1: Eine Wortmenge L ⊆ VT∗ heisst formale Sprache u ¨ ber dem andig Alphabet VT , falls es ein endliches formales System gibt, das L vollst¨ ankt sein. beschreibt. Die Wortmenge L kann unbeschr¨ Ein formales System zur Beschreibung einer formalen Sprache L heisst analysierend, wenn es nach endlich vielen Schritten angeben kann, ob w in der Menge L enthalten ist oder nicht. Es heisst erzeugend, wenn jedes Wort w ∈ L in endlich vielen Schritten erzeugt werden kann. Zu den analysierenden Systemen geh¨ oren die Automaten, so etwa auch endliche Automaten (siehe Abschnitt 6.3.1). Zu den erzeugenden Systemen geh¨ oren beispielsweise die Chomsky-Grammatiken (siehe Abschnitt 6.2). Solche Grammatiken beschreiben eine Sprache L mit sogenannten Produktionsregeln, u ¨ ber die ausgehend von einem Startsymbol jedes Wort w ∈ L abgeleitet werden kann. Es ist im Allgemeinen ein grosses Problem, f¨ ur ein beliebiges Wort w zu entscheiden, ob es durch einen gegebenen Satz von Produktionsregeln erzeugt werden kann oder nicht. Wie im Abschnitt 6.2.5 gezeigt wird, h¨ angt die Entscheidbarkeit dieser Frage von der Form der Produktionsregeln ab.
6.2
6.2 Die Sprachhierarchie nach Chomsky Der Begr¨ under der Theorie der formalen Sprachen, der amerikanische Sprachwissenschaftler Noam Chomsky, hat f¨ ur Grammatiken vier Komplexit¨ atsklassen definiert. Da eine formale Grammatik eine erzeugende Beschreibung einer formalen Sprache ist, kann diese Klassierung auch auf die formalen Sprachen bezogen werden. Bevor wir mit der Erl¨ auterung dieser Grammatik- bzw. Sprachhierarchie beginnen, wollen wir festhalten, was unter einer Chomsky-Grammatik zu verstehen ist.
6.2
Die Sprachhierarchie nach Chomsky
141
Definition 6.2: Eine Chomsky-Grammatik ist ein Quadrupel G = (VN , VT , P, S). Dabei bezeichnet
VN
die Menge der Nicht-Terminalsymbole,
VT
die Menge der Terminalsymbole,
P
die Menge der Produktionsregeln P ⊂ {ϕ → ψ | ϕ ∈ (VN ∪ VT )+ , ψ ∈ (VN ∪ VT )∗ } und
S
das Startsymbol S ∈ VN .
Die Terminalsymbole sind diejenigen Zeichen, aus denen die W¨ orter einer Sprache zusammengesetzt sind. Sie werden im Folgenden mit lateinischen Kleinbuchstaben bezeichnet. Die Nicht-Terminalsymbole sind Hilfssymbole f¨ ur die Grammatik und werden als lateinische Grossbuchstaben geschrieben. Folgen von Terminal- und Nicht-Terminalsymbolen in den Produktionsregeln werden mit griechischen Kleinbuchstaben bezeichnet. Die Menge der Produktionsregeln einer Grammatik muss endlich sein. Die Erzeugung eines Wortes anhand der Produktionsregeln beginnt immer mit dem Startsymbol S . Die einer Chomsky-Grammatik G = (VN , VT , P, S) entsprechende Sprache L(G) besteht definitionsgem¨ass aus der Menge aller W¨orter, die aus dem Startsymbol ableitbar sind und ausschliesslich Terminalsymbole enthalten:
L(G) ::= {w ∈ VT∗ | S ⇒∗ w}. S ⇒∗ w wird als Ableitung bezeichnet und S ⇒ u1 ⇒ u2 ⇒ . . . ⇒ un−1 ⇒ w als Ableitungsfolge der L¨ ange n, wobei ui ∈ (VN ∪VT )+ ist. Dementsprechend ange angegeben heisst w ableitbar aus S , falls eine Ableitungsfolge endlicher L¨ werden kann. Die Definition der Chomsky-Grammatik ist so allgemein, dass im Prinzip jede formale Sprache in dieser Form definiert werden kann. Dadurch ist man aber mit einem unl¨ osbaren Problem konfrontiert, n¨ amlich, dass im Allgemeinen nicht entscheidbar ist, ob ein Wort zur Sprache einer vorgegebenen Grammatik geh¨ ort oder nicht (dieser Entscheid heisst auch Wortproblem). Chomsky hat dieses Problem entsch¨ arft, indem er eine Hierarchie von Grammatik- bzw. Sprachklassen eingef¨ uhrt hat. Wie im Abschnitt 6.2.5 gezeigt wird, ist f¨ ur die eingeschr¨ ankten Klassen das Wortproblem immer entscheidbar. Die Grammatikklassen sind wie folgt definiert:
142
6. Repr¨ asentation und Anwendung linguistischen Wissens
Definition 6.3: Eine Chomsky-Grammatik G = (VN , VT , P, S) heisst Typ-3-Grammatik oder auch regul¨ are Grammatik, falls alle Produktionsregeln entweder den Formen
A → aB , A → a oder A → ε
(rechtslinear)
oder ausschliesslich den Formen
A → Ba, A → a oder A → ε
(linkslinear)
entsprechen, wobei a ∈ VT und A, B ∈ VN . Falls A = B ist, heissen die Regeln rechts- bzw. linksrekursiv. Typ-2-Grammatik oder auch kontextfreie Grammatik, falls alle Produktionsregeln der Form
A→ψ entsprechen, mit A ∈ VN und ψ ∈ (VN ∪VT )∗ Typ-1-Grammatik oder auch kontextsensitive Grammatik, falls alle Produktionsregeln von der Form
ϕ1 Aϕ2 → ϕ1 ψϕ2 ¨ sind mit A ∈ VN und ϕ1 , ϕ2 , ψ ∈ (VN ∪VT )∗ und ψ = ε. Aquivalent dazu ist hinsichtlich der Menge der beschriebenen Sprachen die monotone Grammatik, die keine verk¨ urzenden Produktionsregeln enthalten darf:
α→ψ
mit |α| ≤ |ψ|
Die Produktionsregel S → ε ist nur dann erlaubt, wenn S nicht auf der rechten Seite einer Produktionsregel vorkommt. Typ-0-Grammatik oder auch allgemeine Chomsky-Grammatik, falls die Produktionsregeln nicht weiter eingeschr¨ ankt sind, als dass sie der Definition 6.2 gen¨ ugen. Jede Chomsky-Grammatik beschreibt eine formale Sprache. Die Menge der formalen Sprachen Li ist die Menge der formalen Sprachen, die sich mittels Grammatiken des Typs i beschreiben lassen. Diese Mengen von formalen Sprachen stehen zueinander in folgendem Verh¨ altnis:
L3 ⊂ L2 ⊂ L1 ⊂ L0 . In der Abbildung 6.1 ist dieser Sachverhalt graphisch dargestellt. Die Abbildung bringt auch zum Ausdruck, dass jede Sprache Li ∈ Li auch zur Menge Lj , mit i > j , geh¨ort und sich deshalb auch mit einer Grammatik des Typs j beschreiben l¨ asst.
6.2
Die Sprachhierarchie nach Chomsky
143
Typ-0-Sprachen (allgemeine) Typ-1-Sprachen (kontextsensitive) Typ-2-Sprachen (kontextfreie) Typ-3-Sprachen (reguläre)
Abbildung 6.1. Die Menge der Sprachen des Typs i ist in der Menge des Typs i−1
enthalten
In den Abschnitten 6.2.1 bis 6.2.4 werden diese Grammatik- bzw. Sprachtypen n¨ aher erl¨ autert.
6.2.1 Regul¨ are Sprachen (Typ 3) In der Chomsky-Hierarchie sind die Typ-3-Grammatiken am st¨ arksten eingeschr¨ ankt, und die dadurch festgelegte Sprachklasse L3 ist am kleinsten. Die linke Seite einer Produktionsregel darf nur ein Nicht-Terminalsymbol aufweisen, und auf der rechten Seite d¨ urfen entweder nur ein Terminalsymbol oder ein Nicht-Terminal- und ein Terminalsymbol stehen. Zudem muss in einer konkreten Grammatik f¨ ur alle Regeln, die auf der rechten Seite zwei Symbole haben, das Nicht-Terminalsymbol immer vor oder immer nach dem Terminalsymbol stehen. Steht das Nicht-Terminalsymbol stets nach dem Terminalsymbol, dann wird von einer rechtslinearen Grammatik gesprochen. Anhand des folgenden Beispiels leuchtet diese Bezeichnung sofort ein: Beispiel 6.4: Gegeben sei die Grammatik G = (VN , VT , P, S) mit VT = {a, b} und P = {S → aS|bA, A → bS|aA|ε}. Wie einfach zu verifizieren ist, erzeugt diese Grammatik W¨ orter u ¨ ber dem Alphabet {a, b}, welche eine ungerade Anzahl b enthalten:
L(G) = {w ∈ {a, b}∗ | w enth¨alt eine ungerade Anzahl b}.
144
6. Repr¨ asentation und Anwendung linguistischen Wissens
Das Wort abbab entsteht beispielsweise durch die Ableitungsfolge
S ⇒ aS ⇒ abA ⇒ abbS ⇒ abbaS ⇒ abbabA ⇒ abbab. Oft ist eine graphische Darstellungsform einer Ableitung u am¨ bersichtlicher, n¨ lich der Ableitungsbaum. Dabei wird eine Produktionsregel als Elementarbaum betrachtet. Der Wurzelknoten entspricht dem Nicht-Terminalsymbol auf der linken Regelseite, w¨ ahrend die Symbole auf der rechten Regelseite die Kinder der Wurzel bilden. Ein Ableitungsschritt (das Ersetzen eines NichtTerminalsymbols durch die Symbole einer rechten Regelseite) hat nun eine Entsprechung in der Baumdarstellung: Ein Nicht-Terminal-Blattknoten wird durch den Elementarbaum einer passenden Regel ersetzt. In der obigen Ableitungsfolge ist zuerst die Regel S → aS angewendet worden. Der Startknoten S wird also durch den dieser Regel entsprechenden Elemenachsten Schritt wird der tarbaum mit den Kinderknoten a und S ersetzt. Im n¨ neue Blattknoten S durch den Elementarbaum der Regel S → bA ersetzt. Dies geht so weiter, bis kein Blattknoten mit einem Nicht-Terminalsymbol mehr vorhanden ist und der Ableitungsbaum von Abbildung 6.2 resultiert. Die Terminalsymbole der Blattknoten des Ableitungsbaumes, von links nach rechts gelesen, entsprechen dem Wort w. Da in der Grammatik dieses Beispiels alle Produktionsregeln auf der rechten Seite h¨ ochstens ein NichtTerminalsymbol aufweisen k¨ onnen, und dieses zudem immer hinter dem Terminalsymbol steht, w¨ achst der Ableitungsbaum stets nach rechts. aquivalente linkslineare Zu jeder rechtslinearen Grammatik G gibt es eine ¨ Grammatik G mit L(G) = L(G ) und umgekehrt. Es ist somit unerheblich, ob eine Typ-3-Grammatik rechts- oder linkslinear formuliert wird.
S a
S b
A b
S a
S b
A
Abbildung 6.2. Ableitungsbaum f¨ ur das Wort abbab in Beispiel 6.4
6.2
Die Sprachhierarchie nach Chomsky
145
6.2.2 Kontextfreie Sprachen (Typ 2) Weniger stark eingeschr¨ ankt als regul¨ are Grammatiken sind die kontextfreien Grammatiken oder Typ-2-Grammatiken. Diese d¨ urfen Produktionsregeln der Form A → ψ aufweisen, wobei A ein Nicht-Terminalsymbol ist und ψ eine beliebige Folge von Terminal- und Nicht-Terminalsymbolen sein kann. Beispiel 6.5: Das Standardbeispiel einer Typ-2-Sprache ist L2 = {an bn } mit n ∈ N0 , d.h. die Menge aller W¨ orter, die aus n Symbolen a gefolgt von asst sich leicht demonstrieren, dass eine gleich vielen Symbolen b bestehen. Es l¨ regul¨ are Grammatik nicht ausreicht, um L2 zu beschreiben. Eine kontextfreie Grammatik G2 , die L2 erzeugt, ist G2 = (VN , VT , P, S) mit VT = {a, b} und P = {S → aSb, S → ε}. Beispielsweise entsteht das Wort aaabbb durch die Ableitungsfolge
S ⇒ aSb ⇒ aaSbb ⇒ aaaSbbb ⇒ aaabbb . Es ist sofort einzusehen, dass ausschliesslich W¨ orter der Form an bn erzeugt werden k¨ onnen. Die erste Produktionsregel von G2 ist vom Typ 2, aber nicht vom Typ 3, weil auf der rechten Seite zwei Terminalsymbole vorhanden sind. Zudem bewirkt das zwischen den Terminalsymbolen stehende Nicht-Terminalsymbol, dass bei der Ableitung das Wort im Innern ver¨ andert wird. Typ-3-Produktionsregeln hingegen k¨ onnen nur am Wortanfang (bei linkslinearen Regeln) oder am Wortende (bei rechtslinearen Regeln) eine Ver¨ anderung bewirken. Demzufolge muss bei Typ-2-Grammatiken der Ableitungsbaum nicht ausschliesslich nach rechts bzw. nach links wachsen, sondern kann beispielsweise symmetrisch sein, wie der Ableitungsbaum des Wortes aaabbb in Abbildung 6.3 zeigt.
S a
S
b
a
S
b
a
S
b
Abbildung 6.3. Ableitungsbaum f¨ ur das Wort aaabbb in Beispiel 6.5
146
6. Repr¨ asentation und Anwendung linguistischen Wissens
Mit Typ-2-Grammatiken lassen sich z.B. Programmiersprachen wie Java oder C beschreiben. Einen Teil solcher Programmiersprachen bilden die mathematischen Ausdr¨ ucke. Eine kontextfreie Grammatik f¨ ur einfache mathematische Ausdr¨ ucke zeigt das folgende Beispiel: Beispiel 6.6: Gegeben ist die Grammatik GM = (VN , VT , P, S) zur Erzeugung einfacher mathematischer Ausdr¨ ucke, mit
VN = {Exp, Term, Fak, Ident} VT = VM ∪ VI = {+, ∗, (, )} ∪ {a, b, c} P
= { Exp
→ Term | Term + Exp,
Term → Fak | Fak ∗ Term, Fak
→ Ident | (Exp),
Ident → a | b | c }
S
= Exp.
Der Einfachheit halber ist hier die Menge VI der Identifikatoren (Variablenankt. Sie kann beliebig eroder Konstantenbezeichner) auf {a, b, c} beschr¨ weitert werden, darf sich aber mit den Mengen VN und VM (Symbole der mathematischen Operationen und Klammern) nicht u ¨ berschneiden. Mit dieser Grammatik l¨ asst sich beispielsweise der Ausdruck a + b ∗ (a + c) erzeugen. Der zugeh¨ orige Ableitungsbaum ist in Abbildung 6.4 dargestellt.
6.2.3 Kontextsensitive Sprachen (Typ 1) Eine formale Grammatik ist kontextsensitiv, wenn alle Produktionsregeln von ass Definition 6.3 f¨ ur alle Regeln der Form ϕ1 Aϕ2 → ϕ1 ψϕ2 sind. Weil gem¨ |ψ| ≥ 1 sein muss (also ψ = ε), ist die Zahl der Symbole auf der linken Seite der Regeln nicht gr¨ osser als auf der rechten. Eine Grammatik, f¨ ur welche diese Bedingung zutrifft, heisst monoton. Daraus folgt, dass Monotonie eine notwendige Bedingung f¨ ur eine kontextsensitive Grammatik ist. Relativ einfach l¨ asst sich zeigen, dass Monotonie auch eine hinreichende Beasst dingung f¨ ur eine Typ-1-Sprache ist. Zu jeder monotonen Grammatik G l¨ sich n¨ amlich eine ¨ aquivalente kontextsensitive Grammatik angeben, wie der folgende Algorithmus zeigt: Algorithmus 6.7:
Umformung einer monotonen Grammatik G in eine aquivalente kontextsensitive Grammatik G (nach [26]) ¨
aquivaSchritt 1: Zuerst wird die Grammatik G = (VN , VT , P, S) in eine ¨ lente Grammatik G = (VN , VT , P , S) umgeformt, deren Produktionsregeln entweder nur Nicht-Terminalsymbole enthalten oder genau ein Nicht-Terminalsymbol in ein Terminalsymbol u uhren. Dazu wird f¨ ur jedes Terminal¨ berf¨
6.2
Die Sprachhierarchie nach Chomsky
147
Exp Term
+
Exp
Fak
Term
Ident
Fak
a
Ident
Term
*
Fak
b
(
Exp
)
Term
+
Exp
Fak
Term
Ident
Fak
a
Ident c
Abbildung 6.4. Ableitungsbaum f¨ ur den Ausdruck a + b ∗ (a + c) aus Beispiel 6.6
symbol di ∈ VT ein neues Nicht-Terminalsymbol Di ∈ / VN eingef¨ uhrt. Sodann werden in allen Regeln in P die Terminalsymbole di durch die entsprechenaquivalente den Nicht-Terminalsymbole Di ersetzt; dies ergibt Pmod . Die zu G ¨ Grammatik G = (VN , VT , P , S) ist demnach gegeben durch:
VN = VN ∪ {Di | i = 1, . . . , |VT |} und P = Pmod ∪ {Di → di | di ∈ VT }. Alle nicht kontextsensitiven Regeln in P sind in der Teilmenge Pmod enthalten, weil die restlichen von der Form Di → di sind, also kontextfrei bzw. regul¨ ar. F¨ ur den zweiten Schritt wird die Menge der Regeln P in die Menge der nicht kontextsensitiven Regeln P o und die Menge der kontextsensitiven Regeln P + aufgeteilt. Alle Regeln in P o enthalten nur Nicht-Terminalsymbole. Auf jede dieser Regeln kann somit die nachfolgende Umformung angewandt werden, um je einen Satz ¨ aquivalenter kontextsensitiver Regeln abzuleiten.
148
6. Repr¨ asentation und Anwendung linguistischen Wissens
Schritt 2: Jede Produktionsregel der Menge P o hat die Form A1 A2 . . . Am → B1 B2 . . . Bn , wobei der Monotonie wegen m ≤ n sein muss. Unter Einf¨ uhrung asst sich eine solche von m−1 neuen Nicht-Terminalsymbolen H1 , . . . , Hm−1 l¨ Regel folgendermassen durch einen Satz kontextsensitiver Regeln ersetzen: (1)
A1 A2 . . . Am−1 Am
→ H1 A2 . . . Am−1 Am
(2)
→ H1 H2 . . . Am−1 Am
(m−1)
H1 A2 . . . Am−1 Am .. . H1 H2 . . . Am−1 Am
(m)
H1 H2 . . . Hm−1 Am
→ H1 H2 . . . Hm−1 Bm . . . Bn
(m+1)
H1 H2 . . . Hm−1 Bm . . . Bn → H1 H2 . . . Hm−2 Bm−1 . . . Bn .. . H1 B2 . . . Bn → B1 . . . Bn
(2m−1)
→ H1 H2 . . . Hm−1 Am
Zu bemerken ist, dass selbstverst¨ andlich f¨ ur alle i mit Ai = Bi die Ersetzung otig ist. Dies kann f¨ ur 0 ≤ j < m der m Nichtvon Ai durch Hi nicht n¨ ur jede nicht kontextTerminalsymbole in A1 . . . Am zutreffen. Somit kann f¨ aquivalenter Satz von 2(m−j)−1 sensitive Regel A1 . . . Am → B1 . . . Bn ein ¨ kontextsensitiven Regeln gefunden werden. Meistens gibt es dabei mehrere L¨ osungen, was hier jedoch nicht von Bedeutung ist. aquivalente kontextsensitive Grammatik ist G = (VN , VT , P , S) Die zu G ¨ mit VN = VN ∪ {Di } ∪ {Hj } und P = P + ∪ P × , wobei P × die im Schritt 2 erzeugten Regeln enth¨ alt. Damit ist gezeigt, dass jede Grammatik, die ausschliesslich Regeln der Form α → ψ mit |α| ≤ |ψ| aufweist, vom Typ 1 ist. Es gilt also der folgende Satz: Satz 6.8: Monotonie ist eine notwendige und hinreichende Bedingung daf¨ ur, ort. dass die von einer Grammatik G erzeugte Sprache L(G) zur Klasse L1 geh¨ Beispiel 6.9: Das Standardbeispiel f¨ ur eine Typ-1-Sprache ist L(G1 ) = {an bn cn | n∈N}. Eine Grammatik, mit der alle W¨orter von L(G1 ) erzeugt werden k¨ onnen, ist G1 = (VN , VT , P, S) mit VN = {A, C, S}, VT = {a, b, c} und den Produktionsregeln:
P = {S
→ aAbc | abc,
A → aAbC | abC , Cb → bC , Cc → cc } Um zu verifizieren, ob beispielsweise das Wort w = a3 b3 c3 zur Sprache L(G1 ) geh¨ ort, kann man versuchen, eine Ableitung S ⇒∗ w zu finden. Eine von mehreren m¨ oglichen Ableitungsfolgen f¨ ur w ist:
6.2
Die Sprachhierarchie nach Chomsky
S ⇒ aAbc
⇒ aaAbCbc
149
⇒ aaAbbCc
⇒ aaAbbcc
⇒ aaabCbbcc ⇒ aaabbCbcc ⇒ aaabbbCcc ⇒ aaabbbccc. Bei Typ-2- und Typ-3-Grammatiken kann die Ableitungsfolge eines Wortes als Ableitungsbaum dargestellt werden. Im Gegensatz dazu ist dies f¨ ur die Ableitungsfolge eines Wortes aus einer Typ-1-Sprache i.a. nicht m¨ oglich, so auch nicht f¨ ur die obige Ableitungsfolge des Wortes w = a3 b3 c3 . Liegen die Produktionsregeln jedoch in der Form ϕ1 Aϕ2 → ϕ1 ψϕ2 vor, dann wird mit jedem Ableitungsschritt ein Nicht-Terminalsymbol durch eine Symbolfolge ersetzt, was eine Baumdarstellung der Ableitungsfolge erm¨ oglicht. Die Grammatik G1 im Beispiel 6.9 ist offensichtlich monoton, weil auf der linken Seite jeder Produktionsregel eine h¨ ochstens gleich lange Symbolfolge steht wie auf der rechten Seite. G1 ist aber nicht kontextsensitiv, denn die Regel Cb → bC ist nicht von der Form ϕ1 Aϕ2 → ϕ1 ψϕ2 . Alle u ¨ brigen Regeln gen¨ ugen dieser Form. Beispielsweise kann man bei Cc → cc einfach ϕ1 = ε und ϕ2 = c w¨ ahlen, um dies zu u ufen. ¨ berpr¨ aquivalente kontextsensitive GramMit dem Algorithmus 6.7 kann G1 in eine ¨ matik G1 umgeformt werden. Im ersten Schritt werden die Terminalsymbole di in P durch die entspechenden Nicht-Terminalsymbole Di ersetzt, woraus Pmod resultiert. Zusammen mit den Regeln Di → di ergibt dies
P = Pmod ∪ {Di → di | di ∈ VT } = { S → D1 AD2 D3 | D1 D2 D3 , A → D1 AD2 C | D1 D2 C , CD2 → D2 C , CD3 → D3 D3 , D 1 → a, D2 → b , D3 → c } Wie P enth¨ alt auch Pmod nur eine Regel, die nicht kontextsensitiv ist, n¨ amlich CD2 → D2 C . Unter Anwendung des zweiten Schrittes entsteht daraus:
CD2 → H1 D2 H1 D 2 → H1 C H1 C → D 2 C Die zur monotonen Grammatik G1 gleichwertige kontextsensitive Grammatik ist somit G1 = (VN , VT , P , S) mit
VN = VN ∪ {D1 , D2 , D3 , H1 } und P = (P \ {CD2 → D2 C}) ∪ {CD2 → H1 D2 , H1 D2 → H1 C , H1 C → D2 C}.
150
6. Repr¨ asentation und Anwendung linguistischen Wissens
6.2.4 Allgemeine Sprachen (Typ 0) Es ist zwar m¨ oglich, f¨ ur eine gegebene Sprache eine Typ-0-Grammatik zu formulieren, also eine Grammatik mit Regeln der Form ϕ → ψ mit ϕ ∈ ur eine (VT ∪ VN )+ und ψ ∈ (VT ∪ VN )∗ . Es gibt aber kein einfaches Beispiel f¨ Typ-0-Sprache. Da zudem Typ-0-Sprachen f¨ ur die Sprachverarbeitung nicht von Belang sind, verzichten wir darauf, hier weiter auf die Typ-0-Sprachen einzugehen.
6.2.5 Das Wortproblem Unter dem Begriff Wortproblem versteht man die Aufgabe, zu entscheiden, ort, die durch die Grammatik ob ein gegebenes Wort w zur Sprache L(G) geh¨ G gegeben ist. Im mathematischen Sinne ist dies f¨ ur alle Sprachen m¨ oglich, die sich mit einer Typ-1-Grammatik beschreiben lassen, also f¨ ur alle Sprachen der Sprachklasse L1 . Es gilt somit: osbar, d.h. Satz 6.10: Das Wortproblem ist f¨ ur jede Typ-1-Grammatik G l¨ es existiert ein Algorithmus, der nach endlich vielen Schritten entscheidet, ob ort oder nicht. ein konkretes Wort w zur Sprache L(G) geh¨ Die Richtigkeit dieses Satzes kann folgendermassen gezeigt werden: Gegeben ist eine Sprache L aus der Sprachklasse L1 in der Form einer monotonen Grammatik G = (VN , VT , P, S), in der also nur Regeln der Form ϕ → ψ mit |ϕ| ≤ |ψ| vorkommen. Ferner ist ein Wort w ∈ VT∗ gegeben. ort, dann muss eine Ableitungsfolge S ⇒ u1 ⇒ Falls w zur Sprache L(G) geh¨ u2 ⇒ . . . ⇒ un−1 ⇒ w mit endlichem n existieren, wobei der Monotonie ur ein konkretes wegen |S| ≤ |u1 | ≤ |u2 | ≤ . . . ≤ |un−1 | ≤ |w| gilt. Zudem ist f¨ Wort w auch |w| gegeben und kann insbesondere nicht unendlich sein. Somit orist auch die Menge der aus S erzeugbaren, maximal |w| Symbole langen W¨ ter U = {ui | S ⇒∗ ui , |ui | ≤ |w|} begrenzt und in endlich vielen Schritten uft werden, ableitbar. Um zu entscheiden, ob w ∈ L(G) ist, muss nur u ¨ berpr¨ ob w ∈ U ist. orende Sprache l¨ ost, Ein Algorithmus, der das Wortproblem f¨ ur jede zu L1 geh¨ kann demnach wie folgt als Programm formuliert werden: INPUT:
w ∈ VT∗ sowie eine monotone Grammatik G = (VN , VT , P, S)
OUTPUT: w ∈ L(G) oder w ∈ / L(G)
6.2
Die Sprachhierarchie nach Chomsky
BEGIN U := {S}
151
(U : Menge der abgeleiteten W¨ orter)
REPEAT ri U := U ∪ {u2 | u1 ∈ U , u1 ⇒ u2 , |u2 | ≤ |w|} UNTIL keine Ver¨ anderung IF w ∈ U THEN Ausgabe: w ∈ L(G) ELSE Ausgabe: w ∈ / L(G) END END. Damit ist die G¨ ultigkeit des Satzes 6.10 gezeigt. Zugleich liegt auch ein Verfahren vor, mit dem nicht nur entschieden werden kann, ob w in L(G) enthalten ist oder nicht: Mit einer kleinen Erweiterung liefert das obige Programm auch die Ableitungsfolge f¨ ur w, die im Zusammenhang mit der Sprachverarbeitung / L(G). oft wichtiger ist als die Ausgabe w ∈ L(G) bzw. w ∈ Das Programm muss dahingehend erweitert werden, dass f¨ ur jedes erzeugte Wort u2 , das aus der Anwendung der Regel ri ∈ P auf das Wort u1 entsteht ri u2 ), das Tripel (u2 , u1 , ri ) in die Menge U aufgenommen wird. Dann (u1 ⇒ kann f¨ ur jedes Tripel der Menge U , bei dem u2 = w ist, die Ableitungsfolge von hinten beginnend aufgeschrieben werden. Zu bemerken ist, dass f¨ ur viele Grammatiken die Ableitungsfolge f¨ ur ein konkretes Wort nicht eindeutig ist. Diese hier pr¨ asentierte, theoretisch korrekte L¨ osung des Wortproblems kann in der Praxis kaum befriedigen, weil f¨ ur jede praktisch relevante Grammatik die Menge U zwar endlich ist, aber dennoch so gross, dass sie auf einem realen Computer nicht handhabbar ist. Dies kann man beispielsweise einfach damit veranschaulichen, dass es zwar theoretisch m¨ oglich ist, einen SyntaxChecker f¨ ur ein |w| Symbole langes Java-Programm w (ein Wort aus den Terminalsymbolen der Programmiersprache Java) mit dem obigen Algorithmus zu realisieren. In Anbetracht der Gr¨ osse der Menge U , die nicht nur alle orter ui mit Java-Programme wj mit |wj | ≤ |w| umfasst, sondern auch alle W¨ |ui | ≤ |w|, die noch mindestens ein Nicht-Terminalsymbol enthalten, ist diese L¨ osung jedoch nicht realistisch. Um zu praktikableren L¨ osungen des Wortproblems zu gelangen, m¨ ussen die Eigenheiten der betreffenden Grammatik besser ber¨ ucksichtigt werden. Bisher ist bloss ber¨ ucksichtigt worden, dass die Grammatiken der Sprachklasse L1 angeh¨ oren. Es ist jedoch naheliegend, dass sich bei den Sprachklassen L2 und L3 effizientere Algorithmen ergeben, um ein gegebenes Wort zu analysieren. Darauf wird im folgenden Abschnitt eingegangen.
152
6.3
6. Repr¨ asentation und Anwendung linguistischen Wissens
6.3 Die Wortanalyse Unter Wortanalyse wollen wir hier das Ermitteln einer Strukturbeschreibung f¨ ur ein gegebenes Wort w und eine gegebene Grammatik G verstehen. Als allgemeines Konzept der Wortanalyse kann das Parsing gelten. Ein ParsingAlgorithmus oder kurz Parser ermittelt f¨ ur ein gegebenes Wort w ∈ L(G) und eine gegebene Grammatik G eine Strukturbeschreibung. Als Strukturbeschreibung kann man etwa einen Ableitungsbaum verstehen, wie er beispielsweise in Abbildung 6.4 dargestellt ist. Wie bereits im Abschnitt 6.1 erw¨ ahnt worden ist, kann ein formales System zur Beschreibung einer formalen Sprache erzeugend oder analysierend sein. Eine Chomsky-Grammatik G = (VN , VT , P, S) ist ein erzeugendes System und kann deshalb nicht direkt zur Analyse eines gegebenen Wortes eingesetzt werden, sondern nur mit einem geeigneten Parser. Eine Alternative zum Einsatz eines Parsers ist, ein analysierendes System zur Beschreibung einer formalen Sprache zu verwenden, also einen Automaten. In welchen F¨ allen es sinnvoll ist, f¨ ur die Wortanalyse Automaten einzusetzen und wann Parsing vorteilhafter ist, h¨ angt haupts¨ achlich von der Klasse der Grammatik ab.
6.3.1 Wortanalyse f¨ ur Typ-3-Grammatiken Die Wortanalyse f¨ ur eine regul¨ are Sprache kann sehr effizient durchgef¨ uhrt werden, weil sich jede Typ-3-Grammatik in einen deterministischen endlichen Automaten u uhren l¨ asst. Ein solcher Automat ben¨ otigt zur Analyse ¨ berf¨ uberg¨ ange), wie sich nachfolgend eines Wortes w genau |w| Schritte (Zustands¨ zeigen wird. Zuerst wollen wir den endlichen Automaten einf¨ uhren: Definition 6.11: Ein endlicher Automat (ohne Ausgabe1 ) wird durch ein Quintupel AE = (E, SA , δ, s0 , F ) spezifiziert. Dabei bezeichnen
1
E = {e1 , . . . , em }
die nichtleere Menge der Eingabesymbole,
SA = {s0 , . . . , sn } δ : SA ×E → SA
die nichtleere Menge der Zust¨ ande, ¨ die Uberf¨ uhrungsfunktion f¨ ur alle Zust¨ ande und Eingabesymbole,
s0 ∈ S A
den Anfangszustand und
F ⊆ SA
die Menge der Endzust¨ ande
Alle hier betrachteten Automaten machen keine expliziten Ausgaben. Die Information wird dadurch gewonnen, dass die bei der Verarbeitung eines Wortes nacheinander durchlaufenen Zust¨ ande des Automaten beobachtet werden.
6.3
Die Wortanalyse
153
¨ Die Elemente der Uberf¨ uhrungsfunktion werden als δ(si , er ) → sj | . . . | sk geschrieben. Ein solches Element gibt an, dass der endliche Automat vom Zuande sj , . . . , sk u stand si bei der Eingabe er in einen der Zust¨ ¨bergeht. Man unterscheidet zwischen deterministischen und nichtdeterministischen endlichen Automaten. Wir verstehen darunter: Definition 6.12: Ein endlicher Automat wird als deterministisch bezeichnet, falls er im Zustand si bei Eingabe des Zeichens er immer in den Zustand sj u ¨ bergeht: δ(si , er ) → sj . Falls ein Automat mindestens einen Zustand si hat, von dem er bei der Eingabe von er in einen von mehreren Zust¨ anden u ¨ bergehen kann, also δ(si , er ) → sj | . . . | sk , dann handelt es sich um einen nichtdeterministischen endlichen Automaten. Definition 6.13: Als Sprache L(AE ) eines Automaten AE wird die Menge aller W¨ orter verstanden, die vom Automaten akzeptiert werden. Ein Wort w gilt dann als vom Automaten akzeptiert, wenn sich der Automat nach der Verarbeitung des Wortes w in einem Endzustand befindet. In diesem Fall sagt ort zur Sprache des Automaten, also w ∈ L(AE ). man auch: Das Wort w geh¨ Die Wortanalyse kann somit f¨ ur Typ-3-Sprachen am besten so gel¨ ost werden, dass die betreffende Grammatik in einen endlichen deterministischen Automaten u uhrt wird. Dies ist f¨ ur jede Typ-3-Grammatik in zwei Schritten ¨ berf¨ m¨ oglich, wie nachfolgend erl¨ autert wird. asst sich ein ¨ aquivalenter endF¨ ur jede Typ-3- bzw. regul¨ are Grammatik G l¨ ur welchen L(AE ) = L(G) erf¨ ullt ist. Mit Hilfe licher Automat AE angeben, f¨ des folgenden Algorithmus kann zu einer rechtslinearen Grammatik ein ¨ aquivalenter nichtdeterministischer endlicher Automat konstruiert werden: Algorithmus 6.14: Konstruktion eines nichtdeterministischen endlichen Automaten aus einer rechtslinearen Grammatik2 INPUT:
Rechtslineare Grammatik G = (VN , VT , P, S) mit Regeln der Form: Y → xZ , Y → x oder Y → ε
OUTPUT:
Endlicher Automat AE = (E, SA , δ, s0 , F ) mit L(AE ) = L(G)
BEGIN E := VT SA := VN ∪ {Φ} 2
(Eingabealphabet) (Zust¨ ande)
Da es zu jeder rechtslinearen Typ-3-Grammatik eine ¨ aquivalente linkslineare Typ-3-Grammatik gibt, kann man jede Typ-3-Sprache mit einer rechtslinearen Grammatik beschreiben. Das Automatenkonstruktionsverfahren wird hier deshalb nur f¨ ur rechtslineare Grammatiken angegeben.
154
6. Repr¨ asentation und Anwendung linguistischen Wissens
s0 := S F := {Y ∈ VN | (Y → ε) ∈ P } ∪ {Φ}
(Anfangszustand) (Endzust¨ ande)
FOR EACH Regel der Form Y → xZ DO ¨ erweitere die Uberf¨ uhrungsfunktion mit: δ(Y, x) → Z END FOR EACH Regel der Form Y → x DO ¨ erweitere die Uberf¨ uhrungsfunktion mit: δ(Y, x) → Φ END END. Mit diesem Algorithmus l¨ asst sich jede rechtslineare Grammatik in einen nichtdeterministischen endlichen Automaten umwandeln. Das folgende Beispiel veranschaulicht das Vorgehen. Beispiel 6.15: Mit dem Algorithmus 6.14 l¨ asst sich die regul¨ are Grammatik von Beispiel 6.4 wie folgt in einen endlichen Automaten umwandeln: Eingabealphabet:
E = VT = {a, b}
Zustandsmenge:
SA = VN ∪ Φ = {S, A, Φ}
Startzustand:
s0 = S
Endzust¨ ande: ¨ Uberf¨ uhrungsfunktion:
F = {A, Φ} δ(S, a) → S ; δ(S, b) → A; δ(A, b) → S ; δ(A, a) → A
Damit ist der endliche Automat AE = (E, SA , δ, s0 , F ) vollst¨ andig bestimmt. orende Zustandsdiagramm und die Zustandstabelle sind in AbDas zu AE geh¨ bildung 6.5 dargestellt. Der Zustand Φ ist in diesem Beispiel nicht erreichbar, alt. Dieser Zustand ist weil die Grammatik keine Regel der Form Y → x enth¨ somit f¨ ur den Automaten belanglos und wurde deshalb in der Abbildung 6.5 nicht eingetragen. a
a
b S
b
A
S A
a S A
b A S
Abbildung 6.5. Zustandsdiagramm (links) und Zustandstabelle (rechts) f¨ ur den endlichen Automaten in Beispiel 6.15. Bis auf die Markierung der Endzust¨ ande sind die beiden Darstellungen gleichwertig.
6.3
Die Wortanalyse
155
Um aus einer rechtslinearen Typ-3-Grammatik einen ¨ aquivalenten endlichen Automaten zu ermitteln, kann man also den Algorithmus 6.14 anwenden. Im Beispiel 6.15 ist der resultierende Automat deterministisch (vergl. Definition 6.12). Dies ist jedoch nicht generell der Fall, wie das folgende Beispiel zeigt: Beispiel 6.16: Gegeben ist die Sprache:
L(G3 ) = {w ∈ {a, b}∗ | das letzte Zeichen ist vorher schon einmal vorgekommen}. Eine rechtslineare Grammatik f¨ ur diese Sprache ist G3 = (VN , VT , P, S) mit VN = {S, A, B}, VT = {a, b} und
P = { S → aS | bS | aA | bB , A → bA | a, B → aB | b }. Mit dem Algorithmus 6.14 l¨ asst sich diese Grammatik in den folgenden nichtuhren: deterministischen endlichen Automaten ANE = (E, SA , δ, s0 , F ) u ¨ berf¨ Eingabealphabet:
E = VT = {a, b}
Zustandsmenge:
SA = VN ∪ Φ = {S, A, B, Φ}
Startzustand:
s0 = S
Endzust¨ ande: ¨ Uberf¨ uhrungsfunktion:
F = {Φ} δ(S, a) → S | A; δ(S, b) → S | B ; δ(A, a) → Φ; δ(A, b) → A; δ(B, a) → B ; δ(B, b) → Φ
b
a|b A a
a a
φ
S b
b
S A B Φ
a S |A Φ B –
b S |B A Φ –
B Abbildung 6.6. Zustandsdiagramm (links) und Zustandstabelle (rechts) f¨ ur den nichtde-
terministischen endlichen Automaten ANE in Beispiel 6.16
156
6. Repr¨ asentation und Anwendung linguistischen Wissens
¨ Die Uberf¨ uhrungsfunktion des Automaten ANE ist in Abbildung 6.6 als Zustandsdiagramm und als Zustandstabelle dargestellt. Es ist klar ersichtlich, dass der Automat im Zustand S anhand der aktuellen Eingabe nicht eindeutig entscheiden kann, welches der Folgezustand ist. Der Automat muss sich stets die alternativen Zustandsfolgen merken und kann erst am Wortende entscheiden, welche der m¨ oglichen Zustandsfolgen zum eingegebenen Wort geh¨ ort. Je nach Automat und Wort muss die Zustandsfolge wiederum nicht eindeutig sein. Nichtdeterministische endliche Automaten sind zwar oft kompakt, d.h. sie ¨ haben weniger Zust¨ ande als ihre deterministischen Aquivalente, aber sie sind nicht einfach in ein Programm umsetzbar und brauchen zudem f¨ ur die Abarbeitung eines Eingabewortes w in der Regel eine Anzahl Schritte, die viel gr¨ osser ist als |w|. Da es zu jedem nichtdeterministischen endlichen Automaaquivalenten deterministischen Automaten ADE gibt, also mit ten ANE einen ¨ L(ANE ) = L(ADE ), ist es in der Praxis viel einfacher, zuerst den ¨aquivalenten ur die deterministischen Automaten ADE zu konstruieren und diesen dann f¨ Wortanalyse einzusetzen. Die Idee, die dieser Konstruktion zu Grunde liegt, ist, Teilmengen der Zust¨ anande von ADE aufzufassen, wobei dann der determinisde von ANE als Zust¨ tische Automat ADE von einer Zustandsmenge Si bei der Eingabe er ∈ E in die Zustandsmenge Sj u ¨bergeht. Es kann also wie folgt vorgegangen werden: Algorithmus 6.17:
Konstruktion eines deterministischen endlichen Automaten aus einem nichtdeterministischen endlichen Automaten
Aus der Zustandstabelle des nichtdeterministischen endlichen Automaten ANE wird die Zustandstabelle des ¨aquivalenten deterministischen endlichen Automaten ADE konstruiert, indem zuerst die Anfangszustandsmenge3 von ANE dem Anfangszustand von ADE zugeordnet wird: S0 := {s0 }. Dann wird in der Zustandstabelle f¨ ur die Zeile mit S0 in der Kolonne mit Eingabe er ∈ E die Menge der Folgezust¨ ande von S0 bei Eingabe er eingetragen. F¨ ur jede so entstehende neue Teilmenge von Zust¨ anden wird ein neues Sj (also eine neue ur Sj wird wieZeile) in die Zustandstabelle von ADE aufgenommen. Auch f¨ ande ermittelt und eine derum f¨ ur jede Eingabe er die Menge der Folgezust¨ neue Zeile er¨ offnet. So geht es weiter, bis alle Zustandsmengen abgearbeitet sind. Der Algorithmus l¨ asst sich einfach an einem Beispiel demonstrieren: 3
Hier hat ein endlicher Automat gem¨ ass Definition 6.11 immer nur einen Anfangszustand und die Menge der Anfangszust¨ ande deshalb nur ein Element, n¨ amlich s0 .
6.3
Die Wortanalyse
157
Beispiel 6.18: F¨ ur den nichtdeterministischen Automaten ANE in Abbildung 6.6 wird mit dem Algorithmus 6.17 die Zustandstabelle des ¨ aquivalenten deterministischen Automaten ADE (siehe Abbildung 6.7) wie folgt aufgebaut: In die erste Zeile wird die Menge der Startzust¨ ande S0 := {S} eingetragen. Die Menge der Folgezust¨ ande von S0 bei der Eingabe von a, also {S, A}, wird in die Kolonne a eingesetzt und in die Kolonne b dementsprechend {S, B}.
S0 S1 S2 S3 S4 S5 S6
a {S, A} {S, A, Φ} {S, A, B} {S, A, Φ} {S, A, B, Φ} {S, A, B} {S, A, B, Φ}
:= {S} := {S, A} := {S, B} := {S, A, Φ} := {S, A, B} := {S, B, Φ} := {S, A, B, Φ}
b {S, B} {S, A, B} {S, B, Φ} {S, A, B} {S, A, B, Φ} {S, B, Φ} {S, A, B, Φ}
F¨ ur die neuen Mengen {S, A} und {S, B}, die auch mit S1 und S2 bezeichnet sind, werden in der Tabelle zwei neue Zeilen hinzugef¨ ugt, und die entsprechenden Folgezustandsmengen werden in den Kolonnen a und b eingetragen. F¨ ur die Zeile S1 := {S, A} kommt in die Kolonne a somit die Menge {S, A, Φ} zu stehen, weil der Automat ANE auf die Eingabe a von der Zustandsmenge S1 = {S, A} immer in einen Zustand der Menge {S, A, Φ} u ¨ bergeht. Wenn alle neuen Folgemengen abgehandelt sind, dann resultiert die obige Zustandstabelle, aus der einfach das geh¨ orige Zustandsdiagramm (Abbildung 6.7) mit den Zust¨ anden SADE = {S0 , . . . , S6 } aufgezeichnet werden kann. S3
a
a S1 a
b b
S0
S4 b
a|b
S6
a|b
a S2
a b S5
b
Abbildung 6.7. Zustandsdiagramm f¨ ur den deterministischen endlichen Automaten ADE
in Beispiel 6.18
158
6. Repr¨ asentation und Anwendung linguistischen Wissens
Mit dem so ermittelten deterministischen endlichen Automaten ADE kann nun f¨ ur jedes Wort w in |w| Schritten entschieden werden, ob es zur Sprache L(ADE ) geh¨ort oder nicht. Beim L¨ osen praktischer Probleme treten oft Typ-3-Sprachen auf, die nicht so einfach zu beschreiben sind wie diejenigen in den Beispielen 6.4 und 6.16. In vielen F¨ allen l¨ asst sich aber eine Sprache Lk als Schnittmenge oder Vereiniur die auch leichter je gung von einfacheren Sprachen L1 , L2 , . . . darstellen, f¨ eine Grammatik aufgeschrieben werden kann. Jede Grammatik kann dann in einen endlichen Automaten umgewandelt werden. Aus diesen wiederum l¨ asst sich ein Automat f¨ ur die Sprache Lk konstruieren. Da im Abschnitt 6.6 der Durchschnitt von regul¨ aren Sprachen verwendet wird, wollen wir ein solches Beispiel anschauen. Beispiel 6.19: Gegeben ist die Sprache:
Lk = {w ∈ {a, b}∗ | w enth¨alt eine ungerade Anzahl b und das letzte Zeichen ist vorher schon einmal vorgekommen}. F¨ ur diese Sprache ist es nicht einfach, direkt eine regul¨ are Grammatik oder einen endlichen Automaten anzugeben. Viel einfacher ist es, Lk als Schnittmenge der Sprachen L1 und L2 zu betrachten, also Lk = L1 ∩ L2 , mit
L1 = {w ∈ {a, b}∗ | w enth¨alt eine ungerade Anzahl b} und
L2 = {w ∈ {a, b}∗ | das letzte Zeichen ist vorher schon einmal vorgekommen}. F¨ ur diese beiden Sprachen kennen wir bereits Grammatiken und ¨ aquivalente endliche Automaten (siehe Beispiele 6.4 bzw. 6.15 und 6.16). Aus den Zustandstabellen dieser Automaten kann die Zustandstabelle des Automaten AEk mit L(AEk ) = Lk mit dem folgenden Algorithmus konstruiert werden: Algorithmus 6.20: Konstruktion eines endlichen Automaten, dessen Sprache die Schnittmenge der Sprachen zweier gegebener deterministischer endlicher Automaten ist Aus den Zustandstabellen der deterministischen endlichen Automaten AE1 und AE2 wird die Zustandstabelle des Automaten AEk mit der Sprache L(AEk ) = L(AE1 ) ∩ L( AE2 ) wie folgt konstruiert: Der Anfangszustand von AEk ist gleich dem Anfangszustandspaar von AE1 und AE2 , also (S, S).4 4 Bei der Notation (X, Y ) f¨ ur die Zustandspaare ist wichtig, dass mit X immer ein Zustand des Automaten AE1 gemeint ist und mit Y ein solcher von AE2 . Die Reihenfolge ist somit von Bedeutung, im Gegensatz zu einer Zustandsmenge, die wir im Beispiel 6.18 mit {X, Y } bezeichnet haben.
6.3
Die Wortanalyse
159
Dann wird in der Zustandstabelle f¨ ur die Zeile mit (S, S) in der Kolonne mit Eingabe er ∈ E das Zustandspaar (X, Y ) eingetragen, in das die Automaten ur jedes so entstehende neue AE1 und AE2 je bei Eingabe er u ¨ bergehen. F¨ Zustandspaar wird eine neue Zeile in die Zustandstabelle von AEk aufgenommen, bis alle abgearbeitet sind. Schliesslich wird jedem Zustandspaar in der entstandenen Zustandstabelle ein neuer Zustandsname (z.B. Si mit i = 0, 1, 2, . . .) zugeordnet. Nun sind noch ande von die Endzust¨ ande von AEk zu bestimmen. Es sind diejenigen Zust¨ AEk Endzust¨ande, bei denen beide Zust¨ande des betreffenden Zustandspaares Endzust¨ ande der Automaten AE1 und AE2 sind. Der Algorithmus 6.20 kann nun zur L¨ osung des Problems in Beispiel 6.19 ¨ eingesetzt werden. Der Ubersichtlichkeit halber schreiben wir die Zustandstabellen von AE1 (Beispiel 6.15) und AE2 (Beispiel 6.18) nochmals auf und zwar beide mit gleicher Namensgebung f¨ ur die Zust¨ ande. Die in der ersten Kolonne fett gedruckten Zust¨ ande sind Endzust¨ ande. Automat AE1 :
S A
a S A
b A S
Automat AE2 :
S A B C D E F
a A C D C F D F
b B D E D F E F
Aus den Zustandstabellen der Automaten AE1 und AE2 kann nun mit dem Algorithmus 6.20 die Zustandstabelle des deterministischen endlichen Automaten AEk konstruiert werden. Das Zustandsdiagramm von AEk ist in Abbildung 6.8 dargestellt. Automat AEk :
S0 := (S, S) S1 := (S, A) S2 := (A, B) S3 := (S, C) S4 := (A, D) S5 := (S, E) S6 := (A, F ) S7 := (S, F ) S8 := (S, D) S9 := (A, E)
a (S, A) (S, C) (A, D) (S, C) (A, F ) (S, D) (A, F ) (S, F ) (S, F ) (A, D)
b (A, B) (A, D) (S, E) (A, D) (S, F ) (A, E) (S, F ) (A, F ) (A, F ) (S, E)
160
6. Repr¨ asentation und Anwendung linguistischen Wissens S3
a
a
a S1
b
a
b
b
a
S7
b
S0
S4
a
a a
S9 b
b S6
S2 b
b
b
a
b a
S8
S5 Abbildung 6.8. Zustandsdiagramm des deterministischen endlichen Automaten AEk f¨ ur
die Sprache Lk im Beispiel 6.19
6.3.2 Wortanalyse f¨ ur Typ-2-Grammatiken In der Menge der kontextfreien oder Typ-2-Sprachen L2 gibt es die echte Teilmenge L2det der deterministischen kontextfreien Sprachen.5 Die Menur die ein deterministischer Kellerautomat ge L2det umfasst alle Sprachen, f¨ (engl. push-down automaton) konstruiert werden kann, der sie akzeptiert. Da oren, ist die Verarbeitung viele Programmiersprachen zur Menge L2det geh¨ deterministischer kontextfreier Sprachen grunds¨ atzlich ein wichtiges Thema, beispielsweise im Compilerbau. Nat¨ urliche Sprachen k¨ onnen jedoch nicht als deterministische kontextfreie Sprachen betrachtet werden. Die spezielle Sprachmenge L2det hat somit in der Sprachverarbeitung keine wesentliche Bedeutung. Wir gehen deshalb im Folgenden weder auf Sprachen der Menge L2det noch auf Kellerautomaten weiter ein (Literatur zu diesem Thema sind beispielsweise [17] und [26]). Im Gegensatz zu den Typ-3-Grammatiken, bei denen sich die Wortanalyse stets mit deterministischen endlichen Automaten effizient l¨ osen l¨ asst, ist also der Einsatz von Automaten bei Typ-2-Grammatiken nur in Spezialf¨ allen zweckm¨ assig. Wir wollen deshalb bei Typ-2-Grammatiken auf das Parsing zur¨ uckgreifen, das bereits im Abschnitt 6.3 als genereller Ansatz f¨ ur die Wortanalyse eingef¨ uhrt worden ist. 5
Die Sprache L = {an bn } ∪ {an b2n } ist ein Beispiel f¨ ur eine Sprache, die in L2 , aber nicht in L2det enthalten ist.
6.3
Die Wortanalyse
161
6.3.2.1 Parsing Bisher ist noch nichts dar¨ uber gesagt worden, wie ein Parser vorgeht, um f¨ ur ein Wort w und eine Grammatik GM eine Strukturbeschreibung bzw. den Ableitungsbaum zu ermitteln. Zur Klassifikation der Arbeitsweise von Parsern gibt es drei Kriterien:
a) Verarbeitungsrichtung: Grunds¨ atzlich kann das Wort w von links nach rechts oder umgekehrt verarbeitet werden. Die Verarbeitung kann auch an ausgew¨ ahlten Stellen im Innern des Wortes beginnen und in beide Richtungen fortschreiten. b) Analyserichtung: Vom Ableitungsbaum, den der Parser f¨ ur ein gegebenes Wort zu ermitteln hat, sind zu Beginn das Startsymbol S (die Wurzel des Ableitungsbaumes) und die dem Wort entsprechende Folge von Terminalsymbolen (die Bl¨ atter des Baumes) gegeben. Beim Ermitteln des Ableitungsbaumes kann nun von der Wurzel oder von den Bl¨ attern ausgegangen werden. Wird bei der Wurzel S begonnen, dann werden dem Baum durch das Anwenden einer Regel mit dem Kopf S erste provisorische Zweige (NichtTerminale) oder Bl¨ atter (Terminale) angef¨ ugt. Die entstandenen Zweige werden wiederum durch Anwenden der entsprechenden Regeln um neue Zweige oder Bl¨ atter erweitert. Weil der Ableitungsbaum6 von oben nach unten entsteht, wird in diesem Falle von Top-down-Analyse gesprochen. Wird die Analyse bei den Bl¨ attern begonnen, indem eine Anzahl Bl¨ atter durch das Anwenden einer Regel zu einem Nicht-Terminalsymbol zusammengefasst werden, dann w¨ achst der Ableitungsbaum von unten nach oben, und man spricht von Bottom-up-Analyse. c) Suchstrategie: Im Allgemeinen stehen dem Parser bei jedem Analyseschritt mehr als eine anwendbare Regel zur Verf¨ ugung. Nebst anderen Auswahlstrategien gibt es die Breitensuche und die Tiefensuche. Bei der Breitensuche werden diejenigen Regeln zuerst angewandt, die alternative Zweige auf derselben Tiefe des Baumes erzeugen. Der Ableitungsbaum w¨ achst also zuerst in die Breite. Bei der Tiefensuche werden hingegen zuerst Regeln auf die zuletzt erzeugten Zweige angewandt (sofern passende vorhanden sind). Der Baum w¨ achst also zuerst in die Tiefe. Die Wahl der Arbeitsweise ist wichtig, weil sie die Effizienz des Parsers stark beeinflussen kann. Anhand eines Beispiels wird im Folgenden die Arbeitsweise eines Parsers veranschaulicht. 6 In der Informatik stehen die B¨ aume bekanntlich auf dem Kopf. Die Wurzel ist folglich stets oben und die Zweige des Baumes wachsen nach unten!
162
6. Repr¨ asentation und Anwendung linguistischen Wissens
6.3.2.2 Chart-Parsing Ein Parser beantwortet die Frage, ob und wie eine Folge von Terminalsymbolen aus dem Startsymbol abgeleitet werden kann. Typischerweise wird dieses Problem in Teilprobleme zerlegt, welche versuchen, die gleiche Frage f¨ ur verschiedene Nicht-Terminalsymbole und f¨ ur verschiedene Teilabschnitte der Terminalsymbolfolge zu beantworten. Die Grundidee beim Chart-Parsing besteht darin, dass alle gefundenen L¨ osungen f¨ ur solche Teilprobleme in einer Datenstruktur, der sogenannten Chart, gespeichert werden. So wird erreicht, dass der Parser jedes Teilproblem nur einmal l¨ osen muss. Abbildung 6.9 zeigt eine (aus Gr¨ unden der Darstellung unvollst¨ andige) Chart. F¨ ur dieses und alle weiteren Beispiele in diesem Abschnitt wird eine vereinfachte Variante der in Beispiel 6.6 vorgestellten Grammatik f¨ ur mathematische Ausdr¨ ucke verwendet. Es wird im Folgenden davon ausgegangen, dass die rechten Regelseiten entweder aus einer Folge von Nicht-Terminalsymbolen oder aus einem einzigen Terminalsymbol bestehen. Die Grammatik mit dem Startsymbol Exp hat folgende Produktionsregeln:
P = { Exp Exp Term Term Add Mul Ident Ident Ident
→ → → → → → → → →
Term, Term Add Exp, Ident, Ident Mul Term, +, ∗, a, b, c}
(1) (2) (3) (4) (5) (6) (7) (8) (9)
Eine Chart f¨ ur eine Terminalsymbolfolge w = w1 , w2 , ..., wN (hier a ∗ b + c) besteht aus den Knoten n0 , n1 , ..., nN und aus beschrifteten Kanten. Der Knoten n0 entspricht der Position vor dem ersten Symbol und der Knoten nN der Position nach dem letzten Symbol. Die u ¨ brigen Knoten ni stehen
Exp → • Term Add Exp
Exp Exp → Term Add • Exp
Exp → Term • Add Exp Term Ident
n0
a
Mul n1
∗
Ident n2
b
Exp Ident
Add n3
+
n4
c
n5
Abbildung 6.9. Ein Beispiel f¨ ur eine Chart. Zur u ¨bersichtlicheren Darstellung sind nicht
alle Kanten dargestellt.
6.3
Die Wortanalyse
163
f¨ ur die Positionen zwischen den jeweiligen Terminalsymbolen wi und wi+1 . Eine Kante mit Startknoten ni , Endknoten nj und einer Beschriftung L wird durch das Tripel (ni , nj , L) beschrieben, wobei i ≤ j gelten muss. Betrachtet man die Knoten als Positionen in der Terminalsymbolfolge, so u ¨ berspannt eine Kante also die Symbolfolge wi+1 wi+2 . . . wj . Im Fall i = j ist die u ¨ berspannte Symbolfolge leer. Es wird unterschieden zwischen aktiven und passiven Kanten. Eine passive Kante ist mit einem Nicht-Terminalsymbol beschriftet und sagt aus, dass die u ¨ berspannte Terminalsymbolfolge aus diesem Nicht-Terminalsymbol abgeleitet werden kann. In unserem Beispiel bedeutet die Kante (n0 , n3 , Term), dass die Symbolfolge a ∗ b aus dem Nicht-Terminalsymbol T erm abgeleitet werden kann, oder formal ausgedr¨ uckt: Term ⇒∗ a ∗ b. Aktive Kanten repr¨ asentieren Zwischenschritte bei der Erzeugung von passiven Kanten. Im Unterschied zu den passiven Kanten sind sie mit einer Grammatikregel beschriftet, wobei die u ¨ berspannte Terminalsymbolfolge dem Anfang der rechten Regelseite entspricht, also den Nicht-Terminalsymbolen, die vor dem Zeichen • stehen. In unserem Beispiel bedeutet also die Kante (n0 , n4 , Exp → Term Add • Exp), dass die Symbolfolge a ∗ b + aus der Folge Term Add abgeleitet werden kann. Es gibt drei Operationen, mit denen neue Kanten erzeugt werden k¨ onnen: die Fundamentalregel, die Top-Down-Pr¨ adiktion und die Bottom-Up-Pr¨ adiktion. Diese Regeln werden im Folgenden genauer erl¨ autert. Regel 6.21: Die Fundamentalregel kommt zur Anwendung, wenn in der Chart eine aktive Kante auf eine passende passive Kante trifft. Dabei kann eine aktive oder eine passive Kante entstehen. Es gilt:
(ni , nj , A → ϕ1 • B ϕ2 ) und (nj , nk , B)
mit ϕ1 , ϕ2 ∈ VN ∗
(ni , nk , A → ϕ1 B • ϕ2 ) oder (ni , nk , A)
wenn |ϕ2 | > 0 wenn |ϕ2 | = 0
erzeugen
Regel 6.22: Bei der Top-Down-Pr¨ adiktion wird ein Problem (eine aktive Kante) auf ein neues Teilproblem (eine aktive Kante mit leerem Pr¨ afix) zur¨ uckgef¨ uhrt:
(ni , nj , A → ϕ1 • B ϕ2 )
mit ϕ1 , ϕ2 ∈ VN ∗
(nj , nj , B → • ψ)
f¨ ur jede Grammatikregel B → ψ mit Regelkopf B
erzeugt
164
6. Repr¨ asentation und Anwendung linguistischen Wissens
Regel 6.23: Die Bottom-Up-Pr¨ adiktion erzeugt f¨ ur ein gel¨ ostes Teilproblem (eine passive Kante) ein u ¨ bergeordnetes Problem (eine aktive Kante), welches die L¨ osung des Teilproblems beinhaltet:
(ni , nj , B) erzeugt
(ni , nj , A → B • ϕ)
f¨ ur jede Grammatikregel A → B ϕ, deren rechte Regelseite mit dem Nicht-Terminalsymbol B beginnt
Es fehlt nun noch ein Steuermechanismus der bestimmt, in welcher Reihenfolge und auf welche Kanten die obigen Regeln angewendet werden. Im ChartParsing wird dazu die sogenannte Agenda eingesetzt. Die Agenda ist im Wesentlichen eine Menge von Kanten, die darauf warten, in die Chart eingetragen zu werden. Ein Chart-Parser mit Agenda arbeitet nach dem folgenden Prinzip: ur welche eine 1. Initialisiere die Agenda mit allen Kanten (ni , ni+1 , A) f¨ Grammatikregel A → wi+1 existiert. 2. Entferne eine Kante k aus der Agenda. 3. Falls die Kante k noch nicht in der Chart vorhanden ist: (a) Trage die Kante k in die Chart ein. (b) Wende die Regel 6.21 auf die Kante k und alle passenden Kanten in der Chart an und f¨ uge die erzeugten Kanten in die Agenda ein. uge die (c) Wende die Regeln 6.22 und 6.23 auf die Kante k an und f¨ erzeugten Kanten in die Agenda ein. 4. Wenn die Agenda noch nicht leer ist, gehe zu 2. Die Suchstrategie des Parsers h¨ angt nun ausschliesslich davon ab, welche Kante jeweils aus der Agenda entfernt wird. W¨ ahlt man die zuletzt eingef¨ ugte (die “j¨ ungste”) Kante, f¨ uhrt der Parser eine Tiefensuche durch. Wird hingegen die zuerst eingef¨ ugte (die “¨ alteste”) Kante entfernt, resultiert eine Breitensuche. Neben diesen beiden wichtigsten Suchstrategien k¨ onnen beliebig viele weitere Strategien realisiert werden. Auch die Analyserichtung kann frei gew¨ ahlt werden. Um eine Bottom-UpAnalyse zu erreichen, gen¨ ugt es, die Top-Down-Pr¨ adiktion (Regel 6.22) zu deaktivieren. Entsprechend muss f¨ ur eine Top-Down-Analyse die BottomUp-Pr¨ adiktion (Regel 6.23) deaktiviert werden. Zus¨ atzlich ist es bei der TopDown-Verarbeitung notwendig, f¨ ur jede Grammatikregel S → ϕ mit dem Startsymbol als Regelkopf eine Kante (n0 , n0 , S → • ϕ) in die Agenda einzuf¨ ugen. Dadurch wird das eigentliche Ziel der Top-Down-Analyse vorgegeben, n¨ amlich die Produktion der Terminalsymbolfolge aus dem Startsymbol.
6.3
Die Wortanalyse
165
6.3.2.3 Beispiel: Top-Down-Analyse mit Tiefensuche Die Funktionsweise eines Chart-Parsers soll hier anhand eines Beispiels illustriert werden. Wir verwenden dazu wieder die Grammatik f¨ ur mathematische Ausdr¨ ucke und die Terminalsymbolfolge a ∗ b + c. Es soll eine Top-DownAnalyse mit Tiefensuche durchgef¨ uhrt werden. Als Erstes wird die Agenda initialisiert. Als Analyseziele werden die aktiven Kanten (n0 , n0 , Exp → • Term) und (n0 , n0 , Exp → • Term Add Exp) in die Agenda eingef¨ ugt. Weiter folgen die passiven Kanten f¨ ur die einzelnen Terminalsymbole. Zu diesem Zeitpunkt ist also die Chart leer und die Agenda enth¨ alt eine Anzahl aktiver und passiver Kanten. Diese Situation ist in Abbildung 6.10 oben dargestellt. In der Darstellung der Agenda stehen die j¨ ungsten Kanten (also diejenigen, die bei der Tiefensuche zuerst entfernt werden) zuoberst. () (n0 , n1 , Ident) (n1 , n2 , Mul) (n2 , n3 , Ident) (n3 , n4 , Add) (n4 , n5 , Ident) (n0 , n0 , Exp → • Term) (n0 , n0 , Exp → • Term Add Exp)
n0
a
n1
∗
n2
b
n3
+
Ident
Mul
a
n1
∗
Ident n2
b
Add n3
+
Term → • Ident Mul Term Term → Ident Mul • Term Term → Ident • Mul Term Ident Mul Ident
a
n5
n1
∗
n2
b
Ident n4
c
n5
() () () (n2 , n2 , Term → • Ident) (n2 , n2 , Term → • Ident Mul Term) (n0 , n0 , Term → • Ident) (n0 , n0 , Exp → • Term Add Exp)
Exp → • Term
n0
c
() () () () (n0 , n0 , Term → • Ident Mul Term) (n0 , n0 , Term → • Ident) (n0 , n0 , Exp → • Term Add Exp)
Exp → • Term
n0
n4
Add n3
+
Ident n4
c
n5
Abbildung 6.10. Drei Momentaufnahmen des in Beispiel 6.3.2.3 beschriebenen ParsingAblaufs. Auf der linken Seite ist die Chart dargestellt und auf der rechten Seite die Agenda.
166
6. Repr¨ asentation und Anwendung linguistischen Wissens
Nach der Initialisierung werden die Schritte 2 bis 4 wiederholt. Zu Beginn werden die passiven Kanten eine nach der anderen aus der Agenda entfernt und in die Chart eingef¨ ugt. Dabei werden keine neuen Kanten erzeugt. Nun wird die Kante (n0 , n0 , Exp → • Term) von der Agenda in die Chart u ¨ bertragen. Auf diese Kante l¨ asst sich die Top-Down-Pr¨ adiktion (Regel 6.22) anwenden. Dies f¨ uhrt zu zwei neuen aktiven Kanten (n0 , n0 , Term → • Ident) und (n0 , n0 , Term → • Ident Mul Term), die in die Agenda eingef¨ ugt werden. Diese Situation ist im mittleren Teil von Abbildung 6.10 gezeigt. Als N¨ achstes wird die Kante (n0 , n0 , Term → • Ident Mul Term) aus der Agenda entfernt und in die Chart eingetragen. Auf diese Kante und die benachbarte Kante (n0 , n1 , Ident) kann nun die Fundamentalregel angewendet uhrt. Diewerden, was zur aktiven Kante (n0 , n1 , Term → Ident • Mul Term) f¨ se wiederum wird in die Agenda eingetragen, um gleich darauf wieder entfernt und zur Chart hinzugef¨ ugt zu werden. Wieder ist die Fundamentalregel anwendbar, und es entsteht die Kante (n0 , n2 , Term → Ident Mul • Term). Nach dem obligatorischen Umweg u ¨ ber die Agenda wird auch diese Kante in die Chart eingetragen. Die Fundamentalregel greift dieses Mal nicht, da bei Knoten n2 keine passive Kante mit dem Nicht-Terminalsymbol Term beginnt. Damit solche allenfalls hergeleitet werden k¨ onnen, erzeugt die TopDown-Pr¨ adiktion die beiden aktiven Kanten (n2 , n2 , Term → • Ident) und (n2 , n2 , Term → • Ident Mul Term) . Der untere Teil von Abbildung 6.10 zeigt Chart und Agenda zu diesem Zeitpunkt. Der weitere Verlauf der Verarbeitung soll hier nur ansatzweise skizziert werden. In den n¨ achsten Schritten wird die Kante (n2 , n3 , Term) erzeugt. Damit ankann nun die aktive Kante (n0 , n2 , Term → Ident Mul • Term) vervollst¨ digt werden zu (n0 , n3 , Term), was wiederum die Herleitung von (n0 , n3 , Exp) erm¨ oglicht. Damit sind wir allerdings noch nicht am Ziel, da wir nur einen Teil der Terminalsymbolfolge auf das Startsymbol zur¨ uckf¨ uhren konnten. Die ur Agenda enth¨ alt aber noch die Kante (n0 , n0 , Exp → • Term Add Exp). F¨ diese schl¨ agt die Top-Down-Pr¨ adiktion die Kanten (n0 , n0 , Term → • Ident) und (n0 , n0 , Term → • Ident Mul Term) vor. Da sich diese Kanten schon in der Chart befinden, l¨ osen sie keine zus¨ atzlichen Verarbeitungsschritte aus. Das ist auch nicht n¨ otig, weil alle passiven Kanten mit Startknoten n0 und NichtTerminalsymbol Term bereits erzeugt wurden. Es bleibt uns also erspart, das gleiche Problem ein zweites Mal zu l¨ osen. In den weiteren Schritten wird es schliesslich gelingen, eine passive Kante mit dem Nicht-Terminalsymbol Exp zu erzeugen, welche die gesamte Terminalsymbolfolge u ¨berspannt. Das bedeutet, dass die Symbolfolge zur Sprache der Grammatik geh¨ ort. Der Ableitungsbaum l¨ asst sich leicht konstruieren, wenn sich der Parser f¨ ur jede Kante merkt, aus welchen Kanten sie erzeugt wurde.
6.4
Formalisierung nat¨ urlicher Sprachen
167
6.3.2.4 Abschliessende Betrachtungen zum Chart-Parsing Der wohl wichtigste Vorteil des Chart-Parsings ist seine Effizienz. Es l¨ asst sich zeigen, dass ein Wort der L¨ ange n mit maximal O(n3 ) Verarbeitungsschritten analysiert werden kann. Wegen der kombinatorischen Natur von Grammatiken kann es ohne eine Chart leicht geschehen, dass die Zahl der achst. Verarbeitungsschritte mit linear zunehmendem n exponentiell anw¨ Ein weiterer Vorteil liegt darin, dass die Suchstrategie und die Analyserichtung sehr flexibel und unabh¨ angig voneinander gew¨ ahlt werden k¨ onnen. Zudem kann die Chart n¨ utzlich sein, wenn sich herausstellt, dass ein zu analysierendes Wort nicht zur Sprache der Grammatik geh¨ ort. Insbesondere beim Bottom-Up-Parsing werden als Nebeneffekt auch alle Teilfolgen der Terminalsymbolfolge analysiert. Wenn die Symbolfolge als Ganzes nicht analysiert werden kann, so lassen sich manchmal gewisse Informationen aus solchen partiellen Analysen ableiten. Weiter ist anzumerken, dass sich Chart-Parsing nicht nur f¨ ur kontextfreie Grammatiken eignet. Es gen¨ ugt, dass die Regeln der Grammatik aus einem Regelkopf und einem Regelk¨ orper bestehen. Dar¨ uber hinaus k¨ onnen beliebige Bedingungen formuliert werden, mit denen auch Sprachen ausserhalb der Typ-2-Klasse beschrieben werden k¨ onnen. Man spricht in diesem Zusammenhang auch von Grammatiken mit einem kontextfreien Skelett. Die oben erw¨ ahnten Effizienzgarantien gelten jedoch f¨ ur solche Grammatiken nicht.
6.3.3 Wortanalyse f¨ ur Typ-1- und Typ-0-Grammatiken Mit dem Algorithmus 6.10 wurde ein Verfahren vorgestellt, das theoretisch die Wortanalyse f¨ ur jede Typ-1-Grammatik l¨ ost, aber nicht praxistauglich ist. F¨ ur Typ-0-Grammatiken ist nicht einmal das Wortproblem im allgemeinen Fall l¨ osbar (siehe Abschnitt 6.2), was damit auch f¨ ur die Wortanalyse gelten muss. Trotzdem werden in der Praxis auch Grammatikformalismen verwendet, die theoretisch alle Typ-1- bzw. Typ-0-Sprachen beschreiben k¨ onnen. Die konkreten Grammatiken sind dann jedoch so beschaffen, dass sie eine gen¨ ugend effiziente Verarbeitung erm¨ oglichen und dass das Wortproblem l¨ osbar ist. Meist werden Grammatiken mit einem kontextfreien Skelett verwendet (siehe Abschnitt 6.3.2.4), so dass Chart-Parsing zur Anwendung kommen kann.
6.4 Formalisierung nat¨ urlicher Sprachen Formale Grammatiken k¨ onnen nicht nur zur Beschreibung k¨ unstlicher, d.h. formaler Sprachen eingesetzt werden, sondern auch zur Beschreibung und Analyse nat¨ urlicher Sprachen, z.B. des Deutschen (siehe Kapitel 8). Mit formalen Grammatiken k¨ onnen sowohl nat¨ urlichsprachliche S¨ atze als auch W¨ or-
6.4
168
6. Repr¨ asentation und Anwendung linguistischen Wissens
ter beschrieben werden. Bei der formalen Behandlung nat¨ urlicher Sprachen werden deshalb je nach Situation die von einer formalen Grammatik produzierten Symbolfolgen als Satz oder als Wort bezeichnet. Entsprechend sind die Terminalsymbole einer Satzgrammatik die W¨ orter einer Sprache, und die Terminalsymbole einer Wortgrammatik die Morphe dieser Sprache. F¨ ur die folgenden Betrachtungen beziehen wir uns auf die Entwicklung von Satzgrammatiken. Nat¨ urliche Sprachen geh¨ oren mindestens zur Klasse der kontextfreien Sprachen (Chomsky-Typ 2). Dies kann leicht eingesehen werden, da Einbettungsph¨ anomene existieren, die von ¨ ahnlicher Struktur sind wie die Klammerung in mathematischen Ausdr¨ ucken (siehe Abschnitt 6.2.2). So k¨ onnen beispielsweise Nebens¨ atze im Deutschen ineinander verschachtelt werden, wie etwa im Satz “Ist dies die Katze, die die Maus, die den K¨ ase, der hier lag, frass, 7 gefangen hat?” Einzelne Sprachen weisen linguistische Ph¨ anomene auf, die nicht mit einer kontextfreien Grammatik beschrieben werden k¨ onnen. Solche F¨ alle sind aber selten. Trotzdem werden bei der Grammatikentwicklung im Allgemeinen nicht kontextfreie Grammatiken verwendet. Im Folgenden soll an einem Beispiel gezeigt werden, warum sich kontextfreie Grammatiken schlecht zur direkten Beschreibung nat¨ urlicher Sprache eignen. Im Deutschen besteht ein Hauptsatz im einfachsten Fall aus einer Nominalgruppe (dem Subjekt) und aus einer Verbalgruppe, die mindestens aus einem Verb besteht. Die Nominalgruppe ihrerseits kann aus einem einzelnen Nomen bestehen (“Hunde”, “B¨ aume”, . . . ) oder z.B. aus einem Artikel und einem Nomen (“die Hunde”, “ein Baum”, “das Kind”, . . . ). Tabelle 6.1 zeigt, wie diese Grundstruktur von deutschen S¨ atzen als kontextfreie Grammatik formuliert werden kann. Da diese Grammatik eine Menge von (korrekten) S¨ atzen beschreiben soll, ist das Startsymbol S. Die Nicht-Terminalsymbole einer linguistischen Grammatik (hier also S, NG, VG, Art, N, V) werden als Konstituenten bezeichnet. Die eigentlichen W¨ orter, d.h. die Terminalsymbole dieser Satzgrammatik, werden durch gesonderte Produktionsregeln f¨ ur die Wortkategoriesymbole erzeugt (hier Art, N und V). Dieser Teil der Grammatik wird in der Computerlin7
Die Tatsache, dass der Verschachtelungstiefe beim Sprechen und Sprachverstehen gewisse praktische Grenzen gesetzt sind, ¨ andert nichts daran, dass wir auch beliebig tief verschachtelte S¨ atze als grammatisch korrekt empfinden, wenn wir verifizieren k¨ onnen, dass sie dem generellen Verschachtelungsprinzip gehorchen. So werden auch in der Mathematik oder beim Programmieren Klammerausdr¨ ucke nur bis zu einer gewissen noch “lesbaren” Verschachtelungstiefe verwendet, was aber nichts am generellen rekursiven Verschachtelungsprinzip a ¨ndert.
6.4
Formalisierung nat¨ urlicher Sprachen
169
Tabelle 6.1. Eine kontextfreie Grammatik f¨ ur einfache deutsche S¨ atze
S NG NG VG
→ → → →
NG VG N Art N V
Art → der | die | das | ein | des | . . . N → hund | hunde | haus | kind | kinder | . . . V → bellt | bellen | spielt | spielen . . .
guistik als Lexikon bezeichnet. Auf Gross- und Kleinschreibung wird dabei im Allgemeinen nicht n¨ aher eingegangen. Nebst korrekten deutschen S¨ atzen wie “das Kind spielt” und “der Hund bellt” werden durch unsere Beispielgrammatik auch S¨ atze wie “das Hund bellen” und “Kind spielen” beschrieben. Offensichtlich m¨ ussen zur genaueren Formulierung einer deutschen Satzgrammatik weitere Bedingungen spezifiziert ¨ werden, beispielsweise die Ubereinstimmung von Fall, Zahl und Geschlecht (Kasus, Numerus und Genus) zwischen den Bestandteilen einer Nominalgrup¨ pe und die Ubereinstimmung der Zahl zwischen Nominal- und Verbalgruppe. Ausserdem muss gefordert werden, dass die Subjektsnominalgruppe im Nominativ steht. In unserem Beispiel k¨ onnten diese Zusatzbedingungen in einer kontextfreien Grammatik so spezifiziert werden, dass Nicht-Terminalsymbole f¨ ur alle m¨ oglichen Kombinationen von Kasus, Numerus und Genus verwen¨ det werden und dass die Produktionsregeln die Ubereinstimmung dieser Eigenschaften erzwingen. Dies ergibt die Grammatik in Tabelle 6.2, wobei die folgenden K¨ urzel verwendet wurden: Kasus
kas
Numerus
num
Genus
gen
Nominativ Genitiv Dativ Akkusativ
nom gen dat akk
Singular Plural
sg pl
Maskulinum Femininum Neutrum
m f n
Diese rein kontextfreie Formulierung ben¨ otigt auch f¨ ur eine sehr einfache Grammatik, die bloss einen winzigen Ausschnitt der deutschen Sprache beschreibt, bereits eine grosse Zahl von Regeln. Der Grund daf¨ ur ist, dass kontextfreie Grammatiken die Eigenschaften nat¨ urlicher Sprache nur ungen¨ ugend abbilden. Kontextfreie Grammatiken modellieren zwar das Phrasenstrukturprinzip (die Einbettung von Konstituenten in u ¨ bergeordnete Konstituenten), ¨ haben aber keine direkte Repr¨ asentation f¨ ur syntaktische Ubereinstimmung. Diese beiden Ph¨ anomene u ¨ berlagern sich in den Nicht-Terminalsymbolen, wodurch sich die Anzahl der ben¨ otigten Regeln vervielfacht.
170
6. Repr¨ asentation und Anwendung linguistischen Wissens
Tabelle 6.2. Kontextfreie Grammatik f¨ ur einfache deutsche S¨ atze, die einige syntaktische
¨ Ubereinstimmungsph¨ anomene ber¨ ucksichtigt
S S S .. . S
→ NG-nom-sg-m VG-sg → NG-nom-pl-m VG-pl → NG-nom-sg-f VG-sg
NG-nom-sg-m NG-gen-sg-m NG-dat-sg-m .. . NG-akk-pl-f
→ N-nom-sg-m → N-gen-sg-m → N-dat-sg-m
→ NG-nom-pl-n VG-pl
→ N-akk-pl-f
NG-nom-sg-m → Art-nom-sg-m N-nom-sg-m NG-gen-sg-m → Art-gen-sg-m N-gen-sg-m .. . → Art-akk-pl-f N-akk-pl-f NG-akk-pl-f VG-sg VG-pl
→ V-sg → V-pl
Art-nom-sg-m Art-gen-sg-m Art-dat-sg-m .. . Art-nom-pl-m Art-nom-pl-f Art-nom-pl-n .. . Art-akk-pl-f
→ der | ein → des | eines → dem | einem → die → die → die → die
N-nom-sg-m N-gen-sg-m N-dat-sg-m .. . N-akk-pl-m N-nom-sg-n N-nom-pl-n .. .
→ hund | . . . → hundes | . . . → hund | . . .
V-sg V-pl .. .
→ bellt | spielt | . . . → bellen | spielen | . . .
→ hunde | . . . → kind | . . . → kinder | . . .
6.4
Formalisierung nat¨ urlicher Sprachen
171
Es ist klar, dass solche Grammatiken schnell unhandlich werden. Um die Entwicklung von nat¨ urlichsprachlichen Grammatiken u oglichen, ¨ berhaupt zu erm¨ werden meist andere Formalismen verwendet. Manche dieser Grammatikformalismen k¨ onnen auch Sprachen der Chomsky-Typen 1 und 0 beschreiben. Andere wiederum sind ¨ aquivalent zu kontextfreien Grammatiken, d.h. sie k¨ onnen genau die Sprachen vom Typ 2 beschreiben und lassen sich in kontextfreie Regeln u ¨ bersetzen. Solche Formalismen bieten jedoch spezielle Notationen an, welche die Formalisierung von nat¨ urlichen Sprachen erleichtern. In manchen Anwendungsgebieten sind Grammatiken erforderlich, die f¨ ur einen grossen Ausschnitt einer nat¨ urlichen Sprache zuverl¨ assig entscheiden k¨ onnen, ob ein Satz korrekt ist oder nicht. F¨ ur diese Aufgabe werden relativ komplexe Grammatikformalismen verwendet, beispielsweise Lexical Functional Grammar (LFG) oder Head-driven Phrase Structure Grammar (HPSG). Beide Formalismen k¨ onnen beliebige Typ-0-Sprachen beschreiben. Bemerkenswert sind auch die Generalized Phrase Structure Grammars (GPSG), da sie ¨ aquivalent zu kontextfreien Grammatiken sind. Alle drei Grammatiktypen haben ein kontextfreies Skelett, was die Verarbeitung mittels Chart-Parsing erm¨ oglicht. Um das Schreiben von pr¨ azisen Grammatiken zu erleichtern, wird der im letzten Beispiel illustrierte Grundgedanke weitergef¨ uhrt: Die grundlegenden sprachlichen Ph¨ anomene werden direkt im Grammatikformalismus model¨ liert. Neben Phrasenstruktur und syntaktischer Ubereinstimmung sind zum Beispiel die folgenden Konzepte sehr wichtig: Unter dem Kopf-Konzept versteht man die Idee, dass die meisten Phrasen eine ausgezeichnete Konstituente (den Kopf) enthalten, welche die syntaktischen und semantischen Eigenschaften der Phrase wesentlich bestimmt. In der Nominalgruppe ist dies etwa das Nomen, in der Verbalgruppe ist es das Verb. H¨ aufig erfordert eine Konstituente das Vorhandensein von weiteren spezifischen Konstituenten. Das Verb “beeilen” zum Beispiel ben¨ otigt in einem korrekten deutschen Satz immer eine Nominalgruppe im Nominativ (das Subjekt) und ein Reflexivpronomen (z.B. “sich”), das mit dem Verb und dem Subjekt bez¨ uglich Person und Zahl u ¨ bereinstimmt. Solche Abh¨ angigkeiten (man spricht allgemein von Subkategorisierung) sind in der nat¨ urlichen Sprache allgegenw¨ artig. Eine weiteres Beispiel ist die Beziehung zwischen einer Pr¨ aposition und der nachfolgenden Nominalgruppe in Ausdr¨ ucken wie “wegen des schlechten Wetters”. Modifikation bezeichnet das Ph¨ anomen, dass beliebig viele Konstituenten eines bestimmten Typs die Bedeutung einer weiteren Konstituenten modifizieren. Typische Modifikatoren sind beispielsweise die Adjektive. Sie
172
6. Repr¨ asentation und Anwendung linguistischen Wissens
k¨ onnen vor dem Nomen beliebig oft vorkommen oder auch ganz fehlen: “ein Freund”, “ein guter Freund”, “ein guter alter Freund”, etc. Es gibt viele weitere Beispiele von Modifikatoren, etwa Adverbien oder bestimmte Nebens¨ atze und Pr¨ apositionalgruppen. In vielen praktischen Anwendungen werden weitaus geringere Anforderungen an die Pr¨ azision einer Grammatik gestellt. Es werden dann oft (aus linguistischer Sicht) einfachere Grammatikformalismen verwendet, die daf¨ ur eine effizientere Verarbeitung erlauben. Ein solcher Formalismus wird im n¨ achsten Abschnitt vorgestellt.
6.5
6.5 Der DCG-Formalismus 6.5.1 Definition und Eigenschaften von DCG Die Definite-Klausel-Grammatik (engl. definite clause grammar, DCG, [19]) ist eine Erweiterung der kontextfreien Grammatik. In ihrer allgemeinsten Form ist sie eng mit der Logik-Programmiersprache Prolog (siehe [5], [20]) verkn¨ upft, in welcher Programme in der Form von sogenannten definiten Klauseln formuliert sind. DCG basieren auf einem kontextfreien Grammatikskelett, d.h. die Grammatik besteht aus Produktionsregeln mit jeweils einem Nicht-Terminalsymbol auf der linken Seite und beliebig vielen Symbolen auf der rechten. Die NichtTerminalsymbole k¨ onnen jedoch mit beliebigen Attributen versehen werden. Attribute k¨ onnen unter anderem syntaktische Merkmale (z.B. Fall, Zahl und ¨ Geschlecht) beschreiben und Ubereinstimmungen mit anderen Attributen innerhalb der Produktionsregel definieren. Da solche Attribute auch unbegrenzte verschachtelte Strukturen als Werte annehmen k¨ onnen, l¨ asst sich mit dieser Erweiterung bereits ein Teil der Typ-1-Sprachen beschreiben. Zus¨ atzlich k¨ onnen beliebige Prolog-Programme verwendet werden, um Bedingungen an die Werte der verschiedenen Attribute zu formulieren. Dies f¨ uhrt dazu, dass DCG alle Typ-0-Sprachen beschreiben k¨ onnen. F¨ ur unsere Zwecke gen¨ ugt eine stark vereinfachte Variante von DCG. Wir gehen im Folgenden davon aus, dass jedes Attribut nur Werte aus einer endlichen Menge von einfachen (unstrukturierten) Merkmalen annehmen kann. Die zus¨ atzlichen Bedingungen in Form von Prolog-Programmen verwenden wir nicht. Mit Grammatiken dieser restriktiveren Form von DCG lassen sich genau die Typ-2-Sprachen beschreiben, sie sind also ¨ aquivalent zu kontextfreien Grammatiken. In unserer Notation verwenden wir kleingeschriebene Symbole f¨ ur Konstanten (Merkmale), und Variablen werden durch ein vorangestelltes ? markiert.
6.5
Der DCG-Formalismus
173
Das folgende Beispiel einer DCG-Regel dr¨ uckt aus, dass in einem Satz S der Numerus des Subjekts NG und des Pr¨ adikats V u ussen und ¨ bereinstimmen m¨ dass das Subjekt eine Nominalgruppe im Nominativ sein muss: S → NG(nom,?num,?gen) V(?num) ¨ Eine zweite Regel erzwingt die Ubereinstimmung zwischen dem Artikel und dem Nomen und u agt die Merkmale auf die entstehende Nominalgruppe: ¨ bertr¨ NG(?kas,?num,?gen)
→ Art(?kas,?num,?gen) N(?kas,?num,?gen)
Man beachte, dass die Anordnung der Attribute f¨ ur ein gegebenes NichtTerminalsymbol fest ist. In unserem Beispiel bedeutet das, dass bei jedem Vorkommen des Nicht-Terminalsymbols NG das erste Attribut den Kasus, das zweite den Numerus und das dritte den Genus spezifiziert. Wir wollen nun nochmals das Beispiel der Satzgrammatik in Tabelle 6.2 betrachten und versuchen, diese Grammatik in der DCG-Notation kompakter ¨ zu formulieren. Die n¨ otigen Ubereinstimmungen in Kasus, Numerus und Genus werden also mittels Attributen definiert. Tabelle 6.3 zeigt die resultierende Satzgrammatik. Die Regeln R1 bis R4 sind die eigentlichen Grammatikregeln, die restlichen Regeln definieren das Lexikon, also alle zugelassenen Terminalsymbole. Alle Nicht-Terminalsymbole ausser S sind mit Attributen versehen, welche die n¨ otigen Kasus-, Numerus- und Genus-Merkmale spezifizieren. So wird durch die Verwendung der gleichen Variablen innerhalb der Regeln f¨ ur NG gefordert, dass alle Elemente der Nominalgruppe den gleichen Kasus, Numerus und Genus haben m¨ ussen. In der Regel R1 wird verlangt, dass NG und VG gleichen Numerus haben, und dass die Nominalgruppe im Nominativ steht (das KasusAttribut der Nominalgruppe ist als Konstante nom spezifiziert). Die Produktionsregeln des Lexikons verwenden ebenfalls Attribute. Diese enthalten Informationen u ¨ ber die syntaktischen Merkmale der betreffendenen Terminalsymbole. Manche Wortformen k¨ onnen mit unterschiedlichen Merkmalen verwendet werden, beispielsweise der Artikel “die” mit den Merkmalen Singular und Femininum in “die Blume” und mit den Merkmalen Plural und Neutrum in “die Kinder”. Dies kann durch mehrere Produktionsregeln mit identischem Terminalsymbol ausgedr¨ uckt werden. DCG erlauben auch das Schreiben von Leerproduktionen, d.h. von Regeln mit einem leeren Regelk¨ orper. Diese k¨ onnen verwendet werden, um optionale Teile von Konstituenten zu beschreiben. So kann man beispielsweise einen optionalen Artikel wie folgt definieren: OptArt(?kas,?num,?gen) → OptArt(?kas,?num,?gen) → Art(?kas,?num,?gen)
174
6. Repr¨ asentation und Anwendung linguistischen Wissens
Tabelle 6.3. Eine DCG f¨ ur einfache deutsche S¨ atze. Im Unterschied zur kontextfreien ¨ Variante in Tabelle 6.2 werden syntaktische Ubereinstimmungen mit Hilfe von Attributen und Variablen spezifiziert.
R1 : R2 : R3 : R4 :
S NG(?kas,?num,?gen) NG(?kas,?num,?gen) VG(?num)
→ → → →
NG(nom,?num,?gen) VG(?num) N(?kas,?num,?gen) Art(?kas,?num,?gen) N(?kas,?num,?gen) V(?num)
Art(nom,sg,m) Art(gen,sg,m) Art(dat,sg,m) Art(nom,sg,n) .. .
→ → → →
der | ein des | eines dem | einem das | ein
Art(nom,pl,m) Art(nom,pl,f) Art(nom,pl,n) .. .
→ die → die → die
Art(akk,pl,f)
→ die
N(nom,sg,m) N(gen,sg,m) N(dat,sg,m) .. .
→ hund | . . . → hundes | . . . → hund | . . .
N(akk,pl,m) N(nom,sg,n) N(nom,pl,n) .. .
→ hunde | . . . → kind | . . . → kinder | . . .
V(sg) V(pl) .. .
→ bellt | spielt | . . . → bellen | spielen | . . .
Unter Verwendung von OptArt k¨ onnen im obigen Beispiel die Regeln R2 und R3 zu einer Regel zusammengefasst werden, n¨amlich: NG(?kas,?num,?gen) → OptArt(?kas,?num,?gen) N(?kas,?num,?gen) Die Attribute ?kas, ?num und ?gen bleiben bei der Anwendung der obigen Leerproduktion unbestimmt. Optionale Elemente werden oft verwendet, um Grammatiken kompakt zu halten.
6.5
Der DCG-Formalismus
175
6.5.2 Unifikation Die Operation der Unifikation ist ein fundamentaler Bestandteil von DCG. Bei der Unifikation zweier Terme wird versucht, die in den Termen vorkommenden Variablen so zu spezifizieren, dass die beiden Terme identisch werden. Falls dies gelingt, sind die Terme unifizierbar, und die Variablen werden an diejenigen Werte gebunden, die die Gleichsetzung der Terme bewirkt. Es gibt oft unendlich viele Variablenbelegungen, durch die zwei Terme identisch gemacht werden k¨ onnen. Bei der Unifikation werden jedoch die Variablen immer nur gerade so weit spezifiziert, dass die Identit¨ at der Terme erreicht wird. Als Beispiel betrachten wir die Terme a(?x,?y,f(i)) und a(?z,?z,f(?u)) . Diese Terme k¨ onnen durch die Variablensubstitution ?x = ?z, ?y = ?z, ?u = i identisch gemacht werden, woraus der unifizierte Term a(?z,?z,f(i)) resultiert. Die ersten zwei Argumente der Struktur a bleiben dabei Variablen, aber aufgrund des zweiten Terms m¨ ussen diese Variablen identisch sein. Die Variable ?u wird an die Konstante i gebunden. F¨ ur die folgenden beiden Terme existiert keine Variablenbelegung, welche die beiden Terme identisch macht: a(p,q,f(i)) und a(?z,?z,f(?u)) Die Terme enthalten also gewissermassen widerspr¨ uchliche Information. Die Unifikationsoperation ist f¨ ur solche Paare von Termen nicht definiert. Man sagt auch: Die beiden Terme sind nicht unifizierbar.
6.5.3 DCG-Ableitungen Wie bereits am Anfang dieses Kapitels gezeigt wurde, geh¨ ort eine Folge von Terminalsymbolen (im Fall einer Satzgrammatik eine Folge von W¨ ortern) genau dann zur Sprache einer Grammatik, wenn eine Ableitung existiert, die das Startsymbol durch Anwendung von Produktionsregeln in die gew¨ unschte Terminalsymbolfolge u uhrt. Dies gilt f¨ ur alle Grammatikklassen. ¨ berf¨ Ableitungen in DCG verlaufen analog zu kontextfreien Ableitungen, wobei aber zus¨ atzlich bei der Ersetzung eines Nicht-Terminalsymbols durch die rechte Seite einer Regel die Attributterme des Regelkopfs mit den Attributtermen des Nicht-Terminalsymbols unifiziert werden. Die aus der Unifikation resultierenden Variablensubstitutionen gelten auch f¨ ur die rechte Seite der Regel. Zu
176
6. Repr¨ asentation und Anwendung linguistischen Wissens
beachten ist, dass pro Anwendung einer Regel ein neuer Satz von Variablen verwendet wird. Als Beispiel einer DCG-Ableitung betrachten wir den Satz “das Kind spielt”, d.h. dieser Satz soll aus dem Startsymbol S unserer Beispielgrammatik aus Tabelle 6.3 abgeleitet werden. Als erster Ableitungsschritt kommt nur die Regel R1 in Frage, d.h. S S → NG(nom,?num1 ,?gen1 ) VG(?num1 )
⇒ NG(nom,?num1 ,?gen1 ) VG(?num1 ) In dieser Darstellung wird zuoberst die urspr¨ ungliche Symbolfolge gezeigt, dann die angewendete Regel und zuunterst die abgeleitete Symbolfolge. Das ur die Unifikation. Da bei jeder Regelanwendung ein Symbol steht hier f¨ neuer Satz Variablen verwendet wird, werden die Variablen indiziert, und nur Variablen mit gleichem Index bezeichnen identische Variablen. In diesem ersten Ableitungsschritt werden wegen der fehlenden Attribute des Symbols S keine Variablen gebunden. Im zweiten Schritt w¨ ahlen wir die Regel R3 : NG(nom,?num1 ,?gen1 ) VG(?num1 ) NG(?kas2 ,?num2 ,?gen2 ) → Art(?kas2 ,?num2 ,?gen2 ) N(?kas2 ,?num2 ,?gen2 )
⇒ Art(nom,?num1 ,?gen1 ) N(nom,?num1 ,?gen1 ) VG(?num1 ) Bei der Unifikation zwischen dem Kopf der Regel R3 und der NG-Struktur in der Ausgangssymbolfolge werden die neuen Variablen der Regel (Index 2) mit den Variablen der Ausgangssymbolfolge unifiziert. Der Kasus von Art und N wird durch die Unifikation auf nom festgelegt, d.h. die Variable ?kas2 wird an diesen Wert gebunden. Die Variablen ?gen2 und ?num2 werden mit den Variablen ?gen1 und ?num1 unifiziert, d.h. mit diesen Variablen identisch gemacht. F¨ ur den dritten Schritt w¨ ahlen wir die Regel R4 : Art(nom,?num1 ,?gen1 ) N(nom,?num1 ,?gen1 ) VG(?num1 ) VG(?num3 ) → V(?num3 )
⇒ Art(nom,?num1 ,?gen1 ) N(nom,?num1 ,?gen1 ) V(?num1 ) Nun bleiben nur noch Regeln f¨ ur lexikalische Produktionen. F¨ ur den Artikel w¨ ahlen wir
6.5
Der DCG-Formalismus
177
Art(nom,?num1 ,?gen1 ) N(nom,?num1 ,?gen1 ) V(?num1 ) Art(nom,sg,n) → das
⇒ das N(nom,sg,n) V(sg) Durch die Anwendung der Regel f¨ ur “das” werden mittels Unifikation auch der Numerus und der Genus f¨ ur das Nomen und der Numerus f¨ ur das Verb bestimmt. Daher bleiben als letzte Ableitungen bei der gegebenen DCG nur noch das N(nom,sg,n) V(sg) N(nom,sg,n) → kind
⇒ das kind V(sg) und das kind V(sg) V(sg) → spielt
⇒ das kind spielt Die Nomen “Kinder” oder “Hund” oder das Verb “spielen” h¨ atten also in diesen letzten Ableitungen nicht eingesetzt werden k¨ onnen, da durch den Artikel “das” Kasus und Numerus bereits vorgegeben waren.
6.5.4 DCG-Ableitungsbaum Wie bei einer kontextfreien Grammatik kann auch bei einer DCG das Resultat einer Ableitung stets in Form eines Ableitungsbaums dargestellt werden. F¨ ur das Beispiel in Abschnitt 6.5.3 zeigt die Abbildung 6.11 den zugeh¨ origen Ableitungsbaum. Die unifizierten Attribute k¨ onnen ebenfalls eingetragen werden. S
XXX XX X
NG (nom,sg,n)
PPP P
VG (sg)
Art (nom,sg,n)
N (nom,sg,n)
V (sg)
das
kind
spielt
Abbildung 6.11. Ableitungsbaum (Syntaxbaum) f¨ ur den Satz “das Kind spielt” aufgrund
der sehr einfachen DCG f¨ ur deutsche S¨ atze von Tabelle 6.3
178
6. Repr¨ asentation und Anwendung linguistischen Wissens
Im Fall einer Satzgrammatik wird der Ableitungsbaum auch als Syntaxbaum bezeichnet. Dieser Baum gibt die innere Struktur eines Satzes wieder. Er kann beispielsweise zum Festlegen der Akzente und Phrasen (also der symbolischen Beschreibung der Prosodie) f¨ ur die Sprachsynthese eingesetzt werden, wie in Kapitel 8 gezeigt wird.
6.5.5 DCG und Chart-Parsing F¨ ur das Parsing mit DCG k¨ onnen die gleichen prinzipiellen Verfahren verwendet werden wie f¨ ur das Parsing von kontextfreien Sprachen, insbesondere auch das Chart-Parsing (siehe Abschnitt 6.3.2.2). Selbstverst¨ andlich m¨ ussen beim Chart-Parsing mit jeder Anwendung einer Parser-Operation (Fundamentalregel, Top-Down-Pr¨ adiktion oder Bottom-Up-Pr¨ adiktion) die Attributterme von sich entsprechenden Nicht-Terminalsymbolen unifiziert werden. Sind zwei Attributterme nicht unifizierbar, so kann die Operation nicht durchgef¨ uhrt werden.
6.6
6.6 Two-Level-Regeln und Transduktoren 6.6.1 Einf¨ uhrung Wie im Abschnitt 6.5 gezeigt, k¨ onnen nat¨ urlichsprachliche S¨ atze durch formale Grammatiken beschrieben werden. Ebenso l¨ asst sich die Struktur von W¨ ortern (d.h. der morphologische Aufbau) mittels formaler Grammatiken beschreiben. Weil in diesem Fall die Grammatik den Aufbau von W¨ ortern beschreibt, wird sie als Wortgrammatik bezeichnet (im Unterschied zur Satzgrammatik). In einer Wortgrammatik ist das Startsymbol W und die Terminalsymbole sind die Morphe. Bei der Analyse eines Wortes wird ermittelt, wie sich die Folge von Terminalsymbolen aus dem Startsymbol ableiten l¨ asst. Vor dieser Analyse muss also das nat¨ urlichsprachliche Wort in Morphe zerlegt werden. Diese Zerlegung ist meistens nicht eindeutig.8 Erschwerend ist zudem, dass manche W¨ orter nach dem Zusammensetzen aus Morphen noch ver¨ andert werden. So werden beispielsweise bei Komposita entstehende Dreifachkonsonanten vor einem Vokal auf zwei reduziert, wie bei der Zusammensetzung von “Schiffahrt” ur Verben, die im Infinitiv auf “eln” oder “ern” aus “Schiff” und “Fahrt”.9 F¨ 8 In W¨ ortern sind die Morphgrenzen nicht markiert. Im Gegensatz dazu sind die Wortgrenzen in S¨ atzen markiert, n¨ amlich durch Leerzeichen. 9
Gem¨ ass der neuen Rechtschreibung w¨ urde diese Reduktion zwar wegfallen, aber die alte Schreibweise erscheint immer noch in vielen Texten. Ein Sprachsynthesesystem muss deshalb vorderhand noch damit umgehen k¨ onnen.
6.6
Two-Level-Regeln und Transduktoren
179
enden, wird oft in der ersten Person Singular ein “e” getilgt. In gewissen F¨ allen ist diese Tilgung obligatorisch, z.B. bei “ich handle” (nicht “ich handele”), fakultativ wie in “bedau(e)re” oder nicht erlaubt wie in “ich z¨ ogere” (nicht “ich z¨ ogre”). Eine grunds¨ atzlich m¨ ogliche L¨ osung dieser Probleme besteht darin, f¨ ur solche durch Tilgungen verk¨ urzte Formen spezielle Morphe (z.B. das nur mit einem “f” geschriebene Lexem “schif”) ins Lexikon aufzunehmen und mittels Attributen und Grammatikregeln daf¨ ur zu sorgen, dass keine falschen Wortformen erzeugt werden k¨ onnen. Dies erh¨ oht aber die Gr¨ osse des Morphlexikons und f¨ uhrt zu einer komplizierteren Wortgrammatik. Eine elegantere L¨ osung f¨ ur die Behandlung solcher Ph¨ anomene ist der Einsatz von Two-Level-Regeln.
6.6.2 Two-Level-Regeln 6.6.2.1 Notation und Bedeutung Bei der morphologischen Analyse von W¨ ortern k¨ onnen f¨ ur sprachliche Ph¨ anomene wie die oben erw¨ ahnten Tilgungen Two-Level-Regeln eingesetzt werden. Der Ausdruck “Two-Level” kommt daher, dass eine Zeichenkette einer lexikalischen Ebene zu einer Zeichenkette einer Oberfl¨ achenebene in Bezug gesetzt wird. Mit Oberfl¨ achenebene ist hier die normale orthographische Form gemeint. Eine Two-Level-Regel spezifiziert, in welchem Kontext ein Symbol auf der lexikalischen Ebene mit einem anderen Symbol auf der Oberfl¨ achenebene korrespondieren darf oder muss. Two-Level-Regeln werden deshalb mit Hilfe von Symbolpaaren x:y formuliert, wobei das linke Symbol zur lexikalischen Ebene und das rechte zur Oberfl¨ achenebene geh¨ ort.
Es gibt die drei folgenden Varianten von Two-Level-Regeln:10 1. x:y ⇒ LC
RC
nur in diesem Kontext darf x:y stehen
2. x:y ⇐ LC
RC
in diesem Kontext darf nicht x:¬y stehen
3. x:y ⇔ LC
RC
nur in diesem Kontext darf x:y stehen und es darf nicht x:¬y stehen
Eine Two-Level-Regel besteht also aus dem Kopf, dem Operator und der Bedingung (dem linken und dem rechten Kontext). Im Kopf steht immer ein Symbolpaar, das angibt, welches lexikalische Symbol x welchem Ober߬ achensymbol y entspricht. Im Bedingungsteil der Regel steht, in welchem Kontext 10
In der Literatur wird oft noch eine vierte Variante aufgef¨ uhrt, n¨ amlich die Ausschlussregel mit dem Operator /⇐. Diese Regelvariante wird hier jedoch nicht gebraucht.
180
6. Repr¨ asentation und Anwendung linguistischen Wissens
die Regel zur Anwendung kommt. Darin markiert das Zeichen die Position des betrachteten Symbolpaares. Schliesslich bestimmt der Operator die Variante der Two-Level-Regel. Die erste Variante, die sogenannte Kontext-Restriktion (context restriction) spezifiziert, dass das Symbolpaar x:y nur mit linkem Kontext LC und mit rechtem Kontext RC stehen darf. Im Sinne der Symbolersetzung ausgedr¨ uckt heisst dies, dass das lexikalische Symbol x nur im Kontext LC und RC durch das Symbol y der Oberfl¨ ache ersetzt werden darf, aber nicht muss. Achtung: da die Regel nur eine Aussage zum Symbolpaar x:y macht, sind grunds¨ atzlich alle andern Symbolpaare, insbesondere auch alle x:¬y in diesem Kontext auch zul¨ assig. Die zweite Variante, die Oberfl¨ achen-Erzwingung (surface coercion) spezifiziert, dass das Symbolpaar x:¬y nicht im Kontext LC und RC stehen darf. Wiederum im Sinne der Symbolersetzung ausgedr¨ uckt heisst dies: Das lexikalische Symbol x muss im Kontext LC und RC auf der Oberfl¨ ache durch das Symbol y ersetzt werden. Das Symbolpaar x:y darf aber auch in andern Kontexten vorkommen. Die dritte Variante besagt, dass beide Bedingungen gleichzeitig gelten. Im Kontext LC und RC muss also dem lexikalischen Symbol x immer das Oberfl¨ achensymbol y entsprechen, und dieses Symbolpaar darf in keinem anderen Kontext auftreten. Die Kontexte LC und RC werden in den Two-Level-Regeln als regul¨ are Ausdr¨ ucke (siehe n¨ achster Abschnitt) u ¨ ber dem Symbolpaar-Alphabet spezifiziert. Die Kontexte k¨ onnen auch leer sein. 6.6.2.2 Regul¨ are Ausdr¨ ucke Regul¨ are Ausdr¨ ucke erlauben eine einfache Formulierung regul¨ arer Sprachen ohne Zuhilfenahme einer Grammatik mit Produktionsregeln. Ein regul¨ arer Ausdruck ist entweder ein einzelnes Terminalsymbol (d.h. in unserem Fall ein Symbolpaar) oder eines der folgenden Konstrukte:
Sequenz: lineare Abfolge von regul¨ aren Teilausdr¨ ucken, die hintereinanare der geschrieben werden, z.B. ABC , wobei A, B und C ihrerseits regul¨ Ausdr¨ ucke sind Alternative: mehrere m¨ ogliche Teilausdr¨ ucke, die alternativ verwendet are Auswerden k¨ onnen, z.B. A|B|C , wobei A, B und C ihrerseits regul¨ dr¨ ucke sind Repetition: eine beliebige Sequenz von n Teilausdr¨ ucken A, wobei n ≥ 0 ∗ ist, wird geschrieben als A
6.6
Two-Level-Regeln und Transduktoren
181
Klammern werden angewendet, um Gruppierungen anzuzeigen. Ein Beispiel eines regul¨ aren Ausdrucks u ¨ ber dem Alphabet VT = {a, b, c, d} ist (a|b)∗ cd∗ , welcher die Sprache L = {c, cd, cdd, ac, aacd, abacdd, aabbaacd, . . . } definiert, d.h. die Menge aller W¨ orter, die aus einer beliebig langen Folge aus a’s und b’s bestehen, gefolgt von genau einem c, gefolgt von beliebig vielen d’s. Es kann gezeigt werden, dass mit solchen Ausdr¨ ucken s¨ amtliche regul¨ aren Sprachen definiert werden k¨ onnen. Die Sprache im Beispiel 6.4, welche alle W¨ orter u ¨ ber dem Alphabet {a, b} mit einer ungeraden Anzahl b umfasst, kann mit einem regul¨ aren Ausdruck geschrieben werden als: (a∗ ba∗ b)∗ a∗ ba∗ . Hier soll aber nicht weiter darauf eingegangen werden. 6.6.2.3 Beispiele von Two-Level-Regeln Die im Abschnitt 6.6.1 erw¨ ahnte Reduktion von Dreifachkonsonanten wie “fff” kann mit der folgenden Two-Level-Regel beschrieben werden:
f:ε ⇒ f:f f:f
(152)
Die Regel erlaubt, im Kontext zweier f ein lexikalisches f durch das Leersymbol zu ersetzen. Da diese Ersetzung nicht zwingend ist (vergleiche Abschnitt 6.6.2.1), k¨ onnen mit dieser Regel aus den Lexemen schiff und fahrt beide Varianten, also “schiffahrt” und “schifffahrt” erzeugt werden, was exakt den Anforderungen (alte und neue Schreibweise verarbeitbar) entspricht. Der Kontext muss auch mit Symbolpaaren spezifiziert werden, weil es Transformationen geben kann, die mit mehreren Regeln verwirklicht werden. Mindestens in einem Teil der Regeln tauchen dann im Kontext Symbolpaare auf, die von einer anderen Regel erzeugt werden. Das zweite Beispiel einer Two-Level-Regel beschreibt die im Abschnitt 6.6.1 erl¨ auterte Variation des Verbstamms “handel”: e:ε ⇔ l:l +:+ e:e
(153)
Diese Two-Level-Regel dr¨ uckt aus, dass das lexikalische Symbol e durch das leere Oberfl¨ achensymbol ε zu ersetzen ist, wenn anschliessend die Symbole l, + und e folgen, und zwar sowohl auf der lexikalischen Ebene als auch auf der Oberfl¨ achenebene. Das Symbol + markiert das Stammende (d.h. die Verbst¨ amme sind im Lexikon mit einem + am Ende eingetragen). Mit der Two-Level-Regel (153) k¨ onnen aus einer einzigen lexikalischen Form “handel” die beiden Varianten “handl” und “handel” wie folgt abgeleitet werden:
182
6. Repr¨ asentation und Anwendung linguistischen Wissens
Variante 1:
Lexikalische Ebene:
handel+e
Regel (153): hand
Variante 2:
Ober߬ achenebene:
handεl+e
Lexikalische Ebene:
handel+st
Regel (153): h a n d / Ober߬ achenebene:
handel+st
Bei Two-Level-Regeln ist es wichtig (und oft auch schwierig), den Kontext gen¨ ugend, aber nicht zu einschr¨ ankend zu formulieren. So ist beispielsweise die Regel (153) auch auf die Verben “b¨ ugeln”, “regeln”, “segeln” usw. anwendbar. Andererseits kann sie richtigerweise nicht auf W¨ orter wie “elend”, “gelebt”, “telefonieren” etc. angewandt werden, weil das Symbol + (Stammende) im Kontext verlangt wird. Hingegen ist die Regel (153) auch auf die lexikalische Form spiel+e anwendbar und w¨ urde die falsche Oberfl¨ achenform spil+e ergeben. Oft ist in solchen F¨ allen die einzig m¨ ogliche L¨ osung, mit einem sonst ˆ diejenigen Lexeme zu markieren, nicht vorkommenden Spezialsymbol, z.B. A, auf welche die Regel anwendbar sein soll. Bis dahin haben wir uns nur daf¨ ur interessiert, was die Two-Level-Regeln beschreiben. Im n¨ achsten Abschnitt wird nun noch gezeigt, wie diese Regeln in Automaten u ¨ bersetzt werden und wie diese Automaten in der morphologischen Analyse von W¨ ortern verwendet werden.
6.6.3 Transduktoren Im Gegensatz zur Anwendung einer DCG, wo die expliziten Regeln vom Parser eingesetzt werden (vergl. Abschnitt 6.5.5), werden Two-Level-Regeln nicht direkt angewendet, sondern zuerst in endliche Automaten u ¨ bersetzt. Im Unterschied zu den im Abschnitt 6.3.1 eingef¨ uhrten endlichen Automaten arbeiten die hier verwendeten Automaten jedoch mit Symbolpaaren und werden darum als Transduktoren (engl. finite state transducers, FST) bezeichnet. Dieser Begriff dr¨ uckt aus, dass das Umformen einer Folge von Eingabesymbolen in eine Folge von Ausgabesymbolen der wesentliche Aspekt ist. 6.6.3.1 Definition und Eigenschaften von Transduktoren Im Abschnitt 6.3.1 wurde gezeigt, wie endliche Automaten zur Analyse von W¨ ortern einer regul¨ aren Sprache eingesetzt werden k¨ onnen. Bei solchen Automaten werden Terminalsymbole entlang eines Pfades konsumiert, und am Schluss erhalten wir die Ausgabe, ob die Symbolfolge ein Wort der durch den Automaten beschriebenen Sprache ist oder nicht. Transduktoren hingegen akzeptieren bestimmte Folgen von Symbolpaaren, oder anders ausgedr¨ uckt, bestimmte Zuordnungen von einer lexikalischen Symbolfolge zu einer Oberfl¨ a-
6.6
Two-Level-Regeln und Transduktoren
D
f:f
D 1
183
f:f
f:f 2
f:
3
f: D | f:
1 2 3
D 1 1 0
f:f 2 2 2
f:ε 0 3 0
0 Abbildung 6.12. Transduktor f¨ ur die Reduktion von “fff” auf “ff”, dargestellt als Zu-
standsdiagramm und als Zustandstabelle (entspricht der Two-Level-Regel 152)
chensymbolfolge. Typischerweise fasst man die eine Symbolfolge als Eingabe und die andere als Ausgabe auf, so dass Transduktoren in diesem Sinne zur Erzeugung einer Ausgabesymbolfolge aus einer Eingabefolge eingesetzt werden k¨ onnen. Dieser Prozess kann aber auch umgekehrt werden (d.h. Eingabe und Ausgabe k¨ onnen vertauscht werden), und zus¨ atzlich k¨ onnen im Allgemeinen beliebig viele Ausgabefolgen resultieren. Dies liegt daran, dass Transduktoren nur bestimmen, ob eine Eingabe- und eine Ausgabesymbolfolge einander zugeordnet werden k¨ onnen, wobei es mehrere zueinander passende Folgen geben kann.11 Betrachten wir beispielsweise die Two-Level-Regel (152) zur Reduktion von “fff” auf “ff”: Diese Regel entspricht dem Transduktor mit dem Zustandsdiagramm von Abbildung 6.12. Die Zust¨ ande sind nummeriert, wobei 1 den Anfangszustand bezeichnet und 0 den Fehlerzustand. Die Zust¨ ande mit Dop¨ pelkreisen sind Endzust¨ ande. Die Uberg¨ ange sind mit je einem Symbolpaar oder mit D markiert. D ist die Menge aller zugelassenen Symbolpaare ohne f:f und f:ε. Mit diesem Transduktor kann nun beispielsweise u uft werden, dass die ¨ berpr¨ Lexeme stoff und fabrik mit der Oberfl¨ achenform “stoffabrik” vereinbar ist. ¨ Der Transduktor durchl¨ auft f¨ ur diese Uberpr¨ ufung die Zust¨ ande: 1, 1, 1, 2, 3, 2, 1, 1, 1, 1 und 1. Da der Transduktor am Ende im Zustand 1 ist und dieser ein g¨ ultiger Endzustand ist, sind die Lexeme und die Oberfl¨ achenvariante vereinbar. Nicht g¨ ultig w¨ are hingegen z.B. das Wort “stofbahn”, weil es nicht mit den Lexemen stoff und bahn vereinbar ist. Wie leicht zu sehen ist, durchl¨ auft der 11 Transduktoren sind daher nicht zu verwechseln mit den aus der Elektronik bekannten Mealy- und Moore-Automaten, die zu jedem Symbol einer Eingabefolge sofort genau ein Ausgabesymbol erzeugen. Es ist im Allgemeinen nicht m¨ oglich, einen FST in einen solchen Automaten umzuwandeln.
184
6. Repr¨ asentation und Anwendung linguistischen Wissens
Transduktor die Zust¨ ande 1, 1, 1, 2, 3, 0 und endet somit im sechsten Schritt im Fehlerzustand. Der Transduktor kann jedoch nicht nur eingesetzt werden, um zwei Symbolfolgen (eine lexikalische und eine Oberfl¨ achensymbolfolge) zu u ufen, ¨ berpr¨ sondern, wie die Bezeichnung suggeriert, auch als Umformer. Nehmen wir die Lexeme stoff und fabrik, die zusammen die Symbolsequenz stofffabrik ergeben und betrachten nun den Transduktor so, dass das linke Symbol der Symbolpaare die Eingabe und das rechte die Ausgabe darstellt, dann ist der Transduktor nicht mehr deterministisch. Es existieren deshalb f¨ ur die gegebene Eingabefolge mehrere g¨ ultige Zustandssequenzen und damit auch Ausgabefolgen, n¨ amlich: Variante 1:
Variante 2:
Eingabesymbolfolge:
s t of f f abr i k
Zustandssequenz:
11122211111
Ausgabesymbolfolge:
s t of f f abr i k
Eingabesymbolfolge:
s t of f f abr i k
Zustandssequenz:
11123211111
Ausgabesymbolfolge:
s t of εf abr i k
Der Transduktor produziert also, wie erwartet, beide Varianten der Folge von Oberfl¨ achensymbolen, mit und ohne Reduktion des dreifachen “f”. ¨ 6.6.3.2 Ubersetzen von Two-Level-Regeln in Transduktoren In diesem Abschnitt wird gezeigt, wie Two-Level-Regeln in Zustandstabellen von Transduktoren u ur jede Vari¨ bersetzt werden. Wir demonstrieren dies f¨ ante von Two-Level-Regeln an einem Beispiel. Transduktor f¨ ur eine Two-Level-Regel der Variante ⇒ ¨ Das Ubersetzen einer Two-Level-Regel der Variante ⇒ wird hier anhand einer hypothetischen Regel ohne linguistischen Hintergrund dargelegt, n¨ amlich:
x:y ⇒ b:b c:c d:d e:e
(154)
Diese Regel besagt gem¨ ass Abschnitt 6.6.2.1, dass das Symbolpaar x:y nur zwischen b:b c:c und d:d e:e stehen darf (aber nicht muss). Um einen Transduktor zu konstruieren, m¨ ussen wir uns zuerst u ¨ berlegen, welche Klassen von Symbolpaaren in dieser Regel relevant sind und deshalb unterschieden werden m¨ ussen. Es sind dies selbstverst¨ andlich die Symbolpaare, die den Kontext spezifizieren, dann das Symbolpaar x:y und schliesslich die Klasse aller anderen Symbolpaare, die wir mit D1 bezeichnen.
6.6
Two-Level-Regeln und Transduktoren
185
Diese Klassen werden nun in die Kopfzeile der zu konstruierenden Zustandstabelle gesetzt. Wir beginnen mit der Klasse D1 und schliessen die u ¨ brigen ¨ Klassen der Ubersichtlichkeit halber in der Reihenfolge an, wie sie in der zu u ufenden Sequenz vorkommen. Anschliessend tragen wir die Zustands¨ berpr¨ u ange ein, die der Transduktor f¨ ur die Symbolpaare des linken Kontex¨ berg¨ tes, des Paares x:y und des rechten Kontextes durchl¨ auft. Naheliegenderweise braucht es daf¨ ur 5 Zust¨ ande.
D1 1 2 3 4 5
b:b 2
c:c
x:y
d:d
e:e
3 4 5 1
¨ Die restlichen Zustands¨ uberg¨ ange sind gem¨ ass den folgenden Uberlegungen auszuf¨ ullen: Das Symbolpaar x:y ist nur im Zustand 3 zul¨ assig, d.h. nach der Eingabe ¨ der Symbolpaare des linken Kontextes. Die restlichen Uberg¨ ange in der Kolonne x:y f¨ uhren also in den Fehlerzustand. Nach der Eingabe von x:y m¨ ussen zwingend die Symbolpaare des rechten ¨ Kontextes folgen. Die noch leeren Uberg¨ ange aus den Zust¨ anden 4 und 5, d.h. nach dem Zustand, der x:y akzeptiert hat, m¨ ussen ebenfalls in den Fehlerzustand f¨ uhren. Da dem linken Kontext b:b oder b:b c:c vorausgehen kann, muss der Transduktor auch aus den Zust¨ anden 2 und 3 bei der Eingabe von b:b in den ¨ Zustand 2 u ange in der Kolonne b:b sind ¨ bergehen. Die noch leeren Uberg¨ also auf 2 zu setzen. ¨ Alle noch freien Uberg¨ ange f¨ uhren in den Zustand 1. Die Frage ist nun noch, welches die Endzust¨ ande sind. Keine Endzust¨ ande sind diejenigen, in welchen sich der Transduktor befindet, wenn zwar die Eingabe x:y erfolgt ist, aber nicht der gesamte rechte Kontext. Dies sind die Zust¨ ande 4 und 5. Endzust¨ ande sind demnach die Zust¨ ande 1 bis 3 (fett gedruckt). Damit ist der Transduktor f¨ ur die Two-Level-Regel (154) vollst¨ andig bestimmt. Diese Zustandstabelle ist eine kompakte Schreibweise der vollst¨ andigen Zustandstabelle, in der f¨ ur jedes Symbolpaar der Klasse D1 eine separate Kolonne aufgef¨ uhrt sein m¨ usste. Da alle diese Kolonnen hinsichtlich der Zustands¨ uberg¨ ange gleich sind, ist diese kompakte Schreibweise m¨ oglich. Der Transduktor selbst wird dadurch jedoch nicht kompakter.
186
6. Repr¨ asentation und Anwendung linguistischen Wissens
T1 : 1 2 3 4 5
D1 1 1 1 0 0
b:b 2 2 2 0 0
c:c 1 3 1 0 0
x:y 0 0 4 0 0
d:d 1 1 1 5 0
e:e 1 1 1 0 1
Transduktor f¨ ur eine Two-Level-Regel der Variante ⇐ Die Konstruktion eines Transduktors f¨ ur eine Two-Level-Regel der Variante ⇐ wird anhand der folgenden Regel veranschaulicht:
x:y ⇐ b:b c:c d:d e:e
(155)
Diese Regel besagt, dass das zwischen den Symbolpaaren b:d c:c und d:d e:e stehende Symbolpaar nicht von der Form x:¬y sein darf. Der Transduktor muss folglich jede Folge von Symbolpaaren akzeptieren, wenn sie nicht die alt. Sequenz b:b c:c x:¬y d:d e:e enth¨ Wiederum m¨ ussen wir uns zuerst u ¨ berlegen, welche Klassen von Symbolpaaren relevant sind und deshalb unterschieden werden m¨ ussen. Es sind dies einerseits die Symbolpaare der nicht erlaubten Sequenz b:b c:c x:¬y d:d e:e und andererseits die Menge aller andern Symbolpaare, die wir mit D2 bezeichnen. Zu beachten ist, dass die Menge x:¬y mehrere Symbolpaare umfassen kann und die vollst¨ andige Zustandstabelle f¨ ur jedes dieser Symbolpaare eine Kolonne aufweisen muss. Diese Symbolklassen werden wiederum in die Kopfzeile der zu konstruierenden Zustandstabelle gesetzt. Anschliessend tragen wir die Zustands¨ uberg¨ ange ein, die der Transduktor f¨ ur die nicht erlaubte Sequenz durchl¨ auft. Diese muss selbstverst¨ andlich im Fehlerzustand 0 enden. Es braucht wiederum 5 Zust¨ ande, n¨ amlich:
D2 1 2 3 4 5
b:b 2
c:c
x:¬y d:d
e:e
3 4 5 0
¨ Um die restlichen Zustands¨ uberg¨ ange zu bestimmen, sind die folgenden Uberlegungen massgebend:
6.6
Two-Level-Regeln und Transduktoren
187
In den Zust¨ anden 2 bis 5 ist der Anfang der verbotenen Sequenz (d.h. 1 bis 4 Symbolpaare) detektiert worden. Wenn in einem dieser Zust¨ ande die Eingabe b:b erfolgt, dann heisst dies, dass wir wiederum am Anfang der verbotenen Sequenz sind und der Transduktor deshalb in den Zustand 2 u ullen. ¨ bergehen muss. Die Kolonne b:b ist entsprechend einzuf¨ Alle jetzt noch leeren Zustands¨ uberg¨ ange m¨ ussen in den Zustand 1 f¨ uhren, weil die entsprechenden Eingaben einer erlaubten Sequenz entsprechen. Wie leicht einzusehen ist, sind mit Ausnahme des Fehlerzustands alle Zust¨ ande auch g¨ ultige Endzust¨ ande. Die vollst¨ andige Zustandstabelle ist somit:
T2 : 1 2 3 4 5
D2 1 1 1 1 1
b:b 2 2 2 2 2
c:c 1 3 1 1 1
x:¬y d:d 1 1 1 1 4 1 1 5 1 1
e:e 1 1 1 1 0
Transduktor f¨ ur eine Two-Level-Regel der Variante ⇔ Definitionsgem¨ ass k¨ onnen zwei Two-Level-Regeln der Varianten ⇒ und ⇐, die abgesehen von diesem Operator gleich sind, in eine Regel der Variante ⇔ zusammengefasst werden. Da selbstverst¨ andlich auch das Umgekehrte gilt, kann ein Transduktor f¨ ur eine Two-Level-Regel der Variante ⇔ konstruiert werden, indem zuerst die Transduktoren f¨ ur die Regel-Varianten ⇒ und ⇐ konstruiert und diese anschliessend kombiniert werden, wie dies im folgenden Abschnitt gezeigt wird. 6.6.3.3 Kombinieren von Transduktoren F¨ ur das Kombinieren von Transduktoren ist wichtig zu bedenken, dass ein ur die Sprache L(T ) ⊆ VT∗ ist, Transduktor T ein analysierendes System f¨ wobei VT alle zugelassenen Symbolpaare umfasst. Sollen nun mehrere Transduktoren T1 , T2 , . . ., TN gleichzeitig zur Anwendung kommen, weil die zugeh¨ origen Two-Level-Regeln gleichzeitig gelten sollen, dann ist die Sprache des kombinierten Transduktors L(Tk ) = L(T1 ) ∩ L(T2 ) ∩ . . . ∩ L(TN ). Es wird hier nur gezeigt, wie zwei Transduktoren zu einem neuen kombiniert werden. Falls mehr als zwei zu kombinieren sind, dann ist iterativ vorzugehen, wobei in jedem Schritt zwei Transduktoren kombiniert werden. Als Beispiel wollen wir nicht die beiden Transduktoren T1 und T2 aus Abschnitt 6.6.3.2 kombinieren, weil die zugeh¨ origen Two-Level-Regeln (154) und (155) denselben Kontext haben und das Beispiel deshalb zu wenig allgemein
188
6. Repr¨ asentation und Anwendung linguistischen Wissens
ist. Statt dessen soll der Transduktor T1 mit demjenigen aus der folgenden Regel kombiniert werden: x:y ⇐ f:f c:c b:b d:d
(156)
Diese Regel ist zwar von derselben Form wie die Regel (155), aber die Kontexte der Regeln (154) und (156) sind verschieden, u ¨ berschneiden sich jedoch teilweise, was beim Kombinieren der Transduktoren ber¨ ucksichtigt werden muss. Zuerst m¨ ussen wir nun f¨ ur die Two-Level-Regel (156) den zugeh¨ origen Transduktor T3 konstruieren, analog zum Beispiel im Abschnitt 6.6.3.2. Wir erhalten die folgende Zustandstabelle:
T3 : 1 2 3 4 5
D3 1 1 1 1 1
f:f 2 2 2 2 2
c:c 1 3 1 1 1
x:¬y 1 1 4 1 1
b:b 1 1 1 5 1
d:d 1 1 1 1 0
Da die hier behandelten Transduktoren den endlichen Automaten in Abschnitt 6.3.1 v¨ ollig entsprechen, k¨ onnen auch zwei Transduktoren nach Algorithmus 6.20 zu einem einzigen Transduktor kombiniert werden. Daf¨ ur m¨ ussen jedoch die Zustandstabellen der beiden zu kombinierenden Transduktoren so umgeformt werden, dass die Kopfzeilen identisch sind, d.h. wir m¨ ussen zuerst die in diesen Transduktoren massgebenden (disjunkten) Klassen von Symbolpaaren zusammenstellen. Offensichtlich sind dies hier: D4 , b:b, c:c, d:d, e:e, f:f, x:¬y und x:y, wobei in D4 alle Symbolpaare enthalten sind, die sonst nicht aufgef¨ uhrt sind. Die Transduktoren T1 und T3 mit identischer Kopfzeile geschrieben lauten somit:
T1a : 1 2 3 4 5
D4 1 1 1 0 0
b:b 2 2 2 0 0
c:c 1 3 1 0 0
d:d 1 1 1 5 0
e:e 1 1 1 0 1
f:f 1 1 1 0 0
x:¬y 1 1 1 0 0
x:y 0 0 4 0 0
6.6
Two-Level-Regeln und Transduktoren
T3a : 1 2 3 4 5
D4 1 1 1 1 1
b:b 1 1 1 5 1
c:c 1 3 1 1 1
d:d 1 1 1 1 0
e:e 1 1 1 1 1
189
f:f 2 2 2 2 2
x:¬y 1 1 4 1 1
x:y 1 1 1 1 1
Zu beachten ist, dass bei T1 die Symbolpaare f:f und x:¬y in der Menge D1 enthalten sind. In der Zustandstabelle von T1a stehen sie je in einer eigenen Kolonne. Nun kann aus den Zustandstabellen T1a und T3a mit dem Algorithmus 6.20 (Seite 158) die Zustandstabelle des resultierenden Transduktors T4 ermittelt werden. Dies ergibt:
T4 : 1 2 3 4 5 6 7 8 9
D4 1 1 1 1 1 0 1 0 1
b:b 2 2 2 2 2 0 9 0 2
c:c 1 4 5 1 1 0 1 0 4
d:d 1 1 1 1 1 8 1 0 0
e:e 1 1 1 1 1 0 1 1 1
f:f 3 3 3 3 3 0 3 0 3
x:¬y 1 1 1 1 7 0 1 0 1
x:y 0 0 0 6 0 0 0 0 0
Mit dem Transduktor T4 k¨ onnen nun die Two-Level-Regeln (154) und (156) gleichzeitig zur Anwendung gebracht werden.
Kapitel 7 Einf¨ uhrung in die Sprachsynthese
7
7
7 7.1 7.2 7.3 7.4 7.4.1 7.4.2 7.5 7.5.1 7.5.2
Einf¨ uhrung in die Sprachsynthese ¨ Uberblick u ¨ber die Geschichte der Sprachsynthese ...... Aufgabe der Sprachsynthese ................................. Zusammenhang zwischen Lautsprache und Schrift ...... Teile der Sprachsynthese...................................... Die Transkription ............................................... Die phonoakustische Stufe ................................... Lautinventar f¨ ur die Sprachsynthese ........................ Linguistische Grundlagen ..................................... Festlegen der Lautdifferenzierung ...........................
193 194 195 196 197 199 200 200 201
7 Einf¨ uhrung in die Sprachsynthese ¨ 7.1 Uberblick u ¨ber die Geschichte der Sprachsynthese Seit Jahrhunderten waren Menschen von der Idee fasziniert, eine Maschine zu konstruieren, mit welcher k¨ unstliche Lautsprache erzeugt werden kann. Wissenschaftliche Grundlagenarbeiten und erste Konstruktionen von akustischen Versuchsapparaten in dieser Richtung fanden in der zweiten H¨ alfte des 18. ¨ Jahrhunderts statt (eine gute Ubersicht bietet z.B. [27]). Am ber¨ uhmtesten ist wohl die “sprechende Maschine” von Wolfgang von Kempelen (siehe [13]), mit der nicht nur einzelne Laute, sondern auch W¨ orter und k¨ urzere S¨ atze erzeugt werden konnten. Die wichtigsten Komponenten dieser Maschine waren ein Blasbalg, ein vibrierendes Stimmblatt und ein verformbares Lederrohr. Die Maschine war jedoch kein Automat, sondern eher ein ¨ Instrument, mit dem ein fingerfertiger Spieler mit viel Ubung gewisse sprachahnlichen Lautabfolgen zu produzieren vermochte. Von Kempelen hat mit ¨ seinen Arbeiten insbesondere gezeigt, dass der Vokaltrakt der zentrale Ort der Artikulation ist. Zuvor war man der Ansicht, dass die Sprachlaute vom Kehlkopf erzeugt w¨ urden. St¨ arker in den Fokus wissenschaftlichen Interesses gelangte die Sprachsynthese erst gegen Mitte des 20. Jahrhunderts, als die Elektronik und damit die analoge Signalverarbeitung neue M¨ oglichkeiten er¨ offnete. Basierend auf der akustischen Theorie der Spracherzeugung in [8] wurden um 1960 die ersten Formantsynthetisatoren entwickelt, die k¨ unstliche Sprache produzierten, die der menschlichen Sprache schon recht ¨ ahnlich war. Die Sprachsynthese im Sinne der Umsetzung von Text in Lautsprache wurde jedoch erst mit dem Aufschwung der Computertechnik im Laufe der Sechzigerjahre m¨ oglich. Insbesondere die Umsetzung der Buchstabenfolge eines Eingabetextes in die entsprechende Lautfolge konnte in dieser Zeit erstmals automatisiert werden, w¨ ahrend die Erzeugung des Sprachsignals weitgehend auf denselben Prinzipien beruhte wie die fr¨ uheren Formantsynthetisatoren, wenn auch in verfeinerter Form. Parallel dazu entwickelte sich der artikulatorische Ansatz der Spracherzeugung, mit dem Ziel, den menschlichen Vo¨ kaltrakt zu simulieren. Eine gute Ubersicht u ¨ ber die damaligen Arbeiten ist samt Audiobeispielen in [15] zu finden. Erst in den Siebzigerjahren gewannen die Verkettung nat¨ urlicher Sprachsignalsegmente (die konkatenative Sprachsynthese) und die Prosodiesteuerung an Bedeutung. Vorerst wurde vor allem mit dem Diphonansatz gearbeitet. Mit der zunehmenden Speicherkapazit¨ at von Computern in den Achtzigerund Neunzigerjahren wurden immer zahlreichere und gr¨ ossere Sprachsignal-
7.1
194
7. Einf¨ uhrung in die Sprachsynthese
segmente verwendet, was schliesslich zur Korpussynthese (engl. unit selection synthesis) f¨ uhrte.
7.2
7.2 Aufgabe der Sprachsynthese Mit dem Begriff Sprachsynthese ist hier die Umsetzung geschriebener Sprache (orthographischer Text) in Lautsprache, also in Sprachsignale, gemeint. Diese Umsetzung steht in Analogie zu einer Person, die vorliest. Die Aufgabe der Sprachsynthese ist somit nichts Geringeres als das zu leisten, was diese Person leistet. Die Zuh¨ orer merken an den Fehlern, die eine vorlesende Person allenfalls macht, ziemlich schnell, wie gut sie die Sprache beherrscht und auch ob sie versteht, was sie vorliest. Die Fehler k¨ onnen in zwei Kategorien eingeteilt werden: 1. Falsch ausgesprochene W¨ orter: Es kann sein, dass die Person gewisse W¨ orter nicht kennt. Zur Aussprache solcher W¨ orter zieht sie Ausspracheregeln heran oder sie schliesst aufgrund gewisser Analogien auf eine bestimmte Aussprache. Weicht die so hergeleitete Aussprache von der korrekten ab, dann merken die Zuh¨ orer, dass die vorlesende Person die W¨ orter teilweise nicht kennt. Solche Fehler ¨ aussern sich h¨ aufig in einer falschen Lautfolge, beziehen sich also auf die segmentale Ebene. In mehrsilbigen W¨ ortern kann auch die Akzentuierung der Silben falsch sein. 2. Unpassend gesetzte Satzakzente und unmotivierte Gruppierung: Die W¨ orter eines Satzes werden beim Sprechen gem¨ ass ihrer Wichtigkeit akzentuiert (betont), wobei der Sprecher einen relativ grossen Spielraum hat. Werden die Grenzen dieses Spielraums u ¨ berschritten, dann resultiert eine nicht sinnkonforme oder sogar sinnwidrige Akzentuierung, die dem Zuh¨ orer verr¨ at, dass der Sprecher den Sinn des Textes nicht verstanden hat. Bei l¨ angeren, komplizierten S¨ atzen ist zudem eine Gruppierung der W¨ orter f¨ ur den Zuh¨ orer hilfreich, wobei die Sprechgruppengrenzen je nach St¨ arke durch Pausen, durch Verz¨ ogerung und durch Variieren der Tonh¨ ohe markiert werden k¨ onnen. Auch das sinnwidrige Setzen von Sprechgruppengrenzen kann verraten, dass der Sprecher das Gelesene nicht versteht. Die Akzentuierung und die Gruppierung beziehen sich nicht auf einzelne Laute, sondern auf Silben oder noch gr¨ ossere Einheiten, haben also mit der suprasegmentalen Ebene zu tun. Ein ideales Sprachsynthesesystem soll selbstverst¨ andlich beide Fehlerarten vermeiden. Das heisst, dass es den Text verstehen muss, wie dies auch bei der
7.3
Zusammenhang zwischen Lautsprache und Schrift
195
vorlesenden Person erforderlich ist. Das Vorlesen ist deshalb sehr schwierig maschinell nachzubilden. Eine Maschine, die beliebige Texte verstehen kann, liegt heutzutage jedoch nicht im Bereich des M¨ oglichen. Die Forderung, dass das Sprachsynthesesystem die Texte zu verstehen hat, muss somit abgeschw¨ acht werden. Die Abschw¨ achung der Forderung besteht darin, statt einer semantischen Analyse des Textes nur eine syntaktische durchzuf¨ uhren. Wie sich im Folgenden zeigen wird, kann auf diesem Weg f¨ ur sehr viele S¨ atze ein korrektes Sprachsignal erzeugt werden, bei dem also sowohl die Lautfolge als auch die Prosodie (insbes. die Satzmelodie und der Rhythmus) stimmen. Mit welchen Ans¨ atzen diese realistischere Zielsetzung erreicht werden kann, wird in den folgenden Abschnitten erl¨ autert.
7.3 Zusammenhang zwischen Lautsprache und Schrift Das Ziel der sprachlichen Kommunikation zwischen Menschen ist der Austausch von Informationen. Dabei werden haupts¨ achlich die f¨ ur den Empf¨ anger jeweils neuen Informationen u ahigkeit zur Analyse des ¨ bertragen. Die F¨ Satzaufbaus und die Kenntnis des Zusammenhangs, in welchem die u ¨bertragene Mitteilung steht, werden beim Empf¨ anger stillschweigend vorausgesetzt. Die Bedeutung der einzelnen W¨ orter und die Konstruktionsregeln der Sprache sind im Prinzip willk¨ urliche Konventionen, welche von den Mitgliedern einer Sprachgemeinschaft im Laufe ihrer Sprachentwicklung erworben wurden. Lautsprache und Schrift dienen beide lediglich als Vehikel f¨ ur die zu u a¨ bermittelnden Vorstellungen. Sie sind also gewissermassen an die Oberfl¨ che gebrachte Darstellungen einer gemeinsamen Tiefenstruktur. Diese umfasst alle Zusammenh¨ ange (insbesondere auch semantische und pragmatische) und gilt damit als die vollst¨ andige und eindeutige Information. Bei der Abbildung von der Tiefenstruktur auf eine Oberfl¨ achenstruktur findet ein Informationsverlust statt. Die Oberfl¨ achenstruktur enth¨ alt jedoch normalerweise noch gen¨ ugend Information u ber die zugrunde liegende Tiefenstruk¨ tur, so dass eine im Allgemeinen befriedigende Kommunikation zwischen Men¨ schen gew¨ ahrleistet ist. Es ist im Allgemeinen aber kein direkter Ubergang zwischen verschiedenen Oberfl¨ achen (z.B. zwischen Text und Lautsprache) ¨ m¨ oglich. Die Sprachsynthese zielt jedoch exakt auf einen derartigen Ubergang ab. Auch eine Person muss, um etwas richtig vorlesen zu k¨ onnen, das optisch Erfasste zuerst verstehen, also die schriftsprachliche Oberfl¨ ache (eine Abfolge von Schriftzeichen) in die Tiefenstruktur u berf¨ u hren und somit die eigentliche ¨ und umfassende Information rekonstruieren, wie dies in Abbildung 7.1 der
7.3
196
7. Einf¨ uhrung in die Sprachsynthese
schriftsprachliche Oberflächenform
lautsprachliche Oberflächenform
phonetisch-prosodische graphemische
phonologische morphologische syntaktische semantische
sprachliche Wissensebenen
pragmatische
vollständige Information (Tiefenstruktur) Abbildung 7.1. Abstrakte Darstellung des Vorlesens, bei dem die reduzierte, schrift-
sprachliche Form der Information zuerst in die Tiefenstruktur u uhrt wird. Erst aus ¨berf¨ der vollst¨ andigen Information der Tiefenstruktur kann dann die ad¨ aquate lautsprachliche Form erzeugt werden.
abw¨ artszeigende Pfeil darstellt. Erst danach erfolgt die Umsetzung in die lautsprachliche Oberfl¨ ache. F¨ ur die Sprachsynthese folgt daraus, dass aus dem Text nicht direkt Lautsprache erzeugt werden kann. Vielmehr muss zuerst unter Einsatz von sprachlichem und anderem Wissen eine Art Tiefenstruktur mit h¨ oherem Informationsgehalt erzeugt werden. Sie wird hier als Zwischenstruktur bezeichnet. Erst daraus l¨ asst sich dann die Lautsprache generieren.
7.4
7.4 Teile der Sprachsynthese Ein wesentliches Unterscheidungsmerkmal von Text und Lautsprache ist, dass Lautsprache immer eine konkrete Stimme bedingt, wogegen Text g¨ anzlich von einer Stimme unabh¨ angig ist. Jedes Sprachsynthesesystem muss demnach ¨ diesen Ubergang von einer stimmunabh¨ angigen zu einer stimmabh¨ angigen Realisierung vollziehen, oder anders gesagt, es muss stimmunabh¨ angige und stimmabh¨ angige Komponenten enthalten. Das in Abbildung 7.2 skizzierte Sprachsynthesesystem ist nach diesem Kriterium in zwei Teile gegliedert.1 Der stimmunabh¨ angige Teil wird als Transkriptionsstufe bezeichnet. Das Resultat der Transkription eines Eingabetextes ist eine abstrakte Beschreibung 1
Nicht alle Sprachsynthesesysteme sind streng nach dieser Zweiteilung konzipiert, aber man kann in jedem Sprachsynthesesystem stimmabh¨ angige und stimmunabh¨ angige Teile unterscheiden.
7.4
Teile der Sprachsynthese
197
Text
Transkription stimmunabhängig
linguistische Verarbeitung
Phonologische Darstellung (Laute, Akzente, Phrasen)
phonoakustische Stufe stimmabhängig
Prosodiesteuerung und Signalproduktion
Sprachsignal Abbildung 7.2. Bei einem Sprachsynthesesystem kann zwischen einem stimmunabh¨ angi-
gen und einem stimmabh¨ angigen Teil unterschieden werden.
des zu erzeugenden Sprachsignals, die selbst noch stimmunabh¨ angig ist. Wir nennen sie die phonologische Darstellung. Sie umfasst Information dar¨ uber, welche Laute nacheinander erzeugt werden m¨ ussen, welche Sprechsilben wie stark akzentuiert sein sollen, und wo wie stark ausgepr¨ agte Sprechgruppengrenzen zu setzen sind. Die Beschreibung spezifiziert aber beispielsweise nicht, welche L¨ ange oder Tonh¨ ohe die zu erzeugenden Laute haben sollen, auch nicht ob es eine M¨ anner- oder eine Frauenstimme sein soll. Dies alles bestimmt erst der stimmabh¨ angige Teil, der als phonoakustische Stufe bezeichnet wird. Die Aufgaben dieser zwei Hauptteile der Sprachsynthese werden in den beiden folgenden Abschnitten zusammengefasst.
7.4.1 Die Transkription Die Transkriptionsstufe ermittelt die Aussprache der W¨ orter, legt also fest, welche Laute sp¨ ater bei der Signalproduktion nacheinander erzeugt werden m¨ ussen, um ein korrektes Sprachsignal zu erhalten. Die Aussprache ist in der onnen die Regel f¨ ur jedes Wort einzeln bestimmbar.2 Im Gegensatz dazu k¨ Wichtigkeit der W¨ orter (d.h. die Verteilung der Akzente in einem Satz) und 2 Im Deutschen sind W¨ orter mit derselben Schreibweise, aber mit unterschiedlicher Bedeutung und Aussprache, sogenannte Homographen, ziemlich selten. Ein Beispiel daf¨ ur ist “modern”, das je nach Bedeutung als ["mo:-d@rn] (faulen) oder [mo-"dErn] (neuzeitlich) auszusprechen ist.
198
7. Einf¨ uhrung in die Sprachsynthese
die Unterteilung des Satzes in Sprechgruppen (sog. Phrasen) nur aufgrund von Information u orter zueinander bestimmt werden. ¨ ber die Beziehung der W¨ So kann beispielsweise aus dem syntaktischen Aufbau eines Satzes abgeleitet werden, wo Phrasengrenzen zu setzen sind. Die Transkriptionsstufe muss somit eine Wortanalyse und eine Satzanalyse umfassen, aus deren Resultaten die phonologische Darstellung der zu erzeugenden Lautsprache abgeleitet werden kann, also die Lautfolge, die Akzente, die Phrasengrenzen und die Phrasentypen. F¨ ur den Satz “Heinrich besuchte gestern die Ausstellung im Kunstmuseum.” kann die Transkription beispielsweise die folgende phonologische Darstellung liefern:3 (P) [1]ha
Markierung der Silbengrenzen in mehrsilbigen W¨ ortern
[j]
In eckigen Klammern wird die Akzentst¨ arke (Betonungsgrad) der nachfolgenden Silbe angegeben, wobei [1] die st¨ arkste Betonung bezeichnet. Silben ohne Angabe sind unbetont.
#{k}
Phrasengrenzen sind mit einem Kreuz markiert. Die Trennst¨ arke wird in geschweiften Klammern angegeben, wobei {1} die st¨ arkste Trennung bezeichnet.
(.)
In runden Klammern am Anfang der Phrase steht der Phrasentyp, wobei (P) progredient (Phrase steht nicht am Satzende) und (T) terminal (Phrase steht am Satzende) bedeuten.
Gem¨ ass den Ausf¨ uhrungen u ¨ ber das Vorlesen (siehe Abschnitt 7.3) muss die Transkription zur Umsetzung des Eingabetextes in die phonologische Darstellung eine Zwischenstruktur erzeugen, die idealerweise der erw¨ ahnten Tiefenstruktur entspr¨ ache. Da aber weder eine allgemeing¨ ultige und umfassende semantische Analyse beliebiger Texte machbar ist, noch das notwendige Welt3
Die Notation der phonologischen Darstellung st¨ utzt sich auf das an der ETH Z¨ urich entwickelte Sprachsynthesesystem SVOX, wobei hier die Laute der Lesbarkeit wegen nicht als ETHPA-Zeichen, sondern als IPA-Zeichen geschrieben werden. F¨ ur das Wort “Heinrich” steht beispielsweise [ha
7.4
Teile der Sprachsynthese
199
Text (Satz)
Phonologische Darstellung
morphologische Analyse
Erzeugung phonolog. Darst.
Wortstruktur & Aussprache
Phrasierung Syntaxanalyse Satzstruktur
Akzentuierung
semantische Analyse
Zwischenstruktur Abbildung 7.3. Transkription: Umsetzung von Text in die phonologische Darstellung unter Einbezug linguistischen Wissens verschiedener Ebenen. Die semantische Ebene ist im Prinzip unentbehrlich, aber zumindest vorl¨ aufig in einer allgemeinen Form nicht realisierbar.
wissen in ein reales System integriert werden kann, muss die Transkription gezwungenermassen mit einer vergleichsweise bescheidenen Zwischenstruktur auskommen. Hier umfasst sie im Wesentlichen die Resultate aus der morphologischen und syntaktischen Analyse (vergl. Abbildung 7.3). Welche Aufgaben die erw¨ ahnten Teile der Transkription im Einzelnen erf¨ ullen m¨ ussen, wie ein Transkriptionssystem realisiert werden kann und welche Schwierigkeiten dabei zu meistern sind, wird im Kapitel 8 behandelt.
7.4.2 Die phonoakustische Stufe Die Aufgabe der phonoakustischen Stufe ist es, aus der phonologischen Darstellung, welche das zu erzeugende Sprachsignal stimmunabh¨ angig beschreibt, das konkrete Sprachsignal zu erzeugen. Wie in Abbildung 7.4 dargestellt ist, umfasst die phonoakustische Stufe zwei Komponenten, n¨ amlich die Prosodiesteuerung und die Sprachsignalproduktion. Die Prosodiesteuerung leitet aus der phonologischen Darstellung (wichtig sind dabei haupts¨ achlich die Akzente, die Phrasengrenzen und die Phrasentypen) die prosodischen Parameter ab, bestimmt also f¨ ur jeden Laut die Grundfrequenz, die Lautdauer und die Intensit¨ at.
200
7. Einf¨ uhrung in die Sprachsynthese
Phonologische Darstellung (Laute, Akzente, Phrasen)
Prosodiesteuerung Dauer
Grundfrequenz
Intensität
Sprachsignalproduktion
Sprachsignal Abbildung 7.4. Die phonoakustische Stufe eines Sprachsynthesesystems setzt sich aus der
Prosodiesteuerung und dem Signalproduktionsteil zusammen.
Die Sprachsignalproduktion kann nun die Laute in der durch phonologische Darstellung gegebenen Reihenfolge und mit den von der Prosodiesteuerung bestimmten prosodischen Parametern erzeugen: Es resultiert das synthetische Sprachsignal. Wie die phonoakustische Stufe realisiert werden kann, wird im Kapitel 9 besprochen.
7.5
7.5 Lautinventar f¨ ur die Sprachsynthese Bevor man mit der Verwirklichung einer Sprachsynthese f¨ ur eine bestimmte Sprache beginnen kann, muss man Klarheit dar¨ uber schaffen, welche Laute und Lautfolgen u aren, wird ¨ berhaupt zu erzeugen sind. Um diese Frage zu kl¨ im n¨ achsten Abschnitt zuerst erl¨ autert auf welchen linguistischen Grundlagen wir in diesem Zusammenhang aufbauen k¨ onnen bzw. m¨ ussen.
7.5.1 Linguistische Grundlagen Die beiden Bereiche der Linguistik, die sich mit der segmentalen Ebene der Lautsprache befassen, sind die Phonologie und die Phonetik. Die Phonologie definiert das Phoneminventar einer Sprache. F¨ ur das Deutsche ist das Phoneminventar im Anhang A.2 verzeichnet. Die Phoneme lassen sich mit der Minimalpaaranalyse ermitteln. Aufgrund dieser Analyse folgt z.B. f¨ ur das deutsche Wortpaar “Daten” und “Taten” mit den phonemischen Umschrif-
7.5
Lautinventar f¨ ur die Sprachsynthese
201
ten /da:t@n/ und /ta:t@n/, dass /d/ und /t/ zwei Phoneme der deutschen Sprache sind. Die Phonetik besch¨ aftigt sich mit den konkreten Realisierungen der Laute und damit, welche Laute unterschieden werden sollen, also mit dem Lautinventar. Dabei ist es weitgehend eine Frage des Detaillierungsgrades, was als ein einziger bzw. als mehrere verschiedene Laute klassiert wird. Das f¨ ur die deutsche Sprache massgebende Lautinventar ist in [7] spezifiziert (vergl. auch Anhang A.1). Mit dem f¨ ur eine Sprache definierten Lautinventar kann die Aussprache beliebiger W¨ orter dieser Sprache symbolisch beschrieben werden. F¨ ur das Deutsche wurde dies beispielsweise in [7] umfassend ausgef¨ uhrt. Die symbolische Darstellung dieser Standardaussprache umfasst nebst der Abfolge von Lautschriftzeichen auch eine Angabe u ortern ¨ ber die Betonung. In mehrsilbigen W¨ werden die Silben nicht gleich stark betont. Die Betonung wird in drei St¨ arken angegeben, n¨ amlich mit Hauptakzent, Nebenakzent und unbetont (siehe Anhang A.1). So wird z.B. die Aussprache des Wortes “Eisenbahn” definiert als ["a
7.5.2 Festlegen der Lautdifferenzierung Aus obigen linguistischen Grundlagen k¨ onnen wir f¨ ur die Sprachsynthese hinsichtlich der Lautdifferenzierung die folgende Minimalanforderung ableiten: Um alle synthetisierten W¨ orter unterscheiden zu k¨ onnen, w¨ are es grunds¨ atzlich ausreichend, wenn die Sprachsynthese alle Phoneme der betreffenden Sprache in entsprechende Signale umsetzen k¨ onnte. Dies geht direkt aus der Definition der Phoneme hervor. Verst¨ andlich k¨ onnte diese synthetische Lautsprache zwar sein, korrekt w¨ are sie jedoch nicht. W¨ orter wie “dich” und “doch”, die beide das Phonem /x/ entussen, zeigen, dass in der halten, aber als [dI¸c] und [dOx] gesprochen werden m¨ Sprachsynthese auch gewisse Allophone unterschieden werden m¨ ussen. Nebst den Allophonen [¸c] und [x] verlangt die korrekte Aussprache deutscher W¨ or-
202
7. Einf¨ uhrung in die Sprachsynthese
ter z.B. dass die stimmlosen Plosive in gewissen F¨ allen aspiriert zu sprechen sind (vergl. Abschnitt 7.5.1). Die Sprachsynthese muss somit auch Allophone wie [th ] und [t] (aspiriert vs. nicht aspiriert) unterscheiden. Zudem kann man beim Untersuchen korrekt gesprochener Sprache (das Ziel der Sprachsynthese ist ja korrekte Sprache zu produzieren) feststellen, dass Laute, f¨ ur die in der phonetischen Umschrift dasselbe Symbol verwendet wird, unterschiedlich gesprochen werden. So findet man f¨ ur die Laute [f], [l], [n] etc. schwache und starke Auspr¨ agungen (siehe Abschnitt 7.5.1). Damit die Sprache korrekt klingt, d¨ urfen sie weder fehlen noch k¨ onnen sie willk¨ urlich gesetzt werden. Um korrekte Lautsprache zu synthetisieren, muss die Sprachsynthese also eine Anzahl verschiedener Laute erzeugen k¨ onnen, die wesentlich gr¨ osser ist als die Zahl der Phoneme. Grunds¨ atzlich gilt, dass eine feinere lautliche Differenzierung potentiell die Qualit¨ at der synthetischen Sprache verbessert. Dies ist aber nur dann wirklich der Fall, wenn f¨ ur jedes Wort bekannt ist, aus welchen dieser Laute oder Lautvarianten es zusammengesetzt ist. Die Aussprache der W¨ orter zu bestimmen ist eine Aufgabe der Transkription. Da sich die Transkription jedoch auf allgemein anerkannte Aussprachelexika wie beispielsweise [7] und damit auf die IPA-Lautschrift st¨ utzen muss, ist eine feinere oder auch nur schon eine abweichende Lautdifferenzierung im Allgemeinen sehr problematisch.4 Gewisse Abweichungen, beispielsweise die oben erw¨ ahnte Aspiration von Plosiven, sind aber f¨ ur die korrekte Aussprache n¨ otig. Sofern sie sich regelhaft aus der Standardaussprache ableiten lassen, verursachen sie keine gr¨ osseren Probleme. F¨ ur die Aspiration der Plosive gibt es solche Regeln in [7]. F¨ ur andere Ph¨ anomene wie die starke bzw. schwache Aussprache der Konsonanten [f], [l], [n] etc., m¨ ussen Regeln gesucht werden, was meistens nicht schwierig ist, wenn der Kontext betrachtet wird. So gilt z.B. f¨ ur den Laut [l], der offensichtlich in den W¨ ortern “Wahl” und “Wall” nicht gleich gesprochen wird, dass die starke Form nach dem kurzen [a] verlangt wird und die schwache Form nach dem langen [a:]. 4
Die Tatsache, dass Aussprachelexika n¨ otig sind, welche die Standardaussprache festlegen, impliziert, dass es im Allgemeinen Unsicherheiten dar¨ uber gibt, wie W¨ orter richtig auszusprechen sind. Es d¨ urfte deshalb f¨ ur Ingenieure, die mit vorwiegend technischem Knowhow ein Sprachsynthesesystem entwickeln wollen, sehr ratsam sein, sich auf etwas Definiertes und allgemein Anerkanntes wie das “Duden Aussprachew¨ orterbuch” zu verlassen.
Kapitel 8 Sprachsynthese: Transkription
8
8
8 8.1 8.1.1 8.1.2 8.2 8.2.1 8.2.2 8.3 8.3.1 8.3.2 8.3.3 8.4 8.4.1 8.4.2 8.4.3 8.4.4 8.4.5 8.4.6 8.4.7 8.4.8 8.4.9
Sprachsynthese: Transkription Linguistische Grundlagen f¨ ur die Transkription........... Ermitteln der Lautfolge ....................................... Ermitteln der Prosodie ........................................ Automatische Transkription .................................. Der “direkte” Ansatz der Transkription..................... Der linguistische Ansatz der Transkription ................ Automatische morphosyntaktische Analyse ............... Morphologische Analyse mit DCG .......................... Generierung der phonetischen Umschrift in einer DCG . Hauptprobleme der morphosyntaktischen Analyse ....... Realisation einer Transkriptionsstufe ....................... DCG in SVOX .................................................. Morphologische Analyse in SVOX .......................... Syntaxanalyse in SVOX ....................................... Analyse unbekannter Wortst¨ amme ......................... Bestimmung der phonetischen Umschrift ganzer W¨ orter Akzentuierung................................................... Phrasierung ...................................................... Generierung der phonologischen Darstellung.............. Weiterverarbeitung der phonologischen Darstellung .....
205 206 210 212 212 213 215 215 217 218 222 223 223 224 226 226 228 231 232 233
8 Sprachsynthese: Transkription Im Kapitel 7 ist dargelegt worden, dass es im Allgemeinen auch dem Menschen nicht m¨ oglich ist, die schriftsprachliche Oberfl¨ ache direkt in die lautsprachliche Oberfl¨ ache umzusetzen. Vielmehr geschieht dies unter Einsatz von sehr viel Wissen auf dem Umweg u andige ¨ ber die Tiefenstruktur, welche die vollst¨ linguistische Information umfasst. Diese Umsetzung ist mit der Abbildung 7.1 veranschaulicht worden. Zudem ist erl¨ autert worden, dass die Sprachsynthese in einen stimmunabh¨ angigen und einen stimmabh¨ angigen Teil aufgeteilt werden kann, wie dies Abbildung 7.2 zeigt. Die beiden Teile haben wir als Transkriptionsstufe und als phonoakustische Stufe bezeichnet. Der Eingabetext wird durch die Transkriptionsstufe in die phonologische Darstellung umgesetzt. Dies ist eine abstrakte, also immer noch stimmunabh¨ angige Beschreibung des zu erzeugenden Sprachsignals. Diese Beschreibung umfasst Information dar¨ uber, welche Laute nacheinander erzeugt werden m¨ ussen, welche Sprechsilben wie stark akzentuiert sein sollen, welche Sprechgruppen zu bilden sind und wie stark die Grenzen zwischen den Sprechgruppen sein m¨ ussen. In diesem Kapitel wird auf die Aufgaben und die Realisation der Transkriptionsstufe eingegangen. Im Abschnitt 8.1 werden kurz die linguistischen Grundlagen erl¨ autert, die f¨ ur die Transkription eine wesentliche Rolle spielen. Im Abschnitt 8.2 wird beschrieben, wie aus diesen Grundlagen das Konzept einer linguistisch motivierten automatischen Transkription hergeleitet werden kann. Abschnitt 8.3 behandelt die automatische morphologische und syntaktische Textanalyse und die dabei auftretenden Hauptprobleme. Dabei wird als formales Instrument der DCG-Ansatz verwendet. Schliesslich wird im Abschnitt 8.4 eine konkrete Realisierung der Transkriptionsstufe am Beispiel des Sprachsynthesesystems SVOX vorgestellt.
8.1 Linguistische Grundlagen f¨ ur die Transkription Die phonologische Darstellung ist zwar nicht das Sprachsignal selbst, aber sie ist im Sinne der Er¨ orterung in Abschnitt 7.3 der lautsprachlichen Oberfl¨ ache zuzuordnen. Da es im Allgemeinen nicht m¨ oglich ist, Text direkt in die phonologische Darstellung umzusetzen, muss der Text zuerst linguistisch analysiert werden. Aus den Resultaten dieser Analyse kann dann die phonologische Darstellung abgeleitet werden. Die Komponenten der phonologischen Darstellung sind die Lautfolge und die phonologische Charakterisierung der Prosodie, n¨ amlich die Akzentuierung und die Phrasierung. In den folgenden Abschnitten werden die linguistischen
8.1
206
8. Sprachsynthese: Transkription
Grundlagen beschrieben, die es erm¨ oglichen, diese Informationen aus einem Text zu gewinnen.
8.1.1 Ermitteln der Lautfolge Im Allgemeinen kann aus der Buchstabenfolge von W¨ ortern nicht direkt auf die entsprechende Lautfolge geschlossen werden. Weder stimmt die Anzahl der Buchstaben mit der Anzahl der Laute u ¨ berein, noch ist einem Buchstaben stets derselbe Laut zugeordnet. Erst mit zus¨ atzlichem Wissen u ¨ ber eine Sprache kann f¨ ur eine gegebene Buchstabenfolge die korrekte Lautfolge ermittelt werden. Um welches Wissen es sich im Falle der deutschen Sprache handelt, wird in den folgenden Abschnitten er¨ ortert. 8.1.1.1 Ausspracheregeln f¨ ur Deutsch Wie f¨ ur andere Sprachen gibt es auch f¨ ur das Deutsche Ausspracheregeln, die bestimmen, wie schriftsprachliche Symbolfolgen in lautsprachliche zu u ¨ bersetzen sind. Diese Aussage steht vermeintlich im Widerspruch zur Er¨ orterung im Abschnitt 7.3 bzw. 8.1. Dies ist jedoch nicht der Fall, weil sich die Ausspracheregeln im Deutschen nicht auf das Wort beziehen, sondern auf das Morphem und somit das Wort zuerst im Morphe zerlegt werden muss, wozu linguistisches Wissen notwendig ist. Wir wollen dies anhand der Aussprache von “st” illustrieren. In deutschen W¨ ortern wird die Buchstabenfolge “st” manchmal als [st] und manchmal als [St] gesprochen, wie die folgenden Beispiele zeigen:
basteln Last Lastwagen Krebstest
[bast@ln] [last] [lastva:g@n] [kre:pst Est]
staunen Strom Staumauer Stufe
[Sta
Diese Liste kann zur Annahme verleiten, dass die Ausspracheregel heissen k¨ onnte: “st” wird am Wortanfang als [St] gesprochen, sonst als [st]. Aufgrund der Beispiele “bestaunen” und “Staustufe”, die als [b@Sta
8.1
Linguistische Grundlagen f¨ ur die Transkription
Ball Ernst Bach stramm
[bal] [ Ernst] [bax] [Stram]
Besen Los Strom Stufe
[be:z@n] [lo:s] [Stro:m] [Stu:f@]
207
l¨ oste gestuft Strommast zukleben
[lø:st@] [g@Stu:ft] [Stro:mmast] [t<su:kle:b@n]
Die Beispiele in der dritten Spalte illustrieren wiederum, dass sich auch diese Regel nicht auf die W¨ orter, sondern auf die Morphe bezieht. So ist bei “l¨ oste” der Stamm “l¨ os” und das “¨ o” wird somit lang gesprochen. Gerade an dieser Regel l¨ asst sich auch zeigen, dass nat¨ urliche Sprachen nur teilweise regelhaft sind, also die G¨ ultigkeit von Regeln begrenzt ist, oder dass es Ausnahmen gibt. Ausnahmen zur obigen Regel sind “nach”, “Sprache”, “hoch”, “m¨ assig”1 etc. Aufgrund der Erl¨ auterungen zu den obigen Regeln ist klar, dass sich f¨ ur deutsche W¨ orter die Lautfolge nur dann ermitteln l¨ asst, wenn der morphologische Aufbau der W¨ orter bekannt ist. 8.1.1.2 Das Zerlegen von W¨ ortern in Morphe Das Morphem ist die kleinste bedeutungstragende Einheit der Sprache, wobei zwischen lexikalischen Morphemen (Stammmorphemen) und grammatischen Morphemen (Pr¨ afix-, Suffix-, und Flexions-Morphemen) unterschieden wird. Ein Morphem repr¨ asentiert ein oder mehrere Morphe. Die konkreten, zu einem Morphem geh¨ orenden Morphe werden Allomorphe dieses Morphems genannt. So sind z.B. “geb”, “gib”, “gab” und “g¨ ab” Allomorphe des Stammmorphems “geb”. Jedes Morph hat eine graphemische (schriftsprachliche) und eine phonetische (lautsprachliche) Realisierungsform. So ist beispielsweise das Wort “Telefonbeantworter” aus den Morphen “telefon”, “be”, “antwort” und “er” zusammengesetzt, mit den phonetischen Realisierungen [tele"fo:n], [b@], ["ŠantvOrt] ur das gesamte Wort die phonetische Realisierung und [@r], so dass sich f¨ ager der phonetischen Infor[tele"fo:nb@ŠantvOrt@r] ergibt. Die eigentlichen Tr¨ mation sind also die Morphe. Dies ist ein weiterer Hinweis darauf, dass eine morphologische Analyse eines Wortes notwendig ist, um dessen phonetische Realisierung zu ermitteln. Eine korrekte morphologische Zerlegung eines Wortes durchzuf¨ uhren ist jedoch nicht einfach, da viel linguistisches Wissen dazu ben¨ otigt wird. Einerseits m¨ ussen die Morphe einer Sprache bekannt sein, andererseits muss bekannt sein, wie Morphe zu W¨ ortern verbunden werden k¨ onnen. Zudem sind aufgrund des Inventars der Morphe und der morphologischen Regeln einer 1
Dieses Wort wird gem¨ ass Duden als “m¨ aßig” geschrieben. Es folgt dem Vokal also nur ein Konsonant. Erst in der schweizerischen Schreibweise wird dieses Wort zur Ausnahme.
208
8. Sprachsynthese: Transkription
Sprache oft mehrere Varianten der Zerlegung m¨ oglich, so dass die korrekte Zerlegung oft nur aus der syntaktischen und semantischen Struktur eines Textes ermittelt werden kann. Die folgenden Beispiele sollen diese Probleme veranschaulichen: Das Wort “elegant” ([ele"gant]) kann unter anderem wie folgt in Morphe zerlegt werden: “e”(Flexionsendung) + “leg”(Stamm) + “ant”(Suffix). Damit w¨ urde f¨ ur das Wort die Aussprache [@"le:gant] resultieren. Die morphologischen Regeln m¨ ussen eine solche Zerlegung, bei der am Anfang des Wortes eine Flexionsendung steht, ausschliessen. Das Nomen “Haustier” kann auf zwei Arten in g¨ ultige Morphe zerlegt werden, n¨ amlich: “haus” + “tier” → ["ha<usti:r] “hau” + “stier” → ["ha
→ ["ta:g@st El@r] “tag” + “es” + “teller” “tag” + “e” + “stell” + “er” → ["ta:g@St El@r] Beide Zerlegungen sind morphologisch korrekt und k¨ onnen auch syntaktisch nicht unterschieden werden (beides sind Nomen im Maskulinum, die auch in den verschiedenen Kasus und Numerus die gleiche Form haben). In solchen F¨ allen kann also nur mittels semantischen Wissens die richtige Variante bestimmt werden. Andere Beispiele f¨ ur solche mehrdeutigen Zerlegungen mit gleicher syntaktischer Funktion sind “Erblasser” ⇒ “erb” + “lass” + “er” | “er” + “blass” + “er” “Wachstube” ⇒ “wach” + “stube” | “wachs” + “tube” Wenn eine Person einen Text vorliest, setzt sie alles sprachliche Wissen automatisch und meist unbewusst ein, um die korrekte Aussprache zu erzeugen. So realisiert man in den oben aufgef¨ uhrten Beispielen kaum, dass verschiedene m¨ ogliche Zerlegungen existieren. Die vielen in einer Sprache vorkommenden Mehrdeutigkeiten fallen oft erst dann auf, wenn man eine automatische linguistische Analyse durchf¨ uhrt.
8.1
Linguistische Grundlagen f¨ ur die Transkription
209
8.1.1.3 Morpho-phonetische Varianten Grunds¨ atzlich ergibt sich die phonetische Realisierung eines Wortes, indem die phonetischen Realisierungen seiner Morphe zusammengesetzt werden. Dabei sind aber gewisse Regeln zu beachten. So werden im Deutschen zum Beispiel die Laute [b], [d], [g], [z] und [v] entstimmlicht, d.h. durch die entsprechenden stimmlosen Laute [p], [t], [k], [s] und [f] ersetzt, wenn sie am Ende eines Morphs und nicht vor einem Vokal stehen (sogenannte “Auslautverh¨ artung”). So ergeben sich beispielsweise f¨ ur verschiedene Formen des Wortes “Krug” die Lautfolgen:
→ ["kru:g] → ["kru:k] “krug” “krug” + “s” → ["kru:g] + [s] → ["kru:ks] “krug” + “es” → ["kru:g] + [@s] → ["kru:g@s] Solche Regeln sind aber relativ einfach und bereiten auch f¨ ur das automatische Bestimmen der Lautfolge kaum Probleme. 8.1.1.4 Aussprachevarianten ¨ Sprecher haben beim Produzieren der Lautfolge f¨ ur eine Ausserung gewisse Variationsm¨ oglichkeiten, die v.a. mit der Sprechgeschwindigkeit zusammenussigem Sprechen zwei gleiche oder sehr ¨ ahnliche h¨ angen.2 So werden bei fl¨ Konsonaten (z.B. der stimmhafte Plosivlaut [d] und der homorgane stimmlose Plosivlaut [t]) vielfach auf einen reduziert, insbesondere bei zusammengesetzten W¨ ortern, aber auch u ur sind: ¨ ber Wortgrenzen hinweg. Beispiele daf¨
Normaussprache:
߬ ussig gesprochen:
abbrechen Wandtafel Leuchtturm Schreibpapier
["apbr E¸c@n] ["vantta:f@l] ["lOy¸cttUrm] < ["Sra
["apr E¸c@n] ["vanta:f@l] ["lOy¸ctUrm] < ["Sra
die Stadt Thun die Stadt Z¨ urich Es rennt davon.
[di: Stat tu:n] [di: Stat < tsy:rI¸c] [e:s r Ent da"fo:n]
[di: Sta"tu:n]3 [di: Sta"< tsy:rI¸c] [e:s r Enta"fo:n]
2
Es gibt auch Aussprachevarianten, die durch mangelhafte Sprechgenauigkeit entstehen. Man spricht in diesem Zusammenhang auch von Verschleifen. Sie bewirkt beispielsweise, dass manche Laute stark an benachbarte Laute assimiliert werden, so dass z.B. ["a
Bei Lautreduktionen u ¨ ber Wortgrenzen hinweg stellt sich die Frage, wie die reduzierte Lautfolge aufgeschrieben werden soll, also ob der resultierende Laut vor oder nach der betreffenden Wortgrenze zu setzen ist. Wir l¨ osen das Problem hier so, dass wir bei derartigen Lautreduktionen die Wortgrenzen weglassen.
210
8. Sprachsynthese: Transkription
Solche Aussprachevarianten werden auch von professionellen Sprecher u ¨ berall dort verwendet, wo der weggelassene Laut nicht in einer besonders stark betonten Stellung steht, wie dies beispielsweise im folgenden Satz der Fall ist: “Die Stadt Z¨ urich ist schon mehr als 2000 Jahre alt, nicht der Kanton.” In weniger stark betonter Stellung muss die Reduktion jedoch stattfinden, weil die Sprache sonst gek¨ unstelt und schwerf¨ allig t¨ ont.
8.1.2 Ermitteln der Prosodie Da die phonologische Darstellung eine abstrakte Beschreibung aller wesentlichen Aspekte der Lautsprache enthalten soll, muss sie insbesondere auch Angaben zur Prosodie miteinschliessen, soweit diese Angaben die linguistische Funktion der Prosodie betreffen. Diese umfasst das Kennzeichnen, das Gewichten und das Gruppieren (vergl. Abschnitt 1.2.4). Gewichten heisst, wichtige W¨ orter oder Silben von weniger wichtigen zu unterscheiden, indem den W¨ ortern bzw. den Silben st¨ arkere oder schw¨ achere Akzente zugewiesen werden. Dies wird als Akzentuierung bezeichnet. W¨ orter, die zusammen eine Sprechgruppe bilden, werden von anderen Sprechgruppen durch mehr oder weniger starke Sprechgruppengrenzen getrennt. Da Sprechgruppen auch prosodische Phrasen genannt werden, wird diese Gruppierung als Phrasierung bezeichnet. 8.1.2.1 Akzentuierung Die Akzentuierung bestimmt die St¨ arke, mit der die einzelnen Silben einer ¨ ¨ Ausserung realisiert werden. In der phonologischen Darstellung einer Ausserung wird diese St¨ arke durch ein relatives Gewicht beschrieben (vergl. Beispiel im Abschnitt 7.4.1). ¨ Die Akzentuierung einer ganzen Ausserung fusst auf der Wortakzentuierung. Jedes Wort hat eine bestimmte Silbe, die den Wortakzent tr¨ agt. Dies ist die Silbe, die das Hauptgewicht bekommt, wenn das Wort einzeln gesprochen wird. In mehrsilbigen W¨ ortern und insbesondere in Komposita k¨ onnen neben dem Hauptakzent auch Nebenakzente vorkommen. F¨ ur die Akzentuierung von W¨ ortern wie “niemals” → ["ni:ma:ls], “sofort” → [zo"fOrt], “sogar” → [zo"ga:r], “Arbeit” → ["arba
8.1
Linguistische Grundlagen f¨ ur die Transkription
211
w¨ ahrend die Pr¨ afixe “auf”, “ab”, “zu”, “ein”, “bei”, “miss” usw. und die Suffixe “t¨ at”, “ell”, “ion”, “al”, “ieren” usw. meist den Worthauptakzent tragen. Pr¨ afixe und Suffixe k¨ onnen den Akzent nicht nur auf sich ziehen, sondern auch eine Akzentverschiebung bewirken, wie dies beispelsweise beim Wortpaar “Politik” → [po-li-"ti:k] und “Politiker” → [po-"li:-ti-k5] der Fall ist. Sehr regelm¨ assig akzentuiert sind im Deutschen die Komposita. Der Hauptakzent f¨ allt in den allermeisten F¨ allen auf die hauptbetonte Silbe des ersten Teils.4 Die hauptbetonten Silben der u ¨ brigen Teile tragen Nebenakzente (z.B. “Nebensache” → ["ne:-b@n-za-x@]). Die Satzakzentuierung bewirkt eine relative Gewichtung der Wortakzente. Grunds¨ atzlich wird die Satzakzentuierung durch semantische und pragmatische Aspekte bestimmt. Oft kann jedoch die “neutrale” Satzakzentuierung aus der syntaktischen Struktur des Satzes abgeleitet werden. Mit neutraler Akzentuierung ist hier diejenige Akzentuierung gemeint, die sich ergibt, wenn ein Satz ohne Textzusammenhang und ohne semantisches Vorwissen ge¨ aussert wird. Dann gilt beispielsweise, dass in der Regel in einer Nominalgruppe das letzte Nomen den st¨ arksten Akzent erh¨ alt und dass innerhalb eines Satzes die letzte Nominalgruppe nach dem Verb den Hauptakzent des ganzen Satzes tr¨ agt. In diesem Sinne ist z.B. die neutrale Akzentuierung des Satzes “Er f¨ ahrt nach Paris.” wie folgt: Er f¨ ahrt nach Paris. Vielfach wird jedoch aufgrund des gr¨ osseren, satz¨ ubergreifenden Zusammenhangs die st¨ arkste Betonung (der Fokus-Akzent) auf ein ganz bestimmtes Wort gesetzt. Beispielsweise ver¨ andert sich mit der Bedeutung des Satzes “Er f¨ ahrt nach Paris.” auch die Position der Hauptbetonung: ahrt nach Paris. Er f¨
(er, nicht seine Frau)
Er f¨ ahrt nach Paris.
(er fliegt nicht)
Er f¨ ahrt nach Paris.
(nicht etwa nach Rom)
Im Allgemeinen sind solche Zusammenh¨ ange, die eine spezielle Betonung erfordern, sehr schwierig zu eruieren. Insbesondere ist ein Sprachsynthesesystem, das universell einsetzbar sein soll, nicht in der Lage, die relevanten semantischen und pragmatischen Zusammenh¨ ange aus dem Text abzuleiten und die Akzente entsprechend zu setzen. Sprachsynthesesysteme versuchen deshalb, eine neutrale Akzentuierung aufgrund von lexikalischer und syntaktischer Information abzuleiten. Ist eine spezielle Betonung erforderlich, dann 4
Es gibt semantisch bedingte Ausnahmen. So wird in den Wetterprognosen in der Schweiz das Wort “Alpennordseite” stets als [Šalp@n"nOrtza
212
8. Sprachsynthese: Transkription
muss die entsprechende Infomation dem System explizit geliefert werden, z.B. als spezielle Markierung im Eingabetext. 8.1.2.2 Phrasierung Die Phrasierung unterteilt l¨ angere S¨ atze in Sprechgruppen. Sprechgruppengrenzen befinden sich in der Regel zwischen gr¨ osseren, schwach gekoppelten Satzbestandteilen. Ausserdem h¨ angt die Phrasierung von der Sprechgeschwindigkeit ab.5 Es ist deshalb im Allgemeinen sehr schwierig, die “korrekte” Phrasierung eines Satzes anzugeben. Viel einfacher ist es, unzul¨ assige Phrasierungen anzugeben. So kann z.B. f¨ ur den Satz “Heinrich besuchte gestern die Ausstellung im Kunstmuseum.” die Phrasierung
# Heinrich # besuchte gestern # die Ausstellung im Kunstmuseum. # als plausibel gelten, w¨ ahrend etwa die folgende Phrasierung bei normalem Sprechen nicht akzeptabel ist: # Heinrich besuchte # gestern die # Ausstellung im # Kunstmuseum. # Die Phrasierung h¨ angt im Wesentlichen von der syntaktischen Struktur eines Satzes ab, und eine plausible Phrasierung kann deshalb mittels linguistischer Regeln aus dieser Struktur abgeleitet werden. Dabei muss auch die Akzentuierung ber¨ ucksichtigt werden. So kann beispielsweise eine Folge unakzentuierter W¨ orter nicht alleine eine Phrase bilden.
8.2
8.2 Automatische Transkription 8.2.1 Der “direkte” Ansatz der Transkription In vielen heutigen Sprachsynthesesystemen ist der Tatsache, dass Text und Lautsprache (bzw. phonologische Darstellung) verschiedene Oberfl¨ achen mit einer gemeinsamen Tiefenstruktur sind, keine Bedeutung geschenkt worden. Vielmehr haben die Entwickler ohne lange Umschweife begonnen, S¨ atze von Regeln zu entwerfen, welche die Umsetzung von Buchstabenfolgen in Lautfolgen beschreiben, Silbenakzente in mehrsilbigen W¨ ortern bestimmen, die Akzentverteilung in S¨ atzen festlegen und S¨ atze in Sprechgruppen gliedern. In Kenntnis der Tatsache, dass es bei nat¨ urlichen Sprachen ohnehin zu beinah jeder denkbaren Regel Ausnahmen gibt, wird es nicht als Problem empfunden, dass die formulierten Regeln die Aufgabe nur mangelhaft l¨ osen. Es wird 5
Am einfachsten kann man die Phrasierung veranschaulichen, wenn man S¨ atze in sehr langsamem Diktatstil spricht, so dass bei allen Phrasengrenzen Pausen gemacht werden.
8.2
Automatische Transkription
213
einfach mit immer mehr Regeln und Ausnahmen versucht, das System zu verbessern. Bei Systemen mit hunderten oder sogar tausenden von Regeln ¨ verlieren die Entwickler jedoch bald einmal die Ubersicht. So kann das Einf¨ ugen einer neuen Regel zwar den gewollten Effekt haben, aber gleichzeitig neue, vorerst unbekannte Fehler produzieren, die ihrerseits wieder neue Regeln oder auch eine Behandlung von Ausnahmen erfordern. Die Konsequenz daraus ist, dass mit zunehmender Zahl der Regeln die Wahrscheinlichkeit steigt, dass neue Regeln das System insgesamt verschlechtern statt verbessern. Bei solchen Sprachsynthesesystemen ist es also nicht m¨ oglich, wesentliche Verbesserungen zu erzielen, ohne die grundlegenden Ans¨ atze zu ver¨ andern.
8.2.2 Der linguistische Ansatz der Transkription Eine Transkriptionsstufe, die nicht bloss Merkmale der graphemischen Oberfl¨ ache in solche der abstrakten lautsprachlichen (phonologischen) Oberfl¨ ache umsetzt, sondern unter Einsatz linguistischen Wissens eine Zwischenstruktur erzeugt, aus der dann die phonologische Darstellung abgeleitet werden kann, ist in Abbildung 7.3 dargestellt. Die Funktion der einzelnen Teile wird in den folgenden Abschnitten skizziert. Morphologische Analyse Die morphologische Analyse ermittelt f¨ ur jedes Wort einzeln den morphologischen Aufbau, die syntaktischen Merkmale und die phonetische Umschrift. Diese Analyse f¨ uhrt sehr oft nicht zu einem eindeutigen Resultat, sondern zu einer mehr oder weniger grossen Anzahl von L¨ osungen. Beispielsweise liefert die morphologische Analyse des Wortes “besuchte”, das entweder ein Vollverb oder ein Adjektiv (bzw. ein Partizip 2) sein kann, die in der Tabelle 8.1 aufgef¨ uhrten 19 L¨ osungen. Dar¨ uber, welche dieser L¨ osungen in einem konkreten Satz vorliegt, kann die morphologische Analyse nicht entscheiden. Es m¨ ussen deshalb alle an die Syntaxanalyse weitergereicht werden. Im Gegensatz zu den im Abschnitt 8.1 aufgef¨ uhrten Beispielen haben die unterschiedlichen Segmentierungen und die syntaktischen Formen hier keinen Einfluss auf die phonetische Umschrift des Wortes “besuchte”. Sie ist stets [b@"zu:xt@]. Die phonetische Umschrift von morphologisch analysierten W¨ ortern kann zwar weitgehend anhand eines relativ kompakten Satzes von Regeln abgeleitet werden (siehe [7] Seiten 60 ff.). Da zur morphologischen Analyse jedoch sowieso ein Morphlexikon eingesetzt werden muss, ist es zweckm¨ assig, wenn die Eintr¨ age in graphemischer und phonetischer Form vorhanden sind. Dann kann die phonetische Umschrift eines Wortes einfach aus den phonetischen Formen der betreffenden Morphe zusammengesetzt werden (vergl. 8.1.1.3).
214
8. Sprachsynthese: Transkription
Tabelle 8.1. Die morphologische Analyse des Wortes “besuchte” ergibt, zwar nur zwei verschiedene Segmentierungen, aber 19 syntaktische Formen.
Wortart
Zerlegung
Vollverb Vollverb Vollverb Vollverb Adj (P2) Adj (P2) Adj (P2) Adj (P2) Adj (P2) Adj (P2) Adj (P2) Adj (P2) Adj (P2) Adj (P2) Adj (P2) Adj (P2) Adj (P2) Adj (P2)
besuch+ te besuch+ te besuch+ te besuch+ te besuch+ t+ e besuch+ t+ e besuch+ t+ e besuch+ t+ e besuch+ t+ e besuch+ t+ e besuch+ t+ e besuch+ t+ e besuch+ t+ e besuch+ t+ e besuch+ t+ e besuch+ t+ e besuch+ t+ e besuch+ t+ e
syntaktische Merkmale
Beispiel
1. Pers. Sing. Pr¨ ateritum 3. Pers. Sing. Pr¨ ateritum 1. Pers. Sing. Konjunktiv 2 3. Pers. Sing. Konjunktiv 2 Nom. Sing. Mask. schwach Nom. Sing. Fem. schwach Nom. Sing. Neutr. schwach Akk. Sing. Fem. schwach Nom. Sing. Fem. stark Akk. Sing. Fem. stark Nom. Plur. Mask. stark Nom. Plur. Fem. stark Nom. Plur. Neutr. stark Akk. Plur. Mask. stark Akk. Plur. Fem. stark Akk. Plur. Neutr. stark Nom. Sing. Fem. gemischt Akk. Sing. Fem. gemischt
ich besuchte gestern er besuchte gestern ich besuchte ihn, wenn er besuchte ihn, wenn der besuchte Onkel ist die besuchte Tante ist das besuchte Kind ist f¨ ur die besuchte Tante bes. Verwandtschaft ist f¨ ur bes. Verwandtschaft besuchte Onkel sind besuchte Tanten sind besuchte Kinder sind f¨ ur besuchte Onkel f¨ ur besuchte Tanten f¨ ur besuchte Kinder eine besuchte Tante ist f¨ ur eine besuchte Tante
Syntaxanalyse Die Syntaxanalyse ermittelt aufgrund der Ausgaben der morphologischen Analyse die Satzstruktur. Ein Teil der nicht eindeutigen Ergebnisse der morphologischen Analyse wird dadurch eliminiert. Gleicherweise wie die morphologische Analyse liefert auch die syntaktische Analyse h¨ aufig nicht ein eindeutiges Ergebnis. Die Satzstruktur bildet die Grundlage f¨ ur die Akzentuierung und die Phrasierung. Es findet dabei aber nur eine Satzstruktur Verwendung, nicht eine Auswahl. Wie im Zusammenhang mit der Sprachsynthese vorgegangen wird, dass die syntaktische Analyse stets genau eine syntaktische Struktur liefert, wird in den Abschnitten 8.3.3.3 und 8.3.3.4 besprochen. Semantische Analyse Die Aufgabe der semantischen Analyse ist es, die Bedeutung des Satzes zu bestimmen, was vielfach nur aufgrund der Kenntnis des gr¨ osseren Zusammenhangs m¨ oglich ist und somit eine satz¨ ubergreifende Analyse verlangt. Dies ist jedoch f¨ ur ein Sprachsynthesesystem, welches beliebige S¨ atze verarbeiten soll, nicht realisierbar. Es wird hier deshalb nicht weiter darauf eingegangen.
8.3
Automatische morphosyntaktische Analyse
215
Akzentuierung und Phrasierung Wie in Abschnitt 8.1 gesagt wurde, ist das Setzen von Akzenten haupts¨ achlich mit der Bedeutung (Semantik) der Sprache verbunden. H¨ aufig stehen die syntaktische Struktur und die Bedeutung eines Satzes jedoch in einem gewissen Zusammenhang, so dass es oft m¨ oglich ist, aus dem syntaktischen Aufbau eines Satzes auf die Akzente zu schliessen. Noch st¨ arker an die syntaktische Struktur eines Satzes gebunden als die Akzentuierung ist die Phrasierung. Es ist deshalb m¨ oglich, aus dem Syntaxbaum eines Satzes nach gewissen Regeln eine plausible Phrasierung abzuleiten. Dabei gilt im Allgemeinen, dass eine Phrasengrenze zwischen zwei benachbarten W¨ ortern um so plausibler ist, je st¨ arker die W¨ orter in der syntaktischen Struktur voneinander getrennt sind.
8.3 Automatische morphosyntaktische Analyse Aus dem im letzten Abschnitt Gesagten wird klar, dass die automatische morphologische und syntaktische Analyse von Texten eine grosse Bedeutung f¨ ur die Transkription hat. Hier soll nun gezeigt werden, wie eine morphosyntaktische Analyse in DCG (Definite Clause Grammar) realisiert werden kann. Zur syntaktischen Analyse wurden bereits im Kapitel 6 Beispiele gegeben. Es geht im Folgenden also vor allem um die morphologische Analyse und um das Erzeugen der phonetischen Umschrift.
8.3.1 Morphologische Analyse mit DCG In Abschnitt 6.5 wurde gezeigt, wie DCG zur Analyse von S¨ atzen eingesetzt werden k¨ onnen. Dabei waren die W¨ orter als sogenannte Vollformen in einem Lexikon gegeben (vergl. Tabelle 6.3). Dies ist f¨ ur die nicht zerlegbaren W¨ orter wie Artikel, Pr¨ apositionen, Konjunktionen etc. sinnvoll. Bei flektierten Formen, wie z.B. Verben, bei denen aus einem Stamm viele Wortformen gebildet werden k¨ onnen, ist dies selbstverst¨ andlich keine elegante L¨ osung. Zudem gen¨ ugt zur Gewinnung der Ausspracheform eines Wortes, wie in Abschnitt 8.1 gezeigt wurde, die Kenntnis der Aussprache der einzelnen Morphe, aus denen ein Wort zusammengesetzt ist. Es ist daher sinnvoll, flektierbare W¨ orter (d.h. Verben, Nomen und Adjektive) morphologisch zu zerlegen. Diese Zerlegung basiert auf einem Lexikon von Morphen und einer Wortgrammatik, die wie eine Satzgrammatik in DCG geschrieben werden kann. Ein einfaches Beispiel einer solchen Wortgrammatik zeigt Tabelle 8.2. Die erste Regel dieser Grammatik spezifiziert, dass ein Verb V im einfachsten Fall aus einem Verbstamm VStamm und einer Konjugationsendung VEnd zusammengesetzt ist. Die zweite Regel f¨ ur V besagt, dass ein Verb zus¨ atzlich auch ein Verbpr¨ afix VPraef haben kann. Ein Nomen N kann nach dieser
8.3
216
8. Sprachsynthese: Transkription
Tabelle 8.2. Eine DCG f¨ ur deutsche W¨ orter
V(?num) V(?num)
→ VStamm(?vkl) VEnd(?vkl,?pers,?num) → VPraef VStamm(?vkl) VEnd(?vkl,?pers,?num)
N(?kas,?num,?gen) OptRepStamm OptRepStamm
→ OptRepStamm NStamm(?nkl,?gen) → NEend(?nkl,?kas,?num) → → NStamm(?nkl,?gen) OptRepStamm
VStamm(vk1) VStamm(vk2)
→ geh → wart
VPraef VPraef
→ be → er
VEnd(vk1,p1,sg) VEnd(vk1,p2,sg) VEnd(vk1,p3,sg) VEnd(vk1,p1,pl) VEnd(vk1,p2,pl) VEnd(vk1,p3,pl) VEnd(vk2,p1,sg) VEnd(vk2,p2,sg) VEnd(vk2,p3,sg) .. .
→ → → → → → → → →
e st t en t en e est et
Grammatik aus einem Nomenstamm NStamm und einer Nomenendung NEnd bestehen und davor optional einen repetierten Nomenstamm OptRepStamm. Mit dieser Regel werden also auch Nomen wie “Dampfschiff” oder “Haust¨ urschloss” beschrieben. F¨ ur Verben, Nomen und Adjektive gibt es verschiedene Konjugations- und Deklinationsreihen. Dieser Tatsache wird Rechnung getragen, indem diese Wortarten je ein Attribut f¨ ur die Konjugations- bzw. Deklinationsklasse verwenden. Der (letzte) Stamm und die Endung m¨ ussen in diesem Attribut u ur den Verbstamm “geh” die Konjugationsen¨ bereinstimmen. So ist z.B. f¨ dungsreihe im Pr¨ asens Indikativ “e”, “st”, “t”, “en”, “t”, “en”, w¨ ahrend f¨ ur den Stamm “wart” die Konjugationsreihe “e”, “est”, “et”, “en”, “et”, “en” gilt. Die lexikalischen Produktionsregeln definieren die n¨ otigen St¨ amme und Endungen, wobei jeder Endung auch syntaktische Attribute der ganzen Wortform zugeordnet sind (Numerus f¨ ur die Verben bzw. Kasus, Numerus und Genus f¨ ur die Nomen und die Adjektive). Die syntaktischen Attribute, werden auch den Nicht-Terminalesymbolen V, N und Adj zugeordnet.
8.3
Automatische morphosyntaktische Analyse
217
8.3.2 Generierung der phonetischen Umschrift in einer DCG Wie in Abschnitt 8.1.1.1 erl¨ autert, muss f¨ ur deutsche W¨ orter der morphologische Aufbau bekannt sein, damit die Ausspracheregeln eingesetzt werden k¨ onnen. Die Kenntnis des morphologischen Aufbaus ist somit eine notwendige Vorausetzung, aber nicht eine hinreichende, weil es viele Ausnahmen gibt. So werden “hoch” als [ho:x] und “sprach” als [Spra:x] gesprochen, obwohl in der Regel der Vokal vor “ch” kurz gesprochen wird. Zudem ist die Position des Hauptakzentes in mehrsilbigen deutschen W¨ ortern nicht regelhaft (vergl. Abschnitt 8.1.2.1). Statt Regeln anzuwenden und die zwangsl¨ aufigen Ausnahmen in einem Verzeichnis nachzuf¨ uhren, bietet sich hier (d.h. bei der Verwendung einer DCGbasierten morphologischen Analyse) eine andere L¨ osung an, n¨ amlich in jedem Lexikoneintrag nicht nur die graphemische, sondern auch die phonetische Repr¨ asentation aufzuf¨ uhren. F¨ ur die Wortgrammatik in Tabelle 8.2 sehen dann die lexikalischen Eintr¨ age wie in Tabelle 8.3 gezeigt aus. Die phonetische Umschrift von W¨ ortern bzw. S¨ atzen wird dann erzeugt, indem bei der morphologischen bzw. syntaktischen Analyse nicht nur die graphemischen Terminalsymbole in den Syntaxbaum eingetragen werden, sondern auch die phonetischen, wie dies in Abbildung 8.2 ersichtlich ist. Aus dem Syntaxbaum ergeben dann die phonetischen Terminalsymbole von links nach rechts gelesen die phonetische Umschrift f¨ ur das analysierte Wort bzw. f¨ ur den analysierten Satz.
Tabelle 8.3. DCG-Lexikoneintr¨ age f¨ ur Morphe mit graphemischer und phonetischer Repr¨ asentation
VStamm(vk1) VStamm(vk2)
→ geh ["ge:] → wart ["vart]
VPraef VPraef
→ be → er
[b@] [ Er]
VEnd(vk1,p1,sg) VEnd(vk1,p2,sg) VEnd(vk1,p3,sg) VEnd(vk1,p1,pl) VEnd(vk1,p2,pl) VEnd(vk1,p3,pl) VEnd(vk2,p1,sg) VEnd(vk2,p2,sg) VEnd(vk2,p3,sg) .. .
→ → → → → → → → →
[@ ] [st] [t] [@n] [t] [@n] [@ ] [@st] [@t]
e st t en t en e est et
218
8. Sprachsynthese: Transkription
8.3.3 Hauptprobleme der morphosyntaktischen Analyse In diesem Abschnitt werden die Hauptprobleme der automatischen morphologischen und syntaktischen Analyse diskutiert, und es wird gezeigt, wie diese im Rahmen der bisher verwendeten DCG-Analyse gel¨ ost werden k¨ onnen. Im Abschnitt 8.4 werden dann kurz die L¨ osungen vorgestellt, die im Sprachsynthesesystem SVOX gew¨ ahlt wurden. 8.3.3.1 Allomorphische Varianten Ein Morphem kann mehrere Allomorphe (oder allomorphische Varianten) umfassen. Dies ist im Deutschen beispielsweise bei den starken Verben der Fall (z.B. “geb”, “gib”, ‘gab”, “g¨ ab”) und bei Verben, die im Infinitiv auf “-eln” enden (z.B. “handel”/“handl” in den Formen “du handelst”/“ich handle”). Im Abschnitt 6.6.2 ist gezeigt worden, dass allomorphische Stammvarianten von der Art “handel”/“handl” mit Two-Level-Regeln elegant behandelt werden k¨ onnen. Dort ist auch erw¨ ahnt worden, dass es zwar m¨ oglich ist, solche Tilgungen lexikalisch zu l¨ osen (vergl. Abschnitt 6.6.1), d.h. indem diese Allomorphe ins Lexikon aufgenommen werden und mittels Attributen und Grammatikregeln daf¨ ur gesorgt wird, dass keine falschen Wortformen erzeugt werden k¨ onnen. F¨ ur die erw¨ ahnten F¨ alle ist jedoch die L¨ osung mit Two-Level-Regeln viel einfacher und somit zweckm¨ assiger.
Bei den starken Verben ist es nun aber umgekehrt. Die vielf¨ altigen Formen der St¨ amme lassen sich kaum mehr mit einem so einfachen Formalismus wie demjenigen der Two-Level-Regeln u ¨ bersichtlich beschreiben. Zur Illustration sind hier ein paar Beispiele unregelm¨ assiger Verbformen aufgef¨ uhrt: Infinitiv
Pr¨ asens
Imperativ
Pr¨ aterit. Konjun. 2 Partizip 2
(1.|2. Pers. Sing.) (Sing.|Plural)
geb+en brat+en d¨ urf+en erschall+en hau+en tun+ verlier+en
geb+e | gib+st brat+e | +est darf+ | +st erschall+e | +st hau+e | +st tu+e | +st verlier+e | +st
gib | geb+t brat+ | +et – erschall+ | +t hau+ | +t tu+ | +t verlier+ | +t
gab+ briet+ durf+te erscholl+ hieb+ tat+ verlor+
g¨ ab+e briet+e d¨ urf+te ersch¨ oll+e hieb+e t¨ at+e verl¨ or+e
ge+geb+en ge+brat+en ge+durf+t erschall+t ge+hau+en ge+tan+ verlor+en
Die formale Beschreibung der Morphologie der deutschen Verbformen ist eine sehr schwierige Aufgabe und u ¨ bersteigt den Rahmen dieser Vorlesung bei weitem. Wir wollen an dieser Stelle bloss skizzieren, in welche Richtung eine m¨ ogliche L¨ osung gehen kann.
8.3
Automatische morphosyntaktische Analyse
219
In der einfachen DCG-Wortgrammatik in Abschnitt 8.2 ist jedem Verbstamm eine Konjugationsklasse zugeordnet die festlegt, welche Endung in einem bestimmten syntaktischen Kontext (z.B. 1. Person Singular Pr¨ asens) stehen muss. Wie obige Beispiele zeigen, ¨ andert sich bei den unregelm¨ assigen Verben nicht nur die Endung, sondern auch der Stamm in Abh¨ angigkeit vom syntaktischen Kontext. Dies l¨ asst sich beschreiben, indem man die Verbst¨ amme und Verbendungen um ein zus¨ atzliches Attribut f¨ ur die Stammklasse erweitert. Die allomorphischen Verbstammvarianten eines Verbs k¨ onnen nun mit unterschiedlichen Stammklassen ins Lexikon eingetragen werden. Um zu spezifizieren, welche Verbstammvarianten mit welchen Verbendungen kombiniert werden k¨ onnen, m¨ ussen auch die Verbendungen mit diesem zus¨ atzlichen Attribut versehen werden. Die obigen Ausf¨ uhrungen zeigen, dass es nicht sinnvoll ist, die Morphologie einer Sprache wie Deutsch stur mit einem einzigen Formalismus zu beschreiben. Praxistaugliche Ans¨ atze zeichnen sich dadurch aus, dass verschiedene Aspekte der Sprache mit unterschiedlichen Formalismen behandelt werden, wobei selbstverst¨ andlich darauf zu achten ist, dass die Formalismen in einem Gesamtsystem vereinbar sind. 8.3.3.2 Nichtanalysierbare W¨ orter Ein grosses Problem stellen nichtanalysierbare W¨ orter dar. Dies kann vorkommen, weil Lexikoneintr¨ age fehlen, beispielsweise f¨ ur Eigennamen oder seltene Wortst¨ amme. Ein Sprachsynthesesystem muss f¨ ur jedes Wort eine Aussprache finden, weil es f¨ ur nicht analysierbare W¨ orter selbstverst¨ andlich nicht einfach keine Ausgabe machen darf. H¨ aufig wird eine auf Regeln basierende Graphem-zu-Phonem-Konversion eingesetzt. Dabei wird anhand von Regeln (engl. letter-to-sound rules) aus der orthographischen Schreibweise eine Ausspracheform ermittelt und dem Wort nach heuristischen Kriterien (z.B. aufgrund der Endung) eine syntaktische Kategorie zugeordnet. In einer morphologischen Analyse mit DCGs ist ein anderes Vorgehen sinnvoll, n¨ amlich die morphologische Analyse durch eine strukturelle Wortstammanalyse zu erweitern. Diese Erweiterung f¨ ugt sich nahtlos in die morphologische Analyse ein. Bei dieser Wortstammanalyse wird eine Stammgrammatik eingesetzt, welche die Struktur von germanischen und fremden St¨ ammen als Folge von Graphem- und Phonemgruppen beschreibt, und zwar in derselben Weise wie die regul¨ are morphologische Struktur von W¨ ortern beschrieben wird, n¨ amlich als DCG. Hier wird das Prinzip dieser Stammanalyse f¨ ur germanische St¨ amme erl¨ autert. Germanische St¨ amme sind in der Regel einsilbig und bestehen aus einer
220
8. Sprachsynthese: Transkription
Tabelle 8.4. DCG-Stammgrammatik f¨ ur unbekannte Verbst¨ amme
V(?num) V(?pers)
→ GermStamm VEend(?vkl,?pers) → VPraef GermStamm VEnd(?klasse,?pers)
GermStamm → IKons LVok FKons1 GermStamm → IKons KVok FKons2 IKons IKons
→ l [l] → kl [kl]
LVok KVok
→ e [e:] → e [ E]
FKons1 FKons2 .. .
→ b [b] → rn [rn]
initialen Konsonantengruppe, einer Vokalgruppe (dem Silbentr¨ ager) und einer finalen Konsonantengruppe. Um die Analyse f¨ ur unbekannte Verbst¨ amme durchzuf¨ uhren, kann die Wortgrammatik von Tabelle 8.2 durch die Stammgrammatik von Tabelle 8.4 erweitert werden. Mit dieser Erweiterung treten die morphologischen Regeln f¨ ur das Verb in zwei Formen auf, einmal mit einem lexikalisch gegebenen Verbstamm VStamm, und einmal in einer Version, bei welcher der Verbstamm durch einen allgemeinen germanischen Stamm GermStamm ersetzt ist. Die Struktur dieses allgemeinen Stamms ist durch zwei Regeln gegeben, in denen der Stamm als Sequenz einer initialen Konsonantengruppe IKons, einer Vokalgruppe LVok oder KVok und einer finalen Konsonantengruppe FKons1 oder FKons2 definiert wird. Die zwei Regeln unterscheiden, ob ein Vokal kurz und offen (KVok) oder lang und geschlossen (LVok) realisiert wird, abh¨ angig davon, ob die finale Konsonantengruppe nur einen Konsonanten (FKons1) oder mehrere Konsonanten (FKons2) umfasst. Zusammen mit den im Beispiel gegebenen Lexikonproduktionen k¨ onnen also sowohl die bekannten Verbst¨ amme “geh” und “wart” als auch die unbekannten, d.h. hier nicht im Lexikon enthaltenen Verbst¨ amme “leb”, “lern”, “kleb” analysiert werden. In all diesen F¨ allen wird auch gleichzeitig die richtige phonetische Umschrift generiert. Diese Stammgrammatik wird jedoch nur dann angewendet, wenn ein Wort bzw. ein Stamm nicht regul¨ ar morphologisch analysierbar ist. Wie dies in der Praxis gehandhabt werden kann, wird in Abschnitt 8.4.4 aufgezeigt.
8.3
Automatische morphosyntaktische Analyse
221
8.3.3.3 Nichtanalysierbare S¨ atze Es kann vorkommen, dass ein Satz syntaktisch nicht analysierbar ist, sei es, weil die Satzgrammatik unvollst¨ andig ist oder weil der zu analysierende Satz “nicht vollst¨ andig” ist (z.B. ein Satz wie “Und dann nichts wie weg!”, bei dem weder Subjekt noch Pr¨ adikat vorhanden sind). Wenn bei der Satzanalyse ein Chart-Parser mit Bottom-up-Verarbeitung eingesetzt wird, befinden sich nach der Analyse eines nicht analysierbaren Satzes alle gefundenen Konstituenten, mit denen nach einer geeigneten Strategie ein Ersatzsyntaxbaum so konstruiert werden kann, dass er f¨ ur die Akzentuierung und die Phrasierung einsetzbar ist. Eine derartige L¨ osung, jedoch in einer erweiterten Form, wird in Abschnitt 8.4.3 beschrieben. 8.3.3.4 Mehrdeutigkeiten Sowohl bei der morphologischen als auch bei der syntaktischen Analyse treten Mehrdeutigkeiten auf, d.h. die morphologischen und syntaktischen Regeln erlauben mehrere Ableitungen. Beispiele f¨ ur morphologische Mehrdeutigkeiten wurden im Abschnitt 8.1 gezeigt. Einige dieser Mehrdeutigkeiten k¨ onnen durch die syntaktische Analyse aufgel¨ ost werden. Es gibt jedoch auch Mehrdeutigkeiten auf syntaktischer Ebene, die nur unter Einbezug des Kontextes oder der Semantik aufgel¨ ost werden k¨ onnen. Zum Beispiel kann der Satz “Hans beobachtet den Mann mit dem Teleskop” auf zwei verschiedene Arten syntaktisch analysiert und interpretiert werden: In der ersten Lesart beobachtet Hans einen Mann, der ein Teleskop besitzt, und in der zweiten Lesart beobachtet Hans mit Hilfe eines Teleskops einen Mann. Die Mehrdeutigkeit besteht also darin, ob sich die Pr¨ apositionalgruppe “mit dem Teleskop” auf die Nominalgruppe “den Mann” oder auf das Verb “beobachtet” bezieht. Mehrdeutigkeiten kommen auch in nicht konstruierten S¨ atzen vor. Das folgende Beispiel hat 12 Lesarten: “Der Pilot hatte vor dem Absturz offenbar technische Probleme gemeldet und eine Notlandung versucht”. In diesen Lesarten u ¨ berlagern sich drei Arten von Mehrdeutigkeiten. So ist z.B. nicht klar, ob sich “vor dem Absturz” und “offenbar” auf das Adjektiv “technische” oder auf das Verb “gemeldet” bezieht. Weiter kann “gemeldet” als Verb in Partizipform betrachtet werden oder als Adjektiv (analog zu “Er begl¨ uckw¨ unschte ihn begeistert.”). Im zweiten Fall wird “hatte” im Sinne von “besass” interpretiert. Schliesslich kann die Koordination “und” verschiedene partielle und vollst¨ andige S¨ atze miteinander verkn¨ upfen. Auch in S¨ atzen von weniger als 20 W¨ ortern k¨ onnen auf diese Weise durchaus u ber hundert Lesarten verbor¨ gen sein, von denen ein menschlicher Leser im Allgemeinen nur die korrekte wahrnimmt.
222
8. Sprachsynthese: Transkription
In diesen Beispielen f¨ uhren die unterschiedlichen Ergebnisse der Syntaxanalyse zwar nicht zu unterschiedlichen Lautfolgen, aber zu Unterschieden in der Akzentuierung und Phrasierung. Eine automatische morphosyntaktische Analyse ist in der Lage, alle m¨ oglichen L¨ osungen zu produzieren, jedoch muss zur weiteren Verarbeitung eine einzige ausgew¨ ahlt werden. Im Abschnitt 8.4.1 wird gezeigt, wie dies im Sprachsynthesesystem SVOX gel¨ ost worden ist.
8.4
8.4 Realisation einer Transkriptionsstufe In diesem Abschnitt wird der Transkriptionsteil des an der ETH Z¨ urich entwickelten Sprachsynthesesystems SVOX n¨ aher vorgestellt. Dabei werden auch die in SVOX gew¨ ahlten L¨ osungen f¨ ur die im Abschnitt 8.3.3 dargestellten Probleme erl¨ autert. Die Transkriptionsstufe, die in Abbildung 8.1 schematisch dargestellt ist, arbeitet satzweise. Dabei wird jedes Wort zuerst morphologisch analysiert (Bestimmen von Wortart, syntaktischen Merkmalen und Aussprache). Anschliessend ermittelt die Syntaxanalyse aufgrund der Wortinformation und der Satzgrammatik die syntaktische Struktur des Satzes (Syntaxbaum). Daraus werden dann die Satzakzente und die Phrasengrenzen abgeleitet. Satz Satzgrammatik
Wort- & Stammgrammatik
Syntaxbaum
Syntaxanalyse
Morphologische Analyse
Vollformenlexikon
Morphophon. Transformat.
Akzentuierung Morphograph. Transformat.
Kons. & Vokalgruppenlexikon Phrasierung
Morphlexikon
Gener. phon. D.
Phonologische Darstellung Abbildung 8.1. Die Transkriptionsstufe des Sprachsynthesesystems SVOX
8.4
Realisation einer Transkriptionsstufe
223
Die morphologische und die syntaktische Analyse in SVOX basieren auf dem DCG-Formalismus und auf Chart-Parsing. Zus¨ atzlich werden f¨ ur die Behandlung regelhafter morphographemischer und morphophonetischer Varianten (siehe Abschnitte 8.4.2 und 8.4.5) Transduktoren eingesetzt. F¨ ur die Akzentuierung und Phrasierung wird in SVOX ein Regelsystem eingesetzt, das auf linguistischen Regeln aus der Literatur beruht (siehe Abschnitte 8.4.6 und 8.4.7).
8.4.1 DCG in SVOX In SVOX wird mit Wort- und Satzgrammatiken im DCG-Formalismus gearbeitet. Die Grammatiken entsprechen weitgehend denjenigen im Abschnitt 6.5. Die einzige wesentliche Erweiterung des in SVOX eingesetzten Grammatikformalismus ist die M¨ oglichkeit, jeder Produktionsregel einen Kostenwert zuzuordnen. Die “Gesamtkosten” einer bestimmten Ableitung werden berechnet, indem u otigten Regelanwendungen die Kostenwerte ¨ ber alle ben¨ der entsprechenden Produktionsregeln aufaddiert werden. Dies dient dazu, bei mehrdeutigen Analysen eines Satzes oder eines Wortes den Syntaxbaum mit den geringsten Gesamtkosten auszuw¨ ahlen. Daraus ergibt sich eine L¨ osung f¨ ur das in Abschnitt 8.3.3 beschriebene Problem der Mehrdeutigkeiten. Grunds¨ atzlich k¨ onnen die Kostenwerte der Produktionsregeln beim Entwickeln und Testen einer Grammatik manuell so eingestellt werden, dass immer die plausibelste L¨ osung ausgew¨ ahlt wird. F¨ ur gr¨ ossere Grammatiken ist dies jedoch sehr schwierig. Dann empfiehlt sich der Einsatz eines Verfahrens, mit dem die Kostenwerte mit Hilfe einer Sammlung von syntaktisch annotierten S¨ atzen automatisch optimiert werden k¨ onnen. Wir wollen auf solche Verfahren hier nicht weiter eingehen. 8.4.2 Morphologische Analyse in SVOX Die morphologische Analyse in SVOX basiert auf einer Wortgrammatik in DCG-Notation und auf einem Lexikon mit Eintr¨ agen in orthographischer und phonetischer Form. Die W¨ orter werden in einem ersten Schritt in alle m¨ oglichen Morphsequenzen zerlegt, wobei gleichzeitig Transduktoren zur Behandlung gewisser regul¨ arer morphographemischer Varianten zum Einsatz kommen, wie z.B. die Umwandlung des lexikalischen Stamms “handel” in die Oberfl¨ achenformen “handl” oder “handel”. Das Lexikon f¨ ur die morphologische Analyse ist deshalb zum Teil ein Morphemlexikon (d.h. die Eintr¨ age repr¨ asentieren ein Morphem, aus dem die Allomorphe zur Analysezeit mit einem Transduktor erzeugt werden), aber auch zum Teil ein Allomorphlexikon (z.B. gibt es f¨ ur die Stammvarianten “geb”, “gib”, “gab” und “g¨ ab” je einen separaten Eintrag).
224
8. Sprachsynthese: Transkription
Nach der morphologischen Segmentierung eines Wortes werden die so erzeugten Morphsequenzen durch die Wortgrammatik gepr¨ uft, und die nicht mit der Grammatik konformen Morphsequenzen werden verworfen. Zus¨ atzlich bestimmt die Wortanalyse die syntaktischen Merkmale, die mit der gegebenen Wortform vereinbar sind. Aus der Wortanalyse k¨ onnen mehrere L¨ osungen resultieren, die alle an die Syntaxanalyse weitergereicht werden. Im Morphlexikon ist jedes Morph in der graphemischen und in der phonetischen Form aufgef¨ uhrt. Deshalb ergibt sich aus einer morphologischen Zerlegung eines Wortes dessen Aussprache, indem die betreffenden Morphe in der phonetischen Form aneinandergef¨ ugt werden. Allerdings ist dies erst die Rohform der Aussprache, die noch verschiedenen Transformationen unterworfen wird (vergl. Abschnitt 8.4.5).
8.4.3 Syntaxanalyse in SVOX Die Syntaxanalyse in SVOX basiert auf den Resultaten der morphologischen Analyse f¨ ur flektierbare W¨ orter (haupts¨ achlich Nomen, Verben und Adjektive), auf einem Vollformenlexikon und einer DCG f¨ ur deutsche S¨ atze. Das Vollformenlexikon enth¨ alt Funktionsw¨ orter (nicht zerlegbare W¨ orter wie Artikel, Pr¨ apositionen, Pronomen etc.) sowie Ausnahmen, die von der Wortanalyse nicht richtig behandelt werden. Zur Satzanalyse wird ein Bottomup-Chart-Parser eingesetzt. Als Beispiel einer Analyse zeigt Abbildung 8.2 den Syntaxbaum, der von SVOX f¨ ur den Satz “Heinrich besuchte gestern die neue Ausstellung im Kunstmuseum.” ermittelt wird. Aus dem Syntaxbaum ist ersichtlich, dass “Heinrich” als Nominalgruppe (NG), “besuchte” als Vollverb (V), “gestern” als erg¨ anzende Angabe (AN) und “die neue Ausstellung im Kunstmuseum” wiederum als NG klassiert worden ist. Diese Konstituenten k¨ onnen entsprechend den Regeln der SVOX-Satzgrammatik zu einem g¨ ultigen Aussagesatz (Konstativsatz KS) zusammengefasst werden. Wie bei der morphologischen Analyse sind auch bei der Syntaxanalyse die Resultate oft nicht eindeutig, d.h. es werden mehrere Syntaxb¨ aume erzeugt, die sich teils hinsichtlich der Struktur und teils nur bez¨ uglich der Attribute von Nicht-Terminalsymbolen (Konstituenten) unterscheiden. F¨ ur den obigen Satz resultieren aus der Syntaxanalyse in SVOX 56 L¨ osungen. Zum Teil sind Unzul¨ anglichkeiten der Syntaxanalyse daf¨ ur verantwortlich. Es gibt jedoch auch echte Mehrdeutigkeiten, beispielsweise kann der Satz sowohl im Pr¨ ateritum als auch im Konjunktiv 2 gelesen werden und es kommen beide Nominalgruppen unter dem Satzknoten als Subjekt in Frage. Welche Struktur f¨ ur den Satz korrekt ist, k¨ onnte nur mit zus¨ atzlichem Wissen auf der semantischen Ebene entschieden werden. Wie in Abschnitt 8.4.1 erl¨ autert wurde, ist in den SVOX-Grammatiken jeder DCG-Regel ein Kostenwert zugeordnet. Die daraus ermittelbaren Ableitungs-
8.4
Realisation einer Transkriptionsstufe
225
S KS NG NGN N NST
NES
NSIMP $# $#
V VE
AVG
VSIMP te# t@#
ADV
VST
VS
NG
AN
ADVS
besuch+ gestern+ b@'zu:x+ 'gEst@rn+
NGM ARTB TERM $# $#
PG
ADJ
die AST 'di:
PRAEPC
NG
N
im '?Im
NGN
AE
neu+ e# 'nO_y+ @#
NS heinrich+ 'ha_inrIC+
NGN
BPR
NST
NES
NSIMP
$# $# NS
aus+ stellung+ '?a_us+ 'StElUN+
N NES
NST SIMPX SIMP ARBSTEM
NSIMP $# $# NS museum+ mu'ze:Um+
NS kunst+ 'kUnst+
Abbildung 8.2. Die von SVOX ermittelte syntaktische Struktur des Satzes: “Heinrich besuchte gestern die neue Ausstellung im Kunstmuseum.”
kosten k¨ onnen verwendet werden, um aus mehreren Analysem¨ oglichkeiten eines Satzes diejenige mit den kleinsten Ableitungskosten auszuw¨ ahlen. Wie bereits erw¨ ahnt, wird zur Syntaxanalyse in SVOX ein Bottom-up-ChartParser eingesetzt. Der Vorteil von Bottom-up-Parsing f¨ ur die Syntaxanalyse besteht darin, dass alle m¨ oglichen Konstituenten, die u ¨ berhaupt in einem Satz gefunden werden k¨ onnen, auch gefunden werden, auch wenn sich am Schluss kein vollst¨ andiger Satz ergibt. In diesem Fall werden gefundene Konstituenten k¨ unstlich zu einem Syntaxbaum f¨ ur den ganzen Satz zusammengestellt, indem eine Folge von Konstitutenten gesucht wird, die den ganzen Satz abdeckt. Gibt es mehrere solche Folgen, was praktisch immer der Fall ist, dann wird wiederum diejenige mit den geringsten Kosten gew¨ ahlt. Ein unvollst¨ andiger Satz wie “heute Abend keine Vorstellung” kann auf diese Weise korrekt als Folge von zwei Konstituenten analysiert werden, n¨ amlich einer Adverbialgruppe (“heute Abend”) und einer Nominalgruppe (“keine Vorstellung”). Diese beiden Konstituenten ergeben dann zusammen mit einem k¨ unstlichen Satzknoten einen Syntaxbaum. Ein so erhaltener k¨ unstlicher Syntaxbaum enth¨ alt dann immer noch wertvolle Information f¨ ur die Akzentuierung und Phrasierung. Dieses Vorgehen l¨ ost also das in Abschnitt 8.3.3 beschriebene Problem nicht analysierbarer S¨ atze.
226
8. Sprachsynthese: Transkription
8.4.4 Analyse unbekannter Wortst¨ amme Ein grosses Problem der automatischen morphologischen und syntaktischen Analyse in der Sprachsynthese sind W¨ orter, die nicht analysiert werden k¨ onnen, wie in Abschnitt 8.3.3 beschrieben. In der Praxis wird das Problem noch versch¨ arft, weil in den zu analysierenden Texten auch Tippfehler auftreten, die zu nicht existierenden W¨ ortern wie “morgenn” oder “motgen” f¨ uhren k¨ onnen. In SVOX wurde die Analyse unbekannter Wortst¨ amme in die normale morphologische Analyse eingebettet, indem die morphologische Grammatik um eine Stammgrammatik erweitert wurde. Das Prinzip dieser Erweiterung wurde im Abschnitt 8.3.3.2 dargestellt. Die Stammgrammatik in SVOX beschreibt die generelle Struktur germanischer (typischerweise einsilbiger) und fremder (typischerweise mehrsilbiger) St¨ amme. Die Stammgrammatik ist gen¨ ugend allgemein gehalten, sodass f¨ ur alle Buchstabenfolgen (d.h. auch f¨ ur falsch geschriebene W¨ orter) immer eine phonetische Umschrift gefunden wird. Die zus¨ atzliche Stammgrammatik bewirkt, dass der Parser auch f¨ ur W¨ orter, die mit der normalen morphologischen Analyse verarbeitbar w¨ aren, viele zus¨ atzliche Ableitungen findet. Grunds¨ atzlich w¨ are dies kein Problem, weil die Kosten einer Stammkonstituente stets viel h¨ oher sind, wenn der Stamm u ¨ ber die Stammgrammatik abgeleitet wird. Wenn der Stamm im Morphlexikon vorhanden ist, dann fallen nur die Kosten der entsprechenden lexikalischen ¨ Produktion an. Uber die Kosten w¨ urden die regul¨ ar morphologisch analysierten W¨ orter somit automatisch bevorzugt. Da die morphologische Analyse mit Stammgrammatik f¨ ur W¨ orter oft viele tausend L¨ osungen ergibt, wird in SVOX jedoch aus Effizienzgr¨ unden die Stammgrammatik in der Wortanalyse nur dann zugeschaltet, wenn ein Wort nicht regul¨ ar analysiert werden kann. 8.4.5 Bestimmung der phonetischen Umschrift ganzer W¨ orter Wie in Abschnitt 8.3.2 beschrieben wurde, ergibt sich die phonetische Umschrift ganzer W¨ orter im Wesentlichen durch Aneinanderf¨ ugen der Lautfolgen der einzelnen Morphe eines Wortes. Dabei m¨ ussen allerdings gewisse Transformationen durchgef¨ uhrt werden. In SVOX werden dazu haupts¨ achlich Transduktoren eingesetzt, also in endliche Automaten umgewandelte Two-LevelRegeln. Die Lautfolgen im Syntaxbaum von Abbildung 8.2 enthalten gewisse Zusatzsymbole, welche die Anwendung der Transduktoren steuern, indem sie in den Kontext der betreffenden Two-Level-Regeln einbezogen werden (vergl. Abschnitt 6.6.2.3). # markiert das Ende einer Flexionsendung, $ steht f¨ ur eine Leerendung, und + markiert das Ende von St¨ ammen. Diese Hilfssymbole werden nach der Anwendung der Transduktoren gel¨ oscht.
8.4
Realisation einer Transkriptionsstufe
227
Die beim Aneinanderf¨ ugen der Lautfolgen der einzelnen Morphe eines Wortes durchzuf¨ uhrenden Transformationen wurden im Abschnitt 8.1.1 beschrieben. Die folgenden Abschnitte zeigen, wie diese Transformationen in SVOX gehandhabt werden. 8.4.5.1 Bestimmung allomorphischer Varianten In SVOX werden gewisse Stammvarianten (Allomorphe) mit Transduktoren erzeugt. So wird z.B. die Verbform “handle” w¨ ahrend der morphologischen Analyse unter Anwendung der morphographemischen Transduktoren (Einf¨ ugen von “e”) in den Stamm “handel” und die Konjugationsendung “e” aufgespaltet mit den entsprechenden Lautfolgen ["hand@l+] und [@#]. Bei der Zusammensetzung der Lautfolgen muss daher der dem “e” entsprechende Laut [@] des Stammes wieder getilgt werden. Somit ergeben sich also die Lautfolur jede morphographemische Regel gen ["handl+] und [@#]. Generell gibt es f¨ dieser Art eine entsprechende morphophonetische Regel, die in umgekehrter Richtung angewendet wird. 8.4.5.2 Bestimmung von morphophonetischen Varianten Zu den morphophonetischen Variantenbildungen geh¨ ort im Deutschen haupts¨ achlich die Auslautverh¨ artung, bei der die Laute [b], [d], [g], [z] und [v] am Stammende in die entsprechenden stimmlosen Laute [p], [t], [k], [s] und [f] umgewandelt werden, falls nicht gleich anschliessend ein Vokal folgt. F¨ ur das Wort “Hundstage” ergibt sich aus der Zusammensetzung ["hUnd+], [s], ["ta:g+] artung des [d] von und [@#] also die Lautfolge ["hUnt+s"ta:g+@#], mit Verh¨ “Hund” zu [t], jedoch ohne Verh¨ artung des [g] von “tag”. 8.4.5.3 Bestimmung der Silbengrenzen Ein zus¨ atzlicher wichtiger Schritt in der Bestimmung der phonetischen Umschrift eines Wortes ist das Setzen der Sprechsilbengrenzen, da sich die nachfolgende Prosodiebestimmung auf die Silbe als Grundeinheit st¨ utzt. Jede Silbe besteht aus einem Silbenkern (jeder Vokal oder Diphthong ist ein Silbenkern6 ), und die Konsonanten zwischen den Silbenkernen werden nach gewissen Kriterien der linken oder rechten Silbe zugeschlagen. Die Positionen der Silbengrenzen sind im Deutschen zum Teil morphologisch bestimmt, zum Teil rein phonetisch: Prinzipiell steht vor jedem Stamm und jeder Vorsilbe eine Silbengrenze (was ein morphologisches Kriterium ist), w¨ ah6
Grunds¨ atzlich k¨ onnen auch silbische Konsonanten Silbentr¨ ager sein (siehe IPATabelle im Abschnitt A.1). Diese entstehen nur durch Schwa-Tilgung (z.B. ["ha:b@n] → ["ha:bn]), also durch eine umgangssprachliche Verschleifung. Weil in der Tran" skriptionsstufe die Standardaussprache behandelt wird, kommen jedoch silbische Konsonanten nicht vor.
228
8. Sprachsynthese: Transkription
rend die restlichen Silbengrenzen nach rein lautlichen Kriterien gesetzt werden (diese Regeln sind z.B. in [7] angegeben). F¨ ur das Beispiel “Hundstage” mit den Lautfolgen der Morphe ["hUnt+], [s], ["ta:g] und [@#] ergeben sich die Silbengrenzen in der phonetischen Umschrift des Wortes zu ["hUnts-"ta:-g@]. Hierbei ist die erste Silbengrenze vor “tage” morphologisch determiniert (Grenze vor Stammanfang), w¨ ahrend die zweite Grenze phonetischen Regeln folgt (ein einzelner Konsonant zwischen zwei Vokalen geh¨ ort zur rechtsstehenden Silbe, d.h. die Silbengrenze wird vor dem Konsonanten gesetzt). F¨ ur das Beispiel aus Abbildung 8.2 erzeugt SVOX nach all diesen Transformationsschritten die phonetische Umschrift: ["ha
8.4.6 Akzentuierung Die Akzentuierung wird in SVOX in zwei Schritten durchgef¨ uhrt. Zuerst wird die Wortakzentuierung ermittelt, also die Position der Haupt- und Nebenakzente in den einzelnen W¨ ortern. In einem zweiten Schritt werden die relativen St¨ arken der Wortakzente im Kontext des Satzes festgelegt. Daraus resultiert schliesslich die Satzakzentuierung. 8.4.6.1 Wortakzentuierung F¨ ur W¨ orter im Vollformenlexikon ist die Wortakzentuierung bereits in den zugeh¨ origen Lautfolgen im Lexikon gegeben. Bei morphologisch zerlegten W¨ ortern enthalten alle St¨ amme und betonbaren Pr¨ afixe (z.B. “auf”, “ein”) und Suffixe (z.B. “ei” wie in “Spielerei”) einen Akzent. F¨ ur die Akzentuierung des ganzen Wortes wird dann im Normalfall (ausser wenn betonte Suffixe vorkommen) der erste im Wort vorkommende Akzent zum Worthauptakzent, w¨ ahrend alle anderen Akzente zu Nebenakzenten werden. Im Beispiel von Abbildung 8.2 wird also f¨ ur das Wort “Kunstmuseum”, f¨ ur das die prim¨ are phonetische Umschrift ["kUnst-mu-"ze:-Um] hergeleitet wurde, nach der Wortakzentuierung die Umschrift ["kUnst-mu-ze:-Um] erzeugt, mit dem Hauptakzent auf dem ersten Stamm und einem Nebenakzent auf dem zweiten. F¨ ur das Wort “Ausstellung” ist die prim¨ are phonetische Umschrift ["Ša<us-"St E-lUN] und nach der Wortakzentuierung ["Ša<us-St E-lUN], wiederum mit Worthauptakzent auf dem ersten Bestandteil (dem Pr¨ afix “aus”) und einem Nebenakzent auf dem Nomenstamm (“stellung”). 8.4.6.2 Satzakzentuierung Die Satzakzentuierung in SVOX wurde in Anlehnung an die Arbeit von Kiparsky [14] konzipiert und beruht auf dem Prinzip der sogenannten Nuclear
8.4
Realisation einer Transkriptionsstufe
229
Stress Rule (NS-Regel). Dieses generelle Akzentuierungsprinzip besagt Folgendes: Wenn eine Teilkonstituente allein steht, tr¨ agt sie einen Hauptakzent (wird in der Linguistik als Akzent 1 geschrieben, d.h. als Prim¨ arakzent). Werden mehrere Teilkonstituenten zu einer u ¨ bergeordneten Konstituente zusammengefasst, bleibt der “Kern” (Nucleus) hauptbetont, w¨ ahrend die anderen Akzente abgeschw¨ acht werden (also h¨ ohere Zahlenwerte erhalten). Diese Regel wird in Bottom-up-Manier auf alle Konstituenten des Syntaxbaumes angewendet. Was als “Kern” zu betrachten ist, h¨ angt von der Art der Konstituente ab. In SVOX kann der hauptbetonte Teil (also der Kern) f¨ ur jeden Konstituententyp definiert werden. In vielen F¨ allen gilt jedoch das Prinzip der Endbetonung, d.h. innerhalb einer syntaktischen Konstituente ist die letzte akzentuierte Teilkonstituente die am st¨ arksten betonte. F¨ ur unseren Beispielsatz von Abbildung 8.2 werden zuerst unbetonbare von betonbaren Wortkategorien unterschieden, und auf jedes betonbare Wort wird ein Akzent 1 gesetzt. Dies ergibt das folgende initiale Satzakzentmuster: (Heinrich besuchte gestern ((die neue Ausstellung) (im Kunstmuseum))) 1 1 1 1 1 1 Die hierarchische Struktur des Syntaxbaumes wird hier mit Klammern angedeutet. Daraus ist ersichtlich, welche kleineren Konstituenten zu gr¨ osseren zusammengefasst sind. Nun wird die NS-Regel angewendet. Dazu wird von links nach recht nach einer geklammerten Gruppe von W¨ ortern gesucht. Eine solche Gruppe zeichnet sich dadurch aus, dass vor dem ersten Wort eine linke Klammer steht, nach dem letzten eine rechte und dazwischen keine Klammern vorhanden sind. Nach diesem Kriterium finden wir zuerst die Nominalgruppe “die neue Ausstellung”. Nominalgruppen sind generell endbetont, d.h. die Anwendung der NS-Regel bewirkt, dass der Akzent auf “Ausstellung” bleibt, w¨ ahrend der Akzent auf “neue” reduziert wird. Um zu markieren, dass die NS-Regel auf diese Nominalgruppe angewendet worden ist, werden die betreffenden Klammern gel¨ oscht. Dies ergibt (Heinrich besuchte gestern ( die neue Ausstellung (im Kunstmuseum))) 1 1 1 2 1 1 Die n¨ achste geklammerte Gruppe von W¨ ortern ist die Pr¨ apositionalgruppe “im Kunstmuseum”. Da sie nur ein akzentuierbares Wort enth¨ alt, wird sie durch die NS-Regel nicht ver¨ andert, aber die Klammern fallen weg. (Heinrich besuchte gestern ( die neue Ausstellung 1 1 1 2 1
im Kunstmuseum )) 1
230
8. Sprachsynthese: Transkription
Die n¨ achste geklammerte Wortgruppe ist nun“die neue Ausstellung im Kunstmuseum”, die gem¨ ass Syntaxbaum in Abbildung 8.2 wiederum eine Nominalgruppe bildet. Diese ist wie bereits erw¨ ahnt endbetont, d.h. der Akzent auf “Kunstmuseum” bleibt hauptbetont, w¨ ahrend die Akzente auf “neue” und “Ausstellung” reduziert werden. (Heinrich besuchte gestern ( die neue Ausstellung 1 1 1 3 2
im Kunstmuseum )) 1
Hier kommt nun noch die sogenannte Rhythmisierungsregel zur Anwendung. Diese Regel schreibt vor, dass die Akzentmuster 3 2 1 und 2 2 1 durch das Muster 2 3 1 zu ersetzen sind. Analog werden die Muster 1 2 3 und 1 2 2 durch 1 3 2 ersetzt. Die Anwendung dieser Rhythmisierungsregel ergibt somit (Heinrich besuchte gestern 1 1 1
die neue Ausstellung 2 3
im Kunstmuseum ) 1
Nun ist nur noch eine einzige geklammerte Wortgruppe vorhanden, die den ganzen Satz KS umfasst. Auch hier gilt wieder das Endbetonungsprinzip, und es ergibt sich die Akzentuierung Heinrich besuchte gestern 2 2 2
die neue Ausstellung 3 4
im Kunstmuseum 1
Da der urspr¨ ungliche Akzent 2 auf “neue” bereits schw¨ acher war als die 1Akzente auf “Heinrich”, “besuchte” und “gestern”, werden in diesem Schritt die Akzente von “neue” und “Ausstellung” auf 3 bzw. 4 reduziert, um die relativen Verh¨ altnisse zwischen “Ausstellung” und z.B. “Heinrich” beizubehalten. Mit diesem Schritt ist die Akzentuierung in diesem Beispiel bereits beendet. In SVOX wird nun zus¨ atzlich eine Regel angewendet, die den Akzent des Vollverbs noch um eine Stufe reduziert. Diese Zusatzregel tr¨ agt der Tatsache Rechnung, dass das Vollverb, falls es nicht den Hauptakzent 1 des ganzen Satzes tr¨ agt, generell nur schwach betont ist. Somit erhalten wir Heinrich besuchte gestern 2 3 2
die neue Ausstellung 3 4
im Kunstmuseum 1
Wie man leicht einsehen kann, werden f¨ ur l¨ angere und hoch strukturierte S¨ atze nach diesem Verfahren Akzente sehr vieler Stufen erzeugt. Dies ist jedoch kaum sinnvoll, da nur etwa vier bis f¨ unf St¨ arkegrade der Betonung einer Silbe geh¨ orm¨ assig unterschieden werden k¨ onnen. Die oben erhaltene Akzentuierung wird deshalb nach der Phrasierung nochmals modifiziert, wie im Abschnitt 8.4.8 gezeigt wird.
8.4
Realisation einer Transkriptionsstufe
231
8.4.7 Phrasierung Die Phrasierung in SVOX beruht auf einem Verfahren von Bierwisch [2]. Dabei werden kleinere syntaktische Konstituenten zu gr¨ osseren Einheiten, also Sprechgruppen oder Phrasen verschmolzen. Der Algorithmus st¨ utzt sich also auf die syntaktische Struktur eines Satzes, d.h. auf den Syntaxbaum. Das Phrasierungsverfahren von SVOX wird hier leicht vereinfacht wiedergegeben. Zuerst wird zwischen je zwei benachbarten W¨ ortern eines Satzes eine initiale orter Phrasengrenze #k gesetzt, wobei der Index k angibt, wie stark die W¨ syntaktisch gekoppelt sind. Dieser Index ermittelt sich aus der Stufe s des ersten gemeinsamen Elternknotens im Syntaxbaum zu k = s + 2, wobei der Satzknoten (z.B. der Knoten KS in Abbildung 8.2) auf Stufe 1 liegt und tiefere Knoten h¨ ohere Indizes haben. Je h¨ oher der Index, desto enger ist also die syntaktische Verbindung zwischen benachbarten W¨ ortern. Die Indizes 0 bis 2 sind reserviert: Mit dem Index 0 werden der Anfang und das Ende des Satzes markiert; der Index 1 wird an Orten gesetzt, wo ein Satzzeichen im Eingabesatz vorkommt; Index 2 wird vor dem finiten Verb ur unseren Beispielsatz ergibt sich also die folgende initiale Phragesetzt.7 F¨ sierung: #0 Heinrich #2 besuchte #3 gestern #3 die #5 neue #5 Ausstellung #4 im #5 Kunstmuseum #0 In einem ersten Schritt werden nun nicht akzentuierte W¨ orter mit benachbarten Phrasen verschmolzen. Dies geschieht durch L¨ oschung einer der Phrasengrenzen, die vor und nach dem betreffenden Wort gesetzt sind, und zwar wird die Grenze mit dem h¨ oheren Index gel¨ oscht. Dies bedeutet, dass nicht akzentuierte W¨ orter (sogenannte klitische W¨ orter) mit demjenigen benachbarten Wort zu einer Phrase verschmolzen werden, mit dem sie syntaktisch st¨ arker verbunden sind. Im Beispiel ergibt sich also durch L¨ oschung der rechten Phrasengrenzen nach den W¨ ortern “die” und “im” die Phrasierung #0 Heinrich #2 besuchte #3 gestern #3 die #0 neue #5 Ausstellung #4 im #0 Kunstmuseum #0 Im zweiten Schritt k¨ onnen weitere Phrasengrenzen gel¨ oscht werden, wenn sie die beiden folgenden Bedingungen erf¨ ullen: Erstens d¨ urfen die benachbarten Grenzen nicht einen h¨ oheren Index haben als die zu tilgende Grenze. Zweitens muss mindestens eine der beiden angrenzenden Phrasen noch nicht gross 7
Der Index 2 vor dem finiten Verb wird gesetzt, weil im Allgemeinen die Trennung zwischen dem Satzteil vor dem Verb und dem Verb st¨ arker ist als die Trennung nach dem Verb. In der Satzgrammatik von SVOX kommt dies jedoch in der syntaktischen Struktur nicht zum Ausdruck.
232
8. Sprachsynthese: Transkription
genug sein, um eine endg¨ ultige Phrase zu bilden. Um zu bestimmen, ob eine tempor¨ are Phrase eine endg¨ ultige Phrase bilden kann, wird ein Kriterium angewendet, das die Anzahl der Silben und die Anzahl der Akzente ber¨ ucksichtigt (Details dazu sind in [30] zu finden). In unserem Beispiel f¨ uhrt dies zu folgendem zyklischen Ablauf der Grenzentilgung (von h¨ oheren zu tieferen Indizes und von links nach rechts): #0 Heinrich #2 besuchte #3 gestern #3 die #0 neue #0 Ausstellung #4 im #0 Kunstmuseum #0 #0 Heinrich #2 besuchte #3 gestern #3 die #0 neue #0 Ausstellung #0 im #0 Kunstmuseum #0 #0 Heinrich #2 besuchte #0 gestern #3 die #0 neue #0 Ausstellung #0 im #0 Kunstmuseum #0 Die Grenze #3 zwischen “gestern” und “die” wird nicht mehr getilgt, weil “besuchte gestern” schon gross genug ist, um eine eigene Phrase zu bilden. Die Grenze #2 vor dem Verb wird auch nicht mehr getilgt, weil die Nachbargrenze auf der rechten Seite einen h¨ oheren Index hat.
8.4.8 Generierung der phonologischen Darstellung Nach der Phrasierung wird die Akzentuierung nochmals ver¨ andert, indem pro Phrase alle Akzente in ihrer St¨ arke wieder so angehoben werden, dass der st¨ arkste Akzent 1 wird (d.h. zum Phrasenhauptakzent wird), aber unter Beibehaltung der relativen St¨ arkeverh¨ altnisse. Falls mehrere gleichstarke Akzente zum Akzent 1 w¨ urden, wird nur der am weitesten rechts stehende zum Phasenhauptakzent. Durch diese Normierung der Akzente wird verhindert, dass die Akzentuierung eines sehr langen Satzes zu unsinnig vielen Akzentstufen f¨ uhrt. Ausserdem wird in jeder Phrase ein Phrasenhauptakzent bestimmt, der eine wichtige Rolle bei der Realisierung von Phrasenmelodiemustern spielt. F¨ ur unseren Beispielsatz erhalten wir also die folgenden endg¨ ultigen Phrasengrenzen und Satzakzentst¨ arken: Heinrich #2 besuchte gestern #3 die neue Ausstellung im Kunstmuseum 1 2 1 2 3 1 Die phonetische Umschrift, die Akzente und die Phrasengrenzen eines Satzes werden in SVOX zur phonologischen Darstellung zusammengefasst, die f¨ ur unser Beispiel wie folgt aussieht: (P) [1]ha
8.4
Realisation einer Transkriptionsstufe
233
Jeder Phrase wird ein Phrasentyp zugeordnet, wobei (P) f¨ ur eine progrediente, also weiterf¨ uhrende Phrase und (T) f¨ ur eine terminale, also satzabschliessende Phrase steht. Wortnebenakzente sind in der phonologischen Darstellung ebenfalls enthalten. Diese werden immer auf die St¨ arke 4 gesetzt.
8.4.9 Weiterverarbeitung der phonologischen Darstellung Bemerkenswert ist, dass die phonologische Darstellung, wie sie als Ausgabe der Transkription im Sprachsynthesesystem SVOX resultiert, viel Information, die nach der morphologischen und syntaktischen Analyse noch vorhanden war, nicht mehr enth¨ alt. Die phonologische Darstellung dr¨ uckt insbesondere keine hierarchische, sondern bloss eine sequentielle Ordnung aus. Die zus¨ atzlichen Informationen waren n¨ otig, um aus der hierarchischen Struktur die richtigen Schl¨ usse bez¨ uglich Lautfolge, Akzentuierung und Phrasierung zu ziehen. Sie werden jedoch nicht mehr gebraucht, um in der phonoakustischen Stufe die prosodischen Gr¨ ossen und schliesslich das Sprachsignal zu generieren, wie dies im Kapitel 9 gezeigt wird.
Kapitel 9 Sprachsynthese: Phonoakustische Stufe
9
9
9 9.1 9.1.1 9.1.2 9.1.3 9.2 9.2.1 9.2.2 9.2.3 9.3 9.3.1 9.3.2 9.3.3 9.3.4 9.3.5
Sprachsynthese: Phonoakustische Stufe Verfahren f¨ ur die Sprachsignalproduktion ................. Der artikulatorische Ansatz .................................. Der Signalmodellierungsansatz .............................. Der Verkettungsansatz ........................................ Sprachsynthese nach dem Verkettungsansatz ............ Wahl der Grundelemente ..................................... Ausschneiden von Grundelementen ......................... Ver¨ anderung der prosodischen Gr¨ ossen .................... Steuerung der Prosodie ....................................... Dauersteuerung ................................................. Grundfrequenzsteuerung ...................................... Intensit¨ atssteuerung ........................................... Umsetzung der prosodischen Gr¨ ossen auf die Laute..... Prosodische Ver¨ anderung der Grundelemente ............
237 238 239 242 243 244 245 247 255 256 266 276 278 278
9 Sprachsynthese: Phonoakustische Stufe In diesem Kapitel wird der stimmabh¨ angige Teil der Sprachsynthese besprochen, den wir als phonoakustische Stufe bezeichnen. Die Aufgabe der phonoakustischen Stufe ist, aus der stimmunabh¨ angigen phonologischen Darstellung, der Ausgabe der Transkriptionsstufe (vergl. Abschnitt 7.4) das konkrete Sprachsignal zu erzeugen. Wie ein nat¨ urliches Sprachsignal muss auch ein synthetisches einerseits eine Lautfolge beinhalten, andererseits muss es gewisse prosodische Eigenschaften aufweisen. Dementsprechend umfasst die phonoakustische Stufe einer Sprachsynthese im Wesentlichen zwei Komponenten: die Prosodiesteuerung und die Sprachsignalproduktion (siehe Abbildung 7.2). Die Prosodiesteuerung leitet haupts¨ achlich aus den Angaben u ¨ ber Akzente, Phrasengrenzen und Phrasentypen die prosodischen Gr¨ ossen ab und bestimmt f¨ ur jeden zu synthetisierenden Laut die Grundfrequenz, die Dauer und die Intensit¨ at. Die Sprachsignalproduktion kann schliesslich die Laute in der vorgeschriebenen Reihenfolge und mit der verlangten Grundfrequenz, Dauer und Intensit¨ at erzeugen: Es resultiert das synthetische Sprachsignal. F¨ ur die Realisierung dieser beiden Komponenten gibt es eine grosse Anzahl teilweise ganz unterschiedlicher Ans¨ atze und Methoden. Es ist nicht die Mei¨ nung, hier eine umfassende Ubersicht dar¨ uber zu geben. Es werden f¨ ur beide Teile der phonoakustischen Stufe aber je ein paar ausgew¨ ahlte Ans¨ atze vorgestellt. In den Abschnitten 9.1 und 9.2 geht es um Ans¨ atze f¨ ur die Sprachsignalproduktion, im Abschnitt 9.3 um die Prosodiesteuerung.
9.1 Verfahren f¨ ur die Sprachsignalproduktion Im Gegensatz zu einem Text, der aus einer Abfolge diskreter Symbole, den Schriftzeichen besteht, zeichnet sich ein Sprachsignal dadurch aus, dass sich die charakteristischen Merkmale eines Lautes kontinuierlich auf den Folgelaut hin ver¨ andern. Ein Sprachsynthesesystem, das einigermassen verst¨ andliche Sprache produzieren soll, muss diese wohl wichtigste Eigenschaft der Lautsprache ber¨ ucksichtigen, indem das Sprachsignal so produziert wird, dass ¨ keine abrupten Uberg¨ ange entstehen. Die zahlreichen Ans¨ atze, wie in Sprachsynthesesystemen Sprachsignale produziert werden, k¨ onnen in drei Gruppen eingeteilt werden. Diese werden im Folgenden zusammen mit ihren Vor- und Nachteilen skizziert.
9.1
238
9. Sprachsynthese: Phonoakustische Stufe
9.1.1 Der artikulatorische Ansatz Bei der artikulatorischen Sprachsynthese wird versucht, den menschlichen Sprechapparat und seine beim Sprechen beobachtbaren Bewegungsabl¨ aufe zu modellieren. Das Ziel dabei ist, ein so genaues Modell zu haben, dass das Ausgangssignal des Modells f¨ ur das menschliche Ohr einem nat¨ urlichen Sprachsignal m¨ oglichst gut entspricht. Ein solches artikulatorisches Modell und seine Parameter sind in Abbildung 9.1 dargestellt. In diesem Modell wird der Zungenr¨ ucken durch drei Parameter gesteuert, wobei X und Y die Stellung bzw. die langsamen Bewegungen in der sagittalen Ebene bestimmen und auch die Kieferstellung festlegen. Schnelle Bewegungen des Zungenr¨ uckens (z.B. dorsovelarer Verschluss bei den Lauten [g] und [k]) werden durch den Parameter K spezifiziert. Weiter bestimmen die Parameter ¨ W und L die Offnung und die Rundung der Lippen, B und R die Hebung und die Zur¨ uckkr¨ ummung der Zungenspitze, und N die Stellung des Gaumensegels (Nasalierung). Schliesslich wird durch drei Parameter die Art der ¨ der Glottis und damit ob die Anregung gesteuert: G bestimmt die Offnung Stimmlippen schwingend aneinanderschlagen und somit den Luftstrom periodisch unterbrechen oder ob die Luft kontinuierlich zwischen den sich nicht ber¨ uhrenden Stimmlippen hindurchstr¨ omt; Q steuert die Stimmlippenspanohre nung und damit die Schwingfrequenz, und PS gibt den Druck in der Luftr¨ an. Die Parameter eines artikulatorischen Modells werden aufgrund vieler Messungen zeitlicher Abl¨ aufe von Sprechvorg¨ angen ermittelt, z.B. mittels R¨ ontgenfilmen und im Vokaltrakt angebrachter Sensoren. Man kann sich leicht vorstellen, dass dies mit einem enormen Aufwand verbunden ist und zudem f¨ ur den untersuchten Sprecher erhebliche Unannehmlichkeiten mit sich bringt.
Abbildung 9.1. Artikulatorisches Modell der Spracherzeugung aus [6]
9.1
Verfahren f¨ ur die Sprachsignalproduktion
239
Angesichts der erreichten Sprachqualit¨ at, die trotz des grossen Aufwandes nicht wirklich u ¨ berzeugen kann, ist begreiflich, dass heutzutage kaum mehr mit rein artikulatorischen Ans¨ atzen gearbeitet wird. In neueren Arbeiten mit artikulatorischen Ans¨ atzen wird deshalb vielfach versucht, die dynamischen Parameter des Vokaltraktmodells aus dem Sprachsignal zu eruieren und so einen direkteren Zusammenhang zwischen Modell und Sprachsignal herzustellen. Dieser Weg scheint wesentlich erfolgversprechender zu sein, wie beispielsweise einschl¨ agige Arbeiten an der Universit¨ at G¨ ottingen gezeigt haben (siehe [9]). Der Erfolg wird hier daran gemessen, dass es gelungen ist, mit dem artikulatorischen Modell Laute und Laut¨ uberg¨ ange so zu erzeugen, dass kurze Sprachproben gut verst¨ andlich und einigermassen nat¨ urlich sind. Ein vollst¨ andiges Sprachsynthesesystem, das Text in Lautsprache umwandelt, existiert jedoch noch nicht.
9.1.2 Der Signalmodellierungsansatz Bei dieser Art der Sprachproduktion wird nicht versucht, den Sprechapparat zu modellieren, sondern direkt das Sprachsignal. Wie der Mensch das Sprachsignal produziert hat bei diesem Ansatz keine Bedeutung. Das Sprachproduktionsmodell ist ausschliesslich darauf ausgerichtet, ein Signal zu erzeugen, das vom menschlichen Ohr als Sprache wahrgenommen wird. Die erzeugten Signale m¨ ussen also hinsichtlich der geh¨ orm¨ assig relevanten Eigenschaften mit nat¨ urlichen Sprachsignalen gut u ¨ bereinstimmen. Die wichtigsten dieser Eigenschaften werden im n¨ achsten Abschnitt zusammengefasst. 9.1.2.1 Wichtige Eigenschaften von Sprachsignalen Zu den f¨ ur die Wahrnehmung wichtigsten Eigenschaften von Sprachsignalen geh¨ oren die folgenden:
Es gibt quasiperiodische und rauschartige Signalabschnitte und dazwi¨ schen k¨ onnen beliebige Ubergangsund Mischbereiche auftreten. Die relative Bandbreite von Sprachsignalen ist gross, d.h. Sprachsignale sind aus Komponenten zusammengesetzt, die frequenzm¨ assig u ¨ ber den gesamten H¨ orbereich verteilt sind. Im Spektrum des Sprachsignals zeigen sich die Resonanzen des Vokaltraktes durch teilweise ausgepr¨ agte lokale Energiemaxima. In der Phonetik heissen sie Formanten. Sprachsignale sind an gewissen Stellen quasistation¨ ar, aber nie exakt station¨ ar. Exakt station¨ are (periodische) Signale werden nicht als Sprache, sondern als technische Ger¨ ausche wahrgenommen, z.B. als Hupsignal. Die Charakteristik der Sprachsignale, d.h. ihre spektrale Zusammensetzung, a ¨ndert sich nicht abrupt. Eine Ausnahme bilden die Plosivlaute.
240
9. Sprachsynthese: Phonoakustische Stufe
Jeder Ansatz, mit dem einigermassen nat¨ urlich klingende Sprachsignale erzeugt werden sollen, muss all diesen Eigenschaften Rechnung tragen. 9.1.2.2 Sprachsignalerzeugung mit dem LPC-Ansatz Im Abschnitt 4.5 wurde gezeigt, wie aus einem Sprachsignal eine Sequenz von LPC-Parametern berechnet werden kann und wie aus diesen Parametern mit dem LPC-Sprachproduktionsmodell in Abbildung 4.15 das Sprachsignal rekonstruiert wird. Mit dem LPC-Sprachproduktionsmodell kann also grunds¨ atzlich jedes beliebige Sprachsignal erzeugt werden. Voraussetzung ist allerdings, dass es gelingt, die Parameter des Modells in Funktion der Zeit richtig zu steuern. Eine M¨ oglichkeit w¨ are z.B., f¨ ur jeden Laut einer Sprache ein typisches Muster in der Form eines Signalabschnittes zu nehmen und daraus die Parameter onnte dann des LPC-Modells zu bestimmen.1 Ein synthetisches Sprachsignal k¨ erzeugt werden, indem f¨ ur jeden Laut die Modellparameter dem Musterlaut entsprechend gesetzt und f¨ ur die gew¨ unschte Dauer des Lautes konstant gehalten werden. Ein so erzeugtes Sprachsignal verletzt jedoch zwei grundlegende Eigenschaften nat¨ urlicher Lautsprache (vergl. Abschnitt 9.1.2.1): Das Signal ist innerhalb eines Lautes exakt station¨ ar und an den Lautgrenzen ¨ andert sich seine spektrale Zusammensetzung abrupt. Ein solches Signal t¨ ont nicht wie Lautsprache und ist auch nicht verst¨ andlich. Eine nahe liegende Idee zur Verbesserung dieses Ansatzes ist, die abrupten ¨ ¨ Uberg¨ ange zu vermeiden, indem durch Interpolation ein sanfterer Ubergang von einem Laut zum n¨ achsten erzeugt und dadurch gleichzeitig auch die L¨ ange der station¨ aren Phasen verk¨ urzt wird. Dieses Vorgehen f¨ uhrt jedoch aus dem folgenden Grunde nicht zum Erfolg: Durch die Interpolation der Filterkoeffizienten entsteht f¨ ur jeden Interpolationszeitpunkt ein neues Filter, d.h. ¨ eine neue Ubertragungsfunktion. Die Sequenz dieser Filter beschreibt somit ¨ den Ubergang im Spektrum. Diese k¨ unstlichen Laut¨ uberg¨ ange unterscheiden sich aber stark von den nat¨ urlichen, die durch die Bewegung der Artikulatoren entstehen, und werden daher als sehr st¨ orend wahrgenommen. Der Versuch, das LPC-Modell auf diese Art zur Signalerzeugung in einem Sprachsynthesesystem einzusetzen, muss somit als untauglich betrachtet werden. Die LPC-Methode kann jedoch auf eine andere Art durchaus erfolgreich f¨ ur die Sprachsynthese eingesetzt werden, wie in Abschnitt 9.2.3.1 gezeigt wird. 1
Mit diesem Ansatz lassen sich selbstverst¨ andlich nur station¨ are Laute beschreiben. Zur Charakterisierung lautlicher Merkmale, die wesentlich auf einer zeitlichen Ver¨ anderung beruhen, wie dies beispielsweise bei den Plosivlauten der Fall ist, eignet sich dieser Ansatz deshalb prinzipiell nicht.
9.1
Verfahren f¨ ur die Sprachsignalproduktion
241
9.1.2.3 Sprachsignalerzeugung mit dem Formantansatz Ein oft zur Erzeugung von Sprachsignalen angewendetes Verfahren beruht auf dem Formantansatz (siehe Abbildung 9.2). Wie beim LPC-Ansatz sind auch hier die Tonerzeugung und die Klangformung getrennt. Der haupts¨ achliche Unterschied besteht in der Art des Filters, welches die Enveloppe des Sprachspektrums approximiert. Beim LPC-Ansatz wird daf¨ ur ein einziges Filter der Ordnung K (mit K = 12, . . . , 16, bei 8 kHz Abtastfrequenz) eingesetzt. Im Gegensatz dazu verwendet man beim Formantansatz pro zu modellierenden Formanten je ein Filter zweiter Ordnung. Meistens werden f¨ unf Formantfilter eingesetzt. Da f¨ ur die Lautwahrnehmung in erster Linie die Lage, die G¨ ute (relative Bandbreite) und die relative H¨ ohe der Formanten massgebend sind, besteht zwischen den Formantfiltern und den Lauten ein viel direkterer Zusammenhang. Insbesondere ist es mit den Formantfiltern viel eher m¨ oglich, nat¨ urlich klingende Laut¨ uberg¨ ange zu erzeugen, weil die Formanttransitionen in diesem Ansatz explizit spezifiziert werden k¨ onnen. An die Formanttransitionen m¨ ussen jedoch hohe Anforderungen gestellt werden, da die nat¨ urlichen Laut¨ uberg¨ ange recht genau zu approximieren sind. Andernfalls entstehen bei der synthetischen Sprache anstelle der nat¨ urlichen f1 b1 a1
Formantfilter F1
F0
Impulsgenerator
G
f2 b2 a2
Formantfilter F2
s(n)
Rauschgenerator
fk bk ak Formantfilter Fk Abbildung 9.2. Das Formant-Sprachproduktionsmodell enth¨ alt f¨ ur jeden Formanten Fj
ein Filter zweiter Ordnung, mit dessen Parameter die Frequenz fj , die Bandbreite bj und die Amplitude aj des betreffenden Formanten gesteuert werden.
242
9. Sprachsynthese: Phonoakustische Stufe
Laut¨ uberg¨ ange st¨ orende Kl¨ ange oder Ger¨ ausche, welche die Verst¨ andlichkeit stark beeintr¨ achtigen. Wie die Laute sind auch die Formanttransitionen der Laut¨ uberg¨ ange sprachund sprecherabh¨ angig, und es ist eine enorme Arbeit, alle f¨ ur einen Formantsynthetisator n¨ otigen Informationen bereitzustellen. Es ist somit auch nicht verwunderlich, dass es bis heute nur ganz wenigen Institutionen gelungen ist, mit dem Formantansatz ein Sprachsynthesesystem zu realisieren, das eine u at aufweist. ¨ berzeugende Sprachqualit¨
9.1.3 Der Verkettungsansatz Die Spracherzeugung nach dem Verkettungsansatz geht davon aus, dass Sprachsignale mit einer beliebigen Aussage durch Aneinanderf¨ ugen geeigneurlichen Sprachsignalen erzeugt werden ter Segmente2 aus vorhandenen, nat¨ k¨ onnen. Der Vorteil dieses Ansatzes ist, dass man auf der Ebene der Signalsegmente (also auf der segmentalen Ebene) automatisch absolut nat¨ urliche Sprache hat. Damit kann ein wesentlicher Teil der Probleme, die dem artikulatorischen Ansatz und auch dem Formantansatz inh¨ arent sind, vermieden werden. Auch Sprachsignale, die durch die Verkettung von Segmenten erzeugt werden, m¨ ussen den in Abschnitt 9.1.2.1 aufgef¨ uhrten Eigenschaften entsprechen. Daraus ergeben sich die folgenden Anforderungen an die Segmente und an die Verkettung: ¨ Weil Sprachsignale keine abrupten Uberg¨ ange aufweisen d¨ urfen, k¨ onnen sie logischerweise nicht durch Verkettung von Lautsegmenten erzeugt werden. Vielmehr m¨ ussen die zu verwendenden Segmente alle m¨ oglichen Laut¨ uberg¨ ange beinhalten. Als Grundelemente kommen somit Polyphone in Frage. Als Polyphon wird in der Sprachsynthese nach dem Verkettungsansatz ein Grundelement bezeichnet, das in der Mitte eines Lautes beginnt, sich u ¨ ber mehrere Laute erstreckt und in der Mitte eines Lautes endet. Ein h¨ aufig verwendeter Spezialfall ist das Diphon, an dem zwei Laute beteiligt sind. Es beginnt in der Mitte eines Lautes und endet in der Mitte des Folgelautes. 2 Um der Klarheit willen werden hier die Begriffe Segment, Abschnitt und Ausschnitt eines Sprachsignals wie folgt verwendet: Ein Segment ist ein St¨ uck eines Sprachsignals, das einen definierten linguistischen Bezug aufweist, z. B. ein Lautsegment oder Diphonsegment. Im Zusammenhang mit dem Verkettungsansatz bezeichnen wir Segmente auch als Grundelemente. Ein Abschnitt ist eine Signalverarbeitungseinheit, also ein in der Regel sehr kurzes Signalst¨ uck (einige ms), das gewissen Transformationen unterworfen wird, z.B. der Fouriertransformation. Ein Ausschnitt ist ein Signalst¨ uck, f¨ ur das keine dieser beiden Definitionen zutrifft; es kann beliebig lang sein.
9.2
Sprachsynthese nach dem Verkettungsansatz
243
Die Grundelemente m¨ ussen so aus den nat¨ urlichen Sprachsignalen extrahiert werden, dass bei der Verkettung an den Stossstellen m¨ oglichst geringe Diskontinuit¨ aten entstehen (d.h. die spektrale Enveloppen des Signals vor und nach einer Stossstelle m¨ ussen m¨ oglichst ¨ ahnlich sein). Bei der Verkettung m¨ ussen Stossstellen, die in stimmhaften Lauten liegen, so behandelt werden, dass die Periodizit¨ at u ¨ ber die Stossstelle hinweg erhalten bleibt. Schliesslich, und dies ist der wichtigste Punkt, ist bei der Verkettung die Tatsache zu ber¨ ucksichtigen, dass Laute je nach linguistischem Kontext prosodisch verschieden ausgepr¨ agt sind (vergl. Abschnitt 9.3). Der Verkettungsansatz ist der heutzutage am meisten angewendete Ansatz zur Produktion von Sprachsignalen. Der Grund liegt zur Hauptsache darin, dass mit diesem Ansatz die qualitativ besten Resultate erreicht werden. Dies ist jedoch nur dann der Fall, wenn die obigen Anforderungen auch tats¨ achlich erf¨ ullt werden. Einige der dabei zu l¨ osenden Probleme werden in den folgenden Abschnitten besprochen.
9.2 Sprachsynthese nach dem Verkettungsansatz F¨ ur die Sprachsynthese nach dem Verkettungsansatz m¨ ussen zuerst alle ben¨ otigten Grundelemente (Signalsegmente) zusammengestellt werden. Dabei kann nach zwei verschiedenen Strategien vorgegangen werden: a) Soll die Menge der Grundelemente m¨ oglichst kompakt sein, dann m¨ ussen kurze Grundelemente gew¨ ahlt und von jedem nur ein Exemplar in die Grundelementsammlung aufgenommen werden. Dies f¨ uhrt zur DiphonSynthese. Weil in einem Sprachsignal, das nat¨ urlich klingen soll, die Laute je nach ihrer Position im Wort und im Satz unterschiedliche Grundfrequenz, Dauer und Intensit¨ at haben m¨ ussen, von jedem Diphon in der Grundelementsammlung aber nur ein Exemplar vorhanden ist, m¨ ussen die Diphone vor dem Verketten prosodisch ver¨ andert werden. Dies beeintr¨ achtigt jedoch die Signalqualit¨ at. b) Um die Grundelemente vor dem Verketten nicht ver¨ andern zu m¨ ussen, kann man anstelle einer m¨ oglichst kompakten Sammlung von Grundelementen eine variantenreiche Sammlung anstreben. Dazu wird eine grosse Menge von Sprachsignalen verwendet, die von einer Person mit der gew¨ unschten Stimme und Sprechweise aufgenommen worden ist. Um einen Satz zu synthetisieren werden aus dieser Menge m¨ oglichst grosse Polyphonsegmente ausgesucht, die einerseits zusammen die Lautfolge des zu
9.2
244
9. Sprachsynthese: Phonoakustische Stufe
synthetisierenden Satzes ergeben und andererseits hinsichtlich der Prosodie gut passen. Diese Art der Sprachsignalerzeugung wird als Korpussynthese (engl. unit selection synthesis) bezeichnet. Mit Korpussynthese erreicht man eine bessere Qualit¨ at, weil die Grundelemente nicht ver¨ andert werden m¨ ussen und weil das erzeugte Signal weniger Grundelementstossstellen aufweist. Wieviele Stossstellen in einem zu synthetisierenden Satz entstehen ist selbstverst¨ andlich von der Zusammensetzung des Korpus abh¨ angig, was dazu f¨ uhrt, dass die Qualit¨ at und die Verst¨ andlichkeit von synthetisierten S¨ atzen stark variieren kann. Um mit der Korpussynthese gute Qualit¨ at zu erzielen, wird deshalb versucht, den Signalkorpus so auszulegen, dass darin m¨ oglichst viele der in einer Anwendung h¨ aufig zu synthetisierenden Wortfolgen im Korpus vorhanden sind. Es wird also ein anwendungsspezifischer Korpus verwendet. Selbstverst¨ andlich ist auch ein beliebiger Kompromiss zwischen diesen beiden Extremf¨ allen m¨ oglich, indem z.B. gewisse prosodische Varianten von Diphonen oder zus¨ atzlich zu den Diphonen auch einige gr¨ ossere Grundelemente in die Sammlung der Grundelemente aufgenommen werden. In der Praxis kommt man auch bei der Korpussynthese nicht ganz ohne prosodische Ver¨ anderung der Grundelemente aus. Beispielsweise m¨ ussen l¨ angere Elemente an den Stossstellen so ver¨ andert werden, dass keine st¨ orenden ¨ Uberg¨ ange entstehen. Noch schwerwiegender ist jedoch, dass insbesondere bei Eigennamen, die nicht im Korpus vorhanden sind, auf recht kurze Grundelemente zur¨ uckgegriffen werden muss, im Extremfall auf Diphone. Da h¨ aufig die eigentliche Information in diesen Eigennamen besteht, ist auch hier schlussendlich die Qualit¨ at der Synthese mit kurzen Grundelementen wichtig. Wir wollen uns deshalb im Folgenden auf die Verkettung von kurzen Grundelementen konzentrieren, also das Vorgehen nach Strategie a) besprechen. Welche Grundelemente f¨ ur eine solche Sprachsynthese n¨ otig sind und wie sie aus Sprachaufnahmen ausgeschnitten werden k¨ onnen wird in den Abschnitten 9.2.1 und 9.2.2 erl¨ autert.
9.2.1 Wahl der Grundelemente Im Abschnitt 7.5.2 wurde dargelegt, welche lautliche Differenzierung bei der Sprachsynthese n¨ otig und auch praktikabel ist. F¨ ur eine Sprachsynthese nach dem Verkettungsansatz sind bei der Wahl der Grundelemente zudem die folgenden Gesichtspunkte zu ber¨ ucksichtigen: Die Grundelemente m¨ ussen so gew¨ ahlt werden, dass jede in einer Sprache m¨ ogliche Lautfolge durch eine Folge von Grundelementen darstellbar ist.
9.2
Sprachsynthese nach dem Verkettungsansatz
245
Je feiner die lautliche Differenzierung ist und je gr¨ osser die Grundelemente sind, desto st¨ arker w¨ achst die Zahl der n¨ otigen Grundelemente. F¨ ur jedes Grundelement muss ein geeignetes Tr¨ agerwort oder ein Ausdruck vorhanden sein, aus dem das entsprechende Segment ausgeschnitten weratzlich k¨ onnen daf¨ ur normale W¨ orter oder Kunstw¨ orter den kann.3 Grunds¨ (sog. Logatome) verwendet werden. Kunstw¨ orter haben den Vorteil, dass sie in kompakter Form alle n¨ otigen Grundelemente umfassen, aber den Nachteil, dass ihre Aussprache manchmal unklar ist. Die Tr¨ agerw¨ orter m¨ ussen von einem Sprecher (bzw. einer Sprecherin, falls eine weibliche Stimme gew¨ unscht wird) gesprochen werden, der in der Lage ist, die Laute m¨ oglichst einheitlich zu artikulieren. Diese F¨ ahigkeit haben in der Regel nur professionelle Sprecher. Selbstverst¨ andlich m¨ ussen die Tr¨ agerw¨ orter in m¨ oglichst guter Qualit¨ at aufgezeichnet werden.
9.2.2 Ausschneiden von Grundelementen Nachdem die Tr¨ agerw¨ orter aufgezeichnet worden sind, k¨ onnen die den Grundelementen entsprechenden Sprachsignalst¨ ucke ausgeschnitten werden. Wie erw¨ ahnt sind dabei die Schnittpunkte in die betreffenden Lautmitten zu legen. Mit Lautmitte ist hier nicht die zeitliche Mitte gemeint. Die Schnittpunkte sollen so festgesetzt werden, dass bei der Sprachsynthese, also beim Verketten von Grundelementen an den Stossstellen m¨ oglichst geringe Diskontinuit¨ aten resultieren. Dies ist eine Optimierungsaufgabe, f¨ ur die man sich grunds¨ atzlich ein automatisches Verfahren vorstellen kann, welches die Diskontinuit¨ aten an allen potentiellen Stossstellen global minimiert. Dabei bilden je zwei Grundelemente, von denen das eine gleich auslautet wie das andere anlautet, eine potentielle Stossstelle, weil sie grunds¨ atzlich verkettet werden k¨ onnen. Da die Tr¨ agerw¨ orter jedoch so zusammengestellt werden, dass dasselbe Grundelement mehrmals vorkommt, und der Sprecher die Tr¨ agerw¨ orter bei der Aufnahme mehrmals spricht, m¨ ussen nicht nur die Schnittstellen bestimmt, sondern gleichzeitig auch das beste Exemplar jedes Grundelements ausgew¨ ahlt werden. Zudem ist es schwierig zu ermitteln, welche potentiellen Stossstellen in der sp¨ ateren Synthese u aufig, und wie dies bei der Opti¨ berhaupt auftreten und wie h¨ mierung zu ber¨ ucksichtigen w¨ are. Dies macht eine Automatisierung ziemlich unpraktikabel. 3
Naheliegenderweise k¨ onnen Grundelemente, die f¨ ur eine Verkettungssynthese eingesetzt werden sollen, nicht isoliert gesprochen werden, weil sie mit einem halben Laut beginnen und enden m¨ ussen (vergl. Abschnitt 9.1.3).
246
9. Sprachsynthese: Phonoakustische Stufe
Eine in der Praxis bew¨ ahrte Alternative geht davon aus, dass man unter Lautmitte die Stelle im Signal versteht, an welcher der Laut am ausgepr¨ agtesten vorhanden ist. Diese Stelle kann mit einem Lautzentroid bestimmt werden. Das Zentroid eines Lautes wird durch eine spektrale Mittelung u ¨ ber viele klar artikulierte Exemplare dieses Lautes gewonnen. Weil ein Lautzentroid von der Grundfrequenz des Sprachsignals unabh¨ angig sein soll, wird das Spektrum des Zentroids u attung ermittelt. ¨ ber die LPC-Analyse oder u ¨ ber eine cepstrale Gl¨ Wir wollen das Ausschneiden von Grundelementen mit einem Beispiel illustrieren: Aus dem Signal des Tr¨ agerwortes “ihnen” in Abbildung 9.3 soll das ur sind zuerst die Mitten der beiden Diphon [@n] ausgeschnitten werden. Daf¨ Laute [@] und [n] zu bestimmen. 4000 [Hz] 3000
2000
1000
0
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
[s]
0.8
0.6
0.7
[s]
0.8
1 0
0
0.1
30
0.36
[n]
0.2
31
0.3
32
0.38
[n]
[e]
[i:] −1
0.4
33
34
0.4
0.5
35
0.42
36
37
0.44
38
39
0.46
[s]
Abbildung 9.3. Spektrogramm und Sprachsignal des Wortes “ihnen”, gesprochen als ["i:n@n]. W¨ ahrend die Grenzen zwischen gewissen Lauten im Spektrogramm einigermassen erkennbar sind, sind die Lautmitten weder im Zeitsignal (auch nicht im vergr¨ osserten Teil mit den Analyseabschnitten 30 bis 39, der in etwa dem Laut [@] entspricht), noch im Spektrogramm ersichtlich.
9.2
Sprachsynthese nach dem Verkettungsansatz
247
Mit Hilfe des Zentroids kann in einem Sprachsignal die Mitte eines Lautes, also der Anfang oder das Ende eines Grundelementes, folgendermassen bestimmt werden: Das Sprachsignal wird abschnittweise in gegl¨ attete Spektren transformiert. Als Lautmitte wird der Zeitpunkt gew¨ ahlt, bei dem das Sprachsignal und das entsprechende Zentroid die geringste cepstrale Distanz (vergl. Abschnitt 4.6.8) aufweisen. In Abbildung 9.4 ist dargestellt, wie diese Definition angewendet wird, um die Mitte des Lautes [@] und damit den Anfangspunkt des Diphons [@n] festzulegen. Analog wird mit dem Zentroid des Lautes [n] der Endpunkt des Diphons [@n] bestimmt. Diese Methode ist selbstverst¨ andlich nur zum Festlegen derjenigen Grundelementgrenzen anwendbar, die in Laute mit einer quasistation¨ aren Phase fallen, also bei Vokalen, Nasalen, Frikativen und beim Laterallaut. Insbesondere bei den Plosiven (Verschlusslauten) ist es jedoch nicht m¨ oglich, mit Hilfe der Zentroid-Methode die Schnittpunkte zu bestimmen. Plosive weisen vor der Plosion eine Verschlussphase auf, die sich im Sprachsignal als kurze Pause ¨ aussert (vergl. Abbildung 9.9). Sie ist bei den stimmlosen Plosiven ausgepr¨ agter als bei den stimmhaften. Der Schnittpunkt wird bei Plosiven auf das Ende der pr¨ aplosiven Pause (bzw. auf den Anfang der Plosion) gesetzt.
9.2.3 Ver¨ anderung der prosodischen Gr¨ ossen Laute sind in Sprachsignalen je nach ihrer Position in Wort und Satz hinsichtlich der prosodischen Gr¨ ossen sehr verschieden. Die Grundfrequenz, die Dauer und die Intensit¨ at der Grundelemente m¨ ussen deshalb bei der Verkettung ver¨ andert werden. Die Prosodiesteuerung (vergl. Abschnitt 9.3) gibt die Sollwerte f¨ ur die Dauer, die Grundfrequenz und die Intensit¨ at vor. Allgemein ist deshalb erforderlich, dass diese prosodischen Gr¨ ossen voneinander unabh¨ angig variierbar sind. Selbstverst¨ andlich sollen aus dem prosodisch veranderten Sprachsignal noch immer dieselben Laute wahrgenommen werden, ¨ wie vor der Ver¨ anderung. Weil die Ver¨ anderung des Parameters Intensit¨ at in signalverarbeitungstechnischer Hinsicht trivial ist, wird im Folgenden nur auf die Dauer- und die Grundfrequenzver¨ anderung eingegangen. Im Abschnitt 1.3.2 ist die vereinfachende Sicht des menschlichen Sprechapparates als Schallquelle und Klangformung (das sogenannte Source-FilterModell) eingef¨ uhrt worden. Gem¨ ass dieser Sicht ist das von der Schallquelle ausgehende Signal neutral und der wahrgenommene Laut wird ausschliesslich durch die Klangformung des Vokaltraktes bestimmt. Daraus folgt, dass die Tonh¨ ohe der Schallquelle ver¨ andert werden kann und sich der wahrgenommene Laut trotzdem nicht ¨ andert, solange die Klangformung gleich bleibt.
248
9. Sprachsynthese: Phonoakustische Stufe
LPC−Spektren (Analyseabschnitte 20−50)
50 45 20 40
0 −20
35
−40 −60
30 0 25
1000 2000 3000
20
4000 5000 [dB] 20
LPC−Spektrum des Schwa−Zentroids
0 −20 −40 −60 0
1000
2000
3000
4000
[Hz]
ceptrale Distanzen 1.5 1 0.5 0
20
25
30 35 40 Analyseabschnitt
45
50
Abbildung 9.4. Die Distanzen zwischen den aus dem Sprachsignal von Abbildung 9.3
ermittelten LPC-Spektren (die Spektren des vergr¨ osserten Signalausschnittes sind dunkel eingetragen) und dem Schwa-Zentroid zeigen, dass der 33. Analyseabschnitt die kleinste cepstrale Distanz zum Schwa-Zentroid aufweist. Somit ist dort die Mitte des Lautes [@] im Wort ["i:n@n].
9.2
Sprachsynthese nach dem Verkettungsansatz
249
Eine gleichbleibende Klangformung bedeutet, dass die spektrale Enveloppe konstant bleibt, w¨ ahrend sich die Frequenz der Grundwelle und der Oberwellen ver¨ andern k¨ onnen. Die Frequenz der Oberwellen muss aber stets ein ganzzahliges Vielfaches der Frequenz der Grundwelle, also der Grundfrequenz F0 betragen. Aus der Forderung, dass durch eine Dauer- oder Grundfrequenzver¨ anderung der Grundelemente sich der subjektiv wahrgenommene Klang der beteiligten Laute nicht ver¨ andern soll, k¨ onnen f¨ ur ein Verfahren zur Dauer- und/oder Grundfrequenzver¨ anderung von Sprachsignalsegmenten die folgenden Anforderungen formuliert werden: a) F¨ ur stimmhafte Signalsegmente m¨ ussen die Segmentdauer und die Grundfrequenz so ver¨ andert werden k¨ onnen, dass die jeweils andere Gr¨ osse und ebenso die spektrale Enveloppe erhalten bleiben. b) F¨ ur stimmlose Signalsegmente muss die Segmentdauer bei konstanter spektraler Enveloppe variiert werden k¨ onnen. Zudem muss der rauschartige Charakter des Signals erhalten bleiben. In den folgenden Abschnitten werden drei Verfahren besprochen, mit denen sich die prosodischen Gr¨ ossen von Sprachsignalsegmenten in diesem Sinne ver¨ andern lassen. 9.2.3.1 Dauer- und F0 -Ver¨ anderung mittels LPC-Analyse-Synthese Im Abschnitt 4.5.2 wurde gezeigt, wie bei der LPC-Analyse ein Sprachsignalabschnitt in ein Klangformungsfilter H(z) und ein neutrales Anregungssignal e˜(n), welches den Pr¨adiktionsfehler e(n) approximiert, zerlegt werden kann. asst sich mit nur zwei Gr¨ ossen beschreiben, n¨ amDas Anregungssignal e˜(n) l¨ lich mit der Wurzel aus der Leistung des Pr¨ adiktionsfehlers e(n), die mit G bezeichnet wird, und mit der Periodenl¨ ange T0 (siehe Gleichungen 39 und 40). Bei der Rekonstruktion des Sprachsignals aus den LPC-Parametern k¨ onnen G und T0 variiert werden, ohne dass sich die spektrale Enveloppe, die durch H(z) bestimmt wird, ver¨andert. Zudem ist bei der Rekonstruktion die Zahl der erzeugten Abtastwerte und damit die Dauer des rekonstruierten Signalabschnittes frei w¨ ahlbar. Bei der Verkettungssynthese kann somit die LPC-Analyse-Synthese wie folgt eingesetzt werden, um die prosodischen Gr¨ ossen von Grundelementen unabh¨ angig voneinander zu ver¨ andern: Aus jedem Signalabschnitt der L¨ ange Lw (Analysefensterl¨ange ca. 25 – 30 ms) und der Verschiebung von Ls (typisch sind 5 – 10 ms) werden die Pr¨ adiktorkoeffizienten a1 , . . . , aK , der Verst¨ arkungsfaktor G und die Periode T0 ermittelt. Bei der Rekonstruktion des Signals aus den LPC-Parametern k¨ onnen alle prosodischen Gr¨ ossen einzeln ver¨ andert werden, n¨ amlich
250 u(t)
9. Sprachsynthese: Phonoakustische Stufe Grundelementstossstelle
t Syntheseintervall
Abbildung 9.5. Die Impulsabst¨ ande des Anregungssignals u(t) f¨ ur die LPC-Synthese d¨ ur-
fen weder durch die Grenzen der Synthese-Intervalle noch durch die Grundelementstossstellen gest¨ ort werden. Der erste Impuls darf in einem Synthese-Intervall erst dann erscheinen, wenn die letzte Periode des vorhergehenden Synthese-Intervalls beendet ist.
die Intensit¨ at u arkungsfaktor G, ¨ ber den Verst¨ die Grundfrequenz F0 = 1/T0 u ¨ ber den Kehrwert des Impulsabstandes (ist nur bei stimmhaften Signalabschnitten m¨ oglich bzw. n¨ otig) und die Dauer u ange des pro LPC-Parametersatz erzeugten Signal¨ ber die L¨ abschnittes, die l¨ anger oder k¨ urzer sein kann als Ls und damit eine Verl¨ angerung oder Verk¨ urzung des rekonstruierten Signals bewirkt. Weil dabei die Pr¨ adiktorkoeffizienten nicht ver¨ andert werden, bleiben die spektrale Enveloppe des Signals und damit auch seine klanglichen Eigenschaften erhalten. Insbesondere werden die f¨ ur die Lautwahrnehmung massgebenden Formanten nicht verschoben. Bei der Verkettung der Grundelemente muss darauf geachtet werden, dass auch die letzte der Forderungen aus Abschnitt 9.1.3 noch erf¨ ullt wird: Die Signalperiode darf durch die Stossstellen nicht gest¨ ort werden. Deshalb m¨ ussen sowohl u ¨ ber die Analyseabschnittsgrenzen als auch u ¨ ber die Grundelementstossstellen hinweg die Impulsabst¨ ande des Anregungssignals der geforderten Periodendauer entsprechen, wie dies in Abbildung 9.5 dargestellt ist. Obwohl sich das Problem der prosodischen Ver¨ anderung von Sprachsignalsegmenten mit der LPC-Analyse-Synthese grunds¨ atzlich elegant l¨ osen l¨ asst, wird dieser Weg in der Verkettungssynthese heute nur noch selten eingeschlagen. Der Grund liegt darin, dass die LPC-Analyse-Synthese die Signalqualit¨ at doch erheblich beeintr¨ achtigt und damit den Hauptvorteil des Verkettungsansatzes (die perfekte Qualit¨ at und Nat¨ urlichkeit der Sprachsegmente) wieder zunichte macht. 9.2.3.2 Dauer- und F0 -Ver¨ anderung mittels Fourier-Analyse-Synthese Eine weitere M¨ oglichkeit zur prosodischen Ver¨ anderung von Sprachsegmenten besteht darin, die prosodischen Gr¨ ossen im Frequenzbereich zu manipulieren. Die Ver¨ anderung der Grundfrequenz eines stimmhaften Lautes ist ja nichts
9.2
Sprachsynthese nach dem Verkettungsansatz
251
anderes als eine Skalierung der harmonischen Signalkomponenten auf der Frequenzachse unter Beibehaltung der spektralen Enveloppe. Bei der R¨ ucktransformation in den Zeitbereich kann mit Hilfe der Fouriersynthese, also durch Zusammensetzen eines Signals aus Sinuskomponenten, ein Signalabschnitt beliebiger L¨ ange generiert werden. Das Prinzip der Fourier-Analyse-Synthese ist im Anhang B.1 erl¨ autert. Grunds¨ atzlich ist dieses Vorgehen recht einfach, aber es setzt die L¨ osung der folgenden grundlegenden Probleme voraus: 1. Wie kann die zeitabh¨ angige spektrale Zusammensetzung (wir nennen sie im Folgenden “das wirkliche Spektrum”) eines nicht station¨ aren oder nur quasistation¨ aren Sprachsignals ermittelt werden? Im Gegensatz zu den meisten bisher betrachteten F¨ allen ist hier auch die Phase relevant. 2. Wie sieht die f¨ ur die akustische Wahrnehmung der Laute massgebliche spektrale Enveloppe aus? Wie l¨ asst sie sich ermitteln? 3. Wie m¨ ussen Grundfrequenzmodifikationen in diesem wirklichen Spektrum vorgenommen werden? 4. Wie kann aus dem (modifizierten) wirklichen Spektrum ein Sprachsignal hoher Qualit¨ at zur¨ uckgewonnen werden? Dass bereits der erste Punkt u asst sich ¨ berhaupt kein triviales Problem ist, l¨ anhand der Abbildung 9.6 illustrieren. Diese zeigt eine Sch¨ atzung der zeitabh¨ angigen spektralen Zusammensetzung des Sprachsignals. Die Frequenzkomponenten sind alle 5 ms anhand einer hochaufl¨ osenden Fouriertransformation ermittelt worden. Weil der dargestellte Ausschnitt des Signals stimmhaft ist, insbesondere im mittleren Teil, sollten im Spektrogramm die harmonischen Frequenzkomponenten ersichtlich sein. Es entsprechen jedoch nur die Grundwelle und die zwei ersten Oberwellen einigermassen dem, was aufgrund des Signals zu erwarten w¨ are. Die weiteren Frequenzkomponenten scheinen entweder ungenau (bis etwa 1500 Hz) oder sogar v¨ ollig falsch zu sein. Aus dem Sprachsignal ist klar ersichtlich, dass die Grundfrequenz sinkt. Die erste und die zweite Oberwelle zeigen dies tats¨ achlich an, die Oberwellen u ¨ ber 1500 Hz jedoch nicht. Wenn nun diese spektrale Zusammensetzung des Sprachsignals gebraucht wird, um mittels Fouriersynthese (also durch Addition von Sinussignalen) beispielsweise ein verl¨ angertes Signal zu erzeugen, dann wird das resultierende Signal nicht periodisch sein, weil es nicht aus harmonischen Komponenten zusammengesetzt ist. Selbstverst¨ andlich wird somit auch nicht ein klares, orungen, die stimmhaftes Signal zu h¨ oren sein, sondern eines mit starken St¨ z.B. als Kratzen oder Rauschen wahrgenommen werden.
252
9. Sprachsynthese: Phonoakustische Stufe 1
0
−1
0
0.02
0.04
0.06
0.08
[s]
0.1
0
0.02
0.04
0.06
0.08
[s]
0.1
4000 [Hz] 3500
3000
2500
2000
1500
1000
500
0
Abbildung 9.6. Darstellung der spektralen Zusammensetzung eines Sprachsignals in Funktion der Zeit. F¨ ur jeden Ls = 5 ms langen Abschnitt des Sprachsignals ist ermittelt worden, aus welchen Sinuskomponenten er sich zusammensetzt. In dieser Darstellung ist nebst der Frequenz und der Amplitude auch die Phase der Sinuskomponenten ersichtlich (vergl. auch Abschnitt 3.5).
Im Anhang B wird gezeigt, wie f¨ ur ein Sprachsignal eine gute Sch¨ atzung des wirklichen zeitabh¨ angigen Spektrums (d.h. eine Folge von Kurzzeitspektren) ermittelt werden kann und wie daraus durch abschnittweise Fouriersynthese wiederum ein Sprachsignal generiert wird, das sich geh¨ orm¨ assig kaum vom Originalsignal unterscheidet. Wie in dieser Folge von Kurzzeitspektren F0 Ver¨ anderungen unter Beibehaltung der spektralen Enveloppe vorzunehmen sind und wie die Phase gehandhabt werden muss wird dort ebenfalls erkl¨ art.
9.2
Sprachsynthese nach dem Verkettungsansatz
253
Aus diesen Erl¨ auterungen wird ersichtlich, dass die Modifikation der prosodischen Parameter im Frequenzbereich recht aufw¨ andig ist. Deshalb ist dieser Weg nicht sehr attraktiv, obwohl Ver¨ anderungen der Dauer und der Grundfrequenz ohne nennenswerte Verminderung der Signalqualit¨ at machbar sind. Eine ¨ ahnlich gute Qualit¨ at l¨ asst sich jedoch mit dem viel einfacheren PSOLAVerfahren erreichen. 9.2.3.3 Dauer- und F0 -Ver¨ anderung mittels PSOLA Ein wenig aufw¨ andiges, aber trotzdem qualitativ gutes und somit interessantes Verfahren zur prosodischen Ver¨ anderung von Sprachsignalen ist PSOLA (pitch-synchronous overlap add), was sinngem¨ ass etwa perioden-synchrone u ¨ berlappende Addition bedeutet. Das Verfahren ist in [30] anschaulich beschrieben und arbeitet folgendermassen: Im prosodisch zu ver¨ andernden Sprachsignal wird in stimmhaften Partien der Anfang jeder Periode markiert, und stimmlose Partien werden in Intervalle fester L¨ ange unterteilt (siehe Abbildung 9.7). Je zwei benachbarte Abschnitte
u
u
p
p
p
p
p
p
u
Abbildung 9.7. F¨ ur das PSOLA-Verfahren werden in den stimmhaften (engl. pitched) Tei-
len des Sprachsignals die einzelnen Perioden markiert und die stimmlosen (engl. unpitched) Ausschnitte in fixe Intervalle von beispielsweise 5 ms Dauer unterteilt. Je zwei aufeinander folgende Abschnitte werden sodann mit einer Hanning-Fensterfunktion multipliziert: es resultieren Doppelperiodensegmente (Abbildung aus [30]).
254
9. Sprachsynthese: Phonoakustische Stufe Originaldauer und -grundfrequenz 1
2
3
4
5
6
7
8
höhere Grundfrequenz 1
2
3
4
5
6
9
10
11
12
tiefere Grundfrequenz 7
8
9
10
11
12
verlängert 1
2
2
3
4
4
5
6
9
10
11
6
7
8
8
verkürzt 1
3
4
6
7
Abbildung 9.8. Aus den Doppelperiodensegmenten, die hier symbolisch als Hanning-
Fenster dargestellt sind, kann das Sprachsignal mit der urspr¨ unglichen Dauer und Grundfrequenz erzeugt werden (oben). Prosodisch modifizierte Signale entstehen durch das Ver¨ andern der Uberlappung oder durch die Verdopplung bzw. das Weglassen gewisser Dop¨ pelperiodensegmente (Abbildung aus [30]).
werden sodann mit einer Hanning-Fensterfunktion multipliziert. Aus der so entstandenen Folge von Doppelperiodensegmenten erzeugt nun das PSOLAVerfahren folgendermassen prosodisch ver¨ anderte Sprachsignale: Die subjektiv wahrgenommene Tonh¨ ohe kann ver¨ andert werden, indem ¨ die Uberlappung aufeinander folgender Doppelperiodensegmente vergr¨ ossert oder verkleinert wird, wie dies in Abbildung 9.8 dargestellt ist. Diese Art der Tonh¨ ohenver¨ anderung bewirkt gleichzeitig eine Ver¨ anderung der Dauer, die bei der Dauerver¨ anderung kompensiert werden muss. Die Dauer des Signals wird durch das Verdoppeln oder das Weglassen gewisser Doppelperiodensegmente erreicht. Bei der Verl¨ angerung stimmloser Signalausschnitte muss ein zu verdoppelndes Segment mit umgekehrter Zeitachse wiederholt werden (wird in Abbildung 9.8 durch die Pfeile der Doppelperiodensegmente 2 und 4 angezeigt), weil sonst eine k¨ unstliche, wahrnehmungsm¨ assig stark st¨ orende Periodizit¨ at entsteht. Stimmlose Signalausschnitte d¨ urfen deshalb nicht mehr als auf das Doppelte verl¨ angert werden.
9.3
Steuerung der Prosodie
255
Weil es sehr effizient ist und bei optimaler Anwendung (insbes. bei korrekter Periodensegmentierung) Signale guter Qualit¨ at ergibt, hat sich PSOLA als eines der Standardverfahren f¨ ur die prosodische Modifikation der Grundelemente bei der Verkettungssynthese durchgesetzt.
9.3 Steuerung der Prosodie Die Prosodie der Sprache hat, wie bereits in Abschnitt 1.2.4 erw¨ ahnt, eine linguistische und eine ausserlinguistische Funktion. Die ausserlinguistische Funktion bestimmt die Sprechweise, also ob die Stimme beispielsweise freundlich, barsch oder eher neutral klingt. Sie bestimmt u.a. auch ob die Sprechmelodie monoton oder bewegt wirkt, ob der Sprechrhythmus schnell, abgehackt oder ausgeglichen ist, etc. Welche Sprechweise f¨ ur eine Sprachsynthese angemessen ist, l¨ asst sich in der Regel nicht aus dem Eingabetext ermitteln. Vielmehr wird eine Sprachsynthese so konzipiert, dass sie Sprachsignale mit einer bestimmten Sprechweise erzeugt. Die Sprechweise ist in diesem Sinne f¨ ur die Sprachsynthese eine “Konstante”, d.h. man legt bei der Entwicklung einer Sprachsynthese fest, wie sie sp¨ ater klingen soll. Man w¨ ahlt insbesondere den Sprecher oder die Sprecherin f¨ ur die ben¨ otigten Sprachaufnahmen entsprechend aus. Sprachaufnahmen werden f¨ ur die Grundelemente bei einer Verkettungssynthese (vergl. Abschnitt 9.2.1) ben¨ otigt oder zur Realisation der Prosodiesteuerung (siehe Abschnitte 9.3.1.1 und 9.3.2.1). Im Gegensatz zur ausserlinguistischen Funktion der Prosodie bezieht sich die linguistische Funktion sehr direkt auf den konkreten Wortlaut. Das Gewichten und Gruppieren von W¨ ortern und Silben muss also aktiv aufgrund des Eingabetextes gesteuert werden. Diese Aufgabe nimmt in erster Linie die Transkriptionsstufe wahr. Sie analysiert den Eingabetext und generiert die entsprechende phonologische Darstellung. Darin enthalten sind die St¨ arken der Silbenakzente und die Phraseninformation, die zusammen die abstrakte Beschreibung der linguistischen Komponente der Prosodie ausmachen. Die Prosodiesteuerung hat nun die Aufgabe, diese abstrakte Beschreibung der Prosodie eines Satzes (Akzente und Phrasen) in die physikalischen prosodischen Gr¨ ossen umzusetzen, also den Grundfrequenzverlauf, die Dauerwerte der Laute und Pausen und den Intensit¨ atsverlauf festzulegen. Untersuchungen an nat¨ urlichen Sprachsignalen zeigen, dass bei der Realisierung der Prosodie ein relativ grosser Gestaltungsspielraum besteht, den verschiedene Sprecher recht unterschiedlich nutzen. Daraus f¨ ur die Sprachsynthese zu schliessen, dass die Prosodiesteuerung unkritisch sei, w¨ are ein Irrtum. Vielmehr gilt, dass Sprachsignale nur dann als nat¨ urlich empfunden werden, wenn die Charakteristik der Laute und die Prosodie “zusammenpassen”. Dies kann am einfachsten gew¨ ahrleistet werden, wenn Sprachsignale der-
9.3
256
9. Sprachsynthese: Phonoakustische Stufe
selben Person verwendet werden, um einerseits Grundelemente (z.B. Diphone) zu extrahieren und andererseits Messwerte f¨ ur die prosodischen Gr¨ ossen zu erhalten, wie sie in den Tabellen 9.3 und 9.6 aufgef¨ uhrt sind. Das wichtigste an der Prosodie ist selbstverst¨ andlich, dass sie dem Sinn nicht zuwiderl¨ auft. Wenn die phonologische Darstellung korrekt ist, also die Akzente und Phrasen durch die Transkriptionsstufe richtig ermittelt worden sind, dann ist dies gew¨ ahrleistet. Die Prosodiesteuerung muss somit nur noch die abstrakte Prosodie (Akzente und Phrasen) angemessen in die physikalischen Gr¨ ossen Grundfrequenz, Dauer und Intensit¨ at umsetzen. Die prosodischen Gr¨ ossen sind korreliert, was schon deshalb einleuchtet, weil z.B. starke Akzente die Grundfrequenz und die Intensit¨ at der betroffenen Silben erh¨ ohen und auch die Dauer der Laute in diesen Silben verl¨ angern. Es gibt also gleichartige Abh¨ angigkeiten der drei prosodischen Gr¨ ossen von gewissen Komponenten der phonologischen Darstellung. Hingegen scheint die gegenseitige Beeinflussung der prosodischen Gr¨ ossen vernachl¨ assigbar zu sein. Deshalb kann in der Sprachsynthese die Prosodiesteuerung als drei getrennte Systemteile konzipiert werden, wobei je ein Teil f¨ ur eine der prosodischen Gr¨ ossen zust¨ andig ist.
9.3.1 Dauersteuerung Um zu sehen, was die Dauersteuerung konkret zu leisten hat, betrachtet man am besten nat¨ urliche Sprachsignale und die zugeh¨ origen phonologischen Darstellungen. Ein Beispiel eines Sprachsignals f¨ ur den Satz “Sie erhielten bei ihrem Zug durch die Strassen Zulauf von Pekinger B¨ urgern.” zeigt Abbildung 9.9. In dieser Abbildung sind auch die Lautgrenzen eingezeichnet. Die dem Sprachsignal entsprechende phonologische Darstellung ist: (P) zi: Er-[1]hi:l-tn #{2} (P) ba
9.3
Steuerung der Prosodie
257
1 0 −1
z
i: E r h i:
0
l
> t =n >b a_i
0.5
i: r @ m > t s 1
u:
>k 1.5
[s]
1 0
> dU r C > d i
−1 1.5
S >t r 2
a:
s
=n
/
ts
u:
2.5
l
a_u 3
[s]
1 0 −1
f 3
O n
> p e: 3.5
> k I N @ r >b Y 4
r
>g @ r [s]
n 4.5
Abbildung 9.9. Nat¨ urliches Sprachsignal “Sie erhielten bei ihrem Zug durch die Strassen
Zulauf von Pekinger B¨ urgern.” mit eingetragenen Lautgrenzen. F¨ ur die Verschlusslaute sind jeweils zwei Segmente eingetragen, n¨ amlich die pr¨ aplosive Pause (mit dem Symbol >) und die Plosion.
Erschwerend wirkt sich dabei aus, dass es nicht m¨ oglich ist, f¨ ur die Lautdauer eine absolute Grenze zwischen Lang- und Kurzlaut anzugeben (siehe Abbildung 9.10). Die subjektive Klassierung in Lang- oder Kurzlaut h¨ angt offensichtlich nicht nur von der effektiven Dauer des Lautes ab. Obwohl anhand der Dauer nicht eindeutig zwischen Kurz- und Langvokal unterschieden werden kann, hat die Eigenschaft Kurz- bzw. Langvokal offensichtlich im Mittel einen starken Einfluss auf die Lautdauer. Diese Eigenschaft erkl¨ art jedoch nur einen Teil der Variabilit¨ at der Lautdauer. Es muss deshalb noch andere Einflussfaktoren geben, die sich auf die Dauer eines Lautes auswirken. Um eine gute Dauersteuerung zu verwirklichen, m¨ ussen diese Faktoren erstens bekannt sein und zweitens bei der Bestimmung der Lautdauer angemessen ber¨ ucksichtigt werden. 9.3.1.1 Die Lautdauer beeinflussende Faktoren Um herauszufinden, welche Faktoren sich wie auf die Lautdauer auswirken, kann man folgendermassen vorgehen: Zuerst stellt man eine Sammlung von S¨ atzen zusammen, in der alle relevanten Konstruktionen (z.B. Aussage-, Frage- und Befehlss¨ atze, Nebens¨ atze, Aufz¨ ahlungen etc.) gen¨ ugend oft vorkommen. Auch in Bezug auf andere wichtige Faktoren wie z.B. die Satzl¨ ange sollte die Satzsammlung eine ausreichend grosse Vielfalt aufweisen. Dann l¨ asst
258
9. Sprachsynthese: Phonoakustische Stufe 0.1 0.08
[a]
[a:]
0.06 0.04 0.02 0
0
50
100
150
200
250
[ms]
300
Abbildung 9.10. Normierte Histogramme der Dauer der Laute [a] und [a:] gemessen aus
neutral gesprochenen Sprachsignalen eines professionellen Sprechers. Die Histogramme sind so normiert, dass die Summe der diskreten Werte 1 ist und die Histogramme vergleichbar sind. Dies ist n¨ otig, weil [a] viel h¨ aufiger ist als [a:].
man die S¨ atze von einer Person mit Sprechausbildung in der gew¨ unschten Sprechweise vorlesen. F¨ ur jeden Satz muss die zugeh¨ orige phonologische Darstellung ermittelt werden. Zus¨ atzlich zur Lautfolge beinhaltet die phonologische Darstellung auch weitere Informationen, die f¨ ur das Sch¨ atzen der Lautdauer in der Dauersteuerung n¨ utzlich sind. So ist daraus die Position eines Lautes innerhalb der Silbe, des Wortes, der Phrase und des Satzes ersichtlich, ebenso die Akzentst¨ arke der betreffenden Silbe, der Typ der Phrase etc. Falls vorhanden, kann die Transkriptionsstufe zum Erzeugen der phonologischen Darstellung eingesetzt werden. Diese wird jedoch aus zwei Gr¨ unden in der Regel nicht genau zu den aufgenommenen S¨ atzen passen: Einerseits hat ein Sprecher beim Setzen von Akzenten und Phrasen eine gewisse Freiheit, andererseits ist die automatisch generierte phonologische Darstellung nicht fehlerfrei. Die phonologische Darstellung muss deshalb an die gesprochenen S¨ atze angepasst werden. In den aufgenommenen Sprachsignalen werden nun die Lautgrenzen markiert. Lautgrenzen k¨ onnen grunds¨ atzlich von Hand oder mit einem geeigneten Werkzeug halb- oder vollautomatisch ermittelt werden. Das manuelle Setzen von Lautgrenzen ist einerseits sehr zeitraubend und andererseits stark subjektivem Ermessen unterworfen, weil Laut¨ uberg¨ ange fliessend sind. Zudem h¨ alt sich auch ein professioneller Sprecher nicht durchwegs an die Standardaussprache. Dies ist insbesondere dann der Fall, wenn dem Sprecher die Anweisung gegeben wird, die S¨ atze eher lebhaft zu lesen. Dabei verst¨ arkt sich die Koartikulation, und es k¨ onnen sogar Verschleifungen entstehen. Auch in Abbildung 9.9 gibt es solche Abweichungen, z.B. fehlt im Wort “erhielten” der Laut [@]. Abweichungen von der Standardaussprache erschweren nicht nur das manuelle, sondern auch das automatische Segmentieren (vergl. [25]).
9.3
Steuerung der Prosodie
259
Mittels dieser Sammlung von segmentierten S¨ atzen und den zugeh¨ origen phonologischen Darstellungen kann man nun herausfinden, welche Faktoren sich wie stark auf die Dauer welcher Laute auswirken. Beispielsweise kann man die Dauern aller Laute [a] und [a:] in je einem Histogramm wie in Abbildung 9.10 darstellen. Sind die Histogramme stark verschieden, dann muss davon ausgegangen werden, dass der betreffende Einflussfaktor (in diesem Fall also die Lautklasse Langvokal) relevant ist. Wenn die Histogramme jedoch nahezu deckungsgleich sind, dann kann angenommen werden, dass der Einfluss vernachl¨ assigbar ist. Wenn man diesen Test mit allen aus der phonologischen Darstellung direkt oder indirekt verf¨ ugbaren Einflussfaktoren macht, dann kann man feststellen, dass im Wesentlichen die in Tabelle 9.1 zusammengestellten linguistischen Faktoren f¨ ur die Lautdauer ausschlaggebend sind. Es sind jedoch nicht alle dieser 57 Faktoren gleich wichtig. Nebst den linguistischen Faktoren gibt es auch ausserlinguistische, welche die Lautdauer beeinflussen. Der wichtigste ausserlinguistische Einflussfaktor ist die Sprechgeschwindigkeit. Sie beeinflusst die mittlere Lautdauer direkt, aber die Dauer der einzelnen Laute (oder Lautteile) sehr unterschiedlich. So werden Nasale und Langvokale stark beeinflusst, w¨ ahrend beispielsweise die Plosionsphase der Verschlusslaute recht wenig variiert. Zur Aufgabe der Dauersteuerung geh¨ ort auch, festzulegen, wo wie lange Sprechpausen zu setzen sind. Dabei sind in erster Linie die starken Phrasengrenzen massgebend.
Tabelle 9.1. Linguistische Faktoren, welche die Lautdauer beeinflussen
linguistischer Faktor
diskrete Werte
Lautklasse
Langvokal | Kurzvokal | Diphthong | Frikativ | Nasal | Plosiv | andere
Stimmhaftigkeit
stimmhaft | stimmlos
Lautposition
Silbenansatz | Silbenkern (Nukleus) | Silbenkoda
Nachbarlaute
Lautklasse & Stimmhaftigkeit (f¨ ur linken und rechten Nachbarlaut) 1 | 2 | 3 | unakzentuiert | sonst
Silbenakzent
St¨ arkegrad:
Silbengr¨ osse
Anzahl Laute:
1 | 2 | 3−4 | 5−7 | >7
Phrasengr¨ osse
Anzahl Silben:
1 | 2 | 3−4 | 5−7 | >7
Silbenposition
in Phrase:
1. | 2. | vorletzte | letzte | sonst 0 | 1 | 2 | sonst
Phrasengrenze
St¨ arkegrad:
Satztyp
Aussagesatz | Fragesatz | Befehlssatz
260
9. Sprachsynthese: Phonoakustische Stufe
9.3.1.2 Dauersteuerung mit einem linearen Ansatz Zur Dauersteuerung in Sprachsynthesesystemen wird oft ein Ansatz verwendet, der davon ausgeht, dass ein Laut eine charakteristische Dauer p0 hat, die ¨ durch die linguistischen Faktoren in Tabelle 9.1 ver¨ andert wird. Ahnlich wie
die Frequenz und die Intensit¨ at wird auch die Dauer relativ wahrgenommen. Die linguistischen Faktoren m¨ ussen sich auf einen langen und auf einen kurzen Laut wahrnehmungsm¨ assig gleich auswirken. Sie m¨ ussen demzufolge die Dauer relativ ver¨ andern, also multiplikativ wirken. Wenn wir den Einfluss des onnen wir linguistischen Faktors i auf die Lautdauer mit pi bezeichnen, dann k¨ die Dauer eines Lautes in Funktion der linguistischen Faktoren i, i = 1, 2, . . . wie folgt sch¨ atzen: ci = 1 falls Faktor i zutrifft d˜ = p0 (157) pci i mit ci = 0 sonst i
Der Einfluss der linguistischen Faktoren auf die Lautdauer kann in Form von Regeln ausgedr¨ uckt werden, wie sie als Beispiele in Tabelle 9.2 aufgef¨ uhrt sind. Der Bedingungsteil einer Regel kann sich entweder auf einen einzigen linguistischen Faktor von Tabelle 9.1 beziehen (trifft bei RD1 bis RD3 zu) oder auf mehrere, wie dies bei RD4 der Fall ist: Die Silbe muss die letzte in der Phrase sein und die folgende Phrasengrenze muss die St¨ arke 1 haben oder es muss das Satzende folgen. Die Zahl der Regeln kann somit gr¨ osser sein als die Zahl der in Tabelle 9.1 aufgef¨ uhrten Einflussfaktoren (mehrere hundert Regeln sind durchaus m¨ oglich). onnen. Die Frage ist nun, wie die Regelparameter pi bestimmt werden k¨ Grunds¨ atzlich kann dies auf rein auditivem Wege versucht werden, d.h. man stellt die Regeln zusammen und legt damit fest, welche linguistischen Faktoren
Tabelle 9.2. Beispiele von Regeln, die beschreiben, wie die linguistischen Faktoren die Dauer der Laute beeinflussen.
RD0:
Laute haben eine neutrale Dauer von p0 ms (wenn keine weitere Regel zutrifft)
RD1:
angert Langvokale werden um den Faktor p1 verl¨
RD2:
Laute einer Silbe mit Hauptakzent werden um p2 verl¨ angert
RD3:
Laute in unbetonten Silben werden gek¨ urzt (p3 < 1)
RD4:
Laute der letzten Silbe vor einer Phrasengrenze der St¨ arke 1 angert oder vor dem Satzende werden um p4 verl¨
.. .
9.3
Steuerung der Prosodie
261
sich auf die Lautdauer auswirken sollen, aber noch nicht wie gross der Einfluss quantitativ sein soll. Um den quantitativen Einfluss, also die Regelparameter pi , zu bestimmen, k¨onnen die Regeln in einem Sprachsynthesesystem implementiert und die Parameter so lange variiert werden, bis die synthetisierten Beispiele befriedigend klingen. Als problematisch erweist sich dabei, dass die Regelparameter nicht einzeln optimiert werden k¨ onnen, weil sich auf einen konkreten Laut meistens mehrere Regeln gleichzeitig auswirken, und damit die Regelparameter nicht voneinander unabh¨ angig sind. Die geh¨ orm¨ assige Optimierung verkommt so leicht zum endlosen Herumprobieren, von dem man nie weiss, wie vern¨ unftig ein erzieltes Resultat u ¨ berhaupt ist. Es ist insbesondere nicht klar, ob noch nicht die besten Werte f¨ ur die Regelparameter gefunden worden sind oder ob an den ¨ Regeln selbst eine Anderung vorgenommen werden m¨ usste, um ein besseres Resultat zu erzielen. Zudem besteht beim geh¨ orm¨ assigen Optimieren das Problem, dass die Lautdauer nicht f¨ ur sich allein beurteilt werden kann, sondern nur zusammen mit den anderen durch die Synthese bestimmten Aspekte des Sprachsignals wie Grundfrequenz, Intensit¨ at und Klang der Laute. Das ingenieurm¨ assige Vorgehen zur L¨ osung eines solchen Problems ist eine Optimierung mit mathematischen Mitteln. Es kann z.B. ein linearer Ansatz verwendet werden, d.h. es wird postuliert, dass sich die Einfl¨ usse auf die Lautdauer addieren. Bei der Gleichung (157), die wir zur Bestimmung der Lautdauer angesetzt haben, ist dies nicht der Fall. Man kann die Gleichung jedoch in der logarithmierten Form verwenden. log d˜ = log p0 + ci log pi = q0 + ci qi (158) i
i t
= [c0 c1 c2 c3 c4 . . .] · [q0 q1 q2 q3 q3 . . .] = c q t . Grunds¨ atzlich ist es nicht n¨ otig, zuerst Regeln zu formulieren, wie sie in Tabelle 9.2 gezeigt werden. Man kann auch die Einflussfaktoren von Tabelle 9.1 direkt als eine Art Regeln betrachten, die beispielsweise zu lesen sind als: Falls der betrachtete Laut ein Langvokal ist (c1 = 1), dann wird die Dauer mit dem Faktor p1 multipliziert oder wenn der Laut ein Kurzvokal ist (c2 = 1), dann ur die ganze Tabelle 9.1 erg¨ aben sich so wird der Faktor p2 verwendet etc. F¨ insgesamt 57 Regeln mit ebensovielen Bedingungen ci und Parametern pi . Einfache Regeln wie RD1, RD2 und RD3, die sich auf einen einzigen Einflussfaktor beziehen, werden so automatisch ber¨ ucksichtigt. F¨ ur Regeln mit mehreren logisch verkn¨ upften Einflussfaktoren im Bedingungsteil muss noch ugt werden. je ein ci hinzugef¨ onnen nun anhand der im Abschnitt 9.3.1.1 Die Gr¨ ossen qi , i = 0, 1, 2, . . . k¨ erl¨ auterten Sammlung von nat¨ urlichen Sprachsignalen folgendermassen ermittelt werden: F¨ ur jeden Laut wird die gemessene Dauer d zusammen mit
262
9. Sprachsynthese: Phonoakustische Stufe
Tabelle 9.3. Gemessene Lautdauerwerte f¨ ur den Anfang des Satzes “Sie erhielten bei . . . ”
mit der angepassten phonologischen Darstellung: (P) zi: Er-[1]hi:l-tn #{2} (P) ba
Laut Dauer Lang- Haupt- unbetonte letzte . . . [ms] laut akzent Silbe Silbe z i: E r h i: l > t n > b a
103.0 077.9 062.8 056.4 050.7 079.4 082.8 078.6 017.6 098.5 037.7 015.2 127.8
0 1 0 0 0 1 0 0 0 0 0 0 0
0 0 0 0 1 1 1 0 0 0 0 0 0
1 1 1 1 0 0 0 1 1 1 1 1 1
0 0 0 0 0 0 0 0 0 0 0 0 0
den linguistischen Faktoren ci in eine Tabelle eingetragen. F¨ ur den Anfang des Satzes von Abbildung 9.9 ist diese Zusammenstellung in Tabelle 9.3 zu sehen. onnen nun nach GleiF¨ ur die gemessenen Lautdauerwerte d in Tabelle 9.3 k¨ chung (158) die Sch¨ atzwerte d˜ bestimmt werden, was sich in Matrizendarstellung schreiben l¨ asst als:
⎤ ⎡ ˜ log d(1) 1 ⎢ ⎢ ˜ ⎥ ⎥ ⎢1 ⎢ log d(2) ⎥ ⎢ ⎢ ⎢ log d(3) ⎢ ˜ ⎥ ⎥ ⎢1 ⎢ ⎥ ⎢ ⎢ ˜ ⎥ ⎢ log d˜ = ⎢ ⎢ log d(4) ⎥ = ⎢ 1 ⎢ ⎢ ˜ ⎥ ⎥ ⎢1 ⎢ log d(5) ⎥ ⎢ ⎢ ˜ ⎥ ⎢1 ⎢ log d(6) ⎦ ⎣ ⎣ .. . ⎡
0 0 1 0 ... 1 0 1 0 ... 0 0 1 0 ... 0 0 1 0 ... 0 1 0 0 ... 1 1 0 0 ... .. .
⎤
⎤
⎡
⎤
⎡ ⎤ ⎢ ⎥ q0 ⎥ ⎢ c(2) ⎥ q0 ⎥ ⎥ ⎢q ⎥ ⎢ ⎥⎢ ⎥ ⎥ ⎢ 1 ⎥ ⎢ c(3) ⎥ ⎢ q1 ⎥ ⎥⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎥ ⎢ q2 ⎥ ⎢ ⎥ ⎢ q2 ⎥ ⎥ · ⎢ ⎥ = ⎢ c(4) ⎥ · ⎢ ⎥ = C q ⎥ ⎢ q3 ⎥ ⎢ ⎥ ⎢ q3 ⎥ ⎥⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎥ ⎢ q4 ⎥ ⎢ c(5) ⎥ ⎢ q4 ⎥ ⎥⎣ ⎦ ⎢ ⎥⎣ ⎦ ⎢ c(6) ⎥ .. .. ⎥ ⎣ ⎦ ⎦ (159) . . .. . ⎡
c(1)
9.3
Steuerung der Prosodie
263
Der Vektor c(n) bezeichnet die n-te Zeile der N ×K -Matrix C , wobei N die Gesamtzahl der Laute u atze (ist gleich der Anzahl der Zeilen in ¨ ber alle S¨ osse des Parametervektors q ist. Weil mit N > K Tabelle 9.3) und K die Gr¨ das Gleichungssystem (159) u ¨ berbestimmt ist, muss der Parametervektor q u ¨ ber eine Optimierung bestimmt werden, indem z.B. die Summe des quadratischen Sch¨ atzfehlers zwischen den gemessenen und den gesch¨ atzten Dauerwerten minimiert wird. Der quadratische Sch¨ atzfehler l¨ asst sich schreiben als ˜ t (log d − log d) ˜ . F¨ E 2 = (log d − log d) ur das Minimum gilt, dass die partiellen Ableitungen des Fehlers nach den Parametern qi null sind:
∂E 2 ! = −2C t (log d − Cq) = 0 ∂q
(160)
Schliesslich lassen sich die Parameter qi bestimmen aus:
q = (C t C)−1 C t log d
(161)
und damit sind auch die pi = 10qi bekannt. Die Parameter pi k¨ onnen nun in die Gleichung (157) eingesetzt und f¨ ur die Dauersteuerung angewendet werden. ur dieDie Dauer eines konkreten Lautes wird berechnet, indem zuerst die ci f¨ sen Laut und seine Stellung ermittelt (haupts¨ achlich aus der phonologischen Darstellung) und in die Gleichung (157) eingesetzt werden. Wenn alle relevanten Faktoren, welche die Lautdauer beeinflussen, ber¨ ucksichtigt werden, dann ist ein linearer Ansatz zur Dauersteuerung in einem Sprachsynthesesystem einigermassen brauchbar. Eine wirklich gute L¨ osung ist es jedoch nicht, haupts¨ achlich aus zwei Gr¨ unden: Erstens wird in der Optimierung von Gleichung (160) der globale Sch¨ atzfehler minimiert, wodurch h¨ aufig auftretende Einflussfaktoren die seltenen systematisch u ¨ berstimmen. Zweitens werden keine Abh¨ angigkeiten h¨ oheren Grades ber¨ ucksichtigt. Dies kann jedoch wichtig sein, weil die kombinierte Wirkung mehrerer auf einen Laut zutreffender Regeln i.a. nicht gleich der Summe (bzw. dem Produkt, wenn mit logarithmierten Dauerwerten gearbeitet wird) der Einfl¨ usse der einzelnen Regeln ist. Im n¨ achsten Abschnitt wird ein Ansatz besprochen, der diese Beschr¨ ankung nicht aufweist. 9.3.1.3 Dauersteuerung mit einem neuronalen Netz Wie in Abschnitt 9.3.1.1 erl¨ autert, kann man zwar anhand einer Sammlung segmentierter S¨ atze und den zugeh¨ origen phonologischen Darstellungen absch¨ atzen, durch welche linguistischen Faktoren die Lautdauer beeinflusst wird. Wie sich aber Kombinationen dieser Faktoren auf die Lautdauer auswirken, weiss man damit noch nicht. Die m¨ assig befriedigenden Resultate des linearen Ansatzes in Abschnitt 9.3.1.2 lassen vermuten, dass erhebliche nichtlineare Effekte vorhanden sein k¨ onnten. Das w¨ urde bedeuten, dass der Zusammen-
264
9. Sprachsynthese: Phonoakustische Stufe
hang zwischen den Einflussfaktoren und der Lautdauer die M¨ achtigkeit eines linearen Ansatzes u ¨ bersteigt. Man darf jedoch davon ausgehen, dass ein Zusammenhang besteht und es deshalb eine (wahrscheinlich nichtlineare) Transformation Ψ gibt, mit welcher atzwert der f¨ ur jede Kombination von Einflussfaktoren c(n) ein optimaler Sch¨ ˆ ermittelt werden kann: Lautdauer d(n)
ˆ = Ψ{c(n)} d(n)
(162)
Die Transformation Ψ ist jedoch unbekannt. Bekannt ist bloss eine Menge von Eingangs-/Ausgangs-Paaren dieser Transformation. Es ist deshalb naheatzen. liegend, zu versuchen, die Transformation Ψ aus diesen Daten zu sch¨ Daf¨ ur eignet sich beispielsweise ein neuronales Netz des Typs MehrschichtPerzeptron (engl. multi-layer perceptron (MLP) oder feed-forward network), wie es in Abbildung 9.11 dargestellt ist.
c1 c2 c3 c4 c5 c6
~ d
c7 c8
cK Abbildung 9.11. Neuronales Netz (hier ein 3-Schicht-Perzeptron) zur Sch¨ atzung der Laut-
dauer d˜ in Funktion der Einflussfaktoren c. Die Zahl der Eing¨ ange ist gleich der Dimension von c, also K. F¨ ur die beiden verdeckten Schichten werden etwa 20 bzw. 10 Neuronen eingesetzt.
Um ein neuronales Netz trainieren zu k¨ onnen, m¨ ussen gen¨ ugend Daten (also Eingangs-/Ausgangs-Paare) zur Verf¨ ugung stehen, z.B. in der Form einer Tabelle, welche viele gemessene Lautdauern enth¨ alt und zu jedem Messwert die Einflussfaktoren c1 , c2 , . . . cK angibt (wie dies bei Tabelle 9.3 der Fall ist). Als Faustregel gilt, dass pro Parameter des neuronalen Netzes mindestens 10 Lautdauer-Messwerte vorhanden sein m¨ ussen. Mit K = 100 hat das vollver-
9.3
Steuerung der Prosodie
265
bundene neuronale Netz von Abbildung 9.11 etwa 2210 Gewichte. Einander ausschliessende Einflussfaktoren k¨ onnen jedoch bin¨ ar codiert werden (z.B. die 7 Lautklassen mit 3 Bits). So lassen sich die 57 Faktoren von Tabelle 9.1 mit total 30 Bits darstellen. Die Zahl der effektiv n¨ otigen Gewichte ist damit 800. Weil im Mittel gut 10 Laute pro Sekunde gesprochen werden, m¨ ussen f¨ ur das Training Sprachsignale im Umfang von mindestens 14 Minuten aufbereitet werden. Mit dem Backpropagation-Algorithmus (siehe Abschnitt A.5.4) kann nun das neuronale Netz trainiert werden. Dazu wird ein Optimierungskriterium ben¨ otigt. In der Regel verwendet man daf¨ ur den RMS des Sch¨ atzfehlers. Wie im Abschnitt 9.3.1.2 ist es auch hier sinnvoll zu ber¨ ucksichtigen, dass die Dauer relativ wahrgenommen wird. Der Sch¨ atzfehler E wird deshalb sinnvollerweise aus den logarithmierten Dauerwerten wie folgt ermittelt:
N 1 2 ˜ E= {log d(n) − log d(n)} N n=1
mit
˜ = Ψ{c(n)} ˜ d(n) ,
(163)
˜ die Transformation des neuronalen Netzes ist, also eine Sch¨atzung wobei Ψ der unbekannten Transformation Ψ. F¨ ur eine gute Dauersteuerung werden 100 oder mehr Einflussfaktoren ber¨ ucksichtigt, wodurch der Vektor c entsprechend lang wird. Die Zahl der in den Trainingsdaten vorhandenen Eingangswerte f¨ ur c ist deshalb verschwindend klein im Vergleich zur Zahl der m¨ oglichen. Es ist somit extrem wichtig, dass das neuronale Netz gut verallgemeinert. Hinweise, wie man ein neuronales Netz trainieren muss, damit es dieser Anforderung entspricht, sind im Anhang A.5.5 zu finden. Wenn das Training erfolgreich abgeschlossen ist, hat das neuronale Netz die ˜ gelernt und kann zur Dauersteuerung in einem SprachTransformation Ψ synthesesystem eingesetzt werden. Die Transformation selbst ist jedoch nach wie vor unbekannt; sie steckt in den Gewichten des neuronalen Netzes. Wenn also der Zusammenhang zwischen den Einflussfaktoren und der Lautdauer interessiert, dann ist das neuronale Netz nicht der geeignete Ansatz. In einem Sprachsynthesesystem erf¨ ullt es seinen Zweck jedoch vollumf¨ anglich. Im Vergleich zum linearen Ansatz aus Abschnitt 9.3.1.2 liefert das neuronale Netz wesentlich bessere Resultate. Insbesondere gibt es beim Anh¨ oren synthetisierter Sprache nur sehr selten Laute, deren Dauer als nicht korrekt empfunden wird. In der Regel wird der resultierende Sprechrhythmus als sehr nat¨ urlich wahrgenommen.
266
9. Sprachsynthese: Phonoakustische Stufe
9.3.2 Grundfrequenzsteuerung Im Gegensatz zur Dauer ist in der deutschen Sprache die Tonh¨ ohe eines Lautes nicht phonemisch, d.h. es gibt kein Wortpaar, bei dem sich die Bedeutungen nur aufgrund der Tonh¨ ohe eines Lautes unterscheiden, wie dies bei Tonsprachen der Fall ist. Die Tonh¨ ohe, die wir im Sinne der Signalverarbeitung als Grundfrequenz bezeichnen, ist im Deutschen also rein prosodisch. Hinsichtlich der linguistischen Funktion ist sie ein Mittel um zu markieren, zu gewichten und zu gruppieren (vergl. Abschnitt 1.2.4). Nebst ihrer linguistischen Funktion hat die Grundfrequenz auch eine physiologisch bedingte Komponente: Die Grundfrequenz sinkt im Verlauf einer ¨ Ausserung im Mittel langsam ab (vergl. Abbildung 9.12). Dieses als Deklination bezeichnete Ph¨ anomen wird damit erkl¨ art, dass der Druck in der Luftr¨ ohre w¨ ahrend des Sprechens leicht abf¨ allt. Die Grundfrequenz sinkt zwar i.a. im Verlauf einer Phrase, kann jedoch gegen das Ende gewisser Phrasen auch ansteigen. Dies trifft insbesondere f¨ ur die Terminalphrase von Frages¨ atzen und oft auch f¨ ur die progredienten Phrasen zu. Bei starken Phrasengrenzen, an denen der Redefluss verlangsamt oder sogar unterbrochen wird, kann oft eine deutliche Versetzung der Deklination beobachtet werden, d.h. die Grundfrequenz wird am Phrasenanfang erh¨ oht und f¨ allt dann im Verlauf der Phrase langsam wieder ab, wie dies auch in Abbildung 9.12 zu sehen ist. In dieser Abbildung ist zudem ersichtlich, dass die Grundfrequenz in der Terminalphrase (also am Satzende) steiler und tiefer abf¨ allt als in der progredienten Phrase. 1 0 −1
0
0.5
1
1.5
2
2.5
3
3.5
4
[s]
4.5
0
0.5
1
1.5
2
2.5
3
3.5
4
[s]
4.5
150 [Hz] 100
50
0
Abbildung 9.12. Grundfrequenzverlauf des Sprachsignals: “Sie erhielten bei ihrem Zug
durch die Strassen Zulauf von Pekinger B¨ urgern.” Die f¨ ur die stimmhaften Abschnitte berechneten Grundfrequenzwerte sind als blaue Punkte eingetragen. Die Deklination der beiden Phrasen ist deutlich zu erkennen. Am Ende der ersten Phrase (punktiert) steigt die Grundfrequenz wieder etwas an. Der Anfang der zweiten Phrase ist durch das Zur¨ ucksetzen der Deklination deutlich markiert.
9.3
Steuerung der Prosodie
267
Der Deklination u anderungen, wel¨ berlagert sind die grossen Grundfrequenz¨ che die wichtigen Silben hervorheben, also diejenigen, die Akzente tragen. Das Hervorheben einer Silbe f¨ allt umso deutlicher aus, je st¨ arker der Akzent ist. Als Hervorheben wird nicht die H¨ ohe der Grundfrequenz empfunden, sondern eine von der Deklination abweichende zeitliche Ver¨ anderung der Grundfrequenz. Diese Ver¨ anderung wird von einem Sprecher je nach Situation als Anstieg, als Abfall oder als Anstieg mit gleich anschliessendem Abfall realisiert. Nebst den Akzenten gibt es offensichtlich weitere Einfl¨ usse auf die Grundfrequenz. Es l¨ asst sich beispielsweise nachweisen, dass die Laute einen Einfluss auf die Grundfrequenz haben, also dass gewisse Laute eine tendenziell h¨ ohere Grundfrequenz aufweisen als andere. Anzumerken ist noch, dass wir hier die Grundfrequenz linear betrachten, obwohl das Ohr Frequenzen logarithmisch wahrnimmt. Da der Grundfrequenzvariation einer Stimme jedoch auf etwa eine Oktave beschr¨ ankt ist, ist der Unterschied zwischen linearer und logarithmischer Modellierung gering. Im Gegensatz dazu unterscheiden sich Lautdauern um mehr als einen Faktor 10. 9.3.2.1 Die Grundfrequenz beeinflussende Faktoren Um in einem Sprachsynthesesystem f¨ ur jeden Laut die Grundfrequenz und damit die Sprechmelodie bestimmen zu k¨ onnen, m¨ ussen zuerst die linguistischen Faktoren bekannt sein, welche die Grundfrequenz beeinflussen. Beim Ermitteln dieser Faktoren kann gleich vorgegangen werden wie bei den Lautdauern (vergl. Abschnitt 9.3.1.1): Man misst wiederum eine Sammlung nat¨ urlicher Sprachsignale aus, diesmal hinsichtlich der Grundfrequenz, und untersucht, ob ein bestimmter Faktor (z.B. die Silbe tr¨ agt einen 1-Akzent oder der Silbenkern ist ein offener Vokal) die Grundfrequenz beeinflusst. Eine solche Untersuchung ergibt im Wesentlichen die in Tabelle 9.4 zusammengestellten linguistischen Faktoren. Dar¨ uber hinaus gibt es ausserlinguistische Einfl¨ usse auf die Grundfrequenz, wobei einer der wichtigsten sicher der subglottale Luftdruck ist, der die Deklination des Grundfrequenzverlaufs bewirkt. Zus¨ atzlich spielen Sprechgewohnheiten, Sprache, Dialekt, psychische Verfassung etc. eine wichtige Rolle. Die ausserlinguistischen Einfl¨ usse werden in einem Sprachsynthesesystem gew¨ ohnlich nicht explizit ber¨ ucksichtigt, sondern nur insofern, als versucht wird, eine bestimmte Sprechweise nachzuahmen (z.B. neutrales Vorlesen). Das Ph¨ anomen der Deklination zeigt sich bei jedem Sprechstil und muss, da es f¨ ur den H¨ oreindruck wichtig ist, immer ber¨ ucksichtigt werden, auch dann, wenn nicht mit einem artikulatorischen Ansatz gearbeitet wird und somit kein Parameter f¨ ur den Luftdruck vorhanden ist. In diesem Fall muss die Deklination in Abh¨ angigkeit von linguistischen Faktoren beschrieben werden,
268
9. Sprachsynthese: Phonoakustische Stufe
Tabelle 9.4. Linguistische Faktoren, welche die Grundfrequenz beeinflussen
linguist. Faktor
diskrete Werte
Satztyp:
Aussage | Befehl | Frage
Phrasentyp:
progredient | terminal
Phrasengrenze:
St¨ arkegrad:
1 | 2 | 3 | sonst
Silbenakzent:
St¨ arkegrad:
1 | 2 | 3 | unakzentuiert | sonst
Silbentyp:
Langvokal | Kurzvokal | Diphthong offener Laut | geschlossener Laut Konsonant vor Silbenkern: stimmhaft | stimmlos | – Konsonant nach Silbenkern: stimmhaft | stimmlos | –
Silbenlage:
vor | nach dem Phrasenhauptakzent
Silbenkern:
z.B. von der Phrasenl¨ ange, von der Art der Phrase (progredient oder terminal) oder von der Art des Satzes (Aussage, Befehl, Frage). 9.3.2.2 Stilisierung von Grundfrequenzverl¨ aufen Bevor man eine Grundfrequenzsteuerung f¨ ur ein Sprachsynthesesystem realisiert, muss man sich u ¨ berlegen, wie ein Grundfrequenzverlauf mathematisch beschrieben werden kann. Selbstverst¨ andlich sollte diese Beschreibung m¨ oglichst einfach sein (d.h. wenige Freiheitsgrade bzw. Parameter aufweisen). Sie sollte also den nat¨ urlichen Verlauf nicht mit all seinen Details (siehe Beispiel in Abbildung 9.12) beschreiben, sondern nur so genau, dass die stilisierten Grundfrequenzverl¨ aufe beim H¨ oren den Eindruck einer nat¨ urlichen Sprechmelodie vermitteln. Es stellt sich also die Frage, welche Genauigkeitsverluste bei der Stilisierung von Grundfrequenzverl¨ aufen toleriert werden k¨ onnen. Um zu erm¨ oglichen, dass die Grundfrequenzsteuerung unabh¨ angig von der Dauersteuerung konzipiert werden kann, muss zudem der Verlauf der Grundfrequenz so formuliert werden, dass er von der Zeit unabh¨ angig ist. Der Verlauf der Grundfrequenz l¨ asst sich beispielsweise in Bezug auf die Silbe formulieren.4 So ist er nur an die linguistischen Ereignisse gebunden und damit von der Dauersteuerung unabh¨ angig. 4
Selbstverst¨ andlich ist es grunds¨ atzlich auch m¨ oglich, die Grundfrequenz pro Laut statt pro Silbe zu beschreiben. Die nachfolgenden Grundfrequenz-Stilisierungen zeigen jedoch, dass der Bezug zur Silbe passend und die zeitliche Aufl¨ osung gen¨ ugend gross ist.
9.3
Steuerung der Prosodie
269
St¨ uckweise Linearisierung Eine einfache Art der Stilisierung von Grundfrequenzverl¨ aufen ist die st¨ uckweise Linearisierung, wie sie in Abbildung 9.13 gezeigt ist. Um nicht zeitabh¨ angige, sondern eine silbenabh¨ angige Beschreibung zu erhalten, werden ucke Punkte auf der F0 -Kurve in der Mitte der Silbenkerne durch Geradenst¨ miteinander verbunden. Der stilisierte F0 -Verlauf weicht in dieser Abbildung teilweise deutlich vom nat¨ urlichen ab. Zwei Signale, von denen das eine mit dem stilisierten und das andere mit dem nat¨ urlichen F0 -Verlauf erzeugt wird, unterscheiden sich geh¨ orm¨ assig jedoch nur wenig. 1 0 −1
0
0.5
1
1.5
2
[s]
2.5
150 [Hz] 100
Sie
50
0
0
er−
hiel−
0.5
ten
bei ih− rem
1
Zug
durch die
1.5
Stra−
2
ssen
[s]
2.5
Abbildung 9.13. St¨ uckweise linear approximierter Verlauf der Grundfrequenz in der ers-
ten Phrase des Sprachsignals von Abbildung 9.12. Dieser Verlauf entsteht, indem die Punkte auf der Grundfrequenzkurve in der Mitte der Silbenkerne durch Geraden miteinander verbunden werden.
Silbensynchrone Abtastung Je nach Art der Grundfrequenzsteuerung ist es nicht n¨ otig, dass die Stilisierung den Grundfrequenzverlauf auf wenige Parameter reduziert. Gewisse Ans¨ atze erlauben eine beliebige Darstellung, solange sie von der absoluten Zeit unabh¨ angig ist. Dies trifft insbesondere f¨ ur die im Abschnitt 9.3.2.4 beschriebene Art der Grundfrequenzsteuerung zu. Um bei der Stilisierung der Grundfrequenzverl¨ aufe zwar die gew¨ unschte Unabh¨ angigkeit von der absoluten Zeit zu erreichen, aber gleichzeitig m¨ oglichst wenig Information zu verlieren, kann (nach der Interpolation zum Auff¨ ullen der L¨ ucken zwischen den stimmhaften Segmenten) aus der zeitsynchron abgetasteten Folge eine silbensynchron abgetastete Folge erzeugt werden. So kann beispielsweise ein Grundfrequenzverlauf, wie in Abbildung 9.14 gezeigt, in Silben unterteilt, und der Verlauf innerhalb jeder Silbe durch eine feste Anzahl St¨ utzwerte (¨ ublicherweise drei bis f¨ unf) beschrieben werden.
270
9. Sprachsynthese: Phonoakustische Stufe
1 0 −1
0
0.5
1
1.5
2
[s]
2.5
150 [Hz] 100
Sie
50
0
er−
hiel−
0
ten
bei ih− rem
0.5
Zug
1
durch die
Stra−
1.5
2
ssen
[s]
2.5
Abbildung 9.14. Silbensynchrone Abtastung des Grundfrequenzverlaufs. Die stimmhaf-
ten Segmente sind im Grundfrequenzverlauf blau gezeichnet und die stimmlosen Segmente sind linear interpoliert. Je f¨ unf Abtastwerte pro Silbe sind mit Kreisen markiert. Der letzte Abtastwerte einer Silbe f¨ allt mit dem ersten der n¨ achsten Silbe zusammen.
9.3.2.3 Linearer Ansatz der Grundfrequenzsteuerung Aus dem letzten Abschnitt geht hervor, dass Grundfrequenzverl¨ aufe ziemlich grob approximiert werden k¨ onnen, ohne dass sich der H¨ oreindruck wesentlich ver¨ andert. Insbesondere leidet die wahrgenommene Nat¨ urlichkeit der Sprechmelodie kaum h¨ orbar, wenn der Grundfrequenzverlauf zwischen den Silben durch Geradenst¨ ucke ersetzt wird, wie dies Abbildung 9.13 zeigt. F¨ ur einen Satz mit zwei Phrasen ist ein so schematisierter Grundfrequenzverlauf in Abbildung 9.15 dargestellt. Diese Darstellung suggeriert, dass ein Grundfrequenzverlauf als Deklinationsgerade aufgefasst werden kann, von welcher die Grundfrequenz der Silbenkerne mehr oder weniger stark abweicht. Diese Abweichung wird auf den Einfluss der linguistischen Faktoren zur¨ uckgef¨ uhrt. F0
1
2
3
4
1. Phrase
5
6
1
2
3
4
5
6
7
Silbennummer
2. Phrase
Abbildung 9.15. Grob schematisierter Grundfrequenzverlauf eines Satzes mit zwei Phra-
sen: Die Punkte stellen die Mitte der Silbenkerne dar und zeigen die Abweichung von der Deklinationsgeraden.
9.3
Steuerung der Prosodie
271
F¨ ur eine Phrase kann die Grundfrequenz der Silbenkerne in Funktion der uckt werden mit: Silbennummer j somit ausgedr¨
j−1 F˜0 (j) = Fa + Fd + FΔ J
(164)
Dabei bezeichnen J die Phrasenl¨ ange in Silben, Fa die Frequenz der Deklinationsgeraden am Prasenanfang, Fd die Steigung der Deklinationsgeraden pro Phrase und FΔ die Abweichung der Grundfrequenz der Silbenkerne von der Deklinationsgeraden. Diese Beschreibung des Grundfrequenzverlaufs in Funktion der Silbennummer j ist von der Zeit und damit von der Lautdauer unabh¨ angig. Der mit der Formel (164) beschriebene schematische Grundfrequenzverlauf wird durch die Parameter Fa , Fd und FΔ bestimmt. Diese Parameter sind jedoch nicht konstant, sondern von diversen Einflussfaktoren abh¨ angig. Die Einflussfaktoren k¨ onnen als Regeln aufgeschrieben werden, wie Tabelle 9.5 zeigt. Ein Teil dieser Regeln beschreibt, wie die linguistischen Faktoren die Deklination beeinflussen. Die andern Regeln dr¨ ucken aus, welchen Einfluss die linguistischen Faktoren auf FΔ , die Abweichung der Grundfrequenz von der Deklination, aus¨ uben. Tabelle 9.5. Beispiele von Grundfrequenzregeln
RF1:
Am Anfang einer progredienten Phrase ist die Grundfrequenz p1 .
RF2:
Am Anfang einer terminalen Phrase ist die Grundfrequenz p2 .
RF3:
In einer progred. Phrase ist die Steigung der Grundfreq.
RF4:
In einer terminalen Phrase ist die Steigung der
RF5:
oht. Hat eine Silbe die Akzentst¨ arke 1, dann wird F0 um p5 erh¨
RF6:
Hat eine Silbe die Akzentst¨ arke 2, dann wird F0 um p6 erh¨ oht.
RF7:
F0 der letzten Silbe einer Terminalphrase wird um p7 erh¨oht.
.. .
j−1 J p3 . Grundfreq. j−1 J p4 .
Mit Hilfe der Regelparameter pi kann nun die mit der Formel (164) gesch¨ atzte uckt werden: Grundfrequenz der j -ten Silbe wie folgt ausgedr¨
F˜0 (j) = c1 p1 + c2 p2 + j−1 (165) J (c3 p3 + c4 p4 ) + c5 p5 + · · · t j−1 j−1 t = c1 c2 J c3 J c4 c5 . . . · [p1 p2 p3 p4 p5 . . .] = c p Die Gr¨ ossen pi k¨ onnen anhand einer Sammlung von nat¨ urlichen Sprachsignalen ermittelt werden. Dazu wird f¨ ur jeden Silbenkern der Grundfrequenzwert
272
9. Sprachsynthese: Phonoakustische Stufe
F0 gemessen und zusammen mit dem Phrasentyp, der Silbennummer, der Akzentst¨ arke und den weiteren Regelbedingungen in einer Tabelle eingetragen. F¨ ur den Beispielsatz im Abschnitt 9.3.1 mit der phonologischen Darstellung (P) zi: Er-[1]hi:l-tn #{2} (P) ba
9.3
Steuerung der Prosodie
273
Tabelle 9.6. Gemessene Grundfrequenzwerte f¨ ur die Silbenkerne des Satzes: “Sie erhielten
bei ihrem Zug durch die Strassen Zulauf von Pekinger B¨ urgern.” zusammen mit den sie beeinflussenden linguistischen Faktoren
F0 [Hz]
Phrasentyp Silben- Akzent Akzent . . . progred. terminal nummer 1 2
98.5
1
0
01
0
0
104.9
1
0
02
0
0
132.8
1
0
03
1
0
125.0
1
0
04
0
0
90.1
1
0
05
0
0
90.2
1
0
06
0
0
89.8
1
0
07
0
0
136.7
1
0
08
1
0
95.1
1
0
09
0
0
87.3
1
0
10
0
0
109.4
1
0
11
1
0
110.7
1
0
12
0
0
140.6
0
1
01
1
0
112.3
0
1
02
0
0
95.7
0
1
03
0
0
97.5
0
1
04
0
1
100.9
0
1
05
0
0
89.1
0
1
06
0
0
89.8
0
1
07
1
0
75.0
0
1
08
0
0
9.3.2.4 Steuerung der Grundfrequenz mit einem neuronalen Netz Wie bei der Dauersteuerung kann man auch f¨ ur die Grundfrequenzsteuerung ein neuronales Netz einsetzen, um die Transformation der linguistischen Faktoren in die Grundfrequenz durchzuf¨ uhren. Aus zwei Gr¨ unden ist es jedoch nicht sinnvoll, dabei den in Abbildung 9.15 illustrierten Ansatz zur Modellierung des Grundfrequenzverlaufes anzuwenden:
1. Die in Abbildung 9.15 illustrierte Modellvorstellung beruht auf der Anaherung durch eine nahme, dass der F0 -Verlauf jeder Phrase in erster N¨ Deklinationsgerade beschrieben werden kann. Betrachtet man jedoch F0 Verl¨ aufe nat¨ urlicher S¨ atze, dann zeigt sich, dass eine so stereotype N¨ a-
274
9. Sprachsynthese: Phonoakustische Stufe
S1 S2 S3 S4 S5 S6 S7 S8 S9 S10 . . . binäre Codierung
neuronales Netz analoge Werte
F0
6. Silbe t Abbildung 9.16. Mit einem neuronalen Netz kann f¨ ur eine Silbe der Grundfrequenzver-
lauf erzeugt werden. Als Eingabe ben¨ otigt das Netz daf¨ ur nebst den Einflussfaktoren der aktuellen Silbe auch die wichtigsten Einflussfaktoren der benachbarten Silben.
herung den Variantenreichtum nat¨ urlicher F0 -Verl¨ aufe nicht ad¨ aquat beschreibt. Man darf also diese Schematisierung beim Einsatz eines neuronalen Netzes nicht anwenden, sondern muss es so einsetzen, dass es nicht unn¨ otig eingeschr¨ ankt wird. an2. Die in Abbildung 9.13 dargestellte Approximation des F0 -Verlaufs ver¨ dert zwar bei vielen l¨ angeren S¨ atzen den H¨ oreindruck nicht wesentlich. Bei sehr kurzen S¨ atzen mit nur einer oder zwei Silben ist diese Approximation verst¨ andlicherweise jedoch zu grob. Es ist deshalb zweckm¨ assig, nicht bloss einen F0 -Wert pro Silbe zu betrachten, sondern mehrere, wie dies in Abbildung 9.14 gezeigt wird. Das neuronale Netz kann so auch den Verlauf der Grundfrequenz innerhalb einer Silbe lernen. aufen ist jedoch Der oben erw¨ ahnte Variantenreichtum bei nat¨ urlichen F0 -Verl¨ nicht beliebig, sondern weist eine wichtige Charakteristik auf: Die H¨ ohe der Grundfrequenz ist an Satzanf¨ angen recht unterschiedlich und nicht linguistisch begr¨ undbar (d.h. prim¨ ar durch die Intention und die Gewohnheit des Sprechers gegeben). Der weitere Verlauf ist dann, wenn man von den Akzenteinfl¨ ussen absieht, jedoch ziemlich gleichm¨ assig. Es stellt sich also die Frage, wie das neuronale Netz zu konzipieren ist und welche Eingangsinformationen es ben¨ otigt, um die Charakteristik des Grundfrequenzverlaufs zu lernen. In der Gruppe f¨ ur Sprachverarbeitung der ETH Z¨ urich ist diese Frage eingehend untersucht worden. Dabei hat sich der in Abbildung 9.16 dargestellte Ansatz als geeignet erwiesen.
9.3
Steuerung der Prosodie
275
Tabelle 9.7. Codierung der Einflussfaktoren auf die Grundfrequenz f¨ ur die aktuelle Silbe
und f¨ ur Kontextsilben. Zur aktuellen Silbe z¨ ahlt auch eine eventuell rechts davon stehende Phrasengrenze. F¨ ur Silben, die am Anfang oder am Ende eines Satzes stehen, kann ein Teil der Kontextsilben ausserhalb des Satzes liegen, was dem neuronalen Netz selbstverst¨ andlich mitgeteilt werden muss (hier mit dem 2-Bit-Akzent-Code 00).
Einflussfaktor
Werte
Anzahl
Bits
Satztyp Phrasentyp Phrasengrenze Aktuelle Silbenakzent Silbe Silbenkern
Aussage | Befehl | Frage progredient | terminal 0 | 1 | 2 | 3 | 4 | keine 1 | 2 | 3 | 4 | unakzentuiert Lang- | Kurzvokal | Diphthong offener | geschlossener Laut Kons. v. Kern stimmhaft | stimmlos | – Kons. n. Kern stimmhaft | stimmlos | – Silbenlage vor | nach Phrasenhauptakzent
3 2 6 5 3 2 3 3 2
2 1 3 3 2 1 2 2 1
Kontext- Phrasengrenze 0 | 1 | 2 | andere Silben Akzentst¨ arke Silbe nicht im Satz | 1 | 2 | andere
4 4
2 2
Anzahl diskrete Werte bei k Kontextsilben
29+8k 17+4k
Weil diejenigen Einflussfaktoren, die sich stark auf die Grundfrequenz einer Silbe auswirken, auch in den benachbarten Silben noch ihre Wirkung zeigen, braucht das neuronale Netz nicht nur Information u ¨ ber die aktuelle Silbe, sondern auch u ¨ ber die wichtigsten Einflussfaktoren der benachbarten Silben. Wie die Tabelle 9.4 zeigt, sind alle aufgef¨ uhrten Einflussfaktoren diskret. Die Eingangswerte k¨ onnen deshalb bin¨ ar codiert werden, wie dies in Tabelle 9.7 f¨ ur die aktuelle Silbe und f¨ ur Kontextsilben gezeigt wird. F¨ ur 6 Kontextsilben wird der Eingangsvektor des neuronalen Netzes somit 41 Bits lang. oglich. Es Theoretisch sind also 241 = 2.2 · 1012 Eingangskombinationen m¨ stellt sich also die Frage, wie gross ein Trainingsset sein muss, um f¨ ur die zu erlernende Transformation eine sinnvolle Abdeckung mit St¨ utzwerten zu erhalten. Auch wenn nur 1 Promille der m¨ oglichen Kombinationen im Trainingsset vorhanden sein m¨ ussten, dann w¨ aren immer noch so viele Trainingsvektoren n¨ otig, dass die gesprochenen Silben, auf die sie sich beziehen, zusammen mehrere zehntausend Stunden lang w¨ aren. Es hat sich jedoch gezeigt, dass Sprachsignale im Umfang von ein bis zwei Stunden ausreichen, damit das Netz die wesentlichen Eigenheiten der Transformation lernen kann. aufe produzieren soll, die, abgesehen von Weil das neuronale Netz F0 -Verl¨ den Akzenteinfl¨ ussen, ziemlich glatt sind und die insbesondere nicht springen d¨ urfen, muss es auch Information u ¨ ber die Grundfrequenz mindestens
276
9. Sprachsynthese: Phonoakustische Stufe
41+5 20 Verzögerung
10
5
Abbildung 9.17. Dreischicht-Perzeptron f¨ ur die Bestimmung von 5 St¨ utzwerten des
Grundfrequenzverlaufes der aktuellen Silbe. Das Netz hat 41+5 Eing¨ ange und 5 Ausg¨ ange, die u ogerung auf die Eing¨ ange zur¨ uckgef¨ uhrt werden. ¨ber eine Verz¨
einer Nachbarsilbe haben. Im Gegensatz zu den linguistischen Einflussfaktoren kann die Information u ¨ ber die Grundfrequenz einer Nachbarsilbe nicht aus der phonologischen Darstellung abgeleitet werden. Mit der Annahme, dass die Grundfrequenzverl¨ aufe der Silben in chronologischer Reihenfolge generiert werden, ist jeweils der Grundfrequenzverlauf der Vorg¨ angersilbe bekannt und kann vom neuronalen Netz als Eingabe f¨ ur die aktuelle Silbe benutzt werden. Dies entspricht einer R¨ uckkoppelung der Netzausg¨ ange u ogerungsglied, wie dies Abbildung 9.17 zeigt. ¨ ber ein Verz¨ Die Vorteile der L¨ osung mit dem neuronalen Netz sind, dass erstens der Grundfrequenzverlauf nur minimale Stilisierungsverluste erf¨ ahrt, und zweitens u ange der lin¨ berhaupt keine Annahmen hinsichtlich der Zusammenh¨ guistischen Faktoren untereinander und mit der Grundfrequenz n¨ otig sind. Es lassen sich mit diesem Ansatz Grundfrequenzverl¨ aufe erzeugen, die von nat¨ urlichen kaum zu unterscheiden sind.
9.3.3 Intensit¨ atssteuerung Die Aufgabe der Intensit¨ atssteuerung ist es, f¨ ur jeden Laut die richtige Lautst¨ arke zu bestimmen. Bevor man daran geht, eine Intensit¨ atssteuerung zu konzipieren, sollte man sich die folgenden Beobachtungen vergegenw¨ artigen: Die vom menschlichen Ohr wahrgenommene Lautheit ist nicht nur von der Signalleistung abh¨ angig, sondern auch von der spektralen Zusammensetzung des Signals. Da Laute sehr unterschiedliche Spektren haben, werden vom Ohr unterschiedliche Laute mit der gleichen Signalleistung nicht als gleich laut wahrgenommen.
9.3
Steuerung der Prosodie
277
1
0
−1 −10 [dB] −20
>di
S
1.8
>di
>t r
a:
2
S
>t r
s 2.2
a:
=n [s]
s
2.4
=n
−30 −40
1.8
2
2.2
[s]
2.4
Abbildung 9.18. Oben ist der Ausschnitt “die Strassen” des Sprachsignals von Abbildung
9.9 dargestellt und darunter der Intensit¨ atsverlauf ermittelt als RMS u ¨ber 30 ms.
Beim H¨ oren nat¨ urlicher Sprachsignale empfinden wir die Lautheit benachbarter Laute als ausgewogen. Wir haben beispielsweise nicht den Eindruck, dass der Laut [a:] des Signals in Abbildung 9.18 lauter ist als der nachfolgende Laut [s], obwohl der RMS einen Unterschied von gut 10 dB anzeigt. H¨ oren wir die Signalausschnitte mit diesen Lauten jedoch isoliert, dann h¨ oren wir den Laut [a:] deutlich lauter als den Laut [s]. In Sprachsignalen geht in der Regel ein Laut kontinuierlich in den n¨ achsten u ¨ ber, sowohl hinsichtlich der spektralen Zusammensetzung als auch bez¨ uglich der Signalleistung. Kontinuierlich muss jedoch nicht monoton und schon gar nicht gradlinig heissen. Das Signal in Abbildung 9.18 zeigt beispielsweise klar, dass die Signalleistung in den Laut¨ uberg¨ angen teilweise geringer ist als in den beiden benachbarten Lauten. Wenn der spektrale ¨ und der leistungsm¨ assige Ubergang nicht richtig aufeinander abgestimmt sind, dann nehmen wir im Signal etwas St¨ orendes wahr. Eine gute zeitliche ¨ Abstimmung dieser Uberg¨ ange zu gew¨ ahrleisten ist eines der Hauptprobleme bei der Intensit¨ atssteuerung. Der Intensit¨ atsunterschied zwischen Lauten wie [a:] und [s] (oder allgemein zwischen Vokalen und Frikativen) ist von Sprecher zu Sprecher recht verschieden. Obwohl das Ver¨ andern der Signalintensit¨ at an sich eine ¨ ausserst simple Aufgabe ist, entpuppt sich die Intensit¨ atssteuerung f¨ ur die Sprachsynthese als recht vielschichtiges Problem. Beim L¨ osen dieses Problems m¨ ussen die obigen Beobachtungen ber¨ ucksichtigt werden, was verst¨ andlicherweise ziemlich schwierig ist. Insbesondere gelingt es nur mit grossem Aufwand, eine Intensi-
278
9. Sprachsynthese: Phonoakustische Stufe
t¨ atssteuerung zu realisieren, die u ¨ berhaupt besser ist als das Beibehalten der Originalintensit¨ at der Grundelemente. Einfache Ans¨ atze zur Intensit¨ atssteuerung verschlechtern die Qualit¨ at des synthetischen Signals hingegen klar. Die Grundelemente mit ihrer Originalintensit¨ at zu verwenden ist aber nur dann eine gute L¨ osung, wenn die zu verkettenden Segmente aus subjektiv gleich lauten Sprachsignalen extrahiert worden sind. So ist beispielsweise f¨ ur Diphone gew¨ ahrleistet, dass die Signalleistungen der beiden Laute des Diphons im geh¨ orm¨ assig richtigen Verh¨ altnis zueinander stehen und auch der ¨ Ubergang nat¨ urlich abgestimmt ist. Es manifestiert sich hier ein interessantes Ph¨ anomen: Bei der Sprachsynthese nach dem Verkettungsansatz ist die Intensit¨ at eine im Vergleich zu Grundfrequenz und Dauer viel weniger stark wahrgenommene prosodische Gr¨ osse. Trotzdem ist es recht schwierig, eine Intensit¨ atssteuerung zu verwirklichen, die das synthetisierte Sprachsignal merklich verbessert. Sprachsynthesesysteme, die auf der Verkettung von Sprachsegmenten beruhen, haben deshalb in der Regel keine Intensit¨ atssteuerung.5
9.3.4 Umsetzung der prosodischen Gr¨ ossen auf die Laute Da die Sprachsignalproduktionskomponente f¨ ur jeden zu erzeugenden Laut otigt, stellt sich die Angaben zu Grundfrequenz, Dauer und Intensit¨ at6 ben¨ noch die Frage, wie die silbenbezogenen Angaben der Grundfrequenz auf die Laute umzusetzen sind. ¨ Uber die Dauerwerte aller Laute sind auch die Dauern der Silben, der Phrasen und des ganzen Satzes gegeben. Damit l¨ asst sich die auf die Silben bezogene Grundfrequenz in eine Funktion der Zeit F0 (t) umrechnen. Mit F0 (t) und den Lautdauerwerten ist auch der Grundfrequenzverlauf jedes Lautes bekannt. 9.3.5 Prosodische Ver¨ anderung der Grundelemente Um die lautbezogene prosodische Information auf die Grundelemente u ¨ bertragen zu k¨ onnen, m¨ ussen innerhalb der Grundelemente die Lautgrenzen bekannt sein. Da die Grundelemente gew¨ ohnlich aus Sprachsignalen gewonnen werden, die in Laute segmentiert worden sind (siehe das Beispiel in Abbildung 3.14), sind die Lautgrenzen innerhalb der Grundelemente gegeben. Bei der Verkettung stossen stets zwei Grundelemente aneinander, die an der gemeinsamen Stossstelle den gleichen Laut haben. Der Laut [Y] an der Stoss5 Obwohl diese L¨ osung f¨ ur die Praxis der Sprachsynthese befriedigend sein mag, ist sie es in theoretischer Hinsicht mitnichten. Da aber noch keine wirklich befriedigende L¨ osung bekannt ist, muss das Problem als zurzeit ungel¨ ost gelten. 6
Falls mit einem Verkettungsansatz gearbeitet wird, dann wird die Intensit¨ at nicht gesteuert; vergl. Abschnitt 9.3.3
9.3
Steuerung der Prosodie
279
stelle der Diphone [fY] und [Yn] im Wort [fYnf] entsteht aus den Diphonteilen ass gilt dies auch f¨ ur gr¨ ossere Grundelemente, an de[fY]b und [Yn]a . Sinngem¨ nen drei oder mehr Laute beteiligt sind. Damit ergibt sich f¨ ur die Ver¨ anderung der prosodischen Gr¨ ossen der Grundelemente das folgende Vorgehen: a) Dauer: Da die Lautgrenzen in den Grundelementen gegeben sind, kann die Dauer d eines Lautes aus der Dauersteuerung direkt auf die betreffenden Abschnitte u ¨ bertragen werden. Mit der LPC-Analyse-Synthese kann dies so bewerkstelligt werden, dass bei der LPC-Synthese der Grundelementteile [fY]b und [Yn]a mit den Originaldauern db bzw. da ein Signalabschnitt mit der Synthesel¨ ange Ns = Na d/(da+db ) erzeugt wird, wobei Na die Analysel¨ ange (die Fensterverschiebung) ist. b) Grundfrequenz: Die Grundfrequenzsteuerung liefert f¨ ur jeden Laut den entsprechenden Ausschnitt des Grundfrequenzverlaufes. F¨ ur stimmlose Laute ist diese Grundfrequenzinformation bedeutungslos. F¨ ur die stimmhaften Laute wird f¨ ur jeden LPC-Syntheseabschnitt der Abstand der Impulse des Anregungssignals aus dem entsprechenden Ausschnitt des Grundfrequenzverlaufs bestimmt. c) Intensit¨ at: Aus den in Abschnitt 9.3.3 genannten Gr¨ unden entf¨ allt bei der Verkettungssynthese die Intensit¨ atssteuerung. Selbstverst¨ andlich kann f¨ ur die prosodische Ver¨ anderung der Grundelemente statt der LPC-Methode auch die Fourier-Analyse-Synthese oder die PSOLAMethode (siehe Abschnitt 9.2.3.2 bzw. 9.2.3.3) eingesetzt werden. Hinsichtlich Rechenaufwand und Signalqualit¨ at ist letztere besonders vorteilhaft.
Kapitel 10 Einf¨ uhrung in die Spracherkennung
10
10
10 10.1 10.2 10.3 10.4 10.5 10.6 10.6.1 10.6.2 10.7 10.7.1 10.7.2 10.7.3 10.7.4 10.7.5
Einf¨ uhrung in die Spracherkennung Zur Geschichte der Spracherkennung....................... Ans¨ atze zur Spracherkennung................................ Probleme der Spracherkennung.............................. Anwendungen ................................................... Einteilung der Spracherkennungssysteme .................. Evaluation der Erkennungsleistung ......................... Wortfehlerrate .................................................. Algorithmus zur Bestimmung der Wortfehlerrate ........ Merkmalsextraktion ............................................ Mel-Frequency Cepstral Coefficients (MFCC) ............ Gegl¨ attete Mel-Spektren von Vokalen und Frikativen... Plosivlaute im gegl¨ atteten Mel-Spektrogramm ........... Spektrale Variabilit¨ at .......................................... Rekonstruktion des Signals ...................................
283 285 286 289 290 292 293 293 294 296 297 298 300 300
10 Einf¨ uhrung in die Spracherkennung Dem Menschen f¨ allt das Verstehen von Sprache im Allgemeinen leicht. Er kann sogar unter schwierigen Umst¨ anden relativ m¨ uhelos kommunizieren und gew¨ ohnt sich schnell an eine aussergew¨ ohnliche Stimme oder Sprechweise. Auch in einer ung¨ unstigen akustischen Umgebung ist eine Verst¨ andigung m¨ oglich, also wenn es beispielsweise l¨ armig ist oder die Sprache u ¨ ber eine schlechte Telefonverbindung u ¨ bertragen wird. Angesichts der menschlichen F¨ ahigkeiten ist man geneigt anzunehmen, dass auch die maschinelle Spracherkennung kein so grosses Problem sein sollte. Warum das Gegenteil der Fall ist und welche Ans¨ atze zur L¨ osung des Problems existieren, wird in diesem und den folgenden Kapiteln gezeigt.
10.1 Zur Geschichte der Spracherkennung Die Forschung auf dem Gebiet der automatischen Spracherkennung blickt bereits auf eine u ahrige Geschichte zur¨ uck. Nachdem in den vierziger ¨ber 50-j¨ Jahren bereits ein Klangspektrograph f¨ ur die Visualisierung von Schallsignalen und eine akustische Theorie der menschlichen Sprachproduktion entwickelt wurden, wurden in den f¨ unfziger Jahren in den USA erste Versuche unternommen, einzelne Ziffern oder einsilbige W¨ orter eines einzelnen Sprechers zu erkennen. Diese Systeme basierten entweder auf Zeitbereichsmerkmalen oder auf der Analyse der spektralen Resonanzen. Das Spektrum wurde dabei von einer analogen Filterbank erzeugt. In den sechziger Jahren schlug Taras Vintsyuk in der damaligen Sowjetunion erstmals die Verwendung der dynamischen Programmierung f¨ ur den Vergleich von Sprachmustern vor. Diese Publikation wurde im Westen aber erst in den achtziger Jahren zur Kenntnis genommen, lange nachdem westliche Forscher ahnliche Ideen vorgeschlagen und implementiert hatten. Gegen Ende der sech¨ ziger Jahre wurden an der Carnegie Mellon University (CMU) erste Versuche zur Erkennung kontinuierlich gesprochener Sprache durchgef¨ uhrt. Die siebziger Jahre waren sodann von einigen Meilensteinen in der Spracherkennung gekennzeichnet. So wurden mittels LPC-Analyse und dynamischer Zeitanpassung (DTW) leistungsf¨ ahige, sprecherabh¨ angige und -unabh¨ angige Einzelworterkenner entwickelt. Ein wichtiges Ereignis war der Einstieg von IBM in die Spracherkennung. Ein weiterer Meilenstein in den siebziger Jahren war das vom Department of Defense der USA ausgeschriebene ARPAProjekt f¨ ur die Erforschung von sprachverstehenden Systemen. Die Ziele dieses Projektes waren enorm hoch gesteckt, ging es doch darum, kontinuierlich gesprochene S¨ atze aus einem Vokabular von 1000 W¨ ortern, jedoch mit einer eingeschr¨ ankten Syntax, nicht nur sprecherunabh¨ angig zu erkennen, sondern
10.1
284
10. Einf¨ uhrung in die Spracherkennung
auch zu verstehen. Die realisierten Systeme basierten alle stark auf Ans¨ atzen der k¨ unstlichen Intelligenz (KI) und gingen von einem linguistischen Modell mit verschiedenen Ebenen aus. Das einzige System, das die hoch gesteckten Ziele erreichte, war das sogenannte HARPY-System der Carnegie Mellon University (CMU). ¨ Die achtziger Jahre brachten unter anderem den Ubergang von der Erkennung mittels Sprachmustervergleich (DTW) zu den statistischen Ans¨ atzen. Dabei hat vor allem der Ansatz mit Hidden-Markov-Modellen (HMM) zur Beschreibung der Variabilit¨ at der Sprachsignale eine zentrale Bedeutung erlangt und bis heute behalten. Auch wurden zunehmend statistische Sprachmodelle verwendet, nachdem diese schon Mitte der siebziger Jahre bei IBM erstmals untersucht wurden. Ein weiterer Impuls in der Spracherkennung ging wiederum vom Department of Defense der USA aus, das ein grosses Forschungsprogramm lancierte mit dem Ziel, Spracherkenner f¨ ur kontinuierliche Sprache zu entwickeln, die f¨ ur Datenbankabfragen eingesetzt werden k¨ onnen. Die vorgesehenen Abfragen umfassten ein Vokabular von etwa 1000 W¨ ortern. Das bekannteste System, das aus diesem Forschungsprogramm hervorging, war das von CMU entwickelte SPHINX-System. Seit Ende der achtziger Jahre besch¨ aftigen sich die Forscher verst¨ arkt mit Spracherkennung f¨ ur schwierige Anwendungsszenarien. Dazu geh¨ ort vor allem die Spracherkennung u ¨ ber das Telefon, in lauter Umgebung (Auto, Flugzeug) sowie die Erkennung von kontinuierlicher Spontansprache. Mit dieser neuen Ausrichtung hat auch die Entwicklung sprachbasierter Dialogsysteme zunehmende Bedeutung erlangt. Auf dem Gebiet der akustisch-phonetischen Modellierung wurde in den neunziger Jahren vor allem versucht, Hidden-Markov-Modelle und k¨ unstliche neuronale Netze in sogenannten hybriden Ans¨ atzen sinnvoll zu verkn¨ upfen. Andere Forschungsaktivit¨ aten gehen in Richtung Spracherkennung mit sehr grossem oder sogar offenem Vokabular sowie in Richtung Sprachmodellierung, die u ¨ ber einfache Wortfolgestatistiken hinausgeht. Seit Ende der neunziger Jahre dr¨ angen immer mehr Spracherkennungssysteme auf den Markt (v.a. Diktiersysteme, aber auch Spracheingabe f¨ ur Mobiltelefone, PDAs etc.). Zudem unterst¨ utzen auch immer mehr telefonbasierte Dienste gesprochene Eingaben. Im Forschungsbereich gehen die Anstrengungen derweil immer mehr in Richtung multimodale Systeme. Dabei handelt es sich um Systeme, die lautsprachliche mit anderen Eingabemedien (Gestik, Blickrichtung, Eingabe per Stift, Handschrifterkennung etc.) kombinieren. Von besonderem Interesse ist dabei die audiovisuelle Spracherkennung, die nebst dem Sprachsignal das Bild der bewegten Lippen in den Erkennungsprozess einbezieht.
10.2 Ans¨ atze zur Spracherkennung
285
10.2 Ans¨ atze zur Spracherkennung Grunds¨ atzlich m¨ ochte man, dass die automatische Spracherkennung das zustande bringt, was der Mensch leistet. Es stellt sich somit die Frage, ob das Problem der Spracherkennung zu l¨ osen ist, indem man das Vorgehen am Menschen orientiert. Leider ist dies kein gangbarer Weg, weil auch heute noch das Wissen u uckenhaft ¨ ber die sprachliche Kommunikation der Menschen sehr l¨ ist. So ist bis heute noch nicht vollst¨ andig gekl¨ art, welche Mechanismen sich nur schon im Innenohr abspielen. Und u ¨ ber die Weiterverarbeitung der Information im Gehirn herrscht noch weitgehend Unklarheit. Man kann zwar mit Signalanalysemethoden viele Eigenschaften von Sprachsignalen ermitteln, aufgrund welcher Eigenschaften aber der Mensch nur schon die Sprachlaute unterscheidet, ist bestenfalls ansatzweise bekannt. So lehrt die Phonetik, dass anhand der ersten beiden Formanten die Vokale zu unterscheiden seien (siehe Abbildung 1.9). Es trifft zwar zu, dass man aus Vokalen, die ein Sprecher einzeln und klar artikuliert hat, Formanten bestimmen kann, die in etwa den Angaben in Abbildung 1.9 entsprechen. Je nach Sprecher bzw. Sprecherin sind jedoch betr¨ achtliche Unterschiede festzustellen, sodass sich ¨ die Frequenzbereiche der Formanten stark u ¨ berschneiden (diese Uberschneidung ist in Abbildung 1.9 nicht ersichtlich; es sind nur die Durchschnittswerte dargestellt). Allein aufgrund der Formantfrequenzen sind somit keine zuverl¨ assigen Aussagen u oglich. ¨ ber die Laute m¨ In den Anf¨ angen der Spracherkennung (vergl. Abschnitt 10.1) war man der Ansicht, dass aufgrund der Physiologie des menschlichen Ohres das Spektrogramm des Sprachsignals direkt verrate, was ein Sprecher gesprochen hat. Verbreitet war sogar die Meinung, dass das Spracherkennungsproblem weitgehend gel¨ ost w¨ are, wenn die Fouriertransformation gen¨ ugend schnell berechnet werden k¨ onnte. Heute wissen wir, dass dies ein Trugschluss war. Es hat sich vielmehr gezeigt, dass Sprachlaute und damit auch gr¨ ossere sprachliche Einheiten wie Silben, W¨ orter oder S¨ atze im Sprachsignal keine eindeutigen Identifikationsmerkmale aufweisen. Im Wesentlichen ist dies deshalb nicht der Fall, weil sich einerseits die Laute gegenseitig beeinflussen (Koartikulation) und andererseits das Sprachsignal nicht nur die linguistische ¨ Information beinhaltet, sondern auch durch den Sprecher, den Ubertragungskanal des Signals etc. beeinflusst wird (vergl. Abschnitt 2.1). Die charakteristischen Merkmale der Laute variieren so stark, dass die Laute bei weitem nicht eindeutig unterschieden werden k¨ onnen. Es ist somit nicht m¨ oglich, sprachliche Einheiten direkt zu erkennen, also anhand eindeutiger Merkmale. Deshalb haben sich f¨ ur die Spracherkennung, die beispielsweise die W¨ orter des Vokabulars V = {v1 , v2 , . . . , v|V | } zu erkennen bzw. zu unterscheiden hat, die beiden folgenden grundlegenden Ans¨ atze herauskristallisiert:
10.2
286
10. Einf¨ uhrung in die Spracherkennung
Spracherkennung mittels Mustervergleich: Der Erkenner verf¨ ugt f¨ ur jedes Wort des Vokabulars u aussertes ¨ ber ein gesprochenes Muster. Um ein ge¨ Wort zu erkennen, vergleicht er dieses Wort mit jedem Muster. Es gilt das¨ jenige Wort als erkannt, dessen Muster mit der zu erkennenden Ausserung am besten u ¨ bereinstimmt. Statistischer Ansatz der Spracherkennung: Der Erkenner verf¨ ugt f¨ ur jedes Wort des Vokabulars u ¨ ber eine statistische Beschreibung von dessen akustischer Realisierung. Es gilt dasjenige Wort als erkannt, dessen statistische ¨ Beschreibung am besten auf die zu erkennende Ausserung passt. F¨ ur beide Ans¨ atze gilt somit, dass die n¨ otigen Muster bzw. statistischen Beschreibungen vorliegen m¨ ussen, bevor ein Spracherkenner eingesetzt werden kann. Soll ein Spracherkenner beispielsweise die Ziffern “Null” bis “Neun” erkennen, dann m¨ ussen zuerst entsprechende Sprachsignale aufgenommen und daraus f¨ ur jede Ziffer entweder ein Muster oder eine statistische Beschreibung ermittelt werden. Dies wird im Folgenden als das Training des Spracherkenners bezeichnet. Die Spracherkennung mit Mustervergleich und die statistische Spracherkennung werden in den Kapiteln 11 und 12 behandelt.
10.3
10.3 Probleme der Spracherkennung Das Sprachsignal kann als Ausgangssignal eines Sprechprozesses betrachtet werden, auf den eine Vielzahl von Einfl¨ ussen einwirken (siehe Abschnitt 2.1): die Physiologie des Vokaltraktes (die wiederum vom Geschlecht, vom Alter und vom Gesundheitszustand der sprechenden Person abh¨ angt), die Herkunft ¨ (Dialekt), die psychische Verfassung usw. Eine gesprochene Ausserung enth¨ alt also nicht nur die Information, was gesagt wurde, sondern auch Information u uber hinaus schlagen sich auch die ¨ ber die Person und ihre Sprechweise. Dar¨ akustische Umgebung (Ger¨ auschkulisse im B¨ uro, auf dem Flughafen, auf der ¨ Strasse etc.) und der Ubertragungsweg (Raumakustik, Telefon) im Sprachsignal nieder. Aus der Sicht der Spracherkennung, die ja nur am linguistischen Inhalt interessiert ist, sind all diese Einfl¨ usse St¨ orungen. Sie bewirken, dass Sprachsignale auch dann sehr unterschiedlich sind, wenn dasselbe gesagt wird. Die Variabilit¨ at hat im Wesentlichen vier Aspekte: Die Lautsprache hat grunds¨ atzlich etwas Zuf¨ alliges an sich, weil keine Person etwas zweimal so sagen kann, dass die Sprachsignale gleich sind. Verschiedene Personen haben unterschiedliche Stimmen und Sprechgewohnheiten.
10.3 Probleme der Spracherkennung
287
Die akustische Umgebung und die Schall- bzw. Signal¨ ubertragung schlagen sich im Sprachsignal nieder. Die lautsprachlichen Grundeinheiten beeinflussen sich gegenseitig (Koartikulation). Das Ausmass der Variabilit¨ at in Sprachsignalen h¨ angt davon ab, ob und wie ausgepr¨ agt diese Aspekte vorliegen. So gibt es Personen, die mit relativ grosser Konstanz sprechen, z.B. professionelle Sprecher, w¨ ahrend die meisten Menschen die Prosodie nicht gut unter Kontrolle haben. Deutlich gr¨ osser als die individuelle Variabilit¨ at ist jedoch die mittlere Variabilit¨ at zwischen Personen. Im Sprachsignal zeigt sich die Variabilit¨ at unter anderem in den folgenden Merkmalen: Variation in der Dauer und der zeitlichen Struktur des Sprachsignals: Die Variation der Dauer eines Sprachsignals liegt f¨ ur dasselbe Wort oder denselben Satz etwa im Bereich 50–200 % der Normall¨ ange (mittlere Dauer). Die einzelnen Laute variieren dabei sehr unterschiedlich stark. So variiert z.B. die Dauer der Vokale viel st¨ arker als die Dauer der Plosive (Verschlusslaute). Variation der Lautst¨ arke: Die Intensit¨ at des Sprachsignals kann je nach Sprechweise (von murmeln bis schreien) und Abstand des Mikrophons vom Mund um mehrere Gr¨ ossenordnungen variieren. Variation der Grundfrequenz: Die individuelle Variation der Grundfrequenz betr¨ agt etwa eine Oktave. Insgesamt variiert die Grundfrequenz im Bereich zwischen etwa 50 Hz f¨ ur eine tiefe M¨ annerstimme bis 400 Hz f¨ ur eine hohe Kinderstimme. Variation der Lautcharakteristik: F¨ ur eine einzelne Person betrachtet ist die Koartikulation die haupts¨ achliche Ursache der Variation der Lautcharakteristik. Zwischen Personen spielt zudem die unterschiedliche Physiologie eine wichtige Rolle. Die Lautcharakteristik wird jedoch auch durch den ¨ Ubertragungsweg des Sprachsignals (Raumakustik, Telefon) beeinflusst. Variation der Lautfolge (Aussprachevarianten): Ein und dasselbe Wort wird je nach Sprecher oder Kontext unterschiedlich ausgesprochen. Dies kann verschiedene Gr¨ unde haben: • Freie Allophone werden unterschiedlich eingesetzt. So kann z.B. das
Phonem /r/ als Zungenspitzen-R (ein- oder mehrschl¨ agig), als gerolltes Z¨ apfchen-R oder als Reibe-R ausgesprochen werden. Da die Allophone des Phonems /r/ definitionsgem¨ ass deutsche W¨ orter nicht unterscheiden k¨ onnen (vergl. Abschnitt 1.2.1), m¨ ussen sie von einem Spracherkenner zwar nicht unterschieden werden. Sie k¨ onnen aber bewirken,
288
10. Einf¨ uhrung in die Spracherkennung
dass Sprachsignale desselben Wortes recht unterschiedlich sind. Trotzdem muss der Erkenner sie als das gleiche Wort erkennen. • Viel h¨ aufiger sind jedoch sogenannte Verschleifungen, die beim schnel-
len und eher ungenauen Sprechen die Regel sind: So wird beispielsweise das Wort “f¨ unf” statt korrekt als [fYnf] oft als [fYmf] oder auch als [fYmp
lekten erf¨ ahrt auch die Hochsprache bei vielen Leuten eine h¨ orbare Dialektf¨ arbung (z.B. Hochdeutsch von Schweizern gesprochen). Nebst der Variabilit¨ at des Sprachsignals muss ein Spracherkenner u.a. die folgenden Probleme bew¨ altigen k¨ onnen: W¨ orter ausserhalb des Vokabulars: Jeder Spracherkenner ist f¨ ur ein begrenztes Vokabular konzipiert. Falls dieses nicht sehr klein ist, kann vom Benutzer nicht erwartet werden, dass er weiss, welche W¨ orter dem System bekannt sind. So wird er ab und zu W¨ orter verwenden, die nicht zum Erkennervokabular geh¨ oren. Um ad¨ aquat auf solche Situationen reagieren zu k¨ onnen, sollte ein Spracherkennungssystem feststellen k¨ onnen, ob eine ¨ Ausserung zum Erkennervokabular geh¨ ort oder nicht. Fehlende Wortgrenzen: Im Sprachsignal sind in der Regel keine Wortgrenzen auszumachen. Der Spracherkenner kann also nicht zuerst die Wortgrenzen im Signal bestimmen und dann die W¨ orter einzeln erkennen. Die Wortlokalisierung und die Worterkennung bedingen sich also gegenseitig und m¨ ussen vom Erkenner deshalb gleichzeitig durchgef¨ uhrt werden. ¨ Lautsprachliche Ausserungen k¨ onnen mehrdeutig sein. So kann z.B. die richtig erkannte Wortfolge “drei hundert zehn drei zehn” die Zahlenfolge “3 100 10 3 10” bedeuten, aber auch “3 110 13” oder “300 10 3 10” etc. Bei der m¨ undlichen Kommunikation treten h¨ aufig sprachlich unkorrekte Wortfolgen, F¨ ullw¨ orter und Aussetzer auf. Ein Spracherkenner sollte auch daf¨ ur eine L¨ osung anbieten.
10.4 Anwendungen
289
10.4 Anwendungen Den Anwendungsm¨ oglichkeiten von Spracherkennungssystemen sind im Prinzip fast keine Grenzen gesetzt, da die Lautsprache f¨ ur den Menschen ein nat¨ urliches, m¨ achtiges und effizientes Kommunikationsmittel ist. In der Praxis sind die Anwendungsm¨ oglichkeiten jedoch immer noch recht beschr¨ ankt, weil die heutigen Spracherkennungssysteme vielen Anwendungssituationen nicht gen¨ ugen, insbesondere wenn die akustischen Bedingungen schwierig sind. Eine anspruchsvolle Anwendung von Spracherkennung sind Diktiersysteme. Solche Systeme sind zwar bereits auf dem Markt, der durchschlagende Erfolg ist aber bis heute ausgeblieben. Ein Grund daf¨ ur liegt bei der zu hohen Erkennungsfehlerrate, die nur durch eine zeitaufw¨ andige Adaption des Erkenners an die Stimme und Sprechweise einer einzelnen Person auf ein akzeptables Mass reduziert werden kann. Mit der verf¨ ugbaren Spracherkennungstechnik stehen jedoch bereits viele andere Anwendungsm¨ oglichkeiten offen. Eine wichtige Klasse von Anwendungen ist die Steuerung von Ger¨ aten per Stimme, wo andere Steuerungsm¨ oglichkeiten fehlen oder schwierig sind, z.B. weil die H¨ ande nicht frei sind oder die Augen auf etwas gerichtet bleiben m¨ ussen: Steuerung des Telefons, der Stereoanlage oder der Klimaanlage im Auto Bedienungshilfen f¨ ur Behinderte Bedienung von Ger¨ aten im Operationssaal oder im Dunkelraum Eingabe von medizinischen Befunden (Diagnose, Radiologie) Bedienung von Miniaturger¨ aten (Handys, PDAs, Fernbedienung) Eine sehr breite Palette von Anwendungsm¨ oglichkeiten f¨ ur Spracherkennungssysteme steht im Zusammenhang mit dem Telefon, wo nur f¨ ur triviale F¨ alle Alternativen zur menschlichen Stimme als Kommunikationsmittel existieren. Dies sind unter anderem: Alle Arten von automatisierten Auskunftssystemen u ¨ ber das Telefon (elektronisches Telefonbuch, Wetterbericht, Aktienkurse, Fahrplanauskunft) Automatisierte Telefondienste wie Teleshopping und Telebanking Automatisierte Anrufumleitung (Call Preselection) Intelligente Telefonbeantworter W¨ ahlen per Stimme Der Erfolg des Einsatzes von Spracherkennungssystemen in einer bestimmten Anwendung h¨ angt von einigen entscheidenden Punkten ab, von denen die wichtigsten in der folgenden Liste aufgef¨ uhrt sind:
10.4
290
10. Einf¨ uhrung in die Spracherkennung
1. Die Anwendung der Spracherkennung muss dem Benutzer einen echten Nutzen bringen. Dieser Nutzen kann z.B. eine neue Dienstleistung sein, eine gesteigerte Produktivit¨ at oder ein erh¨ ohter Bedienungskomfort. Auf alle F¨ alle gen¨ ugt das Neuartige der sprachlichen Eingabe nicht f¨ ur eine erfolgreiche Anwendung. 2. Der Spracherkenner muss eine gewisse Erkennungsrate erreichen. Beispielsweise muss ein Einzelworterkenner in einem Dialogsystem eine Erkennungsrate von mindestens 95 % aufweisen, damit er von den Benutzern als zuverl¨ assig eingestuft wird. Denn f¨ ur die meisten Benutzer macht es kaum einen Unterschied, ob der Erkenner im Durchschnitt alle zwanzig oder alle hundert Versuche ein Wort falsch erkennt. Wenn die Erkennungsrate aber nur bei ca. 90 % oder darunter liegt, so wird die Anwendung als unzuverl¨ assig wahrgenommen, unabh¨ angig davon, wie hoch bzw. tief die tats¨ achliche Erkennungsrate liegt. 3. Der Spracherkenner muss schnell genug arbeiten, um eine nat¨ urliche, fl¨ ussige Interaktion zwischen dem Benutzer und dem System zu erm¨ oglichen. 4. In vielen F¨ allen ist das Spracherkennungssystem ein Teil eines Dialogsystems. Damit das System akzeptiert wird, muss es so ausgelegt sein, dass sich der Benutzer wohl f¨ uhlt. Das heisst unter anderem, dass der Dialog f¨ ur den Benutzer zu jedem Zeitpunkt transparent sein muss. Er will jederzeit wissen, welche M¨ oglichkeiten ihm im Moment zur Verf¨ ugung stehen und mit welchen Begriffen er seine Wahl dem System mitteilen kann.
10.5
10.5 Einteilung der Spracherkennungssysteme Da der Traum vom universell einsetzbaren Spracherkennungssystem bis heute nicht verwirklicht werden konnte und auch noch lange eine Utopie bleiben wird, hat sich die Forschung in verschiedene Unterdisziplinen aufgeteilt, die jeweils das Spracherkennungsproblem auf eine spezifische Art und Weise vereinfachen. Dementsprechend k¨ onnen die heutigen Spracherkennungssysteme in verschiedene Kategorien eingeteilt werden, je nachdem, welchen Restriktionen sie unterliegen. Eine erste Unterteilung bezieht sich auf die von den Systemen verarbeitbaren ¨ Ausserungen. Diese reichen von einzeln gesprochenen W¨ ortern bis zu fliessend gesprochenen S¨ atzen. Die Tabelle 10.1 zeigt eine Einteilung der Systeme nach diesem Kriterium.
10.5 Einteilung der Spracherkennungssysteme
291
¨ Tabelle 10.1. Einteilung der Spracherkennungssysteme anhand der Ausserungen, die sie verarbeiten k¨ onnen.
Systemklasse
¨ Verarbeitbare Ausserungen
Einzelworterkenner
Einzelne W¨ orter oder kurze Kommandos isoliert gesprochen, d.h. mit Pausen.
Keyword-Spotter
Einzelne W¨ orter oder kurze Komman¨ dos in einer sonst beliebigen Ausserung.
Verbundworterkenner
Sequenz von fliessend gesprochenen W¨ ortern aus einem kleinen Vokabular (z.B. Telefonnummern).
Kontinuierlicher Spracherkenner
Ganze, fliessend gesprochene S¨ atze.
¨ Ein Einzelworterkenner davon ausgeht, dass eine Ausserung genau ein Wort umfasst. Er wird auf eine bestimmte Anzahl W¨ orter oder kurze Kommandos trainiert, die das Vokabular des Erkenners ausmachen. Damit der Erkenner diese W¨ orter erkennt, m¨ ussen sie wiederum einzeln (isoliert) gesprochen werden. Ein Keyword-Spotter ist in der Lage, einzelne Schl¨ usselw¨ orter oder Kom¨ mandos in einer fliessend gesprochenen Ausserung zu erkennen. Ein Verbundworterkenner erkennt W¨ orter aus einem kleinen Vokabular, die zusammenh¨ angend gesprochen werden k¨ onnen. Zwischen den W¨ ortern besteht jedoch kein Zusammenhang. Typische Anwendungen von Verbundworterkennern sind das Erkennen von Kreditkarten- und Telefonnummern. Als kontinuierliche Spracherkenner werden Systeme bezeichnet, die flies¨ send gesprochene Ausserungen erkennen, welche aus einem grossen Vokabular zusammengesetzt sind. Ein kontinuierlicher Spracherkenner nutzt ¨ insbesondere aus, dass zwischen den W¨ ortern der Ausserung ein nat¨ urlichsprachlicher Zusammenhang besteht. Normalerweise sind kontinuierliche Spracherkenner zudem so konzipiert, dass das Vokabular einfach erweitert werden kann.
292
10. Einf¨ uhrung in die Spracherkennung
Ein anderes Kriterium zur Einteilung von Spracherkennungssystemen ist die Art der Anpassung an einen Sprecher. Sprecherabh¨ angige Systeme m¨ ussen f¨ ur jeden neuen Sprecher in einer speziellen Trainingsphase neu trainiert werden. ¨ Sprecherunabh¨ angige Systeme erkennen Ausserungen eines beliebigen Sprechers, ohne dass ein zus¨ atzliches Training notwendig ist. Sie m¨ ussen mit Sprachsignalen von tausenden von Sprechern trainiert werden. Sprecheradaptive Systeme sind ebenfalls sprecherunabh¨ angig, bieten aber zus¨ atzlich die M¨ oglichkeit, sich an einen bestimmten Sprecher anzupassen und dadurch die Erkennungsleistung zu verbessern. Diese Anpassung findet entweder vorg¨ angig in einer Adaptionsphase statt, die im Vergleich zu einem vollen Training wesentlich k¨ urzer ist, oder kann unter Umst¨ anden sogar w¨ ahrend der eigentlichen Benutzung des Systems geschehen. Eine letzte hier aufgef¨ uhrte Einteilungsm¨ oglichkeit basiert auf der Gr¨ osse des Erkennervokabulars, wobei normalerweise zwischen den Kategorien klein, mittel und gross unterschieden wird: Erkenner mit kleinem Vokabular f¨ ur Anwendungen in Steuerungsaufgaben haben typischerweise ein Vokabular von maximal einigen hundert W¨ ortern. Systeme mit grossem Vokabular wurden Anfangs der neunziger Jahre normalerweise jene Erkenner genannt, die ein Vokabular von tausend und mehr W¨ ortern aufwiesen. Die Bedeutung von “gross” hat sich seither etwas gewandelt, nachdem Systeme mit einem Vokabular von mehreren 100’000 W¨ ortern vorgestellt worden sind. In einem Vokabular dieser Gr¨ osse gibt es viele phonetisch ¨ ahnliche W¨ orter. Dadurch nimmt die Gefahr von Wortverwechslungen zu, was mit einem Sprachmodell kompensiert werden muss (siehe Kapitel 13).
10.6
10.6 Evaluation der Erkennungsleistung Ein wichtiger Aspekt eines Spracherkenners ist seine Erkennungsleistung. Sie wird experimentell bestimmt, indem der Erkenner auf Testsprachsignale angewendet wird. Die Ausgaben des Erkenners werden dann mit den korrekten Ergebnissen verglichen und aus den Unterschieden wird mit einem Fehlermass die Erkennungsleistung ermittelt.
10.7 Merkmalsextraktion
293
10.6.1 Wortfehlerrate Das am weitesten verbreitete Fehlermass ist die sogenannte Wortfehlerrate. Die Erkennungsfehler werden in drei Kategorien eingeteilt: Ersetzungen (ein korrektes Wort wurde durch ein falsches ersetzt), Auslassungen (ein Wort wurde vom Erkenner weggelassen) und Einf¨ ugungen (der Erkenner hat ein zus¨ atzliches Wort eingef¨ ugt). Die Wortfehlerrate ist wie folgt definiert: #Ersetzungen + #Auslassungen + #Einf¨ ugungen · 100% # zu erkennende W¨ orter (167) Zu beachten ist, dass die Wortfehlerrate gr¨ osser als 100% sein kann, wenn ¨ der Spracherkenner mehr W¨ orter erkennt als tats¨ achlich in der Ausserung Wortfehlerrate =
vorhanden sind.
10.6.2 Algorithmus zur Bestimmung der Wortfehlerrate Um die Wortfehlerrate gem¨ ass Gleichung (167) zu berechnen, muss die minimale Anzahl der Editieroperationen (Ersetzungen, Auslassungen und Einf¨ ugungen) ermittelt werden, welche die Referenzwortfolge R = r1 r2 . . . rn in die vom Erkenner als Resultat ausgegebene Wortfolge H = h1 h2 . . . hm transformiert. Dieser Vorgang wird auch als Bestimmung der Editierdistanz bezeichnet. Die Editierdistanz l¨ asst sich effizient mittels dynamischer Programmierung berechnen. Im Folgenden bezeichnet D(i, j) die minimale Editierdistanz zwischen den Teilfolgen r1 , r2 , . . . , ri und h1 , h2 , . . . , hj . Rekursion: F¨ ur alle 1 ≤ i ≤ n, 1 ≤ j ≤ m ⎧ ⎨ D(i − 1, j) + 1 , D(i, j) = min D(i − 1, j − 1) + d(i, j) ⎩ D(i, j − 1) + 1
d(i, j) =
1 falls ri = hj , 0 sonst
⎫ ⎬ ,
⎭
,
(168)
(169)
ur i < 1 oder j < 1 angenommen wird, mit Ausnahme wobei D(i, j) = ∞ f¨ von D(0, 0) = 0. uber der Referenz R berechnet Die Wortfehlerrate der Hypothese H gegen¨ sich damit wie folgt: Wortfehlerrate =
D(n, m) · 100% n
(170)
294
10.7
10. Einf¨ uhrung in die Spracherkennung
10.7 Merkmalsextraktion Am Anfang jedes Spracherkennungsprozesses steht das Sprachsignal, das es zu analysieren gilt. Sieht man sich Sprachsignale im Zeitbereich einmal genauer an, stellt man sehr schnell fest, dass diese sehr unterschiedlich aussehen ¨ k¨ onnen, auch wenn die gesprochene Ausserung dieselbe ist. Dieser Sachverhalt ist in Abbildung 10.1 illustriert. Es ist also nicht sinnvoll, zur Spracherkennung direkt den zeitlichen Verlauf des Signals zu verwenden, da dieser kaum R¨ uckschl¨ usse auf die gesprochenen Laute erlaubt. Aus diesem Grund wird f¨ ur die Spracherkennung nicht das Signal selbst verwendet, sondern daraus abgeleitete Merkmale. Die extrahierten Merkmale sollten die Eigenschaft haben, dass sie gegen¨ uber Signalver¨ anderungen, welche die menschliche Lautwahrnehmung nicht beeinflussen, m¨ oglichst invariant sind. Gleichzeitig m¨ ussen die Merkmale die gesprochenen Laute m¨ oglichst gut charakterisieren, um Laute voneinander abgrenzen und letztendlich erkennen Originalsignal
gefiltertes Signal
[a]
0
10
20
30 [ms] 40
0
10
20
30 [ms] 40
0
10
20
30 [ms] 40
0
10
20
30 [ms] 40
0
10
20
30 [ms] 40
0
10
20
30 [ms] 40
0
10
20
30 [ms] 40
0
10
20
30 [ms] 40
[i]
[o]
[u]
Abbildung 10.1. Ausschnitte aus zwei Sprachsignalen: Die Ausschnitte des Originalsi-
gnals (links) und des phasenver¨ anderten Signals (rechts) weisen je nach Laut recht unterschiedliche Kurvenformen auf. H¨ orbar sind die Unterschiede jedoch praktisch nicht.
10.7 Merkmalsextraktion 40
295
F
1
[dB]
F2
20
F3
F
4
0 −20 −40
0
500
1000
1500
2000
2500
3000
3500 [Hz] 4000
40
F
[dB]
1
20
F
3
F
2
0
F
4
F5
−20 −40
0
500
1000
1500
2000
2500
3000
3500 [Hz] 4000
Abbildung 10.2. Formanten des Lautes [i:] f¨ ur zwei Beispiele, die vom selben Sprecher
gesprochen wurden. Im oberen Beispiel stimmen die Formanten F1 und F2 mit den Angaben aus Abbildung 1.9 u ¨berein. Das untere Beispiel zeigt einen weiteren Formanten, den es gem¨ ass der Auffassung der Phonetik in einem [i:] nicht geben d¨ urfte.
zu k¨ onnen. Die Merkmale sollten also nur die f¨ ur die Spracherkennung relevante Information repr¨ asentieren. Die aus der Phonetik bekannten Formanten (vergl. auch Abschnitt 3.6.2) sind als Merkmal f¨ ur die Spracherkennung wenig geeignet. Zum einen sind Formanten in der Linguistik nur f¨ ur Vokale definiert, w¨ ahrend in der Spracherkennung alle m¨ oglichen Laute sowie Sprechpausen und St¨ orger¨ ausche modelliert werden m¨ ussen. Zum andern ist es technisch schwierig, Formanten robust aus ¨ einem Signal zu extrahieren. Formanten sind als spektrale Uberh¨ ohung im Spektrum definiert, und werden mit aufsteigender Frequenz nummeriert. Wie Abbildung 10.2 zeigt, kann diese Nummerierung leicht durcheinander geraten. atzlicher Wenn beispielsweise in Frequenzbereich zwischen F1 und F2 ein zus¨ Formant detektiert wird, dann erh¨ alt dieser den Index zwei und die Indices der h¨ oheren Formanten werden entsprechend um eins erh¨ oht. Aufgrund dieser Indexverschiebung wird nun aufgrund der detektierten Formanten F1 und F2 sicher nicht auf den Laut [i:], sondern allenfalls auf [u:] geschlossen.
296
10. Einf¨ uhrung in die Spracherkennung
10.7.1 Mel-Frequency Cepstral Coefficients (MFCC) Ein Sprachmerkmal, das in der Spracherkennung h¨ aufig eingesetzt wird, ist das Mel-Cepstrum (siehe Abschnitt 4.6.5). Es ist unter dem Namen MFCC (engl. mel frequency cepstral coefficients) bekannt. Bei der Merkmalsextraktion wird das Sprachsignal einer Kurzzeitanalyse unterzogen. Aus jedem Analyseabschnitt ergibt sich ein Merkmalsvektor ⎞ ⎛ c˘i (0) ⎜ c˘i (1) ⎟ ⎟ ⎜ xi = ⎜ . ⎟ , ⎝ .. ⎠ c˘i (D) bestehend aus den Koeffizienten c˘i (0), c˘i (1), . . . , c˘i (D) des Mel-Cepstrums ¨ nach Gleichung (53). Aus dem Sprachsignal einer ganzen Ausserung ermittelt die Merkmalsextraktion f¨ ur jeden der insgesamt T Analyseabschnitte einen Merkmalsvektor. Die Folge von Merkmalsvektoren bezeichnen wir als Merkmalssequenz
X = x1 x2 . . . xT . Die Berechnung des Mel-Cepstrums wurde Abschnitt 4.6.5 erl¨ autert. F¨ ur die Merkmalsextraktion in der Spracherkennung sind aber noch einige Parameter geeignet festzulegen, z.B. die L¨ ange des Analyseabschnittes, die Anzahl der Filter in der Mel-Filterbank und die Anzahl der verwendeten cepstralen Koeffizienten. Die Wahl dieser Parameter beeinflusst selbstverst¨ andlich die Leistung des Spracherkenners. Obwohl die optimalen Parameter vom konkreten Anwendungsfall des Spracherkenners abh¨ angen und nur experimentell bestimmt werden k¨ onnen, gibt es Erfahrungswerte, welche f¨ ur die Spracherkennung geeignet sind und in der Regel zu guten Ergebnissen f¨ uhren. Diese Parameter sind in der Tabelle 10.2 zusammengestellt. Sie bilden auch die Grundlage f¨ ur die weiteren Ausf¨ uhrungen und Abbildungen dieses Kapitels. Im Folgenden wird nun dargelegt, wie die Charakteristika deutscher Laute in den MFCC-Merkmalsvektoren repr¨ asentiert sind. Es wird ferner erl¨ autert,
Tabelle 10.2. Parameterwerte f¨ ur die MFCC-Merkmalsextraktion, wie sie f¨ ur die Dar-
stellungen in diesem Kapitel und h¨ aufig auch in der Spracherkennung verwendet werden.
Abtastfrequenz L¨ ange des Analysefensters Verschiebung des Analysefensters Anzahl Dreieckfilter Cepstrale Koeffizienten
8/16 kHz 25 ms 10 ms 24 D = 12
10.7 Merkmalsextraktion
297
weshalb damit viele Laute voneinander unterschieden werden k¨ onnen, aber auch warum gewisse Verwechslungen kaum vermeidbar sind. Die direkte Darstellung der cepstralen Koeffizienten ist f¨ ur den menschlichen Betrachter wenig aussagekr¨ aftig (siehe z.B. Abbildung 4.25). Deshalb wird im Folgenden jeweils das den cepstralen Koeffizienten entsprechende gegl¨ attete Spektrum dargestellt. F¨ ur die Spracherkennung werden jedoch die cepstralen Koeffizienten verwendet. Die aus den Mel-Cepstren berechneten Spektren und Spektrogramme haben eine Frequenzachse mit einer linearen Mel-Skala. Da die Einheit Hertz (Hz) f¨ ur Frequenzen jedoch vertrauter ist, sind die Frequenzachsen weiterhin in Hertz angeschrieben, jedoch auf einer nichtlinearen Skala. In den Abschnitten 10.7.2 und 10.7.3 wird f¨ ur eine Auswahl der deutschen Laute gezeigt, welche Eigenschaften diese Merkmalsvektoren beschreiben.
10.7.2 Gegl¨ attete Mel-Spektren von Vokalen und Frikativen In Abbildung 10.3 ist f¨ ur verschiedene Vokale und Frikative eines Sprechers ein charakteristisches Spektrum dargestellt. F¨ ur einen Laut erh¨ alt man ein solches Spektrum, indem eine gr¨ ossere Anzahl MFCC aus mehreren Realisationen dieses Lautes gemittelt und in den Frequenzbereich transformiert werden. In dieser Darstellung unterscheiden sich alle Laute voneinander, die einen recht deutlich, andere weniger. Beispielsweise k¨ onnen Vokale und stimmlose Frikative recht gut anhand des Spektrums auseinandergehalten werden. Dies ist eine interessante Tatsache, da sich die beiden Lautgruppen in erste Linie durch die Eigenschaft abgrenzen, dass die Vokale stimmhaft sind, die stimmlosen Frikative jedoch nicht. Die mit den Einstellungen gem¨ ass Tabelle 10.2 ermittelten MFCC enthalten aber keinerlei Information u at ¨ ber die Stimmhaftigkeit bzw. die Periodizit¨ des Sprachsignals. Die MFCC k¨ onnen Vokale und Frikative nur aufgrund der Form des Mel-Spektrums unterscheiden. Dieses zeigt f¨ ur Vokale eine ausgepr¨ agte Tiefpasscharakteristik, f¨ ur Frikative jedoch nicht. Die Abbildung 10.3 zeigt ferner, weshalb die Unterscheidung zwischen den Frikativen [s] und [f] u ¨ ber das Telefon schwierig ist. Das Spektrum unterscheidet sich haupts¨ achlich bei den hohen Frequenzen, die aber durch die Bandbreite des Telefons, deren obere Grenze bei ca. 3.4 kHz liegt, nicht u ¨bertragen werden. Erst f¨ ur Frequenzen oberhalb dieser Grenze unterscheiden sich die Frikative [s] und [f]. Bei den Vokalen sind vor allem die Spektren der Laute [o] und [u], sowie [e] und [i] recht a ¨hnlich. Die Folge davon ist, dass bei der Spracherkennung die Verwechslungsgefahr bei diesen Lautpaaren besonders gross ist.
298
10. Einf¨ uhrung in die Spracherkennung
[dB]
Vokale
0
[a]
−20
[E] [@]
−40
[e] 500 1000
[i] 2000
4000
[o] 8000
[u]
[dB]
Frikative
0
[S]
−20
[x]
−40
[C] 500 1000
2000
[s] 4000
8000
[f]
Abbildung 10.3. Gegl¨ attete Mel-Spektren einiger Frikative und Vokale im Vergleich. Das gegl¨ attete Spektrum eines Lautes wurde wie folgt berechnet: Aus jeweils zehn Lautrealisierungen eines professionellen Sprechers wurde je ein MFCC-Merkmalsvektor extrahiert, gemittelt und in den Frequenzbereich transformiert. Die Laute sind in der ETHPA-Notation angegeben.
10.7.3 Plosivlaute im gegl¨ atteten Mel-Spektrogramm Im Gegensatz zu den Vokalen und Frikativen, deren Zentrum als einigermassen station¨ ar betrachtet werden kann, sind die Plosive eindeutig nicht station¨ ar. Daher wird in der Abbildung 10.4 nicht das gegl¨ attete Spektrum in der Lautmitte betrachtet, sondern dessen zeitlicher Verlauf in Form eines Spektrogramms dargestellt. Bei den Plosivlauten k¨ onnen mehrere Teile unterschieden werden: die pr¨ aplosive Pause, die eigentliche Plosion und die Aspiration (Behauchung). Je nach
10.7 Merkmalsextraktion
[ata]
299
[aka]
[apa]
8000 [Hz] 4000 2000 1000 500 200 −100
−50
0
50 [ms] −100
[ada]
−50
0
50 [ms] −100
[aga]
−50
0
50 [ms]
[aba]
8000
[dB]
[Hz]
0
4000
−20
2000 1000
−40
500 200 −100
−50
0
50 [ms] −100
−50
0
50 [ms] −100
−50
0
50 [ms]
−60
Abbildung 10.4. Gegl¨ attete Spektrogramme der deutschen Plosivlaute, die zwischen zwei
[a] von einem professionellen Sprecher gesprochen wurden. Oben sind die stimmlosen Plosive aufgetragen, unten die stimmhaften. Das gegl¨ attete Spektrogramm ist aus den MFCCMerkmalsvektoren berechnet worden. Die Zeitachse ist so beschriftet, dass die Plosion im Nullpunkt liegt.
Art des Lautes und seiner konkreten Realisierung k¨ onnen diese Teile unterschiedlich ausgepr¨ agt sein. Die pr¨ aplosive Pause ist bei den stimmlosen Plosivlauten in der Regel sehr deutlich und von einer kurzen Sprechpause ¨ nicht zu unterscheiden. Nach der Plosion, die beim Offnen des Verschlusses kann eine Aspiration auftreten. Man spricht dann von aspirierten (behauchten) Plosiven und schreibt sie in der IPA-Lautschrift als [th ], [kh ] und [ph ]. Die Aspiration ist dem nachfolgenden Laut, hier ein [a], u ¨ berlagert. Sie ist rauschartig und im gegl¨ atteten Spektrum nicht ersichtlich, weil durch die Gl¨ attung sowohl die Fluktuationen des Rauschens als auch die harmonischen Muster der stimmhaften Anteile verschwinden. Bei stimmhaften Plosivlauten ist der Verschluss k¨ urzer und die Stimmlippen schwingen w¨ ahrend der Verschlussphase. Der Verschluss d¨ ampft das Stimmlippensignal jedoch stark, insbesondere die h¨ oheren Frequenzen, was in Abbildung 10.4 klar ersichtlich ist. Bei stimmhaften Plosivlauten ist die pr¨ aplosive Pause somit weniger deutlich sichtbar, sie kann mitunter sogar
300
10. Einf¨ uhrung in die Spracherkennung
ganz fehlen. Der stimmhafte Plosivlaut ¨ aussert sich dann nur noch durch eine kurzzeitige Reduktion der Amplitude, wiederum haupts¨ achlich bei h¨ oheren Frequenzen. Stimmhafte Plosivlaute sind zudem nie aspiriert.
10.7.4 Spektrale Variabilit¨ at Die in der Abbildung 10.3 dargestellten Spektren verschiedener Laute verleiten zur Annahme, dass ein Laut einfach durch den direkten Vergleich mit Referenzspektren erkannt werden k¨ onnte, da jeder Laut einen charakteristischen spektralen Verlauf zu haben scheint. Dies ist jedoch nur bedingt richtig. Die Abbildung 10.5 zeigt am Beispiel des Lautes [a:], dass auch die Spektren der relativ station¨ aren Lautmitten keineswegs immer gleich aussehen, sondern mehr oder weniger stark vom gemittelten Spektrum abweichen. F¨ ur die Spracherkennung w¨ are es zudem nicht ausreichend, nur die Lautmitten oder die quasistation¨ aren Phasen der Laute zu beschreiben. Bei kurzen Lauten tendiert die L¨ ange der quasistation¨ aren Phasen gegen null, und das Sprachsignal besteht fast nur aus Laut¨ uberg¨ angen. Dementsprechend variieren auch die MFCC innerhalb eines Lautes stark. Eine akustische Beschreibung der Laute, die f¨ ur die Spracherkennung eingesetzt werden soll, muss selbstverst¨ andlich der Variabilit¨ at der Laute Rechnung tragen (siehe Abschnitt 12.6.2). 10.7.5 Rekonstruktion des Signals Es ist m¨ oglich, aus den MFCC-Merkmalsvektoren ein Sprachsignal zu erzeugen. Eine perfekte Rekonstruktion des urspr¨ unglichen Signals ist allerdings nicht m¨ oglich, da bei der Merkmalsextraktion die Grundfrequenz F0 , die Periodizit¨ at (stimmhaft/stimmlos), die Phase, sowie die Feinstruktur des Spektrums verloren gehen. Daher m¨ ussen bei der Synthese Annahmen getroffen werden. Im einfachsten Fall nimmt man an, dass die Grundfrequenz konstant und das Signal stimmhaft ist. Das so erzeugte Signal klingt zwar k¨ unstlich und monoton, ist aber verst¨ andlich. Daraus kann man schliessen, dass die MFCC gen¨ ugend Information enthalten, um als Merkmal f¨ ur die Spracherkennung zu taugen.
10.7 Merkmalsextraktion
301
a) Professioneller Sprecher, Studioqualität [dB] 30
8 6
20
4
10
2
0
0
−10
−2
−20
−4
−30
−6 200
500
1000
2000
[Hz]
4000
1
2
3
4
5
6 7 8 MFCC
9 10 11 12
1
2
3
4
5
6 7 8 MFCC
9 10 11 12
1
2
3
4
5
6 7 8 MFCC
9 10 11 12
b) Normaler Sprecher, Büro [dB] 30
8 6
20
4
10
2
0
0
−10
−2
−20
−4
−30
−6 200
500
1000
2000
[Hz]
4000
c) 1000 Sprecher und Sprecherinnen, Telefon [dB] 30
8 6
20
4
10
2
0
0
−10
−2
−20
−4
−30
−6 200
500
1000
2000
[Hz]
4000
Abbildung 10.5. Veranschaulichung der Variabilit¨ at in der Mitte des Lautes [a:] eines
professionellen Sprechers (oben), eines gew¨ ohnlichen Sprechers (Mitte) und von 1000 Spre¨ chern/Sprecherinnen (unten). Links: Uberlagerte Darstellung der Spektren; je h¨ oher die Liniendichte in einen bestimmten Punkt, desto dunkler die F¨ arbung. Rechts: Der Querstrich in einer Box entspricht dem Median der Werte des cepstralen Koeffizienten, die Grenzen der Box repr¨ asentieren die Quartilen (somit befindet sich die H¨ alfte der Werte innerhalb der Box), und die obersten und untersten Linien markieren das Minimum bzw. Maximum. Die Variabilit¨ at nimmt von a) nach c) zu.
Kapitel 11 Spracherkennung mit Mustervergleich
11
11
11 11.1 11.1.1 11.1.2 11.1.3 11.1.4 11.1.5 11.1.6 11.1.7 11.2 11.2.1 11.2.2
Spracherkennung mit Mustervergleich Sprachmustervergleich......................................... Das Prinzip des Sprachmustervergleichs ................... Zeitliche Anpassung zweier Sprachmuster ................. Randbedingungen f¨ ur die Warping-Kurve ................. Der DTW-Algorithmus ........................................ Spracherkennung mittels DTW.............................. Generieren von Referenzmustern ............................ Einsatzm¨ oglichkeiten und Grenzen.......................... ¨ Aufnehmen einer Ausserung.................................. Anwendungsszenarien ......................................... Anfangs- und Endpunktdetektion ...........................
305 305 308 309 312 314 315 317 317 317 320
11 Spracherkennung mit Mustervergleich Um einen Spracherkenner zu verwirklichen, welcher die W¨ orter eines gewissen Vokabulars erkennen kann, muss dem Erkenner selbstverst¨ andlich Information u orter zur Verf¨ ugung gestellt werden. Dies kann ¨ ber die zu erkennenden W¨ auf sehr unterschiedliche Art und Weise geschehen. Eine einfache M¨ oglichkeit besteht darin, diese Information in Form einer Sammlung von Referenzmustern bereitzustellen. Die Aufgabe des Spracherkenners ist dann, ein zu erkennendes Wort mit allen Referenzmustern zu vergleichen und zu entscheiden, welchem der Muster das Wort entspricht bzw. ob das Wort u ¨ berhaupt Teil des Erkennervokabulars ist.
11.1 Sprachmustervergleich Da beim Sprechen stets auch der Zufall seine Hand im Spiel hat (vergl. Abschnitt 2.1), ist das Vergleichen von Sprachmustern nicht so trivial, wie man im ersten Moment vermuten k¨ onnte. Weil zwei Sprachsignale desselben Wortes nie exakt gleich sind, muss der Vergleich so konzipiert werden, dass Unterschiede, die f¨ ur die Unterscheidung von W¨ ortern nicht relevant sind, ignoriert werden. Welche Unterschiede in diesem Zusammenhang irrelevant sind und wie der “relevante Unterschied” gemessen werden kann, wird im n¨ achsten Abschnitt besprochen.
11.1.1 Das Prinzip des Sprachmustervergleichs Beim Sprachmustervergleich misst man die Verschiedenheit von zwei Sprachsignalen. Wir wollen diese Verschiedenheit als Distanz bezeichnen. Die Distanz zwischen zwei Sprachsignalen sollte so definiert sein, dass sie m¨ oglichst gross wird, wenn es sich um zwei verschiedene W¨ orter handelt, und m¨ oglichst klein, wenn die Muster zum selben Wort geh¨ oren. Wenn man untersucht, worin sich zwei von einer Person gesprochene Muster desselben Wortes unterscheiden, dann stellt man haupts¨ achlich prosodische Unterschiede fest. Die Signale sind nicht gleich laut, sind unterschiedlich lang und weichen hinsichtlich Sprechrhythmus und Sprechmelodie voneinander ab. Da die Muster jedoch zum selben Wort geh¨ oren, sollte ihre Distanz klein sein. Mit anderen Worten: Die prosodischen Unterschiede der Muster sollten die Distanz nicht oder m¨ oglichst wenig beeinflussen. Im Abschnitt 4.6.5 wurde gezeigt, dass das Mel-Cepstrum intensit¨ atsunabh¨ angig ist (wenn der nullte Koeffizient c˘(0) weggelassen wird), und dass die mel-cepstralen Koeffizienten mit tiefem Index die grobe Form des Spektrums beschreiben, womit sie im Wesentlichen von der Grundfrequenz unabh¨ angig
11.1
306
11. Spracherkennung mit Mustervergleich
sind. Wenn wir also u ¨ ber eine Kurzzeitanalyse aus den zu vergleichenden Sprachsignalen je eine Sequenz von Mel-Cepstren ermitteln, dann haben wir bereits zwei nicht relevante Unterschiede eliminiert, n¨ amlich die Unterschiede hinsichtlich Intensit¨ at und Grundfrequenz. Was bleibt sind die Unterschiede hinsichtlich Sprechrhythmus und Dauer. Was dies f¨ ur den Mustervergleich heisst, wollen wir an einem Beispiel illustrieren. Gegeben seien zwei Signale sx und sy wie in Abbildung 11.1 gezeigt. Wir ermitteln daraus je eine Sequenz von Mel-Cepstren (ohne den nullten Koeffizienten), die wir bezeichnen wollen als ⎛ ⎞ c˘xi (1) ⎜ c˘xi (2) ⎟ ⎜ ⎟ X = x1 x2 . . . xTx mit xi = ⎜ . ⎟ (171) ⎝ .. ⎠
c˘xi (D) und
⎛ Y = y1 y2 . . . yTy
mit
⎜ ⎜ yj = ⎜ ⎝
⎞ c˘yj (1) c˘yj (2) ⎟ ⎟ .. ⎟ . . ⎠
(172)
c˘yj (D) Wir k¨ onnen nun ein xi mit einem y j vergleichen, indem wir die euklidische cepstrale Distanz berechnen mit D 2 . d(xi , yj ) = [˘ cxi (m) − c˘yj (m)] = d(i, j) . (173) m=1
ur d(xi , yj ) Mit der Gr¨ osse d(i, j), die wir im Folgenden als Kurzbezeichnung f¨ verwenden, k¨ onnen wir also den Unterschied zwischen dem i-ten Element von X und dem j -ten Element von Y ausdr¨ ucken. Wir wollen d(i, j) deshalb als lokale Distanz bezeichnen. Wenn die lokale Distanz d(i, j) klein ist, dann ist dies ein Hinweis darauf, dass im Muster X an der Stelle i und im Muster Y an der Stelle j derselbe Laut vorliegt. Ist d(i, j) gross, dann weist dies auf verschiedene Laute hin. Die Frage ist nun: Wie ermittelt man aus den lokalen Distanzen die Gesamtdistanz D(X, Y), also den Unterschied zwischen den Mustern X und Y? Nehmen wir zun¨ achst an, dass die beiden Muster X und Y dem gleichen Wort entsprechen. In diesem Fall sollte die Gesamtdistanz m¨ oglichst gering sein. W¨ urden nun alle Laute mit der exakt gleichen L¨ ange realisiert (woraus Tx = Ty folgt), so k¨onnte man die Gesamtdistanz einfach als die Summe der lokalen Distanzen d(k, k) u ¨ ber alle k = 1, . . . , Tx berechnen. Da die Merkmale
11.1 Sprachmustervergleich
307
1
sx 0 −1
sy
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
[s]
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
[s]
1 0 −1
5
c˘x (1)
1
60
0
−5 0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
[s]
5
c˘y (1)
1
58
0
−5 0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
[s]
Abbildung 11.1. Zwei Sprachsignale sx und sy des leicht unterschiedlich gesprochenen
Wortes “hundert”. Von den beiden Signalen sind Sequenzen von Mel-Cepstren ermittelt worden. Aus Darstellbarkeitsgr¨ unden ist nur je der erste Koeffizient des Mel-Cepstrums in Funktion der Zeit aufgetragen. Es ist gut zu sehen, dass die Muster sich nur mit einer nichtlinearen Verzerrung der Zeitachsen aneinander anpassen lassen (siehe Abbildung 11.6).
xk und yk in unserem Beispiel immer zum gleichen Laut geh¨oren, sind die lokalen Distanzen klein, und damit auch deren Summe. ¨ Wie Abbildung 11.1 zeigt, kann die L¨ ange der einzelnen Laute bei zwei Ausserungen desselben Wortes jedoch betr¨ achtlich variieren. Um die Unterschiede in den Lautdauern auszugleichen, muss man die Muster X und Y zeitlich so aneinander anpassen, dass die Summe der lokalen Distanzen m¨ oglichst klein wird. Dazu ist eine dynamische Zeitanpassung, eine also nichtlineare Verzerrung der Zeitachsen der Muster n¨ otig. Werden jedoch zwei Muster mit unterschiedlichen Lautfolgen miteinander verglichen, so wird im Allgemeinen auch die zeitliche Anpassung nicht zu einer geringen Gesamtdistanz f¨ uhren. Anhand der Gesamtdistanz der zeitlich angepassten Muster kann also entschieden werden, ob die Muster zum selben Wort geh¨ oren oder nicht. Wie eine solche zeitliche Anpassung durchzuf¨ uhren ist, wird im n¨ achsten Abschnitt erl¨ autert.
308
11. Spracherkennung mit Mustervergleich
11.1.2 Zeitliche Anpassung zweier Sprachmuster Das Problem zwei Sprachmuster mittels der dynamischen zeitlichen Anpassung zu vergleichen, kann also wie folgt formuliert werden: Gegeben: Zwei Sprachmuster X = x1 x2 . . . xTx und Y = y1 y2 . . . yTy in der Form von Merkmalsvektoren. Gesucht: Die Gesamtdistanz D(X, Y) zwischen den Mustern X und Y, die aus der optimalen zeitlichen Anpassung der Muster resultiert. Die Grundidee der dynamischen zeitlichen Anpassung von Sprachmustern ist andern, dass eine nun, die Zeitachsen zweier Muster X und Y lokal so zu ver¨ ¨ optimale Ubereinstimmung erreicht wird. F¨ ur die dynamische Zeitanpassung (engl. dynamic time warping) wird das englische Akronym DTW verwendet. Das allgemeine Prinzip des DTW ist in Abbildung 11.2 veranschaulicht. Die beiden zu vergleichenden Sequenzen von Merkmalsvektoren werden entlang der Abszisse bzw. Ordinate aufgetragen. Die sogenannte Warping-Kurve φ(k) legt sodann fest, wie die Vektoren xi des Musters X den Vektoren yj des Musters Y zugeordnet werden. Die Warping-Kurve an der Stelle k ist dabei
φ(T )
Ty
Index der Sequenz Y
Warping-Kurve
j(k)
φ(k) = (i(k), j(k))
φ(3) 3
φ(2) 2
?
1 1
2
3
i(k)
Tx
Index der Sequenz X Abbildung 11.2. Warping-Ebene aufgespannt durch die Merkmalssequenzen zweier
Sprachmuster X und Y der L¨ ange Tx bzw. Ty . Die Zuordnung der Muster wird durch die Warping-Kurve beschrieben.
11.1 Sprachmustervergleich
309
gegeben durch die Indizes der einander zugeordneten Vektoren:
φ(k) = (i(k), j(k)) ,
1≤k≤T .
(174)
Die lokale Distanz zwischen den Mustern X und Y an der Stelle k der Warping-Kurve φ(k) ist
d(φ(k)) = d(i(k), j(k)) .
(175)
Die Gesamtdistanz entlang der Warping-Kurve Dφ (X, Y) kann nun definiert werden als T Dφ (X, Y) = d(φ(k)) w(k) . (176) k=1
Wie die Gleichung (176) zeigt, h¨ angt die Gesamtdistanz Dφ (X, Y) nicht nur ange der Warvon den lokalen Distanzen d(φ(k)) ab, sondern auch von der L¨ angt vom Start- und Endping-Kurve (Anzahl Punkte T ). Diese wiederum h¨ punkt der Warping-Kurve ab und auch von ihrer Form. Die Abh¨ angigkeit von der Form kann durch die Gewichte w(k) kompensiert werden, indem sie beispielsweise wie folgt gesetzt werden:
w(k) = i(k)−i(k−1) + j(k)−j(k−1) , w(1) = 1
1
(177)
Es ist nahe liegend, f¨ ur den Vergleich zweier Sprachmuster die in (176) definierte Gesamtdistanz entlang der optimalen Warping-Kurve zu verwenden, die definiert ist als
D(X, Y) = min Dφ (X, Y) . φ
(178)
Dabei muss φ gewisse Randbedingungen erf¨ ullen, auf die im n¨ achsten Abschnitt eingegangen wird.
11.1.3 Randbedingungen f¨ ur die Warping-Kurve Um die dynamische Zeitanpassung f¨ ur den Vergleich von zwei Sprachmustern einsetzen zu k¨ onnen, m¨ ussen einige Randbedingungen an die Warping-Kurve in Gleichung (178) gestellt werden. Ohne Randbedingungen k¨ onnte es z.B. passieren, dass durch die dynamische Zeitanpassung ein Teil des einen Sprachmusters u ¨ bersprungen oder der zeitliche Verlauf umgedreht wird. Beides ist in der Spracherkennung nicht erw¨ unscht, weil sonst Sprachsignale von W¨ ortern wie “Altendorf” und “Altdorf” oder “Schiff” und “Fisch” (in phonetischer ¨ gebracht werden k¨ onnten. Schreibweise: [Sif] und [fiS]) in Ubereinstimmung Damit w¨ urde die Gesamtdistanz entlang der Warping-Kurve klein, obwohl die W¨ orter nicht gleich sind. Die Spracherkennung basiert aber auf der Vor-
310
11. Spracherkennung mit Mustervergleich
aussetzung, dass die Gesamtdistanz nur dann klein ist, wenn die verglichenen ¨ Sprachmuster dieselbe Ausserung enthalten. Die Randbedingungen, welche typischerweise an die Warping-Kurve φ(k) = (i(k), j(k)) gestellt werden, sind: Monotonie: Die zeitliche Reihenfolge der Vektoren in den einzelnen Mustern muss erhalten bleiben. Somit ergeben sich f¨ ur die Warping-Kurve die Bedingungen
i(k) ≥ i(k − 1) j(k) ≥ j(k − 1) . Lokale Kontinuit¨ at: Bei der zeitlichen Anpassung d¨ urfen nicht gr¨ ossere Teile eines Musters, z.B. ganze Laute oder sogar mehrere Laute u bersprun¨ gen werden. Dies wird mit den folgenden Bedingungen f¨ ur die WarpingKurve erreicht:
|i(k) − i(k − 1)| ≤ gx |j(k) − j(k − 1)| ≤ gy . Dadurch werden die Schrittgr¨ ossen auf gx bzw. gy begrenzt. Es k¨ onnen also maximal gx −1 bzw. gy −1 Vektoren u ¨ bersprungen werden. Anfangs- und Endpunktbedingungen: Obwohl bei der Aufnahme ¨ ¨ einer Ausserung in manchen F¨ allen der Anfang und das Ende der Ausserung nicht immer genau bestimmt werden k¨ onnen (vergl. Abschnitt 11.2), wollen wir vorerst annehmen, dass die Anfangs- und Endpunkte der zu vergleichenden Sprachmuster korrekt sind. Somit k¨ onnen an die WarpingKurve die folgenden Bedingungen gestellt werden:
φ(1) = (1, 1) φ(T ) = (Tx , Ty ) . Die Randbedingungen f¨ ur eine Warping-Kurve werden zusammen mit den Gewichten der lokalen Distanzen zu einem Satz von sogenannten Pfaderweiterungen zusammengefasst. Die Pfaderweiterungen definieren, wie die WarpingKurve zwischen φ(k−1) und φ(k) aussehen kann. Beispielsweise kann unter Ber¨ ucksichtigung der oben angegebenen Bedingungen bez¨ uglich Monotonie und lokaler Kontinuit¨ at (gx = gy = 1) der Punkt φ(k) = (i(k), j(k)) u ¨ ber die folgenden Vorg¨ angerpunkte φ(k−1) erreicht werden:
11.1 Sprachmustervergleich
311
⎧ ⎫ ⎨ φ(k) − (1, 0) ⎬ φ(k−1) ∈ φ(k) − (1, 1) . ⎩ ⎭ φ(k) − (0, 1)
(179)
Die Abbildung 11.3 zeigt, wie Pfaderweiterungen grafisch dargestellt werden k¨ onnen.
(i(k)−1, j(k))
wp(1) wp(2)
(i(k)−1, j(k)−1)
φ(k) = (i(k), j(k)) wp(3) 6 (i(k), j(k)−1)
Abbildung 11.3. Grafische Darstellung der Pfaderweiterungen gem¨ ass Formel (179). Jede
Pfaderweiterung f¨ uhrt von einem m¨ oglichen Vorg¨ angerknoten φ(k−1) zum Zielpunkt φ(k). Die Vektoren p(m) sind in dieser Darstellung redundant (sie werden bereits durch die Pfeile dargestellt) und werden deshalb gew¨ ohnlich weggelassen. Die Gewichte wp(m) werden beim Ermitteln der akkumulierten Distanz nach Gleichung (180) ben¨ otigt.
In Abbildung 11.4 sind Beispiele gebr¨ auchlicher Pfaderweiterungen aufgef¨ uhrt. Wie man in dieser Abbildung erkennt, bestimmen die Pfaderweiterungen auch die maximal und minimal m¨ ogliche Steigung der Warping-Kurve. Im Beispiel (a) wird die Steigung der Warping-Kurve nicht eingeschr¨ ankt, ausser dass sie positiv sein muss. Im Gegensatz dazu wird bei den Bedingungen (b) ur Sprachsignale und (c) die Steigung auf das Intervall [0.5 2] begrenzt, was f¨ sinnvoll ist. Die Pfaderweiterungen (b) erlauben, in beiden Mustern Merkmalsvektoren zu u atzlich sowohl ein Vorteil als ¨ berspringen. Dies kann grunds¨ auch ein Nachteil sein. Beispielsweise k¨ onnen so durch kurze St¨ orger¨ ausche verzerrte Merkmalsvektoren ausgelassen werden, was das Verfahren robuster macht. Hingegen k¨ onnen so auch Merkmalsvektoren weggelassen werden, die f¨ ur das zu erkennende Muster charakteristisch sind, wodurch die Unterscheidbarkeit abnimmt. Die Pfaderweiterungen (a) und (b) bewirken ein symmetrisches Warping, d.h. onnen vertauscht werden, ohne dass sich die die Sprachmuster X und Y k¨ Gesamtdistanz ¨ andert. Es gilt also: D(X, Y) = D(Y, X). Die Pfaderweiterungen (c) bewirken ein asymmetrisches Warping. Hier f¨ uhrt das Vertauschen der Sprachmuster in der Regel zu einer unterschiedlichen Gesamtdistanz. Ob einzelne Pfaderweiterungen bevorzugt werden sollen oder nicht, kann mit der Gewichtung der lokalen Distanzen bestimmt werden. Indem man z.B. der diagonalen Pfaderweiterung in Abbildung 11.4(a) das Gewicht 2 gibt, wird sichergestellt, dass die Diagonale nicht bevorzugt wird, nur weil sie zu k¨ urze-
312
(a)
11. Spracherkennung mit Mustervergleich
(i−1, j)
(i−1, j−1)
-1
(i, j)
2
1 6 (i, j−1)
(b) 3 * 2
(c)
-
3
-1 1
⎫ ⎧ ⎬ ⎨ DA (i−1, j) + d(i, j) DA (i, j) = min DA (i−1, j−1) + 2d(i, j) ⎭ ⎩ DA (i, j−1) + d(i, j)
⎫ ⎧ ⎨ DA (i − 2, j−1) + 3d(i, j) ⎬ DA (i, j) = min DA (i−1, j−1) + 2d(i, j) ⎭ ⎩ DA (i−1, j − 2) + 3d(i, j)
⎧ ⎫ ⎨ DA (i−1, j)g(k) + d(i, j) ⎬ DA (i, j) = min DA (i−1, j−1) + d(i, j) , ⎩ ⎭ DA (i−1, j − 2) + d(i, j)
1
wobei g(k) =
∞ falls j(k-1) = j(k−2) 1 sonst
Abbildung 11.4. Gebr¨ auchliche Pfaderweiterungen und Gewichtungen und die resultierenden Rekursionsformeln f¨ ur die Berechnung der akkumulierten Distanz (siehe Gleichung (180)). Die Gewichtungsfunktion g(k) im Beispiel (c) verhindert, dass die horizontale Pfaderweiterung mehrmals hintereinander auftreten kann.
ren Warping-Kurven f¨ uhrt (die also durch weniger Punkte verlaufen). In der graphischen Darstellung wird das Gewicht jeweils zu der entsprechenden Pfaderweiterung geschrieben, wobei sich die Gewichtung auf die lokale Distanz des jeweiligen Zielpunktes bezieht.
11.1.4 Der DTW-Algorithmus Es stellt sich nun die Frage, wie man die optimale Warping-Kurve im Sinne von Gleichung (178) findet. Da jeder Abschnitt einer optimalen WarpingKurve seinerseits optimal sein muss, bietet sich die Methode der dynamischen Programmierung an. Bei der dynamischen Programmierung wird davon ausgegangen, dass die optimale L¨ osung eines Problems (hier das Finden einer optimalen Warping-Kurve mit einem bestimmten Endpunkt) aus den optimalen L¨ osungen von Teilproblemen (den optimalen Warping-Kurven, die in den m¨ oglichen Vorg¨ angerpunkten enden) zusammengesetzt werden kann.
11.1 Sprachmustervergleich
313
Die Grundidee ist die folgende: Man berechnet f¨ ur jeden Punkt (i, j) die Gesamtdistanz entlang der optimalen Warping-Kurve, die im Punkt (i, j) endet. Diesen Wert bezeichnen wir als die akkumulierte Distanz im Punkt (i, j) oder kurz als DA (i, j). Diese kann leicht berechnet werden, wenn zwei Informationen gegeben sind: Erstens muss man wissen, durch welchen der m¨ oglichen Vorg¨ angerpunkte die optimale Warping-Kurve verl¨ auft, und zweitens muss die akkumulierte Distanz dieses Vorg¨ angerpunktes bekannt sein. Der optimale Vorg¨ angerpunkt l¨ asst sich ebenfalls einfach bestimmen: Es ist derjenige uhrt. Man Punkt, der zur geringsten akkumulierten Distanz im Punkt (i, j) f¨ kann dies wie folgt mit einer Rekursionsgleichung ausdr¨ ucken, wobei p(m) der Vektor der m-ten Pfaderweiterung ist (vergl. auch Abbildung 11.5): ⎧ ⎫ DA ((i, j) − p(1)) + wp(1) d(i, j) ⎪ ⎪ ⎪ ⎪ ⎪ ⎨ DA ((i, j) − p(2)) + wp(2) d(i, j) ⎪ ⎬ DA (i, j) = min (180) .. ⎪ ⎪ ⎪ ⎪ ⎪ . ⎪ ⎩ ⎭ DA ((i, j) − p(M )) + wp(M ) d(i, j) Ty
Ty-1
DA(i-1,j) j
wp(1) DA(i,j)
wp(2)
wp(3)
j-1
DA(i-1,j-1)
DA(i,j-1)
2
1 1
2
i-1
i
Tx-1
Tx
Abbildung 11.5. Berechnung der akkumulierten Distanz, illustriert mit den Pfaderweite-
rungen von Abbildung 11.4a
314
11. Spracherkennung mit Mustervergleich
Die gesuchte Gesamtdistanz entspricht nun gerade der akkumulierten Distanz im Punkt (Tx , Ty ). Der DTW-Algorithmus berechnet sowohl die akkumulierten Distanzen gem¨ ass Gleichung (180) als auch die optimale Warping-Kurve. Der Algorithmus l¨ asst sich wie folgt formulieren: Initialisierung: Zuerst werden die lokalen Distanzen d(i, j) mit 1 ≤ i ≤ Tx und 1 ≤ j ≤ Ty ermittelt. Zudem wird die akkumulierte Distanz des Punktes (1, 1) initialisiert mit DA (1, 1) = d(1, 1). Rekursion:
ahlt, f¨ ur den die akkumulierNun wird ein Punkt (i, j) ausgew¨ ten Distanzen der erlaubten Vorg¨ angerpunkte (i, j) − p(m), m = 1, . . . , M bekannt sind, wobei DA (i, j) = ∞ f¨ ur i < 1 oder j < 1 definiert wird. F¨ ur den Punkt (i, j) wird mit der Gleichung (180) die akkumulierte Distanz DA (i, j) bestimmt. Zudem wird in Ψ(i, j) der Index m der optimalen Pfaderweiterung gespeichert. Dies wird so lange wiederholt bis die akkumulierte Distanz DA (Tx , Ty ) bestimmt ist, also die minimale Distanz D(X, Y) vorliegt.
Backtracking:
Die Warping-Kurve kann nun aus Ψ ermittelt werden. Beginnend bei φ(T ) = (Tx , Ty ) lassen sich mit der Rekursion φ(k−1) = φ(k) − p(Ψ(φ(k))) alle andern Punkte der optimalen Warping-Kurve nacheinander bestimmen.
Normierung:
Die Summe aller Gewichte, die beim Ermitteln der akkumulierten Distanz entlang der Warping-Kurve verwendet worden sind, kann ebenfalls rekursiv aus Ψ ermittelt werden ur k = 2, . . . , T , wobei w(1) = 1. mit w(k) = wp(Ψ(φ(k))) f¨ Die normierte Gesamtdistanz entlang der Warping-Kurve DφN (X, Y) ergibt sich somit aus T
DφN (X, Y) =
d(φ(k))w(k)
k=1 T k=1
= w(k)
DA (Tx , Ty ) . T w(k)
(181)
k=1
11.1.5 Spracherkennung mittels DTW Die Aufgabe einer DTW-basierten Spracherkennung ist es, f¨ ur ein Testorter des Erkennervokabulars muster X und die Referenzmuster Y(j) der W¨ V = {v1 , v2 , . . . , v|V | } zu entscheiden, welchem Referenzmuster Y(j) das Testmuster X am besten entspricht. Dies kann anhand der normierten Distanzen
11.1 Sprachmustervergleich
315
DφN (X, Y(j) ) entschieden werden, die mit der Gleichung (181) zu bestimmen sind. Als erkannt gilt das Wort vi mit i = argmin DφN (X, Y(j) ) .
(182)
j=1,...,|V |
Die normierte Distanz ist von der L¨ ange der Warping-Kurve unabh¨ angig und deshalb besser f¨ ur diesen Entscheid geeignet als die mit der Rekursionsgleichung (180) definierte akkumulierte Distanz. Es ist leicht einzusehen, dass mit der akkumulierten Distanz k¨ urzere Referenzmuster gegen¨ uber l¨ angeren bevorzugt w¨ urden, was selbstverst¨ andlich nicht erw¨ unscht ist.
11.1.6 Generieren von Referenzmustern Grunds¨ atzlich gibt es eine einfache Methode, f¨ ur ein bestimmtes Wort ein Referenzmuster anzufertigen. Man nimmt ein Sprachsignal dieses Wortes auf, ermittelt u ¨ ber eine Kurzzeitanalyse daraus eine Sequenz von Mel-Cepstren X = x1 x2 . . . xT und verwendet diese als Referenzmuster. Die Erfahrung zeigt jedoch, dass es besser ist, ein Referenzmuster aus mehreren Aufnahmen des betreffenden Wortes zu generieren, weil sich so gewisse Zuf¨ alligkeiten der Aussprache ausmitteln. Man hat also K Signale bzw. die daraus ermittelten Sequenzen von MelCepstren X(k) , k = 1, . . . , K . Es stellt sich nun die Frage, wie aus diesen Sequenzen das Referenzmuster ermittelt werden kann. Da die Sequenzen in der Regel verschieden lang sind, ist sicher eine dynamische Zeitanpassung n¨ otig. Daf¨ ur muss zuerst eine der Aufnahmen bzw. der Sequenzen als Zeitbasis ausgew¨ ahlt werden. Eine M¨ oglichkeit ist, diejenige Sequenz als Zeitbasis X(r) zu verwenden, die im Durchschnitt die kleinsten normierten Gesamtdistanzen ¨ zu allen andern aufweist und deshalb als eine Art mittlere Ausserung des Wortes betrachtet werden kann. Daf¨ ur m¨ ussen mittels DTW alle normierten Gesamtdistanzen zwischen je zwei Sequenzen berechnet werden. Dann m¨ ussen alle anderen Signale bzw. Sequenzen von Mel-Cepstren zeitlich so an X(r) angepasst werden, dass sie lautlich u ¨ bereinstimmen und selbstverst¨ andlich auch gleich lang sind. Wie leicht einzusehen ist, erfordert die zeitliche Anpassung in diesem Fall ein asymmetrisches Warping. Daf¨ ur kann der DTW-Algorithmus mit den Pfaderweiterungen von Abbildung 11.4(c) eingesetzt werden. Abbildung 11.6 zeigt das Resultat einer solchen Anpassung und in Abbildung 11.7 ist die entsprechende Warping-Kurve dargestellt. Schliesslich k¨ onnen die nun gleich langen Sequenzen gemittelt werden, woraus sich das gew¨ unschte Referenzmuster ergibt.
316
11. Spracherkennung mit Mustervergleich
c˘x (1)
5 1
60
0
−5 0
c˘y (1)
0.1
0.2
0.3
0.4
0.5
0.6
0.7
[s]
5 1
58
0
−5 0
c˘x (1)
5
c˘y (1)
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
1
[s]
60
−5 0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
[s]
Abbildung 11.6. Dynamische Zeitanpassung der Sprachmuster von Abbildung 11.1: Mit
den Pfaderweiterungen von Abbildung 11.4(c) ermittelt der DTW-Algorithmus die Warping-Kurve (Abbildung 11.7), u ¨ber welche die Sequenz von Mel-Cepstren Y zeitlich optimal an die Sequenz X angepasst wird. Aus Darstellbarkeitsgr¨ unden ist nur je der erste cepstrale Koeffizient in Funktion der Zeit aufgetragen.
55 50 45
Index j der Sequenz Y
40 35 30 25 20 15 10 5 5
10
15
20
25 30 35 40 Index i der Sequenz X
45
50
55
60
Abbildung 11.7. Warping-Kurve f¨ ur die dynamische Zeitanpassung in Abbildung 11.6
¨ 11.2 Aufnehmen einer Ausserung
317
11.1.7 Einsatzm¨ oglichkeiten und Grenzen Die Spracherkennung mittels Mustervergleich wird beispielsweise in sprachgesteuerten Telefonen verwendet. Der Benutzer kann Namen vorsprechen und zusammen mit den dazugeh¨ origen Telefonnummern abspeichern. Nun muss er die Nummer nicht mehr im Telefonbuch nachschlagen, sondern braucht nur ¨ den Namen zu nennen. Das Telefon vergleicht dann seine Ausserung mit den gespeicherten Sprachmustern. Der Name gilt als erkannt, wenn ein Muster ¨ mit gen¨ ugender Ahnlichkeit gefunden wird. Die DTW-basierte Spracherkennung wird gew¨ ohnlich f¨ ur die sprecherabh¨ angige Einzelworterkennung eingesetzt. Mit einigen Erweiterungen ist der DTWAlgorithmus auch f¨ ur gewisse Anwendungen in der sprecherunabh¨ angigen Erkennung von Einzelw¨ ortern und von Wortketten im Sinne einer Verbundworterkennung anwendbar (Details dazu sind z.B. in [22] zu finden). Der Mustervergleich mittels DTW ist ein nicht-parametrischer Ansatz f¨ ur die Spracherkennung. Um die Variabilit¨ at des Sprachsignals einer bestimmten ¨ Ausserung abzudecken, braucht man deshalb mehrere Referenzmuster. Diese k¨ onnen gewonnen werden, indem man eine gr¨ ossere Anzahl von Trainings¨ beispielen dieser Ausserung in Gruppen von m¨ oglichst ¨ ahnlichen Beispielen aufteilt, und aus jeder Gruppe ein Referenzmuster bestimmt. Diese Referenzmuster stellen sodann je eine Art Mittelwert einer Verteilung von Sprachmustern dar. Die Erkennung, die auf der Berechnung von lokalen Distanzen beruht, ber¨ ucksichtigt dabei die Varianz der Verteilungen nicht. Vor allem bei der sprecherunabh¨ angigen Erkennung hat sich aber gezeigt, dass eine genauere Beschreibung der Variabilit¨ at des Sprachsignals unbedingt notwendig ist. Dies kann mit einer statistische Modellierung erreicht werden, wie sie im Kapitel 12 gezeigt wird.
¨ 11.2 Aufnehmen einer Ausserung Bei der Spracherkennung geht es stets darum, aus dem Sprachsignal einer ¨ Ausserung den zugeh¨ origen Text zu ermitteln. Man setzt dabei voraus, dass das Sprachsignal bereits vorliegt und macht sich insbesondere keine Gedanken ¨ dar¨ uber, wie beim Aufnehmen einer Ausserung vorzugehen ist. Dies ist jedoch beim Einsatz eines Spracherkenners unentbehrlich und wird deshalb in diesem Abschnitt besprochen.
11.2.1 Anwendungsszenarien ¨ Beim Aufnehmen einer Ausserung k¨ onnen sich ganz unterschiedliche Probleme ergeben, die im Wesentlichen vom Anwendungsszenario abh¨ angen. Wir
11.2
318
11. Spracherkennung mit Mustervergleich
wollen deshalb ein paar wichtige Szenarien anschauen und u ¨ berlegen, welche ¨ Probleme sich dabei in Bezug auf das Aufnehmen von Ausserungen ergeben. 11.2.1.1 Lautsprachlicher Dialog Ein lautsprachlicher Dialog mit zwei Teilnehmern zeichnet sich dadurch aus, dass in der Regel die Dialogteilnehmer abwechselnd etwas sprechen. Auf eine Frage folgt eine Antwort und falls etwas nicht verstanden worden ist, wird dies entsprechend mitgeteilt. Falls jedoch einer der Teilnehmer zu lange nicht reagiert, dann ergreift der andere das Wort. ¨ Falls nun einer der beiden Dialogteilnehmer ein Computer ist, der die Ausserungen des anderen Dialogteilnehmers, also des Benutzers, einem Spracherkenner zuf¨ uhrt, dann muss sich der Computer auch an diese allgemeinen Dialogkonventionen halten. Ein Beispiel f¨ ur ein Dialogszenario ist ein automatisches Auskunftssystem, das u ur das Aufneh¨ ber das Telefon benutzt wird. F¨ ¨ men der Ausserungen des Benutzers m¨ ussen die folgenden Gesichtspunkte ber¨ ucksichtigt werden:
Reaktionszeit des Benutzers: Die Zeit, die ein Benutzer zum Reagieren ben¨ otigt, kann je nach Situation sehr unterschiedlich sein. Es kann sein, dass er auf eine Frage des Computers zuerst einige Sekunden nachdenken muss, bevor er antworten kann. Wenn der Benutzer innerhalb einer maximalen Reaktionszeit keine Antwort gibt, dann sollte der Computer wieder die Initiative ergreifen. Andererseits gibt es vielleicht ge¨ ubte Benutzer, welche schon antworten, bevor der Computer die Frage fertig ausgegeben hat. Der Benutzer unterbricht also den Computer (engl. barge-in), das heisst, der Computer sollte die Ausgabe stoppen, sobald er den Anfang einer Benutzer¨ ausserung festgestellt hat, was den Dialog stark beschleunigen kann. Weil aber die Ausgabe des Computers zusammen mit der Benutzereingabe aufgenommen wird, ist Barge-in nur in Kombination mit einem Echounterdr¨ ucker m¨ oglich. Reaktionszeit des Computers: Grunds¨ atzlich muss der Computer so ¨ schnell als m¨ oglich auf eine Ausserung des Benutzers reagieren. Wenn der Benutzer zu sprechen aufh¨ ort, dann soll der Computer dies sofort feststellen. Weil es in Sprachsignalen stets auch kurze Pausen gibt, z.B. die pr¨ aplosiven Pausen von Verschlusslauten, muss die Dauer der Stille, an¨ hand welcher das Ende einer Ausserung detektiert wird, l¨ anger sein als die ¨ Pausen, die innerhalb einer Ausserung vorkommen k¨ onnen. Diese Dauer plus die Zeit, bis das Resultat des Spracherkenners vorliegt, bestimmt die minimale Reaktionszeit des Computers.
¨ 11.2 Aufnehmen einer Ausserung
319
¨ Dauer der Ausserung: Um auszuschliessen, dass eine ganz kurze St¨ orung ¨ ¨ als Ausserung detektiert wird, wird f¨ ur eine Ausserung eine Minimaldauer vorgeschrieben. Umgekehrt kann Umgebungsl¨ arm dazu f¨ uhren, dass keine Endpause detektiert wird. In diesem Fall muss die Eingabe abgebrochen ¨ werden, sobal eine vorgegebene Maximaldauer der aufzunehmenden Ausserung u ¨ berschritten wird. in Abschnitt 11.2.2.3 wird ein einfaches Verfahren zum automatischen Detek¨ tieren von Ausserungen vorgestellt, das in solchen Dialogsystemen eingesetzt werden kann. Wichtig ist jedoch, dass die Parameter dieses Verfahrens in jedem Dialogschritt angepasst werden an die Zeit, die der Benutzer allenfalls ¨ ¨ zum Uberlegen braucht, an die L¨ ange der zu erwartenden Ausserung, usw. 11.2.1.2 Sprachsteuerung von Maschinen Bei einer sprachgesteuerten Maschine kann zumindest ein Teil der Steuerbefehle per Lautsprache erfolgen. Wesentlich ist dabei, dass (im Gegensatz zum Dialogszenario) gesprochene Befehle praktisch zu beliebigen Zeitpunkten erfolgen k¨ onnen. Die Maschine muss deshalb i.a. st¨ andig auf Aufnahme ¨ sein und im aufgenommenen Signal fortlaufend Ausserungen des Benutzers detektieren. Ist das akustische Umfeld relativ ruhig, d.h. die Stimme des Benutzers ist wesentlich lauter als die vorhandenen Umgebungsger¨ ausche und er spricht nur, wenn er der Maschine einen Befehl geben will, dann kann zur automatischen Detektion von Benutzer¨ ausserungen ebenfalls das Verfahren im Abschnitt 11.2.2.3 eingesetzt werden. In manchen F¨ allen ist dies jedoch nicht m¨ oglich. Wenn z.B. der Ger¨ auschpegel zu hoch ist und zudem auch variiert, dann kann kein einfaches Detektionsverfahren eingesetzt werden, das nur mit der Signalintensit¨ at arbeitet. F¨ ur solche F¨ alle braucht es ein aufw¨ andigeres Verfahren, in welchem beispielsweise eine Sprache-Ger¨ ausch-Unterscheidung eingebaut ist. Je nach Szenario ist es auch m¨ oglich, auf ein manuelles oder halbautomatisches Detektionsverfahren auszuweichen (siehe Abschnitte 11.2.2.1 und 11.2.2.2). Falls ab und zu andere Stimmen im Bereich des Mikrophons gut h¨ orbar sind oder der Benutzer nicht nur mit der Maschine spricht, dann kann das Detek¨ tieren einer Ausserung nicht mehr von der Erkennung getrennt werden. Es wird dann beispielsweise ein Online-Spracherkenner eingesetzt, der im fortw¨ ahrend aufgenommenen Signal st¨ andig nach einem Stichwort sucht, das vor jedem Steuerbefehl gesprochen werden muss. Ist dieses Stichwort detektiert worden, dann wird in einem bestimmten Zeitfenster mittels Keyword Spotting (vergl. Abschnitt 10.5) nach einem Steuerbefehl gesucht.
320
11. Spracherkennung mit Mustervergleich
11.2.1.3 Anwendungen mit graphischer Benutzeroberfl¨ ache Bei einer graphischen Benutzeroberfl¨ ache stehen dem Benutzer h¨ aufig verschiedene Eingaben zur Wahl. Wir wollen annehmen, dass nebst Tastatur und Maus auch lautsprachliche Eingaben m¨ oglich sind, sonst w¨ are eine graphische Benutzeroberfl¨ ache hier nicht von Interesse. Bei einer solchen Benutzeroberfl¨ ache laufen Spracheingaben gew¨ ohnlich so ab, dass der Benutzer zuerst mit der Maus ein Eingabefeld ausw¨ ahlen (anklicken) muss und dann zu sprechen beginnen kann. Bei graphischen Benutzeroberfl¨ achen ist somit ein halbautomatisches Detektionsverfahren passend, wie es in Abschnitt 11.2.2.2 skizziert wird.
11.2.2 Anfangs- und Endpunktdetektion Bei allen oben erl¨ auterten Anwendungsszenarien geht es grunds¨ atzlich um ¨ Mensch-Maschinen-Kommunikation. Dies bedeutet, dass eine Ausserung so aufgenommen und dem Spracherkenner zugef¨ uhrt werden muss, dass der erkannte Text m¨ oglichst schnell verf¨ ugbar ist, und die Maschine reagieren kann. Es w¨ are deshalb beispielsweise keine gute Idee, in einem lautsprachlichen Mensch-Maschinen-Dialog, wie er in Abschnitt 11.2.1.1 skizziert worden ist, stets ein fixes, 10 Sekunden langes Aufnahmefenster vorzusehen. Ein solches Fenster w¨ are allenfalls angemessen, wenn der Benutzer eine l¨ angere Antwort auf eine Frage zu geben hat und auch noch etwas Zeit zum Nachdenken ¨ braucht. F¨ ur kurze Benutzereingaben w¨ urde ein auf die l¨ angstm¨ ogliche Ausserung des Benutzers abgestimmtes Eingabefenster die Reaktionszeit der Maschine unn¨ otig verl¨ angern und die Kommunikation unertr¨ aglich verlangsamen. Die Aufnahme einer Benutzer¨ ausserung muss deshalb so erfolgen, dass ¨ das Ende der Ausserung vom Computer optimal schnell detektiert wird. Dies ist selbstverst¨ andlich nur mit einer Online-Detektion m¨ oglich, also wenn der Computer das Sprachsignal laufend aufnimmt und gleichzeit nach dem An¨ fang bzw. dem Ende einer Ausserung untersucht. 11.2.2.1 Manuelles Verfahren Die einfachste L¨ osung besteht darin, das Problem zum Benutzer zu verlagern, indem verlangt wird, dass dieser w¨ ahrend des Sprechens eine Taste gedr¨ uckt halten muss (engl. push-to-talk). Dieses Verfahren kommt beispielsweise bei Funkger¨ aten zur Anwendung. Einen disziplinierten Benutzer vorausgesetzt, w¨ are dies das beste Vorgehen, weil der Benutzer selbst am zuverl¨ assigsten beurteilen kann, wann er zu sprechen beginnt und wann er damit aufh¨ ort. Tats¨ achlich ist dieses Vorgehen aber f¨ ur viele Benutzer ungewohnt, was dazu f¨ uhrt, dass die Taste zu sp¨ at gedr¨ uckt oder zu fr¨ uh losgelassen wird, oder das Dr¨ ucken der Taste vollkommen in Vergessenheit ger¨ at. Dadurch wird das Sprachsignal entweder verst¨ ummelt oder u ¨ berhaupt nicht aufgenommen. Das
¨ 11.2 Aufnehmen einer Ausserung
321
Push-to-talk-Verfahren ist somit in der Regel zu wenig benutzerfreundlich. Ausserdem kann es bei Anwendungen, die u ¨ ber das Telefon benutzbar sein sollen, nicht eingesetzt werden, weil es schlicht keine Sprechtaste gibt. 11.2.2.2 Halbautomatisches Verfahren Bei einem halbautomatischen Verfahren wie tap-and-talk gibt der Benutzer nur den Startzeitpunkt an, beispielsweise durch einen Mausklick in ein entsprechendes Eingabefeld einer graphischen Benutzeroberfl¨ ache. Der Benutzer muss die Taste muss jedoch w¨ ahrend des Sprechens nicht gedr¨ uckt halten, ¨ das Ende der Ausserung wird automatisch detektiert. Im Vergleich zum Push-to-talk-Verfahren erleichtert das Tap-and-talk-Verfahren die Aufgabe des Benutzers. Es ist aber auch f¨ ur den Computer hilf¨ reich, weil er den Anfang der Ausserung nicht detektieren muss, was in einer l¨ armigen Umgebung, in der eventuell auch andere Stimmen zu h¨ oren sind, schwierig bis unm¨ oglich ist. Bei einem Tap-and-talk-Verfahren muss der Computer somit nur das Ende einer Benutzer¨ ausserung automatisch detektieren. Grunds¨ atzlich kann dies ahnlich geschehen wie beim nachfolgend skizzierten automatischen Verfahren. ¨ 11.2.2.3 Automatisches Verfahren ¨ Ein Verfahren zur automatischen Detektion von Ausserungen aus einem akustischen Signal kann beliebig komplex sein, falls das Ziel ist, auch in einem l¨ armigen Umfeld m¨ oglichst fehlerfrei zu detektieren. Fehlerfrei heisst, dass ¨ keine Ausserung detektiert werden darf, solange der Benutzer nicht spricht, ¨ dass keine Ausserung des Benutzers nicht detektiert werden darf und dass ins¨ besondere nicht der Anfang oder das Ende keiner Ausserung abgeschnitten werden darf. Wir wollen hier ein ziemlich einfaches Verfahren angeben, das ausschliesslich mit der Signalintensit¨ at, einem Schwellwert und einigen zeitlichen Randbedingungen arbeitet. Es ist deshalb nur f¨ ur Aufnahmen in wenig l¨ armiger Umgebung geeignet. Das Detektionsverfahren hat drei Parameter, n¨ amlich die Intensit¨ atsschwel¨ ta und die maximale Dauer einer le S , die Minimaldauer einer Ausserung ¨ tb . Damit das Verfahren zweckm¨assig arbeiPause innerhalb einer Ausserung tet, m¨ ussen diese Parameter geeignet eingestellt werden. Die Arbeitsweise des Detektionsverfahrens ist in Abbildung 11.8 veranschaulicht. ¨ Beim Detektieren einer Ausserung werden vom Zustand 1 ausgehend 5 Zust¨ ande durchlaufen. Vom Zustand 1 geht es in den Zustand 2, wenn die Intensit¨ at u uck zu 1, falls die ¨ ber den Schwellwert steigt. Vom Zustand geht es zur¨ Intensit¨ at unter den Schwellwert f¨ allt oder in den Zustand 3, falls der Zustand
322
11. Spracherkennung mit Mustervergleich 1
0
−1
0
0.5
1
1.5
[s]
2
0.5
1
1.5
[s]
2
[s]
2
0 [dB] −40 S = −65 dB −80 −120
0
Zustand
5
tb
4
ta
3 2 1 0
0.5
1
1.5
¨ Abbildung 11.8. Intensit¨ atsbasierte Detektion einer Ausserung: Der aus dem Signal mit dem Wort “Politik” (oben) ermittelte Intensit¨ atsverlauf (Mitte) und eine Schwelle (punk¨ tiert) dienen dazu, die Ausserung zu detektieren. Der im Abschnitt 11.2.2.3 erl¨ auterte Detektor durchl¨ auft dabei 5 Zust¨ ande (unten).
2 schon l¨ anger als ta andauert. Der Wechsel in den Zustand 3 heisst zugleich, ¨ dass die Ausserung zum Zeitpunkt t−ta begonnen hat. Vom Zustand 3 wird in den Zustand 4 gewechselt, wenn die Intensit¨ at unter den Schwellwert f¨ allt. Vom Zustand 4 aus geht es zur¨ uck zu 3, falls die Intensit¨ at u ¨ ber den Schwellwert steigt oder zum Zustand 5, falls der Zustand 4 schon l¨ anger als tb andauert. Der Wechsel in den Zustand 5 bedeutet, dass ¨ die Ausserung zum Zeitpunkt t−tb geendet hat. Die im Abschnitt 11.2.1.1 erw¨ ahnte maximale Reaktionszeit und die Maxi¨ maldauer der Ausserung sind in diesem Verfahren noch nicht ber¨ ucksichtigt. Das Verfahren l¨ asst sich jedoch leicht entsprechend erweitern. Dieses einfache automatische Verfahren ist f¨ ur den Einsatz in einer einigermassen ruhigen Umgebung v¨ ollig ausreichend. Wenn der Schwellwert an den jeweiligen Ger¨ auschpegel angepasst wird, dann ist es auch noch in etwas lauteren Umgebungen anwendbar, solange die Ger¨ ausche station¨ ar sind. Hingegen sind nur kurz auftretende oder durch den Sprecher verursachte Ger¨ ausche wie Atmen, R¨ auspern, Schmatzen ein Problem. Sie werden entweder anstelle
¨ 11.2 Aufnehmen einer Ausserung
323
¨ oder zusammen mit einem Sprachsignal als Ausserung detektiert. Wir verzichten hier darauf, f¨ ur dieses Problem einen L¨ osungsvorschlag zu machen, weil gewisse Spracherkenner mit diesem Problem sehr gut fertig werden (vergl. Abschnitt 12.7.2).
Kapitel 12 Statistische Spracherkennung
12
12
12 12.1 12.2 12.3 12.3.1 12.4 12.4.1 12.4.2 12.4.3 12.5 12.5.1 12.5.2 12.5.3 12.5.4 12.5.5 12.5.6 12.6 12.6.1 12.6.2 12.7 12.7.1 12.7.2 12.7.3 12.8 12.8.1 12.8.2 12.8.3 12.9
Statistische Spracherkennung Informationstheoretische Sicht............................... Spracherkennung gem¨ ass MAP-Regel ...................... Modellierung von Merkmalssequenzen ..................... Variabilit¨ at von Merkmalssequenzen........................ Akustische Modelle f¨ ur W¨ orter .............................. Sprachmerkmale f¨ ur die Spracherkennung................. HMM als Wortmodell ......................................... Erzeugen von Wortmodellen ................................. Spracherkennung mit Wort-HMM .......................... Einzelworterkennung ........................................... Worterkenner mit Erkennungsnetzwerk .................... Schl¨ usselworterkennung ....................................... Verbundworterkennung ........................................ Erkennung mit dem N-best-Viterbi-Algorithmus ......... Erkennung kontinuierlicher Sprache ........................ Akustische Modelle f¨ ur Wortteile ........................... Wahl der Grundelemente ..................................... Erzeugen von Grundelementmodellen ...................... Modelle f¨ ur verschiedene akustische Ereignisse........... Modelle f¨ ur Pausen ............................................ Modelle f¨ ur Ger¨ ausche ........................................ Modell f¨ ur beliebige Sprachsignale .......................... Spracherkennung mit Laut-HMM ........................... Erkennung einzeln gesprochener W¨ orter ................... Erkennung kontinuierlicher Sprache ........................ Reduktion des Rechenaufwands (Pruning) ................ St¨ arken und Schw¨ achen von HMM .........................
327 327 329 329 333 334 336 337 341 341 343 345 345 347 348 349 349 355 361 361 362 363 363 363 364 364 365
12 Statistische Spracherkennung 12.1
12.1 Informationstheoretische Sicht Stochastische Modellierung ist eine flexible Art, um mit der Variabilit¨ at von Sprachsignalen in der Spracherkennung umzugehen. Aus informationstheoretischer Sicht kann die Spracherkennung als Decodierungsproblem betrachtet werden, wie es in Abbildung 12.1 dargestellt ist: Ein Sprecher, der eine ¨ bestimmte Ausserung machen will, transformiert die gew¨ unschte Folge von W¨ ortern W mittels seines Sprechapparates in ein akustisches Signal s. Das akustische Signal wird auf irgendeine Art zum Erkenner u ¨ bertragen. Dort wird aus dem digitalisierten Sprachsignal eine Merkmalssequenz X extrahiert. ¨ betrachten, in den W Man kann nun X als Ausgang eines Ubertragungskanals geschickt worden ist. Die Aufgabe des linguistischen Decoders ist dann, aus ausserte Wortfolge zu sch¨ atzen. der Merkmalssequenz X die ge¨
Mitteilung
W-
Sprechapparat
s - Merkmalsextraktion
X Linguistischer Decoder
ˆ W -
Spracherkenner
Sprecher ¨ Ubertragungskanal
Abbildung 12.1. Informationstheoretische Sicht der Spracherkennung
12.2 Spracherkennung gem¨ ass MAP-Regel Das im vorherigen Abschnitt skizzierte Decodierungsproblem besteht darin, ˆ der ge¨ausserten oglichst gute Sch¨ atzung W aus der Merkmalssequenz X eine m¨ Wortfolge zu ermitteln. Aus statistischer Sicht kann dies wie folgt formuliert werden: Suche zu einer gegebenen Merkmalssequenz X = x1 x2 . . . xT dieˆ = w1 w2 . . . wK , welche von allen m¨oglichen Folgen von jenige Wortfolge W W¨ ortern aus einem vorgegebenen Vokabular V mit der kleinsten Wahrscheinlichkeit zu einem Fehlentscheid f¨ uhrt. Ein Fehlentscheid tritt dann auf, wenn mindestens eines der W¨ orter falsch ist. Dies wird mit der folgenden Entscheidungsregel erreicht:
12.2
328
12. Statistische Spracherkennung
Maximum-a-posteriori-Regel (MAP-Regel) Um die Wahrscheinlichkeit eines Fehlentscheides zu minimieren, ist bei ˆ auszuw¨ahlen, welgegebener Merkmalssequenz X diejenige Wortfolge W oglichen che die h¨ ochste A-posteriori-Wahrscheinlichkeit P (W|X) aller m¨ Folgen von W¨ ortern aufweist:
ˆ = argmax P (W|X) . W W∈V ∗
(183)
Da diese Entscheidungsregel auf A-posteriori-Wahrscheinlichkeiten basiert, wird sie als Maximum-a-posteriori-Regel oder kurz als MAP-Regel bezeichnet. Es kann gezeigt werden, dass diese Regel zur kleinsten Wahrscheinlichkeit f¨ ur 1 einen Fehlentscheid f¨ uhrt. Die A-posteriori-Wahrscheinlichkeit kann unter Verwendung des Satzes von Bayes (siehe Anhang A.4) ausgedr¨ uckt werden als
P (W|X) =
P (X|W) · P (W) . P (X)
(184)
Durch Einsetzen der Gleichung (184) in Gleichung (183) erhalten wir
ˆ = argmax P (X|W) · P (W) . W P (X) W∈V ∗
(185)
P (X) ist dabei die Wahrscheinlichkeit der Merkmalssequenz X. Da diese Wahrscheinlichkeit f¨ ur die Maximierung in Gleichung (185) konstant ist, kann sie die Entscheidung nicht beeinflussen und darf daher weggelassen werden. Damit kann die MAP-Regel formuliert werden als ˆ = argmax P (X|W) · P (W) . W W∈V ∗
(186)
In Gleichung (186) sind nun zwei wichtige Komponenten der statistischen Spracherkennung ersichtlich: 1. Die bedingte Wahrscheinlichkeit P (X|W), die aussagt, mit welcher Wahrscheinlichkeit die Merkmalssequenz X zu beobachten ist, wenn die Wortur eine gegebene Wortfolge sind gewisse Merkfolge W gesprochen wird. F¨ malssequenzen wahrscheinlicher als andere, weil sich die charakteristischen Eigenschaften der Laute auf die Merkmalssequenz auswirken. Aufgrund vieler Beispiele von Sprachsignalen kann eine statistische Beschreibung er1 Jeder Fehlentscheid wird gleich gewichtet, und zwar unabh¨ angig davon, ob nur ein einziges Wort falsch ist, oder ob alle W¨ orter falsch sind. Es wird also nicht die Anzahl der falschen W¨ orter minimiert, sondern die Anzahl der nicht vollst¨ andig korrekt erkannten Wortfolgen.
12.3 Modellierung von Merkmalssequenzen
329
zeugt werden, die angibt, welche Merkmalssequenzen f¨ ur welche Wortfolgen wie wahrscheinlich sind. Eine solche statistische Beschreibung wird auch als akustisches Modell bezeichnet. Daf¨ ur k¨ onnen Hidden-MarkovModelle (HMM) eingesetzt werden. Die Grundlagen zu den HMM wurden im Kapitel 5 behandelt. Die Anwendung der HMM f¨ ur die akustische Modellierung wird in diesem Kapitel erl¨ autert. 2. P (W) ist die A-priori-Wahrscheinlichkeit der Wortfolge W und ist von angig. Sie beschreibt also das Vorwisder Beobachtungssequenz X unabh¨ ucksichtigt insbesondere auch, dass gesen u ¨ber die Wortfolge W und ber¨ wisse Wortfolgen h¨ aufiger auftreten als andere. Sie wird als Sprachmodell bezeichnet. Auf solche Sprachmodelle wird im Kapitel 13 eingegangen.
12.3 Modellierung von Merkmalssequenzen Wie im Abschnitt 10.7 erl¨ autert wurde, ist es f¨ ur die Spracherkennung zweckm¨ assig, aus einem zu erkennenden Sprachsignal zuerst u ¨ ber eine Kurzzeitanalyse eine Sequenz von Merkmalen zu ermitteln. In diesem Abschnitt wollen wir uns nun mit der Beschreibung solcher Merkmalssequenzen besch¨ aftigen.
12.3.1 Variabilit¨ at von Merkmalssequenzen Im Abschnitt 10.3 wurde dargelegt, dass Sprachsignale mit derselben Aussage sehr unterschiedlich sein k¨ onnen. Diese Variabilit¨ at zeigt sich auch in den Merkmalssequenzen, die aus diesen Signalen ermittelt werden. Man kann insbesondere feststellen, dass die Merkmalssequenzen X = x1 x2 . . . xT einer Aussage in zweifacher Hinsicht variieren: Zum einen variiert die L¨ ange der Merkmalssequenz und zum andern der Wert des Merkmals xt an der Stelle t. Ein akustisches Modell muss selbstverst¨ andlich geeignet sein, diese beiden Arten von Variabilit¨ at zu beschreiben. Wir wollen zuerst der Frage nachgeonnen. Die L¨ ange der hen, wie wir die Werte des Merkmals xt beschreiben k¨ Merkmalssequenz werden wir im Abschnitt 12.3.1.2 anschauen. 12.3.1.1 Statistische Beschreibung von Sprachmerkmalen Um die Variabilit¨ at eines Sprachmerkmals xt zu erfassen, kann man es als Zufallsvariable betrachten und die Werte von xt mit einer Wahrscheinlichkeitsverteilung beschreiben. Wie im Anhang A.4.2 erl¨ autert wird, gibt es diskrete und kontinuierliche Wahrscheinlichkeitsverteilungen, mit denen diskrete bzw. kontinuierliche Zufallsvariablen beschrieben werden. Ein Sprachmerkmal, das sich f¨ ur die Spracherkennung gut eignet, ist das MFCC-Merkmal. Gem¨ ass den Angaben im Abschnitt 10.7.1 ist das in der Spracherkennung eingesetzte MFCC-Merkmal typischerweise ein 13-dimen-
12.3
330
12. Statistische Spracherkennung
sionaler Vektor. Die Elemente dieses Vektors k¨ onnen in einem gewissen Bereich beliebige Werte annehmen. Das zu beschreibende Sprachmerkmal ist somit eine mehrdimensionale, kontinuierliche Zufallsvariable. Diskrete Merkmale Mit einer Vektorquantisierung kann man MFCC-Vektoren auf diskrete Werte abbilden. Jeder Merkmalsvektor wird dabei einem der M Codebuchvektoren ck zugeordnet, wobei M die Gr¨osse des Codebuches ist. Die Zufallsvariable der quantisierten Sprachmerkmale xt kann sodann mit einer diskreten Wahrscheinlichkeitsverteilung beschrieben werden, wie dies im Anhang A.4.2.1 gezeigt wird. Diese Beschreibung gibt dann an, mit welcher Wahrscheinlichkeit xt gleich dem k -ten Codebuchvektor ist, oder formal ausgedr¨ uckt, P (xt = ck ) mit k = 1, . . . , M . Kontinuierliche Merkmale Falls man die Vektorquantisierung nicht anwendet, und dies ist in der Spracherkennung der Normalfall, dann wird die Verteilung des D-dimensionalen Sprachmerkmals xt mit einer multivariaten Gauss-Mischverteilung approximiert (siehe Anhang A.4.2.2).2 Dazu sind der D-dimensionale Mittelwertvekatzen. Diese Beschreibung gibt tor μ und die D×D-Kovarianzmatrix Σ zu sch¨ also die Likelihood f¨ ur xt an, also den Wert der D-dimensionalen Wahrscheinlichkeitsdichtefunktion an der Stelle xt oder kurz p(xt ). 12.3.1.2 Statistische Beschreibung von Merkmalssequenzen Im Abschnitt 12.3.1.1 haben wir gesehen, wie das Merkmal xt einer Merkmalssequenz X = x1 x2 . . . xT statistisch beschrieben werden kann. Wenn ¨ die Merkmalssequenz einer Ausserung stets gleich lang w¨ are, dann k¨ onnte man als Beschreibung der Sequenz einfach die Beschreibungen aller Elemente der Sequenz verwenden. Da dies jedoch nicht der Fall ist, muss man auf einen andern Beschreibungsansatz zur¨ uckgreifen, n¨ amlich auf HiddenMarkov-Modelle (HMM, siehe Kapitel 5). Unter einem HMM versteht man zwei gekoppelte Zufallsprozesse. Der erste ist ein Markov-Prozess mit einer Anzahl Zust¨ anden, die wir als S1 , S2 , . . . , SN bezeichnen. Die Zust¨ ande sind verdeckt (engl. hidden), sind also von aussen nicht sichtbar. Sie steuern den zweiten Zufallsprozess. Dieser erzeugt zu ass einer zustandsabh¨ angigen Wahrscheinjedem (diskreten) Zeitpunkt t gem¨ lichkeitsverteilung eine Beobachtung xt . Beim Durchlaufen einer Sequenz von 2
Grunds¨ atzlich w¨ aren auch andere Approximationen m¨ oglich, aber diese k¨ onnten sich dann im Zusammenhang mit den Hidden-Markov-Modellen als untauglich herausstellen (vergl. Abschnitt 5.5).
12.3 Modellierung von Merkmalssequenzen
331
Zust¨ anden Q = q1 q2 . . . qT , mit qt ∈ {S1 , S2 , . . . , SN }, erzeugt das HMM eine Sequenz von Beobachtungen X = x1 x2 . . . xT . Bei einem Markov-Prozess, wie er im Abschnitt 5.1.1 definiert wurde, ist die L¨ ange der Zustandssequenz und damit auch die L¨ ange der Beobachtungssequenz von den Zustands¨ ubergangswahrscheinlichkeiten abh¨ angig. Ein HMM ist also eine statistische Beschreibung f¨ ur Beobachtungssequenzen. Es beschreibt sowohl die L¨ ange der Sequenzen als auch die einzelnen Beobachtungen durch Wahrscheinlichkeiten. Das folgende Beispiel soll diesen Sachverhalt illustrieren. Gegeben ist das HMM in der Abbildung 12.2. Es ist ein lineares HMM (siehe Abschnitt 5.1.1.2) mit f¨ unf Zust¨ anden, die mit S1 bis S5 bezeichnet sind. S1 ist der Anfangszuubergangswahrscheinlichkeiten bestand, S5 der Endzustand. Die Zustands¨ schreiben, mit welcher Wahrscheinlichkeit das HMM vom Zustand Si in den Zustand Sj u ¨ bergeht. Wir bezeichnen diese Wahrscheinlichkeiten mit aij , wour die bei i, j = 1, . . . , N . In unserem Beispiel ist a22 = 0.8, a23 = 0.2 etc. F¨ in Abbildung 12.2 nicht mit Pfeilen eingezeichneten Zustands¨ uberg¨ ange sind die Zustands¨ ubergangswahrscheinlichkeiten null. In den Zust¨ anden S2 , S3 und S4 generiert das HMM eine Beobachtung x, wobei x ∈ {1, 2, 3, 4} ist. Es handelt sich also um ein HMM mit diskreten Beobachtungen. Welche Beobachtung mit welcher Wahrscheinlichkeit erzeugt wird, bestimmen die den Zust¨ anden zugeordneten diskreten Beobachtungswahrscheinlichkeitsverteilungen. Sie werden mit bj (k) = P (x=k|Sj ) bezeichnet, wobei j = 2, . . . , N −1 und k = 1, . . . , M sind. N ist die Anzahl der Zust¨ ande und M die Anzahl der diskreten Beobachtungen. andig Das diskrete HMM λ = (A, B) ist durch die aij und die bj (k) vollst¨ bestimmt. 0.8
S1
1
S2
0.9
0.2
x
P(x|S2)
1 2 3 4
0.04 0.12 0.08 0.76
S3
0.7
0.1
S4
0.3
x P(x|S3)
x P(x|S4)
1 2 3 4
1 2 3 4
0.03 0.91 0.04 0.02
S5
0.68 0.11 0.05 0.16
Abbildung 12.2. HMM mit f¨ unf Zust¨ anden und vier diskreten Beobachtungen
332
12. Statistische Spracherkennung
Wir k¨ onnen nun anhand dieses HMM allerhand berechnen. Beispielsweise k¨ onnen wir die Wahrscheinlichkeit bestimmen, dass das HMM die Zustandsauft. sequenz Q = S1 S2 S2 S3 S4 S4 S5 durchl¨
P (Q) = a12 a22 a23 a34 a44 a45 = 1 · 0.8 · 0.2 · 0.1 · 0.7 · 0.3 = 0.00336 Wir k¨ onnen auch berechnen, mit welcher Wahrscheinlichkeit das HMM die Beobachtungssequenz X = 2 4 2 1 4 erzeugt, wenn es diese Zustandssequenz Q durchl¨auft.
P (X|Q) = P (x=2|S2 ) P (x=4|S2 ) P (x=2|S3 ) P (x=1|S4 ) P (x=4|S4 ) = 0.12 · 0.76 · 0.91 · 0.68 · 0.16 ≈ 0.00903 Wir k¨ onnen auch berechnen, wie wahrscheinlich es ist, dass das HMM die Zuauft und dabei die Beobachtungssequenz X erzeugt. standssequenz Q durchl¨
P (Q, X) = P (X|Q) P (Q) ≈ 0.00003 Beim HMM in Abbildung 12.2 ist auch zu sehen, dass alle m¨ oglichen Zustandssequenzen Q = q0 q1 . . . qT+1 mit T = 5 die Beobachtungssequenz X = 2 4 2 1 4 erzeugen k¨onnen, allerdings mit unterscheidlichen Wahrscheinlichkeiten. Wenn wir also die Beobachtungssequenz X erhalten, dann wissen wir nicht, welche Zust¨ ande das HMM beim Erzeugen dieser Beobachtungssequenz durchlaufen hat. In diesem Beispiel ist ein HMM mit diskreten Beobachtungswahrscheinlichkeiten, also ein DDHMM (engl. discrete density HMM) verwendet worden. Grunds¨ atzlich gilt alles in diesem Beispiel erkl¨ arte auch f¨ ur HMM mit kontinuierlichen Beobachtungswahrscheinlichkeiten, also f¨ ur CDHMM (engl. continuous density HMM). 12.3.1.3 Die grundlegenden HMM-Probleme Im obigen Beispiel war das HMM vorgegeben und wir haben es eingesetzt, um gewisse Wahrscheinlichkeiten zu ermitteln, z.B. P (Q, X), also die Wahrauft scheinlichkeit, dass das HMM die gegebene Zustandssequenz Q durchl¨ und dabei die ebenfalls gegebene Beobachtungssequenz X erzeugt. Das ist eine recht einfache Aufgabe. Im Zusammenhang mit der Spracherkennung gibt es jedoch weitere, schwieriger zu l¨ osende Aufgaben, die wir als die grundlegenden HMM-Probleme bezeichnen. Evaluationsproblem Das erste Problem ist die Berechnung der Produktionswahrscheinlichkeit P (X|λ). Das ist die Wahrscheinlichkeit, mit der ein gegebenes HMM λ eine ebenfalls gegebene Beobachtungssequenz X erzeugt. Um P (X|λ) zu beoglichen Zurechnen, m¨ ussen die Wahrscheinlichkeiten P (X, Q|λ) u ¨ ber alle m¨
12.4 Akustische Modelle f¨ ur W¨ orter
333
standssequenzen Q summiert werden. Der sogenannte Forward-Algorithmus berechnet diese Summe sehr effizient. Decodierungsproblem Nebst der Produktionswahrscheinlichkeit, mit der ein HMM eine Beobachtungssequenz erzeugt, interessiert h¨ aufig auch diejenige Zustandssequenz ˆ = S1 q1 . . . qT S , welche eine gegebene Beobachtungssequenz mit der gr¨ossQ N ˆ wird als optimale Zustandssequenz bezeichten Wahrscheinlichkeit erzeugt. Q net und kann mit Hilfe des sogenannten Viterbi-Algorithmus berechnet werden. ˆ liefert der Viterbi-Algorithmus auch Nebst der optimalen Zustandssequenz Q ˆ ). die Verbundwahrscheinlichkeit P (X, Q|λ Sch¨ atzproblem Das dritte Problem besteht darin, f¨ ur eine Menge von gegebenen Merkmalssequenzen X = {X(1) , X(2) , X(3) , . . .}, die wir aus der Kurzzeitanalyse von ¨ mehreren Sprachsignalen derselben Ausserung erhalten haben, die Parameter ubergangswahrscheinlichkeiten eines HMM λ zu bestimmen, also die Zustands¨ aij und Beobachtungswahrscheinlichkeitsverteilungen bj (x). Das Ziel dabei oglichst hoher Wahrist, dass das HMM die Merkmalssequenzen X mit m¨ scheinlichkeit erzeugt (Maximierung der Produktionswahrscheinlichkeit; siehe Evaluationsproblem). Dieses Problem kann mit dem sogenannten BaumWelch-Algorithmus gel¨ ost werden.
Mit den oben genannten Algorithmen, die in Kapitel 5 eingehend behandelt wurden, k¨ onnen nun Spracherkenner f¨ ur verschiedenste Problemstellungen entwickelt werden.
12.4 Akustische Modelle f¨ ur W¨ orter Um den im Abschnitt 12.2 beschriebenen MAP-Erkenner verwirklichen zu k¨ onnen, wird ein akustisches Modell ben¨ otigt, mit welchem die bedingte Wahrscheinlichkeit P (X|W) bestimmt werden kann. Mit anderen Worten: Es wird ein Modell ben¨ otigt, das angibt, mit welcher Wahrscheinlichkeit die aussert wird. Merkmalssequenz X beobachtet wird, wenn die Wortfolge W ge¨ Das Ziel dieser Modellierung ist es, f¨ ur diese Wortfolge die Variabilit¨ at der entsprechenden Merkmalssequenzen m¨ oglichst genau zu beschreiben. Der Einfachheit halber wollen wir vorerst annehmen, dass die Wortfolge nur ein Wort lang sei. In diesem Fall beschreibt also das akustische Modell P (X|vj ) die Wahrscheinlichkeit der Merkmalssequenz X, wenn das Wort vj gesprochen wird.
12.4
334
12. Statistische Spracherkennung
12.4.1 Sprachmerkmale f¨ ur die Spracherkennung Im Abschnitt 10.7 wurden die Anforderungen an Sprachmerkmale, die f¨ ur die Spracherkennung eingesetzt werden sollen, erl¨ autert. Es wurde insbesondere gezeigt, dass sich MFCC grunds¨ atzlich gut f¨ ur die Spracherkennung eignen. ¨ 12.4.1.1 Kompensation des Ubertragungskanals ¨ MFCC sind von der Charakteristik des Ubertragungskanals abh¨ angig, u ¨ ber den das zu erkennende Sprachsignal u onnen ¨ bertragen wird (beispielsweise k¨ Telefonkan¨ ale sehr unterschiedlich sein). Der Einfluss der Kanalcharakteristik kann kompensiert werden, indem z.B. mittelwertfreie Cepstren als Merkmale verwendet werden (siehe Abschnitt 4.6.7). In vielen F¨ allen ist dies nicht m¨ oglich, etwa weil das erste zu erkennende Wort zu kurz ist, um den cepstralen Mittelwert zu sch¨ atzen. Umfasst das Wort nur wenige Laute, dann pr¨ agen diese den Mittelwert und er ist damit stark abh¨ angig von den paar konkret vorhanden Lauten. Als Ausweg bietet sich an, das im Abschnitt 4.6.6 beschriebene Delta-Cepstrum zu verwenden, und zwar nicht als Ersatz der MFCC, sondern zus¨ atzlich zu diesen. Da man festgestellt hat, dass auch die zweite Ableitung des Cepstrums, also das sogenannte Delta-Delta-Cepstrum, die Spracherkennung verbessert und ebenso die zeitlichen Ableitungen der logarithmierten Signalenergie (pro Analyseabschnitt), werden heute f¨ ur die Spracherkennung in der Regel mehrere Merkmale verwendet. 12.4.1.2 Verwendung mehrerer Merkmale Wie im obigen Abschnitt erw¨ ahnt, werden zur Spracherkennung meistens mehrere Sprachmerkmale verwendet. Die Merkmale haben unterschiedliche Dimensionen und Wertebereiche und k¨ onnen im Zusammenhang mit den HMM als parallele Merkmalssequenzen betrachten werden. Es gibt grunds¨ atzlich drei M¨ oglichkeiten, um diese parallelen Merkmalssequenzen zu handhaben:
1. Die Merkmalsvektoren, die aus demselben Analyseabschnitt extrahiert worden sind, werden zu einem einzigen Merkmalsvektor zusammengesetzt. Diese Variante ist f¨ ur CDHMM geeignet. Bei DDHMM ist dies nicht sinnvoll, weil sonst f¨ ur die Vektorquantisierung dieses vieldimensionalen Merkmalsvektors ein enorm grosses Codebuch notwendig w¨ are. 2. Im Zusammenhang mit DDHMM wird deshalb gew¨ ohnlich f¨ ur jedes einzel¨ ne Merkmal ein separates Codebuch eingesetzt. Ubliche sind Codebuchgr¨ ossen zwischen 64 und 256 f¨ ur die cepstralen Merkmale und zwischen 16 und 32 f¨ ur die eindimensionalen Energiemerkmale. Damit entsteht aber das Problem, wie die Beobachtungswahrscheinlichkeiten der einzel-
12.4 Akustische Modelle f¨ ur W¨ orter
335
nen Merkmalsvektoren in einem HMM-Zustand zusammengefasst werden k¨ onnen. Falls man annimmt, dass die parallelen Merkmale voneinander unabh¨ angig sind, so ergibt sich die Verbundwahrscheinlichkeit aller Merkmale einfach aus dem Produkt der einzelnen Beobachtungswahrscheinlichkeiten:
bi (x(1) , x(2) , . . . , x(F ) ) =
F
(f )
α(f ) bi (x(f ) ) .
(187)
f =1
Die Sch¨ atzformeln f¨ ur DDHMM in Funktion der Hilfswahrscheinlichkeiten bleiben dieselben auch f¨ ur parallele Merkmalssequenzen. Bei der Berechnung der Vor- und R¨ uckw¨ artswahrscheinlichkeiten jedoch m¨ ussen die Wahrscheinlichkeiten der parallelen Merkmale mit Hilfe von (187) berechnet werden. Da der Informationsgehalt der einzelnen Merkmale und damit der Beitrag an die Spracherkennung unterschiedlich ist, m¨ ussen die Beobachtungs(f ) entsprechend gewichtet wahrscheinlichkeiten der einzelnen Merkmale x werden. Die Gewichte α(f ) werden experimentell optimiert. 3. Eine weitere M¨ oglichkeit ist, f¨ ur jedes Merkmal ein separates HMM zu trainieren. Unter der Annahme, dass die Merkmalssequenzen unabh¨ angig sind, ergibt sich die totale Produktionswahrscheinlichkeit wiederum aus dem Produkt der merkmalsspezifischen Produktionswahrscheinlichkeiten. Auch hier m¨ ussen die Produktionswahrscheinlichkeiten der einzelnen Modelle gewichtet werden. In verschiedenen Untersuchungen wurde kein signifikanter Unterschied in den Erkennungsraten dieser Methode im Vergleich zur Variante 2 festgestellt. 12.4.1.3 Kovarianzmatrizen von Sprachmerkmalen Im Anhang A.4.2.2 wird erw¨ ahnt, dass die Kovarianzmatrix einer Sequenz von Merkmalsvektoren eine Diagonalmatrix ist, wenn die D Komponenten des Merkmalsvektors paarweise unkorreliert sind. Dies ist vorteilhaft, da eine ahrend f¨ ur eine volle Kodiagonale Kovarianzmatrix nur D Parameter hat, w¨ atzen sind. Der Unterschied varianzmatrix ungef¨ ahr D2 /2 Parameter zu sch¨ kann betr¨ achtlich sein, insbesondere wenn mehrere Sprachmerkmale verwendet werden, wie dies in der Spracherkennung gew¨ ohnlich der Fall ist. Werden beispielsweise 13 MFCC-Koeffizienten plus die erste und zweite Ableitung davon in einem Merkmalsvektor zusammengefasst, so ist D = 13+13+13 = 39 und es m¨ ussen f¨ ur eine volle Kovarianzmatrix (D2 +D)/2 = 780 Parameter f¨ ur eine einzelne Komponente der Mischverteilung eines Zustandes gesch¨ atzt werden. H¨ aufig reichen die Trainingsdaten gar nicht aus, um volle Kovarianzmatrizen zu sch¨ atzen. Sie werden dann als diagonal angenommen.
336
12. Statistische Spracherkennung
24 20 16 12 8 4
24 0.95 0.9 0.85 0.8 0.75 0.7
20 16
0.8 0.6
12 0.4 8 4
0.2
4 8 12 16 20 24 4 8 12 16 20 24 Abbildung 12.3. Kovarianzmatrizen von Sprachmerkmalen. Links ist das logarithmier-
te Mel-Spektrum (Mel-Filterbank mit 24 Filtern), rechts das Mel-Cepstrum als Merkmal verwendet worden. Die Merkmale sind pro Element eines Merkmalsvektors so normiert worden, dass die Varianz 1 ist und somit auch die Werte in der Diagonalen der Kovarianzmatrix alle 1 sind. Man beachte die unterschiedlichen Skalen.
Je nach verwendeten Merkmalen trifft diese Annahme mehr oder weniger gut zu. Um dies zu illustrieren, wurde die Kovarianzmatrix von 3.6 Millionen Merkmalsvektoren (das entspricht ungef¨ ahr 10 Stunden Sprachsignal) berechnet. Als erstes Merkmal wurden die logarithmierten Werte am Ausgang einer Mel-Filterbank verwendet, als zweites Merkmal dienten MFCC. Wie in Abbildung 12.3 zu sehen ist, sind die Filterbankausg¨ ange ziemlich stark korreliert und die Voraussetzung f¨ ur eine Diagonalmatrix ist nicht gegeben. Die MFCC werden anhand der Gleichung (53) ermittelt. Sie entstehen also durch eine diskrete Cosinus-Transformation der logarithmierten Ausg¨ ange der MelFilterbank. Wie aus der Abbildung 12.3 ersichtlich ist, sind die cepstralen Koeffizienten dank dieser Transformation einigermassen dekorreliert. Daher ist die Kovarianzmatrix n¨ aherungsweise eine Diagonalmatrix.
12.4.2 HMM als Wortmodell Mit den Kenntnissen, welche Sprachmerkmale f¨ ur die Spracherkennung geeignet sind und wie man Sequenzen von Sprachmerkmalen statistisch beschreiben kann, wollen wir nun HMM f¨ ur konkrete W¨ orter erzeugen, sogenannte Wort-HMM. Wir modellieren also die W¨ orter des Erkennervokabuur jedes Wort ein zugeh¨ origes HMM lars V = {v1 , v2 , . . . , v|V | }, indem wir f¨ ermitteln, also λ1 , λ2 , . . . λ|V | . Bisher haben wir uns noch nicht u ur eine Topologie ein Wort¨ berlegt, was f¨ HMM haben sollte. Die Topologie des HMM wird durch die Initialwerte der Zustands¨ ubergangswahrscheinlichkeiten bestimmt, die, einmal auf null gesetzt, auch w¨ ahrend der Iteration im Training null bleiben (vergl. Abschnitt 5.1.1). Um dem zeitlichen Verlauf eines Sprachsignals gerecht zu werden und
12.4 Akustische Modelle f¨ ur W¨ orter
337
¨ um das Uberspringen von Zust¨ anden zu verhindern, ist f¨ ur ein Wort ein lineares HMM zu verwenden (siehe Abschnitt 5.1.1.2). Zudem muss festgelegt werden, wieviele Zust¨ ande ein Wort-HMM haben soll. anden einsetzen, dann hat die k¨ urzeste Wenn wir ein lineares HMM mit N Zust¨ Beobachtungssequenz, die ein solches HMM erzeugen kann, die L¨ ange N −2. F¨ ur k¨ urzere Sequenzen ist die Produktionswahrscheinlichkeit null. F¨ ur ein Wort-HMM ist deshalb die Anzahl der Zust¨ ande so festzulegen, dass auch wenn das betreffende Wort sehr schnell gesprochen wird, noch eine Merkmalssequenz resultiert, deren L¨ ange mindestens N −2 ist. Wenn man die Kurzzeitanalyse mit einer Rate von 100 Hz durchf¨ uhrt und ber¨ ucksichtigt, dass sehr schnelle Sprecher bis zu 20 Laute pro Sekunde sprechen, dann ergibt sich als obere Grenze der Anzahl der HMM-Zust¨ ande f¨ ur ein Wort mit nL Lauten Nmax = 5nL +2. ¨ Die untere Grenze ergibt sich aus der Uberlegung, dass das HMM ein Wort genau beschreiben soll. Daf¨ ur ist mindestens ein emittierender Zustand pro uberg¨ ange Laut erforderlich, es gilt also Nmin = nL + 2. Um auch die Laut¨ gut beschreiben zu k¨ onnen, ist es jedoch besser, zwei oder drei Zust¨ ande pro Laut vorzusehen.
12.4.3 Erzeugen von Wortmodellen F¨ ur das Vokabular V = {v1 , v2 , . . . , v|V | } eines Spracherkenners die zugeh¨ origen Wort-HMM zu erzeugen heisst, f¨ ur jedes Wort Sprachsignale aufzunehmen, aus diesen die gew¨ unschten Merkmale zu extrahieren und schliesslich die Wort-HMM zu trainieren. Darauf wird in den folgenden Abschnitten eingegangen. 12.4.3.1 Aufnahme von Sprachsignalen f¨ ur Wort-HMM Bevor HMM f¨ ur einen Erkenner trainiert werden k¨ onnen, m¨ ussen geeignete Sprachsignale aufgenommen werden. Die Aufnahmen sollten m¨ oglichst unter denselben Bedingungen erfolgen, wie sie sp¨ ater beim Einsatz des Spracherkenners vorliegen werden. Das heisst, dass beispielsweise f¨ ur Telefonanwendungen die Trainingssprachsignale nicht nur mit Telefonbandbreite (300–3400 Hz), sondern u ¨ ber echte Telefonverbindungen mit verschiedenen Telefonapparaten (auch Mobiltelefone) und in m¨ oglichst realit¨ atsnaher Gespr¨ achsumgebung aufgenommen werden sollten. Was den Umfang der Sprachdaten angeht, gilt: Je mehr desto besser. Eine grobe Sch¨ atzung der minimal n¨ otigen Menge von Sprachdaten erh¨ alt man mit der Faustregel, dass mindestens etwa 10 Beobachtungen pro freien Parameter gebraucht werden, um einigermassen gute Sch¨ atzwerte zu erhalten. Die Zustands¨ ubergangswahrscheinlichkeitsmatrix eines linearen HMM mit N Zust¨ anden hat 2N −2 freie Parameter. Bei einem HMM mit diskreten Beob-
338
12. Statistische Spracherkennung
achtungen m¨ ussen f¨ ur jeden emittierenden Zustand mit M diskreten Beobatzt werden. Bei einem kontinuierlichen HMM achtungen M Parameter gesch¨ ur jede Mischverteilung mit einem D-dimensionalen Merkmalsvektor fallen f¨ ur den Mittelwert an, und in jedem Zustand im Wesentlichen D Parameter f¨ ur eine volle Kovarianzmatrix bzw. D Parameter, ungef¨ ahr D2 /2 Parameter f¨ wenn diese als diagonal angenommen wird. Eine weitere Forderung bez¨ uglich des Sprachdatenumfangs resultiert aus der oft gew¨ unschten Sprecherunabh¨ angigkeit des Erkenners. Zwar erreicht man bereits mit ca. 200 Sprechern (und Sprecherinnen) eine gewisse Sprecherunabh¨ angigkeit. M¨ ochte man jedoch eine gr¨ ossere Sprachregion mit verschiedenen Dialekteinfl¨ ussen abdecken, so rechnet man heute mit etwa 5000 Sprechern. Dabei sollten alle wichtigen Einflussfaktoren in ihrer ganzen Bandbreite repr¨ asentiert sein (Dialekt, Alter, Geschlecht, etc.). Wie f¨ ur alle statistischen Modelle gilt auch f¨ ur HMM, dass sie nur das beschreiben, was in den Trainingsdaten vorgekommen bzw. als Vorwissen in die Modelle eingeflossen ist. Da das Sammeln und Annotieren von grossen Sprachdatenbanken f¨ ur die Entwicklung von leistungsf¨ ahigen Spracherkennern unabdingbar, aber zugleich mit enormem Aufwand verbunden ist, befassten (und befassen) sich verschiedene internationale Projekte mit dem Aufbau solcher Sprachdatenbanken f¨ ur alle wichtigen Sprachen.3 12.4.3.2 Training von Wort-HMM F¨ ur das Training von Wort-HMM kann man grunds¨ atzlich den Baum-WelchAlgorithmus einsetzen oder ein Viterbi-Training durchf¨ uhren. Welches Training angemessener ist, h¨ angt von der Art ab, wie die Wort-HMM sp¨ ater im Spracherkenner eingesetzt werden. Darauf wird im Abschnitt 12.5 eingegangen. Beide Trainingsmethoden sind iterative Verfahren und gehen von einem bereits vorhandenen Initial-HMM aus. Initial-HMM F¨ ur ein Initial-HMM m¨ ussen zuerst die Topologie und die Anzahl der Zust¨ ande festgelegt werden. Dies wurde f¨ ur Wort-HMM in Abschnitt 12.4.2 bereits er¨ ortert. Mit der Topologie ist auch bestimmt, welche Zustands¨ ubergangsa sind Initialwerte festzusetwahrscheinlichkeiten null sind. F¨ ur die u brigen ¨ ij zen. Die Wahl dieser Initialwerte ist nicht kritisch. F¨ ur lineare Modelle kann beispielsweise aii = 0.7 und ai,i+1 = 0.3 verwendet werden. 3
Diese Datenbanken werden von mehreren Gremien gesammelt und zur Nutzung angeboten. Im amerikanischen Raum ist dies vor allem das LDC (Linguistic Data Consortium), im europ¨ aischen Raum die ELRA (European Language Resources Association).
12.4 Akustische Modelle f¨ ur W¨ orter
339
Beim Initialisieren der Beobachtungswahrscheinlichkeiten muss zwischen DDHMM und CDHMM unterschieden werden. Werden diskrete Merkmale und somit DDHMM verwendet, dann kann einfach eine Gleichverteilung angesetzt werden (siehe Abschnitt 5.4.9). Bei CDHMM wird u ¨ ber alle Trainingsdaten, die f¨ ur das Training des Wortmodells eingesetzt werden sollen, der Mittelwertvektor und die Kovarianzmatrix ermittelt und diese Werte als Initialwerte f¨ ur die Beobachtungswahrscheinlichkeitsverteilungen aller Zust¨ ande verwendet. Das Initial-CDHMM hat demzufolge nur eine Mischkomponente (siehe auch Abschnitt 5.5.6). Baum-Welch-Training Falls diskrete Merkmale verwendet werden, wird f¨ ur das Training eines DDHMM der Baum-Welch-Algorithmus gem¨ ass Abschnitt 5.4.7 eingesetzt. Werden jedoch kontinuierliche Merkmale verwendet, dann wird der BaumWelch-Algorithmus f¨ ur CDHMM im Abschnitt 5.5.4 angewendet. In beiden F¨ allen m¨ ussen f¨ ur das Training selbstverst¨ andlich mehrere Merkmalssequenzen eingesetzt werden. Es ist deshalb zus¨ atzlich noch der Abschnitt 5.6 zu beachten. Viterbi-Training Beim Viterbi-Training wird zus¨ atzlich zum Initial-HMM eine Initialsegmentierung der Sprachsignale bzw. der daraus ermittelten Merkmalssequenzen ben¨ otigt, die angibt, welche Merkmale zu welchem HMM-Zustand geh¨ oren. Da eine solche Segmentierung im Fall von Wort-HMM gew¨ ohnlich nicht voranden die Merkmalssequenzen in liegt, teilt man f¨ ur ein HMM mit N Zust¨ N −2 gleichlange St¨ ucke auf. Mit dieser Initialsegmentierung kann sodann das Viterbi-Training durchgef¨ uhrt werden, das f¨ ur DDHMM im Abschnitt 5.4.8 und f¨ ur CDHMM im Abschnitt 5.5.5 beschrieben ist. Auch hier m¨ ussen f¨ ur das Training mehrere Merkmalssequenzen eingesetzt werden und es ist dementsprechend der Abschnitt 5.6 zu beachten. 12.4.3.3 Nicht zum Vokabular des Erkenners geh¨ orige W¨ orter F¨ ur den Einsatz eines Spracherkenners ist es wichtig, dass dieser detektieren kann, ob die m¨ undliche Eingabe des Benutzers u ¨ berhaupt zum Vokabular ¨ des Erkenners geh¨ ort. Gem¨ ass der MAP-Entscheidungsregel wird eine Ausserung ja einfach demjenigen Wort des Erkennervokabulars zugeordnet, das die h¨ ochste A-posteriori-Wahrscheinlichkeit aufweist. Wenn ein Wort ausserhalb des Erkennervokabulars ge¨ aussert wird, so erkennt der Spracherkenner ohne zus¨ atzliche Massnahmen einfach das ¨ ahnlichste Wort des Vokabulars. Eine Idee, W¨ orter ausserhalb des Erkennervokabulars zu erkennen, k¨ onnte das Setzen eines Mindestwerts f¨ ur die A-posteriori-Wahrscheinlichkeiten
340
12. Statistische Spracherkennung
P (vi |X) sein.4 Um aber aus den Produktionswahrscheinlichkeiten P (X|λi ) die A-posteriori-Wahrscheinlichkeiten P (λi |X) gem¨ ass Gleichung (184) berechnen zu k¨ onnen, braucht es eine Sch¨ atzung der Wahrscheinlichkeit P (X), mit der die Produktionswahrscheinlichkeiten normiert werden m¨ ussen. F¨ ur kontinuierliche Beobachtungen ist P (X) prinzipiell nicht ermittelbar und im diskreten Fall ist Menge der m¨ oglichen Merkmalssequenzen, die gleich lang sind wie X, enorm gross. In einem HMM-basierten Spracherkenner wird deshalb f¨ ur nicht zum Erkennervokabular geh¨ orige W¨ orter ein sogenanntes R¨ uckweisungsmodell eingesetzt. F¨ ur ein solches R¨ uckweisungsmodell λR soll gelten: P (X|λR ) ≤ P (X|λw ) ,
f¨ ur w ∈ V
P (X|λR ) ≥ P (X|λw ) ,
f¨ ur w ∈ /V
(188)
Das R¨ uckweisungsmodell soll also genau dann die h¨ ochste Produktionswahrscheinlichkeit liefern, wenn die Merkmalssequenz X von einem Wort stammt, ort. das nicht zum Vokabular V geh¨ Ein einfaches und in der Regel erfolgreiches Vorgehen um ein R¨ uckweisungsmodell mit den in Gleichung (188) beschriebenen Eigenschaften zu erhalten ist, das R¨ uckweisungsmodell mit den Trainingsdaten aller W¨ orter des Vokabulars zu trainieren. Dadurch entsteht ein Modell mit sehr flachen Beobachtungswahrscheinlichkeitsverteilungen. Falls die Vokabularw¨ orter sehr unterschiedlich lang sind, kann es zweckm¨ assig sein, mehrere R¨ uckweisungsmodelle zu trainieren, beispielsweise je eines f¨ ur kurze, mittlere und lange W¨ orter. Die Initial-HMM f¨ ur R¨ uckweisungsmodelle sind analog zu denjenigen f¨ ur die Vokabularw¨ orter zu w¨ ahlen. 12.4.3.4 Modelle f¨ ur Ger¨ ausche und Pausen Im letzten Abschnitt wurde erl¨ autert, dass ein spezielles HMM gebraucht wird, um nicht zum Erkennervokabular geh¨ orige W¨ orter als solche zu erkennen. Nur so kann der Spracherkenner feststellen, ob ein zu erkennendes Wort u orter ist oder nicht. ¨ berhaupt eines der Vokabularw¨ ¨ Die gleichen Uberlegungen gelten auch f¨ ur andere Schallereignisse wie Hintergrundger¨ ausche oder vom Sprecher verursachte Ger¨ ausche wie R¨ auspern, Atmen oder Schmatzen. Damit der Spracherkenner diese ausserlinguistischen Schallereignisse von den W¨ ortern des Vokabulars unterscheiden kann, ist ein entsprechendes Modell f¨ ur Ger¨ ausche erforderlich. 4
F¨ ur die Produktionswahrscheinlichkeiten P (X|λi ) selbst einen Mindestwert festange zusetzen ist selbstverst¨ andlich nicht m¨ oglich, weil P (X|λi ) mit zunehmender L¨ der Beobachtungssequenz X kleiner wird.
12.5 Spracherkennung mit Wort-HMM
341
Gew¨ ohnlich werden f¨ ur die Modellierung von Ger¨ auschen vollverbundene HMM eingesetzt, weil die zeitliche Abfolge der aus den Ger¨ auschsignalen extrahierten Merkmale in diesem Zusammenhang nicht interessiert. Die Merkmale k¨ onnen auch hier grunds¨ atzlich diskret oder kontinuierlich sein. Selbstverst¨ andlich m¨ ussen jedoch f¨ ur das Ger¨ auschmodell die gleichen Merkmale verwendet werden wie f¨ ur die u ¨ brigen Modelle. Um ein Ger¨ auschmodell trainieren zu k¨ onnen, m¨ ussen f¨ ur den Einsatz des Spracherkenners typische Ger¨ auschsignale vorhanden sein. Liegen diese vor, dann kann das Training analog zum Training eines Wort-HMM erfolgen (siehe Abschnitt 12.4.3.2). In der Spracherkennung ist oft auch ein Pausenmodell n¨ utzlich, mit dem man Stille oder Pausen erkennen kann, wie sie vorhanden sind, wenn weder Sprache noch andere wahrnehmbare akustische Ereignisse vorhanden sind. W¨ ahrend Pausen sind aber stets noch mehr oder weniger leise Hintergrundger¨ ausche vorhanden, auch wenn davon gar nichts zu h¨ oren ist. Ein solches Pausenmodell hat die gleiche Topologie wie ein Ger¨ auschmodell, es wird jedoch mit Signalen von Pausen trainiert.
12.5 Spracherkennung mit Wort-HMM Nachdem wir im Abschnitt 12.4 besprochen haben, wie f¨ ur das Vokabular V = {v1 , v2 , . . . , v|V | } eines Spracherkenners die entsprechenden Wort-HMM λ1 , λ2 , . . . λ|V | zu erzeugen sind, wollen wir diese nun f¨ ur die Spracherkennung einsetzen. Vor dem Erkennen muss aus einem Sprachsignal eine Merkmalssequenz X extrahiert werden. Selbstverst¨ andlich muss die Merkmalsextraktion beim Erkennen exakt gleich sein wie beim Training. Liegt die Merkmalssequenz vor, dann kann die eigentliche Erkennung beginnen. Es bieten sich dabei verschiedene M¨ oglichkeiten an. Eine Auswahl davon wird in den folgenden Abschnitten erl¨ autert. Wir gehen insbesondere stets von kontinuierlichen Merkmalen und dementsprechend von CDHMM aus. Die folgenden Erl¨ auterungen sind jedoch weitgehend auch f¨ ur den diskreten Fall g¨ ultig.
12.5.1 Einzelworterkennung Wie mit Wort-HMM ein Einzelworterkenner konzipiert werden kann, wird anhand eines Ziffernerkenners mit dem Vokabular “null”, “eins”,. . . , “neun” aufgezeigt. Ein solcher Ziffernerkenner ist in Abbildung 12.4 dargestellt. Wir wollen annehmen, dass die Ziffern-HMM bereits mit einem Baum-Welch-Training gem¨ ass Abschnitt 12.4.3.2 erstellt worden sind. Der in der Abbildung 12.4 gezeigte Worterkenner beruht auf dem Vergleich der Produktionswahrscheinlichkeiten P (X|λi ), also der Wahrscheinlichkeit,
12.5
342
12. Statistische Spracherkennung
Sprachsignal s(n) Merkmalsextraktion Merkmalssequenz X Forward-Algorithmus
HMM 10 HMM w HMM 2 3 10 = "neun" HMM 1 w = "neun" = 2"eins" v1 w = 2"null"
Wahrscheinlichkeit P(X| i) k = argmax P(X| i) i
erkanntes Wort: vk Abbildung 12.4. Spracherkenner f¨ ur einzeln gesprochene deutsche Ziffern: Aus dem
Sprachsignal wird eine Merkmalssequenz X extrahiert und f¨ ur jedes Ziffern-HMM λi die ur Produktionswahrscheinlichkeit P (X|λi ) ermittelt. Es gilt diejenige Ziffer als erkannt, f¨ deren HMM P (X|λi ) am gr¨ ossten ist.
dass das HMM λi die Merkmalssequenz X erzeugt. Das Ermitteln dieser Produktionswahrscheinlichkeit ist eines der im Abschnitt 12.3.1.3 aufgef¨ uhrten grundlegenden HMM-Probleme. Es wird mit dem Forward-Algorithmus gel¨ ost (siehe Abschnitt 5.5.1). Um ein Wort zu erkennen, wird also f¨ ur jedes Ziffern-HMM λi die Produktionswahrscheinlichkeit P (X|λi ) ermittelt. Dasjenige HMM mit der gr¨ ossten Produktionswahrscheinlichkeit P (X|λi ) zeigt die erkannte Ziffer an. Dieses Vorgehen entspricht dann der MAP-Entscheidungsregel in Gleichung (183), wenn man annimmt, dass alle Ziffern gleich wahrscheinlich sind. Dann ur alsind n¨ amlich die A-priori-Wahrscheinlichkeiten P (W) in Formel (184) f¨ le Ziffern gleich, und damit f¨ uhrt der Vergleich der Produktionswahrscheinlichkeiten P (X|λi ) und der Vergleich der A-posteriori-Wahrscheinlichkeiten P (λi |X) zum selben Resultat. Als Alternative zum Forward-Algorithmus kann man auch den Viterbi-Algorithmus (siehe Decodierungsproblem im Abschnitt 12.3.1.3) f¨ ur die Erkennung benutzen. Der Vergleich basiert dann nicht auf den Produktionswahrscheinlichkeiten P (X|λi ) sondern auf den Verbundwahrscheinlichkeiten der ˆ i ). Merkmalssequenz und der optimalen Zustandssequenz P (X, Q|λ
12.5 Spracherkennung mit Wort-HMM
343
Es stellt sich nun die Frage, ob es besser ist, mit dem Forward-Algorithmus oder mit dem Viterbi-Algorithmus die Erkennung durchzuf¨ uhren. Hinsichtlich der Erkennungsrate erreicht man etwa die gleichen Resultate, wenn man die HMM mit dem Baum-Welch-Algorithmus trainiert und f¨ ur die Erkennung den Forward-Algorithmus anwendet, wie wenn man die HMM-Parameter mit einem Viterbi-Training sch¨ atzt (Abschnitt 12.4.3.2) und beim Erkennen den Viterbi-Algorithmus einsetzt. Der Viterbi-Algorithmus bietet hinsichtlich Rechenaufwand einen gewissen Vorteil, insbesondere wenn mit logarithmierten Wahrscheinlichkeiten gerechnet wird (siehe Abschnitt 5.7).
12.5.2 Worterkenner mit Erkennungsnetzwerk Der Viterbi-Algorithmus bietet aber noch eine andere M¨ oglichkeit f¨ ur die Erkennung. Man kann n¨ amlich die Ziffern-HMM zu einem Erkennungsnetzwerk verkn¨ upfen, wie es in Abbildung 12.5 dargestellt ist. Dabei werden die Anfangszust¨ ande der Ziffern-HMM zu einem gemeinsamen Anfangszustand zusammengefasst und gleichermassen auch die Endzust¨ ande. Wir bezeichnen dies als Parallelschaltung der HMM. NULL EINS ... ACHT NEUN Abbildung 12.5. Erkennungsnetzwerk eines Spracherkenners f¨ ur einzelne Ziffern
Die Parallelschaltung zweier HMM ergibt wiederum ein HMM, wie sich mit einem Beispiel leicht zeigen l¨ asst. Gegeben sind die beiden folgenden HMM λ1 und λ2 mit je N = 4 Zust¨anden (d.h. zwei Zust¨ande sind emittierend). ⎡ ⎤ 0 1 0 0 ⎢ ⎥ ⎢ 0 0.8 0.2 0 ⎥ ⎥ λ1 = (A1 , B1 ) mit A1 = ⎢ und ⎢ 0 0 0.7 0.3 ⎥ ⎣ ⎦ 0 0 0 0
⎡ λ2 = (A2 , B2 )
mit
0 1
0
0
⎤
⎢ ⎥ ⎢ 0 0.9 0.1 0 ⎥ ⎢ ⎥ A2 = ⎢ ⎥ ⎣ 0 0 0.6 0.4 ⎦ 0 0 0 0
und
344
12. Statistische Spracherkennung
Unter der Annahme, dass die beiden A-priori-Wahrscheinlichkeiten P (λ1 ) und P (λ2 ) gleich gross sind, also je 0.5, ergibt die Parallelschaltung von λ1 und λ2 das folgende Netzwerk-HMM: ⎤ ⎡ 0 0.5 0 0.5 0 0 ⎥ ⎢ ⎢ 0 0.8 0.2 0 0 0 ⎥ ⎥ ⎢ + , ⎢ 0 0 0.7 0 0 0.3 ⎥ B1 ⎥ ⎢ λp = (Ap , Bp ) mit Ap = ⎢ . ⎥ und Bp = ⎢ 0 0 0 0.9 0.1 0 ⎥ B2 ⎥ ⎢ ⎥ ⎢ ⎣ 0 0 0 0 0.6 0.4 ⎦
0 0
0
0
0
0
Das Erkennungsnetzwerk ist also nichts anderes als ein HMM f¨ ur die ganze Erkennungsaufgabe. Wir bezeichnen es mit λnet . Mit dem Viterbi-Algorithmus kann sodann f¨ ur die gegebene Merkmalssequenz X die optimale Zustandsseˆ im HMM λ quenz Q net ermittelt werden. Da bekannt ist, zu welchen Ziffernoren, kann aus der optimalen HMM die einzelnen Zust¨ ande des HMM λnet geh¨ ˆ Zustandssequenz Q einfach auf die erkannte Ziffer geschlossen werden. Logischerweise kann bei der Spracherkennung mit einem Erkennungsnetzwerk nur der Viterbi-Algorithmus eingesetzt werden kann. Mit dem ForwardAlgorithmus k¨ onnte man die Produktionswahrscheinlichkeit P (X|λnet ) ermitteln, diese erlaubt jedoch keinerlei R¨ uckschl¨ usse auf das ge¨ ausserte Wort. Auch durch die Serienschaltung zweier HMM entsteht wiederum ein HMM. Wenn beispielsweise die oben gegebenen HMM λ1 und λ2 in Serie geschaltet werden, dann entsteht das HMM λs : ⎤ ⎡ 0 1 0 0 0 0 ⎥ ⎢ ⎢ 0 0.8 0.2 0 0 0 ⎥ ⎥ ⎢ + , ⎢ 0 0 0.7 0.3 0 0 ⎥ B1 ⎥ ⎢ λs = (As , Bs ) mit As = ⎢ und B = . ⎥ s ⎢ 0 0 0 0.9 0.1 0 ⎥ B2 ⎥ ⎢ ⎥ ⎢ ⎣ 0 0 0 0 0.6 0.4 ⎦
0 0
0
0
0
0
Zu bemerken ist, dass bei der Serienschaltung der Endzustand von λ1 und der Anfangszustand von λ2 wegfallen. Durch Serien- und Parallelschaltung von HMM ist es auch m¨ oglich, Pausen vor und nach dem zu erkennenden Wort mit einem speziellen Pausen-HMM zu ber¨ ucksichtigen. Abbildung 12.6 zeigt ein solches Erkennungsnetzwerk. Das zu erkennende Wort kann so bei der Aufnahme grossz¨ ugig ausgeschnitten ¨ werden, d.h. mit Pausen vor und nach der Ausserung, um sicher zu sein, dass ¨ beim Detektieren der Ausserung weder der Anfang noch das Ende des Wortes
12.5 Spracherkennung mit Wort-HMM
345 NULL EINS ...
PAUSE
PAUSE
ACHT NEUN Abbildung 12.6. Erkennungsnetzwerk eines Spracherkenners f¨ ur einzeln gesprochene Zif-
fern. Mit den Pausen-HMM kann der Erkenner gleichzeitig auch den Anfangs- und den Endpunkt der Ziffer im Signal detektieren.
abgeschnitten wird. Der Viterbi-Algorithmus bestimmt dann auch gleich noch ¨ den Anfangs- und den Endpunkt der Ausserung, was unter schwierigen Bedingungen (z.B. bei lauter Umgebung) viel zuverl¨ assiger ist als beispielsweise die im Abschnitt 11.2.2.3 erl¨ auterte automatische Detektion des Anfangs- und Endpunktes.
12.5.3 Schl¨ usselworterkennung ¨ Ein Erkenner f¨ ur in Ausserungen eingebettete Schl¨ usselw¨ orter, wir haben ihn im Abschnitt 10.5 als Keyword-Spotter bezeichnet, ist ¨ ahnlich aufgebaut wie der Ziffernerkenner in Abbildung 12.6. Statt der Pausenmodelle sind jedoch Modelle f¨ ur beliebige (und insbesondere beliebig lange) Sprachsignale vorhanden. Wie ein solches Sprachmodell erzeugt werden kann, wird im Abschnitt 12.7.3 erl¨ autert. Falls die Sprache vor und nach dem Schl¨ usselwort optional ist, kann das Sprachmodell parallel zum Pausenmodell eingesetzt werden. 12.5.4 Verbundworterkennung Um nicht bloss einzeln gesprochene Ziffern erkennen zu k¨ onnen, sondern auch Folgen von Ziffern, z.B. Kreditkartennummern oder Telefonnummern, kann man das Konzept der Erkennungsnetzwerke erweitern. So ist es beispielsweise m¨ oglich, beim Erkennen der schweizerischen Vorwahlnummern (29 dreistellige Zahlen zwischen 021 und 091) wie in Abbildung 12.7 dargestellt vorzugehen, also f¨ ur jede Vorwahlnummer durch die Serienschaltung der n¨ otigen WortHMM ein entsprechendes Vorwahlnummer-HMM zu erzeugen. Bei der Erkennung k¨ onnen dann f¨ ur alle HMM λ1 , . . . , λ29 die Produktionswahrscheinlichkeiten ermittelt werden. Aus dem Vorwahlnummern-HMM mit dem h¨ ochsten Wert ergibt sich wiederum die erkannte Vorwahlnummer. W¨ ahrend dieses Vorgehen f¨ ur Vorwahlnummern noch praktikabel ist, ist es f¨ ur ganze Telefonnummern oder sogar f¨ ur Kreditkartennummern ausgeschlossen. Der Ausweg besteht darin, die Aufz¨ ahlung aller m¨ oglichen Modellfolgen zu vermeiden, indem die HMM zu einem Erkennungsnetzwerk verkn¨ upft wer-
346
12. Statistische Spracherkennung NULL
EIN
UND
ZWANZIG
2
NULL
ZWEI
UND
ZWANZIG
3
NULL
VIER
UND
ZWANZIG
29
NULL
EIN
UND
NEUNZIG
...
1
Abbildung 12.7. Erkennung von Vorwahlnummern: F¨ ur jede Nummer wird ein separa-
tes Verbund-HMM verwendet, das aus der Serienschaltung der betreffenden Wort-HMM entsteht.
den und zum Erkennen der Viterbi-Algorithmus angewendet wird. Als Erkennungsnetzwerk f¨ ur die Vorwahlnummern kann man beispielsweise die in Abbildung 12.8 gezeigten baumf¨ ormig organisierten Modelle einsetzen. F¨ ur jeden gemeinsamen Anfang von mehreren erlaubten Wortfolgen existiert in der Baumorganisation genau eine Serienschaltung von HMM. Das Erkennungsnetzwerk hat dadurch wesentlich weniger HMM-Zust¨ ande als wenn einurden. Doch auch im Erkenfach die Modelle λ1 , ..., λ29 parallel geschaltet w¨ nungsnetzwerk mit Baumorganisation kommen noch viele Modelle mehrfach vor, so zum Beispiel das Modell f¨ ur das Wort “und”. M¨ ochte man diese verbleibende Redundanz auch noch eliminieren, so kann man die Modelle wie in Abbildung 12.9 gezeigt organisieren. Mit diesem Erkennungsnetzwerk k¨ onnen ZWANZIG UND
DREISSIG ...
EIN
NEUNZIG
ZWANZIG UND
DREISSIG ...
ZWEI NULL ...
SECHZIG
SECHS
UND
ZWANZIG ..
FUNFZIG
SIEBEN
UND
ZWANZIG
Abbildung 12.8. Baumf¨ ormige Organisation der HMM im Erkennungsnetzwerk eines
Spracherkenners f¨ ur Vorwahlnummern
12.5 Spracherkennung mit Wort-HMM
347 ZWANZIG
EIN DREISSIG ZWEI VIERZIG DREI
..
FUNFZIG NULL
VIER ..
UND SECHZIG
FUNF SIEBZIG SECHS ACHZIG SIEBEN NEUNZIG Abbildung 12.9. Organisation der Modelle eines Vorwahlnummern-Erkenners als Graph
nun jedoch Wortfolgen erkannt werden, die eigentlich nicht erlaubt sind, so zum Beispiel die in der Schweiz ung¨ ultige Vorwahlnummer 023.
12.5.5 Erkennung mit dem N-best-Viterbi-Algorithmus Ein optimales Decodierungsverfahren muss f¨ ur alle m¨ oglichen Hypothesen unter Verwendung allen vorhandenen Wissens die A-posteriori-Wahrscheinlichkeit berechnen und die Hypothese mit dem h¨ ochsten Wert ausw¨ ahlen. Mit dem Viterbi-Algorithmus kann man diese Aufgabe erledigen, indem das Wissen in das Erkennungsnetzwerk eingebaut und dann der wahrscheinlichste Pfad durch das Netzwerk gesucht wird. In manchen Anwendungen kann jedoch das Wissen nicht zweckm¨ assig in das Erkennungsnetzwerk eingebaut werden. Dies ist beispielsweise auch beim Vorwahlnummernerkenner in Abbildung 12.9 der Fall, mit der Folge, dass auch ung¨ ultige Vorwahlnummern erkannt werden k¨ onnen. In solchen F¨ allen ist es erw¨ unscht, dass der Spracherkenner nicht nur eine einzige Wortfolge ausgibt, atzlichen, im Erkennungsnetz sondern die N wahrscheinlichsten. Mit dem zus¨ nicht ber¨ ucksichtigten Wissen wird dann nachtr¨ aglich entschieden, welche dieosungen die richtige ist. ser N wahrscheinlichsten L¨ osungen erh¨ alt man mit dem N-best-ViterbiDie N wahrscheinlichsten L¨ Algorithmus. Dies ist eine Erweiterung des gew¨ ohnlichen Viterbi-Algorithmus so, dass am Ende nicht nur eine optimale Zustandssequenz resultiert, sondern N , mit der Nebenbedingung, dass alle Zustandssequenzen auch einer andern Wortfolge entsprechen m¨ ussen. Der Einsatz des N-best-Viterbi-Algorithmus kann beispielsweise beim Eroglichen kennen von Kreditkartennummern sinnvoll sein. Von den 1016 m¨ Kombinationen der 16 Ziffern sind nur ein paar Millionen g¨ ultig. Es macht jedoch wenig Sinn, alle g¨ ultigen Kreditkartennummern explizit durch ein
348
12. Statistische Spracherkennung
Aal Aarau Aas
... Zyklon Zylinder Zypresse Abbildung 12.10. Der Zyklus im Erkennungsnetzwerk erm¨ oglicht eine kompakte Darstellung aller m¨ oglichen Wortfolgen f¨ ur das gegebene Vokabular.
eigenes Verbund-HMM zu beschreiben (also wie beim Erkennen der Vorwahlnummer in Abbildung 12.7 vorzugehen). Dies w¨ are zu aufw¨ andig, und die Liste m¨ usste zudem f¨ ur jede neue Kreditkartennummer erweitert werden. Hingegen kann von den N besten Hypothesen aus einem N-bestViterbi-Erkenner effizient diejenige ausgew¨ ahlt werden, welche die h¨ ochste A-posteriori-Wahrscheinlichkeit hat und gleichzeitig eine g¨ ultige Kreditkartennummer ist.
12.5.6 Erkennung kontinuierlicher Sprache Das Ziel bei der Erkennung kontinuierlich gesprochener Sprache ist es, f¨ ur eine gegebene Merkmalssequenz die wahrscheinlichste Wortfolge zu finden. Wie in Abschnitt 12.2 erl¨ autert, m¨ ussen dazu gem¨ ass der MAP-Regel die A-posteriori-Wahrscheinlichkeiten P (W|X) aller Hypothesen W miteinander verglichen und die wahrscheinlichste ausgew¨ ahlt werden. Selbstverst¨ andlich ahlt werden. Die Anzahl der k¨ onnen nicht alle m¨ oglichen Wortfolgen W aufgez¨ m¨ oglichen Wortfolgen steigt exponentiell mit der L¨ ange der Wortfolge. Da es unsch¨ on w¨ are, die maximale L¨ ange der erlaubten Wortsequenzen von vornherein zu beschr¨ anken, ist diese Vorgehensweise f¨ ur kontinuierliche Spracherkennung nicht praktikabel. Die L¨ osung besteht darin, die Aufz¨ ahlung aller Wortfolgen zu vermeiden, indem ein geeignetes Erkennungsnetzwerk verwendet wird. Beispielsweise k¨ onnen unter Verwendung von Zyklen alle m¨ oglichen Wortfolgen beliebiger L¨ ange kompakt in einem Erkennungsnetzwerk dargestellt werden, wie dies Abbildung 12.10 zeigt. Ein solches Netzwerk k¨ onnte beispielsweise in einem Diktiersystem verwendet werden.
12.6 Akustische Modelle f¨ ur Wortteile
349
Das Erkennungsnetzwerk (bzw. das zugeh¨ orige Trellis, siehe Abschnitt 5.3) wird mittels des Viterbi-Algorithmus nach dem optimalen Pfad durchsucht. Die erkannte Wortfolge ergibt sich dann aus den W¨ ortern entlang des optimalen Pfades. Die Erkennung kontinuierlicher Sprache mit Wort-HMM ist nur bei einem Vokabular mit relativ bescheidenem Umfang praktikabel. F¨ ur Sprachen mit vielen Wortformen ist diese Grenze relativ bald erreicht. Man setzt deshalb Wortteil-HMM ein, wie sie im Folgenden besprochen werden.
12.6 Akustische Modelle f¨ ur Wortteile F¨ ur Spracherkenner mit grossem Vokabular ist der Einsatz von Wort-HMM unpraktisch, besonders dann, wenn der Spracherkenner sprecherunabh¨ angig sein soll. Alle W¨ orter m¨ ussen von einigen hundert bis mehreren tausend Personen aufgenommen werden, was sehr aufw¨ andig ist. Zudem w¨ are es praktisch unm¨ oglich, das Vokabular eines solchen Spracherkenners zu erweitern. Das aufw¨ andige Aufnahmeprozedere m¨ usste auch f¨ ur ein einzelnes Wort wiederholt werden. Deshalb werden f¨ ur Spracherkenner mit grossem Vokabular nicht Wort-HMM eingesetzt, sondern HMM f¨ ur kleinere linguistische Einheiten. Die kleinsten Segmente des Sprachsignals, f¨ ur die ein eigenes akustisches Modell angesetzt wird, wollen wir im Folgenden als Grundelemente bezeichnen. Bisher haben wir ausschliesslich W¨ orter als Grundelemente verwendet. Um die Anzahl der n¨ otigen Grundelement-HMM in einem vern¨ unftigen Rahmen zu halten und gleichzeitig auch eine einfache Erweiterung des Erkennervokabulars zu erm¨ oglichen, werden Wortteile (engl. sub-word units) als Grundelemente verwendet. Welche Grundelemente eingesetzt werden k¨ onnen und nach welchen Gesichtspunkten man eine Wahl treffen kann, wird nachfolgend erl¨ autert.
12.6.1 Wahl der Grundelemente Die Wahl der Grundelemente beeinflusst die erzielbare Erkennungsrate eines Spracherkenners und muss deshalb richtig getroffen werden. In diesem Abschnitt wollen wir einerseits verschiedene Typen von Grundelementen betrachten und anderseits u ur ¨ berlegen, welche Folgen eine bestimmte Wahl f¨ die Spracherkennung hat. Die Grundelemente k¨ onnen in zwei Gruppen eingeteilt werden, n¨ amlich in kontextunabh¨ angige und kontextabh¨ angige Grundelemente. Bei kontextunabh¨ angigen Grundelementen wird f¨ ur jedes Grundelement nur ein Modell verwendet. Es wird also nicht ber¨ ucksichtigt, dass ein Grundelement von verschiedenen Nachbarlauten unterschiedlich beeinflusst wird. Dagegen wird bei
12.6
350
12. Statistische Spracherkennung
kontextabh¨ angigen Grundelementen die Nachbarschaft ber¨ ucksichtigt, indem f¨ ur jeden auftretenden lautlichen Kontext ein separates Grundelementmodell trainiert wird. 12.6.1.1 Allgemeine Anforderungen an Grundelemente Bei der Auswahl von Grundelementen f¨ ur ein Spracherkennungssystem m¨ ussen unterschiedliche Forderungen erf¨ ullt werden, je nach der Art der Erkennungsaufgabe. Pr¨ azision Die Aussprache eines Grundelementes soll m¨ oglichst spezifisch und gleichzeitig konsistent sein. Dadurch ergibt sich eine hohe Trennsch¨ arfe (Diskrimination) der trainierten Grundelement-Modelle. Die Diskriminationsf¨ ahigkeit der Grundelemente schl¨ agt sich direkt in der erzielbaren Erkennungsleistung des Gesamtsystems nieder. Um eine hohe Pr¨ azision zu erreichen, muss die Zahl der Grundelemente gen¨ ugend gross sein. Trainierbarkeit F¨ ur jedes einzelne der Grundelemente m¨ ussen gen¨ ugend Trainingsdaten vorhanden sein, um u onnen (vergl. Abschnitt ¨ berhaupt ein HMM trainieren zu k¨ 12.4.3.1). Wenn die Zahl der Grundelemente sehr gross ist oder gewisse Grundelemente in nat¨ urlicher Lautsprache sehr selten vorkommen, dann kann auch ein sehr grosser Umfang an Sprachsignalen nicht ausreichend sein, um alle Grundelementmodelle zu trainieren. Transfer Bei Spracherkennern mit flexiblem oder offenem Vokabular ist das bei der Erkennung verwendete Vokabular beim Training noch nicht genau bekannt. In diesem Fall muss man zus¨ atzlich fordern, dass es m¨ oglich sein soll, VerbundModelle f¨ ur neue W¨ orter aus den Grundelementmodellen zusammenzusetzen. 12.6.1.2 Kontextunabh¨ angige Grundelemente Als kontextunabh¨ angige Grundelemente kommen grunds¨ atzlich linguistiche Einheiten wie Laute, Silben oder W¨ orter in Frage, aber auch Diphone und Halbsilben. Die wichtigsten dieser Grundelemente, n¨ amlich die W¨ orter und die Laute, werden im Folgenden im Hinblick auf ihre Eigenschaften bez¨ uglich Pr¨ azision, Trainierbarkeit und Transfer besprochen. W¨ orter W¨ orter als Grundelemente zeichnen sich durch eine hohe Pr¨ azision aus, da Koartikulation innerhalb der W¨ orter und auch die in den Trainingsdaten ent-
12.6 Akustische Modelle f¨ ur Wortteile
351
haltenen Sprechvarianten beim Training automatisch mitber¨ ucksichtigt werden. Demgegen¨ uber steht die schlechte Trainierbarkeit, da f¨ ur jedes Wort gen¨ ugend Trainingsbeispiele vorhanden sein m¨ ussen. F¨ ur grosse oder sogar offene Vokabulare sind deshalb W¨ orter als Grundelemente unbrauchbar. Laute Die naheliegendsten Grundelemente sind die Laute. F¨ ur die Spracherkennung werden im Deutschen etwa 40–60 Laute und Diphthonge unterschieden. Die Modelle dieser Grundelemente k¨ onnen schon mit einer relativ bescheidenen Trainingsdatenmenge gen¨ ugend robust trainiert werden. Ihre Pr¨ azision ist jedoch sehr begrenzt, weil benachbarte Laute sich gegenseitig beeinflussen. Verschiedene Untersuchungen best¨ atigen denn auch, dass Ganzwortmodelle den kontextunabh¨ angigen Lautmodellen hinsichtlich Pr¨ azision u ¨ berlegen sind. Hingegen ist der Transfer zu einem neuen Vokabular mit Lautmodellen sehr einfach zu bewerkstelligen, da man mit Hilfe der phonetische Transkription der neuen W¨ orter direkt die betreffenden Verbund-HMM aus den Grundelement-HMM zusammenstellen kann. 12.6.1.3 Kontextabh¨ angige Grundelemente Laute werden mehr oder weniger stark durch ihre Nachbarlaute mitgepr¨ agt (Koartikulation). Je st¨ arker ein Laut durch die Nachbarlaute beeinflusst wird, desto gr¨ osser ist die Variabilit¨ at der Merkmale des Lautes, und je gr¨ osser die Variabilit¨ at der Merkmale ist, desto unzuverl¨ assiger ist die Erkennung des Lautes. Wenn aber f¨ ur einen einzelnen Laut mehrere Modelle verwendet werden, welche die verschiedenen Kontexte ber¨ ucksichtigen, dann reduziert sich die Variabilit¨ at und die Konsistenz der Modelle nimmt zu. Da aber die Anzahl der Grundelemente und damit die Anzahl der zu sch¨ atzenden Parameter mit der Ber¨ ucksichtigung des Kontextes zunimmt, ist das Training von kontextabh¨ angigen Modellen keine einfache Sache. Insbesondere muss eine gute Balance zwischen Pr¨ azision und Trainierbarkeit gefunden werden. Triphone Die naheliegendste M¨ oglichkeit, den lautlichen Kontext zu ber¨ ucksichtigen, ist das Triphon. Das Triphon-Modell ist ein Lautmodell, das nur je einen Laut auf der linken und rechten Seite als Kontext mitber¨ ucksichtigt.5 Wir schreiben 5 In der Spracherkennung ist ein Triphonmodell also eine statistische Beschreibung f¨ ur einen Laut. Im Gegensatz dazu verstehen wir im Zusammenhang mit der Sprachsynthese, die auf Verkettung beruht, unter einem Triphon ein Sprachsignalsegment, das in der Mitte eines Lautes beginnt und in der Mitte des u achsten ¨ bern¨ Lautes endet.
352
12. Statistische Spracherkennung o/l/o Frequenz [Hz]
8000 4000 2000 1000 500 200 100
200
300
e/l/e Frequenz [Hz]
8000 4000 2000 1000 500 200 100
200 i/l/i
Frequenz [Hz]
8000 4000 2000 1000 500 200 100
200 Zeit [ms]
300
Abbildung 12.11. Darstellung des Einflusses des Kontextes auf den Laut [l] anhand der Mel-Spektrogramme der Lautfolgen [olo], [ele] und [ili]
hier ein Triphon als L/K/R, wobei K der Kernlaut ist und L und R den linken bzw. den rechten Kontextlaut bezeichnen. So ist z.B. mit dem Triphon a/n/t das Grundelement des Kernlautes [n] mit dem linken Kontextlaut [a] und dem rechten Kontextlaut [t] gemeint. F¨ ur einen bestimmten Kernlaut werden so viele Triphon-Modelle angesetzt wie verschiedene Kombinationen von linkem und rechtem Kontextlaut zu diesem Kernlaut existieren. Ein Beispiel f¨ ur den Einfluss des Kontextes auf den Kernlaut ist in Abbildung 12.11 dargestellt. Die Pr¨ azision der Triphon-Grundelemente ist recht hoch, da sie die st¨ arksten Koartikulationseffekte ber¨ ucksichtigen. Die Trainierbarkeit dieser Grundelemente ist jedoch problematisch, da die Zahl der kombinatorisch m¨ oglichen Triphone der dritten Potenz der Anzahl unterschiedener Laute entspricht. Auch wenn bei weitem nicht alle m¨ oglichen Triphone wirklich in der Sprache
12.6 Akustische Modelle f¨ ur Wortteile
353
vorkommen, so ist die Zahl der zu modellierenden Grundelemente doch sehr hoch. So wurden z.B. in der SGP-Datenbank (Swiss German Polyphone), die etwa 250 Stunden Sprachsignale von 5000 Personen aus der Deutschschweiz umfasst, bei einem Vokabular von 59000 W¨ ortern 28300 Triphone gez¨ ahlt. Das sind wenige, wenn man bedenkt, dass mit dem verwendeten Lautinventar der Gr¨ osse 46 u oglich w¨ aren. Von den in der Datenbank ¨ ber 97000 Triphone m¨ vorhandenen Triphonen kommt zudem mehr als die H¨ alfte weniger als 10 Mal vor. Nur f¨ ur 4300 Triphone sind mindestens 100 Beispiele vorhanden, wobei diese Zahl von Beispielen immer noch sehr knapp ist, um ein sprecherunabh¨ angiges Modell zu trainieren. 12.6.1.4 Generalisierte Triphone Da viele Triphone selten sind, findet man auch in einem sehr grossen Trainingsset f¨ ur viele Triphone zu wenig oder u ¨ berhaupt keine Daten. Unter der Annahme, dass ein Laut in ¨ ahnlichen Kontexten auch ¨ ahnlich realisiert wird, k¨ onnen Kontexte in gr¨ obere Klassen zusammengefasst werden. Dieses Zusammenfassen kann rein datengetrieben oder mit phonetischem Wissen durchgef¨ uhrt werden. Die resultierenden Grundelemente heissen verallgemeinerte oder generalisierte Triphone. Da durch diese Gruppierung weniger Triphone unterschieden werden m¨ ussen, nimmt die Anzahl der Modelle ab und die Trainierbarkeit zu. Datengetriebenes Clustering Die rein datengetriebenen Clustering-Verfahren starten mit einem separaten Cluster f¨ ur jedes Triphon-Modell. Dann werden jeweils die zwei Cluster desselben Kernlautes zusammengefasst, f¨ ur welche sich die Merkmale der Kernlaute am wenigsten unterscheiden, bis die gew¨ unschte Zahl der Triphon-Modelle erreicht ist. Um festzulegen, welche Cluster zusammengefasst werden sollen, ¨ muss ein Ahnlichkeitsmass f¨ ur die Wahrscheinlichkeitsverteilungen zweier Zust¨ ande definiert werden. Weil das Clustering am Anfang des Trainings durchgef¨ uhrt wird, wenn also die Beobachtungswahrscheinlichkeitsverteilungen erst eine Mischkomponente haben, kann einfach die Distanz zwischen den Mittelwertvektoren verwendet werden. Das rein datengetriebene Clustering-Verfahren hat einen wesentlichen Nachteil: Wenn eines der W¨ orter des Erkennervokabulars ein Triphon enth¨ alt, das im Training nicht vorhanden war, muss auf das entsprechende kontextunabh¨ angige Lautmodell zur¨ uckgegriffen werden, was eine Verschlechterung der Erkennungsleistung nach sich zieht.
354
12. Statistische Spracherkennung
Clustering mit Entscheidungsb¨ aumen Ein Verfahren, das auch phonetisches Wissen mit einbezieht, ist das Clustering mit Entscheidungsb¨ aumen (decision tree clustering). Ein solcher Entscheidungsbaum ist in Abbildung 12.12 dargestellt. Ein Triphon-Modell wird wie folgt einem Cluster zugewiesen: Man beginnt bei der Wurzel des Entscheidungsbaumes f¨ ur den gegebenen Kernlaut und bewegt sich Schritt f¨ ur Schritt von der Wurzel weg, bis man in einem Blattknoten ankommt. Dabei w¨ ahlt man in jedem Knoten diejenige Kante aus, welche der richtigen Antwort auf die jeweilige Entscheidungsfrage entspricht. Das Triphon-Modell wird schliesslich in das Cluster des erreichten Blattknotens eingeteilt. Beim Erzeugen eines Entscheidungsbaumes legt man zuerst die m¨ oglichen Entscheidungsfragen anhand von phonetischem Wissen (z.B. u ¨ ber die Lautklassen) fest. Der Entscheidungsbaum wird dann von der Wurzel her aufgebaut. Am Anfang befinden sich alle Triphonmodelle eines Kernlautes im gleichen Cluster an der Wurzel des Entscheidungsbaumes. Nun wird diejenige Frage gesucht, welche die “beste” Aufspaltung des Wurzelknotens ergibt. F¨ ur die Auswahl der passendsten Frage kann z.B. der Anstieg der Likelihood be-
[a] R = Konsonant? J
N
L = Vokal? J
N L = Plosiv? J
u/a/ m e/a/ t i/a/ s
.. .
b/a/ r p/a/ s t/a/ s
.. .
L = Nasal?
N
J
s/a/ r r/a/ s n/a/ s
.. .
n/a/ e m/a/ i m/a/ u
.. .
N
b /a/ e d /a/ i f /a/ u
.. .
Abbildung 12.12. Beispiel eines Entscheidungsbaums f¨ ur das Clustering von Triphon-
Modellen des Lautes [a]. Alle Modelle im selben Blattknoten werden gekoppelt. L und R bedeuten linker bzw. rechter Kontext.
12.6 Akustische Modelle f¨ ur Wortteile
355
z¨ uglich der Trainingsdaten verwendet werden.6 Nach dem gleichen Kriterium kann auch bestimmt werden, welcher Knoten als n¨ achster erweitert werden soll. Der Entscheidungsbaum wird solange erweitert, bis der Anstieg der Likelihood einen bestimmten Schwellwert unterschreitet. Um die Trainierbarkeit zu gew¨ ahrleisten, wird der Entscheidungsbaum nur dann erweitert, wenn nach der Aufspaltung in den resultierenden Clustern gen¨ ugend Trainingsbeispiele verbleiben. Das Clustering mit Entscheidungsb¨ aumen hat den Vorteil, dass bei der Erkennung auch solche Triphon-Modelle eingesetzt werden k¨ onnen, welche in den Trainingsbeispielen nicht vorkommen. Dazu durchl¨ auft man im Entscheidungsbaum den Weg von der Wurzel bis zum Blattknoten, der dem gesuchten Cluster entspricht. Zur Beschreibung des Triphons wird nun das Modell verwendet, das zum ermittelten Cluster geh¨ ort.
12.6.2 Erzeugen von Grundelementmodellen In diesem Abschnitt geht es darum, einen Satz von Grundelementmodellen zu erzeugen, mit denen ein Spracherkenner f¨ ur ein beliebiges Vokabular verwirklicht werden kann. 12.6.2.1 Aufnahme von Sprachsignalen f¨ ur Grundelement-HMM Auch f¨ ur Wortteil-HMM m¨ ussen vor dem Training die entsprechenden Daten bereitgestellt werden. Der erste Schritt ist wiederum die Aufnahme von Sprachsignalen. Was die Aufnahmebedingungen, den Umfang der Sprachdaten und die Sprecherunabh¨ angigkeit der zu erstellenden Modelle betrifft, gilt hier dasselbe wie bei der Aufnahme von Sprachsignalen f¨ ur Wort-HMM (siehe Abschnitt 12.4.3.1). Hier sind jedoch die Aufnahmen nicht auf ein vorgegebenes Vokabular ausgerichtet. Vielmehr sollen die Sprachsignale in jeder Hinsicht m¨ oglichst vielf¨ altig sein, sodass die interessierenden Grundelemente (also z.B. die Laute) in allen Varianten vorkommen. Im Gegensatz zu den im Abschnitt 12.4.3.1 beschriebenen Sprachaufnahmen werden hier also nicht nur einzelne W¨ orter aufgenommen, sondern auch ganze S¨ atze. 12.6.2.2 Training von Grundelement-HMM Im Abschnitt 12.4.3.2 haben wir, um ein HMM λi f¨ ur das Wort vi des Erkennervokabulars zu erzeugen, aus den Trainingsdaten alle Sprachsignale bzw. Merkmalssequenzen mit diesem Wort herausgesucht und ausgehend von ei6
Jede Aufteilung eines Clusters von Modellen in zwei neue Cluster f¨ uhrt zu einer Erh¨ ohung der Likelihood bez¨ uglich der zugeh¨ origen Trainingsdaten, da zweimal so viele Parameter zur Verf¨ ugung stehen, um dieselben Trainingsdaten zu beschreiben. Die Gr¨ osse des Anstiegs ist dabei ein Mass f¨ ur die G¨ ute der Aufteilung.
356
12. Statistische Spracherkennung
nem Initial-HMM ein Baum-Welch- oder Viterbi-Training durchgef¨ uhrt. Wir haben also die Wort-HMM voneinander unabh¨ angig trainiert. Dies war deshalb m¨ oglich, weil jede Merkmalssequenz genau ein Wort beinhaltete und zudem bekannt war welches. Im Gegensatz dazu werden f¨ ur die kontinuierliche Spracherkennung ganze S¨ atze f¨ ur das Training aufgenommen. Will man mit diesen Trainingsdaten Grundelementmodelle (z.B. Laut-HMM) trainieren, so steht man vor dem Problem, dass gew¨ ohnlich nur eine graphemische Beschreibung (normaler Text) der Trainingssprachsignale existiert. Diese graphemische Beschreibung kann mit Methoden, wie sie in der Sprachsynthese verwendet werden, in eine phonetische Transkription umgewandelt werden. In den Trainingsdaten sind aber die Segmentgrenzen der Grundelemente nach wie vor unbekannt, und eine manuelle Segmentierung der umfangreichen Trainingsdaten w¨ are viel zu aufw¨ andig. Das Ziel ist es deshalb, die Trainingsdaten m¨ oglichst automatisch in die gew¨ unschten Grundelemente zu segmentieren, ausgehend von den Sprachsignalen und der phonetischen Transkription. Dazu existiert ein Verfahren, welches die Sprachsignale segmentiert und gleichzeitig alle Grundelemente trainiert. Dieses Verfahren heisst Embedded Training und wird im Abschnitt 12.6.2.4 besprochen. 12.6.2.3 Initial-HMM f¨ ur Grundelemente Auch beim Embedded-Training werden f¨ ur die Grundelemente Initial-HMM gebraucht. Daf¨ ur m¨ ussen die Topologie und die Anzahl der Zust¨ ande N de¨ finiert werden. Es werden wiederum lineare HMM eingesetzt und die Uberlegungen, die im Abschnitt 12.4.2 zum Richtwert von 2 bis 5 Zust¨ anden pro Laut f¨ uhrten, sind auch hier g¨ ultig. H¨ aufig werden f¨ ur Laut-HMM drei emittierende Zust¨ ande angesetzt. Was die Initialwerte der Beobachtungswahrscheinlichkeitsverteilungen betrifft, kann man je nach vorhandenen Daten unterschiedlich vorgehen. Darauf wird im Folgenden eingegangen. Initialmodell mit segmentierten Daten Da sowohl der Baum-Welch-Algorithmus als auch das Viterbi-Training nur ein lokales Optimum finden, ist es von Vorteil, ein m¨ oglichst gutes Initialmodell zu verwenden. Eine M¨ oglichkeit ist z.B., anhand von segmentierten Daten die Initialwerte f¨ ur Beobachtungswahrscheinlichkeitsverteilungen zu bestimmen. Segmentierte Daten erh¨ alt man beispielsweise, indem ein Experte Sprachsignale anh¨ ort und aufgrund seines phonetischen Wissens Lautgrenzen mit einem interaktiven, audio-visuellen Werkzeug manuell festlegt. Da dies sehr aufw¨ andig ist, kann jedoch nur ein sehr kleiner Teil der n¨ otigen Trainingsdaten manuell segmentiert werden. Schon wenige hundert S¨ atze reichen jedoch
12.6 Akustische Modelle f¨ ur Wortteile
357
aus, um die Beobachtungswahrscheinlichkeitsverteilungen (nur je eine Mischkomponente) der Initialmodelle zu bestimmen. Da f¨ ur einen Laut mehr als ein Zustand festgelegt wird, m¨ ussen noch die Segmentgrenzen innerhalb des Lautes bestimmt werden. Dies kann erreicht werden, indem die Merkmalssequenz eines Lautes gleichm¨ assig auf die entsprechende Zust¨ ande aufgeteilt wird. Mit der Kenntnis, welche Teile der Merkmalssequenzen zu welchen Zust¨ anden der Grundelement-HMM geh¨ oren, k¨ onnen nun der Mittelwertvektor und die Kovarianzmatrix der einzigen Mischkomponente jedes Zustandes berechnet werden. Initialmodell ohne segmentierte Daten Wenn die Initialwerte der Beobachtungswahrscheinlichkeitsverteilungen ohne segmentierte Daten festgelegt werden m¨ ussen, spricht man von einem FlatStart. Dabei gibt es zwei M¨ oglichkeiten: Bei der ersten werden die Merkmalssequenzen gleichf¨ ormig segmentiert, d.h. eine Merkmalssequenz der L¨ ange T mit n Lauten und k Zust¨anden pro Laut wird in k n etwa gleich lange Teilsequenzen unterteilt. Aus den Teilsequenzen aller Merkmalssequenzen k¨ onnen dann wiederum f¨ ur jeden Zustand der Mittelwertvektor und die Kovarianzmatrix der einzigen Mischkomponente berechnet werden. Die zweite M¨ oglichkeit ist, f¨ ur alle Zust¨ ande die gleichen Initialwerte der Beobachtungswahrscheinlichkeitsverteilungen zu verwenden, n¨ amlich der Mittelwertvektor und die Kovarianzmatrix u ¨ ber alle Trainingsdaten. Aus der praktischen Erfahrung ist nicht klar, welche dieser beiden Flat-StartVarianten zu bevorzugen ist. Sicher ist jedoch, dass beide schlechtere Initialwerte liefern als segmentierte Daten, was sich in der Regel auch auf die Fehlerrate des Spracherkenners auswirkt. 12.6.2.4 Embedded Training Die Idee des Embedded Trainings ist recht einfach: F¨ ur jede Trainings¨ ausserung, z.B. ein Satz oder ein Wort, wird entsprechend der gegebenen phonetischen Transkription aus Grundelement-HMM ein Verbund-HMM f¨ ur ¨ die gesamte Ausserung zusammengesetzt. Zudem werden alle Zust¨ ande, die zum gleichen Grundelementzustand geh¨ oren, innerhalb und zwischen den Verbund-HMM gekoppelt (siehe Abbildung 12.13). Wenn Zust¨ ande gekoppelt sind, so bedeutet das, dass die Parameter aller dieser Zust¨ ande gleich sind. F¨ ur das Training, das ja im Wesentlichen auf dem Z¨ ahlen von Ereignissen beruht, heisst dies, dass alle Ereignisse, welche die gekoppelten Zust¨ ande bzw. deren Parameter betreffen, zusammengez¨ ahlt werden m¨ ussen. Die entsprechenden Sch¨ atzformeln sind in den Abschnitten 5.6 (Training mit mehreren Beobachtungssequenzen) und 12.6.2.7 (Kopplung von HMM-Parametern) zu finden. Mit den neu gesch¨ atzten Parametern wird nun die n¨ achste Trainingsiteration durchgef¨ uhrt.
358
12. Statistische Spracherkennung .. Ausserung 2: "... kam an"
.. Ausserung 1: "An allem ..." [a]
[n]
[n]
[a]
Verbund-HMM
.. Kopplung der Zustande
Abbildung 12.13. Embedded Training. F¨ ur jede Trainings¨ ausserung wird ein Verbund-
HMM aus den Grundelementen zusammengesetzt. Die zum gleichen Grundelement geh¨ orenden Zust¨ ande werden innerhalb und zwischen den Verbund-HMM gekoppelt. Die ¨ Grundelemente werden gleichzeitig trainiert, indem in jeder Iteration u ¨ber alle Ausserungen summiert wird.
Wie Abbildung 12.14 illustriert, konvergieren die bei einem Flat-Start automatisch erzeugten Segmentgrenzen mit zunehmender Anzahl Iterationen im Allgemeinen recht gut gegen eine von Hand erzeugte Segmentierung. 12.6.2.5 Training von generalisierten Triphon-Modellen Generalisierte Triphon-Modelle k¨ onnen wie folgt erzeugt und trainiert werden:
1. Ein initialer Satz von kontextunabh¨ angigen Lautmodellen mit einer Mischkomponente wird erzeugt und trainiert (mit Embedded Training). 2. F¨ ur jeden Kontext eines Lautes, der in den Trainingsdaten existiert, wird ein Initial-Triphonmodell erzeugt. Die Beobachtungswahrscheinlichkeitsverteilung wird vom jeweiligen kontextunabh¨ angigen Lautmodell kopiert. Die Zustands¨ ubergangswahrscheinlichkeiten aller zum selben Kernlaut geh¨ orenden Triphone werden gekoppelt. Die erzeugten Triphonmodelle werden trainiert (mit Embedded Training; nur eine Mischkomponente). 3a. Bei datengetriebenem Clustering: Von den zu einem Kernlaut geh¨ orenden Triphonmodellen, die als Initial-Cluster dienen, werden jeweils die zwei a ur jeden Kernlaut die ge¨hnlichsten zu einem Cluster vereint bis f¨ w¨ unschte Anzahl Cluster, also generalisierte Triphonmodelle erreicht ist. 3b. Bei Decision-Tree-Clustering: Die Triphonmodelle, die zu einem Kernlaut geh¨ oren, werden mit einem Entscheidungsbaum in Cluster unterteilt. 4. Die Modelle werden trainiert. Dann wird abwechslungsweise die Anzahl der Mischkomponenten um einen Schritt erh¨ oht und die Modelle wieder trainiert, bis die Erkennungsleistung nicht mehr zunimmt, oder die gew¨ unschte Anzahl Mischkomponenten erreicht ist.
12.6 Akustische Modelle f¨ ur Wortteile
359
Iteration 1 (lineare Segmentierung) sil
f
sil
r
f
a:
r
g
a:
@
t
g
s
@
a_i
t
C
s
n
a_i
0.5
sil
C
n
1
sil [s]
Iteration 3 sil
sil
f
f
r
r
a:
a:
g
g
@
@
t
s
t
s
a_i
a_i
C
n
C
sil
n
0.5
1
sil [s]
Iteration 15 sil
f
r
a:
g
sil
f
r
a:
g
@
t
@
t
0.5
s
s
a_i
a_i
C
n
C
sil
n 1
sil [s]
Abbildung 12.14. Darstellung der Segmentierung des Wortes “Fragezeichen” w¨ ahrend
des Embedded-Trainings von 40 kontextunabh¨ angigen Lautmodellen mit Flat-Start. Die manuell gesetzten Lautgrenzen sind oberhalb des Signals eingezeichnet, diejenigen aus dem Viterbi-Algorithmus unten.
12.6.2.6 Knappe Menge von Trainingsdaten Die vorhandenen Trainingsdaten reichen oft nicht aus, um gute Sch¨ atzwerte f¨ ur alle Parameter der Grundelement-HMM zu erhalten. Dies ist vor allem dann der Fall, wenn die Zahl der Grundelement-HMM gross ist, also beispielsweise bei Triphonmodellen. Es kommt insbesondere vor, dass einzelne der Beobachtungswahrscheinlichkeiten sehr kleine Werte erhalten oder gar null werden. Falls beim Training eine Zustands¨ ubergangs- oder eine Beobachtungswahrscheinlichkeit von null auftritt, wird diese auch in den weiteren Iterationen null bleiben. Dies ist insofern ein Problem, als die Verbundwahrscheinlichkeit P (X, Q|λ) null wird, wenn auch nur ein einziges Merkmal xt der Sequenz X so liegt, dass ort Sj zum HMM des die Beobachtungswahrscheinlichkeit bj (xt ) = 0 ist. Geh¨ korrekten Grundelementes, so besteht die Gefahr, dass ein Erkennungsfehler eintrifft. Es gibt mehrere M¨ oglichkeiten, um dieses Problem zu entsch¨ arfen, u.a. die folgenden:
360
12. Statistische Spracherkennung
Festlegen eines Minimalwertes f¨ ur alle Beobachtungswahrscheinlichkeiten (bei DDHMM): Sch¨ atzwerte, die unter diese Grenze fallen, werden auf diese Grenze angehoben. Die anderen Wahrscheinlichkeiten m¨ ussen entsprechend korrigiert werden, damit die Summe aller Wahrscheinlichkeiten wieder gleich 1 ist. Festlegen von Minimalwerten f¨ ur alle Varianzen und Gewichte der Mischkomponenten (bei DDHMM) Reduktion der Anzahl der freien Parameter: Eine grobe Methode ist, die Zahl der Zust¨ ande und der diskreten Beobachtungen bzw. der Mischkomponenten zu verkleinern. Da das Problem jedoch nicht bei allen Grundelement-HMM gleichermassen auftritt, ist eine selektive Massnahme sinnvoller, n¨ amlich bei den betroffenen HMM geeignete Parameter zu koppeln, entweder innerhalb eines HMM oder zwischen verschiedenen Grundelement-HMM, wie dies beim Clustering der Fall ist (vergl. Abschnitt 12.6.1.4). 12.6.2.7 Kopplung von HMM-Parametern HMM-Parameter werden f¨ ur das Embedded Training (Abschnitt 12.6.2.4) gekoppelt, oder um die Anzahl der freien Parameter zu reduzieren. Es k¨ onnen fast beliebige HMM-Parameter miteinander gekoppelt werden, beispielsweise Kovarianzmatrizen, Mischkomponenten, ganze Beobachtungswahrscheinlichkeitsverteilungen, aber auch Zustands¨ ubergangswahrscheinlichkeiten. Beim Training werden alle Ereignisse, welche die gekoppelten Parameter betreffen, aufsummiert. Bezeichnen wir die Menge aller Zustands¨ uberg¨ ange, die ande, die mit Sj gemit aij gekoppelt sind, als τ (i, j) und die Menge aller Zust¨ ur die gekoppelten Parameter folgende koppelt sind, als τ (j), so erhalten wir f¨ Sch¨ atzformeln:
a ˜ij =
T −1
ξt (i , j )
i ,j ∈τ (i,j) t=1 T
,
1 < i, j < N
(189)
1<j
(190)
γt (i )
i ∈τ (i) t=1
˜bj (k) =
j ∈τ (j) t mit xt =ck
T
j ∈τ (j) t=1
γt (j )
,
12.7 Modelle f¨ ur verschiedene akustische Ereignisse
361
Die Gleichung (190) gilt f¨ ur diskrete Merkmale bzw. DDHMM. F¨ ur CDHMM geht man analog vor, indem in den Gleichungen (130) bis (132) jeweils im Z¨ ahler und im Nenner u ande summiert. ¨ ber alle gekoppelten Zust¨
12.7 Modelle f¨ ur verschiedene akustische Ereignisse In den Abschnitten 12.4.3.3 und 12.4.3.4 wurde erl¨ autert, dass ein einsatztauglicher Spracherkenner nicht nur die zum Erkennervokabular geh¨ origen W¨ orter erkennen muss. Er sollte auch erkennen, wenn im Sprachsignal ein Wort vorliegt, das nicht zum Erkennervokabular geh¨ ort oder u ¨ berhaupt keine Sprache vorliegt. Es hat sich gezeigt, dass ein HMM-basierter Spracherkenner diese Forderung sehr gut erf¨ ullen kann, wenn die betreffenden akustischen Modelle vorhanden sind. Man ben¨ otigt also ein Pausenmodell, ein Ger¨ auschmodell und ein R¨ uckweisungsmodell f¨ ur nicht zum Erkennervokabular geh¨ orende W¨ orter, bzw. ein Modell f¨ ur beliebige Sprache, wie es im Abschnitt 12.7.3 erl¨ autert wird.
12.7.1 Modelle f¨ ur Pausen F¨ ur die Spracherkennung m¨ ussen nicht nur Laute oder W¨ orter, sondern auch ¨ Pausen modelliert werden. Diese treten einerseits vor und nach einer Ausserung auf, k¨ onnen aber auch als Sprechpausen zwischen zwei W¨ ortern vorkommen, z.B. an Phrasengrenzen. In [4] werden zwei verschiedene Pausenmodelle empfohlen: Das “sil”-Modell (silence) beschreibt beliebig lange Pausen vor ¨ oder nach der zu erkennenden Ausserung und das “sp”-Modell (short pause) optionale Sprechpausen zwischen den W¨ ortern. Die Topologie dieser Modelle ist in Abbildung 12.15 dargestellt. Das “sil”-Modell hat drei emittierende Zust¨ ande, das “sp”-Modell nur einen. Da Sprechpausen zwischen zwei W¨ ortern sehr kurz sein k¨ onnen, verf¨ ugt das “sp”-Modell nur u ¨ ber einen emittierenden Zustand. Weil Sprechpausen zwischen zwei W¨ ortern optional sind, hat das Modell zudem einen Zustands¨ ubergang vom Start- in den Endzustand. Es kann also direkt in den Endzustand u ¨ bergehen, ohne eine Beobachtung zu erzeugen. Das Modell wird bei der Erkennung jeweils zwischen zwei W¨ ortern eingef¨ ugt. Beim Trainieren der Modelle werden in einem ersten Schritt die Lautmodelle und das “sil”-Modell trainiert. Erst in einem zweiten Schritt wird das “sp”Modell erzeugt, indem der mittlere Zustand des “sil”-Modells kopiert und die Beobachtungswahrscheinlichkeitsverteilung gekoppelt wird. Die Modelle werden dann erneut trainiert, diesmal mit beiden Pausenmodellen.
12.7
362
12. Statistische Spracherkennung
sil
S1
S2
S3
S4
sp
S1
S2
S3
S5
Abbildung 12.15. Zwei Pausenmodelle: Das Modell “sil” beschreibt l¨ angere Pausen, wie
¨ sie vor und nach einer Ausserung auftreten. Das “sp”-Modell beschreibt kurze, optionale Sprechpausen, die beispielsweise an Phrasengrenzen auftreten k¨ onnen. Die Beobachtungswahrscheinlichkeitsverteilungen der mittleren Zust¨ ande der beiden Modelle sind gekoppelt.
12.7.2 Modelle f¨ ur Ger¨ ausche Ein einfaches Modell f¨ ur Ger¨ ausche ist in Abschnitt 12.4.3.4 beschrieben worden. Dieses ist zweckm¨ assig, um Hintergrundger¨ ausche vor oder nach einer ¨ ¨ Ausserung zu erkennen oder um festzustellen, ob statt einer Ausserung nur ein Ger¨ ausch detektiert worden ist, wie dies bei Dialogsystemen vorkommen kann. Im Abschnitt 12.4.3.1 wurde erl¨ autert, dass Sprachsignale f¨ ur das Training eines Spracherkenners in m¨ oglichst der gleichen Situation aufgenommen werden sollten, wie beim sp¨ ateren Einsatz des Spracherkenners. Man kann deshalb davon ausgehen, dass in den Trainingsdaten auch typische Umgebungsger¨ ausche und durch die Sprecher verursachte Ger¨ ausche (Atmen, R¨ auspern, Schmatzen etc.) enthalten sind. Wenn in der textlichen Beschreibung der aufgezeichne¨ ten Ausserungen vermerkt wird, wo sich solche ausserlinguistischen Schallereignisse befinden und diese gen¨ ugend zahlreich sind, k¨ onnen entsprechende Ger¨ auschmodelle trainiert werden. Im Gegensatz zum Ger¨ auschmodell im Abschnitt 12.4.3.4 werden hier die Ger¨ auschmodelle nicht separat trainiert, sondern wie alle andern HMM ins Embedded Training miteinbezogen. Dies geschieht, indem im Verbund-HMM ¨ einer Ausserung f¨ ur die annotierten Ger¨ ausche die betreffenden Ger¨ auschmodelle eingesetzt und mit den entsprechenden Ger¨ auschmodellen in den andern Verbund-HMM gekoppelt werden.
12.8 Spracherkennung mit Laut-HMM
363
12.7.3 Modell f¨ ur beliebige Sprachsignale Um feststellen zu k¨ onnen, wo im Sprachsignal ein nicht zum Erkennervokabular geh¨ orendes Wort vorliegt, wurden im Abschnitt 12.4.3.3 sogenannte R¨ uckweisungsmodelle f¨ ur verschieden lange W¨ orter verwendet. Dieses Prinzip kann auch bei einer Spracherkennung angewendet werden, die nicht mit Wort-HMM, sondern mit anderen Grundelementen arbeitet. Kleinere Grundelemente bieten jedoch eine weitere M¨ oglichkeit, ein R¨ uckweisungsmodell zu konstruieren. Beispielsweise k¨ onnen Lautmodelle zu einem sogenannten Phone-Loop zusammengeh¨ angt werden. Dies ist ein Erkennungsnetzwerk mit Laut-HMM, in welchem auf jeden Laut jeder andere Laut folgen kann. Dieses R¨ uckweisungsmodell beschreibt also beliebig lange Sprachereignisse. Da die Produktionswahrscheinlichkeit des Phone-Loops aber immer mindestens gleich gross ist wie diejenige des wahrscheinlichsten Vokabularwortes, muss noch eine Gewichtung eingesetzt werden. Das Gewicht ist so einzustellen, dass die Bedingung (188) m¨ oglichst gut erf¨ ullt wird.
12.8 Spracherkennung mit Laut-HMM Liegt ein Satz von trainierten Laut-HMM einmal vor, dann kann man damit wiederum Spracherkenner f¨ ur verschiedene Aufgaben konzipieren. Gemeinsam ist diesen Spracherkennern, dass das Erkennervokabular fast beliebig und sehr einfach erweitert werden kann. Um ein Verbund-HMM f¨ ur ein neues Wort aus Laut-HMM zusammensetzen zu k¨ onnen, braucht man nur die phonetische Umschrift des Wortes zu kennen. F¨ ur Spracherkenner mit einem Vokabular, das mehr als ein paar hundert W¨ orter umfasst, ist der Einsatz von Laut-HMM deshalb a usserst vorteilhaft, insbesondere wenn der Spracherken¨ ner dazu noch sprecherunabh¨ angig sein soll.
12.8.1 Erkennung einzeln gesprochener W¨ orter Ein auf Laut-HMM basierender Spracherkenner f¨ ur die Erkennung einzeln gesprochener W¨ orter kann grunds¨ atzlich so aufgebaut werden wie der Einzelworterkenner in Abbildung 12.4. Dazu ist f¨ ur jedes Wort des Erkennervokabulars ein entsprechendes Verbund-HMM zusammenzusetzen. F¨ ur ein gr¨ osseres Erkennervokabular ist es jedoch auch hier wieder viel effizienter, ein Erkennungsnetzwerk zusammenzustellen und f¨ ur die Erkennung den Viterbi-Algorithmus zu verwenden. Mit Laut-HMM konzipiert man also einen Einzelworterkenner ¨ ahnlich wie der in Abbildung 12.16 dargestellte Spracherkenner. Das Erkennungsnetzwerk ist jedoch viel einfacher und hat insbesondere keine Zyklen.
12.8
364
12. Statistische Spracherkennung
12.8.2 Erkennung kontinuierlicher Sprache Das Zusammenh¨ angen von HMM zu Erkennungsnetzwerken ist nicht nur mit Wort-HMM m¨ oglich, sondern mit beliebigen Grundelement-HMM, insbesondere auch mit Laut-HMM. Um aus den Laut-HMM ein Erkennungsnetzwerk zusammenzustellen, ben¨ otigt der Spracherkenner die beiden folgenden Komponenten: Ein Aussprache-Lexikon, in welchem alle zu erkennenden W¨ orter zusammen mit ihrer Aussprache (d.h. mit der phonetischen Umschrift) verzeichnet sind. So l¨ asst sich f¨ ur jedes Wort ein Verbund-HMM zusammenstellen, indem die der phonetischen Beschreibung entsprechenden Laut-HMM in Serie geschaltet werden. Ein Sprachmodell (siehe Kapitel 13), das ber¨ ucksichtigt, dass in einer gegebenen Anwendung nicht alle Wortfolgen gleich plausibel sind. Da das Erkennungsnetzwerk im Prinzip ja nichts anderes als ein sehr grosses HMM ist (d.h. ein HMM mit sehr vielen Zust¨ anden), kann f¨ ur die eigentliche Erkennung wiederum der Viterbi-Algorithmus eingesetzt werden. Die resulˆ beschreibt nun einen Pfad durch das tierende optimale Zustandssequenz Q Netzwerk. Es gelten diejenigen W¨ orter als erkannt, deren HMM im Netzwerk nacheinander vom optimalen Pfad durchlaufen werden. Ein solcher Spracherkenner ist in Abbildung 12.16 dargestellt.
12.8.3 Reduktion des Rechenaufwands (Pruning) Je nach Art der Erkennungsaufgabe kann mit der Organisation des Erkennungsnetzwerks die Zahl der m¨ oglichen Hypothesen unterschiedlich stark eingeschr¨ ankt werden. Dies reicht aber meistens noch nicht aus. Um den Rechenaufwand auf ein realistisches Mass zu reduzieren, braucht es zus¨ atzlich zu dieser Massnahme ein Verfahren, um den Suchraum dynamisch w¨ ahrend der Decodierung einzuschr¨ anken. Solche Verfahren sind unter dem Namen Strahlsuche (engl. beam search) bekannt. Die Idee besteht darin, im ViterbiAlgorithmus wenig aussichtsreiche Hypothesen fr¨ uhzeitig zu verwerfen. Dabei werden Teilpfade im Trellis, deren Bewertung unter einen dynamischen Schwellwert fallen, nicht mehr weiter ber¨ ucksichtigt, sondern abgeschnitten, was als Pruning bezeichnet wird. Bei zu starkem Pruning besteht jedoch die Gefahr, dass die richtige Hypothese bereits vorzeitig verworfen wird, was unweigerlich zu einem Erkennungsfehler f¨ uhrt.
12.9 St¨ arken und Schw¨ achen von HMM
365
s(n) Merkmalsextraktion
HMM HMM 2 HMM 1 [b] [a] [b]
X Viterbi-Algorithmus
Erkennungsnetzwerk
3
HMM [x]
j
AusspracheLexikon
^ Q ^ Q
Sprachmodell W
erkannte Wortfolge W Abbildung 12.16. Spracherkenner f¨ ur kontinuierlich gesprochene Sprache: Der wesentli-
che Unterschied zum Ziffernerkenner von Abbildung 12.4 besteht im Erkennungsnetzwerk. Das Erkennungsnetzwerk wird vor der eigentlichen Erkennung anhand des Aussprachelexikons und des Sprachmodells aus den Laut-HMM zusammengestellt. Mit dem Viterbiˆ durch das Algorithmus wird f¨ ur die Merkmalssequenz X die optimale Zustandssequenz Q Netzwerk ermittelt und daraus auf die erkannte Wortsequenz W geschlossen.
12.9 St¨ arken und Schw¨ achen von HMM Wie aus den Erl¨ auterungen in diesem Kapitel hervorgeht, weist die statistische Modellierung von Sprachsignalen mit HMM verschiedene St¨ arken auf: Die grundlegende St¨ arke von HMM ist ihre F¨ ahigkeit, station¨ are stochastische Prozesse, wie z.B. spektrale Merkmale des Sprachsignals, zusammen mit ihrer zeitlichen Abh¨ angigkeit in einem wohldefinierten Wahrscheinlichkeitsraum zu beschreiben. Dieser flexible Ansatz ist ¨ ausserst n¨ utzlich f¨ ur die Transformation eines Sprachsignals ohne klare Fixpunkte (unbekannte Laut- und Wortgrenzen) in eine Sequenz diskreter linguistischer Einheiten wie z.B. Laute. Ein zweiter Vorteil ist die Existenz von relativ einfachen Algorithmen f¨ ur das Training dieser Modelle ausgehend von einem Satz von Trainingsbeispielen. Diese Algorithmen f¨ uhren zumindest auf ein lokales Optimum der HMM-Parameter. Die Flexibilit¨ at in der Modellierung von Sprachsignalen mit HMM besteht auch darin, dass die Modelltopologie und Beobachtungswahrscheinlichkeitsverteilungen so gew¨ ahlt werden k¨ onnen, dass sie dem Erkennungsproblem am besten angepasst sind. Beispielsweise k¨ onnen fast beliebige
12.9
366
12. Statistische Spracherkennung
Parameter der HMM gekoppelt werden und Modelle f¨ ur gr¨ ossere Einheiten k¨ onnen aus den HMM kleinerer Einheiten zusammengesetzt werden. Diese M¨ oglichkeiten erlauben es dem Systementwickler, Vorwissen auf verschiedenen linguistischen Ebenen in die Modellierung mit einzubeziehen (siehe Kapitel 13). Der zuletzt aufgef¨ uhrte Punkt ist theoretisch ein starkes Argument f¨ ur HMM. Gleichzeitig zeigt sich aber hier auch die Grenze der HMM f¨ ur praktische Anwendungen. Da die wahren Wahrscheinlichkeitsverteilungen P (W) und P (X|W) durch Modelle gesch¨atzt werden m¨ ussen, die mit limitierten Daten trainiert worden sind, weichen diese Sch¨ atzungen stets mehr oder weniger stark von den wahren Verteilungen ab. Damit die Optimalit¨ at des Maximum-Likelihood-Ansatzes garantiert ist, sollten erstens unendlich viele Trainingsdaten zur Verf¨ ugung stehen, und zweitens muss die Klasse der Wahrscheinlichkeitsverteilungen, welche als P (X|λ) modelliert werden k¨ onnen, auch die tats¨ achlichen Verteilungen P (X|W) beinhalten. Letzteres ist schon aufgrund der Modellstruktur nur n¨ aherungsweise der Fall: Die f¨ ur die HMM erster Ordnung gemachten Annahmen in den Gleichungen (67) und (68) und die in den Zustands¨ uberg¨ angen implizierte Lautdauermodellierung treffen bei Sprachsignalen nur schlecht zu. Die Approximation wird noch schlechter, wenn die HMM-Topologie und die Verteilungsfamilie der Beobachtungswahrscheinlichkeiten nicht optimal gew¨ ahlt werden. Wenn atzt nun zus¨ atzlich noch die A-priori-Wahrscheinlichkeiten P (W) falsch gesch¨ werden, so kann dies den mit der Gleichung (186) definierten, theoretisch optimalen MAP-Erkenner praktisch beliebig verschlechtern. Trotz dieser Vorbehalte haben sich die HMM in der Sprachverarbeitung weitgehend durchgesetzt. Der gr¨ osste Teil der heutigen Spracherkennungssysteme basiert auf HMM. Daneben werden HMM auch in anderen Bereichen der Sprachverarbeitung (z.B. in der Sprechererkennung) und auch zur L¨ osung anderer Probleme (z.B. Handschrifterkennung) mit Erfolg eingesetzt.
Kapitel 13 Sprachmodellierung
13
13
13 13.1 13.2 13.2.1 13.2.2 13.2.3 13.2.4 13.2.5 13.2.6 13.2.7 13.2.8 13.2.9 13.3 13.3.1 13.3.2
Sprachmodellierung Zum Begriff Sprachmodellierung in der Spracherkennung Statistische Sprachmodellierung ............................. Sprachmodellierung bei der Einzelworterkennung ........ Sprachmodellierung f¨ ur Wortfolgen ......................... Das allgemeine statistische Sprachmodell ................. N-Gram-Sprachmodelle ....................................... Sch¨ atzen der Parameter von N-Gram-Sprachmodellen . Kategorielle N-Gram-Sprachmodelle ........................ Anwendung von N-Gram-Sprachmodellen im ViterbiAlgorithmus ..................................................... Bewertung von Sprachmodellen ............................. St¨ arken und Schw¨ achen der statistischen Modellierung Wissensbasierte Sprachmodellierung........................ Linguistisches Wissen in der Spracherkennung ........... Formale Grammatiken als Sprachmodelle .................
369 370 371 373 373 375 377 380 382 383 386 389 389 392
13 Sprachmodellierung 13.1 Zum Begriff Sprachmodellierung in der Spracherkennung Im Zusammenhang mit der Spracherkennung wird mit dem Begriff Sprachmodell1 eine Sammlung von A-priori-Kenntnissen u ¨ ber die Sprache bezeichnet. In diesem Zusammenhang wird Sprache im abstrakten Sinne verstanden, n¨ amlich als eine Menge von Wortfolgen ohne bestimmte akustische Realisierung. Diese Kenntnisse stehen im Voraus zur Verf¨ ugung, also bevor eine ¨ zu erkennende lautliche Ausserung vorliegt. Man spricht deshalb auch von ¨ Vorwissen u Zu diesen A-priori¨ ber oder von Erwartungen an die Ausserung. Kenntnissen geh¨ oren insbesondere das Wissen u ber die Sprache allgemein und ¨ u ¨ ber die Kommunikationssituation. Das Wissen u ¨ ber die Kommunikationssituation l¨ asst sich z.B. mit Erfahrungswerten ausdr¨ ucken, welche W¨ orter oder Wortfolgen in der gegebenen Situation gebraucht werden und wie h¨ aufig. Sprache ist in erster Linie ein Informationstr¨ ager: Nach dem H¨ oren und Ver¨ stehen einer Ausserung sollte der H¨ orer neue Informationen gewonnen haben. ¨ Durch diese Funktion der Sprache sind sprachliche Ausserungen zu einem ¨ gewissen Grad inh¨ arent unvorhersehbar. Der Informationsgehalt einer Ausserung (die nicht vorhersehbare Komponente der Sprache) und das sprachliche Vorwissen sind also gewissermassen komplement¨ ar. Das Sprachmodell eines Spracherkenners besteht meistens aus mehreren Teilmodellen. Jedes dieser Teilmodelle repr¨ asentiert einen Teilaspekt der Sprache, z.B. das Vokabular, die H¨ aufigkeit der W¨ orter, die Satzgrammatik usw. Dabei wird versucht, f¨ ur jeden Teilaspekt eine geeignete Modellform zu w¨ ahlen. Man kann die Modellformen grob in die beiden folgenden Gruppen einteilen: Statistische Sprachmodelle: Ermittelt man die Erfahrungswerte durch Messen oder Ausz¨ ahlen von Ereignissen in einer Sprachdatensammlung, z.B. die H¨ aufigkeit oder die Auftretenswahrscheinlichkeit eines Wortes, dann sprechen wir von einem statistischen Sprachmodell. Ein statistisches Sprachmodell beschreibt die Sprache so, als w¨ urde sie durch einen Zufallsprozess erzeugt. Wissensbasierte Sprachmodelle: Wird linguistisches Expertenwissen in einem Sprachmodell angewendet, beispielsweise grammatikalisches Wis1 Im Englischen wird daf¨ ur der Begriff language model verwendet, im Unterschied zu speech model, der verwendet wird, wenn sich das Modell auf den akustischen Aspekt der Sprache bezieht.
13.1
370
13. Sprachmodellierung
sen u ¨ ber die Konjugation von Verben oder die Steigerung von Adjektiven, dann handelt es sich um ein wissensbasiertes Sprachmodell.2 Grundlage dieses Wissens ist weniger die zahlenm¨ assige Erfassung von Beobachtungen der sprachlichen Oberfl¨ ache, sondern eher Einsichten u ¨ ber die hinter diesen Beobachtungen stehenden Zusammenh¨ ange und Gesetzm¨ assigkeiten der Sprache. In diesem Kapitel werden die statistische und die wissensbasierte Sprachmodellierung separat behandelt. Es wird sich aber hie und da zeigen, dass zwischen den beiden keine klare Trennlinie existiert.
13.2
13.2 Statistische Sprachmodellierung Wie bereits in Abschnitt 12.2 beschrieben wurde, besteht aus statistischer Sicht die Aufgabe der Spracherkennung darin, f¨ ur eine gegebene Merkmalsossten A-posteriori-Wahrscheinlichkeit sequenz X die Wortfolge W mit der gr¨ P (W|X) zu bestimmen. Dies dr¨ uckt die sogenannte MAP-Regel von Gleichung (183) aus. atzt Da die A-posteriori-Wahrscheinlichkeit P (W|X) praktisch nicht gesch¨ werden kann, wird an ihrer Stelle das Produkt P (X|W) P (W) maximiert. Die Wahrscheinlichkeit P (X|W) wird als akustisches Modell bezeichnet. Wie im Kapitel 12 gezeigt wurde, l¨ asst sich die entsprechende Wahrscheinlichkeitsverteilung mittels HMM beschreiben. Die Wahrscheinlichkeitsverteilung P (W) nennt man das Sprachmodell. Es ist von der Merkmalssequenz X unabh¨ angig und beinhaltet deshalb ausschliesslich die oben erw¨ ahnten A-prioriKenntnisse. Das Sprachmodell kann auch im Sinne der formalen Sprachen (Abschnitt 6.1) verstanden werden: Dort wird als Sprache L eine Teilmenge der Menge aller Wortfolgen V ∗ aus einem Vokabular V = {v1 , v2 , . . . , v|V | } bezeichnet, also L ⊆ V ∗ . Eine solche formale Sprache L kann durch ihre charakteristische Funktion Φ(W) dargestellt werden: 1: falls W ∈ L Φ(W) = 0: sonst 2
Weil das Wissen in wissensbasierten Sprachmodellen meistens in der Form von Regeln vorliegt, wird h¨ aufig auch von regelbasierten Sprachmodellen gesprochen. Da der Aspekt, dass das Wissen explizit ins Modell eingebracht wird, betont werden soll, wird hier der Begriff wissensbasierte Sprachmodelle verwendet. Dadurch wird der Gegensatz zu den statistischen Modellen verdeutlicht, die ihr “Wissen” in einem Training mit geeigneten Daten erwerben.
13.2 Statistische Sprachmodellierung
371
P (W) ist nichts anderes als die probabilistische Erweiterung der charakteristischen Funktion Φ(W), indem auch die Wahrscheinlichkeit von Wortfolgen ber¨ ucksichtigt wird. Im Unterschied zu den formalen Sprachen gibt es bei Sprachmodellen normalerweise jedoch keine “richtigen” und “falschen” Wortfolgen, d.h. solche, die zur Sprache geh¨ oren, und solche, die nicht zur Sprache geh¨ oren. Vielmehr sind alle Wortfolgen grunds¨ atzlich m¨ oglich, aber manche sind wahrscheinlicher als andere. Dies liegt einerseits daran, dass die verwendeten statistischen Modelle zu einfach sind, um die Korrektheit einer Wortfolge zuverl¨ assig zu entscheiden. Andererseits stellt sich die Frage, ob eine harte Entscheidung u unschenswert w¨ are. Mit solchen Fragen werden wir uns im Ab¨ berhaupt w¨ schnitt 13.3.2.1 besch¨ aftigen. 13.2.1 Sprachmodellierung bei der Einzelworterkennung Das einfachste Sprachmodell kommt bei der Erkennung einzeln gesprochener W¨ orter aus einem Vokabular V = {v1 , v2 , . . . , v|V | } zur Anwendung. Dieses Sprachmodell beschreibt die A-priori-Wahrscheinlichkeit f¨ ur jedes Wort. Die ¨ Wortwahrscheinlichkeiten sind im Erkennungsnetzwerk durch die Ubergangswahrscheinlichkeiten von einem gemeinsamen Anfangsknoten zu den entsprechenden Wortmodellen beschrieben, wie in Abbildung 13.1 gezeigt.3
P(v1) P(v2)
v1 v2
P(v|V|)
v|V| Abbildung 13.1. Netzwerk eines Spracherkenners f¨ ur einzeln gesprochene W¨ orter aus
dem Vokabular V = {v1 , v2 , . . . , v|V | }, mit eingetragenen A-priori-Wahrscheinlichkeiten der W¨ orter
Als ein Beispiel f¨ ur einen Einzelworterkenner mit A-priori-Wahrscheinlichkeiten kann ein sprachgesteuerter Fahrkartenautomat dienen. Wenn die akustischen Modelle dieses Systems dazu neigen, die Ortsnamen “Bern” und “Berg” 3
¨ Beim Erkennungsnetzwerk von Abbildung 12.5 sind die Ubergangswahrscheinlichkeiten vom gemeinsamen Anfangsknoten zu den Wortmodellen nicht eingetragen. Implizit heisst dies, dass alle W¨ orter dieselbe A-priori-Wahrscheinlichkeit haben, n¨ amlich 1/|V |, was als Spezialfall des hier beschriebenen Sprachmodells f¨ ur die Einzelworterkennung zu betrachten ist.
372
13. Sprachmodellierung
zu verwechseln, so f¨ uhrt das ohne Sprachmodell zu sehr vielen Erkennungsfehlern, da wesentlich mehr Menschen eine Fahrkarte in die Hauptstadt der Schweiz kaufen m¨ ochten als in eine der beiden kleinen Schweizer Gemeinden letzteren Namens. Mit A-priori-Wahrscheinlichkeiten f¨ ur die einzelnen Destinationen l¨ asst sich die Anzahl der Erkennungsfehler minimieren. Die entsprechenden Wahrscheinlichkeiten k¨ onnte man leicht aus den Statistiken sch¨ atzen, die von der fr¨ uheren Generation von Fahrkartenautomaten gesammelt wurden:
P (W) = P (vi ) ≈ freq(vi ) =
Anzahl Fahrkarten zur Destination i Anzahl Fahrkarten
Um das Sprachmodell noch weiter zu verfeinern, k¨ onnte man die A-prioriWahrscheinlichkeiten vom Standort des Automaten abh¨ angig machen. Das w¨ urde dann vermutlich dazu f¨ uhren, dass in den Nachbargemeinden von “Berg” tendenziell eher “Berg” erkannt w¨ urde als “Bern”. H¨ aufig sind zudem Applikationen so konzipiert, dass eine sinnvolle und erfolgreiche Benutzung eine Reihe von kausal zusammenh¨ angenden Interaktionen bedingt. F¨ ur unseren Fahrkartenautomaten k¨ onnte eine Interaktion wie folgt ablaufen: “Womit kann ich Ihnen dienen?” “Fahrkarte” “Nennen Sie bitte Ihren Zielort!” “Bern” “Hin- und R¨ uckfahrt?” “Ja” .. . Das Sprachmodell wird hier selbstverst¨ andlich genauer, wenn je nach Dialogschritt unterschiedliche Wortstatistiken angewendet werden: Nach der Frage “Hin- und R¨ uckfahrt?” sind die Antworten “ja”, “nein”, “klar” usw. viel wahrscheinlicher als etwa “Fahrkarte”. Zu bemerken ist, dass das zur Beschreibung des Transaktionsablaufs und der m¨ oglichen Transaktionszust¨ ande dienende Modell (z.B. ein endlicher Automat) selbst als Bestandteil des Sprachmodells zu betrachten ist und zwar als (wissensbasiertes) Sprachmodell f¨ ur die Dialogebene.4 4 Es scheint zun¨ achst, dass die Interaktion in diesem Fall nur mit der spezifischen Applikation zusammenh¨ angt und nichts mit Sprache zu tun hat. Dass aber beispielsweise eine gestellte Frage die Bedeutung einschliesst, die gestellte Frage zu ¨ beantworten, kann sicher als linguistisches Vorwissen eingestuft werden. Ahnliches gilt f¨ ur viele andere beim Dialog einzuhaltende “Regeln”.
13.2 Statistische Sprachmodellierung
373
13.2.2 Sprachmodellierung f¨ ur Wortfolgen ¨ Ist die zu erkennende Ausserung eine Wortfolge W1K = w1 w2 . . . wK mit wk ∈ V , so bestimmt das Sprachmodell die Wahrscheinlichkeit P (W1K ). Mit Hilfe des Multiplikationsgesetzes l¨ asst sich diese Verbundwahrscheinlichkeit zerlegen in die bedingten Wahrscheinlichkeiten der einzelnen wk , gegeben die Vorg¨ angerw¨ orter w1 , . . . , wk−1 : P (W1K ) = P (w1 ) · P (w2 |w1 ) · · · P (wK |w1 . . . wK−1 ) =
K
P (wk |W1k−1 ) k=1 (191)
Diese Zerlegung in bedingte Wahrscheinlichkeiten ist f¨ ur die Spracherkennung in verschiedener Hinsicht von Nutzen: Die bedingte Wahrscheinlichkeit P (wk |w1 . . . wk−1 ) kann in den Decodierungsprozess (Viterbi-Algorithmus) eingeflochten werden, um die dynamische Einschr¨ ankung des Suchraums zu verbessern. Insbesondere k¨ onnen mit Hilfe der bedingten Wahrscheinlichkeit (also mit Hilfe von A-prioriInformation u angel des akustischen Modells ¨ ber Wortfolgen) gewisse M¨ ausgeglichen werden. So l¨ asst sich vermeiden, dass die richtige Hypothese beim Pruning (siehe Abschnitt 12.8.3) fr¨ uhzeitig verworfen werden. Da es unendlich viele Wortfolgen W gibt und nur ein verschwindend kleiner Teil davon in Form von Stichprobentexten zur Verf¨ ugung steht, kann die ¨ atzt werden. Uber die wahre Verteilung von P (W) nicht empirisch gesch¨ asst sich Zerlegung in bedingte Wahrscheinlichkeiten P (wk |w1 . . . wk−1 ) l¨ der folgende Ausweg aus diesem Dilemma finden: Mit der Annahme, dass weit auseinander liegende W¨ orter nur schwach voneinander abh¨ angig sind, kann die Zahl der ber¨ ucksichtigten W¨ orter vor wk auf einen fixen Wert begrenzt werden, wie dies bei den sogenannten N-Grams (siehe Abschnitt 13.2.4) der Fall ist.
13.2.3 Das allgemeine statistische Sprachmodell Die allgemeine Formulierung des statistischen Sprachmodells als Wahrscheinur jede endliche Wortfolge W ∈ V ∗ u lichkeit P (W) f¨ ¨ bt auf die Art der Sprache keinerlei Einschr¨ ankungen aus. Eine solche Beschreibung der Sprache umfasst alle Sprachebenen (die lexikalische, die syntaktische, die semantische und die pragmatische Ebene), denn sie kann z.B. syntaktisch korrekten Wortfolgen gegen¨ uber inkorrekten durch eine h¨ ohere Wahrscheinlichkeit den Vorzug geben, aber auch genauso semantisch und pragmatisch sinnvolle Wortfolgen bevorzugen. Wendet man die obige Zerlegung an, so kann das allgemeine statistische Sprachmodell als Baum dargestellt werden. Im Gegensatz zu den B¨ aumen
374
13. Sprachmodellierung
in Kapitel 6, mit denen das Resultat einer syntaktischen Analyse dargestellt wurde und die deshalb als Ableitungs- oder Syntaxbaum bezeichnet wurden, beschreibt der Baum in Abbildung 13.2 die Gesamtheit der Hypothesen, die zu untersuchen sind. Der Baum wird deshalb auch als Suchbaum bezeichnet, in welchem jeder Pfad von der Wurzel zu einem Blatt grunds¨ atzlich als L¨ osung (d.h. als die korrekte Hypothese) in Frage kommt. Abbildung 13.2 zeigt das allgemeine statistische Sprachmodell f¨ ur das Vokabular V = {v1 , v2 , . . . , v|V | }. In diesem Baum ist jeder Wortfolge W1K = w1 . . . wK genau ein Endknoten GKm zugeordnet, so dass auf dem Pfad von G0 nach GKm nacheinander die Knoten (w1 = vi1 ), (w2 = vi2 ) bis (wK = viK ) durchlaufen werden. Der Index m nummeriert die Endknoten der Wortfolgen der L¨ ange K und ist demzufolge m = 1, . . . , |V |K . Die Wahrscheinlichkeit der Wortfolge W1K ergibt sich aus dem Produkt der bedingten Wahrscheinlichkeiten der am Pfad beteiligten Kanten. ange der WortMit der Annahme, dass sowohl das Vokabular V als auch die L¨ folgen beschr¨ ankt sind (was in der Praxis erf¨ ullt ist), hat dieser Baum endlich ¨ viele Knoten. Er kann somit grunds¨ atzlich als endlicher Automat mit Ubergangswahrscheinlichkeiten realisiert werden. (1. Wort)
(2. Wort)
(3. Wort)
G11 G0
P(v1) P(v2)
v1
P(v1|v1) P(v2|v1)
v2
v1
G21 P(v1|v1v1) P(v2|v1v1)
v2 P(v1|v2)
v1 v2
P(v1|v1v2)
G12
G22
v1
v1
v2
v2
Abbildung 13.2. Allgemeines statistisches Sprachmodell f¨ ur Wortfolgen aus dem Voka-
bular V = {v1 , v2 , . . . , v|V | }, dargestellt als Baum. Jede Wortfolge der L¨ ange K entspricht einem Pfad vom Startknoten G0 zu einem Endknoten GKm .
13.2 Statistische Sprachmodellierung
375
Wenn wir aber bedenken, dass bereits bei einer bescheidenen Vokabulargr¨ osse ange der Wortfolgen von 10 die Zahl der von |V | = 1000 und einer maximalen L¨ aren in Abbildung 13.2 in der Endknoten (die Endknoten GKm mit K = 10 w¨ agt, dann ist Kolonne des 11. Wortes eingezeichnet) |V |W = 100010 = 1030 betr¨ schon das Speichern und erst recht das Sch¨ atzen der bedingten Wahrscheinlichkeiten unm¨ oglich. Das allgemeine statistische Sprachmodell entpuppt sich somit als rein theoretischer Ansatz zur Sprachmodellierung, dem in der Praxis u ¨ berhaupt keine Bedeutung zukommt.
13.2.4 N-Gram-Sprachmodelle Wie bereits in Abschnitt 13.2.2 erw¨ ahnt, kann man f¨ ur die Zerlegung von Gleichung (191) vereinfachend annehmen, dass die Wahrscheinlichkeit eines Wortes nicht von allen vorangegangenen, sondern n¨ aherungsweise nur von ortern abh¨ angt: den letzten N −1 W¨ P (wk |w1 . . . wk−1 ) ≈ P (wk |wk−N +1 . . . wk−1 )
(192)
Dabei ist die Approximation umso gr¨ ober, je kleiner N ist. In den folgenden Abschnitten werden die F¨ alle f¨ ur N =1 (Unigram), N =2 (Bigram) und N =3 (Trigram) n¨ aher erl¨ autert.5 13.2.4.1 Das Unigram-Sprachmodell Das einfachste Sprachmodell ist das Unigram-Sprachmodell, bei dem angeortern nommen wird, dass das aktuelle Wort wk von den vorangegangenen W¨ w1 . . . wk−1 unabh¨angig ist. Es wird also von der folgenden (sehr groben) N¨ aherung ausgegangen:
P (wk |w1 . . . wk−1 ) ≈ P (wk )
(193)
P (wk ) ist die relative H¨aufigkeit bzw. die Frequenz des Wortes wk . In einem Unigram-Sprachmodell f¨ ur Wortfolgen W aus dem Vokabular V steckt somit dieselbe Information wie in einem Sprachmodell zur Erkennung von einzeln gesprochenen W¨ ortern aus dem Vokabular V (siehe Abschnitt 13.2.1). In beiden F¨ allen umfasst es die A-priori-Wahrscheinlichkeiten P (vj ), j = 1, . . . , |V |. Dementsprechend sieht auch das Unigram-Netzwerk des Spracherkenners f¨ ur Wortfolgen (Abbildung 13.3) a hnlich aus wie das Netzwerk des Spracherken¨ ners f¨ ur Einzelw¨ orter (Abbildung 13.1) aus demselben Vokabular. Der wesentliche Unterschied ist die hier vorhandene R¨ uckf¨ uhrung, die erm¨ oglicht, dass W beliebig lang sein kann (mindestens 1). 5
Beim Fall N =0 wird P (wk |w1 . . . wk−1 ) nicht nur als unabh¨ angig von den vorangegangenen W¨ ortern, sondern auch als unabh¨ angig vom Wort selbst betrachtet. Man verwendet also die Approximation P (wk |w1 . . . wk−1 ) ≈ 1/|V |.
376
13. Sprachmodellierung
P(v1) P(v2)
v1 v2
P(v|V|)
v|V| Abbildung 13.3. Unigram-Netzwerk eines Spracherkenners f¨ ur beliebig lange Wortfolgen aus dem Vokabular V = {v1 , v2 , . . . , v|V | }
13.2.4.2 Das Bigram-Sprachmodell In der Praxis wird h¨ aufig das Bigram-Sprachmodell verwendet. Bei diesem Sprachmodell wird angenommen, dass das aktuelle Wort wk einer Wortfolge n¨ aherungsweise nur vom Vorg¨ angerwort abh¨ angt:
P (wk |w1 . . . wk−1 ) ≈ P (wk |wk−1 )
(194)
Im Erkennungsnetzwerk lassen sich die Approximationen P (wk |wk−1 ) der ¨ bedingten Wahrscheinlichkeiten f¨ ur alle wk , wk−1 ∈ V als Ubergangswahrscheinlichkeiten angeben. Ein solches Bigram-Netzwerk ist in Abbildung 13.4 dargestellt. Typischerweise kommt ein bestimmtes Wort nicht gleich h¨ aufig am Anfang und am Ende der Wortfolge vor. Falls eine Wortfolge einem Satz entspricht, denke man beispielsweise an die Pr¨ aposition “im”, die oft am Satzanfang steht, w¨ ahrend sie am Satzende praktisch ausgeschlossen ist. Dies kann ber¨ ucksichtigt werden, indem man zwei Hilfsw¨ orter start und end einf¨ uhrt und die Bigram-Wahrscheinlichkeiten P (vj |start) und P (end|vj ), mit vj ∈ V sch¨ atzt. Das Bigram-Sprachmodell f¨ ur einen Erkenner von Wortfolgen aus dem Vokabular V = {v1 , v2 , . . . , v|V | } beinhaltet somit (|V |+1)2 −1 Wahrscheinlichkeitswerte. Umfasst das Vokabular auch nur wenige tausend W¨ orter, dann wird das Bigram-Sprachmodell bereits recht umfangreich. 13.2.4.3 Das Trigram-Sprachmodell Im Trigram-Sprachmodell werden die Wortwahrscheinlichkeiten in Abh¨ angigkeit der beiden vorangegangenen W¨ orter beschrieben und es wird somit angenommen, dass die weiter zur¨ uckliegenden W¨ orter keinen Einfluss haben.
13.2 Statistische Sprachmodellierung
377
P(v1| v1) P(v1| v2)
v1 v2 v3 P(v1| START)
P(END | v1)
Abbildung 13.4. Bigram-Netzwerk eines Spracherkenners f¨ ur Wortfolgen aus dem Vo-
ortern start und end k¨ onnen auch die kabular V = {v1 , v2 , . . . , v|V | }. Mit den Hilfsw¨ bedingten Wortwahrscheinlichkeiten am Anfang und am Ende einer Wortfolge beschrieben werden.
Diese N¨ aherung dr¨ uckt die folgende Formel aus:
P (wk |w1 . . . wk−1 ) ≈ P (wk |wk−2 , wk−1 )
(195)
Das Trigram-Netzwerk eines Spracherkenners f¨ ur Wortfolgen aus dem Vokabular V = {v1 , v2 , . . . , v|V | } ist in Abbildung 13.5 dargestellt. Wie beim Bigram-Sprachmodell sind auch hier die Hilfsw¨ orter start und end vorhanden, um die Verh¨ altnisse am Anfang und am Ende der Wortfolge zu spezifizieren. Es ist einfach zu sehen, dass die Zahl der Wahrscheinlichkeiten im agt. Der Trigram-Ansatz st¨ osst also Trigram-Netzwerk |V |+(|V |+1)2 ·|V | betr¨ mit zunehmender Vokabulargr¨ osse schnell an praktische Grenzen, weil einerseits das Erkennungsnetzwerk unhandhabbar gross wird und andererseits die Trigram-Wahrscheinlichkeiten schwierig zu sch¨ atzen sind. Viele Worttripel sind sehr selten.
13.2.5 Sch¨ atzen der Parameter von N-Gram-Sprachmodellen Die bedingten Wahrscheinlichkeiten eines N-Gram-Sprachmodells werden gesch¨ atzt, indem die relativen H¨ aufigkeiten der betreffenden Wortfolgen aus einem grossen Stichprobentext ermittelt werden. F¨ ur N =3 ist also die Wahratzen, indem gez¨ ahlt wird, wie oft auf das scheinlichkeit P (vk |vi vj ) zu sch¨
378
13. Sprachmodellierung
P(v1| v2 v1)
v1 v2 P(v1| START)
v1 P(END | v2 v1)
P(v2| v1v2)
v1
P(v2| START)
v2
v2 P(v2| START v2)
Abbildung 13.5. Trigram-Netzwerk eines Spracherkenners f¨ ur Wortfolgen aus dem Voka-
bular V = {v1 , v2 , . . . , v|V | }.
Wortpaar vi vj das Wort vk folgt: cnt(vi vj vk ) cnt(vi vj vk ) P (vk |vi vj ) ≈ freq(vk |vi vj ) = = cnt(vi vj vl ) cnt(vi vj )
(196)
l
Das Problem dieser Sch¨ atzung ist, dass f¨ ur im Stichprobentext nicht vorhandene Worttripel cnt(vi vj vk ) = 0 ist und die Wahrscheinlichkeit P (vk |vi vj ) folglich null wird. F¨ ur das Netzwerk von Abbildung 13.5 heisst dies, dass der betreffende Pfad faktisch eliminiert wird. Jede Wortfolge W , welche die Teilalt, erh¨ alt also die Wahrscheinlichkeit P (W ) = 0 und kann folge vi vj vk enth¨ somit vom Spracherkenner nicht erkannt werden. Auch das Wortpaar vi vj kann im Stichprobentext fehlen. Der Nenner in Gleichung (196) wird somit auch null, und die Wahrscheinlichkeit P (vk |vi vj ) ist nicht definiert (f¨ ur die Gl¨ attung mit Formel (198) wird sie auf null gesetzt). Da dieses Problem beim praktischen Einsatz eines Spracherkenners u ¨ beraus wichtig ist, werden im Folgenden verschiedene Methoden gezeigt, um mit diesem Problem umzugehen. Keine dieser Methoden l¨ ost das Problem grunds¨ atzlich und damit befriedigend. Sie sind allesamt eher als “Behelfsl¨ osungen” zu betrachten.
13.2 Statistische Sprachmodellierung
379
Gl¨ attung Dem Gl¨ atten (engl. smoothing) liegt die Idee zu Grunde, dass gesehene Ereignisse etwas von ihrer Wahrscheinlichkeitsmasse an ungesehene abtreten, deren Wahrscheinlichkeit damit nicht mehr null sind. Es gibt viele M¨ oglichkeiten, eine solche Gl¨ attung zu verwirklichen. Es werden hier zwei ziemlich einfache gezeigt.
Eine erste M¨ oglichkeit ist das Gl¨ atten der relativen H¨ aufigkeiten. Dabei weratzt: den die Wahrscheinlichkeiten P (vk |vi vj ) wie folgt gesch¨ cnt(vi vj vk ) + α P (vk |vi vj ) ≈ (cnt(vi vj vl ) + α)
(197)
l
osse, die bewirkt, dass alle Werte f¨ ur Dabei ist α eine kleine, positive Gr¨ P (vk |vi vj ) gr¨osser null sind. Die Wahl von α ist jedoch kritisch und muss f¨ ur jeden konkreten Anwendungsfall eingestellt werden. Eine andere Art der Gl¨ attung ist die lineare Interpolation. Dabei werden aus den gem¨ ass Formel (196) ermittelten bedingten Wortfrequenzen die Werte f¨ ur atzt: P (vk |vi vj ) u ¨ ber folgende Linearkombination gesch¨
1 + ρ1 · freq(vk ) + ρ2 · freq(vk |vj ) + ρ3 · freq(vk |vi vj ) (198) |V | onnen unter Einhaltung der Normierung Die Gewichte ρi k¨ i ρi = 1 mit einem zweiten Stichprobentext optimiert werden. P (vk |vi vj ) ≈ ρ0 ·
Backing-off Eine auf den ersten Blick recht grobe, aber in der Praxis h¨ aufig eingesetzte Methode ist das sogenannte Backing-off. Damit ist gemeint, dass f¨ ur fehlende N-Gram-Wahrscheinlichkeiten P (wk |wk−N +1 . . . wk−1 ) auf die entsprechenuckgegriffen den N-1-Gram-Wahrscheinlichkeiten P (wk |wk−N +2 . . . wk−1 ) zur¨ wird. Es gibt mehrere Gr¨ unde, die f¨ ur diese Methode sprechen:
1. Es werden keine Annahmen u ¨ ber die nicht beobachteten Wortfolgen (d.h. Wortpaare, -tripel etc.) gemacht. Annahmen sind in konkreten F¨ allen nie richtig, sondern nur mehr oder weniger falsch. 2. Die Backing-off-Methode l¨ asst sich sehr effizient in ein Erkennungsnetzwerk integrieren (vergl. Abbildung 13.6). 3. F¨ ur alle im Stichprobentext nur wenige Male vorhandenen Wortfolgen ergeben sich nur sehr ungenaue Sch¨ atzungen der betreffenden N-GramWahrscheinlichkeiten. Sie k¨ onnen deshalb genauso gut eliminiert, d.h. mittels Backing-off ersetzt werden. Da der Anteil dieser W¨ orter in Anwendungen mit grossem Vokabular gross ist, reduziert sich die Anzahl der beding-
380
13. Sprachmodellierung
P(v2| v1)
P(v1)
v1 P(v1)
v2 P(v2)
v3 P(v2| START)
START
P(END | v1)
END
Abbildung 13.6. Back-off-Bigram-Netzwerk eines Spracherkenners f¨ ur Wortfolgen aus dem Vokabular V = {v1 , v2 , . . . , v|V | }. Die fehlenden Bigram-Wahrscheinlichkeiten (gestrichelt) werden durch die entsprechenden Unigram-Wahrscheinlichkeiten ersetzt.
ten Wahrscheinlichkeiten betr¨ achtlich (typischerweise auf wenige Prozent), ohne dass das Sprachmodell wesentlich verschlechtert wird. In Abbildung 13.6 ist ein Back-off-Bigram-Sprachmodell f¨ ur die Viterbi-Decodierung dargestellt. F¨ ur Bigram-Wahrscheinlichkeiten, die null sind, sind die entsprechenden Verbindungen durch die Unigram-Wahrscheinlichkeiten ersetzt worden.
13.2.6 Kategorielle N-Gram-Sprachmodelle Die Zahl der m¨ oglichen N-Grams (Wortfolgen der L¨ ange N ) ist |V |N , was ungef¨ ahr der Zahl der Parameter, d.h. der bedingten Wahrscheinlichkeiten in einem N-Gram-Sprachmodell entspricht. F¨ ur ein Vokabular der Gr¨ osse |V |=103 ben¨ otigt man z.B. f¨ ur N =3 also bereits 109 Parameter. Es zeigt sich also, dass man mit dem Gl¨ atten zwar das Problem der im Trainingstext nicht vorhandenen N-Grams beseitigt, aber gleichzeitig ein neues schafft. Obwohl die allermeisten N-Grams nie auftauchen, m¨ ussen im ErkenN ucksichtigt werden, nungsnetz alle |V | bedingten Wahrscheinlichkeiten ber¨ was das Netz enorm gross macht. Eine L¨ osung dieses Problems ist ein sogenanntes kategorielles N-GramSprachmodell. Dazu werden die Wortkategorien gi ∈ G = {g1 , . . . , gn } eingef¨ uhrt. Mit diesen lassen sich die bedingten Wahrscheinlichkeiten u ¨ ber die
13.2 Statistische Sprachmodellierung
Kategoriezugeh¨ origkeit der W¨ orter definieren: P (wk |wk−N +1 . . . wk−1 ) ≈ P (wk |gi )P (gi |wk−N +1 . . . wk−1 )
381
(199)
gi ∈G
Da im Allgemeinen die Anzahl der Kategorien viel kleiner ist als die Gr¨ osse des Erkennervokabulars, ist auch die Zahl der N-Gram-Wahrscheinlichkeiten entsprechend kleiner. Beispielsweise ist f¨ ur |V |=103 , N =3 und |G|=100 die Menge der P (gi |wk−N +1 . . . wk−1 ) nur ein Zehntel so gross wie die Menge der P (wk |wk−N +1 . . . wk−1 ). Selbstverst¨andlich kommen noch die P (wk |gi ) hinzu, die jedoch nur |V |·|G| Werte umfassen und somit hier nicht ins Gewicht fallen. Auch diese reduzierte Menge von Wahrscheinlichkeiten ist in vielen F¨ allen noch zu gross, z.B. bei Diktiersystemen, wo die Vokabulargr¨ osse 104 und mehr sein kann. Deshalb wird in solchen F¨ allen eine N¨ aherung eingesetzt, die noch etwas gr¨ ober ist als Formel (199), n¨ amlich:
P (wk |wk−N +1 . . . wk−1 ) ≈ P (wk |cat(wk−N +1 ) . . . cat(wk−1 )) P (wk |gi )P (gi |cat(wk−N +1 ) . . . cat(wk−1 )) , ≈
(200)
gi ∈G
wobei cat(wi ) ∈ G ist. Dieses Sprachmodell umfasst also noch |V |·|G|+|G|N Werte, und falls die Kategorien so gew¨ ahlt werden, dass jedes Wort genau otig. einer Kategorie angeh¨ ort, dann sind sogar nur noch |V |+|G|N Werte n¨ Prinzipiell k¨ onnen hier die grammatikalischen Wortkategorien (Nomen, Adjektiv, Artikel etc.) eingesetzt werden. Um aber aus einem Stichprobentext onnen, die P (gi |cat(wk−N +1 ) . . . cat(wk−1 )) und die P (wn |gi ) bestimmen zu k¨ m¨ usste f¨ ur alle W¨ orter dieses Textes die grammatikalische Wortkategorie bestimmt werden. Abgesehen davon, dass dieses Vorgehen schwierig ist, f¨ uhrt es zu Kategorien sehr unterschiedlicher Gr¨ osse. Es werden deshalb meistens k¨ unstliche Kategorien verwendet. Das heisst, es werden nicht nur obige Wahrscheinlichkeiten aus dem Stichprobentext gesch¨ atzt, sondern gleichzeitig auch die Wortkategorien bestimmt.6 Kategorielle N-Grams bringen nicht nur beim Sch¨ atzen des Sprachmodells Vorteile, sondern auch bei dessen Anwendung. Man kann im N-GramNetzwerk anstelle der Wortmodelle die Kategorienmodelle setzen und die 6 Eine oft eingesetzte Methode ist, zuerst das Vokabular willk¨ urlich in die gew¨ unschte Anzahl Kategorien (z.B. 100) einzuteilen. Dann wird jeweils ein Wort genommen und in eine andere Kategorie umgeteilt, falls sich dadurch eine Verbesserung des Optimierungskriterium Q s ergibt. Als Optimierungskriterium wird die GeQ samtwahrscheinlichkeit Js=1 K k=1 P (wk |gi )P (gi |cat(wk−N+1 ) . . . cat(wk−1 )) des J S¨ atze umfassenden Trainingstextes maximiert. Die Wahrscheinlichkeiten werden wiederum durch Ausz¨ ahlen des Trainingstextes ermittelt, wie in Abschnitt 13.2.5 erl¨ autert worden ist.
382
13. Sprachmodellierung
P(g1| g1) P(g1| g2)
P(v1| g1)
v1
g1
v2 v3 v4
g2
v5 v6
g3
v7 P(g1| START)
P(END | g1)
Abbildung 13.7. Kategorielles Bigram-Netzwerk eines Spracherkenners f¨ ur Wortfolgen
aus dem Vokabular V = {v1 , v2 , . . . , v|V | }.
Kategorienmodelle selbst sind dann Unigram-Netzwerke. Wie das Beispiel eines kategoriellen Bigram-Netzwerks von Abbildung 13.7 zeigt, ist das resultierende Netzwerk sehr viel kleiner und damit reduziert sich auch der Rechenaufwand bei der Erkennung.
13.2.7 Anwendung von N-Gram-Sprachmodellen im Viterbi-Algorithmus Im Abschnitt 12.8.2 wurde gezeigt, dass mit dem Viterbi-Algorithmus f¨ ur eine gegebene Merkmalssequenz die optimale Zustandssequenz in einem Erkennungsnetzwerk ermittelt werden kann. Als Resultat des Erkenners wird diejenige Sequenz von W¨ ortern betrachtet, deren HMM der optimale Pfad nacheinander durchl¨ auft. F¨ ur die N-Gram-Sprachmodelle, auch f¨ ur die kategoriellen, kann stets ein entsprechendes Erkennungsnetzwerk angegeben werden. Das Netzwerk kann aus Wort-HMM oder aus Laut-HMM aufgebaut sein. Die N-GramWahrscheinlichkeiten wirken sich jedoch nur an den Wort¨ uberg¨ angen aus. Auch bei einem solchen Netzwerk kann mit dem Viterbi-Algorithmus der optimale Pfad ermittelt werden, und u ¨ ber den optimalen Pfad ist ebenfalls die erkannte Wortsequenz bestimmt. Die Komplexit¨ at des Erkennungsnetzwerks w¨ achst jedoch mit zunehmendem N sehr stark, wie dies in Abschnitt 13.2.4 f¨ ur die F¨ alle N = 1, . . . , 3 gezeigt wurde.
13.2 Statistische Sprachmodellierung
383
13.2.8 Bewertung von Sprachmodellen Wichtig im Zusammenhang mit der statistischen Sprachmodellierung sind Gr¨ ossen, welche die Eigenschaften der modellierten Sprache und den Nutzen des Sprachmodells quantitativ beschreiben. Insbesondere interessiert die Frage: Wie gut ist ein Sprachmodell bzw. um wieviel leichter wird die Erkennungsaufgabe durch das Sprachmodell? Qualitativ k¨ onnen diese Gr¨ ossen etwa so umschrieben werden: Mit Hilfe des Sprachmodells lassen sich aus der Vorgeschichte w1 w2 . . . wk−1 Vorhersagen u ¨ ber das Wort wk machen. Dabei gilt: je weniger sicher ein Wort aus seiner Vorgeschichte vorhersagbar ist, desto mehr tr¨ agt das Wort zur Vermehrung der Information bei, desto mehr W¨ orter kommen dort in Frage (grosse “Perplexit¨ at”), desto gr¨ osser ist dort die “Unvorhersagbarkeit” (grosse “Entropie”), desto schwieriger ist dort die Erkennungsaufgabe. Die Gr¨ ossen Entropie und Perplexit¨ at k¨ onnen u osse Information ¨ ber die Gr¨ definiert werden. 13.2.8.1 Information Am Anfang des Kapitels 13 haben wir die Sprache als Informationstr¨ ager bezeichnet ohne genauer zu spezifizieren, was mit Information gemeint ist. Dies wird jetzt nachgeholt.
Definition 13.1: Die Information I eines einzelnen Wortes vi aus dem Vokabular V = {v1 , v2 , . . . , v|V | } ist definiert als
I(vi ) = − log2 P (vi )
(201)
Da hier der Logarithmus zur Basis 2 verwendet wird, ist die Einheit der Information das Bit. Dass diese Definition auch f¨ ur Wortfolgen W = w1 w2 . . . wK mit wj = vi ∈ V gilt, kann wie folgt gezeigt werden: Gegeben ist der Anfang angt das n¨ achste Wort von einer Wortfolge w1 w2 . . . wk−1 . Im Allgemeinen h¨ diesem Anfang ab, d.h. die Wahrscheinlichkeit, dass als k -tes Wort das Wort vi aus dem Vokabular V folgt ist gleich P (wk = vi | w1 w2 . . . wk−1 ). Somit ist die Information dieses k -ten Wortes
Ik (vi ) = − log2 P (wk = vi | w1 w2 . . . wk−1 )
(202)
Da die Gesamtinformation der Wortfolge durch das Wort wk = vi zunimmt, wird in diesem Zusammenhang oft auch der Begriff Informationszuwachs durch das Wort wk = vi gebraucht.
384
13. Sprachmodellierung
Dass die Information der Wortfolge gleich der Summe der Information aller W¨ orter ist, kann mit Gleichung (191) wie folgt gezeigt werden:
I(W1K ) = − log2 P (w1 w2 . . . wK ) = − log2
K
P (wk | w1 w2 . . . wk−1 )
k=1
=−
K
log2 P (wk | w1 w2 . . . wk−1 ) =
k=1
K
Ik (wk )
(203)
k=1
13.2.8.2 Entropie In diesem Abschnitt wird erl¨ autert, wie mittels der Entropie eine Aussage u ber die Qualit¨ a t eines Sprachmodells m¨ oglich ist. ¨
Definition 13.2: Der mittlere Informationszuwachs (d.h. der Erwartungswert des Informationszuwachses) pro Wort wird als Entropie H bezeichnet. Die Entropie einer Wortfolge, die von einem ergodischen Zufallsprozess generiert wird, kann demnach gesch¨ atzt werden mit
H = lim
K→∞
1 1 I(W1K ) = − lim log2 P (W1K ). K→∞ K K
(204)
Die bedingte Entropie des k -ten Wortes einer Wortfolge, gegeben der Anfang dieser Wortfolge W1k−1 = w1 . . . wk−1 , ist
H(wk |W1k−1 ) =
|V |
P (vi |W1k−1 ) I(vi |W1k−1 )
(205)
i=1 |V |
=−
P (vi |W1k−1 ) log2 P (vi |W1k−1 )
i=1
Die Entropie Hmod eines N-Gram-Sprachmodells, also die Information pro mit diesem Modell generiertem Wort, erh¨ alt man durch Bildung des Erwartungsk−1 oglichen wertes der bedingten Entropie u ber alle Wk−N ¨ ber alle m¨ ¨ +1 , also u orter wk−N +1 . . . wk−1 Kombinationen der N −1 vorausgegangenen W¨ k−1 k−1 Hmod = P (Wk−N +1 ) H(wk |Wk−N +1 ) k−1 Wk−N +1
=−
k−1 P (Wk−N +1 )
k−1 Wk−N +1
|V | l=1
k−1 k−1 P (vl |Wk−N +1 ) log2 P (vl |Wk−N +1 )
13.2 Statistische Sprachmodellierung
|V |
k−1 Wk−N +1
l=1
=− =−
385
P (wk−N +1 . . . wk−1 vl ) log2 P (vl |wk−N +1 . . . wk−1 ) P (vh vi . . . vk vl ) log2 P (vl |vh vi . . . vk )
(206)
vh ,vi ,...,vk ,vl ∈V
Bei dieser Berechnung wird also nicht bloss ausgenutzt, dass das Wort wk nur von den W¨ ortern wk−N +1 . . . wk−1 abh¨ angt, sondern auch, dass Hmod f¨ ur jedes k gleich ist. Was sagt nun die Entropie eines Sprachmodells, beispielsweise eines N-GramSprachmodells aus? Informell gesprochen ist die Entropie eines Sprachmodells umso kleiner, je sicherer sich das Modell (im Mittel) ist, welches Wort jeweils als n¨ achstes kommt. Je mehr Abh¨ angigkeiten zwischen den einzelnen W¨ ortern das Modell ber¨ ucksichtigt, desto geringer ist im Allgemeinen seine Entropie. Trotzdem ist es nicht unbedingt so, dass ein Sprachmodell mit geringerer Entropie zu einer besseren Erkennungsleistung f¨ uhrt. Um die Erkennungsleistung zu verbessern, werden so zum Beispiel die Wahrscheinlichkeitsverteilungen von N-Grams gegl¨ attet (siehe Abschnitt 13.2.5), obwohl dies zu einer gr¨ osseren Entropie f¨ uhrt. Tats¨ achlich ist es f¨ ur die Spracherkennung nicht in erster Linie wichtig, wie sicher sich das Modell ist, sondern wie recht es hat. Man verwendet deswegen in der Praxis eher eine Form der sogenannten Kreuzentropie. F¨ ur N-GramSprachmodelle ist die Kreuzentropie wie folgt zu berechnen:
H(W1K ) = −
K 1 log2 P (wk |wk−N +1 . . . wk−1 ) K
(207)
k=1
Die Kreuzentropie wird f¨ ur eine Menge von Testdaten (hier eine lange Wortur ein folge W1K ) bestimmt. Man kann sich leicht davon u ¨ berzeugen, dass f¨ N-Gram-Sprachmodell die Kreuzentropie durch Gl¨ attung der Wahrscheinlichkeitsverteilung abnimmt, zumindest wenn gewisse Wortfolgen wk−N +1 ...wk in den Trainingsdaten des Sprachmodells nicht vorgekommen sind. 13.2.8.3 Perplexit¨ at Zur Beschreibung der Komplexit¨ at eines Sprachmodells wird oft die Perplexit¨ at als Mass gebraucht.
Definition 13.3: Die Perplexit¨ at Q ist definiert als Q = 2H und gibt die mittlere (d.h. den Erwartungswert der) Wortverzweigungsrate an. Auch die Perplexit¨ at ist ein Mass f¨ ur die Leistungsf¨ ahigkeit eines Sprachmodells. Muss ein Spracherkenner beispielsweise Wortfolgen aus einem Vokabu-
386
13. Sprachmodellierung
lar der Gr¨ osse |V | erkennen und es wird kein Sprachmodell eingesetzt, dann ist die Wahrscheinlichkeit jedes Wortes gleich gross, n¨ amlich P (vi ) = 1/|V |. Die Entropie ergibt sich aus Formel (204) f¨ ur eine Wortkette der L¨ ange K 1 zu H0 = − K log2 P (W1K ) = − log2 P (wk ) = log2 (|V |). Somit betr¨agt die Perplexit¨ at ohne Sprachmodell Q0 = 2H0 = |V |. at des Sprachmodells Q1 = 2Hmod , Der Vergleich von Q0 mit der Perplexit¨ die im Falle eines N-Gram-Sprachmodells mit Gleichung (206) ermittelt werden kann, zeigt nun, um wieviel die mittlere Wortverzweigungsrate durch das Sprachmodell reduziert und damit die Spracherkennungsaufgabe vereinfacht wird. Weil das Sprachmodell den Erkenner auch zu stark einschr¨ anken kann, bedeutet eine kleinere Perplexit¨ at des Modells nicht, dass die Spracherkennungsrate h¨ oher ist. Um die N¨ utzlichkeit eines Sprachmodells in Bezug auf eine bestimmte Spracherkennungsaufgabe zu erfassen, verwendet man zur Berechnung der Perplexit¨ at die Kreuzentropie (siehe Abschnitt 13.2.8.2). Die Perplexit¨ at bezieht sich dann auf konkrete Testdaten, die der Erkennungsaufgabe so gut wie m¨ oglich entsprechen sollten.
13.2.9 St¨ arken und Schw¨ achen der statistischen Modellierung Die statistische Sprachmodellierung mittels N-Grams ist heute weit verbreitet, was angesichts ihrer St¨ arken wenig erstaunt. Die wichtigsten davon sind: Die Modelle werden mit tats¨ achlich gebrauchten S¨ atzen trainiert. Die Modelle beschreiben also den wirklichen Gebrauch der Sprache und enthalten somit nicht nur syntaktische, sondern auch semantisches und pragmatisches Wissen. N-Grams k¨ onnen f¨ ur eine beliebige Sprache mit den entsprechenden Daten (d.h. Texten dieser Sprache) trainiert werden. Sind diese Daten verf¨ ugbar, dann kann ein Sprachmodell erzeugt werden, und es ist daf¨ ur insbesondere kein linguistisches Wissen u otig. ¨ ber die betreffende Sprache n¨ Nicht unwichtig ist schliesslich, dass N-Grams einfach in den Erkenner integriert werden k¨ onnen. Man konfiguriert ein entsprechendes Erkennungsnetzwerk und wendet zur Erkennung den Viterbi-Algorithmus an. Die akustischen Modelle und das Sprachmodell werden also gleichzeitig eingesetzt, was sehr effizient ist. Die statistische Sprachmodellierung weist nebst diesen St¨ arken und Vorteilen ein paar grunds¨ atzliche Schw¨ achen auf. Die drei gravierendsten sind: Modellschw¨ ache: Wie in den Abschnitten 13.2.3 und 13.2.4 dargelegt wurde, kann die statistische Sprachmodellierung aus praktischen Gr¨ unden nur innerhalb eines beschr¨ ankten, kurzen Kontextes die Zusammenh¨ ange
13.2 Statistische Sprachmodellierung
387
zwischen den W¨ ortern erfassen. Dies ist insbesondere bei stark flektierten Sprachen7 problematisch, wie das folgende Beispiel veranschaulicht. In Abbildung 13.8 ist das Ergebnis eines Spracherkenners dargestellt, bei dem ein Bigram-Sprachmodell eingesetzt worden ist. Das Beispiel illustriert diese Modellschw¨ ache: Das Wortpaar “Bruder ging” kommt im Trainingstext viel h¨ aufiger vor als “Bruder gingen”. Das Sprachmodell greift deshalb zu kurz. ¨ Uberbewertung des Sprachmodells: Das statistische Sprachmodell hilft dort, wo das akustische Modell keine eindeutige Aussage machen kann, aufgrund von A-priori-Wissen die wahrscheinlichere Wahl zu treffen. Das heisst aber auch, dass das akustische Modell vom Sprachmodell in gewissen F¨ allen systematisch u ¨ berstimmt werden kann. Dies ist insbesondere dann der Fall, wenn die Viterbi-Wahrscheinlichkeit des akustischen Modells f¨ ur das korrekte Wort zwar am gr¨ ossten, aber nur wenig gr¨ osser als diejenige anderer W¨ orter ist und das Sprachmodell gleichzeitig dem korrekten Wort eine geringe A-priori-Wahrscheinlichkeit zuweist. M¨ ussen z.B. in einer automatischen Telefonnummernauskunft nebst vielen andern die Namen “M¨ oller” und “M¨ uller” erkannt werden, dann wird uller”) P (vi =“M¨ oller”) sein, weil im Unigram-Sprachmodell P (vi =“M¨ “M¨ uller” (im schweizerischen Telefonbuch) etwa 200 Mal h¨ aufiger ist. Das Sprachmodell wird somit bei der Erkennung der akustisch ¨ ahnlichen Namen “M¨ uller” und “M¨ oller” den ersteren stark beg¨ unstigen, was u ¨ ber die gesamte Einsatzzeit des Systems gesehen durchaus sinnvoll sein kann. Will jedoch eine Person tats¨ achlich die Telefonnummer eines Herrn M¨ oller wissen, dann wird der Spracherkenner aufgrund des Sprachmodell mit sehr grosser Wahrscheinlichkeit “M¨ uller” erkennen. Zu diesen Schw¨ achen kommt das Problem der Trainingsdaten hinzu. Ein statistisches Sprachmodell lernt aus den Trainingsdaten. Um gute Resultate zu erhalten, m¨ ussen die Texte hinsichtlich Vokabular und Textart einigermassen gut an die Anwendung angepasst sein. Ein passendes statistisches Sprachmodell zu erarbeiten, ist deshalb in der Praxis sehr aufw¨ andig.8 7
Zu den stark flektierten Sprachen geh¨ ort z.B. Deutsch, weil Verben, Nomen und Adjektive viele verschiedene Formen haben, durch die Grammatik jedoch nur ganz bestimmte Kombinationen erlaubt sind. Innerhalb von Nominalgruppen ist beispielsweise erforderlich, dass die W¨ orter hinsichtlich Kasus, Numerus und Genus u ort Englisch. ¨ bereinstimmen. Zu den schwach flektierten Sprachen geh¨ 8
Nur schon das Zusammentragen geeigneter Texte im Umfang von minimal etwa 50 Mio. W¨ ortern ist keine Kleinigkeit, wenn man bedenkt, dass dieses Buch lediglich etwa 110’000 W¨ orter umfasst.
nah
an
kann
da
dann
dann
auch
1
um
um
und
und
um
1.2
die
die
die
die
er
ihr
er
ihre
er
der
er
dir
ihr
ihre
1.4
du
du
1.6
bruder BRUDER
bruder oder
oder guter
1.8
gingen
2
in
nie NIE
ging
ging GING
nie nie
ginge
gingen
ins INS
2.2
ins
2.4
kino
kino
kino KINO
2.6
um
an
und
und unter Anwendung des N-best-Viterbi-Algorithmus die dargestellten Worthypothesen aus. Die Hypothesen erscheinen umso dunkler, je h¨ oher die l¨ angennormierte Log-Likelihood des Modells ist. Die wahrscheinlichste Wortsequenz ist mit grosser Schrift markiert.
Abbildung 13.8. F¨ ur das Sprachsignal “Anna und ihr Bruder gingen ins Kino.” gibt ein Spracherkenner mit Bigram-Sprachmodell
0.8
nah
auch
nach
nah
auch
und
und
um
danach
und
hund
an
an
rund
er
ihr IHR
und UND
anna
anne
er ihre
rund hund
an
dir der
anna ANNA
am
kann
0.6
da
anna
anna
dir der
nach
nach
388 13. Sprachmodellierung
13.3 Wissensbasierte Sprachmodellierung
389
13.3 Wissensbasierte Sprachmodellierung Zweifellos folgen die geschriebene und die gesprochene Sprache gewissen Regeln. Ein grosser Teil dieses Buches befasst sich mit der Frage, wie diese Regelhaftigkeiten formal erfasst werden k¨ onnen, und wie dieses linguistische Wissen in Anwendungen der Sprachverarbeitung eingesetzt werden kann. So wurden beispielsweise in Kapitel 6 die formalen Grammatiken als ein Mittel zur Beschreibung nat¨ urlicher Sprachen eingef¨ uhrt und in Kapitel 8 auf die automatische Transkription angewendet. Es stellt sich nun die naheliegende Frage, ob sich formales linguistisches Wissen auch in der Spracherkennung einsetzen l¨ asst. Wie wir in Abschnitt 13.3.1 zeigen werden, findet in der Spracherkennung linguistisches Wissen unterschiedlicher sprachlicher Ebenen seine Anwendung. Ein zweiter Teil befasst sich mit der Verwendung formaler Grammatiken als Sprachmodelle. Dabei wird vor allem auf die Schwierigkeiten solcher Ans¨ atze eingegangen, aber auch auf m¨ ogliche L¨ osungen.
13.3.1 Linguistisches Wissen in der Spracherkennung In der Spracherkennung kann linguistisches Wissen aller sprachlichen Ebenen (vergl. Abschnitt 1.2.1) eingesetzt werden. Bei der Konzeption eines Spracherkennungssystems wird oft auf Wissen der akustisch-phonetischen Ebene zur¨ uckgegriffen. F¨ ur einen Spracherkenner, der auf Teilwort-Grundelementen basiert, muss beispielsweise ein Lautinventar festgelegt werden. Auch distinktive Merkmale (siehe Abschnitt 1.2.3), die fr¨ uher als Merkmale f¨ ur die Spracherkennung eingesetzt wurden, sind ein phonetisches Konzept. Was die phonemische Ebene angeht, so sind in der Spracherkennung insbesondere Regeln f¨ ur Aussprachevarianten interessant (siehe Abschnitt 13.3.1.1). Das Wissen u ortern kann der morphologischen Ebene ¨ ber den lautlichen Aufbau von W¨ zugerechnet werden. Auf die Beschreibung und die Anwendung solcher Information wird ebenfalls in Abschnitt 13.3.1.1 eingegangen. Wissen der syntaktischen Ebene kann als Grundlage einer sp¨ ateren semantischen Analyse dienen, aber auch zur Einschr¨ ankung des Suchraums auf die akzeptierten S¨ atze (siehe Abschnitt 13.3.1.1) oder generell zur Verbesserung der Erkennungsleistung (siehe Abschnitt 13.3.1.3). Das Wissen der semantischen und pragmatischen Ebenen ist im Allgemeinen sehr schwierig zu erschliessen. Beispielsweise ist es schon unklar, auf welche Art und Weise die Bedeutung eines Wortes zu repr¨ asentieren ist, geschweige dann, wie dieses Wissen f¨ ur eine bedeutende Menge von W¨ ortern bereitgestellt werden kann. Explizites semantisches und pragmatisches Wissen kommt deshalb vor allem in sehr eingeschr¨ ankten Anwendungsszenarien zum Einsatz, beispielsweise in Dialogsystemen (wobei der Dialogzustand als pragmatische Komponente betrachtet werden kann) oder in Auskunftssystemen. Zudem
13.3
390
13. Sprachmodellierung
wird semantische Information gelegentlich im Erkennungsteil von sprachverstehenden Systemen verwendet, weil solche Systeme sowieso u ¨ ber eine semantische Komponente verf¨ ugen m¨ ussen. Die oben erw¨ ahnten Arten von linguistischem Wissen k¨ onnen in verschiedenen Phasen der Spracherkennung eingesetzt werden: in der Systemkonfigurationsphase, in der eigentlichen Erkennungsphase und in der Nachverarbeitung. Dies wird in den folgenden Abschnitten anhand einiger Beispiele erl¨ autert. 13.3.1.1 Einsatz in der Konfigurationsphase Ein wesentlicher Teil der Konfiguration eines auf dem Viterbi-Algorithmus basierenden Spracherkenners ist das Erzeugen des Erkennungsnetzwerks. Die Zielsetzung kann dabei unterschiedlich sein:
Generieren des Erkennungsnetzwerks: Liegen f¨ ur ein Spracherkennungsproblem ein Vokabular und eine Grammatik vor, so kann unter bestimmten Bedingungen automatisch ein Erkennungsnetzwerk erzeugt werden, das nur die von der Grammatik akzeptierten Wortfolgen zul¨ asst. Dies l¨ asst sich beispielsweise dadurch erreichen, dass die Grammatik in einen nichtdeterministischen endlichen Automaten transformiert oder durch einen solchen approximiert wird. Ein endlicher Automat wiederum l¨ asst sich direkt in ein Erkennungsnetzwerk umsetzen. Weil das Netzwerk mit zunehmender Gr¨ osse des Vokabulars und Komplexit¨ at der Grammatik stark w¨ achst, kann es in der Praxis nur f¨ ur einfache F¨ alle erzeugt werden. Generieren der Wortmodelle: Aus einem vollst¨ andigen Satz von Subwortmodellen und einem Aussprachelexikon f¨ ur ein bestimmtes Vokabular k¨ onnen die Wortmodelle eines Spracherkenners erzeugt werden. Die Wortmodelle k¨ onnen sodann ins Erkennungsnetzwerk eingesetzt werden. Das morphologische Wissen, das in Form eines Aussprachelexikons gegeben ist, kann auf verschiedene Arten erzeugt worden sein. Neben der vollst¨ andig manuellen Eingabe ist es auch m¨ oglich, mit Hilfe einer generierend eingesetzten Wortgrammatik die graphemischen und phonetischen Vollformen aus den entsprechenden Morphemen zu erzeugen. Eine weniger pr¨ azise Methode, die aber f¨ ur ein sehr grosses oder dynamische erweiterbares Vokabular zweckm¨ assiger ist, besteht darin, die phonetische Umschrift direkt aus der graphemischen Form abzuleiten. Dies kann mit Hilfe von wissensbasierten oder statistischen Ans¨ atzen geschehen. Generieren von Aussprachevarianten: Bekanntlich sind die Phoneme die kleinsten bedeutungsunterscheidenden Einheiten der Lautsprache, w¨ ahrend Allophone nicht bedeutungsunterscheidend sind. Tats¨ achlich kommen jedoch gerade bei schnell gesprochener Sprache Aussprachevarianten vor, die sich nicht auf Allophone zur¨ uckf¨ uhren lassen:
13.3 Wissensbasierte Sprachmodellierung
391
normal:
schnell:
Regel:
anbinden
[anbInd@n]
[ambInd@n]
[nb] → [mb]
ein Bier
[a
[nb] → [mb]
am Mittag
[a
mitkommen
["mItkOm@n]
["mIkOm@n]
[tk] → [k]
Tagesschau
[ta:g@sSa
[ta:g@Sa
[sS] → [S]
[mm] → [m]
Solche Aussprachevarianten k¨ onnen leicht mit Hilfe von kontextabh¨ angigen Lautersetzungsregeln beschrieben werden. In der Konfigurationsphase k¨ onnen unter Anwendung solcher Aussprachevariantenregeln alternative Aussprachen erzeugt werden. Die alternativen Aussprachen k¨ onnen entweder dem Aussprachelexikon hinzugef¨ ugt oder direkt im Erkennungsnetzwerk modelliert werden. Wort¨ ubergreifende onnen Ausspracheregeln (etwa die Regel [nb] → [mb] im obigen Beispiel) k¨ nur direkt im Erkennungsnetzwerk ber¨ ucksichtigt werden. Wie bereits in Abschnitt 13.2.1 gezeigt, kann es in einem Dialogsystem sinnvoll sein, den Erkenner vor jedem Dialogschritt neu zu konfigurieren, also den Erkenner optimal an die n¨ achste Benutzereingabe anzupassen. 13.3.1.2 Einsatz in der Erkennungsphase Da wissensbasierte Ans¨ atze im Vergleich zu den statistischen Verfahren eine relativ aufw¨ andige Verarbeitung erfordern, kommen sie in der Erkennungsphase, wo der Suchraum der m¨ oglichen Hypothesen noch sehr gross ist, kaum zum Einsatz. Insbesondere bei Auskunftssystemen mit relativ eingeschr¨ ankter Syntax gab es jedoch auch vereinzelte Versuche, probabilistische Grammatiken als Sprachmodell in der Viterbi-Suche zu verwenden. 13.3.1.3 Einsatz in der Nachverarbeitung Ein h¨ aufig verwendeter Ansatz zur Anwendung von syntaktischem oder semantischem Wissen besteht darin, zuerst den Raum der m¨ oglichen Hypothesen mit Hilfe des N-best-Viterbi-Algorithmus einzuschr¨ anken, und dann nur die besten Hypothesen einer aufw¨ andigeren Analyse zu unterziehen. Als Grundlage der Nachverarbeitung k¨ onnen die N besten Hypothesen dienen (siehe Abschnitt 12.5.5) oder ein sogenannter Wort-Graph, ein gerichteter, azyklischer Graph, in dem jeder Pfad vom Start- zum Endknoten einer Hypothese (d.h. einer Wortfolge) entspricht. Die linguistische Nachverarbeitung kann verschiedene Ziele verfolgen. Beispielsweise kann versucht werden, die Erkennungsleistung zu verbessern, indem die linguistisch plausiblen (d.h. zum Beispiel die grammatikalisch korrek-
392
13. Sprachmodellierung
ten) Hypothesen bei der Auswahl der endg¨ ultigen L¨ osung bevorzugt werden. Diese Idee wird im n¨ achsten Abschnitt noch ausf¨ uhrlicher behandelt. In sprachverstehenden Systemen ist nicht in erster Linie die Wortfehlerrate entscheidend, sondern vielmehr die Zuverl¨ assigkeit, mit der die relevanten semantischen Einheiten und Zusammenh¨ ange aus dem Satz ermittelt werden k¨ onnen. F¨ ur solche Systeme kann es Sinn machen, in den N besten Hypothesen nach semantischen Einheiten zu suchen, beispielsweise g¨ ultige Kreditkartennummern, Datums- und Zeitangaben oder lokale Pr¨ apositionalgruppen wie “nach Basel”. So kann alles vorhandene Wissen u ¨ ber die gegebene Anwendung eingebracht werden, um die semantisch koh¨ arenteste Hypothese zu finden.
13.3.2 Formale Grammatiken als Sprachmodelle Im Abschnitt 8.3 wurde der Einsatz des DCG-Formalismus zur Darstellung der Satz- und Wortgrammatik in der Sprachsynthese erl¨ autert. Warum formale Sprachen auch in der Spracherkennung n¨ utzlich sein k¨ onnten, soll hier am Beispiel aus Abbildung 13.8 illustriert werden. In diesem Beispiel liefert der Spracherkenner anstelle der korrekten Transkription “Anna und ihr Bruder gingen ins Kino.” die L¨ osung “Anna und ihr Bruder ging nie ins Kino.”. Diese L¨ osung ist syntaktisch nicht korrekt, weil Subjekt und Verb hinsichtlich des Numerus nicht u ¨ bereinstimmen. Ein Trigram kann diesen Zusammenhang nicht erfassen, weil es die Wahrscheinlichkeit des Wortes “ging” als P ( ging | ihr Bruder ) modelliert und damit die Koordination “und” gar nicht ber¨ ucksichtigen kann. Auch ein 4-Gram w¨ urde das Problem ¨ nicht l¨ osen, da die zu erkennende Ausserung ja auch wie folgt lauten k¨ onnte: “Anna schlief und ihr Bruder ging ins Kino.”. Tats¨ achlich k¨ onnen sich syntaktische Abh¨ angigkeiten u ¨ ber praktisch beliebig viele W¨ orter erstrecken. Grunds¨ atzlich k¨ onnen zwar N-Grams mit immer gr¨ osserem Kontext angewendet werden. Im Unterschied zu Bigrams oder Trigrams erfassen solche N-Grams jedoch kaum mehr allgemeinere Zusammenh¨ ange der Sprache, sondern merken sich einfach immer l¨ angere Wortfolgen. Formale Grammatiken hingegen k¨ onnen solche Arten von Abh¨ angigkeiten direkt beschreiben. Deshalb stellt sich automatisch die Frage, ob und wie formale Grammatiken in der Spracherkennung eingesetzt werden k¨ onnen. In den folgenden Abschnitten wird auf einige Probleme M¨ oglichkeiten solcher Ans¨ atze eingegangen. 13.3.2.1 Schwierigkeiten beim Einsatz formaler Grammatiken Die Schwierigkeiten bei der Anwendung formaler Grammatiken in der Spracherkennung treten am deutlichsten zutage, wenn man von einer Erkennungsaufgabe mit relativ uneingeschr¨ ankter Sprache ausgeht, beispielsweise von einem Diktiersystem. Abgesehen davon, dass die Entwicklung einer solchen
13.3 Wissensbasierte Sprachmodellierung
393
Grammatik an sich schwierig ist (siehe dazu auch Abschnitt 6.4), bringt der Einsatz formaler Grammatiken in der Spracherkennung ganz spezifische Probleme mit sich. Ein wichtiges Problem hat mit der Mehrdeutigkeit nat¨ urlicher Sprache zu tun, die in Abschnitt 8.3.3.4 erl¨ autert wurde. Dass eine korrekte Hypothese m¨ oglicherweise sehr viele Lesarten besitzt, ist dabei nicht in erster Linie von Belang, auch wenn es im Hinblick auf die Verarbeitungseffizienz durchaus ein Problem darstellt. Wesentlich schwerwiegender ist die Tatsache, dass auch viele offensichtlich falsche Hypothesen im Grunde grammatikalisch korrekt sind. Ein Beispiel daf¨ ur ist die Hypothese “scharon denkt nicht daran, dem r¨ uckzug der truppen aus einzuordnen” (da Gross-/Kleinschreibung keine akustische Entsprechung hat, wird sie hier nicht ber¨ ucksichtigt). Diese Wortfolge bildet einen korrekten deutschen Satz, weil “der truppen aus” als Nominalgruppe im Akkusativ gelesen werden kann. “der truppen” ist dabei der sogenannte pr¨ anominale Genitiv (analog zu “des Pudels Kern”) und “aus” ist das Substantiv (wie in “Droht bald das Aus?”). Wenn also nur die grammatische Korrektheit betrachtet wird, ist obige Hypothese also ebenso plausibel wie die korrekte Hypothese (“scharon denkt nicht daran, den r¨ uckzug der truppen anzuordnen”). Solche F¨ alle kommen recht h¨ aufig vor, und ihr Anteil nimmt dramatisch zu, wenn die Grammatik nicht einschr¨ ankend genug formuliert ist und damit auch viele ungrammatische Wortfolgen akzeptiert. Aus der Information, ob eine Hypothese zur Sprache der Grammatik geh¨ ort oder nicht, l¨ asst sich dann noch weniger auf die G¨ ute der Hypothese schliessen. Ein zweites wichtiges Problem besteht darin, dass manchmal die bestm¨ ogliche verf¨ ugbare Hypothese (also diejenige Hypothese mit der geringsten Anzahl Wortfehler) gar nicht grammatisch korrekt ist. Es gibt mehrere Gr¨ unde, die zu dieser Situation f¨ uhren k¨ onnen: ¨ Die Ausserung enth¨ alt ein Wort, das nicht zum Erkennervokabular geh¨ ort. Das korrekte Wort fehlt damit auch in allen Hypothesen des Spracherkenners bzw. wird durch ¨ ahnlich klingende W¨ orter ersetzt (zum Beispiel “al-kaida” durch “balkan nieder”). Wenn die korrekte Hypothese z.B. wegen schlechter akustischer Bedingungen als relativ unwahrscheinlich bewertet wird, kann es vorkommen, dass sie sich gar nicht unter den N besten Hypothesen befindet und deshalb bei der syntaktischen Analyse nicht ber¨ ucksichtigt wird. ¨ Die Ausserung selbst kann ungrammatisch sein. Gerade bei spontanen ¨ Ausserungen kommt es oft vor, dass sich der Sprecher korrigiert, oder dass Versprecher und Fehler im Satzbau auftreten.
394
13. Sprachmodellierung
¨ Die Ausserung kann grammatikalisch korrekt sein, aber nicht zur Sprache der verwendeten Grammatik geh¨ oren. Einerseits existiert bis heute keine vollst¨ andige Grammatik einer nat¨ urlichen Sprache, und andererseits sollten gewisse Ph¨ anomene eher nicht modelliert werden, weil sie das Problem der Mehrdeutigkeiten massiv versch¨ arfen w¨ urden. So zum Beispiel sogenannte Ellipsen wie im Satz “Nur innen noch deutliche Spuren der Explosion.”. Das Problem der Mehrdeutigkeiten kann ein St¨ uck weit entsch¨ arft werden, indem die Grammatik m¨ oglichst einschr¨ ankend formuliert wird, also so, dass falsche Wortfolgen von der Grammatik m¨ oglichst zuverl¨ assig verworfen werden. Das Problem der ungrammatischen Hypothesen scheint nach der genau entgegengesetzten Strategie zu verlangen, n¨ amlich eine m¨ oglichst wenig restriktive Grammatik anzuwenden. Tats¨ achlich kann eine wenig restriktive Grammatik f¨ ur bestimmte Erkennungsaufgaben durchaus angebracht sein. So zeigen zum Beispiel Untersuchungen der Benutzersprache in automatisierten Telefondiensten, die eine freie Formulierung der Anfrage zulassen, dass kurze Phrasen, die eine Informationseinheit wie die Person, den Ort oder die Zeit darstellen, meist grammatisch korrekt und fl¨ ussig gesprochen werden. Man kann nun eine Grammatik so formulieren, dass sie f¨ ur die informationstragenden Phrasen eine relativ strenge Struktur vorschreibt, w¨ ahrend der Zusammenhang zwischen diesen Phrasen nur lockeren Regeln unterliegt. Im folgenden Ausschnitt der Grammatik einer Telefonnummernauskunft sind zwischen den relevanten Phrasen beliebige “St¨ orungen” m¨ oglich: .. . → OptStoer, Info, Ausdr Ausdr → OptStoer, Info, OptStoer Ausdr OptStoer → OptStoer → Stoerung → Person Info → Ort Info → Strasse Info → OptAnrede, Vorname, Name Person OptAnrede → OptAnrede → herr OptAnrede → frau .. .
13.3 Wissensbasierte Sprachmodellierung
395
Eine andere M¨ oglichkeit, um mit ungrammatischen Hypothesen umzugehen, besteht darin, grunds¨ atzlich an einer m¨ oglichst einschr¨ ankenden Grammatik festzuhalten, aber gleichzeitig beliebige Folgen von W¨ ortern oder grammatikalisch korrekten Phrasen zu erlauben. Dieser Ansatz wird im n¨ achsten Abschnitt weiter ausgef¨ uhrt. 13.3.2.2 Parsing in der Spracherkennung Grunds¨ atzlich ist es m¨ oglich, eine formale Grammatik als das einzige Sprachmodell eines Spracherkennungssystems einzusetzen. Dabei besteht das Ziel darin, eine syntaktisch korrekte Wortfolge zu finden, die m¨ oglichst gut mit dem Sprachsignal u ¨ bereinstimmt. Ein solches System kann so aufgebaut sein, dass ein Spracherkenner Hypothesen f¨ ur Grundelemente (zum Beispiel Laute) bereitstellt. Ein Parser versucht dann, diese Grundelemente zu korrekten Konstituenten oder sogar S¨ atzen zusammenzusetzen. Wenn der Parser aufgrund der gegebenen Grammatik an einer Stelle des Sprachsignals bestimmte W¨ orter erwartet, so kann er seinerseits neue Hypothesen f¨ ur Grundelemente, W¨ orter oder Wortfolgen vorschlagen, die dann vom Spracherkenner verifiziert und bewertet werden. Solche und ¨ ahnliche Systeme wurden zwar implementiert, haben sich aber f¨ ur praktische Anwendungen als eher problematisch herausgestellt. Ein Grund daf¨ ur ist, dass eine Grammatik (zumindest, wenn sie nicht bloss einen trivialen Teil einer nat¨ urlichen Sprache abdecken soll) den enorm grossen Suchraum nicht sehr effektiv einschr¨ anken kann. Wie bereits in Abschnitt 13.3.1.3 angesprochen, ist es eine wesentlich bessere L¨ osung, den Suchraum durch eine statistische Spracherkennung stark einzuschr¨ anken und die syntaktische Analyse nur auf den N besten Erkennerhypothesen durchzuf¨ uhren. Dieser Ansatz hat den wesentlichen Vorteil, dass alle Vorz¨ uge der statistischen Sprachmodellierung genutzt werden k¨ onnen, zum Beispiel die effiziente Verarbeitung mit dem N-best-Viterbi-Algorithmus oder die implizite Repr¨ asentation von semantischem Wissen in N-Grams. Indem zus¨ atzlich ein wissensbasiertes Sprachmodell (zum Beispiel eine formale Grammatik) auf die N besten Hypothesen angewendet wird, kann die Modellschw¨ ache des statistischen Sprachmodells (siehe Abschnitt 12.9) teilweise kompensiert werden. Abbildung 13.10 zeigt wieder das Beispiel aus Abbildung 13.8. Dieses Mal wurde jedoch ein wissensbasiertes Sprachmodell (ein Head-driven Phrase Structure Grammar, siehe Abschnitt 6.4) verwendet, um aus den N besten Hypothesen die korrekte Hypothese auszuw¨ ahlen. Die Architektur dieses Spracherkenners ist in Abbildung 13.9 dargestellt. Das System verwendet einen Bottom-up-Chart-Parser, der alle m¨ oglichen Phrasen ermittelt, die aus Abschnitten der gegebenen Wortfolge (Hypothese)
396
13. Sprachmodellierung
Sprachsignal s(n) Merkmalsextraktion
HMM HMM HMM 1 2 [b] [a] [b]
Merkmalssequenz X N-Best-ViterbiAlgorithmus
Erkennungsnetzwerk
AusspracheLexikon
Lexikon
Sprachmodell
3
HMM [x]
j
N beste Wortfolgen Chart-Parser Grammatik erkannte Wortfolge W Abbildung 13.9. Spracherkenner mit getrennten Stufen f¨ ur die statistische und die wissensbasierte Verarbeitung.
abgeleitet werden k¨ onnen, und diese in der Chart speichert. Nach dem Parsing wird jede der N besten Hypothesen neu bewertet, und die Hypothese mit der besten Bewertung wird als erkannte Wortfolge ausgegeben. Die Bewertung einer Hypothese ist im Wesentlichen ein gewichtetes Mittel der akustischen Likelihood P (X|W ), der Wahrscheinlichkeit des statistischen ur die Grammatikalit¨ at der Hypothese. Modells P (W ) und eines Masses f¨ Letzteres ist so definiert, dass es nicht nur zwischen korrekten und inkorrekten Hypothesen unterscheidet, sondern auch zwischen mehr oder weniger korrekten. Das Grammatikalit¨ atsmass basiert auf der Information, wie sich die Wortfolge einer gegebenen Hypothese in eine Folge von W¨ ortern und Konstituenten zerlegen l¨ asst, wobei die m¨ oglichen Konstituenten einer Hypothese aus der jeweiligen Chart ersichtlich sind. L¨ asst sich beispielsweise die ganze Hypothese als eine einzige Konstituente analysieren (z.B. “anna und ihr bruder gingen ins kino”), so ist eine hohe Grammatikalit¨ at gegeben. Wenn keine vollst¨ andige Analyse m¨ oglich ist, sich aber in der Hypothese grosse zusammenh¨ angende Konstituenten finden lassen (z.B. “anna | und | ihr bruder ging ins kino”), ist die Grammatikalit¨ at reduziert. Eine wesentlich geringere Grammatikalit¨ at ist gegeben, wenn nur einige wenige kleine Konstituenten in der Hypothese gefunden werden k¨ onnen (z.B. “kann | nah | um die | er | bruder | ging | in | ins kino”). Mit diesem Ansatz kann das Problem der ungrammatischen
nah
an
kann
da
dann
dann
auch
1
um
um
und
und
um
1.2
die
die
die
die
er
ihr
er
ihre
er
der
er
dir
ihr
ihre
1.4
du
du
1.6
bruder BRUDER
bruder oder
oder guter
1.8
ging
ging
ginge
gingen
2
gingen GINGEN nie
in
nie
nie ins
2.2
ins INS
2.4
kino
kino
kino KINO
2.6
um
an
und
Abbildung 13.10. Ausgabe des Spracherkenners von Abbildung 13.9: Die statistische Stufe detektiert die N besten Wortsequenzen (hier sind nur die besten Worthypothesen dargestellt). Die zweite Stufe ermittelt unter Anwendung syntaktischen Wissens die korrekte Wortfolge.
0.8
nah
auch
nach
nah
auch
und
und
um
danach
und
hund
an
an
rund
er
ihr IHR
und UND
anna
anne
er ihre
rund hund
an
dir der
anna ANNA
am
kann
0.6
da
anna
anna
dir der
nach
nach
13.3 Wissensbasierte Sprachmodellierung 397
398
13. Sprachmodellierung
¨ Ausserungen behandelt werden, ohne dass auf eine restriktive Grammatik verzichtet werden muss. 13.3.2.3 Statistische Sprachmodelle und formale Grammatiken Nach dem bisher Gesagten k¨ onnte der Eindruck entstehen, dass zwischen statistischen Sprachmodellen und formalen Grammatiken nat¨ urlicher Sprache eine un¨ uberbr¨ uckbare Kluft besteht. Tats¨ achlich n¨ ahern sich diese beiden extremen Positionen immer mehr an. Einerseits sind formale Grammatiken in praktischen Anwendungen h¨ aufig mit einer statistischen Komponente versehen, welche die Wahrscheinlichkeit einer bestimmten Ableitung ermittelt. Andererseits werden immer komplexere statistische Modelle entwickelt, die auch den syntaktischen Aufbau nat¨ urlicher Sprache ber¨ ucksichtigen. Manche dieser Modelle wurden urspr¨ unglich entwickelt, um die syntaktische Struktur von nat¨ urlichsprachlichen S¨ atzen zu bestimmen (statistisches Parsing), wurden in der Folge aber auch als statistische Sprachmodelle in der Spracherkennung eingesetzt.
Anhang A Verschiedene Grundlagen
A
A
A A.1 A.2 A.3 A.4 A.4.1 A.4.2 A.5 A.5.1 A.5.2 A.5.3 A.5.4 A.5.5
Verschiedene Grundlagen Phonetische Schrift in ASCII-Darstellung ................. Phonemsystem des Deutschen ............................... Z-Transformation............................................... Wahrscheinlichkeitstheorie.................................... Regeln der Wahrscheinlichkeitsrechnung .................. Wahrscheinlichkeitsverteilungen ............................. Neuronale Netze: Mehrschicht-Perzeptron ................ Das Neuronenmodell........................................... Das Mehrschicht-Perzeptron ................................. Anwendungen von Mehrschicht-Perzeptronen ............ Training eines Mehrschicht-Perzeptrons ................... Hinweise zum Einsatz von neuronalen Netzen............
401 404 405 407 407 409 415 415 416 417 418 420
A Verschiedene Grundlagen Dieser Anhang enth¨ alt Informationen und Grundlagen aus verschiedenen Gebieten. Sie werden entweder f¨ ur die Sprachverarbeitung gebraucht oder f¨ ur das Verst¨ andnis dieses Buches vorausgesetzt. Sie geh¨ oren jedoch nicht zu den Kernthemen dieses Buches und sind deshalb kurz gehalten. F¨ ur umfassendere Information sei auf die Literatur verwiesen.
A.1 Phonetische Schrift in ASCII-Darstellung Laute und Phoneme werden in diesem Buch der Konvention der International Phonetic Association entsprechend bezeichnet, also mit IPA-Symbolen. Die verwendeten phonetischen Symbole (Lautschriftzeichen) sind auf den folgenden Seiten zusammengestellt. Es sind insbesondere die f¨ ur das Deutsche n¨ otigen Symbole aufgef¨ uhrt, dazu auch die franz¨ osischen nasalierten Vokale. F¨ ur jede Sprache hat die IPA einen Satz von Symbolen definiert (siehe [10]). Die IPA-Symbole selbst sind jedoch nicht sprachspezifisch, d.h. obwohl Laute wie das deutsche [l] und das englische [l] sehr verschieden klingen, wird f¨ ur beide dasselbe IPA-Symbol verwendet. In der Regel muss deshalb die Sprache separat angegeben werden. Da die Verwendung von IPA-Symbolen in Computerprogrammen unpraktisch ist, sind verschiedentlich Anstrengungen unternommen worden, die IPASymbole mit dem ASCII-Standardzeichensatz (American Standard Code for Information Interchange) zu repr¨ asentieren. Der bekannteste und umfassendste Versuch hat zu SAMPA (Speech Assessment Methods Phonetic Alphabet) gef¨ uhrt (siehe http://www.phon.ucl.ac.uk/home/sampa/). Die in der Gruppe f¨ ur Sprachverarbeitung der ETH-Z¨ urich verwendeten ETHPA-Symbole (ETH phonetic alphabet) sind stark an SAMPA angelehnt. F¨ ur die Sprachsynthese waren jedoch folgende Modifikationen n¨ otig: Zwischen den beiden Lauten eines Diphthongs oder einer Affrikate wird um der Eindeutigkeit willen ein _ eingef¨ ugt. Bei den deutschen Diphthongen “au”, “ei” und “eu”, die in [7] phonetisch als [a
A.1
402
A. Verschiedene Grundlagen
Tabelle der IPA-Symbole und ihre ASCII-Repr¨ asentationen In der Kolonne IPA sind alle in diesem Buch verwendeten Lautbezeichnungen als IPA-Symbole aufgef¨ uhrt. Die ASCII-Repr¨ asentationen der Lautbezeichnungen stehen in der Kolonne ETHPA (ETH Phonetic Alphabet). IPA a a: a ˜ a: ˜ 5 5 “ a
ETHPA a a: ~a ~a: 6 ^6 a_i a_u b C d e e: E E: ~E ~E: @ f g h i i: ^i I j k l =l m =m n =n N o
Beispiel hat Bahn Pens´ee Gourmand Ober Uhr weit Haut Ball sich dann Methan Beet h¨ atte w¨ ahle timbrieren Timbre halte Fass Gast hat vital viel Studie bist ja kalt Last Nabel Mast grossem Naht baden lang Moral
Erkl¨ arung [hat] [ba:n] [p˜ a"se:] [gUr"m˜ a:] ["Šo:b5] [Šu:5] “ [va
kurzes a langes a kurzes, nasaliertes a langes, nasaliertes a abgeschw¨ achtes a abgeschw¨ achtes, unsilbisches a Diphthong [a
A.1
Phonetische Schrift in ASCII-Darstellung
o: o “ o ˜ o: ˜ O ˜O ˜O: ø ø: œ œ: œ ˜ œ ˜: Oy < p p
o: ^o ~o ~o: O ~O ~O: 2 2: 9 9: ~9 ~9: O_y p p_f r R s S t t_s t_S u u: ^u U v x y y: ^y Y z Z
" Š -
’ , ? +
403
g¨ ottlich fr. peur Lundist Parfum Heu Pakt Pfahl Rast
[bo:t] [loa"ja:l] “ [f˜ o"dY:] [f˜ o:] [pOst] [bO] [b˜O:z] [Šøko"no:m] [Šø:l] ["gœtli¸c] [pœ:r] [lœ ˜ "dIst] [par"fœ ˜ :] [hOy] < [pakt] [p
Hast schal Tal Zahl Matsch kulant Hut aktuell Pult was Bach Mykene R¨ ube Etui f¨ ullt Hase Genie
[hast] [Sa:l] [ta:l] [t<sa:l] [matS] < [ku"lant] [hu:t] [Šak"tu El] “ [pUlt] [vas] [bax] [my"ke:n@] ["ry:b@] yi:] [Še"t˘ [fYlt] ["ha:z@] [Z e"ni:]
langes, geschlossenes o unsilbisches o kurzes, geschloss., nasaliertes o langes, geschloss., nasaliertes o kurzes, offenes o kurzes, offenes, nasaliertes o langes, offenes, nasaliertes o kurzes, geschlossenes ¨ o langes, geschlossenes ¨ o kurzes, offenes ¨ o langes, offenes ¨ o kurzes, offenes, nasaliertes ¨ o langes, offenes, nasaliertes o ¨ Diphthong [Oy] < p-Laut Affrikate [p
Bankier Vorgang beamtet Hand-lung hust+en
[ba:N"kie:] “ ["fo:rgaN] [b@"Šamt@t] [hand-lUN] [hu:st+@n]
Worthauptakzent Wortnebenakzent Glottalverschluss Silbengrenze Morphemgrenze
Boot loyal Fondue Fond Post fr. bon fr. bonze ¨ Okonom ¨ Ol
404
A.2
A. Verschiedene Grundlagen
A.2 Phonemsystem des Deutschen Das mittels Minimalpaaranalyse eruierbare Phonemsystem des Deutschen umfasst 39 Phoneme, n¨ amlich 19 Vokalphoneme und 20 Konsonantenphoneme (gem¨ ass [16]). Die Phoneme sind nachfolgend zusammen mit den zugeh¨ origen Phonen bzw. Allophonen aufgelistet. Die Phone und Allophone sind gem¨ ass [7] bezeichnet (vergl. auch Abschnitt A.1). Vokalphoneme
Konsonantenphoneme
Phonem
Phon bzw. Allophone
Phonem
Phon bzw. Allophone
/a:/ /a/ /e/ / E/ / E:/ /@/ /i/ /I/ /o/ /O/ /ø/ /œ/ /u/ /U/ /y/ /Y/ /a
[a:] [a] [e:] [ E] [ E:] [@ ] [i:] [I ] [o:] [O ] [ø:] [œ] [u:] [U] [y:] [Y] [a
/b/ /d/ /g/ /p/ /t/ /k/ /m/ /n/ /N/ /f/ /v/ /s/ /z/ /S/ /Z / /x/ /j/ /l/ /h/ /r/
[b] [d] [g ] [p] [t] [k] [m] [n] [N ] [f] [v] [s] [z] [S] [Z ] [¸c] [j] [l] [h] [r]
[i] “ [o] “
[u] “ [˘ y]
[ph ] [th ] [kh ] [m] " [n] "
[x] [l] " [ö]
[5] “
[5]
ass [16] nicht Merke: Die deutschen Affrikaten [p
A.3
Z-Transformation
405
A.3
A.3 Z-Transformation Die bilaterale Z-Transformation eines Signals x(n) ist definiert als
X(z) =
∞
x(n) z −n ,
(208)
n=−∞
auft. Die wichtigsten Eigenschaften der wobei n alle ganzen Zahlen durchl¨ Z-Transformation sind: Linearit¨ at:
Z(a x1 (n) + b x2 (n)) = a Z(x1 (n)) + b Z(x2 (n))
Verschiebung:
Z(x(n−k)) = z −k Z(x(n))
Faltung:
Z(x1 (n) ∗ x2 (n)) = Z(x1 (n)) Z(x2 (n))
f¨ ur k > 0
Digitale Filter und deren Anwendung auf Zeitreihen, also digitale Signale, werden gew¨ ohnlich mit Hilfe der z-Transformation beschrieben. Der Zusammenhang zwischen der Zeitbereichsdarstellung einer Filterung, die in der Form einer Rekursionsgleichung gegeben ist, und der Darstellung im z-Bereich wird nachfolgend anhand eines Beispiels illustriert. Gegeben ist die Rekursionsgleichung einer Filterung (die Vorzeichenkonvention ist hier so gew¨ ahlt worden, dass sie mit derjenigen in Matlab u ¨ bereinstimmt)
y(n) = −a1 y(n−1) − . . . − aK y(n−K) +b0 x(n) + b1 x(n−1) + . . . + bJ x(n−J) ,
(209)
die mit a0 = 1 als Differenzengleichung geschrieben werden kann:
a0 y(n) + a1 y(n−1) + . . . + aK y(n−K) = b0 x(n) + b1 x(n−1) + . . . + bJ x(n−J) .
(210)
Unter Ausnutzung der Linearit¨ ats- und Verschiebungseigenschaften lautet die z-Transformierte dieser Differenzengleichung:
a0 Y (z) + a1 Y (z)z −1 + . . . + aK Y (z)z −K = b0 X(z) + b1 X(z)z −1 + . . . + bJ X(z)z −J .
(211)
Daraus ergibt sich mit
a0 + a1 z −1 + . . . + aK z −K =
K
ak z −k = A(z)
(212)
bj z −j = B(z)
(213)
k=0
und
b0 + b1 z −1 + . . . + bJ z −J =
J j=0
406
A. Verschiedene Grundlagen
¨ die Ubertragungsfunktion U (z) des Filters zu
U (z) =
b0 + b1 z −1 + . . . + bJ z −J Y (z) B(z) = , = −1 −K X(z) a0 + a1 z + . . . + aK z A(z)
(214)
und die z-Transformierte der Filterung kann geschrieben werden als:
Y (z) = U (z) X(z) =
B(z) X(z) . A(z)
(215)
A.4
Wahrscheinlichkeitstheorie
407
A.4
A.4 Wahrscheinlichkeitstheorie A.4.1 Regeln der Wahrscheinlichkeitsrechnung In dieser Zusammenstellung der wichtigsten Definitionen und S¨ atze der Wahrscheinlichkeitstheorie werden die folgenden Begriffe verwendet: Elementarereignis: Bei einem Experiment (z.B. einen W¨ urfel werfen) trifft genau ein Elementarereignis ein. Die Elementarereignisse schliessen sich also gegenseitig aus. So gibt es beim Werfen eines W¨ urfels sechs Elementarereignisse, n¨ amlich eine Eins, eine Zwei etc. zu erhalten. Ereignis: Eine nichtleere Menge von Elementarereignissen wird als Ereignis bezeichnet (z.B. eine gerade Zahl w¨ urfeln, eine Zahl kleiner als 3 w¨ urfeln, eine Sechs w¨ urfeln, etc.). Ereignisraum: Die Gesamtheit aller m¨ oglichen Elementarereignisse wird ur das Beispiel eines W¨ urfels ist der Erals Ereignisraum Ω bezeichnet. F¨ eignisraum gleich der Menge {Eins, Zwei, . . . , Sechs}. Wahrscheinlichkeit ist ein Mass an Gewissheit, dass bei einem Experiment bestimmte, vom Zufall abh¨ angige Ereignisse eintreffen. Die Wahrscheinlichkeit atzt werden, eines Ereignisses A, die mit P (A) bezeichnet wird, kann gesch¨ uhren und die Zahl NA derjenigen Versuche indem wir N Versuche durchf¨ atzte Wahrscheinz¨ ahlen, bei denen das Ereignis A eingetroffen ist. Die gesch¨ aufigkeit von Ereignis A: lichkeit P˜ (A) entspricht dann der relativen H¨
P (A) ≈ P˜ (A) =
NA . N
(216)
Da bei einem Experiment eines der Elementarereignisse eintreffen muss und der Ereignisraum Ω die Menge aller m¨ oglichen Elementarereignisse ist, gilt
P (Ω) = 1 .
(217)
Ω wird deshalb auch als das sichere Ereignis bezeichnet. Betrachten wir die drei Experimente E1 , E2 und E3 mit den Ereignisr¨ aumen
E1 : Ω1 = A1 ∪ A2 ∪ A3 E2 : Ω2 = B1 ∪ B2 ∪ B3 ∪ B4 E3 : Ω3 = C1 ∪ C2 . Die Wahrscheinlichkeit, dass im Experiment E1 das Ereignis Ai eintritt und gleichzeitig im Experiment E2 das Ereignis Bj , wird als Verbundwahrscheinlichkeit P (Ai , Bj ) bezeichnet. Falls die Ereignisse B1 , . . . , B4 disjunkt sind,
408
A. Verschiedene Grundlagen
kann aus den Verbundwahrscheinlichkeiten P (Ai , Bj ), j = 1, 2, 3, 4, die Wahrscheinlichkeit von P (Ai ) als sogenannte Randverteilung berechnet werden: P (Ai ) = P (Ai , Bj ) . (218) j
Die Wahrscheinlichkeit, dass entweder im Experiment E1 das Ereignis Ai oder im Experiment E2 das Ereignis Bj eintritt, kann anhand des Additionsgesetzes ermittelt werden:
P (Ai ∪ Bj ) = P (Ai ) + P (Bj ) − P (Ai , Bj ) .
(219)
Die bedingte Wahrscheinlichkeit P (Ai |Bj ) ist definiert als die Wahrscheinlichkeit, dass das Ereignis Ai eintritt, falls das Ereignis Bj gegeben ist, also die Bedingung Bj zutrifft. Die bedingte Wahrscheinlichkeit und die Verbundwahrscheinlichkeit sind durch das Multiplikationsgesetz miteinander verkn¨ upft:
P (Ai , Bj ) = P (Ai |Bj ) P (Bj ) = P (Bj |Ai ) P (Ai ) .
(220) (221)
Setzt man die rechten Seiten der Gleichungen (220) und (221) einander gleich und l¨ ost die so entstehende Gleichung nach P (Ai |Bj ) auf, so gelangt man zum ber¨ uhmten Satz von Bayes:
P (Ai |Bj ) =
P (Bj |Ai ) P (Ai ) . P (Bj )
(222)
F¨ ur die Berechnung der Wahrscheinlichkeit P (Ai ) aus den bedingten Wahrscheinlichkeiten P (Ai |Bj ) ergibt sich durch Einsetzen der Formel (220) in (218) der Satz von der totalen Wahrscheinlichkeit: P (Ai ) = P (Ai |Bj ) P (Bj ) . (223) j
Das Multiplikationsgesetz gilt auch f¨ ur bedingte Wahrscheinlichkeiten:
P (Ai , Bj |Ck ) = P (Ai |Bj , Ck ) P (Bj |Ck ) .
(224)
Wird das Multiplikationsgesetz iterativ auf drei oder mehr Ereignisse angewendet, dann f¨ uhrt dies zur sogenannten Kettenregel (hier f¨ ur drei Ereignisse):
P (Ai , Bj , Ck ) = P (Ck |Ai , Bj ) P (Ai , Bj ) = P (Ck |Ai , Bj ) P (Bj |Ai ) P (Ai ) .
(225)
Falls das Auftreten des Ereignisses Ai die Wahrscheinlichkeit des Ereignisses Bj nicht beeinflusst und umgekehrt, so nennt man diese Ereignisse statistisch unabh¨ angig. In diesem Fall gelten f¨ ur die Verbund- und die bedingten
A.4
Wahrscheinlichkeitstheorie
409
Wahrscheinlichkeiten folgende Beziehungen:
P (Ai , Bj ) = P (Ai ) P (Bj )
(226)
P (Bj |Ai ) = P (Bj )
(227)
P (Ai |Bj ) = P (Ai ) .
(228)
A.4.2 Wahrscheinlichkeitsverteilungen Aus einem Zufallsexperiment resultiert definitionsgem¨ ass immer ein Elementarereignis des zugeh¨ origen Ereignisraumes Ω. Die nahe liegende Frage ist: Wie verteilt sich die Wahrscheinlichkeit P (Ω) = 1 auf die Elementarereignisse, oder kurz, wie sieht die Wahrscheinlichkeitsverteilung aus? Das Ergebnis eines Zufallsexperiments kann als Zufallsvariable betrachtet werden. Eine Zufallsvariable kann diskret oder kontinuierlich sein. Der Fall einer diskreten Zufallsvariable liegt beispielsweise vor, wenn wir aus einem deutschen Text einen zuf¨ alligen Buchstaben ziehen. Das Ergebnis ist immer ein Element aus der Menge der 26 Buchstaben. Um eine kontinuierliche Zufallsvariable handelt es sich, wenn wir z.B. von einer zuf¨ allig gew¨ ahlten, erwachsenen Person die K¨ orpergr¨ osse messen. Hier kann die Zufallsvariable innerhalb gewisser Grenzen beliebige Werte aus R annehmen. Die Wahrscheinlichkeitsverteilung beschreibt also den Zusammenhang zwischen den Werten einer Zufallsvariablen und den entsprechenden Wahrscheinlichkeiten. Dabei kann f¨ ur diskrete und kontinuierliche Zufallsvariablen nicht die gleiche Art von Beschreibung angewandt werden. Bei einer diskreten Zufallsvariable mit abz¨ ahlbar vielen Werten kann die Wahrscheinlichkeit f¨ ur jeden Wert angegeben werden. Bei einer kontinuierlichen Zufallsvariablen ist die Zahl der m¨ oglichen Werte unbegrenzt. Naheliegenderweise kann man deshalb nur angeben, mit welcher Wahrscheinlichkeit ein Wert der Zufallsvariable in einem gewissen Intervall liegt. Eine kontinuierliche Zufallsvariable wird deshalb mit einer Wahrscheinlichkeitsdichtefunktion (Wahrscheinlichkeit pro Intervall) beschrieben. A.4.2.1 Diskrete Wahrscheinlichkeitsverteilungen Eine diskrete Wahrscheinlichkeitsverteilung wird gesch¨ atzt, indem man die relative H¨ aufigkeit der diskreten Werte der diskreten Zufallsvariable ermittelt. Um f¨ ur das oben erw¨ ahnte Experiment zu ermitteln, mit welcher Wahrscheinahlt man, wie lichkeit ein gezogener Buchstabe x ein “A”, ein “B” etc. ist, z¨ oft die verschiedenen Buchstaben im Text vorkommen und normiert diese Zahlen mit der Gesamtzahl der Buchstaben. Die resultierenden Wahrscheinlichkeiten k¨ onnen in einer Tabelle aufgef¨ uhrt werden. Sie bilden eine diskrete Wahrscheinlichkeitsfunktion wie sie in Abbildung A.1 graphisch dargestellt ist. Eine g¨ ultige Wahrscheinlichkeitsfunktion muss den beiden folgenden Be-
410
A. Verschiedene Grundlagen 0.2 P(x) 0.1
0
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
Abbildung A.1. Beispiel einer diskreten Wahrscheinlichkeitsfunktion: Sie gibt an, mit
welcher Wahrscheinlichkeit ein zuf¨ allig aus einem deutschen Text gezogener Buchstabe ein “A”, ein “B” etc. ist.
dingungen gen¨ ugen:
P (x) = 1 ,
P (x) ≥ 0 f¨ ur x ∈ Ω
(229)
x∈Ω
A.4.2.2 Kontinuierliche Wahrscheinlichkeitsverteilungen Die Wahrscheinlichkeitsverteilung einer kontinuierlichen Zufallsvariable kann graphisch in der Form eines Histogramms oder als kumulative Verteilung dargestellt werden, wie dies Abbildung A.2 zeigt. Histogramme und kumulative Verteilungen sind jedoch h¨ aufig unpraktisch. Kontinuierliche Zufallsvariablen werden deshalb oft mit einer analytischen Wahrscheinlichkeitsdichtefunktion approximiert. Welche analytische Funktion in einem konkreten Fall daf¨ ur einsetzbar ist, h¨ angt von der Art des Experiments ab. Eine Wahrscheinlichkeitsdichtefunktion hat die folgenden Eigenschaften: Sie ist eine nichtnegative, integrierbare Funktion, f¨ ur die gilt:
∞
p(x) dx = 1
(230)
−∞
Der Wert der Dichtefunktion p(x) an einer bestimmten Stelle x wird als Likelihood bezeichnet. Der Begriff Likelihood ist vom Begriff Wahrscheinlichkeit zu unterscheiden. W¨ ahrend eine Wahrscheinlichkeit nie gr¨ osser als eins sein kann, darf die Likelihood Werte gr¨ osser als eins annehmen, wie dies im Beispiel von Abbildung A.3 zu sehen ist. Der Zusammenhang zwischen Wahrscheinlichkeit und Likelihood ist aus der folgenden Formel ersichtlich: b P (a ≤ x ≤ b) = p(x) dx (231) a
A.4
Wahrscheinlichkeitstheorie
411
80 60 40 20 0 1.5
1.6
1.7
1.8
1.9
[m]
2
1.6
1.7
1.8
1.9
[m]
2
1 P(G<x) 0.5
0 1.5
Abbildung A.2. Gemessene K¨ orpergr¨ ossen G von 500 zuf¨ allig gew¨ ahlten Personen, dargestellt als Histogramm (oben) und als empirische kumulative Verteilung (unten)
F¨ ur Wahrscheinlichkeitsdichten gelten dieselben Rechenregeln (Multiplikationsgesetz, Kettenregel etc.) wie f¨ ur Wahrscheinlichkeiten. Normalverteilung Eine M¨ oglichkeit, die Wahrscheinlichkeitsdichte einer kontinuierlichen Zufallsvariable zu beschreiben, bietet die Normal- oder Gauss-Verteilung. Sie ist wie folgt definiert: (x−μ)2 1 p(x) = N (x, μ, σ) = √ e− 2σ2 , 2πσ 2
−∞ <x<∞ .
(232)
Die Parameter μ und σ , also der Mittelwert und die Standardabweichung (die Gr¨ osse σ 2 wird als Varianz bezeichnet), sind aus den Werten der Zufallsvariable zu bestimmen. F¨ ur das Beispiel der gemessenen Gr¨ osse von zuf¨ allig ausgew¨ ahlten Personen ist die mit einer Normalverteilung beschriebene Wahrscheinlichkeitsdichte in Abbildung A.3 zu sehen. Offensichtlich ist die Normalverteilung im vorliegenden Fall eine recht ungenaue Beschreibung der Daten. Der Mittelwert und die Standardabweichung sind zwar bei dieser Beschreibung ber¨ ucksichtigt worden, die im Histogramm deutlich erkennbare Schiefe ist jedoch nicht. Eine allgemeine Methode zur Beschreibung von beliebigen Wahrscheinlichkeitsdichten ist die Gauss-Mischverteilung.
412
A. Verschiedene Grundlagen 6 p(G)
μ = 1.722
4
σ = 0.0845
2
0 1.5
1.6
1.7
1.8
1.9
[m]
2
1.6
1.7
1.8
1.9
[m]
2
1 P(G<x) 0.5
0 1.5
Abbildung A.3. Die der Abbildung A.2 zugrunde liegenden Messwerte mit einer Normalverteilung approximiert (oben) und die zugeh¨ orige kummulative Verteilung (unten)
Gauss-Mischverteilung Die Normalverteilung geh¨ ort zu den unimodalen Verteilungen. Eine Verteilung heisst unimodal, wenn sie ein einziges Maximum aufweist. Bei der Normalverteilung liegt dieses Maximum beim Mittelwert. Komplexere Verteilungen k¨ onnen durch eine gewichtete Summe von Normalverteilungen approximiert werden:
p(x) =
M
ck N (x, μk , σk ) .
(233)
k=1
Man spricht dann auch von einer Gauss-Mischverteilung mit M Mischkomponenten. ck ist der Gewichtungsfaktor der k -ten Mischkomponente und wird ussen die Beals k -ter Mischkoeffizient bezeichnet. Die Mischkoeffizienten m¨ dingungen M
ck = 1 ,
ck ≥ 0
(234)
k=1
erf¨ ullen, damit die Mischverteilung eine g¨ ultige Dichtefunktion ist. Eine Mischverteilung mit zwei Komponenten kann zur Beschreibung der Daten von Abbildung A.2 verwendet werden. Wie die Abbildung A.4 illustriert, beschreibt diese Wahrscheinlichkeitsdichtefunktion die gemessenen Daten wesentlich besser.
A.4
Wahrscheinlichkeitstheorie
413
6 p(G) 4
2
0 1.5
1.6
1.7
1.8
1.9
[m]
2
Abbildung A.4. Approximation der Verteilung der Messwerte aus Abbildung A.2 durch
eine Gauss-Mischverteilung (durchgezogene Linie) mit zwei Mischkomponenten (gestrichelt)
Multivariate Normalverteilung Die Normalverteilung ist eine skalare Dichtefunktion. Sie kann auf D-dimensionale Beobachtungen erweitert werden. Die einzelnen Komponenten x(i) eines Beobachtungsvektors x = [x(1) x(2) . . . x(D)]t k¨ onnen als Zufallsvariablen betrachtet werden. Eine Verteilung u ¨ ber mehrere Zufallsvariablen wird als multivariat bezeichnet. Die Dichtefunktion einer multivariaten Normalverteilung ist: t −1 1 1 p(x) = N (x, μ, Σ) = e− 2 (x−μ ) Σ (x−μ ) . (2π)D |Σ|
(235)
Dabei ist der Mittelwert μ nun ein D-dimensionaler Vektor, Σ ist die D×Dur die Determinante von Σ. Die KovarianzKovarianzmatrix und |Σ| steht f¨ angige Gr¨ ossen. matrix ist symmetrisch und enth¨ alt D(D+1)/2 unabh¨ Analog zum Fall von eindimensionalen Wahrscheinlichkeitsdichten m¨ ussen multivariate Wahrscheinlichkeitsdichten die folgenden Bedingungen erf¨ ullen: ∞ p(x) dx = 1 und p(x) ≥ 0 . (236) −∞
Wenn die D Komponenten des Beobachtungsvektors paarweise unkorreliert sind, so enth¨ alt die Kovarianzmatrix nur in der Diagonalen Werte ungleich null, und zwar die Varianzen der einzelnen Komponenten.1 Es gilt: ⎤ ⎡ 2 0 σ1 ⎥ ⎢ .. Σ=⎣ (237) ⎦ . . 2 0 σD 1
Unkorreliertheit bedeutet nicht zwingend, dass die Zufallsvariablen stochastisch unabh¨ angig sind, denn es k¨ onnen nichtlineare Abh¨ angigkeiten vorliegen, welche die Kovarianz nicht erfassen kann. Dagegen gilt f¨ ur zwei stochastisch unabh¨ angige Zufallsvariablen Y1 und Y2 immer Cov(Y1 , Y2 ) = 0.
414
A. Verschiedene Grundlagen
Eine diagonale Kovarianzmatrix hat nur D Parameter, w¨ ahrend f¨ ur eine volatzt werden m¨ ussen. Wenn le Kovarianzmatrix D(D+1)/2 Parameter gesch¨ die Kovarianzmatrix diagonal ist, kann die multivariate Dichtefunktion als Produkt von skalaren Dichtefunktionen berechnet werden:
p(x) =
D
p(x(i))
(238)
i=1
Multivariate Gauss-Mischverteilung Die multivariate Normalverteilung geh¨ ort auch zu den unimodalen Verteilungen und weist somit ein einziges Maximum auf. Komplexere multivariate Verteilungen k¨ onnen durch eine gewichtete Summe von multivariaten Normalverteilungen approximiert werden:
p(x) =
M
ck N (x, μk , Σk ) .
(239)
k=1
Wie im eindimensionalen Fall spricht man auch hier von einer GaussMischverteilung mit M Mischkomponenten. ck ist der Gewichtungsfaktor der k -ten Mischkomponente und wird auch k -ter Mischkoeffizient genannt. Damit die Mischverteilung eine g¨ ultige Dichtefunktion ist, m¨ ussen die Mischkoeffizienten die folgenden Bedingungen erf¨ ullen: M k=1
ck = 1 und ck ≥ 0
(240)
A.5
Neuronale Netze: Mehrschicht-Perzeptron
415
A.5 Neuronale Netze: Mehrschicht-Perzeptron Unter dem Begriff neuronales Netz wird ein Verbund einfacher Verarbeitungseinheiten, sogenannter Neuronen verstanden, deren Ein- und Ausg¨ ange netzartig miteinander verbunden sind. Das Wissensgebiet der neuronalen Netze ist sehr gross. In diesem Abschnitt sind nur die Grundlagen f¨ ur einen speziellen Typ von neuronalen Netzen zusammengefasst, n¨ amlich das MehrschichtPerzeptron. Diese Art von neuronalen Netzen wird im Kapitel 9 f¨ ur die Prosodiesteuerung eingesetzt. F¨ ur weitergehend Interessierte sei auf die Literatur verwiesen, z.B. [3].
A.5.1 Das Neuronenmodell Es gibt in der Literatur eine Vielzahl mathematischer Neuronenmodelle. Wir verwenden hier ein recht einfaches, wie es in Abbildung A.5 dargestellt ist, angen und einem Ausgang. mit d Eing¨ x1 x2 x3
x0 = 1 w1
w0
w2 w3
y
wd
xd Abbildung A.5. Neuronenmodell mit d Eing¨ angen und einem Ausgang
Der Ausgang y in Funktion der Eingangsgr¨ ossen x1 , x2 , . . . , xd ist im hier verwendeten Neuronenmodell gegeben als d y = f (z) = f wi xi , (241) i=0
osse x0 hat einen fixen Wert wobei w0 , w1 , . . . , wd die Gewichte sind. Die Gr¨ (gew¨ ohnlich 1) und das zugeh¨ orige Gewicht w0 heisst Bias-Gewicht. Als Akz −z tivierungsfunktion f (z) wird hier tanh(z) = eez −e +e−z eingesetzt, also der Tangens hyperbolicus, der in Abbildung A.6 dargestellt ist. Der Wertebereich ankt, des Ausgangs des Neurons ist somit auf das Intervall [−1, +1] beschr¨ wogegen die Eing¨ ange beliebige reelle Werte annehmen d¨ urfen.
A.5
416
A. Verschiedene Grundlagen
tanh(z) 1
−3
−2
−1
0
1
2
3
z
−1
Abbildung A.6. Tangens hyperbolicus
A.5.2 Das Mehrschicht-Perzeptron Ein neuronales Netz ist aus mehreren Neuronen zusammengesetzt. Die Anordnung der Verbindungen zwischen den Neuronen bestimmt den Typ des neuronalen Netzes. Sind die Neuronen parallel angeordnet, so dass alle J Neuronen denselben Eingangsvektor haben und die Ausg¨ ange der Neuronen als y1 , y2 , . . . , yJ betrachtet werden, dann spricht man von einem Perzeptron, oder genauer von einem einschichtigen Perzeptron. Ein Mehrschicht-Perzeptron (engl. multi-layer perceptron) entsteht, wenn mehrere Schichten von Neuronen so miteinander verbunden werden, dass die ange der k+1-ten Ausg¨ ange yk,1 , yk,2 , . . . , yk,Jk der k -ten Schicht die Eing¨ Schicht bilden, wie dies in der Abbildung A.7 zu sehen ist. Da in diesen Netzen nur Verbindungen zur jeweils n¨ achst h¨ oheren Schicht (von der k -ten zur k+1-ten) vorkommen, geh¨oren sie zu den Feed-forward-Netzen. Ein Mehrschicht-Perzeptron wird als vollverbunden bezeichnet, wenn alle J0 =d Eing¨ange des Netzes mit allen J1 Neuronen der 1. Schicht verbunden ange der k -ten Schicht mit allen Neuronen der k+1-ten sind und alle Jk Ausg¨ Schicht. Die Gewichte werden mit wkij bezeichnet, wobei sich das Gewicht wkij auf die Verbindung zwischen dem i-ten Neuron der k−1-ten Schicht mit dem j -ten Neuron der k -ten Schicht bezieht. Die Operation, die ein Mehrschicht-Perzeptron mit K Schichten und d Eing¨ angen f¨ ur die Eingangswerte x1 , x2 , . . . , xd (hier bezeichnet als Ausgangsuhrt, ist gegeben werte der nullten Schicht, also y0,1 , y0,2 , . . . , y0,d ) durchf¨ durch die folgende Rekursion: ⎞ ⎛ Jk−1 yk,j = tanh ⎝ wkij yk−1,i ⎠ , k = 1, . . . , K, j = 1, . . . , Jk (242) i=0
Dabei bezeichnet Jk die Anzahl der Neuronen der k -ten Schicht und die yk,0 sind fix gleich 1. Die Ausgabewerte des Mehrschicht-Perzeptrons sind die Ausgabewerte der Neuronen der K -ten Schicht, also yK,1 , yK,2 , . . . , yK,JK .
A.5
x1
Neuronale Netze: Mehrschicht-Perzeptron w101
w111 w112
w201 w211
2,1
wK11 wK01
1,1
x2
417
2,2
K,1
y1
2,3
K,2
y2
K,JK
yJ
1,2
x3 1,3
x4
2,4
1,J1
xd
w1dJ
1
Schicht 1
w2J J 1 2
Schicht 2
K
wKJ J K-1 K 2,J2
Schicht K
Abbildung A.7. Mehrschicht-Perzeptrons mit K Schichten
A.5.3 Anwendungen von Mehrschicht-Perzeptronen Neuronale Netze vom Typ Mehrschicht-Perzeptron werden haupts¨ achlich f¨ ur die Funktionsapproximation und f¨ ur die Klassifikation eingesetzt. Im Folgenden werden diese beiden Aufgaben genauer erl¨ autert. Funktionsapproximation Das Mehrschicht-Perzeptron ist ein universeller Funktionsapproximator. Es kann eine gegebene Menge mehrdimensionaler Eingangs-/Ausgangswertepaare (x, g) einer Funktion g = F (x) beliebig genau approximieren. Die Dimensionen von x = [x1 x2 . . . xd ] und g = [g1 g2 . . . gq ] sind typischerweise verschieden. Die Funktion F ist in praktischen Anwendungen unbekannt. Das Mehrschicht-Perzeptron soll in einem geeigneten Training diese Funktion aus den gegebenen Daten lernen. Idealerweise ermittelt es dann auch f¨ ur Eingangswerte, die nicht in der gegebenen Menge enthalten sind, vern¨ unftige Ausgangswerte. Die Genauigkeit der Approximation h¨ angt von der Funktion F und von der Konfiguration des neuronalen Netzes (Anzahl der Schichten und Neuronen pro Schicht) ab sowie davon, wie gut die Trainingsdaten die Funktion repr¨ asentieren. Die f¨ ur einen konkreten Fall geeignete Netzkonfiguration muss experimentell ermittelt werden (siehe auch Abschnitt A.5.5.2). Wenn f¨ ur alle Neuronen die Aktivierungsfunktion tanh verwendet wird, dann k¨ onnen nur Funktionen mit |gi | < 1, i = 1, . . . , q approximiert werden. Zur
418
A. Verschiedene Grundlagen
Approximation von allgemeinen Funktionen muss entweder die Aktivierungsfunktion der Ausgangsschicht eliminiert (und das Training entsprechend angepasst) werden, oder die Werte g sind mit einer geeigneten Funktion G so zu ˘ = G(g) betragsm¨assig kleiner transformieren, dass alle Komponenten von g als 1 sind. Klassifikation Ein Mehrschicht-Perzeptron kann als Klassifikator eingesetzt werden. Sollen beispielsweise d-dimensionale Vektoren x einer von M Klassen zugewiesen angen und M werden, dann kann daf¨ ur ein Mehrschicht-Perzeptron mit d Eing¨ Ausg¨ angen verwendet werden. Beim Training wird f¨ ur jeden Eingangsvektor (n) (n) (n) x(n) der Klasse m der Zielwertvektor g (n) = [g1 , g2 , . . . . . . , gM ] so gesetzt, (n) dass gm =1 ist und die u ¨ brigen Elemente des Zielwertvektors −1 sind. Die Ausg¨ ange des trainierten Mehrschicht-Perzeptrons approximieren dann die A-posteriori-Wahrscheinlichkeit P (m|x) ≈ (ym +1)/2, also die Wahrscheinort (vergl. [24]). lichkeit, dass ein gegebenes x zur Klasse m geh¨
A.5.4 Training eines Mehrschicht-Perzeptrons Damit ein Mehrschicht-Perzeptron obige Aufgaben erf¨ ullen kann, m¨ ussen beim Training die Gewichte des Netzes so bestimmt werden, dass die Ausgaben des neuronalen Netzes gem¨ ass Formel (242) f¨ ur die Trainingsdaten m¨ og(n) lichst gut mit den gew¨ unschten Zielwerten gi u ¨ bereinstimmen. Das Netz soll aber die vorgegebenen Eingangs-/Zielwertepaare nicht einfach “auswendig lernen”, da es sp¨ ater haupts¨ achlich auf Eingangswerte angewendet wird, die nicht in den Trainingsdaten vorkommen (vergl. Abschnitt A.5.5.2). Es gibt jedoch kein analytisches Verfahren zum Bestimmen der optimalen Netzgewichte f¨ ur einen gegebenen Satz von Trainingsdaten. Allerdings existiert ein iteratives Verfahren, mit dem die Gewichte eines gegebenen Mehrschicht-Perzeptrons schrittweise so ver¨ andert werden, dass der Fehler f¨ ur die Trainingsdaten abnimmt. Das Verfahren beruht auf der Idee, die Gewichte in Richtung des negativen Gradienten einer Fehlerfunktion zu korrigieren. Daf¨ ur ist ein Fehlermass notwendig. Gew¨ ohnlich wird die quadratische euklidische Distanz zwischen den effektiven Netzausgangswerten y K und den gew¨ unschten Ausgangswerten, also den Zielwerten des n-ten Trainingsbeispiels g (n) verwendet: E=
JK
(n)
(yK,j − gj )2
(243)
j=1
Nach dem Festlegen der Netzkonfiguration (Anzahl Schichten und Anzahl Neuronen pro Schicht) werden die Gewichte des Mehrschicht-Perzeptrons mit kleinen Zufallswerten initialisiert und mit dem Backpropagation-Algorithmus
A.5
Neuronale Netze: Mehrschicht-Perzeptron
419
trainiert. F¨ ur einen Satz von N Trainingsbeispielen werden dabei die folgenden vier Schritte wiederholt: Schritt 1: Vorw¨ artsberechnung F¨ ur das n-te Trainingsbeispiel, das Eingabe-/Zielwertepaar (x(n) , g (n) ), wird nach Formel (242) der zugeh¨ orige Ausgabevektor y n des neuronalen Netzes berechnet. Schritt 2: Backpropagation Nun muss der Gradient, also die partiellen Ableitungen des Fehlers nach den einzelnen Gewichten ermittelt werden. F¨ ur einen Eingabevektor x(n) = [y0,1 y0,2 . . . y0,d ] betragen die partiellen Ableitungen des Fehlers nach den wKij , also den Gewichten der K -ten Schicht (Ausgabeschicht)
∂E ∂E ∂f (z) ∂z = ∂wKij ∂f (z) ∂z ∂wKij (n)
2 = 2(yKj − gj ) (1 − yKj ) yK−1,i = δKj yK−1,i ,
(244)
i = 0, . . . , JK−1 , j = 1, . . . , Jk Dabei wird ber¨ ucksichtigt, dass das Gewicht wKij nur den j -ten Ausgang beeinflusst und dass die Ableitung der hier verwendeten Aktivierungsfunktion ∂f (z) = ∂ tanh(z) = 1−tanh2 (z) ist. Die partiellen Ableitungen des Fehlers ∂z ∂z nach den Gewichten wkij der tieferen Schichten (k < K ) sind: ⎛ ⎞ Jk+1 ∂E 2 ⎝ = (1 − ykj ) δk+1,l wk+1,j,l ⎠ yk−1,i = δkj yk−1,i , (245) ∂wkij l=1
k = K−1, . . . , 1,
i = 0, . . . , Jk−1 ,
j = 1, . . . , Jk
Schritt 3: Korrektur der Gewichte F¨ ur die Netzgewichte wkij kann nun eine Korrektur Δwkij in negativer Richtung des Gradienten definiert werden:
Δwkij = −μ .
∂E = −μ δkj yk−1,i , ∂wkij
k = 1, . . . , K,
i = 0, . . . , Jk−1 ,
.
(246)
j = 1, . . . , Jk
Dabei ist μ die sogenannte Lernrate, mit der die Konvergenzgeschwindigkeit eingestellt werden kann. Sie wird m¨ oglichst gross gew¨ ahlt, jedoch nicht zu gross, da sonst das Training nicht mehr konvergiert. ussen f¨ ur Falls die Trainingsdaten N Beispiele (x(n) , g (n) ) umfassen, dann m¨ jedes dieser Beispiele die entsprechenden Korrekturen der Gewichte ermit-
420
A. Verschiedene Grundlagen
telt werden. Je nach Trainingsablauf unterscheidet man zwischen den beiden folgenden Verfahren: Online-Training: F¨ ur ein Trainingsbeispiel werden die Gewichtskorrekturen nach Formel (246) ermittelt und sogleich die Gewichtswerte aufdatiert. F¨ ur jedes n¨ achste Trainingsbeispiel wird mit den jeweils neuen Gewichtswerten gearbeitet. Batch-Verfahren: Zuerst werden f¨ ur alle Trainingsdaten (x(n) , g (n) ) (n) die entsprechenden Korrekturen der Netzgewichte Δwkij ermittelt und (n) aufsummiert: Δwkij = n Δwkij . Erst dann werden die Gewichte mit diesen aufsummierten Korrekturen aufdatiert. ur alle Das Batch-Verfahren ist viel effizienter, insbesondere weil die δkj f¨ Trainingsbeispiele gleich sind, also pro Trainingsiteration nur einmal berechnet werden m¨ ussen. Dieses Verfahren hat jedoch den Nachteil, dass es je nach Anfangsgewichten in einem lokalen Optimum stecken bleiben kann, das wesentlich schlechter ist als das globale. Um dieses Problem zu entsch¨ arfen, wird gew¨ ohnlich die Formel (246) mit einem Momentumterm erweitert zu:
Δwkij (t) = −μyk−1,i δkj + αΔwkij (t−1) , k = 1, . . . , K,
i = 0, . . . , Jk−1 ,
(247)
j = 1, . . . , Jk
Als Δwkij (t−1) wird die Ver¨ anderung der Gewichte in der vorhergehenden Trainingsiteration bezeichnet. Der Parameter α wird zwischen 0 und 1 gew¨ ahlt. Grunds¨ atzlich kann auch ein Kompromiss zwischen Online-Training und Batch-Verfahren angewendet werden. Dazu teilt man das Trainingsset in eine Anzahl disjunkter Untermengen auf. Dann wird zyklisch auf jede dieser Untermengen jeweils ein Schritt des Batch-Verfahrens ausgef¨ uhrt. Weil f¨ ur jede Untermenge die lokalen Optima verschieden sind, wird kein Momentumterm gebraucht. Dieser Kompromiss ist zwar etwas aufw¨ andiger als das BatchVerfahren, aber er vermeidet das Problem mit den lokalen Optima.
A.5.5 Hinweise zum Einsatz von neuronalen Netzen In diesem Abschnitt sind ein paar wichtige Hinweise zusammengestellt, die beim praktischen Einsatz von neuronalen Netzen wichtig sind, insbesondere auch f¨ ur die Prosodiesteuerung. A.5.5.1 Skalierung der Ein- und Ausgangsgr¨ ossen F¨ ur ein Mehrschicht-Perzeptron gilt grunds¨ atzlich, dass die Eingangsgr¨ ossen beliebige, reelle Werte annehmen d¨ urfen, w¨ ahrend der Wertebereich der Ausg¨ ange durch die Aktivierungsfunktion gegeben ist, der im Fall des Tangens
A.5
Neuronale Netze: Mehrschicht-Perzeptron
421
hyperbolicus [−1 +1] betr¨ agt. Wie in Abschnitt A.5.3 erl¨ autert, muss deshalb der Wertebereich der Netzausg¨ ange auf den Zielwertebereich abgebildet werden. In gewissen F¨ allen kann es auch sinnvoll sein, f¨ ur die Ausgabeneuronen eine andere Aktivierungsfunktion zu verwenden, was jedoch beim Training in Formel (244) zu ber¨ ucksichtigen ist. Abgesehen von den Anforderungen der Zielfunktion kann eine Skalierung auch sinnvoll sein, um beim Training S¨ attigungseffekte und damit unn¨ otig langsame Konvergenz zu vermeiden. Ein Neuron mit tanh als Aktivierungsfunktion ist dann in S¨ attigung, wenn der Ausgang sehr nahe bei -1 oder +1 ist, die Sensitivit¨ at des Neurons also nahezu null wird und damit die Ver¨ anderung der Gewichte nach Formel (246) bzw. (247) fast verschwindet. Das Auftreten der S¨ attigung von Neuronen kann im Wesentlichen die folgenden Gr¨ unde haben (abgesehen von unpassend eingestellten Trainingsparameonnen, dass ein Netz nicht konvergiert): tern μ und α, die Schuld sein k¨ S¨ attigung kann bei beliebigen Neuronen auftreten, wenn die Initialgewichte zu gross gew¨ ahlt werden. Sie sind deshalb mit Zufallswerten so zu initialisieren, dass auch im ung¨ unstigsten Fall bloss eine schwache S¨ attigung auftreten kann. Ein Neuron der ersten Schicht kann s¨ attigen, wenn ein Produkt xi w1ij (Eingangswert mal Gewicht) gross ist. Man muss deshalb beim Training die Initialgewichte dem Wertebereich der Eing¨ ange entsprechend w¨ ahlen. Eine Alternative ist, die Eing¨ ange so zu skalieren, dass sie den Mittelwert 0 und die Varianz 1 haben. Dann k¨ onnen die Gewichte der 1. Schicht gleich gew¨ ahlt werden wie diejenigen der andern Schichten. Neuronen der Ausgangsschicht mit tanh-Aktivierungsfunktion k¨ onnen w¨ ahrend des Trainings s¨ attigen, wenn viele oder sogar alle Zielwerte der Trainingsdaten gleich den Wertebereichsgrenzen der tanh-Funktion sind. Dies ist beispielsweise bei der Klassifikation im Abschnitt A.5.3 der Fall. (n) Das Problem l¨ asst sich vermeiden, indem die Zielwerte gj nicht +1 bzw. −1 gesetzt werden, sondern +r bzw. −r, wobei r < 1 sein soll, z.B. 0.9. Aus dem m-ten Ausgangswert ym wird dann die A-posteriori-Wahrscheinlichkeit gesch¨ atzt mit P (m|x) ≈ (1 + ym /r)/2. A.5.5.2 F¨ ur das Training notwendige Datens¨ atze F¨ ur das Training von neuronalen Netzen werden in der Regel drei disjunkte Datens¨ atze gebraucht: 1. Das Trainingsset wird f¨ ur das eigentliche Training des neuronalen Netzes gebraucht, wie es im Abschnitt A.5.4 beschrieben ist. Die Mindestgr¨ osse dieses Sets h¨ angt von der Gr¨ osse des neuronalen Netzes ab und diese wiederum von der Komplexit¨ at der Aufgabe (vergl. Abschnitt A.5.3). Gem¨ ass einer g¨ angigen Regel sollte die Zahl der Trainingsbeispiele mindestens
422
A. Verschiedene Grundlagen
zehnmal so gross sein wie die Anzahl der Netzgewichte. Grunds¨ atzlich gilt: je mehr Trainingsdaten desto besser. Wichtig ist jedoch auch, dass die Trainingsdaten repr¨ asentativ sind, also der dem Problem inh¨ arenten Statistik entsprechen. 2. Das Evaluationsset darf i.a. kleiner sein und dient dazu, das Training am optimalen Punkt zu stoppen. Dieser Punkt ist dann erreicht, wenn der mittlere Fehler u uhren des ¨ ber alle Beispiele des Evaluationssets beim Fortf¨ Trainings nicht mehr ab-, sondern zunimmt. Ist zudem der Fehler u ¨ ber das Evaluationsset wesentlich gr¨ osser als u ¨ ber das Trainingsset, dann ist oft die Konfiguration des Netzes (Anzahl der Schichten und Neuronen in jeder Schicht) nicht optimal gew¨ ahlt worden. 3. Mit dem Testset wird schliesslich gepr¨ uft, wie gut ein fertig trainiertes neuronales Netz arbeitet. A.5.5.3 Optimieren der Konfiguration eines neuronalen Netzes Ein wichtiger Aspekt beim Einsatz von neuronalen Netzen ist, die passende Konfiguration des Netzes festzulegen. Im Fall eines vollverbundenen Mehrschicht-Perzeptrons mit tanh-Aktivierungsfunktion betrifft dies lediglich die Zahl der Schichten und die Zahl der Neuronen in jeder Schicht. Grunds¨ atzlich ist die optimale Konfiguration ausschliesslich von der Aufgabe des Netzes abh¨ angig. Man ist jedoch meistens mit dem Problem konfrontiert, dass der Umfang der Trainingsdaten eher bescheiden ist. Die mit den Trainingsdaten implizit beschriebene Aufgabe ist somit unvollst¨ andig spezifiziert. Ein grosses Netz hat dann die Tendenz, eher die Trainingsbeispiele zu lernen als die hinter den Daten stehenden Gesetzm¨ assigkeiten. Dies zeigt sich daran, dass der mittlere Fehler u ¨ ber das Trainingsset viel kleiner ist als u ¨ ber das Evaluationsset. Bei gegebenen Trainingsdaten ist also die Konfiguration des Netzes experimentell so festzulegen, dass der mittlere Fehler u ¨ ber das Trainingsset nicht viel kleiner ist als u ¨ ber das Evaluationsset. A.5.5.4 Festlegen der Lernparameter Ob und wie schnell ein neuronales Netz beim Training lernt, h¨ angt u.a. von osder Lernrate μ und vom Momentumparameter α ab. Man kann diese Gr¨ sen experimentell optimieren. Bei gewissen Aufgaben kann dies jedoch recht aufw¨ andig sein. Es gibt jedoch auch adaptive Verfahren (siehe [3]), mit denen die Konvergenz stark beschleunigt werden kann.
Anhang B Fourier-Analyse-Synthese von Sprachsignalen
B
B
B B.1 B.2 B.2.1 B.2.2 B.3 B.3.1 B.3.2 B.4 B.4.1 B.4.2 B.4.3 B.5 B.6 B.6.1 B.6.2 B.6.3
Fourier-Analyse-Synthese von Sprachsignalen Das Prinzip der Fourier-Analyse-Synthese................. Das wirkliche Spektrum eines Signals ...................... Die Wahl der Fensterfunktion ............................... Analyse eines stark instation¨ aren Signals .................. Sch¨ atzen des wirklichen Spektrums von Sprachsignalen Ermittlung schwacher spektraler Komponenten .......... Elimination unechter spektraler Maxima .................. Bestimmen der Grundfrequenz .............................. Berechnung der Autokorrelation............................. Detektion des AKF-Maximums .............................. Erh¨ ohung der Genauigkeit .................................... Rekonstruktion des Sprachsignals ........................... Prosodische Ver¨ anderung im Kurzzeitspektrum .......... Dauerver¨ anderung .............................................. Grundfrequenzver¨ anderung ................................... Frequenzskalierung und Signalbandbreite..................
426 428 430 431 436 438 440 442 442 444 445 446 448 448 451 457
B Fourier-Analyse-Synthese von Sprachsignalen In diesem Anhang wird ein Verfahren beschrieben, mit dem Sprachsignale und insbesondere auch Sprachsegmente f¨ ur die Verkettungssynthese prosodisch so ver¨ andert werden k¨ onnen, dass die resultierenden Sprachsignale geh¨ orm¨ assig m¨ oglichst einwandfrei sind. Die Anforderungen an dieses auf der Fouriertransformation basierende Verfahren sind: F¨ ur das Sprachsignal muss mit gen¨ ugender Genauigkeit die spektrale Zusammensetzung in Funktion der Zeit ermittelt werden k¨ onnen.1 Dabei erfordern die Instationarit¨ at des Signals und die schwachen Signalkomponenten eine spezielle Behandlung. Im Frequenzbereich m¨ ussen Grundfrequenz und Dauer des Sprachsignals ver¨ andert werden k¨ onnen, wobei die Skalierungsfaktoren ihrerseits in Funktion der Zeit variieren. Bei der Grundfrequenz¨ anderung muss die lautbestimmende Charakteristik, also die spektrale Enveloppe, erhalten bleiben. Bei der Verkettung sollen die Stossstellen der Segmente so behandelt werden, dass sie vom menschlichen Geh¨ or nicht wahrgenommen werden. Aus diesen grunds¨ atzlichen Anforderungen ergeben sich die folgenden konkreten Problemstellungen: 1. Wie sieht das wirkliche, zeitabh¨ angige Spektrum eines Sprachsignals aus und wie l¨ asst es sich mit gen¨ ugender Genauigkeit aus dem Sprachsignal sch¨ atzen? (Diese Sch¨ atzung wird im Folgenden einfach als wirkliches Spektrogramm bezeichnet.) 2. Wie l¨ asst sich die Grundfrequenz bzw. die Periodizit¨ at eines Sprachsignals zuverl¨ assig bestimmen? 3. Wie kann aus dem wirklichen Spektrogramm mittels OLA-Technik (engl. overlap add) das Sprachsignal m¨ oglichst perfekt rekonstruiert werden? 4. Wie wird eine zeitabh¨ angige Frequenzskalierung im wirklichen Spektrogramm realisiert? 5. Wie k¨ onnen bei der Frequenzskalierung die Formanten konstant gehalten werden (nur Grundfrequenzskalierung)? 1
Wenn hier von spektraler Zusammensetzung die Rede ist, dann soll damit verdeutlicht werden, dass das wirkliche Spektrum des Signals gemeint ist, nicht die Fouriertransformierte, die ja der Faltung des wirklichen Spektrums mit dem Spektrum des Analysefensters entspricht.
426
B. Fourier-Analyse-Synthese von Sprachsignalen
6. Wie ist die st¨ orende, mit der Frequenzskalierung einhergehende Bandbreitenver¨ anderung des Sprachsignals zu vermeiden, bzw. zu kompensieren? 7. Wie muss bei der Rekonstruktion des Sprachsignals die Phase gehandhabt werden, um st¨ orende Nebeneffekte der Dauerver¨ anderung zu vermeiden? Die Probleme 1 bis 3, also das Ermitteln des wirklichen Spektrums des Sprachsignals und die Rekonstruktion des Signals werden in den Abschnitten B.2 bis B.5 behandelt. Die Ver¨ anderung der prosodischen Parameter Grundfrequenz und Dauer und die damit einhergehenden Probleme sind im Abschnitt B.6 beschrieben. Zuerst wird im n¨ achsten Abschnitt noch das Prinzip der FourierAnalyse-Synthese erl¨ autert.
B.1
B.1 Das Prinzip der Fourier-Analyse-Synthese Das Prinzip der Fourier-Analyse-Synthese beruht auf der Tatsache, dass jeder zeitlich begrenzte Signalausschnitt als Summe von Sinuskomponenten dargestellt werden kann (sogenannte Fourierzerlegung). Frequenz, Amplitude und Phase dieser Sinuskomponenten k¨ onnen mit der Fouriertransformation ermittelt werden. Die Frequenz und die Dauer einer einzelnen Sinuskomponente mit der Freandern. Soll beispielsweise die quenz f und der Dauer D sind einfach zu ver¨ andert Frequenz um den Faktor ZF und die Dauer um den Faktor ZT ver¨ ˘ werden, dann ist die Frequenz der ver¨ anderten Komponente f = f ·ZF und ˘ = D·ZT . die Dauer betr¨ agt D In gleicher Weise kann ein aus mehreren Sinuskomponenten zusammengesetztes Signal in Frequenz und Dauer ver¨ andert werden, indem jede Sinuskomponente einzeln ver¨ andert wird und die ver¨ anderten Komponenten aufsummiert werden. Dieses Prinzip ist in Abbildung B.1 veranschaulicht. Wie oben erw¨ ahnt, kann die Zerlegung eines Signals in seine Sinuskomponenten grunds¨ atzlich mit der Fouriertransformation erreicht werden. Wie im Abschnitt 4.2 beschrieben wurde, ist die Fouriertransformierte abh¨ angig von der L¨ ange und der Form der verwendeten Fensterfunktion. Die Fouriertransformation liefert also nicht die wirkliche spektrale Zusammensetzung (oder das wirkliche Spektrum) des Signals, sondern das wirkliche Spektrum des Signals gefaltet mit dem Spektrum der Fensterfunktion. Dass die Unterscheidung zwischen dem wirklichen Spektrum und der Fouriertransformierten, die gew¨ ohnlich auch als Spektrum bezeichnet wird, im Zusammenhang mit der Frequenz- und/oder Dauerver¨ anderung sehr wichtig ist, kann einfach am folgenden Beispiel gezeigt werden: Angenommen, die Zusammensetzung des in Abbildung B.1 gegebenen Signals sei nicht bekannt
B.1
Das Prinzip der Fourier-Analyse-Synthese
427
2 0 −2
0
0.02
[s]
0.04
Dauer * 1.4 1 0 −1 1 0 −1 1 0 −1
0
0
0
0.01
0.01
0.01
0.02
0.02
0.02
0.03
0.03
0.03
0.04
0.04
0.04
1 0 −1 1 0 −1 1 0 −1
0
0.01
0.02
0.03
0.04
0.05
0
0.01
0.02
0.03
0.04
0.05
0
0.01
0.02
0.03
0.04
0.05
2 0 −2
0
0.02
0.04
[s]
Abbildung B.1. Illustration der Frequenz- und Dauerver¨ anderung mittels Fourier-
Analyse-Synthese: Gegeben ist das Signal links oben, das aus drei Sinuskomponenten mit den Frequenzen 110, 220 bzw. 330 Hz zusammengesetzt ist. Es wird zuerst in seine Komponenten zerlegt (links). Frequenz und Dauer jeder Komponente werden um die Faktoren ZF = 1.7 bzw. ZT = 1.4 ver¨ andert. Die Superposition der ver¨ anderten Komponenten ergibt das um die Faktoren ZF und ZT ver¨ anderte Signal rechts unten.
und m¨ usste zuerst mit Hilfe der Fouriertransformation ermittelt werden. Multipliziert man das Signal mit einem Hamming-Fenster und wendet darauf die Fouriertransformation an, dann ergibt sich das in Abbildung B.2a gezeigte Spektrum. Wird aus diesem Spektrum ein um den Faktor 2.25 verl¨ angertes Signal generiert, indem alle Komponenten um diesen Faktor verl¨ angert und aufsummiert werden, dann ergibt sich ein Signal, wie es rechts in Abbildung B.2a dargestellt ist. Dieses Signal hat zwar die gew¨ unschte L¨ ange, aber es ist nicht nur die L¨ ange ver¨ andert worden. Das verl¨ angerte Signal sieht so aus, als w¨ are das mit einem Hamming-Fenster multiplizierte Originalsignal so oft repetiert worden, dass die gew¨ unschte L¨ ange entsteht. Aufgrund der Erl¨ auterungen u ¨ ber die diskrete Fouriertransformation in Abschnitt 4.2.1 (insbes. Seite 63) ist das Resultat jedoch klar: Das aus der Fouriertransformation resultierende Spektrum beruht auf der Annahme, dass das Signal mit der L¨ ange des Analysefensters periodisch fortgesetzt ist.
428
B. Fourier-Analyse-Synthese von Sprachsignalen
2 0 −2
0
0.02
40 [dB] 20
[s]
0.04
a)
2
0
0
−20
−2
−40
0
500
40 [dB] 20
[Hz]
b)
−20
−2 500
[Hz]
0.04
0.06
[s]
0.08
0
0.02
0.04
0.06
[s]
0.08
2 0
0
0.02
1000
0
−40
0
1000
Abbildung B.2. Dauerver¨ anderung mittels Fourier-Analyse-Synthese: Vom Signal links
oben wird mit der Fouriertransformation (mit Hamming-Fenster) das Spektrum a) ermittelt. Werden alle Komponenten des Spektrums um den Faktor 2.25 verl¨ angert und aufsummiert, dann ergibt sich das Signal rechts davon. Die hochaufl¨ osende Fouriertransformation ergibt das Spektrum b) und daneben das um den Faktor 2.25 verl¨ angerte Signal.
Wie Abbildung B.2b zeigt, l¨ asst sich selbstverst¨ andlich dieses Problem nicht mit der hochaufl¨ osenden Fouriertransformation beseitigen, bei welcher der Analyseabschnitt mit Nullen auf zehnfache L¨ ange erg¨ anzt worden ist. Der Unterschied ist lediglich, dass bei der hochaufl¨ osenden Fouriertransformation angenommen wird, das Signal sei inklusive die angeh¨ angten Nullen periodisch. Dementsprechend zeigt das verl¨ angerte Signal auch diese Nullen. Es ist somit klar, dass f¨ ur die Frequenz- und oder Dauerver¨ anderung nicht einfach die Frequenzkomponenten der Fouriertransformierten gebraucht werden k¨ onnen, sondern dass zuerst das wirkliche Spektrum des zu ver¨ andernden Signals gesch¨ atzt werden muss.
B.2
B.2 Das wirkliche Spektrum eines Signals Ein periodisches Signal hat bekanntlich ein Linienspektrum, also ein Spektrum, das nur an diskreten Stellen ungleich null ist. F¨ ur ein solches Signal zeigt die Fouriertransformierte die Faltung dieses Linienspektrums mit dem Spektrum des Analysefensters. Wie in Abschnitt 4.2.4 gezeigt wurde, k¨ onnen die Komponenten eines diskreten Spektrums und damit das wirkliche Spek-
B.2
Das wirkliche Spektrum eines Signals
429
trum aus der hochaufl¨ osenden Fouriertransformierten gesch¨ atzt werden: Es sind die lokalen Maxima, die im Beispiel von Abbildung B.3 als Frequenzlinien eingetragen sind. Das wirkliche Spektrum wird wie folgt bezeichnet:
Y (i) = (fi , ai , pi ) ,
i = 1, . . . , I .
Im Gegensatz zur Fouriertransformierten X(k), bei der die Frequenz der Komponenten im Index k steckt, wird also beim wirklichen Spektrum jede Komponente i mit einem Tripel beschrieben, das die Frequenz, die Amplitude und die Phase dieser Komponente umfasst. Die Fouriertransformierte in Abbildung B.3 weist jedoch nicht nur f¨ ur die drei im Signal vorhandenen Komponenten lokale Maxima auf, sondern noch viele weitere. Sie resultieren aus dem Lecken des Analysefensters (siehe Abschnitt 4.2.3). Weil hier bekannt ist, dass das Signal aus drei Komponenten besteht, ist klar, welche der lokalen Maxima diesen Komponenten entsprechen. Im Allgemeinen weiss man dies jedoch nicht, und es stellen sich deshalb zwei Fragen: Unter welchen Bedingungen sind die Komponenten eines Signals in der hochaufl¨ osenden Fouriertransformierten als lokale Maxima zu sehen? Wie lassen sich die lokalen Maxima, die den Signalkomponenten entsprechen, von denjenigen unterscheiden, die durch das Lecken entstanden sind? Die erste Frage wird im n¨ achsten Abschnitt beantwortet, auf die zweite gibt Abschnitt B.3.2 eine Antwort. 2 0 −2
0
0.02
[s]
0.04
40 [dB] 20
2
0
0
−20
−2
−40
0
500
[Hz]
0
0.02
0.04
0.06
[s]
0.08
1000
Abbildung B.3. Dauerver¨ anderung mittels Fourier-Analyse-Synthese: Vom gegeben pe-
riodischen Signal mit drei Sinuskomponenten (links oben) wird zuerst die hochaufl¨ osende Fouriertransformation ermittelt, deren lokale Maxima den diskreten Frequenzlinien, also dem wirklichen Spektrum entsprechen. Werden die Komponenten des wirklichen Spektrums um den Faktor 2.25 verl¨ angert und aufsummiert, dann ergibt sich das erwartete Signal.
430
B. Fourier-Analyse-Synthese von Sprachsignalen
B.2.1 Die Wahl der Fensterfunktion Das wirkliche Spektrum eines exakt periodischen digitalen Signals kann auf zwei Arten beliebig genau bestimmt werden: Bei bekannter Periode T0 , die ein ganzzahliges Vielfaches der Abtastperiode Ts = 1/fs sein muss, gibt die Fouriertransformierte eines T0 langen Signalabschnittes exakt die spektrale Zusammensetzung an, d.h. die Amplitude der Grundwelle mit der Frequenz F0 = 1/T0 und die Amplituden aller Oberwellen von 2F0 bis fs /2. Die Phasen der Komponenten haben einen linearen Anteil u ¨ berlagert, der von der zeitlichen Position des gew¨ ahlten Abschnittes abh¨ angt. F¨ ur einen Signalabschnitt, der viel l¨ anger ist als T0 , approximiert die Fouriertransformierte das wirkliche Linienspektrum des Signals, wobei die Genauigkeit des Spektrums mit der L¨ ange des Abschnittes zunimmt. Bei Sprachsignalen, die nur innerhalb kurzer Zeitintervalle einigermassen station¨ ar (sog. quasistation¨ ar) sind, deren Periode i.a. nicht ein ganzzahliges Vielfaches von Ts ist, und die zudem stets eine mehr oder weniger starke Rauschkomponente aufweisen, kann die spektrale Zusammensetzung weder nach der einen, noch nach der andern der oben erw¨ ahnten Arten exakt ermittelt werden. Sie l¨ asst sich nur sch¨ atzen, wobei die Frage ist, welche der beiden Vorgehensweisen die bessere Sch¨ atzung erlaubt. Im ersten Fall werden durch das Festsetzen einer Periode (egal ob dies manuell oder mit einem automatischen Verfahren gemacht wird) zwangsl¨ aufig auch die Frequenzen aller spektralen Komponenten mitbestimmt. Ausser bei ausgepr¨ agt stimmhaften Signalpartien wird dadurch die Fouriertransformierte wesentlich von der wirklichen spektralen Zusammensetzung des Signals abweichen. Im zweiten Fall besteht das Problem darin, dass das Sprachsignal mit einer Fensterfunktion multipliziert wird, und die Fouriertransformierte deshalb das Resultat der Faltung des wirklichen Sprachspektrums mit dem Spektrum der Fensterfunktion ist.2 Der Schmiereffekt des Fensters, also die Breite des Hauptlappens ist f¨ ur ein kurzes Fenster gr¨ osser als f¨ ur ein l¨ angeres. Aus Abbildung B.4 ist ersichtlich, dass benachbarte Linien eines harmonischen Signals im Spektrum dann als lokale Maxima erscheinen, wenn die L¨ ange des Hamming-Fensters mindestens zweieinhalb Perioden lang ist. 2
Selbstverst¨ andlich ist dies auch im ersten Fall so, nur wirkt sich die Faltung praktisch nicht aus, da die Fouriertransformierte des Rechteckfensters mit der Peur alle ganzzahligen Vielfachen von 1/T0 eine Nullstelle hat, ausser im riode T0 f¨ Ursprung, wie dies in Abbildung 4.3 zu sehen ist.
B.2
Das wirkliche Spektrum eines Signals
Analyseabschnitt (3 Perioden) 1 0 −1
0
0.01
0.02
[s]
1 0 −1
0
0.01
0.02
1 0 −1
0
0.01
[s]
0.02
[s]
431
Betragsspektrum
Teilspektrum
0
0
−20
−10
−40
−20
−60
0
2000
[Hz]
4000
−30
0
0
−20
−10
−40
−20
−60
0
2000
[Hz]
4000
−30
0
0
−20
−10
−40
−20
−60
0
2000
[Hz]
4000
−30
100
300 [Hz] 500
100
300 [Hz] 500
100
300 [Hz] 500
Abbildung B.4. Einfluss der L¨ ange des Analysefensters auf die lokalen Maxima der Fou-
riertransformierten: Mit abnehmender L¨ ange wird der Schmiereffekt des Hamming-Fensters gr¨ osser, sodass kleinere lokale Maxima verschwinden k¨ onnen, wie dies bei diesem aus drei Sinuskomponenten (100, 200 und 300 Hz mit -5, -20 bzw. -10 dB) zusammengesetzten Signal der Fall ist.
B.2.2 Analyse eines stark instation¨ aren Signals Ein wichtiges Merkmal von Sprachsignalen ist, dass sie quasistation¨ ar sind. Ihre Charakteristik ver¨ andert sich also relativ langsam, sodass die bei vielen Transformationen vorausgesetzte Stationarit¨ at gen¨ ugend gut erf¨ ullt ist. Soll hingegen die spektrale Zusammensetzung eines Sprachsignals ermittelt werden, wie sie hier ben¨ otigt wird, dann zeigt sich, dass die Stationarit¨ atsbedingung, welche die Fouriertransformation voraussetzt, an manchen Stellen des Signals nicht erf¨ ullt ist. Dies f¨ uhrt u.a. dazu, dass die Fouriertransformierte eines stimmhaften Signalabschnittes die Oberwellen nicht korrekt anzeigt (vergl. auch Abschnitt 9.2.3.2). Dies kann leicht anhand des folgenden Experimentes gezeigt werden. Gegeben sei ein harmonisches Signal s(t) =
K
A sin(2πkF0 (t) t) ,
(248)
k=1
wobei die Grundfrequenz F0 (t) = F0 (0)+F˙0 t ist. Mit F0 (0) = 100 Hz und F˙0 = 500 Hz/s ¨andert sich die Grundfrequenz zeitlich so schnell, wie dies in nat¨ urlichen Sprachsignalen nicht dauernd, aber noch recht oft der Fall ist, n¨ amlich um 500 %/s zum Zeitpunkt 0 und um 250 %/s bei 0.2 s.
432
B. Fourier-Analyse-Synthese von Sprachsignalen
4000
4000
[Hz]
[Hz]
3500
3500
3000
3000
2500
2500
2000
2000
1500
1500
1000
1000
500
500
0
0
0.05
0.1
0.15 [s]
0.2
0
0
0.05
0.1
0.15 [s]
0.2
Abbildung B.5. Spektrogramm des mit Formel (248) spezifizierten Signals s(t) mit F0 (0) = 100 Hz und F˙ 0 = 500 Hz/s. Links ist das analytisch ermittelte Spektrogramm zu sehen, rechts die aus der Kurzzeit-Fouriertransformation gesch¨ atzte spektrale Zusammensetzung (lokale Maxima).
Das analytische Spektrogramm3 dieses Signals ist auf der linken Seite von Abbildung B.5 dargestellt. Im rechten Teil dieser Abbildung ist das via KurzzeitFouriertransformation bestimmte “wirkliche” Spektrogramm dargestellt, d.h. es sind die lokalen Maxima4 der Spektren in der Zeit-Frequenz-Ebene eingetragen worden. Zur Analyse ist ein Hamming-Fenster der L¨ ange 30 ms mit einer Verschiebung von 5 ms eingesetzt worden. Aus diesem Spektrogramm ist ersichtlich, dass bei tiefen Frequenzen die Resultate etwa den Erwartungen entsprechen, w¨ ahrend die Fouriertransformation f¨ ur h¨ ohere Frequenzen ziemlich unplausible Ergebnisse liefert.5 Da dieses Problem bei station¨ aren Signalen nicht auftritt, ist es nahe liegend, zu versuchen, entweder das Signal weniger instation¨ ar zu machen oder die 3
Dieses Spektrogramm ist nicht mit der Fouriertransformation aus dem Signal ermittelt worden. Es kann aufgrund der spektralen Spezifikation in Formel (248) direkt gezeichnet werden. 4 Die kleinen Maxima, die zwischen den hier relevanten grossen Maxima auftreten, sind eliminiert worden. Die Methode ist in Abschnitt B.3.2 beschrieben. 5
Dieses Problem tritt auch bei der Ermittlung des Schmalbandspektrogramms in Erscheinung und ist beispielsweise in Abbildung 3.8 in der N¨ ahe des Zeitpunktes von 0.6 s, wo die Grundfrequenz stark abf¨ allt, gut zu beobachten.
B.2
Das wirkliche Spektrum eines Signals
433
Fouriertransformation an die Instationarit¨ at anzupassen. F¨ ur beide Ans¨ atze stellt sich jedoch die Frage, wie die Instationarit¨ at gemessen werden kann und wie hoch dabei die Anforderung bez¨ uglich Genauigkeit ist. Das Problem der Instationarit¨ at ist nur bei quasiperiodischen Signalen relevant.6 Solche Signale sind aus einer zeitlich ver¨ anderlichen Grundwelle und den entsprechenden Oberwellen zusammengesetzt, wie z.B. das mit Formel (248) spezifizierte Signal. Es ist deshalb zweckm¨ assig, als Mass f¨ ur die Instationarit¨ at die Ver¨ anderung der Grundfrequenz des Signals zu verwenden. Wie genau die Instationarit¨ at eines Signalausschnittes kompensiert werden muss, damit die Oberwellen richtig erfasst werden k¨ onnen, h¨ angt prim¨ ar von der L¨ ange des Ausschnittes und der H¨ ohe der Frequenz der Oberwellen ab. Bei einem Signal mit Frequenzkomponenten bis 4 kHz, das mit einem 30 ms langen Hamming-Fenster analysiert werden soll, ist die Situation insofern unkritisch, als die Fourieranalyse die richtige spektrale Zusammensetzung ermittelt, wenn die relative Ver¨ anderung der Grundfrequenz kleiner als etwa 100 %/s ist. Als Mass f¨ ur die Instationarit¨ at wird die zeitliche Ableitung der Grundfrequenz genommen, die sich aus den Grundfrequenzwerten mehrerer, zeitlich verschobener Signalabschnitte berechnen l¨ asst. Auf die Bestimmung der Grundfrequenz wird im Abschnitt B.4 n¨ aher eingegangen. Wie oben erw¨ ahnt, bieten sich grunds¨ atzlich zwei Wege an, die spektrale Zusammensetzung eines stark instation¨ aren Signals zu sch¨ atzen: entweder die Zeitachse des Signals so zu ver¨ andern, dass das Signal ungef¨ ahr station¨ ar wird, oder die komplexen Basisfunktionen der Fouriertransformation an die Instationarit¨ at des Signals anzupassen. Die beiden Wege werden in den folgenden Abschnitten erl¨ autert. B.2.2.1 Vermindern der Instationarit¨ at eines Signals durch Umtastung Ein harmonisches Signal, dessen Grundfrequenz sich zeitlich ver¨ andert, kann durch eine Abtastung mit variablem Abtastintervall in eine Punktfolge umgewandelt werden, die wieder eine konstante Grundperiode aufweist. Nebst der Einhaltung des Abtasttheorems ist dabei die einzige Bedingung, dass die zeitliche Abh¨ angigkeit der Grundfrequenz bekannt sein muss. Innerhalb eines 30 ms langen Abschnittes, wie er f¨ ur die Analyse in Abbildung B.5 verwen¨ det worden ist, l¨ asst sich die Anderung der Frequenzkomponenten und damit 6
Diese Aussage bezieht sich auf die Perzeption von Sprachsignalen. In rauschartigen Signalteilen, wie sie beispielsweise bei Zischlauten vorliegen, ist die exakte Frequenz der einzelnen Komponenten geh¨ orm¨ assig unbedeutend. Das Geh¨ or nimmt im Wesentlichen nur die Enveloppe des Leistungsdichtespektrums wahr und dass das Signal aperiodisch ist.
434
B. Fourier-Analyse-Synthese von Sprachsignalen
tnorm
tmod
Abbildung B.6. Wird ein Sinussignal mit linear ansteigender Frequenz (oben) mit einer gleicherweise linear ansteigenden Abtastrate abgetastet, dann entsteht eine Folge von Abtastpunkten, die ein Sinussignal konstanter Frequenz beschreiben.
¨ auch die Anderung der Grundfrequenz F0 durch eine Gerade beschreiben
F0 (t) = F0 (0) + F˙0 t ,
(249)
wobei F0 (t) die Grundfrequenz am Anfang des Analyseabschnittes ist und F˙0 die mittlere Zunahme der Grundfrequenz pro Zeit bezeichnet. Wird nun das Signal mit der Frequenz
fs (t) = fs (0) + F˙0 t
(250)
abgetastet (siehe Abbildung B.6), wobei fs (0) = pF0 (0) ist, dann resultiert ares Signal.7 F¨ ur eine in p periodische Folge von Punkten, also ein station¨ beliebige Werte von F˙ 0 ist dies nur dann machbar, wenn das zu analysierenur alle Werte von t innerhalb des Signalabschnittes bekannt de Signal x(t) f¨ ist. Explizit ist dies bei einem digitalen Signal nicht der Fall, aber es ist gem¨ ass Abtasttheorem m¨ oglich, aus den Abtastwerten das kontinuierliche Signal exakt zu rekonstruieren und so eine beliebige, auch zeitlich ver¨ anderliche Abtastrate zu realisieren. Dies entspricht genau der Aufgabe eines Abtastratenwandlers. Der in [21] beschriebene Abtastratenwandler ist speziell f¨ ur die Stationarisierung von Signalausschnitten konzipiert worden. Im Gegensatz zu Wandlern, die gew¨ ohnlich f¨ ur beliebig lange Signale eingesetzt werden und deshalb als Steuerinformation die Eingangs- und Ausgangsabtastraten verwenden, wird der hier eingesetzte Wandler u ange der Eingangs- bzw. der Ausgangs¨ ber die L¨ sequenz (sind gleich) und die relative Zunahme der Grundfrequenz u ¨ ber die Dauer des Signalausschnittes gesteuert. 7
Dies trifft selbstverst¨ andlich nur bei einem k¨ unstlichen Signal exakt zu. Bei Sprachsignalen besteht die Instationarit¨ at jedoch nicht nur in der Grundfrequenzanderung. Deshalb kann mit der Umtastung die Instationarit¨ at zwar verringert, ¨ aber i.a. nicht beseitigt werden.
B.2
Das wirkliche Spektrum eines Signals
435
Um die spektrale Zusammensetzung des mit Formel (248) spezifizierten Signals zu bestimmen, ist jeder 30 ms lange Signalabschnitt vor der Fouriertransformation mit dem Abtastratenwandler stationarisiert worden. Da der Abtastratenwandler die Phase ver¨ andert, muss die Phase aus der Fouriertransformation entsprechend kompensiert werden (siehe [21]). Abbildung B.7 zeigt das Resultat der Frequenzanalyse, das etwa so aussieht, wie aufgrund des Signals zu erwarten ist. Um nicht nur die Frequenz, sondern auch die Amplitude und die Phase qualitativ beurteilen zu k¨ onnen, wird hier die im Abschnitt 3.5 eingef¨ uhrte Darstellung des Spektrogramms verwendet. Weil diese Art der Darstellung vor allem auf der Zeitachse eine viel h¨ ohere Aufl¨ osung ben¨ otigt, kann nur ein Ausschnitt aus der Frequenz-Zeit-Ebene von Abbildung B.5 dargestellt werden. Aus Abbildung B.7 ist grob ersichtlich, dass auch die Amplitude und die kompensierte Phase der Erwartung entsprechen. Die Phase der h¨ oheren Frequenz3000 [Hz] 2500
2000
1500
1000
500
0
0
0.005
0.01
0.015
[s]
0.02
Abbildung B.7. Ausschnitt aus dem wirklichen Spektrogramm des harmonischen Signals
von Formel (248). Die Komponenten sind mittels Stationarisierung und hochaufl¨ osender Fouriertransformation gesch¨ atzt worden und sind hier gem¨ ass Abschnitt 3.5 dargestellt.
436
B. Fourier-Analyse-Synthese von Sprachsignalen
komponenten ist allerdings schwierig zu beurteilen, weil die Frequenzspr¨ unge an den Segmentgrenzen ziemlich gross sind. B.2.2.2 Fouriertransformation f¨ ur instation¨ are Signale Ein anderer Ansatz zur Analyse instation¨ arer harmonischer Signale ist, die komplexen Basisfunktionen der Fouriertransformation an die Instationarit¨ at des Signals anzupassen. Die konstanten Frequenzen dieser Funktionen werden somit zeitver¨ anderlich. Da die Basisfunktionen in analytischer Form vorliegen, k¨ onnen die Abtastwerte f¨ ur beliebige Zeitpunkte berechnet werden. Die Transformation, welche die Punkte n = 0, . . . , N −1 der diskreten Zeitach˜ der modifizierten Zeitachse u uhrt, sei n ˜ = n + ϕ(n). se in die Punkte n ¨ berf¨ Dann ergibt die diskrete Fouriertransformation (DFT) des Signals x(n)
X(k) =
N −1
x(n) e−j2πk(n+ϕ(n))/N .
(251)
n=0
Diese grunds¨ atzlich elegante L¨ osung birgt jedoch zwei Probleme. Zum einen verhindert der Term ϕ(n), dass die DFT in Formel (251) in die effizient berechenbare Form der FFT (fast Fourier transform) umgewandelt werden kann, was bei der hier n¨ otigen hohen spektralen Aufl¨ osung stark ins Gewicht f¨ allt. ur Signale mit Noch problematischer ist jedoch, dass durch den Term ϕ(n) f¨ Frequenzanteilen, die nahe bei der halben Abtastfrequenz liegen, das Abtasttheorem verletzt werden kann. Aus diesen Gr¨ unden wird zur Analyse instation¨ arer Signale die in Abschnitt B.2.2.1 beschriebene Methode mit dem Abtastratenwandler vorgezogen.
B.3
B.3 Sch¨ atzen des wirklichen Spektrums von Sprachsignalen F¨ ur die Experimente in Abschnitt B.2 sind durchwegs analytische Signale eingesetzt worden, von denen das wirkliche Spektrum und damit die richtigen Resultate der Frequenzanalyse im Voraus bekannt waren. Nun werden die bisher gewonnenen Erkenntnisse auf Sprachsignale angewandt. Im Abschnitt 9.2.3.2 haben wir gesehen, dass f¨ ur schwache Komponenten, also f¨ ur solche mit kleiner Amplitude, ungenaue Frequenzwerte resultieren, wenn sie anhand der lokalen Maxima der hochaufl¨ osenden Fouriertransformierten ermittelt werden. Dieses Problem wollen wir an einem k¨ unstlichen Signal untersuchen, das die Charakteristik eines Sprachsignals aufweist, aber exakt station¨ ar ist. Ein solches Signal kann wie folgt generiert werden: Von einem Ausschnitt aus einem stimmhaften Sprachsignal (siehe markierter Ausschnitt in Abbildung B.8 oben) wird das wirkliche Spektrum gesch¨ atzt, indem
B.3
Sch¨ atzen des wirklichen Spektrums von Sprachsignalen
437
1
0
−1
0
0.02
0.04
0.06
0.08
[s]
0.1
40 [dB] 20 0 −20
0
1000
2000
3000
[Hz]
4000
0
0.01
0.02
0.03
[s]
0.04
1000 [Hz] 800
600
400
200
0
Abbildung B.8. Aus dem grau hinterlegten Sprachsignalabschnitt (oben) wurde das wirk-
liche Spektrum gesch¨ atzt, also die lokalen Maxima der Fouriertransformierten (Mitte). Aus diesem Spektrum ist ein station¨ ares Signal generiert und daraus das wirkliche Spektrogramm berechnet worden (unten). Die Amplitude der Frequenzkomponenten ist in logarithmischem Massstab eingetragen.
die lokalen Maxima der Fouriertransformierten ermittelt werden (Abbildung B.8 Mitte). Aus diesem Spektrum wird via Fouriersynthese ein l¨ angeres, exakt station¨ ares Signal erzeugt, das also u ange die gleiche ¨ ber die gesamte L¨ spektrale Zusammensetzung aufweist. Aus diesem Signal kann mittels Kurzzeitanalyse das wirkliche Spektrogramm Ym (i) = (fi , ai , pi )m mit i = 1, . . . , Im ermittelt werden, wobei m der Index des Analyseintervalls ist. Weil das Signal exakt station¨ ar ist sollten die Freur alle m gleich sein. Der in quenz und die Amplitude der i-ten Komponente f¨ Abbildung B.8 unten dargestellte Ausschnitt des wirklichen Spektrogramms zeigt jedoch, dass dies nur f¨ ur die drei tiefsten Frequenzkomponenten, welche die gr¨ ossten Amplituden aufweisen, einigermassen zutrifft. Die schw¨ acheren
438
B. Fourier-Analyse-Synthese von Sprachsignalen
Komponenten streuen hingegen ziemlich stark. Es scheint sich aber nicht um einen systematischen Fehler zu handeln. Eine erwartungstreue, aber ungenaue Messmethode liefert durch Mittelung mehrere Messwerte genauere Resultate. Dieses Prinzip kann auch hier angewendet werden, indem wir f¨ ur ein Analyseintervall nicht nur aus einer Fouriertransformierten die lokalen Maxima ermitteln, sondern aus mehreren, n¨ amlich J . Bei dieser Mehrfachanalyse wird das Analysefenster jeweils um wenige Abtastwerte verschoben. Wie aus diesen J Spektren schliesslich das wirkliche Spektrum ermittelt werden kann, wird im n¨ achsten Abschnitt gezeigt.
B.3.1 Ermittlung schwacher spektraler Komponenten Um f¨ ur den Zeitpunkt mD (D ist die Verschiebung des Analysefensters) das wirkliche Spektrum Ym (i) = (fm,i , am,i , pm,i ) mit i = 1, . . . , Im zu ermitteln, wird zuerst das wirkliche Spektrum Yˆj (l) an den Stellen mD+jDj bestimmt, atzlich wird aus dem betreffenden Simit j = −J, . . . , +J und Dj D. Zus¨ atzt (das Verfahren ist in Abschnitt gnalabschnitt die Grundfrequenz F0 gesch¨ B.4 beschrieben). Aus den Yˆj (i) und mit F0 werden nun nach dem folgenden Algorithmus Ym (i) bestimmt: 1. Alle Phasen pˆj,l werden wie folgt auf den Zeitpunkt j = 0 umgerechnet: ◦ pj,l = pˆj,l + 2πfj,l jDj 2. F¨ ur die erste Komponente (i = 1) wird ein Frequenzbereich Fb mit den Grenzen 0.5 F0 und 1.5 F0 festgesetzt. 3. F¨ ur jedes j wird im Bereich Fb die Komponente Yˆj (b) = (fj,b , aj,b , pj,b ) mit der gr¨ ossten Amplitude gesucht.
4. Die Frequenz von Ym (i) ist dann: fm,i = j aj,b ·fj,b / j aj,b . 5. Die Amplitude von Ym (i) ist: am,i = j aj,b /(2J+1). ◦
6. F¨ ur die Phase von Ym (i) wird zuerst die Phase pjo ,b mit jo = −1, 0, +1 bestimmt, die den kleinsten mittleren Phasenunterschied Δp (jo , b) zu allen andern Phasen hat, wobei jeweils die beiden Phasen mit der gr¨ ossten ◦ Abweichung eliminiert werden: pm,i = pjo ,b + Δp (jo , b). 7. Falls die obere Grenze von Fb noch kleiner als die halbe Abtastfrequenz ist, werden die Grenzen von Fb neu auf fm,i +0.5 F0 bzw. auf fm,i +1.5 F0 festgesetzt, i inkrementiert und zu Punkt 3 zur¨ uckgesprungen. W¨ ahrend die Bestimmung der Frequenz und der Amplitude einleuchtet, bedarf das Vorgehen bei der Phase einer n¨ aheren Erl¨ auterung. ur Weil die Phase aus der Fouriertransformation modulo 2π vorliegt, kann f¨ ◦ pm,i nicht einfach der Mittelwert u ¨ ber die pj,b , j = −J, . . . , J berechnet werden. Hingegen ist es m¨ oglich, die mittlere Phase pm,i als Summe einer Refe-
B.3
Sch¨ atzen des wirklichen Spektrums von Sprachsignalen
439
1000 [Hz] 800
600
400
200
0
0
0.01
0.02
0.03
[s]
0.04
Abbildung B.9. Wirkliches Spektrogramm f¨ ur das gleiche, exakt station¨ are Signal wie in
Abbildung B.8, jedoch nach dem im Abschnitt B.3.1 beschriebenen Verfahren berechnet
◦
renzphase pjo ,b und der mittleren Abweichung Δp (jo , b) zu bestimmen, da bei stimmhaften Sprachsignalen in der Regel die absoluten Differenzen zwischen ◦ der Referenzphase pjo ,b und den andern Phasen viel kleiner als π sind. Um den Mittelwert zu verbessern, werden einzelne grosse Differenzen als nicht konsistent ausgeschlossen. ◦ atzwert vor, dann Liegt f¨ ur die Referenzphase pjo ,b selbst ein schlechter Sch¨ wird der Mittelwert Δp (jo , b) gross. Dies kann durch den Vergleich der Mittelwerte an den Stellen jo = −1, 0, 1 entschieden werden. Da stets eine Refe◦ ussen, wird renzphase pjo ,b und ein Mittelwert Δp (jo , b) bestimmt werden m¨ jo so gew¨ahlt, dass Δp (jo , b) minimal wird. Dieses Verfahren ist zwar recht heuristisch, aber es liefert bereits f¨ ur J = 3 und Dj = 1 ms befriedigende Resultate, wie auch der Abbildung B.9 entnommen werden kann. Das Verfahren bewirkt implizit eine Verl¨ angerung des Analyseintervalls um etwa 2J·Dj . Wird jedoch das Analyseintervall im Beispiel von Abbildung B.8 von 25 ms auf 31 ms verl¨ angert, dann sind die Fehler zwar etwas kleiner, aber bei weitem noch nicht so klein wie in Abbildung B.9. Eine wesentlich st¨ arkere Verl¨ angerung des Analyseintervalls w¨ urde zwar in diesem Beispiel eine zus¨ atzliche Verbesserung ergeben, aber bei normalen Sprachsignalen u ¨ berwiegen negative Effekte. Insbesondere darf das Analysefenster nicht zu gross sein, sonst wird die zeitliche Aufl¨ osung zu schlecht, um die schnellen spektralen Ver¨ anderungen im Sprachsignal hinreichend genau beschreiben zu k¨ onnen. Dieses Verfahren zur spektralen Analyse von Sprachsignalen wird im Folgenden als Standard eingesetzt. Um seine Leistungsf¨ ahigkeit zu veranschaulichen, ist das in Abbildung B.10 dargestellte Sprachsignal mit schnell abnehmender
440
B. Fourier-Analyse-Synthese von Sprachsignalen 1
0
−1
0
0.02
0.04
0.06
0.08
[s]
0.1
0
0.02
0.04
0.06
0.08
[s]
0.1
2000 [Hz] 1800 1600 1400 1200 1000 800 600 400 200 0
Abbildung B.10. Sprachsignalausschnitt mit stark fallender Grundfrequenz und zugeh¨ o-
riges wirkliches Spektrogramm
Grundfrequenz (≈ −750 %/s) analysiert worden. Abbildung B.11 zeigt das Resultat der Analyse eines Signalausschnittes mit dem Laut¨ ubergang [s E] aus dem Wort “Sendung”, wobei sich hier die Grundfrequenz (im stimmhaften Teil) nur langsam ver¨ andert.
B.3.2 Elimination unechter spektraler Maxima In diesem Abschnitt wird eine Erg¨ anzung zur spektralen Analyse von Sprachsignalen gezeigt, die zwar keine Verbesserung im Sinne erh¨ ohter Sprachqualit¨ at ergibt, aber eine Reduktion des Aufwandes bei der Rekonstruktion des Sprachsignals aus dem wirklichen Spektrogramm bei gleich bleibender Qualit¨ at erlaubt.
B.3
Sch¨ atzen des wirklichen Spektrums von Sprachsignalen
441
1
0
−1
0
0.02
0.04
0.06
0.08
[s]
0.1
0
0.02
0.04
0.06
0.08
[s]
0.1
2000 [Hz] 1800 1600 1400 1200 1000 800 600 400 200 0
¨ Abbildung B.11. Sprachsignalausschnitt, der einen Ubergang von stimmlos zu stimmhaft enth¨ alt und zugeh¨ origes wirkliches Spektrogramm
F¨ ur die Berechnung des Kurzzeitspektrums werden Signalabschnitte verwendet, die mindestens zweieinhalb Mal so lange sind wie die maximale Grundperiode, minimal 22 ms. Dies f¨ uhrt dazu, dass die Fouriertransformierte f¨ ur Abschnitte mit wesentlich k¨ urzerer Grundperiode, insbesondere bei Frauenstimmen, wie das Beispiel in Abbildung B.12 zeigt, viele “unechte” lokale Maxima aufweisen, die vom Lecken des Analysefensters herr¨ uhren. Diese “unechten” Maxima liegen zwischen den “echten” Maxima, die bei stimmhaften Abschnitten ungef¨ ahr ganzzahlige Vielfache der Grundfrequenz sind. Weil das Geh¨ or diese unechten Maxima aufgrund des Verdeckungseffektes (vergl. Abschnitt 1.4.4) sowieso nicht wahrnehmen kann, werden sie eliminiert. Als Kriterium dient dabei das cepstral gegl¨ attete Spektrum: Maxima, die
442
B. Fourier-Analyse-Synthese von Sprachsignalen 40 [dB] 20 0 −20 −40
0
1000
2000
3000
[Hz]
4000
Abbildung B.12. Die Fouriertransformierte eines 22 ms langen Signalabschnittes mit einer Grundfrequenz von 210 Hz (Frauenstimme), weist viele “unechte” lokale Maxima auf, die viel kleiner als das cepstral gegl¨ attete Spektrum sind.
mehr als 3 dB unterhalb des gegl¨ atteten Spektrums liegen, werden als nicht relevant betrachtet. So kann die Zahl der spektralen Komponenten um bis zu 50 % reduziert werden.
B.4
B.4 Bestimmen der Grundfrequenz Die Grundfrequenz F0 wird nicht nur zur Sch¨ atzung des wirklichen Spektrums des Sprachsignals gebraucht (siehe Verfahren Seite 438), sondern auch zur prosodischen Ver¨ anderung der Sprachsignale im Frequenzbereich, d.h. zur Manipulation der Spektrogramme bei der Fouriersynthese (vergl. Abschnitt B.6). Insbesondere f¨ ur die spektralen Manipulationen muss F0 mit einer hohen Genauigkeit bestimmt werden. Es gibt in der Literatur sehr viele verschiedene Verfahren zur Detektion der Grundfrequenz, die eingeteilt werden k¨ onnen in Zeit-, Frequenz-, Autokorrelationsbereichs- und cepstrale Verfahren. Hier kommt ein Verfahren zum Einsatz, bei dem das Maximum der normierten Autokorrelation detektiert wird, wobei die Position des Maximums die st¨ arkste Periode im Signal angibt und die H¨ ohe des Maximums ein Mass f¨ ur die Periodizit¨ at des Signals ist. Die Autokorrelationsmethode erfordert zwar einen gr¨ osseren Rechenaufwand als andere Verfahren, aber die Zuverl¨ assigkeit des Verfahrens ist hier viel wichtiger als die ben¨ otigte Rechenleistung, weil der ganze Analyseteil (Berechnung des Kurzzeitspektrums und der Grundfrequenz) beim Einsatz des Fourier-Analyse-Synthese-Verfahrens in der Sprachsynthese vorausberechnet werden kann.
B.4.1 Berechnung der Autokorrelation Die Autokorrelation wird hier nicht nach Formel (26) berechnet, sondern mittels der inversen Fouriertransformation aus dem wirklichen Spektrum
B.4
Bestimmen der Grundfrequenz
443
Ym (i) = (fm,i , am,i , pm,i ) nach Rm,q =
Im 1 a2 e−j2πqfm,i , N i=1 m,i
0≤q
(252)
ange des Analysefensters ist, das zur Ermittlung von Ym (i) wobei N die L¨ verwendet worden ist. Weil Ym (i) nur Im Komponenten umfasst, muss die Summe nur diese Terme enthalten. ur einen 2 s langen AusIn Abbildung B.13 ist die Autokorrelation Rm,q f¨ schnitt aus einem Sprachsignal dargestellt, wobei die Verschiebung des Ana2 [s] 1.8
1.6
1.4
1.2
1
0.8
0.6
0.4
0.2
0
0
2
4
6
8
10
12
14
16
[ms]
20
Abbildung B.13. Autokorrelation Rm,q aus einem 2 s langen Sprachsignal, wobei auf der
Abszisse q und auf der Ordinate mD+κ Rm,q aufgetragen sind (κ ist ein Skalierungsfaktor f¨ ur die Darstellung)
444
B. Fourier-Analyse-Synthese von Sprachsignalen
lysefensters D = 10 ms betr¨ agt. Daraus ist ersichtlich, dass sich die Periode der Grundfrequenz zwischen etwa 7.5 und 11 ms bewegt (m¨ annliche Stimme). Die AKF weist an vielen Stellen eine Periodizit¨ at auf, die dem Doppelten oder Dreifachen der Grundfrequenz entspricht, weil die erste oder zweite Harmonische im Signal wesentlich st¨ arker ist als die Grundwelle. Dieses bei m¨ annlichen Stimmen recht h¨ aufige Ph¨ anomen bietet in der Regel bei der Detektion des richtigen Maximums, das der Periode der Grundfrequenz T0 = 1/F0 entosser ist als bei T0 /2 spricht, kein Problem, weil das Maximum bei T0 stets gr¨ oder T0 /3. Problematisch ist hingegen, dass die AKF f¨ ur ausgepr¨ agt stimmhafte Signale nicht nur bei T0 , sondern auch bei jedem ganzzahligen Vielfachen von T0 ein etwa gleich hohes Maximum aufweist. So ist die Wahrscheinlichkeit recht gross, dass die doppelte oder dreifache Grundperiode detektiert wird. Im n¨ achsten Abschnitt wird eine einfache, f¨ ur die vorliegende Anwendung jedoch zweckm¨ assige L¨ osung dieses Problems gezeigt.
B.4.2 Detektion des AKF-Maximums Die Grundfrequenz variiert beim normalen Sprechen ungef¨ ahr um eine Oktave. Deshalb kann der Detektionsbereich f¨ ur T0 bei bekannter Stimme auf ankt werden. Dieeinen Bereich der Gr¨ osse ΔT0 = T0max − T0min eingeschr¨ se Einschr¨ ankung ist jedoch nicht so stark, dass die Detektion der halben Grundfrequenz generell ausgeschlossen ist. Ein weiteres Merkmal der Grundfrequenz ist, dass sie sich relativ langsam verandert; insbesondere sind Oktavspr¨ unge ausgeschlossen. Diese Tatsache wird ¨ beim Suchen des AKF-Maximums ausgenutzt, indem die AKF im Suchbereich so gewichtet wird, dass die Stelle, an der in vorangehenden Analyseintervallen ein sicheres Maximum detektiert worden ist, bevorzugt wird (gewichtet mit α > 1, siehe Formel 253). Diese mit T˜0 (m) bezeichnete Stelle wird rekursiv ohe nachgef¨ uhrt, falls die Grundperiode T0 (m) als sicher gilt, d.h. falls die H¨ ˆ des normierten Maximums der AKF Rm = Rm,ˆq /Rm,0 > μ ist. ˜0 (m−1) − q/fs | | T ∗ Rm,q = Rm,q α − (α − 1) (253) ΔT0 f¨ ur wobei
fs (T˜0 (m−1) − ΔT0 /2) ≤ q ≤ fs (T˜0 (m−1) + ΔT0 /2) ˆm > μ δ T˜ (m−1) + (1 − δ) T0 (m) falls R ˜ T0 (m) = ˜ 0 T0 (m−1) sonst.
Unter Anwendung dieser Formel mit den Parameterwerten α = 1.1, δ = 0.66 und μ = 0.9 sind aus der AKF in Abbildung B.13 der Verlauf der Grundfreq(m), die Mitte des Suchbereichs T˜0 (m) (gezeichnet als quenz F0 (m) = fs /ˆ ˆ m und der RMSF˜0 (m) = 1/T˜0 (m)), das normierte Maximum der AKF R
B.5
Rekonstruktion des Sprachsignals
445 3
150 [Hz] 100
2
50
1
0
0
0.2
0.4
0.6
0.8
[s]
1 3
150 [Hz] 100
2
50
1
0
1
1.2
1.4
Abbildung B.14. Aus der Autokorrelation von F0 (stimmhaft ×, stimmlos ◦), von F˜0 (· · ·), von Die linke Skala gilt f¨ ur F0 und F˜0 , die rechte f¨ ur
1.6
1.8
[s]
2
Abbildung B.13 ermittelte Verl¨ aufe von ˆ (+++) und vom RMS des Signals (—). R ˆ und den RMS. R
Wert des Signals ermittelt worden. In Abbildung B.14 sind diese vier Gr¨ ossen ˆ auf der gleichen Zeitachse dargestellt. Aus Darstellungsgr¨ unden ist Rm mit einem Faktor 50 multipliziert worden.
B.4.3 Erh¨ ohung der Genauigkeit Wie oben bereits erw¨ ahnt, wird die Grundfrequenz berechnet aus F0 (m) = q (m), wobei qˆ(m) ganzzahlig ist. Es stellt sich somit die Frage nach der fs /ˆ Quantisierung von F0 (m). Die relative Quantisierung nimmt mit kleiner werur Frauenstimmen, die gew¨ ohnlich F0 -Werte aufweidendem qˆ(m) zu. Wird f¨ sen, die h¨ oher als 300 Hz sind, mit einer Abtastfrequenz von 8 kHz gearbeitet, dann betr¨ agt der Quantisierungsfehler mehrere Prozent. Dieser Quantisierungsfehler kann dadurch verkleinert werden, dass durch den ˆ m und seine beiden Nachbarpunkte eine nach unten ge¨offnete Parabel Punkt R gelegt wird (entspricht dem Prinzip einer quadratischen Interpolation), deren Scheitelpunkt einen genaueren Wert f¨ ur qˆ(m) liefert.
446
B.5
B. Fourier-Analyse-Synthese von Sprachsignalen
B.5 Rekonstruktion des Sprachsignals Bisher ist gezeigt worden, wie aus einem Sprachsignal das wirkliche Spektrum (bzw. das wirkliche Spektrogramm) zu ermitteln ist. In diesem Abschnitt wird nun dargelegt, wie daraus das Sprachsignal rekonstruiert werden kann. Aus dem wirklichen Spektrogramm kann das Signal abschnittweise rekonstruiert werden, indem die zu diesem Abschnitt geh¨ orenden Ausschnitte aus den Sinussignalen (diese sind im Spektrogramm in Abbildung B.16 u ¨ bereinander gezeichnet) addiert werden. Dabei u agt sich die Diskontinuit¨ at der Si¨ bertr¨ nussignale an den Abschnittsgrenzen auch auf das rekonstruierte Signal. Die Diskontinuit¨ aten sind um so gr¨ osser, je l¨ anger die Signalabschnitte, d.h. je geringer die zeitliche Aufl¨ osung des Spektrogramms ist. Bei Sprachsignalen wirken sich diese Diskontinuit¨ aten geh¨ orm¨ assig sehr st¨ orend aus. Die negative Auswirkung dieser Diskontinuit¨ aten kann dadurch eli¨ miniert werden, dass der abrupte Ubergang von einem Abschnitt auf den ¨ n¨ achsten durch ein Uberblenden der L¨ ange Nf vermieden wird. ¨ Damit die Signalleistung nicht ver¨ andert wird, muss f¨ ur die Uberblendfunktion die folgende Bedingung gelten: ws (n−mNs ) = 1 , (254) m
¨ welche diese Bedingung f¨ ur wobei Ns = Dfs ist. Eine Uberblendfunktion, Nf ≤ Ns erf¨ ullt und die sich praktisch bew¨ ahrt hat, ist in Abbildung B.15 dargestellt und berechnet sich wie folgt: ⎧ 0 f¨ ur n < 0 ⎪ ⎪ ⎪ n+1−Nf /2 1 ⎪ ⎪ (1 + sin(π )) f¨ ur 0 ≤ n < N f ⎨ 2 Nf ws (n) = (255) 1 f¨ ur N f ≤ n ≤ N s ⎪ Ns +Nf /2−n ⎪ 1 ⎪ )) f¨ ur N s < n < N s + N f ⎪ Nf ⎪ 2 (1 + sin(π ⎩ 0 f¨ ur n ≥ N s + N f . F¨ ur station¨ are oder nahezu station¨ are Signale ist offensichtlich, dass die Me¨ thode, das Signal durch Uberlappung von Signalabschnitten zu rekonstruie1 0.5 0
0
0.01
0.02
0.03
0.04
[s]
0.05
¨ Abbildung B.15. Uberblendfunktion f¨ ur die abschnittweise Rekonstruktion des Signals bei der Fouriersynthese. Die L¨ ange der Abschnitte betr¨ agt Ns /fs = 10 ms.
B.6
Prosodische Ver¨ anderung im Kurzzeitspektrum
447
0
0.02
0.04
0.06
0.08
[s]
0.1
0
0.02
0.04
0.06
0.08
[s]
0.1
0
0.02
0.04
0.06
0.08
[s]
0.1
2000 Hz] 1500
1000
500
0
Abbildung B.16. Aus dem Sprachsignal oben ist das wirkliche Spektrogramm Ym (i) mit
D = 10 ms ermittelt (gezeichnet bis 2000 Hz) und daraus das Sprachsignal unten rekonstruiert worden.
ren, zufriedenstellend funktionieren kann. Dass auch Sprachsignale mit starken Instationarit¨ aten so rekonstruiert werden k¨ onnen, zeigt Abbildung B.16. In der graphischen Darstellung sind zwar kleine Unterschiede zwischen dem Original und dem rekonstruierten Signal auszumachen. Beim Anh¨ oren der beiden Signale sind Testpersonen jedoch nicht in der Lage zu entscheiden, welches der Signale das Original ist.
448
B.6
B. Fourier-Analyse-Synthese von Sprachsignalen
B.6 Prosodische Ver¨ anderung im Kurzzeitspektrum In den Abschnitten B.3 bis B.5 ist gezeigt worden, wie f¨ ur ein Sprachsignal die spektrale Zusammensetzung (das wirkliche Spektrogramm) zu ermitteln ist, und wie daraus das Sprachsignal rekonstruiert werden kann. Zus¨ atzlich ist eine Methode zur genauen Bestimmung der Sprachgrundfrequenz vorgestellt worden. In diesem Abschnitt wird nun erl¨ autert, wie diese Grundlagen zur Ver¨ anderung der Dauer und der Grundfrequenz von Sprachsignalen eingesetzt werden. Auf die dritte prosodische Gr¨ osse, die Intensit¨ at, wird in diesem Kapitel nicht eingegangen, da die relative Ver¨ anderung der Intensit¨ at eines zusammenh¨ angenden Sprachsignalst¨ ucks einfach ist. Sie wird erst dann zum Problem, wenn die Aufgabe darin besteht, die Amplitude eines Signalst¨ ucks so zu skalieren, dass es gleich laut wahrgenommen wird wie eines, das andere Laute enth¨ alt. Dies spielt zwar bei der Sprachsynthese, die auf der Verkettung von Sprachsignalsegmenten beruht eine Rolle. Aus den im Abschnitt 9.3.3 erw¨ ahnten Gr¨ unden wird hier jedoch nicht darauf eingegangen.
B.6.1 Dauerver¨ anderung Wie in Abschnitt B.1 gezeigt worden ist, kann u ¨ ber das wirkliche Spektrum ein station¨ arer Signalausschnitt der Dauer D in einen solchen der Dauer D·ZT umgesetzt werden, wobei der Zeitstreckungsfaktor ZT gr¨ osser oder kleiner als 1 sein kann. Das im Abschnitt B.1 verwendete Spektrum kann als Spezialfall eines wirklichen Spektrogramms Ym (i) mit m = 1 betrachtet werden. Soll nun die Dauer eines Signals, das durch ein wirkliches Spektrogramm mit m = 1, . . . , M beschrieben wird, modifiziert werden, dann muss die zeitliche Verschiebung des Endes eines Abschnittes beim nachfolgenden Abschnitt ber¨ ucksichtigt werden, damit die Kontinuit¨ at der Phase erhalten bleibt. F¨ ur das Spektrogramm Ym (i) eines Signals, dessen Dauer linear um den Faktor ZT gestreckt werden soll, heisst dies, dass die Phase pm,i der i-ten Komponente des m-ten Abschnittes entsprechend der zeitlichen Verschiebung des Endes des Abschnittes m−1 wie folgt zu korrigieren ist: p˘m,i = pm,i + 2π fm,i ΔT (m−1) = pm,i + 2π fm,i ·(ZT −1)·(m−1) D .
(256)
F¨ ur ein sehr langes Signal kann somit der Phasenkorrekturterm fast beliebig gross werden. Dies ist f¨ ur ein exakt harmonisches Signal kein Problem, weil sich die Form einer Periode des Signals durch die Phasenkorrektur nicht verandert, wie dies in Abbildung B.17 in der linken H¨ alfte f¨ ur den 50. Analyse¨ (oben) bzw. Syntheseabschnitt (unten) zu sehen ist. Die L¨ ange des Analyseabschnittes betr¨ agt hier 40 ms. Der 50. Analyseabschnitt reicht somit von 1.96 s bis 2.0 s.
B.6
Prosodische Ver¨ anderung im Kurzzeitspektrum
449
1
0
−1 1.96
1.98
2
2.02
[s]
2.04
2.46
2.48
2.5
2.52
[s]
2.54
1
0
−1
Abbildung B.17. Zwei Analyseabschnitte des L¨ ange 40 ms eines instation¨ aren Signals
(oben). Der eine Abschnitt liegt vor dem Zeitpunkt von 2 s, der andere danach. F¨ ur die beiden Abschnitte weist das wirkliche Spektrogramm die Frequenzkomponenten 100, 200, 300 Hz bzw. 100, 201, 301 Hz auf. Wenn das Signal um den Faktor ZT = 1.25 gestreckt wird, unter mit Ber¨ ucksichtigung der Phasenkorrektur nach Gleichung (256), dann entsteht im gestreckten Signal beim Zeitpunkt 2.5 s eine St¨ orstelle (unten).
Anders verh¨ alt es sich mit einem Signal, dessen Komponenten nicht genau ganzzahlige Vielfache der Grundfrequenz sind, wie dies auch bei Spektrogrammen von Sprachsignalen der Fall ist (oder in Abbildung B.17 rechts). Die Form der Grundperiode ver¨ andert sich mit der Zeit laufend, wobei das kleinste gemeinsame Vielfache der Perioden aller Komponenten die Zeit ist, bis die Grundperiode wieder die Anfangsform aufweist. Bei Signalen mit vielen fast harmonischen Komponenten ist diese Zeit sehr gross. Da das menschliche Ohr die relative Phasenlage der verschiedenen Komponenten nicht oder nur sehr schwach wahrnimmt, ist diese Ver¨ anderung der Form der Grundperiode an sich nicht st¨ orend. Problematisch ist hingegen, dass sich benachbarte Abschnitte durch die zeitliche Verschiebung verschieden ver¨ andern und so nicht mehr “zueinander passen”, wie der untere Teil von Abbildung B.17 zeigt. Eine derartige Verletzung der Periodizit¨ at nimmt das menschliche Ohr als sehr st¨ orend wahr. Minimale Phasenkorrektur Das geschilderte Problem ist eine Folge der grossen Zeitverschiebung, die f¨ ur jede Frequenzkomponente in eine entsprechende Korrektur der Phase nach Formel (256) umgerechnet wird. Deshalb sind grosse Zeitverschiebungen zu achlich m¨ oglich, weil vermeiden. Dies ist f¨ ur ein Signal mit der Periode T0 tats¨ f¨ ur beliebige Werte von ΔT gilt:
∼ s(t+ΔT ) = s(t+ΔT mod T0 ) ,
(257)
450
B. Fourier-Analyse-Synthese von Sprachsignalen
0
0.05
0
0.065
0.1
[s]
[s]
0.13
Abbildung B.18. Beispiel einer Dauerver¨ anderung: Ausschnitt aus einem Sprachsignal (oben), der um 30 % verl¨ angert worden ist (unten).
wobei
∼ a mod b =
a mod b a mod b − b
f¨ ur a mod b < b/2 sonst.
Das Signal muss also um maximal ±T0 /2 geschoben werden. Bei Sprachsiat gnalen ist aber T0 (m) = 1/F0 (m) nicht konstant. Um die Phasenkontinuit¨ zu erhalten, muss deshalb nicht die zeitliche Schiebung, sondern die Phasenschiebung der Grundfrequenz
Δϕo (m) = 2π F0 D ZT (m) − 2π F0 D = 2π F0 D · (ZT (m)−1) kompensiert werden. Die Formel (256) kann somit auf die folgende Rekursion umgeschrieben werden:
ΔT (m) = Δ∗ϕo (m)/(2π F0 (m)) p˘m,i ∗ Δϕo (m+1)
= pm,i + 2π fm,i ΔT (m) =
{Δ∗ϕo (m)
∼ + 2π F0 (m) D · (ZT (m)−1)} mod 2π ,
(258)
wobei Δ∗ϕo (1) = 0 ist, und die relative Dauerver¨ anderung ZT (m) (Streckungsfaktor) nicht konstant zu sein braucht. Eine so geringe Verschiebung (maximal ±T0 /2) bewirkt auch bei nicht perfekt harmonischen Signalen, z. B. bei stimmhaften Sprachsignalen, nur eine kleine Ver¨ anderung der Form der Grundperiode, so dass benachbarte Signalabschnitte bei der Verl¨ angerung des Signals weiterhin gut zusammenpassen, wie dies in Abbildung B.18 veranschaulicht ist.
B.6
Prosodische Ver¨ anderung im Kurzzeitspektrum
451
B.6.2 Grundfrequenzver¨ anderung In diesem Abschnitt wird gezeigt, wie mit dem Fourier-Analyse-SyntheseVerfahren die Grundfrequenz bzw. die Tonh¨ ohe eines Sprachsignals ver¨ andert werden kann. Selbstverst¨ andlich sollen dabei andere Signaleigenschaften erhalten bleiben. B.6.2.1 Prinzip der Grundfrequenzver¨ anderung Die Grundfrequenz F0 eines stimmhaften Sprachsignals zu ver¨ andern, heisst nicht, dass nur die Frequenz der Grundwelle, sondern auch die Frequenzen der Oberwellen zu ver¨ andern sind. Mit Grundfrequenzver¨ anderung ist bei harmonischen Signalen eigentlich die Ver¨ anderung der Periode gemeint, denn diese wird vom Geh¨ or als Tonh¨ ohe wahrgenommen. Um die Periodizit¨ at eines Signals, das durch sein wirkliches Spektrogramm gegeben ist, zu ver¨ andern, m¨ ussen die Frequenzen aller Komponenten prozen¨ tual gleich modifiziert werden. Ahnlich wie eine Dauerver¨ anderung bewirkt auch eine Grundfrequenz¨ anderung in einem Signalabschnitt, dass sich die Phase am Ende des Abschnitts ver¨ andert und somit die Phase des darauf folgenden Abschnittes zu korrigieren ist, damit die Periodizit¨ at des Signals nicht gest¨ ort wird. Die n¨ otige Phasenkorrektur f¨ ur F0 ergibt sich aus der Differenz zwischen der Phase der frequenzmodifizierten F˘0 am Ende des dau˘ = D ZT (m) und der Phase ohne Frequenz- und ermodifizierten Intervalls D Dauerver¨ anderung.
Δϕo (m) = 2π F0 ZF (m) D ZT (m) − 2π F0 D = 2π F0 D · (ZT (m)ZF (m)−1) . Die Vorschrift zur Ver¨ anderung der Grundfrequenz im Spektrogramm eines Signals um den Faktor ZF (m) und die Modifikation der Dauer um den Faktor ZT (m) ist demnach:
f˘m,i = fm,i ZF (m) F˘0 (m) = F0 (m) ZF (m) ΔT (m) = Δ∗ (m)/(2π F˘0 (m)) ϕo
p˘m,i ∗ Δϕo (m+1)
(259)
= pm,i + 2π f˘m,i ΔT (m)
∼ = {Δ∗ϕo (m) + 2π F0 D · (ZT (m)ZF (m)−1)} mod 2π ,
wobei Δ∗ϕo (1) = 0 ist, und der Frequenzskalierungsfaktor ZF (m) nicht konstant zu sein braucht. Soweit ist die Ver¨ anderung der Grundfrequenz der Dauerver¨ anderung sehr ahnlich. Im Gegensatz zur Dauerver¨ anderung, bei der wirklich nur die Dauer ¨ des Signals modifiziert wird, ver¨ andert jedoch die Rekursion (259) nicht nur
452
B. Fourier-Analyse-Synthese von Sprachsignalen
die Grundfrequenz. Durch die Skalierung aller Frequenzkomponenten werden auch die Formanten und die Signalbandbreite skaliert, was selbstverst¨ andlich unerw¨ unscht ist. In den folgenden Abschnitten werden diese Effekte analysiert und L¨ osungen aufgezeigt.
B.6.2.2 Frequenzskalierung und Formanten Wird ein Laut einmal mit tieferer und einmal mit h¨ oherer Grundfrequenz so ausgesprochen, dass sich die Klangfarbe des Lautes nicht a ¨ndert, dann bleiben die Formanten im Wesentlichen unver¨ andert. In Abbildung B.19 wird dies anhand zweier Beispiele des Lautes [i] veranschaulicht. Der Sprecher hat die beiden Beispiele mit offensichtlich recht unterschiedlicher Tonh¨ ohe gesprochen, die Formanten sind jedoch nur wenig verschieden. Die Frequenzskalierung, wie sie durch die Rekursion (259) beschrieben wird, tr¨ agt dem nicht Rechnung. Die Amplitudenwerte des frequenzskalierten Kurzzeitspektrums m¨ ussen deshalb so korrigiert werden, dass die Lage der Formanten bzw. die Enveloppe Sm (f ) des Spektrums bei der Frequenzskalierung erhalten bleibt. Die Amplituden am,i der Komponenten des Spektrogramms 40 [dB] 20
0
−20
0
1000
2000
3000
[Hz]
4000
0
1000
2000
3000
[Hz]
4000
40 [dB] 20
0
−20
Abbildung B.19. Spektrum des Lautes [i] mit einer Grundfrequenz von 125 Hz (oben) bzw. von 157 Hz (unten).
B.6
Prosodische Ver¨ anderung im Kurzzeitspektrum
453
1 0.5 0 −0.5 −1
0.97
0.98
0.99
1
1.01
1.02
[s]
1.03
20 [dB] 10 0 −10 −20 −30 −40
0
500
1000
1500
2000
2500
3000
3500 [Hz] 4000
Abbildung B.20. Vom grau hinterlegten Abschnitt des Sprachsignals des Lautes [i:] ist die
Fouriertransformierte punktiert dargestellt. Die lokalen Maxima sind als Linienspektrum gezeichnet.
Ym (i) sind deshalb nach der folgenden Formel umzurechnen: a ˘m,i =
Sm (f˘m,i ) Sm (ZF fm,i ) am,i = am,i . Sm (fm,i ) Sm (fm,i )
(260)
Im n¨ achsten Abschnitt werden verschiedene Methoden zur Ermittlung der spektralen Enveloppe Sm (f ) aus einem Signalabschnitt und deren Vor- und Nachteile behandelt. B.6.2.3 Rekonstruktion der Formanten Um aus einem Linienspektrum, wie es beispielsweise in Abbildung B.20 dargestellt ist, eine Enveloppe zu ermitteln, kann man sich viele Methoden vorstellen, die auf einer Art Interpolation beruhen: Lineare, quadratische, kubische Interpolation etc., die auf dem linearen, halb- oder doppeltlogarithmischen Spektrum angewandt werden. Nebst der Vielfalt der M¨ oglichkeiten und der damit verbundenen “Qual der Wahl” ist allen Verfahren, die zur Ermittlung der spektralen Enveloppe eine Interpolation einsetzen, das Problem gemeinsam, dass schwache Zwischenmaxima des Spektrums, wie sie beispielsweise in Abbildung B.12 recht zahlreich sind, die Form der Enveloppe stark beeinflussen. Dieses Problem l¨ asst sich jedoch mit bereits behandelten Verfahren zur Ermittlung approximierter oder
454
B. Fourier-Analyse-Synthese von Sprachsignalen
20 [dB] 10
LPC16
0 −10 −20 −30 −40
0
500
1000
1500
2000
2500
3000
3500 [Hz] 4000
Abbildung B.21. Fourier-Spektrum eines Signalabschnittes des Lautes [i:] (punktiert)
und zugeh¨ origes LPC-Spektrum
gegl¨ atteter Spektren vermeiden. Dazu geh¨ oren insbesondere die lineare Pr¨ adiktion und die cepstrale Gl¨ attung. B.6.2.4 Approximation des Spektrums durch lineare Pr¨ adiktion Wie bereits in Abschnitt 4.5 gezeigt worden ist, wird mit der Methode der linearen Pr¨ adiktion ein Signalabschnitt in ein Anregungssignal mit ebener spektraler Enveloppe und in ein Allpolfilter H(z), welches das Sprachspek¨ trum approximiert, aufgespaltet. Der Betrag der Ubertragungsfunktion dieses Filters kann somit grunds¨ atzlich als Sm (f ) in Formel (260) zur Kompensation der Ver¨ anderung der Formanten eingesetzt werden. Das Allpolfilter hat jedoch eine Charakteristik, welche bei diesem Einsatz sehr st¨ orend sein kann, weil schmale Formanten oft durch Pole mit zu hoher G¨ ute approximiert werden. Dies ist insbesondere bei hoher Grundfrequenz, also bei Frauen- und Kinderstimmen der Fall. Wie das Beispiel in Abbildung B.21 zeigt, treten solche F¨ alle auch bei M¨ annerstimmen auf: Das Maximum von H(z) in der N¨ahe von 2500 Hz ist viel schmaler als eine plausible Sch¨atzung des betreffenden Formanten erg¨ abe. Die Folge davon ist, dass bei der Kompensation der Formantschiebung nach Formel (260) die Amplituden mancher Frequenzkomponenten zu stark ver¨ andert werden, was die Qualit¨ at des Sprachsignals stark beeintr¨ achtigt. Obwohl die Approximation des Sprachspektrums mittels linearer Pr¨ adiktion f¨ ur viele Anwendungen sehr n¨ utzlich ist, muss die Anwendung im Zusammenhang mit der Kompensation von Formanten f¨ ur die Fouriersynthese als untauglich verworfen werden. B.6.2.5 Cepstrale Methode Eine andere h¨ aufig eingesetzte Methode zur Approximation von Sprachspektren ist die cepstrale Gl¨ attung (siehe Abschnitt 4.6.3). Dabei muss die L¨ ange
B.6
Prosodische Ver¨ anderung im Kurzzeitspektrum
455
20 [dB] 10 0 −10 −20 −30 −40
0
500
1000
1500
2000
2500
3000
3500 [Hz] 4000
Abbildung B.22. Spektrum eines Signalabschnittes des Lautes [i:] (punktiert) und mittels cepstraler Gl¨ attung approximiertes Spektrum (mit Lc = 0.5 fs /Fo = 34)
Lc des cepstralen Fensters so festgelegt werden, dass auf dem gegl¨atteten Spektrum die Welligkeit f¨ ur die h¨ ochste Grundfrequenz knapp verschwindet, also Lc = 0.5 fs /F0max . In Abbildung B.22 ist dasselbe Beispiel wie in Abbildung B.21 dargestellt, jedoch mit cepstraler Gl¨ attung. Da die Grundfrequenz in einem Sprachsignal variiert, stellt sich die Frage, wie die Gl¨ attung einzustellen ist, damit sie f¨ ur alle Analyseabschnitte zweckm¨ assig ist. Es ist leicht einzusehen, dass die Gl¨ attung bei der h¨ ochsten Grundfrequenz im Signal am st¨ arksten eingestellt werden muss, weil dort die Harmonischen im Spektrum am weitesten auseinander liegen. Wenn dort die Gl¨ attung ausreichend ist, dann ist sie es u ¨ berall. Das cepstral gegl¨ attete Spektrum weist das Problem des LPC-Spektrums nicht auf. Es tritt sogar eher das Gegenteil auf: Formanten hoher G¨ ute werden eher zu breit oder verschwinden manchmal ganz, wie dies beim 1. Formanten im Beispiel von Abbildung B.22 der Fall. B.6.2.6 Interpolation des wirklichen Spektrums Wie im Abschnitt B.6.2.3 erw¨ ahnt wird, kann man die spektrale Enveloppe ermitteln, indem das wirkliche Spektrum in geeigneter Weise interpoliert wird. Voraussetzung ist aber, dass zuerst die unechten spektralen Maxima eliminiert werden, wie dies in Abschnitt B.3.2 beschrieben ist. Aus den Erl¨ auterungen in den Abschnitten B.6.2.4 und B.6.2.5 geht hervor, dass die Form der Enveloppe vor allem im Bereich von Formanten hoher G¨ ute kritisch ist. Es ist deshalb nicht sinnvoll, eine lineare Interpolation anzuwenden, sonst kann sich bei schmalen Formanten, die praktisch nur aus einer Harmonischen gebildet werden, schon bei geringer Frequenzver¨ anderung die G¨ ute des Formanten stark ¨ andern und dadurch den betroffenen Laut undeutlich werden lassen.
456
B. Fourier-Analyse-Synthese von Sprachsignalen 20 [dB] 15 10 5 0
0
100
200
300
400 [Hz] 500
Abbildung B.23. Mittels Cosinus-Interpolation nach Formel (261) ermittelter Abschnitt der spektralen Enveloppe zwischen zwei benachbarten Punkten des wirklichen Spektrums
Es hat sich gezeigt, dass eine Cosinus-Interpolation des logarithmierten Spektrums (wie es auf einer dB-Skala dargestellt wird) g¨ unstig ist. Ein Kurvenassig aufeinander st¨ uck Si (f ), das die Enveloppe zwischen zwei frequenzm¨ folgenden Punkten Ym (i) = (ai , fi , pi )m und Ym (i+1) = (ai+1 , fi+1 , pi+1 )m des wirklichen Spektrums darstellt, wird also wie folgt beschrieben, wobei die ai in dB gegeben sind: . / (f − fi )π Si (f ) = ai + 0.5 (ai+1 −ai ) 1 − cos ur fi ≤ f ≤ fi+1 (261) , f¨ fi+1 − fi uck zwiEin solches St¨ uck der interpolierten Enveloppe ist f¨ ur i=2 (Kurvenst¨ schen der 2. und der 3. Frequenzkomponente) in Abbildung B.23 dargestellt. Werden alle Kurvenst¨ ucke zusammengef¨ ugt, dann entsteht die spektrale Enveloppe wie sie in Abbildung B.24 zu sehen ist. Diese Art die spektrale Enveloppe zu ermitteln, ist f¨ ur den vorliegenden Zweck, also die Formanten bei der Frequenzskalierung konstant zu halten, 20 [dB] 10 0 −10 −20 −30 −40
0
500
1000
1500
2000
2500
3000
3500 [Hz] 4000
Abbildung B.24. Spektrum eines Signalabschnittes des Lautes [i:] (punktiert) und mittels der Interpolation von Formel (261) gewonnene spektrale Enveloppe
B.6
Prosodische Ver¨ anderung im Kurzzeitspektrum
?
/
ZF fs /2
457
W
?
fs /2
Abbildung B.25. Bei der Skalierung des Originalspektrums (oben) mit ZF < 1 wird die
Bandbreite reduziert. Die entstandene L¨ ucke (unten) wird durch Skalieren der h¨ oheren Frequenzkomponenten in Richtung von fs /2 gef¨ ullt.
sehr gut geeignet. Sie ist jedoch nicht eine allgemeing¨ ultige Methode, die sich auf andere Anwendungsf¨ alle u bertragen l¨ a sst. ¨
B.6.3 Frequenzskalierung und Signalbandbreite Der zweite Nebeneffekt der Frequenzskalierung ist, dass die Bandbreite des Signals ver¨ andert wird, wobei die Ver¨ anderungen bis zu einer halben Oktave betragen k¨ onnen, in seltenen F¨ allen etwas mehr. Der Effekt und die n¨ otigen Massnahmen sind unterschiedlich, je nachdem, ob die Skalierung die Frequenzen erh¨ oht oder verringert. F¨ ur ZF > 1 entstehen in der Regel Frequenzkomponenten mit ZF fm,i > fs /2, die also das Abtasttheorem verletzen. Diese Komponenten sind zu eliminieren. Bez¨ uglich des H¨ oreindrucks ist dieses Vorgehen problemlos, weil die Leistung der eliminierten Komponenten in der N¨ ahe der oberen Bandgrenze sowieso relativ gering ist. Falls ZF < 1 ist, wird die Bandbreite des Signals verkleinert, was insbesondere bei Sprachsignalen mit geringer Bandbreite (z. B. mit Telefonbandbreite) und bei zeitlich ver¨ anderlicher Frequenzskalierung st¨ orend wirkt. Ein einfacher Ausweg besteht darin, die Komponenten in der Skalierungsl¨ ucke, also bernehmen. zwischen ZF fs /2 und fs /2 ins skalierte Spektrum zu u ¨ B.6.3.1 Kompensation der Bandbreitenreduktion F¨ ur stimmhafte Signale ist dieses oft angewandte Verfahren jedoch nicht optimal, weil das resultierende Signal bei hohen Frequenzen eine andere Periode aufweist als im skalierten Teil des Spektrums. Dies kann durch eine Skalierung verhindert werden, wie sie in Abbildung B.25 dargestellt ist. Dabei werden Komponenten, die in den Bereich {0 . . . ZF (m) fs /2} zu liegen, kommen nach ullen, werden die Formel 259 skaliert. Um die L¨ ucke {ZF (m) fs /2 . . . fs /2} zu f¨
458
B. Fourier-Analyse-Synthese von Sprachsignalen
0
0.02
0.04
0.06
0.08
[s]
0.1
0
0.02
0.04
0.06
0.08
[s]
0.1
Abbildung B.26. Beispiel einer Grundfrequenzver¨ anderung: Die Reduktion der Grund-
frequenz des Sprachsignalausschnitts oben auf 78 % (willk¨ urlich gew¨ ahlter Wert) ergibt den Signalausschnitt unten.
Komponenten mit f (k) > fs (1− 2Z1F ) gegen die halbe Abtastfrequenz skaliert
f˘i (m) = fs /2 − ZF (m) (fs /2 − fi (m)) .
(262)
Die Phasen dieser Komponenten m¨ ussen gem¨ ass Formel (259) modifiziert werden. Abbildung B.26 zeigt ein Beispiel f¨ ur ein Sprachsignal, dessen Grundfrequenz nach der beschriebenen Methode skaliert worden ist. Im Gegensatz zur Dauerver¨ anderung bewirkt die Grundfrequenzver¨ anderung, dass sowohl die Dauer als auch die Form der Grundperiode modifiziert werden. Die Modifikation der Form ist prim¨ ar eine Folge der Kompensation der Formantskalierung. B.6.3.2 Erl¨ auterungen zur Bandbreitenkompensation Die in Abschnitt B.6.3.1 beschriebene Methode zur Kompensation der reduzierten Bandbreite bedarf ein paar zus¨ atzlicher Erl¨ auterungen. Insbesondere stellt sich die Frage, wie man diese Kompensation wahrnimmt. F¨ ur Signale, die ganz oder zumindest im oberen Teil des Spektrums (zu den letzteren geh¨ oren z. B. die stimmhaften Frikative) rauschartig sind, wird selbstverst¨ andlich das Signal im kompensierten Bereich als Rauschen wahrgenommen. Nicht so klar ist der Fall bei stimmhaften Signalausschnitten. Diese weisen im Spektrum oft bis zur halben Abtastfrequenz (im vorliegenden Fall 4 kHz) aquidistante Frequenzkomponenten auf und beinhalten deshalb nur einen mi¨ nimalen Rauschanteil (durch ausstr¨ omende Atemluft erzeugt). Die Kompensation der Bandbreite darf den Rauschanteil nicht vergr¨ ossern. Es ist deshalb zu untersuchen, als was das Geh¨ or den kompensierten Teil des Spektrums wahrnimmt, wenn das urspr¨ ungliche Signal perfekt stimmhaft ist.
B.6
Prosodische Ver¨ anderung im Kurzzeitspektrum
459
0
0.01
0.02
0.03
0.04
[s]
0.05
0
0.01
0.02
0.03
0.04
[s]
0.05
Abbildung B.27. Signalausschnitt nach Formel (263), wobei oben die Phasen auf null,
unten auf zuf¨ allige Werte gesetzt sind (weitere Angaben, siehe Text)
In einem perfekt stimmhaften Signal hat der kompensierte Teil des Spektrums (im Zeitbereich) die Form:
s(t) = a0 sin(ω1 t+ϕ0 ) + · · · + ak sin(ω1 t+kω2 t+ϕk ) + · · · = sin(ω1 t)
ak cos(ϕk ) cos(kω2 t) − ak sin(ϕk ) sin(kω2 t)
k
+ cos(ω1 t)
ak cos(ϕk ) sin(kω2 t) + ak sin(ϕk ) cos(kω2 t)
k
= sin(ω1 t)
a’k sin(kω2 t+ϕ’k )
k
+ cos(ω1 t)
a”k sin(kω2 t+ϕ”k ) .
(263)
k
Das Signal setzt sich also aus zwei in ω2 harmonischen Reihen zusammen, die je mit der Frequenz ω1 multipliziert, also auf der Frequenzachse verschoben sind. Falls ω1 ein ganzzahliges Vielfaches von ω2 ist, entspricht s(t) einem periodischen Signal von dem mit einem Hochpassfilter die Frequenzkomponenten unterhalb von ω1 eliminiert worden sind. Diese Bedingung trifft bei s(t) im Allgemeinen jedoch nicht zu, d.h. die Frequenz-, Phasen- und Amplitudenwerte in Formel (263) k¨ onnen praktisch beliebig sein. Zwei Beispiele f¨ ur s(t) mit 9 Komponenten, ω1 = 2π 2765 Hz, ω2 = 2π 107 Hz und ak = 1 sind in Abbildung B.27 gezeigt. Beim oberen allig. Beispiel sind die Phasen ϕk = 0 gesetzt, beim unteren sind sie zuf¨ W¨ ahrend beim oberen Beispiel aufgrund des Oszillogramms des Signals eine Periode von T0 = 1/(107 Hz) = 9.35 ms zu vermuten ist, ist eine solche im
460
B. Fourier-Analyse-Synthese von Sprachsignalen
unteren Beispiel nicht offensichtlich. Die beiden Signale t¨ onen jedoch exakt gleich und perfekt “periodisch” mit T0 , d.h. es ist auch beim unteren Beispiel kein Rauschen h¨ orbar.8 Dies zeigt, dass diese Art der Bandbreitenkompensation sinnvoll ist. 8
In [31] wird zwar auf S. 22 einger¨ aumt, dass nicht nur aus Signalen, die im Zeitbereich periodisch sind, eine eindeutige Tonh¨ ohe herauszuh¨ oren ist. Das dazu aufgef¨ uhrte Beispiel des Glockenklanges d¨ urfte jedoch kaum dem hier vorliegenden Fall entsprechen. Insbesondere ist in [31] keine Erkl¨ arung zu finden, wieso das Geh¨ or ein Signal, wie es in Abbildung B.27 dargestellt ist, als Ton wahrnimmt.
Notationen A
Zustands¨ ubergangs-Wahrscheinlichkeitsmatrix eines HMM
A(z)
inverses Filter bei der linearen Pr¨ adiktion
B
Beobachtungswahrscheinlichkeitsmatrix eines HMM
D
Dimension eines Merkmalvektors
F0
Grundfrequenz oder Tonh¨ ohe eines Sprachsignals
Fk
k -ter Formant oder Frequenz des k -ten Formanten
G
Verst¨ arkungsfaktor im LPC-Sprachproduktionsmodell
H(z)
LPC-Synthesefilter
J
Anzahl der Filter einer Filterbank
K
Ordnung des Pr¨ adiktors (LPC-Analyse) oder Anzahl W¨ orter in einer Wortfolge
L
formale Sprache oder Sprache eines Spracherkenners
Lc
L¨ ange des bei der cepstralen Gl¨ attung verwendeten Fensters
Li
Sprachklasse i nach Chomsky (formale Sprachen)
M
Anzahl Codebuchvektoren, Partitionen oder Mischkomponenten
N
Anzahl Abtastwerte im Analysefenster oder Anzahl Zust¨ ande eines HMM (inklusive nicht-emittierende Zust¨ ande)
P (·); P˜ (·) P (X|λ)
Wahrscheinlichkeit einer diskreten Zufallsvariable; gesch¨ atzte Wahrscheinlichkeit Produktionswahrscheinlichkeit: Wahrscheinlichkeit, dass das DDHMM λ die Beobachtungssequenz X erzeugt, oder Likelihood uglich der Beobachtungssequenz X. des CDHMM λ bez¨
P (X, Q|λ) Verbundwahrscheinlichkeit der Beobachtungssequenz X und der Zustandssequenz Q, gegeben das HMM λ ˆ HMM-Zustandssequenz S q1 . . . qT S ; optimale ZustandsseQ; Q quenz S1 qˆ1 . . . qˆT SN
1
N
Qt1
Ausschnitt einer Zustandssequenz, also q1 q2 . . . qt
RiD
Partition i eines D-dimensionalen Raumes RD =
Si
Zustand i eines HMM
Sj
Ausgang des j -ten Filters f¨ ur die Berechnung des Mel-Cepstrums
S(ω)
Fouriertransformierte des Signals s(t)
S(k)
diskrete Fouriertransformierte des abgetasteten Signals s(n)
i
RiD
462
Notationen
S(z)
z-Transformierte von s(n)
T
L¨ ange einer Sequenz von Merkmalsvektoren oder Beobachtungen
V
Vokabular eines Spracherkenners: V = {v1 , v2 , . . . , v|V | }
|V |
Anzahl W¨ orter im Vokabular V oder Anzahl Wortmodelle im Spracherkenner
V∗
Menge aller Wortfolgen u ¨ ber dem Vokabular V
ˆ W; W
Wortfolge w1 w2 . . . wK ; wahrscheinlichste Wortfolge
W[i]
i-te Wortfolge aus einer Menge von Wortfolgen
W1k
Teil einer Wortfolge, also w1 . . . wk
X
Beobachtungssequenz x1 x2 . . . xT
Xt1
Anfang einer Beobachtungssequenz, also x1 x2 . . . xt
X
Satz von S Beobachtungssequenzen: {X1 , X2 , . . . , XS }
Δct (m)
delta-cepstraler Koeffizient m zum Zeitpunkt t
ΔΔct (m)
delta-delta-cepstraler Koeffizient m zum Zeitpunkt t
Λ
Gesamtheit der Parameter aller HMM λ1 , λ2 , . . . eines Spracherkenners
˜ jk Σjk ; Σ
Kovarianzmatrix der Mischkomponente k im Zustand Sj ; gesch¨ atzte Kovarianzmatrix
Ψt (j)
Zeiger f¨ ur das Zur¨ uckverfolgen des optimalen Pfades im Zustand Sj zum Zeitpunkt t (Viterbi-Algorithmus)
aij ; a ˜ij
¨ Ubergangswahrscheinlichkeit vom Zustand Si zum Zustand Sj ; ¨ gesch¨ atzte Ubergangswahrscheinlichkeit
a(k)
k -ter Pr¨adiktorkoeffizient ˜ bj (k); bj (k) Beobachtungswahrscheinlichkeit des Symbols k im Zustand Sj eines DDHMM; gesch¨ atzte Beobachtungswahrscheinlichkeit bj (x); ˜bj (x) Beobachtungswahrscheinlichkeit des Vektors x im Zustand Sj eines CDHMM; gesch¨ atzte Beobachtungswahrscheinlichkeit ci
Codebuchpartition i
cjk ; c˜jk
Gewichtungsfaktor der Mischkomponente k im Zustand Sj eines CDHMM; gesch¨ atzter Gewichtungsfaktor
c(m)
cepstraler Koeffizient m
ct (m)
Cepstraler Koeffizient m zum Zeitpunkt t
c¯(m)
Mittelwert des cepstralen Koeffizienten m
Notationen
463
cˇt (m)
mittelwertfreier cepstraler Koeffizient m zum Zeitpunkt t
c˘(m)
m-ter Koeffizient des Mel-Cepstrums
d(x, y)
Distorsion oder Distanz zwischen den Vektoren x und y
e(n)
Pr¨ adiktionsfehlersignal
h(n)
Impulsantwort des LPC-Synthesefilters H(z)
ki
i-ter Reflexions- oder Parcor-Koeffizient
p(·)
Wahrscheinlichkeitsdichte (Likelihood)
qt
Zustand, in welchem sich das HMM zum Zeitpunkt t befindet
qˆt
Zustand des optimalen Pfades, in welchem sich das HMM zum Zeitpunkt t befindet (Element t der optimalen Zustandssequenz)
r(i)
i-ter Autokorrelationskoeffizient
s(n); s˜(n)
zeitdiskretes Sprachsignal; pr¨ adiziertes Sprachsignal
s¯(n)
mit einer Fensterfunktion multipliziertes Sprachsignal
var{·}
Varianz
w()
Fensterfunktion
xt
Beobachtungsvektor zum Zeitpunkt t
zi
Codebuchvektor i bzw. Zentroid der Partition i
α; αi
Gewichtungsfaktoren
αt (j)
Vorw¨ artswahrscheinlichkeit P (Xt1 , qt =Sj |λ) des HMM λ im Zustand Sj
βt (i)
R¨ uckw¨ artswahrscheinlichkeit P (XTt+1 |qt =Si , λ) des HMM λ im Zustand Si
γt (i)
A-posteriori-Zustandswahrscheinlichkeit P (qt =Si |X, λ), also die Wahrscheinlichkeit, dass das HMM zum Zeitpunkt t im Zustand Si ist, gegeben die Beobachtungssequenz X und das HMM λ
ξt (i, j)
A-posteriori-Zustands¨ ubergangswahrscheinlichkeit P (qt =Si , qt+1 =Sj |X, λ), also die Wahrscheinlichkeit, dass das HMM zum Zeitpunkt t im Zustand Si und zum Zeitpunkt t+1 im Zustand Sj ist, gegeben die Beobachtungssequenz X und das HMM λ
δt (i)
Viterbi-Wahrscheinlichkeit: Wahrscheinlichkeit des optimalen Pfades (Zustandssequenz) der zum Zeitpunkt t im Zustand Si endet
ε
Nullsymbol, Leersymbol oder leeres Wort
464
Notationen
ζt (j, k)
CDHMM: P (qt =Sj , xt →Njk |X, λ), also die Wahrscheinlichkeit, dass sich das CDHMM zum Zeitpunkt t im Zustand Sj befindet ur die Beobachtung xt zust¨ andig und die Mischkomponente cjk f¨ ist, gegeben die Beobachtungssequenz X und das CDHMM λ
ζt (k)
DDHMM: P (xt →ck |X, λ), also die Wahrscheinlichkeit, dass Cour die Beobachtung xt zust¨ andig ist, gegeben debuchklasse ck f¨ die Beobachtungssequenz X und das DDHMM λ
λ
diskretes oder kontinuierliches Hidden-Markov-Modell (HMM)
˜ jk μjk ; μ
Mittelwertvektor der Mischkomponente k im Zustand Sj eines CDHMM; Sch¨ atzwert
τ (i)
Set i gekoppelter HMM-Parameter
χt (i, j, k)
P (qt =Si , qt+1 =Sj , xt+1 →ck |X, λ), also die Wahrscheinlichkeit, dass das DDHMM zum Zeitpunkt t im Zustand Si , und zum ur Zeitpunkt t+1 im Zustand Sj ist, und die Codebuchklasse ck f¨ andig ist, gegeben die Beobachtungsdie Beobachtung xt+1 zust¨ sequenz X und das DDHMM λ
Glossar A-posteriori-Wahrscheinlichkeit Aufgrund von Beobachtungen ermittelte Wahrscheinlichkeit, auch empirische Wahrscheinlichkeit A-priori-Wahrscheinlichkeit Wahrscheinlichkeit eines Ereignisses aufgrund von Vorwissen, bevor irgendeine Beobachtung gemacht wird Affix An den Wortstamm angef¨ ugtes Morphem; Oberbegriff f¨ ur Pr¨ afix und Suffix, also die Morpheme vor bzw. nach dem Wortstamm Affrikate Die enge Verbindung eines Verschlusslautes mit dem homorganen Frikativ. In der deutschen Sprache gibt es drei Affrikaten: [p
466
Glossar
diese Realisierungen sind somit Allomorphe des Morphems {haus} (siehe auch Morphem, Morph). Allophon Die zu einem bestimmten Phonem geh¨ orenden Phone werden als Allophone dieses Phonems bezeichnet. So sind z.B. die Phone [t] und [th ] Allophone des Phonems /t/ (siehe auch Phonem, Phon). Aspirant Der Laut [h]. Er entsteht durch Luftturbulenzen in der Glottis. Baum-Welch-Algorithmus Auch Forward-Backward-Algorithmus genannt. Rekursives Verfahren, um eine Maximum-Likelihood-Sch¨ atzung der HMM-Parameter f¨ ur eine Menge von Beobachtungssequenzen zu erhalten. binaural Beide Ohren betreffend, z.B. binaurales H¨ oren CDHMM Hidden-Markov-Modell mit kontinuierlichen Wahrscheinlichkeitsverteilungen bzw. Wahrscheinlichkeitsdichten f¨ ur die Beobachtungen (engl. continuous mixture density HMM) cepstrale Gl¨ attung Gl¨ attung des Amplituden- oder des Leistungsdichtespektrums durch Anwendung eines cepstralen Fensters, welches die hohen “Quefrenzen” des zugeh¨ origen Cepstrums eliminiert. Cepstrum Inverse Fouriertransformierte des logarithmierten Fourierspektrums (das reelle Cepstrum wird aus dem logarithmierten Betragsspektrum ermittelt) Chart-Parser Ein Parser f¨ ur Grammatiken mit kontextfreien Regeln, der zwecks Effizienzverbesserung Teilanalysen in einer internen Datenstruktur speichert, der sogenannten Chart Codebuchvektor Bezeichnet bei einem Vektorquantisierer den Prototypvektor, der die jeweilige Partition repr¨ asentiert. DDHMM Hidden-Markov-Modell mit diskreten Wahrscheinlichkeitsverteilungen f¨ ur die Beobachtungen (engl: discrete density HMM) Deklination Formenabwandlung (Beugung) von Nomen, Adjektiven, Pronomen und Artikeln
Glossar
467
Delta-Cepstrum Das Delta-Cepstrum ergibt sich aus der Ableitung des zeitlichen Verlaufs der einzelnen cepstralen Koeffizienten. Distanzmass In einem Vektorraum definierte reellwertige Funktion, die zwei Vektoren eine Zahl zuordnet, die ein Mass f¨ ur deren Verschiedenheit darstellt. Distorsion Quantisierungsfehler, der bei der Vektorquantisierung durch das Ersetzen eines Vektors durch den entsprechenden Codebuchvektor entsteht. DTW Dynamische Zeitanpassung (engl. dynamic time warping); Verfahren f¨ ur den Vergleich von Sprachmustern, bei dem die Zeitachsen der Muster so lokal ¨ gestreckt und gestaucht werden, dass sich eine optimale Ubereinstimmung der Muster ergibt. Flexion Bildung verschiedener grammatischer Formen eines Wortes (Beugung), z.B. durch Anf¨ ugen von Endungen an Wortst¨ amme; Oberbegriff f¨ ur Deklination, Konjugation und Komparation (Adjektivsteigerung) Flexionsendung Sprachliches Element (Morphem), das bei der Flexion an das Ende des Wortstamms angef¨ ugt wird, z.B. Feldes, weitestem, lobst formale Sprache Eine formale Sprache ist eine i.a. unbeschr¨ ankte Wortmenge, die durch ein endliches formales System vollst¨ andig beschreibbar ist (vergl. Definition 6.1 Seite 140). Das System kann erzeugend (z.B. regul¨ are Grammatik) oder analysierend (z.B. endlicher Automat) sein. Formant Lokale Maxima des Leistungsdichtespektrums des Sprachsignals werden in der Phonetik als Formanten F1 , F2 , F3 etc. bezeichnet. Diese spektralen Maxima r¨ uhren von Resonanzen des Vokaltraktes her und sind besonders bei Vokalen ausgepr¨ agt vorhanden. Ein Formant wird mit den Parametern Mittenfrequenz (oder Formantfrequenz), Bandbreite (oder G¨ ute) und Amplitude beschrieben. ur die Formantfrequenzen Die Bezeichnungen F1 , F2 , F3 etc. werden oft auch f¨ verwendet. F¨ ur die Formantfrequenzen eines Lautes gilt: F1 < F2 < F3 etc. Der tiefste Formant oder die tiefste Mittenfrequenz ist also stets F1 . Frikative Reibelaute, auch Zischlaute; entstehen durch Luftturbulenzen an Engstellen des Vokaltraktes ([s], [S]), [¸c] etc.))
468
Glossar
Genus Grammatisches Geschlecht von W¨ ortern und syntaktischen Konstituenten (im Deutschen Femininum, Maskulinum und Neutrum) Glottalverschluss ¨ Laut, der durch abruptes Offnen eines Verschlusses der Stimmlippen entsteht, wie vor Vokalen am Wortanfang (z.B. “Achtung” ["ŠaxtUN]). In [7] wird der Glottalverschluss mit [Š] bezeichnet, in den meisten anderen Publikationen mit [P]. Glottis Stimmritze, Spalt zwischen den Stimmlippen Stimmb¨ ander Grammatik Im Zusammenhang mit formalen Sprachen wird unter einer Grammatik G eiur welche die Menge ne erzeugende Beschreibung einer Sprache L verstanden, f¨ der ableitbaren W¨ orter L(G) = L ist. Im Zusammenhang mit nat¨ urlichen Sprachen wird grunds¨ atzlich jede Form einer systematischen Sprachbeschreibung als Grammatik bezeichnet. In diesem Buch wird der Begriff Grammatik f¨ ur eine Menge von Produktionsregeln (im Sinne einer Chomsky-Grammatik) gebraucht, welche nur NichtTerminalsymbole und sogenannte Pr¨ aterminale enthalten. Zu einer solchen nat¨ urlichsprachlichen Grammatik wird ein Lexikon ben¨ otigt, also eine Sammlung von lexikalischen Produktionen (vergl. Lexikon). Graph Ein Graph (Buchstabe) ist eine konkrete Realisierung eines Graphems. So sind z.B. “a” und “b” Graphen, die zu verschiedenen Graphemen geh¨ oren, n¨ amlich zu den Graphemen a bzw. b. Hingegen sind “a”, “A” und “a” Realisierungen desselben Graphems a (siehe auch Graphem, Allograph). Graphem Ein Graphem ist die kleinste bedeutungsunterscheidende Einheit der schriftlichen Sprache, analog zum Phonem in der lautlichen Sprache. So ergibt sich z.B. durch den Vergleich der deutschen W¨ orter “taufen” und “laufen”, dass zwei Grapheme t und l existieren. Eine konkrete Realisierung eines Graphems ist ein Graph (Buchstabe). Ein Graphem kann einen oder mehrere Graphen umfassen, die Allographen dieses Graphems (siehe auch Graph, Allograph). Hidden-Markov-Modell (HMM) Zwei gekoppelte Zufallsprozesse, von denen der erste ein verdeckter MarkovProzess ist, dessen Zust¨ ande einen zweiten Zufallsprozess steuern. homorgan Homorgane Laute haben denselben Artikulationsort, z.B. [b] und [p].
Glossar
469
Kasus Grammatischer Fall von W¨ ortern und syntaktischen Konstituenten (im Deutschen Nominativ, Genitiv, Dativ und Akkusativ) Koartikulation Beeinflussung der Aussprache eines Lautes durch seine Nachbarlaute Kompositum zusammengesetztes Wort, z.B. das Wort “Haust¨ ure”, das aus den Teilen “Haus” und “T¨ ure” zusammengesetzt ist (Plural: Komposita) Konjugation Formenabwandlung des Verbs nach Person (1., 2. und 3. Person), Zahl (Singular, Plural), Zeit (Pr¨ asens, Perfekt etc.) und Modus (Indikativ, Imperativ und Konjunktiv) Konstituente Einheit der Wort- und Satzstruktur; Konstituenten k¨ onnen atomar oder komplex sein. Eine atomare Konstituente umfasst genau ein Morph oder ein Wort, je nachdem, ob es sich um eine morphologische oder um eine syntaktische Konstituente handelt. Komplexe Konstituenten bestehen aus einer oder mehreren atomaren oder komplexen Konstituenten. Beispiele f¨ ur komplexe Konstituenten sind Nominalgruppen, Pr¨ apositionalgruppen, Adjektivgruppen (siehe auch Grammatik, Lexikon) Kurzzeitanalyse Abschnittweise Analyse eines Signals. Ein Abschnitt wird durch die Multiplikation des Signals mit einer Fensterfunktion f¨ ur die Analyse ausgew¨ ahlt. Aufeinanderfolgende Abschnitte sind meistens u ¨ berlappend. Lexem Lexikalische Einheit; je nach Art des Lexikons ist ein Lexem ein Morph oder ein Wort (siehe auch Lexikon). Lexikon Ein Lexikon ist eine Sammlung von Lexikoneintr¨ agen, die in diesem Buch die Form von DCG-Regeln haben und deshalb auch lexikalische Produktionen genannt werden. Eine lexikalische Produktion f¨ uhrt genau ein Pr¨ aterminal in ein Lexem u ¨ ber (z.B. N(nom,m,sg) → hund). Eine lexikalische Produktion hat also einen Regelkopf, der ein Pr¨ aterminal und gewisse Attribute umfasst, und einen Regelk¨ orper mit einem Lexem in graphemischer und/oder phonetischer Repr¨ asentation. Sind die Lexeme Morphe, dann spricht man von einem Morphlexikon, sind es Wortformen, dann handelt es sich um ein Vollformenlexikon.
470
Glossar
Lineares HMM HMM, das vom Zustand Si nur in den Zustand Si oder Si+1 u ¨ bergehen und insbesondere keine Zust¨ ande u ¨ berspringen kann. Linguistik Sammelbegriff f¨ ur alle Wissenschaften, die sich mit nat¨ urlichen Sprachen besch¨ aftigen LPC-Spektrum ¨ Betrag der Ubertragungsfunktion des Synthesefilters H(z) Mel-Cepstrum Cepstrum, f¨ ur dessen Berechnung die Frequenzskala des Spektrums zuerst in die Mel-Skala transformiert wird. Mel-Skala Skala f¨ ur die subjektiv empfundene Tonh¨ ohe, auf welcher der wahrgenommene H¨ ohenunterschied zwischen zwei T¨ onen abgelesen werden kann. MFCC Abk¨ urzung f¨ ur die Koeffizienten des Mel-Cepstrums (engl. mel frequency cepstral coefficients) Sprachmerkmal, das auf dem Mel-Spektrum basiert und das gegl¨ attete Kurzzeitspektrum eines Analyseabschnittes repr¨ asentiert Minimalpaaranalyse Test, mit dem f¨ ur eine Sprache der Satz von Phonemen (das Phonemsystem) ermittelt werden kann. Die Phonmenge Ps = {P1 , P2 , . . . , Pn } entspricht dann dem Phonemsystem dieser Sprache, wenn es f¨ ur zwei beliebige Phone Pa und Pb aus der Menge Ps ein Wortpaar gibt, das sich nur in diesen beiden Phonen unterscheidet und die beiden W¨ orter semantisch verschieden sind. Modus Eine grammatische Kategorie des Verbs; Aussageweise (im Deutschen Indikativ, Konjunktiv und Imperativ) Morph Ein Morph ist eine konkrete Realisierung eines Morphems. Jedes Morph hat mindestens je eine graphemische und phonemische bzw. phonetische Realisaab Morphe in graphemischer Repr¨ asentation, tion. So sind z.B. haus und g¨ die zu den Morphemen {haus} bzw. {geb} geh¨ oren (siehe auch Morphem, Allomorph). Morphem Ein Morphem ist die kleinste bedeutungstragende Einheit einer Sprache. So sind z.B. {haus}, {tisch} und {gross} deutsche Morpheme. Diese werden auch als lexikalische oder freie Morpheme bezeichnet, im Unterschied zu gebundenen Morphemen wie Pr¨ afix-, Suffix-, Flexionsmorpheme etc., die nur in Verbindung mit einem freien Morphem vorkommen. Ein Morphem ist ein
Glossar
471
Abstraktum und hat graphemische und phonemische bzw. phonetische Realisationen. Zum Morphem {tisch} geh¨ oren beispielsweise die Realisationen tisch und /tIS/ bzw. [th IS] (siehe auch Morph, Allomorph). Morphologie In der Sprachwissenschaft: Formenlehre; Wissenschaft von den Formver¨ anderungen, denen die W¨ orter durch Deklination oder Konjugation unterliegen Numerus Grammatische Zahl von W¨ ortern und syntaktischen Konstituenten (im Deutschen Singular und Plural) Nyquist-Frequenz Obere Frequenzgrenze eines bandbegrenzten Signals Parser Ein Parser ist ein Computer-Programm, welches f¨ ur eine Symbolsequenz w diejenige Folge von Regeln aus einer gegebenen Grammatik G bestimmt, mit asst. Damit l¨ asst sich indirekt der sich w aus dem Startsymbol S ableiten l¨ das sogenannte Wortproblem entscheiden. Partition Bei der Vektorquantisierung wird der D-dimensionale Wertebereich (bzw. Raum) RD in eine Anzahl Teilbereiche RiD aufgeteilt, die als Partitionen bezeichnet werden, wobei RD = i RiD sein soll. Periodogramm Sch¨ atzung des Leistungsdichtespektrums aus der diskreten Fouriertransformierten Perzeption Die sinnliche Wahrnehmung oder Empfindung Phon Ein Phon (Laut) ist eine konkrete Realisierung eines Phonems. So sind z.B. [a] und [t] zwei Phone, die zu den Phonemen /a/ und /t/ geh¨ oren. [t] und [th ] (nichtaspirierte und aspirierte t-Variante) hingegen sind Phone, die zum gleichen deutschen Phonem /t/ geh¨ oren. Je nach gew¨ unschter Feinheit der Lautklassierung ergibt sich f¨ ur eine Sprache eine mehr oder weniger grosse Anzahl von Phonen. So geh¨ oren z.B. zum deutschen Phonem /r/ haupts¨ achlich eine vokalische und eine konsonantische Lautrealisierung, [5] bzw. [r]. Bei feinerer Analyse kann bei der konsonantischen Variante auch noch zwischen Reibe-R, Zungenspitzen-R und Z¨ apfchen-R unterschieden werden, wobei die beiden letzten ein- oder mehrschl¨ agig sein k¨ onnen (siehe auch Phonem, Allophon).
472
Glossar
Phonem Das Phonem ist die kleinste Einheit der lautlichen Sprache, die Bedeutungen unterscheidet. Das Phoneminventar einer Sprache wird durch Minimalpaaranalyse ermittelt. So haben z.B. die deutschen W¨ orter “Laus” /la<us/ und “Maus” /ma<us/ verschiedene Bedeutungen und unterscheiden sich lautlich an ihrem Anfang, woraus sich ergibt, dass die beiden Phoneme /l/ und /m/ existieren (siehe auch Phon, Allophon). Phonemsystem Gem¨ ass [16] umfasst das Phonemsystem des Deutschen 39 Phoneme, n¨ amlich 19 Vokalphoneme (16 Einzelvokale und 3 Diphthonge) und 20 Konsonantenphoneme (vergl. Abschnitt A.2). Phonetik Teilgebiet der Sprachwissenschaft, das sich mit den Sprachlauten besch¨ aftigt und die Vorg¨ ange beim Sprechen untersucht; Lautlehre, Stimmbildungslehre Phonologie Die Phonologie ist ein Teilgebiet der Linguistik, das sich mit der bedeutungsm¨ assigen Funktion der Laute besch¨ aftigt. Ein Ziel der Phonologie ist, das Phoneminventar einer Sprache zu erstellen. Phrasierung Das Einteilen eines Satzes in Phrasen (Sprechgruppen) sowie das Festlegen der Phrasentypen und der St¨ arke der Phrasengrenzen. Auch das Resultat dieses Prozesses, also die Phraseneinteilung, wird als Phrasierung bezeichnet. Plosive Verschlusslaute; entstehen durch abruptes Freigeben des kurzzeitig unterbrochenen Luftstromes ([g], [k], [t] etc.) Pr¨ afix Vor dem Wortstamm stehendes Morphem (Vorsilbe), z.B. Auf gehen, Beileid, untreu (vergl. auch Affix, Suffix) Pr¨ aterminal In einer nat¨ urlichsprachlichen Grammatik bezeichnet man die Wortarten (z.B. N, V, Adj, also Nomen, Verben, Adjektive etc.) als Pr¨ aterminale. Sie bilden die Schnittstelle zwischen Grammatik und Lexikon. Jeder Lexikoneintrag (bzw. jede lexikalische Produktion) spezifiziert den Zusammenhang zwischen einem Pr¨ aterminal und einem Lexem (siehe auch Lexikon). Prosodie Die suprasegmentalen Aspekte der Lautsprache, die sich in der Sprechmelodie und im Sprechrhythmus ¨ aussert. Die linguistische Funktion der Prosodie ist zu markieren und zu gliedern. Die im Sprachsignal messbaren physikalischen
Glossar
473
prosodischen Gr¨ ossen sind der zeitliche Verlauf der Grundfrequenz und der Intensit¨ at sowie die Dauer der Laute und der Pausen. Satzakzentuierung Verteilung der Akzente auf der Satzebene segmentale Ebene die Ebene der Laute; gesprochene Sprache wird als Abfolge von Lautsegmenten betrachtet (im Gegensatz zur suprasegmentalen Ebene, wo die Betrachtung laut¨ ubergreifend ist) Silbenkern Eine Silbe setzt sich zusammen aus einem fakultativen Silbenansatz, dem obligatorischen Silbenkern (Nukleus) und dem fakultativen Silbenkoda. Silbenansatz und -koda umfassen keinen, einen oder mehrere Konsonanten. Als Silbenkern kann ein Vokal oder ein Diphthong stehen. silbisch Konsonanten Wird in Endsilben mit Schwa als Silbenkern durch Verschleifen das Schwa weggelassen, dann tritt der nachfolgende Konsonant als Silbentr¨ ager auf, d.h. er wird silbisch. Silbische Konsonanten treten nur bei Schwa-Tilgung auf. So wird beispielsweise das zweisilbige Wort “baden” mit der Normalaussprache ["ba:d@n] durch Auslassen des Schwas zu ["ba:dn]. Hier ist also [n] der Silben" " ager auch [l] und [m] in tr¨ ager. Nebst [n] kommen im Deutschen als Silbentr¨ " " " Frage z.B. in ["se:gl] oder in ["gro:sm]. " " skalare Quantisierung Quantisierung von Gr¨ ossen mit eindimensionalem Wertebereich, im Gegensatz zur Quantisierung von Vektoren. Eine skalare Quantisierung liegt auch dann vor, wenn von Vektoren jede Dimension einzeln quantisiert wird. Spracherkennung Automatisches Ermitteln des textlichen Inhaltes eines Sprachsignals Sprachsynthese Umsetzen eines Textes in eine ad¨ aquate lautsprachliche Repr¨ asentation, also in ein Sprachsignal Startsymbol Symbol, aus dem sich unter Anwendung beliebiger Produktionsregeln der asst. formalen Grammatik G jedes Wort der Sprache L(G) ableiten l¨ Suffix Sprachliches Element (Morphem), das hinter dem Wortstamm steht, z.B. Ewigkeit, sprechen, sch¨ onere (vergl. auch Affix, Pr¨ afix) suprasegmentale Ebene Gesamtheit der laut¨ ubergreifenden Aspekte der Lautsprache (siehe Prosodie)
474
Glossar
SVOX Name des an der ETH Z¨ urich nach den in diesem Buch beschriebenen Konzepten entwickelten Sprachsynthesesystems Tempus Eine grammatische Kategorie des Verbs; Zeitform (Pr¨ asens, Pr¨ ateritum, Perfekt, Plusquamperfekt, Futur I und II) Tonheit subjektiv empfundene Tonh¨ ohe (vergl. auch Mel-Skala) Transkription Unter dem Begriff Transkription wird hier die Umsetzung eines Textes in eine abstrakte, phonologische Darstellung des entsprechenden Sprachsignals verstanden. Vektorquantisierung osse durch Unterteilung des WerteQuantisierung einer D-dimensionalen Gr¨ bereiches in M Teilbereiche, die als Partitionen bezeichnet werden. Als quantisierter Wert der Gr¨ osse wird die Nummer der Partition m = 1, . . . , M verwendet. Vibranten Schwinglaute, d.h. Laute bei denen die Zungenspitze (vibriertes [r]) oder das Halsz¨ apfchen schwingt (gerolltes [ö]) Viterbi-Algorithmus Algorithmus, der (unter anderem) f¨ ur die Suche der optimalen Zustandssequenz in einem HMM zu einer gegebenen Beobachtungssequenz verwendet wird. Vokaltrakt Gesamtheit der Hohlr¨ aume zwischen Kehlkopf und Lippen, also Rachen, Mund- und Nasenraum Wortakzentuierung Verteilung der Akzente auf der Wortebene: Eine Silbe tr¨ agt den Hauptakzent; eine oder mehrere Silben k¨ onnen Nebenakzente tragen; die u ¨ brigen Silben sind unbetont. Zentroid Vektor mit der kleinsten mittleren Distanz zu jedem Vektor aus einer gegebenen Menge von Vektoren.
Literaturverzeichnis [1] A. Beutelsbacher. Kryptologie. Vieweg (ISBN 3-528-08990-3), 1987. [2] M. Bierwisch. Regeln f¨ ur die Intonation deutscher S¨ atze. Studia Grammatica, VII:99–201, 1966. [3] C. M. Bishop. Neural Networks for Pattern Recognition. Oxford University Press, 1995. [4] Cambridge University (S. Young et al.). HTK V2.2.1: Hidden Markov Toolkit, 1999. [5] W. F. Clocksin and C. S. Mellish. Programming in Prolog. Springer Verlag, Berlin, 1981. [6] C. Coker. A model of articulatory dynamics and control. Proceedings of the IEEE, 64(4):452–460, April 1976. [7] Duden “Aussprachew¨ orterbuch”, 3. Auflage. Bibliographisches Institut. Mannheim, Leipzig, Wien, Z¨ urich, 1990. [8] G. Fant. Acoustic Theory of Speech Production. The Hague: Mouton & Co, 1960. [9] M. Fr¨ ohlich, H. Warneboldt und H. W. Strube. Ber¨ ucksichtigung des subglottalen Systems bei der artikulatorischen Sprachsynthese. In DAGA-Tagungsband, S. 1305–1308, 1994. [10] IPA. Handbook of the International Phonetic Association. Cambridge University Press, 1999. [11] ITU-T Recommendation G.711. Pulse Code Modulation (PCM) of Voice Frequencies, 1972. [12] ITU-T Recommendation G.721. 32 kbit/s Adaptive Differential Pulse Code Modulation (ADPCM), 1984. [13] W. von Kempelen. Mechanismus der menschlichen Sprache nebst Beschreibung einer sprechenden Maschine. Faksimile der Ausg. 1791 mit einer Einleitung von Brekle & Wildgen, Stuttgart-Bad Cannstatt: Frommann, 1970. ¨ [14] P. Kiparsky. Uber den deutschen Akzent. Studia Grammatica, VII:69–98, 1966. [15] D. H. Klatt. Review of text-to-speech conversion for English. Journal of the Acoustical Society of America, 82(3):737–793, September 1987. [16] K. J. Kohler. Einf¨ uhrung in die Phonetik des Deutschen. 2., neubearbeitete Auflage, Erich Schmidt Verlag, Berlin, 1995. [17] S. Naumann und H. Langer. Parsing. Teubner (ISBN 3-519-02139-0), Stuttgart, 1994.
476
Literaturverzeichnis
[18] A. Oppenheim and R. Schafer. Discrete-Time Signal Processing. Prentice Hall, Englewood Cliffs, 1989. [19] F. Pereira and D. Warren. Definite clause grammars for language analysis – a survey of the formalism and a comparison with augmented transition networks. Journal ofArtificial Intelligence, 13:231–278, 1980. [20] F. C. Pereira and S. M. Schieber. Prolog and Natural-Language Analysis. CSLI Lecture Notes; No. 10. Center for the Study of Language and Information, Leland Stanford Junior University, 1987. [21] B. Pfister. Prosodische Modifikation von Sprachsegmenten f¨ ur die konkatenative Sprachsynthese. Diss. Nr. 11331, TIK-Schriftenreihe Nr. 11 (ISBN 3 7281 2316 1), ETH Z¨ urich, M¨ arz 1996. [22] L. Rabiner and B.-H. Juang. Fundamentals of Speech Recognition. Prentice Hall, 1993. [23] L. R. Rabiner and R. W. Schafer. Digital Processing of Speech Signals. Prentice-Hall, Inc., Englewood Cliffs, New Jersey, 1978. [24] M. Richard and R. Lippmann. Neural network classifiers estimate Bayesian a posteriori probabilities. Neural Computation, 3(4):461–483, 1991. [25] H. Romsdorfer and B. Pfister. Phonetic labeling and segmentation of mixed-lingual prosody databases. In Proceedings of Interspeech 2005, pages 3281–3284, Lisbon (Portugal), September 2005. [26] P. Sander, W. Stucky und R. Herschel. Automaten, Sprachen und Berechenbarkeit. Teubner (ISBN 3-519-12937-X), Stuttgart, 1995. [27] M. R. Schroeder. A brief history of synthetic speech. Speech Communication, 13:231–237, 1993. [28] H. Speer. Deutsches Rechtsw¨ orterbuch. Heidelberger Akademie der Wissenschaften (Hrsg.), Verlag J.B. Metzler, 1998. [29] S. Stevens, J. Volkmann, and E. Newman. A scale for the measurement of the psychological magnitude pitch. Journal of the Acoustical Society of America, 8(3):185–190, 1937. [30] C. Traber. SVOX: The Implementation of a Text-to-Speech System for German. PhD thesis, No. 11064, Computer Engineering and Networks Laboratory, ETH Zurich, TIK-Schriftenreihe Nr. 7 (ISBN 3 7281 2239 4), March 1995. [31] M. Zollner und E. Zwicker. Elektroakustik. Springer Verlag, 1993. [32] E. Zwicker and H. Fastl. Psychoacoustics. Springer-Verlag, Berlin, second edition edition, 1999.
Index A-posteriori-Wahrscheinlichkeit 120, 124, 339, 465 A-priori-Kenntnisse 369 A-priori-Wahrscheinlichkeit 329, 465 Ableitung 141 Ableitungsbaum 144, 145, 152 Ableitungsfolge 141, 144, 145 Abtasttheorem 40 Affix 465 Affrikate 15, 401, 465 AKF siehe Autokorrelation Aktivierungsfunktion 415 akustisch-phonetische Ebene 11 Akzentuierung 194, 210, 215, 465 Satzakzentuierung 228 Wortakzentuierung 228 Algorithmus Backward-Algorithmus 122 Baum-Welch-Algorithmus 123 Forward-Algorithmus 118 Forward-Backward-Algorithmus 123 Viterbi-Algorithmus 120 Aliasing 39, 465 allgemeine Grammatik (Typ 0) 142 allgemeine Sprachen 150 Allograph 465 Allomorph 207, 218, 466 allomorphische Varianten 218, 227 Allophon 9, 466 Alphabet 139 alveolare Laute 15 Analyse homomorphe Analyse 89 Kurzzeitanalyse 59 LPC-Analyse 77 morphologische 213, 215 morphosyntaktische 215 semantische 214 syntaktische 214 analysierendes System 140 Anfangs- und Endpunktdetektion 320
Anti-Aliasing-Filter 41 Artikulation 14 Artikulationsart 15 Artikulationsort 15 Artikulatoren 13, 20 artikulatorischer Ansatz 238 ASCII 401, 402 Aspirant 466 Auslautverh¨ artung 209 Aussprachevarianten 209 Autokorrelation 73 Autokorrelationsmethode siehe LPC-Analyse Automat deterministischer 153, 156 endlicher 152 nichtdeterministischer 153, 156 Transduktor 182 Backing-off 379 Backpropagation-Algorithmus 418 Backward-Algorithmus 122, 129 Bandbegrenzungsfilter 39 Baum-Welch-Algorithmus 123, 129, 466 Beobachtungen diskrete 112 kontinuierliche 112 Beobachtungssequenz 109 partielle 118, 120 Beobachtungswahrscheinlichkeiten 112 Bigram-Sprachmodell 376 bilabiale Laute 15 binaural 466 Bottom-up-Analyse 161, 164 Breitbandspektrogramm 48 Breitensuche 161 CDHMM siehe Hidden-Markov-Modell, 466 cepstrale Distanz 99 cepstrale Gl¨ attung 92, 466
478
Index
cepstraler Mittelwert 97 cepstrales Fenster 92 Cepstrum 90, 466 Delta-Cepstrum 96 DFT-Cepstrum 90 Mel-Cepstrum 94 Chart-Parser 466 Chart-Parsing 162, 178 Chomsky-Grammatik 140 Chomsky-Hierarchie 142 Codebuch 100, 101, 104 Codebuchvektor 100, 101, 466 Codierung Datenchiffrierung 31 Kanalcodierung 31 Quellencodierung 30 critical band 94 CTS-Synthese 27 Datenchiffrierung 31 Datenrate 32 Dauersteuerung 256 linearer Ansatz 260 mit neuronalem Netz 263 DCG siehe Definite clause grammar DDHMM siehe Hidden-Markov-Modell, 466 Decodierungsproblem siehe grundlegende HMM-Probleme, 120 Definite clause grammar 172, 223 Ableitung 175 Unifikation 175 Deklination 266, 466 Delta-Cepstrum 96, 467 Deltamodulation 34 deterministischer Automat 153, 156 DFT si