DE69615667T2 - Spracherkennung - Google Patents
SpracherkennungInfo
- Publication number
- DE69615667T2 DE69615667T2 DE69615667T DE69615667T DE69615667T2 DE 69615667 T2 DE69615667 T2 DE 69615667T2 DE 69615667 T DE69615667 T DE 69615667T DE 69615667 T DE69615667 T DE 69615667T DE 69615667 T2 DE69615667 T2 DE 69615667T2
- Authority
- DE
- Germany
- Prior art keywords
- sequences
- weighting
- measures
- node
- measure
- 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 claims description 46
- 238000004364 calculation method Methods 0.000 claims description 5
- 238000011524 similarity measure Methods 0.000 claims description 5
- 230000007717 exclusion Effects 0.000 claims 3
- 230000008569 process Effects 0.000 description 37
- 238000001514 detection method Methods 0.000 description 5
- 238000011156 evaluation Methods 0.000 description 4
- 241000282326 Felis catus Species 0.000 description 3
- 238000013459 approach Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 238000003672 processing method Methods 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 206010000210 abortion Diseases 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000013138 pruning Methods 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000011144 upstream manufacturing 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/01—Assessment or evaluation of speech recognition systems
-
- 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/18—Speech classification or search using natural language modelling
- G10L15/183—Speech classification or search using natural language modelling using context dependencies, e.g. language models
- G10L15/19—Grammatical context, e.g. disambiguation of the recognition hypotheses based on word sequence rules
- G10L15/197—Probabilistic grammars, e.g. word n-grams
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Probability & Statistics with Applications (AREA)
- Artificial Intelligence (AREA)
- Machine Translation (AREA)
- Navigation (AREA)
- Fittings On The Vehicle Exterior For Carrying Loads, And Devices For Holding Or Mounting Articles (AREA)
- Telephonic Communication Services (AREA)
- Computer And Data Communications (AREA)
- Feedback Control In General (AREA)
- Selective Calling Equipment (AREA)
- Image Analysis (AREA)
- Document Processing Apparatus (AREA)
- Character Discrimination (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
- Der zu beschreibende Spracherkenner findet Anwendung in Situationen, wo ein Erkennungsprozeß eingeleitet wird zum Zwecke der Feststellung, welchem Wort (oder, allgemeiner, welcher Äußerung) aus einem Vokabular oder einer Reihe von Äußerungen ein eingegebenes Signal am meisten ähnelt, und wo Informationen bezüglich der a-priori-Wahrscheinlichkeiten verfügbar sind, die mit den Worten eines Vokabulars verbunden sind. Ein Beispiel einer solchen Situation ist das automatische Telefonauskunftssystem, beschrieben in unserer ebenfalls anhängigen internationalen Patentanmeldung Nr. WO95/02524. In diesem System
- (i) spricht der Benutzer den Namen einer Stadt;
- (ii) identifiziert ein Spracherkenner unter Bezugnahme auf gespeicherte Stadtdaten mehrere Städte mit den genauesten Übereinstimmungen zum ausgesprochenen Stadtnamen und produziert eine "Bewertung" oder eine Wahrscheinlichkeit, die die Größe der Übereinstimmung angibt;
- (iii) wird eine Liste aller in den identifizierten Städten vorkommenden Straßennamen zusammengestellt;
- (iv) spricht der Benutzer den Namen einer Straße;
- (v) identifiziert der Spracherkenner aus den Straßennamen in der Liste mehrere Straßennamen mit der größten Übereinstimmung zum ausgesprochenen Straßennamen, wieder mit "Bewertungen";
- (vi) werden die Straßenbewertungen einzeln entsprechend den Bewertungen für die Stadt, in der die Straße liegt, gewichtet, und als das wahrscheinlichste "Straßen"-Ergebnis wird das mit der am besten gewichteten Bewertung angesehen.
- Die a-priori-Wahrscheinlichkeiten müssen nicht notwendigerweise einem vorhergehenden Spracherkennungsprozess entspringen. Ein anderes Telefonauskunftssystem, auch in obiger Patentanmeldung beschrieben, verwendet z. B. Signale, die den Ursprung eines Anrufs identifizieren, für Zugang zu statistischer Information über die vom Auskunftssuchenden aus diesem Gebiet am wahrscheinlichsten gewünschten Städte, um die Ergebnisse eines Stadtnamenerkennungsprozesses zu gewichten.
- Dieser Prozess hat den Vorteil der Zuverlässigkeit. Z. B. resultiert die Beibehaltung der Städte der zweiten Wahl nicht in der Auswahl einer Straße in dieser Stadt, es sei denn, diese Straße erzielt eine deutlich bessere Bewertung im Straßennamenerkennungsschritt als die Stadt der ersten Wahl. Ein Nachteil dieses Prozesses ist jedoch, weil der Erkenner, wenn er einen Straßennamenerkennungsschritt ausführt, nur eine begrenzte Anzahl an in Frage kommenden Straßennamen produziert, die Möglichkeit besteht, daß diese Kurzliste von Straßennamen eventuell nur die Namen von Straßen enthält, die in den sehr schlecht bewerteten Städten liegen, d. h. schlecht bewertete Straßennamen in gut bewerteten Städten, sind vom Erkenner schon "abgeschnitten" worden, bevor der Gewichtungsprozess angewendet werden kann.
- Das US-Patent Nr. 4783803 beschreibt eine Vorrichtung zur Spracherkennung, in dem die a-priori-Wahrscheinlichkeiten sich auf den gegebenen Kontext von einem oder mehreren Mustern beziehen, die vorher erkannt worden sind. Eine Sprachbewertung, die die Wahrscheinlichkeit anzeigt, mit der ein bestimmtes Wort nach einem anderen bestimmten Wort auftritt, wird mit der Bewertung kombiniert, die für eine Sequenz, die diese Wörter enthält, erhalten wurde.
- Gemäß vorliegender Erfindung ist ein Verfahren zur Spracherkennung vorgesehen mit:
- - wiederholtem Vergleichen von Abschnitten einer unbekannten Äußerung mit Referenzmodellen, um für jede einzelne von einer Vielzahl von zulässigen Sequenzen von Referenzäußerungen, die von gespeicherten Daten, die solche Sequenzen definieren, definiert werden, akkumulierte Ähnlichkeitsmaße zu ermitteln, die Beiträge von vorher ermittelten Maßen umfassen, die durch Vergleichen eines oder mehrerer früherer Abschnitte der Äußerung mit einem Referenzmodell oder -modellen, die einer früheren Äußerung oder Äußerungen der jeweiligen zulässigen Sequenz entsprechen, gewonnen wurden, wobei jede Sequenz von weiterem Vergleichen ausgeschlossen wird, für die das akkumulierte Maß in einem durch ein vorher bestimmtes Abschneidkriterium festgelegten Grade in geringerem Maße die Ähnlichkeit anzeigt als die Maße für andere solche Sequenzen, und die akkumulierten Maße gewichtet werden in Übereinstimmung mit Gewichtungsfaktoren für jede der zulässigen Sequenzen, wobei die Gewichtung erfolgt durch Gewichtung jeder Berechnung eines Maßes oder eines akkumulierten Maßes für eine Teilsequenz mit kombinierten Werten der Gewichtungsfaktoren für jede der zulässigen Sequenzen, die mit dieser Teilsequenz anfangen, ohne diejenigen Gewichtungsfaktoren, die angewandt werden auf ein Maß, das hinsichtlich einer Äußerung oder kürzeren Sequenz ermittelt wurde, mit der diese Teilsequenz anfängt.
- Vorzugsweise ist jede Sequenz, für die das gewichtete akkumulierte Maß, in einem von einem Abschneidekriterium bestimmten Grad, in geringerem Maße die Ähnlichkeit anzeigt als die Maße für andere solche Sequenzen von weiterem wiederholten Vergleichen ausgeschlossen. Dieses Abschneiden kann in Abhängigkeit von der Anzahl an ermittelten und nicht von weiterem wiederholten Vergleichen ausgeschlossenen Maßen durchgeführt werden, derart, daß die Anzahl konstant gehalten wird.
- In einem anderen erfindungsgemäßen Aspekt ist eine Vorrichtung zur Spracherkennung vorgesehen mit:
- Speichermitteln (53,6), zum Speichern von Daten, die sich auf Referenzmodelle beziehen, die Äußerungen darstellen, und von Daten, die zulässige Sequenzen von Referenzmodellen festlegen;
- Vergleichsmitteln (51) zum wiederholten Vergleichen von Teilen einer unbekannten Äußerung mit Referenzmodellen, um für jede der Vielzahl der zulässigen Sequenzen von Referenzmodellen, die durch gespeicherte Daten, die solche Sequenzen definieren, festgelegt werden, akkumulierte Ähnlichkeitsmaße zu ermitteln, die Beiträge von vorher ermittelten Maßen umfassen, welche durch Vergleichen von einem oder mehreren der früheren Teile der Äußerung mit einem Referenzmodell oder -modellen in der jeweiligen zulässigen Sequenz erhalten werden; und
- Gewichtungsmittel (51), das eine Gewichtung der akkumulierten Maße in Übereinstimmung mit vorbestimmten Gewichtungsfaktoren für jede der zulässigen Sequenzen ermöglicht;
- dadurch gekennzeichnet, daß das Gewichtungsmittel eines Maßes oder eines akkumulierten Maßes für eine partielle Sequenz mit kombinierten Werten der Gewichtungsfaktoren für jede der zulässigen Sequenzen ermöglicht, die mit dieser partiellen Sequenz beginnen, modifiziert durch die kombinierten Werte der Gewichtungsfaktoren, die auf ein Maß angewendet wurden, das bezüglich einer kürzeren Sequenz ermittelt wurde, mit der diese partielle Sequenz beginnt.
- Nun sollen mithilfe von Beispielen einige erfindungsgemäße Ausführungsformen beschrieben werden, unter Bezugnahme auf die beigefügten Zeichnungen, in denen:
- Fig. 1 ein Blockdiagramm einer Vorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung darstellt;
- Fig. 2 ein illustratives Netzwerk von Hidden Markov Modellen zeigt;
- Fig. 3 den Inhalt des Markenspeichers aus Fig. 1 zeigt
- Fig. 4 die Anwendung von Gewichtungen durch die Vorrichtung aus Fig. 1 illustriert;
- Fig. 5 den Inhalt des Knotenspeichers zeigt;
- Fig. 6 ein Flußdiagramm ist, das den Betrieb von Fig. 1 illustriert;
- Fig. 7 den Inhalt des Vokabularspeichers von Fig. 1 illustriert und.
- Fig. 8 ein Gewichtungsverfahren alternativ zu dem von Fig. 4 illustriert.
- Im Grunde gibt es zwei Ansätze bei der Spracherkennung, das parallele Verfahren, in dem jede Äußerung (z. B. ein Wort) sukzessive mit Referenzschablonen oder -modellen verglichen wird, um eine oder mehrere der ähnlichsten zu identifizieren, und das Baumverfahren, in dem ein Teil einer Äußerung (z. B. ein Phonem) mit Referenzmodellen verglichen wird (wobei hier "Modelle" generisch verwendet wird), um diesen Teil zu identifizieren, der nächste Teil wird dann einem ähnlichen Pozess unterzogen.
- Nun soll eine Ausführungsform, die eine Baumstruktur verwendet, beschrieben werden.
- Der Spracherkenner von Fig. 1 hat einen Eingang 1 für Sprachsignale, die von einem Digital-zu-Analog-Konverter 2 in digitale Form umgewandelt werden. Die digitalisierten Signale kommen in einen Merkmalextraktor 3, der für jeden der aufeinanderfolgenden Rahmen von z. B. 10ms Dauer eine Anzahl von Parametern oder "Merkmalen" berechnet. Jedes der gewöhnlich verwendeten Merkmale kann gewählt werden, z. B. Melfrequenz-Kepstralkoeffizienten (MFCs) oder lineare Prädiktionskoeffizienten (LPCs).
- Die Anzahl der möglichen Merkmalwertkombinationen pro Rahmen ist recht groß, und um das folgende Verfahren zu handhabbaren Proportionen zu reduzieren, ist es üblich, Vektorquantisierung anzuwenden, nämlich die Übereinstimmung des Merkmalsatzes mit einer begrenzter. Anzahl von Standardmerkmalkombinationen (v&sub1;, v&sub2;, ... vm) zu ermitteln; dies erfolgt durch einen Vektorquantisierer 4, um eine einzelne Zahl oder "Beobachtung" Oj (für den j-ten Rahmen) zu produzieren. Dies wird dann auf einen Klassifikator 5 angewendet, der, allgemein gesagt, die Übereinstimmung der Beobachtungssequenz [Oj] mit einer Menge von Modellen ermittelt, die im Modellspeicher 6 gespeichert sind. Jedes Wort entspricht einem anderen Unterwort, z. B. einem Phonem. Der Klassifikator enthält einen Zentralprozessor 51, der von einem gespeicherten Programm in einem Programmspeicher 52, einem Knotenspeicher (53) und einem Markenspeicher (54) gesteuert wird. Der Klassifikator führt einen Klassifikationsprozess durch, wobei er Hidden-Markov-Modelle verwendet, deren Prinzipien nun beschrieben werden sollen.
- Konzeptionell ist ein Hidden Markov Modell eine "black box" mit einer Anzahl n von verschiedenen Zuständen, das in regelmäßigen Intervallen vom einem Zustand in einen anderen übergehen kann, oder alternativ im gleichen Zustand bleiben kann, in Übereinstimmung mit einem Wahrscheinlichkeitsparameter; die Wahrscheinlichkeit des Übergangs von Zustand i zu Zustand j beträgt aij, wohingegen die Wahrscheinlichkeit des Verbleibens in Zustand i aii beträgt. Daraus folgt:
- aij = 1
- Wegen der zeitlichen Ordnung von Sprachlauten wird im allgemeinen ein links-rechts-Modell verwendet, für das aij nur für O ≤ j- i ≤ 1. ungleich Null ist. In jedem bestimmten Zustand wird eine Ausgabe produziert, die eine aus einer endlichen Anzahl m von möglichen Ausgaben sein kann, z. B. v&sub1;, v&sub2;, ... vm, in Übereinstimmung mit einem zweiten Satz von Wahrscheinlichkeiten. Im vorliegenden Zusammenhang identifiziert vk einen bestimmten Satz von Sprachmerkmalen. Die Wahrscheinlichkeit, im Zustand j Ausgabe vk zu produzieren beträgt bjk. Also
- bji = 1
- Ein dritter Parameter ist die Wahrscheinlichkeit, in einem bestimmten Zustand zu starten; die Wahrscheinlichkeit, in Zustand i zu starten, ist. πi.
- Das Modell besteht also aus einem Satz von Parametern
- A = [aij](i = 1 ... n, j = 1 ... n)
- B = [bjk](j = 1 ... n, k = 1 ... n)
- π = [πi](i = 1 ... n)
- und einem Regelsatz, der auf die Parameter angewendet werden kann, um eine Ausgabesequenz zu produzieren. In Wirklichkeit existiert weder das Modell, noch wird jemals die Ausgabesequenz produziert. Vielmehr wird das Spracherkennungsproblem als die Frage formuliert "wenn eine Sequenz von v's gegeben ist, von denen jedes einen beobachteten Satz von Sprachmerkmalen darstellt, was ist dann die Wahrscheinlichkeit P, daß das Modell M, definiert durch A, B, π, diese Sequenz (die "Beobachtungssequenz") produzieren kann?".
- Wenn diese Frage für eine Anzahl verschiedener Modelle gestellt wird, von denen jedes ein anderes Phonem (z. B.) darstellt, dann wird das Phonem, das durch das Modell mit der höchsten Wahrscheinlichkeit dargestellt wird, als erkannt betrachtet.
- Angenommen die Beobachtungssequenz ist O&sub1;, O&sub2; ... OT über eine Zeit t von t = 1 bis t = T. Die Wahrscheinlichkeit αT(j) mit dieser Beobachtung Zustand j zu erreichen, wird durch die Rekursionsformeln angezeigt.
- αi(j) = πjbj(Oi) ....(1)
- αi+j(j) = αi(i)aijbj(Oi+j) ....(2)
- Die Wahrscheinlichkeit, daß die Beobachtungssequenz O von Modell M produziert wird, beträgt
- Pr(O M) = αT(j) ...(3)
- Dies ist die Wahrscheinlichkeit der Beobachtungssequenz O, unter Berücksichtigung aller möglichen Zustandssequenzen; in der Praxis wird, um die Menge der Berechungen zu reduzieren, gewöhnlich der Viterbi Algorithmus verwendet und die Wahrscheinlichkeit berechnet, die der Zustandssequenz beigemessen wird, die die höchste Wahrscheinlichkeit aufweist, die Beobachtungssequenz zu produzieren: in diesem Fall werden die Gleichungen 1 bis 3 ersetzt durch
- φi(j) = πjbj(O&sub1;) ...(4)
- φi+j(j) = [φ&sub1;(i)aij].bj(Oi+j) ...(5)
- Prr(O M) = φT(j) ...(6)
- Oder, im logarithmischen Bereich
- log φi(j) = log(πj)log(bj(Oi)) ....(7)
- logφi+j(j) = [log(φ&sub1;(i) + log(aij))] + log(bj(Oi + 1)) ....(8)
- logPrr(O M) = [log(φT(j)] ....(9)
- Der Modellspeicher 6 enthält die Werte von A, B und π für jedes Phonem in der jeweiligen Sprache (sie alle zusammen werden als das Modell M bezeichnet). Der Trainingsprozeß zur Ermittlung der Parameter ist der herkömmliche und soll nicht weiter beschrieben werden. Es sei Bezug genommen auf "Hidden Markov Models for Automatic Speech Recognition: Theory and Application", S.J. Cox, BritishTelecom Technology Journal Vol.6, Nr. 2, April 1988. Die Erkennung eines Phonems in einer bestimmten Beobachtungssequenz O erfolgt durch Berechung von Prv(O/Mi) für jedes Modell M&sub1; ... MQ (wobei Q die Anzahl der Modelle ist): das Phonem, dessen Modell das höchste Prv produziert, wird als das erkannte betrachtet.
- Natürlich müssen aus praktischen Gründen Wörter erkannt werden. Dieser Prozeß läßt sich in der Form eines Netzwerks oder einer Baumstruktur mit einer Anzahl von Knoten visualisieren. Diese Struktur existiert nur in dem Sinne, daß jeder Knoten einem entsprechenden Bereich des Speichers entspricht, wie später noch zu sehen sein wird.
- Fig. 2 zeigt ein einfaches Netzwerk, um zwischen "Yes" (Ja) und "No" (Nein) zu unterscheiden, deren phonemische Darstellung hier als {y} {eh} {s} und {n} {ow} wiedergegeben werden.
- Knoten 10 in Fig. 2 entspricht einem Geräuschmodell (im allgemeinen einem 1-Zustand Modell), genau wie Endknoten 16, wobei diese die "Stille" davor und danach darstellen. Die übrigen Knoten außer dem letzten entsprechen einem Phonem, wie beschrieben. Z. B. entspricht Knoten 11 dem Phonem {y} in "yes".
- Beim Betrieb erhält ein Knoten eine Marke mit der folgenden Information, wie in Fig. 3 gezeigt:
- - akkumulierte Bewertung von davorliegenden Knoten;
- - Identität (Adresse im Knotenspeicher) des vorherigen Knotens;
- - Identität (Adresse im Markenspeicher) der vom vorherigen Knoten empfangenen Marke, die diesen verursacht hat;
- - die Marke enthält weiterhin einen "aktiv"/"nichtaktiv"- Anzeiger, dessen Verwendung später beschrieben werden soll.
- All diese Marke werden im Markenspeicher 54 für späteren Verweis gespeichert.
- Der erste Knoten wird zur Rahmenrate mit einer leeren Marke versehen. Eine Marke, die an irgendeinem Knoten ankommt, enthält eine Bewertung, die die Wahrscheinlichkeit anzeigt (eigentlich den Logarithmus der Wahrscheinlichkeit), daß die Spracheingabe bisher den Modellen entspricht, die mit den Knoten auf dem Pfad, der zu diesem Knoten hinführt, in Verbindung stehen; so enthält eine Marke, die an Knoten 13 ankommt, eine Bewertung, die die Wahrscheinlichkeit anzeigt, daß die Sprache bislang der Äußerung {y} {eh} entspricht. Die Aufgabe des Knoten ist es, einen neuen Spracheingaberahmen mit seinem Model zu vergleichen. Dies erfolgt durch die Berechnung der Gleichungen 7 bis 9 mit den neuen Rahmen, um die Wahrscheinlichkeit Prv zu erhalten, die dann zur ankommenden Bewertung addiert wird, um eine aktualisierte Bewertung zu erhalten; dann wird eine neue Marke ausgegeben, die diese Bewertung erhält und zum nächsten Knoten weitergeleitet wird. Gewöhnlich wird die Bewertung über eine Anzahl von Rahmen gleich der Anzahl von Zuständen in seinem Modell (typischerweise 3) akkumuliert, bevor eine Marke ausgegeben wird. Danach wird in jedem Rahmen eine Marke produziert. Wenn der Knoten eine weitere Marke erhält, während er noch die erste bearbeitet, dann vergleicht er die Bewertung der weiteren Marke mit der letzten Bewertung der ersten (d. h. den aktuellen log Prv plus der ankommende Markenbewertung) und ignoriert die neue Marke oder bricht den laufenden Prozeß zugunsten der neuen Marke ab, je nachdem, ob die weitere Markenbewertung die größere oder kleinere von beiden ist.
- Im vorliegenden Beispiel laufen die Pfade nur im letzten Knoten zusammen. Wenn zusammenlaufende Pfade zugelassen werden, dann wird mit der Möglichkeit der gleichzeitigen Ankunft der beiden Marken üblicherweise so umgegangen, daß die mit der niedrigeren Bewertung ignoriert wird, obwohl die Ausbreitung von mehreren Pfaden möglich ist.
- Am Schlußknoten 16 besteht die Möglichkeit, alle zusammenlaufenden Pfade bis auf die mit der höchsten Bewertung zu streichen, aber für viele Anwendungen behält man vorzugsweise zwei oder mehr. Es ist gleichfalls vorgesehen, die Ausbreitung von Marken zu kappen, die so niedrige Bewertungen haben, daß man schätzt, daß sie keine Chance auf eine gute Bewertung am Endknoten haben; dieser "Abschneid"-Prozeß soll später beschrieben werden. Der Pfad durch das Netzwerk kann identifiziert werden, um die Phoneme der Äußerungen, die als erkannt betrachtet werden, wiederzufinden, indem die erfolgreiche Markensequenz zurück zu der/den Ausgabemarke/n verfolgt wird, wobei die Adressen der "vorherigen Marken" benutzt werden, um die Marken im Markenspeicher zu identifizieren.
- Es sollte vielleicht erwähnt werden, daß die HM-Modelle, die zusammen in die Baumstruktur eingesetzt werden, als ein einziges großes Modell angesehen werden können.
- Wie bis hierher beschrieben, ist der Erkenner, allgemein gesagt, herkömmlicher Art. Die weiteren Merkmale des Erkenners, die nun beschrieben werden sollen, haben die Aufgabe, a-priori- Wahrscheinlichkeiten nach oben im Erkennungsbaum zu "verbreitern". Man betrachte den Baum in Fig. 4, um zwischen den Wörtern "cat" ("Katze"), "cab" ("Taxi"), "cob" ("Klumpen"), "dog" ("Hund") und "den" ("Tierhöhle") zu unterscheiden. Man nehme an, daß als Ergebnis eines vorhergehenden Prozesses die a-priori- Wahrscheinlichkeit dieser vorkommenden Wörter durch die Gewichtungswerte 0,5; 0,2; 0,3; 0,1; 0,1 dargestellt werden. Dies bedeutet, daß die Bewertungen, die an den Knoten 23, 24, 26, 29, 31 zugeführt wurden, durch diese Werte gewichtet werden müssen, bevor weitere Entscheidungen getroffen werden. Jedoch werden die Gewichtungen wie folgt an jedem Knoten innerhalb des Baumes angesetzt. Die Wahrscheinlichkeit, daß das Wort "cat" oder "cab" oder "cob" lautet, wird dementsprechend durch Gewichtungen von 0,5 + 0,2 + 0,3 = 1,0 dargestellt, wohingegen der entsprechende Wert für "dog" oder "den" 0,1 + 0,1 = 0,2 ist. Folglich werden die am Knoten 21 eingegebenen Bewertungen mit dem Faktor 1,0 gewichtet und die am Knoten 27 eingegebenen mit dem Faktor 0,2. Die Werte, die zu "cat" oder "cab" auf der einen und zu "cob" auf der anderen Seite gehören, liegen jeweils bei 0,7 und 0,3; also müssen die Eingaben an Knoten 22 und 25 entsprechend gewichtet werden. Ein Faktor 1,0 ist allerdings schon an diesem Ast bei Knoten 21 angesetzt worden, so daß die Gewichtungen bei den Knoten 22 und 25 die folgenden sind:
- Gewichtung bei Knoten 22 = 0.7/1.0 = 0.7
- Gewichtung bei Knoten 25 = 0.3/1.0 = 0.3
- Ähnlich hat man bei den Knoten 23 und 24
- Gewichtung bei Knoten 23 = 0.5/1.0 · 0.7 = 5/7
- Gewichtung bei Knoten 24 = 0.2/1.0 · 0.7 = 2/7
- wohingegen an den Knoten 28 und 30 die Gewichtung
- 0.1/0.2 = 0.5
- ist.
- Natürlich ist der Baum von Fig. 4 nur eine konzeptuelle Darstellung des Prozesses. In Wirklichkeit steht für jeden Knoten ein Eintrag in den Knotenspeicher (wie in Fig. 5 gezeigt), der die folgende Information enthält:
- - die Adressen (im Modellspeicher) des Modells, das verwendet werden soll;
- - die Adresse des/der nächsten Knotens im Netzwerk;
- - ein Anzeiger, der angibt, ob der Knoten aktiv ist oder nicht;
- - ein log-Wert, der die Gewichtung in Verbindung mit diesem Knoten angibt;
- - temporärer Speicher für die Berechnungsergebnisse.
- Der Inhalt der ersten beiden Angaben wird festgelegt, wenn das Vokabular des Erkenners zusammengestellt wird. Dieser Prozeß erfolgt unter Bezugnahme auf einen Vokabularspeicher 7, der eine Liste von Wörtern enthält, die erkannt werden sollen, und für jedes davon eine Folge von Adressen, die die Sequenz von Phonemmodellen identifizieren, die dem Klang dieses Wortes entsprechen (siehe auch Fig. 7). Die Erzeugung des Knotenspeichers ist herkömmlicher Art (abgesehen von der der log-Gewichtungswerte, die unten beschrieben wird); sie schließt Einfügen in den Vokabularspeicher der Knotenadressensequenz, die jedem Wort entspricht, mit ein.
- Die CPU 51 führt den folgenden Prozeß unter Steuerung des im Programmspeicher 52 gespeicherten Programms durch, wie im Flußdiagramm in Fig. 6:
- Schaffen einer leeren Marke, die dem/den ersten Knoten zugeführt wird - d. h. Schaffen eines Eintrags in den Markenspeicher mit einer Null-(d. h. log (1))-Bewertung und einer Nullausgangsknotenadresse (das soll bedeuten, dass die Marke vom ersten Knoten verarbeitet werden soll) und die Daten des vorhergehenden Rahmens. Diese/r ersten Knoten wird dann als "aktiv" betrachtet.
- Dann, in jeder Rahmenperiode, Durchführen der folgenden Schritte:
- - Für jeden aktiven Knoten
- - falls ein HMM-Prozeß begonnen hat und während des letzten Rahmens keine Marke, die der Knoten bearbeiten muß, ermittelt wurde, Aktualisieren des HMM-Prozesses unter Verwendung der gegenwärtigen Rahmenbeobachtung O. Wenn der Prozeß n Rahmen erreicht hat (wobei n die Anzahl von Zuständen in dem speziellen HMM in Verbindung mit dem Knoten ist), Hinzufügen des im Knotenspeicher gespeicherten log-a-priori-Wahrscheinlichkeitswerts zum berechneten Wahrscheinlichkeitswert und mit dem Ergebnis Schaffen eines neuen Eintrags in den Markenspeicher (man beachte, daß der gegenwärtige Prozeß trotzdem für den nächsten Rahmen weitergehen kann);
- - wenn kein Prozeß begonnen hat und während des letzten Rahmens eine Marke, die der Knoten bearbeiten muß, ermittelt wurde (d. h. der "aktiv"-Anzeiger wurde gerade gesetzt), Starten eines neuen HMM Prozesses unter Verwendung der gegenwärtigen Rahmenbeobachtung O. Im Falle eines Einzelzustands-HMMs Schaffen eines neuen Eintrags in den Markenspeicher mit dem Ergebnis (man beachte, daß der gegenwärtige Prozeß trotzdem für den nächsten Rahmen weitergehen kann);
- - wenn ein Prozeß begonnen hat und eine Marke, die der Knoten bearbeiten muß, ermittelt wurde, Vergleichen der ankommenden und inneren Bewertungen und, je nach Ergebnis, Fortsetzen des Prozesses wie oben, entweder unverändert oder mit der ankommenden Bewertung als Eingabe zu dem ersten Zustand.
- - Für jede erzeugte Marke
- - Herausfinden der Ausgangsknotenadresse aus dem Markenspeicher;
- - Herausfinden der Adressen(n) der nächsten Knoten aus dem Knotenspeichereintrag für den Ausgangsknoten;
- - als "aktiv Kennzeichnen" solcher Knoten für den nächsten Rahmen.
- - Wenn ein neuer Eintrag in den Markenspeicher geschaffen wurde:
- - falls die damit verbundene Bewertung die Zahl einer gespeicherten "Maximalbewertung für alle Marken" übersteigt, Aktualisieren dieser Zahl;
- - wenn die damit verbundene Bewertung um mehr als eine festgelegte Abweichung (z. B. 50) unter der gespeicherten "Maximalbewertung für alle Marken" liegt, Löschen des Markenspeichereintrags (der "Abschneid"-schritt). Falls dies in irgendeinem Knoten ohne Eingabemarken und ohne Ausgabe geschieht, Deaktivieren desselben (d. h. Löschen des Knotenspeichereintrags).
- - Am Schlußknoten:
- Die Entscheidung, wann die Erkennung abgeschlossen ist und die Zurückverfolgung der Erkennungspfade stattfinden kann, basiert auf einem System von Regeln und Schwellenwerten, auf die spezifische Maßnahmen geprüft werden. Für jeden Rahmen Zurückverfolgen der besten Marke, die am Schlußknoten ankommt, um zu prüfen, wieviele Rahmen im Schlußgeräuschknoten verbraucht wurden. (Angenommen, alle Pfade im Netzwerk haben einen Geräuschknoten als Ende.) Wenn die Dauer einen Schwellenwert übersteigt und die Pfadbewertung besser ist als ein anderer Schwellenwert, Beenden der Erkennung (d. h. wir warten im Grunde, bis die Erkennungsbewertung für einen vollständigen Pfad einen ausreichenden Wert erreicht hat und bis der Pfad eine vernünftige Geräuschmenge am Ende enthält, typischerweise 20 Rahmen, d. h. 0,32 Sekunden). Dies ist die einfachste Beschreibung eines Sprachenderkennungsalgorithmus'. In der Praxis kann der Algorithmus durch zusätzliche Prüfungen der SNR des zu datierenden Signals und der Rauschenergie erweitert werden. Des weiteren gibt es eine Reihe von Zeitüberwachungen, um sicherzustellen, daß das Ende des Gesprochenen erkannt wird, im Falle, daß die obigen Prüfungen kontinuierlich scheitern.
- Für die Marke mit der höchsten Bewertung oder für jede derer mit den höchsten Bewertungen aus Nout, wobei Nout die Anzahl der gewünschten Ausgabeauswahlmöglichkeiten ist:
- (a) Auslesen der vorherigen Knotenadresse von der Marke und daher den damit verbundenen Modellindentifizierer;
- -(b) Auslesen des vorherigen Markenspeichereintrags
- -(c) Wiederholen von (a) und (b), bis alle Modelle indentifiziert wurden.
- Nun sind die erkannten Wörter mit den verbundenen Bewertungen verfügbar.
- Die obige Beschreibung ist die des Erkennungsprozesses: bevor ein solcher Prozeß beginnen kann, müssen die log-a-priori- Wahrscheinlichkeiten in den Knotenspeicher eingegeben werden. Man nehme an, daß ein vorhergehender Erkennungsprozeß a-priori- Wahrscheinlichkeiten des Formats in Fig. 7 geschaffen hat, wo jeder aus einer Anzahl von Stadtnamen (z. B.) eine Wahrscheinlichkeit zugeordnet wurde. Die CPU 52 führt den folgenden Startprozeß aus, um die a-priori-Wahrscheinlichkeitswerte eines Knotens zu ermitteln.
- Zuerst müssen die Worte in Knotensequenzen übersetzt werden, unter Bezugnahme auf den Vokabularspeicher 7, so daß für jeden möglichen Pfad durch den Erkennungsbaum die Gesamtsumme der log-a-priori-Werte für jeden Knoten darauf bekannt ist. Dann müssen die individuellen Werte, wie in der Illustration in Fig. 4, für jeden Knoten wie folgt berechnet werden:
- (a) Zuordnen von bestimmten Wahrscheinlichkeitswerten zu den den jeweiligen Wörtern entsprechenden Endknoten;
- (b) Vorgehen von rechts nach links (wie in Fig. 4 dargestellt), Zuordnen eines Wahrscheinlichkeitswertes zu jedem Knoten, der die Summe derer ist, die den nachfolgenden Knoten zugeordnet werden (der in Fig. 4 dem ersten Knoten zugeordnete Wert wird mit 1 angenommen);
- (c) Vorgehen von links nach rechts, Teilen des Wahrscheinlichkeitswertes für jeden Knoten durch den dem vorherigen Knoten zugeordneten Wert;
- (d) Log-Nehmen von allen Werten.
- In der Praxis ist es eine rechnerisch weniger aufwendige Technik, die ganze Zeit mit log-Werten zu arbeiten und das Maximum anstelle der Summe zu nehmen. Daher (wie in Fig. 8 gezeigt):
- (a) Zuordnen der gegebenen log-Wahrscheinlichkeitswerte zu den Endknoten, die den jeweiligen Wörtern entsprechen;
- (b) Zuordnen eines gegebenen log-Wahrscheinlichkeitswerts zu jedem Knoten, der das Maximum dessen ist, das den nachfolgenden Knoten zugeordnet wird (Zuordnen von 0 zum ersten Knoten);
- (c) Subtrahieren des dem vorherigen Knoten zugeordneten Wertes vom Wert für jeden Knoten.
- Die Berechungen an Kanten ohne Verzweigungen (angezeigt in eckigen Klammern) müssen natürlich nicht durchgeführt werden.
- In der obigen Beschreibung ist das Hauptkriterium, daß die Marken gelöscht werden, wenn sie eine Bewertung bringen, die unterhalb eines Schwellenwertes fällt, nämlich eines proportionalen Teils der Bewertung des "besten Pfades" zu jeder Zeit. Da log- Wahrschinlichkeiten verwendet werden, erfolgt der Vergleich tatsächlich zwischen der log-Bewertung und der besten log-Bewertung minus einem festen Abweichwert, der so festgelegt wird, daß er die beste Durchschnittsleistung ergibt.
- Der zu verwendende optimale Abschneidwert wird jedoch in der Praxis von der tatsächlich gesprochenen Äußerung abhängen. In einer Modifizierung wird daher das Abschneiden als eine Funktion der laufenden Berechnungsmenge des Erkenners angepasst. Es kann z. B. in Abhängigkeit von der Anzahl der aktiven Knoten angepasst werden. Damit
- 1. wird, wenn nur ein paar Knoten aktiv sind, der Abschneidschwellenwert gelockert - mehr Knoten bleiben aktiv, was zu einer potentiell größeren Genauigkeit führt.
- 2. wird, wenn viele Knoten aktiviert sind, der Abschneidschwellenwert verschärft, was zu einer Reduktion in der Menge der Berechnungen führt.
- Eine mögliche Implementierung davon ist, den Schwellenwert so anzupassen, daß die Anzahl an aktiven Knoten im wesentlichen konstant bleibt. Somit wird für jeden Zeitrahmen die Anzahl an aktiven Knoten na mit einem angestrebten Ziel nt (z. B. 1300) verglichen.
- Der Wert der Schwellenwertabweichung MT darf von einem Ausgangswert MO (z.B 100) zwischen einem Niedrigstwert Mmin (z. B. 75) und einem Höchstwert Mmax(z. B. 150) um einen Schrittwert MS (z. B. 2) variieren. Die folgenden Schritte finden für jeden Zeitrahmen statt.
- (1) Wenn na > nt und MT > Mmin dann M = M - MS
- (2) Wenn na < nt und MT < Mmax dann M = M + MS
- Andere Kriterien können allerdings angewendet werden, z. B. könnte die Entscheidung auf der Anzahl von aktiven Modellzuständen basieren oder (besonders in Erkennern mit sehr großen Wortschätzen) auf der Anzahl der aktiven Wörter.
- Diese dynamische Schwellenwertanpassung kann auch in Systemen angewendet werden, die keine a-priori-Gewichtungen verwenden.
- Der oben beschriebene Erkenner ist einer, der auf eine endliche Zahl M möglicher Beobachtungen, die in einem bestimmten Zustand ermittelt werden, beschränkt ist. Falls gewünscht, kann jedoch die Wahrscheinlichkeit bjk durch eine kontinuierliche Wahrscheinlichkeitsdichte bj(O) ersetzt werden, die für jedwede Beobachtung O einen Wert hat. Wie bekannt, kann eine allgemeine kontinuierliche Wahrscheinlichkeitsdichte erfolgreich angenähert werden durch eine gewichtete Summe (oder Mischung) einer diskreten Anzahl kontinuierlicher Funktionen beschränkterer Form - gewöhnlich eine Gaussverteilung. Damit ist die Wahrscheinlichkeitsdichtefunktion:
- bj(O) = cjxN[O,ujx,Ujx] ...(10)
- wobei X die Anzahl der Komponenten (oder "Modi") in der Mischung ist, cjx ist das Gewicht des Modus x in Zustand j und N[O, ujx, Ujx] ist die Wahrscheinlichkeit, den Vektor O aus einer mehrdimensionalen Normalverteilung mit Mittelvektor ujx und Kovarianzmatrix Ujx zu erzeugen.
- Für eine Gaussverteilung:
- wobei d die Größe des Vektors ist. Wenn U eine diagonale Matrix mit Elementen si ist, reduziert sich dies auf
- wobei ni die Elemente von O sind.
- Der Erkennungsprozeß der Gleichungen 1 bis 9 bleibt unverändert; nur die Definition von b ist anders: Trainingsprozesse für solche kontinuierlichen Dichtemodelle sind bekannt und sollen hier daher nicht beschrieben werden.
- Die parallele Verarbeitungsmethode ist einfacher als die Baumverarbeitungsmethode, die bisher beschrieben wurde. Ein typischer solcher Prozeß, der Abschneiden beinhaltet, schließt die Aufrechterhaltung einer laufenden Liste der obersten (z. B.) sechs "besten Kandidaten" ein, während die Modelle geprüft werden. Zum Beispiel:
- (a) Vergleichen des unbekannten Worts mit den ersten sechs Modellen und Ermitteln einer Liste dieser Modelle, wobei für jedes die Ähnlichkeitsbewertung aufgezeichnet wird;
- (b) Vergleichen des unbekannten Worts mit einem weiteren Modell. Wenn die erhaltene Bewertung höher ist - d. h. in größerem Maße eine Ähnlichkeit anzeigt - als jeder in der Liste, Ersetzen des, Eintrags mit der niedrigsten Bewertung in der Liste durch das neue Modell und Bewertung;
- (c) Wiederholen des Schritts (b), bis alle Modelle bearbeitet wurden. Dieser Prozeß führt zu einer Liste mit den sechs Modellen mit den höchsten Bewertungen. Wenn vor der Auswahl des "besten Kandidaten" a-priori-Wahrscheinlichkeiten angewendet werden sollen, wird jede der sechs Bewertungen mit dem zugehörigen Gewichtungsfaktor multipliziert, und das Modell mit dem besten Ergebnis wird dann ausgewählt.
- In der vorgeschlagenen Methode wird die Gewichtung während des Erkennungsprozesses selbst angewendet; nämlich
- (a) Vergleichen des unbekannten Worts mit den ersten sechs Modellen, wodurch für jedes ein Ähnlichkeitsergebnis ermittelt wird. Multiplizieren des Ergebnisses mit dem Gewichtungsfaktor für das entpsrechende Modell. Erstellen einer Liste dieser Modelle, wobei das gewichtete Ergebnis für jedes aufgezeichnet wird;
- (b) Vergleichen des unbekanten Worts mit einem weiteren Modell. Multiplizieren des Ergebnisses mit dem Gewichtungsfaktor für dieses Modell. Wenn das erhaltene gewichtete Ergebnishöher ist als jedes in der Liste, Ersetzen des Eintrags in der Liste mit dem am niedrigsten gewichteten Ergebnis durch das neue Modell;
- (c) Wiederholen von Schritt (b), bis alle Modelle bearbeitet wurden.
Claims (6)
1. Verfahren zur Spracherkennung mit folgenden Schritten:
Vergleichen eines Teils einer unbekannten Äußerung mit
Referenzmodellen, um ein Ähnlichkeitsmaß zu ermitteln;
wiederholtes Vergleichen weiterer Teile der unbekannten
Äußerung mit Referenzmodellen, um für jede der Vielzahl der
zulässigen Sequenzen von Referenzmodellen, die durch
gespeicherte Daten zur Definition solcher Sequenzen festgelegt werden,
akkumulierte Ähnlichkeitsmaße zu ermitteln, die Beiträge von
vorher ermittelten Maßen umfassen, welche durch Vergleichen von
einem oder mehreren der früheren Teile der Äußerung mit einem
Referenzmodell oder -modellen in der jeweiligen zulässigen
Sequenz erhalten werden; und
Gewichten der akkumulierten Maße in Übereinstimmung mit
vorbestimmten Gewichtungsfaktoren, die eine
Ä-Priori-Wahrscheinlichkeit für jede der zulässigen Sequenzen darstellen;
dadurch gekennzeichnet, daß
der Gewichtungsschritt durch Gewichten jeder Berechnung eines
Maßes oder akkumulierten Maßes für eine partielle Sequenz mit
kombinierten Werten der Gewichtungsfaktoren für jede der
zulässigen Sequenzen erfolgt, die mit dieser partiellen Sequenz
beginnen, modifiziert durch die kombinierten Werte der
Gewichtungsfktoren, die auf ein Maß angewendet wurden, das
bezüglich einer kürzeren Sequenz ermittelt wurde, mit der diese
partielle Sequenz beginnt.
2. Verfahren nach Anspruch 1, das weiterhin den Schritt des
Ausschlieißens der Sequenzen vom weiteren wiederholten Vergleich
aufweist, für die das gewichtete akkumulierte Maß zu einem
durch ein Abschneidkriterium bestimmten Grad eine Ähnlichkeit
in geringerem Maß anzeigt als die Maße für andere solche
Sequenzen.
3. Verfahren nach Anspruch 2, wobei der Ausschlußschritt einen
Unterschritt aufweist, bei dem das Abschneidkriterium in
Abhängigkeit von der Anzahl der erzeugten und nicht vom weiteren
wiederholten Vergleich ausgeschlossenen Maße wiederholt
angepaßt wird, derart, daß diese Anzahl konstant gehalten wird.
4. Spracherkennungsvorrichtung mit:
Speichermitteln (53, 6)zum Speichern von Daten, die sich auf
Referenzmodelle beziehen, welche Äußerungen darstellen, und
von Daten, die zulässige Sequenzen von Referenzmodellen
festlegen;
Vergleichsmitteln (51) zum wiederholten Vergleichen von
Teilen einer unbekannten Äußerung mit Referenzmodellen, um für
jede der Vielzahl der zulässigen Sequenzen von
Referenzmodellen, die durch gespeicherte Daten, die solche Sequenzen
definieren, festgelegt werden, akkumulierte Ähnlichkeitsmaße zu
ermitteln, die Beiträge von vorher ermittelten Maßen umfassen,
welche durch Vergleichen von einem oder mehreren der früheren
Teile der Äußerung mit einem Referenzmodell oder -modellen in
der jeweiligen zulässigen Sequenz erhalten werden; und
Gewichtungsmittel (51), das eine Gewichtung der
akkumulierten Maße in Übereinstimmung mit vorbestimmten
Gewichtungsfaktoren ermöglicht, die eine -Priori-Wahrscheinlichkeit für jede
der zulässigen Sequenzen darstellen,
dadurch gekennzeichnet, daß
das Gewichtungsmittel die Gewichtung eines Maßes oder eines
akkumulierten Maßes für eine partielle Sequenz mit
kombinierten Werten der Gewichtungsfaktoren für jede der zulässigen
Sequenzen ermöglicht, die mit dieser partiellen Sequenz beginnen,
modifiziert durch die kombinierten Werte der
Gewichtungsfaktoren, die auf ein Maß angewendet wurden, das bezüglich einer
kürzeren Sequenz ermittelt wurde, mit der diese partielle
Sequenz beginnt.
5. Vorrichtung nach Anspruch 4, die weiterhin Ausschlußmittel
(51) zum Ausschließen der Sequenzen vom weiteren
wiederholten Vergleich aufweist, für die das gewichtete akkumulierte Maß
zu einem durch ein vorbestimmtes Abschneidkriterium
bestimmten Grad eine Ähnlichkeit in geringerem Maß anzeigt als die
Maße für andere solche Sequenzen.
6. Verfahren nach Anspruch 5, wobei das Ausschlußmittel
angeordnet ist, um in Abhängigkeit von der Anzahl der erzeugten und
nicht vom weiteren wiederholten Vergleich ausgeschlossenen
Maße das Abschneidkriterium wiederholt anzupassen, derart,
daß diese Anzahl konstant gehalten wird.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP95301477 | 1995-03-07 | ||
PCT/GB1996/000531 WO1996027872A1 (en) | 1995-03-07 | 1996-03-07 | Speech recognition |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69615667D1 DE69615667D1 (de) | 2001-11-08 |
DE69615667T2 true DE69615667T2 (de) | 2002-06-20 |
Family
ID=8221113
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69615667T Expired - Lifetime DE69615667T2 (de) | 1995-03-07 | 1996-03-07 | Spracherkennung |
Country Status (13)
Country | Link |
---|---|
US (1) | US5999902A (de) |
EP (1) | EP0813735B1 (de) |
JP (1) | JP4180110B2 (de) |
KR (1) | KR100406604B1 (de) |
CN (1) | CN1150515C (de) |
AU (1) | AU702903B2 (de) |
CA (1) | CA2211636C (de) |
DE (1) | DE69615667T2 (de) |
ES (1) | ES2164870T3 (de) |
MX (1) | MX9706407A (de) |
NO (1) | NO974097L (de) |
NZ (1) | NZ302748A (de) |
WO (1) | WO1996027872A1 (de) |
Families Citing this family (66)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3061114B2 (ja) * | 1996-11-25 | 2000-07-10 | 日本電気株式会社 | 音声認識装置 |
GB9723214D0 (en) | 1997-11-03 | 1998-01-07 | British Telecomm | Pattern recognition |
US6411929B1 (en) * | 1997-11-27 | 2002-06-25 | Hitachi, Ltd. | Speech recognition method and system |
US7937260B1 (en) * | 1998-06-15 | 2011-05-03 | At&T Intellectual Property Ii, L.P. | Concise dynamic grammars using N-best selection |
US6574596B2 (en) * | 1999-02-08 | 2003-06-03 | Qualcomm Incorporated | Voice recognition rejection scheme |
EP1159688A2 (de) | 1999-03-05 | 2001-12-05 | Canon Kabushiki Kaisha | Aufzeichnung einer datenbank und wiederauffinden der aufzeichnungen |
US20050149462A1 (en) * | 1999-10-14 | 2005-07-07 | The Salk Institute For Biological Studies | System and method of separating signals |
US6424960B1 (en) * | 1999-10-14 | 2002-07-23 | The Salk Institute For Biological Studies | Unsupervised adaptation and classification of multiple classes and sources in blind signal separation |
US7310600B1 (en) | 1999-10-28 | 2007-12-18 | Canon Kabushiki Kaisha | Language recognition using a similarity measure |
DE60036486T2 (de) * | 1999-10-28 | 2008-06-12 | Canon K.K. | Methode und apparat zum prüfen von musterübereinstimmungen |
US6882970B1 (en) | 1999-10-28 | 2005-04-19 | Canon Kabushiki Kaisha | Language recognition using sequence frequency |
WO2001048737A2 (en) * | 1999-12-23 | 2001-07-05 | Intel Corporation | Speech recognizer with a lexical tree based n-gram language model |
US6920421B2 (en) * | 1999-12-28 | 2005-07-19 | Sony Corporation | Model adaptive apparatus for performing adaptation of a model used in pattern recognition considering recentness of a received pattern data |
GB0011798D0 (en) * | 2000-05-16 | 2000-07-05 | Canon Kk | Database annotation and retrieval |
GB0015233D0 (en) | 2000-06-21 | 2000-08-16 | Canon Kk | Indexing method and apparatus |
GB0023930D0 (en) | 2000-09-29 | 2000-11-15 | Canon Kk | Database annotation and retrieval |
GB0027178D0 (en) | 2000-11-07 | 2000-12-27 | Canon Kk | Speech processing system |
GB0028277D0 (en) * | 2000-11-20 | 2001-01-03 | Canon Kk | Speech processing system |
DE60222413T2 (de) * | 2001-04-19 | 2008-06-12 | British Telecommunications P.L.C. | Spracherkennung |
US20040120472A1 (en) * | 2001-04-19 | 2004-06-24 | Popay Paul I | Voice response system |
US20030018451A1 (en) * | 2001-07-16 | 2003-01-23 | Level 3 Communications, Inc. | System, method and computer program product for rating enterprise metrics |
JP2003108187A (ja) * | 2001-09-28 | 2003-04-11 | Fujitsu Ltd | 類似性評価方法及び類似性評価プログラム |
KR100450396B1 (ko) * | 2001-10-22 | 2004-09-30 | 한국전자통신연구원 | 트리탐색기반 음성 인식 방법 및 이를 이용한 대용량 연속음성 인식 시스템 |
US7356466B2 (en) * | 2002-06-28 | 2008-04-08 | Samsung Electronics Co., Ltd. | Method and apparatus for performing observation probability calculations |
EP1387232A1 (de) * | 2002-07-29 | 2004-02-04 | Centre National De La Recherche Scientifique | Verfahren zur Bestimmung von Zuordnungswerten in verschiedenen Parametern eines Systemes |
US7228275B1 (en) * | 2002-10-21 | 2007-06-05 | Toyota Infotechnology Center Co., Ltd. | Speech recognition system having multiple speech recognizers |
US7805299B2 (en) * | 2004-03-01 | 2010-09-28 | Coifman Robert E | Method and apparatus for improving the transcription accuracy of speech recognition software |
US7852993B2 (en) * | 2003-08-11 | 2010-12-14 | Microsoft Corporation | Speech recognition enhanced caller identification |
US7899671B2 (en) * | 2004-02-05 | 2011-03-01 | Avaya, Inc. | Recognition results postprocessor for use in voice recognition systems |
US7869588B2 (en) * | 2004-05-03 | 2011-01-11 | Somatek | System and method for providing particularized audible alerts |
US9117460B2 (en) * | 2004-05-12 | 2015-08-25 | Core Wireless Licensing S.A.R.L. | Detection of end of utterance in speech recognition system |
US20060200350A1 (en) * | 2004-12-22 | 2006-09-07 | David Attwater | Multi dimensional confidence |
US7865362B2 (en) | 2005-02-04 | 2011-01-04 | Vocollect, Inc. | Method and system for considering information about an expected response when performing speech recognition |
US8200495B2 (en) * | 2005-02-04 | 2012-06-12 | Vocollect, Inc. | Methods and systems for considering information about an expected response when performing speech recognition |
WO2007019307A2 (en) | 2005-08-03 | 2007-02-15 | Somatic Technologies, Inc. | Somatic, auditory and cochlear communication system and method |
KR100748720B1 (ko) * | 2006-02-09 | 2007-08-13 | 삼성전자주식회사 | 다중 계층 중심 어휘 목록에 기초하여 대규모 단어 음성인식 방법 및 그 장치 |
WO2007142102A1 (ja) * | 2006-05-31 | 2007-12-13 | Nec Corporation | 言語モデル学習システム、言語モデル学習方法、および言語モデル学習用プログラム |
US7899251B2 (en) * | 2006-06-05 | 2011-03-01 | Microsoft Corporation | Balancing out-of-dictionary and in-dictionary recognition scores |
CN101105894B (zh) * | 2006-07-12 | 2011-08-10 | 陈修志 | 多功能语言学习机 |
KR100925479B1 (ko) * | 2007-09-19 | 2009-11-06 | 한국전자통신연구원 | 음성 인식 방법 및 장치 |
GB2453366B (en) * | 2007-10-04 | 2011-04-06 | Toshiba Res Europ Ltd | Automatic speech recognition method and apparatus |
US7437291B1 (en) * | 2007-12-13 | 2008-10-14 | International Business Machines Corporation | Using partial information to improve dialog in automatic speech recognition systems |
US20090198490A1 (en) * | 2008-02-06 | 2009-08-06 | International Business Machines Corporation | Response time when using a dual factor end of utterance determination technique |
US20090307003A1 (en) * | 2008-05-16 | 2009-12-10 | Daniel Benyamin | Social advertisement network |
US8086631B2 (en) * | 2008-12-12 | 2011-12-27 | Microsoft Corporation | Search result diversification |
KR101217525B1 (ko) | 2008-12-22 | 2013-01-18 | 한국전자통신연구원 | 비터비 디코더와 이를 이용한 음성 인식 방법 |
FI20086260L (fi) * | 2008-12-31 | 2010-09-02 | Teknillinen Korkeakoulu | Menetelmä hahmon löytämiseksi ja tunnistamiseksi |
US8442829B2 (en) * | 2009-02-17 | 2013-05-14 | Sony Computer Entertainment Inc. | Automatic computation streaming partition for voice recognition on multiple processors with limited memory |
US8504550B2 (en) * | 2009-05-15 | 2013-08-06 | Citizennet Inc. | Social network message categorization systems and methods |
US8306191B2 (en) * | 2009-06-12 | 2012-11-06 | Avaya Inc. | Caller recognition by voice messaging system |
US8380697B2 (en) * | 2009-10-21 | 2013-02-19 | Citizennet Inc. | Search and retrieval methods and systems of short messages utilizing messaging context and keyword frequency |
US8554854B2 (en) * | 2009-12-11 | 2013-10-08 | Citizennet Inc. | Systems and methods for identifying terms relevant to web pages using social network messages |
US8612293B2 (en) | 2010-10-19 | 2013-12-17 | Citizennet Inc. | Generation of advertising targeting information based upon affinity information obtained from an online social network |
US8615434B2 (en) | 2010-10-19 | 2013-12-24 | Citizennet Inc. | Systems and methods for automatically generating campaigns using advertising targeting information based upon affinity information obtained from an online social network |
US9063927B2 (en) | 2011-04-06 | 2015-06-23 | Citizennet Inc. | Short message age classification |
US9002892B2 (en) | 2011-08-07 | 2015-04-07 | CitizenNet, Inc. | Systems and methods for trend detection using frequency analysis |
US9053497B2 (en) | 2012-04-27 | 2015-06-09 | CitizenNet, Inc. | Systems and methods for targeting advertising to groups with strong ties within an online social network |
CN103544952A (zh) * | 2012-07-12 | 2014-01-29 | 百度在线网络技术(北京)有限公司 | 语音自适应方法、装置及系统 |
US10055767B2 (en) * | 2015-05-13 | 2018-08-21 | Google Llc | Speech recognition for keywords |
CN105356935B (zh) * | 2015-11-27 | 2017-10-31 | 天津光电通信技术有限公司 | 一种实现同步数字体系高阶交叉的交叉板及实现方法 |
JP6618884B2 (ja) * | 2016-11-17 | 2019-12-11 | 株式会社東芝 | 認識装置、認識方法およびプログラム |
US10565320B1 (en) | 2018-09-28 | 2020-02-18 | International Business Machines Corporation | Dynamic multilingual speech recognition |
RU2744063C1 (ru) | 2018-12-18 | 2021-03-02 | Общество С Ограниченной Ответственностью "Яндекс" | Способ и система определения говорящего пользователя управляемого голосом устройства |
KR20220010259A (ko) * | 2020-07-17 | 2022-01-25 | 삼성전자주식회사 | 음성 신호 처리 방법 및 장치 |
CN112786007B (zh) * | 2021-01-20 | 2024-01-26 | 北京有竹居网络技术有限公司 | 语音合成方法、装置、可读介质及电子设备 |
CN117166996B (zh) * | 2023-07-27 | 2024-03-22 | 中国地质大学(北京) | 地质参数门槛值的确定方法、装置、设备及存储介质 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4860358A (en) * | 1983-09-12 | 1989-08-22 | American Telephone And Telegraph Company, At&T Bell Laboratories | Speech recognition arrangement with preselection |
US4783803A (en) * | 1985-11-12 | 1988-11-08 | Dragon Systems, Inc. | Speech recognition apparatus and method |
US5202952A (en) * | 1990-06-22 | 1993-04-13 | Dragon Systems, Inc. | Large-vocabulary continuous speech prefiltering and processing system |
JP2974387B2 (ja) * | 1990-09-05 | 1999-11-10 | 日本電信電話株式会社 | ワードスポッティング音声認識方法 |
KR920013250A (ko) * | 1990-12-28 | 1992-07-28 | 이헌조 | 음성인식 시스템의 변별적 특성을 이용한 숫자음 인식방법 |
US5267345A (en) * | 1992-02-10 | 1993-11-30 | International Business Machines Corporation | Speech recognition apparatus which predicts word classes from context and words from word classes |
JPH06175685A (ja) * | 1992-12-09 | 1994-06-24 | Matsushita Electric Ind Co Ltd | パタン認識装置及びヒドゥンマルコフモデル作成装置 |
US5699456A (en) * | 1994-01-21 | 1997-12-16 | Lucent Technologies Inc. | Large vocabulary connected speech recognition system and method of language representation using evolutional grammar to represent context free grammars |
JP2775140B2 (ja) * | 1994-03-18 | 1998-07-16 | 株式会社エイ・ティ・アール人間情報通信研究所 | パターン認識方法、音声認識方法および音声認識装置 |
-
1996
- 1996-03-07 CN CNB961923768A patent/CN1150515C/zh not_active Expired - Fee Related
- 1996-03-07 US US08/875,070 patent/US5999902A/en not_active Expired - Lifetime
- 1996-03-07 AU AU48876/96A patent/AU702903B2/en not_active Ceased
- 1996-03-07 DE DE69615667T patent/DE69615667T2/de not_active Expired - Lifetime
- 1996-03-07 EP EP96904973A patent/EP0813735B1/de not_active Expired - Lifetime
- 1996-03-07 MX MX9706407A patent/MX9706407A/es not_active Application Discontinuation
- 1996-03-07 WO PCT/GB1996/000531 patent/WO1996027872A1/en active IP Right Grant
- 1996-03-07 JP JP52671596A patent/JP4180110B2/ja not_active Expired - Lifetime
- 1996-03-07 KR KR1019970706130A patent/KR100406604B1/ko not_active IP Right Cessation
- 1996-03-07 ES ES96904973T patent/ES2164870T3/es not_active Expired - Lifetime
- 1996-03-07 NZ NZ302748A patent/NZ302748A/en unknown
- 1996-03-07 CA CA002211636A patent/CA2211636C/en not_active Expired - Fee Related
-
1997
- 1997-09-05 NO NO974097A patent/NO974097L/no unknown
Also Published As
Publication number | Publication date |
---|---|
NO974097L (no) | 1997-09-08 |
EP0813735B1 (de) | 2001-10-04 |
CA2211636C (en) | 2002-01-22 |
NO974097D0 (no) | 1997-09-05 |
MX9706407A (es) | 1997-11-29 |
WO1996027872A1 (en) | 1996-09-12 |
AU4887696A (en) | 1996-09-23 |
EP0813735A1 (de) | 1997-12-29 |
KR100406604B1 (ko) | 2004-02-18 |
DE69615667D1 (de) | 2001-11-08 |
NZ302748A (en) | 1999-04-29 |
CA2211636A1 (en) | 1996-09-12 |
ES2164870T3 (es) | 2002-03-01 |
US5999902A (en) | 1999-12-07 |
JP4180110B2 (ja) | 2008-11-12 |
CN1150515C (zh) | 2004-05-19 |
JPH11501410A (ja) | 1999-02-02 |
AU702903B2 (en) | 1999-03-11 |
KR19980702723A (ko) | 1998-08-05 |
CN1178023A (zh) | 1998-04-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69615667T2 (de) | Spracherkennung | |
DE69725802T2 (de) | Vorfilterung mittels lexikalischer Bäumen für die Spracherkennung | |
DE69726235T2 (de) | Verfahren und Vorrichtung zur Spracherkennung | |
DE69705830T2 (de) | Sprachverarbeitung | |
DE69226796T2 (de) | Zeitliche Dekorrelationsverfahren zur störsicheren Sprechererkennung | |
DE69010941T2 (de) | Verfahren und Einrichtung zur automatischen Bestimmung von phonologischen Regeln für ein System zur Erkennung kontinuierlicher Sprache. | |
DE69726526T2 (de) | Schema und Modelladaption bei Mustererkennung welche auf Taylorausdehnung basiert | |
DE69414752T2 (de) | Sprecherunabhängiges Erkennungssystem für isolierte Wörter unter Verwendung eines neuronalen Netzes | |
DE69818231T2 (de) | Verfahren zum diskriminativen training von spracherkennungsmodellen | |
DE69938374T2 (de) | Verfahren und Vorrichtung zur Spracherkennung mittels sowohl eines neuralen Netzwerks als auch verborgener Markov-Modelle | |
DE69225173T2 (de) | Spracherkennungsgerät | |
DE69514382T2 (de) | Spracherkennung | |
DE69524036T2 (de) | Vorrichtung zur erkennung von gesprächsthemen | |
DE69629763T2 (de) | Verfahren und Vorrichtung zur Ermittlung von Triphone Hidden Markov Modellen (HMM) | |
DE69827988T2 (de) | Sprachmodelle für die Spracherkennung | |
DE60302407T2 (de) | Umgebungs- und sprecheradaptierte Spracherkennung | |
DE69908254T2 (de) | System zur Suchoptimierung und Verfahren zur kontinuierlichen Spracherkennung | |
DE60115738T2 (de) | Sprachmodelle für die Spracherkennung | |
DE69519297T2 (de) | Verfahren und vorrichtung zur spracherkennung mittels optimierter partieller buendelung von wahrscheinlichkeitsmischungen | |
DE69129015T2 (de) | Sprecherunabhängiges Gerät zur Markierungskodierung | |
DE602004012909T2 (de) | Verfahren und Vorrichtung zur Modellierung eines Spracherkennungssystems und zur Schätzung einer Wort-Fehlerrate basierend auf einem Text | |
DE69607913T2 (de) | Verfahren und vorrichtung zur spracherkennung auf der basis neuer wortmodelle | |
DE69519453T2 (de) | Spracherkennung mit Sprecheradaptierung mittels Berechnung von Mittelwerten akustischer Kategorien | |
EP0925579A1 (de) | Verfahren zur anpassung eines hidden-markov-lautmodelles in einem spracherkennungssystem | |
DE20004416U1 (de) | Spracherkennungsvorrichtung unter Verwendung mehrerer Merkmalsströme |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition |