DE102018010162A1 - Online-Wörterbucherweitern von Wortvektoren - Google Patents

Online-Wörterbucherweitern von Wortvektoren Download PDF

Info

Publication number
DE102018010162A1
DE102018010162A1 DE102018010162.3A DE102018010162A DE102018010162A1 DE 102018010162 A1 DE102018010162 A1 DE 102018010162A1 DE 102018010162 A DE102018010162 A DE 102018010162A DE 102018010162 A1 DE102018010162 A1 DE 102018010162A1
Authority
DE
Germany
Prior art keywords
word
new
words
word vectors
vector
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.)
Pending
Application number
DE102018010162.3A
Other languages
English (en)
Inventor
Zhe Lin
Yingwei Li
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.)
Adobe Inc
Original Assignee
Adobe Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Adobe Inc filed Critical Adobe Inc
Publication of DE102018010162A1 publication Critical patent/DE102018010162A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3347Query execution using vector based model
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/216Parsing using statistical methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/3332Query translation
    • G06F16/3338Query expansion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • G06F16/355Class or cluster creation or modification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • G06F40/242Dictionaries
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Probability & Statistics with Applications (AREA)
  • Machine Translation (AREA)

Abstract

Beschrieben werden zum Online-Wörterbucherweitern von Wortvektoren vorgesehene Techniken und Systeme, die dafür konfiguriert sind, eine Online-Erweiterung bestehender Wortvektorwörterbücher bereitzustellen, und so die Unzulänglichkeiten herkömmlicher Techniken überwinden. Bei einem Beispiel wird ein Wörterbucherweiterungssystem von einem Rechensystem eingesetzt, um ein Wortvektorwörterbuch derart online zu erweitern, dass dieses ein neues Wort enthält. Es wird Kookkurrenzinformation für das neue Wort in Bezug auf die Worte in dem bestehenden Wörterbuch geschätzt. Dies erfolgt durch Schätzen von Kookkurrenzinformation in Bezug auf einen großen Wortsatz auf Grundlage des bestehenden Wörterbuches und spärlicher Kookkurrenzinformation für das neue Wort. Die geschätzte Kookkurrenzinformation wird genutzt, um einen neuen Wortvektor, der dem neuen Wort zugeordnet ist, zu schätzen, indem die geschätzte Kookkurrenzinformation auf das bestehende Wortvektorwörterbuch projiziert wird. Es wird ein erweitertes Wörterbuch erzeugt, das das ursprüngliche Wörterbuch und den geschätzten neuen Wortvektor enthält.

