DE112020003506T5 - Natürlichsprachliche antworten in maschinenunterstützten agenten - Google Patents

Natürlichsprachliche antworten in maschinenunterstützten agenten Download PDF

Info

Publication number
DE112020003506T5
DE112020003506T5 DE112020003506.9T DE112020003506T DE112020003506T5 DE 112020003506 T5 DE112020003506 T5 DE 112020003506T5 DE 112020003506 T DE112020003506 T DE 112020003506T DE 112020003506 T5 DE112020003506 T5 DE 112020003506T5
Authority
DE
Germany
Prior art keywords
natural language
response
computer
product
answer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE112020003506.9T
Other languages
English (en)
Inventor
Steven Ware Jones
Jennifer Mallette
Arjun Jauhari
Vivek Salve
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE112020003506T5 publication Critical patent/DE112020003506T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/55Rule-based translation
    • G06F40/56Natural language generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • G06F40/295Named entity recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • G06F40/35Discourse or dialogue representation

Abstract

Unter Verwendung eines Personenentitätsanalysierers wird eine Personenentitätsdifferenz zwischen einer natürlichsprachlichen Antwort auf eine natürlichsprachliche Abfrage und einer bearbeiteten Version der natürlichsprachlichen Antwort bewertet, wobei die natürlichsprachliche Antwort aus einem Satz natürlichsprachlicher Antwortempfehlungen ausgewählt wird. Unter Verwendung eines Produktentitätsanalysierers wird eine Produktentitätsdifferenz zwischen der natürlichsprachlichen Antwort und der bearbeiteten Version der natürlichsprachlichen Antwort bewertet. Unter Verwendung eines Satzähnlichkeitsanalysierers wird eine Satzähnlichkeit zwischen der natürlichsprachlichen Antwort und der bearbeiteten Version der natürlichsprachlichen Antwort bewertet. Auf Grundlage des Personenentitätsdifferenzwertes, des Produktentitätsdifferenzwertes und des Satzähnlichkeitswertes wird der Satz natürlichsprachlicher Antworten aktualisiert. In einer natürlichsprachlichen Interaktion wird eine ausgewählte natürlichsprachliche Antwort aus dem Satz natürlichsprachlicher Antworten ausgegeben.

