DE69416670T2 - LANGUAGE PROCESSING - Google Patents

LANGUAGE PROCESSING

Info

Publication number
DE69416670T2
DE69416670T2 DE69416670T DE69416670T DE69416670T2 DE 69416670 T2 DE69416670 T2 DE 69416670T2 DE 69416670 T DE69416670 T DE 69416670T DE 69416670 T DE69416670 T DE 69416670T DE 69416670 T2 DE69416670 T2 DE 69416670T2
Authority
DE
Germany
Prior art keywords
path
node
vocabulary
nodes
recognition
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE69416670T
Other languages
German (de)
Other versions
DE69416670D1 (en
Inventor
Samuel Gavin Felixstowe Suffolk Ip11 8Ua Smyth
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Cisco Technology Inc
Original Assignee
British Telecommunications PLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by British Telecommunications PLC filed Critical British Telecommunications PLC
Publication of DE69416670D1 publication Critical patent/DE69416670D1/en
Application granted granted Critical
Publication of DE69416670T2 publication Critical patent/DE69416670T2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/14Speech classification or search using statistical models, e.g. Hidden Markov Models [HMMs]
    • G10L15/142Hidden Markov Models [HMMs]

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)
  • Telephonic Communication Services (AREA)
  • Machine Translation (AREA)
  • Exchange Systems With Centralized Control (AREA)
  • Electrophonic Musical Instruments (AREA)

Description

Die vorliegende Erfindung bezieht sich auf die Sprachverarbeitung und insbesondere auf ein System zur Verarbeitung alternativer Analysen von zusammenhängender Sprache.The present invention relates to speech processing and, more particularly, to a system for processing alternative analyses of connected speech.

Die Sprachverarbeitung umfaßt die Sprechererkennung, bei der die Identität eines Sprechers erfaßt oder überprüft wird, die Spracherkennung, bei der ein System von irgendjemandem verwendet werden kann, ohne daß ein Erkennungstraining erforderlich ist, und die sogenannte sprecherabhängige Erkennung, bei der die Benutzer, die ein System bedienen können, beschränkt sind und eine Trainingsphase erforderlich ist, um von jedem zulässigen Benutzer Informationen abzuleiten. In der Sprachverarbeitung ist es üblich, Sprachdaten, typischerweise in digitaler Form, in einen sogenannten Vorfeldprozessor einzugeben, der aus dem Strom von Eingangssprachdaten einen kompakteren, wahrnehmbar signifikanten Satz von Daten ableitet, der als Vorfeldmerkmalssatz oder -vektor bezeichnet wird. Zum Beispiel wird Sprache typischerweise über ein Mikrofon eingegeben, abgetastet, digitalisiert, in Rahmen mit einer Länge von 10 bis 20 ms (z. B. mit 8 kHz abgetastet) segmentiert und für jeden Rahmen ein Satz von Koeffizienten berechnet. Bei der Spracherkennung wird normalerweise angenommen, daß der Sprecher ein Element aus einem bekannten Satz von Wörtern oder Phrasen spricht. Eine gespeicherte Darstellung des Worts oder der Phrase, als Muster oder Modell bekannt, umfaßt eine Referenzmerkmalsmatrix dieses Wortes, die im Fall der sprecherunabhängigen Erkennung im voraus von vielen Sprechern abgeleitet worden ist. Der Eingangsmerkmalsvektor wird mit dem Modell verglichen und es wird ein Maß der Ähnlichkeit zwischen den beiden erzeugt.Speech processing includes speaker recognition, in which the identity of a speaker is detected or verified, speech recognition, in which a system can be used by anyone without requiring recognition training, and so-called speaker-dependent recognition, in which the users who can operate a system are limited and a training phase is required to derive information from each permissible user. In speech processing, it is common to input speech data, typically in digital form, to a so-called front-end processor, which derives from the stream of input speech data a more compact, perceptually significant set of data, called a front-end feature set or vector. For example, speech is typically input via a microphone, sampled, digitized, segmented into frames of 10 to 20 ms in length (e.g. sampled at 8 kHz), and a set of coefficients is calculated for each frame. In speech recognition, the speaker is usually assumed to speak an item from a known set of words or phrases. A stored representation of the word or phrase, known as a template or model, comprises a reference feature matrix of that word, which in the case of speaker-independent recognition has been derived in advance from many speakers. The input feature vector is compared with the model and a measure of similarity between the two is produced.

Die Spracherkennung (egal ob von Mensch oder Maschine) unterliegt Fehlern und kann zur Falscherkennung von Wörtern führen. Wenn ein Wort oder eine Phrase falsch erkannt wird, kann die Spracherkennungsvorrichtung anschließend einen weiteren Erkennungsversuch anbieten, der richtig sein kann oder auch nicht.Speech recognition (whether human or machine) is subject to errors and may result in incorrect recognition of words. If a word or phrase is incorrectly recognized, the speech recognition device may subsequently offer another attempt at recognition, which may or may not be correct.

Es wurden verschiedene Wege zur Verarbeitung von Sprache vorgeschlagen, um die besten oder alternative Übereinstimmungen zwischen der eingegebenen Sprache und den gespeicherten Sprachmustern oder -modellen auszuwählen. In isolierten Worterkennungssystemen ist die Erzeugung alternativer Übereinstimmungen relativ einfach: jedes Wort ist ein separater "Weg" in einem Übergangsnetz, das die zu erkennenden Wörter darstellt, wobei sich die unabhängigen Wortwege nur an den Endpunkten im Netz treffen. Das Ordnen aller Wege, die das Netz bilden, hinsichtlich ihrer Ähnlichkeit bezüglich der gespeicherten Muster oder dergleichen ergibt die besten und alternative Übereinstimmungen.Various ways of processing speech have been proposed to select the best or alternative matches between the input speech and the stored language patterns or models. In isolated word recognition systems, generating alternative matches is relatively simple: each word is a separate "path" in a transition network representing the words to be recognized, with the independent word paths meeting only at the endpoints in the network. Ordering all the paths forming the network in terms of their similarity to the stored patterns or the like yields the best and alternative matches.

In den meisten verbundenen Erkennungssystemen und einigen isolierten Worterkennungssystemen auf der Grundlage verbundener Erkennungstechniken ist es jedoch nicht immer möglich, alle Wege am Endpunkt des Netzes zu rekombinieren, so daß weder die besten noch alternative Übereinstimmungen direkt aus den Informationen erhalten werden können, die am Ausgangspunkt des Netzes zur Verfügung stehen. Eine Lösung des Problems der Erzeugung einer besten Übereinstimmung ist beschrieben in "Token Passing: a Simple Conceptual Model for Connected Speech Recognition Systems", von S. J. Young, N. H. Russel und J. H. S. Thornton, 1989, der sich auf das Weiterleiten von Paketen an Informationen, bekannt als Tokens, durch ein Übergangsnetz bezieht. Ein Token enthält Informationen, die sich auf den durchwanderten Partialweg beziehen, sowie eine akkumulierte Punktzahl, die den Grad der Ähnlichkeit zwischen der Eingabe und dem Abschnitt des bisher verarbeiteten Netzes anzeigt.However, in most connected recognition systems and some isolated word recognition systems based on connected recognition techniques, it is not always possible to recombine all paths at the end point of the network, so that neither the best nor alternative matches can be obtained directly from the information available at the starting point of the network. A solution to the problem of generating a best match is described in "Token Passing: a Simple Conceptual Model for Connected Speech Recognition Systems", by SJ Young, NH Russel and JHS Thornton, 1989, which relates to passing packets of information, known as tokens, through a transition network. A token contains information that relating to the partial path traversed, as well as an accumulated score indicating the degree of similarity between the input and the section of the network processed so far.

Wie von Young u. a. beschrieben, werden bei jeder Eingabe eines Rahmens von Sprache in ein Übergangsnetz irgendwelche Tokens, die am Eingang eines Knotens vorhanden sind, in den Knoten weitergeleitet, wobei der aktuelle Rahmen von Sprache innerhalb der diesen Knoten zugeordneten Wortmodelle verglichen wird. Am Ausgang des Knotens erscheinen dann neue Tokens (die das dem Knoten zugeordnete Modell "durchwandert" haben). Nur das Token mit der besten Punktzahl wird anschließend zu den Eingängen der folgenden Knoten weitergeleitet. Wenn das Ende der Sprache signalisiert worden ist (mittels einer externen Vorrichtung wie z. B. eines Pausendetektors), ist am Endknoten ein einzelnes Token vorhanden. Von diesem Token kann der gesamte Weg durch das Netz extrahiert werden, indem der Weg mittels der vorangehenden Weginformationen, die innerhalb des Tokens enthalten sind, zurückverfolgt wird, um die beste Übereinstimmung zur Eingangssprache zu erzeugen.As described by Young et al., whenever a frame of speech is input to a transition network, any tokens present at the input of a node are passed into the node, comparing the current frame of speech within the word models associated with that node. New tokens (which have "traveled" the model associated with the node) then appear at the output of the node. Only the token with the best score is subsequently passed to the inputs of subsequent nodes. When the end of speech has been signaled (by an external device such as a pause detector), a single token is present at the end node. From this token, the entire path through the network can be extracted by tracing the path back using the preceding path information contained within the token to produce the best match to the input speech.

Der Artikel "A unified direction mechanism for automatic speech recognition using Hidden Markov Models", von S. C. Austin und F. Fallside, ICASSP 1989, Bd. 1, S. 667-670, bezieht sich auf eine Spracherkennungsvorrichtung für verbundene Wörter, die in einer ähnlichen Weise arbeitet, wie von Young u. a. beschrieben worden ist. Beim Erstellen des Wortmodells wird eine Historie aktualisiert, die sich auf den Fortschritt der Erkennung durch das Übergangsnetz bezieht. Am Ende der Erkennung wird das Ergebnis von der am Ausgang präsentierten Historie abgeleitet, die die beste Punktzahl besitzt. Es ist wiederum nur eine Historie für jeden Weg möglich, der am Endknoten endet.The article "A unified direction mechanism for automatic speech recognition using Hidden Markov Models", by S. C. Austin and F. Fallside, ICASSP 1989, vol. 1, pp. 667-670, refers to a connected word speech recognition device that works in a similar way to that described by Young et al. When the word model is created, a history is updated that relates to the progress of recognition through the transition network. At the end of recognition, the result is derived from the history presented at the output that has the best score. Again, only one history is possible for each path that ends at the terminal node.

Solche bekannten Anordnungen erlauben für einen gegebenen Endknoten nicht, daß einfach eine alternative Wahl am Ausgang des Netzes zur Verfügung steht.Such known arrangements do not allow for a given end node to simply have an alternative choice available at the output of the network.

