DE3236834C2 - Verfahren und Gerät zur Sprachanalyse - Google Patents
Verfahren und Gerät zur SprachanalyseInfo
- Publication number
- DE3236834C2 DE3236834C2 DE3236834A DE3236834A DE3236834C2 DE 3236834 C2 DE3236834 C2 DE 3236834C2 DE 3236834 A DE3236834 A DE 3236834A DE 3236834 A DE3236834 A DE 3236834A DE 3236834 C2 DE3236834 C2 DE 3236834C2
- Authority
- DE
- Germany
- Prior art keywords
- word
- audio signal
- keyword
- speaker
- generated
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 95
- 238000004458 analytical method Methods 0.000 title claims description 21
- 230000005236 sound signal Effects 0.000 claims description 42
- 230000001419 dependent effect Effects 0.000 claims description 7
- 238000011156 evaluation Methods 0.000 claims description 7
- 238000012549 training Methods 0.000 claims description 7
- 238000005259 measurement Methods 0.000 claims description 4
- 238000001228 spectrum Methods 0.000 description 81
- 230000006870 function Effects 0.000 description 43
- 230000015654 memory Effects 0.000 description 35
- 230000008569 process Effects 0.000 description 33
- 238000005311 autocorrelation function Methods 0.000 description 26
- 230000000875 corresponding effect Effects 0.000 description 21
- 238000001514 detection method Methods 0.000 description 20
- 230000007704 transition Effects 0.000 description 15
- 230000009466 transformation Effects 0.000 description 14
- 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
- 230000008901 benefit Effects 0.000 description 7
- 230000004044 response Effects 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 6
- 238000009499 grossing Methods 0.000 description 6
- 239000011159 matrix material Substances 0.000 description 6
- 108091006146 Channels Proteins 0.000 description 5
- 230000015572 biosynthetic process Effects 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 5
- 238000005070 sampling Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 238000009826 distribution Methods 0.000 description 4
- 230000002093 peripheral effect Effects 0.000 description 4
- 238000009825 accumulation Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000003595 spectral effect Effects 0.000 description 3
- 238000010183 spectrum analysis Methods 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000002596 correlated effect Effects 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 108091005462 Cation channels Proteins 0.000 description 1
- 230000006978 adaptation Effects 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
- 230000009286 beneficial effect Effects 0.000 description 1
- 229910052799 carbon Inorganic materials 0.000 description 1
- 229910052729 chemical element Inorganic materials 0.000 description 1
- 210000000860 cochlear nerve Anatomy 0.000 description 1
- 230000001149 cognitive effect Effects 0.000 description 1
- 229940003372 compro Drugs 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000002934 lysing effect Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000001208 nuclear magnetic resonance pulse sequence Methods 0.000 description 1
- 238000011017 operating method Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- WIKYUJGCLQQFNW-UHFFFAOYSA-N prochlorperazine Chemical compound C1CN(C)CCN1CCCN1C2=CC(Cl)=CC=C2SC2=CC=CC=C21 WIKYUJGCLQQFNW-UHFFFAOYSA-N 0.000 description 1
- 229940036310 program Drugs 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 239000002699 waste material Substances 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
Die Erfindung betrifft ein Verfahren zur Sprachanalyse gemäß dem Oberbegriff des
Patentanspruchs 1 sowie ein Gerät zur Durch
führung dieses Verfahrens.
Insbesondere befaßt sich die Erfindung mit einem Ver
fahren und einem Gerät zum Erkennen von Schlüsselwör
tern in einem kontinuierlichen Sprachsignal im Echtzeit
betrieb.
Es sind bereits verschiedene Spracherkennungssysteme
vorgeschlagen worden, die dazu dienen, isolierte (sprachliche) Äuße
rungen zu erkennen, indem sie ein unbekanntes isolier
tes Sprachsignal, welches in geeigneter Weise aufbe
reitet 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
weise ein Teil einer Silbe, ein Wort, eine Phrase usw.
sein können. Verschiedene derartige Systeme wurden mit
begrenztem Erfolg eingesetzt, um isolierte Schlüssel
wörter zu erkennen. Dabei zeigte es sich, daß ein be
stimmtes bekanntes System, welches im wesentlichen ge
mäß den Lehren der US-PS 4 038 503 arbeitet, besonders
erfolgreich eingesetzt werden kann und geeignet ist,
ein bestimmtes Schlüsselwort aus einem begrenzten Vo
kabular von Schlüsselwörtern sicher zu erkennen,
wenn die Grenzen (Anfang und Ende) des unbe
kannten Sprachsignals durch Pausen gebildet sind, die
von dem Erkennungssystem ermittelt werden. Das System
basiert also auf der Annahme, daß das Intervall, in
dem das unbekannte Sprachsignal auftritt, wohl definiert
ist und ein einziges Schlüsselwort enthält.
Auf kontinuierliche Sprachsignale, wie z. B. in
der kontinuierlichen Umgangssprache, in der die Schlüs
selwortgrenzen nicht von vornherein bekannt bzw. mar
kiert sind, wurden ebenfalls bereits verschiedene Ver
fahren angewandt, um die ankommenden Signale in
Segmente zu unterteilen, d. h. um die Grenzen der
linguistischen Einheiten, wie z. B. der Phoneme, Silben,
Worte, Wortketten, Sätze usw. vor der Einleitung eines
Schlüsselworterkennungsprozesses zu bestimmen. Diese vor
bekannten, der kontinuierlichen Sprachauswertung dienen
den Systeme waren jedoch nur in begrenztem Maße
erfolgreich, was teilweise 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 Wort
schätze zuverlässig und mit einer niedrigen Quote von
Fehlalarmen erkannt werden. Weiterhin ist die Erken
nungsgenauigkeit sehr empfindlich für die Unterschiede
zwischen den Stimm- bzw. Sprech-Charakteristiken unter
schiedlicher Sprecher. Außerdem reagieren die bekannten
Systeme sehr empfindlich auf Verzerrungen der zu ana
lysierenden Audiosignale, wie sie typischerweise auf
treten, wenn diese Audiosignale beispielsweise über
das normale Telefonnetz übertragen werden.
Die US-PS 4 227 176, 4 241 329 und 4 227 177 be
schreiben wirtschaftlich brauchbare und wirksame Ver
fahren zur erfolgreichen Erkennung von Schlüsselwör
tern in kontinuierlichen Sprachsignalen, die im Echt
zeitbetrieb ausgewertet werden. Diese bekannten Ver
fahren 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äßt. 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
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 lokali
sieren. Unter einer kontinuierlichen Sprache mit "of
fenem 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 kon
tinuierlichen Wortkette im vorliegenden Zusammenhang
eine Anzahl von erkennbaren Elementen (ein "geschlos
senes Vokabular") zu verstehen, die durch die "Stille"
bzw. durch Pausen begrenzt sind. Insofern besteht bei
spielsweise 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 be
kannt sind. Im vorliegenden Fall sind jedoch die Gren
zen unbekannt und müssen vom Erkennungssystem selbst
erkannt werden. Außerdem sind die zu erkennenden Ele
mente nicht mehr einzelne Wortelemente, sondern
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 Spracher
kennungsgeräte automatisch so einzuüben, daß sie die
nötigen Parameter erzeugen, die eine exakte Spracher
kennung möglich machen. Außerdem sind die bisher an
gewandten 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 verbes
serte Wirksamkeit hinsichtlich der Erzeugung neuer
Erkennungsmuster erreicht werden kann.
Diese Aufgabe wird bei dem eingangs angegebenen Ver
fahren gemäß der Erfindung durch folgende Verfahrens
schritte gelöst:
Es wird mindestens ein erstes und ein zweites Zielmuster erzeugt, derart, daß jedes der beiden Zielmuster eine von zwei verschiedenen Darstellungen einer Pause in dem ankommenden Audiosignal darstellt;
das ankommende Audiosignal wird mit dem ersten und mit dem zweiten Zielmuster verglichen;
es wird ein erster und ein zweiter numerischer Meßwert erzeugt, derart, daß jeder der beiden Meßwerte das Er gebnis eines der beiden zuvor durchgeführten Vergleiche darstellt; und
auf der Basis der zuvor erzeugten Meßwerte wird eine Entscheidung getroffen, ob in dem ankommenden Audio signal eine Pause ermittelt wurde oder nicht.
Es wird mindestens ein erstes und ein zweites Zielmuster erzeugt, derart, daß jedes der beiden Zielmuster eine von zwei verschiedenen Darstellungen einer Pause in dem ankommenden Audiosignal darstellt;
das ankommende Audiosignal wird mit dem ersten und mit dem zweiten Zielmuster verglichen;
es wird ein erster und ein zweiter numerischer Meßwert erzeugt, derart, daß jeder der beiden Meßwerte das Er gebnis eines der beiden zuvor durchgeführten Vergleiche darstellt; und
auf der Basis der zuvor erzeugten Meßwerte wird eine Entscheidung getroffen, ob in dem ankommenden Audio signal eine Pause ermittelt wurde oder nicht.
Aus der DE-OS 23 47 738 ist zwar bereits ein Verfahren zum
Erkennen von Schlüsselwörtern in einem ankommenden Audiosignal
bei der Durchführung einer Sprachanalyse mit Hilfe eines
Sprachanalysegerätes, welches mindestens ein Schlüsselwort
erkennen kann, bekannt, bei dem folgende Verfahrensschritte
ausgeführt werden:
Es wird mindestens ein erstes und ein zweites Zielmuster erzeugt, derart, daß jedes der beiden Zielmuster eines von zwei verschiedenen Schlüsselwörtern in dem ankommenden Audiosignal darstellt;
das ankommende Audiosignal wird mit dem ersten und mit dem zweiten Zielmuster verglichen;
es wird ein erster und ein zweiter numerischer Meßwert (Korrelationsziffer) erzeugt, derart, daß jeder der beiden Meßwerte das Ergebnis eines der beiden zuvor durchgeführten Vergleiche darstellt, und
auf der Basis der zuvor erzeugten Meßwerte wird eine Entscheidung getroffen, ob in dem ankommenden Audiosignal ein Schlüsselwort ermittelt wurde oder nicht. Dabei findet sich jedoch in dieser Druckschrift kein Hinweis auf die Möglichkeit der Erkennung von Pausen.
Es wird mindestens ein erstes und ein zweites Zielmuster erzeugt, derart, daß jedes der beiden Zielmuster eines von zwei verschiedenen Schlüsselwörtern in dem ankommenden Audiosignal darstellt;
das ankommende Audiosignal wird mit dem ersten und mit dem zweiten Zielmuster verglichen;
es wird ein erster und ein zweiter numerischer Meßwert (Korrelationsziffer) erzeugt, derart, daß jeder der beiden Meßwerte das Ergebnis eines der beiden zuvor durchgeführten Vergleiche darstellt, und
auf der Basis der zuvor erzeugten Meßwerte wird eine Entscheidung getroffen, ob in dem ankommenden Audiosignal ein Schlüsselwort ermittelt wurde oder nicht. Dabei findet sich jedoch in dieser Druckschrift kein Hinweis auf die Möglichkeit der Erkennung von Pausen.
Was das Gerät anbelangt, so wird die gestellte Aufgabe
erfindungsgemäß durch ein Gerät mit den Merkmalen der Ansprüche
6 bzw. 8 gelöst.
Gemäß der Erfindung wird ein Verfahren bzw. ein Gerät
angegeben, mit dem es auf effektive Weise möglich ist, in einem
unbekannten Audioeingangssignal Pausen zu erkennen, wobei der
Erkennungsprozeß unter Verwendung einer grammatika
lischen Syntax durchgeführt wird und wobei der Erken
nungsprozeß so ausgelegt ist, daß für verschiedene
Sprecher und damit für verschiedene Stimm- bzw. Sprach
charakteristiken gleichmäßig gute Ergebnisse erhalten
werden, die zuverlässig sind und zu einer geringeren
Anzahl von Fehlalarmen führen, wobei außerdem im Echt
zeitbetrieb gearbeitet werden kann.
Insbesondere befaßt 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 ver
schiedene Darstellungen einer Pause in dem ankommen
den Audiosignal beinhalten, wobei das ankommende Audio
signal mit der ersten und der zweiten Zielschablone
verglichen wird, um als Ergebnis des Vergleichs ein
numerisches Maß bzw. einen numerischen Meßwert zu
erzeugen und dann zumindest auf der Basis dieser Meß
werte zu entscheiden, ob eine Stille bzw. Pause ent
deckt wurde.
In einer anderen Ausgestaltung betrifft die Erfindung
ein Verfahren zur Erkennung von Pausen in einem Audio
signal, wobei folgende Schritte ausgeführt werden:
es wird ein numerischer Meßwert für die Wahrscheinlichkeit erzeugt, daß der im Augenblick ankommende Teil des Audiosignals einem Bezugsmuster entspricht, welches eine Pause darstellt; der numeri sche Meßwert wird dann gemäß einer Syntax-abhängigen Entschei dung wirksam geändert, wobei die Syntax-abhängige Entscheidung die Erkennung eines unmittelbar vorausgehenden Teils des Audiosignals gemäß einer grammatikalischen Syntax darstellt, aus dem wirksam geänderten Meßwert wird dann bestimmt, ob der vorliegende Signalteil einer Pause entspricht.
es wird ein numerischer Meßwert für die Wahrscheinlichkeit erzeugt, daß der im Augenblick ankommende Teil des Audiosignals einem Bezugsmuster entspricht, welches eine Pause darstellt; der numeri sche Meßwert wird dann gemäß einer Syntax-abhängigen Entschei dung wirksam geändert, wobei die Syntax-abhängige Entscheidung die Erkennung eines unmittelbar vorausgehenden Teils des Audiosignals gemäß einer grammatikalischen Syntax darstellt, aus dem wirksam geänderten Meßwert wird dann bestimmt, ob der vorliegende Signalteil einer Pause entspricht.
In weiterer Ausgestaltung befaßt sich die vorliegende
Erfindung mit einem Verfahren zur Bildung von Bezugs
mustern, die bekannte Schlüsselworte darstellen und
auf einen bestimmten Sprecher zugeschnitten sind. Da
bei werden sprecherunabhängige Bezugsmuster bereitge
stellt, welche die Schlüsselwörter darstellen. Außer
dem werden unter Verwendung dieser sprecherunabhängi
gen 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 befaßt sich auch mit einem Verfahren
zur Bildung von Bezugsmustern, die ein zuvor unbe
kanntes Schlüsselwort darstellen, wobei man zunächst
sprecherunabhängige Bezugsmuster zur Verfügung stellt,
welche Schlüsselworten entsprechen, die den Analysier
einrichtungen bereits zuvor bekannt waren, woraufhin
man die Grenzen des unbekannten Schlüsselwortes unter
Verwendung der sprecherunabhängigen Bezugsmuster be
stimmt. Anschließend übt man die Sprachanalysierein
richtungen unter Verwendung der zuvor von diesen für
das zunächst unbekannte Schlüsselwort bestimmten Gren
zen derart ein, daß statistische Daten erzeugt werden
können, die das zuvor unbekannte Schlüsselwort be
schreiben.
In weiterer Ausgestaltung befaßt 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 bereitge
stellt, wobei man eine dynamische Programmierung an
wendet. Anschließend wird die grammatikalische Syntax
dazu verwendet, die Werte zu bestimmen, für die ein
Fortschreiten im Erkennungsprozeß 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.
Die Erfindung wird nachstehend anhand von Zeichnungen noch
näher erläutert.
Es zeigen:
Fig. 1 ein Flußdiagramm, welches einen allge
meinen Überblick über die erfindungs
gemäß auszuführende Schrittfolge ver
mitteln soll;
Fig. 1A ein elektrisches Blockschaltbild einer
bevorzugten Ausführungsform eines Ge
räts zur Durchführung des erfindungs
gemäßen Verfahrens;
Fig. 2 ein schematisches Blockschaltbild eines
elektronischen Geräts zur Durchführung
gewisser vorbereitender Operationen für
das Verfahren gemäß Fig. 1;
Fig. 3 ein Flußdiagramm in Form eines Digital-
Rechnerprogramms für eine Reihe von
Schritten des Verfahrens gemäß Fig. 1;
Fig. 4 eine grafische Darstellung des erfin
dungsgemäßen Verfahrens zur gegenseiti
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 er
findungsgemäßen Verfahrens;
Fig. 6 ein elektrisches schematisches Block
schaltbild einer Schaltung zum Sub
trahieren und zur Absolutwertbildung
für ein bevorzugtes Gerät zur Durch
führung des erfindungsgemäßen Ver
fahrens;
Fig. 7 ein elektrisches Schaltbild einer lo
gischen Schaltung zum Erfassen eines
Übertrags für eine bevorzugte Aus
führungsform eines Geräts zur Durch
fü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 Durch
führung des erfindungsgemäßen Verfahrens;
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 Er
läuterung einer Schaltung für eine se
quentielle Decodierung und Musteraus
richtung für eine bevorzugte Ausführungs
form eines Geräts zur Durchführung des
erfindungsgemäßen Verfahren.
Im übrigen sind entsprechende Elemente in den ver
schiedenen Figuren jeweils mit den gleichen Bezugs
zeichen bezeichnet.
Bei einem 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 - umfaßt als auch einen
Mehrzweck-Digitalrechner, der erfindungsgemäß derart
programmiert ist, daß mit seiner Hilfe weitere Schrit
te zur Datenverarbeitung und zur numerischen Auswer
tung 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 Kosten
aufwand erfolgen kann. Dabei ist jedoch zu beachten,
daß einige der Aufgaben, die beim betrachteten System
von den Hardware-Kreisen ausgeführt werden, auch mit
tels geeigneter Programme (Software) gelöst werden
könnten, und daß einige der Aufgaben, die beim be
trachteten 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 Einzelpro
bleme sowohl die Hardware-Lösungen als auch die
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 Wortket
ten in kontinuierlichen Sprachsignalen auch dann er
kannt werden können, wenn diese Signale beispielswei
se aufgrund ihrer Übertragung über eine Telefonlei
tung verzerrt sind. Folglich können die Sprachein
gangssignale am Eingang 10 in Fig. 1 als Sprachsignale
betrachtet werden, die ausgehend von einem Kohlemikro
fon über eine Telefonleitung beliebiger Länge und/oder
mit einer Anzahl von Schaltstellen zu einem Empfänger
übertragen wurden. Eine typische Anwendung der Erfin
dung besteht in der Erkennung kontinuierlicher Wort
ketten in hörfrequenten Daten, die über das Telefon
system von einer unbekannten Quelle, insbesondere von einem unbekannten Sprecher, empfangen wurden.
Andererseits kann das Eingangssignal auch ein belie
biges Audio-Datensignal sein, beispielsweise ein
Spracheingangssignal, welches über den Rundfunk, bei
spielsweise von einer privaten Sendestation, über
tragen 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
oder andere erkennbare Einzelheiten (Hinweise) ent
halten. 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 Be
zeichnungen zu betrachten sind. Dies ist eine bequeme
Möglichkeit, eine erkennbare Folge von Audiosignalen
oder von dieser Folge entsprechenden Signalen zu bezeichnen,
welche zusammengefaßt die Wortketten ergeben, die mit
Verfahren und Gerät gemäß der Erfindung erfaßt 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 Sprachsignal bzw. das analoge Audiosignal vom Ein
gang 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 Abtast
frequenz von 8000 Abtastvorgängen pro Sekunde. (Bei
anderen Ausführungsbeispielen wird mit anderen Ab
tastfrequenzen gearbeitet, beispielsweise mit einer
Frequenz von 16 kHz, wenn ein besonders hochwertiges
Digitalsignal erhalten werden soll.) Das Ausgangs
signal des A/D-Wandlers 13 wird über Leitungen 15
dem Eingang eines Autokorrelationswandlers 17 bzw.
einer Korrelationsschaltung zugeführt, wo die ankom
menden digitalen Eingangssignale, mit einer Frequenz
von 100 Hz zu einer Kurzzeit-Autokorrelationsfunktion
aufbereitet und an Ausgangsleitungen 19 gelegt werden.
Jede Autokorrelationsfunktion umfaßt dabei 32 Werte
bzw. Kanäle, wobei jeder Wert mit einer Auflösung von
30 Bit berechnet wird. Die Autokorrelationsschaltung
wird nachstehend in Verbindung mit Fig. 2 noch näher
erläutert.
Die auf den Ausgangsleitungen 19 anstehenden Autokorrelations
funktionen werden in einer Schaltung 21 einer Fourier-
Transformation unterworfen, um auf den Ausgangslei
tungen 23 der Schaltung 21 innerhalb vorgegebener
Zeitfenster liegende Kurzzeit-Leistungsspektren zu
erhalten. Die Leistungsspektren werden dabei mit der
selben Frequenz erzeugt, mit der die Autokorrelations
funktionen 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 Bit-Signal dargestellt wird. Jeder der
31 Werte des Kurzzeit-Spektrums entspricht dabei dem
Signalpegel innerhalb eines bestimmten Frequenzbandes.
Die Schaltung 21 zur Durchführung der Fourier-Trans
formation umfaßt vorzugsweise Schaltkreise zur Er
zeugung einer Zeitfensterfunktion, insbesondere zur
Erzeugung der Hamming-Funktion, wodurch das
Übersprechen aus benachbarten Frequenzbändern reduziert
wird.
Beim betrachteten ersten Ausführungsbeispiel erfolgen
die Fourier-Transformation sowie die weiteren Schrit
te der Datenverarbeitung vorzugsweise unter Steuerung
durch einen Mehrzweck-Digitalrechner, der in geeigneter
Weise programmiert ist und mit einem peripheren Feld- bzw.
Matrix-Prozessor arbeitet, um die Rechenoperationen
zu beschleunigen, die beim erfindungsgemäßen Verfahren
wiederholt erforderlich sind. Speziell wurde ein Rech
ner des Typs PDP-11 der Firma Digital Equipment Cor
poration, 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 an
hand von Fig. 3 zu erläuternde Programmierung ist
speziell auf die Möglichkeiten und die charakteristi
schen Eigenschaften der vor stehend angesprochenen
handelsüblichen digitalen Prozessoreinheiten zuge
schnitten.
Die den einzelnen Zeitfenstern zugeordneten Kurzzeit-
Leistungsspektren werden in einer Schaltung 25 einer Frequenzgangentzerrung
unterworfen, und zwar in Abhängigkeit von den Ampli
tuden-Spitzenwerten, die in den einzelnen Frequenz
bändern bzw. Kanälen auftreten, wie dies nachstehend
noch näher erläutert wird. Die hinsichtlich des Fre
quenzgangs entzerrten Spektren werden mit einer Fre
quenz von 100 Hz erzeugt und über Leitungen 26
übertragen, wobei jedes Spektrum durch 31 numerische
Werte 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 hinge
wiesen werden, daß die Transformation die Genauigkeit
verbessert, mit der das unbekannte eingangsseitige
Audiosignal an Zielmusterschablonen in einem Bezugs
vokabular angepaßt werden kann. Bei Ausführungsbei
spiel 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 Bezugsmustern verglichen werden, wie
dies nachstehend noch im einzelnen erläutert wird.
Die Bezugsmuster stellen gemäß Block 42 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 Ent
scheidung hinsichtlich der Identität der gerade
empfangenen Wortkette (Ausgang 44). Die Kandidaten-
Worte werden folglich entsprechend der höchsten, beim
Vergleich ermittelten Übereinstimmung ausgewählt. Beim
Ausführungsbeispiel dient der Auswahlprozeß dabei da
zu, die Wahrscheinlichkeit, daß ein Schlüsselwort ver
loren geht (oder falsch erkannt wird) auf ein Minimum
zu reduzieren.
Fig. 1A zeigt ein Spracherkennungssystem 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 spe
ziell entwickelte diskrete Schaltung sein kann. Beim
Ausführungsbeispiel empfängt der Steuerprozessor 45
die vorverarbeiteten Audiodaten von einem Vorprozessor
46, der nachstehend anhand von Fig. 2 noch näher er
läutert wird. Der Vorprozessor 46 empfängt die analogen
Audio-Eingangssignale über eine Leitung 47 und liefert
die bearbeiteten Daten über eine Schnittstelle 48 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 an
kommenden Daten im Echtzeit-Betrieb zu verarbeiten.
Daher können mit Vorteil verschiedene spezielle dis
krete Schaltungen verwendet werden, um die Arbeits
geschwindigkeit des Steuerprozessors 45 zu erhöhen.
Insbesondere führt ein sogenannter Vektorprozessor 48a,
wie er beispielsweise in der US-PS 4 228 498 beschrie
ben ist, durch Ausnutzung des sogenannten 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 Er
findung als Steuerprozessor ein Digitalrechner ver
wendet wird, erfolgt beim abgewandelten Ausführungs
beispiel gemäß Fig. 10 ein beträchtlicher Teil der
Datenaufbereitung außerhalb des Steuerprozessors 45
in einem sequentiell arbeitenden Decodierprozessor 49.
Die Struktur dieses Prozessors wird in Verbindung mit
Fig. 10 noch näher erläutert. Insgesamt hat das be
trachtete System zur Spracherkennung sowohl hinsicht
lich der Arbeitsgeschwindigkeit als auch hinsichtlich
der Möglichkeit, die einzelnen Kreise hardware-mäßig
oder software-mäßig zu realisieren oder mit Hardware/Soft
ware-Kombinationen zu arbeiten, eine hohe Flexi
bilität.
Bei dem System gemäß Fig. 2 werden die Autokorrelations
operationen, mit denen zwangsläufig eine Mittelwertbildung
verbunden ist, digital auf der Basis der digitalen Da
ten ausgeführt, die von dem A/D-Wandler 13 angeliefert
werden, der die ankommenden analogen Audiodaten am
Eingang 10, im allgemeinen ein Sprachsignal, auf
bereitet. Der A/D-Wandler 13 liefert ein digitales Ein
gangssignal über die Leitungen 15. Dabei erfolgt die
zeitliche Steuerung der A/D-Umsetzung und der Ausfüh
rung der Autokorrelationsfunktionen durch einen Takt
oszillator 51, dessen Grundfrequenz von 256 kHz mit
Hilfe eines Frequenzteilers 52 heruntergeteilt wird,
um eine Impulsfolge mit einer Impulsfolgefrequenz von
8 kHz zu erhalten. Diese Impulsfolge steuert den
A/D-Wandler 13 und ein Latch-Register 53, in dem die
12 Bit-Worte der letzten Umsetzung jeweils solange ge
speichert sind, bis die nächste Umsetzung beendet ist.
Die Autokorrelationsprodukte werden mit Hilfe eines
digitalen Multiplizierers 56 erzeugt, der die im Latch-Re
gister 53 gespeicherte Zahl mit dem Ausgang eines
32 Wort-Schieberegisters 58 multipliziert. Das 32-Wort-Schiebe
register 58 arbeitet dabei als umlaufendes Schiebe
register und wird mit der hohen Grundfrequenz (256 kHz)
fortgeschaltet, so daß pro A/D-Umsetzung ein komplet
ter Umlauf der Daten des Schieberegisters erfolgt.
Einmal während jedes vollständigen Umlaufs übernimmt
das 32-Wort-Schieberegister 58 die in dem Latch-Register 53 ge
speicherten Daten. Ein erster Eingang des digitalen
Multiplizierers 56 ist direkt mit Latch-Register 53
verbunden, während der andere Eingang des Multipli
zierers (abgesehen von der nachstehend angesprochenen
Ausnahme) das jeweilige Ausgangssignal des Schiebe
registers über einen Multiplexer 59 empfängt. Die
Multiplikationen werden mit der höheren Taktfrequenz
ausgeführt.
Jeder Digitalwert vom Ausgang des A/D-Wandlers 13 wird
also mit jedem der 31 zuvor erzeugten Wandlerausgangs
signale multipliziert. Man sieht, daß die auf diese
Weise erzeugten Signale einer Multiplikation des Ein
gangssignals 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 Latch-Re
gisters 53 immer dann mit sich selbst multipliziert
wird, wenn ein neuer Wert in das Schieberegister ein
gespeichert wird. Diese Zeitfunktion wird gemäß Block
60 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 wird der Eingang A auf
den Ausgang durchgeschaltet - seinen Eingang B auf
seinen Ausgang zum digitalen Multiplizierer 56 durchschaltet.
Man sieht außerdem, daß die aufgrund einer einzigen
A/D-Umsetzung durch Multiplikation mit ihren 31 Vor
gä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 weite
res 32 Wort-Schieberegister 63 derart mit einem Addie
rer 65 verbunden wird, daß ein Satz von 32 akkumulierten Werten
gebildet wird. Jedes Wort kann folglich umlaufen,
nachdem es zu dem entsprechenden Schritt vom Ausgang
des digitalen Multiplizierers 56 addiert ist. Die Umlaufschlei
fe enthält dabei ein Gatter 67, welches von einem
durch N teilenden Teiler 69 gesteuert wird, der sei
nerseits mit dem niedrigeren Taktsignal (8 kHz) ge
steuert wird. Der Teiler 69 teilt die niedrigere Takt
frequenz durch einen Faktor N, der die Anzahl der in
jedem Augenblick für den Additionsvorgang vorgesehe
nen Autokorrelationsfunktionen bestimmt, so daß eine
Mittelwertbildung erfolgt, ehe der Inhalt des 32-Wort-Schiebe
registers 63 ausgelesen wird.
Beim Ausführungsbeispiel werden vor dem Auslesen je
weils 80 Proben addiert. Mit anderen Worten gilt also
für den Divisor des Teilers 69 der Wert N = 80. Nach
dem 80 umgesetzte Proben korreliert und addiert sind,
triggert der Teiler 69 eine Rechner-Interrupt-Schaltung
71 über eine Leitung 72. Zu diesem Zeitpunkt werden
die Inhalte des 32-Wort-Schieberegisters 63 nacheinander
über eine geeignete Schnittstelle 73 in den Rechner
speicher eingelesen, wobei die 32 aufeinanderfolgen
den Worte aus dem Register dem Rechner über die Schnitt
stelle 73 in geordneter Folge zugeführt werden. Man
sieht, daß diese Datenübertragung von einer Peripherie
einheit, dem Autokorrelations-Vorprozessor, zum Rechner
typischerweise nach dem Verfahren des direkten Spei
cherzugriffs (DMA-Verfahren) erfolgen kann. Unter der
Voraussetzung, daß eine Mittelwertbildung über 80 Pro
ben erfolgt und daß die ursprüngliche Abtastfrequenz
bei 8 kHz liegt wird deutlich, daß in den Rechner
pro Sekunde 100 gemittelte Autokorrelationsfunktionen
eingespeichert werden.
Während der Schieberegisterinhalt in den Rechner aus
gelesen wird, ist das Gatter 67 gesperrt, so daß der
Registerinhalt für jedes Wort wirksam auf Null zurück
gesetzt wird, damit der Addier- bzw. Akkumuliervorgang
erneut beginnen kann.
Die Funktion des Systems gemäß Fig. 2 läßt sich
mathematisch wie folgt beschreiben:
Wenn man annimmt, daß der A/D-Wandler 13 eine zeitli che Folge von Signalen S (t) erzeugt, wobei t = 0,T₀, 2T₀, . . . und wobei T₀ = Abtastintervall (beim Ausfüh rungsbeispiel Sekunden), dann kann die digi tale Korrelationsschaltung gemäß Fig. 2 unter Ver nachlässigung der undefinierten Startbedingungen als eine Schaltung zum Berechnen der folgenden Auto korrelationsfunktion angesehen werden:
Wenn man annimmt, daß der A/D-Wandler 13 eine zeitli che Folge von Signalen S (t) erzeugt, wobei t = 0,T₀, 2T₀, . . . und wobei T₀ = Abtastintervall (beim Ausfüh rungsbeispiel Sekunden), dann kann die digi tale Korrelationsschaltung gemäß Fig. 2 unter Ver nachlässigung der undefinierten Startbedingungen als eine Schaltung zum Berechnen der folgenden Auto korrelationsfunktion angesehen werden:
wobei j = 0, 1, 2 . . . , 31; t = 80 T₀, 160 T₀, . . . ,
80n T₀, . . . Diese Autokorrelationsfunktionen ent
sprechen den korrelierten Ausgangssignalen auf den
Ausgangs-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 Geschwindig
keit, bei der eine vollständige Autokorrelationsfunktion
alle 10 ms übertragen wird. Dies entspricht dem Block 77
in Fig. 3. Jeder Datenblock stellt die Autokorrelations
funktion dar, die für ein entsprechendes Zeit-Unter
intervall erhalten wurde. Wie oben ausgeführt, werden
die betrachteten Autokorrelationsfunktionen dem Rechner
mit einer Frequenz von hundert 32 Wort-Funktionen pro
Sekunde zugeführt.
Beim ersten Ausführungsbeispiel erfolgt die Verarbei
tung der Autokorrelationsfunktionsdaten mittels eines
geeignet programmierten Spezial-Digitalrechners. Das
Flußdiagramm, welches die Funktionen umfaßt, die auf
grund des Rechnerprogramms ausgeführt werden, ist in
Fig. 3 gezeigt. Dabei ist jedoch erneut darauf hinzu
weisen, daß die 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 gewis
se zeitliche Mittelung der Autokorrelationsfunktionen
durchführt, die auf der Basis der Augenblickswerte er
zeugt werden, können die gemittelten Autokorrelations
funktionen, die an den Rechner ausgelesen werden,
immer noch gewisse anomale Diskontinuitäten oder Un
gleichmäßigkeiten aufweisen, die die ordnungsgemäße
Verarbeitung und Auswertung der Proben beeinträchti
gen können. Jeder Datenblock, d. h. jede Autokorrela
tionsfunktion a(j,t) - wird folglich zunächst zeitlich
geglättet - Block 78. Das Glätten erfolgt dabei vorzugs
weise so, daß für die geglättete Autokorrelations
funktion folgende Gleichung gilt:
as(j,t) = C₀ a(j,t) + C₁ a(j,t-T) + C₂ a(j,t-2T) (2)
wobei a(j,t) = ungeglättete, eingelesene Autokorrela
tionsfunktion gemäß Gleichung (1); as(j,t) = geglättete
Autokorrelationsfunktion (Ausgang Block 78), j = Verzö
gerungszeit, t = Echtzeit und T = Zeitintervall zwi
schen zwei aufeinanderfolgenden Autokorrelations
funktionen = 0,01 s beim Ausführungsbeispiel.
Die Gewichtungsfunktionen bzw. Gewichte C₀, C₁, C₂
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′schen 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ättungs
funktion 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 Kurzzeit-Fourier-Leistungspektrums
des Sprachsignals erforderlich. Dabei wird, um
einfache Schaltungen und eine hohe Arbeitsgeschwin
digkeit zu erhalten, die Transformation der
Autokorrelationsfunktionen in den Frequenzbereich
beim Ausführungsbeispiel in einer 8 Bit-Berech
nung durchgeführt wird. Bei der oberen Grenz
frequenz 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 an
gemessen ist. Der Frequenzgang des Systems wird da
her so gewählt, daß sich ein schräger Verlauf er
gibt, gemäß welchem pro Oktave eine Anhebung um 6 dB
erreicht wird - Block 79. Diese Anhebung bei den
hohen Frequenzen wird erreicht, indem man die zweite
Ableitung der Autokorrelationsfunktion bezüglich des
Arguments derselben, d. h. die Zeitverzögerung bzw.
Nacheilung verwendet. Für die abgeleitete Funktion
gilt:
b(j,t) = -a(j+1, t) + 2a(j,t) - a(j-1,t) (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 ausge
gangen 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 Signalintervall abzuschätzen,
indem der Spitzenabsolutwert der Autokorrelation ge
funden wird. Für die geschätzte Leistung gilt:
Zur Aufbereitung der Autokorrelation für die 8 Bit-
Spektrumanalyse wird die geglättete Autokorrelations
funktion bezüglich P(t) blockweise normiert - Block 80 - und die
acht höherwertigen Bits jedes normierten Wertes werden
in die diskreten Schaltungen zur Spektrumanalyse ein
gegeben. Für die normierte (und geglättete) Autokorre
lationsfunktion 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 Autokor
relationsfunktion c(j,t) einer Kosinus-Fourier-Trans
formation 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 (πi/8000)f(j)), j = 0, 1, 2, . . . , 31 (6)
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πi/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)1/0.63Hz; (7)
j = 0, 1, 2, . . . , 31
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 subjektiven
Tonhöhen-(mel-Skala)-Frequenz-Achsenabstand für Fre
quenzen auf der Bandbreite eines typischen Kommuni
kationskanals 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 null
symmetrisch ist, nur die positiven Werte von j be
nötigt. Um jedoch zu vermeiden, daß die Nacheilung
für den Null-Wert zweimal gezählt wird, wird die Ko
sinusmatrix so gewählt, daß gilt:
S(0,j) = 126/2 = 63, für alle j (8).
Das berechnete Leistungsspektrum ist somit durch fol
gende Gleichung gegeben:
wobei das j-ste Ergebnis der Frequenz f(j) entspricht.
Man sieht weiterhin, daß jeder Punkt oder Wert in
jedem Spektrum einem zugeordneten Frequenzband ent
spricht. Während diese Fourier-Transformation voll
ständig mittels der üblichen Rechner-Hardware durch
geführt werden kann, kann der Prozeß beträchtlich
beschleunigt werden, wenn ein externer, als diskrete
Schaltung aufgebauter Multiplizierer oder ein Peri
pheriegerä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 angege
benen bevorzugten (Hamming-)Fenster-Bewichtungs-
Funktion g(i) geglättet wird. Dies entspricht dem
Block 83 innerhalb des Blockes 85, welcher der hardware
mäßigen Realisierung der Fourier-Transformation ent
spricht.
Wenn ein beträchtliches Hintergrundgeräusch vorhanden
ist, sollte in dieser Verfahrensstufe von der Funktion
S′(j,t) ein geschätztes Leistungsspektrum des Hinter
grundgeräusches abgezogen werden. Dabei sollten das
bzw. die Signalintervalle, das bzw. die zur Darstellung des Ge
räuschs gewählt wurden, keine Sprachsignale enthalten.
Die optimale Regel für die Wahl der Geräuschrahmen
intervalle ändert sich je nach Anwendung. Wenn der
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 unmittel
bar 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 ein Zeitintervall
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 "Pausen"-Musters mit mini
maler Amplitude bzw. in Wirklichkeit die Verwendung
zweier verschiedener "Pausen"-Muster zu einer deut
lich vorteilhafteren Arbeitsweise des Geräts.
Während von dem FFT-Gerät - Block 85 - nacheinander
geglättete Leistungsspektren empfangen werden, er
reicht 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 multipli
ziert wird. Jedes neu erzeugte Spitzenamplituden
spektrum p(j,t), welches einem ankommenden, unter Ver
wendung der Fensterfunktion ermittelten Leistungs
spektrum S′(j,t) entspricht und von diesem auf den
neuesten Stand gebracht wird, wobei j schrittweise
über die verschiedenen Frequenzbänder des Spektrums
fortgezählt wird, ist das Ergebnis einer Spitzener
fassungsfunktion 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 Spitzenamplitudenspektrums
normiert. Dies entspricht dem Block 87.
Beim betrachteten Ausführungsbeispiel werden die Werte
des "alten" Spitzenamplitudenspektrums p(j,t-T), die
vor dem Empfang eines neuen, unter Berücksichtigung
einer Fensterfunktion ermittelten Spektrums bestimmt
wurden, mit dem neu eintreffenden Spektrum S′(j,t)
auf einer Frequenzband- für -Frequenzband-Basis ver
glichen. 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 mul
tipliziert. Dies entspricht dem langsam abfallenden
Teil der Spitzendetektorfunktion. Wenn die Leistungs
amplitude in einem Frequenzband j des ankommenden
Spektrums S′(j,t) größer ist als die Leistungsampli
tude in dem entsprechenden Frequenzband des abgefal
lenen Spitzenamplitudenspektrums, dann wird der ab
gefallene Spitzenamplitudenspektrumwert für dieses
Frequenzband bzw. diese Frequenzbänder durch den
Spektrumwert des entsprechenden Bandes des ankommenden,
unter Verwendung der Fensterfunktion ermittelten
Spektrums ersetzt. Dies entspricht dem schnell an
steigenden Teil der Spitzendetektorfunktion. Mathe
matisch gilt für die Spitzendetektorfunktion folgende
Gleichung:
p(j,t) = max{p(j,t-T)·(1-E); P(t)·S′(j,t)}j=0, 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 normaler
weise, wenn ein höherer Wert des Spektrumeingangs
signals 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 Sprech
charakteristik zu erwarten ist. Zum Bestimmen des
Pausenintervalls kann das gleiche Verfahren wie zum Aus
wählen des Hintergrundgeräuschintervalls angewandt werden.
Die Amplituden (√der letzten 128 Signalintervalle werden
geprüft, und es wird der Minimalwert ermittelt. Wenn
die Amplitude des gerade laufenden Signalintervalls kleiner
ist als das Vierfache dieses Minimums, wird das laufen
de Intervall als Pausenintervall bestimmt, und für E 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 ge
mittelt wird, die den benachbarten Frequenzen der
neu erzeugten Spitzenspektren entsprechen, bei die
Breite des gesamten Frequenzbandes, das zur Mittelwert
bildung beiträgt, ungefähr gleich dem typischen Fre
quenzabstand zwischen den Formantfrequenzen ist.
Wie der Fachmann weiß, beträgt dieser Abstand etwa
1 kHz. Durch die Mittelwertbildung in dieser spe
ziellen Weise wird die nützliche Information in den
Spektren, d. h. die lokalen Änderungen, die Formant
resonanzen enthüllen, erhalten, während die Gesamt
anhebung bzw. die Grobanhebung im Frequenzspektrum
unterdrückt wird. Das Spitzenspektrum wird erfindungs
gemäß vorzugsweise dadurch bezüglich der Frequenz ge
glättet, daß man die Mittelwertbildung nach einer
Funktion ausführt, welche sieben benachbarte Frequenz
bänder erfaßt und für die folgende Gleichung gilt:
Bezüglich der Enden des durchgelassenen Frequenzbandes
wird davon ausgegangen, daß p(k,t) für k< 31 und k < 0
O ist. Die normierende Einhüllende h(j) berücksichtigt
die Anzahl der tatsächlich summierten gültigen Daten
elemente. 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ät
tete Spitzenamplitudenspektrum e(j/t) wird dann ver
wendet, um das gerade empfangene Leistungsspektrum
S′(j,t) zu normieren und hinsichtlich des Frequenz
gangs zu entzerren, und zwar dadurch, daß die Ampli
tudenwerte jedes Frequenzbandes des ankommenden ge
glä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 sn(f,t) das spitzennormierte, geglättete Leistungs
spektrum ist und wobei j über die einzelnen Frequenz
bänder fortgeschaltet wird. Dies entspricht dem Block
91. Man erhält auf diese Weise eine Folge von frequenz
entzerrten und normierten Kurzzeitleistungsspektren,
welche die Änderungen im Frequenzgehalt des ankommenden
Audiosignals betonen, während alle generalisierten
Langzeitfrequenzerhöhungen oder -verzerrungen unter
drückt werden. Dieses Verfahren der Frequenzkompensation
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 durch
schnittliche 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 Audio
signale darstellen, immer noch Spektren sind, die
mit einer Frequenz von 100 Hz auftreten.
Die normierten und frequenzentzerrten Spektren gemäß
Block 91 werden gemäß Block 93 einer Amplituden
transformation unterworfen, welche eine nicht-lineare
Maßstabsänderung der Spektrumamplitudenwerte bewirkt.
Bezeichnet man die einzelnen frequenzentzerrten und
normieren Spektren mit sn(j,t) (vgl. Gleichung 12)
in denen j den Index für die verschiedenen Frequenz
bä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:
wobei A der Mittelwert des Spektrums sn(j,t) von j=0
bis 31 ist und wie folgt definiert ist:
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₂ A (15).
Diese Maßstabsfunktion (Gleichung 13) führt zu einem
sanften Schwellwerteffekt und einem allmählichen Sätti
gungseffekt 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 Mit
telwerts annähernd linear. Für Intensitäten, die weiter
vom Mittelwert abliegen, ist die Funktion annähernd
logarithmisch und für extreme Intensitätswerte ist
die Funktion im wesentlichen konstant. In einem loga
rithmischen Maßstab ist die Funktion x(j,t) zu
Null symmetrisch und besitzt ein Schwellwert- und
Sättigungsverhalten, welches an das Ansprechverhalten
eines Gehörnervs denken läßt. 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,.
Kurzzeitleistungsspektren x(j,t) erzeugt, wobei t =
0,04 s, 0,02 s . . . und j = 0, . . . , 30 (entsprechend den
Frequenzbändern der erzeugten Leistungsspektren).
Für jedes Spektrum werden 32 Wörter vorgesehen und
der Wert von A (Gleichung 15), der Mittelwert der
Spektrumwerte, wird als das zweiunddreißigste Wort
gespeichert. Die amplitudentransformierten Kurzzeit
leistungsspektren, die nachstehend als Rahmen bezeich
net werden, werden gemäß Block 95 gespeichert, und
zwar in einem FIFO-Speicher und beim Ausführungsbei
spiel 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 Erkennungs
system 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 zeit
lich vorgegriffen oder zurückgegriffen werden kann.
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 Sekun
den gespeichert. Ein Rahmen, der in dem umlaufenden
Speicher zum Zeitpunkt t₁ eintritt, geht also verloren
bzw. wird 2,56 Sekunden später aus dem Speicher heraus
geschoben, wenn zum Zeitpunkt t₁ + 2,56 s ein neuer
Rahmen eingespeichert wird.
Die Rahmen, die den umlaufenden Speicher passieren,
werden vorzugsweise im Echtzeitbetrieb mit einem be
kannten Vokabular von Worten verglichen, um die Ein
gangsdaten in Wortgruppen, die Wortketten genannt
werden, zu bestimmen und zu identifizieren. Jedes
Wort des Vokabulars wird durch ein Referenzmuster
dargestellt, welches statistisch eine Anzahl von
verarbeiteten Leistungsspektren darstellt, die zu
mehreren, nicht überlappenden Mehrfach-Rahmen
(vorzugsweise 3 Rahmen-Zeichensatzmustern) zu
sammengestellt sind. Diese Muster werden vorzugsweise
so gewählt, daß sie signifikante akustische Eigen
heiten der Worte des Vokabulars am besten darstellen,
und sind im Block 96 gespeichert.
Die Spektren, welche die Referenzmuster bilden,
werden aus den Worten erzeugt, die in den verschie
denen Kontexten gesprochen werden, wobei dasselbe
System, welches oben beschrieben wurde, verwendet
wird, um das kontinuierliche unbekannte Sprachein
gangssignal am Eingang 10 in Fig. 1 zu verarbei
ten. Zu jedem Wort des Vokabulars gehören somit im all
gemeinen mehrere Folgen von Zeichensatzmustern P(i)₁,
P(i)₂, . . . , welche in einem Bereich der Kurzzeitleistungs
spektren eine Bezeichnung dieses i-ten Schlüsselworts
darstellen. Die Sammlung von Zeichensatzmustern für
jedes Schlüsselwort bildet die statistische Basis,
auf welcher die Zielmuster erzeugt werden.
Beim Ausführungsbeispiel können die Zeichensatzmuster
P(i)j als ein Feld mit 96 Elementen angesehen werden,
welches drei ausgewählte Rahmen umfaßt, die zu einer
Reihenfolge geordnet sind. Die das Muster bildenden
Rahmen sollten mindestens einen Abstand von 30 ms ha
ben, um eine Störkorrelation aufgrund der Zeitdomänen-
Glättung zu vermeiden. Bei anderen Ausführungsformen
der Erfindung kann eine andere Strategie der Proben
bildung für die Wahl der Rahmen verwirklicht werden.
Bevorzugt erfolgt die Auswahl der Rahmen jedoch so,
daß diese einen konstanten zeitlichen Abstand voneinan
der haben, vorzugsweise einen Abstand von 30 ms, und
daß die sich nicht überlappenden Zeichensatzmuster
über das Zeitintervall hinweg, welches das Schlüssel
wort definiert, Abstände voneinander haben. Im ein
zelnen entspricht ein erstes Zeichensatzmuster P₁
einem Teil des Schlüsselwortes in der Nähe des An
fangs desselben, während ein zweites Muster P₂ einem
zeitlich späteren Teil entspricht usw., wobei die
Muster P₁, P₂ . . . die statistische Basis für eine
Serie oder Folge von Zielmustern bilden, die die Wort
schablone bilden, mit welcher die ankommenden Audio
daten verglichen werden. Die Zielmuster P₁, P₂ . . .
umfassen jeweils statistische Daten, die aus dem ent
sprechenden Wert P(i)j unter der Annahme erzeugt werden,
daß alle P(i)j unabhängige Gauss′sche 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 entspre
chende Sammlung von Zeichensatzmusterfeldwerten um
fassen. Eine weiter verfeinerte Wahrscheinlichkeits
statistik wird weiter unten beschrieben.
Der Fachmann weiß, daß nahezu alle Worte regional und/oder
hinsichtlich ihres Kontextes mehr als eine Aus
sprache haben können und damit mehr als eine "Schreib
weise" von Zeichensatzmustern. Ein Wort des Vokabulars
mit der Musterschreibweise P₁, P₂ . . . gemäß den obigen
Ausführungen kann also tatsächlich allgemein durch
die Folge p(i)₁, p(i)₂, . . . i = 1, 2, . . . , M ausge
drückt werden, wobei jeder der p(i)j-Werte eine mög
liche alternative Beschreibung der j-ten Klasse von
Zeichensatzmustern darstellt, und wobei insgesamt
M unterschiedliche "Schreibweisen" für das Wort vor
handen sind.
Von den Target-Mustern t₁, t₂, . . . ti, . . . stellt also
jedes im ganz allgemeinen Sinne mehrere alternative
statistische "Schreibweisen" für die i-te Gruppe oder
Klasse der Zeichensatzmuster dar. Beim Ausführungs
beispiel 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 Varverarbeitung der ankommenden Audiosignale und
die Audiobildung der Referenzmuster ist nunmehr
abgeschlossen.
Ein tieferes Studium des Schlüsselworterkennungsver
fahrens von verketteten phonetischen Mustern in er
faßten Worten, wie es in den US-PS 4 241 329 und
4 227 177 beschrieben ist, hat gezeigt, daß dies ein
Sonderfall eines allgemeineren und möglicherweise über
legenen 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 be
zeichnet wird, durch die bzw. das der Prozeß der
Entscheidungsfindung hindurchlaufen kann. Der Zwi
schenraum zwischen gestrichelten senkrechten Linien 120, 122
stellt jeden der hypothetischen Zustände dar,
durch die der Entscheidungsfindungsprozeß hindurch
laufen kann, um zu bestimmen, ob ein Muster zu einem
vorliegenden bzw. im Augenblick zu prüfenden oder lau
fenden Phonem paßt oder nicht. Dieser Zwischenraum
ist in einen Bereich 124 für eine erforderliche Ver
weilzeit und einen Bereich 126 für eine möglicherweise
erforderliche bzw. optionelle Verweilzeit unterteilt.
Der Bereich für die erforderliche Verweilzeit ent
spricht der Mindestdauer des jeweils zu untersuchenden
Phonems oder Musters. Der Bereich der optionellen Ver
weilzeit 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 be
reits 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 Mindestverweilzeitinter
vall 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
(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 US-PS 4 241 329; 4 227 176 und 4 227 177
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 be
deutet, daß ein Rahmen besser zu dem nächsten Phonem
oder Muster paßt als zu dem laufenden Phonem oder
Muster. Die Trefferquote bzw. der Wahrscheinlichkeits
wert für das Gesamtwort ist jedoch die mittlere Tref
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 an
deren 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
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 US-PS 4 241 329, 4 227 176 und 4 227 177
die möglichen Pfade nicht prüft, nachdem die Entschei
dung für einen Übergang zum nächsten Muster (Phonem)
gefallen ist, kann also dort eine nicht völlig optimale
Entscheidung bezüglich der mittleren Trefferquote pro
Knoten getroffen werden.
Für die Erkennung von Wortketten wird
eine Strategie angewandt, bei der eine mittlere Tref
ferquote pro Knoten berücksichtigt wird. Wenn man
diese Strategie bei einer Wortkettenerkennung anwendet,
wie sie nachstehend noch näher beschrieben wird, er
gibt sich dabei das Problem, daß man entweder alle
partiellen Worttreffer entsprechend der Anzahl der
erfaßten Knoten normieren muß, was bezüglich des Rechenaufwands nicht
effektiv ist, oder daß man bei der Akkumulation so vor
gehen muß, daß eine ausdrückliche Normierung nicht
erforderlich ist. Eine natürliche Vorgabe besteht da
rin, 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 Ele
mentmustertreffern bzw. Wahrscheinlichkeitswerten.
Weiterhin wird die Trefferquote
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 US-PS 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
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 Wortnamen notiert
und das nächst-vorangehende Wort zur angegebenen An
fangszeit 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
Rückwärtsverfolgung zum Finden der Kette wird immer
dann ausgeführt, wenn das Pausenwort die höchste Wort
trefferzahl hat, und diese Operation endet bei oder
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 Wort
kettensuche dazu zwingt, die gesamte Spracherzeugung
während einer Äußerung in ein Wort der Kette einzu
schließen, hat sie einen Vorteil gegenüber der ein
facheren 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. Zeit
gabemuster erforderlich, da der Wortverketter für jedes
angenommene Wortende eine neue Wortanfangszeit ausgibt.
Der einfachste Wortverketter geht davon aus, daß
diese Wortanfangszeiten korrekt sind. Beim Erfassen
einer Pause geht er davon aus, daß die Kette von Wor
ten 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 Endtreffer
quote zu wählen. Da gewöhnlich ein vom Kontext abhängi
ger Übergang zwischen je zwei benachbarten Worten
der Kette vorhanden ist, kann es besonders vorteil
haft sein, dem Gerät zu gestatten, die Nachbarschaft
jedes Wortanfangs nach dem besten Ende des voraus
gehenden Wortes abzusuchen.
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 Ver
fahren erfolgt:
Für jeden 10 ms-Rahmen 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 96 Elementen zusammengefaßt werden:
Für jeden 10 ms-Rahmen 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 96 Elementen zusammengefaßt werden:
Wie oben ausgeführt, bestehen die gespeicherten Bezugs
muster aus den Mittelwerten, den Standardabweichungen
und Bereichsnormiertermen von zuvor zusammengestellten
96 Elementmustern, die zu den verschiedenen Sprech
musterklassen gehören, die erkannt werden sollen.
Der Vergleich wird aufgrund eines Wahrscheinlich
keitsmodells der Werte x(j,t) erreicht, die zu erwar
ten sind, wenn das Spracheingangssignal zu einer be
stimmten Klasse gehört. Während für das Wahrschein
lichkeitsmodell eine Gauss′sche 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
(wobei in der statistische Mittelwert ist und wobei s′
die Standardabweichung der Variablen x ist) weniger
Rechenarbeit und hat sich als nahezu ebenso brauchbar
wie die Gauss′sche Verteilung erwiesen, wenn beispiels
weise unabhängig vom Sprecher das Verfahren der iso
lierten Worterkennung angewandt werden soll, welches
in der US-PS 4 038 503 beschrieben ist. Das Maß der
Ähnlichkeit L(x|k) zwischen einem unbekannten Ein
gangsmuster x und dem k-ten gespeicherten Bezugsmuster
ist proportional zum Logarithmus der Wahrscheinlich
keit und wird in der nachfolgenden Formel mit 100
angenommen:
Zum Kombinieren der Wahrscheinlichkeitswerte L einer
Folge von Mustern mit dem Ziel der Bildung des Wahr
scheinlichkeitswertes eines gesprochenen Wortes oder
Satzes wird der Wert L(x|k) für jeden Rahmen einge
stellt, indem der beste (kleinste) Wert aller Bezugs
muster für diesen Rahmen subtrahiert wird, und zwar
gemäß folgender. Gleichung:
L′(x|k) = L(x|k) - min L(x|i) (18)
i = 1
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 Wahrschein
lichkeit verknüpft ist, so daß eine Entscheidung zugunsten
der angezeigten Folge die richtige Entscheidung wäre.
Der Vergleich der unbekannten Eingangsspektrummuster
mit den gespeicherten bekannten Mustern erfolgt
durch Berechnung der folgenden Funktion:
wobei ik = 1/s′ik) für das k-te Referenzmuster. Bei
einer normalen programmierten Berechnung würden die
folgenden Befehle ausgeführt, um die algebraische
Funktion |x-u| (gemäß Gleichung 19) zu berechnen:
- 1. berechne x-u
- 2. prüfe das Vorzeichen von x-u
- 3. wenn x-u negativ ist, bewirke einen Vorzeichen wechsel, um den Absolutwert zu erhalten
- 4. multipliziere mit
- 5. addiere das Ergebnis in einen Akkumulator.
Bei einem typischen Spracherkennungssystem mit einem
20-Wort-Vokabular würden ungefähr 222 verschiedene
Referenzmuster vorhanden sein. Die Anzahl der er
forderlichen Schritte zur Auswertung derselben
beträgt dann 5 × 96 × 222 = 106 560 Schritte, ohne die
zusätzlichen allgemeinen Programmschritte, und dies
muß in weniger als 10 ms geschehen, um mit der Echt
zeit-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 auszuwer
ten. In Anbetracht der erforderlichen Geschwindigkeit
wird erfindungsgemäß vorzugsweise ein spezieller Modul
(Wahrscheinlichkeitsfunktions-Hardware-Modul) 200 (Fig. A)
verwendet, der mit einem System-Vektorprozessor gemäß
der US-PS 4 228 498 kompatibel ist.
Bei dem speziellen Modul 200 werden die fünf oben aufge
führten Schritte gleichzeitig mit zwei Sätzen von
Argumenten , 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 Se
kunde arbeitet, ergibt sich bei dem hier verwendeten
speziellen Modul 200 für die Wahrscheinlichkeits
funktionen eine effektive Berechnungsgeschwindigkeit
von etwa 80 Millionen Befehlen pro Sekunde.
Wie Fig. 5 zeigt, arbeitet der spezielle 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
unabhängige Bereiche 202 und 204 jeweils fünf arithme
tische Schritte mit den unabhängigen Eingangsdaten
argumenten aus und die zwei Ergebnisse werden in einem
Addierer 206 zusammengefaßt, der mit deren Ausgängen
verbunden ist. Die Akkumulation der Summierungen des
Addierers 206 bilden die Summierung von 1 bis 96 ge
mäß Gleichung 19, die von der Recheneinheit des
Standard-Vektorprozessors gemäß US-PS 4 228 498 ver
arbeitet wird.
Die im Pipeline-Betrieb arbeitenden Register speichern
die Zwischendaten bei den folgenden Stufen der Daten
verarbeitung:
- 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 be
stimmt. Gemäß Fig. 6 enthält jeder der Schaltkreise
228, 230 zur Subtraktion und Absolutwert-Bildung jeweils
eine erste und eine zweite 8 Bit-Subtraktionsschaltung 232,
234, von denen die eine dazu dient, die Differenz
x-u zu bestimmen, während die anderem die Differenz u-x
bestimmt, sowie einen Multiplexer 236 zur Auswahl des
positiven Ergebnisses. Die Eingangsargumente x 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 Differenzbildung in den
8 Bit-Subtraktionsschaltungen 232 und 234 ein Übertrag
auf die neunte Bit-Stelle entstehen kann (z. B.:
(127-(-28) = 255), sind spezielle Schaltungsein
richtungen erforderlich, die der Auswertung des Über
trags dienen. (Das Vorliegen eines Übertrags wird
mittels eines Übertrag-Detektors 235 festgestellt,
an dessen Eingängen über eine Leitung 235a das Vor
zeichen von x 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 je
weils einem UND-Gatter 268 bzw. 270 mit drei Ein
gängen und einem ODER-Gatter 272. Aus der Wahrheits
tabelle gemäß Fig. 8 wird die Verknüpfung zwischen
der Übertragbedingung und den Eingangssignalen deut
lich.
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
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:
Der Multiplexer 236 wird somit so gesteuert, daß er
als 8-poliger elektrischer Schalter mit vier Schalt
stellungen arbeitet. Der "Schiebevorgang" um 1 Bit
wird kombinatorisch ausgeführt, indem man die Aus
gänge der Subtraktionsschaltungen zu den entsprechen
den Multiplexereingängen durchschaltet. Der Schiebe
vorgang entspricht einer Division durch 2.
Wenn bei einer Subtraktion ein Übertrag auftritt, ent
spricht das Ausgangssignal des Multiplexers dem durch
2 geteilten Ausgangssignal einer der Subtraktions
schaltungen. Diese Bedingung muß später bei der Be
rechnung 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-Bit bereitgehalten, um die zweiten
Multiplexer 248, 250 zu steuern, welche die Multipli
kationsprodukte eines 8 × 8 Bit-Multiplizierers 252,
254 um 1 Bit nach oben verschieben, was einer Multi
plikation mit 2 entspricht, sobald das Übertrag-Bit
gesetzt ist (logischer Pegel "1"). Die Multiplikation
wird mittels einer handelsüblichen integrierten Schal
tung mit der TRW-Baustein-Bezeichnung MPY-8-HJ durch
gefü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 8 × 8 Bit-Multiplizierer 252, 254 erzeugen somit das Produkt
von und |x-u| bei jedem Taktimpuls (wobei die zeit
liche Steuerung für den Wert von in der richtigen
Weise durch die besonderen Datenregister 256, 258 er
folgt). Die Ausgangssignale der 8 × 8 Bit-Multiplizierer 252,
254 werden gepuffert in die Pipeline-Register 224, 226 einge
speist und über Leitungen 260, 262 und einen Addierer
206 an die übrige Schaltung ausgegeben.
Derselbe spezielle Modul 200 wird auch zum Be
rechnen des inneren Produktes zweier Vektoren verwen
det, wie dies bei einer Matrix-Multiplikation erfor
derlich ist. Dies wird durch die Gatter-Schaltungen
264, 266 erreicht, die einen Parallel-Pfad zu den
Schaltungskreisen 228 bzw. 230 zur Subtraktion und zur Ab
solutwert-Bildung bilden. Beim Vorliegen der Bypass-
Bedingung werden die Daten x und von den Eingangs
leitungen direkt als Eingangssignale für die Multi
plikation in die Pipeline-Register 220, 222 einge
speist.
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 umfaßt auch Daten über die minimale und die
maximale Verweilzeit, die mit jedem Bezugsmuster ver
knüpft sind. Bei der Anwendung einer dynamischen Pro
grammierung 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.
Diese Register entsprechen den Kreisen in Fig. 4 wo
bei 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 Wahr
scheinlichkeitswert, 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 beschrie
bene Weise jeweils auf den neuesten Stand gebracht.
Das erste Register für jede Wortschablone, d. h. das
jenige 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 vo
rausgegangenen Rahmen irgendein Wort beendet wurde).
Das zweite Register einer Wortschablone enthält die
Summe eines Wertes a, nämlich des Wahrscheinlichkeits
wertes 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 an
gezeigte Wort gesprochen wird und daß es im voraus
gehenden Rahmen begonnen hat.
Während die einzelnen Register entsprechend den Ver
weilzeiten zwischen der Minimaldauer und der Maximal
dauer auf den neuesten Stand gebracht werden (das
optionelle Verweilzeitintervall), wird ein eigenes
Speicherregister dazu verwendet, die besten gespei
cherten Wahrscheinlichkeitswerte (Registerinhalt) in
den Registern zu speichern, die dem optionellen Ver
weilzeitintervall 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 Verweilzeit
intervall 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 Wahrscheinlich
keitswert des laufenden Rahmens bezüglich des erwähnten
nächsten Bezugs- oder Zielmusters addiert wird.
In Fig. 4 sollen die verschiedenen Pfeile, die zu
der ersten Position 128 des erforderlichen Verweilzeit
intervalls eines Referenzmusters führen, anzeigen, daß
der Übergang von dem optionellen Register bzw. Zustand
zum erforderlichen Verweilzeitregister bzw. -zustand
zu jedem Zeitpunkt während des optionellen Verweilzeit
intervalls oder ausgehend vom letzten Register des er
forderlichen 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 optionellen
Verweilzeitintervall den besten Wert enthält (zuzüg
lich des letzten Registers des vorausgegangenen er
forderlichen 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 Ver
weilzeiten entsprechen, zu speichern, da nach der
Theorie jeder Verweilzeitübergang, der zu einem
schlechteren Wert führte, auch weiterhin während
aller folgenden Stufen der Datenverarbeitung zur Er
zeugung schlechterer Werte führen wird.
Die Analyse wird in der beschriebenen Weise fortge
setzt, wobei alle Register sämtlicher Referenzmuster
aller Wortschablonen verwendet werden. Das letzte Re
gister bzw. die letzten Registers 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 bei
behalten, um die Dauer des bestens Wortendes in jeder
Rahmenzeit zu ermitteln. Der Zählvorgang wird bei
"eins" in dem-ersten Register des ersten Schablonen
muster des Worts eingeleitet. Für jedes zweite und fol
gende 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. bei
spielsweise die erste Position 128 des erforderlichen
Verweilzeitintervalls, ist jedoch der Zählerstand des
optionellen Verweilzeitregisters (oder des letzten
Registers für die erforderliche Verweilzeit) für das
vorausgegangene Bezugsmuster, welches der voraus
gegangenen Rahmenzeit den besten Wahrscheinlichkeits
wert 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 beschrie
bene "Rückwärtsverfolgung" für jede Rahmenzeit zu er
halten, werden die Identifizierung für das zu diesem
Zeitpunkt endende Wort mit dem höchsten Wert und des
sen Dauer in einen umlaufenden Pufferspeicher über
tragen. 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. Ein Zustands- bzw. Flag-Register wird abgefragt,
um festzustellen, ob seit der letzten Einleitung des
Erkennungsprozesses irgendein anderes Wort als das Pau
senwort den besten Wert hatte. Wenn mindestens ein
von dem Pausenwort verschiedenes Wort einen "besten
Wert" hatte (Block 103), dann wird die Wortkette in
dem umlaufenden Pufferspeicher rückwärts verfolgt
(Block 105) und die dabei erhaltene, erkannte Bot
schaft wird zu einer Anzeige oder einer anderen ge
steuerten 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 (Block 107).
Hinsichtlich der Ketten von kontinuierlich gesprochenen
Vokabularworten, die durch Pausen bzw. "Stille" be
grenzt 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 erfaßt wird, welches dann als
"Stille" eingestuft wird.
Vorzugsweise können bei einer bevorzugten Ausführungs
form 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 Kri
terien übereinstimmt, d. h. mit einem a priori vor
gegebenen Zielmuster; vielmehr kann auch mit einem
dynamisch veränderlichen Zielmuster bzw. einer dyna
misch 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
Sekunden eine minimale Amplitude besaßen, um ein frühe
res dynamisches Modell der "Stille" auf den neuesten
Stand zu bringen oder um entsprechend dem nachstehend
beschriebenen Einü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 Wahr
scheinlichkeit der Verbesserung der genauen Erfassung
der "Stille" verbessert wird.
Um die Probenelemente u und die Varianzen s′ für die
Konstruktion der Bezugs- bzw. Referenzmuster zu erhalten, wird eine
Anzahl von "Äußerungen" bzw. Sprachproben jedes Voka
bularwortes in das Spracherkennungssystem eingegeben,
und die Gesamt-Statistiken der entsprechenden vorver
arbeiteten 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 we
sentlicher 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 gezwungen,
einem bestimmten Bezugsmuster zu entsprechen. Ein
oder mehrere Drei-Rahmen-Muster, die in jedem Inter
vall beginnen, werden gebildet und entsprechend dem
mit diesem Intervall verknüpften Bezugsmuster klassi
fiziert. Anschließende Beispiele desselben Vokabular
wortes werden in ähnlicher Weise in eine gleiche An
zahl von gleichen Intervallen geteilt. Die Mittel
werte un 31237 00070 552 001000280000000200012000285913112600040 0002003236834 00004 31118d Varianzen der Elemente der Drei-Rahmen-
Muster, die aus den entsprechend geordneten Inter
vallen gewonnen werden, werden für alle verfügbaren
Proben des Vokabularwortes akkumuliert, um einen Satz
von Bezugsmustern für dieses Wort zu bilden. Die An
zahl der Intervalle (der Bezugsmuster) sollte in der
Größenordnung von zwei oder drei pro in dem Vokabular
wort enthaltenem linguistischem Phonem liegen.
Zur Gewinnung der besten Ergebnisse werden der Anfang
und das Ende jedes Vokabularwortes mittels eines Ver
fahrens markiert, bei dem die aufgezeichnete Audio
signalform 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 wer
den, 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 Erkennungsprozeß 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 ermit
telten 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
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
Bezugsmuster 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 Erkennungs
prozessor nicht korrekt erkannt werden, ignoriert
werden, da bei einer falsch erkannten Äußerung die
Wahrscheinlichkeit besteht, daß diese schlecht pla
zierte Intervallgrenzen hat. Bei Beendigung des
Trainingsdurchlaufs kann versucht werden, die zuvor
nicht bzw. falsch erkannten Phrasen mit den neuen
Referenzmustern 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
einen Aufschrieb (script) veranlaßt, 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. Ein 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 ange
strebt wird, ist es vorteilhaft, das Trainingspro
gramm mit einem Satz von zuvor bestimmten sprecher
unabhängigen Bezugsmustern für das zu erkennende
Vokabular zu beginnen. Die sprecherunabhängigen Muster
werden dabei aus Phrasen gewonnen, die für die zu
erkennenden Worte 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 sprecherunab
hä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 Erkennungs
verfahren unter Verwendung der Bezugsmuster des ersten
Durchlaufs bestimmt werden. Bei jedem Durchlauf werden
außerdem die Gesamt-Statistiken für alle Sprecher
abgeleitet.
Das System kann vorteilhafterweise auf einen bestimmten
Sprecher eingeübt werden, indem man die zuvor erzeugten
sprecherunabhängigen Muster verwendet, um in Kombina
tion mit der "Stille"-Schablone die Grenzen des spre
cherabhängigen Spracheingangssignals zu bestimmen.
Vorzugsweise wird das von einem bestimmten Sprecher
stammende Spracheingangssignal nicht in isolierter
Form geliefert, sondern als eine kontinuierliche Wort
kette. Bei Verwendung kontinuierlicher Sprachsignale
während des Einübens lassen sich nämlich genauere Er
gebnisse 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äh
rend im zweiten Durchlauf aufgrund des Erkennungspro
zesses unter Verwendung der im ersten Durchlauf ermit
telten 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
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 ei
nes relativ besseren Wertes bestimmt, welcher zum An
passen der sprecherunabhängigen Bezugsmuster an das
unbekannte Vokabularwort gebildet wird, anstatt der
Bezugsmuster an die "Stille" anzupassen. Unter Ver
wendung des so erhaltenen Ergebnisses können die Gren
zen 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 ver
wendet werden. Diese automatisierte Verfahrensführung
führt im Vergleich zu dem manuellen "Setzen" der Gren
zen eines zunächst unbekannten Wortes zu vorteilhaften
Ergebnissen.
Es sollte klar sein, daß die Erkennung der "Stille"
unter Verwendung mindestens zweier verschiedener Aus
sprachen bzw. Darstellungen für die Stille, von denen
eine vorzugsweise dynamisch bestimmt wird, in Verbin
dung mit dem Einüben des Systems auf einen neuen
Sprecher schlagende Vorteile bietet. Ebenso wichtig
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 Erkennungs
vorgang als "Signalposten" zu dienen. Vorzugsweise wird
beim bevorzugten Ausführungsbeispiel jedoch das Voka
bularwort "Stille" als einziges Steuerwort verwendet.
Die Mindest-Verweilzeit (erforderliche Verweilzeit) und
die Maximal-Verweilzeit (erforderliche plus optionelle
Verweilzeit) werden vorzugsweise während der Übungs
vorgänge bestimmt. Bei einem weiteren Ausführungs
beispiel der Erfindung wird das System unter Einsatz
mehrerer Sprecher in der vor stehend beschriebenen
Weise trainiert. Außerdem werden im Verlauf der Übungen,
wie oben beschrieben, durch den Erkennungsprozeß au
tomatisch 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 Verweil
zeiten für jedes Muster geprüft, und die minimalen
und maximalen Verweilzeiten für das Muster werden
ausgewählt. Gemäß einer weiteren Ausführungsform
der Erfindung wird ein Histogramm bzw. Säulendiagramm
der Verweilzeit erzeugt, und die minimale und die maxi
male Verweilzeit werden auf die 25% bzw. die 75%-
Linien gelegt. Auf diese Weise wird eine hohe
Erkennungsgenauigkeit erreicht, während die Häufig
keit von Fehlalarmen klein gehalten wird. Für die
minimale und die maximale Verweilzeit können auch
andere Werte gewählt werden, wobei stets ein Kompro
miß zwischen der Erkennungsgenauigkeit und der
Häufigkeit eines Fehlalarms zu treffen ist. Wenn eine
niedrige Mindestverweilzeit und eine hohe maximale
Verweilzeit gewählt werden, dann wird die höhere Er
kennungsgenauigkeit, also im allgemeinen auf Kosten
einer entsprechend größeren Häufigkeit von Fehl
alarmen, erreicht.
Die Verkettung von zwei oder mehr speziellen Wort
schablonen ist ein triviales Beispiel für eine Syntax
steuerung des Entscheidungsprozesses. Gemäß Fig. 9
umfaßt ein Syntax-Prozessor 308 zum Erfas
sen 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 Vo
kabularwort 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
am Knoten 313 zugeführt. Bei der Ermittlung einer
Pause am Ende der Äußerung gemäß der Messung der De
tektorschablone am Knoten 313 können die Marken
(label) und die Zeiten für die geäußerten Worte
alternierend von den Rückwärtsverfolgungs-Pufferspei
chern des ersten Satzes und des zweiten Satzes von
Schablonen zurückverfolgt werden. Wichtig ist, daß
die Position der Pausendetektorschablone gewährleistet,
daß zur eine Pause bzw. die Stille nach Wortfolgen
mit einer ungeraden Anzahl von Worten erfaßt werden
kann.
Etwas kompliziertere Syntax-Netzwerke können reali
siert werden, indem man jedem Syntax-Knoten 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 wer
den, indem man die Kettenlänge am Eingang zu einem zweiten
Pausenregister 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 das erste Vokabularregister 310 freigegeben
werden, wenn die Kettenlänge 0, 2 oder 4 beträgt,
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 Ein
satz von fünf vollständigen Sätzen von dynamischen
Programmierakkumulatoren erforderlich machen würden,
ermöglicht dieses Verfahren den Einsatz einer geringe
ren 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 ge
staltet, 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 Steue
rung zum Knoten 314b führt, während die Erkennung ei
ner "Nicht-Ziffer" die Steuerung zum Knoten 314h
führt (diese "Führungen" bzw. Bewegungen stellen zu
lässige bzw. "legale" Vorrückschritte durch die gram
matikalische 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 be
schriebenen 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 beschrieben wird.
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" (zusam
menklappen der Knotenstruktur) und indem man "Ver
längerungen (augments) " verwendet, um den Fluß bzw.
das Fortschreiten durch eine "gefaltete" bzw. "zusam
mengeklappte" Syntax-Knotennetzwerkstruktur (Fig. 9B)
zu steuern. Das System gemäß Fig. 9A kann also so um
gezeichnet werden, wie dies in Fig. 9B dargestellt
ist, vorausgesetzt, daß man bezüglich des Fortschrei
tens von einem Knoten zum nächsten längs der Verbin
dungsliniensegmente gewisse Einschränkungen vorsieht.
In Fig. 9B ist die zusammengeklappte und vergrößerte
Syntax-Knotenstruktur diagrammartig dargestellt. Im
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 314f), und der Knoten 314h bleibt
der Nicht-Ziffer-, Nicht-Stille-Knoten hat nunmehr eine
"Doppelfunktion". Dies bedeutet, daß der Stille-Knoten
314x entweder die Stille am Beginn einer Wortketten
erkennung oder die Stille darstellt, welche die Wort
kettenerkennung 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 Be
trieb wird der Zugang zu jedem Knoten gemäß der Zif
fernwortzählung zugelassen. Die Knoten in Fig. 9B ent
sprechen einer Berechnung, die für verschiedene Hypo
thesen 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 darge
stellt 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
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 Eingangs
bogen Daten vom Knoten 314w, wenn der den Daten zu
geordnete 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 Zif
fer als die erste Ziffer in der Äußerung oder daß ei
ne Ziffer als die vierte Ziffer in der Äußerung er
kannt ist, wobei die Entscheidung lediglich davon ab
hä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ßer
dem akzeptiert der Stille-Knoten Eingangssignale vom
Knoten 314h und von sich selbst, von dem Stille-
Knoten 314x. Der Stille-Knoten wählt dann unter die
sen akzeptablen Eingangssignalen die am besten passen
den Daten aus.
Der Effekt der "gefalteten", verlängerten bzw. ver
größerten Syntax-Struktur besteht darin, daß sowohl
der erforderliche Speicherbedarf als auch die Rechen
belastung für das Gerät gesenkt werden. Andererseits
ergibt sich aufgrund der Abweisung gewisser Daten
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 zu
gunsten eines Eingangssignals vom Knoten 314w ver
wirft, dann wird der Effekt erreicht, daß die wesent
lich weniger wahrscheinlichen Eingangsdaten vom Stille-
Knoten verworfen werden. Dies ist ein bevorzugtes Be
triebsverfahren, 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ßer
ordentlich gering. Die gefaltete bzw. zusammenge
klappte Syntax braucht kein zusätzliches Register pro
Knoten, um die Anzahl der Worte mitzuzählen, die er
kannt wurden. (Im allgemeineren Fall kann der Zähler
stand der Anzahl der in einer grammatikalischen Syn
taxkette erkannten Wörter entsprechen.) Die Vorteile
der gefalteten Syntax, nämlich der reduzierte Spei
cher- und Rechenbedarf überwiegen aber deren oben
angegebene Nachteile.
Ein weiterer zusätzlicher Vorteil der Verwendung
einer "Syntax" bei der Schlüsselworterkennung besteht
darin, daß die Entscheidung, ob die "Stille" einge
treten ist oder nicht, in der Ausnutzung der von vorn
herein 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 Wort
kette und der "Stille" exakt zu definieren. Das kriti
sche Element des erfindungsgemäßen Verfahrens ist die
Feststellung der "Stille" in Kombination mit der Wort
kette. Die "Stille" wird am Ende der Wortkette somit
zuverlässig entdeckt, da der akkumulierte Wert für
die "Stille"-Darstellungen einen "guten Wahrschein
lichkeitswert" des zuvor empfangenen Audiosprach
signals enthält, wenn er einer Erkennung der Wortkette
entspricht, welche die Erfordernisse der grammatika
lischen 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 deut
licher Vorteil, beispielsweise im Vergleich zur Erken
nung der "Stille" in Form eines Amplituden-Minimums,
unabhängig von der Sprach-Syntax.
Wie oben ausgeführt, wurde ein bevorzugtes Ausführungs
beispiel der Erfindung entwickelt, bei dem die Signal- und
Datenmanipulation, soweit sie über die Vorverarbei
tung 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 Spezial-
Vektor-Rechnerprozessor eingesetzt wurde, wie er bei
spielsweise 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 Bezugs
muster in einer vorgegebenen Folge, die vom Rechner
über die Leitungen 320 eintrifft, wird zu den vor
handenen Werten in einem der Speicher 322 bzw. 324
addiert. Diese Speicher arbeiten, wie unten beschrie
ben, alternierend unter Steuerung durch einen Syntax-
Prozessor 308, der die Werte empfängt, die dem Ende
jedes möglichen Worts entsprechen bzw. unter Steuerung
durch ein Minimalwert-Register 326, welches die Aus
gangssignale der Speicher 322 und 324 in Abhängigkeit
von dem gewählten Speicher und den nächsten Phonem
signalen 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 Ent
scheidungsmechanismus 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 ent
halten 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 322 sequentiell in einer vorgegebenen Folge
ausgelesen, die der Folge der neuen Wahrscheinlich
keitswerte entspricht, die vom Vektor-Prozessor über
die Leitung 320 angeliefert werden, und die Werte
werden dann in der nachstehend beschriebenen Weise
auf den neuesten Stand gebracht und neu in den anderen
Speicher, den Speicher 324, eingeschrieben. Während
des nächsten 10 ms-Rahmens werden die nunmehr alten
Werte aus dem Speicher 324 ausgelesen, während die
neuen Werte in den nunmehr anderen Speicher 322 einge
schrieben werden. Diese Wechselfunktion dauert unter
Steuerung durch den Syntax-Prozessor, durch das Minimal
wert-Register 326 und durch andere Steuer- und Takt
signale 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 23 verwer
tet, um die Phonemdauer aufzuzeichnen, während die Bits
24 bis 31 verwendet werden, um die Dauer der Wort
zeiten 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über
tragungsgeschwindigkeit ausgegeben und aus dem Muster
wertspeicher mit einer niedrigeren Geschwindigkeit
ausgelesen mit der die Schaltung gemäß Fig. 10 ar
beitet. Auf diese Weise werden die Ausgangssignale
des ausgewählten Speichers 322 bzw. 324 über das aus
gewählte Gatter 330 bzw. 332 an die Leitungen 334
angelegt, ohne daß zwischendurch eine Steuerung durch
den Syntax-Prozessor oder das Minimalwert-Register
erfolgen würde. Die Leitungen 334 sind mit Addierern
336, 338, 340 verbunden, die dazu dienen, den Wahr
scheinlichkeitswert 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 ei
nem der Speicher 322 bzw. 324 geliefert wird, von
dem Musterwertspeicher über die Leitungen 342 ausge
geben und zu dem alten Wahrscheinlichkeitswert ad
diert und dann in dem Speicher gespeichert, welcher
nunmehr für das Einschreiben verwendet wird. Die Aus
wahl des Speichers erfolgt dabei in Abhängigkeit vom
Signalpegel auf den Leitungen 344. Gleichzeitig wer
den die Zählerstände für die Wortdauer und die Phonem
dauer um "eins" erhöht.
Auf diese Weise werden der Zählerstand für die Wort
dauer, der Zählerstand für die Phonemdauer und die
Wahrscheinlichkeitswerte normalerweise auf den neuesten
Stand gebracht.
Die zwei Ausnahmen für die normale, vorstehend er
lä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. Statt dessen wird der Wahrscheinlichkeitswert
über die Leitung 342 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 Verweil
zeit 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 voraus
gegangenen 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 Minimal
wert wird in das Minimalwert-Register geladen, indem
man das Vorzeichen-Bit des Ausgangssignals eines Sub
traktions-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 334 beim Beginn eines neuen
Phonems ausgegeben. Dieser Ausgabeprozeß wird durch
die Verwendung eines Gatter-Elements 348 gesteuert,
welches beim Start eines neuen Phonems freigegeben
wird, wobei gleichzeitig Steuersignale an zwei Gat
ter 332 und 330 gelegt werden, durch die diese Gat
ter während des Beginns eines neuen Phonems gesperrt
werden.
Der Syntax-Prozessor 308 (vgl. Fig. 9B) wird dazu ver
wendet, 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 Wahrscheinlich
keitswert auf den neuesten Stand gebracht werden soll,
wird nicht das Ausgangssignal eines der Speicher 322,
324 verwendet. Statt dessen wird der beste Wahrschein
lichkeitswert, 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 gleich
zeitig 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-Wahr
scheinlichkeitswert addiert wird.
Bei dieser, durch Schaltungen (statt durch Programme)
realisierten Ausführungsform wird daher jedes Register,
gemäß einer Verweilzeit eines Bezugsrahmens, konti
nuierlich auf den neuesten Stand gebracht. Der Syntax-
Prozessor ist so ausgelegt, daß er, wenn die Wahr
scheinlichkeitswerte ein "Pausen"-Wort darstellen, die
erforderlichen Steuersysteme bereitstellt, um
eine Schaltung oder einen Rechner zu befähigen,
eine Rückwärtsverfolgung durchzuführen, um die er
kannten Orte zu bestimmen.
Dabei versteht es sich, daß das Verfahren und die Vor
richtung, welche vorstehend zur kontinuierlichen Sprach
erkennung bei Wortketten beschrieben wurden, auch die
spezielle Anwendungsmöglichkeit einer isolierten Sprach
erkennung umfassen.
Claims (12)
1. Verfahren zum Erkennen von Pausen zwischen aufeinan
derfolgenden Schlüsselwörtern in einem ankommenden
Audiosignal bei der Durchführung einer Sprachanalyse
mit Hilfe eines Sprachanalysegerätes, welches minde
stens ein Schlüsselwort erkennen kann,
gekennzeichnet durch folgende Verfahrensschritte:
es wird mindestens ein erstes und ein zweites Zielmu ster erzeugt, derart, daß jedes der beiden Zielmuster eine von zwei verschiedenen Darstellungen einer Pause in dem ankommenden Audiosignal darstellt;
das ankommende Audiosignal wird mit dem ersten und mit dem zweiten Zielmuster verglichen;
es wird ein erster und ein zweiter numerischer Meßwert erzeugt, derart, daß jeder der beiden Meßwerte das Er gebnis eines der beiden zuvor durchgeführten Verglei che darstellt; und
auf der Basis der zuvor erzeugten Meßwerte wird eine Entscheidung getroffen, ob in dem ankommenden Audio signal eine Pause ermittelt wurde oder nicht.
es wird mindestens ein erstes und ein zweites Zielmu ster erzeugt, derart, daß jedes der beiden Zielmuster eine von zwei verschiedenen Darstellungen einer Pause in dem ankommenden Audiosignal darstellt;
das ankommende Audiosignal wird mit dem ersten und mit dem zweiten Zielmuster verglichen;
es wird ein erster und ein zweiter numerischer Meßwert erzeugt, derart, daß jeder der beiden Meßwerte das Er gebnis eines der beiden zuvor durchgeführten Verglei che darstellt; und
auf der Basis der zuvor erzeugten Meßwerte wird eine Entscheidung getroffen, ob in dem ankommenden Audio signal eine Pause ermittelt wurde oder nicht.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß
mindestens eines der zwei Zielmuster in Form eines
sich dynamisch ändernden Pausen-Zielmusters in Abhän
gigkeit von dem ankommenden Audiosignal erzeugt wird.
3. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeich
net, daß einer der numerischen Meßwerte gemäß einer
auf der Auswertung eines unmittelbar vorausgehenden
Teils des Audiosignals basierenden Syntax-abhängigen
Entscheidung geändert wird und daß aus dem geänderten
Meßwert bestimmt wird, ob der vorliegende Signalteil
einer Pause entspricht.
4. Verfahren nach einem der Ansprüche 1 bis 3, dadurch
gekennzeichnet, daß sprecherunabhängige Zielmuster be
reitgestellt werden, welche die Schlüsselwörter dar
stellen, daß die Grenzen der Schlüsselwörter in Audio
signalen, die von einem bestimmten Sprecher gesprochen
werden unter Verwendung der sprecherunabhängigen Ziel
muster bestimmt werden und daß die Sprachanalyse
einrichtungen auf diesen Sprecher eingeübt werden, in
dem man die Grenzen verwendet, die für die von diesem
Sprecher gesprochenen Schlüsselwörter ermittelt wurden.
5. Verfahren nach Anspruch 4, dadurch gekennzeichnet, daß
ein Schlüsselwort in einem von einem bestimmten Spre
cher erzeugten ankommenden Audiosignal unter Verwen
dung der ermittelten Schlüsselwortgrenzen in einer An
zahl von Unterintervallen unterteilt wird, daß für je
des Unterintervall erzwungen wird, daß dieses einem
bestimmten Zielmuster entspricht, daß die Teilschritte
der Unterteilung und der Erzwingung der Entsprechung
für eine Anzahl von Audioeingangssignalen wiederholt
wird, welche dasselbe Schlüsselwort darstellen, daß
statistische Daten erzeugt werden, welche die Zielmu
ster beschreiben, die den einzelnen Unterintervallen
zugeordnet sind, und daß ein zweiter Durchlauf durch
die Audioeingangssignale durchgeführt wird, die
das Schlüsselwort darstellen, um unter Verwendung der
gesammelten statistischen Daten für die Schlüsselworte
von den Analysiereinrichtungen erzeugte
Unterintervalle zu erhalten.
6. Gerät zum Erkennen von Pausen zwischen
aufeinanderfolgenden Schlüsselwörtern in einem
ankommenden Audiosignal zur Durchführung des
Verfahrens nach einem der Ansprüche 1 bis 5,
gekennzeichnet durch folgende Merkmale:
es sind Einrichtungen vorgesehen, mit deren Hilfe mindestens eine erste und eine zweite Zielschablone erzeugbar sind, von denen jede eine von zwei verschiedenen Darstellungen 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 Meßwerte vorgesehen, die das Ergebnis der Vergleiche darstellen, und
es sind Entscheidungseinrichtungen vorgesehen, mit deren Hilfe auf der Basis von zumindest den Meßwerten entscheidbar ist, ob eine Pause ermittelt wurde.
es sind Einrichtungen vorgesehen, mit deren Hilfe mindestens eine erste und eine zweite Zielschablone erzeugbar sind, von denen jede eine von zwei verschiedenen Darstellungen 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 Meßwerte vorgesehen, die das Ergebnis der Vergleiche darstellen, und
es sind Entscheidungseinrichtungen vorgesehen, mit deren Hilfe auf der Basis von zumindest den Meßwerten entscheidbar ist, ob eine Pause ermittelt wurde.
7. Gerät nach Anspruch 6, dadurch gekennzeichnet, daß
die Einrichtungen zur Erzeugung der Meßwerte 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.
8. Gerät zum Erkennen von Pausen zwischen
aufeinanderfolgenden Schlüsselwörtern in einem
ankommenden Audiosignal zur Durchführung des
Verfahrens nach einem der Ansprüche 1 bis 5,
gekennzeichnet durch folgende Merkmale:
es sind Einrichtungen vorgesehen, mit deren Hilfe ein numerischer Meßwert 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 deren Hilfe zu dem numerischen Meßwert 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; und
es sind Einrichtungen vorgesehen, mit deren Hilfe aus dem neuen Wert bestimmbar ist, ob der vorliegende Signalanteil einer Pause entspricht.
es sind Einrichtungen vorgesehen, mit deren Hilfe ein numerischer Meßwert 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 deren Hilfe zu dem numerischen Meßwert 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; und
es sind Einrichtungen vorgesehen, mit deren Hilfe aus dem neuen Wert bestimmbar ist, ob der vorliegende Signalanteil einer Pause entspricht.
9. Gerät nach einem der Ansprüche 6 bis 8, 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.
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.
10. Gerät nach Anspruch 9, 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 Audiosignal darstellt, welches von dem Sprecher stammt, wiederholt unter Verwendung der Schlüsselwortgrenzen 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 Audioeingangssignale, die das Schlüsselwort darstellen, ausführbar ist, um unter Verwendung der gesamten statistischen Daten von den Analysiereinrichtungen erzeugte Unterintervalle für die Schlüsselworte zu erhalten.
es sind Einrichtungen vorgesehen, mit deren Hilfe ein Schlüsselwort, welches ein ankommendes Audiosignal darstellt, welches von dem Sprecher stammt, wiederholt unter Verwendung der Schlüsselwortgrenzen 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 Audioeingangssignale, die das Schlüsselwort darstellen, ausführbar ist, um unter Verwendung der gesamten statistischen Daten von den Analysiereinrichtungen erzeugte Unterintervalle für die Schlüsselworte zu erhalten.
11. Gerät nach Anspruch 10, dadurch gekennzeichnet, daß
Einrichtungen vorgesehen sind, mit deren Hilfe ein
Audiosignal bereitstellbar ist, welches das von dem
Sprecher gesprochene unbekannte Schlüsselwort in
isolierter Form enthält.
12. Gerät nach einem der Ansprüche 9 bis 11, 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;
es 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; und
es 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.
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;
es 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; und
es 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.
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 DE3236834A1 (de) | 1983-10-06 |
DE3236834C2 true 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 (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19854341A1 (de) * | 1998-11-25 | 2000-06-08 | Alcatel Sa | Verfahren und Schaltungsanordnung zur Sprachpegelmessung in einem Sprachsignalverarbeitungssystem |
DE10120168A1 (de) * | 2001-04-18 | 2002-10-24 | Deutsche Telekom Ag | Verfahren zur Bestimmung von Intensitätskennwerten von Hintergrundgeräuschen in Sprachpausen von Sprachsignalen |
Families Citing this family (92)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
USRE33597E (en) * | 1982-10-15 | 1991-05-28 | Hidden Markov model speech recognition arrangement | |
US4587670A (en) * | 1982-10-15 | 1986-05-06 | At&T Bell Laboratories | Hidden Markov model speech recognition arrangement |
JPS60501180A (ja) * | 1983-03-28 | 1985-07-25 | エクソン リサ−チ アンド エンジニアリング カンパニ− | スピ−チ認識方法および装置 |
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 |
US4868879A (en) * | 1984-03-27 | 1989-09-19 | Oki Electric Industry Co., Ltd. | Apparatus and method for recognizing speech |
US4713778A (en) * | 1984-03-27 | 1987-12-15 | Exxon Research And Engineering Company | Speech recognition method |
US4718093A (en) * | 1984-03-27 | 1988-01-05 | Exxon Research And Engineering Company | Speech recognition method including biased principal components |
US4718092A (en) * | 1984-03-27 | 1988-01-05 | Exxon Research And Engineering Company | Speech recognition activation and deactivation method |
US4718088A (en) * | 1984-03-27 | 1988-01-05 | Exxon Research And Engineering Company | Speech recognition training method |
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 |
DE4111781A1 (de) * | 1991-04-11 | 1992-10-22 | Ibm | Computersystem zur spracherkennung |
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 |
JP2818362B2 (ja) * | 1992-09-21 | 1998-10-30 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 音声認識装置のコンテキスト切換えシステムおよび方法 |
JP2524472B2 (ja) * | 1992-09-21 | 1996-08-14 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 電話回線利用の音声認識システムを訓練する方法 |
US5425129A (en) * | 1992-10-29 | 1995-06-13 | International Business Machines Corporation | Method for word spotting in continuous speech |
CA2158849C (en) * | 1993-03-25 | 2000-09-05 | Kevin Joseph Power | Speech recognition with pause detection |
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 |
US5594834A (en) * | 1994-09-30 | 1997-01-14 | Motorola, Inc. | Method and system for recognizing a boundary between sounds in continuous speech |
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 |
AU5738296A (en) * | 1995-05-26 | 1996-12-11 | Applied Language Technologies | Method and apparatus for dynamic adaptation of a large vocab ulary speech recognition system and for use of constraints f rom a database in a large vocabulary speech recognition syst em |
US5806034A (en) * | 1995-08-02 | 1998-09-08 | Itt Corporation | Speaker independent speech recognition method utilizing multiple training iterations |
US5822728A (en) * | 1995-09-08 | 1998-10-13 | Matsushita Electric Industrial Co., Ltd. | Multistage word recognizer based on reliably detected phoneme similarity regions |
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 |
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 |
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 |
DE10220524B4 (de) | 2002-05-08 | 2006-08-10 | Sap Ag | Verfahren und System zur Verarbeitung von Sprachdaten und zur Erkennung einer Sprache |
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 |
US7788097B2 (en) * | 2002-06-06 | 2010-08-31 | Nuance Communications, Inc. | Multiple sound fragments processing and load balancing |
US7340392B2 (en) * | 2002-06-06 | 2008-03-04 | International Business Machines Corporation | Multiple sound fragments processing and load balancing |
JP4301102B2 (ja) * | 2004-07-22 | 2009-07-22 | ソニー株式会社 | 音声処理装置および音声処理方法、プログラム、並びに記録媒体 |
KR100744288B1 (ko) * | 2005-12-28 | 2007-07-30 | 삼성전자주식회사 | 음성 신호에서 음소를 분절하는 방법 및 그 시스템 |
WO2010019831A1 (en) * | 2008-08-14 | 2010-02-18 | 21Ct, Inc. | Hidden markov model for speech processing with training method |
ES2540995T3 (es) * | 2010-08-24 | 2015-07-15 | Veovox Sa | Sistema y método para reconocer un comando de voz de usuario en un entorno con ruido |
JP6645063B2 (ja) * | 2014-07-29 | 2020-02-12 | ヤマハ株式会社 | ターゲット文字列の推定 |
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 | ソニー株式会社 | スピーカ装置、オーディオデータ供給装置及びオーディオデータ再生システム |
Family Cites Families (20)
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 |
GB1435779A (en) * | 1972-09-21 | 1976-05-12 | Threshold Tech | Word recognition |
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 |
US4038503A (en) * | 1975-12-29 | 1977-07-26 | Dialog Systems, Inc. | Speech recognition apparatus |
GB1569450A (en) * | 1976-05-27 | 1980-06-18 | Nippon Electric Co | Speech recognition system |
JPS592040B2 (ja) * | 1976-08-24 | 1984-01-17 | 日本電信電話株式会社 | 音声認織装置 |
US4228498A (en) * | 1977-10-12 | 1980-10-14 | Dialog Systems, Inc. | Multibus processor for increasing execution speed using a pipeline effect |
US4301329A (en) * | 1978-01-09 | 1981-11-17 | Nippon Electric Co., Ltd. | Speech analysis and synthesis apparatus |
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 |
US4227177A (en) * | 1978-04-27 | 1980-10-07 | Dialog Systems, Inc. | Continuous speech recognition method |
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 |
DE3236000A1 (de) * | 1982-09-29 | 1984-03-29 | Blaupunkt-Werke Gmbh, 3200 Hildesheim | Verfahren zum klassifizieren von audiosignalen |
-
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 CA CA000412844A patent/CA1182223A/en not_active Expired
- 1982-10-05 JP JP57174095A patent/JPS58134700A/ja active Pending
-
1991
- 1991-09-26 JP JP3318728A patent/JPH05232984A/ja active Pending
- 1991-09-26 JP JP3318727A patent/JPH0816187A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19854341A1 (de) * | 1998-11-25 | 2000-06-08 | Alcatel Sa | Verfahren und Schaltungsanordnung zur Sprachpegelmessung in einem Sprachsignalverarbeitungssystem |
US6539350B1 (en) | 1998-11-25 | 2003-03-25 | Alcatel | Method and circuit arrangement for speech level measurement in a speech signal processing system |
DE10120168A1 (de) * | 2001-04-18 | 2002-10-24 | Deutsche Telekom Ag | Verfahren zur Bestimmung von Intensitätskennwerten von Hintergrundgeräuschen in Sprachpausen von Sprachsignalen |
Also Published As
Publication number | Publication date |
---|---|
GB2107100A (en) | 1983-04-20 |
FR2520913B1 (fr) | 1986-12-19 |
JPS58134700A (ja) | 1983-08-10 |
DE3236834A1 (de) | 1983-10-06 |
JPH05232984A (ja) | 1993-09-10 |
CA1182223A (en) | 1985-02-05 |
JPH0816187A (ja) | 1996-01-19 |
FR2520913A1 (fr) | 1983-08-05 |
US4481593A (en) | 1984-11-06 |
GB2107100B (en) | 1985-09-11 |
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 | |
DE69432943T2 (de) | Verfahren und Vorrichtung zur Sprachdetektion | |
DE69311303T2 (de) | Sprachtrainingshilfe für kinder. | |
DE2613258C2 (de) | Schaltungsanordnung zum Erkennen von einem oder mehreren Schlüsselworten in kontinuierlicher Sprache | |
DE3337353C2 (de) | Sprachanalysator auf der Grundlage eines verborgenen Markov-Modells | |
DE69420842T2 (de) | Spracherkennung unter anwendung einer zweidurchgängigen suchmethode | |
DE69033084T2 (de) | Schaltung zur Spracherkennung unter Anwendung von nichtlinearer Verarbeitung, Sprachelementmodellierung und Phonembewertung | |
DE3783154T2 (de) | Spracherkennungssystem. | |
DE69831114T2 (de) | Integration mehrfacher Modelle für die Spracherkennung in verschiedenen Umgebungen | |
DE69225371T2 (de) | Schlüsselwörtererkennung in einem zusammenhängenden Text mittels zweier "Hidden Markov" Modelle | |
DE2753277C2 (de) | Verfahren und Einrichtung zur Spracherkennung | |
DE60124842T2 (de) | Rauschrobuste Mustererkennung | |
DE3878001T2 (de) | Spracherkennungseinrichtung unter anwendung von phonemermittlung. | |
DE19636739C1 (de) | Verfahren zur Mehrsprachenverwendung eines hidden Markov Lautmodelles in einem Spracherkennungssystem | |
DE69427083T2 (de) | Spracherkennungssystem für mehrere sprachen | |
DE68924134T2 (de) | Spracherkennungssystem. | |
DE2825110A1 (de) | Verfahren zur erkennung kontinuierlicher sprachsignale | |
DE2659096C2 (de) | ||
DE602005000603T2 (de) | Verfahren zur Bestimmung von Wahrscheinlichkeitsparametern für ein veränderliches Zustandsraummodell | |
DE2825082A1 (de) | Verfahren zur spracherkennung | |
DE2659083A1 (de) | Verfahren und vorrichtung zur sprechererkennung | |
DE19942178C1 (de) | Verfahren zum Aufbereiten einer Datenbank für die automatische Sprachverarbeitung | |
DE10030105A1 (de) | Spracherkennungseinrichtung |
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 |