DE112021005050T5 - Zugriffsberechtigungsprüfung in systemen mit künstlicher intelligenz - Google Patents

Zugriffsberechtigungsprüfung in systemen mit künstlicher intelligenz Download PDF

Info

Publication number
DE112021005050T5
DE112021005050T5 DE112021005050.8T DE112021005050T DE112021005050T5 DE 112021005050 T5 DE112021005050 T5 DE 112021005050T5 DE 112021005050 T DE112021005050 T DE 112021005050T DE 112021005050 T5 DE112021005050 T5 DE 112021005050T5
Authority
DE
Germany
Prior art keywords
user
voice
voice response
aivrs
knowledge
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
DE112021005050.8T
Other languages
English (en)
Inventor
Shikhar KWATRA
Chistopher J. Hardee
Sarbajit K. Rakshit
Gurneet Kaur
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE112021005050T5 publication Critical patent/DE112021005050T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/32User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • 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/28Constructional details of speech recognition systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L17/00Speaker identification or verification techniques
    • G10L17/22Interactive procedures; Man-machine interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/172Classification, e.g. identification

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Acoustics & Sound (AREA)
  • Artificial Intelligence (AREA)
  • Computer Hardware Design (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Health & Medical Sciences (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Telephonic Communication Services (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Facsimiles In General (AREA)
  • Selective Calling Equipment (AREA)

Abstract

Eine Zugriffsberechtigungsprüfung in einem System mit künstlicher Intelligenz enthält ein elektronisches Wahrnehmen einer physischen Präsenz eines zweiten Benutzers mit einem Sprachantwortsystem mit künstlicher Intelligenz (Artificial Intelligence Voice Response System, AIVRS) eines ersten Benutzers. Eine Sprachantwort wird durch das AIVRS erzeugt und an einen zweiten Benutzer übermittelt, der einen Zugriff auf einen Wissenskorpus anfordert, der durch eine AIVRS des zweiten Benutzers gespeichert wird. Auf Grundlage der Sprachantwort des zweiten Benutzers instantiiert das AIVRS des ersten Benutzers eine elektronische Datenübertragungssitzung mit dem AIVRS des zweiten Benutzers. Die Sitzung wird über eine elektronische Datenübertragungsverbindung mit einer tragbaren Einheit des zweiten Benutzers initiiert. Ausgewählte Teile des Wissenskorpus werden durch das AIVRS aus dem AIVRS des zweiten Benutzers abgerufen, wobei die Teile auf Grundlage der Sprachantwort ausgewählt werden. Als Reaktion auf eine Sprachaufforderung, die durch das Kl-Sprachantwortsystem des ersten Benutzers auf Grundlage der ausgewählten Teile interpretiert wird, wird durch eine oder mehrere loT-Einheiten eine Aktion initiiert.

Description

  • HINTERGRUND
  • Diese Offenbarung bezieht sich auf einen computergestützten Datenaustausch und im Besonderen auf einen sicheren Datenzugriff und -austausch zwischen Computersystemen, die mit künstlicher Intelligenz ausgestattet werden.
  • Geschätzt haben mehr als eine Million US-Haushalte Automatisierungssysteme, und die Zahl der in US-Haushalten installierten smarten Einheiten dürfte 50 Millionen bald überschreiten. Smarte Einheiten werden mit künstlicher Intelligenz (KI) ausgestattet und können im Einklang mit den spezifischen Absichten und Vorlieben von Benutzern betrieben werden. Die Absichten und Vorlieben eines Benutzers sind Teil eines Wissenskorpus, den eine smarte Einheit unter Verwendung von maschinellem Lernen erlangen kann. Smarte Einheiten tauschen vermehrt Daten miteinander aus und koordinieren integrierte Funktionen über das Internet oder andere Datenübertragungsnetzwerke, wodurch ein Internet der Dinge (Internet ofThings, loT) gebildet wird.
  • KURZDARSTELLUNG
  • Bei einer oder mehreren Ausführungsformen enthält ein Verfahren ein elektronisches Wahrnehmen einer physischen Präsenz eines zweiten Benutzers mit einem Sprachantwortsystem mit künstlicher Intelligenz (KI) eines ersten Benutzers. Das Verfahren enthält ein Übermitteln einer Sprachanforderung, die erzeugt wird, indem das Kl-Sprachantwortsystem des ersten Benutzers einen Zugriff auf einen Wissenskorpus anfordert, der durch ein Kl-Sprachantwortsystem des zweiten Benutzers elektronisch gespeichert wird, und ein Empfangen einer Sprachantwort von dem zweiten Benutzer. Das Verfahren enthält ein Instantiieren einer elektronischen Datenübertragungssitzung mit dem Kl-Sprachantwortsystem des zweiten Benutzers durch das Kl-Sprachantwortsystem des ersten Benutzers auf Grundlage der Sprachantwort, wobei die elektronische Datenübertragungssitzung durch das Kl-Sprachantwortsystem des ersten Benutzers über eine elektronische Datenübertragungsverbindung mit einer tragbaren Einheit des zweiten Benutzers initiiert wird. Das Verfahren enthält ein Abrufen ausgewählter Teile des Wissenskorpus durch das Kl-Sprachantwortsystem des ersten Benutzers aus dem Kl-Sprachantwortsystem des zweiten Benutzers über ein Datenübertragungsnetzwerk, wobei die ausgewählten Teile des Sprachkorpus auf Grundlage der Sprachantwort des zweiten Benutzers auf die Sprachanforderung ausgewählt werden, die durch das Kl-Sprachantwortsystem des ersten Benutzers übermittelt wird. Das Verfahren enthält ein Initiieren einer Aktion durch eine oder mehrere loT-Einheiten als Reaktion auf eine Sprachaufforderung, die durch das Kl-Sprachantwortsystem des ersten Benutzers auf Grundlage der ausgewählten Teile des Wissenskorpus interpretiert wird.
  • Bei einer oder mehreren Ausführungsformen enthält ein System ein Sprachantwortsystem mit künstlicher Intelligenz (KI) eines ersten Benutzers, das mit einem Prozessor wirkverbunden ist, der konfiguriert wird, um Operationen zu initiieren. Die Operationen enthalten ein elektronisches Wahrnehmen einer physischen Präsenz eines zweiten Benutzers. Die Operationen enthalten ein Übermitteln einer Sprachanforderung, auf einen Wissenskorpus zuzugreifen, der durch ein Kl-Sprachantwortsystem des zweiten Benutzers elektronisch gespeichert wird, und ein Empfangen einer Sprachantwort von dem zweiten Benutzer. Die Operationen enthalten ein Instantiieren einer elektronischen Datenübertragungssitzung durch das Kl-Sprachantwortsystem des ersten Benutzers mit dem Kl-Sprachantwortsystem des zweiten Benutzers auf Grundlage der Sprachantwort, wobei die elektronische Datenübertragungssitzung über eine elektronische Datenübertragungsverbindung mit einer tragbaren Einheit des zweiten Benutzers initiiert wird. Die Operationen enthalten ein Abrufen ausgewählter Teile des Wissenskorpus aus dem Kl-Sprachantwortsystem des zweiten Benutzers über ein Datenübertragungsnetzwerk, wobei die ausgewählten Teile des Sprachkorpus auf Grundlage der Sprachantwort des zweiten Benutzers auf die Anforderung ausgewählt werden. Die Operationen enthalten ein Initiieren einer Aktion durch eine oder mehrere loT-Einheiten als Reaktion auf eine Sprachaufforderung, die durch das Kl-Sprachantwortsystem des ersten Benutzers auf Grundlage der ausgewählten Teile des Wissenskorpus interpretiert wird.
  • Bei einer oder mehreren Ausführungsformen enthält ein Computerprogrammprodukt ein oder mehrere computerlesbare Speichermedien mit darauf gespeicherten Anweisungen. Die Anweisungen sind durch einen Prozessor ausführbar, der mit einem Sprachantwortsystem mit künstlicher Intelligenz (KI) eines ersten Benutzers wirkverbunden ist, um Operationen zu initiieren. Die Operationen enthalten ein elektronisches Wahrnehmen einer physischen Präsenz eines zweiten Benutzers. Die Operationen enthalten ein Übermitteln einer Sprachanforderung, auf einen Wissenskorpus zuzugreifen, der durch ein Sprachantwortsystem mit künstlicher Intelligenz (KI) des zweiten Benutzers elektronisch gespeichert wird, und ein Empfangen einer Sprachantwort von dem zweiten Benutzer. Die Operationen enthalten ein Instantiieren einer elektronischen Datenübertragungssitzung durch das Sprachantwortsystem des ersten Benutzers mit dem Kl-Sprachantwortsystem des zweiten Benutzers auf Grundlage der Sprachantwort, wobei die elektronische Datenübertragungssitzung über eine elektronische Datenübertragungsverbindung mit einer tragbaren Einheit des zweiten Benutzers initiiert wird. Die Operationen enthalten ein Abrufen ausgewählter Teile des Wissenskorpus aus dem KI-Sprachantwortsystem des zweiten Benutzers über ein Datenübertragungsnetzwerk, wobei die ausgewählten Teile des Sprachkorpus auf Grundlage der Sprachantwort des zweiten Benutzers auf die Anforderung ausgewählt werden. Die Operationen enthalten ein Initiieren einer Aktion durch eine oder mehrere loT-Einheiten als Reaktion auf eine Sprachaufforderung, die durch das KI-Sprachantwortsystem des ersten Benutzers auf Grundlage der ausgewählten Teile des Wissenskorpus interpretiert wird.
  • Diese Kurzdarstellung wird lediglich bereitgestellt, um bestimmte Konzepte einzuführen, und nicht, um etwaige Schlüssel- oder wesentliche Merkmale des beanspruchten Gegenstands kenntlich zu machen. Andere Merkmale der Erfindungsanordnungen werden aus den beigefügten Zeichnungen und aus der folgenden ausführlichen Beschreibung offensichtlich.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • Die Erfindungsanordnungen werden beispielhaft in den beigefügten Zeichnungen veranschaulicht. Die Zeichnungen sollten jedoch nicht so verstanden werden, als beschränkten sie die Erfindungsanordnungen ausschließlich auf die jeweils gezeigten Realisierungen. Verschiedene Aspekte und Vorzüge werden aus der Überprüfung der folgenden ausführlichen Beschreibung und unter Bezugnahme auf die Zeichnungen offensichtlich.
    • 1 stellt eine Beispiel-Datenverarbeitungsumgebung gemäß einer Ausführungsform dar, in der ein Kl-Sprachantwortsystem betrieben wird, wobei die intelligente virtuelle Assistenz mit einer Fähigkeit zum sicheren Zugreifen auf einen entfernt gespeicherten Wissenskorpus ausgestattet wird.
    • 2 ist ein Ablaufplan eines Verfahrens zum sicheren Zugreifen auf einen Wissenskorpus, der durch ein weiteres KI-Sprachantwortsystem erzeugt wird, mit einem Kl-Sprachantwortsystem gemäß einer Ausführungsform.
    • 3 stellt eine Cloud-Computing-Umgebung gemäß einer Ausführungsform dar.
    • 4 stellt Abstraktionsmodellschichten gemäß einer Ausführungsform dar.
    • 5 stellt einen Cloud-Computing-Knoten gemäß einer Ausführungsform dar.
    • 6 stellt eine tragbare Beispieleinheit gemäß einer Ausführungsform dar.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Obwohl die Offenbarung mit Ansprüchen endet, die neuartige Merkmale definieren, lassen sich die verschiedenen in dieser Offenbarung beschriebenen Merkmale besser verstehen, wenn die Beschreibung in Verbindung mit den Zeichnungen herangezogen wird. Der bzw. die Prozesse, die Maschine bzw. Maschinen, der bzw. die Herstellungsgegenstände sowie etwaige Abwandlungen hiervon, die in dieser Offenbarung beschrieben werden, werden zum Zwecke der Veranschaulichung bereitgestellt. Spezifische strukturelle und funktionale Einzelheiten, die in dieser Offenbarung beschrieben werden, sind nicht als Beschränkung, sondern lediglich als Grundlage für die Ansprüche und als repräsentative Grundlage zu betrachten, um einem Fachmann zu vermitteln, wie sich die beschriebenen Merkmale in nahezu jeder Struktur verwenden lassen, die auf geeignete Art und Weise im Detail ausgeführt wird. Des Weiteren sind die in dieser Offenbarung verwendeten Begriffe und Phrasen nicht als Beschränkung zu verstehen, sondern sollen eine verständliche Beschreibung der beschriebenen Merkmale bereitstellen.
  • Diese Offenbarung bezieht sich auf einen computergestützten Datenaustausch und im Besonderen auf einen sicheren Datenzugriff und -austausch zwischen Computersystemen, die mit künstlicher Intelligenz ausgestattet werden.
  • Automatisierte Systeme und Einheiten verschiedener Arten, die von individuellen Einheiten bis hin zu mehreren in ein loT integrierten Einheiten reichen, werden zunehmend mit KI ausgestattet. Intelligente virtuelle Assistenten und Chatbots realisieren zum Beispiel ein Verständnis natürlicher Sprache (Natural Language Understanding, NLU), um eine Mensch-Computer-Schnittstelle zu erzeugen, mit der eine linguistische Struktur und Bedeutung maschinell aus menschlichen Äußerungen ermittelt werden kann.
  • Kl-Sprachantwortsysteme stützen sich auf Wissenskorpora, um Sprach-, Text- und/oder Sprache-zu-Text-Aufforderungen und -Befehle zum Steuern von sprachfähigen Kl-Systemen und zum Reagieren auf Informationsabfragen zu erkennen und auszuführen. Wie hierin definiert, ist ein „Wissenskorpus“ eine Datenstruktur, die eine Sammlung von Wörtern, Phrasen und Sätzen aufweist, deren Syntax und Semantik Absichten und Vorlieben einer Person ausdrücken. Absichten und Vorlieben entsprechen jeweils verbalen (Sprach- oder Text-)Befehlen, um eine Einheit zum Durchführen einer Aktion und einer bevorzugten Art und Weise zu veranlassen, in der die Einheit die Aktion durchführen soll. Zum Beispiel weist eine verbale Äußerung wie „Bereite Holger eine Tasse Kaffee nach seinem Geschmack zu“ einen Befehl auf, wonach ein automatisierter Kaffeebereiter eine Tasse Kaffee zubereiten soll, sowie eine Vorliebe, wonach der Kaffee nach Holgers Geschmack zubereitet werden soll (z.B. stark, mit Sahne und ohne Zucker). Ein KI-Sprachantwortsystem, das unter Verwendung von maschinellem Lernen durch „Lernen“ aus einer früheren Verwendung einen Wissenskorpus erstellt hat, um den Sprecher zu erkennen und die Syntax und Semantik der Äußerung zu verstehen, kann auf den Befehl reagieren, indem es Parameter des automatisierten Kaffeebereiters entsprechend Holgers Vorlieben festlegt.
  • Ein „Sprachantwortsystem mit künstlicher Intelligenz“ (Artificial Intelligence Voice Response System, AIVRS) wie hierin definiert, ist ein beliebiges System, das eine NLU-Computer-Mensch-Schnittstelle bereitstellt, mit der eine linguistische Struktur und Bedeutung auf Grundlage einer menschlichen Äußerung maschinell ermittelt werden, um Daten auszuwählen, zu erzeugen und/oder zu modifizieren, die zum Steuern einer automatisierten Einheit oder eines automatisierten Systems verwendet werden, und das maschinelles Lernen verwendet, um aus einem Verarbeiten von Benutzeräußerungen, einem Überwachen von Instanzen von Benutzeraktivitäten und einem Erzeugen einer entsprechenden Nutzungshistorie oder eines entsprechenden Nutzungsmusters der Einheit oder des Systems Absichten und Vorlieben eines Einheiten- oder Systembenutzers zu lernen. Ein AIVRS kann in Software realisiert werden, die zum Beispiel in einem Server auf Cloud-Grundlage ausgeführt wird. Das auf einem Server auf Cloud-Grundlage ausgeführte AIVRS kann mit einem Benutzer interagieren, indem es über ein Datenübertragungsnetzwerk (z.B. das Internet) zum Beispiel eine Verbindung mit einem smarten Lautsprecher herstellt. Der smarte Lautsprecher kann einen Lautsprecher und einen virtuellen Assistenten oder Chatbot aufweisen, um eine verbale Interaktion mit einem Benutzer des AIVRS zu ermöglichen.
  • Verschiedene Benutzer haben unterschiedliche Sprachcharakteristika, verwenden unterschiedliche Äußerungen und haben unterschiedliche Aktivitätsmuster und somit unterschiedliche Wissenskorpora. Ein spezifischer Wissenskorpus entspricht üblicherweise einer spezifischen Person. Aus Datenschutz- und/oder Datensicherheitsgründen kann ein Zugriff auf den Wissenskorpus eines spezifischen Benutzers auf die spezifische Person beschränkt werden. Obwohl dies die Privatsphäre schützt und Sicherheit bereitstellt, kann es die Fähigkeit eines Benutzers beschränken, ein AIVRS einer weiteren Person zu verwenden, da ein AIVRS einer anderen Person üblicherweise nicht auf den Wissenskorpus des erstgenannten Benutzers zugreifen darf. Ohne einen solchen Zugriff kennt ein AIVRS eines weiteren Benutzers die Absichten und Vorlieben des Benutzers nicht und kann die Befehle oder Aufforderungen des Benutzers nicht erkennen. Als Beispiel soll ein Szenario dienen, in dem eine Person einen Freund in dessen Wohnung oder einen Kollegen im Büro besucht. Der Freund oder Kollege kann die Person einladen, ein AIVRS des Freundes oder Kollegen zu verwenden, um auf Grundlage der persönlichen Auswahl der Person von Dingen wie Umgebungstemperatur, Beleuchtung, Hintergrundmusik oder der Menge an Zucker in einem Kaffee, der durch eine automatisierte Kaffeemaschine zubereitet wird, zum Beispiel eine Smart-Home- oder Smart-Office-loT-Einheit zu steuern. Ohne einen Zugriff auf den Wissenskorpus der Person kann die Person das AIVRS des Freundes oder Kollegen nicht verwenden, um eine beliebige dieser automatisierten Funktionen zu steuern.
  • Ein Aspekt der hierin offenbarten Systeme, Verfahren und Computerprogrammprodukte ist ein Instantiieren einer Datenübertragungssitzung zwischen mehreren AIVRS, um ein dynamisches Bereitstellen ausgewählter Teile eines Wissenskorpus eines Benutzers an ein AIVRS eines weiteren Benutzers zu ermöglichen. Eine Bereitstellung ausgewählter Teile des Wissenskorpus ermöglicht dem AIVRS eines ersten Benutzers, Absichten und Vorlieben zu erfassen, die durch ein AIVRS eines zweiten Benutzers gelernt wurden, und auf Aufforderungen und Befehle des zweiten Benutzers zu reagieren, während zugleich die Sicherheit des Wissenskorpus des zweiten Benutzers gewahrt wird.
  • Bei einer Anordnung erkennt das AIVRS des ersten Benutzers, dass ein Befehl von dem zweiten Benutzer ausgeht oder im zugehörig ist und dass das AIVRS keinen Wissenskorpus in Bezug auf den zweiten Benutzer besitzt, um den Befehl umzusetzen. Das AIVRS des ersten Benutzers versucht entsprechend, zum Umsetzen des Befehls den Wissenskorpus (oder relevante Teile davon) zu erhalten, indem es eine in der Nähe befindliche tragbare Einheit einbezieht, die durch den zweiten Benutzer getragen oder am Körper getragen wird (z.B. Smartphone, Smartwatch). Wenn das AIVRS des ersten Benutzers ermittelt, dass eine Erlaubnis benötigt wird, und eine Erlaubnis von dem zweiten Benutzer erhält, instantiiert das AIVRS des ersten Benutzers eine Datenübertragungssitzung mit einem AIVRS des zweiten Benutzers, um einen Zugriff auf ausgewählte Teile eines Wissenskorpus zu erhalten, der durch das AIVRS des zweiten Benutzers erzeugt wird. Das AIVRS des ersten Benutzers kann die Datenübertragungssitzung über eine Verbindung über ein Datenübertragungsnetzwerk instantiieren.
  • Die hierin beschriebenen Anordnungen sind auf eine Computertechnologie gerichtet und stellen eine Verbesserung einer vorhandenen Computertechnologie bereit. Die Anordnungen verbessern eine Computertechnologie, indem sie ein AIVRS in die Lage versetzen, für ein breiteres Spektrum von Benutzern effizient zu funktionieren. Eine Computertechnologie wird weiter verbessert, indem der Datenübertragungsaufwand (z.B. der erforderliche Nachrichtenaustausch) verringert wird, um einen Erwerb von Wissenskorpora durch ein AIVRS zu ermöglichen und so für das breitere Spektrum von Benutzern zu funktionieren. Eine weitere Verbesserung ist der Austausch von relevanten Teilen von Wissenskorpora, während zugleich eine Privatsphäre des breiteren Spektrums von Benutzern und die Sicherheit der Wissenskorpora gewahrt wird, die dem breiteren Spektrum von Benutzern entsprechen.
  • Weitere Aspekte der innerhalb dieser Offenbarung beschriebenen Ausführungsformen werden ausführlicher unter Bezugnahme auf die folgenden Figuren beschrieben. Aus Gründen der Einfachheit und Klarheit der Darstellung wurden die in den Figuren gezeigten Elemente nicht notwendigerweise maßstabsgerecht gezeichnet. Zum Beispiel können aus Gründen der Klarheit die Abmessungen einiger Elemente relativ zu anderen Elementen übertrieben dargestellt sein. Wo dies als angemessen betrachtet wurde, können des Weiteren Bezugszeichen in den Figuren wiederholt werden, um analoge oder entsprechende Merkmale anzugeben.
  • 1 zeigt eine Beispiel-Datenverarbeitungsumgebung 100. Die Datenverarbeitungsumgebung 100 enthält veranschaulichend ein AIVRS 102 und ein AIVRS 104. Das AIVRS 102 und das AIVRS 104 können jeweils in getrennten Computersystemen und/oder getrennten Datenverarbeitungsknoten (nicht gezeigt) realisiert werden, z.B. einem Datenverarbeitungsknoten 500 (5). Entsprechend kann jeder Datenverarbeitungsknoten zum Beispiel einen Server auf Cloud-Grundlage aufweisen. Sowohl das AIVRS 102 als auch das AIVRS 104 werden veranschaulichend in Software realisiert, die in dem Arbeitsspeicher gespeichert werden kann und in einem oder mehreren Prozessoren eines oder mehrerer Computersysteme ausgeführt werden kann, z.B. eines Computersystems 512 des Datenverarbeitungsknotens 500. Das AIVRS 102 ist veranschaulichend mit einer Sprachschnittstelle 106 verbunden. Die Sprachschnittstelle 106 ist bei manchen Ausführungsformen ein smarter Lautsprecher, der einen Lautsprecher und einen integrierten virtuellen Assistenten zum Verarbeiten von Mensch-Computer-Interaktionen und zum Steuern von (nicht explizit gezeigten) loT-Einheiten enthält, die über eine drahtgebundene oder drahtlose Verbindung (z.B. WLAN, Bluetooth) im Datenaustausch mit der Sprachschnittstelle 106 verbunden werden. Eine Steuerung von loT-Einheiten wird durch verschiedene Sprachaufforderungen und -befehle umgesetzt, die durch die Sprachschnittstelle 106 erfasst und durch das AIVRS 102 auf Grundlage eines Wissenskorpus 108 erkannt werden, der durch das AIVRS 102 erzeugt wird, um dem Benutzer zu entsprechen. Der Wissenskorpus 108 wird veranschaulichend in einem Arbeitsspeicher eines Computersystems gespeichert, der mit dem Computersystem, in dem das AIVRS 102 ausgeführt wird, identisch oder mit diesem wirkverbunden ist.
  • Das AIVRS 102 kann sich in einem Computerknoten (z.B. einem Server auf Cloud-Grundlage) entfernt von der Sprachschnittstelle 106 und von loT-Einheiten befinden, die mit der Sprachschnittstelle 106 und über die Sprachschnittstelle 106 mit der AIVRS 102 wirkverbunden sind. Bei anderen Ausführungsformen können das AIVRS 102, die Sprachschnittstelle 106 und der Wissenskorpus 108 in einer einzigen Einheit integriert werden, die ausreichend Datenverarbeitungsressourcen in Bezug auf Verarbeitungsfähigkeit, Arbeitsspeicher und dergleichen hat, um sie jeweils zu unterstützen. Die Sprachschnittstelle 106 und die verbundenen loT-Einheiten können sich zum Beispiel in einem Smart Home oder einem Smart Office des Benutzers befinden, der dem Wissenskorpus 108 entspricht. Bei bestimmten Ausführungsformen, in denen sich das AIVRS 102 und die Sprachschnittstelle 106 entfernt voneinander befinden, kann das AIVRS 102 über ein Datenübertragungsnetzwerk 110 mit der Sprachschnittstelle 106 wirkverbunden sein. Das Datenübertragungsnetzwerk 110 kann das Internet sein und ist dies üblicherweise. Das Datenübertragungsnetzwerk 110 kann ein Weitverkehrsnetzwerk (Wide Area Network, WAN), lokales Netzwerk (Local Area Network, LAN) oder eine Kombination aus diesen und/oder anderen Arten von Netzwerken sein oder diese enthalten und kann drahtgebundene, drahtlose, Lichtwellenleiter- und/oder andere Verbindungen enthalten.
  • Das AIVRS 102 stellt ein Verständnis natürlicher Sprache (NLU) bereit, mit dem eine linguistische Struktur und Bedeutung maschinell aus menschlichen Äußerungen ermittelt werden kann, die durch die Sprachschnittstelle 106 empfangen werden. Durch die Sprachschnittstelle 106 empfangene Sprachbefehle und -aufforderungen können verwendet werden, um elektronische, in einem Arbeitsspeicher gespeicherte Daten auszuwählen, zu erzeugen und zu modifizieren, um verschiedene automatisierte Systeme und loT-Einheiten zu steuern (z.B. Geräte, Klimaanlage, Beleuchtungssystem, Unterhaltungssystem, Energieüberwachungseinheiten). Die Sprachschnittstelle 106 kann als Reaktion auf eine Spracheingabe eine Sprachausgabe bereitstellen, wobei die Sprachausgabe auch auf Grundlage der linguistischen Struktur und Bedeutung der Spracheingabe erzeugt wird, die durch die NLU ermittelt wird, die durch das AIVRS 102 bereitgestellt wird.
  • Das AIVRS 102 erstellt unter Verwendung von maschinellem Lernen iterativ den einem Benutzer entsprechenden Wissenskorpus 108 auf Grundlage der Nutzungshistorie oder des Nutzungsmusters des Benutzers in Bezug auf verschiedene automatisierte Systeme oder loT-Einheiten. Das AIVRS 102 speichert den Wissenskorpus als Daten, die in einem elektronischen Arbeitsspeicher gespeichert werden. Die in einem elektronischen Arbeitsspeicher gespeicherten und dem Benutzer entsprechenden Daten werden durch ein Konto und/oder andere Berechtigungsnachweise identifiziert, die dem Benutzer zugehörig sind. Verschiedene Wissenskorpora können für unterschiedliche Benutzer auf Grundlage der Nutzungsmuster des Benutzers in Bezug auf automatisierte Systeme und loT-Einheiten erzeugt werden, wobei die Wissenskorpora als Daten in dem elektronischen Arbeitsspeicher eines Servers auf Cloud-Grundlage oder eines anderweitigen Servers gespeichert werden. Die eindeutige Identität eines Benutzers wird durch ein AIVRS unter Verwendung einer Erkennung auf Sprachgrundlage und einer Berechtigungsprüfung ermittelt. Gleichzeitig mit oder vor einer Erstellung des Wissenskorpus 108 lernt das AIVRS 102 unter Verwendung von maschinellem Lernen, auf Grundlage von eindeutigen Sprachcharakteristika (z.B. akustische Signalmuster) des Benutzers den Benutzer zu erkennen, dem der Wissenskorps 108 entspricht. Als Reaktion auf einen Befehl oder eine Aufforderung in Form einer menschlichen Äußerung identifiziert das AIVRS 102 (wie auch andere Kl-Sprachantwortsysteme) den Benutzer, der den Befehl oder die Aufforderung geäußert hat.
  • Das AIVRS 102 enthält ein Wissenskorpus-Zugriffsmodul 112 (Knowledge Corpus Accessor Module, KCAM). Das KCAM 112 wird veranschaulichend in Software realisiert, die in einem oder mehreren Prozessoren des Computersystems des Datenverarbeitungsknotens ausgeführt wird, in dem das AIVRS 102 realisiert wird. Bei anderen Ausführungsformen kann das KCAM 112 in einem Computersystem realisiert werden, das entfernt von dem AIVRS 102 angeordnet, jedoch mit diesem wirkverbunden ist. Bei anderen Ausführungsformen kann das KCAM 112 in einer dedizierten Schaltung oder einer Kombination aus Software und Schaltung realisiert werden.
  • In Verbindung mit anderen Merkmalen des AIVRS 102 ermöglicht das KCAM 112 einem Benutzer, Sprachinteraktionen mit dem AIVRS 102 durchzuführen, obwohl das AIVRS keinen dem Benutzer entsprechenden Wissenskorpus erstellt hat. Obwohl das AIVRS 102 keinen dem Benutzer entsprechenden Wissenskorpus hat, der das AIVRS 102 in die Lage versetzen würde, die Sprachbefehle des Benutzers zu erkennen und umzusetzen, gibt es einen Wissenskorpus 114, der dem Benutzer entspricht, der jedoch durch das AIVRS 104 erstellt und betrieben wird, das von dem AIVRS 102 getrennt ist. Das AIVRS 104 kann in einem anderen Computersystem eines anderen Datenverarbeitungsknotens (z.B. eines Servers auf Cloud-Grundlage) entfernt von dem AIVRS 102 betrieben werden, wenn es jedoch in demselben Computersystem (z.B. einem Server auf Cloud-Grundlage) betrieben wird, ist das AIVRS 104 von dem AIVRS 102 abgegrenzt. Das in Verbindung mit dem AIVRS 102 betriebene KCAM 112 ermöglicht dem Benutzer trotzdem, Sprachinteraktionen mit dem AIVRS 102 durchzuführen, indem auf ausgewählte Teile des Wissenskorpus 114 durch das AIVRS 104 zugegriffen wird und die ausgewählten Teile dem AIVRS 102 bereitgestellt werden, während zugleich die Sicherheit des Wissenskorpus 114 gewahrt wird.
  • Das KCAM 112 erkennt die physische Präsenz des Benutzers, für den das AIVRS 102 kein gespeichertes Wissenskorpus hat. Die physische Präsenz des Benutzers kann gemäß einer oder mehreren der weiter unten ausführlich beschriebenen Verfahrensweisen erkannt werden. Das KCAM 112 reagiert auf ein Erkennen der physischen Präsenz des Benutzers, indem das AIVRS 102 veranlasst wird, eine Sprachanforderung zu erzeugen, um auf einen getrennt gespeicherten Wissenskorpus zuzugreifen, der dem Benutzer entspricht. Das AIVRS 102 übermittelt die Sprachanforderung über die Sprachschnittstelle 106 an den Benutzer. Wenn der Benutzer über eine Sprachaufforderung, die durch das AIVRS 102 über die Sprachschnittstelle 106 empfangen wird, mit einer Erlaubnis zustimmend antwortet, veranlasst das KCAM 112 das AIVRS 102, auf den geeigneten Wissenskorpus zuzugreifen, indem es eine elektronische Datenübertragungssitzung mit einem weiteren AIVRS instantiiert. Zum Beispiel instantiiert das AIVRS 102 auf Weisung des KCAM 112 eine elektronische Datenübertragungssitzung mit dem AIVRS 104, das den Wissenskorpus 114 enthält.
  • Das AIVRS 102 kann die elektronische Datenübertragungssitzung über eine elektronische Datenübertragungsverbindung mit einer tragbaren Einheit 116 des Benutzers initiieren, für den das AIVRS 102 keinen gespeicherten Wissenskorpus hat. Die tragbare Einheit 116 kann jede Einheit sein, die durch den Benutzer getragen (z.B. ein Smartphone) oder am Körper getragen werden kann (z.B. eine Smartwatch). Die tragbare Einheit 116 kann eine oder mehrere der Komponenten der tragbaren Beispieleinheit 600 (6) enthalten. Die elektronische Datenübertragungsverbindung kann eine drahtlose Verbindung 118 zwischen der Sprachschnittstelle 106 und der tragbaren Einheit 116 des Benutzers aufweisen, über die eine Berechtigung, die zur Übermittlung an das AIVRS 104 durch den zweiten Benutzer in die tragbare Einheit gesprochen wird, drahtlos an die tragbare Einheit 116 übertragen werden kann. Die elektronische Datenübertragungsverbindung muss nicht in erster Linie eine Peer-to-Peer-Verbindung sein. Die elektronische Datenübertragungsverbindung kann eine durch das AIVRS 104 erzeugte und über das Datenübertragungsnetzwerk 110 (z.B. das Internet) an das AIVRS 102 übertragene Berechtigung aufweisen, zum Beispiel als Reaktion auf eine Berechtigung, die durch den zweiten Benutzer in die tragbare Einheit 116 gesprochen wird. Die Berechtigung stellt dem AIVRS 102 Informationen (z.B. eine IP-Adresse) zum Instantiieren der elektronischen Datenübertragungssitzung bereit.
  • Auf Grundlage einer Benutzersprachantwort, die durch die Sprachschnittstelle 106 empfangen wird und eine Erlaubnis zum Zugreifen auf den Wissenskorpus 114 erteilt, ruft das AIVRS 102 über das Datenübertragungsnetzwerk 110 ausgewählte Teile des Wissenskorpus 114 aus dem AIVRS 104 ab. Da er durch das AIVRS 104 erstellt wurde, entspricht der Wissenskorpus 114 dem Benutzer, und die durch das AIVRS 104 empfangenen ausgewählten Teile können Teile sein, die auf Grundlage der Sprachantwort des Benutzers auf die Anforderung ausgewählt werden, die das AIVRS 102 auf Veranlassung des KCAM 112 erzeugt und über die Sprachschnittstelle 106 übermittelt.
  • Indem ausgewählten Teilen des Wissenskorpus 114 eine Erlaubnis erteilt wird, kann der Benutzer automatisierten Systemen und loT-Einheiten, die durch das AIVRS 102 gesteuert werden, unter Verwendung von Äußerungen Befehle erteilen, die auf Grundlage der ausgewählten Teile des von dem AIVRS 104 erlangten Wissenskorpus 114 durch das AIVRS 102 erkannt werden.
  • In einem Szenario mit zwei Personen in derselben Umgebung (z.B. einem Smart Home oder Smart Office), die loT-Einheiten aufweist, die durch Sprachbefehle gesteuert werden können, die durch das AIVRS 102 erkannt werden, kann der Wissenskorpus 108 zum Beispiel maschinell gelernt haben, Befehle zu erkennen, die durch nur einen der Benutzer gesprochen werden. Das AIVRS 102 kann einem ersten Benutzer entsprechen und kann, da es den Wissenskorpus 108 durch maschinelles Lernen erstellt hat, um die Sprache und Aufforderungen des ersten Benutzers zu erkennen, die Sprache und Aufforderungen des zweiten Benutzers womöglich nicht erkennen. Der erste Benutzer kann zum Beispiel ein regelmäßiger (und berechtigter) Benutzer wie z.B. der Besitzer (oder ein Familienmitglied) des Smart Homes oder ein Nutzer eines Smart Office sein, wobei das AIVRS 102 IoT-Einheiten steuert, indem es Sprachbefehle von den elektronisch gespeicherten Daten des Wissenskorpus 108 erkennt.
  • Der zweite Benutzer (z.B. Holger) kann ein Gast oder Kollege des ersten Benutzers (z.B. Stefan) sein, der die Umgebung (z.B. ein Smart Home oder Smart Office) besucht, in der loT-Einheiten (z.B. ein automatisierter Kaffeebereiter) durch das AIVRS 102 sprachgesteuert werden. Wenn der erste Benutzer (Stefan) das AIVRS 102 mit einer Sprachaufforderung weckt und den Befehl „Bereite Holger eine Tasse Kaffee nach seinem Geschmack zu“ äußert, kann das AIVRS 102 dem Befehl nur dann nachkommen, wenn das AIVRS 102 Zugriff auf einen Wissenskorpus hat, der die Kaffeevorlieben des zweiten Benutzers (Holger) enthält. Wenn das AIVRS 102 dem Befehl nicht nachkommen kann, kann das KCAM 112 das AIVRS 102 anweisen, eine Sprachausgabe zu erzeugen, die über die Sprachschnittstelle 106 übermittelt wird und sagt „Es tut mir leid, aber ich kenne Holgers Kaffeevorlieben nicht“, und den Prozess zum Zugreifen auf einen geeigneten Wissenskorpus initiieren, um effektiv auf den Befehl antworten zu können.
  • Das KCAM 112 kann das AIVRS 102 wirksam anweisen, die Präsenz eines zweiten Benutzers wahrzunehmen, und das KCAM 112 kann ermitteln, ob ein dem zweiten Benutzer entsprechender Wissenskorpus als Daten in einem elektronischen Arbeitsspeicher elektronisch gespeichert wird, der für das AIVRS 102 zugänglich ist. Wenn dies der Fall ist, kann das AIVRS 102 Befehlen auf Grundlage der elektronisch gespeicherten Daten, die den Wissenskorpus aufweisen, der dem zweiten Benutzer entspricht, entsprechend den Absichten und Vorlieben des zweiten Benutzers nachkommen. Andernfalls veranlasst das KCAM 112 das AIVRS 102, eine Anforderung zu erzeugen, die einen Zugriff auf einen Wissenskorpus anfordert, der durch ein anderes AIVRS erzeugt und gespeichert wird und dem zweiten Benutzer entspricht.
  • Mit einem Zugriff auf ausgewählte Teile des Wissenskorpus 114 auf Grundlage des Kontextes der Erlaubnis, die durch die Sprachantwort des zweiten Benutzers erteilt wird, greift das AIVRS 102 bei bestimmten Ausführungsformen auf Daten (z.B. Absichten und Vorlieben) zu, um einen Ontologie-Baumgraphen zum Ausführen einer bestimmten Operation (z.B. einer automatisierten Kaffeebereitung) zu erzeugen. Der Ontologie-Baumgraph oder anderweite Wissensgraph kann durch das AIVRS 102 wie durch das KCAM 112 angewiesen erzeugt werden, indem zunächst Kontextdaten für eine Ressourcenberechtigungsprüfung erhalten werden und indem das AIVRS 104 zu einem Zugriff aufgefordert wird. Das AIVRS 102 kann die ausgewählten Teile des Wissenskorpus 114 aus dem AIVRS 104 abrufen und die ausgewählten Teile (mindestens vorübergehend) elektronisch speichern. Das AIVRS 102 kann auf Grundlage der Teile des Wissenskorpus 114, auf die zugegriffen wird, ein Nutzungsmuster des zweiten Benutzers erzeugen. Bei bestimmten Ausführungsformen realisiert das AIVRS 102 ein neuronales Deep-Learning-Netzwerk zum Erkennen von Nutzungsmustern sowie Absichten und Vorlieben. Zum Beispiel kann das AIVRS 102 ein bidirektionales LSTM realisieren (eine Kombination aus einem vorwärts und einem rückwärts rekurrenten neuronalen Netzwerk, das für ein statistisches Lernen von Abhängigkeiten zwischen einzelnen Schritten in einer Zeitreihe oder Datenabfolge (z.B. Wörtern in einem Satz) nützlich ist). Das bidirektionale LSTM kann mit einem Reasoning-Sprung verwendet werden, um die Musterhistorie zu enthalten und Kontextdaten für den zweiten Benutzer zu ermitteln.
  • Wenn der zweite Benutzer eine Erlaubnis zum Zugreifen auf den getrennt gespeicherten Wissenskorpus 114 erteilt, kann er einen Befehl mit einer Zugriffserlaubnis äußern. Das AIVRS 104, das den Wissenskorpus 114 erzeugt hat, identifiziert den zweiten Benutzer auf Grundlage von Spracherkennung und analysiert den Sprachbefehl des zweiten Benutzers. Auf Grundlage des Sprachbefehls identifiziert das dem Wissenskorpus 114 zugehörige AIVRS 104 die ausgewählten Teile, für die ein Zugriff erlaubt wird, indem eine Verarbeitung natürlicher Sprache durchgeführt wird. Nachdem das AIVRS 102 einen Zugriff auf die ausgewählten Teile erlangt hat, kann es eine Musterhistorie sowie Absichten und Vorlieben und dergleichen erstellen, die in den ausgewählten Teilen enthalten sind, wodurch das AIVRS 102 in der Lage ist, auf einen oder mehrere Sprachbefehle des zweiten Benutzers (z.B. „Bereite mir einen Kaffee nach meinem Geschmack zu“) und/oder des ersten Benutzers in Bezug auf den zweiten Benutzer zu antworten (z.B. „Bereite Holger einen Kaffee nach seinem Geschmack zu“).
  • Bei bestimmten Ausführungsformen kann das KCAM 112 eine physische Präsenz des zweiten Benutzers auf verschiedene Arten erkennen. Wie oben beschrieben, kann zum Beispiel ein erster Benutzer, für den das AIVRS 102 bereits einen Wissenskorpus erzeugt hat, einen Befehl äußern, der sich auf einen zweiten Benutzer bezieht, für den das AIVRS 102 keinen Wissenskorpus erzeugt hat. Unter Verwendung einer Verarbeitung natürlicher Sprache kann das KCAM 112 ermitteln, dass die Bezugnahme einen Namen (z.B. „Holger“) betrifft, der keinem aktuell gespeicherten Wissenskorpus zugehörig ist, und kann den oben bereits beschriebenen Prozess zum Zugreifen auf den Wissenskorpus initiieren.
  • Bei anderen Ausführungsformen kann das KCAM 112 auf Grundlage der Spracherkennung die Stimme des ersten Benutzers, für den das AIVRS 102 bereits einen Wissenskorpus erzeugt hat, und die Stimme einer Person, des zweiten Benutzers, unterscheiden, für die dem AIVRS 102 kein Wissenskorpus zur Verfügung steht. Bei anderen Ausführungsformen kann das AIVRS 102 mit einer oder mehreren loT-Kameras wirkverbunden sein. Auf Grundlage einer Gesichtserkennung, die auf Gesichtsbilder angewendet wird, die durch die eine oder die mehreren loT-Kameras erfasst werden, kann das KCAM 112 zwischen einem ersten Benutzer, dessen Gesichtsbild jemandem entspricht, für den das AIVRS 102 bereits einen Wissenskorpus erzeugt hat, und einem zweiten Benutzer unterscheiden, dessen Gesichtsbild von jemandem ist, mit dem das AIVRS 102 zuvor noch nicht interagiert hat.
  • In jedem der verschiedenen Szenarien kann das KCAM 112 den bereits beschriebenen Prozess zum Zugreifen auf den Wissenskorpus als Reaktion darauf initiieren, dass die Präsenz eines Benutzers wahrgenommen wird, für den das AIVRS 102 keinen Zugriff auf einen vorhandenen Wissenskorpus hat. Bei einer Ausführungsform, bei der eine Präsenz auf Grundlage einer Gesichtserkennung wahrgenommen wird, kann das KCAM 112 zum Beispiel konfiguriert werden, um unter Verwendung eines Maschine-zu-Maschine-Protokolls über eine Anwendungsprogrammierschnittstelle zur Übertragung einer Repräsentation des Ressourcenstatus (Representational State Transfer Application Program Interface, REST API) mit einer oder mehreren loT-Kameras zu interagieren, um unter Verwendung eines schnellen neuronalen Faltungsnetzwerks (fast Convolutional Neural Network, fast-CNN) visuelle Kontextdaten zu ermitteln. Das KCAM 112 weist eine Erzeugung eines Wissensgraphen durch das AIVRS 102 an, die anfänglich darauf beruht, dass Kontextdaten über das fast-CNN für eine Ressourcenberechtigungsprüfung erhalten werden und dass eine Aufforderung erzeugt wird, um ausgewählte Teile eines getrennt gespeicherten Wissenskorpus (z.B. des Wissenskorpus 114) abzurufen und ausgewählte Absichten und Vorlieben eines entsprechenden Benutzers (mindestens vorübergehend) zu speichern. Das KCAM 112 kann das AIVRS 102 anweisen, auf Grundlage einer iterativen Anwendung eines bidirektionalen LSTM-Modells, das mit einem Reasoning-Sprung verwendet wird, um die Musterhistorie des entsprechenden Benutzers zu enthalten, eine Musterhistorie sowie darauf beruhende Absichten und Vorlieben zu erzeugen, um unter Verwendung der ausgewählten Teile auf Sprachbefehle zu reagieren.
  • Sobald dem AIVRS 102 eine Erlaubnis zum Zugreifen auf einen entfernt angeordneten Wissenskorpus erteilt wurde, kann optional der die Erlaubnis erteilende Benutzer zusätzlich mit einem Sprachbefehl die Berechtigung erteilen, dass das AIVRS 102 die ausgewählten Teile zur Verwendung bei einer nachfolgenden Sitzung (z.B. auf einem Server auf Cloud-Grundlage) speichert. Der Benutzer, der durch den Sprachbefehl die Erlaubnis erteilt, kann konkret angeben, welche Teile für wie lange gespeichert werden können. Zum Beispiel kann der Benutzer angeben, dass die Kaffeebereitungsvorlieben des Benutzers für das AIVRS 102 dauerhaft zugänglich sein sollen, dass bestimmte andere Absichten und Vorlieben jedoch innerhalb einer bestimmten Zeitspanne (z.B. zwei Stunden) verworfen werden sollen. In einem Standardmodus verwirft das AIVRS 102 die abgerufenen ausgewählten Teile des Wissenskorpus, nachdem eine vorgegebene Zeitspanne (z.B. 24 Stunden) verstrichen ist, ohne dass von dem Benutzer, der den anfänglichen Zugriff erlaubt hat, eine Aufbewahrungsaufforderung (oder ein anderer Sprachbefehl) empfangen wird.
  • Bei bestimmten Ausführungsformen weist das KCAM 112 das AIVRS 102 nur an, eine Erzeugung und Übermittlung einer Anforderung für einen Zugriff auf einen Wissenskorpus zu initiieren, nachdem es zuerst ermittelt hat, dass ein Benutzer, dessen Präsenz wahrgenommen wird, keinem bereits gespeicherten Wissenskorpus zugehörig ist. Für einen Benutzer, der dem AIVRS 102 zuvor die Erlaubnis erteilt hat, ausgewählte Teile eines Wissenskorpus zu speichern, müssen somit keine neuen Datenübertragungssitzungen zwischen dem AIVRS 102 und einem weiteren AIVRS instantiiert werden, um auf einen entfernt gespeicherten Wissenskorpus zuzugreifen. Bei anderen Ausführungsformen muss ein Benutzer keine Erlaubnis für eine Speicherung von ausgewählten Teilen eines Wissenskorpus erteilen, sondern kann dem AIVRS 102 vielmehr gestatten, eine aktive Erlaubnis zum Instantiieren einer Datenübertragungssitzung und zum Erhalten eines Zugriffs auf den Wissenskorpus zu speichern, allerdings nur auf einer selektiven Grundlage. Jede Sitzung kann als Reaktion auf einen Sprachbefehl des Benutzers initiiert werden, für den das AIVRS 102 einen Zugriff auf einen entfernt angeordneten Wissenskorpus erlangen möchte. Der Sprachbefehl kann in jeder getrennten Sitzung eine Auswahl von verschiedenen Teilen des Wissenskorpus angeben.
  • Mit Blick auf einen zweiten Benutzer kann bei jedem der obigen Szenarien der zweite Benutzer, der dem AIVRS 102 einen Zugriff auf den Wissenskorpus 114 erlaubt hat, zum Beispiel zusätzlich angeben, dass das AIVRS 102 bei nachfolgenden Sitzungen erneut einen Zugriff auf den Wissenskorpus erhalten kann, jedoch nur als Reaktion auf neue Sprachaufforderungen und nur in Bezug auf ausgewählte Teile, die in jeder neuen Aufforderung angegeben werden. Entsprechend kann der zweite Benutzer in einer späteren Sitzung eine neue Aufforderung äußern, die dem AIVRS 102 einen Zugriff auf die Kaffeebereitungsvorliebe des zweiten Benutzers erlaubt, die das AIVRS 102 als Reaktion auf den Sprachbefehl beim Steuern eines automatisierten Kaffeebereiters verwenden kann. In einer noch späteren Sitzung kann der zweite Benutzer eine Erlaubnis äußern, wonach das AIVRS 102 erneut einen Zugriff auf den Wissenskorpus 114 erhält, jedoch nur in Bezug auf ausgewählte Teile, die sich auf die Musikvorlieben des zweiten Benutzers beziehen, um das AIVRS 102 in die Lage zu versetzen, als Reaktion auf einen neuen Sprachbefehl des zweiten Benutzers ein Unterhaltungssystem zu steuern. In keinem Fall hat das AIVRS 102 jedoch die Erlaubnis, die betreffenden Vorlieben (Kaffee- oder Musikvorlieben) für mehr als nur eine kurze Zeit zu speichern, um eine in Echtzeit oder nahezu in Echtzeit erfolgende Interaktion zu ermöglichen.
  • Bei manchen Ausführungsformen kann das KCAM 112 auch bestimmte Sicherheitsmerkmale für den ersten Benutzer enthalten, d.h. für den Benutzer, der regelmäßig (und berechtigterweise) mit dem AIVRS 102 interagiert und für den das AIVRS den Wissenskorpus 108 erzeugt hat. Bei einer Anordnung kann der erste Benutzer angeben, dass das AIVRS 102 nie auf bestimmte festgelegte Sprachbefehle des zweiten Benutzers reagieren soll, unabhängig davon, ob der zweite Benutzer die Erlaubnis erteilt, auf den eigenen Wissenskorpus des zweiten Benutzers zuzugreifen. Zum Beispiel kann das AIVRS 102 (z.B. über einen getrennten Sprachbefehl) davon abgehalten werden, ein Sicherheitssystem zu verändern oder zu deaktivieren, es sei denn als Reaktion auf einen Sprachbefehl des ersten Benutzers. Zusätzlich kann das KCAM 112 dem ersten Benutzer ermöglichen, einen Vertrauenskreis zu erzeugen. Der Vertrauenskreis gibt die Identitäten (z.B. auf Grundlage einer Sprach- und/oder Gesichtserkennung) und spezifischen Befehle an, auf die das AIVRS 102 reagieren kann, abhängig davon, wer den Befehl äußert. Der Vertrauenskreis kann optional eine abgestufte Struktur sein, wodurch verschiedenen Stufen von Benutzern gestattet ist, verschiedene Arten von Sprachbefehlen zu äußern. Zum Beispiel können befreundete Besucher, die einen Zugriff auf ihre eigenen Wissenskorpora bereitstellen, eine größere Befehlsbandbreite (z.B. erste Stufe) als bloße Bekannte (z.B. zweite Stufe) erhalten.
  • Bei manchen Ausführungsformen kann das KCAM 112 nach öffentlich zugänglichen Wissenskorpora oder Teilen davon suchen, bevor es die Präsenz eines Benutzers wahrnimmt, für den das AIVRS 102 keinen vorhandenen Wissenskorpus hat. Das KCAM 112 kann die Suche als Reaktion auf Daten initiieren, die auf eine künftige Präsenz der Person hinweisen, für die das AIVRS 102 keinen vorhandenen Wissenskorpus hat. Zum Beispiel kann das KCAM 112 konfiguriert werden, um in bestimmten Abständen (z.B. täglich) ein IoT-Kalendersystem zu durchsuchen. Durch ein Durchsuchen des IoT-Kalendersystems oder einer anderen Datenquelle, die dem ersten Benutzer zugehörig ist, kann das KCAM 112 Daten (z.B. Datum und Uhrzeit) dazu erhalten, wann ein zweiter Benutzer, für den das AIVRS 102 keinen vorhandenen Wissenskorpus hat, voraussichtlich innerhalb einer Betriebsnähe der loT-Einheiten des ersten Benutzers ist (z.B. innerhalb eines Smart Home oder Smart Office). Bei einer Suche nach öffentlich zugänglichen Absichten und Vorlieben des zweiten Benutzers kann das KCAM 112 zum Beispiel eine oder mehrere Datenbanken des ersten Benutzers (z.B. Computernotizen zu früheren Begegnungen mit dem zweiten Benutzer) oder öffentlich zugängliche Seiten (z.B. Seiten von sozialen Netzwerken, zugehörige Berufs- oder Unternehmens-Webseiten) durchsuchen, die dem Namen des zweiten Benutzers zugehörig sind.
  • Das Kalendersystem oder die andere Datenquelle, die dem ersten Benutzer zugehörig ist, kann auf die Art der künftigen Präsenz des zweiten Benutzer hinweisen. Zum Beispiel kann der Kalender angeben, dass der erste Benutzer dem zweiten Benutzer einen gesellschaftlichen oder geschäftlichen Besuch abstattet. Das KCAM 112 kann eine Suche nach öffentlich zugänglichen Wissenskorpora initiieren, um die Absichten und Vorlieben des zweiten Benutzers in Bezug auf Kaffee und/oder Umgebungstemperatur zu identifizieren, da das KCAM 112 berechtigterweise davon ausgeht, dass sie unter den Sprachbefehlen sind, die der zweite Benutzer zulässigerweise dem AIVRS 102 bereitstellen kann. Die Absichten und Vorlieben können durch das AIVRS 102 gespeichert werden, um auf Sprachbefehle des zweiten Benutzers zu reagieren, die eine Vorliebe für durch einen automatischen Kaffeebereiter zubereiteten Kaffee und/oder eine Temperatureinstellung einer zentralen Klimaanlage ausdrücken, wenn der erste Benutzer als Gastgeber den zweiten Benutzer einlädt, Sprachbefehle in Bezug auf Kaffee oder Temperatur zu äußern.
  • Wenn die Informationen nicht aus öffentlich verfügbaren Wissenskorpora erhalten werden, kann das KCAM 112 optional das AIVRS 102 auffordern, eine Text- oder anderweitige elektronische Nachricht wie z.B. eine eMail zu erzeugen und (z.B. über ein Mobiltelefon oder das Datenübertragungsnetzwerk 116) an den zweiten Benutzer zu übermitteln, die einen Vorabzugriff auf einen Wissenskorpus eines AIVRS (z.B. des AIVRS 104) des zweiten Benutzers anfordert. Ein Vorabzugriff ermöglicht dem AIVRS 102, Absichten und Vorlieben des zweiten Benutzers zur Verwendung während einer anstehenden Interaktion zwischen dem ersten und zweiten Benutzer in der Betriebsnähe der Sprachschnittstelle 106 zu speichern.
  • 2 ist ein Ablaufplan eines Verfahrens 200 zum sicheren Zugreifen auf einen Wissenskorpus, der durch ein weiteres AIVRS erzeugt wird, gemäß einer Ausführungsform. Das Verfahren 200 kann durch ein System durchgeführt werden, das ein KCAM aufweist, das mit einem AIVRS eines ersten Benutzers wirkverbunden ist oder in dieses integriert wird, wie unter Bezugnahme auf 1 beschrieben wird. In einem Block 202 nimmt das System mit dem AIVRS des ersten Benutzers eine physische Präsenz eines zweiten Benutzers wahr.
  • In einem Block 204 übermittelt das System eine durch das AIVRS des ersten Benutzers erzeugte Sprachanforderung, die einen Zugriff auf einen Wissenskorpus anfordert, der durch ein AIVRS des zweiten Benutzers elektronisch gespeichert wird. Das System kann eine Sprachantwort von dem zweiten Benutzer empfangen. Die Sprachantwort des zweiten Benutzers kann einen Zugriff auf den Wissenskorpus erteilen, der durch das AIVRS des zweiten Benutzers elektronisch gespeichert wird.
  • In einem Block 206 instantiiert das System mit dem AIVRS des ersten Benutzers auf Grundlage der Sprachantwort eine elektronische Datenübertragungssitzung mit dem AIVRS des zweiten Benutzers. Die elektronische Datenübertragungssitzung kann durch das AIVRS des ersten Benutzers über eine elektronische Datenübertragungsverbindung mit einer tragbaren Einheit des zweiten Benutzers initiiert werden. Die tragbare Einheit kann zum Beispiel ein Smartphone, eine Smartwatch oder eine andere derartige Einheit sein, die durch den zweiten Benutzer getragen oder am Körper getragen wird. Die elektronische Datenübertragungsverbindung zwischen dem AIVRS des ersten Benutzers und der tragbaren Einheit kann eine drahtlose Verbindung zwischen einer Sprachschnittstelle des AIVRS des ersten Benutzers und der tragbaren Einheit aufweisen. Eine Berechtigung, die durch den zweiten Benutzer in die tragbare Einheit gesprochen wird, um an das AIVRS des zweiten Benutzers übermittelt zu werden, kann drahtlos an die Sprachschnittstelle übertragen werden. Die elektronische Datenübertragungsverbindung kann eine Berechtigung aufweisen, die zum Beispiel über ein Datenübertragungsnetzwerk (z.B. das Internet) durch die tragbare Einheit an das AIVRS des zweiten Benutzers und das AIVRS des ersten Benutzers übermittelt wird. Die Berechtigung stellt dem AIVRS des ersten Benutzers die benötigten Netzwerkinformationen (z.B. eine IP-Adresse) zum Instantiieren der elektronischen Datenübertragungssitzung bereit.
  • In einem Block 208 ruft das System über ein Datenübertragungsnetzwerk ausgewählte Teile des Wissenskorpus durch das AIVRS des ersten Benutzers aus dem AIVRS des zweiten Benutzers ab. Die ausgewählten Teile des Wissenskorpus werden auf Grundlage der Sprachantwort des zweiten Benutzers auf die Sprachanforderung ausgewählt, die durch das AIVRS des ersten Benutzers übermittelt wird.
  • In einem Block 210 initiiert das System als Reaktion auf einen Sprachbefehl (oder eine andere Sprachaufforderung) eine oder mehrere Aktionen durch eine oder mehrere IoT-Einheiten. Der Sprachbefehl kann durch den zweiten Benutzer oder durch den ersten Benutzer unter Bezugnahme auf den zweiten Benutzer geäußert werden. Der Sprachbefehl wird auf Grundlage der ausgewählten Teile des Wissenskorpus durch das AIVRS des ersten Benutzers interpretiert.
  • Bei manchen Ausführungsformen übermittelt das System die Sprachanforderung als Reaktion auf ein Durchsuchen der in einem elektronischen Arbeitsspeicher gespeicherten Daten durch das AIVRS des ersten Benutzers und ein Ermitteln, dass die in einem elektronischen Arbeitsspeicher gespeicherten Daten weder eine elektronisch gespeicherte frühere Erlaubnis noch die ausgewählten Teile des Wissenskorpus enthalten. Das System ruft die ausgewählten Teile des Wissenskorpus über das Datenübertragungsnetzwerk als Reaktion auf ein Ermitteln, dass die in einem elektronischen Arbeitsspeicher gespeicherten Daten eine elektronisch gespeicherte frühere Erlaubnis enthalten, und ein Empfangen einer Antwort auf eine Anforderung für einen Zugriff auf den Wissenskorpus ab. Als Reaktion auf ein Ermitteln, dass die in einem elektronischen Arbeitsspeicher gespeicherten Daten bereits die ausgewählten Teile des Wissenskorpus enthalten, verzichtet das System auf ein Abrufen der ausgewählten Teile über das Datenübertragungsnetzwerk.
  • Bei manchen Ausführungsformen nimmt das System den zweiten Benutzer wahr, indem es eine Sprachaufforderung eines ersten Benutzers mit dem AIVRS des ersten Benutzers erkennt und mit dem AIVRS des ersten Benutzers eine Bezugnahme auf den zweiten Benutzer identifiziert, dessen Identität dem AIVRS des ersten Benutzers zuvor nicht bekannt ist. Zusätzlich oder alternativ hierzu nimmt das System bei bestimmten Ausführungsformen den zweiten Benutzer wahr, indem es eine visuelle Erkennung des zweiten Benutzers auf Grundlage von Bildern durchführt, die durch eine loT-Kamera erfasst werden, die mit dem AIVRS des ersten Benutzers wirkverbunden ist.
  • Bei manchen Ausführungsform kann das System die Informationen zu dem zweiten Benutzer unter Verwendung des AIVRS des ersten Benutzer erlangen, um Daten von einer Einheit des ersten Benutzers zu erfassen, die mit dem AIVRS des ersten Benutzers im Datenaustausch verbunden wird. Die Daten können Absichten und Vorlieben des zweiten Benutzers (z.B. Kaffeebereitungsvorlieben) entsprechen, die das AIVRS des ersten Benutzers verwenden kann, um auf Sprachbefehle des zweiten Benutzers zu reagieren. Zum Beispiel kann die Einheit des ersten Benutzers ein Computer sein, in dem ein eMail-Austausch zwischen dem ersten Benutzer und dem zweiten Benutzer gespeichert wird, in dem der zweite Benutzer beschreibt, wie der zweite Benutzer seinen Kaffee bevorzugt. Oder die Einheit des ersten Benutzers kann zum Beispiel ein Smartphone sein, in dem eine Textnachricht gespeichert wird, in der der zweite Benutzer seine bevorzugte Art von Musik beschreibt. Das AIVRS des ersten Benutzers kann die Daten verwenden, um seinen eigenen Wissenskorpus für den zweiten Benutzer zu erstellen, Daten, die durch das AIVRS des ersten Benutzers verwendet werden können, um auf einen Sprachbefehl zu reagieren, der einen automatisierten Kaffeebereiter dazu auffordert, einen Kaffee für den zweiten Benutzer zuzubereiten, oder einen Sprachbefehl von dem zweiten Benutzer, der ein Unterhaltungssystem dazu auffordert, Musik abzuspielen.
  • Das System kann die ausgewählten Teile des Wissenskorpus des zweiten Benutzers verwerfen, die durch das AIVRS des ersten Benutzers empfangen werden. Das System kann die ausgewählten Teile automatisch verwerfen, wenn eine vorgegebene Zeitspanne verstreicht, ohne dass das System eine Aufbewahrungsaufforderung von dem zweiten Benutzer empfängt. Wenn der zweite Benutzer möchte, dass das AIVRS des ersten Benutzers den ausgewählten Teil elektronisch speichert, kann der zweite Benutzer einen Befehl äußern, der die Dauer eines elektronischen Speicherns des ausgewählten Teils angibt.
  • Obwohl diese Offenbarung eine ausführliche Beschreibung von Cloud Computing enthält, wird ausdrücklich darauf hingewiesen, dass Realisierungen der hier dargelegten Lehre nicht auf eine Cloud-Computing-Umgebung beschränkt sind. Vielmehr können Ausführungsformen der vorliegenden Erfindung gemeinsam mit jeder beliebigen Art von jetzt bekannter oder später entwickelter Datenverarbeitungsumgebung umgesetzt werden.
  • Cloud Computing ist ein Dienstbereitstellungsmodell zum Ermöglichen eines problemlosen bedarfsgesteuerten Netzwerkzugriffs auf einen gemeinsam genutzten Pool von konfigurierbaren Datenverarbeitungsressourcen (z.B. Netzwerke, Netzwerkbandbreite, Server, Verarbeitung, Hauptspeicher, Speicher, Anwendungen, virtuelle Maschinen und Dienste), die mit minimalem Verwaltungsaufwand bzw. minimaler Interaktion mit einem Anbieter des Dienstes schnell bereitgestellt und freigegeben werden können. Dieses Cloud-Modell kann mindestens fünf Eigenschaften, mindestens drei Dienstmodelle und mindestens vier Einsatzmodelle enthalten.
  • Bei den Eigenschaften handelt es sich um die Folgenden:
    • On-Demand Self-Service: Ein Cloud-Nutzer kann einseitig automatisch nach Bedarf für Datenverarbeitungsfähigkeiten wie Server-Zeit und Netzwerkspeicher sorgen, ohne dass eine menschliche Interaktion mit dem Anbieter der Dienste erforderlich ist.
    • Broad Network Access: Es sind Fähigkeiten über ein Netzwerk verfügbar, auf die durch Standardmechanismen zugegriffen wird, die die Verwendung durch heterogene Thin- oder Thick-Client-Plattformen (z.B. Mobiltelefone, Laptops und PDAs) unterstützen.
    • Resource Pooling: Die Datenverarbeitungsressourcen des Anbieters werden zusammengeschlossen, um mehreren Nutzern unter Verwendung eines Multi-Tenant-Modells zu dienen, wobei verschiedene physische und virtuelle Ressourcen dynamisch nach Bedarf zugewiesen und neu zugewiesen werden. Es gibt eine gefühlte Standortunabhängigkeit, da der Nutzer allgemein keine Kontrolle bzw. Kenntnis über den genauen Standort der bereitgestellten Ressourcen hat, aber in der Lage sein kann, einen Standort auf einer höheren Abstraktionsebene festzulegen (z.B. Land, Staat oder Rechenzentrum).
    • Rapid Elasticity: Fähigkeiten können für eine schnelle horizontale Skalierung (Scale-out) schnell und elastisch bereitgestellt werden, in einigen Fällen auch automatisch, und für ein schnelles Scale-in schnell freigegeben werden. Für den Nutzer erscheinen die für das Bereitstellen verfügbaren Fähigkeiten häufig unbegrenzt und sie können jederzeit in jeder beliebigen Menge gekauft werden.
    • Measured Service: Cloud-Systeme steuern und optimieren die Verwendung von Ressourcen automatisch, indem sie eine Messfähigkeit auf einer gewissen Abstraktionsebene nutzen, die für die Art von Dienst geeignet ist (z.B. Speicher, Verarbeitung, Bandbreite sowie aktive Benutzerkonten). Der Ressourcen-Verbrauch kann überwacht, gesteuert und gemeldet werden wodurch sowohl für den Anbieter als auch für den Nutzer des verwendeten Dienstes Transparenz geschaffen wird.
  • Bei den Dienstmodellen handelt es sich um die Folgenden:
    • Software as a Service (SaaS): Die dem Nutzer bereitgestellte Fähigkeit besteht darin, die in einer Cloud-Infrastruktur laufenden Anwendungen des Anbieters zu verwenden. Die Anwendungen sind über eine Thin-Client-Schnittstelle wie einen Web-Browser (z.B. auf dem Web beruhende eMail) von verschiedenen Client-Einheiten her zugänglich. Der Nutzer verwaltet bzw. steuert die zugrunde liegende Cloud-Infrastruktur nicht, darunter das Netzwerk, Server, Betriebssysteme, Speicher bzw. sogar einzelne Anwendungsfähigkeiten, mit der möglichen Ausnahme von eingeschränkten nutzerspezifischen Anwendungskonfigurationseinstellungen.
    • Platform as a Service (PaaS): Die dem Nutzer bereitgestellte Fähigkeit besteht darin, durch einen Nutzer erstellte bzw. erhaltene Anwendungen, die unter Verwendung von durch den Anbieter unterstützten Programmiersprachen und Tools erstellt wurden, in der Cloud-Infrastruktur einzusetzen. Der Nutzer verwaltet bzw. steuert die zugrunde liegende Cloud-Infrastruktur nicht, darunter Netzwerke, Server, Betriebssysteme bzw. Speicher, hat aber die Kontrolle über die eingesetzten Anwendungen und möglicherweise über Konfigurationen für Application Hosting Environment.
    • Infrastructure as a Service (laaS): Die dem Nutzer bereitgestellte Fähigkeit besteht darin, Verarbeitung, Speicher, Netzwerke und andere grundlegende Datenverarbeitungsressourcen bereitzustellen, wobei der Nutzer in der Lage ist, beliebige Software einzusetzen und auszuführen, zu der Betriebssysteme und Anwendungen gehören können. Der Nutzer verwaltet bzw. steuert die zugrunde liegende Cloud-Infrastruktur nicht, hat aber die Kontrolle über Betriebssysteme, Speicher, eingesetzte Anwendungen und möglicherweise eine eingeschränkte Kontrolle über ausgewählte Netzwerkkomponenten (z.B. Host-Firewalls).
  • Bei den Einsatzmodellen handelt es sich um die Folgenden:
    • Private Cloud: Die Cloud-Infrastruktur wird einzig und allein für eine Organisation betrieben. Sie kann durch die Organisation oder einen Dritten verwaltet werden und kann sich in den eigenen Räumen oder in fremden Räumen befinden.
    • Community Cloud: Die Cloud-Infrastruktur wird von mehreren Organisationen gemeinsam genutzt und unterstützt eine spezielle Benutzergemeinschaft, die gemeinsame Angelegenheiten hat (z.B. Zielsetzung, Sicherheitsanforderungen, Richtlinien sowie Überlegungen bezüglich der Einhaltung von Vorschriften). Sie kann durch die Organisationen oder einen Dritten verwaltet werden und sich in den eigenen Räumen oder in fremden Räumen befinden.
    • Public Cloud: Die Cloud-Infrastruktur wird der allgemeinen Öffentlichkeit oder einer großen Industriegruppe zur Verfügung gestellt und gehört einer Cloud-Dienste verkaufenden Organisation.
    • Hybrid Cloud: Die Cloud-Infrastruktur ist eine Zusammensetzung aus zwei oder mehreren Clouds (privat, Nutzergemeinschaft oder öffentlich), die zwar einzelne Einheiten bleiben, aber durch eine standardisierte oder proprietäre Technologie miteinander verbunden sind, die Daten- und Anwendungsportierbarkeit ermöglicht (z.B. Cloud-Zielgruppenverteilung für den Lastenausgleich zwischen Clouds).
  • Eine Cloud-Computing-Umgebung ist dienstorientiert mit einem Fokus auf Statusunabhängigkeit, geringer Kopplung, Modularität und semantischer Interoperabilität. Im Mittelpunkt des Cloud Computing steht eine Infrastruktur, die ein Netzwerk aus zusammengeschalteten Knoten aufweist.
  • Unter Bezugnahme auf 3 wird eine veranschaulichende Cloud-Computing-Umgebung 300 dargestellt. Wie gezeigt, enthält die Cloud-Computing-Umgebung 300 einen oder mehrere Cloud-Computing-Knoten 310, mit denen von Cloud-Nutzern verwendete lokale Datenverarbeitungseinheiten wie ein elektronischer Assistent (PDA, Personal Digital Assistant) oder ein Mobiltelefon 340a, ein Desktop Computer 340b, ein Laptop Computer 340c und/oder ein Automobil-Computer-System 340n Daten austauschen können. Die Datenverarbeitungsknoten 310 können miteinander Daten austauschen. Sie können physisch oder virtuell in einem oder mehreren Netzwerken wie Private, Community, Public oder Hybrid Clouds zusammengefasst werden (nicht gezeigt), wie vorstehend beschrieben wurde, oder aber in einer Kombination daraus. Dies ermöglicht es der Cloud-Computing-Umgebung 300, Infrastruktur, Plattformen und/oder Software als Dienst anzubieten, für die ein Cloud-Nutzer keine Ressourcen auf einer lokalen Datenverarbeitungseinheit vorhalten muss. Es sei darauf hingewiesen, dass die Arten von in 3 gezeigten Datenverarbeitungseinheiten 340a bis 340n lediglich veranschaulichend sein sollen und dass die Datenverarbeitungsknoten 310 und die Cloud-Computing-Umgebung 300 über eine beliebige Art von Netzwerk und/oder über eine beliebige Art von über ein Netzwerk aufrufbarer Verbindung (z.B. unter Verwendung eines Web-Browsers) mit einer beliebigen Art von computergestützter Einheit Daten austauschen können.
  • Unter Bezugnahme auf 4 wird ein Satz von funktionalen Abstraktionsschichten gezeigt, die durch die Cloud-Computing-Umgebung 300 (3) bereitgestellt werden. Es sollte von vornherein klar sein, dass die in 4 gezeigten Komponenten, Schichten und Funktionen lediglich veranschaulichend sein sollen und Ausführungsformen der Erfindung nicht darauf beschränkt sind. Wie abgebildet ist, werden die folgenden Schichten und entsprechenden Funktionen bereitgestellt:
  • Eine Hardware- und Software-Schicht 460 enthält Hardware- und Software-Komponenten. Zu Beispielen für Hardware-Komponenten gehören Mainframe Computer 461; auf der RISC-Architektur (Reduced Instruction Set Computer) beruhende Server 462; Server 463; Blade-Server 464; Speichereinheiten 465; und Netzwerke sowie Netzwerkkomponenten 466. Bei manchen Ausführungsformen enthalten Software-Komponenten eine Netzwerk-Anwendungsserver-Software 467 und eine Datenbank-Software 468.
  • Eine Virtualisierungsschicht 470 stellt eine Abstraktionsschicht bereit, aus der die folgenden Beispiele für virtuelle Einheiten bereitgestellt werden können: virtuelle Server 471, virtueller Speicher 472, virtuelle Netzwerke 473, darunter virtuelle private Netzwerke, virtuelle Anwendungen und Betriebssysteme 474; und virtuelle Clients 475.
  • In einem Beispiel kann eine Verwaltungsschicht 480 die nachfolgend beschriebenen Funktionen bereitstellen. Eine Ressourcen-Bereitstellung 481 stellt die dynamische Beschaffung von Datenverarbeitungsressourcen sowie anderen Ressourcen bereit, die zum Durchführen von Aufgaben innerhalb der Cloud-Computing-Umgebung verwendet werden. Ein Messen und eine Preisfindung 482 stellen die Kostenverfolgung beim Verwenden von Ressourcen innerhalb der Cloud-Computing-Umgebung sowie die Abrechnung oder Rechnungsstellung für den Verbrauch dieser Ressourcen bereit. In einem Beispiel können diese Ressourcen Anwendungs-Software-Lizenzen aufweisen. Eine Sicherheit stellt die Identitätsüberprüfung für Cloud-Nutzer und Aufgaben sowie Schutz für Daten und andere Ressourcen bereit. Ein Benutzerportal 483 stellt Nutzern und Systemadministratoren einen Zugriff auf die Cloud-Computing-Umgebung bereit. Eine Verwaltung des Dienstumfangs 484 stellt die Zuordnung und Verwaltung von Cloud-Computing-Ressourcen bereit, sodass die benötigten Dienstziele erreicht werden. Ein Planen und Erfüllen von Vereinbarungen zum Dienstumfang (Service Level Agreement, SLA) 485 stellt die Vorab-Anordnung und die Beschaffung von Cloud-Computing-Ressourcen, für die eine zukünftige Anforderung vorausgesehen wird, gemäß einer SLA bereit.
  • Eine Arbeitslastenschicht 490 stellt Beispiele für die Funktionalität bereit, für die die Cloud-Computing-Umgebung verwendet werden kann. Beispiele für Auslastungen und Funktionen, die von dieser Schicht bereitgestellt werden können, lauten: Zuordnung und Navigation 491; Software-Entwicklung und Lebenszyklusverwaltung 492; Bereitstellung von virtuellen Schulungen 493; Datenanalyseverarbeitung 494; Transaktionsverarbeitung 495; und ein AIVRS 496, in das ein KCAM integriert ist oder mit dem das KCAM wirkverbunden ist.
  • 5 veranschaulicht eine schematische Darstellung eines Beispiels für einen Datenverarbeitungsknoten 500. Bei einer oder mehreren Ausführungsformen ist der Datenverarbeitungsknoten 500 ein Beispiel für einen geeigneten Cloud-Computing-Knoten. Der Datenverarbeitungsknoten 500 ist nicht als eine wie auch immer geartete Beschränkung von Verwendungsumfang oder Funktionalität von Ausführungsformen der hier beschriebenen Erfindung gedacht. Der Datenverarbeitungsknoten 500 ist in der Lage, jede beliebige Funktionalität durchzuführen, die in dieser Offenbarung beschrieben wird.
  • Der Datenverarbeitungsknoten 500 enthält das Computersystem 512, das mit zahlreichen anderen Universal- oder Spezial-Datenverarbeitungssystemumgebungen oder -konfigurationen betrieben werden kann. Ohne darauf beschränkt zu sein, enthalten Beispiele für bekannte Datenverarbeitungssysteme, -umgebungen und/oder -konfigurationen, die für eine Verwendung mit dem Computersystem 512 geeignet sein können, Personal-Computersysteme, Server-Computersysteme, Thin Clients, Thick Clients, Handheld- oder Laptop-Einheiten, Mehrprozessorsysteme, Systeme auf Grundlage von Mikroprozessoren, Set-Top-Boxen, programmierbare Unterhaltungselektronik, Netzwerk-PCs, Mini-Computersysteme, Mainframe-Computersysteme sowie verteilte Cloud-Computing-Umgebungen, die eines bzw. eine der obigen Systeme oder Einheiten enthalten, und dergleichen.
  • Das Computersystem 512 lässt sich im allgemeinen Zusammenhang von Anweisungen beschreiben, die durch ein Computersystem ausführbar sind, wie z.B. Programmmodule, die durch ein Computersystem ausgeführt werden. Allgemein können Programmmodule Routinen, Programme, Objekte, Komponenten, Logik, Datenstrukturen und dergleichen enthalten, die bestimmte Aufgaben durchführen oder bestimmte abstrakte Datentypen realisieren. Das Computersystem 512 kann in verteilten Cloud-Computing-Umgebungen eingesetzt werden, wo Aufgaben von entfernt angeordneten Verarbeitungseinheiten durchgeführt werden, die über ein Datenübertragungsnetzwerk miteinander verbunden werden. In einer verteilten Cloud-Computing-Umgebung können sich Programmmodule sowohl in lokalen als auch in entfernt angeordneten Computersystem-Speichermedien wie beispielsweise Arbeitsspeichereinheiten befinden.
  • Wie in 5 gezeigt, wird das Computersystem 512 in Gestalt einer Universal-Datenverarbeitungseinheit gezeigt. Die Komponenten des Computersystems 512 können einen oder mehrere Prozessoren 516, einen Arbeitsspeicher 528 und einen Bus 518 enthalten, der verschiedene Systemkomponenten wie z.B. den Arbeitsspeicher 528 mit dem Prozessor 516 verbindet, ohne jedoch darauf beschränkt zu sein. Wie hierin definiert, bedeutet „Prozessor“ mindestens eine Hardware-Schaltung, die konfiguriert wird, um Anweisungen auszuführen. Die Hardware-Schaltung kann eine integrierte Schaltung sein. Beispiele für einen Prozessor enthalten eine Zentraleinheit (Central Processing Unit, CPU), einen Array-Prozessor, einen Vektorprozessor, einen digitalen Signalprozessor (DSP), ein im Feld programmierbares Gatter-Array (Field-Programmable Gate Array, FPGA), ein programmierbares Logik-Array (Programmable Logic Array, PLA), eine anwendungsspezifische integrierte Schaltung (Application-Specific Integrated Circuit, ASIC), eine programmierbare Logikschaltung und einen Controller, ohne jedoch darauf beschränkt zu sein.
  • Das Ausführen von Anweisungen eines Computerprogramms durch einen Prozessor weist ein Ausführen oder Laufenlassen des Programms auf. Wie hierin definiert, weist „laufenlassen“ und „ausführen“ eine Abfolge von Aktionen oder Ereignissen auf, die durch den Prozessor gemäß einer oder mehreren maschinenlesbaren Anweisungen durchgeführt werden. Wie hierin definiert, beziehen sich „das Laufenlassen“ und „das Ausführen“ auf das aktive Durchführen von Aktionen oder Ereignissen durch den Prozessor. Die Begriffe „laufenlassen“ und „das Laufenlassen“, „ausführen“ und „das Ausführen“ werden hierin synonym verwendet.
  • Der Bus 518 steht für mindestens eine von beliebigen mehreren Arten von Busstrukturen, z.B. ein Arbeitsspeicherbus oder ein Arbeitsspeicher-Controller, ein Peripheriebus, ein Accelerated Graphics Port (AGP) und ein Prozessor- oder lokaler Bus, wobei eine beliebige aus einer Vielfalt von Busarchitekturen verwendet werden kann. Lediglich beispielhaft und nicht als Beschränkung zu verstehen, enthalten derartige Architekturen einen ISA-Bus (Industry Standard Architecture), einen MCA-Bus (Micro Channel Architecture), einen EISA-Bus (Enhanced ISA), den lokalen VESA-Bus (Video Electronics Standards Association), einen PCI-Bus (Peripheral Component Interconnect) und einen PCIe-Bus (PCI Express).
  • Das Computersystem 512 enthält üblicherweise eine Vielfalt von Medien, die durch ein Computersystem lesbar sind. Derartige Medien können beliebige verfügbare Medien sein, auf die das Computersystem 512 zugreifen kann, und können sowohl flüchtige als auch nicht flüchtige, entfernbare als auch nicht entfernbare Medien enthalten.
  • Der Arbeitsspeicher 528 kann ein durch ein Computersystem lesbares Medium in Form eines flüchtigen Arbeitsspeichers wie z.B. eines Direktzugriffsspeichers 530 (Random-Access Memory, RAM) und/oder eines Cache-Arbeitsspeichers 532 enthalten. Das Computersystem 512 kann des Weiteren andere entfernbare/nicht entfernbare, flüchtige/nicht flüchtige Computersystem-Speichermedien enthalten. Um ein Beispiel zu geben, kann das Speichersystem 534 zum Lesen von und Schreiben auf ein nicht entfernbares, nicht flüchtiges magnetisches Medium und/oder eine bzw. mehrere Halbleiterplatten bereitgestellt werden (nicht gezeigt und üblicherweise als eine „Festplatte“ bezeichnet). Obwohl hier nicht abgebildet, können ein Magnetplattenlaufwerk zum Lesen von einer und Schreiben auf eine entfernbare, nicht flüchtige Magnetplatte (z.B. eine „Diskette“) sowie ein optisches Plattenlaufwerk zum Lesen von einer oder Schreiben auf eine entfernbare, nicht flüchtige optische Platte, z.B. ein CD-ROM, ein DVD-ROM oder ein anderes optisches Medium bereitgestellt werden. In diesen Fällen kann jedes Laufwerk über eine oder mehrere Datenmedienschnittstellen mit dem Bus 518 verbunden werden. Wie weiter unten ausführlicher dargestellt und beschrieben wird, kann der Arbeitsspeicher 528 mindestens ein Programmprodukt mit einem Satz von (z.B. mindestens einem) Programmmodulen enthalten, die konfiguriert werden, um die Funktionen von Ausführungsformen der Erfindung durchzuführen.
  • Ein Programm/Dienstprogramm 540 mit einem Satz von (mindestens einem) Programmmodulen 542 kann beispielsweise und ohne als Beschränkung verstanden zu werden im Arbeitsspeicher 528 gespeichert werden, ebenso wie ein Betriebssystem, ein oder mehrere Anwendungsprogramme, andere Programmmodule und Programmdaten. Das Betriebssystem, das eine oder die mehreren Anwendungsprogramme, die anderen Programmmodule und die Programmdaten oder eine Kombination hiervon können jeweils eine Realisierung einer Netzwerkumgebung enthalten. Die Programmmodule 542 führen im Allgemeinen die Funktionen und/oder Verfahrensweisen von Ausführungsformen der hier beschriebenen Erfindung aus. Zum Beispiel können ein oder mehrere der Programmmodule AIVRS 596 oder Teile hiervon enthalten, in die ein KCAM integriert wird oder mit denen es wirkverbunden ist.
  • Das Programm/Dienstprogramm 540 ist durch den Prozessor 516 ausführbar. Das Programm/Dienstprogramm 540 und jegliche Datenelemente, die durch das Computersystem 512 verwendet, erzeugt und/oder verarbeitet werden, sind funktionale Datenstrukturen, die bei einer Verwendung durch das Computersystem 512 eine Funktionalität bereitstellen. Wie in dieser Offenbarung definiert, ist eine „Datenstruktur“ eine physische Realisierung einer Organisation von Daten eines Datenmodells innerhalb eines physischen Arbeitsspeichers. Als solches besteht eine Datenstruktur aus spezifischen elektronischen oder magnetischen strukturellen Elementen in einem Arbeitsspeicher. Eine Datenstruktur gibt eine physische Organisation für die in dem Arbeitsspeicher gespeicherten Daten vor, wie sie durch ein Anwendungsprogramm verwendet werden, das unter Verwendung eines Prozessors ausgeführt wird.
  • Das Computersystem 512 kann zudem Daten mit einer oder mehreren externen Einheiten 514 austauschen, z.B. mit einer Tastatur, einer Zeigeeinheit, einer Anzeige 524 usw.; mit einer oder mehreren Einheiten, die einem Benutzer ermöglichen, mit dem Computersystem 512 zu interagieren; und/oder mit beliebigen Einheiten (z.B. Netzwerkkarte, Modem usw.), die dem Computersystem 512 ermöglichen, mit einer oder mehreren anderen Datenverarbeitungseinheiten Daten auszutauschen. Eine derartige Datenübertragung kann über Eingabe/Ausgabe-Schnittstellen (E/A-Schnittstellen) 522 erfolgen. Das Computersystem 512 kann weiterhin über einen Netzwerkadapter 520 mit einem oder mehreren Netzwerken Daten austauschen, z.B. mit einem lokalen Netzwerk (LAN), einem Weitverkehrsnetzwerk (WAN) und/oder einem öffentlichen Netzwerk (z.B. dem Internet). Wie dargestellt, tauscht der Netzwerkadapter 520 über den Bus 518 Daten mit den anderen Komponenten des Computersystems 512 aus. Obwohl sie nicht gezeigt werden, sollte klar sein, dass auch andere Hardware- und/oder Software-Komponenten in Verbindung mit dem Computersystem 512 verwendet werden können. Beispiele hierfür sind, ohne darauf beschränkt zu sein, Mikrocode, Einheitentreiber, redundante Verarbeitungseinheiten, externe Plattenlaufwerksstapel, RAID-Systeme, Bandlaufwerke und Datenarchivierungsspeichersysteme usw.
  • Obwohl der Datenverarbeitungsknoten 500 verwendet wird, um ein Beispiel für einen Cloud-Computing-Knoten zu veranschaulichen, sollte klar sein, dass ein Computersystem unter Verwendung einer identischen oder ähnlichen Architektur, wie sie in Verbindung mit 5 beschrieben wird, in einer Nicht-Cloud-Computing-Realisierung verwendet werden kann, um die verschiedenen hierin beschriebenen Operationen durchzuführen. Die hierin beschriebenen Beispielausführungen sind somit nicht als Beschränkung auf eine Cloud-Computing-Umgebung gedacht. Der Datenverarbeitungsknoten 500 ist ein Beispiel für ein Datenverarbeitungssystem. Wie hierin definiert, bedeutet „Datenverarbeitungssystem“ ein oder mehrere Hardware-Systeme, die konfiguriert werden, um Daten zu verarbeiten, wobei jedes Hardware-System mindestens einen Prozessor, der programmiert wird, um Operationen zu initiieren, und einen Arbeitsspeicher enthält.
  • Der Datenverarbeitungsknoten 500 ist ein Beispiel für eine Computer-Hardware. Der Datenverarbeitungsknoten 500 kann weniger Komponenten als gezeigt oder zusätzliche, in 5 nicht gezeigte Komponenten enthalten, abhängig von der bestimmten Art von Einheit und/oder System, die bzw. das realisiert wird. Das bestimmte Betriebssystem und/oder die bestimmte eine bzw. die bestimmten mehreren Anwendungen, die enthalten sind, können je nach Art von Einheit und/oder System variieren, ebenso wie die Arten von enthaltenen E/A-Einheiten. Des Weiteren können eine oder mehrere der veranschaulichenden Komponenten in eine weitere Komponente integriert werden oder anderweitig einen Teil hiervon bilden. Ein Prozessor kann zum Beispiel mindestens eine bestimmte Art von Arbeitsspeicher enthalten.
  • Der Datenverarbeitungsknoten 500 ist ebenfalls ein Beispiel für einen Server. Wie hierin definiert, bedeutet „Server“ ein Datenverarbeitungssystem, das konfiguriert wird, um Dienste mit einem oder mehreren anderen Datenverarbeitungssystemen gemeinsam zu nutzen. Wie hierin definiert, bedeutet „Client-Einheit“ ein Datenverarbeitungssystem, das gemeinsam genutzte Dienste von einem Server anfordert, und mit dem ein Benutzer direkt interagiert. Beispiele für eine Client-Einheit enthalten eine Arbeitsstation, einen Desktop Computer, ein Computerterminal, einen mobilen Computer, einen Laptop Computer, einen Netbook Computer, einen Tablet Computer, ein Smartphone, einen elektronischen Assistenten, eine Smartwatch, smarte Brillen, eine Spieleeinheit, eine Set-Top-Box, einen smarten Fernseher und dergleichen, ohne jedoch darauf beschränkt zu sein. Bei einer oder mehreren Ausführungsformen können die hierin beschriebenen verschiedenen Benutzereinheiten Client-Einheiten sein. Netzwerkinfrastruktur wie Router, Firewalls, Switches, Zugangspunkte und dergleichen sind keine Client-Einheiten gemäß der hierin verwendeten Definition von „Client-Einheit“.
  • 6 veranschaulicht eine tragbare Beispieleinheit 600 gemäß einer oder mehreren in dieser Offenbarung beschriebenen Ausführungsformen. Die tragbare Einheit 600 kann einen Arbeitsspeicher 602, einen oder mehrere Prozessoren 604 (z.B. Bildprozessoren, Digitalsignalprozessoren, Datenprozessoren) und eine Schnittstellenschaltung 606 enthalten.
  • Gemäß einem Aspekt werden der Arbeitsspeicher 602, der bzw. die Prozessoren 604 und/oder die Schnittstellenschaltung 606 als getrennte Komponenten realisiert. Gemäß einem Aspekt werden der Arbeitsspeicher 602, der bzw. die Prozessoren 604 und/oder die Schnittstellenschaltung 606 in einer oder mehreren integrierten Schaltungen integriert. Die verschiedenen Komponenten der tragbaren Einheit 600 können zum Beispiel durch einen oder mehrere Datenübertragungsbusse oder eine oder mehrere Signalleitungen (z.B. Zwischenverbindungen und/oder Drähte) verbunden werden). Gemäß einem Aspekt kann der Arbeitsspeicher 602 über eine (nicht gezeigte) Arbeitsspeicherschnittstelle mit der Schnittstellenschaltung 606 verbunden werden.
  • Sensoren, Einheiten, Teilsysteme und/oder Eingabe/Ausgabe(E/A)-Einheiten können mit der Schnittstellenschaltung 606 verbunden werden, um die hierin beschriebenen Funktionen und/oder Operationen zu ermöglichen, z.B. die Erzeugung von Sensordaten. Die verschiedenen Sensoren, Einheiten, Teilsysteme und/oder E/A-Systeme können direkt oder über einen oder mehrere (nicht gezeigte) dazwischengeschaltete E/A-Controller mit der Schnittstellenschaltung 606 verbunden werden.
  • Zum Beispiel können ein Standortsensor 610, ein Lichtsensor 612 und ein Nähesensor 614 mit der Schnittstellenschaltung 606 verbunden werden, um Orientierungs-, Beleuchtungs- bzw. Nähefunktionen der tragbaren Einheit 600 zu ermöglichen. Der Standortsensor 610 (z.B. ein GPS-Empfänger und/oder -Prozessor) kann mit der Schnittstellenschaltung 606 verbunden werden, um Sensordaten für eine Geopositionierung bereitzustellen. Ein elektronisches Magnetometer 618 (z.B. ein IC-Chip) kann mit der Schnittstellenschaltung 606 verbunden werden, um Sensordaten bereitzustellen, die verwendet werden können, um zum Zwecke der Richtungsnavigation die Richtung des magnetischen Nordpols zu ermitteln. Ein Beschleunigungsmesser 620 kann mit der Schnittstellenschaltung 606 verbunden werden, um Sensordaten bereitzustellen, die verwendet werden können, um eine Änderung einer Bewegungsgeschwindigkeit und Bewegungsrichtung einer Einheit in drei Dimensionen zu ermitteln. Ein Höhenmesser 622 (z.B. eine integrierte Schaltung) kann mit der Schnittstellenschaltung 606 verbunden werden, um Sensordaten bereitzustellen, die verwendet werden können, um eine Höhe zu ermitteln. Ein Sprachaufzeichner 624 kann mit der Schnittstellenschaltung 606 verbunden werden, um aufgezeichnete Äußerungen zu speichern.
  • Ein Kamerateilsystem 626 kann mit einem optischen Sensor 628 verbunden werden. Der optische Sensor 628 kann unter Verwendung einer beliebigen aus einer Vielfalt von Technologien realisiert werden. Beispiele für einen optischen Sensor 628 enthalten eine ladungsgekoppelte Einheit (Charge-Coupled Device, CCD), einen optischen Sensor mit einem komplementären Metalloxid-Halbleiter (Complementary Metal-Oxide Semiconductor, CMOS) und dergleichen. Das Kamerateilsystem 626 und der optische Sensor 628 können verwendet werden, um Kamerafunktionen wie z.B. ein Aufzeichnen von Bildern und/oder Videoclips (im Folgenden „Bilddaten“) zu ermöglichen. Gemäß einem Aspekt sind Bilddaten ein Teilsatz von Sensordaten.
  • Datenübertragungsfunktionen können durch ein oder mehrere drahtlose Datenübertragungsteilsysteme 630 ermöglicht werden. Das eine bzw. die mehreren drahtlosen Datenübertragungsteilsysteme 630 können Hochfrequenzempfänger und -Transmitter, optische (z.B. Infrarot-)Empfänger und Transmitter und so weiter enthalten. Der spezifische Entwurf und die spezifische Realisierung des einen bzw. der mehreren drahtlosen Datenübertragungsteilsysteme 630 können von der spezifischen Art der realisierten tragbaren Einheit 600 und/oder dem einen bzw. den mehreren Datenübertragungsnetzwerken abhängig sein, über die die tragbare Einheit 600 betrieben werden soll.
  • Zum Zwecke der Veranschaulichung können das eine bzw. die mehreren drahtlosen Datenübertragungsteilsysteme 630 entworfen werden, um über ein oder mehrere mobile Netzwerke (z.B. GSM, GPRS, EDGE), ein WLAN-Netzwerk, das ein WiMax-Netzwerk enthalten kann, ein drahtloses Nahbereichsnetzwerk (z.B. ein Bluetooth-Netzwerk) und/oder jede Kombination hiervon betrieben zu werden. Das eine bzw. die mehreren drahtlosen Datenübertragungsteilsysteme 630 können Hosting-Protokolle realisieren, sodass die tragbare Einheit 600 als eine Basisstation für andere drahtlosen Einheiten konfiguriert werden kann.
  • Ein Audioteilsystem 632 kann mit einem Lautsprecher 634 und einem Mikrofon 636 verbunden werden, um sprachfähige Funktionen zu ermöglichen, z.B. Spracherkennung, Sprachreplikation, digitales Aufzeichnen, Audioverarbeitung und Telefoniefunktionen. Das Audioteilsystem 632 ist in der Lage, Sensordaten einer Audio-Art zu erzeugen Bei einer oder mehreren Ausführungsformen kann das Mikrofon 636 als ein Sensor eines Atemschutzgeräts verwendet werden.
  • E/A-Einheiten 638 können mit der Schnittstellenschaltung 606 verbunden werden. Beispiele für die E/A-Einheiten 638 enthalten zum Beispiel Anzeigeeinheiten, berührungsempfindliche Anzeigeeinheiten, Trackpads, Tastaturen, Zeigeeinheiten, Datenübertragungsanschlüsse (z.B. USB-Anschlüsse), Netzwerkadapter, Tasten oder andere physische Bedienelemente und so weiter. Eine berührungsempfindliche Einheit wie z.B. ein Anzeigebildschirm und/oder ein Pad wird konfiguriert, um einen Kontakt, eine Bewegung, Unterbrechungen eines Kontakts und dergleichen zu erkennen, wobei eine beliebige aus einer Vielfalt von Technologien mit einer Berührungsempfindlichkeit verwendet wird. Beispiele für berührungsempfindliche Technologien enthalten zum Beispiel kapazitive, resistive, Infrarot- und Oberflächenakustikwellen-Technologien, andere Nähesensor-Arrays oder andere Elemente zum Ermitteln eines oder mehrerer Kontaktpunkte mit einer berührungsempfindlichen Einheit und dergleichen. Eine oder mehrere der E/A-Einheiten 638 kann bzw. können angepasst werden, um Funktionen von Sensoren, Teilsystemen sowie Funktionen der tragbaren Einheit 600 zu steuern.
  • Die tragbare Einheit 600 enthält des Weiteren eine Stromquelle 640. Die Stromquelle 640 ist in der Lage, verschiedenen Elementen der tragbaren Einheit 600 elektrischen Strom bereitzustellen. Bei einer einzigen Ausführungsform wird die Stromquelle 640 als eine oder mehrere Batterien realisiert. Die Batterien können unter Verwendung einer beliebigen aus einer Vielfalt von verschiedenen Batterietechnologien realisiert werden, ob für den einmaligen Gebrauch gedacht (z.B. austauschbar) oder aufladbar. Bei einer weiteren Ausführungsform wird die Stromquelle 640 konfiguriert, um elektrischen Strom von einer externen Quelle zu erhalten und den Elementen der tragbaren Einheit 600 Strom (z.B. Gleichstrom) bereitzustellen. In dem Fall einer aufladbaren Batterie kann die Stromquelle 640 des Weiteren einen Schaltkreis enthalten, der in der Lage ist, die eine bzw. die mehreren Batterien aufzuladen, wenn sie mit einer externen Stromquelle verbunden werden.
  • Der Arbeitsspeicher 602 kann einen Direktzugriffsspeicher (z.B. einen flüchtigen Arbeitsspeicher) und/oder einen nicht flüchtigen Arbeitsspeicher enthalten, z.B. eine oder mehrere Magnetplatten-Speichereinheiten, eine oder mehrere optische Speichereinheiten, einen Flash-Arbeitsspeicher und so weiter. Der Arbeitsspeicher 602 kann ein Betriebssystem 652 speichern, z.B. LINUX, UNIX, ein mobiles Betriebssystem, ein eingebettetes Betriebssystem und dergleichen. Das Betriebssystem 652 kann Anweisungen zum Verarbeiten von Systemdiensten und zum Durchführen von Hardware-abhängigen Aufgaben enthalten.
  • Der Arbeitsspeicher 602 kann einen zusätzlichen Programmcode 654 speichern. Beispiele für den anderen Programmcode 654 können Anweisungen, um einen Datenaustausch mit einer oder mehreren zusätzlichen Einheiten, einem oder mehreren Computern und/oder einem oder mehreren Servern; eine Verarbeitung einer graphischen Benutzerschnittstelle; Verarbeitungsanweisungen zum Ermöglichen von sensorbezogenen Funktionen; telefonbezogenen Funktionen; Funktionen in Zusammenhang mit einer elektronischen Nachrichtenübertragung; Funktionen in Zusammenhang mit einem Web-Browsing; Funktionen in Zusammenhang mit einer Medienverarbeitung; GPS- und navigationsbezogenen Funktionen; Sicherheitsfunktionen; kamerabezogenen Funktionen wie z.B. Web-Kamera- und/oder Web-Video-Funktionen; und so weiter enthalten. Der Programmcode kann einen Programmcode enthalten, um in der tragbaren Einheit einen intelligenten virtuellen Assistenten (IVA) zu realisieren, der in einem IVA-Programmcode 656 realisiert wird, der in dem Prozessor 604 ausgeführt wird. Der IVA kann mit einem AIVRS interagieren, das zum Beispiel auf einem entfernt angeordneten Server auf Cloud-Grundlage ausgeführt wird. Der Arbeitsspeicher 602 kann auch eine oder mehrere andere Anwendungen 662 speichern.
  • Die beschriebenen verschiedenen Arten von Anweisungen und/oder Programmcode werden zum Zwecke der Veranschaulichung und nicht als Beschränkung bereitgestellt. Der Programmcode kann als getrennte Software-Programme, -Prozeduren oder -Module realisiert werden. Der Arbeitsspeicher 602 kann zusätzliche Anweisungen oder weniger Anweisungen enthalten. Darüber hinaus können verschiedene Funktionen der tragbaren Einheit 600 in Hardware und/oder Software realisiert werden, z.B. in einer oder mehreren signalverarbeitenden und/oder anwendungsspezifischen integrierten Schaltungen.
  • Innerhalb des Arbeitsspeichers 602 gespeicherter Programmcode und jegliche Daten, die durch die tragbare Einheit 600 verwendet, erzeugt und/oder verarbeitet werden, sind funktionale Datenstrukturen, die einer Einheit eine Funktionalität verleihen, wenn sie als Teil der Einheit verwendet werden. Weitere Beispiele von funktionalen Datenstrukturen enthalten zum Beispiel Sensordaten, Daten, die über eine Benutzereingabe erhalten werden, Daten, die über ein Abfragen externer Datenquellen erhalten werden, Basisinformationen und so weiter. Der Begriff „Datenstruktur“ bezieht sich auf eine physische Realisierung einer Organisation von Daten eines Datenmodells innerhalb eines physischen Arbeitsspeichers. Als solches besteht eine Datenstruktur aus spezifischen elektronischen oder magnetischen strukturellen Elementen in einem Arbeitsspeicher. Eine Datenstruktur gibt eine physische Organisation für Daten vor, die in dem Arbeitsspeicher gespeichert werden, der durch einen Prozessor verwendet wird.
  • Bei bestimmten Ausführungsformen können einer bzw. eines oder mehrere der verschiedenen Sensoren und/oder Teilsysteme, die in Bezug auf die tragbare Einheit 600 beschrieben werden, getrennte Einheiten sein, die durch drahtgebundene oder drahtlose Verbindungen mit der tragbaren Einheit 600 verbunden oder im Datenaustausch verbunden werden. Zum Beispiel können einer oder mehrere (oder alle) des Standortsensors 610, des Lichtsensors 612, des Nähesensors 614, des Gyroskops 616, des Magnetometers 618, des Beschleunigungsmessers 620, des Höhenmessers 622, des Sprachaufzeichners 624, des Kamerateilsystems 626, des Audioteilsystems 632 und so weiter als getrennte Systeme oder Teilsysteme realisiert werden, die über die E/A-Einheiten 638 und/oder das eine bzw. die mehreren drahtlosen Datenübertragungsteilsysteme 630 mit der tragbaren Einheit 600 wirkverbunden sind.
  • Die tragbare Einheit 600 kann weniger Komponenten als gezeigt enthalten oder zusätzliche Komponenten zu den in 6 gezeigten enthalten, abhängig von der spezifischen Art von System, die realisiert wird. Zusätzlich kann das bestimmte Betriebssystem und/oder eine bzw. mehrere Anwendungen und/oder enthaltener Programmcode ebenfalls je nach Systemart variieren. Darüber hinaus können eine oder mehrere der veranschaulichenden Komponenten in eine weitere Komponente integriert werden oder anderweitig einen Teil hiervon bilden. Ein Prozessor kann zum Beispiel mindestens eine bestimmte Art von Arbeitsspeicher enthalten.
  • Die tragbare Einheit 600 wird zum Zwecke der Veranschaulichung und nicht als Beschränkung bereitgestellt. Eine Einheit und/oder ein System, die bzw. das konfiguriert wird, um die hierin beschriebenen Operationen durchzuführen, kann eine andere Architektur haben, als in 6 veranschaulicht wird. Die Architektur kann eine vereinfachte Version der tragbaren Einheit 600 sein und kann einen Prozessor und einen Arbeitsspeicher enthalten, der Anweisungen speichert. Die Architektur kann einen oder mehrere Sensoren wie hierin beschrieben enthalten. Die tragbare Einheit 600 oder ein ähnliches System kann Daten unter Verwendung verschiedener Sensoren der Einheit oder damit verbundener Sensoren erfassen. Es sollte jedoch klar sein, dass die tragbare Einheit 600 auch weniger Sensoren oder zusätzliche Sensoren enthalten kann. In dieser Offenbarung werden durch einen Sensor erzeugte Daten als „Sensordaten“ bezeichnet.
  • Beispielrealisierungen der tragbaren Einheit 600 enthalten zum Beispiel ein Smartphone oder eine andere mobile Einheit oder ein Mobiltelefon, eine am Körper tragbare Datenverarbeitungseinheit (z.B. Smartwatch), eine dedizierte medizinische Einheit oder eine andere geeignete in der Hand gehaltene, am Körper getragene oder bequem tragbare elektronische Einheit, die in der Lage ist, von einem Sensor erkannte Signale und Daten zu erfassen und zu verarbeiten. Es dürfte offensichtlich sein, dass Ausführungsformen als eine eigenständige Einheit oder als mehrere Einheiten in einem vernetzten, verteilten Client-Server-System bereitgestellt werden können. Zum Beispiel kann bei bestimmten Ausführungsformen eine Smartwatch mit einer mobilen Einheit (z.B. einem Smartphone) wirkverbunden werden. Die mobile Einheit kann konfiguriert werden, um mit einem entfernt angeordneten Server und/oder Computersystem zu interagieren, ohne dass dies jedoch der Fall sein muss.
  • Die hier verwendete Begrifflichkeit dient lediglich zur Beschreibung bestimmter Ausführungsformen und ist nicht als Beschränkung gedacht. Dessen ungeachtet werden nun einige Definitionen dargelegt, die in diesem Dokument Gültigkeit haben.
  • Wie hierin definiert, enthalten die Singularformen „ein/e/r,“ und „der/die/das“ auch die Pluralformen, sofern der Kontext dies nicht eindeutig anders vorgibt.
  • Wie hierin definiert, bedeutet „ein weiterer“ mindestens ein zweiter oder mehr.
  • Wie hier verwendet, sind „mindestens ein, ein oder mehrere“ sowie „und/oder“ offene Ausdrücke, die sowohl eine konjunktive als auch eine disjunktive Funktion haben, sofern nicht ausdrücklich anderweitig genannt. Zum Beispiel bedeutet jeder der Ausdrücke „mindestens eines von A, B und C“, „mindestens eines von A, B oder C“, „ein oder mehrere von A, B und C“, „ein oder mehrere von A, B oder C“ und „A, B und/oder C“ nur A, nur B, nur C, A und B, A und C, B und C oder A, B und C.
  • Wie hierin definiert, bedeutet „automatisch“ ohne eine Benutzerintervention.
  • Wie hierin definiert, geben „enthält“, „enthaltend“, „weist auf“ und/oder „aufweisend“ das Vorhandensein von genannten Merkmalen, Ganzzahlen, Schritten, Operationen, Elementen und/oder Komponenten an, schließen das Vorhandensein oder die Hinzufügung von einem bzw. einer oder mehreren anderen Merkmalen, Ganzzahlen, Schritten, Operationen, Elementen, Komponenten und/oder Gruppen hiervon jedoch nicht aus.
  • Wie hierin definiert, bedeutet „wenn“ je nach Kontext „als Reaktion auf“ oder „darauf reagierend“. Somit kann die Phrase „wenn ermittelt wird“ dahingehend verstanden werden, dass sie je nach Kontext „als Reaktion auf ein Ermitteln“ oder „reagierend auf ein Ermitteln“ meint. Entsprechend kann die Phrase „wenn [eine bestimmte Bedingung oder ein bestimmtes Ereignis] erkannt wird“ dahingehend verstanden werden, dass sie je nach Kontext „nach einem Erkennen [der bestimmten Bedingung oder des bestimmten Ereignisses]“ oder „als Reaktion auf ein Erkennen [der bestimmten Bedingung oder des bestimmten Ereignisses]“ oder „reagierend auf ein Erkennen [der bestimmten Bedingung oder des bestimmten Ereignisses]“ bedeutet.
  • Wie hierin verwendet, bedeutet „eine einzige Ausführungsform“, „eine Ausführungsform“, bei einer oder mehreren Ausführungsformen, „bei bestimmten Ausführungsformen“ oder ähnliche Formulierungen, dass ein bestimmtes Merkmal, eine bestimmte Struktur oder ein bestimmtes Kennzeichen, das bzw. die in Verbindung mit der Ausführungsform beschrieben wird, in mindestens einer Ausführungsform enthalten ist, die in dieser Offenbarung beschrieben wird. Somit können sich Verwendungen der oben erwähnten Phrasen und/oder ähnliche, innerhalb dieser Offenbarung verwendete Formulierungen auf ein und dieselbe Ausführungsform beziehen, ohne dass dies jedoch der Fall sein muss.
  • Wie hierin definiert, bedeuten die Phrasen „als Reaktion auf“ eine Antwort auf bzw. eine umgehende Reaktion auf eine Aktion oder ein Ereignis. Wenn eine zweite Aktion somit „als Reaktion auf“ oder „reagierend auf“ eine erste Aktion durchgeführt wird, besteht ein Kausalzusammenhang zwischen einem Auftreten der ersten Aktion und einem Auftreten der zweiten Aktion. Die Phrasen „als Reaktion auf“ und „reagierend auf“ geben einen Kausalzusammenhang an.
  • Wie hierin definiert, bedeutet „Echtzeit“ einen Grad an Verarbeitungsreaktionsfähigkeit, die ein Benutzer oder System als ausreichend unmittelbar für einen bestimmten Prozess oder eine bestimmte Feststellung erachtet, der bzw. die zu erfolgen hat oder der bzw. die den Prozessor in die Lage versetzt, mit einem wie auch immer gearteten externen Prozess Schritt zu halten.
  • Wie hierin definiert, bedeutet „im Wesentlichen“, dass der genannte Parameter oder Wert nicht exakt erreicht werden muss, sondern dass Abweichungen oder Variationen, z.B. Toleranzen, Messfehler, Beschränkungen der Messgenauigkeit und andere Faktoren, die dem Fachmann bekannt sind, in einem Ausmaß auftreten können, das die Wirkung, die das Merkmal entfalten soll, nicht ausschließt.
  • Wie hierin definiert, beziehen sich „Benutzer“, „Person“ und „Gast“ jeweils auf einen Menschen.
  • Die Begriffe „erster“, „zweiter“ usw. können hierin verwendet werden, um verschiedene Elemente zu beschreiben. Diese Elemente sollten nicht als hierauf beschränkt verstanden werden, da diese Begriffe lediglich verwendet werden, um ein Element von einem weiteren zu unterscheiden, sofern dies nicht anderweitig genannt wird oder der Kontext dies nicht eindeutig anderweitig vorgibt.
  • Bei der vorliegenden Erfindung kann es sich um ein System, ein Verfahren und/oder ein Computerprogrammprodukt mit einem beliebigen möglichen Grad an technischer Integration handeln. Das Computerprogrammprodukt kann ein computerlesbares Speichermedium (oder computerlesbare Speichermedien) mit darauf gespeicherten computerlesbaren Programmanweisungen enthalten, um einen Prozessor dazu zu veranlassen, Aspekte der vorliegenden Erfindung auszuführen.
  • Bei dem computerlesbaren Speichermedium kann es sich um eine physische Einheit handeln, die Anweisungen zur Verwendung durch eine Anweisungsausführungseinheit behalten und speichern kann. Bei dem computerlesbaren Speichermedium kann es sich zum Beispiel um eine elektronische Speichereinheit, eine magnetische Speichereinheit, eine optische Speichereinheit, eine elektromagnetische Speichereinheit, eine Halbleiterspeichereinheit oder jede geeignete Kombination daraus handeln, ohne auf diese beschränkt zu sein. Zu einer nicht erschöpfenden Liste spezifischerer Beispiele des computerlesbaren Speichermediums gehören die Folgenden: eine tragbare Computerdiskette, eine Festplatte, ein Direktzugriffsspeicher (Random Access Memory, RAM), ein Nur-Lese-Speicher (ROM) ein löschbarer programmierbarer Nur-Lese-Speicher (EEPROM bzw. Flash-Speicher), ein statischer Direktzugriffsspeicher (SRAM), ein tragbarer CD-ROM, eine DVD (Digital Versatile Disc), ein Speicher-Stick, eine Diskette, eine mechanisch kodierte Einheit wie zum Beispiel Lochkarten oder erhabene Strukturen in einer Rille, auf denen Anweisungen gespeichert werden, und jede geeignete Kombination daraus. Ein computerlesbares Speichermedium soll in der Verwendung hierin nicht als transitorische Signale an sich aufgefasst werden, wie zum Beispiel Funkwellen oder andere sich frei ausbreitende elektromagnetische Wellen, elektromagnetische Wellen, die sich durch einen Wellenleiter oder ein anderes Übertragungsmedium ausbreiten (z.B. Lichtwellenleiterkabel durchlaufende Lichtimpulse) oder durch einen Draht übertragene elektrische Signale.
  • Hierin beschriebene computerlesbare Programmanweisungen können von einem computerlesbaren Speichermedium auf jeweilige Datenverarbeitungs-/ Verarbeitungseinheiten oder über ein Netzwerk wie zum Beispiel das Internet, ein lokales Netzwerk (LAN), ein Weitverkehrsnetzwerk (WAN) und/oder ein drahtloses Netzwerk auf einen externen Computer oder eine externe Speichereinheit heruntergeladen werden. Das Netzwerk kann Kupferübertragungskabel, Lichtwellenübertragungsleiter, drahtlose Übertragung, Leitwegrechner, Firewalls, Vermittlungseinheiten, Gateway Computer und/oder Edge-Server aufweisen. Eine Netzwerkadapterkarte oder Netzwerkschnittstelle in jeder Datenverarbeitungs-/Verarbeitungseinheit empfängt computerlesbare Programmanweisungen aus dem Netzwerk und leitet die computerlesbaren Programmanweisungen zur Speicherung in einem computerlesbaren Speichermedium innerhalb der entsprechenden Datenverarbeitungs-/Verarbeitungseinheit weiter.
  • Bei computerlesbaren Programmanweisungen zum Ausführen von Arbeitsschritten der vorliegenden Erfindung kann es sich um Assembler-Anweisungen, ISA-Anweisungen (Instruction Set Architecture), Maschinenanweisungen, maschinenabhängige Anweisungen, Mikrocode, Firmware-Anweisungen, zustandseinstellende Daten, Konfigurationsdaten für eine integrierte Schaltung oder sowohl um Quellcode als auch um Objektcode handeln, die in einer beliebigen Kombination aus einer oder mehreren Programmiersprachen geschrieben werden, darunter objektorientierte Programmiersprachen wie Smalltalk, C++ o.ä. sowie herkömmliche prozedurale Programmiersprachen wie die Programmiersprache „C“ oder ähnliche Programmiersprachen. Die computerlesbaren Programmanweisungen können vollständig auf dem Computer des Benutzers, teilweise auf dem Computer des Benutzers, als eigenständiges Software-Paket, teilweise auf dem Computer des Benutzers und teilweise auf einem entfernt angeordneten Computer oder vollständig auf dem entfernt angeordneten Computer oder Server ausgeführt werden. In letzterem Fall kann der entfernt angeordnete Computer mit dem Computer des Benutzers durch eine beliebige Art Netzwerk verbunden werden, zum Beispiel ein lokales Netzwerk (LAN) oder ein Weitverkehrsnetzwerk (WAN), oder die Verbindung kann mit einem externen Computer hergestellt werden (zum Beispiel über das Internet unter Verwendung eines Internet-Dienstanbieters). Bei manchen Ausführungsformen können elektronische Schaltungen, darunter zum Beispiel programmierbare Logikschaltungen, im Feld programmierbare Gatter-Arrays (Field-Programmable Gate Arrays, FPGA) oder programmierbare Logik-Arrays (Programmable Logic Arrays, PLA) die computerlesbaren Programmanweisungen ausführen, indem sie Zustandsinformationen der computerlesbaren Programmanweisungen nutzen, um die elektronischen Schaltungen zu personalisieren, um Aspekte der vorliegenden Erfindung durchzuführen.
  • Aspekte der vorliegenden Erfindung werden hierin unter Bezugnahme auf Ablaufpläne und/oder Blockschaubilder von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Es wird darauf hingewiesen, dass jeder Block der Ablaufpläne und/oder der Blockschaubilder sowie Kombinationen von Blöcken in den Ablaufplänen und/oder den Blockschaubildern mittels computerlesbarer Programmanweisungen ausgeführt werden können.
  • Diese computerlesbaren Programmanweisungen können einem Prozessor eines Computers oder einer anderen programmierbaren Datenverarbeitungsvorrichtung bereitgestellt werden, um eine Maschine zu erzeugen, sodass die über den Prozessor des Computers bzw. der anderen programmierbaren Datenverarbeitungsvorrichtung ausgeführten Anweisungen ein Mittel zur Umsetzung der in dem Block oder den Blöcken des Ablaufplans und/oder des Blockschaubilds festgelegten Funktionen/Schritte erzeugen. Diese computerlesbaren Programmanweisungen können auch auf einem computerlesbaren Speichermedium gespeichert werden, das einen Computer, eine programmierbare Datenverarbeitungsvorrichtung und/oder andere Einheiten so steuern kann, dass sie auf eine bestimmte Art funktionieren, sodass das computerlesbare Speichermedium, auf dem Anweisungen gespeichert werden, ein Herstellungsprodukt aufweist, darunter Anweisungen, die Aspekte der bzw. des in dem Block bzw. den Blöcken der Ablaufpläne und/oder Blockschaubilder angegebenen Funktion/Schritts umsetzen.
  • Die computerlesbaren Programmanweisungen können auch auf einen Computer, eine andere programmierbare Datenverarbeitungsvorrichtung oder eine andere Einheit geladen werden, um das Ausführen einer Reihe von Prozessschritten auf dem Computer bzw. der anderen programmierbaren Vorrichtung oder anderen Einheit zu verursachen, um einen computerrealisierten Prozess zu erzeugen, sodass die auf dem Computer, einer anderen programmierbaren Vorrichtung oder einer anderen Einheit ausgeführten Anweisungen die in dem Block bzw. den Blöcken der Ablaufpläne und/oder Blockschaubilder festgelegten Funktionen/Schritte umsetzen.
  • Die Ablaufpläne und die Blockschaubilder in den Figuren veranschaulichen die Architektur, die Funktionalität und den Betrieb möglicher Ausführungen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. In diesem Zusammenhang kann jeder Block in den Ablaufplänen oder Blockschaubildern ein Modul, ein Segment oder einen Teil von Anweisungen darstellen, die eine oder mehrere ausführbare Anweisungen zum Realisieren der bestimmten logischen Funktion bzw. Funktionen aufweisen. In einigen alternativen Ausführungen können die in dem Block angegebenen Funktionen in einer anderen Reihenfolge als in den Figuren gezeigt stattfinden. Zum Beispiel können zwei nacheinander gezeigte Blöcke in Wirklichkeit als ein Schritt erfolgen, im Wesentlichen gleichzeitig, teilweise oder vollständig zeitlich überlappend ausgeführt werden, oder die Blöcke können manchmal je nach entsprechender Funktionalität in umgekehrter Reihenfolge ausgeführt werden. Es ist ferner anzumerken, dass jeder Block der Blockschaubilder und/oder der Ablaufpläne sowie Kombinationen aus Blöcken in den Blockschaubildern und/oder den Ablaufplänen durch spezielle auf Hardware beruhende Systeme umgesetzt werden können, die die festgelegten Funktionen oder Schritte durchführen, oder Kombinationen aus Spezial-Hardware und Computeranweisungen ausführen.
  • Die Beschreibungen der verschiedenen Ausführungsformen der vorliegenden Erfindung wurden zum Zwecke der Veranschaulichung vorgelegt und sind nicht als vollständig oder auf die offenbarten Ausführungsformen beschränkt zu verstehen. Der Fachmann weiß, dass zahlreiche Modifikationen und Abwandlungen möglich sind, ohne vom inhaltlichen Umfang der beschriebenen Ausführungsformen abzuweichen. Die hierin verwendete Begrifflichkeit wurde gewählt, um die Grundsätze der Ausführungsformen, die praktische Anwendung oder technische Verbesserung gegenüber marktgängigen Technologien bestmöglich zu erläutern bzw. anderen Fachleuten das Verständnis der hierin offenbarten Ausführungsformen zu ermöglichen.

Claims (20)

  1. Computerrealisiertes Verfahren, aufweisend: elektronisches Wahrnehmen einer physischen Präsenz eines zweiten Benutzers mit einem Sprachantwortsystem mit künstlicher Intelligenz (KI) eines ersten Benutzers; Übermitteln einer Sprachanforderung, die erzeugt wird, indem das Kl-Sprachantwortsystem des ersten Benutzers einen Zugriff auf einen Wissenskorpus anfordert, der durch ein Kl-Sprachantwortsystem des zweiten Benutzers elektronisch gespeichert wird, und Empfangen einer Sprachantwort von dem zweiten Benutzer; Instantiieren einer elektronischen Datenübertragungssitzung mit dem Kl-Sprachantwortsystem des zweiten Benutzers durch das Kl-Sprachantwortsystem des ersten Benutzers auf Grundlage der Sprachantwort, wobei die elektronische Datenübertragungssitzung durch das Kl-Sprachantwortsystem des ersten Benutzers über eine elektronische Datenübertragungsverbindung mit einer tragbaren Einheit des zweiten Benutzers initiiert wird; Abrufen ausgewählter Teile des Wissenskorpus durch das Kl-Sprachantwortsystem des ersten Benutzers aus dem Kl-Sprachantwortsystem des zweiten Benutzers über ein Datenübertragungsnetzwerk, wobei die ausgewählten Teile des Sprachkorpus auf Grundlage der Sprachantwort des zweiten Benutzers auf die Sprachanforderung ausgewählt werden, die durch das Kl-Sprachantwortsystem des ersten Benutzers übermittelt werden; und Initiieren einer Aktion durch eine oder mehrere loT-Einheiten als Reaktion auf eine Sprachaufforderung, die durch das Kl-Sprachantwortsystem des ersten Benutzers auf Grundlage der ausgewählten Teile des Wissenskorpus interpretiert wird.
  2. Verfahren nach Anspruch 1, wobei das Übermitteln als Reaktion auf ein Durchsuchen der in einem elektronischen Arbeitsspeicher gespeicherten Daten durch das Kl-Sprachantwortsystem des ersten Benutzers und ein Ermitteln durchgeführt wird, dass die in einem elektronischen Arbeitsspeicher gespeicherten Daten weder eine elektronisch gespeicherte frühere Erlaubnis noch die ausgewählten Teile des Wissenskorpus enthalten.
  3. Verfahren nach Anspruch 1, des Weiteren aufweisend: Durchführen des Abrufens ausgewählter Teile des Wissenskorpus über das Datenübertragungsnetzwerk als Reaktion auf ein Ermitteln, dass die in einem elektronischen Arbeitsspeicher gespeicherten Daten eine elektronisch gespeicherte frühere Erlaubnis enthalten; und Verzichten auf das Abrufen der ausgewählten Teile über das Datenübertragungsnetzwerk als Reaktion auf ein Ermitteln, dass die in einem elektronischen Arbeitsspeicher gespeicherten Daten die ausgewählten Teile des Wissenskorpus enthalten.
  4. Verfahren nach Anspruch 1, wobei das Wahrnehmen ein Erkennen einer Sprachaufforderung eines ersten Benutzers durch das Kl-Sprachantwortsystem des ersten Benutzers und ein Identifizieren einer Bezugnahme auf den zweiten Benutzer durch das Kl-Sprachantwortsystem des ersten Benutzers aufweist.
  5. Verfahren nach Anspruch 1, wobei das Wahrnehmen ein Durchführen einer visuellen Erkennung des zweiten Benutzers auf Grundlage von Bildern aufweist, die durch eine loT-Kamera erfasst werden, die mit dem Kl-Sprachantwortsystem des ersten Benutzers wirkverbunden ist.
  6. Verfahren nach Anspruch 1, des Weiteren aufweisend ein Erlangen von zweiten Benutzerinformationen durch das Kl-Sprachantwortsystem des ersten Benutzers auf Grundlage von Daten, die durch das Kl-Sprachantwortsystem des ersten Benutzers von einer Einheit des ersten Benutzers erfasst werden, die mit dem Kl-Sprachantwortsystem des ersten Benutzers im Datenaustausch verbunden wird.
  7. Verfahren nach Anspruch 1, wobei das Kl-Sprachantwortsystem des ersten Benutzers die abgerufenen ausgewählten Teile des Wissenskorpus verwirft, nachdem eine vorgegebene Zeitspanne verstrichen ist, ohne dass von dem zweiten Benutzer eine Aufbewahrungsaufforderung empfangen wird.
  8. System, aufweisend: Sprachantwortsystem mit künstlicher Intelligenz (KI) eines ersten Benutzers, das mit einem Prozessor wirkverbunden ist, der konfiguriert wird, um Operationen zu initiieren, enthaltend: elektronisches Wahrnehmen einer physischen Präsenz eines zweiten Benutzers; Übermitteln einer Sprachanforderung, auf einen Wissenskorpus zuzugreifen, der durch ein Kl-Sprachantwortsystem des zweiten Benutzers elektronisch gespeichert wird, und Empfangen einer Sprachantwort von dem zweiten Benutzer; Instantiieren einer elektronischen Datenübertragungssitzung durch das Kl-Sprachantwortsystem des ersten Benutzers mit dem Kl-Sprachantwortsystem des zweiten Benutzers auf Grundlage der Sprachantwort, wobei die elektronische Datenübertragungssitzung über eine elektronische Datenübertragungsverbindung mit einer tragbaren Einheit des zweiten Benutzers initiiert wird; Abrufen ausgewählter Teile des Wissenskorpus aus dem Kl-Sprachantwortsystem des zweiten Benutzers über ein Datenübertragungsnetzwerk, wobei die ausgewählten Teile des Sprachkorpus auf Grundlage der Sprachantwort des zweiten Benutzers auf die Anforderung ausgewählt werden; und Initiieren einer Aktion durch eine oder mehrere loT-Einheiten als Reaktion auf eine Sprachaufforderung, die durch das Kl-Sprachantwortsystem des ersten Benutzers auf Grundlage der ausgewählten Teile des Wissenskorpus interpretiert wird.
  9. System nach Anspruch 8, wobei das Übermitteln als Reaktion auf ein Durchsuchen von in einem elektronischen Arbeitsspeicher gespeicherten Daten und ein Ermitteln durchgeführt wird, dass die in einem elektronischen Arbeitsspeicher gespeicherten Daten weder eine elektronisch gespeicherte frühere Erlaubnis noch die ausgewählten Teile des Wissenskorpus enthalten.
  10. System nach Anspruch 8, wobei der Prozessor konfiguriert wird, um weitere Operationen zu initiieren, enthaltend: Durchführen des Abrufens ausgewählter Teile des Wissenskorpus über das Datenübertragungsnetzwerk als Reaktion auf ein Ermitteln, dass die in dem elektronischen Arbeitsspeicher gespeicherten Daten eine elektronisch gespeicherte frühere Erlaubnis enthalten; und Verzichten auf das Abrufen der ausgewählten Teile über das Datenübertragungsnetzwerk als Reaktion auf ein Ermitteln, dass die in einem elektronischen Arbeitsspeicher gespeicherten Daten die ausgewählten Teile des Wissenskorpus enthalten.
  11. System nach Anspruch 8, wobei das Wahrnehmen ein Erkennen einer Sprachaufforderung des ersten Benutzers und ein Identifizierung einer Bezugnahme auf den zweiten Benutzer innerhalb der Sprachaufforderung aufweist.
  12. System nach Anspruch 8, wobei das Wahrnehmen ein Durchführen einer visuellen Erkennung des zweiten Benutzers auf Grundlage von Bildern aufweist, die durch eine Kamera erfasst werden, die mit dem System wirkverbunden ist.
  13. System nach Anspruch 8, wobei der Prozessor konfiguriert wird, um weitere Operationen zu initiieren, enthaltend ein Erlangen von zweiten Benutzerinformationen auf Grundlage von Daten, die durch eine Einheit eines ersten Benutzers erfasst werden, die im Datenaustausch mit dem System verbunden wird.
  14. Computerprogrammprodukt, wobei das Computerprogrammprodukt aufweist: ein oder mehrere computerlesbare Speichermedien und Programmanweisungen, die gemeinsam auf dem einen oder den mehreren computerlesbaren Speichermedien gespeichert werden, wobei die Programmanweisungen durch einen Prozessor ausführbar sind, der mit einem ersten Sprachantwortsystem mit künstlicher Intelligenz (KI) eines ersten Benutzers wirkverbunden ist, um den Prozessor zu veranlassen, Operationen zu initiieren, enthaltend: elektronisches Wahrnehmen einer physischen Präsenz eines zweiten Benutzers; Übermitteln einer Sprachanforderung, auf einen Wissenskorpus zuzugreifen, der durch ein Kl-Sprachantwortsystem des zweiten Benutzers elektronisch gespeichert wird, und Empfangen einer Sprachantwort von dem zweiten Benutzer; Instantiieren einer elektronischen Datenübertragungssitzung durch das Kl-Sprachantwortsystem des ersten Benutzers mit dem Kl-Sprachantwortsystem des zweiten Benutzers auf Grundlage der Sprachantwort, wobei die elektronische Datenübertragungssitzung über eine elektronische Datenübertragungsverbindung mit einer tragbaren Einheit des zweiten Benutzers initiiert wird; Abrufen ausgewählter Teile des Wissenskorpus aus dem Kl-Sprachantwortsystem des zweiten Benutzers über ein Datenübertragungsnetzwerk, wobei die ausgewählten Teile des Sprachkorpus auf Grundlage der Sprachantwort des zweiten Benutzers auf die Anforderung ausgewählt werden; und Initiieren einer Aktion durch eine oder mehrere loT-Einheiten als Reaktion auf eine Sprachaufforderung, die durch das KI-Sprachantwortsystem des ersten Benutzers auf Grundlage der ausgewählten Teile des Wissenskorpus interpretiert wird.
  15. Computerprogrammprodukt nach Anspruch 14, wobei das Übermitteln als Reaktion auf ein Durchsuchen von in einem elektronischen Arbeitsspeicher gespeicherten Daten und ein Ermitteln durchgeführt wird, dass die in einem elektronischen Arbeitsspeicher gespeicherten Daten weder eine elektronisch gespeicherte frühere Erlaubnis noch die ausgewählten Teile des Wissenskorpus enthalten.
  16. Computerprogrammprodukt nach Anspruch 14, wobei die durch den Prozessor ausführbaren Programmanweisungen den Prozessor veranlassen, Operationen zu initiieren, des Weiteren aufweisend: Durchführen des Abrufens ausgewählter Teile des Wissenskorpus über das Datenübertragungsnetzwerk als Reaktion auf ein Ermitteln, dass die in dem elektronischen Arbeitsspeicher gespeicherten Daten eine elektronisch gespeicherte frühere Erlaubnis enthalten; und Verzichten auf das Abrufen der ausgewählten Teile über das Datenübertragungsnetzwerk als Reaktion auf ein Ermitteln, dass die in einem elektronischen Arbeitsspeicher gespeicherten Daten die ausgewählten Teile des Wissenskorpus enthalten.
  17. Computerprogrammprodukt nach Anspruch 14, wobei das Wahrnehmen ein Erkennen einer Sprachaufforderung des ersten Benutzers und ein Identifizierung einer Bezugnahme auf den zweiten Benutzer innerhalb der Sprachaufforderung aufweist.
  18. Computerprogrammprodukt nach Anspruch 14, wobei das Wahrnehmen ein Durchführen einer visuellen Erkennung des zweiten Benutzers auf Grundlage von Bildern aufweist, die durch eine Kamera erfasst werden, die mit dem Kl-Sprachantwortsystem eines weiteren Benutzers wirkverbunden ist.
  19. Computerprogrammprodukt nach Anspruch 14, wobei die Programmanweisungen durch den Prozessor ausführbar sind, um den Prozessor zu veranlassen, Operationen zu initiieren, des Weiteren aufweisend ein Erlangen von zweiten Benutzerinformationen auf Grundlage von Daten, die durch eine erste Benutzereinheit erfasst werden, die mit dem Kl-Sprachantwortsystem des ersten Benutzers im Datenaustausch verbunden wird.
  20. Computerprogrammprodukt nach Anspruch 14, wobei die Programmanweisungen durch den Prozessor ausführbar sind, um den Prozessor zu veranlassen, Operationen zu initiieren, des Weiteren aufweisend ein Verwerfen der ausgewählten Teile des Wissenskorpus, nachdem eine vorgegebene Zeitspanne verstrichen ist, ohne dass von dem zweiten Benutzer eine Aufbewahrungsaufforderung empfangen wird.
DE112021005050.8T 2020-11-05 2021-10-19 Zugriffsberechtigungsprüfung in systemen mit künstlicher intelligenz Pending DE112021005050T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US17/090,091 US11687633B2 (en) 2020-11-05 2020-11-05 Access authentication in AI systems
US17/090,091 2020-11-05
PCT/CN2021/124523 WO2022095686A1 (en) 2020-11-05 2021-10-19 Access authentication in ai systems

Publications (1)

Publication Number Publication Date
DE112021005050T5 true DE112021005050T5 (de) 2023-12-21

Family

ID=81378966

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112021005050.8T Pending DE112021005050T5 (de) 2020-11-05 2021-10-19 Zugriffsberechtigungsprüfung in systemen mit künstlicher intelligenz

Country Status (6)

Country Link
US (1) US11687633B2 (de)
JP (1) JP2023551089A (de)
CN (1) CN116670667A (de)
DE (1) DE112021005050T5 (de)
GB (1) GB2616139B (de)
WO (1) WO2022095686A1 (de)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11929169B2 (en) * 2022-02-09 2024-03-12 Kyndryl, Inc. Personalized sensory feedback
US20230308544A1 (en) * 2022-03-22 2023-09-28 International Business Machines Corporation Digital twin simulation of interactive voice response system call

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7464162B2 (en) 2000-07-10 2008-12-09 Oracle International Corporation Systems and methods for testing whether access to a resource is authorized based on access information
US7194764B2 (en) 2000-07-10 2007-03-20 Oracle International Corporation User authentication
US9038170B2 (en) * 2000-07-10 2015-05-19 Oracle International Corporation Logging access system events
US7640574B1 (en) 2004-06-02 2009-12-29 Sun Microsystems, Inc. Method and system for resource based authentication
US20080201191A1 (en) 2007-02-21 2008-08-21 Novell, Inc. Dynamic workflow resource authentication and discovery
US20100015975A1 (en) * 2008-07-17 2010-01-21 Kota Enterprises, Llc Profile service for sharing rights-enabled mobile profiles
US20160196336A1 (en) 2015-01-02 2016-07-07 International Business Machines Corporation Cognitive Interactive Search Based on Personalized User Model and Context
US10140987B2 (en) * 2016-09-16 2018-11-27 International Business Machines Corporation Aerial drone companion device and a method of operating an aerial drone companion device
US10679608B2 (en) 2016-12-30 2020-06-09 Google Llc Conversation-aware proactive notifications for a voice interface device
US10127227B1 (en) 2017-05-15 2018-11-13 Google Llc Providing access to user-controlled resources by automated assistants
US10791178B1 (en) * 2017-09-26 2020-09-29 Amazon Technologies, Inc. Selecting a device for communications session
US10795332B2 (en) * 2018-01-16 2020-10-06 Resilience Magnum IP, LLC Facilitating automating home control
US10714085B2 (en) 2018-06-06 2020-07-14 Amazon Technologies, Inc. Temporary account association with voice-enabled devices
US10984800B2 (en) * 2018-08-31 2021-04-20 International Business Machines Corporation Personal assistant device responses based on group presence
US11205422B2 (en) * 2018-10-02 2021-12-21 International Business Machines Corporation Methods and systems for managing chatbots with data access
US11120791B2 (en) * 2018-11-15 2021-09-14 International Business Machines Corporation Collaborative artificial intelligence (AI) voice response system control for authorizing a command associated with a calendar event
US11443216B2 (en) 2019-01-30 2022-09-13 International Business Machines Corporation Corpus gap probability modeling
US11218565B2 (en) * 2019-10-23 2022-01-04 Microsoft Technology Licensing, Llc Personalized updates upon invocation of a service
CN111353021B (zh) 2020-02-28 2023-08-18 百度在线网络技术(北京)有限公司 意图识别方法和设备、电子设备和介质

Also Published As

Publication number Publication date
JP2023551089A (ja) 2023-12-07
GB2616139A (en) 2023-08-30
CN116670667A (zh) 2023-08-29
GB202306189D0 (en) 2023-06-14
GB2616139B (en) 2023-12-20
US11687633B2 (en) 2023-06-27
WO2022095686A1 (en) 2022-05-12
US20220138296A1 (en) 2022-05-05

Similar Documents

Publication Publication Date Title
US11556309B2 (en) Virtual assistant configured to automatically customize groups of actions
DE102009017490B4 (de) Positionsbestimmung einer mobilen Vorrichtung
US10922360B2 (en) Ancillary speech generation via query answering in knowledge graphs
DE112021005050T5 (de) Zugriffsberechtigungsprüfung in systemen mit künstlicher intelligenz
DE102017125001A1 (de) Streaming-Dialogmanagement in Echtzeit
US11355123B2 (en) Network data aligning
CN110457569B (zh) 用于多个物联网设备的认知引擎
JP7071504B2 (ja) ネットワーク化されたシステムにおける分散型の識別
DE102012019178A1 (de) Verwendung von Kontextinformationen zum Erleichtern der Verarbeitung von Befehlen bei einem virtuellen Assistenten
US10700935B1 (en) Automatic configuration and operation of complex systems
DE102015118675A1 (de) Aggregatservice mit einer Nutzerschnittstelle
US20200081981A1 (en) System and method for a scene builder
US11159911B2 (en) User adapted location based services
CN111400434B (zh) 基于对先前响应的引用管理语音响应系统的方法和系统
DE112021003923T5 (de) Iterative speicherzuordnungsoperationen bei intelligenten linsen/augmentierten brillen
US20200320619A1 (en) Systems and methods for detecting and preventing fraud in financial institution accounts
US10540960B1 (en) Intelligent command filtering using cones of authentication in an internet of things (IoT) computing environment
DE112021003407T5 (de) Verarbeitung natürlicher sprache
US20180101579A1 (en) Adapting an application based on mood and biometrics
DE112018007850T5 (de) Spracherkennungssystem
DE102022101104A1 (de) Gerät und Verfahren zur Steuerung der Kommunikation von Informationen
DE102021125849A1 (de) Verbindungsverwaltung für mehrere einheiten
DE112021005482T5 (de) Ar- (augmented reality) gestützte selektive geräuscheinbindung aus der umgebung während der ausführung eines sprachbefehls
DE112021003273T5 (de) Direktes datenladen von durch middleware generierten datensätzen
US20220103574A1 (en) Generating and mutually maturing a knowledge corpus

Legal Events

Date Code Title Description
R012 Request for examination validly filed