Gemäß der Erfindung umfaßt eine Spracherkennungsvorrichtung eine Einrichtung zum Ableiten eines Erkennungsmerkmalsvektors aus einem Eingangssprachsignal für jeden vorgegebenen Zeitrahmen; eine Einrichtung zum Modellieren der erwarteten Eingangssprache, die mehrere Vokabularknoten, von denen jeder ein zugehöriges Wortdarstellungsmodell besitzt, sowie Verknüpfungen zwischen den Vokabularknoten umfaßt; eine Verarbeitungseinrichtung zum Vergleichen der Erkennungsmerkmalsvektoren mit der modellierten Eingangssprache und zum Erkennen einer Wegverbindung für jeden Knoten und Zeitrahmen, wobei die Wegverbindungen die wahrscheinlichste vorherige Sequenz von Vokabularknoten für jeden Vokabularknoten und Zeitrahmen angeben, wobei die Wegverbindung ein Feld umfaßt zum Speichern einer akkumulierten Erkennungspunktzahl und ein Feld zum Speichern einer Referenz zur wahrscheinlichsten vorangehenden Wegverbindung in der Sequenz; und eine Einrichtung zum Anzeigen der Erkennung des Eingangssprachsignals in Abhängigkeit vom Vergleich; dadurch gekennzeichnet, daß die Verarbeitungseinrichtung (351) in einem einzigen Zeitrahmen mehr als eine Wegverbindung für wenigstens einen Vokabularknoten, der nicht der Endknoten ist, verarbeiten kann.According to the invention, a speech recognition apparatus comprises means for deriving a recognition feature vector from an input speech signal for each predetermined time frame; means for modelling the expected input speech comprising a plurality of vocabulary nodes, each having an associated word representation model, and links between the vocabulary nodes; processing means for comparing the recognition feature vectors with the modelled input speech and for detecting a path link for each node and time frame, the path links indicating the most likely previous sequence of vocabulary nodes for each vocabulary node and time frame, the path link comprising a field for storing an accumulated recognition score and a field for storing a reference to the most likely previous path link in the sequence; and means for indicating recognition of the input speech signal in dependence on the comparison; characterized in that the processing means (351) can process more than one path connection for at least one vocabulary node other than the end node in a single time frame.

Eine solche Anordnung bedeutet, daß mehr als eine ankommende Wegverbindung von einem Knoten in einem einzigen Zeitrahmen verarbeitet werden kann, und somit, daß mehr als ein Erkennungsergebnis erhalten werden kann.Such an arrangement means that more than one incoming path can be processed by a node in a single time frame, and thus that more than one detection result can be obtained.

Die Modellierungseinrichtung umfaßt vorzugsweise ein Übergangsnetz, das mehrere Rauschknoten und Vokabularkno ten enthält, die den Wortdarstellungsmodellen zugeordnet sind. Die Verarbeitungseinrichtung kann Wegverbindungen für jeden Knoten erzeugen, die Felder zum Speichern eines Zeigers auf die vorangehende Wegverbindung, eine akkumulierte Punktzahl für einen Weg, einen Zeiger auf einen vorangehenden Knoten und einen Zeitindex für Segmentierungsinformationen enthält. Die Vokabularknoten, die mehr als eine in einem einzigen Zeitrahmen verarbeitete Wegverbindung besitzen können, besitzen mehr als ein identisches zugehöriges Wortdarstellungsmodell.The modelling device preferably comprises a transition network comprising a plurality of noise nodes and vocabulary nodes ten associated with the word representation models. The processing means may generate path links for each node that include fields for storing a pointer to the preceding path link, an accumulated score for a path, a pointer to a preceding node, and a time index for segmentation information. The vocabulary nodes, which may have more than one path link processed in a single time frame, have more than one identical associated word representation model.

Die Vorgabe, daß wenigstens einer der Vokabularknoten, der nicht der Endknoten des Netzes ist, mehr als ein zugehöriges Wortdarstellungsmodell aufweist, erlaubt dem Prozessor, mehrere Wege für den gleichen Zeitrahmen zu verarbeiten, und erlaubt somit, daß mehr als eine Wegverbindung sich an jedem Eingangsrahmen durch jede Zwischenknotenverbindung fortpflanzt. Somit erzeugt die Erfindung mehrere Schichten eines Übergangsnetzes, entlang denen sich mehrere alternative Wege fortpflanzen können. Der Weg mit der besten Punktzahl kann vom ersten Modell eines Knotens verwendet werden, während der nächstbeste vom zweiten Modell verwendet werden kann, und so weiter, bis entweder die parallelen Modelle oder die ankommenden Wege ausgehen.The requirement that at least one of the vocabulary nodes, which is not the terminal node of the network, has more than one associated word representation model allows the processor to process multiple paths for the same time frame, and thus allows more than one path connection to propagate through each inter-node connection at each input frame. Thus, the invention creates multiple layers of a transition network along which multiple alternative paths can propagate. The path with the best score can be used by the first model of a node, while the next best can be used by the second model, and so on until either the parallel models or the incoming paths run out.

Allgemein ausgedrückt enthält ein "Netz" gerichtete azyklische Graphen (GAGs) und Bäume. Ein GAG ist ein Netz ohne Zyklen, während ein Baum ein Netz ist, bei dem das alleinige Aufeinandertreffen von Wegen konzeptionell rechts am Ende des Netzes auftritt.Generally speaking, a "network" contains directed acyclic graphs (GAGs) and trees. A GAG is a network with no cycles, while a tree is a network in which the only meeting of paths occurs conceptually at the right end of the net.

Der Ausdruck "Wort" bezeichnet hier eine Grunderkennungseinheit, die ein Wort sein kann, jedoch ebensogut ein Diphon, ein Phonem, ein Allophon und dergleichen sein kann. Die Erkennung ist der Prozeß des Vergleichens einer unbekannten Äußerung mit einem vordefinierten Übergangsnetz, wobei das Netz so ausgelegt ist, daß es zu dem kompatibel ist, was ein Benutzer wahrscheinlich sagt.The term "word" here refers to a basic recognition unit, which may be a word, but may just as well be a diphone, a phoneme, an allophone, and the like. Recognition is the process of comparing a unknown utterance with a predefined transition network, where the network is designed to be compatible with what a user is likely to say.

Um die Phrase zu identifizieren, die erkannt worden ist, kann die Vorrichtung eine Einrichtung enthalten zum Zurückverfolgen der Wegverbindung durch das Netz.In order to identify the phrase that has been recognized, the device may include means for tracing the path connection through the network.

Alternativ kann die Vorrichtung ferner eine Einrichtung enthalten zum Zuweisen einer Signatur zu wenigstens einigen der Knoten, denen Wortdarstellungsmodelle zugeordnet sind, sowie eine Einrichtung zum Vergleichen der Signatur jedes Weges, um den Weg mit der besten Übereinstimmung zur Eingangssprache und denjenigen mit der zweitbesten alternativen Übereinstimmung zu ermitteln.Alternatively, the apparatus may further include means for assigning a signature to at least some of the nodes associated with word representation models, and means for comparing the signature of each path to determine the path with the best match to the input language and the path with the second best alternative match.

Diese Anordnung erlaubt eine Alternative, die sich notwendigerweise in der Eigenschaft von der besten Übereinstimmung unterscheidet und sich nicht lediglich in der Segmentierung oder in den Rauschübereinstimmungen unterscheidet.This arrangement allows for an alternative that necessarily differs in property from the best match and does not merely differ in segmentation or noise matches.

Die Wortdarstellungsmodelle können Hidden-Markov-Modelle (HMMs) sein, wie in "Hidden Markov Models for automatic speech recognition: theory and application", Cox, British Telecom Technology Journal, April 1988, Bd. 6, Nr. 2, S. 105, allgemein beschrieben ist, Muster, dynamische Zeitsprungmodelle, oder irgendwelche anderen geeigneten Wortdarstellungsmodelle. Die Verarbeitung, die innerhalb eines Modells stattfindet, ist bezüglich dieser Erfindung irrelevant.The word representation models may be hidden Markov models (HMMs) as generally described in "Hidden Markov Models for automatic speech recognition: theory and application", Cox, British Telecom Technology Journal, April 1988, Vol. 6, No. 2, p. 105, patterns, dynamic time-hopping models, or any other suitable word representation models. The processing that takes place within a model is irrelevant to this invention.

Es ist nicht erforderlich, daß alle Knoten, die zugehörige Wortmodelle besitzen, eine ihnen zugewiesene Signatur aufweisen. In Abhängigkeit von der Struktur des Übergangsnetzes kann es ausreichen, nur denjenigen Knoten Signaturen zuzuweisen, die vor einem Entscheidungspunkt innerhalb eines Netzes erscheinen. Ein Entscheidungspunkt, wie er hier verwendet wird, bezieht sich auf einen Punkt im Netz, der mehr als einen ankommenden Weg aufweist.It is not necessary that all nodes that have associated word models have a signature assigned to them. Depending on the structure of the transition network, it may be sufficient to assign only those nodes Assign signatures that appear before a decision point within a network. A decision point, as used here, refers to a point in the network that has more than one incoming path.

Partielle Wege können an bestimmten Entscheidungspunkten im Netz untersucht werden, wobei gewisse Einschränkungen an diesen Entscheidungspunkten auferlegt werden, so daß nur Wege verfolgt werden, die den Einschränkungen entsprechen, wie beschrieben ist in der internationalen Patentanmeldung des Anmelders, eingereicht am 31. März 1994, mit dem Titel "Connected Speech Recognition", Nr. WO/23425, veröffentlicht am 13. Oktober 1994. Jedem Entscheidungspunkt ist ein Satz von gültigen Signaturen zugeordnet, wobei alle Wegverbindungen mit Signaturen, die nicht in dem Satz enthalten sind, verworfen werden.Partial paths can be examined at certain decision points in the network, with certain constraints imposed at those decision points so that only paths satisfying the constraints are followed, as described in Applicant's international patent application filed March 31, 1994, entitled "Connected Speech Recognition", No. WO/23425, published October 13, 1994. Each decision point is associated with a set of valid signatures, with all path connections with signatures not included in the set being discarded.

Die akkumulierte Signatur kann verwendet werden, um den kompletten Weg zu identifizieren, was zu einer zusätzlichen Effizienz der Operation führt, da die Wegverbindungen nicht durchlaufen werden müssen, um die Wegidentität zu ermitteln, wobei die Partialweginformationen des Tokens letztlich nicht erzeugt werden müssen. In diesem Fall muß das Signaturfeld groß genug sein, um alle Wege eindeutig zu identifizieren.The accumulated signature can be used to identify the complete path, which leads to additional efficiency of the operation since the path connections do not have to be traversed to determine the path identity, and the partial path information of the token does not ultimately have to be generated. In this case, the signature field must be large enough to uniquely identify all paths.