Description

  • Hintergrund
  • Wortvektoren sind eine vorteilhafte Einbettung zur Darstellung von Worten und Wendungen in kontinuierlicher Vektorform. Das Trainieren einer Wortvektoreinbettung mit einer Rechenvorrichtung ist jedoch zeitaufwändig, wobei herkömmliche Techniken, sobald die Einbettung trainiert ist, nicht imstande sind, der Einbettung neue Worte hinzuzufügen. Herkömmliche Techniken, die neue Worte in eine Wortvektoreinbettung aufnehmen, erfordern, dass die gesamte Einbettung neutrainiert wird. Eine derartige Brute-Force-Strategie ist rechentechnisch schwierig und ineffizient. Zusätzlich generiert das Neutrainieren einer Wortvektoreinbettung mit einer Rechenvorrichtung neue Wortvektoren für die bereits beinhalteten Worte und kann nicht sicherstellen, dass vorher berechnete Wortvektoren unverändert bleiben. Das Neutrainieren der gesamten Einbettung und das Ändern vorher berechneter Wortvektoren beeinträchtigen beispielsweise die Funktionalität von die Wortvektoren nutzenden Rechensystemen, so beispielsweise von neuronalen Netzwerken zur Verarbeitung natürlicher Sprache. Herkömmliche Techniken, die sich dem Hinzufügen neuer Worte zu einer Wortvektoreinbettung durch eine Rechenvorrichtung widmen, sind daher ineffizient, unflexibel und verhindern, dass Systeme neue Worte anpassen oder aufnehmen. Dies bewirkt, dass Rechensysteme, die auf einer Wortvektoreinbettung aufgebaut sind, so beispielsweise für natürliche Sprache gegebene Verarbeitungssysteme, genau auf das Vokabular beschränkt sind, das beim anfänglichen Einrichten des Systems benutzt worden ist.
  • Zusammenfassung
  • Beschrieben werden zum Online-Wörterbucherweitern von Wortvektoren vorgesehene Techniken und Systeme, die dafür konfiguriert sind, eine Online-Erweiterung bestehender Wortvektorwörterbücher bereitzustellen, und daher die Unzulänglichkeiten herkömmlicher Techniken überwinden. Bei einem Beispiel wird ein Wörterbucherweiterungssystem von einem Rechensystem eingesetzt, um ein Wörterbuch von Wortvektoren derart online zu erweitern, dass dieses ein neues Wort enthält. Dies erfolgt beispielsweise durch ein für natürliche Sprache gegebenes Verarbeitungssystem einer Rechenvorrichtung, das ein neuronales Netzwerk oder eine andere Technik des maschinellen Lernens nutzt, die entsprechend einem speziellen Vektorraum kalibriert oder initialisiert ist. Durch Bereitstellen einer Online-Erweiterung eines neue Worte enthaltenden Wortvektorwörterbuches ohne Ändern des Vektorraumes kann das für natürliche Sprache gegebene Verarbeitungssystem weiter mit den neuen Wortvektoren arbeiten und diese aufnehmen, ohne vorheriges Training oder vorherige Ergebnisse ungültig oder überflüssig zu machen.
  • Es wird Kookkurrenzinformation von dem Wörterbucherweiterungssystem für das neue Wort in Bezug auf die bestehenden Worte in dem Wörterbuch geschätzt. Dies erfolgt durch Schätzen von Kookkurrenzinformation für einen großen Wortsatz auf Grundlage des bestehenden Wörterbuches und spärlicher Kookkurrenzinformation über einen kleinen Wortsatz. Im Ergebnis wird Kookkurrenzinformation für das neue Wort von dem Wörterbucherweiterungssystem ermittelt, ohne neue Kookkurrenzinformation für das gesamte Wörterbuch zu bestimmen.
  • Das Wörterbucherweiterungssystem nutzt die geschätzte Kookkurrenzinformation, um einen neuen Wortvektor, der dem neuen Wort zugeordnet ist, zu schätzen, indem beispielsweise die geschätzte Kookkurrenzinformation für das neue Wort auf das bestehende Wortvektorwörterbuch projiziert wird. Diese Techniken unterstützen daher das Erzeugen eines neuen Wortvektors, ohne dass dies Auswirkungen auf bestehende Wortvektoren hätte oder den Vektorraum ändern würde. Das Wörterbucherweiterungssystem nutzt den geschätzten neuen Wortvektor zum Erzeugen eines erweiterten Wörterbuches, das das vorherige Wortvektorwörterbuch, das neue Wort und den geschätzten neuen Wortvektor enthält. Dies ermöglicht, dass ein die Wortvektoren nutzendes System das neue Wort auf rechentechnisch günstige und effiziente Weise ohne nachteilige Auswirkungen auf das System aufnimmt.
  • Die vorliegende Zusammenfassung führt in vereinfachter Form eine Auswahl von Konzepten ein, die in der nachstehenden Detailbeschreibung weiter beschrieben werden. Als solches soll die vorliegende Zusammenfassung wesentliche Merkmale des beanspruchten Erfindungsgegenstandes weder identifizieren, noch soll sie als Hilfe beim Bestimmen des Umfanges des beanspruchten Erfindungsgegenstandes genutzt werden.
  • Figurenliste
  • Die Detailbeschreibung erfolgt anhand der begleitenden Figuren. Entitäten, die in den Figuren dargestellt sind, können eine oder mehrere Entitäten bezeichnen, weshalb in den Erläuterungen ein Verweis auf eine einzelne oder mehrere Formen der Entitäten gleichermaßen erfolgen kann.
    • 1 ist eine Darstellung einer Umgebung bei einer exemplarischen Implementierung, die dafür betreibbar ist, hier beschriebene Techniken zum Online-Wörterbucherweitern einzusetzen.
    • 2 zeigt detaillierter ein exemplarisches System zur Darstellung einer Wortvektortrainingspipeline des Wortvektortrainingssystems von 1.
    • 3 zeigt detaillierter ein exemplarisches System zur Darstellung einer Wörterbucherweiterungsverarbeitungspipeline des Wörterbucherweiterungssystems von 1.
    • 4 ist ein Flussdiagramm zur Darstellung einer Prozedur bei einer exemplarischen Implementierung einer Online-Wörterbucherweiterung von Wortvektoren.
    • 5 ist ein Flussdiagramm zur Darstellung einer Prozedur bei einer exemplarischen Implementierung einer Online-Wörterbucherweiterung von Wortvektoren.
    • 6 zeigt ein exemplarisches System, das verschiedene Komponenten einer exemplarischen Vorrichtung beinhaltet, die als beliebiger Typ von Rechenvorrichtung gemäß Beschreibung anhand 1 bis 5 implementiert sein oder genutzt werden kann, um Ausführungsformen der hier beschriebenen Techniken zu implementieren.
  • Detailbeschreibung
  • Übersicht
  • Wortvektoren sind eine vorteilhafte Einbettung zur Darstellung von Worten und Wendungen in kontinuierlicher Vektorform. Das Trainieren einer Wortvektoreinbettung ist jedoch zeitaufwändig, wobei herkömmliche Techniken, sobald die Einbettung trainiert ist, nicht imstande sind, der Einbettung neue Worte hinzuzufügen. Herkömmliche Techniken, die neue Worte in eine Wortvektoreinbettung aufnehmen, erfordern das Trainieren der gesamten neuen Einbettung. Eine derartige Brute-Force-Strategie ist rechentechnisch aufwändig und ineffizient. Das zusätzliche Trainieren einer neuen Wortvektoreinbettung berechnet neue Wortvektoren für die bereits beinhalteten Worte und kann nicht sicherstellen, dass vorher berechnete Wortvektoren unverändert bleiben.
  • Entsprechend werden zum Online-Wörterbucherweitern von Wortvektoren vorgesehene Techniken und Systeme beschrieben, die dafür konfiguriert sind, eine Online-Erweiterung bestehender Wortvektorwörterbücher bereitzustellen. Diese Techniken unterstützen das Erweitern eines Wortvektorwörterbuches derart, dass dieses ein neues Wort beinhaltet, ohne die Wortvektoreinbettung neuzutrainieren oder die vorher berechneten Wortvektoren zu ändern. Zu diesem Zweck empfängt das Wörterbucherweiterungssystem ein bestehendes Wortvektorwörterbuch und ein neues Wort, das in dem Wortvektorwörterbuch nicht beinhaltet ist. Zuordnungs- und Kookkurrenzinformation wird sodann von dem Wörterbucherweiterungssystem für das neue Wort in Bezug auf die bestehenden Worte in dem Wortvektorwörterbuch geschätzt. Dies erfolgt durch Schätzen von Kookkurrenzinformation für einen großen Wortsatz auf Grundlage des bestehenden Wortvektorwörterbuches und spärlicher (sparse) Kookkurrenzinformation über einen kleinen Wortsatz. Im Ergebnis wird Kookkurrenzinformation für das neue Wort ermittelt, ohne neue Kookkurrenzinformation für das gesamte Wörterbuch zu bestimmen.
  • Das Wörterbucherweiterungssystem erzeugt sodann einen geschätzten neuen Wortvektor, der dem neuen Wort zugeordnet ist, ohne die bestehenden Wortvektoren neuzuberechnen. Zu diesem Zweck projiziert das Wörterbucherweiterungssystem die geschätzte Kookkurrenzinformation für das neue Wort auf das bestehende Wortvektorwörterbuch. Diese Techniken unterstützen das Erzeugen eines neuen Wortvektors, ohne dass dies Auswirkungen auf die bestehenden Wortvektoren hätte oder den Vektorraum ändern würde, und unterliegen daher nicht den Beschränkungen herkömmlicher Techniken. Das Wörterbucherweiterungssystem nutzt den geschätzten neuen Wortvektor zum Erzeugen eines erweiterten Wörterbuches, das das vorherige Wortvektorwörterbuch, das neue Wort und den geschätzten neuen Wortvektor beinhaltet. Dies ermöglicht, dass ein die Wortvektoren nutzendes System das neue Wort ohne nachteilige Auswirkung auf das System aufnimmt. Ein für natürliche Sprache gegebenes Verarbeitungssystem kann beispielsweise ein neuronales Netzwerkmodell nutzen, das auf dem Wörterbuch aufgebaut ist. Während herkömmliche Techniken, die eine gänzlich neue Wortvektoreinbettung erzeugen, dem neuronalen Netzwerkmodell zuwiderlaufen, sind die von dem hier verwendeten Wörterbucherweiterungssystem verwendeten Techniken imstande, das neuronale Netzwerkmodell derart zu erweitern, dass es neue Worte enthält, ohne dass dies nachteilige Auswirkungen auf vorherige Ergebnisse oder Trainings hätte. Zusätzlich stellen die hier von dem vorliegenden Wörterbucherweiterungssystem verwendeten Techniken eine rechentechnisch günstige und effiziente Näherung des neuen Wortvektors bereit.
  • In der nachfolgenden Diskussion wird eine exemplarische Ausführungsform beschrieben, die die hier beschriebenen Techniken einsetzen kann. Es werden exemplarische Prozeduren beschrieben, die in der exemplarischen Umgebung wie auch in anderen Umgebungen durchgeführt werden können. Infolgedessen ist das Leistungsvermögen der exemplarischen Prozeduren nicht auf die exemplarische Umgebung beschränkt, und die exemplarische Umgebung ist nicht auf das Leistungsvermögen der exemplarischen Prozeduren beschränkt.
  • Exemplarische Umgebung
  • 1 ist eine Darstellung einer Digitalmedienumgebung 100 bei einer exemplarischen Implementierung, die dafür betreibbar ist, hier beschriebene Techniken zum Online-Wörterbucherweitern einzusetzen. Die dargestellte Umgebung 100 beinhaltet ein Rechensystem 102, das auf vielerlei Arten konfiguriert sein kann.
  • Das Rechensystem 102 kann beispielsweise als Desktopcomputer, Laptopcomputer, Mobilvorrichtung (beispielsweise unter Annahme einer Handkonfiguration wie bei einem Tablet oder Mobiltelefon, wie dargestellt ist) und dergleichen mehr konfiguriert sein. Daher kann das Rechensystem 102 von Vollressourcenvorrichtungen mit beträchtlichen Speicher- und Prozessorressourcen (beispielsweise PCs, Spielekonsolen) zu einer über geringe Ressourcen verfügenden Vorrichtung mit beschränkten Speicher- und/oder Verarbeitungsressourcen (beispielsweise Mobilvorrichtungen) reichen. Zusätzlich kann das Rechensystem 102, obwohl ein einzelnes Rechensystem 102 gezeigt ist, auch mehrere verschiedene Vorrichtungen darstellen, so beispielsweise mehrere Server, die von einem Unternehmen genutzt werden, um Vorgänge „über die Cloud“, wie anhand 6 beschrieben wird, durchzuführen.
  • Die Rechenvorrichtung 102 ist derart dargestellt, dass sie ein Wortvektortrainingssystem 104 beinhaltet. Das Wortvektortrainingssystem 104 ist wenigstens teilweise in der Hardware des Rechensystems 102 implementiert und verarbeitet textartige Daten, um Wortvektoren 106 zu generieren. Eine derartige Verarbeitung kann beispielsweise die Nutzung eines Sprachmodells beinhalten, um Vektordarstellungen von Textsequenzen zu generieren, wie anhand 2 noch detaillierter beschrieben wird. Die Wortvektoren 106 sind Vektordarstellungen von Worten, die die semantische Bedeutung der Worte erfassen. Ein einziger der Wortvektoren 106 kann beispielsweise ein Vektor mit Tausenden oder mehr Dimensionen sein, der daher beträchtlich mehr Informationen beinhalten kann, als in den reinen ASCII-Werten, die dem Wort entsprechen, beinhaltet sind. Obwohl die Darstellung derart gewählt ist, dass die Implementierung lokal auf dem Rechensystem 102 vorliegt, kann die Funktionalität des Wortvektortrainingssystems 104 gänzlich oder teilweise auch über eine Funktionalität implementiert sein, die über ein Netzwerk 108, beispielsweise als Teil eines Webdienstes oder „in der Cloud“, verfügbar ist. Das Wortvektortrainingssystem 104 kann auf einer gesonderten Vorrichtung befindlich sein, die die Wortvektoren 106 über das Netzwerk 108 an das Rechensystem 102 überträgt.
  • Das Rechensystem 102 ist des Weiteren derart dargestellt, dass es ein Wörterbucherweiterungssystem 110 beinhaltet. Das Wörterbucherweiterungssystem 110 ist wenigstens teilweise in der Hardware des Rechensystems 102 implementiert und erweitert die Wortvektoren 106 derart, dass diese ein neues Wort 112 aufnehmen, wie anhand 3 noch detaillierter beschrieben wird. Das neue Wort 112 kann ein beliebiges Wort sein, für das kein Wortvektor unter den Wortvektoren 106 vorhanden ist. Das Wortvektortrainingssystem 104 kann die Wortvektoren 106 beispielsweise aus einem allgemeinen Textkorpus generieren. Das allgemeine Textkorpus enthält eine endliche Menge von Worten und kann eine beliebige Anzahl bestehender Worte weglassen, was dazu führt, dass die Wortvektoren 106 keine Wortvektoren beinhalten, die den weggelassenen Worten entsprechen. Im Zusammenhang mit dem Wörterbucherweiterungssystem 110 kann ein beliebiges der weggelassenen bestehenden Worte das neue Wort 112 sein. Alternativ kann das neue Wort 112 ein Wort sein, das zu dem Zeitpunkt, zu dem die Wortvektoren 106 erzeugt worden sind, noch nicht vorhanden war. In jedem Fall entspricht das neue Wort 112 nicht direkt einem beliebigen Wortvektor innerhalb der Wortvektoren 106.
  • Das Wörterbucherweiterungssystem 110 erzeugt einen neuen Wortvektor 114, der dem neuen Wort 112 zugeordnet ist, unter Nutzung eines Vektornäherungsmoduls 116. Das Vektornäherungsmodul 116 arbeitet unabhängig von dem Wortvektortrainingssystem 104 und kann den neuen Wortvektor 114 generieren, indem es Werte auf Grundlage der Wortvektoren 106 ohne Neugenerieren der Wortvektoren 106 nähert. Der neue Wortvektor 114 wird an die Wortvektoren 106 angehängt, was ein erweitertes Wörterbuch 118 erzeugt, das sowohl die Wortvektoren 106 wie auch den neuen Wortvektor 114 enthält. Obwohl die Darstellung derart gewählt ist, dass eine Implementierung lokal auf dem Rechensystem 102 vorliegt, kann die Funktionalität des Wörterbucherweiterungssystems 110 und des Vektornäherungsmoduls 116 gänzlich oder teilweise auch über eine Funktionalität implementiert sein, die über das Netzwerk 108 verfügbar ist, und zwar beispielsweise als Teil eines Webdienstes oder „in der Cloud“.
  • Das erweiterte Wörterbuch 118 kann beispielsweise über das Netzwerk 108 an ein für natürliche Sprache gegebenes Verarbeitungssystem 120 übermittelt werden. Das für natürliche Sprache gegebene Verarbeitungssystem 120 ist ein Rechensystem, das eine Wortvektoreinbettung nutzt und große Mengen von Daten in natürlicher Sprache verarbeitet. Verarbeiten kann das für natürliche Sprache gegebene Verarbeitungssystem 120 natürliche Daten beispielsweise zum Zwecke einer Bestimmung syntaktischer oder semantischer Wortähnlichkeiten, zur automatischen Zusammenfassung, zur maschinellen Übersetzung, zur Stimmungsanalyse, zum Informationsabruf, zur Spracherkennung, zur Beantwortung von Fragen, zum Generieren von Empfehlungen, zum Vergleichen von Bildern mit Text und dergleichen mehr. Zu diesem Zweck ist das für natürliche Sprache gegebene Verarbeitungssystem 120 auf den Vektorraum des erweiterten Wörterbuches 118 kalibriert. Das für natürliche Sprache gegebene Verarbeitungssystem 120 kann beispielsweise ein neuronales Netzwerkmodell nutzen, das auf einem zugrunde liegenden Wortvektorwörterbuch aufgebaut ist.
  • Herkömmliche Techniken des Erzeugens eines neuen Wortvektorwörterbuches ändern den Vektorraum selbst beispielsweise durch Neuabbilden eines jeden Vektors, der in dem Wörterbuch beinhaltet ist. Das Ändern des Vektorraumes verbreitet Fehler in dem für natürliche Sprache gegebenen Verarbeitungssystem 120. Ein neuronales Netzwerkmodell, das entsprechend einem bestimmten Vektorraum aufgebaut ist, arbeitet beispielsweise nicht mehr adäquat, wenn der Vektorraum des Wörterbuches geändert wird, was bei Nutzung herkömmlicher Techniken zu großer Inflexibilität von Wortvektorwörterbüchern führt. Im Gegensatz hierzu nutzt die in 1 dargestellte Umgebung 100 Techniken, die ein bestehendes Wörterbuch derart erweitern, dass es neue Worte und neue Wortvektoren ohne Ändern des Vektorraumes aufnimmt. Dies ermöglicht, dass das für natürliche Sprache gegebene Verarbeitungssystem 120 auch bei Hinzufügungen zu dem Wörterbuch weiterbesteht, wodurch robuste und adaptive Lösungen bereitgestellt werden, die durch herkömmliche Mittel nicht erreichbar sind.
  • Im Allgemeinen können Funktionalitäten, Merkmale und Konzepte, die hier im Zusammenhang mit den vorstehenden und nachstehenden Beispielen beschrieben werden, auch im Zusammenhang mit den in diesem Abschnitt beschriebenen exemplarischen Prozeduren eingesetzt werden. Des Weiteren können Funktionalitäten, Merkmale und Konzepte, die in der vorliegenden Druckschrift im Zusammenhang mit verschiedenen Figuren und Beispielen beschrieben werden, auch untereinander ausgetauscht werden und sind nicht auf die Implementierung im Zusammenhang mit einer bestimmten Figur oder Prozedur beschränkt. Blöcke, die hier verschiedenen dargestellten Prozeduren und entsprechenden Figuren zugeordnet sind, können zudem zusammen und/oder auf verschiedene Weisen kombiniert angewendet werden. Einzelne Funktionalitäten, Merkmale und Konzepte, die hier im Zusammenhang mit verschiedenen exemplarischen Umgebungen, Vorrichtungen, Komponenten, Figuren und Prozeduren beschrieben werden, können in beliebigen geeigneten Kombinationen genutzt werden und sind nicht auf diejenigen bestimmten Kombinationen beschränkt, die in den aufgezählten Beispielen der vorliegenden Beschreibung aufgeführt sind.
  • 2 zeigt detaillierter ein System 200 zur Darstellung einer exemplarischen Wortvektortrainingsverarbeitungspipeline des Wortvektortrainingssystems 104 von 1 zum Erzeugen der Wortvektoren 106. Die Wortvektortrainingspipeline beginnt mit dem Verarbeiten von Eingabeworten 202. Die Eingabeworte 202 können aus einer großen Textsammlung, so beispielsweise aus einer allgemeinen Textsammlung von der Webseite Wikipedia®, der Webseite Reddit® und dergleichen mehr, gesammelt oder generiert werden. Alternativ können die Eingabeworte 202 aus einer Textsammlung im Zusammenhang mit einem bestimmten Thema gesammelt werden.
  • Die Worte 202 werden in ein PMI-Modul 204 (Pointwise Mutual Information PMI, punktweise wechselseitige Information) eingegeben, um PMI-Daten 206 zu generieren. Die PMI-Daten 206 beinhalten Information im Zusammenhang mit Messungen der Zuordnung und Kookkurrenz unter den Worten 202. Die PMI-Daten 206 sind beispielsweise ein Maß dafür, wie häufig ein Wort mit einem anderen Wort auftritt. Bei einem Beispiel werden die PMI-Daten 206 erzeugt, indem n-Gramm-Statistiken über die Worte 202 gesammelt werden. Bei einigen Implementierungen beruhen die PMI-Daten 206 auf Unigramm- oder Bigramm-Statistiken auf Wortebene. Die PMI-Daten 206 können als Matrix von Kookkurrenzen zwischen Worten dargestellt werden. Sind beispielsweise die Worte 202 gegeben, die als Wörterbuch V = {wi, I = 1,2,3,... , N} dargestellt sind, so können die PMI-Daten 206 als PMI-Matrix M[N×N] dargestellt werden, wobei die Gesamtwahrscheinlichkeit der Kookkurrenz M zwischen beliebigen Worten wi und wj folgendermaßen lautet: M = P M I ( w i , w j ) = l o g p ( w i , w j ) p ( w i ) p ( w j )
    Figure DE102018010162A1_0001
  • Die PMI-Daten 206 werden in ein Vektorerzeugungsmodul 208 eingegeben, um die Wortvektoren 106 zu erzeugen. Die Wortvektoren 106 können als Matrix von Wortvektoren oder alternativ als Satz einzelner Vektoren dargestellt werden. Bei einigen Implementierungen erzeugt das Vektorerzeugungsmodul 208 eine Wortvektormatrix H durch Zerlegen der PMI-Matrix M mit einem Skalierungsvektor S gemäß: M = U S U T
    Figure DE102018010162A1_0002
    Hierbei stellt U den Eigenvektorraum dar, und es gilt: H = U S 1 2
    Figure DE102018010162A1_0003
  • Jede Reihe hi der spaltentrunkierten Untermatrix H:,1:d kann als Wortvektor 106 für ein jeweiliges der Worte 202 genutzt werden. Die Worte 202 und die entsprechenden Wortvektoren 106 können kombiniert werden, um ein Wörterbuch 210 zu erzeugen. Das Wörterbuch 210 kann in einem beliebigen System genutzt werden, das Vektordarstellungen von Worten verwendet, so beispielsweise in für natürliche Sprache gegebenen Verarbeitungssystemen.
  • 3 zeigt detaillierter ein System 300 zur Darstellung einer exemplarischen Wörterbucherweiterungsverarbeitungspipeline des Wörterbucherweiterungssystems 110 von 1 zum Erzeugen des erweiterten Wörterbuches 118. Die Wörterbucherweiterungsverarbeitungspipeline beginnt damit, dass ein PMI-Schätzungsmodul 302 das neue Wort 112 verarbeitet. Das neue Wort 112 ist ein Wort, das unter den Worten 202 nicht vorhanden ist, wie anhand 1 bereits detaillierter beschrieben worden ist. Das PMI-Schätzungsmodul 302 nutzt das Wörterbuch 210 und schätzt PMI-Information für das neue Wort 112, was eine geschätzte PMI-Information 304 ergibt. Das PMI-Schätzungsmodul 302 arbeitet ohne Nutzung des PMI-Moduls 204 und ohne Ändern der PMI-Daten 206. Zu diesem Zweck kann das PMI-Schätzungsmodul 302 die geschätzte PMI-Information 304 für ein neues Wort w in Form eines PMI-Vektors ê folgendermaßen erzeugen: e ^ = [ e ^ 0 , e ^ 1 , , e ^ N ]
    Figure DE102018010162A1_0004
    Hierbei gilt: e ^ i = l o g p ( w ^ , w i ) p ( w ^ ) p ( w i )
    Figure DE102018010162A1_0005
  • Das Neutrainieren eines neuen Satzes von PMI-Daten 206 mit dem PMI-Modul 204 geht mit einer neuen Gesamtanalyse der Worte 202 einher und ist zeitaufwändig, rechentechnisch teuer und ineffizient. Stattdessen kann das PMI-Schätzungsmodul 302 spärliche Kookkurrenzinformation für das neue Wort 112 nutzen, so beispielsweise Kookkurrenzinformation, die aus einem einzigen Dokument, das das neue Wort 112 beinhaltet, und einem kleinen Teilsatz von Worten in dem Wörterbuch 210 extrahiert ist. Auf diese Weise schont das PMI-Schätzungsmodul 302 Ressourcen und erhöht die Effizienz des Rechensystems 102. Die spärliche Kookkurrenzinformation für das neue Wort 112 kann einfach aus der Überschrift eines Dokumentes, einer Kommentarliste (tag list) eines Bildes und dergleichen mehr gesammelt werden.
  • Die geschätzte PMI-Information 304 wird in das Vektornäherungsmodul 116 eingegeben, um einen geschätzten neuen Vektor 306 zu erzeugen. Das Vektornäherungsmodul 116 arbeitet ohne Nutzung des Vektorerzeugungsmoduls 208 und ohne Ändern der Wortvektoren 106. Zu diesem Zweck projiziert das Vektornäherungsmodul 116 die geschätzte PMI-Information 304 auf die Wortvektoren 106. Bei einem Beispiel kann das Vektornäherungsmodul 116 den geschätzten neuen Vektor 306, h ^ ,
    Figure DE102018010162A1_0006
    folgendermaßen erzeugen: h ^ e ^ US 1 2
    Figure DE102018010162A1_0007
  • Das Neutrainieren eines neuen Satzes von Wortvektoren 106 mit dem Vektorerzeugungsmodul 208 impliziert ein Neuberechnen einer Eigenvektorzerlegung aktualisierter PMI-Daten und das Berechnen einer neuen Matrix, die die Wortvektoren 106 in Gänze darstellt, was zeitaufwändig, rechentechnisch teuer und ineffizient ist. Stattdessen bietet das Vektornäherungsmodul 116 eine rechentechnisch günstige und effiziente Näherung des geschätzten neuen Vektors 306.
  • Experimentelle Ergebnisse haben gezeigt, dass das vollständige Erlernen eines neuen Satzes von Wortvektoren (beispielsweise mit dem Vektorerzeugungsmodul 208) die zeitliche Komplexität CI2 + N3 aufweist, wobei „C“ die Größe des Trainingskorpus ist, „I“ die Länge eines jeden Dokumentes in dem Corpus ist und „N“ die Anzahl der Worte in dem Wörterbuch ist. Im Gegensatz hierzu ist die zeitliche Komplexität bei Nutzung des Vektornäherungsmoduls 116 zum Erzeugen des geschätzten neuen Vektors 306 gleich N2. Da C und N ohne Weiteres jeweils Werte von mehreren 10.000 oder mehr annehmen können, ist das Vektornäherungsmodul 116 um Größenordnungen effizienter. Das Vektornäherungsmodul 116 stellt daher eine quantifizierbare und beträchtliche Erhöhung der Effizienz des Rechensystems 102 bereit.
  • Das Wörterbucherweiterungssystem 110 nutzt den geschätzten neuen Wortvektor 306 und erzeugt das erweiterte Wörterbuch 118. Das erweiterte Wörterbuch 118 enthält die Worte 202 und die Wortvektoren 106 wie auch das neue Wort 112 und den geschätzten neuen Wortvektor 306. Die Wortvektoren 106 bleiben in dem erweiterten Wörterbuch 118 im Vergleich zu den Wortvektoren 106 in dem Wörterbuch 210 unverändert. Dies ermöglicht, dass ein die Wortvektoren 106 nutzendes System das neue Wort 112 aufnimmt, ohne dass dies nachteilige Auswirkungen auf das System hätte. Ein für natürliche Sprache gegebenes Verarbeitungssystem kann beispielsweise ein neuronales Netzwerkmodell nutzen, das auf dem Wörterbuch 210 aufgebaut ist. Bei diesem Beispiel arbeitet das neuronale Netzwerkmodell nicht adäquat, wenn die Wortvektoren 106 geändert werden, weshalb beliebige Ergebnisse, die von dem neuronalen Netzwerkmodell erzeugt werden, unter Nutzung eines aktualisierten neuronalen Netzwerkmodells, das das neue Wort 112 enthält, neuerzeugt werden müssen. Das Wörterbucherweiterungssystem 110 ermöglicht jedoch, dass das erweiterte Wörterbuch 118 das Wörterbuch 210 online ersetzt. Da die Wortvektoren 106 nicht verändert werden, arbeitet das neuronale Netzwerkmodell weiter adäquat und kann inkrementell neue Worte in das neuronale Netzwerkmodell aufnehmen. Dieses online erfolgende inkrementelle Erweitern eines Wörterbuches kann mit herkömmlichen Mitteln nicht erreicht werden.
  • Das Wörterbuch 210 und das erweiterte Wörterbuch 118 können auf vielerlei Arten genutzt werden. Genutzt werden kann das erweiterte Wörterbuch 118 beispielsweise in Systemen zum Bestimmen syntaktischer oder semantischer Wortähnlichkeiten, zur automatischen Zusammenfassung, zur maschinellen Übersetzung, zur Stimmungsanalyse, zum Informationsabruf, zur Spracherkennung, zur Beantwortung von Fragen, zum Generieren von Empfehlungen, zum Vergleichen von Bildern mit Text und dergleichen mehr. Ein System, das auf einem Wortvektorwörterbuch aufgebaut ist, benötigt jedoch ein gewisses Ausmaß an Kalibrierung auf Grundlage des Vektorraumes des Wörterbuches. Herkömmliche Techniken zum Erzeugen eines neuen Wortvektorwörterbuches ändern den Vektorraum selbst, und zwar beispielsweise durch Neuabbilden eines jeden Vektors, der in dem Wörterbuch beinhaltet ist. Das Ändern des Vektorraumes verbreitet Fehler in dem System, das auf dem Wörterbuch aufgebaut ist. Viele für natürliche Sprache gegebene Verarbeitungssysteme nutzen beispielsweise neuronale Netzwerkmodelle oder andere Techniken maschinellen Lernens auf Grundlage eines zugrunde liegenden Wörterbuches. Ein neuronales Netzwerkmodell, das entsprechend einem bestimmten Vektorraum aufgebaut ist, arbeitet beispielsweise nicht mehr adäquat, wenn der Vektorraum des Wörterbuches geändert wird, was bei Nutzung herkömmlicher Techniken zu großer Inflexibilität von Wortvektorwörterbüchern führt. Im Gegensatz hierzu nutzt das in 3 dargestellte System 300 einen Prozess, der ein bestehendes Wörterbuch derart erweitert, dass dieses neue Worte und neue Wortvektoren enthält, ohne dass der Vektorraum geändert würde. Dies ermöglicht, dass Systeme, die auf dem Wörterbuch aufgebaut sind, bei Hinzufügungen zu dem Wörterbuch weiter bestehen, was robuste und adaptive Lösungen bereitstellt, die mit herkömmlichen Mitteln nicht erreicht werden können.
  • Des Weiteren kann das in 3 dargestellte System 300 ein bestehendes Wörterbuch derart erweitern, dass es ein neues Wort aus einer anderen Sprache als derjenigen des bestehenden Wörterbuches enthält. Ein neues Wort kann beispielsweise in einer anderen Sprache vorliegen, wofür keine Übersetzung in der Sprache des Wörterbuches vorhanden ist. Bei einem Beispiel nutzt das PMI-Schätzungsmodul 302 einen Sprachübersetzer für das Dokument, das das unbekannte Wort beinhaltet, um Worte, die eine Übersetzung aufweisen, zu identifizieren. Die übersetzten Worte werden benutzt, um geschätzte PMI-Information 304 für das unbekannte Wort auf Grundlage spärlicher Kookkurrenzdaten, die in Bezug auf die übersetzten Worte gesammelt werden, zu erzeugen.
  • Exemplarische Prozeduren
  • Die nachfolgende Diskussion beschreibt Techniken, die unter Nutzung der vorher beschriebenen Systeme und Vorrichtungen implementiert sein können. Aspekte der Prozeduren können in Hardware, Firmware, Software oder einer Kombination hieraus implementiert sein. Die Prozeduren sind als Sätze von Blöcken gezeigt, die Vorgänge spezifizieren, die von einer oder mehreren Vorrichtungen durchgeführt werden, und sind nicht unbedingt auf diejenigen Reihenfolgen beschränkt, die zur Durchführung der Vorgänge durch die jeweiligen Blöcke gezeigt sind. In Teilen der nachfolgenden Diskussion wird auf 1 bis 3 verwiesen.
  • 4 zeigt eine Prozedur 400 bei einer exemplarischen Implementierung einer Online-Wörterbucherweiterung von Wortvektoren. Es wird ein Satz von Wortvektoren, der einem Satz von Worten zugeordnet ist, ermittelt (Block 402). Bei einigen Implementierungen ist der Satz von Wortvektoren vorberechnet und wird von dem Rechensystem 102 über das Netzwerk 108 derart ermittelt, dass das Rechensystem 102 an der Erzeugung der Wortvektoren nicht beteiligt ist. Bei anderen Implementierungen nutzt das Rechensystem 102 das Wortvektortrainingssystem 104, um die Wortvektoren vorzuberechnen oder zu erzeugen, wie anhand 2 beschrieben worden ist. Es können beispielsweise Eingabeworte analysiert werden, um PMI-Daten zu erzeugen, die die Zuordnung und Kookkurrenz der Eingabeworte messen und als PMI-Matrix gespeichert sind. Die PMI-Matrix kann unter Nutzung einer Eigenvektorzerlegung zerlegt werden, um eine Wortvektormatrix zu erzeugen, die für jedes jeweilige Eingabewort einen Wortvektor beinhaltet. Bei einem Beispiel kann der Satz von Worten beispielsweise „Hund“ und „Jagdhund“ beinhalten, wobei PMI-Daten für jedes der Worte „Hund“ und „Jagdhund“ in Bezug auf alle Worte in dem Satz aus Worten erzeugt werden. Auf Grundlage der PMI-Daten wird ein Wortvektor für jedes der Worte „Hund“ und „Jagdhund“ erzeugt oder ermittelt.
  • Es wird ein Eingabewort empfangen, das in dem Satz von Worten nicht beinhaltet ist (Block 404). Entsprechend weist das Eingabewort keinen entsprechenden Wortvektor auf, der in dem Satz von Wortvektoren beinhaltet ist. Beim vorgenannten Beispiel kann das Eingabewort „Wolf” sein. Es wird eine Beziehung zwischen dem Eingabewort und einem oder mehreren Worten des Satzes von Worten bestimmt (Block 406). Dies erfolgt unter Nutzung spärlicher Kookkurrenzinformation zwischen dem Eingabewort und dem einen oder den mehreren Worten. Ist das Eingabewort beispielsweise in einem Dokument befindlich, so wird Kookkurrenzinformation für das Eingabewort in Bezug auf Worte, die in dem Dokument befindlich sind, bestimmt. Diese spärliche Kookkurrenzinformation in Bezug auf einen kleinen Teilsatz von Worten wird benutzt, um Kookkurrenzinformation in Bezug auf den gesamten Satz von Worten herzuleiten oder zu nähern, wodurch die Kookkurrenzinformation derart erweitert wird, dass sie das Eingabewort beinhaltet, ohne dass neue Kookkurrenzinformation für den Satz von Worten generiert würde. Beim vorliegenden Beispiel mit dem Eingabewort „Wolf” wird eine Beziehung zwischen „Wolf“ und sowohl „Hund“ wie auch „Jagdhund“ auf Grundlage der spärlichen Kookkurrenzinformation ausfindig gemacht.
  • Es wird ein neuer Wortvektor für das Eingabewort auf Grundlage von Wortvektoren aus dem Satz von Wortvektoren genähert, die dem einen oder den mehreren Worten zugeordnet sind (Block 408). Beim vorliegenden Beispiel werden sowohl „Hund“ wie auch „Jagdhund“ Wortvektoren in dem Satz von Wortvektoren zugeordnet. Auf Grundlage der Beziehung zwischen „Wolf“ und jedem von „Hund“ und „Jagdhund“ wird ein Wortvektor für „Wolf” auf Grundlage des Wortvektors für „Hund“ und des Wortvektors für „Jagdhund“ genähert. Vorgenommen werden kann dies beispielsweise von dem Vektornäherungsmodul 116, wie anhand 3 bereits detaillierter beschrieben worden ist. Durchgeführt wird das Nähern auf Grundlage der bestehenden Wortvektoren, jedoch ohne die bestehenden Wortvektoren zu ändern. Die Wortvektoren für „Hund“ und „Jagdhund“ bleiben durch die Näherung beispielsweise unverändert, und es werden keine neuen Wortvektoren für „Hund“ und „Jagdhund“ generiert. Stattdessen werden die bestehenden Wortvektoren benutzt, um einen „ausreichend nahen“ Wortvektor für das Eingabewort zu nähern. Beim vorliegenden Beispiel wird bestimmt, dass „Wolf” sowohl zu Hund“ wie auch zu „Jagdhund“ ähnlich ist, und es wird ein genäherter Wortvektor für „Wolf” erzeugt, und zwar beispielsweise durch Erzeugen eines gewichteten Mittels der Wortvektoren für „Hund“ und „Jagdhund“.
  • Es wird ein neuer Satz von Wortvektoren generiert, der den Satz von Wortvektoren und den neuen Wortvektor beinhaltet (Block 410). Der neue Satz von Wortvektoren wird an ein für natürliche Sprache gegebenes Verarbeitungssystem übermittelt, um die Ersetzung einer Instanz des Satzes von Wortvektoren durch eine Instanz des neuen Satzes von Wortvektoren zu veranlassen. Das für natürliche Sprache gegebene Verarbeitungssystem kann beispielsweise das für natürliche Sprache gegebene Verarbeitungssystem 120 sein, das anhand 1 beschrieben worden ist. Bei einem Beispiel ist das für natürliche Sprache gegebene Verarbeitungssystem ein Wortähnlichkeitssystem, das entsprechend dem Satz von Wortvektoren arbeitet und beim vorliegenden Beispiel gegebenenfalls versucht, ein Wort, das ähnlich zu „Rudelhund“ ist, ausfindig zu machen. Bei diesem Beispiel nutzt das für natürliche Sprache gegebene Verarbeitungssystem den Satz von Wortvektoren, um einen Wortvektor, der „Rudelhund“ entspricht, auszuwählen, und bestimmt in dem Satz von Wortvektoren einen oder mehrere Wortvektoren, die nahe an dem ausgewählten Vektor sind. Beim Ausfindigmachen der nahen Vektoren bestimmt das Wortähnlichkeitssystem entsprechende Worte und gibt diese bestimmten Worte als ähnlich zu dem Eingabewort aus. Vor dem Empfangen des Satzes neuer Wortvektoren identifiziert das für natürliche Sprache gegebene Verarbeitungssystem einen nächsten Vektor, der „Hund“ entspricht, wenn der Satz von Wortvektoren „Wolf” nicht beinhaltet. Unter Nutzung herkömmlicher Techniken kann das für natürliche Sprache gegebene Verarbeitungssystem sein Wortvektorwörterbuch nicht erweitern oder aktualisieren, und das für natürliche Sprache gegebene Verarbeitungssystem kann seine Genauigkeit nicht weiter verbessern. Im Gegensatz hierzu kann das für natürliche Sprache gegebene Verarbeitungssystem beim Empfangen des neuen Satzes von Wortvektoren und Ersetzen des Satzes von Wortvektoren bei Schritt 412 sein Vokabular online erweitern und genauer identifizieren, dass der Ausdruck „Rudelhund“ große Ähnlichkeit zur Bedeutung des Wortes „Wolf‟ aufweist. Auf diese Weise können die durch die Prozedur 400 beschriebenen Techniken die Genauigkeit des für natürliche Sprache gegebenen Verarbeitungssystems über diejenige herkömmlicher Systeme hinaus verbessern.
  • 5 zeigt eine Prozedur 500 bei einer exemplarischen Implementierung einer Online-Wörterbucherweiterung von Wortvektoren. Es wird ein Bildmerkmalsvektor durch Abbilden von Bildmerkmalen eines Bildes in einen Vektorraum generiert (Block 502). Dies erfolgt beispielsweise mittels Durchführen einer Computervisionsanalyse an dem Bild. Computervisionstechniken sind derart kalibriert oder trainiert, dass der Vektorraum, der zum Abbilden der Bildmerkmale genutzt wird, mit einem Vektorraum, der zum Generieren von Wortvektoren genutzt wird, zusammenfällt. Entsprechend können Bildmerkmalsvektoren mit Wortvektoren, die die entsprechenden Bildmerkmale beschreiben, zusammenfallen oder zu diesen ähnlich sein.
  • Es wird bestimmt, dass der Bildmerkmalsvektor keinem Vektor aus einem Satz von Wortvektoren, der einem Satz von Worten zugeordnet ist, entspricht (Block 504). Durch Messen von Abständen in dem Vektorraum zwischen einem Bildmerkmalsvektor und einem Wortvektor kann ein Wort identifiziert werden, das dem Bildmerkmal entspricht. Auf diese Weise können Wortvektoren dafür verwendet werden, Ähnlichkeiten zwischen Bildern und Text bereitstellen, um beispielsweise ein Bild automatisch mit einem Wort zu kommentieren. Gleichwohl entspricht der Bildmerkmalsvektor gegebenenfalls auch keinem beliebigen Vektor in dem Satz von Wortvektoren, und zwar beispielsweise dann, wenn der Abstand zwischen dem Bildmerkmalsvektor und dem nächsten Wortvektor größer als ein Schwellenabstand ist.
  • Der Satz von Wortvektoren wird derart erweitert, dass er ein neues Wort beinhaltet (Block 506), indem eine Beziehung zwischen einem oder mehreren Wortvektoren und dem neuen Wort bestimmt wird (Block 508) und ein neuer Wortvektor auf Grundlage des einen oder der mehreren Wortvektoren genähert wird (Block 510). Die Beziehung wird auf Grundlage einer Kookkurrenzinformation, so beispielsweise der spärlichen Kookkurrenzinformation, bestimmt, wie anhand Block 406 von 4 detaillierter beschrieben worden ist. Die Näherung erfolgt auf Grundlage des einen oder der mehreren Wortvektoren, jedoch ohne Änderung des einen oder der mehreren Wortvektoren, wie anhand des Vektornäherungsmoduls 116 von 3 und anhand von Block 408 von 4 beschrieben worden ist.
  • Es wird ein neuer Satz von Wortvektoren generiert, der den Satz von Wortvektoren und den neuen Wortvektor beinhaltet (Block 512). Das Wörterbucherweiterungssystem 110 wird beispielsweise benutzt, um ein erweitertes Wörterbuch zu erzeugen. Das erweiterte Wörterbuch enthält sowohl die ursprünglichen Worte und entsprechende Vektoren wie auch das neue Wort und den entsprechenden neuen Wortvektor. Der Vektorraum selbst bleibt unverändert, weshalb die ursprünglichen Wortvektoren unverändert bleiben. Indem der Vektorraum konstant gehalten wird, bleibt der Bildmerkmalsvektor aus Block 502 genau und kann mit dem erweiterten Wörterbuch verglichen werden, ohne dass eine neue Analyse der Bildmerkmale oder ein neuer Bildmerkmalsvektor erforderlich wären.
  • Das Bild wird auf Grundlage des neuen Wortvektors entsprechend dem Bildmerkmalsvektor mit dem neuen Wort kommentiert (Block 514). Der Bildmerkmalsvektor wird mit dem neuen Satz von Wortvektoren aus Block 512 verglichen, und es wird bestimmt, dass der Bildmerkmalsvektor dem neuen Wortvektor entspricht. Der Abstand zwischen dem Bildmerkmalsvektor und dem neuen Wortvektor ist kleiner als ein Schwellenabstand. Auf Grundlage dieser Entsprechung wird der Bildmerkmalsvektor dem neuen Wort zugeordnet, und es wird das Bild mit dem neuen Wort kommentiert. Auf diese Weise wird das Bildkommentierungssystem, das auf einem Wortvektorwörterbuch aufgebaut ist, online derart erweitert, dass es neue Worte enthält, ohne dass dies nachteilige Auswirkungen auf das Bildkommentierungssystem selbst hätte.
  • Herkömmliche Techniken, die einen Satz von Wortvektoren erzeugen, ändern den Vektorraum, was der Entsprechung zwischen Bildmerkmalsvektoren und Wortvektoren entgegenwirkt und das Entwicklen eines neuen Bildkommentierungssystems unter Nutzung des neuen Vektorraumes erfordert. Im Gegensatz hierzu arbeiten die Prozedur 400 von 4 und die Prozedur 500 von 5 jeweils so, dass sie eine Online-Wörterbucherweiterung von Wortvektoren ohne Ändern des Vektorraumes bereitstellen. Dies ermöglicht, dass Systeme, die auf dem Wörterbuch aufgebaut sind, bei Hinzufügungen zu dem Wörterbuch weiterbestehen, was robuste und adaptive Lösungen bereitstellt, die mit herkömmlichen Mitteln nicht erreichbar sind.
  • Nach erfolgter Diskussion einiger exemplarischer Prozeduren folgt nunmehr eine Diskussion eines exemplarischen Systems und einer exemplarischen Vorrichtung entsprechend einer oder mehreren Implementierungen.
  • Exemplarisches System und exemplarische Vorrichtung
  • 6 zeigt bei 600 allgemein ein exemplarisches System, das eine exemplarische Rechenvorrichtung 602 beinhaltet, die ein oder mehrere Rechensysteme und/oder eine oder mehrere Vorrichtungen darstellt, die die hier beschriebenen verschiedenen Techniken implementieren können. Dies ist durch Einbeziehung des Wortvektortrainingssystems 104 und des Wörterbucherweiterungssystems 110 dargestellt. Die Rechenvorrichtung 602 kann beispielsweise ein Server eines Dienstanbieters, eine Vorrichtung, die einem Client zugeordnet ist (beispielsweise eine Clientvorrichtung), ein On-Chip-System und/oder eine beliebige andere geeignete Rechenvorrichtung oder ein solches Rechensystem sein.
  • Die exemplarische Rechenvorrichtung 602 beinhaltet, wie dargestellt ist, ein Verarbeitungssystem 604, ein oder mehrere computerlesbare Medien 606 und eine oder mehrere I/O-Schnittstellen 608, die kommunikationstechnisch miteinander gekoppelt sind. Obwohl dies nicht gezeigt ist, kann die Rechenvorrichtung 602 des Weiteren einen Systembus oder ein anderes Daten- und Befehlsübertragungssystem beinhalten, das die verschiedenen Komponenten miteinander koppelt. Ein Systembus kann eine beliebige Busstruktur oder eine Kombination aus verschiedenen Busstrukturen beinhalten, so beispielsweise einen Speicherbus oder einen Speichercontroller, einen Peripheriebus, einen universellen seriellen Bus und/oder einen Prozessor- oder Lokalbus, der eine Vielzahl von Busarchitekturen einsetzt. Eine Vielzahl weiterer Beispiele, so beispielsweise Steuer- bzw. Regel- und Datenleitungen, ist ebenfalls einbezogen.
  • Das Verarbeitungssystem 604 stellt eine Funktionalität zur Durchführung eines oder mehrerer Vorgänge unter Nutzung von Hardware dar. Entsprechend ist das Verarbeitungssystem 604 derart dargestellt, dass es Hardwareelemente 610 beinhaltet, die als Prozessoren, funktionelle Blöcke und dergleichen mehr konfiguriert sein können. Dies kann eine Implementierung in Hardware als anwendungsspezifische integrierte Schaltung oder als andere Logikvorrichtung, die unter Nutzung eines oder mehrerer Halbleiter gebildet ist, beinhalten. Die Hardwareelemente 610 sind nicht durch die Materialien, aus denen sie gebildet sind, oder durch die Bearbeitungsmechanismen, die zum Einsatz kommen, beschränkt. Die Prozessoren können beispielsweise aus einem Halbleiter / Halbleitern und/oder Transistoren (beispielsweise elektronischen integrierten Schaltungen (ICs)) bestehen. In diesem Kontext können prozessorseitig ausführbare Anweisungen elektronisch ausführbare Anweisungen sein.
  • Die computerlesbaren Speichermedien 606 sind derart dargestellt, dass sie eine Ablage / einen Speicher 612 beinhalten. Die Ablage / der Speicher 612 bietet eine Ablage-/Speicherkapazität, die einem oder mehreren computerlesbaren Medien zugeordnet ist. Die Ablage-/Speicherkomponente 612 kann flüchtige Medien (so beispielsweise einen Speicher mit wahlfreiem Zugriff (RAM)) und/oder nichtflüchtige Medien (so beispielsweise einen Nur-Lese-Speicher (ROM), einen Flash-Speicher, optische Platten, magnetische Platten und dergleichen mehr) beinhalten. Die Ablage-/Speicherkomponente 612 kann feste Medien (beispielsweise RAM, ROM, ein Festplattenlaufwerk und dergleichen mehr) wie auch entfernbare Medien (beispielsweise einen Flash-Speicher, ein entfernbares Festplattenlaufwerk, eine optische Platte und dergleichen mehr) beinhalten. Die computerlesbaren Medien 606 können auf vielerlei Arten, wie nachstehend noch beschrieben wird, konfiguriert sein.
  • Eine Eingabe-/Ausgabe-Schnittstelle / Eingabe-/Ausgabe-Schnittstellen 608 bietet/bieten eine Funktionalität, die ermöglicht, dass ein Nutzer Befehle und Information in die Rechenvorrichtung 602 eingibt, und die zudem ermöglicht, dass dem Nutzer und/oder anderen Komponenten oder Vorrichtungen Information unter Nutzung verschiedener Eingabe-/Ausgabevorrichtungen präsentiert wird. Beispiele für Eingabevorrichtungen beinhalten eine Tastatur, eine Cursorsteuer- bzw. Regelvorrichtung (beispielsweise eine Maus), ein Mikrofon, einen Scanner, eine Berührungsfunktionalität (beispielsweise kapazitive oder andere Sensoren, die dafür konfiguriert sind, eine physische Berührung zu detektieren), eine Kamera (die beispielsweise sichtbare oder unsichtbare Wellenlängen, so beispielsweise Infrarotfrequenzen, dafür einsetzen kann, Bewegungen als Gesten zu erkennen, die keine Berührung implizieren), und dergleichen mehr. Beispiele für Ausgabevorrichtungen beinhalten eine Anzeigevorrichtung (beispielsweise einen Monitor oder Projektor), Lautsprecher, einen Drucker, eine Netzwerkkarte, eine taktile Vorrichtung und dergleichen mehr. Daher kann die Rechenvorrichtung 602 auf vielerlei Arten, wie nachstehend noch beschrieben wird, konfiguriert sein, um die Nutzerinteraktion zu unterstützen.
  • Es sind hier verschiedene Techniken im allgemeinen Kontext von Software, Hardwareelementen oder Programmmodulen beschrieben worden. Allgemein beinhalten derartige Module Routinen, Programme, Objekte, Elemente, Komponenten, Datenstrukturen und dergleichen mehr, die bestimmte Aufgaben ausführen oder bestimmte abstrakte Datentypen implementieren. Die Begriffe „Modul“, „Funktionalität“ und „Komponente“ bezeichnen im Sinne des Vorliegenden allgemein Software, Firmware, Hardware oder eine Kombination hieraus. Die Merkmale der hier beschriebenen Techniken sind plattformunabhängig, was bedeutet, dass die Techniken auf einer Vielzahl von handelsüblichen Rechenplattformen mit einer Vielzahl von Prozessoren implementiert sein können.
  • Eine Implementierung der beschriebenen Module und Techniken kann auf einer bestimmten Form von computerlesbaren Medien gespeichert sein oder über diese übertragen werden. Die computerlesbaren Medien können eine Vielzahl von Medien beinhalten, auf die von der Rechenvorrichtung 602 zugegriffen werden kann. Beispiels- und nicht beschränkungshalber können computerlesbare Medien „computerlesbare Speichermedien“ und „computerlesbare Signalmedien“ beinhalten.
  • „Computerlesbare Speichermedien" können Medien und/oder Vorrichtungen bezeichnen, die eine dauerhafte und/oder nichttemporäre Speicherung von Information im Gegensatz zur bloßen Signalübertragung, zu Trägerwellen oder zu Signalen per se ermöglichen. Computerlesbare Speichermedien bezeichnen daher nicht signaltragende Medien. Computerlesbare Speichermedien beinhalten Hardware, so beispielsweise flüchtige und nichtflüchtige, entfernbare und nichtentfernbare Medien und/oder Speichervorrichtungen, die bei einem Verfahren oder einer Technologie implementiert sind, die zur Speicherung von Information geeignet ist, so beispielsweise als computerlesbare Anweisungen, Datenstrukturen, Programmmodule, Logikelemente/Schaltungen oder andere Daten. Beinhalten können Beispiele für computerlesbare Speichermedien unter anderem RAM, ROM, EEPROM, Flash-Speicher oder eine andere Speichertechnologie, CD-ROM, DVD oder einen anderen optischen Speicher, Festplatten, Magnetkassetten, Magnetbänder, Magnetplattenspeicher oder andere magnetische Speichervorrichtungen oder eine andere Speichervorrichtung, physische Medien oder Objekte, die dafür geeignet sind, dass gewünschte Information gespeichert wird, und auf die ein Computer zugreifen kann.
  • „Computerlesbare Signalmedien" können signaltragende Medien bezeichnen, die dafür konfiguriert sind, Anweisungen an die Hardware der Rechenvorrichtung 602 beispielsweise über ein Netzwerk zu übermitteln. Signalmedien können typischerweise computerlesbare Anweisungen, Datenstrukturen, Programmmodule oder andere Daten in einem modulierten Datensignal verkörpern, so beispielsweise Trägerwellen, Datensignale oder einen anderen Transportmechanismus. Signalmedien beinhalten zudem beliebige Informationsverteilungsmedien. Der Begriff „moduliertes Datensignal“ bezeichnet ein Signal, bei dem eine oder mehrere Eigenschaften derart eingestellt oder verändert sind, dass Information in dem Signal codiert ist. Beispiels- und nicht beschränkungshalber beinhalten Kommunikationsmedien drahtgebundene Medien, so beispielsweise ein drahtgebundenes Netzwerk oder eine Direktdrahtverbindung, und drahtlose Medien, so beispielsweise akustische, hochfrequenzbasierte, infrarote und andere drahtlose Medien.
  • Wie vorstehend beschrieben worden ist, stellen die Hardwareelemente 610 und die computerlesbaren Medien 606 Module, eine programmierbare Vorrichtungslogik und/oder eine feste Vorrichtungslogik dar, die in Form von Hardware implementiert sind, die bei einigen Ausführungsformen dafür eingesetzt werden kann, wenigstens einige Aspekte der hier beschriebenen Techniken beispielsweise zur Ausführung einer oder mehrerer Anweisungen zu implementieren. Die Hardware kann Komponenten einer integrierten Schaltung oder eines On-Chip-Systems, eine anwendungsspezifische integrierte Schaltung (ASIC), ein feldprogrammierbares Gate-Array (FPGA), eine komplexe programmierbare Logikvorrichtung (CPLD) und andere Implementierungen in Silizium oder anderer Hardware beinhalten. In diesem Zusammenhang kann Hardware als Verarbeitungsvorrichtung wirken, die Programmaufgaben wahrnimmt, die durch Anweisungen und/oder eine Logik definiert sind, die durch Hardware verkörpert ist, wie auch Hardware, die zur Speicherung von Anweisungen zur Ausführung benutzt werden, so beispielsweise durch die vorbeschriebenen computerlesbaren Speichermedien.
  • Kombinationen des Vorbeschriebenen können zudem zur Implementierung verschiedener der hier beschriebenen Techniken eingesetzt werden. Entsprechend können Software, Hardware oder ausführbare Module als eine oder mehrere Anweisungen und/oder Logik implementiert sein, die in irgendeiner Form von computerlesbaren Speichermedien und/oder durch ein oder mehrere Hardwareelemente 610 verkörpert ist. Die Rechenvorrichtung 602 kann dafür konfiguriert sein, bestimmte Anweisungen und/oder Funktionen entsprechend Software- und/oder Hardwaremodulen zu implementieren. Entsprechend kann eine als Software gegebene Implementierung eines Moduls, das von der Rechenvorrichtung 602 ausführbar ist, auch wenigstens teilweise in Hardware gegeben sein, so beispielsweise unter Nutzung computerlesbarer Speichermedien und/oder Hardwareelemente 610 des Verarbeitungssystems 604. Die Anweisungen und/oder Funktionen können von einem oder mehreren Objekten (beispielsweise einer oder mehreren Rechenvorrichtungen 602 und/oder Verarbeitungssystemen 604) ausführbar/betreibbar sein, um die hier beschriebenen Techniken, Module und Beispiele zu implementieren.
  • Die hier beschriebenen Techniken können von verschiedenen Konfigurationen der Rechenvorrichtung 602 unterstützt werden und sind nicht auf die spezifischen Beispiele für die hier beschriebenen Techniken beschränkt. Die Funktionalität kann zudem gänzlich oder in Teilen unter Nutzung eines verteilten Systems implementiert sein, so beispielsweise über eine „Cloud“ 614 mittels einer Plattform 616, wie nachstehend noch beschrieben wird.
  • Die Cloud 614 beinhaltet eine Plattform 616 für Ressourcen 618 und/oder stellt diese dar. Die Plattform 616 abstrahiert die zugrunde liegende Funktionalität der Hardware- (beispielsweise Server) und Softwareressourcen der Cloud 614. Die Ressourcen 618 können Anwendungen und/oder Daten beinhalten, die eingesetzt werden können, während eine Computerverarbeitung auf Servern ausgeführt wird, die von der Rechenvorrichtung 602 getrennt sind. Die Ressourcen 618 können zudem Dienste beinhalten, die über das Internet und/oder über ein Teilnehmernetzwerk bereitgestellt werden, so beispielsweise ein zellenbasiertes oder ein Wi-Fi-Netzwerk.
  • Die Plattform 616 kann Ressourcen und Funktionen abstrahieren, um die Rechenvorrichtung 602 mit anderen Rechenvorrichtungen zu verbinden. Die Plattform 616 kann zudem dafür dienen, die Skalierung von Ressourcen zu abstrahieren, um einen entsprechenden Skalierungsgrad für bestehenden Bedarf an den Ressourcen 618, die über die Plattform 616 implementiert sind, bereitzustellen. Entsprechend kann bei einer Ausführungsform mit wechselseitig verbundenen Vorrichtungen eine Implementierung der hier beschriebenen Funktionalität über das System 600 verteilt sein. Die Funktionalität kann beispielsweise teilweise auch auf der Rechenvorrichtung 602 wie auch über die Plattform 616, die die Funktionalität der Cloud 614 abstrahiert, implementiert sein.
  • Schlussbemerkung
  • Obwohl die Erfindung in einer Sprache beschrieben worden ist, die für Strukturmerkmale und/oder methodische Vorgänge spezifisch ist, sollte einsichtig sein, dass die in den beigefügten Ansprüchen definierte Erfindung nicht unbedingt auf die beschriebenen spezifischen Merkmale oder Vorgänge beschränkt ist. Vielmehr sind die spezifischen Merkmale und Vorgänge als exemplarische Formen der Implementierung der beanspruchten Erfindung offenbart.

Claims (20)

  1. Verfahren, das durch wenigstens eine Rechenvorrichtung implementiert ist, in einer Digitalmedienumgebung zum Erweitern eines Wortvektorwörterbuches, wobei das Verfahren umfasst: durch die wenigstens eine Rechenvorrichtung erfolgendes Erhalten bzw. Ermitteln eines Satzes von Wortvektoren, der einem Satz von Worten zugeordnet ist; durch die wenigstens eine Rechenvorrichtung erfolgendes Empfangen eines Eingabewortes, das in dem Satz von Worten nicht beinhaltet ist; durch die wenigstens eine Rechenvorrichtung erfolgendes Bestimmen einer Beziehung zwischen dem Eingabewort und einem oder mehreren Worten des Satzes von Worten; durch die wenigstens eine Rechenvorrichtung erfolgendes Nähern eines neuen Wortvektors, der dem Eingabewort zugeordnet ist, auf Grundlage eines oder mehrerer Wortvektoren aus dem Satz von Wortvektoren entsprechend dem einen oder den mehreren Worten; durch die wenigstens eine Rechenvorrichtung erfolgendes Generieren eines neuen Satzes von Wortvektoren, der den Satz von Wortvektoren und den neuen Wortvektor beinhaltet, wobei der neue Satz von Wortvektoren einem neuen Satz von Worten zugeordnet ist, der den Satz von Worten und das Eingabewort beinhaltet; und durch die wenigstens eine Rechenvorrichtung erfolgendes Übermitteln des neuen Satzes von Wortvektoren an ein für natürliche Sprache gegebenes Verarbeitungssystem und Veranlassen einer Ersetzung einer Instanz des Satzes von Wortvektoren durch eine Instanz des neuen Satzes von Wortvektoren.
  2. Verfahren nach Anspruch 1, wobei der Satz von Wortvektoren auf Grundlage einer Kookkurrenz von Worten innerhalb eines Textkorpus vorberechnet wird.
  3. Verfahren nach Anspruch 1 oder 2, wobei jeder Wortvektor des Satzes von Wortvektoren punktweise wechselseitige Information beinhaltet, die Zuordnung und Kookkurrenz misst.
  4. Verfahren nach Anspruch 3, wobei die punktweise wechselseitige Information auf Unigramm- oder Bigramm-Statistiken beruht.
  5. Verfahren nach Anspruch 4, wobei das Nähern des neuen Wortvektors ein Nähern punktweise wechselseitiger Information beinhaltet.
  6. Verfahren nach einem der vorhergehenden Ansprüche, wobei das Generieren des neuen Satzes von Wortvektoren ohne Bestimmen neuer Wortvektoren, die dem Satz von Worten zugeordnet sind, durchgeführt wird.
  7. Verfahren nach einem der vorhergehenden Ansprüche, wobei der Satz von Wortvektoren auf Grundlage einer Kookkurrenz von Worten innerhalb eines Textkorpus vorberechnet wird, das Eingabewort in einem Dokument, das in dem Textkorpus nicht beinhaltet ist, befindlich ist, und das Nähern des neuen Wortvektors teilweise auf einer Kookkurrenz des Eingabewortes innerhalb des Dokumentes beruht.
  8. Verfahren nach einem der vorhergehenden Ansprüche, wobei der Satz von Worten Worte in einer ersten Sprache beinhaltet und das Eingabewort in einer zweiten Sprache ist.
  9. Wenigstens ein computerlesbares Medium in einer Digitalmedienumgebung zum Erweitern eines Wortvektorwörterbuches, wobei das Medium prozessorseitig ausführbare Anweisungen speichert, die in Reaktion auf die Ausführung durch ein Verarbeitungssystem veranlassen, dass das Verarbeitungssystem Vorgänge durchführt, die umfassen: durch die wenigstens eine Rechenvorrichtung erfolgendes Generieren eines Bildmerkmalsvektors auf Grundlage einer Abbildung von Bildmerkmalen eines Bildes in einen Vektorraum; durch die wenigstens eine Rechenvorrichtung erfolgendes Bestimmen, dass der Bildmerkmalsvektor keinem Vektor aus einem Satz von Wortvektoren, der einem Satz von Worten zugeordnet ist, entspricht; Erweitern des Satzes von Wortvektoren durch Nähern neuer Wortvektoren, die neuen Worten zugeordnet sind, auf Grundlage eines oder mehrerer Wortvektoren aus dem Satz von Wortvektoren, die eine bestimmte Beziehung zu den neuen Worten haben; durch die wenigstens eine Rechenvorrichtung erfolgendes Generieren eines neuen Satzes von Wortvektoren, der den Satz von Wortvektoren und die neuen Wortvektoren beinhaltet; und Taggen bzw. Kommentieren des Bildes mit einem oder mehreren der neuen Worte auf Grundlage eines oder mehrerer der neuen Wortvektoren entsprechend dem Bildmerkmalsvektor.
  10. Wenigstens ein computerlesbares Medium nach Anspruch 9, wobei der Satz von Wortvektoren auf Grundlage einer Kookkurrenz von Worten innerhalb eines Textkorpus vorberechnet wird.
  11. Wenigstens ein computerlesbares Medium nach Anspruch 9 oder 10, wobei jeder Wortvektor des Satzes von Wortvektoren punktweise wechselseitige Information beinhaltet, die Zuordnung und Kookkurrenz misst.
  12. Wenigstens ein computerlesbares Medium nach Anspruch 11, wobei die punktweise wechselseitige Information auf Unigramm- oder Bigramm-Statistiken beruht.
  13. Wenigstens ein computerlesbares Medium nach Anspruch 12, wobei das Nähern des neuen Wortvektors ein Nähern punktweise wechselseitiger Information beinhaltet.
  14. Wenigstens ein computerlesbares Medium nach einem der Ansprüche 9 bis 13, wobei das Generieren des neuen Satzes von Wortvektoren ohne Bestimmen neuer Wortvektoren, die dem Satz von Worten zugeordnet sind, durchgeführt wird.
  15. Wenigstens ein computerlesbares Medium nach einem der Ansprüche 9 bis 14, wobei der Satz von Wortvektoren auf Grundlage einer Kookkurrenz von Worten innerhalb eines Textkorpus vorberechnet wird, die neuen Worte in einem Dokument, das in dem Textkorpus nicht beinhaltet ist, befindlich sind, und das Nähern der neuen Wortvektoren teilweise auf einer Kookkurrenz der neuen Worte innerhalb des Dokumentes beruht.
  16. Wenigstens ein computerlesbares Medium nach einem der Ansprüche 9 bis 15, wobei der Satz von Worten Worte in einer ersten Sprache beinhaltet und die neuen Worte in einer zweiten Sprache sind.
  17. Wenigstens eine Rechenvorrichtung in einer Digitalmedienumgebung zum Erweitern eines Wortvektorwörterbuches, wobei die wenigstens eine Rechenvorrichtung ein Verarbeitungssystem und wenigstens ein computerlesbares Speichermedium beinhaltet, wobei die wenigstens eine Rechenvorrichtung umfasst: Mittel zum Bestimmen, dass ein Eingabewort in einem Satz von Worten nicht beinhaltet ist, der einem vorberechneten Satz von Wortvektoren zugeordnet ist; Mittel zum Bestimmen einer Beziehung zwischen dem Eingabewort und einem oder mehreren Worten des Satzes von Worten; Mittel zum Nähern eines neuen Wortvektors, der dem Eingabewort zugeordnet ist, auf Grundlage eines oder mehrerer Wortvektoren aus dem Satz von Wortvektoren entsprechend dem einen oder den mehreren Worten; und Mittel zum Generieren eines neuen Satzes von Wortvektoren, der den Satz von Wortvektoren und den neuen Wortvektor beinhaltet, wobei der neue Satz von Wortvektoren einem neuen Satz von Worten zugeordnet ist, der den Satz von Worten und das Eingabewort beinhaltet.
  18. Wenigstens eine Rechenvorrichtung nach Anspruch 17, wobei jeder Wortvektor des Satzes von Wortvektoren punktweise wechselseitige Information beinhaltet, die Zuordnung und Kookkurrenz auf Grundlage von Unigramm- oder Bigramm-Statistiken misst.
  19. Wenigstens eine Rechenvorrichtung nach Anspruch 17 oder 18, wobei das Mittel zum Generieren des neuen Satzes von Wortvektoren Mittel zum Generieren eines neuen Satzes von Wortvektoren ohne Bestimmen neuer Wortvektoren, die dem Satz von Worten zugeordnet sind, beinhaltet.
  20. Wenigstens eine Rechenvorrichtung nach einem der Ansprüche 17 bis 19, wobei der Satz von Wortvektoren auf Grundlage einer Kookkurrenz von Worten innerhalb eines Textkorpus vorberechnet wird, das Eingabewort in einem Dokument, das in dem Textkorpus nicht beinhaltet ist, befindlich ist, und das Nähern des neuen Wortvektors teilweise auf einer Kookkurrenz des Eingabewortes innerhalb des Dokumentes beruht.
