DE3236834A1 - Verfahren und geraet zur sprachanalyse - Google Patents
Verfahren und geraet zur sprachanalyseInfo
- Publication number
- DE3236834A1 DE3236834A1 DE19823236834 DE3236834A DE3236834A1 DE 3236834 A1 DE3236834 A1 DE 3236834A1 DE 19823236834 DE19823236834 DE 19823236834 DE 3236834 A DE3236834 A DE 3236834A DE 3236834 A1 DE3236834 A1 DE 3236834A1
- Authority
- DE
- Germany
- Prior art keywords
- keyword
- audio signal
- september
- word
- speaker
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims description 123
- 230000005236 sound signal Effects 0.000 claims description 66
- 230000008569 process Effects 0.000 claims description 40
- 230000001419 dependent effect Effects 0.000 claims description 9
- 230000015572 biosynthetic process Effects 0.000 claims description 7
- 238000012549 training Methods 0.000 claims description 6
- 238000005259 measurement Methods 0.000 claims description 2
- 238000001228 spectrum Methods 0.000 description 82
- 230000006870 function Effects 0.000 description 42
- 230000015654 memory Effects 0.000 description 34
- 238000005311 autocorrelation function Methods 0.000 description 25
- 230000000875 corresponding effect Effects 0.000 description 18
- 238000001514 detection method Methods 0.000 description 16
- 230000007704 transition Effects 0.000 description 13
- 230000009466 transformation Effects 0.000 description 12
- 238000012545 processing Methods 0.000 description 10
- 239000013598 vector Substances 0.000 description 10
- 238000012935 Averaging Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 9
- 230000004044 response Effects 0.000 description 8
- 230000008901 benefit Effects 0.000 description 7
- 238000006243 chemical reaction Methods 0.000 description 7
- 238000011156 evaluation Methods 0.000 description 6
- 238000009499 grossing Methods 0.000 description 6
- 239000011159 matrix material Substances 0.000 description 6
- 238000005070 sampling Methods 0.000 description 6
- 238000012546 transfer Methods 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 239000000872 buffer Substances 0.000 description 4
- 230000002093 peripheral effect Effects 0.000 description 4
- 238000009825 accumulation Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 3
- 229910052799 carbon Inorganic materials 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000010606 normalization Methods 0.000 description 3
- 230000003595 spectral effect Effects 0.000 description 3
- 238000010183 spectrum analysis Methods 0.000 description 3
- 238000007792 addition Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000002596 correlated effect Effects 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 238000012884 algebraic function Methods 0.000 description 1
- 230000002547 anomalous effect Effects 0.000 description 1
- 230000003466 anti-cipated effect Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 210000000860 cochlear nerve Anatomy 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 230000003292 diminished effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000011017 operating method Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 108090000623 proteins and genes Proteins 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 230000001755 vocal effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/04—Segmentation; Word boundary detection
- G10L15/05—Word boundary detection
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/12—Speech classification or search using dynamic programming techniques, e.g. dynamic time warping [DTW]
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/18—Speech classification or search using natural language modelling
- G10L15/183—Speech classification or search using natural language modelling using context dependencies, e.g. language models
- G10L15/19—Grammatical context, e.g. disambiguation of the recognition hypotheses based on word sequence rules
- G10L15/193—Formal grammars, e.g. finite state automata, context free grammars or word networks
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L2015/088—Word spotting
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)
- Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)
- Telephonic Communication Services (AREA)
Description
HOEGER, STELLRECHT &*PA*RTNET^
PATENTANWÄLTE UHLANDSTRASSE 14 c D 70OO STUTTGART 1
A 45 326 b Anmelder: Verbex Corporation
k - 176 2 Oak Park
28.September 1982 Bedford, MA 01730
USA
Verfahren und Gerät zur Sprachanalyse
Die Erfindung betrifft ein Verfahren zur Sprachanalyse
zum Erkennen von Pausen und von mindestens einem Schlüsselwort in einem Audiosignal sowie ein Gerät zur Durchführung
dieses Verfahrens.
Insbesondere befasst sich die Erfindung mit einem Verfahren und einem Gerät zum Erkennen von Schlüsselwörtern
in einem kontinuierlichen Audiosignal im Echtzeitbetrieb.
Es sind bereits verschiedene Spracherkennungssysteme vorgeschlagen worden, die dazu dienen, isolierte Äußerungen zu erkennen, indem sie ein unbekanntes isoliertes
Audiosignal, welches in geeigneter Weise aufbereitet wird, mit ein oder mehreren zuvor vorbereiteten.
Darstellungen bekannter Schlüsselwörter vergleichen. Dabei wird der Begriff "Schlüsselwort" in dem Sinne
verwendet, daß er eine verbundene Gruppe von Phonemen und Schallereignissen bezeichnen soll, die beispiels-
-17-
ORIGINAL
OZODOOH
A 45 326 b
k - 176 - 17 -
28. September 1982
weise ein Teil einer Silbe, ein Wort, eine Phrase usw.
sein kann. Verschiedene derartige Systeme wurden mit
begrenztem Erfolg eingesetzt, um isolierte Schlüsselwörter zu erkennen. Dabei zeigte es sich, daß ein bestimmtes
bekanntes System, welches im. wesentlichen gemäß den Lehren der US-PS 4 038 503 arbeitet, besonders
erfolgreich eingesetzt werden kann und geeignet ist, ein bestimmtes Schlüsselwort aus einem begrenzten Vokabular
von Schlüsselwörtern sicher zu erkennen, vorausgesetzt, daß die Grenzen (Anfang und Ende) des unbekannten
Audiosignals durch den Zustand der Stille oder durch ein Hintergrundgeräusch (also durch Pausen im
Sinne der vorliegenden Anmeldung) gebildet sind, die von dem Erkennungssystem ermittelt werden. Das System
basiert also auf der Annahme, daß■das Intervall, in
dem das unbekannte Audiosignal auftritt, wohl definiert ist und eine einzige Schlüsselwortäußerung enthält.
Bei einem kontinuierlichen Audiosignal, wie.z.3. in der kontinuierlichen Umgangssprache, in der die •Schlüsselwortgrenzen
nicht von vornherein bekannt bzw. markiert sind, wurden ebenfalls bereits verschiedene Verfahren
angewandt, um die ankommenden Audiodaten in Segmente zu unterteilen, d.h. um die Grenzen der
linguistischen Einheiten, wie 2.3. der Phoneme, Silben,
Worte, Wortketten, Sätze usw. vor der Einleitung eines Schlüsselworterkennungsprozesses zu bestimmen. Diese vorbekannten,
der kontinuierlichen Sprachauswertung dienenden Systeme waren jedoch nur in begrenztem Maße
-18-
A 45 326 b
k - 176 - 18 -
28.Seotember 1982
erfolgreich, was teilweilse darauf zurückzuführen ist,
daß bei ihnen kein befriedigendes Segmentierverfahren gefunden wurde. Auch für andere wichtige Probleme
wurde bisher noch keine befriedigende Lösung gefunden. Beispielsweise können derzeit nur begrenzte Wortschätze
zuverlässig und mit einer niedrigen Quote von Fehlalarmen erkannt werden. Weiterhin ist die Erkennungsgenauigkeit
sehr empfindlich für die Unterschiede zwischen den Stimm- bzw. Sprech-Charakteristiken unterschiedlicher
Sprecher. Außerdem reagieren die bekannten Systeme sehr empfindlich auf Verzerrungen der zu analysierenden
Audiosignale, wie sie typischerweise auftreten, wenn diese Audiosignale beispielsweise über
das normale Telefonnetz übertragen werden.
Die üS-PSen 4 227 176, 4 241 329 und 4 227 177 beschreiben
wirtschaftlich brauchbare und wirksame Verfahren zur erfolgreichen Erkennung, von Schlüsselwörtern
in kontinuierlichen Sprachsignalen, die im Echtzeitbetrieb ausgewertet werden. Diese bekannten Verfahren
werden derzeit wirtschaftlich angewandt und haben sich sowohl im Experiment wie auch in der
Praxis als sehr zuverlässig erwiesen, da sich mit ihnen in einer sprecherunabhängigen Umgebung eine
niedrige Fehlerquote erreichen lässt. Obwohl -die Systeme gemäß den genannten Patentschriften gemäß
dem derzeitigen Stand der Technik als Spitzenprodukte anzusehen sind, haben sie dennoch hinsichtlich des
Konzepts, von welchem bei ihrer Entwicklung ausgegangen
-13-
BAD ORIGINAL
O L· O U O
A 45 326 b
k - 176 - 19 -
28.September 1982
wurde, sowohl hinsichtlich der Anzahl der ausgelösten Fehlalarme wie auch hinsichtlich ihrer Unabhängigkeit
vom jeweiligen Sprecher gewisse Nachteile.
Die in den genannten US-Patentschriften beschriebenen
Verfahren zur kontinuierlichen Spracherkennung sind in erster Linie darauf gerichtet, in einem "offenen
Vokabular" eine Anzahl von Schlüsselwörtern in einer kontinuierlichen Sprache zu erkennen bzw. zu lokalisieren.
Unter einer kontinuierlichen Sprache mit "offenem Vokabular" ist dabei eine Sprache zu verstehen,
in der dem Spracherkennungsgerät nicht alle Wörter bekannt sind. Bei einer speziellen Anwendung kann
eine kontinuierliche Wortkette erkannt werden, wobei als Ergebnis des Erkennungsprozesses die Identität
jedes einzelnen Wortelements der kontinuierlichen Wortkette ermittelt wird. Dabei ist unter einer kontinuierlichen
Wortkette im vorliegenden Zusammenhang, eine Anzahl von erkennbaren Elementen (ein "geschlossenes
Vokabular") zu verstehen, die durch die "Stille" bzw. durch Pausen begrenzt sind. Insofern besteht beispielsweise
eine gewisse Verwandtschaft zu den handelsüblichen Ausrüstungen, auf die vorstehend eingegangen
wurde, und zwar bezüglich der Auswertung isolierter Wörter, für die die (Wort-)Grenzen von vornherein bekannt
sind. Im vorliegenden Fall sind jedoch die Grenzen unbekannt und müssen vom Erkennungssystem selbst
erkannt werden. Außerdem sind die zu erkennenden Elemente nicht mehr einzelne Wortelemente, sondern
A 45 326 b
k - 176 - 20 -
28. September 1982
Wortketten, die dadurch gebildet sind, daß mehrere Elemente miteinander zu einer Kette bzw. einem Strang
verbunden sind.
Während bisher verschiedene Verfahren und Geräte zum Erkennen von kontinuierlichen Sprachsignalen entwickelt
wurden, zeigt eine nähere Überprüfung, daß dabei wenig
Aufmerksamkeit darauf verwandt wurde, die Spracherkennungsgeräte
automatisch so einzuüben, daß sie die nötigen Parameter erzeugen, die eine exakte Spracherkennung
möglich machen. Außerdem sind die bisher angewandten Verfahren bzw. Einrichtungen zum Bestimmen
der "Stille" bzw. der Pausen und zur Anwendung einer grammatikalischen Syntax, obwohl sie ihre Aufgaben
in gewissem Umfang erfüllen, in mancherlei Hinsicht noch verbesserungsbedürftig.
Der Erfindung liegt daher, ausgehend vom Stande der Technik, die Aufgabe zugrunde, ein Verfahren und ein
Gerät zur Spracherkennung bzw. Sprachanalyse anzugeben, bei dem im Verlauf eines übungsprogrammes eine verbesserte
Wirksamkeit hinsichtlich der Erzeugung neuer Erkennungsmuster erreicht werden kann.
Diese Aufgabe wird bei dem eingangs angegebenen Verfahren gemäß der Erfindung durch folgende Verfahrensschritte gelöst:
Man erzeugt mindestens eine erste und eine zweite Zielschablone, von denen jede eine andere Darstellung
-21-
BAD ORlQlNAL
A 45 326 b
k - 176
28. Seotember 1982
- 21 -
einer Pause in dem ankommenden Audiosignal darstellt;
man vergleicht das ankommende Audiosignal mit der ersten und der zweiten Zielschablone;
man erzeugt numerische Messwerte, die das Ergebnis der Vergleiche darstellen und
man entscheidet auf der Basis von zumindest den Meßwerten, ob eine Pause ermittelt wurde.
Was das Gerät anbelangt, so wird die gestellte Aufgabe
erfindungsgemäß durch ein Gerät gelöst, welches durch folgende Merkmale gekennzeichnet ist:
Es sind Einrichtungen vorgesehen, mit deren Hilfe mindestens eine erste und eine zweite Zielschablone erzeugbar
sind, von denen jede eine andere Darstellung einer Pause in dem ankommenden Audiosignal darstellt;
es sind Vergleichseinrichtungen vorgesehen, mit deren Hilfe das ankommende Audiosignal mit der ersten und
der zweiten Zielschablone vergleichbar ist;
es sind Einrichtungen zum Erzeugen numerischer Messwerte vorgesehen, die das Ergebnis der Vergleiche
darstellen und
es sind Entscheidungseinrichtungen vorgesehen, mit deren Hilfe auf der Basis von zumindest den Messwerten
entscheidbar ist, ob eine Pause ermittelt wurde.
Gemäß der Erfindung wird weiterhin angestrebt, ein Verfahren bzw. ein Gerät anzugeben, mit dem es auf
effektive Weise möglich ist, in einem unbekannten Audioeingangssignal Pausen zu erkennen, wobei der
-22-
BAD ORIGINAL
A 45 326 b
k - 176 - 22 -
28. Seotember 1982
Erkennungsprozess unter Verwendung einer grammatikalischen Syntax durchgeführt wird und wobei der Erkennungsprozess
so ausgelegt ist, daß für verschiedene Sprecher und damit für verschiedene Stimm- bzw. Sprachcharakteristiken
gleichmäßig gute Ergebnisse erhalten werden, die zuverlässig sind und zu einer geringeren
Anzahl von Fehlalarmen führen, wobei außerdem im Echtzeitbetrieb gearbeitet werden kann.
Im einzelnen befasst sich die Erfindung mit einem Verfahren bzw. einem Gerät zur Sprachanalyse, mit dem in
einem Audiosignal mindestens ein Schlüsselwort erkannt werden kann. Insbesondere befasst sich die Erfindung
auch damit, in einem ankommenden Audiosignal die "Stille" bzw. Pausen bzw. Wortgrenzen zu erkennen.
Erfindungsgemäß Werden dabei zumindest eine erste und
eine zweite Zielschablone erzeugt, welche zwei verschiedene Darstellungen der "Stille" in dem ankommenden
Audiosignal· beinhalten, wobei das ankommende Audiosignal mit der ersten und der zweiten Zielschablone
verglichen wird, um als Ergebnis des Vergleichs ein numerisches Maß bzw. einen numerischen Messwert zu
erzeugen und dann zumindest auf der Basis dieser Messwerte zu entscheiden, ob eine Stille bzw. Pause entdeckt
wurde.
In einer anderen Ausgestaltung betrifft die Erfindung
ein Verfahren zur Erkennung von Pausen in einem Äudiosignal, wobei folgende Schritte ausgeführt werden:
man erzeugt einen numerischen Messwert für die
-23-
BAD ORIGINAL
JlOUUJt
A 45 326 b
k - 176 - 23 -
28.September 1982
Wahrscheinlichkeit, daß der im Augenblick ankommende
Teil des Audiosignals einem: Bezugsmuster entspricht, welches eine Pause darstellt; man ändert den numerischen Messwert gemäß einer Syntax-abhängigen Entscheidung wirksam, wobei die Syntax-abhängige Entscheidung die Erkennung eines unmittelbar vorausgehenden Teils
des Audiosignals gemäß einer grammatikalischen Syntax darstellt, und man bestimmt aus dem wirksam geänderten Messwert, ob der vorliegende Signalteil einer Pause
entspricht.
Teil des Audiosignals einem: Bezugsmuster entspricht, welches eine Pause darstellt; man ändert den numerischen Messwert gemäß einer Syntax-abhängigen Entscheidung wirksam, wobei die Syntax-abhängige Entscheidung die Erkennung eines unmittelbar vorausgehenden Teils
des Audiosignals gemäß einer grammatikalischen Syntax darstellt, und man bestimmt aus dem wirksam geänderten Messwert, ob der vorliegende Signalteil einer Pause
entspricht.
In weiterer Ausgestaltung befasst sich die vorliegende
Erfindung mit einem Verfahren zur Bildung von Bezugsinustern,
die bekannte Schlüsselworte darstellen und
auf einen bestimmten Sprecher zugeschnitten sind. Dabei werden sprecherunabhängige Bezugsmuster bereitgestellt, welche die Schlüsselwörter darstellen. Außerdem werden unter Verwendung dieser sprecherunabhängigen Bezugsmuster die Grenzen der Schlüsselwörter in
Audiosignalen bestimmt, die von dem betreffenden
Sprecher gesprochen werden. Anschließend übt man dann die Sprachanalyse-Einrichtungen auf den betreffenden
Sprecher ein, indem man mit den Wortgrenzen arbeitet, die für die von dem betreffenden Sprecher gesprochenen Schlüsselwörter ermittelt wurden.
auf einen bestimmten Sprecher zugeschnitten sind. Dabei werden sprecherunabhängige Bezugsmuster bereitgestellt, welche die Schlüsselwörter darstellen. Außerdem werden unter Verwendung dieser sprecherunabhängigen Bezugsmuster die Grenzen der Schlüsselwörter in
Audiosignalen bestimmt, die von dem betreffenden
Sprecher gesprochen werden. Anschließend übt man dann die Sprachanalyse-Einrichtungen auf den betreffenden
Sprecher ein, indem man mit den Wortgrenzen arbeitet, die für die von dem betreffenden Sprecher gesprochenen Schlüsselwörter ermittelt wurden.
Die Erfindung befasst sich auch mit einem Verfahren
zur Bildung von Bezugsmustern, die ein zuvor unbekanntes Schlüsselwort darstellen, wobei man zunächst
sprecherunabhängige Bezugsmuster zur Verfügung stellt,
zur Bildung von Bezugsmustern, die ein zuvor unbekanntes Schlüsselwort darstellen, wobei man zunächst
sprecherunabhängige Bezugsmuster zur Verfügung stellt,
-24-
A 45 326 b
k - 176 - 24 -
28. September 1982
welche Schlüsselworten entsprechen, die den Analysiereinrichtungen
bereits zuvor bekannt waren, woraufhin man die Grenzen 'des unbekannten Schlüsselwortes unter
Verwendung der sprecherunabhängigen Bezugsmuster bestimmt. Anschließend übt man die Sprachanalysiereinrichtungen
unter Verwendung der zuvor von diesen für das zunächst unbekannte Schlüsselwort bestimmten Grenzen
derart ein, daß statistische Daten erzeugt werden können, die das zuvor unbekannte Schlüsselwort beschreiben.
In weiterer Ausgestaltung befasst sich die Erfindung mit einem Verfahren der Spracherkennung, bei dem die
Folge der zu erkennenden Schlüsselwörter durch eine grammatikalische Syntax beschrieben wird, die durch
mehrere, miteinander verbundene Entscheidungsknoten charakterisiert ist. Bei dieser Ausgestaltung wird
zunächst eine Folge numerischer Werte zum Erkennen von Schlüsselwörtern in dem Audiosignal bereitgestellt, wobei man eine dynamische Programmierung anwendet.
Anschließend wird die grammatikalische Syntax dazu verwendet, die Werte zu bestimmen, für die ein
Fortschreiten im Erkennungsprozess zulässig ist. Schließlich wird die Anzahl der Entscheidungsknoten
durch ein Zusammenfalten der. Syntax derart verringert,
daß ansonsten zulässige Vorrückschritte entsprechend der zusammengefalteten bzw. zusammengeklappten Syntax
verworfen werden.
-25-
BAD ORIGINAL
fc ♦ «I
A 45 326 b
k - 176 - 25 -
28. September 1982
Schließlich befasst sich die Erfindung mit Geräten,
mit deren Hilfe die verschiedenen, vorstehend beschriebenen Verfahrensvarianten der Sprachanalyse
ausführbar sind.
Im übrigen werden weitere Einzelheiten und Vorteile der Erfindung nachstehend anhand von Zeichnungen noch
näher erläutert und/oder sind Gegenstand weiterer Schutzansprüche. Es zeigen:
Fig. 1 ein Flußdiagramm, welches einen allgemeinen Überblick über die erfindungsgemäß
auszuführende Schrittfolge vermitteln soll;
Fig. 1A ein elektrisches Blockschaltbild einer
bevorzugten Ausführungsform eines Geräts zur Durchführung des erfindungsgemäßen
Verfahrens;
Fig. 2 ein schematisches Blockschaltbild eines
elektronischen Geräts zur Durchführung gewisser vorbereitender Operationen für das Verfahren gemäß Fig. T;
Fig. 3 ein Flußdiagramm in Form eines Digital-Rechnerprogramms
für eine Reihe von Schritten des Verfahrens gemäß Fig. 1;
A 45 326 b
Ic - 176 - 26 -
28. September 1982
Fig. 4 eine grafische Darstellung des erfindungsgemäßen Verfahrens zur gegenseitig
gen Ausrichtung von Mustern;
Fig. 5 ein elektrisches Blockschaltbild eines
Wahrscheinlichkeitsfunktions-Prozessors
für eine bevorzugte Ausführungsform eines Geräts zur Durchführung des erfindungsgemäßen
Verfahrens;
Fig. 6 ein elektrisches schematisches Blockschaltbild
einer Schaltung zum Subtrahieren und zur Absolutwertbildung für ein bevorzugtes Gerät zur Durchführung
des erfindungsgemäßen Verfahrens ;
Fig. 7 ein elektrisches Schaltbild einer logischen Schaltung zum Erfassen eines
Übertrags für eine bevorzugte Ausführungsform eines Geräts zur Durchführung des erfindungsgemäßen Verfahrens;
Fig.- 8 eine Wahrheitstabelle für die Schaltung
gemäß Fig. 7;
Fig. 9 ein schematisches Flußdiagramm für einen Syntax-Prozessor gemäß einer
bevorzugten Ausführungsform eines Prozessors für ein Gerät für die Durchführung
des erfindunasaemäßen Verfahrens;
BAD ORIGINAL
xJ C yJ U U \J
A 45 326 b
k - 176 - 27 -
28.September 1982
Fig. 9A eine schematische "Fluß"-Darstellung für einen Syntax-Prozessor zum Erkennen einer
durch Pausen begrenzten Wortkette aus fünf Ziffern;
Fig. 9B eine schematische "Fluß"-Darstellung für ein Flußdiagramm gemäß Fig. 9A nach dem
"Falten" bzw. Zusammenklappen desselben zur Verringerung der Anzahl der Knoten und
Fig. 10 ein elektrisches Blockschaltbild zur Erläuterung einer Schaltung für eine sequentielle
Decodierung und Musterausrichtung für eine bevorzugte Ausführungsform eines Geräts zur Durchführung deserfindungsgemäßen
Verfahren.
Im übrigen sind entsprechende Elemente in den verschiedenen Figuren jeweils mit den gleichen Bezugszeichen bezeichnet.
-28-
A 45 326 b
k - 176 , 28 -
28. September 1982
. Beschreibung eines bevorzugten Ausführungsbeispiels
3ei einem besonders bevorzugten Ausführungsbeispiel
der Erfindung, welches nachstehend erläutert wird, erfolgt die Spracherkennung und■ -einübung mit einem Gerät,
welches sowohl speziell konzipierte elektronische Baugruppen zur analogen und digitalen Aufbereitung
von ankommenden hörfrequenten Datensignalen - im
allgemeinen Sprachsignalen - umfasst als auch einen Mehrzweck-Digitalrechner, der erfindungsgemäß derart
programmiert ist, daß mit seiner Hilfe weitere Schritte zur Datenverarbeitung und zur numerischen Auswertung
der dabei erhaltenen Ergebnisse ausgeführt werden können. Die Aufteilung der einzelnen Aufgaben
auf die Hardware-Teile und die Software-Teile des Geräts bzw. des Systems ist dabei so durchgeführt,
daß insgesamt ein System erhalten wird, mit dem die Spracherkennung im Echtzeit-Betrieb bei mäßigem Kostenaufwand
erfolgen kann. Dabei ist jedoch zu beachten, daß einige der Aufgaben, die beim betrachteten System
von den Hardware-Kreisen ausgeführt werden, auch mittels geeigneter -Programme (Software) gelöst werden könnten.und
daß einige der Aufgaben, die beim betrachteten System mittels entsprechender Programme
gelöst werden, in Ausgestaltung der Erfindung auch mittels spezieller Schaltkreise gelöst werden könnten.
Dementsprechend werden nachstehend, soweit dies zweckmäßig erscheint, für verschiedene Einzelprobleme
sowohl die Hardware-Lösungen als auch die
-29-
BAD ORIGINAL
ί. \J U
A 45 326 b k - 176
28. SeDtember 19 82
- 29 -
Software-Lösungen für ein erfindungsgemäßes Gerät
beschrieben.
Ein wichtiger Aspekt der Erfindung besteht darin, daß mit Hilfe .des erfindungsgemäßen Gerätes Wortketten
in kontinuierlichen Sprachsignalen auch dann erkannt werden können, wenn diese Signale beispielsweise
aufgrund ihrer Übertragung über eine Telefonleitung verzerrt sind. Folglich können die Spracheingangssignale
am Eingang 10 in Fig. T als Sprachsignale betrachtet werden, die ausgehend von einem Kohlemikrofon
über eine Telefonleitung beliebiger Länge und/oder mit einer Anzahl von Schaltstellen zu einem Empfänger
übertragen wurden. Eine typische Anwendung der Erfindung besteht in der Erkennung kontinuierlicher Wortketten
in hörfrequenten Daten, die über das Telefonsystem von einer unbekannten Quelle'empfangen wurden.
Andererseits kann das Eingangssignal auch ein beliebiges Audio-Datensignal sein, beispielsweise ein
Spracheingangssignal", welches über den Rundfunk, beispielsweise
von einer privaten Sendestation, übertragen wurde.oder welches über eine private Leitung
übertragen wurde oder welches von einer in der. Nähe des Geräts stehenden Person gesprochen wurde.
Wie aus der nachstehenden Beschreibung noch deutlich
werden wird, befassen sich Verfahren und Gerät gemäß der Erfindung mit der Erkennung von Sprachsignalen,
welche eine Folge von Klangelementen oder Phonemen
*) insbesondere von einem unbekannten Sprecher
-30-
A 45 326 b
k - 176 - 30 -
28. September 1982
oder andere erkennbare Einzelheiten (Hinweise) enthalten. In der vorliegenden Beschreibung - und in den
Ansprüchen - wird von "einem Wort", "einem Element", "einer Folge von Zielmustern", "einem Schablonenmuster"
oder "einem Elementmuster" gesprochen, wobei diese fünf Bezeichnungen als allgemeine und äquivalente Bezeichnungen
zu betrachten sind. Dies ist eine bequeme Möglichkeit, eine erkennbare Folge von Audiosignalen
oder von dieser Folge entsprechenden Signalen zu bezeichnen, welche zusammengefasst die Wortkette ergeben, die mit
Verfahren und Gerät gemäß der Erfindung erfasst und erkannt werden können. Die einzelnen Bezeichnungen
sollten dabei im weitesten Sinne so verstanden werden, daß sie alles von einem einzigen Phonem, einer einzigen
Silbe oder einem einzigen Klang bis zu einer Folge von Worten (im grammatikalischen Sinne) umfassen oder
auch nur ein einziges Wort.
Das Sprechsignal bzw. das analoge Audiosignal vom Eingang 10 gelangt zu einem Analog/Digital-Wandler 13
- A/D-Wandler - -wo die analogen Daten in ein digitales Signal umgesetzt werden. Der A/D-Wandler 13 ist so
ausgebildet, daß die Amplitudenwerte in 12 Bit-Signale umgesetzt werden, und zwar mit einer Abtastfrequenz
von 8000 Abtastvorgängen pro Sekunde. (Bei anderen Ausführungsbeispielen wird mit anderen Abtastfrequenzen
gearbeitet, beispielsweise mit einer Frequenz von 16 kHz, wenn ein besonders hochwertiges
Digitalsignal erhalten werden soll.) Das Ausgangs-
-31-
BAD ORIGINAL
β- * *■
A 45 326 b k - 176
28. September 1982
- 31 -
signal des A/D-Wandlers 13 wird über Leitungen 15
dem Eingang eines Autokorrelationswandlers 17 bzw. einer Korrelationsschaltung zugeführt, wo die ankommenden
digitalen Eingangssignale mit einer Frequenz von 100 Hz zu einer Kurzzeit-Autokorrelationsfunktion
aufbereitet und an Ausgangsleitungen 19 gelegt werden. Jede Autokorrelationsfunktion umfasst dabei 32 Werte
bzw. Kanäle, wobei jeder Wert mit einer Auflösung von 30 Bit berechnet wird. Dia Autokorrelat-ionsschaltu.ig
wird nachstehend in Verbindung mit Fig. 2 noch näher erläutert.
Die auf den Leitungen 19 anstehenden Autokorrelationsfunktionen
werden in einer Schaltung 21 einer Fourier-Transformation unterworfen, um auf den Ausgangsleitungen
23 der Schaltung 21 innerhalb vorgegebener Zeitfenster liegende Kurzzeit-Leistungsspektren zu
erhalten. Die Leistungsspektren werden dabei mit derselben Frequenz erzeugt, mit der die Autokorrelationsfunktionen
erzeugt werden, d.h. mit einer Frequenz von 100 Hz, und jedes Kurzzeit-Leistungsspektrum wird
in Form von 31 numerischen Werten ausgegeben, von denen jeder als 16.3it-Signal dargestellt wird. Jeder der
3-1 Werte des Kurzzeit-Spektrums entspricht dabei dem Signalpegel innerhalb eines bestimmten Frequenzbandes.
Die Schaltung 21 zur Durchführung der Fourier-Transformation umfasst vorzugsweise Schaltkreise zur Er- .
zeugung einer Zeitfensterfunktion, insbesondere zur Erzeugung der Hamming-Funktion, wodurch das
-32-
BAD ORIGINAL
A 45 326 b
k - 176 - 32 -
28. September 1982
Übersprechen aus benachbarten Frequenzbändern reduziert wird.
Beim betrachteten ersten Ausführungsbeispiel erfolgen
die Fourier-Transformation sowie die weiteren Schritte der Datenverarbeitung vorzugsweise unter Steuerung
durch einen Mehrzweck-Digitalrechner, der in geeigneter Weise programmiert ist und mit einem peripheren FeId-
bzw. Matrix-Prozessor arbeitet, um die Rechenoperationen zu beschleunigen, die beim erfindungsgemäßen Verfahren
wiederholt erforderlich sind. Speziell wurde ein Rechner des Typs PDP-11 der Firma Digital Equipment Corporation,
Maynard, Massachusetts, USA, verwendet. Ferner wurde als Feld- bzw. Matrixprozessor (Array-Prozessor)
ein Prozessor der in der US-PS 4 228 498 beschriebenen Art verwendet. Die nachstehend noch anhand
von Fig. 3 zu erläuternde Programmierung ist speziell auf die Möglichkeiten und die charakteristischen
Eigenschaften der vorstehend angesprochenen handelsüblichen digitalen Prozessoreinheiten zugeschnitten.
Die den einzelnen Zeitfenstern zugeordneten Kurzzeit-Leistungsspektren
werden einer Frequenzgangentzerrung unterworfen, und zwar in Abhängigkeit von den Amplituden-Spitzenwerten,
die in den einzelnen Frequenzbändern bzw. Kanälen auftreten, wie dies nachstehend
noch näher .erläutert wird. Die hinsichtlich des Frequenzgangs
entzerrten Spektren werden mit einer Frequenz von 100 Hz erzeugt und über Leitungen 26
-33-
BAD ORIGINAL
A 45 326 b
k - 176 - 33 -
28. SeDtember 1982
übertragen, wobei jedes Spektrum durch 31 numerische W.erte dargestellt wird, die mit einer Auflösung von
16 Bit pro Wert übertragen werden. Um die endgültige Auswertung der ankommenden Audiodaten zu erleichtern,
werden die hinsichtlich des Frequenzgangs entzerrten, den einzelnen Zeitfenstern zugeordneten Spektren, die
über die Leitungen 26 übertragen werden., gemäß Block 35 einer Amplitudentransformation unterzogen, und zwar
einer nicht-linearen Amplitudentransformation. Diese
Transformation wird weiter unten noch näher erläutert, und es soll an dieser Stelle lediglich■darauf hingewiesen
werden, daß die Transformation die Genauigkeit verbessert, mit der das unbekannte eingangsseitige
Audiosignal· an Zielmusterschablonen in einem Bezugsvokabular angepasst werden kann. Bei Ausführungsbeispiel
wird die Transformation für alle Spektren vor dem Vergleich derselben mit Mustern durchgeführt,
welche die Elemente des Bezugsvokabulars darstellen.
Nach der Amplitudentransformation werden die Spektren
über die Leitungen 38 zum Block 40 übertragen, wo sie mit den Elementschablonen verglichen werden, wie
dies nachstehend noch im einzelnen erläutert wird. Die Bezugsmuster stellen gemäß Block 4 2 die Elemente
des Bezugsvokabulars in einer statistischen Form dar, die für einen Vergleich mit den transformierten und
entzerrten Spektren geeignet ist. Jedesmal, wenn eine "Pause" festgestellt wird, erfolgt eine Entscheidung
hinsichtlich der Identität der gerade
-34-
A 45 326 b
k - 176 - 34 -
28. September 1982
empfangenen Wortkette (Ausgang 44). Die Kandidaten-Worte
werden folglich entsprechend der höchsten, beim Vergleich ermittelten Übereinstimmung ausgewählt. Beim
Ausführungsbeispiel dient der Auswahlprozess dabei dazu, die Wahrscheinlichkeit, daß ein Schlüsselwort verloren
geht (oder falsch erkannt wird) auf ein Minimum zu reduzieren.
Fig. 1A zeigt ein Spracherkennungssystern gemäß der
Erfindung, bei dem ein sogenannter Controller bzw. ein Steuerprozessor 45 vorgesehen ist, der beispielweise,
durch einen Mehrzweck-Digitalrechner des Typs PDP-11
gebildet sein kann oder auch eine für das System speziell entwickelte diskrete Schaltung sein kann . Beim
Ausführungsbeispiel empfängt der Steuerprozessor 4 5
die vorverarbeiteten Audiodaten von einem Vorprozessor 46, der nachstehend anhand von Fig. 2 noch näher erläutert
wird. Der Vorprozessor 46 empfängt die analogen Audio-Eingangssignale über eine Leitung 47 und liefert
die bearbeiteten Daten über eine Schnittstelle 4 8 an den Steuerprozessor 45.
Im allgemeinen ist die Arbeitsgeschwindigkeit des
Steuerprozessors, wenn es sich bei diesem um einen Mehrzweck-Rechner handelt, nicht hoch genug, die ankommenden
Daten im Echtzeit-Betrieb zu verarbeiten. Daher können mit Vorteil verschiedene spezielle diskrete
Schaltungen verwendet werden, um die Arbeitsgeschwindigkeit des Steuerprozessors 4 5 zu erhöhen.
-35-
BAD ORIGINAL
A 45 326 b
k - 176 - 35 -
28. September 1982
Insbesondere führt ein sogenannter Vektorprozessor 48a,
wie er beispielsweise in der US-PS 4 228 4 98 beschrieben ist, durch Ausnutzung des sogenanngen Pipeline-Effektes
zu einer deutlich verbesserten .Feld- bzw. Matrix-Verarbeitungsgeschwindigkeit. Zusätzlich kann,
wie dies in Fig. 4, 5 und 6 noch näher beschrieben wird, ein Wahrscheinlichkeitsfunktions-Prozessor 48b
in Verbindung mit dem Vektorprozessor 48a eingesetzt
werden, um die Arbeitsgeschwindigkeit des Systems um den Faktor 10 zu erhöhen.
Während beim bevorzugten Ausführungsbeispiel· der Erfindung
als Steuerprozessor ein Digitalrechner verwendet wird, erfolgt beim abgewandelten Ausführungsbeispiel· gemäß Fig. 10 ein beträchtiicher Teil· der
Datenaufbereitung außerhalb des Steuerprozessors 4 5 in einem sequentieil· arbeitenden Decodierprozessor
Die Struktur dieses Prozessors wird in Verbindung mit Fig. 10 noch näher erläutert. Insgesamt hat das betrachtete
System zur Spracherkennung sowohl hinsichtlich der Arbeitsgeschwindigkeit als auch hinsichtlich
der Möglichkeit, die einzelnen Kreise hardware-mäßig oder software-maßig zu realisieren oder mit Hardware/
Software-Kombinationen zu arbeiten, eine hohe Flexibiiität.
-
-36-
A 45 326 b
k - 176 - 36 -
28. September 19 82
Bei dem System gemäß Fig. 2 werden die Autokorrelationsoperationen,
mit denen zwangsläufig eine Mittelwertbildung verbunden ist, digital auf der Basis der digitalen Daten
ausgeführt, die von dem A/D-Wandler 13 angeliefert werden, der die ankommenden analogen Audiodaten auf
der Leitung 10, im allgemeinen ein Sprachsignal·, aufbereitet. Der Wandler 13 liefert ein digitales Eingangssignal
über die Leitungen 15. Dabei erfolgt die zeitliche Steuerung der A/D-Umsetzung und der Ausführung
der Autokorrelationsfunktionen durch einen Taktoszillator
51, dessen Grundfrequenz von 256000 Hz mit Hilfe eines Frequenzteilers 52 heruntergeteilt wird,
um eine Impulsfolge mit einer Impulsfolgefrequenz von
8000 Hz zu erhalten. Diese Impulzfolge steuert den A/D-Wandler 13 und ein Latch-Register 53, in dem die
12 Bit-Worte der letzten Umsetzung jeweils solange gespeichert sind, bis die nächste Umsetzung beendet ist.
Die Autokorrelationsprodukte werden mit.Hilfe eines
digitalen Multiplizierers 56 erzeugt, der die im Register 5 3 gespeicherte Zahl mit dem Ausgang eines
32 Wort-Schieberegisters 58 multipliziert. Das Schieberegister 58 arbeitet dabei als umlaufendes Schieberegister
und wird mit der hohen Grundfrequenz (256 kHz) fortgeschaltet, so daß pro A/D-Urnsetzung ein kompletter
Umlauf der Daten des Schieberegisters erfolgt. Einmal während jedes vollständigen Umlaufs übernimmt
-37-
BAD ORIGINAL
/L J b b
A 45 326 b
k - 176 - 37 -
28. September 1982
das Schieberegister 58 die in dem Register 5 3 gespeicherten
Daten. Ein erster Eingang des digitalen Multiplizieren 5 6 ist direkt mit dem Register 5 3
verbunden, während der andere Eingang des Multiplizierers (abgesehen von der nachstehend angesprochenen
Ausnahme) das jeweilige Ausgangssignal· des Schieberegisters über einen Multiplexer 59 empfängt. Die
Multiplikationen werden mit der höheren Taktfrequenz ausgeführt.
Jeder - Digitalwert vom Ausgang des A/D-Wandlers wird
also mit jedem, der 31 zuvor erzeugten Wandlerausgangssignale
multipliziert. Man sieht, daß die auf diese Weise erzeugten .Signale einer Multiplikation des Eingangssignals
mit sich selbst entsprechen, und zwar mit einer Verzögerung um je einen von 32 Zeitschritten, von
denen der eine der Verzögerung Null entspricht. Zur Erzeugung der Korrelation mit der Verzögerung Null,
d.h. zur Erzeugung des Leitungswertes des Signals, bewirkt der Multiplexer 59, daß der Inhalt des Registers
53 immer dann mit sich selbst multipliziert wi_rd, wenn ein neuer Wert in das Schieberegister eingespeichert
wird. Diese Zeitfunktion wird gemäß Block 6 0 erreicht, der für eine Schaltung steht,, die dafür
sorgt, daß der Multiplexer 59 außer bei der Übernahme neuer Daten - in diesem Fall w ird der Eingang A auf den
Ausgang durchgeschaltet - seinen Eingang B auf ·
seinen Ausgang zum Multiplizierer 56 durchschaltet. Man sieht außerdem, daß die aufgrund einer einzigen
-38-
A 45 326 b
k - 176 - 38 -
28. September 1982
A/D-Umsetzung durch Multiplikation mit ihren 31 Vorgängern
erhaltenen Produkte die Energieverteilung bzw. das Spektrum über ein vernünftiges Abtastintervall
nicht hinreichend genau darstellen. Folglich ist in dem System gemäß Fig. 2 für eine Mittelwertbildung
bei diesen Sätzen von Produkten gesorgt..
Ein Rechenvorgang, mit dem diese Mittelwertbildung
erreicht wird, wird dadurch realisiert., daß ein weiteres 32 Wort-Schieberegister 63 derart mit einem Addierer
65 verbunden wird, daß ein Satz von 32 Akkumulatoren gebildet wird. Jedes Wort kann folglich umlaufen,
nachdem es zu dem entsprechenden Schritt vom Ausgang des Multiplizierers 56 addiert ist. Die umlaufschleife
enthält dabei ein Gatter 67, welches von einem durch N teilenden Teiler 6 9 gesteuert wird, der seinerseits
mit dem niedrigeren Taktsignal (8 kHz) gesteuert wird. Der Teiler 69 teilt die niedrigere Taktfrequenz
durch einen Faktor N, der die Anzahl der in jedem Augenblick für den Additionsvorgang vorgesehenen
Autokorrelationsfunktionen bestimmt, so daß eine Mittelwertbildung erfolgt, ehe der Inhalt des Schieberegisters
6 3 ausgelesen wird.
Beim Ausführungsbeispiel werden vor dem Auslesen jeweils
80 Proben addiert. Mit anderen Worten gilt also für den Divisor des Teilers 69 der Wert N = 80. Nachdem
80 umgesetzte Proben korreliert und addiert sind, triggert der Teiler 6 9 eine Rechner-Interrupt-Schaltung
71 über eine Leitung 72. Zu diesem Zeitpunkt werden
BAD ORIGINAL
A 45 326 b
k - 176 ■ - 39 -
28. September 1982
die Inhalte des Schieberegisters 6 3 nacheinander über eine geeignete Schnittstelle 7 3 in den Rechnerspeicher
eingelesen, wobei die 32 aufeinanderfolgenden
Worte aus dem Register dem Rechner über die stelle 7 3 in geordneter Folge zugeführt werden. Man
sieht, daß diese Datenübertragung von einer Peripherieeinheit, dem Autokorrelations-Vorprozessor, zum Rechner
typischerweise nach dem Verfahren des direkten Speicherzugriffs (DMA-Verfahren) erfolgen kann. Unter der
Voraussetzung, daß eine Mittelwertbildung über 80 Proben erfolgt.und daß die ursprüngliche Abtastfrequenz
bei 8000 kHz liegt wird deutlich, daß in den Rechner pro Sekunde 100 gemittelte Autokorrelationsfunktionen
eingespeichert werden.
Während der Schieberegisterinhalt in den Rechner ausgelesen wird, ist das Gatter 67 gesperrt, so daß der
Registerinhalt für jedes Wort wirksam auf Null zurückgesetzt
.vird, damit der Addier- bzw. Akkumuiiervorgang erneut beginnen kann.
Die Funktion des Systems gemäß Fig. 2 lässt sich mathematisch wie folgt beschreiben:
Wenn man annimmt, daß der A/D-Wandler 13 eine zeitliche Folge von Signalen S (t) erzeugt, wobei t = 0,Tn,
2TQ,... und wobei TQ = Abtastintervall (beim Ausführungsbeispiel
■ Sekunden), dann kann die digitale Korrelationsschaltung gemäß Fig. 2 unter Vernachlässigung
der Undefinierten Startbedingungen
-40-
A 45 326 b
k - 176 - 40 -
28. September 19 82
als eine Schaltung zum Berechnen der folgenden Autokorrelationsfunktion
angesehen werden:
79
3(t+kTQ) S(t+(k-j) To)
k=0
wobei j =0, 1, 2 ..., 31; t = 80 T , 160 T , ..., 8On T , ... Diese Autokorralationsfunktionen entsprechen
den korrelierten Ausgangssignalen auf den Leitungen 19 in Fig. 1.
Betrachtet man Fig. 3, so erkennt man, daß der Digital-Korrelator
zum Rechner kontinuierlich eine Folge von Datenblöcken überträgt, und zwar mit einer Geschwindigkeit,
bei der eine vollständige Autokorrelationsfunktion alle 10 ms übertragen wird. Dies entspricht dem Block
in Fig.- 3. Jeder Datenblock stellt die Autokorrelationsfunktion dar, die für ein entsprechendes Zeit-Unterintervall
erhalten wurde. Wie oben ausgeführt, werden die betrachteten Autokorrelationsfunktionen dem Rechner
mit einer Frequenz von hundert 32 Wort-Funktionen pro Sekunde zugeführt. Dieses Analysierintervall· wird nachstehend
als ein "Rahinen" bezeichnet.
Beim ersten -Ausführungsbeispiel erfolgt die Verarbeitung
der Autokorrelationsfunktionsdaten mittels eines geeignet programmierten Spezial-Digitalrechners.. Das
Flußdiagramm, welches die Funktionen umfasst, die aufgrund des Rechnerprogramms ausgeführt werden, ist in
-41-
BAD
O ΔΟΌΟΟΗ
A 45 326 b
k - 176 - 41 -
28. September 1982
Fig. 3 gezeigt. Dabei ist jedoch erneut darauf hinzuweisen,
daß di.e verschiedenen Schritte auch mittels diskreter Schaltungen realisiert werden können, während
andererseits gewisse Funktionen des Systems gemäß Fig.2 durch- eine entsprechende Überarbeitung des Flußdiagramms
gemäß Fig. 3 zusätzlich ausgeführt werden könnten.
Obwohl der Digitalkorrelator gemäß Fig. 2 eine gewisse
zeitliche Mittelung der Autokorrelationsfunktionen durchführt, die auf der Basis der Augenblickswerte erzeugt
werden, können die gemittelten Autokorrelationsfunktionen,
die an den Rechner ausgelesen werden, immer noch gewisse anomale Diskontinuitäten oder Ungleichmäßigkeiten
aufweisen, die die ordnungsgemäße Verarbeitung und Auswertung der Proben beeinträchtigen
können. Jeder Datenblock, d.h. jede Autokorrelationsfunktion
a(j,t) wird folglich zunächst zeitlich geglättet - 31ock 78. Das Glätten erfolgt dabei vorzugsweise
so, daß für die geglättete Autokorrelationsfunktion folgende Gleichung gilt:
as
a(j,t-T) + C2a(j,t-2T) (2)
wobei a(j,t) = ungeglättete, eingelesene Autokorrelationsfunktion
gemäß Gleichung (1); a (j,t) = geglättete Autokorrelationsfunktion (Ausgang Block 78), j = Verzögerungszeit,
t = Echtzeit und T = Zeitintervall zwi-' sehen zwei aufeinanderfolgenden Autokorrelationsfunktionen
(Rahmen) = 0,01 s beim Ausführungsbeispiel.
-42-
A 45 326 b
k - 176 - 42 -
23. September 1982
Die Bewichtungsfunktionen bzw. Gewichte C , C. , Cx
werden beim Ausführungsbeispiel vorzugsweise mit 1/4, 1/2, 1/4 gewählt, obwohl auch andere Werte gewählt
werden könnten. Eine Glättungsfunktion zur Annäherung
einer Gauss'sehen Impulswiedergabe mit einer unteren
Grenzfrequenz von 20 Hz könnte beispielsweise durch ein unterprogramm realisiert werden. Experimente
zeigten jedoch, daß die leichter zu realisierende Glättungsfunktion gemäß Gleichung 2 befriedigende
Ergebnisse liefert. Man sieht, daß die Glättungsfunktion
für jeden Wert j der Verzögerung getrennt angewandt wird.
Wie nachstehend noch deutlich werden wird, sind für die anschließende Analyse verschiedene Operationen
hinsichtlich des Xurzzeit-Fourier-Leistungspektrums
des Sprachsignals erforderlich. Dabei wird, um
einfache Schaltungen und eine hohe Arbeitsgeschwindigkeit zu erhalten, die Transformation der
Autokorrelationsfunktionen in. den Frequenzbereich beim Ausführungsbeispiel in einer 8 Bit-Berech- .
nung . durchgeführt wird. Bei der oberen Grenzfrequenz des Bandpasses in der Nähe von 3 kHz nimmt
die spektrale Leistungsdichte auf einen Pegel ab, bei dem die Auflösung in 8 Bit-Signale nicht mehr angemessen
ist. Der Frequenzgang des Systems wird daher so gewählt, daß sich ein schräger Verlauf ergibt,
gemäß welchem pro Oktave eine Anhebung um 6 dB erreicht wird - 31ock 79. Diese Anhebung bei den
hohen Frequenzen wird erreicht, indem man die zweite
-43-BAD OR»·
JZJbö
A 45 326 b
k - 176
28. September 19 82
- 43 -
Ableitung der Autokorrelationsfunktion bezüglich des Arguments derselben, d.h. die Zeitverzögerung bzw.
Nacheilung verwendet. Für die abgeleitete Funktion gilt:
t)
2a(j,t) - a(j-
(3)
Zur Auswertung der Ableitung für j = 0 wird, angenommen,
daß die Autokorrelationsfunktion zu Null symmetrisch
ist, so daß gilt: a(-j,t) = a(+j,t). Außerdem sind keine Daten für a(32) vorhanden, so daß.davon ausgegangen
wird, daß die Ableitung bei j = 31 dieselbe ist wie die Ableitung bei j = 30.
Wie aus dem Flußdiagramm gemäß Fig. 3 deutlich wird, besteht der nächste Schritt des Analysierverfahrens
nach der Anhebung der hohen Frequenzen darin, die Signalenergie im laufenden Rahmenintervall abzuschätzen,
indem der Spitzenabsolutwert der Autokorrelation gefunden wird. Für die geschätzte Leistung gilt:
P(t) = max i
4)
Zur Aufbereitung der Autokorrelation für die 8 Bit-Spektrumanalyse
wird die geglättete Autokorrelationsfunktion
bezüglich P(t) blockweise normiert.- Block 80 - und die acht höherwertigen Bits jedes normierten Wertes werden
-44-
A 45 326 b
k - 1 7 6 _44_
28. September 19 82
in die diskreten Schaltungen zur Spektrumanalyse eingegeben. Für die normierte (und geglättete). Autokorrelationsfunktion
gilt folglich:
c(j,t) = 127 b(j,t)/P(t) . (5;
Gemäß Block 81 wird jede zeitlich geglättete, durch die Frequenzanhebung aufbereitete, normierte Autokorrelationsfunktion
c(j,t) einer Kosinus-Fourier-Transformation
unterworfen, um ein Leistungsspektrum mit
31 Punkten zu erzeugen. Die Matrix der Kosinus-Werte ergibt sich gemäß folgender Gleichung:
S(i,j) - 126 g(i) (cos (JTi/8000)f(j)), j - 0, 1, 2, ... ,31 (β)
wobei S (i,j) die spektrale Energie in einem Band mit der Mittelfrequenz f(j) (in Hz) zum Zeitpunkt t ist;
wobei g(i) = 1/2(1 + cos 2^Ti/63) die Einhüllende der
(Hamming-)Fensterfunktion ist, die dazu dient, die Seitenbänder zu unterdrücken und wobei gilt:
f(j) = 30 + 1000 (0.0552J + 0 . 438) Π/0'63„ ._,
η ζ ; ( ι)
j - 0, 1, 2, ..., 31
-45-
BAD ORIGINAL
J Z όD ö ό
A 45 326 b
k - 176
28. September 1982
- 45 -
wobei es sich um die analysierten Frequenzen handelt,
die in regelmäßigen Abständen auf der sogenannten "mel"-Kurve - (Melodie-Kurve) der Subjekten musikalischen
Tonhöhe liegen. Man erkennt, daß dies einem subjektiver. Tonhöhen-(mel-Skala)-Frequenz-Achsenabstand für Frequenzen
auf der Bandbreite eines typischen Kommunikationskanals zwischen etwa 300 und 3500 Hz entspricht.
Da- die Spektrumanalyse das Summieren über Nacheilungen
zwischen -31 und +31 erforderlich macht, werden unter der Voraussetzung, daß die Autokorrelation nulisyminetrisch
ist, nur die positiven Werte von j benötigt. Um jedoch zu vermeiden, daß die Macheilung
für den Null-Wert zweimal gezählt wird, wird die Kosinusmatrix so gewählt, daß gilt:
S(O,j) = 126/2 = 63, für alle j.
Das berechnete Leistungsspektrum ist somit durch folgende
Gleichung gegeben:
S1 (j,t) =
31
a(i,t) S (i, j
i=0
wobei das j-ste Ergebnis der Frequenz f(j) entspricht.
-46-
BAD ORIGINAL
A 45 326 b
k - 176
28. September 1982
k - 176 - 46 -
Man sieht weiterhin, daß jeder Punkt oder Wert in jedem Spektrum einem zugeordneten Frequenzband entspricht.
Während diese Fourier-Transformation vollständig mittels der üblichen Rechner-Hardware durchgeführt
werden kann, kann der Prozess, beträchtlich beschleunigt werden, wenn ein externer, als diskrete
Schaltung aufgebauter Multiplizierer oder ein Peripheriegerät
zur schnellen Fourier-Transformation FFT-Gerät (Fast Fourier Transform)- verwendet wird.
Aufbau und Funktion derartiger Geräte.bzw. Moduln sind jedoch wohlbekannt und sollen daher hier nicht
detailliert beschrieben werden. Vorteilhaft sind in das periphere FFT-Gerät Schaltkreise integriert,
die für die Frequenzglättung sorgen, wobei jedes Spektrum frequenzmäßig entsprechend der oben angegebenen
bevorzugten (Hamming-)Fenster-Bewichtungs-Funktion g(i) geglättet wird.. Dies-entspricht dem
Block 8 3 innerhalb des Blockes 85, welcher der hardwaremäßigen
Realisierung der Fourier-Transformation entspricht.
Wenn ein beträcntliches Hintergrundgeräusch vorhanden ist, sollte in dieser Verfahrensstufe von der Funktion
S1(j,t) ein geschätztes Leistungsspektrum des Hintergrundgeräusches
abgezogen werden. Dabei sollten.der bzw. die Rahmen der bzw. die zur Darstellung des Geräuschs
gewählt wurden, keine Sprachsignale enthalten. Die optimale Regel für die Wahl der Geräuschrahmenintervalle
ändert sich je nach Anwendung. Wenn, der
-47-
BAD ORIGINAL
Jbö J
A 45 326 b
k - 176 - _ 47 _
28. September 19 82
Sprecher beispielsweise bei einer Kommunikation in zwei Richtungen mit einer Maschine beschäftigt ist,
die durch das Spracherkennungsgerät gesteuert wird/ dann ist es beispielsweise bequem, willkürlich einen
Rahmen in dem Intervall zu wählen, welches unmittelbar auf den Zeitpunkt folgt, zu welchem die Maschine
das Sprechen über ihre Sprecheinheit beendet hat. In weniger eingeschränkten Situationen kann der geeignete
Geräuschrahmen gefunden werden, indem man einen Rahmen mit einer minimalen Amplitude während der letzten
ein oder zwei Sekunden eines Audioeingangssignals wählt.
Wie weiter unten noch näher beschrieben werden wird, führt die Verwendung des "?ausen"-Musters mit minimaler
Amplitude.bzw. in Wirklichkeit die verwendung zweier verschiedener "?ausen"-Muster zu einer deutlich
vorteilhafteren Arbeitsweise des Geräts.
Während von dem FFT-Gerät - Block 8 5 - nacheinander geglättete Leistung.sspektren empfangen werden, erreicht
man eine Kommunikationskanalentzerrung, indem für diese Spektren eine (im allgemeinen verschiedene)
Spitzenleistungsspektrum-Einhüllende bestimmt wird und indem das Ausgangssignal des FFT-Geräts, wie dies
nachstehend beschrieben wird, entsprechend multipliz.iert wird. Jedes neu erzeugte Spitzenamplitudenspektrum
p(j,t), welches einem ankommenden, unter Verwendung der Fensterfunktion ermittelten Leistungsspektrum
S1(j,t) entspricht und von diesem auf den
neuesten Stand gebracht wird, wobei j schrittweise
-48-
A 4 5 3 26 b
k - 176 - 48 -
28. September 1982
über die verschiedenen Frequenzbänder des Spektrums fortgezählt wird, ist das Ergebnis einer Spitzenerfassungsfunktion
mit schnellem Anstieg und langsamem Abfall für jedes bzw. jeden der Spektrumbänder bzw.
-kanäle. Die mit Hilfe der Fensterfunktion ermittelten Leistungsspektren werden bezüglich der zugeordneten
Werte des entsprechenden Soitzenamplitudenspektrums
normiert. Dies entspricht dem Block 87.
Beim betrachteten Ausführungsbeispiel werden die Werte
des "alten" Spitzenamplitudenspektrums p(j,t-T), die
vor dem Smpfang eines neuen, unter Berücksichtigung einer Fensterfunktion ermittelten Spektrums bestimmt
wurden, mit dem neu eintreffenden Spektrum 3'(j,t)
auf einer Frequenzband-für -Frequenband-Basis verglichen.
Das neue Spitzenspektrum p(j,t) wird dann gemäß folgenden Regeln erzeugt: die Leistungsamplitude
in jedem Band des "alten" Spitzenamplitudenspektrums wird mit einem festen Bruchteil, beispielsweise mit
1023/1024 beim betrachteten Ausführungsbeispiel multipliziert. Dies entspricht dem langsam abfallenden
Teil der Spitzendetektorfunktion. Wenn die Leistungsamplitude
in einem Frequenzband j des ankommenden Spektrums S'(j,t) größer ist als die Leistungsamplitude
in dem entsprechenden Frequenzband des abgefallenen Spitzenamplitudenspektrums, dann wird .der abgefallene
Spitzenamplitudenspektrumwert für dieses Frequenzband bzw. diese Frequenzbänder durch den
Spektrumwert des entsprechenden Bandes des ankommenden, unter Verwendung der Fensterfunktion ermittelten
-49-
BAD ORIGINAL
JZODOJ4
A 45 326 b
k - 176 - 49 -
28. September 1982
Spektrums ersetzt« Dies entspricht dem schnell ansteigenden
Teil der Spitzendetektorfunktion. Mathematisch gilt für die Spitzendetektorfunktion folgende
Gleichung:
p(j,t) = irax£p(j,t-T)-(1-E); P(t)-S1 (j,t)J J=O,1,...,31 (10)
wobei j für die einzelnen Frequenzbänder weitgezählt
wird, wobei p(j,t) das resultierende Spektrum ist, wobei p(j, t-T) das "alte" bzw. das vorangehende
Spitzenspektrum ist, wobei S'(j,t) das neu ankommende, teilweise verarbeitete Leistungsspektrum ist, wobei
P (t) die. geschätzte Leistung zur Zeit t ist und wobei E der Abfallparameter ist.
Gemäß Gleichung 10 fällt das Spitzenspektrum normalerweise,
wenn ein höherer Wert des Spektrumeingangssignals fehlt, mit dem Faktor 1-E.ab. Typischerweise
gilt E = 1/1024. Es kann jedoch unerwünscht sein, das Spitzenspektrum während der Pausenintervalle abfallen
zu lassen, insbesondere, wenn keine schnelle Änderung in den Kommunikationskanälen oder in der Sprechcharakteristik
zu erwarten ist. Zum Bestimmen des Pausenrahmens kann das gleiche Verfahren wie zum Auswählen
der Hintergrundgeräuschrahmen. angewandt werden. Die Amplituden ( Vp(O) der letzten 128 Rahmen werden
geprüft, und es wird der Minimalwert ermittelt. Wenn die Amplitude des gerade laufenden Rahmens kleiner
-50-
A 45 326 b
k - 176
28. September 198 2
k - 176 _ 50 _
ist als das Vierfache dieses Minimums, wird der laufende Rahmen als Pausenrahmen bestimmt, und für Ξ wird
der Wert 1/1024 durch den Wert 0 ersetzt.
Nachdem das Spitzenspektrum erzeugt ist, wird das daraus resultierende Spitzenamplitudenspektrum p(j,t)
gemäß Block 89 frequenzmäßig geglättet, indem jeder Frequenzbandspitzenwert mit den Spitzenwerten gemittelt
wird, die den benachbarten Frequenzen der neu erzeugten Spitzenspektren entsprechen, vobei die
Breite des gesamten Frequenzbandes,das zur Mittelwertbildung
beiträgt, ungefähr gleich dem typischen Frequenzabstand
zwischen den Formantfrequenzen ist. Wie der Fachmann weiß, beträgt dieser Abstand etwa
1000 Hz. Durch die Mittelwertbildung in dieser speziellen weise wird die nützliche Information in den
Spektren, d.h. die lokalen Änderungen, die Formantresonanzen enthüllen, erhalten, während die Gesamtanhebung
bzw. die Grobanhebung im Frequenz Spektrum unterdrückt wird. Das Spitzenspektrum wird erfindungsgemäß
vorzugsweise dadurch bezüglich der Frequenz geglättet, daß man die Mittelwertbildung nach einer
Funktion ausführt, welche sieben benachbarte Frequenzbänder erfasst und für die folgende Gleichung gilt:
p(k,t) (11)
-51-
BAD
J Z J D ö J
A 4 5 3 26 b
k - 176 - 51 -
28. September 1982
Bezüglich der Enden des durchgelassenen Frequenzbandes
wird davon ausgegangen, daß p(k,t) für k>31 und k CO
O ist. Die normierende Einhüllende h (j) berücksichtigt
die Anzahl der tatsächlich summierten gültigen Datenelemente. Folglich gilt: h(0) = 7/4; h(1) = 7/5,
h(2) = 7/6, h(3) = 1, ..., h(28) = 1, h(29) = 7/6, h(30) = 7/5 und h(31) = 7/4. Das resultierende geglättete
Spitzenamplitudenspektrum e(j/t) wird dann verwendet,
um das gerade empfangene Leistungsspektrum S1(j,t) zu normieren und hinsichtlich des Frequenzgangs
zu entzerren, und zwar dadurch, daß die Amplitudenwerte jedes Frequenzbandes des ankommenden geglätteten
Spektrums S'(j,t) durch den entsprechenden Frequenzbandwert in dem geglätteten Spitzenspektrum
e(j,t) geteilt werden. Diese Division entspricht folgender Gleichung:
sn(j,t) - (S'(j,t) / e(j,t)) 32767 (12)
wobei s (f,t) das spitzennormierre, geglättete Leistungs-η
spektrum ist und wobei j über die einzelnen Frequenzbänder fortgeschaltet wird-. Dies entspricht dem Block
91. Man erhält auf diese Weise eine Folge von frequenzentzerrten und normierten Kurzzeitleistungsspektren,
welche die Änderungen im Frequenzgehalt des ankommenden Audiosignals betonen, während alle generalisierten .
Langzeitfrequenzerhöhungen oder -Verzerrungen unterdrückt
werden. Dieses Verfahren der Frequenzkompensation
-52-
A 45 326 b
k - 176 - 52 -
28. September 1982
hat sich bei der Erkennung von Sprachsignalen, die über frequenzverzerrende Verbindungsleitungen, wie
z.B. Telefonleitungen, übertragen werden, gegenüber den üblichen Methoden der Frequenzkompensation als
besonders vorteilhaft erwiesen, bei denen der durchschnittliche Leistungspegel im gesamten Signal oder
in jedem einzelnen Frequenzband als Basis für die Kompensation genommen wird.
An dieser Stelle ist es nützlich, darauf hinzuweisen, daß zwar die aufeinanderfolgenden Spektren auf die
verschiedene Weise bearbeitet und entzerrt wurden, daß aber die Daten, welche die ankommenden Audiosignale
darstellen, immer noch Spektren sind, die mit einer Frequenz von 100 Kz auftreten.
Die normierten und frequenzentzerrten Spektren gemäß ■
Block 91 werden gemäß Block 9 3 einer Amplitudentransformation unterworfen, welche eine nicht-lineare
Maßstabsänderung der Spektrumamplitudenwerte bewirkt. Bezeichnet man die einzelnen frequenzentzerrten und
normieren Spektren mit s (j, t) (vgl. Gleichung 12), i_n denen j den Index für die verschiedenen Frequenzbänder
des Spektrums bildet, während t die Echtzeit bezeichnet, dann gilt für das nicht-lineare Spektrum
x(j,t) mit geändertem Maßstab folgende lineare Gleichung:
sn(j,t) - A
j,t) = 128 j=0, 1, ...,30 (13)
j,t) = 128 j=0, 1, ...,30 (13)
-5 3-
BAD
A 45 326 b
k - 176 - 53 -
28. September 19 82
wobei A der Mittelwert des Spektrums s (j,t) von j=0
bis 31 ist und wie folgt definiert ist:
32 j=0
wobei j als Index den einzelnen Frequenzbändern des Leistungsspektrums zugeordnet ist.
Der einunddreißigste Term des Spektrums wird durch den
Logarithmus von A ersetzt, so daß gilt:
x(31 ,t) = 16 log.,
Diese Maßstabsfunktion (Gleichung 13) führt zu einem
sanften Schwellwerteffekt und einem allmählichen Sättigungseffekt
für die spektralen Intensitäten, welche stark vom Kurzzeit-Mittelwert A abweichen. Mathematisch
ist die Funktion für Intensitäten in der Nähe des Mittelwerts annähernd linear. Für Intensitäten, die weiter
vom Mittelwert abliegen, isr die Funktion annähernd logarithmisch und für extreme Intensitätswerte ist
die Funktion im wesentlichen konstant. In einem logarithmischen Maßstab ist die Funktion x(j,t) zu
Null symmetrisch und besitzt ein Schwellwert- und Sättigungsverhalten, welches an das Ansprechverhalten
-54-
A 45 326 b
k - 176 - 54 -
28. September 1982
eines Gehörnervs denken lässt. In der Praxis ist das gesamte Erkennungssystem wesentlich besser mit dieser
speziellen, nicht-linearen Maßstabsfunktion als ein System mit einer linearen oder einer logarithmischen
Abbildung der Spektrumamplituden.
Es wird also eine Folge von amplitudentransformierten,
hinsichtlich des Frequenzgangs entzerrten, normierten,. Xurzzeitleistungsspektren x(j,t) erzeugt, wobei t =
0,01 s, 0,02 s... und j = 0, ..., 30 (entsprechend den Frequenzbändern der erzeugten Leistungsspektren).
Für jedes Spektrum werden 3 2 Wörter vorgesehen und der Wert von A (Gleichung 15), der Mittelwert der
Spektrumwerte, wird als das zweiunddreißigste Wort gespeichert. Die amplitudentransformierten Xurzzeitleistungsspektren,
die nachstehend als Rahmen bezeichnet werden, werden gemäß Block 95 gespeichert, und
zwar in einem umlaufenden Speicher, welcher in der Betriebsart "zuerst rein - zuerst raus" (first-in first-out
= FIFO) arbeitet und beim Ausführungsbeispiel eine Speicherkapazität von 256 Zweiunddreißig-Wort-Spektren
besitzt. Für die Analyse stehen also 2,56 Sekunden des Audioeingangssignals zur Verfügung.
Diese Speicherkapazität führt bei dem Erkennungssystem zu der Flexibilität, nötigenfalls für die
Analyse und Auswertung auf Spektren zurückzugreifen,
die unterschiedlichen Echtzeiten zugeordnet sind, so daß je nach den Erfordernissen.der Analyse zeitlich
vorgegriffen oder zurückgegriffen werden kann.
-55-
BAD ORIGINAL
A 45 326 b
k - 176 . _ 55 _
28. September 1982
Die Rahmen für die letzten 2,56 Sekunden sind also in dem umlaufenden Speicher gespeichert und bei Bedarf
verfügbar. Im Betrieb wird jeder Rahmen für 2,56 Sekunden gespeichert. Ein Rahmen, der in den umlaufenden
Speicher zum Zeitpunkt t eintritt, geht also verloren bzw. wird 2,56 Sekunden später aus dem Speicher herausgeschoben,
wenn zum Zeitpunkt t1 + 2,56 s ein neuer
Rahmen eingespeichert wird.
Die Rahmen, die den umlaufenden Speicher passieren, werden vorzugsweise im Echtzeitbetrieb mit einem bekannten
Vokabular von Worten verglichen, um die Eingangsdaten in Wortgruppen, die Wortketten genannt
werden, zu bestimmen und zu identifizieren. Jedes wort des Vokabulars wird durch ein Schablonenmuster
dargestellt, welches statistisch eine Anzahl von verarbeiteten Leistungsspektren darstellt, die zu
mehreren, nicht überlappenden Mehrfach-Rahmen
(vorzugsweise 3 Rahmen-Zeichensatzmustern) zusammengestellt sind. Diese Muster werden vorzugsweise
so gewählt, daß sie signifikante akustische Eigenheiten der Worte des Vokabulars am besten darstellen,
und sind im Block 96 gespeichert.
Die Spektren, welche die Zeichensatzmuster bilden, werden aus den-Worten erzeugt, die in den verschiedenen
Kontexten gesprochen werden, wobei dasselbe System, welches oben beschrieben wurde, verwendet
wird, um das kontinuierliche unbekannte Sprachein-
-56-
ORIG/NAL
A 45 326 b
k - 176
28. September 1982
- 176 - 56 -
gangssignal von der Leitung 10 in Fig. 1 zu verarbeiten.
Zu jedem Wort des Vokabulars gehören somit im allgemeinen mehrere Folgen von Zeichensatzmustern -PCi)1,
P(i) _,..., welche in einem Bereich der Kurzzeitleistungsspektren
eine Bezeichnung dieses i-ten Schlüsselworts darstellen. Die Sammlung von Zeichensatzmustern fürjedes
Schlüsselwort bildet die statistische Basis, auf welcher die Zielmuster erzeugt werden.
3eim Ausführungsbeispiel können die Zeichensatzmuster
P(i) . als ein Feld mit 9-6 Elementen angesehen werden, welches drei ausgewählte Rahmen umfasst, die zu einer
Reihenfolge geordnet sind. Die das Muster bildenden Rahmen sollten mindestens einen Abstand von 30 ras haben,
um eine Störkorrelation aufgrund der Zeitdomänen Glättung zu vermeiden. Bei. anderen Ausführungsformen
der Erfindung kann eine andere Strategie der Probenbildung für die Wahl der Rahmen verwirklicht werden.
Bevorz.ugt erfolgt die Auswahl der Rahmen jedoch so,
daß diese einen konstanten zeitlichen Abstand voneinander haben, vorzugsweise einen Abstand von 30 ms, und
daß die sich nicht überlappenden Zaichensatzmuster über das Zeitintervall hinweg, welches das Schlüsselwort
definiert, Abstände voneinander haben. Im einzelnen entspricht ein erstes Zeichensatzmuster P.
einem Teil des Schlüsselwortes in der Nähe des Anfangs desselben, während ein zweites Muster P„ einem
zeitlich späteren Teil entspricht usw., wobei die Muster P1, P_... die statistische Basis für eine
-57-
BAD ORIGINAL
A 45 326 b
k - 176 - 57 -
28. -September 19 82
Serie oder Folge von Zielraustern bilden, die die Wortschablone bilden, mit weicher die ankommenden Audiodaten
verglichen werden. Die Zielmuster P , P2'''
umfassen jeweils statistische Daten, die aus dem entsprechenden Wert P(i). unter der Annahme erzeugt werden,
daß alle P(i) . unabhängige Gauss'sehe Variable sind,
die die Erzeugung einer Wahrscheinlichkeitsstatistik hinsichtlich der Übereinstimmung der Undefinierten
eintreffenden Rahmen mit den Zielmustern gestatten. Die Zielmuster bestehen also aus einem Feld, in dem
die einzelnen Werte die mittlere Standard-Abweichung und einen Bereichsnormierungsfaktor für eine entsprechende
Sammlung von Zeichensatzmusterfeidwerten umfassen..
Eine weiter verfeinerte Wahrscheiniichkeitsstatistik wird weiter unten beschrieben.
Der Fachmann weiß, daß nahezu alle Worte regional und/ oder hinsichtlich ihres Kontextes mehr als eine Aussprache
haben können und damit mehr als eine "Schreibweise" von Zeichensatzmustern. Ein Wort des Vokabulars
mit der Musterschreibweise P., P .. gemäß den obigen
Ausführungen kann also tatsächlich allgemein durch die Folge pfi).., p(i)~f ··· i = 1/ 2, ·.., M ausgedrückt
werden, wobei jeder der p(i) .-Werte eine mögliche
alternative Beschreibung der j-ten Klasse von Zeichensatzmustern darstellt, und wobei insgesamt
M unterschiedliche "Schreibweisen" für das Wort vorhanden sind.
-58-
A 45 326 b
k - 176 _ 58 _
28. September 1982
Von den Target-Mustern t1/ t , ... t., ... stellt also
jedes im ganz allgemeinen Sinne mehrere alternative statistische "Schreibweisen" für die i-te Gruppe oder
Klasse der Zeichensatzmuster dar. 3eim Ausführungsbeispiel wird die Bezeichnung "Target-Muster" bzw.
"Zielmuster" in ganz allgemeinem Sinne verwendet, und jedes Zielmuster kann daher ein oder mehrere zulässige
alternative "statistische Schreibweisen" haben.
Die Vorverarbeitung der ankommenden Audiosignale und
die Audiobildung der Referenzmuster ist nunmehr abgeschlossen.
Bin tieferes Studium des Schlüsselworterkennungsverfahrens von verketteten phonetischen Mustern in erfassten
Worten, wie es in den US-PSen 4 241 329 und 4 227 177 beschrieben ist, hat gezeigt,.daß dies ein
Sonderfall eines allgemeineren und möglicherweise überlegenen Erkennungsverfahrens ist. Unter Bezugnahme
auf Fig. 4 kann die Worterkennungssuche als das Problem des Auffindens eines geeigneten Pfades durch einen
abstrakten Zustandsraum dargestellt werden. In dieser
Figur stellt jeder Kreis einen möglichen Zustand dar, der auch aLs Verweilzeitposition oder -register bezeichnet
wird, durch die bzw. das der Prozess der Sntscheidungsfindung hindurchlaufen kann. Der Zwischenraum
zwischen gestrichelten senkrechten Linien
-59-
BAD ORIGINAL
A 45 326 b
k - 176 - 59 -
28. September T982
120, 122 stellt jeden der hypothetischen Zustände dar,
durch die der Entscheidungsfindungsprozess hindurchlaufen
kann, um zu bestimmen, ob ein Muster zu einem vorliegenden bzw. im Augenblick zu prüfenden oder laufenden
Phonem passt oder nicht. Dieser Zwischenraum ist in einen Bereich 124 für eine erforderliche Verweilzeit
und einen 3ereich 126 für eine möglicherweise erforderliche .bzw. optionelle Verweilzeit unterteilt.
Der 3ereich für die erforderliche Verweilzeit ent-.
spricht der Mindestdauer des jeweils zu untersuchenden Phonems oder Musters. Der Bereich der optionellen Verweilzeit
stellt die maximale zusätzliche Dauer des Musters dar-. Jeder der Kreise in den Bereichen für
die optionelle und die erforderliche Verweilzeit stellt, einen Zeitrahmen des Kontinuums von gebildeten
Rahmen dar und entspricht den 0,01 s-Intervallen von
Rahmen zu Rahmen. Somit identifiziert jeder Kreis eine hypothetische, laufende phonetische Position
in einer Wort-Aussprache und stellt zusammen mit der ■
Anzahl von 0,01 s-Rahmen, die nach der Hypothese bereits verstrichen sind, seit das gerade untersuchte
bzw. laufende. Phonem begann, wobei diese Anzahl der Anzahl der früheren Kreise oder Positionen in diesem
Phonem oder Zielmuster entspricht, die gegenwärtige
Dauer des Musters dar. Nachdem ein Muster (Phonem) begonnen hat und nachdem das Mindestverweilzeitintervall
verstrichen ist, gibt es mehrere mögliche Pfade für das Vorrücken zu dem ersten Knoten bzw. zur ersten
Position (Kreis) 128 des nächsten Zielmusters (Phonem). Dies ist'davon abhängig, wann die Entscheidung, zum
nächsten Muster
-69-
A 45 326 b
k - 17β - 60 -
28. September 1982 ου
(Phonem) der Aussprache vorzurücken, getroffen wird. Diese Entscheidungsmöglichkeiten sind in Fig. 4 durch
die verschiedenen Pfeile dargestellt, die zum Kreis 128 führen. Ein Übergang zum nächsten Muster (,Phonem) ,
dessen Anfang durch den Kreis 128 dargestellt ist, kann an jedem Knoten bzw. an jeder Position während
der optionellen Verweilzeit des laufenden Musters .(Phonems) erfolgen oder am letzten Knoten des
erforderlichen Verweilzeitintervalls
Das in den üS-PSen 4 241 329; 4 227 176 und 4 227 beschriebene Schlüsselworterkennungsverfahren bewirkt
den Übergang an dem ersten derartigen Knoten, an dem der Wahrscheinlichkeitswert für das nächste Muster
(Phonem), besser ist als der Wahrscheinlichkeitswert bezüglich des laufenden Musters (Phonems). Dies bedeutet,
daß ein Rahmen besser zu dem nächsten Phonem oder Muster passt als zu dem laufenden Phonem oder
Muster. Die Trefferquote bzw. der Wahrscheinlichkeitswert für das Gesamtwort ist jedoch die mittlere Tef- ■
ferquote bzw. der Wahrscheinlichkeitswert für die Muster bzw. Phoneme pro Rahmen, d.h. pro Knoten in
dem durchlaufenden Pfad. Dieselbe Definition für die
gesamte Trefferquote für ein Wort, bis zum Erreichen
des jeweiligen Knotens kann benutzt werden, um zu entscheiden, wann der Übergang erfolgen muß. Mit anderen
Worten .wird also entschieden, ob der Übergang zum nächsten Muster beispielsweise bei der ersten :
Gelegenheit erfolgen soll, was beispielsweise einem Übergang längs der Linie 130 entspricht, oder zu
einem späteren
-61-BAD ORIGINAL
A 45 326 b -
k - 176 - 61 -
28. September 1982
Zeitpunkt, was beispielsweise einem Übergang längs der Linie 132 entsprechen würde. Im günstigsten Fall
wählt man denjenigen Weg zum nächsten Muster (Phonem), für welches die mittlere Trefferquote pro Knoten am
günstigsten ist. Da das Standardschlüsselwortverfahren gemäß den üS-PSen 4 241 329, 4 227 176 und 4 227 177
die möglichen Pfade nicht prüft, nachdem die Entscheidung für einen Übergang zum nächsten Muster (Phonem)
gefallen ist, kann also dort eine nich"c völlig optimale
Entscheidung bezüglich der mittleren Trefferquote pro Knoten getroffen werden.
Für die Erkennung von Wortketten wird erfindungsgemäß
eine Strategie angewandt, bei der eine mittlere Trefferquote pro Knoten berücksichtigt wird. Wenn man
diese Strategie bei einer Wortkettenerkennung anwendet, wie sie nachstehend noch näher beschrieben wird, ergibt
sich dabei das Problem, daß man entweder alle partiellen Worttreffer entsprechend der Anzahl der
erfassten Knoten normieren muß, was bezüglich des Pechenaufwands nicht effektiv ist, oder daß man bei der Akkumulation so vorgehen
muß, daß eine ausdrückliche Normierung nicht erforderlich ist. Eine natürliche Vorgabe besteht darin
, bei der Suche in dem geschlossenen Vokabular die
nicht-normierte Trefferquote für das beste Wort zu verwenden, welches in der laufenden Analysezeit endet.
In diesem Fall ist die summierte Trefferquote von allen Knoten stets die Summe derselben Zahl von EIementmüstertreffern
bzw. Wahrscheinlichkeitswerten. Weiterhin wird die Trefferquote
-62-
A 45 326 b
k - 176 - 62 -
28. September 19 82
durch diese Vorgabe in die Trefferquote für die beste bzw. wahrscheinlichste Wortkette transformiert,
die am laufenden Analyseknoten endet.
Die Strategie der Entscheidung aufgrund der mittleren Trefferquote pro Knoten kann durch eine dynamische
Programmierung mit dem Vektorprozessor gemäß der US-PS
4 228 498 realisiert werden. Wenn der Prozessor auf diese Weise programmiert wird, ergibt sich eine
Verarbeitungsgeschwindigkeit, die etwas höher ist als für das Standardschlüsselworterkennungsverfahren,
welches in den üS-PSen 4 241 329, 4 227 176 und 4 227 177 beschrieben ist, und zwar obwohl mehr
Hypothesentests erforderlich sind.
Allgemein gesagt erinnert sich das Programm, wenn Wortketten erkannt werden sollen, an den Namen des
besten hypothetischen Vokabularwortes, welches an je-r
dem einzelnen Analyseknoten endet» Es erinnert sich außerdem an den Knoten (die Zeit), an dem (zu der)
dieses beste Wort begann. Die beste Wortkette wird dann gefunden, indem man vom Ende der.Äußerung (des
Phonems) rückwärts sucht und den gespeicherten Wörtnamen notiert
und das nächst-vorangehende Wort zur angegebenen Anfangszeit des laufenden Wortes findet.
Indem man auch eine Pause als Vokabularwort betrachtet, wird es unnötig, zu spezifizieren, wieviele Worte
in der Wortkette enthalten sind. Der Vorgang der
-63-
BAD ORIGSKiAL
OZODOOH
Ά 45 326 b
k - 176 - 63 -
28. September 1982
RückwärtsverfοIgung zum Finden der Kette wird immer
dann ausgeführt, wenn das Pausenwort die höchste Worttrefferzahl hat, und diese Operation endet bei der
nächsten, zuvor entdeckten Pause. Auf diese Weise wird immer dann eine Kette gefunden, wenn der Sprecher eine
Pause macht, um Luft zu holen.
Das hier beschriebene Wortketten-Erkennungsverfahren liegt um eine Stufe der Abstraktion höher als die
Erkennung von einzelnen Schlüsselworten. Da die Wortkettensuche dazu zwingt, die gesamte Spracherzeugung
während einer Äußerung in ein Wort der Kette einzuschließen, hat sie einen Vorteil gegenüber der einfacheren
Wortauffindung, wo häufig die falsche Art von Wörtern innerhalb längerer Wörter entdeckt wird.
Vorteilhafterweise sind für die Wortkette keine Takt- bzw. Zeitgabemuster
erforderlich, da. der Wortverketter für jedes angenommene Wortende eine neue Wortanfangszeit ausgibt.
Der einfachste Kettenverketter geht davon aus, daß diese Wortanfangszeiten korrekt sind. Beim Erfassen
einer Pause geht er davon aus, daß die Kette von Worten
gerade beendet ist und daß der Beginn des letzten Wortes das Ende des vorangehenden Wortes ist, welches
eine Pause sein kann. Es ist dann eine einfache Sache,
sich nach hinten durch die Kette zu tasten und an jeder Wortgrenze das Wort mit der besten Endtrefferquote
zu wählen. Da gewöhnlich ein vom Kontext abhängiger Übergang zwischen je zwei benachbarten Worten
-64-
A 45 326 b
k - 176 - 64 -
28. September 1982
der Kette vorhanden ist, kann es besonders vorteilhaft sein, dem Gerät zu gestatten, die Nachbarschaft
jedes Wortanfangs nach dem besten Ende des vorausgehenden Wortes abzusuchen.
Verfahren und Gerät gemäß der Erfindung sollen nachstehend anhand der jeweiligen Hardware- und Software-Ausführungen
mehr ins -Einzelne gehend erläutert werden.
Gemäß Fig. 3 stellen die im Block 95 gespeicherten Spektren bzw. Rahmen die ankommenden kontinuierlichen
Audiodaten dar, welche mit den gespeicherten Schablonen oder Zielmustern verglichen werden, die in Block 96
gespeichert sind und Schlüsselworte :des Vokabulars darstellen, wobei der Vergleich nach folgendem Verfahren
erfolgt:
Für jeden 10 ms-Rahrnen wird im. Block 97 ein Muster zum
Vergleich mit den gespeicherten Bezugsmustern gebildet, indem der laufende Spektrumvektor s(j,t), das Spektrum
s(j,t-0,03) des drittletzten Rahmens und das Spektrum s(j,t-0,06) des sechstletzten Rahmens zu folgendem
Feld bzw. Muster aus 9 6 Elementen zusammengefasst werden:
s(j,t-0 ,06) , j = 0, ...,31
x(j,t) = :s(j-32,t-0,03, j=32,...,63
,s(j-64,t), j=64,...,95
-65-
BAD ORlGiM*L
A 45 326 b .
k - 176 - 65 -
28. September 1982
Wie oben ausgeführt, bestehen die gespeicherten Bezugsmuster aus den Mittelwerten, den Standardabweichungen
und Bereichsnorraiertermen von zuvor zusammengestellten 96 Elementmustern, die zu den verschiedenen Sprechmusterklassen
gehören, die erkannnt werden sollen. Der Vergleich wird aufgrund eines Wahrscheinlichkeitsmodells
der Werte x(j,t) erreicht, die zu erwarten sind, wenn das Spracheingangssignal zu einer bestimmten
Klasse gehört. Während für das Wahrscheinlichkeitsmodell· eine Gauss'sehe Verteilung verwendet
werden kann,(vgl. die oben erwähnten US-Patente 4 241 329, 4 227 176 und 4 227 177),erfordert die
Laplace-Verteilung
ρ (χ) =C-\/YTsl) exp- ( TT ί x-m f /s1)
(wobei m der statistische Mittelwert ist und wobei s1
die Standardabweichung der Variablen χ ist) weniger Rechenarbeit und hat sich als nahezu ebenso brauchbar
wie die Gauss'sehe Verteilung erwiesen, wenn beispielsweise
unabhängig vom Sprecher das Verfahren der isolierten Worterkennung angewandt werden soll, welches
in der US-PS 4 038 503 beschrieben ist. Das Maß der Ähnlichkeit L(x j k) zwischen einem unbekannten Eingang
smuster χ und dem k-ten gespeicherten Bezugsmuster
ist proportional zum Logarithmus der Wahrscheinlichkeit und wird in der nachfolgenden Formel mit 100
angenommen:
-66-
A 45 326 b
k - 176
28. September 1982
-66-
L(x. [k) =
Xi - Uik I
S ik
+K
(17)
wobei
96
1n s"ik
Zum Kombinieren der Wahrscheinlichkeitswerte L einer Folge von Mustern mit dem Ziel der Bildung des Wahrscheinlichkeitswertes
eines gesprochenen Wortes oder Satzes wird der Wert L(x | k) für jeden Rahmen eingestellt,
indem der beste, (kleinste) Wert aller Bezugsmuster für diesen Rahmen subtrahiert wird, und zwar
gemäß folgender Gleichung:
L' (x I k) = L(x I k) - min L(χ J i)
(18)
Auf diese Weise wird das am besten zu jedem Rahmen passende Muster den Wert Null haben. Die eingestellten
Werte für eine hypothetische Folge von Bezugsmustern können Rahmen für Rahmen addiert werden, um einen
Folgewert zu erhalten, der direkt mit der Wahrscheinlichkeit verknüpft ist, so daß eine Entscheidung zugunsten
der angezeigten Folge die richtige Entscheidung wäre.
-67-
BAD ORIGINAL
J16 b ö
A 45 326 b
k - 176 - 67 -
28. September 1982
Der Vergleich der unbekannten Eingangsspektrummuster mit den gespeicherten bekannten Mustern erfolgt
durch Berechnung der folgenden Funktion:
96
σ = ^~ s·., Ix - u.. I + c. (19)
.=1 xk I i xk I k
wobei s., = l/s1.,) für das k-te Referenzmuster. Bei
einer normalen programmierten Berechnung würden die folgenden Befehle ausgeführt, um die algebraische
Funktion s J x-u I (gemäß Gleichung 19) z.u ,berechnen:
1. berechne x-u
2. prüfe das Vorzeichen von x-u
3. wenn x-u negativ ist, bewirke einen Vorzeichenwechsel, um den Absolutwert zu erhalten
4. multipliziere mit s
.5. addiere das Ergebnis in einen Akkumulator.
Bei einem typischen Spracherkennungssystem mit einem 20-Wort-Vokabular wurden ungefähr 22 2 verschiedene
Referenzmuster vorhanden sein. Die Anzahl der erforderlichen Schritte zur Auswertung derselben
-68-
A 45 326 b
k - 176 - 68 -
28. September 1982
beträgt dann 5 χ 96 χ 222 = 106560 Schritte, ohne die zusätzlichen allgemeinen Programmschritte, und dies
muß in weniger als 10 ms geschehen, um mit der Echtzeit-Spektrumrahmen-Geschwindigkeit
Schritt zu halten. Der Prozessor muß daher in der Lage sein, pro Sekunde
nahezu 11 Millionen Befehle auszuführen, und zwar nur, um gerade die Wahrscheinlichkeitsfunktionen auszuwerten.
In Anbetracht der erforderlichen Geschwindigkeit wird erfihdungsgemäß vorzugsweise ein spezieller
Wahrscheinlichkeitsfunktions-Hardware-Modul 200 (Fig.4)
verwendet, der mit einem Systern-Vektorprozessor gemäß
der US-PS 4 228 498 kompatibel ist.
Bei dem Spezialmodul 200 werden die fünf oben aufgeführten
Schritte gleichzeitig mit zwei Sätzen von Argumenten :s, x, u ausgeführt, so daß im Endeffekt
in der Zeit, die normalerweise für die Ausführung eines einzigen Befehls erforderlich ist,, zehn Befehle
ausgeführt werden. Da der Basis-Vektorprozessor mit einer Geschwindigkeit von 8 Millionen Befehlen pro Sekunde
arbeitet, ergibt sich bei dem hier verwendeten speziellen Modul 200 für die Wahrscheinlichkeitsfunktionen eine effektive Berechnungsgeschwindigkeit
von etwa 80 Millionen Befehlen pro Sekunde.
Wie Fig. 5 zeigt, arbeitet der Modul 200 mit einer Kombination von sogenannten Pipeline-Operationen und
Parallel-Operationen, um gleichzeitig jeweils zehn Schritte ausführen zu können. Dabei führen zwei
-69-
BAD ORIGINAL
OZ
Λ · ♦ ·
A 45 326 b k -176
28. September 1982
- 69 -
unabhängige Bereiche 202 und 204 jeweils fünf arithmetische
Schritte mit den unabhängigen Eingangsdatenargumenten aus,und die zwei Ergebnisse werden in einem
Addierer 20 6 zusammengefasst, der mit deren Ausgängen
verbunden ist. Die Akkumulation der Summierungen des Addierers 206 bilden "die Summierung von 1 bis 96 gemäß
Gleichung 19, die von der Recheneinheit des Standard-Vektorprozessors gemäß US-PS 4 288 498 verarbeitet
wird.
Die im Pipeline-Betrieb arbeitenden Register speichern
die Zwischendaten bei den folgenden Stufen der Datenverarbeitung:
1. Eingangsargumente (getaktete Register 208, 210, 212, 214, 216, 218)
2. Betrag von x-u (getaktete Register 220, 222)
3. Ausgang des Multiplizierers (getaktete Register 224, 226) .
Anhand der Eingangsdaten in den getakteten Registern 208 bis 218 wird die Größe von x-u durch Schaltkreise
228, 230 zur Subtraktion und Absolutwert-Bildung bestimmt.
Gemäß Fig. 6 enthält jeder der Schaltkreise 228, 230 zur Subtraktion und Betragsbildung jeweils
eine erste und eine zweite Subtraktionsschaltung 232, 234, von denen die eine dazu dient, die Differenz
-70-
A 45 326 b
k - 176 - 70 -
28. September 19 82
x-u zu bestimmen, während die andere, die Differenz u-x
bestimmt, sowie einen Multiplexer 236 z.ur Auswahl des
positiven Ergebnisses. Die Eingangsargumente. χ und u,
die über die Leitungen 238, 240 von den Registern 208 bzw. 210 zugeführt werden, sind 8 Bit-Ziffern zwischen
-128 und +127. Da bei der Differenz.bildung in den 8 Bit-Subtraktionsschaltungen 232 und 234 ein Übertrag
auf die neunte Bit-Stelle entstehen kann (z.B.: (127- (-12S) = 255), sind spezielle Schaltungseinrichtungen
erforderlich, die der Auswertung des Übertrags dienen. (Das Vorliegen eines Übertrags wird
mittels eines Übertrag-Detektors 235 festgestellt, an desse.n Eingängen über eine Leitung 235a das Vorzeichen
vor. χ und über eine Leitung 235b das Vorzeichen von u sowie, über eine Leitung 235c das Vorzeichen der
Differenz x-u zugeführt werden).
Wie Fig. 7 zeigt, sind die Übertrag-Detektoren beim Ausführungsbeispiel kombinierte Schaltungen aus jeweils
einen UND-Gatter 268 bzw. 270 mit drei Eingängen und einem ODER-Gatter 272. Aus der Wahrheitstabelle genäß Fig. 8 wird die Verknüpfung zwischen
der Übertragbedingung und den Eingangssignalen deutlich.
Die Berücksichtigung der Übertragbedingung erfolgt dadurch, daß der Multiplexer 236,mit dessen Hilfe das
positive Subtraktionsergebnis ausgewählt wird, vier Wahlmöglichkeiten bietet. Die Entscheidung wird dabei
durch die binären Pegel auf den Leitungen 242 und 244
-71-
BAD OR!Ürr3L
A 45 326 b
k - 176 _ 71
28. September 1982
bestimmt. Dabei ist der Pegel auf der Leitung 242 dem Vorzeichen der Differenz x-u zugeordnet, während das
Vorhandensein eines Übertrags durch eine "1" auf der Leitung 244 angezeigt wird.
Insgesamt bestehen folgende Möglichkeiten:
Leitung 242 Leitung 244
wähle Ausgang der Subtraktionsschaltung 232
wähle Ausgang der Subtraktionsschaltung
2 34
wähle Ausgang der Subtraktionsschaltung 232 um11 Bit nach unten verschoben
wähle Ausgang der Subtraktionsschaltung 2 34 um 1 Bit nach unten verschoben
Der Multiplexer 236 wird somit so gesteuert, daß er
als 8-poliger elektrischer Schalter mit vier Schaltstellungen arbeitet. Der "Schiebevorgang" um 1 Bit
wird kombinatorisch ausgeführt, indem man die Ausgänge der Subtraktionsschaltungen zu den entsprechenden
Multiplexereingängen durchschaltet. Der Schiebevorgang
entspricht einer Division durch 2.
-72-
A 45 326 b
k - 176 - 72 -
28. September 19 82
Wenn bei einer Subtraktion ein Übertrag auftritt, entspricht
das Ausgangssignal des Multiplexers dem durch 2 geteilten Ausgangssignal einer der Subtraktionsschaltungen. Diese Bedingung muß später bei der Berechnung
berücksichtigt werden, damit das Endergebnis dann mit 2 multipliziert wird, um den richtigen Maßstabsfaktor
wieder herzustellen. Diese Multiplikation erfolgt bezüglich des Ausgangssignals des Multiplexers
hinter dem letzten "Pipeline"-Register. Aus diesem
Grund wird in den Pipeline-Registern 220, -222, 224,
226 ein Extra-3it bereitgehalten, um die zweiten Multiplexer 248, 250 zu steuern, welche die Multiplikationsprodukte
eines 8x8 Bit-Multiplizierers 252, 254 um 1 Bit nach oben verschieben, was einer Multiplikation
mit 2 entspricht, sobald das Übertrag-Bit gesetzt ist (logischer Pegel "1"). Die Multiplikation
wird mittels einer handelsüblichen integrierten Schaltung mit der TRW-Baustein-Bezeichnung MPY-8-HJ.durchgeführt,
der zwei Ziffern mit jeweils 8 Bit zugeführt werden können und die an ihrem Ausgang das Produkt
der beiden Ziffern liefert.
Die Multiplizierer 252, 254 erzeugen somit das Produkt von s und | x-u|bei jedem Taktimpuls (wobei die zeitliche
Steuerung für den Wert von s in der richtigen Weise durch die besonderen Datenregister 256, 258 erfolgt)
. Die Äusgangssignale der Multiplizierer 252, 254 werden gepuffert in die Register 224, 225 eingespeist
und über Leitungen 260, 262 und einen Addierer 206 an die übrige Schaltung ausgegeben.
-73-BAD ORIGINAL
A 45 326 b
k - 176
28. September 1982
k - 176 _ 73 _
Derselbe Spezial-Hardware-Modul 200 wird auch zum Berechnen
des inneren Produktes zweier Vektoren verwendet, wie dies bei einer Matrix-Multiplikation erforderlich
ist. Dies wird durch die Gatter-Schaltungen 264, 266 erreicht, die einen Parallel-Pfad zu den
Schaltungen 228 bzw. 230 zur Subtraktion und zur Absolutwert-Bildung bilden. 3eim Vorliegen der 3ypass-Bedingung
werden die Daten χ und s von den Eingangsleitungen direkt als Eingangssignale für die Multiplikation
in die Pipeline-Register 220, 222 eingespeist.
Ein dynamisches Programmierverfahren (Block 101) wird
vorzugsweise angewandt, um die Korrespondenz zwischen einem unbekannten Eingangssprachsignal und jeder
Schablone für ein Wort des Vokabulars zu optimieren. Jede Wortschablone besteht dabei nicht nur aus einer
Folge der .oben angesprochenen BezugsmusterStatistiken,
sondern umfasst auch Daten über die minimale und die maximale Freizeit, die mit jedem Bezugsmuster verknüpft
ist. Bei der Anwendung einer dynamischen Programmierung wird für jedes Wort des Vokabulars ein
Satz von Speicherregistern vorgesehen. Die Anzahl der Register ist dabei gleich der Summe der maximalen
Verweilzeiten der Referenzmuster, die das Wort bilden,
d.h. proportional zur längsten zulässigen Wortdauer.
-74-
A 45 326 b
k-176 -74-
28. September 1982
Diese Register entsprechen den Kreisen in Fig. 4, wobei
jeder Kreis-für ein Register steht.
Für jeden Rahmen des Eingangssprachsignals werden alle diese Register eingelesen und ausgelesen. Dabei
enthält jedes Register, wie dies nachstehend noch detailliert beschrieben wird, den berechneten Wahrscheinlichkeitswert,
welcher der Hypothese entspricht, daß das angezeigte Wort des Vokabulars gesprochen
wird und daß die laufende Position in diesem Wort dem jeweiligen Referenzmuster und der dem Register
zugeordneten Verweilzeit entspricht. Es wird dafür gesorgt, daß alle diese Register zunächst schwache
Wahrscheinlichkeitswerte enthalten, um so anzuzeigen,
daß zunächst keine der dargestellten Hypothesen eine brauchbare Wahrscheinlichkeit besitzt.
Der Registerinhalt wird auf die nachstehend beschriebene Weise jeweils auf den neuesten Stand gebracht.
Das erste Register für jede Wortschablone, d.h. dasjenige Register, welches der Hypothese entspricht,
daß mit dem Sprechen des Wortes gerade begonnen wurde, enthält die Summe eines Wertes a und eines Wertes b,
wobei a der Wahrscheinlichkeitswert des laufendes Rahmens bezüglich des ersten Bezugsmusters des Wortes
ist und wobei b der beste Wert aller letzten Register sämtlicher Vokabularworte ist (d.h. der akkumulierte
Wahrscheinlichkeitswert für die Hypothese,daß im vorausgegangenen Rahmen irgendein Wort beendet wurde).
-75-
BAD ORIGINAL
A 45 326 b
k - 176 - 75 -
28. September 1982
Das zweite Register einer Wortschablone enthält die Summe eines wertes a, nämlich des Wahrscheixilichkeitswertes
des vorliegenden Rahmens bezüglich des ersten Bezugsmuster des Wortes und des Wertes b, nämlich des
Inhalts des ersten Registers für den vorausgegangenen Rahmen. Das zweite Register enthält also den Wert,
der sich aufgrund der Hypothese ergibt, daß das angezeigte Wort gesprochen wird und daß es im verausgehenden
Rahmen begonnen hat.
Während die einzelnen Register entsprechend den Verweilzeiten
zwischen der Minimaldauer und der Maximaldauer auf den neuesten Stand gebracht werden (das
optionelle Verweilzeitintervall), wird ein eigenes Speicherregister dazu verwendet, die besten gespeicherten
Wahrscheinlichkeitswerte (Registerinhalt) in den Registern zu -speichern, die dem optionellen Verweilzeitintervall
für jeden folgenden "laufenden Rahmen" entsprechen. Dieser beste Wert, der während
der vorangehenden Rahmenzeit gefunden wurde, wird benutzt, um die nächsten Inhalte des ersten Registers
zu berechnen, die dem erforderlichen Verweilzeitintervall des nächsten Zielmusters bzw. der nächsten
Schablone für das Wort entsprechen. Die gegenwärtigen Inhalte der ersten Register des nächsten Bezugsmusters
werden also erzeugt, indem der genannte beste Wert (des vorausgegangenen Zielmusters) zum Wahrscheinlichkeitswert
des laufenden Rahmens bezüglich des erwähnten nächsten Bezugs- oder Zielmusters addiert wird.
-76-
A 4 5 326 b
k - 176 - 76 -
28. September 1982
In Fig. 4 sollen die verschiedenen Pfeile, die · zu dem ersten Register 128 des erforderlichen Verweilzeitintervalls
eines Referenzmusters führen, anzeigen, daß der tibergang von dem optioneilen Register bzw. Zustand
zum erforderlichen Verweilzeitregister bzw. -zustand zu jedem Zeitpunkt während des optioneilen Verweilzeitintervalls
oder ausgehend vom.letzten Register des erforderlichen Verweilzeitintervalls erfolgen kann. Auf
der Grundlage der laufenden Information ist somit die am besten passende Korrespondenz bzw. Entsprechung
zwischen der Wortschablone und den Eingangsmustern
diejenige, welche sich aufgrund der Hypothese ergibt,
daß dann, wenn das nächste Muster gerade beginnt, das
vorausgehende Muster eine Dauer hat., die dem Register
entspricht, welches in dem vorausgehenden optioneilen Verweilzeitintervall den besten Wert enthält (zuzüglich
des letzten Registers des vorausgegangenen erforderlichen Zeitintervalls, dem Register 300 beim
Ausführungsbeispiel). Nach der Theorie der dynamischen Programmierung ist es nicht erforderlich, die zuvor
akkumulierten Werte, welche sämtlichen möglichen Verweilzeiten entsprechen, zu speichern, da inach der
Theorie jeder Verweilzeitübergang, der zu einem schlechteren Wert führte, auch weiterhin während
aller folgenden Stufen der Datenverarbeitung zur Erzeugung schlechterer Werte führen wird.
Die Analyse wird in der beschriebenen Weise fortgesetzt, wobei alle Register sämtlicher Referenzmuster
-77-
BAD ORIGINAL
A 45 326 b k -176
28. September 1982
- 77 -
aller Wortschablonen verwendet werden. Das letzte Register
bzw. die letzten Register des letzten Musters jeder Wortschablone enthält den Wert,der sich aufgrund
der Hypothese ergibt, daß das Wort gerade beendet wurde.
Im Verlauf der Akkumulation der Wahrscheinlichkeits- werte
wird eine Folge von (Zeit-)Dauer-Zählungen beibehalten, um die Dauer des besten Wortendes in jeder
Rahmenzeit zu ermitteln. Der Zähivorgang wird bei "eins" ixL dem. ersten Register des ersten Schablonenmuster
des Worts eingeleitet. Für jedes zweite und folgende Register eines Schablonenmusters wird der mit
dem vorangehenden Register verknüpfte Zählerstand um
"eins" erhöht. Für jedes Register, welches dem Beginn eines Referenzmusters (einem anderen als dem ersten
Referenzmuster eines Wortes) entspricht, d.h. beispielsweise das erste Register 128 des erforderlichen
Verweilzeitintervalls, ist jedoch der Zählerstand des
optioneilen Verweilzeitregisters (oder des letzten Registers für die erforderliche Verweilzeit) für das
vorausgegangene Bezugsmuster, welches in der vorausgegangenen Rahmenzeit den besten Wahrscheinlichkeitswert hat, derjenige Zählerstand, der erhöht wird, um
die Zeitdauerzählung für das Register zu bilden.
Um ein .System für die nachstehend noch näher beschriebene
"RückwärtsverfοIgung" für jede Rahmenzeit zu erhalten,
werden die Identifizierung für das zu diesem
A 45 326 b
k -176 - 78 -
28. September 1982
Zeitpunkt endende Wort mit dem höchsten Wert und dessen Dauer in einen umlaufenden. Pufferspeicher übertragen. Wenn eine Wortfolge endet., ermöglichen die
gespeicherten Wortdauern, die Rückwärtsverfolgung vom Ende des letzten "besten" Wortes über dessen Dauer zu
dem besten vorangehenden Wort, welches unmittelbar vor dem "letzten Wort" endet usw., bis alle Worte der
Wortkette identifiziert sind.
Ketten von kontinuierlich gesprochenen Vokabularworten sind durch Pausen begrenzt. Eine der Wortschablonen
entspricht daher der Bedingung "Pause =-Stille bzw. Hintergrundgeräusch". Immer wenn sich für das "Pausen"-Wort
der beste Wahrscheinlichkeitswert ergibt, wird angenommen, daß.eine Folge von Worten gerade beendet
wurde. Sin Zustands- bzw. Flag-Register wird abgefragt, um festzustellen, ob seit der letzten Einleitung des
Erkennungsprozesses irgendein anderes Wort als das Pausenwort den besten Wert hatte. Wenn mindestens ein
von dem Pausenwort verschiedenes Wort einen "besten Wert" hatte (Block 103), dann wixd die.Wortkette in
dem umlaufenden Pufferspeicher rückwärts verfolgt (Block 105) und die dabei erhaltene, erkannte Botschaft
wird zu einer Anzeige oder einer anderen gesteuerten Einrichtung übertragen. Anschließend wird
der umlaufende Pufferspeicher gelöscht, um eine wiederholte Übertragung der Botschaften zu verhindern.
Außerdem, wird das Zustandsregister gelöscht. Das Gerät ist damit bereit, die nächste Wortkette zu
erkennen (31ock 107).
-79-
BAD ORiGiNAL
A 45 326 b
k - 176 - 79 -
28. September 1982
Hinsichtlich der Ketten von kontinuierlich gesprochenen Vokabularworten, die durch Pausen bzw. "Stille" begrenzt
sind, wirkt die "Stille" als Kontroll- bzw. Befehlswort, um den Umfang der "Vokabularworte" zu
begrenzen, auf die das System ansprechen soll und die es erkennen soll. Dabei ist es, wie oben erwähnt, bei
einem Gerät der betrachteten Art nicht ungewöhnlich, daß für ein gewisses Zeitintervall ein Signal mit
minimaler Amplitude erfasst wird, welches dann als "Stille" eingestuft wird.
Vorzugsweise können bei einer bevorzugten Ausführungsform der Erfindung mehr als eine "Aussprache" bzw.
Darstellung für die "Stille" verwendet werden, wie dies auch für die Aussprache bzw. Darstellung anderer
"Schlüsselwörter" gilt. Das Gerät kann das Vorliegen der "Stille" also nicht nur dann erkennen, wenn sie
mit einem von vornherein vorgegebenen Satz von Kriterien übereinstimmt, d.h. mit einem a priori vorgegebenen
Zielmuster; vielmehr kann auch mit einem dynamisch veränderlichen Zielmuster bzw. einer dynamisch
veränderlichen Schablone gearbeitet werden, um die Fähigkeit des Geräts, die "Stille" zu erkennen,
noch weiter zu verbessern. Ein vorausgehender oder zwei zweite Teile des Sprachsignales können folglich,
wie oben ausgeführt, periodisch geprüft werden, und man kann ein sich dynamisch änderndes Modell der
"Stille" bestimmen, indem man beispielsweise typische Muster auswählt, welche im Verlauf der letzten
-80-
A 45 326 b
k - 176 - 80 -
28. September 1982
Sekunden eine minimale Amplitude besaßen, um ein früheres
dynamisches Modell der "Stille" auf den neuesten Stand zu bringen oder um entsprechend dem nachstehend
beschriebenen Binübungsverfahren ein neues dynamisches
Modell der "Stille" zu entwickeln. Die "Stille" kann also durch mehr als eine "Aussprache" bzw. Darstellung
von Zielmustern definiert werden, wodurch die Wahrscheinlichkeit der Verbesserung der genauen Erfassung
der "Stille" verbessert wird.
-81-BAD
A 45 326 b
k - 176 - 81 -
28. September 1982
um die Probenelemente u und die Varianzen s1 für die
Konstruktion der Referenzmuster zu erhalten, wird eine
Anzahl von "Äußerungen" bzw. Sprachproben jedes Vokabularwortes in das Spracherkennungssystem eingegeben;
und die Gesamt-Statistiken der entsprechenden vorverarbeiteten Spektrumrahmen werden ausgewertet. Für
einen erfolgreichen Betrieb des Systems ist dabei die Entscheidung darüber, welche Eingangsrahmen welchen
Ziel- bzw. Bezugsmustern entsprechen sollten, von wesentlicher Bedeutung.
Beim Fehlen besserer Information, wie z.B. bei von Hand gewählten signifikanten akustischen Phonemen
des Eingangswortes wird das Zeitintervall · zwischen dem Beginn und dem Ende eines gesprochenen Worts in
eine Anzahl von gleichmäßigen Unterintervallen geteilt, Jedes dieser Unterintervalle wird dabei gezwangen,
einem bestimmten Bezugsmuster zu entsprechen. Ein oder mehrere Drei-Rahmen-Muster, die in jedem Intervall
beginnen, werden gebildet und entsprechend dem mit diesem Intervall verknüpften Bezugsmuster klassifiziert.
Anschließende Beispiele desselben Vokabularwortes werden in ähnlicher Weise in eine gleiche Anzahl
von gleichen Intervallen geteilt. Die Mittelwerte und Varianzen der Elemente der Drei-Rahmen-Muster,
die aus den entsprechend geordneten Intervallen gewonnen werden, werden für alle verfügbaren
-82-
A 45 326 b
k - 176
28. September 1982
k - 176 82
Proben des Vokabularwortes akkumuliert, um einen Satz
von Bezugsmustern für dieses Wort zu bilden. Die Anzahl der Intervalle (der Bezugsmuster) sollte in der
Größenordnung von zwei oder drei pro in dem Vokabularwort enthaltenem linguistischem Phonem liegen.
Zur Gewinnung der besten Ergebnisse werden der Anfang und das Ende jedes Vokabularwortes mittels eines Verfahrens
markiert, bei dem die aufgezeichnete Audiosignalform und die Spektrumrahmen von Hand geprüft
werden. Zur automatischen Durchführung dieser Prüfung
ist es erforderlich, daß jedes Wort einzeln gesprochen
wird und daß am Wortanfang und am Wortende eine Pause
liegt, damit das Gerät die Wortgrenzen genau finden kann. Die Bezugsmuster können von jeder derartigen
Probe jedes gesprochenen Wortes einzeln erstellt werden, wobei alle Varianzen in dem Referenzmuster auf
brauchbare Konstante gesetzt werden. Danach kann das Trainingsmaterial· aus Äußerungen bestehen, die für
die zu erkennenden Äußerungen typisch sind, wobei die .
Wort- und Segmentgrenzen dort liegen, wo --sie auch beim Erkennungsprozess aufgefunden werden. Wenn die
Statistiken für eine geeignete Anzahl von Trainingsäußerungen akkumuliert bzw. gesammelt sind, werden
die ursprünglichen Bezugsmuster durch die so ermittelten Bezugsmuster ersetzt. Danach wird ein zweiter
Durchlauf mit dem Übungsmaterial durchgeführt. Dieses Mal werden die Worte in Intervalle unterteilt, und
zwar auf der Basis der Entscheidungen, die von dem
-83-
BAD ORIGINAL
*■■*"·* ii * *
• * * t M #
A 45 326 b
■k - 176
28. September 19 82
- 83 -
Erkennungsprozessor gemäß Fig. 3 getroffen werden. Jedes Drei-Rahmen-Eingangsmuster (oder ein typisches
Eingangsmuster für jedes Bezugsmuster) wird nach dem vorstehend-beschriebenen Musterabgleichverfahren einem
Bezugsmustex zugeordnet. Die Mittelwerte und Varianzen .werden ein zweites Mal gesammelt, um den endgültigen
Satz von Bezugsmustern zu bilden, die vollständig mit dem- Verfahren kompatibel sind, gemäß welchem sie von
dem Erkennungsgerät benutzt werden.
Bei jedem Übungsdurchlauf ist es vorteilhaft, wenn irgendwelche Übungsphrasen,, die von dem Erkennungsprozessor nicht korrekt · erkannt werden, ignoriert
werden, da bei einer falsch erkannten Äußerung die Wahrscheinlichkeit besteht, daß diese schlecht plazierte
Intervallgrenzen hat. Bei Beendigung des Trainingsdurchlaufs kann versucht werden, die zuvor
nicht bzw. falsch erkannten "Phrasen mit den neuen Referenziuustern zu vergleichen,und die Referenzmuster
können dann weiter auf den neuesten Stand gebracht werden, wenn nunmehr der Erkennungsvorgang erfolgreich
ist.- ...
Statt die schlecht bzw. nicht erkannten Phrasen zu ignorieren, besteht auch die Möglichkeit, für jede
Übungsäußerung eine Mehrwort-Schablone zu bilden. Diese Schablone ist dann einfach eine Verkettung der
Schablonen für die einzelnen Worte einer Äußerung in der richtigen Reihenfolge. Der Sprecher wird durch
-84-
A 45 326 b
k - 176 - 84 -
28. September 1982
einen Aufschrieb (script) veranlasst, die angegebene Wortfolge zu sprechen, und der Erkennungsprozessor
nimmt nur bezug auf die Mehrfach-Schablone und die Pausenschablone. Die Wortgrenzen- und Referenzmuster-Klassifizierung
ist dann für das gegebene Script und die verfügbaren Bezugsmuster optimal. Sin Nachteil
dieses Verfahrens besteht darin, daß gegebenenfalls eine größere Anzahl von Durchläufen durch das Trainings-Script
erforderlich ist.
Wenn die höchst-mögliche Erkennungsgenauigkeit angestrebt
wird, ist es vorteilhaft, das Trainingsprogramra
mit einem Satz von zuvor bestimmten sprecherunabhängigenBezugsmustern
für - das zu erkennende Vokabular zu beginnen. Die sprecherunabhängigen Muster werden dabei aus Phrasen gewonnen, die für die zu
erkennenden Phrasen typisch sind und die zumindest von einigen verschiedenen Sprechern gesprochen wurden.
Dabei können die Wortgrenzen durch eine manuelle Prüfung der aufgezeichneten Audioschwingungen bestimmt
werden. Anschließend wird das gerade beschriebene Zwei-Schritt-Verfahren angewandt, um die sprecherunabhängigen
Muster zu gewinnen. Beim ersten Durchlauf werden die Unterintervalle gleichmäßig bezüglich jedes
Wortes aufgeteilt. Beim zweiten Durchlauf werden die Unterintervalle so gewählt wie sie durch das Erkennungsverfahren
unter Verwendung der Bezugsmuster des ersten Durchlaufs bestimmt werden. Bei jedem Durchlauf werden
außerdem die Gesamt-Statistiken für alle Sprecher abgeleitet.
-85-
BAD ORIGiMAL
A 45 326 b
k - 176 - 85 -
28. September 1982
Das System kann vorteilhafterweise auf einen bestimmten
Sprecher eingeübt werden, indem man die zuvor erzeugten sprecherunabhängigen Muster verwendet, um in Kombination
mit der "Stille"-Schablone die Grenzen des sprecherabhängigen. Spracheingangssignals zu bestimmen.
Vorzugsweise wird das von einem bestimmten Sprecher stammende Spracheingangssignal nicht in isolierter
Form geliefert, sondern als eine kontinuierliche Wortkette. Bei Verwendung kontinuierlicher Sprachsignale
während des Einübens lassen sich nämlich genauere Ergebnisse erreichen. Unter Verwendung der im System
verfügbaren sprecherunabhängigen Bezugsmuster werden also zunächst die Grenzen der "Sprecherabhängigen"
Sprache, d.h. die Grenzen eines von einem bestimmten Sprecher stammenden Sprachsignals bestimmt, woraufhin
dann in mehreren Durchläufen, wie sie vorstehend für das Einüben des Systems beschrieben wurden, zunächst
in einem ersten Durchlauf eine Unterteilung jedes Wortes in. gleichmäßige Unterintervalle erfolgt, während
im zweiten Durchlauf aufgrund des Erkennungsprozesses unter Verwendung der im ersten Durchlauf ermittelten
Muster neue Unterintervalle bestimmt werden.
Überraschenderweise kann ein ähnliches Verfahren auch
mit Vorteil für zunächst unbekannte Vokabularworte angewandt werden. In diesem Fall werden die Grenzen
eines zunächst unbekannten Vokabularwortes bestimmt, indem man erstens die sprecherunabhängigen Muster
-86-
A 45 326 b
k - 176
28. September 19 82
für andere Vokabularworte verwendet, um das unbekannte
Schlüsselwort zu erkennen, und indem man zweitens die von vornherein bekannte Tatsache ausnutzt, daß das
Auftreten der "Stille" am Beginn und am Ende des Worts dasselbe begrenzt. Die Grenzen werden dann aufgrund eines
relativ besseren Wertes bestimmt, welcher zum Anpassen der sprecherunabhängigen Bezugsmuster an das
unbekannte Vokabularwort gebildet wird, anstatt der Bezugsmuster an die "Stille" anzupassen. Unter Verwendung
des so erhaltenen Ergebnisses können die Grenzen des unbekannten Vokabularwortes "gesetzt" werden,
woraufhin das vorstehend beschriebene Zwei-Schritt-Verfahren angewandt werden kann, gemäß welchem das
Wort gleichmäßig in UnterIntervalle unterteilt wird,
um in einem ersten Durchgang eine Gesamtstatistik zu erhalten, und gemäß welchem in einem zweiten Durchlauf
das normale Erkennungsverfahren angewandt wird, wobei
die beim ersten Durchlauf erzeugten Bezugsmuster verwendet werden. Diese automatisierte Verfahrensführung
führt im Vergleich zu dem manuellen "Setzen" der Grenzen eines zunächst unbekannten Wortes zu vorteilhaften
Ergebnissen.
Es sollte klar sein, daß die Erkennung der "Stille" unter Verwendung mindestens zweier verschiedener Aussprachen
bzw. Darstellungen für die Stille, von denen eine vorzugsweise dynamisch bestimmt wird, in Verbindung
mit dem Einüben des Systems auf einen neuen Sprecher schlagende Vorteile bietet. Ebenso wichtig
-87-
BAD ÖRJGINAL
A 45 326 b
k - 176 - 87 -
28- September 1982
ist es in diesem Zusammenhang, darauf hinzuweisen, daß
das Wort "Stille" als Kontroll- bzw. Steuerwort dient, um eine Antwort bzw. Reaktion des Systems zu triggern.
Vorausgesetzt, daß ihre Erkennung hinreichend sicher ist, könnten auch andere "Steuerworte" verwendet werden.
Außerdem könnten unter gewissen Umständen mehrere "Steuerworte" verwendet werden, um bei einem Erkennungsvorgang als "Signalposten" zu dienen. Vorzugsweise wird
beim bevorzugten Ausführungsbeispiel jedoch das Vokabularwort "Stille" als einziges Steuerwort verwendet.
Die Mindest-Verweilzeit (erforderlicheVerweilzeit) und
die Maximal-Verweilzeit(erforderliche plus optionelle
Verweilzeit) werden vorzugsweise während der Übungsvorgänge bestimmt. Bei einem bevorzugten Ausführungsbeispiel der Erfindung wird das System unter Einsatz
mehrerer Sprecher in der vorstehend beschriebenen Weise trainiert. Außerdem werden im Verlauf der Übungen,
wie oben beschrieben, durch den Erkennungsprozess automatisch die Mustergrenzen in Übereinstimmung mit
dem oben beschriebenen Verfahren bestimmt. Diese Grenzen werden aufgezeichnet, und die Verweilzeiten
für jedes, von dem System erkannte Schlüsselwort werden
gespeichert.
Am Ende eines Trainingsdurchlaufs werden die Verweilzeiten
für jedes Muster geprüft, und die minimalen und maximalen Verweilzeiten für das Muster werden
ausgewählt. Gemäß einer bevorzugten Ausführungsform
der Erfindung wird ein Histogramm bzw. Säulendiagramm der Verweilzeit erzeugt, und die minimale und die maximale
Verweilzeit werden auf die 25% bzw. die 75%-Llnien gelegt. Auf diese Weise wird eine hohe
-88-
BAD ORIGINAL
A 45 326 b
* - 176 - 88 -
28. September 19 82
Erkennungsgenauigkeit erreicht, während die Häufigkeit von Fehlalarmen klein gehalten wird. Für die
minimale und die maximale Verweilzeit können auch andere Werte gewählt werden, wobei stets ein Kompromiss
zwischen der Erkennungsgenauigkeit und der Häufigkeit eines Fehlalarms zu treffen ist. Wenn eine
niedrige Mindestverweilzeit und eir\e hohe maximale Verweilzeit gewählt werden, dann wird die höhere Erkennungsgenauigkeit,
also im allgemeinen auf Kosten einer entsprechend größeren Häufigkeit von Fehlalarmen,
erreicht.
Die Verkettung von zwei oder mehr speziellen Wortschablonen ist ein triviales Beispiel für eine Syntaxsteuerung
des Entscheidungsprozesses. Gemäß Fig. 9 umfasst eine Syntaxschaltungsanordnung 30 8 3im Erfassen
von/Wortfolgen mit einer ungeraden Anzahl (1,3,5,7...) von Worten zwei unabhängige Sätze von
Musterausrichtregistern 310, 312, die für. jedes Vokabularwort vorgesehen sind. Die Eingangsgröße für
die erste Schablone ist der Wert für eine Pause oder der beste Wert aus dem Satz von zweiten Schablonen,
und zwar je\-.nachdem, welcher Wert besser ist. Die
Eingangsgröße für die zweite Schablone ist der beste Wert vom ersten Satz von Schablonen. Dieser Wert
wird außerdem einer zweiten Pausendetektorschablone
-89-
BAD ORlGlNAl
A 45 326 b
k - 176 - 89 -
28. September 1982
am Knoten 313 zugeführt. Bei der Ermittlung einer
Pause am Ende der Äußerung gemäß der Messung der Detektorschablone
am Knoten 313 können die Marken (label) und die Zeiten für die geäußerten Worte
alternierend von den Rückwärtsverfolgungs-Pufferspeichern
des ersten Satzes und des zweiten Satzes von Schablonen zurückverfoIgt werden. Wichtig ist, daß
die Position der Pausendetektorschablone gewährleistet,
daß nur eine Pause bzw. die Stille nach Wortfolgen mit einer ungeraden Anzahl von Worten erfasst werden
kann.
Etwas kompliziertere Syntax-Netzwerke können realisiert
werden, indem man jedem Syntax-Knoten, wie z.B. den Knoten 313a und 313b in Fig. 9, eine Liste von
zulässigen Wortkettenlängen zuordnet.. Beispielsweise kann in dem Syntax-Netzwerk gemäß Fig. 9, welches
jede Kette akzeptiert, die eine ungerade Anzahl von Worten enthält., die Kettenlänge auf eine bestimmte
ungerade Zahl, beispielsweise auf 5, festgelegt werden, indem man die Kettenlänge am Eingang zum zweiten
Pausenregister 313a prüft. Wenn die Länge der Kette an diesem Punkt nicht 5 ist, wird das Register (für
das laufende Analysier-Intervall) inaktiv,und es kann
kein Kettenergebnis aus diesem Register ausgelesen werden. Wenn die Kettenlänge jedoch 5 ist, kann eine
Kettenerkennung gemeldet werden. In entsprechender Weise kann da.s erste Vokabularregister 310 freigegeben
werden, wenn die Kettenlänge 0,-2 oder 4 beträgt,
-90-
A 45 326 b
k - 176 - 90 -
28. September 1982
während das zweite Register nur freigegeben wird, wenn
die Länge der ankommenden Kette 1 oder 3 ist. Obwohl die optimalen Ergebnisse für eine 5-Wort-Kette den Einsatz
von fünf vollständigen Sätzen von dynamischen Programmierakkumulatoren erforderlich machen würden,
ermöglicht dieses Verfahren den Einsatz einer geringeren Anzahl von Akkumulatoren, die mehrfach verwendet
werden, wobei lediglich eine geringfügige Reduzierung der typischen Erkennungsgenauigkeit eintritt.
Bei dem speziell bevorzugten Ausführungsbeispiel, welches hier beschrieben wird, ist das System so gestaltet,
daß es entweder eine Kette von fünf Ziffern oder ein bekanntes Vokabularwort erkennen kann, welches
keine Ziffer ist. Diese grammatikalische Syntax ist in Fig. 9A bildhaft dargestellt. In Fig. 9A stellt
jeder der Knoten 314a, 314b,... 314h eine Stufe des
Erkennungsprozesses dar. Dabei stellen die Knoten 314a und 314g die Erkennung der "Stille" dar, während die
Knoten 314b, 314c, 314d, 314e und 314f die Erkennung
einer Ziffer darstellen. Schließlich stellt der Knoten 314h die Erkennung eines Vokabularworts dar, bei dem
es sich weder um eine Ziffer noch um die "Stille" handelt. Gemäß der Syntaxsteuerung des betrachteten
Geräts bzw. Systems muß folglich zuerst die "Stille" erkannt werden, was dem Knoten 314a entspricht, wobei
an diesem Punkt die Erkennung einer Ziffer die Steuerung zum Knoten 314 führt, während die Erkennung einer
"Nicht-Ziffer" die Steuerung zum Knoten 314h
-91-
BAD ORIGINAL
J b tf J
ft Λ it "ϊ Ι*
A 45 326 b
k - 176 - 91 -
28. September 1982
führt (diese "Führungen" bzw. Bewegungen stellen zulassige
bzw. "legale" Vorrückschritte durch die grammatikalische Syntax dar). Am Knoten 314b' besteht die
einzige zulässige Weiterführung, die von diesem Knoten wegführt, in dem Übergang zum Knoten 314c, bei
dem es sich um einen Ziffernknoten handelt. Beim Knoten 314h ist die einzig mögliche Weiterführung,
die von diesem Knoten wegführt, der Übergang zu dem Knoten 314g, der der "Stille" zugeordnet ist. Die beschriebenen
Weiterführungen bzw. Übergänge sind die
einzig zulässigen bzw. "legalen" übergänge, die von dem steuernden Syntax-Prozessor 308 erlaubt werden,
welcher in Verbindung mit Fig. 10 beschrieben1wird.
Wichtig ist auch, darauf hinzuweisen, daß der Syntax-Prozessor gemäß Fig. 9A ähnlich wie bei dem System
gemäß Fig. 9 beträchtlich vereinfacht werden kann, indem man ihn "auf sich selbst zurückfaltet" (zusammenklappen
der Knotenstruktur) und indem man "Verlängerungen (augments)" verwendet, um den Fluß bzw.
das Fortschreiten durch eine "gefaltete" bzw. "zusammengeklappte "Syntax-Knotennetzwerkstruktur (Fig. 9B)
zu steuern. Das System gemäß Fig. 9A kann also so umgezeichnet werden, wie dies in Fig. 9B dargestellt
ist, vorausgesetzt, daß man bezüglich des Fortschreitens von einem Knoten zum nächsten längs der Verbindungsliniensegmente
gewisse Einschränkungen vorsieht.
In Fig. 9B ist die zusammengeklappte und vergrößerte
Syntax-Knotenstruktur diagrammartig dargestellt. Im
-92-
A 45 326 b
k - 176 - 92 -
28. September 1982
einzelnen wird ein Knoten 314x zum (einzigen) Stille-Knoten,
die Knoten 314u, 314v und 314w sind die neuen
Ziffern-Knoten (sie entsprechen den alten Knoten 314b,
314c, 314d, 314e und 314£), und der Knoten 314h bleibt der Nicht-Ziffer-, Nicht-Stille-Knoten hat nunmehr eine
"Doppelfunktion". Dies bedeutet, daß der Stille-Knoten 31 4x entweder die Stille am Beginn einer Wortkettenerkennung
oder die Stille darstellt, welche die Wortkettenerkennung beendet. In ähnlicher Weise haben auch
die Knoten 314u und 314v insofern eine Doppelfunktion,
als der Knoten 314u entweder die erste oder die vierte Ziffer einer Wortkette darstellt, während der Knoten
314v die zweite oder dritte Ziffer darstellt. Im Betrieb
wird der Zugang zu jedem Knoten gemäß der Ziffernwortzählung
zugelassen. Die Knoten in Fig. 9B entsprechen einer Berechnung, die für verschiedene Hypothesen
parallel durchgeführt wird. Dabei stellen die Bögen die Abhängigkeiten der verschiedenen Hypothesen
voneinander dar. In Fig. 9B sind nur drei Ziffer-Hypothesen im aktiven Zustand gehalten anstelle der
fünf aktiven Ziffer-Hypothesen, die in Fig. 9A dargestellt sind. Im Betrieb wird diese Reduzierung der
Zahl der aktiven Hypothesen dadurch erreicht, daß man Daten über einen Eingangsbogen nur dann akzeptiert,
wenn ihnen der richtige Wortzählerstand zugeordnet ist, d.h. einer der akzeptierbaren Wortzählerstände
aus dem Satz von alternativen Wortzählerständen für den betreffenden Bogen. Der Knoten 314u akzeptiert
die über den Eingangsbogen vom Knoten 314x zugeführten
-93-
O Z J Ö Ö J
A 45 326 b
k - 176
28. September 1982
k - 176 _ 93 _
Daten also nur dann, wenn der den Daten zugeordnete Wortzählerstand Null ist, was stets gilt, da die Daten
auf allen Bögen, die von dem Stille-Knoten ausgehen, .
ihren Wortzählerstand auf Null gesetzt bekommen. Der Knoten 314u akzeptiert außerdem über den Eingangsbogen
Daten vom Knoten 314b, wenn der den Daten zugeordnete
Wortzählerstand drei ist. Außerdem wählt ein Knoten die am besten passenden Daten aus allen
akzeptierbaren Eingangssignalen. Somit stellt der Knoten 314u entweder die Hypothese dar, daß eine Ziffer
als die erste Ziffer in der Äußerung oder daß eine Ziffer als die vierte Ziffer in der Äußerung erkannt
ist, wobei die Entscheidung lediglich davon abhängt, ob die Daten vom Knoten 314x oder vom Knoten
314w ausgewählt wurden. In ähnlicher Weise akzeptiert der Stille-Knoten die über den Bogen vom Knoten 314v
eintreffenden Daten immer wenn der Knoten 314v einen
zugeordneten Wortzählerstand von fünf aufweist. Außerdem akzeptiert der Stille-Knoten Eingangssignale vom
Knoten 314h und von sich selbst, von dem Stille-Knoten
314x. Der Stille-Knoten wählt dann unter diesen akzeptablen Eingangssignalen die am besten passenden
Daten aus.
Der Effekt der "gefalteten" / verlängerten bzw. vergrößerten
Syntax-Struktur besteht darin, daß sowohl der erforderliche Speicherbedarf als auch die Rechenbelastung
für das Gerät gesenkt werden. Andererseits ergibt sich aufgrund der Abweisung gewisser Daten
-94-
A 45 326 b
k - 176 _ 94 _
28. September 19 82
und des Erzwingens einer Entscheidung das Risiko,daß
die falsche Information verworfen wird und daß eine unzutreffende Entscheidung getroffen wird. Wenn jedoch
die Genauigkeit der Erkennung hoch ist, wie dies bei dem hier beschriebenen Gerät der Fall ist, dann ist
die Wahrscheinlichkeit, daß "gute" Daten verworfen werden, sehr gering. Wenn also beispielsweise der
Knoten 314u das Eingangssignal vom Knoten 314x zugunsten
eines Eingangssignals vom Knoten 314w verwirft, dann wird der Effekt erreicht, daß die wesentlich
weniger wahrscheinlichen Eingangsdaten vom Stille-Knoten verworfen werden. Dies ist ein bevorzugtes Betriebsverfahren,
da das Gerät an jedem einzelnen Punkt im zeitlichen Ablauf nur entscheiden muß, ob die Kette
gerade beginnt oder ob in der Kette bereits drei Worte gesprochen wurden. Die Wahrscheinlichkeit/bezüglich
dieser Entscheidung einen Fehler zu machen, ist außerordentlich gering. Die gefaltete bzw. zusammengeklappte
Syntax braucht kein zusätzliches Register pro Knoten, um die Anzahl der Worte mitzuzählen, die erkannt
wurden. (Im allgemeineren Fall-kann der Zählerstand der Anzahl der in einer grammatikalischen Syntaxkette
erkannten Wörter entsprechen.) Die Vorteile der gefalteten Syntax, nämlich der reduzierte Speicher-
und Rechenbedarf überwiegen aber deren oben angegebene Nachteile.
Ein weiterer zusätzlicher Vorteil der Verwendung einer "Syntax" bei der Schlüsselworterkennung besteht
-95-
BAD ORIGINAL
A 45 326 b
k - 176 - 95 -
28. September 1982
darin, daß die Entscheidung, ob die "Stille" eingetreten ist oder nicht, in der Ausnutzung der von vornherein vorhandenen Kenntnisse (der grammatikalischen
Syntax) erfolgt. Beim betrachteten Ausführungsbeispiel
verlangt die Syntax, daß die "Stille" einer Wortkette vorangeht und dieser folgt. Diese Syntax ermöglicht
es, dem Gerät die "Stille" zuverlässiger zu ermitteln und die Grenzen zwischen der kontinuierlichen Wortkette
und der "Stille" exakt zu definieren. Das kritische Element des erfindungsgemäßen Verfahrens ist die
Feststellung der "Stille" in Kombination mit der Wortkette. Die "Stille" wird am Ende der Wortkette somit
zuverlässig entdeckt, da der akkumulierte Wert für die "Stille"-Darstellungen einen "guten Wahrscheinlichkeitswert"
des zuvor empfangenen Audiosprachsignals enthält, wenn er einer Erkennung der Wortkette
entspricht, welche die Erfordernisse der grammatikalischen Syntax erfüllt. Es ist die Bestimmung der
"Stille", in ihrer Syntax, welche eine präzisere und zuverlässige Erkennung ermöglicht. Dies ist ein deutlicher
Vorteil, beispielsweise im Vergleich zur Erkennung der "Stille" in Form eines Amplituden-Minimums,
unabhängig von der Sprach-Syntax.
-96-
A 45 326 b
k - 176 - 96 -
28. September 1982
Das realisierte, nach dem Spracherkennungsverfahren
arbeitende System
Wie oben ausgeführt, wurde ein bevorzugtes Ausführungsbeispiel der Erfindung entwickelt, bei dem die Signal-
und Datenraanipulation,soweit sie über die Vorverarbeitung
im Vorprozessor gemäß Fig. 2 hinausging, mittels eines Rechners des Typs PDP-11 der Firma Digital
Equipment Corporation realisiert und gesteuert wurde, wobei dieser Rechner in Verbindung mit dem SpezialVektor-Rechnerprozessor
eingesetzt wurde, wie er beispielsweise in der US-PS 4 228- 498 beschrieben ist.
Das erfindungsgemäße Verfahren kann nicht nur durch
entsprechende Programmierung eines Rechners realisiert werden, sondern auch durch den Einsatz entsprechender
Schaltungen.
Im Betrieb arbeitet das Gerät gemäß Fig. 10 nach dem
Verfahren der dynamischen Programmierung. Jede neue Folge von Wahrscheinlichkeitswerten, d.h. jede Folge
von Wahrscheinlichkeitswerten bezüglich jedem Bezugsmuster in einer vorgegebenen Folge,die vom Rechner
über die Leitungen 320 eintrifft, wird zu den vorhandenen Werten in einem der Speicher 322 bzw. 324
addiert. Diese Speicher arbeiten, wie unten beschrieben, alternierend unter Steuerung durch einen Syntax-Prozessor
30 8, der die Werte empfängt, die dem Ende jedes möglichen Worts entsprechen bzw. unter Steuerung
-97-
BAD ORIGINAL
A 45 326 b
k - 176 - 97 -
28. September 1982
durch ein Minimalwert-Register 326, welches die Ausgangssignale der Speicher 32 2 und 324 in Abhängigkeit
von dem gewählten Speicher und den nächsten Phonemsignalen ersetzen kann bzw. unter Steuerung durch die
übrigen Steuer- und Taktsignale.
Im Betrieb folgt die Schaltung den Regeln für das Auf-den-neuesten-Stand-bringen der Register, die den
einzelnen Kreisen in Fig..4 entsprechen, um bei der Erkennung jeder Unterbrechung bzw. Pause einen Entscheidungsmechanismus zu liefern, durch den die beste
Anpassung erreicht werden kann.
Die Speicher 322 und 324 haben denselben Aufbau und sind alle 10 ms austauschbar, d.h. jedesmal, wenn
ein neuer Rahmen analysiert wird. Die Speicher enthalten eine Anzahl von 32-Bit-Worten, wobei die Anzahl
von 32-Bit-Worten der. Gesamtzahl der Register (bzw. der Kreise in Fig. 4) entspricht, die mit den Worten des
Maschinenvokabulars verknüpft sind. Zunächst ist ein Speicher, beispielsweise der Speicher 322, mit
"schlechten" Wahrscheinlichkeitswerten gefüllt, d.h. mit Wahrscheinlichkeitswerten, die.im vorliegenden
Fall einen großen Wert haben. Anschließend wird der Speicher 3 22 sequentiell in einer vorgegebenen Folge
ausgelesen, die der Folge der neuen Wahrscheinlichkeitswerte entspricht, die vom Vektor-Prozessor über
die Leitung 320 angeliefert werden, und die Werte werden dann in der nachstehend beschriebenen Weise
-98-
A 45 326 b
k - 176 - 98 -
28. September 1982
auf den neuesten Stand gebracht und neu in"den anderen
Speicher, den Speicher 324, eingeschrieben. Während des nächsten 1O ms-Rahmens werden die nunmehr alten
Werte aus dem Speicher 32 4 ausgelesen, während die neuen Werte in den nunmehr anderen Speicher 32 2 eingeschrieben
werden. Diese Wechselfunktion dauert unter
Steuerung durch den Syntax-Prozessor, durch das Minimalwert-Register 3 26 und durch andere Steuer- und-Taktsignale
an. Wie oben erwähnt, ist jedes Wort in den Speichern 322 und 324 eine 32-Bit-Ziffer. Die niedrig- '
wertigen Bits, die Bits 0 bis 15, werden verwendet, um die akkumulierten Wahrscheinlichkeitswerte -zu
speichern. Außerdem werden die Bits 16 bis 2 3 verwertet,
um die Phonemdauer aufzuzeichnen, während die Bits
24 bis 31 verwendet werden, um die Dauer der Wortzeiten in den Registern zu speichern.
Die ankommenden Wahrscheinlichkeitswerte vom Rechner werden für jede Rahmenzeit in einem Musterwertspeicher
328 gespeichert. Diese Information wird vom Rechner als eine Art "burst" mit einer sehr hohen Datenübertragung
sgeschwindigkeit ausgegeben und aus dem Musterwertspeicher mit einer niedrigeren Geschwindigkeit,
ausgelesen mit der die Schaltung gemäß Fig. 10 arbeitet.
Auf diese Weise werden die Ausgangssignale des ausgewählten Speichers 322 bzw. 324 über das ausgewählte
Gatter 330 bzw. 332 an die Leitungen 334 angelegt, ohne daß zwischendurch eine Steuerung durch
den Syntax-Prozessor oder das Minimalwert-Register
-99-
BAD ORIGINAL
3Ö834
A 45 326 b
k - 176 - 99 -
28. September 1982
erfolgen würde. Die Leitungen 334 sind mit Addierern 336, 338, 340 verbunden, die dazu dienen, den Wahrscheinlichkeitswert
und die Zählerstände für die Phonemdauer bzw. die Targetmusterdauer sowie für die
Wortdauer auf den neuesten Wert zu bringen. Auf diese Weise wird der Wahrscheinlichkeitswert, der dem Wert
für den vorangehenden Rahmen entspricht und aus einem der Speicher 322 bzw. 324 geliefert wird, von
dem Musterwertspeicher über die Leitungen 342 ausgegeben und zu dem alten Wahrscheinlichkeitswert addiert
und dann in dem Speicher gespeichert, welcher nunmehr für das Einschreiben verwendet wird. Die Auswahl
des Speichers erfolgt dabei in Abhängigkeit vom Signalpegel auf den Leitungen 344. Gleichzeitig werden
die Zählerstände für die Wortdauer und die Phonemdauer um "eins" erhöht.
Auf diese Weise werden der Zählerstand für die Wortdauer, der Zählerstand für die Phonemdauer und die
Wahrscheinlichkeitswerte normalerweise auf den neuesten Stand gebracht.
Die zwei Ausnahmen für die normale, vorstehend erläuterte Regel für das Auf-den-neuesten-Stand-bringen
der Daten entsprechen dem Beginn eines neuen Phonems und dem Beginn eines neuen Wortes. Bei einem Beginn
eines neues Phonems, welcher nicht ein Beginn eines neuen Wortes ist, wird der erste Speicher des Phonems
nicht nach der üblichen Regel auf den neuesten Stand gebracht. Stattdessen wird der Wahrscheinlichkeitswert
-100-BAD ORIGINAL
A 45 326 b
k " 176 - 100 -
28.September 1982
über die Leitung 34 2 zu dem Minimalwert des Registers für die optionelle Verweilzeit für den vorangegangenen
Bezugsrahmen bzw. das vorangegangene Phonem bzw. dem Minimalwert im Register für die erforderliche Verweilzeit
für das letzte Phonem addiert. Dies wird unter Verwendung des Minimalwert-Registers 326 ausgeführt.
Das Ausgangssignal des Minimalwert-Registers "stellt den Minimalwert für das frühere Phonem in der vorausgegangenen
Rahmenzeit dar. Dieser Wert wird dadurch erhalten, -daß man die Inhalte der Minimalwert-Register
ständig auf den neuesten Stand bringt, sobald ein neuer Minimalwert geliefert wird. Der neue Minimalwert wird in das Minimalwert-Register geladen, indem
man das Vorzeichen-Bit des Ausgangssignals eines Subtraktions-Rechenelements
346 auswertet. Dieses Element 346 vergleicht den jeweils gespeicherten Minimalwert
mit dem neuen Minimalwert aus dem gerade auf den neuesten Stand gebrachten Register. Das Minimalwert-Register
speichert außerdem den Wortdauer-Zählerstand und den Phonemdauer-Zählerstand, die dem Register mit
dem Minimalwert entsprechen. All diese Informationen
werden über die Leitungen 3 34 beim Beginn .eines neuen Phonems ausgegeben. Dieser Ausgabeprozess wird durch
die Verwendung eines Gatter-Elements 348 gesteuert, welches beim Start eines neuen Phonems freigegeben
wird, wobei gleichzeitig Steuersignale an zwei Gatter 332 und 33ο gelegt werden, durch die diese Gatter
während des Beginns eines neuen Phonems gesperrt werden.
-101-
ORIGINAL
Ά 45 326 b
k - 176 - 101 -
28. Seotember 1982
Der Syntax-Prozessor 308 (vgl. Fig. 9B) wird dazu verwendet, das erste Register für das erste Phonem für
ein neues Wort auf den neuesten Stand zu bringen, und zwar mit dem besten Wert - unter Berücksichtigung der
Syntax - eines Wortes, welches im vorangehenden Rahmen endet. Wenn der Wert eines Registers, welches dem
ersten Register des ersten Phonems eines neuen Wortes entspricht, durch einen eintreffenden Wahrscheinlichkeitswert
auf den neuesten Stand gebracht werden soll, wird nicht das Ausgangssignal eines der Speicher 322,
324 verwendet. Stattdessen wird der beste Wahrscheinlichkeitswert ,vorzugsweise unter Berücksichtigung der
Syntax, für die im vorangehenden Rahmen endenden Worte verwendet. Diese Funktion wird ermöglicht, indem die
Gatter 330 und 332 gesperrt werden, und indem gleichzeitig
ein Gatter 350 freigegeben wird, um den besten, verfügbaren Wert, der in. einem Register 352 gespeichert
ist, auf die Leitungen 334 zu geben, damit dieser zu dem über die Leitungen 342 ankommenden Muster-Wahrscheinlichkeitswert
addiert wird.
Bei dieser, durch Schaltungen (statt durch Programme) realisierten Ausfuhrungsform wird daher jedes Register,
gemäß einer Verweilzeit eines Bezugsrahmens, kontinuierlich auf den neuesten Stand gebracht. Der Syntax-Prozessor
ist so ausgelegt, daß er, wenn die Wahrscheinlichkeitswerte ein "Pausen"-Wort darstellen, die
erforderlichen Steuersysteme bereitstellt, um eine Schaltung oder einen Rechner zu befähigen,
- 102 -
BAD ORiQlNAL
A 4 5 3 26 b
k - 176 - 102 -
28. September 1982
eine Rückwärtsverfolgung durchzuführen, um die erkannten
Orte, zu bestimmen.
Aus Vorstehendem wird deutlich, daß die verschiedenen Ziele der Erfindung erreicht werden und daß weitere
vorteilhafte Ergebnisse erreicht werden.
Dabei versteht es sich, daß das Verfahren und die Vorrichtung, welche vorstehend zur. kontinuierlichen Spracherkennung
bei Wortketten beschrieben wurden, auch die spezielle Anwendungsmöglichkeit einer isolierten Spracherkennung
umfassen. Weiter versteht es sich, daß dem Fachmann, ausgehend von den beschriebenen Ausführungsbeispielen, zahlreiche Möglichkeiten für Änderungen,
Vereinfachungen und/oder Ergänzungen zu Gebote stehen,
ohne daß er dabei den Grundgedanken der Erfindung verlassen müsste.
BAD ORIGINAL
Claims (1)
- HOEGER, STELLREOHT &:-PA"R T-Kl E-RPATENTANWÄLTE UHLANDSTRASSE Mc-D 7OOO STUTTGART 1A 45 326 b Anmelder: Verbex Corporationk - 176 2 Oak Park28. September 1982 Bedford, MA 01730USAPatentansprüche(y ·) Verfahren zur Sprachanalyse zum Erkennen von Pausen und von mindestens einem Schlüsselwort in einem Audiosignal, gekennzeichnet durch folgende Verfahrensschritte :Man erzeugt mindestens eine erste und eine zweite Zielschablone, von denen jede eine andere Darstellung einer Pause in dem ankommenden Audiosignal darstellt;man vergleicht das ankommende Audiosignal mit der ersten und der zweiten Zielschablone;man erzeugt numerische Messwerte, die das Ergebnis der Vergleiche darstellen undman entscheidet auf der Basis von zumindest den Messwerten, ob eine Pause ermittelt wurde.A 45 326 bk - 176 - 2 -28. September 19822. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Erzeugung der Messwerte in der Weise geschieht, daß man für die eine der mindestens zwei Zielschablonen eine sich dynamisch ändernde Pausen-Zielschablone erzeugt, wobei diese sich dynamisch ändernde Schablone in Abhängigkeit von dem ankommenden Audiosignal erzeugt wird.3. Verfahren zur Sprachanalyse zum Erkennen von Pausen und von mindestens einem Schlüsselwort in einem Audiosignal, insbesondere nach Anspruch 1 oder 2, gekennzeichnet durch folgende Verfahrensschritte:Man erzeugt einen numerischen Messwert für die Wahrscheinlichkeit, daß der im Augenblick ankommende Teil des Audiosignals einem Bezugsmuster entspricht, welches eine Pause darstellt;man ändert den numerischen Messwert gemäß einer;" Syntax-abhängigen Entscheidung wirksam, wobei die Syntax-abhängige Entscheidung die Erkennung eines unmittelbar vorausgehenden Teils des Audiosignals gemäß einer grammatikalischen Syntax darstellt undman bestimmt aus dem wirksam geänderten Messwert, ob der vorliegende Signalteil einer Pause entspricht.BAD ORIGINALJZODÖOHA 45 326 bk - 176 - 3 -28. September 19824. Verfahren zur Sprachanalyse zum Erkennen mindestens eines Schlüsselwortes in einem Audiosignal, bei dem jedes Schlüsselwort durch eine Schablone charakterisiert ist, welche mindestens ein Zielmüster aufweist, sowie zum Bilden von Bezugsmustern, welche diese Schlüsselworte darstellen und auf einen bestimmten Sprecher zugeschnitten sind, insbesondere nach einem der Ansprüche 1 bis 3, gekennzeichnet durch folgende Verfahrensschritte:Man stellt sprecherunabhängige Bezugsmuster bereit, welche die Schlüsselworte darstellen;man bestimmt die Grenzen der Schlüsselworte in Audiosignalen, die von dem Sprecher gesprochen werden, unter Verwendung der sprecherunabhängigen Bezugsmuster undman übt die Sprachanalyse-Einrichtungen auf den Sprecher ein, indem man die Grenzen verwendet, die für die vom Sprecher gesprochenen Schlüsselworte ermittelt wurden.5. Verfahren nach Anspruch 4, gekennzeichnet durch folgende Einzelschritte des Übungsschrittes:Man unterteilt ein Schlüsselwort, welches ein ankommendes Audiosignal von dem Sprecher darstellt unter Verwendung der Schlüsselwortgrenzen in eine Anzahl von Unterintervallen;A 4 5 32 6 bk - 176 - 4 -28. September 1982man zwingt jedes Unterintervall, einem einzigartigen Bezugsmuster zu entsprechen;man wiederholt die Teilschritte der Unterteilung und der Erzwingung der Entsprechung für eine Anzahl von Audioeingangssignalen, welche dasselbe Schlüsselwort darstellen;man erzeugt statistische Daten, welche die Bezugsmuster beschreiben, die den einzelnen Unterintervallen zugeordnet sind undman macht einen zweiten Durchlauf durch die Audioeingangssignale, die das Schlüsselwort darstellen, um unter Verwendung der gesammelten statistischen Daten von den Analysiereinrichtungen erzeugte Unterintervalle für die Schlüsselworte zu erhalten.Verfahren zur Sprachanalyse zum Erkennen mindestens eines Schlüsselwortes in einem Audiosignal·, bei dem jedes Schlüsselwort durch eine Schablone charakterisiert ist, welche mindestens ein Zielmuster aufweist, sowie zum Bilden von Bezugsmustern, welche ein zuvor unbekanntes Schlüsselwort darstellen, insbesondere nach einem der Ansprüche 1 bis 5, gekennzeichnet durch folgende Verfahrensschritte:man stellt sprecherunabhängige Bezugsmuster zur Verfügung, welche Schlüsselworten entsprechen,-5-BAD ORIGINALOZ-OUOOtA 45 326 bk - 176 - 5 -28. September 1982die den Analysiereinrichtungen zuvor bekannt waren;man bestimmt die Grenzen des unbekannten Schlüsselwortes unter Verwendung der sprecherunabhängigen Bezugsmuster undman übt die Sprachanalysiereinrichtungen unter Verwendung der zuvor von diesen für das zuvor unbekannte Schlüsselwort bestimmten Grenzen, um statistische Daten zu erzeugen, die das zuvor unbekannte Schlüsselwort beschreiben.7. Verfahren nach Anspruch 6, dadurch gekennzeichnet, daß man ein Audiosignal bereitstellt, welches das von dem Specher gesprochene unbekannte Schlüsselwort in isolierter Form enthält.8. Verfahren nach Anspruch 6, dadurch gekennzeichnet, daß der Übungsschritt folgende Einzelschritte umfasst:Man unterteilt ein ankommendes Audiosignal, welches dem zuvor unbekannten Schlüsselwort entspricht, unter Verwendung der Grenzen in einer Anzahl von UnterIntervallen;man erzwingt, daß jedes Unterintervall einem einzigartigen Bezugsmuster entspricht;-6-BAD OR[QiNALA 45 326 bk - 176 - 6 -28. September 1982man wiederholt die Schritte der Unterteilung und der Erzwingung der Entsprechung für eine Anzahl von Audioeingangssignalen, die dasselbe Schlüsselwort darstellen;man erzeugt statistische Daten, welche das Bezugsmuster beschreiben, welches jedem UnterIntervall zugeordnet ist und macht einen zweiten Durchlauf durch die Audioeingangssignale, die das zuvor unbekannte Schlüsselwort darstellen, wobei man die gesammelten statistischen Daten verwendet, um durch die Analysiereinrichtungen erzeugte Unterintervalle für das Schlüsselwort bereitzustellen.Verfahren zur Sprachanalyse zum Erkennen einer Anzahl von Schlüsselwörtern in einem Audiosignal, bei dem jedes Schlüsselwort durch eine Schablone charakterisiert ist, welche mindestens ein Zielmuster besitzt, und bei dem jede Folge dieser Schlüsselwörter in diesem Audiosignal· durch eine grammatikalische Syntax beschrieben wird, die durch mehrere verbundene Entscheidungsknoten charakterisiert ist, insbesondere nach einem der Ansprüche 1 bis 8, gekennzeichnet durch folgende Verfahrensschritte:Man stellt eine Folge numerischer Werte zum Erkennen von Schlüsselwörtern in dem Audiosignal bereit, wobei man eine dynamische Programmierung anwendet;BAD ORIGINALA 45 326 bk - 176 '- 7 -28.. September 1982man verwendet die grammatikalische Syntax, um zu bestimmen, welche Werte ein zulässiges Fortschreiten in dem Erkennungsprozess gestatten undman verringert die Anzahl der Entscheidungsknoten durch ein derartiges Zusammenfalten der Syntax, daß die Rechenbelastung für die Analysiereinrichtungen verringert wird.10. Gerät zur Sprachanalyse zum Erkennen von Pausen und von mindestens einem Schlüsselwort in einem Audiosignal·/ zur Durchführung" des Verfahrens nach einem der Ansprüche 1 bis 9, gekennzeichnet durch folgende Merkmale:Es sind Einrichtungen vorgesehen, mit deren Hilfe mindestens eine erste und eine zweite Zielschablone erzeugbar sind, von denen jede eine andere Darstellung einer Pause in dem ankommenden Audiosignal darstellt;es sind Vergleichseinrichtungen vorgesehen, mit deren Hilfe das ankommende Audiosignal mit der - ersten und der zweiten Zielschablone vergleichbar ist;es sind Einrichtungen zum Erzeugen numerischer Messwerte vorgesehen, die das Ergebnis der Vergleiche darstellen undes sind Entscheidungseinrichtungen vorgesehen, mit deren Hilfe auf der Basis von zumindest den Meßwerten entscheidbar ist, ob eine Pause ermittelt wurde.A 45 326 bk - 17628. September 198211. Gerät nach Anspruch TO, dadurch gekennzeichnet, daß die Einrichtungen zur Erzeugung der Messwerte derart ausgebildet sind, daß mit ihrer Hilfe für die eine der mindestens zwei Zielschablonen eine sich dynamisch ändernde Pausen-Zielschablone erzeugbar ist, wobei diese sich dynamisch ändernde Schablone in Abhängigkeit von dem ankommenden Audiosignal erzeugbar ist.12. Gerät zur Sprachanalyse zum Erkennen von Pausen und von mindestens einem Schlüsselwort in einem Audiosignal zur Durchführung des Verfahrens nach einem der Ansprüche 1 bis 9, gekennzeichnet durch folgende Merkmale:Es sind Einrichtungen vorgesehen, mit deren Hilfe ein numerischer Messwert für die Wahrscheinlichkeit erzeugbar ist, daß der im Augenblick ankommende Teil des Audiosignals einem Bezugsmuster entspricht, welches eine Pause darstellt; es sind Einrichtungen vorgesehen, mit der Hilfe zu dem numerischen Messwert ein syntaxabhängiger Wert addierbar ist, um einen neuen Wert zu erzeugen, wobei der syntaxabhängige Wert die Erkennung eines unmittelbar vorausgehenden Teils des Audiosignals gemäß einer grammatikalischen Syntax darstellt undes sind Einrichtungen vorgesehen, mit deren Hilfe aus dem neuen Wert bestimmbar ist, ob der vorliegende Signalanteil einer Pause entspricht.BAD ORIGINALA 45 326 bk - 176 - 9 -28. September 198213. Gerät zur Sprachanalyse zum Erkennen mindestens eines Schlüsselwortes in einem Audiosignal, bei dem jedes Schlüsselwort durch eine Schablone charakterisiert ist, welche mindestens ein Zielmuster aufweist, sowie zum Bilden von Bezugsmustern, welche diese Schlüsselwörter darstellen und auf einen bestimmten Sprecher zugeschnitten sind, zur Durchführung des Verfahrens nach einem der Ansprüche 1 bis 9, gekennzeichnet durch folgende Merkmale:Es sind Einrichtungen zum Bereitstellen sprecherunabhängiger Bezugsmuster vorgesehen, welche die Schlüsselworte darstellen;es sind Einrichtungen zum Bestimmen der Grenzen der Schlüsselworte in AudioSignalen, die von dem Sprecher gesprochen werden, unter Verwendung der sprecherunabhängigen Bezugsmuster vorgesehen; es sind Einrichtungen vorgesehen, mit deren Hilfe die Sprachanalyse-Einrichtungen auf den Sprecher einübbar sind, indem die Grenzen verwendet werden, die für die vom Sprecher gesprochenen Schlüsselworte ermittelt wurden.14. Gerät nach Anspruch 13, dadurch gekennzeichnet, daß die Einrichtungen zum Einüben der Sprachanalyse-Einrichtungen folgende Merkmale aufweisen:Es sind Einrichtungen vorgesehen, mit deren Hilfe ein Schlüsselwort,.welches ein ankommendes Audio-A 45 326 bk - 176 - 10 -28. September 19 82signal darstellt, welches von dem Sprecher stammt, wiederholt unter Verwendung der Schlusslwortgrenzen in eine Anzahl von Unterintervallen unterteilbar ist;es sind Einrichtungen vorgesehen, mit deren Hilfe für jedes Unterintervall wiederholt dessen Übereinstimmung mit einem einzigartigen Bezugsmuster erzwingbar ist;es sind Einrichtungen vorgesehen, mit deren Hilfe statistische Daten erzeugbar sind, welche die Bezugsmuster beschreiben,die den einzelnen Unterintervallen zugeordnet sind und es sind Einrichtungen vorgesehen, mit deren Hilfe ein zweiter Durchlauf durch die Audioeingangssigna-Ie, die das Schlüsselwort darstellen, ausführbar ist, um unter Verwendung der gesamten statistischen Daten von den Ananlysiereinrichtungen erzeugte Unterintervalle für die Schlüsselworte zu erhalten.15. Gerät zur Sprachanalyse zum Erkennen mindestens eines Schlüsselwortes in einem Audiosignal, bei dem jedes Schlüsselwort durch eine Schablone charakterisiert ist, welche mindestens ein Zielmuster aufweist, sowie zum Bilden von Bezugsmustern, welche ein zuvor unbekanntes Schlüsselwort darstellen, zur Durchführung des Verfahrens nach einem der Ansprüche 1 bis 9, gekennzeichnet durch folgende Merkmale:BAD ORIGINALO L OU OA 45 326 b k - 17628. September 1982-U-Es sind Einrichtungen vorgesehen, mit deren Hilfe sprecherunabhängige Bezugsmuster bereitstellbar
sind, welche Schlüsselworten entsprechen, die den Analysiereinrichtungen zuvor bekannt waren;
es sind Einrichtungen vorgesehen, mit -deren Hilfe die Grenzen des unbekannten Schlüsselwortes unter Verwendung der sprecherunabhängigen Bezugsmuster
bestimmbar sind undes sind Einrichtungen vorgesehen, mit deren Hilfe die Sprachanalysiereinrichtungen unter Verwendung von zuvor von diesen für das zuvor unbekannte
Schlüsselwort bestimmten Grenzen derart einübbar
sind, daß mit ihrer Hilfe statistische Daten erzeugbar sind, die das zuvor unbekannte Schlüsselwort beschreiben.16. Gerät nach Anspruch 15, dadurch gekennzeichnet,
daß Einrichtungen vorgesehen sind, mit deren Hilfe ein Audiosignal bereitstellbar ist, welchesdas von dem Sprecher gesprochene unbekannte Schlüsselwort in isolierter Form enthält.17. Gerät nach Anspruch 15, dadurch gekennzeichnet,
daß die Einübungseinrichtungen folgende Merkmale
aufweisen:Es sind Einrichtungen vorgesehen, mit deren Hilfe ein ankommendes Audiosignal, welches dem zuvor unbekannten Schlüsselwort entspricht, unter Verwendung der Grenzen wiederholt in eine Anzahl von
Unterintervallen unterteilbar ist;BADA 45 326 bk - 176 - 12 -28. September 1982es sind Einrichtungen vorgesehen, mit deren Hilfe die Übereinstimmung jedes Unterintervalls mit einem einzigartigen Bezugsmuster wiederholt erzwingbar ist;es sind Einrichtungen vorgesehen, mit deren Hilfe statistische Daten erzeugbar sind, welche das mit jedem einzelnen Unterintervall verknüpfte Bezugsmuster beschreiben undes sind Einrichtungen vorgesehen, mit deren Hilfe unter Verwendung der gesammelten statistischen Daten ein zweiter Durchlauf durch die das zuvor unbekannte Schlüsselwort darstellenden Audio-Eingangssignale durchführbar ist, um durch die Analysiereinrichtungen erzeugte Unterintervalle für das
Schlüsselwort bereitzustellen.Gerät zur Sprachanalyse zum Erkennen einer Anzahl von Schlüsselwörtern in einem Audiosignal, bei
dem jedes Schlüsselwort durch eine Schablone charakterisiert ist, welche mindestens ein Zielmuster besitzt, und bei dem jede Folge dieser Schlüsselwörter in einem Audiosignal durch eine grammatikalische Syntax beschrieben wird, die durch mehrere verbundene Entscheidungsknoten charakterisiert ist, zur Durchführung des Verfahrens nach einem der Ansprüche 1 bis 9, gekennzeichnet durch folgende
Merkmale:-13-BAD ORIGINALJZ0DÖJ4A 45 326 bk - 176 - 13 -28. September 1982. Es sind Einrichtungen vorgesehen, mit deren Hilfe unter Anwendung einer dynamischen Programmierung eine Folge numerischer Werte zum Erkennen von Schlüsselwörtern in dem Audiosignal bereitstellbar ist;es sind Einrichtungen vorgesehen, mit deren Hilfe unter Verwendung der grammatikalischen Syntax bestimmbar ist, welche Werte ein zulässiges Fortschreiten in dem Erkennuzigsprozess gestatten undes sind Einrichtungen vorgesehen, mit deren Hilfe die Anzahl der Entscheidungsknoten durch ein die Rechenbelastung für die Analysiereinrichtungen verringerndes Zusammenfalten der Syntax verringerbar ist.19. Gerät zur Sprachanalyse zum Erkennen einer Anzahl von Schlüsselwörtern in einem Audiosignal, bei dem jedes Schlüsselwort durch eine Schablone charakterisiert ist, welche mindestens ein Zielmuster besitzt, und bei dem die Folge dieser Schlüsselwörter in diesem Audiosignal durch eine grammatikalische Syntax beschrieben wird, die durch mehrere verbundene Entscheidungsknoten charakterisiert ist, zur Durchführung des Verfahrens nach einem der Ansprüche 1 bis 9, gekennzeichnet durch folgende Merkmale:Es sind Einrichtungen vorgesehen,, mit deren Hilfe unter Anwendung einer dynamischen Programmierung-14-BAD ORIGINALA 45 326 bk - 176 - 14 -28. September 1982eine Folge numerischer Werte zum Erkennen von Schlüsselwörtern in dem Audiosignal bereitstellbar ist;es sind Einrichtungen vorgesehen, mit deren Hilfe unter Verwendung der grammatikalischen Syntax bestimmbar ist, welche Werte ein zulässiges Fortschreiten in dem Erkennungsprozess gestatten undes sind Einrichtungen zum Verwenden von Verlängerungen (augments) zum Sichern von zulässigen Vorrückschritten vorgesehen, die derart ausgebildet sind, daß ansonsten zulässige Vorrückschritte gemäß der Syntax verworfen werden.20. Verfahren zur Sprachanalyse zum Erkennen einer Anzahl von Schlüsselwörtern in einem Audiosignal, bei dem jedes Schlüsselwort durch eine Schablone charakterisiert ist, welche mindestens ein Zielmuster besitzt, und bei dem jede Folge dieser Schlüsselwörter in diesem Audiosignal durch eine grammatikalische Syntax beschrieben wird, die durch mehrere verbundene Entscheidungsknoten charakterisiert ist, inbesondere nach einem der Ansprüche 1 bis 9", gekennzeichnet durch folgende Verfahrensschritte:Man stellt eine Folge numerischer Werte zum Erkennen von Schlüsselwörtern in dem Audiosignal bereit, wobei man eine dynamische Programmierung anwendet;ORfGiNALJZJDöA 45 326 bk - 17628. Seotember 1982- 15 -man verwendet die grammatikalische Syntax, um zu bestimmen, welche Werte ein zulässiges Fortschreiten in dem Erkennungsprozess gestatten und
man verwendet Verlängerungen (augments) zum Sichern von zulässigen Vorrückschritten, derart, daß ansonsten zulässige Vorrückschritte gemäß der Syntax verworfen werden.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US06/309,209 US4481593A (en) | 1981-10-05 | 1981-10-05 | Continuous speech recognition |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3236834A1 true DE3236834A1 (de) | 1983-10-06 |
DE3236834C2 DE3236834C2 (de) | 1995-09-28 |
Family
ID=23197172
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE3236834A Expired - Fee Related DE3236834C2 (de) | 1981-10-05 | 1982-10-05 | Verfahren und Gerät zur Sprachanalyse |
Country Status (6)
Country | Link |
---|---|
US (1) | US4481593A (de) |
JP (3) | JPS58134700A (de) |
CA (1) | CA1182223A (de) |
DE (1) | DE3236834C2 (de) |
FR (1) | FR2520913B1 (de) |
GB (1) | GB2107100B (de) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4111781A1 (de) * | 1991-04-11 | 1992-10-22 | Ibm | Computersystem zur spracherkennung |
DE19581756T1 (de) * | 1994-09-30 | 1997-10-02 | Motorola Inc | Verfahren und Vorrichtung zur Erkennung einer Grenze zwischen Tönen in einer kontinuierlichen Sprache |
US7277847B2 (en) | 2001-04-18 | 2007-10-02 | Deutsche Telekom Ag | Method for determining intensity parameters of background noise in speech pauses of voice signals |
Families Citing this family (91)
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 |
USRE33597E (en) * | 1982-10-15 | 1991-05-28 | Hidden Markov model speech recognition arrangement | |
DE3380576D1 (en) * | 1983-03-28 | 1989-10-19 | Exxon Research Engineering Co | Speech recognition methods and apparatus |
US4627091A (en) * | 1983-04-01 | 1986-12-02 | Rca Corporation | Low-energy-content voice detection apparatus |
US4723290A (en) * | 1983-05-16 | 1988-02-02 | Kabushiki Kaisha Toshiba | Speech recognition apparatus |
US4720802A (en) * | 1983-07-26 | 1988-01-19 | Lear Siegler | Noise compensation arrangement |
US4718092A (en) * | 1984-03-27 | 1988-01-05 | Exxon Research And Engineering Company | Speech recognition activation and deactivation method |
US4713778A (en) * | 1984-03-27 | 1987-12-15 | Exxon Research And Engineering Company | Speech recognition method |
US4718088A (en) * | 1984-03-27 | 1988-01-05 | Exxon Research And Engineering Company | Speech recognition training method |
US4868879A (en) * | 1984-03-27 | 1989-09-19 | Oki Electric Industry Co., Ltd. | Apparatus and method for recognizing speech |
US4718093A (en) * | 1984-03-27 | 1988-01-05 | Exxon Research And Engineering Company | Speech recognition method including biased principal components |
US4713777A (en) * | 1984-05-27 | 1987-12-15 | Exxon Research And Engineering Company | Speech recognition method having noise immunity |
US5218668A (en) * | 1984-09-28 | 1993-06-08 | Itt Corporation | Keyword recognition system and method using template concantenation model |
US4718094A (en) * | 1984-11-19 | 1988-01-05 | International Business Machines Corp. | Speech recognition system |
US4811399A (en) * | 1984-12-31 | 1989-03-07 | Itt Defense Communications, A Division Of Itt Corporation | Apparatus and method for automatic speech recognition |
JPH0632012B2 (ja) * | 1985-03-25 | 1994-04-27 | 株式会社東芝 | 音声認識装置 |
US4980918A (en) * | 1985-05-09 | 1990-12-25 | International Business Machines Corporation | Speech recognition system with efficient storage and rapid assembly of phonological graphs |
US4833712A (en) * | 1985-05-29 | 1989-05-23 | International Business Machines Corporation | Automatic generation of simple Markov model stunted baseforms for words in a vocabulary |
US4759068A (en) * | 1985-05-29 | 1988-07-19 | International Business Machines Corporation | Constructing Markov models of words from multiple utterances |
US4977599A (en) * | 1985-05-29 | 1990-12-11 | International Business Machines Corporation | Speech recognition employing a set of Markov models that includes Markov models representing transitions to and from silence |
GB8527913D0 (en) * | 1985-11-12 | 1985-12-18 | Pa Consulting Services | Analysing transitions in finite state machines |
US5023911A (en) * | 1986-01-10 | 1991-06-11 | Motorola, Inc. | Word spotting in a speech recognition system without predetermined endpoint detection |
US4827521A (en) * | 1986-03-27 | 1989-05-02 | International Business Machines Corporation | Training of markov models used in a speech recognition system |
JPS6350896A (ja) * | 1986-08-21 | 1988-03-03 | 沖電気工業株式会社 | 音声認識装置 |
US4829578A (en) * | 1986-10-02 | 1989-05-09 | Dragon Systems, Inc. | Speech detection and recognition apparatus for use with background noise of varying levels |
US4896358A (en) * | 1987-03-17 | 1990-01-23 | Itt Corporation | Method and apparatus of rejecting false hypotheses in automatic speech recognizer systems |
US4805218A (en) * | 1987-04-03 | 1989-02-14 | Dragon Systems, Inc. | Method for speech analysis and speech recognition |
FR2639737B1 (fr) * | 1988-11-30 | 1991-01-11 | Bull Sa | Circuit integre de programmation dynamique |
US5761639A (en) * | 1989-03-13 | 1998-06-02 | Kabushiki Kaisha Toshiba | Method and apparatus for time series signal recognition with signal variation proof learning |
JP3002204B2 (ja) * | 1989-03-13 | 2000-01-24 | 株式会社東芝 | 時系列信号認識装置 |
US4994983A (en) * | 1989-05-02 | 1991-02-19 | Itt Corporation | Automatic speech recognition system using seed templates |
US5509104A (en) * | 1989-05-17 | 1996-04-16 | At&T Corp. | Speech recognition employing key word modeling and non-key word modeling |
CA2015410C (en) * | 1989-05-17 | 1996-04-02 | Chin H. Lee | Speech recognition employing key word modeling and non-key word modeling |
JPH04362698A (ja) * | 1991-06-11 | 1992-12-15 | Canon Inc | 音声認識方法及び装置 |
US5199077A (en) * | 1991-09-19 | 1993-03-30 | Xerox Corporation | Wordspotting for voice editing and indexing |
US5388183A (en) * | 1991-09-30 | 1995-02-07 | Kurzwell Applied Intelligence, Inc. | Speech recognition providing multiple outputs |
US5502774A (en) * | 1992-06-09 | 1996-03-26 | International Business Machines Corporation | Automatic recognition of a consistent message using multiple complimentary sources of information |
JP2524472B2 (ja) * | 1992-09-21 | 1996-08-14 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 電話回線利用の音声認識システムを訓練する方法 |
JP2818362B2 (ja) * | 1992-09-21 | 1998-10-30 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 音声認識装置のコンテキスト切換えシステムおよび方法 |
US5425129A (en) * | 1992-10-29 | 1995-06-13 | International Business Machines Corporation | Method for word spotting in continuous speech |
DE69432570T2 (de) * | 1993-03-25 | 2004-03-04 | British Telecommunications P.L.C. | Spracherkennung |
US5615296A (en) * | 1993-11-12 | 1997-03-25 | International Business Machines Corporation | Continuous speech recognition and voice response system and method to enable conversational dialogues with microprocessors |
JPH07210190A (ja) * | 1993-12-30 | 1995-08-11 | Internatl Business Mach Corp <Ibm> | 音声認識方法及びシステム |
US5642444A (en) * | 1994-07-28 | 1997-06-24 | Univ North Carolina | Specialized image processing system architecture and method for image data arrays |
DE4432632A1 (de) * | 1994-09-14 | 1996-03-21 | Philips Patentverwaltung | System zum Ausgeben von Sprachinformation in Rekation auf eingegebene Sprachsignale |
US5615301A (en) * | 1994-09-28 | 1997-03-25 | Rivers; W. L. | Automated language translation system |
DE19508711A1 (de) * | 1995-03-10 | 1996-09-12 | Siemens Ag | Verfahren zur Erkennung einer Signalpause zwischen zwei Mustern, welche in einem zeitvarianten Meßsignal vorhanden sind |
EP0838073B1 (de) * | 1995-05-26 | 2002-07-24 | Speechworks International, Inc. | Verfahren und vorrichtung zur dynamischen anpassung eines spracherkennungssystems mit grossem wortschatz und zur verwendung von einschränkungen aus einer datenbank in einem spracherkennungssystem mit grossem wortschatz |
US5806034A (en) * | 1995-08-02 | 1998-09-08 | Itt Corporation | Speaker independent speech recognition method utilizing multiple training iterations |
US5825977A (en) * | 1995-09-08 | 1998-10-20 | Morin; Philippe R. | Word hypothesizer based on reliably detected phoneme similarity regions |
US5684925A (en) * | 1995-09-08 | 1997-11-04 | Matsushita Electric Industrial Co., Ltd. | Speech representation by feature-based word prototypes comprising phoneme targets having reliable high similarity |
US5822728A (en) * | 1995-09-08 | 1998-10-13 | Matsushita Electric Industrial Co., Ltd. | Multistage word recognizer based on reliably detected phoneme similarity regions |
DE19624988A1 (de) * | 1996-06-22 | 1998-01-02 | Peter Dr Toma | Verfahren zur automatischen Erkennung eines gesprochenen Textes |
US5842161A (en) * | 1996-06-25 | 1998-11-24 | Lucent Technologies Inc. | Telecommunications instrument employing variable criteria speech recognition |
DE19633693C1 (de) * | 1996-08-21 | 1997-11-20 | Max Planck Gesellschaft | Verfahren und Vorrichtung zur Erfassung von Targetmustern in einer Textur |
WO1998014934A1 (en) * | 1996-10-02 | 1998-04-09 | Sri International | Method and system for automatic text-independent grading of pronunciation for language instruction |
US5995928A (en) * | 1996-10-02 | 1999-11-30 | Speechworks International, Inc. | Method and apparatus for continuous spelling speech recognition with early identification |
US5903675A (en) * | 1996-12-20 | 1999-05-11 | Apple Computer, Inc. | System and method for compressing data using a dynamically changing compression window |
US6122613A (en) * | 1997-01-30 | 2000-09-19 | Dragon Systems, Inc. | Speech recognition using multiple recognizers (selectively) applied to the same input sample |
US6092044A (en) * | 1997-03-28 | 2000-07-18 | Dragon Systems, Inc. | Pronunciation generation in speech recognition |
US6076057A (en) * | 1997-05-21 | 2000-06-13 | At&T Corp | Unsupervised HMM adaptation based on speech-silence discrimination |
US6011854A (en) * | 1997-09-18 | 2000-01-04 | Sony Corporation | Automatic recognition of audio information in a broadcast program |
US6243678B1 (en) * | 1998-04-07 | 2001-06-05 | Lucent Technologies Inc. | Method and system for dynamic speech recognition using free-phone scoring |
US6393399B1 (en) | 1998-09-30 | 2002-05-21 | Scansoft, Inc. | Compound word recognition |
US6711536B2 (en) * | 1998-10-20 | 2004-03-23 | Canon Kabushiki Kaisha | Speech processing apparatus and method |
DE19854341A1 (de) * | 1998-11-25 | 2000-06-08 | Alcatel Sa | Verfahren und Schaltungsanordnung zur Sprachpegelmessung in einem Sprachsignalverarbeitungssystem |
JP3252815B2 (ja) * | 1998-12-04 | 2002-02-04 | 日本電気株式会社 | 連続音声認識装置及び方法 |
US20020069064A1 (en) * | 1999-02-08 | 2002-06-06 | Dejaco Andrew P. | Method and apparatus for testing user interface integrity of speech-enabled devices |
US6233557B1 (en) | 1999-02-23 | 2001-05-15 | Motorola, Inc. | Method of selectively assigning a penalty to a probability associated with a voice recognition system |
US6327564B1 (en) * | 1999-03-05 | 2001-12-04 | Matsushita Electric Corporation Of America | Speech detection using stochastic confidence measures on the frequency spectrum |
US7058573B1 (en) * | 1999-04-20 | 2006-06-06 | Nuance Communications Inc. | Speech recognition system to selectively utilize different speech recognition techniques over multiple speech recognition passes |
US7283964B1 (en) | 1999-05-21 | 2007-10-16 | Winbond Electronics Corporation | Method and apparatus for voice controlled devices with improved phrase storage, use, conversion, transfer, and recognition |
US7120582B1 (en) | 1999-09-07 | 2006-10-10 | Dragon Systems, Inc. | Expanding an effective vocabulary of a speech recognition system |
US7263484B1 (en) | 2000-03-04 | 2007-08-28 | Georgia Tech Research Corporation | Phonetic searching |
US6901362B1 (en) * | 2000-04-19 | 2005-05-31 | Microsoft Corporation | Audio segmentation and classification |
US7080011B2 (en) * | 2000-08-04 | 2006-07-18 | International Business Machines Corporation | Speech label accelerators and techniques for using same |
JP2002149187A (ja) * | 2000-11-07 | 2002-05-24 | Sony Corp | 音声認識装置および音声認識方法、並びに記録媒体 |
US7133827B1 (en) | 2002-02-06 | 2006-11-07 | Voice Signal Technologies, Inc. | Training speech recognition word models from word samples synthesized by Monte Carlo techniques |
EP1361740A1 (de) * | 2002-05-08 | 2003-11-12 | Sap Ag | Verfahren und System zur Verarbeitung von Sprachinformationen eines Dialogs |
EP1363271A1 (de) | 2002-05-08 | 2003-11-19 | Sap Ag | Verfahren und System zur Verarbeitung und Speicherung von Sprachinformationen eines Dialogs |
DE10220524B4 (de) | 2002-05-08 | 2006-08-10 | Sap Ag | Verfahren und System zur Verarbeitung von Sprachdaten und zur Erkennung einer Sprache |
US7340392B2 (en) * | 2002-06-06 | 2008-03-04 | International Business Machines Corporation | Multiple sound fragments processing and load balancing |
US7788097B2 (en) * | 2002-06-06 | 2010-08-31 | Nuance Communications, Inc. | Multiple sound fragments processing and load balancing |
JP4301102B2 (ja) * | 2004-07-22 | 2009-07-22 | ソニー株式会社 | 音声処理装置および音声処理方法、プログラム、並びに記録媒体 |
KR100744288B1 (ko) * | 2005-12-28 | 2007-07-30 | 삼성전자주식회사 | 음성 신호에서 음소를 분절하는 방법 및 그 시스템 |
US9020816B2 (en) * | 2008-08-14 | 2015-04-28 | 21Ct, Inc. | Hidden markov model for speech processing with training method |
EP2609587B1 (de) * | 2010-08-24 | 2015-04-01 | Veovox SA | System und verfahren zur erkennung eines sprachbefehls eines benutzers in lauten umgebungen |
US9711133B2 (en) * | 2014-07-29 | 2017-07-18 | Yamaha Corporation | Estimation of target character train |
US9462456B2 (en) | 2014-11-19 | 2016-10-04 | Qualcomm Incorporated | Method and apparatus for creating a time-sensitive grammar |
US10121471B2 (en) * | 2015-06-29 | 2018-11-06 | Amazon Technologies, Inc. | Language model speech endpointing |
JP2018170539A (ja) * | 2017-03-29 | 2018-11-01 | ソニー株式会社 | スピーカ装置、オーディオデータ供給装置及びオーディオデータ再生システム |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2347738A1 (de) * | 1972-09-21 | 1974-03-28 | Threshold Tech | Spracherkennungsverfahren und vorrichtung zur durchfuehrung desselben |
DE2659096A1 (de) * | 1975-12-29 | 1977-07-07 | Dialog Syst | Verfahren und vorrichtung zur spracherkennung |
DE2825186A1 (de) * | 1978-04-27 | 1979-11-08 | Dialog Syst | Verfahren zur verringerung der falschanzeige in spracherkennungsverfahren fuer kontinuierliche sprachsignale |
DE2825110A1 (de) * | 1978-04-27 | 1979-11-08 | Dialog Syst | Verfahren zur erkennung kontinuierlicher sprachsignale |
DE2825082A1 (de) * | 1978-04-27 | 1979-11-08 | Dialog Syst | Verfahren zur spracherkennung |
US4228498A (en) * | 1977-10-12 | 1980-10-14 | Dialog Systems, Inc. | Multibus processor for increasing execution speed using a pipeline effect |
DE3236000A1 (de) * | 1982-09-29 | 1984-03-29 | Blaupunkt-Werke Gmbh, 3200 Hildesheim | Verfahren zum klassifizieren von audiosignalen |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3816722A (en) * | 1970-09-29 | 1974-06-11 | Nippon Electric Co | Computer for calculating the similarity between patterns and pattern recognition system comprising the similarity computer |
US4059725A (en) * | 1975-03-12 | 1977-11-22 | Nippon Electric Company, Ltd. | Automatic continuous speech recognition system employing dynamic programming |
GB1557286A (en) * | 1975-10-31 | 1979-12-05 | Nippon Electric Co | Speech recognition |
GB1569450A (en) * | 1976-05-27 | 1980-06-18 | Nippon Electric Co | Speech recognition system |
JPS592040B2 (ja) * | 1976-08-24 | 1984-01-17 | 日本電信電話株式会社 | 音声認織装置 |
US4301329A (en) * | 1978-01-09 | 1981-11-17 | Nippon Electric Co., Ltd. | Speech analysis and synthesis apparatus |
JPS5525150A (en) * | 1978-08-10 | 1980-02-22 | Nec Corp | Pattern recognition unit |
JPS597120B2 (ja) * | 1978-11-24 | 1984-02-16 | 日本電気株式会社 | 音声分析装置 |
US4238597A (en) * | 1979-04-26 | 1980-12-09 | General Electric Company | Process for producing copolyester-carbonates |
JPS5629292A (en) * | 1979-08-17 | 1981-03-24 | Nippon Electric Co | Continuous voice identifier |
US4412098A (en) * | 1979-09-10 | 1983-10-25 | Interstate Electronics Corporation | Audio signal recognition computer |
JPS56121100A (en) * | 1980-02-29 | 1981-09-22 | Nissan Motor | Voice identification driving device |
US4336421A (en) * | 1980-04-08 | 1982-06-22 | Threshold Technology, Inc. | Apparatus and method for recognizing spoken words |
-
1981
- 1981-10-05 US US06/309,209 patent/US4481593A/en not_active Expired - Lifetime
-
1982
- 1982-09-21 GB GB08226885A patent/GB2107100B/en not_active Expired
- 1982-10-04 FR FR8216620A patent/FR2520913B1/fr not_active Expired
- 1982-10-05 DE DE3236834A patent/DE3236834C2/de not_active Expired - Fee Related
- 1982-10-05 JP JP57174095A patent/JPS58134700A/ja active Pending
- 1982-10-05 CA CA000412844A patent/CA1182223A/en not_active Expired
-
1991
- 1991-09-26 JP JP3318727A patent/JPH0816187A/ja active Pending
- 1991-09-26 JP JP3318728A patent/JPH05232984A/ja active Pending
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2347738A1 (de) * | 1972-09-21 | 1974-03-28 | Threshold Tech | Spracherkennungsverfahren und vorrichtung zur durchfuehrung desselben |
DE2659096A1 (de) * | 1975-12-29 | 1977-07-07 | Dialog Syst | Verfahren und vorrichtung zur spracherkennung |
US4038503A (en) * | 1975-12-29 | 1977-07-26 | Dialog Systems, Inc. | Speech recognition apparatus |
US4228498A (en) * | 1977-10-12 | 1980-10-14 | Dialog Systems, Inc. | Multibus processor for increasing execution speed using a pipeline effect |
DE2825186A1 (de) * | 1978-04-27 | 1979-11-08 | Dialog Syst | Verfahren zur verringerung der falschanzeige in spracherkennungsverfahren fuer kontinuierliche sprachsignale |
DE2825110A1 (de) * | 1978-04-27 | 1979-11-08 | Dialog Syst | Verfahren zur erkennung kontinuierlicher sprachsignale |
DE2825082A1 (de) * | 1978-04-27 | 1979-11-08 | Dialog Syst | Verfahren zur spracherkennung |
US4227177A (en) * | 1978-04-27 | 1980-10-07 | Dialog Systems, Inc. | Continuous speech recognition method |
US4227176A (en) * | 1978-04-27 | 1980-10-07 | Dialog Systems, Inc. | Continuous speech recognition method |
US4241329A (en) * | 1978-04-27 | 1980-12-23 | Dialog Systems, Inc. | Continuous speech recognition method for improving false alarm rates |
DE3236000A1 (de) * | 1982-09-29 | 1984-03-29 | Blaupunkt-Werke Gmbh, 3200 Hildesheim | Verfahren zum klassifizieren von audiosignalen |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4111781A1 (de) * | 1991-04-11 | 1992-10-22 | Ibm | Computersystem zur spracherkennung |
DE19581756T1 (de) * | 1994-09-30 | 1997-10-02 | Motorola Inc | Verfahren und Vorrichtung zur Erkennung einer Grenze zwischen Tönen in einer kontinuierlichen Sprache |
US7277847B2 (en) | 2001-04-18 | 2007-10-02 | Deutsche Telekom Ag | Method for determining intensity parameters of background noise in speech pauses of voice signals |
Also Published As
Publication number | Publication date |
---|---|
GB2107100B (en) | 1985-09-11 |
GB2107100A (en) | 1983-04-20 |
FR2520913A1 (fr) | 1983-08-05 |
JPH05232984A (ja) | 1993-09-10 |
JPH0816187A (ja) | 1996-01-19 |
CA1182223A (en) | 1985-02-05 |
DE3236834C2 (de) | 1995-09-28 |
JPS58134700A (ja) | 1983-08-10 |
FR2520913B1 (fr) | 1986-12-19 |
US4481593A (en) | 1984-11-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3236834C2 (de) | Verfahren und Gerät zur Sprachanalyse | |
DE3236832C2 (de) | Verfahren und Gerät zur Sprachanalyse | |
DE3236885A1 (de) | Verfahren und geraet zur sprachanalyse | |
DE69430082T2 (de) | Verfahren und Vorrichtung zur Sprachdetektion | |
DE2659096C2 (de) | ||
DE2613258C2 (de) | Schaltungsanordnung zum Erkennen von einem oder mehreren Schlüsselworten in kontinuierlicher Sprache | |
DE69421911T2 (de) | Spracherkennung mit pausedetektion | |
DE69311303T2 (de) | Sprachtrainingshilfe für kinder. | |
DE60124842T2 (de) | Rauschrobuste Mustererkennung | |
DE2825110A1 (de) | Verfahren zur erkennung kontinuierlicher sprachsignale | |
DE69121312T2 (de) | Geräuschsignalvorhersagevorrichtung | |
DE2659083C2 (de) | Verfahren und Vorrichtung zur Sprechererkennung | |
DE2825186A1 (de) | Verfahren zur verringerung der falschanzeige in spracherkennungsverfahren fuer kontinuierliche sprachsignale | |
DE2825082A1 (de) | Verfahren zur spracherkennung | |
DE602004003439T2 (de) | Rauschunterdrückung zur robusten Spracherkennung | |
DE2753277A1 (de) | Spracherkennungseinrichtung | |
DE4310190A1 (de) | Sprecher-Verifizierungssystem unter Verwendung der Abstandsmessung nächster Nachbarn | |
DE69614937T2 (de) | Verfahren und System zur Spracherkennung mit verringerter Erkennungszeit unter Berücksichtigung von Veränderungen der Hintergrundgeräusche | |
DE69920047T2 (de) | Detektion von reiner sprache in einem audio signal, mit hilfe einer detektionsgrösse (valley percentage) | |
DE69635141T2 (de) | Verfahren zur Erzeugung von Sprachmerkmalsignalen und Vorrichtung zu seiner Durchführung | |
DE602004008666T2 (de) | Verfolgen von Vokaltraktresonanzen unter Verwendung eines nichtlinearen Prädiktors | |
DE60133537T2 (de) | Automatisches umtrainieren eines spracherkennungssystems | |
DE2636032C3 (de) | Elektrische Schaltungsanordnung zum Extrahieren der Grundschwingungsperiode aus einem Sprachsignal | |
DE19581667C2 (de) | Spracherkennungssystem und Verfahren zur Spracherkennung | |
DE602005000603T2 (de) | Verfahren zur Bestimmung von Wahrscheinlichkeitsparametern für ein veränderliches Zustandsraummodell |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8110 | Request for examination paragraph 44 | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |