[go: up one dir, main page]

DE2825082A1 - Verfahren zur spracherkennung - Google Patents

Verfahren zur spracherkennung

Info

Publication number
DE2825082A1
DE2825082A1 DE19782825082 DE2825082A DE2825082A1 DE 2825082 A1 DE2825082 A1 DE 2825082A1 DE 19782825082 DE19782825082 DE 19782825082 DE 2825082 A DE2825082 A DE 2825082A DE 2825082 A1 DE2825082 A1 DE 2825082A1
Authority
DE
Germany
Prior art keywords
pattern
spectrum
spectra
keyword
sections
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.)
Withdrawn
Application number
DE19782825082
Other languages
English (en)
Inventor
Stephen L Moshier
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.)
Dialog Systems Inc
Original Assignee
Dialog Systems 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 Dialog Systems Inc filed Critical Dialog Systems Inc
Publication of DE2825082A1 publication Critical patent/DE2825082A1/de
Withdrawn 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Complex Calculations (AREA)

Description

DR.-ING. DIPL-INS. M. SC. PIPL.-Pf'VS. DI DIPL.-PHYS.
HÖGER - STELLRECHT - GRlESSBACH - HAECKER
PATENTANWÄLTE IN STUTTGART
A 42 890 b Anmelder: DIALOG SYSTEMS, INC.
u - 163 32 Locust Street,
6.Juni 1978 Belmont, Massachusetts 02178
USA
Beschreibung Verfahren zur Spracherkennung
Die Erfindung betrifft ein Verfahren zur Sprachanalyse zum Zwecke der Erkennung von einem oder mehreren Schlüsselwörtern in einem kontinuierlichen Audio-Signal.
Verschiedene Spracherkennungssysteme sind bisher vorgeschlagen worden, mit denen isolierte Laute dadurch erkannt werden, dass ein unbekanntes isoliertes Audio-Signal nach einer geeigneten Verarbeitung mit einem oder mehreren vorher aufbereiteten Darstellungen des bekannten Schlüsselworts verglichen werden. In diesem Zusammenhang soll der Ausdruck "Schlüsselwort" sowohl eine verbundene Gruppe von Phonemen oder Tönen umfassen als auch beispielsweise einen Teil einer Silbe, eines Wortes, einer Phrase etc. Während viele Systeme einen begrenzten Erfolg erreichen konnten, ist insbesondere ein System mit Erfolg kommerziell zur Erkennung von isolierten Schlüsselwörtern verwendet worden. Dieses System arbeitet im wesentlichen nach dem im US-Patent 4 038 503 derselben Anmelderin (erteilt am 26.JuIi 1977) beschriebenen Verfahren. Dieses Verfahren liefert eine erfolgreiche Methode zur Erkennung eines Wortes aus einem beschränkten Schlüsselv/ortvokabulars, wobei die Voraussetzung gilt, dass die Begrenzungen der unbekannten Audio-Signaldaten entweder Ruhe oder Hintergrundrauschen sind, welche von dem Erkennungssystem festgestellt werden können.
309345/0893
Λ 42 890 b -6-
u - 163
6.Juni 19 78
Dieses System baut auf der Annahme auf, dass das Intervall, in welchen das unbekannte Audio-Signal auftritt, genau definiert ist und eine einzige Äusserung enthält.
Bei einem kontinuierlichen Audio-Signal, beispielsweise bei einem kontinuierlichen Konversationssignal, bei welchem die Grenzen der Schlüsselwörter nicht von vorneherein bekannt und markiert sind, ist von verschiedenen Methoden vorgeschlagen worden, die auftretenden Audiodaten in Segmente zu teilen, d.h. die Grenzen der Spracheinheiten, also der Phoneme, Silben, Wörter, Sätze etc., zu bestimmen, ehe der Erkennungsprozess eingeleitet wird. Diese früheren Erkennungssysteme für kontinuierliche Sprache haben jedoch nur einen begrenzten Erfolg gehabt, insbesondere da ein zufriedenstellendes Verfahren zur Segmentierung nicht gefunden werden konnte. Auch andere wesentliche Probleme sind noch ungelöst. Beispielsweise kann nur ein begrenztes Vokabular erkannt werden, wenn eine niedrige Fehlerkennungsrate gewünscht wird. Die Erkennung ist ausserordentlich empfindlich in Bezug auf Unterschiede in den Sprachcharakteristiken verschiedener Sprecher. Ausserdem sind die Verfahren gegenüber Verzerrungen des Audio-Signals hochempfindlich, wie sie beispielsweise in Audio-Signalen auftreten, die über eine gewöhnliche Telefonleitung übertragen werden. Obwohl der menschliche Hörer die kontinuierlichen Sprachsignale leicht erkennen und verstehen kann, hat bei einer maschinellen Erkennung selbst eines begrenzten Schlüsselwortvokabulars bei kontinuierlichen Sprachsignalen der entscheidende Durchbruch erst noch zu erfolgen.
309845/0 5
A 42 890 b - 7 - 0 Q O C Π Q ^
u - 163 2825UÖZ
6.Juni 1978
Der Erfindung liegt die Aufgabe zugrunde, ein Verfahren zur Spracherkennung zu schaffen, welches Schlüsselwörter in einem kontinuierlichen, unmarkierten Audio-Signal erkennen kann. Die Spracherkennung soll relativ unempfindlich auf Phasen- und Amplitudenverzerrungen der unbekannten Audio-Eingangssignale sein, relativ unempfindlich auf Schwankungen in der Sprachgeschwindigkeit des unbekannten Audio-Signals, es soll Sprachsignale verschiedener Sprecher und damit Sprachsignale mit verschiedenen Sprachcharakteristiken gleichgut erkennen und es soll im Echtzeitbetrieb arbeiten.
Diese Aufgabe wird erfindungsgemäss durch die in den Patentansprüchen beschriebenen Verfahren gelöst.
Bei dem erfindungsgemässen Verfahren, welches zur Erkennung mindestens eines vorbestimmten Schlüsselwortes in einem kontinuierlichen, unbegrenzten Audio-Eingangssignal dient, wird jedes Schlüsselwort durch eine Schablone charakterisiert, welche eine geordnete Folge von einem oder mehreren Zielmustern aufweist. Jedes Zielmuster umfasst eine Vielzahl von Kurzzeit-Schlüsselwort-Energiespektren, die zeitlich voneinander getrennt sind. Zusammen decken die Zielmuster alle wichtigen akustischen Ereignisse im Schlüsselwort ab. Nach dem erfindungsgemässen Verfahren wird aus dem Audio-Signal für jeden einer Vielzahl gleichlanger Probenabschnitte wiederholt ein Parametersatz bestimmt, der ein Kurzzeit-Energiespektrum beschreibt. Auf diese Weise erhält man eine ununterbrochene, zeitlich geordnete Folge von Kurzzeit-Audio-Energiespektrenabschnitten. Aus dieser Folge von Kurzzeit-Energiespektrenabschnitten wählt man wiederholt einen ersten Abschnitt und mindestens einen später auf-
S09845/0S93
A 42 890 b
6.Juni 1973
tretenden Abschnitt aus, und bildet aus diesen Abschnitten einen Mustersatz. Jeder dieser Mustersätze wird bei dem erfindungsgeraässen Verfahren vorzugsweise unter Verwendung einer Wahrscheinlichkeitsstatistik mit jedem ersten Zielmuster jeder Schlüsselwortschablone verglichen. Man entscheidet dann, ob jeder Mustersatz einem der ersten Zielmuster der Schlüsselwortschablonen entspricht. Bei jedem Mustersatz, der sich bei diesem Vergleich als einem ersten Zielmuster eines potentiellen Kandidaten-Schlüsselworts entsprechend herausstellt, werden später auftretende Abschnitte ausgewählt, aus denen später auftretende Mustersätze gebildet v/erden. Mit diesen später auftretenden Mustersätzen wird in gleicher Weise geprüft, ob sie entsprechend später auftretenden Zielmustern des potentiel len Kandidaten-Schlüsselwortes entsprechen. Wenn eine ausgewählte Folge von Mustersätzen den Zielmustern einer Schlüsselwortschablone entsprechen, wird dieses Schlüsselwort "erkannt".
In einem bevorzugten Ausführungsbeispiel des erfindungsgemässen Verfahrens ist weiterhin vorgesehen, die erzeugten Kurzzeit-Energiespektren (und vorzugsweise auch die Wahrscheinlichkeitsstatistiken) in einem first in-first out-Verfahren zu speichern, also derart, dass ein eine Folge von Spektren umfassender Block jederzeit für die Analyse zur Verfügung steht. Vorzugsweise entsprechen die Spektren jedes Mustersatzes Zeitintervallen des Audio-Eingangssignals, die um eine feste Zeitdauer auseinanderliegen, vorzugsweise um etwa 30 msec.
909845/0593
— Q _
Die nachfolgende Beschreibung bevorzugter Ausführungsformen der Erfindung dient im Zusammenhang mit der Zeichnung der näheren Erläuterung. Es zeigen:
Fig. 1 ein Flussdiagramm der wesentlichen Verfahrensschritte des erfindungsgemässen Verfahrens;
Fig. 2 ein schematisches Blockdiagramm einer elektronischen Vorrichtung zur Durchführung einiger Anfangsoperationen in dem in dem Flussdiagramm der Fig. 1 dargestellten Verfahren;
Fig. 3 ein Flussdiagramm eines digitalen Computerprogramms zur Durchführung einiger weiterer Verfahrensschritte des in Fig. 1 dargestellten Verfahrens und
Fig. 4 eine graphische Darstellung der Klassifizierungsgenauigkeit bei Verwendung verschiedener Transformationsverfahren.
Entsprechende Bezugszeichen bezeichnen in sämtlichen Zeichnungen entsprechende Teile.
In dem besonderen bevorzugten Ausführungsbeispiel, welches hier beschrieben wird, wird die Spracherkennung durch eine Vorrichtung erreicht, die sowohl speziell konstruierte elektronische Systeme zur Durchführung bestimmter analoger und digitaler Prozeduren an den eingehenden Sprachsignalen als auch einen digitalen Mehrzweckcomputer umfasst, der gemäss der vorliegenden Erfindung programmiert ist, um bestimmte Daten-
909845/0593
reduktionsschritte und numerische Auswertungen durchzuführen. Die Aufteilung der Aufgaben zwischen dem Hardware-Teil und dem Software-Teil des Systems ist so durchgeführt, dass man ein Gesamtsystem erhält, welches Spracherkennung im Echtzeitbetrieb zu geringen Kosten durchführen kann. Es wird jedoch darauf hingewiesen, dass einige der von den Hardware-Teilen des besonderen Systems durchgeführten Aufgaben ebenso auch in Software vorliegen können, während einige der durch die Software-Programmierung durchgeführten Aufgaben dieses Beispiels in einem anderen Ausführungsbeispiel ebenso mittels einer Vielzweckschaltungsanordnung gelöst werden können.
Wie bereits erwähnt, ist ein Aspekt der vorliegenden Erfindung die Schaffung einer Vorrichtung, welche bestimmte Wörter in einer Reihe kontinuierlicher Sprachsignale auch dann noch erkennt, wenn die Signale beispielsweise durch eine Telefonübertragungslinie verzerrt sind. Das in Fig. 1 dargestellte Spracheingangssignal 10 kann beispielsweise als ein Stimmensignal verstanden werden, welches von einem Telefonhörer erzeugt und über eine Telefonleitung übertragen wird, die eine beliebige Distanz überbrücken und eine Anzahl von Schaltstellen aufweisen kann. Eine typische Anwendung der vorliegenden Erfindung ist also die Erkennung von bestimmten Wörtern in einem Signalfluss, der über ein Telefonsystem von einer unbekannten Quelle erhalten wird. Das Eingangssignal kann aber auch jedes andere Audiosignal sein, beispielsweise ein gesprochenes Eingangssignal, das über ein Telekommunikationssystem erhalten wird, beispielsweise über einen kommerziellen Rundfunksender oder über eine private Funkverbindung.
909845/0593
5.Juni 1978
Wie sich im Verlaufe der folgenden Beschreibung verdeutlichen wird, betreffen das beschriebene Verfahren und die entsprechende Vorrichtung die Erkennung von Sprachsignalen, welche eine Folge von Tönen, Lauten oder "Phonemen" oder anderen erkennbaren Eigenschaften enthalten. In der folgenden Beschreibung und in den Ansprüchen werden die Ausdrücke "Schlüsselwort" (keyword), "Folge von Zielmustern" (sequence of target patterns). "Schablone (nmuster)"(template pattern) oder "Schlüsselwortschablone" (keyword template) verwendet, die alle als allgemeine und äquivalente Ausdrücke zu betrachten sind. Mit diesen Ausdrücken soll eine erkennbare Folge von Audiosignalen oder die Darstellung dieser Audiosignale bezeichnet werden, welche mit dem erfindungsgemässen Verfahren und der erfindungsgemässen Vorrichtung erkennbar sind. Diese Ausdrücke sollen so breit und allgemein verstanden werden, dass sie alles von einfachen Phonemen, Silben oder Lauten bis zu einer Wortreihe (im grammatikalischen Sinne) und auch ein einzelnes Wort umfassen.
Ein Analog-Digital-Converter (A/D) 13 empfängt das analoge Audioeingangssignal über die Leitung 10 und wandelt die Signalamplitude des Eingangssignals in digitale Form um. Der darge~ stellte Analog-Digital-Converter wandelt das Eingangssignal in eine Binärdarstellung mit 12 bit um, wobei die Umwandlungsgeschwindigkeit bei 8000 Umwandlungen pro Sekunde liegt. Der Analog-Digital-Converter 13 liefert seine Ausgangssignale über Leitungen 15 zu einem Autokorrelator 17. Dieser verarbeitet die digitalen Eingangssignale und erzeugt 100-mal pro Sekunde eine Kurzzeit-Autokorrelationsfunktion. Die Ausgangssignale werden Ausgangsleitungen 19 zugeführt. Jede Autokorrelationsfunktion umfasst 32 Werte oder Kanäle, wobei jeder Wert auf eine
909845/0593
30-bit-Auflösung berechnet wird. Der Autokorrelator wird weiter unten unter Bezugnahme auf Fig. 2 näher beschrieben.
Die über die Leitung 19 weitergegebenen Autokorrelationsfunktionen werden in einer entsprechenden Anordnung 21 einer Fourier-Transformation unterzogen, wodurch man die entsprechenden Kurzzeit-Energiespektrenabschnitte an den Leitungen 23 erhält. Die Spektren werden mit derselben Wiederholungsfrequenz wie die Autokorrelationsfunktion erzeugt, d.h. mit 100 pro Sekunde. Jedes Kurzzeit-Energiespektrum (power spectrum) hat einunddreissig numerische Terme mit einer Auflösung von 16 bit pro Term. Jeder dieser einunddreissig Terme im Spektrum repräsentiert die Signalleistung oder -energie innerhalb eines Frequenzbandes. Die Fourier-Transformationsanordnung umfasst vorzugsweise ein Hamming-Fenster oder eine vergleichbare Einrichtung, um Korrelationen mit den benachbarten Bändern herabzusetzen.
In dem dargestellten Ausführungsbeispiel werden die Fourier-Transformation sowie die folgenden Verarbeitungsschritte unter der Aufsicht eines entsprechend programmierten digitalen Vielzweckcomputers durchgeführt, wobei ein peripherer Array-Processor verwendet wird, um die Rechenoperationen zu beschleunigen, die bei dem erfindungsgemässen Verfahren wiederholt benötigt werden. Der im speziellen Fall verwendete Computer ist ein PDP-11-Computer, der von der Firma Digital Equipment Corporation of Maynard, Massachusetts, USA, hergestellt worden ist. Der besondere Array-Processor ist in der deutschen Patentanmeldung P (US-Patentanmeldung SN 841 39O) beschrieben. Das im folgenden unter Bezugnahme auf Fig. 3 beschriebene Programm ist im wesentlichen auf die Fähigkeiten
909845/0593
u - 163 - 13 -
5.Juni 1978
und Eigenschaften dieser im Handel erhältlichen Digital-Verarbeitungseinheiten abgestimmt.
Die Kurzzeit-Energiespektrenabschnitte werden bei 25 frequenzegalisiert, wobei diese Frequenzegalisierung als Funktion der Spitzenamplitude durchgeführt wird, die in jedem Frequenzband oder -kanal auftritt, wie dies im folgenden noch ausführlich beschrieben wird. Die frequenzegalisierten Spektren, die an der Leitung 26 anfallen, werden mit einer Rate von pro Sekunde erzeugt. Jedes Spektrum umfasst einunddreissig numerische Terme, die mit einer Genauigkeit von 16 bit vorliegen. Um die Endauswertung der Audioeingangssignale zu erleichtern, werden die frequenzegalisierten und begrenzten(windowc Spektren über die Leitung 26 einer Amplitudentransformationsvorrichtung 35 zugeführt, in welcher eine nicht-lineare Amplitudentransformation der Eingangsspektren erfolgt. Diese Transformation wird im folgenden ausführlich beschrieben, jedoch kann bereits jetzt festgestellt werden, dass diese Amplitudentransformation die Genauigkeit vergrössert, mit welcher das unbekannte Eingangs-Audiosignal mit Schlüsselwörtern in dem Referenzvokabular verglichen werden kann. In dem dargestellten Ausführungsbeispiel wird diese Transformation bei allen frequenzegalisierten und begrenzten Spektren vor dem Vergleich der Spektren mit den Schlüsselwortschablonen durchgeführt, welche die Schlüsselwörter in dem Vergleichvokabular darstellen.
Die an der Leitung 38 anstehenden, amplitudentransformierten und egalisierten Kurzzeitspektren werden dann in der Einrichtung 40 mit Schlüsselwortschablonen verglichen. Diese mit dem Bezugszeichen 42 bezeichneten Schlüsselwortschablonen stellen die
303845/0593
5.Juni 1978
Schlüsselwörter des Referenzvokabulars in einem spektralen Muster dar, mit welchem die transformierten und egalisierten Spektren verglichen v/erden kennen. Entsprechend der Nähe bei dem Vergleich werden auf diese Weise in die engere Wahl fallende Wörter, sogenannte Kandidatenwörter, herausgesucht. In dem dargestellten Ausführungsbeispiel soll bei diesem Auswahlprozess die Wahrscheinlichkeit eines übersehenen Schlüsselwortes verkleinert werden, während gleichzeitig unbrauchbare Muster weitgehend unberücksichtigt bleiben sollen. Die Kandidatenwörter (und gespeicherte statistische Daten, die sich auf die entsprechenden Eingangsdaten beziehen) werden über die Leitung 44 einer Nachentscheidungseinheit 46 zugeführt, in welcher die Zahl der unrichtigen Übereinstimmungsmeldungen reduziert wird. Diese Nachentscheidung, welche die Verwendung einer Prosodie-Maske und/oder eines Testes des Verhältnisses der Wahrscheinlichkeit bestimmter akustischer Niveaus umfasst, verbessert die Unterscheidung zwischen korrekten Zuordnungen und falschen Anzeigen, wie dies weiter unten ausführlich beschrieben wird.
Vorprocessor
In der in Fig. 2 dargestellten Vorrichtung wird aus dem digitalen Datenstrom, den der Analog-Digital-Converter 13 aus den analogen Audioeingangssignalen, in der Regel also aus einem Stimmsignal, erzeugt, eine Autokorrelationsfunktion mit ihrer zugehörigen Mittelung auf digitalem Wege erzeugt. Der Converter 13 erzeugt an der Leitung 15 ein digitales Eingangssignal. Die digitalen Verarbeitungsfunktionen und die eingangs erfolgende Analog-Digital-Umwandlung werden mittels eines Zeitgeberoszillators 51 gesteuert. Dieser Zeitgeberoszillator 51 liefert ein
909845/0*593
Basiszeitsignal mit 256000 Impulsen pro Sekunde, und dieses Signal wird einem Frequenzteiler 52 zugeführt, so dass man ein zweites Zeitsignal mit 8000 Impulsen pro Sekunde erhält. Das langsamere Zeitsignal steuert den Analog-Digital-Converter 13 und eine Halteschaltung 53, die die 12-bit-Ergebnisse der letzten Umwandlung festhält, bis die nächste Umwandlung vollendet ist.
Die gewünschten Autokorrelationsprodukte werden von einer digitalen Multipliziereinheit 56 erzeugt, welche die in der Halte schaltung 53 enthaltene Zahl mit dem Ausgangssignal eines 32-Wort-Schieberegisters 58 multipliziert. Das Schieberegister 58 wird im Zirkuliermode betrieben und von der schnelleren Zeitgeberfrequenz gesteuert, so dass ein vollständiger Datenumlauf während jeder Analog-Digital-Umwandlung vollendet wird. Ein Eingangssignal für das Schieberegister 58 wird an der Halteschaltung 53 einmal während jedes vollständigen Umlaufes entnommen. Ein Eingangssignal für die digitale Multipliziereinheit 56 kommt direkt von der Halteschaltung 53, während das andere Eingangssignal für die Multipliziereinheit (mit einer weiter unten beschriebenen Ausnahme) von dem laufenden Ausgangssignal des Schieberegisters über einen Multiplexer 59 herangeführt wird. Die Multiplikationen werden mit einer höheren Zeitgeberfrequenz durchgeführt.
Auf diese Weise wird jeder bei der Analog-Digital-Umwandlung erhaltene Wert mit jedem der vorhergehenden 31 Umwandlungswerte multipliziert. Für den Fachmann ist ersichtlich, dass die dabei erzeugten Signale einer Multiplikation des Eingangssignals mit sich selbst entsprechen, wobei die Signale selbst
$09845/0593
5.Juni 1978 - 16 -
um 32 verschiedene Zeitintervalle verzögert sind (wobei eines eine NuI!verzögerung ist). Um eine Korrelation mit Nullverzögerung, d.h. ein der Energie des Nullsignals entsprechendes Signal, zu erzeugen,veranlasst ein Multiplexer 59 die Multiplikation des laufenden Wertes mit sich selbst, und zwar zu einem Zeitpunkt, an dem der neue Wert in das Schieberegister eingeführt wird. Diese Zeitfunktion ist bei 60 dargestellt.
Wie sich für den Fachmann auch ergibt, sind die Produkte einer einzigen Umwandlung mit ihren 31 Vorgängern nicht sonderlich repräsentativ für die Energieverteilung oder das Spektrum des Signals über ein vernünftiges Probenintervall. Daher sieht die Vorrichtung der Fig. 2 eine Mittelung dieser Sätze von Produkten vor.
Ein diese Mittelung bewirkender Akkumulationsprozess erfolgt durch ein 32-Wort-Schieberegister 63, welches mit einer Addiereinheit 65 verbunden ist und so einen Satz von 32 "Akkumulatoren" bildet. Auf diese Weise kann jedes Wort zirkuliert werden, nachdem zu ihm das entsprechende Inkrement der digitalen Multipliziereinheit addiert worden ist. Die Zirkulierschleife läuft durch ein Tor 67, welches von einer mit der niederen Frequenz des Zeitgebers betriebenen Teilerschaltung 69 gesteuert wird. Der Teiler 69 teilt das niederfrequente Zeitgebersignal durch einen Faktor N, der die Zahl von augenblicklichen Autokorrelationsfunktionen bestimmt, die akkumuliert und dadurch gemittelt werden sollen, bis das Schieberegister 63 ausgelesen wird.
In dem bevorzugten Beispiel werden vor der Auslesung 80 Werte
009845/0 593
,978
akkumuliert. Mit anderen Worten, N für den durch N dividierenden Teiler ist achtzig. Wenn achtzig Werte auf diese Weise korreliert und akkumuliert worden sind, triggert die Teilerschaltung 69 eine Computerunterbrecherschaltung 71 über eine Leitung 72. Zu diesem Zeitpunkt wird der Inhalt des Schieberegisters 63 über eine geeignete Anpass- oder Übertragungsschaltung 73 schrittweise in den Speicher des Computers eingelesen, wobei die zweiunddreissig Wörter des Registers über die Schaltung 73 in geordneter Folge dem Computer zugeführt werden. Wie für den Fachmann klar ist, kann die übertragung der Daten von der peripheren Einheit, dem Autokorrelations-Vorprocessor, in den Computer typischerweise durch einen Prozess mit direktem Zugang zum Speicher erfolgen. Ausgehend von der Mittelung von achtzig Werten und einer anfänglichen Erzeugungsrate von 8000 Werten pro Sekunde ergibt sich, dass dem Computer in jeder Sekunde 100 gemittelte Autokorrelatxonsfunktionen zugeführt werden.
Während der Inhalt des Schieberegisters in den Computer eingelesen wird, ist das Tor 67 geschlossen, so dass jedes der Wörter in dem Schieberegister effektiv auf Null zurückgesetzt wird, so dass die Akkumulation von neuem beginnen kann.
Mathematisch kann die Operation der in Fig. 2 dargestellten Vorrichtung wie folgt beschrieben werden. Wenn man annimmt, dass der Analog-Digital-Converter eine Zeitserie S(t) erzeugt, wobei t = 0, T , 2T .... und T das Probenintervall (im beschriebenen Ausführungsbeispiel 1/8000 see) darstellt, dann kann man annehmen, dass die beschriebene, digitale Korrelationsschaltung der Fig. 2 die folgende Autokorrelationsfunktion erzeugt, wobei üngenauigkeiten beim Beginn unberücksichtigt
909845/0593
u - 163
5.Juni 1978 - 18 -
bleiben:
ti« 80
Ϊ (j/t) = ψ S(t-kTo) S(t-(k + j) To) (Gleichung 1)
k=1
wobei j = O, 1, 2 ..., 31; t = 80 TQ, 160 TQ, ...., 8On TQ,... Diese Autokorrelationsfunktionen entsprechen dem korrelierten Ausgangssignal auf der Leitung 19 in Fig. 1.
Die bei 77 in Fig. 3 dargestellte Funktion bedeutet also, dass der Digitalkorrelator fortlaufend arbeitet und dem Computer eine Reihe von Datenblöcken übermittelt, wobei alle zehn Millisekunden eine vollständige Autokorrelationsfunktion geliefert wird. Jeder Datenblock stellt eine Autokorrelationsfunktion dar, die von dem entsprechenden Zeitunterintervall abgeleitet ist. Wie bereits angegeben, werden diese Autokorrelationsfunktionen dem Computer mit einer Rate von einhundert 32-Wort-Funktionen pro Sekunde übermittelt.
In der beschriebenen Ausführungsform wird die Weiterverarbeitung von diesem Punkt an durch einen geeigneten programmierten digitalen Mehrzweckcomputer übernommen. In Fig. 3 ist ein Flussdiagramm dargestellt, welches auch die Funktionen umfasst, die dieses Computerprogramm beisteuert. Es soll jedoch noch einmal darauf hingewiesen werden, dass verschiedene dieser Schritte ebensogut durch Hardware wie durch Software durchgeführt werden können, ebenso wie bestimmte von der Vorrichtung der Fig. 2 ausgeführte Funktionen zusätzlich in der Software enthalten sein können, wobei man dann das Flussdiagramm der Fig. 3 entsprechend abändern müsste.
909845/0593
u - 163 - 19 -
5.Juni 1978
Obwohl der Digitalkorrelator der Fig. 2 eine gewisse Zeitmittelung der jeweils augenblicklich erzeugten Autokorrelationsfunktionen durchführt, können die in den Computer eingelesenen Autokorrelationsfunktionen immer noch einige anomale ünstetigkeiten oder ungleiche Verläufe aufweisen, die einer ordnungsgemässen Weiterverarbeitung und Auswertung der Werte entgegenstehen. Aus diesem Grunde wird jeder Datenblock, d.h. jede Autokorrelationsfunktion \ (j,t), zuerst bezüglich der Zeit geglättet. Dies ist in dem Flussdiagramm der Fig. 3 bei 79 angedeutet. Der bevorzugte Glättungsprozess ist ein Verfahren, bei welchem das geglättete Ausgangssignal ^ (j/t) gegeben ist durch den Ausdruck
(Gleichung 2) Ψ s(j,t) = C0V (j,t) + C1Y (j,t - τ) + C2 f (j,t + T)
wobei τ (j,t) die ungeglättete, in Gleichung 1 definierte Eingangsautokorrelation, ψ (j,t) die geglättete Ausgangsautokorrelation, j die Zeitverzögerung, t die Realzeit und T das Zeitintervall zwischen aufeinanderfolgend erzeugten Autokorrelationsfunktionen (T = 0,01 Sekunden in dem bevorzugten Ausführungsbeispiel) darstellen. Die Gewichtsfunktionen CQ, C1, C2 werden in dem bevorzugten Ausführungsbeispiel vorzugsweise zu 1/2, 1/4 bzw. 1/4 gewählt, obwohl andere Werte gewählt werden können. Beispielsweise kann in die Computer-Software eine Glättungsfunktion eingearbeitet werden, die einen annähernd Gauss-förmigen Impuls mit einer Abschneidefrequenz von beispielsweise 20 Hertz ergibt. Versuche haben jedoch ergeben, dass die vorstehend angegebenen, leichter zu verarbeitenden Werte·zu einer Glättungsfunktion führen, die zufriedenstellende Ergebnisse zeigt. Wie angegeben, wird diese Glättungsfunktion getrennt für jeden Verzögerungswert j angewendet. Wie bei 81
809845/0593
angedeutet, wird jede Autokorrelationsfunktion V (j-t)
einer Cosinus-Fourier-Transformation unterzogen, so dass sich ein 31-Punkte-Energiespektrum (power spectrum) ergibt. Das Spektrum ist durch den folgenden Ausdruck definiert
31 .*,
S(f,t) =Ψ (0, t) W (0) + 2 Σ V_(j,t) W (j) cos 27/ f j s . .. s
J 8000
(Gleichung 3)
wobei S (f,t) die spektrale Energie in einem Band angibt, dessen Zentrum bei f Hz liegt. Die Energie wird zur Zeit t bestimmt. W (j) = 1/2 (1 + cos 2/Γΐ) ist die Hamming-Abschneide- oder Fensterfunktion, mit welcher seitliche Bänder unterdrückt werden, ψ (j,t) ist die geglättete Autokorrelationsfunktion bei einer Verzögerung j und einer Realzeit t. Ausserdem gilt die Beziehung
1/0,063 f = 30 + 1000 (O,O552m + 0,438) Hz; m=1, 2, ... , 31
(Gleichung 4)
wobei diese Frequenzen in der "mel"-Skala der Tonhöhe (pitch) gleichen Abstand haben. Dies entspricht also einer subjektiven Tonhöhen-Frequenzachse (mel-Skala) für Frequenzen in der Bandbrei ta eines typischen Übertragungskanals zwischen etwa 300 und 3500 Hertz. Es ist auch klar, dass jeder Punkt oder Wert innerhalb jedes Spektrums ein entsprechendes Frequenzband darstellt. Man kann diese Fourier-Transformation vollständig innerhalb der konventionellen Computer-Hardware durchführen, das Verfahren kann jedoch wesentlich beschleunigt werden, wenn man eine externe Hardware-Multipiiziereinheit oder eine Schnell-Fourier-Transformationsvorrichtung (FFT) benutzt. Aufbau und
3O98A5/0B93
Betriebsweise derartiger Einheiten sind bekannt und werden daher in diesem Zusammenhang nicht ausführlich beschrieben. Vorzugsweise wird der Hardware-Schnell-Fourier-Transformationsvorrichtung (FFT) eine periphere Einheit mit einer Frequenzglättungsfunktion zugeordnet, worin jedes der Spektren entsprechend der bevorzugten Hamming-Abschneide-Wichtungsfunktion W (j), die oben definiert wurde, frequenzmässig geglättet wird. Dies wird innerhalb des Blockes 85 durch das Bezugszeichen angedeutet, wobei 85 die Hardware-Fourier-Transformationseinrichtung kennzeichnet.
In dem Maße, wie fortlaufend geglättete Energiespektren von der Schnell-Fourier-Transformationseinheit 85 erhalten werden, wird eine Übertragungskanal-Egalisierungsfunktion erhalten, indem man ein (im allgemeinen unterschiedliches) Energiespitzenspektrum (peak power spectrum) für jedes von der Einheit 85 ankommende, begrenzte oder abgeschnittene (windowed) Energiespektrum bestimmt/
/und die Ausgä"ngssignale der Schnell-Fourier-Transformationseinheit in der unten beschriebenen Weise entsprechend modifiziert. Jedes neu gebildete Spitzenamplitudenspektrum y (f,t), welches den ankommenden abgeschnittenen Energiespektren S (f,t) entspricht, wobei f über die Frequenzbänder des Spektrums läuft, ist das Ergebnis einer schnell ansteigenden, langsam abfallenden Spitzenfeststellfunktion für jeden Kanal des Spektrums oder jedes Band des Spektrums. Die abgeschnittenen Energiespektren werden mit Hilfe der jeweiligen Terme des entsprechenden Spitzenamplitudenspektrum normalisiert. Dies wird durch das Bezugszeichen 87 gekennzeichnet.
Bei dem dargestellten Ausführungsbeispiel werden die Werte des "alten" Spitzenamplitudenspektrum y (f,t-T), welches vor dem
5.Juni 1978 - 22 -
Empfang eines neuen, abgeschnittenen Spektrum bestimmt worden ist, Frequenzband für Frequenzband mit dem neu eingehenden Spektrum S(f,t) verglichen. Das neue Spitzenspektrum y (f,t) wird dann entsprechend der folgenden Regeln erhalten. Die Energieamplitude in jedem Band des "alten" Spitzenamplitudenspektrums wird mit einem festen Bruch multipliziert, beispielsweise im beschriebenen Ausführungsbeispiel 511. Das entspricht
5Ϊ2" dem langsam abfallenden Teil der Spitzenauffindfunktion. Wenn die Energieamplitude in einem Frequenzband f des ankommenden Spektrums S (f,t) grosser ist als die Energieamplitude im entsprechenden Frequenzband des verkleinerten Spitzenamplitudenspektrums, dann wird der Wert des verkleinerten Spitzenamplitudenspektrums für dieses Frequenzband oder für diese Frequenzbänder durch den jeweiligen Wert des Spektrums des eingehenden, abgeschnittenen Spektrums in dem entsprechenden Frequenzband ersetzt. Das gleiche gilt für den schnell ansteigenden Teil der Spitzenauffindfunktion. Mathematisch kann diese Spitzenauffindfunktion folgendermassen ausgedrückt werden
r )
y(f,t) = max ^ y (f, t-T) · (1-E) , S(f,t)'j (Gleichung 5)
wobei f über alle Frequenzbänder läuft, y (f,t) das sich ergebende Spitzenspektrum bezeichnet, y (f,t-T) das "alte" oder vorhergehende Spitzenspektrum darstellt, S(f,t) das neu ankommende Energiespektrum darstellt und E der Abfall- oder Verkleinerungsparameter ist. Nach der Erzeugung des Spitzenspektrums wird dieses bei 89 frequenzegalisiert, indem man den Spitzenwert jedes Frequenzbandes mit den Spitzenwerten der benachbarten Frequenzen des neu gebildeten Spitzenspektrums mittelt, wobei die Breite des Frequenzbandes, welches zu der
$09845/0593
5.Juni 1978
Mittelung beiträgt, etwa gleich dem typischen Frequenzabstand zwischen Formantfrequenzen ist. Für Fachleute der Spracherkennung ist ersichtlich, dass dieser Abstand in der Grössenordnung von 1000 Hz liegt. Wenn man in dieser speziellen Weise mittelt, dann wird die nutzbare Information in den Spektren, d.h. die lokalen Variationen, die die Formantresonanzen zeigen, aufrechterhalten, während eine Insgesamt- oder Bruttobetonung im FrequenzSpektrum unterdrückt wird. Das sich ergebende geglättete Spitzenamplitudenspektrum y(f,t) wird dann dazu verwendet, das gerade erhaltene Energiespektrum S(f,t) zu normalisieren und bezüglich der Frequenz zu egalisieren, indem man den Amplitudenwert jedes Frequenzbandes des eingehenden, geglätteten Spektrums S(f,t) durch den Wert des entsprechenden Frequenzbandes in dem geglätteten Spitzenspektrum y(f,t) dividiert. Mathematisch wird das durch die folgende Gleichung angegeben:
Sn (f,t) = S(f,t) / y(f,t) (Gleichung 6)
wobei Sn(f,t) das mit Hilfe des Spitzenspektrums normalisierte, geglättete Energiespektrum darstellt und f über alle Frequenzbänder läuft. Dieser Schritt ist mit dem Bezugszeichen 91 gekennzeichnet. Man erzeugt damit eine Folge von frequenzegalisierten, normalisierten, Kurzzeit-Energiespektren, die Änderungen im Frequenzinhalt des eingehenden Audio-Signals betonen, während sie allgemeine Frequenzbetonungen oder Verzerrungen unterdrücken. Es hat sich herausgestellt, dass dieses Verfahren zur Frequenzkompensation bei der Erkennung von über Telefonleitungen übermittelten Sprachsignalen äusserst vorteilhaft ist gegenüber den gebräuchlicheren Systemen der Frequenzkompensation, bei welcher als Basis der Kompensation der Durch-
SOS646/0693
5.Juni 1978
schnittswert entweder des gesamten Signals oder des entsprechenden Frequenzbandes genommen wird.
An dieser Stelle soll darauf hingewiesen werden, dass die aufeinanderfolgenden Spektren zwar auf verschiedene Weise bearbeitet und egalisiert worden sind, dass aber die Daten, die das gesprochene Wort repräsentieren, immer noch Spektren umfassen, die mit einer Rate von 100 pro Sekunde angeliefert werden.
Die normalisierten und frequenzegalisierten Spektren, wie sie bei 91 erhalten werden, werden dann einer Amplitudentransformation unterworfen (Bezugszeichen 93). Dadurch erhält man eine nicht-lineare Skalierung der Amplitudenwerte des Spektrums. Wenn man die individuellen egalisierten und normalisierten Spektren mit sn(f,t) (aus Gleichung 6) bezeichnet, wobei f über die verschiedenen Frequenzbänder des Spektrums läuft und t die Realzeit angibt, dann ergibt sich das nicht-linear-skalierte Spektrum x(f,t) aus der linearen Bruchfunktion
Y/f ,, _ Sn(fft) " A (Gleichung 7A)
x<r'r; ~ Sn(f,t) + A
wobei A der Durchschnittswert des Spektrums S (f,t) ist, der sich aus der folgenden Beziehung ergibt:
31
A = -jl- ΣΓ=1 Sn(fb,t) (Gleichung 7B)
wobei f, über die Frequenzbänder des Energiespektrums läuft.
50384B/0B93
u - 163 25 9 8 75 08
5.Juni 1978 C 0Δ 0UÖ
Diese Skalierfunktion erzeugt einen sanften Schwell- und einen allmählichen Sättigungseffekt für die spektralen Intensitäten, die stark von dem Kurzzeitdurchschnitt A abweichen. Mathematisch ist diese Funktion für Intensitäten in der Nähe des Durchschnittswertes annähernd linear; für Intensitäten, die weiter von dem Durchschnittswert entfernt sind, ist sie annähernd logarithmisch; und für Extremwerte der Intensität ist sie im wesentlichen eine Konstante. In einer logarithmischen Darstellung ist die Funktion x(f,t) zum Nullpunkt symmetrisch und zeigt ein Schwell- oder Ansteigs- sowie ein Sättigungsverhalten, das in etwa dem Impulserzeugungsverhalten eines Gehörnerves entspricht. In der Praxis arbeitet das Spracherkennungssystem mit dieser speziellen nicht-linearen Skalierfunktion besser als mit einer linearen oder logarithmischen Skalierfunktion.
Auf diese Weise hat man eine Folge von amplitudentransformierten, frequenzegalisierten, normalisierten Kurzzeitenergiespektren x(f,t) erzeugt, wobei t die Werte 0,01, 0,02, 0,03, O,04, ... Sekunden und f die Werte 1 .... 31 (entsprechend den Frequenzbändern der erzeugten Energiespektren) durchlaufen. Für jedes Spektrum werden zweiunddreissig Wörter erzeugt; und der Viert A (Gleichung 7D) , also der Durchschnittswert des Spektrumwertes, ist in dem zweiunddreissigsten Wort gespeichert. Das arnplituderitransformierte Kurzzeit-Energiespektrum wird, wie durch das Bezugszeichen 95 gekennzeichnet, in einem aojünannten first- in-f irst-out-Zirkuiierspeieher gespeichert, dar in dem dargestellten Ausführungsbeispiei eine Προ ichcrktipaz Ltat von 256 zweiunddreissiy-Wort-Spektren aufweist. Für die Anaiv^o stehen also 2,56 Sekunden des Audio-Eingangss icjnats sur Vor-
80984 5/0593
u - 163 - 26 -
5. Juni 1978
fügung. Diese Speicherkapazität versieht das Spracherkennungssystem mit der Flexibilität, die zur Auswahl von Spektren zu verschiedenen Realzeiten notwendig ist, damit die Analyse und Auswertung durchgeführt werden kann. Es wird dadurch möglich, je nach den Erfordernissen der Analyse in der Zeit vorwärts und zurückzugehen.
Die amplitudentransformierten Energiespektren für die letzten 2,56 Sekunden sind also in dem Zirkulierspeicher enthalten und bei Bedarf zugänglich. Beim Betrieb des beschriebenen Ausführungsbeispiels wird jedes amplitudentransformierte Energiespektrum 2,56 Sekunden lang gespeichert. Ein Spektrum, welches zu einer Zeit t^ in den Zirkulierspeicher eintritt, wird 2,56 Sekunden später gelöscht oder weitergeleitet, wenn ein neues, der Zeit t, + 2,56 Sekunden entsprechendes transformiertes Amplitüdenspektrum eingespeichert wird.
Die transformierten und egalisierten Kurzzeit-Energiespektren, die durch den Zirkulierspeicher laufen, werden, vorzugsweise im Echtzeitbetrieb, mit einem bekannten Vokabular von Schlüsselwörtern verglichen, um diese Schlüsselwörter in dem kontinuierlichen Audiodatenstrom zu entdecken oder herauszufinden.
Jedes Schlüsselwort des Vokabulars wird durch eine Schablone (template pattern) dargestellt, welche in statistischer Weise eine Vielzahl von verarbeiteten Energiespektren darstellt, die in der Form eines Mehrfachsatzes von nicht-überläppenden Spektren vor Liegen; ein jolcher Mehrfachsatz (vorzugsweise drei Spektren) wird Lm folgenden aLs "Muster (satz)" (design set pattern) bezeichnet. Diese Muster werden vorzugsv/eise so aus-
908845/0593
gewählt, dass sie die bedeutsamen akustischen Ereignisse des Schlüsselwortes am besten darstellen.
Die Spektren, die die Muster bilden, v/erden für Schlüsselwörter erzeugt, die in verschiedenen Kontexten gesprochen werden, indem man dasselbe System zur Verarbeitung der kontinuierlichen, unbekannten Sprachsignale an der Leitung 10 benützt, welches oben beschrieben worden ist.
Jedem Schlüsselwort des Vokabulars ist also eine im allgemeinen
mehrfache Folge von Mustern P (i).. , P (i) - t zugeordnet,
welche auf der Basis von Kurzzeit-Energiespektren eine Darstellung des i-ten Schlüsselwortes geben. Die Sammlung der Muster für jedes Schlüsselwort bilden die statistische Basis, aufgrund welcher die sogenannten "Zielmuster" oder "Zielmustersätze" (target patterns) gebildet werden.
In dem beschriebenen Ausführungsbeispiel der Erfindung können die Muster P(i). jedes als ein Array mit 96 Elementen aufgefasst werden, welche drei ausgewählte Kurzzeit-Energiespektren enthalten, die in einer Reihe angeordnet sind. Die Energiespektren, welche die Muster aufbauen, sollten vorzugsweise mindestens 30 Millisekunden voneinander getrennt sein, um Kreuzkorrelationen infolge der Glattungsprozesse im Zeitbereich auszuschalten/ Bei anderen Ausgestaltungen der Erfindung können auch andere Auswahlkriterien für die Auswahl der Spektren verwendet werden. Vorzugsweise werden jedoch die Spektren so ausgewählt, dass sie einen konstanten Zeitabstand aufweisen, vorzugsweise 30 Millisekunden, und dass sich die nicht-überlappenden Muster über das gesamte, das Schlüsselwort definierende Zeitintervall erstrecken. Ein erstes Muster P.. entspricht
309845/0593
also einem Teil des Schlüsselwortes in der Nähe von dessen Anfang, ein zweites Muster P_ entspricht einem in der Zeit später folgenden Teil des Schlüsselwortes etc. Die Muster P1, P2 ... bilden die statistische Basis für eine Reihe oder Folge von Zielmustern, die ihrerseits wieder die Schlüsselwortschablone aufbauen, mit welcher die eingehenden Audiodaten verglichen werden. Die Zielmuster oder Zielmustersätze t.. , tetc. umfassen jeweils die statistischen Daten, wobei man annimmt, dass P(i). aus unabhängigen Gauss'sehen Variablen bestehen, welche es ermöglichen, eine Wahrscheinlichkeitsstatistik zwischen ausgewählten Mustersätzen, die weiter unten definiert v/erden, und den Zielmustern zu erzeugen. Die Zielmuster bestehen also aus einem Array, deren Glieder auch die mittlere Standardabweichung und den Flächennormalisierungsfaktor für eine entsprechende Sammlung von Muster-Array-Gesamtheiten umfassen. Eine verfeinerte Wahrscheinlichkeitsstatistik ist weiter unten beschrieben.
Für den Fachmann ist es klar, dass praktisch alle Schlüsselwörter verschieden ausgesprochen werden können, je nach dem Kontext und/oder der Stelle, an welcher sie stehen. Es gibt daher mehr als eine "Schreibweise" der Muster. Ein Schlüsselwort mit dem Muster P1, P„, von dem weiter oben gesprochen worden ist, kann also tatsächlich geschrieben werden als p(i).,, p(i)2·.·· i = 1f2 , .... M, wobei jedes der p(i)■ mögliche alternative Schreibweisen der j-ten Klasse von Mustern darstellt, wobei insgesamt M verschiedene Schreibweisen des Schlüsselwortes möglich sind.
SD&845/0593
5.Juni 1978
Die Zielmuster t.. , t2, ..., t., .... stellen also im allgemeinsten Sinn jeweils mehrere statistische Aussprachealternativen für die i-te Gruppe oder Klasse der Muster dar. In dem beschriebenen Ausführungsbeispiel wird also der Ausdruck "Zielmuster" im allgemeinsten Sinn verwendet, und jedes Zielmuster kann daher mehr als eine zulässige alternative "statistische Schreibweise" haben.
Verarbeitung der gespeicherten Spektren
Die bei 95 gespeicherten, die eingehenden, kontinuierlichen Audiodaten darstellenden Spektren werden mit den gespeicherten, aus einer Folge von Zielmustern bestehenden Schablonen (Bezugszeichen 96) verglichen, wobei die Schablonen Schlüsselwörter des Vokabulars darstellen. Dieser Vergleich wird in der im folgenden beschriebenen Weise vorgenommen. Jedes nacheinander ankommende, transformierte, frequenzegalisierte Spektrum wird als das erste Spektrum eines mehrere Spektren umfassenden Satzes aufgefasst, im vorliegenden Beispiel eines Satzes mit drei Spektren, der einem Vektor mit 9 6 Elementen entspricht. Das zweite und dritte Spektrum dieses Satzes entspricht in dem beschriebenen Ausführungsbeispiel Spektren, die (in Realzeit) 30 bzw. 60 Millisekunden später auftreten. In dem sich ergebenden, mit 97 gekennzeichneten Muster bildet also das erste ausgewählte Spektrum die ersten 32 Elemente des Vektors, das zweite ausgewählte Spektrum die zweiten 32 Elemente des Vektors und das dritte ausgewählte Spektrum die dritten 3 2 Elemente des Vektors.
90984B/0593
Vorzugsweise wird jeder auf diese Weise gebildete Mustersatz entsprechend den folgenden Methoden transformiert, um Kreuzkorrelationen herabzusetzen und um die Dimension zu verringern. Ausserdem soll dadurch die Trennung zwischen Zielmusterklassen vergrössert werden. Dies wird mit dem Bezugszeichen 99 gekennzeichnet. Die transformierten Muster werden in dem dargestellten Ausführungsbeispiel dann als Eingangssignale für eine statistische Wahrscheinlichkeitsberechnung verwendet, die mit dem Bezugszeichen 100 gekennzeichnet ist. Diese Wahrscheinlichkeitsberechnung ergibt ein Maß für die Wahrscheinlichkeit, dass das transformierte Muster einem Zielmuster entspricht.
!flustertrans formation
Wenn man zuerst die Mustertransformation betrachtet und dazu eine Matrixschreibweise verwendet, dann kann jeder Mustersatz durch einen 96-spaltigen Vektor χ = (χ.. , χ_ .... Xgg) dargestellt werden, wobei X1, x2 ··./ x->2 ^ie Elemente x(fft-) des ersten Spektrums des Musters, x„, x,...., xfi. die Elemente x(f,t_) des zweiten Spektrums des Musters und Xf-r/ χκρ;····'χακ die Elemente x(f,t,) des dritten Spektrums des Musters darstellen. Experimentell stellt man fest, dass die meisten Elemente x. des Vektors χ Wahrscheinlichkeitsverteilungen aufweisen, so dass sie symmetrisch um ihren Mittelwert angeordnet sind. Eine Gauss'sehe Wahrscheinlichkeitsdichteverteilung passt sich daher gut der Verteilung jedes x^ an, welches über eine Probe einer bestimmten fluster Sammlung läuft, die einem bestimmten Zielmuster entspricht. Viele Paare von Elementen x., x. stellen sich als in erheblicher Weise korreliert heraus, so dass die Annahme, die Elemente des Vektors χ seien gegenseitig unabhängig und unkorreliert, ungerechtfertigt ist. Die
9345/0 5
5.Juni 1978
Korrelationen zwischen den Elementen der verschiedenen Spektren in dem Mustersatz ergeben weiterhin eine Information über die Richtung der Bewegung der Formantresonanzen in dem Eingangssprachsignal, und diese Information bleibt relativ konstant auch dann, wenn die Durchschnxttsfrequenzen der Formantresonanzen sich verändern sollten, beispielsweise von einem Sprecher zum anderen. Wie dies wohl bekannt ist, stellen die Richtungen der Bewegung der Formantresonanzfrequenzen wichtige Schlüssel für die menschliche Spracherkennung dar. In bekannter Weise kann die Wirkung der Kreuzkorrelation zwischen den Elementen von χ durch die Verwendung der Gauss'sehen Multivariationslog-Wahrscheinlichkeitsstatistik (multivariata Gaussian log likelihood statistic) berücksichtigt werden.
-L = 1/2(x-x)K~1 (x-x)11 + 1/2 ln//K// (Gleichung 8A)
wobei χ der Summenmittelwert von χ ist und wobei K die Matrix der Kovarianzen zwischen allen Elementpaaren von χ ist. Die Elemente der Matrix K sind in der folgenden Weise definiert:
K. . = (x.-x.) (x.-x.), (Gleichung 8B)
lj χι Jj
//K// bezeichnet die Determinante der Matrix K. Die Kovarianzmatrix K kann mit bekannten Methoden in die folgende Eigenvektordarstellung zerlegt werden
K = EVEt (Gleichung 8C)
wobei E die Eigenvektormatrix e.^ von K ist. V ist die Diagonalmatrix mit den Eigenwerten v. von K. Diese Grossen sind durch die folgende Beziehung definiert
S09845/0E93
5.Juni 1978
Ke. = v^. (Gleichung 8D)
Die Multiplikation mit der Matrix E entspricht einer Drehung in dem 96-dimensionalen Raum, in dem die Vektoren χ dargestellt sind. Wenn man nun einen transformierten Vektor w definiert als
w = E (x-x) t (Gleichung 8E)
dann kann die Wahrscheinlichkeitsstatistik in folgender Form neu geschrieben werden
-L= 1/2 WV-1W*1 + 1/2 In //K//
96 Iv 2
= 1/2 51 i + ln v-il (Gleichung 8F)
Jeder Eigenwert v. ist die statistische Varianz des statistischen Vektors χ gemessen in der Richtung des Eigenvektors e..
Die Parameter K.. und x. werden in dem dargestellten Ausführungsbeispiel dadurch bestimmt, dass die gebildeten Mustersätze für jede der angegebenen statistischen Funktionen über eine Anzahl von beobachteten Musterbeispielen gemittelt werden. Dieser Vorgang umfasst statistische Annahmen über die erwarteten Werte von K.. und x.. Jedoch ist die Zahl der unabhängigen, anzunehmenden Parameter 9 6 Durchschnittswerte plus 96x97/2 = 4656 Kovarianzen. Da es unpraktisch ist, mehr als einige hundert Mustersatzbeispiele für ein Zielmuster zu verwenden, ist die erreichbare Zahl von Beispielbeobachtungen pro statistischem Parameter offensichtlich recht klein. Die Wirkung der
-909845/0593
u -163 - 33 - 2825QS2
S.Juni 1978
ungenügenden Beispielgrösse liegt darin, dass die zufälligen Fluktuationen der Parameterannahmen vergleichbar sind mit den angenommenen Parametern. Diese relativ grossen Fluktuationen führen zu einer starken statistischen Abhängigkeit der Klassifizierungsgenauigkeit des auf Gleichung 8F gestützten Entscheidungsprocessors, so dass der Processor zwar die Wortbeispiele mit grosser Genauigkeit klassifizieren kann, die aus seinen eigenen Mustersätzen aufgebaut sind, dass aber der Erfolg mit unbekannten Datenbeispielen recht schlecht wird.
Es ist bekannt, dass man bei einer Reduzierung der Zahl der zu bestimmenden statistischen Parameter die Einwirkung der auf die kleine Beispielzahl zurückzuführenden Beschränkung reduzieren kann. Zu diesem Zweck ist die im folgenden beschriebene Methode allgemein verwendet worden, um die Dimension eines statistischen Random-Vektors zu reduzieren.
809845/05
Die oben definierten Eigenvektoren e. werden entsprechend der abnehmenden Reihenfolge ihrer entsprechenden Eigenwerte ν.
umgeordnet, so dass sich eine umgeordnete Matrix Er von umge-
r r
ordneten Eigenvektoren e ergibt, wobei e , die Richtung der maximalen Varianz ν -, und ν . ,, - vr, . Dann ist der Vektor x-x entsprechend der Gleichung 8E in einen Vektor w transformiert, wobei man die umgeordnete Matrix E verwendet. Jedoch werden nur die ersten ρ Elemente von w verwendet, um den Mustervektor χ darzustellen. In dieser Darstellung, die man manchmal die Hauptkomponentenanalyse (principal component analysis) nennt, liegt die effektive Zahl der zu bestimmenden statistischen Parameter in der Grössenordnung von 96p anstelle von 4656. Zur Klassifizierung der Muster wird die Wahrscheinlichkeitsstatistik L entsprechend der Beziehung 8F berechnet, jedoch läuft die Summierung nun von 1 bis ρ anstelle von 1 bis 96. Wenn man die Hauptkomponentenanalyse auf praktische Daten anwendet, dann beobachtet man, dass die Klassifikationsgenauigkeit des Processors zunimmt, wenn ρ zunimmt, bis ein kritischer Wert von ρ erreicht wird, bei dem die Genauigkeit ein Maximum erreicht. Anschliessend nimmt die Genauigkeit wieder ab, wenn ρ weiter ansteigt^ bis bei p=96 die oben beschriebenen, schlechten Ergebnisse erhalten werden (vgl. Fig. 4, Kurve a (bekannte Versuchswerte) und Kurve b (unbekannte Eingangsdaten)).
Die mit dieser Hauptkomponentenmethode maximal erzJLelbare Klassifizierungsgenauigkeit wird immer noch durch die statistischen Schwankungen aufgrund der -geringen Beispielzahl beschränkt, und die Zahl der Komponenten oder Dimensionen, die man benötigt, ist viel grosser als die Zahl, die man zur Darstellung der Daten wirklich als notwendig erwarten würde.
9038 45/0593
Man kann weiterhin aus der Darstellung der Fig. 4 entnehmen, dass das Ergebnis für vorgegebene, bekannte Muster tatsächlich schlechter ist als das Ergebnis für unbekannte Beispiele, und zwar gilt dies für einen weiten Bereich von p.
Der Grund der beschriebenen beiden Effekte liegt darin, dass der Probenraum mit ρ Komponenten des transformierten Vektors w dargestellt wird, wobei der Beitrag der übrigen 96-p Komponenten aus der Wahrscheinlichkeitsstatistik L entfällt. Ein Gebiet, in dem die meisten Muster zu finden sind, ist auf diese Weise beschrieben worden, aber das Gebiet, wo nur wenige Muster auftreten, ist nicht beschrieben worden. Diese letzteren Bereiche entsprechen den Ausläufern der Wahrscheinlichkeitsverteilung und damit den Bereichen, in denen eine Überlappung der verschiedenen Zielmusterklassen auftritt. Diese bekannten Methoden eliminieren also gerade die Information, die man benötigt, um die schwierigsten Klassifizierungsentscheidungen zu treffen. Unglücklicherweise sind diese Überlappungsbereiche von einer hohen Dimension, so dass es unpraktikabel wäre, das obige Argument umzukehren und beispielsweise eine kleine Anzahl von Komponenten von w zu benutzen, für welche die Varianz v. am kleinsten ist statt am grössten.
Gemäss der vorliegenden Erfindung wird der Effekt der nicht verwendeten Komponenten W+1, ... w_g dadurch abgeschätzt, dass man eine Rekonstruktionsstatistik R in der folgenden Weise durchführt. Die aus dem Ausdruck für L (Gleichung 8F) herausfallenden Terme enthalten die Quadrate der Komponenten w., von denen jedes entsprechend seiner Varianz v. gewichtet ist. Alle diese Varianzen können durch einen konstanten Parameter c angenähert werden, der dann in der folgenden Weise
.S09845/0S93
u - 163
6.Juni 1978
- 36 -
herausgezogen werden kann
96 i=p+1
96 Tr 2 c > i
vi
i=p+1
(Gleichung 8G)
Die Summierung auf der rechten Seite ist gerade das Quadrat der euklidischen Norm (Länge) des Vektors
...,wo,). (Gleichung 8H)
Wenn man einen Vektor wp definiert WP = (VZ1, . . . , W ) ,
dann erhält man
(Gleichung 81)
96 2
}__ wi = |W' / 2 = |w/ 2 - |wp/ 2, (Gleichung 8J) i=p+1
da die Vektoren w, w1 und wp als ein rechtwinkliges Dreieck bildend angesehen v/erden können. Die Eigenvektormatrxx E führt zu einer orthogonalen Transformation, so dass die Länge von w gleich ist wie die Länge von x-x. Es ist daher nicht mehr notwendig, alle Komponenten von w zu berechnen. Die gesuchte Statistik, die den Effekt der nicht berücksichtigten Komponenten auf die Log-Wahrscheinlichkeitsfunktion L abschätzt, ergibt sich daher aus der folgenden Beziehung
\ 1/2
(Gleichung 8K)
S0984 5/0593
Das ist die Länge der Differenz zwischen dem beobachteten Vektor x-x und dem Vektor, den man erhalten würde, wenn man x-x als eine Linearkombination der ersten ρ Eigenvektoren e. von K aufbauen würde. R hat daher den Charakter einer Aufbaufehler-Statistik. Um R in der Wahrscheinlichkeitsfunktion zu benützen, kann diese Funktion einfach dem Satz der transformierten Vektorkomponenten hinzugefügt v/erden, so dass ein neuer Random-Vektor (w-, Wp....,w ,R) erzeugt wird, von dem man annimmt, dass er unabhängige Gauss'sehe Komponenten hat. Unter dieser Annahme ergibt sich für die neue Wahrscheinlichkeitsstatistik
P (w. -w7) r>
-L' = 1/2 jT—-—=— + 1/2^. In var(w±) + M (Gleichung 8L i=l var(w.) i=l
(R -R) 2
M = 1/2 ,„„,„» + 1/2 In var (R) (Gleichung 8M]
var \i\)
Die mit einem Querstrich versehenen Variablen sind Mittelwerte (sample means) und var () beschreibt die Varianz der unbeschränkten Beispiele. In Gleichung 8L sollte der Viert von w. Null sein und var (w.) sollte gleich v. sein. Jedoch können die Eigenvektoren nicht mit unendlicher arithmetischer Präzision errechnet und angewendet werden, so dass es am besten ist, die Mittelwerte und Varianzen nach der Transformation noch einmal zu messen, um den systematischen statistischen Fehler zu berücksichtigen, der sich aufgrund von arithmetischen Abrundungsfehlern ergibt. Dies bezieht sich auch auf die Gleichung 8F.
909-^5/0593
Die gemessene Leistung der Wahrscheinlichkeitsstatistik L1 mit demselben Maximalwahrscheinlichkeits-Entscheidungsprocessor ist in den Kurven (c) und (d) von Fig. 4 dargestellt. Man erkennt, dass mit dem Anstieg von ρ die Klassifizierungsgenauigkeit wieder ein Maximum erreicht, dass dieses aber in diesem Falle bei einer wesentlich kleineren Dimensionszeit ρ liegt. Ausserdem ist die maximal erreichbare Genauigkeit deutlich höher als für die Statistik L, welche sich nur durch das Weglassen des Rekonstruktionsfehlers R unterscheidet.
Als v/eitere Tests der Wirksamkeit der Rekonstruktionsabweichungs-Statistik R wurde dasselbe praktische Experiment noch einmal wiederholt, aber in diesem Falle wurde als Wahrscheinlichkeitsfunktion einfach verwendet
L" = -M. (Gleichung 8N)
Mit anderen Worten heisst es, dass dieses Mal der Bereich, in dem die meisten Probendaten liegen, ignoriert wurde, während der Bereich, in dem relativ wenige Proben liegen, beschrieben wurde. Die damit erreichte Maximalgenauigkeit (Kurven (e) und
(f) in Fig. 4) ist fast so hoch wie bei Verwendung der Statistik L1, und das Maximum ergibt sich für eine noch kleinere Dimensionszahl p=3. Dieses Ergebnis kann man in der Weise interpretieren, dass jedes Uatenbeispiel oder jede Datenprobe (data sample), welches in Raum der ersten ρ Eigenvektoren von K liegt;, so angesehen werden kann, als gehöre es zu der Zielmusterklasse und dass nich wenig oder gar kein Vorteil daraus ergibt, dass man innerhalb dieses Raumes detaillierte Wahrschein lichkeitsabschätzumren durchführt.
9 0 0
u - 163 " 39
Statistische Wahrscheinlichkeitsberechnung
Die transformierten Daten w., die einem mehrere Spektren umfassenden Mustersatz χ entsprechen, werden als Eingangsdaten der statistischen Wahrscheinlichkeitsrechnung verwendet. Dieser Processor berechnet - wie oben beschrieben - eine Wahrscheinlichkeit dafür, dass die unbekannten Eingangsdaten, die durch die nacheinander angelieferten, transformierten, mehrere Spektren umfassenden Mustersätze dargestellt werden, mit jedem der Zielmuster der Schlüsselwortschablonen in dem Vokabular der Maschine übereinstimmen. Typischerweise weist jeder Satz von Zielmustern eine etwas unterschiedliche Wahrscheinlichkeitsdichte auf, jedoch ist diese statistisch durch eine Normalverteilung gut angenähert, welche einen Mittelwert w7 und eine Varianz var (w.) hat, wobei i die fortlaufende Bezeichnung der Elemente des k-ten Zielmusters ist. Die einfachste Anwendung des Prozesses nimmt an, dass die verschiedenen Werten von i und k zugeordneten Daten unkorreliert sind, so dass die vereinigte Wahrscheinlichkeitsdichte (joint probability density) für den Satz x, der zum Zielmuster k gehört, durch die folgende Beziehung angegeben wird (logarithmisch)
L(t|k) = p(x,k) = Γ 1/2 In 2"/p (var (W1) ) -1/2(w# _ w>) 2
i I i i
var .(W1) (Gleichung 9)
Da der-Logarithmus eine monotone Funktion ist, reicht diese Statistik aus, um zu bestimmen, ob die Wahrscheinlichkeit
S09845/0593
einer Übereinstimmung eines Zielmusters einer Schlüsselwortschablone grosser ist als die Wahrscheinlichkeit der Übereinstimmung mit irgendeiner anderen Schablone des Vokabulars oder die/
ob alternativ/Wahrscheinlichkeit der Übereinstimmung mit einem bestimmten Muster ein vorgegebenes Minimalniveau überschreitet. Für jeden eingegebenen Mustersatz wird eine statistische Wahrscheinlichkeitsfunktion L (t|k) für alle Zielmuster der Schlüsselwortschablonendes Vokabulars berechnet. Die sich ergebenden Wahrscheinlichkeitsstatistiken L (ti k) sind als relative Wahrscheinlichkeit dafür zu interpretieren, dass ein Zielmuster mit der Bezeichnung k zur Zeit t auftritt.
Wie sich für den Fachmann ergibt, stellt diese Umordnung der Wahrscheinlichkeitsstatistik die Spracherkennung insoweit dar, als sie ausgehend von einem einzigen Zielmuster durchgeführt werden kann. Diese Wahrscheinlichkeitsstatistiken können in einem Gesamtsystem in verschiedener Weise eingesetzt werden, dies hängt von der durchzuführenden Funktion ab.
Auswahl von "Kandidaten-Schlüsselwörtern"
Bei einem bevorzugten Ausführungsbeispiel der Erfindung ist vorgesehen, dass die Eingangsdaten weiter untersucht werden, wenn die Wahrscheinlichkeitsstatistik ergibt, dass der Mustersatz im Vergleich mit einem ersten Zielmuster eine vorgegebene Schwelle überschreitet. Dieser Vergleich wird bei 101 und 103 durchgeführt. Bei der v/eiteren Untersuchung wird zuerst ein lokales Maximum für die Wahrscheinlichkeitsstatistik bestimmt, welches dem bestimmten ersten Zielmuster entspricht und dann wird festgestellt, ob andere Mustersätze existieren, die zu anderen Zielmustern des ausgewählten, potentiellen "Kandidaten-
u - 163 - 41 -
Schlüsselwortes11 passen. Das wird bei 105 angedeutet. Der Prozess des wiederholten Vergleichs von neu geformten Mustersätzen mit allen ersten Zielmustersätzen wird also unterbrochen; es setzt eine Suche ein nach einem Hustersatz, der auf den ΊΙ ersten" Mustersatz folgt und der bezüglich seiner statistischen Wahrscheinlichkeit am besten dem nächsten (zweiten, Zielmuster des potentiellen Kandidaten-Schlüsselwortes oder der potentiellen Kandidaten-Schlüsselwörter entspricht.
Wenn ein "zweiter" Mustersatz, der zweiten Zielmustern entsprechen würde, nicht innerhalb einer vorgegebenen Zeit aufgefunden wird, dann wird diese Untersuchungsfolge beendet und der Erkennungsprozess beginnt erneut zu einer Zeit unmittelbar nach dem Ende des "ersten" Mustersatzes, v/elcher ein potentielles Kandidaten-Wort identifiziert hat. Nachdem also der "erste" Mustersatz eine Wahrscheinlichkeit hervorruft, die grosser ist als der erforderliche Schwellwert, wird eine feste Zeit vorgegeben, innerhalb v/elcher ein Mustersatz aufgefunden werden muss, der dem nächsten Zielmuster in der Folge der Zielmuster bei dem ausgewählten potentiellen Kandidaten-Schlüsse; wort entsprechen muss.
Die Länge des Zeitabschnittes, kann variabel sein, beispielsweise kann sie von der Dauer des phonetischen Segmentes des speziellen potentiellen Kandidaten-Schlüsselwortes abhängen.
Dieser Vorgang setzt sich fort, bis entweder
(1) in den Eingangsdaten ilustersätz-e identifiziert worden sindj die allen Zielmustern der Schlüsselwortschablone entsprechen oder
4^/0593
(2) kein Zielmuster innerhalb der erlaubten Zeit mit irgendeinem Mustersatz assoziiert v/erden kann.
Wenn die Suche entsprechend (2) beendet wird, dann beginnt die Suche für ein neues "erstes" Spektrum von neuem, wie dies oben angegeben ist, und zwar bei dem Spektrum, das sich an das Ende des "ersten11 vorher identifizierten Mustersatzes anschliesst.
In diesem Stadium des Prozesses müssen mögliche Mustersätze, die Zielmustern entsprechen, verkettet werden, um Kandidaten-Wörter zu bilden (dies ist bei 107 angedeutet). Die Nachweisschwelle wird daher niedrig angesetzt, so dass es sehr unwahrscheinlich ist, dass ein richtiger Mustersatz zurückgewiesen wird. Hier in diesem akustischen Stadium wird die Unterscheidung zwischen richtigem Nachweis und falscher Anzeige im wesentlichen durch das Erfordernis erreicht, dass eine Anzahl von Übereinstimmungen gleichzeitig nachgewiesen werden müssen.
Nachentscheidungsverarbeitung
Dieses Verfahren dauert an, bis die Audio-Eingangssignale zu Ende sind. Aber auch nach der Identifizierung eines Schlüsselwortes mit Hilfe des oben beschriebenen Wahrscheinlichkeitstests werden vorzugsweise noch weitere Nachentscheidungstests (Bezugszeichen 109) vorgenommen, um die Wahrscheinlichkeit herabzusetzen, ein unrichtiges Schlüsselwort herauszusuchen (d.h. um die Menge der Falschanzeigen herabzusetzen), während die Wahrscheinlichkeit eines richtigen Nachweises so hoch wie
909? ^'0593
u - 163 - 43 -
möglich gehalten werden soll. Aus diesem Grunde wird das Ergebnis des akustischen Processors, deh., ein mit Hilfe des Verkettungsprozesses ausgewähltes Kandidaten-Wort, weiter durch eine Maske von der Betonung des Wortes entsprechenden Zeitfenstern (prosodic relative timing windows) und/oder einen Wahrscheinlichkeitsverhältnistest gefiltert, welcher Informationen des akustischen Niveauprocessors verwendet, die alle Zielmusterklassen betreffen.
Die Prosodie-Maske
Wie oben beschrieben erhält man bei der Bestimmung der Wahrscheinlichkeitsstatistik die Zeit, an v/elcher ein Mustersatz einen Spitzenwert der Wahrscheinlichkeitsfunktion im Vergleich mit einem Zielmuster eines Schlüsselwortes aufweist» Dieser Zeitpunkt wird in einem bevorzugten Ausführungsbeispiel der Erfindung für jedes der ausgewählten Mustersätze, die den verschiedenen aufeinanderfolgenden Zielmustern eines Kandidaten-Schlüsselwortes entsprechen, aufgenommen. Diese Zeiten pt.., Ρ^5 / ···· pt für jedes Kandidaten-Schlüsselwort werden entsprechend einer vorbestimmten Prosodie- oder Betonungsmaske für dieses Schlüsselwort analysiert und ausgewertet, um festzustellen, ob die Zeitintervalle zwischen aufeinanderfolgenden Wahrscheinlichkeitsspitzen vorbestimmten Kriterien entsprechen. Bei dieser Methode werden die Zeiten, die zwischen dem Auftreten von aufeinanderfolgenden Wahrscheinlichkeitsspitzen festgestellt werden, d.h. pt.-pt._.. für i =. 2,3 ... η zunächst dadurch normalisiert, dass jedes Zeitintervall durch pt -Pt1 dividiert wird. Die sich dabei ergebenden normalisierten Zeitintervalle werden dann mit einer Prosodie-Maske verglichen, d.h. mit einer Folge von möglichen Bereichen einer
80984 5/0593
6.Juni 1978
normalisierten Intervallänge für das Kandidaten-Schlüsselwort. Wenn die festgestellten Intervallängen in die ausgewählten Bereiche hineinfallen, wird das Kandidatenwort akzeptiert.
Im dargestellten Ausführungsbeispiel werden die Zeitbereiche der Prosodie-Maske dadurch bestimmt, dass man die tatsächlich auftretenden Zeitintervalle von Probeschlüsselwörtern bestimmt, die von einer möglichst grossen Anzahl von verschiedenen Sprechern gesprochen worden sind. Das Prosodie-Muster wird dann mit den Zeiten eines statistischen Probeschlüsselworts verglichen, wobei eine statistische Berechnung verwendet wird. Darin wird die mittlere Standardabweichung für jede Prosodie-Maske (die jedem Schlüsselwort entspricht) von den Musterschlüsselwörtern abgeleitet. Anschliessend wird eine Wahrscheinlichkeitsstatistik berechnet, um entscheiden zu können, ob man ein bestimmtes Prosodie-Muster akzeptieren kann und damit eine endgültige Entscheidung zugunsten eines bestimmten Kandidaten-Schlüsselwortes treffen kann. Diese Wahrscheinlichkeitsstatistik bezieht sich auf den Zeitablauf der Ereignisse und darf nicht mit der Wahrscheinlichkeitsstatistik verwechselt werden, mit welcher die Mustersätze mit den Zielmustersätzen verglichen werden.
Bei einer anderen Ausgestaltung der Erfindung werden die Bereiche der normalisierten Zeitintervalle relativ breit, jedoch unveränderbar festgesetzt. Bei dieser Ausgestaltung wird ein Kandidaten-Schlüsselwort nur dann akzeptiert, wenn das normalisierte Zeitintervall in die Grenzen des festen Bereiches fällt. Ein Kandidaten-Wort wird also nur akzeptiert, wenn jede der normalisierten Zeiten innerhalb die vorgegebenen Grenzen fällt.
909845/0593
6.Juni 1978
Wortwahrscheinlichkeit5test
In dem bevorzugten Ausführungsbeispiel der Erfindung wird jedes Kandidaten-Wort auch mit einem Wahrscheinlichkeitsverhältnistest geprüft, ehe die endgültige Entscheidung zur Annahme des Schlüsselwortes getroffen wird. Dieser Wahrscheinlichkeitsverhältnistest besteht in der Aufsummierung sogenannter Güteziffern (figure of merit) über die Folge der ausgewählten
Mustersätze, die mit dem Kandidaten-Schlüsselwort als übereinstimmend herausgefunden worden sind. Die aufsummierte Güteziffer, welche die Summe der Güteziffern für jeden Mustersatz darstellt, wird dann mit einem Entscheidungsschwellwert verglichen.
Die Güteziffer eines untersuchten Mustersatzes ist die Differenz zwischen der besten logarithmischen Wahrscheinlichkeitsstatistik hinsichtlich eines Zielmusters im Schlüsselwortvokabular und dem besten Ergebnis relativ zu den Zielmustern, die als Alternativen des Zielmusters zugelassen werden. Wenn also das am besten abschneidende Zielmuster eine zugelassene Alternative des gesuchten Musters ist., dann ist die Güteziffer
JNuIl. Wenn jedoch das beste Ergebnis einem Zielmuster entspricht, welches nicht in der Liste der zugelassenen Alternativen des ausgewählten Zielmusters des Kandidaten-Wortes ist
(ein gegebenes Zielmuster kann mehrere statistische Darstellungen haben, die vom Akzent etc. abhängen), dann ist die Güteziffer die Differenz zwischen dem besten Ergebnis und dem
besten Ergebnis, das in der Liste der zugelassenen Alternativen auftritt. Der Entscheidungsschwellv/ert wird optimal ge~
wählt, so dass manden besten Ausgleich zwischen fohlender Erkennung und falscher Anzeige erhält.
9ü9845/0593
6.Juni 1978
Im folgenden wird der Wortwahrscheinlichkeitstest vom mathematischen Standpunkt aus betrachtet. Die Wahrscheinlichkeit, dass ein Random-Mustersatz χ auftritt, wenn man davon ausgeht, dass die Eingangssprachsignale einer Zielmusterklasse k entsprechen, ist gleich p(x|k), sprich "Wahrscheinlichkeit von χ bei gegebenem k". Die logarithmische Wahrscheinlichkeitsstatistik des Eingangs χ relativ zum k-ten Referenzmuster ist dann L(x|k) und ist gleich In p(x,k), wie dies in Gleichung 9 definiert ist. Wenn man annimmt^ dass das untersuchte Muster von einem aus einer Gruppe von η vorbestimmten Zielmusterklassen verursacht werden muss und wenn man weiter annimmt, dass jede dieser Klassen mit gleicher Frequenz auftritt oder dass die η möglichen Auswahlen als gleichermassen gültig angesehen v/erden, dann ist die Wahrscheinlichkeit im Sinne einer relativen Frequenz des Auftretens der Beobachtung des Ereignis χ in jedem Fall die Summe der Wahrscheinlichkeitsdichten, welche durch die folgende Summation definiert ist:
n_ 1
P(x) = > P(xfk) · - (Gleichung 10)
k=1 n
Von diesem Auftreten ergibt sich der Teil, der einer bestimmten Klasse zugeordnet v/erden kann(p(klx)) durch folgenden Ausdruck
P(xjk) - i
i = n
(Gleichung 11A)
90
U - 163 - 47 -
6. Juni 1978
oder logarithmisch
η
In p(k(x) = L(x!k) - 1n ^T p(x|i) (Gleichung 11b)
1=1
Wenn der Entscheidungsprocessor dann auf ein gegebenes χ angewendet wird und aus einem bestimmten Grund die Klasse k auswählt, dann ergibt die obige Gleichung 11A oder 11B die Wahrscheinlichkeit, dass die Auswahl richtig ist. Die obigen Gleichungen sind eine Folge der Bayes-Regel:
p(x,k) = p(xjk) p(k) = p(k)x) p(x), wobei ρ(k) als die Konstante — angenommen wird.
Wenn man annimmt, dass nur eine Klasse, beispielsweise die Klasse m, sehr wahrscheinlich ist, dann wird die Gleichung angenähert durch
ax^p(x)i) · lV = ρ (x| m) . 1 (Gleichung 12) 1^ )
max
und es ergibt sich
3 (k,m,x) = L(xjk) -L(xjm) ^ m p(kjx). (Gleichung 13).
Dabei ist zu bemerken, dass dann, wenn die k-te Klasse die wahrscheinlichste ist, die Funktion r ihren Maximalwert Null
annimmt. Wenn man über alle angenommenen, unabhängigen Muster's
sätze summiert, dann gibt der aufsummierte Wert von r die Wahrscheinlichkeit an, dass das nachgewiesene Wort keine falsche
909845/0593
Anzeige ist. Eine Entscheidungsschwelle, die man auf diesen auf summierten Wert von ■■· anwendet, steht daher in direkter Beziehung zum Wechsel zwischen Nachweis- und Falschanzeigewahrscheinlichkeiten und ist die Basis des Wahrscheinlichkeits-Verhältnistests. Der aufsummierte Wert von f entspricht dann der Gütezahl des Kandidaten-Schlüsselworts.
Leerseite