Für eine effiziente Operation der Vorrichtung gemäß der Erfindung wird die Signalverarbeitung der Wegsignaturen vorzugsweise in einer einzigen Operation durchgeführt, um die Verarbeitungsgeschwindigkeit zu erhöhen.For efficient operation of the device according to the invention, the signal processing of the path signatures is preferably performed in a single operation in order to increase the processing speed.

Weitere Aspekte und bevorzugte Ausführungsformen der Erfindung sind so beschaffen, wie hier offenbart und beansprucht wird, wobei sie Vorteile aufweisen, die im folgenden deutlich werden.Further aspects and preferred embodiments of the invention are as disclosed and claimed herein, with advantages which will become apparent hereinafter.

Die Erfindung wird im folgenden lediglich beispielhaft mit Bezug auf die beigefügten Zeichnungen genauer beschrieben, in welchen:The invention is described in more detail below by way of example only with reference to the accompanying drawings, in which:

Fig. 1 schematisch die Verwendung eines Erkennungsprozessors gemäß der Erfindung in einer Telekommunikationsumgebung zeigt;Fig. 1 shows schematically the use of a recognition processor according to the invention in a telecommunications environment;

Fig. 2 ein Blockschaltbild zeigt, das die Funktionselemente eines Erkennungsprozessors gemäß der Erfindung schematisch zeigt;Fig. 2 is a block diagram showing schematically the functional elements of a recognition processor according to the invention;

Fig. 3 ein Blockschaltbild ist, das die Komponenten eines Klassifiziererbildungsabschnitts der Fig. 2 schematisch zeigt;Fig. 3 is a block diagram schematically showing the components of a classifier forming section of Fig. 2;

Fig. 4 ein Blockschaltbild ist, das die Struktur eines Sequenz-Parser-Bildungsabschnitts der Ausführungsform der Fig. 2 schematisch zeigt;Fig. 4 is a block diagram schematically showing the structure of a sequence parser forming section of the embodiment of Fig. 2;

Fig. 5 den Inhalt eines Feldes innerhalb eines Speicherbildungsabschnitts der Fig. 4 schematisch zeigt;Fig. 5 schematically shows the contents of a field within a memory forming section of Fig. 4;

Fig. 6 eine schematische Darstellung einer Ausführungsform eines Übergangsnetzes ist, das mit dem Prozessor des Sequenz-Parsers der Fig. 4 angewendet werden kann;Fig. 6 is a schematic representation of an embodiment of a transition network that can be used with the sequence parser processor of Fig. 4;

Fig. 7a einen Knoten eines Netzes zeigt und Fig. 7b eine Wegverbindung zeigt, die gemäß der Erfindung verwendet wird;Figure 7a shows a node of a network and Figure 7b shows a path connection used according to the invention ;

Fig. 8 bis 10 den Fortschritt der Wegverbindungen durch das Netz der Fig. 6 zeigen;Fig. 8 to 10 show the progress of the path connections through the network of Fig. 6;

Fig. 11 eine schematische Darstellung einer zweiten Ausführungsform eines Übergangsnetzes einer Vorrichtung gemäß der Erfindung ist;Fig. 11 is a schematic representation of a second embodiment of a transition network of a device according to the invention;

Fig. 12 eine schematische Darstellung einer dritten Ausführungsform eines Übergangsnetzes einer Vorrichtung gemäß der Erfindung ist.Fig. 12 is a schematic representation of a third embodiment of a transition network of a device according to the invention.

Wie in Fig. 1 gezeigt, umfaßt ein Telekommunikationssystem, das eine Spracherkennung enthält, ein Mikrofon 1, das typischerweise einen Teil eines Telephonhandgerätes bildet, ein Telekommunikationsnetz (typischerweise ein öffentliches vermitteltes Telekommunikationsnetz (PSTN)) 2, einen Erkennungsprozessor 3, der angeschlossen ist, um vom Netz 2 ein Sprachsignal zu empfangen, und eine Nutzungsvorrichtung 4, die mit dem Erkennungsprozessor 3 verbunden ist und dazu dient, von diesem ein Spracherkennungssignal zu empfangen, das die Erkennung anzeigt, oder andernfalls ein bestimmtes Wort oder eine Phrase anzeigt, um als Antwort hierauf eine Maßnahme zu ergreifen. Die Nutzungsvorrichtung 4 kann z. B. ein ferngesteuertes Bank-Terminal zum Durchführen von Banktransaktionen sein.As shown in Figure 1, a telecommunications system incorporating speech recognition comprises a microphone 1, typically forming part of a telephone handset, a telecommunications network (typically a public switched telecommunications network (PSTN)) 2, a recognition processor 3 connected to receive a speech signal from the network 2, and a usage device 4 connected to the recognition processor 3 and operable to receive therefrom a speech recognition signal indicative of the recognition or otherwise indicative of a particular word or phrase for taking action in response thereto. The usage device 4 may, for example, be a remotely controlled bank terminal for conducting bank transactions.

In vielen Fällen erzeugt die Nutzungsvorrichtung 4 eine hörbare Antwort für den Sprecher, die über das Netz 2 zu einem Lautsprecher 5 übertragen wird, der typischerweise einen Teil des Teilnehmerhandgeräts bildet.In many cases, the usage device 4 generates an audible response for the speaker which is transmitted over the network 2 to a loudspeaker 5 which typically forms part of the subscriber's handset.

Im Betrieb spricht der Sprecher in das Mikrofon 1, wobei ein analoges Sprachsignal vom Mikrofon 1 in das Netz 2 zum Erkennungsprozessor 3 übertragen wird, wo das Sprachsignal analysiert wird und ein Signal, das die Identifikation oder andernfalls ein bestimmtes Wort oder eine Phrase angibt, erzeugt und zur Nutzungsvorrichtung 4 übertragen wird, die anschließend eine geeignete Maßnahme im Fall der Erkennung der Sprache ergreift.In operation, the speaker speaks into the microphone 1, whereby an analogue speech signal is transmitted from the microphone 1 into the network 2 to the recognition processor 3, where the speech signal is analysed and a signal indicating the identification or otherwise a particular word or phrase is generated and transmitted to the user device 4 which subsequently takes an appropriate action in the event of recognition of the speech.

Der Erkennungsprozessor muß typischerweise Daten annehmen, die die Sprache betreffen, mit denen er das Sprachsignal vergleicht, wobei diese Datenannahme vom Erkennungsprozessor in einer zweiten Betriebsart durchgeführt werden kann, in der der Erkennungsprozessor 3 nicht mit der Nutzungsvorrichtung 4 verbunden ist, jedoch ein Sprachsignal vom Mikrofon 1 empfängt, um die Erkennungsdaten für dieses Wort oder diese Phrase zu bilden. Es sind jedoch auch andere Verfahren zum Annehmen der Spracherkennungsdaten möglich.The recognition processor must typically accept data relating to the speech with which it compares the speech signal, and this data acceptance may be performed by the recognition processor in a second mode of operation in which the recognition processor 3 is not connected to the user device 4 but receives a speech signal from the microphone 1 to form the recognition data for that word or phrase. However, other methods of accepting the speech recognition data are also possible.

Der Erkennungsprozessor 3 ignoriert typischerweise die vom Signal vom Mikrofon 1 zum und durch das Netz 2 genommene Route; irgendeine einer großen Vielfalt von Typen und Qualitäten von Empfänger-Handgerät. In ähnlicher Weise kann innerhalb des Netzes irgendeiner einer großen Vielzahl von Übertragungswegen genommen werden, einschließlich Funkverbindungen, analoger und digitaler Wege und dergleichen. Somit entspricht das den Erkennungsprozessor 3 erreichende Sprachsignal Y dem Sprachsignal S. das am Mikrofon 1 empfangen worden ist, gefaltet mit den Übertragungseigenschaften des Mikrofons 1, der Verbindung zum Netz 2, dem Kanal durch das Netz 2 und der Verbindung zum Erkennungsprozessor 3, was zusammengefaßt und mit einer einzigen Übertragungseigenschaft H bezeichnet werden kann.The recognition processor 3 typically ignores the route taken by the signal from microphone 1 to and through the network 2; any of a wide variety of types and qualities of receiver handset. Similarly, within the network, any of a wide variety of transmission paths may be taken, including radio links, analog and digital paths, and the like. Thus, the speech signal Y reaching the recognition processor 3 corresponds to the speech signal S received at the microphone 1 convolved with the transmission characteristics of the microphone 1, the connection to the network 2, the channel through the network 2, and the connection to the recognition processor 3, which may be summarized and denoted by a single transmission characteristic H.

Wie in Fig. 2 gezeigt, umfaßt der Erkennungsprozessor 3 einen Eingang 31 zum Empfangen von Sprache in digitaler Form (entweder von einem digitalen Netz oder von einem Analog/Digital-Umsetzer), einen Rahmenprozessor. 32 zum Unterteilen aufeinanderfolgender digitaler Abtastwerte in eine Folge von Rahmen zusammenhängender Abtastwerte; einen Merkmalsextrahierer 33 zum Erzeugen eines entsprechenden Merkmalsvektors aus einem Rahmen von Abtastwer ten; einen Klassifizierer 34 zum Empfangen der Folge von Merkmalsvektoren und zum Verarbeiten derselben mit mehreren Modellzuständen, um Erkennungsergebnisse zu erzeugen; einen Sequenzer 35, der so beschaffen ist, daß er die Klassifizierungsergebnisse vom Klassifizierer 34 empfängt und die vorgegebene Äußerung ermittelt, zu der die Sequenz des Klassifiziererausgangs die größte Ähnlichkeit aufweist; und einen Ausgangsanschluß 38, an dem ein Erkennungssignal ausgegeben wird, das die Sprachäußerung angibt, die erkannt worden ist.As shown in Fig. 2, the recognition processor 3 comprises an input 31 for receiving speech in digital form (either from a digital network or from an analog-to-digital converter), a frame processor 32 for dividing successive digital samples into a sequence of frames of contiguous samples; a feature extractor 33 for generating a corresponding feature vector from a frame of samples. a classifier 34 for receiving the sequence of feature vectors and processing them with a plurality of model states to produce recognition results; a sequencer 35 arranged to receive the classification results from the classifier 34 and to determine the predetermined utterance to which the sequence of the classifier output has the greatest similarity; and an output terminal 38 at which a recognition signal is output indicating the speech utterance that has been recognized.

Rahmengenerator 32Frame generator 32