Description

  • TECHNISCHES GEBIET
  • Die vorliegende Erfindung betrifft allgemein ein Verfahren, ein System und ein Computerprogrammprodukt für natürlichsprachliche Antwortempfehlungen. Insbesondere betrifft die vorliegende Erfindung ein Verfahren, ein System und ein Computerprogrammprodukt für natürlichsprachliche Antworten in maschinenunterstützten Agenten.
  • HINTERGRUND
  • Eine natürliche Sprache ist eine geskriptete (geschriebene) oder vokalisierte (gesprochene) Sprache in einer Form, die von Menschen in erster Linie zur Kommunikation mit anderen Menschen oder mit Systemen verwendet wird, die über eine natürlichsprachliche Schnittstelle verfügen. Die Verarbeitung natürlicher Sprache (NLP, natural language processing) ist eine Methode, die den Austausch von Informationen zwischen Menschen und Datenverarbeitungssystemen erleichtert. Ein Zweig von NLP befasst sich beispielsweise mit der Umwandlung von für Menschen lesbaren oder für Menschen verständlichen Inhalten in durch Maschinen verwendbare Daten. Beispielsweise können NLP-Maschinen aktuell Eingabeinhalte wie Zeitungsartikel oder menschliche Sprache akzeptieren und aus den gegebenen Inhalten strukturierte Daten wie eine Gliederung des Eingabeinhalts, die wichtigsten und die unwichtigsten Teile, ein Thema, einen Verweis, inhaltliche Abhängigkeiten und dergleichen erzeugen.
  • Ein anderer Zweig von NLP befasst sich mit der Beantwortung von Fragen zu einem Thema auf Grundlage von Informationen, die über den Themenbereich verfügbar sind. Hierbei handelt es sich um den Zweig der kognitiven Analytik, der auch als Frage- und Antwortsystem (Q&A- (question and answer) System) bezeichnet wird. Bei kognitiver Analytik handelt es sich um den Prozess des Analysierens verfügbarer Informationen oder Kenntnisse, um neue Informationen zu erstellen, zu folgern, herzuleiten oder abzuleiten.
  • Ein Chatbot oder eine Konversationsschnittstelle ist eine Software, die ein Gespräch in natürlicher Sprache mit einem menschlichen Benutzer führt. Normalerweise wird die natürlichsprachliche Konversation in Textform geführt. Eingaben für den Chatbot können jedoch auch aus einer anderen Modalität, beispielsweise gesprochener Sprache, in Text zur Verarbeitung umgewandelt werden, der dann vom Chatbot wieder in für Menschen hörbare Sprache umgewandelt ausgegeben wird. Chatbots werden in der Regel zur Unterstützung eines Kundendienstes oder zur Informationsbeschaffung eingesetzt.
  • Chatbots werden in der Regel in zwei Formen implementiert. Abrufbasierte Chatbots verwenden ein Repository mit vordefinierten Antworten. Ein abrufbasierter Chatbot benötigt als Eingabe einen Kontext (die bisherige Konversation) und eine mögliche Antwort. Um eine gute Antwort zu finden, bewertet der Chatbot mehrere mögliche Antworten im Repository und wählt die Antwort mit dem höchsten Wert aus. Generative Chatbots können Antworten generieren, die nicht in einem Repository vordefinierter Antworten enthalten sind. Die heutigen generativen Chatbots neigen jedoch dazu, grammatikalische Fehler zu machen, benötigen große Mengen an Trainingsdaten, produzieren irrelevante, generische oder inkonsistente Antworten und sind schwer zu optimieren.
  • Ein Agent-Assist-Tool (Agentenhilfswerkzeug) ist eine Variante eines Chatbots. Ein Agent-Assist-Tool empfängt Eingaben in natürlicher Sprache und liefert eine oder mehrere empfohlene natürlichsprachliche Antworten auf die Eingaben. Häufig wird ein Satz empfohlener natürlichsprachlicher Antworten in Form einer Rangliste bereitgestellt. Ein Agent führt jedoch die letzten Schritte des Auswählens einer empfohlenen Antwort und gegebenenfalls des Bearbeitens der Antwort durch, bevor das Tool die Antwort an einen menschlichen Benutzer liefert. Zudem wird eine bearbeitete Antwort nicht an das Tool zurückgegeben, damit es den Satz empfohlener natürlichsprachlicher Antworten verbessern kann. Ein Agent-Assist-Tool wird in der Regel verwendet, um einen Agenten bei der Interaktion mit einem Kunden in Sprach- oder Textform zu unterstützen. Die dargestellten Ausführungsformen sehen vor, dass Agent-Assist-Tools auch in humanoiden Formen verfügbar werden, wobei die Interaktion von Angesicht zu Angesicht oder von Mensch zu Mensch zwischen einem Menschen und einem Humanoiden erfolgen würde.
  • Chatbots und Agent-Assist-Tools werden zusammenfassend als Konversationssysteme bezeichnet. In Konversationssystemen wird eine natürlichsprachliche Äußerung, die dem System übermittelt wird, als Abfrage bezeichnet. Eine Abfrage muss keine grammatikalische Frage sein oder grammatikalisch korrekt sein, sondern kann auch ein beliebiges Wort oder eine beliebige Phrase in natürlicher Sprache sein. Eine Antwort ist eine natürlichsprachliche Äußerung, die das System als Antwort auf eine Abfrage liefert. Eine Antwort muss ebenfalls nicht in einem vollständigen Satz oder grammatikalisch korrekt sein, sondern kann ein beliebiges Wort oder eine beliebige Phrase in natürlicher Sprache sein. Eine Abfrage und eine Antwort auf die Abfrage bilden ein Abfrage-Antwort-Paar. Sowohl Abfragen als auch Antworten können in Form von Text, Sprache oder einer anderen Form von natürlichsprachlicher Kommunikation erfolgen.
  • KURZDARSTELLUNG
  • Ein Aspekt der Erfindung umfasst ein Verfahren, das unter Verwendung eines Personenentitätsanalysierers eine Personenentitätsdifferenz zwischen einer natürlichsprachlichen Antwort auf eine natürlichsprachliche Abfrage und einer bearbeiteten Version der natürlichsprachlichen Antwort bewertet, wobei die natürlichsprachliche Antwort aus einem Satz von natürlichsprachlichen Antwortempfehlungen ausgewählt wird, wobei der Personenentitätsanalysierer eine Instanz einer benannten Entität erkennt, die sich auf eine Person in einem Abschnitt eines narrativen Textes bezieht. Eine Ausführungsform bewertet unter Verwendung eines Produktentitätsanalysierers eine Produktentitätsdifferenz zwischen der natürlichsprachlichen Antwort und der bearbeiteten Version der natürlichsprachlichen Antwort, wobei der Produktentitätsanalysierer eine Instanz einer benannten Entität erkennt, die sich auf ein Produkt in einem Abschnitt des narrativen Textes bezieht. Eine Ausführungsform bewertet unter Verwendung eines Satzähnlichkeitsanalysierers eine Satzähnlichkeit zwischen der natürlichsprachlichen Antwort und der bearbeiteten Version der natürlichsprachlichen Antwort, wobei der Satzähnlichkeitsanalysierer eine Ähnlichkeit zwischen zwei Abschnitten eines narrativen Textes misst. In einer Ausführungsform wird der Satz natürlichsprachlicher Antworten auf Grundlage des Personenentitätsdifferenzwertes, des Produktentitätsdifferenzwertes und des Satzähnlichkeitswertes aktualisiert. In einer Ausführungsform wird in einer natürlichsprachlichen Interaktion eine ausgewählte natürlichsprachliche Antwort aus dem Satz natürlichsprachlicher Antworten ausgegeben, so dass die natürlichsprachliche Interaktion die ausgewählte natürlichsprachliche Antwort innerhalb eines Flusses der natürlichsprachlichen Interaktion verwendet.
  • Ein weiterer Aspekt umfasst ein durch einen Computer verwendbares Computerprogrammprodukt. Das durch einen Computer verwendbare Programmprodukt enthält eine oder mehrere durch einen Computer lesbare Speichereinheiten und Programmanweisungen, die auf mindestens einer der einen oder der mehreren Speichereinheiten gespeichert sind.
  • Ein weiterer Aspekt der Erfindung umfasst ein Computersystem. Das Computersystem enthält einen oder mehrere Prozessoren, einen oder mehrere durch einen Computer lesbare Speicher und eine oder mehrere durch einen Computer lesbare Speichereinheiten sowie auf mindestens einer der einen oder der mehreren Speichereinheiten gespeicherte Programmanweisungen zur Ausführung durch mindestens einen des einen oder der mehreren Prozessoren über mindestens einen des einen oder der mehreren Speicher.
  • Figurenliste
  • Bestimmte als die Erfindung kennzeichnend erachtete neuartige Merkmale sind in den beiliegenden Ansprüchen angegeben. Die Erfindung selbst sowie eine bevorzugte Verwendungsform, weitere Zielsetzungen und Vorteile werden jedoch am besten aus einer Bezugnahme auf die nachfolgende ausführliche Beschreibung der veranschaulichenden Ausführungsformen zusammen mit den begleitenden Zeichnungen ersichtlich, wobei:
    • 1 ein Blockschaubild eines Netzwerks aus Datenverarbeitungssystemen zeigt, in denen veranschaulichende Ausführungsformen implementiert werden können;
    • 2 ein Blockschaltbild eines Datenverarbeitungssystems zeigt, in dem veranschaulichende Ausführungsformen implementiert werden können;
    • 3 ein Blockschaubild einer Beispielkonfiguration für eine natürlichsprachliche Antwort zeigt;
    • 4 ein Blockschaubild einer Beispielkonfiguration für Verbesserung natürlichsprachlicher Antworten in maschinen unterstützten Agenten gemäß einer veranschaulichenden Ausführungsform zeigt;
    • 5 ein Blockschaubild einer Beispielkonfiguration für Verbesserung natürlichsprachlicher Antworten in maschinen unterstützten Agenten gemäß einer veranschaulichenden Ausführungsform zeigt;
    • 6 ein Beispiel einer Verbesserung natürlichsprachlicher Antworten in maschinenunterstützten Agenten gemäß einer veranschaulichenden Ausführungsform zeigt;
    • 7 Beispiele einer Verbesserung natürlichsprachlicher Antworten in maschinenunterstützten Agenten gemäß einer veranschaulichenden Ausführungsform zeigt;
    • 8 Beispiele einer Verbesserung natürlichsprachlicher Antworten in maschinenunterstützten Agenten gemäß einer veranschaulichenden Ausführungsform zeigt;
    • 9 Beispiele einer Verbesserung natürlichsprachlicher Antworten in maschinenunterstützten Agenten gemäß einer veranschaulichenden Ausführungsform zeigt;
    • 10 einen Ablaufplan eines Beispielprozesses zur Verbesserung natürlichsprachlicher Antworten zeigt; und
    • 11 einen Ablaufplan eines Beispielprozesses zur Verbesserung natürlichsprachlicher Antworten in maschinen unterstützten Agenten gemäß einer veranschaulichenden Ausführungsform zeigt.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Die veranschaulichenden Ausführungsformen erkennen an, dass abrufbasierte Agent-Assist-Tools über einen robusten Datensatz möglicher Antworten verfügen müssen, aus dem sie auswählen können, um effektiv auf natürlichsprachliche Abfragen zu reagieren. Ein Agent-Assist-Tool kann einen Satz möglicher Antworten durch Training an einem Datensatz natürlichsprachlicher Interaktionen erlernen, beispielsweise Transkripte von Online-Chats, Online-Frage-und-Antwort-Foren, Transkripte von Telefongesprächen und andere Quellen natürlichsprachlicher Interaktionsdaten.
  • Die veranschaulichenden Ausführungsformen erkennen jedoch an, dass ein auf diese Weise trainiertes Agent-Assist-Tool Mängel aufweisen wird. Da das Tool auf Antworten beschränkt ist, die in den Trainingsdaten vorhanden waren, kann es nicht ohne zusätzliches Training an eine neue Situation angepasst werden. So muss zum Beispiel ein Agent-Assist-Tool, das im Kundendienst eingesetzt wird, aktualisiert werden, um bei Abfragen zu jedem neuen Produkt und zu neuen Versionen eines bestehenden Produkts zu helfen. Als weiteres Beispiel können Elemente der natürlichen Sprache, wie z.B. Bezeichnungen für Gegenstände und erwartete Höflichkeitsniveaus, je nach geografischem Standort unterschiedlich sein. So werden zum Beispiel die in den Vereinigten Staaten als „running shoes“ oder „sneakers“ bezeichneten Schuhe in Großbritannien oft als „trainers“ bezeichnet. So kann es sein, dass ein Agent-Assist-Tool, das mit Daten aus einem bestimmten geografischen Gebiet trainiert wurde, zusätzliches Training benötigt, bevor es in einem anderen geografischen Gebiet eingesetzt werden kann.
  • Ein Agent-Assist-Tool liefert empfohlene Antworten, die ein Agent weiter bearbeiten kann. Durch Bearbeiten einer Antwort vor dem Versenden kann ein Agent eine empfohlene Antwort für ein neues Produkt oder eine neue Produktversion aktualisieren, eine empfohlene Antwort an einen Kontext anpassen, den ein Tool möglicherweise nicht korrekt analysiert hat, eine empfohlene Antwort korrigieren, die einen grammatikalischen Fehler aufweist, eine empfohlene Antwort personalisieren und generell Unzulänglichkeiten des Tools in Bezug auf das Training oder das Verständnis der natürlichen Sprache ausgleichen. Doch selbst wenn ein Agent häufig ähnliche Bearbeitungen an einer empfohlenen Antwort vornimmt, kann ein vorab trainiertes Tool nicht so angepasst werden, dass es aus den Bearbeitungen lernt. Ein wiederholtes Durchführen derselben Bearbeitungen - z.B. zur Berücksichtigung neuer Produktpreise - muss schnell genug erfolgen, um die Antwortlatenz in einem Bereich zu halten, der die Interaktivität der Interaktion bewahrt. Darüber hinaus ist das Vornehmen empfängerspezifischer Bearbeitungen bei gleichzeitiger Interaktion mit mehreren Kunden ebenfalls fehleranfällig, insbesondere wenn die Reaktionsgeschwindigkeit beibehalten werden muss.
  • Folglich erkennen die veranschaulichenden Ausführungsformen an, dass es einen ungedeckten Bedarf für einen Satz empfohlener Antworten eines Agent Assist Tool gibt, der aktualisierbar und anpassbar ist und aus von Agenten vorgenommenen Bearbeitungen des Satzes empfohlener Antworten lernen kann.
  • Die veranschaulichenden Ausführungsformen erkennen, dass die derzeit verfügbaren Werkzeuge oder Lösungen nicht auf diese Bedürfnisse eingehen oder geeignete Lösungen für diese Bedürfnisse bereitstellen. Die zum Beschreiben der Erfindung verwendeten veranschaulichenden Ausführungsformen befassen sich allgemein mit den vorstehend beschriebenen und anderen Problemen, die die Verbesserung natürlichsprachlicher Antworten in maschinenunterstützten Agenten betreffen.
  • Eine Ausführungsform kann als Software-Anwendung implementiert werden. Die Anwendung, die eine Ausführungsform implementiert, kann als Modifikation eines bestehenden Agent-Assist-Tool, als separate Anwendung, die in Verbindung mit einem bestehenden Agent-Assist-Tool arbeitet, als eigenständige Anwendung oder als eine Kombination aus diesen konfiguriert werden.
  • Insbesondere stellen einige veranschaulichende Ausführungsformen ein Verfahren bereit, das Differenzen zwischen einer empfohlenen Antwort auf eine natürlichsprachliche Abfrage und einer bearbeiteten Version der Antwort bewertet und einen gespeicherten Satz empfohlener Antworten gemäß den bewerteten Differenzen aktualisiert.
  • Eine Ausführungsform umfasst einen Satz empfohlener natürlichsprachlicher Antworten auf natürlichsprachliche Abfragen. Der Satz empfohlener Antworten kann aus einem Datensatz natürlichsprachlicher Interaktionen extrahiert, maschinell oder von Menschen generiert oder durch ein anderes Verfahren oder eine Kombination von Verfahren erzeugt worden sein. Eine Ausführungsform zielt darauf ab, den Satz empfohlener Antworten unter Verwendung durch Agenten vorgenommener Bearbeitungen von Antworten während der Bearbeitung konkreter Abfragen zu verbessern.
  • In einer Ausführungsform wird eine empfohlene natürlichsprachliche Antwort aus dem Satz empfohlener Antworten zur Analyse empfangen. In einer Ausführungsform wird zudem eine bearbeitete Version dergleichen empfohlenen natürlichsprachlichen Antwort zur Analyse empfangen. Eine Ausführungsform kann auch so konfiguriert sein, dass sie die natürlichsprachliche Abfrage, auf die die natürlichsprachliche Antwort antworten soll, empfängt, um gegebenenfalls die Analyse zu unterstützen. Eine Ausführungsform kann auch so konfiguriert sein, dass sie, um gegebenenfalls die Analyse zu unterstützen, alle vorangegangenen Abfragen und Antworten innerhalb derselben Interaktion wie die zu analysierende empfohlene Antwort empfängt. Eine Ausführungsform kann auch so konfiguriert sein, dass sie, um gegebenenfalls die Analyse zu unterstützen, Metadaten über die Interaktion empfängt, zu der die empfohlene Antwort gehört. Die Abfrage, vorangegangene Abfragen und Antworten sowie Metadaten liefern zusätzlichen Kontext zur Verwendung für die Analyse.
  • Eine benannte Entität ist vorliegend ein reales Objekt, das mit einem Eigennamen bezeichnet werden kann. Eine benannte Entität umfasst auch einen Platzhalter, der angibt, wo eine bestimmte benannte Entität in eine Vorlage eingefügt werden kann. Eine Personenentität ist eine benannte Entität, die sich auf eine bestimmte Person oder eine juristische Person bezieht, die wie eine Person behandelt wird (z.B. ein Unternehmen). So sind zum Beispiel „John“, „John Doe“, „IBM Corporation“ und „{Vorname}“ (ein Platzhalter in einer Vorlage) allesamt Personenentitäten. Eine Produktentität ist eine benannte Entität, die auf ein bestimmtes Produkt, eine Produktversion oder ein anderes produktbezogenes Substantiv verweist. Wenn also beispielsweise Produkt X ein Produkt und Gold eine Version von Produkt X ist, sind „Produkt X“, „Produkt X Gold“ und „die Goldversion“ allesamt Produktentitäten.
  • Vorliegend erkennt ein Analysierer für benannte Entitäten eine Instanz einer benannten Entität in einem Abschnitt eines narrativen Textes. Somit erkennt ein Personenentitätsanalysierer eine Instanz einer Personenentität in einem Abschnitt eines narrativen Textes, und ein Produktentitätsanalysierer erkennt eine Instanz einer Produktentität in einem Abschnitt eines narrativen Textes. Methoden zum Extrahieren und Klassifizieren benannter Entitäten, einschließlich Personen- und Produktentitäten, sind derzeit kommerziell verfügbar. Einige dieser Methoden sind zum Beispiel Natural Language Toolkit (NLTK), Stanford Name Entity Recognition (NER) und Watson Natural Language Understanding. (Watson ist eine eingetragene Marke der International Business Machines Corporation in den Vereinigten Staaten und anderen Ländern)
  • Eine Ausführungsform verwendet einen Personenentitätsanalysierer, um eine oder mehrere Instanzen einer Personenentität in der empfohlenen Antwort und der bearbeiteten empfohlenen Antwort zu erkennen. Dann vergleicht eine Ausführungsform erkannte Personenentitätsinstanzen in der empfohlenen Antwort mit erkannten Personenentitätsinstanzen in der bearbeiteten empfohlenen Antwort, um eine Anzahl von Personenentitätsinstanzen zu ermitteln, die sich geändert haben. Lautet eine empfohlene Antwort beispielsweise „Hallo, {Vorname}“ und die bearbeitete Version „Hallo, Jenny“, so wurde „{Vorname}“ in „Jenny“ geändert, so dass die bearbeitete Version eine Personenentitätsänderung enthält. Ein weiteres Beispiel: Die Bearbeitung einer empfohlenen Antwort von „Hallo, {Vorname}“ zu „Hallo, John Doe“ resultiert in zwei Personenentitätsänderungen: „{Vorname}“ wurde durch „John“, einen Vornamen, ersetzt, und „Doe“, der Nachname einer Person, wurde hinzugefügt. Eine Ausführungsform verwendet die Anzahl von Personenentitätsinstanzen, die sich geändert haben, als Personenentitätsdifferenzwert.
  • Eine Ausführungsform verwendet einen Produktentitätsanalysierer, um eine oder mehrere Instanzen einer Produktentität in der empfohlenen Antwort und der bearbeiteten empfohlenen Antwort zu erkennen. Dann vergleicht eine Ausführungsform erkannte Produktentitätsinstanzen in der empfohlenen Antwort mit erkannten Produktentitätsinstanzen in der bearbeiteten empfohlenen Antwort, um eine Anzahl von Produktentitätsinstanzen zu ermitteln, die sich geändert haben. Wenn eine empfohlene Antwort beispielsweise lautet „Produkt X Gold verfügt über Textanalyse“ und die bearbeitete Version lautet „Produkt X Professional verfügt über Textanalyse“, wurde „Gold“ in „Professional“ geändert, so dass die bearbeitete Version eine Produktentitätsänderung enthält. Ein weiteres Beispiel: Bearbeiten einer empfohlenen Antwort „Der Preis von Produkt X Gold beträgt $100“ zu „Der Preis von Produkt X Professional beträgt $200“ resultiert in zwei Produktentitätsänderungen: „Gold“ wurde in „Professional“ geändert, und der Preis wurde von $100 auf $200 erhöht. Eine Ausführungsform verwendet die Anzahl von Produktentitätsinstanzen, die sich geändert haben, als Produktentitätsdifferenzwert.
  • Eine Ausführungsform verwendet einen Satzähnlichkeitsanalysierer, um eine Ähnlichkeit zwischen der empfohlenen Antwort und der bearbeiteten empfohlenen Antwort zu bewerten. Eine Satzähnlichkeit bestimmt ein Maß für die semantische Ähnlichkeit zweier Abschnitte eines narrativen Textes. Die Abschnitte des narrativen Textes müssen keine grammatikalischen Sätze sein, sondern können eine beliebige Gruppierung von Text in natürlicher Sprache sein, die mindestens ein Wort enthält. Ein Verfahren zum Berechnen einer Satzähnlichkeit besteht darin, die empfohlene Antwort und die bearbeitete empfohlene Antwort in entsprechende numerische Darstellungen, z.B. Vektoren, umzuwandeln und dann die numerischen Darstellungen zu vergleichen. Die Kosinusähnlichkeit misst beispielsweise einen Winkel zwischen zwei Vektoren und damit eine Ähnlichkeit zwischen den Vektoren. Zwei Vektoren sind maximal ähnlich oder identisch, wenn der Winkel zwischen ihnen 0 ist, und sie werden immer unähnlicher, je weiter der Winkel zwischen ihnen über 0 zunimmt. Das Umwandeln einer Einheit eines narrativen Textes, etwa eines Wortes oder Satzes, in eine Vektordarstellung wird als Berechnen und Einbetten entsprechend der Einheit des narrativen Textes bezeichnet. Es sind Methoden zum Messen von Satzähnlichkeit bekannt, bei denen für jeden Satz eine Satzeinbettung berechnet wird und anschließend eine Ähnlichkeit zwischen den beiden Einbettungen berechnet wird. Methoden zum Messen von Satzähnlichkeit durch Berechnen einer Worteinbettung für jedes Wort in jedem Satz, Kombinieren der Worteinbettungen für jeden Satz und anschließend Berechnen einer Ähnlichkeit zwischen den beiden Kombinationen von Worteinbettungen sind ebenfalls bekannt.
  • Eine Ausführungsform klassifiziert die bearbeitete empfohlene Antwort auf Grundlage des Personenentitätsdifferenzwertes, des Produktentitätsdifferenzwertes und des Satzähnlichkeitswertes. Dann aktualisiert eine Ausführungsform den Satz empfohlener Antworten auf Grundlage der durch die Ausführungsform vorgenommenen Klassifizierung der Art der Bearbeitung, die an der bearbeiteten empfohlenen Antwort vorgenommen wurde.
  • Eine Ausführungsform verwendet als eine der Bearbeitungsklassifikationen Bearbeitungen einer empfohlenen Antwort, die ignoriert werden sollen. Eine Ausführungsform geht davon aus, dass eine einzelne Personenentitätsänderung anzeigt, dass die empfohlene Antwort so bearbeitet wurde, dass sie eine Personalisierung enthält, beispielsweise die Anpassung einer Antwortvorlage so, dass sie an eine bestimmte benannte Person gerichtet ist. Da es unwahrscheinlich ist, dass eine solche Personalisierung einen Satz empfohlener Antworten verbessert, der für alle Kunden gelten soll, werden in einer Ausführungsform Bearbeitungen ignoriert, bei denen nur eine Personenentität geändert wurde, d.h. eine Personenentitätsdifferenz gleich eins ist.
  • Eine Ausführungsform verwendet als eine der Bearbeitungsklassifikationen Bearbeitungen einer empfohlenen Antwort, die als Verbesserungen einer empfohlenen Antwort betrachtet werden. In einer Ausführungsform wird eine einzelne Produktentitätsänderung als Hinweis auf eine Verbesserung einer empfohlenen Antwort betrachtet, um beispielsweise Produktinformationen hinzuzufügen oder zu korrigieren. Um zu ermitteln, ob es sich bei der Bearbeitung um eine Hinzufügung oder eine Korrektur handelt, und um jeweils entsprechende Maßnahmen zu ergreifen, wird in einer Ausführungsform ein Kontext der empfohlenen Antwort verwendet.
  • Insbesondere führt eine Ausführungsform eine Produktentitätsanalyse für die Abfrage durch, die der empfohlenen Antwort unmittelbar vorausgeht, d.h. die Abfrage, auf die die empfohlene Antwort antwortet. Wenn die Abfrage dieselbe Produktentität wie die empfohlene Antwort enthielt, aber die Produktentität geändert wurde, um die bearbeitete Antwort zu erstellen, geht eine Ausführungsform davon aus, dass die bearbeitete Antwort als eine Merkmalsaktualisierung der empfohlenen Antwort gemeint ist, und ersetzt die empfohlene Antwort im Satz empfohlener Antworten durch die bearbeitete Version. Bei der Abfrage „Verfügt das Produkt X Gold über Textanalyse?“ könnte eine empfohlene Antwort lauten: „Produkt X Gold verfügt über Textanalyse“, und eine bearbeitete Version der empfohlenen Antwort könnte lauten: „Produkt X Professional verfügt über Textanalyse“. Da in diesem Fall sowohl die Abfrage als auch die empfohlene Antwort dieselbe Produktentität („Produkt X Gold“) enthalten, in der bearbeiteten Antwort jedoch „Produkt X Gold“ in „Produkt X Professional“ geändert wurde, geht eine Ausführungsform davon aus, dass die Änderung als Merkmalsaktualisierung gedacht war, wahrscheinlich weil Produkt X Gold durch Produkt X Professional ersetzt wurde. Infolgedessen ersetzt die Ausführungsform die empfohlene Antwort im Satz empfohlener Antworten durch die bearbeitete Version.
  • Enthält die Abfrage stattdessen dieselbe Produktentität wie die bearbeitete Antwort, nicht aber die ursprüngliche empfohlene Antwort, geht eine Ausführungsform davon aus, dass die bearbeitete Antwort als Produktaktualisierung der empfohlenen Antwort gemeint ist, und fügt die bearbeitete Version dem Satz empfohlener Antworten hinzu, während die ursprüngliche empfohlene Antwort beibehalten wird. Bei der Abfrage „Verfügt das Produkt X Professional über Textanalyse?“ könnte eine empfohlene Antwort lauten: „Produkt X Gold verfügt über Textanalyse“, und eine bearbeitete Version der empfohlenen Antwort könnte lauten: „Produkt X Professional verfügt über Textanalyse“. Da in diesem Fall die Produktentität („Produkt X Professional“) in der Abfrage in der empfohlenen Antwort in „Produkt X Gold“ und in der bearbeiteten Antwort wieder in „Produkt X Professional“ geändert wurde, geht eine Ausführungsform davon aus, dass die Änderung als Aktualisierung des Produktwissens im Satz empfohlener Antworten zur Abdeckung von Merkmalen von Produkt X Professional gemeint ist. Infolgedessen wird in einer Ausführungsform die bearbeitete Antwort dem Satz empfohlener Antworten hinzugefügt.
  • Eine Ausführungsform verwendet als eine der Bearbeitungsklassifikationen Bearbeitungen einer empfohlenen Antwort, die als Änderungen mit geringer Bedeutung einer empfohlenen Antwort betrachtet werden. In einer Ausführungsform wird eine Änderung mit geringer Bedeutung als eine Änderung betrachtet, bei der ein Satzähnlichkeitswert zwischen der empfohlenen Antwort und der bearbeiteten empfohlenen Antwort, der auf eine vorliegend beschriebene Weise ermittelt wurde, über einem Ähnlichkeitsschwellenwert liegt. Ein nicht einschränkendes Beispiel für einen Ähnlichkeitsschwellenwert ist 0,9, wobei der Ähnlichkeitswert in einem Bereich von 0 bis 1 ermittelt wird. Eine Ausführungsform geht davon aus, dass, wenn zwei Antworten einen Ähnlichkeitswert über einem hohen Schwellenwert haben, die beiden Antworten im Wesentlichen die gleiche Bedeutung haben und sich nur durch geringfügige grammatikalische oder stilistische Änderungen unterscheiden. Ein Beispiel für eine geringfügige grammatikalische Änderung wäre Bearbeiten einer empfohlenen Antwort „Der Preis von Produkt X sind ...“ in „Der Preis von Produkt X ist ...“. Ein Beispiel für eine geringfügige stilistische Änderung wäre Bearbeiten einer empfohlenen Antwort „Hallo, mein Name ist ...“ in „Hi, mein Name ist ...“. Eine Ausführungsform verwendet Grammatik-Parsing, um zu ermitteln, ob eine Grammatikänderung eine Verbesserung oder ein Fehler ist. Beim Grammatik-Parsing wird für jedes Wort in einem Abschnitt eines narrativen Textes, beispielsweise einer Antwort oder einer bearbeiteten Antwort, eine Wortart identifiziert und ein oder mehrere Parsing-Bäume verwendet, um festzustellen, ob der bewertete Text eine Reihe von Grammatikregeln erfüllt. Es sind mehrere Grammatik-Parser kommerziell erhältlich, zum Beispiel der Stanford Natural Language Processing Group Stanford Parser. Eine Ausführungsform kann entweder die ursprüngliche Antwort oder die bearbeitete Version eliminieren, wenn der Parser feststellt, dass die eine grammatikalisch gültig ist und die andere nicht.
  • In einer Ausführungsform wird eine Änderung mit geringer Bedeutung auch als eine Änderung betrachtet, bei der der Personenentitätsdifferenzwert über eins liegt, was bedeutet, dass es mehr als eine Personenentitätsdifferenz zwischen der empfohlenen Antwort und der bearbeiteten Antwort gab. Wenn beispielsweise eine empfohlene Antwort „Hallo, {Vorname}, kann ich Ihre E-Mail-Adresse haben?“ in „Hallo, John Doe, kann ich Ihre E-Mail-Adresse haben?“ geändert wird, beträgt der Personenentitätsdifferenzwert für diese Änderung zwei, da „{Vorname}“ in „John“ geändert und „Doe“, eine zusätzliche Personenentität, hinzugefügt wurde.
  • Wenn eine Ausführungsform eine Bearbeitung als Änderung mit geringer Bedeutung einstuft, führt die Ausführungsform einen AB-Test sowohl für die empfohlene Antwort als auch für die bearbeitete Version durch. Ein AB-Test ist vorliegend ein Experiment, bei dem zwei oder mehr Varianten einer Antwort den Benutzern nach dem Zufallsprinzip präsentiert werden und eine statistische Analyse verwendet wird, um zu ermitteln, welche Variante für eine bestimmte Zielsetzung besser abschneidet. Ein nicht einschränkendes Beispiel für eine Zielsetzung ist ein Grad der Kundenzufriedenheit mit einer Antwort oder einer gesamten Interaktion. Ein weiteres nichteinschränkendes Beispiel für eine Zielsetzung ist eine Rate, mit der Kunden ein Produkt nach einer eine Antwortvariante enthaltenden Interaktion kaufen. Sobald Daten für eine statistisch signifikante Anzahl von Interaktionen, die die Varianten enthalten, gesammelt wurden, behält eine Ausführungsform eine oder mehrere der am besten abschneidenden Varianten im Satz empfohlener Antworten bei und löscht die übrigen Varianten. Somit wird in einer Ausführungsform der AB-Test verwendet, um zu ermitteln, welche von einer Reihe semantisch ähnlicher Antworten gemäß einem Ziel am besten abschneidet, und die beste der Gruppe semantisch ähnlicher Antworten wird beibehalten.
  • Eine Ausführungsform verwendet als eine der Bearbeitungsklassifikationen Bearbeitungen einer empfohlenen Antwort, die als Änderungen mit hoher Bedeutung einer empfohlenen Antwort betrachtet werden. In einer Ausführungsform wird eine Änderung mit hoher Bedeutung als eine Änderung betrachtet, bei der ein Satzähnlichkeitswert zwischen der empfohlenen Antwort und der bearbeiteten empfohlenen Antwort, der auf eine vorliegend beschriebene Weise ermittelt wurde, unter einem Ähnlichkeitsschwellenwert liegt, beispielsweise 0,9 in einem Bereich von 0 bis 1. In einer Ausführungsform wird davon ausgegangen, dass zwei Antworten, deren Ähnlichkeitswert unter einem Schwellenwert liegt, nicht im Wesentlichen die gleiche Bedeutung haben. Ein Bearbeiten einer empfohlenen Antwort „Das beste Merkmal von Produkt X ist seine Textanalysefähigkeit“ in „Das beste Merkmal von Produkt X ist sein numerisches Analysepaket“ ist beispielsweise ein nichteinschränkendes Beispiel für eine Änderung mit hoher Bedeutung, da „Textanalysefähigkeit“ nicht über einem Schwellenwert für semantische Ähnlichkeit mit „numerisches Analysepaket“ liegt. Ein weiteres nichteinschränkendes Beispiel für eine Änderung mit hoher Bedeutung ist Bearbeiten einer empfohlenen Antwort „Der Preis von Produkt X beträgt $100“ in „Der Preis von Produkt X beträgt $100. Und die Hauptmerkmale sind...“, denn die bearbeitete Antwort enthält einen zusätzlichen Satz mit detaillierten Merkmalsinformationen.
  • In einer Ausführungsform wird eine Änderung mit hoher Bedeutung auch als eine Änderung betrachtet, bei der der Produktentitätsdifferenzwert über eins liegt, was bedeutet, dass es mehr als eine Produktentitätsdifferenz zwischen der empfohlenen Antwort und der bearbeiteten Antwort gab. Wenn zum Beispiel eine empfohlene Antwort „Der Preis von Produkt X Gold beträgt $100“ in „Der Preis von Produkt X Professional beträgt $200“ geändert wird, beträgt der Produktentitätsdifferenzwert bei dieser Änderung zwei, weil „Produkt X Gold“ in „Produkt X Professional“ geändert wurde und zudem der Preis geändert wurde.
  • Wenn eine Ausführungsform eine Bearbeitung als Änderung mit hoher Bedeutung klassifiziert, behält die Ausführungsform die empfohlene Antwort bei und fügt die bearbeitete Version dem Satz von Antwortempfehlungen hinzu. Das Beibehalten beider Versionen hält den Satz empfohlener Antworten auf dem neuesten Stand, während sich die in den Antworten enthaltenen Informationen, wie Produktversionen, Merkmale und Preise, im Laufe der Zeit ändern.
  • Eine Ausführungsform ist so konfigurierbar, dass sie zusätzliche oder weniger Bearbeitungsklassifikationen enthält. Eine Ausführungsform ist zudem so konfigurierbar, dass in Reaktion auf Bearbeitungsklassifizierungen andere oder zusätzliche Aktionen durchgeführt werden. Eine Ausführungsform ist so konfigurierbar, dass Änderungen am Satz empfohlener Antworten auf Grundlage eines bestimmten geografischen Gebiets oder ohne geografische Einschränkung implementiert werden. Die Beschränkung von Änderungen auf ein bestimmtes geografisches Gebiet stellt sicher, dass ortsspezifische Aktualisierungen nur für das geografische Gebiet durchgeführt werden, für das sie gelten. Ein nicht einschränkendes Beispiel für eine ortsspezifische Aktualisierung sind Preisinformationen in einer bestimmten Landeswährung. Ein weiteres nichteinschränkendes Beispiel für eine ortsspezifische Aktualisierung implementiert eine Präferenz in einer Region, Kunden mit ihrem Vornamen anzusprechen, während in einer anderen Region eine Präferenz, Kunden mit ihrem Titel und Nachnamen anzusprechen, beibehalten wird.
  • Eine Ausführungsform umfasst zudem zusätzliche Funktionalität. Insbesondere bestimmt eine Ausführungsform eine Antwortzeitgabe für eine natürlichsprachliche Interaktion. Die Antwortzeitgabe liegt innerhalb eines Zeitbereichs zwischen einem oberen und einem unteren Schwellenwert, wobei die Schwellenwerte so gewählt werden, dass eine Abfrage weder zu schnell noch zu langsam beantwortet wird. Sowohl zu schnelle als auch zu langsame Antworten beeinträchtigen den interaktiven Charakter der Interaktion. Die Ausführungsform bildet einen Satz von bearbeiteten empfohlenen Antworten, wählt eine bearbeitete Antwort aus dem Satz aus und gibt die ausgewählte bearbeitete Antwort automatisch in der interaktiven Konversation für den Agenten aus, wobei all dies innerhalb der gewählten Antwortzeitgabe erfolgt.
  • Die vorliegend beschriebene Art des Agent-Assist-Tool ist in den gegenwärtig verfügbaren Verfahren im technologischen Betätigungsfeld der Konversationssysteme nicht verfügbar. Ein Verfahren einer vorliegend beschriebenen Ausführungsform umfasst bei Implementierung zur Ausführung auf einer Einheit oder einem Datenverarbeitungssystem eine wesentliche Verbesserung der Funktionalität dieser Einheit oder dieses Datenverarbeitungssystems beim Analysieren und Bewerten von Differenzen zwischen einer empfohlenen Antwort auf eine natürlichsprachliche Abfrage und einer bearbeiteten Version der Antwort und aktualisiert einen gespeicherten Satz empfohlener Antworten gemäß den bewerteten Differenzen.
  • Die veranschaulichenden Ausführungsformen werden in Bezug auf bestimmte Arten von Entitäten, Analysen, Ähnlichkeiten, Differenzen, Bewertungen, Schwellenwerten, Abfragen, Antworten, Einheiten, Datenverarbeitungssystemen, Umgebungen, Komponenten und Anwendungen nur als Beispiele beschrieben. Konkrete Erscheinungsformen dieser und anderer ähnlicher Artefakte sollen keine Einschränkung der Erfindung darstellen. Im Umfang der veranschaulichenden Ausführungsformen kann jedwede geeignete Erscheinungsform dieser und anderer ähnlicher Artefakte ausgewählt werden.
  • Des Weiteren können die veranschaulichenden Ausführungsformen in Bezug auf eine beliebige Art von Daten, Datenquelle oder Zugriff auf eine Datenquelle über ein Datennetz implementiert werden. Im Umfang der Erfindung kann eine beliebige Art von Datenspeichereinheit die Daten für eine Ausführungsform der Erfindung bereitstellen, entweder lokal in einem Datenverarbeitungssystem oder über ein Datennetz. Im Umfang der veranschaulichenden Ausführungsformen kann, wenn eine eine mobile Einheit verwendende Ausführungsform beschrieben wird, eine beliebige Art von Datenspeichereinheit, die sich zur Verwendung mit der mobilen Einheit eignet, die Daten für eine solche Ausführungsform bereitstellen, entweder lokal auf der mobilen Einheit oder über ein Datennetz.
  • Die Beschreibung der veranschaulichenden Ausführungsformen mittels konkreten Codes, konkreter Ausgestaltungen, Architekturen, Protokolle, Layouts, Schemata und Werkzeuge erfolgt lediglich beispielhaft und stellt keine Einschränkung der veranschaulichenden Ausführungsformen dar. Des Weiteren werden die veranschaulichenden Ausführungsformen lediglich beispielhaft aus Gründen der Klarheit der Beschreibung in einigen Fällen mittels bestimmter Software, bestimmter Werkzeuge und Datenverarbeitungsumgebungen beschrieben. Die veranschaulichenden Ausführungsformen können zusammen mit anderen vergleichbaren oder zu ähnlichen Zwecken vorgesehenen Strukturen, Systemen, Anwendungen oder Architekturen verwendet werden. Beispielsweise können im Umfang der Erfindung andere vergleichbare mobile Einheiten, Strukturen, Systeme, Anwendungen oder Architekturen für diese zusammen mit einer solchen Ausführungsform der Erfindung verwendet werden. Eine veranschaulichende Ausführungsform kann in Hardware, Software oder einer Kombination aus diesen implementiert werden.
  • Die Beispiele in dieser Offenbarung werden lediglich aus Gründen der Klarheit der Beschreibung verwendet und stellen keine Einschränkung der veranschaulichenden Ausführungsformen dar. Aus dieser Offenbarung heraus sind zusätzliche Daten, Operationen, Aktionen, Aufgaben, Aktivitäten und Manipulationen denkbar, und diese kommen im Umfang der veranschaulichenden Ausführungsformen in Betracht.
  • Jegliche vorliegend aufgeführten Vorteile sind lediglich beispielhaft und sollen keine Einschränkung der veranschaulichenden Ausführungsformen darstellen. Durch konkrete veranschaulichende Ausführungsformen können weitere oder andere Vorteile realisiert werden. Des Weiteren kann eine bestimmte veranschaulichende Ausführungsform einige, alle oder auch keine der vorstehend aufgeführten Vorteile aufweisen.
  • Gemäß den Figuren, und insbesondere gemäß 1 und 2, sind beispielhafte Schaubilder von Datenverarbeitungsumgebungen angegeben, in denen veranschaulichende Ausführungsformen implementiert werden können. 1 und 2 stellen lediglich Beispiele dar, die keinerlei Einschränkung hinsichtlich der Umgebungen festlegen oder mit sich bringen, in denen verschiedene Ausführungsformen implementiert werden können. Auf Grundlage der nachfolgenden Beschreibung kann eine bestimmte Implementierung beliebige Modifikationen an den abgebildeten Umgebungen vornehmen.
  • 1 zeigt ein Blockschaubild eines Netzwerks aus Datenverarbeitungssystemen, in denen veranschaulichende Ausführungsformen implementiert werden können. Bei der Datenverarbeitungsumgebung 100 handelt es sich um ein Netzwerk aus Computern, in dem die veranschaulichenden Ausführungsformen implementiert werden können. Die Datenverarbeitungsumgebung 100 enthält ein Netzwerk 102. Bei dem Netzwerk 102 handelt es sich um das Medium, das zum Bereitstellen von Datenübertragungsverbindungen zwischen verschiedenen Einheiten und Computern verwendet wird, die innerhalb der Datenverarbeitungsumgebung 100 zusammengeschlossen sind. Das Netzwerk 102 kann Verbindungen wie beispielsweise drahtgebundene oder drahtlose Datenübertragungsverbindungen oder Lichtleiterkabel umfassen.
  • Clients oder Server sind lediglich beispielhafte Rollen bestimmter mit dem Netzwerk 102 verbundener Datenverarbeitungssysteme, die andere Konfigurationen oder Rollen für diese Datenverarbeitungssysteme nicht ausschließen. Der Server 104 und der Server 106 sind zusammen mit der Speichereinheit 108 mit dem Netzwerk 102 verbunden. Softwareanwendungen können auf einem beliebigen Computer in der Datenverarbeitungsumgebung 100 ausgeführt werden. Die Clients 110, 112 und 114 sind ebenfalls mit dem Netzwerk 102 verbunden. Ein Datenverarbeitungssystem, wie beispielsweise der Server 104 oder 106 oder der Client 110, 112 oder 114, kann Daten enthalten und kann Softwareanwendungen oder Softwarewerkzeuge aufweisen, die darauf ausgeführt werden.
  • Lediglich beispielhaft und ohne eine Einschränkung einer solchen Architektur zu implizieren, zeigt 1 bestimmte Komponenten, die in einer beispielhaften Implementierung einer Ausführungsform verwendbar sind. Beispielsweise sind die Server 104 und 106 und die Clients 110, 112, 114 lediglich beispielhaft als Server und Clients gezeigt und implizieren keine Einschränkung auf eine Client-Server-Architektur. Als weiteres Beispiel kann eine Ausführungsform wie gezeigt auf verschiedene Datenverarbeitungssysteme und ein Datennetz verteilt sein, wohingegen im Umfang der veranschaulichenden Ausführungsformen eine andere Ausführungsform auf einem einzigen Datenverarbeitungssystem implementiert sein kann. Die Datenverarbeitungssysteme 104, 106, 110, 112 und 114 stellen zudem beispielhafte Knoten in einem Cluster, Partitionen und andere Konfigurationen dar, die sich zur Implementierung einer Ausführungsform eignen.
  • Bei der Einheit 132 handelt es sich um ein Beispiel einer vorliegend beschriebenen Einheit. Beispielsweise kann die Einheit 132 die Form eines Smartphones, eines Tablet-Computers, eines Laptop-Computers, eines Clients 110 in stationärer oder tragbarer Form, einer tragbaren Datenverarbeitungseinheit oder einer beliebigen anderen geeigneten Einheit annehmen. Jedwede als in einem anderen Datenverarbeitungssystem in 1 ausgeführt beschriebene Softwareanwendung kann in ähnlicher Weise zur Ausführung auf der Einheit 132 konfiguriert sein. Jegliche als in einem anderen Datenverarbeitungssystem in 1 gespeichert oder produziert beschriebene Daten oder Informationen können in ähnlicher Weise zur Speicherung oder Produktion auf der Einheit 132 konfiguriert sein.
  • Die Anwendung 105 implementiert eine vorliegend beschriebene Ausführungsform. Die Anwendung 105 kann auf jedem der Server 104 und 106, der Clients 110, 112 und 114 und der Einheit 132 ausgeführt werden. Ein Satz empfohlener Antworten kann im Speicher 108 oder an einem anderen geeigneten Ort gespeichert werden.
  • Die Server 104 und 106, die Speichereinheit 108 und die Clients 110, 112 und 114 sowie die Einheit 132 können mittels drahtgebundener Verbindungen, drahtloser Verbindungsprotokolle oder anderer geeigneter Datenkonnektivität verbunden sein. Bei den Clients 110, 112 und 114 kann es sich beispielsweise um Personal Computer oder Netzwerk-Computer handeln.
  • In dem abgebildeten Beispiel kann der Server 104 den Clients 110, 112 und 114 Daten wie beispielsweise Bootdateien, Betriebssystemabbilder und Anwendungen bereitstellen. In diesem Beispiel können die Clients 110, 112 und 114 eine Client-Beziehung mit dem Server 104 aufweisen. Die Clients 110, 112, 114 oder eine Kombination aus diesen können eigene Daten, Bootdateien, Betriebssystemabbilder und Anwendungen enthalten. Die Datenverarbeitungsumgebung 100 kann weitere Server, Clients und andere nicht gezeigte Einheiten enthalten.
  • In dem abgebildeten Beispiel kann es sich bei der Datenverarbeitungsumgebung 100 um das Internet handeln. Das Netzwerk 102 kann eine Sammlung aus Netzwerken und Gateways darstellen, die das Transmission Control Protocol/Internet Protocol (TCP/IP) und andere Protokolle verwenden, um Daten miteinander auszutauschen. Im Kern des Internets befindet sich ein Backbone aus Datenübertragungsverbindungen zwischen Hauptknoten oder Hostcomputern, darunter tausende gewerblicher, staatlicher, dem Lehrbetrieb zugehöriger und anderer Computersysteme bestehen, die Daten und Nachrichten weiterleiten. Natürlich kann die Datenverarbeitungsumgebung 100 auch als eine Anzahl unterschiedlicher Arten von Netzwerken implementiert sein, beispielsweise ein Intranet, ein lokales Netzwerk (LAN) oder ein Weitverkehrsnetz (WAN). 1 ist als Beispiel und nicht als architektonische Einschränkung für die verschiedenen veranschaulichenden Ausführungsformen zu verstehen.
  • Neben anderen Verwendungen kann die Datenverarbeitungsumgebung 100 verwendet werden, um eine Client-Server-Umgebung zu implementieren, in der die veranschaulichenden Ausführungsformen implementiert werden können. Durch eine Client-Server-Umgebung können Softwareanwendungen und Daten derart über ein Netzwerk verteilt werden, dass eine Anwendung unter Nutzung der Interaktivität zwischen einem Client-Datenverarbeitungssystem und einem Server-Datenverarbeitungssystem arbeitet. Die Datenverarbeitungsumgebung 100 kann auch eine dienstorientierte Architektur einsetzen, bei der über ein Netzwerk verteilte interoperable Software-Komponenten zu kohärenten Geschäftsanwendungen gebündelt werden können. Die Datenverarbeitungsumgebung 100 kann auch die Form einer Cloud annehmen und ein Cloud-Computing-Modell zur Dienstbereitstellung zum Ermöglichen eines problemlosen bedarfsgesteuerten Netzwerkzugriffs auf einen gemeinsam genutzten Pool von konfigurierbaren Datenverarbeitungsressourcen (z.B. Netzwerke, Netzwerkbandbreite, Server, Verarbeitung, Arbeitsspeicher, Speicherung, Anwendungen, virtuelle Maschinen und Dienste) einsetzen, das mit minimalem Verwaltungsaufwand bzw. minimaler Interaktion mit einem Anbieter des Dienstes schnell bereitgestellt und freigegeben werden kann.
  • 2 zeigt ein Blockschaltbild eines Datenverarbeitungssystems, in dem veranschaulichende Ausführungsformen implementiert werden können. Beim Datenverarbeitungssystem 200 handelt es sich um ein Beispiel eines Computers, beispielsweise die Server 104 und 106 oder die Clients 110, 112 und 114 in 1, oder einer anderen Art von Einheit, in der sich durch einen Computer verwendbarer Programmcode oder Anweisungen, die die Prozesse implementieren, für die veranschaulichenden Ausführungsformen befinden können.
  • Das Datenverarbeitungssystem 200 repräsentiert zudem ein Datenverarbeitungssystem oder eine Konfiguration darin, beispielsweise das Datenverarbeitungssystem 132 in 1, in welchem sich durch einen Computer verwendbarer Programmcode oder Anweisungen befinden können, die die Prozesse der veranschaulichenden Ausführungsformen implementieren. Das Datenverarbeitungssystem 200 ist lediglich beispielhaft als Computer beschrieben, ohne hierauf eingeschränkt zu sein. Implementierungen in Form anderer Einheiten, wie beispielsweise die Einheit 132 in 1, können das Datenverarbeitungssystem 200 modifizieren, beispielsweise durch Hinzufügen einer Berührungsschnittstelle, und sogar bestimmte abgebildete Komponenten des Datenverarbeitungssystems 200 weglassen, ohne von der allgemeinen Beschreibung der Operationen und Funktionen des vorliegend beschriebenen Datenverarbeitungssystems 200 abzuweichen.
  • In dem gezeigten Beispiel nutzt das Datenverarbeitungssystem 200 eine Hub-Architektur mit einer „North Bridge und Speichercontroller“-Hub (NB/MCH) 202 und einer „South Bridge und Eingabe/Ausgabe- (E/A-) Controller“-Hub (SB/ECH) 204. Eine Verarbeitungseinheit 206, ein Hauptspeicher 208 und ein Grafikprozessor 210 sind mit der „North Bridge und Speichercontroller“-Hub (NB/MCH) 202 verbunden. Die Verarbeitungseinheit 206 kann einen oder mehrere Prozessoren enthalten und kann mittels eines oder mehrerer heterogener Prozessorsysteme implementiert sein. Bei der Verarbeitungseinheit 206 kann es sich um einen Mehrkernprozessor handeln. In bestimmten Implementierungen kann der Grafikprozessor 210 mit der NB/MCH 202 durch einen Accelerated Graphics Port (AGP) verbunden sein.
  • Im gezeigten Beispiel ist der Adapter 212 für das lokale Netzwerk (LAN) mit der „South Bridge und E/A-Controller“-Hub (SB/ECH) 204 verbunden. Ein Audioadapter 216, ein Tastatur- und Mausadapter 220, ein Modem 222, ein Nur-Lese-Speicher (ROM) 224, ein Universal Serial Bus (USB) und andere Anschlüsse 232 sowie PCI/PCIe-Einheiten 234 sind durch einen Bus 238 mit der „South Bridge und E/A-Controller“-Hub 204 verbunden. Eine Festplatte (HDD) oder ein Halbleiterdatenträger (SSD) 226 und ein CD-ROM 230 sind durch einen Bus 240 mit der „South Bridge und E/A-Controller“-Hub 204 verbunden. Zu den PCI/PCIe-Einheiten 234 können beispielsweise Ethernet-Adapter, Add-In-Karten und PC-Karten für Notebook-Computer zählen. PCI verwendet einen Karten-Buscontroller, PCle hingegen nicht. Beim ROM 224 kann es sich beispielsweise um ein Flash-Binary Input/Output System (BIOS) handeln. Die Festplatte 226 und der CD-ROM 230 können beispielsweise eine „Integrated Drive Electronics“- (IDE-) „Serial Advanced Technology Attachment“- (SATA-) Schnittstelle oder Varianten wie beispielsweise external-SATA (eSATA) und micro-SATA (mSATA) verwenden. Eine Super-E/A- (SEA-) Einheit 236 kann durch den Bus 238 mit der „South Bridge und E/A-Controller“-Hub (SB/ECH) 204 verbunden sein.
  • Speicher wie beispielsweise der Hauptspeicher 208, der ROM 224 oder ein Flashspeicher (nicht gezeigt) stellen einige Beispiele durch einen Computer verwendbarer Speichereinheiten dar. Die Festplatte oder der Halbleiterdatenträger 226, der CD-ROM 230 und andere in ähnlicher Weise verwendbare Einheiten stellen einige Beispiele durch einen Computer verwendbarer Speichereinheiten dar, die ein durch einen Computer verwendbares Speichermedium enthalten.
  • Auf der Verarbeitungseinheit 206 läuft ein Betriebssystem. Das Betriebssystem stellt Koordination und Steuerung verschiedener Komponenten innerhalb des Datenverarbeitungssystems 200 in 2 bereit. Bei dem Betriebssystem kann es sich um ein kommerziell erhältliches Betriebssystem für eine beliebige Art von Datenverarbeitungsplattform handeln, darunter, ohne jedoch hierauf eingeschränkt zu sein, Server-Systeme, Personal Computer und mobile Einheiten. Ein objektorientiertes oder anderes Programmiersystem kann zusammen mit dem Betriebssystem laufen und von auf dem Datenverarbeitungssystem 200 ausgeführten Programmen oder Anwendungen aus Aufrufe an das Betriebssystem bereitstellen.
  • Anweisungen für das Betriebssystem, das objektorientierte Programmiersystem und Anwendungen oder Programme, wie beispielsweise die Anwendung 105 in 1, befinden sich auf Speichereinheiten, beispielsweise in Form von Code 226A auf der Festplatte 226, und können zur Ausführung durch die Verarbeitungseinheit 206 in mindestens einen von einem oder mehreren Speichern, beispielsweise den Hauptspeicher 208, geladen werden. Die Prozesse der veranschaulichenden Ausführungsformen können durch die Verarbeitungseinheit 206 mittels durch einen Computer implementierter Anweisungen durchgeführt werden, die sich in einem Speicher wie beispielsweise dem Hauptspeicher 208, dem Nur-Lese-Speicher 224 oder in einer oder mehreren Peripherieeinheiten befinden können.
  • Des Weiteren kann in einem Fall der Code 226A über ein Netzwerk 201A von einem entfernten System 201B heruntergeladen werden, in dem ähnlicher Code 201C auf einer Speichereinheit 201D gespeichert ist. In einem anderen Fall kann der Code 226A über das Netzwerk 201A auf das entfernte System 201B heruntergeladen werden, wo heruntergeladener Code 201C auf einer Speichereinheit 201D gespeichert wird.
  • Die Hardware in den 1 und 2 kann abhängig von der Implementierung variieren. Zusätzlich zu oder anstelle der in den 1 und 2 gezeigten Hardware können weitere interne Hardware- oder Peripherieeinheiten wie beispielsweise ein Flashspeicher, gleichwertiger nichtflüchtiger Speicher oder optische Plattenlaufwerke und dergleichen verwendet werden. Zudem können die Prozesse der veranschaulichenden Ausführungsformen auf ein Mehrprozessor-Datenverarbeitungssystem angewendet werden.
  • In einigen veranschaulichenden Beispielen kann es sich bei dem Datenverarbeitungssystem 200 um einen persönlichen digitalen Assistenten (PDA) handeln, der allgemein mit Flashspeicher konfiguriert ist, um nichtflüchtigen Speicher zum Speichern von Betriebssystemdateien und/oder nutzergenerierten Daten bereitzustellen. Ein Bussystem kann einen oder mehrere Busse wie beispielsweise einen Systembus, einen E/A-Bus und einen PCI-Bus aufweisen. Natürlich kann das Bussystem mittels jeder Art von Datenübertragungsstruktur oder -architektur implementiert sein, die einen Datentransfer zwischen verschiedenen an die Struktur oder Architektur angeschlossenen Komponenten oder Einheiten ermöglicht.
  • Eine Datenübertragungseinheit kann eine oder mehrere Einheiten enthalten, die verwendet werden, um Daten zu übertragen und zu empfangen, beispielsweise einen Modem oder einen Netzwerkadapter. Bei einem Speicher kann es sich beispielsweise um einen Hauptspeicher 208 oder einen Cache wie beispielsweise den in der „North Bridge und Speichercontroller“-Hub 202 vorhandenen Cache handeln. Eine Verarbeitungseinheit kann einen oder mehrere Prozessoren oder CPUs enthalten.
  • Die abgebildeten Beispiele in den 1 und 2 und die vorstehend beschriebenen Beispiele sind nicht als architektonische Einschränkungen implizierend zu verstehen. Beispielsweis kann es sich zusätzlich zur Form einer mobilen oder tragbaren Einheit bei dem Datenverarbeitungssystem 200 auch um einen Tablet-Computer, einen Laptop-Computer oder eine Telefoneinheit handeln.
  • Wo ein Computer- oder Datenverarbeitungssystem als virtuelle Maschine, virtuelle Einheit oder virtuelle Komponente beschrieben ist, arbeitet die virtuelle Maschine, die virtuelle Einheit oder die virtuelle Komponente in der Weise des Datenverarbeitungssystems 200 mittels einer virtualisierten Erscheinungsform einiger oder aller im Datenverarbeitungssystem 200 gezeigten Komponenten. Beispielsweise tritt in einer virtuellen Maschine, einer virtuellen Einheit oder einer virtuellen Komponente die Verarbeitungseinheit 206 als eine virtualisierte Instanz aller oder einer bestimmten Anzahl von Hardware-Verarbeitungseinheiten 206, die in einem Host-Datenverarbeitungssystem verfügbar sind, der Hauptspeicher 208 als eine virtualisierte Instanz des gesamten oder eines Teils des Hauptspeichers 208, der im Host-Datenverarbeitungssystem verfügbar sein kann, und die Platte 226 als eine virtualisierte Instanz der gesamten oder eines Teils der Platte 226 auf, die im Host-Datenverarbeitungssystem verfügbar sein kann. Das Host-Datenverarbeitungssystem wird in solchen Fällen durch das Datenverarbeitungssystem 200 repräsentiert.
  • 3 zeigt ein Blockschaubild einer Beispielkonfiguration für Verbesserung natürlichsprachlicher Antworten in maschinen unterstützten Agenten gemäß einer veranschaulichenden Ausführungsform. Die Anwendung 300 ist ein Beispiel für die Anwendung 105 in 1 und wird auf einem der Server 104 und 106, der Clients 110, 112 und 114 und der Einheit 132 in 1 ausgeführt.
  • Die Anwendung 300 empfängt eine empfohlene natürlichsprachliche Antwort aus dem Satz empfohlener Antworten zur Analyse. Die Anwendung 300 empfängt zudem eine bearbeitete Version dergleichen empfohlenen natürlichsprachlichen Antwort zur Analyse. Die Anwendung 300 kann zudem so konfiguriert sein, dass sie die natürlichsprachliche Abfrage, auf die die natürlichsprachliche Antwort antworten soll, empfängt, um gegebenenfalls die Analyse zu unterstützen. Die Anwendung 300 kann zudem so konfiguriert sein, dass sie, um gegebenenfalls die Analyse zu unterstützen, alle vorangegangenen Abfragen und Antworten innerhalb derselben Interaktion wie die zu analysierende empfohlene Antwort sowie Metadaten über die Interaktion, zu der die empfohlene Antwort gehört, empfängt. Die Abfrage, vorangegangene Abfragen und Antworten sowie Metadaten liefern zusätzlichen Kontext zur Verwendung für die Analyse.
  • Ein Bearbeitungserkennungsmodul 310 analysiert eine empfohlene Antwort und eine bearbeitete Version der empfohlenen Antwort und ermittelt einen Personenentitätsdifferenzwert, einen Produktentitätsdifferenzwert und einen Satzähnlichkeitswert für die Änderungen zwischen der Antwort und der bearbeiteten Version. Ein Bearbeitungsklassifizierungsmodul 320 klassifiziert die bearbeitete empfohlene Antwort auf Grundlage des Personenentitätsdifferenzwertes, des Produktentitätsdifferenzwertes und des Satzähnlichkeitswertes. Ein Bearbeitungsimplementierungsmodul 330 aktualisiert den Satz empfohlener Antworten auf Grundlage der durch das Modul 320 vorgenommenen Klassifizierung der an der bearbeiteten empfohlenen Antwort vorgenommenen Art der Bearbeitung.
  • 4 zeigt ein Blockschaubild einer Beispielkonfiguration für Verbesserung natürlichsprachlicher Antworten in maschinenunterstützten Agenten gemäß einer veranschaulichenden Ausführungsform. 4 zeigt insbesondere weitere Einzelheiten des Moduls 310 aus 3.
  • Das Personenentitätsmodul 410 verwendet einen Personenentitätsanalysierer, um eine oder mehrere Instanzen einer Personenentität in der empfohlenen Antwort und der bearbeiteten empfohlenen Antwort zu erkennen. Dann vergleicht das Modul 410 erkannte Personenentitätsinstanzen in der empfohlenen Antwort mit erkannten Personenentitätsinstanzen in der bearbeiteten empfohlenen Antwort, um eine Anzahl von Personenentitätsinstanzen zu ermitteln, die sich geändert haben. Das Modul 410 verwendet die Anzahl an Personenentitätsinstanzen, die sich geändert haben, als Personenentitätsdifferenzwert.
  • Eine Produktentitäts-Engine 420 verwendet einen Produktentitätsanalysierer, um eine oder mehrere Instanzen einer Produktentität in der empfohlenen Antwort und der bearbeiteten empfohlenen Antwort zu erkennen. Dann vergleicht das Modul 420 erkannte Produktentitätsinstanzen in der empfohlenen Antwort mit erkannten Produktentitätsinstanzen in der bearbeiteten empfohlenen Antwort, um eine Anzahl von Produktentitätsinstanzen zu ermitteln, die sich geändert haben. Das Modul 420 verwendet die Anzahl an Produktentitätsinstanzen, die sich geändert haben, als Produktentitätsdifferenzwert.
  • Eine Ähnlichkeits-Engine 430 verwendet einen Satzähnlichkeitsanalysierer, um eine Ähnlichkeit zwischen der empfohlenen Antwort und der bearbeiteten empfohlenen Antwort zu bewerten. Insbesondere wandelt das Modul 430 die empfohlene Antwort und die bearbeitete empfohlene Antwort in entsprechende Vektoren um und berechnet dann eine Kosinusähnlichkeit zwischen den Vektoren.
  • 5 zeigt ein Blockschaubild einer Beispielkonfiguration für Verbesserung natürlichsprachlicher Antworten in maschinenunterstützten Agenten gemäß einer veranschaulichenden Ausführungsform. 5 zeigt insbesondere weitere Einzelheiten des Moduls 330 aus 3.
  • Wenn der Produktentitätsdifferenzwert gleich eins ist, die Abfrage dieselbe Produktentität wie die empfohlene Antwort enthielt, aber die Produktentität geändert wurde, um die bearbeitete Antwort zu erstellen, ersetzt ein Antwortersetzungsmodul 510 die empfohlene Antwort im Satz empfohlener Antworten durch die bearbeitete Version. Wenn der Produktentitätsdifferenzwert gleich eins ist und die Abfrage dieselbe Produktentität wie die bearbeitete Antwort enthält, nicht aber die ursprüngliche empfohlene Antwort, fügt ein Antworthinzufügungsmodul 520 die bearbeitete Version dem Satz empfohlener Antworten hinzu, während die ursprüngliche empfohlene Antwort beibehalten wird.
  • Wenn ein Satzähnlichkeitswert zwischen der empfohlenen Antwort und der bearbeiteten empfohlenen Antwort, der auf eine vorliegend beschriebene Weise ermittelt wurde, über einem Ähnlichkeitsschwellenwert liegt, stellt die Anwendung 300 fest, dass eine Änderung mit geringer Bedeutung an einer empfohlenen Antwort vorgenommen wurde. Die Anwendung 300 betrachtet eine Änderung mit geringer Bedeutung auch als eine Änderung, bei der der Personenentitätsdifferenzwert über eins liegt, was bedeutet, dass es mehr als eine Personenentitätsdifferenz zwischen der empfohlenen Antwort und der bearbeiteten Antwort gab. Wenn die Anwendung 300 eine Bearbeitung als Änderung mit geringer Bedeutung klassifiziert, führt ein AB-Testmodul 530 einen AB-Test sowohl für die empfohlene Antwort als auch für die bearbeitete Version durch. Sobald Daten für eine statistisch signifikante Anzahl von Interaktionen, die die Varianten enthalten, gesammelt wurden, behält das Modul 530 eine oder mehrere der am besten abschneidenden Varianten im Satz empfohlener Antworten bei und löscht die übrigen Varianten.
  • Wenn ein Satzähnlichkeitswert zwischen der empfohlenen Antwort und der bearbeiteten empfohlenen Antwort, der auf eine vorliegend beschriebene Weise ermittelt wurde, unter einem Ähnlichkeitsschwellenwert liegt, stellt die Anwendung 300 fest, dass eine Änderung mit hoher Bedeutung an einer empfohlenen Antwort vorgenommen wurde. Die Anwendung 300 betrachtet eine Änderung mit hoher Bedeutung auch als eine Änderung, bei der der Produktentitätsdifferenzwert über eins liegt, was bedeutet, dass es mehr als eine Produktentitätsdifferenz zwischen der empfohlenen Antwort und der bearbeiteten Antwort gab. Wenn die Anwendung 300 eine Bearbeitung als Änderung mit hoher Bedeutung klassifiziert, behält das Antworthinzufügungsmodul 520 die empfohlene Antwort bei und fügt die bearbeitete Version dem Satz von Antwortempfehlungen hinzu.
  • 6 zeigt ein Beispiel für Verbesserung natürlichsprachlicher Antworten in maschinenunterstützten Agenten gemäß einer veranschaulichenden Ausführungsform. Das Beispiel kann unter Verwendung der Anwendung 300 in 3 ausgeführt werden.
  • Wie dargestellt, lautet die empfohlene Antwort 610 „Hi, {Vorname}“, und die bearbeitete Antwort 612, die der Antwort 610 entspricht, lautet „Hi, Jenny“. Da hier „{Vorname}“ in „Jenny“ geändert wurde, bestimmt die Anwendung 300 die Klassifizierung 614: Bearbeiten der Antwort 610 in Antwort 612 hat zu einer Personenentitätsänderung geführt. Ergebnis 616 zeigt das Ergebnis der Klassifizierung 614: Die Bearbeitung wird ignoriert, und die empfohlene Antwort 610 bleibt im Satz empfohlener Antworten.
  • 7 zeigt Beispiele für Verbesserung natürlichsprachlicher Antworten in maschinenunterstützten Agenten gemäß einer veranschaulichenden Ausführungsform. Das Beispiel kann unter Verwendung der Anwendung 300 in 3 ausgeführt werden.
  • Wie dargestellt, lautet für die Abfrage 710 „Verfügt Produkt X Gold über Textanalyse?“ die empfohlene Antwort 712 „Produkt X Gold verfügt über Textanalyse“, und die bearbeitete Antwort 714 lautet „Produkt X Professional verfügt über Textanalyse“. Da in diesem Fall sowohl die Abfrage 710 als auch die empfohlene Antwort 712 dieselbe Produktentität („Produkt X Gold“) enthalten, in der bearbeiteten Antwort 714 jedoch „Produkt X Gold“ in „Produkt X Professional“ geändert wurde, erzeugt die Anwendung 300 die Klassifizierung 716: eine einzelne Produktentitätsänderung, die als Merkmalsaktualisierung gedacht ist, wahrscheinlich weil Produkt X Gold durch Produkt X Professional ersetzt wurde. Ergebnis 718 zeigt das Ergebnis der Klassifizierung 716: Die Anwendung 300 ersetzt die empfohlene Antwort 712 im Satz empfohlener Antworten durch die bearbeitete Antwort 714.
  • Dagegen lautet für die Abfrage 720 „Verfügt Produkt X Professional über Textanalyse?“ die empfohlene Antwort 722 „Produkt X Gold verfügt über Textanalyse“, und die bearbeitete Antwort 724 lautet „Produkt X Professional verfügt über Textanalyse“. Da in diesem Fall die Produktentität („Produkt X Professional“) in der Abfrage 720 in der empfohlenen Antwort 722 in „Produkt X Gold“ und in der bearbeiteten Antwort 724 wieder in „Produkt X Professional“ geändert wurde, erzeugt die Anwendung 300 die Klassifizierung 726: Eine einzelne Produktentitätsänderung, die als Aktualisierung des Produktwissens im Satz empfohlener Antworten zur Abdeckung von Merkmalen des Produkts X Professional gedacht ist. Ergebnis 728 stellt das Ergebnis der Klassifizierung 726 dar: Die Anwendung 300 fügt die bearbeitete Antwort 724 dem Satz empfohlener Antworten hinzu.
  • 8 zeigt Beispiele für Verbesserung natürlichsprachlicher Antworten in maschinenunterstützten Agenten gemäß einer veranschaulichenden Ausführungsform. Das Beispiel kann unter Verwendung der Anwendung 300 in 3 ausgeführt werden.
  • 8 zeigt ein Beispiel für eine geringfügige grammatikalische Änderung: Die empfohlene Antwort 810 „Der Preis von Produkt X sind ...“ wurde in die bearbeitete Antwort 812 „Der Preis von Produkt X ist ...“ geändert. Die Anwendung 300 hat die Klassifizierung 814 bestimmt: Ein Satzähnlichkeitswert zwischen der empfohlenen Antwort 810 und der bearbeiteten Antwort 812 liegt über einem Ähnlichkeitsschwellenwert, so dass es sich um eine Änderung mit geringer Bedeutung handelt. Ergebnis 816 zeigt das Ergebnis der Klassifizierung 814: Die Anwendung 300 führt einen AB-Test für die empfohlene Antwort 810 und die bearbeitete Antwort 812 durch, um zu ermitteln, welche die beste ist.
  • 8 zeigt zudem ein Beispiel für eine geringfügige Stiländerung: Die empfohlene Antwort 820 „Hallo, mein Name ist...“ wurde in die bearbeitete Antwort 822 „Hi, mein Name ist ...“ geändert. Die Anwendung 300 hat die Klassifizierung 824 bestimmt: Ein Satzähnlichkeitswert zwischen der empfohlenen Antwort 820 und der bearbeiteten Antwort 822 liegt über einem Ähnlichkeitsschwellenwert, so dass es sich um eine Änderung mit geringer Bedeutung handelt. Ergebnis 826 zeigt das Ergebnis der Klassifizierung 824: Die Anwendung 300 führt einen AB-Test für die empfohlene Antwort 820 und die bearbeitete Antwort 822 durch.
  • 8 zeigt zudem ein Beispiel für mehrere Personenentitätsänderungen: Die empfohlene Antwort 830 „Hi, {Vorname}, kann ich Ihre E-Mail-Adresse haben?“ wurde in die bearbeitete Antwort 832 „Hi, John Doe, kann ich Ihre E-Mail-Adresse haben?“ geändert. Anwendung 300 hat die Klassifizierung 834 ermittelt: Der Personenentitätsdifferenzwert für diese Änderung wäre zwei, da „{Vorname}“ in „John“ geändert und „Doe“, eine zusätzliche Personenentität, hinzugefügt wurde. Es handelt sich also um eine Änderung mit geringer Bedeutung. Ergebnis 836 zeigt das Ergebnis der Klassifizierung 834: Die Anwendung 300 führt einen AB-Test für die empfohlene Antwort 830 und die bearbeitete Antwort 832 durch, um zu ermitteln, welche die beste ist.
  • 9 zeigt Beispiele für Verbesserung natürlichsprachlicher Antworten in maschinenunterstützten Agenten gemäß einer veranschaulichenden Ausführungsform. Das Beispiel kann unter Verwendung der Anwendung 300 in 3 ausgeführt werden.
  • 9 zeigt die empfohlene Antwort 910 „Das beste Merkmal von Produkt X ist seine Textanalysefähigkeit“ und die bearbeitete Antwort 912 „Das beste Merkmal von Produkt X ist sein numerisches Analysepaket“. Anwendung 300 hat die Klassifizierung 914 ermittelt: Es handelt sich um eine Änderung mit hoher Bedeutung, da „Textanalysefähigkeit“ nicht über einem Schwellenwert für semantische Ähnlichkeit mit „numerisches Analysepaket“ liegt. Ergebnis 916 stellt das Ergebnis der Klassifizierung 914 dar: Die Anwendung 300 fügt die bearbeitete Antwort 912 dem Satz empfohlener Antworten hinzu.
  • 9 zeigt zudem die empfohlene Antwort 920 „Der Preis von Produkt X beträgt $100“ und die bearbeitete Antwort 922 „Der Preis von Produkt X beträgt $100. Und die Hauptmerkmale sind ...“. Anwendung 300 hat die Klassifizierung 924 ermittelt: Es handelt sich um eine Änderung mit hoher Bedeutung, da die bearbeitete Antwort 922 einen zusätzlichen Satz mit detaillierten Merkmalsinformationen enthält. Ergebnis 926 stellt das Ergebnis der Klassifizierung 924 dar: Die Anwendung 300 fügt die bearbeitete Antwort 922 dem Satz empfohlener Antworten hinzu.
  • 9 zeigt zudem ein Beispiel für mehrere Produktentitätsänderungen: Die empfohlene Antwort 930, „Der Preis von Produkt X Gold beträgt $100“, wurde in die bearbeitete Antwort 932, „Der Preis von Produkt X Professional beträgt $200“, geändert Die Anwendung 300 hat die Klassifizierung 934 ermittelt: Der Produktentitätsdifferenzwert für diese Änderung beträgt zwei, da „Produkt X Gold“ in „Produkt X Professional“ geändert wurde und zudem der Preis geändert wurde. Es handelt sich also um eine Änderung mit hoher Bedeutung. Ergebnis 936 stellt das Ergebnis der Klassifizierung 934 dar: Die Anwendung 300 fügt die bearbeitete Antwort 932 dem Satz empfohlener Antworten hinzu.
  • 10 zeigt einen Ablaufplan eines Beispielprozesses für Verbesserung natürlichsprachlicher Antworten in maschinen unterstützten Agenten gemäß einer veranschaulichenden Ausführungsform. Der Prozess 1000 kann in der Anwendung 300 in 3 implementiert werden.
  • In Block 1002 empfängt die Anwendung eine natürlichsprachliche Abfrage, eine empfohlene Antwort auf die natürlichsprachliche Abfrage und eine bearbeitete Version der empfohlenen Antwort. In Block 1004 verwendet die Anwendung einen Personenentitätsanalysierer, um eine Personenentitätsdifferenz zwischen der empfohlenen Antwort und der bearbeiteten Version zu bewerten. In Block 1006 verwendet die Anwendung einen Produktentitätsanalysierer, um eine Produktentitätsdifferenz zwischen der empfohlenen Antwort und der bearbeiteten Version zu bewerten. In Block 1008 verwendet die Anwendung einen Satzähnlichkeitsanalysierer, um eine Satzähnlichkeit zwischen der empfohlenen Antwort und der bearbeiteten Version zu bewerten. In Block 1010 aktualisiert die Anwendung den Satz natürlichsprachlicher Antwortempfehlungen auf Grundlage der Personenentitätsdifferenz, der Produktentitätsdifferenz und der Satzähnlichkeit. Dann endet die Anwendung.
  • 11 zeigt einen Ablaufplan eines Beispielprozesses für Verbesserung natürlichsprachlicher Antworten in maschinenunterstützten Agenten gemäß einer veranschaulichenden Ausführungsform. 11 zeigt insbesondere weitere Einzelheiten des Blocks 1010 aus 10.
  • In Block 1102 prüft die Anwendung, ob eine einzelne Personenentitätsänderung erkannt wurde. Ist dies der Fall („JA“-Pfad von Block 1102), ignoriert die Anwendung in Block 1104 die Bearbeitung und endet dann. Ist dies nicht der Fall („NEIN“-Pfad von Block 1102), prüft die Anwendung in Block 1106, ob sich eine einzelne Produktentität geändert hat, um ein Merkmal zu aktualisieren. Ist dies der Fall („JA“-Pfad von Block 1106), ersetzt die Anwendung in Block 1108 die empfohlene Antwort durch die bearbeitete Version und endet dann. Ist dies nicht der Fall („NEIN“-Pfad von Block 1106), prüft die Anwendung in Block 1110, ob sich eine einzelne Produktentität geändert hat, um ein Produkt zu aktualisieren. Ist dies der Fall („JA“-Pfad von Block 1110), fügt die Anwendung in Block 1112 die bearbeitete Antwort dem Satz empfohlener Antworten hinzu und endet dann. Ist dies nicht der Fall („NEIN“-Pfad von Block 1110), prüft die Anwendung in Block 1114, ob eine Änderung mit hoher Bedeutung erkannt wurde. Ist dies der Fall („JA“-Pfad von Block 1114), fügt die Anwendung in Block 1112 die bearbeitete Antwort dem Satz empfohlener Antworten hinzu und endet dann. Ist dies nicht der Fall („NEIN“-Pfad in Block 1114), führt die Anwendung in Block 1116 einen AB-Test an der empfohlenen und der bearbeiteten Version der Antwort durch und endet dann.
  • Somit werden in den veranschaulichenden Ausführungsformen ein durch einen Computer implementiertes Verfahren, ein System oder eine Vorrichtung und ein Computerprogrammprodukt zur Verbesserung natürlichsprachlicher Antworten in maschinenunterstützten Agenten und anderen verwandten Merkmalen, Funktionen oder Vorgängen bereitgestellt. Wenn eine Ausführungsform oder ein Teil davon in Bezug auf eine Art von Einheit beschrieben wird, sind das durch einen Computer implementierte Verfahren, das System oder die Vorrichtung, das Computerprogrammprodukt oder ein Teil davon zur Verwendung mit einer geeigneten und vergleichbaren Erscheinungsform dieser Art von Einheit angepasst oder konfiguriert.
  • Wenn eine Ausführungsform als in einer Anwendung implementiert beschrieben wird, kommt im Umfang der veranschaulichenden Ausführungsformen die Bereitstellung der Anwendung in einem Software-as-a-Service- (SaaS-) Modell in Betracht. In einem SaaS-Modell wird die Funktion der eine Ausführungsform implementierenden Anwendung einem Nutzer durch Ausführen der Anwendung in einer Cloud-Infrastruktur bereitgestellt. Der Nutzer kann auf die Anwendung mittels einer Vielfalt von Client-Einheiten durch eine Thin-Client-Schnittstelle wie beispielsweise einen Webbrowser (z.B. webgestützte E-Mail) oder andere schlanke Client-Anwendungen zugreifen. Der Nutzer verwaltet oder kontrolliert nicht die zugrunde liegende Infrastruktur, darunter das Netzwerk, Server, Betriebssysteme oder die Speicherung der Cloud-Infrastruktur. In einigen Fällen verwaltet oder kontrolliert der Nutzer möglicherweise nicht einmal die Funktionen der SaaS-Anwendung. In einigen anderen Fällen kann die SaaS-Implementierung der Anwendung eine mögliche Ausnahme eingeschränkter nutzerspezifischer Anwendungskonfigurationseinstellungen gestatten.
  • Bei der vorliegenden Erfindung kann es sich um ein System, ein Verfahren und/oder ein Computerprogrammprodukt jedes möglichen technisch detaillierten Integrationsgrads handeln. Das Computerprogrammprodukt kann (ein) durch einen Computer lesbare(s) Speichermedium (oder -medien) umfassen, auf dem/denen durch einen Computer lesbare Programmanweisungen gespeichert ist/sind, um einen Prozessor dazu zu veranlassen, Aspekte der vorliegenden Erfindung auszuführen.
  • Bei dem durch einen Computer lesbaren Speichermedium kann es sich um eine physische Einheit handeln, die Anweisungen zur Verwendung durch eine Einheit zur Ausführung von Anweisungen behalten und speichern kann. Bei dem durch einen Computer lesbaren Speichermedium kann es sich zum Beispiel um eine elektronische Speichereinheit, eine magnetische Speichereinheit, eine optische Speichereinheit, eine elektromagnetische Speichereinheit, eine Halbleiterspeichereinheit oder jede geeignete Kombination daraus handeln, ohne auf diese beschränkt zu sein. Zu einer nicht erschöpfenden Liste spezifischerer Beispiele des durch einen Computer lesbaren Speichermediums gehören die Folgenden: eine tragbare Computerdiskette, eine Festplatte, ein Direktzugriffsspeicher (RAM), ein Nur-Lese-Speicher (ROM), ein löschbarer programmierbarer Nur-Lese-Speicher (EPROM bzw. Flash-Speicher), ein statischer Direktzugriffsspeicher (SRAM), ein tragbarer Kompaktspeicherplatte-Nur-Lese-Speicher (CD-ROM), eine DVD (digital versatile disc), ein Speicher-Stick, eine Diskette, eine mechanisch codierte Einheit wie zum Beispiel Lochkarten oder gehobene Strukturen in einer Rille, auf denen Anweisungen gespeichert sind, und jede geeignete Kombination daraus. Ein durch einen Computer lesbares Speichermedium soll in der Verwendung hierin nicht als flüchtige Signale an sich aufgefasst werden, wie zum Beispiel Funkwellen oder andere sich frei ausbreitende elektromagnetische Wellen, elektromagnetische Wellen, die sich durch einen Wellenleiter oder ein anderes Übertragungsmedium ausbreiten (z.B. ein Lichtwellenleiterkabel durchlaufende Lichtimpulse) oder durch einen Draht übertragene elektrische Signale.
  • Hierin beschriebene, durch einen Computer lesbare Programmanweisungen können von einem durch einen Computer lesbaren Speichermedium auf jeweilige Datenverarbeitungs-/Verarbeitungseinheiten oder über ein Netzwerk wie zum Beispiel das Internet, ein lokales Netzwerk, ein Weitverkehrsnetz und/oder ein drahtloses Netzwerk auf einen externen Computer oder eine externe Speichereinheit heruntergeladen werden. Das Netzwerk kann Kupferübertragungskabel, Lichtwellenübertragungsleiter, drahtlose Übertragung, Leitwegrechner, Firewalls, Vermittlungseinheiten, Gateway-Computer und/oder Edge-Server aufweisen. Eine Netzwerkadapterkarte oder Netzwerkschnittstelle in jeder Datenverarbeitungs-/Verarbeitungseinheit empfängt durch einen Computer lesbare Programmanweisungen aus dem Netzwerk und leitet die durch einen Computer lesbaren Programmanweisungen zur Speicherung in einem durch einen Computer lesbaren Speichermedium innerhalb der entsprechenden Datenverarbeitungs-/Verarbeitungseinheit weiter.
  • Bei durch einen Computer lesbaren Programmanweisungen zum Ausführen von Arbeitsschritten der vorliegenden Erfindung kann es sich um Assembler-Anweisungen, ISA-Anweisungen (Instruction-Set-Architecture), Maschinenanweisungen, maschinenabhängige Anweisungen, Mikrocode, Firmware-Anweisungen, zustandssetzende Daten oder entweder Quellcode oder Objektcode handeln, die in einer beliebigen Kombination aus einer oder mehreren Programmiersprachen geschrieben werden, darunter objektorientierte Programmiersprachen wie Smalltalk, C++ o.ä. sowie herkömmliche prozedurale Programmiersprachen wie die Programmiersprache „C“ oder ähnliche Programmiersprachen. Die durch einen Computer lesbaren Programmanweisungen können vollständig auf dem Computer des Benutzers, teilweise auf dem Computer des Benutzers, als eigenständiges Software-Paket, teilweise auf dem Computer des Benutzers und teilweise auf einem fernen Computer oder vollständig auf dem fernen Computer oder Server ausgeführt werden. In letzterem Fall kann der entfernt angeordnete Computer mit dem Computer des Benutzers durch eine beliebige Art Netzwerk verbunden sein, darunter ein lokales Netzwerk (LAN) oder ein Weitverkehrsnetz (WAN), oder die Verbindung kann mit einem externen Computer hergestellt werden (zum Beispiel über das Internet unter Verwendung eines Internet-Dienstanbieters). In einigen Ausführungsformen können elektronische Schaltungen, darunter zum Beispiel programmierbare Logikschaltungen, vor Ort programmierbare Gatter-Anordnungen (FPGA, field programmable gate arrays) oder programmierbare Logikanordnungen (PLA, programmable logic arrays) die durch einen Computer lesbaren Programmanweisungen ausführen, indem sie Zustandsinformationen der durch einen Computer lesbaren Programmanweisungen nutzen, um die elektronischen Schaltungen zu personalisieren, um Aspekte der vorliegenden Erfindung durchzuführen.
  • Aspekte der vorliegenden Erfindung sind hierin unter Bezugnahme auf Ablaufpläne und/oder Blockschaltbilder bzw. Schaubilder von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Es wird darauf hingewiesen, dass jeder Block der Ablaufpläne und/oder der Blockschaltbilder sowie Kombinationen von Blöcken in den Ablaufplänen und/oder den Blockschaltbildern mittels durch einen Computer lesbarer Programmanweisungen ausgeführt werden können.
  • Diese durch einen Computer lesbaren Programmanweisungen können einem Prozessor eines Universalcomputers, eines Spezialcomputers oder einer anderen programmierbaren Datenverarbeitungsvorrichtung bereitgestellt werden, um eine Maschine zu erzeugen, so dass die über den Prozessor des Computers bzw. der anderen programmierbaren Datenverarbeitungsvorrichtung ausgeführten Anweisungen ein Mittel zur Umsetzung der in dem Block bzw. den Blöcken der Ablaufpläne und/oder der Blockschaltbilder festgelegten Funktionen/Schritte erzeugen. Diese durch einen Computer lesbaren Programmanweisungen können auch auf einem durch einen Computer lesbaren Speichermedium gespeichert sein, das einen Computer, eine programmierbare Datenverarbeitungsvorrichtung und/oder andere Einheiten so steuern kann, dass sie auf eine bestimmte Art funktionieren, so dass das durch einen Computer lesbare Speichermedium, auf dem Anweisungen gespeichert sind, ein Herstellungsprodukt aufweist, darunter Anweisungen, welche Aspekte der/des in dem Block bzw. den Blöcken des Ablaufplans und/oder der Blockschaltbilder angegebenen Funktion/Schritts umsetzen.
  • Die durch einen Computer lesbaren Programmanweisungen können auch auf einen Computer, eine andere programmierbare Datenverarbeitungsvorrichtung oder eine andere Einheit geladen werden, um das Ausführen einer Reihe von Prozessschritten auf dem Computer bzw. der anderen programmierbaren Vorrichtung oder anderen Einheit zu verursachen, um einen auf einem Computer ausgeführten Prozess zu erzeugen, so dass die auf dem Computer, einer anderen programmierbaren Vorrichtung oder einer anderen Einheit ausgeführten Anweisungen die in dem Block bzw. den Blöcken der Ablaufpläne und/oder der Blockschaltbilder bzw. Schaubilder festgelegten Funktionen/Schritte umsetzen.
  • Die Ablaufpläne und die Blockschaltbilder bzw. Schaubilder in den Figuren veranschaulichen die Architektur, die Funktionalität und den Betrieb möglicher Ausführungen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. In diesem Zusammenhang kann jeder Block in den Ablaufplänen oder Blockschaltbildern bzw. Schaubildern ein Modul, ein Segment oder einen Teil von Anweisungen darstellen, die eine oder mehrere ausführbare Anweisungen zur Ausführung der bestimmten logischen Funktion(en) aufweisen. In einigen alternativen Ausführungen können die in den Blöcken angegebenen Funktionen in einer anderen Reihenfolge als in den Figuren gezeigt stattfinden. Zwei nacheinander gezeigte Blöcke können zum Beispiel in Wirklichkeit im Wesentlichen gleichzeitig ausgeführt werden, oder die Blöcke können manchmal je nach entsprechender Funktionalität in umgekehrter Reihenfolge ausgeführt werden. Es ist ferner anzumerken, dass jeder Block der Blockschaltbilder und/oder der Ablaufpläne sowie Kombinationen aus Blöcken in den Blockschaltbildern und/oder den Ablaufplänen durch spezielle auf Hardware beruhende Systeme umgesetzt werden können, welche die festgelegten Funktionen oder Schritte durchführen, oder Kombinationen aus Spezial-Hardware und Computeranweisungen ausführen.

