DE69613338T2 - Verfahren und system zur mustererkennung mittels baumstrukturierten wahrscheinlichkeitsdichten - Google Patents
Verfahren und system zur mustererkennung mittels baumstrukturierten wahrscheinlichkeitsdichtenInfo
- Publication number
- DE69613338T2 DE69613338T2 DE69613338T DE69613338T DE69613338T2 DE 69613338 T2 DE69613338 T2 DE 69613338T2 DE 69613338 T DE69613338 T DE 69613338T DE 69613338 T DE69613338 T DE 69613338T DE 69613338 T2 DE69613338 T2 DE 69613338T2
- Authority
- DE
- Germany
- Prior art keywords
- cluster
- tree structure
- branch
- tree
- nodes
- 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.)
- Expired - Lifetime
Links
- 238000000034 method Methods 0.000 title claims description 43
- 238000003909 pattern recognition Methods 0.000 title description 8
- 239000013598 vector Substances 0.000 claims description 180
- 238000012549 training Methods 0.000 claims description 79
- 238000004364 calculation method Methods 0.000 claims description 32
- 239000000203 mixture Substances 0.000 description 23
- 230000008569 process Effects 0.000 description 14
- 210000004027 cell Anatomy 0.000 description 10
- 238000004458 analytical method Methods 0.000 description 7
- 239000011159 matrix material Substances 0.000 description 7
- 238000007476 Maximum Likelihood Methods 0.000 description 5
- 210000004460 N cell Anatomy 0.000 description 5
- 230000006872 improvement Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 230000002123 temporal effect Effects 0.000 description 4
- 238000010276 construction Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 238000005309 stochastic process Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 210000003888 boundary cell Anatomy 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000006731 degradation reaction Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000003064 k means clustering Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 238000010845 search algorithm Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 206010071299 Slow speech Diseases 0.000 description 1
- 210000003719 b-lymphocyte Anatomy 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000001955 cumulated effect Effects 0.000 description 1
- 238000013479 data entry Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 239000013074 reference sample Substances 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 239000000523 sample Substances 0.000 description 1
- 238000010183 spectrum analysis Methods 0.000 description 1
- 230000002269 spontaneous effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
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]
-
- 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]
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)
- Image Analysis (AREA)
- Position Fixing By Use Of Radio Waves (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Description
- Die Erfindung bezieht sich auf ein Verfahren zur Erkennung eines Eingangsmusters, das von einer kontinuierlichen physikalischen Größe abgeleitet wird, wobei das genannte Verfahren folgendes umfasst:
- Zugreifen auf die genannte physikalische Größe und daraus eine Folge von Eingangsbeobachtungsvektoren erzeugen, die das genannte Eingangsmuster darstellen;
- unter einer Vielzahl von Referenzmustern ein erkanntes Referenzmuster lokalisieren, das dem genannten Eingangsmuster entspricht, wobei mindestens ein Referenzmuster eine Folge von Referenzeinheiten ist und jede Referenzeinheit durch mindestens eine zugehörige Referenzwahrscheinlichkeitsdichte in einer Gruppe von Referenzwahrscheinlichkeitsdichten dargestellt wird;
- Darstellen einer Auswahl der Referenzwahrscheinlichkeitsdichten in Form einer Baumstruktur, wobei jeder Astknoten einer Referenzwahrscheinlichkeitsdichte entspricht und wobei jeder Nicht-Astknoten einer Clusterwahrscheinlichkeitsdichte entspricht, die von den Referenzwahrscheinlichkeitsdichten abgeleitet wird, welche den Astknoten in den Zweigen der genannten Nicht-Astknoten entsprechen;
- wobei das genannte Lokalisieren für jeden Eingangsbeobachtungsvektor folgendes umfasst:
- Auswählen einer Vielzahl von Astknoten durch Suchen der genannten Baumstruktur über Nicht-Astknoten, für die die entsprechende Clusterwahrscheinlichkeitsdichte eine optimale Clustermutmaßlichkeit für den genannten Eingangsbeobachtungsvektor ergibt; und
- Berechnen einer Beobachtungsmutmaßlichkeit des genannten Eingangsbeobachtungsvektors für jede Referenzwahrscheinlichkeitsdichte, die einem ausgewählten Astknoten entspricht.
- Die Erfindung bezieht sich auch auf ein System zum Erkennen eines zeitsequentiellen Eingangsmusters, das von einer kontinuierlichen physikalischen Größe abgeleitet wird, wobei das System folgendes umfasst:
- Eingabemittel zum wiederholten Zugreifen auf die genannte physikalische Größe und um daraus eine Zeitsequenz von Eingangsbeobachtungsvektoren abzuleiten, die das genannte Eingangsmuster darstellen;
- einen Baumkonstrukteur zur Darstellung einer Gruppe von Referenzwahrscheinlichkeitsdichten als eine Baumstruktur mit mindestens L = 3 hierarchischen Ebenen, wobei jeder Astknoten auf Ebene eins des Baums einer Referenzwahrscheinlichkeitsdichte entspricht, und wobei jeder Nicht-Astknoten einer Clusterwahrscheinlichkeitsdichte entspricht, die von allen Referenzwahrscheinlichkeitsdichten abgeleitet ist, welche den Astknoten in Zweigen unterhalb des genannten Nicht-Astknotens entsprechen;
- eine Referenzmusterdatenbank zum Speichern einer Vielzahl von Referenzmustern, wobei jedes Referenzmuster eine Folge von Referenzeinheiten ist und jede Referenzeinheit durch mindestens eine zugehörige Referenzwahrscheinlichkeitsdichte in der genannten Gruppe von Referenzwahrscheinlichkeitsdichten dargestellt wird, wobei mindestens eine Referenzeinheit durch mindestes drei zugehörige Referenzwahrscheinlichkeitsdichten dargestellt wird; wobei die genannte Gruppe von Referenzwahrscheinlichkeitsdichten als genannte Baumstruktur gespeichert wird;
- einen Lokalisierer, um unter den in der genannten Referenzmusterdatenbank gespeicherten Referenzmustern ein erkanntes Referenzmuster zu lokalisieren, welches dem genannten Eingangsmuster entspricht, wobei das genannte Lokalisieren folgendes umfasst:
- für jeden Eingangsbeobachtungsvektor
- Suchen der genannten Baumstruktur in der genannten Referenzmusterdatenbank, indem auf der Ebene direkt unter dem Stammknoten eine Reihe von Knotenpunkten ausgewählt wird, für die die entsprechende Clusterwahrscheinlichkeitsdichte eine optimale Clustermutmaßlichkeit für den genannten Eingangsbeobachtungsvektor ergibt, und indem das genannte Auswählen von Knotenpunkten auf aufeinanderfolgenden niedrigeren Ebenen des Baums wiederholt wird, indem jeder ausgewählte Knotenpunkt als ein Stammknoten benutzt wird, bis der gewählte Knotenpunkt ein Astknoten ist;
- Berechnen einer Beobachtungsmutmaßlichkeit des genannten Eingangsbeobachtungsvektors für jede Referenzwahrscheinlichkeitsdichte, die einem gewählten Astknoten entspricht, und
- Berechnen einer Musterähnlichkeitswertung für jedes Referenzmuster, indem die Beobachtungsmutmaßlichkeiten kombiniert werden, die für alle Referenzwahrscheinlichkeitsdichten berechnet wurden, welche eine Referenzeinheit des genannten Referenzmusters darstellen; und
- Lokalisieren des erkannten Musters als eines der genannten Referenzmuster, für die ein Optimum der genannten Musterähnlichkeitswertungen berechnet wurde; und
- Ausgabemittel zum Ausgeben des erkannten Musters.
- Das Erkennen eines zeitsequentiellen Eingangsmusters, das von einer kontinuierlichen physikalischen Größe wie Sprache oder Bildern abgeleitet wurde, gewinnt immer mehr an Bedeutung. Vor allem die Spracherkennung findet seit kurzem weitverbreitet Anwendung in Bereichen wie Telefon und Telekommunikation (verschiedene automatisierte Dienste), Büro- und Business-Systemen (Dateneingabe), Fertigung (freihändige Überwachung von Fertigungsprozessen), Medizintechnik (Kommentieren von Untersuchungsberichten), Spiele (Spracheingabe), Sprachsteuerung von Fahrzeugfunktionen und Sprachsteuerung für die Nutzung durch behinderte Personen. Für eine kontinuierliche Spracherkennung werden üblicherweise die folgenden Signalverarbeitungsschritte angewendet, wie sie in Fig. 1 dargestellt sind [siehe L. Rabiner "A Tutorial on Hidden Markov Models and Selected Applications in Speech Recognition", Proceeding of the IEEE, Band 77, Nr. 2, Februar 1989)]:
- - Merkmalanalyse: das Spracheingangssignal wird spektral und/oder zeitlich analysiert, um einen repräsentativen Merkmalsvektor (Beobachtungsvektor) zu berechnen. Typischerweise wird das Sprachsignal digitalisiert (z.B. mit einer Rate von 6,67 kHz abgetastet) und vorverarbeitet, beispielsweise durch die Anwendung von Preemphasis. Aufeinanderfolgende Abtastwerte werden in Rahmen gruppiert, die zum Beispiel 32 ms des Sprachsignals entsprechen. Aufeinanderfolgende Rahmen überlappen sich teilweise, zum Beispiel 16 ms. Oft wird als Spektralanalyseverfahren LPC-Codierung (Linear Predictive Coding) angewendet, um für jeden Rahmen einen repräsentativen Merkmalsvektor (Beobachtungsvektor) zu berechnen. Der Merkmalsvektor kann zum Beispiel 24, 32 oder 63 Komponenten (die Merkmalraumdimension) haben.
- - Einheitenvergleichssystem: die Beobachtungsvektoren werden mit einem Bestand an Sprachreferenzmustern verglichen. Es können verschiedene Formen von Sprachreferenzmustern verwendet werden. Einige Systeme nutzen linguistisch basierte Teilworteinheiten wie Phone, Diphone oder Silben sowie derivative Einheiten wie Fenene und Fenone. Andere Systeme nutzen ein ganzes Wort oder eine Gruppe von Wörtern als Referenzmuster. Das sogenannte Hidden-Markov-Modell (HMM) wird üblicherweise für die stochastische Modellierung von Sprachsignalen angewendet. Bei diesem Modell ist jedes Referenzmuster typischerweise durch ein Hidden-Markov-Modell charakterisiert, dessen Parameter aus einem Sprachdaten-Trainingssatz geschätzt werden. Bei Spracherkennungssystemen mit großem Wortschatz, die zum Beispiel 10.000 bis 60.000 Wörter betreffen, wird normalerweise ein begrenzter Satz von beispielsweise 40 Teilworteinheiten verwendet, da eine große Menge an Trainingsdaten erforderlich wäre, um ein HMM angemessen für größere Referenzmuster zu trainieren. Das Einheitenvergleichssystem vergleicht die Beobachtungsvektoren mit allen Folgen von Sprachreferenzmustern und liefert die Mutmaßlichkeit einer Übereinstimmung zwischen dem Vektor und einer Folge. Es können Einschränkungen für den Vergleich vorgegeben werden, zum Beispiel durch:
- - Lexikalische Decodierung: wenn Teilworteinheiten verwendet werden, beschreibt ein Aussprachelexikon, wie Wörter aus Teilworteinheiten konstruiert werden. Die mögliche Folge von Teilworteinheiten, die durch das Einheitenvergleichssystem untersucht wird, ist dann auf Folgen beschränkt, die in diesem Lexikon enthalten sind.
- - Syntaktische Analyse: weitere Einschränkungen werden dem Einheitenvergleichssystem vorgegeben, so dass diejenigen Pfade untersucht werden, die Sprachreferenzmustern entsprechen, welche Worte umfassen (lexikalische Decodierung) und bei denen die Worte in der richtigen, durch eine Wortgrammatik spezifizierten Reihenfolge vorliegen.
- Ein diskreter Markov-Prozess beschreibt ein System, das sich zu jedem Zeitpunkt in einem von einer Reihe von N unterschiedlichen Zuständen befindet. Zu regelmäßigen Zeitpunkten verändert das System seinen Zustand entsprechend einer Reihe von mit dem Zustand verbundenen Wahrscheinlichkeiten. Eine Sonderform eines diskreten Markov-Prozesses ist in Fig. 2 abgebildet. In diesem sogenannten Links-Rechts-Modell laufen die Zustände von links nach rechts (oder bleiben unverändert). Dieses Modell wird weitverbreitet für die Modellierung von Sprache benutzt, wo sich die Eigenschaften des Signals im Laufe der Zeit verändern. Die Modellzustände können als Töne angesehen werden. Die Anzahl der Zustände in einem Modell für eine Teilworteinheit könnte zum Beispiel fünf oder sechs betragen. In diesem Fall entspricht ein Zustand durchschnittlich einem Beobachtungsintervall. Bei dem Modell aus Fig. 2 ist es möglich, dass sich ein Zustand nicht verändert, was langsamen Sprechen entspricht. Alternativ kann ein Zustand übersprungen werden, was schnellem Sprechen entspricht (in Fig. 2 bis zum Doppelten der Durchschnittsgeschwindigkeit). Die Ausgabe des diskreten Markov-Prozesses ist die Gruppe von Zuständen zu jedem Zeitpunkt, an dem jeder Zustand einem beobachtbaren Ereignis entspricht. Bei Spracherkennungssystemen wird das Konzept der diskreten Markov- Prozesse auf den Fall erweitert, in dem eine Beobachtung eine Wahrscheinlichkeitsfunktion des Zustandes ist. Dadurch erhält man einen doppelt stochastischen Prozess. Der zugrundeliegende stochastische Prozess der Zustandsänderungen ist verborgen (das "verborgene" Markov-Modell, englisch "hidden Markov model, HMM) und kann nur durch einen stochastischen Prozess beobachtet werden, der die Folge von Beobachtungen erzeugt.
- Bei Sprache stellen die Beobachtungen kontinuierliche Signale dar. Die Beobachtungen können zu diskreten Symbolen quantisiert werden, die aus einem finiten Alphabet von zum Beispiel 32 bis 256 Vektoren gewählt werden. In einem solchen Fall kann eine diskrete Wahrscheinlichkeitsdichte für jeden Zustand des Modells verwendet werden. Um eine mit der Quantisierung einhergehende Verschlechterung zu vermeiden, nutzen viele Spracherkennungssysteme kontinuierliche Mischungsdichten. Im allgemeinen werden die Dichten aus log-konkaven oder elliptisch symmetrischen Dichten wie Gaußschen Dichten (Normalverteilung) oder Laplace-Dichten abgeleitet. Während des Trainings werden die Trainingsdaten (Trainingsbeobachtungssequenzen) mit Hilfe eines anfänglichen Modells in Zustände segmentiert. Dadurch erhält man für jeden Zustand eine Gruppe von Beobachtungen, die als Trainingsbeobachtungsvektoren oder Referenzvektoren bezeichnet werden. Als nächstes werden die Referenzvektoren für jeden Zustand in Clustern zusammengefasst. Je nach Komplexität des Systems und Menge der Trainingsdaten sind zum Beispiel 32 bis 120 elementare Cluster für jeden Zustand möglich. Jeder elementare Cluster hat seine eigene Wahrscheinlichkeitsdichte, die als Referenzwahrscheinlichkeitsdichte bezeichnet wird. Die resultierende Mischungsdichte für den Zustand ist dann eine gewichtete Summe der Referenzwahrscheinlichkeitsdichten für einen Zustand.
- Um ein einzelnes Sprachreferenzmuster (z.B. ein Wort oder eine Teilworteinheit) aus einem Sprachsignal (Beobachtungssequenz) zu erkennen, wird für jedes Sprachreferenzmuster die Mutmaßlichkeit berechnet, dass es die Beobachtungssequenz erzeugt hat. Das Sprachreferenzmuster mit der maximalen Mutmaßlichkeit wird ausgewählt. Um größere Beobachtungssequenzen zu erkennen, wird eine abgestufte Vorgehensweise genutzt. Auf einer ersten Ebene werden wie zuvor die Mutmaßlichkeiten berechnet. Wenn der letzte Zustand eines Modells erreicht ist, wird zu einer höheren Ebene gewechselt und der gleiche Prozess für die verbleibenden Beobachtungen wiederholt. Wenn die letzte Beobachtung verarbeitet wurde, wird der Pfad mit der maximalen Mutmaßlichkeit ausgewählt und zurückverfolgt, um die Sequenz der betreffenden Sprachreferenzmuster zu bestimmen.
- Die Mutmaßlichkeitsberechnung umfasst in jedem Zustand die Berechnung der Mutmaßlichkeit der Beobachtung (Merkmalsvektor) für jede Referenzwahrscheinlichkeitsdichte für diesen Zustand. Vor allem bei Spracherkennungssystemen mit großem Wortschatz mit kontinuierlicher Beobachtungsdichte HMMs mit beispielsweise 40 Teilworteinheiten, 5 Zuständen pro Teilworteinheit und 64 Clustern pro Zustand impliziert dies 12800 Mutmaßlichkeitsberechnungen für beispielsweise 32 dimensionale Vektoren. Diese Berechnungen werden für jede Beobachtung wiederholt. Die Mutmaßlichkeitsberechnung kann daher 50% bis 75% der Rechenressourcen in Anspruch nehmen.
- Aus der Patentschrift EP-A-627-726 ist bekannt, den Anteil der für die Mutmaßlichkeitsberechnung erforderlichen Zeit dadurch zu reduzieren, dass die Referenzwahrscheinlichkeitsdichten mit Hilfe einer Baumstruktur organisiert werden und eine Baumsuche durchgeführt wird. Auf der untersten Ebene des Baums (Ebene 1) entspricht jeder der Astknoten einer tatsächlichen Referenzwahrscheinlichkeitsdichte. Wie weiter oben beschrieben stellt eine Referenzwahrscheinlichkeitsdichte ein elementares Cluster von Referenzvektoren dar. Auf der zweiten Ebene des Baums entspricht jeder Nicht-Astknoten einer Clusterwahrscheinlichkeitsdichte, die von allen Referenzwahrscheinlichkeitsdichten abgeleitet ist, welche den Astknoten in Zweigen unterhalb des Nicht-Astknotens entsprechen. Auf einer solchen Ebene stellen zwei Nicht-Astknoten ein Cluster von einem Cluster von Referenzvektoren dar. Diese hierarchische Clusterbildung wird für aufeinanderfolgende höhere Ebenen wiederholt, bis auf der höchsten Ebene des Baums ein Nicht-Astknoten (der Stammknoten) alle Referenzvektoren darstellt. Während der Mustererkennung wird für jeden Eingangsbeobachtungsvektor eine Baumsuche durchgeführt, die eine Ebene unter dem Stamm beginnt. Für jeden Knotenpunkt auf dieser Ebene wird die entsprechende Clusterwahrscheinlichkeitsdichte benutzt, um die Mutmaßlichkeit des Beobachtungsvektors zu berechnen. Einer oder mehrere der Knotenpunkte mit maximaler Mutmaßlichkeit wird (werden) ausgewählt. Für diese Knotenpunkte wird der gleiche Vorgang eine Ebene tiefer wiederholt. Auf diese Weise wird schließlich eine Anzahl von Astknoten ausgewählt, für die die entsprechende Referenzwahrscheinlichkeitsdichte benutzt wird, um die Mutmaßlichkeit des Beobachtungsvektors zu berechnen. Für jeden Astknoten, der nicht ausgewählt wurde, wird die Mutmaßlichkeit durch die Mutmaßlichkeit seines Mutterknotenpunktes · approximiert, der zuletzt gewählt wurde.
- Die Erfindung hat zur Aufgabe, ein verbessertes Verfahren und System der beschriebenen Art zu schaffen.
- Um diese Aufgabe zu erfüllen, ist das erfindungsgemäße Verfahren dadurch gekennzeichnet, dass das genannte Verfahren die Darstellung der mit jeder Referenzeinheit verbundenen Referenzwahrscheinlichkeitsdichten als eine separate Baumstruktur umfasst, und dass das genannte Lokalisieren das Auswählen von Astknoten jeder separaten Baumstruktur durch Ausführender genannten Suche nach jeder separaten Baumstruktur umfasst.
- Statt alle Referenzvektoren in einem einzigen Baum zu organisieren, werden separate Bäume für jede Referenzeinheit gebaut. Bei N1 Referenzmustern (z.B. HMMs) mit jeweils N2 Referenzeinheiten (Zuständen) werden also N1·N2 Bäume gebaut und nach jedem Beobachtungsvektor durchsucht. Wenn in dem bekannten System eine relativ kleine Teilgruppe von Referenzwahrscheinlichkeitsdichten gewählt wird, wird die entsprechende Gruppe von elementaren Clustern durch Referenzvektoren (Töne) beherrscht, die "nahe" am Beobachtungsvektor sind. Die Erfinder haben festgestellt, dass es auf diese Weise typischerweise eine große Gruppe von Referenzvektoren gibt, die nicht nahe genug sind, um gewählt zu werden, aber weit genug entfernt sind, um nicht wesentlich zu der Mutmaßlichkeitsberechnung beizutragen. Obwohl für diesen einen Beobachtungsvektor ein Referenzvektor von dieser Gruppe keine sehr gute Übereinstimmung liefert, kann also das Referenzmuster, welches den Referenzvektor darstellt, sehr wohl eine gute Übereinstimmung für die gesamte Sequenz von Beobachtungsvektoren sein. Es ist daher wichtig, zwischen Referenzvektoren dieser Gruppe unterscheiden zu können. In dem bekannten System wird für alle Referenzvektoren in dieser Gruppe die Mutmaßlichkeit durch die Mutmaßlichkeit des niedrigsten Zweiges approximiert, zu denen sie gehören und für die die Mutmaßlichkeit berechnet wurde. Dies impliziert, dass ähnliche Töne, die durch Referenzvektoren in dem gleichen nicht-gewählten Zweig dargestellt werden, nicht unterschieden werden können, was zu einer Verschlechterung der Erkennung führt. Die Erfinder haben gefolgert, dass für eine genauere Erkennung eine weitere Unterscheidung erforderlich ist. Dies wird durch die Nutzung einer Vielzahl von Bäumen erreicht. Für die Erkennung des gesamten Musters muss für jeden Beobachtungsvektor die Mutmaßlichkeit berechnet werden, dass eine Beobachtung mit einem HMM-Zustand übereinstimmt (und die gesamte Mutmaßlichkeit muss kumuliert werden). Dies impliziert, dass für jeden Zustand mindestens eine Referenzwahrscheinlichkeitsdichte betroffen sein muss (vorzugsweise diejenige mit der höchsten Mutmaßlichkeit für diesen Zustand). Um dies bei dem bekannten System zu erreichen, muss die ausgewählte Gruppe relativ groß sein. Erfindungsgemäß werden separate Bäume für jeden Zustand benutzt, so dass sichergestellt wird, dass jeder Zustand mit mindestens einer repräsentativen Referenzwahrscheinlichkeitsdichte betroffen ist. Dadurch kann die Gruppe ausgewählter Äste, die für eine genaue Erkennung benötigt werden, erheblich reduziert werden. Dies verkürzt wiederum den für die Berechnung der maximalen Mutmaßlichkeit erforderlichen Zeitaufwand.
- In einer weiteren erfindungsgemäßen Version ist das Verfahren dadurch gekennzeichnet, dass die Suche der genannten Baumstruktur über Nicht-Astknoten die Suche auf mindestens einer Ebene der genannten Baumstruktur nach einem Pfad über einen Nicht-Astknoten umfasst, für den ein Optimum der genannten Clustermutmaßlichkeit berechnet wurde, ergänzt durch Pfade über Nicht-Astknoten, für die die genannte Clustermutmaßlichkeit innerhalb eines vorgegebenen Bereichs der genannten optimalen Clustermutmaßlichkeit liegt. Ein Bereich (Schwellwert) wird benutzt, um zu bestimmen, ob auf jeder Ebene des Baums nur eine Teilgruppe oder mehrere Teilgruppen gewählt werden. Auf jeder Ebene des Baums wird die Teilgruppe mit der höchsten Mutmaßlichkeit (dem Beobachtungsvektor am "nächsten") bestimmt. Wenn eine andere Teilgruppe eine Mutmaßlichkeit hat, die der höchsten Mutmaßlichkeit ähnlich ist (d.h. die Differenz zwischen der höchsten Mutmaßlichkeit und der Mutmaßlichkeit der anderen Teilgruppe liegt unter einem Schwellwert), so wird auch die andere Teilgruppe weiter berechnet. Auf diese Weise wird die Anzahl von Referenzwahrscheinlichkeitsdichten, die schließlich auf Ebene eins des Baums ausgewählt werden, dynamisch ermittelt. Dies hat den Vorteil, dass die Teilgruppe wahrscheinlich klein sein wird, wenn bei einem bestimmten Beobachtungsvektor nicht viele Referenzwahrscheinlichkeitsdichten eine relativ hohe Mutmaßlichkeit ergeben. Wenn es also nur wenige gute Kandidaten für den Vergleich mit dem Beobachtungsvektor gibt, wird die Erkennung im allgemeinen schnell erfolgen. Wenn jedoch bei einem bestimmten Beobachtungsvektor viele Referenzwahrscheinlichkeitsdichten eine ähnliche, relativ hohe Mutmaßlichkeit ergeben, wird die Teilgruppe wahrscheinlich groß sein wird. Wenn es also viele gute Kandidaten für den Vergleich mit dem Beobachtungsvektor gibt, wird die Erkennung im allgemeinen klarer unterscheiden, was zu einer höheren Genauigkeit führt.
- In einer weiteren erfindungsgemäßen Version ist das Verfahren dadurch gekennzeichnet, dass die genannte Baumstruktur ein quaternärer Baum ist, bei dem jeder Nicht-Astknoten hierarchisch eine Ebene über einem Maximum von vier Knotenpunkten liegt und mindestens ein Nicht-Astknoten hierarchisch eine Ebene über vier Knotenpunkten liegt. Im Prinzip verbessert sich die Erkennungsgenauigkeit, wenn eine Baumstruktur mit vielen Zweigen an jedem Nicht-Astknoten des Baums benutzt wird. In diesem Fall ist die Aufteilung in Cluster genauer und die Chancen, dass der korrekte Cluster ausgewählt wird, sind größer. Die Anzahl der Berechnungen nimmt jedoch zu, wenn die Anzahl der Zweige zunimmt, so dass die Leistungsfähigkeit der Erkennung verringert wird. Die Erfinder haben festgestellt, dass bei einem Spracherkennungssystem mit großem Wortschatz ein quaternärer Baum ein gutes Gleichgewicht zwischen Genauigkeit und Leistungsstärke ergibt.
- In einer weiteren erfindungsgemäßen Version ist das Verfahren dadurch gekennzeichnet, dass das Suchen der genannten Baumstruktur über die genannten Nicht- Astknoten für eine Gruppe von Nicht-Astknoten innerhalb eines gleichen Zweigs der genannten Baumstruktur und auf der gleichen Ebene der genannten Baumstruktur folgendes umfasst:
- für ein ausgewähltes Paar der genannten Nicht-Astknoten eine Clustervergleichswertung zwischen den beiden entsprechenden Clusterwahrscheinlichkeitsdichten und dem genannten Eingangsbeobachtungsvektor berechnen, wobei die genannte Clustervergleichswertung angibt, welche der beiden entsprechenden Clusterwahrscheinlichkeitsdichten die höchste Mutmaßlichkeit für den Eingangsbeobachtungsvektor ergibt;
- die Berechnung der genannten Clustervergleichswertung für den Nicht- Astknoten wiederholen, für den die zuvor berechnete Clustervergleichswertung die höchste Mutmaßlichkeit ergab, und für einen weiteren Nicht-Astknoten der genannten Gruppe, für den die Clustervergleichswertung bereits berechnet wurde, bis eine Clustervergleichswertung für alle Nicht-Astknoten der genannten Gruppe berechnet ist; und
- in die genannte Suche einen Pfad über den Nicht-Astknoten aufnehmen, für den die Clustervergleichswertung die höchste Mutmaßlichkeit ergab. Die Clustermutmaßlichkeit, die für jeden Nicht-Astknoten berechnet wird, wird nur benutzt, um auf der niedrigsten Ebene des Baums eine Anzahl von Astknoten auszuwählen. Für diese Astknoten werden die entsprechenden Referenzwahrscheinlichkeitsdichten für die Mustererkennung benutzt. Dadurch wird es möglich, anstelle einer vollständigen Berechnung der Clustermutmaßlichkeit nur die Differenz der Mutmaßlichkeit zwischen Paaren von Clustern zu berechnen. Da bei bestimmten Dichten die Vergleichsberechnung einfacher ist als die vollständige Mutmaßlichkeitsberechnung, kann schneller ermittelt werden, welches Cluster am wahrscheinlichsten ist.
- Eine weitere Version des erfindungsgemäßen Verfahrens, bei dem die Wahrscheinlichkeitsdichten von einer Folge von Trainingsbeobachtungsvektoren abgeleitet werden, die die bekannten Eingangsmuster darstellen, und wobei das genannte Darstellen der genannten Gruppe von Referenzwahrscheinlichkeitsdichten als Baumstruktur das Clustering der genannten Trainingsbeobachtungsvektoren in eine hierarchische Gruppe von Clustern und die Berechnung einer Clusterwahrscheinlichkeitsdichte für jeden Cluster umfasst, ist dadurch gekennzeichnet, dass das genannte Darstellen der genannten Gruppe von Referenzwahrscheinlichkeitsdichten als Baumstruktur folgendes umfasst:
- die genannte Folge von Trainingsbeobachtungsvektoren in eine Folge von entsprechenden Referenzmustern und entsprechenden Referenzeinheiten segmentieren; und iterativ:
- für jede Referenzeinheit die entsprechenden Trainingsbeobachtungsvektoren in eine hierarchische Gruppe von Clustern gruppieren, die separate Baumstrukturen bilden, die jeweils einer separaten Referenzeinheit entsprechen; und
- die genannte Folge der Trainingsbeobachtungsvektoren entsprechend der genannten Folge von Referenzeinheiten zeitlich ausrichten, indem:
- für jeden Trainingsbeobachtungsvektor eine entsprechende Referenzeinheit bestimmt wird, die gemäß einem vorgegebenen Optimalitätskriterium am wahrscheinlichsten ist, und
- jeder Trainingsbeobachtungsvektor einem der genannten Cluster zugeordnet wird, indem die Baumstruktur der entsprechenden Referenzeinheit nach dem Cluster mit einer optimalen Clustermutmaßlichkeit durchsucht wird.
- Während der Trainingsphase erfolgt die Clusterbildung, was zu einer Schätzung der Dichteparameter und der Zuordnung der Trainingsbeobachtungsvektoren zu Referenzeinheiten führt. Diese Operationen werden auf iterative Weise durchgeführt. Erfindungsgemäß wird auf diese Weise eine separate Baumstruktur für jede Referenzeinheit geschaffen. Die Erfinder haben festgestellt, dass die Genauigkeit der Mustererkennung durch Integrieren der Baumkonstruktion in die iterative Prozedur verbessert wird. Da den Referenzeinheiten während der Iteration erneut Trainingsbeobachtungsvektoren zugewiesen werden und daher dem geeigneten Cluster erneut zugewiesen werden müssen, hat sich auBerdem gezeigt, dass der Zeitaufwand zum Trainieren des Systems erheblich reduziert wird, wenn der teilweise konstruierte Baum zur Bestimmung des am besten geeigneten Clusters genutzt wird.
- Um die Aufgabe der Erfindung zu erfüllen, ist das erfindungsgemäße System dadurch gekennzeichnet, dass:
- der genannte Baumkonstrukteur so konzipiert wird, dass die zugehörigen Referenzwahrscheinlichkeitsdichten für jede Referenzeinheit als eine separate Baumstruktur dargestellt werden;
- außerdem in der genannten Referenzmusterdatenbank die genannten separaten Baumstrukturen für jede Referenzeinheit gespeichert werden, und
- das Lokalisieren das Auswählen von Astknoten von jeder separaten Baumstruktur durch Ausführen der genannten Suche nach jeder separaten Baumstruktur umfasst.
- Diese und andere Aspekte der Erfindung sind in der Zeichnung dargestellt und werden im folgenden näher beschrieben. Es zeigen:
- Fig. 1 die Verarbeitungsschritte, die üblicherweise bei der kontinuierlichen Spracherkennung durchgeführt werden;
- Fig. 2 ein Beispiel eines diskreten Links-Rechts-Markov-Prozesses;
- Fig. 3 ein Blockschaltbild einer Ausführungsform des erfindungsgemäßen Systems;
- Fig. 4 baum-organisierte Wahrscheinlichkeitsdichten;
- Fig. 5 zweidimensionale Zellengrenzen für einen binären Baum mit vier Ästen, und
- Fig. 6 ein Flussdiagramm für den iterativen Trainingsprozess.
- Fig. 3 zeigt ein Blockschaltbild eines erfindungsgemäßen Systems 10 zur Erkennung eines zeitsequentiellen Eingangsmusters 20, das von einer kontinuierlichen physikalischen Größe wie Sprache oder Bildern abgeleitet wird. Das Eingabemittel 30 greift wiederholt auf die physikalische Größe zu. Bei Sprache bedeutet dies normalerweise das Abtasten der physikalischen Größe in regelmäßigen Intervallen, zum Beispiel 6,67 kHz oder 16 kHz, und das Digitalisieren des Abtastwertes. Das Eingabemittel 30 verarbeitet eine Gruppe von aufeinanderfolgenden Abtastwerten, die zum Beispiel 32 ms des Sprachsignals entsprechen, um einen repräsentativen Vektor der Merkmale (den Eingangsbeobachtungsvektor ) zu liefern. Auf diese Weise wird eine Zeitsequenz von Eingangsbeobachtungsvektoren erzeugt, die das Eingangsmuster darstellt. Typischerweise kann das Eingabemittel 30 mit einem Mikrofon, einem A/D-Umsetzer und einem Prozessor, zum Beispiel einem digitalen Signalprozessor (DSP), ausgeführt sein. Optional kann das Eingabemittel 30 einen Sprachdetektor enthalten, um die Abtastung nur dann durchzuführen, wenn tatsächlich Sprache empfangen wird. Als eine Alternative zum Abtasten und Digitalisieren des Eingangssignals kann das Signal in digitalisierter Form in einem Speicher gespeichert werden oder digital über ein Kommunikationsnetzwerk zugeführt werden. Eine Referenzmusterdatenbank 40 dient zum Speichern von Referenzmustern. Die Referenzdatenbank 40 kann im Speicher, zum Beispiel einer Festplatte, ROM oder RAM als integrierte Datenbank oder alternativ in Form separater Datendateien gespeichert sein. Wie weiter oben beschrieben, werden Spracherkennungseinheiten als Referenzmuster für das Erkennen der Sprache benutzt. Jedes Referenzmuster umfasst eine Folge von Referenzeinheiten. Jede Referenzeinheit wird durch mindestens eine zugehörige Referenzwahrscheinlichkeitsdichte dargestellt. Mit Hilfe der auf HMM-Modellen (Hidden Markov Model) basierenden Mustererkennung wird jedes Referenzmuster durch ein Hidden-Markov-Modell modelliert, wobei die Zustände des Modells einer Referenzeinheit entsprechen. Bei kontinuierlichen Beobachtungsdichten sind die Referenzwahrscheinlichkeitsdichten normalerweise Gaußsche Dichten oder Laplace-Dichten. Es ist zu beachten, dass bekanntermaßen ein Hidden- Markov-Modell mit einem einzelnen Zustand für die Modellierung von speziellen Mustern benutzt wird, die kein klares zeitsequentielles Verhalten aufweisen, wie dies zum Beispiel beim Muster für die Sturumpassagen vor oder zwischen Worten der Fall ist. Für die vorliegende Erfindung werden derartige Muster nicht gesondert beschrieben. Dem Fachkundigen wird bekannt sein, wie derartige Muster in das erfindungsgemäße System zu integrieren sind.
- Das System 10 umfasst weiterhin einen Baumkonstrukteur 60, der die Referenzwahrscheinlichkeitsdichten, welche einer Referenzeinheit entsprechen, in einer Baumstruktur organisiert. Dies wird für jede Referenzeinheit wiederholt. Die Baumstrukturen werden in der Referenzmusterdatenbank 40 gespeichert. Jeder Astknoten der Baumstruktur entspricht einer Referenzwahrscheinlichkeitsdichte. Details der Baumstruktur und die Konstruktion der Struktur werden an späterer Stelle beschrieben. Der Baumkonstrukteur kann mit einem DSP oder einem Mikroprozessor implementiert werden. Vorteilhafterweise wird der Baum im vorhinein beim Trainieren des Systems konstruiert.
- Das System 10 umfasst weiterhin einen Lokalisierer 50, um in der Referenzmusterdatenbank 40 ein Referenzmuster zu lokalisieren, das dem Eingangsmuster entspricht. Der Lokalisierer 50 kann mit einem DSP oder einem Mikroprozessor implementiert werden. Das lokalisierte Referenzmuster wird als das erkannte Referenzmuster bezeichnet. Der Lokalisierer 50 führt das Lokalisieren durch, indem er für jeden Beobachtungsvektor diejenige Baumstruktur sucht, die einer Referenzeinheit entspricht, bis auf der niedrigsten Baumebene eine Anzahl von Astknoten ausgewählt wird. Für die ausgewählten Astknoten bestimmt der Lokalisierer 50, wie gut der Beobachtungsvektor mit dieser Referenzeinheit übereinstimmt. Hierfür wird für jeden gewählten Astknoten die dem Astknoten entsprechende Referenzwahrscheinlichkeitsdichte verwendet, um eine Beobachtungsmutmaßlichkeit für den Beobachtungsvektor zu berechnen. Für jede Referenzeinheit werden die Beobachtungsmutmaßlichkeiten, die für einen Beobachtungsvektor berechnet wurden, kombiniert, um eine Referenzeinheit-Ähnlichkeitswertung zu erhalten. Für jedes Referenzmuster werden die Referenzeinheit-Ähnlichkeitswertungen der Referenzeinheit, die dem Referenzmuster entsprechen, kombiniert, um eine Musterähnlichkeitswertung zu erhalten. Dieser Vorgang wird für aufeinanderfolgende Beobachtungsvektoren wiederholt. Dasjenige Referenzmuster, für das ein Optimum, zum Beispiel eine maximale Mutmaßlichkeit, für die Musterähnlichkeitswertung berechnet wurde, wird als erkanntes Muster lokalisiert. Die Beschreibung konzentriert sich auf das Lokalisieren von Referenzwahrscheinlichkeitsdichten und die Berechnung von Beobachtungsmutmaßlichkeiten. In der Technik ist gut bekannt, wie dieses Schlüsselelement in Kombination mit anderen Verfahren, zum Beispiel Hidden-Markov-Modellen, eingesetzt werden kann, um ein zeitsequentielles Muster zu erkennen, das von einer kontinuierlichen physikalischen Größe abgeleitet wurde. Es ist in der Technik auch gut bekannt, wie Verfahren, zum Beispiel eine abgestufte Vorgehensweise, angewendet werden können, um Muster zu erkennen, die eine größere Folge von Beobachtungsvektoren enthalten als die Referenzmuster. Es ist zum Beispiel bekannt, wie Teilworteinheiten als Referenzmuster verwendet werden können, um ganze Worte oder Sätze zu erkennen. Auch ist bekannt, wie zusätzliche Einschränkungen, zum Beispiel ein Aussprachelexikon oder Grammatik, für die Mustererkennung vorgegeben werden können. Die zusätzlichen Informationen, zum Beispiel das Aussprachelexikon, können in dem gleichen Speicher hinterlegt werden wie die Referenzmusterdatenbank.
- Die Ausgabemittel 70 dienen zum Ausgeben des erkannten Musters. Die Ausgabe kann auf unterschiedliche Weise erfolgen, zum Beispiel in Form einer Darstellung des erkannten Musters auf einem Bildschirm in Textformat, durch Speichern des erkannten Musters im Speicher oder indem das erkannte Muster als Eingabe, zum Beispiel als Befehl, für einen nächsten Verarbeitungsschritt verwendet wird.
- Bei Verwendung von Hidden-Markov-Modellen ist die Mutmaßlichkeit eines Beobachtungsvektors für jedes Hidden-Markov-Modell und jeden Zustand s des Modells:
- P( ) = Wk·P( k)
- wobei wk das Gewicht der k-ten Beobachtungsmischungsdichte (Cluster) und N die Anzahl der Cluster für einen Zustand ist. Der Einfachheit halber ist der Zustandsindex s in der Formel nicht dargestellt. Spracherkennungssysteme nutzen normalerweise Laplace- oder Gaußsche Wahrscheinlichkeitsdichten zur Modellierung der Wahrscheinlichkeitsverteilung eines Clusters. Mit der Lr -Norm, die definiert ist als:
- dΓ( , ) = - Γ = ( xi - yi Γ)1/Γ
- wobei die L&sub1; -Norm für Laplace-Dichten benutzt wird und die L&sub2; -Norm für Gaußsche Dichten, erhält man als eine der möglichen Formeln für die Wahrscheinlichkeit:
- P( ) = Wk·a·e-b - κ
- wobei der Referenzvektor k der Mittelwertvektor der k-ten Beobachtungsmischungsdichte ist. Die Koeffizienten a und b stellen sicher, dass die Wahrscheinlichkeit bis 1 integriert wird, wenn der Beobachtungsvektor über alle möglichen Werte läuft. Es ist zu beachten, dass auch andere Entfernungsmaße als die LΓ -Norm verwendet werden können. Verschiedene Abwandlungen und Erweiterungen zu der obigen Formel sind gut bekannt. Beispielsweise werden die folgenden drei Typen von mehrdimensionalen Gaußschen Dichten gegeben:
- In dieser Formel ist s ein Index für den Hidden-Markov-Modell-Zustand und k ein Index für die Dichte (Referenzvektor) innerhalb des Zustands.
- Um zu verhindern, dass Terme unterhalb des Genauigkeitsbereichs des Prozessors liegen, und um die Vektoren entsprechend der Dichtevarianz zu normalisieren, kann eine Skalierung vorgenommen werden. Wenn diagonale Kovarianzmatrizen verwendet werden, die gebunden sind (zum Beispiel eine zustandsabhängige Kovarianzmatrix Ks,k = KS oder eine große Kovarianzmatrix Ks,k = K), werden der Beobachtungsvektor und der Mittelwertvektor k vorteilhafterweise skaliert, bevor die Mutmaßlichkeitsberechnung stattfindet. Die Skalierung ist in der Technik gut bekannt. Vorteilhafterweise werden die Referenzvektoren im vorhinein skaliert und der Beobachtungsvektor nur einmal vor dem Beginn der eigentlichen Mutmaßlichkeitsberechnungen skaliert.
- Aufgrund der Beschaffenheit der Dichten kann die Summe der Wahrscheinlichkeiten durch das Maximum approximiert werden, d.h. die Dichte, die die größte Wahrscheinlichkeit beiträgt. Dies impliziert, dass ein wichtiger Schritt beim Lokalisieren eines Referenzmusters, welches dem Eingangsmuster entspricht, darin besteht, denjenigen Referenzvektor zu finden, der dem Beobachtungsvektor am "nächsten" ist (Suche des nächsten Nachbarn), wobei der "Abstand" als der negative Logarithmus der Mutmaßlichkeit definiert ist:
- p( ) max{Wk·a·e-b - k k = 1, ..., N}
- Nimmt man den negativen Logarithmus, so erhält man:
- - log(p( )) min{b - k - log(wk) - log(a) k = 1, ..., N
- Für mehrdimensionale Gaußsche Dichten ergibt dies:
- - log(p( )) min{log1/Wk + D/2log 2π
- + 1/2log det Ks,k + 1/2( - s,k)T K ( - s,k) k = 1, ..., N}
- Wenn man zum Beispiel 40 Teilworteinheiten, 5 Zustände pro Teilworteinheit und 64 elementare Cluster (jeweils dargestellt durch eine zugehörige Referenzwahrscheinlichkeitsdichte) pro Zustand verwendet, impliziert dies 12800 Mutmaßlichkeitsberechnungen mit beispielsweise 32-dimensionalen Vektoren. Diese Berechnungen werden für jede Beobachtung wiederholt. Statt alle Mutmaßlichkeiten vollständig zu berechnen, wird eine Baumstruktur genutzt, um eine Teilgruppe von Referenzwahrscheinlichkeitsdichten auszuwählen, für die die Mutmaßlichkeit vollständig berechnet wird. Für jeden Zustand wird eine Baumstruktur konstruiert. In dem Beispiel würde dies 200 (40 · 5) Bäume implizieren, die jeweils 64 Referenzwahrscheinlichkeitsdichten umfassen, welche die Mischungsdichte für den Zustand bilden. Die N elementaren Cluster und die zugehörigen Referenzwahrscheinlichkeitsdichten (wobei N beispielsweise 32, 64, 128 oder 256 ist) teilen den Merkmalvektorraum in N Zellen (tatsächlich kann es mehr als N Zellen geben, wenn die Dichtevarianzen stark variieren. Die Formeln berücksichtigen dies implizit). Wie an späterer Stelle ausführlicher erläutert wird, werden die Referenzwahrscheinlichkeitsdichten von Trainingsbeobachtungsvektoren abgeleitet. Es ist zu beachten, dass eine Referenzwahrscheinlichkeitsdichte ebenso einen elementaren Cluster von Trainingsbeobachtungsvektoren darstellen kann wie nur einen einzigen Trainingsbeobachtungsvektor. Selbst wenn nur ein Trainingsbeobachtungsvektor betroffen ist, wird dies immer noch als ein elementarer Cluster bezeichnet.
- Die N Zellen sind hierarchisch in einer B-nären Baumstruktur mit L Ebenen organisiert. B gibt die maximale Anzahl von Zweigen bei jedem Knotenpunkt an. Vorteilhafterweise wird ein vollständig ausgewogener Baum benutzt, bei dem N = BL. In der Praxis können während des Trainings einige Cluster und zugehörige Referenzwahrscheinlichkeitsdichten veralten. Als Konsequenz können einige Äste oder sogar Zweige des Baums aus dem Baum entfernt werden. Auf der obersten Ebene L stellt der Stammknoten die gesamte Zellengruppe dar. Diese Zellen sind in B Teilgruppen (auch als Cluster bezeichnet) unterteilt, die jeweils N/B Zellen enthalten (oder weniger, wenn N keine Potenz von B ist). Jeder der Cluster wird durch einen Zwischenknotenpunkt (Nicht-Astknoten) auf Ebene L-1 dargestellt. Jeder dieser Cluster ist wiederum in B Teilcluster unterteilt (oder weniger, wenn einige Zweige veraltet sind), von denen jeder durch einen Zwischenknotenpunkt auf Ebene L-2 dargestellt wird. Dieses Aufteilen in Teilcluster wird bis zur niedrigsten Ebene (Ebene eins) wiederholt, wobei jeder Knotenpunkt einen elementaren Cluster von Trainingsbeobachtungsvektoren darstellt. Mit jedem elementaren Cluster ist eine Referenzwahrscheinlichkeitsdichte verbunden, die vom Cluster der Trainingsbeobachtungsvektoren abgeleitet wird. Mit Hilfe der Gaußschen Dichten kann jede Referenzwahrscheinlichkeitsdichte durch einen Mittelwertvektor i und einer Kovarianzmatrix Ki beschrieben werden (für Cluster wird auch das Mischungsgewicht wi benutzt). Ein Cluster, das einem Knotenpunkt auf Ebene zwei des Baums oder auf einer höheren Ebene entspricht, ist mit einer Clusterwahrscheinlichkeitsdichte verbunden. Diese Clusterwahrscheinlichkeitsdichte stellt alle elementaren Cluster dar, die sich hierarchisch in Zweigen unterhalb des Knotenpunktes befinden. Als solches kann die Clusterwahrscheinlichkeitsdichte von den zu diesen elementaren Clustern gehörenden Referenzwahrscheinlichkeitsdichten abgeleitet werden. Dieser Mechanismus wird für alle höheren Ebenen wiederholt.
- In Fig. 4 ist eine Baumstruktur abgebildet, die eine Mischung mit 16 Referenzwahrscheinlichkeitsdichten darstellt, die durch 16 Mittelwertvektoren &sub1;&sub6; ... &sub3;&sub1; dargestellt werden. Die Astknoten d&sub1;&sub6; ... d&sub3;&sub1; des Baums auf Ebene eins entsprechen jeweils einer der Referenzwahrscheinlichkeitsdichten und dem zugehörigen elementaren Cluster. Die Zwischenknoten d&sub8; ... d&sub1;&sub5; auf Ebene 2 stellen jeweils ein Cluster mit zwei Teilclustern dar. Knotenpunkt d&sub8; ist beispielsweise der Elternknotenpunkt der Knotenpunkte d&sub1;&sub6; und d&sub1;&sub7;. Als solches stellt d&sub8; das Cluster mit Trainingsbeobachtungsvektoren der beiden Cluster dar, die durch d&sub1;&sub6; und d&sub1;&sub7; dargestellt werden. Die Clusterwahrscheinlichkeitsdichte, die d&sub8; entspricht, wird durch den Mittelwertvektor &sub8; dargestellt. Diese Clusterwahrscheinlichkeitsdichte wird von den beiden Referenzwahrscheinlichkeitsdichten abgeleitet, die durch &sub1;&sub6; und &sub1;&sub7; dargestellt werden. Auf ähnliche Weise stellt d&sub4; den Cluster mit Trainingsbeobachtungsvektoren der beiden Cluster dar, die durch d&sub8; und d&sub9; dargestellt werden, und als solches stellt d&sub4; den Cluster mit Trainingsbeobachtungsvektoren für die vier Cluster dar, die durch d&sub1;&sub6;, d&sub1;&sub7;, d&sub1;&sub8; und d&sub1;&sub9; dargestellt werden. Die Clusterwahrscheinlichkeitsdichte, die d&sub4; entspricht, wird durch den Mittelwertvektor &sub4; dargestellt. Diese Clusterwahrscheinlichkeitsdichte wird von den Clusterwahrscheinlichkeitsdichten &sub8; und &sub9; abgeleitet und als solches von den durch &sub1;&sub6;, &sub1;&sub7;, &sub1;&sub8; und &sub1;&sub9; dargestellten Referenzwahrscheinlichkeitsdichien. Es ist zu beachten, dass die Clusterwahrscheinlichkeitsdichten, die durch &sub1; ... &sub1;&sub5; dargestellt werden, benutzt werden, um in der Gruppe der durch &sub1;&sub6; ... &sub3;&sub1; dargestellten Referenzwahrscheinlichkeitsdichten eine Teilgruppe von Referenzwahrscheinlichkeitsdichten zu lokalisieren, die eine hohe Mutmaßlichkeit für den Beobachtungsvektor ergibt. Bei Gaußschen Dichten können die Mittelwertvektoren &sub1; ... &sub1;&sub5; von den Mittelwertvektoren &sub1;&sub6; ... &sub3;&sub1; der Referenzwahrscheinlichkeitsdichten abgeleitet werden, indem ein gewichteter Mittelwert auf folgende Weise berechnet wird:
- wobei Mi die Anzahl von Referenzvektoren in der durch den Knotenpunkt di dargestellten Teilgruppe ist. Die entsprechende Kovarianzmatrix Ki für jede Wahrscheinlichkeitsdichte, dargestellt durch i, wird gegeben durch:
- Für jeden Zustand wird während des akustischen Trainings eine Mischung von Wahrscheinlichkeitsdichten bestimmt. Es ist gut bekannt, wie eine anfängliche Gruppe von Trainingsdaten (Trainingsbeobachtungsvektoren oder Referenzvektoren) benutzt werden kann, um geeignete Modelle zu konstruieren (z.B. die Folge von Referenzeinheiten bestimmen) und die Beobachtungsvektoren für die Mustererkennung in Clustern zusammenzufassen. Jedes Cluster wird einer Clusterwahrscheinlichkeitsdichte zugeordnet, die durch einen Mittelwertvektor und eine Varianz dargestellt wird. Es ist auch gut bekannt, wie das Training genutzt werden kann, um ein bereits trainiertes System zu verbessern. Typischerweise wird das bekannte k-Mittel-Clustering-Verfahren angewendet, um die Trainingsbeobachtungsvektoren in Clustern zusammenzufassen; siehe [L. Rabiner, "Fundamentals of speech recognition", Prentice Hall, Abschnitt 3.4.4]. Vorteilhafterweise wird dieses Clustering- Verfahren so angepasst, dass die Baumstruktur konstruiert wird, indem es sich die Clusterbildung merkt (für jedes Cluster: welche Abkömmlingscluster einer um eine Stufe niedrigeren Ebene es enthält). Auf diese Weise wird während des Trainings eine Baumstruktur für jeden Zustand konstruiert. Eine binäre Baumstruktur kann beispielsweise folgendermaßen konstruiert werden:
- 1. Bestimmen einer einzelnen Dichte mit einem Mittelwertvektor (Schwerpunkt) und einer Varianz für die gesamte Gruppe von Trainingsbeobachtungsvektoren. Der Mittelwertvektor ist der Mittelwert aller Trainingsbeobachtungsvektoren.
- 2. Aufteilen der Dichte in zwei Dichten durch Bestimmen von zwei neuen Schwerpunkten &spplus; und &supmin; (und Varianzen) gemäß der Regel = &spplus; = + , &supmin; = - wobei ein Teilungsvektor ist, typischerweise mit Komponenten in der Größenordnung von 1,0.
- 3. Für jeden Trainingsbeobachtungsvektor bestimmen, welche der beiden Dichten die wahrscheinlichere für den Trainingsbeobachtungsvektor ist, und den Trainingsbeobachtungsvektor dieser Dichte zuordnen. Auf diese Weise werden zwei Cluster gebildet.
- 4. Erneutes Berechnen der Dichten (Schwerpunkt und Varianz) der beiden Cluster.
- 5. Iteration: Wiederholen der Schritte 3 und 4, bis ein Stoppkriterium erreicht ist, zum Beispiel bis keine signifikante Verbesserung mehr erzielt wird, oder bis eine vorgegebene Anzahl von Iterationen durchgeführt wurde.
- 6. Iteration: Wiederholen der Schritte 2 bis 5 für jedes Cluster eine Ebene tiefer im Baum, bis die gewünschte Anzahl von Baumebenen erreicht wurde.
- Wenn dafür gesorgt wird, dass in Schritt 6 die Grenze, welche zwischen zwei Clustern bestimmt wurde, auf der um eine Stufe niedrigeren Ebene beibehalten wird (so dass ein Vektor, der einem Zweig des Baums zugeordnet wurde, beim Bilden von Teilclustern eine Ebene niedriger nicht neu zugeordnet wird), wird ein binärer Baum konstruiert. Durch Auslassen von Baumebenen können andere Baumstrukturen mit einem Verzweigungsfaktor mit einer Potenz von zwei, zum Beispiel ein quaternärer Baum, konstruiert werden. Es ist klar zu erkennen, wie Bäume mit anderen Verzweigungsfaktoren konstruiert werden können, indem der Teilungsschritt 2 entsprechend geändert wird. Die Beschreibung der Clusterbildung konzentriert sich auf gebündelte Kovarianzmatrizen. Es ist gut bekannt, wie die Clusterbildung für Dichten mit anderen Kovarianzmatrizen durchgeführt werden kann.
- Der Baum wird beginnend mit der Ebene unterhalb des Stammknotens (Ebene L-1) gesucht, bis mindestens eine Referenzwahrscheinlichkeitsdichte (und das entsprechende elementare Cluster) auf Ebene 1 lokalisiert ist. Für jeden Nicht-Astknoten auf Ebene L-1 wird die Mutmaßlichkeit, dass der Beobachtungsvektor durch die Teilgruppe von Referenzwahrscheinlichkeitsdichten erzeugt wird, welche durch den Nicht-Astknoten dargestellt werden, berechnet, indem die Clusterwahrscheinlichkeitsdichte verwendet wird, die dem Nicht-Astknoten entspricht. Die Dichte kann beispielsweise durch die Formel (a) angegeben werden, in der für den Mittelwertvektor s,k derjenige Mittelwertvektor verwendet wird, welcher die Clusterwahrscheinlichkeitsdichte darstellt. Der Zweig, für den man die größte Mutmaßlichkeit erhalten hat, wird zur weiteren Suche ausgewählt. Optional kann mehr als ein Zweig gemäß einem definierten Kriterium ausgewählt werden. Für die gewählten Zweige wird der gleiche Prozess eine Baumebene niedriger wiederholt. Auf diese Weise wird auf Ebene zwei des Baums mindestens eine Teilgruppe von Referenzwahrscheinlichkeitsdichten lokalisiert. Für die lokalisierten Teilgruppen wird die Mutmaßlichkeit des Beobachtungsvektors für jede Referenzwahrscheinlichkeitsdichte in den Teilgruppen berechnet. Wie zuvor beschrieben, werden für die tatsächliche Mustererkennung die berechneten Mutmaßlichkeiten beibehalten und pro Referenz muster kombiniert und auch mit den für die nachfolgenden Beobachtungsvektoren berechneten Mutmaßlichkeiten kombiniert.
- Da die oberste Ebene des Baums während der Suche nicht benutzt wird, ist zu beachten, dass der Baum mindestens L = 3 Ebenen umfasst. Bei dieser Suchstrategie für einen vollkommen ausgewogenen Baum müssen insgesamt L = logB (N) Ebenen geprüft werden, wofür B Mutmaßlichkeitsberechnungen auf jeder Baumebene erforderlich sind. Wenn auf jeder Baumebene ein Zweig gewählt wird, ergibt dies insgesamt B.logB (N) Berechnungen, mit etwas zusätzlichem Aufwand für die Durchquerung des Baums. Dies ist im Vergleich zu der Berechnung der Mutmaßlichkeit aller N Zellen günstig. Der Nachteil der Baumsuche besteht darin, dass nicht gewährleistet ist, dass immer diejenige Referenzwahrscheinlichkeitsdichte lokalisiert wird, die die höchste Mutmaßlichkeit für den Beobachtungsvektor ergibt (die durchschnittliche Trefferrate beträgt weniger als 100%). Dies ist in Fig. 5 dargestellt, in der ein zweidimensionales Beispiel von Zellengrenzen für einen binären Baum mit vier Ästen (d 4 bis d 7) abgebildet ist. Die Figur zeigt die Zellengrenzen, die man als Ergebnis der Clusterbildung auf der obersten Ebene (Ebene 3) und auf Ebene zwei erhalten hat. Die Clusterbildung ergab vier Zellen, die durch die mit einer dicken Linie gezeichneten Zellengrenzen getrennt sind. Die optimale Aufteilung in Zellen ist durch die dünnen Grenzlinien dargestellt, die teilweise von der Grenze der obersten Ebene abweichen (die Zuordnung auf der zweiten Baumebene ist genau). Der fehlausgerichtete Bereich ist gepunktet dargestellt.
- Dieses Verfahren wurde in dem automatischen Fahrplaninformationssystem AIS von Philips getestet. Dieses sprecherunabhängige Erkennungssystem arbeitet mit vierzig Hidden-Markov-Modellen, die jeweils ein kontextunabhängiges Phonem mit Hilfe von sechs Zuständen modellieren. Es werden kontinuierliche Mischungsdichten benutzt. Das Erkennungslexikon umfasst 1850 Einträge. Trainings- und Testkorpus bestehen aus echten deutschen Fahrplananfragen (spontane Äußerungen, die über das Telefonnetz aufgezeichnet wurden). Das System wurde auf 8793 Äußerungen trainiert, die 7,3 Stunden Sprache entsprechen (von denen 47% als Stummpassage bezeichnet wurden). Der Testkorpus besteht aus 2278 Äußerungen (1,5 Stunden Sprache), die insgesamt 7078 gesprochene Worte ergeben, von denen 224 nicht im Wortschatz enthalten sind. Die folgende Tabelle zeigt die Ergebnisse, die mit Bäumen mit 64 Ästen (6 Aufteilungen) erzielt wurden. Insgesamt wurden 40 Hidden-Markov-Modelle benutzt, um 40 Teilworteinheiten zu modellieren. Jedes Modell hat sechs Zustände. Für die sechs Zustände wurden drei verschiedene Mischungen verwendet: zwei aufeinanderfolgende Zustände teilen sich die gleiche Mischung (Zustand 1 und 2, 3 und 4, und 5 und 6). Jede Mischung umfasst 64 Dichten. Außerdem wurde ein spezielles Modell mit nur einem einzelnen Zustand zum Modellieren der Stummpassagen benutzt. Dies ergibt im Prinzip (40·3 + 1)·64 = 7744 Dichten. Da während des Trainings einige Dichten als veraltet identifiziert und aus dem Baum entfernt wurden, wurden in der Praxis insgesamt 7600 Dichten verwendet. Die Tabelle zeigt das Ergebnis, das für verschiedene Verzweigungsfaktoren von B = 2, was einen binären Baum ergibt, bis B = 64, was einen flachen Baum ergibt - erzielt wurde, was tatsächlich eine vollständige Suche ist. Auf jeder Baumebene wurde nur ein einzelner Zweig gewählt.
- In der Tabelle bezeichnet Neff die Anzahl der Abstände, die durchschnittlich für jeden Zustand des Modells berechnet wurden. Da einige Referenzvektoren während des Trainings entfernt wurde, liegt Neff durchschnittlich etwas unter den Zahlen für einen vollständigen Baum, die 12, 12, 16, 20 bzw. 64 betragen. Die Trefferrate bezieht sich auf den Prozentsatz der Zeitdauer, die benötigt wird, um bei vollständiger Suche und bei Baumsuche den gleichen Referenzvektor als dem Beobachtungsvektor am nächsten gelegen zu lokalisieren. Die Wort-Fehler-Rate (WER) gibt den Anteil der Zeitdauer an, während der das gesprochene Wort nicht korrekt erkannt wurde. Dies umfasst Substitutionen (ein Wort wurde fälschlicherweise als ein anderes Wort identifiziert), Einfügungen (ein ,langes' Wort wurde fälschlicherweise als eine Folge von kürzeren Wörtern identifiziert) und Löschungen (eine Folge von ,kurzen' Wörtern wurde fälschlicherweise als ein langes Wort identifiziert).
- Der Rechenaufwand für die verschiedenen Baumtypen ist in der nachstehenden Tabelle aufgeführt.
- 2 12 (6 Ebenen, die jeweils 2 Berechnungen erfordern)
- 4 12 (3 Ebenen, die jeweils 4 Berechnungen erfordern)
- 8 16 (2 Ebenen, die jeweils 8 Berechnungen erfordern)
- 16 20 (2 Ebenen, eine mit 16 Berechnungen und eine mit 4 Berechnungen)
- 64 64 (1 Ebene, die 64 Berechnungen erfordert)
- Der Rechenaufwand für einen binären Baum ist daher der gleiche wie für einen quaternären Baum. Die vorhergehende Tabelle hat bereits veranschaulicht, dass ein quaternärer Baum zu besseren Ergebnissen führt als ein binärer Baum (ein quaternärer Baum hat weniger Verzweigungsebenen und es werden mehr Abstände vollständig berechnet, so dass man ein genaueres Ergebnis erhält). Es ist daher vorteilhaft, eine quaternäre Baumstruktur zu verwenden. Es ist zu beachten, dass die Nutzung einer Baumstruktur mit mehr Zweigen, zum Beispiel B = 8 oder B = 16, aus dem gleichen Grund zu besseren Ergebnissen führt. Aufgrund des zunehmenden Rechenaufwandes ist es jedoch von Vorteil, einen quaternären Baum mit mehr Knotenpunkten als Alternative zur Nutzung von mehr Zweigen zu verwenden. Dies wird in der folgenden Tabelle verdeutlicht:
- Diese Tabelle zeigt, dass durch die Nutzung von mehr Dichten ein besseres Ergebnis (geringere Wort-Fehler-Rate) erreicht wird. Vergleicht man das Ergebnis für 128 und 256 Knotenpunkte bei Verwendung des quaternären Baums (B = 4) mit den Ergebnissen bei Verwendung eines Baums mit B = 8 und 64 Knotenpunkten (vorhergehende Tabelle), so lässt sich deutlich erkennen, dass der quaternäre Baum mit mehr Dichten bei weniger oder ähnlichem Rechenaufwand zu besseren Ergebnissen führt.
- Die Tabelle zeigt auch, dass die Zunahme in der Anzahl der Dichten zu einer niedrigeren Trefferrate führt. Die Trefferrate kann verbessert werden, indem auf einigen oder allen Ebenen des Baums mehr als nur ein Zweig ausgewählt wird. Eine Möglichkeit hierfür besteht zum Beispiel darin, in einem quaternären Baum zwei Zweige auf jeder Ebene auszuwählen. Bei einem quaternären Baum mit 64 Ästen würde dies 28 Berechnungen erfordern - verglichen mit 12 Berechnungen, wenn nur ein Zweig auf jeder Ebene gewählt wird. Wenn auf einer bestimmten Ebene im Baum einer von den vier möglichen Zweigen eine viel höhere Mutmaßlichkeit für den Beobachtungsvektor ergibt als die anderen drei Zweige, ist es sehr wahrscheinlich, dass die Referenzwahrscheinlichkeitsdichte, die die höchste Mutmaßlichkeit ergibt, zu diesem Zweig gehört. Wenn auf der anderen Seite eine Gruppe von mehr als einem Zweig eine ähnliche, relativ hohe Mutmaßlichkeit für den Beobachtungsvektor ergibt, führt die Auswahl von nur einem Zweig eher zu einer falschen Entscheidung.
- Aus diesem Grund wird in einer weiteren Ausführungsform ein Schwellwert T benutzt. Auf jeder Baumebene wird der Knotenpunkt mit derjenigen Clusterwahrscheinlichkeitsdichte ausgewählt, die die höchste Mutmaßlichkeit ergibt. Wenn die Differenz der log-Mutmaßlichkeit des besten Knotenpunktes und des zweitbesten Knotenpunktes unterhalb des Schwellwertes T liegen, wird auch der zweitbeste Knotenpunkt ausgewählt und beide Zweige werden weiter durchsucht. Dieses Verfahren wurde für verschiedene Werte von T getestet, wie in der nachstehenden Tabelle aufgeführt:
- Die Tabelle zeigt die Ergebnisse für einen Baum mit 64 Ästen und einen Baum mit 256 Ästen. Für jeden Baum enthält die erste Reihe das Ergebnis bei einer vollständigen Suche (ohne Schwellwert). Die Reihe mit T = 0 enthält die Ergebnisse für den Fall, in dem nur ein Zweig auf jeder Ebene gewählt wird. Für die höheren Schwellwerte nimmt die Mutmaßlichkeit, dass auf einer bestimmten Ebene zwei Zweige ausgewählt werden, zu, und dies wird durch die Anzahl der Abstände angegeben, die tatsächlich für jeden Zustand des Modells berechnet werden (Neff). Insbesondere bei größeren Bäumen, zum Beispiel bei Bäumen mit 256 Ästen, können erhebliche Leistungssteigerungen ohne wahrnehmbaren Genauigkeitsverlust erreicht werden. Fachkundige werden in der Lage sein, für ihr System den am besten geeigneten Schwellwert zu wählen. Es ist zu beachten, dass der Schwellwertmechanismus auch benutzt werden kann, um die Auswahl von mehr als zwei Zweigen zu ermöglichen, wenn dies erforderlich wäre.
- Auf den Zwischenebenen wird die Clustermutmaßlichkeit der Beobachtung eigentlich nicht für die echten Mutmaßlichkeitsberechriung benutzt, die nur für die durch die Astknoten dargestellten Referenzwahrscheinlichkeitsdichten durchgeführt wird. Auf den Zwischenebenen muss man lediglich wissen, welche Clusterwahrscheinlichkeitsdichten die höchste Mutmaßlichkeit für den Beobachtungsvektor ergeben, und nicht, welches die tatsächliche Mutmaßlichkeit ist:
- Bei Gaußschen Dichten, die die euklidische Norm (L&sub2; -Norm) nutzen, kann bestimmt werden, welche Clusterwahrscheinlichkeitsdichte die höchste Mutmaßlichkeit ergibt, indem eine einfachere Berechnung durchgeführt wird, für die im wesentlichen eine Vektorskalarproduktberechnung (auch als inneres Produkt bezeichnet) erforderlich ist. Bei Verwendung von Gaußschen Dichten mit nur einer einzelnen Skalarvarianz pro Gaußscher Dichte:
- Ks,k = I·σ wird Formel (a):
- Durch die Definition von:
- gibt die diskriminierende Funktion gji ( ) an, welche der Clusterwahrscheinlichkeitsdichten (dargestellt durch die Mittelwertvektoren i, oder j) die höchste Mutmaßlichkeit für ergibt. Nur das Vorzeichen von gij ( ) ist relevant: wenn gij ( ) positiv ist, ergibt die durch j dargestellte Clusterwahrscheinlichkeitsdichte die höchste Mutmaßlichkeit für wenn gij ( ) negativ ist, ergibt die durch i dargestellte Clusterwahrscheinlichkeitsdichte die höchste Mutmaßlichkeit für . Mit dem folgenden Prinzip:
- erhält man für gij ( ):
- In dieser Formel können die ersten vier Terme einmal berechnet werden, zum Beispiel während des Trainings. Von dem fünften Term kann auch der erste Faktor einmal berechnet werden. Der zweite Faktor (die ins Quadrat erhobene Norm von ) braucht nur einmal für jeden Beobachtungsvektor berechnet zu werden und kann für alle Referenzvektoren benutzt werden. Nur der letzte Term, der ein Vektorskalarprodukt ist, muss für jeden Beobachtungsvektor und jeden Referenzvektor berechnet werden. Bei Verwendung dieser Formel wird gij ( ) zuerst benutzt, um festzustellen, ob die Clusterwahrscheinlichkeitsdichte 1 eine höhere Mutmaßlichkeit für ergibt als die Clusterwahrscheinlichkeit 2. Als nächstes wird die Clusterwahrscheinlichkeitsdichte, die die höchste Mutmaßlichkeit ergeben hat, mit der Clusterwahrscheinlichkeitsdichte 3 verglichen. Dies wird wiederholt, bis alle Clusterwahrscheinlichkeitsdichten auf dieser Baumebene geprüft wurden. Die Reihenfolge, in der die Clusterwahrscheinlichkeitsdichten für die Berechnung gewählt werden, ist nicht von Bedeutung.
- Ein ähnliches Verfahren kann angewendet werden, wenn die Kovarianzmatrix für die Gaußschen Dichten unter allen Dichten einer Mischung gebunden ist: die Kovarianzmatrix ist Ks,k = Ks, wobei s der Zustand des Hidden-Markov-Modells ist und k eine Dichte für diesen Zustand angibt. Dies führt dazu, dass die Grenzen zwischen den durch verschiedene Zweige des Baums dargestellten Clustern Hyperebenen werden. Formel (a) wird:
- - log (p( )) min {log1/Wk + D/2log 2π + 1/2log det Ks +1/2( -us,k)TK ( - s,k) k = 1, ..., N}
- Durch Definition von:
- ( , s,k) = log1/Wk + D/2log2π + 1/2 log det Ks + 1/2( - s,k)T K ( - s,k)
- wird die diskriminierende Funktion gij ( ):
- gij( ) = ( , s,i) - ( , sj)
- zu:
- Da im allgemeinen:
- aTMb = (aTMb)T = bTMTa
- gilt und K&supmin;¹ eine symmetrische Matrix ist, ergibt dies:
- gij( ) = log wj/wi + T K ( sj - s,i) + 1/2 s,iK&supmin;¹ s,i - 1/2 sj K&supmin;¹ sj
- In dieser Formel können die Terme 1, 3 und 4 einmal berechnet werden, zum Beispiel während des Trainings. Von dem zweiten Term kann auch der Vektor K&supmin;¹ ( sj, - s,i ) im vorhinein berechnet werden, was impliziert, dass nur noch das Vektorskalarprodukt dieses Vektors mit online berechnet zu werden braucht.
- Während des Trainings werden die unbekannten Parameter der Hidden-Markov-Modelle geschätzt. Dies umfasst das Schätzen der unbekannten Folge von Referenzeinheiten (Zuständen) und der unbekannten Modellparameter (Mischungsdichteparameter). Fig. 6 zeigt einen typischen Trainingsprozess. Der gleiche Schritt der akustischen Analyse, wie er für die Spracherkennung genutzt wird, wird verwendet, um eine Trainingsäußerung in eine zeitliche Folge von Trainingsbeobachtungsvektoren umzuwandeln. In einem iterativen Prozess werden die zeitliche Ausrichtung der Trainingsbeobachtungsvektoren auf die Zustände und die Modellparameter verbessert. Bei jedem Iterationsdurchgang wird das Modell, das zu diesem Zeitpunkt konstruiert wurde, benutzt, um die Trainingsbeobachtungsvektoren zeitlich auszurichten. Es ist gut bekannt, auf welche Weise dies erfolgen kann, zum Beispiel durch Anwendung des Viterbi-Algorithmus. Der Viterbi-Algorithmus bestimmt die beste Zustandsfolge für eine bestimmte Folge von Beobachtungsvektoren. Infolge der zeitlichen Ausrichtung wird jeder Trainingsbeobachtungsvektor einem Zustand und seiner Mischungsdichte zugewiesen. Als nächstes werden die Beobachtungsvektoren für jede Mischungsdichte gesammelt (Clusterbildung) und benutzt, um die Parameter der Dichte erneut zu schätzen. Hierfür kann die beschriebene k-Mittel-Clusterbildungsmethode verwendet werden. Es ist klar, dass aufgrund der zeitlichen Ausrichtung einige Beobachtungsvektoren einem anderen Zustand und einer anderen Mischungsdichte zugeordnet werden. Da gleichzeitig eine bestimmte Ebene des Baums konstruiert wird (als Teil der Clusterbildung), wirkt sich die Neuzuweisung auf die bereits durchgeführte Clusterbildung und, die Konstruktion des Baums aus. Statt die Clusterbildung auf der obersten Ebene des Baums von Grund auf neu zu beginnen, wird vorteilhafterweise der beschriebene Baumsuche-Algorithmus angewendet, um die Trainingsbeobachtungsvektoren vorläufig einem Cluster zuzuordnen. Dieser Schritt kann als eine weitere Iterationsebene in die Clusterbildungsprozedur aufgenommen werden. Eine binäre Baumstruktur kann zum Beispiel wie folgt konstruiert werden (es ist zu beachten, dass die folgende Prozedur parallel für jeden Zustand durchgeführt wird):
- 1. Eine Mischungsdichte mit einem Mittelwertvektor (Schwerpunkt) und Varianz für die gesamte Gruppe von Trainingsbeobachtungsvektoren für den Zustand bestimmen. Der Mittelwertvektor ist der Mittelwert aller Trainingsbeobachtungsvektoren.
- 2. Das System zeitlich ausrichten, indem für jeden Trainingsbeobachtungsvektor der am besten geeignete Zustand bestimmt wird.
- 3. Die Mischungsdichte erneut berechnen.
- 4. Iteration: Die Schritte 2 und 3 wiederholen, bis ein Stoppkriterium erreicht ist, zum Beispiel bis keine signifikante Verbesserung mehr erzielt wird, oder bis eine vorgegebene Anzahl von Iterationen durchgeführt wurde.
- 5. Aufteilen der Mischungsdichte in zwei Mischungsdichten (eine Ebene niedriger) durch Bestimmten von zwei neuen Schwerpunkten + und 7 gemäß der Regel: &spplus; = + , &supmin; = - , wobei ein Teilungsvektor ist, typischerweise mit Komponenten in der Größenordnung von 1,0. (Die Varianzen der beiden neuen Dichten werden hier von der Originaldichte kopiert).
- 6. Für jeden Trainingsbeobachtungsvektor ermitteln, welche der beiden Mischungsdichten die wahrscheinlichere für den Beobachtungsvektor ist und den Beobachtungsvektor dieser Dichte zuordnen. Auf diese Weise werden zwei Cluster gebildet.
- 7. Die Mischungsdichten (Schwerpunkt und Varianz) der beiden Cluster neu berechnen.
- 8. Iteration: Die Schritte 6 und 7 wiederholen, bis ein Stoppkriterium erreicht ist, zum Beispiel bis keine signifikante Verbesserung mehr erzielt wird, oder bis eine vorgegebene Anzahl von Iterationen durchgeführt wurde.
- 9. Das System zeitlich ausrichten, indem für jeden Trainingsbeobachtungsvektor der am besten geeignete Zustand bestimmt wird.
- 10. Den Baumsuchalgorithmus verwenden, um jeden Trainingsbeobachtungsvektor einem Cluster auf derjenigen Baumebene zuzuordnen, die gerade konstruiert wird.
- 11. Alle Mischungsdichten neu berechnen, und zwar beginnend mit der aktuellen Baumebene und von dort aus aufwärts.
- 12. Iteration: Die Schritte 10 und 11 wiederholen, bis ein Stoppkriterium erreicht ist, zum Beispiel bis keine signifikante Verbesserung mehr erzielt wird, oder bis eine vorgegebene Anzahl von Iterationen durchgeführt wurde.
- 13. Iteration: Den Vorgang ab Schritt 9 wiederholen, bis ein Stoppkriterium erreicht ist, zum Beispiel bis keine signifikante Verbesserung mehr erzielt wird, oder bis eine vorgegebene Anzahl von Iteratiorien durchgeführt wurde.
- 14. Iteration: Den Vorgang ab Schritt 5 für jede Mischungsdichte auf der zur Zeit untersten Ebene (die jetzt stabil geworden ist) wiederholen, bis die gewünschte Anzahl von Baumebenen erreicht ist.
- Als Ausgangspunkt für die Iterationen aus Figiur 6 kann jeder dieser Trainingssätze (Folge von Beobachtungen) manuell oder alternativ auch automatisch in Zustände segmentiert werden, und zwar entweder linear oder unter Verwendung eines älteren Modells, falls dieses verfügbar ist.
- Die Anwendung der Baumsuche während des Trainings führt zu einer wesentlichen Verkürzung des für das Trainieren des Systems erforderlichen Zeitaufwandes. Beim AIS-System, das mit einer maximalen Auflösung von 29000 Dichten arbeitet, wurde die Trainingsdauer von 108 auf 25 Stünden reduziert. Allerdings ist zu beachten, dass hierdurch die Qualität der Erkennung beeinträchtigt wird. Die nachstehende Tabelle zeigt, dass der relative Verlust bei einem System mit niedriger Auflösung (16 Äste pro Baum, insgesamt 1900 Dichten), welches stärker betroffen ist als ein System mit hoher Auflösung, etwa 2% beträgt.
- Speech Sprache
- Feature Analysis Merkmalanalyse
- Inventory of speech recognition units Bestand an Spracherkennungseinheiten
- Unit matching system Einheitenvergleichssystem
- Word dictionary Wörterbuch
- Lexical decoding Lexikalische Decodierung
- Grammar Grammatik
- Syntactical analysis Syntaktische Analyse
- Recognition utterance Erkennung der Äußerung
- IM Eingabemittel
- RPDB Referenzmusterdatenbank
- LOC Lokalisierer
- TB Baumkonstrukteur
- OM Ausgabemittel
- Cell boundary on top tree level Zellengrenze auf oberster Baumebene
- 2nd level cell boundary Zellengrenze auf zweiter Ebene
- unconstrained cell boundary Zellengrenze ohne Randbedingungen
- Training utterance Trainingsäußerung
- Along with zusammen mit
- Phonetic script phonetischer Schrift
- Repeat wiederholen
- Sequence of acoustic vectors Folge von Akustik-Vektoren
- Determine time alignment path Bestimmen des Pfads für zeitliche Ausrichtung
- Estimate the parameters of Schätzen der Parameter für die Teilworteinheiten
- the subword units
- stop if estimates constant Stoppen, wenn Schätzwerte konstant bleiben
- defines definiert
- linear sequence of subword units lineare Folge von Teilworteinheiten
- update the parameters of Aktualisieren der Parameter für die
- the subword units Teilworteinheiten
Claims (10)
1. Verfahren zur Erkennung eines Eingangsmusters, das von einer
kontinuierlichen physikalischen Größe abgeleitet wird, wobei das genannte Verfahren folgendes
umfasst:
Zugreifen auf die genannte physikalische Größe und daraus eine Folge von
Eingangsbeobachtungsvektoren erzeugen, die das genannte Eingangsmuster darstellen;
unter einer Vielzahl von Referenzmustern ein erkanntes Referenzmuster
lokalisieren, das dem genannten Eingangsmuster entspricht, wobei mindestens ein Referenzmuster
eine Folge von Referenzeinheiten ist und jede Referenzeinheit durch mindestens eine
zugehörige Referenzwahrscheinlichkeitsdichte in einer Gruppe von
Referenzwahrscheinlichkeitsdichten dargestellt wird;
Darstellen einer Auswahl der Referenzwahrscheinlichkeitsdichten in Form einer
Baumstruktur, wobei jeder Astknoten einer Referenzwahrscheinlichkeitsdichte entspricht
und wobei jeder Nicht-Astknoten einer Clusterwahrscheinlichkeitsdichte entspricht, die von
den Referenzwahrscheinlichkeitsdichten abgeleitet wird, welche den Astknoten in den
Zweigen der genannten Nicht-Astknoten entsprechen;
wobei das genannte Lokalisieren für jeden Eingangsbeobachtungsvektor
folgendes umfasst:
Auswählen einer Vielzahl von Astknoten durch Suchen der genannten
Baumstruktur über Nicht-Astknoten, für die die entsprechende
Clusterwahrscheinlichkeitsdichte eine optimale Clustermutmaßlichkeit für den genannten
Eingangsbeobachtungsvektor ergibt; und
Berechnen einer Beobachtungsmutmaßlichkeit des genannten
Eingangsbeobachtungsvektors für jede Referenzwahrscheinlichkeitsdichte, die einem ausgewählten
Astknoten entspricht,
dadurch gekennzeichnet, dass:
das genannte Verfahren die Darstellung der mit jeder Referenzeinheit
verbundenen Referenzwahrscheinlichkeitsdichten als eine separate Baumstruktur umfasst, und
das genannte Lokalisieren das Auswählen von Astknoten jeder separaten
Baumstruktur durch Ausführen der genannten Suche nach jeder separaten Baumstruktur
umfasst.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Suche der
genannten Baumstruktur über Nicht-Astknoten die Suche auf mindestens einer Ebene der
genannten Baumstruktur nach einem Pfad über einen Nicht-Astknoten umfasst, für den ein
Optimum der genannten Clustermutmaßlichkeit berechnet wurde, ergänzt durch Pfade über
Nicht-Astknoten, für die die genannte Clustermutmaßlichkeit innerhalb eines vorgegebenen
Bereichs der genannten optimalen Clustermutmaßlichkeit liegt.
3. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass die
genannte Baumstruktur ein quaternärer Baum ist, bei dem jeder Nicht-Astknoten hierarchisch
eine Ebene über einem Maximum von vier Knotenpunkten liegt und mindestens ein Nicht-
Astknoten hierarchisch eine Ebene über vier Knotenpunkten liegt.
4. Verfahren nach Anspruch 1, 2 oder 3, dadurch gekennzeichnet, dass das
Suchen der genannten Baumstruktur über die genannten Nicht-Astknoten für eine Gruppe
von Nicht-Astknoten innerhalb eines gleichen Zweigs der genannten Baumstruktur und auf
der gleichen Ebene der genannten Baumstruktur folgendes umfasst:
für ein ausgewähltes Paar der genannten Nicht-Astknoten eine
Clustervergleichswertung zwischen den beiden entsprechenden Clusterwahrscheinlichkeitsdichten und dem
genannten Eingangsbeobachtungsvektor berechnen, wobei die genannte
Clustervergleichswertung angibt, welche der beiden entsprechenden
Clusterwahrscheinlichkeitsdichten die höchste Mutmaßlichkeit für den Eingangsbeobachtungsvektor ergibt;
die Berechnung der genannten Clustervergleichswertung für den Nicht-Astknoten
wiederholen, für den die zuvor berechnete Clustervergleichswertung die höchste
Mutmaßlichkeit ergab, und für einen weiteren Nicht-Astknoten der genannten Gruppe, für den die
Clustervergleichswertung bereits berechnet wurde, bis eine Clustervergleichswertung für
alle Nicht-Astknoten der genannten Gruppe berechnet ist; und
in die genannte Suche einen Pfad über den Nicht-Astknoten aufnehmen, für
den die Clustervergleichswertung die höchste Mutmaßlichkeit ergab.
5. Verfahren nach Anspruch 1, 2, 3 oder 4, bei dem die
Wahrscheinlichkeitsdichten von einer Folge von Trainingsbeobachtungsvektoren abgeleitet werden, die die
bekannten Eingangsmuster darstellen, und wobei das genannte Darstellen der genannten
Gruppe von Referenzwahrscheinlichkeitsdichten als Baumstruktur das Clustering der
genannten
Trainingsbeobachtungsvektoren in eine hierarchische Gruppe von Clustern und die
Berechnung einer Clusterwahrscheinlichkeitsdichte für jeden Cluster umfasst,
dadurch gekennzeichnet, dass das genannte Darstellen der genannten Gruppe von
Referenzwahrscheinlichkeitsdichten als Baumstruktur folgendes umfasst:
die genannte Folge von Trainingsbeobachtungsvektoren in eine Folge von
entsprechenden Referenzmustern und entsprechenden Referenzeinheiten segmentieren; und
iterativ:
für jede Referenzeinheit die entsprechenden Trainingsbeobachtungsvektoren in
eine hierarchische Gruppe von Clustern gruppieren, die separate Baumstrukturen bilden,
die jeweils einer separaten Referenzeinheit entsprechen; und
die genannte Folge der Trainingsbeobachtungsvektoren entsprechend der
genannten Folge von Referenzeinheiten zeitlich ausrichten, indem:
für jeden Trainingsbeobachtungsvektor eine entsprechende Referenzeinheit
bestimmt wird, die gemäß einem vorgegebenen Optimalitätskriterium am wahrscheinlichsten
ist, und
jeder Trainingsbeobachtungsvektor einem der genannten Cluster zugeordnet wird,
indem die Baumstruktur der entsprechenden Refetenzeinheit nach dem Cluster mit einer
optimalen Clustermutmaßlichkeit durchsucht wird.
6. System zum Erkennen eines zeitsequentiellen Eingangsmusters, das von
einer kontinuierlichen physikalischen Größe abgeleitet wird, wobei das System folgendes
umfasst:
Eingabemittel zum wiederholten Zugreifen auf die genannte physikalische Größe
und um daraus eine Zeitsequenz von Eingangsbeobachtungsvektoren abzuleiten, die das
genannte Eingangsmuster darstellen;
einen Baumkonstrukteur zur Darstellung einer Gruppe von
Referenzwahrscheinlichkeitsdichten als eine Baumstruktur, wobei jeder Astknoten einer
Referenzwahrscheinlichkeitsdichte entspricht, und wobei jeder Nicht-Astknoten einer
Clusterwahrscheinlichkeitsdichte entspricht, die von allen Referenzwahrscheinlichkeitsdichten abgeleitet ist,
welche den Astknoten in Zweigen unterhalb des genannten Nicht-Astknotens entsprechen;
eine Referenzmusterdatenbank zum Speichern einer Vielzahl von
Referenzmustern, wobei mindestens ein Referenzmuster eine Folge von Referenzeinheiten ist und jede
Referenzeinheit durch mindestens eine zugehörige Referenzwahrscheinlichkeitsdichte in
der genannten Gruppe von Referenzwahrscheinlichkeitsdichten dargestellt wird; wobei die
Auswahl von Referenzwahrscheinlichkeitsdichten als genannte Baumstruktur gespeichert
wird;
einen Lokalisierer, um unter den in der genannten Referenzmusterdatenbank
gespeicherten Referenzmustern ein erkanntes Referenzmuster zu lokalisieren, welches dem
genannten Eingangsmuster entspricht, wobei das genannte Lokalisieren folgendes für jeden
Eingangsbeobachtungsvektor umfasst:
Auswählen einer Vielzahl von Astknoten durch Suchen der genannten
Baumstruktur über Nicht-Astknoten, für die die entsprechende
Clusterwahrscheinlichkeitsdichte eine optimale Clustermutmaßlichkeit für den genannten
Eingangsbeobachtungsvektor ergibt, und
Berechnen einer Beobachtungsmutmaßlichkeit des genannten
Eingangsbeobachtungsvektors für jede Referenzwahrscheinlichkeitsdichte, die einem gewählten
Astknoten entspricht, und
Ausgabemittel zum Ausgeben des erkannten Musters;
dadurch gekennzeichnet, dass:
der genannte Baumkonstrukteur so konzipiert wird, dass die zugehörigen
Referenzwahrscheinlichkeitsdichten für jede Referenzeinheit als eine separate Baumstruktur
dargestellt werden;
in der genannten Referenzmusterdatenbank außerdem die genannten separaten
Baumstrukturen für jede Referenzeinheit gespeichert werden, und
das Lokalisieren das Auswählen von Astknoten von jeder separaten Baumstruktur
durch Ausführen der genannten Suche nach jeder separaten Baumstruktur umfasst.
7. System nach Anspruch 6, dadurch gekennzeichnet, dass die Suche der
genannten Baumstruktur über Nicht-Astknoten die Suche auf mindestens einer Ebene der
genannten Baumstruktur nach einem Pfad über einen Nicht-Astknoten umfasst, für den ein
Optimum der genannten Clustermutmaßlichkeit berechnet wurde, ergänzt durch Pfade über
Nicht-Astknoten, für die die genannte Clustermutmaßlichkeit innerhalb eines vorgegebenen
Bereichs der genannten optimalen Clustermutmaßlichkeit liegt.
8. System nach Anspruch 6 oder 7, dadurch gekennzeichnet, dass die genannte
Baumstruktur ein quatemärer Baum ist, bei dem jeder Nicht-Astknoten hierarchisch eine
Ebene über einem Maximum von vier Knotenpunkten liegt und mindestens ein Nicht-
Astknoten hierarchisch eine Ebene über vier Knotenpunkten liegt.
9. System nach Anspruch 6, 7 oder 8, dadurch gekennzeichnet, dass das
Suchen der genannten Baumstruktur über die genannten Nicht-Astknoten für eine Gruppe von
Nicht-Astknoten innerhalb eines gleichen Zweigs der genannten Baumstruktur und auf der
gleichen Ebene der genannten Baumstruktur folgendes umfasst:
für ein ausgewähltes Paar der genannten Nicht-Astknoten eine
Clustervergleichswertung zwischen den beiden entsprechenden Clusterwahrscheinlichkeitsdichten und dem
genannten Eingangsbeobachtungsvektor berechnen, wobei die genannte
Clustervergleichswertung angibt, welche der beiden entsprechenden
Clusterwahrscheinlichkeitsdichten die höchste Mutmaßlichkeit für den Eingangsbeobachtungsvektor ergibt;
die Berechnung der genannten Clustervergleichswertung für den Nicht-
Astknoten wiederholen, für den die zuvor berechnete Clustervergleichswertung die höchste
Mutmaßlichkeit ergab, und für einen weiteren Nicht-Astknoten der genannten Gruppe, für
den die Clustervergleichswertung bereits berechnet wurde, bis eine
Clustervergleichswertung für alle Nicht-Astknoten der genannten Gruppe berechnet ist; und
in die genannte Suche einen Pfad über den Nicht-Astknoten aufnehmen, für
den die Clustervergleichswertung die höchste Mutmaßlichkeit ergab.
10. System nach Anspruch 6, 7, 8 oder 9, bei dem die
Wahrscheinlichkeitsdichten von einer Folge von Trainingsbeobachtungsvektoren abgeleitet werden, die die
bekannten Eingangsmuster darstellen, und wobei das genannte Darstellen der genannten
Gruppe von Referenzwahrscheinlichkeitsdichten als Baumstruktur das Clustering der
genannten Trainingsbeobachtungsvektoren in eine hierarchische Gruppe von Clustern und die
Berechnung einer Clusterwahrscheinlichkeitsdichte für jeden Cluster umfasst,
dadurch gekennzeichnet, dass das genannte Darstellen der genannten Gruppe von
Referenzwahrscheinlichkeitsdichten als Baumstruktur folgendes umfasst:
die genannte Folge von Trainingsbeobachtungsvektoren in eine Folge von
entsprechenden Referenzmustern und entsprechenden Referenzeinheiten segmentieren; und
iterativ:
für jede Referenzeinheit die entsprechenden Trainingsbeobachtungsvektoren in
eine hierarchische Gruppe von Clustern gruppieren, die separate Baumstrukturen bilden,
die jeweils einer separaten Referenzeinheit entsprechen; und
die genannte Folge der Trainingsbeobachtungsvektoren entsprechend der
genannten Folge von Referenzeinheiten zeitlich ausrichten, indem:
für jeden Trainingsbeobachtungsvektor eine entsprechende Referenzeinheit
bestimmt wird, die gemäß einem vorgegebenen Optimalitätskriterium am wahrscheinlichsten
ist, und
jeder Trainingsbeobachtungsvektor einem der genannten Cluster zugeordnet wird,
indem die Baumstruktur der entsprechenden Referenzeinheit nach dem Cluster mit einer
optimalen Clustermutmaßlichkeit durchsucht wird.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP95202318 | 1995-08-28 | ||
PCT/IB1996/000860 WO1997008686A2 (en) | 1995-08-28 | 1996-08-26 | Method and system for pattern recognition based on tree organised probability densities |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69613338D1 DE69613338D1 (de) | 2001-07-19 |
DE69613338T2 true DE69613338T2 (de) | 2002-05-29 |
Family
ID=8220590
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69613338T Expired - Lifetime DE69613338T2 (de) | 1995-08-28 | 1996-08-26 | Verfahren und system zur mustererkennung mittels baumstrukturierten wahrscheinlichkeitsdichten |
Country Status (5)
Country | Link |
---|---|
US (1) | US5857169A (de) |
EP (1) | EP0788649B1 (de) |
JP (1) | JP3948747B2 (de) |
DE (1) | DE69613338T2 (de) |
WO (1) | WO1997008686A2 (de) |
Families Citing this family (43)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6260013B1 (en) * | 1997-03-14 | 2001-07-10 | Lernout & Hauspie Speech Products N.V. | Speech recognition system employing discriminatively trained models |
US6292797B1 (en) * | 1997-08-07 | 2001-09-18 | New York University | Method for determining actionable patterns in a database |
CA2216224A1 (en) * | 1997-09-19 | 1999-03-19 | Peter R. Stubley | Block algorithm for pattern recognition |
JP2001507482A (ja) * | 1997-10-08 | 2001-06-05 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 語彙及び/又は言語モデルのトレーニング |
US5983180A (en) * | 1997-10-23 | 1999-11-09 | Softsound Limited | Recognition of sequential data using finite state sequence models organized in a tree structure |
US6151574A (en) * | 1997-12-05 | 2000-11-21 | Lucent Technologies Inc. | Technique for adaptation of hidden markov models for speech recognition |
US6148295A (en) * | 1997-12-30 | 2000-11-14 | International Business Machines Corporation | Method for computing near neighbors of a query point in a database |
JP4004619B2 (ja) * | 1998-01-08 | 2007-11-07 | 富士通株式会社 | 自動在庫引当が可能な在庫管理装置 |
US6269334B1 (en) * | 1998-06-25 | 2001-07-31 | International Business Machines Corporation | Nongaussian density estimation for the classification of acoustic feature vectors in speech recognition |
US6721759B1 (en) * | 1998-12-24 | 2004-04-13 | Sony Corporation | Techniques for spatial representation of data and browsing based on similarity |
US6684186B2 (en) * | 1999-01-26 | 2004-01-27 | International Business Machines Corporation | Speaker recognition using a hierarchical speaker model tree |
US6594392B2 (en) * | 1999-05-17 | 2003-07-15 | Intel Corporation | Pattern recognition based on piecewise linear probability density function |
US6421668B1 (en) * | 1999-08-05 | 2002-07-16 | Agilent Technologies, Inc. | Method and system for partitioning data into subsets of related data |
US6662184B1 (en) * | 1999-09-23 | 2003-12-09 | International Business Machines Corporation | Lock-free wild card search data structure and method |
US7072833B2 (en) * | 2000-06-02 | 2006-07-04 | Canon Kabushiki Kaisha | Speech processing system |
US6789063B1 (en) * | 2000-09-01 | 2004-09-07 | Intel Corporation | Acoustic modeling using a two-level decision tree in a speech recognition system |
US6978239B2 (en) * | 2000-12-04 | 2005-12-20 | Microsoft Corporation | Method and apparatus for speech synthesis without prosody modification |
US6845357B2 (en) * | 2001-07-24 | 2005-01-18 | Honeywell International Inc. | Pattern recognition using an observable operator model |
US6757651B2 (en) * | 2001-08-28 | 2004-06-29 | Intellisist, Llc | Speech detection system and method |
ES2258624T3 (es) * | 2002-05-06 | 2006-09-01 | Prous Institute For Biomedical Research S.A. | Procedimiento de reconocimiento de voz. |
EP1387232A1 (de) * | 2002-07-29 | 2004-02-04 | Centre National De La Recherche Scientifique | Verfahren zur Bestimmung von Zuordnungswerten in verschiedenen Parametern eines Systemes |
US7788096B2 (en) * | 2002-09-03 | 2010-08-31 | Microsoft Corporation | Method and apparatus for generating decision tree questions for speech processing |
US7571097B2 (en) * | 2003-03-13 | 2009-08-04 | Microsoft Corporation | Method for training of subspace coded gaussian models |
US7496498B2 (en) * | 2003-03-24 | 2009-02-24 | Microsoft Corporation | Front-end architecture for a multi-lingual text-to-speech system |
GB2409750B (en) * | 2004-01-05 | 2006-03-15 | Toshiba Res Europ Ltd | Speech recognition system and technique |
US7542949B2 (en) * | 2004-05-12 | 2009-06-02 | Mitsubishi Electric Research Laboratories, Inc. | Determining temporal patterns in sensed data sequences by hierarchical decomposition of hidden Markov models |
KR100703697B1 (ko) * | 2005-02-02 | 2007-04-05 | 삼성전자주식회사 | 어휘 그룹 트리를 이용한 어휘 인식 방법 및 장치 |
US20060235698A1 (en) * | 2005-04-13 | 2006-10-19 | Cane David A | Apparatus for controlling a home theater system by speech commands |
US7805301B2 (en) * | 2005-07-01 | 2010-09-28 | Microsoft Corporation | Covariance estimation for pattern recognition |
US7877255B2 (en) * | 2006-03-31 | 2011-01-25 | Voice Signal Technologies, Inc. | Speech recognition using channel verification |
JP5088030B2 (ja) * | 2007-07-26 | 2012-12-05 | ヤマハ株式会社 | 演奏音の類似度を評価する方法、装置およびプログラム |
JP2010140383A (ja) * | 2008-12-15 | 2010-06-24 | Sony Corp | 情報処理装置および方法、並びにプログラム |
US20100185672A1 (en) * | 2009-01-21 | 2010-07-22 | Rising Iii Hawley K | Techniques for spatial representation of data and browsing based on similarity |
WO2011159855A1 (en) * | 2010-06-16 | 2011-12-22 | Yale University | Forest inventory assessment using remote sensing data |
US20140047089A1 (en) * | 2012-08-10 | 2014-02-13 | International Business Machines Corporation | System and method for supervised network clustering |
JP6246636B2 (ja) * | 2014-03-20 | 2017-12-13 | 株式会社東芝 | パターン識別装置、パターン識別方法およびプログラム |
CN106297775B (zh) * | 2015-06-02 | 2019-11-19 | 富泰华工业(深圳)有限公司 | 语音识别装置及方法 |
CN105096955B (zh) * | 2015-09-06 | 2019-02-01 | 广东外语外贸大学 | 一种基于模型生长聚类的说话人快速识别方法及*** |
US10482196B2 (en) * | 2016-02-26 | 2019-11-19 | Nvidia Corporation | Modeling point cloud data using hierarchies of Gaussian mixture models |
CN107293298B (zh) * | 2016-04-05 | 2021-02-19 | 富泰华工业(深圳)有限公司 | 语音控制***及方法 |
KR101902882B1 (ko) * | 2016-07-14 | 2018-11-13 | 연세대학교 산학협력단 | 랜덤 트리 워크 알고리즘을 이용하여 삼차원 관상동맥 컴퓨터 단층촬영 혈관 조영 영상에서 관상동맥을 추적하기 위한 방법 |
US20210035025A1 (en) * | 2019-07-29 | 2021-02-04 | Oracle International Corporation | Systems and methods for optimizing machine learning models by summarizing list characteristics based on multi-dimensional feature vectors |
US11615428B1 (en) | 2022-01-04 | 2023-03-28 | Natural Capital Exchange, Inc. | On-demand estimation of potential carbon credit production for a forested area |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2522154B2 (ja) * | 1993-06-03 | 1996-08-07 | 日本電気株式会社 | 音声認識システム |
US5528701A (en) * | 1994-09-02 | 1996-06-18 | Panasonic Technologies, Inc. | Trie based method for indexing handwritten databases |
JPH10509526A (ja) * | 1994-10-26 | 1998-09-14 | ディクタフォーン コーポレイション (ユー エス) | ヒドンマルコフモデルを使用して設計された決定木分類子 |
-
1996
- 1996-08-26 WO PCT/IB1996/000860 patent/WO1997008686A2/en active IP Right Grant
- 1996-08-26 EP EP96926547A patent/EP0788649B1/de not_active Expired - Lifetime
- 1996-08-26 JP JP51005797A patent/JP3948747B2/ja not_active Expired - Lifetime
- 1996-08-26 DE DE69613338T patent/DE69613338T2/de not_active Expired - Lifetime
- 1996-08-28 US US08/704,199 patent/US5857169A/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
WO1997008686A2 (en) | 1997-03-06 |
EP0788649A2 (de) | 1997-08-13 |
DE69613338D1 (de) | 2001-07-19 |
JPH10508392A (ja) | 1998-08-18 |
JP3948747B2 (ja) | 2007-07-25 |
US5857169A (en) | 1999-01-05 |
EP0788649B1 (de) | 2001-06-13 |
WO1997008686A3 (en) | 1997-04-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69613338T2 (de) | Verfahren und system zur mustererkennung mittels baumstrukturierten wahrscheinlichkeitsdichten | |
DE69519297T2 (de) | Verfahren und vorrichtung zur spracherkennung mittels optimierter partieller buendelung von wahrscheinlichkeitsmischungen | |
DE69712277T2 (de) | Verfahren und vorrichtung zur automatischen sprachsegmentierung in phonemartigen einheiten | |
DE69523219T2 (de) | Anpassungsfähiges Lernverfahren zur Mustererkennung | |
DE69818231T2 (de) | Verfahren zum diskriminativen training von spracherkennungsmodellen | |
DE69420842T2 (de) | Spracherkennung unter anwendung einer zweidurchgängigen suchmethode | |
DE69719236T2 (de) | Verfahren und System zur Spracherkennung mittels verborgener Markoff-Modelle mit kontinuierlichen Ausgangswahrscheinlichkeiten | |
DE69707876T2 (de) | Verfahren und vorrichtung fuer dynamisch eingestelltes training zur spracherkennung | |
DE69422097T2 (de) | Training von kombinierten Kettenmodellen mit minimaler Fehlerrate | |
DE69827586T2 (de) | Technik zur Adaptation von Hidden Markov Modellen für die Spracherkennung | |
DE69315374T2 (de) | Spracherkennungssystem zur naturgetreuen Sprachübersetzung | |
DE60120323T2 (de) | System und Verfahren zur Mustererkennung im sehr hochdimensionalen Raum | |
DE69524036T2 (de) | Vorrichtung zur erkennung von gesprächsthemen | |
DE69925479T2 (de) | Dynamisch konfigurierbares akustisches modell für spracherkennungssysteme | |
DE3337353C2 (de) | Sprachanalysator auf der Grundlage eines verborgenen Markov-Modells | |
DE69420891T2 (de) | Mustererkennung mit Baumstruktur für Referenzmustermerkmalsvektoren oder für "HMM" | |
DE602004000382T2 (de) | Rauschadaptierung zur Spracherkennung | |
DE69324428T2 (de) | Verfahren zur Sprachformung und Gerät zur Spracherkennung | |
DE69827988T2 (de) | Sprachmodelle für die Spracherkennung | |
DE69029188T2 (de) | Auf Wahrscheinlichkeitclusterbildung gestützte Schriftzeichenerkennung | |
DE69226796T2 (de) | Zeitliche Dekorrelationsverfahren zur störsicheren Sprechererkennung | |
DE60124842T2 (de) | Rauschrobuste Mustererkennung | |
DE602004012909T2 (de) | Verfahren und Vorrichtung zur Modellierung eines Spracherkennungssystems und zur Schätzung einer Wort-Fehlerrate basierend auf einem Text | |
DE69831114T2 (de) | Integration mehrfacher Modelle für die Spracherkennung in verschiedenen Umgebungen | |
DE69318447T2 (de) | Erkennungssystem |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: PHILIPS INTELLECTUAL PROPERTY & STANDARDS GMBH, 20 Owner name: KONINKLIJKE PHILIPS ELECTRONICS N.V., EINDHOVEN, N |