Der Rahmengenerator 32 ist so beschaffen, daß er Sprachabtastwerte mit einer Rate von z. B. 8000 Abtastwerten pro Sekunde empfängt und Rahmen bildet, die 256 zusammenhängende Abtastwerte umfassen, mit einer Rahmenrate von einem Rahmen in jeweils 16 ms. Jeder Rahmen ist vorzugsweise gefenstert (d. h. die Abtastwerte in Richtung zum Rand des Rahmens werden mit vorgegebenen Gewichtungskonstanten multipliziert), z. B. unter Verwendung eines Hamming-Fensters, um störende Artefakte zu reduzieren, die durch die Rahmenränder erzeugt werden. In einer bevorzugten Ausführungsform überlappen sich die Rahmen (z. B. um 50%), um die Effekte der Fensterung zu verbessern.The frame generator 32 is arranged to receive speech samples at a rate of, for example, 8000 samples per second and form frames comprising 256 contiguous samples at a frame rate of one frame every 16 ms. Each frame is preferably windowed (i.e., the samples toward the edge of the frame are multiplied by predetermined weighting constants), e.g., using a Hamming window, to reduce spurious artifacts created by the frame edges. In a preferred embodiment, the frames overlap (e.g., by 50%) to enhance the effects of windowing.

Merkmalsextrahierer 33Feature Extractor 33

Der Merkmalsextrahierer 33 empfängt die Rahmen vom Rahmengenerator 33 und erzeugt in jedem Fall einen Satz oder einen Vektor von Merkmalen. Die Merkmale können z. B. Cepstralkoeffizienten (z. B. LPC-Cepstralkoeffizienten oder mel-Frequenz-Cepstralkoeffizienten, wie beschrieben ist in "On the Evaluation of Speech Recognizers and Dadabases using a Reference System", Chollet & Gagnoulet, 1982, Proc. IEEE, S. 2026) oder Differentialwerte solcher Koeffizienten, die für jeden Koeffizienten die Differenzen zwischen dem Koeffizienten und dem entsprechenden Koeffizientenwert im vorangehenden Vektor umfassen, wie beschrieben ist in "On the use of Instantaneous and Transitional Spectral Information in Speaker Recognition", Soong & Rosenberg, 1988, IEEE Trans. on Acoustics, Speech and Signal Processing, Bd. 36, Nr. 6, S. 871. Gleichermaßen kann eine Mischung mehrerer Typen von Merkmalskoeffizienten verwendet werden.The feature extractor 33 receives the frames from the frame generator 33 and generates a set or vector of features in each case. The features may be, for example, cepstral coefficients (e.g. LPC cepstral coefficients or mel-frequency cepstral coefficients, as described in "On the Evaluation of Speech Recognizers and Dadabases using a Reference System", Chollet &Gagnoulet, 1982, Proc. IEEE, p. 2026) or differential values of such coefficients comprising, for each coefficient, the differences between the coefficient and the corresponding coefficient value in the preceding vector, as described in "On the use of Instantaneous and Transitional Spectral Information in Speaker Recognition", Soong & Rosenberg, 1988, IEEE Trans. on Acoustics, Speech and Signal Processing, Vol. 36, No. 6, p. 871. Similarly, a mixture of several types of feature coefficients may be used.

Der Merkmalsextrahierer 33 gibt eine Rahmennummer aus, die für jeden aufeinanderfolgenden Rahmen inkrementiert wird. Der Ausgang des Merkmalsextrahierers 33 wird ferner zu einem Ende-Zeiger 36 weitergeleitet, dessen Ausgang mit dem Klassifizierer 34 verbunden ist. Der Ende-Zeiger 36 erfaßt das Ende der Sprache, wobei verschieden Typen auf diesem Gebiet bekannt sind.The feature extractor 33 outputs a frame number, which is incremented for each successive frame. The output of the feature extractor 33 is further forwarded to an end pointer 36, the output of which is connected to the classifier 34. The end pointer 36 detects the end of the speech, various types of which are known in the art.

Der Rahmengenerator 32 und der Merkmalsextrahierer 33 werden in dieser Ausführungsform von einer einzelnen, geeignet programmierten Digitalsignalprozessor-(DSP)- Vorrichtung gebildet (wie z. B. dem Motorola DSP 56000 oder dem Texas Instruments TMS C 320) oder einer ähnlichen Vorrichtung.The frame generator 32 and the feature extractor 33 in this embodiment are formed by a single, suitably programmed digital signal processor (DSP) device (such as the Motorola DSP 56000 or the Texas Instruments TMS C 320) or a similar device.

Klassifizierer 34Classifier 34

Wie in Fig. 3 gezeigt, umfaßt der Klassifizierer 34 in dieser Ausführungsform einen Klassifizierungsprozessor 341 und einen Zustandsspeicher 342.As shown in Fig. 3, the classifier 34 in this embodiment includes a classification processor 341 and a state memory 342.

Der Zustandsspeicher 342 umfaßt ein Statusfeld 3421, 3422, für jeden der mehreren Sprachzustände. Zum Beispiel umfaßt jedes vom Erkennungsprozessor zu erkennende Allophon drei Zustände, wobei dementsprechend drei Zustandsfelder im Zustandsspeicher 342 für jedes Allophon vorgesehen sind.The state memory 342 comprises a status field 3421, 3422 for each of the several speech states. For example, each allophone to be recognized by the recognition processor comprises three states, whereby accordingly three State fields in the state memory 342 are provided for each allophone.

Der Klassifizierungsprozessor 34 ist so beschaffen, daß er jedes Statusfeld innerhalb des Speichers 342 der Reihe nach liest und für jedes unter Verwendung des aktuellen Eingangsmerkmalskoeffizientensatzes die Wahrscheinlichkeit berechnet, daß der Eingangsmerkmalssatz oder Vektor dem entsprechenden Zustand entspricht.The classification processor 34 is arranged to read each state field within the memory 342 in turn and, for each, calculate the probability that the input feature set or vector corresponds to the corresponding state using the current input feature coefficient set.

Dementsprechend umfaßt die Ausgabe des Klassifizierungsprozessors mehrere Zustandswahrscheinlichkeiten P, eine für jeden Zustand im Zustandsspeicher 342, die die Wahrscheinlichkeit angeben, das der Eingangsmerkmalsvektor dem jeweiligen Zustand entspricht.Accordingly, the output of the classification processor includes a plurality of state probabilities P, one for each state in state memory 342, indicating the probability that the input feature vector corresponds to the respective state.

Der Klassifizierungsprozessor 341 kann eine geeignet programmierte Digitalsignalverarbeitungs-(DSP)-Vorrichtung sein, und kann insbesondere die gleiche Digitalsignalverarbeitungsvorrichtung sein wie der Merkmalsextrahierer 33.The classification processor 341 may be a suitably programmed digital signal processing (DSP) device, and in particular may be the same digital signal processing device as the feature extractor 33.

Sequenzer 35Sequencer 35

Wie in Fig. 4 gezeigt, umfaßt der Sequenzer 35 in dieser Ausführungsform einen Zustandssequenzspeicher 352, einen Parser-Prozessor 351 und einen Sequenzerausgangspuffer 354.As shown in Fig. 4, the sequencer 35 in this embodiment includes a state sequence memory 352, a parser processor 351, and a sequencer output buffer 354.

Ferner ist ein Zustandswahrscheinlichkeitsspeicher 353 vorgesehen, der für jeden verarbeiteten Rahmen die vom Klassifizierungsprozessor 341 ausgegebenen Zustandswahrscheinlichkeiten speichert. Der Zustandssequenzspeicher 352 umfaßt mehrere Zustandssequenzfelder 3521, 3522, ...., die jeweils einem Wort oder einer zu erkennenden Phrasensequenz entspricht, die aus einer Kette von Allophonen besteht.Furthermore, a state probability memory 353 is provided, which stores the state probabilities output by the classification processor 341 for each processed frame. The state sequence memory 352 comprises several state sequence fields 3521, 3522, ...., each of which is assigned to a word or a Phrase sequence consisting of a chain of allophones.

Jede Zustandssequenz im Zustandssequenzspeicher 352 umfaßt, wie in Fig. 5 gezeigt, mehrere Zustände P&sub1;, P&sub2;, ... PN (wobei N ein Vielfaches von 3 ist) und für jeden Zustand zwei Wahrscheinlichkeiten; eine Wiederholungswahrscheinlichkeit (Pi1) und eine Übergangswahrscheinlichkeit zum folgenden Zustand (Pi2). Die Zustände der Sequenz sind mehrere Gruppen von drei Zuständen, die sich jeweils auf ein einzelnes Allophon beziehen. Die beobachtete Sequenz von Zuständen, die einer Serie von Rahmen zugeordnet ist, kann somit mehrere Wiederholungen für jeden Zustand Pi in jedem Zustandssequenzmodell 3521 usw. umfassen, zum Beispiel: Each state sequence in the state sequence memory 352 comprises, as shown in Fig. 5, several states P₁, P₂, ... PN (where N is a multiple of 3) and for each state two probabilities; a repetition probability (Pi1) and a transition probability to the next state (Pi2). The states of the sequence are several groups of three states, each relating to a single allophone. The observed sequence of states associated with a series of frames may thus comprise several repetitions for each state Pi in each state sequence model 3521, etc., for example:

Der Parserprozessor 351 ist so beschaffen, daß er bei jedem Rahmen die vom Klassifizierungsprozessor 341 ausgegebenen Zustandswahrscheinlichkeiten und die vorher gespeicherten Zustandswahrscheinlichkeiten im Zustandswahrscheinlichkeitsspeicher 353 liest und den wahrscheinlichsten Weg von Zuständen bis heute über die Zeit berechnet und diesen mit jedem der im Zustandssequenzspeicher 352 gespeicherten Zustandssequenzen vergleicht.The parser processor 351 is arranged to read, at each frame, the state probabilities output by the classification processor 341 and the previously stored state probabilities in the state probability memory 353 and calculate the most likely path of states to date over time and compare it to each of the state sequences stored in the state sequence memory 352.

Die Berechnung verwendet dazu wohlbekannte HMMs, wie im obengenannten Cox-Papier beschrieben worden ist. Die vom Parserprozessor 351 durchgeführte HMM-Verarbeitung verwendet günstigerweise den wohlbekannten Viterbi-Algorithmus. Der Parserprozessor 351 kann z. B. ein Mikroprozessor sein, wie z. B. der Mikroprozessor Intel(TM) i-486(TM) oder der Mikroprozessor Motorola(TM) 68000, oder kann alternativ eine DSP-Vorrichtung sein (z. B. die gleiche DSP-Vorrichtung, die für irgendeinen der vorangehenden Prozessoren verwendet wird).The computation uses well-known HMMs as described in the above-mentioned Cox paper. The HMM processing performed by the parser processor 351 conveniently uses the well-known Viterbi algorithm. The parser processor 351 may be, for example, a microprocessor such as the Intel(TM) i-486(TM) microprocessor or the Motorola(TM) 68000 microprocessor, or may alternatively, be a DSP device (e.g., the same DSP device used for any of the preceding processors).

