DE102019004300A1 - Verwendung eines dynamischen speichernetzwerks zum verfolgen digitaler dialogzustände und erzeugen von antworten - Google Patents

Verwendung eines dynamischen speichernetzwerks zum verfolgen digitaler dialogzustände und erzeugen von antworten Download PDF

Info

Publication number
DE102019004300A1
DE102019004300A1 DE102019004300.6A DE102019004300A DE102019004300A1 DE 102019004300 A1 DE102019004300 A1 DE 102019004300A1 DE 102019004300 A DE102019004300 A DE 102019004300A DE 102019004300 A1 DE102019004300 A1 DE 102019004300A1
Authority
DE
Germany
Prior art keywords
dialog
digital
segment
dialog state
neural network
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
DE102019004300.6A
Other languages
English (en)
Inventor
Seokhwan Kim
Walter Chang
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.)
Adobe Inc
Original Assignee
Adobe Inc
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 Adobe Inc filed Critical Adobe Inc
Publication of DE102019004300A1 publication Critical patent/DE102019004300A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/16Speech classification or search using artificial neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9032Query formulation
    • G06F16/90332Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • G06F40/35Discourse or dialogue representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/049Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/02User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail using automatic reactions or user delegation, e.g. automatic replies or chatbot-generated messages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Multimedia (AREA)
  • Acoustics & Sound (AREA)
  • Human Computer Interaction (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Image Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Machine Translation (AREA)

Abstract

Die vorliegende Offenbarung betrifft das Erzeugen von digitalen Antworten auf der Basis digitaler Dialogzustände, die durch ein neuronales Netzwerk erzeugt werden, das eine dynamische Speichernetzwerkarchitektur umfasst. Beispielsweise stellt das offenbarte System in einer oder mehreren Ausführungsform(en) einen digitalen Dialog mit einem oder mehreren Segment(en) für ein Dialogzustand-verfolgendes neuronales Netzwerk mit einer dynamischen Speichernetzwerkarchitektur bereit, das einen Satz einer Mehrzahl von Speicherplätzen umfasst. In einigen Ausführungsformen umfasst das Dialogzustand-verfolgende neuronale Netzwerk ferner Aktualisierungsgatter und Rücksetzgatter, die bei der Modifizierung der Werte verwendet werden, die in den Speicherplätzen gespeichert sind. Beispielsweise kann das offenbarte System ein platzübergreifende Interaktion-Aktualisierungs/Rücksetzgatter zum genauen Erzeugen eines digitalen Dialogzustands für jedes der Segmente eines digitalen Dialogs nutzen. Anschließend erzeugt das System eine digitale Antwort für jedes Segment eines digitalen Dialogs auf der Basis des digitalen Dialogzustands.

Description

  • HINTERGRUND
  • In den letzten Jahren gab es signifikante Verbesserungen bei Hardware- und Softwareplattformen, die eine künstliche Intelligenz zum Erleichtern eines Dialogs zwischen einer Vorrichtung und einem Nutzer einsetzen. Beispielsweise stellen viele moderne Vorrichtungen einen virtuellen Assistenten bereit, mit dem ein Nutzer zum Fragen oder Durchführen von Suchanfragen interagieren kann. Viele dieser Dialogplattformen nutzen Systeme zum intelligenten Verfolgen des Zustands eines Dialogs bei jedwedem gegebenen Punkt zum Bestimmen einer Antwort, die für ein bestimmtes Dialogsegment (z.B. eine Aussage oder eine Frage) im Hinblick auf einen umgebenden Kontext relevant ist. Beispielsweise kann ein Dialogzustand-Verfolgungssystem einen gegenwärtigen Dialogzustand im Hinblick auf ein gegenwärtiges Dialogsegment und dessen umgebenden Kontext bestimmen. Das System kann dann den gegenwärtigen Dialogzustand zum Bereitstellen einer Antwort auf das gegenwärtige Dialogsegment nutzen.
  • Obwohl diese herkömmlichen Systeme digitale Dialogzustände zum Bereitstellen von digitalen Antworten verfolgen können, weisen solche Systeme mehrere technologische Mängel auf, die zu einem unflexiblen, ungenauen und ineffizienten Betrieb führen. Beispielsweise sind herkömmliche Dialogzustand-Verfolgungssysteme häufig dahingehend unflexibel, dass sie starr den gegenwärtigen Zustand eines Dialogs bestimmen, der einem gegenwärtigen Dialogsegment entspricht, ohne relevante Dialogsegmente zu berücksichtigen, die für den gegenwärtigen Zustand relevant sein könnten. Insbesondere nutzen viele herkömmliche Systeme Dialogzustand-Verfolgungsmodelle (z.B. neuronale Netzwerkarchitekturen, wie z.B. LSTMs und GRUs), die relevante Informationen bezüglich vorhergehender Segmente eines Dialogs nicht bewahren können. Beispielsweise wenn die Modelle neue Segmente eines Dialogs verarbeiten, können sie ihre Datenspeicher kontinuierlich mit den neuen Daten aktualisieren, die jedem Segment entsprechen. Folglich neigen die Modelle dazu, die alten, früher gespeicherten Daten herauszuschieben (d.h., zu „vergessen“), selbst wenn die Daten nach wie vor relevant sind. Daher können, wenn ein Nutzer ein neues Segment eines Dialogs mit einem Kontext bereitstellt, der durch vorhergehende Segmente eines Dialogs informiert wird, die dem neuen Segment signifikant vorangingen, die Modelle diese vorhergehenden Segmente gegebenenfalls nicht berücksichtigen.
  • Zusätzlich zu Flexibilitätsbedenken sind herkömmliche Dialogzustand-Verfolgungssysteme auch ungenau. Beispielsweise haben herkömmliche Systeme typischerweise Schwierigkeiten, digitale Dialogzustände genau zu bestimmen. Insbesondere da herkömmliche Systeme häufig Modelle nutzen, die beim Bewahren von relevanten Informationen bezüglich alter Dialogsegmente Schwierigkeiten haben - selbst wenn diese für den gegenwärtigen Zustand des Dialogs relevant sind - versagen solche Systeme häufig beim Erzeugen von digitalen Dialogzuständen, die auf allen relevanten Informationen basieren. Folglich können die herkömmlichen Systeme eine digitale Dialogzustandvorhersage erzeugen, die nicht genau den wahren gegenwärtigen Zustand des Dialogs wiedergibt.
  • Zusätzlich zu Problemen bezüglich der Flexibilität und der Genauigkeit sind herkömmliche Dialogzustand-Verfolgungssysteme auch ineffizient. Insbesondere da die herkömmlichen Systeme häufig den digitalen Dialogzustand ungenau bestimmen, stellen solche Systeme im Allgemeinen nicht hilfreiche Dialogsegmente bereit, die zusätzliche Nutzerinteraktionen erfordern, um die korrekte Antwort zu erhalten. Beispielsweise kann ein herkömmliches System erfordern, dass ein Nutzer eine Aussage umformuliert oder eine andere Frage stellt (häufig mehrfach), bevor die richtige Antwort gegeben wird. Aufgrund der erhöhten Interaktionen erfordern solche herkömmlichen Systeme häufig zusätzliche Rechenressourcen (z.B. Verarbeitungsleistung und Speicher), um eine geeignete Antwort zu geben.
  • Diese Probleme und Themen existieren einhergehend mit zusätzlichen Problemen und Themen bezüglich herkömmlicher Dialogzustand-Verfolgungssysteme.
  • ZUSAMMENFASSUNG
  • Eine oder mehrere Ausführungsform(en), die hier beschrieben ist oder sind, stellt oder stellen einen Nutzen bereit und/oder löst oder lösen eines oder mehrere der vorstehend genannten oder weitere Probleme im Stand der Technik mit Systemen, Verfahren und nicht-flüchtigen computerlesbaren Speichermedien, die Antworten auf der Basis von digitalen Dialogzuständen erzeugen, die durch ein neuronales Netzwerk mit einer dynamischen Speichernetzwerkarchitektur erzeugt werden. Beispielsweise stellen die offenbarten Systeme in einer oder mehrere Ausführungsform(en) einen digitalen Dialog mit einem oder mehreren Segment(en) (z.B. Aussagen, Fragen, usw.) für ein Dialogzustand-verfolgendes neuronales Netzwerk bereit, das zum Erzeugen digitaler Dialogzustände trainiert wird bzw. ist. Insbesondere kann das Dialogzustand-verfolgende neuronale Netzwerk eine dynamische Speichernetzwerkarchitektur mit einer Mehrzahl von Speicherplätzen umfassen, wobei jeder davon eine latente Darstellung kodiert, die einem wichtigen Gegenstand des Dialogs (z.B. Thema, durchzuführende Aktion, usw.) entspricht. In einer oder mehreren Ausführungsform(en) verarbeitet das Dialogzustand-verfolgende neuronale Netzwerk jedes Dialogsegment zum Modifizieren der Werte eines Speicherplatzes oder mehrerer Speicherplätze unter Verwendung eines Gatterverarbeitungsmechanismus (z.B. eines Rücksetzgatters und eines Aktualisierungsgatters). In einigen Ausführungsformen modifiziert der Gatterverarbeitungsmechanismus die Werte eines Speicherplatzes auf der Basis von platzübergreifenden („cross-slot“-) Interaktionen zwischen dem Speicherplatz und weiteren Speicherplätzen unter Verwendung des Rücksetzgatters und des Aktualisierungsgatters. Nach dem Verarbeiten jedes Segments eines digitalen Dialogs bestimmt das Dialogzustand-verfolgende neuronale Netzwerk einen digitalen Dialogzustand auf der Basis der letzten Platzwerte und die offenbarten Systeme erzeugten eine digitale Antwort auf das Segment auf der Basis des bestimmten Zustands. Auf diese Weise können die offenbarten Systeme flexibel, genau und effizient digitale Antworten erzeugen, die auf allen relevanten Informationen basieren.
  • Zur Veranschaulichung kann in einer oder mehreren Ausführungsform(en) ein System einen digitalen Dialog identifizieren, der ein erstes Segment und ein zweites Segment (z.B. zwei Abschnitte einer Unterhaltung) umfasst. Anschließend kann das System den digitalen Dialog für ein Dialogzustand-verfolgendes neuronales Netzwerk bereitstellen, das ein dynamisches Speichernetzwerk mit einer Mehrzahl von Speicherplätzen und einer Mehrzahl von entsprechenden Rücksetzgattern umfasst. Das System kann das Dialogzustand-verfolgende neuronale Netzwerk zum Erzeugen eines Werts für einen Speicherplatz auf der Basis des ersten Segments nutzen und dann ein Rücksetzgatter, das mit dem Speicherplatz zusammenhängt, zum Erzeugen eines neuen Werts für den Speicherplatz auf der Basis des zweiten Segments nutzen. In einigen Ausführungsformen nutzt das System auch ein Aktualisierungsgatter, das mit dem Speicherplatz zusammenhängt, zum Erzeugen des neuen Werts. In weiteren Ausführungsformen sind das Rücksetzgatter und das Aktualisierungsgatter des Systems platzübergreifende Interaktion-Gatter, die auf der Basis von platzübergreifenden Interaktionen arbeiten, die zwischen Speicherplätzen in dem dynamischen Speichernetzwerk identifiziert werden. Nach dem Erzeugen des neuen Werts kann das System einen digitalen Dialogzustand, der dem zweiten Segment entspricht, auf der Basis des neuen Werts des Speicherplatzes erzeugen. Das System kann dann eine digitale Antwort auf das zweite Segment auf der Basis des digitalen Dialogzustands erzeugen.
  • Zusätzliche Merkmale und Vorteile einer oder mehrerer Ausführungsform(en) der vorliegenden Offenbarung sind in der nachstehenden Beschreibung angegeben und ergeben sich teilweise aus der Beschreibung oder aus der praktischen Durchführung solcher beispielhaften Ausführungsformen.
  • Figurenliste
  • Die detaillierte Beschreibung zeigt eine oder mehrere Ausführungsform(en) durch die Verwendung der beigefügten Zeichnungen, die nachstehend kurz beschrieben sind, genauer und detaillierter.
    • 1 zeigt ein Blockdiagramm des Dialogzustand-Verfolgungssystems, das Antworten für Segmente eines digitalen Dialogs erzeugt, gemäß einer oder mehrerer Ausführungsform(en);
    • 2 zeigt ein Beispiel für einen Austausch von Dialogsegmenten und Antworten gemäß einer oder mehrerer Ausführungsform(en);
    • 3 zeigt ein schematisches Diagramm einer dynamischen Speichernetzwerkarchitektur eines Dialogzustand-verfolgenden neuronalen Netzwerks, das zum Erzeugen digitaler Dialogzustände gemäß einer oder mehrerer Ausführungsform(en) trainiert wird;
    • 4A bis 4C zeigen ein schematisches Diagramm einer dynamischen Speichereinheit mit einem einzelnen Aktualisierungsgatter gemäß einer oder mehrerer Ausführungsform(en);
    • 5A bis 5D zeigen ein schematisches Diagramm einer dynamischen Speichereinheit mit einem Aktualisierungsgatter und einem Rücksetzgatter gemäß einer oder mehrerer Ausführungsform(en);
    • 6 zeigt ein schematisches Diagramm einer dynamischen Speichereinheit mit platzübergreifende Interaktion-Gattern gemäß einer oder mehrerer Ausführungsform(en);
    • 7 zeigt ein Blockdiagramm des Dialogzustand-Verfolgungssystems zum Erzeugen einer Antwort auf der Basis eines digitalen Dialogzustands gemäß einer oder mehrerer Ausführungsform(en);
    • 8 zeigt ein Blockdiagramm des Trainierens eines Dialogzustand-verfolgenden neuronalen Netzwerks zum Erzeugen digitaler Dialogzustände gemäß einer oder mehrerer Ausführungsform(en);
    • 9 zeigt eine Tabelle, die experimentelle Ergebnisse bezüglich der Effektivität des Dialogzustand-Verfolgungssystems gemäß einer oder mehrerer Ausführungsform(en) wiedergibt;
    • 10 zeigt eine beispielhafte Umgebung, in der ein Dialogzustand-Verfolgungssystem betrieben werden kann, gemäß einer oder mehrerer Ausführungsform(en);
    • 11 zeigt ein beispielhaftes schematisches Diagramm eines Dialogzustand-Verfolgungssystems gemäß einer oder mehrerer Ausführungsform(en);
    • 12 zeigt ein Flussdiagramm einer Reihe von Vorgängen zum Erzeugen einer Antwort auf ein Segment eines digitalen Dialogs auf der Basis des digitalen Dialogzustands gemäß einer oder mehrerer Ausführungsform(en); und
    • 13 zeigt ein Blockdiagramm einer beispielhaften Rechenvorrichtung gemäß einer oder mehrerer Ausführungsform(en).
  • DETAILLIERTE BESCHREIBUNG
  • Eine oder mehrere Ausführungsform(en), die hier beschrieben ist oder sind, umfasst oder umfassen ein Dialogzustand-Verfolgungssystem, das Antworten auf der Basis digitaler Dialogzustände erzeugt, die durch ein neuronales Netzwerk mit einer dynamischen Speichernetzwerkarchitektur erzeugt werden. Beispielsweise kann das Dialogzustand-Verfolgungssystem ein Dialogzustand-verfolgendes neuronales Netzwerk nutzen, das digitale Dialogzustände auf der Basis von Werten erzeugt, die in einer Mehrzahl von Speicherplätzen gespeichert sind, die jeweils eine latente Darstellung kodieren, die einem wichtigen Thema des Dialogs entspricht. Das Dialogzustand-verfolgende neuronale Netzwerk kann die Speicherplatzwerte durch Verarbeiten von Segmenten des digitalen Dialogs erzeugen. In einigen Ausführungsformen erzeugt das Dialogzustand-verfolgende neuronale Netzwerk die Speicherplatzwerte unter Verwendung von Gatterverarbeitungsmechanismen (z.B. von Rücksetzgattern und Aktualisierungsgattern), die den Einfluss eines gegenwärtigen Dialogsegments oder von vorhergehenden Dialogsegmenten bestimmen. In einigen Ausführungsformen erzeugen die Gatterverarbeitungsmechanismen ferner die Werte auf der Basis von Korrelationen zwischen Speicherplätzen. Das Dialogzustand-verfolgende neuronale Netzwerk nutzt die Speicherplatzwerte zum Erzeugen digitaler Dialogzustände und das Dialogzustand-Verfolgungssystem nutzt dann diese Zustände zum Erzeugen digitaler Antworten auf die Dialogsegmente.
  • Als Beispiel stellt das Dialogzustand-Verfolgungssystem in einer oder mehreren Ausführungsform(en) einen digitalen Dialog für ein Dialogzustand-verfolgendes neuronales Netzwerk mit einer dynamischen Speicherarchitektur bereit, die eine Mehrzahl von Speicherplätzen und Rücksetzgattern umfasst. Das Dialogzustand-Verfolgungssystem nutzt das neuronale Netzwerk zum Erzeugen eines ersten Werts eines Speicherplatzes auf der Basis eines ersten Segments des digitalen Dialogs. Anschließend nutzt das Dialogzustand-verfolgende neuronale Netzwerk ein Rücksetzgatter, das mit dem Speicherplatz zusammenhängt, zum Erzeugen eines zweiten Werts für den Speicherplatz auf der Basis eines zweiten Segments des digitalen Dialogs. In einigen Ausführungsformen erzeugt das Dialogzustand-verfolgende neuronale Netzwerk den zweiten Wert des Speicherplatzes ferner durch Verwenden eines Aktualisierungsgatters im Zusammenhang mit dem ersten Speicherplatz. In einigen Ausführungsformen nutzt das Dialogzustand-verfolgende neuronale Netzwerk das Rücksetzgatter und das Aktualisierungsgatter zum Erzeugen des zweiten Werts auf der Basis von platzübergreifenden Interaktionen zwischen dem Speicherplatz und weiteren Speicherplätzen in der dynamischen Speicherarchitektur. Das Dialogzustand-verfolgende neuronale Netzwerk erzeugt einen digitalen Dialogzustand, der dem zweiten Segment des digitalen Dialogs entspricht, auf der Basis des zweiten Werts des Speicherplatzes. Unter Verwendung des digitalen Dialogzustands kann das Dialogzustand-Verfolgungssystem eine digitale Antwort auf das zweite Segment erzeugen.
  • Wie es vorstehend erwähnt worden ist, nutzt das Dialogzustand-Verfolgungssystem in einer oder mehreren Ausführungsform(en) ein Dialogzustand-verfolgendes neuronales Netzwerk mit einer dynamischen Speichernetzwerkarchitektur zum Erzeugen digitaler Dialogzustände. Insbesondere stellt die dynamische Speichernetzwerkarchitektur eine Mehrzahl von Speicherplätzen bereit, wobei jeder Speicherplatz Werte speichert, die einen charakteristischen digitalen Dialogzustand angeben (d.h., er kodiert eine latente Darstellung eines wichtigen Gegenstands des Dialogs). Das Dialogzustand-verfolgende neuronale Netzwerk nutzt die Werte der Mehrzahl von Speicherplätzen zum Erzeugen digitaler Dialogzustände. Wenn das Dialogzustand-verfolgende neuronale Netzwerk ein Segment eines digitalen Dialogs verarbeitet, erzeugt das Dialogzustand-verfolgende neuronale Netzwerk neue Werte für einen oder mehrere der Speicherplätze zum Erzeugen eines neuen digitalen Dialogzustands, der dem Segment entspricht.
  • Zusätzlich nutzt, wie es vorstehend erwähnt worden ist, das Dialogzustand-verfolgende neuronale Netzwerk eine Mehrzahl von Rücksetzgattern, die mit der Mehrzahl von Speicherplätzen zusammenhängen, zum Erzeugen von Werten für diese Speicherplätze. In einer oder mehreren Ausführungsform(en) nutzt das Dialogzustand-verfolgende neuronale Netzwerk ein Rücksetzgatter, das mit einem Speicherplatz zusammenhängt, zum Modifizieren eines Einflusses von vorhergehenden Segmenten eines digitalen Dialogs auf die gegenwärtigen Werte, die für diesen Speicherplatz erzeugt worden sind. Beispielsweise kann das Dialogzustand-verfolgende neuronale Netzwerk ein Rücksetzgatter zum Ignorieren eines vorhergehenden Segments eines digitalen Dialogs bei der Bestimmung eines Speicherplatzwerts für ein nachfolgendes Segment des digitalen Dialogs nutzen. In einigen Ausführungsformen nutzt das Dialogzustand-verfolgende neuronale Netzwerk das Rücksetzgatter durch Bestimmen eines Rücksetzwerts und dann Anwenden des Rücksetzwerts zum Modifizieren des Einflusses der vorhergehenden Dialogsegmente.
  • In einer oder mehreren Ausführungsform(en) umfasst das Dialogzustand-verfolgende neuronale Netzwerk ferner eine Mehrzahl von Aktualisierungsgattem, die mit der Mehrzahl von Speicherplätzen und der Mehrzahl von Rücksetzgattern zusammenhängen. Insbesondere kann das Dialogzustand-verfolgende neuronale Netzwerk die Mehrzahl von Aktualisierungsgattern zum Erzeugen von Werten für die entsprechenden Speicherplätze nutzen. Beispielsweise kann das Dialogzustand-verfolgende neuronale Netzwerk ein Aktualisierungsgatter nutzen, das mit einem Speicherplatz zum Modifizieren des Einflusses eines gegenwärtigen Segments eines digitalen Dialogs auf die gegenwärtigen Werte, die für den Speicherplatz erzeugt werden, zusammenhängt. In einigen Ausführungsformen nutzt das Dialogzustand-verfolgende neuronale Netzwerk das Aktualisierungsgatter durch Bestimmen eines Aktualisierungswerts und Anwenden des Aktualisierungswerts zum Modifizieren des Einflusses des gegenwärtigen Segments eines digitalen Dialogs.
  • Wie es ferner vorstehend erwähnt worden ist, werden die Gatter, die mit jedem Speicherplatz zusammenhängen, derart betrieben, dass der Einfluss von Segmenten eines digitalen Dialogs (gegenwärtig oder vorhergehend bzw. früher) ferner auf der Basis von platzübergreifenden Interaktionen bestimmt wird. Insbesondere kann eine platzübergreifende Interaktion eine Korrelation zwischen einem Speicherplatz und einem weiteren Speicherplatz umfassen (z.B. wenn ein Speicherplatz wechselt, wechselt auch ein weiterer Speicherplatz). Das Dialogzustand-Verfolgungssystem kann platzübergreifende Interaktionen beim Trainieren des Dialogzustand-verfolgenden neuronalen Netzwerks lernen und dann Werte für einen Speicherplatz auf der Basis der Interaktionen zwischen diesem Speicherplatz und jedem weiteren verfügbaren Speicherplatz erzeugen. Beispielsweise kann ein Rücksetzgatter ein platzübergreifende Interaktion-Rücksetzgatter umfassen, das zum Anwenden eines platzübergreifende Interaktion-Rücksetzwerts zum Modifizieren des Einflusses von vorhergehenden Segmenten eines digitalen Dialogs auf die gegenwärtigen Werte, die für den Speicherplatz erzeugt werden, verwendet wird. Ferner kann ein Aktualisierungsgatter ein platzübergreifende Interaktion-Aktualisierungsgatter umfassen, das zum Anwenden eines platzübergreifende Interaktion-Aktualisierungswerts zum Modifizieren des Einflusses des gegenwärtigen Segments eines digitalen Dialogs auf die gegenwärtigen Werte, die für den Speicherplatz erzeugt werden, verwendet wird.
  • Das Dialogzustand-Verfolgungssystem stellt im Hinblick auf herkömmliche Systeme mehrere Vorteile bereit. Beispielsweise verbessert das Dialogzustand-Verfolgungssystem die Flexibilität, mit der relevante Daten berücksichtigt werden, wenn digitale Dialogzustände erzeugt werden. Insbesondere kann durch Implementieren eines Dialogzustand-verfolgenden neuronalen Netzwerks mit einer dynamischen Speichernetzwerkarchitektur mit einer Mehrzahl von Speicherplätzen das Dialogzustand-Verfolgungssystem digitale Dialogzustände auf der Basis aller relevanten vorhergehenden Dialogsegmente erzeugen. Insbesondere ermöglicht die dynamische Speichernetzwerkarchitektur das Beibehalten von relevanten Daten, die in den Speicherplätzen gespeichert sind, für lange Zeiträume, während auch relevante, neu erfasste Daten eines digitalen Dialogs betont werden. Daher kann das Dialogzustand-Verfolgungssystem einen gegenwärtigen digitalen Dialogzustand auf der Basis von vorhergehenden Segmenten eines digitalen Dialogs erzeugen, die dem gegenwärtigen Segment signifikant vorausgegangen sind, wenn diese vorhergehenden Segmente für den gegenwärtigen Zustand relevant sind. Zur Veranschaulichung kann ein virtueller Assistent, der einem Nutzer hilft, eine Reise zu einem bestimmten Ort zu planen, Daten speichern, die für den Namen des Orts relevant sind, der zu Beginn des Dialogs erwähnt worden ist, um zu erkennen, dass dann, wenn der Nutzer mehrere Minuten später nach Hotelempfehlungen fragt, der Nutzer spezifisch Empfehlungen erhalten will, die zu diesem Ort gehören. Ferner kann das Dialogzustand-Verfolgungssystem unter Verwendung einer platzübergreifende-Interaktion-Aktüalisierung und eines Rücksetzgatters flexibel Korrelationen zwischen Speicherplätzen berücksichtigen, so dass relevante Änderungen der Daten eines Speicherplatzes die neuen Werte beeinflussen können, die für einen weiteren Speicherplatz erzeugt werden.
  • Ferner verbessert das Dialogzustand-Verfolgungssystem die Genauigkeit. Insbesondere kann das Dialogzustand-Verfolgungssystem durch Nutzen eines Dialogzustand-verfolgenden neuronalen Netzwerks mit einer dynamischen Speicherarchitektur mit einer Mehrzahl von Speicherplätzen, die relevante Daten für lange Zeiträume speichern können, alle relevanten Informationen berücksichtigen, wenn ein digitaler Dialogzustand bestimmt wird. Zusätzlich kann das Dialogzustand-Verfolgungssystem durch Nutzen von Aktualisierungsgattern und Rücksetzgattern und Erzeugen von neuen Werten auf der Basis von platzübergreifenden Interaktionen zwischen Speicherplätzen Dialogzustände genauer bestimmen und Antworten erzeugen. Als Veranschaulichung kann ein virtueller Assistent einer Unterhaltung mit einem Nutzer genauer folgen (z.B. um was sich die Unterhaltung gegenwärtig dreht), da sich der virtuelle Assistent an Informationen „erinnern“ kann, die er bestimmt hat und die nach wie vor relevant sind, und Informationen „vergessen“ kann, die er bestimmt hat und die irrelevant sind. Folglich berücksichtigt der virtuelle Assistent nur relevante Informationen, wenn der Dialogzustand bestimmt wird.
  • Zusätzlich arbeitet das Dialogzustand-Verfolgungssystem durch genaueres Erzeugen digitaler Dialogzustände effizienter. Insbesondere da das Dialogzustand-Verfolgungssystem digitale Dialogzustände genauer bestimmt, kann das System ferner digitale Antworten erzeugen, die auf ein Segment eines digitalen Dialogs genauer antworten. Dies vermindert den Bedarf für zusätzliche Interaktionen zwischen dem Dialogzustand-Verfolgungssystem und einem Nutzer, bevor das System eine geeignete Antwort liefern kann. Aufgrund dieses verminderten Bedarfs für zusätzliche Interaktionen verbessert das Dialogzustand-Verfolgungssystem die Effizienz des Implementierens von Computersystemen dadurch, dass sie während des Betriebs weniger Leistung und Speicher erfordern. Als Beispiel kann ein virtueller Assistent genauer erkennen, dass eine Anfrage für Hotelempfehlungen einen bestimmten Ort betrifft, der früher in dem Dialog erwähnt worden ist. Folglich kann der virtuelle Assistent den Nutzer mit Empfehlungen für den bestimmten Ort versorgen, ohne dass der Nutzer die Anfrage erneut stellen muss oder die Anfrage umformulieren muss, so dass der Name des bestimmten Orts einbezogen wird. Folglich vermeidet der virtuelle Assistent durch Liefern einer genauen Antwort beim ersten Mal die Nutzung einer Verarbeitungsleistung, die zur Durchführung einer anschließenden Arbeit erforderlich wäre.
  • Wie es durch die vorstehende Diskussion gezeigt worden ist, nutzt die vorliegende Offenbarung verschiedene Begriffe zum Beschreiben von Merkmalen und Vorteilen des Dialogzustand-Verfolgungssystems. Nachstehend werden zusätzliche Details bezüglich der Bedeutung dieser Begriffe angegeben. Beispielsweise bezieht sich der Begriff „digitaler Dialog“, wie er hier verwendet wird, auf digitale Daten, die eine Kommunikation wiedergeben. Insbesondere kann ein digitaler Dialog digitale Daten umfassen, die eine Kommunikation zwischen zwei oder mehr Systemen oder Einheiten darstellen. Zur Veranschaulichung kann ein digitaler Dialog eine Kommunikation zwischen einem Nutzer (z.B. einer Person) und einer Vorrichtung oder eine Kommunikation zwischen zwei Vorrichtungen darstellen. Insbesondere kann ein digitaler Dialog eine Audiounterhaltung (z.B. eine Unterhaltung zwischen einem Menschen unter Verwendung einer Telefonvorrichtung und einem künstliche Intelligenz-Antwortsystem), eine Textunterhaltung (z.B. eine Chat- oder Textnachrichtenübertragung zwischen einer Client-Vorrichtung und einem künstliche Intelligenz-Antwortsystem) oder eine andere Unterhaltung wiedergeben. Zusätzlich bezieht sich der Begriff bzw. Ausdruck „Segment“, „Dialogsegment“, „digitales Dialogsegment“ oder „Segment eines digitalen Dialogs“ auf einen Abschnitt eines digitalen Dialogs. Insbesondere kann sich ein Segment auf einen Teilsatz eines digitalen Dialogs beziehen, der sich auf die Gesamtheit des digitalen Dialogs oder weniger als die Gesamtheit des digitalen Dialogs bezieht. Als Veranschaulichung kann ein Segment eine Aussage oder eine Frage von einer Unterhaltung umfassen.
  • Ferner bezieht sich der Ausdruck „digitaler Dialogzustand“ oder „Dialogzustand“ auf eine Beschreibung eines Dialogs. Insbesondere kann sich ein digitaler Dialogzustand auf eine Beschreibung der Eigenschaften eines Dialogs bei einem gegebenen Zeitpunkt beziehen. Beispielsweise kann ein digitaler Dialogzustand ein gegenwärtiges Thema des Dialogs, eine Art des Dialogs (z.B. eine Art einer Anfrage), einen Gegenstand oder ein Ziel (z.B. ein Ziel einer Anfrage), bestimmte Aktionen, die per Anweisungen ausgeführt werden sollen, die durch den Dialog gegeben werden, oder einen Ort (z.B. ein Ort für eine Anfrage) oder eine Einheit, die durch den Dialog beschrieben wird, beschreiben.
  • Zusätzlich bezieht sich der hier verwendete Ausdruck „neuronales Netzwerk“ auf ein Maschinenlernmodell, das auf der Basis von Eingaben abgestimmt (z.B. trainiert) werden kann, um unbekannte Funktionen zu nähern. Insbesondere kann der Ausdruck neuronales Netzwerk ein Modell von verbundenen Neuronen umfassen, die zum Nähern von komplexen Funktionen kommunizieren und lernen und Ausgaben auf der Basis einer Mehrzahl von Eingaben erzeugen, die für das Modell bereitgestellt worden sind. Beispielsweise umfasst der Ausdruck neuronales Netzwerk einen Maschinenlernalgorithmus oder mehrere Maschinenlernalgorithmen. Zusätzlich ist ein neuronales Netzwerk ein Algorithmus (oder ein Satz von Algorithmen), der tiefes Lernen-Techniken implementiert, die einen Satz von Algorithmen zum Modellieren von Datenabstraktionen auf einem hohen Niveau nutzen. Der Ausdruck neuronales Netzwerk kann dynamische Speichernetzwerke umfassen. Wie hier verwendet, bezieht sich der Ausdruck „dynamisches Speichemetzwerk“ auf eine rekurrente neuronales Netzwerk-Architektur, die eine Mehrzahl von dynamischen Speichereinheiten und Aufmerksamkeitsmechanismen bei der Analyse einer bestimmten Stufe einer Sequenz nutzt. Wie es nachstehend detaillierter beschrieben ist, kann eine dynamische Speichereinheit einen Gatterverarbeitungsmechanismus (z.B. ein Rücksetzgatter und/oder ein Aktualisierungsgatter), einen Speicherplatz und einen Algorithmus (z.B. einen Inhalt-basierten Vorgang) zum Aktualisieren von Werten für den Speicherplatz auf der Basis von Eingabedaten bei verschiedenen Stufen einer Sequenz von Ereignissen umfassen.
  • Der Begriff „Speicherplatz“, wie er hier verwendet wird, bezieht sich auf eine latente Darstellung eines Gegenstands, Themas und/oder einer Eigenschaft des digitalen Dialogs. Insbesondere umfasst der Begriff Speicherplatz einen Speichermechanismus innerhalb eines dynamischen Speichemetzwerks, der einen Gegenstand wiedergibt (z.B. mittels eines latenten Merkmalsvektors). Eine Mehrzahl von Speicherplätzen innerhalb eines dynamischen Speichernetzwerks kann zusammen einen latenten Dialogzustand darstellen. Ein Speicherplatz kann sich auf einen bestimmten Ort im Speicher (z.B. einen Ort im Hardwarespeicher) oder eine bestimmte Bezeichnung eines Werts, der im Speicher gespeichert ist (z.B. jedweden Speicherort, der Werte für eine bestimmte Dialogeigenschaft bezeichnet), beziehen.
  • Ferner bezieht sich der Begriff „Rücksetzgatter“ oder „Aktualisierungsgatter“, wie er hier verwendet wird, auf einen Gatterverarbeitungsmechanismus zum Erzeugen von Werten für einen Speicherplatz. Insbesondere kann sich der Begriff Rücksetzgatter auf einen Gatterverarbeitungsmechanismus beziehen, der den Einfluss von vorhergehenden Daten (z.B. vorhergehenden Speicherplatzwerten) auf die Erzeugung von neuen Daten (z.B. gegenwärtigen Speicherplatzwerten für ein gegenwärtiges Dialogsegment) modifiziert. Zur Veranschaulichung kann ein Rücksetzgatter einen Gatterverarbeitungsmechanismus umfassen, der einem Speicherplatz entspricht, der den Einfluss von früheren Eingaben auf einen gegenwärtigen Wert, der in dem Speicherplatz gespeichert werden soll, modifiziert. Entsprechend kann sich der Begriff „Aktualisierungsgatter“, wie er hier verwendet wird, auf einen Gatterverarbeitungsmechanismus beziehen, der den Einfluss von neuen Daten auf die Erzeugung von neuen Werten modifiziert. Zur Veranschaulichung kann ein Aktualisierungsgatter einen Gatterverarbeitungsmechanismus umfassen, der einem Speicherplatz entspricht, der den Einfluss einer gegenwärtigen Eingabe (z.B. einer gegenwärtigen Dialogmerkmalsdarstellung) auf einen gegenwärtigen Wert, der in diesem Platz gespeichert werden soll, modifiziert.
  • Ferner bezieht sich der Begriff „platzübergreifende Interaktionen“, wie er hier verwendet wird, auf einen Mechanismus zum Modifizieren von Speicherplatzwerten auf der Basis von weiteren Speicherplatzwerten (z.B. in demselben Zeitschritt oder Gegenstand einer Sequenz). Insbesondere umfasst eine platzübergreifende Interaktion eine Korrelation zwischen einem Speicherplatz und einem weiteren Speicherplatz, der ein Teil des dynamischen Speichernetzwerks ist. Beispielsweise modifiziert ein platzübergreifende Interaktion-Rücksetzgatter den Einfluss von vorhergehenden Eingaben auf die gegenwärtigen Werte, die für einen Speicherplatz erzeugt werden, auf der Basis der Korrelationen zwischen diesem Speicherplatz und jedem anderen Speicherplatz. Entsprechend modifiziert ein platzübergreifende Interaktion-Aktualisierungsgatter den Einfluss der gegenwärtigen Eingabe auf die gegenwärtigen Werte, die für einen Speicherplatz auf der Basis solcher Korrelationen erzeugt werden.
  • Zusätzlich bezieht sich der Ausdruck „Dialogmerkmaldarstellung“, wie er hier verwendet wird, auf einen Satz von Zahlenwerten, die einen digitalen Dialog oder ein digitales Dialogsegment darstellen. Insbesondere umfasst der Begriff Dialogmerkmaldarstellung einen Merkmalsvektor, der unter Verwendung eines neuronalen Faltungsnetzwerks erzeugt wird, das latent und/oder offenkundig Merkmale eines Dialogs oder Dialogsegments wiedergibt. In einer oder mehrere Ausführungsform(en) ist eine Dialogmerkmaldarstellung ein mehrdimensionaler Datensatz (z.B. eine Matrix oder ein Vektor), der Dialogeigenschaften darstellt. In einer oder mehreren Ausführungsform(en) umfasst eine Dialogmerkmaldarstellung einen Satz von numerischen Metriken, die durch einen Maschinenlernalgorithmus gelernt werden, wie z.B. Faltungsschichten eines Dialogzustand-verfolgenden neuronalen Netzwerks.
  • Ferner bezieht sich der Begriff bzw. Ausdruck „Antwort“ oder „digitale Antwort“ auf eine Reaktion auf ein Segment eines digitalen Dialogs. Insbesondere umfasst der Begriff Antwort eine kommunikative Antwort oder eine Aktion, die nach dem Empfangen eines Segments eines digitalen Dialogs ausgeführt wird. Zur Veranschaulichung kann eine Antwort eine Antwort auf eine Frage, eine Aussage, die als Antwort auf eine weitere Aussage gemacht wird, oder eine Aktion, die per Anfrage oder Anweisungen vorgenommen wird, die durch ein oder mehrere Segment(e) eines digitalen Dialogs bereitgestellt wird oder werden, umfassen. Eine Antwort kann die Form eines digitalen Texts, eines digitalen Audiosignals oder einer durchgeführten Aktion (z.B. das Beschneiden eines Bilds) aufweisen.
  • Zusätzliche Details bezüglich des Dialogzustand-Verfolgungssystems werden nachstehend unter Bezugnahme auf die Figuren angegeben. Beispielsweise zeigt die 1 ein Blockdiagramm zum Erzeugen digitaler Antworten auf Segmente eines digitalen Dialogs gemäß einer oder mehreren Ausführungsform(en). Wie es in der 1 gezeigt ist, nutzt das Dialogzustand-Verfolgungssystem 102 einen digitalen Dialog 104, der ein oder mehrere Segment(e) zum Erzeugen einer Mehrzahl von digitalen Antworten 108 umfasst. Es sollte beachtet werden, dass der digitale Dialog 104 jedwede Anzahl von Segmenten umfassen kann und das Dialogzustand-Verfolgungssystem 102 jedwede geeignete Anzahl von entsprechenden digitalen Antworten als Teil der Mehrzahl von digitalen Antworten 108 erzeugen kann. In einer oder mehreren Ausführungsform(en) erzeugt das Dialogzustand-Verfolgungssystem eine digitale Antwort für jedes Segment des digitalen Dialogs 104 (oder aller Segmente, die von einer bestimmten Person oder Quelle stammen).
  • Als Veranschaulichung zeigt die 1 das Dialogzustand-Verfolgungssystem 102, das ein Segment 106 des digitalen Dialogs 104 erhält. In einer oder mehreren Ausführungsform(en) wird das Segment 106 für das Dialogzustand-Verfolgungssystem 102 hörbar bereitgestellt (z.B. spricht ein Nutzer das Segment 106 oder eine Vorrichtung präsentiert eine Tondarstellung der Segmente 106). In einigen Ausführungsformen wird das Segment 106 durch eine geschriebene Eingabe dargestellt (z.B. gibt ein Nutzer eine getippte Darstellung der Segmente 106 unter Verwendung einer Rechenvorrichtung ein, die das Dialogzustand-Verfolgungssystem 102 implementiert). In weiteren Ausführungsformen identifiziert das Dialogzustand-Verfolgungssystem 102 in sonstiger Weise den digitalen Dialog 104 und die einbezogenen Segmente (greift z.B. auf eine Aufzeichnung oder eine Kopie zu, die in einer Datenbank gespeichert ist). Wie es in der 1 gezeigt ist, stellt das Segment 106 eine Frage, die nach einer Empfehlung für einen zu besichtigenden Ort während einer Reise nach Singapur fragt.
  • Wie es in der 1 gezeigt ist, nutzt das Dialogzustand-Verfolgungssystem 102 ein Segment 106 des digitalen Dialogs 104 zum Erzeugen einer digitalen Antwort 110 auf das Segment 106. Insbesondere zeigt die 1, dass das Dialogzustand-Verfolgungssystem 102 ein Dialogzustand-verfolgendes neuronales Netzwerk 112 zum Erzeugen der digitalen Antwort 110 einsetzt. Insbesondere erzeugt das Dialogzustand-verfolgende neuronale Netzwerk 112 digitale Dialogzustände, die durch das Dialogzustand-Verfolgungssystem 102 zum Erzeugen digitaler Antworten genutzt werden, wie es nachstehend detaillierter diskutiert wird. Wie es durch die 1 gezeigt ist, ist die digitale Antwort 110 eine Antwort auf die Frage, die durch das Segment 106 des digitalen Dialogs 104 gestellt wird, und gibt wie angefragt eine Ortsempfehlung.
  • Die 2 zeigt einen beispielhaften Austausch von Dialogsegmenten und digitalen Antworten sowie entsprechende digitale Dialogzustände gemäß einer oder mehrerer Ausführungsform(en). Insbesondere zeigt die Figur einen Dialog zwischen einem Nutzer (z.B. einer Person), der als „Nutzer“ bezeichnet ist, und dem Dialogzustand-Verfolgungssystem, das hier als „Assistent“ bezeichnet ist. Insbesondere umfasst der Dialog eine Anfrage durch den Nutzer bezüglich eines Fotos, das bearbeitet und in einem soziale Medien-Account gepostet werden soll.
  • Wie es in der 2 gezeigt ist, arbeitet das Dialogzustand-Verfolgungssystem in einer oder mehreren Ausführungsform(en) zusammen mit einem weiteren System zur Durchführung einer Nutzeranfrage, zum Finden einer Antwort auf eine Nutzerfrage, usw. Beispielsweise kann das Dialogzustand-Verfolgungssystem, wie es in der 2 gezeigt ist, mit einem Fotobearbeitungssystem zusammenarbeiten, um ein Foto gemäß der Anfrage durch den Nutzer zu bearbeiten. Zur Veranschaulichung kann der Nutzer ein Dialogsegment bereitstellen, das verlangt, dass das Fotobearbeitungssystem ein ausgewähltes Foto beschneidet. Das Dialogzustand-Verfolgungssystem kann das Dialogsegment empfangen und den gegenwärtigen digitalen Dialogzustand bestimmen. Das Fotobearbeitungssystem kann dann das ausgewählte Foto auf der Basis des digitalen Dialogzustands beschneiden und das Dialogzustand-Verfolgungssystem kann anschließend eine digitale Antwort erzeugen, die den Nutzer informiert, dass die Aktion durchgeführt worden ist.
  • Wie es in der 2 ersichtlich ist, bestimmt das Dialogzustand-Verfolgungssystem mit fortschreitendem digitalen Dialog (d.h., wenn der Nutzer aufeinanderfolgende Dialogsegmente bereitstellt) kontinuierlich den gegenwärtigen digitalen Dialogzustand. Beispielsweise wenn der Nutzer verlangt, dass der obere Teil eines Fotos beschnitten werden soll, bestimmt das Dialogzustand-Verfolgungssystem, dass der digitale Dialogzustand 202 ein Thema („Beschneiden“) und einen Ort („oben“) umfasst. Anschließend bestimmt, wenn der Nutzer verlangt, dass das Foto zu einer Schwarz-Weiß-Version geändert werden soll, das Dialogzustand-Verfolgungssystem, dass der digitale Dialogzustand 204 ein neues Thema („Einstellung“) und einen Typ (.Schwarz-Weiß“) umfasst.
  • Wie es in der 2 gezeigt ist, bleibt in einigen Ausführungsformen ein bestimmter digitaler Dialogzustand selbst nach dem Empfangen eines neuen Segments eines digitalen Dialogs gültig (z.B. erzeugt das Dialogzustand-Verfolgungssystem einen digitalen Dialogzustand, der mit dem früheren digitalen Dialogzustand identisch ist). Beispielsweise behält das Dialogzustand-Verfolgungssystem die digitalen Dialogzustände 202, 206 und 208 über eine Mehrzahl von Segmenten eines digitalen Dialogs, die von dem Nutzer empfangen worden sind, bei. Das Dialogzustand-Verfolgungssystem kann jedoch je nach Erfordernis den digitalen Dialogzustand mit jedem neuen Segment eines digitalen Dialogs ändern. Beispielsweise ändert das Dialogzustand-Verfolgungssystem den digitalen Dialogzustand von dem digitalen Dialogzustand 204 zu dem digitalen Dialogzustand 206, sobald der Nutzer das nächste Segment bereitstellt, das eine Änderung des Kontrasts des Fotos verlangt.
  • Wie es vorstehend erwähnt worden ist, nutzt das Dialogzustand-Verfolgungssystem in einigen Ausführungsformen ein Dialogzustand-verfolgendes neuronales Netzwerk zum Erzeugen digitaler Dialogzustände, die zum Erzeugen digitaler Antworten verwendet werden. Insbesondere umfasst das Dialogzustand-verfolgende neuronale Netzwerk in einer oder mehreren Ausführungsform(en) eine dynamische Speichernetzwerkarchitektur. Die 3 zeigt ein Schema der dynamischen Speichernetzwerkarchitektur eines Dialogzustand-verfolgenden neuronalen Netzwerks 300, das durch eine oder mehrere Ausführungsform(en) des Dialogzustand-Verfolgungssystems zum Erzeugen digitaler Dialogzustände genutzt wird. Während die 3 einen breiten Überblick über das Dialogzustand-verfolgende neuronale Netzwerk 300 zeigt, werden mehr Details bezüglich des Netzwerks und dessen Architektur nachstehend unter Bezugnahme auf die 4A bis 6 angegeben.
  • Wie es in der 3 gezeigt ist, kann das Dialogzustand-verfolgende neuronale Netzwerk 300 eine Sequenz von digitalen Dialogsegmenten (z.B. Äußerungen) von ut-w+1 bis ut als Eingabe 302 bei dem Zeitschritt t verwenden, wobei wein Historiefenster darstellt. Mit anderen Worten, ut stellt ein gegenwärtiges Segment eines digitalen Dialogs dar und die Sequenz von ut-w+1 bis ut-1 stellt vorhergehende Segmente eines digitalen Dialogs innerhalb eines ausgewählten Zeitfensters dar, die das dynamische Speichernetzwerk bei der Bestimmung des gegenwärtigen digitalen Dialogzustands nutzt (d.h., des digitalen Dialogzustands bei der Zeit t). In einer oder mehreren Ausführungsform(en) umfasst das Einbeziehen der Sequenz von Segmenten ut-w+1 bis ut-1 als Teil der Eingabe 302 das Verarbeiten des Segments und das Speichern der resultierenden Werte in einem oder mehreren der Speicherplätze vor der Zeit t(z.B. Verarbeiten des Segments ut-1 bei der Zeit t- 1 und Speichern der resultierenden Werte in den entsprechenden Speicherplätzen, usw.). Wie es in der 3 ersichtlich ist und wie es nachstehend detaillierter diskutiert wird, können die Werte eines Speicherplatzes bei der Zeit t- 1 zum Erzeugen der neuen Werte für den Speicherplatz bei der Zeit t verwendet werden. Mit anderen Worten, die Werte, die durch Verarbeiten vorhergehender Segmente des digitalen Dialogs erzeugt werden, können die gegenwärtigen Werte beeinflussen, die durch Verarbeiten des gegenwärtigen Segments eines digitalen Dialogs erhalten worden sind. Folglich wird die Sequenz von Segmenten (z.B. Äußerungen) ut-w+1 bis ut-1 ein Teil der Eingabe 302 zum Erzeugen von Werten für die Speicherplätze (und folglich zum Erzeugen eines digitalen Dialogzustands) bei der Zeit t.
  • Insbesondere nutzt das Dialogzustand-verfolgende neuronale Netzwerk 300 ein eingebettetes neuronales Faltungsnetzwerk zum Erzeugen einer Dialogmerkmaldarstellung für ein gegenwärtiges Dialogsegment. In einer oder mehreren Ausführungsform(en) nutzt das Dialogzustand-verfolgende neuronale Netzwerk 300 das eingebettete neuronale Faltungsnetzwerk zum Erzeugen von Dialogmerkmaldarstellungen, wie es von Y. Kim, „Convolutional Neural Networks for Sentence Classification“ in EMNLP, 2014, beschrieben worden ist, das in dessen Gesamtheit hierin einbezogen ist. Das Dialogzustand-verfolgende neuronale Netzwerk 300 analysiert dann die Dialogmerkmaldarstellung zusammen mit Werten (d.h., latenten Merkmalsvektoren) von den vorhergehenden Speicherplätzen zum Erzeugen neuer Werte für die Speicherplätze. Die Speicherplätze werden dann zum Erzeugen von Zustandsvorhersagen für das gegenwärtige Dialogsegment verwendet.
  • Insbesondere stellt in Bezug auf die Ausführungsform von 3 das Dialogzustand-verfolgende neuronale Netzwerk 300 ein Segment eines digitalen Dialogs mit n Worten als n x k-Eingabematrix durch verknüpfende Vektoren dar, wobei jeder davon eine k-dimensionale Worteinbettung x i k
    Figure DE102019004300A1_0001
    darstellt, die das i-te Wort in dem Segment darstellt. Unter Verwendung von Faltungsschichten (z.B. der Faltungsschichten 304) wendet das Dialogzustand-verfolgende neuronale Netzwerk 300 auf die Eingabematrix einen Filter F k × m
    Figure DE102019004300A1_0002
    mit derselben Breite k wie die Eingabematrix und einer gegebenen Höhe m zum Erzeugen des folgenden Faltungsmerkmals an der i-ten Position an: c i = σ ( F x i : i + m 1 + b )
    Figure DE102019004300A1_0003
  • In der Gleichung 1 stellt x i : j
    Figure DE102019004300A1_0004
    den Teilbereich von der i-ten Zeile zur j-ten Zeile in der Eingabematrix dar, b ∈ ℝ ist ein Tendenzterm und σ stellt eine nicht-lineare Aktivierungsfunktion (z.B. berichtigte lineare Einheiten) dar. Eine Reihe von Faltungsvorgängen unter Verwendung der Gleichung 1, während von der ersten Zeile der Eingabematrix zu der (n- m + 1)-ten Zeile vorgegangen wird, erzeugt eine Faltungsmerkmalskarte c = [ c 1 c n m + 1 ] n m + 1
    Figure DE102019004300A1_0005
    für den Filter F .
    Figure DE102019004300A1_0006
    Dann wird das maximale Element c' = max (c) aus jeder Faltungsmerkmalskarte ausgewählt und als das wichtigste Merkmal für den bestimmten Filter in den Max-Pooling-Schichten (z.B. den Max-Pooling-Schichten 306) ausgewählt.
  • Unter Verwendung der Max-Pooling-Schichten (z.B. der Max-Pooling-Schichten 306) erzeugt das Dialogzustand-verfolgende neuronale Netzwerk 300 eine Dialogmerkmaldarstellung (z.B. den Merkmalsvektor) u l l ,
    Figure DE102019004300A1_0007
    der eine I-dimensionale Vektordarstellung des jeweiligen Segments eines digitalen Dialogs ist, wobei /die Gesamtzahl von Filtern ist, die in den Faltungsschichten verwendet werden. Das Dialogzustand-verfolgende neuronale Netzwerk 300 stellt dann die Dialogmerkmaldarstellung u l
    Figure DE102019004300A1_0008
    für die dynamische Speicherschicht (z.B. die dynamische Speicherschicht 308) bereit, die eine oder mehrere dynamische Speichereinheit(en) zum Erzeugen eines latenten Merkmalsvektors hi für jeden Speicherplatz/nutzt. Die dynamischen Speichereinheiten werden nachstehend unter Bezugnahme auf die 4A bis 6 detaillierter diskutiert. Jeder Speicherplatz j speichert den latenten Merkmalsvektor hi als einen oder mehrere Werte, der oder die eine latente Darstellung kodiert oder kodieren, die einem wichtigen Gegenstand des digitalen Dialogs entspricht. Beispielsweise kann ein erster Speicherplatz Werte speichern, die einem Thema eines digitalen Dialogs entsprechen, und ein zweiter Speicherplatz kann Werte speichern, die einer Aktion entsprechen, die gemäß Anweisungen vorgenommen werden soll, die durch den digitalen Dialog bereitgestellt werden.
  • Wenn ein gegenwärtiges Segment eines digitalen Dialogs verarbeitet wird, weist das Dialogzustand-verfolgende neuronale Netzwerk 300 die Werte, die bisher in jedem Speicherplatz h t 1 i
    Figure DE102019004300A1_0009
    vorliegen, einer entsprechenden dynamischen Speichereinheit zu, welche die bisher vorliegenden Werte dieses Speicherplatzes (zusammen mit der Dialogmerkmaldarstellung u l ,
    Figure DE102019004300A1_0010
    die aus dem gegenwärtigen Segment eines digitalen Dialogs und einem entsprechenden Schlüsselvektor wi erzeugt wird) zum Erzeugen des gegenwärtigen latenten Merkmalsvektors h t i ,
    Figure DE102019004300A1_0011
    der in diesem Speicherplatz gespeichert werden soll, nutzen kann. Durch Zuweisen der bisher vorliegenden Werte jedes Speicherplatzes zu der entsprechenden dynamischen Speichereinheit zum Erzeugen der gegenwärtigen Werte ermöglicht das Dialogzustand-Verfolgungssystem 300 den vorhergehenden Segmenten des digitalen Dialogs, den gegenwärtigen digitalen Dialogzustand zu beeinflussen. Mit anderen Worten, der Einfluss der vorhergehenden Segmente des digitalen Dialogs ut-w+1 bis ut-1 auf den gegenwärtigen digitalen Dialogzustand, die als die vorhergehenden Werte bereitgestellt werden, die durch die Speicherplätze gespeichert sind, werden bei der Bestimmung der gegenwärtigen Werte für die Speicherplätze verwendet. In einer oder mehreren Ausführungsform(en) umfasst das Erzeugen gegenwärtiger Werte für einen Speicherplatz das Überschreiben der vorhergehenden Werte des Speicherplatzes in einem Speicherort, der für diesen Speicherplatz vorgesehen ist. In einigen Ausführungsformen umfasst das Erzeugen der gegenwärtigen Werte das Speichern der gegenwärtigen Werte in einem anderen Speicherort und das Vorsehen dieses neuen Speicherorts als Speicherplatz.
  • Wie es aus der 3 ersichtlich ist, nutzt das Dialogzustand-verfolgende neuronale Netzwerk 300 nach dem Erzeugen der gegenwärtigen Werte für jeden Speicherplatz eine Vorhersageschicht 310 zum Erzeugen eines gegenwärtigen digitalen Dialogzustands. Insbesondere stellt das Dialogzustand-verfolgende neuronale Netzwerk 300 die gegenwärtigen Werte jedes Speicherplatzes, die gegenwärtige Dialogmerkmaldarstellung u t
    Figure DE102019004300A1_0012
    (erzeugt durch Verarbeiten des gegenwärtigen Segments eines digitalen Dialogs ut mittels der Faltungsschichten 304) und die vorhergehende Dialogmerkmaldarstellung u t 1
    Figure DE102019004300A1_0013
    (erzeugt durch Verarbeiten des vorhergehenden Segments eines digitalen Dialogs ut-1 mittels der Faltungsschichten 304) für die Vorhersageschicht 310 zum Erzeugen des digitalen Dialogzustands bereit. In einer oder mehreren Ausführungsform(en) umfasst die Vorhersageschicht 310 einen Softmax-Klassifikator.
  • Wie es erwähnt worden ist, nutzt das Dialogzustand-verfolgende neuronale Netzwerk 300 eine dynamische Speichereinheit, die jedem Speicherplatz zum Erzeugen der gegenwärtigen Werte (d.h., des latenten Merkmalsvektors) für diesen Speicherplatz entspricht. Die 4A bis 6 zeigen mehr Details bezüglich der dynamischen Speichereinheiten, die durch die eine oder die mehreren Ausführungsform(en) genutzt werden. Insbesondere ist in den 4A bis 6 ersichtlich, dass das Dialogzustand-verfolgende neuronale Netzwerk 300 Speichereinheiten nutzt, die einen Gatterverarbeitungsmechanismus umfassen, um zu bestimmen, welche Daten beim Erzeugen der latenten Merkmalsvektoren verwendet werden, die als Werte in den entsprechenden Speicherplätzen gespeichert werden sollen.
  • Die 4A zeigt eine dynamische Speichereinheit 400 mit einem Aktualisierungsgatter 402 gemäß einer oder mehreren Ausführungsform(en). Insbesondere zeigt die 4A die Eingaben und Funktionen, die durch die dynamische Speichereinheit 400 beim Erzeugen von Werten für den j-ten Speicherplatz bei dem i-ten Zeitschritt genutzt werden. Insbesondere stellt θ eine oder mehrere (Aktualisierungs-) Funktion(en) 404 mit trainierbaren Parametern dar, welche die Kollektion von Eingaben als Teil der dynamischen Speichereinheit 400 analysiert oder analysieren. Beispielsweise kann in Bezug auf die 4 θ die Gleichung 2 und/oder trainierbare Parameter zum Erzeugen von Aktualisierungswerten, wie z.B. z i j ,
    Figure DE102019004300A1_0014
    darstellen. In einer oder mehreren Ausführungsform(en), erzeugt das Dialogzustand-Verfolgungssystem 102 Aktualisierungswerte (oder Rücksetzwerte) unter Verwendung einer Aktualisierungsfunktion (oder Rücksetzfunktion), wie sie von M. Henaff, J. Weston, A. Szlam, A. Bordes und Y. LeCun in Tracking the World State With Recurrent Entity Networks, ICLR 2017, CoRR abs/1612.03969. http://arxiv.org/abs/1612.03969, beschrieben worden ist, das in dessen Gesamtheit hierin einbezogen ist.
  • Es sollte beachtet werden, dass der Pfeil 406 darstellt, dass hj als Teil der Kollektion von Eingaben bereitgestellt wird, wenn Werte für den Speicherplatz in dem nächsten Zeitschritt erzeugt werden (d.h., nach dem Empfangen des nächsten Segments eines digitalen Dialogs). Mit anderen Worten, wenn Werte für den j-ten Speicherplatz bei dem i-ten Zeitschritt erzeugt werden, stellt der Pfeil 406 dar, dass die vorhergehenden Werte h i 1 j
    Figure DE102019004300A1_0015
    als Eingabe für die Funktion 404 bereitgestellt werden.
  • Die dynamische Speichereinheit 400 erzeugt die Werte h i j
    Figure DE102019004300A1_0016
    für den j-ten Speicherplatz bei dem i-ten Zeitschritt unter Verwendung des Folgenden: z i j = σ ( u i T w j + u i T h i 1 j )
    Figure DE102019004300A1_0017
    h ˜ i j = tanh ( U h i 1 j + V w j + W u i )
    Figure DE102019004300A1_0018
    h i j = ( 1 z i j ) h i 1 j + z i j h ˜ i j
    Figure DE102019004300A1_0019
  • In den vorstehenden Gleichungen stellt z i j
    Figure DE102019004300A1_0020
    einen Aktualisierungswert dar, wj ist ein trainierbarer Schlüsselvektor, h ˜ i j
    Figure DE102019004300A1_0021
    stellt potenzielle Werte dar und die Parameter U, V, W sind allen Speicherplätzen gemeinsam. Es sollte beachtet werden, dass, wie es in der Gleichung 2 gezeigt ist, der Aktualisierungswert z i j
    Figure DE102019004300A1_0022
    von zwei Termen u i T w j  und  u i T h i 1 j
    Figure DE102019004300A1_0023
    abhängt, die darstellen, dass der Aktualisierungswert z i j
    Figure DE102019004300A1_0024
    durch eine Entsprechung zwischen der Dialogmerkmaldarstellung u i
    Figure DE102019004300A1_0025
    und dem Schlüsselvektor wj bzw. den vorhergehenden Werten h i 1 j
    Figure DE102019004300A1_0026
    des Speicherplatzes eingestellt wird. Mit anderen Worten, die vorhergehenden Werte h i 1 j
    Figure DE102019004300A1_0027
    und der Schlüsselvektor wj wirken als Aktivierungssignal, das einstellt, ob das Dialogsegment den j-ten Speicherplatz „aktiviert“ (d.h., bestimmt, ob der Speicherplatz aktualisiert wird, oder den Grad bestimmt, zu dem der Speicherplatz mit den neuen Informationen aktualisiert wird).
  • Nach dem Erzeugen des Aktualisierungswerts z i j
    Figure DE102019004300A1_0028
    unter Verwendung der Gleichung 2 wendet die dynamische Speichereinheit 400 den Aktualisierungswert auf das Aktualisierungsgatter 402 an. Insbesondere stellt das Aktualisierungsgatter 402 den Grad ein, zu dem die potenziellen Werte h ˜ i j
    Figure DE102019004300A1_0029
    die gegenwärtigen Werte h i j
    Figure DE102019004300A1_0030
    beeinflussen, wie es aus der Gleichung 4 ersichtlich ist. Da die potenziellen Werte h ˜ i j
    Figure DE102019004300A1_0031
    die Dialogmerkmaldarstellung u i
    Figure DE102019004300A1_0032
    einbeziehen, die durch Verarbeiten des gegenwärtigen Segments eines digitalen Dialogs erzeugt wird, wie es in der Gleichung 3 gezeigt ist, stellt das Aktualisierungsgatter 402 den Grad ein, zu dem das gegenwärtige Segment eines digitalen Dialogs die gegenwärtigen Werte h i j
    Figure DE102019004300A1_0033
    beeinflusst. Mit anderen Worten, das Anwenden des Aktualisierungswerts z i j
    Figure DE102019004300A1_0034
    modifiziert den Einfluss des gegenwärtigen Segments eines digitalen Dialogs auf die gegenwärtigen Werte h i j .
    Figure DE102019004300A1_0035
  • Die 4B bis 4C zeigen jeweils ein Schema einer dynamischen Speichereinheit, die der dynamischen Speichereinheit 400 entspricht, wenn das Aktualisierungsgatter 402 gemäß dem Aktualisierungswert z i j
    Figure DE102019004300A1_0036
    positioniert wird. Beispielsweise zeigt die 4B die Speichereinheit 410, die dem Aktualisierungsgatter 402 entspricht, wenn der Aktualisierungswert z i j = 0
    Figure DE102019004300A1_0037
    ist. Wie es in der 4B gezeigt ist und aus der Gleichung 4 ersichtlich ist, erzeugt dann, wenn z i j = 0
    Figure DE102019004300A1_0038
    ist, die Speichereinheit 410 die gegenwärtigen Werte h i 1 j
    Figure DE102019004300A1_0039
    vollständig auf der Basis der vorhergehenden Werte z i j = 0
    Figure DE102019004300A1_0040
    des Speicherplatzes. Mit anderen Worten, wenn z i j = 0
    Figure DE102019004300A1_0041
    ist, aktualisiert die vereinfachte Speichereinheit 410 die Werte des Speicherplatzes nicht mit neuen Informationen, die von dem gegenwärtigen Segment eines digitalen Dialogs erhalten werden.
  • Entsprechend zeigt die 4C die vereinfachte Speichereinheit 420, die einem Positionieren des Aktualisierungsgatters 402 entspricht, wenn der Aktualisierungswert z i j = 1
    Figure DE102019004300A1_0042
    ist. Wie es in der 4C und aus der Gleichung 4 ersichtlich ist, erzeugt dann, wenn z i j = 1
    Figure DE102019004300A1_0043
    ist, die vereinfachte Speichereinheit 420 die gegenwärtigen Werte h i j
    Figure DE102019004300A1_0044
    vollständig auf der Basis der potenziellen Werte h ˜ i j
    Figure DE102019004300A1_0045
    Da die potenziellen Werte h ˜ i j
    Figure DE102019004300A1_0046
    die Kollektion von Eingaben 422 umfassen, aktualisiert die vereinfachte Speichereinheit 420 die Werte des Speicherplatzes auf der Basis der vorhergehenden Werte h i 1 j
    Figure DE102019004300A1_0047
    des Speicherplatzes, des Schlüsselvektors wj, der dem Speicherplatz entspricht, und der Dialogmerkmaldarstellung u i
    Figure DE102019004300A1_0048
    die durch Verarbeiten des gegenwärtigen Segments eines digitalen Dialogs erzeugt wird.
  • Es sollte beachtet werden, dass die 4B bis 4C eine Position des Aktualisierungsgatters 402 zeigen, die den Extremwerten entspricht, die für den Aktualisierungswert z i j
    Figure DE102019004300A1_0049
    verfügbar sind. Wie es durch die Gleichung 2 gezeigt ist, kann z i j
    Figure DE102019004300A1_0050
    jedoch jedweden Wert zwischen 0 und 1 aufweisen. Folglich wendet das Dialogzustand-Verfolgungssystem 102 das Aktualisierungsgatter 402 so an, dass die gegenwärtigen Werte für einen Speicherplatz h i j
    Figure DE102019004300A1_0051
    teilweise auf der Basis sowohl der vorhergehenden Werte des Speicherplatzes h i 1 j
    Figure DE102019004300A1_0052
    als auch der potenziellen Werte h ˜ i j
    Figure DE102019004300A1_0053
    erzeugt werden können.
  • Wie es vorstehend erwähnt worden ist, kann das Dialogzustand-Verfolgungssystem 102 auch eine dynamische Speichereinheit mit einem Rücksetzgatter nutzen. Die 5A zeigt eine dynamische Speichereinheit 500 mit einem Aktualisierungsgatter 502 und einem Rücksetzgatter 504 gemäß einer oder mehrerer Ausführungsform(en). Insbesondere zeigt die 5A die Eingaben und Funktionen, die durch die dynamische Speichereinheit 500 zum Erzeugen von Werten für den j-ten Speicherplatz bei dem i-ten Zeitschritt verwendet werden. Wie es erwähnt worden ist, stellt θ eine oder mehrere Aktualisierungs/Rücksetzfunktion(en) 506 mit trainierbaren Parametern bereit, welche die Kollektion von Eingaben 506 als Teil der dynamischen Speichereinheit 500 analysieren (z.B. die vorstehend diskutierte Gleichung 2 und/oder die nachstehend diskutierte Gleichung 5).
  • Es sollte beachtet werden, dass wie bei dem Pfeil 406 der dynamischen Speichereinheit 400, die in der 4A gezeigt ist, der Pfeil 508 zeigt, dass die vorhergehenden Werte h i 1 j
    Figure DE102019004300A1_0054
    als Teil der Kollektion von Eingaben 506 bereitgestellt werden können, wenn Werte für den j-ten Speicherplatz bei dem i-ten Zeitschritt erzeugt werden; es gibt jedoch einen entscheidenden Unterschied - das Rücksetzgatter 504 steuert, ob (und zu welchem Grad) die vorhergehenden Werte h i 1 j
    Figure DE102019004300A1_0055
    als Teil der Kollektion von Eingaben 506 genutzt werden.
  • Die dynamische Speichereinheit 500 erzeugt die Werte h i j
    Figure DE102019004300A1_0056
    für den j-ten Speicherplatz bei dem i-ten Zeitschritt mit den folgenden zusätzlichen Gleichungen: r i j = σ ( u i T W r w j + u i T U r h i 1 i )
    Figure DE102019004300A1_0057
    h ˜ i j = tahn ( U ( r i j h i 1 j ) + V w j + W u i )
    Figure DE102019004300A1_0058
  • Im Vorstehenden stellt r i j
    Figure DE102019004300A1_0059
    einen Rücksetzwert dar und die Gleichung 6 modifiziert die Gleichung 3, so dass der Rücksetzwert in die potenziellen Werte h ˜ i j
    Figure DE102019004300A1_0060
    einbezogen wird. Wie bei dem Aktualisierungswert z i j
    Figure DE102019004300A1_0061
    in der Gleichung 2 hängt der Rücksetzwert r i j
    Figure DE102019004300A1_0062
    von zwei Termen u i T W r w j  und  u i T U r h i 1 j  ab ,
    Figure DE102019004300A1_0063
    die darstellen, dass der Rücksetzwert r i j
    Figure DE102019004300A1_0064
    durch eine Entsprechung zwischen der Dialogmerkmaldarstellung u i
    Figure DE102019004300A1_0065
    und dem Schlüsselvektor wj bzw. den vorhergehenden Werten h i 1 j
    Figure DE102019004300A1_0066
    des Speicherplatzes gesteuert wird. Ferner sind Wr und Ur trainierbare Umwandlungsparameter.
  • Nach der Erzeugung des Aktualisierungswerts z i j
    Figure DE102019004300A1_0067
    unter Verwendung der Gleichung 2 und des Rücksetzwerts r i j
    Figure DE102019004300A1_0068
    unter Verwendung der Gleichung 5 wendet die dynamische Speichereinheit 500 den Aktualisierungswert z i j
    Figure DE102019004300A1_0069
    bei dem Aktualisierungsgatter 502 an und wendet den Rücksetzwert r i j
    Figure DE102019004300A1_0070
    bei dem Rücksetzgatter 504 an. Insbesondere steuert das Rücksetzgatter 504 den Grad, zu dem die vorhergehenden Werte h i 1 j
    Figure DE102019004300A1_0071
    eines Speicherplatzes die potenziellen Werte h ˜ i j
    Figure DE102019004300A1_0072
    beeinflussen, wie es in der Gleichung 6 ersichtlich ist. Da die vorhergehenden Werte h i 1 j
    Figure DE102019004300A1_0073
    Daten umfassen, die von vorhergehenden Segmenten eines digitalen Dialogs erhalten werden, und die potenziellen Werte h ˜ i j
    Figure DE102019004300A1_0074
    die gegenwärtigen Werte h i j
    Figure DE102019004300A1_0075
    beeinflussen können (abhängig von dem Aktualisierungswert z i j ,
    Figure DE102019004300A1_0076
    wie es in der Gleichung 5 gezeigt ist), steuert die Position des Rücksetzgatters 504 den Grad, zu dem vorhergehende Segmente des digitalen Dialogs die gegenwärtigen Werte h i j
    Figure DE102019004300A1_0077
    beeinflussen. Mit anderen Worten, die Anwendung des Rücksetzwerts r i j
    Figure DE102019004300A1_0078
    modifiziert den Einfluss der vorhergehenden Segmente des digitalen Dialogs auf die gegenwärtigen Werte h i j
    Figure DE102019004300A1_0079
    (d.h., das Rücksetzgatter 504 kann den Speicherplatz durch Ignorieren der vorhergehenden Werte dieses Speicherplatzes „zurücksetzen“).
  • Die 5B bis 5D zeigen jeweils ein Schema einer dynamischen Speichereinheit, die der dynamischen Speichereinheit 500 entspricht, wenn das Aktualisierungsgatter 502 gemäß dem Aktualisierungswert z i j
    Figure DE102019004300A1_0080
    angewandt wird und das Rücksetzgatter 504 gemäß dem Rücksetzwert r i j
    Figure DE102019004300A1_0081
    angewandt wird. Beispielsweise zeigt die 5B die vereinfachte Speichereinheit 510, die dem Aktualisierungsgatter 502 entspricht, wenn der Aktualisierungswert z i j = 0
    Figure DE102019004300A1_0082
    ist. Wie es in der 5B gezeigt ist und aus der Gleichung 4 ersichtlich ist, erzeugt dann, wenn z i j = 0
    Figure DE102019004300A1_0083
    ist, die vereinfachte Speichereinheit 510 die gegenwärtigen Werte h i j
    Figure DE102019004300A1_0084
    vollständig auf der Basis der vorhergehenden Werte h i 1 j
    Figure DE102019004300A1_0085
    des Speicherplatzes. Mit anderen Worten, wenn z i j = 0
    Figure DE102019004300A1_0086
    ist, aktualisiert die vereinfachte Speichereinheit 510 die Werte des Speicherplatzes nicht mit neuen Informationen, die von dem gegenwärtigen Segment eines digitalen Dialogs erhalten worden sind.
  • Die 5C zeigt die vereinfachte Speichereinheit 520 für das Aktualisierungsgatter 502, wenn der Aktualisierungswert z i j = 0
    Figure DE102019004300A1_0087
    ist, und für das Rücksetzgatter 504, wenn der Rücksetzwert r i j = 0
    Figure DE102019004300A1_0088
    ist. Wie es aus der 5C und aus der Gleichung 6 ersichtlich ist, umfassen, wenn r i j = 0
    Figure DE102019004300A1_0089
    ist, die potenziellen Werte h ˜ i j
    Figure DE102019004300A1_0090
    die vorhergehenden Werte h i 1 j
    Figure DE102019004300A1_0091
    nicht. Demgemäß umfasst die Kollektion von Eingaben 522, die zum Erzeugen der potenziellen Werte h ˜ i j
    Figure DE102019004300A1_0092
    verwendet werden, den Schlüsselvektor wj, der dem Speicherplatz entspricht, und die Dialogmerkmaldarstellung u i ,
    Figure DE102019004300A1_0093
    die durch Verarbeiten des gegenwärtigen Segments eines digitalen Dialogs erzeugt wird. Mit anderen Worten, der Speicherplatz wird „zurückgesetzt“ (z.B. berücksichtigt er nicht die vorhergehenden Werte h i 1 j
    Figure DE102019004300A1_0094
    ).
  • Die 5D zeigt die vereinfachte Speichereinheit 530, die einer Positionierung des Aktualisierungsgatters entspricht, wenn der Aktualisierungswert z i j = 1
    Figure DE102019004300A1_0095
    ist, und einer Positionierung des Rücksetzgatters 504 entspricht, wenn der Rücksetzwert r i j = 1
    Figure DE102019004300A1_0096
    ist. Wie es in der 5D und aus der Gleichung 6 ersichtlich ist, umfassen, wenn r i j = 1
    Figure DE102019004300A1_0097
    ist, die potenziellen Werte h ˜ i j
    Figure DE102019004300A1_0098
    die vorhergehenden Werte h i 1 j .
    Figure DE102019004300A1_0099
    Demgemäß umfasst die Kollektion von Eingaben 532, die zum Erzeugen der potenziellen Werte h ˜ i j
    Figure DE102019004300A1_0100
    verwendet wird, die vorhergehenden Werte h i 1 j
    Figure DE102019004300A1_0101
    des Speicherplatzes, den Schlüsselvektor wj, der dem Speicherplatz entspricht, und die Dialogmerkmaldarstellung u i ,
    Figure DE102019004300A1_0102
    die durch Verarbeiten des gegenwärtigen Segments eines digitalen Dialogs erzeugt wird.
  • Es sollte beachtet werden, dass die 5B bis 5D das Aktualisierungsgatter 502 und das Rücksetzgatter 504 in Bezug auf Extremwerte für den Aktualisierungswert z i j
    Figure DE102019004300A1_0103
    bzw. den Rücksetzwert r i j
    Figure DE102019004300A1_0104
    zeigen. Wie es durch die Gleichungen gezeigt ist, können z i j  und  r i j
    Figure DE102019004300A1_0105
    jedoch jedweden Wert zwischen 0 und 1 aufweisen. Folglich können das Aktualisierungsgatter 502 und das Rücksetzgatter 504 so positioniert werden, dass die gegenwärtigen Werte für einen Speicherplatz h i j
    Figure DE102019004300A1_0106
    teilweise auf der Basis sowohl der vorhergehenden Werte des Speicherplatzes h i 1 j
    Figure DE102019004300A1_0107
    als auch der potenziellen Werte h ˜ i j
    Figure DE102019004300A1_0108
    erzeugt werden können.
  • Wie es vorstehend diskutiert worden ist, kann das digitale Zustandsverfolgungssystem 102 auch dynamische Speichereinheiten nutzen, die platzübergreifende Interaktionen nutzen. Beispielsweise kann das digitale Zustandsverfolgungssystem 102 platzübergreifende Interaktion-Rücksetzgatter und platzübergreifende Interaktion-Aktualisierungsgatter nutzen, die Interaktionen zwischen Speicherplätzen beim Anwenden der jeweiligen Gatterverarbeitungsmechanismen berücksichtigen. Die 6 zeigt eine dynamische Speichereinheit 600 mit einem platzübergreifende Interaktion-Aktualisierungsgatter 602 und einem platzübergreifende Interaktion-Rücksetzgatter 604 gemäß einer oder mehrerer Ausführungsform(en). Insbesondere zeigt die 6 die Eingaben und Funktionen, die durch die dynamische Speichereinheit 600 beim Erzeugen von Werten für den j-en Speicherplatz bei dem i-ten Zeitschritt verwendet werden, wobei θ eine oder mehrere (Aktualisierungs/Rücksetz-) Funktion(en) 606 mit trainierbaren Parametern darstellt, welche die Kollektion von Eingaben als Teil der dynamischen Speichereinheit 600 analysieren. Die dynamische Speichereinheit 600 arbeitet entsprechend wie die dynamische Speichereinheit 500 von 5A, mit der Ausnahme, dass die Gleichung 2 bzw. die Gleichung 5 in der nachstehenden Weise modifiziert sind. z i j = σ ( k a z k j u i T w k + β z k j u i T h i 1 k )
    Figure DE102019004300A1_0109
    r i j = σ ( k a r k j u i T w k + β r k j u i T h i 1 k )
    Figure DE102019004300A1_0110
  • Wie es in der Gleichung 7 gezeigt ist, stellt z i j
    Figure DE102019004300A1_0111
    einen platzübergreifende Interaktion-Aktualisierungswert dar, der das platzübergreifende Interaktion-Aktualisierungsgatter 602 steuert. Entsprechend stellt, wie es in der Gleichung 8 gezeigt ist, r i j
    Figure DE102019004300A1_0112
    einen platzübergreifenden Interaktion-Rücksetzwert dar, der das platzübergreifende Interaktion-Rücksetzgatter 604 steuert. Die Koeffizienten α z k j , β z k j , α r k j  und  β r k j
    Figure DE102019004300A1_0113
    sind Parameter, die zum Bereitstellen der Korrelationen zwischen den j-ten und den k-ten Speicherplätzen trainiert sind. Wie es durch die Gleichungen 7 und 8 und die 6 gezeigt ist, tragen die Schlüsselvektoren [w1 ... wm] und die verborgenen Zustände [h1 ... hm] jedes Speicherplatzes zur Erzeugung der gegenwärtigen Werte h i j
    Figure DE102019004300A1_0114
    für den j-ten Speicherplatz bei.
  • Wie es vorstehend diskutiert worden ist, erzeugt das Dialogzustand-verfolgende neuronale Netzwerk nach dem Erzeugen gegenwärtiger Werte für jeden Speicherplatz einen digitalen Dialogzustand. Folglich kann das Dialogzustand-Verfolgungssystem ein Dialogzustand-verfolgendes neuronales Netzwerk zum Erzeugen digitaler Dialogzustände nutzen, die Segmenten von digitalen Dialogen entsprechen. Die Algorithmen und Vorgänge, die in Bezug auf die 3 bis 6 beschrieben sind, können die entsprechende Struktur zum Durchführen eines Schritts zum Nutzen des Dialogzustand-verfolgenden neuronalen Netzwerks umfassen, welches das dynamische Speichernetzwerk zum Erzeugen eines digitalen Dialogzustands für das Dialogsegment umfasst. Zusätzlich können die neuronale Netzwerkarchitektur und die dynamische Speichereinheit-Architekturen, die in Bezug auf die 3 bis 6 beschrieben sind, die entsprechende Struktur zum Durchführen eines Schritts zum Nutzen des Dialogzustand-verfolgenden neuronalen Netzwerks umfassen, welches das dynamische Speichernetzwerk zum Erzeugen eines digitalen Dialogzustands für das Dialogsegment umfasst.
  • Unter Verwendung des erzeugten digitalen Dialogzustands kann das Dialogzustand-Verfolgungssystem eine digitale Antwort auf ein gegenwärtiges Segment eines digitalen Dialogs erzeugen. Die 7 zeigt ein Blockdiagramm des Dialogzustand-Verfolgungssystems zum Erzeugen einer digitalen Antwort auf ein gegenwärtiges Segment eines digitalen Dialogs. Wie es in der 7 gezeigt ist, stellt das Dialogzustand-Verfolgungssystem ein Segment eines digitalen Dialogs 702 für ein trainiertes Dialogzustand-verfolgendes neuronales Netzwerk 704 bereit. Insbesondere umfasst das Segment eines digitalen Dialogs 702 eine Aussage gefolgt von einer Aktionsanfrage. Nach dem Empfangen des Segments eines digitalen Dialogs 702 erzeugt das trainierte Dialogzustand-verfolgende neuronale Netzwerk 704 einen digitalen Dialogzustand 706. Insbesondere charakterisiert der digitale Dialogzustand 706, der in der 7 gezeigt ist, das gegenwärtige Thema, den gegenwärtigen Typ und das gegenwärtige Ziel des digitalen Dialogs. Das Dialogzustand-Verfolgungssystem stellt dann den digitalen Dialogzustand 706 für einen digitale Antwort-Generator 708 bereit, der die digitale Antwort 710 bereitstellt. Beispielsweise kann der digitale Antwort-Generator 708 eine natürliche Spracherzeugung (z.B. einen Daten-zu-Text-Generator) zum Bestimmen des Inhalts, der Organisation und der lexikalischen Darstellung der digitalen Antwort 710 nutzen. Ferner kann der digitale Antwort-Generator 708 eine Text-zu-Sprache-Synthese (z.B. eine Verknüpfungssynthese oder eine Formantsynthese) zum Erzeugen einer Tondarstellung der digitalen Antwort 710 nutzen. Insbesondere umfasst die digitale Antwort 710 eine Aussage, dass die Aktion, die durch das Segment eines digitalen Dialogs angefragt worden ist, durchgeführt worden ist. In einer oder mehreren Ausführungsform(en) umfasst die digitale Antwort eine Tonantwort.
  • Wie es vorstehend erwähnt worden ist, nutzt das Dialogzustand-Verfolgungssystem ein trainiertes Dialogzustand-verfolgendes neuronales Netzwerk beim Erzeugen digitaler Dialogzustände. Die 8 zeigt ein Blockdiagramm des Dialogzustand-Verfolgungssystems, das ein Dialogzustand-verfolgendes neuronales Netzwerk gemäß einer oder mehrerer Ausführungsform(en) trainiert. Wie es in der 8 gezeigt ist, trainiert das Dialogzustand-Verfolgungssystem das Dialogzustand-verfolgende neuronale Netzwerk 804 unter Verwendung von digitalen Trainingsdialogen 802. Insbesondere umfasst jeder Dialog der digitalen Trainingsdialoge 802 einen Satz von Trainingssegmenten. Beispielsweise kann ein digitaler Trainingsdialog ein erstes Trainingssegment und ein zweites Trainingssegment umfassen.
  • Ferner umfasst, wie es in der 8 gezeigt ist, das Dialogzustand-verfolgende neuronale Netzwerk 804 eine dynamische Speichernetzwerkarchitektur wie z.B. die dynamische Speichemetzwerkarchitektur, die in Bezug auf die 3 bis 6 beschrieben ist. Das Dialogzustand-Verfolgungssystem stellt die digitalen Trainingsdialoge 802 für das Dialogzustand-verfolgende neuronale Netzwerk 804 bereit und das Dialogzustand-verfolgende neuronale Netzwerk 804 erzeugt einen vorhergesagten Dialogzustand 806. Insbesondere stellt das Dialogzustand-Verfolgungssystem ein Trainingssegment eines digitalen Trainingsdialogs bereit und das Dialogzustand-verfolgende neuronale Netzwerk erzeugt einen vorhergesagten Dialogzustand, der diesem bestimmten Trainingssegment entspricht. Beispielsweise kann das Dialogzustand-Verfolgungssystem ein erstes Trainingssegment bereitstellen und das Dialogzustand-verfolgende neuronale Netzwerk 804 kann einen ersten vorhergesagten Dialogzustand erzeugen, der dem ersten Trainingssegment entspricht. Anschließend kann das Dialogzustand-Verfolgungssegment ein zweites Trainingssegment bereitstellen und das Dialogzustand-verfolgende neuronale Netzwerk 804 kann einen zweiten vorhergesagten Dialogzustand erzeugen, der dem zweiten Trainingssegment entspricht. Beim Erzeugen des vorhergesagten Dialogzustands 806 verarbeitet das Dialogzustand-verfolgende neuronale Netzwerk 804 jedes Trainingssegment gemäß den Vorgängen, die vorstehend in Bezug auf die 3 bis 6 diskutiert worden sind.
  • Wie es in der 8 gezeigt ist, vergleicht das Dialogzustand-Verfolgungssystem dann den vorhergesagten Dialogzustand 806 mit einem Basiswahrheit-Dialogzustand 808. Insbesondere stellt der Basiswahrheit-Dialogzustand 808 den wahren Dialogzustand für den bestimmten digitalen Trainingsdialog nach dem bestimmten Trainingssegment bereit, das als letztes durch das Dialogzustand-verfolgende neuronale Netzwerk 804 verarbeitet worden ist. Beispielsweise kann der Basiswahrheit-Dialogzustand 808 eine Anmerkung umfassen, die einen vorgegebenen Zustand des digitalen Trainingsdialogs nach dem bestimmten Trainingssegment bereitstellt (d.h., eine Anmerkung durch einen Administrator des Dialogzustand-Verfolgungssystems).
  • Wie es in der 8 gezeigt ist, vergleicht das Dialogzustand-Verfolgungssystem den vorhergesagten Dialogzustand 806 mit dem Basiswahrheit-Dialogzustand 808 durch Anwenden einer Verlustfunktion 810. Die Verlustfunktion 810 bestimmt die Kosten (d.h., den Fehler), die sich aus dem Dialogzustand-verfolgenden neuronalen Netzwerk 804 ergeben, auf der Basis der Differenz zwischen einem abgeschätzten Wert (d.h., dem vorhergesagten Dialogzustand 806) und dem wahren Wert (d.h., dem Basiswahrheit-Dialogzustand 808). Das Dialogzustand-Verfolgungssystem kann verschiedene Verlustfunktionen nutzen, einschließlich eine quadratische Fehlerverlustfunktion, eine 0-1-Indikatorfunktion, eine Kreuzentropie-Verlustfunktion oder eine L2-Verlustfunktion.
  • Das Dialogzustand-Verfolgungssystem kann das Dialogzustand-verfolgende neuronale Netzwerk 804 auf der Basis des bestimmten Verlusts trainieren. Beispielsweise führt das Dialogzustand-Verfolgungssystem in einer oder mehreren Ausführungsform(en) den bestimmten Verlust zu dem Dialogzustand-verfolgenden neuronalen Netzwerk zum Modifizieren von dessen Parametern zurück (wie es durch die gestrichelte Linie 812 angegeben ist). In einer oder mehreren Ausführungsform(en) modifiziert das Dialogzustand-Verfolgungssystem die Parameter jeder Schicht des Dialogzustand-verfolgenden neuronalen Netzwerks 804 (z.B. trainierbare Parameter, die den Aktualisierungsgattern und/oder Rücksetzgattern entsprechen, wie z.B. α z k j , β z k j , α r k j  und  β r k j
    Figure DE102019004300A1_0115
    ). Folglich erhöht das Bild-Neubeleuchtungssystem („image relighting system“) nach und nach die Genauigkeit des Dialogzustand-verfolgenden neuronalen Netzwerks 804 (z.B. durch einen Gradientenanstieg oder Gradientenabfall). Wie es gezeigt ist, kann das Dialogzustand-Verfolgungssystem auf diese Weise das trainierte Dialogzustand-verfolgende neuronale Netzwerk 814 erzeugen.
  • In einer oder mehreren Ausführungsform(en) kann das Dialogzustand-Verfolgungssystem das eingebettete neuronale Faltungsnetzwerk separat trainieren. Insbesondere kann das Dialogzustand-Verfolgungssystem das eingebettete neuronale Faltungsnetzwerk vor dem Trainieren des Dialogzustand-verfolgenden neuronalen Netzwerks 804 in einer überwachten oder nicht-überwachten Weise trainieren. Zur Veranschaulichung kann das Dialogzustand-Verfolgungssystem das neuronale Faltungsnetzwerk zum Kodieren von digitalen Dialogen auf der Basis von Basiswahrheit-Daten oder durch Nutzen eines nicht-überwachten Trainingsansatzes (z.B. eines Autokodierers oder eines nachteiligen neuronalen Netzwerks) trainieren.
  • Folglich kann das Dialogzustand-Verfolgungssystem ein Dialogzustand-verfolgendes neuronales Netzwerk zum Erzeugen digitaler Dialogzustände entsprechend Segmenten eines digitalen Dialogs trainieren. Die Algorithmen und Vorgänge, die in Bezug auf die 3 bis 6 und die 8 beschrieben sind, können die entsprechende Struktur zum Durchführen eines Schritts zum Trainieren eines Dialogzustand-verfolgenden neuronalen Netzwerks umfassen, das ein dynamisches Speichernetzwerk zum Erzeugen digitaler Dialogzustände umfasst. Zusätzlich können die neuronales Netzwerk-Architektur und die dynamische Speichereinheit-Architekturen, die in Bezug auf die 3 bis 6 beschrieben sind, die entsprechende Struktur zum Trainieren eines Dialogzustand-verfolgenden neuronalen Netzwerks umfassen, das ein dynamisches Speichernetzwerk zum Erzeugen digitaler Dialogzustände umfasst.
  • Wie es vorstehend erwähnt worden ist, erzeugt das Dialogzustand-Verfolgungssystem unter Verwendung eines Dialogzustand-verfolgenden neuronalen Netzwerks mit einer dynamischen Speichernetzwerkarchitektur genaue und effiziente digitale Dialogzustände, was zu besseren digitalen Antworten auf Dialogsegmente führt. Forscher haben eine Untersuchung zum Bestimmen der Genauigkeit und Effektivität von einer oder mehreren Ausführungsform(en) des Dialogzustand-Verfolgungssystems durchgeführt.
  • Die Forscher haben sechs neuronales Netzwerk-Modelle bewertet. Insbesondere haben die Forscher drei verschiedene Ausführungsformen des Dialogzustand-Verfolgungssystems (d.h., eine Ausführungsform mit dynamischen Speichereinheiten mit einem einzelnen Gatter, eine Ausführungsform mit dynamischen Speichereinheiten mit sowohl einem Rücksetz- als auch einem Aktualisierungsgatter, und eine Ausführungsform mit dynamischen Speichereinheiten mit platzübergreifende Interaktion-Gattern) und drei neuronales Netzwerk-Modelle unter Verwendung anderer neuronales Netzwerk-Architekturen (d.h., CNN, RCNN und RCNN mit GRUs) bewertet. Die Ausführungsform des Dialogzustand-Verfolgungssystems mit dem einzelnen Gatter und die Ausführungsform mit sowohl dem Rücksetz- als auch dem Aktualisierungsgatter wurden so trainiert, dass sie jeweils fünf Speicherplätze aufweisen. Die Ausführungsform mit den platzübergreifende Interaktion-Gattern wurde so trainiert, dass sie zehn Speicherplätze aufwies.
  • Die 9 zeigt eine Tabelle, welche die Ergebnisse der Untersuchung wiedergibt. Höhere Genauigkeit (P)-, Wiederaufruf (R)- und F-Maß-Bewertungen zeigen eine bessere Themavorhersage, während niedrigere Pk- und WindowDiff-Werte genauere Segmentierungen angeben. Die beste Bewertung für jedes Maß ist im Fettdruck hervorgehoben. Wie es in der 9 gezeigt ist, übertrafen die verschiedenen Ausführungsformen des Dialogzustand-Verfolgungssystems die anderen neuronales Netzwerk-Modelle sowohl bei der Thema-Vorhersage als auch bei der Thema-Segmentierung. Insbesondere war jede der Verbesserungen der F-Maß-Metrik durch die verschiedenen Ausführungsformen des Dialogzustand-Verfolgungssystems statistisch signifikant (p < 0,001). Zusätzlich waren auch die Verbesserungen bei der Segmentierung statistisch signifikant (p < 0,05), ausgenommen die Verbesserung in Bezug auf das CNN-Modell.
  • Wie es aus der Tabelle von 9 ersichtlich ist, führten alle getesteten Ausführungsformen des Dialogzustand-Verfolgungssystems zu Verbesserungen in Bezug auf die Thema-Vorhersage und die Segmentierungsgenauigkeit. Insbesondere führte die Ausführungsform des Dialogzustand-Verfolgungssystems mit den platzübergreifende Interaktion-Gattern zu den am meisten verbesserten Bewertungen. Diese Ausführungsform wies bei jedem Maß mit Ausnahme des Wiederaufrufens eine bessere Leistung auf als die anderen getesteten Modelle. Insbesondere bestanden die Verbesserungen des F-Maßes die statistischen Signifikanztests bei p = 0,05 von den anderen Ausführungsformen des Dialogzustand-Verfolgungssystems und p = 0,001 von den CNN- und RCNN-Basiswerten. Die Differenzen bei den Segmentierungsleistungen waren ebenfalls bei beiden Metriken signifikant (p < 0,001). Folglich zeigt die Tabelle von 9 die verbesserte Genauigkeit des Dialogzustand-Verfolgungssystems.
  • Unter Bezugnahme auf die 10 werden weitere Informationen bezüglich der Implementierung des Dialogzustand-Verfolgungssystems angegeben. Insbesondere zeigt die 10 ein schematisches Diagramm einer beispielhaften Systemumgebung („Umgebung“) 1000, in der ein Dialogzustand-Verfolgungssystem 102 implementiert werden kann. Wie es in der 10 gezeigt ist, kann die Umgebung 1000 (einen) Server 1002, ein Netzwerk 1008, Client-Vorrichtungen 1010a bis 1010n und Nutzer 1014a bis 1014n umfassen.
  • Obwohl die 10 eine bestimmte Anzahl von Client-Vorrichtungen zeigt, sollte beachtet werden, dass die Umgebung 1000 jedwede Anzahl von Rechenvorrichtungen (weniger oder mehr als gezeigt) umfassen kann. Entsprechend sind, obwohl die 10 eine bestimmte Anordnung des oder der Server(s) 1002, des Netzwerks 1008, der Client-Vorrichtungen 1010a bis 1010n und der Nutzer 1014a bis 1014n zeigt, verschiedene zusätzliche Anordnungen möglich.
  • Der oder die Server 1002, das Netzwerk 1008, die Client-Vorrichtungen 1010a bis 1010n und die Nutzer 1014a bis 1014n können entweder direkt oder indirekt kommunikativ miteinander gekoppelt sein (z.B. durch das Netzwerk 1008, das nachstehend in Bezug auf die 13 detaillierter diskutiert wird). Darüber hinaus kann oder können der oder die Server 1002 und die Client-Vorrichtungen 1010a bis 1010n jedwede Art von Rechenvorrichtung umfassen (einschließlich eine oder mehrere Rechenvorrichtung(en), die nachstehend in Bezug auf die 13 detaillierter diskutiert wird oder werden).
  • Wie es vorstehend erwähnt worden ist, umfasst die Umgebung 1000 den oder die Server 1002. Der oder die Server 1002 kann oder können jedwede Art von Daten, einschließlich die digitalen Dialoge und digitalen Antworten, erzeugen, speichern, empfangen und/oder senden bzw. übertragen. Beispielsweise kann oder können der oder die Server 1002 ein Segment eines digitalen Dialogs von der Client-Vorrichtung 1010a empfangen und eine digitale Antwort zurück zu der Client-Vorrichtung 1010a senden. In einer oder mehreren Ausführungsform(en), umfasst oder umfassen der oder die Server 1002 einen Datenserver. Der oder die Server 1002 kann oder können auch einen Kommunikationsserver oder einen Webhosting-Server umfassen.
  • Wie es in der 10 gezeigt ist, kann oder können der oder die Server 1002 das künstliche Intelligenz-Kommunikationssystem 1004 umfassen. Insbesondere kann das künstliche Intelligenz-Kommunikationssystem 1004 digitale Kommunikationsfunktionen durchführen. Beispielsweise kann das künstliche Intelligenz-Kommunikationssystem ein Segment eines digitalen Dialogs von dem Nutzer 1014a mittels der Client-Vorrichtung 1010a empfangen. Das künstliche Intelligenz-Kommunikationssystem 1004 kann anschließend das Segment eines digitalen Dialogs dem Dialogzustand-Verfolgungssystem 102 bereitstellen und die resultierende digitale Antwort für eine Kommunikation zurück zu dem Nutzer 1014a bereitstellen. Insbesondere kann das künstliche Intelligenz-Kommunikationssystem 1004 bei der Erzeugung der digitalen Antwort für eine Kommunikation eine natürliche Spracherzeugung und eine Text-zu-Sprache-Synthesefunktionalität bei der Erzeugung der digitalen Antwort für eine Kommunikation einsetzen.
  • Zusätzlich kann oder können der oder die Server 1002 das Dialogzustand-Verfolgungssystem 102 umfassen. Insbesondere nutzt das Dialogzustand-Verfolgungssystem 102 in einer oder mehreren Ausführungsform(en) den oder die Server 1002 zum Erzeugen digitaler Antworten auf Segmente eines digitalen Dialogs. Beispielsweise kann das Dialogzustand-Verfolgungssystem 102 den oder die Server 1002 zum Empfangen eines Segments eines digitalen Dialogs und dann Erzeugen einer digitalen Antwort nutzen.
  • Beispielsweise kann oder können der oder die Server in einer oder mehreren Ausführungsform(en) einen digitalen Dialog empfangen, der verschiedene Segmente eines digitalen Dialogs umfasst. Der oder die Server 1002 kann oder können ein erstes Segment eines digitalen Dialogs zum Erzeugen eines ersten digitalen Dialogzustands verarbeiten und dann eine digitale Antwort auf das erste Segment auf der Basis des ersten digitalen Dialogzustands erzeugen. Der oder die Server 1002 kann oder können ein zweites Segment eines digitalen Dialogs zum Erzeugen eines zweiten digitalen Dialogzustands verarbeiten und dann eine digitale Antwort auf das zweite Segment auf der Basis des zweiten digitalen Dialogzustands erzeugen. Insbesondere kann oder können der oder die Server 1002 jedes Segment eines digitalen Dialogs zum Erzeugen eines entsprechenden digitalen Dialogzustands verarbeiten, und zwar unter Verwendung eines Dialogzustand-verfolgenden neuronalen Netzwerks mit einer dynamischen Speichernetzwerkarchitektur mit einer Mehrzahl von Speicherplätzen und entsprechenden Aktualisierungs- und Rücksetzgattern.
  • Wie es durch die vorhergehenden beispielhaften Ausführungsformen gezeigt worden ist, kann das Dialogzustand-Verfolgungssystem 102 als Ganzes oder teilweise durch die einzelnen Elemente der Umgebung 1000 implementiert werden. Obwohl die 10 das Dialogzustand-Verfolgungssystem 102 zeigt, das bezüglich des oder der Server(s) implementiert ist, sollte beachtet werden, dass Komponenten des Dialogzustand-Verfolgungssystems 102 in jedweder der Komponenten der Umgebung 1000 implementiert werden können. Die Komponenten des Dialogzustand-Verfolgungssystems 102 werden nachstehend bezüglich der 11 detaillierter diskutiert.
  • In einer oder mehreren Ausführungsform(en) umfassen die Client-Vorrichtungen 1010a bis 1010n Computervorrichtungen, die es den Nutzern der Vorrichtungen (z.B. den Nutzern 1014a bis 1014n) ermöglichen, eine digitale Kommunikation zu senden und zu empfangen. Beispielsweise können die Client-Vorrichtungen 1010a bis 1010n Smartphones, Tablets, Desktopcomputer, Laptopcomputer oder andere elektronische Vorrichtungen umfassen. Die Client-Vorrichtungen 1010a bis 1010n können eine oder mehrere Anwendung(en) (z.B. die Dialogzustand-Verfolgungsanwendung 1012) umfassen, die es den Nutzern 1014a bis 1014n ermöglicht oder ermöglichen, eine digitale Kommunikation zu senden und zu empfangen. Beispielsweise kann die Dialogzustand-Verfolgungsanwendung 1012 eine Software-Anwendung umfassen, die auf den Client-Vorrichtungen 1010a bis 1010n installiert ist. Zusätzlich oder alternativ kann die Dialogzustand-Verfolgungsanwendung 1012 eine Software-Anwendung umfassen, die auf dem oder den Server(n) 1002 gehostet ist, auf den oder die durch die Client-Vorrichtungen 1010a bis 1010n durch eine andere Anwendung, wie z.B. einen Webbrowser, zugegriffen werden kann.
  • Unter Bezugnahme auf die 11 werden zusätzliche Details bezüglich verschiedener Komponenten und Fähigkeiten des Dialogzustand-Verfolgungssystems 102 angegeben. Insbesondere zeigt die 11 das Dialogzustand-Verfolgungssystem 102, das durch die Rechenvorrichtung 1102 implementiert wird (z.B. den oder die Server 1002 und/oder die Client-Vorrichtungen 1010a bis 1010n, die vorstehend unter Bezugnahme auf die 10 diskutiert worden sind). Zusätzlich ist das Dialogzustand-Verfolgungssystem 102 auch Teil des künstliche Intelligenz-Kommunikationssystems 1004. Wie es gezeigt ist, kann das Dialogzustand-Verfolgungssystem 102 ein neuronales Netzwerk-Trainingsmodul 1104, eine neuronales Netzwerk-Anwendungsverwaltungseinrichtung 1106, einen digitale Antwort-Generator 1108 und einen Datenspeicher 1110 (der die digitalen Trainingsdialoge 1112 und das neuronale Netzwerk 1114 umfasst) umfassen, ist jedoch nicht darauf beschränkt.
  • Wie es vorstehend erwähnt und in der 11 gezeigt ist, umfasst das Dialogzustand-Verfolgungssystem 102 das neuronales Netzwerk-Trainingsmodul 1104. Insbesondere trainiert das neuronales Netzwerk-Trainingsmodul 1104 ein Dialogzustand-verfolgendes neuronales Netzwerk zum Erzeugen von digitalen Dialogzuständen, die zum Erzeugen von digitalen Antworten auf Segmente eines digitalen Dialogs verwendet werden. Beispielsweise trainiert das neuronales Netzwerk-Trainingsmodul 1104 das Dialogzustand-verfolgende neuronale Netzwerk 804 unter Verwendung der digitalen Trainingsdialoge 802, wie es vorstehend in Bezug auf die 8 diskutiert worden ist.
  • Wie es in der 11 gezeigt ist, umfasst das Dialogzustand-Verfolgungssystem 102 auch die neuronales Netzwerk-Anwendungsverwaltungseinrichtung 1106. Insbesondere nutzt die neuronales Netzwerk-Anwendungsverwaltungseinrichtung 1106 das Dialogzustand-verfolgende neuronale Netzwerk, das durch das neuronales Netzwerk-Trainingsmodul 1104 trainiert wird. Beispielsweise wendet die neuronales Netzwerk-Anwendungsverwaltungseinrichtung 1106 einen digitalen Dialog für das trainierte Dialogzustand-verfolgende neuronale Netzwerk zum Erzeugen digitaler Dialogzustände für jedes Segment des digitalen Dialogs an, die zum weiteren Erzeugen von digitalen Antworten auf diese Segmente verwendet werden.
  • Zusätzlich umfasst, wie es in der 11 gezeigt ist, das Dialogzustand-Verfolgungssystem 102 den digitale Antwort-Generator 1108. Insbesondere erzeugt der digitale Antwort-Generator 1108 digitale Antworten, die auf Segmente eines digitalen Dialogs antworten. Beispielsweise kann der digitale Antwort-Generator 1108 die digitalen Dialogzustände, die durch die neuronales Netzwerk-Anwendungsverwaltungseinrichtung 1106 erzeugt werden, zum Erzeugen der digitalen Antworten für jedes Segment der entsprechenden digitalen Dialoge nutzen. Beispielsweise kann der digitale Antwort-Generator 1108 einen ersten digitalen Dialogzustand, der durch Verarbeiten eines ersten Segments eines digitalen Dialogs erzeugt wird, zum Erzeugen einer ersten digitalen Antwort nutzen. Der digitale Antwort-Generator 1108 kann dann einen zweiten digitalen Dialogzustand, der durch Verarbeiten eines zweiten Segments des digitalen Dialogs erzeugt wird, zum Erzeugen einer zweiten digitalen Antwort nutzen.
  • Ferner umfasst, wie es in der 11 gezeigt ist, das Dialogzustand-Verfolgungssystem 102 den Datenspeicher 1110. Insbesondere umfasst der Datenspeicher 1110 digitale Trainingsdialoge 1112 und das neuronale Netzwerk 1114. Die digitalen Trainingsdialoge 1112 speichern eine Mehrzahl von digitalen Trainingsdialogen, die den Satz von Trainingssegmenten umfassen. Das neuronales Netzwerk-Trainingsmodul 1104 kann die Mehrzahl von digitalen Trainingsdialogen von digitalen Trainingsdialogen 1112 erhalten, wenn das Dialogzustand-verfolgende neuronale Netzwerk trainiert wird. Das neuronale Netzwerk 1114 speichert das Dialogzustand-verfolgende neuronale Netzwerk, das durch das neuronales Netzwerk-Trainingsmodul 1104 trainiert wird und durch die neuronales Netzwerk-Anwendungsverwaltungseinrichtung 1106 zum Erzeugen digitaler Dialogzustände durch Verarbeiten von Segmenten eines digitalen Dialogs angewandt wird.
  • Die Komponenten 1104 bis 1114 und deren entsprechenden Elemente können Software, Hardware oder beides umfassen. Beispielsweise können die Komponenten 1104 bis 1114 und deren entsprechenden Elemente eine oder mehrere Anweisung(en) umfassen, die auf einem computerlesbaren Speichermedium gespeichert sind und durch Prozessoren von einer oder mehreren Rechenvorrichtung(en) ausführbar sind. Die Komponenten 1104 bis 1114 und deren entsprechenden Elemente können Hardware umfassen, wie z.B. eine spezielle Verarbeitungsvorrichtung zum Ausführen einer bestimmten Funktion oder Gruppe von Funktionen. Zusätzlich oder alternativ können die Komponenten 1104 bis 1114 und deren entsprechenden Elemente eine Kombination von computerausführbaren Anweisungen und Hardware umfassen.
  • Ferner können die Komponenten 1104 bis 1114 des Dialogzustand-Verfolgungssystems 102 beispielsweise als eine oder mehrere eigenständige Anwendung(en), als ein oder mehrere Modul(e) einer Anwendung, als ein oder mehrere Plug-in(s), als eine oder mehrere Bibliotheksfunktion(en) oder Funktionen, die durch andere Anwendungen aufgerufen werden können, und/oder als Cloud-Computingmodell implementiert werden. Folglich können die Komponenten 1104 bis 1114 des Dialogzustand-Verfolgungssystems 102 als eigenständige Anwendung implementiert werden, wie z.B. eine Desktop-Anwendung oder mobile Anwendung. Ferner können die Komponenten 1104 bis 1114 des Dialogzustand-Verfolgungssystems 102 als eine oder mehrere webbasierte Anwendung(en), die auf einem Remoteserver gehostet ist oder sind, implementiert werden. Alternativ oder zusätzlich können die Komponenten 1104 bis 1114 des Dialogzustand-Verfolgungssystems 102 in einer Sammlung von mobile Vorrichtung-Anwendungen oder „Apps“ implementiert werden. Beispielsweise kann das Dialogzustand-Verfolgungssystem 102 in einer oder mehreren Ausführungsform(en) digitale Software-Anwendungen, wie z.B. ADOBE® SENSEI® oder ADOBE® PHOTOSHOP®, umfassen oder im Zusammenhang mit diesen arbeiten. „ADOBE“, „SENSEI“ und „PHOTOSHOP“ sind entweder eingetragene Marken oder Marken von Adobe Systems Incorporated in den Vereinigten Staaten und/oder anderen Ländern.
  • Die 1 bis 11, der entsprechende Text und die Beispiele zeigen eine Anzahl von verschiedenen Verfahren, Systemen, Vorrichtungen und nicht-flüchtigen computerlesbaren Medien des Dialogzustand-Verfolgungssystems. Zusätzlich zu dem Vorstehenden kann oder können eine oder mehrere Ausführungsform(en) auch in Bezug auf Flussdiagramme beschrieben werden, die Vorgänge zum Erreichen eines bestimmten Ergebnisses umfassen, wie es in der 12 gezeigt ist. Die 12 kann mit mehr oder weniger Vorgängen ausgeführt werden. Ferner können die Vorgänge in unterschiedlichen Reihenfolgen durchgeführt werden. Zusätzlich können die hier beschriebenen Vorgänge parallel zueinander oder parallel mit verschiedenen Fällen derselben oder ähnlicher Vorgänge durchgeführt werden.
  • Wie es erwähnt worden ist, zeigt die 12 ein Flussdiagramm einer Reihe von Vorgängen 1200 zum Erzeugen einer digitalen Antwort auf ein Segment eines digitalen Dialogs auf der Basis des digitalen Dialogzustands gemäß einer oder mehreren Ausführungsform(en). Während die 12 Vorgänge gemäß einer Ausführungsform zeigt, können alternative Ausführungsformen jedweden der Vorgänge, die in der 12 gezeigt sind, weglassen, hinzufügen, umordnen und/oder modifizieren. Die Vorgänge der 12 können als Teil eines Verfahrens durchgeführt werden. Alternativ kann ein nicht-flüchtiges computerlesbares Medium Anweisungen umfassen, die, wenn sie durch einen oder mehrere Prozessor(en) ausgeführt werden, bewirken, dass eine Rechenvorrichtung die Vorgänge von 12 ausführt. In einigen Ausführungsformen kann ein System die Vorgänge von 12 ausführen.
  • Die Reihe von Vorgängen 1200 umfasst einen Vorgang 1202 des Bereitstellens eines Segments eines digitalen Dialogs für ein Dialogzustand-verfolgendes neuronales Netzwerk. Beispielsweise umfasst der Vorgang 1202 das Bereitstellen eines Segments eines digitalen Dialogs für ein Dialogzustand-verfolgendes neuronales Netzwerk, das ein dynamisches Speichernetzwerk mit einer Mehrzahl von Speicherplätzen und einer Mehrzahl von Rücksetzgattern umfasst. In einer oder mehreren Ausführungsform(en) umfasst das dynamische Speichernetzwerk ferner eine Mehrzahl von Aktualisierungsgattem, die der Mehrzahl von Rücksetzgattern und der Mehrzahl von Speicherplätzen entsprechen. Eine oder mehrere Ausführungsform(en) umfasst oder umfassen ferner das vorhergehende Identifizieren des Segments eines digitalen Dialogs durch Empfangen einer Tondarstellung des Segments eines digitalen Dialogs.
  • Die Reihe von Vorgängen 1200 umfasst auch einen Vorgang 1204 des Nutzens eines Rücksetzgatters zum Erzeugen eines Werts eines ersten Speicherplatzes. Beispielsweise umfasst der Vorgang 1204 das Nutzen des Dialogzustand-verfolgenden neuronalen Netzwerks zum Erzeugen eines digitalen Dialogzustands, der dem Segment eines digitalen Dialogs entspricht, durch Nutzen eines Rücksetzgatters, das mit einem ersten Speicherplatz des dynamischen Speichernetzwerks zusammenhängt, zum Erzeugen eines Werts für den ersten Speicherplatz auf der Basis eines Segments eines digitalen Dialogs, wobei der Wert einen vorhergehenden Wert ersetzt, der für den ersten Speicherplatz auf der Basis eines vorhergehenden Segments eines digitalen Dialogs erzeugt worden ist. in einer oder mehreren Ausführungsform(en) umfasst das Nutzen des Rücksetzgatters, das mit dem ersten Speicherplatz zum Erzeugen des Werts zusammenhängt, das Bestimmen eines Rücksetzwerts und das Anwenden des Rücksetzwerts zum Modifizieren eines Einflusses des vorhergehenden Segments eines digitalen Dialogs auf den Wert. In einer oder mehreren Ausführungsform(en) umfasst das Rücksetzgatter ein platzübergreifende Interaktion-Rücksetzgatter (d.h., das Dialogzustand-verfolgende neuronale Netzwerk umfasst eine Mehrzahl von platzübergreifende Interaktion-Rücksetzgattem). In solchen Ausführungsformen nutzt das Dialogzustand-Verfolgungssystem das Rücksetzgatter, das mit dem ersten Speicherplatz zusammenhängt, zum Erzeugen des zweiten Werts durch Vergleichen der Werte der Mehrzahl von Speicherplätzen zum Bestimmen eines platzübergreifende Interaktion-Rücksetzwerts, der dem ersten Speicherplatz entspricht, und Anwenden des platzübergreifende Interaktion-Rücksetzwerts zum Modifizieren des Einflusses des vorhergehenden Segments eines digitalen Dialogs auf den Wert.
  • Einige Ausführungsformen umfassen ferner ein Aktualisierungsgatter, das mit dem ersten Speicherplatz zusammenhängt, zum Bestimmen eines Aktualisierungswerts und Anwenden des Aktualisierungswerts zum Modifizieren des Einflusses des Segments eines digitalen Dialogs auf den Wert. Ferner umfasst in einigen Ausführungsformen das Aktualisierungsgatter ein platzübergreifende Interaktion-Aktualisierungsgatter (d.h., das Dialogzustand-verfolgende neuronale Netzwerk umfasst ferner eine Mehrzahl von platzübergreifende Interaktion-Aktualisierungsgattern). In solchen Ausführungsformen nutzt das Dialogzustand-Verfolgungssystem das Aktualisierungsgatter, das mit dem ersten Speicherplatz zusammenhängt, zum Erzeugen des Werts durch Vergleichen der Werte der Mehrzahl von Speicherplätzen zum Bestimmen eines platzübergreifende Interaktion-Aktualisierungswerts, der dem ersten Speicherplatz entspricht, und Anwenden des platzübergreifende Interaktion-Aktualisierungswerts zum Modifizieren eines Einflusses des Segments eines digitalen Dialogs auf den Wert.
  • Die Reihe von Vorgängen 1200 umfasst ferner einen Vorgang 1206 des Erzeugens eines digitalen Dialogzustands. Beispielsweise umfasst der Vorgang 1208 das Nutzen des Dialogzustand-verfolgenden neuronalen Netzwerks zum Erzeugen des digitalen Dialogzustands, der dem Segment eines digitalen Dialogs entspricht, durch Erzeugen des digitalen Dialogzustands auf der Basis des Werts des ersten Speicherplatzes. In einigen Ausführungsformen umfasst der digitale Dialogzustand mindestens eines von einem Dialogthema, einem Ort, einem Objekt oder einer Aktion.
  • In einer oder mehreren Ausführungsform(en) umfasst das Erzeugen des digitalen Dialogzustands, der dem Segment eines digitalen Dialogs entspricht, das Bestimmen, dass das Segment eines digitalen Dialogs einem Schlüsselvektor entspricht, der mit dem ersten Speicherplatz zusammenhängt. In solchen Ausführungsformen umfasst das Nutzen des Rücksetzgatters, das mit dem ersten Speicherplatz zum Erzeugen des Werts zusammenhängt, das Nutzen des Rücksetzgatters zum Erzeugen des Werts des ersten Speicherplatzes ferner auf der Basis der Bestimmung, dass das Segment eines digitalen Dialogs dem Schlüsselvektor entspricht, der mit dem ersten Speicherplatz zusammenhängt.
  • In einigen Ausführungsformen umfasst das Erzeugen des digitalen Dialogzustands, der dem Segment eines digitalen Dialogs entspricht, das Erzeugen einer ersten Dialogmerkmalsdarstellung durch Verarbeiten des vorhergehenden Segments eines digitalen Dialogs unter Verwendung einer oder mehrerer Faltungsschicht(en) des Dialogzustand-verfolgenden neuronalen Netzwerks und das Erzeugen einer zweiten Dialogmerkmalsdarstellung durch Verarbeiten des Segments eines digitalen Dialogs unter Verwendung einer oder mehrerer Faltungsschicht(en) des Dialogzustand-verfolgenden neuronalen Netzwerks. In solchen Ausführungsformen umfasst das Erzeugen des digitalen Dialogzustands das Erzeugen des digitalen Dialogzustands auf der Basis der ersten Dialogmerkmalsdarstellung, der zweiten Dialogmerkmalsdarstellung und des Werts des ersten Speicherplatzes. In weiteren Ausführungsformen nutzt das Dialogzustand-Verfolgungssystem das Dialogzustand-verfolgende neuronale Netzwerk zum Erzeugen des digitalen Dialogzustands, der dem Segment eines digitalen Dialogs entspricht, durch Nutzen der zweiten Dialogmerkmalsdarstellung zum Erzeugen eines latenten Merkmalsvektors, der dem ersten Speicherplatz entspricht, und Erzeugen des Werts des ersten Speicherplatzes ferner auf der Basis des latenten Merkmalsvektors.
  • Zusätzlich umfasst die Reihe von Vorgängen 1200 einen Vorgang 1208 des Erzeugens einer digitalen Antwort. Beispielsweise umfasst der Vorgang 1208 das Erzeugen einer digitalen Antwort auf das Segment eines digitalen Dialogs auf der Basis des digitalen Dialogzustands. In einer oder mehreren Ausführungsformen umfasst die digitale Antwort auf das Segment eines digitalen Dialogs eine Tonantwort.
  • In einer oder mehreren Ausführungsform(en) umfasst die Reihe von Vorgängen 1200 ferner Vorgänge zum Trainieren eines Dialogzustand-verfolgenden neuronalen Netzwerks zum Erzeugen digitaler Dialogzustände, die zum Erzeugen von digitalen Antworten auf Segmente in digitalen Dialogen verwendet werden. Beispielsweise trainiert das Dialogzustand-Verfolgungssystem in einer oder mehreren Ausführungsform(en) ein Dialogzustand-verfolgendes neuronales Netzwerk, das ein dynamisches Speichernetzwerk mit einem Satz von Speicherplätzen und einem entsprechenden Satz von platzübergreifende Interaktion-Rücksetzgattern zum Erzeugen digitaler Dialogzustände umfasst, die zum Erzeugen digitaler Antworten auf Segmente in digitalen Dialogen verwendet werden, durch: Erzeugen eines ersten Satzes von Werten für den Satz von Speicherplätzen auf der Basis eines ersten Trainingssegments eines digitalen Trainingsdialogs; Anwenden eines platzübergreifende Interaktion-Rücksetzgatters auf der Basis eines Vergleichs des ersten Satzes von Werten für den Satz von Speicherplätzen zum Erzeugen eines zweiten Satzes von Werten für den Satz von Speicherplätzen; und Erzeugen eines vorhergesagten Dialogzustands zum Vergleichen mit einem Basiswahrheit-Dialogzustand auf der Basis des zweiten Satzes von Werten für den Satz von Speicherplätzen.
  • Ausführungsformen der vorliegenden Offenbarung können einen speziellen oder allgemeinen Computer umfassen oder nutzen, der eine Computerhardware umfasst, wie z.B. einen oder mehrere Prozessor(en) und Systemspeicher, wie es nachstehend detaillierter diskutiert wird. Ausführungsformen innerhalb des Umfangs der vorliegenden Offenbarung umfassen auch physikalische und andere computerlesbare Medien zum Aufweisen oder Speichern von computerausführbaren Anweisungen und/oder Datenstrukturen. Insbesondere kann einer oder können mehrere der hier beschriebenen Vorgänge mindestens teilweise als Anweisungen implementiert werden, die in einem nicht-flüchtigen computerlesbaren Medium verkörpert sind und durch eine oder mehrere Rechenvorrichtung(en) (z.B. jedwede der hier beschriebenen Medieninhaltzugriffsvorrichtungen) ausführbar sind. Im Allgemeinen erhält ein Prozessor (z.B. ein Mikroprozessor) Anweisungen von einem nicht-flüchtigen computerlesbaren Medium (z.B. einem Speicher, usw.) und führt diese Anweisungen aus, wodurch ein Vorgang oder mehrere Vorgänge, einschließlich einer oder mehrere der hier beschriebenen Vorgänge, ausgeführt wird oder werden.
  • Computerlesbare Medien können jedwede verfügbaren Medien sein, auf die durch ein allgemeines oder spezielles Computersystem zugegriffen werden kann. Computerlesbare Medien, die computerausführbare Anweisungen speichern, sind nicht-flüchtige computerlesbare Speichermedien (Vorrichtungen). Computerlesbare Medien, die computerausführbare Anweisungen aufweisen, sind Übertragungsmedien. Folglich können beispielhaft und ohne Beschränkung Ausführungsformen der Offenbarung mindestens zwei unterscheidbar verschiedene Arten von computerlesbaren Medien umfassen: nicht-flüchtige computerlesbare Speichermedien (Vorrichtungen) und Übertragungsmedien.
  • Nicht-flüchtige computerlesbare Speichermedien (Vorrichtungen) umfassen RAM, ROM, EEPROM, CD-ROM, Festkörperlaufwerke („SSDs“) (z.B. auf der Basis eines RAM), einen Flashspeicher, einen Phasenänderungsspeicher („PCM“), andere Arten von Speicher, einen anderen optischen Plattenspeicher, Magnetplattenspeicher oder andere Magnetspeichervorrichtungen, oder jedwedes andere Medium, das zum Speichern von gewünschten Programmkodemitteln in der Form von computerausführbaren Anweisungen oder Datenstrukturen verwendet werden kann und auf das durch einen allgemeinen oder speziellen Computer zugegriffen werden kann.
  • Ein „Netzwerk“ ist als eine oder mehrere Datenverknüpfung(en) definiert, die den Transport von elektronischen Daten zwischen Computersystemen und/oder Modulen und/oder anderen elektronischen Vorrichtungen ermöglicht oder ermöglichen. Wenn Informationen über ein Netzwerk oder andere Kommunikationsverbindungen (entweder drahtgebunden, drahtlos oder durch eine Kombination von drahtgebunden oder drahtlos) auf einen Computer übertragen oder für diesen bereitgestellt werden, betrachtet der Computer die Verbindung in einer geeigneten Weise als Übertragungsmedium. Übertragungsmedien können ein Netzwerk und/oder Datenverknüpfungen umfassen, das oder die zum Aufweisen von gewünschten Programmcodemitteln in der Form von computerausführbaren Anweisungen oder Datenstrukturen verwendet werden kann oder können und auf das oder die durch einen allgemeinen oder speziellen Computer zugegriffen werden kann. Kombinationen des Vorstehenden sollten auch in den Umfang von computerlesbaren Medien einbezogen werden.
  • Ferner können beim Erreichen von verschiedenen Computersystemkomponenten Programmkodemittel in der Form von computerausführbaren Anweisungen oder Datenstrukturen automatisch von Übertragungsmedien auf nicht-flüchtige computerlesbare Speichermedien (Vorrichtungen) (oder umgekehrt) übertragen werden. Beispielsweise können computerausführbare Anweisungen oder Datenstrukturen, die über ein Netzwerk oder eine Datenverknüpfung empfangen werden, in einem RAM innerhalb eines Netzwerkschnittstellenmoduls (z.B. eines „NIC“) gepuffert werden und dann schließlich auf einen Computersystem-RAM und/oder weniger flüchtige Computerspeichermedien (Vorrichtungen) auf einem Computersystem übertragen werden. Folglich sollte beachtet werden, dass nicht-flüchtige computerlesbare Speichermedien (Vorrichtungen) in Computersystemkomponenten einbezogen werden können, die auch (oder sogar in erster Linie) Übertragungsmedien nutzen.
  • Computerausführbare Anweisungen umfassen beispielsweise Anweisungen und Daten, die, wenn sie durch einen Prozessor ausgeführt werden, bewirken, dass ein allgemeiner Computer, ein spezieller Computer oder eine spezielle Verarbeitungsvorrichtung eine bestimmte Funktion oder Gruppe von Funktionen ausführt. In einigen Ausführungsformen werden computerausführbare Anweisungen auf einem allgemeinen Computer ausgeführt, um den allgemeinen Computer in einen speziellen Computer umzuwandeln, der Elemente der Offenbarung implementiert. Die computerausführbaren Anweisungen können beispielsweise binäre Zwischenformatanweisungen, wie z.B. Assemblysprache, oder sogar Quellcode sein. Obwohl der Gegenstand in einer Sprache beschrieben worden ist, die für strukturelle Merkmale und/oder methodologische Vorgänge spezifisch ist, sollte beachtet werden, dass der in den beigefügten Ansprüchen festgelegte Gegenstand nicht notwendigerweise auf die vorstehend beschriebenen Merkmale oder Vorgänge beschränkt ist. Vielmehr sind die beschriebenen Merkmale und Vorgänge als Beispielformen des Implementierens der Ansprüche offenbart.
  • Einem Fachmann ist klar, dass die Offenbarung in Netzwerkrechenumgebungen mit vielen Arten von Computersystemkonfigurationen durchgeführt werden kann, einschließlich Personalcomputern, Desktopcomputem, Laptopcomputem, Nachrichtenprozessoren, handgehaltenen Vorrichtungen, Mehrfachprozessorsystemen, Mikroprozessor-basierter oder programmierbarer Verbraucherelektronik, Netzwerk-PCs, Minicomputern, Großrechnern, Mobiltelefonen, PDAs, Tablets, Funkrufempfängern, Routern, Umschalteinrichtungen und dergleichen. Die Offenbarung kann auch in verteilten Systemumgebungen durchgeführt werden, bei denen sowohl lokale als auch entfernt vorliegende Computersysteme, die durch ein Netzwerk verknüpft sind (entweder durch drahtgebundene Datenverknüpfungen, drahtlose Datenverknüpfungen oder durch eine Kombination aus drahtgebundenen und drahtlosen Datenverknüpfungen), Aufgaben ausführen. In einer verteilten Systemumgebung können sich Programmmodule sowohl in lokalen als auch entfernt vorliegenden Speichervorrichtungen befinden.
  • Ausführungsformen der vorliegenden Offenbarung können auch in Cloudcomputing-Umgebungen implementiert werden. In dieser Beschreibung ist „Cloudcomputing“ als ein Modell zum Ermöglichen eines bedarfsgemäßen Netzwerkzugangs zu einem gemeinsamen Pool von konfigurierbaren Rechenresourcen definiert. Beispielsweise kann ein Cloudcomputing auf dem Markt zum Anbieten eines universellen und bequemen Zugangs zu dem gemeinsamen Pool von konfigurierbaren Rechenresourcen eingesetzt werden. Der gemeinsame Pool von konfigurierbaren Rechenresourcen kann mittels einer Virtualisierung schnell bereitgestellt werden und mit einem geringen Verwaltungsaufwand oder einer geringen Serviceproviderinteraktion freigegeben werden und dann entsprechend skaliert werden.
  • Ein Cloudcomputing-Modell kann aus verschiedenen Eigenschaften, wie z.B. einer bedarfsgemäßen Selbstbedienung, einem breiten Netzwerkzugang, einer Ressourcenvereinigung, einer schnellen Elastizität, einem richtig bemessenen Dienst, usw., zusammengesetzt sein. Ein Cloudcomputing-Modell kann auch verschiedene Dienstmodelle bereitstellen, wie z.B. Software als Dienst („SaaS“), Plattform als Dient („PaaS“) und Infrastruktur als Dienst („IaaS“). Ein Cloudcomputing-Modell kann auch unter Verwendung von verschiedenen Verbreitungsmodellen, wie z.B. einer Privatcloud, einer Gemeinschaftscloud, einer öffentlichen Cloud, einer Hybridcloud, usw., verbreitet werden. In dieser Beschreibung und in den Ansprüchen ist eine „Cloudcomputingumgebung“ eine Umgebung, in der ein Cloudcomputing eingesetzt wird.
  • Die 13 zeigt ein Blockdiagramm einer beispielhaften Rechenvorrichtung 1300, die so konfiguriert werden kann, dass sie einen oder mehrere der vorstehend beschriebenen Vorgang oder Vorgänge durchführt. Es sollte beachtet werden, dass eine oder mehrere Rechenvorrichtung(en), wie z.B. die Rechenvorrichtung 1300, die vorstehend beschriebenen Rechenvorrichtungen darstellen kann oder können (z.B. die Rechenvorrichtung 1102, der oder die Server 1002 und die Client-Vorrichtungen 1010a bis 1010n). In einer oder mehreren Ausführungsformen kann die Rechenvorrichtung 1300 eine mobile Vorrichtung sein (z.B. ein Mobiltelefon, ein Smartphone, ein PDA, ein Tablet, ein Laptop, eine Kamera, ein Tracker, eine Uhr, eine anziehbare Vorrichtung, usw.). In einigen Ausführungsformen kann die Rechenvorrichtung 1300 eine nicht-mobile Vorrichtung sein (z.B. ein Desktopcomputer oder eine andere Art von Client-Vorrichtung). Ferner kann die Rechenvorrichtung 1300 eine Servervorrichtung sein, die cloudbasierte Verarbeitungs- und Speicherfähigkeiten umfasst.
  • Wie es in der 13 gezeigt ist, kann die Rechenvorrichtung einen oder mehrere Prozessoren) 1302, einen Speicher 1304, eine Speichervorrichtung 1306, Eingabe/Ausgabe-Schnittstellen 1308 (oder „I/O-Schnittstellen 1308“) und eine Kommunikationsschnittstelle 1310 umfassen, die mittels einer Kommunikationsinfrastruktur (z.B. eines Bus 1312) kommunikativ gekoppelt sein können. Während die Rechenvorrichtung 1300 in der 13 gezeigt ist, sollen die in der 13 gezeigten Komponenten nicht beschränkend sein. Zusätzliche oder alternative Komponenten können in weiteren Ausführungsformen verwendet werden. Ferner umfasst die Rechenvorrichtung 1300 in bestimmten Ausführungsformen weniger Komponenten als diejenigen, die in der 13 gezeigt sind. Komponenten der Rechenvorrichtung 1300, die in der 13 gezeigt sind, werden nachstehend detaillierter beschrieben.
  • In bestimmten Ausführungsformen umfasst der Prozessor oder umfassen die Prozessoren 1302 Hardware zum Ausführen von Anweisungen, wie z.B. solchen, die ein Computerprogramm bilden. Als Beispiel und nicht beschränkend kann der Prozessor oder können die Prozessoren 1302 die Anweisungen von einem internen Register, einem internen Zwischenspeicher, dem Speicher 1304 oder einer Speichervorrichtung 1306 abfragen (oder abrufen) und diese dekodieren und ausführen.
  • Die Rechenvorrichtung 1300 umfasst den Speicher 1304, der mit dem oder den Prozessor(en) 1302 gekoppelt ist. Der Speicher 1304 kann zum Speichern von Daten, Metadaten und Programmen zur Ausführung durch den oder die Prozessor(en) verwendet werden. Der Speicher 1304 kann einen oder mehrere von flüchtigen und nicht-flüchtigen Speichern, wie z.B. einen Direktzugriffsspeicher („RAM“), einen Festwertspeicher („ROM“), einen Festkörperspeicher („SSD“), einen Flashspeicher, einen Phasenänderungsspeicher („PCM“) oder andere Arten eines Datenspeichers umfassen. Der Speicher 1304 kann ein interner oder verteilter Speicher sein.
  • Die Rechenvorrichtung 1300 umfasst eine Speichervorrichtung 1306, die einen Speicher zum Speichern von Daten oder Anweisungen umfasst. Als Beispiel und nicht beschränkend kann die Speichervorrichtung 1306 ein vorstehend beschriebenes nicht-flüchtiges Speichermedium umfassen. Die Speichervorrichtung 1306 kann eine Festplatte (HDD), einen Flashspeicher, ein „Universal Serial Bus“ (USB)-Laufwerk oder eine Kombination dieser oder anderer Speichervorrichtungen umfassen.
  • Wie es gezeigt ist, umfasst die Rechenvorrichtung 1300 eine oder mehrere I/O-Schnittstelle(n) 1308, die bereitgestellt ist oder sind, um es einem Nutzer zu ermöglichen, für die Rechenvorrichtung 1300 eine Eingabe (wie z.B. Nutzeranschläge) zu dieser bereitzustellen, eine Ausgabe von dieser zu empfangen und in sonstiger Weise Daten zu und von dieser zu übertragen. Diese I/O-Schnittstellen 1308 können eine Maus, ein Tastenfeld oder eine Tastatur, einen Berührungsbildschirm, eine Kamera, einen optischen Scanner, eine Netzwerkschnittstelle, ein Modem, andere bekannte I/O-Vorrichtungen oder eine Kombination solcher I/O-Schnittstellen 1308 umfassen. Der Berührungsbildschirm kann mit einem Stift oder einem Finger aktiviert werden.
  • Die I/O-Schnittstellen 1308 können eine oder mehrere Vorrichtung(en) zum Darstellen einer Ausgabe für einen Nutzer umfassen, einschließlich, jedoch nicht beschränkt auf, ein Grafikmodul, eine Anzeige (z.B. einen Anzeigebildschirm), einen oder mehrere Ausgabetreiber (z.B. Anzeigetreiber), einen oder mehrere Lautsprecher und einen oder mehrere Audiotreiber. In bestimmten Ausführungsformen sind die I/O-Schnittstellen 1308 so ausgebildet, dass sie grafische Daten für eine Anzeige zur Darstellung für einen Nutzer bereitstellen. Die grafischen Daten können eine oder mehrere grafische Nutzerschnittstelle(n) und/oder einen anderen grafischen Inhalt, der einer bestimmten Implementierung dienen kann, darstellen.
  • Die Rechenvorrichtung 1300 kann ferner eine Kommunikationsschnittstelle 1310 umfassen. Die Kommunikationsschnittstelle 1310 kann Hardware, Software oder beides umfassen. Die Kommunikationsschnittstelle 1310 kann eine oder mehrere Schnittstelle(n) für eine Kommunikation (wie z.B. eine paketbasierte Kommunikation) zwischen der Rechenvorrichtung und einer oder mehreren der anderen Rechenvorrichtungen 800 oder einem oder mehreren Netzwerk(en) bereitstellen. Als Beispiel und nicht beschränkend kann die Kommunikationsschnittstelle 1310 einen Netzwerkschnittstellencontroller (NIC) oder einen Netzwerkadapter zum Kommunizieren mit einem Ethernet oder einem anderen drahtgebundenen Netzwerk oder einem drahtlosen NIC (WNIC) oder einem drahtlosen Adapter zum Kommunizieren mit einem drahtlosen Netzwerk, wie z.B. einem Wl-Fl, umfassen. Die Rechenvorrichtung 1300 kann ferner einen Bus 1312 umfassen. Der Bus 1312 kann Hardware, Software oder beides umfassen, die Komponenten der Rechenvorrichtung 1300 miteinander koppelt bzw. koppeln.
  • In der vorstehenden Beschreibung wurde die Erfindung in Bezug auf spezifische Beispielausführungsformen davon beschrieben. Verschiedene Ausführungsformen und Aspekte der Erfindung sind in Bezug auf Details beschrieben, die hier diskutiert worden sind, und die beigefügten Zeichnungen zeigen die verschiedenen Ausführungsformen. Die vorstehende Beschreibung und die Zeichnungen zeigen die Erfindung und sollen nicht so aufgefasst werden, dass sie die Erfindung beschränken. Zahlreiche spezifische Details sind angegeben, um ein gründliches Verständnis von verschiedenen Ausführungsformen der vorliegenden Erfindung bereitzustellen.
  • Die vorliegende Erfindung kann in anderen spezifischen Formen ausgeführt werden, ohne von deren Wesen oder wesentlichen Eigenschaften abzuweichen. Die beschriebenen Ausführungsformen sollen in allen Aspekten nur als veranschaulichend und nicht beschränkend aufgefasst werden. Beispielsweise können die hier beschriebenen Verfahren mit weniger oder mehr Schritten/Vorgängen durchgeführt werden oder die Schritte/Vorgänge können in verschiedenen Reihenfolgen durchgeführt werden. Zusätzlich können die hier beschriebenen Schritte/Vorgänge wiederholt oder parallel zueinander oder parallel mit verschiedenen Instanzen derselben oder ähnlichen Schritte/Vorgänge beschrieben werden. Der Umfang der Erfindung wird daher durch die beigefügten Ansprüche und nicht durch die vorstehende Beschreibung angegeben. Alle Änderungen, die von der Bedeutung und dem Äquivalenzbereich der Ansprüche umfasst sind, sollen innerhalb von deren Umfang liegen.

