|

Technology:
Methoden
der Sprachanalyse
Now
you’re Talking!
||| Oliver Weiss
Jetzt wird's
technisch: Wie funktioniert eigentlich Sprachverarbeitung? Der Autor stellt
grundlegende Methoden für die Analyse im Zeitbereich, im Frequenzbereich und im
"Cepstral"-Bereich vor. Im Visier sind Bonobos, Wale und, natürlich,
Menschen. |
 |
| Speech
Analysis Methods: Article on fundamental frequencies analysis,
Fourier analysis, and cepstral analysis. |
| W |
 |
arum klingt ein Mann eigentlich wie ein Mann und
nicht wie eine Frau? Und worin unterschieden sich ihre Lautäußerungen von
denen von Schimpansen oder Walen?
Und warum eigentlich hört es sich anders an,
wenn jemand normal spricht, droht oder brüllt? Welche Informationen sind in
einem gesprochenen Satz oder auch nur einer kurzen Lautäußerung verborgen, und
wie bekommt man sie heraus?
Der jahrzehntealte Traum der Sprachanalytiker,
Nachrichtentechniker, Physiker, Phonetiker, Akustiker, Linguisten und
Informatiker sieht so aus: Laßt uns herausfinden, wie Sprache funktioniert,
damit wir diese Informationen häppchenweise an Rechenmaschinen verfüttern
können, die uns eines Tages genauso verstehen wie wir uns untereinander! Hurra!
 |
|
|
Abb. 1. Eine Sinuskurve ist eine Sinuskurve ist eine
Sinuskurve - im Zeitbereich wie im Frequenzbereich. (A = Amplitude, T0 =
Periodendauer, f0 = Frequenz) |
|
|
|

|
Eine tolle Idee. Schon Anfang der Sechziger Jahre
schien das Problem kurz vor der Lösung. Doch von wegen Hurra: Denn leider schoben sich immer wieder
neue Erkenntnisse über die Komplexität der menschlichen (und übrigens tierischen)
Sprache in den Weg, die die Dinge komplizierten machten als zunächst
angenommen.
Und auch die Rechenmaschinen machten viel schneller schlapp als man
gehofft hatte. Es ist aber auch so verdammt viel Information in so einem
Sprachsignal verborgen!
Lustigerweise haben sich die Algorithmen zur
Analyse von Sprache in all den Jahrzehnten gar nicht so wesentlich verändert:
Frequenzanalyse, Dynamic Mapping, Statistische Verfahren, Hidden-Markov-Modelle
oder Neuronale Netze, wie
sie alle heißen mögen.
Allerdings sind die Computer besser geworden, die den alten Algorithmen neues
Leben einhauchen.
I
scream,
you scream
|

|
|
|
Abb. 2. Eine komplexes Zeitsignal ist die Summe aus
unendlich vielen Sinuskurven. Sagt Jean Baptiste Joseph Fourier. |
|

|
|
Wie analysiert man Sprache? Antwort: Indem man
das Signal in lauter kleine Stücke häckselt und es sich Stück für Stück zu
Gemüte führt. Ein einfaches Signal, z.B. eine Sinuskurve, wenn man sie sich am
Oszilloskop ansieht, besteht ja eigentlich nur aus zwei Komponenten: der
Amplitude (der Spannungsausschlag auf der Y-Achse) und der Frequenz (dem
Reziproken der Periodendauer von Peak zu Peak).
Monsieur Jean Baptiste Joseph Fourier fand
im 18. Jahrhundert heraus, daß
sich jedes beliebige Signal, also auch solche, die wesentlich komplexer sind als
unsere Sinuskurve, durch die Summe aus unter Umständen unendlich vielen
einzelnen Sinus- und Cosinuskurven darstellen läßt (Cosinuskurven sind nichts
anderes als entlang der Zeitachse um eine halbe Periodendauer verschobene
Sinuskurven).
Nun kann man sich vorstellen, daß die Analyse
eines komplexes Signals im Zeitbereich - also mit einer zahllosen Menge von
Sinuskurven mit unterschiedlichen Amplituden und Frequenzen - ein ziemlich
mühsames Unterfangen ist.
Viel einfacher, so fand Jean-Baptiste Joseph Fourier heraus, ist das,
wenn man sich die Kurven im "Frequenzbereich" ansieht, und das geht so: Eine Sinuskurve
der Amplitude A und Periodendauer T0 läßt sich im
wahnsinnig einfach darstellen, wenn man statt den Koordinatenachsen A
(Amplitude) und t (Zeit) die Achsen A und f (Frequenz) verwendet - diese
Darstellung nennt man den "Frequenzbereich". Denn hier stellt sich die
Sinuskurve lediglich als ein kurzer Ausschlag der Höhe A bei der Frequenz f0 =
1/T0 dar (Abb. 1).
|
Auch die Mustererkennung
und Bild-
verarbeitung nach dem Prinzip der Fourier-
Transformation.
|
Diese Übertragung des Signals aus dem
Zeitbereich in den Frequenzbereich (auch Spektralbereich genannt) bezeichnet man
als "Fourier-Transformation". Die Fourier-Transformation des
Zeitsignals nennt man "Spektrum". Digital - also rechnerunterstützt -
realisiert man das
mit der sogenannten "Fast Fourier Transformation", kurz FFT.
Übrigens funktioniert auch die Mustererkennung
und Bildverarbeitung nach dem Prinzip der Fourier-Transformation - nur eben auf
zwei Dimensionen übertragen. Die verschiedenen Filter bei den
Bildverarbeitungsprogrammen von Photoshop oder Corel etwa arbeiten mit
Fourier-Transformationen. Und auch die
Analysemethoden für alle anderen ein- oder zweidimensionalen Signale wie bei
UMTS, dem Brummen beim Auto, bei MP3-Files von Britney Spears, bei
MPEG-Pornovideos oder bei den Klingeltönen von Handys sind mehr oder weniger
dieselben.
Grundsätzlich gibt es zwei
verschiedene Methoden der Analyse eines Sprachlauts: Entweder wird das Signal im
Zeitbereich untersucht; dabei schaut man sich also den Amplitudenverlauf über
der Zeit an. Oder man analysiert das Signal im Frequenzbereich, also mithilfe
von Fourier-Transformationen. Natürlich gibt es alle möglichen Mischformen -
zum Beispiel die Cepstralanaylse, bei der Zeit- und Frequenzanalysen miteinander
kombiniert werden. Im folgenden werden die Analysemethoden im Zeit-, im
Frequenz- und im Cepstralbereich ausführlich vorgestellt; außerdem werden
Methoden zur Ermittlung der Anregungsfrequenz eines Sprachsignals
(Grundfrequenz) erläutert.
Fensterln
für Anfänger
Sprache kann signaltheoretisch modelliert werden
als das Ergebnis von einer Reihe von akustischen Filtern, die durch Töne oder
auch durch Lärm angeregt wurden. Sprache ist mathematisch gesehen die
"Faltung" (convolution) eines Anregungsimpulses mit dem durch
den Vokaltrakt, also den Rachenraum, gegebenen Filter.
Bei der Kurzzeit-Analyse wird das Zeitsignal
Stück für Stück innerhalb eines entlang der Zeitachse zu
verschiebenden quasi-stationären Intervalls gleichbleibender Dauer analysiert. Das
diskrete Zeitsignal s[n] wird sequentiell mit einer entlang der Zeitachse in
Abständen von (1-ü)N (N: Fensterbreite; ü: Überlappungsgrad, i.a. mit 0 <
ü < 0.5) zu verschiebenden Fensterfunktion w[n] der Breite N multipliziert
(gewichtet); dieser Vorgang heißt "Fensterung" (windowing).
|