Dementsprechend wird für jede Zustandssequenz (die einem Wort, einer Phrase oder einer anderen zu erkennenden Sprachsequenz entspricht) eine Wahrscheinlichkeitspunktezahl vom Parserprozessor 351 bei jedem Rahmen der Eingangssprache ausgegeben. Zum Beispiel können die Zustandssequenzen die Namen in einem Telephonverzeichnis enthalten. Wenn das Ende der Äußerung erfaßt wird, wird ein Etikettensignal, das die wahrscheinlichste Zustandssequenz angibt, vom Parserprozessor 351 zum Ausgangsanschluß 38 ausgegeben, um anzuzeigen, daß der entsprechende Name, das Wort oder die Phrase erkannt worden ist.Accordingly, for each state sequence (corresponding to a word, phrase, or other speech sequence to be recognized), a probability score is output by the parser processor 351 at each frame of the input speech. For example, the state sequences may contain the names in a telephone directory. When the end of the utterance is detected, a label signal indicating the most likely state sequence is output by the parser processor 351 to the output port 38 to indicate that the corresponding name, word, or phrase has been recognized.

Der Parserprozessor 351 umfaßt ein Netz, das speziell konfiguriert ist, um bestimmte Phrasen oder Wörter wie z. B. eine Kette von Ziffern zu erkennen.The parser processor 351 includes a network specifically configured to recognize particular phrases or words, such as a string of digits.

Die Fig. 6 zeigt ein einfaches Netz zum Erkennen einer Kette von Wörtern, in diesem Fall entweder eine Kette von vier Wörtern oder eine Kette von drei Wörtern. Jedem Knoten 12 des Netzes ist ein Wortdarstellungsmodell 13, z. B. ein HMM, zugeordnet, das in einer Modelliste gespeichert ist. Jedem Modell können mehrere Knoten zugeordnet sein, wobei jeder Knoten einen Zeiger auf dessen zugehöriges Modell besitzt (wie in den Fig. 6 und 7a gezeigt). Um eine beste Übereinstimmung und eine einzelne alternative Phrase zu erzeugen, sind dem letzten Knoten 14 zwei Modelle zugeordnet, so daß dieser Knoten zwei Wege verarbeiten kann. Wenn n Analysen benötigt werden, werden dem letzten Knoten 14 des Netzes n identische Wortmodelle zugeordnet.Figure 6 shows a simple network for recognizing a string of words, in this case either a string of four words or a string of three words. Each node 12 of the network is associated with a word representation model 13, e.g. an HMM, which is stored in a model list. Each model can have multiple nodes associated with it, each node having a pointer to its associated model (as shown in Figures 6 and 7a). To produce a best match and a single alternative phrase, two models are associated with the last node 14 so that this node can process two paths. If n analyses are required, the last node 14 of the network is assigned n identical word models are assigned.

Wie in Fig. 7b gezeigt, enthält eine Wegverbindung 15 Informationen über einen Zeiger auf die vorangehende Wegverbindung, einen akkumulierten Punktewert, einen Zeiger auf den vorher erzeugten Knoten und einen Zeitindex. Am Beginn einer Äußerung wird eine leere Wegverbindung 15' in den ersten Knoten 16 eingesetzt, wie in Fig. 8 gezeigt ist. Der erste Knoten enthält nun eine Wegverbindung und ist somit aktiv, während die restlichen Knoten inaktiv sind. Bei jedem Taktwechsel (d. h. bei jedem ankommenden Rahmen der Sprache) akkumulieren irgendwelche aktiven Knoten einen Punktewert in ihrer Wegverbindung.As shown in Fig. 7b, a path link 15 contains information about a pointer to the previous path link, an accumulated score, a pointer to the previously created node, and a time index. At the beginning of an utterance, an empty path link 15' is inserted into the first node 16, as shown in Fig. 8. The first node now contains a path link and is thus active, while the remaining nodes are inactive. At each clock change (i.e., at each incoming frame of speech), any active nodes accumulate a score in their path link.

Wenn das erste Modell mit z. B. einem Minimum von sieben Rahmen an Sprache übereinstimmt, wird beim siebten Taktimpuls eine Wegverbindung 15" aus dem ersten Knoten mit dem Punktewert für die Übereinstimmung der sieben Rahmen mit dem Modell und Zeigern auf die Eingangswegverbindung und den gerade verglichenen Knoten ausgegeben. Die Wegverbindung wird allen folgenden Knoten 15 eingegeben, wie in Fig. 9 gezeigt ist. Nun sind die ersten drei Knoten aktiv. Der Eingangsrahmen der Sprache wird anschließend in den Modellen verglichen, die den aktiven Knoten zugeordnet sind, und es werden neue Wegverbindungen ausgegeben.If the first model matches, for example, a minimum of seven frames of speech, then on the seventh clock pulse a path connection 15" is output from the first node with the score for matching the seven frames with the model and pointers to the input path connection and the node being compared. The path connection is input to all subsequent nodes 15 as shown in Fig. 9. Now the first three nodes are active. The input frame of speech is then compared in the models associated with the active nodes and new path connections are output.

Diese Verarbeitung wird fortgesetzt, wobei der erste Knoten 16 weitere Wegverbindungen erzeugt, wenn sein Modell mit zunehmend längeren Abschnitten der Äußerung übereinstimmt, wobei die nachfolgenden Knoten ähnliche Berechnungen durchführen.This processing continues, with the first node generating 16 more path connections as its model matches increasingly longer sections of the utterance, with subsequent nodes performing similar computations.

Wenn die Eingangssprache bis zum letzten Knoten 18 des Netzes verarbeitet worden ist, können die Wegverbindungen von jedem "Zweig" des Netzes zu diesem Knoten 18 dargestellt werden. Wenn zu irgendeinem gegebenen Zeitrahmen eine einzelne Wegverbindung besteht (d. h. nur einer der parallelen Wege ist vollständig), wird diese Wegverbindung als die beste (und einzige) Übereinstimmung genommen und vom letzten Knoten 18 verarbeitet. Wenn jedoch zwei Wegverbindungen am letzten Knoten 18 vorhanden sind, werden von diesem Knoten beide verarbeitet, da der letzte Knoten 18 mehr als einen Weg verarbeiten kann. Die ausgegebenen Wegverbindungen werden kontinuierlich bei jedem Rahmen der Sprache aktualisiert. Wenn die Äußerung abgeschlossen ist, gibt es zwei Wegverbindungen 15''' am Ausgang des Netzes, wie in Fig. 10 gezeigt ist (von denen die Zeiger auf vorangehende Wegverbindungen und Knoten der Klarheit halber weggelassen sind).When the input language has been processed up to the last node 18 of the network, the path connections from each "branch" of the network to that node 18 can be represented. If at any given time frame a single path connection exists (i.e. only one of the parallel paths is complete), that path connection is taken as the best (and only) match and processed by the last node 18. However, if there are two path connections at the last node 18, both are processed by that node, since the last node 18 can process more than one path. The output path connections are continuously updated at each frame of speech. When the utterance is complete, there are two path connections 15''' at the output of the network, as shown in Fig. 10 (from which the pointers to preceding path connections and nodes are omitted for clarity).

Der vollständige Weg kann gefunden werden durch verfolgen der Zeiger zu den vorangehenden Wegverbindungen, wobei die Knoten auf dem erkannten Weg (und somit die anscheinend erkannte Eingangssprache) identifiziert werden können durch Betrachten der Zeiger auf die erregten Knoten.The complete path can be found by following the pointers to the previous path connections, where the nodes on the recognized path (and thus the apparently recognized input language) can be identified by looking at the pointers to the excited nodes.

Die Fig. 11 zeigt eine zweite Ausführungsform eines Netzes, das für die Erkennung von Ketten von drei Ziffern konfiguriert ist. Die grauen Knoten 22 sind Null-Knoten im Netz; die weißen Knoten sind aktive Knoten, die in Vokabularknoten 24 mit zugehörigen (nicht gezeigten) Wortdarstellungsmodellen zum Vergleichen ankommender Sprache und Rauschknoten 25, die willkürliches Rauschen darstellen, unterteilt werden können.Figure 11 shows a second embodiment of a network configured for recognizing strings of three digits. The gray nodes 22 are null nodes in the network; the white nodes are active nodes that can be divided into vocabulary nodes 24 with associated word representation models (not shown) for comparing incoming speech and noise nodes 25 representing random noise.

Wenn alle aktiven Knoten 24, 25 nach und einschließlich des dritten Nullknotens 22' jeweils drei Wege für jeden Zeitrahmen besitzen können (d. h. jedem Vokabularknoten 24 sind drei Wortdarstellungsmodelle zugeordnet), umfaßt der Ausgang des Netzes Wegverbindungen, die sich auf die drei obersten Punktwertwege des Systems beziehen. Wie mit Bezug auf die Fig. 8 bis 10 beschrieben worden ist, können die drei Wege gefunden werden durch Verfolgen der Zeiger zur vorangehenden Wegverbindung für jeden Weg. Die Knoten auf den Wegen (und somit die anscheinend erkannte Eingangssprache) können identifiziert werden durch Betrachten der Zeiger zu den erregten Knoten.If all active nodes 24, 25 after and including the third null node 22' can each have three paths for each time frame (ie, each vocabulary node 24 has three word representation models associated with it), the output of the network comprises path connections that refer to the top three point value paths of the system. As with As described with reference to Figures 8 to 10, the three paths can be found by following the pointers to the previous path connection for each path. The nodes on the paths (and hence the apparently recognized input speech) can be identified by looking at the pointers to the excited nodes.

In einer Weiterentwicklung der Erfindung können die Wegverbindungen mit Signaturen versehen sein, die die signifikanten Knoten des Netzes darstellen. Diese signifikanten Knoten können z. B. alle Vokabularknoten 24 umfassen. In der Ausführungsform der Fig. 11 ist jedem Vokabularknoten 24 eine Signatur zugewiesen, z. B. ist den Knoten, die die Ziffer 1 darstellen, eine Signatur "1" zugewiesen, während den Knoten 24", die die Ziffer 2 darstellen, eine Signatur "2" zugewiesen ist, und so weiter.In a further development of the invention, the path connections can be provided with signatures that represent the significant nodes of the network. These significant nodes can, for example, include all vocabulary nodes 24. In the embodiment of Fig. 11, each vocabulary node 24 is assigned a signature, for example, the nodes that represent the number 1 are assigned a signature "1", while the nodes 24" that represent the number 2 are assigned a signature "2", and so on.