Claims (20)

  1. Nicht-flüchtiges computerlesbares Speichermedium, das Anweisungen umfasst, die, wenn sie durch mindestens einen Prozessor ausgeführt werden, eine Rechenvorrichtung veranlassen zum: Bereitstellen eines Segments eines digitalen Dialogs für ein Dialogzustand-verfolgendes neuronales Netzwerk, das ein dynamisches Speichernetzwerk mit einer Mehrzahl von Speicherplätzen und einer Mehrzahl von Rücksetzgattern umfasst; Nutzen des Dialogzustand-verfolgenden neuronalen Netzwerks zum Erzeugen eines digitalen Dialogzustands, der dem Segment eines digitalen Dialogs entspricht, durch: Nutzen eines Rücksetzgatters, das mit einem Speicherplatz des dynamischen Speichernetzwerks zusammenhängt, zum Erzeugen eines Werts für den ersten Speicherplatz auf der Basis des Segments eines digitalen Dialogs, wobei der Wert einen vorhergehenden Wert ersetzt, der für den ersten Speicherplatz auf der Basis eines vorhergehenden Segments eines digitalen Dialogs erzeugt worden ist; und Erzeugen des digitalen Dialogzustands auf der Basis des Werts des ersten Speicherplatzes; und Erzeugen einer digitalen Antwort auf das Segment eines digitalen Dialogs auf der Basis des digitalen Dialogzustands.
  2. Nicht-flüchtiges computerlesbares Speichermedium nach Anspruch 1, bei dem das dynamische Speichernetzwerk ferner eine Mehrzahl von Update- bzw. Aktualisierungsgattern umfasst, die der Mehrzahl von Rücksetzgattern und der Mehrzahl von Speicherplätzen entsprechen.
  3. Nicht-flüchtiges computerlesbares Speichermedium nach Anspruch 2, das ferner Anweisungen umfasst, die, wenn sie durch den mindestens einen Prozessor ausgeführt werden, bewirken, dass die Rechenvorrichtung ferner das Dialogzustand-verfolgende neuronale Netzwerk zum Erzeugen des digitalen Dialogzustands, der dem Segment eines digitalen Dialogs entspricht, durch Nutzen eines Aktualisierungsgatters, das mit dem ersten Speicherplatz zusammenhängt, zum Bestimmen eines Aktualisierungswerts und Anwenden des Aktualisierungswerts zum Modifizieren eines Einflusses des Segments eines digitalen Dialogs auf den Wert nutzt.
  4. Nicht-flüchtiges computerlesbares Speichermedium nach Anspruch 2 oder 3, bei dem das Nutzen des Rücksetzgatters, das mit dem ersten Speicherplatz zusammenhängt, zum Erzeugen des Werts das Bestimmen eines Rücksetzwerts und das Anwenden des Rücksetzwerts zum Modifizieren eines Einflusses des vorhergehenden Segments eines digitalen Dialogs auf den Wert umfasst.
  5. Nicht-flüchtiges computerlesbares Speichermedium nach einem der vorhergehenden Ansprüche, bei dem: das Rücksetzgatter ein platzübergreifende Interaktion-Rücksetzgatter umfasst, und das Nutzen des Rücksetzgatters, das mit dem ersten Speicherplatz zusammenhängt, zum Erzeugen des Werts umfasst: Vergleichen von Werten der Mehrzahl von Speicherplätzen zum Bestimmen eines platzübergreifende Interaktion-Rücksetzwerts, der dem ersten Speicherplatz entspricht; und Anwenden des platzübergreifende Interaktion-Rücksetzwerts zum Modifizieren eines Einflusses des vorhergehenden Segments eines digitalen Dialogs auf den Wert.
  6. Nicht-flüchtiges computerlesbares Speichermedium nach einem der vorhergehenden Ansprüche, das ferner Anweisungen umfasst, die, wenn sie durch den mindestens einen Prozessor ausgeführt werden, bewirken, dass die Rechenvorrichtung ferner das Dialogzustand-verfolgende neuronale Netzwerk zum Erzeugen des digitalen Dialogzustands, der dem Segment eines digitalen Dialogs entspricht, durch Bestimmen, dass das Segment eines digitalen Dialogs einem Schlüsselvektor entspricht, der mit dem ersten Speicherplatz zusammenhängt, nutzt, und wobei das Nutzen des Rücksetzgatters, das mit dem ersten Speicherplatz zum Erzeugen des Werts zusammenhängt, das Nutzen des Rücksetzgatters zum Erzeugen des Werts des ersten Speicherplatzes ferner auf der Basis des Bestimmens umfasst, dass das Segment eines digitalen Dialogs dem Schlüsselvektor entspricht, der mit dem ersten Speicherplatz zusammenhängt.
  7. Nicht-flüchtiges computerlesbares Speichermedium nach einem der vorhergehenden Ansprüche, das ferner Anweisungen umfasst, die, wenn sie durch den mindestens einen Prozessor ausgeführt werden, bewirken, dass die Rechenvorrichtung das Segment eines digitalen Dialogs durch Empfangen einer Tondarstellung des Segments eines digitalen Dialogs identifiziert, und wobei die digitale Antwort an das Segment eines digitalen Dialogs eine Tonantwort umfasst.
  8. Nicht-flüchtiges computerlesbares Speichermedium nach einem der vorhergehenden Ansprüche, das ferner Anweisungen umfasst, die, wenn sie durch den mindestens einen Prozessor ausgeführt werden, bewirken, dass die Rechenvorrichtung ferner das Dialogzustand-verfolgende neuronale Netzwerk zum Erzeugen des digitalen Dialogzustands, der dem Segment eines digitalen Dialogs entspricht, nutzt, durch: Erzeugen einer ersten Dialogmerkmalsdarstellung durch Verarbeiten des vorhergehenden Segments eines digitalen Dialogs unter Verwendung einer oder mehrerer Faltungsschicht(en) des Dialogzustand-verfolgenden neuronalen Netzwerks; und Erzeugen einer zweiten Dialogmerkmalsdarstellung durch Verarbeiten des Segments eines digitalen Dialogs unter Verwendung der einen oder der mehreren Faltungsschicht(en) des Dialogzustand-verfolgenden neuronalen Netzwerks, und wobei das Erzeugen des digitalen Dialogzustands das Erzeugen des digitalen Dialogzustands auf der Basis der ersten Dialogmerkmalsdarstellung, der zweiten Dialogmerkmalsdarstellung und des Werts des ersten Speicherplatzes umfasst.
  9. Nicht-flüchtiges computerlesbares Speichermedium nach Anspruch 8, das ferner Anweisungen umfasst, die, wenn sie durch den mindestens einen Prozessor ausgeführt werden, die Rechenvorrichtung veranlassen zum: Nutzen des Dialogzustand-verfolgenden neuronalen Netzwerks zum Erzeugen des digitalen Dialogzustands, der dem Segment eines digitalen Dialogs entspricht, durch Nutzen der zweiten Dialogmerkmalsdarstellung zum Erzeugen eines latenten Merkmalsvektors, der dem ersten Speicherplatz entspricht, und Erzeugen des Werts des ersten Speicherplatzes ferner auf der Basis des latenten Merkmalsvektors.
  10. Nicht-flüchtiges computerlesbares Speichermedium nach einem der vorhergehenden Ansprüche, bei dem der digitale Dialogzustand mindestens eines von: einem Dialogthema; einem Ort; einem Objekt; oder einer Aktion umfasst.
  11. System, umfassend: mindestens einen Prozessor; und mindestens ein nicht-flüchtiges computerlesbares Speichermedium, das Anweisungen speichert, die, wenn sie durch den mindestens einen Prozessor ausgeführt werden, das System veranlassen zum: Trainieren eines Dialogzustand-verfolgenden neuronalen Netzwerks, das ein dynamisches Speichernetzwerk mit einem Satz von Speicherplätzen und einem entsprechenden Satz von platzübergreifende Interaktion-Rücksetzgattern zum Erzeugen digitaler Dialogzustände, die beim Erzeugen digitaler Antworten an Segmente in digitalen Dialogen verwendet werden, umfasst, durch: Erzeugen eines ersten Satzes von Werten für den Satz von Speicherplätzen auf der Basis eines ersten Trainingssegments eines digitalen Trainingsdialogs; Anwenden eines platzübergreifende Interaktion-Rücksetzgatters auf der Basis eines Vergleichs des ersten Satzes von Werten für den Satz von Speicherplätzen zum Erzeugen eines zweiten Satzes von Werten für den Satz von Speicherplätzen; und Erzeugen eines vorhergesagten Dialogzustands zum Vergleichen mit einem Basiswahrheit-Dialogzustand auf der Basis des zweiten Satzes von Werten für den Satz von Speicherplätzen.
  12. System nach Anspruch 11, bei dem das dynamische Speichernetzwerk ferner einen Satz von platzübergreifende Interaktion-Aktualisierungsgattern umfasst, die dem Satz von platzübergreifende Interaktion-Rücksetzgattern und dem Satz von Speicherplätzen entsprechen.
  13. System nach Anspruch 12, das ferner Anweisungen umfasst, die, wenn sie durch den mindestens einen Prozessor ausgeführt werden, bewirken, dass das System ferner das Dialogzustand-verfolgende neuronale Netzwerk zum Erzeugen der digitalen Dialogzustände durch Nutzen eines platzübergreifende Interaktion-Aktualisierungsgatters zum Bestimmen eines platzübergreifende Interaktion-Aktualisierungswerts und Anwenden des platzübergreifende Interaktion-Aktualisierungswerts zum Modifizieren eines Einflusses des zweiten Trainingssegments auf den zweiten Satz von Werten trainiert.
  14. System nach Anspruch 11 oder 12, das ferner Anweisungen umfasst, die, wenn sie durch den mindestens einen Prozessor ausgeführt werden, bewirken, dass das System ferner das Dialogzustand-verfolgende neuronale Netzwerk zum Erzeugen der digitalen Dialogzustände durch Bestimmen, dass ein zweites Trainingssegment einem Schlüsselvektor entspricht, der mit dem Satz von Speicherplätzen zusammenhängt, trainiert, und bei dem das Anwenden des platzübergreifende Interaktion-Rücksetzgatters das Anwenden des platzübergreifende Interaktion-Rücksetzgatters ferner auf der Basis des Bestimmens umfasst, dass das zweite Trainingssegment dem Schlüsselvektor entspricht, der mit dem Satz von Speicherplätzen zusammenhängt.
  15. System nach einem der Ansprüche 11 bis 14, das ferner Anweisungen umfasst, die, wenn sie durch den mindestens einen Prozessor ausgeführt werden, bewirken, dass das System ferner das Dialogzustand-verfolgende neuronale Netzwerk zum Erzeugen der digitalen Dialogzustände trainiert durch: Erzeugen einer ersten Dialogmerkmalsdarstellung durch Verarbeiten des ersten Trainingssegments unter Verwendung einer oder mehrerer Faltungsschicht(en) des Dialogzustand-verfolgenden neuronalen Netzwerks; und Erzeugen einer zweiten Dialogmerkmalsdarstellung durch Verarbeiten eines zweiten Trainingssegments unter Verwendung der einen oder der mehreren Faltungsschicht(en) des Dialogzustand-verfolgenden neuronalen Netzwerks, und wobei das Erzeugen des vorhergesagten Dialogzustands das Erzeugen des vorhergesagten Dialogzustands auf der Basis der ersten Dialogmerkmalsdarstellung, der zweiten Dialogmerkmalsdarstellung und des zweiten Satzes von Werten für den Satz von Speicherplätzen umfasst.
  16. System nach Anspruch 15, das ferner Anweisungen umfasst, die, wenn sie durch den mindestens einen Prozessor ausgeführt werden, das System veranlassen zum: Weiteres Trainieren des Dialogzustand-verfolgenden neuronalen Netzwerks zum Erzeugen der digitalen Dialogzustände durch Nutzen der zweiten Dialogmerkmalsdarstellung zum Erzeugen eines latenten Merkmalsvektors, der dem Satz von Speicherplätzen entspricht; und Erzeugen des zweiten Satzes von Werten für den Satz von Speicherplätzen auf der Basis des latenten Merkmalsvektors.
  17. System nach einem der Ansprüche 11 bis 16, bei dem der vorhergesagte Dialogzustand mindestens eines von: einem Dialogthema; einem Ort; einem Objekt; oder einer Aktion umfasst.
  18. Computer-implementiertes Verfahren zum Erzeugen von genauen dynamischen digitalen Umwandlungsantworten in einer digitalen Medienumgebung zum Verwalten von digitalen Dialogen mit Client-Rechenvorrichtungen, die eine künstliche Intelligenz nutzen, umfassend: Durchführen eines Schritts zum Trainieren eines Dialogzustand-verfolgenden neuronalen Netzwerks, das ein dynamisches Speichernetzwerk zum Erzeugen digitaler Dialogzustände umfasst; Identifizieren eines digitalen Dialogs, der ein Dialogsegment umfasst; Durchführen eines Schritts zum Nutzen des Dialogzustand-verfolgenden neuronalen Netzwerks, welches das dynamische Speichernetzwerk zum Erzeugen eines digitalen Dialogzustands für das Dialogsegment umfasst; und Erzeugen einer digitalen Antwort an das Dialogsegment auf der Basis des digitalen Dialogzustands.
  19. Computerimplementiertes Verfahren nach Anspruch 18, bei dem das Identifizieren des digitalen Dialogs das Empfangen einer Tondarstellung eines Dialogsegments umfasst, und bei dem die digitale Antwort an das Dialogsegment eine Tonantwort umfasst.
  20. Computerimplementiertes Verfahren nach Anspruch 18 oder 19, bei dem der digitale Dialogzustand mindestens eines von: einem Dialogthema; einem Ort; einem Objekt; oder einer Aktion umfasst.