DE102018010162.3A 2018-03-19 2018-12-28 Online-Wörterbucherweitern von Wortvektoren Pending DE102018010162A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/924,791 US10846319B2 (en) 2018-03-19 2018-03-19 Online dictionary extension of word vectors
US15/924,791 2018-03-19

Publications (1)

Publication Number Publication Date
DE102018010162A1 true DE102018010162A1 (de) 2019-09-19

Family

ID=67774282

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102018010162.3A Pending DE102018010162A1 (de) 2018-03-19 2018-12-28 Online-Wörterbucherweitern von Wortvektoren

Country Status (5)

Country Link
US (1) US10846319B2 (de)
CN (1) CN110287330B (de)
AU (1) AU2019200085B2 (de)
DE (1) DE102018010162A1 (de)
GB (1) GB2572239A (de)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10860809B2 (en) 2019-04-09 2020-12-08 Sas Institute Inc. Word embeddings and virtual terms
CN110852077B (zh) * 2019-11-13 2023-03-31 泰康保险集团股份有限公司 动态调整Word2Vec模型词典的方法、装置、介质及电子设备
US11663402B2 (en) * 2020-07-21 2023-05-30 International Business Machines Corporation Text-to-vectorized representation transformation
CN112037770B (zh) * 2020-08-03 2023-12-29 北京捷通华声科技股份有限公司 发音词典的生成方法、单词语音识别的方法和装置
CN112037818A (zh) * 2020-08-30 2020-12-04 北京嘀嘀无限科技发展有限公司 异常情况确定方法和正向匹配式生成方法
JP6936370B1 (ja) * 2020-09-02 2021-09-15 Scsk株式会社 情報処理システム、及び情報処理プログラム
CN111814473B (zh) * 2020-09-11 2020-12-22 平安国际智慧城市科技股份有限公司 特定领域的词向量增量方法、装置及存储介质
CN115221872B (zh) * 2021-07-30 2023-06-02 苏州七星天专利运营管理有限责任公司 一种基于近义扩展的词汇扩展方法和系统
US11880473B2 (en) 2021-09-23 2024-01-23 International Business Machines Corporation Removing data having a data type from a data set
US11681865B2 (en) * 2021-09-23 2023-06-20 International Business Machines Corporation Annotating a log based on log documentation
CN117194604B (zh) * 2023-11-06 2024-01-30 临沂大学 一种智慧医疗病患问诊语料库构建方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3701515B2 (ja) 1999-06-30 2005-09-28 シャープ株式会社 検索装置及び検索プログラムを記録した記録媒体
JP3614765B2 (ja) * 2000-09-13 2005-01-26 日本電信電話株式会社 概念辞書拡張装置
US7668718B2 (en) * 2001-07-17 2010-02-23 Custom Speech Usa, Inc. Synchronized pattern recognition source data processed by manual or automatic means for creation of shared speaker-dependent speech user profile
US20050022114A1 (en) * 2001-08-13 2005-01-27 Xerox Corporation Meta-document management system with personality identifiers
US8719021B2 (en) * 2006-02-23 2014-05-06 Nec Corporation Speech recognition dictionary compilation assisting system, speech recognition dictionary compilation assisting method and speech recognition dictionary compilation assisting program
US20080091427A1 (en) * 2006-10-11 2008-04-17 Nokia Corporation Hierarchical word indexes used for efficient N-gram storage
US7840407B2 (en) * 2006-10-13 2010-11-23 Google Inc. Business listing search
US8972268B2 (en) * 2008-04-15 2015-03-03 Facebook, Inc. Enhanced speech-to-speech translation system and methods for adding a new word
US7983902B2 (en) * 2007-08-23 2011-07-19 Google Inc. Domain dictionary creation by detection of new topic words using divergence value comparison
US9183193B2 (en) * 2013-02-12 2015-11-10 Xerox Corporation Bag-of-repeats representation of documents
MX2015010582A (es) * 2013-02-15 2017-01-11 Voxy Inc Sistemas y metodos de aprendizaje de idiomas.
CN103365974A (zh) * 2013-06-28 2013-10-23 百度在线网络技术(北京)有限公司 一种基于相关词主题的语义消歧方法和系统
US9483460B2 (en) * 2013-10-07 2016-11-01 Google Inc. Automated formation of specialized dictionaries