Claims (10)

  1. DR.-ING. D1PL.-ING. M. SC LIPL-PKV3. D.i DIPL.-PHYS.
  2. HÖGER - STELLRECHT - GRIESSBACH - HAECKER
  3. PATENTANWÄLTE IN STUTTGART
  4. A 42 890 b Anmelder: DIALOG SYSTE1MS, INC.
  5. u - 163 32 Locust Street,
  6. 6.Juni 1978 Belmont, Massachusetts
    02178, USA
    Patentansprüche :
    Verfahren zur Sprachanalyse zur Erkennung v/enigstens eines vorbestimmten Schlüsselwortes in einem kontinuierlichen Audio-Signal, bei welchem jedes Schlüsselwort durch eine Schablone charakterisiert ist, welche mindestens ein Zielmuster enthält, welche Zielmuster eine geordnete Reihenfolge aufweisen und bei dem jedes Zielmuster eine Vielzahl von Kurzzeitenergiespektren darstellt, die im Realzeitmaßstab auseinanderliegen, gekennzeichnet durch die folgenden Schritte:
    Man bestimmt wiederholt einen Parametersatz, der ein Kurzzeitenergiespektrum des Audio-Signals innerhalb jedes Intervalls einer Vielzahl von gleichlangen Messintervallen bestimmt und erzeugt dadurch eine kontinuierliche, zeitlich geordnete Folge von Kurzzeit-Audio-Energiespektrenabschnitten ,
    man wählt wiederholt aus dieser Folge von Abschnitten einen ersten Abschnitt und mindestens einen später auftretenden Abschnitt aus und bildet so einen mehrere Abschnitte umfassenden Mustersatz,
    man vergleicht jeden der auf diese Weise gebildeten Mustersätze mit jedem ersten Zielmuster jeder Schlüsselwortschablone ,
    S09S45/0593
    Λ 42 890 b
    man entscheidet, ob jedes dieser Mustersätze einem ersten Zielmuster einer Schlüsselwortschablone entspricht
    man wählt für jeden Mustersatz, der entsprechend dem Entscheidungsvorgang einem ersten Zielmuster eines potentiellen Kandidaten-Schlüsselwortes entspricht, später auftretende Spektrenabschnitte aus und bildet auf diese Weise später auftretende Mustersätze,
    man entscheidet, ob die später auftretenden Mustersätze folgenden Zielmustern der vorher bestimmten potentiellen Kandidatenwortschablone entsprechen und
    man identifiziert eine Kandidaten-Schlüsselwortschablone, wenn die derart ausgewählten Mustersätze entsprechenden Zielmustern der Schlüsselwortschablone entsprechen.
    2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass man die Kurzzeit-Energiespektrenabschnitte in einem first in-first out-Verfahren speichert, wodurch ein Block solcher Energiespektrenabschnitte für die Analyse zugänglich ist.
    3. Verfahren nach einem der Ansprüche 1 oder 2, dadurch gekennzeichnet, dass die einen Mustersatz bildenden Spektrenabschnitte Messabschnitten des Audio-Signals entsprechen, die um eine feste Anzahl von Messabschnitten voneinander entfernt sind.
    A 42 890 b
    6. Juni 1978 -3- ^O^QUO^
    4. Verfahren nach Anspruch 3, dadurch gekennzeichnet, dass die den Mustersatz bildenden Spektrenabschnitte auf einer Zeitskala mindestens soweit entfernt sind, wie es der Dauer von zwei Spektrenabschnitten entspricht.
    5. Verfahren nach Anspruch 4, dadurch gekennzeichnet, dass der Zeitabstand 30 ms beträgt.
    6. Verfahren nach einem der voranstehenden Ansprüche, dadurch gekennzeichnet, dass jeder Mustersatz drei Spektrenabschnitte umfasst.
  7. 7. Verfahren nach einem der voranstehenden Ansprüche, dadurch gekennzeichnet, dass aufeinanderfolgende, Mustersätze aufbauende Spektrenabschnitte den Messabschnitten des Audio-Signals entsprechen, die durch eine variierende Zahl von Messabschnitten voneinander getrennt sind.
  8. 8. Verfahren nach einem der voranstehenden Ansprüche, dadurch gekennzeichnet, dass man beim zweiten Auswahlschritt den zweiten und jeden folgenden ausgewählten Mustersatz für Zeiten auswählt, die innerhalb eines bestimmten Zeitintervalls liegen, welches in Bezug auf die Bestimmungszeit des vorausgehend ausgewählten Mustersatzes einen festen Abstand aufweisen.
  9. 9. Verfahren nach einem der voranstehenden Ansprüche, dadurch gekennzeichnet, dass man wiederholt ein Spitzenspektrum erzeugt, welches den Spitzenwerten der Frequenzbänder der Kurzzeit-Energiespektren entspricht, dass
    $09845/0533
    Λ 42 890 b
    6.Juni 1978 - 4 -
    man für jedes Kurzzeit-Energiespektrum den Amplitudenwert jedes Frequenzbandes durch den entsprechenden Intensitätswert des entsprechenden Spitzenspektrums dividiert und dass man dadurch frequenzegalisierte Spektren erzeugt, die einem kompensierten Audio-Signal entsprechen, welche denselben Kurzzeit-Energieinhalt in jedem der im Spektrum enthaltenen Frequenzbänder aufweist.
  10. 10. Verfahren nach einem der voranstehenden Ansprüche, dadurch gekennzeichnet, dass man für jedes Kurzzeit-Energiespektrum S(f) einen Wert A bildet, welcher dem Durchschnittswert des Parametersatzes entspricht, der jedes dieser Spektren bestimmt, wobei sich A aus der Beziehung
    j~i
    A =
    ergibt und wobei f. die Breite der aufeinanderfolgenden im Spektrum enthaltenen Frequenzbänder darstellt, und dass man jedes Spektrum nicht-linear skaliert, indem man für den Wert S(f) in jedem Frequenzband ein transformiertes Spektrum erzeugt, welches entsprechende Werte S (f) aufweist, die sich durch die folgende Beziehung ergeben:
    S (f) - A
    S5 (f) =
    S (f) + A
    $09845/0593