DE102019004300.6A 2018-09-19 2019-06-17 Verwendung eines dynamischen speichernetzwerks zum verfolgen digitaler dialogzustände und erzeugen von antworten Pending DE102019004300A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/135,957 US10909970B2 (en) 2018-09-19 2018-09-19 Utilizing a dynamic memory network to track digital dialog states and generate responses
US16/135,957 2018-09-19

Publications (1)

Publication Number Publication Date
DE102019004300A1 true DE102019004300A1 (de) 2020-03-19

Family

ID=67539928

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102019004300.6A Pending DE102019004300A1 (de) 2018-09-19 2019-06-17 Verwendung eines dynamischen speichernetzwerks zum verfolgen digitaler dialogzustände und erzeugen von antworten

Country Status (5)

Country Link
US (2) US10909970B2 (de)
CN (1) CN110929114A (de)
AU (1) AU2019204399B2 (de)
DE (1) DE102019004300A1 (de)
GB (1) GB2577584A (de)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10380997B1 (en) * 2018-07-27 2019-08-13 Deepgram, Inc. Deep learning internal state index-based search and classification
US10909970B2 (en) * 2018-09-19 2021-02-02 Adobe Inc. Utilizing a dynamic memory network to track digital dialog states and generate responses
US11163960B2 (en) * 2019-04-18 2021-11-02 International Business Machines Corporation Automatic semantic analysis and comparison of chatbot capabilities
KR102281581B1 (ko) * 2019-07-17 2021-07-23 에스케이텔레콤 주식회사 목표지향 대화시스템에서의 대화상태 추적방법 및 장치
US11354501B2 (en) * 2019-08-02 2022-06-07 Spectacles LLC Definition retrieval and display
US11625535B1 (en) * 2019-12-05 2023-04-11 American Express Travel Related Services Company, Inc. Computer-based systems having data structures configured to execute SIC4/SIC8 machine learning embedded classification of entities and methods of use thereof
US11803400B2 (en) * 2020-06-25 2023-10-31 International Business Machines Corporation Method and system for asynchronous notifications for users in contextual interactive systems
CN111737441B (zh) * 2020-08-07 2020-11-24 北京百度网讯科技有限公司 基于神经网络的人机交互方法、装置和介质
CN112233675B (zh) * 2020-10-22 2023-10-27 中科南京智能技术研究院 一种基于分离卷积神经网络的语音唤醒方法及***
US11748576B2 (en) 2021-01-21 2023-09-05 International Business Machines Corporation Interpretation of deep neural model based dialogue agents
CN114025017B (zh) * 2021-11-01 2024-04-16 杭州电子科技大学 基于深度循环强化学习的网络边缘缓存方法、装置及设备

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19615693C1 (de) * 1996-04-19 1997-12-11 Siemens Ag Vorrichtung und Verfahren zur Aktionsermittlung
US8160879B2 (en) * 2008-12-19 2012-04-17 At&T Intellectual Property I, L.P. System and method for enhancing speech recognition accuracy
US8918321B2 (en) * 2012-04-13 2014-12-23 At&T Intellectual Property I, L.P. System and method for enhancing speech recognition accuracy
US9741340B2 (en) * 2014-11-07 2017-08-22 Nuance Communications, Inc. System and method for enhancing speech recognition accuracy using weighted grammars based on user profile including demographic, account, time and date information
US10515307B2 (en) * 2015-06-05 2019-12-24 Google Llc Compressed recurrent neural network models
US11449744B2 (en) 2016-06-23 2022-09-20 Microsoft Technology Licensing, Llc End-to-end memory networks for contextual language understanding
CN106448670B (zh) * 2016-10-21 2019-11-19 竹间智能科技(上海)有限公司 基于深度学习和强化学习的自动回复对话***
US10540967B2 (en) * 2016-11-14 2020-01-21 Xerox Corporation Machine reading method for dialog state tracking
CN108415923B (zh) * 2017-10-18 2020-12-11 北京邮电大学 封闭域的智能人机对话***
CN108062388B (zh) * 2017-12-15 2021-09-17 北京百度网讯科技有限公司 人机对话的回复生成方法和装置
US10810996B2 (en) * 2018-07-31 2020-10-20 Nuance Communications, Inc. System and method for performing automatic speech recognition system parameter adjustment via machine learning
US10909970B2 (en) * 2018-09-19 2021-02-02 Adobe Inc. Utilizing a dynamic memory network to track digital dialog states and generate responses
CN112840359B (zh) * 2018-10-12 2024-05-14 渊慧科技有限公司 通过使用时间值传递在长时间尺度上控制代理
US11257483B2 (en) * 2019-03-29 2022-02-22 Intel Corporation On-device neural network adaptation with binary mask learning for language understanding systems
US10609216B1 (en) * 2019-06-27 2020-03-31 Wipro Limited Method and system for optimizing call distribution among callers for improved positive outcome

