DE112018005894T5 - Maschinenlernen zum integrieren von wissens- und natürlicher sprachverarbeitung - Google Patents

Maschinenlernen zum integrieren von wissens- und natürlicher sprachverarbeitung Download PDF

Info

Publication number
DE112018005894T5
DE112018005894T5 DE112018005894.8T DE112018005894T DE112018005894T5 DE 112018005894 T5 DE112018005894 T5 DE 112018005894T5 DE 112018005894 T DE112018005894 T DE 112018005894T DE 112018005894 T5 DE112018005894 T5 DE 112018005894T5
Authority
DE
Germany
Prior art keywords
data
reliability
relationship
value
entry
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
DE112018005894.8T
Other languages
English (en)
Inventor
David Bacarella
James Barnebee
Nicholas Lawrence
Sumit Patel
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 DE112018005894T5 publication Critical patent/DE112018005894T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • 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
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/226Validation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • G06F40/295Named entity recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/043Distributed expert systems; Blackboards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • 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
    • 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/36Creation of semantic tools, e.g. ontology or thesauri
    • G06F16/367Ontology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9024Graphs; Linked lists
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Probability & Statistics with Applications (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Animal Behavior & Ethology (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Ein System, ein Computerprogrammprodukt und ein Verfahren werden bereitgestellt, um einen Rahmen für eine Datenbeständigkeit auf Grundlage eines Knowledge Graph (KG) zu automatisieren und temporäre Änderungen und Unsicherheiten in dem Knowledge Graph zu lösen. Das Verstehen von natürlicher Sprache wird zusammen mit einem oder mehreren Maschinenlernmodellen (MLMs) verwendet, um Daten aus unstrukturierten Informationen zu extrahieren, einschließlich Entitäten und Entitätenbeziehungen. Die extrahierten Daten werden in einen Knowledge Graph aufgefüllt. Da der KG Änderungen unterliegt, wird der KG zum Erstellen von neuen und zum erneuten Schulen von bestehenden Maschinenlernmodellen (MLMs) verwendet. Auf die aufgefüllten Daten wird eine Gewichtung in Form eines Verlässlichkeitswerts angewendet. Blockchain-Technologie wird auf die aufgefüllten Daten angewendet, um die Zuverlässigkeit der Daten sicherzustellen und eine Prüfbarkeit bereitzustellen, um Änderungen an den Daten zu bewerten.

Description

  • HINTERGRUND
  • Die vorliegende Erfindung betrifft ein Verarbeiten von natürlicher Sprache und insbesondere ein Maschinenlernen zum Integrieren von Wissens- und natürlicher Sprachverarbeitung.
  • Auf dem Gebiet von Computersystemen künstlicher Intelligenz verarbeiten natürliche Sprachsysteme (wie z.B. das Computersystem künstlicher Intelligenz Watson™ von IBM und andere Beantwortungssysteme für Fragen in natürlicher Sprache) natürliche Sprache auf Grundlage von Wissen, das durch das System erworben wurde. Zum Verarbeiten von natürlicher Sprache kann das System mit Daten geschult werden, die aus einer Datenbank oder einem Wissenskorpus abgeleitet werden, doch kann das sich daraus ergebende Resultat aus einer Vielfalt von Gründen fehlerhaft oder ungenau sein, die in Zusammenhang mit den Besonderheiten von Sprachkonstrukten und menschlichem Denken oder mit neuen Schulungsdaten stehen, die fehlerhaft sind.
  • Maschinenlernen, das eine Unterkategorie von Artificial Intelligence (AI) (künstlicher Intelligenz) ist, verwendet Algorithmen, um aus Daten zu lernen und auf Grundlage dieser Daten Voraussichten zu erstellen. AI bezieht sich auf die Intelligenz, wenn Maschinen auf Grundlage von Informationen in der Lage sind, Entscheidungen zu treffen, mit denen sich die Erfolgsaussicht in einer bestimmten Thematik maximieren lässt. Insbesondere ist AI in der Lage, aus einem Datenset zu lernen, um Probleme zu lösen und entsprechende Empfehlungen bereitzustellen. AI ist eine Unterkategorie von kognitiver Datenverarbeitung, die sich auf Systeme bezieht, die in großem Umfang lernen, zielgerichtet argumentieren und mit Menschen auf natürliche Weise interagieren. Die kognitive Datenverarbeitung ist eine Mischung aus Computerwissenschaft und Kognitionswissenschaft. Die kognitive Datenverarbeitung verwendet selbstlernende Algorithmen, die Mindestdaten, visuelle Erkennung und natürliche Sprachverarbeitung zum Lösen von Problemen und Optimieren von menschlichen Prozessen verwenden.
  • Kognitive System sind inhärent nicht deterministisch. Insbesondere sind Daten, die von kognitiven Systemen ausgegeben werden, für bereitgestellte und als Eingabe verwendete Informationen anfällig. Wenn zum Beispiel neue Maschinenlernmodelle eingesetzt werden, gibt es keine Garantie, dass das System dieselben Entitäten wie vorher extrahieren wird. Neue Modelle können sich nachteilig auf frühere Modellergebnisse auswirken. Desgleichen kann ein Fehler, der über ein Dokument eingeführt wurde, zu einem Extrahieren von fehlerhaften Daten und einem Bereitstellen der fehlerhaften Daten als Ausgabe führen. Dementsprechend ist ein Bedarf vorhanden, deterministisches Verhalten in dem oder den kognitiven Systemen zu erstellen.
  • KURZDARSTELLUNG DER ERFINDUNG
  • Die Ausführungsformen enthalten ein System, ein Computerprogrammprodukt und ein Verfahren für natürliche Sprachverarbeitung, die auf deterministische Daten für kognitive Systeme ausrichtet ist.
  • In einem Aspekt wird ein System mit einer Verarbeitungseinheit bereitgestellt, die betriebsfähig mit einem Arbeitsspeicher mit einer Artificial-Intelligence-Plattform verbunden ist, die in Datenaustausch mit der Verarbeitungseinheit und dem Arbeitsspeicher steht. Eine Knowledge Engine (Wissensmaschine), die in Datenaustausch mit der Verarbeitungseinheit steht, wird für Manager-Daten bereitgestellt. Insbesondere extrahiert die Knowledge Engine Daten und eine Datenbeziehung aus strukturierten und/oder unstrukturierten Daten. Die Knowledge Engine erstellt einen Eintrag für die extrahierten Daten und die Datenbeziehung in einem Knowledge Graph (Wissensgraph, KG) und speichert selektiv die Daten und die Datenbeziehung in dem Knowledge Graph, einschließlich einer Zuweisung eines Verlässlichkeitswerts zu den gespeicherten Daten. Außerdem wird ein Asset-Werteintrag in ein entsprechendes Blockchain- (BC) Kontenbuch erstellt, das dem Knowledge Graph entspricht oder diesem anderweitig zugehörig ist. Der Asset-Werteintrag enthält den zugewiesenen Verlässlichkeitswert. Eine BC-Kennung wird erstellt, die dem BC-Kontenbucheintrag entspricht, und die BC-Kennung wird mit dem Knowledge-Graph-Eintrag gespeichert. Auf Grundlage des Knowledge-Graph-Eintrags und des entsprechenden BC-Kontenbucheintrags können ausgewählte Daten in dem KG von der Knowledge Engine zum Unterstützen einer Auswertung verwendet werden. Insbesondere unterstützt die Auswertung eine Bestimmung einer Herkunft von ausgewählten Daten und unterstützt außerdem ein Quantifizieren der Daten. Die Knowledge Engine generiert eine Liste von ausgewerteten Daten, die eine Sortierung der Daten in der Liste auf Grundlage des zugewiesenen Verlässlichkeitswerts enthält. Aus der sortierten Liste wird ein Datenelement zurückgegeben, das in einer Ausführungsform das Datenelement mit dem größten Verlässlichkeits-Score von den Datenelementeinträgen in der Liste ist.
  • In einem weiteren Aspekt wird ein Computerprogrammprodukt zum Verarbeiten von natürlicher Sprache bereitgestellt. Das Computerprogrammprodukt enthält eine durch einen Computer lesbare Speichereinheit mit darauf verkörpertem Programmcode, der durch eine Verarbeitungseinheit ausführbar ist. Der Programmcode wird bereitgestellt, um Daten in einem Knowledge Graph zu speichern. Dies umfasst Programmcode zum Extrahieren von Daten und einer Datenbeziehung aus strukturierten und/oder unstrukturierten Daten, Programmcode zum Erstellen eines Eintrags in dem Knowledge Graph, wobei der Eintrag eine selektive Speicherung der extrahierten Daten und der Datenbeziehung und eine Zuweisung eines Verlässlichkeitswerts zu den gespeicherten Daten enthält, Programmcode zum Erstellen eines Asset-Werteintrags in ein BC-Kontenbuch, das dem Knowledge Graph entspricht, wobei der Eintrag den zugewiesenen Verlässlichkeitswert enthält, Programmcode zum Erstellen einer BC-Kennung, die dem BC-Kontenbucheintrag entspricht, und Programmcode zum Speichern der erstellten BC-Kennung mit dem Knowledge-Graph-Eintrag. Außerdem wird der Programmcode zum Unterstützen einer Auswertung von gespeicherten Daten bereitgestellt. Insbesondere wertet der Programmcode ausgewählte Daten aus, die in dem Knowledge Graph gespeichert sind, was ein Verwenden der BC-Kennung durch den Programmcode zum Bestimmen einer Herkunft der ausgewählten Daten und zum Quantifizieren der Daten enthält. Der Programmcode wird außerdem bereitgestellt, um eine Liste von ausgewerteten Daten zu generieren und die Daten in der Liste auf Grundlage eines entsprechenden Verlässlichkeitswerts zu sortieren. Aus der Liste wird ein Resultat in der Form eines Datenelements generiert, das mit einem größten Verlässlichkeits-Score in der sortierten Liste dargestellt wird.
  • In noch einem weiteren Aspekt wird ein durch einen Computer umgesetztes Verfahren zum Verarbeiten von natürlicher Sprache bereitgestellt. Das Verfahren enthält ein Speichern von Daten in einem Knowledge Graph, ein Auswerten der gespeicherten Daten, ein Identifizieren eines Datenelements in den ausgewerteten Daten. Das Speichern der Daten enthält: ein Extrahieren von Daten und einer Datenbeziehung aus strukturierten und/oder unstrukturierten Daten, ein Erstellen eines Eintrags in dem Knowledge Graph und ein selektives Speichern der extrahierten Daten und der Datenbeziehung in dem Graph, ein Zuweisen eines Verlässlichkeitswerts zu den gespeicherten Daten, ein Erstellen eines Asset-Werteintrags in einem entsprechenden BC-Kontenbuch, ein Erstellen einer BC-Kennung, und ein Speichern der BC-Kennung mit dem Knowledge-Graph-Eintrag. Die Auswertung der gespeicherten Daten enthält ein Verwenden der BC-Kennung zum Bestimmen einer Herkunft der ausgewählten Daten und auch zum Quantifizieren der Daten. Auf Grundlage der Auswertung wird eine Liste generiert und auf Grundlage des zugewiesenen Verlässlichkeitswerts bzw. der zugewiesenen Verlässlichkeitswerte sortiert. Ein Datenelement mit einem größten identifizierten Verlässlichkeitswert wird aus der Liste zurückgegeben.
  • Diese und weitere Merkmale und Vorteile werden aus der folgenden ausführlichen Beschreibung der derzeit bevorzugten Ausführungsform(en) in Verbindung mit den begleitenden Zeichnungen offenkundig.
  • Figurenliste
  • In den Zeichnungen gezeigte Funktionen dienen nur zur Veranschaulichung einiger Ausführungsformen und nicht aller Ausführungsformen, sofern nicht explizit anders angegeben.
    • 1 stellt eine Systemabbildung dar, die eine schematische Darstellung eines Systems zur Verarbeitung von natürlicher Sprache veranschaulicht.
    • 2 stellt ein Blockschaubild dar und stellt ein Blockschaubild bereit, das die in 1 gezeigten Werkzeuge zur NL-Verarbeitung und ihre zugehörigen APIs veranschaulicht.
    • 3 stellt einen Ablaufplan dar, der einen Prozess zum Auffüllen eines Knowledge Graph (KG) aus einer Ausgabe von natürlicher Sprache (NL) eines Systems für Natural Language Processing (NLP) (Verarbeitung von natürlicher Sprache) veranschaulicht.
    • 4 stellt einen Ablaufplan dar, der einen Prozess zum Erstellen eines neuen Triplets aus extrahierten Daten veranschaulicht.
    • 5A und 5B stellen einen Ablaufplan dar, der einen Prozess zum Extrahieren von Triplets aus einer NLP-Ausgabe veranschaulicht.
    • 6 stellt einen Ablaufplan dar, der einen Prozess zum Partitionieren eines KG veranschaulicht.
    • 7 stellt einen Ablaufplan dar, der einen Prozess zum Verknüpfen von zwei KGs veranschaulicht.
    • 8A und 8B stellen einen Ablaufplan dar, der einen Prozess zur Nutzung eines Maschinenlernmodells (MLM) zum Erweitern der Abfrageeingabe veranschaulicht.
    • 9 stellt einen Ablaufplan dar, der einen Prozess zum Schulen eines vorhandenen MLM veranschaulicht.
    • 10 stellt einen Ablaufplan dar, der einen Prozess für eine progressive und adaptive MLM-Konfiguration veranschaulicht.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Es ist problemlos zu verstehen, dass die Komponenten der vorliegenden Ausführungsformen, wie allgemein beschrieben und in den Figuren hierin veranschaulicht, in einer großen Vielfalt von verschiedenen Konfigurationen angeordnet und ausgelegt werden können. Somit ist keinesfalls beabsichtigt, durch die folgende Detailbeschreibung der Ausführungsformen der Vorrichtung, des Systems, des Verfahren und des Computerprogrammprodukts der vorliegenden Ausführungsformen, wie in den Figuren dargestellt, den beanspruchten Schutzumfang der Ausführungsformen einzuschränken, sondern sie ist nur zur Veranschaulichung von ausgewählten Ausführungsformen bestimmt.
  • Die in dieser Patentschrift durchgehende Bezugnahme auf „eine ausgewählte Ausführungsform“, „eine Ausführungsform“ oder „irgendeine Ausführungsform“ bedeutet, dass eine bestimmte Funktion, eine Struktur oder ein Merkmal, die in Verbindung mit der Ausführungsform beschrieben werden, in mindestens einer der Ausführungsformen enthalten sind. Somit verweist ein durchgängiges Auftreten der Ausdrücke „eine ausgewählte Ausführungsform“, „in einer Ausführungsform“ oder „in irgendeiner Ausführungsform an verschiedenen Stellen in der gesamten Patentschrift nicht notwendigerweise auf dieselbe Ausführungsform.
  • Die veranschaulichten Ausführungsformen sind am besten unter Bezugnahme auf die Zeichnungen zu verstehen, in denen gleiche Teile durchgehend mit gleichen Bezugszeichen angegeben werden. Die folgende Beschreibung dient nur zu Beispielzwecken und veranschaulicht nur bestimmte ausgewählte Ausführungsformen von Einheiten, Systemen und Prozessen, die mit den hierin beanspruchten Ausführungsformen übereinstimmen.
  • Ontologie funktioniert wie ein struktureller Rahmen, um Informationen und Konzepte zu organisieren. Natural Language Understanding (NLU) (Verstehen von natürlicher Sprache) ist eine Unterkategorie von Natural Language Processing (NLP). NLU verwendet Algorithmen zum Umwandeln von Sprache in eine strukturierte Ontologie. In einer Ausführungsform wird die Ontologie aus der Taxonomie einer NLU-Ausgabe konstruiert. NLU stellt die Definitionen bereit, die erforderlich sind, um die Ontologie im Hinblick auf Klassen, untergeordnete Klassen, Domäne, Bereich, Dateneigenschaften und Objekteigenschaften zu konstruieren. Ontologie-Einzelelemente werden Objekten zugeordnet. Eine Verarbeitung von denselben oder ähnlichen Dokumenten stellt die Daten bereit, die zum Aufbauen der Ontologie erforderlich sind, auf die auch als die erste Ontologie verwiesen wird. Die Ontologie wird durch das Maschinenlernmodell (MLM) definiert, das durch einen Knowledge-Graph- (KG) Manager auf einen Datenspeicher angewendet wird; die Ontologie wird unter Verwendung der Ausgabe eines zugehörigen NLP-Dienstes konstruiert. Insbesondere wird die Ontologie mit Fakten oder Nennungen generiert, die das MLM generiert hat. Die Fakten oder Nennungen machen die Einzelelemente der Ontologie aus. In einer Ausführungsform liegt die Ontologie in der Form eines KG vor, wobei die Fakten oder Nennungen in dem Graph als Knoten dargestellt werden. Die Struktur des KG kann konstant gehalten werden, wobei Informationen hinzugefügt oder entfernt werden dürfen. Desgleichen kann die Ontologie verwendet werden, um neue MLMs zu erstellen und vorhandene MLMS erneut zu schulen. Wenn der KG in einer Ausführungsform modifiziert wird, werden neue Entitäten und Beziehungen verwirklicht und verwendet, um ein Schulen des MLM zu automatisieren; das MLM wird dynamisch und progressiv. Dementsprechend stehen die Ontologie, wie durch den KG dargestellt, und das MLM in Wechselbeziehung zueinander.
  • Unter Bezugnahme auf 1 wird eine schematische Abbildung eines Systems zur Verarbeitung von natürlicher Sprache (100) dargestellt. Wie gezeigt, wird ein Server (110) bereitgestellt, der über eine Netzwerkverbindung (105) mit einer Mehrzahl von Datenverarbeitungseinheiten (180), (182), (184), (186) und (188) in Datenaustausch steht. Der Server (110) ist mit einer Verarbeitungseinheit (112) konfiguriert, die über einen Bus (116) betriebsfähig mit einem Arbeitsspeicher (114) verbunden ist. Ein Werkzeug in der Form einer Knowledge Engine (170) wird lokal zu dem Server (110) und betriebsfähig mit der Verarbeitungseinheit (112) und/oder dem Arbeitsspeicher (114) verbunden gezeigt. Wie gezeigt, enthält die Knowledge Engine (170) ein oder mehrere Werkzeuge (172) bis (178). Die Werkzeuge (172) bis (178) stellen eine Verarbeitung natürlicher Sprache über das Netzwerk (105) von einer oder mehreren Datenverarbeitungseinheiten (180), (182), (184), (186) und (188) bereit. Insbesondere tauschen die Datenverarbeitungseinheiten (180), (182), (184), (186) und (188) untereinander und mit anderen Einheiten oder Komponenten über eine oder mehrere Leitungen und/oder drahtlose Datenübertragungsverbindungen Daten aus, wobei jede Datenübertragungsverbindung Leitungen, Router, Switches, Sender, Empfänger oder dergleichen aufweisen kann. In dieser vernetzten Anordnung können der Server (110) und die Netzwerkverbindung (105) die Verarbeitung von natürlicher Sprache und eine Auflösung für einen oder mehrere Inhalt-Nutzer ermöglichen. Andere Ausführungsformen des Servers (110) können mit Komponenten, Systemen, untergeordneten Systemen und/oder anderen Einheiten als den hierin dargestellten verwendet werden.
  • Die Werkzeuge, einschließlich der Knowledge Engine (170), oder in einer Ausführungsform der darin eingebetteten Werkzeuge, einschließlich des KG-Managers (172), des Genauigkeitsmanagers (174), des BC-Managers (176) und des MLM-Managers (178), können konfiguriert sein, um eine Eingabe von verschiedenen Quellen zu empfangen, darunter eine Eingabe von dem Netzwerk (105), einem oder mehreren Knowledge Graphs aus einem Knoten-Graph-Datenspeicher (160), der über eine Schnittstelle (166) betriebsfähig mit einem Korpus von strukturierten Daten (168) verbunden ist, einem BC-Netzwerk (150) und einer Bibliothek von einem oder mehreren Maschinenlernmodellen (MLMs) (140), sie sind aber nicht darauf beschränkt. Wie gezeigt, funktioniert der Knoten-Graph-Datenspeicher (160) wie eine Bibliothek (162) von Knowledge Graphs mit einer Mehrzahl von KGs, einschließlich KGo (164A), KG1 (164B) und KGN (164N). Die hierin gezeigte Menge von KGs sollte nicht als einschränkend aufgefasst werden. Jeder KG ist eine Darstellung einer Ontologie von Konzepten. Insbesondere enthält jeder KG (164A), (164B) und (164N) eine Mehrzahl von zugehörigen Subjekten und Objekten. In einer Ausführungsform werden in Zusammenhang stehende KGs in einem zugehörigen KG-Container gespeichert, wobei der Korpus (160) einen oder mehrere KG-Container speichert. In einer Ausführungsform können KGs auch aus anderen Quellen übernommen werden, und daher sollte der dargestellte Datenspeicher nicht als einschränkend aufgefasst werden.
  • Die verschiedenen Datenverarbeitungseinheiten (180), (182), (184), (186) und (188), die in Datenaustausch mit dem Netzwerk (105) stehen, zeigen Zugangspunkte für Inhalts-Ersteller und Inhalts-Verwendungen auf. Einige der Datenverarbeitungseinheiten können Einheiten für eine Datenbank, die den Datenkorpus als Bestand von Informationen speichert, die von der Knowledge Engine (170) verwendet werden, und in einer Ausführungsform die Werkzeuge (172) bis (178) zum Einbetten von deterministischem Verhalten in das System enthalten. Das Netzwerk (105) kann lokale Netzwerkverbindungen und entfernt angeordnete Verbindungen in verschiedenen Ausführungsformen enthalten, sodass die Knowledge Engine (170) und die eingebetteten Werkzeuge (172) bis (178) in Umgebungen jeder Größe arbeiten können, einschließlich lokal und global, z.B. das Internet. Außerdem dienen der Server (110) und die Knowledge Engine (170) als ein Front-End-System, das eine Vielfalt von Wissen zur Verfügung stellen kann, das aus Dokumenten, aus über ein Netzwerk zugänglichen Quellen und/oder aus strukturierten Datenquellen extrahiert oder darin dargestellt wird. Auf diese Weise füllen einige Prozesse den Server (110) auf, wobei der Server (110) auch Eingabeschnittstellen enthält, um Anforderungen zu erhalten und entsprechend zu reagieren. Inhalts-Ersteller und Inhalts-Nutzer können auch in Daten-Repositories verfügbar sein, wie zum Beispiel (140) und (160), jedoch nicht darauf beschränkt, und die Liste von hier aufgezeigten Zugangspunkten sollte nicht als einschränkend aufgefasst werden.
  • Wie gezeigt, ist der Knoten-Graph-Datenspeicher (160) betriebsfähig mit dem Server (110) verbunden. Der Knoten-Graph-Datenspeicher (160) enthält eine KG-Bibliothek (162) mit einem oder mehreren KGs (164A) bis (164N) zur Verwendung durch den Server (110). Inhalts-Nutzer können auf das System über API-Verwaltungs- oder Orchestrierungs-Plattformen, wie in 2 gezeigt und beschrieben, und Eingaben in natürlicher Sprache zugreifen, die über den NLU-Eingabepfad empfangen werden.
  • Wie im Folgenden ausführlicher beschrieben, verarbeiten der Server (110) und die Knowledge Engine (170) Abfragen in natürlicher Sprache unter Verwendung von einem oder mehreren Maschinenlernmodellen, hierin im Folgenden als MLMs bezeichnet, um Inhalt aus einem oder mehreren KGs zu extrahieren oder in diesen zu speichern, die in dem Knoten-Graph-Datenspeicher (160) gespeichert sind. Die Blockchain-Technologie, hierin im Folgenden als „BC“ bezeichnet, wird in dem Inhalt genutzt, um Authentizität, z.B. eine Herkunft von gespeicherten oder empfangenen Daten, effektiv bereitzustellen. Der MLM-Manager (178) funktioniert wie ein Werkzeug oder in einer Ausführungsform wie eine API in der Knowledge Engine (170) und wird verwendet, um ein zugehöriges MLM zu erstellen, zu verknüpfen und/oder zu modifizieren. Wie ferner im Folgenden beschrieben wird, werden MLMs spezifisch für eine bestimmte Wissensdomäne generiert, erstellt oder modifiziert. Die MLMs werden erstellt, um Entitäten und Beziehungen aus unstrukturierten Daten zu extrahieren. Diese Modelle werden insbesondere erstellt, um eine bestimmte Wissensdomäne (z.B. biografische Informationen, Aktienmarkt, Astronomie usw.) zu verstehen.
  • Die BC wird hierin als das BC-Netzwerk (150) in der Form eines dezentralen und verteilten digitalen Kontenbuchs zum Aufzeichnen des Verlaufs von Transaktionen dargestellt. Insbesondere betrifft die BC einen Typ von Datenstruktur, der ein digitales Identifizieren und Verfolgen von Transaktion und eine gemeinsame Nutzung dieser Informationen über ein verteiltes Netzwerk von Computern übergreifend ermöglicht. Die BC erstellt praktisch ein verteiltes Vertrauensnetzwerk über ein transparentes und sicheres Verfolgen der Beteiligten. Wie hierin gezeigt und beschrieben, wird die BC zusammen mit dem MLM-Manager (178), dem Genauigkeitsmanager (174) und dem KG-Manager (172) verwendet, um Wissen in natürliche Sprachverarbeitung zu integrieren.
  • Der Server (110) kann das System Watson™ von IBM sein, erhältlich von der International Business Machines Corporation of Armonk, New York, das um die Mechanismen der im Folgenden beschriebenen veranschaulichten Ausführungsformen erweitert wurde. Der Knowledge Manager von Watson™ von IBM importiert Wissen in die Verarbeitung von natürlicher Sprache (NLP). Insbesondere, wie im Folgenden ausführlich beschrieben, können Daten, wenn sie empfangen, organisiert und/oder gespeichert werden, wahr oder falsch sein. Der Server (110) alleine kann keine Unterscheidung vornehmen oder konkreter ausgedrückt die Verlässlichkeit der Daten authentifizieren. Wie hierin gezeigt, empfängt der Server (110) Eingabe-Inhalt (102), den er anschließend auswertet, um Merkmale des Inhalts (102) zu extrahieren, die anschließend wiederum auf den Knoten-Graph-Datenspeicher (160) anwendet werden. Insbesondere kann der empfangene Inhalt (102) durch den Watson™-Server (110) von IBM verarbeitet werden, der eine Analyse ausführt, um die Authentizität des Eingabe-Inhalts (102) unter Verwendung von einem der mehreren Schlussfolgerungsalgorithmen auszuwerten oder zu übermitteln.
  • Zum Verarbeiten von natürlicher Sprache verwendet der Server (110) ein System zum Bearbeiten von Informationen in der Form der Knowledge Engine (170) und die zugehörigen Werkzeuge (172) bis (178), um NLP zu unterstützen. Obwohl das System zum Bearbeiten von Informationen als in dem Server (110) verkörpert oder in diesen integriert gezeigt wird, kann es in einem separaten Datenverarbeitungssystem (z.B. 190) umgesetzt werden, das über das Netzwerk (105) mit dem Server (110) verbunden ist. Unabhängig davon, wo es verkörpert ist, werden ein oder mehrere MLMs verwendet, um Daten zu verwalten und zu verarbeiten, und insbesondere, um natürliche Sprache zu erfassen und zu identifizieren und eine deterministische Ausgabe zu erstellen oder zu nutzen. Wie gezeigt, enthalten die Werkzeuge den KG-Manager (172), den Genauigkeitsmanager (174), einen BC-Manager (176) und den MLM-Manager (178). Der MLM-Manager (178) wird betriebsfähig mit einer MLM-Bibliothek (140) verbunden gezeigt, die hierin mit einer Mehrzahl von MLMs gezeigt wird, einschließlich MLM0, (142), MLM1 (144) und MLMN (146), obwohl die Menge der gezeigten und beschriebenen MLMs nicht als einschränkend aufgefasst werden sollte. Es versteht sich, dass in einer Ausführungsform das MLM ein Algorithmus ist, der zum Unterstützen des NLP verwendet oder angepasst wird. Obwohl die Werkzeuge (170) bis (178) lokal für den Server (110) gezeigt werden, können sie insgesamt oder einzeln im Arbeitsspeicher (114) eingebettet sein.
  • Ein oder mehrere MLMs (142) bis (146) arbeiten, um Daten zu verwalten, einschließlich um Daten in einem KG zu speichern. Wie verstanden wird, ist ein KG eine strukturierte Ontologie und dient nicht nur einfach zum Speichern von Daten. Insbesondere extrahiert die Knowledge Engine (170) Daten und eine oder mehrere Datenbeziehungen aus unstrukturierten Daten, erstellt einen Eintrag für die extrahierten Daten und die Datenbeziehung(en) in einem KG, und speichert die Daten und die Datenbeziehung(en) in dem KG-Eintrag. In einer Ausführungsform werden die Daten in dem KG in einem Knoten gespeichert oder dargestellt, und eine Beziehung zwischen zwei Datenelementen wird als eine Kante dargestellt, die zwei Knoten verbindet. Desgleichen hat jeder Knoten in einer Ausführungsform einen Verlässlichkeitswert auf Knotenebene, und jede Beziehung hat einen Beziehungsverlässlichkeitswert, wobei der Beziehungsverlässlichkeitswert auf Grundlage der Verlässlichkeitswerte der beiden miteinander verbundenen Knoten berechnet wird. Zusätzlich zu der Datenextraktion und Speicherung weisen das bzw. die MLMs MLMo (142) außerdem den in dem KG gespeicherten Daten einen Verlässlichkeitswert zu oder geben ihn anderweitig an. In einer Ausführungsform ist der Verlässlichkeitswert ein zusammengesetzter Score aus Beständigkeit, Quellenzuverlässigkeit und menschlichem Feedback, wie im Folgenden ausführlich beschrieben wird. In einer Ausführungsform kann der Verlässlichkeitswert weitere Faktoren oder eine untergeordnete Gruppe der Faktoren enthalten und sollte somit nicht als einschränkend aufgefasst werden. Der zugewiesene Verlässlichkeitswert wird in dem KG gespeichert. Der zugewiesene Verlässlichkeitswert wird auch in einem Eintrag in dem identifizierten BC-Kontenbuch gespeichert. Jeder Eintrag in das BC-Kontenbuch hat eine entsprechende Kennung, die hierin als eine BC-Kennung bezeichnet wird, die das Kontenbuch und die Adresse des Kontenbucheintrags identifiziert. Die BC-Kennung wird in dem KG mit den identifizierten Daten gespeichert und identifiziert das entsprechende BC-Kontenbuch und den Speicherort des gespeicherten Verlässlichkeitswerts. In einer Ausführungsform verwaltet der KG-Manager (172) die Speicherung der BC-Kennung in dem KG. Dementsprechend wird der zugewiesene oder erstellte Verlässlichkeitswert in der BC gespeichert und ist eine duplizierte Kopie der Verlässlichkeitswerte in dem KG in dem Konten-Graph-Datenspeicher (160).
  • Es versteht sich, dass jeder KG eine Struktur für große Datenmengen organisiert und bereitstellt. Ein KG kann eine einzelne Ontologie sein, oder ein KG oder ein KG-Container kann in einer Ausführungsform aus einer Mehrzahl von KGs bestehen, die miteinander verknüpft sind, um ihre Beziehung oder Zugehörigkeit zu veranschaulichen. Der KG-Manager (172) funktioniert, um die Struktur und Organisation der KGs zu verwalten. Zum Beispiel kann ein großer KG zu umständlich oder zu kostspielig zu verwalten sein. In diesem Szenario kann der KG-Manager (172) den KG partitionieren, indem effektiv mindestens zwei Partitionen erstellt werden, z.B. eine erste KG-Partition und eine zweite KG-Partition. Der KG kann auf Grundlage von einem oder mehreren Faktoren partitioniert werden. Zum Beispiel kann der KG in einer Ausführungsform nach Themen oder Unterthemen partitioniert werden. Desgleichen hat jeder in dem KG dargestellte Sachverhalt einen zugehörigen Verlässlichkeitswert, der sich aus einer Mehrzahl von Faktoren zusammensetzt, einschließlich einem Beständigkeitsindikator, einer Quellenzuverlässigkeitskennzahl und einem menschlichen Feedback-Faktor, er ist aber nicht darauf beschränkt. Der KG-Manager (172) kann den KG auf Grundlage des Verlässlichkeitswerts oder in einer Ausführungsform auf Grundlage von einem oder mehreren der Faktoren partitionieren, die den Verlässlichkeitswert aufweisen. Wenn der KG in einer Ausführungsform in mindestens eine erste und eine zweite Partition partitioniert worden ist, kann der KG-Manager (172) eine oder mehrere der Komponenten des Verlässlichkeitswerts für jeden Knoten oder jede Kante angeben, die in der Partition dargestellt sind. Zum Beispiel kann der KG-Manager (172) nach der KG-Partitionierung einen ersten Zuverlässigkeitswert für Daten in der ersten Partition auffüllen und zuweisen, und in einer Ausführungsform kann der KG-Manager (172) ferner einen zweiten Zuverlässigkeitswert, der sich von dem ersten Zuverlässigkeitswert unterscheidet, für Daten in der zweiten Partition auffüllen und zuweisen. Eine Modifizierung von einer oder mehreren Komponenten des Verlässlichkeitswerts verändert effektiv den Verlässlichkeitswert. Es versteht sich jedoch, dass die Werte der einen oder der mehreren Komponenten des Verlässlichkeitswerts sich im Lauf der Zeit ändern können, und daher wird diese Änderung in den zugehörigen Daten wiedergegeben oder wird in diesen verkörpert. Dementsprechend funktioniert der KG-Manager (172), um Daten zu verwalten und Struktur und Wert für die Daten bereitzustellen.
  • Eine der Funktionen des KG-Managers (172) besteht darin, zwei oder mehr KGs zu verknüpfen oder zusammenzufügen. Ein Zusammenfügen oder Verknüpfen von KGs ist das Gegenteil eines Partitionierens eines KG. Die Funktionalität eines Zusammenfügens oder Verknüpfens von KGs erfordert, dass der KG-Manager (172) ein oder mehrere Datenelemente in einem KG mit einem oder mehreren Datenelementen in einem zweiten KG vergleicht und das Auftreten von doppelten Daten eliminiert oder zumindest reduziert. Wie oben erläutert, weist jedes in dem KG dargestellte Datenelement einen zugehörigen zusammengesetzten Score auf. Der KG-Manager (172) kann eine Komponente, mehrere Komponenten oder den Verlässlichkeitswert selbst als einen Faktor für den Vergleich und die Auswertung der Daten verwenden. Nach dem Zusammenfügen oder Verknüpfen kann es machbar oder gerechtfertigt sein, doppelte Datenelemente zu entfernen. Daten in den verknüpften KGs, die als doppelte Daten bestimmt werden, werden durch den KG-Manager (172) selektiv entfernt. Ein Kennzeichen für ein Entfernen von doppelten Daten ist die Fähigkeit, eine konstante Struktur des KG beizubehalten. Dementsprechend funktioniert der KG-Manager (172), um die Struktur des KG zu verwalten, indem er die in dem KG dargestellten Daten verwaltet.
  • Der BC-Manager (176) hat mehrere Funktionen in Bezug auf die Maschinenlernumgebung. Wie oben beschrieben, kann der BC-Manager (176) zusammen mit dem MLM oder den MLMs arbeiten, um die Authentizität der zugehörigen Daten aufrechtzuerhalten. Der BC-Manager (176) erzeugt Aufträge für BC-Netzwerkinteraktionen, stellt eine Herkunft bereit, ruft BC-Informationen ab und verwaltet alle BC-Interaktionen für das System.
  • Die Auswertung der NL-Eingabe wird durch das MLM MLMo (142) verwaltet. Ein der NL-Eingabe zugehöriger Konflikt oder Fehler wird durch Abfrageergebnisse aus dem KG, die aus der NL-Eingabe generiert wurden, und insbesondere die Sortierung der Abfrageergebnisse identifiziert. Wenn ein Konflikt zwischen den Abfrageergebnissen und der NL-Eingabe besteht, wobei die Abfrageergebnisse einen starken Verlässlichkeitswert haben, ist dies ein Hinweis darauf, dass die NL-Eingabe fehlerhaft sein kann. Der Genauigkeitsmanager (174) korrigiert die NL-Eingabe durch ein Ersetzen der Sprache der NL-Eingabe mit einem identifizierten oder ausgewählten Triplet aus der generierten Liste. Das Triplet, das hierin auch als Speichereinheit bezeichnet wird, beruht auf zwei oder mehreren Knoten in dem KG und einer Beziehung zwischen den zwei oder mehreren Knoten. In einer Ausführungsform ist das Triplet eine Subjekt-Verb-Objekt-Beziehung, wie aus dem KG erfasst. In einer Ausführungsform kann die Identifizierung oder Auswahl auf dem höchsten Verlässlichkeitswert beruhen, der in einer Ausführungsform durch den Benutzer ausgewählt wird. Desgleichen kann die Identifizierung oder Auswahl in einer weiteren Ausführungsform auf einem oder mehreren der Faktoren beruhen, die den zusammengesetzten Verlässlichkeitswert aufweisen. Eine weitere Form eines Konflikts kann auftreten, wenn die Knowledge Engine (150) einen unveränderlichen Faktor identifiziert, der einem Eintrag oder mehreren Einträgen in der Liste zugehörig ist und ferner einen Konflikt zwischen dem unveränderlichen Faktor und der NL-Eingabe identifiziert. Dieser Konflikt wird durch den Genauigkeitsmanager (174) gelöst, der die NL-Eingabe mit einer Ersetzung der Sprache der NL-Eingabe durch das Triplet korrigiert, das dem Eintrag mit dem unveränderlichen Faktor zugehörig ist. Zusätzlich zu einem Konflikt kann eine weitere Lösung darin bestehen, dass der Genauigkeitsmanager (174) eine teilweise Übereinstimmung zwischen der NL-Eingabe mit den Einträgen der sortierten Liste identifiziert. Die teilweise Übereinstimmung befähigt oder weist den KG-Manager (172) und den BC-Manager (176) an, jeweils einen neuen Eintrag in dem KG und einem entsprechenden BC-Kontenbuch für die NL-Eingabe zu erstellen. Außerdem verbindet der KG-Manager (172) den neuen Eintrag und den vorhandenen KG-Eintrag, der der teilweisen Übereinstimmung entspricht. Ferner versteht sich, dass die NL-Eingabe keinerlei Übereinstimmungen generieren kann, z.B. einen leeren Satz. Wenn keine Übereinstimmung vorhanden ist, erstellen der KG-Manager (172) und der BC-Manager (176) jeweils einen neuen KG-Eintrag und BC-Kontenbucheintrag, die der NL-Eingabe entsprechen. Dementsprechend wird die NL-Eingabe durch das MLM MLMo (142) und in einer Ausführungsform durch den Genauigkeitsmanager (174) im Hinblick auf die in dem KG oder den KGs organisierten Daten verarbeitet.
  • Wie hierin gezeigt und beschrieben, ist eine MLM-Bibliothek (140) betriebsfähig mit dem Server (110) verbunden und enthält eine Mehrzahl von MLMs, um die Verarbeitung von natürlicher Sprache in der AI-Plattform zu unterstützen. Ein MLM oder mehrere der MLMs können dynamisch und geschult sein, um sich neuen Einträgen und Beziehungen anzupassen. Verschiedene KGs können verschiedenen Wissensdomänen zugehörig sein. Zum Beispiel kann ein erstes MLM MLMo (142) aus der Bibliothek (140) auf Grundlage seiner Ausrichtung auf KGo (164A) identifiziert oder ausgewählt werden. In Reaktion auf ein Verarbeiten der NL-Eingabe kann das MLMo (142) auf KGo (164A) angewendet werden und separat auf einen zweiten KG, KG1 (164B), angewendet werden. Der MLM-Manager (178) verarbeitet Ergebnisse aus beiden KGs zusammen mit ihren entsprechenden Verlässlichkeitswerten, und auf Grundlage der Verarbeitung wird eine Modifizierung von einem der KGs identifiziert. In einer Ausführungsform werden die Verlässlichkeitswerte ausgewertet, um die Authentizität der Modifizierung zu identifizieren. Gemäß der Authentifizierung modifiziert der MLM-Manager (178) dynamisch das zugehörige MLM, MLMo (142). In einer Ausführungsform kann die identifizierte Modifizierung eine Erweiterung des zugehörigen Datensets sein, um ein zusätzliches Feld aufzunehmen. Desgleichen kann der MLM-Manager (178) in einer Ausführungsform feststellen, ob die Modifizierung synchron oder diachron ist, und diese Klassifizierung als ein Element zum Kontrollieren der Modifizierung verwenden. In einer Ausführungsform führt die Modifizierung des MLM0 (142) zu einer Erstellung eines neuen MLM, z.B. MLMN (146) und in einer Ausführungsform zum Beibehalten des ursprünglichen MLM, MLM0 (142). Dementsprechend kann die MLM-Bibliothek (140) abhängig von der dynamischen Modifizierung der MLMs erweitert werden.
  • Typen von Systemen zur Bearbeitung von Informationen, die das System (110) nutzen können, umfassen kleine Handheld-Einheiten wie einen Handheld-Computer/ein Mobiltelefon (180) bis hin zu Mainframes, wie zum Beispiel einen Mainframe-Computer (182). Zu Beispielen für einen Handheld-Computer (180) zählen PDAs, persönliche Unterhaltungseinheiten wie MP4-Player, tragbare Fernsehgeräte und CD-Player. Zu weiteren Beispielen für Systeme zur Bearbeitung von Informationen gehören Pen- oder Tablet-Computer (184), Laptop- oder Notebook-Computer (186), PC-System (188) und Server (190). Wie gezeigt, können die verschiedenen Systeme zur Bearbeitung von Informationen unter Verwendung des Computernetzwerks (105) vernetzt werden. Zu Typen für ein Computernetzwerk (105), die zum Zusammenschalten der verschiedenen Systeme zur Bearbeitung von Informationen verwendet werden können, gehören lokale Netzwerke (LANs), drahtlose lokale Netzwerke (WLANs), das Internet, das öffentliche Telefonnetz (PSTN) (Public Switched Telephone Network), andere drahtlose Netzwerke und jede andere Netzwerktopologie, die zum Zusammenschalten der Systeme zur Bearbeitung von Informationen verwendet werden kann. Viele der Systeme zur Bearbeitung von Informationen umfassen nicht flüchtige Datenspeicher wie zum Beispiel Festplatten und/oder nicht flüchtigen Arbeitsspeicher. Einige der Systeme zur Bearbeitung von Informationen können separate nicht flüchtige Datenspeicher verwenden (z.B. verwendet der Server (190) einen nicht flüchtigen Datenspeicher (190a), und der Mainframe-Computer (182) verwendet einen nicht flüchtigen Datenspeicher (182a)). Der nicht flüchtige Datenspeicher (182a) kann eine Komponente sein, die sich außerhalb der verschiedenen Systeme zur Bearbeitung von Informationen befindet, oder kann in eines der Systeme zur Bearbeitung von Informationen integriert sein.
  • Ein System zur Bearbeitung von Informationen kann viele Formen annehmen, von denen einige in 1 gezeigt werden. Zum Beispiel kann ein System zur Bearbeitung von Informationen die Form eines Desktops, Servers, Portables, Laptops, Notebooks oder eines Computers einer anderen Bauform oder eines anderen Datenverarbeitungssystems annehmen. Außerdem kann ein System zur Bearbeitung von Informationen weitere Bauformen annehmen wie zum Beispiel ein PDA, eine Spiele-Einheit, ein Bankautomat, eine tragbare Telefoneinheit, eine Datenübertragungseinheit oder andere Einheiten, die einen Prozessor und einen Arbeitsspeicher enthalten.
  • Eine Anwendungsprogrammschnittstelle (API) wird im Stand der Technik als ein Software-Zwischenglied zwischen zwei oder mehreren Anwendungen verstanden. In Bezug auf das in 1 gezeigte und beschriebene NL-Verarbeitungssystem kann eine API bzw. können mehrere APIs verwendet werden, um eines oder mehrere der Werkzeuge (172) bis (178) und deren zugehörige Funktionalität zu unterstützen. Unter Bezugnahme auf 2 wird ein Blockschaubild (200) bereitgestellt, das die Werkzeuge zur NL-Verarbeitung und ihre zugehörigen APIs veranschaulicht. Wie gezeigt, ist eine Mehrzahl von Werkzeugen in einer Knowledge Engine (205) eingebettet, wobei die Werkzeuge den einer APlo (212) zugehörigen Genauigkeitsmanager (210), den einer API1 (222) zugehörigen KG-Manager (220), den einer API2 (232) zugehörigen BC-Manager (230) und den einer API3 (242) zugehörigen MLM-Manager (240) enthalten. Jede der APIs kann in einer oder mehreren Sprachen und Schnittstellen-Spezifikationen umgesetzt werden. Die APlo (212) sorgt für Asset-Vergleich, Verlässlichkeitsbestimmung, Verlässlichkeitsentscheidung und Verlässlichkeitszuweisungen; die API1 (222) sorgt für KG-Erstellung, -Aktualisierung und -Löschung; die API2 (232) sorgt für MLM-Erstellung, -Aktualisierung und -Löschung; und die API3 (242) sorgt für BC-Auftragserstellung, Block-Erstellung, Netzwerkdatenübertragung und Block-Hinzufügung. Wie gezeigt, ist jede der APIs (212), (222), (232) und (242) betriebsfähig mit einem API-Orchestrator (250) verbunden, der ansonsten als eine Orchestrierungsschicht bekannt ist, was im Stand der Technik so verstanden wird, dass sie wie eine Abstraktionsschicht funktioniert, um die separaten APIS transparent zu vereinen. In einer Ausführungsform kann die Funktionalität der separaten APIs zusammengefügt oder kombiniert werden. Daher sollte die Konfiguration der hierin gezeigten APIs nicht als einschränkend aufgefasst werden. Dementsprechend, wie hierin gezeigt, kann die Funktionalität der Werkzeuge durch ihre jeweiligen APIs verkörpert oder unterstützt werden.
  • Zum Bereitstellen zusätzlicher Details für ein besseres Verständnis von ausgewählten Ausführungsformen der vorliegenden Offenbarung wird im Folgenden auf 3 Bezug genommen, die einen Prozess in einer Form zum Initialisieren eines KG veranschaulicht. Beim Initialisieren eines Systems ist der KG leer. Die MLMs werden erstellt oder verwendet, um Entitäten und Beziehungen aus unstrukturierten Daten zu extrahieren. Die MLMs werden erstellt, um eine bestimmte Wissensdomäne zu verstehen, d.h. biografische Informationen, Finanzmarkt, Wissenschaftsgebiete usw. Repräsentative Daten werden verwendet, um das System zu lehren, den Text der in dem Modell definierten Entitäten und Beziehungen zu identifizieren. Unter Bezugnahme auf 3 wird ein Ablaufplan (300) bereitgestellt, der einen Prozess zum Auffüllen eines KG aus einer Ausgabe von natürlicher Sprache eines NLP-Systems veranschaulicht. Als Teil des KG-Initialisierungs- und -Auffüllungsprozesses werden Verlässlichkeitswerte für die extrahierten Triplets angegeben. Der Verlässlichkeitswert besteht aus einem Beständigkeitsindikator, einem Quellenzuverlässigkeitsindikator und einem menschlichen Feedback-Indikator. In einer Ausführungsform ist jeder der Indikatoren, die den Verlässlichkeitswert aufweisen, ein numerischer Wert auf einer Skala zwischen 0 und 1. Der Beständigkeitsindikator gibt die Sicherheit eines zugrunde liegenden Sachverhalts wieder. In einer Ausführungsform gibt ein Beständigkeitswert von 1 wieder, dass der Sachverhalt definitiv wahr ist, ein Wert von 0 gibt an, dass der Sachverhalt definitiv falsch ist, und ein Wert zwischen 0 und 1 gibt einen Grad der Sicherheit oder Unsicherheit in Bezug auf den Sachverhalt an. Der Quellenzuverlässigkeitsfaktor ist der Quelle zugehörig, z.B. dem Ursprung des Sachverhalts, einschließlich Daten und ein Zeitpunkt, zu dem ein Sachverhalt festgestellt wurde, er ist aber nicht darauf beschränkt. Der menschliche Feedback-Indikator verfolgt die Menge von Zustimmungen und Zurückweisungen eines Sachverhalts. In einer Ausführungsform verfolgt dieser Faktor die Menge von Antworten. Wenn der KG initialisiert und mit Daten aufgefüllt wird, werden die Komponenten des Verlässlichkeitswerts dementsprechend ausgewählt oder so eingerichtet, dass sie den Triplets zugewiesen werden, die über das NLP-System extrahiert werden.
  • Eine Klassifizierung zum Beispiel als synchrone oder diachrone Informationen wird verwendet, um Daten zu beschreiben, die jeweils entweder konstant bleiben oder sich im Lauf der Zeit ändern. In dem Fall eines Beispiels von überwachter Schulung wird der Beständigkeitswert auf 1 gesetzt, der Quellenzuverlässigkeitswert wird auf 1 gesetzt, und das menschliche Feedback wird auf 0 gesetzt. Diese Werte dienen nur als Beispiel und können in einer Ausführungsform abweichen. In einer Ausführungsform stellt eine Anwendungsprogrammschnittstelle (API) eines KG eine Plattform zum Angeben der Verlässlichkeitswerte bereit. Wie gezeigt, wird ein MLM durch Definieren von Entitäten und Beziehungen erstellt (302). Das MLM wird unter Verwendung von repräsentativen Daten geschult (304). Nach dem Schritt (304) wird das MLM in NLP zum Extrahieren von Triplets aus den Schulungsdaten verwendet (306). Das extrahierte Triplet kann in einer Datei gespeichert oder gestreamt werden. In einer Ausführungsform ist das extrahierte Triplet eine Subjekt-Verb-Objekt-Beziehung. Nach dem Schritt (306) werden die extrahierten Triplets verwendet, um den KG aufzufüllen (308). In einer Ausführungsform wird die KG-API verwendet, um die Triplets aus der NLU-Ausgabe zu lesen und zu analysieren. In einer Ausführungsform werden die Triplets, die in den KG aufgefüllt werden, als Speichereinheiten bezeichnet. Das MLM wird durch Schulung erstellt, danach wird das MLM auf Daten angewendet, um den KG aufzufüllen. Dementsprechend extrahiert das MLM zusammen mit der NLP Triplets aus Daten und füllt einen vorher leeren KG auf.
  • Für jede aus der NLP-Ausgabe extrahierte Subjekt-Entität (310) wird bestimmt, ob die Subjekt-Entität in dem zugehörigen KG vorhanden ist (312). Auf eine positive Antwort auf die Bestimmung in dem Schritt (312) folgt ein Bestimmen, ob eine bekannte Beziehung vorhanden ist, die der extrahierten Subjekt-Entität zugehörig ist (314). Wenn die Antwort auf die Bestimmung im Schritt (314) bejahend ist, wird anschließend bestimmt, ob die Subjekt-Entität zusammen mit der zugehörigen Beziehung und dem zugewiesenen Verlässlichkeitswert in dem KG dargestellt wird (316). Eine positive Antwort auf die Bestimmung im Schritt (316) ist eine Angabe, dass die Subjekt-Entität-Beziehung in dem KG vorhanden ist, und der Prozess wird abgeschlossen. Auf eine negative Antwort auf eine der Bestimmungen, die in den Schritten (312), (314) und (316) gezeigt werden, erfolgt jedoch die Erstellung eines neuen Triplets und eines Eintrags des neuen Triplets in den KG (318). Wie gezeigt, wird das MLM dementsprechend verwendet, um Daten aus einem NLP-Dokument zu extrahieren und auf den KG-Manager zuzugreifen, um den KG selektiv mit den extrahierten Daten aufzufüllen.
  • Unter Bezugnahme auf 4 wird ein Ablaufplan (400) bereitgestellt, der einen Prozess zum Erstellen eines neuen Triplets aus den extrahierten Daten veranschaulicht. Wie in 3 beschrieben, werden die Verlässlichkeitswertkomponenten der extrahierten Daten erstellt oder zugewiesen. In einer Ausführungsform werden die Verlässlichkeitswertkomponenten auf Grundlage der Überwachung erstellt, die der KG-Initialisierung zugehörig ist. Für jedes neue Triplet, z.B. Subjekt-Verb-Objekt-Beziehung, werden die Verlässlichkeitswerte dem Triplet zugewiesen (402). In einer Ausführungsform werden die Verlässlichkeitswerte über die KG-API zugewiesen. Nach dem Schritt (402) wird ein Eintrag in einem entsprechenden oder angegebenen BC-Kontenbuch erstellt (404). Insbesondere speichert der BC-Eintrag im Schritt (404) die Verlässlichkeitswerte des Triplets, und eine Kennung, auf die hierin als eine BC-Kennung verwiesen wird, wird erstellt und danach abgerufen. In einer Ausführungsform ist die abgerufene BC-Kennung ein Uniform Resource Identifier (URI) oder eine andere eindeutige Asset-Kennung. Nach dem Schritt (404) wird das neue Triplet zusammen mit der zugehörigen BC-Kennung in den KG eingefügt (406). In einer Ausführungsform setzt die KG-API die Einfügung des Triplets und der zugehörigen BC-Kennung in Schritt (406) um. Dementsprechend, wie gezeigt, werden die Verlässlichkeitswerte jedes neuen Triplets in einem entsprechenden BC-Kontenbuch gespeichert, und eine zugehörige BC-Kennung wird mit dem Triplet in dem KG-Eintrag gespeichert oder diesem anderweitig zugeordnet.
  • Die in 3 und 4 gezeigten und beschriebenen Prozesse können auch verwendet werden, um einen KG aus einer Ausgabe natürlicher Sprache eines NLP-Systems unter Verwendung einer nicht überwachten Schulung, z.B. können die Daten unzuverlässig sein, oder unter Verwendung einer überwachten Schulung aufzufüllen. Wie in 3 und 4 gezeigt und beschrieben, wird die KG-API verwendet, um die Verlässlichkeitswerte für die Daten einzurichten, die aus der NLP-Ausgabe extrahiert werden. Abhängig von der Quelle können die Verlässlichkeitswerte zum Angeben von Unsicherheit eingerichtet werden. Zum Beispiel kann in einer Ausführungsform der Beständigkeitsindikator auf 0,5 gesetzt werden, die Quellenzuverlässigkeit kann auf 0,5 gesetzt werden, und der menschliche Feedback-Wert kann auf 0 gesetzt werden. Dementsprechend kann die nicht überwachte Schulung in einem anderen Satz von Verlässlichkeitswerten wiedergegeben werden.
  • Im Verlauf einer Verarbeitung von Nicht-Schulungsdaten wird eine neue Speichereinheit erstellt und in dem entsprechenden oder identifizierten KG gespeichert, wenn keine exakte Triplet-Übereinstimmung gefunden wird. Dies kann umgesetzt werden, wenn die Verarbeitung von mehreren Dokumenten auf demselben Subjekt berücksichtigt wird. Zum Beispiel kann ein Dokument einen Sachverhalt mit einem ersten Datum identifizieren, und ein zweites Dokument kann denselben Sachverhalt mit einem zweiten Datum identifizieren. Jedoch ist nur eine der Datumsangaben sachlich richtig. Wie in 3 und 4 gezeigt, hat jedes Triplet, das in den KG eingegeben wird, einen entsprechenden Verlässlichkeitswert, der als Indikator für Richtigkeit der gespeicherten Speichereinheit fungiert. Diese Verlässlichkeits-Scores können verwendet werden, um eine Genauigkeit und/oder Richtigkeit von widersprüchlichen Sachverhalten zu erstellen, die in den KG aufgefüllt werden.
  • Unter Bezugnahme auf 5A und 5B wird ein Ablaufplan (500) bereitgestellt, der einen Prozess zum Extrahieren von Triplets aus der NLP-Ausgabe veranschaulicht. Wie gezeigt, wird dem KG durch den Genauigkeitsmanager eine Abfrage oder Anweisung übergeben (502). Die Übergabe kann aus einer Vielfalt von Gründen erfolgen, einschließlich einer Sachverhaltsüberprüfung, sie ist aber nicht darauf beschränkt. Das MLM wird zusammen mit NLP verwendet, um Triplets aus dem KG zu extrahieren (504), und die KG-API wird verwendet, um Triplets aus der NLP-Ausgabe zu lesen und zu analysieren (506). Die folgende Tabelle veranschaulicht ein Beispiel-Triplet: Tabelle 1
    Subjekt-Entität Beziehung Subjekt-Entität-Wert
    George Washington Geboren am 22. Februar 1832
  • Nach dem Schritt (506) wird die Variable XTotal der Menge von analysierten Triplets zugewiesen (508). Anschließend wird bestimmt, ob XTotal größer als Null ist (510). Eine negative Antwort auf die Bestimmung in Schritt (510) schließt den Extraktionsprozess ab (512), da dies eine Angabe dafür darstellt, dass die Abfrage einen leeren Satz ergeben hat. Auf eine positive Antwort auf die Bestimmung in Schritt (510) folgt jedoch ein Verarbeiten des bzw. der analysierten Triplets (514). Die Triplet-Zählvariable wird auf eins gesetzt (516), und für jedes Triplet wird der KG abgefragt, alle Triplets mit derselben Subjekt-Entität und Beziehung abzurufen (518). Wie in 3 und 4 gezeigt und beschrieben hat jedes Triplet eine zugehörige BC-Kennung. Die BC-Kennung wird verwendet, um auf das entsprechende BC-Kontenbuch zuzugreifen und den gespeicherten Triplet-Verlässlichkeitswert abzurufen (520). Nach dem Schritt (520) wird die Triplet-Zählvariable erhöht (522). Anschließend wird bestimmt, ob jedes der identifizierten Triplets verarbeitet worden ist (527). Auf eine negative Antwort auf die Bestimmung in Schritt (522) folgt eine Rückkehr zum Schritt (518). Desgleichen schließt eine positive Antwort auf die Bestimmung den Prozess eines Abfragens des KG und der entsprechenden BC-Kontenbucheinträge ab (526), und die extrahierten und verarbeiteten Triplets werden einer Sortierung unterzogen (528). Die Sortierung bei (528) erfolgt, um die Triplets in eine Reihenfolge zu stellen. Die Triplets können zum Beispiel in einer Ausführungsform nach Beständigkeitsindikator, Quellenzuverlässigkeit und menschlichem Feedback in aufsteigender Reihenfolge sortiert werden. Desgleichen ist die Sortierreihenfolge benutzerdefinierbar, um bestimmte Anwendungsfälle aufzunehmen. Zum Beispiel kann dem menschlichen Feedback in einer Ausführungsform Priorität eingeräumt werden. Dementsprechend verwendet die Triplet-Extraktion den KG, um das Triplet und die zugehörige BC-Kennung zu erhalten oder zu identifizieren, die zum Erfassen der zugehörigen Verlässlichkeitswerte verwendet wird, die anschließend als Merkmal zum Sortieren der Triplets verwendet werden.
  • Die folgende Tabelle, Tabelle 2, ist eine Erweiterung von Tabelle 1, die eine beispielhafte Sortierung von zwei Triplets zeigt: Tabelle 2
    Subjekt-Entität Beziehung Subjekt-Entität Wert Beständigkeitsindikator Quellenzuverlässigkeitsindikator Menschlicher Feedback-Indikator
    George Washington Geboren am 22. Feb. 1732 1,0 1,0 0
    George Washington Geboren am 22. Feb. 1832 0,5 0,5 0
  • In dem Beispiel von Tabelle 2 sind zwei Triplet-Einträge vorhanden, denen jeweils ein anderer Subjekt-Entität-Wert zugehörig ist. Wie gezeigt, werden die Einträge entweder nach Beständigkeitsindikator oder Quellenzuverlässigkeitsindikator in aufsteigender Reihenfolge sortiert. Der Sortierfaktor sollte nicht als einschränkend aufgefasst werden. In einer Ausführungsform kann die Sortierung umkehrt und in absteigender Reihenfolge erfolgen oder auf einer anderen Komponente des Verlässlichkeitswerts beruhen. Der erste Triplet-Eintrag in diesem Beispiel wird durch die Subjekt-Entität definiert, und für die Beziehung wird angenommen, dass sie den größten Verlässlichkeitswert hat, z.B. den Verlässlichkeits-Score.
  • Der geschäftliche Anwendungsfall bestimmt die Interpretation der Abfrageergebnisse. Wenn zum Beispiel ein Triplet mit einem höheren Konfidenz-Score verwirklicht wird, kann das System so konfiguriert werden, dass es den ursprünglichen Wert des Subjekt-Entität-Werts automatisch durch einen Wert mit einem höheren Verlässlichkeits-Score ersetzt. Ein Beständigkeitsindikator ist eine Wiedergabe der Genauigkeit der zurückgegebenen Informationen. Wie gezeigt, wird nach dem Schritt (528) der geschäftliche Anwendungsfall auf die Suchergebnisse angewendet (530). Auf die Anwendung im Schritt (530) folgt ein Abfragen sowohl des KG als auch der entsprechenden oder identifizierten BC-Kontenbücher (532), die den entsprechenden BC-Kennungen in dem KG zugehörig sind. Die Abfrage im Schritt (532) erhält alle zugehörigen Beziehungen und Subjekt-Entität-Werte. Insbesondere ermöglicht dies eine analytische Prüfung aller Daten für eine Subjekt-Entität. Nach dem Schritt (532) erweitern sich die NLP-Eingabe- oder - Ausgabedaten (534). Zu Beispielen der Erweiterung zählen: Korrektur, Analyse, Erweiterung und Maskierung, sie sind aber nicht darauf beschränkt. Zur Korrektur gehört ein Ersetzen eines Subjekt-Entität-Werts durch Daten aus der Speichereinheit. In einer Ausführungsform erfolgt die Ersetzung lokal, d.h. im Hinblick auf die Abfrage, und wird nicht in dem KG oder der BC wiedergegeben. Eine Analyse enthält ein Hinzufügen einer Liste mit Subjekt-Beziehung-Werten mit Verlässlichkeit. Eine Erweiterung enthält ein Ergänzen von Ergebnissen mit allen bekannten Subjekt-Beziehung-Werten, die den höchsten Konfidenzgrad aufweisen, z.B. ein Wert pro Subjekt-Beziehung-Paar. Eine Maskierung enthält ein Löschen von einem oder mehreren Triplets aus der NLP-Ausgabe. Nach dem Schritt (532) werden die erweiterten Daten zurückgegeben. Dementsprechend sind optional verschiedene Anwendungsfälle verfügbar, um die Interpretation der Suchergebnisse zu steuern, die ebenfalls erweitert werden können, um ein oder mehrere entsprechende Datenelemente aus der NLP-Eingabe zurückzugeben.
  • Wie in 5A und 5B gezeigt und beschrieben, kann eine Abfrage bzw. können mehrere Abfragen in Hinblick auf einen erstellten KG verarbeitet werden. Es versteht sich, dass die KGs wie ein Werkzeug zum Organisieren von Daten fungieren, wobei jedes Triplet in dem dargestellten Graph wiedergegeben wird oder anderweitig den Komponenten des Verlässlichkeits-Scores zugehörig ist, z.B. Beständigkeit, Zuverlässigkeit und Feedback. Es versteht sich, dass eine oder mehrere der Komponenten des Verlässlichkeits-Scores dynamisch sein kann oder können, z.B. unterliegen die Werte im Lauf der Zeit einer Änderung. Diese Änderung kann durch einen ausgewählten KG durchgehend einheitlich sein, wodurch jedes in dem KG dargestellte Triplet betroffen ist, oder die Änderung kann nicht einheitlich sein und ein oder mehrere Triplets in dem KG selektiv betreffen.
  • Unter Bezugnahme auf 6 wird ein Ablaufplan (600) bereitgestellt, der einen Prozess zum Partitionieren von einem oder mehreren KGs veranschaulicht. Das hierin gezeigte Beispiel der Partitionierung beruht auf einer Änderung in einem Zuverlässigkeitsfaktor. Hierbei handelt es sich nur um ein Beispiel, und in einer Ausführungsform kann die Partitionierung auf einer Änderung der Beständigkeits- oder Feedback-Faktoren beruhen. Der Zuverlässigkeitsfaktor gibt eine Messung der Zuverlässigkeit der Quelle der Daten wieder. Ein Wert für einen Zuverlässigkeitsfaktor wird empfangen (602). In einer Ausführungsform ist der Wert für den Zuverlässigkeitsfaktor Teil der NL-Eingabe und des Feedbacks durch die KG-API. Der KG wird abgefragt, um Entitäten zu identifizieren, die dem empfangenen Zuverlässigkeitswert zugehörig sind (604). Anschließend wird bestimmt, ob irgendwelchen KG-Einträge identifiziert worden sind (606). Eine negative Antwort auf die Bestimmung in Schritt (606) schließt den Partitionierungsprozess ab, da keine Grundlage dafür vorhanden ist, den KG auf Grundlage des empfangenen Zuverlässigkeitsfaktors einer Bearbeitung zu unterziehen (616). Auf eine positive Antwort auf die Bestimmung in Schritt (606) folgt jedoch ein Erstellen einer Partition in dem KG (608) und ein Auffüllen der erstellten Partition mit den Einträgen in den KG mit dem identifizierten Zuverlässigkeitswert (610). Die Partitionserstellung in Schritt (608) erstellt effektiv eine zweite Partition (612), die mit den übrigen Einträgen in dem ursprünglichen KG aufgefüllt wird.
  • Es versteht sich, dass die Einträge in der ersten und der zweiten Partition des KG verschiedene Werte für den Zuverlässigkeitsfaktor haben. Wie oben beschrieben, funktioniert der Verlässlichkeitswert wie ein Verbund von Beständigkeits-, Zuverlässigkeits- und Feedback-Werten. Eine Änderung in irgendeinem der einzelnen Komponentenwerte hat eine Auswirkung auf den Verbund, was sich auf alle Abfrageergebnisse auswirken kann. Nach dem Schritt (612) findet eine Verlässlichkeitsauswertung in dem KG statt (614), der die erste und die zweite Partition enthält. Die Auswertung im Schritt (614) enthält einen Vergleich von Daten, die in der ersten KG-Partition aufgefüllt wurden, z.B. erste Daten, mit Daten, die in der zweiten Partition aufgefüllt wurden, z.B. zweite Daten. In einer Ausführungsform wird die Verlässlichkeitsauswertung automatisch nach der Partitionierung ausgeführt. Es versteht sich, dass Daten, die in der ersten Partition aufgefüllt wurden, einen anderen Verlässlichkeitswert als die Daten in der zweiten Partition haben. Die hierin gezeigte Partitionierung beruht auf einer Änderung einer in dem Verlässlichkeitswert dargestellten Komponente. In einer Ausführungsform kann die Partitionierung auf zwei oder mehreren Verlässlichkeitswertkomponenten oder Änderungen an den Komponenten erfolgen. Dementsprechend kann eine Änderung in irgendeiner der Komponenten, die den Verlässlichkeitswert aufweisen, ein Erstellen von einer oder mehreren Partitionen des zugehörigen KG enthalten.
  • Wie in 6 gezeigt, unterliegt ein KG möglicherweise einer Partitionierung. Ein umgekehrtes Konzept kann durch ein Verknüpfen oder ein anderweitiges Zusammenfügen von zwei oder mehreren KGs und dem zugehörigen BC-Kontenbuch bzw. den zugehörigen BC-Kontenbüchern erfolgen. Unter Bezugnahme auf 7 wird ein Ablaufplan (700) bereitgestellt, der einen Prozess zum Verknüpfen von zwei KGs und dem zugehörigen BC-Kontenbuch bzw. den zugehörigen BC-Kontenbüchern veranschaulicht. In einer Ausführungsform können KGs, die zumindest tangential in Beziehung stehen, verknüpft werden. Die Beziehungen können auf Inhalt oder Beziehungen beruhen, die in den KGs dargestellt sind. Wie gezeigt, wird einer Knowledge Base (Wissensbasis) eine Abfrage übergeben (702), und zwei oder mehrere KGs werden identifiziert (704). In einer Ausführungsform identifiziert die KG-API, dass die beiden KGs Daten enthalten, die für die Abfrage relevant sind. Desgleichen kann die KG-API in einer Ausführungsform mehr als zwei KGs identifizieren, und daher sollte die Menge der identifizierten KGs nicht als einschränkend aufgefasst werden. Zwischen den oder untereinander der identifizierten KGs wird eine Verknüpfung hergestellt (706). Die Verknüpfung von zwei oder mehr KGs erhält die Struktur der separaten KGs aufrecht, d.h. die Strukturen bleiben konstant.
  • Es versteht sich, dass die Beziehung zwischen den KGs und insbesondere den darin dargestellten Daten Abfrageergebnisse mit widersprüchlichen Triplets, z.B. Speichereinheiten, bereitstellen können. Zum Auflösen der potenziellen Konflikte wird eine Auswertung der verknüpften KGs ausgeführt, um Datenelemente zu vergleichen (708). Insbesondere enthält der Vergleich eine Auswertung von Daten, die in jedem der verknüpften KGs dargestellt sind (710), einschließlich ihrer entsprechenden Verlässlichkeitswertkomponenten. Identifizierte widersprüchliche Datenelemente werden selektiv auf Grundlage von mindestens einer der Verlässlichkeitswertkomponenten ersetzt (712), z.B. Beständigkeit, Zuverlässigkeit und Feedback. Die Ersetzung folgt der Struktur der separaten KGs. Mit anderen Worten, Knoten in den KGs werden mit der Verknüpfung weder entfernt noch hinzugefügt. Stattdessen können die in den identifizierten Knoten dargestellten Daten ersetzt werden. Dementsprechend schwächt die Ersetzung von widersprüchlichen Einträgen in den verknüpften KGs widersprüchliche Abfrageergebnisse ab.
  • Unter Bezugnahme auf 8A und 8B wird ein Ablaufplan (800) bereitgestellt, der eine Nutzung des MLM zum Erweitern der Abfrageeingabe veranschaulicht. Insbesondere können die Ergebnisse der Abfrageübermittlung einen Fehler angeben, der sich auf die Abfrageeingabe bezieht. Wie gezeigt, wird eine Eingabe von natürlicher Sprache empfangen und verarbeitet (802). Die empfangene Eingabe wird nach Kontext abgefragt (804), der einen oder mehrere spezifizierte KGs und in einer Ausführungsform ein entsprechendes BC-Kontenbuch enthält. Die Abfrageverarbeitung erzeugt Ergebnisse in der Form von einem oder mehreren Triplets, z.B. Speichereinheiten, die aus dem oder den angegebenen KGs extrahiert oder identifiziert werden (806). Wie oben beschrieben, enthält jedes Triplet ein Subjekt, ein Objekt und eine zugehörige Beziehung. Die Variable XTotal wird der Menge von Triplets zugewiesen, die aus dem KG extrahiert oder identifiziert wurden (808). Danach wird bestimmt, ob die in Schritt (808) extrahierte Menge mindestens ein Triplet enthält (810). Auf eine positive Antwort auf die Bestimmung in Schritt (810) folgt eine Initialisierung einer zugehörigen Triplet-Zählvariablen (812). Jedes Triplet hat eine BC-Kennung, die einem BC-Kontenbucheintrag entspricht, der die Verlässlichkeitswerte enthält, die dem Triplet zugehörig oder zugewiesen sind. Für jedes extrahierte oder identifizierte Triplet, z.B. Tripletx, wird die BC-Kennung erhalten (814), aus der das BC-Kontenbuch abgefragt und der entsprechende Verlässlichkeitswert identifiziert wird (816). Nach dem Schritt (816) wird die Triplet-Zählvariable erhöht (818), und eine Bewertung wird ausgeführt, um zu bestimmen, ob jeder der extrahierten oder identifizierten KGs ausgewertet worden ist (820). Auf eine negative Antwort auf die Bestimmung in Schritt (820) folgt eine Rückkehr zum Schritt (814), und eine positive Antwort schließt die Triplet-Extraktion und den identifizierten Prozess ab. Dementsprechend werden für jedes Triplet, für das bestimmt wurde, dass es der Abfrageeingabe zugehörig ist, die zugehörigen Verlässlichkeitswerte identifiziert.
  • Auf eine negative Antwort auf die Bestimmung in Schritt (810) folgt ein Erstellen eines neuen Triplets für einen Eintrag in dem zugehörigen KG (822). Das neue Triplet entspricht der empfangenen Eingabe von natürlicher Sprache, z.B. Abfrageübermittlung, und dem neuen Triplet wird ein Verlässlichkeits-Score zugewiesen (824). Außerdem wird ein Eintrag in einem BC-Kontenbuch erstellt (826), das dem KG entspricht. Eine BC-Kennung, die dem BC-Kontenbucheintrag zugehörig ist, wird erstellt und mit dem neuen Triplet in dem KG gespeichert (828), und der zugewiesene Verlässlichkeits-Score wird in dem entsprechenden Kontenbucheintrag gespeichert (830). Dementsprechend führt ein leeres Set von Triplets, das von der Abfrageeingabe zurückgegeben wurde, zu einem Hinzufügen zu dem KG und dem entsprechenden BC-Kontenbuch.
  • Es versteht sich, dass die Abfrageübermittlung eine Antwort in der Form von einem oder mehreren Triplets von dem zugehörigen KG zurückgeben kann, wie durch eine positive Antwort auf die Bestimmung in Schritt (820) identifiziert. Nachdem die identifizierten Triplets verarbeitet und sortiert worden sind (832), erweitert das MLM die Eingabe von natürlicher Sprache, damit sie der Sortierung der identifizierten Triplets entspricht (834). Die Erweiterung kann eine oder mehrere Formen annehmen. In einer Ausführungsform ergibt sich die Erweiterung zum Beispiel aus einem Konflikt zwischen der Eingabe von natürlicher Sprache und den sortierten Triplets (836). Wenn der Konflikt identifiziert ist, liegt die Erweiterung durch das MLM in der Form einer Identifizierung des korrekten Triplets aus der Sortierung (838) und einem Modifizieren der NL-Eingabe vor, damit sie dem identifizierten Triplet entspricht (840). Die Identifizierung in Schritt (838) kann verschiedene Formen annehmen. Zum Beispiel kann die Identifizierung in einer Ausführungsform auf den zugehörigen Verlässlichkeitswerten beruhen, die, wie oben beschrieben, ein zusammengesetzter Score sind. Desgleichen kann bzw. können in einer Ausführungsform eine oder mehrere der Komponenten, die den Verlässlichkeitswert aufweist bzw. aufweisen, als ein Sortierfaktor verwendet werden, um die Liste mit Triplets zu sortieren. In einer weiteren Ausführungsform kann die Sortierung auf einem unveränderlichen Faktor beruhen, der den Triplet-Einträgen zugehörig ist, wobei die Triplets auf Grundlage des unveränderlichen Faktors sortiert werden. Dementsprechend kann die Erweiterung auf einem identifizierten Konflikt beruhen.
  • Es versteht sich, dass die Erweiterung in Reaktion auf eine Übereinstimmung oder in einer Ausführungsform einer teilweisen Übereinstimmung andere Formen annehmen kann. Wenn sich die Erweiterung aus einer Übereinstimmung zwischen der Eingabe von natürlicher Sprache und mindestens einem der Triplets in der Sortierung ergibt (842), wird ein Eintrag für die Eingabe von natürlicher Sprache in dem entsprechenden KG zusammen mit dem BC-Kontenbucheintrag erstellt (844). Desgleichen, wenn sich die Erweiterung aus einer teilweisen Übereinstimmung zwischen der Eingabe von natürlicher Sprache (846) und mindestens einem der identifizierten Triplets ergibt, wird ein neues Triplet für einen Eintrag in den zugehörigen KG erstellt (848). Das neue Triplet entspricht der empfangenen NL-Eingabe, z.B. Abfrageübermittlung, und dem neuen Triplet wird ein Verlässlichkeits-Score zugewiesen (848). Außerdem wird ein Eintrag in einem BC-Kontenbuch erstellt (850), das dem KG entspricht. Eine BC-Kennung, die dem BC-Kontenbucheintrag zugehörig ist, wird erstellt und mit dem neuen Triplet in dem KG gespeichert (852), und der zugewiesene Verlässlichkeits-Score wird in dem entsprechenden Kontenbucheintrag gespeichert (854). Außerdem wird der neue Triplet-Eintrag in dem KG mit einem oder mehreren Triplets verbunden, die mit der teilweisen Übereinstimmung identifiziert wurden (856). Wie gezeigt, enthält die Erweiterung für eine Übereinstimmung oder teilweise Übereinstimmung dementsprechend eine Erstellung eines Eintrags in den entsprechenden KG und das zugehörige BC-Kontenbuch.
  • Wie in 3 bis 8B gezeigt und beschrieben, wird das MLM verwendet, um eine Verarbeitung von natürlicher Sprache in der Form einer Abfrageübermittlung zu unterstützen, um Daten zu identifizieren, die in einem KG gespeichert sind, und um in einer Ausführungsform die Abfrageübermittlung zu erweitern. Es versteht sich außerdem, dass die MLMs dynamisch sind und Änderungen unterliegen. Der KG kann verwendet werden, um ein neues MLM oder mehrere neue MLMs zu erstellen und/oder ein vorhandenes MLM erneut zu schulen. Wenn die Ontologie modifiziert wird, werden neue Entitäten und Beziehungen verwirklicht. Diese neuen Informationen können anschließend verwendet werden, um ein Schulen des MLM zu automatisieren, dadurch ein dynamisches und progressives MLM zu unterstützen, ein neues MLM zu erstellen oder ein vorhandenes MLM zu erweitern.
  • Unter Bezugnahme auf 9 wird ein Ablaufplan (900) bereitgestellt, der einen Prozess zum Schulen eines vorhandenen MLM veranschaulicht. In dem hierin gezeigten Prozess gibt es eine NLP-Bibliothek für MLMs. Ein MLM in der Bibliothek, das hierin als ein erstes MLM bezeichnet wird, wird auf Grundlage seiner Ausrichtung auf eine Wissensdomäne identifiziert oder ausgewählt, die in einem KG ausgedrückt wird, der hierin als ein erster KG bezeichnet wird (902). In Reaktion auf ein Empfangen von Eingabe von natürlicher Sprache, die nach dem ersten KG abgefragt wird, verarbeitet das identifizierte oder ausgewählte erste MLM die Abfrageeingabe und extrahiert ein oder mehrere Triplets aus dem ersten KG (904). Außerdem wird ein zweiter KG identifiziert (906) und steht in einer Ausführungsform mit dem ersten KG in Beziehung. Das MLM verarbeitet dieselbe Abfrage mit dem zweiten KG, und aus dem zweiten KG werden ein oder mehrere Triplets extrahiert (908). Alle in den Schritten (904) und (908) extrahierten Triplets werden hierin auch als Speichereinheiten bezeichnet und enthalten ein Subjekt, ein Objekt und eine Beziehung. Wie oben erörtert, hat jedes Triplet eine zugehörige BC-Kennung, die das BC-Kontenbuch angibt, das den entsprechenden Verlässlichkeitswert bzw. die entsprechenden Verlässlichkeitswerte speichert. Nach Schritt (908) werden alle extrahierten Triplets verarbeitet, um ihren zugehörigen Verlässlichkeitswert zu identifizieren, der in ihrem entsprechenden BC-Kontenbucheintrag gespeichert ist (910). Das Triplet des ersten KG und das Triplet des zweiten KG werden ausgewertet und verglichen (912). Insbesondere bewertet die Auswertung in Schritt (912), ob der Inhalt und/oder die Struktur des ersten KG einer Modifizierung unterzogen wurde, wie in dem zweiten KG wiedergegeben (914). Damit ein MLM dynamisch modifiziert werden kann, wird eine Bestimmung vorgenommen, ob die beiden KGs eine Struktur und einen Inhalt haben, die zueinander in Beziehung stehen. Die Modifizierung kann über einen Vergleich der Triplets nachgewiesen werden, die von dem ersten und dem zweiten KG zurückgegeben wurden. Eine negative Antwort auf die Auswertung in Schritt (914) schließt die MLM-Modifizierung ab (922). Auf eine positive Antwort auf die Auswertung in Schritt (914) folgt jedoch eine Identifizierung des Inhalts und/oder eine strukturelle Änderung (916). Außerdem werden die entsprechenden Verlässlichkeitswerte bewertet, um die Authentizität der Änderung bzw. Änderungen zu validieren (918). Auf Grundlage der Validierung in Schritt (918) wird die Struktur des MLM einer dynamischen Modifizierung unterzogen (920).
  • Die Modifizierung in Schritt (920) kann verschiedene Formen annehmen. Zum Beispiel kann die Modifizierung des MLM in einer Ausführungsform mit der validierten Änderung bzw. den validierten Änderungen übereinstimmen, die in dem zweiten KG-Eintrag verglichen mit dem ersten KG-Eintrag wiedergegeben werden. In einer weiteren Ausführungsform kann die Modifizierung auf einer Bewertung der entsprechenden Verlässlichkeitswerte der extrahierten Daten beruhen. Dementsprechend wird gezeigt, dass das MLM einer Änderung auf Grundlage von Änderungen in den KGs unterliegt.
  • Ferner versteht es sich, dass Daten und zugehörige Beziehungen, die in den KGs dargestellt werden, synchrone oder diachrone Informationen sein können. Die Klassifizierung kann in die Auswertung in Schritt (912) importiert werden. Daten, die sich nicht ändern sollten und für die gezeigt wird, dass sie modifiziert worden sind, sollten in einer MLM-Modifizierung nicht wiedergegeben werden. Dementsprechend kann die Datenklassifizierung in die Datenauswertung und die zugehörige MLM-Auswertung importiert werden.
  • Unter Bezugnahme auf 10 wird ein Ablaufplan (1000) bereitgestellt, der einen Prozess für eine progressive und adaptive MLM-Konfiguration veranschaulicht. Die KG-API durchsucht einen zugehörigen oder identifizierten KG periodisch nach neuen Entitäten, Beziehungen und Daten (1002). Die Identifizierung in Schritt (1002) kann erfolgen, indem die Daten und/oder die Zeit der Einträge in dem KG geprüft werden, oder die Entitäten und Beziehungen aus einem vorhandenen MLM mit Daten verglichen werden, die in dem KG enthalten sind. Eine Liste von Entitäten und Beziehungen wird erzeugt (1004), die in dem KG vorhanden sind und in dem MLM von Interesse fehlen. Die Liste wird in einem Format erzeugt, das durch das Schulungswerkzeug in Anspruch genommen werden kann, das zum Generieren von MLMs verwendet wird. Die in Anspruch genommenen Daten werden gestreamt, um die Struktur eines vorhandenen MLM zu aktualisieren (1006). In einer Ausführungsform generiert die KG-API eine linguistische Anweisung aus dem KG, die jedes Triplet ausdrückt, das dem MLM anschließend zur Schulung zugeführt werden kann. Nach Schritt (1006) wird das aktualisierte MLM in einer MLM-Bibliothek als ein neues MLM gespeichert (1008). In einer Ausführungsform ist die progressive MLM-Konfiguration inkrementell, da sie inkrementelle Änderungen eines vorhandenen MLM darstellt. Inkrementelles Maschinenlernen funktioniert so, dass das MLM mit der Struktur eines KG synchronisiert wird. Kontinuierliche oder inkrementelle Änderungen werden auf einem Ziel-MLM ausgeführt, sodass mit jeder inkrementellen Änderung die Fähigkeit des MLM zunimmt, Daten aus dem KG zu extrahieren, und das MLM sich effektiv anpasst.
  • Das System und die hierin gezeigten Ablaufpläne können auch in der Form einer Computerprogrammeinheit für eine Verwendung mit einer intelligenten Computerplattform vorliegen, um eine NL-Verarbeitung zu vereinfachen. In der Einheit ist Programmcode verkörpert. Der Programmcode ist durch eine Verarbeitungseinheit ausführbar, um die beschriebene Funktionalität zu unterstützen.
  • Wie in einer Ausführungsform gezeigt und beschrieben, unterstützt die Verarbeitungseinheit eine Funktionalität zum Durchsuchen des Korpus nach einem Nachweis von vorhandenen KGs und entsprechenden MLMs zusammen mit den entsprechenden BC-Kontenbüchern und einem oder mehreren zugehörigen Einträgen. Der zusammengesetzte Verlässlichkeits-Score qualifiziert und/oder quantifiziert die zugehörigen Daten und stellt eine Gewichtung für ein Ausführen von einer oder mehreren Bewertungen bereit. Die Aufzeichnung des Verlässlichkeits-Scores zusammen mit den zugehörigen Komponenten in einem entsprechenden BC-Kontenbuch stellt für die Daten Authentizität bereit. Jeder Eintrag in dem Resultat-Set wird auf Grundlage des entsprechenden Verlässlichkeits-Scores ausgewertet. Wie hierin beschrieben, unterliegen die KGs einer Modifizierung, einschließlich einem Partitionieren und einem Verknüpfen, sowie einer Zuweisung von Verlässlichkeits-Score-Komponenten zu den Daten, die in einem oder mehreren ausgewählten KGs dargestellt oder diesen zugewiesen sind. Desgleichen, wie hierin beschrieben, können die MLMs dynamisch angepasst werden, um strukturelle Änderungen an einem oder mehreren der KGs wiederzugeben. Insbesondere passen sich die MLMs neuen Entitäten und Entitätsbeziehungen an.
  • Es sollte klar sein, dass hierin ein System, ein Verfahren, eine Vorrichtung und ein Computerprogrammprodukt für eine dynamische MLM-Generierung und -Erweiterung durch die Verwendung von Speicher und externem Lernen offenbart wird. Wie offenbart, wenden das System, das Verfahren, die Vorrichtung und das Computerprogrammprodukt eine NL-Verarbeitung zum Unterstützen des MLM und für das MLM an, um die KG-Beständigkeit zu unterstützen.
  • Zwar wurden bestimmte Ausführungsformen der vorliegenden Erfindung gezeigt und beschrieben, doch ist für einen Fachmann auf Grundlage der Lehren hierin offensichtlich, dass Änderungen und Modifizierungen vorgenommen werden können, ohne von dieser Erfindung und ihren umfassenderen Aspekten abzuweichen. Daher sollen die Ansprüche im Anhang in ihren Schutzumfang alle derartigen Änderungen und Modifizierungen einschließen, die innerhalb des wahren Erfindungsgedankens und Schutzumfangs dieser Erfindung liegen. Ferner sollte verstanden werden, dass die Erfindung allein durch die Ansprüche im Anhang definiert wird. Einem Fachmann wird klar sein, wenn eine bestimmte Anzahl eines eingeführten Anspruchelements beabsichtigt ist, eine derartige Absicht ausdrücklich in dem Anspruch genannt wird, und dass bei Fehlen einer derartigen Nennung keine derartige Einschränkung vorhanden ist. Als nicht einschränkendes Beispiel enthalten die folgenden Ansprüche im Anhang als Hilfsmittel zum besseren Verständnis die Verwendung der einleitenden Ausdrücke „mindestens ein“ und „ein oder mehrere“ zum Einführen von Anspruchselementen. Die Verwendung von derartigen Ausdrücken sollte jedoch nicht so aufgefasst werden, dass sie implizieren, dass die Einführung eines Anspruchselements durch die unbestimmten Artikel „ein“ oder „eine“ irgendeinen bestimmten Anspruch, der ein derartig eingeführtes Anspruchselement enthält, auf Erfindungen einschränkt, die nur ein derartiges Element enthalten, selbst wenn derselbe Anspruch die einleitenden Ausdrücke „ein oder mehrere“ oder „mindestens ein“ und unbestimmte Artikel wie „ein“ oder „eine“ enthält; dasselbe gilt für die Verwendung von bestimmten Artikeln in den Ansprüchen.
  • Bei der vorliegenden Erfindung kann es sich um ein System, ein Verfahren und/oder ein Computerprogrammprodukt handeln. Außerdem können ausgewählte Aspekte der vorliegenden Erfindung in der Form einer vollständigen Hardware-Ausführungsform, einer vollständigen Software-Ausführungsform (einschließlich Firmware, residente Software, Mikrocode usw.) oder einer Ausführungsform vorliegen, die Software- und/oder Hardware-Aspekte kombiniert, auf die alle hierin allgemein als „Schaltung“, „Modul“ oder „System“ Bezug genommen werden kann. Ferner können Aspekte der vorliegenden Erfindung die Form eines Computerprogrammprodukts annehmen, das in einem durch einen Computer lesbaren Speichermedium (oder -medien) verkörpert ist, auf dem sich durch einen Computer lesbare Programmanweisungen befinden, um einen Prozessor zu veranlassen, Aspekte der vorliegenden Erfindung auszuführen. Derart verkörpert sind das offenbarte System, ein Verfahren und/oder ein Computerprogrammprodukt betriebsfähig, die Funktionalität und den Betrieb eines Maschinenlernmodells auf Grundlage von Verlässlichkeitswerten und Nutzung von BC-Technologie zu verbessern.
  • Bei dem durch einen Computer lesbaren Speichermedium kann es sich um eine physische Einheit handeln, die Anweisungen zur Verwendung durch eine Einheit zur Ausführung von Anweisungen beibehalten und speichern kann. Das durch einen Computer lesbare Speichermedium kann zum Beispiel eine elektronische Speichereinheit, eine magnetische Speichereinheit, eine optische Speichereinheit, eine elektromagnetische Speichereinheit, eine Halbleiter-Speichereinheit oder jede geeignete Kombination aus dem Vorgenannten sein, es ist aber nicht darauf beschränkt. Zu einer nicht erschöpfenden Liste spezifischerer Beispiele für das durch einen Computer lesbare Speichermedium gehören die Folgenden: eine tragbare Computerdiskette, eine Festplatte, ein dynamischer oder statischer Direktzugriffsspeicher (RAM), ein Nur-Lese-Speicher (ROM), ein löschbarer programmierbarer Nur-Lese-Speicher (EPROM bzw. Flash-Speicher), eine magnetische Speichereinheit, ein tragbarer CD-ROM, eine DVD, ein Speicher-Stick, eine Diskette, eine mechanisch encodierte Einheit wie zum Beispiel Lochkarten oder erhabene Strukturen in einer Rille, auf denen Anweisungen gespeichert sind, und jede geeignete Kombination des Vorgenannten. Ein durch einen Computer lesbares Speichermedium soll, wie hierin verwendet, nicht als flüchtige Signale per se aufgefasst werden, wie zum Beispiel Funkwellen oder andere sich frei ausbreitende elektromagnetische Wellen, elektromagnetische Wellen, die sich durch einen Wellenleiter oder andere Übertragungsmedien ausbreiten (z.B. durch ein Lichtwellenleiterkabel geleitete Lichtimpulse) oder durch einen Draht übertragene elektrische Signale.
  • Hierin beschriebene durch einen Computer lesbare Programmanweisungen können von einem durch einen Computer lesbaren Speichermedium auf jeweilige Datenverarbeitungs-/Verarbeitungseinheiten oder über ein Netzwerk wie 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, Lichtwellenübertragungsleiter, drahtlose Übertragung, Leitwegrechner, Firewalls, Vermittlungseinheiten, Gateway-Computer und/oder Edge-Server aufweisen. Eine Netzwerkadapterkarte oder Netzwerkschnittstelle in jeder Datenverarbeitungs-/Verarbeitungseinheit empfängt durch einen Computer lesbare Programmanweisungen aus dem Netzwerk und leitet die durch einen Computer lesbaren Programmanweisungen zur Speicherung in einem durch einen Computer lesbaren Speichermedium innerhalb der entsprechenden Datenverarbeitungs-/Verarbeitungseinheit weiter.
  • Bei durch einen Computer lesbaren Programmanweisungen zum Ausführen von Arbeitsschritten der vorliegenden Erfindung kann es sich um Assembler-Anweisungen, ISA-Anweisungen (Instruction-Set-Architecture), Maschinenanweisungen, maschinenabhängige Anweisungen, Mikrocode, Firmware-Anweisungen, zustandssetzende Daten oder entweder Quellcode oder Objektcode handeln, die in einer beliebigen Kombination von einer oder mehreren Programmiersprachen geschrieben sind, darunter objektorientierte Programmiersprachen wie Java, Smalltalk, C++ oder dergleichen, sowie herkömmliche prozedurale Programmiersprachen wie die Programmiersprache „C“ oder ähnliche Programmiersprachen. Die durch einen Computer lesbaren Programmanweisungen können vollständig auf dem Computer des Benutzers, teilweise auf dem Computer des Benutzers, als eigenständiges Software-Paket, teilweise auf dem Computer des Benutzers und teilweise auf einem entfernt angeordneten Computer oder vollständig auf dem entfernt angeordneten Computer oder Server oder Cluster von Servern ausgeführt werden. In dem letzteren Szenario kann der entfernt angeordnete Computer mit dem Computer des Benutzers über jeden Typ von Netzwerk verbunden werden, einschließlich ein lokales Netzwerk (LAN) oder ein Weitverkehrsnetz (WAN), oder die Verbindung kann zu einem externen Computer hergestellt werden (zum Beispiel über das Internet unter Nutzung eines Internet-Dienstanbieters). In einigen Ausführungsformen können elektronische Schaltungen, darunter zum Beispiel programmierbare Logikschaltungen, feldprogrammierbare Gatter-Anordnungen (FPGA, field programmable gate arrays) oder programmierbare Logikanordnungen (PLA, programmable logic arrays) die computerlesbaren Programmanweisungen ausführen, indem sie Zustandsinformationen der computerlesbaren Programmanweisungen nutzen, um die elektronischen Schaltungen zu personalisieren, um Aspekte der vorliegenden Erfindung durchzuführen.
  • Aspekte der vorliegenden Erfindung werden hierin unter Bezugnahme auf Veranschaulichungen von Ablaufplänen und/oder Blockschaubildern von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Es sollte klar sein, dass jeder Block der Ablaufplanveranschaulichungen und/oder der Blockschaubilder und Kombinationen von Blöcken in den Ablaufplanveranschaulichungen und/oder den Blockschaubildern mittels durch einen Computer lesbare Programmanweisungen umgesetzt werden können.
  • Diese durch einen Computer lesbaren Programmanweisungen können einem Prozessor eines Universalcomputers, eines Spezialcomputers oder einer anderen programmierbaren Datenverarbeitungsvorrichtung bereitgestellt werden, um eine Maschine zu erzeugen, sodass die über den Prozessor des Computers bzw. eine andere programmierbare Datenverarbeitungsvorrichtung ausgeführten Anweisungen ein Mittel zur Umsetzung der in dem Block bzw. den Blöcken der Ablaufpläne und/oder der Blockschaubilder angegebenen Funktionen/Schritte erzeugen. Diese durch einen Computer lesbaren Programmanweisungen können auch auf einem durch einen Computer lesbaren Speichermedium gespeichert sein, das einen Computer, eine programmierbare Datenverarbeitungsvorrichtung und/oder andere Einheiten so steuern kann, dass sie auf eine bestimmte Art funktionieren, sodass das durch einen Computer lesbare Speichermedium, auf dem Anweisungen gespeichert sind, ein Herstellungsprodukt aufweist, darunter Anweisungen, die Aspekte der/des in dem Block bzw. den Blöcken des Ablaufplans und/oder der Blockschaubilder angegebenen Funktion/Schritts umsetzen.
  • Die durch einen Computer lesbaren Programmanweisungen können auch auf einen Computer, eine andere programmierbare Datenverarbeitungsvorrichtung oder eine andere Einheit geladen werden, um das Ausführen einer Reihe von Arbeitsschritten auf dem Computer bzw. der anderen programmierbaren Vorrichtung oder anderen Einheit zu verursachen, um einen durch einen Computer umgesetzten Prozess zu erzeugen, sodass die auf dem Computer, einer anderen programmierbaren Vorrichtung oder einer anderen Einheit ausgeführten Anweisungen die in dem Block bzw. den Blöcken der Ablaufpläne und/oder der Blockschaubilder angegebenen Funktionen/Schritte umsetzen.
  • Die Ablaufpläne und Blockschaubilder in den Figuren veranschaulichen die Architektur, die Funktionalität und den Betrieb möglicher Ausführungen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. In diesem Zusammenhang kann jeder Block in den Ablaufplänen oder den Blockschaubildern ein Modul, ein Segment oder einen Teil von Anweisungen darstellen, die eine Anweisung oder mehrere ausführbare Anweisungen zum Umsetzen der bestimmten logischen Funktion(en) aufweisen. In einigen alternativen Umsetzungen können die in dem Block angegebenen Funktionen in einer anderen Reihenfolge als in den Figuren gezeigt auftreten. Zum Beispiel können zwei nacheinander gezeigte Blöcke tatsächlich im Wesentlichen parallel ausgeführt werden, oder die Blöcke können manchmal in der umgekehrten Reihenfolge ausgeführt werden, was von der beteiligten Funktionalität abhängt. Es ist ferner anzumerken, dass jeder Block der Blockschaubilder und/oder der Ablaufplandarstellungen sowie Kombinationen von Blöcken in den Blockschaubildern und/oder der Ablaufplandarstellung durch spezielle auf Hardware beruhende Systeme umgesetzt werden können, welche die angegebenen Funktionen oder Handlungen durchführen oder Kombinationen aus Spezial-Hardware und Computeranweisungen ausführen.
  • Obwohl bestimmte Ausführungsformen der Erfindung hierin zu Veranschaulichungszwecken beschrieben worden sind, sollte klar sein, dass verschiedene Modifizierungen vorgenommen werden können, ohne von dem Erfindungsgedanken und Schutzumfang der Erfindung abzuweichen. Insbesondere kann die Verarbeitung von natürlicher Sprache durch verschiedene Datenverarbeitungsplattformen oder übergreifend über mehrere Einheiten ausgeführt werden. Ferner kann der Datenspeicher und/oder Korpus lokal gespeichert, entfernt angeordnet oder über mehrere Systeme verteilt werden. Demgemäß wird der Schutzumfang dieser Erfindung nur durch die folgenden Ansprüche und ihre Entsprechungen begrenzt.

Claims (18)

  1. Computersystem, aufweisend: eine Verarbeitungseinheit, die betriebsfähig mit einem Arbeitsspeicher verbunden ist; eine Knowledge Engine (Wissensmaschine) in Datenaustausch mit der Verarbeitungseinheit, um Daten zu verwalten, einschließlich um: Daten und eine Datenbeziehung aus Daten zu extrahieren, die aus der Gruppe ausgewählt wurden, bestehend aus: strukturierten Daten, unstrukturierten Daten und einer Kombination davon; einen Eintrag für die extrahierten Daten und die Datenbeziehung in einem Knowledge Graph (KG) (Wissengraph) zu erstellen und die extrahierten Daten und die Datenbeziehung in dem KG selektiv zu speichern, einschließlich den gespeicherten Daten einen Verlässlichkeitswert zuzuweisen; einen Asset-Werteintrag in einem Blockchain- (BC) Kontenbuch zu erstellen, das dem KG entspricht, wobei der Eintrag den zugewiesenen Verlässlichkeitswert enthält; eine BC-Kennung zu erstellen, die dem BC-Kontenbucheintrag entspricht; und die erstellte BC-Kennung mit dem KG-Eintrag zu speichern; ausgewählte Daten auszuwerten, die in dem KG gespeichert sind, einschließlich die BC-Kennung zum Bestimmen einer Herkunft der ausgewählten Daten und zum Quantifizieren der Daten zu verwenden; und eine Liste der ausgewerteten Daten zu generieren und die Daten in der generierten Liste auf Grundlage des zugewiesenen Verlässlichkeitswerts zu sortieren; und ein Datenelement, das aus der sortierten Liste mit einem größten Verlässlichkeits-Score zurückgegeben wird.
  2. System nach Anspruch 1, ferner aufweisend die Knowledge Engine, um: eine erste Partition in dem KG zu erstellen und einen ersten Zuverlässigkeitswert zu ersten Daten in der ersten Partition aufzufüllen und zuzuweisen ; eine zweite Partition in dem KG zu erstellen und einen zweiten Zuverlässigkeitswert zu zweiten Daten in der zweiten Partition aufzufüllen und zu erstellen, wobei der erste und der zweite Zuverlässigkeitswert verschieden sind.
  3. System nach Anspruch 2, ferner aufweisend die Knowledge Engine, um eine Verlässlichkeitsauswertung in dem KG automatisch auszuführen, einschließlich einem Vergleich der ersten und der zweiten Daten.
  4. System nach Anspruch 1, ferner aufweisend die Knowledge Engine, um: eine Verknüpfung zwischen zwei Knowledge Graphs herzustellen, einschließlich Datenelemente in einem zweiten KG mit Datenelementen in einem ersten KG zu vergleichen und auszuwerten, und Datenelemente auf Grundlage eines Werts selektiv zu ersetzen, der aus der Gruppe ausgewählt wurde, bestehend aus: Zuverlässigkeit, Rückmeldung und Kombinationen davon.
  5. System nach Anspruch 4, ferner aufweisend die Knowledge Engine, um eine Struktur des KG nach einem Herstellen der Verknüpfung zwischen dem ersten KG und dem zweiten KG konstant zu halten.
  6. System nach Anspruch 1, wobei die Daten in einem Knoten in dem KG gespeichert werden und die Beziehung als eine Kante dargestellt wird, die zwei Knoten verbindet, wobei jeder Knoten einen Verlässlichkeitswert auf Knotenebene hat und jede Beziehung einen Beziehungsverlässlichkeitswert hat, wobei der Beziehungswert auf Grundlage der Verlässlichkeitswerte der Knoten in der Beziehung berechnet wird.
  7. Computerprogrammprodukt zum Verarbeiten von natürlicher Sprache, wobei das Computerprogrammprodukt eine durch einen Computer lesbare Speichereinheit mit darauf verkörpertem Programmcode aufweist, wobei der Programmcode durch eine Verarbeitungseinheit ausführbar ist, um: Daten in einem Knowledge Graph (KG) zu speichern, aufweisend: Extrahieren von Daten und einer Datenbeziehung aus Daten, die aus der Gruppe ausgewählt wurden, bestehend aus: strukturierten Daten, unstrukturierten Daten und Kombinationen davon; Erstellen eines Eintrags in den KG und selektives Speichern der extrahierten Daten und der Datenbeziehung in dem KG, einschließlich Zuweisen eines Verlässlichkeitswerts zu den gespeicherten Daten; Erstellen eines Asset-Werteintrags in ein Blockchain- (BC) Kontenbuch, das dem KG entspricht, wobei der Eintrag den zugewiesenen Verlässlichkeitswert enthält; Erstellen einer BC-Kennung, die dem BC-Kontenbucheintrag entspricht; und Speichern der erstellten BC-Kennung mit dem KG-Eintrag; Auswerten von ausgewählten Daten, die in dem KG gespeichert sind, einschließlich Verwenden der BC-Kennung zum Bestimmen einer Herkunft der ausgewählten Daten und zum Quantifizieren der Daten; Generieren einer Liste der ausgewerteten Daten und Sortieren der Daten in der generierten Liste auf Grundlage des zugewiesenen Verlässlichkeitswerts; und Generieren eines Resultats, wobei das Resultat ein Datenelement ist, das aus der sortierten Liste mit einem größten Verlässlichkeits-Score zurückgegeben wird.
  8. Computerprogrammprodukt nach Anspruch 7, ferner aufweisend einen Programmcode, um: eine erste Partition in dem KG zu erstellen und einen ersten Zuverlässigkeitswert zu ersten Daten in der ersten Partition aufzufüllen und zuzuweisen; eine zweite Partition in dem KG zu erstellen und einen zweiten Zuverlässigkeitswert zu zweiten Daten in der zweiten Partition aufzufüllen und zu erstellen, wobei der erste und der zweite Zuverlässigkeitswert verschieden sind.
  9. Computerprogrammprodukt nach Anspruch 8, ferner aufweisend einen Programmcode, um eine Verlässlichkeitsauswertung in dem KG automatisch auszuführen, einschließlich einem Vergleich der ersten und der zweiten Daten.
  10. Computerprogrammprodukt nach Anspruch 7, ferner aufweisend einen Programmcode, um: eine Verknüpfung zwischen zwei Knowledge Graphs herzustellen, einschließlich Datenelemente in einem zweiten KG mit Datenelementen in einem ersten KG zu vergleichen und auszuwerten, und Datenelemente auf Grundlage eines Werts selektiv zu ersetzen, der aus der Gruppe ausgewählt wurde, bestehend aus: Zuverlässigkeit, Rückmeldung und Kombinationen davon.
  11. Computerprogrammprodukt nach Anspruch 10, ferner aufweisend einen Programmcode, um eine Struktur des KG nach einem Herstellen der Verknüpfung zwischen dem ersten KG und dem zweiten KG konstant zu halten.
  12. Computerprogrammprodukt nach Anspruch 7, wobei die Daten in einem Knoten in dem KG gespeichert werden und die Beziehung als eine Kante dargestellt wird, die zwei Knoten verbindet, wobei jeder Knoten einen Verlässlichkeitswert auf Knotenebene hat und jede Beziehung einen Beziehungsverlässlichkeitswert hat, wobei der Beziehungswert auf Grundlage der Verlässlichkeitswerte der Knoten in der Beziehung berechnet wird.
  13. Durch einen Computer umgesetztes Verfahren zum Verarbeiten von natürlicher Sprache, aufweisend: ein Speichern von Daten in einem Knowledge Graph (KG), aufweisend: ein Extrahieren von Daten und einer Datenbeziehung aus Daten, die aus der Gruppe ausgewählt wurden, bestehend aus: strukturierten Daten, unstrukturierten Daten und einer Kombination davon; ein Erstellen eines Eintrags in den KG und ein selektives Speichern der extrahierten Daten und der Datenbeziehung in dem KG, einschließlich ein Zuweisen eines Verlässlichkeitswerts zu den gespeicherten Daten; ein Erstellen eines Asset-Werteintrags in ein Blockchain- (BC) Kontenbuch, das dem KG entspricht, wobei der Eintrag den zugewiesenen Verlässlichkeitswert enthält; ein Erstellen einer BC-Kennung, die dem BC-Kontenbucheintrag entspricht; und ein Speichern der erstellten BC-Kennung mit dem KG-Eintrag; ein Auswerten von ausgewählten Daten, die in dem KG gespeichert sind, einschließlich einem Verwenden der BC-Kennung zum Bestimmen einer Herkunft der ausgewählten Daten und zum Quantifizieren der Daten; ein Generieren einer Liste der ausgewerteten Daten und ein Sortieren der Daten in der generierten Liste auf Grundlage des zugewiesenen Verlässlichkeitswerts; und ein Datenelement, das aus der sortierten Liste mit einem größten Verlässlichkeits-Score zurückgegeben wird.
  14. Verfahren nach Anspruch 13, ferner aufweisend: ein Erstellen einer ersten Partition in dem KG und ein Auffüllen und ein Zuweisen eines ersten Zuverlässigkeitswerts zu ersten Daten in der ersten Partition; ein Erstellen einer zweiten Partition in dem KG und ein Auffüllen und ein Zuweisen eines zweiten Zuverlässigkeitswerts zu zweiten Daten in der zweiten Partition, wobei der erste und der zweite Zuverlässigkeitswert verschieden sind.
  15. Verfahren nach Anspruch 14, ferner aufweisend ein automatisches Ausführen einer Verlässlichkeitsauswertung in dem KG, einschließlich einem Vergleich der ersten und der zweiten Daten.
  16. Verfahren nach Anspruch 13, ferner aufweisend: ein Herstellen einer Verknüpfung zwischen zwei Knowledge Graphs, einschließlich ein Vergleichen und ein Auswerten von Datenelementen in einem zweiten KG mit Datenelementen in einem ersten KG, und ein selektives Ersetzen von Datenelementen auf Grundlage eines Werts, der aus der Gruppe ausgewählt wurde, bestehend aus: Zuverlässigkeit, Rückmeldung und Kombinationen davon.
  17. Verfahren nach Anspruch 16, ferner aufweisend ein Konstanthalten einer Struktur des KG nach einem Herstellen der Verknüpfung zwischen dem ersten KG und dem zweiten KG.
  18. Verfahren nach Anspruch 13, wobei die Daten in einem Knoten in dem KG gespeichert werden und die Beziehung als eine Kante dargestellt wird, die zwei Knoten verbindet, wobei jeder Knoten einen Verlässlichkeitswert auf Knotenebene hat und jede Beziehung einen Beziehungsverlässlichkeitswert hat, wobei der Beziehungswert auf Grundlage der Verlässlichkeitswerte der Knoten in der Beziehung berechnet wird.
DE112018005894.8T 2018-01-10 2018-12-31 Maschinenlernen zum integrieren von wissens- und natürlicher sprachverarbeitung Pending DE112018005894T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/866,698 US10423726B2 (en) 2018-01-10 2018-01-10 Machine learning to integrate knowledge and natural language processing
US15/866,698 2018-01-10
PCT/IB2018/060736 WO2019138289A1 (en) 2018-01-10 2018-12-31 Machine learning to integrate knowledge and natural language processing

Publications (1)

Publication Number Publication Date
DE112018005894T5 true DE112018005894T5 (de) 2020-07-30

Family

ID=67139857

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112018005894.8T Pending DE112018005894T5 (de) 2018-01-10 2018-12-31 Maschinenlernen zum integrieren von wissens- und natürlicher sprachverarbeitung

Country Status (6)

Country Link
US (2) US10423726B2 (de)
JP (1) JP7210587B2 (de)
CN (1) CN111566654B (de)
DE (1) DE112018005894T5 (de)
GB (1) GB2583313A (de)
WO (1) WO2019138289A1 (de)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11003716B2 (en) * 2017-01-10 2021-05-11 International Business Machines Corporation Discovery, characterization, and analysis of interpersonal relationships extracted from unstructured text data
US10776586B2 (en) * 2018-01-10 2020-09-15 International Business Machines Corporation Machine learning to integrate knowledge and augment natural language processing
US11909858B1 (en) * 2018-06-21 2024-02-20 Thomson Reuters Enterprise Centre Gmbh System and method for generating and performing a smart contract
US10607042B1 (en) * 2019-02-12 2020-03-31 Live Objects, Inc. Dynamically trained models of named entity recognition over unstructured data
US10592544B1 (en) 2019-02-12 2020-03-17 Live Objects, Inc. Generation of process models in domains with unstructured data
US11790368B2 (en) * 2019-03-05 2023-10-17 International Business Machines Corporation Auto-evolving database endorsement policies
CN110516240B (zh) * 2019-08-28 2021-04-06 南京璇玑信息技术有限公司 一种基于Transformer的语义相似度计算模型DSSM技术
CN111274391B (zh) * 2020-01-15 2023-09-01 北京百度网讯科技有限公司 一种spo的抽取方法、装置、电子设备及存储介质
US11483154B2 (en) 2020-02-19 2022-10-25 International Business Machines Corporation Artificial intelligence certification of factsheets using blockchain
US11379466B2 (en) * 2020-08-18 2022-07-05 Accenture Global Solutions Limited Data accuracy using natural language processing
CN112348190B (zh) * 2020-10-26 2022-06-21 福州大学 一种基于改进的嵌入模型suke的不确定知识图预测方法
CN112380836A (zh) * 2020-11-12 2021-02-19 华侨大学 一种智能侨情问句生成方法
CN112199960B (zh) * 2020-11-12 2021-05-25 北京三维天地科技股份有限公司 一种标准知识元粒度解析***
WO2022102827A1 (ko) * 2020-11-16 2022-05-19 주식회사 솔트룩스 과학 기술 논문을 위한 지식 추출 시스템
CN112883197B (zh) * 2021-02-08 2023-02-07 广东电网有限责任公司广州供电局 一种用于封闭开关设备的知识图谱构建方法与***
CN112989069B (zh) * 2021-05-10 2021-10-15 苏州博宇鑫交通科技有限公司 一种基于知识图谱与区块链的交通违章分析方法
US20230063880A1 (en) * 2021-08-26 2023-03-02 Mocrosoft Technology Licensing, LLC Performing quality-based action(s) regarding engineer-generated documentation associated with code and/or application programming interface
CN114328978B (zh) * 2022-03-10 2022-05-24 合肥综合性国家科学中心人工智能研究院(安徽省人工智能实验室) 关系抽取方法、装置、设备及可读存储介质

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10984913B2 (en) * 2012-04-27 2021-04-20 Netspective Communications Llc Blockchain system for natural language processing
GB201210234D0 (en) * 2012-06-12 2012-07-25 Fujitsu Ltd Reconciliation of large graph-based data storage
US10217059B2 (en) 2014-02-04 2019-02-26 Maluuba Inc. Method and system for generating natural language training data
US10839020B2 (en) * 2014-04-14 2020-11-17 Netspective Communications Llc Multi-source user generated electronic data integration in a blockchain-based transactional system
US10642935B2 (en) 2014-05-12 2020-05-05 International Business Machines Corporation Identifying content and content relationship information associated with the content for ingestion into a corpus
US10325205B2 (en) * 2014-06-09 2019-06-18 Cognitive Scale, Inc. Cognitive information processing system environment
EP2963563A1 (de) 2014-06-30 2016-01-06 Fujitsu Limited Datenverarbeitungsvorrichtung und Verfahren zur Verwaltung einer Graphendatenbank
US20160342989A1 (en) 2015-05-21 2016-11-24 Mastercard International Incorporated Method and system for processing blockchain-based transactions on existing payment networks
CN105095195B (zh) 2015-07-03 2018-09-18 北京京东尚科信息技术有限公司 基于知识图谱的人机问答方法和***
US10445656B2 (en) 2015-09-29 2019-10-15 Cognitive Scale, Inc. Cognitive machine learning system
US9959504B2 (en) 2015-12-02 2018-05-01 International Business Machines Corporation Significance of relationships discovered in a corpus
CN105843875B (zh) 2016-03-18 2019-09-13 北京光年无限科技有限公司 一种面向智能机器人的问答数据处理方法及装置
US10628491B2 (en) * 2016-11-09 2020-04-21 Cognitive Scale, Inc. Cognitive session graphs including blockchains
US20180165758A1 (en) * 2016-12-09 2018-06-14 Cognitive Scale, Inc. Providing Financial-Related, Blockchain-Associated Cognitive Insights Using Blockchains
CN107015963A (zh) 2017-03-22 2017-08-04 重庆邮电大学 基于深度神经网络的自然语言语义分析***及方法
US10019491B1 (en) 2017-11-29 2018-07-10 OJO Labs, Inc. Machine learning of response selection to structured data input
US20190197428A1 (en) 2017-12-27 2019-06-27 Cerner Innovation, Inc. Systems and methods for refactoring a knowledge model to increase domain knowledge and reconcile electronic records

Also Published As

Publication number Publication date
GB2583313A (en) 2020-10-21
US10423726B2 (en) 2019-09-24
CN111566654A (zh) 2020-08-21
JP7210587B2 (ja) 2023-01-23
GB202011417D0 (en) 2020-09-09
CN111566654B (zh) 2023-10-24
US10599780B2 (en) 2020-03-24
JP2021510429A (ja) 2021-04-22
US20190303441A1 (en) 2019-10-03
US20190213258A1 (en) 2019-07-11
WO2019138289A1 (en) 2019-07-18

Similar Documents

Publication Publication Date Title
DE112018005894T5 (de) Maschinenlernen zum integrieren von wissens- und natürlicher sprachverarbeitung
DE102019000294A1 (de) Erstellen unternehmensspezifischer Wissensgraphen
DE112009002000B4 (de) Adaptives Verfahren und Vorrichtung zur Umwandlung von Nachrichten zwischen unterschiedlichen Datenformaten
DE112020002600T5 (de) Entdecken einer semantischen bedeutung von datenfeldern anhand von profildaten der datenfelder
DE112020003820T5 (de) Erkennung von Anomalien und Abweichungen unter Verwendung eines domänenindizierten Einschränkungs-Repository
DE112019001533T5 (de) Erweiterung von trainingsdaten für die klassifikation von natürlicher sprache
DE102005032734B4 (de) Indexextraktion von Dokumenten
DE112018006345T5 (de) Abrufen von unterstützenden belegen für komplexe antworten
DE102005032744A1 (de) Indexextraktion von Dokumenten
DE102009040570A1 (de) Verfahren und System zum Erzeugen eines dynamischen Hilfe-Dokuments
DE102013209868A1 (de) Abfragen und Integrieren strukturierter und unstrukturierter Daten
DE112021001986T5 (de) Verfahren und System zum Verarbeiten von Datenaufzeichnungen
DE102014116369A1 (de) Verwaltung von sprachmarkern bei internationaler datenspeicherung
DE112020001874T5 (de) Datenextraktionssystem
DE102015121509A1 (de) Methodik und Vorrichtung zur Konsistenzprüfung durch Vergleich von Ontologiemodellen
DE112019000206T5 (de) Dynamisches Erstellen und Konfigurieren eines Lernmodells für Dialogagenten
DE112020000554T5 (de) Verfahren zum zugreifen auf datensätze eines stammdatenverwaltungssystems
DE112021006604T5 (de) Dynamisches in-rangordnung-bringen von facetten
DE112020005296T5 (de) Durchsuchen von gesprächsprotokollen eines systems mit virtuellen dialogagenten nach kontrastierenden zeitlichen mustern
DE112012006412T5 (de) System zur verteilten Datensuche, Verfahren zur verteilten Datensuche und Managementcomputer
DE112021001743T5 (de) Vektoreinbettungsmodelle für relationale tabellen mit null- oder äquivalenten werten
DE102019108857A1 (de) Automatisiertes maschinelles Lernen auf Basis gespeicherten Daten
DE102021123578A1 (de) Messen der datenqualität von daten in einer graphendatenbank
DE112020000873T5 (de) Automatisierte auflösung von über- und unterspezifikation in einem wissensgraphen
DE102005032733A1 (de) Indexextraktion von Dokumenten

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06F0017280000

Ipc: G06F0040200000

R084 Declaration of willingness to licence