Claims (20)

  1. Durch einen Computer implementiertes Verfahren, aufweisend: unter Verwendung eines Personenentitätsanalysierers erfolgendes Bewerten einer Personenentitätsdifferenz zwischen einer natürlichsprachlichen Antwort auf eine natürlichsprachliche Abfrage und einer bearbeiteten Version der natürlichsprachlichen Antwort, wobei die natürlichsprachliche Antwort aus einem Satz von natürlichsprachlichen Antwortempfehlungen ausgewählt wird, wobei der Personenentitätsanalysierer eine Instanz einer benannten Entität erkennt, die sich auf eine Person in einem Abschnitt eines narrativen Textes bezieht; unter Verwendung eines Produktentitätsanalysierers erfolgendes Bewerten einer Produktentitätsdifferenz zwischen der natürlichsprachlichen Antwort und der bearbeiteten Version der natürlichsprachlichen Antwort, wobei der Produktentitätsanalysierer eine Instanz einer benannten Entität erkennt, die sich auf ein Produkt in einem Abschnitt eines narrativen Textes bezieht; unter Verwendung eines Satzähnlichkeitsanalysierers erfolgendes Bewerten einer Satzähnlichkeit zwischen der natürlichsprachlichen Antwort und der bearbeiteten Version der natürlichsprachlichen Antwort, wobei der Satzähnlichkeitsanalysierer eine Ähnlichkeit zwischen zwei Abschnitten eines narrativen Textes misst; auf Grundlage des Personenentitätsdifferenzwertes, des Produktentitätsdifferenzwertes und des Satzähnlichkeitswertes erfolgendes Aktualisieren des Satzes natürlichsprachlicher Antworten; und in einer natürlichsprachlichen Interaktion erfolgendes Ausgeben einer ausgewählten natürlichsprachlichen Antwort aus dem Satz natürlichsprachlicher Antworten, so dass die natürlichsprachliche Interaktion die ausgewählte natürlichsprachliche Antwort innerhalb eines Flusses der natürlichsprachlichen Interaktion verwendet.
  2. Durch einen Computer implementiertes Verfahren nach Anspruch 1, wobei das Aktualisieren Ersetzen der natürlichsprachlichen Antwort durch die bearbeitete Version der natürlichsprachlichen Antwort im Satz natürlichsprachlicher Antworten aufweist.
  3. Durch einen Computer implementiertes Verfahren nach Anspruch 2, wobei das Ersetzen in Reaktion darauf durchgeführt wird, dass der Produktentitätsdifferenzwert gleich eins ist.
  4. Durch einen Computer implementiertes Verfahren nach Anspruch 1, wobei das Aktualisieren ein Hinzufügen der bearbeiteten Version der natürlichsprachlichen Antwort zu dem Satz natürlichsprachlicher Antworten aufweist.
  5. Durch einen Computer implementiertes Verfahren nach Anspruch 4, wobei das Hinzufügen in Reaktion darauf durchgeführt wird, dass der Produktentitätsdifferenzwert gleich eins ist.
  6. Durch einen Computer implementiertes Verfahren nach Anspruch 4, wobei das Hinzufügen in Reaktion darauf erfolgt, dass der Ähnlichkeitswert unter einem Schwellenwert liegt.
  7. Durch einen Computer implementiertes Verfahren nach Anspruch 1, wobei das Aktualisieren Aufweist: Vergleichen von Ergebnisdaten einer Beantwortung einer natürlichsprachlichen Live-Abfrage mit der natürlichsprachlichen Antwort mit einer Beantwortung der natürlichsprachlichen Live-Abfrage mit der bearbeiteten Version der natürlichsprachlichen Antwort; und auf Grundlage der Ergebnisdaten erfolgendes Beibehalten der natürlichsprachlichen Antwort oder der bearbeiteten Version der natürlichsprachlichen Antwort im Satz natürlichsprachlicher Antworten.
  8. Durch einen Computer implementiertes Verfahren nach Anspruch 7, wobei das Vergleichen und Beibehalten in Reaktion darauf erfolgt, dass der Ähnlichkeitswert über einem Schwellenwert liegt.
  9. Durch einen Computer verwendbares Programmprodukt, das eine oder mehrere durch einen Computer lesbare Speichereinheiten und Programmanweisungen aufweist, die auf mindestens einer der einen oder der mehreren Speichereinheiten gespeichert sind, wobei die gespeicherten Programmanweisungen aufweisen: Programmanweisungen, um unter Verwendung eines Personenentitätsanalysierers eine Personenentitätsdifferenz zwischen einer natürlichsprachlichen Antwort auf eine natürlichsprachliche Abfrage und einer bearbeiteten Version der natürlichsprachlichen Antwort zu bewerten, wobei die natürlichsprachliche Antwort aus einem Satz von natürlichsprachlichen Antwortempfehlungen ausgewählt wird, wobei der Personenentitätsanalysierer eine Instanz einer benannten Entität erkennt, die sich auf eine Person in einem Abschnitt eines narrativen Textes bezieht; Programmanweisungen, um unter Verwendung eines Produktentitätsanalysierers eine Produktentitätsdifferenz zwischen der natürlichsprachlichen Antwort und der bearbeiteten Version der natürlichsprachlichen Antwort zu bewerten, wobei der Produktentitätsanalysierer eine Instanz einer benannten Entität erkennt, die sich auf ein Produkt in einem Abschnitt eines narrativen Textes bezieht; Programmanweisungen, um unter Verwendung eines Satzähnlichkeitsanalysierers eine Satzähnlichkeit zwischen der natürlichsprachlichen Antwort und der bearbeiteten Version der natürlichsprachlichen Antwort zu bewerten, wobei der Satzähnlichkeitsanalysierer eine Ähnlichkeit zwischen zwei Abschnitten eines narrativen Textes misst; Programmanweisungen, um auf Grundlage des Personenentitätsdifferenzwertes, des Produktentitätsdifferenzwertes und des Satzähnlichkeitswertes den Satz natürlichsprachlicher Antwortempfehlungen zu aktualisieren; und Programmanweisungen, um in einer natürlichsprachlichen Interaktion eine ausgewählte natürlichsprachliche Antwort aus dem Satz natürlichsprachlicher Antworten auszugeben, so dass die natürlichsprachliche Interaktion die ausgewählte natürlichsprachliche Antwort innerhalb eines Flusses der natürlichsprachlichen Interaktion verwendet.
  10. Durch einen Computer verwendbares Programmprodukt nach Anspruch 9, wobei das Aktualisieren Programmanweisungen zum Ersetzen der natürlichsprachlichen Antwort durch die bearbeitete Version der natürlichsprachlichen Antwort im Satz natürlichsprachlicher Antworten aufweist.
  11. Durch einen Computer verwendbares Programmprodukt nach Anspruch 10, wobei das Ersetzen in Reaktion darauf durchgeführt wird, dass der Produktentitätsdifferenzwert gleich eins ist.
  12. Durch einen Computer verwendbares Programmprodukt nach Anspruch 9, wobei das Aktualisieren Programmanweisungen zum Hinzufügen der bearbeiteten Version der natürlichsprachlichen Antwort zum Satz natürlichsprachlicher Antworten aufweist.
  13. Durch einen Computer verwendbares Programmprodukt nach Anspruch 12, wobei das Hinzufügen in Reaktion darauf durchgeführt wird, dass der Produktentitätsdifferenzwert gleich eins ist.
  14. Durch einen Computer verwendbares Programmprodukt nach Anspruch 12, wobei das Hinzufügen in Reaktion darauf erfolgt, dass der Ähnlichkeitswert unter einem Schwellenwert liegt.
  15. Durch einen Computer verwendbares Programmprodukt nach Anspruch 9, wobei das Aktualisieren aufweist: Programmanweisungen zum Vergleichen von Ergebnisdaten eines Beantwortens einer natürlichsprachlichen Live-Abfrage mit der natürlichsprachlichen Antwort mit einem Beantworten der natürlichsprachlichen Live-Abfrage mit der bearbeiteten Version der natürlichsprachlichen Antwort; und Programmanweisungen zum auf Grundlage der Ergebnisdaten erfolgenden Beibehalten der natürlichsprachlichen Antwort oder der bearbeiteten Version der natürlichsprachlichen Antwort im Satz natürlichsprachlicher Antworten.
  16. Durch einen Computer verwendbares Programmprodukt nach Anspruch 15, wobei das Vergleichen und Beibehalten in Reaktion darauf erfolgen, dass der Ähnlichkeitswert über einem Schwellenwert liegt.
  17. Durch einen Computer verwendbares Programmprodukt nach Anspruch 9, wobei der durch einen Computer verwendbare Code in einer durch einen Computer lesbaren Speichereinheit in einem Datenverarbeitungssystem gespeichert ist, und wobei der durch einen Computer verwendbare Code über ein Netzwerk von einem entfernten Datenverarbeitungssystem übertragen wird.
  18. Durch einen Computer verwendbares Programmprodukt nach Anspruch 9, wobei der durch einen Computer verwendbare Code in einer durch einen Computer lesbaren Speichereinheit in einem Server-Datenverarbeitungssystem gespeichert ist, und wobei der durch einen Computer verwendbare Code über ein Netzwerk zu einem entfernten Datenverarbeitungssystem zur Verwendung in einer durch einen Computer lesbaren Speichereinheit heruntergeladen wird, die dem entfernten Datenverarbeitungssystem zugeordnet ist.
  19. Computersystem, das einen oder mehrere Prozessoren, einen oder mehrere durch einen Computer lesbare Speicher und eine oder mehrere durch einen Computer lesbare Speichereinheiten sowie auf mindestens einer der einen oder der mehreren Speichereinheiten gespeicherte Programmanweisungen zur Ausführung durch mindestens einen des einen oder der mehreren Prozessoren über mindestens einen des einen oder der mehreren Speicher aufweist, wobei die gespeicherten Programmanweisungen aufweisen: Programmanweisungen, um unter Verwendung eines Personenentitätsanalysierers eine Personenentitätsdifferenz zwischen einer natürlichsprachlichen Antwort auf eine natürlichsprachliche Abfrage und einer bearbeiteten Version der natürlichsprachlichen Antwort zu bewerten, wobei die natürlichsprachliche Antwort aus einem Satz von natürlichsprachlichen Antwortempfehlungen ausgewählt wird, wobei der Personenentitätsanalysierer eine Instanz einer benannten Entität erkennt, die sich auf eine Person in einem Abschnitt eines narrativen Textes bezieht; Programmanweisungen, um unter Verwendung eines Produktentitätsanalysierers eine Produktentitätsdifferenz zwischen der natürlichsprachlichen Antwort und der bearbeiteten Version der natürlichsprachlichen Antwort zu bewerten, wobei der Produktentitätsanalysierer eine Instanz einer benannten Entität erkennt, die sich auf ein Produkt in einem Abschnitt eines narrativen Textes bezieht; Programmanweisungen, um unter Verwendung eines Satzähnlichkeitsanalysierers eine Satzähnlichkeit zwischen der natürlichsprachlichen Antwort und der bearbeiteten Version der natürlichsprachlichen Antwort zu bewerten, wobei der Satzähnlichkeitsanalysierer eine Ähnlichkeit zwischen zwei Abschnitten eines narrativen Textes misst; Programmanweisungen, um auf Grundlage des Personenentitätsdifferenzwertes, des Produktentitätsdifferenzwertes und des Satzähnlichkeitswertes den Satz natürlichsprachlicher Antwortempfehlungen zu aktualisieren; und Programmanweisungen, um in einer natürlichsprachlichen Interaktion eine ausgewählte natürlichsprachliche Antwort aus dem Satz natürlichsprachlicher Antworten auszugeben, so dass die natürlichsprachliche Interaktion die ausgewählte natürlichsprachliche Antwort innerhalb eines Flusses der natürlichsprachlichen Interaktion verwendet.
  20. Computersystem nach Anspruch 19, wobei das Aktualisieren Programmanweisungen zum Ersetzen der natürlichsprachlichen Antwort durch die bearbeitete Version der natürlichsprachlichen Antwort im Satz natürlichsprachlicher Antworten aufweist.