Am Beginn der Prüfung wird eine einzelne leere Wegverbindung in einen Netzeingangsknoten 26 eingegeben. Da dies ein Null-Knoten ist, wird die Wegverbindung zum nächsten. Knoten, einem Rauschknoten 25, weitergeleitet. Der Eingangsrahmen wird im (nicht gezeigten) Rauschmodell dieses Knotens verglichen, wobei am Ausgang eine aktualisierte Wegverbindung erzeugt wird. Diese Wegverbindung wird anschließend zu den nächsten aktiven Knoten weitergeleitet, d. h. zu den ersten Vokabularknoten 24 mit einem zugehörigen Modell (nicht gezeigt). Jeder Vokabularknoten 24 verarbeitet den Rahmen der Sprache in seinem zugehörigem Wortmodell und erzeugt eine aktualisierte Wegverbindung. Das Signaturfeld der Wegverbindung wird ebenfalls aktualisiert. Am Ende jedes Zeitrahmens werden die aktualisierten Wegverbindungen sortiert, um die drei (n) obersten Punktwertwege zu erhalten, die unterschiedliche Signaturfelder besitzen. Eine anhand des Punktwerts geordnete Liste wird erhalten, mit der zusätzlichen Einschränkung, daß akkumulierte Signaturen eindeutig sind: wenn eine zweite Wegverbindung mit der gleichen Signatur eintritt, wird die bessere der beiden gehalten. Die Liste enthält nur die oberen "n" unterschiedlichen Wege, wobei der Rest ignoriert wird.At the beginning of the test, a single empty path connection is input to a network input node 26. Since this is a null node, the path connection is passed to the next node, a noise node 25. The input frame is compared in the noise model (not shown) of this node, producing an updated path connection at the output. This path connection is then passed to the next active nodes, i.e., to the first vocabulary nodes 24 with an associated model (not shown). Each vocabulary node 24 processes the frame of the language in its associated word model and produces an updated path connection. The signature field of the path connection is also updated. At the end of each time frame, the updated path connections are sorted to obtain the top three (n) score paths having different signature fields. A score-ordered list is obtained, with the additional Constraint that accumulated signatures are unique: if a second path connection with the same signature occurs, the better of the two is kept. The list contains only the top "n" different paths, ignoring the rest.

Die n Wegverbindungen pflanzen sich durch den nächsten Nullknoten 22' zum folgenden Rauschknoten 25 und den Vokabularknoten 24" fort, von denen jedem drei identische Wortdarstellungsmodelle zugeordnet sind. Anschließend findet die Modellverarbeitung statt, was zur Aktualisierung der Listen von Wegverbindungen und zum Erweitern der Wege in die weiteren Knoten 24''', 25 führt. Es ist klär, daß die Signaturfelder der Wegverbindungen nach der Verarbeitung durch die Null-Knoten 22 oder die Rauschknoten 25 nicht aktualisiert werden, da diese Knoten keine zugewiesenen Signaturen besitzen.The n path connections propagate through the next null node 22' to the following noise node 25 and the vocabulary node 24", each of which is assigned three identical word representation models. Model processing then takes place, resulting in updating the lists of path connections and extending the paths into the further nodes 24''', 25. It is clear that the signature fields of the path connections are not updated after processing by the null nodes 22 or the noise nodes 25, since these nodes do not have any assigned signatures.

Die Wegverbindungen pflanzen sich entlang der Wege fort, die durch die restlichen aktiven Knoten führen, um an einem Ausgangsknoten 28 bis zu drei Wegverbindungen zu erzeugen, die die relativen Punktewerte und Signaturen, z. B. 1 2 1, der durch das Netz genommenen Wege anzeigen. Die Wegverbindungen werden kontinuierlich aktualisiert, bis das Ende der Sprache erfaßt wird (z. B. mittels einer externen Vorrichtung wie z. B. eines Pausendetektors, oder bis eine Zeitüberschreitung erreicht wird). An diesem Punkt werden die Zeiger oder die akkumulierten Signaturen der Wegverbindungen am Ausgangsknoten 28 untersucht, um die Erkennungsergebnisse zu ermitteln.The path links propagate along the paths passing through the remaining active nodes to produce up to three path links at an output node 28 that indicate the relative point values and signatures, e.g., 1 2 1, of the paths taken through the network. The path links are continuously updated until the end of speech is detected (e.g., by an external device such as a pause detector, or until a timeout is reached). At that point, the pointers or accumulated signatures of the path links at the output node 28 are examined to determine the recognition results.

Unter der Annahme, daß die folgenden drei Wegverbindungen am Ausgangsknoten 28 zu einem bestimmten Zeitpunkt vorliegen:Assuming that the following three path connections are present at the output node 28 at a certain point in time:

PUNKTEWERT SIGNATURPOINTS VALUE SIGNATURE

A 10 1 2 2A 10 1 2 2

B 9 1 2 2B 9 1 2 2

C 7 1 3 2C 7 1 3 2

ist z. B. der Weg A, der Weg mit der höchsten Punktzahl, die beste Übereinstimmung. Obwohl der Weg B die zweitbeste Punktezahl aufweist, wird er jedoch als eine alternative Analyse verworfen, da seine Signatur und somit die anscheinend erkannte Sprache die gleiche ist wie im Weg A. Der Weg C würde somit als die zweitbeste Analyse gehalten.For example, path A, the path with the highest score, is the best match. Although path B has the second best score, it is rejected as an alternative analysis because its signature, and thus the language apparently recognized, is the same as in path A. Path C would thus be considered the second best analysis.

Wenn die zu erkennenden Ketten mehr Struktur als oben beschrieben besitzen, z. B. buchstabierte Namen, müssen nur den Knoten unmittelbar vor Entscheidungspunkten Signaturen zugewiesen sein, statt jedem Vokabularknoten. Die Fig. 12 zeigt ein Netz zum Erkennen der Buchstabierung der Namen "Phil", "Paul" und "Peter". Der Einfachheit halber ist kein Rauschen gezeigt. Die quadratischen Knoten 44 zeigen, wo die Signatur angeordnet werden sollte.If the strings to be recognized have more structure than described above, e.g. spelled names, only the nodes immediately before decision points need to have signatures assigned, rather than each vocabulary node. Figure 12 shows a network for recognizing the spelling of the names "Phil," "Paul," and "Peter." For simplicity, no noise is shown. The square nodes 44 show where the signature should be placed.

Das System kann zwischen den Wegen "PHI" und "PAU" am Knoten "L" unterscheiden, da die Signaturen der Wegverbindungen, die an den vorangehenden Knoten erzeugt worden sind, unterschiedlich sind. Der folgende Knoten 47 ist fähig, zwischen allen drei unabhängigen Wegen zu unterscheiden, da sich die Signaturen der quadratischen Knoten 44 unterscheiden. Nur dem Knoten "L" und dem letzten Rauschknoten 48 müssen mehr als ein identisches Wortmodell zugewiesen werden, so daß diese Modelle mehr als einen Weg für einen einzelnen Zeitrahmen besitzen können.The system can distinguish between paths "PHI" and "PAU" at node "L" because the signatures of the path connections created at the preceding nodes are different. The following node 47 is able to distinguish between all three independent paths because the signatures of the square nodes 44 are different. Only node "L" and the last noise node 48 need to be assigned more than one identical word model, so that these models can have more than one path for a single time frame.

In allen Fällen erfordert jedes Netz, das die zu erkennende Sprache darstellt, eine Analyse, um zu ermitteln, welchen Knoten Signaturen zugewiesen werden müssen. Außerdem ist das Netz so konfiguriert, daß es zu dem kompatibel ist, was ein Benutzer wahrscheinlich sagt.In all cases, each network representing the speech to be recognized requires analysis to determine which nodes need to be assigned signatures. Furthermore, the network is configured to be compatible with what a user is likely to say.

Einsparungen in der Speichergröße und der Verarbeitungsgeschwindigkeit können erreicht werden durch Beschränken der Signaturen, die ein Knoten weitergibt. Zum Beispiel sei die einzige gültige Eingangssprache für eine Erkennungsvorrichtung mit dem Netz der Fig. 6 die Gruppe aus vier aufeinanderfolgenden Zahlen von: 111, 112, 121, 211. Bestimmten Knoten innerhalb des Netzes ist ein Satz von gültigen Signaturen zugewiesen, wobei sich ein Weg durch einen "beschränkten" Knoten nur fortpflanzt, wenn eine Wegverbindung mit einer dieser Signaturen vorhanden ist. Um dies zu erreichen, werden die Signaturfelder der Wegverbindungen, die in einen beschränkten Knoten eintreten, z. B. den dritten Null-Knoten 22', untersucht. Wenn das Signaturfeld eine andere Signatur als 1 oder 2 enthält, wird die Wegverbindung verworfen und der Weg pflanzt sich nicht weiter fort. Wenn eine zulässige Wegverbindung dargestellt wird, wird sie zum nächsten Knoten weitergereicht. Der nächste beschränkte Knoten ist der Null-Knoten 22" nach den nächsten Vokabularknoten. Dieser Null-Knoten ist beschränkt auf nur die Ausbreitung von Wegverbindungen mit einer Signatur 11, 12 oder 21. Der Null-Knoten 22''' nach den nächsten Vokabularknoten ist beschränkt auf nur die Ausbreitung der Wegverbindungen mit der Signatur 111, 112, 121 oder 211. Eine solche Anordnung reduziert die erforderliche Verarbeitung erheblich und erlaubt eine Einsparung der Speicherkapazität der Vorrichtung. Nur einige der Knoten an den Entscheidungspunkten im Netz müssen so beschränkt sein. In der Praxis hat sich eine 32-Bit-Signatur als für Sequenzen von bis zu neun Ziffern geeignet erwiesen. Eine 64-Bit- Signatur erscheint geeignet für eine alphanumerische 12- Zeichen-Kette.Savings in memory size and processing speed can be achieved by restricting the signatures that a node passes. For example, let the only valid input language for a recognizer using the network of Figure 6 be the set of four consecutive numbers: 111, 112, 121, 211. Certain nodes within the network are assigned a set of valid signatures, with a path propagating through a "restricted" node only if a path link with one of these signatures exists. To accomplish this, the signature fields of the path links entering a restricted node, e.g., the third null node 22', are examined. If the signature field contains a signature other than 1 or 2, the path link is discarded and the path does not propagate further. If a valid path link is presented, it is passed on to the next node. The next restricted node is the null node 22" after the next vocabulary nodes. This null node is restricted to only propagating path connections with a signature 11, 12 or 21. The null node 22''' after the next vocabulary nodes is restricted to only propagating path connections with the signature 111, 112, 121 or 211. Such an arrangement significantly reduces the required processing and allows a saving of the memory capacity of the device. Only some of the nodes at the decision points in the network need to be so restricted. In practice, a 32-bit signature has proven to be suitable for sequences of up to nine digits. A 64-bit Signature appears suitable for a 12-character alphanumeric string.

