DE10302101A1 - Training of a Hidden Markov Model using training data vectors and a nearest neighbor clustering method based on condition parameters used to describe the Hidden Markov Model - Google Patents
Training of a Hidden Markov Model using training data vectors and a nearest neighbor clustering method based on condition parameters used to describe the Hidden Markov Model Download PDFInfo
- Publication number
- DE10302101A1 DE10302101A1 DE2003102101 DE10302101A DE10302101A1 DE 10302101 A1 DE10302101 A1 DE 10302101A1 DE 2003102101 DE2003102101 DE 2003102101 DE 10302101 A DE10302101 A DE 10302101A DE 10302101 A1 DE10302101 A1 DE 10302101A1
- Authority
- DE
- Germany
- Prior art keywords
- hidden markov
- markov model
- training data
- training
- data vectors
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/14—Speech classification or search using statistical models, e.g. Hidden Markov Models [HMMs]
- G10L15/142—Hidden Markov Models [HMMs]
- G10L15/144—Training of HMMs
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/06—Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
- G10L15/063—Training
- G10L2015/0631—Creating reference templates; Clustering
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Machine Translation (AREA)
Abstract
Description
Die Erfindung betrifft ein Verfahren und eine Vorrichtung zum Trainieren eines Hidden Markov Modells sowie ein Computerprogramm-Element und ein Computerlesbares Speichermedium.The invention relates to a method and a device for training a hidden Markov model as well a computer program element and a computer readable storage medium.
Hidden Markov Modelle finden in einer Vielzahl unterschiedlicher technischer Einsatzgebiete, beispielsweise im Rahmen der digitalen Signalverarbeitung, insbesondere der Spracherkennung oder der Mustererkennung, Verwendung.Hidden Markov models can be found in one Numerous different technical areas of application, for example in the context of digital signal processing, especially speech recognition or pattern recognition, use.
Damit ein Hidden Markov Modell in der Praxis verwendet werden kann, muss es vor seiner Anwendung, beispielsweise zur Signalverarbeitung, trainiert werden.So that a hidden Markov model in can be used in practice, it must be for example, for signal processing.
Im Rahmen des Trainings eines Hidden Markov Modells (HMM) werden die Systemparameter des HMMs berechnet. Die Systemparameter des HMMs sind:
- – die Emissionswahrscheinlichkeitsverteilung,
- – die Zustandsübergangs-Wahrscheinlichkeiten und
- – die Initialwahrscheinlichkeiten sowie
- – die Anzahl der Zustände des Hidden Markov Modells.
- - the emission probability distribution,
- - the state transition probabilities and
- - the initial probabilities as well
- - the number of states of the Hidden Markov model.
Soll ein Hidden Markov Modell beispielsweise für ein sprecherabhängiges Spracherkennungssystem online, insbesondere in einem Embedded System, trainiert werden, so ist es wünschenswert, ein Trainingsverfahren mit relativ wenig erforderlichen Rechenoperationen einzusetzen, um die Systemanforderungen im Rahmen des Trainings des HMMs möglichst gering zu halten.For example, a hidden Markov model for a speaker-dependent Speech recognition system online, especially in an embedded system, be trained so it is desirable a training procedure with relatively few arithmetic operations required to be used to meet the system requirements as part of the training of the HMM if possible to keep low.
Als Verfahren zum Trainieren eines Hidden Markov Modells ist das so genannte Baum-Welch-Verfahren bekannt (vergleiche [1]).As a method of training one Hidden Markov model is known as the Baum-Welch method (compare [1]).
Nachteilig an dem Baum-Welch-Verfahren ist insbesondere, dass dieses einen sehr hohen Rechenaufwand benötigt. Ein anderer erheblicher Nachteil des Baum-Welch-Verfahrens ist in den auftretenden numerischen Problemen zu sehen, da im Rahmen dieses Verfahrens viele Wahrscheinlichkeitswerte miteinander multipliziert werden, was zu sehr kleinen Zahlen führt. Die sehr kleinen Zahlen sind im Rahmen eines üblichen 8-Bit-, 16-Bit- oder 32-Bit-Prozessors, selbst mit einem 64-Bit-Prozessor oftmals nicht mehr mit der erforderlichen Genauigkeit verarbeitbar.A disadvantage of the Baum-Welch process is in particular that this requires a very high computing effort. On Another significant disadvantage of the Baum-Welch process is in the numerical problems occurring, as part of this Procedure multiplied many probability values together become, which leads to very small numbers. The very small numbers are part of a common 8-bit, 16-bit or 32-bit processor, even with a 64-bit processor often no longer processable with the required accuracy.
Somit liegt der Erfindung das Problem zugrunde, ein Hidden Markov Modell zu trainieren, wobei das Training mit reduzierten numerischen Problemen und mit reduziertem Rechenaufwand verglichen mit dem Baum-Welch-Verfahren durchführbar ist.The problem thus lies with the invention based on training a hidden Markov model, the training with reduced numerical problems and with reduced computing effort compared to the Baum-Welch method.
Das Problem wird durch das Verfahren und die Vorrichtung zum Trainieren eines Hidden Markov Modells sowie durch ein Computerprogramm-Element und ein Computerlesbares Speichermedium mit den Merkmalen gemäß den unabhängigen Patentansprüchen gelöst.The problem is caused by the procedure and the device for training a hidden Markov model as well through a computer program element and a computer readable storage medium solved with the features according to the independent claims.
Bei einem Verfahren zum rechnergestützten Trainieren eines Hidden Markov Modells werden Zustandsparameter gebildet, mit denen Zustände des Hidden Markov Modells beschrieben werden.In a process for computer-aided training of a hidden Markov model, state parameters are formed with those states of the Hidden Markov model.
Unter Verwendung von Trainingsdatenvektoren wird ein k-Nächster-Nachbar-Clustering-Verfahren auf die Zustandsparameter des Hidden Markov Modells ausgeführt, wobei die Zustandsparameter gemäß den Trainingsdatenvektoren angepasst werden. Ruf diese Weise wird das trainierte Hidden Markov Modell gebildet.Using training data vectors becomes k-nearest neighbor clustering on the state parameters of the Hidden Markov model, where the state parameters according to the training data vectors be adjusted. Call this way the trained Hidden Markov Model formed.
Eine Vorrichtung zum Trainieren eines Hidden Markov Modells weist eine Prozessoreinheit auf, die derart eingerichtet ist, dass die oben beschriebenen Verfahrensschritte durchführbar sind oder durchgeführt werden.A device for training a Hidden Markov model has a processor unit that is is set up that the process steps described above feasible are or are being carried out.
Ein Computerprogramm-Element weist, wenn es von einer Prozessoreinheit ausgeführt wird, die oben beschriebenen Schritte auf zum Trainieren eines Hidden Markov Modells.A computer program element points when executed by a processor unit, the ones described above Steps on to train a Hidden Markov model.
In einem Computerlesbaren Speichermedium ist ein Programm gespeichert, das, wenn es von einer Prozessoreinheit ausgeführt wird, die oben beschriebenen Verfahrensschritte aufweist zum Trainieren eines Hidden Markov Modells.In a computer readable storage medium is a program stored when it is run by a processor unit accomplished which has the method steps described above for training of a hidden Markov model.
Anschaulich wird erfindungsgemäß das Problem der Bestimmung der Systemparameter des HMMs (anders ausgedrückt der Zustandsparameter des HMMs) auf die Bestimmung von Repräsentanten der Trainingsdatenvektoren zurückgeführt. Alle Trainingsdatenvektoren mit gemeinsamer Bedeutung, die bei einem Spracherkennungssystem beispielsweise eine lautsprachliche Einheit repräsentieren, werden vorzugsweise zu einem Zustand zusammengruppiert. Innerhalb der Trainingsdatenvektoren werden Repräsentanten ermittelt. Die logarithmierten Emissionswahrscheinlichkeiten erhält man vorzugsweise als euklidische Distanz zwischen den Repräsentanten des HMMs und dem Beobachtungsvektor des Eingangssignals. Die Zustandsübergangs-Wahrscheinlichkeiten und die Initialwahrscheinlichkeiten werden gemäß einer Ausgestaltung der Erfindung als Konstanten angenommen.According to the invention, the problem becomes clear the determination of the system parameters of the HMM (in other words, the State parameters of the HMM) on the determination of representatives of the training data vectors. All Training data vectors with common meaning in a speech recognition system for example, represent a spoken language unit, are preferred to grouped together in a state. Within the training data vectors become representatives determined. The logarithmic emission probabilities are preferably obtained as the Euclidean distance between the representatives of the HMM and the Observation vector of the input signal. The state transition probabilities and the initial probabilities are according to an embodiment of the invention accepted as constants.
Die Trainingsdatenvektoren sind üblicherweise Vektoren, welche das Verhalten eines technischen Systems beschreiben und vorzugsweise zu Beginn des Verfahrens gemessen werden. Im Rahmen der Spracherkennung werden somit beispielsweise Äußerungen eines Menschen aufgenommen und aus dem aufgenommenen Sprachsignal werden die Trainingsdatenvektoren bestimmt. Im Rahmen der digitalen Bildverarbeitung werden beispielsweise Bilder mittels einer Kamera aufgenommen und die digitalisierten Bilder werden verwendet, um daraus Trainingsdatenvektoren zu generieren.The training data vectors are common Vectors that describe the behavior of a technical system and preferably measured at the beginning of the process. As part of Speech recognition thus includes, for example, human expressions and the training data vectors become the recorded speech signal certainly. In the context of digital image processing, for example Images captured by a camera and the digitized Images are used to generate training data vectors from them.
Allgemein stellen die Trainingsdatenvektoren Daten dar, die üblicherweise ein technisches System in seinem tatsächlichen Verhalten beschreiben und dienen dazu, das Verhalten des technischen Systems möglichst wahrheitsgetreu mittels des Hidden Markov Modells nachzubilden.In general, the training data vectors Data that is common describe a technical system in its actual behavior and serve the behavior of the technical system as possible to reproduce truthfully using the Hidden Markov model.
Durch die Erfindung wird es möglich, die bei dem Baum-Welch-Verfahren auftretenden numerischen Probleme zu vermeiden, da nicht mehr Produkte von vielen Wahrscheinlichkeitswerte ermittelt werden müssen.The invention makes it possible to in the Baum-Welch process Avoid occurring numerical problems as no more products must be determined from many probability values.
Somit ist die Erfindung selbst auf einem Prozessor mit einer relativ geringen Wortbreite und mit einer relativ geringen Rechenleistung einsetzbar. Damit eignet sich die Erfindung insbesondere zum Einsatz in einem Embedded System.Thus, the invention itself is based on a processor with a relatively small word width and with a relative low computing power can be used. The invention is therefore suitable especially for use in an embedded system.
Bevorzugte Weiterbildungen der Erfindung ergeben sich aus den abhängigen Ansprüchen.Preferred developments of the invention result from the dependent Claims.
Die im Folgenden beschriebenen Ausgestaltungen der Erfindung betreffen das Verfahren und die Vorrichtung zum Trainieren eines Hidden Markov Modells sowie das Computerprogramm-Element als auch das Computerlesbare Speichermedium.The configurations described below The invention relates to the method and the device for training of a hidden Markov model as well as the computer program element as well the computer readable storage medium.
Gemäß einer Ausgestaltung der Erfindung ist es vorgesehen, die Trainingsdatenvektoren zu Beginn des Verfahrens in unterschiedliche Zustandsgruppen zu gruppieren, wobei eine Zustandsgruppe jeweils einem Zustand des Hidden Markov Modells zugeordnet ist. Die Zustandsparameter eines jeweiligen Zustands des Hidden Markov Modells werden mit Trainingsdatenvektoren der zugehörigen Zustandsgruppe trainiert.According to an embodiment of the invention the training data vectors are provided at the beginning of the method to group into different state groups, one state group is assigned to a state of the Hidden Markov model. The state parameters of a respective state of the Hidden Markov Models with training data vectors of the associated state group trained.
Durch die Zuordnung von Trainingsdatenvektoren zu Gruppen und damit durch das Zusammenfassen von Trainingsdatenvektoren in Gruppen einander hinsichtlich eines vorgegebenen Ähnlichkeitskriteriums ähnlicher Trainingsdatenvektoren wird die Konvergenz des Trainingsverfahrens erheblich beschleunigt und somit der Bedarf an Rechenleistung weiter reduziert.By assigning training data vectors into groups and thus by combining training data vectors in groups more similar to each other in terms of a given similarity criterion Training data vectors will converge the training process significantly accelerated and thus the need for computing power further reduced.
Im Rahmen der Anwendung eines Hidden Markov Modells zur Sprachverarbeitung bedeutet dies beispielsweise, dass die Trainingsdatenvektoren zu Gruppen mit einer jeweils gemeinsamen Bedeutung zusammengefasst werden. Im Rahmen der Sprachverarbeitung werden die Trainingsdatenvektoren beispielsweise in Gruppen zusammengefasst, wobei jede Gruppe jeweils eine lautsprachliche Einheit repräsentiert.As part of the application of a hidden For example, Markov's language processing model means that the training data vectors form groups with a common one Meaning summarized. As part of language processing the training data vectors are grouped together, for example, where each group represents a spoken unit.
Als lautsprachliche Einheit wird im Rahmen der Erfindung eine Symboldarstellung einer lautsprachlichen Äußerung verstanden, beispielsweise:
- – eine Symboldarstellung von einzelnen Zeichen, die eine lautsprachliche Äußerung repräsentieren,
- – Phonemsegmente,
- – Phoneme,
- – Allophone,
- – Diphone,
- – Halbsilben, oder
- – ganze Wörter.
- A symbol representation of individual characters that represent a spoken utterance,
- - phoneme segments,
- - phonemes,
- - Allophones,
- - Diphone,
- - half syllables, or
- - whole words.
Zur Weiteren Vereinfachung und somit zur schnelleren Durchführbarkeit des Verfahrens ist es in einer Ausgestaltung der Erfindung vorgesehen, als Zustandsparameter die Mittelwertvektoren von den Wahrscheinlichkeitsdichtefunktionen zu verwenden, welche den jeweiligen Zustand des Hidden Markov Modells beschreiben.For further simplification and thus for faster feasibility In one embodiment of the invention, the method is provided the mean value vectors of the probability density functions as state parameters to use which the respective state of the Hidden Markov model describe.
Vorzugsweise wird als k-Nächster-Nachbar-Clustering-Verfahren ein 1-Nächster-Nachbar-Clustering-Verfahren eingesetzt (d.h. k = 1), anders ausgedrückt ein Winner-Takes-All-Verfahren (WTA-Verfahren).Is preferably used as the k-nearest-neighbor clustering method a 1-nearest-neighbor clustering process used (i.e. k = 1), in other words a winner takes all method (WTA) method.
Bei dieser Ausgestaltung der Erfindung wird somit nur der tatsächlich dem jeweiligen Trainingsdatenvektor in dem Vergleichsraum am Nächsten liegende Zustandsparameter, insbesondere Mittelwertvektor ausgewählt und dem jeweiligen Trainingsdatenvektor angepasst. Auf diese Weise wird das Konvergenzverhalten des Trainingsverfahrens weiter verbessert.In this embodiment of the invention thus only that becomes actual closest to the respective training data vector in the comparison space State parameters, in particular mean vector selected and adapted to the respective training data vector. That way further improves the convergence behavior of the training process.
Gemäß einer anderen Ausgestaltung der Erfindung ist es vorgesehen, zu prüfen, ob ein Zustandsparameter ausreichend häufig im Rahmen des k-Nächster-Nachbar-Clustering-Verfahrens angepasst worden ist, und für den Fall, dass ein Zustandsparameter nicht ausreichend häufig im Rahmen des k- Nächster-Nachbar-Clustering-Verfahrens angepasst worden ist, dass dieser ersetzt wird durch einen neuen Zustandsparameter. Der neue Zustandsparameter ist vorzugsweise dadurch charakterisiert, dass er ausreichend häufig, vorzugsweise am häufigsten, im Rahmen des k-Nächster-Nachbar-Clustering-Verfahrens angepasst worden ist.According to another embodiment The invention provides for checking whether a state parameter sufficiently often as part of the k-nearest-neighbor clustering process has been adjusted and for the case that a state parameter is not sufficiently frequent in the Framework of the k-nearest-neighbor clustering process has been adjusted so that it is replaced by a new one State parameters. The new state parameter is preferably due to this characterizes that it is sufficiently frequent, preferably most frequently, adapted as part of the k-nearest-neighbor clustering process has been.
Durch diese Ausgestaltung der Erfindung wird das Konvergenzverhalten des Trainingsverfahrens weiter verbessert.Through this embodiment of the invention the convergence behavior of the training process is further improved.
Alternativ kann der neue Zustandsparameter auch zufallsbasiert erzeugt werden.Alternatively, the new state parameter can also be generated randomly.
Gemäß einer anderen Ausgestaltung der Erfindung ist es vorgesehen, einen Zustandsparameter im Rahmen des k-Nächster-Nachbar-Clustering-Verfahrens in einem umso geringeren Maße an die Trainingsdatenvektoren anzupassen, je mehr Trainingsdatenvektoren im Rahmen des Trainingsverfahrens berücksichtigt werden.According to another embodiment The invention provides a state parameter in the frame of the k-nearest-neighbor clustering method to an even lesser extent adapt to the training data vectors, the more training data vectors be taken into account as part of the training process.
Das Verfahren eignet sich insbesondere zum Einsatz in einem Embedded System.The method is particularly suitable for use in an embedded system.
Ferner kann die Erfindung in einem der folgenden Bereiche eingesetzt werden:
- – in der Signalverarbeitung,
- – in der Mustererkennung,
- – in der Sprachverarbeitung, insbesondere in der sprecherabhängigen Spracherkennung oder der Sprechererkennung, insbesondere in einer Gerätesteuerung, beispielsweise in einem Telekommunikationsgerät, in der Home Automation, d.h. beispielsweise in einer Umgebungssteuerung,
- – in der Bildverarbeitung,
- – in der Schriftzeichenerkennung,
- – im Rahmen der Prognose des Verhaltens eines technischen Systems, welches mittels Hidden Markov Modells beschrieben wird.
- - in signal processing,
- - in pattern recognition,
- In speech processing, in particular in speaker-dependent speech recognition or speaker recognition, in particular in device control, for example in a telecommunications device, in home automation, ie for example in environmental control,
- - in image processing,
- - in character recognition,
- - as part of the prediction of the behavior of a technical system, which is described using the Hidden Markov model.
Anschaulich kann die Erfindung darin gesehen werden, dass die zu ermittelnden Repräsentanten der Trainingsdatenvektoren gemäß folgendem Verfahren bestimmt werden.The invention can be clearly illustrated therein can be seen that the representatives of the training data vectors to be determined according to the following Procedure to be determined.
Zunächst werden alle die Trainingsvektoren ermittelt, die einem Zustand zugeordnet sind. Anschließend erfolgt eine Initialisierung, vorzugsweise eine Zufalls-Initialisierung der gewünschten Anzahl von Repräsentanten der Trainingsdatenvektoren. Nachfolgend werden die Repräsentanten, d.h. die Zustandsparameter, an die Wahrscheinlichkeitsdichtefunktion der Trainingsdatenvektoren adaptiert; anders ausgedrückt angepasst, indem
- a) der in dem Vergleichsraum räumlich nächstliegende Repräsentant (Winner) zum aktuell betrachteten Trainingsdatenvektor im Sinne einer minimalen euklidischen Distanz ermittelt wird,
- b) der ermittelte Repräsentant mit steigender Zahl von Durchläufen, vorzugsweise pro Durchlauf, abnehmender Adaptionskonstante an den jeweilig verwendeten Trainingsdatenvektor angepasst wird.
- a) the representative (winner) spatially closest to the currently considered training data vector is determined in terms of a minimal Euclidean distance,
- b) the determined representative is adapted to the training data vector used in each case with increasing number of runs, preferably per run, decreasing adaptation constant.
Die Schritte a) und b) werden in einer beliebig vorgebbaren Anzahl von Durchläufen mit allen Trainingsdatenvektoren durchgeführt.Steps a) and b) are described in an arbitrary number of runs with all training data vectors carried out.
Werden Zustandsparameter innerhalb eines Durchlaufs nicht oft genug zum Winner ermittelt, so werden diese gesondert behandelt, vorzugsweise dahingehend, dass für den Fall, dass ein Zustandsparameter zu selten getroffen wird; er durch jenen Repräsentanten, d.h. jenen Zustandsparameter, ersetzt wird, der in demselben Durchlauf am häufigsten als Winner bestimmt wurde.Are state parameters within of a run are not determined often enough to be the winner, so treats them separately, preferably in such a way that in the event that that a condition parameter is met too rarely; he through that Representatives, i.e. that state parameter that is replaced in the same pass most frequently when Winner was determined.
Schließlich wird vorzugsweise die jeweils verwendete Anpassungskonstante (Adaptionskonstante) an die Gesamtanzahl der berücksichtigten Trainingsdatenvektoren angepasst. Die Adaptionskonstante wird in der Art gewählt, dass das Adaptionsverhalten auch bei Zuständen mit stark unterschiedlicher Anzahl von Trainingsdatenvektoren, welche dem jeweiligen Zustand zugeordnet sind, gleich und unabhängig von der Skalierung der Trainingsdatenvektoren ist.Finally, preferably each used adaptation constant (adaptation constant) to the Total number of considered Training data vectors adjusted. The adaptation constant is in of the type chosen that the adaptation behavior even in conditions with very different Number of training data vectors which correspond to the respective state are assigned the same and regardless of the scaling of the Training data vectors is.
Ein Ausführungsbeispiel der Erfindung ist in den Figuren dargestellt und wird im Folgenden näher erläutert.An embodiment of the invention is shown in the figures and is explained in more detail below.
Es zeigenShow it
Die Spracherkennungseinrichtung
In beiden Betriebsmodi wird das von
dem Benutzer eingesprochene Sprachsignal
Es ist in diesem Zusammenhang anzumerken,
dass das Mikrofon
Gemäß diesem Ausführungsbeispiel
ist es vorgesehen, dass das digitalisierte Signal
Der Rechner
Mittels des Mikroprozessors
Ferner ist ein ebenfalls mit dem
Computerbus
In dem digitalen Signalprozessor
Ferner ist der Rechner
Über
zusätzliche
Kabel oder Funkverbindungen, beispielsweise eine Infrarot-Verbindung
oder eine Bluetooth-Verbindung
Der Aktor
Gemäß dem Ausführungsbeispiel der Erfindung
weist die Vorverarbeitungseinheit
In einer alternativen Ausführungsform
kann die Vorverarbeitungseinheit
In dem Rechner
In einem Basis-Wortschatz, der zu
Beginn des Verfahrens in einem elektronischen Wörterbuch
Das Training der Hidden Markov Modelle erfolgt gemäß diesem Ausführungsbeispiel in drei Phasen:
- – einer erste Phase, in der die in der Trainings-Datenbank enthaltenen Sprachsignale segmentiert werden,
- – einer zweiten Phase, in der die LDA-Matrix (lineare Diskriminanzanalyse-Matrix) berechnet wird sowie
- – einer dritten Phase, in der das Codebuch, das heißt die HMM-Prototypen-Merkmalsvektoren für jeweils eine in einem Auswahlschritt ausgewählte Anzahl von Merkmalsvektor-Komponenten berechnet werden.
- A first phase in which the speech signals contained in the training database are segmented,
- - a second phase in which the LDA matrix (linear discriminant analysis matrix) is calculated and
- A third phase in which the code book, that is to say the HMM prototype feature vectors, is calculated for a number of feature vector components selected in a selection step.
Die Gesamtheit dieser drei Phasen wird im Weiteren als das Training der Hidden Markov Modelle bezeichnet (HMM-Training).The entirety of these three phases is referred to below as the training of the Hidden Markov models (HMM training).
Das HMM-Training wird unter Verwendung
des DSPs
Gemäß diesem Ausführungsbeispiel wird jede gebildete lautsprachliche Einheit, das heißt jedes Phonem, in drei aufeinander folgende Phonemsegmente aufgeteilt, entsprechend einer Initial-Phase (erstes Phonemsegment), einer zentralen Phase (zweites Phonemsegment) und einer Endphase (drittes Phonemsegment) eines Lauts, das heißt eines Phonems.According to this embodiment each spoken unit, that is, each Phoneme, divided into three consecutive phoneme segments, corresponding to an initial phase (first phoneme segment), a central one Phase (second phoneme segment) and a final phase (third phoneme segment) of a sound, that is of a phoneme.
Anders ausgedrückt wird jeder Laut in einem Lautmodell mit drei Zuständen, das heißt mit einem Drei-Zustands-HMM modelliert.In other words, each sound becomes one Sound model with three states, this means modeled with a three-state HMM.
Das Hidden Markov Modells
- – eine Emissionswahrscheinlichkeits-Verteilung bj(o), mit der angegeben wird die Wahrscheinlichkeit, dass der Beobachtungsvektor o in dem Zustand j emittiert wird,
- – Zustandsübergangs-Wahrscheinlichkeiten αij für den Zustandsübergang von dem Zustand i in den Zustand j,
- – Eine
Initialwahrscheinlichkeit πi, mit der die Wahrscheinlichkeit angegeben
wird, mit welcher ein Pfad durch das Hidden Markov Modell
200 in dem Zustand i beginnt.
- - one Emission probability distribution bj(O) with which is specified the probability that the observation vector O in the state j is emitted,
- State transition probabilities α ij for the state transition from state i to state j,
- - An initial probability π i , which indicates the probability with which a path through the Hidden Markov model
200 starts in state i.
Im Folgenden werden ohne Einschränkung der Allgemeingültigkeit die folgenden Randbedingungen angenommen.In the following, the universality the following boundary conditions are assumed.
In einem Links-Rechts-Modell als
Hidden Markov Modell
Anders ausgedrückt bedeutet dies, dass in
diesem Fall für
das beispielhafte Hidden Markov Modell
Alle anderen (in
Es ist in diesem Zusammenhang anzumerken, dass es nicht erforderlich ist, den Zustandsübergangs-Wahrscheinlichkeiten αij einen konstanten Wert zuzuordnen. Es ist in einer alternativen Ausgestaltung der Erfindung beispielsweise vorgesehen, in den Zustandsübergangs-Wahrscheinlichkeiten αij die Phonemlänge zu codieren.In this connection it should be noted that it is not necessary to assign a constant value to the state transition probabilities α ij . In an alternative embodiment of the invention, it is provided, for example, to encode the phoneme length in the state transition probabilities α ij .
Ferner wird gemäß diesem Ausführungsbeispiel
definiert:
Die Emissionswahrscheinlichkeits-Verteilung bj(o) wird gemäß diesem Ausführungsbeispiel mittels kontinuierlicher, mehrdimensionaler Wahrscheinlichkeits-Verteilung, so genannter continuous density mixtures modelliert gemäß folgender Vorschrift: wobei mit
- – cjk ein Wahrscheinlichkeits-Verteilungskoeffizient der k-ten Wahrscheinlichkeits-Verteilung in dem Zustand j,
- – Mj die Anzahl von in dem Zustand j vorhandener Wahrscheinlichkeits-Verteilungen,
und wobei wobei mit
- – ujk ein Mittelwertvektor der k-ten Wahrscheinlichkeits-Verteilung in dem Zustand j,
- – Σjk eine Kovarianzmatrix der k-ten Wahrscheinlichkeits-Verteilung in dem Zustand j,
- – n die Dimension des Beobachtungsvektors o,
- C jk is a probability distribution coefficient of the kth probability distribution in the state j,
- Mj the number of probability distributions present in state j,
and where being with
- U jk is an average vector of the kth probability distribution in the state j,
- - Σ jk is a covariance matrix of the kth probability distribution in the state j,
- - n the dimension of the observation vector o,
Jede Wahrscheinlichkeits-Verteilung entspricht einer mehrdimensionalen Gaußverteilung. Mit einem solchen continuous density mixture model kann jede kontinuierliche Wahrscheinlichkeitsdichtefunktion beliebig genau angenähert werden. Setzt man die Varianzen der Gaußverteilungen auf einen konstanten Wert und sind gleichzeitig die Kovarianzen gleich Null – was der Fall ist, wenn der Beobachtungsvektor o mittels einer im Folgenden noch näher erläuterten Linearen Diskriminanzanalyse (LDA) ermittelt wurde – so sind zur Bestimmung der Emissionswahrscheinlichkeits-Verteilung bj(o) nur noch die Mittelwertvektoren μjk erforderlich.Each probability distribution corresponds to a multi-dimensional Gaussian distribution. With such a continuous density mixture model, any continuous probability density function can be approximated with any accuracy. If the variances of the Gaussian distributions are set to a constant value and at the same time the covariances are zero - which is the case if the observation vector o was determined using a linear discriminant analysis (LDA), which is explained in more detail below - then the emission probability distribution is to be determined b j ( o ) only the mean vectors μ jk are required.
Während der Spracherkennung werden die drei Phonemsegmente in einer Bakis-Topologie oder allgemein einer Links-Rechts-Topologie aneinander gereiht und auf die Konkatenation dieser drei aneinander gereihten Segmente wird die Berechnung im Rahmen der sprecherunabhängigen Spracherkennung durchgeführt.While In speech recognition, the three phoneme segments in a Bakis topology or generally a left-right topology strung together and on the concatenation of these three segments in a row the calculation was carried out as part of speaker-independent speech recognition.
Wie im Weiteren noch näher erläutert wird,
wird in dem Spracherkennungsmodus ein Viterbi-Algorithmus zum Dekodieren
der Merkmalsvektoren, welche aus dem eingegebenen Sprachsignal
Nach erfolgter Segmentierung wird die LDA-Matrix A mittels einer LDA-Matrix-Berechnungseinheit ermittelt.After segmentation, the LDA matrix A is determined using an LDA matrix calculation unit.
Die LDA-Matrix A dient zur Transformation eines jeweiligen
Super-Merkmalsvektors y auf
einen Merkmalsvektor x gemäß folgender
Vorschrift:
- – x ein Merkmalsvektor,
- – A eine LDA-Matrix,
- – y ein Super-Merkmalsvektor,
- – y ein globaler Verschiebungsvektor
- - x a feature vector,
- A an LDA matrix,
- - y a super feature vector,
- - y a global displacement vector
Die LDA-Matrix A wird derart bestimmt, dass
- – die Komponenten des Merkmalsvektors x im statistischen Durchschnitt voneinander im Wesentlichen unkorreliert sind,
- – die statistischen Varianzen innerhalb einer Segmentklasse im statistischen Durchschnitt normalisiert sind,
- – die Zentren der Segmentklassen im statistischen Durchschnitt einen maximalen Abstand voneinander aufweisen und
- – die Dimension der Merkmalsvektoren x möglichst, vorzugsweise Spracherkennungsanwendungs-abhängig, reduziert wird.
- The components of the feature vector x are essentially uncorrelated from one another on a statistical average,
- The statistical variances within a segment class are normalized on a statistical average,
- - The centers of the segment classes have a maximum distance from each other on a statistical average and
- - The dimension of the feature vectors x is reduced as possible, preferably depending on the speech recognition application.
Im Folgenden wird das Verfahren zum Bestimmen der LDA-Matrix A gemäß diesen Ausführungsbeispielen erläutert.The method for determining the LDA matrix A according to these exemplary embodiments is explained below.
Es ist jedoch anzumerken, dass alternativ alle bekannten Verfahren zum Bestimmen einer LDA-Matrix A ohne Einschränkung eingesetzt werden kann.However, it should be noted that, alternatively, all known methods for determining an LDA matrix A can be used without restriction.
Es wird angenommen, dass J Segmentklassen existieren, wobei jede Segmentklasse j einen Satz Dy-dimensionaler Super-Merkmalsvektoren y enthält, das heißt, dass gilt: wobei mit Nj die Anzahl der in der Klasse j sich befindenden Super-Merkmalsvektoren y j bezeichnet wird.It is assumed that J segment classes exist, each segment class j containing a set D y -dimensional super feature vectors y , that is to say: where N j is the number of the class that are available super feature vectors y j j.
Mit wird die Gesamtzahl der Super-Merkmalsvektoren y bezeichnet.With is the total number of super feature vectors y .
Es ist anzumerken, dass die Super-Merkmalsvektoren y
j
k unter Verwendung der oben beschriebenen Segmentierung
der Sprachsignal-Datenbank ermittelt worden sind. Gemäß diesem
Ausführungsbeispiel
weist jeder Super-Merkmalsvektor y
j
k eine Dimension Dy von
Ferner sind in jedem Super-Merkmalsvektor y j k jeweils die Komponenten zweier zeitlich unmittelbar aufeinanderfolgender Zeitfenster im Rahmen der Kurzzeitanalyse enthalten (dies begründet obigen Faktor 2).Furthermore, each super feature vector y j k contains the components of two temporally immediately consecutive time windows in the context of the short-term analysis (this justifies factor 2 above).
Es ist in diesem Zusammenhang anzumerken, dass grundsätzlich eine beliebige, an die jeweilige Anwendung angepasste Zahl von Vektorkomponenten in dem Super-Merkmalsvektor y j k enthalten sein kann, beispielsweise bis zu 20 Cepstrums-Koeffizienten und deren zugehörigen zeitlichen erste Ableitungen und zweite Ableitungen.It should be noted in this connection that in principle any number of vector components adapted to the respective application can be contained in the super feature vector y j k , for example up to 20 cepstrums coefficients and their associated temporal first derivatives and second derivatives.
Der statistische Mittelwert oder anders ausgedrückt das Zentrum der Klasse j ergibt sich gemäß folgender Vorschrift: The statistical mean or, in other words, the center of class j results from the following rule:
Die Kovarianzmatrix Σ j der Klasse j ergibt sich gemäß folgender Vorschrift: The covariance matrix Σ j of class j results according to the following rule:
Die Durchschnitts-Intea-Streumatrix S w ist definiert als: wobei p(j) als Gewichtungsfaktor der Klasse j bezeichnet wird.The average intea scattering matrix S w is defined as: where p (j) is called the weighting factor of class j.
In analoger Weise ist die Durchschnitts-Inter-Streumatrix S b definiert als: als dem Durchschnitts-Super-Merkmalsvektor über alle Klassen.In an analogous manner, the average inter-scattering matrix S b is defined as: as the average super feature vector across all classes.
Die LDA-Matrix A wird zerlegt gemäß folgender Vorschrift:
- – U eine erste Transformationsmatrix,
- – W eine zweite Transformationsmatrix und
- – V eine dritte Transformationsmatrix
- - U a first transformation matrix,
- - W a second transformation matrix and
- - V a third transformation matrix
Die erste Transformationsmatrix U wird verwendet, um die Durchschnitts-Intra-Streumatrix S w zu diagonalisieren und wird ermittelt, indem die positiv definite und symmetrische Durchschnitts-Intra-Streumatrix S w in ihren Eigenvektorraum transformiert wird. In ihrem Eigenvektorraum ist die Durchschnitts-Intea-Streumatrix S w eine Diagonal-Matrix, deren Komponenten positiv und größer oder gleich null sind. Die Komponenten, deren Werte größer null sind, entsprechen der Durchschnitts-Varianz in der jeweiligen durch die entsprechende Vektorkomponente definierten Dimension.The first transformation matrix U is used to diagonalize the average intra-scatter matrix S w and is determined by transforming the positively definite and symmetrical average intra-scatter matrix S w into its eigenvector space. In its eigenvector space, the average intea scattering matrix S w is a diagonal matrix, the components of which are positive and greater than or equal to zero. The components whose values are greater than zero correspond to the average variance in the respective dimension defined by the corresponding vector component.
Die zweite Transformationsmatrix W wird zum Normalisieren der Durchschnitts-Varianzen verwendet und wird ermittelt gemäß folgender Vorschrift: The second transformation matrix W is used to normalize the average variances and is determined according to the following rule:
Die Transformation U·W wird auch als Weißung bezeichnet.The transformation U · W is also called whitening.
Mit
Um die Durchschnitts-Inter-Streumatrix S
b zu
diagonalisieren wird die dritte Transformationsmatrix V, die gebildet wird gemäß folgender
Vorschrift:
In dem Transformationsraum
Die Werte σ2 d sind die Eigenwerte der Durchschnitts-Inter-Streumatrix S b und stellen ein Maß für die so genannte Pseudoentropie der Merkmalsvektor-Komponenten dar, welche im Folgenden auch als Informationsgehalt der Merkmalsvektor-Komponenten bezeichnet wird. Es ist anzumerken, dass die Spur jeder Matrix invariant ist bezüglich irgendeiner Orthogonaltransformation, womit sich ergibt, dass die Summe die Gesamt-Durchschnitts-Varianz des Durchschnitts-Vektors x j der J Klassen darstellt.The values σ 2 d are the eigenvalues of the average inter-scattering matrix S b and represent a measure for the so-called pseudo-entropy of the feature vector components, which is also referred to below as the information content of the feature vector components. It should be noted that the trace of each matrix is invariant with respect to any orthogonal transformation, which results in the sum represents the total average variance of the average vector x j of the J classes.
Es ergibt sich somit eine ermittelte Anhängigkeit der Pseudoentropie der Merkmalsvektoren von den jeweils in dem Merkmalsvektor enthaltenen bzw. berücksichtigten Merkmalsvektor-Komponenten.The result is a determined pendency the pseudo-entropy of the feature vectors of those in the feature vector contained or considered Feature vector components.
Gemäß diesem Ausführungsbeispiel wird anschließend eine Dimensionsreduktion vorgenommen, indem die σ2 d-Werte in in ihrer Größe abfallender Reihenfolge sortiert werden und die σ2 d-Werte weggelassen werden, das heißt unberücksichtigt bleiben, die kleiner sind als ein vorgegebener Schwellwert. Der vorgegebene Schwellwert kann ferner kumulativ definiert sein.According to this exemplary embodiment, a dimension reduction is then carried out by sorting the σ 2 d values in order of decreasing size and omitting the σ 2 d values, that is to say disregarding those that are smaller than a predetermined threshold value. The predetermined threshold value can also be defined cumulatively.
Dann kann die LDA-Matrix A T angepasst werden, indem die Zeilen entsprechend den Eigenwerten σ2 d sortiert werden und die Zeilen weggelassen werden, die zu den ausreichend „kleinen" Varianzen gehören und damit nur einen geringen Informationsgehalt (geringe Pseudoentropie) aufweisen.Have then the LDA matrix A T can be adjusted by the lines corresponding to the eigenvalues σ 2 are sorted d and the rows are omitted belong to the sufficiently "small" variances, and thus only a small information content (low Pseudoentropie).
Gemäß diesem Ausführungsbeispiel werden die Komponenten mit den 24 größten Eigenwerten σ2 d verwendet, anders ausgedrückt Dx = 24.According to this exemplary embodiment, the components with the 24 largest eigenvalues σ 2 d are used, in other words D x = 24.
Die vier oben beschriebenen Teilschritte zum Ermitteln der LDA-Matrix A sind in folgender Tabelle zusammengefasst: The four steps described above for determining the LDA matrix A are summarized in the following table:
Das letzte Verfahren zum Teil-Verfahren im Rahmen des Trainings der Hidden Markov Modelle ist das Clustern der Merkmalsvektoren, welches mittels einer Clustereinheit durchgeführt wird und welches als Ergebnis ein jeweiliges Codebuch hat, jeweils spezifisch für einen Trainingsdatensatz mit einer vorgegebenen Anzahl von Merkmalsvektor-Komponenten. Die Gesamtheit der Repräsentanten der Segmentklassen wird als Codebuch bezeichnet und die Repräsentanten selbst werden auch als Prototypen der Phonemsegmentklasse bezeichnet.The last procedure to partial procedure Clustering is part of the training of the Hidden Markov models the feature vectors, which is carried out by means of a cluster unit and which result has a respective codebook, each specific for one Training data record with a predetermined number of feature vector components. The entirety of the representatives The segment classes are referred to as the code book and the representatives themselves are also called prototypes of the phoneme segment class.
Die Prototypen, im Weiteren auch als Prototyp-Merkmalsvektoren bezeichnet, werden gemäß dem Folgenden Verfahren ermittelt.The prototypes, furthermore as prototype feature vectors are designated according to the following Procedure determined.
Die
Gemäß einem in
Anschließend werden, wie oben erläutert wurde, die Trainingsdatenvektoren erfasst (Schritt 302).Then, as explained above, the training data vectors acquired (step 302).
In einem nachfolgenden Schritt werden die Trainingsdatenvektoren in unterschiedliche Zustandsgruppen, welche jeweils eine gemeinsame Bedeutung aufweisen, gemäß diesem Ausführungsbeispiel eine lautsprachliche Einheit oder einen Teil einer lautsprachlichen Einheit repräsentieren, gruppiert (Schritt 303) und einem jeweiligen Zustand, der ebenfalls die jeweilige lautsprachliche Einheit repräsentiert, zugeordnet.In a subsequent step the training data vectors in different state groups, which each have a common meaning, according to this embodiment a spoken unit or part of a spoken unit Represent unity, grouped (step 303) and a respective state that also represents the respective speaking unit.
Anschließend erfolgt für alle HMM-Zustände eine Zufalls-Initialisierung von Mj Mittelwertvektoren in einem jeweiligen HMM-Zustand.This is followed by a random initialization of M j mean vectors in a respective HMM state for all HMM states.
Üblicherweise sind für ein Ganzwortmodell mit ungefähr 2000 Repräsentanten, für ein Phonemmodell mit 4000 bis 10000 Repräsentanten bei ungefähr 100 bis 200 Zuständen bei der Initialisierung ungefähr 20 Mittelwertvektoren pro Zustand vorgesehen.Usually are for a full word model with approx 2000 representatives, for a Phoneme model with 4000 to 10000 representatives at approximately 100 to 200 states approximately at initialization 20 mean vectors are provided per state.
Die Zufallsinitialisierung der Mj Mittelwertvektoren μjk erfolgt
gemäß folgender
Vorschrift:
- – wstart ein Gewichtswert der initialisierten Mittelwertvektoren und
- – rand() eine Zufallszahl-Erzeugungsfunktion,
- - w start a weight value of the initialized mean vectors and
- Rand () a random number generation function,
Nach erfolgter Initialisierung der
Mj Mittelwertvektoren μjk für jeden
der HMM-Zustände
des Hidden Markov Modells
Anschließend wird ein Trainingsdatenvektorindex n, mit dem ein jeweiliger Trainingsdatenvektor eindeutig identifiziert wird, auf den Wert 1 gesetzt (Schritt 306).Then a training data vector index n with which a respective training data vector is uniquely identified is set to 1 (step 306).
Zu dem als erstes ausgewählten Trainingsdatenvektor, dem der Trainingsdatenvektorindex n = 1 zugeordnet ist, wird der Mittelwertvektor in dem Zustand j = 1 ermittelt, der dem Trainingsdatenvektor mit n = 1 in dem Vergleichsraum am Nächsten liegt (Schritt 307).To the first selected training data vector, to which the training data vector index n = 1 is assigned, the Average vector in the state j = 1 determined that the training data vector with n = 1 is closest in the comparison space (step 307).
Anders ausgedrückt bedeutet dies, dass zu dem aktuell betrachteten Trainingsdatenvektor v jn der nächstliegende Mittelwertvektor μjw gemäß folgender Vorschrift ermittelt wird: In other words, for the training data vector v jn currently under consideration, the closest mean vector μ jw is determined according to the following rule:
Der nächstliegende Mittelwertvektor (Winner μjw) wird in Abhängigkeit des aktuell verwendeten Trainingsdatenvektors v jn gemäß folgender Vorschrift an die Position des aktuellen Trainingsdatenvektors angepasst (Schritt 308): The closest mean value vector (winner μ jw ) is adapted to the position of the current training data vector depending on the currently used training data vector v jn (step 308):
Der Adaptionskoeffizient a nimmt gemäß diesem Ausführungsbeispiel mit der Anzahl P der Durchläufe durch alle Trainingsdatenvektoren ab gemäß folgenden Vorschriften:The adaptation coefficient a takes according to this embodiment with the number P of runs through all training data vectors from according to the following regulations:
1. Durchlauf:
Alle weiteren Durchläufe:
Das Ermitteln des jeweils nächstliegenden Mittelwertvektors μ jw und das entsprechende Anpassen des nächstliegenden Mittelwertvektors an den aktuellen Trainingsdatenvektor (Schritte 307, 308) wird für alle Trainingsdatenvektoren in der dem Zustand j zugeordneten Trainingsdatengruppe durchgeführt.The determination of the nearest mean vector μ jw and the corresponding adaptation of the nearest mean vector to the current training data vector (steps 307, 308) is carried out for all training data vectors in the training data group assigned to state j.
Anders ausgedrückt bedeutet dies, dass in einem Prüfschritt (Schritt 309) überprüft wird, ob der Trainingsdatenvektorindex n gleich dem Wert N ist, wobei mit N die Anzahl der in der jeweiligen Zustandsgruppe enthaltenen Trainingsdatenvektoren bezeichnet wird.In other words, it means that in a test step (Step 309) is checked, whether the training data vector index n is equal to the value N, where with N the number of those contained in the respective status group Training data vectors is called.
Ist dies nicht der Fall, so wird in einem nachfolgenden Schritt (Schritt 310) der Trainingsdatenvektorindex n um den Wert 1 erhöht und die Schritte 307 und 308 werden für den neuen, noch nicht berücksichtigten Trainingsdatenvektor n + 1 der dem HMM-Zustand j zugeordneten Zustandsgruppe erneut durchgeführt.If this is not the case, then in a subsequent step (step 310) the training data vector index n increased by 1 and steps 307 and 308 are for the new training data vector not yet considered n + 1 of the status group assigned to the HMM status j is carried out again.
Sind alle Trainingsdatenvektoren einer Zustandsgruppe berücksichtigt worden, so wird in einem nachfolgenden Schritt geprüft, ob ein vorgegebenes Abbruchkriterium, beispielsweise eine vorgegebene Anzahl von durchzuführenden Iterationen, erfüllt ist (Schritt 311).Are all training data vectors of a status group has been checked in a subsequent step whether a predefined termination criterion, for example a predefined number of to be performed Iterations, fulfilled (step 311).
Ist das Abbruchkriterium nicht erfüllt, so
wird eine neue Iteration, beginnend in Schritt 306, auf das Hidden
Markov Modell
Ist das Abbruchkriterium erfüllt, so wird in einem nachfolgenden Schritt geprüft, ob das Verfahren schon für alle HMM-Zustände J durchgeführt worden ist.If the termination criterion is fulfilled, then in a subsequent step it is checked whether the procedure already does for all HMM states J performed has been.
Anders ausgedrückt bedeutet dies, dass in
einem weiteren Prüfschritt
(Schritt 313) überprüft wird,
ob der Zustandsindex j gleich dem Wert J ist, wobei mit J die Anzahl
berücksichtigter
Zustände
des Hidden Markov Modells
Ist dies nicht der Fall, so wird der Zustandsindex j um den Wert 1 erhöht (Schritt 314) und die Schritt 306, 307, 308, 309, 310 werden für die Trainingsdatenvektoren des neuen Zustands (j + 1) erneut durchgeführt.If this is not the case, then the state index j is increased by the value 1 (step 314) and step 306, 307, 308, 309, 310 are for the training data vectors of the new state (j + 1) performed again.
Anders ausgedrückt bedeutet dies, dass alle Zustände unter Verwendung der den jeweiligen Zustandsgruppen zugeordneten Trainingsdatenvektoren gemäß dem oben beschriebenen Verfahren trainiert werden.In other words, it means that everyone conditions using those assigned to the respective status groups Training data vectors according to the above described procedures are trained.
Ist das Verfahren für alle J HMM-Zustände und dabei für alle N Trainingsdatenvektoren durchgeführt worden, so wird das Verfahren in einem Schritt 315 beendet.Is the procedure for all J HMM states and doing it for the procedure is carried out every N training data vectors ended in a step 315.
Im Folgenden werden zu dem oben beschriebenen Trainingsverfahren eines HMMs zwei bevorzugte Modifikationen beschrieben.The following will go to that described above Training methods of an HMM described two preferred modifications.
Gemäß einer alternativen Ausführungsform der Erfindung ist es vorgesehen, jene Mittelwertvektoren, die innerhalb einer Iteration nicht oft genug als nächstliegender Mittelwertvektor (als Winner) ermittelt worden sind, gesondert zu behandeln. Es wird ein Schwellenwertkoeffizient cgiveup eingeführt, der gemeinsam mit der Gesamtanzahl N der Trainingsdatenvektoren der jeweiligen Zustandsgruppe jene Schwelle definiert, unter der ein Mittelwertvektor als zu selten getroffen betrachtet wird.According to an alternative embodiment of the invention, it is provided that those mean value vectors that have not been determined often enough as the closest mean value vector (as a winner) within an iteration are treated separately. A threshold value coefficient c giveup is introduced which, together with the total number N of training data vectors of the respective status group, defines the threshold below which an average value vector is considered to have been hit too rarely.
Der Schwellenwert Ngiveup ergibt
sich somit gemäß folgender
Vorschrift:
War ein Mittelwertvektor nach einer Iteration nicht öfter als Ngiveup Mal der Winner, so wird er durch jenen Mittelwertvektor ersetzt, der in derselben Iteration am öftesten als nächstliegender Mittelwertvektor ermittelt worden ist. Gemäß der Vorschrift cgiveup = 0 wird ein Mittelwertvektor erst verworfen, wenn er innerhalb einer Iteration niemals getroffen wurde.If an average vector was not the winner more than N giveup times after an iteration, it is replaced by the average vector which was most often determined as the closest average vector in the same iteration. According to the rule c giveup = 0, an average vector is only rejected if it has never been hit within an iteration.
Diese Vorgehensweise hat insbesondere den Vorteil einer besseren Modellierung einer Feinstruktur in den Trainingsdatenvektoren.This approach has in particular the advantage of better modeling of a fine structure in the Training data vectors.
Gemäß einer anderen Ausführungsform der Erfindung erfolgt eine unterschiedliche Anpassung der Adaptionskonstanten a an die Gesamtzahl Nj der Trainingsdatenvektoren pro Zustand j. Entsprechend folgender Vorschrift ist die Adaptionskonstante a umso kleiner gewählt, je mehr Trainingsdatenvektoren vorhanden sind: wobei mit P die Anzahl der Durchläufe der Iterationen über alle Nj Trainingsdatenvektoren bezeichnet wird.According to another embodiment of the invention, the adaptation constant a is adapted differently to the total number N j of training data vectors per state j. According to the following regulation, the adaptation constant a is chosen the smaller the more training data vectors are present: where P denotes the number of iterations through all N j training data vectors.
Auf diese Weise wird erreicht, dass bei verschiedenen Zuständen mit stark unterschiedlicher Anzahl vorhandener Trainingsdatenvektoren in der jeweiligen Zustandsgruppe das Adaptionsverhalten des Cluster-Verfahrens gleich ist.In this way it is achieved that in different states with a very different number of existing training data vectors the adaptation behavior of the cluster method in the respective status group is equal to.
Die Variable wird in der Weise gewählt, dass die Adaptionskonstante a bei der ersten Iteration das 100-fache bis 10000-fache ihres Wertes bei der letzten Iteration beträgt, d.h. es gilt folgende Vorschrift: The variable is selected in such a way that the adaptation constant a in the first iteration is 100 times to 10,000 times its value in the last iteration, ie the following rule applies:
Damit berechnet sich zu: This is calculated to:
Durch die erfindungsgemäße Vorgehensweise wird die erforderliche Rechenzeit zum Trainieren eines Hidden Markov Modells gegenüber dem Baum-Welch-Verfahren erheblich reduziert.Through the procedure according to the invention is the computing time required to train a Hidden Markov Model the Baum-Welch process is significantly reduced.
Bei einem Personal Computer mit einer Taktfrequenz von 1 GHz bedeutet dies ein Aufwand weniger Stunden zum Trainieren eines Hidden Markov Modells gemäß der Erfindung gegenüber einer Rechenzeit zum Trainieren des Hidden Markov Modells gemäß dem Baum-Welch-Verfahren von einigen Wochen.With a personal computer with a Clock frequency of 1 GHz, this means an effort of a few hours for training a hidden Markov model according to the invention against one Computing time for training the hidden Markov model according to the Baum-Welch method of a few weeks.
Ferner treten erfindungsgemäß keine Zahlenwertprobleme mehr auf, da die Mittelwertvektoren dieselben Größenordnungen annehmen wie die Trainingsdatenvektoren.Furthermore, none occur according to the invention Numerical value problems more because the mean vectors are the same orders of magnitude assume like the training data vectors.
Auf die oben beschriebene Weise wurden die Basiseinträge des elektronischen Wörterbuches, das heißt die Basiseinträge zur sprecherunabhängigen Spracherkennung erstellt und gespeichert und die entsprechenden Hidden Markov Modelle trainiert.In the manner described above the basic entries of the electronic dictionary, this means the basic entries for speaker independent Speech recognition created and saved and the corresponding Hidden Markov models trained.
Somit existiert für jeden Basiseintrag jeweils ein Hidden Markov Modell.Thus there is one for each basic entry a hidden Markov model.
Unter Verwendung der Hidden Markov Modelle wird in dem Spracherkennungssystem in dem Spracherkennungsmodus eine Ansicht bekannter Spracherkennung durchgeführt.Using the Hidden Markov Models are in the speech recognition system in the speech recognition mode performed a view of known speech recognition.
Gerade zur Steuerung eines eine Vielzahl
von unterschiedlichen Funktionalitäten bereitstellenden Systems,
wie eines mit einer Vielzahl unterschiedlicher Funktionen versehenen
Autoradios
In diesem Dokument sind folgende Veröffentlichungen zitiert:
- [1] John Nerbonne and Wilbert Heeringa, Measuring Dialect Distance Phonetically, in: John Coleman (ed.) Workshop on Computational Phonology, Special Interest Group of the Association for Computational Linguistics, Madrid, 1997, S. 11 – 18
- [2] J. Nerbonne et al, Phonetic Distance between Dutch Dialects, Proceedings of CLIN '95, S. 185 – 202, Antwerpen, 1995
- [3] D. Hirschfeld, Comparing static and dynamic features for segmental cost function calculation in concatenative speech synthesis, ICSLP, Peking, 2000
- [1] John Nerbonne and Wilbert Heeringa, Measuring Dialect Distance Phonetically, in: John Coleman (ed.) Workshop on Computational Phonology, Special Interest Group of the Association for Computational Linguistics, Madrid, 1997, pp. 11-18
- [2] J. Nerbonne et al, Phonetic Distance between Dutch Dialects, Proceedings of CLIN '95, pp. 185-202, Antwerp, 1995
- [3] D. Hirschfeld, Comparing static and dynamic features for segmental cost function calculation in concatenative speech synthesis, ICSLP, Beijing, 2000
- 100100
- SpracherkennungseinrichtungSpeech recognition device
- 101101
- Sprachsignalspeech signal
- 102102
- Mikrofonmicrophone
- 103103
- Aufgenommenes analoges SprachsignalTaped analog voice signal
- 104104
- Vorverarbeitungpreprocessing
- 105105
- Vorverarbeitetes Sprachsignalpreprocessed speech signal
- 106106
- Analog-/Digital-WandlerAnalog / digital converter
- 107107
- Digitales Sprachsignaldigital speech signal
- 108108
- Rechnercomputer
- 109109
- EingangsschnittstelleInput interface
- 110110
- Mikroprozessormicroprocessor
- 111111
- SpeicherStorage
- 112112
- AusgangsschnittstelleOutput interface
- 113113
- Computerbuscomputer bus
- 114114
- DSPDSP
- 115115
- Tastaturkeyboard
- 116116
- Computermauscomputer mouse
- 117117
- Kabelelectric wire
- 118118
- Kabelelectric wire
- 119119
- Funkverbindungradio link
- 120120
- Funkverbindungradio link
- 121121
- Lautsprecherspeaker
- 122122
- Aktoractuator
- 123123
- DSPDSP
- 1 1
- HMM-ZustandHMM state
- 22
- HMM-ZustandHMM state
- 33
- HMM-ZustandHMM state
- 44
- HMM-ZustandHMM state
- 55
- HMM-ZustandHMM state
- αij α ij
- Zustandsübergangs-WahrscheinlichkeitenState transition probabilities
- 300300
- Ablaufdiagrammflow chart
- 301301
- Startbegin
- 302302
- Erfassen TrainingsdatenvektorenTo capture Training data vectors
- 303303
- Gruppieren Trainingsdatenvektoren in ZustandsgruppenGroup Training data vectors in state groups
- 304304
- Initialisieren Mittelwertvektoren der HMM-ZuständeInitialize Mean vectors of the HMM states
- 305305
- Zustandsindex j = 1state index j = 1
- 306306
- Trainingsdatenvektorindex n = 1Training data vector index n = 1
- 307307
- Ermitteln des dem Trainingsdatenvektor n nächstliegendenDetermine the one closest to the training data vector n
- MittelwertvektorsMean vector
- 308308
- Anpassen des nächstliegenden Mittelwertvektors anTo adjust the closest Mean vector
- TrainingsdatenvektorTraining data vector
- 309309
- n = N ?n = N?
- 310310
- n = n + 1n = n + 1
- 311311
- Abbruchkriterium erfüllt?termination criterion Fulfills?
- 312312
- ap+1 = ap·adiff a p + 1 = a p · a diff
- 313313
- j = J ?j = J?
- 314314
- j = j + 1j = j + 1
- 315315
- EndeThe End
- 400400
- Mobilfunk-TelefongerätMobile phone device
- 500500
- Autoradiocar radio
- 501501
- Navigationssystemnavigation system
- 502502
- CD-AbspielgerätCD player
- 503503
- Kassettenrekordertape recorder
- 504504
- Radioradio
- 505505
- Telefongerät mit FreisprechanlageTelephone device with hands-free system
- 506506
- Bildschirmscreen
Claims (12)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE2003102101 DE10302101A1 (en) | 2003-01-21 | 2003-01-21 | Training of a Hidden Markov Model using training data vectors and a nearest neighbor clustering method based on condition parameters used to describe the Hidden Markov Model |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE2003102101 DE10302101A1 (en) | 2003-01-21 | 2003-01-21 | Training of a Hidden Markov Model using training data vectors and a nearest neighbor clustering method based on condition parameters used to describe the Hidden Markov Model |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| DE10302101A1 true DE10302101A1 (en) | 2004-08-05 |
Family
ID=32667696
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE2003102101 Ceased DE10302101A1 (en) | 2003-01-21 | 2003-01-21 | Training of a Hidden Markov Model using training data vectors and a nearest neighbor clustering method based on condition parameters used to describe the Hidden Markov Model |
Country Status (1)
| Country | Link |
|---|---|
| DE (1) | DE10302101A1 (en) |
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9420109B2 (en) | 2012-03-23 | 2016-08-16 | Dolby Laboratories Licensing Corporation | Clustering of audio streams in a 2D / 3D conference scene |
| CN112613191A (en) * | 2020-12-31 | 2021-04-06 | 广东电网有限责任公司广州供电局 | Cable health state evaluation method and device, computer equipment and storage medium |
| CN114218998A (en) * | 2021-11-02 | 2022-03-22 | 国家电网有限公司信息通信分公司 | Power system abnormal behavior analysis method based on hidden Markov model |
| CN116805062A (en) * | 2023-08-22 | 2023-09-26 | 长沙隼眼软件科技有限公司 | Target classification method, device and storage medium |
| CN117951491A (en) * | 2024-02-05 | 2024-04-30 | 苏州光格科技股份有限公司 | Data enhancement method and device, electronic equipment and storage medium |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5806030A (en) * | 1996-05-06 | 1998-09-08 | Matsushita Electric Industrial Co Ltd | Low complexity, high accuracy clustering method for speech recognizer |
| DE69519297T2 (en) * | 1994-07-18 | 2001-05-17 | Sri International, Menlo Park | METHOD AND DEVICE FOR VOICE RECOGNITION BY MEANS OF OPTIMIZED PARTIAL BUNDLING OF LIKELIHOOD MIXTURES |
-
2003
- 2003-01-21 DE DE2003102101 patent/DE10302101A1/en not_active Ceased
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE69519297T2 (en) * | 1994-07-18 | 2001-05-17 | Sri International, Menlo Park | METHOD AND DEVICE FOR VOICE RECOGNITION BY MEANS OF OPTIMIZED PARTIAL BUNDLING OF LIKELIHOOD MIXTURES |
| US5806030A (en) * | 1996-05-06 | 1998-09-08 | Matsushita Electric Industrial Co Ltd | Low complexity, high accuracy clustering method for speech recognizer |
Non-Patent Citations (3)
| Title |
|---|
| HIRSCHFELD, D.: Comparing static and dynamic features for segmental cost function calculation in concatenataive speech synthesis, ICSLP, Peking 2000 * |
| NERBONNE, J. et al.: Phonetic Distance between Dutch Dialects, Proceedings of CLIN '95, Antwerpen 1995, S. 185-202 * |
| NERBONNE, John and HEERINGA, Wilbert: Measuring Dialect Distance Phonetically. in: John Coleman (ed.) Workshop on Computational Phonology, Special Interest Group of the Association for Computational Linguistics, Madrid 1997, S. 11-18 * |
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9420109B2 (en) | 2012-03-23 | 2016-08-16 | Dolby Laboratories Licensing Corporation | Clustering of audio streams in a 2D / 3D conference scene |
| CN112613191A (en) * | 2020-12-31 | 2021-04-06 | 广东电网有限责任公司广州供电局 | Cable health state evaluation method and device, computer equipment and storage medium |
| CN114218998A (en) * | 2021-11-02 | 2022-03-22 | 国家电网有限公司信息通信分公司 | Power system abnormal behavior analysis method based on hidden Markov model |
| CN116805062A (en) * | 2023-08-22 | 2023-09-26 | 长沙隼眼软件科技有限公司 | Target classification method, device and storage medium |
| CN117951491A (en) * | 2024-02-05 | 2024-04-30 | 苏州光格科技股份有限公司 | Data enhancement method and device, electronic equipment and storage medium |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE69818231T2 (en) | METHOD FOR THE DISCRIMINATIVE TRAINING OF VOICE RECOGNITION MODELS | |
| EP0821346B1 (en) | Method for speaker verification by a computer by means of at least one speech signal spoken in by a speaker | |
| DE69524994T2 (en) | Method and device for signal detection with compensation for incorrect compositions | |
| DE69311303T2 (en) | LANGUAGE TRAINING AID FOR CHILDREN. | |
| DE69705830T2 (en) | VOICE PROCESSING | |
| DE69127961T2 (en) | Speech recognition method | |
| DE69719236T2 (en) | Method and system for speech recognition using hidden Markoff models with continuous output probabilities | |
| DE69726526T2 (en) | Scheme and model adaptation for pattern recognition based on Taylor expansion | |
| DE102017124264B4 (en) | Computer implemented method and computing system for determining phonetic relationships | |
| DE69519297T2 (en) | METHOD AND DEVICE FOR VOICE RECOGNITION BY MEANS OF OPTIMIZED PARTIAL BUNDLING OF LIKELIHOOD MIXTURES | |
| DE602004012909T2 (en) | A method and apparatus for modeling a speech recognition system and estimating a word error rate based on a text | |
| EP1084490B1 (en) | Arrangement and method for computer recognition of a predefined vocabulary in spoken language | |
| DE102015213715A1 (en) | Speech recognition device and speech recognition method | |
| EP1649450A1 (en) | Speech recognition method, and communication device | |
| DE602004006641T2 (en) | AUDIO DIALOG SYSTEM AND LANGUAGE-CONTROLLED BROWSING PROCEDURE | |
| DE60133537T2 (en) | AUTOMATIC UMTRAINING OF A LANGUAGE RECOGNITION SYSTEM | |
| EP1251489A2 (en) | Training the parameters of a speech recognition system for the recognition of pronunciation variations | |
| EP0987682B1 (en) | Method for adapting linguistic language models | |
| DE69512961T2 (en) | Speech recognition based on "HMMs" | |
| DE60018696T2 (en) | ROBUST LANGUAGE PROCESSING OF CHARACTERED LANGUAGE MODELS | |
| EP0633559A2 (en) | Method and device for speech recognition | |
| EP1282897A1 (en) | Method for creating a speech database for a target vocabulary in order to train a speech recognition system | |
| EP1435087B1 (en) | Method for producing reference segments describing voice modules and method for modelling voice units of a spoken test model | |
| DE10302101A1 (en) | Training of a Hidden Markov Model using training data vectors and a nearest neighbor clustering method based on condition parameters used to describe the Hidden Markov Model | |
| DE102004017486A1 (en) | Method for noise reduction in a voice input signal |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| OP8 | Request for examination as to paragraph 44 patent law | ||
| 8131 | Rejection |