[go: up one dir, main page]

DE60125542T2 - System und verfahren zur spracherkennung mit einer vielzahl von spracherkennungsvorrichtungen - Google Patents

System und verfahren zur spracherkennung mit einer vielzahl von spracherkennungsvorrichtungen Download PDF

Info

Publication number
DE60125542T2
DE60125542T2 DE60125542T DE60125542T DE60125542T2 DE 60125542 T2 DE60125542 T2 DE 60125542T2 DE 60125542 T DE60125542 T DE 60125542T DE 60125542 T DE60125542 T DE 60125542T DE 60125542 T2 DE60125542 T2 DE 60125542T2
Authority
DE
Germany
Prior art keywords
speech recognition
hypothesis
speaker
recognition element
dtw
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
Application number
DE60125542T
Other languages
English (en)
Other versions
DE60125542D1 (de
Inventor
Harinath San Diego GARUDADRI
Puig David San Diego OSES
Ning San Diego BI
Yingyong San Diego Qi
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Application granted granted Critical
Publication of DE60125542D1 publication Critical patent/DE60125542D1/de
Publication of DE60125542T2 publication Critical patent/DE60125542T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • G10L15/32Multiple recognisers used in sequence or in parallel; Score combination systems therefor, e.g. voting systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Acoustics & Sound (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Multimedia (AREA)
  • Telephonic Communication Services (AREA)
  • Selective Calling Equipment (AREA)
  • Circuit For Audible Band Transducer (AREA)
  • Machine Translation (AREA)
  • Fittings On The Vehicle Exterior For Carrying Loads, And Devices For Holding Or Mounting Articles (AREA)

Description

  • Hintergrund der Erfindung
  • I. Gebiet der Erfindung
  • Die vorliegende Erfindung bezieht sich im Allgemeinen auf das Gebiet von Kommunikationen und im Speziellen auf ein neues und verbessertes System und Verfahren für die Spracherkennung.
  • II. Beschreibung der verwandten Technik
  • Spracherkennung (VR = voice recognition) stellt eine der wichtigsten Techniken dar, um eine Maschine mit simulierter Intelligenz auszustatten um Benutzer oder benutzer-gesprochene Befehle zu erkennen und das Mensch-Maschine-Interface zu vereinfachen. VR stellt ebenso eine Schlüsseltechnik für menschliches Sprachverstehen dar. System, die Techniken anwenden, um eine gesprochene Nachricht aus einem akustischen Sprachsignal aufzudecken, werden Spracherkenner genannt. Der Ausdruck „Spracherkenner" wird hierin benutzt um im Allgemeinen jedes sprachbenutzer-interface-fähiges Gerät zu bedeuten. Ein Spracherkenner weißt typischerweise einen Akustikprozessor, einen Merkmals-Extrahierer und einen Wort-Decodierer auf. Der Akustikprozessor extrahiert eine Sequenz von Informationen, die Merkmale oder Vektoren tragen, die notwendig sind, um VR der eingehenden unbearbeiteten Sprache zu erreichen. Der Wort-Decodierer decodiert die Sequenz von Merkmalen oder Vektoren, um ein bedeutungsvolles und gewünschtes Ausgabeformat wie zum Beispiel eine Sequenz von gesprochenen Wörtern entsprechend der Eingabeäußerung zu ergeben.
  • Der Akustik-Prozessor stellt ein Front-End-Sprach-Analyse-Untersystem in einem Spracherkenner dar, ansprechend auf ein Eingabesprachsignal, liefert der Akustikprozessor eine geeignete Darstellung, um das zeitvariierende Sprachsignal zu charakterisieren. Der Akustikprozessor sollte nicht relevante Informationen verwerten wie zum Beispiel Hintergrundrauschen, Kanalverzer rung, Sprechercharakteristiken und die Art und Weise des Sprechens. Effiziente Akustikverarbeitung bildet Spracherkenner mit verbesserter Akustikunterscheidungsleistung. Zu diesem Zweck ist eine nützliche Charakteristik, um analysiert zu werden, die Kurzzeit-Spektral-Einhüllende. Zwei übliche benutzte Spektral-Analyse-Techniken zum Charakterisieren der Kurzzeit-Spektral-Einhüllenden sind das Linear-Vorhersage-Codieren (LPC = linear predictive coding) und das filterband-basierende Spektralmodelieren. Beispielhafte LPC-Techniken werden im U.S.Patent Nr. 5,414,796 beschrieben mit dem Titel VARIABLE RATE VOCODER, das dem Rechtsnachfolger der vorliegenden Erfindung zugeordnet ist, und im L. B. Rabiner & R. W. Schafer, Digital Processing of Speech Signals 396-453 (1978).
  • Die Verwendung von VR (ebenso üblich bezeichnet als Spracherkennung) wird immer wichtiger aus Gründen der Sicherheit. VR kann zum Beispiel benutzt werden um die manuelle Aufgabe des Drückens von Tasten auf einer Drahtlos-Telefontastatur zu ersetzen. Das ist insbesondere wichtig, wenn ein Benutzer einen Telefonanruf initiiert, während er ein Auto fährt. Wenn ein Telefon ohne VR benutzt wird, muss der Fahrer eine Hand vom Lenkrad entfernen und auf die Telefontastatur schauen, während er die Tasten drückt, um den Anruf zu wählen. Diese Aktionen erhöhen die Wahrscheinlichkeit eines Autounfalls.
  • Ein sprachfähiges Telefon (d.h. ein Telefon entwickelt für Spracherkennung) würde dem Fahrer erlauben, Telefonanrufe zu tätigen während er kontinuierlich die Straße beobachtet.
  • Und ein Freisprecheinrichtungssystem würde zusätzlich dem Fahrer erlauben, beide Hände während einer Anrufinitiierung auf dem Lenkrad zu behalten.
  • Spracherkennungsgeräte sind entweder als sprecherabhängige (SD = speaker-dependent) oder als sprecherunabhängige (SI = speaker-independent) Geräte klassifiziert. Sprecherabhängige Geräte, die häufiger sind, werden trainiert, um Befehle von bestimmten Benutzern zu erkennen.
  • Im Gegensatz dazu sind sprecherunabhängige Geräte dazu in der Lage Sprachbefehle von jedem Benutzer zu akzeptieren. Um die Performance eines vorhandenen VR-Systems zu erhöhen, ob sprecherabhängig oder sprecherunabhängig wird ein Training benötigt, um das System mit gültigen Parametern auszustatten. Mit anderen Worten, muss das System zuerst lernen bevor es optimal funktionieren kann.
  • Ein sprecherabhängiges VR-Gerät operiert typischerweise in zwei Phasen, einer Trainingsphase und einer Erkennungsphase. In der Trainingsphase fordert das VR-System den Benutzer auf, jedes der Wörter in dem Vokabular des Systems einmal oder zweimal (typischerweise zweimal) zu sprechen, so dass das System die Charakteristiken der Sprache des Benutzers für diese bestimmten Wörter oder Phrasen lernen kann. Ein beispielhaftes Vokabular für eine Freisprecheinrichtung könnten die Ziffern auf der Tastatur beinhalten; die Schlüsselwörter „call" bzw. „Anruf", „send" bzw. "Senden", „dial" bzw. "Wahl", „cancel" bzw. "Abbruch", „clear" bzw. "Leerung", „add" bzw. "Hinzufügen", „delete" bzw. „Löschen", „history" bzw. „Historie", „program" bzw. „Programmieren", „yes" bzw. „Ja", und „no" bzw. „Nein". Und die Namen der vordefinierten Nummern der üblicherweise angerufenen Kollegen, Freunde oder Familienmitglieder. Sobald das Training vollständig beendet ist, kann der Benutzer Anrufe in der Erkennungsphase durch Sprechen der trainierten Schlüsselwörter initiieren, die das VR-Gerät durch Vergleichen der gesprochenen Äußerungen mit den vorher trainierten Äußerungen (gespeichert als templates bzw. Vorlagen) vergleicht und den besten Treffer nimmt. Wenn zum Beispiel der Name „John" einer der trainierten Namen wäre, könnte der Benutzer einen Anruf zu John initiieren durch Aussprechen der Phrase „Call John". Das VR-System würde die Wörter „Call" und „John" erkennen und würde die Nummer wählen, die der Benutzer vorher für John's Telefonnummer eingetragen hat.
  • Systeme und Verfahren zum Trainieren
  • Ein sprecherunabhängiges VR-Gerät benutzt ebenso ein Trainings-Template, das ein voraufgenommenes Vokabular einer vordefinierten Größe (z.B. gewisse Steuerwörter, die Nummern Null bis Neun, und Ja und Nein) enthält. Eine große Anzahl von Sprechern (z.B. 100) muss aufgenommen werden, die jedes Wort in dem Vokabular aussprechen. Ein Beispiel für ein sprecherunabhängiges VR ist die Dynamic-Time-Warping-(DTW)-Engine bzw. -Element, die in der U.S. Patentanmeldung mit dem Titel METHOD AND APPARATUS FOR CONSTRUCTING VOICE TEMPLATES FOR A SPEAKER INDEPENDENT VOICE RECOGNITION SYSTEM, eingereicht am 13. Juli 2000, Anwalts-Docket-Nr. PA000017, das dem Rechtsnachfolger der vorliegenden Erfindung zugeordnet ist.
  • Verschiedene sprecherunabhängige VRs können unterschiedliche Ergebnisse haben. Eine sprecherunabhängige (SI) Hidden-Markov-Model-(HMM)-Engine bzw. -Element kann ein unterschiedliches Resultat als eine sprecherunabhängige Dynamic-Time-Warping-(DTW)-Engine ergeben. Das Kombinieren der Resultate von beiden Engines kann ein System mit besserer Erkennungsgenauigkeit und niedrigeren Zurückweisungsraten ergeben, als die Verwendung der Ergebnisse von nur einer der Engines. Alternativ könnten zwei der gleichen Engines mit einer leichten Störung, die zu einer der Engines oder auf das Eingabesignal an einer der Engines hinzuaddiert wird, angewandt werden. Ein solches System ist in dem U.S. Patent Nr. 5,754,978 beschrieben, mit dem Titel SPEECH RECOGNITION SYSTEM, das der Speech Systems of Colorado Inc. zugeordnet ist. Das System, das darin beschrieben ist, benutzt einen einfachen Vergleich zwischen den Resultaten der zwei Engines, somit gibt es einen Bedarf für einen verbesserten Vergleichsmechanismus.
  • Eine sprecherabhängige VR und eine sprecherunabhängige VR können unterschiedliche Resultate erzielen. Eine sprecherabhängige Engine führt Erkennung durch Verwendung von Templates, die einem spezifischen Benutzer zugehörig sind, durch. Eine sprecherunabhängige Engine führt Erkennung unter Verwendung von Templates, die unter Verwendung von Beispielen von einem Ensemble von Benutzern generiert wurden, durch. Da sprecherspezifi sche Templates näher an einem vorhandenen Sprecherstil eines Benutzers sind, liefern SD-Engines bessere Genauigkeit als SI-Engines. SI-Engines haben jedoch den Vorteil, dass die Benutzer nicht durch den „Trainings-Prozess" vor dem Benutzen des Systems gehen müssen.
  • Ein System und Verfahren das Engines unterschiedlicher Typen kombiniert ist erwünscht. Das Kombinieren einer sprecherabhängigen VR mit einer sprecherunabhängigen VR würde verbesserte Genauigkeit vorsehen und eine größere Mengen an Informationen in dem Eingabesprachsignal benutzen. Somit wird ein System und Verfahren zum Lösen von unterschiedlichen Resultaten von einem sprecherabhängigen VR und einer sprecherunabhängigen VR erwünscht.
  • Zusammenfassung der Erfindung
  • Die beschriebenen Ausführungsbeispiele sind auf ein System und Verfahren zur Spracherkennung gerichtet, das kombinierte Spracherkennungs-Engines benutzt wie definiert in den angehängten unabhängigen Ansprüchen. In einem Aspekt ist ein Akustikprozessor konfiguriert, um Sprachparameter von digitalisierten Sprach-Samples einer Äußerung zu extrahieren; eine Vielzahl von Spracherkennungs-Engines sind an den Akustikprozessor gekoppelt, wobei jede Spracherkennungs-Engine eine Hypothese produziert; und eine Entscheidungslogik nimmt als Eingabe diese Hypothesen von den Spracherkennungs-Engines und wählt eine Hypothese aus.
  • In einem anderen Aspekt ist ein Verfahren zum Kombinieren von einer Vielzahl von Spracherkennungs-Engines vorgesehen, um die Spracherkennung zu verbessern. Das Verfahren beinhaltet auf vorteilhafte Weise das Extrahieren von Sprachparametern durch einen Akustikprozessor von digitalisierten Sprach-Samples einer Äußerung. Das Koppeln einer Vielzahl von Spracherkennungs-Engines an den Akustikporzessor; das Produzieren einer Hypothese von jeder der Spracherkennungs-Engines; und das Auswählen einer Hypo these aus den Hypothesen, die von der Vielzahl von Spracherkennungs-Engines produziert wurden.
  • In einem Ausführungsbeispiel werden sprecherunabhängige Spracherkennungs-Engines kombiniert. In einem anderen Ausführungsbeispiel werden sprecherabhängige Spracherkennungs-Engines kombiniert. In noch einem anderen Ausführungsbeispiel wird eine sprecherunabhängige Spracherkennungs-Engine mit einer sprecherabhängigen Spracherkennungs-Engine kombiniert.
  • In einem Ausführungsbeispiel ist eine sprecherunabhängige Spracherkennungs-Engine eine Dynamic-Time-Warping-Spracherkennungs-Engine. In einem anderen Ausführungsbeispiel ist eine sprecherunabhängige Spracherkennungs-Engine ein Hidden-Markov-Modell. In einem Ausführungsbeispiel ist eine sprecherabhängige Spracherkennungs-Engine eine Dynamic-Time-Warping-Spracherkennungs-Engine. In einem Ausführungsbeispiel ist eine sprecherabhängige Spracherkennungs-Engine ein Hidden-Markov-Modell.
  • Kurze Beschreibung der Zeichnungen
  • Die Merkmale, Ziele und Vorteile der vorliegenden Erfindung werden ausgehend von der detaillierten Beschreibung, die nachstehend dargelegt ist, noch deutlicher werden, wenn sie in Verbindung mit den Zeichnungen gebracht wird, in denen gleiche Bezugszeichen durchgehend das entsprechende Identifizieren und wobei:
  • 1 ein Spracherkennungssystem zeigt;
  • 2 die Elemente des Akustikprozessors zeigt;
  • 3 einen DTW-SD-Merkmals-Extrahierer zusammen mit einem DTW-SD-Abbildungsmodul und einem DTW-SD-Template-Modul zeigt;
  • 4 einen DTW-SI-Merkmals-Extrahierer zusammen mit einem DTW-SI-Abbildungsmodul und einen DTW-SI-Template-Modul zeigt;
  • 5 einen HMM-Merkmals-Extrahierer zusammen mit einem HMM-SI-Abbildungsmodul und einen HMM-SI-Template-Modul zeigt;
  • 6 Komponenten des Entscheidungs-Logik-Moduls in einem Ausführungsbeispiel zeigt;
  • 7 das Flussdiagramm für kombinierte Engine-Logik für Befehlsworte mit keiner Sprecher-Adaptierung in einem Ausführungsbeispiel zeigt;
  • 8 das Flussdiagramm für kombinierte Engine-Logik für Befehlsworte mit Sprecher-Adaptierung zeigt; und
  • 9 das Flussdiagramm für kombinierte Engine-Logik für Befehlsworte und Namensbezeichnungen mit Sprecheradaptierung zeigt.
  • Detaillierte Beschreibung
  • In einem Ausführungsbeispiel hat das Spracherkennungssystem 100 drei Typen von Spracherkennungs-Engines, die dazu in der Lage sind, isolierte Worterkennungsaufgaben durchzuführen: eine Dynamic-Time-Warping-sprecherunabhängige-Engine (DTW-SI), eine Dynamic-Time-Warping-sprecherabhängige Engine (DTW-SD), eine Hidden-Markov-Modell-Engine (HMM). Diese Engines werden für Befehlsworterkennung und Ziffernerkennung benutzt um reichhaltig gesprochene Benutzer-Interfaces gemeinsame Aufgaben zu liefern, die von einem handgehaltenen Gerät, wie zum Beispiel einem Mobiltelefon durchgeführt werden. In einem anderen Ausführungsbeispiel weist das Spracherkennungssystem 100 eine DTW-SI- und eine DTW-SD-Engine auf. In noch einem anderen Ausführungsbeispiel weist das Spracherkennungssystem 100 eine DTW-SI-Engine und eine HMM-Engine auf. In noch einem anderen Ausführungsbeispiel weist das Spracherkennungssystem 100 eine DTW-SD-Engine und eine HMM-Engine auf. In einem Ausführungsbeispiel ist die HMM-Engine sprecherunabhängig. In einem anderen Ausführungsbeispiel ist die HMM-Engine sprecherabhängig. Gemäß einem Ausführungsbeispiel, wie in 1 dargestellt, beinhaltet ein Spracherkennungssystem 100, einen Analog-zu-Digital-Wandler (A/D = analog-to-digital converter) 102, einen Front-End-Akustikprozessor 104, Merkmals-Extrahierer 106, 108, 110, Sprach-Template-Datenbanken 112, 114, 116, Abbildungslogik 118, 120, 122 und Entscheidungslogik 124. In einem besonde ren Ausführungsbeispiel sind der Akustikprozessor 104 und die Merkmals-Extrahierer 106, 108, 110 in einem Gerät implementiert, z.B. in einem Parameter-Extrahierer.
  • Der A/D 102 ist an den Akustikprozessor 104 gekoppelt. Der Akustiprozessor 104 ist an die Merkmals-Extrahierer 106, 108, 110 gekoppelt. Ein DTW-SD-Merkmals-Extrahierer 106 ist an eine DTW-SD-Abbildungs-Logik 118 gekoppelt. Ein DTW-SI-Merkmals-Extrahierer 108 ist an eine DTW-SI-Abbildungslogik 120 gekoppelt. Ein HMM-Merkmals-Extrahierer 110 ist an HMM-Abbildungslogik 122 gekoppelt. Eine DTW-SD-Sprach-Template-Datenbank 112 ist an eine DTW-SD-Abbildungslogik 118 gekoppelt. Eine DTW-SI-Sprach-Template-Datenbank 114 ist an die DTW-SI-Abbildungslogik 120 gekoppelt. Eine HMM-Sprach-Template-Datenbank 116 ist an die HMM-Abbildungslogik 122 gekoppelt. Die DTW-SD-Abbildungslogik 118, die DTW-SI-Abbildungslogik 120 und die HMM-Abbildungslogik 122 sind an die Entscheidungslogik 124 gekoppelt.
  • In einem anderen Ausführungsbeispiel beinhaltet das Spracherkennungssystem 100, einen DTW-SD-Merkmals-Extrahierer 106 und einen DTW-SI-Merkmals-Extrahierer beinhaltet aber nicht einen HMM-SI-Merkmals-Extrahierer 110. In noch einem anderen Ausführungsbeispiel beinhaltet das Spracherkennungssystem 100 einen DTW-SI-Merkmals-Extrahierer 108 und einen HMM-SI-Merkmals-Extrahierer 110 beinhaltet aber nicht einen DTW-SD-Merkmals-Extrahierer 106. In noch einem anderen Ausführungsbeispiel beinhaltet das Spracherkennungssystem 100 einen DTW-SD-Merkmals-Extrahierer 106 und einen HMM-SI-Merkmals-Extrahierer 110, beinhaltet aber nicht einen DTW-SI-Merkmals-Extrahierer 108.
  • Das Spracherkennungsuntersystem 100 kann sich zum Beispiel in einem Drahtlos-Telefon oder in einer Freisprecheinrichtung finden. Ein Benutzer (nicht gezeigt) spricht ein Wort oder eine Phrase um ein Sprachsignal zu generieren. Das Sprachsignal wird in ein elektrisches Sprachsignal s(t) mit einem konventionellen Transducer bzw. Umwandler (nicht gezeigt) konvertiert.
  • Das Sprachsignal s(t) wird zum A/D geliefert, der das Sprachsignal in digitalisierte Sprach-Samples s[n] konvertiert, und zwar gemäß einem bekannten Abtastungsverfahren, wie zum Beispiel puls-codierte Modulation (PCM = pulse coded modulation), A-law oder R-law (μ-law). In einem Ausführungsbeispiel gibt es typischerweise N 16-Bit-Sprach-Samples pro Sekunde. Somit ergibt sich N = 8.000 für 8.000 Hz Abtastungs- bzw. Samplingfrequenz und N = 16.000 für 16.000 Hz Abtastungsfrequenz.
  • Die Sprach-Samples s[n] werden zum Akustikprozessor 104 für die Parameter-Bestimmung geliefert. Der Akustikprozessor 104 produziert einen Satz von Parametern, der die Charakteristiken des Eingabesprachsignals s(t) moduliert. Die Parameter können gemäß jeder einer Vielzahl von bekannten Sprachparameter-Bestimmungstechniken bestimmt werden, einschließlich zum Beispiel Sprach-Codierer-Codierung, diskrete Fourier-Transformationsbasierte-Cepstrum-Koeffizienten (DFT = discrete Fourier transform) (z.B. Fast-Fourier-Transformation-(FFT)-basierte Cepstrum-Koeffizienten), lineare Vorhersage-Koeffizienten (LPCs = linear predictive coefficients), oder Bark-Skalen-Analyse, wie beschrieben in dem zuvor genannten U.S. Patent Nr. 5,414,796 und Lawrence Rabiner & Biing-HwangJuang, Fundamtentals of Speech Recognition (1993). Der Satz von Parametern ist auf vorteilhafte Art und Weise rahmenbasiert (segmentiert in periodische Rahmen). Der Akustikprozessor 104 kann als ein Digital-Signal-Prozessor (DSP = digital signal processor) implementiert werden. Der DSP kann einen Sprach-Codierer beinhalten. Alternativ kann der Akustikprozessor 104 als ein Sprach-Codierer implementiert werden.
  • 2 zeigt die Elemente des Akustikprozessors 104 gemäß dem einen Ausführungsbeispiel. Der Akustikprozessor 104 weist ein Rahmenmodul 130, ein Anhebungsmodul 132, ein Fenstermodul 134, ein Fast-Fourier-Transformations-(FFT)-Modul 136, ein Amplitudenspektrumsmodul 138 und ein Bark-Skalen-Modul 140. In einem Ausführungsbeispiel werden die Sprach-Samples vom A/D-Wandler 102 durch das Rahmenmodul 130 eingerahmt. Das Rahmenmodul 130 rahmt die Sprach-Samples in überlappende Blöcke ein, ein Block pro 10 Millisekunden. Jeder Block hat 128 bis 256 PCM-Samples.
  • Das Anhebungsmodul bzw. Pre-Emphasis-Module 132 ist ein Filter, das die Rahmen vom Rahmenmodul 130 verarbeitet. In einem Ausführungsbeispiel werden die Rahmen durch ein Anhebungsfilter, wie zum Beispiel y(n) = x(n) –ax(n – 1). In einem Ausführungsbeispiel ist der Wert für "a" 0,95 bis 0,99.
  • Das angehobene Signal wird durch das Fenstermodul 134 geleitet. Das Fenstermodul 134 ist eine Fensterfunktion, die die gefensterten Samples von den gefilterten Rahmen vorsieht. In einem Ausführungsbeispiel erzeugt die Fensterfunktion ein Hamming-Fenster. In einem anderen Ausführungsbeispiel erzeugt die Fenstertunktion ein trapezförmiges Fenster. Es sei für den Fachmann angemerkt, dass jede Fenstertunktion, die auf dem Fachgebiet bekannt ist, benutzt werden kann. Zum Beispiel kann das Hamming-Fenster, das in L. B. Rabiner & L. Y. Juang Fundamentals of Speech Recognition (1993) benutzt werden. Die Fensterfunktion vermeidet die negativen Auswirkungen der wegen der Einrahmungsfunktion hinzuaddierten Störfrequenzkomponenten.
  • Jeder Block von gefensterten Abtastungen bzw. Samples von dem Fenstermodul 134 wird in die Frequenz-Domäne von dem FFT-Modul 136 konvertiert. Das FFT-Modul 136 ist ein Fast-Fourier-Transformator. In einem Ausführungsbeispiel wird das Amplitudenspektrum jedes Blocks berechnet als A = SQRT(Xt2 + Y·2), wobei A das Amplitudenspektrum ist, X und Y die Real- bzw. Imaginärteile der FFT sind.
  • Das Amplitudenspektrumsmodul 138 produziert die Spektraleigenschaften des Signals auf einer linearen Frequenzskala. Die lineare Frequenzskala wird durch das Bark-Skalen-Modul 140 in eine annäherungsweise logarithmische Frequenzskala, die eine Bark-Skala genannt wird, transformiert. Es gibt 64 Frequenzbehälter für 128 Sample-Blöcke und 128 Frequenzbehälter 256 Sample-Blöcke. Das Amplitudenspektrumsmodul 138 produziert Resultate in 16 Bark-Skalen-Behälter entsprechend jedem Amplitudenspektrum. D.h., das Amplitudenspektrumsmodul 138 produziert 16 Bark-Amplituden, eine alle 10 msek. von dem Sprachsignal.
  • In einem Ausführungsbeispiel sind der DTW-SI- und der DTW-SD-Merkmals-Extrahierer gleich. 3 zeigt einen DTW-SD-Merkmals-Extrahierer 106 zusammen mit einem DTW-SD-Abbildungsmodul 156 und einen DTW-SD-Template-Modul 158 gemäß einem Ausführungsbeispiel. 4 zeigt einen DTW-SI-Merkmals-Extrahierer 108 zusammen mit einem DTW-SI-Abbildungsmodul 166 und einem DTW-SI-Template-Modul 168.
  • Die DTW-SD- und die DTW-SI-Merkmals-Extrahierer weisen einen Endpunktdetektor 150, 160, ein Zeit-Cluster-Sprachsegmentierungsmodul 152, 162 bzw. einen Amplitudenquantisierer 154, 164 auf. In einem anderen Ausführungsbeispiel weist der DTW-SD-Merkmals-Extrahierer 106 ebenso ein DTW-SD-Abbildungsmodul 156 und ein DTW-SD-Template 158 auf. In einem anderen Ausführungsbeispiel weist der DTW-SI-Merkmals-Extrahierer 108 ebenso ein DTW-SI-Abbildungsmodul 166 und ein DTW-SI-Template-Modul 168 auf.
  • In einem Ausführungsbeispiel ist innerhalb des DTW-SD-Merkmals-Extrahierers 106 der Endpunktdetektor 150 an das Zeit-Cluster-Sprachsegmentierungsmodul 152 gekoppelt. Das Zeit-Cluster-Sprachsegmentierungsmodul 152 ist an den Amplitudenquantisierer 154 gekoppelt. Der Amplitudenquantisierer 154 ist an das DTW-SD-Abbildungsmodul 156 gekoppelt. Das DTW-SD-Template-Modul 158 ist an das DTW-SD-Abbildungsmodul 156 gekoppelt. In einem anderen Ausführungsbeispiel ist der Amplitudenquantisierer 154 an das DTW-SD-Template-Modul 158 gekoppelt. Das DTW-SD-Template-Modul 158 weist DTW-SD-Templates auf. In einem anderen Ausführungsbeispiel werden DTW-SD-Templates während einer Trainingsphase erzeugt, in der der DTW-SD-Teil des Systems für Eingabesprachsignale trainiert wird und DTW-SD-Templates vorsieht. In einem anderen Ausführungsbeispiel wird die DTW-SI-Engine, d.h. der DTW-SI-Merkmals-Extrahierer 108 benutzt um DTW-SD-Templates "bedingungslos" während der typischen Verwendung des Systems zu generieren. In diesen Ausführungs beispiel hat das System die Vorteile von sowohl den DTW-SD- als auch den DTW-SI-Engines, solang die Ergebnisse von den DTW-SI- und DTW-SD-Engines richtig kombiniert werden. Exemplarische Trainingssysteme und Verfahren werden in der U.S. Patentanmeldung 09/248,513 mit dem Titel VOICE RECOGNITION REJECTION SCHEME beschrieben, das am 8. Februar 1999 eingereicht wurde, und dem Rechtsnachfolger der vorliegenden Erfindung zugeordnet ist, und beschrieben in der U.S. Patent Anmeldung 09/255,891 mit dem Titel SYSTEM AND METHOD FOR SEGMENTATION AND RECOGNITION OF SPEECH SIGNALS, eingereicht am 4. Januar 1999 und dem Rechtsnachfolger der vorliegenden Erfindung zugeordnet und in der U.S. Patentanmeldung (QCPA000017), mit dem Titel METHOD AND APPARATUS FOR CONSTRUCTING VOICE TEMPLATES FOR A SPEAKER-INDEPENDENT VOICE RECOGNITION SYSTEM vom 13. Juli 2000, dem Rechtsnachfolger der vorliegenden Erfindung zugeordnet.
  • In einem Ausführungsbeispiel ist innerhalb des DTW-SI-Merkmals-Extrahierers 108 der Endpunkt-Detektor 160 an das Zeit-Cluster-Sprachsegmentierungsmodul 162 gekoppelt. Das Zeit-Cluster-Sprachsegementierungsmodul 162 ist an den Amplitudenquantisierer 164 gekoppelt. Der Amplitudenquantisierer 164 ist an das DTW-SI-Abbildungsmodul 166 gekoppelt. Das DTW-SI-Template-Modul 168 ist an das DTW-SI-Abbildungsmodul 166 gekoppelt. Das DTW-SI-Template-Modul 158 weist DTW-SI-Templates auf, die während einer Trainingsphase erzeugt werden, in der der DTW-SI-Teil des Systems nach Eingabesprachsignale trainiert wird.
  • Ein anderes Ausführungsbeispiel, das in der 5 gezeigt ist, zeigt einen HMM-Merkmals-Extrahierer 110 zusammen mit einem HMM-SI-Abbildungsmodul 176 und einem HMM-SI-Template-Modul 178. Der HMM-Merkmals-Extrahierer 110 weist ein Log-Modul 170, ein RASTA-Verarbeitungsmodul 172 und ein Cepstrum-Transformationsmodul 174 auf. Das Log-Modul 170 ist an das RASTA-Verarbeitungsmodul 172 gekoppelt. Das RASTA-Verarbeitungsmodul ist an das Cepsturm-Transformationsmodul 174 gekoppelt. SI-Hidden-Markov-Modelierungs-Engine (HMM). Die SI-HMM- Engine operiert in der cepstralen Domäne. Die Bark-Amplituden werden in eine logarithmische Skala durch das Log-Modul 170 transformiert. Die Bark-Logarithmen werden mit einem Bandpassfilter innerhalb des RASTA-Verarbeitungsmoduls 172 gefiltert. Es sei dem Fachmann angemerkt, dass jede RASTA-Verarbeitung, die auf dem Fachgebiet bekannt ist, benutzt werden kann. Exemplarische RASTA-Verarbeitung ist in dem U.S. Patent Nr. 5,450,522 mit dem Titel AUDITORY MODEL FOR PARAMETRIZATION OF SPEECH von Hermansky et. al. beschrieben.
  • Sobald die Bark-Algorithmen gefiltert wurden, wird eine Cosinus-Transformation in dem Cepstrum-Transformationsmodul 174 durchgeführt. In einem Ausführungsbeispiel werden die resultierenden Merkmalsvektoren mit den HMM-Modellen der Zielwörter, d.h. HMM-SI-Templates, abgebildet und zwar unter Verwendung eines Viterbi-Decoders, um den besten Treffer bzw. die beste Abbildung zu finden. Die HMM-Modelle der Zielwörter werden während des Trainingsprozesses generiert. Ein separates Model für männliche und weibliche Sprecher wird während des Trainingsprozesses generiert.
  • Jeder Parameterrahmen wird zum Merkmals-Extrahierer 106, 108 geliefert. In dem Merkmals-Extrahierer 106, 108 benutzt der Endpunktdetektor 150, 160 die extrahierten Parameter, um die Endpunkte einer Äußerung, d.h. eines Wortes zu detektieren. In einem Ausführungsbeispiel wird die Endpunktdetektion auf vorteilhafte Weise gemäß einer Technik, die in der U.S. Anmeldung Nr. 09/246,414 beschrieben wird, eingereicht am 8. Februar 1999 mit dem Titel METHOD AND APPARATUS FOR ACCURATE ENDPOINTING OF SPEECH IN THE PRESENCE OF NOISE, dem Rechtsnachfolger der vorliegenden Erfindung zugeordnet. Gemäß dieser Technik wird die Äußerung mit einem ersten Schwellenwert, wie zum Beispiel, einem Signal-zu-Rausch-Verhältnis-(SNR = signal-to-noise ratio)-Schwellenwert verglichen, um einen ersten Startpunkt und einen ersten Endpunkt der Äußerung zu bestimmen. Ein Teil der Äußerung der dem Startpunkt vorangeht, wird anschließend mit einem zweiten SNR-Schwellenwert verglichen um einen zweiten Startpunkt der Äußerung zu bestimmen. Ein Teil der Äußerung, der dem ersten Endpunkt folgt, wird anschließend mit dem zweiten SNR-Schwellenwert verglichen, um einen zweiten Endpunkt der Äußerung zu bestimmen. Die ersten und zweiten SNR-Schwellenwerte werden auf vorteilhafte Weise erneut periodisch berechnet, und der erste SNR-Schwellenwert überschreitet auf vorteilhafte Weise den zweiten SNR-Schwellenwert.
  • Die Rahmen der Frequenzdomänenparameter für die detektierte Äußerung werden zum Zeit-Cluster-Sprachsegmentierungsmodul 152, 162 geliefert, der gemäß einem Ausführungsbeispiel eine Komprimierungstechnik implementiert, die in der U.S. Anmeldung 09/255,891 beschrieben ist, eingereicht am 4. Januar 1999 mit dem Titel SYSTEM AND METHOD FOR SEGMENTATION AND RECOGNITION OF SPEECH SIGNALS, dem Rechtsnachfolger der vorliegenden Erfindung zugeordnet. Gemäß dieser Technik wird jeder Sprachrahmen in den Frequenzdomänenparametern durch wenigstens einen spektralen Wert repräsentiert, der mit dem Sprachrahmen assoziiert ist. Ein Spektraldifferenzwert wird anschließend für jedes Paar von benachbarten Rahmen bestimmt. Der Spektraldifferenzwert stellt eine Differenz zwischen den Spektralwerten assoziiert mit den zwei Rahmen in dem Paar dar. Eine ursprüngliche Clustergrenze ist zwischen jedem Paar von benachbarten Rahmen gesetzt, um Cluster in den Parametern zu erzeugen und ein Varianzwert wird jedem Cluster zugeordnet. Der Varianzwert ist auf vorteilhafte Art und Weise gleich einem der bestimmten Spektraldifferenzwerten. Eine Vielzahl von Cluster-Zusammenfügungsparametern wird anschließend berechnet, wobei jeder der Cluster-Zusammenfügungsparameter mit einem Paar von benachbarten Clustern assoziiert wird. Ein minimaler Cluster-Zusammenfügungsparameter wird aus der Vielzahl von Cluster-Zusammenfügungsparametern ausgewählt. Ein zusammengefügter Cluster wird anschließend durch Löschen einer Clustergrenze zwischen den Clustern, die mit dem minimalen Cluster-Zusammenfügungsparameter assoziiert sind, und durch Zuweisen eines zusammengefügten Varianzwertes zu den zusammengefügten Clustern gebildet. Der zusammengefügte Varianzwert stellt die Varianzwerte dar, die den Clustern, die mit dem minimalen Cluster-Zusammenfügungsparameter assoziiert sind, zugeordnet sind. Der Prozess wird auf vorteilhafte Art und Weise wiederholt, um eine Vielzahl von zusammengefügten Clustern bzw. Verbindungs-Cluster zu bilden und das segmentierte Sprachsignal kann auf vorteilhafte Weise gemäß der Vielzahl von zusammengefügten Clustern gebildet werden.
  • Es sei für den Fachmann angemerkt, dass das Zeit-Cluster-Sprachsegmentierungsmodul 152, 162 mit anderen Geräten wie zum Beispiel einem Zeitnormalisierungsmodul ersetzt werden kann. Es sei jedoch für den Fachmann ebenso angemerkt, dass, da das Zeit-Cluster-Sprachsegmentierungsmodul 152, 156 die Rahmen mit minimalen Differenzen im Vergleich zu dem vorherigen Rahmen in Clustern zusammenfügt, und Mittelwerte anstatt individueller Rahmen nutzt, benutzt das Zeit-Cluster-Sprachsegmentierungsmodul 118 mehr Informationen in der verarbeiteten Äußerung. Es sei ebenso angemerkt, dass das Zeit-Cluster-Sprach-Segmentierungsmodul 152, 162 auf vorteilhafte Weise in Verbindung mit Mustervergleichslogik benutzt wird, die in dem Entscheidungslogikmodul 124 ist.
  • In einem Ausführungsbeispiel der Erfindung wendet das Entscheidungslogikmodul 124 ein Dynamic-Time-Warping-(DTW)-Modell wie auf dem Fachgebiet bekannt an. In einem anderen Ausführungsbeispiel der Erfindung wendet das Entscheidungslogikmodul 24 ein HMM-Modell an. In einem noch anderen Ausführungsbeispiel wendet das Entscheidungslogikmodul 124 sowohl ein DTW-Modell als auch ein HMM-Modell an.
  • Die Cluster-Mittel werden an einem Sprachpegel-Normalisierer geliefert, d.h. zum Amplitudenquantisierer 154, 164. In einem Ausführungsbeispiel quantisiert der Amplitudenquantisierer 154, 164 die Sprachamplituden durch Zuordnen eines jeden Clustermittels von zwei Bits pro Kanal (d.h. zwei Bits pro Frequenz). In einem alternativen Ausführungsbeispiel, in dem cepstrale Koeffizienten extrahiert wurden, wird der Amplitudenquantisierer 154, 164 nicht benutzt um die Cluster-Mittel zu quantisieren, wie vom Fachmann verstanden sein wird.
  • Die Ausgabe, die von dem Amplitudenquantisierer 154, 164 generiert wird, wird vom Merkmals-Extrahierer 106, 108 zur Entscheidungslogik 124 geliefert.
  • Ein Satz von Templates für alle Vokabularwörter des Spracherkennungsuntersystems 100 wird in den Template-Datenbanken 158, 168, 178 gespeichert. In einem Ausführungsbeispiel ist der Satz von Templates mit einem sprecherunabhängigen Template-Bildungsuntersystem konstruiert. Die Template-Datenbanken 158, 168, 178 werden auf vorteilhafte Weise implementiert, wie jede konventionelle Form von nichtflüchtigem Speichermedium, z.B. Flash-Speicher. Dies ermöglicht den Templates in der Template-Datenbank 158, 168, 178 zu bleiben, wenn der Strom des Spracherkennungsuntersystems 100 abgeschaltet wird.
  • In einem Ausführungsbeispiel weist die Entscheidungslogik 124 eine DTW-SD-Entscheidungslogik 188, eine DTW-SI-Entscheidungslogik 190 und eine HMM-Entscheidungslogik 192 auf, wobei das DTW-SD-Abbildungsmodul 118 an die DTW-SD-Entscheidungslogik 188 gekoppelt ist, das DTW-SI-Abbildungsmodul 120 an die DTW-SI-Entscheidungslogik 190 gekoppelt ist und das HMM-Abbildungsmodul 122 an die HMM-Entscheidungslogik 192 gekoppelt ist, wie 6 gezeigt. In einem anderen Ausführungsbeispiel sind die DTW-SD-Entscheidungslogik 188, die DTW-SI-Entscheidungslogik und die HMM-SI-Entscheidungslogik vereinigt. Es sei für den Fachmann angemerkt, dass die Entscheidungslogiken 188, 190, 192 auf jede Kombination konfiguriert werden können.
  • Das Abbildungsmodul 118, 120, 122 der entsprechenden Engine vergleicht Vektoren von seinem Merkmals-Extrahierer 106, 108, 110 mit allen Templates, die in den entsprechenden Template-Datenbanken 112, 114, 116 gespeichert sind. Die Vergleichsergebnisse oder Distanzen, zwischen den Vektoren und allen Templates, die in der Template-Datenbank 112, 114, 116 gespeichert sind, werden zur entsprechenden Entscheidungslogik 188, 190, 192 geliefert. Die Entscheidungslogik 188, 190, 192 wählt von der entsprechenden Template-Datenbank 112, 114, 116 das Template aus, das am nähesten die Vektoren abbildet bzw. trifft. In der Alternative kann die Entscheidungslogik 188, 190, 192 einen konventionellen "N-besten"-Auswahl-Algorithmus benutzen, der die N-nähesten Treffer innerhalb einer vordefinierten Abbildungsschwelle wählt. Der Benutzer wird anschließend gefragt, welche Wahl beabsichtigt war. Die Ausgabe der Entscheidungslogik 188, 190, 192 ist die Entscheidung, welches Wort in dem Vokabular gesprochen wurde.
  • In einem Ausführungsbeispiel benutzen die DTW-Abbildungsmodule 118, 120 und die Entscheidungslogik 188, 190 eine DTW-Technik, um die Konvergenz zu testen. Die DTW-Technik ist auf dem Fachgebiet bekannt und in Lawrence Rabiner & Biing-Hwang Juang beschrieben, Fundamentals of Speech Recognition 200-238 (1993). Gemäß der DTW-Technik wird ein Gitter (trellis) durch Zeichnen einer Zeitsequenz der Äußerung, die getestet werden soll, gegenüber einer Zeitsequenz für jede Äußerung, die in der Template-Datenbank 108 gespeichert ist, gebildet. Die zu testende Äußerung wird anschließend verglichen, Punkt für Punkt (z.B. alle 10 ms), mit jeder Äußerung in der Template-Datenbank 108, nur eine Äußerung auf einmal. Für jede Äußerung in der Template-Datenbank 108 wird die zu testende Äußerung angepasst, oder "warped" bzw. verformt, und zwar in der Zeit, und zwar entweder komprimiert oder expandiert bei bestimmten Punkten, bis die nächstmöglichste Abbildung der Äußerung in der Template-Datenbank 108 erreicht wurde. Zu jedem Punkt in der Zeit werden die zwei Äußerungen verglichen und entweder ein Treffer wird erklärt zu diesem Punkt (Null-Kosten) oder es wird eine Fehlanpassung erklärt. Im Falle einer Fehlanpassung zu einem bestimmten Punkt wird die zu testende Äußerung komprimiert, expandiert oder wenn nötig, fehlangepasst. Der Prozess wird solange fortgesetzt bis zwei Äußerungen vollständig gegeneinander verglichen wurden. Eine große Anzahl (typischerweise tausende) der verschiedenartig angepassten Äußerungen ist möglich. Die angepasste Äußerung mit der niedrigsten Kostenfunktion (d.h. benötigt die kleinste Anzahl von Komprimierungen und/oder Expansionen und/oder Fehlanpassungen) wird ausgewählt. Auf eine ähnliche Art und Weise wie ein Viterbi-Decodierungs-Algorithmus wird die Auswahl auf vorteilhafte Weise durch Zurückschauen von jedem Punkt in der Äußerung in der Template-Datenbank 108 durchgeführt, um den Pfadweg mit den niedrigsten Gesamtkosten zu bestimmen. Dies erlaubt der angepassten Äußerung mit den niedrigsten Kosten (d.h. am nächsten abgebildet) bestimmt zu werden und zwar ohne auf das "brute-force"-Verfahren zum Generieren von jeder möglichen der verschieden angepassten Äußerungen zurückzugreifen. Die angepassten Äußerungen mit den niedrigsten Kosten für alle Äußerungen in der Template-Datenbank 108 werden anschließend verglichen und diejenige mit den niedrigsten Kosten wird ausgewählt als die gespeicherte Äußerung, die am nächsten auf die getestete Äußerung abgebildet wird.
  • Obwohl die Abbildungsschemata 118, 120 und das Viterbi-Decodieren in HMM-Systemen gleichwertig sind, wenden die DTW- und HMM-Engines unterschiedliche Front-End-Schemata an, d.h. Merkmals-Extrahierer, um Merkmalsvektoren an die Abbildungsstufe zu liefern. Aus diesem Grund sind die Fehlermuster der DTW- und HMM-Engines einigermaßen unterschiedlich. Ein Spracherkennungssystem 100 mit einer kombinierten Engine hat den Vorteil der Differenz in den Fehlermustern. Durch richtiges Kombinieren der Ergebnisse von beiden Engines kann eine höhere Gesamterkennungsgenauigkeit erreicht werden. Und noch wichtiger, können niedrigere Zurückweisungsraten für die gewünschte Erkennungsgenauigkeit erreicht werden.
  • In einem isolierten Spracherkennungssystem kann die Wahrscheinlichkeit der Abbildung einer Äußerung auf ein Zielwort ausgedrückt werden als: P(Wj,X) = max(Πexp((Λij-xj)/σj)2)
  • Wi ist das Zielwort i, das von einem Satz von Mittelwertvektoren Λi und der Varianz σj modelliert wurde. Zusätzlich zu Wj gibt es ein Ausschussmodel Wg. Wenn eine Äußerung X keinem der Vokabularwörter Wi entspricht, wird von Wg erwartet sehr niedrige Kosten zu ergeben, das bedeutet, das die Äußerung X Ausschuss ist und keines der Wörter von den Vokabularwörtern. Wg wird während des Trainingsprozesses gebildet. Es sei für den Fachmann an gemerkt, dass jedes Ausschussmodellierungsschema, das auf dem Fachgebiet bekannt ist, benutzt werden kann.
  • Die Äußerung X ist die Serie von Merkmalsvektoren xj. In einem Ausführungsbeispiel ist die Varianz σj eins (unity) und die Minimalisierung ist immer über 20 Rahmen (d.h. j = 1...20) in dem DTW-Schema. Minimalisierung ist der Prozess des Auswählens der Worthypothese mit den niedrigsten Kosten. Eine Hypothese ist ein Wort, Token bzw. Merkmal oder Zeichenfolge der Wörter oder Tokens bzw. Merkmale. Ein Token ist ein Sprachsegment entsprechend einer Phrase, Wort oder Unterwort.
  • In dem HMM-Schema eines Ausführungsbeispiels ist j = 1...N, wobei N die Länge der Äußerung ist. Weiterhin wird ein Diagonal-Kovarianz-Vektor in der Modellierung benutzt, anstatt eines Einheitsvektors.
  • Außer den zwei Differenzen zwischen DTW und HMM generieren sowohl DTW- als auch HMM-Engines eine Wahrscheinlichkeitsmessung für jedes der Zielwörter. Dies impliziert die Möglichkeit eine DTW-Wahrscheinlichkeit (PDTW (Wj,X)) und eine HMM-Wahrscheinlichkeit (PHMM (Wj,X)) zu multiplizieren, um die Wahrscheinlichkeit über beide Engines zu maximieren. In der Praxis wird anstatt des Maximierens der Wahrscheinlichkeit die Kosten der Abbildung auf eine Äußerung X mit einem Wort Wi minimiert, und zwar wegen Berechnungseffizienz. Die Kosten sind definiert als: C(Wi,X) = –Log(P(Wi,X)) = min(Σ((Λij – xj)/σj)2)
  • Somit sind die kombinierten Kosten der Abbildung von der Äußerung X mit dem Wort Wi gegeben als C(Wi,X) = CDTW (Wi,X) + γ·CHMM(Wi,X),wobei γ der Skalierungsfaktor ist. Dies ist ähnlich zu den Sprachmodellierungskosten, die in großen Vokabulardiktatsystemen benutzt werden, wobei die Akustikmodellkosten und die Sprachmodelkosten mit den richtigen Skalierungsfaktoren kombiniert werden.
  • In einem Ausführungsbeispiel werden sprecherunabhängige Spracherkennungs-Engines, die auf dem gleichen Vokabularsatz operieren, kombiniert. In einem anderen Ausführungsbeispiel werden sprecherabhängige Spracherkennungs-Engines kombiniert. In noch einem anderen Ausführungsbeispiel wird eine sprecherunabhängige Spracherkennungs-Engine mit einer sprecherabhängigen Spracherkennungs-Engine kombiniert, wobei beide Engines auf dem gleichen Vokabularsatz operieren. In noch einem anderen Ausführungsbeispiel wird eine sprecherunabhängige Spracherkennungs-Engine mit einer sprecherabhängigen Spracherkennungs-Engine kombiniert, wobei beide Engines auf verschiedenen Vokabular-Sets bzw. -Sätzen operieren.
  • 7 zeigt ein Flussdiagramm für kombinierte Engine-Logik mit keiner Sprecher-Adaptierung in einem Ausführungsbeispiel. Sprecher-Adaptierung ist das explizite oder implizite Training von Templates.
  • γ
    = 20/N, wobei N die Dauer der Äußerung in Rahmen ist.
    D(i)
    = die Kosten für die DTW-Hypothese i
    H(i)
    = die Kosten für die HMM-Hypothese i
    C(i)
    = die Kosten für die kombinierte Hypothese i
    Δ(D)
    = DTW Deltakosten bzw. DTW Unterschiedskosten = D(2) – D(1)
    Δ(H)
    = HMM-Deltakosten bzw. HMM-Unterschiedskosten = H(2) – H(1)
    Δ(C)
    = kombinierte Deltakosten = C(Ausschuss) – C(1).
  • Die Ausschussdatenkosten werden in der Berechnung Δ(C) be nutzt.
  • Auf der ersten Stufe 200 prüft der Algorithmus, um zu sehen, ob der oberste bzw. Top-Kandidat der gleiche für sowohl DTW als auch HMM ist. Die gesamten Deltakosten gegenüber der Schwelle T1 werden als eine Grenzprüfung 202 benutzt. Wenn der erste DTW und der erste HMM übereinstimmen, dann werden sowohl die DTW- und HMM-Hypothesen akzeptiert. Wenn sie nicht übereinstimmen, dann fährt der Steuerungsfluss fort zur zweiten Stufe 204.
  • In der zweiten Stufe 204 stellt der Algorithmus die Äußerungen wieder her, wobei der DTW richtig und der HMM der zweitbeste ist. In der zweiten Stufe 204 wird geprüft, um zu sehen, ob der DTW-Top-Kandidat mit dem zweitbesten HMM-Kandidaten übereinstimmen. Wenn der DTW-Top mit dem zweitbesten HMM übereinstimmt, dann wird die DTW-Hypothese akzeptiert. Wenn sie nicht übereinstimmen, fährt der Steuerungsfluss fort, in die dritte Stufe 208. Die DTW-Deltakostenschwelle T2 wird als Grenzprüfung 206 benutzt.
  • In der dritten Stufe 208 stellt der Algorithmus die Äußerung wieder her, wobei HMM richtig, und DTW der zweitbeste ist. In der dritten Stufe 208 prüft der Algorithmus, um zu sehen, ob der HMM-Kandidat mit dem zweiten DTW-Kandidaten übereinstimmt. Wenn der HMM-Kandidat mit den zweiten DTW-Kandidaten übereinstimmt, dann wird die HMM-Hypothese akzeptiert. Wenn sie nicht übereinstimmen, dann fährt der Steuerungsfluss fort in die vierte Stufe 212. Die HMM-Deltakostenschwelle T3 wird als Grenzprüfung 210 benutzt.
  • In der vierten Stufe 212 werden die DTW- und HMM-Auswertungen kombiniert, und zwar mit der richtigen Skalierung. In der vierten Stufe 212 wird geprüft, ob Δ(C) größer als die Schwelle T4 ist und ob die beste bzw. top-kombinierte Hypothese die gleiche als entweder die DTW-Top-Hypothese oder NMM-Top-Hypothese ist. Wenn ja, dann wird die kombinierte Hypothese akzeptiert. Wenn nicht, wird in die fünfte Stufe 216 übergegangen. Für die Berechnung der kombinierten Deltakosten benutzt der Algorithmus die Ausschusskosten, da die Wörter, die von den beiden Engines vorgeschlagen wurden, nicht die gleichen sein müssen. Der Algorithmus stellt sicher, dass der Top-Kandidat mit entweder DTW- oder HMM-Top-Kandidaten als eine Grenzprüfung übereinstimmt.
  • In der fünften Stufe 216 prüft der Algorithmus nur nach DTW-basierter Zurückweisung, die auf den DTW-Kosten, Delta-Kosten und Ausschusskosten basiert. Diese Stufe operiert ebenso als das einzigste Zurückweisungsschema, wenn nur DTW-Templates in einer Plattform geladen sind. Wenn die DTW-Zurückweisungsschemabedingung wahr ist, dann wir die Top-DTW-Hypothese akzeptiert. Wenn die DTW-Zurückweisungsschemabedingung falsch ist, dann fährt der Steuefluss fort zur sechsten Stufe 220. Die DTW-Zurückweisungsschemabedingung ist wahr, wenn die Kosten des Top-Kandidaten kleiner als die Schwelle T5 sind und die Delta-DTW-Kosten Δ(C) größer als die Schwelle T6 sind.
  • In der sechsten Stufe 220 prüft der Algorithmus nur nach der HMM-basierten Zurückweisung, die auf HMM-Kosten, Deltakosten und Ausschusskosten basiert. Diese Stufe operiert ebenso als das einzigste Zurückweisungsschema, wenn nur HMM-Templates in der Plattform geladen sind. Wenn die HMM-Zurückweisungsschemabedingung wahr ist, dann akzeptiert der Algorithmus die Top-HMM-Hypothese. Wenn die HMM-Zurückweisungsschemabedingung falsch ist, dann fährt der Steuerfluss fort zur siebten Stufe 226. Die HMM-Zurückweisungschemabedingung ist wahr, wenn die Kosten des Top-Kandidaten kleiner als die Schwelle T7 sind und die Delta-HMM-Kosten Δ(H) größer als die Schwelle T8 ist.
  • Exemplarische Zurückweisungsschemata sind in der U. S. Patentanmeldung 09/248,513 mit dem Titel VOICE RECOGNITION REJECTION SCHEME beschrieben, eingereicht am 8. Februar 1999 und dem Rechtsnachfolger der vorliegenden Erfindung zugeordnet.
  • In einem Ausführungsbeispiel ist die kombinierte Engine-Logik für Befehlsworte und hat Sprecher-Adaptierung. 8 zeigt ein Flussdiagramm für die kombinierte Engine-Logik, für Befehlsworte mit Sprecheradaptierung gemäß einem Ausführungsbeispiel. S(.) entspricht den sprecheradaptierten Ergebnissen von der sprecherabhängigen Engine. C(.) entspricht den sprecherunabhängigen Ergebnissen von der kombinierten Engine mit keiner Adaptierung. A(.) entspricht dem Zusammenfügen der SI- und SA-Ergebnisse und der Neuordnung der Hypothesen.
  • In der ersten Stufe 230 prüft der Algorithmus, um zu sehen, ob der Top-Kandidat der gleiche für beide C(1) und S(1) ist. Die Gesamt-Delta-Kosten gegenüber der Schwelle T9 werden als Grenzprüfung benutzt. Wenn C(1) und S(1) übereinstimmen, dann werden sowohl C(1) als auch S(1) Hypothesen akzeptiert 232. Wenn sie nicht übereinstimmen, dann fährt der Steuerfluss fort zur Stufe 234.
  • In der zweiten Stufe 234 prüft der Algorithmus, ob es weniger als zwei sprecheradaptive Templates gibt. Wenn es weniger als zwei sprecheradaptive Templates gibt, dann akzeptiert der Steuerfluss die sprecherunabhängige Hypothese 236. Wenn nicht, fährt der Steuerfluss fort zur dritten Stufe 238.
  • In der dritten Stufe 238 wird ein DTW-Zurückweisungsschema angewandt. Wenn die DTW-Zurückweisungsschemabedingung wahr ist, dann akzeptiert der Algorithmus die sprecheradaptive Hypothese 240. Wenn die DTW-Zurückweisungsschemabedingung falsch ist, dann fährt der Steuerfluss fort zur vierten Stufe 242.
  • In der vierten Stufe 242 wird Δ(A) mit der Schwelle T10 verglichen. Wenn Δ(A) größer als die Schwelle T10 und A(1) gleich D(1), H(1) oder S(1) ist, wird eine kombinierte Hypothese akzeptiert 244. Wenn nicht wird anschließend die kombinierte Hypothese zurückgewiesen 246.
  • Wenn es weniger als zwei sprecheradaptierte Templates gibt, wird mehr Anhebung auf die kombinierte S1 Engine gelegt. Wenn es mehr als zwei sprecheradaptierte Templates gibt, dann wird mehr Anhebung bzw. Betonung auf die SD-Engine gelegt.
  • In einem anderen Ausführungsbeispiel ist die kombinierte Engine-Logik für Befehlsworte und Namensschilder bzw. Namensbezeichnungen und hat Sprecheradaptierung. Namensbezeichnungen sind Vokabularworte, die von einem Benutzer eingetragen wurden. 9 zeigt ein Flussdiagramm für kombinierte Engine-Logik für Befehlsworte und Namensbezeichnungen mit Sprecheradaptierung gemäß einem Ausführungsbeispiel.
  • SD(.) entspricht der sprecherabhängigen Engine. C(.) entspricht den sprecherunabhängigen Ergebnissen von der kombinierten Engine mit keiner Adaptierung. T(.) entspricht dem Zusammenfügen der SI- und SD-Ergebnisse und dem Neuordnen der Hypothesen.
  • In der ersten Stufe 250 prüft der Algorithmus um zu sehen, ob der Topkandidat, der gleiche für sowohl C(1) als auch SD(1) ist. Die Gesamt-Delta-Kosten gegenüber der Schwelle T11 wird als Grenzprüfung benutzt. Wenn C(1) und SD(1) übereinstimmen, dann wird der Befehl akzeptiert 252. Wenn sie nicht übereinstimmen, dann fährt der Steuerfluss fort zur Stufe 254.
  • In der zweiten Stufe 254 wird Δ(C) mit der Schwelle T12 verglichen. Wenn Δ(C) kleiner als die Schwelle T12 ist, dann wird die Namensbezeichnung akzeptiert 256. Wenn nicht, dann fährt der Steuerfluss fort zur dritten Stufe 258.
  • In der dritten Stufe 258 wird ein DTW-Zurückweisungsschema angewandt. Wenn die DTW-Zurückweisungsschemabedingung wahr ist, dann akzeptiert der Algorithmus den sprecherabhängigen Befehl 260, wenn die DTW-Zurückweisungsschemabedingung falsch ist, dann fährt der Steuerfluss zur vierten Stufe 262.
  • In der vierten Stufe 262 wird Δ(T) mit der Schwelle T13 verglichen. Wenn Δ(T) größer als die Schwelle T13 ist und T(1) gleich D(1), H(1) oder SD(1) ist, wird eine kombinierte Hypothese akzeptiert 264. Wenn nicht, wird die kombinierte Hypothese zurückgewiesen 266.
  • In dem hybriden Schema generiert die sprecherabhängige Engine Namensbezeichnungshypothesen. Die sprecherunabhängige Engine generiert die Befehlsworthypothesen. Zusätzlich, wenn es irgendwelche sprecheradaptierten Templates gibt, generiert die sprecherabhängige Engine Befehlsworthypothesen.
  • Typischerweise gibt es einige zehn von Namensbezeichnungen und wenige Befehlsworte (wie zum Beispiel "PhoneBook bzw. Telefonbuch, Redial bzw. Neuwahl, VoiceMemo bzw. Sprachmemo und Email").
  • Der Benutzer kann eine Namensbezeichnung oder ein Befehlswort beim Top-Niveau sprechen.
  • Ohne die hybride Engine muss der Benutzer "Command" bzw. "Befehl" gefolgt von der Aufgabe "Sagen" (zum Beispiel Call-John-Jones; Command – Phone-Book bzw. Befehl-Telefonbuch). Mit der hybriden Engine kann der Benutzer "John Jones" oder Telefonbuch sagen. Ergebnisse in einem Benutzerinterface.
  • Die Schwellen Ti, die bei der kombinierten SI-Logik, kombinierten SA-Logik und kombinierten Hybridlogik benutzt werden, sind optimiert unter der Verwendung von einem Entwicklungssatz von Äußerungen von einer Zusammenstellung von Sprechern. In einem Ausführungsbeispiel wird die Optimierung manuell durchgeführt.
  • In einem anderen Ausführungsbeispiel wird eine automatisierte Prozedur wie zum Beispiel Kleinstquadrat-Minimierungs-(LMS = Least Squares Minimization)-Prozess benutzt, um die Schwellen Ti zu optimieren. In einem Ausführungsbeispiel betrachtet die automatisierte Prozedur jede der Top-N-Hypothesen von jeder Engine als die richtige Antwort und konstruiert einen Vektor von Parametern für jede Hypothese. In einem Ausführungsbeispiel ist ein Beispiel eines solchen Vektors [Δ(D) Δ(Dg)A (H) Δ(Hg)] wobei Δ(?) die Differenz in den Kosten zwischen der Hypothese, die in Betracht gezogen wird und der nächstbesten Hypothese dieser Engine ist. Δ(Dg) Δ(Hg) entspricht der Kostendifferenz zwischen der Hypothese, die in Betracht gezogen wird, und den Ausschusskosten der DTW- bzw. HMM-Engines.
  • Als Beispiel seien die zwei Top-Hypothesen von jeder Engine betrachtet: es könnte maximal vier (4) Kandidaten für die Antwort geben, aus denen nur eine die korrekte Antwort ist. Der Trainingsprozess generiert einen Satz von vier Gewichtungen a, b, c, und d, die die Gewichtungssumme von (a·Δ(D) + b·Δ(Dg) + c·Δ(H) + d·Δ(Hg)) für die korrekte Hypothese maximiert und die gewichtete Summe für die nichtkorrekten Hypothesen minimiert.
  • Somit wurde ein neues und verbessertes Verfahren und Vorrichtung zum Kombinieren von Engines für die Spracherkennung beschrieben. Dem Fachmann sei angemerkt, dass die verschiedenen illustrativen logischen Blöcke, Module und Algorithmusschritte, die in Verbindung mit den Ausführungsbeispielen, die hierin offenbart sind, beschrieben wurden, als elektronische Hardware, Computer-Software oder Kombinationen von beiden implementiert werden kann. Die verschiedenen illustrativen Komponenten, Blöcke, Module, Schaltungen und Schritte wurden im Allgemeinen hinsichtlich der Funktionalität beschrieben. Ob die Funktionalität als Hardware oder Software implementiert wird, hängt von der bestimmten Anwendung und Entwicklungseinschränkungen, die dem gesamten System auferlegt sind ab. Der Fachmann erkennt die Auswechselbarkeit von Hardware und Software unter diesen Umständen und wie am besten die beschriebene Funktionalität für jede bestimmte Anwendung implementiert wird. Als Beispiel können die verschiedenen illustrativen logischen Blöcke, Module und Algorithmusschritte, die in Verbindung mit den Ausführungsbeispielen, die hierin offenbart sind, beschrieben wurden, implementiert oder durchgeführt werden mit einem Prozessor, der einen Satz von Firmware-Instruktionen ausführt, mit einer anwendungsspezifischen integrierten Schaltung (ASIC = application specific integrated circuit), einem feldprogrammierbaren Gate Array (FPGA = field programmable gate array) oder anderem programmierbaren logischen Gerät, mit diskretem Gatter oder Transitorlogik, diskreter Hardware-Komponenten wie zum Beispiel Registern, mit jedem konventionellen programmierbaren Software-Modul und einem Prozessor oder jede Kombination davon, die entwickelt wurde, um die Funktionen, die hierin beschrieben wurden durchzuführen. Die Merkmals-Extrahierer 106, 108, 110, Abbildungsmodule 118, 120, 122 und Entscheidungslogik 124 kann auf vorteilhafte Weise in einem Microprozessor ausgeführt werden, aber in der Alternative können die Merkmals-Extrahierer 106, 108, 110, Abbildungsmodule 118, 120, 122 und die Entscheidungslogik 124 in jedem konventionellen Prozessor, Controller, Microcontroller oder Zustandsmaschine ausgeführt werden. Die Templates könnten sich in einem RAM-Speicher, Flash-Speicher, ROM-Speicher, EPROM-Speicher, EEPROM-Speicher, Registern, Festplatte, einer entfernbaren Diskette, einer CD-ROM oder jede andere Form von Speichermedium, die auf dem Fachgebiet bekannt ist, befinden. Wie dargestellt in 1 sind die Abbildungsmodule 118, 120, 122 auf vorteilhafte Weise an ein Template-Modul 112, 114, 116 entsprechend gekoppelt, um so Informationen von dem Template-Modul 112, 114, 116 entsprechend zu lesen. Der Speicher (nicht gezeigt) kann in jedem zuvor genannten Prozessor integriert sein. Ein Prozessor und Speicher (nicht gezeigt) kann sich in einem ASIC (nicht gezeigt) befinden. Der ASIC kann sich in einem Telefon befinden.
  • Die vorangegangene Beschreibung der Ausführungsbeispiele der Erfindung ist vorgesehen, um jedem Fachmann zu ermöglichen die vorliegende Erfindung zu verwenden oder zu produzieren. Die verschiedenen Modifikationen zu diesen Ausführungsbeispielen werden dem Fachmann leicht ersichtlich sein, und die ursprünglichen Prinzipien, die hierin definiert sind, können auf andere Ausführungsbeispiele ohne die Verwendung von erfinderischer Fähigkeit angewandt werden. Somit ist es nicht beabsichtigt die vorliegende Erfindung auf die Ausführungsbeispiele, die hierin gezeigt sind, zu begrenzen, sondern es soll eher der weitest mögliche Schutzumfang der konsistent mit den angehängten Ansprüchen ist, eingeräumt werden.

Claims (15)

  1. Ein Spracherkennungssystem (100), das Folgendes aufweist: einen Akustikprozessor (104), der konfiguriert ist, um Sprachparameter von digitalisierten Sprachsamples einer Äußerung zu extrahieren; eine Vielzahl von Spracherkennungselementen bzw. -Engines (106, 108, 110), die an den Akustikprozessor (104) gekoppelt sind, wobei jedes Spracherkennungselement konfiguriert ist, um eine Hypothese zu produzieren; und Entscheidungslogik, die Folgendes aufweist: Mittel zum Extrahieren von Sprachparametern mit einem Akustikprozessor (104) von digitalisierten Sprachsamples einer Äußerung; Mittel zum Koppeln einer Vielzahl von Spracherkennungselementen an den Akustikprozessor (104); und Mittel zum Produzieren einer Vielzahl von Hypothesen von jedem Spracherkennungselement; Mittel zum Vergleichen der wahrscheinlichsten Hypothese des ersten Spracherkennungselements mit der zweitwahrscheinlichsten Hypothese des ersten Spracherkennungselements, um einen ersten Unterschied, Delta 1, zu bilden; Mittel zum Vergleichen der wahrscheinlichsten Hypothese des zweiten Spracherkennungselements mit der zweitwahrscheinlichsten Hypothese des zweiten Spracherkennungselements, um einen zweiten Unterschied, Delta 2, zu bilden; Mittel zum Addieren von Delta 1 und Delta 2, um eine Delta-Summe zu bilden; und Mittel zum Akzeptieren der wahrscheinlichsten Hypothese des ersten Spracherkennungselements, wenn die wahrscheinlichste Hypothese des ersten Spracherkennungselements gleich der wahrscheinlichsten Hypothese des zweiten Spracherkennungselements ist und die Delta-Summe größer als eine erste vorbestimmte Schwelle ist.
  2. Das Spracherkennungssystem (100) gemäß Anspruch 1, wobei die Vielzahl von Spracherkennungselementen (106, 108, 110) ein sprecherunabhängiges Spracherkennungselement beinhaltet.
  3. Das Spracherkennungssystem (100) gemäß Anspruch 1, wobei die Vielzahl von Spracherkennungselementen (106, 108, 110) ein sprecherabhängiges Spracherkennungselement beinhaltet.
  4. Das Spracherkennungssystem (100) gemäß Anspruch 2, wobei die Vielzahl von Spracherkennungselementen (106, 108, 110) ein sprecherabhängiges Spracherkennungselement beinhaltet.
  5. Das Spracherkennungssystem (100) gemäß Anspruch 4, wobei die Vielzahl von Spracherkennungselementen (106, 108, 110) ein sprecherunabhängiges Dynamic-Time-Warping-Spracherkennungselement (108) beinhaltet.
  6. Das Spracherkennungssystem (100) gemäß Anspruch 4, wobei die Vielzahl von Spracherkennungselementen (106, 108, 110) ein sprecherunabhängiges Hidden-Markov-Modell-Spracherkennungselement beinhaltet.
  7. Das Spracherkennungssystem (100) gemäß Anspruch 4, wobei die Vielzahl von Spracherkennungselementen (106, 108, 110) ein sprecherabhängiges Dynamic-Time-Warping-Spracherkennungselement (106) beinhaltet.
  8. Das Spracherkennungssystem (100) gemäß Anspruch 4, wobei die Vielzahl von Spracherkennungselementen (106, 108, 110) ein sprecherabhängiges Hidden-Markov-Modell-Erkennungselement (110) beinhaltet.
  9. Das Spracherkennungssystem (100) gemäß Anspruch 4, wobei die Vielzahl von Spracherkennungselementen (106, 108, 110) ein sprecherabhängiges Dynamic-Time-Warping-Spracherkennungselement (106) und ein sprecherunabhängiges Dynamic-Time-Warping Element (108) beinhaltet.
  10. Ein Verfahren zur Spracherkennung, das Folgendes aufweist: Extrahieren der Sprachparameter mit einem Akustikprozessor (104) von digitalisierten Sprachsamples einer Äußerung; Koppeln einer Vielzahl von Spracherkennungselementen bzw. Engines (106, 108, 110) an den Akustikprozessor (104); und Produzieren einer Vielzahl von Hypothesen von jedem Spracherkennungselement; Vergleichen der wahrscheinlichsten Hypothese des ersten Spracherkennungselements mit der zweitwahrscheinlichsten Hypothese des ersten Spracherkennungselements, um einen ersten Unterschied, Delta 1, zu bilden; Vergleichen der wahrscheinlichsten Hypothese des zweiten Spracherkennungselements mit der zweitwahrscheinlichsten Hypothese des zweiten Spracherkennungselements, um einen zweiten Unterschied, Delta 2, zu bilden; Addieren von Delta 1 und Delta 2, um eine Delta-Summe zu bilden; und Akzeptieren der wahrscheinlichsten Hypothese des ersten Spracherkennungselements, wenn die wahrscheinlichste Hypothese des ersten Spracherkennungselements gleich der wahrscheinlichsten Hypothese des zweiten Spracherkennungselements ist und die Delta-Summe größer als eine erste vorbestimmte Schwelle ist.
  11. Ein Verfahren wie in Anspruch 10, wobei, wenn die wahrscheinlichste Hypothese des ersten Spracherkennungselements nicht gleich der wahrscheinlichsten Hypothese des ersten Spracherkennungsele ments ist und/oder die Delta-Summe nicht größer als eine vorbestimmte Schwelle ist, weist das Verfahren weiterhin Folgendes auf: Vergleichen der wahrscheinlichsten Hypothese des ersten Spracherkennungselements mit der zweitwahrscheinlichsten Hypothese des zweiten Spracherkennungselements und, wenn die wahrscheinlichste Hypothese des ersten Spracherkennungselements gleich der zweitwahrscheinlichsten Hypothese des zweiten Spracherkennungselements ist und Delta 1 größer als eine zweite vorbestimmte Schwelle ist, Akzeptieren der wahrscheinlichsten Hypothese des ersten Spracherkennungselements.
  12. Ein Verfahren, wie in Anspruch 11, wobei, wenn die wahrscheinlichste Hypothese des ersten Spracherkennungselements nicht gleich der zweitwahrscheinlichsten Hypothese des zweiten Spracherkennungselements ist und/oder die Delta-Summe nicht größer als eine vorbestimmte Schwelle ist, weist das Verfahren weiterhin Folgendes auf: Vergleichen der wahrscheinlichsten Hypothese des zweiten Spracherkennungselements mit der zweitwahrscheinlichsten Hypothese des ersten Spracherkennungselements und, wenn die zweitwahrscheinlichste Hypothese des ersten Spracherkennungselements und Delta 2 größer als eine dritte vorbestimmte Schwelle ist, Akzeptieren der wahrscheinlichsten Hypothese des zweiten Spracherkennungselements.
  13. Das Verfahren gemäß Anspruch 10, wobei die Spracherkennungselemente (106, 108, 110) aus einer Gruppe ausgewählt werden, die aus dem sprecherunabhängigen Dynamic-Time-Warping, sprecherunabhängigen Hidden-Markov-Modell, sprecherabhängigen Dynamic-Time-Warping, sprecherabhängigen Hidden-Markov-Modell bestehen.
  14. Das Verfahren gemäß Anspruch 11, wobei die Spracherkennungselemente (106, 108, 110) aus einer Gruppe ausgewählt werden, die aus dem sprecherunabhängigen Dynamic-Time-Warping, sprecherunabhängigen Hidden-Markov-Modell, sprecherabhängigen Dynamic-Time-Warping, sprecherabhängigen Hidden-Markov-Modell bestehen.
  15. Das Verfahren gemäß Anspruch 12, wobei die Spracherkennungselemente (106, 108, 110) aus einer Gruppe ausgewählt werden, die aus dem sprecherunabhängigen Dynamic-Time-Warping, sprecherunabhängigen Hidden-Markov-Modell, sprecherabhängigen Dynamic-Time-Warping, sprecher-abhängigen Hidden-Markov-Modell bestehen.
DE60125542T 2000-07-18 2001-07-17 System und verfahren zur spracherkennung mit einer vielzahl von spracherkennungsvorrichtungen Expired - Lifetime DE60125542T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US618177 2000-07-18
US09/618,177 US6671669B1 (en) 2000-07-18 2000-07-18 combined engine system and method for voice recognition
PCT/US2001/022761 WO2002007148A1 (en) 2000-07-18 2001-07-17 System and method for voice recognition with a plurality of voice recognition engines

Publications (2)

Publication Number Publication Date
DE60125542D1 DE60125542D1 (de) 2007-02-08
DE60125542T2 true DE60125542T2 (de) 2007-10-11

Family

ID=24476623

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60125542T Expired - Lifetime DE60125542T2 (de) 2000-07-18 2001-07-17 System und verfahren zur spracherkennung mit einer vielzahl von spracherkennungsvorrichtungen

Country Status (10)

Country Link
US (1) US6671669B1 (de)
EP (1) EP1301922B1 (de)
CN (1) CN1188831C (de)
AT (1) ATE349751T1 (de)
AU (1) AU2001275991A1 (de)
DE (1) DE60125542T2 (de)
ES (1) ES2278763T3 (de)
HK (1) HK1057816A1 (de)
TW (1) TWI253056B (de)
WO (1) WO2002007148A1 (de)

Families Citing this family (59)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7003463B1 (en) 1998-10-02 2006-02-21 International Business Machines Corporation System and method for providing network coordinated conversational services
US6754629B1 (en) * 2000-09-08 2004-06-22 Qualcomm Incorporated System and method for automatic voice recognition using mapping
US20030004720A1 (en) * 2001-01-30 2003-01-02 Harinath Garudadri System and method for computing and transmitting parameters in a distributed voice recognition system
US20020143540A1 (en) * 2001-03-28 2002-10-03 Narendranath Malayath Voice recognition system using implicit speaker adaptation
US7941313B2 (en) 2001-05-17 2011-05-10 Qualcomm Incorporated System and method for transmitting speech activity information ahead of speech features in a distributed voice recognition system
US7203643B2 (en) * 2001-06-14 2007-04-10 Qualcomm Incorporated Method and apparatus for transmitting speech activity in distributed voice recognition systems
US7366673B2 (en) * 2001-06-15 2008-04-29 International Business Machines Corporation Selective enablement of speech recognition grammars
TW541517B (en) * 2001-12-25 2003-07-11 Univ Nat Cheng Kung Speech recognition system
US6996526B2 (en) * 2002-01-02 2006-02-07 International Business Machines Corporation Method and apparatus for transcribing speech when a plurality of speakers are participating
US7203652B1 (en) * 2002-02-21 2007-04-10 Nuance Communications Method and system for improving robustness in a speech system
JP4304952B2 (ja) * 2002-10-07 2009-07-29 三菱電機株式会社 車載制御装置、並びにその操作説明方法をコンピュータに実行させるプログラム
US20040138885A1 (en) * 2003-01-09 2004-07-15 Xiaofan Lin Commercial automatic speech recognition engine combinations
EP1603116A1 (de) * 2003-02-19 2005-12-07 Matsushita Electric Industrial Co., Ltd. Spracherkennungsanordnung und -verfahren
US7523097B1 (en) * 2004-01-13 2009-04-21 Juniper Networks, Inc. Restoration of archived configurations for a network device
KR100693284B1 (ko) * 2005-04-14 2007-03-13 학교법인 포항공과대학교 음성 인식 장치
CN1963918A (zh) * 2005-11-11 2007-05-16 株式会社东芝 说话人模板的压缩、合并装置和方法,以及说话人认证
US7970613B2 (en) 2005-11-12 2011-06-28 Sony Computer Entertainment Inc. Method and system for Gaussian probability data bit reduction and computation
US7778831B2 (en) 2006-02-21 2010-08-17 Sony Computer Entertainment Inc. Voice recognition with dynamic filter bank adjustment based on speaker categorization determined from runtime pitch
US8010358B2 (en) 2006-02-21 2011-08-30 Sony Computer Entertainment Inc. Voice recognition with parallel gender and age normalization
US8532984B2 (en) 2006-07-31 2013-09-10 Qualcomm Incorporated Systems, methods, and apparatus for wideband encoding and decoding of active frames
GB0616070D0 (en) * 2006-08-12 2006-09-20 Ibm Speech Recognition Feedback
US8239190B2 (en) 2006-08-22 2012-08-07 Qualcomm Incorporated Time-warping frames of wideband vocoder
US7813922B2 (en) * 2007-01-30 2010-10-12 Nokia Corporation Audio quantization
US8494847B2 (en) * 2007-02-28 2013-07-23 Nec Corporation Weighting factor learning system and audio recognition system
US7904410B1 (en) * 2007-04-18 2011-03-08 The Mathworks, Inc. Constrained dynamic time warping
US8352265B1 (en) 2007-12-24 2013-01-08 Edward Lin Hardware implemented backend search engine for a high-rate speech recognition system
US8639510B1 (en) 2007-12-24 2014-01-28 Kai Yu Acoustic scoring unit implemented on a single FPGA or ASIC
US8463610B1 (en) 2008-01-18 2013-06-11 Patrick J. Bourke Hardware-implemented scalable modular engine for low-power speech recognition
WO2010019831A1 (en) * 2008-08-14 2010-02-18 21Ct, Inc. Hidden markov model for speech processing with training method
US8442833B2 (en) 2009-02-17 2013-05-14 Sony Computer Entertainment Inc. Speech processing with source location estimation using signals from two or more microphones
US8788256B2 (en) 2009-02-17 2014-07-22 Sony Computer Entertainment Inc. Multiple language voice recognition
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
US8417526B2 (en) * 2009-03-13 2013-04-09 Adacel, Inc. Speech recognition learning system and method
US9026444B2 (en) 2009-09-16 2015-05-05 At&T Intellectual Property I, L.P. System and method for personalization of acoustic models for automatic speech recognition
US8812321B2 (en) * 2010-09-30 2014-08-19 At&T Intellectual Property I, L.P. System and method for combining speech recognition outputs from a plurality of domain-specific speech recognizers via machine learning
US20120168331A1 (en) * 2010-12-30 2012-07-05 Safecode Drug Technologies Corp. Voice template protector for administering medicine
US10032455B2 (en) 2011-01-07 2018-07-24 Nuance Communications, Inc. Configurable speech recognition system using a pronunciation alignment between multiple recognizers
US9153235B2 (en) 2012-04-09 2015-10-06 Sony Computer Entertainment Inc. Text dependent speaker recognition with long-term feature based on functional data analysis
CN104769668B (zh) 2012-10-04 2018-10-30 纽昂斯通讯公司 改进的用于asr的混合控制器
US9240184B1 (en) * 2012-11-15 2016-01-19 Google Inc. Frame-level combination of deep neural network and gaussian mixture models
CN105027198B (zh) * 2013-02-25 2018-11-20 三菱电机株式会社 语音识别系统以及语音识别装置
CN104143330A (zh) * 2013-05-07 2014-11-12 佳能株式会社 语音识别方法和语音识别系统
US20140337030A1 (en) * 2013-05-07 2014-11-13 Qualcomm Incorporated Adaptive audio frame processing for keyword detection
US9225879B2 (en) * 2013-12-27 2015-12-29 TCL Research America Inc. Method and apparatus for video sequential alignment
PH12017500352B1 (en) * 2014-08-28 2022-07-06 Nokia Technologies Oy Audio parameter quantization
CN104616653B (zh) * 2015-01-23 2018-02-23 北京云知声信息技术有限公司 唤醒词匹配方法、装置以及语音唤醒方法、装置
US10134425B1 (en) * 2015-06-29 2018-11-20 Amazon Technologies, Inc. Direction-based speech endpointing
US10536464B2 (en) * 2016-06-22 2020-01-14 Intel Corporation Secure and smart login engine
US10971157B2 (en) 2017-01-11 2021-04-06 Nuance Communications, Inc. Methods and apparatus for hybrid speech recognition processing
US10607601B2 (en) * 2017-05-11 2020-03-31 International Business Machines Corporation Speech recognition by selecting and refining hot words
CN109285548A (zh) * 2017-07-19 2019-01-29 阿里巴巴集团控股有限公司 信息处理方法、系统、电子设备、和计算机存储介质
GB2566759B8 (en) 2017-10-20 2021-12-08 Please Hold Uk Ltd Encoding identifiers to produce audio identifiers from a plurality of audio bitstreams
GB2566760B (en) * 2017-10-20 2019-10-23 Please Hold Uk Ltd Audio Signal
US12131228B2 (en) 2019-04-02 2024-10-29 International Business Machines Corporation Method for accessing data records of a master data management system
CN111128154B (zh) * 2019-12-03 2022-06-03 杭州蓦然认知科技有限公司 一种聚合形成交互引擎簇的方法及装置
CN111694331B (zh) * 2020-05-11 2021-11-02 杭州睿疆科技有限公司 生产工艺参数调整的系统、方法和计算机设备
US11664033B2 (en) * 2020-06-15 2023-05-30 Samsung Electronics Co., Ltd. Electronic apparatus and controlling method thereof
US11996087B2 (en) 2021-04-30 2024-05-28 Comcast Cable Communications, Llc Method and apparatus for intelligent voice recognition
CN115376513B (zh) * 2022-10-19 2023-05-12 广州小鹏汽车科技有限公司 语音交互方法、服务器及计算机可读存储介质

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4587670A (en) * 1982-10-15 1986-05-06 At&T Bell Laboratories Hidden Markov model speech recognition arrangement
US4783804A (en) * 1985-03-21 1988-11-08 American Telephone And Telegraph Company, At&T Bell Laboratories Hidden Markov model speech recognition arrangement
US4852180A (en) * 1987-04-03 1989-07-25 American Telephone And Telegraph Company, At&T Bell Laboratories Speech recognition by acoustic/phonetic system and technique
US5167004A (en) * 1991-02-28 1992-11-24 Texas Instruments Incorporated Temporal decorrelation method for robust speaker verification
AU671952B2 (en) * 1991-06-11 1996-09-19 Qualcomm Incorporated Variable rate vocoder
US5222190A (en) * 1991-06-11 1993-06-22 Texas Instruments Incorporated Apparatus and method for identifying a speech pattern
US5450522A (en) * 1991-08-19 1995-09-12 U S West Advanced Technologies, Inc. Auditory model for parametrization of speech
CA2126380C (en) * 1993-07-22 1998-07-07 Wu Chou Minimum error rate training of combined string models
US5839103A (en) * 1995-06-07 1998-11-17 Rutgers, The State University Of New Jersey Speaker verification system using decision fusion logic
US5754978A (en) * 1995-10-27 1998-05-19 Speech Systems Of Colorado, Inc. Speech recognition system
US5819220A (en) * 1996-09-30 1998-10-06 Hewlett-Packard Company Web triggered word set boosting for speech interfaces to the world wide web
US6003002A (en) * 1997-01-02 1999-12-14 Texas Instruments Incorporated Method and system of adapting speech recognition models to speaker environment
US5893059A (en) * 1997-04-17 1999-04-06 Nynex Science And Technology, Inc. Speech recoginition methods and apparatus
US6014624A (en) * 1997-04-18 2000-01-11 Nynex Science And Technology, Inc. Method and apparatus for transitioning from one voice recognition system to another
US6526380B1 (en) 1999-03-26 2003-02-25 Koninklijke Philips Electronics N.V. Speech recognition system having parallel large vocabulary recognition engines

Also Published As

Publication number Publication date
TWI253056B (en) 2006-04-11
ES2278763T3 (es) 2007-08-16
US6671669B1 (en) 2003-12-30
CN1188831C (zh) 2005-02-09
AU2001275991A1 (en) 2002-01-30
CN1454380A (zh) 2003-11-05
HK1057816A1 (en) 2004-04-16
ATE349751T1 (de) 2007-01-15
DE60125542D1 (de) 2007-02-08
EP1301922A1 (de) 2003-04-16
EP1301922B1 (de) 2006-12-27
WO2002007148A1 (en) 2002-01-24

Similar Documents

Publication Publication Date Title
DE60125542T2 (de) System und verfahren zur spracherkennung mit einer vielzahl von spracherkennungsvorrichtungen
DE60124408T2 (de) System und Verfahren für automatische Spracherkennung unter Verwendung von Mapping bzw. Abbildung
DE60124551T2 (de) Verfahren und vorrichtung zur erzeugung der referenzmuster für ein sprecherunabhängiges spracherkennungssystem
DE69433593T2 (de) Aufgeteiltes spracherkennungssystem
DE60024236T2 (de) Sprach endpunktbestimmung in einem rauschsignal
DE69826446T2 (de) Stimmumwandlung
DE69514382T2 (de) Spracherkennung
DE69616568T2 (de) Mustererkennung
DE69705830T2 (de) Sprachverarbeitung
DE69827667T2 (de) Vokoder basierter spracherkenner
DE69916255T2 (de) System und verfahren zur geräuschkompensierten spracherkennung
US6836758B2 (en) System and method for hybrid voice recognition
DE69311303T2 (de) Sprachtrainingshilfe für kinder.
DE69725172T2 (de) Verfahren und gerät zum erkennen von geräuschsignalproben aus einem geräusch
DE69032777T2 (de) Spracherkennung unter Anwendung von Stichwörtern und Nichtstichwörter-Modellierung
US20020010581A1 (en) Voice recognition device
EP1649450A1 (de) Verfahren zur spracherkennung und kommunikationsger t
US7136815B2 (en) Method for voice recognition
DE202017106303U1 (de) Bestimmen phonetischer Beziehungen
DE60034772T2 (de) Zurückweisungsverfahren in der spracherkennung
DE112004000187T5 (de) Verfahren und Vorrichtung der prosodischen Simulations-Synthese
US20010010039A1 (en) Method and apparatus for mandarin chinese speech recognition by using initial/final phoneme similarity vector
DE69512961T2 (de) Spracherkennung auf Grundlage von "HMMs"
DE60014583T2 (de) Verfahren und vorrichtung zur integritätsprüfung von benutzeroberflächen sprachgesteuerter geräte
EP1704561A1 (de) Verfahren und vorrichtung zur bearbeitung eines sprachsignals für die robuste spracherkennung

Legal Events

Date Code Title Description
8364 No opposition during term of opposition