|
|
Abb. 3. Das Prinzip der "Faltung": Das
Signal a(t) wird mit dem Signal b(t) gefiltert. Das Ergebnis, dargestellt als
a(t) * b(t), ergibt eine Kurve, die mehr oder weniger einer zeitversetzten
Sinuskurve entspricht. Im Frequenzbereich ist alles viel einfacher: Das Spektrum
A(f) ist nichts weiter als ein kurzer Ausschlag bei der Frequenz f0; und dem
Signal b(t) entspricht das Spektrum B(f). Der komplizierten Faltung im
Zeitbereich enspricht die einfache Multiplikation im Frequenzbereich - das
Ergebnis, A(f)·B(f), ist in diesem Fall wieder ein kurzer Ausschlag, aber mit
anderer Amplitude als zuvor das Signal A(f). |
Üblicherweise verwendet man
Fensterbreiten von etwa 10 bis 20 ms. Bei zu großen Fensterbreiten ist die
Quasi-Stationarität des Signalausschnittes meist nicht mehr gewährleistet, da
schnelle zeitliche Änderungen nicht berücksichtigt werden. Bei zu kleinen
Fensterbreiten beschreibt der dargestellte Ausschnitt innerhalb seiner Grenzen
keinen signifikanten Verlauf des Zeitsignals.
|

|
|
|
Jean Baptiste Joseph Fourier entwickelte die nach
ihm benannte "Fourier-Trans-
formation" zur Analyse von Signalen. |
|

|
|
Da die meiste Information von
Sprachsignalen in Frequenzen unterhalb 3,5 kHz enthalten ist, genügt eine Abtastrate von mindestens der doppelten
Nyquistrate, also
z.B. 7 kHz. (Die Nyquistrate beschreibt die kleinste Sampling-Rate, bei der
das ursprüngliche Signal wieder vollständig hergestellt werden kann. Laut
Nyquist-Theorem muß die niedrigste Frequenz bei der man sampled mindestens
doppelt so groß wie die höchste im Signal vorkommende Frequenz sein.)
Bei Fensterbreiten von 10 bis 20 ms bzw. 70 bis 140 Abtastwerten ergeben
sich gebräuchliche FFT-Fensterbreiten (immer Zweierpotenzen) zu
64, 128 oder 256 Punkten.
Typische diskrete Fensterfunktionen; jeweils für Abtastwerte n
zwischen 0 und N-1.
All diese Fensterfunktionen erfüllen
zwei grundlegende Zielvorgaben im FFT-Spektralbereich: Gefordert wird erstens eine möglichst schmale und zudem möglichst
rechteckigförmige Hauptkeule (main lobe) und zweitens ein möglichst großer
relativer Amplitudenabstand zwischen dem Maximum der Hauptkeule und den Maxima
der ersten Nebenkeulen (side lobes). Letztere Vorgabe impliziert allerdings den
Widerspruch von gleichzeitig schmalem Zeitfenster und schmaler Transformierter.
|
Bei zu kleinen Fensterbreiten wird kein signifikanter Verlauf des Zeitsignals
beschrieben.
|
Beide Forderungen werden näherungsweise
erfüllt, wenn die Zeitfunktion durch die Fensterung an den Anfangs- und
Endbereichen abgeschwächt und zum Gesamtleistungsausgleich im mittleren Bereich
verstärkt wird. Außer dem Rechteck-Fenster gewährleisten somit alle
obengenannten Fenster eine Akzentuierung des mittleren Fensterbereiches gegenüber
den Randbereichen.
Das Rechteck-Fenster wr[n] als
Trivialfall einer Fensterung - das Zeitsignal wird in seiner Amplitude nicht
beeinflußt - zeigt im Spektrum Wr[k] im Vergleich zu den anderen
Fenstern zwar die schmalste Hauptkeule, dafür jedoch den geringsten relativen
Amplitudenabstand von der Hauptkeule zu den Nebenkeulen.
Das
Blackman-Harris-Fenster wh[n] hingegen weist im Spektrum den größten relativen
Amplitudenabstand auf, dafür jedoch auch eine breite Hauptkeule. Ideale, das
heißt für alle Fälle optimale Fenster gibt es nicht. Einen guten Kompromiß
aber stellt für viele Zeitsignale das weich an- und abklingende Hanning- oder
Hamming-Fenster wn[n] bzw. wm[n] dar.
|