-
Die
Erfindung betrifft ein Verfahren zur Spracherkennung sowie ein Kommunikationsgerät, insbesondere
ein Mobiltelefon oder einen tragbaren Computer mit einer Spracherkennungseinrichtung.
-
Kommunikationsgeräte, wie
beispielsweise Mobiltelefone oder tragbare Computer, erfuhren in den
letzten Jahren eine fortschreitende Miniaturisierung, um den Gebrauch
unterwegs zu erleichtern. Diese fortschreitende Miniaturisierung
bringt neben der besseren Tragbarkeit andererseits erhebliche Probleme
hinsichtlich des Komforts der Bedienung mit sich. Aufgrund der im
Vergleich zu früheren
Kommunikationsgeräten
kleineren Gehäuseoberfläche ist es
nicht mehr möglich,
diese mit einer dem Funktionsumfang der Geräte entsprechenden Anzahl von Tasten
zu versehen.
-
Da
auch die zunehmende Mehrfachbelegung von Tasten dem Bedienkomfort
nicht zuträglich ist,
besitzen höherwertige
Kommunikationsgeräte Möglichkeiten
zur Sprachsteuerung. Dies setzt Spracherkennungsmöglichkeiten
im Kommunikationsgerät
voraus.
-
Manche
Kommunikationsgeräte
bieten daher eine sprecherunabhängige
Sprachsteuerung an. Wie bei der bekannten Kurzwahl gibt der Benutzer bei
einer Sprachsteuerung hierzu beispielsweise Kommandowörter wie "Wählen", "Telefonbuch", "Notruf", "Zurückweisen" oder "Annehmen" ein. Die mit diesen
Kommandowörtern
verbundene Telefonanwendung kann von einem Benutzer unmittelbar
in der entsprechenden Weise benutzt werden, ohne dass er selbst
dazu vorher das System mit diesem Wortschatz trainiert hat.
-
Für diese
sprecherunabhängige
Spracherkennung sind Sprachproben des Wortschatzes von vielen verschiedenen
Personen, die einen repräsentativen
Querschnitt des Benutzerkreises des Spracherkennungssystems bilden,
in einer Datenbank gesammelt worden. Um sicherzustellen, dass ein
repräsentativer
Querschnitt vorliegt, wird bei der Auswahl der Personen auf unterschiedliche
Dialekte, verschiedene Altersstufen und das Geschlecht geachtet.
Mit Hilfe eines sogenannten "Clusterverfahrens", beispielsweise
ein iterativer Algorithmus, werden ähnliche Sprachproben in Gruppen
bzw. in sogenannten Clustern zusammengefasst. Den Gruppen bzw. den
Clustern wird jeweils ein Phonem, ein Phonem-Cluster oder möglicherweise
auch ein ganzes Wort zugeordnet. Damit sind innerhalb einer jeden Gruppe
bzw. eines jeden Clusters mehrere typische Repräsentanten des Phonems, des
Phonem-Clusters bzw. eines ganzen Wortes in Form von entsprechenden
Modellvektoren vorhanden. Auf diese Weise wird durch wenige Repräsentanten
die Sprechweise vieler verschiedener Personen erfasst.
-
So
komfortabel für
den Benutzer auch dieses werkseitig vorbestimmte Vokabular von Kommandowörtern und
eventuell auch Namen ist, es ersetzt dennoch nicht eine benutzerspezifische
Anpassung, beispielsweise das Einfügen neuer Kommandos. Dies ist
insbesondere bei der Namenswahl, einer besonderen Sprachsteuerung,
bei der bestimmte Nummern bei Sprechen des Namens angewählt werden. Höherwertige
Geräte
bieten daher zusätzlich
zu einer sprecherunabhängigen
Sprachsteuerung auch eine sprecherabhängige Sprachsteuerung an.
-
Ein
sprecherabhängiges
Spracherkennungssystem ist auf den jeweiligen Benutzer optimiert,
da es vor der ersten Nutzung auf dessen Stimme trainiert werden
muss. Man spricht hierbei von "Einsagen" bzw. "Say-in" oder Training. Es
dient zur Erstellung einer Merkmalsvektors-Sequenz aus zumindest einem
Merkmalsvektor.
-
Ein
derartiges System, bei dem sprecherabhängige und sprecherunabhängige Spracherkennung
kombiniert eingesetzt werden ist in 1 im Betrieb,
d.h. bei der Spracherkennung, zu sehen. Im Rahmen einer Merkmalsextraktion
FE wird ein Sprachsignal SS in Zeitrahmen bzw. Rahmen zeitlich unterteilt
F (Framing) und einer Vorverarbeitung PP unterzogen. Ein Zeitrahmen
kann mit einem Laut zusammenfallen oder mehrere Laute aufweisen.
Ebenso kann ein Laut erst durch mehrere Zeitrahmen gebildet werden.
Im Rahmen der Vorverarbeitung PP wird es einer Fouriertransformation
unterzogen.
-
Ergebnis
dieser Transformationen sowie weiterer Vorverarbeitungsschritte
ist ein Merkmalsvektor F_IS, der einer Dimensionreduktion mittels
einer linearen Diskriminanten-Analyse LDA-L (Linear Discriminant
Analysis) unterzogen wird, so dass ein dimensionsreduzierter Merkmalsvektor
F_S ensteht. Da die Dimensionsreduktion LDA-L sprachenspezifisch
durchgeführt
wird, ist auch der dadurch erstellte dimensionsreduzierte Merkmalsvektor
sprachenspezifisch. Ausgehend von diesem dimensionsreduzierten Merkmalsvektor
F_S wird eine sprecherunabhängige
Spracherkennung HMM-SI auf Basis einer monolingualen Sprachressource
HMM-L durchgeführt. Alternativ
wird eine sprecherabhängige
Spracherkennung SD ausgehend von dem Merkmalsvektor F_IS durchgeführt.
-
Für die sprecherunabhängige Spracherkennung
HMM-SI werden die Abstände
D zwischen dem betreffenden dimensionsreduzierten Merkmalsvektor F_S
und den Modellvektoren, die in der Sprachressource HMM-L vorliegen,
berechnet. Auf Basis dieser Abstandsberechnung erfolgt im Betrieb
die Ermittlung einer Zuordnung zu einem Modellvektor bzw. die Ermittlung
einer Zuordnung einer Merkmalsvektor-Sequenz zu einer Modellvektor-Sequenz. Die Information über die
erlaubten Modellvektor-Sequenzen
liegt in dem sprecherunabhängige
Vokabular VOC-SI-L vor, das werkseitig bzw. herstellerseitig erstellt
wurde. Bei einer Suche S unter Verwendung z.B. eines Trellis- Algorithmus wird
die geeigneten Zuordnung bzw. Sequenz von Modellvektoren ausgehend
von der Abstandsberechung unter Zuhilfenahme des Vokabulars VOC-SI-L
ermittelt. Bei der Suche S ergibt sich als Ergebnis R ein den Modellvektoren
zugeordnetes Kommandowort.
-
Die
zusätzlich
vorgesehene sprecherabhängige
Spracherkennung SD kann beispielsweise auf Basis von "Dynamic Time Warping" (Dynamisce Zeitverbiegung)
DTW oder neuronalen Netzwerken erfolgen, also korrelationsbasierte
oder Mustervergleichsverfahren, oder weiteren dem Fachmann bekannten Maßnahmen.
-
Nachteilig
daran ist, dass bei dem in 1 gezeigten
System sprecherabhängige
und sprecherunabhängige
Spracherkennung nicht gemischt werden können, d.h. es muss vor der
Spracherkennung bekannt sein, ob eine sprecherabhängige oder
sprecherunabhängige
Spracherkennung erfolgt.
-
Zum
Ermöglichen
des Mischens wurde vorgeschlagen, bei einer sprecherunabhängigen Spracherkennung
HMM-SI auch sprecherabhängiges
Vokabular VOC-SD-L1 zu erstellen. Dies ist in 2 im Rahmen des Trainings bzw. des Say-Ins
bei einem derartigen System gezeigt. Bei 2 sind Objekte oder Verfahrensschritte,
die bereits in 1 auftauchen,
mit gleichen Bezugszeichen versehen.
-
Dabei
wird ausgehend von dem dimensionsreduzierten Merkmalsvektor F_S
eine Abstandsberechnung D zu Modellvektoren, die in einer Sprachressource
HMM-L1 vorliegen, durchgeführt. Es
erfolgt eine Konvertierung D2I dieses Abstandes zu einem Index bzw.
zu einer Zuordnungsinformation. Diese Zuordnungsinformation stellt
auch das – in diesem
Fall – sprecherabhängige Vokabular VOC-SD-L1
dar.
-
In 3 ist nun das in 2 im Training gezeigte System
im Betrieb gezeigt, das heisst bei der Spracherkennung. Glei che
Objekte oder Verfahrensschritte sind hierbei wiederum mit gleichen
Bezugszeichen versehen.
-
Da
auch dieses sprecherabhängige
Vokabular basierend auf der Sprachressource HMM-L1, nämlich durch
Abstandsberechnung D zu den darin vorliegenden Modellvektoren, erstellt
ist, können
bei dem in 3 gezeigten
System sprecherabhängiges Vokabular
VOC-SD-L1 und sprecherunabhängiges Vokabular
VOC-SI-L1 in der Sprache L1 gemischt werden, wodurch das Problem
des Mischens, das bei dem System in 1 auftritt,
beseitigt ist.
-
Nachteilig
daran ist, dass das System nun aufgrund der Verwendung der Sprachressource HMM-L1
zur Erstellung des Vokabulars sprachenabhängig ist, da die Sprachressource
HMM-L1 eine bestimmte Sprache oder Sprachumgebung repräsentiert,
in Bezug auf die die Zuordnungsinformation abgespeichert wird.
-
Ausgehend
von diesem Stand der Technik ist es Aufgabe der vorliegenden Erfindung,
eine Alternative zu diesen Verfahren zu schaffen, die die Nachteile
der vorgestellten Systeme beseitigt. Insbesondere ist es Aufgabe
der vorliegenden Erfindung, ein Verfahren zur Spracherkennung bzw.
ein Kommunikationsgerät
mit einer Spracherkennungseinrichtung anzugeben, bei dem sprecherabhängige und
sprecherunabhängige
Sprachsteuerung benutzerfreundlich kombiniert angewandt werden kann.
-
Diese
Aufgabe wird durch ein Verfahren gemäß dem unabhängigen Anspruch 1 und ein Kommunikationsgerät gemäß dem Anspruch
11 gelöst. Weiterbildungen
sind Gegenstand der abhängigen Ansprüche.
-
Ein
Sprachsignal, also beispielsweise ein Wort oder ein Satz, besteht
aus zumindest einer akustischen Einheit. Unter akustischer Einheit
können
eine oder mehrere Silben, Phoneme, eine Gruppe von Phonemen, Wortsegmente
oder im Falle eines Satzes auch ein Wort verstanden sein. Dieses Spachsignal
wird zunächst
in Zeitabschnitte zerlegt.
-
Das
Sprachsignal in jedem Zeitabschnitt lässt sich durch einen Merkmalsvektor
beschreiben.
-
Da
im allgemeinen sinntragende Einheiten, d.h. z. B. Steuerbefehle
bzw. Kommandowörter,
erst durch das Aneinanderreihen mehrerer Sprachrahmen entstehen,
wird zunächst
eine Merkmalsvektor-Sequenz gebildet. Es kann hierbei auch nur ein Merkmalsvektor
in der Sequenz auftreten. Generell kann die Anzahl der Merkmalsvektoren
in der Merkmalsvektor-Sequenz durch die Länge z.B. des Steuerbefehls
oder auch der Zeitabschnitte bzw. Zeitrahmen bedingt sein.
-
Die
Merkmalsvektor-Sequenz wird nun einer Modellvektor-Sequenz zugeordnet.
Zur Spracherkennung werden beispielsweise wie eingangs beschrieben,
sinntragende Einheiten einer Sprache mittels Modellvektoren modelliert.
Eine Menge von Modellvektoren ist in einer Sprachressource enthalten, das
ist also z.B die Darstellung einer bestimmten Sprache zum Zwecke
der Spracherkennung mit den Modellvektoren. Ebenso kann eine Sprachenressource
auch die Darstellung bzw. den "Betriebsmodus" einer bestimmten
Sprache in einer festgelegten Umgebung, beispielsweise in einem
Kraftfahrzeug darstellen. Durch die Umgebung wird beispielsweise die
Umgebungslautstärke
festgelegt.
-
Zur
Spracherkennung in einer bestimmten Sprachressource wird die Zuordnung
bzw. Zuordnungsinformation einer Merkmalsvektor-Sequenz, welche
beispielsweise durch ein Say-In bzw. Training erzeugt wird, zu einer
Modellvektor-Sequenz abgespeichert. Die Abspeicherung erfolgt beispielsweise in
einem sogenannten Vokabular.
-
Mittels
der Modellvektor-Sequenz erfolgt unter Verwendung einer Sprachressource
die Spracherkennung. Eine Sprachressource beinhaltet neben einer
Menge von Modellvektoren zumindest auch noch Übergangswahrscheinlichkeiten
zwischen zwei Modellvektoren.
-
Kern
der Erfindung ist es nun, auch die Merkmalsvektor-Sequenz selbst abzuspeichern
und nicht nur die Zuordnung dieser Merkmalsvektor-Sequenz zu einer
Sequenz von Modellvektoren.
-
Dies
hat den Vorteil, dass beim Umstellen der Sprachressource, d.h. beispielsweise
beim Umstellen in eine andere Sprache, nicht das Sprachsignal, aus
welchem die Merkmalsvektor-Sequenz
gebildet wird, erneut aufgenommen werden muss. Dies ist auch möglich, wenn
sprecherabhängige
und sprecherunabhängige
Systeme parallel verwendet werden.
-
Zur
Reduzierung des erforderlichen Speicherplatzes kann die Merkmalsvektor-Sequenz
bei ihrer Zuordnung zu einer Modellvektor-Sequenz hinsichtlich ihrer
Dimensionen reduziert werden. Diese Reduktion kann beispielsweise
mittels einer linearen Diskriminanten-Analyse vorgenommen werden.
-
Das
Vornehmen einer Reduktion hat den Vorteil, dass die Modellvektoren
selbst in der reduzierten Dimension abgespeichert werden können und
somit für
eine Sprachenressource weniger Speicherplatz benötigt wird. Es ist wichtig,
dass die Dimensionsreduktion des Merkmalsvektors bzw. der Merkmalsvektor-Sequenz
erst im Rahmen der Zuordnung erfolgt, eine nichtreduzierte Darstellung
des Merkmalsvektors bzw. der Merkmalsvektor-Sequenz aber erhalten
bleibt.
-
Vorzugsweise
kann so bei einem Umstellen der Sprachressource der Merkmalsvektor-Sequenz unmittelbar
eine Modellvektor-Sequenz
in einer anderen Sprachressource zugeordnet werden.
-
Die
zugrundeliegende Sprachressource kann insbesondere unter Verwendung
eines sogenannten Hidden-Markov Modell (HMM) erstellt werden, bei
dem für
jede akustische Einheit, beispielsweise ein Phonem, Übergangswahrscheinlichkeiten zur nächsten Einheit
bei der Bildung z.B. eines Wortes zugrundegelegt werden. Ein HMM
hat den Vorteil, dass es sich gut bei der sprecherunabhängigen Spracherkennung
einsetzen lässt,
so dass etwa zusätzlich
zu sprecherabhängigen
Befehlen auch ein breiter Wortschatz, der nicht vom Benutzer selbst
trainiert werden muss, voreingestellt sein kann.
-
Besondere
Vorteile ergeben sich auch bei einer Kombination einer derartigen
sprecherabhängigen
Spracherkennung mit einer sprecherunabhängigen Spracherkennung. Auf
Basis einer Sequenz der abgespeicherten sprecherabhängigen und
sprachenunabhängigen
Merkmalsvektoren kann eine Zuordnung zwischen Merkmalsvektor-Sequenz
und Modellvektor-Sequenz erfolgen. Diese Zuordnung kann gemeinsam
mit anderen Zuordnungen, die beispielsweise im Rahmen der sprecherunabhängige Spracherkennung
schon für
den Benutzer voreingestellt vorhanden sind. Das heisst nun, dass
die Spracherkennung auf eine gemeinsame Menge von Zuordnungen bzw.
ein gemeinsames "Vokabular" zurückgreift,
so dass nicht zwischen verschiedenen Spracherkennungen gewechselt
wird.
-
Dies
hat insbesondere den Vorteil, dass es nicht von vorneherein bekannt
sein muss, ob es sich um sprecherunabhängige oder sprecherabhängige Sprachkommandos
handelt, weil z.B. eine davon abhängige Spracherkennung ansetzt.
-
Ein
geeignetes Kommunikationsgerät
weist zumindest ein Mikrofon auf, mit dem das Sprachsignal erfasst
wird, eine Prozessoreinheit mit dem das Sprachsignal verarbeitet
wird, also z.B. die Zerlegung in Zeitrahmen oder die Extraktion
des Merkmalsvektors für
einen Zeitrahmen. Weiterhin ist eine Speichereinheit zum Abspeichern
der verarbeiteten Sprachsignals sowie zumindest einer Sprachressource
vorgesehen. Zur Spracherkennung selbst wirken Mikrofon, Speichereinheit
und Spracherkennungseinrichtung zusammen.
-
Weitere
Vorteile der Erfindung werden anhand von ausgewählten Ausführungsformen näher erläutert, die
auch in Figuren dargestellt sind. Es zeigen:
-
1 Den Ablauf einer kombinierten
sprecherabhängigen
und sprecherunabhängigen
Spracherkennung gemäß dem Stand
der Technik, bei der sprecherabhängige
und sprecherunabhängige
Spracherkennung nicht gemischt werden kann;
-
2 den Ablauf eines Training
bzw. „Say-In" bei einem System
mit einer Sprachressource HMM-L1 gemäß dem Stand der Technik. Das
erstellte Vokabular VOC-SD-L1
ist sprecher- und sprachenabhängig
und kann in einer Kombination von sprecherabhängiger und sprecherunabhängiger Spracherkennung
(nicht dargestellt) verwendet werden;
-
3 das in 2 gezeigte System im Betrieb, d.h. bei
der Spracherkennung, bei dem eine Kombination von sprecherabhängiger und
sprecherunabhängiger
Spracherkennung realisiert ist, bei der beide Techniken gemischt
werden können,
die aber sprachenabhängig
ist;
-
4 den Ablauf eines Trainings
bzw. "Say-In" bei einem System
gemäß einer
Ausführungsform
der Erfindung;
-
5 den Ablauf eines ohne
Interaktion des Benutzers vorgenommenes Transcoding beim Umstellen
der Sprachressource von gemäß 4 erstellten benutzerspezifischen
Vokabular von einer ersten Sprachressource L1 in eine zweite Sprachressource
L2 gemäß einer
Ausführungsform
der Erfindung;
-
6 die in 4 und 5 gezeigte
Ausführungsform
im Betrieb;
-
7 Den Ablauf einzelner Schritte
im Rahmen der zeitlichen Unterteilung und Vorprozessierung des Sprachsignals;
-
8 ein Kommunikationsgerät zur Durchführung eines
Spracherkennungsverfahrens.
-
Zum
besseren Verständnis
sollen zunächst einige
grundlegende Begriffe erklärt
werden. Jede Sprache lässt
sich in für
die jeweilige Sprache spezifische Phoneme aufteilen. Phoneme sind
Lautbausteine oder Laute, die noch bedeutungsdifferenzierend sind.
Beispielsweise ist ein Vokal ein solches Phonem. Ein Phonem kann
aber auch aus mehreren Buchstaben zusammengesetzt sein und einem
einzigen Laut entsprechen, beispielsweise "sch" oder "ch". Aufgrund der Unterschiede
zwischen Orthographie und Aussprache können daher Buchstaben nicht
automatisch mit Phonemen gleichgesetzt werden. Im Deutschen kann
beispielsweise der Buchstabe "a" lang, wie etwa in
dem Wort "Hase", oder kurz, wie
in dem Wort "Hass" ausgesprochen werden.
Es handelt sich hierbei zwar um gleiche Buchstaben, aber um unterschiedliche
Phoneme. Aufgrund der unterschiedlichen Aussprachen, kann ein Phonem
in einer Sprache nicht automatisch mit einem Phonem in einer anderen
Sprache gleichgesetzt werden.
-
Nun
soll der prinzipielle Ablauf einer Spracherkennung auf Basis einer
phonembasierten Spracherkennung erläutert werden.
-
Wie
bereits vorher erwähnt,
gibt es auch Spracherkennungen, die nicht auf Phonemen, sondern
etwa auf Wörtern
oder auf Segmenten von Wörtern
basieren.
-
Bei
der phonembasierten Spracherkennung wird nun zur Analyse des eintreffenden
Datenstroms das Sprachsignal in kurze Zeitfenster, sogenannte Rahmen,
unterteilt, welche ein Länge
von beispielsweise 10 oder 20 Millisekunden besitzen. Anschlie ßend werden
ausschließlich
diejenigen Elemente berechnet bzw. extrahiert, die für eine Interpretation
des Gesprochenen notwendig sind. So filtert die Spracherkennung
etwa Informationen über
die Stimmung des Sprechers, sein Geschlecht, die Sprechgeschwindigkeit,
die Schwankungen in Stimmlage und Hintergrundgeräusche, etc. heraus. Dies dient
hauptsächlich
dazu, die bei der Spracherkennung anfallende Datenmenge zu reduzieren.
Dies ist insofern erforderlich, da die bei der Spracherkennung anfallende
Datenmenge so groß ist,
dass sie normalerweise nicht in Echtzeit, insbesondere nicht von
einer kompakten Recheneinheit, wie sie in Kommunikationsgeräten zu finden
ist, abgearbeitet werden kann.
-
Aus
dem insoweit extrahierten Sprach- bzw. Schallsignal wird eine Fouriertransformierte
erzeugt, bei der das Sprachsignal nach Frequenzen zerlegt ist. Durch
eine Verkettung der Fouriertransformierten mit wenigstens einer
von gegebenenfalls mehreren möglichen
Fensterfunktionen, welche nur in einem begrenzten Zeitfenster Werte
ungleich Null aufweist, wird eine Steigerung im Kontrast und/oder
eine Verringerung des Rauschanteils des Sprachsignals erreicht.
Als Ergebnis wird eine Folge von Merkmalsvektoren bzw. Transkriptoren
erhalten, die den zeitlichen Verlauf des Sprachsignals darstellen.
-
Die
einzelnen Merkmalsvektoren lassen sich verschiedenen Klassen von
Merkmalsvektoren zuordnen. Die Klassen von Merkmalsvektoren umfassen
jeweils Gruppen von ähnlichen
Merkmalsvektoren. Durch die Zuordnung der Merkmalsvektoren zu den
einzelnen Klassen von Merkmalsvektoren wird das Sprachsignal identifiziert,
d.h. es liegt in einer phonetischen Umschrift vor. Der phonetischen
Umschrift kann ein Bedeutungsinhalt zugewiesen werden, wenn den
Klassen von Merkmalsvektoren eine Information darüber zugeordnet
ist, welcher Laut durch die betreffende Klasse von Merkmalsvektoren repräsentiert
ist.
-
Die
Klassen von Merkmalsvektoren für
sich alleine geben noch keine eindeutige Information darüber, welcher
Laut gerade ge sprochen wurde. Damit die Klassen von Merkmalsvektoren
solche Laut-Informationen wiedergeben, sind Sprachaufnahmen nötig, aus
denen heraus den Klassen von Merkmalsvektoren einzelne Laute bzw.
Phoneme, Phonem-Cluster oder ganze Wörter zugeordnet werden. Ein
Phonem-Cluster, der auch als ein Phonem-Segment bezeichnet werden kann, fasst
gleichzeitig mehrere einzelne Phoneme zu einer Einheit zusammen.
Dadurch kann die insgesamt bei der Spracherkennung zu verarbeitende
Datenmenge ebenfalls reduziert werden.
-
Die
bisherigen Schritte bei der Spracherkennung dienten hauptsächlich der
Datenreduktion und -aufbereitung. Nun erfolgt die Umwandlung in
Bedeutungsinhalte bzw. Text. Eine Erkennungsroutine erzeugt hierbei
die wahrscheinlichsten Wortketten. Als Berechnungsgrundlage für diese
Wahrscheinlichkeit verwenden die meisten Spracherkenner heute eine Sprachressource,
die unter Verwendung eines sogenannte "Hidden-Markov-Modell" oder HMM erstellt wird. Dieses Modell
soll die Schwierigkeit überwinden,
dass einzelne Sprecher Wörter
oder einzelne Silben unterschiedlich lang aussprechen oder sogar verbinden.
Eine derartige zeitliche Verzerrung ist mit keiner Funktion exakt
zu beschreiben, weshalb hier dieses Modell verwendet wird, das Wörter trotz
ihrer Vielsprachemöglichkeiten
erkennt. Vereinfacht gesagt werden Übergangswahrscheinlichkeiten
zwischen einzelnen Phonemen mit einem sogenannten "Vorwärts-Rückwärts-Algorithmus" berechnet. Dann wird
ermittelt, welcher Zustand, d.h. welche Folge von Phonemen die wahrscheinlichste
ist.
-
Werkseitig
bzw. herstellerseitig wird eine Sprachressource, d.h. eine Menge
von Modellvektoren erstellt, mittels denen eine bestimmte Sprache darstellbar
ist. Weiterhin werden bei einer Sprachressource Übergangswahrscheinlichkeiten
zwischen einzelnen Modellvektoren festgelegt, so dass z.B. Worte
in einer Sprache gebildet werden können.
-
Nun
soll die gerade allgemein beschriebene Spracherkennung anhand von
Figuren näher
erläutert
werden. Dazu sei nun auf 4 verwiesen,
in der ein "Say-In" bzw. Training gemäß einer
Ausgestaltung der Erfindung schematisch dargestellt ist. Gleiche
Merkmale oder Verfahrensschritte sind mit den gleichen Bezugszeichen
wie in den 1, 2 und 3 versehen.
-
Ein
Sprachsignal SS wird zunächst
einer Merkmalsextraktion FE unterzogen. Diese Merkmalsextraktion
beinhaltet allgemein zunächst
eine Unterteilung in Zeitrahmen bzw. Rahmen F (Framing) mit einem
nachgeschalteten Vorverarbeitung PP des in Rahmen unterteilten Sprachsignals
SS. Dies beinhaltet im Allgemeinen eine Fouriertransformation. Optional
findet noch eine Störgeräuschunterdrückung bzw.
Kanalkompensation statt. Unter Kanal wird hierbei der Weg vom Mikrofon
zum AD-Wandler verstanden, kompensiert werden Störgeräusche. Der Kanal kann aufgrund
verschiedener Mikrofone, etwa im Car-Kit oder im Mobilfunkendgerät selbst,
variieren. Auch bei unterschiedlichen Räumen wird der Kanal unterschiedliche
Eigenschaften aufweisen, da die Impulsantwort auf eine Schalleinwirkung
unterschiedlich ist.
-
Beispielsweise
könnte
die Schritte im Rahmen der Merkmalsextraktion FE zum Ermitteln eines Merkmalsvektors
wie in 7 dargestellt
ablaufen:
Nach der Unterteilung F des Signals in Zeitrahmen erfolgt
die Vorverabeitung PP. Diese kann folgenden Schritte beinhalten:
Filtern FI des Signals mit einem endlichen Impulsantwortfilter bzw "finite impulse response
filter" (FIR), Bildung
AA von sogenannten "Hamming-Fenstern" um ein Antialiasing,
d.h. ein Vermeiden des Heranziehens von nicht tatsächlich ermittelten
Frequenzen, zu erzielen. Anschliessend wird eine schnelle bzw. "Fast" Fourier Transformation FFT
durchgeführt.
Das Ergebnis ist ein Leistungs-Spektrum bzw. "Power-Spektrum", bei dem die Leistung gegebüber der
Frequenz aufgetragen wird. Dieses Power-Spektrum wird zur Anpassung
an die Sensitivität
des menschlichen Ohres einer sogenannten "Mel"-Filterung MF mit
15 Dreiecks-Filtern unterzogen. Das Ergebnis hierbei wären 15 Koeffizienten,
die zur Reduzierung des dynamischen Bereichs beispielsweise logarithmiert
werden. Über eine
diskrete Cosinustransformation DCT werden 12 sogenannten "Cepstrum"-Koeffizienten ermittelt,
so dass nun zusammen mit der logarithmierten Energie 13 Koeffizienten
vorliegen. Einen so ermittelten Vektor bezeichnet man auch als MFCC-Vektor
bzw. "Mel-Filter-
Cepstrum-Koeffizienten-Vektor".
Zur Reduzierung der Fehleranfälligkeit
dieser Koeffizienten wird eine sogenannten Delta-Abbildung DA und
Delta-Delta-Abbildung DDA durchgeführt, bei der Zusammenhänge zum
vorhergehenden und zum vor-vorhergehenden Rahmen ermittelt werden.
Auch die Zusammenhänge
werden mit je 13 Koeffizienten beschrieben, so dass nach Ablauf
dieser Kette von Transformationen 39 Koeffizienten vorliegen. Diese 39
Koeffizienten stellen die Einträge
bzw. Komponenten eines Merkmalsvektors dar. Bei der beschriebenen
Routine handelt es sich um ein ausgewähltes Beispiel. Dem Fachmann
sind diverse Möglichkeiten der
Merkmalsextraktion bekannt, weshalb hier nicht näher darauf eingegangen wird.
-
Nun
sei wieder auf 4 verwiesen.
Ergebnis dieses Prozesses ist ein sprachenunabhängiger Merkmalsvektor F_IS.
Sequenzen aus zumindest einem sprachenunabhängigen Merkmalsvektor F_IS werden
in einer Sammlung oder Datenbank FV-SD(F_IS) von sprecherabhängigen,
sprachenunabhängigen
Merkmalsvektoren F_IS abgespeichert.
-
Andererseits
wird der sprachenunabhängige Merkmalsvektor
F_IS zu sprecher- und sprachenabhängigen Vokabular verarbeitet.
So wird zur Speicherplatzreduzierung bei der sogenannten linearen Diskriminanten
Analyse LDA-L1, welche spezifisch für eine Sprachressource (L1)
ist, einer Matrixmultiplikation mit einer bereits werkseitig erstellten LDA-Matrix
unterzogen.
-
Ab
diesem Zeitpunkt liegt ein sprachenabhängiger Merkmalsvektor F_S vor.
Im Vergleich zum sprachenunabhängigen
Merkmalsvektor F_IS enthält der
sprachenabhängige
Merkmalsvektor aufgrund der nicht-verlustfreien Datenreduktion bei
der Dimensionsreduzierung weniger Informationsgehalt. Es ist also
nicht möglich,
aus dem sprachenabhängigen Merkmalsvektor
F_S wieder den sprachenunabhängigen
Merkmalsvektor F_IS zu erstellen.
-
Durch
die Multiplikation mit einer LDA-Matrix wird vor allem eine Diagonalisierung
vorgenommen, bei der durch die Wahl eines geeigneten Eigensystems
von Basisvektoren die Dimension des Merkmalsvektors reduziert werden
kann. Diese LDA-Matrix ist sprachenspezifisch, da aufgrund der Unterschiedlichkeit
verschiedener Sprachen oder Sprachmodi bzw. Sprachumgebungen auch
die Eigenvektoren verschieden sind. Sie wird bereits werkseitig
ermittelt. Wie diese Matrix z.B, auf der Basis von sogenannten Sub-Phonemen
und weiteren Untergruppen, z.B. "dphones", durch Mittelwertbildung
und entsprechende Gewichtung ermittelt wird, ist dem Fachmann bekannt
und wird hier nicht näher
erläutert.
-
Beispielsweise
werden im Rahmen der LDA-Multiplikation zwei (aufeinander folgende)
39-dimensionale MFCC-Vektoren in einem 78-dimensionalen Super-Vektor
zusammen gefasst, der mit der 78x24 LDA-Matrix multipliziert wird.
Das Ergebniss ist ein 24-dimensionale sogenannter Post-LDA-Merkmals-Vektor.
Der Post-LDA-Merkmals-Vektor ist sprachabhängig, da die LDA-Matrix sprachabhängig ist.
Unter Sprachressource wird insbesondere eine Menge von Modellvektoren
verstanden, mittels der sich eine Sprache darstellen läßt. Weiterhin
kann die Sprachressource auch eine Sprache in einer bestimmten Umgebung
darstellen. Dies wird beispielsweise bei der Verwendung von Kommunikationsgeräten in einem
Fahrzeug angewandt, bei dem durch das Freisprechen bedingt, ein
anderer Geräuschpegel
als bei normalen Gesprächen
vorliegt.
-
Es
sei nun wieder auf 4 verwiesen,
bei der im Rahmen einer sprecherunabhängigen HMM-Modellierung HMM-SI
diese Merkmalsvektoren zunächst
vorhandenen Gruppen von Modellvektoren zugeordnet werden. Diese
Zuordnung geschieht über
eine Abstandsberechnung D zu Modellvektoren, die z.B. in etwa einem
Ermitteln des ähnlichsten
Modellvektors entsprechen kann, wobei die Modellvektoren in einer
monolingualen HMM-Sprachressource
HMM-L vorliegen. Die Zuordnungsinformation zwischen Merkmalsvektor
und Modellvektor bzw. Merkmalsvektor-Sequenzen und Modellvektor-Sequenzen
wird in einem sog. Vokabular gespeichert. Das sprecherabhängige Vokabular VOC-SD-L1 zur Sprachressource
L1 wird über
Abstandsberechnung D zu Modellvektoren aus der Sprachressource HMM-L1
und Konvertierung D2I des Abstandes zu Zuordnungs bzw. Indexinformationen
erstellt.
-
Im
Unterschied zum Stand der Technik wie in den 2 und 3 gezeigt,
wird also auch der sprachenunabhängige
Merkmalsvektor bzw. die Sequenz von Merkmalsvektoren abgespeichert,
durch welche ein Steuerbefehl beschrieben wird. Dies hat den prinzipiellen
Vorteil, dass bei einem Umschalten der Sprachressource das Say-In
nicht erneut erfolgen muss.
-
Es
sei nun auf 5 verwiesen.
Bei einem Umschalten in eine andere Sprachressource HMM-L2 kann
dann die sprachabhängigen
Dimensionsreduktion LDA-L2 auf Basis dieses sprachenunabhängigen Vektors
F_IS erfolgen.
-
Beispielsweise
schaltet der Benutzer über eine
Benutzeroberfläche
von der Sprache L1 in eine Sprache L2 um oder beim Benutzen der
Autoausrüstung
(Car Kit) für
ein Kommunikationsgerät
wird automatisch von leiser Sprachumgebung L1 in eine laute Sprachumgebung
L2 umgeschaltet. L1 bzw. L2 bezeichnet also eine Sprache oder eine
Sprachumgebung.
-
Anschliessend
erfolgt das sogenannten Transcoding TC, das ist die Zuordnung eines
sprachenabhängingen
Merkmalsvektor F_S zu einem Modellvektor aus einer Sprachenressource
bzw. die Zuordnung einer Sequenz von sprachenabhängingen Merkmalsvektoren F_S
zu einer Sequenz von Modellvektoren. Das Transcoding von Kommandowörtern, deren
Training in 4 gezeigt
ist, ist nun in 5 dargestellt.
Das Transcoding TC erfolgt mittels der bereits werkseitig erstellten
Sprachressource HMM-L2 offline, d.h. ohne Interaktion mit dem Benutzer,
auf Basis der in der Datenbank FV-SD(F_IS) gespeicherten sprachenunabhängigen Merkmalsvektoren
F_IS. Somit kann dann für
jede Sprache, zu der z.B. werkseitig bzw. herstellerseitig eine
Sprachresource HMM-L2 erstellt wurde, eine Zuordnung und damit ein
Steuerbefehl erstellt werden, ohne dass der Benutzer aktiv beiträgt.
-
In 5 ist die zeitliche Unterteilung
F in Rahmen und die Vorprozessierung PP gestrichelt dargestellt,
da im Gegensatz zum Training beim Transcoding kein Sprachsignal
verwendet wird und infolgedessen diese Einheit nicht benötigt wird,
sondern eben die während
des Training erstellten und abgespeicherten sprachenunabhängigen Merkmalsvektoren
F_IS herangezogen werden.
-
Zusammenfassend
ist das Ergebnis des Transcodings ein sprecherabhängiges Vokabular VOC-SD-L2,
das auf Basis der Sprachressource HMM-L2 unter Verwendung der sprachenunabhängigen,
absgespeicherten Merkmalsvektoren erstellt wurde. Das Sprecherabhängige Vokabular
enthält Zuordnungen
zwischen Sequenzen aus Merkmalsvektoren und Modellvektoren.
-
Es
sei nun auf 6 verwiesen.
In 6 ist nun das Spracherkennungssystem,
das in 4 beim Training
und in 5 beim Transcoding
gezeigt ist, beim Betrieb dargestellt. Gleiche Begriffe sind wieder
mit gleichen Bezugszeichen versehen.
-
Beispielsweise
ist die Sprache oder Sprachumgebung L2 ausgewählt, in die das Transcoding
in 5 stattfand. Die
Di mensionreduktion LDA-L2 erfolgt deshalb in Abhängigkeit von der Sprache oder Sprachumgebung
L2.
-
Die
Abstandsberechnung D erfolgt unter Verwendung der Sprachressource
HMM-L2 zur Sprache oder Sprachumgebung L2. Die Suche S erfolgt nun auf
Basis des sprecherunabhängigen
Vokabulars VOC-SI-L2, das dem sprecherunabhängigen Vokabular VOC-SI-L1 aus den 3 für die Sprachumgebung L2 entspricht,
und des sprecherabhängigen
Vokabulars VOC-SD-L2. Es kann also das -werkseitig erstellte – Vokabular
VOC-SI-L2 gleichzeitig, d.h. ohne zwischen sprecherabhängiger und
sprecherunabhängiger
Spracherkennung zu wählen,
mit dem sprecherabhänigen
Vokabular VOC-SD-L2 verwendet werden.
-
In
anderen Worten hat dies den Vorteil, dass sprecherabhängiges und
sprecherunabhängiges
Vokabular derart nebeneinander bestehen, dass es für eine Spracherkennung
nicht erforderlich ist, zu wissen, ob ein sprecherabhängiges oder
sprecherunabhängiges
Kommando erfolgt, was die Flexibilität von z.B. zusammengesetzten
Kommandos signifikant erhöht.
Ein Wissen, ob ein sprecherabhängiges
oder sprecherunabhängiges
Kommando erfolgt, wäre
zum Beispiel erforderlich, wenn die sprecherabhängige Spracherkennung unter
der Verwendung von Merkmalsvektoren abläuft und die sprecherunabhängige auf
Basis von Zuordnungsinformation.
-
In 8 ist schliesslich ein Kommunikationsgerät gezeigt,
welches zur Durchführung
der beschriebenen Spracherkennung geeignet ist. Das Kommunikationsgerät CD weist
zumindest ein Mikrofon M auf, mit dem das Sprachsignal erfasst wird, eine
Prozessoreinheit CPU mit dem das Sprachsignal verarbeitet wird,
also z. B. die Zerlegung in Zeitrahmen oder die Extraktion des Merkmalsvektors
für einen
Zeitrahmen. Weiterhin ist eine Speichereinheit SU zum Abspeichern
der verarbeiteten Sprachsignals sowie zumindest einer Sprachressource
vorgese hen. Zur Spracherkennung selbt wirken Mikrofon, Speichereinheit
und Spracherkennungseinrichtung SE zusammen.
-
- AA
- Bilden
von Fenstern zum Antialiasing
- CD
- Kommunikationsgerät
- D
- Abstandsberechnung
- D2I
- Abstand
zu Zuordnungsinformationskonvertierung bzw.
-
- „Distance-to-Index"
- DA
- Delta-Analyse
- DCT
- Diskrete
Fourier Transformation
- DDA
- Delta-Delta-Analyse
- F
- Unterteilung
in Zeitrahmen bzw. "Framing"
- FE
- Merkmalsextraktion
bzw. "Feature Extraction"
- FI
- Filtering
- FV-SD(F_IS)
- Datenbank
von abgespeicherten F_IS Vektoren beim
-
- Training
bzw. „Say-In" gemäß der Erfindung.
- HMM-L
- Monolinguale
Sprachressource
- HMM-L1
- Sprachressource
in der Sprache oder Sprachumgebung
-
- L1
- HMM-L2
- Sprachressource
in der Sprache oder Sprachumgebung
-
- L2
- HMM-SI
- Sprecherunabhängiges Hidden-Markov-Modell
- LDA-L
- Lineare
Diskriminantenanalyse bzw. "Linear
Discri
-
- minant
Analysis" für eine Sprache oder
Sprachumge
-
- bung
L
- LOG
- Logarithmus
- M
- Mikrofon
- MF
- Mel-Filterung
- PP
- Vorverarbeitung
bzw. "Pre-Processing"
- R
- Ergebnis
bzw. "Result"
- S
- Suche
bzw. "Search"
- SE
- Spracherkennungseinheit
- SS
- Sprachsignal
- SU
- Speichereinheit
- TC
- Transcoding
- VOC-SD-L1
- sprecherabhängige Zuordnungsinformation
bzw. Voka
-
- bular
in der Sprache oder Sprachumgebung L1
- VOC-SI-L1
- sprecherunabhängige Zuordnungsinformation
bzw. Vo
-
- kabular
in der Sprache oder Sprachumgebung L1
- VOC-SI-L2
- sprecherunabhängige Zuordnungsinformation
bzw. Vo
-
- kabular
in der Sprache oder Sprachumgebung L2