[go: up one dir, main page]

DE102021203300A1 - Computerimplementiertes Verfahren für Schlüsselwortsuche in einem Wissensgraphen - Google Patents

Computerimplementiertes Verfahren für Schlüsselwortsuche in einem Wissensgraphen Download PDF

Info

Publication number
DE102021203300A1
DE102021203300A1 DE102021203300.8A DE102021203300A DE102021203300A1 DE 102021203300 A1 DE102021203300 A1 DE 102021203300A1 DE 102021203300 A DE102021203300 A DE 102021203300A DE 102021203300 A1 DE102021203300 A1 DE 102021203300A1
Authority
DE
Germany
Prior art keywords
keyword
nodes
path set
optimal path
node
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
DE102021203300.8A
Other languages
English (en)
Inventor
Evgeny Kharlamov
Yuxuan Shi
Trung Kien TRAN
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.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
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 Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to DE102021203300.8A priority Critical patent/DE102021203300A1/de
Priority to CN202210325238.6A priority patent/CN115146022A/zh
Publication of DE102021203300A1 publication Critical patent/DE102021203300A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3344Query execution using natural language analysis
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; 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 OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Animal Behavior & Ethology (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Computerimplementiertes Verfahren (300), Einrichtung (200) und ein Computerprogramm für Schlüsselwortsuche in einer Datenmenge, wobei Daten der Datenmenge durch einen Wissensgraphen (100) dargestellt werden, wobei der Wissensgraph (100) Knoten, die Entitäten der Datenmenge darstellen, und Kanten, die Beziehungen zwischen den Entitäten darstellen, umfasst, wobei das Verfahren (300) die folgenden Schritte umfasst:Empfangen (302) einer Schlüsselwortabfrage, umfassend eine Menge von Schlüsselwörtern;Inrangfolgebringen (304) von Knoten des Wissensgraphen basierend auf einem kürzesten Pfad zu Schlüsselwortknoten, wobei ein Schlüsselwortknoten ein Knoten ist, der mit zumindest einem Schlüsselwort der Schlüsselwortabfrage übereinstimmt;Auswählen (306) der kleinsten Menge von Schlüsselwortknoten unter allen Mengen von Schlüsselwortknoten, umfassend zumindest einen Schlüsselwortknoten für jedes Schlüsselwort der Menge von Schlüsselwörtern.Bestimmen (308), basierend auf der kleinsten Menge von Schlüsselwortknoten und basierend auf einer Anzahl von in Rangfolge gebrachten Knoten, einer optimalen Pfadmenge, wobei die optimale Pfadmenge Pfade im Wissensgraphen (100) umfasst, die Knoten verbinden, die mit den Schlüsselwörtern der Schlüsselwortabfrage übereinstimmen und wobei die optimale Pfadmenge optimal bezüglich minimaler Kosten der Pfadmenge ist, wobei die Kosten auf einer Linearkombination des Gesamtgewichts von Knoten der optimalen Pfadmenge und paarweisen semantischen Abständen zwischen den Knoten der optimalen Pfadmenge basieren, undExtrahieren (310) einer Antwort auf die Schlüsselwortabfrage aus der optimalen Pfadmenge.

Description

  • Hintergrund
  • Die Erfindung bezieht sich auf eine Einrichtung und ein Verfahren für Schlüsselwortsuche in einer Datenmenge, wobei Daten der Datenmenge durch einen Wissensgraphen dargestellt werden. Ein Ergebnis der Suche kann automatisch bestimmt werden durch Finden eines Untergraphen, der eine Kostenfunktion optimiert.
  • Offenbarung
  • Eine Ausführungsform bezieht sich auf ein computerimplementiertes Verfahren für Schlüsselwortsuche in einer Datenmenge, wobei Daten der Datenmenge durch einen Wissensgraphen dargestellt werden, wobei der Wissensgraph Knoten, die Entitäten der Datenmenge darstellen, und Kanten, die Beziehungen zwischen den Entitäten darstellen, umfasst, wobei das Verfahren die folgenden Schritte umfasst:
    • Empfangen einer Schlüsselwortabfrage, umfassend eine Menge von Schlüsselwörtern;
    • Inrangfolgebringen von Knoten des Wissensgraphen basierend auf einem kürzesten Pfad zu Schlüsselwortknoten, wobei ein Schlüsselwortknoten ein Knoten ist, der mit zumindest einem Schlüsselwort der Schlüsselwortabfrage übereinstimmt;
    • Auswählen der kleinsten Menge von Schlüsselwortknoten unter allen Mengen von Schlüsselwortknoten, umfassend zumindest einen Schlüsselwortknoten für jedes Schlüsselwort der Menge von Schlüsselwörtern;
    • Bestimmen, basierend auf der kleinsten Menge von Schlüsselwortknoten und basierend auf einer Anzahl von in Rangfolge gebrachten Knoten, einer optimalen Pfadmenge, wobei die optimale Pfadmenge Pfade im Wissensgraphen umfasst, die Knoten verbinden, die mit den Schlüsselwörtern der Schlüsselwortabfrage übereinstimmen und wobei die optimale Pfadmenge optimal bezüglich minimaler Kosten der Pfadmenge ist, wobei die Kosten auf einer Linearkombination des Gesamtgewichts von Knoten der optimalen Pfadmenge und paarweisen semantischen Abständen zwischen den Knoten der optimalen Pfadmenge basieren, und
    • Extrahieren einer Antwort auf die Schlüsselwortabfrage aus der optimalen Pfadmenge.
  • Die kleinste Menge von Schlüsselwortknoten ist die kleinste Menge unter allen Mengen von Schlüsselwortknoten, die zumindest einen Schlüsselwortknoten für jedes Schlüsselwort der Menge von Schlüsselwörtern umfasst.
  • Basierend auf der kleinsten Menge von Schlüsselwortknoten und basierend auf einer Anzahl von in Rangfolge gebrachten Knoten wird eine optimale Pfadmenge bestimmt. Die Anzahl von in Rangfolge gebrachten Knoten kann angegeben sein. Die Anzahl kann beispielsweise in Abhängigkeit von der Größe des Wissensgraphen variieren.
  • Eine Pfadmenge wird als eine Menge von Pfaden betrachtet, die einen gemeinsamen Wurzelknoten mit Knoten verbinden, die mit den Schlüsselwörtern der Schlüsselwortabfrage übereinstimmen.
  • Die optimale Pfadmenge wird als die Menge von Pfaden mit minimalen Kosten betrachtet.
  • Die Antwort auf die Schlüsselwortabfrage basiert auf der optimalen Pfadmenge. Daher ist die Antwort selbst optimal hinsichtlich der minimalen Kosten.
  • Die Kosten der optimalen Pfadmenge basieren auf einer Linearkombination des Gesamtgewichts von Knoten der optimalen Pfadmenge und paarweisen semantischen Abständen zwischen den Knoten der optimalen Pfadmenge.
  • Durch Bestimmen der optimalen Pfadmenge basierend auf der kleinsten Menge von Schlüsselwortknoten und basierend auf einer Anzahl von in Rangfolge gebrachten Knoten verarbeitet das Verfahren nicht jeden Knoten im Wissensgraphen, sondern nur vielversprechende Knoten. Daher kann die Berechnung der Antwort effizient beschleunigt werden, während der Berechnungsaufwand verringert wird.
  • Gemäß einer Ausführungsform stellt das Gesamtgewicht eines Knotens Salienz dar, und/oder der paarweise semantische Abstand zwischen zwei Knoten stellt eine semantische Zusammengehörigkeit dar. Gewichte werden in dem Wissensgraphen zu seinen Knoten und/oder Kanten zugeordnet. Semantische Abstände werden in dem Wissensgraphen zu Paaren seiner Knoten zugeordnet. Die Gewichte und semantischen Abstände werden vorzugsweise vorab berechnet und vorab gespeichert, beispielsweise in einem Hauptspeicher oder einer Datenbank, beispielsweise zusammen mit dem Wissensgraphen.
  • Auffälligere (salientere) Graphenelemente umfassen kleinere Gewichte. Weniger auffällige Graphenelemente umfassen größere Gewichte. Semantischer Abstand sollte nicht mit Graphenabstand verwechselt werden. Tatsächlich können zwei Entitäten, die in der Graphenstruktur nahe beieinander sind, semantisch weit voneinander entfernt sein, z. B. zu nicht verwandten Themen im Wissensgraphen gehören. Stärker zusammengehörende Graphenelemente umfassen einen kleinen semantischen Abstand. Weniger zusammengehörende Graphenelemente umfassen einen größeren semantischen Abstand. Durch Einbeziehen des semantischen Abstands in das Verfahren kann die semantische Zusammengehörigkeit einer Antwort verbessert werden.
  • Das Verfahren löst das Problem des Berechnens von semantisch zusammengehörenden Antworten auf Schlüsselwortabfragen in einer effizienten Weise.
  • Gemäß einer Ausführungsform umfasst der Schritt des Bestimmens einer optimalen Pfadmenge einen iterativen Prozess basierend auf dem Bestimmen einer lokal optimalen Pfadmenge, wobei die lokal optimale Pfadmenge Pfade im Wissensgraphen umfasst, die den Wurzelknoten mit Knoten verbinden, die mit den Schlüsselwörtern der Schlüsselwortabfrage übereinstimmen, und wobei die lokal optimale Pfadmenge optimal hinsichtlich minimaler Kosten der Pfadmenge für den entsprechenden Wurzelknoten ist, wobei der iterative Prozess die folgenden Schritte umfasst:
    • Bestimmen einer Gesamtmindestlänge eines Pfades der lokal optimalen Pfadmenge durch Bestimmen, für jeden Schlüsselwortknoten, des kürzesten Pfades vom entsprechenden Wurzelknoten;
    • Bestimmen einer unteren Grenze der Kosten der lokal optimalen Pfadmenge; Bestimmen der Kosten jedes Pfades, der größer als die Gesamtmindestpfadlänge ist;
    • Vergleichen der Kosten jedes Pfades, der größer als die Gesamtmindestpfadlänge ist, mit der unteren Grenze;
    • Erhalten der Pfadmenge mit den minimalen Kosten als die lokal optimale Pfadmenge.
  • Gemäß einer Ausführungsform umfasst der Schritt des Bestimmens einer optimalen Pfadmenge Folgendes:
    • Erhalten der lokal optimalen Pfadmenge mit den minimalen Kosten als die optimale Pfadmenge.
  • Gemäß einer Ausführungsform wird der Schritt des Bestimmens, für einen Wurzelknoten des Wissensgraphen, einer lokal optimalen Pfadmenge mit zumindest einer Kürzungsstrategie verbessert.
  • Gemäß einer Ausführungsform umfasst der Schritt des Extrahierens einer Antwort aus der optimalen Pfadmenge Folgendes:
    • Zusammenführen der Pfade der optimalen Pfadmenge in einen Untergraphen des Wissensgraphen.
  • Gemäß einer Ausführungsform umfasst der Schritt des Extrahierens einer Antwort aus der optimalen Pfadmenge ferner Folgendes:
    • Entfernen unnötiger Knoten und Kanten aus dem Untergraphen.
  • Weitere Ausführungsformen beziehen sich auf eine Einrichtung zur Schlüsselwortsuche in einer Datenmenge, wobei Daten der Datenmenge durch einen Wissensgraphen dargestellt werden, wobei der Wissensgraph Knoten, die Entitäten der Datenmenge darstellen, und Kanten, die Beziehungen zwischen den Entitäten darstellen, umfasst, wobei die Einrichtung einen Eingang umfasst, der dazu ausgelegt ist, eine Schlüsselwortabfrage zu empfangen, die eine Menge von Schlüsselwörtern umfasst, und dazu ausgelegt ist, Schlüsselwörter auf Knoten des Wissensgraphen abzubilden,
    wobei die Einrichtung ferner einen Prozessor umfasst, wobei der Prozessor ausgelegt ist zum Inrangfolgebringen der Knoten des Wissensgraphen basierend auf einem kürzesten Pfad zu Schlüsselwortknoten, wobei ein Schlüsselwortknoten ein Knoten ist, der mit zumindest einem Schlüsselwort der Schlüsselwortabfrage übereinstimmt; Auswählen der kleinsten Menge von Schlüsselwortknoten unter allen Mengen von Schlüsselwortknoten, umfassend zumindest einen Schlüsselwortknoten für jedes Schlüsselwort der Menge von Schlüsselwörtern; Bestimmen, basierend auf der kleinsten Menge von Schlüsselwortknoten, einer optimalen Pfadmenge, wobei die optimale Pfadmenge Pfade im Wissensgraphen umfasst, die Knoten verbinden, die mit den Schlüsselwörtern der Schlüsselwortabfrage übereinstimmen, und wobei die optimale Pfadmenge optimal hinsichtlich minimaler Kosten der Pfadmenge ist, wobei die Kosten auf einer Linearkombination des Gesamtgewichts von Knoten der optimalen Pfadmenge und paarweisen semantischen Abständen zwischen den Knoten der optimalen Pfadmenge basieren, und Extrahieren einer Antwort auf die Schlüsselwortabfrage aus der optimalen Pfadmenge, und wobei die Einrichtung einen Ausgang umfasst, der dazu ausgelegt ist, die Antwort auf ein Ergebnis der Schlüsselwortabfrage abzubilden, und dazu ausgelegt ist, das Ergebnis auszugeben.
  • Gemäß einer Ausführungsform ist die Einrichtung dazu ausgelegt, Schritte des Verfahrens entsprechend den beschriebenen Ausführungsformen auszuführen.
  • Weitere Ausführungsformen beziehen sich auf ein Computerprogramm für Schlüsselwortsuche in einer Datenmenge, umfassend computerlesbare Anweisungen, die, wenn durch einen Computer ausgeführt, den Computer veranlassen, Schritte des beschriebenen Verfahrens auszuführen.
  • Weitere Ausführungsformen sind aus der folgenden Beschreibung und der Zeichnung ableitbar. In der Zeichnung:
    • 1 stellt einen beispielhaften Wissensgraphen dar;
    • 2 stellt Aspekte einer Einrichtung für Schlüsselwortsuche dar, und
    • 3 stellt Aspekte eines Verfahrens für Schlüsselwortsuche dar.
  • 1 stellt einen beispielhaften Wissensgraphen, WG, 100 dar.
  • Der WG 100 umfasst einen ersten Knoten 102, einen zweiten Knoten 104, einen dritten Knoten 106, einen vierten Knoten 108, einen fünften Knoten 110, einen sechsten Knoten 112, einen siebten Knoten 114, einen achten Knoten 116, einen neunten Knoten 118, einen zehnten Knoten 120, einen elften Knoten 122 und einen zwölften Knoten 124. Eine Kante 126 des WG 100 beginnt beim Knoten 104 und endet beim Knoten 102. Eine Kante 128 des WG 100 beginnt beim Knoten 106 und endet beim Knoten 104. Eine Kante 130 des WG 100 beginnt beim Knoten 106 und endet beim Knoten 108. Eine Kante 132 des WG 100 beginnt beim Knoten 108 und endet beim Knoten 110. Weitere Kanten des WG 100 sind Kante 134 zwischen dem Knoten 104 und dem Knoten 112, Kante 136 zwischen dem Knoten 108 und dem Knoten 114, Kante 138 zwischen dem Knoten 108 und dem Knoten 116, Kante 140 zwischen dem Knoten 118 und dem Knoten 112, Kante 142 zwischen dem Knoten 112 und dem Knoten 120, Kante 144 zwischen dem Knoten 114 und dem Knoten 122, die Kante 146 zwischen dem Knoten 114 und dem Knoten 124, Kante 148 zwischen dem Knoten 114 und dem Knoten 116 und Kante 150 zwischen dem Knoten 120 und dem Knoten 122.
  • Der WG 100 kann mehr oder weniger Knoten und/oder mehr oder weniger Kanten umfassen. Im Beispiel stellt der WG 100 beispielhaftes Wissen dar. Zur Analyse von Daten aus anderen Gebieten, insbesondere technischen Gebieten, können entsprechende WGen verwendet werden.
  • In dem Beispiel werden die Informationen auf die Knoten und die Kanten entsprechend der folgenden Abbildung von Knotenreferenznummern auf Schlüsselwort und der folgenden Abbildung von Kantenreferenzzeichen auf Schlüsselwort abgebildet.
  • 102
    Republican Party (Republikanische Partei)
    104
    George H. W. Bush
    106
    Anne Hutchinson
    108
    Franklin D. Roosevelt
    110
    John Aspinwall Roosevelt
    112
    Barbara Bush
    114
    James Roosevelt
    116
    Democratic Party (Demokratische Partei)
    118
    The After Party: The last Party 3
    120
    Mercedes
    122
    Germany (Deutschland)
    124
    World War II (Zweiter Weltkrieg)
    126
    party (Partei)
    128
    descendant (Nachfahre)
    130
    descendant (Nachfahre)
    132
    child (Kind)
    134
    grandchild (Enkelkind)
    136
    child (Kind)
    138
    party (Partei)
    140
    starring (Hauptrolle)
    142
    drives (fährt)
    144
    visited (besuchte)
    146
    battle (kämpfen)
    148
    party (Partei)
    150
    made in (hergestellt in)
  • Der WG 100 wird in dem Beispiel als eine Datenmenge für Schlüsselwortsuche in der Datenmenge verwendet. Die Erfindung ist nicht auf Schlüsselwörter beschränkt, die für einen Menschen lesbar oder verstehbar sind. Allgemeiner bezieht sich der Begriff Schlüsselwort in diesem Kontext auf ein beliebiges Symbol oder Muster in den Daten, das mit einem entsprechenden WG analysiert werden kann.
  • Ein erster Untergraph 152, der ein beispielhaftes Ergebnis der Schlüsselwortsuche darstellt, umfasst den zweiten Knoten 104, den dritten Knoten 106, den vierten Knoten 108, den sechsten Knoten 112, den siebten Knoten 114 und die Kanten zwischen diesen Knoten. Der erste Untergraph 152 in diesem Beispiel stellt eine Antwort auf eine Abfrage dar, die durch ein erstes Schlüsselwort „Barbara Bush“ und ein zweites Schlüsselwort „James Roosevelt“ dargestellt wird.
  • Ein zweiter Untergraph 154, der ein weiteres beispielhaftes Ergebnis der Schlüsselwortsuche darstellt, umfasst den sechsten Knoten 112, den siebten Knoten 114, den zehnten Knoten 120 und den elften Knoten 122 und die Kanten zwischen diesen Knoten. Der zweite Untergraph 154 in diesem Beispiel stellt eine weitere Antwort auf die Abfrage dar, die durch die Schlüsselwörter „Barbara Bush“ und „James Roosevelt“ dargestellt wird.
  • Aspekte einer Einrichtung 200 für Schlüsselwortsuche in der Datenmenge sind in 2 dargestellt.
  • Die Einrichtung 200 umfasst einen Eingang 202, einen Prozessor 204 und einen Ausgang 206. Der Eingang 202 im Beispiel stellt eine Schnittstelle für Schlüsselwörter der Daten bereit, nach denen gesucht werden soll. Der Prozessor 204 ist ausgelegt zum Bestimmen des ersten Untergraphen 152 und/oder des zweiten Untergraphen 154. Der Ausgang 206 ist dazu ausgelegt, die Antwort auf ein Ergebnis der Schlüsselwortabfrage abzubilden und dazu ausgelegt, das Ergebnis der Schlüsselwortsuche auszugeben.
  • Der WG 100 kann auf Speicher 208 in der Einrichtung 200 gespeichert sein. Der WG 100 kann auf Speicher gespeichert sein, der außerhalb der Einrichtung 200 ist. Datenverbindungen verbinden den Eingang 200 und den Prozessor 204, den Ausgang 206 und den Prozessor 204 und den Speicher 208 und den Prozessor 204. Computerlesbare Anweisungen können im Speicher 208 oder auf einem unterschiedlichen Speicher gespeichert sein. Der Prozessor 204 ist in dem Beispiel ausgelegt zum Ausführen der computerlesbaren Anweisungen zum Durchführen der Schlüsselwortsuche gemäß dem Verfahren, das nachfolgend Bezug nehmend auf 3 beschrieben wird.
  • Das Verfahren für Schlüsselwortsuche wird für einen Wissensgraphen G = 〈V, E〉 beschrieben, wobei V eine Menge von n numerischen Darstellungen von Knoten v1 ..., vn ist und E ⊆ V × V eine Menge von m numerischen Darstellungen von gerichteten Kanten ist, die Beziehungen zwischen Entitäten darstellen, die durch die Knoten dargestellt werden. Entitäten und Beziehungen können mit Text, z. B. ihren Namen, bezeichnet werden. Die Kanten im Graphen können in unterschiedliche Richtungen ausgerichtet sein. Im beispielhaften WG 100 ist n = 12 und m = 13.
  • Die Schlüsselwortsuche basiert auf einer Schlüsselwortabfrage Q = (k1,...,kg}, die die g Schlüsselwörter k1, ..., kg umfasst.
  • In einem Schritt 302 wird eine Schlüsselwortabfrage Q, die eine Menge von Schlüsselwörtern k1, ..., kg umfasst, empfangen. Die Schlüsselwörter werden auf numerische Darstellungen von Knoten abgebildet. In dem Beispiel werden die g Schlüsselwörter k1, ...,kg auf g numerische Darstellungen von Knoten v1...,vg abgebildet. Ein Schlüsselwort kann auf mehrere Knoten abgebildet werden. In einem Aspekt wird zumindest eines der g Schlüsselwörter k1,...,kg auf zumindest eine numerische Darstellung von Knoten v1,...,vg abgebildet.
  • Um ein Ergebnis für jedes der g Schlüsselwörter k1,...,kg zu erhalten, wird jedes der g Schlüsselwörter k1,...,kg auf zumindest eine numerische Darstellung von Knoten v1...,vg abgebildet. Wenn ein Schlüsselwort nicht auf irgendeinen Knoten im Wissensgraphen abgebildet werden kann, kann das Ergebnis leer sein.
  • Eine Schlüsselwortabgleichsfunktion kann verwendet werden, um ein Schlüsselwort auf einen beliebigen Knoten des Wissensgraphen abzubilden. Beispielsweise kann die Abgleichsfunktion auf wörtlichen Bezeichnungen basieren, die ein Schlüsselwort umfassen. Allerdings ist die Erfindung nicht auf irgendeine spezifische Abbildungsfunktion beschränkt.
  • Gemäß dem Beispiel umfasst die Abfrage g = 2 Schlüsselwörter, und das erste Schlüsselwort k1 =„Barbara Bush“ wird auf die numerische Darstellung des Knotens 112 abgebildet, und das zweite Schlüsselwort k2 =„James Roosevelt“ wird auf die numerische Darstellung von Knoten 114 abgebildet.
  • In einem Aspekt können die Funktionstreffer: K 2 V
    Figure DE102021203300A1_0001
    verwendet werden, um eine Menge IK von Schlüsselwörtern auf eine Untermenge der numerischen Darstellungen der Knoten des Wissensgraphen G abzubilden. Die konkrete Umsetzung von Treffern, d. h. die Art und Weise des Abgleichens von Schlüsselwörtern mit Bezeichnungen von Entitäten steht nicht im Fokus dieser Offenbarung. In diesem Aspekt werden Treffer(ki) als Ki für 1 ≤ i ≤ g bezeichnet. Wobei Ki die numerischen Darstellungen einer Menge von Knoten sind, auf die das Schlüsselwort abgebildet wird, auch Schlüsselwortknoten genannt. Das Verfahren ist nicht auf diese Art und Weise der Abbildung beschränkt.
  • In der Offenbarung wird Kantenabbildung ausgelassen, Kantenabbildung kann aber durch Unterteilen der Kanten in Knotenabbildung transformiert werden. Insbesondere ergibt die Unterteilung einer Kante (u, v) einen neuen Knoten w mit den Bezeichnungen der Kante (u, v) und ersetzt dann (u, v) durch zwei neue Kanten (u, w) und (w, v).
  • Für ein gegebenes G = (V, E) ist eine Antwort auf Q definiert als ein Untergraph von G, bezeichnet durch T = 〈VT, ET〉, wobei der Untergraph T die folgenden Anforderungen erfüllt. (1) T ist zusammenhängend. (2) T enthält zumindest einen Schlüsselwortknoten aus jedem Ki für 1 ≤ i ≤ g, d. h. TT n Ki ≠ Ø. (3) T ist strukturell minimal für (1) und (2), d. h. keiner seiner echten Untergraphen erfüllt sowohl (1) als auch (2). Strukturelle Minimalität zeigt an, dass T eine Baumstruktur aufweist, wobei Blattknoten Schlüsselwortknoten sind.
  • Der Prozess des Berechnens der Antwort wird im Folgenden beschrieben.
  • In einem Schritt 304 werden Knoten des Wissensgraphen basierend auf einem kürzesten Pfad zu Schlüsselwortknoten in eine Rangfolge gebracht, wobei ein Schlüsselwortknoten ein Knoten ist, der mit zumindest einem Schlüsselwort der Schlüsselwortabfrage übereinstimmt;
  • In einem Schritt 306 wird eine kleinste Menge von Schlüsselwortknoten Kimin. unter allen Mengen von Schlüsselwortknoten, umfassend zumindest einen Schlüsselwortknoten für jedes Schlüsselwort der Menge von Schlüsselwörtern, ausgewählt.
  • In einem Schritt 308 wird eine optimale Pfadmenge im Wissensgraphen G basierend auf der kleinsten Menge von Schlüsselwortknoten Kimin und basierend auf einer Anzahl von in eine Rangfolge gebrachten Knoten bestimmt.
  • Die Anzahl von in Rangfolge gebrachten Knoten kann angegeben sein. Die Anzahl kann beispielsweise in Abhängigkeit von der Größe des Wissensgraphen variieren. Beispielsweise kann, für einen Wissensgraphen mit etwa 30.000 und 3.000.000 Knoten, diese Anzahl von 5 bis 20 reichen. Die Anzahl kann anhand von Experimenten angegeben werden. Es ist anzumerken, dass eine beliebige andere Anzahl ausgewählt werden kann.
  • Die optimale Pfadmenge umfasst Pfade im Wissensgraphen, die Knoten verbinden, die mit den Schlüsselwörtern der Schlüsselwortabfrage übereinstimmen, und wobei die optimale Pfadmenge optimal hinsichtlich minimaler Kosten der Pfadmenge ist, wobei die Kosten auf einer Linearkombination des Gesamtgewichts von Knoten der optimalen Pfadmenge und paarweisen semantischen Abständen zwischen den Knoten der optimalen Pfadmenge basieren.
  • Die optimale Pfadmenge ist optimal hinsichtlich minimaler Kosten der Pfadmenge, wobei die Kosten auf einer Linearkombination des Gesamtgewichts von Knoten der optimalen Pfadmenge und paarweisen semantischen Abständen zwischen den Knoten der optimalen Pfadmenge basieren.
  • Für G = 〈V, E〉 bildet eine Gewichtungsfunktion Knoten auf nicht-negative reelle Zahlen ab, bezeichnet durch wt: V ↦ ℝ≥0.
  • Eine semantische Abstandsfunktion sd bildet Paare von Knoten auf nicht-negative reelle Zahlen ab, bezeichnet durch sd: V × V ↦ ℝ≥0. Diese pseudometrische Funktion erfüllt, für alle u, v, w ∈ V: s d ( v , v ) = 0,
    Figure DE102021203300A1_0002
    d. h. Ununterscheidbarkeit von identischen Werten, s d ( u , v ) = s d ( v , u ) ,
    Figure DE102021203300A1_0003
    d. h. Symmetrie und s d ( u , v ) s d ( u , w ) + s d ( w , v ) ,
    Figure DE102021203300A1_0004
    d. h. Dreiecksungleichung.
  • Die Messung des semantischen Abstands kann unabhängig von der Graphenstruktur und den Knotengewichten sein. Insbesondere unterscheidet er sich vom Graphenabstand, namentlich der Anzahl von Kanten eines kürzesten Pfades. Beispielsweise können angrenzende Knoten semantisch entfernt voneinander sein.
  • Die Kosten einer Antwort T = 〈VT, ET〉 sind das Gesamtgewicht ihrer Knoten und ihrer paarweisen semantischen Abstände: c o s t ( T ) = α v V T w t ( v ) + ( 1 α ) v i , v j V T   i < j s d ( v i , v j ) ,
    Figure DE102021203300A1_0005
    wobei α ∈ [0,1] ein Parameter ist. In der Kostengleichung stellt das erste Element die Salienz der Knoten von T dar, und das zweite Element charakterisiert ihre semantische Zusammengehörigkeit. Das Verfahren erfordert keine spezifische Implementierung des Gewichts wt und des semantischen Abstands sd. Das Gewicht wt und die Art und Weise, wie der semantische Abstand sd bestimmt wird, kann so ausgewählt werden, dass die Relevanz der Abfrage, die Zentralität in der Graphenstruktur, die Semantik in den Bezeichnungen usw. berücksichtigt werden. Edmund Ihler, 1991, The Complexity of Approximating the Class Steiner Tree Problem, in WG 1991, 85-96; https://doi.org/10.1007/3-540-55121-2_8 bietet ein Beispiel für das Gewicht wt; Gaurav Bhalotia, Arvind Hulgeri, Charuta Nakhe, Soumen Chakrabarti und S. Sudarshan, 2002, Keyword Searching and Browsing in Databases using BANKS, in ICDE 2002, 431-440; https://doi.org/10.1109/ICDE.2002.994756 bietet ein Beispiel für den semantischen Abstand sd. Kleine Gewichte repräsentieren Salienz, und kleiner semantischer Abstand repräsentiert Zusammengehörigkeit. Die Berechnung des Gewichts wt und des semantischen Abstands sd können unabhängig voneinander sein. Im Wissensgraphen werden Gewichte zu ihren Knoten zugeordnet. Gewichte von Knoten werden beispielsweise vorab berechnet, z. B. unter Verwendung von normalisiertem pageRank.
  • Im Wissensgraphen sind Kanten beispielsweise vorab berechnete Beziehungen zwischen Knoten.
  • Im Wissensgraphen werden semantische Abstände beispielsweise für Paare seiner Knoten vorab berechnet.
  • Ein Ziel des Verfahrens 300 ist, eine optimale Antwort zu bestimmen, wobei eine optimale Antwort eine Antwort ist, die die Kosten minimiert. Das Verfahren 300 erweitert das bekannte GST-Mindestgewichtsproblem, beispielsweise beschrieben in Edmund Ihler, 1991, The Complexity of Approximating the Class Steiner Tree Problem, durch Einführen von quadratischen Termen sd(vi, vj) in die Zielfunktion, die zusätzliche Kosten darstellen, die zu bezahlen sind, wenn zwei Knoten vi und vj beide in T enthalten sind.
  • Gemäß einem Aspekt der Offenbarung können die Schritte 304 bis 308 durch den folgenden Algorithmus 1 implementiert werden, umfassend die Zeilen 1 bis 14: Eingabe :   G = V , E  und  Q = { k 1 , , k g }
    Figure DE102021203300A1_0006
    Figure DE102021203300A1_0007
  • Der Schritt 308 und der Algorithmus OptimizedRPS(G, Q, r) aus Zeile 10 werden im Folgenden ausführlich und Bezug nehmend auf Algorithmus 2 beschrieben:
    • Der Schritt 308 des Bestimmens einer optimalen Pfadmenge umfasst einen iterativen Prozess 308a basierend auf dem Bestimmen einer lokal optimalen Pfadmenge, wobei die lokal optimale Pfadmenge Pfade im Wissensgraphen umfasst, die einen Wurzelknoten der kleinsten Menge von Schlüsselwortknoten mit Knoten verbinden, die mit den Schlüsselwörtern der Schlüsselwortabfrage übereinstimmen, und wobei die lokal optimale Pfadmenge optimal hinsichtlich minimaler Kosten der Pfadmenge für den entsprechenden Wurzelknoten ist, wobei der iterative Prozess 308a die folgenden Schritte umfasst:
      • Bestimmen einer Gesamtmindestpfadlänge der lokal optimalen Pfadmenge durch Bestimmen, für jeden Schlüsselwortknoten, des kürzesten Pfades aus dem entsprechenden Wurzelknoten;
      • Bestimmen einer unteren Grenze der Kosten der lokal optimalen Pfadmenge; Bestimmen der Kosten jedes Pfades, der größer als die
      • Gesamtmindestpfadlänge ist;
      • Vergleichen der Kosten jedes Pfades, der größer als die
      • Gesamtmindestpfadlänge ist, mit der unteren Grenze;
      • Erhalten der Pfadmenge mit minimalen Kosten als die lokal optimale Pfadmenge.
  • Der Schritt 308 des Bestimmens einer optimalen Pfadmenge umfasst ferner Folgendes:
    • Erhalten der lokal optimalen Pfadmenge mit den minimalen Kosten als die optimale Pfadmenge.
  • In G = (V, E) ist eine RPS eine Menge von Pfaden, die relevant für eine Abfrage Q = {k1, ... ,kg} sind. Speziell ist, bei gegebenem r ∈ V, das Wurzelknoten genannt wird, eine lokal optimale Pfadmenge r-RPS, bezeichnet durch Pr = {P1,...,Pg}, eine Menge von g Pfaden, sodass für 1 ≤ i ≤ g jedes Pi = (VPi , EPi ) ein r - Ki-Pfad ist, oder, noch spezieller, ein r - vi-Pfad, der r mit einem Schlüsselwortknoten vi ∈ Ki verbindet. Es ist anzumerken, dass es für i ≠ j möglich ist, dass Ki ∩ Kj ≠ 0 und Pi = Pj.
  • Kosten einer r-RPS, bezeichnet durch Pr = {P1,..., Pg} mit Pi = 〈VPi , EPi 〉 für 1 ≤ i ≤ g, ist durch die folgende Kostenfunktion gegeben: p c o s t ( P r ) = α ( w t ( r ) + P i P r v V P i { r } w t ( v ) ) + ( 1 α ) v n u m ( P r ) 2 P i P r v V P i { r } s d ( r , v ) .
    Figure DE102021203300A1_0008
  • Die Funktion vnum zählt die Knoten in einer RPS. Sie zählt den Wurzelknoten r absichtlich nur einmal: v n u m ( P r ) = 1 + P i P r | V P i \ { r } | .
    Figure DE102021203300A1_0009
  • Für jeden Wurzelknoten r ∈ V wird eine lokal optimale Pfadmenge r-RPS, d. h. eine r-RPS, die pcost minimiert, wie folgt bestimmt: P r m i n = a r g   min P r   p c o s t ( P r )
    Figure DE102021203300A1_0010
  • Gemäß einem Aspekt der Offenbarung wird die folgende Variante von pcost definiert: p c o s t ' ( P r ) = p c o s t ( P r ) α w t ( r )
    Figure DE102021203300A1_0011
  • Da αwt(r) in pcost jeder r-RPS auftaucht, ist Minimieren der pcost'-Funktion äquivalent zum Minimieren von pcost: P r m i n = a r g   min P r   p c o s t ( P r ) = a r g   min P r   p c o s t ' ( P r ) .
    Figure DE102021203300A1_0012
  • Das Minimieren der pcost'-Funktion berechnet die Summe der Kosten einer Menge von Pfaden.
  • pcost' enthält allerdings vnum(Pr), was von Pr abhängt und beim Berechnen eines Pfades mit minimalen Kosten unbekannt ist.
  • Daher wird jeder mögliche Wert von vnum(Pr) berücksichtigt und wird daher in jedem Fall eine Konstante.
  • Pr unterliegt beispielsweise vnum(Pr) = n. Für einen Pfad P = 〈VP, Ep〉, der mit dem Wurzelknoten r beginnt, ist definiert: p l n ( P ) = v V P \ { r } α w t ( v ) + n 1 α 2 s d ( r , v ) .
    Figure DE102021203300A1_0013
  • Für v ∈ V wird das Minimum pln von r-v-Pfaden, die exakt m Kanten umfassen, iterativ wie folgt berechnet: p d n [ v ] [ m ] = { 0 m = 0, v = r , m = 0, v r min u N ( v ) p d n [ u ] [ m 1 ] + α w t ( v ) + n 1 α 2 s d ( r , v ) m > 0
    Figure DE102021203300A1_0014
    wobei N(v) die Menge der Nachbarn von v in G ist. Das Minimum pln von r-Ki-Pfaden, die exakt m Kanten umfassen, wird bezeichnet durch p d k n [ i ] [ m ] = min v K i p d n [ v ] [ m ]
    Figure DE102021203300A1_0015
  • Für 1 ≤ 1 ≤ g seien QI ⊆ Q die ersten I Schlüsselwörter in Q: Q I = { k 1 , , k I } .
    Figure DE102021203300A1_0016
  • Die minimalen pcost' von r-RPSen, die insgesamt exakt m Kanten enthalten und relevant für Q, sind (d. h. I Pfade umfassen - einen r-Ki -Pfad für jedes 1 ≤ i ≤ I) werden iterativ berechnet durch: p c n [ I ] [ m ] = { p d k n [ I ] [ m ] I = 1 min 0 x m i n { m , | V | 1 } p c n [ I 1 ] [ m x ] + p d k n [ I ] [ x ] I > 1.
    Figure DE102021203300A1_0017
  • Da Pr mit vnum(Pr) = n insgesamt n - 1 Kanten enthält, wird pcn [g] [n - 1] berücksichtigt. Schließlich wird über alle möglichen Werte von vnum(Pr), erhalten. min P r   p c o s t ' ( P r ) = min 1 n 1 + g ( | V | 1 ) p c n [ g ] [ n 1 ]
    Figure DE102021203300A1_0018
  • Für jedes n wird pcn [g] [n - 1] berechnet, und Pr - die r-RPS mit tatsächlich minimalem pcost' mit vnum = n - wird rekonstruiert. Die Rekonstruktion kann durch Nachschlagen von zusätzlichen Feldern implementiert werden, in denen berechnete Pfade mit minimalen Kosten und RPSen in einer Standardweise aufgezeichnet werden.
  • Abschließend wird P r m i n
    Figure DE102021203300A1_0019
    aktualisiert, und die r-RPS mit lokal minimalem pcost wird als optimale Pfadmenge P# zurückgegeben, wobei P# die RPS mit global minimalem pcost bezeichnet.
  • Dies erfolgt durch Schritt 308 des Erhaltens der lokal optimalen Pfadmenge r-RPS mit den minimalen Kosten als die optimale Pfadmenge P#.
  • Gemäß einem Aspekt der Offenbarung kann der Schritt 308, insbesondere der iterative Prozess 308a von Schritt 308, durch den folgenden Algorithmus 2 implementiert werden, umfassend die Zeilen 1 bis 27: Eingabe :   G = V , E ,   Q = { k 1 , , k g } ,
    Figure DE102021203300A1_0020
    und r ∈ V Ausgabe: eine r-RPS P r m i n
    Figure DE102021203300A1_0021
    mit lokal minimalem pcost
    Figure DE102021203300A1_0022
  • Zeilen 3 bis 5 des Algorithmus 2 beziehen sich auf den Schritt des Bestimmens einer Gesamtmindestlänge eines Pfades der lokal optimalen Pfadmenge durch Bestimmen, für jeden Schlüsselwortknoten, des kürzesten Pfades vom entsprechenden Wurzelknoten.
  • Zeile 6 bezieht sich auf den Schritt des Bestimmens einer unteren Grenze der Kosten der lokal optimalen Pfadmenge. Dies ist eine Maßnahme, um große Werte von n zu kürzen, siehe Zeilen 1 bis 5. Im oben angezeigten beispielhaften Algorithmus für Schritt 306 endet die äußerste Schleife in Zeile 7 mit n = (|V| - 1), was ein großer Wert sein kann. Eine untere Grenze für pcost(Pr) mit vnum(Pr) = n zum Kürzen großer Werte von n wird berechnet. pcost(Pr) ist gegeben durch p c o s t ( P r ) = α w t ( r ) + p c o s t ' ( P r ) p c o s t ' ( P r ) = P i P r v V P i \ { r } α w t ( v ) + n 1 α 2 s d ( r , v ) .
    Figure DE102021203300A1_0023
  • Die Funktion pcost' berechnet die Summe der Kosten von g Pfaden - ein r-Ki-Pfad für jedes 1 ≤ i ≤ g.
  • Durch Abbilden der Kosten eines r-Ki-Pfades in die Länge, d. h. das Gesamtkantengewicht, eines r-Ki-Pfades in einem kantengewichteten Graphen kann seine untere Grenze erhalten werden durch Berechnen der Länge eines kürzesten Pfades, d. h. eines r-Ki-Pfades mit minimalem Gewicht in diesem kantengewichteten Graphen. Dies kann implementiert werden, indem der Algorithmus wie folgt erweitert wird. Zum Beginn der äußersten Schleife wird ein kantengewichteter, gerichteter Graph Gr,n = 〈Vr,n,〉 Er,n〉, wobei Vr,n = V und jede Kante (u, v) ∈ E zwei gerichteten Kanten (u, v), (v, u) ∈ Er,n entspricht, erzeugt. Jede gerichtete Kante (u, v) ∈ Er,n wird gewichtet durch α w t ( v ) + n 1 α 2 s d ( r , v ) .
    Figure DE102021203300A1_0024
  • Der Dijkstra-Algorithmus kann auf Gr,n verwendet werden, um einen r-Ki-Pfad mit minimalem Gewicht für jedes 1 ≤ i ≤ g zu berechnen, beeichnet durch Pr,n,i. Er hat das kleinste Gesamtkantengewicht unter r-Ki-Pfaden in Gr,n, bezeichnet durch dr,n,i. Daher ist eine untere Grenze für pcost(Pr) mit vnum(Pr) = n gegeben durch D r , n = α w t ( r ) + 1 i g d r , n , i .
    Figure DE102021203300A1_0025
  • Dr,n erhöht sich, wenn sich n erhöht, daher kann die folgende Ungleichung geprüft werden: D r , n p c o s t ( P r m i n ) .
    Figure DE102021203300A1_0026
  • Wenn sie für die aktuellen n und P r m i n
    Figure DE102021203300A1_0027
    gilt, wird die äußerste Schleife unterbrochen, und das aktuelle P r m i n
    Figure DE102021203300A1_0028
    wird zurückgegeben, da es für die aktuellen und größeren Werte von n, d. h. vnum(Pr), kein Pr mit einem kleineren pcost gibt. In ähnlicher Weise kann die folgende Ungleichung geprüft werden: D r , n p c o s t ( P # ) .
    Figure DE102021203300A1_0029
  • Wenn sie für die aktuellen n und P# gilt, was die aktuelle RPS mit global minimalem pcost in Algorithmus QO ist, wird die äußerste Schleife unterbrochen, und das aktuelle P r m i n
    Figure DE102021203300A1_0030
    wird zurückgegeben, siehe Zeilen 26 und 27.
  • Zeilen 7 bis 22 beziehen sich auf den Schritt des Bestimmens der Kosten jedes Pfades, der größer als die Gesamtmindestpfadlänge ist. Die Schleife in Zeile 7 beginnt mit n = Lr. Dies ist eine Maßnahme, um kleine Werte von n zu kürzen, siehe Zeilen 1 bis 5. Eine untere Grenze für vnum(Pr) (d. h. n) zum Kürzen kleiner Werte von n wird berechnet. Zum Beginn des Algorithmus kann eine Breitensuche von G, beginnend mit r, zum Berechnen der kleinsten Anzahl von Kanten in r-Ki-Pfaden für jedes 1 ≤ i ≤ g, bezeichnet durch lr,i, eingefügt werden. Eine untere Grenze für vnum(Pr) ist gegeben durch L r = 1 + 1 i g l r , i .
    Figure DE102021203300A1_0031
  • Zeile 23 bezieht sich auf den Schritt des Vergleichens der Kosten jedes Pfades, der größer als die Gesamtmindestpfadlänge ist, mit der unteren Grenze.
  • Zeile 24 bezieht sich auf den Schritt des Erhaltens der Pfadmenge mit den minimalen Kosten als die lokal optimale Pfadmenge.
  • Der Schritt 308 des Bestimmens einer optimalen Pfadmenge umfasst ferner Folgendes:
    • Erhalten der lokal optimalen Pfadmenge mit den minimalen Kosten als die optimale Pfadmenge. Dies wird durch die Zeilen 11 und 12 von Algorithmus 1 implementiert.
  • Gemäß einer weiteren Kürzungsstrategie kann der r-Ki-Pfad mit minimalem Gewicht für jedes 1 ≤ i ≤ g, bezeichnet durch Pr,n,i, ausgenutzt werden. Die Anzahl von Kanten in Pr,n,i ist gegeben durch die Anzahl ir,n,i.
  • Es wird davon ausgegangen, dass eine r-RPS Pr mit vnum(Pr) = n für das aktuelle n eine r-RPS mit lokal minimalen Kosten ist. Wenn für irgendein 1 ≤ i ≤, der r-Ki-Pfad Pi ∈ Pr mehr als lr,n,i Kanten enthält, wird Pi ersetzt durch Pr,n,i, um eine andere r-RPS Pr' zu erzeugen. Ihr definiertes Gesamtkantengewicht ist nicht größer als das von Pr, und ihr vnum ist kleiner. Daher ist pcost(Pr') ≤ pcost(Pr), d. h. Pr' ist auch eine r-RPS mit lokal minimalem pcost, die und/oder irgendeine andere r-RPS mit lokal minimalem pcost in vorherigen Iterationen der äußersten Schleife für kleinere Werte von n gefunden wurde. Es ist daher nicht notwendig, Pr für das aktuelle n zu berücksichtigen. Dies kann implementiert werden, indem der Algorithmus wie folgt erweitert wird: Einengen der Bereiche von m und x: m  to  m i n { n 1, | V | 1, l r , n , i ,
    Figure DE102021203300A1_0032
    m  to  m i n { n 1, 1 i I l r , n , i ,
    Figure DE102021203300A1_0033
    max { 0, m 1 i I 1 l r , n , i } x min { m , | V | 1, l r , n , I } ,
    Figure DE102021203300A1_0034
    m to  m i n { n 1, | V | 1, l r , n , i ,
    Figure DE102021203300A1_0035
    m to  m i n { n 1, | V | 1, max 1 i g l r , n , i } .
    Figure DE102021203300A1_0036
  • Das Verfahren umfasst ferner einen Schritt 310 des Extrahierens einer Antwort auf die Schlüsselwortabfrage aus der optimalen Pfadmenge P#.
  • Die Antwort ist definiert als T # = V T # , E T #
    Figure DE102021203300A1_0037
  • Der Schritt 310 wird ausführlicher bezüglich eines Schrittes 312 des Zusammenführens der Pfade der optimalen Pfadmenge in einem Untergraphen des Wissensgraphen und einen Schritt 314 des Entfernens unnötiger Knoten und Kanten aus dem Untergraphen beschrieben.
  • Die optimale Pfadmenge P# wird wie folgt in eine Antwort T# umgewandelt. Alle r-vi-Pfade in Pr werden in einen Untergraphen T# aus G zusammengeführt, der über einen Wurzelknoten r zusammenhängt und vi e Ki für 1 ≤ i ≤ g enthält.
  • Gemäß den oben beschriebenen Anforderungen für eine Antwort T, muss T die Anforderung erfüllen, strukturell minimal zu sein. Daher ist die Antwort T# eine optimale Antwort, wenn sie strukturell minimal ist. Wenn nicht, wird der Schritt 314 des Entfernens von unnötigen Knoten und Kanten aus dem Untergraphen wiederholt verarbeitet, bis dieser strukturell minimal wird.
  • Gemäß dem in 1 dargestellten beispielhaften Wissensgraphen 100 wird eine Antwort auf die Suchabfrage beispielsweise durch den Untergraphen 152 gegeben. Der Untergraph 152 ist semantisch zusammenhängend, verglichen mit dem anderen Untergraphen 154, der semantisch nicht zusammenhängend ist. Daher ist der Untergraph 152 die bevorzugte Antwort gemäß dieser Ausführungsform.
  • In einem Schritt 316 kann die Antwort auf ein Ergebnis der Schlüsselwortabfrage abgebildet werden, und das Ergebnis der Schlüsselwortsuche kann ausgegeben werden.

Claims (11)

  1. Computerimplementiertes Verfahren (300) für Schlüsselwortsuche in einer Datenmenge, wobei Daten der Datenmenge durch einen Wissensgraphen (100) dargestellt werden, wobei der Wissensgraph (100) Knoten, die Entitäten der Datenmenge darstellen, und Kanten, die Beziehungen zwischen den Entitäten darstellen, umfasst, wobei das Verfahren (300) die folgenden Schritte umfasst: Empfangen (302) einer Schlüsselwortabfrage, umfassend eine Menge von Schlüsselwörtern; Inrangfolgebringen (304) von Knoten des Wissensgraphen basierend auf einem kürzesten Pfad zu Schlüsselwortknoten, wobei ein Schlüsselwortknoten ein Knoten ist, der mit zumindest einem Schlüsselwort der Schlüsselwortabfrage übereinstimmt; Auswählen (306) der kleinsten Menge von Schlüsselwortknoten unter allen Mengen von Schlüsselwortknoten, umfassend zumindest einen Schlüsselwortknoten für jedes Schlüsselwort der Menge von Schlüsselwörtern; Bestimmen (308), basierend auf der kleinsten Menge von Schlüsselwortknoten und basierend auf einer Anzahl von in Rangfolge gebrachten Knoten, einer optimalen Pfadmenge, wobei die optimale Pfadmenge Pfade im Wissensgraphen (100) umfasst, die Knoten verbinden, die mit den Schlüsselwörtern der Schlüsselwortabfrage übereinstimmen, und wobei die optimale Pfadmenge optimal bezüglich minimaler Kosten der Pfadmenge ist, wobei die Kosten auf einer Linearkombination des Gesamtgewichts von Knoten der optimalen Pfadmenge und paarweisen semantischen Abständen zwischen den Knoten der optimalen Pfadmenge basieren, und Extrahieren (310) einer Antwort auf die Schlüsselwortabfrage aus der optimalen Pfadmenge.
  2. Verfahren (300) nach Anspruch 1, wobei das Gesamtgewicht eines Knotens Salienz darstellt, und/oder der paarweise semantische Abstand zwischen zwei Knoten eine semantische Zusammengehörigkeit darstellt.
  3. Verfahren (300) nach Anspruch 1 oder 2, wobei die Kosten einer Pfadmenge gegeben sind durch die Summe des Gesamtgewichts des Wurzelknotens und der Gesamtgewichte der Knoten, die mit den Schlüsselwörtern der Schlüsselwortabfrage übereinstimmen, und der paarweisen semantischen Abstände zwischen dem Wurzelknoten und den Knoten, die mit den Schlüsselwörtern der Schlüsselwortabfrage übereinstimmen.
  4. Verfahren (300) nach einem der vorhergehenden Ansprüche, wobei der Schritt (308) des Bestimmens einer optimalen Pfadmenge einen iterativen Prozess (308a) basierend auf dem Bestimmen einer lokal optimalen Pfadmenge umfasst, wobei die lokal optimale Pfadmenge Pfade im Wissensgraphen (100) umfasst, die einen Wurzelknoten der kleinsten Menge von Schlüsselwortknoten mit Knoten verbinden, die mit den Schlüsselwörtern der Schlüsselwortabfrage übereinstimmen, und wobei die lokal optimale Pfadmenge optimal hinsichtlich minimaler Kosten der Pfadmenge für den entsprechenden Wurzelknoten ist, wobei der iterative Prozess (308a) die folgenden Schritte umfasst: Bestimmen einer Gesamtmindestpfadlänge der lokal optimalen Pfadmenge durch Bestimmen, für jeden Schlüsselwortknoten, des kürzesten Pfades vom entsprechenden Wurzelknoten; Bestimmen einer unteren Grenze der Kosten der lokal optimalen Pfadmenge; Bestimmen der Kosten jedes Pfades, der größer als die Gesamtmindestpfadlänge ist; Vergleichen der Kosten jedes Pfades, der größer als die Gesamtmindestpfadlänge ist, mit der unteren Grenze; Erhalten der Pfadmenge mit minimalen Kosten als die lokal optimale Pfadmenge.
  5. Verfahren (300) nach Anspruch 4, wobei der Schritt (308) des Bestimmens einer optimalen Pfadmenge Folgendes umfasst: Erhalten der lokal optimalen Pfadmenge mit den minimalen Kosten als die optimale Pfadmenge.
  6. Verfahren (300) nach einem der vorhergehenden Ansprüche, wobei der iterative Prozess (308a) des Schrittes (308) des Bestimmens einer optimalen Pfadmenge um zumindest eine Kürzungsstrategie erweitert wird.
  7. Verfahren nach einem der vorhergehenden Ansprüche, wobei der Schritt des Extrahierens (310) der Antwort aus der optimalen Pfadmenge Folgendes umfasst: Zusammenführen (312) der Pfade der optimalen Pfadmenge in einen Untergraphen des Wissensgraphen (100).
  8. Verfahren nach einem der vorhergehenden Ansprüche, wobei der Schritt (310) des Extrahierens der Antwort aus der optimalen Pfadmenge ferner Folgendes umfasst: Entfernen (314) unnötiger Knoten und Kanten aus dem Untergraphen.
  9. Einrichtung (200) zur Schlüsselwortsuche in einer Datenmenge, wobei Daten der Datenmenge durch einen Wissensgraphen (100) dargestellt werden, wobei der Wissensgraph (100) Knoten (V), die Entitäten der Datenmenge darstellen, und Kanten (E), die Beziehungen zwischen den Entitäten darstellen, umfasst, wobei die Einrichtung einen Eingang umfasst, der dazu ausgelegt ist, eine Schlüsselwortabfrage (Q) zu empfangen, die eine Menge von Schlüsselwörtern umfasst, und dazu ausgelegt ist, Schlüsselwörter auf Knoten des Wissensgraphen (100) abzubilden, wobei die Einrichtung ferner einen Prozessor (204) umfasst, wobei der Prozessor (204) ausgelegt ist zum Inrangfolgebringen (304) der Knoten des Wissensgraphen basierend auf einem kürzesten Pfad zu Schlüsselwortknoten, wobei ein Schlüsselwortknoten ein Knoten ist, der mit zumindest einem Schlüsselwort der Schlüsselwortabfrage übereinstimmt; Auswählen (306) der kleinsten Menge von Schlüsselwortknoten unter allen Mengen von Schlüsselwortknoten, umfassend zumindest einen Schlüsselwortknoten für jedes Schlüsselwort der Menge von Schlüsselwörtern; Bestimmen (308), basierend auf der kleinsten Menge von Schlüsselwortknoten und basierend auf einer Anzahl von in Rangfolge gebrachten Knoten, einer optimalen Pfadmenge, wobei die optimale Pfadmenge Pfade im Wissensgraphen (100) umfasst, die Knoten verbinden, die mit den Schlüsselwörtern der Schlüsselwortabfrage übereinstimmen, und wobei die optimale Pfadmenge optimal hinsichtlich minimaler Kosten der Pfadmenge ist, wobei die Kosten auf einer Linearkombination des Gesamtgewichts von Knoten der optimalen Pfadmenge und paarweisen semantischen Abständen zwischen den Knoten der optimalen Pfadmenge basieren, und Extrahieren (310) einer Antwort auf die Schlüsselwortabfrage aus der optimalen Pfadmenge, und wobei die Einrichtung einen Ausgang (206) umfasst, der dazu ausgelegt ist, die Antwort auf ein Ergebnis der Schlüsselwortabfrage abzubilden, und dazu ausgelegt ist, das Ergebnis auszugeben.
  10. Einrichtung (200) nach Anspruch 9, wobei die Einrichtung (200) ferner ausgelegt ist zum Ausführen von Schritten des Verfahrens (300) nach einem der Ansprüche 2 bis 8.
  11. Computerprogramm zur Schlüsselwortsuche in einer Datenmenge, umfassend computerlesbare Anweisungen, die, wenn durch einen Computer ausgeführt, den Computer veranlassen, Schritte des Verfahrens (300) nach einem der Ansprüche 1 bis 8 auszuführen.
DE102021203300.8A 2021-03-31 2021-03-31 Computerimplementiertes Verfahren für Schlüsselwortsuche in einem Wissensgraphen Pending DE102021203300A1 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE102021203300.8A DE102021203300A1 (de) 2021-03-31 2021-03-31 Computerimplementiertes Verfahren für Schlüsselwortsuche in einem Wissensgraphen
CN202210325238.6A CN115146022A (zh) 2021-03-31 2022-03-30 用于知识图中的关键词搜索的计算机实现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102021203300.8A DE102021203300A1 (de) 2021-03-31 2021-03-31 Computerimplementiertes Verfahren für Schlüsselwortsuche in einem Wissensgraphen

Publications (1)

Publication Number Publication Date
DE102021203300A1 true DE102021203300A1 (de) 2022-10-06

Family

ID=83282723

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102021203300.8A Pending DE102021203300A1 (de) 2021-03-31 2021-03-31 Computerimplementiertes Verfahren für Schlüsselwortsuche in einem Wissensgraphen

Country Status (2)

Country Link
CN (1) CN115146022A (de)
DE (1) DE102021203300A1 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116415001A (zh) * 2023-02-22 2023-07-11 Oook(北京)教育科技有限责任公司 一种学生与教师的互动方法、装置、介质和电子设备
CN116701664A (zh) * 2023-08-08 2023-09-05 安徽智享云科技有限公司 一种基于bim的多目标施工数据共享传输方法及系统

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
CHEN, Chen [et al.]: SISP: a new framework for searching the informative subgraph based on PSO. In: Proceedings of the 20th ACM international conference on Information and knowledge management. 2011. S. 453-462
CHENG, Gong; KHARLAMOV, Evgeny: Towards a semantic keyword search over industrial knowledge graphs. In: 2017 IEEE International Conference on Big Data (Big Data). IEEE, 2017. S. 1698-1700
SHI, Yuxuan; CHENG, Gong; KHARLAMOV, Evgeny: Keyword search over knowledge graphs via static and dynamic hub labelings. In: Proceedings of The Web Conference 2020. 2020. S. 235-245

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116415001A (zh) * 2023-02-22 2023-07-11 Oook(北京)教育科技有限责任公司 一种学生与教师的互动方法、装置、介质和电子设备
CN116701664A (zh) * 2023-08-08 2023-09-05 安徽智享云科技有限公司 一种基于bim的多目标施工数据共享传输方法及系统

Also Published As

Publication number Publication date
CN115146022A (zh) 2022-10-04

Similar Documents

Publication Publication Date Title
DE69804495T2 (de) Informationsmanagement und wiedergewinnung von schlüsselbegriffen
DE69727421T2 (de) Hypertext-Dokumentwiederauffindungssystem zum Wiederauffinden zusammengehöriger Hypertextdokumente
DE69811066T2 (de) Datenzusammenfassungsgerät.
DE69833238T2 (de) System zur Schlüsselwortgewinnung und Textwiederauffingungssystem zu seiner Verwendung
DE69933187T2 (de) Dokumentensuchverfahren und Dienst
DE69431351T2 (de) Verfahren und gerät zum indexieren, suchen und anzeigen von daten
DE69813652T2 (de) System und Verfahren zum hierarchischen Zusammenstellen und Einordnen eines Satzes von Objekten in einem Abfragekontext
DE3788750T2 (de) Schätzeinrichtung des Indexschlüsselbereiches.
DE69433165T2 (de) Assoziatives textsuch- und wiederauffindungssystem
DE69809964T2 (de) Online-datenbank ausbeutung
DE60221153T2 (de) Verfahren und vorrichtung für ähnlichkeitssuche und gruppenbildung
DE60004687T2 (de) Verfahren zur thematischen klassifikation von dokumenten, modul zur thematischen klassifikation und ein derartiges modul beinhaltende suchmaschine
DE19952769B4 (de) Suchmaschine und Verfahren zum Abrufen von Informationen mit Abfragen in natürlicher Sprache
DE10231161A1 (de) Domain-spezifisches wissensbasiertes Metasuchsystem und Verfahren zum Verwenden desselben
DE112020000554T5 (de) Verfahren zum zugreifen auf datensätze eines stammdatenverwaltungssystems
DE69719641T2 (de) Ein Verfahren, um Informationen auf Bildschirmgeräten in verschiedenen Grössen zu präsentieren
DE10131193A1 (de) Sitzungshistorien-basierte altersgerichtete natürlichsprachliche Dokumentensuche
DE102007037646A1 (de) System und Verfahren zum Indizieren, Durchsuchen und zur Datenwiedergewinnung von Datenbanken
DE102021203300A1 (de) Computerimplementiertes Verfahren für Schlüsselwortsuche in einem Wissensgraphen
DE112020003024T5 (de) Informationsverarbeitungsvorrichtung, informationsverarbeitungsverfahren und programm
DE112010002620T5 (de) Ontologie-nutzung zum ordnen von datensätzen nachrelevanz
DE102010007302A1 (de) Ein System und Verfahren zum Generieren von Abfragen
DE10034694B4 (de) Verfahren zum Vergleichen von Suchprofilen sowie dessen Verwendung
DE10028624A1 (de) Verfahren und Vorrichtung zur Dokumentenbeschaffung
EP1330740B1 (de) Verfahren zum zugriff auf eine speichereinheit bei der suche nach teilzeichenfolgen sowie zugehörige speichereinheit

Legal Events

Date Code Title Description
R163 Identified publications notified