DE69829389T2 - Textnormalisierung unter verwendung einer kontextfreien grammatik - Google Patents

Textnormalisierung unter verwendung einer kontextfreien grammatik Download PDF

Info

Publication number
DE69829389T2
DE69829389T2 DE69829389T DE69829389T DE69829389T2 DE 69829389 T2 DE69829389 T2 DE 69829389T2 DE 69829389 T DE69829389 T DE 69829389T DE 69829389 T DE69829389 T DE 69829389T DE 69829389 T2 DE69829389 T2 DE 69829389T2
Authority
DE
Germany
Prior art keywords
text
context
content
free grammar
file
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
DE69829389T
Other languages
English (en)
Other versions
DE69829389D1 (de
Inventor
A. Fileno ALLEVA
J. Michael ROZAK
J. Larry ISRAEL
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.)
Microsoft Corp
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Publication of DE69829389D1 publication Critical patent/DE69829389D1/de
Application granted granted Critical
Publication of DE69829389T2 publication Critical patent/DE69829389T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/211Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • 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/26Speech to text systems
    • 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/1815Semantic context, e.g. disambiguation of the recognition hypotheses based on word meaning

Landscapes

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

Description

  • Fachgebiet
  • Die Erfindung betrifft allgemein Datenverarbeitungssysteme und insbesondere Textnormalisierung unter Verwendung einer kontextfreien Grammatik.
  • Hintergrund der Erfindung
  • Spracherkennungsvorrichtungen haben in den letzten Jahren an Popularität gewonnen. Eine Spracherkennungsvorrichtung weist normalerweise Software auf, die auf einem Computersystem ausgeführt wird, um gesprochene Wörter oder Phrasen (Wortverbindungen) zu erkennen. Die Spracherkennungsvorrichtung gibt im allgemeinen Text entsprechend ihrer Interpretation der gesprochenen Eingabe aus. Wenn beispielsweise ein Sprecher das Wort "Hund" ausspricht, erkennt die Spracherkennungsvorrichtung das gesprochene Wort und gibt den Text "Hund" aus.
  • Leider haben Spracherkennungsvorrichtungen bisher häufig Textausgaben erzeugt, die unpassend oder den Empfängern nicht vertraut sind: Wenn beispielsweise ein Sprecher die Phrase "einhundertsiebenundvierzig" ausspricht, dann gibt die Spracherkennungsvorrichtung "einhundertsiebenundvierzig" und nicht die Ziffernfolge "147" aus. Ähnliche unglückliche Textausgaben werden von Spracherkennungsvorrichtungen bei Eingaben erzeugt, die Daten, Zeiten, Geldbeträge, Telefonnummern, Adressen und Akronyme bezeichnen. Infolgedessen ist der Empfänger der Textausgabe gezwungen, den Text manuell zu bearbeiten, um ihn in eine akzeptablere Form zu bringen. Da Spracherkennungsvorrichtungen in Dokumentenerzeugungssoftware einbezogen sind, schränkt die Unfähigkeit der Spracherkennungsvorrichtungen, eine akzeptable Textausgabe zu erzeugen, den Nutzen dieser Software erheblich ein.
  • US-A-5 349 526 offenbart ein System und ein Verfahren zur Umsetzung nichtverarbeitbarer Satzelemente in verarbeitbare Satzelemente, bei dem ein Satz von Grammatikregeln zum Ersetzen von Satzelementen durch andere Elemente beschrieben ist. Ein sequentieller Vergleich zwischen jeder Grammatikregel und den Satzelementen wird dann durchgeführt, um eine Übereinstimmung zwischen einer Grammatikregel und einem oder mehreren zusammenhängenden Satzelementen zu finden. Es erfolgt dann ein Einsetzen des passenden Elements für die anderen Elemente aus der Grammatikregel. Ein solcher sequentieller Vergleich und ein solches Einsetzen setzt sich über die ganze Serie von Satzelementen fort, um den Satz vollständig in verarbeitbare Elemente umzusetzen.
  • Das IBM Technical Disclosure Bulletin, Vol. 27, Nr. 10, Oktober 1994 mit dem Titel "Handling Names and Numerical Expressions in a n-Gram Language Model" offenbart ein Verfahren zum Verbessern von n-Gram-Modellschätzwerten der Wahrscheinlichkeit, mit der ein Wort einem Namen oder einem numerischen Ausdruck (nicht unbedingt unmittelbar) folgt.
  • Zusammenfassung der Erfindung
  • Die Erfindung, wie sie in den Ansprüchen ausgeführt ist, überwindet die Begrenzung von bekannten Spracherkennungsvorrichtungen, indem sie eine Einrichtung zur Textnormalisierung bereitstellt. Die Normalisierung eines Textes erzeugt einen Ausgangstext, der für Empfänger akzeptabler ist. Die Normalisierung kann auch den Ersatz von Textinhalt durch Nichttextinhalt, z. B. Audioinhalt, Videoinhalt oder sogar ein Hypertextdokument, umfassen.
  • Gemäß einem ersten Aspekt der Erfindung wird ein Verfahren in einem Computersystem praktiziert, das eine Spracherkennungsmaschine zur Erkennung des Inhalts in einer Eingangssprache hat. Ein Text entsprechend einer Spracheingabe wird von der Spracherkennungsmaschine kommend durch das Computersystem empfangen. Eine kontextfreie Grammatik wird angewendet, um einen Ersatzinhalt für den empfangenen Text zu identifizieren. Der empfangene Text wird durch den Ersatzinhalt ersetzt.
  • Gemäß einem weiteren Aspekt der Erfindung wird eine Datei in einem Computersystem bereitgestellt, um Regeln einer kontextfreien Grammatik zur Normalisierung von Text aufzustellen. Der Text wird von einer Spracherkennungsvorrichtung empfangen, die Sprachabschnitte bei Spracheingabe erkennt. Der Text entspricht der Spracheingabe. Zumindest ein Abschnitt des Textes wird normalisiert, um den Abschnitt durch eine normalisierte alphanumerische Folge ("alphanumerisch", wie es in diesem Kontext verwendet wird, bedeutet ASCII und Unicode) zu ersetzen. Die Normalisierung weist den Schritt auf: Anwenden einer Regel aus der kontextfreien Grammatik, um den Abschnitt des zu normalisierenden Textes durch die normalisierte alphanumerische Folge zu ersetzen.
  • Gemäß einem zusätzlichen Aspekt der Erfindung wird eine Anwendungsprogrammschnittstelle (API), die einen Textnormalisierer aufweist, in einem Computersystem bereitgestellt. Der Computer verarbeitet ein Anwendungsprogramm und weist eine Spracherkennungsvorrichtung zur Erkennung von Sprachabschnitten bei Spracheingabe und zum Ausgeben von Text entsprechend den erkannten Sprachabschnitten auf. Der Text wird von der Spracherkennungsvorrichtung in einem Textnormalisierer empfangen. Der Text wird vom Textnormalisierer normalisiert, indem eine Regel aus der kontextfreien Grammatik angewendet wird, um einen Inhalt des Textes zu ändern und normalisierten Text zu erzeugen. Der normalisierte Text wird an das Anwendungsprogramm übergeben.
  • Gemäß einem weiteren Aspekt der Erfindung weist ein Computersystem eine Spracherkennungsvorrichtung zum Erkennen von Sprachabschnitten bei Spracheingabe und zur Erzeugung von Textausgabe entsprechend den erkannten Sprachabschnitten auf. Das Computersystem weist außerdem eine kontextfreie Grammatik, die Regeln zur Normalisierung von Text umfaßt, und einen Textnormalisierer auf, der mindestens eine Regel aus der kontextfreien Grammatik anwendet, um eine Textausgabe von der Spracherkennungsvorrichtung zu normalisieren.
  • Kurzbeschreibung der Zeichnungen
  • Eine bevorzugte Ausführungsform der Erfindung wird nachstehend mit Bezug auf die folgenden Figuren beschrieben:
  • 1 ist ein Blockschaltbild, das ein Computersystem darstellt, das zur praktischen Ausführung der bevorzugten Ausführungsform der Erfindung geeignet ist.
  • 2 ist ein Blockschaltbild, das ein verteiltes System darstellt, das zur praktischen Ausführung der bevorzugten Ausführungsform der Erfindung geeignet ist.
  • 3A-3E stellen den Datenfluß zwischen der Spracherkennungsvorrichtung, dem Textnormalisierer und den Anwendungsprogrammen für verschiedene Arten der Normalisierung dar.
  • 4 stellt das logische Format der Textdatei dar, die die kontextfreie Grammatik umfaßt.
  • 5 stellt die Kategorien weiterer Regeln dar, die in der Textdatei gemäß 4 ausgeführt sind.
  • 6 ist ein Flußdiagramm, das die Schritte darstellt, die durchgeführt werden, um die Textdatei zur Textnormalisierung zu verwenden.
  • 7 stellt einen beispielhaften Abschnitt des Baumes für die kontextfreie Grammatik dar.
  • 8 ist ein Flußdiagramm, das die Schritte darstellt, die durchgeführt werden, um zu bestimmen, wann eine Regel aus der kontextfreien Grammatik anzuwenden ist.
  • 9 stellt ein Beispiel der Normalisierung eines Textabschnitts dar.
  • 10 ist ein Flußdiagramm, das die Schritte darstellt, die durchgeführt werden, damit ein Anwendungsprogramm normalisierten Text empfängt.
  • 11 ist ein Flußdiagramm, das die Schritte darstellt, die durchgeführt werden, um eine kontextfreie Grammatik durch eine andere zu ersetzen.
  • 12 ist ein Flußdiagramm, das die Schritte darstellt, die durchgeführt werden, um eine kontextfreie Grammatik zu editieren.
  • Ausführliche Beschreibung der Erfindung
  • Die bevorzugte Ausführungsform der Erfindung stellt einen Mechanismus zur Normalisierung von Text dar, der von einer Spracherkennungsvorrichtung empfangen wird. Eine kontextfreie Grammatik wird angewendet, um die Textnormalisierung durchzuführen. Die kontextfreie Grammatik weist eine Anzahl von Regeln auf, die beschreiben, wie der Text zu normalisieren ist. Diese Regeln werden auf die Textausgabe angewendet, die von der Spracherkennungsvorrichtung kommend empfangen wird, um normalisierten Text zu erzeugen. In der bevorzugten Ausführungsform der Erfindung wird die Textnormalisierung in einer Anwendungsprogrammschnittstelle (API) durchgeführt, die von Anwendungsprogrammen aufgerufen werden kann, um Text entsprechend einer Spracheingabe zu empfangen.
  • Die bevorzugte Ausführungsform der Erfindung kann mehrere Arten von Textnormalisierung durchführen. Beispielsweise kann Text normalisiert werden, um einen normalisierten Text zu erzeugen. Ebenso kann Text normalisiert werden, um andere Arten von Medieninhalten zu erzeugen. Text kann normalisiert werden, um Audioinhalt oder Videoinhalt zu erzeugen. Text kann sogar normalisiert werden, um Hypertextdokumente zu erzeugen, durch die der Text ersetzt wird.
  • Die kontextfreie Grammatik, die in der bevorzugten Ausführungsform der Erfindung verwendet wird, ist erweiterbar. Die kontextfreie Grammatik, wie sie nachstehend ausführlich beschrieben wird, ist in einer Textdatei spezifiziert. Diese Textdatei kann durch eine Ersatztextdatei, die eine andere kontextfreie Grammatik festlegt, ersetzt werden. Außerdem kann die Textdatei editiert werden, um den Inhalt der kontextfreien Grammatik zu ändern. Da die kontextfreie Grammatik in einer Textdatei beschrieben ist, ist die kontextfreie Grammatik durch den Menschen lesbar.
  • 1 zeigt ein Computersystem 10, das zur praktischen Ausführung der bevorzugten Ausführungsform der Erfindung geeignet ist. Das Computersystem 10 weist eine zentrale Verarbeitungseinheit (CPU) 12 auf, die Operationen des Computersystems überwacht. Die CPU 12 kann von einer beliebigen Anzahl verschiedener Typen von Mikroprozessoren realisiert werden.
  • Das Computersystem kann auch eine Anzahl von peripheren Geräten aufweisen, einschließlich einer Tastatur 14, einer Maus 16, eines Mikrophons 18, einer Videoanzeige 20 und eines Lautsprechers 22. Das Mikrophon 18 kann verwendet werden, um eine Spracheingabe von einem Sprecher zu empfangen, und ein Lautsprecher 22 kann verwendet werden, um Audioinhalt, z. B. Sprache, auszugeben. Das Computersystem 10 kann auch einen Netzwerkadapter 24 zum Verbinden des Computersystems mit einem Netzwerk, z. B. einem lokalen Netzwerk (LAN) oder einem Weitverkehrsnetzwerk (WAN), aufweisen. Der Fachmann wird anerkennen, daß eine Anzahl verschiedener Arten von Netzwerkadaptern bei der praktischen Anwendung der Erfindung verwendet werden kann. Das Computersystem 10 kann auch ein Modem aufweisen, mit dem das Computersystem mit entfernten Computerressourcen über eine analoge Telefonleitung kommunizieren kann.
  • Das Computersystem 10 weist zusätzlich einen Primärspeicher 28 und einen Sekundärspeicher 30 auf. Der Primärspeicher kann als Direktzugriffsspeicher (RAM) oder eine weitere Arten von internen Speichern realisiert sein, die dem Fachmann bekannt sind. Der Sekundärspeicher 30 kann die Form eines Festplattenlaufwerks, eines CD-ROM-Laufwerks oder eines anderen Typs von sekundären Speichern haben. Im allgemeinen kann der Sekundärspeicher 30 als Sekundärspeichergerät realisiert sein, das computerlesbare auswechselbare Speichermedien aufnimmt, z. B. CD-ROMs.
  • Der Primärspeicher 28 kann Software oder einen sonstigen Code enthalten, der eine Spracherkennungsvorrichtung 32 bildet. Die Spracherkennungsvorrichtung kann die Form einer Spracherkennungsmaschine haben und kann zusätzliche Einrichtungen, z. B. ein Wörterbuch und dgl., aufweisen. Eine geeignete Spracherkennungsmaschine ist in der ebenfalls anhängigen Anmeldung mit dem Titel "Method And System For Speech Recognition Using Continuous Density Hidden Markov Models", Anmeldung 08/655 273, beschrieben, die am 1. Mai 1996 angemeldet wurde. Der Fachmann wird anerkennen, daß Abschnitte der Spracherkennungsvorrichtung 32 auch im Sekundärspeicher 30 gespeichert werden können. Der Primärspeicher 28 enthält eine Spracherkennungsprogrammschnittstelle (API) 34, die mit der Spracherken nungsvorrichtung 32 zusammenarbeitet, um Textausgabe entsprechend der bei Spracheingabe erkannten Sprache zu erzeugen. Anwendungsprogramme 36 können die Sprach-API 34 aufrufen, um die Textausgabe entsprechend den erkannten Abschnitten der Spracheingabe zu empfangen. Diese Anwendungsprogramme 36 können Diktatanwendungen, Textverarbeitungsprogramme, Tabellenkalkulationsprogramme und dgl. aufweisen. Die Sprach-API 34 kann einen Textnormalisierer 38 zur Durchführung einer Textnormalisierung aufweisen. Der Textnormalisierer 38 ist die Ressource, die für die Normalisierung des Textes verantwortlich ist, der von der Spracherkennungsvorrichtung 32 kommend von der Sprach-API 34 empfangen wird. Die Arten der Normalisierung, die vom Textnormalisierer 38 durchgeführt werden, werden nachstehend ausführlich beschrieben.
  • Der Fachmann wird anerkennen, daß der Textnormalisierer 38 nicht Teil der Sprach-API 34 sein muß, sondern als getrennte Einheit vorhanden sein kann oder in die Spracherkennungsvorrichtung 32 einbezogen sein kann. Die Spracherkennungsvorrichtung verwendet eine kontextfreie Grammatik 40, die in 1 gezeigt ist, als sei sie in einem Sekundärspeicher 30 gespeichert. Der Fachmann wird anerkennen, daß die kontextfreie Grammatik 40 auch in einem Primärspeicher 28 gespeichert sein kann.
  • Man wird anerkennen, daß die Computersystemkonfiguration, die in 1 dargestellt ist, lediglich darstellenden und keinen einschränkenden Charakter für die Erfindung hat. Die Erfindung kann mit anderen Computersystemkonfigurationen praktisch angewendet werden. Diese anderen Konfigurationen können weniger Komponenten aufweisen als die, die in 1 dargestellt sind, oder können zusätzliche Komponenten aufweisen, die sich von denen unterscheiden, die in 1 dargestellt sind. Außerdem muß die Erfindung nicht auf einem Computer mit einem einzelnen Prozessor in die Praxis umgesetzt werden, sondern kann in Mehrprozessorumgebungen, einschließlich Multiprozessoren und verteilte Systeme, in die Praxis umgesetzt werden.
  • 2 zeigt einen Fall, wo das Computersystem 10 ein Client-Computer ist, der Zugang zu einem Netzwerk 44 hat. Die ses Netzwerk 44 kann ein LAN oder ein WAN sein. Das Netzwerk 44 kann das Internet, ein Intranet oder ein Extranet sein. Der Client-Computer 10 weist Netzwerkunterstützung 42 auf. Diese Netzwerkunterstützung 42 kann Client-Code für ein Netzwerkbetriebssystem, ein herkömmliches Betriebssystem oder sogar einen Webbrowser aufweisen. Durch die Netzwerkunterstützung 42 kann der Client-Computer 10 mit dem Server 46 im Netzwerk 44 kommunizieren. Der Server 46 kann Medieninhalt 48 umfassen, z. B. Audiodaten, Videodaten, Textdaten oder ein Hypertextdokument, das vom Client-Computer 10 bei der Normalisierung von Text verwendet werden kann.
  • Wie bereits oben ausgeführt, normalisiert der Textnormalisierer 38 den Text, der von der Spracherkennungsvorrichtung 32 empfangen wird, um einen normalisierten Inhalt zu erzeugen. 3A stellt einen Datenfluß zwischen der Spracherkennungsvorrichtung 32, dem Textnormalisierer 38 und dem Anwendungsprogramm 36 dar. Im allgemeinen gibt die Spracherkennungsvorrichtung 32 Text 50 aus, der erkannten Sprachabschnitten bei Spracheingabe entspricht, die über das Mikrophon 18 empfangen wird oder in einem Sekundärspeicher 30 gespeichert ist. Der Text 50 kann jeweils ein Wort an den Textnormalisierer 38 ausgeben. Dennoch wird der Fachmann anerkennen, daß die Granularität der Textausgabe, die von der Spracherkennungsvorrichtung 32 erzeugt wird, variieren und Buchstaben oder gar Phrasen aufweisen kann. Der Textnormalisierer 38 erzeugt normalisierten Inhalt 52, der an ein Anwendungsprogramm 36 weitergegeben wird.
  • 3B zeigt einen Fall, wo der Textnormalisierer 38 normalisierten Text 54 erzeugt, der an das Anwendungsprogramm 36 weitergegeben wird. Der normalisierte Text 54 umfaßt Ersatztext, der den Text 50 ersetzt, der von der Erkennungsvorrichtung 32 ausgegeben wurde. Wie in 3C gezeigt, kann jedoch der Textnormalisierer 38 als Alternative den Text normalisieren, um Bilddaten 56, z. B. ein Bitmap, Metafile oder andere Darstellungen eines Bildes, für das Anwendungsprogramm 36 zu erzeugen. Der Text 50 kann eine Kennung der Darstellung des Bildes beschreiben. In diesem Fall ersetzt der Textnormalisie rer 38 die Kennung durch die tatsächliche Darstellung des Bildes, das durch die Kennung bezeichnet wird.
  • 3D zeigt einen Fall, wo der Textnormalisierer 38 Text 50 von der Spracherkennungsvorrichtung 32 empfängt und einen Toninhalt 58 als normalisierten Inhalt erzeugt. In diesem Fall kann der Text 50 ein Audioclip oder eine Datei, die Audiodaten enthält, bezeichnen. Diese Kennung wird durch den zugehörigen Audioclip anstelle einer Datei ersetzt, wenn sie normalisiert ist. Als Alternative kann der Text ein Wort oder eine Phrase sein, für die der Textnormalisierer 38 eine Audiodarstellung hat und wünscht, das Wort oder die Phrase durch die Audiodarstellung zu ersetzen.
  • 3E stellt einen Fall dar, wo der Textnormalisierer 38 Text 50 von der Spracherkennungsvorrichtung 32 empfängt und ein Hypertextdokument 60 an das Anwendungsprogramm 36 ausgibt. Der Text 50 kann eine Kennung aufweisen, z. B. eine einheitliche Quellenangabe (URL), die dem Hypertextdokument 60 zugeordnet ist. Wenn der Textnormalisierer 38 den Text 50 zwecks Normalisierung empfängt, ersetzt er den Text durch das zugehörige Hypertextdokument 60.
  • Man wird anerkennen, daß der Textnormalisierer verschiedene Arten von Medieninhalt im resultierenden normalisierten Inhalt 52 kombinieren kann, der an die Anwendungsprogramme übergeben wird. Man wird auch anerkennen, daß der Textnormalisierer 38 Medieninhalt oder Ressourcen in einem Netzwerk 44 anwenden kann, um die Normalisierung zu realisieren. Der Einfachheit und Verständlichkeit halber werden nachstehend Fälle beschrieben, wie der in 3B dargestellte, wo der Text 50 durch den Textnormalisierer 38 normalisiert ist, um normalisierten Text 54 zu erzeugen.
  • Wie oben ausgeführt, ist die kontextfreie Grammatik 40 als Textdatei gespeichert. Die Textdatei enthält eine Beschreibung der Regeln der kontextfreien Grammatik. 4 stellt eine logische Organisation der Textdatei 62 dar. Die Textdatei 62 ist in drei Hauptteile 64, 66 und 68 geteilt. Jeder der Teile ist in der Textdatei 62 mit einem Kopf oder einer Kennzeichnung bezeichnet (z. B. "[Leerezeichen]", "[Großschreibung]", "[Regeln]"). Der erste Teil ist ein Leerzeichen- Teil 64, der Regeln der kontextfreien Grammatik in bezug auf Leerzeichen beschreibt. Diese Regeln sind als Tabelle implementiert. Ein Beispiel einer Beschreibung von Regeln in der Tabelle ist wie folgt:
    Figure 00100001
  • Die Tabelle weist eine "Links"-Spalte auf, die ein Zeichen beschreibt, das links erscheint und eine "Rechts-Spalte", die ein Zeichen beschreibt, das rechts erscheint, eine "Ersetzungs"-Spalte", die eine vorgeschlagene Ersetzung für das rechte Zeichen enthält, und eine "Schalter"-Spalte, die vorschreibt, ob die Regel in Kraft ist oder nicht. Die erste Regel in dem oben dargestellten Beispiel besagt, daß, wenn ein Punkt (d. h. das linke Zeichen) gefolgt wird von einem Leerzeichen (d. h. das rechte Zeichen), zwei Leerzeichen für ein einziges Leerzeichen eingesetzt werden. Die Schalter-Spalte enthält einen Wert "1" und zeigt somit an, daß diese Regel in Kraft ist. Die zweite Regel (in dem oben dargestellten Beispiel unter der ersten Regel beschrieben) zeigt an, daß ein Punkt nur von einem einzigen Leerzeichen gefolgt wird. Die Schalter-Spalte enthält jedoch einen Wert "!1", der besagt, daß die Regel nicht in Kraft ist.
  • Man beachte, daß die Anwenderschnittstelle, z. B. ein Eigenschaftsfenster, vorhanden sein kann, um damit ein Anwender wählen kann, welche der Leerzeichenregeln in Kraft sind oder nicht. Die Anwenderwahl wird verwendet, um die Schalterfelder in der Tabelle zu setzen.
  • Der Großschreibungsteil 66 ist auch als Tabelle organisiert, wie die, die für den Leerzeichenteil 64 vorgesehen ist. Dieser Teil 66 enthält Großschreibungsregeln, z. B. der erste Buchstabe eines Wortes, das einem Punkt folgt, der einen Satz beendet, wird groß geschrieben. Diese Regeln können auch als schaltbar bezeichnet werden, so daß der Anwender die Großschreibungswahlmöglichkeiten wählen kann.
  • Der dritte Teil ist der sonstige Regelteil 68. Der sonstige Regelteil 68 enthält eine Angabe über die Anzahl der verschiedenen Regeln, die nicht die Großschreibung oder die Leerzeichen betreffen. Dieser Teil ist in einer "Regel"-Überschrift oder -Kennzeichnung ausgeführt. Ein Beispiel für eine solche Regel ist folgendes:
    Figure 00110001
  • Diese Regel besagt, daß geschriebene Ziffern ein oder mehrere Wörter aufweisen können, die Ziffern enthalten, und die Regel beschreibt die Einsetzung von Ziffern für geschriebene Ziffernfolgen (z. B. "1" für "eins").
  • 5 stellt die Kategorien der sonstigen Regeln dar, die entsprechend der bevorzugten Ausführungsform der Erfindung implementiert werden können. Die Glossarkategorie der Regel 70 beschreibt die Ersetzung von Text durch Ersatztext. Ein Anwender kann solche Ersetzungen als Teil des Glossars eintippen, um Kurzschreibweisen für die Hinzufügung von Text zu einem Dokument zu ermöglichen. Die Zahlenkategorie 72 umfaßt Regeln, die die Ersetzung der geschriebenen Form von Wörtern (nämlich eine Folge von Wörtern) durch digitale Darstellung beschreiben, die nur aus Ziffern bestehen. Beispielsweise wird "einhundertsiebenundvierzig" durch Anwendung der Regeln in dieser Kategorie 72 von Regeln durch "147" ersetzt.
  • Eine Datumskategorie 74 umfaßt Regeln, die angeben, wie gesprochene Versionen von Daten zu normalisieren sind. Beispielsweise wird der Ausgangstext "erster April neunzehnhundertsiebenundneunzig" normalisiert zu "1. April 1997".
  • Die Währungskategorie 76 umfaßt Regeln, die die Angaben von Geldbeträgen normalisieren. Beispielsweise kann die Phrase "zehn Cent" durch die Regel in dieser Kategorie 76 normalisiert werden zu "10 c".
  • Die Zeitkategorie 78 umfaßt Regeln, die verwendet werden, um eine Zeitangabe zu normalisieren. Beispielsweise kann der Text "vier Uhr nachmittags" durch die Regeln in dieser Kategorie 78 normalisiert werden zu "4 p.m.".
  • Die Brüchekategorie 80 normalisiert Brüche in eine mathematische Form. Somit kann der Text "ein Viertel" durch die Regel dieser Kategorie 80 normalisiert werden zu "1/4".
  • Die Akronymkategorie 82 normalisiert Text, der Akronyme beschreibt. Beispielsweise kann der Text "CIA" durch die Regel dieser Kategorie 82 normalisiert werden zu "C.I.A.".
  • Die Adreßkategorie 84 umfaßt Regeln zur Normalisierung der Beschreibung von Adressen. Beispielsweise kann die Folge "einhundertsechsundfünfzigster" durch Regeln in dieser Kategorie 84 normalisiert werden zu "156.".
  • Die Telefonnummernkategorie 86 normalisiert die Beschreibung von Telefonnummern. Wenn ein Anwender eine Telefonnummer spricht, kann die Spracherkennungsvorrichtung die Telefonnummer lediglich als eine Folge von Ziffern interpretieren. Beispielsweise kann die Folge "neun drei sechs drei null null null" durch die Regeln in der Kategorie 86 normalisiert werden zu 936-3000".
  • Die Stadt-, Staat-, Postleitzahlkategorie 88 umfaßt Regeln zur Beschreibung, wie eine Folge aus Stadt, Staat und Postleitzahl aussehen sollte. Beispielsweise kann der Text "Seattle Washington neun acht null fünf zwei" durch die Regeln in dieser Kategorie 88 normalisiert werden zu "Seattle, WA 98052".
  • Die Maßeinheitenkategorie 90 wendet Regeln in bezug auf eine Beschreibung von Maßeinheiten an. Beispielsweise kann der Text "neunzehn Fuß" durch die Regeln in dieser Kategorie 90 normalisiert werden zu "19 ft.".
  • Der Fachmann wird anerkennen, daß die Textdatei 62 ein anderes Format haben kann, das sich von dem in 4 unterscheidet. Außerdem kann die Textdatei 62 Regeln zur Ersetzung von Text durch Toninhalt oder Videoinhalt aufweisen. Regeln können auch zum Ersetzen von Text durch Hypertextdokumente vorhanden sein. Der Fachmann wird anerkennen, daß die kontext freie Grammatik bei der praktischen Umsetzung der Erfindung nicht als Textdatei beschrieben werden muß.
  • Der Fachmann wird ferner anerkennen, daß zusätzliche Kategorien von Regeln, die sich von denen unterscheiden, die in 5 dargestellt sind, verwendet werden können. Ferner werden weniger Kategorien von Regeln oder andere Kategorien von Regeln angewendet, die sich von denen unterscheiden, die in 5 dargestellt sind.
  • Um die kontextfreie Grammatik 40 zu nutzen, muß die Textdatei 62 gelesen und verarbeitet werden. 6 ist ein Flußdiagramm, das die Schritte darstellt, die durchgeführt werden, um die kontextfreie Grammatik beim Normalisieren von Text zu verwenden. Zunächst wird die Textdatei 62, die die kontextfreie Grammatik enthält, gelesen (Schritt 92 in 6). Der dort enthaltene Inhalt wird verwendet, um eine Baumdarstellung für die kontextfreie Grammatik aufzubauen (Schritt 94 in 6). Diese Baumdarstellung wird verwendet, um den Eingangstext, der von der Spracherkennungsvorrichtung 32 kommend empfangen wird, zu zergliedern. Jeder Zweig des Baumes beschreibt einen Teil einer Regel zur Normalisierung von Text. Der Text, der von der Spracherkennungsvorrichtung 32 kommend empfangen wird, wird also vom Textnormalisierer 38 verarbeitet, um den Text mit den Regeln zu vergleichen, die in dem Baum enthalten sind, und um die entsprechende Normalisierung durchzuführen. Demzufolge wird der Text von der Spracherkennungsvorrichtung kommend empfangen (Schritt 96 in 6) und normalisiert (Schritt 98 in 6). Der Baum wirkt im großen und ganzen als Zergliederungsmechanismus zur Entscheidungsfindung, welche Textteile, die von der Spracherkennungsvorrichtung 32 kommend empfangen worden sind, normalisiert werden müssen und wie diese Abschnitte normalisiert werden müssen.
  • 7 zeigt ein Beispiel eines Abschnitts eines Baums, der aufgebaut wird, indem Regeln aus der Textdatei gelesen werden. Der Baum kann zwecks Optimierung in binärer Form gespeichert sein. Der Unterbaum beschreibt Abschnitte der "Ziffern"-Regel, die oben als Beispiel für Regeln ausgeführt wurde, die in der Textdatei 62 vorhanden sind. Der Baum weist einen Startregelknoten 100 auf, der von einem Ziffernregelmodul 102 gefolgt wird. Die Knoten 104 und 106 besagen, daß, wenn der empfangene Text "null" ist, der Text zu normalisieren und durch "0" zu ersetzen ist. Ebenso beschreiben die Knoten 108, 110, 112 und 114 jeweils die Ersetzung von "eins" durch "1" und von "neun" durch "9".
  • Ein Beispiel ist geeignet zur Illustration, wie der Unterbaum, der in 7 dargestellt ist, verwendet werden kann. Es wird angenommen, daß der Textnormalisierer 38 die Folge "null" empfängt, der Textnormalisierer mit der Startregel 100 beginnt und dann bestimmt, daß die Folge "null" eine Ziffer beschreibt. Er folgt dann dem Weg bis zum Knoten 104 und bestimmt, daß es eine Übereinstimmung gibt. Dieser Textnormalisierer verwendet dann die Ersatz- oder normalisierte Folge "0", die im Knoten 106 beschrieben ist, um die empfangene Folge zu normalisieren.
  • Die Regeln werden nicht unbedingt Wort für Wort angewendet. Statt dessen will das System die Regel anwenden, die die Folge mit der größten Länge im Text normalisiert, der von der Spracherkennungsvorrichtung kommend empfangen wird. 8 ist ein Flußdiagramm, das die Schritte darstellt, die beim Anwenden der Regel durchgeführt werden. Im allgemeinen wird eine Regel angewendet, wenn mindestens eine vollständige Regel erkannt worden ist und kein weiterer Abschnitt einer Regel angewendet werden kann. Im Schritt 116 von 8 bestimmt der Textnormalisierer also, ob eine Normalisierung mit einem gegebenen Abschnitt eines Textes durchgeführt worden ist. Wenn die Textnormalisierung erfolgt ist (siehe Schritt 116 in 8), wendet der Textnormalisierer die Regel an, die die Folge mit der größten Länge in dem nichtnormalisierten Text normalisiert (Schritt 120 in 8). Man beachte, daß es Fälle geben kann, wo mehrere Regeln gelten und ein Kriterium zur Bestimmung, welche Regel tatsächlich verwendet werden soll, vorhanden sein muß. Die bevorzugte Ausführungsform der Erfindung verwendet die Regel, die den größten Abschnitt der nicht-normalisierten Folge normalisiert. Wenn jedoch bestimmt wird, daß es eine weitere Anwendung der Regeln gibt, die zu erfolgen hat (siehe Schritt 116 in 8), dann werden die zusätzlichen Abschnitte der Regeln angewendet (Schritt 118 in 8).
  • Ein Beispiel ist geeignet bei der Darstellung, wann Regeln angewendet werden und wie die Normalisierung durchgeführt wird. 9 stellt ein Beispiel einer Textfolge dar: "fünf Hühnchen zu zwanzig Cent jeweils". Diese Wörter sind in einem Textpuffer 122, der vom Textnormalisierer 38 verwendet wird, gespeichert. Das erste Wort "fünf" wird vom Textnormalisierer verarbeitet, um zu bestimmen, ob es Übereinstimmungsregeln gibt oder nicht. Es gibt eine Übereinstimmung in der Ziffernregel 126 für dieses Wort. Vor Anwendung der Regel schaut sich der Textnormalisierer 38 das nächste Wort "Hühnchen" an, da es keine Regel gibt, die für die Phrase "fünf Hühnchen" zutrifft, weiß der Textnormalisierer 38, daß dies erledigt ist (siehe Schritt 116 in 8) und wendet die Ziffernregel an, um "fünf" durch "5" zu ersetzen. Der Wert "5" wird in einem verarbeiteten Puffer 124 gespeichert, der die normalisierte Textausgabe enthält.
  • Das System hat keine Regel für "Hühnchen" und gibt das Wort daher nicht weiter an den verarbeiteten Puffer 124. Ebenso hat der Textnormalisierer 38 keine Regel für das Wort "zu" und würde das Wort "zu" an den verarbeiteten Puffer 124 übergeben. Wenn der Textnormalisierer 38 jedoch auf "zwanzig" trifft, hat er eine Regel, die gilt (eine Nummernregel 128). Bevor die Regel tatsächlich angewendet wird, schaut sich der Textnormalisierer 38 das nächste Wort "Cent" an und bestimmt, daß es keine Regel gibt, die die Phrase "zwanzig Cent" normalisiert. Infolgedessen wird die Nummernregel 128 angewendet, um "zwanzig" durch "20" zu ersetzen. Folglich wird die Währungsregel 130 angewendet, um Cent durch "c" zu ersetzen. Schließlich wird das Wort "jeweils" nicht normalisiert und in Buchstabenform an den verarbeiteten Puffer 124 weitergegeben.
  • Wie oben ausgeführt, wird der Textnormalisierer 38 in der Sprach-API 34 verwendet. 10 ist ein Flußdiagramm, das die Schritte darstellt, wie der Textnormalisierer in diesem Kontext verwendet wird. Anfänglich ruft ein Anwendungsprogramm 36 die Sprach-API 34 auf, um eine Textinterpretation der Eingangssprache zu empfangen (Schritt 132 in 10). Eine Spracherkennungsvorrichtung verarbeitet die Spracheingabe, um eine Textausgabe zu erzeugen (Schritt 134 in 10). Der Textnormalisierer 38 normalisiert dann den Text, wie er oben beschrieben worden ist (Schritt 138 in 10). Die Sprach-API 134 gibt den normalisierten Inhalt an das anfragende Anwendungsprogramm 36 weiter (Schritt 138 in 10).
  • Die bevorzugte Ausführungsform der Erfindung hat den Vorteil, flexibel und erweiterbar zu sein. Die kontextfreie Grammatik ist insofern erweiterbar, als ihr Inhalt ausgetauscht, ergänzt oder eine völlig neue kontextfreie Grammatik beschrieben werden kann. 11 ist ein Flußdiagramm, das die Schritte darstellt, die durchgeführt werden, um die kontextfreie Grammatik durch eine neue kontextfreie Grammatik zu ersetzen. Die vorhandene kontextfreie Grammatik kann ersetzt werden, indem eine neue Textdatei bereitgestellt wird. Eine neue Textdatei umfaßt eine Beschreibung der neuen kontextfreien Grammatik. Das Computersystem 10 liest dann die neue Textdatei als die kontextfreie Grammatik (Schritt 140 in 11). Die Information in der Textdatei wird verwendet, um einen neuen Baum für die neue kontextfreie Grammatik zu bauen (Schritt 142 in 11). Der neue Baum wird dann verwendet, um den Text zu normalisieren (Schritt 144 in 11).
  • Die gesamte Textdatei muß nicht jedesmal, wenn der Anwender die kontextfreie Grammatik zu ändern wünscht, ersetzt werden. Statt dessen kann die Textdatei lediglich editiert werden. 12 ist ein Flußdiagramm, das die Schritte darstellt, die durchgeführt werden, um die kontextfreie Grammatik auf diese Weise zu ändern. Zunächst prüft die kontextfreie Grammatik die editierte Datei (Schritt 146 in 12). Der Baum wird entsprechend korrigiert, indem der Inhalt aus der editierten Textdatei gelesen wird, der Baum auf eine passende Weise geändert wird (Schritt 148 in 12). Der korrigierte Baum kann dann verwendet werden, um Text zu normalisieren (Schritt 150 in 12).
  • Obwohl die vorliegende Erfindung mit Bezug auf ihre bevorzugte Ausführungsform beschrieben worden ist, wird der Fachmann anerkennen, daß verschiedene Änderungen in Form und Detail möglich sind, ohne vom beabsichtigten Schutzbereich der Erfindung abzuweichen, wie er in den beigefügten Ansprüchen definiert ist. Beispielsweise kann die Textnormalisierung all gemein angewendet werden, um Textinhalt durch eine beliebige Anzahl von verschiedenen Arten von Medien zu ersetzen. Außerdem muß der Textnormalisierer nicht Teil einer Sprach-API oder von System-Ressourcen sein.