Das Ende der Spracherfassung und verschiedene andere Aspekte der Spracherkennung, die für die vorliegende Erfindung relevant sind, sind vollständiger ausgeführt in der internationalen Patentanmeldung des Anmelders, eingereicht am 25. März 1994, mit dem Titel "Speech Recognition", Nr. WO 94/22131, veröffentlicht am 29. September 1994.The end of speech capture and various other aspects of speech recognition relevant to the present invention are more fully set forth in Applicant's international patent application, filed March 25, 1994, entitled "Speech Recognition", No. WO 94/22131, published September 29, 1994.

In den obenbeschriebenen Ausführungsformen wurde eine Erkennungsverarbeitungsvorrichtung beschrieben, die mit einer Telekommunikationsvermittlung verbunden werden kann. In einer weiteren Ausführungsform kann die Erfindung jedoch auf einer einfachen Vorrichtung ausgeführt werden, die mit einer herkömmlichen Teilnehmerstation (mobil oder fest) verbunden ist, welche mit dem Telephonnetz verbunden ist; in diesem Fall kann eine Analog/Digital-Umsetzungseinrichtung vorgesehen sein, um das ankommende analoge Telephonsignal zu digitalisieren.In the embodiments described above, a recognition processing device has been described which can be connected to a telecommunications exchange. In a further embodiment, however, the invention can be carried out on a simple device connected to a conventional subscriber station (mobile or fixed) connected to the telephone network; in this case, an analogue-to-digital converter can be provided to digitize the incoming analogue telephone signal.

Claims (19)

1. Spracherkennungssystem, mit:1. Speech recognition system, with: einer Einrichtung zum Ableiten eines Erkennungsmerkmalsvektors aus einem eingegebenen Sprachsignal für jeden vorgegebenen Zeitrahmen;means for deriving a recognition feature vector from an input speech signal for each predetermined time frame; einer Einrichtung zum Modellieren einer erwarteten eingegebenen Sprache, die mehrere Vokabularknoten enthält, wovon jeder ein zugeordnetes Wortdarstellungsmodell besitzt, das seinerseits Verbindungen zwischen den Vokabularknoten aufweist;means for modeling an expected input language comprising a plurality of vocabulary nodes, each having an associated word representation model which in turn has connections between the vocabulary nodes; einer Verarbeitungseinrichtung zum Vergleichen der Erkennungsmerkmalsvektoren mit der modellierten eingegebenen Sprache und zum Erzeugen einer Wegverbindung für jeden Knoten und jeden Zeitrahmen, wobei die Wegverbindungen die wahrscheinlichste vorhergehende Sequenz von Vokabularknoten für jeden Vokabularknoten und jeden Zeitrahmen angeben, wobei jede Wegverbindung ein Feld zum Speichern einer akkumulierten Erkennungstrefferliste und ein Feld zum Speichern einer Bezugnahme auf die wahrscheinlichste vorhergehende Wegverbindung in der Sequenz enthält; unda processing device for comparing the recognition feature vectors with the modeled input speech and generating a path link for each node and each time frame, the path links indicating the most likely previous sequence of vocabulary nodes for each vocabulary node and each time frame, each path link including a field for storing an accumulated recognition hit list and a field for storing a reference to the most likely previous path link in the sequence; and einer Einrichtung, die die Erkennung des eingegebenen Sprachsignals in Abhängigkeit vom Vergleich angibt;a device which indicates the recognition of the input speech signal as a function of the comparison; dadurch gekennzeichnet, daß die Verarbeitungseinrichtung (351) in einem einzigen Zeitrahmen mehr als eine Wegverbindung für wenigstens einen vom Endknoten verschiedenen Vokabularknoten verarbeiten kann.characterized in that the processing means (351) can process more than one path connection for at least one vocabulary node other than the end node in a single time frame. 2. Spracherkennungsvorrichtung nach Anspruch 1, dadurch gekennzeichnet, daß der wenigstens eine der Vokabularknoten mehr als einem identischen Wortdarstellungsmodell zugeordnet ist.2. Speech recognition device according to claim 1, characterized in that the at least one of the Vocabulary node is assigned to more than one identical word representation model. 3. Spracherkennungsvorrichtung nach Anspruch 2, dadurch gekennzeichnet, daß die Wortdarstellungsmodelle Hidden-Markow-Modelle sind.3. Speech recognition device according to claim 2, characterized in that the word representation models are hidden Markov models. 4. Spracherkennungsvorrichtung nach irgendeinem der Ansprüche 1, 2 oder 3, dadurch gekennzeichnet, daß sämtliche Vokabularknoten ihnen zugewiesene Signaturen besitzen.4. Speech recognition device according to any one of claims 1, 2 or 3, characterized in that all vocabulary nodes have signatures assigned to them. 5. Spracherkennungsvorrichtung nach irgendeinem der Ansprüche 1, 2 oder 3, dadurch gekennzeichnet, daß nur diejenigen Vokabularknoten, die vor einem Entscheidungspunkt auftreten, ihnen zugewiesene Signaturen besitzen.5. Speech recognition device according to any one of claims 1, 2 or 3, characterized in that only those vocabulary nodes that occur before a decision point have signatures assigned to them. 6. Spracherkennungsvorrichtung nach Anspruch 4 oder Anspruch 5, dadurch gekennzeichnet, daß die Wegverbindungen eine akkumulierte Signatur enthalten.6. Speech recognition device according to claim 4 or claim 5, characterized in that the path connections contain an accumulated signature. 7. Spracherkennungsvorrichtung nach irgendeinem der Ansprüche 4, 5, oder 6, dadurch gekennzeichnet, daß wenigstens einige der Knoten in der Weise beschränkt sind, daß von ihnen nur Wegverbindungen mit bestimmten vorgegebenen Signaturen ausgehen.7. Speech recognition device according to any one of claims 4, 5 or 6, characterized in that at least some of the nodes are restricted in such a way that only path connections with certain predetermined signatures emanate from them. 8. Spracherkennungsvorrichtung nach irgendeinem der Ansprüche 4 bis 7, dadurch gekennzeichnet, daß die Erkennungsangabeeinrichtung eine Einrichtung zum Vergleichen der Trefferliste und der Signatur der Wegverbindungen enthält, um den Weg mit der besten Übereinstimmung mit der eingangsseitigen Sprache und jene Wege mit den nächstbesten alternativen Übereinstimmungen zu bestimmen.8. Speech recognition apparatus according to any one of claims 4 to 7, characterized in that the recognition indicating means includes means for comparing the hit list and the signature of the path links to determine the path with the best match to the input speech and those paths with the next best alternative matches. 9. Verfahren zur Spracherkennung, enthaltend:9. A method for speech recognition, comprising: Ableiten eines Erkennungsmerkmalsvektors aus einem eingegebenen Sprachsignal für jeden vorgegebenen Zeitrahmen;Deriving a recognition feature vector from an input speech signal for each given time frame; Modellieren einer erwarteten Eingangssprache;Modeling an expected input language; Vergleichen der Merkmalsdaten mit der modellierten Eingangssprache durch Erzeugen eines Netzes, das mehrere Vokabularknoten enthält, denen Wortdarstellungsmodelle zugeordnet sind, und durch Erzeugen einer Wegverbindung für jeden Knoten und jeden Zeitrahmen, wobei die Wegverbindung die wahrscheinlichste vorhergehende Sequenz aus Vokabularknoten für jeden Vokabularknoten und jeden Zeitrahmen angibt, wobei jede Wegverbindung ein Feld zum Speichern einer akkumulierten Erkennungstrefferliste und ein Feld zum Speichern einer Bezugnahme auf die wahrscheinlichste vorhergehende Wegverbindung in der Sequenz enthält;comparing the feature data with the modeled input speech by creating a network containing a plurality of vocabulary nodes associated with word representation models and creating a path link for each node and each time frame, the path link indicating the most likely preceding sequence of vocabulary nodes for each vocabulary node and each time frame, each path link including a field for storing an accumulated recognition hit list and a field for storing a reference to the most likely preceding path link in the sequence; Angeben einer Erkennung der Sprache in Abhängigkeit vom Vergleich,Specifying a language recognition depending on the comparison, dadurch gekennzeichnet, daß in einem einzigen Zeitrahmen mehr als eine Wegverbindung für wenigstens einen von dem Endknoten verschiedenen Vokabularknoten verarbeitet werden.characterized in that in a single time frame more than one path connection is processed for at least one vocabulary node other than the end node. 10. Verfahren nach Anspruch 9, dadurch gekennzeichnet, daß dem wenigstens einen Vokabularknoten mehr als ein identisches Wortdarstellungsmodell zugeordnet ist.10. Method according to claim 9, characterized in that more than one identical word representation model is assigned to the at least one vocabulary node. 11. Verfahren nach Anspruch 10, dadurch gekennzeichnet, daß dem wenigstens einem Vokabularknoten eine Anzahl identischer Wortdarstellungsmodelle zugeordnet ist, die gleich der Anzahl der gewünschten Erkennungsergebnisse ist.11. Method according to claim 10, characterized in that the at least one vocabulary node is assigned a number of identical word representation models which is equal to the number of desired recognition results. 12. Verfahren nach irgendeinem der Ansprüche 10 oder 11, dadurch gekennzeichnet, daß die Trefferlisten der Wegverbindungen mit jedem Entscheidungspunkt des Netzes verglichen werden, wobei nur die Wegverbindungen mit bester Trefferliste zu dem/den nächsten Knoten fortgeführt werden.12. Method according to any one of claims 10 or 11, characterized in that the hit lists of the path connections are linked to each decision point of the network are compared, whereby only the path connections with the best hit list are continued to the next node(s). 13. Verfahren nach irgendeinem der Ansprüche 10, 11 oder 12, gekennzeichnet durch die Zuweisung von Signaturen an sämtliche Vokabularknoten.13. Method according to any one of claims 10, 11 or 12, characterized by assigning signatures to all vocabulary nodes. 14. Verfahren nach irgendeinem der Ansprüche 10, 11 oder 12, dadurch gekennzeichnet, daß lediglich denjenigen Vokabularknoten, die vor einem Entscheidungspunkt im Netz auftreten, Signaturen zugewiesen werden.14. Method according to any one of claims 10, 11 or 12, characterized in that signatures are assigned only to those vocabulary nodes that occur before a decision point in the network. 15. Verfahren nach irgendeinem der Ansprüche 13 oder 14 in Verbindung mit Anspruch 12, dadurch gekennzeichnet, daß die Signaturen der Wegverbindungen ebenfalls verglichen werden, wobei nur Wegverbindungen mit unterschiedlichen Signaturen zu dem/den nächsten Knoten fortgeführt werden.15. Method according to any one of claims 13 or 14 in conjunction with claim 12, characterized in that the signatures of the path connections are also compared, whereby only path connections with different signatures are continued to the next node(s). 16. Verfahren nach irgendeinem der Ansprüche 13, 14 oder 15, gekennzeichnet durch die Beschränkung wenigstens einiger Knoten in der Weise, daß sie nur Wegverbindungen mit bestimmten vorgegebenen Signaturen in ihren Signaturfeldern weiterleiten.16. Method according to any one of claims 13, 14 or 15, characterized by restricting at least some nodes in such a way that they only forward path connections with certain predetermined signatures in their signature fields. 17. Verfahren nach irgendeinem der Ansprüche 9 bis 16, dadurch gekennzeichnet, daß das eingegebene Sprachsignal, das erkannt werden soll, durch Zurückverfolgen der Wegverbindungen durch das Netz bestimmt wird.17. A method according to any one of claims 9 to 16, characterized in that the input speech signal to be recognized is determined by tracing the path connections through the network. 18. Verfahren nach irgendeinem der Ansprüche 13 bis 16, dadurch gekennzeichnet, daß das eingegebene Sprachsignal, das erkannt werden soll, durch die akkumulierte Signatur jeder Wegverbindung bestimmt wird.18. A method according to any one of claims 13 to 16, characterized in that the input speech signal to be recognized is determined by the accumulated signature of each path link. 19. Verfahren nach irgendeinem der Ansprüche 10 bis 18, dadurch gekennzeichnet, daß die Wegverbindung mit bester Trefferliste durch das erste Wortdarstellungsmodell eines Vokabularknotens verarbeitet wird, die nächstbeste durch das zweite u. s. w., bis entweder parallele Modelle oder ankommende Wegverbindung ausgehen.19. A method according to any one of claims 10 to 18, characterized in that the path link with the best hit list is processed by the first word representation model of a vocabulary node, the next best by the second, and so on, until either parallel models or incoming path links run out.
DE69416670T 1993-03-31 1994-03-31 LANGUAGE PROCESSING Expired - Lifetime DE69416670T2 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP93302538 1993-03-31
EP93304993 1993-06-25
PCT/GB1994/000704 WO1994023424A1 (en) 1993-03-31 1994-03-31 Speech processing

