DE102023133024A1 - Bestimmen von absichten und antworten unter verwendung von maschinellem lernen in konversationellen ki-systemen und -anwendungen - Google Patents

Bestimmen von absichten und antworten unter verwendung von maschinellem lernen in konversationellen ki-systemen und -anwendungen Download PDF

Info

Publication number
DE102023133024A1
DE102023133024A1 DE102023133024.1A DE102023133024A DE102023133024A1 DE 102023133024 A1 DE102023133024 A1 DE 102023133024A1 DE 102023133024 A DE102023133024 A DE 102023133024A DE 102023133024 A1 DE102023133024 A1 DE 102023133024A1
Authority
DE
Germany
Prior art keywords
intent
data
text
request
confidence value
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
DE102023133024.1A
Other languages
English (en)
Inventor
Shubhadeep Das
Sumit Kumar Bhattacharya
Oluwatobi Olabiyi
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.)
Nvidia Corp
Original Assignee
Nvidia Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nvidia Corp filed Critical Nvidia Corp
Publication of DE102023133024A1 publication Critical patent/DE102023133024A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • 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
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • 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/18Speech classification or search using natural language modelling
    • G10L15/1822Parsing for meaning understanding

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Databases & Information Systems (AREA)
  • Evolutionary Computation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Human Computer Interaction (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Machine Translation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

In verschiedenen Beispielen werden hybride Modelle zum Bestimmen von Absichten in konversationellen KI-Systemen und -Anwendungen offenbart. Es werden Systeme und Verfahren offenbart, die (ein) maschinelle(s) Lernmodell(e) und (eine) Datendatei(en) verwenden, die Absichten miteinander assoziiert (z.B. unter Verwendung einer baumartigen Struktur), um eine finale Absicht zu bestimmen, die mit dem Text assoziiert ist. Zum Beispiel kann der Text initial unter Verwendung des/der maschinellen Lernmodells/Modelle (z.B. eines ersten maschinellen Lernmodells) verarbeitet werden, um eine erste mit dem Text assoziierte Absicht zu bestimmen. Die Datendatei(en) können dann verwendet werden, um Informationen (z.B. Anker) für eine oder mehrere zweite Absichten (z.B. eine oder mehrere Unterabsichten) zu bestimmen, die mit der ersten Absicht verbunden sind. Der Text und die Informationen können dann unter Verwendung des/der maschinellen Lernmodells/Modelle (z.B. eines zweiten maschinellen Lernmodells) verarbeitet werden, um aus dem einen oder den mehreren zweiten Absichten eine zweite Absicht zu bestimmen, die mit dem Text assoziiert ist.

Description

  • HINTERGRUND
  • Dialogsysteme werden in vielen unterschiedlichen Anwendungen verwendet, wie beispielsweise in Anwendungen zur Anforderung von Informationen (z.B. Anfordern von Informationen über Objekte, Merkmale usw.), zur Planung von Reiseplänen (z.B. Buchung von Transportmitteln und Unterkünften usw.), zur Planung von Aktivitäten (z.B. Reservierungen vornehmen usw.), zum Kommunizieren mit anderen (z.B. Telefonate führen, Videokonferenzen starten usw.), zum Einkaufen (z.B. Einkaufen von Artikeln auf Online-Marktplätzen, Bestellen von Lebensmitteln in einem lokalen Restaurant usw.), und/oder so weiter. Einige Dialogsysteme funktionieren, indem sie Text empfangen - z.B. Text, der einen oder mehrere Buchstaben, Wörter, Wortteile, Zahlen und/oder Symbole umfasst -, der mit einem Eingabegerät generiert und/oder als Transkription gesprochener Sprache generiert wurde. Die Dialogsysteme verarbeiten den Text dann unter Verwendung eines oder mehrerer Modelle, die zur Interpretation des Textes trainiert wurden. Beispielsweise kann das Modell bzw. können die Modelle initial eine mit dem Text assoziierte Absicht bestimmen und dann eine Ausgabe generieren, die auf dieser Absicht basiert.
  • Daher ist die Klassifizierung und Identifizierung von Absichten wichtig für das Funktionieren von Dialogsystemen. Um die Klassifizierung und Identifizierung von Absichten durchzuführen, können einige Dialogsysteme Intent-Slot-basierte Modelle verwenden, die für jede der Absichten (Intents) trainiert werden, für deren Interpretation die Intent-Slot-basierten Modelle konfiguriert sind. Das Trainieren eines Intent-Slot-basierten Modells zur Interpretation mehrerer Absichten kann jedoch das Sammeln eines umfangreichen Datensatzes (z.B. Tausende bis Millionen von Trainingsbeispielen) erfordern. Wenn beispielsweise ein Intent-Slot-basiertes Modell trainiert wird, um fünfzig unterschiedliche Absichten zu interpretieren, dann kann das Trainieren des Intent-Slot-basierten Modells für jede Absicht eine große Anzahl von Trainingsbeispielen (z.B. zehn Trainingsbeispiele, fünfzig Trainingsbeispiele, einhundert Beispiele usw.) erfordern, die spezifisch für die jeweilige Absicht sind. Je größer also die Anzahl der Absichten ist, für deren Interpretation diese Intent-Slot-basierten Modelle trainiert werden, desto größer ist die Menge an Trainingsdaten, Rechen-Ressourcen und/oder Zeit, die zum Trainieren der Intent-Slot-basierten Modelle benötigt wird.
  • Aus diesem Grund können andere Dialogsysteme Zero-Shot-Modelle verwenden, die in der Lage sind, zwischen verschiedenen Absichten mit Hilfe von Ankern zu differenzieren. Ein Zero-Shot-Modell kann z.B. mit einer Reihe von Absichten assoziiert sein, wobei jede dieser Absichten weiter mit einem oder mehreren Ankern (z.B. Beispielabfragen) assoziiert ist. Daher kann das Zero-Shot-Modell zur Interpretation von Text bestimmen, dass der Text sich auf einen der Anker bezieht, und den identifizierten Anker verwenden, um eine mit dem Eingabetext assoziierte Absicht zu bestimmen. Zero-Shot-Modelle benötigen jedoch in der Regel mehr Rechen-Ressourcen zum Betrieb als Intent-Slot-basierte (Absicht-Slot-basierte) Modelle. Außerdem haben die Zero-Shot-Modelle manchmal eine geringere Genauigkeit als die Intent-Slot-basierten Modelle, die, wie hier beschrieben, spezifisch für jede der Absichten trainiert werden, die die Intent-Slot-basierten Modelle interpretieren.
  • ZUSAMMENFASSUNG
  • Ausführungsbeispiele der vorliegenden Offenbarung betreffen das Bestimmen von Absichten und Antworten unter Verwendung von maschinellem Lernen in konversationellen KI-Systemen und -Anwendungen. Es werden Systeme und Verfahren offenbart, die (ein) maschinelle(s) Lernmodell(e) und (eine) Datendatei(en) verwenden, die Absichten miteinander assoziieren (z.B. unter Verwendung einer baumartigen Struktur), um eine finale, mit dem Text assoziierte Absicht zu bestimmen. Beispielsweise kann der Text initial unter Verwendung des/der maschinellen Lernmodells/Modelle (z.B. eines ersten maschinellen Lernmodells) verarbeitet werden, um eine erste, mit dem Text assoziierte Absicht zu bestimmen. Die Datendatei(en) kann (können) dann verwendet werden, um Informationen (z.B. Anker) für eine oder mehrere zweite Absichten (z.B. eine oder mehrere Unterabsichten) zu bestimmen, die sich auf die erste Absicht beziehen (engl. related to, dt. auch: die mit der ersten Absicht in einer Beziehung stehen, die mit der ersten Absicht verbunden sind, mit der ersten Absicht in Zusammenhang stehen). Als nächstes können der Text und die Informationen unter Verwendung des/der maschinellen Lernmodells/Modelle (z.B. eines zweiten maschinellen Lernmodells oder desselben ersten maschinellen Lernmodells) verarbeitet werden, um aus dem einen oder den mehreren zweiten Absichten eine zweite Absicht zu bestimmen, die mit dem Text assoziiert ist. Dieser Prozess kann dann wiederholt werden, um eine finale Absicht zu bestimmen, die mit dem Text assoziiert ist.
  • Im Gegensatz zu herkömmlichen Systemen, die die oben beschriebenen Intent-Slot-basierten Modelle verwenden, sind die aktuellen Systeme in einigen Ausführungsbeispielen in der Lage, mit Text assoziierte Absichten zu identifizieren, ohne das/die maschinelle(n) Lernmodell(e) für jede Absicht zu trainieren. Vielmehr sind die aktuellen Systeme in der Lage, die mit dem Text assoziierten Absichten zu bestimmen, indem sie die Assoziationen zwischen den Absichten und den mit den Absichten assoziierten Informationen (z.B. Ankern) verwenden. Wie hier beschrieben, kann die Reduzierung der Anzahl der Absichten, für deren Interpretation das maschinelle Lernmodell bzw. die maschinellen Lernmodelle spezifisch trainiert werden, die Menge an Trainingsdaten, Rechen-Ressourcen und/oder Zeit reduzieren, die zum Trainieren des maschinellen Lernmodells bzw. der maschinellen Lernmodelle erforderlich sind.
  • Darüber hinaus sind die aktuellen Systeme, im Gegensatz zu den konventionellen Systemen, die die oben beschriebenen Zero-Shot-Modelle verwenden, in einigen Ausführungsbeispielen in der Lage, die mit dem Text assoziierten Absichten mit weniger Rechen-Ressourcen zu bestimmen. Anstatt beispielsweise Informationen (z.B. Anker) zu verarbeiten, die mit jeder Absicht assoziiert sind, können die aktuellen Systeme nur Informationen (z.B. Anker) verarbeiten, die mit einer oder mehreren Teilabsichten assoziiert sind, die sich auf eine bereits identifizierten Absicht beziehen. Im Gegensatz zu diesen konventionellen Systemen sind die aktuellen Systeme in einigen Ausführungsbeispielen außerdem in der Lage, die mit dem Text assoziierten Absichten genauer zu bestimmen, indem sie die Assoziationen zwischen den Absichten, die mit den Absichten assoziierten Informationen und die verschiedenen Verarbeitungsvorgänge verwenden, die dazu dienen, die Identifizierung von Unterabsichten fortzusetzen, bis eine mit dem Text assoziierte finale Absicht identifiziert ist.
  • Es werden weiter Systeme und Verfahren offenbart, die ein maschinelles Lernmodell bzw. maschinelle Lernmodelle und eine Datendatei bzw. Datendateien verwenden, die Anforderungen (z.B. Fragen) mit Antworten (z.B. Antworten) assoziiert bzw. assoziieren, um finale Antworten auf Anforderungen zu generieren. Beispielsweise können das/die maschinelle(n) Lernmodell(e) Konfidenzwerte bestimmen, die Ähnlichkeiten zwischen den Anforderungen aus der/den Datendatei(en) und einer durch Textdaten repräsentierten Eingabe-Anforderung anzeigen. Die Datendatei(en) wird (werden) dann verwendet, um basierend auf den Konfidenzwerten eine der Antworten zu bestimmen, die mit einer der Anforderungen assoziiert ist, die sich auf die Eingabe-Anforderung beziehen. Außerdem wird die Antwort verwendet, um eine finale Antwort auf die Eingabeanforderung zu generieren.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Die vorliegenden Systeme und Verfahren zum Bestimmen von Absichten und Antworten unter Verwendung von maschinellem Lernen in konversationellen KI-Systemen und - Anwendungen werden im Folgenden unter Bezugnahme auf die beigefügten Figuren detailliert beschrieben, wobei Folgendes dargestellt wird:
    • 1 zeigt ein beispielhaftes Datenflussdiagramm für einen Prozess zum Verwenden eines maschinellen Lernmodells (von maschinellen Lernmodellen), um eine mit einer Anforderung assoziierte Absicht zu bestimmen und eine Antwort auf die Anforderung zu bestimmen, gemäß einigen Ausführungsbeispielen der vorliegenden Offenbarung;
    • 2 zeigt ein Beispiel einer Hierarchie, die mit Absichten assoziiert ist, gemäß einigen Ausführungsbeispielen der vorliegenden Offenbarung;
    • 3 zeigt ein Beispiel für die Assoziierung von Absichten mit Ankern, gemäß einigen Ausführungsbeispielen der vorliegenden Offenbarung;
    • 4A-4B zeigen Beispiele für das Auswählen von Absichten unter Verwendung von Konfidenzwerten, gemäß einigen Ausführungsbeispielen der vorliegenden Offenbarung;
    • 5 zeigt ein Beispiel für das Generieren einer mit einer Anforderung assoziierten Antwort, gemäß einigen Ausführungsbeispielen der vorliegenden Offenbarung;
    • 6 zeigt ein beispielhaftes Datenflussdiagramm für einen Prozess zum Verwenden eines maschinellen Lernmodells/von maschinellen Lernmodellen und von Anforderung/Antwort-Paaren, um eine Antwort auf eine Anforderung zu bestimmen, gemäß einigen Ausführungsbeispielen der vorliegenden Offenbarung;
    • 7 zeigt ein Beispiel für ein Assoziieren von Anforderungen mit Antworten, gemäß einigen Ausführungsbeispielen der vorliegenden Offenbarung;
    • 8 zeigt ein Beispiel für ein Bestimmen von Konfidenzwerten, die mit Anforderungen assoziiert sind, gemäß einigen Ausführungsbeispielen der vorliegenden Offenbarung;
    • 9 zeigt ein Beispiel für ein Generieren einer mit einer Anforderung assoziierten Antwort, gemäß einigen Ausführungsbeispielen der vorliegenden Offenbarung;
    • 10 ist ein Flussdiagramm, das ein Verfahren zum Generieren einer Antwort auf eine Anforderung zeigt, gemäß einigen Ausführungsbeispielen der vorliegenden Offenbarung;
    • 11 ist ein Flussdiagramm, das ein Verfahren zum Bestimmen einer mit einer Anforderung assoziierten Absicht zeigt, gemäß einigen Ausführungsbeispielen der vorliegenden Offenbarung;
    • 12 ist ein Flussdiagramm, das ein Verfahren zur Verwendung von Anforderung/Antwort-Paaren zum Bestimmen einer Antwort auf eine Anforderung zeigt, gemäß einigen Ausführungsbeispielen der vorliegenden Offenbarung;
    • 13 ist ein Blockdiagramm eines beispielhaften Rechengeräts, das zur Verwendung beim Implementieren einiger Ausführungsbeispiele der vorliegenden Offenbarung geeignet ist; und
    • 14 ist ein Blockdiagramm eines beispielhaften Datenzentrums, das zur Verwendung bei der Implementierung einiger Ausführungsbeispiele der vorliegenden Offenbarung geeignet ist.
  • DETAILLIERTE BESCHREIBUNG
  • Es werden Systeme und Verfahren offenbart, die sich auf das Bestimmen von Absichten und Antworten durch maschinelles Lernen in konversationellen KI-Systemen und - Anwendungen beziehen. Beispielsweise kann (können) ein (mehrere) System(e) Daten (auch als Datendatei(en) bezeichnet) speichern, die Absichten miteinander assoziieren und/oder Absichten mit Informationen assoziieren. Die Datendatei(en) kann (können) beispielsweise eine erste Absicht mit einer oder mehreren zweiten Absichten assoziieren (z.B. eine erste Ebene von Unterabsichten), eine oder mehrere der zweiten Absicht(en) mit einer oder mehreren dritten Absichten assoziieren (z.B. eine zweite Ebene von Unterabsichten), eine oder mehrere der dritten Absicht(en) mit einer oder mehreren vierten Absichten assoziieren (z.B. eine dritte Ebene von Unterabsichten), und/oder so weiter. Zusätzlich können die Datendatei(en) eine oder mehrere (z.B. jede) der Absichten mit Informationen assoziieren, wobei die mit einer Absicht assoziierten Informationen einen oder mehrere mit der Absicht assoziierte Anker (Ankerbeispiele), einen oder mehrere mit der Absicht assoziierte Konfidenzschwellenwerte, eine oder mehrere mit der Absicht assoziierte Aktionen und/oder andere Informationen umfassen können.
  • Das (die) System(e) kann (können) dann ein oder mehrere maschinelle Lernmodelle zusammen mit der (den) Datendatei(en) verwenden, um mit Textdaten assoziierte Absichten zu bestimmen. Beispielsweise kann (können) das (die) System(e) Textdaten empfangen und/oder generieren, die eine Anforderung repräsentieren, wie etwa Textdaten, die einen oder mehrere Buchstaben, Wörter, Zahlen und/oder Symbole repräsentieren. In einem ersten Beispiel kann das System von einem Benutzergerät Audiodaten empfangen, die die Sprache des Benutzers repräsentieren, und dann die Audiodaten verarbeiten, um die Textdaten zu generieren (z.B. Text, der eine Abschrift und/oder Diarisierung der Sprache des Benutzers darstellt). In einem zweiten Beispiel kann das System bzw. können die Systeme die Textdaten, die die Anforderung repräsentieren, von einem Benutzergerät empfangen. In jedem dieser Beispiele kann die Anforderung (engl. request) eine Abfrage (engl. query, dt. auch Anfrage) nach Informationen umfassen, die mit einem Thema assoziiert sind (z.B. ein Objekt, ein Element, ein Merkmal usw.), eine Anforderung, eine mit einem Thema assoziierte Aktion durchzuführen (z.B. eine Essensreservierung zu planen, eine Reise zu buchen, eine Liste zu generieren, Inhalte bereitzustellen usw.), und/oder jeden anderen Typ von Anforderung. Das (die) System(e) kann (können) dann die Textdaten unter Verwendung des (der) maschinellen Lernmodells (-modelle) verarbeiten, um die mit der Anforderung assoziierte Absicht zu bestimmen.
  • Wie hierin beschrieben, kann eine Absicht z.B. das Buchen einer Reservierung (z.B. eines Fluges, eines Hotels, eines Abendessens usw.), das Planen eines Ereignisses (z.B., z.B. Buchung eines Fluges, Buchung eines Hotels, Buchung eines Abendessens usw.), Planung eines Ereignisses (z.B. Planung einer Geburtstagsparty, Planung eines Sportwettkampfes usw.), Beginn einer Kommunikation (z.B. Tätigung eines Telefonanrufs, Beginn einer Videokonferenz usw.), Erstellung einer Liste (z.B. Erstellung einer Einkaufsliste, Erstellung einer To-Do-Liste usw.), Erwerb eines Artikels und/oder einer Dienstleistung, Anforderung von Informationen, die mit einem Artikel und/oder einer Dienstleistung assoziiert sind, und/oder jede andere Absicht umfassen, ist jedoch nicht darauf beschränkt. Um die Absicht zu identifizieren, kann das System (die Systeme) initial die Textdaten unter Verwendung eines maschinellen Lernmodells (z.B. eines ersten Intent-Slot-basierten Modells, eines ersten Zero-Shot-Modells usw.) verarbeiten, das darauf trainiert ist, eine erste Absicht zu bestimmen, die mit den Textdaten assoziiert ist. Das (die) System(e) kann (können) dann die Datendatei(en) verwenden, um zu bestimmen, dass die erste Absicht mit zweiten Absichten assoziiert ist (z.B. Unterabsichten der ersten Ebene) und/oder die mit den zweiten Absichten assoziierten Informationen zu bestimmen.
  • Das (die) System(e) kann (können) dann die Textdaten zusammen mit Daten, die die mit den zweiten Absichten assoziierten Informationen repräsentieren, unter Verwendung eines maschinellen Lernmodells (von maschinellen Lernmodellen) verarbeiten. In einigen Beispielen werden die Textdaten und die Daten, die die Informationen repräsentieren, unter Verwendung desselben maschinellen Lernmodells/derselben maschinellen Lernmodelle verarbeitet, während in anderen Beispielen die Textdaten und die Daten, die die Informationen repräsentieren, unter Verwendung desselben oder eines unterschiedlichen maschinellen Lernmodells/derselben maschinellen Lernmodelle verarbeitet werden (z.B. ein zweites Intent-Slot-basiertes Modell, ein zweites Zero-Shot-Modell, usw.). In jedem der Beispiele kann das (die) maschinelle(n) Lernmodell(e) basierend auf der Verarbeitung einen jeweiligen Konfidenzwert für eine oder mehrere (z.B. jede) der zweiten Absichten bestimmen, die sich auf die erste Absicht beziehen (dt. auch: die mit der ersten Absicht in Beziehung stehen). Das (die) System(e) (z.B. das (die) maschinelle(n) Lernmodell(e)) kann (können) dann eine der zweiten Absichten auswählen, die mit einem Konfidenzwert assoziiert ist, der einen Schwellenwert erfüllt (z.B. gleich oder größer ist), oder das (die) System(e) kann (können) bestimmen, die erste Absicht zu verwenden, wenn der (die) Konfidenzwert(e) den Schwellenwert nicht erfüllt (z.B. kleiner ist).
  • In einigen Beispielen kann (können) das (die) System(e) diese Prozesse wiederholen (z.B. Identifizieren von Informationen für eine bzw. mehrere in Beziehung stehende Absicht(en), Verarbeiten der Informationen und der Textdaten unter Verwendung des (der) maschinellen Lernmodells (-modelle), um eine neue Absicht zu bestimmen, usw.), bis ein oder mehrere Ereignisse eintreten. In einem ersten Beispiel können die Absichten, wie hierin beschrieben, unter Verwendung einer baumartigen Struktur in Beziehung gesetzt werden, sodass es unterschiedliche Ebenen von Absichten (Absichtsebenen) gibt. Daher kann (können) das (die) System(e) diese Prozesse so lange durchführen, bis die letzte Absichtsebene erreicht ist. In einem zweiten Beispiel, ebenfalls wie hier beschrieben, kann das System bestimmen, ob der Konfidenzwert für eine Absichtsebene einem Schwellenwert entspricht. Daher kann (können) das (die) System(e) diese Prozesse so lange durchführen, bis es (sie) bestimmt (bestimmen), dass der (die) Konfidenzwert(e) für eine Absichtsebene nicht dem Schwellenwert entspricht (entsprechen). Dies sind nur einige Beispiele für Ereignisse, die das System bzw. die Systeme zur Identifizierung einer finalen Absicht bei der Verarbeitung der Textdaten verwenden kann bzw. können, in anderen Beispielen kann das System bzw. können die Systeme zusätzliche und/oder alternative Ereignisse verwenden.
  • Das (die) System(e) kann (können) dann die mit den Textdaten assoziierte finale Absicht verwenden, um mit der Anforderung assoziierte Ausgabedaten zu generieren, wobei die Ausgabedaten eine Antwort repräsentieren können. In einigen Beispielen kann (können) das (die) System(e) die Ausgabedaten unter Verwendung der Datendatei(en) generieren. Zum Beispiel und wie hierin beschrieben, können die Datendatei(en) eine oder mehrere der Absichten mit einer oder mehreren Aktionen assoziieren, wobei eine Aktion eine Struktur für eine Antwort angeben kann. Daher kann (können) das (die) System(e) die mit der finalen Absicht assoziierte(n) Aktion(en) verwenden, um die Ausgabedaten zu generieren. Zusätzlich oder alternativ kann das System in einigen Beispielen die Ausgabedaten unter Verwendung eines anderen maschinellen Lernmodells oder anderer maschineller Lernmodelle generieren, das/die trainiert ist/sind, um die Textdaten zusammen mit der finalen Absicht zu verarbeiten, um die Ausgabedaten zu generieren.
  • In einigen Beispielen kann das System zusätzlich oder alternativ zur Verwendung der mit den Absichten assoziierten Datendatei(en) eine Datendatei(en) verwenden, die Anforderungen (z.B. Fragen) mit Antworten (z.B. Beantwortungen oder Erwiderungen) assoziiert, um die Ausgabedaten zu generieren. Die Datendatei(en) kann (können) zum Beispiel ein erstes Paar von Anforderungen mit einer ersten Antwort (Antworten), ein zweites Paar von Anforderungen mit einer zweiten Antwort (Antworten), ein drittes Paar von Anforderungen mit einer dritten Antwort (Antworten) und/oder so weiter assoziieren. Das (die) System(e) kann (können) dann die Textdaten und die Datendatei(en) unter Verwendung eines maschinellen Lernmodells (von maschinellen Lernmodellen) verarbeiten, um zu bestimmen, dass die Textdaten sich auf eine der Anforderungen beziehen (verbunden sind). Das (die) maschinelle(n) Lernmodell(e) kann (können) beispielsweise so trainiert werden, dass es (sie) einen entsprechenden Konfidenzwert ausgibt (ausgeben), der mit einer oder mehreren (z.B. jeder) der Anforderungen assoziiert ist. In einigen Beispielen kann das (die) System(e) dann bestimmen, dass sich die Textdaten auf die Anforderung beziehen, die den höchsten Konfidenzwert aufweist. In einigen Beispielen kann das System bzw. können die Systeme bestimmen, dass die Textdaten sich auf die Anforderung beziehen, die den höchsten Konfidenzwert aufweist, der auch einen Schwellenwert erfüllt (z.B. gleich oder größer ist).
  • Das (die) System(e) kann (können) dann die in Beziehung stehende (verbundene) Anforderung verwenden, um die Ausgabedaten zu generieren. Ist die in Beziehung stehende Anforderung mit einer einzigen Antwort assoziiert, kann das System die Ausgabedaten unter Verwendung der Antwort generieren. Wenn die in Beziehung stehende Anforderung mit mehreren Antworten assoziiert ist, kann (können) das (die) System(e) die Ausgabedaten unter Verwendung mindestens einer der Antworten generieren. Daher kann (können) das (die) System(e) die Antwort zum Generieren der Ausgabedaten zufällig auswählen und/oder das (die) System(e) kann (können) eine oder mehrere zusätzliche Techniken verwenden, um die Antwort zum Generieren der Ausgabedaten auszuwählen.
  • In einigen Beispielen kann das System bzw. können die Systeme diese Techniken kombinieren, um mit Textdaten assoziierte Ausgabedaten zu generieren. Beispielsweise kann (können) das (die) System(e) die hier beschriebenen Prozesse durchführen und dabei die mit den Absichten assoziierte(n) Datendatei(en) verwenden, um eine finale Absicht zu bestimmen, die mit den Textdaten assoziiert ist. Das (die) System(e) kann (können) dann die hierin beschriebenen Prozesse durchführen, indem es (sie) die Datendatei(en) verwendet (verwenden), die mit den Anfrage/Antwort-Paaren assoziiert sind, um die Ausgabedaten basierend auf der finalen Absicht zu generieren. Die Datendatei(en) kann (können) zum Beispiel die finale Absicht mit einem oder mehreren Frage/Antwort-Paaren assoziieren. Daher kann (können) das (die) System(e) nach der Identifizierung der finalen Absicht die hier beschriebenen Prozesse durchführen, um die Antwort zu identifizieren, die mit den Textdaten assoziiert ist. Das (die) System(e) kann (können) dann die Ausgabedaten unter Verwendung der Antwort generieren.
  • Die hierin beschriebenen Systeme und Verfahren können für eine Vielzahl von Zwecken verwendet werden, z.B. und ohne Einschränkung für die Verwendung in Systemen, die assoziiert sind mit Maschinensteuerung, Maschinenfortbewegung, Maschinenantrieb, Generierung synthetischer Daten, Modelltraining, Wahrnehmung, Augmented Reality, Virtual Reality, Mixed Reality, Robotik, Sicherheit und Überwachung, Simulation und Digital Twins, autonomen oder halbautonomen Maschinenanwendungen, Deep Learning, Umgebungssimulation, Objekt- oder Akteurssimulation und/oder Digital Twins, Datenzentrumsverarbeitung, konversationeller KI, Lichttransport-Simulation (z.B., Ray-Tracing, Path-Tracing usw.), kollaborative Erstellung von Inhalten für 3D-Assets, Cloud-Computing und/oder andere geeignete Anwendungen.
  • Daher können die offenbaren Ausführungsbeispiele eine Vielzahl unterschiedlicher Systeme umfassen, wie z.B. Automobilsysteme (z.B. ein bordeigenes Infotainmentsystem („In-Vehicle Infotainment“, IVI) eines autonomen, halbautonomen oder nicht-autonomen Fahrzeugs oder einer Maschine), Systeme, die unter Verwendung eines Roboters implementiert werden, Luftfahrtsysteme, mediale Systeme, Bootssysteme, intelligente Gebietsüberwachungssysteme, Systeme zum Durchführen von Deep-Learning-Operationen, Systeme zum Durchführen von Simulationsoperationen, Systeme zum Durchführen von Digital-Twin-Operationen, Systeme, die unter Verwendung eines Edge-Geräts implementiert werden, Systeme, die eine oder mehrere virtuelle Maschinen (VMs) enthalten, Systeme zur Durchführung von Operationen zur Erzeugung synthetischer Daten, Systeme, die zumindest teilweise in einem Datenzentrum implementiert sind, Systeme zur Durchführung von konversationellen KI-Operationen, Systeme zur Generierung oder Präsentation eines digitalen Avatars, Systeme zur Durchführung von Cloud-Computing-Simulationen, Systeme zur kollaborativen Erstellung von Inhalten für 3D-Assets, Systeme, die zumindest teilweise unter Verwendung von Cloud-Computing-Ressourcen implementiert sind, und/oder andere Arten von Systemen.
  • Bezug nehmend auf 1 zeigt 1 ein beispielhaftes Datenflussdiagramm für einen Prozess 100 zur Verwendung eines maschinellen Lernmodells (von maschinellen Lernmodellen), um eine mit einer Anforderung assoziierte Absicht zu bestimmen und eine Antwort auf die Anforderung zu ermitteln, gemäß einigen Ausführungsbeispielen der vorliegenden Offenbarung. Es ist zu verstehen, dass diese und andere hier beschriebene Anordnungen nur als Beispiele aufgeführt sind. Andere Anordnungen und Elemente (z.B. Maschinen, Schnittstellen, Funktionen, Anordnungen, Gruppierungen von Funktionen usw.) können zusätzlich zu oder anstelle der gezeigten verwendet werden, und einige Elemente können ganz weggelassen werden. Weiter handelt es sich bei vielen der hier beschriebenen Elemente um funktionale Entitäten, die als einzelne oder verteilte Komponenten oder in Verbindung mit anderen Komponenten und in jeder geeigneten Kombination und an jedem geeigneten Ort implementiert werden können. Verschiedene hier beschriebene Funktionen, die von Entitäten durchgeführt werden, können durch Hardware, Firmware und/oder Software ausgeführt werden. Beispielsweise können verschiedene Funktionen von einem Prozessor ausgeführt werden, der im Speicher gespeicherte Anweisungen ausführt.
  • Der Prozess 100 kann eine Verarbeitungskomponente 102 umfassen, die Eingabedaten 104 empfängt, z.B. von einem Benutzergerät. In einigen Beispielen können die Eingabedaten 104 Audiodaten enthalten, die (z.B. unter Verwendung eines Mikrofons) generiert und/oder von dem Benutzergerät gesendet werden, wobei die Audiodaten die Benutzersprache eines oder mehrerer Benutzer repräsentieren. Zusätzlich oder alternativ können die Eingabedaten 104 in einigen Beispielen Textdaten enthalten, die (z.B. unter Verwendung einer Tastatur, eines Touchscreens und/oder eines anderen Eingabegeräts) generiert und/oder vom Benutzergerät gesendet werden, wobei die Textdaten einen oder mehrere Buchstaben, Wörter, Zahlen und/oder Symbole repräsentieren. Dies sind zwar nur einige Beispieltypen von Daten, die die Eingabedaten 104 umfassen können, aber in anderen Beispielen können die Eingabedaten 104 auch jeden anderen Typ von Daten umfassen (z.B. Bilddaten, Videodaten, Sensordaten usw.).
  • Der Prozess 100 kann beinhalten, dass die Verarbeitungskomponente 102 die Eingabedaten 104 verarbeitet, um Textdaten 106 zu generieren. Für ein erstes Beispiel, daher, wenn die Eingabedaten 104 Audiodaten enthalten, die die Sprache des Benutzers repräsentieren, kann die Verarbeitungskomponente 102 ein oder mehrere Sprachverarbeitungsmodelle enthalten, wie z.B. ein oder mehrere Modelle der automatischen Spracherkennung (Automatic Speech Recognition, ASR), ein oder mehrere Sprache-zu-Text-Modelle (Speech to Text, STT), ein oder mehrere Modelle für die Verarbeitung natürlicher Sprache (Natural Language Processing, NLP), ein oder mehrere Diarisierungsmodelle und/oder ähnliches, die konfiguriert sind, um die Textdaten 106 zu generieren, die mit den Audiodaten assoziiert sind. Beispielsweise können die Textdaten 106 ein Transkript (z.B. einen oder mehrere Buchstaben, Wörter, Symbole, Zahlen usw.) repräsentieren, das mit der Benutzersprache assoziiert ist. In einem zweiten Beispiel, etwa wenn die Eingabedaten 104 Textdaten enthalten, kann der Prozess 100 die Verarbeitungskomponente 102 nicht enthalten, sodass die Textdaten 106 die Eingabedaten 104 enthalten und/oder die Verarbeitungskomponente 102 den durch die Eingabedaten 104 repräsentierten Text verarbeiten kann, um den Text in ein mit den Textdaten 106 assoziiertes Format zu konvertieren.
  • Der Prozess 100 kann eine Absichtsidentifizierungskomponente 108 umfassen, die die Textdaten 106 in ein oder mehrere Modelle 110 (in einigen Beispielen auch als „erste(s) Modell(e) 110“ bezeichnet) zur Verarbeitung eingibt (z.B. unter Verwendung eines oder mehrerer neuronaler Netzwerke). Das (die) erste(n) Modell(e) 110 kann (können) beispielsweise ein Intent-Slot-basiertes Modell (Modelle), ein Zero-Shot-Modell (Modelle), ein semantisches Modell (semantische Modelle), ein Internment-Modell (Internment-Modelle) und/oder jeden anderen Typ von Modell umfassen, das trainiert ist, die Textdaten 106 zu verarbeiten, um eine oder mehrere mit dem Text assoziierte Absichten zu identifizieren. Wie hierin beschrieben, kann eine Absicht eines der Folgenden umfassen, ist jedoch nicht darauf beschränkt: Buchen einer Reservierung (z.B. Buchen eines Fluges, Buchen eines Hotels, Reservieren eines Abendessens usw.), Planen eines Ereignisses (z.B., z.B. Buchung eines Fluges, Buchung eines Hotels, Buchung eines Abendessens usw.), Planung eines Ereignisses (z.B. Planung einer Geburtstagsfeier, Planung eines Sportwettkampfes usw.), Beginn einer Kommunikation (Telefonanruf, Videokonferenz usw.), Erstellung einer Liste (z.B. Erstellung einer Einkaufsliste, Erstellung einer Aufgabenliste usw.), Erwerb eines Artikels und/oder einer Dienstleistung, Anforderung von Informationen, die mit einem Artikel und/oder einer Dienstleistung assoziiert sind, und/oder jede andere beliebige Absicht. In einem ersten Beispiel, wenn die Textdaten 106 einen Text (z.B. eine Anforderung) repräsentieren, der „Welche Artikel sind auf der Speisekarte verfügbar“ beinhaltet, kann die Absicht „Abfrage der Speisekarte“ oder „Anfordern von Informationen zur Speisekarte“ sein. In einem zweiten Beispiel, wenn die Textdaten 106 einen Text (z.B. eine Anforderung) repräsentieren, der „Wie viel kostet dieser Artikel?“ enthält, kann die Absicht „Abfrage des Preises“ oder „Anfordern von Preisinformationen“ sein.
  • In einigen Beispielen kann das erste Modell bzw. können die ersten Modelle 110 basierend auf der Verarbeitung eine einzige Absicht identifizieren, die mit den Textdaten 106 assoziiert ist. In einigen Beispielen können das/die erste(n) Modell(e) 110 basierend auf der Verarbeitung mehrere Absichten identifizieren, die mit den Textdaten assoziiert sind. In jedem der Beispiele kann das (die) erste(n) Modell(e) Absichtsdaten 112 generieren und dann ausgeben, die die identifizierte(n) Absicht(en) repräsentieren.
  • Der Prozess 100 kann beinhalten, dass die Absichtsidentifizierungskomponente 108 die Textdaten 106 und zumindest einen Teil der Absichtskonfidenzdaten 114 in ein oder mehrere Modelle 116 (in einigen Beispielen auch als „zweite(s) Modell(e) 116“ bezeichnet) zur Verarbeitung eingibt (z.B. unter Verwendung eines oder mehrerer neuronaler Netzwerke). Das (die) zweite(n) Modell(e) 116 kann (können) ein Intent-Slot-basiertes Modell (Modelle), ein Zero-Shot-Modell (Modelle), ein semantisches Modell (semantische Modelle), ein Internment-Modell (Internment-Modelle) und/oder jeden anderen Typ von Modell umfassen, das trainiert wird, um die Textdaten 106 zu verarbeiten, um eine oder mehrere mit dem Text assoziierte Absichten zu identifizieren. Während das Beispiel in 1 das/die zweite(n) Modell(e) 116 als von dem/den ersten Modell(en) 110 getrennt zeigt, kann das/die zweite(n) Modell(e) 116 in anderen Beispielen das/die erste(n) Modell(e) 110 enthalten.
  • Wie im Beispiel von 1 gezeigt, können die Absichtskonfidenzdaten 114 Informationen repräsentieren, die mit Absichten assoziiert sind, wie etwa eine Absichtshierarchie 118, Anker 120, Schwellenwerte 122 und/oder Aktionen 124, die mit den Absichten assoziiert sind. In einigen Beispielen können die Absichtskonfidenzdaten 114 einer oder mehreren Datendateien entsprechen, die diese Informationen enthalten. In einem ersten Beispiel können die Absichtskonfidenzdaten 114 eine einzelne Datei repräsentieren, die Informationen enthält, die mit einer einzelnen Absichtshierarchie 118 assoziiert sind. In einem zweiten Beispiel können die Absichtskonfidenzdaten 114 mehrere Dateien repräsentieren, die Informationen enthalten, die mit einer einzigen Absichtshierarchie 118 assoziiert sind. In einem dritten Beispiel können die Absichtskonfidenzdaten 114 eine oder mehrere Dateien repräsentieren, die Informationen enthalten, die mit mehreren Absichtshierarchien 118 assoziiert sind.
  • Die Absichtshierarchie 118 kann die Beziehungen zwischen den Absichten anzeigen. Beispielsweise kann die Absichtshierarchie 118 eine erste(n) Absicht(en) anzeigen, die mit einer ersten Absichtsebene assoziiert ist/sind, eine zweite(n) Absicht(en), die mit einer zweiten Absichtsebene assoziiert ist/sind (z.B. eine erste Unterabsichtsebene), eine dritte(n) Absicht(en), die mit einer dritten Absichtsebene assoziiert ist/sind (z.B. eine zweite Unterabsichtsebene), eine vierte(n) Absicht(en), die mit einer vierten Absichtsebene assoziiert ist/sind (z.B. eine dritte Unterabsichtsebene), und/oder so weiter. In einigen Beispielen kann die Absichtshierarchie 118 eine beliebige Anzahl von Absichtsebenen umfassen. Beispielsweise kann die Absichtshierarchie eine Absichtsebene, zwei Absichtsebenen, fünf Absichtsebenen, zehn Absichtsebenen und/oder eine beliebige andere Anzahl von Absichtsebenen umfassen, ist aber nicht darauf beschränkt. In einigen Beispielen umfasst (umfassen) die einer Absichtsebene assoziierte(n) Absicht(en) eine (mehrere) Unterabsicht(en) für die Absicht(en) aus der vorangehenden Absichtsebene. Beispielsweise und unter Verwendung des obigen Beispiels kann die zweite(n) Absicht(en), die mit der zweiten Absichtsebene assoziiert ist/sind, eine Unterabsicht(en) für die erste(n) Absicht(en) enthalten, die mit der ersten Absichtsebene assoziiert ist/sind, und die dritte(n) Absicht(en), die mit der dritten Absichtsebene assoziiert ist/sind, kann/können eine Unterabsicht(en) für die zweite(n) Absicht(en) enthalten, die mit der zweiten Absichtsebene assoziiert ist/sind.
  • 2 zeigt beispielsweise ein Beispiel für eine Absichtshierarchie 202 (die eine Absichtshierarchie 118 repräsentieren und/oder umfassen kann), die mit Absichten assoziiert ist, gemäß einigen Ausführungsbeispielen der vorliegenden Offenbarung. Im Beispiel von 2 kann eine erste Absichtsebene 204(1) eine erste Absicht 206(1), eine zweite Absichtsebene 204(2) eine zweite Absicht 206(2) und eine dritte Absicht 206(3), eine dritte Absichtsebene 204(3) eine vierte Absicht 206(4), eine fünfte Absicht 206(5), eine sechste Absicht 206(6) und eine siebte Absicht 206(7), und eine vierte Absichtsebene 204(4) eine achte Absicht 206(8) und eine neunte Absicht 206(9) umfassen. Während das Beispiel in 2 die Absichtshierarchie 202 mit vier Absichtsebenen 204(1)-(4) und neun Absichten 206(1)-(9) zeigt, kann die Absichtshierarchie 202 in anderen Beispielen eine beliebige Anzahl von Absichtsebenen und/oder eine beliebige Anzahl von Absichten umfassen.
  • Im Beispiel von 2 sind die zweite Absicht 206(2) und die dritte Absicht 206(3), die in der zweiten Absichtsebene 204(2) enthalten sind, Unterabsichten zu der ersten Absicht 206(1), die in der ersten Absichtsebene 204(1) enthalten ist. Außerdem sind die vierte Absicht 206(4), die fünfte Absicht 206(5) und die sechste Absicht 206(6), die in der dritten Absichtsstufe 204(3) enthalten sind, Unterabsichten zu der zweiten Absicht 206(2), die in der zweiten Absichtsstufe 204(2) enthalten ist, während die siebte Absicht 206(7), die in der dritten Absichtsstufe 204(3) enthalten ist, eine Unterabsicht zu der dritten Absicht 206(3) ist, die in der zweiten Absichtsstufe 204(2) enthalten ist. Weiterhin sind die achte Absicht 206(8) und die neunte Absicht 206(9), die in der vierten Absichtsstufe 204(4) enthalten sind, Unterabsichten zu der fünften Absichtsstufe 204(5), die in der dritten Absichtsstufe 204(3) enthalten ist.
  • Bezugnehmend auf das Beispiel von 1, können die Anker 120 Textinstanzen enthalten, die mit den Absichten assoziiert sind. Wie hierin beschrieben, kann eine Textinstanz eine Abfrage, eine Anforderung, eine Aussage, eine Frage, eine Antwort, eine Zahl(en) und/oder jeden anderen Typ von Text umfassen, ist aber nicht darauf beschränkt. In einigen Beispielen können die Absichtskonfidenzdaten 114 eine oder mehrere (z.B. jede) Absicht(en) mit einer Anzahl von Ankern assoziieren. Zum Beispiel kann eine erste Absicht mit einer ersten Anzahl von Ankern 120 assoziiert sein, eine zweite Absicht kann mit einer zweiten Anzahl von Ankern 120 assoziiert sein, eine dritte Absicht kann mit einer dritten Anzahl von Ankern 120 assoziiert sein, eine vierte Absicht kann mit einer vierten Anzahl von Ankern 120 assoziiert sein, und/oder so weiter. Die Anzahl der Anker 120 kann einen Anker 120, zwei Anker 120, fünf Anker 120, zehn Anker 120 und/oder eine beliebige andere Anzahl von Ankern 120 umfassen, ist aber nicht darauf beschränkt.
  • 3 zeigt beispielsweise ein Beispiel für ein Assoziieren von Absichten mit Ankern, gemäß einigen Ausführungsbeispielen der vorliegenden Offenbarung. Wie gezeigt, wird eine erste Absicht 302(1), die „Abfrage_Speisekarte“ (z.B. Abfrage einer Speisekarte) umfasst, mit Ankern 304(1) assoziiert, die „Welche Artikel sind auf der Speisekarte verfügbar“, „Wie viel kostet dieser Artikel auf der Speisekarte“ und „Haben Sie diesen Artikel auf der Speisekarte“ umfassen. Eine zweite Absicht 302(2), die „Preis_Speisekarte“ (z.B. Abfrage eines Preises) beinhaltet, ist mit Ankern 304(2) assoziiert, die „Wie hoch ist der Preis dieses Artikels“, „Wie viel kostet dieser Artikel“ und „Was kostet dieser Artikel auf der Speisekarte“. Zusätzlich ist eine dritte Absicht 302(3), die „Kalorien Speisekarte“ (z.B. die Abfrage von Kalorien) beinhaltet, mit Ankern 304(3) assoziiert, die „Wie viele Kalorien hat dieser Artikel“ und „Wie hoch ist die Kalorienzahl“ beinhalten. In einigen Beispielen kann die erste Absicht 302(1) in einer ersten Absichtsebene enthalten sein und die Absichten 302(2)-(3) können Unterabsichten der ersten Absicht 302(1) enthalten. Beispielsweise kann die erste Absicht 302(1) die erste Absicht 206(1) repräsentieren, die zweite Absicht 302(2) kann die zweite Absicht 206(2) repräsentieren und die dritte Absicht 302(3) kann die dritte Absicht 206(3) repräsentieren.
  • Zurückkommend auf das Beispiel von 1 können die Schwellenwerte 122 einen oder mehrere Schwellenwerte umfassen, die zur Identifizierung von Absichten verwendet werden, wie hier detaillierter beschrieben wird. Darüber hinaus können die Aktionen 124 unterschiedliche Aktionen umfassen, die basierend auf den ausgewählten Absichten durchgeführt werden können. Wie hierin beschrieben, kann eine Aktion u.a. Folgendes umfassen, ist jedoch nicht darauf beschränkt: Aktivieren der Klassifizierung von Unterabsichten (z.B. das Durchführen der hierin beschriebenen Prozesse zum Identifizieren einer Unterabsicht), Aktivieren der Klassifizierung von Unterabsichten unter Verwendung eines speziellen Modells (z.B. des ersten Modells (der ersten Modelle) 110, des zweiten Modells (der zweiten Modelle) 116 usw.), Bereitstellen einer Antwort (wobei die Aktion den Text der Antwort umfassen kann), Erfüllen einer Anforderung (z.B. das Buchen einer Reservierung, das Bestellen eines Artikels, das Planen einer Veranstaltung usw.) und/oder jeder andere Typ von Aktion.
  • Die Absichtsidentifizierungskomponente 108 kann den Teil der Absichtskonfidenzdaten 114 identifizieren, der in das/die zweite(n) Modell(e) 116 während einer ersten Instanz der Verarbeitung eingegeben werden soll, die mit der durch die Absichtsdaten 112 repräsentierten ersten Absicht assoziiert ist. In einigen Beispielen identifiziert die Absichtsidentifizierungskomponente 108 den Teil der Absichtskonfidenzdaten 114 als einen oder mehrere Identifikatoren der Unterabsicht(en), die mit der ersten Absicht assoziiert sind (z.B. aus der Absichtshierarchie 118), den oder die Anker 120, die mit der oder den Unterabsicht(en) assoziiert sind, und/oder den Schwellenwert 122, der mit der ersten Absicht assoziiert ist. Das (die) zweite(n) Modell(e) 116 kann (können) dann die Textdaten 106 und den Teil der Absichtskonfidenzdaten 114 verarbeiten und, basierend auf der Verarbeitung, Ausgabedaten 126 ausgeben. Wie dargestellt, enthalten die Ausgabedaten 126 zumindest Absichtsdaten 128, die eine oder mehrere der Unterabsicht(en) repräsentieren, und Konfidenzdaten 130, die einen oder mehrere Konfidenzwerte für die eine oder mehrere der Unterabsicht(en) repräsentieren. In einem ersten Beispiel können die Absichtsdaten 128 jede der Unterabsicht(en) repräsentieren und die Konfidenzdaten 130 können einen oder mehrere Konfidenzwerte repräsentieren, die mit jeder der Unterabsicht(en) assoziiert sind. In einem zweiten Beispiel können die Absichtsdaten 128 eine Unterabsicht repräsentieren, und die Konfidenzdaten 130 können den Konfidenzwert für die Unterabsicht repräsentieren. Daher kann die durch die Absichtsdaten 128 repräsentierte Unterabsicht die Unterabsicht mit dem höchsten Konfidenzwert umfassen.
  • In einigen Beispielen kann/können das/die zweite(n) Modell(e) 116 eine Anzahl von Konfidenzwerten für eine Unterabsicht bestimmen, wobei die Anzahl der Konfidenzwerte mit der Anzahl von Ankern 120 für die Unterabsicht assoziiert ist. Wenn die Unterabsicht beispielsweise mit drei Ankern 120 assoziiert ist, kann das (die) zweite(n) Modell(e) 116 drei Konfidenzwerte für die Unterabsicht ausgeben, wobei jeder der Anker 120 mit einem entsprechenden Konfidenzwert assoziiert ist. In einigen Beispielen kann das (die) zweite(n) Modell(e) 116 einen einzigen Konfidenzwert für eine Unterabsicht bestimmen. Wenn die Unterabsicht beispielsweise mit drei Ankern 120 assoziiert ist, kann das zweite Modell (bzw. die zweiten Modelle) 116 den höchsten Konfidenzwert unter den mit den Ankern 120 assoziierten Konfidenzwerten ausgeben.
  • Wie hierin beschrieben, kann ein mit einer Unterabsicht assoziierter Konfidenzwert eine Wahrscheinlichkeit angeben, dass die Unterabsicht mit den Textdaten 106 (z.B. der durch die Textdaten 106 repräsentierten Anforderung) assoziiert ist. Für eine Unterabsicht kann/können das/die zweite(n) Modell(e) 116 den/die Konfidenzwert(e) basierend auf Ähnlichkeiten zwischen dem Text des/der Anker(s) 120, der/die mit der Unterabsicht assoziiert ist/sind, und dem Text, der durch die Textdaten 106 repräsentiert wird, bestimmen. Beispielsweise ist der mit dem Anker 120 und/oder der Unterabsicht assoziierte Konfidenzwert umso größer, je größer die Ähnlichkeit zwischen dem Text eines Ankers 120 und dem durch die Textdaten 106 repräsentierten Text ist. Je geringer die Ähnlichkeit zwischen dem Text des Ankers 120 und dem durch die Textdaten 106 repräsentierten Text ist, desto geringer ist der Konfidenzwert, der mit dem Anker 120 und/oder der Unterabsicht assoziiert ist.
  • Die Absichtsidentifizierungskomponente 108 kann dann basierend auf den ausgegebenen Daten 126 einen oder mehrere Prozesse durchführen. Bestimmt die Absichtsidentifizierungskomponente 108 beispielsweise, dass der/die Konfidenzwert(e) den mit der ersten Absicht assoziierten Schwellenwert 122 nicht erfüllt/erfüllen (z.B. geringer ist), dann kann die Absichtsidentifizierungskomponente 108 bestimmen, die erste Absicht als finale Absicht für die Textdaten 106 zu verwenden. Bestimmt die Absichtsidentifizierungskomponente 108 jedoch, dass ein Konfidenzwert (bzw. mehrere Konfidenzwerte) den mit der ersten Absicht assoziierten Schwellenwert 122 erfüllt (z.B. gleich oder größer ist), dann kann die Absichtsidentifizierungskomponente 108 bestimmen, die mit dem Konfidenzwert (bzw. den Konfidenzwerten) assoziierte Unterabsicht (und/oder die Unterabsicht, die mit dem höchsten Konfidenzwert assoziiert ist) als zweite Absicht für die Textdaten 106 zu verwenden.
  • 4A zeigt beispielsweise ein erstes Beispiel für ein Auswählen einer Absicht unter Verwendung von Konfidenzwerten, gemäß einigen Ausführungsbeispielen der vorliegenden Offenbarung. Wie dargestellt, kann die erste Absicht 302(1) mit einem Schwellenwert 402 (der einen Schwellenwert 122 repräsentieren und/oder beinhalten kann) von 0,8 assoziiert sein. Zusätzlich können die zweiten Anker 304(2), die mit der zweiten Absicht 302(2) assoziiert sind, mit Konfidenzwerten 404 assoziiert sein, die 0,5, 0,85 und 0,65 umfassen. Weiterhin können die dritten Anker 304(3), die mit der dritten Absicht 302(3) assoziiert sind, mit Konfidenzwerten 406 assoziiert sein, die 0,4 und 0,2 einschließen. Daher kann die Absichtsidentifizierungskomponente 108 die Konfidenzwerte 404 und die Konfidenzwerte 406 verwenden, um eine Absicht auszuwählen, die mit Textdaten assoziiert ist. Beispielsweise kann die Absichtsidentifizierungskomponente 108 im Beispiel von 4A bestimmen, dass der Konfidenzwert 404 von 0,85 für die zweite Absicht 302(2) den Schwellenwert 402 von 0,8 erfüllt (z.B. gleich oder größer ist). Die Absichtsidentifizierungskomponente 108 kann auch bestimmen, dass alle Konfidenzwerte 406 für die dritte Absicht 302(3) den Schwellenwert 402 von 0,8 nicht erfüllen (z.B. kleiner sind als dieser). Daher kann die Absichtsidentifizierungskomponente 108 bestimmen, die zweite Absicht 302(2) auszuwählen, um sie mit den Textdaten zu assoziieren, was durch den fettgedruckten Rahmen um die zweite Absicht 302(2) herum gezeigt wird.
  • 4B zeigt ein zweites Beispiel für ein Auswählen einer Absicht unter Verwendung von Konfidenzwerten, gemäß einigen Ausführungsbeispielen der vorliegenden Offenbarung. Wie gezeigt, kann die erste Absicht 302(1) nun mit einem Schwellenwert 408 (der einen Schwellenwert 122 repräsentieren und/oder beinhalten kann) von 0,9 assoziiert sein. Zusätzlich können die zweiten Anker 304(2), die mit der zweiten Absicht 302(2) assoziiert sind, mit den Konfidenzwerten 404 assoziiert sein, die 0,5, 0,85 und 0,65 umfassen. Weiterhin können die dritten Anker 304(3), die mit der dritten Absicht 302(3) assoziiert sind, mit den Konfidenzwerten 406 assoziiert sein, die 0,4 und 0,2 umfassen. Daher kann die Absichtsidentifizierungskomponente 108 die Konfidenzwerte 404 und die Konfidenzwerte 406 verwenden, um eine Absicht auszuwählen, die mit Textdaten assoziiert ist. In dem Beispiel von 4B kann die Absichtsidentifizierungskomponente 108 beispielsweise bestimmen, dass alle Konfidenzwerte 404 für die zweite Absicht 302(2) den Schwellenwert 408 von 0,9 nicht erfüllen (z.B. kleiner sind als dieser). Die Absichtsidentifizierungskomponente 108 kann auch bestimmen, dass alle Konfidenzwerte 406 für die dritte Absicht 302(3) den Schwellenwert 408 von 0,9 nicht erfüllen (z.B. unterschreiten). Daher kann die Absichtsidentifizierungskomponente 108 bestimmen, die erste Absicht 302(1) auszuwählen, um sie mit den Textdaten zu assoziieren, was durch den fettgedruckten Rahmen um die erste Absicht 302(1) gezeigt wird.
  • Zurückkommend auf das Beispiel von 1 kann die Absichtsidentifizierungskomponente 108 basierend darauf, ob die Absicht oder eine Unterabsicht ausgewählt ist, unterschiedliche Prozesse durchführen. In einem ersten Beispiel kann die Absichtserkennungskomponente 108, wenn die Absichtserkennungskomponente 108 die erste Absicht auswählt (z.B. wenn jeder der Konfidenzwerte den Schwellenwert 122 nicht erfüllt), bestimmen, dass die erste Absicht die finale Absicht ist, die mit den Textdaten 106 assoziiert ist. In einem zweiten Beispiel, wenn die Absichtsidentifizierungskomponente 108 eine Unterabsicht als zweite Absicht auswählt (z.B. wenn der Konfidenzwert für die Unterabsicht den Schwellenwert 122 erfüllt) und die zweite Absicht in der letzten Absichtsebene in der Absichtshierarchie 118 enthalten ist, dann kann die Absichtsidentifizierungskomponente 108 bestimmen, dass die zweite Absicht die finale Absicht ist, die mit den Textdaten 106 assoziiert ist. In einem dritten Beispiel, wenn die Absichtsidentifizierungskomponente 108 wiederum eine Unterabsicht als zweite Absicht auswählt (z.B. wenn der Konfidenzwert für die Unterabsicht den Schwellenwert 122 erfüllt), die zweite Absicht aber auch eine oder mehrere Unterabsicht(en) enthält (z.B. wenn die zweite Absicht nicht in der letzten Absichtsebene der Absichtshierarchie 118 enthalten ist), dann kann die Absichtsidentifizierungskomponente 108 diese Prozesse erneut durchführen, indem sie die eine oder die mehreren Unterabsicht(en) verwendet, die mit der zweiten Absicht assoziiert sind.
  • Beispielsweise kann die Absichtsidentifizierungskomponente 108 erneut einen Teil der Absichtskonfidenzdaten 114 identifizieren, um ihn während einer zweiten Instanz der Verarbeitung, die mit der durch die Absichtsdaten 128 repräsentierten zweiten Absicht assoziiert ist, in das/die zweite(n) Modell(e) 116 einzugeben. In einigen Beispielen identifiziert die Absichtsidentifizierungskomponente 108 den Teil der Absichtskonfidenzdaten 114 als einen oder mehrere Identifikatoren der Unterabsicht(en), die mit der zweiten Absicht assoziiert sind (z.B. aus der Absichtshierarchie 118), den oder die Anker 120, die mit der oder den Unterabsicht(en) assoziiert sind, und/oder den Schwellenwert 122, der mit der zweiten Absicht assoziiert ist. Das (die) zweite(n) Modell(e) 116 kann (können) dann die Textdaten 106 und den Teil der Absichtskonfidenzdaten 114 verarbeiten und, basierend auf der Verarbeitung, zweite Daten 126 ausgeben. Wie dargestellt, enthalten die zweiten Ausgabedaten 126 zumindest zweite Absichtsdaten 128, die eine oder mehrere der Unterabsicht(en) repräsentieren, und Konfidenzdaten 130, die einen oder mehrere Konfidenzwerte für die eine oder mehrere der Unterabsicht(en) repräsentieren.
  • Die Absichtsidentifizierungskomponente 108 kann dann einen oder mehrere Prozesse basierend auf den zweiten Ausgabedaten 126 durchführen. In einem ersten Beispiel kann die Absichtsidentifizierungskomponente 108, wenn sie bestimmt, dass der/die Konfidenzwert(e) den mit der zweiten Absicht assoziierten Schwellenwert 122 nicht erfüllt/erfüllen (z.B. kleiner ist/sind), bestimmen, dass die Absichtsidentifizierungskomponente 108 die zweite Absicht als die mit den Textdaten 106 assoziierte finale Absicht verwendet. Bestimmt die Absichtsidentifizierungskomponente 108 jedoch, dass ein Konfidenzwert (bzw. mehrere Konfidenzwerte) den mit der zweiten Absicht assoziierten Schwellenwert 122 erfüllt (z.B. gleich oder größer ist), dann kann die Absichtsidentifizierungskomponente 108 bestimmen, die mit dem Konfidenzwert (bzw. den Konfidenzwerten) assoziierte Unterabsicht (bzw. die Unterabsicht, die mit dem höchsten Konfidenzwert assoziiert ist) zu verwenden, um eine dritte, mit den Textdaten 106 assoziierte Absicht einzuschließen.
  • Die Absichtsidentifizierungskomponente 108 kann diese Vorgänge so lange durchführen, bis ein oder mehrere Ereignisse eintreten. In einem ersten Beispiel kann die Absichtsidentifizierungskomponente 108 diese Prozesse so lange durchführen, bis der Konfidenzwert für die Unterabsicht(en) nicht mehr dem Schwellenwert 122 für die aktuell ausgewählte Absicht entspricht. Daher kann die Absichtsidentifizierungskomponente 108 bestimmen, dass die Absicht die finale Absicht ist, die mit den Textdaten 106 assoziiert werden soll. In einem zweiten Beispiel kann die Absichtsidentifizierungskomponente 108 diese Prozesse so lange durchführen, bis eine Absicht ausgewählt ist, die mit der letzten Absichtsebene der Absichtshierarchie 118 assoziiert ist. Daher kann die Absichtsidentifizierungskomponente 108 bestimmen, dass die Absicht die finale Absicht ist, die mit den Textdaten 106 assoziiert werden soll.
  • Der Prozess 100 kann einen Dialogverwalter 132 enthalten, der zumindest die Absichtsdaten 128, die die finale Absicht repräsentieren, und die Textdaten 106 verwendet, um Antwortdaten 134, die eine Antwort repräsentieren, für die Textdaten 106 zu generieren. In einigen Beispielen, etwa wenn der Dialogverwalter 132 Teil der Absichtsidentifizierungskomponente 108 ist, kann der Dialogverwalter 132 die mit der finalen Absicht assoziierte(n) Aktion(en) 124 verwenden, um die Antwort zu generieren. Zum Beispiel kann die Aktion(en) 124, die mit der finalen Absicht assoziiert ist (sind), zumindest einen Teil des Textes zum Generieren der Antwort enthalten, wie hier beschrieben. Daher kann der Dialogverwalter 132 die Textdaten 106 und die Absichtsdaten 128 verarbeiten, um zu bestimmen, welche Informationen abzurufen sind, z.B. basierend auf einem oder mehreren Slots, die mit der finalen Absicht assoziiert sind. Daher kann der Dialogverwalter 132 die Informationen abrufen, z.B. aus einer oder mehreren Wissensdatenbanken, und die Antwort generieren, indem er den Text aus der Aktion 124 und die abgerufenen Informationen verwendet.
  • 5 zeigt beispielsweise ein Beispiel für das Generieren einer Antwort, die mit einer Anforderung assoziiert ist, gemäß einigen Ausführungsbeispielen der vorliegenden Offenbarung. Wie dargestellt, kann die Absichtsidentifizierungskomponente 108 bestimmt haben, dass die dritte Absicht 302(3) die finale Absicht für Textdaten 502 enthält (die die Textdaten 106 repräsentieren und/oder enthalten können). Im Beispiel von 5 repräsentieren die Textdaten 502 eine Anforderung, die „Wie hoch ist die Kalorienzahl dieses Artikels“ beinhaltet. Die dritte Absicht 302(3) kann auch mit einer Aktion 504 assoziiert sein (die eine Aktion 124 repräsentieren und/oder einschließen kann), die einen Text enthält, der mit einer Antwort assoziiert ist, z.B. „Der Artikel hat_Kalorien.“ Daher kann der Dialogverwalter 132 bestimmen, dass die mit einem Slot für die dritte Absicht 302(3) assoziierte Information die Anzahl der Kalorien enthält, die mit dem Artikel assoziiert sind. Der Dialogverwalter 132 kann dann eine oder mehrere Wissensdatenbank(en) 506 analysieren, die mit den Speisekarten assoziierte Informationen enthalten können, um zu bestimmen, dass die Speisekarte hundert Kalorien enthält. Zusätzlich kann der Dialogverwalter 132 die Antwort derart generieren, dass sie „Der Artikel hat einhundert Kalorien“ enthält, wobei die Antwort durch Antwortdaten 508 repräsentiert wird (die die Antwortdaten 134 repräsentieren und/oder enthalten können).
  • Zurückkommend auf das Beispiel von 1, kann der Dialogverwalter 132 in einigen Beispielen die Aktionen 124 nicht verwenden, wenn er die Antwort generiert. Vielmehr kann der Dialogverwalter 132 ein oder mehrere Modelle enthalten, die in der Lage sind, die Textdaten 106 und die Absichtsdaten 128 zu verarbeiten, um die Antwortdaten 134 zu generieren, die die Antwort repräsentieren. Zusätzlich kann der Prozess 100 ein Ausgeben (z.B. Senden) der Antwortdaten 134 an ein oder mehrere Benutzergeräte 136 beinhalten. In einigen Beispielen stellte(n) das/die Benutzergerät(e) 136 auch die Eingabedaten 104 bereit und/oder die Eingabe von dem/den Benutzergerät(en) 136 wurde verwendet, um die Absichtskonfidenzdaten 114 zu generieren.
  • 6 zeigt ein beispielhaftes Datenflussdiagramm für einen Prozess 600 zur Verwendung eines maschinellen Lernmodells/von maschinellen Lernmodellen und von Anforderung/Antwort-Paaren, um eine Antwort auf eine Anforderung zu bestimmen, gemäß einigen Ausführungsbeispielen der vorliegenden Offenbarung. Es ist zu verstehen, dass diese und andere hier beschriebene Anordnungen nur als Beispiele aufgeführt sind. Andere Anordnungen und Elemente (z.B. Maschinen, Schnittstellen, Funktionen, Anordnungen, Gruppierungen von Funktionen usw.) können zusätzlich zu den gezeigten oder anstelle von diesen verwendet werden, und einige Elemente können ganz weggelassen werden. Weiter handelt es sich bei vielen der hier beschriebenen Elemente um funktionale Entitäten, die als einzelne oder verteilte Komponenten oder in Verbindung mit anderen Komponenten und in jeder geeigneten Kombination und an jedem geeigneten Ort implementiert werden können. Verschiedene hier beschriebene Funktionen, die von Entitäten durchgeführt werden, können durch Hardware, Firmware und/oder Software ausgeführt werden. Beispielsweise können verschiedene Funktionen von einem Prozessor ausgeführt werden, der im Speicher gespeicherte Anweisungen ausführt.
  • Der Prozess 600 kann eine Verarbeitungskomponente 602 umfassen, die Eingabedaten 604 empfängt, beispielsweise von einem Benutzergerät. In einigen Beispielen können die Eingabedaten 604 Audiodaten enthalten, die (z.B. unter Verwendung eines oder mehrerer Mikrofone) generiert und/oder von dem Benutzergerät gesendet werden, wobei die Audiodaten die Sprache eines oder mehrerer Benutzer repräsentieren. Zusätzlich oder alternativ können die Eingabedaten 604 in einigen Beispielen Textdaten enthalten, die (z.B. unter Verwendung einer Tastatur, eines Touchscreens und/oder eines anderen Eingabegeräts) generiert und/oder von dem Benutzergerät gesendet werden, wobei die Textdaten einen oder mehrere Buchstaben, Wörter, Zahlen und/oder Symbole repräsentieren. Dies sind zwar nur einige Beispieltypen von Daten, die die Eingabedaten 604 umfassen können, aber in anderen Beispielen können die Eingabedaten 604 auch jeden anderen Typ von Daten umfassen (z.B. Bilddaten, Videodaten, Sensordaten usw.).
  • Der Prozess 600 kann beinhalten, dass die Verarbeitungskomponente 602 die Eingabedaten 604 verarbeitet, um Textdaten 606 zu generieren. In einem ersten Beispiel, z.B. wenn die Eingabedaten 604 Audiodaten enthalten, die die Sprache des Benutzers repräsentieren, kann die Verarbeitungskomponente 602 ein oder mehrere Sprachverarbeitungsmodelle enthalten, wie z.B. ein ASR-Modell oder mehrere ASR-Modelle, ein STT-Modell oder mehrere STT-Modelle, ein NLP-Modell oder mehrere NLP-Modelle, ein Diarisationsmodell oder mehrere Diarisationsmodelle und/oder ähnliches, die konfiguriert sind, um die Textdaten 606 zu generieren, die mit den Audiodaten assoziiert sind. Beispielsweise können die Textdaten 606 ein Transkript (z.B. einen oder mehrere Buchstaben, Wörter, Symbole, Zahlen usw.) repräsentieren, das mit der Benutzersprache assoziiert ist. Bei einem zweiten Beispiel, etwa wenn die Eingabedaten 604 Textdaten enthalten, kann der Prozess 600 die Verarbeitungskomponente 602 nicht enthalten, sodass die Textdaten 606 die Eingabedaten 604 enthalten und/oder die Verarbeitungskomponente 602 den durch die Eingabedaten 604 repräsentierten Text verarbeiten kann, um den Text in ein mit den Textdaten 606 assoziiertes Format zu konvertieren.
  • Der Prozess 600 kann ein Eingeben der Textdaten 606 und der Assoziationsdaten 608 in ein oder mehrere Modelle 610 zur Verarbeitung beinhalten (z.B. unter Verwendung eines oder mehrerer maschineller Lernmodelle). Wie hierin beschrieben, können die Assoziationsdaten 608 Anforderungen 612 mit Antworten 614 assoziieren (z.B. gruppieren). In einigen Beispielen können die Assoziationsdaten 608 eine einzelne Anforderung 612 mit einer einzelnen Antwort 614 assoziieren. In einigen Beispielen können die Assoziationsdaten 608 eine einzelne Anforderung 612 mit mehreren Antworten 614 assoziieren. In einigen Beispielen können die Assoziationsdaten 608 mehrere Anforderungen 612 mit einer einzigen Antwort 614 assoziieren. In einigen Beispielen können die Assoziationsdaten 608 mehrere Anforderungen 612 mit mehreren Antworten 614 assoziieren. In einigen Beispielen können die Anforderungen 612 Fragen enthalten und die Antworten 614 können Antworten auf die Fragen oder den mit den Fragen assoziierten Kontext enthalten, was hier detaillierter beschrieben wird.
  • 7 zeigt beispielsweise ein Beispiel für die Assoziierung von Anforderungen mit Antworten, gemäß einigen Ausführungsbeispielen der vorliegenden Offenbarung. Wie gezeigt, können Assoziationsdaten 702 (die die Assoziationsdaten 608 repräsentieren und/oder enthalten können) erste Anforderungen 704(1) mit ersten Antworten 706(1), zweite Anforderungen 704(2) mit zweiten Antworten 706(2) und dritte Anforderungen 704(3) mit dritten Antworten 706(3) assoziieren. Wie weiter dargestellt, können die Antworten 706(1)-(3) unterschiedliche Typen von Antworten umfassen.
  • Beispielsweise umfassen die Antworten 706(1) Antworten auf die Fragen, die mit den Anforderungen 704(1) assoziiert sind. Wenn beispielsweise eine Frage wie „Hallo“ oder „Hallo zusammen“ gestellt wird, können, wie hierin detaillierter beschrieben, die Antworten „Hallo“ oder „Schön, Sie kennenzulernen“ bereitgestellt werden. Die Antwort 706(2) kann einen Teil einer Antwort auf die Fragen enthalten, die mit den Anforderungen 704(2) assoziiert sind. Daher kann, wie hierin ausführlicher beschrieben, bei einer Frage wie „Wo bin ich“ oder „Was ist mein Standort“ eine Antwort generiert werden, die den Text „Ihr Standort ist“ und zusätzliche Informationen aus einer Wissensdatenbank verwendet. Die Antwort 706(3) kann Kontext zu den Fragen enthalten, die mit den Anforderungen 704(3) assoziiert sind. Wenn beispielsweise eine Frage wie „Wer bist Du?“ oder „Erzähl mir von Dir“ gestellt wird, kann eine Antwort generiert werden, die den Kontext „Ich bin ein Roboter“ enthält, wie hier ausführlicher beschrieben.
  • Zurückkommend auf das Beispiel von 6 kann der Prozess 600 beinhalten, dass das/die Modell(e) 610 die Textdaten 606 und die Assoziationsdaten 608 verarbeitet/verarbeiten und basierend auf der Verarbeitung Wertedaten 616 ausgibt/ausgeben, die Konfidenzwerte für die Anforderungen 612 repräsentieren. In einigen Beispielen können das/die Modell(e) 610 einen jeweiligen Konfidenzwert für jede der Anforderungen 612 ausgeben. In einigen Beispielen können das/die Modell(e) 610 einen entsprechenden Konfidenzwert nur für einen Teil der Anforderungen 612 ausgeben. In einigen Beispielen können das/die Modell(e) 610 auch mehr als einen Konfidenzwert für eine Anforderung 612 ausgeben. Wie hierin beschrieben, kann ein Konfidenzwert, der mit einer Anforderung 612 assoziiert ist, ein Maß an Ähnlichkeit zwischen der Anforderung 612 und dem durch die Textdaten 606 repräsentierten Text anzeigen. Beispielsweise ist der mit der Anforderung 612 assoziierte Konfidenzwert umso höher, je größer die Ähnlichkeit zwischen dem Text einer Anforderung 612 und dem durch die Textdaten 606 repräsentierten Text ist. Je geringer die Ähnlichkeit zwischen dem Text der Anforderung 612 und dem durch die Textdaten 606 repräsentierten Text ist, desto geringer ist der Konfidenzwert, der der Anforderung 612 assoziiert ist.
  • 8 zeigt beispielsweise ein Beispiel für das Bestimmen von Konfidenzwerten, die mit Anforderungen assoziiert sind, gemäß einigen Ausführungsbeispielen der vorliegenden Offenbarung. Wie gezeigt, können das/die Modell(e) 610 Textdaten 802 (die die Textdaten 606 repräsentieren und/oder enthalten können) verarbeiten, die eine Frage „Was ist mein aktueller Standort“ enthalten. Basierend auf der Verarbeitung kann (können) das (die) Modell(e) 610 Ausgabedaten 804 (die die Wertedaten 616 repräsentieren und/oder enthalten können) ausgeben, die mit den Textdaten 802 assoziiert sind. Beispielsweise können die Wertedaten 804 einen ersten Konfidenzwert von 0,05 für die Anforderung „Hallo“, einen zweiten Konfidenzwert von . 10 für die Anforderung „Hallo zusammen“, einen dritten Konfidenzwert von 0,60 für die Anforderung „Wo bin ich“, einen vierten Konfidenzwert von 0,95 für die Anforderung „Wo befinde ich mich“, einen fünften Konfidenzwert von 0,15 für die Anforderung „Wer bist du“ und einen sechsten Konfidenzwert von 0,20 für die Anforderung „Erzähl mir von dir“. Während der Bereich der Konfidenzwerte im Beispiel von 8 zwischen 0 und 1 liegt, können die Konfidenzwerte in anderen Beispielen einen beliebigen anderen Bereich umfassen.
  • Zurückkommend auf das Beispiel von 1, kann der Prozess 100 einen Dialogverwalter 618 beinhalten, der zumindest die Wertedaten 616, die Assoziationsdaten 608 und/oder eine Wissensdatenbank(en) 620 verarbeitet, um Antwortdaten 622 zu generieren, die mit den Textdaten 606 assoziiert sind. Beispielsweise kann der Dialogverwalter 618 initial die Wertedaten 616 verwenden, um eine Anforderung 612 zu identifizieren. In einigen Beispielen identifiziert der Dialogverwalter 618 die Anforderung 612, die mit dem höchsten Konfidenzwert assoziiert ist. Zusätzlich oder alternativ identifiziert der Dialogverwalter 618 in einigen Beispielen die Anforderung 612, die mit einem Konfidenzwert assoziiert ist, der einen Schwellenwert (z.B. 0,9) erfüllt (z.B. gleich oder größer ist). Der Dialogverwalter 618 kann dann die Assoziationsdaten 608 verwenden, um eine oder mehrere Antworten 614 zu identifizieren, die mit der angeforderten Anforderung 612 assoziiert sind. Außerdem kann der Dialogverwalter 618 die identifizierte(n) Antwort(en) 614 verwenden, um die Antwortdaten 622 zu generieren.
  • Beispielsweise, wenn der Dialogverwalter 618 nur eine einzige Antwort 614 identifiziert, die mit der identifizierten Anforderung 612 assoziiert ist, kann der Dialogverwalter 618 diese Antwort 614 verwenden, um die Antwortdaten 622 zu generieren. Identifiziert der Dialogverwalter 618 jedoch mehrere Antworten 614, die mit der identifizierten Anforderung 612 assoziiert sind, so kann der Dialogverwalter 618 eine der Antworten 614 auswählen, um die Antwortdaten 622 zu generieren. In einigen Beispielen kann der Dialogverwalter 618 eine der Antworten 614 zufällig auswählen, während der Dialogverwalter 618 in anderen Beispielen ein oder mehrere Kriterien für die Auswahl einer der Antworten 614 verwenden kann. Das eine oder die mehreren Kriterien können u.a. beinhalten, dass nicht dieselbe Antwort 614 nacheinander für dieselbe Anforderung 612 ausgewählt wird, dass während eines gegebenen Zeitintervalls (z.B. eine Stunde, ein Tag, eine Woche, usw.) nicht dieselbe Antwort 614 für denselben Benutzer mehrmals ausgewählt wird, und/oder andere Kriterien.
  • Der Dialogverwalter 618 kann dann die Antwortdaten 622 basierend auf dem ausgewählten Antworttyp 614 generieren. In einem ersten Beispiel, wenn die Antwort 614 eine Beantwortung enthält, kann der Dialogverwalter 618 die Antwortdaten 622 generieren, um die Beantwortung zu repräsentieren. In einem zweiten Beispiel, wenn die Antwort 614 einen Kontext enthält, kann der Dialogverwalter 618 die Antwortdaten 622 generieren, um den Kontext zu repräsentieren. In einem dritten Beispiel, wenn die Antwort 614 Text enthält, der zusätzliche Informationen erfordert, kann der Dialogverwalter 618 die Informationen unter Verwendung der Wissensdatenbank(en) 620 identifizieren. Der Dialogverwalter 618 kann dann die Antwortdaten 622 generieren, um eine Antwort zu repräsentieren, die den Text und die zusätzlichen Informationen enthält. Während dies nur einige Beispieltechniken sind, wie der Dialogverwalter 618 die Antwortdaten 622 generieren kann, kann der Dialogverwalter 618 in anderen Beispielen die Antwortdaten 622 mit zusätzlichen und/oder alternativen Techniken generieren.
  • 9 zeigt beispielsweise ein Beispiel für ein Generieren einer mit einer Anforderung assoziierten Antwort, gemäß einigen Ausführungsbeispielen der vorliegenden Offenbarung. Im Beispiel von 9 kann der Dialogverwalter 618 initial die Wertedaten 804 verwenden, um die Anforderung „Wie lautet mein Standort“ zu identifizieren. In einigen Beispielen identifiziert der Dialogverwalter 618 diese Anforderung basierend auf der Anforderung, die den höchsten Konfidenzwert umfasst. In einigen Beispielen identifiziert der Dialogverwalter 618 diese Anforderung basierend darauf, dass der Konfidenzwert für die Anforderung den Schwellenwert erfüllt. In jedem Beispiel kann der Dialogverwalter 618 dann die Assoziationsdaten 702 verwenden, um zu bestimmen, dass die Anforderung mit der Antwort „Ihr Standort ist {Ort}“ assoziiert ist. Daher kann der Dialogverwalter 618 bestimmen, dass zusätzliche Informationen erforderlich sind, um eine Antwort zu generieren.
  • In einigen Beispielen kann der Dialogverwalter 618 dann die Wissensdatenbank(en) 620 verwenden, um den Standort zu bestimmen, der mit dem Benutzer assoziiert ist, der die Anforderung bereitgestellt hat, was im Beispiel von 9 „Spokane“ beinhaltet. Außerdem kann der Dialogverwalter 618 die Antwort generieren, indem er den Text „Ihr Standort ist“ und den identifizierten Standort „Spokane“ verwendet. Beispielsweise repräsentieren die Antwortdaten 902 (die die Antwortdaten 622 repräsentieren und/oder einschließen können) die Antwort „Ihr Standort ist Spokane“, wie gezeigt.
  • Zurückkommend auf das Beispiel von 6, während das Beispiel von 6 das/die Modell(e) 610 als getrennt von dem Dialogverwalter 618 zeigt, kann der Dialogverwalter 618 in einigen Beispielen das/die Modell(e) 610 umfassen. Beispielsweise kann der Dialogverwalter 618 zusätzlich zumindest einige der Prozesse des/der Modells/Modelle 610 durchführen. Während das Beispiel in 6 den Dialogverwalter 618 so beschreibt, dass er die Wertedaten 616 verwendet, um die Antwort 614 zu bestimmen, die zum Generieren der Antwortdaten 622 verwendet wird, können in anderen Beispielen das/die Modell(e) 610 die Antwort 614 bestimmen. Beispielsweise können das/die Modell(e) 610 zusätzlich oder alternativ zur Ausgabe der Wertedaten 616 Daten ausgeben, die die Antwort 614 repräsentieren.
  • Weiterhin zeigen das Beispiel von 1 und das Beispiel von 6 den Prozess 100 als getrennt von dem Prozess 600, während in anderen Beispielen der Prozess 600 mit dem Prozess 100 kombiniert werden kann. Zum Beispiel können Aktionen 124, die mit zumindest einer Absicht von dem Prozess 100 assoziiert sind, die Assoziationsdaten 608 umfassen. Daher können in einem solchen Beispiel, nachdem die finale Absicht für die Textdaten 106 identifiziert wurde, die mit der finalen Absicht assoziierten Assoziierungsdaten 608 verwendet werden, um die Antwortdaten 134 für die Textdaten 106 zu generieren, wobei zumindest ein Teil des Prozesses 600 verwendet wird.
  • Unter Bezugnahme auf 10-12 umfasst jeder Block der hier beschriebenen Verfahren 1000, 1100 und 1200 einen Rechenprozess, der unter Verwendung einer beliebigen Kombination von Hardware, Firmware und/oder Software durchgeführt werden kann. Beispielsweise können verschiedene Funktionen von einem Prozessor ausgeführt werden, der im Speicher gespeicherte Anweisungen ausführt. Die Verfahren 1000, 1100 und 1200 können auch in Form von auf Rechnern gespeicherten Anweisungen auf Computerspeichermedien ausgeführt werden. Die Verfahren 1000, 1100 und 1200 können durch eine eigenständige Anwendung, einen Dienst oder gehosteten Dienst (eigenständig oder in Kombination mit einem anderen gehosteten Dienst) oder ein Plug-in für ein anderes Produkt bereitgestellt werden, um nur einige zu nennen. Darüber hinaus werden die Verfahren 1000, 1100 und 1200 beispielhaft anhand der 1 und 6 beschrieben. Die Verfahren 1000, 1100 und 1200 können jedoch zusätzlich oder alternativ von einem beliebigen System oder einer beliebigen Kombination von Systemen ausgeführt werden, die unter anderem die hier beschriebenen Systeme umfassen.
  • 10 ist ein Flussdiagramm, das ein Verfahren 1000 zum Generieren einer Antwort auf eine Anforderung zeigt, gemäß einigen Ausführungsbeispielen der vorliegenden Offenbarung. Das Verfahren 1000 kann in Block B1002, unter Verwenden eines oder mehrerer maschineller Lernmodelle und basierend zumindest auf Textdaten, ein Bestimmen einer ersten Absicht umfassen, die mit der Anforderung assoziiert ist. Beispielsweise kann die Absichtsidentifizierungskomponente 108 die Textdaten 106 in das erste Modell bzw. die ersten Modelle 110 eingeben. Das (die) erste(n) Modell(e) 110 kann (können) die Textdaten 106 verarbeiten und basierend auf der Verarbeitung Absichtsdaten 112 ausgeben, die die erste Absicht repräsentieren.
  • Das Verfahren 1000 kann in Block B 1004, unter Verwendung des einen oder der mehreren maschinellen Lernmodelle und basierend zumindest auf den Textdaten und auf Daten, die mit einer oder mehreren zweiten Absichten, die sich auf die erste Absicht beziehen (dt. auch: die mit der ersten Absicht in Beziehung stehen) assoziiert sind, ein Bestimmen einer zweiten Absicht der einen oder mehreren zweiten Absichten umfassen, die mit der Anforderung assoziiert ist bzw. sind. Beispielsweise kann die Absichtsidentifizierungskomponente 108 einen Teil der Absichtskonfidenzdaten 114 identifizieren, wobei der Teil der Absichtskonfidenzdaten 114 einen oder mehrere Identifikatoren der zweiten Absicht(en), den oder die mit der/den zweiten Absicht(en) assoziierten Anker 120 und/oder den mit der ersten Absicht assoziierten Konfidenzschwellenwert 122 umfasst. Die Absichtsidentifizierungskomponente 108 kann dann die Textdaten 106 und den Teil der Absichtskonfidenzdaten 114 in das/die zweite(n) Modell(e) 116 (und/oder das/die erste(n) Modell(e) 110 in einigen Beispielen) eingeben. Das (die) zweite(n) Modell(e) 116 kann (können) die Textdaten 106 und den Teil der Absichtskonfidenzdaten 114 verarbeiten und, basierend auf der Verarbeitung, Absichtsdaten 128 ausgeben, die die zweite Absicht repräsentieren.
  • Das Verfahren 1000 kann in Block B 1006 ein Ausgeben, zumindest basierend auf der zweiten Absicht, einer Antwort auf die Anforderung umfassen. Beispielsweise kann der Dialogverwalter 132 zumindest die Textdaten 106 und die Absichtsdaten 128 verwenden, um die Antwortdaten 134 zu generieren, die die Antwort repräsentieren. In einigen Beispielen können die Antwortdaten 134 an ein Benutzergerät gesendet werden, das die mit den Textdaten 106 assoziierten Eingabedaten 104 bereitgestellt hat.
  • 11 ist ein Flussdiagramm, das ein Verfahren 1100 zum Bestimmen einer mit einer Anforderung assoziierten Absicht zeigt, gemäß einigen Ausführungsbeispielen der vorliegenden Offenbarung. Das Verfahren 1100 kann in Block B 1102 ein Bestimmen einer ersten, mit einer Anforderung assoziierten Absicht umfassen. Beispielsweise kann die Absichtsidentifizierungskomponente 108 die Textdaten 106 in das/die erste(n) Modell(e) 110 eingeben, wobei die Absichtsdaten 112 die Anforderung repräsentieren. Das (die) erste(n) Modell(e) 110 kann (können) die Textdaten 106 verarbeiten und basierend auf der Verarbeitung die Absichtsdaten 112 ausgeben, die die erste Absicht repräsentieren.
  • Das Verfahren 1100 kann in Block B 1104 ein Bestimmen von einem oder mehreren Unterabsichten umfassen, die mit der ersten Absicht assoziiert sind. Beispielsweise kann die Absichtsidentifizierungskomponente 108 die Absichtskonfidenzdaten 114 analysieren, um die Unterabsicht(en) zu bestimmen, die mit der ersten Absicht assoziiert sind. Zum Beispiel kann die Absichtsidentifizierungskomponente 108 die Unterabsicht(en) basierend auf der Absichtshierarchie 118 identifizieren, wobei die Absichtshierarchie 118 die mit der ersten Absicht assoziierte(n) Unterabsicht(en) anzeigt.
  • Das Verfahren 1100 kann in Block B 1106 ein Bestimmen von einem oder mehreren Konfidenzwerten umfassen, die mit der einen oder den mehreren Unterabsichten assoziiert sind. Beispielsweise kann die Absichtsidentifizierungskomponente 108 einen Teil der Absichtskonfidenzdaten 114 abrufen, der mit der (den) Unterabsicht(en) assoziiert ist. Wie hierin beschrieben, kann der Teil der Absichtskonfidenzdaten 114 einen oder mehrere Identifikatoren der Unterabsicht(en), den oder die Anker 120, die mit der/den Unterabsicht(en) assoziiert sind, und/oder den Schwellenwert 122, der mit der ersten Absicht assoziiert ist, umfassen. Die Absichtsidentifizierungskomponente 108 kann dann die Textdaten 106 und den Teil der Absichtskonfidenzdaten 114 in das/die zweite(n) Modell(e) 116 (und/oder in einigen Beispielen in das/die erste(n) Modell(e) 110) eingeben. Das (die) zweite(n) Modell(e) 116 kann (können) die Textdaten 106 und den Teil der Absichtskonfidenzdaten 114 verarbeiten und basierend auf der Verarbeitung die Konfidenzdaten 130 ausgeben, die den Konfidenzwert (die Konfidenzwerte) für die Unterabsicht(en) repräsentieren.
  • Das Verfahren 1100 kann in Block B1108 ein Bestimmen umfassen, ob ein Konfidenzwert des einen oder der mehreren Konfidenzwerte einen Schwellenwert erfüllt. Beispielsweise kann die Absichtsidentifizierungskomponente 108 bestimmen, ob zumindest einer der Konfidenzwerte den Schwellenwert 122 erfüllt (z.B. gleich oder größer als dieser ist). Wenn in Block B1108 bestimmt wird, dass der/die Konfidenzwert(e) den Schwellenwert nicht erfüllt/erfüllen, dann kann das Verfahren 1100 in Block B 1110 ein Assoziieren der ersten Absicht mit der Anforderung umfassen. Beispielsweise, wenn die Absichtsidentifizierungskomponente 108 bestimmt, dass der/die Konfidenzwert(e) den Schwellenwert 122 nicht erfüllt/erfüllen, dann kann die Absichtsidentifizierungskomponente 108 die erste Absicht mit der Anforderung assoziieren.
  • Wenn jedoch in Block B 1108 bestimmt wird, dass ein Konfidenzwert des/der Konfidenzwerte(s) den Schwellenwert erfüllt, dann kann das Verfahren 1100 in Block B 1112 ein Assoziieren einer zweiten Absicht aus dem einen oder den mehreren Unterabsichten mit der Anforderung umfassen. Beispielsweise, wenn die Absichtsidentifizierungskomponente 108 bestimmt, dass der Konfidenzwert den Schwellenwert 122 erfüllt, dann kann die Absichtsidentifizierungskomponente 108 die zweite Absicht aus der/den Unterabsicht(en), die mit dem Konfidenzwert assoziiert ist, mit der Anforderung assoziieren.
  • 12 ist ein Flussdiagramm, das ein Verfahren 1200 zur Verwendung von Anforderung/Antwort-Paaren zeigt, um eine Antwort auf eine Anforderung zu bestimmen, gemäß einigen Ausführungsbeispielen der vorliegenden Offenbarung. Das Verfahren 1200 kann in Block B 1202 ein Bestimmen von Konfidenzwerten, die mit den zweiten Anforderungen assoziiert sind, umfassen, wobei ein oder mehrere maschinelle Lernmodelle verwendet werden und basierend zumindest auf Textdaten, die eine erste Anforderung repräsentieren, und Daten, die zweite Anforderungen mit Antworten assoziieren. Beispielsweise können die Textdaten 606, die die erste Anforderung repräsentieren, und zumindest ein Teil der Assoziierungsdaten 608 in das/die Modell(e) 610 eingegeben werden. Das/die Modell(e) 610 kann/können die Textdaten 606 und zumindest den Teil der Assoziierungsdaten 608 verarbeiten. Basierend auf der Verarbeitung kann/können das/die Modell(e) 610 die Wertedaten 616 ausgeben, die die Konfidenzwerte für die zweiten Anforderungen 612 repräsentieren. Wie hierin beschrieben, können die Konfidenzwerte angeben, wie ähnlich die zweiten Anforderungen 612 der ersten Anforderung sind, die durch die Textdaten 606 repräsentiert wird.
  • Das Verfahren 1200 kann in Block B1204 ein Bestimmen, zumindest basierend auf den Konfidenzwerten, umfassen, dass eine zweite Anforderung der zweiten Anforderungen sich auf die erste Anforderung bezieht. Beispielsweise kann der Dialogverwalter 618 (und/oder das/die Modell(e) 610 in einigen Beispielen) die Konfidenzwerte analysieren, um zu bestimmen, dass zumindest eine zweite Anforderung 612 sich auf die erste Anforderung bezieht (mit der ersten Anforderung in Zusammenhang steht). In einigen Beispielen bestimmt der Dialogverwalter 618 dies basierend darauf, dass die zweite Anforderung 612 mit dem höchsten Konfidenzwert assoziiert ist. Zusätzlich oder alternativ bestimmt der Dialogverwalter 618 in einigen Beispielen, dass der Konfidenzwert für die zweite Anforderung einen Schwellenwert erfüllt.
  • Das Verfahren 1200 kann in Block B 1206 ein Bestimmen umfassen, dass die zweite Anforderung mit einer Antwort aus den Antworten assoziiert ist. Beispielsweise kann der Dialogverwalter 618 (und/oder das/die Modell(e) 610 in einigen Beispielen) die Assoziationsdaten 608 verwenden, um zu bestimmen, dass die zweite Anforderung 612 mit der Antwort 614 assoziiert ist. In einigen Beispielen bestimmt der Dialogverwalter 618 dies basierend auf den Assoziationsdaten 608, die die zweite Anforderung 612 mit der Antwort 614 verbinden. In einigen Beispielen, z.B. wenn die zweite Anforderung 612 mit mehr als einer Antwort 614 assoziiert ist, kann der Dialogverwalter 618 ein oder mehrere hierin beschriebene Kriterien verwenden, um die Antwort 614 aus den Antworten 614 auszuwählen.
  • Das Verfahren 1200 kann in Block B1208 ein Ausgeben von Daten umfassen, die mit der Antwort assoziiert sind. Beispielsweise kann der Dialogverwalter 618 die Antwortdaten 622, die mit der Antwort 614 assoziiert sind, generieren und dann ausgeben. In einigen Beispielen, z.B. wenn die Antwort (engl. response) 614 eine Beantwortung (engl. answer, dt. auch Erwiderung) umfasst, können die Antwortdaten 622 die Beantwortung repräsentieren. In einigen Beispielen, z.B. wenn die Antwort 614 einen Kontext umfasst, können die Antwortdaten 622 den Kontext repräsentieren. In einigen Beispielen, z.B. wenn die Beantwortung einen Text (z.B. einen Teil einer Beantwortung) umfasst, der zusätzliche Informationen erfordert, kann der Dialogverwalter 618 die Informationen identifizieren, z.B. indem er die Wissensdatenbank 620 verwendet. Der Dialogverwalter 618 kann dann unter Verwendung des Textes und der Informationen eine Antwort generieren, wobei die Antwortdaten 622 die Antwort repräsentieren.
  • BEISPIELHAFTES RECHENGERÄT
  • 13 ist ein Blockdiagramm eines beispielhaften Rechengerätes 1300, das zur Verwendung bei der Implementierung einiger Ausführungsbeispiele der vorliegenden Offenbarung geeignet ist. Das Rechnersystem 1300 kann ein Verbindungssystem 1302 umfassen, das direkt oder indirekt die folgenden Geräte koppelt: Speicher 1304, eine oder mehrere Zentraleinheiten (CPUs) 1306, eine oder mehrere Grafikverarbeitungseinheiten (GPUs) 1308, eine Kommunikationsschnittstelle 1310, Ein-/Ausgabeanschlüsse (E/A) 1312, Ein- /Ausgabekomponenten 1314, eine Energieversorgung 1316, eine oder mehrere Präsentationskomponenten 1318 (z.B. Anzeige(n)) und eine oder mehrere Logikeinheiten 1320. In mindestens einem Ausführungsbeispiel kann das Rechengerät bzw. können die Rechengeräte 1300 eine oder mehrere virtuelle Maschinen (VMs) umfassen und/oder jede der Komponenten davon kann virtuelle Komponenten (z.B. virtuelle Hardwarekomponenten) umfassen. Als nicht einschränkende Beispiele können eine oder mehrere der GPUs 1308 eine oder mehrere vGPUs umfassen, eine oder mehrere der CPUs 1306 können eine oder mehrere vCPUs umfassen, und/oder eine oder mehrere der Logikeinheiten 1320 können eine oder mehrere virtuelle Logikeinheiten umfassen. Daher kann (können) ein (mehrere) Rechengerät(e) 1300 diskrete Komponenten (z.B. eine vollständige, dem Rechengerät 1300 zugeordnete GPU), virtuelle Komponenten (z.B. einen Teil einer dem Rechengerät 1300 zugeordneten GPU) oder eine Kombination davon umfassen.
  • Obwohl die verschiedenen Blöcke in 13 als über das Verbindungs-(Interconnect) System 1302 mit Linien verbunden dargestellt sind, ist dies nicht als Einschränkung gedacht und dient lediglich der Klarheit. Daher kann in einigen Ausführungsbeispielen eine Präsentationskomponente 1318, z.B. ein Anzeigegerät, als E/A-Komponente 1314 betrachtet werden (z.B. wenn es sich bei der Anzeige um einen Touchscreen handelt). Als weiteres Beispiel können die CPUs 1306 und/oder GPUs 1308 einen Speicher umfassen (z.B. kann der Speicher 1304 ein Speichergerät zusätzlich zum Speicher der GPUs 1308, der CPUs 1306 und/oder anderer Komponenten repräsentieren). Mit anderen Worten, das Rechengerät von 13 ist lediglich illustrativ. Daher wird nicht zwischen Kategorien wie „Workstation“, „Server“, „Laptop“, „Desktop“, „Tablet“, „Client-Gerät“, „mobiles Gerät“, „Handheld-Gerät“, „Spielkonsole“, „elektronische Steuereinheit (ECU)“, „Virtual-Reality-System“ und/oder anderen Typen von Rechnern oder Systemen unterschieden, da alle im Rahmen des Rechengeräts von 13 in Betracht kommen.
  • Das Verbindungssystem 1302 kann eine oder mehrere Verbindungen oder Busse repräsentieren, wie z.B. einen Adressbus, einen Datenbus, einen Steuerbus oder eine Kombination davon. Das Verbindungssystem 1302 kann einen oder mehrere Bus- oder Verbindungstypen umfassen, beispielsweise einen ISA-Bus (Industry Standard Architecture), einen EISA-Bus (Extended Industry Standard Architecture), einen VESA-Bus (Video Electronics Standards Association), einen PCI-Bus (Peripheral Component Interconnect), einen PCIe-Bus (Peripheral Component Interconnect Express) und/oder einen anderen Typ von Bus oder Verbindung. In einigen Ausführungsbeispielen gibt es direkte Verbindungen zwischen Komponenten. Zum Beispiel kann die CPU 1306 direkt mit dem Speicher 1304 verbunden sein. Weiter kann die CPU 1306 direkt mit der GPU 1308 verbunden sein. Bei direkten oder Punkt-zu-Punkt-Verbindungen zwischen Komponenten kann das Verbindungssystem 1302 eine PCIe-Verbindung umfassen, um die Verbindung herzustellen. In diesen Beispielen braucht das Rechengerät 1300 keinen PCI-Bus zu umfassen.
  • Der Speicher 1304 kann ein beliebiges aus einer Vielzahl von computerlesbaren Medien umfassen. Bei den computerlesbaren Medien kann es sich um jedes verfügbare Medium handeln, auf das das Rechengerät 1300 zugreifen kann. Die computerlesbaren Medien können sowohl flüchtige als auch nicht-flüchtige Medien sowie entfernbare und nicht-entfernbare Medien umfassen. Als Beispiel und ohne Einschränkung können die computerlesbaren Medien Computerspeichermedien und Kommunikationsmedien umfassen.
  • Die Computerspeichermedien können sowohl flüchtige als auch nichtflüchtige Medien und/oder entnehmbare und nichtentfernbare Medien umfassen, die in einem beliebigen Verfahren oder einer beliebigen Technologie zur Speicherung von Informationen implementiert sind, wie z.B. computerlesbare Anweisungen, Datenstrukturen, Programmmodule und/oder andere Typen von Daten. Beispielsweise kann der Speicher 1304 computerlesbare Anweisungen speichern (z.B., die ein oder mehrere Programme und/oder ein oder mehrere Programmelemente repräsentieren, wie z.B. ein Betriebssystem. Computerspeichermedien können RAM, ROM, EEPROM, Flash-Speicher oder andere Speichertechnologien, CD-ROM, Digital Versatile Disks (DVD) oder andere optische Plattenspeicher, Magnetkassetten, Magnetbänder, Magnetplattenspeicher oder andere magnetische Speichergeräte oder jedes andere Medium umfassen, das verwendet werden kann, um die gewünschten Informationen zu speichern, und auf das das Rechengerät 1300 zugreifen kann, ohne darauf beschränkt zu sein. Wie hier verwendet, umfassen Computerspeichermedien nicht per se Signale.
  • Die Computerspeichermedien können computerlesbare Befehle, Datenstrukturen, Programmmodule und/oder andere Typen von Daten in einem modulierten Datensignal wie einer Trägerwelle oder einem anderen Transportmechanismus ausführen und umfassen beliebige Informationsübertragungsmedien. Der Begriff „moduliertes Datensignal“ kann sich auf ein Signal beziehen, bei dem eine oder mehrere seiner Charakteristiken so eingestellt oder verändert wurden, dass Informationen in dem Signal kodiert werden. Daher können die Computerspeichermedien beispielsweise verdrahtete Medien, wie ein verdrahtetes Netzwerk oder eine direkt verdrahtete Verbindung, und drahtlose Medien, wie akustische, RF-, Infrarot- und andere drahtlose Medien, umfassen. Kombinationen der oben genannten Medien sollten ebenfalls in den Bereich der rechnerlesbaren Medien fallen.
  • Die CPU(s) 1306 kann/können so konfiguriert sein, dass sie zumindest einige der computerlesbaren Anweisungen ausführt/ausführen, um eine oder mehrere Komponenten des Rechengeräts 1300 zu steuern, um eines oder mehrere der hierin beschriebenen Verfahren und/oder Prozesse durchzuführen. Die CPU(s) 1306 kann/können jeweils einen oder mehrere Kerne umfassen (z.B. einen, zwei, vier, acht, achtundzwanzig, zweiundsiebzig, usw.), die in der Lage sind, eine Vielzahl von Software-Threads gleichzeitig zu verarbeiten. Die CPU(s) 1306 kann/können jeden Typ von Prozessor umfassen und je nach dem Typ des implementierten Rechengeräts 1300 unterschiedliche Typen von Prozessoren umfassen (z.B. Prozessoren mit weniger Kernen für mobile Geräte und Prozessoren mit mehr Kernen für Server). Je nach Typ des Rechengeräts 1300 kann der Prozessor beispielsweise ein Advanced RISC Machines (ARM)-Prozessor sein, der mit Reduced Instruction Set Computing (RISC) implementiert ist, oder ein x86-Prozessor, der mit Complex Instruction Set Computing (CISC) implementiert ist. Das Rechengerät 1300 kann eine oder mehrere CPUs 1306 umfassen, zusätzlich zu einem oder mehreren Mikroprozessoren oder zusätzlichen Co-Prozessoren, wie z.B. mathematischen Co-Prozessoren.
  • Zusätzlich zu oder alternativ zu der/den CPU(s) 1306 kann/können die GPU(s) 1308 konfiguriert sein, um zumindest einige der computerlesbaren Anweisungen auszuführen, um eine oder mehrere Komponenten des Rechengeräts 1300 zu steuern, um eines oder mehrere der hierin beschriebenen Verfahren und/oder Prozesse durchzuführen. Eine oder mehrere der GPU(s) 1308 können eine integrierte GPU sein (z.B. mit einer oder mehreren der CPU(s) 1306 und/oder eine oder mehrere der GPU(s) 1308 können eine diskrete GPU sein. In Ausführungsbeispielen kann eine oder mehrere der GPU(s) 1308 ein Koprozessor einer oder mehrerer der CPU(s) 1306 sein. Der/die Grafikprozessor(en) 1308 kann/können von dem Rechengerät 1300 verwendet werden, um Grafiken zu rendern (z.B. 3D-Grafiken) oder allgemeine Berechnungen durchzuführen. Die GPU(s) 1308 kann/können zum Beispiel für allgemeines Rechnen auf GPUs (GPGPU) verwendet werden. Der/die Grafikprozessor(en) 1308 kann/können Hunderte oder Tausende von Kernen umfassen, die in der Lage sind, Hunderte oder Tausende von Software-Threads gleichzeitig zu verarbeiten. Der/die Grafikprozessor(en) 1308 kann/können als Reaktion auf Rendering-Befehle (z.B. Rendering-Befehle von der/den CPU(s) 1306, die über eine Host-Schnittstelle empfangen werden) Pixeldaten für die Ausgabe von Bildern generieren. Die GPU(s) 1308 kann/können einen Grafikspeicher, z.B. einen Anzeigespeicher, zum Speichern von Pixeldaten oder anderen geeigneten Daten, wie z.B. GPGPU-Daten, umfassen. Der Anzeigespeicher kann einen Teil des Speichers 1304 umfassen. Die GPU(s) 1308 können zwei oder mehr GPUs umfassen, die parallel (z.B. über eine Verbindung) operieren. Der Link kann die GPUs direkt verbinden (z.B. unter Verwendung von NVLINK) oder die GPUs über einen Switch verbinden (z.B. unter Verwendung von NVSwitch). In Kombination kann jede GPU 1308 Pixeldaten oder GPGPU-Daten für unterschiedliche Teile einer Ausgabe oder für unterschiedliche Ausgaben generieren (z.B. eine erste GPU für ein erstes Bild und eine zweite GPU für ein zweites Bild). Jede GPU kann ihren eigenen Speicher umfassen oder den Speicher gemeinsam mit anderen GPUs nutzen.
  • Zusätzlich oder alternativ zu der (den) CPU(s) 1306 und/oder der (den) GPU(s) 1308 kann (können) die Logikeinheit(en) 1320 so konfiguriert sein, dass sie zumindest einige der computerlesbaren Anweisungen ausführt (ausführen), um eine oder mehrere Komponenten des Rechengeräts 1300 so zu steuern, dass eines oder mehrere der hierin beschriebenen Verfahren und/oder Prozesse durchgeführt werden. In Ausführungsbeispielen können die CPU(s) 1306, die GPU(s) 1308 und/oder die Logikeinheit(en) 1320 diskret oder gemeinsam eine beliebige Kombination der Verfahren, Prozesse und/oder Teile davon durchführen. Eine oder mehrere der Logikeinheiten 1320 können Teil einer oder mehrerer der CPU(s) 1306 und/oder der GPU(s) 1308 sein und/oder eine oder mehrere der Logikeinheiten 1320 können diskrete Komponenten oder anderweitig außerhalb der CPU(s) 1306 und/oder der GPU(s) 1308 sein. In Ausführungsbeispielen kann eine oder mehrere der Logikeinheiten 1320 ein Koprozessor einer oder mehrerer der CPU(s) 1306 und/oder einer oder mehrerer der GPU(s) 1308 sein.
  • Beispiele für die Logikeinheit(en) 1320 umfassen einen oder mehrere Verarbeitungskerne und/oder Komponenten davon, wie z.B. Datenverarbeitungseinheiten (DPUs), Tensorkerne (TCs), Tensor Processing Units (TPUs), Pixel Visual Cores (PVCs), Vision Processing Units (VPUs), Grafikverarbeitungscluster (GPCs), Texturverarbeitungscluster (TPCs), Streaming Multiprozessoren (SMs), Tree Traversal Units (TTUs), Artificial Intelligence Accelerators (AIAs), Deep Learning Accelerators (DLAs), Arithmetik-Logik-Einheiten (ALUs), anwendungsspezifische integrierte Schaltungen (ASICs), Fließkomma-Einheiten (FPUs), Eingabe-/Ausgabe-Elemente (E/A), Peripheral Component Interconnect (PCI)- oder Peripheral Component Interconnect Express (PCIe)-Elemente und/oder Ähnliches.
  • Die Kommunikationsschnittstelle 1310 kann einen oder mehrere Empfänger, Sender und/oder Sender-Empfänger umfassen, die es dem Rechengerät 1300 ermöglichen, mit anderen Rechengeräten über ein elektronisches Kommunikationsnetzwerk zu kommunizieren, einschließlich drahtgebundener und/oder drahtloser Kommunikation. Die Kommunikationsschnittstelle 1310 kann Komponenten und Funktionen umfassen, die die Kommunikation über eine Reihe unterschiedlicher Netzwerke ermöglichen, wie z.B. drahtlose Netzwerke (z.B. Wi-Fi, Z-Wave, Bluetooth, Bluetooth LE, ZigBee, etc.), drahtgebundene Netzwerke (z.B. Kommunikation über Ethernet oder InfiniBand), Low-Power-Wide-Area-Netzwerke (z.B. LoRaWAN, SigFox, etc.) und/oder das Internet. In einem oder mehreren Ausführungsbeispielen kann (können) die Logikeinheit(en) 1320 und/oder die Kommunikationsschnittstelle 1310 eine oder mehrere Datenverarbeitungseinheiten (DPUs) umfassen, um über ein Netzwerk und/oder über das Verbindungsnetzwerk 1302 empfangene Daten direkt an (z.B. einen Speicher von) eine oder mehrere GPU(s) 1308 zu übertragen.
  • Über die E/A-Anschlüsse 1312 kann das Rechengerät 1300 logisch mit anderen Geräten gekoppelt werden, einschließlich der E/A-Komponenten 1314, der Präsentationskomponente(n) 1318 und/oder anderer Komponenten, von denen einige in das Rechengerät 1300 eingebaut (z.B. integriert) sein können. Beispielhafte E/A-Komponenten 1314 umfassen ein Mikrofon, eine Maus, eine Tastatur, einen Joystick, ein Gamepad, einen Gamecontroller, eine Satellitenschüssel, einen Scanner, einen Drucker, ein drahtloses Gerät usw. Die E/A-Komponenten 1314 können eine natürliche Benutzerschnittstelle (NUI) bereitstellen, die von einem Benutzer generierte Luftgesten, Sprache oder andere physiologische Eingaben verarbeitet. In einigen Fällen können die Eingaben zur weiteren Verarbeitung an ein geeignetes Netzwerkelement übertragen werden. Eine NUI kann eine beliebige Kombination von Spracherkennung, Stifterkennung, Gesichtserkennung, biometrischer Erkennung, Gestenerkennung sowohl auf dem Bildschirm als auch neben dem Bildschirm, Luftgesten, Kopf- und Augenverfolgung und Berührungserkennung (wie unten detaillierter beschrieben) implementieren, die mit einer Anzeige des Rechengeräts 1300 assoziiert ist. Daher kann das Rechengerät 1300 Tiefenkameras, wie z.B. stereoskopische Kamerasysteme, Infrarotkamerasysteme, RGB-Kamerasysteme, Touchscreen-Technologie und Kombinationen davon, zur Gestenerkennung und -erfassung umfassen. Zusätzlich kann das Rechengerät 1300 Beschleunigungsmesser oder Gyroskope (z.B. als Teil einer Trägheitsmesseinheit (IMU)) umfassen, die das Detektieren von Bewegungen ermöglichen. In einigen Beispielen kann die Ausgabe der Beschleunigungsmesser oder Gyroskope vom Rechengerät 1300 verwendet werden, um immersive Augmented Reality oder Virtual Reality zu rendern.
  • Die Energieversorgung 1316 kann eine festverdrahtete Energieversorgung, eine Batterie-Energieversorgung oder eine Kombination davon umfassen. Die Energieversorgung 1316 kann dem Rechengerät 1300 Energie bereitstellen, damit die Komponenten des Rechengeräts 1300 operieren können.
  • Die Präsentationskomponente(n) 1318 kann/können eine Anzeige (z.B. einen Monitor, einen Touchscreen, einen Fernsehbildschirm, ein Head-Up-Display (HUD), andere Anzeigetypen oder eine Kombination davon), Lautsprecher und/oder andere Komponenten für die Präsentation umfassen. Die Präsentationskomponente(n) 1318 kann/können Daten von anderen Komponenten (z.B. der/den GPU(s) 1308, der/den CPU(s) 1306, DPUs usw.) empfangen und die Daten ausgeben (z.B. als Bild, Video, Ton usw.).
  • BEISPIELHAFTES DATENZENTRUM
  • 14 zeigt ein beispielhaftes Datenzentrum 1400, das zumindest in einem Ausführungsbeispiel der vorliegenden Offenbarung verwendet werden kann. Das Datenzentrum 1400 kann eine Datenzentrum-Infrastrukturschicht 1410, eine Framework-Schicht 1420, eine Software-Schicht 1430 und/oder eine Applikationsschicht 1440 umfassen.
  • Wie in 14 dargestellt, kann die Datenzentrum-Infrastrukturschicht 1410 einen Ressourcen-Orchestrator 1412, gruppierte Rechen-Ressourcen 1414 und Knoten-Rechen-Ressourcen („Knoten C.R.s“) 1416(1)-1416(N) umfassen, wobei „N“ eine beliebige ganze, positive Zahl repräsentiert. In mindestens einem Ausführungsbeispiel können die Knoten-C.R.s 1416(1)-1416(N) eine beliebige Anzahl von zentralen Verarbeitungseinheiten (CPUs) oder anderen Prozessoren (einschließlich DPUs, Beschleunigern, feldprogrammierbaren Gate-Arrays (FPGAs), Grafikprozessoren oder Grafikverarbeitungseinheiten (GPUs) usw.), Speichergeräten (z.B., dynamischer Festwertspeicher), Speichergeräte (z.B. Solid-State- oder Festplattenlaufwerke), Netzwerk-Eingabe/Ausgabe-Geräte (NW I/O), Netzwerk-Switches, virtuelle Maschinen (VMs), Stromversorgungsmodule und/oder Kühlmodule usw. In einigen Ausführungsbeispielen können ein oder mehrere Knoten-C.R.s aus den Knoten-C.R.s 1416(1)-1416(N) einem Server entsprechen, der über eine oder mehrere der oben genannten Rechen-Ressourcen verfügt. Daher können in einigen Ausführungsbeispielen die Knoten C.R.s 1416(1)-14161 (N) eine oder mehrere virtuelle Komponenten umfassen, wie z.B. vGPUs, vCPUs und/oder dergleichen, und/oder einer oder mehrere der Knoten C.R.s 1416(1)-1416(N) können einer virtuellen Maschine (VM) entsprechen.
  • In mindestens einem Ausführungsbeispiel können die gruppierten Rechen-Ressourcen 1414 separate Gruppierungen von Knoten-C.R.s 1416 umfassen, die in einem oder mehreren Racks (nicht gezeigt) oder in vielen Racks in Datenzentren an verschiedenen geografischen Standorten (ebenfalls nicht gezeigt) untergebracht sind. Separate Gruppierungen von Knoten-C.R.s 1416 innerhalb gruppierter Rechen-Ressourcen 1414 können gruppierte Rechen-, Netzwerk-, Speicher- oder Storage-Ressourcen umfassen, die zur Unterstützung einer oder mehrerer Arbeitslasten konfiguriert oder allokiert sein können. Zumindest in einem Ausführungsbeispiel können mehrere Knotenrechner 1416 einschließlich CPUs, GPUs, DPUs und/oder anderer Prozessoren in einem oder mehreren Racks gruppiert werden, um Rechen-Ressourcen zur Unterstützung einer oder mehrerer Arbeitslasten bereitzustellen. Das eine oder die mehreren Racks können auch eine beliebige Anzahl von Stromversorgungsmodulen, Kühlmodulen und/oder Netzwerk Switches in beliebiger Kombination umfassen.
  • Der Ressourcen-Orchestrator 1412 kann einen oder mehrere Knoten C.R.s 1416(1)-1416(N) und/oder gruppierte Rechen-Ressourcen 1414 konfigurieren oder anderweitig steuern. In mindestens einem Ausführungsbeispiel kann der Ressourcen-Orchestrator 1412 eine Entität zur Verwaltung der Software-Design-Infrastruktur (SDI) für das Datenzentrum 1400 umfassen. Der Ressourcen-Orchestrator 1412 kann Hardware, Software oder eine Kombination davon umfassen.
  • In mindestens einem Ausführungsbeispiel, wie in 14 gezeigt, kann die Framework-Schicht 1420 einen (Aufgaben-)Scheduler 1428, einen Konfigurationsverwalter 1434, einen Ressourcenverwalter 1436 und/oder ein verteiltes Dateisystem 1438 umfassen. Die Framework-Schicht 1420 kann ein Framework zur Unterstützung von Software 1432 der Software-Schicht 1430 und/oder einer oder mehrerer Anwendung(en) 1442 der Applikationsschicht 1440 umfassen. Die Software 1432 bzw. die Anwendung(en) 1442 kann bzw. können webbasierte Dienstsoftware oder Anwendungen umfassen, wie sie beispielsweise von Amazon Web Services, Google Cloud und Microsoft Azure bereitgestellt werden. Die Applikationsschicht 1420 kann ein Typ eines freien und quelloffenen Software-Webanwendungs-Frameworks wie Apache SparkTM (im Folgenden „Spark“) sein, das ein verteiltes Dateisystem 1438 für die Verarbeitung großer Datenmengen (z.B. „Big Data“) nutzen kann, ist aber nicht darauf beschränkt. In mindestens einem Ausführungsbeispiel kann der Scheduler 1428 einen Spark-Treiber umfassen, um die Planung von Arbeitslasten zu erleichtern, die von verschiedenen Schichten des Datenzentrums 1400 unterstützt werden. Der Verwalter 1434 kann in der Lage sein, unterschiedliche Schichten zu konfigurieren, z.B. die Softwareschicht 1430 und die Framework-Schicht 1420, die Spark und das verteilte Dateisystem 1438 zur Unterstützung der Verarbeitung großer Datenmengen umfasst. Der Ressourcenverwalter 1436 kann in der Lage sein, geclusterte oder gruppierte Rechen-Ressourcen zu verwalten, die dem verteilten Dateisystem 1438 und dem Scheduler 1428 zugewiesen oder allokiert sind, um diese zu unterstützen. In mindestens einem Ausführungsbeispiel können die geclusterten oder gruppierten Rechen-Ressourcen die gruppierten Rechen-Ressourcen 1414 in der Datenzentrum-Infrastrukturschicht 1410 umfassen. Der Ressourcenverwalter 1436 kann sich mit dem Ressourcen-Orchestrator 1412 abstimmen, um diese zugeordneten oder allokierten Rechen-Ressourcen zu verwalten.
  • In mindestens einem Ausführungsbeispiel kann die in der Softwareschicht 1430 enthaltene Software 1432 Software umfassen, die von mindestens Teilen der Knoten C.R.s 1416(1)-1416(N), der gruppierten Rechen-Ressourcen 1414 und/oder des verteilten Dateisystems 1438 der Framework-Schicht 1420 verwendet wird. Ein oder mehrere Typen von Software können unter anderem Internet-Suchsoftware, E-Mail-Virenscan-Software, Datenbanksoftware und Software für Streaming-Videoinhalte umfassen.
  • In mindestens einem Ausführungsbeispiel kann (können) die in der Applikationsschicht 1440 enthaltene(n) Anwendung(en) 1442 einen oder mehrere Typen von Anwendungen umfassen, die von mindestens Teilen der Knoten C.R.s 1416(1)-1416(N), gruppierten Rechen-Ressourcen 1414 und/oder dem verteilten Dateisystem 1438 der Framework-Schicht 1420 verwendet werden. Ein oder mehrere Typen von Anwendungen können eine beliebige Anzahl von Genomanwendungen, kognitiven Rechnern und Anwendungen für maschinelles Lernen umfassen, einschließlich Software zum Trainieren oder Inferenzieren, Framework-Software für maschinelles Lernen (z.B. PyTorch, TensorFlow, Caffe usw.) und/oder andere Anwendungen für maschinelles Lernen, die in Verbindung mit einer oder mehreren Ausführungsbeispielen verwendet werden, sind aber nicht darauf beschränkt.
  • In mindestens einem Ausführungsbeispiel können der Konfigurationsverwalter 1434, der Ressourcenverwalter 1436 und der Ressourcen-Orchestrator 1412 eine beliebige Anzahl und einen beliebigen Typ von selbstmodifizierenden Aktionen basierend auf einer beliebigen Menge und einem beliebigen Typ von Daten implementieren, die auf jede technisch machbare Weise erfasst werden. Selbstmodifizierende Aktionen können einen Betreiber eines Datenzentrums 1400 davon entlasten, möglicherweise schlechte Konfigurationsentscheidungen zu treffen und möglicherweise nicht ausgelastete und/oder schlecht funktionierende Teile eines Datenzentrums zu vermeiden.
  • Das Datenzentrum 1400 kann Werkzeuge, Dienste, Software oder andere Ressourcen umfassen, um ein oder mehrere maschinelle Lernmodelle zu trainieren oder Informationen unter Verwendung eines oder mehrerer maschineller Lernmodelle gemäß einem oder mehreren hierin beschriebenen Ausführungsbeispielen vorherzusagen oder zu folgern. Beispielsweise kann ein maschinelles Lernmodell bzw. können maschinelle Lernmodelle trainiert werden, indem Gewichtsparameter gemäß einer neuronalen Netzwerk-Architektur unter Verwendung von Software und/oder Rechen-Ressourcen berechnet werden, die oben in Bezug auf das Datenzentrum 1400 beschrieben wurden. Daher können zumindest in einem Ausführungsbeispiel trainierte oder eingesetzte maschinelle Lernmodelle, die einem oder mehreren neuronalen Netzwerken entsprechen, verwendet werden, um Informationen unter Verwendung der oben beschriebenen Ressourcen in Bezug auf das Datenzentrum 1400 abzuleiten oder vorherzusagen, indem Gewichtungsparameter verwendet werden, die durch eine oder mehrere Trainingstechniken berechnet werden, wie z.B., aber nicht beschränkt auf die hier beschriebenen.
  • In mindestens einem Ausführungsbeispiel kann das Datenzentrum 1400 CPUs, applikationsspezifische integrierte Schaltungen (ASICs), GPUs, FPGAs und/oder andere Hardware (oder entsprechende virtuelle Rechen-Ressourcen) verwenden, um unter Verwendung der oben beschriebenen Ressourcen ein Training und/oder Inferenzieren durchzuführen. Darüber hinaus können eine oder mehrere der oben beschriebenen Software- und/oder Hardwareressourcen als Dienst konfiguriert sein, um Benutzern das Trainieren oder Inferenzieren von Informationen zu ermöglichen, wie z.B. Bilderkennung, Spracherkennung oder andere Dienste der künstlichen Intelligenz.
  • BEISPIELHAFTE NETZWERKUMGEBUNGEN
  • Netzwerkumgebungen, die zur Verwendung bei der Implementierung von Ausführungsbeispielen der Offenbarung geeignet sind, können ein oder mehrere Client-Geräte, Server, Network Attached Storage (NAS), andere Backend-Geräte und/oder andere Typen von Geräten umfassen. Die Client-Geräte, Server und/oder andere Typen von Geräten (z.B. jedes Gerät) können auf einer oder mehreren Instanzen des/der Rechengerät(e) 1300 von 13 implementiert werden - z.B. kann jedes Gerät ähnliche Komponenten, Merkmale und/oder Funktionalität des/der Rechengerät(e) 1300 umfassen. Wenn Backend-Geräte (z.B. Server, NAS usw.) implementiert sind, können die Backend-Geräte außerdem als Teil eines Datenzentrums 1400 umfasst sein, dessen Beispiel in 14 detaillierter beschrieben wird.
  • Komponenten einer Netzwerkumgebung können über ein oder mehrere Netzwerke miteinander kommunizieren, die drahtgebunden, drahtlos oder beides sein können. Das Netzwerk kann mehrere Netzwerke oder ein Netzwerk von Netzwerken umfassen. So kann das Netzwerk beispielsweise ein oder mehrere Wide Area Networks (WANs), ein oder mehrere Local Area Networks (LANs), ein oder mehrere öffentliche Netzwerke wie das Internet und/oder ein öffentliches Telefonnetz (PSTN) und/oder ein oder mehrere private Netzwerke umfassen. Umfasst das Netzwerk ein drahtloses Telekommunikationsnetz, können Komponenten wie eine Basisstation, ein Kommunikationsturm oder sogar Zugangspunkte (sowie andere Komponenten) eine drahtlose Verbindung bereitstellen.
  • Kompatible Netzwerkumgebungen können eine oder mehrere Peer-to-Peer-Netzwerkumgebungen umfassen - in diesem Fall kann ein Server nicht in einer Netzwerkumgebung enthalten sein - und eine oder mehrere Client-Server-Netzwerkumgebungen - in diesem Fall können ein oder mehrere Server in einer Netzwerkumgebung enthalten sein. In Peer-to-Peer-Netzwerkumgebungen kann die hier beschriebene Funktionalität in Bezug auf einen oder mehrere Server auf einer beliebigen Anzahl von Client-Geräten implementiert werden.
  • In mindestens einem Ausführungsbeispiel kann eine Netzwerkumgebung eine oder mehrere cloud-basierte Netzwerkumgebungen, eine Umgebung für verteiltes Rechnen, eine Kombination davon usw. umfassen. Eine cloud-basierte Netzwerkumgebung kann eine Framework-Schicht, einen Scheduler für Aufgaben, einen Ressourcenverwalter und ein verteiltes Dateisystem umfassen, die auf einem oder mehreren Servern implementiert sind, die einen oder mehrere Kern-Netzwerkserver und/oder Edge-Server umfassen können. Eine Framework-Schicht kann ein Framework zur Unterstützung von Software einer Software-Schicht und/oder einer oder mehrerer Anwendungen einer Applikationsschicht umfassen. Die Software bzw. die Anwendung(en) kann/können webbasierte Dienstsoftware oder Anwendungen umfassen. In Ausführungsbeispielen können eines oder mehrere der Geräte die webbasierte Dienstsoftware oder Anwendungen verwenden (z.B. durch Zugriff auf die Dienstsoftware und/oder Anwendungen über eine oder mehrere Anwendungsprogrammierschnittstellen (APIs)). Die Applikationsschicht kann ein Typ von freiem und quelloffenem Software-Webanwendungs-Framework sein, das z.B. ein verteiltes Dateisystem für die Verarbeitung großer Datenmengen (z.B. „Big Data“) verwendet.
  • Eine cloud-basierte Netzwerkumgebung kann Cloud-Computing und/oder Cloud-Speicher bereitstellen, die eine beliebige Kombination der hierin beschriebenen Rechen- und/oder Datenspeicherfunktionen (oder einen oder mehrere Teile davon) ausführt. Jede dieser verschiedenen Funktionen kann über mehrere Standorte von zentralen oder Kern-Servern (z.B. von einem oder mehreren Datenzentren, die über einen Staat, eine Region, ein Land, den Globus usw. verteilt sein können) verteilt werden. Befindet sich eine Verbindung zu einem Benutzer (z.B. einem Client-Gerät) relativ nahe an einem oder mehreren Edge-Servern, kann ein Kern-Server zumindest einen Teil der Funktionalität an den oder die Edge-Server bezeichnen. Eine cloud-basierte Netzwerkumgebung kann privat (z.B. auf eine einzelne Organisation beschränkt), öffentlich (z.B. für viele Organisationen verfügbar) und/oder eine Kombination davon (z.B. eine hybride Cloud-Umgebung) sein.
  • Das (die) Client-Gerät(e) kann (können) zumindest einige der Komponenten, Merkmale und Funktionen des (der) hierin in Bezug auf 13 beschriebenen Rechengerät(e) 1300 umfassen. Als Ausführungsbeispiel und ohne Einschränkung kann ein Rechengerät als Personal Computer (PC), Laptop, mobiles Gerät, Smartphone, Tablet-Computer, Smartwatch, tragbarer Computer, persönlicher digitaler Assistent (PDA), MP3-Player, Virtual-Reality-Headset, Global Positioning System (GPS) oder Gerät, Videoplayer, Videokamera, Überwachungsgerät oder -system, Fahrzeug ausgeführt sein, ein Boot, ein fliegendes Schiff, eine virtuelle Maschine, eine Drohne, ein Roboter, ein Handheld-Kommunikationsgerät, ein Krankenhausgerät, ein Spielgerät oder -system, ein Unterhaltungssystem, ein Fahrzeugrechnersystem, ein eingebettetes Systemsteuergerät, eine Fernbedienung, ein Gerät, ein Unterhaltungselektronikgerät, eine Workstation, ein Edge-Gerät, eine beliebige Kombination dieser beschriebenen Geräte oder jedes andere geeignete Gerät.
  • Die Offenbarung kann im allgemeinen Kontext von Computercode oder maschinell verwendbaren Befehlen beschrieben werden, einschließlich computerausführbarer Befehle, wie z.B. Programmmodule, die von einem Rechner oder einer anderen Maschine, wie z.B. einem persönlichen Datenassistenten oder einem anderen tragbaren Gerät, ausgeführt werden. Im Allgemeinen beziehen sich Programmmodule, einschließlich Routinen, Programme, Objekte, Komponenten, Datenstrukturen usw., auf Code, der spezielle Aufgaben durchführt oder spezielle abstrakte Typen implementiert. Die Offenbarung kann in einer Vielzahl von Systemkonfigurationen praktiziert werden, einschließlich Handheld-Geräten, Unterhaltungselektronik, allgemeinen Rechnern, spezielleren Rechengeräten usw. Die Offenbarung kann auch in verteilten Rechenumgebungen praktiziert werden, in denen Aufgaben von entfernten Verarbeitungsgeräten durchgeführt werden, die über ein Kommunikationsnetzwerk verbunden sind.
  • Wie hierin verwendet, sollte eine Erwähnung von „und/oder“ in Bezug auf zwei oder mehr Elemente so ausgelegt werden, dass nur ein Element oder eine Kombination von Elementen gemeint ist. So kann beispielsweise „Element A, Element B und/oder Element C“ nur Element A, nur Element B, nur Element C, Element A und Element B, Element A und Element C, Element B und Element C oder die Elemente A, B und C umfassen. Darüber hinaus kann „mindestens eines der Elemente A oder B“ mindestens eines der Elemente A, mindestens eines der Elemente B oder mindestens eines der Elemente A und mindestens eines der Elemente B umfassen. Ferner kann „mindestens eines der Elemente A und B“ mindestens eines der Elemente A, mindestens eines der Elemente B oder mindestens eines der Elemente A und mindestens eines der Elemente B umfassen.
  • Der Gegenstand der vorliegenden Offenbarung wird hier spezifisch beschrieben, um die gesetzlichen Anforderungen zu erfüllen. Die Beschreibung selbst soll jedoch den Umfang dieser Offenbarung nicht einschränken. Vielmehr haben die Erfinder vorgesehen, dass der beanspruchte Gegenstand auch auf andere Weise ausgeführt werden kann, um unterschiedliche Schritte oder Kombinationen von Schritten ähnlich den in dieser Druckschrift beschriebenen in Verbindung mit anderen gegenwärtigen oder zukünftigen Technologien zu umfassen. Auch wenn die Begriffe „Schritt“ und/oder „Block“ hier verwendet werden, um unterschiedliche Elemente der angewandten Verfahren zu bezeichnen, sollten die Begriffe nicht so ausgelegt werden, dass sie eine spezielle Reihenfolge unter oder zwischen den verschiedenen hier offenbart dargestellten Schritten implizieren, es sei denn, die Reihenfolge der einzelnen Schritte wird ausdrücklich beschrieben.

Claims (20)

  1. Verfahren, umfassend: Bestimmen, unter Verwendung eines oder mehrerer maschineller Lernmodelle und basierend zumindest auf ersten, mit einer Anforderung assoziierten Daten, einer ersten Absicht, die mit der Anforderung assoziiert ist; Bestimmen, unter Verwendung des einen oder mehrerer maschineller Lernmodelle und basierend zumindest auf den ersten Daten und zweiten Daten, die mit einer oder mehreren zweiten Absichten assoziiert sind, die sich auf die erste Absicht beziehen, einer zweiten Absicht der einen oder mehreren zweiten Absichten, die mit der Anforderung assoziiert ist; und Veranlassen, zumindest basierend auf der zweiten Absicht, einer Ausgabe einer Antwort auf die Anforderung.
  2. Verfahren nach Anspruch 1, wobei: das Bestimmen der ersten Absicht, die mit der Anforderung assoziiert ist, ein oder mehrere erste maschinelle Lernmodelle des ein oder der mehreren maschinelle Lernmodelle verwendet; und das Bestimmen der zweiten Absicht, die mit der Anforderung assoziiert ist, ein oder mehrere zweite maschinelle Lernmodelle des einen oder der mehreren maschinellen Lernmodelle verwendet.
  3. Verfahren nach Anspruch 1 oder 2, weiter umfassend Identifizieren der zweiten Daten zumindest basierend auf der ersten Absicht, wobei die zweiten Daten zumindest einen ersten Text, der mit der zweiten Absicht assoziiert ist, und zweiten Text, der mit einer dritten Absicht der einen oder mehreren zweiten Absichten assoziiert ist, repräsentieren.
  4. Verfahren nach Anspruch 3, wobei das Bestimmen der zweiten Absicht, die mit der Anforderung assoziiert ist, Folgendes umfasst: Bestimmen, unter Verwendung des einen oder mehrerer maschineller Lernmodelle und basierend zumindest auf den ersten Daten und den zweiten Daten, eines ersten Konfidenzwerts, der mit dem ersten Text assoziiert ist, und eines zweiten Konfidenzwerts, der mit dem zweiten Text assoziiert ist; und Bestimmen, zumindest basierend darauf, dass der erste Konfidenzwert größer als der zweite Konfidenzwert ist, der zweiten Absicht, die mit der Anforderung assoziiert ist.
  5. Verfahren nach einem der vorhergehenden Ansprüche, weiter umfassend Identifizieren der zweiten Daten zumindest basierend auf der ersten Absicht, wobei die zweiten Daten zumindest den ersten Text, der mit der zweiten Absicht assoziiert ist, und den zweiten Text, der mit der zweiten Absicht assoziiert ist, repräsentieren.
  6. Verfahren nach Anspruch 5, wobei das Bestimmen der zweiten Absicht, die mit der Anforderung assoziiert ist, Folgendes umfasst: Bestimmen, unter Verwendung des einen oder der mehreren maschinellen Lernmodelle und basierend zumindest auf den ersten Daten und den zweiten Daten, eines ersten Konfidenzwerts, der mit dem ersten Text assoziiert ist, und eines zweiten Konfidenzwerts, der mit dem zweiten Text assoziiert ist; und Bestimmen der zweiten Absicht, die mit der Anforderung assoziiert ist, basierend zumindest darauf, dass entweder der erste Konfidenzwert oder der zweite Konfidenzwert einen Schwellenwert erfüllt.
  7. Verfahren nach einem der vorhergehenden Ansprüche, weiter umfassend: Bestimmen, unter Verwendung des einen oder der mehreren maschinellen Lernmodelle und basierend zumindest auf den ersten Daten und dritten Daten, die mit einer oder mehreren dritten Absichten assoziiert sind, die sich auf die zweite Absicht beziehen, eines oder mehrerer Konfidenzwerte, die mit der einen oder den mehreren dritten Absichten assoziiert sind; Bestimmen, dass der eine oder die mehreren Konfidenzwerte einen Schwellenwert nicht erfüllen; und Bestimmen, zumindest basierend darauf, dass der eine oder die mehreren Konfidenzwerte den Schwellenwert nicht erfüllen, dass die zweite Absicht eine finale Absicht umfasst, die mit der Anforderung assoziiert ist.
  8. Verfahren nach einem der vorhergehenden Ansprüche, weiter umfassend: Bestimmen, unter Verwendung des einen oder der mehreren maschinellen Lernmodelle und basierend zumindest auf den ersten Daten und dritten Daten, die mit einer oder mehreren dritten Absichten assoziiert sind, die sich auf die zweite Absicht beziehen, eines oder mehrerer Konfidenzwerte, die mit der einen oder den mehreren dritten Absichten assoziiert sind; Bestimmen, dass zumindest ein Konfidenzwert des einen oder der mehreren Konfidenzwerte einen Schwellenwert erfüllt; und Bestimmen, zumindest basierend darauf, dass der Konfidenzwert den Schwellenwert erfüllt, dass eine dritte Absicht der einen oder mehreren dritten Absichten eine finale Absicht umfasst, die mit der Anforderung assoziiert ist.
  9. Verfahren nach einem der vorhergehenden Ansprüche, weiter umfassend: Bestimmen von dritten Daten, die mit der ersten Absicht assoziiert sind, wobei die dritten Daten einem oder mehreren von einer Aktion zum Durchführen einer Suche nach einer neuen Absicht, einem oder mehreren Identifikatoren, die mit der einen oder den mehreren zweiten Absichten assoziiert sind, oder einem Konfidenzwert, der mit der ersten Absicht assoziiert ist, entsprechen, wobei das Bestimmen der zweiten Absicht weiter zumindest auf den dritten Daten basiert.
  10. Verfahren nach einem der vorhergehenden Ansprüche, weiter umfassend: Bestimmen einer Aktion, die mit der zweiten Absicht assoziiert ist, wobei die Aktion zumindest Text zum Generieren der Antwort umfasst; und Generieren der Antwort zumindest basierend auf dem Text.
  11. System, umfassend: eine oder mehrere Verarbeitungseinheiten, zum: Bestimmen, unter Verwendung eines oder mehrerer maschineller Lernmodelle und basierend zumindest auf ersten Daten, die mit einer Anforderung assoziiert sind, einer ersten Absicht, die mit der Anforderung assoziiert ist; Bestimmen, unter Verwendung des einen oder der mehreren maschinellen Lernmodelle und basierend zumindest auf den ersten Daten und zweiten Daten, die mit einer oder mehreren zweiten Absichten, die sich auf die erste Absicht beziehen, assoziiert sind, eines Konfidenzwertes, der mit einer zweiten Absicht der einen oder mehreren zweiten Absichten assoziiert ist; und Veranlassen, zumindest basierend auf dem Konfidenzwert, einer Ausgabe einer Antwort auf die Anforderung.
  12. System nach Anspruch 11, wobei die eine oder mehreren Verarbeitungseinheiten weiter eingerichtet sind, zum: Bestimmen, zumindest basierend darauf dass der Konfidenzwert einen Schwellenwert nicht erfüllt, der Antwort unter Verwendung der ersten Absicht; oder Bestimmen, zumindest basierend darauf, dass der Konfidenzwert den Schwellenwert erfüllt, der Antwort unter Verwendung der zweiten Absicht.
  13. System nach Anspruch 11 oder 12, wobei die eine oder die mehreren Verarbeitungseinheiten weiter eingerichtet sind zum Identifizieren der zweiten Daten basierend zumindest auf der ersten Absicht, wobei die zweiten Daten zumindest einen ersten Text, der mit der zweiten Absicht assoziiert ist, und einen zweiten Text, der mit einer dritten Absicht der einen oder mehreren zweiten Absichten assoziiert ist, repräsentieren.
  14. System nach Anspruch 13, wobei: der Konfidenzwert mit dem ersten Text assoziiert ist; und die eine oder die mehreren Verarbeitungseinheiten weiter dazu eingerichtet sind, unter Verwendung des einen oder der mehreren maschinellen Lernmodelle und basierend zumindest auf den ersten Daten und den zweiten Daten, einen zweiten Konfidenzwert zu bestimmen, der mit dem zweiten Text assoziiert ist, wobei die Antwort weiter zumindest basierend auf dem zweiten Konfidenzwert ausgegeben wird.
  15. System nach einem der Ansprüche 11 bis 14, wobei die eine oder die mehreren Verarbeitungseinheiten weiter dazu eingerichtet sind, die ersten Daten zumindest basierend auf der ersten Absicht zu identifizieren, wobei die ersten Daten zumindest ersten Text, der mit der zweiten Absicht assoziiert ist, und zweiten Text, der mit der zweiten Absicht assoziiert ist, repräsentieren.
  16. Das System nach Anspruch 15, wobei: der Konfidenzwert mit dem ersten Text assoziiert ist; und die eine oder die mehreren Verarbeitungseinheiten weiter dazu eingerichtet sind, unter Verwendung des einen oder der mehreren maschinellen Lernmodelle und basierend zumindest auf den ersten Daten und den zweiten Daten, einen zweiten Konfidenzwert zu bestimmen, der mit dem zweiten Text assoziiert ist, wobei die Antwort weiter zumindest basierend auf dem zweiten Konfidenzwert ausgegeben wird.
  17. System nach einem der Ansprüche 11 bis 16, wobei die eine oder die mehreren Verarbeitungseinheiten weiter eingerichtet sind, zum: Bestimmen, zumindest basierend darauf, dass der Konfidenzwert einen Schwellenwert erfüllt, unter Verwendung des einen oder der mehreren maschinellen Lernmodelle und zumindest basierend auf den ersten Daten und dritten Daten, die mit einer oder mehreren dritten Absichten assoziiert sind, die sich auf die zweite Absicht beziehen, einer dritten Absicht der einen oder mehreren dritten Absichten, die mit der Anforderung assoziiert ist, wobei die Antwort zumindest basierend auf der dritten Absicht ausgegeben wird.
  18. System nach einem der Ansprüche 11 bis 17, wobei das System in mindestens einem der folgenden Systeme enthalten ist: einem Steuerungssystem für eine autonome oder halbautonome Maschine; einem Wahrnehmungssystem für eine autonome oder halbautonome Maschine einem System zum Durchführen von Simulationsoperationen; einem System zur Durchführung von digitalen Zwillingsoperationen; einem System zur Durchführung von Lichttransport-Simulationen; einem System zur Durchführung von kollaborativer Inhaltserstellung für 3D-Assets; einem System zur Durchführung von Deep-Learning-Operationen; einem System, das unter Verwendung einer Randvorrichtung implementiert ist; einem System, das unter Verwendung eines Roboters implementiert ist; einem System zur Durchführung von konversationellen KI-Operationen; einem System zur Erzeugung synthetischer Daten; einem System, das eine oder mehrere virtuelle Maschinen (VMs) enthält; einem System, das zumindest teilweise in einem Rechenzentrum implementiert ist; oder einem System, das zumindest teilweise unter Verwendung von Cloud-Computing-Ressourcen implementiert ist.
  19. Prozessor, umfassend: eine oder mehrere Verarbeitungseinheiten, um basierend zumindest auf einer ersten, mit einer Anforderung assoziierten Absicht und einer zweiten, mit einer Anforderung assoziierten Absicht eine Ausgabe einer Antwort auf die Anforderung zu veranlassen, wobei die zweite Absicht unter Verwendung eines oder mehrerer maschineller Lernmodelle und basierend zumindest auf ersten Daten, die die Anforderung repräsentierenden, und zweiten Daten, die mit einer oder mehreren zweiten Absichten, die sich auf die erste Absicht beziehen, assoziiert sind, bestimmt wird.
  20. Prozessor nach Anspruch 19, wobei der Prozessor zumindest in einem der folgenden Systeme enthalten ist: einem Steuerungssystem für eine autonome oder halbautonome Maschine; einem Wahrnehmungssystem für eine autonome oder halbautonome Maschine; einem System zum Durchführen von Simulationsoperationen; einem System zur Durchführung von Digital-Twin-Operationen; einem System zur Durchführung von Lichttransport-Simulationen; einem System zum Durchführen einer kollaborativen Inhaltserstellung für 3D-Assets; einen System zur Durchführung von Deep-Learning-Operationen; einem System, das unter Verwendung einer Randvorrichtung implementiert ist; einem System, das unter Verwendung eines Roboters implementiert ist; einem System zur Durchführung von konversationellen KI-Operationen; einem System zur Erzeugung synthetischer Daten; einem System, das eine oder mehrere virtuelle Maschinen (VMs) enthält; einem System, das zumindest teilweise in einem Rechenzentrum implementiert ist; oder einem System, das zumindest teilweise unter Verwendung von Cloud-Computing-Ressourcen implementiert ist.
DE102023133024.1A 2022-12-01 2023-11-27 Bestimmen von absichten und antworten unter verwendung von maschinellem lernen in konversationellen ki-systemen und -anwendungen Pending DE102023133024A1 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US202263429409P 2022-12-01 2022-12-01
US63/429,409 2022-12-01
US18/173,610 2023-02-23
US18/173,610 US20230205797A1 (en) 2022-12-01 2023-02-23 Determining intents and responses using machine learning in conversational ai systems and applications

Publications (1)

Publication Number Publication Date
DE102023133024A1 true DE102023133024A1 (de) 2024-06-06

Family

ID=86898060

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102023133024.1A Pending DE102023133024A1 (de) 2022-12-01 2023-11-27 Bestimmen von absichten und antworten unter verwendung von maschinellem lernen in konversationellen ki-systemen und -anwendungen

Country Status (2)

Country Link
US (2) US20230205797A1 (de)
DE (1) DE102023133024A1 (de)

Also Published As

Publication number Publication date
US20240184814A1 (en) 2024-06-06
US20230205797A1 (en) 2023-06-29

Similar Documents

Publication Publication Date Title
DE102017122515A1 (de) Aufgaben-Initiierung unter Verwendung von langen Sprachbefehlen
DE202017105550U1 (de) Vereinheitlichtes und intelligentes Meldungs- und Schnelleinstellungssystem
DE112021001301T5 (de) Dialogorientierte-ki-plattform mit gerenderter graphischer ausgabe
US11741949B2 (en) Real-time video conference chat filtering using machine learning models
DE102022102912A1 (de) Pipelines für effizientes training und einsatz von modellen für maschinelles lernen
DE102022106956A1 (de) Konversationelle ki-plattformen mit dialogintegration von geschlossenen domänen und offenen domänen
DE102022100521A1 (de) Automatische inhaltserkennung und information im livestreaming geeignet für videospiele
US11757974B2 (en) System and method for online litigation platform
Elliott Making sense of AI: Our algorithmic world
DE102022100815A1 (de) Lautstärkensteuerung für audio- und videokonferenzanwendungen
DE102023100874A1 (de) Effiziente Synchronisationsbarrieren für mehrere Vorrichtungen durch Multicasting
US20220391175A1 (en) Machine learning application deployment using user-defined pipeline
DE102021125895A1 (de) Latenzbestimmungen für einrichtungen mit menschlicher schnittstelle
DE102021119725A1 (de) Überlagern von metadaten über videoströme on-demand zur intelligenten videoanalytik
DE102023125923A1 (de) Generative modelle maschinellen lernens für datenschutzerhaltende synthetische datenerzeugung unter verwendung von diffusion
DE102022132167A1 (de) Spielstilanalyse für Spielempfehlungen
US20230153612A1 (en) Pruning complex deep learning models based on parent pruning information
DE102023102142A1 (de) Konversationelle ki-plattform mit extraktiver fragenbeantwortung
DE102023103679A1 (de) Texturübertragung und -synthese unter verwendung ausgerichteter karten in bildgenerierungssystemen und -anwendungen
DE102022120731A1 (de) Multimodale sensorfusion zur identifizierung von inhalten bei anwendungen von mensch-maschine-schnittstellen
DE102023133024A1 (de) Bestimmen von absichten und antworten unter verwendung von maschinellem lernen in konversationellen ki-systemen und -anwendungen
DE112022002137T5 (de) Hybrides differenzierbares Rendering für Lichttransportsimulationssysteme und -Anwendungen
DE102023133023A1 (de) Generieren von abfrageantworten unter verwendung strukturierter und unstrukturierter daten für konversationelle ki-systeme und -anwendungen
DE102023120492A1 (de) Generieren von kanonischen Formen für aufgabenorientierte Dialoge in konversationellen KI-Systemen und -Applikationen
DE102023133698A1 (de) Thematisch anpassbare modelle für konversationssysteme und -anwendungen mit künstlicher intelligenz

Legal Events

Date Code Title Description
R012 Request for examination validly filed