Claims (31)

  1. Verfahren in einem Computersystem mit einer Spracherkennungsmaschine zum Erkennen von Inhalt in Eingangssprache, wobei das Verfahren die folgenden computerimplementierten Schritte aufweist: Empfangen von Text entsprechend einer Spracheingabe von der Spracherkennungsmaschine; Anwenden einer kontextfreien Grammatik, um Ersatzinhalt für den empfangenen Text zu bestimmen; und Ersetzen des Textes durch den Ersatzinhalt.
  2. Verfahren nach Anspruch 1, wobei der Ersatzinhalt eine alphanumerische Folge aufweist.
  3. Verfahren nach Anspruch 1, wobei der Ersatzinhalt graphischen Inhalt aufweist.
  4. Verfahren nach Anspruch 1, wobei der empfangene Text eine Kennung von Medieninhalt in einem verteilten System ist und der Ersatzinhalt der Medieninhalt ist.
  5. Verfahren nach Anspruch 4, wobei der empfangene Text eine einheitliche Quellenangabe (URL) ist.
  6. Verfahren nach Anspruch 1 oder 5, wobei der Ersatzinhalt ein Hypertextdokument ist.
  7. Verfahren nach Anspruch 1, wobei der Ersatzinhalt Audioinhalt aufweist.
  8. Verfahren nach Anspruch 1, wobei die kontextfreie Grammatik mindestens eine Regel zum Ersetzen des empfangenen Textes durch Ersatzinhalt aufweist.
  9. Verfahren nach Anspruch 1, wobei das Computersystem ein Anwendungsprogramm verarbeitet und wobei der Ersatzinhalt an das Anwendungsprogramm übergeben wird.
  10. Verfahren nach Anspruch 1, wobei der empfangene Text eine Folge von Wörtern ist und der Ersatzinhalt eine Se rie von Ziffern entsprechend mindestens eines Teils der Folge von Wörtern enthält.
  11. Verfahren nach Anspruch 1, wobei der empfangene Text eine Folge von Wörtern enthält, die eine Adresse beschreiben, und der Ersatzinhalt eine Serie von Ziffern aufweist, die mindestens einen Abschnitt der Adresse beschreiben.
  12. Verfahren nach Anspruch 1, wobei der empfangene Text eine Folge von Wörtern ist, die einen Währungsbetrag bezeichnet, und der Ersatzinhalt Ziffern und ein Währungssymbol aufweist, das den Währungsbetrag bezeichnet.
  13. Verfahren nach Anspruch 1, wobei der empfangene Text eine Folge von Wörtern ist, die einen Bruch bezeichnet, und der Ersatzinhalt Ziffern und eine mathematische Operation aufweist, die gemeinsam den Bruch bezeichnen.
  14. Computerlesbares Medium, das computerausführbare Anweisungen zum Durchführen des Verfahrens nach einem der Ansprüche 1 bis 13 in einem System mit einer Spracherkennungsmaschine zum Erkennen von Inhalt in Eingangssprache enthält.
  15. Verfahren nach Anspruch 1, wobei das Verfahren den folgenden computerimplementierten Schritt aufweist: Bereitstellen einer Datei, die Regeln einer kontextfreien Grammatik zum Normalisieren von Text angibt; und wobei das Ersetzen des Texts durch den Ersatzinhalt das Normalisieren mindestens eines Abschnitts des Textes umfaßt, um den Abschnitt des Textes durch eine normalisierte alphanumerische Folge zu ersetzen, wobei die Normalisierung den folgenden Schritt aufweist: Anwenden einer Regel aus der kontextfreien Grammatik, um den Abschnitt des zu normalisierenden Textes durch die normalisierte alphanumerische Folge zu ersetzen.
  16. Verfahren nach Anspruch 15, ferner mit den folgenden Schritten: Ersetzen der Datei durch eine Ersatzdatei, die Regeln einer anderen kontextfreien Grammatik angibt, und Verwenden der anderen kontextfreien Grammatik, um neuen Text zu normalisieren.
  17. Verfahren nach Anspruch 15, ferner mit dem folgenden Schritt: Anwenden der Datei, um einen Baum für die kon textfreie Grammatik zu bauen, der bei der Normalisierung verwendet wird.
  18. Verfahren nach Anspruch 15, wobei die Datei eine Textdatei ist.
  19. Verfahren nach Anspruch 15, wobei die Datei Regeln in bezug auf die Großschreibung aufweist.
  20. Verfahren nach Anspruch 15, wobei die Datei Regeln in bezug auf Leerzeichen aufweist.
  21. Verfahren nach Anspruch 15, wobei die Datei eine Beschreibung eines Schalters enthält, der bestimmt, ob eine Regel als Teil der kontextfreien Grammatik angewendet werden soll oder nicht.
  22. Verfahren nach Anspruch 15, ferner mit dem folgenden Schritt: Ändern des Inhalts der Datei, um die kontextfreie Grammatik zu ändern.
  23. Verfahren nach Anspruch 15, ferner mit den folgenden Schritten: Empfangen von zusätzlichem Text und Normalisieren des zusätzlichen Textes durch Anwenden einer weiteren Regel aus der kontextfreien Grammatik, um den zusätzlichen Text durch Nichttextinhalt zu ersetzen.
  24. Verfahren nach Anspruch 22 oder 23, wobei der Nichttextinhalt Bilddaten oder Audiodaten aufweist.
  25. Computerlesbares Medium, das computerausführbare Anweisungen zum Durchführen eines Verfahrens nach einem der Ansprüche 15 bis 24 in einem Computersystem mit einer Spracherkennungsvorrichtung zum Erkennen von Sprachabschnitten in Spracheingabe enthält.
  26. Verfahren in einem Computersystem mit einem Anwendungsprogramm und einer Spracherkennungsvorrichtung zum Erkennen von Sprachabschnitten in Spracheingabe und Ausgeben von Text entsprechend den erkannten Sprachabschnitten, wobei das Verfahren die folgenden computerimplementierten Schritte aufweist: Bereitstellen einer Anwendungsprogrammschnittstelle (API), die einen Textnormalisierer aufweist, der das Verfahren nach Anspruch 1 durchführt, um normalisierten Text mit dem Ersatzinhalt zu erzeugen; und Weitergeben des normalisierten Textes an das Anwendungsprogramm.
  27. Verfahren nach Anspruch 26, wobei die API eine Sprach-API ist, die Textausgabe entsprechend der erkannten Spracheingabe in das Anwendungsprogramm bereitstellt.
  28. Verfahren nach Anspruch 26, wobei das Anwendungsprogramm Text von der API anfordert, um das Weitergeben des normalisierten Textes an das Anwendungsprogramm zu veranlassen.
  29. Computerlesbares Medium, das computerausführbare Anweisungen zum Durchführen eines Verfahrens nach einem der Ansprüche 26 bis 28 in einem Computersystem mit einem Anwendungsprogramm und einer Spracherkennungsvorrichtung zum Erkennen von Sprachabschnitten in Spracheingabe und zum Ausgeben von Text entsprechend den erkannten Sprachabschnitten enthält.
  30. Computersystem mit: einer Spracherkennungsvorrichtung zum Erkennen von Sprachabschnitten in Spracheingabe und zum Erzeugen von Textausgabe entsprechend den erkannten Sprachabschnitten; einer kontextfreien Grammatik, die Regeln zum Bestimmen von Ersatzinhalt für den empfangenen Text enthält; und einem Textnormalisierer, der mindestens eine Regel aus der kontextfreien Grammatik anwendet, um den Text durch den Ersatztext zu ersetzen.
  31. Computersystem nach Anspruch 30, wobei der Textnormalisierer Teil einer Anwendungsprogrammschnittstelle (API) ist.
DE69829389T 1997-04-03 1998-04-03 Textnormalisierung unter verwendung einer kontextfreien grammatik Expired - Lifetime DE69829389T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/840,117 US5970449A (en) 1997-04-03 1997-04-03 Text normalization using a context-free grammar
US840117 1997-04-03
PCT/US1998/006852 WO1998044484A1 (en) 1997-04-03 1998-04-03 Text normalization using a context-free grammar

Publications (2)

Publication Number Publication Date
DE69829389D1 DE69829389D1 (de) 2005-04-21
DE69829389T2 true DE69829389T2 (de) 2006-02-09

Family

ID=25281495

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69829389T Expired - Lifetime DE69829389T2 (de) 1997-04-03 1998-04-03 Textnormalisierung unter verwendung einer kontextfreien grammatik

Country Status (6)

Country Link
US (1) US5970449A (de)
EP (1) EP1016074B1 (de)
JP (1) JP2001519043A (de)
CN (1) CN1285068C (de)
DE (1) DE69829389T2 (de)
WO (1) WO1998044484A1 (de)

Families Citing this family (66)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2945887B2 (ja) * 1997-10-09 1999-09-06 オリンパス光学工業株式会社 コードイメージ記録装置
US6523031B1 (en) * 1997-11-21 2003-02-18 International Business Machines Corporation Method for obtaining structured information exists in special data format from a natural language text by aggregation
JP2000163418A (ja) * 1997-12-26 2000-06-16 Canon Inc 自然言語処理装置及びその方法、及びそのプログラムを格納した記憶媒体
US6513002B1 (en) * 1998-02-11 2003-01-28 International Business Machines Corporation Rule-based number formatter
US6493662B1 (en) * 1998-02-11 2002-12-10 International Business Machines Corporation Rule-based number parser
US7181399B1 (en) * 1999-05-19 2007-02-20 At&T Corp. Recognizing the numeric language in natural spoken dialogue
JP3709305B2 (ja) * 1999-07-01 2005-10-26 日立オムロンターミナルソリューションズ株式会社 地名文字列照合方法、地名文字列照合装置、地名文字列認識装置及び郵便物区分システム
US6762699B1 (en) 1999-12-17 2004-07-13 The Directv Group, Inc. Method for lossless data compression using greedy sequential grammar transform and sequential encoding
US6640098B1 (en) * 2000-02-14 2003-10-28 Action Engine Corporation System for obtaining service-related information for local interactive wireless devices
US8478732B1 (en) * 2000-05-02 2013-07-02 International Business Machines Corporation Database aliasing in information access system
US6704728B1 (en) * 2000-05-02 2004-03-09 Iphase.Com, Inc. Accessing information from a collection of data
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
US20020099734A1 (en) * 2000-11-29 2002-07-25 Philips Electronics North America Corp. Scalable parser for extensible mark-up language
US7644057B2 (en) 2001-01-03 2010-01-05 International Business Machines Corporation System and method for electronic communication management
US7136846B2 (en) * 2001-04-06 2006-11-14 2005 Keel Company, Inc. Wireless information retrieval
US7152029B2 (en) * 2001-07-18 2006-12-19 At&T Corp. Spoken language understanding that incorporates prior knowledge into boosting
AU2002361710A1 (en) * 2001-12-17 2003-06-30 Empirix Inc. Method of testing a voice application
US7343372B2 (en) 2002-02-22 2008-03-11 International Business Machines Corporation Direct navigation for information retrieval
US7257531B2 (en) * 2002-04-19 2007-08-14 Medcom Information Systems, Inc. Speech to text system using controlled vocabulary indices
US7146320B2 (en) * 2002-05-29 2006-12-05 Microsoft Corporation Electronic mail replies with speech recognition
US7328146B1 (en) 2002-05-31 2008-02-05 At&T Corp. Spoken language understanding that incorporates prior knowledge into boosting
US8495002B2 (en) 2003-05-06 2013-07-23 International Business Machines Corporation Software tool for training and testing a knowledge base
US20050187913A1 (en) 2003-05-06 2005-08-25 Yoram Nelken Web-based customer service interface
ATE381755T1 (de) * 2003-06-02 2008-01-15 Ibm Sprach-antwortsystem, sprach-antwortverfahren, sprach-server, sprach-datei- verarbeitungsverfahren, programm und aufzeichnungsmedium
US7343604B2 (en) 2003-07-25 2008-03-11 International Business Machines Corporation Methods and apparatus for creation of parsing rules
US7672436B1 (en) 2004-01-23 2010-03-02 Sprint Spectrum L.P. Voice rendering of E-mail with tags for improved user experience
US20050216256A1 (en) * 2004-03-29 2005-09-29 Mitra Imaging Inc. Configurable formatting system and method
US20050240408A1 (en) * 2004-04-22 2005-10-27 Redin Jaime H Method and apparatus for entering verbal numerals in electronic devices
DE102004028724A1 (de) * 2004-06-14 2005-12-29 T-Mobile Deutschland Gmbh Verfahren zur natürlichsprachlichen Erkennung von Nummern
US8335688B2 (en) * 2004-08-20 2012-12-18 Multimodal Technologies, Llc Document transcription system training
US8412521B2 (en) * 2004-08-20 2013-04-02 Multimodal Technologies, Llc Discriminative training of document transcription system
US7584103B2 (en) * 2004-08-20 2009-09-01 Multimodal Technologies, Inc. Automated extraction of semantic content and generation of a structured document from speech
US7630892B2 (en) * 2004-09-10 2009-12-08 Microsoft Corporation Method and apparatus for transducer-based text normalization and inverse text normalization
CN100462966C (zh) * 2004-09-14 2009-02-18 株式会社Ipb 将文件配置成时间序列的文件相关图的制成装置
US8977953B1 (en) * 2006-01-27 2015-03-10 Linguastat, Inc. Customizing information by combining pair of annotations from at least two different documents
US7716040B2 (en) 2006-06-22 2010-05-11 Multimodal Technologies, Inc. Verification of extracted data
US7841366B2 (en) * 2006-08-21 2010-11-30 Wpw, Llc Systems and methods for pipeline rehabilitation installation
US8671341B1 (en) 2007-01-05 2014-03-11 Linguastat, Inc. Systems and methods for identifying claims associated with electronic text
US7813929B2 (en) * 2007-03-30 2010-10-12 Nuance Communications, Inc. Automatic editing using probabilistic word substitution models
US20080312928A1 (en) * 2007-06-12 2008-12-18 Robert Patrick Goebel Natural language speech recognition calculator
US20090157385A1 (en) * 2007-12-14 2009-06-18 Nokia Corporation Inverse Text Normalization
JP2009244639A (ja) * 2008-03-31 2009-10-22 Sanyo Electric Co Ltd 発話装置、発話制御プログラムおよび発話制御方法
US9460708B2 (en) * 2008-09-19 2016-10-04 Microsoft Technology Licensing, Llc Automated data cleanup by substitution of words of the same pronunciation and different spelling in speech recognition
US8364487B2 (en) * 2008-10-21 2013-01-29 Microsoft Corporation Speech recognition system with display information
US8990088B2 (en) * 2009-01-28 2015-03-24 Microsoft Corporation Tool and framework for creating consistent normalization maps and grammars
US8370155B2 (en) * 2009-04-23 2013-02-05 International Business Machines Corporation System and method for real time support for agents in contact center environments
CN102339228B (zh) * 2010-07-22 2017-05-10 上海果壳电子有限公司 上下文无关文法的解析方法
US8959102B2 (en) 2010-10-08 2015-02-17 Mmodal Ip Llc Structured searching of dynamic structured document corpuses
US9110852B1 (en) * 2012-07-20 2015-08-18 Google Inc. Methods and systems for extracting information from text
US9146919B2 (en) * 2013-01-16 2015-09-29 Google Inc. Bootstrapping named entity canonicalizers from English using alignment models
US9471561B2 (en) * 2013-12-26 2016-10-18 International Business Machines Corporation Adaptive parser-centric text normalization
US9535904B2 (en) * 2014-03-26 2017-01-03 Microsoft Technology Licensing, Llc Temporal translation grammar for language translation
US9953646B2 (en) 2014-09-02 2018-04-24 Belleau Technologies Method and system for dynamic speech recognition and tracking of prewritten script
CN104360897B (zh) * 2014-10-29 2017-09-22 百度在线网络技术(北京)有限公司 对话处理方法和对话管理系统
CA3001869C (en) * 2015-10-26 2021-03-16 Anmol WALIA Method and apparatus for facilitating customer intent prediction
US20170154029A1 (en) * 2015-11-30 2017-06-01 Robert Martin Kane System, method, and apparatus to normalize grammar of textual data
US11316865B2 (en) 2017-08-10 2022-04-26 Nuance Communications, Inc. Ambient cooperative intelligence system and method
US20190051395A1 (en) 2017-08-10 2019-02-14 Nuance Communications, Inc. Automated clinical documentation system and method
US10496382B2 (en) * 2018-02-22 2019-12-03 Midea Group Co., Ltd. Machine generation of context-free grammar for intent deduction
US11250382B2 (en) * 2018-03-05 2022-02-15 Nuance Communications, Inc. Automated clinical documentation system and method
US10789955B2 (en) * 2018-11-16 2020-09-29 Google Llc Contextual denormalization for automatic speech recognition
CN111370083B (zh) * 2018-12-26 2023-04-25 阿里巴巴集团控股有限公司 一种文本结构化方法及装置
US11182504B2 (en) * 2019-04-29 2021-11-23 Microsoft Technology Licensing, Llc System and method for speaker role determination and scrubbing identifying information
US11482214B1 (en) * 2019-12-12 2022-10-25 Amazon Technologies, Inc. Hypothesis generation and selection for inverse text normalization for search

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4914704A (en) * 1984-10-30 1990-04-03 International Business Machines Corporation Text editor for speech input
US4829576A (en) * 1986-10-21 1989-05-09 Dragon Systems, Inc. Voice recognition system
US5231670A (en) * 1987-06-01 1993-07-27 Kurzweil Applied Intelligence, Inc. Voice controlled system and method for generating text from a voice controlled input
US5349526A (en) * 1991-08-07 1994-09-20 Occam Research Corporation System and method for converting sentence elements unrecognizable by a computer system into base language elements recognizable by the computer system
DE69232407T2 (de) * 1991-11-18 2002-09-12 Toshiba Kawasaki Kk Sprach-Dialog-System zur Erleichterung von Rechner-Mensch-Wechselwirkung
US5371807A (en) * 1992-03-20 1994-12-06 Digital Equipment Corporation Method and apparatus for text classification
DE69327446T2 (de) * 1992-11-18 2000-05-11 Canon Information Syst Inc Verfahren und Gerät zur Gewinnung von Text aus einer strukturierten Datei und zu dessen Umsetzung in Sprache
EP0607615B1 (de) * 1992-12-28 1999-09-15 Kabushiki Kaisha Toshiba Spracherkennungs-Schnittstellensystem, das als Fenstersystem und Sprach-Postsystem verwendbar ist
JPH0736882A (ja) * 1993-07-19 1995-02-07 Fujitsu Ltd 辞書検索装置
US5651096A (en) * 1995-03-14 1997-07-22 Apple Computer, Inc. Merging of language models from two or more application programs for a speech recognition system