DE19782825082 1978-04-27 1978-06-08 Verfahren zur spracherkennung Withdrawn DE2825082A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/901,001 US4227176A (en) 1978-04-27 1978-04-27 Continuous speech recognition method

Publications (1)

Publication Number Publication Date
DE2825082A1 true DE2825082A1 (de) 1979-11-08

Family

ID=25413448

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19782825082 Withdrawn DE2825082A1 (de) 1978-04-27 1978-06-08 Verfahren zur spracherkennung

Country Status (4)

Country Link
US (1) US4227176A (de)
CA (1) CA1172362A (de)
DE (1) DE2825082A1 (de)
GB (1) GB1603925A (de)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3236832A1 (de) * 1981-10-05 1983-09-01 Exxon Corp. (eine Gesellschaft n.d. Ges. d. Staates New Jersey), New York, N.Y. Verfahren und geraet zur sprachanalyse
DE3236885A1 (de) * 1981-10-05 1983-09-22 Exxon Corp. (eine Gesellschaft n.d. Ges. d. Staates New Jersey), New York, N.Y. Verfahren und geraet zur sprachanalyse
DE3236834A1 (de) * 1981-10-05 1983-10-06 Exxon Corp Verfahren und geraet zur sprachanalyse
CN112884325A (zh) * 2021-02-22 2021-06-01 中国铁道科学研究院集团有限公司电子计算技术研究所 一种客站设备应用分析及健康状况评价方法及系统

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1171945A (en) * 1981-04-16 1984-07-31 Mitel Corporation Voice recognizing telephone call denial system
US4567606A (en) * 1982-11-03 1986-01-28 International Telephone And Telegraph Corporation Data processing apparatus and method for use in speech recognition
US4624008A (en) 1983-03-09 1986-11-18 International Telephone And Telegraph Corporation Apparatus for automatic speech recognition
ATE59715T1 (de) * 1985-12-20 1991-01-15 Dietmar Steinpichler Verfahren zur mustererkennung.
US4797929A (en) * 1986-01-03 1989-01-10 Motorola, Inc. Word recognition in a speech recognition system using data reduced word templates
CA1299750C (en) * 1986-01-03 1992-04-28 Ira Alan Gerson Optimal method of data reduction in a speech recognition system
JP2878796B2 (ja) * 1990-07-03 1999-04-05 国際電気株式会社 音声符号化器
US5832439A (en) * 1995-12-14 1998-11-03 U S West, Inc. Method and system for linguistic command processing in a video server network
US5884262A (en) * 1996-03-28 1999-03-16 Bell Atlantic Network Services, Inc. Computer network audio access and conversion system
FI114247B (fi) * 1997-04-11 2004-09-15 Nokia Corp Menetelmä ja laite puheen tunnistamiseksi
US6112172A (en) * 1998-03-31 2000-08-29 Dragon Systems, Inc. Interactive searching
US6393399B1 (en) 1998-09-30 2002-05-21 Scansoft, Inc. Compound word recognition
KR100828884B1 (ko) * 1999-03-05 2008-05-09 캐논 가부시끼가이샤 데이터베이스 주석 및 검색
US7120582B1 (en) 1999-09-07 2006-10-10 Dragon Systems, Inc. Expanding an effective vocabulary of a speech recognition system
CN1329861C (zh) * 1999-10-28 2007-08-01 佳能株式会社 模式匹配方法和装置
US7310600B1 (en) 1999-10-28 2007-12-18 Canon Kabushiki Kaisha Language recognition using a similarity measure
US6882970B1 (en) 1999-10-28 2005-04-19 Canon Kabushiki Kaisha Language recognition using sequence frequency
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
US7035797B2 (en) * 2001-12-14 2006-04-25 Nokia Corporation Data-driven filtering of cepstral time trajectories for robust speech recognition
US7356466B2 (en) * 2002-06-28 2008-04-08 Samsung Electronics Co., Ltd. Method and apparatus for performing observation probability calculations
DE102005016853A1 (de) * 2005-04-12 2006-10-19 Siemens Ag Verfahren zur Kontrolle von sprachgesteuerten Applikationen und zugehöriges Kontrollsystem
JP4260788B2 (ja) * 2005-10-20 2009-04-30 本田技研工業株式会社 音声認識機器制御装置
CN105741857B (zh) * 2016-04-14 2019-06-14 北京工业大学 一种音调序列的鲁棒阶跃规整方法
CN115052235B (zh) * 2022-08-12 2022-12-06 深圳市乐可可电子商务有限公司 无线领夹麦克风低功耗方法、装置、电子设备及存储介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3943295A (en) * 1974-07-17 1976-03-09 Threshold Technology, Inc. Apparatus and method for recognizing words from among continuous speech
US4032710A (en) * 1975-03-10 1977-06-28 Threshold Technology, Inc. Word boundary detector for speech recognition equipment
CA1056504A (en) * 1975-04-02 1979-06-12 Visvaldis A. Vitols Keyword detection in continuous speech using continuous asynchronous correlation
US4058676A (en) * 1975-07-07 1977-11-15 International Communication Sciences Speech analysis and synthesis system
DE2536585C3 (de) * 1975-08-16 1981-04-02 Philips Patentverwaltung Gmbh, 2000 Hamburg Anordnung zur statistischen Signalanalyse

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3236832A1 (de) * 1981-10-05 1983-09-01 Exxon Corp. (eine Gesellschaft n.d. Ges. d. Staates New Jersey), New York, N.Y. Verfahren und geraet zur sprachanalyse
DE3236885A1 (de) * 1981-10-05 1983-09-22 Exxon Corp. (eine Gesellschaft n.d. Ges. d. Staates New Jersey), New York, N.Y. Verfahren und geraet zur sprachanalyse
DE3236834A1 (de) * 1981-10-05 1983-10-06 Exxon Corp Verfahren und geraet zur sprachanalyse
CN112884325A (zh) * 2021-02-22 2021-06-01 中国铁道科学研究院集团有限公司电子计算技术研究所 一种客站设备应用分析及健康状况评价方法及系统