Publications (2)

Publication Number Publication Date
DE69416670D1 DE69416670D1 (en) 1999-04-01
DE69416670T2 true DE69416670T2 (en) 1999-06-24

Family

ID=26134252

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69416670T Expired - Lifetime DE69416670T2 (en) 1993-03-31 1994-03-31 LANGUAGE PROCESSING

Country Status (12)

Country Link
JP (1) JPH08508350A (en)
KR (1) KR100309205B1 (en)
CN (1) CN1196104C (en)
AU (1) AU682177B2 (en)
CA (1) CA2158064C (en)
DE (1) DE69416670T2 (en)
FI (1) FI954572A (en)
HK (1) HK1014390A1 (en)
NO (1) NO308756B1 (en)
NZ (1) NZ263223A (en)
SG (1) SG47716A1 (en)
WO (1) WO1994023424A1 (en)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ATE179543T1 (en) * 1995-03-07 1999-05-15 Siemens Ag METHOD FOR DETECTING AT LEAST ONE DEFINED PATTERN MODELED BY HIDDEN-MARKOV MODELS IN A TIME-VARIANT MESSAGE SIGNAL WHICH IS SUPERMEDIATE BY AT LEAST ONE INJURY SIGNAL
US7117149B1 (en) 1999-08-30 2006-10-03 Harman Becker Automotive Systems-Wavemakers, Inc. Sound source classification
US8271279B2 (en) 2003-02-21 2012-09-18 Qnx Software Systems Limited Signature noise removal
US8073689B2 (en) 2003-02-21 2011-12-06 Qnx Software Systems Co. Repetitive transient noise removal
US7725315B2 (en) 2003-02-21 2010-05-25 Qnx Software Systems (Wavemakers), Inc. Minimization of transient noises in a voice signal
US7895036B2 (en) 2003-02-21 2011-02-22 Qnx Software Systems Co. System for suppressing wind noise
US7885420B2 (en) 2003-02-21 2011-02-08 Qnx Software Systems Co. Wind noise suppression system
US7949522B2 (en) 2003-02-21 2011-05-24 Qnx Software Systems Co. System for suppressing rain noise
US8326621B2 (en) 2003-02-21 2012-12-04 Qnx Software Systems Limited Repetitive transient noise removal
US7949520B2 (en) 2004-10-26 2011-05-24 QNX Software Sytems Co. Adaptive filter pitch extraction
US7716046B2 (en) 2004-10-26 2010-05-11 Qnx Software Systems (Wavemakers), Inc. Advanced periodic signal enhancement
US8170879B2 (en) 2004-10-26 2012-05-01 Qnx Software Systems Limited Periodic signal enhancement system
US7680652B2 (en) 2004-10-26 2010-03-16 Qnx Software Systems (Wavemakers), Inc. Periodic signal enhancement system
US8306821B2 (en) 2004-10-26 2012-11-06 Qnx Software Systems Limited Sub-band periodic signal enhancement system
US8543390B2 (en) 2004-10-26 2013-09-24 Qnx Software Systems Limited Multi-channel periodic signal enhancement system
US8284947B2 (en) 2004-12-01 2012-10-09 Qnx Software Systems Limited Reverberation estimation and suppression system
US8027833B2 (en) 2005-05-09 2011-09-27 Qnx Software Systems Co. System for suppressing passing tire hiss
US8311819B2 (en) 2005-06-15 2012-11-13 Qnx Software Systems Limited System for detecting speech with background voice estimates and noise estimates
US8170875B2 (en) * 2005-06-15 2012-05-01 Qnx Software Systems Limited Speech end-pointer
US7844453B2 (en) 2006-05-12 2010-11-30 Qnx Software Systems Co. Robust noise estimation
US8335685B2 (en) 2006-12-22 2012-12-18 Qnx Software Systems Limited Ambient noise compensation system robust to high excitation noise
US8326620B2 (en) 2008-04-30 2012-12-04 Qnx Software Systems Limited Robust downlink speech and noise detector
US8850154B2 (en) 2007-09-11 2014-09-30 2236008 Ontario Inc. Processing system having memory partitioning
US8904400B2 (en) 2007-09-11 2014-12-02 2236008 Ontario Inc. Processing system having a partitioning component for resource partitioning
US8694310B2 (en) 2007-09-17 2014-04-08 Qnx Software Systems Limited Remote control server protocol system
US8209514B2 (en) 2008-02-04 2012-06-26 Qnx Software Systems Limited Media processing system having resource partitioning
CN103035243B (en) * 2012-12-18 2014-12-24 中国科学院自动化研究所 Real-time feedback method and system of long voice continuous recognition and recognition result
CN105913848A (en) * 2016-04-13 2016-08-31 乐视控股(北京)有限公司 Path storing method and path storing system based on minimal heap, and speech recognizer

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4980918A (en) * 1985-05-09 1990-12-25 International Business Machines Corporation Speech recognition system with efficient storage and rapid assembly of phonological graphs
EP0248377B1 (en) * 1986-06-02 1994-07-13 Motorola, Inc. Continuous speech recognition system
US5388183A (en) * 1991-09-30 1995-02-07 Kurzwell Applied Intelligence, Inc. Speech recognition providing multiple outputs

Also Published As

Publication number Publication date
CA2158064C (en) 2000-10-17
AU682177B2 (en) 1997-09-25
AU6382994A (en) 1994-10-24
WO1994023424A1 (en) 1994-10-13
NZ263223A (en) 1997-11-24
FI954572A0 (en) 1995-09-27
FI954572A (en) 1995-09-27
CN1120372A (en) 1996-04-10
HK1014390A1 (en) 1999-09-24
NO953895L (en) 1995-11-28
CN1196104C (en) 2005-04-06
KR100309205B1 (en) 2001-12-17
NO308756B1 (en) 2000-10-23
DE69416670D1 (en) 1999-04-01
JPH08508350A (en) 1996-09-03
SG47716A1 (en) 1998-04-17
CA2158064A1 (en) 1994-10-13
NO953895D0 (en) 1995-09-29

Similar Documents

Publication Publication Date Title
DE69416670T2 (en) LANGUAGE PROCESSING
DE69421077T2 (en) WORD CHAIN RECOGNITION
DE69705830T2 (en) VOICE PROCESSING
DE69420842T2 (en) VOICE RECOGNITION USING A TWO-WAY SEARCH METHOD
DE69514382T2 (en) VOICE RECOGNITION
DE3876379T2 (en) AUTOMATIC DETERMINATION OF LABELS AND MARKOV WORD MODELS IN A VOICE RECOGNITION SYSTEM.
DE69518723T2 (en) Reduction of the search space in speech recognition using phoneme boundaries and phoneme classes
DE3337353C2 (en) Speech analyzer based on a hidden Markov model
DE69225371T2 (en) Keyword recognition in a coherent text using two "Hidden Markov" models
DE69422097T2 (en) Training of combined chain models with minimal error rate
DE69620324T2 (en) Distinctive verification of statements for the recognition of related digits
DE69225173T2 (en) Speech recognition device
DE69519297T2 (en) METHOD AND DEVICE FOR VOICE RECOGNITION BY MEANS OF OPTIMIZED PARTIAL BUNDLING OF LIKELIHOOD MIXTURES
DE102007015497B4 (en) Speech recognition device and speech recognition program
DE69707876T2 (en) METHOD AND DEVICE FOR DYNAMICALLY SET TRAINING FOR VOICE RECOGNITION
DE2753277C2 (en) Method and device for speech recognition
DE102008017993B4 (en) Voice search device
DE69818231T2 (en) METHOD FOR THE DISCRIMINATIVE TRAINING OF VOICE RECOGNITION MODELS
DE69831114T2 (en) Integration of multiple models for speech recognition in different environments
DE69226796T2 (en) Temporal decorrelation method for interference-free speaker recognition
DE3876207T2 (en) VOICE RECOGNITION SYSTEM USING MARKOV MODELS.
DE69010941T2 (en) Method and device for the automatic determination of phonological rules for a system for recognizing continuous speech.
DE69323841T2 (en) Classification in speech recognition of isolated words into keywords and non-keywords
DE69029188T2 (en) Character recognition based on probability clustering
DE69524036T2 (en) DEVICE FOR DETECTING TALK TOPICS

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: CISCO TECHNOLOGY, INC., SAN JOSE, CALIF., US

8328 Change in the person/name/address of the agent

Representative=s name: BOSCH, GRAF VON STOSCH, JEHLE PATENTANWALTSGESELLS

8328 Change in the person/name/address of the agent

Representative=s name: BOSCH JEHLE PATENTANWALTSGESELLSCHAFT MBH, 80639 M