DE112020003506.9T 2019-07-23 2020-07-07 Natürlichsprachliche antworten in maschinenunterstützten agenten Pending DE112020003506T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/519,859 US11157707B2 (en) 2019-07-23 2019-07-23 Natural language response improvement in machine assisted agents
US16/519,859 2019-07-23
PCT/IB2020/056378 WO2021014249A1 (en) 2019-07-23 2020-07-07 Natural language response in machine assisted agents

Publications (1)

Publication Number Publication Date
DE112020003506T5 true DE112020003506T5 (de) 2022-07-14

Family

ID=74191341

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112020003506.9T Pending DE112020003506T5 (de) 2019-07-23 2020-07-07 Natürlichsprachliche antworten in maschinenunterstützten agenten

Country Status (6)

Country Link
US (1) US11157707B2 (de)
JP (1) JP2022541444A (de)
CN (1) CN114096960A (de)
DE (1) DE112020003506T5 (de)
GB (1) GB2600607A (de)
WO (1) WO2021014249A1 (de)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11157707B2 (en) * 2019-07-23 2021-10-26 International Business Machines Corporation Natural language response improvement in machine assisted agents
KR20190098928A (ko) * 2019-08-05 2019-08-23 엘지전자 주식회사 음성 인식 방법 및 장치
WO2021128044A1 (zh) * 2019-12-25 2021-07-01 深圳市优必选科技股份有限公司 一种基于上下文的多轮对话方法、装置、设备及存储介质
US20220222441A1 (en) * 2021-01-13 2022-07-14 Salesforce.Com, Inc. Machine learning based named entity recognition for natural language processing
CN113377349B (zh) * 2021-06-21 2022-05-13 浙江工业大学 服务流程间差异检测与自然语言翻译方法
US20230066233A1 (en) * 2021-08-31 2023-03-02 Grammarly, Inc. Intent-based suggestion of phrases in a text editor

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100324908A1 (en) * 2005-05-23 2010-12-23 Roy Rosser Learning Playbot
US8949377B2 (en) * 2008-05-21 2015-02-03 The Delfin Project, Inc. Management system for a conversational system
KR101071628B1 (ko) 2009-11-27 2011-10-10 한국과학기술정보연구원 과학기술핵심개체 간 의미적 연관관계 자동 추출을 위한 시맨틱 구문 트리 커널 기반 처리 시스템 및 방법
US20120078062A1 (en) * 2010-09-24 2012-03-29 International Business Machines Corporation Decision-support application and system for medical differential-diagnosis and treatment using a question-answering system
US20140006012A1 (en) 2012-07-02 2014-01-02 Microsoft Corporation Learning-Based Processing of Natural Language Questions
US20140122619A1 (en) 2012-10-26 2014-05-01 Xiaojiang Duan Chatbot system and method with interactive chat log
US9245008B2 (en) 2013-03-12 2016-01-26 International Business Machines Corporation Detecting and executing data re-ingestion to improve accuracy in a NLP system
US9639522B2 (en) 2014-09-02 2017-05-02 Google Inc. Methods and apparatus related to determining edit rules for rewriting phrases
CN105868313B (zh) 2016-03-25 2019-02-12 浙江大学 一种基于模板匹配技术的知识图谱问答系统及方法
US10606952B2 (en) * 2016-06-24 2020-03-31 Elemental Cognition Llc Architecture and processes for computer learning and understanding
WO2018023106A1 (en) * 2016-07-29 2018-02-01 Erik SWART System and method of disambiguating natural language processing requests
US11128579B2 (en) 2016-09-29 2021-09-21 Admithub Pbc Systems and processes for operating and training a text-based chatbot
US10540967B2 (en) * 2016-11-14 2020-01-21 Xerox Corporation Machine reading method for dialog state tracking
CN106933809A (zh) 2017-03-27 2017-07-07 三角兽(北京)科技有限公司 信息处理装置及信息处理方法
WO2018214163A1 (en) 2017-05-26 2018-11-29 Microsoft Technology Licensing, Llc Providing product recommendation in automated chatting
US10162816B1 (en) * 2017-06-15 2018-12-25 Oath Inc. Computerized system and method for automatically transforming and providing domain specific chatbot responses
US20190065499A1 (en) * 2017-08-28 2019-02-28 Bsquare Corp. Execution Planner
US11157707B2 (en) * 2019-07-23 2021-10-26 International Business Machines Corporation Natural language response improvement in machine assisted agents

