DE112018005844T5 - Phonetische Muster zum Fuzzy Matching bei Verarbeitung natürlicher Sprache - Google Patents

Phonetische Muster zum Fuzzy Matching bei Verarbeitung natürlicher Sprache Download PDF

Info

Publication number
DE112018005844T5
DE112018005844T5 DE112018005844.1T DE112018005844T DE112018005844T5 DE 112018005844 T5 DE112018005844 T5 DE 112018005844T5 DE 112018005844 T DE112018005844 T DE 112018005844T DE 112018005844 T5 DE112018005844 T5 DE 112018005844T5
Authority
DE
Germany
Prior art keywords
token
phonetic
pattern
procedure according
computer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE112018005844.1T
Other languages
English (en)
Other versions
DE112018005844B4 (de
Inventor
Craig Trim
John Ganci Jr.
Sean Fuoco
Jie Zeng
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE112018005844T5 publication Critical patent/DE112018005844T5/de
Application granted granted Critical
Publication of DE112018005844B4 publication Critical patent/DE112018005844B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/187Phonemic context, e.g. pronunciation rules, phonotactical constraints or phoneme n-grams
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • 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
    • 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/02Feature extraction for speech recognition; Selection of recognition unit
    • 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/02Feature extraction for speech recognition; Selection of recognition unit
    • G10L2015/027Syllables being the recognition units
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/27Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique
    • G10L25/33Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique using fuzzy logic

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Multimedia (AREA)
  • Acoustics & Sound (AREA)
  • Human Computer Interaction (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Machine Translation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Document Processing Apparatus (AREA)

Abstract

Ein Token wird aus einer Eingabe in natürlicher Sprache extrahiert. Ein dem Token entsprechendes phonetisches Muster wird berechnet, wobei das phonetische Muster ein Tonmuster enthält, das einen Teil des Tokens repräsentiert, wenn das Token gesprochen wird. Neue Daten werden aus Daten des phonetischen Musters erzeugt, wobei die neuen Daten eine dem phonetischen Muster entsprechende Silbensequenz enthalten. Ein Zustand einer Datenspeichereinheit wird durch ein Speichern der neuen Daten in einer Matrix aus Silbensequenzen geändert, die dem Token entspricht. Eine dem Token entsprechende Option wird ausgewählt, indem ein Fuzzy-Matching-Algorithmus unter Verwendung eines Prozessors und eines Arbeitsspeichers ausgeführt wird, wobei das Auswählen der Option auf einer Silbensequenz in der Matrix beruht.

Description

  • TECHNISCHES GEBIET
  • Die vorliegende Erfindung betrifft allgemein Natural Language Processing (Verarbeitung natürlicher Sprache, NLP) und insbesondere ein Verfahren, System und Computerprogrammprodukt für phonetische Muster zum Fuzzy Matching bei einer Verarbeitung natürlicher Sprache.
  • HINTERGRUND
  • Bei einer natürlichen Sprache (natural language, NL) handelt es sich um eine „scripted“ (geschriebene) oder eine vokalisierte (gesprochene) Sprache, die eine Form aufweist, die von Menschen hauptsächlich zum Kommunizieren mit anderen Menschen oder mit Systemen genutzt wird, die über eine Schnittstelle für natürliche Sprache verfügen.
  • Natural Language Processing (NLP) ist eine Technik, die einen Informationsaustausch zwischen Menschen und Datenverarbeitungssystemen erleichtert. Zum Beispiel betrifft ein NLP-Zweig ein Umwandeln von Inhalt, den Menschen lesen oder verstehen können, in durch Maschinen verwendbare Daten. Zum Beispiel lassen sich NLP-Engines derzeit verwenden, um eingegebenen Inhalt wie beispielsweise einen Zeitungsartikel oder menschliche Sprache aufzunehmen und aus dem gegebenen Inhalt strukturierte Daten zu erzeugen, wie beispielsweise eine Zusammenfassung des eingegebenen Inhalts, wesentlichste und am wenigsten wesentliche Teile, ein Thema, einen Verweis, Abhängigkeiten innerhalb des Inhalts und dergleichen.
  • Eine NL-Eingabe ist eine Eingabe, die unter Verwendung einer Grammatik einer natürlichen Sprache konstruiert und in einer geeigneten Form präsentiert wird, einschließlich, aber ohne darauf beschränkt zu sein, Text, Audio sowie Formen davon wie beispielsweise eine Übertragung aus hörbarer Sprache, durch Maschinen aus Text generierte Audiodaten. Bei einer Einheit einer NL-Eingabe handelt es sich um den kürzesten eine Bedeutung enthaltenden Abschnitt der Eingabe. Zum Beispiel wäre in der englischen Sprache eine Einheit ein Wort; und Worte bilden andere größere Strukturen wie beispielsweise Ausdrücke, Sätze und Abschnitte in der NL-Eingabe. Eine Einheit einer NL-Eingabe wird hier auch als ein Token bezeichnet.
  • Gegenwärtig stehen Algorithmen zur Verfügung, um Maschinen ein Verstehen von NL-Eingaben zu ermöglichen. Ein wesentlicher Teil eines Verstehens der NL-Eingabe besteht darin, wiederholt und zuverlässig die richtige Wahl aus den zahlreichen wahrscheinlichen Maschineninterpretationen eines NL-Tokens zu treffen. Zum Beispiel sollte eine Maschine in der Lage sein, den Schluss zu ziehen, dass es sich bei „tow-mah-tow“ und „tuhmay-tow“ einfach um unterschiedliche Arten handelt, „tomato“ zu sagen, und dass, wenn „tow-mah-tow“ als ein NL-Token präsentiert wird, die richtige Auswahl oder Wahl für dieses Token „tomato“ ist.
  • Bei den veranschaulichenden Ausführungsformen wird anerkannt, dass ein Verstehen eines Tokens durch Maschinen gegenüber einer Anzahl von Faktoren empfindlich ist. In einigen Fällen kann eine auf ein Token oder einen Abschnitt davon gelegte Betonung dem Token entsprechend eine falsche Auswahl verursachen. In einigen anderen Fällen beeinflusst ein Dialekt, ein Akzent, eine Örtlichkeit der NL-Eingabe die Bedeutung des Tokens. Des Weiteren kann es mehrere gültige Wahlmöglichkeiten geben, die einem Token entsprechen, aber auf Grundlage der beteiligten Faktoren ist nur eine richtig.
  • Die Faktoren, die durch die veranschaulichenden Ausführungsformen in Betracht gezogen werden, betreffen die hier beschriebenen phonetischen Varianten eines Tokens. Als solche unterscheiden sich die durch die veranschaulichenden Ausführungsformen in Betracht gezogenen Faktoren, die ein Verstehen von NL-Token durch Maschinen beeinflussen, von Gründen der Art von Rechtschreib- und Druckfehlern, die ein richtiges Erkennen von Token beeinflussen. Gegenwärtig gibt es Techniken, um eine NLP-Maschine dabei zu unterstützen, die richtige Wahlmöglichkeit auszuwählen, wenn falsch geschriebene Token in NL-Texteingaben vorkommen. Mehrere falsch geschriebene Token werden demselben richtigen Wort zugeordnet, z.B. werden Falschschreibungen wie beispielsweise „tirminate“, „termate“ sowie „termenate“ der richtigen Auswahl - „terminate“ - zugeordnet, um die NLP-Maschine beim Treffen der richtigen Auswahl zu unterstützen, wenn ein falsch geschriebenes Token vorkommt.
  • Einige gegenwärtig verwendete NLP-Algorithmen bauen große Cachespeicher von Falschschreibungen auf, die richtigen Schreibweisen zugeordnet sind. Derartige Cachespeicher können groß sein, aber sie sind doch weit davon entfernt, vollständig zu sein. Zum Beispiel kann allein für den Zwischenspeicher der englischen Sprache ein einziges Wort aus acht Zeichen theoretisch 268 (208.827.064.576) mögliche Varianten aufweisen. Einige Algorithmen in dieser Klasse von Algorithmen optimieren den Cachespeicher, z.B. indem nur die häufigsten Falschschreibungen einbezogen werden. Dennoch bleibt der Cachespeicher von Zuordnungen weit entfernt davon, vollständig zu sein, ist nicht skalierbar und handhabt nur eine begrenzte Art von Problemen - die Falschschreibungen in Texteingaben.
  • Fuzzy Matching ist eine weitere Klasse von Algorithmen, die dazu verwendet werden, ein NL-Token einer Wahlmöglichkeit bzw. Auswahlmöglichkeit aus einer Menge von Auswahlmöglichkeiten zuzuordnen. Ein Fuzzy-Matching-Algorithmus ist ein String-Matching-Algorithmus, der Varianten von Edit-Distance-Algorithmen als ein Mittel zum Auffinden von Ähnlichkeiten zwischen einem gegebenen Token-String aus Texteingabe und einem zur Verfügung stehenden Auswahl-String in einer Menge von Auswahlmöglichkeiten benutzt. Fuzzy-Matching-Algorithmen bearbeiten auch NL-Texteingaben und sind gegenwärtig derart konfiguriert, dass sie falsch geschriebene Zeichen-Strings richtig verstehen.
  • Gegenwärtig sind Fuzzy-Matching-Algorithmen dafür konzipiert, eine hohe Trefferquote (recall) auf Kosten von Präzision aufzuweisen. Trefferquote ist ein Bruchteil von relevanten Instanzen, die abgerufen werden, und Präzision ist der Bruchteil abgerufener Instanzen, die relevant sind. Präzision kann als ein Maß von Genauigkeit oder Qualität angesehen werden, während Trefferquote ein Maß von Vollständigkeit oder Menge ist. Bei maximaler Präzision werden keine falschen positiven Ergebnisse angezeigt, und bei maximaler Trefferquote werden keine falschen negativen Ergebnisse angezeigt.
  • KU RZDARSTELLU NG
  • Die veranschaulichenden Ausführungsformen stellen ein Verfahren, System und Computerprogrammprodukt bereit. Eine Ausführungsform weist ein Verfahren auf, das ein Token aus einer Eingabe in natürlicher Sprache (Natural Language, NL) extrahiert. Die Ausführungsform berechnet ein dem Token entsprechendes phonetisches Muster, wobei das phonetische Muster ein Tonmuster aufweist, das einen Teil des Tokens repräsentiert, wenn das Token gesprochen wird. Die Ausführungsform erzeugt neue Daten aus Daten des phonetischen Musters, wobei die neuen Daten eine dem phonetischen Muster entsprechende Silbensequenz aufweisen. Die Ausführungsform ändert einen Zustand einer Datenspeichereinheit durch Speichern der neuen Daten in einer Matrix aus Silbensequenzen, die dem Token entspricht. Die Ausführungsform wählt eine Option, die dem Token entspricht, durch Ausführen eines Fuzzy-Matching-Algorithmus unter Verwendung eines Prozessors und eines Speichers aus, wobei das Auswählen auf einer Silbensequenz in der Matrix beruht. Auf diese Weise bewirkt die Ausführungsform eine Verbesserung der Präzision des Fuzzy-Matching-Algorithmus durch Auswählen einer Matching-Option für das NL-Token, wobei die Option ausgewählt wird, da die Option auch einer das Token repräsentierenden Silbensequenz entspricht.
  • Eine weitere Ausführungsform berechnet ferner eine zweite Silbensequenz, die dem phonetischen Muster entspricht. Die Ausführungsform speichert die zweite Silbensequenz in der Matrix. Auf diese Weise ermöglicht die Ausführungsform ein Konfigurieren einer Mehrzahl von Silbensequenzen, die repräsentativ für das Token ist.
  • Eine weitere Ausführungsform ermittelt ferner, ob ein gespeichertes phonetisches Muster in einem phonetischen Repository dem Token entspricht. Die Ausführungsform wählt als Reaktion auf das dem Token entsprechende gespeicherte phonetische Muster das gespeicherte phonetische Muster als das phonetische Muster aus. Daher verwendet die Ausführungsform ein historisch gelerntes phonetisches Muster aus einem früheren Vorkommen des Tokens.
  • Eine weitere Ausführungsform modifiziert ferner, um das phonetische Muster zu bilden, ein einem zweiten Token entsprechendes phonetisches Muster in einem phonetischen Repository, wobei das zweite Token dadurch mit dem Token vergleichbar ist, dass es über ein größeres als ein Schwellenausmaß an struktureller Ähnlichkeit mit dem Token verfügt. Auf diese Weise verwendet die Ausführungsform ein phonetisches Muster eines vergleichbaren, aber anderen Tokens, um ein phonetisches Muster des Tokens zu konstruieren.
  • Bei einer weiteren Ausführungsform ist die strukturelle Ähnlichkeit vorhanden, da mindestens ein Schwellenausmaß an Ähnlichkeit zwischen einer Schreibweise des Tokens und einer Schreibweise des zweiten Tokens vorhanden ist. Auf diese Weise stellt die Ausführungsform eine Art bereit, das vergleichbare Token auszuwählen.
  • Bei einer weiteren Ausführungsform ist die strukturelle Ähnlichkeit vorhanden, da mindestens ein Schwellenausmaß an Ähnlichkeit zwischen einer Länge einer Schreibweise des Tokens und einer Länge einer Schreibweise des zweiten Tokens vorhanden ist. Auf diese Weise stellt die Ausführungsform eine weitere Art bereit, das vergleichbare Token auszuwählen.
  • Bei einer weiteren Ausführungsform ist die strukturelle Ähnlichkeit vorhanden, da mindestens ein Schwellenausmaß an Ähnlichkeit zwischen einer Vokalsequenz in dem Token und einer Vokalsequenz in dem zweiten Token vorhanden ist. Auf diese Weise stellt die Ausführungsform eine weitere Art bereit, das vergleichbare Token auszuwählen.
  • Bei einer weiteren Ausführungsform weist das Tonmuster eine phonetische Repräsentation auf, wobei die strukturelle Ähnlichkeit vorhanden ist, da mindestens ein Schwellenausmaß an Ähnlichkeit zwischen einer Anzahl phonetischer Repräsentationen in dem Token und einer Anzahl phonetischer Repräsentationen in dem zweiten Token vorhanden ist. Auf diese Weise stellt die Ausführungsform eine weitere Art bereit, das vergleichbare Token auszuwählen.
  • Bei einer weiteren Ausführungsform weist das Tonmuster eine phonetische Repräsentation auf, wobei die strukturelle Ähnlichkeit vorhanden ist, da mindestens ein Schwellenausmaß an Ähnlichkeit zwischen einer Reihenfolge phonetischer Repräsentationen in dem Token und einer Reihenfolge phonetischer Repräsentationen in dem zweiten Token vorhanden ist. Auf diese Weise stellt die Ausführungsform eine weitere Art bereit, das vergleichbare Token auszuwählen.
  • Bei einer weiteren Ausführungsform weist das Tonmuster eine phonetische Repräsentation auf, wobei die strukturelle Ähnlichkeit vorhanden ist, da mindestens ein Schwellenausmaß an Ähnlichkeit zwischen einer Betonung auf der phonetischen Repräsentation in dem Token und einer Betonung auf der phonetischen Repräsentation in dem zweiten Token vorhanden ist. Auf diese Weise stellt die Ausführungsform eine weitere Art bereit, das vergleichbare Token auszuwählen.
  • Eine weitere Ausführungsform berechnet ferner das phonetische Muster aus einem zweiten phonetischen Muster durch Hinzufügen eines zweiten Tonmusters zu dem zweiten phonetischen Muster. Auf diese Weise stellt die Ausführungsform eine Art eines Modifizierens des phonetischen Musters des vergleichbaren Tokens bereit, um das phonetische Muster des Tokens zu erzeugen.
  • Eine weitere Ausführungsform berechnet ferner das phonetische Muster aus einem zweiten phonetischen Muster durch Entfernen eines zweiten Tonmusters aus dem zweiten phonetischen Muster. Auf diese Weise stellt die Ausführungsform eine weitere Art eines Modifizierens des phonetischen Musters des vergleichbaren Tokens bereit, um das phonetische Muster des Tokens zu erzeugen.
  • Eine weitere Ausführungsform berechnet ferner das phonetische Muster aus einem zweiten phonetischen Muster durch Ersetzen eines zweiten Tonmusters in dem zweiten phonetischen Muster durch das Tonmuster. Auf diese Weise stellt die Ausführungsform eine weitere Art eines Modifizierens des phonetischen Musters des vergleichbaren Tokens bereit, um das phonetische Muster des Tokens zu erzeugen.
  • Eine weitere Ausführungsform berechnet ferner das phonetische Muster aus einem zweiten phonetischen Muster durch Ändern einer Sequenz von Tonmustern in dem zweiten phonetischen Muster. Auf diese Weise stellt die Ausführungsform eine weitere Art eines Modifizierens des phonetischen Musters des vergleichbaren Tokens bereit, um das phonetische Muster des Tokens zu erzeugen.
  • Eine weitere Ausführungsform berechnet ferner das phonetische Muster aus einem zweiten phonetischen Muster durch Ändern einer Dauer eines zweiten Tonmusters in dem zweiten phonetischen Muster. Auf diese Weise stellt die Ausführungsform eine weitere Art eines Modifizierens des phonetischen Musters des vergleichbaren Tokens bereit, um das phonetische Muster des Tokens zu erzeugen.
  • Eine weitere Ausführungsform berechnet ferner das phonetische Muster aus einem zweiten phonetischen Muster durch Ändern einer Betonung auf einem zweiten Tonmuster in dem zweiten phonetischen Muster. Auf diese Weise stellt die Ausführungsform eine weitere Art eines Modifizierens des phonetischen Musters des vergleichbaren Tokens bereit, um das phonetische Muster des Tokens zu erzeugen.
  • Eine weitere Ausführungsform berechnet ferner eine Menge von dem Token entsprechenden phonetischen Mustern, wobei das phonetische Muster ein Element der Menge phonetischer Muster ist. Auf diese Weise ermöglicht die Ausführungsform, dass eine Mehrzahl von phonetischen Mustern das Token repräsentieren kann.
  • Bei einer weiteren Ausführungsform repräsentiert das Tonmuster den Teil des Tokens, wenn das Token in einem Dialekt einer Sprache gesprochen wird. Auf diese Weise ermöglicht die Ausführungsform, dass eine Mehrzahl von phonetischen Mustern das Token repräsentieren kann, sodass ein phonetisches Muster auf Tonmustern beruht, die durch Sprechen in einem Dialekt erzeugt werden.
  • Bei einer weiteren Ausführungsform repräsentiert das Tonmuster den Teil des Tokens, wenn das Token mit einem Akzent in einer Sprache gesprochen wird. Auf diese Weise ermöglicht die Ausführungsform, dass eine Mehrzahl von phonetischen Mustern das Token repräsentieren kann, sodass ein phonetisches Muster auf Tonmustern beruht, die durch Sprechen mit einem Akzent erzeugt werden.
  • Bei einer weiteren Ausführungsform repräsentiert das Tonmuster den Teil des Tokens, wenn das Token in einer Sprache mit einer Sprechbesonderheit eines Sprechers gesprochen wird. Auf diese Weise ermöglicht die Ausführungsform, dass eine Mehrzahl von phonetischen Mustern das Token repräsentieren kann, sodass ein phonetisches Muster auf Tonmustern beruht, die durch Eigenheiten eines Sprechers, die das Sprechen betreffen, erzeugt werden.
  • Bei einer weiteren Ausführungsform weist das Token eine kürzeste eine Bedeutung aufweisende Einheit von Sprache in der NL-Eingabe auf. Auf diese Weise stellt die Ausführungsform eine spezifische Art von linguistischem Konstrukt bereit, das ein Token bilden kann.
  • Eine Ausführungsform enthält ein durch Computer verwendbares Computerprogrammprodukt. Zu dem durch Computer verwendbaren Programmprodukt zählen eine computerlesbare Speichereinheit sowie auf der Speichereinheit gespeicherte Programmanweisungen.
  • Zu einer Ausführungsform zählt ein Computersystem. Zu dem Computersystem zählen ein Prozessor, ein computerlesbarer Arbeitsspeicher und eine computerlesbare Speichereinheit sowie Programmanweisungen, die auf der Speichereinheit zum Ausführen durch den Prozessor über den Arbeitsspeicher gespeichert sind.
  • Bei den veranschaulichenden Ausführungsformen wird anerkannt, dass andere Faktoren als Falschschreibungen in Texteingaben verantwortlich für Präzision beim Verstehen von NL-Token sind. Derartige Faktoren sind eher von den tonalen oder phonetischen Eigenschaften des Tokens als von der Richtigkeit oder Falschheit der Text-Schreibweise des Tokens abhängig.
  • Bei den veranschaulichenden Ausführungsformen wird anerkannt, dass ein Verfahren benötigt wird, durch das die phonetischen Varianten von Token bei NLP repräsentiert werden können, sodass eine Präzision der Fuzzy-Matching-Anwendung zunimmt, während gleichzeitig die Trefferquote-Eigenschaft unverändert bleibt, wenn Auswahlen getroffen werden, die NL-Eingaben entsprechen. Bei den veranschaulichenden Ausführungsformen wird anerkannt, dass die gegenwärtig zur Verfügung stehenden Fuzzy-Matching-Algorithmen modifiziert werden müssen, um phonetische Eigenschaften von Token als zusätzliche Eingaben beim Ermitteln der richtigen dem Token entsprechenden Auswahl verwenden können.
  • Figurenliste
  • Bestimmte neuartige Merkmale, die als für die Erfindung kennzeichnend angesehen werden, sind in den angefügten Ansprüchen dargelegt. Die Erfindung selbst, wie auch eine bevorzugte Art der Verwendung, weitere Aufgaben und Vorteile davon, sind jedoch am besten durch Bezugnahme auf die folgende ausführliche Beschreibung der veranschaulichenden Ausführungsformen zu verstehen, die in Verbindung mit den begleitenden Zeichnungen gelesen werden sollte, in denen:
    • 1 ein Blockschaubild eines Netzwerks von Datenverarbeitungssystemen zeigt, in dem veranschaulichende Ausführungsformen realisiert werden können;
    • 2 ein Blockschaubild eines Datenverarbeitungssystems zeigt, in dem veranschaulichende Ausführungsformen realisiert werden können;
    • 3 ein Blockschaubild einer beispielhaften Konfiguration für phonetische Muster zum Fuzzy Matching bei einer Verarbeitung natürlicher Sprache gemäß einer veranschaulichenden Ausführungsform zeigt;
    • 4 ein Blockschaubild einer beispielhaften Anwendung für phonetische Muster zum Fuzzy Matching bei einer Verarbeitung natürlicher Sprache gemäß einer veranschaulichenden Ausführungsform zeigt;
    • 5 einen Ablaufplan eines beispielhaften Prozesses für phonetische Muster zum Fuzzy Matching bei einer Verarbeitung natürlicher Sprache gemäß einer veranschaulichenden Ausführungsform zeigt; und
    • 6 einen Ablaufplan eines beispielhaften Prozesses für Maschinenlernen zum Verbessern eines Auswählens phonetischer Muster für NL-Token gemäß einer veranschaulichenden Ausführungsform zeigt.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Bei den veranschaulichenden Ausführungsformen wird anerkannt, dass die gegenwärtig zur Verfügung stehenden Werkzeuge oder Lösungen nicht auf diese Anforderungen/Probleme eingehen oder keine geeigneten Lösungen für diese Anforderungen/Probleme bereitstellen. Die zur Beschreibung der Erfindung verwendeten veranschaulichenden Ausführungsformen gehen allgemein auf die vorstehend beschriebenen Probleme sowie andere verwandte Probleme ein und lösen diese durch phonetische Muster zum Fuzzy Matching bei einer Verarbeitung natürlicher Sprache.
  • Eine Ausführungsform kann als eine Softwareanwendung realisiert werden. Die Anwendung, die eine Ausführungsform oder eine oder mehrere Komponenten davon realisiert, kann als eine Modifikation einer vorhandenen Anwendung konfiguriert werden, die einen Fuzzy-Matching-Algorithmus (eine Fuzzy-Matching-Anwendung) realisiert - d.h. eine native Anwendung in der Fuzzy-Matching-Anwendung als eine Anwendung, die in einem Datenverarbeitungssystem ausgeführt wird, das mit einer vorhandenen Fuzzy-Matching-Anwendung über ein Nahbereichs-Funknetzwerk wie beispielsweise Bluetooth, über ein kabelgebundenes oder festnetzgebundenes lokales Netzwerk (local area network, LAN) Daten austauscht - d.h. eine lokale Anwendung in dem LAN, als eine Anwendung, die in einem Datenverarbeitungssystem ausgeführt wird, das mit einer vorhandenen Fuzzy-Matching-Anwendung über ein Weitverkehrsnetzwerk (wide area network, WAN) Daten austauscht - d.h. eine entfernt angeordnete Anwendung in dem WAN, als eine separate Anwendung, die in Verbindung mit einer vorhandenen Fuzzy-Matching-Anwendung auf andere Arten, einer eigenständigen Anwendung oder einer Kombination davon arbeitet.
  • Innerhalb des Schutzbereichs der veranschaulichenden Ausführungsformen ist eine phonetische Repräsentation ein Tonmuster, das die Gesamtheit oder einen Teil eines NL-Tokens repräsentiert, wenn das Token gesprochen wird. Eine Silbe ist ein phonetisches Bauelement, nämlich ein in einer Rede in einer gegebenen Sprache verwendeter Ton, der unter Verwendung eines oder mehrerer Vokale dieser Sprache repräsentiert werden kann.
  • Gemäß einer veranschaulichenden Ausführungsform wird ein Token aus einer NL-Eingabe extrahiert. Die Ausführungsform ermittelt eine oder mehrere unterscheidbare phonetische Repräsentationen (unterscheidbare phonetische Töne) die zusammen ein phonetisches Muster bilden, und das phonetische Muster repräsentiert das Token. Zum Beispiel besteht eine Art, ein beispielhaftes Token - „tomato“, - zu repräsentieren, darin, dass „tow“, „mah“ und „tow“ eine Menge aus drei phonetischen Repräsentationen bilden, die zusammen das phonetische Muster „tow-mah-tow“ bilden, das das Token „tomato“ repräsentiert. Eine weitere beispielhafte Art, das beispielhafte Token - „tomato“, - zu repräsentieren, besteht darin, dass „tuh“, „may“ und „tow“ eine andere Menge aus drei phonetischen Repräsentationen bilden, die zusammen ein zweites phonetisches Muster „tuh-may-tow“ bilden, das ebenfalls das Token „tomato“ repräsentiert.
  • Anders ausgedrückt konstruiert die Ausführungsform, ein Token vorausgesetzt, ein oder mehrere phonetische Muster unter Verwendung entsprechender Mengen von phonetischen Repräsentationen, sodass jedes der phonetischen Muster möglicherweise das gegebene Token repräsentieren kann.
  • Eine Ausführungsform speichert ein phonetisches Muster eines Tokens in einem Repository - dem phonetischen Repository. Im Lauf der Zeit, beim Vorkommen mehrerer Token und mehrerer Instanzen desselben Tokens unter unterschiedlichen Umständen, wird das phonetische Repository mit einem oder mehreren phonetischen Mustern gefüllt, die dem einen oder mehreren Token entsprechen.
  • Bei einer Ausführungsform steht, ein Token vorausgesetzt, eine Menge von dem Token entsprechenden phonetischen Mustern in dem phonetischen Repository zur Verfügung. Wenn ein phonetisches Muster des Tokens in dem Repository zur Verfügung steht, wird das phonetische Muster in die Menge phonetischer Muster für dieses Token extrahiert.
  • Bei einer weiteren Ausführungsform kann ein phonetisches Muster eines anderen Tokens, das in seiner phonetischen Struktur vergleichbar mit oder ähnlich dem gegebenen Token ist, in dem Repository verfügbar sein. Eine Ausführungsform berechnet ein phonetisches Muster des Tokens aus dem phonetischen Muster des vergleichbaren Tokens.
  • Zum Beispiel steht ein phonetisches Muster für „tomato“ möglicherweise nicht zur Verfügung, aber ein phonetisches Muster für „potato“ steht möglicherweise in dem Repository zur Verfügung. Eine Ausführungsform ermittelt die strukturelle Ähnlichkeit zwischen einem gegebenen Token und einem vergleichbaren Token, indem sie für die zwei Token die Schreibweise, die Länge der Schreibweise, die Anordnung der Vokale darin, die Anzahl phonetischer Repräsentationen darin, die Reihenfolge phonetischer Repräsentationen darin, die Betonung auf einer bestimmten phonetischen Repräsentation oder eine Kombination dieser und anderer derartiger Eigenschaften vergleicht. Wenn die strukturellen Ähnlichkeiten zwischen dem gegebenen Token und einem vergleichbaren Token ein Schwellenausmaß an Ähnlichkeit überschreiten, verwendet die Ausführungsform das phonetische Muster des vergleichbaren Tokens aus dem Repository und berechnet ein phonetisches Muster des gegebenen Tokens aus diesem phonetischen Muster.
  • Bei einer Ausführungsform kann das Berechnen des phonetisches Musters des gegebenen Tokens ein Hinzufügen einer phonetischen Repräsentation zu dem phonetischen Muster des vergleichbaren Tokens, ein Entfernen einer phonetischen Repräsentation aus dem phonetischen Muster des vergleichbaren Tokens, ein Ersetzen einer phonetischen Repräsentation in dem phonetischen Muster des vergleichbaren Tokens durch eine andere phonetische Repräsentation, ein Ändern einer Sequenz phonetischer Repräsentationen in dem phonetischen Muster des vergleichbaren Tokens, ein Komprimieren einer Dauer, während der das phonetische Muster des vergleichbaren Tokens gesprochen wird oder erklingt, ein Verlängern einer Dauer, während der das phonetische Muster des vergleichbaren Tokens gesprochen wird oder erklingt, ein Hinzufügen einer Betonung zu einer phonetischen Repräsentation in dem phonetischen Muster des vergleichbaren Tokens, ein Entfernen einer Betonung aus einer phonetischen Repräsentation in dem phonetischen Muster des vergleichbaren Tokens, ein Ändern einer Betonung von einer phonetischen Repräsentation zu einer anderen phonetischen Repräsentation in dem phonetischen Muster des vergleichbaren Tokens sowie eine Kombination dieser und zahlreicher anderer Aspekte in Abhängigkeit von der Sprache, dem Dialekt, dem Akzent, dem Kontext, den Besonderheiten des Sprechers usw. enthalten
  • Unabhängig von der Form, in der die NL-Eingabe bereitgestellt wird - z.B. Text-, Audio- oder hier beschriebene andere Formen, kann eine Ausführungsform eine Menge einem Token entsprechender phonetischer Muster unter Verwendung phonetischer Muster für das Token aus dem Repository sowie phonetischer Muster vergleichbarer Token aus den Repositories konstruieren. Wenn das Token aus einer in Audio-Form vorliegenden NL-Eingabe extrahiert wird, kann ein phonetisches Muster für ein Token auch durch Segmentieren der Audio-Form des Tokens in konstituierende phonetische Repräsentationen konstruiert werden.
  • Sobald ein phonetisches Muster für ein Token zur Verfügung steht, berechnet eine Ausführungsform eine Silbe, die jeder phonetischen Repräsentation in dem phonetischen Muster entspricht. Auf diese Weise wandelt die Ausführungsform ein phonetisches Muster in eine Sequenz von Silben um. Die Umwandlung phonetischer Repräsentation in eine Silbe kann durch Abgleichen eines in der phonetischen Repräsentation vorhandenen Tons mit einem durch Erklingenlassen einer Silbe erzeugten Ton durchgeführt werden. Zum Beispiel enthält das phonetische Muster „tow-mah-tow“ die Tonsequenz „oh“ (ɒ), „ah“ (ɑ:) und „oh“ (ɒ). Daher lautet die Sequenz von Silben, die dem phonetischen Muster des Tokens entspricht, „ɒ ɑ: ɒ“.
  • Indem sie auf diese Weise arbeitet, konstruiert die Ausführungsform eine Silbensequenz für jedes dem Token entsprechende phonetische Muster. Für ein einzelnes phonetisches Muster kann mehr als eine Silbensequenz möglich sein. Die derart erzeugte Menge von Silbensequenzen bildet eine Matrix von Silbensequenzen.
  • Eine Ausführungsform modifiziert eine vorhandene Fuzzy-Matching-Anwendung, um die Matrix von Silbensequenzen als eine unterstützende Eingabe zusammen mit der NL-Eingabe zu akzeptieren. Die modifizierte Fuzzy-Matching-Anwendung verwendet eine Silbensequenz in der Matrix in dem Fuzzy-Matching-Algorithmus, um eine einem Token entsprechende geeignete Auswahl zu identifizieren. Die unter Verwendung der Silbensequenzen identifizierten Auswahlen zeigen eine höhere Präzision als die Auswahlen, die nur unter Verwendung des Fuzzy-Matching-Algorithmus nach dem Stand der Technik ohne Verwendung der Silbensequenzen identifiziert wurden.
  • Die hier beschriebene Art phonetischer Muster zum Fuzzy-Matching bei einer Verarbeitung natürlicher Sprache steht bei den gegenwärtig zur Verfügung stehenden Verfahren nicht zur Verfügung. Ein Verfahren für eine hier beschriebene Ausführungsform weist, wenn es realisiert wird, um auf einer Einheit oder einem Datenverarbeitungssystem ausgeführt zu werden, eine wesentliche Weiterentwicklung der Funktionalität dieser Einheit oder dieses Datenverarbeitungssystems auf, indem eine Präzision einer Fuzzy-Matching-Anwendung verbessert wird, ohne die Trefferquoteneigenschaften der Fuzzy-Matching-Anwendung in dem technischen Gebiet von NLP zu stören.
  • Die veranschaulichenden Ausführungsformen werden nur beispielhaft in Bezug auf bestimmte Arten von NL, NL-Eingaben, Grammatiken, Token, phonetische Repräsentationen, phonetische Muster, Silben, Silbensequenzen, Matrizen, Fuzzy-Matching-Algorithmen, Fuzzy-Matching-Anwendungen, Einheiten, Datenverarbeitungssysteme, Umgebungen, Komponenten sowie Anwendungen beschrieben. Jegliche spezifischen Erscheinungsformen dieser und anderer ähnlicher Artefakte sollen die Erfindung nicht einschränken. Jegliche spezifische Erscheinungsform dieser und anderer ähnlicher Artefakte kann innerhalb des Schutzbereichs der veranschaulichenden Ausführungsformen ausgewählt werden.
  • Darüber hinaus können die veranschaulichenden Ausführungsformen mit Bezug auf jede Art von Daten, Datenquelle oder Zugriff auf eine Datenquelle über ein Datennetzwerk realisiert werden. Jede Art Datenspeichereinheit kann innerhalb des Schutzbereichs der Erfindung die Daten für eine Ausführungsform der Erfindung bereitstellen, entweder lokal an einem Datenverarbeitungssystem oder über ein Datennetzwerk. Wenn eine Ausführungsform als eine mobile Einheit verwendend beschrieben wird, kann innerhalb des Schutzbereichs der veranschaulichenden Ausführungsformen jede Art von Datenspeichereinheit, die zur Verwendung mit der mobilen Einheit geeignet ist, einer derartigen Ausführungsform die Daten bereitstellen, entweder lokal an der mobilen Einheit oder über ein Datennetzwerk.
  • Die veranschaulichenden Ausführungsformen werden lediglich beispielhaft unter Verwendung von spezifischem Code, von spezifischen Entwürfen, Architekturen, Protokollen, Layouts, schematischen Zeichnungen und Werkzeugen beschrieben und schränken die veranschaulichenden Ausführungsformen nicht ein. Darüber hinaus werden die veranschaulichenden Ausführungsformen in einigen Fällen der Klarheit der Beschreibung halber lediglich beispielhaft unter Verwendung bestimmter Software, Werkzeuge sowie Datenverarbeitungsumgebungen beschrieben. Die veranschaulichenden Ausführungsformen können in Verbindung mit anderen vergleichbaren oder für einen ähnlichen Zweck bestimmten Strukturen, Systemen oder Architekturen verwendet werden. Zum Beispiel können innerhalb des Schutzbereichs der Erfindung andere vergleichbare mobile Einheiten, Strukturen, Systeme, Anwendungen oder Architekturen dafür in Verbindung mit einer derartigen Ausführungsform der Erfindung verwendet werden. Eine veranschaulichende Ausführungsform kann in Hardware, Software oder einer Kombination davon realisiert werden.
  • Die Beispiele in dieser Offenbarung dienen nur der Klarheit der Beschreibung und schränken die veranschaulichenden Ausführungsformen nicht ein. Zusätzliche Daten, Operationen, Aktionen, Aufgaben, Aktivitäten und Bearbeitungen sind aufgrund dieser Offenbarung vorstellbar und werden innerhalb des Schutzumfangs der veranschaulichenden Ausführungsformen in Betracht gezogen.
  • Jegliche hier aufgeführten Vorteile sind lediglich Beispiele und sollen die veranschaulichenden Ausführungsformen nicht einschränken. Weitere oder andere Vorteile können möglicherweise mithilfe spezifischer veranschaulichender Ausführungsformen realisiert werden. Darüber hinaus kann eine bestimmte veranschaulichende Ausführungsform über einige, alle oder keine der vorstehend aufgeführten Vorteile verfügen.
  • Was die Figuren und insbesondere die 1 und 2 anbelangt, so sind diese Figuren Beispieldarstellungen von Datenverarbeitungsumgebungen, in denen veranschaulichende Ausführungsformen realisiert werden können. Die 1 und 2 sind lediglich Beispiele und sollen hinsichtlich der Umgebungen, in denen verschiedene Ausführungsformen realisiert werden können, keinerlei Beschränkung behaupten oder andeuten. Durch eine bestimmte Realisierung können auf Grundlage der folgenden Beschreibung zahlreiche Modifikationen an den gezeigten Umgebungen vorgenommen werden.
  • 1 zeigt ein Blockschaubild eines Netzwerks von Datenverarbeitungssystemen, in dem veranschaulichende Ausführungsformen realisiert werden können. Eine Datenverarbeitungsumgebung 100 ist ein Netzwerk aus Computern, in dem die veranschaulichenden Ausführungsformen realisiert werden können. Die Datenverarbeitungsumgebung 100 enthält ein Netzwerk 102. Das Netzwerk 102 ist das Medium, das dazu verwendet wird, Datenübertragungsverbindungen zwischen verschiedenen Einheiten und Computern bereitzustellen, die in der Datenverarbeitungsumgebung 100 miteinander verbunden sind. Das Netzwerk 102 kann Verbindungen wie beispielsweise kabelgebundene, kabellose Datenübertragungsverbindungen oder Lichtwellenleiterkabel enthalten.
  • Clients oder Server sind nur beispielhafte Rollen bestimmter mit dem Netzwerk 102 verbundener Datenverarbeitungssysteme und sollen andere Konfigurationen oder Rollen für diese Datenverarbeitungssysteme nicht ausschließen. Ein Server 104 und ein Server 106 sind wie auch eine Speichereinheit 108 mit dem Netzwerk 102 verbunden. Softwareanwendungen können auf jedem Computer in der Datenverarbeitungsumgebung 100 ausgeführt werden. Die Clients 110, 112 und 114 sind ebenfalls mit dem Netzwerk 102 verbunden. Ein Datenverarbeitungssystem wie beispielsweise der Server 104 oder 106 oder der Client 110, 112 oder 114 kann Daten enthalten, und es können Softwareanwendungen oder Softwarewerkzeuge auf ihm ausgeführt werden.
  • Nur beispielhaft und ohne jegliche Einschränkung einer derartigen Architektur anzudeuten, zeigt 1 bestimmte Komponenten, die bei einer beispielhaften Realisierung einer Ausführungsform verwendet werden können. Zum Beispiel werden die Server 104 und 106 sowie die Clients 110, 112, 114 nur beispielhaft als Server und Clients gezeigt und nicht, um eine Einschränkung auf eine Client-Server-Architektur anzudeuten. Als ein weiteres Beispiel kann innerhalb des Schutzbereichs der veranschaulichenden Ausführungsformen eine Ausführungsform über mehrere Datenverarbeitungssysteme und ein Datennetzwerk verteilt werden wie gezeigt, während eine andere Ausführungsform auf einem einzelnen Datenverarbeitungssystem realisiert werden kann. Die Datenverarbeitungssysteme 104, 106, 110, 112 und 114 repräsentieren außerdem beispielhafte Knoten in einem Cluster, Partitionen sowie andere Konfigurationen, die zum Realisieren einer Ausführungsform geeignet sind.
  • Eine Einheit 132 ist ein Beispiel einer hier beschriebenen Einheit. Die Einheit 132 kann zum Beispiel die Form eines Smartphones, eines Tablet-Computers, eines Laptop-Computers, des Clients 110 in einer stationären oder einer tragbaren Form, einer am Körper tragbaren Datenverarbeitungseinheit oder jeder anderen geeigneten Einheit annehmen. Jede Softwareanwendung, die in 1 als auf einem anderen Datenverarbeitungssystem ausgeführt beschrieben wird, kann derart konfiguriert werden, dass sie in der Einheit 132 auf eine ähnliche Weise ausgeführt wird. Jegliche Daten oder Informationen, die in 1 in einem anderen Datenverarbeitungssystem gespeichert oder erzeugt werden, können derart konfiguriert werden, dass sie in der Einheit 132 auf eine ähnliche Weise gespeichert oder erzeugt werden.
  • Eine Anwendung 105 realisiert eine hier beschriebene Ausführungsform. Eine Fuzzy-Matching-Anwendung 107 ist eine modifizierte Fuzzy-Matching-Anwendung, die einen modifizierten Fuzzy-Matching-Algorithmus enthält, wobei der modifizierte Fuzzy-Matching-Algorithmus derart modifiziert wurde, dass er eine Matrix aus Silbensequenzen als eine zusätzliche Eingabe zum Identifizieren einer richtigen, einem Token in einer NL-Eingabe repräsentierenden Auswahl akzeptiert. Ein phonetisches Repository 109 enthält ein oder mehrere phonetische Muster für einen oder mehrere Token in einer oder mehreren Sprachen, wie hier beschrieben.
  • Die Server 104 und 106, die Speichereinheit 108 sowie die Clients 110, 112 und 114 sowie die Einheit 132 können mit dem Netzwerk 102 mithilfe von kabelgebundenen Verbindungen, drahtlosen Datenübertragungsprotokollen oder anderer geeigneter Datenkonnektivität verbunden sein. Die Clients 110, 112 und 114 können beispielsweise Personal Computer oder Netzwerkcomputer sein.
  • Bei dem gezeigten Beispiel kann der Server 104 für die Clients 110, 112 und 114 Daten wie Boot-Dateien, Betriebssystemabbilder sowie Anwendungen bereitstellen. Die Clients 110, 112 und 114 können bei diesem Beispiel Clients des Servers 104 sein. Die Clients 110, 112, 114 oder eine Kombination von diesen können ihre eigenen Daten, Boot-Dateien, Betriebssystemabbilder und Anwendungen enthalten. Die Datenverarbeitungsumgebung 100 kann zusätzliche Server, Clients sowie andere nicht gezeigte Einheiten enthalten.
  • Bei dem gezeigten Beispiel kann die Datenverarbeitungsumgebung 100 das Internet sein. Das Netzwerk 102 kann eine Gruppe von Netzwerken und Gateways darstellen, die das Transmission Control Protocol/Internet Protocol (TCP/IP) sowie andere Protokolle verwenden, um miteinander Daten auszutauschen. Im Zentrum des Internets befindet sich ein Backbone aus Datenkommunikationsverbindungen zwischen wichtigen Knoten oder Host-Computern, darunter Tausenden von kommerziellen, Regierungs-, im Bildungswesen verwendeten sowie anderen Computersystemen, die Daten und Nachrichten weiterleiten. Selbstverständlich kann die Datenverarbeitungsumgebung 100 auch als eine Anzahl unterschiedlicher Arten von Netzwerken realisiert werden, wie beispielsweise ein Intranet, ein lokales Netzwerk (local area network, LAN) oder ein Weitverkehrsnetzwerk (wide area network, WAN). 1 ist als ein Beispiel und nicht als eine architektonische Beschränkung der verschiedenen veranschaulichenden Ausführungsformen gedacht.
  • Neben anderen Verwendungszwecken kann die Datenverarbeitungsumgebung 100 zur Realisierung einer Client-Server-Umgebung verwendet werden, in der die veranschaulichenden Ausführungsformen realisiert werden können. Eine Client-Server-Umgebung ermöglicht es, dass Softwareanwendungen und Daten über ein Netzwerk hinweg verteilt werden, sodass eine Anwendung durch Nutzung der Interaktivität zwischen einem Client-Datenverarbeitungssystem und einem Server-Datenverarbeitungssystem funktioniert. Bei der Datenverarbeitungsumgebung 100 kann außerdem eine dienstorientierte Architektur eingesetzt werden, wobei interoperable Softwarekomponenten, die über ein Netzwerk hinweg verteilt sind, zu zusammenhängenden Geschäftsanwendungen zusammengefasst werden können. Die Datenverarbeitungsumgebung 100 kann auch die Form einer Cloud annehmen und ein Cloud-Computing-Modell einer Dienstbereitstellung einsetzen, um einen bequemen On-Demand-Netzwerkzugriff auf einen gemeinsam genutzten Pool konfigurierbarer Datenverarbeitungsressourcen (z.B. Netzwerke, Netzwerkbandbreite, Server, Verarbeitung, Arbeitsspeicher, Speicher, Anwendungen, virtuelle Maschinen sowie Dienste) zu ermöglichen, die sehr schnell mit minimalem Verwaltungsaufwand oder minimaler Interaktion mit einem Anbieter des Dienstes bereitgestellt und freigegeben werden können.
  • Unter Bezugnahme auf 2: Diese Figur zeigt ein Blockschaltbild eines Datenverarbeitungssystems, in dem veranschaulichende Ausführungsformen realisiert werden können. Ein Datenverarbeitungssystem 200 ist ein Beispiel für einen Computer, wie beispielsweise die Server 104 und 106 oder die Clients 110, 112 und 114 in 1, oder eine andere Art von Einheit, in der sich durch Computer verwendbarer Programmcode oder Anweisungen, durch die die Prozesse realisiert werden, für die veranschaulichenden Ausführungsformen befinden können.
  • Das Datenverarbeitungssystem 200 ist außerdem repräsentativ für ein Datenverarbeitungssystem oder eine Konfiguration darin, wie beispielsweise das Datenverarbeitungssystem 132 in 1, in dem sich durch Computer verwendbarer Programmcode oder Anweisungen befinden können, die die Prozesse der veranschaulichenden Ausführungsformen realisieren. Das Datenverarbeitungssystem 200 wird nur beispielhaft als ein Computer beschrieben, ohne darauf beschränkt zu sein. Durch Realisierungen in der Form anderer Einheiten wie beispielsweise die Einheit 132 in 1 kann das Datenverarbeitungssystem 200 modifiziert werden, beispielsweise durch Hinzufügen einer berührungsempfindlichen Schnittstelle, und es können sogar bestimmte gezeigte Komponenten aus dem Datenverarbeitungssystem 200 entfernt werden, ohne von der allgemeinen Beschreibung der Operationen und Funktionen des hier beschriebenen Datenverarbeitungssystems 200 abzuweichen.
  • Bei dem gezeigten Beispiel wird für das Datenverarbeitungssystem 200 eine Hub-Architektur mit North Bridge und Memory Controller Hub (NB/MCH) 202 sowie South Bridge und Input/Output-Controller-Hub (SB/ICH) 204 verwendet. Eine Verarbeitungseinheit 206, ein Hauptarbeitsspeicher 208 und ein Grafikprozessor 210 sind mit der North Bridge und dem Memory Controller Hub (NB/MCH) 202 verbunden. Die Verarbeitungseinheit 206 kann einen oder mehrere Prozessoren enthalten und kann unter Verwendung eines oder mehrerer heterogener Prozessorsysteme realisiert werden. Bei der Verarbeitungseinheit 206 kann es sich um einen Mehrkernprozessor handeln. Bei bestimmten Realisierungen kann der Grafikprozessor 210 mithilfe eines Accelerated Graphics Port (AGP) mit dem NB/MCH 202 verbunden werden.
  • Bei dem gezeigten Beispiel ist ein LAN-Adapter (local area network adapter) 212 mit der South Bridge und dem E/A-Controller-Hub (SB/ICH) 204 verbunden. Ein Audioadapter 216, ein Tastatur- und Mausadapter 220, ein Modem 222, ein Nur-Lese-Arbeitsspeicher (read only memory, ROM) 224, ein universeller serieller Bus (USB) sowie andere Anschlüsse 232 und PCI/PCIe-Einheiten 234 sind mit der South Bridge und dem E/A-Controller-Hub 204 durch einen Bus 238 verbunden. Ein Festplattenlaufwerk (hard disk drive, HDD) oder Halbleiterlaufwerk (solid-state drive, SSD) 226 und ein CD-ROM 230 sind mit der South Bridge und dem E/A-Controller-Hub 204 durch einen Bus 240 verbunden. Zu den PCI/PCIe-Einheiten 234 können zum Beispiel Ethernet-Adapter, Erweiterungskarten und PC-Karten für Notebook-Computer zählen. Bei PCI wird ein Cardbus-Controller verwendet, während dies bei PCle nicht der Fall ist. Der ROM 224 kann zum Beispiel ein Flash-BIOS (flash binary input/output system) sein. Bei dem Festplattenlaufwerk 226 und dem CD-ROM 230 können zum Beispiel eine IDE-, eine SATA-Schnittstelle (integrated drive electronics, serial advanced technology attachment interface) oder Varianten wie beispielsweise eSATA (external-SATA) und mSATA (micro-SATA) verwendet werden. Eine SIO-Einheit (Super-E/A-Einheit) 236 kann mit der South Bridge und dem E/A-Controller-Hub (SB/ICH) 204 durch den Bus 238 verbunden werden.
  • Arbeitsspeicher, wie beispielsweise der Hauptarbeitsspeicher 208, der ROM 224 oder ein Flashspeicher (nicht gezeigt), sind einige Beispiele für durch Computer verwendbare Speichereinheiten. Das Festplattenlaufwerk oder Halbleiterlaufwerk 226, der CD-ROM 230 sowie andere in ähnlicher Weise verwendbare Einheiten sind einige Beispiele für durch Computer verwendbare Speichereinheiten, die ein durch Computer verwendbares Speichermedium enthalten.
  • Auf der Verarbeitungseinheit 206 läuft ein Betriebssystem. Das Betriebssystem koordiniert in dem Datenverarbeitungssystem 200 in 2 verschiedene Komponenten und sorgt für deren Steuerung. Das Betriebssystem kann ein im Handel erhältliches Betriebssystem für eine beliebige Art von Datenverarbeitungsplattform sein, einschließlich, aber ohne darauf beschränkt zu sein, Serversysteme, Personal Computer sowie mobile Einheiten. Ein objektorientiertes oder jede andere Art von Programmiersystem kann in Verbindung mit dem Betriebssystem arbeiten und Aufrufe des Betriebssystems aus Programmen oder Anwendungen bereitstellen, die auf dem Datenverarbeitungssystem 200 ausgeführt werden.
  • Anweisungen für das Betriebssystem, das objektorientierte Programmiersystem sowie Anwendungen oder Programme wie beispielsweise die Anwendung 105 und/oder die modifizierte Fuzzy-Matching-Anwendung 107 in 1 befinden sich auf Speichereinheiten, beispielsweise in der Form von Code 226A auf dem Festplattenlaufwerk 226, und können zwecks Ausführung durch die Verarbeitungseinheit 206 in mindestens einen aus einem oder mehreren Speichern geladen werden, wie beispielsweise den Hauptarbeitsspeicher 208. Die Prozesse der veranschaulichenden Ausführungsformen können durch die Verarbeitungseinheit 206 mithilfe von durch Computer realisierten Anweisungen ausgeführt werden, die in einen Arbeitsspeicher geladen werden können, wie beispielsweise in den Hauptarbeitsspeicher 208, den Nur-Lese-Arbeitsspeicher 224 oder in eine oder mehrere periphere Einheiten.
  • Darüber hinaus kann in einem Fall der Code 226A über ein Netzwerk 201A aus einem entfernt angeordneten System 201 B heruntergeladen werden, wo ähnlicher Code 201C auf einer Speichereinheit 201D gespeichert ist. In einem anderen Fall kann der Code 226A über das Netzwerk 201A zu dem entfernt angeordneten System 201 B heruntergeladen werden, wo heruntergeladener Code 201C auf einer Speichereinheit 201D gespeichert wird.
  • Die Hardware in den 1 bis 2 kann in Abhängigkeit von der Realisierung unterschiedlich sein. Andere interne Hardware- oder Peripherie-Einheiten wie beispielsweise Flash-Speicher, gleichwertiger nichtflüchtiger Speicher oder optische Plattenlaufwerke und Ähnliches können zusätzlich zu oder anstatt der in den 1 bis 2 gezeigten Hardware verwendet werden. Darüber hinaus können die Prozesse der veranschaulichenden Ausführungsformen auf ein Mehrprozessor-Datenverarbeitungssystem angewendet werden.
  • Bei einigen veranschaulichenden Beispielen kann das Datenverarbeitungssystem 200 ein persönlicher digitaler Assistent (PDA) sein, der im Allgemeinen mit Flashspeicher konfiguriert ist, um nichtflüchtigen Speicher zum Speichern von Betriebssystemdateien und/oder durch Benutzer generierte Daten bereitzustellen. Ein Bussystem kann einen oder mehrere Busse aufweisen wie beispielsweise einen Systembus, einen E-/A-Bus und einen PCI-Bus. Selbstverständlich kann das Bussystem unter Verwendung jeder Art von Datenübertragungsstruktur (communication fabric) oder -architektur realisiert werden, die für eine Übermittlung von Daten zwischen verschiedenen Komponenten oder Einheiten sorgt, die an die Struktur oder die Architektur angeschlossen sind.
  • Eine Datenübertragungseinheit kann eine oder mehrere Einheiten enthalten, die zum Übermitteln und Empfangen von Daten verwendet werden, wie beispielsweise einen Modem oder einen Netzwerkadapter. Ein Speicher kann beispielsweise der Hauptarbeitsspeicher 208 oder ein Cachespeicher sein, wie beispielsweise der Cachespeicher in der North Bridge und dem Memory Controller Hub 202. Eine Verarbeitungseinheit kann einen oder mehrere Prozessoren bzw. eine oder mehrere CPUs enthalten.
  • Mit den gezeigten Beispielen in den 1 bis 2 sowie den vorstehend beschriebenen Beispielen sollen keine Beschränkungen hinsichtlich der Architektur angedeutet werden. Zum Beispiel kann das Datenverarbeitungssystem 200 außer einer mobilen oder am Körper tragbaren Einheit auch ein Tablet-Computer, ein Laptop-Computer oder eine Telefoneinheit sein.
  • Wo ein Computer oder ein Datenverarbeitungssystem als eine virtuelle Maschine, eine virtuelle Einheit oder eine virtuelle Komponente beschrieben wird, arbeitet die virtuelle Maschine, virtuelle Einheit oder die virtuelle Komponente in der Weise des Datenverarbeitungssystems 200 unter Verwendung einer virtualisierten Manifestation einiger oder aller in dem Datenverarbeitungssystem 200 gezeigten Komponenten. Zum Beispiel ist in einer virtuellen Maschine, virtuellen Einheit oder virtuellen Komponente die Verarbeitungseinheit 206 als eine virtualisierte Instanz der Gesamtheit oder einer bestimmten Anzahl von Hardware-Verarbeitungseinheiten 206 manifestiert, die in einem Host-Datenverarbeitungssystem zur Verfügung stehen, der Hauptarbeitsspeicher 208 ist als eine virtualisierte Instanz der Gesamtheit oder eines Abschnitts des Hauptarbeitsspeichers 208 manifestiert, die/der in dem Host-Datenverarbeitungssystem zur Verfügung stehen kann, und die Festplatte 226 ist als eine virtualisierte Instanz der Gesamtheit oder eines Abschnitts der Festplatte 226 manifestiert, die in dem Host-Datenverarbeitungssystem zur Verfügung stehen kann. Das Host-Datenverarbeitungssystem wird in derartigen Fällen durch das Datenverarbeitungssystem 200 repräsentiert.
  • Unter Bezugnahme auf 3: Diese Figur zeigt ein Blockschaubild einer beispielhaften Konfiguration für phonetische Muster zum Fuzzy Matching bei einer Verarbeitung natürlicher Sprache gemäß einer veranschaulichenden Ausführungsform. Eine Anwendung 302 ist ein Beispiel für die Anwendung 105 in 1. Eine Fuzzy-Matching-Anwendung 304 ist ein Beispiel der modifizierten Fuzzy-Matching-Anwendung 107 in 1. Eine Fuzzy-Matching-Anwendung 304 weist gemäß einer Ausführungsform einen Fuzzy-Matching-Algorithmus 304A nach dem Stand der Technik sowie eine Phonetische-Eingaben-Verarbeitungskomponente 304B auf. Ein phonetisches Repository 306 ist ein Beispiel für das phonetische Repository 109 in 1.
  • Eine NL-Eingabe 308 weist eine oder mehrere Formen von NL-Daten auf wie hier beschrieben. Die NL-Eingabe 308 enthält ein oder mehrere Token, z.B. Wörter.
  • Die Anwendung 302 analysiert auf geeignete Weise die NL-Eingabe 308, um ein Token aus der NL-Eingabe 308 zu extrahieren. Unter Verwendung eines oder mehrerer phonetischer Muster aus dem phonetischen Repository 306 und/oder gegebenenfalls Audiodaten aus der NL-Eingabe 308 konstruiert die Anwendung 302 ein oder mehrere dem Token entsprechende phonetische Muster. Die Anwendung 302 berechnet eine oder mehrere Silbensequenzen, die jedem phonetischen Muster entsprechen, und bildet eine Silbensequenzmatrix 310. Eine Silbensequenz, z.B. die Silbensequenz 312 in der Matrix 310 weist eine Sequenz aus einer oder mehreren Silben auf, beispielsweise die Silben 312A, 312B...312C.
  • Die Phonetische-Eingaben-Verarbeitungskomponente 304B empfängt die NL-Eingabe 308 als eine Eingabe und die Matrix 310 von der Anwendung 302 als eine weitere Eingabe. Die Komponente 304B veranlasst den Fuzzy-Matching-Algorithmus 304A, die Silbensequenzen in dem einem gegebenen Token entsprechenden Auswahl-/Wahlmöglichkeits-Identifizierungsprozess zu verwenden. Im Vergleich zu einer Auswahl, die von dem Fuzzy-Matching-Algorithmus 304A allein ausgegeben worden wäre, gibt die Fuzzy-Matching-Anwendung 304 eine Auswahl 314 mit einer größeren Präzision und mindestens derselben Trefferquote aus.
  • Bei einer Ausführungsform wird die von der modifizierten Fuzzy-Matching-Anwendung 304 ausgegebene Auswahl verwendet, um die Anwendung 302 zu trainieren. Wenn zum Beispiel ein separater Prozess (nicht gezeigt) feststellt, dass die Auswahl 314 eine wahrscheinliche Auswahl für ein gegebenes Token ist, veranlasst eine Maschinenlern-Rückmeldung 316 die Anwendung 302 diese phonetischen Muster, die der Auswahl 314 mit einem Schwellenausmaß an Entsprechung entsprechen, zu steigern oder zu verstärken, sodass diese phonetischen Muster für dasselbe oder ein ähnliches Token bei einem späteren Vorkommen des Tokens erneut erzeugt werden (oder vergleichsweise mehr Gewicht erhalten). Wenn ein phonetisches Muster konstruiert wurde, das der Auswahl 314 nicht mit einem Schwellenausmaß an Entsprechung entspricht, veranlasst die Rückmeldung 316 die Anwendung 302, diese phonetischen Muster derart zu vermindern oder abzuschwächen, dass diese phonetischen Muster für dasselbe oder ein ähnliches Token bei einem späteren Vorkommen des Tokens nicht erzeugt werden (oder vergleichsweise weniger Gewicht erhalten).
  • Unter Bezugnahme auf 4: Diese Figur zeigt ein Blockschaubild einer beispielhaften Anwendung für phonetische Muster zum Fuzzy Matching bei einer Verarbeitung natürlicher Sprache gemäß einer veranschaulichenden Ausführungsform. Eine Anwendung 402 kann als die Anwendung 302 in 3 verwendet werden.
  • Eine Komponente 404 extrahiert ein Token aus einer NL-Eingabe, z.B. durch Analysieren der NL-Eingabe 308 gemäß einer Grammatik der Sprache der Eingabe 308. Eine Komponente 406 berechnet ein phonetisches Muster für das Token auf eine oder mehrere hier beschriebene Arten.
  • Eine Komponente 408 berechnet eine Silbensequenz, die einem phonetischen Muster entspricht. Die Komponente 408 gibt eine Matrix aus Silbensequenzen aus, z.B. die Matrix 310, die dem Token entspricht.
  • Eine Komponente 410 kann derart konfiguriert werden, dass sie als eine Phonetische-Eingaben-Verarbeitungskomponente 304B in 3 arbeitet. Die Komponente 410 verarbeitet die in der modifizierten Fuzzy-Matching-Anwendung, z.B. in der Fuzzy-Matching-Anwendung 304, zu verwendende Matrix aus Silbensequenzen.
  • Eine Komponente 412 empfängt eine Rückmeldung zu der von der modifizierten Fuzzy-Matching-Anwendung getroffenen Auswahl, z.B. die Rückmeldung 316. Eine Komponente 414 realisiert einen geeigneten Prozess zum Klassifizieren der Auswahl als wahrscheinlich (gültige Auswahl in dem Kontext der NL-Eingabe 308) oder unwahrscheinlich (ungültige Auswahl in dem Kontext der NL-Eingabe 308).
  • Eine Komponente 416 verstärkt diejenigen phonetischen Muster des Tokens, die einer wahrscheinlichen Auswahl entsprechen. Eine Komponente 418 schwächt diejenigen phonetischen Muster des Tokens ab, die einer unwahrscheinlichen Auswahl entsprechen. Eine Komponente 420 verwaltet das phonetische Repository, z.B. durch Hinzufügen eines neuen phonetischen Musters, Verstärken eines phonetischen Musters, Abschwächen eines phonetischen Musters, Entfernen eines phonetischen Musters oder anderweitiges Beeinflussen phonetischer Muster in dem Repository.
  • Unter Bezugnahme auf 5: Diese Figur zeigt einen Ablaufplan eines beispielhaften Prozesses für phonetische Muster zum Fuzzy Matching bei einer Verarbeitung natürlicher Sprache gemäß einer veranschaulichenden Ausführungsform. Ein Prozess 500 kann in der Anwendung 402 in 4 realisiert werden.
  • Die Anwendung empfängt eine NL-Eingabe (Block 502). Die Anwendung wählt eine Spracheinheit, nämlich ein Token, aus der Eingabe aus (Block 504). Für das ausgewählte Token führt die Anwendung einen oder mehrere der Blöcke 506, 508 und 510 durch. Zum Beispiel ermittelt die Anwendung, ob ein phonetisches Muster für das Token in einem phonetischen Repository vorhanden ist (Block 506); die Anwendung ermittelt, ob ein phonetisches Muster eines vergleichbaren Tokens in dem Repository vorhanden ist (Block 508); und/oder oder die Anwendung berechnet ein phonetisches Muster des Tokens auf Grundlage der tatsächlichen oder geschätzten Audio-Form des Tokens in der NL-Eingabe (Block 510). Falls/wenn die Anwendung Block 510 ausführt, um ein phonetisches Muster des Tokens auf Grundlage der tatsächlichen oder geschätzten Audio-Form des Tokens in der NL-Eingabe zu berechnen, aktualisiert die Anwendung das phonetische Repository mit dem berechneten phonetischen Muster (Block 512).
  • Wenn ein phonetisches Muster des Tokens in dem Repository vorhanden ist („Ja“-Pfad von Block 506), berechnet die Anwendung eine oder mehrere Silbensequenzen, die dem phonetischen Muster entsprechen (Block 514). Wenn kein phonetisches Muster des Tokens in dem Repository vorhanden ist („Nein“-Pfad von Block 506), schreitet die Anwendung fort zu Block 508.
  • Wenn ein phonetisches Muster eines vergleichbaren Tokens in dem Repository vorhanden ist („Ja“-Pfad von Block 508), berechnet die Anwendung ein phonetisches Muster des Tokens auf Grundlage des phonetischen Musters des vergleichbaren Tokens (Block 516). Die Anwendung aktualisiert bei Block 512 das Repository mit dem berechneten phonetischen Muster des Tokens.
  • Die Anwendung ermittelt, ob mehr phonetische Muster des Tokens auf eine ähnliche Art zu berechnen sind (Block 518). Wenn mehr phonetische Muster des Tokens berechnet werden müssen („Ja“-Pfad von Block 518), kehrt die Anwendung zu einem der Blöcke 506, 508 und 510 zurück. Wenn keine phonetischen Muster mehr für das Token berechnet werden müssen („Nein“-Pfad von Block 518), generiert die Anwendung eine Matrix der berechneten Silbensequenzen (Block 520). Optional kann die Anwendung die Matrix zur Nutzung als eine zusätzliche Eingabe in eine modifizierte Fuzzy-Matching-Anwendung vorverarbeiten (Block 522).
  • Die Anwendung stellt die Matrix als eine zusätzliche Eingabe für die modifizierte Fuzzy-Matching-Anwendung bereit (Block 524). Die Anwendung veranlasst die modifizierte Fuzzy-Matching-Anwendung, mit einer verbesserten Präzision eine dem Token entsprechende Auswahl auszugeben (Block 526). Die Anwendung kann den Prozess 500 danach beenden.
  • Wenn keine phonetischen Muster mehr für das Token berechnet werden müssen („Nein“-Pfad von Block 518), kann die Anwendung auch parallel ermitteln, ob mehr Token aus der NL-Eingabe verarbeitet werden müssen (Block 528). Wenn mehr Token aus der NL-Eingabe verarbeitet werden müssen („Ja“-Pfad von Block 528), kehrt die Anwendung zu Block 504 zurück und wählt ein anderes Token aus. Wenn keine phonetischen Muster mehr aus der NL-Eingabe verarbeitet werden müssen („Nein“-Pfad von Block 528), beendet die Anwendung danach den Prozess 500.
  • Unter Bezugnahme auf 6: Diese Figur zeigt einen Ablaufplan eines beispielhaften Prozesses für Maschinenlernen zum Verbessern einer Auswahl phonetischer Muster für NL-Token gemäß einer veranschaulichenden Ausführungsform. Ein Prozess 600 kann in Anwendung 402 in 4 realisiert werden.
  • Die Anwendung empfängt eine einem Token entsprechende Auswahl, die von einer modifizierten Fuzzy-Matching-Anwendung getroffen wird (Block 602). Die Anwendung ermittelt, ob die Auswahl bei dem gegebenen NL-Eingabe-Kontext wahrscheinlich ist (Block 604). Wenn die Auswahl wahrscheinlich ist („Wahrscheinlich“-Pfad von Block 604), verstärkt die Anwendung diejenigen phonetischen Muster des Tokens, die der Auswahl entsprechen (Block 606). Die Anwendung beendet danach den Prozess 600.
  • Wenn die Auswahl unwahrscheinlich ist („Unwahrscheinlich“-Pfad von Block 604), schwächt die Anwendung diejenigen phonetischen Muster des Tokens ab, die der Auswahl entsprechen (Block 608). Die Anwendung beendet danach den Prozess 600.
  • Auf diese Weise werden ein durch einen Computer realisiertes Verfahren, System oder eine derartige Vorrichtung sowie ein Computerprogrammprodukt bei den veranschaulichenden Ausführungsformen für phonetische Muster zum Fuzzy Matching bei einer Verarbeitung natürlicher Sprache sowie andere damit in Zusammenhang stehende Merkmale, Funktionen oder Operationen bereitgestellt. Wo eine Ausführungsform oder ein Abschnitt davon in Bezug auf eine Art von Einheit beschrieben wird, werden das durch einen Computer realisierte Verfahren, System oder die derartige Vorrichtung, das Computerprogrammprodukt oder ein Abschnitt davon zur Verwendung mit einer geeigneten und vergleichbaren Manifestation dieser Art von Einheit angepasst oder konfiguriert.
  • Wo eine Ausführungsform als in einer Anwendung realisiert beschrieben wird, wird die Bereitstellung der Anwendung in einem SaaS-Modell (Software as a Service model) innerhalb des Schutzbereichs der veranschaulichenden Ausführungsformen in Betracht gezogen. Bei einem SaaS-Modell wird die Fähigkeit der eine Ausführungsform realisierenden Anwendung einem Benutzer durch Ausführen der Anwendung in einer Cloud-Infrastruktur bereitgestellt. Der Benutzer kann auf die Anwendung unter Verwendung einer Vielfalt von Client-Einheiten durch eine Thin-Client-Schnittstelle wie beispielsweise einen Webbrowser (z.B. eMail auf Web-Grundlage) oder andere schlanke Client-Anwendungen zugreifen. Der Benutzer verwaltet oder steuert nicht die zugrundeliegende Cloud-Infrastruktur, darunter das Netzwerk, die Server, Betriebssysteme oder den Speicher der Cloud-Infrastruktur. In einigen Fällen verwaltet oder steuert der Benutzer möglicherweise nicht einmal die Fähigkeiten der SaaS-Anwendung. In einigen anderen Fällen kann die SaaS-Realisierung der Anwendung eine mögliche Ausnahme von eingeschränkten benutzerspezifischen Anwendungs-Konfigurationseinstellungen ermöglichen.
  • Bei der vorliegenden Erfindung kann es sich um ein System, ein Verfahren und/oder ein Computerprogrammprodukt auf jedem möglichen technischen Integrationsniveau handeln. Zu dem Computerprogrammprodukt kann ein computerlesbares Speichermedium (oder -medien) zählen, auf dem sich computerlesbare Programmanweisungen befinden, um einen Prozessor zum Ausführen von Aspekten der vorliegenden Erfindung zu veranlassen.
  • Bei dem computerlesbaren Speichermedium kann es sich um eine materielle Einheit handeln, die in der Lage ist, Anweisungen zur Verwendung durch eine Anweisungsausführungseinheit zu behalten und zu speichern. Das computerlesbare Speichermedium kann beispielsweise, aber ohne darauf beschränkt zu sein, eine elektronische Speichereinheit, eine magnetische Speichereinheit, eine optische Speichereinheit, eine elektromagnetische Speichereinheit, eine Halbleiterspeichereinheit oder jede geeignete Kombination der Vorstehenden sein. Zu einer nicht vollständigen Liste konkreterer Beispiele für das computerlesbare Speichermedium zählen die folgenden: eine tragbare Computerdiskette, eine Festplatte, ein Direktzugriffsspeicher (random access memory, RAM), ein Nur-Lese-Speicher (read-only memory, ROM), ein löschbarer, programmierbarer Nur-Lese-Speicher (erasable programmable read-only memory, EPROM oder Flash-Speicher), ein statischer Direktzugriffsspeicher (static random access memory, SRAM), ein tragbarer Compact Disc-Nur-Lese-Speicher (CD-ROM), eine Digital Versatile Disk (DVD), ein Speicher-Stick, eine Diskette, eine mechanisch codierte Einheit wie beispielsweise Lochkarten oder erhabene Strukturen in einer Rille, auf denen Anweisungen aufgezeichnet sind, sowie jede geeignete Kombination des Vorstehenden. Ein computerlesbares Speichermedium im hier verwendeten Sinn, einschließlich computerlesbare Speichereinheiten, aber ohne darauf beschränkt zu sein, soll nicht als flüchtige Signale an sich aufgefasst werden, wie beispielsweise Funkwellen oder andere sich frei ausbreitende elektromagnetische Wellen, elektromagnetische Wellen, die sich durch einen Wellenleiter oder andere Übertragungsmedien ausbreiten (z.B. Lichtimpulse, die sich durch ein Lichtwellenleiterkabel bewegen), oder durch eine Leitung übertragene elektrische Signale.
  • Hier beschriebene computerlesbare Programmanweisungen können von einem computerlesbaren Speichermedium auf entsprechende Datenverarbeitungs-/Verarbeitungseinheiten oder über ein Netzwerk, zum Beispiel das Internet, ein lokales Netzwerk, ein Weitverkehrsnetzwerk, und/oder ein drahtloses Netzwerk, auf einen externen Computer oder eine externe Speichereinheit heruntergeladen werden. Das Netzwerk kann Kupfer-Übertragungskabel, Lichtwellenleiter, drahtlose Übertragung, Router, Firewalls, Switches, Gateway-Computer und/oder Edge-Server aufweisen. Eine Netzwerkadapterkarte oder Netzwerkschnittstelle in jeder Datenverarbeitungs-/Verarbeitungseinheit empfängt computerlesbare Programmanweisungen aus dem Netzwerk und leitet die computerlesbaren Programmanweisungen zur Speicherung in einem computerlesbaren Speichermedium in der entsprechenden Datenverarbeitungs-/Verarbeitungseinheit weiter.
  • Computerlesbare Programmanweisungen zum Ausführen von Operationen der vorliegenden Erfindung können Assembler-Anweisungen, Befehlssatz-Architektur-Anweisungen (instruction-set-architecture (ISA) instructions), Maschinenanweisungen, maschinenabhängige Anweisungen, Mikrocode, Firmware-Anweisungen, Zustandseinstelldaten, Konfigurationsdaten für integrierte Schaltungen oder entweder Quellcode oder Objektcode sein, geschrieben in einer beliebigen Kombination von einer oder mehreren Programmiersprachen, darunter eine objektorientierte Programmiersprache wie beispielsweise Smalltalk, C++ oder dergleichen sowie verfahrensorientierte Programmiersprachen wie beispielsweise die Programmiersprache „C“ oder ähnliche Programmiersprachen. Die computerlesbaren Programmanweisungen können vollständig auf dem Computer des Benutzers, teilweise auf dem Computer des Benutzers, als ein eigenständiges Softwarepaket, zum Teil auf dem Computer des Benutzers und zum Teil auf einem entfernt angeordneten Computer oder vollständig auf dem entfernt angeordneten Computer oder Server ausgeführt werden. Bei dem letzteren Szenario kann der entfernt angeordnete Computer mit dem Computer des Benutzers durch ein beliebiges Netzwerk, darunter ein lokales Netzwerk (LAN) oder ein Weitverkehrsnetz (WAN) verbunden sein, oder es kann eine Verbindung mit einem externen Computer hergestellt werden (zum Beispiel mithilfe eines Internetdienstanbieters über das Internet). Bei einigen Ausführungsformen können elektronische Schaltungen, darunter beispielsweise programmierbare Logikschaltungen, feldprogrammierbare Gate-Arrays (FPGAs) oder programmierbare Logik-Arrays (PLAs) die computerlesbaren Programmanweisungen durch Nutzen von Zustandsinformationen der computerlesbaren Programmanweisungen ausführen, um die elektronischen Schaltungen zu personalisieren, um Aspekte der vorliegenden Erfindung auszuführen.
  • Aspekte der vorliegenden Erfindung werden hier mit Bezug auf Ablaufpläne und/oder Blockschaltbilder von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Es versteht sich, dass jeder Block der Ablaufpläne und/oder Blockschaltbilder sowie Kombinationen von Blöcken in den Ablaufplänen und/oder Blockschaltbildern durch computerlesbare Programmanweisungen realisiert werden können.
  • Diese computerlesbaren Programmanweisungen können für einen Prozessor eines Universalcomputers, eines Spezialcomputers oder einer anderen programmierbaren Datenverarbeitungsvorrichtung zum Herstellen einer Maschine bereitgestellt werden, sodass die Anweisungen, die durch den Prozessor des Computers oder der anderen programmierbaren Datenverarbeitungsvorrichtung ausgeführt werden, Mittel zum Realisieren der in dem Block oder den Blöcken des Ablaufplans und/oder Blockschaltbilds angegebenen Funktionen/Handlungen erzeugen. Diese computerlesbaren Programmanweisungen können auch in einem computerlesbaren Speichermedium gespeichert sein, das einen Computer, eine programmierbare Datenverarbeitungsvorrichtung und/oder andere Einheiten derart steuern kann, dass sie auf eine bestimmte Weise funktionieren, so dass das computerlesbare Speichermedium, das in ihm gespeicherte Anweisungen aufweist, ein Erzeugnis samt Anweisungen aufweist, mit deren Hilfe Aspekte der in dem Block oder den Blöcken des Ablaufplans und/oder Blockschaltbilds angegebenen Funktion/Handlung realisiert werden.
  • Die computerlesbaren Programmanweisungen können auch auf einen Computer, eine andere programmierbare Datenverarbeitungsvorrichtung oder eine andere Einheit geladen werden, um eine Reihe von auf dem Computer, der anderen programmierbaren Vorrichtung oder der anderen Einheit auszuführenden Betriebsschritten zu bewirken, um einen durch Computer realisierten Prozess zu schaffen, sodass durch die Anweisungen, die auf dem Computer, der anderen programmierbaren Vorrichtung oder der anderen Einheit ausgeführt werden, die in dem Block oder den Blöcken des Ablaufplans und/oder Blockschaltbilds angegebenen Funktionen/Handlungen realisiert werden.
  • Die Ablaufpläne und Blockschaltbilder bzw. -schaubilder in den Figuren veranschaulichen die Architektur, die Funktionalität und den Betrieb möglicher Realisierungen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. In dieser Beziehung kann jeder Block in den Ablaufplänen oder Blockschaltbildern ein Modul, Segment oder einen Abschnitt von Anweisungen darstellen, das/der eine oder mehrere ausführbare Anweisungen zum Realisieren der angegebenen Logikfunktion(en) aufweist. Bei einigen alternativen Realisierungen können die in den Blöcken angegebenen Funktionen in einer anderen Reihenfolge als in den Figuren angegeben auftreten. Zum Beispiel können zwei aufeinander folgend dargestellte Blöcke tatsächlich im Wesentlichen gleichzeitig ausgeführt werden, oder die Blöcke können in Abhängigkeit von der betreffenden Funktionalität manchmal in der umgekehrten Reihenfolge ausgeführt werden. Es ist ferner anzumerken, dass jeder Block der Blockschaltbilder bzw. - schaubilder und/oder des Ablaufplans sowie Kombinationen aus Blöcken in den Blockschaltbildern bzw. -schaubildern und/oder dem Ablaufplan durch Spezialsysteme auf der Grundlage von Hardware realisiert werden können, die die angegebenen Funktionen oder Handlungen durchführen, oder Kombinationen von Spezialhardware und Computeranweisungen ausführen.

Claims (25)

  1. Verfahren, das aufweist: Extrahieren eines Tokens aus einer Eingabe in natürlicher Sprache (Natural Language, NL); Berechnen eines dem Token entsprechenden phonetischen Musters, wobei das phonetische Muster ein Tonmuster aufweist, das einen Teil des Tokens repräsentiert, wenn das Token gesprochen wird; Erzeugen neuer Daten aus Daten des phonetischen Musters, wobei die neuen Daten eine dem phonetischen Muster entsprechende Silbensequenz aufweisen; Ändern eines Zustands einer Datenspeichereinheit durch Speichern der neuen Daten in einer Matrix aus Silbensequenzen, die dem Token entspricht; Auswählen einer Option, die dem Token entspricht, durch Ausführen eines Fuzzy-Matching-Algorithmus unter Verwendung eines Prozessors und eines Arbeitsspeichers, wobei das Auswählen auf einer Silbensequenz in der Matrix beruht.
  2. Verfahren nach Anspruch 1, das ferner aufweist: Berechnen einer zweiten Silbensequenz, die dem phonetischen Muster entspricht; und Speichern der zweiten Silbensequenz in der Matrix.
  3. Verfahren nach Anspruch 1, das ferner aufweist: Ermitteln, ob ein gespeichertes phonetisches Muster in einem phonetischen Repository dem Token entspricht; Auswählen, als Reaktion auf das dem Token entsprechende gespeicherte phonetische Muster, des gespeicherten phonetischen Musters als das phonetische Muster.
  4. Verfahren nach Anspruch 1, das ferner aufweist: Modifizieren, um das phonetische Muster zu bilden, eines einem zweiten Token entsprechenden phonetischen Musters in einem phonetischen Repository, wobei das zweite Token dadurch mit dem Token vergleichbar ist, dass es über ein größeres als ein Schwellenausmaß an struktureller Ähnlichkeit mit dem Token verfügt.
  5. Verfahren nach Anspruch 4, wobei die strukturelle Ähnlichkeit vorhanden ist, da mindestens ein Schwellenausmaß an Ähnlichkeit zwischen einer Schreibweise des Tokens und einer Schreibweise des zweiten Tokens vorhanden ist.
  6. Verfahren nach Anspruch 4, wobei die strukturelle Ähnlichkeit vorhanden ist, da mindestens ein Schwellenausmaß an Ähnlichkeit zwischen einer Länge einer Schreibweise des Tokens und einer Länge einer Schreibweise des zweiten Tokens vorhanden ist.
  7. Verfahren nach Anspruch 4, wobei die strukturelle Ähnlichkeit vorhanden ist, da mindestens ein Schwellenausmaß an Ähnlichkeit zwischen einer Vokalsequenz in dem Token und einer Vokalsequenz in dem zweiten Token vorhanden ist.
  8. Verfahren nach Anspruch 4, wobei das Tonmuster eine phonetische Repräsentation aufweist, wobei die strukturelle Ähnlichkeit vorhanden ist, da mindestens ein Schwellenausmaß an Ähnlichkeit zwischen einer Anzahl phonetischer Repräsentationen in dem Token und einer Anzahl phonetischer Repräsentationen in dem zweiten Token vorhanden ist.
  9. Verfahren nach Anspruch 4, wobei das Tonmuster eine phonetische Repräsentation aufweist, wobei die strukturelle Ähnlichkeit vorhanden ist, da mindestens ein Schwellenausmaß an Ähnlichkeit zwischen einer Reihenfolge phonetischer Repräsentationen in dem Token und einer Reihenfolge phonetischer Repräsentationen in dem zweiten Token vorhanden ist.
  10. Verfahren nach Anspruch 4, wobei das Tonmuster eine phonetische Repräsentation aufweist, wobei die strukturelle Ähnlichkeit vorhanden ist, da mindestens ein Schwellenausmaß an Ähnlichkeit zwischen einer Betonung auf der phonetischen Repräsentation in dem Token und einer Betonung auf der phonetischen Repräsentation in dem zweiten Token vorhanden ist.
  11. Verfahren nach Anspruch 1, das ferner aufweist: Berechnen des phonetischen Musters aus einem zweiten phonetischen Muster durch Hinzufügen eines zweiten Tonmusters zu dem zweiten phonetischen Muster.
  12. Verfahren nach Anspruch 1, das ferner aufweist: Berechnen des phonetischen Musters aus einem zweiten phonetischen Muster durch Entfernen eines zweiten Tonmusters aus dem zweiten phonetischen Muster.
  13. Verfahren nach Anspruch 1, das ferner aufweist: ein Berechnen des phonetischen Musters aus einem zweiten phonetischen Muster durch Ersetzen eines zweiten Tonmusters in dem zweiten phonetischen Muster durch das Tonmuster.
  14. Verfahren nach Anspruch 1, das ferner aufweist: Berechnen des phonetischen Musters aus einem zweiten phonetischen Muster durch Ändern einer Sequenz von Tonmustern in dem zweiten phonetischen Muster.
  15. Verfahren nach Anspruch 1, das ferner aufweist: Berechnen des phonetischen Musters aus einem zweiten phonetischen Muster durch Ändern einer Dauer eines zweiten Tonmusters in dem zweiten phonetischen Muster.
  16. Verfahren nach Anspruch 1, das ferner aufweist: Berechnen des phonetischen Musters aus einem zweiten phonetischen Muster durch Ändern einer Betonung auf einem zweiten Tonmuster in dem zweiten phonetischen Muster.
  17. Verfahren nach Anspruch 1, das ferner aufweist: Berechnen einer Menge von dem Token entsprechender phonetischer Muster, wobei das phonetische Muster ein Element der Menge phonetischer Muster ist.
  18. Verfahren nach Anspruch 1, wobei das Tonmuster den Teil des Tokens repräsentiert, wenn das Token in einem Dialekt einer Sprache gesprochen wird.
  19. Verfahren nach Anspruch 1, wobei das Tonmuster den Teil des Tokens repräsentiert, wenn das Token mit einem Akzent in einer Sprache gesprochen wird.
  20. Verfahren nach Anspruch 1, wobei das Tonmuster den Teil des Tokens repräsentiert, wenn das Token in einer Sprache mit einer Sprechbesonderheit eines Sprechers gesprochen wird.
  21. Verfahren nach Anspruch 1, wobei das Token eine kürzeste eine Bedeutung aufweisende Einheit von Sprache in der NL-Eingabe aufweist.
  22. Durch einen Computer verwendbares Programmprodukt, das eine computerlesbare Speichereinheit sowie auf der Speichereinheit gespeicherte Programmanweisungen aufweist, wobei die gespeicherten Programmanweisungen aufweisen: Programmanweisungen zum Extrahieren eines Tokens aus einer Eingabe in natürlicher Sprache (Natural Language, NL); Programmanweisungen zum Berechnen eines dem Token entsprechenden phonetischen Musters, wobei das phonetische Muster ein Tonmuster aufweist, das einen Teil des Tokens repräsentiert, wenn das Token gesprochen wird; Programmanweisungen zum Erzeugen neuer Daten aus Daten des phonetischen Musters, wobei die neuen Daten eine dem phonetischen Muster entsprechende Silbensequenz aufweisen; Programmanweisungen zum Ändern eines Zustands einer Datenspeichereinheit durch Speichern der neuen Daten in einer Matrix aus Silbensequenzen, die dem Token entspricht; Programmanweisungen zum Auswählen einer Option, die dem Token entspricht, durch Ausführen eines Fuzzy-Matching-Algorithmus unter Verwendung eines Prozessors und eines Speichers, wobei das Auswählen auf einer Silbensequenz in der Matrix beruht.
  23. Durch einen Computer verwendbares Programmprodukt nach Anspruch 22, wobei der durch einen Computer verwendbare Code in einer computerlesbaren Speichereinheit in einem Datenverarbeitungssystem gespeichert ist, und wobei der durch einen Computer verwendbare Code über ein Netzwerk aus einem entfernt angeordneten Datenverarbeitungssystem übermittelt wird.
  24. Durch einen Computer verwendbares Programmprodukt nach Anspruch 22, wobei der durch einen Computer verwendbare Code in einer computerlesbaren Speichereinheit in einem Server-Datenverarbeitungssystem gespeichert ist, und wobei der durch einen Computer verwendbare Code über ein Netzwerk in ein entfernt angeordnetes Datenverarbeitungssystem heruntergeladen wird, um in einer dem entfernt angeordneten Datenverarbeitungssystem zugehörigen computerlesbaren Speichereinheit verwendet zu werden.
  25. Computersystem, das einen Prozessor, einen computerlesbaren Speicher und eine computerlesbare Speichereinheit sowie Programmanweisungen aufweist, die auf der Speichereinheit zum Ausführen durch den Prozessor über den Speicher gespeichert sind, um das Verfahren nach einem der Ansprüche 1 bis 21 durchzuführen.
DE112018005844.1T 2017-11-15 2018-10-31 Verfahren, Programmprodukt, sowie Computersystem zum Fuzzy Matching von phonetischen Mustern bei der Verarbeitung von natürlicher Sprache Active DE112018005844B4 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/813,416 US10546062B2 (en) 2017-11-15 2017-11-15 Phonetic patterns for fuzzy matching in natural language processing
US15/813,416 2017-11-15
PCT/IB2018/058521 WO2019097335A1 (en) 2017-11-15 2018-10-31 Phonetic patterns for fuzzy matching in natural language processing

Publications (2)

Publication Number Publication Date
DE112018005844T5 true DE112018005844T5 (de) 2020-08-13
DE112018005844B4 DE112018005844B4 (de) 2021-11-25

Family

ID=66433281

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112018005844.1T Active DE112018005844B4 (de) 2017-11-15 2018-10-31 Verfahren, Programmprodukt, sowie Computersystem zum Fuzzy Matching von phonetischen Mustern bei der Verarbeitung von natürlicher Sprache

Country Status (6)

Country Link
US (2) US10546062B2 (de)
JP (1) JP7135084B2 (de)
CN (1) CN111328416B (de)
DE (1) DE112018005844B4 (de)
GB (1) GB2585492B (de)
WO (1) WO2019097335A1 (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10546062B2 (en) * 2017-11-15 2020-01-28 International Business Machines Corporation Phonetic patterns for fuzzy matching in natural language processing
US11568142B2 (en) * 2018-06-04 2023-01-31 Infosys Limited Extraction of tokens and relationship between tokens from documents to form an entity relationship map
CN114927128A (zh) * 2022-04-21 2022-08-19 清华大学 语音关键词的检测方法、装置、电子设备及可读存储介质

Family Cites Families (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5794194A (en) * 1989-11-28 1998-08-11 Kabushiki Kaisha Toshiba Word spotting in a variable noise level environment
US6236964B1 (en) * 1990-02-01 2001-05-22 Canon Kabushiki Kaisha Speech recognition apparatus and method for matching inputted speech and a word generated from stored referenced phoneme data
JP2001100776A (ja) * 1999-09-30 2001-04-13 Arcadia:Kk 音声合成装置
US8392188B1 (en) * 1999-11-05 2013-03-05 At&T Intellectual Property Ii, L.P. Method and system for building a phonotactic model for domain independent speech recognition
US7177795B1 (en) * 1999-11-10 2007-02-13 International Business Machines Corporation Methods and apparatus for semantic unit based automatic indexing and searching in data archive systems
US6973427B2 (en) * 2000-12-26 2005-12-06 Microsoft Corporation Method for adding phonetic descriptions to a speech recognition lexicon
US7103542B2 (en) * 2001-12-14 2006-09-05 Ben Franklin Patent Holding Llc Automatically improving a voice recognition system
US7089188B2 (en) * 2002-03-27 2006-08-08 Hewlett-Packard Development Company, L.P. Method to expand inputs for word or document searching
JPWO2003088209A1 (ja) * 2002-04-12 2005-08-25 三菱電機株式会社 カーナビゲーションシステム並びにその音声認識装置
EP1505572B1 (de) * 2002-05-06 2006-03-08 Prous Institute For Biomedical Research S.A. Spracherkennungsverfahren
DE10306022B3 (de) * 2003-02-13 2004-02-19 Siemens Ag Dreistufige Einzelworterkennung
US20060064177A1 (en) * 2004-09-17 2006-03-23 Nokia Corporation System and method for measuring confusion among words in an adaptive speech recognition system
WO2007027989A2 (en) 2005-08-31 2007-03-08 Voicebox Technologies, Inc. Dynamic speech sharpening
US8626506B2 (en) * 2006-01-20 2014-01-07 General Motors Llc Method and system for dynamic nametag scoring
WO2008084476A2 (en) 2007-01-09 2008-07-17 Avraham Shpigel Vowel recognition system and method in speech to text applications
CN101689364B (zh) * 2007-07-09 2011-11-23 富士通株式会社 声音识别装置和声音识别方法
US8831946B2 (en) * 2007-07-23 2014-09-09 Nuance Communications, Inc. Method and system of indexing speech data
US9405823B2 (en) * 2007-07-23 2016-08-02 Nuance Communications, Inc. Spoken document retrieval using multiple speech transcription indices
US20090037403A1 (en) 2007-07-31 2009-02-05 Microsoft Corporation Generalized location identification
US8775441B2 (en) * 2008-01-16 2014-07-08 Ab Initio Technology Llc Managing an archive for approximate string matching
CN101533398A (zh) * 2008-03-16 2009-09-16 徐文新 模式匹配索引查找方法
US20110106792A1 (en) 2009-11-05 2011-05-05 I2 Limited System and method for word matching and indexing
KR20120113717A (ko) * 2009-12-04 2012-10-15 소니 주식회사 검색 장치, 검색 방법, 및 프로그램
WO2011104754A1 (ja) * 2010-02-24 2011-09-01 三菱電機株式会社 検索装置及び検索プログラム
US9418152B2 (en) * 2011-02-09 2016-08-16 Nice-Systems Ltd. System and method for flexible speech to text search mechanism
KR101231438B1 (ko) * 2011-05-25 2013-02-07 엔에이치엔(주) 외래어 발음 검색 서비스를 제공하는 검색결과 제공 시스템 및 방법
US9164983B2 (en) 2011-05-27 2015-10-20 Robert Bosch Gmbh Broad-coverage normalization system for social media language
US8521539B1 (en) * 2012-03-26 2013-08-27 Nuance Communications, Inc. Method for chinese point-of-interest search
US9721563B2 (en) 2012-06-08 2017-08-01 Apple Inc. Name recognition system
CN103970798B (zh) * 2013-02-04 2019-05-28 商业对象软件有限公司 数据的搜索和匹配
US9652511B2 (en) 2013-03-13 2017-05-16 International Business Machines Corporation Secure matching supporting fuzzy data
US9594742B2 (en) * 2013-09-05 2017-03-14 Acxiom Corporation Method and apparatus for matching misspellings caused by phonetic variations
US9384731B2 (en) * 2013-11-06 2016-07-05 Microsoft Technology Licensing, Llc Detecting speech input phrase confusion risk
US9135911B2 (en) 2014-02-07 2015-09-15 NexGen Flight LLC Automated generation of phonemic lexicon for voice activated cockpit management systems
JP6400936B2 (ja) * 2014-04-21 2018-10-03 シノイースト・コンセプト・リミテッド 音声検索方法、音声検索装置、並びに、音声検索装置用のプログラム
CN105632499B (zh) * 2014-10-31 2019-12-10 株式会社东芝 用于优化语音识别结果的方法和装置
CN104464736B (zh) 2014-12-15 2018-02-02 北京百度网讯科技有限公司 语音识别文本的纠错方法和装置
GB2533370A (en) 2014-12-18 2016-06-22 Ibm Orthographic error correction using phonetic transcription
CN108351876A (zh) * 2015-09-22 2018-07-31 纽昂斯通讯公司 用于兴趣点识别的系统和方法
US10546062B2 (en) * 2017-11-15 2020-01-28 International Business Machines Corporation Phonetic patterns for fuzzy matching in natural language processing

Also Published As

Publication number Publication date
US20190147036A1 (en) 2019-05-16
US11397856B2 (en) 2022-07-26
US10546062B2 (en) 2020-01-28
CN111328416A (zh) 2020-06-23
JP7135084B2 (ja) 2022-09-12
GB202008024D0 (en) 2020-07-15
DE112018005844B4 (de) 2021-11-25
WO2019097335A1 (en) 2019-05-23
JP2021503097A (ja) 2021-02-04
GB2585492A (en) 2021-01-13
GB2585492B (en) 2021-03-17
CN111328416B (zh) 2023-11-17
US20200097540A1 (en) 2020-03-26

Similar Documents

Publication Publication Date Title
DE112019001533T5 (de) Erweiterung von trainingsdaten für die klassifikation von natürlicher sprache
DE202017105835U1 (de) Neuronale Maschinenübersetzungssysteme
DE202017105669U1 (de) Modalitätslernen an mobilen Vorrichtungen
JP7358698B2 (ja) 語義表現モデルの訓練方法、装置、デバイス及び記憶媒体
DE112018005227T5 (de) Merkmalsextraktion mithilfe von multi-task-lernen
DE112018005844B4 (de) Verfahren, Programmprodukt, sowie Computersystem zum Fuzzy Matching von phonetischen Mustern bei der Verarbeitung von natürlicher Sprache
DE112020003506T5 (de) Natürlichsprachliche antworten in maschinenunterstützten agenten
DE102019004300A1 (de) Verwendung eines dynamischen speichernetzwerks zum verfolgen digitaler dialogzustände und erzeugen von antworten
DE112016005912T5 (de) Technologien zur satzende-detektion unter verwendung von syntaktischer kohärenz
DE112020003365T5 (de) Überwachte kreuzmodale wiedergewinnung für zeitreihen und text unter verwendung von multimodalen triplettverlusten
DE112018004660T5 (de) Verwenden von kommentaren zum bereitstellen von optimierungen
CN112541070B (zh) 槽位更新语料的挖掘方法、装置、电子设备和存储介质
DE112017007361T5 (de) Unterstützen von interaktivem textmining-prozess mit dialog in natürlicher sprache
DE112018005272T5 (de) Suchen von mehrsprachigen dokumenten auf grundlage einer extraktion der dokumentenstruktur
DE112018004140T5 (de) Abstraktion und übertragbarkeit auf eine absichtserkennung
DE112020001853T5 (de) Abänderung von trainingsdaten zum trainieren eines modells
DE102021004562A1 (de) Abwandlung von Szenengraphen auf Grundlage von Befehlen in natürlicher Sprache
DE112021004694T5 (de) Trainieren eines frage-antwort-dialogsystems zum vermeiden von gegnerischen angriffen
DE112020000545T5 (de) Deep-forest-modell-entwicklung und -training
DE102022125316A1 (de) Unüberwachtes alignment für text-zu-sprache-synthese unter verwenden neuronaler netzwerke
DE102022003003A1 (de) Automatische Fotobearbeitung mittels sprachlicher Anweisung
JP7357114B2 (ja) 生体検出モデルのトレーニング方法、装置、電子機器および記憶媒体
DE112020004925T5 (de) Aktualisieren und umsetzen eines dokuments aus einem audiovorgang
DE112021005230T5 (de) Erzeugen alternativer veränderlicher kennsätze
DE112021005925T5 (de) Domänenverallgemeinerter spielraum über metalernen zur tiefen gesichtserkennung

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R083 Amendment of/additions to inventor(s)
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R084 Declaration of willingness to licence
R020 Patent grant now final