Also Published As

Publication number Publication date
WO1998044484A1 (en) 1998-10-08
EP1016074B1 (de) 2005-03-16
CN1285068C (zh) 2006-11-15
DE69829389D1 (de) 2005-04-21
CN1255224A (zh) 2000-05-31
EP1016074A1 (de) 2000-07-05
JP2001519043A (ja) 2001-10-16
US5970449A (en) 1999-10-19

Similar Documents

Publication Publication Date Title
DE69829389T2 (de) Textnormalisierung unter verwendung einer kontextfreien grammatik
DE60123952T2 (de) Erzeugung von einem einheitlichen aufgabeabhängigen sprachmodell mittels informationsauffindungverfahren
DE60012655T2 (de) Audiowiedergabe von einem geschriebenen Dokument aus mehreren Quellen
DE69828141T2 (de) Verfahren und Vorrichtung zur Spracherkennung
DE69937176T2 (de) Segmentierungsverfahren zur Erweiterung des aktiven Vokabulars von Spracherkennern
DE69922971T2 (de) Netzwerk-interaktive benutzerschnittstelle mittels spracherkennung und verarbeitung natürlicher sprache
DE60126564T2 (de) Verfahren und Anordnung zur Sprachsysnthese
DE60020434T2 (de) Erzeugung und Synthese von Prosodie-Mustern
DE69822296T2 (de) Mustererkennungsregistrierung in einem verteilten system
DE60032846T2 (de) Verfahren und System zur Anbietung von Alternativen für von stochastischen Eingabequellen abgeleitete Texte
EP1135767B1 (de) Verfahren und anordnung zur klassenbildung für ein sprachmodell basierend auf linguistischen klassen
EP1336955B1 (de) Verfahren zur Erzeugung natürlicher Sprache in Computer-Dialogsystemen
DE69432575T2 (de) Dokumentenerkennungssystem mit verbesserter Wirksamkeit der Dokumentenerkennung
DE69814114T2 (de) Natürliche sprache verstehendes verfahren und verstehende vorrichung zur sprachsteuerung einer anwendung
DE60016722T2 (de) Spracherkennung in zwei Durchgängen mit Restriktion des aktiven Vokabulars
DE69834553T2 (de) Erweiterbares spracherkennungssystem mit einer audio-rückkopplung
DE69908047T2 (de) Verfahren und System zur automatischen Bestimmung von phonetischen Transkriptionen in Verbindung mit buchstabierten Wörtern
DE3910467C2 (de) Verfahren und Vorrichtung zur Erzeugung von Berichten
DE69530816T2 (de) Textbearbeitungssystem und Verfahren unter Verwendung einer Wissensbasis
DE60010827T2 (de) Hintergrundsystem für Audiodatenbeseitigung
EP0925578B1 (de) Sprachverarbeitungssystem und verfahren zur sprachverarbeitung
DE19825205C2 (de) Verfahren, Vorrichtung und Erzeugnis zum Generieren von postlexikalischen Aussprachen aus lexikalischen Aussprachen mit einem neuronalen Netz
DE102004003878A1 (de) System und Verfahren zum Identifizieren eines speziellen Wortgebrauchs in einem Dokument
DE10308550A1 (de) System und Verfahren zur automatischen Daten-Prüfung und -Korrektur
DE60305645T2 (de) System und Verfahren zur Text-zu-Sprache Umsetzung mit einer Funktion zur Bereitstellung zusätzlicher Information

Legal Events

Date Code Title Description
8364 No opposition during term of opposition