Also Published As

Publication number Publication date
GB202201327D0 (en) 2022-03-16
WO2021014249A1 (en) 2021-01-28
US11157707B2 (en) 2021-10-26
US20210026924A1 (en) 2021-01-28
GB2600607A (en) 2022-05-04
JP2022541444A (ja) 2022-09-26
CN114096960A (zh) 2022-02-25

Similar Documents

Publication Publication Date Title
DE112020003506T5 (de) Natürlichsprachliche antworten in maschinenunterstützten agenten
Lowe et al. Training end-to-end dialogue systems with the ubuntu dialogue corpus
DE102019000433A1 (de) Generieren einer themenbasierten Zusammenfassung eines Textinhalts
US20160307114A1 (en) Performing sentiment analysis
DE112019001533T5 (de) Erweiterung von trainingsdaten für die klassifikation von natürlicher sprache
JP2019511036A (ja) 複数レイヤの単語表現にわたる言語特徴生成のためのシステム及び方法
US10580176B2 (en) Visualization of user intent in virtual agent interaction
DE112021004163T5 (de) Zuschneiden eines kommunikationsinhalts
US10977303B2 (en) Image retrieval using interactive natural language dialog
DE102019004300A1 (de) Verwendung eines dynamischen speichernetzwerks zum verfolgen digitaler dialogzustände und erzeugen von antworten
DE202005022113U1 (de) Training für eine Text-Text-Anwendung, die eine Zeichenketten-Baum-Umwandlung zum Training und Decodieren verwendet
DE112018006345T5 (de) Abrufen von unterstützenden belegen für komplexe antworten
US20220415195A1 (en) Method for training course recommendation model, method for course recommendation, and apparatus
US10496751B2 (en) Avoiding sentiment model overfitting in a machine language model
US11580416B2 (en) Improving the accuracy of a compendium of natural language responses
WO2022134779A1 (zh) 人物动作相关数据的提取方法、装置、设备及存储介质
DE102018008268A1 (de) Automatisches Generieren von Anweisungen aus Tutorials zur Suche und Nutzernavigation
CN112560510A (zh) 翻译模型训练方法、装置、设备及存储介质
DE602004003609T2 (de) Lösung der Segmentierungsmehrdeutigkeit bei der Grammatikerstellung
CN112200674B (zh) 一种证券市场情绪指数智能计算信息系统
DE112018005844B4 (de) Verfahren, Programmprodukt, sowie Computersystem zum Fuzzy Matching von phonetischen Mustern bei der Verarbeitung von natürlicher Sprache
DE112020005535T5 (de) Selbstüberwachter sequentieller Variations-Autocodierer für entflochtene Datenerzeugung
CN109657244B (zh) 一种英文长句自动切分方法及系统
US20200402414A1 (en) Automated decision making for selecting scaffolds after a partially correct answer in conversational intelligent tutor systems (its)
DE112020002740T5 (de) Erkennen von stimmungen unter verwenden von medizinischen hinweisen

Legal Events

Date Code Title Description
R012 Request for examination validly filed