-
HINTERGRUND
-
Die vorliegende Erfindung bezieht sich allgemein auf eine Datenanalyse, und genauer auf eine automatisierte Auflösung von Überspezifikation und Unterspezifikation in einem Wissensgraphen.
-
Big Data ist ein Gebiet, das mit Analysieren, Extrahieren von Informationen aus oder anderweitigem Umgehen mit großen Datensätzen befasst ist, die zu komplex für herkömmliche Datenverarbeitungs-Anwendungssoftware sind. Verschiedene Datenverarbeitungs-Modellierungswerkzeuge und -techniken sind zum Analysieren und Extrahieren von Informationen aus Datensätzen verfügbar. Graphenmodelle und relationale Datenbanken werden oft verwendet, um Informationen aus Datensätzen für eine bestimmte Domäne (d.h. Aktivitäts- oder Wissenssphäre) zu extrahieren. Ein durch Analysten verwendetes Werkzeug ist ein Wissensgraph. Der Begriff Wissensgraph, wie hierin verwendet, bezieht sich auf einen Graphen, der Informationen in eine Ontologie integriert und einen Reasoner anwendet, um neues Wissen abzuleiten. Ein Wissensgraph weist ein Netzwerk von Entitäten auf, die für eine spezifische Domäne oder für eine Organisation relevant sind.
-
KURZDARSTELLUNG
-
In einem Aspekt der Erfindung enthält ein computerumgesetztes Verfahren: Bestimmen, durch eine Datenverarbeitungseinheit, dass eine Größe eines Objekt-Clusters eines Wissensgraphen einen Schwellenwert erfüllt, der eine Unterspezifikation einer Wissensbasis des Wissensgraphen angibt; Bestimmen, durch die Datenverarbeitungseinheit, von Unterklassen für Objekte des Wissensgraphen; Reinitialisieren, durch die Datenverarbeitungseinheit, des Wissensgraphen auf Grundlage der Unterklassen, um einen verfeinerten Wissensgraphen zu erzeugen, wobei die Größe des Objekt-Clusters in dem verfeinerten Wissensgraphen verringert ist; und Erzeugen, durch die Datenverarbeitungseinheit, einer Ausgabe auf Grundlage von Informationen, die aus dem verfeinerten Wissensgraphen bestimmt werden. Vorteilhafterweise ermöglicht das Verfahren eine automatische Identifikation von Unterspezifikation ohne die Notwendigkeit für einen Analysten mit spezialisiertem Wissen der Wissensgraphdomäne.
-
In Ausführungsformen enthält das Bestimmen der Unterklassen des Wissensgraphen ein Bestimmen von Eltern-Kind-Beziehungen innerhalb einer latenten hierarchischen Struktur der Wissensbasis. Solche Verfahren nutzen vorteilhafterweise die Identifikation einer latenten hierarchischen Struktur in der Wissensbasis, um automatisch Unterspezifikation der Wissensgraphdomäne zu lösen.
-
In anderen Ausführungsformen enthält das Bestimmen der Unterklassen für den Wissensgraphen ein Bestimmen der Unterklassen für den Wissensgraphen auf Grundlage von Peer-Knoten. Solche Verfahren nutzen vorteilhafterweise die Identifikation latenter Peer-zu-Peer-Beziehungen in der Wissensbasis, um automatisch Unterspezifikation der Wissensgraphdomäne zu lösen.
-
In einem weiteren Aspekt der Erfindung gibt es ein Computerprogrammprodukt, das ein computerlesbares Speicherungsmedium mit damit ausgebildeten Programmanweisungen enthält. Die Programmanweisungen sind durch eine Datenverarbeitungseinheit ausführbar zum: Erzeugen eines Wissensgraphen aus einer Wissensbasis; Bestimmen, dass eine Größe eines Objekt-Clusters des Wissensgraphen einen Schwellenwert erfüllt, der Unterspezifikation der Wissensbasis angibt, Bestimmen von Unterklassen für Objekte in dem Wissensgraphen; und Reinitialisieren des Wissensgraphen auf Grundlage der Unterklassen, um einen verfeinerten Wissensgraphen zu erzeugen, wobei die Größe des Objekt-Clusters in dem verfeinerten Wissensgraphen verringert ist. Vorteilhafterweise ermöglicht das Computerprogrammprodukt eine automatische Identifikation von Unterspezifikation ohne die Notwendigkeit für einen Analysten mit spezialisiertem Wissen der Wissensgraphdomäne.
-
In Ausführungsformen enthält das Bestimmen der Unterklassen des Wissensgraphen ein Bestimmen von Eltern-Kind-Beziehungen innerhalb einer latenten hierarchischen Struktur der Wissensbasis. Solche Computerprogrammprodukte nutzen vorteilhafterweise die Identifikation einer latenten hierarchischen Struktur in der Wissensbasis, um automatisch Unterspezifikation der Wissensgraphdomäne zu lösen.
-
In anderen Ausführungsformen enthält das Bestimmen der Unterklassen für den Wissensgraphen ein Bestimmen der Unterklassen für den Wissensgraphen auf Grundlage von Peer-Knoten. Solche Computerprogrammprodukte nutzen vorteilhafterweise die Identifikation latenter Peer-zu-Peer-Beziehungen in der Wissensbasis, um automatisch Unterspezifikation der Wissensgraphdomäne zu lösen.
-
In einem weiteren Aspekt der Erfindung gibt es ein System, das einen Prozessor, einen computerlesbaren Speicher und ein computerlesbares Speicherungsmedium enthält, die einer Datenverarbeitungseinheit zugeordnet sind. Das System enthält auch: Programmanweisungen, um einen Wissensgraphen aus einer Wissensbasis zu erzeugen; Programmanweisungen, um zu bestimmen, ob eine Größe eines Objekt-Clusters des Wissensgraphen einen Schwellenwert erfüllt, der Unterspezifikation der Wissensbasis angibt; Programmanweisungen, um Unterklassen für Objekte des Wissensgraphen auf Grundlage einer Bestimmung zu bestimmen, dass die Größe des Objekt-Clusters des Wissensgraphen den Schwellenwert erfüllt; Programmanweisungen, um den Wissensgraphen auf Grundlage der Unterklassen zu reinitialisieren, um einen verfeinerten Wissensgraphen zu erzeugen, wobei die Größe des Objekt-Clusters in dem verfeinerten Wissensgraphen verringert ist; Programmanweisungen, um zu bestimmen, ob Überspezifikation besteht, durch Durchführen einer Clustering-Analyse, die eine Initialisierungsformel eines Voronoi-Zellen-Clusters benutzen; und Programmanweisungen, um den Wissensgraphen auf Grundlage des Bestimmens der Überspezifikation zu reinitialisieren, um einen aktualisierten Wissensgraphen zu erzeugen, wobei Entitäten von überspezifizierten Objekt-Clustern des verfeinerten Wissensgraphen in einen einzelnen Cluster des aktualisierten Wissensgraphen zusammenfasst sind. Die Programmanweisungen werden auf dem computerlesbaren Speicherungsmedium zur Ausführung durch den Prozessor über den computerlesbaren Speicher gespeichert. Vorteilhafterweise ermöglicht das System eine automatische Identifikation von Überspezifikation ohne die Notwendigkeit für einen Analysten mit spezialisiertem Wissen der Wissensgraphdomäne.
-
In Ausführungsformen enthält das Bestimmen der Unterklassen des Wissensgraphen ein Bestimmen von Eltern-Kind-Beziehungen innerhalb einer latenten hierarchischen Struktur der Wissensbasis. Solche Systeme nutzen vorteilhafterweise die Identifikation einer latenten hierarchischen Struktur in der Wissensbasis, um automatisch Unterspezifikation der Wissensgraphdomäne zu lösen.
-
In Ausführungsformen weist das Bestimmen der Unterklassen für den Wissensgraphen ein Bestimmen der Unterklassen für den Wissensgraphen auf Grundlage von Peer-Knoten auf. Solche Systeme nutzen vorteilhafterweise die Identifikation latenter Peer-zu-Peer-Beziehungen in der Wissensbasis, um automatisch Unterspezifikation der Wissensgraphdomäne zu lösen.
-
In einem Aspekt der Erfindung enthält ein computerumgesetztes Verfahren: Zugreifen, durch eine Datenverarbeitungseinheit, auf einen Wissensgraphen, der für eine Wissensbasis erzeugt ist; Bestimmen, durch die Datenverarbeitungseinheit, einer Überspezifikation der Wissensbasis auf Grundlage eines oder mehrerer Objekt-Cluster des Wissensgraphen mit weniger als einem Schwellenwert von Datenpunkten; und Reinitialisieren, durch die Datenverarbeitungseinheit, des Wissensgraphen auf Grundlage des Bestimmens der Überspezifikation, um einen aktualisierten Wissensgraphen zu erzeugen, wobei Entitäten von überspezifizierten Objekt-Clustern des Wissensgraphen in einen einzelnen Objekt-Cluster des aktualisierten Wissensgraphen zusammengefasst werden. Solche Verfahren ermöglichen die Bestimmung von Überspezifikation eines Wissensgraphen, ohne von einem Analysten zu erfordern, dass er spezialisiertes Wissen des Gegenstands der Wissensbasis besitzt.
-
In Umsetzungen enthält das Bestimmen der Überspezifikation ein Durchführen einer Clustering-Analyse, die eine Initialisierungsformel eines Voronoi-Zellen-Clusters benutzt.
-
In einem weiteren Aspekt der Erfindung gibt es ein Computerprogrammprodukt, das ein computerlesbares Speicherungsmedium mit damit ausgebildeten Programmanweisungen enthält. Die Programmanweisungen sind durch eine Datenverarbeitungseinheit ausführbar, um die Datenverarbeitungseinheit zu veranlassen zum: Zugreifen auf einen Wissensgraphen, der für eine Wissensbasis erzeugt ist; Bestimmen einer Überspezifikation des Wissensbasis auf Grundlage eines oder mehrerer Objekt-Cluster des Wissensgraphen mit weniger als einem Schwellenwert von Datenpunkten; und Reinitialisieren des Wissensgraphen auf Grundlage des Bestimmens der Überspezifikation, um einen aktualisierten Wissensgraphen zu erzeugen, wobei Entitäten von überspezifizierten Objekt-Clustern des Wissensgraphen in einen einzelnen Objekt-Cluster des aktualisierten Wissensgraphen zusammengefasst werden.
-
In Umsetzungen enthält das Bestimmen der Überspezifikation ein Durchführen einer Clustering-Analyse, die eine Initialisierungsformel eines Voronoi-Zellen-Clusters benutzt.
-
Figurenliste
-
Die vorliegende Erfindung wird in der folgenden detaillierten Beschreibung unter Bezugnahme auf die festgehaltene Mehrzahl von Zeichnungen mittels nicht einschränkender Beispiele beispielhafter Ausführungsformen der vorliegenden Erfindung beschrieben.
- 1 stellt eine Datenverarbeitungsinfrastruktur gemäß einer Ausführungsform der vorliegenden Erfindung dar.
- 2 zeigt eine beispielhafte Umgebung gemäß Aspekten der Erfindung.
- 3 zeigt einen Ablaufplan eines beispielhaften Verfahrens gemäß Aspekten der Erfindung.
- 4A zeigt einen kommentierten Graphen für eine Domäne, der Unterspezifikation einer Wissensbasis angibt, gemäß Aspekten der Erfindung.
- 4B zeigt einen verfeinerten Graphen für die Wissensbasis von 4A, der ausreichende Spezifikation der Wissensbasis angibt, gemäß Aspekten der Erfindung.
- 5A zeigt einen kommentierten Graphen für eine Domäne, der Überspezifikation einer Wissensbasis angibt, gemäß Aspekten der Erfindung.
- 5B zeigt einen verfeinerten Graphen für die Wissensbasis von 5A, der ausreichende Spezifikation der Wissensbasis angibt, gemäß Aspekten der Erfindung.
-
DETAILLIERTE BESCHREIBUNG
-
Die vorliegende Erfindung bezieht sich allgemein auf eine Datenanalyse, und genauer auf eine automatisierte Auflösung von Überspezifikation und Unterspezifikation in einem Wissensgraphen. Ausführungsformen der vorliegenden Erfindung stellen ein System zum automatischen Erkennen von Überspezifikation und Unterspezifikation einer Wissensbasis auf Grundlage eines Objektknoten-Clustering in einem Wissensgraphen bereit.
-
Im Allgemeinen kann die Verwendung eines Graphenmodells (Graphenbeispiel) einem Benutzer (z.B. einem Datenanalysten) angeben, dass eine Domäne von Interesse zu groß ist, um sie vollständig zu verstehen, und zu dynamisch ist, um sie in einer relationalen Datenbasis (relationales Beispiel) zu modellieren, wobei Schemaänderungen (Änderungen an einem Satz von Bedingungen und Entitäten, die eine Domäne einrichten) abhängig von dem Graphenmodell eine gravierende Auswirkung auf Softwareanwendungen besitzen kann. In Fällen, in denen ein Graphenbeispiel eingesetzt wird, weisen Techniken zum Ausbauen eines Graphenschemas oder G-Schemas oft eine automatische Komponente auf. In vielen Fällen wird ein Wissensgraph von Hand aufgebaut und durch automatisierte Techniken ergänzt. In selteneren Fällen oder in Situationen, in denen Rauschen bereitwilliger toleriert wird, kann das gesamte G-Schema durch einen automatisierten Ansatz entwickelt werden. In jeder Verfahrensweise ist es vorteilhaft, anzugeben, wo eine Entität (ein Typ oder eine Kategorie von Objekt innerhalb der modellierten Daten) überspezifiziert (überverallgemeinert) oder unterspezifiziert ist. Die Begriffe unterspezifiziert und Unterspezifikation, wie hierin verwendet, beziehen sich auf unzureichende oder unzureichend präzise Informationen oder Informationen, die unvollständig spezifiziert sind. Im Gegensatz dazu kann in anderen Situationen eine Entität übermäßig spezifiziert oder zergliedert sein (in Komponentenelemente der Entität heruntergebrochen) und sollte verallgemeinerter sein. Die Begriffe übermäßig spezifiziert, Überspezifikation und überspezifiziert, wie hierin verwendet, beziehen sich auf Daten, die exzessiv spezifiziert sind. Jeder Fehler (Unterspezifikation oder Überspezifikation) ist möglich, gleich ob Modelle durch manuelle oder automatisierte Mittel entwickelt werden, und sollte für ein effizienteres Modell und zum genaueren Wiedergeben eines Zustands der Domäne korrigiert werden.
-
Viele Informationssysteme besitzen einen Hybridansatz, der relationale Datenbanken und Graphen benutzt, um entdeckungsorientierte Datensuchen, Arbeitsablauf(Dialogbaum)- Traversale und einzelne Richtige-Antwort-Anfragen durchzuführen. Ein einzelner Wissensgraph, der fähig ist, die notwendige Eingabe für alle Fälle bereitzustellen, ist äußerst komplex und üblicherweise nicht verfügbar. Heutige topaktuelle Informationssysteme erfordern eine Vielfalt von Datenspeicherungs- und Abruftechniken mit komplexer Backend-Integration. Ausführungsformen der vorliegenden Erfindung ermöglichen es, dass ein einzelnes Graphenschema als eine Quelle wahrer Informationen dient, und beiträgt, knappe Ressourcen für eine kontinuierliche Verfeinerung und Steigerung eines Graphen aus Wissensquellen (d. H. eine oder mehrere Datenquellen) zuzuordnen. Dementsprechend stellen Ausführungsformen der vorliegenden Erfindung eine technische Lösung für das technische Problem von Über- oder Unterspezifikation von Datensätzen in graphischen Modellierungsumsetzungen bereit.
-
Vorteilhafterweise stellen Ausführungsformen der Erfindung Verbesserungen in der Form von zusätzlicher Funktionalität an Datenmodellierungs-Datenverarbeitungseinheiten und für das technische Gebiet der Computerdatenmodellierung bereit. Genauer benutzen Aspekte der Erfindung unkonventionelle Schritte einschließlich automatisierter Bestimmung von Überspezifikation und/oder Unterspezifikation unter Benutzung von Cluster-Analyse von Graphenobjekten bereit, um verfeinerte Graphenmodelle zu erzeugen.
-
Bei der vorliegenden Erfindung kann es sich um ein System, ein Verfahren und/oder ein Computerprogrammprodukt handeln. Das Computerprogrammprodukt kann ein durch einen Computer lesbares Speichermedium (oder -medien) mit durch einen Computer lesbaren Programmanweisungen darauf umfassen, um einen Prozessor dazu zu veranlassen, Aspekte der vorliegenden Erfindung auszuführen.
-
Bei dem durch einen Computer lesbaren Speichermedium kann es sich um eine physische Einheit handeln, die Anweisungen zur Verwendung durch ein System zur Ausführung von Anweisungen behalten und speichern kann. Bei dem durch einen Computer lesbaren Speichermedium kann es sich zum Beispiel um eine elektronische Speichereinheit, eine magnetische Speichereinheit, eine optische Speichereinheit, eine elektromagnetische Speichereinheit, eine Halbleiterspeichereinheit oder jede geeignete Kombination daraus handeln, ohne auf diese beschränkt zu sein. Zu einer nicht erschöpfenden Liste spezifischerer Beispiele des durch einen Computer lesbaren Speichermediums gehören die Folgenden: eine tragbare Computerdiskette, eine Festplatte, ein Direktzugriffsspeicher (RAM), ein Nur-Lese-Speicher (ROM), ein löschbarer programmierbarer Nur-Lese-Speicher (EPROM bzw. Flash-Speicher), ein statischer Direktzugriffsspeicher (SRAM), ein tragbarer Kompaktspeicherplatte-Nur-Lese-Speicher (CD-ROM), eine DVD (digital versatile disc), ein Speicher-Stick, eine Diskette, eine mechanisch kodierte Einheit wie zum Beispiel Lochkarten oder erhabene Strukturen in einer Rille, auf denen Anweisungen gespeichert sind, und jede geeignete Kombination daraus. Ein durch einen Computer lesbares Speichermedium soll in der Verwendung hierin nicht als flüchtige Signale an sich aufgefasst werden, wie zum Beispiel Funkwellen oder andere sich frei ausbreitende elektromagnetische Wellen, elektromagnetische Wellen, die sich durch einen Wellenleiter oder ein anderes Übertragungsmedium ausbreiten (z.B. Lichtwellenleiterkabel durchlaufende 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 aus einer oder mehreren Programmiersprachen geschrieben werden, darunter objektorientierte Programmiersprachen wie Smalltalk, C++ o.ä. 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 fernen Computer oder vollständig auf dem fernen Computer oder Server ausgeführt werden. In letzterem Fall kann der entfernt angeordnete Computer mit dem Computer des Benutzers durch eine beliebige Art Netzwerk verbunden sein, darunter ein lokales Netzwerk (LAN) oder ein Weitverkehrsnetzwerk (WAN), oder die Verbindung kann mit einem externen Computer hergestellt werden (zum Beispiel über das Internet unter Verwendung eines Internet-Dienstanbieters). In einigen Ausführungsformen können elektronische Schaltungen, darunter zum Beispiel programmierbare Logikschaltungen, vor Ort programmierbare Gatter-Anordnungen (FPGA, field programmable gate arrays) oder programmierbare Logikanordnungen (PLA, programmable logic arrays) die durch einen Computer lesbaren Programmanweisungen ausführen, indem sie Zustandsinformationen der durch einen Computer lesbaren Programmanweisungen nutzen, um die elektronischen Schaltungen zu personalisieren, um Aspekte der vorliegenden Erfindung durchzuführen.
-
Aspekte der vorliegenden Erfindung sind hierin unter Bezugnahme auf Ablaufpläne und/oder Blockschaltbilder bzw. Schaubilder von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Es wird darauf hingewiesen, dass jeder Block der Ablaufpläne und/oder der Blockschaltbilder bzw. Schaubilder sowie Kombinationen von Blöcken in den Ablaufplänen und/oder den Blockschaltbildern bzw. Schaubildern mittels durch einen Computer lesbare Programmanweisungen ausgeführt 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, so dass die über den Prozessor des Computers bzw. der anderen programmierbaren Datenverarbeitungsvorrichtung ausgeführten Anweisungen ein Mittel zur Umsetzung der in dem Block bzw. den Blöcken der Ablaufpläne und/oder der Blockschaltbilder bzw. Schaubilder festgelegten 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, so dass das durch einen Computer lesbare Speichermedium, auf dem Anweisungen gespeichert sind, ein Herstellungsprodukt aufweist, darunter Anweisungen, welche Aspekte der/des in dem Block bzw. den Blöcken des Ablaufplans und/oder der Blockschaltbilder bzw. Schaubilder 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 Prozessschritten auf dem Computer bzw. der anderen programmierbaren Vorrichtung oder anderen Einheit zu verursachen, um einen auf einem Computer ausgeführten Prozess zu erzeugen, so dass 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 Blockschaltbilder bzw. Schaubilder festgelegten Funktionen/Schritte umsetzen.
-
Die Ablaufpläne und die Blockschaltbilder bzw. Schaubilder 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 Blockschaltbildern bzw. Schaubildern ein Modul, ein Segment oder einen Teil von Anweisungen darstellen, die eine oder mehrere ausführbare Anweisungen zur Ausführung der bestimmten logischen Funktion(en) aufweisen. In einigen alternativen Ausführungen können die in dem Block angegebenen Funktionen in einer anderen Reihenfolge als in den Figuren gezeigt stattfinden. Zwei nacheinander gezeigte Blöcke können zum Beispiel in Wirklichkeit im Wesentlichen gleichzeitig ausgeführt werden, oder die Blöcke können manchmal je nach entsprechender Funktionalität in umgekehrter Reihenfolge ausgeführt werden. Es ist ferner anzumerken, dass jeder Block der Blockschaltbilder bzw. Schaubilder und/oder der Ablaufpläne sowie Kombinationen aus Blöcken in den Blockschaltbildern bzw. Schaubildern und/oder den Ablaufplänen durch spezielle auf Hardware beruhende Systeme umgesetzt werden können, welche die festgelegten Funktionen oder Schritte durchführen, oder Kombinationen aus Spezial-Hardware und Computeranweisungen ausführen.
-
Unter Bezugnahme auf 1 wird nun eine schematische Darstellung eines Beispiels einer Datenverarbeitungsinfrastruktur gezeigt. Eine Datenverarbeitungsinfrastruktur 10 stellt nur ein Beispiel einer geeigneten Datenverarbeitungsinfrastruktur dar und soll nicht auf irgendeine Einschränkung im Hinblick auf den Umfang der Verwendung oder Funktionalität von Ausführungsformen der hierin beschriebenen Erfindung hindeuten. Unabhängig davon ist die Datenverarbeitungsinfrastruktur 10 fähig, umgesetzt zu werden und/oder jede der hierin vorstehend dargelegten Funktionalität durchzuführen.
-
In der Datenverarbeitungsinfrastruktur 10 gibt es ein Computersystem (oder einen Server) 12, das/der mit zahlreichen anderen universellen oder zweckbestimmten Datenverarbeitungssystem-Umgebungen oder -Konfigurationen betreibbar ist. Zu Beispielen allgemein bekannter Datenverarbeitungssysteme, Umgebungen und/oder Konfigurationen, die für die Verwendung mit dem Computersystemserver 12 geeignet sein können, zählen, ohne auf diese beschränkt zu sein, Personal-Computer-Systeme, Server-Computersysteme, schlanke Clients (thin clients), umfangreiche Clients (thick clients), handgeführte (handheld) oder Laptop-Einheiten, Mehrfachprozessorsysteme, mikroprozessorgestützte Systeme, Decoder (set top boxes), programmierbare Unterhaltungselektronik, Netzwerk-PCs, Minicomputersysteme, Großrechnersysteme (mainframe computer systems) und verteilte Cloud-Computing-Umgebungen, die jedes beliebige der vorgenannten Systeme oder der vorgenannten Einheiten und Ähnliches enthalten.
-
Das Computersystem 12 kann im allgemeinen Kontext von durch Computersysteme ausführbaren Anweisungen beschrieben werden, wie beispielsweise Programmmodule, die durch ein Computersystem ausgeführt werden. Allgemein können Programmmodule Routinen, Programme, Objekte, Komponenten, Logik, Datenstrukturen und so weiter enthalten, die bestimmte Aufgaben durchführen oder bestimmte abstrakte Datentypen umsetzen. Das Computersystem 12 kann in verteilten Cloud-Computing-Umgebungen ausgebildet sein, bei denen Aufgaben durch entfernt angeordnete Verarbeitungseinheiten durchgeführt werden, die über ein Datenübertragungsnetzwerk verbunden sind. In einer verteilten Cloud-Computing-Umgebung können sich Programmmodule sowohl in lokalen als auch entfernt angeordneten Computersystem-Speicherungsmedien einschließlich Arbeitsspeicherungseinheiten befinden.
-
Wie in 1 gezeigt, ist das Computersystem 12 in der Datenverarbeitungsinfrastruktur 10 in Form einer universellen Datenverarbeitungseinheit gezeigt. Die Komponenten des Computersystems 12 können, ohne auf diese beschränkt zu sein, einen oder mehrere Prozessoren oder eine oder mehrere Verarbeitungseinheiten (z. B. eine CPU) 16, einen Systemspeicher 28 und einen Bus 18 enthalten, der vielfältige Systemkomponenten einschließlich des Systemspeichers 28 mit dem Prozessor 16 verbindet.
-
Der Bus 18 steht für eine oder mehrere jeder beliebigen von verschiedenen Arten von Busstrukturen, die einen Speicherbus oder eine Speichersteuereinheit, einen Peripherieeinheiten-Bus, einen beschleunigten Grafikanschluss und einen Prozessor- oder lokalen Bus unter Verwendung jeder beliebigen einer Vielfalt von Busarchitekturen enthalten. In beispielhafter Weise und ohne Einschränkung können solche Architekturen einen ISA-Bus (Industry Standard Architecture (ISA) bus), einen MCA-Bus (Micro Channel Architecture (MCA) bus), einen erweiterten ISA-Bus (Enhanced ISA (EISA) bus), einen lokalen VESA-Bus (Video Electronics Standards Association (VESA) local bus) und einen PCI-Bus (Peripheral Component Interconnect (PCI) bus) enthalten.
-
Das Computersystem 12 enthält üblicherweise eine Vielfalt von durch ein Computersystem lesbaren Medien. Bei solchen Medien kann es sich um jedes beliebige verfügbare Medium handeln, auf welches durch das Computersystem 12 zugegriffen werden kann, und es enthält sowohl flüchtige als auch nichtflüchtige, Wechsel- und Nicht-Wechsel-Medien.
-
Der Systemspeicher 28 kann durch ein Computersystem lesbare Medien in der Form von flüchtigem Arbeitsspeicher, wie beispielsweise einen Direktzugriffsarbeitsspeicher (random access memory (RAM)) 30, und/oder einen Cachearbeitsspeicher 32 enthalten. Das Computersystem 12 kann ferner weitere Wechsel-/Nicht-Wechsel-, flüchtige/nichtflüchtige Computersystem-Speicherungsmedien enthalten. In lediglich beispielhafter Weise kann ein Speicherungssystem 34 für ein Lesen von und Schreiben auf ein nichtflüchtiges magnetisches Nicht-Wechsel-Medium bereitgestellt werden (nicht gezeigt und üblicherweise als „Festplattenlaufwerk“ bezeichnet). Obwohl nicht gezeigt, kann auch ein magnetisches Plattenlaufwerk zum Lesen von und Schreiben auf eine nichtflüchtige magnetische Wechselplatte (z.B. eine „Floppydiskette“) und ein optisches Plattenlaufwerk zum Lesen von oder Schreiben auf eine nichtflüchtige optische Wechselplatte, wie beispielsweise eine CD-ROM, DVD-ROM oder ein anderes optisches Medium, bereitgestellt werden. In solchen Beispielen kann jedes durch eine oder mehrere Datenmedienschnittstellen mit dem Bus 18 verbunden sein. Wie nachstehend weiter dargestellt und beschrieben wird, kann der Speicher 28 mindestens ein Programmprodukt enthalten, das einen Satz (z.B. mindestens eines) von Programmmodulen besitzt, die konfiguriert sind, die Funktionen von Ausführungsformen der Erfindung auszuführen.
-
Ein Programm/Dienstprogramm (utility) 40 mit einem Satz (mindestens einem) von Programmmodulen 42 kann in dem Speicher 28 in beispielhafter Weise und ohne Einschränkung auch als Betriebssystem, ein oder mehrere Anwendungsprogramme, andere Programmmodule und Programmdaten gespeichert sein. Jedes von dem Betriebssystem, dem einem oder den mehreren Anwendungsprogrammen, den anderen Programmmodulen und den Programmdaten oder irgendeine Kombination davon kann eine Umsetzung einer Netzwerkumgebung enthalten. Die Programmmodule 42 führen allgemein die Funktionen und/oder Verfahrensweisen von Ausführungsformen der hierin beschriebenen Erfindung aus.
-
Das Computersystem 12 kann auch mit einer oder mehreren externen Einheiten 14 Daten austauschen, wie beispielsweise einer Tastatur, einer Zeigeeinheit, einer Anzeige 24 usw.; einer oder mehreren Einheiten, die es einem Benutzer ermöglichen, mit dem Computersystem 12 zu interagieren; und/oder beliebigen Einheiten (z.B. Netzwerkkarte, Modem usw.), die es dem Computersystem 12 ermöglichen, mit einer oder mehreren anderen Datenverarbeitungseinheiten Daten auszutauschen. Ein derartiger Datenaustausch kann über Eingabe/Ausgabe(E/A)-Schnittstellen 22 erfolgen. Des Weiteren kann das Computersystem 12 mit einem oder mehreren Netzwerken, wie beispielsweise einem lokalen Netzwerk (local area network (LAN)), einem allgemeinen Weitverkehrsnetzwerk (wide area network (WAN)) und/oder einem öffentlichen Netzwerk (z.B. dem Internet), über einen Netzwerkadapter 20 Daten austauschen. Wie dargestellt, tauscht der Netzwerkadapter 20 mit den anderen Komponenten des Computersystems 12 über den Bus 18 Daten aus. Es sollte verstanden werden, dass andere Hardware- und/oder Softwarekomponenten in Verbindung mit dem Computersystem 12 verwendet werden könnten, auch wenn sie nicht gezeigt sind. Beispiele enthalten, ohne auf diese beschränkt zu sein: Mikrocode, Einheitentreiber, redundante Verarbeitungseinheiten, externe Plattenlaufwerk-Arrays, RAID-Systeme, Bandlaufwerke und Datenarchivierungs-Speicherungssysteme usw.
-
2 zeigt eine beispielhafte Umgebung gemäß Aspekten der Erfindung. Die Umgebung enthält ein Netzwerk 50, das einen Server 60 mit einer oder mehreren Datenquellen 62 und/oder einer oder mehreren Client-Datenverarbeitungseinheiten 64 verbindet. Der Server 60 kann das Computersystem 12 von 1 aufweisen und kann über den Netzwerkadapter 20 von 1 mit dem Netzwerk 50 verbunden sein. Der Server 60 kann als zweckbestimmte Datenverarbeitungseinheit konfiguriert sein, die Teil eines Datenverwaltungs- und -analysesystems ist. Zum Beispiel kann der Server 60 konfiguriert sein, Daten (z.B. Big Data) von einer oder mehreren der Datenquellen 62 von Clients zur Verwaltung und/oder Analyse und zum Berichten zu sammeln.
-
Das Netzwerk 50 kann jedes geeignete Datenaustauschnetzwerk oder jede geeignete Kombination von Netzwerken sein, wie beispielsweise ein lokales Netzwerk (LAN), ein allgemeines Weitverkehrsnetzwerk (WAN) und/oder ein öffentliches Netzwerk (z.B. das Internet). Die Datenquelle 62 kann jede Datenquelle sein, wie beispielsweise Client-Datenbanken oder Drittparteidatenquellen (z.B. ein Social-Media-Server usw.). Der Server 60 kann konfiguriert sein, Datenverwaltungs- und -analysedienste oder Ausgaben für eine oder mehrere Client-Datenverarbeitungseinheiten bereitzustellen, die bei 64 dargestellt sind. Die Client-Datenverarbeitungseinheiten können die Komponenten des Computersystems 12 von 1 enthalten und können Desktop-Computer, Laptop-Computer, Tablets, Smartphones oder andere Arten von Datenverarbeitungseinheiten enthalten.
-
Noch Bezug nehmend auf 2 kann der Server 60 ein oder mehrere Programmmodule (z.B. das Programmmodul 42 von 1) enthalten, die durch den Server 60 ausgeführt werden und konfiguriert sind, eine oder mehrere der hierin beschriebenen Funktionen durchzuführen. In Ausführungsformen enthält der Server 60 ein Modellierungsmodul 70, das konfiguriert ist, Modellierungswerkzeuge und Funktionen für die Analyse einer Wissensbasis bereitzustellen; ein Cluster-Modul 72, das konfiguriert ist, Fälle von Unterspezifikation oder Überspezifikation in einem Wissensgraphen bereitzustellen; und ein Modul zur Verarbeitung natürlicher Sprache (natural language processing (NLP) module)), das konfiguriert ist, Objekte in einer Wissensbasis mit ähnlichen Beziehungen zu identifizieren. Der Begriff Wissensbasis, wie hierin verwendet, bezieht sich auf einen Satz von Daten, der Daten aufweisen kann, die aus einer Mehrzahl von Quellen (z.B. den Datenquellen 62) gesammelt werden. Der Begriff Wissensgraph, wie hierin verwendet, bezieht sich auf einen Graphen, der Informationen in eine Ontologie integriert und einen Reasoner anwendet, um neues Wissen abzuleiten. Ein Wissensgraph weist ein Netzwerk von Entitäten auf, die für eine spezifische Domäne oder für eine Organisation relevant sind. In Aspekten weist ein Wissensgraph der vorliegenden Erfindung große Netzwerke von Entitäten, deren semantische Arten, Eigenschaften und Beziehungen zwischen Entitäten auf. Der Begriff semantisch bezieht sich auf die Bedeutung der Daten, die neben den Daten in der Form der Ontologie in dem Graphen codiert sind.
-
In Ausführungen enthält der Server 60 eine graphische Benutzeroberfläche (graphical user interface (GUI)), durch die ein Benutzer Informationen (z.B. Anweisungen, Daten usw.) eingeben kann, und eine Datenbank 78 zum Speichern von Datensätzen, die durch den Server 60 verwendet werden, und/oder Datenausgaben des Servers 60. In Ausführungsformen ist der Server 60 zur Verwendung in dem Feld von Big Data konfiguriert (d.h. Wege zum Analysieren, systematischen Extrahieren von Informationen aus oder anderweitigem Umgehen mit Datensätzen, die zu groß oder komplex sind, um mit ihnen durch traditionelle Datenverarbeitungs-Anwendungssoftware umzugehen).
-
In Ausführungsformen kann der Server 60 zusätzliche oder weniger Komponenten enthalten als die in 2 gezeigten. In Ausführungsformen können separate Komponenten in eine einzelne Datenverarbeitungskomponente oder ein einzelnes Datenverarbeitungsmodul integriert sein. Zusätzlich oder alternativ dazu kann eine einzelne Komponente als mehrere Datenverarbeitungskomponenten oder -module umgesetzt werden.
-
3 zeigt einen Ablaufplan eines beispielhaften Verfahrens gemäß Aspekten der Erfindung. Schritte des Verfahrens von 3 können in der in 2 veranschaulichten Umgebung durchgeführt werden und werden unter Bezugnahme auf in 2 gezeigte Elemente beschrieben.
-
Bei Schritt 300 erzeugt oder erhält der Server 60 einen Wissensgraphen, wobei der Wissensgraph auf einer Wissensbasis (oder einem oder mehreren Sätzen von Daten) beruht. Wie vorstehend erwähnt, bezieht sich der Begriff Wissensgraph, wie hierin verwendet, auf einen Graphen, der Informationen in eine Ontologie integriert und einen Reasoner anwendet, um neues Wissen abzuleiten. Genauer weist der Wissensgraph ein Netzwerk von Entitäten auf, die für eine spezifische Domäne oder für eine Organisation relevant sind. Zum Beispiel kann ein Wissensgraph für Anwendungen auf dem medizinischen Gebiet, Öl- oder Gasgebiet oder anderen Gebieten und Branchen erzeugt werden. In Aspekten weist ein Wissensgraph der vorliegenden Erfindung große Netzwerke von Entitäten, deren semantische Arten, Eigenschaften und Beziehungen zwischen Entitäten auf. Vielfältige Verfahren zum Erzeugen eines Wissensgraphen können gemäß Schritt 300 verwendet werden. Zum Beispiel können Toolkits von Anwendungsprogrammierschnittstellen (application programming interface (API)) oder Datenkits von künstlicher Intelligenz (artificial intelligence (AI)) durch einen Datenanalysten benutzt werden oder dergleichen, um einen Wissensgraphen aus Daten unter Benutzung bestehender Techniken und/oder Software zu erzeugen. In Umsetzungen erzeugt das Modellierungsmodul 70 des Servers 60 den Wissensgraphen gemäß Schritt 300. Alternativ dazu kann ein Benutzer einen Wissensgraphen erhalten, der bereits erzeugt wurde, wie beispielsweise von einer Client-Datenverarbeitungseinheit 64. Der Wissensgraph kann auf Grundlage von Daten erzeugt werden, die aus einer Mehrzahl von Quellen (z.B. den Datenquellen 62) angesammelt wurden. In Gesichtspunkten wird der Wissensgraph aus einer Wissensbasis (einem oder mehreren Sätzen von Daten) unter Verwendung eines Schemas erzeugt, das eine Domäne einrichtet, wobei der Graph einen oder mehrere Objekt-Cluster darstellt (d.h. eine Gruppe ähnlicher Objekte, die in dem Graphen nahe beieinander positioniert sind oder auftreten).
-
In Schritt 301 bestimmt der Server 60, dass eine Größe eines Objekt-Clusters des Wissensgraphen von Schritt 300 einen Schwellenwert erfüllt, der eine Unterspezifikation der Wissensbasis angibt. Wie vorstehend festgehalten bezieht sich der Begriff unterspezifiziert und Unterspezifikation, wie hierin verwendet, auf unzureichende oder unzureichend präzise Informationen oder Informationen, die unvollständig spezifiziert sind. In Umsetzungen bestimmt das Cluster-Modul 72 des Servers 60 eine Unterspezifikation gemäß Schritt 301. Wenn in Fällen, in denen ein Clustering-Schritt in dem graphischen Darstellen von Daten durchgeführt wird, eine gegebene Entität vorherrschend dichte Cluster zu haben scheint, die disproportional zu umgebenden Clustern in dem Graphen sind, geben solche disproportional dichten Cluster einen wahrscheinlichen Fall von Unterspezifikation an. Somit verwenden Ausführungsformen der Erfindung Cluster, um eine wahrscheinliche Ursache für Unterspezifikation einer Wissensbasis zu finden, wobei die Unterspezifikation nicht auf einer absoluten oder heuristischen Basis gemessen wird, sondern relativ zu Gruppen, die sich innerhalb eines gegebenen Korpus (einem Hauptkörper oder einer Sammlung von Daten) oder innerhalb aller Korpora in dieser Domäne befinden.
-
Noch Bezug nehmend auf Schritt 301 von 3 wird eine argmax-Funktion (Argumente der Maxima) benutzt, um kritische Punkte der Domäne innerhalb eines Clusters zu bestimmen, bei dem die Größe größer als die umgebenden Cluster-Gruppen ist. In der Mathematik sind die argmax die Punkte einer Domäne einer Funktion, bei denen die Funktionswerte maximal sind. Die Erkennung einer Cluster-Größe, die eine hypothetische Unterspezifikation bezeichnet, kann unter Verwendung einer Formel gelöst werden, die einen Schwellenwert der Gesamtprozentsätze für jeden Cluster bildet, so dass, wenn irgendeine Gruppe oder irgendein Cluster n % mehr der angesammelten Daten wäre als die anderen kombinierten Cluster, der Server 60 eine Angabe von Unterspezifikation erkennt. Die Formel für diese Bestimmung kann ausgedrückt werden als: δ = χ - η; wobei χ die hypothetische Aufteilung ist (d.h. die gewünschte hypothetische Durchschnittsanzahl von Elementen in einem Cluster), wobei η die tatsächliche Aufteilung (d.h. die tatsächliche Anzahl von Elementen in einem Cluster)), und wobei 0 ≤ δ ≥ einem Schwellenwert das Ausmaß von Unterspezifikation angibt. In Aspekten benutzt der Server 60 vorbestimmte Regeln, um zu bestimmen, ob ein hohes Ausmaß an Unterspezifikation (definiert durch Regeln und Schwellenwerte) eine gemäß Schritt 302 vorzunehmende Aktion erfordert.
-
Die Fähigkeit eine unterspezifizierte Entität zu zergliedern ist in einem Wissensgraphen latent. Der Begriff Zergliedern, wie hierin verwendet, bezieht sich auf ein Herunterbrechen eines Objektes oder einer Entität in Komponentenelemente des Objektes oder der Entität oder ein weiteres Spezifizieren des Objektes oder der Entität. Vorteilhafterweise ermöglichen es Ausführungsformen der Erfindung dem Cluster-Modul 72 des Servers 60, wahrscheinliche Fälle von Unterspezifikation zu bestimmen, ohne dass ein Analyst irgendein bestimmtes Wissen oder irgendein bestimmtes Training hinsichtlich der Domäne des Wissensgraphen benötigt. Zum Beispiel könnte ein Wissensgraph einschließlich Clustern von Objekten bezüglich eines medizinischen Gebietes durch das Cluster-Modul 72 auf wahrscheinliche Fälle von Unterspezifikation analysiert werden, ohne dass ein Benutzer Wissen auf dem bestimmten medizinischen Gebiet besitzt. Das heißt, ein Benutzer muss keine manuelle oder geistige Analyse des Wissensgraphen anwenden, um zu bestimmten, ob Cluster von Objekten weiter zergliedert werden sollten. Dies ist besonders nützlich, wenn ein Analyst kein bestimmtes Wissen oder keine bestimmten Fähigkeiten in der Domäne der Wissensbasis besitzt. Wissensgraphen werden oft benutzt, um Untergraphen zu erzeugen, um zusätzliche Informationen in Bezug auf geclusterte Objekte bereitzustellen. Dementsprechend ermöglichen Ausführungsformen der Erfindung die Erzeugung von Untergraphen aus Clustern, die nur für die Bestimmung von Unterspezifikation bei Schritt 301 erzeugt werden.
-
Bei Schritt 302 bestimmt der Server 60 sehr häufige Eltern-Kind-Beziehungen innerhalb einer latenten hierarchischen Struktur der Wissensbasis (wenn eine hierarchische Struktur vorhanden ist) als Reaktion auf die Bestimmung von Schritt 301. In Aspekten führt das NLP-Modul 74 des Servers 60 eine NLP-Musterabgleichanalyse durch (ist z.B. eine Musterextraktion), um sehr häufige Eltern-Kind-Beziehungen innerhalb der Wissensbasis auf Grundlage vorbestimmter Regeln und/oder Schwellenwerten zu bestimmen. Zum Beispiel kann das NLP-Modul 74 Schlüsselwörter identifizieren, die Eltern-Kind-Beziehungen zwischen Kategorien von Daten in der Wissensbasis angeben.
-
Bei Schritt 303 erzeugt der Server 60 Unterklassen für den Wissensgraphen auf Grundlage der sehr häufigen Eltern/Kind-Beziehungen, die in Schritt 302 bestimmt wurden. In Ausführungsformen setzt das NLP-Modul 74 des Servers 60 Schritt 304 um. In Aspekten benutzt der Server 60 begriffshäufigkeitsinverses Dokumenthäufigkeitsabgleichen (frequency-inverse document frequency (TD-IDF) matching), um mehrere Unterklassen auf Grundlage der Eltern/Kind-Beziehungen zu erzeugen, die in Schritt 302 bestimmt wurden. Im Allgemeinen findet TD-IDF Wörter oder Begriffe, die nicht selten oder häufig, sondern irgendwo in der Mitte sind. Somit wird in Aspekten der bei Schritt 301 als unspezifiziert identifizierte Cluster auf Grundlage von anwendbaren sehr häufigen Eltern/Kind-Beziehungen, die in Schritt 302 bestimmt wurden, in Unterklassen zergliedert.
-
Bei Schritt 304 identifiziert der Server als Reaktion auf die Bestimmung bei Schritt 302, und wenn keine hierarchische Struktur innerhalb der Wissensbasis vorhanden ist, Peer-Knoten (Abkömmlinge) innerhalb der Wissensbasis unter Verwendung von NLP-Techniken, um Objekte zu identifizieren, die ähnliche Beziehungen besitzen (z.B. eine berechnete Knotenähnlichkeit, die einen vorbestimmten Schwellenwert erfüllt). In Umsetzungen setzt das NLP-Modul 74 des Servers 60 Schritt 304 um. In Aspekten ist die Musterabgleichkomplexität über NLP-Techniken lösbar, die nach Objekten suchen, die ähnliche Beziehungen besitzen (z.B. auf Grundlage vorbestimmter Regeln) und dies verwenden, um die Knotenähnlichkeit zu berechnen.
-
Bei Schritt 305 erzeugt der Server 60 Unterklassen für den Wissensgraphen auf Grundlage der in Schritt 304 bestimmten Peer-Knoten. In Umsetzungen führt das NLP-Modul 74 Schritt 305 durch. In Aspekten wird der bei Schritt 301 als unspezifiziert identifizierte Cluster auf Grundlage identifizierter Peer-Knoten von Schritt 304 in Unterklassen zergliedert. In Aspekten ist die Ausgabe von Schritt 305 ein Vorschlag zum Lösen von Unterspezifikation.
-
Bei Schritt 306 reinitialisiert oder aktualisiert der Server 60 den Wissensgraphen auf Grundlage der bei den Schritten 303 oder 305 erzeugten Unterklassen, um einen verfeinerten Wissensgraphen zu erzeugen. Der verfeinerte Wissensgraph enthält mehr Cluster als in dem ursprünglichen Wissensgraphen vorhanden sind, wodurch ein spezifizierterer Wissensgraph bereitgestellt wird. In Aspekten benutzt der Server 60 die Initialisierungsformel eines Voronoi-Zellen-Clusters σ ∝ (ω + 1), wobei der Cluster, der bei Schritt 301 als unterspezifiziert bestimmt wurde, mit Cluster-Schwerpunkten reinitialisiert wird, die äquivalent sind zu: Cluster-Initialisierungsformel: σ ∝ (ω + 1).
-
Bei Schritt 307 bestimmt der Server 60 eine Überspezifikation der Wissensbasis auf Grundlage von einem oder mehreren der Objekt-Cluster des Wissensgraphen mit weniger als einer Schwellenmenge von Datenpunkten. Es sollte verstanden werden, dass Schritt 307 an dem ursprünglichen Wissensgraphen oder an dem in Schritt 306 erzeugten verfeinerten Wissensgraphen durchgeführt werden kann. In Umsetzungen setzt das Cluster-Modul 72 des Servers Schritt 307 um. In Umsetzungen identifiziert der Server 60 Cluster des Wissensgraphen, die überspezifizierte Abschnitte der Wissensbasis und Objekte dieser Cluster aufweisen.
-
Bei Schritt 308 reinitialisiert der Server 60 den Wissensgraphen, um die Objekte der in Schritt 307 identifizierten überspezifizierten Cluster in andere Cluster zu rollen, um einen aktualisierten Wissensgraphen zu produzieren. Mit anderen Worten werden Objekte in einen einzelnen Cluster konsolidiert, die einmal Gruppen in mehreren Cluster waren, um die Objekte zu entspezifizieren und den aktualisierten Wissensgraphen zu produzieren. Schritt 308 kann automatisch durch den Server oder mit manueller Aufsicht umgesetzt werden.
-
Bei Schritt 309 erzeugt der Server 60 eine Ausgabe auf Grundlage des aktualisierten Wissensgraphen von Schritt 308 oder des verfeinerten Wissensgraphen von Schritt 306. Vielfältige Ausgaben können durch den Server 60 erzeugt werden, einschließlich Client-Berichte, die aus den Wissensgraphen der vorliegenden Erfindung extrahierte Informationen oder Anweisungen zum Umsetzen von Computerfunktionen auf Grundlage der aus den Wissensgraphen der vorliegenden Erfindung extrahierten Informationen enthalten. In Aspekten erzeugt der Server einen Bericht auf Grundlage von Wissen aus dem verfeinerten Wissensgraphen und/oder aktualisierten Wissensgraphen und sendet den Bericht über das Netzwerk 50 an eine Client-Datenverarbeitungseinheit 64. Es sollte verstanden werden, dass vielfältige Berichtsumsetzungen durch einen Analysten oder automatisch durch den Server 60 bei der Durchführung von Schritt 309 benutzt werden können und die vorliegende Erfindung nicht durch eine bestimmte Ausgabeumsetzung beschränkt sein soll.
-
4A zeigt einen kommentierten Wissensgraphen 400A für eine Domäne, der Unterspezifikation einer Wissensbasis angibt, gemäß Aspekten der Erfindung. Genauer stellt 4A den Wissensgraphen 400A, der Objekte oder Objektknoten zeigt, die in Clustern (Cluster 1 bis 3) organisiert sind, auf Grundlage eines Modells dar. Das bei der Erzeugung des Wissensgraphen 400A benutzte bestimmte Modell muss für den Zweck dieser Offenbarung nicht beschrieben werden und könnte jedes geeignete Modell zum Erzeugen des Wissensgraphen 400A sein, wie durch einen Datenanalysten bestimmt. 5B stellt ein reales Beispiel dar, bei dem Text-Mining erhellt hat, dass eine gegebene Entität existiert (der Wissensgraph stellt Gruppen von geclusterten Entitäten dar), das extrahierte Objekt jedoch unterspezifiziert ist und ein latente Zergliederungsfähigkeit besitzt. Wie in 4 dargestellt, gibt ein Vergleich eines ersten Clusters von Objekten Cluster 1 mit einem zweiten Cluster von Objekten Cluster 2 und einem dritten Cluster von Objekten Cluster 3 an, dass Cluster 3 eine höhere Dichte und disproportionale Cluster-Größe relativ zu anderen Clustern in derselben Domäne (Cluster 1 und 2) besitzt. In diesem Beispiel trägt Cluster 3 zu 81,5 % der Daten über drei gesamte Entitätstypen bei (dargestellt durch Cluster 1, 2 und 3).
-
4B zeigt einen verfeinerten Wissensgraphen 400B für die Domäne von 4A, der ausreichende Spezifikation der Wissensbasis angibt, gemäß Aspekten der Erfindung. Cluster 3A und 3B stellen ausgewiesene Kind-Entitäten dar, die aus dem unterspezifizierten Cluster 3 von 4A korrekt zergliedert wurden. Cluster 3C stellt Entitäten dar, die zu dem ursprünglichen Cluster 3 von 4A gehören, und aus dem ursprünglichen Cluster 3 von 4A nicht weiter geeignet zergliedert werden konnten.
-
In manchen Fällen wird ein Wissensgraph auf Grundlage eines Modells mit einem zusätzlichen leeren Cluster erzeugt, was angeben kann, dass das zum Erzeugen des Wissensgraphen benutzte Modell ausreichend verfeinert ist und dass es keine fehlenden Entitäten gibt. An den meisten nichttrivialen Datensätzen wird es jedoch nicht möglich sein, alle Entitäten (Objekte) vollständig zu verfeinern.
-
In manchen Fällen wird der Wissensgraph auf Grundlage eines Modells erzeugt, wobei Entitäten überspezifiziert sein werden. Obwohl jede der den Clustern eines solchen Graphen gemeinsamen Entitätsebenen gemeinsame Bezeichnungen innerhalb der Domäne sein können, ist es das Ziel eines Analysten, einen vernünftigen Spezifikationsgrad aufrechtzuerhalten. Es macht keinen Sinn, Entitäten über vernünftige Grenzen hinweg in einem Wissensgraphen zu zergliedern. Der Begriff vernünftige Grenzen, wie hierin verwendet, bezieht sich auf definierte Regeln, wie weit vernünftig gefasst wird. Ein Cluster in einem Wissensgraph kann als Grenze verwendet werden, um vernünftig einzuschränken. Ausführungsformen der Erfindung ermöglichen eine Anpassung an den Grad an Überspezifikation auf Grundlage der Art von Inferenz und vernünftigem Denken, das über den Wissensgraphen durchgeführt wird. In einem Beispiel stellen kleine Cluster eines Wissensgraphen eine Zergliederung bis zu einem Grad dar, der für die vernünftige Denkfähigkeit des Wissensgraphen nicht essentiell ist. In diesem Kontext bedeutet nichtessentiell, dass eine Entität wahrscheinlich nicht mit Instanzdaten bestückt wird und keine signifikante Anzahl von Beziehungen zu anderen Knoten in dem Graphen besitzt (geringe Kohäsion).
-
5A zeigt einen kommentierten Wissensgraphen 500A, der eine Überspezifikation einer Wissensbasis angibt. 5A stellt ein Beispiel dar, wie Überspezifikation in einem Wissensgraphen aussieht, wenn die Clustering-Analyse in der Initialisierungsformel eines Voronoi-Zellen-Clusters verwendet wird: σ ∝ (ω + 1), wie vorstehend erörtert. In dem Beispiel von 5A bezeichnen die Knoten von Cluster 4 generische (unspezifizierte) Entitäten in den Quelldaten (Wissensbasis). Die Knoten von Cluster 3 stellen eine Entität ähnlich den Knoten von Cluster 4 dar, aber mit einem separaten Zergliederungstyp. Die Knoten von Cluster 2 stellen einen weiteren ähnlichen Entitätstyp dar. Die Knoten von Cluster 5 stellen einen überspezifizierten Entitätstyp dar, der auch einen ähnlichen Typ besitzt. Die Erkennung von Überspezifikation gemäß Schritt 307 von 3 beruht nicht lediglich auf der Abwesenheit jeglicher Datenpunkte für einen Entitätstyp. Wenn zum Beispiel ein Cluster leer wäre, würde dies eine Abwesenheit jeglicher Instanz von Daten für den Cluster bezeichnen. Gemäß Ausführungsformen der vorliegenden Erfindung wird eine Schwelle eingerichtet, um Überspezifikation zu bezeichnen. Die Schwelle kann ein vorbestimmter allgemeiner Schwellenwert oder ein für einen Domänentyp spezifischer Schwellenwert sein. In dem Fall, dass jeder Cluster n % von Datenpunkten besitzt (wobei n für den Algorithmus parametrisiert ist), fährt der Algorithmus mit der Initialisierungsformel eines Voronoi-Zellen-Clusters fort.
-
5B stellt eine verfeinerte Version des kommentierten Wissensgraphen von 5 nach der Cluster-Initialisierung dar. In dem Beispiel von 5B wurden die Entitäten von Cluster 4 und 5 von 5A in einen generischen Entitäts-Cluster 5 von 5B zusammengefasst. Ein leerer Cluster 4 ist der in der Zelleninitialisierung eingerichtete n+1-Cluster, der beweist, dass es keine fehlenden Entitätstypen innerhalb der Quelldaten (Wissensbasis) gibt. Als endgültiger Schritt wird eine überspezifizierte Entität aus dem Wissensgraphen entfernt, und jede existierende Instanz von Metadaten wird als die zusammenfassende Entität neu zugewiesen. In dem Fall, dass ein formaler Graph einer Webontologiesprache (Web Ontology Language (OWL)) des World Wide Web Consortium (W3C) verwendet wird, kann die „owl:equivalentTo“-Eigenschaft des Graphen verwendet werden, um zu bezeichnen, dass zwei Entitäten für den Zweck einer Inferenz äquivalent sind. W3C OWL ist eine semantische WEB-Sprache, die gestaltet ist, um ein reiches und komplexes Wissen über Dinge, Gruppen von Dingen und Beziehungen zwischen Dingen darzustellen
-
In Ausführungsformen könnte ein Dienstanbieter anbieten, die hierin beschriebenen Prozesse durchzuführen. In diesem Fall kann der Dienstanbieter die Computerinfrastruktur erzeugen, unterhalten, einsetzen, unterstützen usw., welche die Prozessschritte der Erfindung für einen oder mehrere Kunden durchführt. Diese Kunden können zum Beispiel jedes Geschäft sein, das Technologie verwendet. Im Gegenzug kann der Dienstanbieter eine Bezahlung von dem oder den Kunden unter einem Abonnement und/oder einer Gebührenvereinbarung erhalten, und/oder der Dienstanbieter kann eine Bezahlung aus dem Verkauf von Werbeinhalten an eine oder mehrere Drittparteien erhalten.
-
In noch einer weiteren Ausführungsform stellt die Erfindung ein computerumgesetztes Verfahren zur automatisierten Auflösung von Über- oder Unterspezifikation eines Wissensgraphen bereit. In diesem Fall kann eine Computerinfrastruktur, wie beispielsweise das Computersystem 12 (1), bereitgestellt und ein oder mehrere Systeme zum Durchführen der Prozesse der Erfindung erhalten (z.B. erzeugt, erworben, verwendet, verändert usw.) und für die Computerinfrastruktur eingesetzt werden. Insofern kann der Einsatz eines Systems eines oder mehrere aufweisen von: (1) Installieren von Programmcode auf einer Datenverarbeitungseinheit, wie beispielsweise dem Computersystem 12 (1), von einem computerlesbaren Medium; (2) Hinzufügen einer oder mehrerer Datenverarbeitungseinheiten zur Computerinfrastruktur; und (3) Enthalten und/oder Verändern eines oder mehrerer bestehender Systeme der Computerinfrastruktur, um es der Computerinfrastruktur zu ermöglichen, die Prozesse der Erfindung durchzuführen.
-
In Ausführungsformen weist ein computerumgesetztes Verfahren der vorliegenden Erfindung ein Erkennen von Überverallgemeinerung und Unterspezifikation innerhalb einer Wissensbasis unter Verwendung von Maschinenintelligenz auf. In Aspekten weist das Verfahren ferner auf: als Reaktion auf ein Empfangen eines Clusters eines Wissensgraphen, Bestimmen eines Wertes durch Subtrahieren einer tatsächlichen Aufteilung in dem Cluster von einer hypothetischen Aufteilung; und als Reaktion darauf, dass der Wert größer als oder gleich Null und größer als oder gleich einer Schwellenanzahl ist, Bestimmen von Unterspezifikation. In Umsetzungen enthält das Verfahren ferner als Reaktion auf ein Bestimmen von Unterspezifikation ein Identifizieren von Eltern/Kind-Beziehungen, die in der Wissensbasis latent sind, unter Verwendung eines natürlichen Sprachmusters zur IS-A-Sprachextraktion und ein Erzeugen mehrerer Unterklassen für die identifizierten Eltern-Kind-Beziehungen. In Aspekten enthält das Verfahren auch als Reaktion darauf, nicht in der Lage zu sein, eine latente hierarchische Struktur in der Wissensbasis zu identifizieren, ein Zergliedern der Wissensbasis in Peer-Knoten der Wissensbasis; und ein Durchführen eines Musterabgleichens unter Verwendung natürlicher Sprachtechniken, um Objekte zu identifizieren, die ähnliche Beziehungen zu einer Computerknotenähnlichkeit besitzen. In Aspekten enthält das Verfahren ein Verwenden eines Clustering-Analysierens in einer Initialisierungsformel eines Voronoi-Zellen-Clusters.
-
Die Beschreibungen der vielfältigen Ausführungsformen der vorliegenden Erfindung wurden zu Zwecken der Veranschaulichung vorgelegt, sind jedoch nicht als erschöpfend oder auf die offenbarten Ausführungsformen beschränkt gedacht. Viele Änderungen und Variationen sind für den Fachmann ersichtlich, ohne von dem Umfang und Geist der beschriebenen Ausführungsformen abzuweichen. Die hierin verwendete Terminologie wurde gewählt, um die Grundgedanken der Ausführungsformen, die praktische Anwendung oder technische Verbesserung gegenüber auf dem Markt anzutreffenden Technologien am besten zu erklären oder um anderen Fachleuten ein Verständnis der hierein offenbarten Ausführungsformen zu ermöglichen.