Evolutionäre Algorithmen in der Spracherkennung
Hausarbeit (Hauptseminar) 2004 10 Seiten
Leseprobe
Abstract
Dieser Text stellt einige evolutionar optimierte Klassifikatoren vor, mit Fokus auf Erkennung von Phonemen in der Spracherkennung. Das sind zum einen GA-Clustering, ein genetischer Vektor-Quantisierer; außerdem ein GP- Klassifikator, welcher Programme entwickelt, die direkt aus dem rohen Zeitsignal Phoneme extrahieren; und schließlich Evolutionare Neuronale Netze mit GA-Optimierung von Verbindungsgewichten, Topologie oder Aktivierungsfunktionen.
1. Einleitung
Evolutionare Algorithmen werden zunehmend zur Anwendung in Lernverfahren der Mustererkennung interessant, insbesondere zur Erkennung von Sprache. Ziel dieses Textes ist es, die Anwendungsmoglichkeiten von EAs für die Spracherkennung aufzuzeigen. Es werden exemplarisch einige evolutionär optimierte Klassifikatoren vorgestellt. Das sind zum einen GA-Clustering, ein genetischer Vektor-Quantisierer; außerdem ein GP-Klassifikator, welcher Programme entwickelt, die direkt aus dem rohen Zeitsignal Phoneme extrahieren; und schließlich Evolutionäre Neuronale Netze mit GA-Optimierung von Verbindungsgewichten, Topologie oder Aktivierungsfunktionen.
Der Rest dieser Arbeit ist folgendermaßen gegliedert: Abschnitt 2 gibt einen knappen Überblick uber die Phasen eines typischen Spracherkennungsprozesses. Im Anschluss wird die Extraktion von Features aus dem Zeitsignal erlautert. Abschnitt 4 fuhrt einige Begriffe zum Lernen und Erkennen von Phonemen ein. Die nachsten Abschnitte stellen die genannten Anwendungsgebiete vor, wobei im Abschnitt 8 über evolutionare Neuronale Netze zuerst die Grundlagen behandelt werden.
2. Signalfluss von Spracherkennungssytemen
Der typische Vorgang der Spracherkennung [7] lasst sich grob folgendermaßen zusammenfassen:
1. Vorverarbeitung des Audiosignals. Das kann z.B. Rauschunterdrückung oder Filterung sein.
2. Feature-Extraktion. Dabei wird das Zeitsignal in eine Sequenz von Feature-Vektoren transformiert. Features sind Merkmale wie z.B. das Spektrum.
3. Phonem-Klassifikation. Ein Feature-Vektor wird auf eine Phonemklasse abgebildet.
4. Worterkennung. In der Folge von Phonemen werden Wörter gesucht, in der Regel durch Vergleichen mit sogenannten Hidden-Markov-Models. Bei Einzelworterkennung wird nur das ahnlichste Wort ausgegeben. Bei kontinuierlicher Sprache wird eine Menge von mehreren moglichen Worten ausgegeben.
5. Eine anschließende kontextabhangige Analyse (grammatisch oder statistisch) wahlt in kontinuierlicher Sprache das plausibelste Wort aus der Menge aus.
3. Feature-Extraktion
Das rohe Zeitsignal wird in kurze (typischerweise 10- 20ms) gleichgroße überlappende Abschnitte (Frames) zerschnitten, und jeder Frame wird mit einer Amplitudenhull- kurve multipliziert [7].
Es folgt pro Frame eine Berechnung von mehreren diskriminierenden Merkmalen, und diese werden zu einem
Feature-Vektor
Abbildung in dieser Leseprobe nicht enthalten
zusammengefasst.
Gängige Features:
- Fourier-Leistungsspektrum (quadrierte FourierKoeffizienten) [7]:
Abbildung in dieser Leseprobe nicht enthalten
Dies ist eine Transformation vom Zeitbereich in den Frequenzbereich. Die Welle wird als Summe von Sinuswellen mit verschiedener Phasenlage und Amplitude zerlegt. Die Berechnung nach obiger Formel ware zu ineffizient. Stattdessen verwendet man die FastFourier-Transform (FFT).
- Mel Cepstrum / Mel Frequency Cepstrum Coefficients (MFCC) [7]: Das Signal wird von einer Filterbank aus dreieckigen Bandpassfiltern zerlegt, und die Energie pro Frequenzband berechnet.
Abbildung in dieser Leseprobe nicht enthalten
H[Abbildung in dieser Leseprobe nicht enthalten] : Frequenzgang des k-ten von M" dreieckigen Filters (Abb. 1) in Abhängigkeit von Frequenz ω.
F[Abbildung in dieser Leseprobe nicht enthalten] : Fourier-Koeffizient
M': Anzahl der diskreten Frequenzen
Abbildung in dieser Leseprobe nicht enthalten
[Abbildung in dieser Leseprobe nicht enthalten]: MFCC an der Stelle l
Die Auflösungen von Frequenz und Pegel sind loga- rithmisch, wie das menschliche Ohr. Daher ist das Mel Cepstrum biologisch plausibler als FFT. Nicht zuletzt deshalb ist es die popularste Feature-Menge.
- Zeitliche Differenzen von Features wie FFT, Mel Cep- strum.
Es ist nicht ungewohnlich, verschiedene Arten von Features in einen Vektor zu kombinieren. Zur Unterscheidung zwischen Sprache und Stille/Hintergrund/Rauschen (wichtig zur Erkennung von Wortgrenzen) wird ein Level- Detektor verwendet, der die Short-Time-Energy (Energie eines Frames) misst. Beim Auftreten eines Sprach-Frames werden die FFT- oder MFCC-Koeffizienten anhand der Short-Time-Energy normalisiert, was die Erkennung von Phonemen unabhangig von der Lautstarke ermoglicht.
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 1. Mel Cepstrum Filterbank. Frequenzgänge der dreieckigen Bandpassfilter.
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 2. Klassen sind Regionen im Feature-Raum. Hier: Erkennung von Vokalen aus 2 Features. [6]
4. Phonemklassifikation
In der Spracherkennung gibt es viele Wortuntereinheiten, in die man das Audiosignal zerlegen kann, z.B. Silbe, Halbsilbe, Doppelsilbe, Phon, Phonem und andere [7]. In dieser Arbeit definiere ich den in der Literatur nicht ganz einheitlich festgelegten Begriff Phonem als die kleinste Wortuntereinheit, das heisst, ein Audiosegment mit ungefahr konstantem Spektrum.
Koartikulatorische Effekte beim Übergang zwischen Phonemen konnen die Erkennungsrate degradieren. Verbesserung bringt die Berücksichtigung des Kontextes (benachbarte Frames) oder zeitliche Änderungen der FFT oder MFCC als zusatzliche Features.
Ziel ist die Zuordnung eines Feature-Vektors auf eine von K Klassen:
Abbildung in dieser Leseprobe nicht enthalten
Anschaulich gesehen sind Klassen Regionen im FeatureRaum (Abb. 2).
4.1. Unsupervised Learning
Beim Unsupervised Learning, auch genannt Clustering und Vector Quantization, werden dem Klassifikator N Trainingsbeispiele Xi (Trainingsmenge S) ohne Angabe der gewünschten Ausgabe präsentiert.
Abbildung in dieser Leseprobe nicht enthalten
Der Feature-Raum wird selbstständig in K Sektoren (Clusters), entsprechend K Klassen, partitioniert. Dabei wachst die lokale Granularitat (Dichte von Clusters) mit der lokalen Dichte von Beispielvektoren (je mehr Beispiele in einem Gebiet, desto feiner die Auflösung dort). Jeder Cluster Ck wird repräsentiert durch einen Vektor zj, dem ClusterZentrum oder Code-Book-Vektor. Diese bilden das CodeBook. Ein Eingabevektor wird auf die Klasse mit minimalen euklidischen Abstand des Cluster-Zentrums abgebildet. Der Vektor wird sozusagen auf den nachsten Code-Book- Vektor gerundet. Damit erhalt man eine adaptive Datenreduktion des Feature-Raums.
4.2. Supervised Learning
Beim Supervised Learning wird zu jedem Trainingsbeispiel die Klasse mitangegeben. Diese dient beim Training als gewiinschte Ausgabe des Klassifikators (Target-Wert = Output-Wert).
Abbildung in dieser Leseprobe nicht enthalten
Ziele sind nicht nur das Lernen der Beispiele (korrekte Separation der Trainingsmenge), sondern auch die Genera- lisierungsfahigkeit: Neue Eingabevektoren aus einer Testmenge sollen mit moglichst hoher Wahrscheinlichkeit korrekt klassifiziert werden. Die Trainingsmenge wird somit interpoliert, das heisst aus den Beispielen versucht das System, die tatsachliche Klassenzugehorigkeitsfunktion zu approximieren.
5 K-Means-Algorithmus
Ein einfacher und popularer Clustering-Algorithmus ist K-Means [7]:
1 Initialisierung von ¿j: Wahle aus Trainingsmenge S zufallig K Punkte als Clusterzentren aus.
2. WIEDERHOLE
3. Klassifiziere Trainingsbeispiele gemass nächstem Cluster-Zentrum
Abbildung in dieser Leseprobe nicht enthalten
4. Aktualisiere Clusterzentren als Schwerpunkte:
Abbildung in dieser Leseprobe nicht enthalten
5. BIS keine Änderung mehr
Es ist ein Gradientenabstiegsverfahren (schrittweise Optimierung entgegen der Ableitung der Fehlerfunktion) und stagniert deshalb leicht in einem lokalen Minimum.
6 GA-Clustering
GA-Clustering [6] kombiniert K-Means mit einem genetischen Algorithmus. Die Koordinaten eines ClusterZentrums, reell kodiert, bilden ein Gen im Chromosom. Zur Initialisierung wahlt man zufallig eine Teilmenge der Trainingspunkte als Clusterzentren aus. Die Fitness-Funktion ist die Clustering-Metrik:
Abbildung in dieser Leseprobe nicht enthalten
Selektion erfolgt proportional zur Fitness (Roulette- Wheel-Selection). Als Crossover gibt es Single-Point mit konstanter Wahrscheinlichkeit. Die Mutation geschieht mit fester Wahrscheinlichkeit nach der Regel:
Abbildung in dieser Leseprobe nicht enthalten
mit δ g [-1; +1] uniforme Zufallsvariable und v eine Variable im Chromosom.
Den Experimenten in [6] zufolge liefert GA-Clustering deutlich bessere Losungen als K-Means.
7 GP-Klassifikator
In [8] wird ein GP-Klassifikator zur Phonemerkennung vorgestellt, welcher auf genetisch optimierten Programmen basiert. Besonders erstaunlich ist, dass die FeatureExtraktion ubersprungen wird. Stattdessen wird ein Frame aus dem zeitlichen Audiosignal direkt quasi als FeatureVektor verwendet. Dieses Vorgehen stellt eine Ausnahme unter den Phonemerkennungsalgorithmen dar, denn meistens wird das Signal in den Frequenzbereich transformiert.
[...]
Details
- Seiten
- 10
- Jahr
- 2004
- ISBN (eBook)
- 9783638438919
- Dateigröße
- 784 KB
- Sprache
- Deutsch
- Katalognummer
- v46763
- Institution / Hochschule
- Friedrich-Alexander-Universität Erlangen-Nürnberg – Institut für Informatik, Lehrstuhl Informatik II Programmiersysteme
- Note
- Schlagworte
- Evolutionäre Algorithmen Spracherkennung Hauptseminar Einsatz Evolutionärer Strategien Eingebetteten Systemen