Also Published As

Publication number Publication date
GB2572239A (en) 2019-09-25
AU2019200085B2 (en) 2021-10-07
US20190286716A1 (en) 2019-09-19
US10846319B2 (en) 2020-11-24
CN110287330B (zh) 2024-01-23
AU2019200085A1 (en) 2019-10-03
CN110287330A (zh) 2019-09-27

Similar Documents

Publication Publication Date Title
DE102018010162A1 (de) Online-Wörterbucherweitern von Wortvektoren
EP3485396B1 (de) Klassifizierung von bildern unter verwendung von maschinenlernmodellen
US10255129B2 (en) Fault diagnosis method and apparatus for big-data network system
DE102016013487A1 (de) Semantischer Vektorraum mit natürlicher Sprache
DE102017125256A1 (de) Suche nach einer neuronalen Architektur
DE102019000171A1 (de) Digitalumgebung zur Verortung semantischer Klassen
DE102020001790A1 (de) Auf maschinellem Lernen basierende Text-in-Bild-Einbettungstechniken
DE102019000433A1 (de) Generieren einer themenbasierten Zusammenfassung eines Textinhalts
DE102016011173A1 (de) Erstellen von Zusammenfassungen von Multimediadokumenten
DE102018007055A1 (de) Erzeugen einer zielgerichteten Zusammenfassung eines Textinhalts, die auf ein Zielpublikum-Vokabular abgestimmt ist
CN106446526A (zh) 电子病历实体关系抽取方法及装置
DE112020003311T5 (de) Verarbeitung natürlicher sprache unter verwendung eines ontologiegestützten modells zur begriffseinbettung
DE112016000509T5 (de) Batch-Normalisierungsschichten
DE112019001533T5 (de) Erweiterung von trainingsdaten für die klassifikation von natürlicher sprache
DE112012005998T5 (de) Vorrichtung, Verfahren und Programm zur Wortsinnschätzung
DE112018006345T5 (de) Abrufen von unterstützenden belegen für komplexe antworten
DE102018007165A1 (de) Vorhersage von stilbrüchen innerhalb eines textinhalts
DE112020003909T5 (de) Verfahren zum multimodalen abrufen bzw. wiedergewinnen und clustern unter verwendung einer tiefen cca und aktiver paarweiser abfragen
DE112018005272T5 (de) Suchen von mehrsprachigen dokumenten auf grundlage einer extraktion der dokumentenstruktur
DE112017007530T5 (de) Entitätsmodell-erstellung
DE112020002886T5 (de) Kontextabhängiges data-mining
DE112020005268T5 (de) Automatisches erzeugen von schema-annotationsdateien zum umwandeln von abfragen in natürlicher sprache in eine strukturierte abfragesprache
DE102018008268A1 (de) Automatisches Generieren von Anweisungen aus Tutorials zur Suche und Nutzernavigation
DE102021202469A1 (de) System und verfahren zur generativen textzusammenfassung
DE102022201753A1 (de) Erweiterung Graph- basierter Kennzeichnungsregeln für schwach überwachtesTraining von auf maschinellem Lernen basierender Eigennamenerkennung

Legal Events

Date Code Title Description
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06F0017200000

Ipc: G06F0040000000

R012 Request for examination validly filed
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06F0040000000

Ipc: G06F0016360000