Also Published As

Publication number Publication date
US4227176A (en) 1980-10-07
CA1172362A (en) 1984-08-07
GB1603925A (en) 1981-12-02

Similar Documents

Publication Publication Date Title
DE2825082A1 (de) Verfahren zur spracherkennung
DE2825110A1 (de) Verfahren zur erkennung kontinuierlicher sprachsignale
DE2825186A1 (de) Verfahren zur verringerung der falschanzeige in spracherkennungsverfahren fuer kontinuierliche sprachsignale
DE3236832C2 (de) Verfahren und Gerät zur Sprachanalyse
DE2659096C2 (de)
DE3878001T2 (de) Spracherkennungseinrichtung unter anwendung von phonemermittlung.
DE3236834C2 (de) Verfahren und Gerät zur Sprachanalyse
DE3236885A1 (de) Verfahren und geraet zur sprachanalyse
DE69029001T2 (de) Verfahren und Einrichtung zur Erkennung von Signalzeitfolgen mit von Signalvariationen unabhängigem Lernen
DE2613258C2 (de) Schaltungsanordnung zum Erkennen von einem oder mehreren Schlüsselworten in kontinuierlicher Sprache
DE69033084T2 (de) Schaltung zur Spracherkennung unter Anwendung von nichtlinearer Verarbeitung, Sprachelementmodellierung und Phonembewertung
DE3306730C2 (de)
DE69127961T2 (de) Verfahren zur Spracherkennung
DE69225371T2 (de) Schlüsselwörtererkennung in einem zusammenhängenden Text mittels zweier &#34;Hidden Markov&#34; Modelle
DE69705830T2 (de) Sprachverarbeitung
DE69432943T2 (de) Verfahren und Vorrichtung zur Sprachdetektion
DE2753277C2 (de) Verfahren und Einrichtung zur Spracherkennung
DE3783154T2 (de) Spracherkennungssystem.
DE69726526T2 (de) Schema und Modelladaption bei Mustererkennung welche auf Taylorausdehnung basiert
DE60120323T2 (de) System und Verfahren zur Mustererkennung im sehr hochdimensionalen Raum
DE3337353C2 (de) Sprachanalysator auf der Grundlage eines verborgenen Markov-Modells
DE69725670T2 (de) Hochgenaue Zeit-Frequenz-Signalanalyse mit niedriger Verzerrung unter Verwendung gedrehter Fensterspektrogramme
DE69519453T2 (de) Spracherkennung mit Sprecheradaptierung mittels Berechnung von Mittelwerten akustischer Kategorien
DE10030105A1 (de) Spracherkennungseinrichtung
DE2347738A1 (de) Spracherkennungsverfahren und vorrichtung zur durchfuehrung desselben

Legal Events

Date Code Title Description
8141 Disposal/no request for examination