DE69009522T2 - Diagrammanalysator für stochastische Unifikationsgrammatik. - Google Patents

Diagrammanalysator für stochastische Unifikationsgrammatik.

Info

Publication number
DE69009522T2
DE69009522T2 DE69009522T DE69009522T DE69009522T2 DE 69009522 T2 DE69009522 T2 DE 69009522T2 DE 69009522 T DE69009522 T DE 69009522T DE 69009522 T DE69009522 T DE 69009522T DE 69009522 T2 DE69009522 T2 DE 69009522T2
Authority
DE
Germany
Prior art keywords
grammar
spoken
state
symbols
recognizing
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
Application number
DE69009522T
Other languages
English (en)
Other versions
DE69009522D1 (de
Inventor
Charles T Hemphill
Joseph W Picone
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.)
Texas Instruments Inc
Original Assignee
Texas Instruments Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Texas Instruments Inc filed Critical Texas Instruments Inc
Application granted granted Critical
Publication of DE69009522D1 publication Critical patent/DE69009522D1/de
Publication of DE69009522T2 publication Critical patent/DE69009522T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related 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
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/183Speech classification or search using natural language modelling using context dependencies, e.g. language models
    • G10L15/19Grammatical context, e.g. disambiguation of the recognition hypotheses based on word sequence rules
    • G10L15/193Formal grammars, e.g. finite state automata, context free grammars or word networks
    • 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/18Speech classification or search using natural language modelling
    • G10L15/183Speech classification or search using natural language modelling using context dependencies, e.g. language models
    • G10L15/19Grammatical context, e.g. disambiguation of the recognition hypotheses based on word sequence rules
    • G10L15/197Probabilistic grammars, e.g. word n-grams

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Probability & Statistics with Applications (AREA)
  • Machine Translation (AREA)
  • Document Processing Apparatus (AREA)

