-
HINTERGRUND
-
Technisches Gebiet
-
Die vorliegende Offenlegung bezieht sich allgemein auf Systeme und Verfahren für domänenspezifische Wissensbasen (KB). Insbesondere bezieht sich die vorliegende Offenlegung auf domänenspezifische Konversationssysteme, die Abfrage-Relaxation nutzen, um natürlichsprachliche Fragen/Abfragen zu verstehen.
-
Beschreibung des einschlägigen Stands der Technik
-
Heutzutage erfreuen sich Konversationssysteme zunehmender Beliebtheit, da sie eine einfache und natürliche Möglichkeit zur Interaktion mit verschiedenen Typen von Anwendungen und Daten bieten. Solche Systeme werden häufig verwendet, um mit verschiedenen domänenspezifischen Wissensbasen (KBs) zu interagieren, einschließlich Finanzen, medizinische Versorgung, Unterhaltung, um nur einige der vielen existierenden KBs zu nennen.
-
KURZDARSTELLUNG
-
Gemäß verschiedenen Ausführungsformen werden ein Computergerät, ein nicht-flüchtiges, computerlesbares Speichermedium und ein Verfahren für ein Verfahren zur Abfrage-Relaxation bereitgestellt, das externe Wissensquellen (eine domänenspezifische externe Wissensquelle) wirksam einsetzt, um das Domänenvokabular für domänenspezifische Konversationssysteme zu erweitern.
-
Gemäß einer Ausführungsform enthält ein nicht-flüchtiges, computerlesbares Speichermedium einen computerlesbaren Programmcode mit computerlesbaren Anweisungen, die, wenn sie ausgeführt werden, ein Computergerät veranlassen, ein Verfahren zur Abfrage-Relaxation auszuführen. Das Verfahren beinhaltet die Operationen des Empfangens einer Abfrage von einem Konversationssystem. Mindestens ein Suchbegriff wird in der Abfrage in dem Verfahren zur Relaxation ermittelt. Instanzdaten sind Ausgabedaten an das Konversationssystem in Reaktion auf die Ermittlung, dass die Instanzdaten in Datenspeichern mit mindestens einem Suchbegriff in der Abfrage übereinstimmen.
-
In Reaktion auf die Ermittlung, dass der eine Suchbegriff nicht mit den Instanzdaten in den Datenspeichern übereinstimmt, wird die empfangene Abfrage an eine externe domänenspezifische Wissensquelle ausgegeben. Das Computergerät empfängt die relaxierten Datenübereinstimmungen von der externen domänenspezifischen Wissensquelle, die mit mindestens einem Suchbegriff in der Abfrage auf Grundlage einer Mehrzahl von Kriterien semantisch verwandt sind. Das Computergerät erzeugt eine Rückmeldung auf die Abfrage auf Grundlage kontextueller Information und struktureller Information.
-
In einer Ausführungsform basiert die Mehrzahl von Kriterien der semantisch verwandten Begriffe, die durch das Computergerät empfangen wurden, auf struktureller Information, die von der externen domänenspezifischen Wissensquelle erhalten wurde, auf kontextueller Information, die von der Abfrage erhalten wurde, und auf einem Informationsinhalt des Textkorpus, von welchem die Wissensbasis kuratiert wurde.
-
Gemäß einer Ausführungsform umfasst ein System, das so konfiguriert ist, dass es eine Abfrage-Relaxation ausführt, eine Mehrzahl von Datenspeichern. Ein Übersetzungsindex ist so konfiguriert, dass er eine Abfrage von einem Konversationssystem empfängt, Instanzdaten bereitstellt, die auf in den Datenspeichern gespeicherte Datenwerte und semantisch verwandte Begriffe indiziert sind, mindestens einen Suchbegriff in der Abfrage ermittelt, und Instanzdaten an das Konversationssystem ausgibt, wenn die Daten in den Datenspeichern mit dem mindestens einen Suchbegriff in der Abfrage übereinstimmen. Ein externer domänenspezifischer Wissensindex ist so konfiguriert, dass er die Abfrage vom Übersetzungsindex empfängt, wenn es in den Datenspeichern keine Übereinstimmung mit dem mindestens einen Suchbegriff gibt. Der externe domänenspezifische Wissensindex ist ferner so konfiguriert, dass er die empfangene Abfrage an eine externe domänenspezifische Wissensquelle ausgibt und von der externen domänenspezifischen Wissensquelle relaxierte Daten empfängt, die mit mindestens einem Suchbegriff in der Abfrage semantisch verwandt sind. Die relaxierten Daten basieren auf kontextueller Information und struktureller Information, die mit der Abfrage verknüpft ist. In Hinzufügung erzeugt das System eine Rückmeldung auf die Abfrage auf Grundlage kontextueller Information und struktureller Information.
-
In einer Ausführungsform beinhaltet die externe domänenspezifische Wissensquelle Daten in Form von einer oder mehreren Taxonomien, Ontologien oder semantischen Netzwerken.
-
Gemäß einer Ausführungsform beinhaltet ein computer-implementiertes Verfahren zum Ausführen von Abfrage-Relaxation das Empfangen einer Abfrageausgabe von einem Konversationssystem durch ein Computergerät. Mindestens ein Suchbegriff in der Abfrage wird durch das Computergerät ermittelt. Instanzdaten werden an das Konversationssystem in Reaktion auf die Ermittlung ausgegeben, dass die Instanzdaten in einem Datenspeicher mit dem mindestens einen Suchbegriff in der Abfrage übereinstimmen. Das Computergerät gibt die empfangene Abfrage in Reaktion auf die Ermittlung, dass der mindestens eine Suchbegriff nicht mit den Instanzdaten im Datenspeicher übereinstimmt, an eine externe domänenspezifische Wissensquelle aus. Das Computergerät empfängt die relaxierten Datenübereinstimmungen von der externen domänenspezifischen Wissensquelle, die auf Grundlage einer Mehrzahl von mit der Abfrage verknüpften Kriterien mit mindestens einem Suchbegriff in der Abfrage semantisch verwandt sind. Das Computergerät erzeugt eine Rückmeldung auf die Abfrage auf Grundlage kontextueller Information und struktureller Information.
-
Gemäß einer Ausführungsform, ein Offline-Adaptionsverfahren zum Anpassen und Integrieren von externen Wissensdomänen-spezifischen Wissensquellen in eine vorhandene Wissensbasis (KB) eines kognitiven Konversationssystems. Das Verfahren beinhaltet das Erhalten einer Instanzkonzept-Häufigkeit aus der bestehenden KB. Alle Kontexte bei denen eine Domänenontologie, in der ein Instanzkonzept verwendet wird, werden berechnet. Alle Instanzkonzepte werden von der bestehenden KB auf die externe domänenspezifische Wissensquelle abgebildet. Die bestehende KB ist so konfiguriert, dass sie in Reaktion auf eine natürlichsprachliche Abfrage, die von einem Konversationssystem empfangen wird, nach semantisch verwandten Begriffen sucht.
-
Gemäß einer Ausführungsform beinhaltet ein computer-implementiertes Verfahren zum wirksamen Einsetzen von Informationsgehalt in einer vorhandenen Wissensbasis (KB), die für die Suche nach semantisch verwandten Begriffen unter Verwendung von Abfrage-Relaxation in Reaktion auf eine natürlichsprachliche Abfrage konfiguriert ist, das Zuweisen unterschiedlicher Gewichtungen zu isA- und hasA-Beziehungen in einer externen domänenspezifischen Wissensquelle. Eine Gewichtung eines Pfades, der zwei Instanzkonzepte c1 (Suchkonzept) und c2 (verwandtes Konzept) verbindet, wird gemäß dem Folgenden berechnet:
wobei:
- ein Abstand zwischen dem Instanzkonzept C1 und dem verwandten Konzept C2 |D| ist, und
- Wi die Gewichtung der i-ten Beziehung von C1 zu C2 ist.
-
Die Ergebnisse für das berechnete Gewicht eines Pfades für jeweils zwei Instanzkonzepte basieren auf Ähnlichkeitsscores, und es werden die relaxierten Ergebnisse ausgegeben, bei denen die Ähnlichkeitsscores einen höchsten Ergebnisbereich betragen.
-
Diese und andere Merkmale werden aus der folgenden ausführlichen Beschreibung von veranschaulichenden Ausführungsformen davon offenkundig, die in Verbindung mit den begleitenden Zeichnungen gelesen werden soll.
-
Figurenliste
-
Die Zeichnungen stellen veranschaulichende Ausführungsformen dar. Sie veranschaulichen nicht alle Ausführungsformen. Weitere Ausführungsformen können zusätzlich oder stattdessen verwendet werden. Details, die offenkundig erscheinen oder unnötig sind, können weggelassen worden sein, um Platz zu sparen oder aus Gründen einer effizienteren Veranschaulichung. Einige Ausführungsformen können mit zusätzlichen Komponenten oder Schritten und/oder ohne alle der veranschaulichten Komponenten oder Schritte ausgeübt werden. Wenn in verschiedenen Zeichnungen dieselben Bezugszeichen erscheinen, wird damit auf dieselben oder ähnliche Komponenten oder Schritte verwiesen.
- 1 veranschaulicht eine beispielhafte Architektur eines domänenspezifischen Konversationssystems unter Verwendung von Abfrage-Relaxation, in Übereinstimmung mit einer illustrativen Ausführungsform.
- 2A veranschaulicht die generelle Funktionsweise eines gewünschten Konversationsflusses, in Übereinstimmung mit einer illustrativen Ausführungsform.
- 2B veranschaulicht ein Beispiel für die Erfassung von Instanzdaten, in Übereinstimmung mit einer veranschaulichenden Ausführungsform.
- 3 ist ein Ablaufplan zur Veranschaulichung einer Funktionsweise eines domänenspezifischen Konversationssystems, das mit einem System zur Abfrage-Relaxation kommuniziert, in Übereinstimmung mit einer veranschaulichenden Ausführungsform.
- 4 veranschaulicht ein Beispiel für das Einlesen der Systemized Nomenclature of Medicine-Clinical Terms in einen Relaxations-Service, in Übereinstimmung mit einer veranschaulichenden Ausführungsform.
- 5 ist ein Beispiel für ein Layout der strukturellen Informationen in isA-Pfaden, in Übereinstimmung mit einer veranschaulichenden Ausführungsform.
- 6 veranschaulicht einen Teil der Systemized Nomenclature of Medicine-Clinical Terms mit der Instanzkonzept-Häufigkeit, in Übereinstimmung mit einer veranschaulichenden Ausführungsform.
- 7 und 8 sind veranschaulichende Beispiele, die die hybride Herangehensweise der vorliegenden Offenlegung mit einer Radius-basierten Herangehensweise, in Übereinstimmung mit einer veranschaulichenden Ausführungsform vergleichen.
- 9 ist eine funktionale Blockdiagramm-Darstellung einer Computer-Hardware-Plattform, die mit verschiedenen vernetzten Komponenten kommunizieren kann, in Übereinstimmung mit einer veranschaulichenden Ausführungsform.
- 10 veranschaulicht eine Cloud-Computing-Umgebung, in Übereinstimmung mit einer veranschaulichenden Ausführungsform.
- 11 stellt Abstraktionsmodellschichten dar, in Übereinstimmung mit einer veranschaulichenden Ausführungsform.
-
AUSFÜHRLICHE BESCHREIBUNG
-
Überblick
-
In der folgenden ausführlichen Beschreibung werden zahlreiche spezifische Details mithilfe von Beispielen dargelegt, um für ein umfassendes Verständnis der relevanten Lehren zu sorgen. Es sollte jedoch offensichtlich sein, dass die vorliegenden Lehren ohne derartige Details ausgeübt werden können. In anderen Fällen wurden wohlbekannte Verfahren, Prozeduren, Komponenten und/oder Schaltungen auf einer relativ hohen Ebene ohne Details beschrieben, um eine unnötige Unverständlichkeit von Aspekten der vorliegenden Lehren zu vermeiden.
-
In einem Aspekt bezieht sich die vorliegende Offenlegung auf ein Verfahren und System zur Abfrage-Relaxation, das externe Wissensquellen wirksam einsetzt, um das Domänenvokabular für domänenspezifische Konversationssysteme zu erweitern. In domänenspezifischen Konversationssystemen ist die Abfrage-Relaxation eine Technik, bei der eine Abfrage in natürlicher Sprache so transformiert wird, dass sie die Absicht des Benutzers repräsentiert. Anstatt leere Antworten (z.B. „nicht gefunden“) an den Benutzer zurückzugeben, wird die Abfrage-Relaxation verwendet, bei der die Rückmeldung erweitert wird, um einige oder mehrere Antworten zurückzugeben. Abfrage-Relaxation-Techniken können zuerst die restriktivste Version einer Abfrage ausführen, gefolgt von einer Relaxation der Abfrage, bis eine vorher festgelegte Anzahl von Treffern zurückgegeben wird. Die Abfrage-Relaxation führt jedoch zu einer Verringerung der Präzision und des Recalls, wenn die Suche weniger restriktiv wird. Im Fall von domänenspezifischen Konversationssystemen, die externe Wissensquellen durchsuchen und ein tiefes Domänenverständnis nutzen, um die Beantwortung von Abfragen mit hoher Präzision und Recall zu gewährleisten, können Abfrage-Relaxationstechniken die Präzision und den Recall einer Suche verringern. Hier werden veranschaulichende Ausführungsformen eines Verfahrens und eines Systems zur Abfrage-Relaxation dargestellt, die die Absicht des Benutzers besser darstellen, um eine hohe Präzision und einen hohen Recall bereitzustellen.
-
Das Verfahren zur Abfrage-Relaxation besteht aus zwei Phasen, der Offline-Anpassung an externe Wissensquellen und der Online-Abfrage-Relaxation. Die Diskussion hierin stellt veranschaulichende Beispiele für das Anpassen und das Einbeziehen einer externen Wissensquelle in ein System uns ein Verfahren zur Abfrage-Relaxation dar.
-
In der Offline-Anpassungsphase können zusätzliche anwendungsspezifische Beziehungen in die angepasste externe Wissensquelle eingeführt werden. Genauer gesagt, wird eine zusätzliche Kante zu einem Paar von Konzepten eingeführt in Reaktion darauf, dass die folgenden Bedingungen erfüllt sind: (1) zwei Instanzkonzepte sind nicht direkt miteinander verbunden (z.B. Ein-Hop-Nachbar), (2) eines der Konzepte ist ein Vorgänger des anderen, (3) mindestens ein (oder beide) Konzept(e) sind mit einer Markierung versehen (die in der gegebenen Wissensbasis KB bereitgestellt wird), und (4) die semantische Ähnlichkeit überschreitet einen vorbestimmten Schwellenwert. Infolgedessen kann ein Paar von Konzepten zu Ein-Hop-Nachbarn in Bezug auf die Anwendung werden. Eine neu eingeführte Kante wird dann mit dem berechneten Ähnlichkeitsscore encodiert, so dass die ursprünglichen semantischen Daten zwischen den beiden Konzepten erhalten bleiben. Somit sind die Konzepte aus der ursprünglichen KB näher herangekommen, wodurch sie besser erreichbar sind. Durch die Verwendung der Offline-Anpassungsphase sind die Ähnlichkeitsscores außerdem bereit, ohne eine unnötige Verzögerung in der Online-Abfrage-Relaxation einzuführen.
-
Aufgrund der hier erörterten Konzepte stellen verschiedene Aspekte der vorliegenden Offenlegung eine Verbesserung der Computerbedienung und einer anderen Technologie bereit (z.B. Konversationssysteme wie solche, die Abfrage-Relaxation bei der domänenspezifischen Suche verwenden). Beispielhaft verbessern die verschiedenen hier diskutierten Aspekte die Computerbedienung, indem sie die Nutzung von Ressourcen verringern, die mit der domänenspezifischen Suche verknüpft sind. Es werden reduzierte CPU-Zyklen, eine reduzierte Speichernutzung und eine geringere Nutzung des Netzwerks bereitgestellt. In der Technologie von Konversationssystemen stellen verschiedene Aspekte, wie hier diskutiert, eine erhöhte Flexibilität bei Abfragen bereit, ohne dabei an Präzision zu verlieren. Im Detail wird nun auf die in den beigefügten Zeichnungen veranschaulichten Beispiele verwiesen, die im Folgenden erörtert werden.
-
Eine beispielhafte Architektur
-
1 veranschaulicht eine beispielhafte Architektur 100 eines domänenspezifischen Konversationssystems, das Abfrage-Relaxation verwendet, in Übereinstimmung mit einer veranschaulichenden Ausführungsform. Durch das Verstehen von Domänenvokabularen für einen Suchbegriff wird eine Liste von semantisch verwandten Begriffen mit hoher Präzision und hohem Recall zurückgegeben. Ein domänenspezifisches Konversationssystem 105 empfängt eine Abfrage. In einigen Fällen kann das Konversationsmodul 105 die Antwort auf eine Abfrage haben, ohne das Abfrageergebnis relaxieren zu müssen. Wenn keine Antwort verfügbar ist, übergibt das Konversationsmodul 105 eine Suchphrase an einen Übersetzungsindex (TI) 110. Der Übersetzungsindex (TI) 110 stellt Instanzdaten für Datenwerte bereit, die in den Datenspeichern gespeichert sind. Ein Aufruf des Übersetzungsindex 110 stellt den Abfragen „Datenbewusstsein“ zur Verfügung, indem ein Begriff ermittelt wird. Die Instanzdaten (TI) 115 können auch einige oder alle Varianten der Instanzdaten beinhalten. Wenn es keine exakten Übereinstimmungen in den Instanzdaten 115 gibt, wird die Suche an einen Abfrage-Relaxation-Service geschickt, um das externe Wissen (TI) 120 wirksam einzusetzen, das auf ein externes Domänenwissen zugreift, um semantisch verwandte Übereinstimmungen an das Konversationssystem 105 zurückzugeben. Das Konversationssystem 105 kann Watson® Assistant oder ein anderes Konversationssystem beinhalten, ist aber in keiner Weise darauf beschränkt.
-
Beispielhaft kann das Konversationssystem 105 bei einer Abfrage bezüglich der Firma X Bank den Begriff an den Übersetzungsindex 110 weiterleiten, um semantisch verwandte Begriffe bereitzustellen. In einem Beispiel wird die Instanz „Firma“ als Firmenname mit Begriffen aufgefüllt, die mit „Firma“ verknüpft sind, um die Flexibilität bei der Suche zu erhöhen. So kann der Übersetzungsindex 110 die Instanzdaten zusammen mit den übersetzten Begriffen bereitstellen, und die Instanzdaten (TI) 115 können in Verbindung mit dem externen Wissen (TI) 120 Begriffe wie „Firma X Bank, N.A.“, „Firma X Bank International Limited“, „Firma X Bank, India“ liefern. Wenn es keine exakte Übereinstimmung gibt, wird ein externer Wissensübersetzungsindex 120 unter Verwendung von Abfrage-Relaxation abgefragt, um eine relaxierte Antwort auf die Abfrage bereitzustellen. Der externe Wissens-TI 120 greift auf externe Wissensquellen zu (z. B. Systemized Nomenclature of Medicine-Clinical Terms (SNOMED-CT®), Financial Industry Business Ontology (FIBO)) und stellt eine relaxierte Rückgabe der Abfrage bereit.
-
Die externen Wissensquellen werden verwendet, um die Abfrage-Relaxationstechniken zu verstärken, damit die Begriffe der Abfrage über die syntaktische Übereinstimmung hinaus verallgemeinert oder spezialisiert werden können. Externe Wissensquellen (wie SNOMED-CT®) sind jedoch oft nicht an die Anforderungen der Anwendung angepasst. Die Verwendung einer externen Wissensquelle ohne angemessene Anpassung könnte daher unerwünschte Informationen in semantisch verwandte Ergebnisse einbringen. Diese externen Wissensquellen sind häufig in Form von Taxonomien, Ontologien und semantischen Netzwerken wie SNOMED-CT® und FIBO® ausgebildet.
-
Beispielhafte Prozesse
-
Mit dem vorangegangenen Überblick über die beispielhafte Architektur 100 kann es nun hilfreich sein, eine Diskussion von beispielhaften Prozessen auf hoher Ebene zu betrachten. Zu diesem Zweck sind in den 2A, 2B und 3 Prozesse veranschaulicht, die sich auf verschiedene Aspekte eines domänenspezifischen Verfahrens zur Abfrage-Relaxation und eines Systems beziehen, das externes Domänenwissen zur Beantwortung von Abfragen gemäß der vorliegenden Offenlegung verwendet. Die Prozesse sind als eine Ansammlung von Blöcken in einem logischen Ablaufplan veranschaulicht, die eine Reihenfolge von Operationen darstellen, die in Hardware, Software oder einer Kombination davon implementiert werden können. Im Zusammenhang mit Software stellen die Blöcke computerausführbare Anweisungen dar, die, wenn sie von einem oder mehreren Prozessoren ausgeführt werden, die erwähnten Operationen ausführen. Im Allgemeinen können computerausführbare Anweisungen Routinen, Programme, Objekte, Komponenten, Datenstrukturen und dergleichen umfassen, die Funktionen ausführen oder abstrakte Typen von Daten implementieren. In jedem Prozess ist die Reihenfolge, in der die Operationen beschrieben werden, nicht als Einschränkung zu verstehen, und eine beliebige Anzahl der beschriebenen Blöcke kann in beliebiger Reihenfolge kombiniert und/oder parallel ausgeführt werden, um den Prozess zu implementieren. Zu Diskussionszwecken werden die Prozesse mit Bezug auf die Architektur 100 von 1 beschrieben.
-
2A ist eine veranschaulichende Darstellung der allgemeinen Operation eines gewünschten Gesprächsablaufs in Übereinstimmung mit einer veranschaulichenden Ausführungsform. 2A zeigt einen gewünschten Gesprächsablauf zwischen einem Benutzer und einem System unter Verwendung von Abfrage-Relaxation. Bei dem Konversationssystem 205 kann es sich um ein System wie den Watson® Assistant handeln. Es ist jedoch zu verstehen, dass die Anwendung der hier diskutierten Konzepte weit gefasst und nicht auf ein bestimmtes Konversationssystem beschränkt ist. Auch wenn die Abfragen im Allgemeinen in natürlicher Sprache erfolgen, die gesprochen oder getippt werden kann, sind die Konzepte auch auf stärker strukturierte Abfragen anwendbar.
-
Wie in 2A dargestellt, wird eine Abfrage gestellt, um Informationen zur Behandlung einer Krankheit oder Verletzung zu erhalten. Das Konversationssystem 205 empfängt eine Abfrage (z. B. Zeige mir Medikamente zur Behandlung von Krankheit x). Die Abfrage wird von einem kognitiven System 250 empfangen. Bei 255, wenn es keine partielle Wort-Übereinstimmung gibt, nutzt das kognitive System 250 einen Abfrage-Relaxations-Service. Gemäß einer oder mehrerer Ausführungsformen der vorliegenden Offenlegung werden zur Unterstützung des Verständnisses der Abfrage Inhalte von einer externen Domänenwissen-Quelle erhalten und verarbeitet, um eine Liste von Elementen zurückzugeben, die semantisch mit der Abfrage des Benutzers in Beziehung stehen, die dem Konversationssystem 265 bereitgestellt wird. Durch die Operationen des wirksamen Einsatzes von externen Wissensquellen, wie Taxonomien, Ontologien und semantischen Netzwerken, wird das Domänenvokabular für Konversationssysteme erweitert. Während das Konversationssystem 205 in der Operation 265 eine weitere Klärung anfordert, indem der Benutzer mindestens eines der Elemente oder keines der Elemente durch den wirksamen Einsatz der externen Wissensquellen ermittelt, um um den Domäneninhalt zu erhalten, sind die Elemente A, B und C qualitativ hochwertigere Ergebnisse mit erhöhter Genauigkeit mit erhöhter hoch Präzision und Recall.
-
2B stellt ein beispielhaftes Verfahren zur Erfassung von Instanzdaten dar, in Übereinstimmung mit einer veranschaulichenden Ausführungsform. In 2B stellt der Übersetzungsindex (TI) 270 Instanzdaten für die Indizierung von Datenwerten bereit, die in den Datenspeichern gespeichert sind. Der Übersetzungsindex 270 stellt Datenbewusstsein für die Abfragen und das Abbilden von Datenwerten auf Eigenschaften in der Ontologie bereit. Die flexible Indizierung und Abgleichs-Semantik kann auf Grundlage des Konzepts (Typ der Entität) erfolgen.
-
Mit weiterem Bezug auf 2B wird bei der Abfrage „Zeige mir die Kredite von Firma Y“ diese Abfrage dem kognitiven System bereitgestellt. Ein Tl-Nachschlag auf einen String gibt eine Menge von Ontologie-Eigenschaften zusammen mit einer entsprechenden Liste von passenden Werten für jede Eigenschaft zurück. Der Übersetzungsindex stellt ein Ergebnis bereit, das mehrere Subtypen des Firma-Konzepts zeigt. Beispielhaft ist der Name der Holding/Firma „Firma Y International LTD“, der Name des Kreditgebers ist „Firma Y Financial“, „Firma Y Financial Services Corp.“. Der Name des Kreditnehmers lautet „Firma Y Inc.“, und der Name der Investition/Firma lautet „Firma Y Investment LTD“. Diese Ergebnisse werden dem kognitiven System bereitgestellt.
-
3 ist ein Ablaufplan, der die Operation eines domänenspezifischen Konversationssystems veranschaulicht, das in Übereinstimmung mit einer veranschaulichenden Ausführungsform mit einem System zur Abfrage-Relaxation kommuniziert. Bei Operation 305 stellt ein Benutzer dem Konversationssystem eine Frage. In Operation 310 interpretiert das Konversationssystem die Frage.
-
Bei Operation 315 fordert das Konversationssystem Unterstützung beim Verstehen der Abfrage an, um kontextuelle Informationen zu erhalten. Beispielhaft können in Konversationssystemen die kontextuellen Informationen einen erheblichen Einfluss auf die semantische Korrektheit der relaxierten Ergebnisse haben. Beispielhaft könnte ein Benutzer bei einer Frage zur Behandlung eines Gesundheitszustands fragen: „Welche Medikamente behandeln psychogenes Fieber?“. Wenn in Operation 315 keine Hilfe zum Verständnis der Abfrage verwendet wird, gibt das Konversationssystem in Operation 320 die Ergebnisse zurück. Fordert das Konversationssystem in Operation 315 jedoch Hilfe beim Verstehen der Abfrage an, so wird die Abfrage vom Abfrage-Relaxation-Service 340 des kognitiven Systems 350 bearbeitet. In einer Ausführungsform wurden die Operationen 325, 330 und 335 vorangehend ausgeführt, um den Abfrage-Relaxations-Service so zu konfigurieren, dass er eine relaxierte Suche z. B. nach medizinischer Terminologie durchführt. In Operation 325 wird eine externe Wissensquelle (z. B. SNOMED-CT®) unter Verwendung von Domäneninhalten erhalten. SNOMED-CT® ist ein Beispiel für eine externe Wissensquelle für klinische Gesundheitsterminologie. Diese externe Wissensquelle kann zur Ermittlung von Konzepten (z. B. Top-Level-/Instanzkonzepte), Beziehungen (isA/Attributbeziehungen) und Beschreibungen (Definitionen/Symptome) verwendet werden. Der Domäneninhalt wird verwendet, um semantisch verwandte Übereinstimmungen zu finden.
-
In einer hierarchischen Beziehung, beispielsweise einer Hyponymie-Beziehung, kann eine isA-Beziehung auf einer Beziehung zwischen Klassen und Unterklassen aufgebaut werden, wobei eine Klasse A eine Unterklasse einer anderen Klasse B sein kann (im Gegensatz beispielsweise zu einer Hyperonym-Beziehung (einer hasA-Beziehung), die sich auf andere Typen von Klassen bezieht). Das von der externen Wissensquelle erhaltene Domänenwissen wird in Form einer Domänenontologie/Taxonomie angeordnet.
-
Bei der Abfrage-Relaxation haben die kontextuellen Informationen einen großen Einfluss auf die semantische Korrektheit der relaxierten Ergebnisse. In diesem veranschaulichen Beispiel wurde dem Konversationssystem die Frage „Welche Medikamente behandeln psychogenes Fieber“ gestellt, wobei zu beachten ist, dass sowohl „Hyperpyrexie“ als auch „Hypothermie“ ähnliche Erkrankung wie „psychogenes Fieber“ in der Systemized Nomenclature of Medicine-Clinical Terms (SNOMED® CT) sind.
-
Bezüglich des Bereitstellens von relaxierten Ergebnissen im Kontext der „Behandlung“ grenzt der Begriff „Hypothermie“ jedoch an ein falsches Ergebnis und sollte nicht zurückgegeben werden, da Hypothermie das Gegenteil von „Hyperpyrexie“ und „psychogenem Fieber“ ist. Die Medikamente für „Hyperpyrexie“ sind völlig unterschiedlich zu denen für „Hypothermie“ und könnten tatsächlich Schaden anrichten.
-
Bei Operation 330 wird der Domäneninhalt aus der externen Wissensquelle in eine Graphen-Datenbank mit Informationsinhalten eingelesen. Bei Operation 340 kann die externe Wissensquelle in einem Service gehostet werden, beispielsweise in einer Wissensbasis. Bei Operation 350 stellt der Abfrage-Relaxation-Service dem Konversationssystem die relaxierten Ergebnisse bereit.
-
Alternativ können in einer Ausführungsform die Operationen 325, 330 und 335 in Reaktion darauf ausgeführt werden, dass der Abfrage-Relaxation-Service die Anforderung vom Konversationssystem empfängt (das „Ja“ bei Operation 315). In einem solchen Fall erhält der Abfrage-Relaxation-Service beispielhaft Domäneninhalte von der externen Wissensquelle.
-
4 veranschaulicht ein Beispiel für das Einlesen von SNOMED-CT® in einen Relaxations-Service in Übereinstimmung mit einer veranschaulichten Ausführungsform.
-
Bezüglich 3 und 4 wird beispielhaft die externe Wissensquelle (SNOMED-CT®) in eine grafische Datenbank des Relaxations-Services eingelesen. Ein nicht einschränkendes Beispiel für eine solche graphische Datenbank ist JanusGraph®.
-
Unter Bezugnahme auf 4 wird durch Verwendung der Konzepte, Beziehungen und Beschreibungen eine Liste 430, die eine Knotenliste 435 und eine Kantenliste 440 beinhaltet, erzeugt/aktualisiert und in der Graphen-Datenbank des Relaxations-Services 450 gespeichert. Die medizinischen Versorgungsdaten 445 sind mit SNOMED-CT® verknüpft. Eine skalierbare Graphen-Datenbank 460 ist für die Speicherung und Abfrage von Graphen optimiert, die Knoten und Kanten umfassen, die über einen Multi-Maschinen-Cluster in einer skalierbaren Graphen-Datenbank verteilt sind, die für die Speicherung und Abfrage von Graphen optimiert ist. In der veranschaulichenden Ausführungsform beinhalten die skalierbaren Graphen-Daten 460 beispielsweise JanusGraph®, sind aber nicht darauf beschränkt, da auch andere Typen von Graphen (z. B. Neo4j) verwendet werden können, um Daten und die Beziehungen zwischen ihnen darzustellen.
-
Unter Bezugnahme auf 4 wird gezeigt, dass SNOMED-CT® 405 nach Konzepten, 410, Beziehungen 415 und Beschreibungen 420 gruppiert werden kann. Im Falle von SNOMED-CT® ist isA zwar die dominierende Beziehung, aber es gibt mindestens 19 Typen von Beziehungen in SNOMED-CT®. Zu jeder Beziehung gibt es eine Beschreibung und Synonyme. Beim Einlesen der Wissensquelle ist es daher von Vorteil, auch die Synonyme der Wissensquelle zu umfassen. Die Synonyme können das Domänenvokabular ferner erweitern, um hohe Präzisionsergebnisse und einen hohen Recall zu erhalten.
-
Bei einer Herangehensweise zum Auffinden von Suchbegriffen kann ein Suchbegriff in der SNOMED-CT®-Taxonomie verortet werden, und es kann eine Radius-basierte Herangehensweise verwendet werden, die alle Begriffe findet, die sich innerhalb eines Radius r (r Hops) befinden, die Begriffe ermittelt, die in einer medizinischen Wissensdatenbank enthalten sind, und diese Begriffe als verwandte Begriffe zum Suchbegriff zurückgibt. r kann entweder vorbestimmt oder dynamisch in Abhängigkeit von der Anwendung festgelegt werden. Die Radius-basierte Herangehensweise sollte jedoch durch eine andere Herangehensweise ergänzt werden, um eine Zunahme der Präzision und des Recalls der Suche durch die Bereitstellung einer hybriden Herangehensweise liesten.
-
Der Informationsinhalt (information content, IC) kann berechnet werden, um zu ermitteln, wie viel zwei Knoten gemeinsam haben. Es kann eine Identifizierung erfolgen, welche Begriffe häufiger bzw. seltener genannt werden und in welcher Beziehung sie über die isA zueinander stehen. Das Verhältnis von Schnittmenge (gleiche Information) vs. Vereinigung von Information kann auf Grundlage des niedrigsten gemeinsamen Vorgängers (lowest common ancestor, LCA) erhalten werden. Der LCA beinhaltet jede Information, die zwei Knoten gemeinsam haben, und der Informationsgehalt ist kontextbewusst (z. B. unerwünschte Wirkung oder Dosierung). Beispielhaft steht ein IC im Kontext der Verwendung eines Medikaments zur Behandlung einer Erkrankung, ein anderer IC im Kontext der unerwünschten Wirkungen des Medikaments. In Abhängigkeit vom Kontext kann also das gleiche Wort eine unterschiedliche Bedeutung haben, und die Präzision der semantisch verwandten Begriffe kann dadurch weniger genau sein, insbesondere wenn die Suche erweitert wird. In Abhängigkeit vom Kontext werden die mit dem spezifischen Kontext verknüpften Informationen verwendet, um genauere Ergebnisse bereitzustellen.
-
5 ist ein beispielhaftes Layout der strukturellen Informationen in isA-Pfaden, in Übereinstimmung mit einer veranschaulichenden Ausführungsform. Wie in 5 dargestellt, ist die höchste Ebene der kraniofaziale Schmerz 505 und die verschiedenen Pfade führen dorthin. Beispielhaft führt ein Pfad von einem frontalen Kopfschmerz 509 zum generalisierten Kopfschmerz 507 und dann zum kraniofazialen Schmerz 509. Hinzufügung ist ein Kopfschmerz bei Analgetika-Übergebrauch 511 eine spezialisierte Version des Kopfschmerzes bei Arzneimittel-Übergebrauch 513 und noch spezieller als der allgemeine Begriff Kopfschmerz 509. In beiden Fällen führen die Wege zu einem allgemeineren Begriff des Kopfschmerzes und dann zu noch mehr kraniofazialen Schmerzen 505. Ein Schmerz in der Mundhöhlenstruktur 515 ist ein speziellerer Begriff als der allgemeinere kraniofaziale Schmerz. In Abhängigkeit vom Inhalt der Abfrage des Benutzers sind einige dieser Pfade eine Quelle von Rauschen. Gemäß einer veranschaulichenden Ausführungsform wird die Verallgemeinerung bestraft, weil sie zu einem Verlust an Information führt. Eine frühere Generalisierung im Pfad wird stärker benachteiligt als eine spätere. Das Ähnlichkeitsergebnis kann die bestrafte Verallgemeinerung verwirklichen.
-
Schließlich werden alle diese Häufigkeiten normalisiert, so dass ihre Werte zwischen 0 und 1 liegen, was der Wahrscheinlichkeit des Vorkommens eines Konzepts im Korpus entspricht. Das Wurzelkonzept hat die höchste normalisierte Häufigkeit von 1, da es der Vorgänger aller Konzepte in der externen Wissensquelle ist.
-
Unter fortgesetzter Bezugnahme auf
5 ist zu erkennen, dass der Schmerz einer Mundhöhlenstruktur 515 den gleichen Abstand (z. B. 2) zu einem generalisierten Kopfschmerz 511 aufweist wie der Kopfschmerz bei Analgetika-Übergebrauch 513. Der Schmerz einer Mundhöhlenstruktur 515 steht jedoch in keinem so großen semantischen Zusammenhang mit einer Suche nach Kopfschmerzen und deren Ursachen. Zur Ermittlung der Ähnlichkeit der Begriffe in den strukturellen Informationen können die folgenden Gleichungen verwendet werden:
wobei:
- IC der Informationsinhalt ist,
- |D| der Abstand zwischen dem Instanzkonzept C1 und dem verwandten Konzept C2 ist, und
- Wi die Gewichtung der i-ten Beziehung von C1 zu C2 ist.
-
6 ist ein Ausschnitt aus SNOMED-CT®, in dem die Instanz-Konzept-Häufigkeit eingetragen ist. Wenn ein Begriff erscheint, wird davon ausgegangen, dass seine Vorgänger aufgrund der isA-Beziehung ebenfalls vorkommen. Beispielhaft ist „Kopfschmerz“ das einzige untergeordnete Element von „kraniofazialer Schmerz“, und die Häufigkeit von „kraniofazialer Schmerz“ ist die Häufigkeit von sich selbst zusammen mit der von „Kopfschmerz“. Die Konzepte in Rot sind diejenigen, die mit den Daten in der gegebenen KB übereinstimmen. In diesem Fall ist die endgültige Häufigkeit von „Schmerzen im Kopf- und Nackenbereich“ eine Summierung der Häufigkeiten von „kraniofazialer Schmerz“, „Schmerzen im Hals“ und von sich selbst. Jedes Konzept kann in zwei Kontexten verwendet werden: „Risiko“ und „Indikation“. Daher werden mit jedem Begriff zwei Häufigkeiten verknüpft.
-
7 und 8 sind veranschaulichende Beispiele, die die hybride Herangehensweise der vorliegenden Offenlegung mit einer Radius-basierten Herangehensweise in Übereinstimmung mit einer veranschaulichten Ausführungsform vergleichen. 7 ist ein Beispiel der Items, die mit einer Nierenschädigung verknüpft sind, und 8 listet Items auf, die mit einer Depression verknüpft sind. In den 7 und 8 ist zu erkennen, dass die hybride Herangehensweise durch das Einbeziehen einer Ähnlichkeitsmetrik zusätzlich zu einem Abstand (Radius) präzisere Informationen aus der externen Wissensquelle bereitstellt, die als Reaktion auf ein Abfrageergebnis von einem Konversationssystem bereitgestellt werden können. Die Radius-basierte Herangehensweise beinhaltet das Auffinden des Suchbegriffs in der SNOMED-CT®-Taxonomie, das Finden aller Begriffe, die sich innerhalb des Radius r (r Hops) befinden, das Ermitteln der Begriffe, die in einer Wissensbasis des medizinischen Versorgung enthalten sind, und das Zurückgeben der Begriffe, die mit dem Suchbegriff verwandt sind. Wie in den 7 und 8 zu sehen ist, beinhaltet die Radius-basierte Herangehensweise jedoch Unzulänglichkeiten, die u. a. das Fehlen semantisch verwandter Begriffe im Vergleich zu vielen (unnötigen) Begriffen und das Versagen bei der Unterscheidung von Begriffen mit demselben Abstand umfassen. Die Radius-basierte Herangehensweise weist einen hohen Recall, aber eine geringe Präzision auf.
-
Im Hinblick auf die hybride Herangehensweise, die in den 7 und 8 dargestellt ist, verwendet ein hybrides Ähnlichkeitsmaß die statistischen Informationen über die Verwendungsmuster bezüglich der Erkrankungen aus dem Textkorpus. Die strukturellen Informationen aus der externen Wissensquelle, die kontextuellen Informationen aus den Abfragen und der Informationsinhalt werden verwendet, um semantisch verwandte Begriffe bereitzustellen, die die Abfrage mit hoher Präzision und hohem Recall beantworten, wie aus den Ähnlichkeitsbewertungen ersichtlich ist. Bei der hybriden Herangehensweise stellt die Worthäufigkeit die statistische Information über die Erkrankungen bereit. Bezüglich der strukturellen Information werden die Kanten nicht gleich erschaffen. Es wird eine Hyponymie-Beziehung (isA) und eine Hyperonymie-Beziehung (hasA) berücksichtigt. Der Abstand von einem Suchbegriff (Radius) spielt immer noch eine Rolle, und die Verallgemeinerung vom Suchbegriff wird abgezogen/nicht zugelassen (siehe die Diskussion bezüglich 5 und die Bestrafung der Verallgemeinerung).
-
Es versteht sich, dass die erfinderischen Konzepte der vorliegenden Offenlegung nicht auf die Anwendung in einer bestimmten Umgebung wie der medizinischen Versorgung beschränkt sind. Die Ontologie der medizinischen Versorgungsdomäne wurde erörtert, um die Operation des Systems und Verfahrens zur Abfrage-Relaxation zu veranschaulichen. Das Meta-Konzept „Befund“ ist sowohl mit „Indikation“ als auch mit „Risiko“ verbunden. In diesem Fall hat jedes Instanzkonzept von „Befund“ zwei Konzepthäufigkeiten, die mit „Indikation“ und „Risk“ korrespondieren. In Abhängigkeit vom Abfragekontext wird eine der Konzepthäufigkeiten zur Abfrage-Relaxation verwendet.
-
Der Korpus kann viele Dokumente umfassen und jedes Dokument beinhaltet eine bestimmte Anzahl von Instanzkonzepten. Eine Möglichkeit, die Dünnbesiedelung (sparsity) bestimmter Instanzkonzepte im Korpus zu berücksichtigen, besteht darin, die Konzept-Häufigkeit ferner auf Grundlage der Anzahl der Dokumente anzupassen, in denen das Konzept vorkommt. Beispielhaft ist „Asthma“ gemäß DrugBank [DrugBank, 2019] mit vielen Medikamenten behandelbar (z. B. insgesamt etwa 54 Medikamente), während „Lungenkrebs“ nur mit einer Handvoll spezieller Medikamente behandelbar ist. Daher können die verwendeten Verfahren die Einseitigkeit auf effiziente Weise abmildern.
-
Schließlich können alle Instanzkonzepte von der gegebenen KB auf die externe Wissensquelle abgebildet werden. Die Verwendung von exakten String-Matching-Algorithmen kann dabei helfen, die passenden Konzepte zu finden. Approximative String-Matching-Algorithmen können auch verwendet werden, um semantisch verwandte Begriffe bereitzustellen, wenn es nur wenige oder keine exakten Übereinstimmungen gibt.
-
Ein Offline-Adaptionsverfahren passt externe, domänenspezifische Wissensquellen an und integriert sie in eine vorhandene Wissensbasis (KB) eines kognitiven Konversationssystems. Jedes Instanzkonzept kann in Abhängigkeit von der natürlichsprachlichen Abfrage in unterschiedlichen Kontexten verwendet werden, und ein Konzept kann in unterschiedlichen Kontexten völlig unterschiedliche semantische Bedeutungen haben. Beispielhaft ist eine Erkrankung, die durch ein Medikament behandelt wird, anders als eine unerwünschte Wirkung, die durch das gleiche Medikament verursacht wird. In diesem Fall würde eine einzige Häufigkeit, die mit einem Konzept verknüpft ist, nicht ausreichen, um die semantischen Unterschiede in allen möglichen Kontexten zu erfassen. Um dieses Problem zu lösen, werden alle Kontexte in der Domänen-Ontologie berechnet, wobei ein Instanzkonzept verwendet werden kann, und die Instanz-Konzept-Häufigkeit wird in Bezug auf jeden Kontext erfasst. In der Phase der Online-Abfrage-Relaxation wird die geeignete Konzepthäufigkeit entsprechend dem Abfragekontext ausgewählt.
-
In einer Ausführungsform besteht eine externe Wissensquelle aus den Hyperonym-Hyponym-Beziehungen (hasA und isA) zwischen Instanzkonzepten. Hyponym-Beziehungen (isA) führen oft zu Informationsverlusten, da sie zu allgemeineren Konzepten führen. In diesem Fall kann es unzureichend sein, sich ausschließlich auf das IC-Maß mit kontextuellen Informationen zu verlassen, da es die in Hyperonym-Hyponym-Beziehungen verborgenen semantischen Unterschiede nicht unterscheiden kann. Dieses Problem wird dadurch gelöst, dass den isA- und hasA-Beziehungen in der externen Wissensquelle unterschiedliche Gewichte zugewiesen werden. Das Gewicht eines Pfades, der zwei Instanzkonzepte c1 (Suchkonzept) und c2 (verwandtes Konzept) verbindet, wird wie folgt berechnet:
-
Bezug nehmend auf die obige Gleichung 4 ist |D| ein Abstand zwischen dem Instanzkonzept C1 und dem verwandten Konzept C2 und Wi ist das Gewicht der i-ten Beziehung von C1 zu C2. Die Ergebnisse für das berechnete Gewicht eines Pfades für jeweils zwei Instanzkonzepte basieren auf Ähnlichkeitsscores, und es werden die relaxierten Ergebnisse ausgegeben, bei denen die Ähnlichkeitsscores einen höchsten Ergebnisbereich betragen.
-
Eine beispielhafte Computerplattform
-
Wie oben erörtert, können Funktionen, die sich auf die Durchführung eines Systems und Verfahrens zur Abfrage-Relaxation beziehen, unter Verwendung eines oder mehrerer Computergeräte ausgeführt werden, die zur Datenkommunikation über drahtlose oder drahtgebundene Kommunikation verbunden sind, wie in 1 und gemäß den Prozessen 300 von 3 gezeigt. 9 veranschaulicht ein funktionales Blockdiagramm einer Computer-Hardware-Plattform, die mit einem Konversationssystem, wie hierin beschrieben, kommunizieren kann. 9 veranschaulicht insbesondere eine Netzwerk- oder Host-Computerplattform 900, die zur Implementierung des Systems zur Abfrage-Relaxation von 1 verwendet werden kann.
-
Die Computerplattform 900 kann eine Zentralverarbeitungseinheit (CPU) 904, ein Festplattenlaufwerk (HDD) 906, einen Direktzugriffspeicher (RAM) und/oder einen Nur-LeseSpeicher (ROM) 908, eine Tastatur 910, eine Maus 912, eine Anzeige 914 und eine Kommunikationsschnittstelle 916 beinhalten, die mit einem Systembus 902 verbunden sind.
-
In einer Ausführungsform umfasst die Festplatte 906 Ressourcen, die die Speicherung eines Programms beinhalten, das verschiedene Prozesse, wie das System zur Abfrage-Relaxation 940, in der hier beschriebenen Weise ausführen kann. Das System zur Abfrage-Relaxation 940 kann verschiedene Module haben, die so konfiguriert sind, dass sie unterschiedliche Funktionen ausführen. Die HDD 906 kann Datenspeicher beinhalten.
-
Beispielhaft kann es ein Übersetzungsindexmodul 942 geben, das Abfragen von Quellen wie verschiedenen Typen von Konversationssystemen empfängt, und ein Instanzdatenmodul 944, das eine Suche nach Instanzdaten durchführt, wie hierin oben beschrieben.
-
In einer Ausführungsform gibt es ein optionales Modul 946 zur Verarbeitung natürlicher Sprache (natural language processing, NLP), das den rohen natürlichsprachlichen Inhalt jeder Abfrage verarbeitet. Der Grund dafür, dass das NLP-Modul 946 optional ist, ist, dass das Konversationssystem anfänglich die Verarbeitung der Abfrage des Benutzers in natürlicher Sprache ausführen kann. Es kann ein Modul 948 für externes Domänenwissen vorhanden sein, das eine Schnittstelle zu externen Domänensystemen bildet und semantisch verwandte Begriffe sucht und einem Konversationssystem bereitstellt, das eine Abfrage empfangen hat. Es kann ein maschinelles Lernmodul 950 vorhanden sein, das während einer Trainierphase aus früheren Interaktionen mit einer oder mehreren domänenspezifischen Abfragen lernt.
-
In einer Ausführungsform kann ein Programm, wie z.B. Apache™, für den Betrieb des Systems als Webserver gespeichert werden. In einer Ausführungsform kann auf der Festplatte 906 eine ausführende Anwendung gespeichert werden, die ein oder mehrere Bibliothekssoftwaremodule beinhaltet, wie z. B. die für das Java™ Runtime Environment-Programm zur Verwirklichung einer JVM (Java™ Virtual Machine).
-
Eine beispielhafte Cloud-Plattform
-
Wie oben erörtert, können die Funktionen, die sich auf die Verwaltung des Systems und des Verfahrens zur Abfrage-Relaxation beziehen, eine Cloud 1050 umfassen (siehe 10). Es soll verstanden werden, dass, obwohl diese Offenbarung eine detaillierte Beschreibung des Cloud-Computing beinhaltet, wie es hier unten erörtert wird, die Umsetzung der hier dargelegten Lehren nicht auf eine Cloud-Computing-Umgebung beschränkt ist. Vielmehr können Ausführungsformen der vorliegenden Offenlegung in Verbindung mit jedem anderen Typ von Computer-Umgebung implementiert werden, der heute bekannt ist oder später entwickelt wird.
-
Cloud Computing ist ein Modell zur Bereitstellung von Diensten, das einen bequemen, bedarfsgerechten Netzzugang zu einem gemeinsamen Vorrat konfigurierbarer Computerressourcen (z. B. Netzwerke, Netzwerkbandbreite, Server, Verarbeitung, Speicher, Anwendungen, virtuelle Maschinen und Dienste) ermöglicht, die mit minimalem Verwaltungsaufwand oder minimaler Interaktion mit einem Anbieter des Dienstes schnell bereitgestellt und freigegeben werden können. Dieses Cloud-Modell kann mindestens fünf Charakteristiken, mindestens drei Service-Modelle und mindestens vier Bereitstellungsmodelle beinhalten.
-
Die Charakteristiken lauten wie folgt:
- Bedarfsgesteuerte Selbstbedienung: Ein Cloud-Verbaucher kann einseitig Ressourcen für Berechnungen bereitstellen, wie z. B. Serverzeit und Netzwerkspeicher, und zwar automatisch, ohne dass eine menschliche Interaktion mit dem Anbieter des Dienstes erforderlich ist.
-
Breiter Netzwerkzugriff: Die Ressourcen sind über ein Netzwerk verfügbar und werden über Standardmechanismen abgerufen, die die Verwendung durch heterogene Thin- oder Thick-Client-Plattformen (z. B. Mobiltelefone, Laptops und PDAs) fördern.
-
Ressourcenbündelung: Die Computer-Ressourcen des Anbieters werden in einem Multi-Tenant-Modell gebündelt, um mehrere Verbraucher zu bedienen, wobei verschiedene physische und virtuelle Ressourcen je nach Bedarf dynamisch zugewiesen und neu zugewiesen werden. Es besteht eine gewisse Standortunabhängigkeit, da der Verbraucher in der Regel keine Kontrolle oder Kenntnis über den genauen Standort der bereitgestellten Ressourcen hat, jedoch den Standort auf einer höheren Abstraktionsebene angeben kann (z. B. Land, Staat oder Rechenzentrum).
-
Flexible Anpassungsfähigkeit: Ressourcen können schnell und elastisch bereitgestellt werden, in manchen Fällen auch automatisch, um schnell zu skalieren und schnell wieder freigegeben werden, um schnell zu skalieren. Für den Verbraucher erscheinen die für die Bereitstellung verfügbaren Ressourcen oft unbegrenzt und können in beliebiger Menge und zu jeder Zeit erworben werden.
-
Dienstmessung: Cloud-Systeme kontrollieren und optimieren automatisch die Ressourcennutzung, indem sie eine dem Typ des Dienstes entsprechende Steuereinheit auf einer bestimmten Abstraktionsebene verwenden (z. B. Speicher, Verarbeitung, Bandbreite und aktive Benutzerkonten). Die Ressourcennutzung kann überwacht, kontrolliert und gemeldet werden, wodurch Transparenz sowohl für den Anbieter als auch für den Nutzer des genutzten Dienstes bereitgestellt wird.
-
Die Service-Modelle lauten wie folgt:
- Software as a Service (SaaS): Die dem Verbraucher bereitgestellte Ressource besteht darin, die Anwendungen des Anbieters zu verwenden, die auf einer Cloud-Infrastruktur laufen. Der Zugriff auf die Anwendungen erfolgt von verschiedenen Mandant-Geräten aus über eine Thin-Client-Schnittstelle wie z. B. einen Webbrowser (z. B. webbasierte E-Mail). Der Verbraucher verwaltet oder kontrolliert nicht die zugrunde liegende Cloud-Infrastruktur, einschließlich Netzwerk, Server, Betriebssysteme, Steuereinheiten oder sogar einzelne Anwendungsressourcen, mit der möglichen Ausnahme begrenzter benutzerspezifischer Anwendungskonfigurationseinstellungen.
-
Platform as a Service (PaaS): Die dem Verbraucher bereitgestellte Ressource besteht darin, vom Verbraucher erstellte oder erfasste Anwendungen, die mit vom Anbieter unterstützten Programmiersprachen und Tools erstellt wurden, in der Cloud-Infrastruktur einzusetzen. Der Verbraucher verwaltet oder kontrolliert nicht die zugrunde liegende Cloud-Infrastruktur, die Netzwerke, Server, Betriebssysteme oder Steuereinheiten umfasst, hat aber die Kontrolle über die bereitgestellten Anwendungen und möglicherweise über die Konfigurationen der Hosting-Umgebung der Anwendungen.
-
Infrastructure as a Service (laaS): Die dem Verbraucher bereitgestellte Ressource besteht in der Bereitstellung von Verarbeitungs-, Speicher-, Netzwerk- und anderen grundlegenden Computer-Ressourcen, wobei der Verbraucher in der Lage ist, beliebige Software einzusetzen und auszuführen, die Betriebssysteme und Anwendungen umfassen kann. Der Verbraucher verwaltet oder kontrolliert nicht die zugrunde liegende Cloud-Infrastruktur, sondern hat die Kontrolle über Betriebssysteme, Speicher, bereitgestellte Anwendungen und möglicherweise eine begrenzte Kontrolle über ausgewählte Netzwerkkomponenten (z. B. Host-Firewalls).
-
Die Bereitstellungsmodelle lauten wie folgt:
- Private Cloud: Die Cloud-Infrastruktur wird für lediglich eine Organisation betrieben. Sie kann von der Organisation selbst oder von einem Dritten verwaltet werden und sich an Ort und Stelle oder an einem anderen Ort befinden.
-
Gemeinschafts-Cloud: Die Cloud-Infrastruktur wird von mehreren Organisationen gemeinsam genutzt und unterstützt eine spezifische Gemeinschaft mit gemeinsamen Anliegen (z. B. Aufgabe, Sicherheitsanforderungen, Richtlinie und Einhaltung von Gesetzen und Richtlinien). Sie kann von den Organisationen selbst oder von einem Dritten verwaltet werden und sich an Ort und Stelle oder an einem anderen Ort befinden.
-
Öffentliche Cloud: Die Cloud-Infrastruktur wird der allgemeinen Öffentlichkeit oder einer großen Branchengruppe bereitgestellt und ist Eigentum einer Organisation, die Cloud-Dienste verkauft.
-
Hybrid-Cloud: Die Cloud-Infrastruktur ist eine Zusammensetzung aus zwei oder mehreren (privaten, Gemeinschafts- oder öffentlichen) Clouds, die eigenständige Einheiten bleiben, aber durch eine standardisierte oder herstellerspezifische Technologie miteinander verbunden sind, die eine Portierbarkeit von Daten und Anwendungen ermöglicht (z. B. das Cloud-Bursting für den Lastausgleich zwischen Clouds).
-
Eine Cloud-Datenverarbeitungsumgebung ist dienstorientiert, wobei der Schwerpunkt auf Zustandslosigkeit, geringer Kopplung, Modularität und semantischer Kompatibilität liegt. Im Mittelpunkt einer Cloud-Datenverarbeitung steht eine Infrastruktur, die ein Netzwerk von miteinander verbundenen Knoten umfasst.
-
Unter Bezugnahme auf 10 wird nun eine veranschaulichende Cloud-Computing-Umgebung 1000 dargestellt, die Cloud-Computing nutzt. Wie dargestellt, beinhaltet die Cloud-Computing-Umgebung 1000 eine Cloud 1050 mit einem oder mehreren Cloud-Computing-Knoten 1010, mit denen lokale Rechengeräte, die von Verbrauchern in der Cloud verwendet werden, wie z. B. PDAs (Personal Digital Assistant) oder Mobiltelefone 1054A, Desktop-Computer 1054B, Laptops 1054C und/oder Computersysteme für Kraftfahrzeuge 1054N, kommunizieren können. Die Knoten 1010 können miteinander kommunizieren. Sie können physisch oder virtuell in einem oder mehreren Netzwerken gruppiert sein (nicht dargestellt), wie z. B. in privaten, Community-, öffentlichen oder hybriden Clouds, wie oben beschrieben, oder einer Kombination davon. Auf diese Weise kann die Cloud-Computing-Umgebung 1000 Infrastruktur, Plattformen und/oder Software als Services anbieten, für die ein Verbraucher in der Cloud keine Ressourcen auf einem lokalen Rechengerät beibehalten muss. Es wird verstanden, dass die in 10 dargestellten Typen von Rechengeräten 1054A-N nur zur Veranschaulichung dienen und dass die Rechenknoten 1010 und die Cloud-Computing-Umgebung 100 mit jedem Typ von ComputerGerät über jede Art von Netzwerk und/oder netzwerkadressierbare Verbindung (z. B. unter Verwendung eines Webbrowsers) kommunizieren können.
-
Unter Bezugnahme auf 11 wird nun eine Reihe von funktionalen Abstraktionsschichten gezeigt, die von der Cloud-Computing-Umgebung 1000 (2) bereitgestellt werden. Es sollte im Voraus verstanden werden, dass die in 2 dargestellten Komponenten, Schichten und Funktionen nur zur Veranschaulichung dienen und die Ausführungsformen der Offenlegung nicht darauf beschränkt sind. Wie gezeigt, werden die folgenden Schichten und entsprechenden Funktionen bereitgestellt:
-
Die Hardware- und Software-Schicht 1160 umfasst Hardware- und SoftwareKomponenten. Beispiele für Hardware-Komponenten beinhalten: Großrechner 1161; Server auf der Grundlage der RISC-Architektur (Reduced Instruction Set Computer) 1162; Server 1163; Blade-Server 1164; Speichergeräte 1165 sowie Netzwerke und Netzwerkkomponenten 1166. In einigen Ausführungsformen beinhalten die Softwarekomponenten Netzwerk-Anwendungsserversoftware 1167 und Datenbanksoftware 1168.
-
Die Virtualisierungsschicht 1170 beinhaltet eine Abstraktionsschicht, auf der die folgenden Beispiele für virtuelle Einheiten bereitgestellt werden können: virtuelle Server 1171, virtuelle Speicher 1172, virtuelle Netzwerke 1173, einschließlich virtueller privater Netzwerke, virtuelle Anwendungen und Betriebssysteme 1174 und virtuelle Mandanten 1175.
-
In einem Beispiel kann die Verwaltungsschicht 1180 die im Folgenden beschriebenen Funktionen bereitstellen. Die Ressourcenbereitstellung 1181 stellt die dynamische Beschaffung von Computer-Ressourcen und anderen Ressourcen bereit, die zum Ausführen von Aufgaben innerhalb der Cloud-Computing-Umgebung genutzt werden. Metering und Pricing 1182 stellen die Kostenverfolgung bei der Nutzung von Ressourcen in der Cloud-Computing-Umgebung sowie die Abrechnung oder Rechnungsstellung für den Verbrauch dieser Ressourcen bereit. In einem Beispiel können diese Ressourcen Lizenzen für Anwendungssoftware beinhalten. Sicherheit stellt die Identitätsprüfung für Verbraucher und Aufgaben in der Cloud sowie den Schutz von Daten und anderen Ressourcen bereit. Das Benutzerportal 1183 stellt den Zugang zur Cloud-Computing-Umgebung für Verbraucher und Systemadministratoren bereit. Das Service-Level-Management 1184 stellt die Zuweisung und Verwaltung von Cloud-Computing-Ressourcen bereit, so dass die erforderlichen Service-Levels eingehalten werden. Die Planung und Erfüllung von Service Level Agreements (SLA) 1185 stellt die Anordnung und Beschaffung von Cloud-Computing-Ressourcen bereit, für die ein zukünftiger Bedarf gemäß einem SLA erwartet wird.
-
Die Schicht 1190 „Arbeitslasten“ stellt Beispiele für Funktionen bereit, für die die Cloud-Computing-Umgebung genutzt werden kann. Beispiele für Arbeitslasten und Funktionen, die von dieser Schicht aus bereitgestellt werden können, umfassen: Mapping und Navigation 1191; Softwareentwicklung und Lebenszyklusmanagement 1192; Bereitstellung von Unterricht in virtuellen Klassenzimmern 1193; Datenanalyseverarbeitung 1194; Transaktionsverarbeitung 1195; und Durchführung eines Abfrage-Relaxations-Services 1196, wie hier erörtert.
-
Schlussfolgerung
-
Die Beschreibungen der verschiedenen Ausführungsformen der vorliegenden Lehren wurden zum Zweck der Veranschaulichung erstellt, sie sollen aber keineswegs erschöpfend oder auf die offenbarten Ausführungsformen eingeschränkt sein. Für Fachleute sind viele Modifizierungen und Variationen offenkundig, die nicht von dem Schutzumfang und Erfindungsgedanken der beschriebenen Ausführungsformen abweichen. Die hierin verwendete Terminologie wurde gewählt, um die Grundgedanken der Ausführungsformen, die praktische Anwendung oder technische Verbesserung gegenüber auf dem Markt gefundenen Technologien bestmöglich zu erklären oder anderen Fachleuten das Verständnis der hierin offenbarten Ausführungsformen zu ermöglichen.
-
Das Vorstehende wurde unter Berücksichtigung dessen, was als bester Zustand erachtet wurde und/oder anderen Beispielen beschrieben, doch sollte klar sein, dass verschiedene Modifizierungen vorgenommen werden können, und dass die hierin offenbarte Thematik in verschiedenen Formen und Beispielen umgesetzt werden kann, und dass die Lehren auf zahlreiche Anwendungsmöglichkeiten angewendet werden können, von denen nur einige hierin beschrieben wurden. Sämtliche Anwendungen, Modifizierungen und Variationen, die unter den zutreffenden Schutzumfang der vorliegenden Lehren fallen, sollen durch die folgenden Ansprüche beansprucht werden.
-
Die Komponenten, Schritte, Funktionen, Aufgaben, Nutzen und Vorteile, die hierin erörtert wurden, dienen nur zur Veranschaulichung. Weder sie noch die zugehörigen Erörterungen sollen den Umfang des Patentschutzes einschränken. Obwohl hierin verschiedene Vorteile erörtert worden sind, sollte klar sein, dass nicht alle Ausführungsformen notwendigerweise alle Vorteile aufweisen. Sofern nicht anders angegeben, sind alle Maßangaben, Werte, Bewertungen, Positionen, Größenordnungen, Größen und andere technische Daten, die in dieser Patentschrift einschließlich der folgenden Ansprüche dargelegt werden, ungefähre und keine exakten Angaben. Sie sollen einen sinnvollen Bereich angeben, der mit den Funktionen, auf die sie sich beziehen und mit dem in Einklang steht, was im Stand der Technik, zu dem sie gehören, üblich ist.
-
Zahlreiche andere Ausführungsformen werden ebenfalls in Erwägung gezogen. Diese umfassen Ausführungsformen mit weniger, zusätzlichen und/oder verschiedenen Komponenten, Schritten, Funktionen, Aufgaben, Nutzen und Vorteilen. Diese umfassen auch Ausführungsformen, in denen die Komponenten und/oder Schritte angeordnet und/oder anders angeordnet sind.
-
Aspekte der vorliegenden Offenlegung sind im vorliegenden Dokument unter Bezug auf eine Ablaufplandarstellung und/oder ein Blockschaubild eines Verfahrens, einer Vorrichtung (von Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der vorliegenden Offenlegung beschrieben. Es versteht sich, dass jeder Block der Ablaufplandarstellungen und/oder Blockschaubilder und Kombinationen aus Blöcken in den Ablaufplandarstellungen und/oder Blockschaubildern mit computerlesbaren Programmanweisungen implementiert sein kann bzw. können.
-
Diese computerlesbaren Programmanweisungen können einem Prozessor eines entsprechend konfigurierten Computers, eines Computers für besondere Zwecke oder einer anderen programmierbaren Datenverarbeitungsvorrichtung zur Herstellung einer Maschine bereitgestellt werden, sodass die Anweisungen, die über den Prozessor des Computers oder der anderen programmierbaren Datenverarbeitungsvorrichtung ausgeführt werden, Mittel zum Implementieren der Funktionen/Handlungen erzeugen, die in dem Block oder den Blöcken der Ablaufpläne und/oder Blockschaubilder angegeben sind. Diese computerlesbaren Programmanweisungen können auch in einem computerlesbaren Speichermedium gespeichert werden, das einen Computer, eine programmierbare Datenverarbeitungsvorrichtung und/oder andere Einheiten anweisen kann, auf eine Weise zu funktionieren, sodass das computerlesbare Speichermedium, in dem Anweisungen gespeichert sind, einen Herstellungsgegenstand aufweist, der Anweisungen enthält, die Aspekte der Funktion/Handlung realisieren, die in dem Block oder den Blöcken der Ablaufpläne und/oder Blockschaubilder angegeben ist.
-
Die computerlesbaren Programmanweisungen können auch in einen Computer, eine andere programmierbare Datenverarbeitungsvorrichtung oder andere Einheit geladen werden, um zu bewirken, dass eine Reihe von Arbeitsschritten auf dem Computer, der anderen programmierbaren Vorrichtung oder der anderen Einheit ausgeführt wird, um einen auf einem Computer realisierten Prozess zu erzeugen, sodass die Anweisungen, die auf dem Computer oder der anderen programmierbaren Vorrichtung oder der anderen Einheit ausgeführt werden, die Funktinonen/Handlungen realisieren, die in dem Block oder den Blöcken des Ablaufplans und/oder Blockschaubilder angegeben sind.
-
Die Anrufablauf-, Ablaufplan- und Blockschaubilder in den vorliegenden Figuren veranschaulichen die Architektur, Funktionalität und Funktionsweise möglicher Realisierungen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Offenlegung. In diesem Zusammenhang kann jeder Block in den Ablaufplänen oder Blockschaubildern ein Modul, Segment oder einen Anweisungsbestandteil darstellen, das bzw. der eine oder mehrere ausführbare Anweisungen zur Realisierung der angegebenen Logikfunktion(en) aufweist. Bei einigen Realisierungsalternativen können die in den Blöcken angegebenen Funktionen in einer anderen Reihenfolge als in den Figuren angegeben vorkommen. Zwei hintereinander dargestellte Blöcke können beispielsweise in Wirklichkeit im Wesentlichen gleichzeitig ausgeführt werden, oder die Blöcke können manchmal in umgekehrter Reihenfolge ausgeführt werden, je nach betreffender Funktoinalität. Es sei auch festgehalten, dass jeder Block der Blockschaubilder und/oder Ablaufplandarstellung und Kombinationen aus Blöcken in den Blockschaubildern und/oder der Ablaufplandarstellung durch Systeme auf der Grundlage von Hardware für besondere Zwecke realisiert sein kann bzw. können, die die angegebenen Funktionen oder Handlungen ausführen, oder Kombinationen aus Hardware für besondere Zwecke und Computeranweisungen ausführt bzw. ausführen.
-
Das Vorstehende wurde in Verbindung mit beispielhaften Ausführungsformen beschrieben, doch sollte klar sein, dass der Begriff „beispielhaft“ nur als ein Beispiel und nicht als das Beste oder Optimale zu verstehen ist. Mit Ausnahme der unmittelbar vorhergehenden Ausführungen ist nichts von dem, was angegeben oder veranschaulicht worden ist, als Interpretation aufzufassen oder sollte so interpretiert werden, dass dies zu einem Verzicht auf eine Komponente, einen Schritt, eine Funktion, eine Aufgabe, einen Nutzen, einen Vorteil oder eine Entsprechung für die Öffentlichkeit führt, ohne Berücksichtigung dessen, ob eine Erwähnung in den Ansprüchen vorliegt.
-
Es sollte klar sein, dass die hierin verwendeten Begriffe und Ausdrücke die gewöhnliche Bedeutung von derartigen Begriffen und Ausdrücken in Bezug auf ihre jeweiligen Fachgebiete und Studienbereiche haben, ausgenommen in Fällen, in denen spezielle Bedeutungen für sie hierin dargelegt worden sind. Beziehungsbegriffe wie zum Beispiel erste/r/s und zweite/r/s und dergleichen können allein zum Unterscheiden einer Entität oder Aktion von einer anderen verwendet werden, ohne dass notwendigerweise irgendeine tatsächliche derartige Beziehung oder Reihenfolge zwischen derartigen Entitäten oder Aktionen erforderlich ist oder impliziert wird. Die Begriffe „weist auf“, „aufweisend“ oder jede andere Variation davon sollen eine nicht ausschließende Einbeziehung abdecken, sodass ein Prozess, Verfahren, Artikel oder eine Vorrichtung, die eine Liste von Elementen aufweisen, nicht nur diese Elemente enthalten, sondern auch andere Elemente enthalten können, die nicht ausdrücklich aufgeführt oder einem solchen Prozess, Verfahren, Artikel oder einer solchen Vorrichtung inhärent sind. Ein Element mit einem vorangestellten „ein/eine“ schließt ohne weitere Einschränkungen das Vorhandensein von weiteren identischen Elementen in dem Prozess, Verfahren, Artikel oder der Vorrichtung nicht aus, die das Element aufweisen.
-
Die Zusammenfassung der Offenbarung wird bereitgestellt, um dem Leser schnell die Natur der technischen Offenbarung zu vermitteln. Sie wird mit dem Verständnis unterbreitet, dass sie nicht für eine Interpretation oder Einschränkung des Schutzumfangs oder der Bedeutung der Ansprüche verwendet wird. Des Weiteren ist aus der vorstehenden „Ausführlichen Beschreibung“ ersichtlich, dass in verschiedenen Ausführungsformen verschiedene Funktionen zur Straffung der Offenbarung zusammengefasst worden sind. Dieses Offenbarungsverfahren soll keinesfalls als eine Absicht interpretiert werden, dass die beanspruchten Ausführungsformen mehr Funktionen haben als ausdrücklich in jedem Anspruch zitiert. Stattdessen, wie durch die folgenden Ansprüche wiedergegeben, ist der Erfindungsgegenstand in weniger als allen Funktionen einer einzelnen offenbarten Ausführungsform vorhanden. Somit werden die folgenden Ansprüche hiermit in die „Ausführliche Beschreibung“ aufgenommen, wobei jeder Anspruch für sich selbst als separat beanspruchter Gegenstand steht.