Also Published As

Publication number Publication date
US20210118430A1 (en) 2021-04-22
AU2019204399B2 (en) 2021-09-09
US11657802B2 (en) 2023-05-23
US10909970B2 (en) 2021-02-02
US20200090641A1 (en) 2020-03-19
GB2577584A (en) 2020-04-01
CN110929114A (zh) 2020-03-27
AU2019204399A1 (en) 2020-04-02
GB201909236D0 (en) 2019-08-14

Similar Documents

Publication Publication Date Title
DE102019004300A1 (de) Verwendung eines dynamischen speichernetzwerks zum verfolgen digitaler dialogzustände und erzeugen von antworten
DE102018009243A1 (de) Abstrahierendes Zusammenfassen langer Dokumente unter Nutzung des Deep-Learning strukturierter Dokumente
DE102017125256A1 (de) Suche nach einer neuronalen Architektur
DE102020002964A1 (de) Verwenden eines neuronalen Netzwerks mit einer Zwei-Strom Encoder-Architektur zur Erzeugung digitaler Kompositbilder
DE202017105835U1 (de) Neuronale Maschinenübersetzungssysteme
DE112018005227T5 (de) Merkmalsextraktion mithilfe von multi-task-lernen
DE102018007936A1 (de) Beantworten von Fragen für Datenvisualisierungen
DE102020002301A1 (de) Automatisches Detektieren nutzerseitig angeforderter Objekte in Bildern
DE212020000731U1 (de) Kontrastives Vortraining für Sprachaufgaben
DE202017007517U1 (de) Aggregatmerkmale für maschinelles Lernen
DE112016000509T5 (de) Batch-Normalisierungsschichten
DE112020000584T5 (de) Verfahren für unüberwachte bild-zu-bild-übersetzung mit wenigen aufnahmen
DE102018005611A1 (de) Automatische Paarbildung von Fonts unter Verwendung des asymmetrischen Metriklernens
DE112021001986T5 (de) Verfahren und System zum Verarbeiten von Datenaufzeichnungen
DE112018006345T5 (de) Abrufen von unterstützenden belegen für komplexe antworten
DE112018005813T5 (de) Erleichterung von domänen- und kundenspezifischen empfehlungen für anwendungsprogramm-schnittstellen
DE112020003538T5 (de) Kreuzmodale wiedergewinnung mit wortüberlappungsbasiertem clustern
DE112020003365T5 (de) Überwachte kreuzmodale wiedergewinnung für zeitreihen und text unter verwendung von multimodalen triplettverlusten
DE102021004562A1 (de) Abwandlung von Szenengraphen auf Grundlage von Befehlen in natürlicher Sprache
DE112013002654T5 (de) Verfahren zum Klassifizieren von Text
DE112018005272T5 (de) Suchen von mehrsprachigen dokumenten auf grundlage einer extraktion der dokumentenstruktur
DE112020003909T5 (de) Verfahren zum multimodalen abrufen bzw. wiedergewinnen und clustern unter verwendung einer tiefen cca und aktiver paarweiser abfragen
DE102022003003A1 (de) Automatische Fotobearbeitung mittels sprachlicher Anweisung
DE102021202469A1 (de) System und verfahren zur generativen textzusammenfassung
DE102022201753A1 (de) Erweiterung Graph- basierter Kennzeichnungsregeln für schwach überwachtesTraining von auf maschinellem Lernen basierender Eigennamenerkennung

Legal Events

Date Code Title Description
R012 Request for examination validly filed