Description

  • Die Erfindung betrifft Schnittstellen für gesprochene Sprache und speziell einen Prozessor für gesprochene Sprache, der einen Karten- oder Diagramm-Parser bzw. -Analysator enthält, der Regel- und Beobachtungs-Wahrscheinlichkeiten mit stochastischen Vereinheitlichungs-Grammatiken vereinigt.
  • Beschreibung des verwandten Standes der Technik
  • Es war Ziel kürzlicher Forschung, eine Maschine so auszubilden, daß sie gesprochene Sprache verstehen kann, und zwar möglicherweise über eine enge Kopplung zwischen Sprach- oder Sprech- und natürlichen Sprachensystemen. Die durch diese Kopplung auferlegte Schwierigkeit besteht darin zu versuchen, statistische Sprachinformationen mit natürlichen Sprach-Grammatiken zu integrieren. Darüber hinaus haben sich Sprach- oder Sprechsysteme dahingehend entwickelt, daß sie sich weitreichend auf grammatikalische Einschränkungen stützen, um genau eine verbundene oder zusammenhängende Sprache zu erkennen.
  • Die Sprachformgebung wurde zu einem wesentlichen Element bei hochqualitativen, sprecherunabhängigen, zusammenhängenden Sprachsystemen. Bis vor kurzem wurden in Spracherkennungssystemen hauptsächlich Finit-Zustand-Automaten bzw. Maschinen mit Eigenschaften lebender Wesen (FSAs) als das Sprachmodell verwendete. Diese Modelle bieten eine wirksame Verarbeitung, eine einfache Anpassung an Beobachtungs-Wahrscheinlichkeiten und erlauben einfache Übungstechniken, um Übergangs-Wahrscheinlichkeiten zu erzeugen. Versuche, gesprochene Sprache mit FSAs nachzubilden, führten zu stochastischen Sprachmodellen, wie Bigrams und Trigrams. Diese Modelle führen zu guten Erkennungsergebnissen, wenn die Komplexität minimal gehalten werden kann, sie schließen jedoch jegliche direkte Unterstützung für gesprochene Sprachensysteme aus, indem sie die semantische Ebene beseitigen oder eliminieren.
  • Sprachenmodelle haben sich traditionsgemäß als wertvoll in natürlichen Sprachensystemen erwiesen, jedoch lediglich während des letzten Jahrzehnts wurden rechnerorientierte, deklarative oder Prozedur-Grammatik-Formalisierungen weitreichend verfügbar. Diese Formalisierungen, die allgemein bekannt sind als Vereinheitlichungs-Grammatiken, bieten eine große Flexibilität hinsichtlich der Verarbeitung von sowohl einer automatischen Syntaxanalyse (parsing) als auch einer Generierung. Die Vereinheitlichungs-Grammatiken haben eine enge Integration von Syntax, Semantik und Pragmatik ermöglicht. Diese Grammatiken sind speziell für Sprach-Sprechsysteme bedeutsam, da syntaktische, semantische und pragmatische Zwänge während der Verarbeitung gleichzeitig angewendet werden müssen. Rede- und Bereichs- Zwänge können dann die Zahl der Hypothesen einschränken, um auf niedrigeren Ebenen Betrachtungen anzustellen, wodurch die Ausführung oder Qualität stark verbessert wird.
  • Es wurden verschiedene Anstrengungen unternommen, um kontext-freie Grammatiken (CFGs) und Vereinheitlichungs-Grammatiken (UGs) mit statistischen akustischen Informationen zu kombinieren. Lose gekoppelte Systeme, wie Aufbau- (bottom-up)-Systeme, oder Wortgitter-Parser produzierten nominelle Ergebnisse in erster Linie aufgrund von Zeitausrichtproblemen. Von oben nach unten verlaufende Zwänge von CFG's wurden mit der Sprache integriert unter Verwendung des Cocke-Younger-Kasami-(CYK)-Algorithmus, jedoch besitzt dieser Algorithmus eine schlechte mittlere Zeitkomplexität (kubisch). Diese Komplexität wird speziell nachteilig bei der rahmensynchronen automatischen Syntaxanalyse, wo die Zahl der in Betracht stehenden Eingangs-Hypothesen typischerweise groß ist. Zum Beispiel ist die durchschnittliche Spracheingabe einer Person 4-5 Sekunden lang, was dann 400-500 Rahmen entspricht. Wenn dies zur dritten Potenz erhoben wird, so führen diese 400-500 Rahmen zu 64.000.000-125.000.000 Verarbeitungsschritten, um eine Eingabe zu erkennen.
  • Ein erster Algorithmus, der eine N³-Zeitkomplexität besaß, war der CYK-Algorithmus. Bei natürlichen Sprachensystemen bedeutet N traditionsgemäß Worte; bei Sprechsystemen jedoch bedeutet N Rahmen, die dann die grundlegenden Zeiteinheiten sind, die bei der Spracherkennung verwendet werden. Der Algorithmus war insofern signifikant als dieser einen zeitsynchronen Algorithmus für die Spracherkennung vorsah, der die Genauigkeit verbesserte, da der Prozessor der Tatsache keine Beachtung schenken mußte, wie die Worte zusammenpassen. Der CYK-Algorithmus ist insofern sehr einfach, als dieser einer Matrix-Multiplikation ähnelt. Unglücklicherweise erfordert es immer eine N³-Zeit anstatt einer linearen Zeit, und zwar selbst dann, wenn eine reguläre Grammatik verarbeitet wird. Darüber hinaus ist der CYK-Algorithmus erschöpfend; er erweitert alles systematisch, ob dieses nun gebraucht wird oder nicht. Ein solcher Algorithmus verwendet einen großen Teil der Verarbeitungszeit und des Speicherraumes.
  • Der Earley-Algorithmus (J. Earley, "An Efficient Context- Free Parsing Algorithm", Comm. of the ACM, Vol. 13, Nr. 2, Februar 1970, Seiten 94-102) ist einer der wirksamsten Parsing-Algorithmen für eine geschriebene Satzeingabe und er kann auch in einer linearen Zeit für reguläre Grammatiken arbeiten. Er stellte eines der ersten Analyseverfahren (parsing) dar, welches eine zentrale Datenstruktur verwendet hat, die als ein Diagramm bekannt ist, um alle Zwischenergebnisse während des Analyseprozesses eines Satzes zu speichern. Nachfolgende Diagramm-Parser wurden umfangreich in natürlichen Sprachensystemen für geschriebene Eingabe verwendet.
  • Aufgrund der Variierbarkeit und Zweideutigkeit eines gesprochenen Eingangssignals wurden abgewandelte Algorithmen kreiert, um den Earley-Algorithmus zu verbessern und um diesen an eine gesprochene Spracherkennung anzupassen. Ein Beispiel eines solchen abgewandelten Algorithmus ist in der Literaturstelle von A. Paeseler "Modification of Earley's Algorithm for Speech Recognition", Proc. of NATO ASI, Bad Windsheim, 1987, gezeigt. Der Paeseler-Algorithmus verbindet die Wahrscheinlichkeiten in kontext-freien Grammatiken auf der Grundlage des Earley-Algorithmus, er tut dies jedoch nicht so optimal, und zwar aufgrund bestimmter Fehler in dem Algorithmus. Ein solcher Fehler erfordert die Berechnung von Wahrscheinlichkeiten. Für kontext-freie Grammatiken kann ein Nicht-Terminal-Symbol für ein anderes Nicht-Terminal-Symbol nochmals geschrieben werden oder umgeschrieben werden, ohne daß es durch ein Terminal-Symbol hindurchgehen muß. Wahrscheinlichkeiten können daher von vielen Richtungen her in der Grammatik auftreten. Um bei der Analyse (parsing) der Eingangsgröße weiter voranzuschreiten, müssen auch solche nachfolgenden Symbole erweitert werden. Um aber solche nachfolgenden Symbole gemäß dem Paeseler-Algorithmus zu erweiteren, muß die beste Wahrscheinlichkeit bekannt sein und andernfalls, wenn eine bessere Wahrscheinlichkeit erscheint, muß die Analyse wiederholt werden. Dies bedeutet potentiell einen exponentiellen Arbeitsaufwand, was aber höchst unerwünscht ist.
  • Die Literatur von H. Ney "Dynamische Programm-Spracherkennung unter Verwendung einer kontext-freien Grammatik", ICASSP 87, Vol. 1, Seiten 69-72, offenbart einen Algorithmus zum Erkennen und Analysieren von gesprochenen Wortketten einer kontext-freien Grammatik; der Algorithmus kann als eine probabilistische Erweiterung des CYK-Algorithmus betrachtet werden zusammen mit der Einbeziehung der nichtlinearen Zeitausrichtung.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Im Hinblick auf die obigen Probleme besteht der Hauptzweck der vorliegenden Erfindung darin, einen Diagramm-Parser vorzusehen, welcher Regel- und Beobachtungswahrscheinlichkeiten mit stochastischen Vereinheitlichungs-Grammatiken beinhaltet, um dadurch dem Sprachprozessor zu ermöglichen, die Genauigkeit des Verstehens einer gesprochenen Sprache zu erhöhen, indem alle Wissensquellen gleichzeitig ausgewertet werden, ferner die Sprache zu verbessern, welche wiedergegeben werden kann, und um die Wiedergabeleistung eines Spracherkennungsprozessors zu verbessern.
  • Ein weiteres Ziel der vorliegenden Erfindung besteht darin, einen Diagramm-Parser vorzusehen, der korrekt Hypothesen-Wahrscheinlichkeiten in einer effizienten Weise für CFGs und für stochastische Vereinheitlichungs-Grammatiken berechnet, indem er die Suche nach Erklärungen von Symbolen von sowohl von oben nach unten als auch von unten nach oben verschachtelt.
  • Ein weiteres Ziel besteht darin, einen Diagramm-Parser vorzusehen, der die Fähigkeit hat, richtig CFGs und UGs auf ein Spracherkennungsproblem in einer wirksamen Weise anzuwenden, und zwar unter Einsparung von Prozeßzeit und von Speicherraum. Es wird Zeit und Speicherraum dadurch eingespart, indem die Symbole nur einmal erweitert werden. Somit arbeitet der Prozessor häufig in einer linearen oder quadratischen Zeit und nur im schlechtesten Fall führt er N³-Verarbeitungsschritte aus, um eine Eingangsgröße zu erkennen, was im Gegensatz steht zu entweder laufend N³-Verarbeitungsschritten oder, was empirisch aus dem Paeseler- Algorithmus ersehen werden kann, exponentiellen Verarbeitungsschritten, von denen beide für Realzeit-Systeme ziemlich unerwünscht sind.
  • Die vorliegende Erfindung erweitert den Basis-CFG-Analysier-Algorithmus von Earley, um Regel- und Beobachtungswahrscheinlichkeiten unter der Verwendung von Vereinheitlichungs-Grammatiken zu verbinden. Dies behält die Earley- Algorithmus-Komplexität bei, während es gleichzeitig die Ergebnisse der Spracheingabe-Erkennung erweitert: linear für reguläre Grammatiken, quadratisch für unzweideutige CFGs und kubisch für allgemeine CFGs. Die Komplexitätsergebnisse gelten auch für Vereinheitlichungs-Grammatiken, die ein willkürliches Verschachteln von Merkmalen nicht enthalten. Aufgrund dieser Wirksamkeit trifft der Algorithmus auf eine Vielzahl von Grammatikebenen eines gesprochenen Sprachsystems zu.
  • Gemäß der Erfindung ist ein Verfahren offenbart, um Vereinheitlichungs-Grammatiken mit Regel- und Beobachtungswahrscheinlichkeiten zu verbinden, um einem Prozessor die Möglichkeit zu geben, ein Spracheingangssignal für mehrere Ebenen eines Sprachmodells zu erkennen. Gemäß der vorliegenden Erfindung werden Grammatiken und Bezugsdaten von einer Speicherplatte oder einem geeigneten Speicherraum in interne Datenstrukturen für einen Zugriff durch den Parser geladen. Die vorliegende Erfindung ermöglicht dann dem Diagrammprozessor, alle Startsymbole vorherzusagen und nach allen Eingangsrahmen zu suchen bzw. einer Analyse zu unterziehen. Die Analysefunktion erfordert, daß der Prozessor abwechselnd eine Vorhersage-Funktion und eine vollständige Funktion wiederholt, bis keine neuen Zustände mehr hinzugefügt werden können. Wenn sich der Prozessor auf der Boden-Grammatikschicht befindet, so wird er jegliche Terininal-Symbole gegenüber dem Eingangsrahmen markieren (score). Wenn sich der Prozessor nicht auf der Bodenschicht befindet, so wird er die Terminal-Symbole bei der nächstniedrigeren Schicht oder Ebene voraus sagen und wird damit fortfahren, die Analyse vorzunehmen. Der Prozessor tastet Beobachtungen von einer niedrigeren Grammatikschicht ab und führt sie in die laufende Grammatikschicht ein. Er vervollständigt die aktiven Zustände, sobald neue komplette Zustände verfügbar werden und führt die kompletten Zustände von den Symbolen der laufenden Grammatikschicht zur nächsthöheren Grammatikschicht zurück.
  • Gemäß der vorliegenden Erfindung werden Wahrscheinlichkeiten zu den Hypothesen zugeordnet, die als nächstes zu erforschen gewünscht sind. Es gelangt auch eine Strahlbeschneidungstechnik zur Anwendung, die auf dem Gebiet gut bekannt ist und auch eine verzögerte Festschreibung bei der Treffer-Berechnung zur Anwendung, um das wahrscheinlichste richtige Ansprechverhalten (Spracherkennung) zu bestimmen. Eine verzögerte Festschreibung führt nicht zu einer fortlaufenden Berechnung der besten Wahrscheinlichkeit, jedoch werden stattdessen Erinnerungszeiger für die früheren Zustände gesetzt, die ein bestimmtes Symbol erfordern, so daß dann, wenn der Prozessor die Wahrscheinlichkeit wissen muß, er eine Rückverfolgung vornehmen kann und dann entscheiden kann, wobei er alle Informationen dafür zur Hand hat, welches nun tatsächlich die höhere Wahrscheinlichkeit ist.
  • Diese und weitere Merkmale und Vorteile der Erfindung ergeben sich für den Fachmann aus der folgenden detaillierten Beschreibung einer bevorzugten Ausführungsform unter Hinweis auf die beigefügten Zeichnungen.
  • BESCHREIBUNG DER ZEICHNUNGEN
  • FIG. 1 ist ein Blockschaltbild, welches einen Spracherkennungsprozessor zeigt, der die vorliegende Erfindung verwendet;
  • FIG. 2 ist ein Stapel- oder Schichtdiagramm, welches eine mögliche Grammatik-Schichtstruktur und -Positionierung, wie sie bei der vorliegenden Erfindung verwendet wird, veranschaulicht;
  • FIG. 3A, 3B, 3C ist ein Beispiel zur Veranschaulichung einer rahmensynchronen Analyse bzw. Syntaxanalyse unter Verwendung von Wahrscheinlichkeiten, die bei der vorliegenden Erfindung verwendet werden;
  • FIG. 4A, 4B, 4C, 4D ist ein Beispiel, welches eine typische links-rekursive Regel zeigt, wobei Regel-Wahrscheinlichkeiten veranschaulicht sind, die gemäß der vorliegenden Erfindung richtig berechnet wurden; und
  • FIG. 5 eine graphische Darstellung ist, welche die Wirkung des Diagramm-Parsings beim Beschneiden zeigt, wie es bei der vorliegenden Erfindung verwendet wird.
  • DETAILLIERTE BESCHREIBUNG EINER BEVORZUGTEN AUSFÜHRUNGSFORM
  • Die vorliegende Erfindung offenbart ein Verfahren, welches einen Algorithmus verwendet (weiter unten erläutert), der einen Parsing-Unteralgorithmus enthält, um die zentrale Datenstruktur eines Sprech-Sprachenprozessors zu beeinflussen. Wie in Fig. 1 zu ersehen ist, empfängt eine Eingabevorrichtung 10 eine Eingangsgröße von einem Anwender und überträgt die Eingangsgröße über ein Verbindungseleelement 12 zu dem Prozessor 14. Der Prozessor 14 enthält eine zentrale Datenstruktur, die als ein Diagramm 24 (nicht gezeigt) bekannt ist, wo der Algorithmus ausgeführt wird. Der Algorithmus instruiert den Prozessor 14, eine Grammatik, ein Lexikon, Wahrscheinlichkeiten und andere geeignete Betriebsdaten von dem Prozessor-Speicher 16 zu laden. Der Prozessor 14 ist über das Verbindungselement 18 in Verbindung mit dem Prozessor-Speicher 16. Nachdem der Prozessor 14 den Algorithmus vervollständigt hat und die Eingangsgröße von der Eingabevorrichtung 10 identifiziert hat, überträgt der Prozessor 14 eine Ausgangsgröße zur Ausgabevorrichtung 22, und zwar über das Verbindungselement 20.
  • Die Grammatik enthält Regeln, welche die geeignete verwendete Grammatik definieren und ist auf dem Gebiet der rechnerischen Linguistik gut bekannt. Das Lexikon enthält Definitionen von Terminal-Symbolen der Grammatik. Diese Terminal-Grammatik-Symbole sind in bevorzugter Weise Wortklassifizierungs-Deskriptoren, wie beispielsweise Verb, Hauptwort und Artikel mit einer syntaktischen und semantischen Information. Den Ausdrücken des Lexikons sind Merkmale zugeordnet, wie beispielsweise Zeitform, Mehrzahl oder Bestimmtheiten. Einige Elemente des Lexikons enthalten detaillierte Beschreibungen der Typen der Worte, die in bestimmten Umständen Gültigkeit haben. Die tatsächlichen Worte, die auch Atome genannt werden, werden irgendwo anders definiert, wie beispielsweise in einer Wissensbasis.
  • Die Grammatik und das Lexikon können zusammengenommen compiliert werden, ohne Bezugnahme auf einen bestimmten Bereich. Das Ergebnis besteht darin, eine gesprochene Sprachbezugsgröße zu definieren, die eine ziemlich komplexe Untermenge einer Sprache sein kann. Da die Regeln für die Grammatik und das Lexikon nur auf Worttypen Bezug nehmen, ist die Zahl der Regeln relativ klein, und zwar selbst bei der Ausführungszeit, so daß diese schnell laufen.
  • Es sei darauf hingewiesen, daß die "Eingabe" gesprochen, geschrieben und getippt usw. sein kann. "Eingabevorrichtung" kann ein Terminal, ein Mikrophon, ein Phonograph usw. sein. "Ausgang" kann eine Prozessor-Antwort sein, die auf einen Schirm geschrieben ist, eine mündliche Antwort des Prozessors, eine Prozessoraktion usw. Die "Ausgabevorrichtung" kann aus einem Bildschirm, einem anderen Prozessor, einem Audio-Lautsprecher, einem Roboterarm usw. bestehen. Bei der Verwirklichung der bevorzugten Ausführungsform der vorliegenden Erfindung wird die Eingabe gesprochen, die Eingabevorrichtung besteht aus einem Mikrophon, die Ausgabe und die Ausgabevorrichtung umfassen eine Prozessor-Antwort, die auf einem Bildschirm geschrieben ist. Diese Ausführung ist jedoch nicht so zu verstehen, daß sie die vorliegende Erfindung in irgendeiner Weise einschränkt.
  • Bevor der Algorithmus der vorliegenden Erfindung betrachtet wird, sind zwei Definitionen erforderlich. Die erste definiert eine stochastische Vereinheitlichungs-Grammatik, die auf der Definition der stochastischen kontext-freien Grammatik basiert und durch die Verallgemeinerung beschrieben wird, daß die Symbole nicht auf Atom-Symbole beschränkt sind, sondern Merkmalswert-Paare von Merkmalssätzen sein können. Speziell ist eine "stochastische Vereinheitlichungs-Grammatik" eine Vierergruppe (four-tuple) Gs=(N,T,Ps,S), wobei N und T endlich sind und Sätze von Nicht-Terminals und Terminals sind, S N der Satz von Startsymbolen ist, und Ps ein endlicher Satz von stochastischen Produktionen ist, von denen jede die Form hat A, p T &alpha;, wobei A N und &beta; (N U T)*, und wobei p die Wahrscheinlichkeit der Anwendung der Regel ist. Es sei angenommen, daß der Satz der Wahrscheinlichkeiten von allen k stochastischen Produktionen in Ps mit A auf der linken Seite gleich ist (p A,piT&beta;i,i=l,...,k). Dann ist 0< Pi &le;1 und
  • p = 1. Die Nicht-Terminals und die Terminals sind Merkmalswert-Paare.
  • Als nächstes definiert man einen "Merkmalssatz" als einen Satz von "Merkmalswert-Paaren" der Form F:V, wobei f eine Konstante ist (O-ary-Funktion oder Atom-Symbol) und wobei V entweder eine Konstante, eine Variable oder ein Merkmalssatz ist. Ein Merkmalssatz kann mit einer Variablen als Index versehen werden unter Verwendung der Schreibweise X+FS, wobei X eine Variable ist und FS ein Merkmalssatz ist. Die Variable kann sonst irgendwo verwendet werden, um das Auftreten des gleichen Merkmalssatzes zu bezeichnen.
  • Die bevorzugte Ausführungsform der vorliegenden Erfindung stellt sich wie folgt dar:
  • EINGABE:
  • Ein Vektor der Grammatik, G, Go,...Gl.
  • Ein Endungsrahmen n.
  • AUSGABE:
  • Eine Matrix von Zustandssätzen E, l-Reihen und n-Spalten.
  • Die beste Markierung (score) für S von Go.
  • VERFAHREN:
  • 1. Es sei i=0, 1=0, o=0,0 (log Wahrscheinlichkeit). Mache El,o leer für alle l.
  • 2. Für jedes s S, sage voraus [i,_,s,_,_,_,_, o, o].
  • 3. Wenn i=n und [O,p,s,&alpha;,j,&epsi;,i, o, ] El,n, wobei s S, dann führe zurück E und .
  • 4. Analysiere (parse) (i,E,l).
  • 5. Gehe zu (3).
  • PARSE: EINGABE:
  • Die Matrix der Zustandssätze E, eine Schicht l und ein Rahmenindex i.
  • AUSGABE:
  • Ein Extra-Zustandssatz in E, El,i+1.
  • VERFAHREN:
  • 1. Wiederhole die folgenden zwei Schritte, bis keine neuen Zustände addiert werden können:
  • (a) Sage voraus
  • (b) Vervollständige
  • 2. Hypothetisiere.
  • 3. Taste ab.
  • 4. Setze i=i+1
  • 5. Wiederhole die folgenden zwei Schritte, bis keine neuen Zustände hinzugefügt werden können:
  • (a) Sage voraus
  • (b) Vervollständige
  • Bei der Verwirklichung des oben angegebenen Algorithmus liest der Prozessor einen Vektor der Grammatiken, der eine Anzahl von Grammatikschichten oder Ebenen wiedergibt. Wenn man kurz Fig. 2 betrachtet, so ist dort ein Beispiel für Grammatikschichten gezeigt. Die höchste Schicht ist die Satzgrammatikschicht O. Unter dieser ist eine Wortgrammatikschicht 1 und unter dieser ist eine Phonem-Grammatikschicht 2. Die nächstniedrigere gezeigte Schicht ist eine Phon-Grammatikschicht 3. Jede niedrigere Schicht enthält engere und engere Abschnitte der eingegebenen Daten, bis die niedrigste Schicht oder die Bezugs-Rahmengrammatik- Schicht 1 erreicht ist.
  • Ein Bezugsrahmen ist die grundlegende Zeiteinheit, die durch den Sprachentwickler gesetzt wird. Beispielsweise kann die Grundzeiteinheit 20 Millisekunden betragen. Dies bedeutet, daß alle 20 Millisekunden der Prozessor Sprachdaten charakterisiert, und zwar mit einem Vektor gemäß Gleitkommamerkmalen der Länge 18 oder ähnlicher Größe von verschiedenen Merkmalen des Sprachsignals, wobei der Prozessor solche Eigenschaften oder Merkmale an die erwarteten Daten oder Symbole anpaßt, die Worten entsprechen.
  • Um erneut auf den Algorithmus einzugehen, so erzeugt der Prozessor, bevor er die Eingabe vervollständigt hat, eine Ausgangsgröße einer Matrix von Zustandssätzen E, wobei l- Reihen der Zahl der Schichten entsprechen und N-Spalten der Zahl der Eingangsrahmen der Sprache entsprechen. Darüber hinaus gibt der Prozessor eine Marke (score) für die beste Satzerklärung bei der Grammatikschicht O (Figur 2) aus, welches die Satzschicht-Grammatik ist.
  • Nach dem Lesen des Vektors der Grammatiken, gibt der Prozessor bei der bevorzugten Ausführungsform dann einen Endungsrahmenindikator n ein. Obwohl dies nicht erforderlich ist, wird dadurch der Algorithmus mehr vervollständigt. Darüber hinaus gibt es andere Mittel, durch die der Endpunkt dem Prozessor angezeigt werden kann.
  • An dieser Stelle initialisiert der Prozessor alle Zustandssätze, um bei allen Schichten des ersten Rahmens eine Entleerung vorzunehmen und setzt die Anfangs-Wahrscheinlichkeit auf 0,0, was eine logarithmische Wahrscheinlichkeit ist. Der Prozessor setzt die Schicht auf O (er startet bei der Satz-Grammatikschicht) und setzt den Rahmen auf O. Dadurch wird die Initialisierung vervollständigt. Für jedes Startsymbold der Grammatik sagt der Prozessor die laufende Anfangs- und Endwahrscheinlichkeit des Rahmens als 0,0 voraus.
  • Wenn der Prozessor das Ende der Eingabe an dieser Stelle erreicht hat, was unwahrscheinlicherweise das erstemal ist, daß der Prozessor durch den Algorithmus voranschreitet, und wenn der Prozessor einen Zustand gefunden hat, der einem Startsymbol entspricht, welches vervollständigt ist, so kann der Prozessor dann den vollständigen oder gesamten Eingangssatz erläutern und kann diesen Zustand und dessen Markierung (score) ausgeben. Der Prozessor führt dann eine automatische Analyse durch, falls der Startrahmen, der Zustandssatz und die Schicht gegeben sind.
  • Bei dem Analysealgorithmus gibt der Prozessor die Matrix der Zustandssätze, eine Schicht 1 und einen Rahmenindex i ein und gibt einen Extrazustand für die nächste Eingangsrahmenanfrage i+1 aus. Dieser Zyklus wird so lange wiederholt, bis keine neuen vorausgesagten und vervollständigten Zustände hinzugefügt werden. Der Zyklus führt zur Erzeugung einiger Terminal-Symbole, die bei der nächstniedrigeren Grammatikschicht hypothetisiert werden. Der Prozessor hypothetisiert die Terminal-Symbole von dieser Schicht als Startsymbole bei der nächstniedrigeren Grammatikschicht. Er führt einen Satz von Beobachtungen, die abgetastet wurden, in die Wartezustände zurück. Bei der bevorzugten Ausführungsform wird der Rahmenzähler dann inkrementiert, da jeder Zustand, der vervollständigt wird, beim nächsten Rahmen dazu führen wird. Es sei jedoch darauf hingewiesen, daß der Rahmenzähler zu anderen Zeitpunkten während der Ausführung des Algorithmus inkrementiert werden kann, was davon abhängt, auf welche Weise man wünscht, mit den Rahmen Schritt zu halten. An dieser Stelle werden entweder die Zustände vervollständigt oder werden als Beobachtungen zu der nächsthöheren Grammatikschicht berichtet. Sie können auch noch aktiv sein (nicht vervollständigt) und in eine anstehende Liste eingebracht werden, um während des nächsten Zyklusses verarbeitet zu werden.
  • Unter erneutem Hinweis auf Fig. 2 sieht der Prozessor nach der eingegebenen Grammatik und stellt fest, daß es dort ein Symbol, beispielsweise S, gibt, welches einem Satz entspricht. Der Prozessor schreitet dann zu der Analysefunktion (Parsing) voran, macht die Voraussage und Vervollständigung und findet heraus, daß einige Worte benötigt werden, welche Terminal-Symbole in der Satz-Grammatikschicht sind. Der Prozessor ruft dann den Hypothetisierer mit diesem Satz von Worten, die auch Startsymbole bei der nächstniedrigeren Schicht - in diesem Fall der Schicht 1 - sind. Der Prozessor macht dann Voraussagen und vervollständigt die Grammatikregeln für die Worte, die zusammengesetzt sind aus Phonems und wenn er den Satz der Phonems findet, die Terminal-Symbole sind, ruft er sich selbst auf der Grammatikschicht 2, die Phonem-Symbole als Startsymbole aufweist. Dies wird bis zu der Schicht fortgesetzt, die Hidden-Markov-Model-(HMM)-Grammatiken enthält. Die HMM-Grammatiken besitzen Bezugsvektorsymbole, welche Bezugsvektoren in Form von deren Terminal-Symbolen entsprechen. Der Prozessor markiert dann diese Bezugsvektoren und erhält Wahrscheinlichkeiten für den Rahmen und führt diejenigen als Beobachtungen zur nächsthöheren Schicht zurück. Solche Beobachtungen werden dann in diese nächsthöhere Schicht eingelesen. Während der nächsten Iteration macht der Prozessor Voraussagen und vervollständigt solche Zustände, die vorangeschritten sind. Dies wird fortgesetzt, bis durch die gesamte Eingangsgröße hinauf zur Satz-Grammatikschicht O vorangeschritten ist und S über mehrere Zeitrahmen vorangeschritten ist, um alle Eingangsdaten abzudecken. An dieser Stelle hat der Prozessor seine automatische Analyse (Parsing) vervollständigt und gibt seine Hypothese der gesprochenen Eingangsgröße aus.
  • Es gibt vier Grundfunktionen zusätzlich zur automatischen Analyse (Parsing) und zum Berechnen in Verbindung mit der bevorzugten Ausführungsform nach der vorliegenden Erfindung; drei von diesen verwenden eine andere Funktion, die Addieren genannt wird. Erläuterungen jeder dieser unterschiedlichen Funktionen werden weiter unten gegeben. Es sei angenommen, daß ein Diagrammzustand die Form hat [f,p,A,&alpha;,j,&beta;,i, o, ], wobei f der Startrahmen ist, p die Produktionsnummer ist, A die linke Seite (LHS) der Regel ist, &alpha; eine Kette von Symbolen ist, die vervollständigt wurden, j die Länge von &alpha; ist, &beta; der Rest der rechtsseitigen (RHS) Symbole ist, i der Endungsrahmen dieses Zustands ist, o die Anfangswahrscheinlichkeit ist und die angesammelte Wahrscheinlichkeit ist. Es sei ferner angenommen, daß sich alle Symbole auf der Schicht 1 befinden, außer es ist irgendeine andere Anzeige gegeben.
  • Sage voraus
  • für alle [f,p,A,&alpha;,j,B,&alpha;,i, o, ]
  • und Regeln p':B&sub2;, &eta; T &gamma;
  • und vereinheitliche (B&sub1;, B&sub2;, B&sub3;)
  • addiere [i,p',B&sub2;,&epsi;,0,&gamma;,i, , +&eta;]
  • Um ein Symbol unter Verwendung der Vereinheitlichungs- Grammatiken vorauszusagen, nimmt der Prozessor wenigstens einen Zustand an, der darin besteht, nach einem Symbol B&sub1; zu suchen, und hat eine Regel p', die beginnt oder die auf ihrer linken Seite das Symbol B&sub2; hat, wobei B&sub1; und B&sub2; zusammengefaßt oder vereinheitlicht dazu dienen, um ein neues vereinheitlichtes Symbol B&sub3; zu erzeugen. Wenn B&sub1; und B&sub2; Atom-Symbole für kontext-freie Grammatiken sind, werden sie durch einen Standard zusammengefaßt. Als nächstes wird der Satz der Symbole zu dem Satz der unter Betrachtung stehenden Zustände addiert. Der neue Zustand beginnt an dem endenden Zustand des Eingangszustandes, der i, die Regel Nr. p', mit einem linksseitigen Symbold B&sub3;, der Zahl der als O verarbeiteten Symbole und einer leeren Folge oder Kette von zu bearbeitenden Symbolen ist, was die rechte Seite der Regel ist und dieser entspricht. Dies ist dasjenige, was der Prozessor sehen muß, um anzuzeigen, daß er B&sub3; gesehen bzw. gefunden hat. C ist eine Kette von O oder mehreren Terminals und Nicht-Terminals. In diesem Fall ist der Endungsrahmen auch der laufende Rahmen, da der Prozessor noch nichts verarbeitet hat. Die Anfangswahrscheinlichkeit ist dann die Endwahrscheinlichkeit plus der Regel-Wahrscheinlichkeit des Symbols B&sub2;. Dies ist besonders wichtig für links rekursive Regeln. Zieht man die Anfangswahrscheinlichkeit von der Endwahrscheinlichkeit ab, erhält man &eta;.
  • Vervollständige
  • für alle [k,p',B&sub1;,&gamma;,j',&epsi;,i, o, ]
  • und Regeln [f,p,A,&alpha;,j,B&sub2;,&beta;,k, o, ]
  • und vereinheitliche (B&sub1;, B&sub2;, B&sub3;)
  • addiere [f,p,A,&alpha;B&sub3;,j+1,i,uo, +( - o)]
  • Um das Symbol zu vervollständigen, gibt es einen Zustand, der zu einem Zeitpunkt k beginnt und zu einem bestimmten Zeitpunkt i endet und das Symbol V enthält, für welches die endgültige Wahrscheinlichkeit ist und wobei die Anfangswahrscheinlichkeit o ist. Es wird dann für jeden Zustand nach einem Symbol B&sub2; Ausschau gehalten, welches mit dem Symbol B&sub1; vereinheitlicht ist, um das Symbol B&sub3; zu erzeugen, wobei der Prozessor einen neuen Zustand erzeugt, der B&sub3; gesehen oder gefunden hat und der die gleiche Regelzahl hat, wie der Zustand, der vervollständigt wurde, ferner die gleiche Startzeit hat, wie der Zustand, der vervollständigt wurde, nämlich f, und wobei die Zahl der vervollständigten Symbole auf j+1 inkrementiert wird. Der Endungsrahmen ist der laufende Rahmen i, die Anfangswahrscheinlichkeit ist die Anfangswahrscheinlichkeit des vervollständigten Zustands o, und die Endwahrscheinlichkeit ist die Endwahrscheinlichkeit des Symbols B&sub3;, welches gefunden wurde und welches gleich ist - o und somit durch Subtrahieren der Startwahrscheinlichkeit für jeden Zustand bestimmt wird.
  • Hypothetisiere
  • für alle [f,p,A,&alpha;,j,b&beta;,i, o, ]
  • und Terminal (b,l), berechne (p, p')
  • sage voraus bei l+l [i, _,b, _, _, _, _, ', ']
  • schließlich rufe die Analyse auf bei l+l
  • Um zu hypothetisieren, entnimmt der Prozessor ein Terminal-Symbol b von einem Zustand, der zum Voranrücken oder Voranschreiten um einen gegebenen Zustand oder einen Satz von Zuständen erforderlich ist. Für alle Terminals "b" bei einer gegebenen Schicht l, berechnet der Prozessor eine neue Wahrscheinlichkeit auf der Grundlage der Endungswahrscheinlichkeit des Zustandes '. Dies ist Teil des verzögerten Festschreibungs-Algorithmus. Da sich der Prozessor bei einem Terminal-Symbol befindet, kann er dann diesen Algorithmus ausführen, da alle Zustände vorausgesagt worden sind und vervollständigt worden sind und da keine Informationen mehr verfügbar sind, diesen dazu zu befähigen, irgendwelche weiteren Zustände vorauszusagen oder zu vervollständigen. Der Prozessor führt eine Voraussage bei der Schicht l+l durch, was die nächstniedrigere Schicht ist. Dies wird durch das Symbol b bei dem laufenden Rahmen angezeigt, und zwar bei Anfangs- und Endwahrscheinlichkeiten '. Der Prozessor durchläuft dann eine Schleife nach unten zur Bodenschicht, schaltet um so viele Zustände als möglich voran und kehrt dann zur Analyseoperation (Parse) zurück. Dies zeigt eine wechselseitig rekursive Beziehung zwischen dem Hyothetisieren und dem Parsen.
  • Taste ab mach El,iH leer
  • für alle [f,p,A,&alpha;,j,b&sub1;&beta;,k, o, ]
  • für alle Beobachtungen bei l+l [k,pl&sbplus;&sub1;, b&sub2;,&gamma;,j',&epsi;,i+l, o, ]
  • und vereinheitliche (b&sub1;, b&sub2;, b&sub3;)
  • addiere [f,p,A,&alpha;b&sub3;,j+l,&beta;,i+l, o, +( o- )]
  • Abtasten (scan) ist im wesentlichen das gleiche wie vervollständigen. Der einzige Unterschied besteht darin, daß "Vervollständigen" sich mit Nicht-Terminal-Symbolen befaßt und "Abtasten" sich mit Terminal-Symbolen befaßt. Zuerst macht der Prozessor den Zustandssatz auf der Schicht l, dem Rahmen i+l leer. Für alle Beobachtungen auf der nächstniedrigeren Schicht, die beispielsweise b&sub1; auf der linken Seite haben und dieses b&sub1; mit einem gewissen Symbol b&sub1; in einem gewissen Zustand auf dieser Schichtebene vereinheitlicht ist, welcher dieses Terminal-Symbol benötigt, schreitet der Prozessor in dem Zustand voran, in dem er das vereinheitlichte Symbol b&sub3; in die voranschreitend vervollständigte Symbolliste in diesem Zustand an dem Anfangsrahmen des Zustandes, der vervollständigt wird, einsetzt. Dessen Wahrscheinlichkeit beträgt , das ist die Endungswahrscheinlichkeit dieses Zustandes plus der Endungswahrscheinlichkeit des vervollständigten Zustandes minus der Anfangswahrscheinlichkeit des vervollständigten Zustandes.
  • Addiere
  • die gegebenen [f,p,A&sub1;,&alpha;&sub1;,j,&beta;&sub1;,i, o, ]
  • wenn dort vorhanden ist [f,p,A&sub2;,&alpha;&sub2;,j,&beta;&sub2;,i, o, ] und fasse zusammen (A&sub1;, A&sub2;)
  • ersetze mit max( , ), symbolisch ansonsten hänge gegebenen Zustand an El,i
  • Um zu addieren, muß ein Zustand gegeben sein, der sich von dem laufenden Zustand in dem Zustandssatz unterscheidet. Wenn ferner angenommen wird, daß das neue linksseitige Symbol A&sub1; zusammengefaßt wird mit dem bestehenden Symbol A&sub2;, was bedeutet, daß der Prozessor etwas in mehr allgemeinerem Sinn zu hypothetisieren hat als bei der ersten Hypothese, ersetzt der Prozessor symbolisch die bestehende Wahrscheinlichkeit des bestehenden Zustands in dem Zustandssatz mit dem Maximum von und setzt als die Endungswahrscheinlichkeit des gegebenen Zustandes. Er bewertet nicht oder , sondern markiert stattdessen die Endung in dem bestehenden Zustandssatz, wobei er notiert, daß dieser addiert worden ist, bis der Prozessor zu einem späteren Zeitpunkt die Wahrscheinlichkeit nachsehen kann und das Maximum finden kann. Im anderen Fall fügt der Prozessor lediglich den gegebenen Zustand zu dein Zustandssatz auf der Ebene l des Rahmens i hinzu, da kein anderer bestehender Zusammenfassungszustand vorhanden ist.
  • Eine wirksame Verwirklichung des Algorithmus hängt von der Verwendung einiger Details ab, die in dem Werk von Earley dargestellt sind. Diese Details umfassen: Bereithalten einer verketteten Liste von Alternativen für jedes Nicht- Terminal, wenn sich der Prozessor in einem Vorhersageschritt befindet, so daß diese einfach gefunden werden können; die Zustände in dem Zustandssatz werden ebenfalls in einer verketteten Liste aufbewahrt oder gehalten, so daß sie aufeinanderfolgend verarbeitet werden können; die Zustände werden in einem Zustandssatz S durch ihre Startpunkt weitergeschaltet (indexed), wobei es einfach wird zu bestimmen, ob ein Zustand bereits addiert worden ist, so daß dies der Prozessor nicht erneut tut; Verarbeiten von Null- oder Leerproduktionen durch Herstellen einer Notierung, daß das Symbol bereits gesehen worden ist; und Halten aller Zustände in organisierter Form entsprechend dem Symbol, welches sie benötigen, so daß dann, wenn der Prozessor ein vollständiges Symbol besitzt, der diese wirksam finden kann. Darüber hinaus ist dem gesamten Programm eine Berechnungsfunktion inhärent. Wenn für Terminal-Symbole Wahrscheinlichkeiten gefunden werden, so ist es dem Berechnungsschritt zuzuordnen, Zyklen zu notieren und effektiv die Wahrscheinlichkeit eines gegebenen Zustandes zu finden.
  • Fig. 3 zeigt nun ein Beispiel einer rahmensynchronen Analyse (Parsing) unter Verwendung von Wahrscheinlichkeiten. In dem mit A bezeichneten Abschnitt ist eine einfache Grammatik gegeben, die aus einer Regel besteht, nämlich Satzumschreibungen auf ein Hauptwort und ein Verb. Es ist ein Hauptwort "Buben" und zwei Verben "schlafen" und "springen" gegeben.
  • Der Abschnitt der Fig. 3, der mit B bezeichnet ist, offenbart ein Wort-Gitter, welches die Eingangsgröße in das System bildet (in diesem Beispiel), wobei die Anfangs- und Endrahmen der Wort-Hypothesen gezeigt sind. Das Gitter enthält eine Vielzahl von Linien, welche die logarithmische Wahrscheinlichkeit zeigen, ein bestimmtes Wort über einen bestimmten Abstand oder Strecke von Daten zu erkennen und es wird eine solche Wahrscheinlichkeit in Form einer negativen Zahl angegeben. Gemäß dem Wortgitter, welches in dem Abschnitt B zu sehen ist, beträgt die Wahrscheinlichkeit der Auffindung von "Buben" vom Rahmen O zum Rahmen 2 gleich -,04, die Wahrscheinlichkeit der Auffindung von "Buben" von dem Rahmen O zum Rahmen 2 gleich -,03, die Wahrscheinlichkeit zum Finden von "schlafen" vom Rahmen 2 zum Rahmen 5 gleich -,05 und die Wahrscheinlichkeit zum Finden von "springen" vom Rahmen 3 zum Rahmen 5 gleich -,03.
  • Betrachtet man nun den Abschnitt der Fig. 3, der mit C bezeichnet ist, so wird bei dem Rahmen i=0 eine Vorhersage gemacht und es wird ein Zustand erstellt, basierend auf der Regel "Satz umschreiben auf Hauptwort und Verb" und es wird damit zum Zeitpunkt Null begonnen. Dies wird durch Subskript bevor dem S von O bezeichnet und einem Subskript nach dem Pfeil von O. Der Punkt darüber gibt die Stelle in der Regel an oder wie weit man durch die Regel hindurch vorangeschritten ist, die an dieser Stelle jedoch keine ist. Die Zahlen an dem Ende der Regel geben die logarithmischen Wahrscheinlichkeiten von jeweils den Anfangs- und Endwahrscheinlichkeiten wieder. Da der Parser bzw. Analysealgorithmus sich noch in dem gleichen Zustand befindet und überhaupt nichts ausgeführt hat, ist die Wahrscheinlichkeit beim Rahmen i=0 gleich Null. Der erste Zustand entstand aufgrund der Voraussage des Startsymbols S. Bei dem Rahmen O war ein Zustand vorhanden, welcher der Regel S entspricht und der Parser sagte die Regel für das Hauptwort voraus, welches ein Hauptwort ist und umgeschrieben werden muß in "Buben", welches die gleiche Anfangs- und Endzeit hat, wie der frühere Zustand von O und die gleiche Anfangs- und Endungswahrscheinlichkeiten des früheren Zustandes von 0,0 hat. Die Startwahrscheinlichkeit stellt die Wahrscheinlichkeit des Wunsches dar, diese Hypothese zu starten und die Endungswahrscheinlichkeit stellt die Tatsache dar, von der Hypothese so viel gesehen zu haben, als gesehen wurde.
  • Wenn der Parser so viel vorausgesagt und vervollständigt hat als dieser zustande bringt, hat er einen Satz von Terminal-Symbolen, die er benötigt, um zu sehen bzw. eine Sehoperation durchzuführen, bevor er fortfahren kann, und der Satz besteht aus einem Element, welches gleich ist "Buben". Er sieht dann bei dem Rahmen i=1 nach einer gewissen Eingangsgröße, sieht jedoch keine. Er fährt dann fort bei dem Rahmen i=2 nach einer gewissen Eingangsgröße Ausschau zu halten und sieht dann "Buben" von dem Rahmen 0 zum Rahmen 2, und zwar mit einer Anfangswahrscheinlichkeit von 0,0 und einer Endungswahrscheinlichkeit von -,04. Er tastet dann dieses Terminal-Symbol in den früheren Hauptwortzustand hinein ein und schiebt den Punkt hinter "Buben" voran, was dann den Akt des Sehens von "Buben" darstellt und legt einen Endungsrahmen von 2 auf diesen Zustand und stellt die endgültige Wahrscheinlichkeit des Zustands auf -,04 ein. Wenn er einmal ein vollständiges Hauptwort von dem Rahmen O zu dem Rahmen 2 besitzt, überprüft er, ob irgendwelche Symbole vorhanden sind, die bei Null geendet haben und die ein Hauptwort benötigt haben, welches er vervollständigen kann und er findet heraus, daß ein Startvorgang mit S in dem allerersten Zustand vorhanden war. Er erzeugt dann einen neuen Zustand, der anzeigt, daß er ein Hauptwort gesehen hat, in dem der Punkt nach dem n auftritt und er zeigt an, daß das Hauptwort sich zum Rahmen 2 hin erstreckt, und zwar mit der gleichen Wahrscheinlichkeit von -,04 als dessen Endungswahrscheinlichkeit. Wenn er alle Vorhersagen und Vervollständigungen ausgeführt hat, die er ausführen kann, sieht er, daß er ein Verb benötigt, was durch v angezeigt wird. Es existieren zwei Verb-Regeln, so daß er diese voraussagt. Eine ist "schlafen" und die andere ist "springen", die beide beim Rahmen 2 beginnen und die Anfangs- und Endwahrscheinlichkeiten von -,04 haben.
  • Der Parser sieht dann bei dem Rahmen i=3 für die Eingabe nach. Dort kann er "Buben" erneut mit der Wahrscheinlichkeit von -,03 sehen. Durch Abtasten der Eingabe "Buben" von dem Rahmen O zu dem Rahmen 3 erzeugt der Parser einen neuen Zustand, der in Fig. 3 als Zustand 7 angezeigt ist, was das Hauptwort "Buben" von dem Rahmen O zu dem Rahmen 3 ist, und zwar mit der Wahrscheinlichkeit von -,03. Dann prüft er, ob irgendwelche Zustände vorhanden sind, die bei 3 geendet haben, die, wie zuvor, ein Hauptwort benötigt haben, und er findet den gleichen benötigten Zustand, diesesmal endet jedoch das Hauptwort bei dem Rahmen 3 und hat eine Endungswahrscheinlichkeit von -,03. Die zwei Hauptwort-Hypothesen ("Buben" vom Rahmen O zum Rahmen 2 und "Buben" vom Rahmen O zum Rahmen 3) sind sich nicht schneidende oder überkreuzende Hypothesen, da sie unterschiedliche Stopp-Zeiten haben und daher getrennt bleiben.
  • Der Parser sieht dann, daß er bei dem Rahmen 3 ein Verb von dem Zustand 8 benötigt, so daß er dieses Verb voraussagt und die Zustände 9 und 10 erzeugt, die beide bei dem Rahmen 3 beginnen und bei dem Rahmen 3 enden. Einer der neu erzeugten Zustände benötigt das Terminal "schlafen" und einer benötigt das Terminal "springen", von denen beide die gleichen Anfangs- und Endwahrscheinlichkeiten von -,03 haben. Es sieht bei dem Rahmen i=4 nach Daten nach, und wenn er keine findet, sieht er bei dem Rahmen i=5 nach Daten nach. Dort sieht er dann sowohl "schlafen" als auch "springen", jedoch beginnt "schlafen" beim Rahmen 2 und "springen" beginnt beim Rahmen 3. Er erzeugt zwei neue Zustände: den Zustand 11 mit einer Anfangswahrscheinlichkeit von -,04 für "schlafen", beginnend beim Rahmen 2, und mit einer Endungswahrscheinlichkeit von -,09, und den Zustand 12 mit einer Anfangswahrscheinlichkeit von -,03 für "springen", beginnend beim Rahmen 3, und mit einer Endungswahrscheinlichkeit von -,06. Die Endungswahrscheinlichkeiten werden dadurch berechnet, indem die Anfangswahrscheinlichkeit zu der Wahrscheinlichkeit addiert wird, das bestimmte Wort von seinem Startrahmen bis zu seinem Endungsrahmen zu sehen. Der Parser besitzt nun zwei komplette Verb-Symbole und er erweitert oder sieht nach Zuständen, die ein Verb benötigen, welches entweder bei dem Rahmen 2 oder bei dem Rahmen 3 startet und er findet ein S, welches zurück sowohl dem Zustand 8 als auch dem Zustand 4 entspricht. Nun besitzt der Parser einen vollständigen Zustand, der dem Startsymbol S in dem Zustand 13 entspricht und einen, der dem Startsymbol S in dem Zustand 14 entspricht, obwohl die mittleren Zustände für jeden unterschiedlich sind. Da der Parser nun Wahrscheinlichkeiten von -,09 am Zustand 13 und -,06 am Zustand 14 hat, wählt er den besten davon aus, der dann -,06 ist und führt eine Suche rückwärts durch, und zwar durch den Pars-Zustand, um "Jungens springen" zu finden. Dieser Ausdruck wird dann ausgegeben, und zwar als die beste Erklärung des Spracherkennunsprozessors für die gegebene gesprochene Eingangsgröße. Die gewünschte Wahrscheinlichkeit ist diejenige, die den höchsten positiven Wert hat, oder wie in dem Beispiel, den geringsten negativen Wert hat.
  • Fig. 4 zeigt ein Beispiel einer typischen links-rekursiven Regel, wobei Regelwahrscheinlichkeiten gezeigt sind unter Verwendung einer Behandlung von Konjunktionen und Disjunktionen, wie "a oder b oder d". Wie aus dem Teil A der Fig. 4 ersehen werden kann, besitzt das gezeigte Beispiel vier Terminal-Symbole: a, b, d und "oder". Es sei angenommen, daß die Eingabe beim Rahmen O startet und einen Rahmen für jedes Wort von a oder b oder c bei Endung am Rahmen 5 hat. Der Baum oder Verzweigung im Teil B gibt das gewünschte Resultat dieses Analysierens (parse) wieder. Der Baum oder Verzweigung zeigt, daß zum Erkennen dieser Eingangsgröße der Parser eine linke rekursive Regel zweimal verwenden muß und die nicht links-rekursive S-Wahl, die lautet S geht zu C einmal am Boden. Der Baum oder Verzweigung zeigt auch die Regelwahrscheinlichkeiten. Die Wahrscheinlichkeit dieser Eingangsgröße zu analysieren bzw. zu parsen, ist gleich dem Produkt aller Regel-Wahrscheinlichkeiten, die in dem Teil C der Fig. 4 angegeben sind. Der Verlauf, der im Teil D der Fig. 4 zu ersehen ist, zeigt das Verhalten des Algorithmus mit diesen Regel-Wahrscheinlichkeiten gegenüber der Eingangsgröße. Die Eingangsgröße ist nach unten verlaufend in der Mitte des Abschnitts D (a oder b oder c) gezeigt und die verschiedenen Zustände, die nach jeder dieser Eingangsgrößen auftreten, sind auf der linken Seite gezeigt. Da der Diagramm-Parser Symbole nur einmal analysiert, kann er spezifisch links-rekursive Regeln behandeln. Um die Wahrscheinlichkeiten richtig zu addieren, ist es sehr wichtig, daß die Voraussagefunktion die Regel- Wahrscheinlichkeit zu der endgültigen Wahrscheinlichkeit des Zustands addiert und diese nicht zu der Anfangswahrscheinlichkeit des Zustandes hinzuaddiert. Jedesmal, wenn der Zustand verwendet wird, wird die Regel-Wahrscheinlichkeit dann in die nachfolgenden Zustände hinein addiert, und zwar unter Verwendung des früheren Zustandes. Am Boden des Programmverlaufs oder der Programmverfolgung kann erkannt werden, daß das eine Drittel die richtige Zahl von Malen (3) hervorbringt, die .4 zweimal hervorbringt und die .6 einmal hervorbringt, was genau die Zahl der Male wiedergibt, wie oft die links- und nicht-links-rekursive Regel angewandt wurde.
  • Fig. 5 zeigt eine graphische Darstellung, die die Wirkung der Diagrammanalyse (parsing) gemäß der vorliegenden Erfindung beim Beschneiden zeigt. Die graphische Darstellung berücksichtigt die Zeit gegenüber der logarithmischen Wahrscheinlichkeit der Hypothesen. Jeder der Punkte stellt das gleiche Hypothese-Symbol zu den Zeitpunkten ti und tk dar. Die oberste Linie gibt die beste Wahrscheinlichkeit irgendeines Symbols bei irgendeiner Erklärung oder Erläuterung wieder. Die Bodenlinie gibt die beste plus einen vorbestimmten logarithmischen Wahrscheinlichkeitswert oder Schwellenwert wieder. Wenn bei anderen Algorithmen die Wahrscheinlichkeit eines Symbols unter diesen Schwellenwert an irgendeiner Stelle abfällt, wird sie ausgeschieden. Da der Parser bei der Diagrammanalyse nach der vorliegenden Erfindung ein Symbol nur einmal analysiert bzw. parst bei einem gegebenen Zeitrahmen, und zwar ungeachtet, wie viele Male dieser benötigt wird, und ungeachtet, wie schlecht die Wahrscheinlichkeit, die dieser hat, ist, verwendet der Parser die beste Wahrscheinlichkeit für dieses Symbol, so lange es oberhalb der Beschneidungssschwelle liegt. Wenn ferner das beste Wahrscheinlichkeitssymbol vervollständigt wird, ordnet der Parser die unteren Wahrscheinlichkeitssymbole zu deren Anfangszustände zu. Er vervollständigt dann deren Zustände und je nach Fall, wie dies in Fig. 5 durch die sich kreuzenden Linien gezeigt ist, stellt sich dieses untere Wahrscheinlichkeitssymbol tatsächlich als die beste Erklärung der Daten heraus und der Prozessor ist befähigt, die Eingangsgröße dann richtig zu erkennen, während er eine Fehlerkennung bei anderen Algorithmen durchführen würde.
  • Obwohl eine spezifische Ausführungsform der Erfindung gezeigt und beschrieben wurde, sei darauf hingewiesen, daß eine Reihe von Variationen und anderen Ausführungsformen für den Fachmann auf dem vorliegenden Gebiet möglich sind. Somit soll die Erfindung nur durch den Rahmen der anhängenden Patentansprüche eingeschränkt sein.

Claims (19)

1. Verfahren zum Erkennen einer gesprochenen Eingabe, die mehrere Wörter repräsentiert, enthaltend die Schritte:
(a) Eingeben einer gewünschten gesprochenen Eingabe, die aus mehreren Grammatikschichten zusammengesetzt ist;
(b) Eingeben von Grammatiken mit End- und Nichtend-Symbolen zum Definieren zulässiger Satzstrukturen;
(c) Eingeben eines Lexikons mit Einträgen zur Definition von End-Symbolen der Grammatik, ausgedrückt mit linguistischen, syntaktischen oder semantischen Merkmalen;
(d) Erzeugen einer Matrix von Zustandsgruppen;
(e) Initializieren der Zustandsgruppen;
(f) Lesen der gewünschten gesprochenen Eingabe;
(g) Voraussagen von Anfangs- und Endwahrscheinlichkeiten für einen laufenden Rahmen für jedes Grammatik-Startsymbol;
(h) Analysieren der Start-Symbole entsprechend der gesprochenen Eingabe und der Grammatiken zur Erzeugung von Wahrnehmungen der Symbole auf der Basis einer verzögerten Festschreibungsberechnung des Voraussageschritts; und
(i) Erklären der gesprochenen Eingabe auf der Basis der Wahrnehmungen des Analyseschritts.
2. Verfahren zum Erkennen gesprochener Sätze nach Anspruch 1, ferner enthaltend die Schritte:
(j) Lesen eines Endrahmenanzeigers zwischen den Schritten (d) und (e); und
(k) Fortschalten eines Rahmenzählers nach dem Schritt (h).
3. Verfahren zum Erkennen gesprochener Sätze nach Anspruch 1, bei welchem der Schritt (h) des Analysierens die Schritte enthält:
(l) Vorhersagen eines gültigen nächsten Nichtend-Symbols, um dadurch wenigstens einen Zustand aus seiner entsprechenden wenigstens einen Regel gemäß der Grammatik zu erzeugen;
(m) Vollenden des wenigstens einen Zustandes, wenn Erklärungen für Symbole verfügbar werden;
(n) Erzeugen eines Wahrscheinlichkeitergebnisses für jeden der vollendeten Zustände;
(o) Wiederholen der Schritte (l) bis (n), bis keine neuen Zustände mehr erzeugt werden können;
(p) Analysieren von Endsymbolen aus den laufenden Grammatikniveau als Startsymbole für die nächstniedrigere Grammatikschicht, außer auf der niedrigsten Grammatikschicht;
(q) bei Vorliegen der niedrigsten Grammatikschicht, Vergleichen von Merkmalen der gesprochenen Eingabe mit Merkmalen der vorhergesagten nächsten lexikalischen Einträge;
(r) Einscannen von Beobachtungen aus den nächstniedrigeren Grammatikniveau in Wartezustände der laufenden Grammatikschicht;
(s) Wiederholen der Schritte (l) bis (r) bis keine neuen Zustände mehr vollendet werden können;
(t) Melden vollständiger Zustände entsprechend den Startsymbolen des laufenden Niveaus an der nächsthöheren Grammatikschicht;
(u) Analysieren der Startsymbole entsprechend der gesprochenen Eingabe und der Grammatiken zur Erzeugung von Wahrnehmungen der Symbole;
(v) Erklären der Eingabe auf der Basis der Ergebnisse des Analyseschritts.
4. Verfahren zum Erkennen gesprochener Sätze nach Anspruch 1, bei welchem die Zustandsgruppen 1 Zeilen entsprechend der Anzahl der Grammatikschicht und n Spalten entsprechend der Anzahl der Eingangssprachrahmen sind.
5. Verfahren nach Anspruch 3, bei welchem das Wahrscheinlichkeitsergebnis für den vollendeten Zustand die Wahrscheinlichkeit für das Vollenden von Zuständen in der Zustandsgruppe unter Verwendung bereits vollendeter Zustände in der Zustandsgruppe ist.
6. Verfahren nach Anspruch 3, bei welchem das Ergebnis dadurch berechnet wird, daß die Endwahrscheinlichkeit des aktiven Zustandes zur Differenz zwischen den End- und Anfangswahrscheinlichkeiten des vollendeten Zustands addiert wird, wobei der aktive Zustand der Zustand ist, der das Symbol benötigt, das der vollendete Zustand definiert.
7. Verfahren nach Anspruch 3, bei welchem ein vollendeter Zustand ein Zustand ist, der ein Segment der gesprochenen Eingabe vollkommen erklärt.
8. Verfahren zum Erkennen gesprochener Sätze nach Anspruch 3, ferner enthaltend die Schritte;
(w) Lesen eines Endrahmenanzeigers zwischen den Schritten (d) und (e); und
(x) Fortschalten eines Rahmenzählers nach dem Schritt (s).
9. Verfahren zum Erkennen gesprochener Sätze nach Anspruch 1, bei welchem die Grammatik eine stochastische Unifikations-Grammatik ist.
10. Verfahren zum Erkennen gesprochener Sätze nach Anspruch, bei welchem die Grammatik eine kontextfreie oder reguläre Grammatik ist.
11. Anordnung zum Erkennen eines gesprochenen Satzes, der mehrere Wörter repräsentiert, enthaltend:
- ein Verarbeitungsmittel;
- eine mit dem Verarbeitungsmittel gekoppelte Grammatik zum Definieren von Sätzen, ausgedrückt durch Elemente eines Sprachmodells;
- ein Lexikon zum Definieren von Elementen der Grammatik ausgedrückt in Symbolen;
- einen mit der Grammatik gekoppelten Analysator zum Kombinieren von Wörtern zu Teilsätzen, zum Erzeugen von Gruppen von Zuständen und zum Bestimmen vollendeter Zustände;
- eine mit der Grammatik und dem Verarbeitungsmittel gekoppelte Vorhersageeinheit zum Vorhersagen der Symbole gültiger, vom Analysator erzeugter nächster Elemente;
- eine Vollendungseinheit zum Erklären der Ergebnisse aus dem Analysator; und
- ein mit dem Prozessormittel gekoppeltes Ausgabemittel zum Erzeugen der durch die Vollendungseinheit entwickelten Erklärung.
12. Anordnung zum Erkennen eines gesprochenen Satzes nach Anspruch 11, ferner enthaltend ein Mittel zum Erzeugen einer Tabelle, wobei durch den Analysator, die Vorhersageeinheit und die Vollendungseinheit zum Speichern von Zwischenergebnisses ein Zugriff ausgeübt wird.
13. Anordnung zum Erkennen eines gesprochenen Satzes nach Anspruch 12, dadurch gekennzeichnet, daß die Tabelle Zustände und Zustandsgruppen umfaßt, wobei die Zustände durch den Analysator und die Vorhersageeinheit manipulierbar sind.
14. Anordnung zum Erkennen eines gesprochenen Satzes nach Anspruch 11, ferner enthaltend einen mit dem Analysator und der Vollendungseinheit gekoppelten Abtaster zum Lesen von Symbolen aus dem Analysator zur Vollendungseinheit.
15. Anordnung zum Erkennen eines gesprochenen Satzes nach Anspruch 11, ferner enthaltend eine Wissensbasis zum Liefern von Symbolen, wobei die Voraussageeinheit mit der Wissensbasis gekoppelt ist.
16. Anordnung zum Erkennen eines gesprochenen Satzes nach Anspruch 11, bei welchem das Sprachmodell stochastische Unifikations-Grammatiken enthält.
17. Anordnung zum Erkennen eines gesprochenen Satzes nach Anspruch 11, bei welchem das Sprachmodell kontextfreie oder reguläre Grammatiken enthält.
18. Anordnung zum Erkennen eines gesprochenen Satzes nach Anspruch 11, bei welchem das Verarbeitungsmittel ein Eingabemittel zum Aufzeichnen gesprochener Wörter und eine akustische Vorrichtung zum Transformieren gesprochener Wörter in ein durch das Verarbeitungsmittel lesbares Medium enthält.
19. Anordnung zum Erkennen eines gesprochenen Satzes nach Anspruch 11, bei welchem das Verarbeitungsmittel mit einem Übersetzungsmittel gekoppelt ist, das die gesprochene Eingabe empfangen und in ein für das Verarbeitungsmittel lesbares Medium umwandeln kann.
DE69009522T 1989-02-21 1990-01-29 Diagrammanalysator für stochastische Unifikationsgrammatik. Expired - Fee Related DE69009522T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US07/312,835 US4984178A (en) 1989-02-21 1989-02-21 Chart parser for stochastic unification grammar

Publications (2)

Publication Number Publication Date
DE69009522D1 DE69009522D1 (de) 1994-07-14
DE69009522T2 true DE69009522T2 (de) 1994-09-29

Family

ID=23213226

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69009522T Expired - Fee Related DE69009522T2 (de) 1989-02-21 1990-01-29 Diagrammanalysator für stochastische Unifikationsgrammatik.

Country Status (4)

Country Link
US (1) US4984178A (de)
EP (1) EP0384584B1 (de)
JP (1) JPH0320800A (de)
DE (1) DE69009522T2 (de)

Families Citing this family (64)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5222187A (en) * 1989-12-29 1993-06-22 Texas Instruments Incorporated Grammar-based checksum constraints for high performance speech recognition circuit
US5418717A (en) * 1990-08-27 1995-05-23 Su; Keh-Yih Multiple score language processing system
JPH04182000A (ja) * 1990-11-16 1992-06-29 A T R Jido Honyaku Denwa Kenkyusho:Kk 連続音声認識装置
US5365430A (en) * 1991-06-25 1994-11-15 At&T Bell Laboratories Method for parsing images
US5477451A (en) * 1991-07-25 1995-12-19 International Business Machines Corp. Method and system for natural language translation
US5267345A (en) * 1992-02-10 1993-11-30 International Business Machines Corporation Speech recognition apparatus which predicts word classes from context and words from word classes
EP0634042B1 (de) * 1992-03-06 2001-07-11 Dragon Systems Inc. Spracherkennungssystem für sprachen mit zusammengesetzten wörtern
US5537586A (en) * 1992-04-30 1996-07-16 Individual, Inc. Enhanced apparatus and methods for retrieving and selecting profiled textural information records from a database of defined category structures
GB9217886D0 (en) * 1992-08-21 1992-10-07 Canon Res Ct Europe Ltd Method and apparatus for parsing natural language
US5528491A (en) * 1992-08-31 1996-06-18 Language Engineering Corporation Apparatus and method for automated natural language translation
US6278967B1 (en) 1992-08-31 2001-08-21 Logovista Corporation Automated system for generating natural language translations that are domain-specific, grammar rule-based, and/or based on part-of-speech analysis
US6760695B1 (en) 1992-08-31 2004-07-06 Logovista Corporation Automated natural language processing
JPH0756957A (ja) * 1993-08-03 1995-03-03 Xerox Corp ユーザへの情報提供方法
US5524169A (en) * 1993-12-30 1996-06-04 International Business Machines Incorporated Method and system for location-specific speech recognition
JPH07210190A (ja) * 1993-12-30 1995-08-11 Internatl Business Mach Corp <Ibm> 音声認識方法及びシステム
US5621859A (en) * 1994-01-19 1997-04-15 Bbn Corporation Single tree method for grammar directed, very large vocabulary speech recognizer
US5642519A (en) * 1994-04-29 1997-06-24 Sun Microsystems, Inc. Speech interpreter with a unified grammer compiler
JPH0869470A (ja) * 1994-06-21 1996-03-12 Canon Inc 自然言語処理装置及びその方法
US5819221A (en) * 1994-08-31 1998-10-06 Texas Instruments Incorporated Speech recognition using clustered between word and/or phrase coarticulation
US5826241A (en) 1994-09-16 1998-10-20 First Virtual Holdings Incorporated Computerized system for making payments and authenticating transactions over the internet
US5724571A (en) * 1995-07-07 1998-03-03 Sun Microsystems, Inc. Method and apparatus for generating query responses in a computer-based document retrieval system
US6470306B1 (en) 1996-04-23 2002-10-22 Logovista Corporation Automated translation of annotated text based on the determination of locations for inserting annotation tokens and linked ending, end-of-sentence or language tokens
US5878385A (en) * 1996-09-16 1999-03-02 Ergo Linguistic Technologies Method and apparatus for universal parsing of language
US5991712A (en) * 1996-12-05 1999-11-23 Sun Microsystems, Inc. Method, apparatus, and product for automatic generation of lexical features for speech recognition systems
US6415319B1 (en) 1997-02-07 2002-07-02 Sun Microsystems, Inc. Intelligent network browser using incremental conceptual indexer
US6167377A (en) * 1997-03-28 2000-12-26 Dragon Systems, Inc. Speech recognition language models
US6138098A (en) * 1997-06-30 2000-10-24 Lernout & Hauspie Speech Products N.V. Command parsing and rewrite system
US6128596A (en) * 1998-04-03 2000-10-03 Motorola, Inc. Method, device and system for generalized bidirectional island-driven chart parsing
US6278968B1 (en) 1999-01-29 2001-08-21 Sony Corporation Method and apparatus for adaptive speech recognition hypothesis construction and selection in a spoken language translation system
US6282507B1 (en) 1999-01-29 2001-08-28 Sony Corporation Method and apparatus for interactive source language expression recognition and alternative hypothesis presentation and selection
US6356865B1 (en) 1999-01-29 2002-03-12 Sony Corporation Method and apparatus for performing spoken language translation
US6243669B1 (en) * 1999-01-29 2001-06-05 Sony Corporation Method and apparatus for providing syntactic analysis and data structure for translation knowledge in example-based language translation
US6266642B1 (en) 1999-01-29 2001-07-24 Sony Corporation Method and portable apparatus for performing spoken language translation
US6442524B1 (en) 1999-01-29 2002-08-27 Sony Corporation Analyzing inflectional morphology in a spoken language translation system
US6519562B1 (en) * 1999-02-25 2003-02-11 Speechworks International, Inc. Dynamic semantic control of a speech recognition system
US6374224B1 (en) 1999-03-10 2002-04-16 Sony Corporation Method and apparatus for style control in natural language generation
US6449589B1 (en) * 1999-11-16 2002-09-10 Microsoft Corporation Elimination of left recursion from context-free grammars
US6999917B1 (en) * 2000-02-22 2006-02-14 Microsoft Corporation Left-corner chart parsing system
GB2377059A (en) * 2000-03-17 2002-12-31 Ebay Inc Method and apparatus for facilitating online payment transactions in a network based transaction facility using multiple payment instruments
US7499875B1 (en) 2000-03-17 2009-03-03 Ebay Inc. Method and apparatus for facilitating online payment transactions in a network-based transaction facility using multiple payment instruments
US8706618B2 (en) 2005-09-29 2014-04-22 Ebay Inc. Release of funds based on criteria
US6704728B1 (en) * 2000-05-02 2004-03-09 Iphase.Com, Inc. Accessing information from a collection of data
US8478732B1 (en) 2000-05-02 2013-07-02 International Business Machines Corporation Database aliasing in information access system
US6714905B1 (en) * 2000-05-02 2004-03-30 Iphrase.Com, Inc. Parsing ambiguous grammar
US6711561B1 (en) * 2000-05-02 2004-03-23 Iphrase.Com, Inc. Prose feedback in information access system
US7031908B1 (en) * 2000-06-01 2006-04-18 Microsoft Corporation Creating a language model for a language processing system
US9699129B1 (en) 2000-06-21 2017-07-04 International Business Machines Corporation System and method for increasing email productivity
US8290768B1 (en) 2000-06-21 2012-10-16 International Business Machines Corporation System and method for determining a set of attributes based on content of communications
US6408277B1 (en) 2000-06-21 2002-06-18 Banter Limited System and method for automatic task prioritization
US6675159B1 (en) 2000-07-27 2004-01-06 Science Applic Int Corp Concept-based search and retrieval system
DE10051794C2 (de) * 2000-10-18 2003-04-17 Saymore Speech Operated System Verfahren zur eindeutigen Zuweisung eines Befehls und Verfahren zur Sprachsteuerung
US6983239B1 (en) * 2000-10-25 2006-01-03 International Business Machines Corporation Method and apparatus for embedding grammars in a natural language understanding (NLU) statistical parser
US7027974B1 (en) 2000-10-27 2006-04-11 Science Applications International Corporation Ontology-based parser for natural language processing
US7644057B2 (en) 2001-01-03 2010-01-05 International Business Machines Corporation System and method for electronic communication management
US6766316B2 (en) 2001-01-18 2004-07-20 Science Applications International Corporation Method and system of ranking and clustering for document indexing and retrieval
US7136846B2 (en) 2001-04-06 2006-11-14 2005 Keel Company, Inc. Wireless information retrieval
US7225183B2 (en) * 2002-01-28 2007-05-29 Ipxl, Inc. Ontology-based information management system and method
US7343372B2 (en) * 2002-02-22 2008-03-11 International Business Machines Corporation Direct navigation for information retrieval
US7529658B2 (en) * 2002-07-26 2009-05-05 Sankhya Technologies Private Limited Method for specifying equivalence of language grammars and automatically translating sentences in one language to sentences in another language in a computer environment
US7249019B2 (en) * 2002-08-06 2007-07-24 Sri International Method and apparatus for providing an integrated speech recognition and natural language understanding for a dialog system
US20050187913A1 (en) 2003-05-06 2005-08-25 Yoram Nelken Web-based customer service interface
US8495002B2 (en) * 2003-05-06 2013-07-23 International Business Machines Corporation Software tool for training and testing a knowledge base
RU2488735C2 (ru) * 2006-08-21 2013-07-27 Вестерн Пайпвей, Ллс Системы и способ для восстановления трубопровода
US20100228538A1 (en) * 2009-03-03 2010-09-09 Yamada John A Computational linguistic systems and methods

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
US4783803A (en) * 1985-11-12 1988-11-08 Dragon Systems, Inc. Speech recognition apparatus and method
US4852173A (en) * 1987-10-29 1989-07-25 International Business Machines Corporation Design and construction of a binary-tree system for language modelling

Also Published As

Publication number Publication date
EP0384584A2 (de) 1990-08-29
US4984178A (en) 1991-01-08
EP0384584A3 (en) 1990-11-07
JPH0320800A (ja) 1991-01-29
EP0384584B1 (de) 1994-06-08
DE69009522D1 (de) 1994-07-14

Similar Documents

Publication Publication Date Title
DE69009522T2 (de) Diagrammanalysator für stochastische Unifikationsgrammatik.
DE69937176T2 (de) Segmentierungsverfahren zur Erweiterung des aktiven Vokabulars von Spracherkennern
DE3876379T2 (de) Automatische bestimmung von kennzeichen und markov-wortmodellen in einem spracherkennungssystem.
DE69816676T2 (de) System und verfahren zur bestimmung und minimalisierung eines endlichen transducers zur spracherkennung
DE60109999T2 (de) Spracherkennung mittels lexikalischer Bäumen
DE69818796T2 (de) Maschinenorganisiertes verfahren und vorrichtung zum übersetzen einer wortorganisierten textquelle in einen wortorganisierten zieltext
DE4397100C2 (de) Verfahren zum Erkennen von Sprachsignalen und Spracherkennungssystem mit rekursiver Grammatik mit endlicher Zustandsanzahl
DE68923981T2 (de) Verfahren zur Bestimmung von Textteilen und Verwendung.
DE69028430T2 (de) Effektiver Einschränkungsalgorithmus für Spracherkennung nach dem Hidden-Markov-Modell
DE60123952T2 (de) Erzeugung von einem einheitlichen aufgabeabhängigen sprachmodell mittels informationsauffindungverfahren
DE3783154T2 (de) Spracherkennungssystem.
DE69725802T2 (de) Vorfilterung mittels lexikalischer Bäumen für die Spracherkennung
DE69823644T2 (de) Auswahl von superwörtern auf der basis von kriterien aus spracherkennung sowie sprachverständnis
DE69818231T2 (de) Verfahren zum diskriminativen training von spracherkennungsmodellen
DE19510083C2 (de) Verfahren und Anordnung zur Spracherkennung bei Wortkomposita enthaltenden Sprachen
DE60222093T2 (de) Verfahren, modul, vorrichtung und server zur spracherkennung
EP0299572A2 (de) Verfahren zur Erkennung von zusammenhängend gesprochenen Wörtern
EP1085499B1 (de) Erkennung einer in buchstabierter Form vorliegenden Sprachäusserungseingabe
DE602004004310T2 (de) System mit kombiniertem statistischen und regelbasierten Grammatikmodell zur Spracherkennung und zum Sprachverstehen
DE3786822T2 (de) Spracherkennungssystem.
DE60026366T2 (de) Spracherkennung mit einem komplementären sprachmodel für typischen fehlern im sprachdialog
EP0285211B1 (de) Verfahren zum Erkennen kontinuierlich gesprochener Wörter
EP1182646A2 (de) Verfahren zur Zuordnung von Phonemen
EP1012828B1 (de) Verfahren zur erkennung eines schlüsselworts in gesprochener sprache
DE60025687T2 (de) Vorrichtung zum Spracherkennung mit Durchführung einer syntaktischen Permutationsregel

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee