-
HINTERGRUND
-
Unternehmen fordern eventuell von Einzelpersonen, Güter und/oder Dienstleistungen zu planen und/oder zu erwerben. Reisevorkehrungen werden zum Beispiel für den Einzelfall vorgenommen, in dem Einzelpersonen Flüge, Hotels und weitere Reisevorkehrungen nach ihren jeweiligen Bedürfnissen buchen. Als weiteres Beispiel bucht ein Reisebüromitarbeiter Reisevorkehrungen für Einzelpersonen. Bei diesen Beispielen kann eine Abwesenheit von Kontextinformationen den Einblick in passende Reisevorkehrungen für eine bestimmte Einzelperson und/oder eine bestimmte Reise eingrenzen. Außerdem kann es ein relativ beschwerlicher Arbeitsaufwand sein, das passende Hotel, den passenden Flug, öffentliche Transportmittel (falls dies benötigt wird), und so weiter zu finden. In einigen Fällen werden Reisevorkehrungen anschließend genau auf Übereinstimmung mit der Unternehmenspolitik und/oder Rechtsvorschriften geprüft. Reisevorkehrungen, die nicht mit diesen übereinstimmen, können im Fall einer Rechnungsprüfung sehr viel Zeit und Aufwand verursachen.
-
ZUSAMMENFASSUNG
-
Ausführungsformen der vorliegenden Offenbarung sind im Allgemeinen auf die Erstellung von elektronischen Musterdokumenten auf der Grundlage von Kontextinformationen gerichtet. Einige Ausführungsformen beinhalten die Vorgänge: das Empfangen einer Eingabe eines Nutzers, wobei die Eingabe Daten beinhaltet, die zumindest teilweise ein Subjekt bzw. Thema (im englischen ”subject”) repräsentieren, das Empfangen einer Vielzahl an gespeicherten Subjekten, wobei jedes gespeicherte Subjekt Daten beinhaltet, die zumindest teilweise ein jeweiliges gespeichertes Subjekt darstellen, und die in einem Wissensgraph bereitgestellt sind, das Verarbeiten der Eingabe im Hinblick auf jedes der gespeicherten Subjekte auf der Grundlage eines semantischen Vergleichs zwischen der Eingabe und jedem der gespeicherten Subjekte, um einen Satz semantischer Differenzen bereitzustellen, wobei jede semantische Differenz die Eingabe und ein jeweiliges gespeichertes Subjekt darstellt, das Verarbeiten eines Nutzerprofils des Nutzers im Hinblick auf jedes der Vielzahl an anderen Nutzerprofilen, um einen Satz semantischer Korrelationen bereitzustellen, wobei jede semantische Korrelation das Nutzerprofil und ein jeweiliges anders Nutzerprofil darstellt, und das Bereitstellen des elektronischen Musterdokuments auf der Grundlage des Satzes semantischer Differenzen und des Satzes semantischer Korrelationen, wobei das elektronische Musterdokument mindestens einen Abschnitt der Eingabe, und mindestens jeweilige Abschnitte jedes der Vielzahl der gespeicherten Subjekte auf der Grundlage jeweiliger Punktzahlen beinhaltet. Weitere Ausführungsformen dieses Aspekts beinhalten entsprechende Systeme, Apparate und Computerprogramme, konfiguriert, um die Vorgänge der Verfahren auszuführen, die auf Computerspeichergeräten gespeichert sind.
-
Diese und andere Ausführungsformen können jeweils optional eine oder mehrere der folgenden Eigenschaften beinhalten: Verarbeiten der Eingabe im Hinblick auf jedes der gespeicherten Subjekte beinhaltet das semantische Vergleichen von Eigenschaften der Eingabe mit jeweiligen Eigenschaften jedes der gespeicherten Subjekte zumindest teilweise basierend auf einer oder mehrerer hierarchischer Ontologien; semantisches Vergleichen beinhaltet, für jede Eingabe und jedes gespeichertes Subjekt-Paar, das Bestimmen einer semantischen Distanz als ein gewichtetes Mittel einer Anzahl an Kanten in dem Wissensgraph zwischen Eigenschaften der Eingabe und Eigenschaften des gespeicherten Subjekts; Verarbeiten eines Nutzerprofils des Nutzers im Hinblick auf jedes aus einer Vielzahl anderer Nutzerprofile beinhaltet semantisches Korrelieren von Attributen des Nutzerprofils mit jeweiligen Attributen jedes aus der Vielzahl an anderen Nutzerprofilen unter Nutzung einer Graphsubsumtion; die entsprechenden Punktzahlen werden zumindest teilweise bestimmt auf der Grundlage des Satzes semantischer Differenzen und des Satzes semantischer Korrelationen; das elektronische Musterdokument ist eine Reiseroute; die Vorgänge beinhalten weiterhin: Übertragen des elektronischen Musterdokuments an einen oder mehrere computerimplementierte Buchungsservices, und Empfangen eines modifizierten elektronischen Musterdokuments von dem einen oder den mehreren computerimplementierten Services, wobei das modifizierte elektronische Musterdokument Buchungsdaten beinhaltet; das Subjekt eine Reise beinhaltet und die Daten der Eingabe Reisedetails beinhalten; Daten des gespeicherten Subjekts Reisemöglichkeiten für die Reise beinhalten; Daten eines gespeicherten Subjekts eine vorausgegangene Reise, die ein anderer Nutzer getätigt hat, beinhalten; Daten eines gespeicherten Subjekts entsprechende vorausgegangene Reisen anderer Nutzer beschreiben, die als der des Nutzers ähnlich bestimmt wurden; Daten eines gespeicherten Subjekts sich auf eine Reiserichtlinie einer Entität beziehen; und das Bereitstellen des elektronischen Musterdokuments das Vorausfüllen von Reisedetails in dem elektronischen Musterdokument beinhaltet.
-
Ausführungsformen der vorliegenden Offenbarung weisen einen oder mehrere Vorteile auf. In einigen Beispielen ermöglichen die Ausführungsformen die semantische Identifikation bevorzugter Kontexte, zum Beispiel Reisen von Nutzerreise („travel trips of user trips”), oder Reiseprofile für Nutzerprofile. In einigen Beispielen ermöglichen die Ausführungsformen das semantische Reasoning für Kontextkombinationen, zum Beispiel Konsistenzprüfung einer beliebigen Kombination von Reisen oder Profilen. Entsprechend stellen Ausführungsformen der vorliegenden Offenbarung die optimierte Identifikation von Mustern auf der Grundlage des semantischen Kontexts bereit, und ermöglichen die effiziente Erstellung eines relevanten, exakten elektronischen Musterdokuments. Auf diese Weise werden Computerressourcen (z. B. Prozessoren, Speicher, Bandbreite) geschont.
-
Die vorliegende Offenbarung stellt auch ein computerlesbares Speichermedium bereit, das mit einem oder mehrere Prozessoren gekoppelt ist und auf dem Anweisungen gespeichert sind, die, wenn sie durch den einen oder die mehreren Prozessoren ausgeführt werden, den einen oder die mehreren Prozessoren dazu veranlassen, Vorgänge in Übereinstimmung mit Ausführungsformen der hier bereitgestellten Verfahren auszuführen.
-
Die vorliegende Offenbarung stellt weiterhin ein System zum Umsetzen der hier bereitgestellten Verfahren bereit. Das System beinhaltet einen oder mehrere Prozessoren und ein computerlesbares Speichermedium, das mit einem oder mehreren Prozessoren gekoppelt ist und auf dem Anweisungen gespeichert sind, die, wenn sie durch den einen oder die mehreren Prozessoren ausgeführt werden, den einen oder die mehreren Prozessoren dazu veranlassen, Vorgänge in Übereinstimmung mit Ausführungsformen der hier bereitgestellten Verfahren auszuführen.
-
Es versteht sich, dass Verfahren in Übereinstimmung mit der vorliegenden Offenbarung jegliche Kombination der hier beschriebenen Aspekte und Eigenschaften beinhalten können. Das heißt, dass Verfahren in Übereinstimmung mit der vorliegenden Offenbarung nicht auf Kombinationen der speziell hier beschriebenen Aspekte und Eigenschaften begrenzt sind, sondern auch jegliche Kombination der bereitgestellten Aspekte und Eigenschaften beinhalten.
-
Details einer oder mehrerer der Ausführungsformen der vorliegenden Offenbarung werden in den begleitenden Zeichnungen und der unten stehenden Beschreibung dargelegt. Weitere Eigenschaften und Vorteile der vorliegenden Offenbarung werden aus der Beschreibung und den Zeichnungen, sowie aus den Ansprüchen, offensichtlich.
-
KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
1 zeigt ein Beispielsystem, das Ausführungsformen der vorliegenden Offenbarung ausführen kann.
-
2 zeigt eine Beispielmodularchitektur in Übereinstimmung mit Ausführungsformen der vorliegenden Offenbarung.
-
3 zeigt einen Beispielabschnitt eines Beispielwissensgraphen.
-
4 zeigt eine graphische Darstellung einer beispielhaften semantischen Identifikation von Subjekten in Übereinstimmung mit Ausführungsformen der vorliegenden Offenbarung.
-
5 zeigt eine graphische Darstellung einer beispielhaften semantischen Korrelation von Nutzern in Übereinstimmung mit Ausführungsformen der vorliegenden Offenbarung.
-
6 zeigt ein Beispielmuster in Übereinstimmung mit Ausführungsformen der vorliegenden Offenbarung.
-
7–9 zeigen Beispielprozesse, die in Ausführungsformen der vorliegenden Offenbarung ausgeführt werden können.
-
DETAILLIERTE BESCHREIBUNG
-
Ausführungsformen der vorliegenden Offenbarung sind im Allgemeinen auf das automatische Erstellen elektronischer Musterdokumente auf der Grundlage von semantischem Kontext gerichtet. Insbesondere sind Ausführungsformen der vorliegenden Offenbarung auf das automatische Erstellen elektronischer Musterdokumente auf der Grundlage eines Wissensgraphen (z. B. einer Datenstruktur, die Einheiten durch semantische Eigenschaften in Verbindung setzt), semantischer Identifikation von Subjekten, semantischer Korrelation von Nutzern, und Inhalts- und Kontextaggregation gerichtet. In einigen Ausführungsformen wird ein elektronisches Musterdokument als ein elektronisches Dokument bereitgestellt, das repräsentativ für ein Subjekt ist, und das eine oder mehrere Eigenschaften des Subjekts beinhaltet. Beispielsubjekte können ein Ereignis, einen Satz Ereignisse, einen Gegenstand, ein Produkt, eine Dienstleistung und ähnliches beinhalten. In einigen Ausführungsformen werden ein oder mehrere Vorgänge automatisch auf der Grundlage des elektronischen Musterdokuments ausgeführt.
-
Ausführungsformen der vorliegenden Offenbarung werden im Folgenden genauer beschrieben mit Bezug auf einen Beispielkontext. Der Beispielkontext beinhaltet die Reiseplanung und -buchung in einem Unternehmen (z. B. für einen Angestellten des Unternehmens). In dem Beispielkontext wird das elektronische Musterdokument bereitgestellt als Reiseroute für eine Reise, die ein bestimmter Angestellter unternehmen soll; die Reise ist als das Subjekt bereitgestellt, und Beispieleigenschaften des Subjekts beinhalten Daten, den Grund der Reise, an Ort(e), von Ort(en), Transportmittel (z. B. Flugzeuge, Züge, Kraftfahrzeuge, Fähren), Hotels, Veranstaltungen, Abendessen, Mittagessen, und ähnliches. Es wird jedoch bedacht, dass die Ausführungsformen der vorliegenden Offenbarung in jedem angemessenen Kontext umgesetzt werden können.
-
1 zeigt ein Beispielsystem 100, das Ausführungsformen der vorliegenden Offenbarung ausführen kann. Das Beispielsystem 100 beinhaltet Computergeräte 102, 104, 106, ein Back-End-System 108 und ein Netzwerk 110. In einigen Beispielen beinhaltet das Netzwerk 110 ein Local Area Network (LAN), Wide Area Network (WAN), das Internet, oder eine Kombination aus diesen, und verbindet Webseiten, Geräte (z. B. das Computergerät 102, 104, 106), und Back-End-Systeme (z. B. das Back-End-System 108). In einigen Beispielen kann auf das Netzwerk 110 über eine kabelgebundene und/oder eine drahtlose Kommunikationsverbindung zugegriffen werden. Zum Beispiel können mobile Computergeräte, wie z. B. Smartphones, ein zellulares Netzwerk nutzen, um auf das Netzwerk 110 zuzugreifen.
-
In dem gezeigten Beispiel beinhaltet das Back-End-System 108 zumindest ein Serversystem 112, und Datenspeicher 114 (z. B. Datenbank und Wissensgraphstruktur). In einigen Beispielen hostet das mindestens eine Serversystem 112 einen oder mehrere computerimplementierte Dienste, mit denen der Nutzer unter Nutzung von Computergeräten interagieren kann. Zum Beispiel kann das Serversystem 112 einen computerimplementierten Dienst hosten, der elektronische Musterdokumente in Übereinstimmung mit Ausführungsformen der vorliegenden Offenbarung erstellt.
-
In einigen Beispielen können die Computergeräte 102, 104, 106, jeweils einen beliebigen angemessenen Computergerätetyp wie z. B. einen Desktop-Computer, einen Laptop Computer, einen Handheld-Computer, ein Tablet, einen persönlichen digitalen Assistenten (PDA), ein Mobiltelefon, eine Netzwerkanwendung, eine Kamera, ein Smartphone, ein EGPRS(Enhanced General Packet Radio Service)-Mobiltelefon, einen Mediaplayer, ein Navigationsgerät, ein E-Mail-Gerät, eine Spielekonsole oder eine angemessene Kombination von beliebigen zwei oder mehreren dieser Geräte oder anderer datenverarbeitenden Geräte beinhalten.
-
In dem gezeigten Beispiel sind die Computergeräte 102, 104, 106 jeweils als ein Desktop-Computer bereitgestellt, der durch die jeweiligen Nutzer 120, 122, 124 genutzt wird. In dem Beispielkontext sind die Nutzer 120, 122, 124 Angestellte eines Unternehmens. Zum Beispiel kann der Nutzer 120 einen Angestellten „Jamie” beinhalten, der eine Dienstreise plant, der Nutzer 122 kann einen Angestellten „Paul” beinhalten, der zuvor eine Dienstreise unternommen hat, und der Nutzer 124 kann einen Angestellten „Tom” beinhalten, der auch zuvor eine Dienstreise unternommen hat. In einigen Beispielen ist jeder Nutzer 120, 122, 124 mit einem Nutzerprofil verbunden, das durch das Unternehmen gepflegt wird. In einigen Beispielen beinhaltet das Nutzerprofil eines oder mehrere Attribute (z. B. Name, Gruppe, Rolle, Kontaktinformationen, etc.). In einigen Ausführungsformen pflegt das Unternehmen eine Wissensbank mit zu jedem Nutzer zugehörigen Informationen. Zum Beispiel pflegt das Unternehmen eine Wissensdatenbank mit zu jeder Reise zugehörigen Informationen (z. B. Dauer, Ort, Art, Hotels, Reisetransportmittel), die jeder der Nutzer als Teil seiner Beschäftigung unternommen hat.
-
In Übereinstimmung mit Ausführungsformen der vorliegenden Offenbarung, und wie oben eingeführt, werden elektronische Musterdokumente automatisch auf der Grundlage eines Wissensgraphen, semantischer Identifikation von Subjekten, semantischer Korrelation von Nutzern, und Inhalts- und Kontextaggregation erstellt. In einigen Ausführungsformen wird der Wissensgraph auf der Grundlage von zu einem oder mehreren Subjekten zugehörigen Daten bereitgestellt. In einigen Beispielen werden die Daten als historische Daten bereitgestellt, die eines oder mehrere Subjekte, die zu dem Unternehmen zugehörig sind, reflektieren. In dem Beispielkontext wird der Wissensgraph auf der Grundlage von zu einer Reise zugehörigen Daten bereitgestellt, die durch Nutzer des Unternehmens durchgeführt worden ist (z. B. Nutzer 120, 122, 124).
-
In einigen Beispielen ist ein Wissensgraph eine Sammlung von Daten und bezogen auf der Grundlage eines Schemas, das Einheiten und Beziehungen zwischen Einheiten darstellt. Die Daten können logisch als Graph beschrieben werden (obwohl sie auch in Tabellenform vorliegen), bei dem jede unterschiedliche Einheit durch einen entsprechenden Knoten repräsentiert wird, und jede Beziehung zwischen einem Paar Einheiten durch ein Kante zwischen den Knoten repräsentiert wird. Jede Kante ist zu einer Beziehung zugehörig, und die Existenz der Kante repräsentiert, dass die zugehörige Beziehung zwischen den durch die Kante verbundenen Knoten existiert. Wenn ein Knoten A zum Beispiel eine Person Alpha repräsentiert, ein Knoten B eine Person Beta repräsentiert und eine Kante E zu der Beziehung „ist der Vater von” zugehörig ist, dann repräsentiert, wenn man die Kante E die Knoten in der Richtung von Knoten A zu Knoten B in dem Graphen verbinden lässt, die Tatsache, dass Alpha der Vater von Beta ist. In einigen Beispielen kann der Wissensgraph mit schemenbezogenem Wissen vergrößert werden (z. B. Alpha ist ein Konzept Person, Beta ist ein Konzept Person, und „ist der Vater von” ist eine Eigenschaft oder Beziehung zwischen zwei Einheiten/Instanzen des Konzepts Person). Das Hinzufügen von schemenbezogenen Informationen unterstützt die Auswertung von Reasoning-Ergebnissen, wie z. B. Subsumtion oder Graphmusterabgleich.
-
Ein Wissensgraph kann durch jede beliebige aus einer Vielfalt an physischen Datenstrukturen repräsentiert werden. Ein Wissensgraph kann zum Beispiel durch Tripel repräsentiert werden, von denen jedes zwei Einheiten in Folge repräsentiert, und eine Beziehung von der ersten zur zweiten Einheit; zum Beispiel sind [Alpha, Beta, ist der Vater von] oder [Alpha, ist der Vater von, Beta] alternative Arten, denselben Sachverhalt darzustellen. Jede Einheit und jede Beziehung kann, und wird im Allgemeinen, in vielfachen Tripeln beinhaltet sein.
-
In einigen Beispielen kann jede Einheit einmal als Knoten gespeichert werden, als eine Aufzeichnung oder ein Objekt, zum Beispiel, und durch eine verknüpfte Listendatenstruktur mit allen Beziehungen, die die Einheit hat, und allen anderen Einheiten, mit denen die Einheit in Bezug steht, verknüpft werden. Insbesondere kann ein Wissensgraph als eine Adjazenzliste gespeichert werden, in der die Adjazenzinformationen Beziehungsinformationen beinhalten. In einigen Beispielen wird jede einzelne Einheit und jede einzelne Beziehung durch entsprechende, eindeutige Identifikatoren repräsentiert.
-
Die durch einen Wissensgraphen repräsentierten Einheiten müssen nicht zwangsläufig greifbare Dinge oder bestimmte Personen sein. Die Einheiten können bestimmte Personen, Orte, Dinge, künstlerische Werke, Konzepte, Veranstaltungen oder andere Arten von Einheiten beinhalten. Ein Wissensgraph kann also Daten, die Beziehungen zwischen Menschen definieren (z. B. verschiedene Hauptdarsteller in einem Film); Daten, die Beziehungen zwischen Menschen und Dingen definieren (z. B. ein bestimmter Sänger, der ein bestimmtes Lied aufgenommen hat); Daten, die Beziehungen zwischen Orten und Dingen definieren (z. B. eine bestimmte Weinsorte, die aus einer bestimmten geographischen Region kommt); Daten, die Beziehungen zwischen Menschen und Orten definieren (z. B. eine bestimmte Person, die in einer bestimmten Stadt geboren wurde); sowie andere Arten von Beziehungen zwischen Einheiten beinhalten.
-
In einigen Ausführungsformen hat jeder Knoten einen Typ auf der Grundlage der Art der Einheit, die der Knoten repräsentiert; und die Typen können jeweils ein Schema aufweisen, das die Arten der Daten spezifiziert, die gepflegt werden können über Einheiten, die durch Knoten des Typs repräsentiert werden, sowie auf welche Weise die Daten gespeichert werden sollen. Zum Beispiel könnte ein Knoten eines Typs zum Repräsentieren einer Person ein Schema aufweisen, das Felder für Informationen wie z. B. Geburtsdatum, Geburtsort, usw. definiert. Solche Informationen können durch Felder in einer typspezifischen Datenstruktur repräsentiert werden, oder durch Tripel, die wie Knoten-Beziehung-Knoten-Tripel aussehen (z. B. [Personenidentifikator, geboren am, Datum], oder in jeder anderen geeigneten vordefinierten Art repräsentiert werden. In einigen Beispielen können einige oder alle Informationen, die durch ein Typschema präzisiert wurden, durch Links zu Knoten im Wissensgraph repräsentiert werden; zum Beispiel, [Personenidentifikator einer Person, Kind von, Personenidentifikator einer anderen Person], wobei der Personenidentifikator der anderen Person ein Knoten im Graphen ist.
-
In Übereinstimmung mit dem Beispielkontext, und wie im Folgenden genauer beschrieben, kann ein Wissensgraph als eine Datensammlung und ein Schema, das Subjekte und Beziehungen zwischen Subjekten, und/oder Eigenschaften von Subjekten repräsentiert, bereitgestellt werden. Zum Beispiel kann ein Wissensgraph, oder zumindest ein Abschnitt davon, als eine Datensammlung, die eine Reise und Merkmale einer Reise repräsentiert, bereitgestellt werden.
-
2 zeigt eine Beispielmodularchitektur 200 in Übereinstimmung mit Ausführungsformen der vorliegenden Offenbarung. Die Beispielmodularchitektur 200 beinhaltet ein elektronisches Musterdokumentgenerationsmodul 202, das Eingabedaten 204 empfängt und ein elektronisches Musterdokument 206 bereitstellt. In dem abgebildeten Beispiel beinhaltet das elektronische Mustergenerationsmodul 202 ein semantisches Identifikationsmodul 208, ein semantisches Korrelationsmodul 210 und eine Inhalts- und Kontextaggregation 212. Die Beispielmodularchitektur 200 beinhaltet auch eine Wissensdatenbank 214 sowie eine Nutzerprofildatenbank 216. In einigen Beispielen ist jedes der Module als eines oder mehrere computerausführbare Programme, die durch ein oder mehrere Computergerät ausgeführt werden (z. B. des Back-End-Systems 108 aus 1), bereitgestellt.
-
In einigen Ausführungsformen speichert die Wissensdatenbank 214 historische Daten, die zu einem oder mehreren Subjekten zugehörig sind. In dem Beispielkontext speichert die Wissensdatenbank 214 Daten, die über Nutzerprofile (z. B. eindeutige Nutzeridentifikatoren zugehörig zu entsprechenden Nutzerprofilen), Reisen und Merkmale der Reise Auskunft geben. In einigen Beispielen werden die Daten als Wissensgraph gespeichert, was im Folgenden genauer beschrieben wird. In einigen Beispielen sind die Daten in der Wissensdatenbank 214 organisiert auf der Grundlage einer Ontologie für semantisches Abfragen, Ordnen und Ranking, was im Folgenden genauer beschrieben wird. Zum Beispiel, und im Beispielkontext, können Reisegründe nach einer Hierarchie geordnet werden (z. B. ist ein Akquisebesuch ein Kundenbesuch, und ein Kundenbesuch eine Veranstaltung). In einigen Beispielen speichert die Nutzerprofildatenbank 216 Nutzerprofile der jeweiligen Nutzer des Unternehmens. Zum Beispiel ist jedes Nutzerprofil zu einem eindeutigen Identifikator zugeordnet, der einen jeweiligen Nutzer identifiziert (z. B. eine zugewiesene Mitarbeiter-ID, die spezifisch für den Nutzer ist). In einigen Beispielen beinhaltet jedes Nutzerprofil, das in der Nutzerprofildatenbank 216 gespeichert ist, eines oder mehrere Attribute (z. B. Name, Gruppe, Rolle, Kontaktinformationen, etc.) des jeweiligen Nutzers.
-
In einigen Beispielen beinhaltet die Eingabe 204 Daten, die ein Subjekt und ein oder mehrere Eigenschaften eines Subjekts definieren. In dem Beispielkontext beinhaltet die Eingabe 204 Daten, die eine Reise, die ein Nutzer unternehmen soll, sowie Merkmale dieser Reise definiert. Zum Beispiel plant der Nutzer Jamie (zum Beispiel der Nutzer 120 aus 1) eine Reise und liefert die folgende Beispieleingabe, die die Reise definiert:
Ort: Austin, Texas, USA
Dauer: 2 Tage
Datum: 16.02.2016
Grund: Akquisebesuch
Wochenende
Externe Veranstaltung: Live-Musik
-
In einigen Beispielen ist die Eingabe zu dem eindeutigen Identifikator zugehörig, der den Nutzer, der die Eingabe macht, identifziert (z. B. eine Mitarbeiter-ID, die Jamie zugehörig ist und eindeutig für ihn steht).
-
In Übereinstimmung mit Ausführungsformen der vorliegenden Offenbarung werden bestehende, bereits durchgeführte Reisen semantisch identifziert auf der Grundlage der Eingabe 204. Zum Beispiel werden alle in der Wissensdatenbank 214 gespeicherten Reisen mit der Eingabe 204 abgeglichen, um semantische Äquivalente der Reise, die durch Eingabe 204 repräsentiert wird, zu identifzieren. In einigen Beispielen basiert die semantische Identifikation auf dem Bestimmen einer oder mehrerer Konzeptdistanzen auf der Grundlage von in dem Wissensgraphen gespeicherten Daten.
-
3 zeigt einen Beispielabschnitt 300 eines Beispielwissensgraphen 302 in Übereinstimmung mit dem Beispielkontext. In dem abgebildeten Beispiel wird ein Knoten Reise mit einer Vielzahl anderer Knoten (z. B. Austin, Akquisebesuch, Wochenende, Transportmittel, Flug) durch jeweilige Kanten in Beziehung gesetzt. Zum Beispiel repräsentiert die Kante zwischen Reise und Austin eine Beziehung [Reise nach], und die Kante zwischen Reise und Akquisebesuch repräsentiert eine Beziehung [Grund für].
-
Als Darstellung der Ausführungsformen der vorliegenden Offenbarung speichert die Wissensdatenbank 214 Daten, die zu Reisen zugehörig sind, die durch andere Nutzer unternommen wurden, wie z. B. Paul und Tom (z. B. die Nutzer 122 bzw. 124 aus 1). Zum Beispiel speichert die Wissensdatenbank 214 Daten für die folgenden Beispielreisen (unter möglicherweise Dutzenden, Hunderten, Tausenden anderer Reisen):
Ort: Dublin, Irland → Austin, TX, USA
Dauer: 4 Tage
Datum: 15.08.2015
Grund: Konferenz
Woche
Öffentliche Verkehrsmittel
USA Airways (Dublin → Chicago → Austin)
Externe Veranstaltung: keine
und
Ort: Dublin, Irland → Boston, MA, USA
Dauer: 12 Tage
Datum: 11.02.2015
Grund: Kundenbesuch
Wochenende
Mietwagen
USA Airways
Externe Veranstaltung: Informatikkonferenz
Restaurant: „Trio” (Kette)
-
4 zeigt eine graphische Darstellung einer beispielhaften semantischen Identifikation von Subjekten in Übereinstimmung mit Ausführungsformen der vorliegenden Offenbarung. In dem abgebildeten Beispiel wird eine hierarchische Ontologie im Hinblick auf den Beispielkontext bereitgestellt. Zum Beispiel wird eine hierarchische (oder taxonomiebasierte) Ontologie für Reise bereitgestellt, wobei (Bundes-)Staat und International jeweils Reisearten, TX und NY beides Reisen zwischen Bundesstaaten, usw. darstellen. Als weiteres Beispiel wird eine hierarchische Ontologie für Jahreszeit bereitgestellt, wobei Sommer und Winter Arten einer Jahreszeit sind. Als weiteres Beispiel wird eine hierarchische Ontologie für Veranstaltung bereitgestellt, in der Konferenz und Kundenbesuch jeweils Veranstaltungsarten, und Akquisebesuch einen Kundenbesuch darstellen.
-
In einigen Ausführungsformen wird die semantische Identifikation durch das Vergleichen von Eigenschaften des Eingabesubjekts (z. B. die Eingabe 204) mit Eigenschaften von zuvor durchgeführten Subjekten bereitgestellt. Führt man die oben genannten Beispiel fort, wird die von Jamie gemachte Eingabe semantisch mit Subjekten verglichen, die in der Wissensdatenbank 214 gespeichert sind. In einigen Beispielen wird ein semantisches Delta (ΔSEM) zwischen dem Eingabesubjekt und jedem gespeicherten Subjekt bestimmt. In dem Beispielkontext wird die Eingabe Reise (d. h. Jamies zu planende Reise nach Austin) semantisch mit allen gespeicherten Reisen verglichen (d. h. Houston → Austin, Dublin → Boston, unter vielen anderen Möglichkeiten). In einigen Beispielen werden räumliche Korrelationen und/oder zeitliche Korrelationen zwischen Eigenschaften von Subjekten bereitgestellt. Zum Beispiel kann eine räumliche Korrelation auf der Grundlage eines Ortes und eine zeitliche Korrelation auf der Grundlage eines Datums bereitgestellt werden.
-
In einigen Ausführungsformen wird ΔSEM als semantische Distanz zwischen dem Eingabesubjekt (z. B. geplante Reise) und einem gespeicherten Subjekt (z. B. gespeicherte Reise) bestimmt. In einigen Beispielen wird die semantische Distanz als ein gewichtetes Mittel der Anzahl an Kanten im Wissensgraphen (oder relevanter Abschnitt eines Wissensgraphen) zwischen allen Eigenschaften des jeweiligen Eingabesubjekts und gespeicherten Subjekts bestimmt. Zum Beispiel weisen, je mehr Kanten es zwischen zwei Eigenschaften gibt, die Eigenschaften eine umso größere Distanz zueinander auf, und die Eigenschaften sind sich semantisch umso weniger ähnlich. Andererseits weisen, je weniger Kanten es zwischen zwei Eigenschaften gibt, die Eigenschaften eine umso geringere Distanz auf, und die Eigenschaften sind sich semantisch umso ähnlicher.
-
In einigen Ausführungsformen wird Δ
SEM auf der Grundlage der folgenden Beispielbeziehung bestimmt:
wobei
S
l = das Eingabesubjekt (z. B. die Reise, die geplant wird)
i = bestimmte Reiseeigenschaft;
n = Anzahl der Reiseeigenschaften
S i / j = Eigenschaft von Subjekt j;
S
j = Vektor der Eigenschaft von Subjekt j (z. B. gespeicherte Reise, die mit S
l verglichen wird);
α = gewichteter Faktor mit Wert in [0, 1]; und
d = semantische Ähnlichkeit von Eigenschaften, z. B. die Anzahl an Kanten zwischen den Eigenschaften.
-
Führt man die Beispiele von oben fort, sowie wie in dem Beispiel von 4 gezeigt, kann ΔSEM für Jamies geplante Reise nach Austin und die gespeicherte Reise Houston → Austin als 0,9 berechnet werden (z. B. finden beide Reisen nach Austin statt wegen einer Veranstaltung, wobei Konferenz und Kundenbesuch beides Veranstaltungen sind). Als weiteres Beispiel kann ΔSEM für Jamies geplante Reise nach Austin und die gespeicherte Reise Dublin → Boston als 0,7 berechnet werden (z. B. finden beide Reisen im Winter für eine Veranstaltung statt). Ein Satz ΔSEMs wird bereitgestellt und beinhaltet ein oder mehrere ΔSEMs, wobei jedes ΔSEM einem jeweiligen semantischen Vergleich zwischen dem Eingabesubjekt und einem gespeicherten Subjekt entspricht. Wird zum Beispiel das Eingabesubjekt mit 50 gespeicherten Reisen verglichen, beinhaltet der Satz ΔSEMs 50 ΔSEM-Werte.
-
In einigen Ausführungsformen wird ein Satz Nutzerprofile auf der Grundlage der semantischen Vergleiche bereitgestellt. In einigen Beispielen ist jedes gespeicherte Subjekt zu einem jeweiligen Nutzerprofil (z. B. dem Nutzerprofil des Nutzers, der die Reise unternommen hat) zugehörig. In einigen Beispielen beinhaltet der Satz Nutzerprofile eindeutige Nutzerprofile. Ist ein Nutzer zum Beispiel zu mehrfachen Subjekten zugehörig, die in dem semantischen Vergleich beinhaltet sind, ist das Nutzerprofil des Nutzers nur einmal in dem Satz Nutzerprofile enthalten (z. B. hat Tom 10 Reisen der 50 gespeicherten Reisen, für die ein semantischer Vergleich bereitgestellt wurde, unternommen, doch Toms Profil ist nur einmal in dem Satz Nutzerprofile enthalten).
-
Führt man die Beispiele von oben fort, kann Paul mit der Reise Houston → Austin verbunden werden, und Tom mit der Reise Dublin → Boston verbunden werden. Folglich wird ein Satz Nutzerprofile bereitgestellt und Pauls und Toms Nutzerprofile sind darin enthalten (unter möglicherweise vielen anderen).
-
5 zeigt eine graphische Darstellung einer beispielhaften semantischen Korrelation von Nutzern in Übereinstimmung mit Ausführungsformen der vorliegenden Offenbarung. In einigen Ausführungsformen wird die semantische Korrelation von Nutzern auf der Grundlage von Nutzerprofilen (z. B. in der Nutzerprofildatenbank 216 gespeichert) bereitgestellt. Zum Beispiel kann das Nutzerprofil des Nutzers, der die Eingabe 204 (z. B. Jamie) gemacht hat, aus der Nutzerprofildatenbank 216 auf der Grundlage des eindeutigen Identifikators (z. B. Mitarbeiter-ID) bezogen werden, und kann mit einem oder mehreren anderen in der Nutzerprofildatenbank 216 gespeicherten Nutzerprofilen (unter möglicherweise Dutzenden, Hunderten, Tausenden anderen Nutzerprofilen) verglichen werden. Insbesondere kann das Nutzerprofil mit Nutzerprofilen in dem Satz Nutzerprofilen verglichen werden, der auf der Grundlage des semantischen Vergleichs von Subjekten, wie oben beschrieben, bereitgestellt wird.
-
In einigen Beispielen wird die semantische Korrelation auf der Grundlage der Graphsubsumtion oder Subgraph-Musterabgleich der Nutzerprofile bereitgestellt. Die semantische Korrelation zwischen einem ersten Nutzerprofil (d. h. dem Nutzerprofil des Nutzers, der die Eingabe 204 gemacht hat) zum Beispiel und einem zweiten in einer Nutzerprofildatenbank 216 gespeicherten Nutzerprofil wird auf der Grundlage der Maximalzahl an Eigenschaften, die das erste Profil in Bezug auf das zweite Profil durch Graphsubsumtion (Spezifikationsbeziehung) kennzeichnen, ausgewertet. In einigen Beispielen wird die Graphsubsumtion als eine Instanz von Graphisomorphismus bereitgestellt, in dem ein Isomorphismus vorhanden ist, wenn zwei Graphen äquivalent sind. Zum Beispiel werden zwei Graphen, die Kanten und Scheitel aufweisen und die dieselbe Anzahl an Scheiteln haben, die auf dieselbe Art miteinander verbunden sind, als isomorph bezeichnet. Die Subsumtion zielt auf das Identifizieren spezifikationsbasierter Beziehungen von Einheiten ab. Zum Beispiel wird TX durch (Bundes-)Staat in 4 subsumiert, da TX spezifischer als (Bundes-)Staat ist. Beachten Sie, dass die Subsumtion keine symmetrische Funktion ist. (Bundes-)Staat ist zum Beispiel nicht durch TX subsumiert.
-
In einigen Ausführungsformen wird die semantische Korrelation (C
SEM) auf der Grundlage der folgenden Beispielbeziehung bestimmt:
wobei:
P
i = das Eingabeprofil (z. B. das Nutzerprofil des Nutzers, der die Eingabe gemacht hat).
P k / i ist die Eigenschaft k des Nutzerprofils P
i.
P
j = ein potentielles Profil, das gegen P
i ausgewertet wird (z. B. das Nutzerprofil eines anderen Nutzers).
P k / j ist die Eigenschaft j des Nutzerprofils P
i.
i = 1, ..., n;
j = 1, ..., n;
n = Anzahl an anderen Nutzerprofilen in dem Satz Nutzerprofil;
m = Anzahl an Attributen in Profil; und
Subsumiere → Rückgabe 1 wenn
P k / i spezifischer al
P k / j ist, sonst Rückgabewert 0.
-
Führt man die Beispiele von oben fort, sowie wie in dem Beispiel von 5 gezeigt, kann CSEM zwischen Jamie und Paul sowie zwischen Jamie und Tom bestimmt werden. In dem Beispiel von 5 ist ein Vergleich zwischen Jamies Nutzerprofil und Pauls Nutzerprofil graphisch dargestellt. In einigen Beispielen werden Attribute der Nutzerprofile in eine oder mehrere Gruppen gruppiert. Beispielgruppen beinhalten Fachkompetenz und Kundenwirkung. In einigen Beispielen beinhaltet Fachkompetenz die Beispielattribute Arbeitsgruppe und Berufserfahrung Jahre, und Kundenwirkung beinhaltet Titel und Anzahl an Kundenbesuchen. In dem Beispiel von 5, und in Bezug auf Fachkompetenz, ist Jamie in der Kunden-Marketing-Arbeitsgruppe und hat 1 Jahr Berufserfahrung, während Paul in der Kunden-Arbeitsgruppe ist und 4 Jahre Berufserfahrung hat. In dem Beispiel von 5, und in Bezug auf die Kundenwirkung, weist Jamie den Titel Senior Manager auf einem Level 6 und 55 Kundenbesuche auf, während Paul den Titel Manager auf Level 7 und 31 Kundenbesuche aufweist. In einigen Beispielen kann CSEM zwischen Jamie und Paul als 0,5 bereitgestellt werden, und CSEM zwischen Jamie und Tom als 0,4 bereitgestellt werden. Jamie kann zum Beispiel bestimmt werden als näher zu Paul auf der Grundlage der Fachkompetenz, und näher zu Tom auf der Grundlage der Kundenwirkung.
-
Ein Satz CSEMs wird bereitgestellt und beinhaltet eine oder mehrere CSEMs, wobei jede CSEM einer jeweiligen semantischen Korrelation zwischen dem Nutzerprofil des Nutzers, der die Eingabe gemacht hat, und dem Nutzerprofil eines anderen Nutzers entspricht. Wird zum Beispiel das Nutzerprofil mit 30 anderen Nutzerprofilen verglichen, beinhaltet der Satz CSEMs 30 CSEM-Werte. Die CSEM-Werte mit der höchsten Punktzahl werden in Betracht gezogen.
-
In Übereinstimmung mit den Ausführungsformen der vorliegenden Offenbarung wird eine Inhalts- und Kontextaggregation durchgeführt auf der Grundlage der semantischen Vergleiche und der semantischen Korrelationen. Insbesondere wird eine Punktzahl (Sim) bereitgestellt auf der Grundlage der Kombination der semantischen Korrelation von Nutzerprofilen mit dem semantischen Vergleich von Subjekten (z. B. Reisen). In einigen Beispielen wird die Punktzahl gewichtet auf der Grundlage einer oder mehrerer Eigenschaften der Subjekte. In einigen Beispielen wird die Punktzahl auf der Grundlage eines oder mehrerer Eigenschaften eines Subjekts gewichtet. In einigen Beispielen wird die Punktzahl auf der Grundlage der folgenden Beispielbeziehung bestimmt:
wobei:
Nutzer von P
i derselbe wie Nutzer von S
k ist
Nutzer von P
i derselbe wie Nutzer von S
l ist
P
i = das Eingabeprofil (z. B. das Nutzerprofil des Nutzers, der die Eingabe gemacht hat)
P
j = ein potentielles Profil, das gegen P
i ausgewertet wird (z. B. das Nutzerprofil eines anderen Nutzers).
S
k = das Eingabesubjekt (z. B. die Reise, die geplant wird)
S
l = Vektor der Eigenschaft des Subjekts j (z. B. gespeicherte Reise, die mit S
l verglichen wird);
i = 1, ..., n;
k = 1, ..., n;
j = 1, ..., n;
l = 1, ..., n;
Wert = der rückzugebende Maximalwert
α = gewichteter Faktor mit Wert in [0, 1] so dass α + β = 1;
β = gewichteter Faktor mit Wert in [0, 1] α + β = 1;
n = Anzahl anderer Nutzerprofile in dem Satz Nutzerprofilen;
m = Anzahl an Reiseeigenschaften;
t = die maximale Anzahl an in Betracht gezogenen Eigenschaften; und
Subsumiere
→ Rückgabewert 1 wenn P
l allgemeiner als P
k ist, sonst Rückgabewert 0.
-
Führt man die Beispiele von oben fort, kann eine Punktzahl zwischen Jamies geplanter Reise nach Austin und Pauls gespeicherter Reise nach Austin von 0,84 bereitgestellt werden, und eine Punktzahl zwischen Jamies geplanter Reise nach Austin und Toms gespeicherter Reise nach Boston von 0,62 bereitgestellt werden. Entsprechend kann ein Satz Daten als (Jamie, {(Pauls Reise, 0,84), (Toms Reise, 0,62)}) bereitgestellt werden.
-
In einigen Ausführungsformen werden die gespeicherten Subjekte auf der Grundlage der Punktzahlen eingeordnet (z. B. höchste zu niedrigster), und das elektronische Musterdokument wird auf der Grundlage von Werten der gespeicherten Subjekte im Hinblick auf die Punktzahlen bereitgestellt. In einigen Beispielen kann ein elektronisches Musterdokument als eine Vorlage bereitgestellt werden, die eine Vielzahl an Eigenschaften in jeweiligen Feldern, Werte der Eigenschaften, die auf der Grundlage der Eingabe bereitgestellt werden sollen, sowie ein oder mehrere der gespeicherten Subjekte beinhalten. Zum Beispiel, und in dem Beispielkontext, kann ein elektronisches Vorlagedokument Felder für Ort, Dauer, Datum, Grund, Flüge, Transportmittel, Restaurant, Externe Veranstaltung und ähnliches beinhalten. In einigen Beispielen wird ein oder werden mehrere Felder auf der Grundlage der Eingabe (z. B. die durch Jamie gemachte Eingabe, um die Reiseplanung auszulösen) ausgefüllt. Zum Beispiel Ort: Austin, TX, USA, Dauer: 2 Tage, Datum: 16.02.2016, Grund: Akquisebesuch. In einigen Beispielen wird ein oder werden mehrere Felder auf der Grundlage von Eigenschaften, die aus den gespeicherten Subjekten bereitgestellt werden, ausgefüllt. Zum Beispiel Transportmittel: Öffentliche Transportmittel (von Pauls Reise nach Austin), Restaurant: „Trio” Kette (von Toms Reise nach Boston), Fluglinie: USA Airways (von Pauls und Toms jeweiligen Reisen), und Flüge: Dublin → Chicago → Austin (von Pauls Reise nach Austin).
-
In einigen Ausführungsformen wird das elektronische Musterdokument auf der Grundlage einer Rangliste semantisch ähnlicher gespeicherter Subjekte (z. B. in der engeren Auswahl befindliche Reisen) ausgefüllt. In einigen Beispielen werden die gespeicherten Subjekte auf der Grundlage der oben beschriebenen Sim-Punktzahl eingeordnet, je höher die Punktzahl, desto höher der Rang. Die Auswahl von Werten bestimmter Felder, um das elektronische Musterdokument auszufüllen, basiert auf dem Abrufen von Werten aus Feldern von gespeicherten Subjekten, beginnend mit dem höchstrangig gespeicherten Subjekt. In einigen Beispielen geht das System iterativ alle benötigten Felder durch (z. B. Transportmittel, Fluglinien, etc.). Wenn diese von einem gegenwärtig betrachteten, gespeicherten Subjekt vorhanden sind, wählt das System Werte zum Ausfüllen der Felder aus (z. B. Öffentliche Transportmittel, USA Airways). Wenn diese nicht von dem gegenwärtig betrachteten, gespeicherten Subjekt vorhanden sind, geht das System durch die nächstbesten Übereinstimmung (z. B. dem nächsten gespeicherten Subjekt in der Rangliste der gespeicherten Subjekte), um Felder, die aus höherrangigen gespeicherten Subjekten fehlen, auszufüllen (z. B. Restaurant „Trio” Kette).
-
In einigen Ausführungsformen wird das elektronische Musterdokument wie oben beschrieben ausgefüllt und dem Nutzer angezeigt. Zum Beispiel kann das elektronische Musterdokument dem Nutzer auf einem Computergerät angezeigt werden. In einigen Beispielen kann der Nutzer eine oder mehrere Eigenschaften des Subjekts, das in dem elektronischen Dokument erfasst ist, bearbeiten. Zum Beispiel kann der Nutzer eine oder mehrere Eigenschaften hinzufügen, löschen oder bearbeiten (verändern).
-
In einigen Ausführungsformen kann das elektronische Musterdokument einem oder mehreren Diensten zum Buchen des Subjekts bereitgestellt werden. Zum Beispiel kann das elektronische Musterdokument einem Hotelbuchungsservice, einem Flugbuchungsservice, einem Autovermietungsservice, einem Restaurantbuchungsservice und ähnlichem bereitgestellt werden. In einigen Beispielen kann ein einziger Service eines oder mehrere aus Hotel-, Flug-, Mietwagen, Restaurantbuchung erledigen. In einigen Beispielen werden Buchungsservices als einer oder mehrere computerimplementierte Services bereitgestellt. Zum Beispiel kann ein computerimplementierter Buchungsservice das elektronische Musterdokument empfangen und Buchungsinformationen auf der Grundlage der im elektronischen Musterdokument bereitgestellten Werte bereitstellen. Zum Beispiel, und im Beispielkontext, kann ein Flugbuchungsservice das elektronische Musterdokument empfangen, das anzeigt, dass USA Airways von Dublin → Chicago → Austin am 16.02.2016, Rückflug am 18.02.2016, geflogen werden soll, und kann diese Informationen verarbeiten, um Flüge zu finden. In einigen Beispielen kann der Flugbuchungsservice automatisch die Flüge im Auftrag des Reisenden (z. B. Jamie) unter Nutzung gespeicherter Informationen (z. B. in dem Nutzerprofil) buchen. In einigen Beispielen kann der Flugbuchungsservice dem Nutzer potentielle Flüge bereitstellen, aus denen der Nutzer auswählen kann, und die durch den Nutzer ausgewählten Flüge werden gebucht. Dies kann für Hotels, Mietwagen und ähnliches (z. B. automatisch gebucht, oder gebucht auf der Grundlage von dem Nutzer gemachten Vorschlägen, aus denen der Nutzer auswählt) erfolgen. In einigen Ausführungsformen wird ein elektronisches Musterdokument mit der Buchungsinformation bereitgestellt, egal, ob die Buchung automatisch und/oder auf der Grundlage der Nutzerauswahl erfolgt.
-
6 zeigt ein elektronisches Beispiel-Musterdokument 600 in Übereinstimmung mit Ausführungsformen der vorliegenden Offenbarung. In Übereinstimmung mit dem Beispielkontext beinhaltet das Beispiel-Musterdokument 600 eine Reiseroute mit Buchungsdetails für Flüge, Mietwagen, Hotel und Ähnliches. 7 zeigt einen Beispielprozess 700, der in Ausführungsformen der vorliegenden Offenbarung ausgeführt werden kann. In einigen Beispielen wird der Beispielprozess 700 bereitgestellt unter Nutzung einer oder mehrerer computerausführbarer Programme, die durch ein oder mehrere Computergeräte (z. B. das Back-End-System 108 aus 1) ausgeführt werden. Der Beispielprozess 700 kann ausgeführt werden, um ein Muster wie hier beschrieben bereitzustellen.
-
Eine Nutzereingabe wird empfangen (702). Zum Beispiel macht ein Nutzer eine Eingabe 204 in dem elektronischen Musterdokumentgenerationsmodul 202 aus 2. In einigen Beispielen stellt die Nutzereingabe Daten, die auf ein Subjekt hinweisen, bereit. Ein Satz gespeicherter Subjekte wird auf der Grundlage semantischer Identifikation (704) bestimmt. Zum Beispiel wird das Eingabesubjekt semantisch mit einer Vielzahl gespeicherter Subjekte (z. B. in der Wissensdatenbank 214 aus 2 als mindestens ein Abschnitt eines Wissensgraphen) verglichen. In einigen Beispielen wird der Satz gespeicherter Subjekte als ein Satz ΔSEMs bereitgestellt oder beinhaltet diesen, wie hier beschrieben. Ein Satz Nutzerprofile wird bestimmt auf der Grundlage semantischer Korrelation (706). Zum Beispiel wird ein Nutzerprofil des Nutzers, der die Eingabe gemacht hat, mit einer Vielzahl anderer Nutzerprofile semantisch korreliert. In einigen Beispielen werden die Nutzerprofile in einem Satz Nutzerprofilen bereitgestellt, der bestimmt wird auf der Grundlage der gespeicherten Subjekte, die während der semantischen Identifikation betrachtet werden. In einigen Beispielen wird der Satz Nutzerprofile, der auf der Grundlage semantischer Korrelation bereitgestellt wird, als ein Satz ΔSEMs bereitgestellt oder beinhaltet diesen, wie hier beschrieben.
-
Inhalt und Kontext werden aggregiert (708). In einigen Beispielen, und wie hier beschrieben, werden Inhalt und Kontext aggregiert auf der Grundlage des Satzes ΔSEMs und des Satzes ΔSEMs, der jeweilige Punktzahlen, die zum Subjekt und Nutzertupeln zugehörig sind, wie hier beschrieben, bereitstellen soll. Zum Beispiel (Jamie, {(Pauls Reise, 0,84), (Toms Reise, 0,62)}). Ein elektronisches Musterdokument wird bereitgestellt (710). Zum Beispiel werden Eigenschaften, die aus der Eingabe bereitgestellt sind, und ein oder mehrere gespeicherte Subjekte genutzt, um Felder des elektronischen Musterdokuments auszufüllen, wie hier beschrieben. Einer oder mehrere Vorgänge/Abläufe werden automatisch durchgeführt auf der Grundlage des elektronischen Musterdokuments (712). Zum Beispiel wird das elektronische Musterdokument automatisch weitergeleitet an einen oder mehrere computerimplementierte Buchungsservices. In einigen Beispielen buchen der eine oder die mehreren computerimplementierten Buchungsservices automatisch jeweilige Eigenschaften (z. B. Hotel, Flug, Restaurant), und/oder machen dem Nutzer automatisch Vorschläge und buchen einen durch den Nutzer ausgewählten Vorschlag.
-
8 zeigt einen Beispielprozess 800, der in Ausführungsformen der vorliegenden Offenbarung ausgeführt werden kann. In einigen Beispielen wird der Beispielprozess 800 bereitgestellt unter Nutzung einer oder mehrerer computerausführbarer Programme, die durch ein oder mehrere Computergeräte (z. B. das Back-End-System 108 aus 1; das semantische Identifikationsmodul 208 aus 2) ausgeführt werden. Der Beispielprozess 800 wird ausgeführt, um einen Satz gespeicherter Subjekte auf der Grundlage semantischer Identifikation bereitzustellen.
-
Eine Nutzereingabe wird empfangen (802). Zum Beispiel macht ein Nutzer eine Eingabe 204 in dem elektronischen Musterdokumentgenerationsmodul 202 aus 2. In einigen Beispielen stellt die Nutzereingabe Daten, die auf ein Subjekt hinweisen, bereit. Ein Zähler j wird gleich 1 gesetzt (804). Eigenschaften eines gespeicherten Subjekts Sj werden empfangen (806). Zum Beispiel werden Eigenschaften von Sj durch das semantische Identifikationsmodul 208 aus der Wissensdatenbank 214 empfangen. ΔSEM,l→j wird bestimmt (808). Zum Beispiel vergleicht das semantische Identifikationsmodul 208 semantisch die Eigenschaften des Eingabesubjekts (Sl) mit dem gespeicherten Subjekt (Sj), um ΔSEM,l→j bereitzustellen, wie hier beschrieben. Es wird bestimmt, ob es weitere gespeicherte Subjekte gibt (810). Zum Beispiel wird bestimmt, ob alle relevanten gespeicherten Subjekte, die in der Wissensdatenbank 214 gespeichert sind, ausgewertet worden sind. Falls nicht, wird der Zähler j erhöht (812) und der Beispielprozess schleift zurück. Falls dem so ist, wird ein Satz ΔSEMs bereitgestellt (814).
-
9 zeigt einen Beispielprozess 900, der in Ausführungsformen der vorliegenden Offenbarung ausgeführt werden kann. In einigen Beispielen wird der Beispielprozess 900 bereitgestellt unter Nutzung einer oder mehrerer computerausführbarer Programme, die durch ein oder mehrere Computergeräte (z. B. das Back-End-System 108 aus 1; das semantische Korrelationsmodul 210 aus 2) ausgeführt werden. Der Beispielprozess 900 wird ausgeführt, um einen Satz gespeicherter Subjekte auf der Grundlage semantischer Korrelation bereitzustellen.
-
Ein Nutzerprofil (Pl) wird empfangen (902). Zum Beispiel empfängt das semantische Korrelationsmodul 210 das Nutzerprofil aus der Nutzerprofildatenbank 216 auf der Grundlage eines Nutzeridentifikators, der zu dem Nutzer zugehörig ist, der die Eingabe 204 gemacht hat. Ein Zähler k wird gleich 1 gesetzt (904). Attribute eines profilierten Nutzers (Pk) werden empfangen (906). Zum Beispiel werden das Nutzerprofil (Pk) und seine zugehörigen Attribute aus der Nutzerprofildatenbank 216 empfangen. Eine semantische Korrelation CSEM,l→K wird bestimmt (908). Zum Beispiel korreliert das semantische Korrelationsmodul 210 semantisch Attribute des Eingabe-Nutzerprofils (Pl) mit einem anderen Nutzerprofil (PK), um CSEM,l→K bereitzustellen, wie hier beschrieben. Es wird bestimmt, ob es weitere Nutzerprofile für die semantische Korrelation (910) gibt. Zum Beispiel wird bestimmt, ob alle relevanten Nutzerprofile, die in der Nutzerprofildatenbank 216 gespeichert sind, ausgewertet worden sind. Falls nicht, wird der Zähler k erhöht (912) und der Beispielprozess schleift zurück. Falls dem so ist, wird ein Satz CSEMs bereitgestellt (914).
-
Ausführungsformen und alle in dieser Patentbeschreibung beschriebenen Funktionsabläufe können in digitalen Elektronikschaltungen, oder in Computersoftware, -firmware oder -hardware verwirklicht werden, einschließlich der in dieser Beschreibung und ihren strukturellen Äquivalenten offengelegten Strukturen, oder in Kombinationen aus einer oder mehreren von diesen. Ausführungsformen können als ein oder mehrere Computerprogrammprodukte verwirklicht werden, d. h. ein oder mehrere Module von Computerprogrammanweisungen, die auf einem computerlesbaren Medium gespeichert sind, um durch Datenverarbeitungsgeräte ausgeführt zu werden oder deren Betrieb zu regeln bzw. steuern. Das computerlesbare Medium kann ein maschinenlesbares Speichergerät sein, ein maschinenlesbares Speichersubstrat, eine Speichervorrichtung, eine Zusammensetzung einer Materie bzw. eines Gegenstands bzw. eines Körpers, der ein maschinenlesbares ausgebreitetes Signal bewirkt, oder eine Kombination von einem oder mehreren von ihnen sein. Der Begriff ”Computeranlage” umfasst alle Geräte, Vorrichtungen und Maschinen zur Verarbeitung von Daten, einschließlich als Beispiel einen programmierbaren Prozessor, einen Computer oder mehrere Prozessoren oder Computer. Die Vorrichtung kann zusätzlich zur Hardware einen Code umfassen, der eine Ausführungsumgebung für das fragliche Computerprogramm erzeugt, z. B. einen Code, der eine Prozessorfirmware, einen Protokollstapel, ein Datenbankverwaltungssystem, ein Betriebssystem oder eine Kombination von einem oder mehreren von ihnen bildet. Ein ausgebreitetes Signal ist ein künstlich erzeugtes Signal, z. B. ein von einer Maschine erzeugtes elektrisches, optisches oder elektromagnetisches Signal, das erzeugt wird, um Informationen zur Übertragung an eine geeignete Empfängervorrichtung zu codieren.
-
Ein Computerprogramm (auch als Programm, Software, Softwareanwendung, Skript oder Code bekannt) kann in einer beliebigen angemessenen Form einer Programmiersprache geschrieben werden, einschließlich kompilierter oder interpretierter Sprachen, und es kann in einer beliebigen angemessenen Form eingesetzt werden, einschließlich als Stand-Alone-Programm oder als Modul, Komponente, Subroutine oder andere Einheit, die zur Verwendung in einer Computerumgebung geeignet ist. Ein Computerprogramm entspricht nicht notwendigerweise einer Datei in einem Dateisystem. Ein Programm kann in einem Abschnitt einer Datei gespeichert werden, der andere Programme oder Daten hält (z. B. ein oder mehrere Skripts, die in einem Markup-Language-Dokument gespeichert sind), in einer einzelnen Datei, die für das fragliche Programm zweckbestimmt ist, oder in mehreren koordinierten Dateien (z. B. Dateien, die ein oder mehrere Module, Unterprogramme oder Codeabschnitte speichern). Ein Computerprogramm kann eingesetzt werden, damit es auf einem Computer oder auf mehreren Computern ausgeführt wird, die sich an einem Ort befinden oder über mehrere Orte verteilt und durch ein Kommunikationsnetzwerk miteinander verbunden sind.
-
Die Prozesse und die Logikflüsse, die in dieser Beschreibung beschrieben sind, können von einem oder mehreren programmierbaren Prozessoren durchgeführt werden, die ein oder mehrere Computerprogramme ausführen, um Funktionen durch Verarbeiten von Eingabedaten und Erzeugen einer Ausgabe durchzuführen. Die Prozesse und Logikflüsse können auch durch eine Sonderzweck-Logikschaltung, z. B. ein FPGA (anwenderprogrammierbares Verknüpfungsfeld) oder eine ASIC (anwendungsspezifische integrierte Schaltung), durchgeführt werden und die Vorrichtung kann als diese implementiert werden.
-
Prozessoren, die für die Ausführung eines Computerprogramms geeignet sind, umfassen beispielhaft sowohl Universal- als auch Sonderzweck-Mikroprozessoren und irgendeinen oder mehrere Prozessoren irgendeiner angemessenen Art eines digitalen Computers. Im Allgemeinen empfängt ein Prozessor Befehle und Daten von einem Festwertspeicher oder einem Direktzugriffsspeicher oder beiden. Die Elemente eines Computers können einen Prozessor zum Ausführen von Befehlen und eine oder mehrere Speichervorrichtungen zum Speichern von Befehlen und Daten beinhalten. Im Allgemeinen beinhaltet ein Computer auch eine oder mehrere Massenspeichervorrichtungen zum Speichern von Daten, z. B. magnetische oder optische Platten oder magnetooptische Disks, oder ist wirkverbunden zum Empfangen von Daten von oder Übertragen von Daten zu diesen, oder beides. Ein Computer muss jedoch nicht zwangsläufig solche Vorrichtungen aufweisen. Überdies kann ein Computer in eine andere Vorrichtung eingebettet sein, z. B. ein Mobiltelefon, einen persönlichen digitalen Assistenten (PDA), ein mobiles Audiowiedergabegerät, einen Empfänger eines globalen Positionierungssystems (GPS), um nur einige zu nennen. Computerlesbare Medien, die zum Speichern von Computerprogrammbefehlen und Daten geeignet sind, umfassen alle Formen von nicht-flüchtigem Speicher, Medien und Speichervorrichtungen, einschließlich als Beispiel Halbleiterspeichervorrichtungen, z. B. EPROM, EEPROM und Flash-Speichervorrichtungen; Magnetplatten, z. B. interne Festplatten oder entnehmbare Festplatten; magnetooptische Disks; und CD-ROM- und DVD-ROM-Disks. Der Prozessor und der Speicher können durch eine Sonderzweck-Logikschaltung ergänzt oder in diese integriert sein.
-
Um eine Interaktion mit dem Benutzer bereitzustellen, können Ausführungsbeispiele der Erfindung auf einem Computer mit einer Anzeigevorrichtung, z. B. einem CRT-(Kathodenstrahlröhre) oder LCD-(Flüssigkristallanzeige)Monitor, zum Anzeigen von Informationen für den Benutzer, und einer Tastatur und einem Zeigegerät, z. B. einer Maus oder einem Trackball, durch die der Benutzer eine Eingabe in den Computer machen kann, implementiert werden. Andere Arten von Vorrichtungen können verwendet werden, um ebenso eine Interaktion mit einem Benutzer bereitzustellen; beispielsweise kann eine Rückkopplung, die dem Benutzer gegeben wird, eine beliebige angemessene Form von sensorischer Rückkopplung sein, z. B. eine visuelle Rückkopplung, eine auditive Rückkopplung oder eine taktile Rückkopplung; und eine Eingabe vom Benutzer kann in einer beliebigen angemessenen Form empfangen werden, einschließlich akustischer, Sprach- oder taktiler Eingabe.
-
Ausführungsformen können in einer Computeranlage verwirklicht werden, die eine Back-End-Komponente beinhaltet, z. B. als ein Datenserver, oder eine Middleware-Komponente beinhaltet, z. B. einen Anwendungsserver, oder eine Front-End-Komponente beinhaltet, z. B. einen Client-Computer mit einer graphischen Benutzeroberfläche oder ein Web-Browser, durch den ein Nutzer mit einer Ausführungsform interagieren kann, oder einer beliebigen angemessenen Form oder Medium digitaler Datenkommunikation (z. B. ein Kommunikationsnetzwerk). Beispiele von Kommunikationsnetzwerken beinhalten ein Local Area Network („LAN”) und ein Wide Area Network („WAN”), z. B. das Internet.
-
Die Computeranlage kann Clients und Server beinhalten. Client und Server befinden sich im Allgemeinen voneinander entfernt und interagieren typischerweise über ein Kommunikationsnetzwerk. Die Beziehung zwischen Client und Server entsteht durch Computerprogramme, die auf den entsprechenden Computern laufen und eine Client-Server-Beziehung miteinander aufweisen.
-
Obwohl diese Patentbeschreibung viele Besonderheiten enthält, sollten diese nicht als Begrenzungen des Schutzbereichs der Erfindung oder dessen, was beansprucht sein kann, sondern vielmehr als Beschreibungen von Merkmalen, die für spezielle Ausführungsbeispiele der Erfindung spezifisch sind, aufgefasst werden. Bestimmte Merkmale, die in dieser Patentbeschreibung im Zusammenhang mit separaten Ausführungsbeispielen beschrieben sind, können auch in Kombination in einem einzigen Ausführungsbeispiel implementiert werden. Dagegen können verschiedene Merkmale, die im Zusammenhang mit einem einzigen Ausführungsbeispiel beschrieben sind, auch in mehreren Ausführungsbeispielen separat oder in einer beliebigen geeigneten Unterkombination implementiert werden. Obwohl Merkmale vorstehend beschrieben sein können, die in bestimmten Kombinationen wirken und sogar anfänglich als solche beansprucht sind, können überdies ein oder mehrere Merkmale von einer beanspruchten Kombination in einigen Fällen von der Kombination entfernt werden und die beanspruchte Kombination kann auf eine Unterkombination oder Variation einer Unterkombination gerichtet sein.
-
Ebenfalls sollte, obwohl Vorgänge in den Zeichnungen in einer speziellen Reihenfolge dargestellt sind, dies nicht als Erfordernis verstanden werden, dass solche Vorgänge in der gezeigten speziellen Reihenfolge oder in einer sequentiellen Reihenfolge durchgeführt werden oder dass alle dargestellten Abläufe durchgeführt werden, um erwünschte Ergebnisse zu erreichen. Unter bestimmten Umständen können Multitasking und parallele Verarbeitung vorteilhaft sein. Überdies sollte die Trennung von verschiedenen Systemkomponenten in den vorstehend beschriebenen Ausführungsbeispielen nicht als Erfordernis für eine solche Trennung in allen Ausführungsbeispielen verstanden werden, und es sollte selbstverständlich sein, dass die beschriebenen Programmkomponenten und Systeme im Allgemeinen in einem einzigen Softwareprodukt zusammen integriert oder in mehrere Softwareprodukte gepackt werden können.
-
Eine Anzahl an Ausführungsbeispielen der Erfindung wurde beschrieben. Nichtsdestotrotz wird davon ausgegangen, dass verschiedene Änderungen vorgenommen werden können, ohne vom Sinn und Schutzbereich der Offenbarung abzuweichen. Zum Beispiel können verschiedene Formen der oben gezeigten Flüsse benutzt werden, wobei Schritte in eine neue Reihenfolge gebracht, hinzugefügt oder weggenommen werden können. Entsprechend befinden sich weitere Ausführungsformen innerhalb des Schutzbereichs der folgenden Ansprüche.