DE112022001431T5 - Adaptive auswahl von datenmodalitäten für eine effiziente videoerkennung - Google Patents

Adaptive auswahl von datenmodalitäten für eine effiziente videoerkennung Download PDF

Info

Publication number
DE112022001431T5
DE112022001431T5 DE112022001431.8T DE112022001431T DE112022001431T5 DE 112022001431 T5 DE112022001431 T5 DE 112022001431T5 DE 112022001431 T DE112022001431 T DE 112022001431T DE 112022001431 T5 DE112022001431 T5 DE 112022001431T5
Authority
DE
Germany
Prior art keywords
data
video
modality
modalities
video segment
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
DE112022001431.8T
Other languages
English (en)
Inventor
Rameswar Panda
Richard Chen
Quanfu Fan
Rogerio Schmidt Feris
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 DE112022001431T5 publication Critical patent/DE112022001431T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/46Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/80Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
    • G06V10/809Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of classification results, e.g. where the classifiers operate on the same input data
    • G06V10/811Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of classification results, e.g. where the classifiers operate on the same input data the classifiers operating on different input data, e.g. multi-modal recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/25Fusion techniques
    • G06F18/254Fusion techniques of classification results, e.g. of results related to same input data
    • G06F18/256Fusion techniques of classification results, e.g. of results related to same input data of results relating to different input data, e.g. multimodal recognition
    • 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
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • G06N3/0442Recurrent networks, e.g. Hopfield networks characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/09Supervised learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/88Image or video recognition using optical means, e.g. reference filters, holographic masks, frequency domain filters or spatial domain filters
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/49Segmenting video sequences, i.e. computational techniques such as parsing or cutting the sequence, low-level clustering or determining units such as shots or scenes

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Mathematical Physics (AREA)
  • Multimedia (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Image Analysis (AREA)

Abstract

Bereitgestellt wird ein Verfahren für eine adaptive Auswahl von Datenmodalitäten für eine effiziente Videoerkennung. Das Verfahren weist ein Empfangen eines Eingabevideos auf, das eine Abfolge von Videosegmenten mit einer Mehrzahl von Datenmodalitäten aufweist. Das Verfahren weist des Weiteren für ein Videosegment der Abfolge ein Auswählen einer oder mehrerer Datenmodalitäten auf Grundlage von Daten aus, die für das Videosegment stehen. Jede ausgewählte Datenmodalität ist optimal für eine Videoerkennung des Videosegments. Das Verfahren weist des Weiteren für jede ausgewählte Datenmodalität ein Bereitstellen von mindestens einer Dateneingabe, die für das Videosegment mit der ausgewählten Datenmodalität steht, an ein Modell mit maschinellem Lernen, das der ausgewählten Datenmodalität entspricht, sowie ein Erzeugen einer ersten Art von Vorhersage, die für das Videosegment steht, über das Modell mit maschinellem Lernen auf. Das Verfahren weist des Weiteren ein Ermitteln einer zweiten Art von Vorhersage auf, die für das gesamte Eingabevideo steht, indem alle erzeugten Vorhersagen der ersten Art aggregiert werden.

Description

  • HINTERGRUND
  • Das Gebiet von Ausführungsformen der Erfindung bezieht sich im Allgemeinen auf eine Videoerkennung.
  • Videoerkennung ist eine Computer-Vision-Aufgabe auf Grundlage von maschinellem Lernen (ML), die ein Erhalten, Verarbeiten und Analysieren von Daten einbezieht, die von visuellen Quellen wie beispielsweise Videos stammen. Multimodales Lernen wird bei der Videoerkennung weithin verwendet. Multimodales Lernen verwendet verschiedene Datenmodalitäten, um die Leistung eines Modells zu verbessern. Ein mittels multimodalem Lernen trainiertes Modell stellt die gemeinsamen Repräsentationen verschiedener Datenmodalitäten dar. Die meisten herkömmlichen tiefen, multimodalen Modelle legen den Schwerpunkt darauf, wie sich Informationen aus mehreren Datenmodalitäten zusammenführen lassen. Herkömmliche Videoerkennungslösungen, die multimodales Lernen verwenden, sind jedoch rechenintensiv, da diese Lösungen in der Regel alle aus visuellen Quellen stammenden Daten verarbeiten, darunter auch überflüssige/irrelevante Teile der Daten. So kann eine herkömmliche Lösung zum Beispiel die Gesamtheit aus mehreren Datenströmen, die für das Video mit verschiedenen Datenmodalitäten stehen, z.B. ein RGB-Datenstrom und ein Audiodatenstrom, analysieren, um eine in dem Video durchgeführte Aktivität (d.h. Aktion) zu erkennen. Unter Umständen ist es jedoch nicht notwendig, die mehreren Datenströme für alle Videosegmente des Videos zu analysieren, um die in dem Video durchgeführte Aktivität zu erkennen. Es besteht ein Bedarf an der Bereitstellung einer adaptiven, multimodalen Lernrahmenstruktur, die die Effizienz der Videoerkennung verbessert (d.h. die Recheneffizienz erhöht), erhebliche Recheneinsparungen erbringt (d.h. den Rechenaufwand verringert) und die Genauigkeit der Videoerkennung verbessert (d.h. die Genauigkeit/Qualität von Vorhersagen/Klassifikationen erhöht), indem während der Verarbeitung Datenmodalitäten, die optimal für eine Videoerkennung sind, eines jeden Videosegments eines Videos auf Grundlage von Eingaben ausgewählt werden (d.h. datenabhängige Auswahl verschiedener Datenmodalitäten für jedes Videosegment).
  • KURZDARSTELLUNG
  • Ausführungsformen der Erfindung beziehen sich im Allgemeinen auf eine Videoerkennung und im Besonderen auf ein Verfahren und System für eine adaptive Auswahl von Datenmodalitäten für eine effiziente Videoerkennung.
  • Eine Ausführungsform der Erfindung stellt ein Verfahren für eine Videoerkennung bereit. Das Verfahren weist ein Empfangen eines Eingabevideos auf, das eine Abfolge von Videosegmenten mit einer Mehrzahl von Datenmodalitäten aufweist. Das Verfahren weist des Weiteren für ein Videosegment der Abfolge ein Auswählen einer oder mehrerer Datenmodalitäten aus der Mehrzahl von Datenmodalitäten auf Grundlage von Daten auf, die für das Videosegment stehen. Jede ausgewählte Datenmodalität ist optimal für eine Videoerkennung des Videosegments. Das Verfahren weist des Weiteren für jede ausgewählte Datenmodalität ein Bereitstellen von mindestens einer Dateneingabe, die für das Videosegment mit der ausgewählten Datenmodalität steht, an ein Modell mit maschinellem Lernen, das der ausgewählten Datenmodalität entspricht, sowie ein Erzeugen einer ersten Art von Vorhersage, die für das Videosegment steht, über das Modell mit maschinellem Lernen auf. Das Verfahren weist des Weiteren ein Ermitteln einer zweiten Art von Vorhersage auf, die für das gesamte Eingabevideo steht, indem alle erzeugten Vorhersagen der ersten Art aggregiert werden. Die zweite Art von Vorhersage gibt ein Objekt oder eine Aktivität an, das bzw. die in dem Eingabevideo gezeigt wird. Andere Ausführungsformen enthalten ein System für eine Videoerkennung und ein Computerprogrammprodukt für eine Videoerkennung. Diese Merkmale tragen zu dem Vorteil bei, einen optimalen Kompromiss zwischen der Genauigkeit der Videoerkennung und der Recheneffizienz bereitzustellen.
  • Dabei können eines oder mehrere der folgenden Merkmale enthalten sein.
  • Bei manchen Ausführungsformen hat jede Datenmodalität der Mehrzahl von Datenmodalitäten ein entsprechendes Modell mit maschinellem Lernen, das mit einem oder mehreren anderen Modellen mit maschinellem Lernen, die einer oder mehreren anderen Datenmodalitäten der Mehrzahl von Datenmodalitäten entsprechen, gemeinsam trainiert wird. Bei manchen Ausführungsformen weist jedes Modell mit maschinellem Lernen, das jeder Datenmodalität der Mehrzahl von Datenmodalitäten entspricht, ein Teilnetzwerk auf. Diese optionalen Merkmale tragen zu dem Vorteil bei, eine Entscheidungsrichtlinie zu lernen, die eine Auswahl von Datenmodalitäten bevorzugt, die beim Erkennen von Videos eine höhere Recheneffizienz aufweisen.
  • Diese und andere Aspekte, Merkmale und Vorteile von Ausführungsformen der Erfindung werden unter Bezugnahme auf die Zeichnungsfiguren und die ausführliche Beschreibung hierin verständlich und werden anhand der verschiedenen Elemente und Kombinationen realisiert, die in den beigefügten Ansprüchen konkret dargelegt werden. Dabei sollte klar sein, dass sowohl die obige allgemeine Beschreibung als auch die folgende Kurzbeschreibung der Zeichnungen und die ausführliche Beschreibung von Ausführungsformen der Erfindung beispielhaft sind und bevorzugte Ausführungsformen der Erfindung erläutern und keine Beschränkung von Ausführungsformen der Erfindung darstellen, wie sie beansprucht werden.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • Der als Ausführungsformen der Erfindung angesehene Erfindungsgegenstand wird in den Ansprüchen am Ende der Patentschrift konkret aufgezeigt und eindeutig beansprucht. Die oben genannten und weitere Ziele, Merkmale und Vorteile von Ausführungsformen der Erfindung werden aus der folgenden ausführlichen Beschreibung in Verbindung mit den beigefügten Zeichnungen offensichtlich, wobei:
    • 1 eine Beispiel-Datenverarbeitungsarchitektur zum Realisieren einer adaptiven Auswahl von Datenmodalitäten für eine effiziente Videoerkennung gemäß einer Ausführungsform der Erfindung veranschaulicht;
    • 2 ein adaptives, multimodales Beispiel-Lernsystem gemäß einer Ausführungsform der Erfindung veranschaulicht;
    • 3 Beispielkomponenten eines Entscheidungsrichtliniennetzwerks und eines Videoerkennungsnetzwerks, die in dem System enthalten sind, gemäß einer Ausführungsform der Erfindung veranschaulicht;
    • 4 ein Beispiel-Anwendungsszenario, das das System einbezieht, gemäß einer Ausführungsform der Erfindung veranschaulicht;
    • 5A eine erste Abfolge von Videosegmenten mit verschiedenen Modalitäten gemäß einer Ausführungsform der Erfindung veranschaulicht;
    • 5B eine zweite Abfolge von Videosegmenten mit verschiedenen Modalitäten gemäß einer Ausführungsform der Erfindung veranschaulicht;
    • 5C eine dritte Abfolge von Videosegmenten mit verschiedenen Modalitäten gemäß einer Ausführungsform der Erfindung veranschaulicht;
    • 5D eine vierte Abfolge von Videosegmenten mit verschiedenen Modalitäten gemäß einer Ausführungsform der Erfindung veranschaulicht;
    • 5E eine fünfte Abfolge von Videosegmenten mit verschiedenen Modalitäten gemäß einer Ausführungsform der Erfindung veranschaulicht;
    • 5F eine sechste Abfolge von Videosegmenten mit verschiedenen Modalitäten gemäß einer Ausführungsform der Erfindung veranschaulicht;
    • 5G eine siebte Abfolge von Videosegmenten mit verschiedenen Modalitäten gemäß einer Ausführungsform der Erfindung veranschaulicht;
    • 5H eine achte Abfolge von Videosegmenten mit verschiedenen Modalitäten gemäß einer Ausführungsform der Erfindung veranschaulicht;
    • 5I eine neunte Abfolge von Videosegmenten mit verschiedenen Modalitäten gemäß einer Ausführungsform der Erfindung veranschaulicht;
    • 6 ein Ablaufplan eines Beispielprozesses für eine adaptive Auswahl von Datenmodalitäten für eine effiziente Videoerkennung gemäß einer Ausführungsform der Erfindung ist;
    • 7 eine Cloud-Computing-Umgebung gemäß einer Ausführungsform der vorliegenden Erfindung darstellt;
    • 8 Abstraktionsmodellschichten gemäß einer Ausführungsform der vorliegenden Erfindung darstellt; und
    • 9 ein Übersichtsblockschaubild ist, das ein Informationsverarbeitungssystem zeigt, das von Nutzen ist, um eine Ausführungsform der Erfindung zu realisieren.
  • Die ausführliche Beschreibung erläutert beispielhaft und unter Bezugnahme auf die Zeichnungen die bevorzugten Ausführungsformen der Erfindung zusammen mit Vorteilen und Merkmalen.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Ausführungsformen der Erfindung beziehen sich im Allgemeinen auf eine Videoerkennung und im Besonderen auf ein Verfahren und System für eine adaptive Auswahl von Datenmodalitäten für eine effiziente Videoerkennung. Eine Ausführungsform der Erfindung stellt ein Verfahren für eine Videoerkennung bereit. Das Verfahren weist ein Empfangen eines Eingabevideos auf, das eine Abfolge von Videosegmenten mit einer Mehrzahl von Datenmodalitäten aufweist. Das Verfahren weist des Weiteren für ein Videosegment der Abfolge ein Auswählen einer oder mehrerer Datenmodalitäten aus der Mehrzahl von Datenmodalitäten auf Grundlage von Daten aus, die für das Videosegment stehen. Jede ausgewählte Datenmodalität ist optimal für eine Videoerkennung des Videosegments. Das Verfahren weist des Weiteren für jede ausgewählte Datenmodalität ein Bereitstellen von mindestens einer Dateneingabe, die für das Videosegment mit der ausgewählten Datenmodalität steht, an ein Modell mit maschinellem Lernen, das der ausgewählten Datenmodalität entspricht, sowie ein Erzeugen einer ersten Art von Vorhersage, die für das Videosegment steht, über das Modell mit maschinellem Lernen auf. Das Verfahren weist des Weiteren ein Ermitteln einer zweiten Art von Vorhersage auf, die für das gesamte Eingabevideo steht, indem alle erzeugten Vorhersagen der ersten Art aggregiert werden. Die zweite Art von Vorhersage gibt ein Objekt oder eine Aktivität an, das bzw. die in dem Eingabevideo gezeigt wird.
  • Eine weitere Ausführungsform der Erfindung stellt ein Verfahren für eine Videoerkennung bereit. Das System weist mindestens einen Prozessor und eine nicht transitorische, prozessorlesbare Arbeitsspeichereinheit auf, die Anweisungen speichert, die bei Ausführung durch den mindestens einen Prozessor den mindestens einen Prozessor zum Durchführen von Operationen veranlassen. Die Operationen enthalten ein Empfangen eines Eingabevideos, das eine Abfolge von Videosegmenten mit einer Mehrzahl von Datenmodalitäten aufweist. Die Operationen enthalten des Weiteren für ein Videosegment der Abfolge ein Auswählen einer oder mehrerer Datenmodalitäten aus der Mehrzahl von Datenmodalitäten auf Grundlage von Daten, die für das Videosegment stehen. Jede ausgewählte Datenmodalität ist optimal für eine Videoerkennung des Videosegments. Die Anweisungen enthalten des Weiteren für jede ausgewählte Datenmodalität ein Bereitstellen von mindestens einer Dateneingabe, die für das Videosegment mit der ausgewählten Datenmodalität steht, an ein Modell mit maschinellem Lernen, das der ausgewählten Datenmodalität entspricht, sowie ein Erzeugen einer ersten Art von Vorhersage, die für das Videosegment steht, über das Modell mit maschinellem Lernen. Die Anweisungen enthalten des Weiteren ein Ermitteln einer zweiten Art von Vorhersage, die für das gesamte Eingabevideo steht, indem alle erzeugten Vorhersagen der ersten Art aggregiert werden. Die zweite Art von Vorhersage gibt ein Objekt oder eine Aktivität an, das bzw. die in dem Eingabevideo gezeigt wird.
  • Eine Ausführungsform der Erfindung stellt ein Computerprogrammprodukt für eine Videoerkennung bereit. Das Computerprogrammprodukt weist ein computerlesbares Speichermedium mit darin enthaltenen Programmanweisungen auf. Die Programmanweisungen sind durch einen Prozessor ausführbar, um den Prozessor zum Empfangen eines Eingabevideos zu veranlassen, das eine Abfolge von Videosegmenten mit einer Mehrzahl von Datenmodalitäten aufweist. Die Programmanweisungen sind durch den Prozessor ausführbar, um den Prozessor des Weiteren zu veranlassen, für ein Videosegment der Abfolge eine oder mehrere Datenmodalitäten aus der Mehrzahl von Datenmodalitäten auf Grundlage von Daten auszuwählen, die für das Videosegment stehen. Jede ausgewählte Datenmodalität ist optimal für eine Videoerkennung des Videosegments. Die Programmanweisungen sind durch den Prozessor ausführbar, um den Prozessor des Weiteren zu veranlassen, für jede ausgewählte Datenmodalität mindestens eine Dateneingabe, die für das Videosegment mit der ausgewählten Datenmodalität steht, einem Modell mit maschinellem Lernen bereitzustellen, das der ausgewählten Datenmodalität entspricht, sowie über das Modell mit maschinellem Lernen eine erste Art von Vorhersage zu erzeugen, die für das Videosegment steht. Die Programmanweisungen sind durch den Prozessor ausführbar, um den Prozessor des Weiteren zu veranlassen, eine zweite Art von Vorhersage zu ermitteln, die für das gesamte Eingabevideo steht, indem alle erzeugten Vorhersagen der ersten Art aggregiert werden. Die zweite Art von Vorhersage gibt ein Objekt oder eine Aktivität an, das bzw. die in dem Eingabevideo gezeigt wird.
  • 1 veranschaulicht eine Beispiel-Datenverarbeitungsarchitektur 300 zum Realisieren einer adaptiven Auswahl von Datenmodalitäten für eine effiziente Videoerkennung gemäß einer Ausführungsform der Erfindung. Bei einer Ausführungsform ist die Datenverarbeitungsarchitektur 300 eine zentralisierte Datenverarbeitungsarchitektur. Bei einer weiteren Ausführungsform ist die Datenverarbeitungsarchitektur 300 eine verteilte Datenverarbeitungsarchitektur.
  • Bei einer Ausführungsform weist die Datenverarbeitungsarchitektur 300 Datenverarbeitungsressourcen wie z.B. eine oder mehrere Prozessoreinheiten 310 und eine oder mehrere Speichereinheiten 320 auf, ohne jedoch darauf beschränkt zu sein. In der Datenverarbeitungsarchitektur 300 können eine oder mehrere Anwendungen ausgeführt/betrieben werden, die die Datenverarbeitungsressourcen der Datenverarbeitungsarchitektur 300 verwenden. Bei einer Ausführungsform enthalten die Anwendungen in der Datenverarbeitungsarchitektur 300 ein adaptives, multimodales Lernsystem 330, ohne jedoch darauf beschränkt zu sein. Wie im Folgenden hierin ausführlich beschrieben, wird das System 330 für eine datenabhängige Auswahl verschiedener Modalitäten für eine effiziente Videoerkennung konfiguriert.
  • Bei einer Ausführungsform wird das System 330 konfiguriert, um über eine Verbindung (z.B. eine drahtlose Verbindung wie beispielsweise eine WLAN-Verbindung oder eine Mobilfunkverbindung, eine drahtgebundene Verbindung oder eine Kombination hiervon) mit einer oder mehreren elektronischen Einheiten 350 und/oder einer oder mehreren entfernt angeordneten Server-Einheiten 360 Daten auszutauschen.
  • Bei einer Ausführungsform weist eine elektronische Einheit 350 eine oder mehrere Datenverarbeitungsressourcen auf, z.B. eine oder mehrere Prozessoreinheiten 351 und eine oder mehrere Speichereinheiten 352, ohne jedoch darauf beschränkt zu sein. Eine oder mehrere Anwendungen können auf einer elektronischen Einheit 350 ausgeführt/betrieben werden, die die eine oder die mehreren Datenverarbeitungsressourcen der elektronischen Einheit 350 verwendet, z.B. eine oder mehrere Software-Anwendungen 354, die in die elektronische Einheit 350 geladen oder heruntergeladen werden, ohne jedoch darauf beschränkt zu sein. Beispiele für die Software-Anwendungen 354 enthalten Anwendungen mit künstlicher Intelligenz (KI) usw., ohne jedoch darauf beschränkt zu sein.
  • Beispiele für eine elektronische Einheit 350 enthalten eine mobile elektronische Einheit (z.B. ein Tablet, ein Smartphone, ein Laptop usw.), eine am Körper tragbare Einheit (z.B. eine Smartwatch usw.), eine Einheit für das Internet der Dinge (Internet of Things, loT) usw., ohne jedoch darauf beschränkt zu sein.
  • Bei einer Ausführungsform weist eine elektronische Einheit 350 eine oder mehrere Eingabe/Ausgabe(E/A)-Einheiten auf, die in die elektronische Einheit 350 integriert oder mit dieser verbunden werden, z.B. eine Tastatur, ein Tastenfeld, eine Berührungsschnittstelle, ein Anzeigebildschirm usw. Ein Benutzer kann ein E/A-Modul 353 einer elektronischen Einheit 350 verwenden, um eine oder mehrere Benutzerpräferenzen zu konfigurieren, einen oder mehrere Parameter zu konfigurieren, eine Eingabe bereitzustellen usw.
  • Bei einer Ausführungsform können eine elektronische Einheit 350 und/oder eine entfernt angeordnete Server-Einheit 360 eine Quelle von mindestens einem der folgenden Elemente sein: ein Eingabevideo, ein Trainingsvideo.
  • Bei einer Ausführungsform können ein oder mehrere Online-Dienste (z.B. Kl-Dienste), die in einer entfernt angeordneten Server-Einheit 360 gehostet werden, und/oder eine oder mehrere der Software-Anwendungen 354 (z.B. KI-Anwendungen), die in einer elektronischen Einheit 350 betrieben werden, auf das System 330 zugreifen oder es verwenden. Zum Beispiel können bei einer Ausführungsform ein virtueller Assistent, eine Suchmaschine oder eine weitere Art der Software-Anwendung 354, die in einer elektronischen Einheit 350 betrieben werden, das System 330 aufrufen, um eine KI-Aufgabe durchzuführen.
  • 2 veranschaulicht ein adaptives, multimodales Beispiel-Lernsystem 330 gemäß einer Ausführungsform der Erfindung. Ein Eingabevideo weist eine Abfolge von Videosegmenten 400 mit einer oder mehreren Datenmodalitäten auf. Beispiele für Datenmodalitäten enthalten eine RGB-Modalität, eine Audiomodalität, eine Optischer-Fluss (optical flow)-Modalität usw., ohne jedoch darauf beschränkt zu sein.
  • Die Abfolge der Videosegmente 400 wird als ein oder mehrere Datenströme dargestellt. Jeder Datenstrom weist eine Abfolge von Dateneingaben auf, die für die Abfolge der Videosegmente 400 mit einer bestimmten Datenmodalität stehen. Beispiele für Datenströme enthalten einen RGB-Datenstrom, der eine Abfolge von RGB-Eingaben aufweist (d.h. RGB-Einzelbilder der Videosegmente 400), einen Audiodatenstrom, der eine Abfolge von Audioeingaben aufweist (d.h. Audio-Frames der Videosegmente 400), einen Optischer-Fluss-Datenstrom, der eine Abfolge von Optical-Flow-Eingaben aufweist (d.h. Optischer-Fluss-Einzelbilder der Videosegmente 400), und/oder einen RGB-Differenzdatenstrom, der eine Abfolge von RGB-Differenzeingaben aufweist (d.h. RGB-Differenzeinzelbilder der Videosegmente 400).
  • Bei einer Ausführungsform weist das System 330 ein multimodales Entscheidungsrichtliniennetzwerk 410 und ein Videoerkennungsnetzwerk 430 auf. Das Videoerkennungsnetzwerk 430 weist eine Mehrzahl von Modellen mit maschinellem Lernen auf, die für eine Videoerkennung verschiedener Videosegmente 400 mit einer Mehrzahl von Datenmodalitäten trainiert werden. Bei einer Ausführungsform enthält die Mehrzahl von Modellen mit maschinellem Lernen verschiedene Teilnetzwerke 435 (3). Jedes Teilnetzwerk 435 der verschiedenen Teilnetzwerke 435 entspricht einer bestimmten Datenmodalität, die sich von einer weiteren Datenmodalität unterscheidet, der ein weiteres Teilnetzwerk 435 der verschiedenen Teilnetzwerke 435 entspricht. Jedes Teilnetzwerk 435 wird konfiguriert, um Dateneingaben zu empfangen und zu verarbeiten, die für Videosegmente 400 mit einer entsprechenden Datenmodalität stehen.
  • Bei einer Ausführungsform wird das multimodale Entscheidungsrichtliniennetzwerk 410 konfiguriert, um: (1) ein Eingabevideo zu empfangen, das eine Abfolge der Videosegmente 400 aufweist, und (2) für jedes Videosegment 400 des Eingabevideos auf Grundlage von Dateneingaben, die für das Videosegment 400 mit der Mehrzahl von Datenmodalitäten stehen, aus der Mehrzahl von Datenmodalitäten eine oder mehrere Datenmodalitäten 420 auszuwählen, die optimal für eine Videoerkennung des Videosegment 400 sind. Für jedes Videosegment 400 des Eingabevideos wählt das multimodale Entscheidungsrichtliniennetzwerk 410 während der Verarbeitung eine oder mehrere Datenmodalitäten 420 aus, die optimal für eine Videoerkennung des Videosegments sind, abhängig von Dateneingaben, die für das Videosegment 400 mit der Mehrzahl von Datenmodalitäten stehen. Für jedes Videosegment 400 des Eingabevideos realisiert das multimodale Entscheidungsrichtliniennetzwerk 410 eine adaptive Auswahl der Datenmodalitäten 420, die für eine Videoerkennung des Videosegments 400 geeignet sind, wobei die Auswahl datenabhängig ist. Während der Videoerkennung lässt sich mithilfe einer jeden ausgewählten Datenmodalität 420 erkennen, an welcher Stelle in einem Datenstrom hingesehen werden soll (wenn der Datenstrom ein RGB-Datenstrom oder ein Optical-Flow-Datenstrom ist) oder an welcher Stelle in dem Datenstrom hingehört werden soll (wenn der Datenstrom ein Audiodatenstrom ist).
  • Bei einer Ausführungsform wird das Videoerkennungsnetzwerk 430 für jedes Videosegment 400 eines Eingabevideos konfiguriert, um: (1) eine oder mehrere der ausgewählten Datenmodalitäten 420 zu empfangen, die optimal für eine Videoerkennung des Videosegments 400 sind (z.B. aus dem Entscheidungsrichtliniennetzwerk 410), (2) eine oder mehrere Dateneingaben, die für das Videosegment 400 mit der einen oder den mehreren ausgewählten Datenmodalitäten 420 stehen, an ein oder mehrere Teilnetzwerke 435 weiterzuleiten, die der einen oder den mehreren ausgewählten Datenmodalitäten 420 entsprechen, und (3) eine oder mehrere erste Arten von Vorhersagen (d.h. Klassifikationen) zu erzeugen, die für das Videosegment 400 stehen, indem die eine oder die mehreren Dateneingaben über das eine oder die mehreren Teilnetzwerke 435 verarbeitet werden. Konkret wird für jede ausgewählte Datenmodalität 420 mindestens eine Dateneingabe, die für das Videosegment 400 mit der ausgewählten Datenmodalität 420 steht, an ein Teilnetzwerk 435 weitergeleitet, das der ausgewählten Datenmodalität 420 entspricht. Während der Videoerkennung des Videosegments 400 werden nur Dateneingaben, die für das Videosegment 400 mit der einen oder den mehreren ausgewählten Datenmodalitäten 420 stehen, über das eine oder die mehreren Teilnetzwerke 435 verarbeitet; etwaige Dateneingaben, die für das Videosegment 400 mit einer nicht ausgewählten Datenmodalität 421 stehen (3), werden übersprungen/übergangen (d.h. nicht verarbeitet). Jede ausgewählte Datenmodalität 420 ist relevant für die Videoerkennung des Videosegments 400, während jede nicht ausgewählte Datenmodalität 421 überflüssig/für die Videoerkennung irrelevant ist. Indem die nicht ausgewählten Datenmodalitäten 421 übersprungen/übergangen werden, muss nicht die Gesamtheit der mehreren Datenströme, die für das Eingabevideo mit verschiedenen Datenmodalitäten stehen, verarbeitet werden, wodurch die Recheneffizienz erhöht, der Rechenaufwand verringert und die Genauigkeit der Videoerkennung verbessert wird.
  • Bei einer Ausführungsform ist eine erste Art von Vorhersage, die für ein Videosegment 400 steht, eine Vorhersage auf Segmentebene, die ein Objekt oder eine Aktivität angibt, das bzw. die in dem Videosegment 400 gezeigt wird, für dessen Erkennung die verschiedenen Teilnetzwerke 435 trainiert werden.
  • Bei einer Ausführungsform weist das Videoerkennungsnetzwerk 430 eine Zusammenführungseinheit 436 auf (3). Die Zusammenführungseinheit 436 wird konfiguriert, um: (1) für jedes Videosegment 400 eines Eingabevideos eine oder mehrere erste Arten von Vorhersagen (d.h. Vorhersagen auf Segmentebene) zu empfangen, die für das Videosegment 400 stehen (z.B. von einem oder mehreren der verschiedenen Teilnetzwerke 435), und (2) eine zweite Art von Vorhersage 440 zu ermitteln, die für das gesamte Eingabevideo steht, indem ein Durchschnittswert aller Vorhersagen der ersten Art, die für alle Videosegmente 400 des Eingabevideos empfangen werden, gebildet wird (d.h. diese aggregiert werden).
  • Bei einer Ausführungsform ist eine zweite Art von Vorhersage 440, die für ein gesamtes Eingabevideo steht, eine Vorhersage auf Videoebene, die ein Objekt oder eine Aktivität angibt, das bzw. die in dem Eingabevideo gezeigt wird, für dessen Erkennung die verschiedenen Teilnetzwerke 435 trainiert werden.
  • Bei einer Ausführungsform werden die verschiedenen Teilnetzwerke 435 gemeinsam trainiert (z.B. über eine späte Zusammenführung mit lernbaren Gewichtungen).
  • 3 veranschaulicht Beispielkomponenten des Entscheidungsrichtliniennetzwerks 410 und des Videoerkennungsnetzwerks 430 gemäß einer Ausführungsform der Erfindung. Dabei soll V allgemein für ein Eingabevideo stehen, das eine Abfolge von Videosegmenten {s1, s2,..., sT} mit K Datenmodalitäten {M1, M2,..., MK} aufweist. Für jedes Videosegment des Eingabevideos V wird das Entscheidungsrichtliniennetzwerk 410 konfiguriert, um zu ermitteln, welche der K Datenmodalitäten für eine Videoerkennung des Videosegments verwendet werden soll, um die Genauigkeit der Videoerkennung (d.h. die Genauigkeit/Qualität von Vorhersagen/Klassifikationen) zu verbessern und zugleich die Recheneffizienz zu berücksichtigen.
  • Bei einer Ausführungsform weist das Entscheidungsrichtliniennetzwerk 410 eine Einheit 415 auf, die konfiguriert wird, um über verschiedene Zeitschritte hinweg eine Kausalität in einem Eingabevideo V zu modellieren. Bei einer Ausführungsform weist die Einheit 415 auf: (a) einen Extraktor eines gemeinsamen Merkmals mit einem entsprechenden trainierbaren Parameter θΦ und (2) ein langes Kurzzeitgedächtnis (Long Short-Term Memory, LSTM) mit einem entsprechenden trainierbaren Parameter θLSTM. Bei jedem Zeitschritt t wird der Extraktor eines gemeinsamen Merkmals konfiguriert, um: (1) Dateneingaben (z.B. RGB-Eingaben, RGB-Differenzeingaben und/oder Audioeingaben) zu empfangen, die für ein aktuelles Videosegment st mit den K Datenmodalitäten stehen, und (2) aus den Dateneingaben ein gemeinsames Merkmalft zu extrahieren, das dem aktuellen Videosegment st entspricht.
  • Bei jedem Zeitschritt t wird das LSTM konfiguriert, um: (1) ein gemeinsames Merkmal ft, das einem aktuellen Videosegment st entspricht (z.B. aus dem Extraktor eines gemeinsamen Merkmals), frühere verborgene Zustände ht-1 und Zellenausgaben ot-1 zu empfangen, sowie (2) aktuelle verborgene Zustände ht und Zellenausgaben ot gemäß der unten bereitgestellten Gleichung (1) zu berechnen: h t , o t = LSTM ( f t ; h t 1 ; o t 1 )
    Figure DE112022001431T5_0001
  • Bei einer Ausführungsform weist das Entscheidungsrichtliniennetzwerk 410 K vollständig verbundene (Fully-Connected, FC) Schichten 416 mit entsprechenden trainierbaren Parametern θFC1 ..., θFCK auf, wobei jede der K Datenmodalitäten eine entsprechende FC-Schicht 416 hat.
  • Bei einer Ausführungsform wird das Entscheidungsrichtliniennetzwerk 410 bei jedem Zeitschritt t für jede Datenmodalität k der K Datenmodalitäten (k ∈ [1,..., K]) konfiguriert, um: (1) eine entsprechende Richtlinienverteilung auf Grundlage von aktuellen verborgenen Zuständen ht zu schätzen und (2) eine Gumbel-Softmax-Operation auf die entsprechende Richtlinienverteilung anzuwenden, um ein Sample aus einer entsprechenden Binärentscheidung ut,k zu erhalten (d.h. ein Sample aus einer Gumbel-Softmax-Verteilung zu erhalten), wobei die Binärentscheidung ut,k angibt, ob die Datenmodalität k für ein aktuelles Videosegment st ausgewählt oder übersprungen/übergangen werden soll (d.h. Entscheidungsrichtlinie für die Datenmodalität k). Wenn die Binärentscheidung ut,k zum Beispiel gleich 1 ist, wird die Datenmodalität k für das aktuelle Videosegment st ausgewählt, sodass Dateneingaben, die für das aktuelle Videosegment st mit der Datenmodalität k stehen, zur Verarbeitung an das Videoerkennungsnetzwerk 430 weitergeleitet werden (d.h. die Datenmodalität k ist eine ausgewählte Datenmodalität 420). Wenn die Binärentscheidung ut,k gleich 0 ist, wird die Datenmodalität k für das aktuelle Videosegment st übersprungen/übergangen, sodass keine Dateneingaben, die für das aktuelle Videosegment st mit der Datenmodalität k stehen, zur Verarbeitung an das Videoerkennungsnetzwerk 430 weitergeleitet werden (d.h. die Datenmodalität k ist eine nicht ausgewählte Datenmodalität 421). Nur Dateneingaben, die für das aktuelle Videosegment st mit jeder ausgewählten Datenmodalität 420 für das aktuelle Videosegment st stehen, werden zur Verarbeitung an das Videoerkennungsnetzwerk 430 weitergeleitet.
  • So wird bei einer Ausführungsform zum Beispiel bei jedem Zeitschritt t für jede Datenmodalität k der K Datenmodalitäten das Entscheidungsrichtliniennetzwerk 410 konfiguriert, um: (1) über eine entsprechende FC-Schicht 416 eine entsprechende Richtlinienverteilung zk mit Richtlinien-Logits auf Grundlage von aktuellen verborgenen Zuständen ht und einem trainierbaren Parameter θFCk zu erzeugen, der der FC-Schicht 416 entspricht, wobei zk ∈ ℝ2, und zk = FC(ht, θFCk), sowie (2) eine Gumbel-Softmax-Operation auf die entsprechende Richtlinienverteilung zk anzuwenden, um aus einer Gumbel-Softmax-Verteilung gemäß der unten bereitgestellten Gleichung (2) ein diskretes Sample zu erhalten, das für eine entsprechende Binärentscheidung ut,k steht: P k ^ = arg max ( log  z i , k + G i , k )
    Figure DE112022001431T5_0002
    wobei i ∈ {0, 1}, Gi,k eine Standard-Gumbel-Verteilung, Gi,k = -log(-logUi,k), ist und Ui,k als Sample aus einer einheitlichen i.i.d-Verteilung Unif (0, 1) erhalten wird.
  • Bei einer Ausführungsform wird P k ^
    Figure DE112022001431T5_0003
    als ein 1-aus-nVektor dargestellt, und ein 1-aus-n-Code wird relaxiert, um gemäß der unten bereitgestellten Gleichung (3) einen reellwertigen Vektor Pk zu berechnen: P i , k = e x p ( ( log  z i , k + G i , k ) / τ ) j { 0,1 } e x p ( ( lo  j , k + G j , k ) / τ )
    Figure DE112022001431T5_0004
    wobei τ ein Temperaturparameter ist, der die Eigenständigkeit von Pk steuert.
  • Bei einer Ausführungsform weist das Videoerkennungsnetzwerk 430 KTeilnetzwerke 435 mit entsprechenden trainierbaren Parametern θΨ1 ,..., θΨK auf, wobei jede der K Datenmodalitäten ein entsprechendes Teilnetzwerk 435 hat.
  • Bei einer Ausführungsform hat das System 330 mindestens zwei verschiedene Betriebsphasen: eine Trainingsphase, während der die KTeilnetzwerke 435 gemeinsam trainiert werden, und eine Inferenzphase, während der die resultierenden trainierten KTeilnetzwerke 435 für eine Videoerkennung eingesetzt werden.
  • Um die Genauigkeit der Videoerkennung (d.h. die Genauigkeit/Qualität von Vorhersagen/Klassifikationen) zu erhöhen, sowie die Auswahl von Datenmodalitäten mit einem größeren Rechenbedarf zu verringern und so die Recheneffizienz zu erhöhen, enthält die Trainingsphase bei einer Ausführungsform ein Minimieren eines Verlusts gemäß der unten bereitgestellten Gleichung (4): E ( V , γ ) D t r a i n [ y   l o g ( P ( V ; θ ) ) + k = 1 K λ k C k ] , C k = ( | U k | 0 / C ) 2 ,  wenn richtig ,  an sonsten  γ
    Figure DE112022001431T5_0005
    wobei P(V; Θ) eine Vorhersage für ein Trainingsvideo V ist, y ein 1-aus-n-codiertes Grundwissensetikett für das Trainingsvideo V ist, λk ein Aufwand ist, der dem Verarbeiten der Datenmodalität k zugehörig ist, Uk eine Entscheidungsrichtlinie für die Datenmodalität k ist, Ck ein Maß für den Anteil von Videosegmenten aus einer Gesamtmenge C von Videosegmenten ist, die die Datenmodalität k ausgewählt haben, wenn die Vorhersage korrekt ist, und γ ein Parameter ist, der fehlerhafte Vorhersagen benachteiligt. γ und λk werden gemeinsam verwendet, um Kompromisse zwischen der Genauigkeit der Videoerkennung und der Recheneffizienz zu steuern. Wenn zum Beispiel sowohl γ als auch λk auf 0 gesetzt werden, führt dies zu einem Training ohne einen Verlust an Recheneffizienz. Der erste Teil der Gleichung (4) steht für einen Standard-Kreuzentropie-Verlust, um die Genauigkeit der Videoerkennung zu messen, und der zweite Teil der Gleichung (4) ermöglicht dem Videoerkennungsnetzwerk 430, eine Entscheidungspolitik zu lernen, die eine Auswahl von Datenmodalitäten bevorzugt, die beim Erkennen von Videos eine bessere Recheneffizienz aufweisen (z.B. benötigt das Verarbeiten von RGB-Eingaben einen höheren Rechenaufwand als das Verarbeiten von Audioeingaben).
  • Ein durch das System 330 bereitgestelltes Eingabevideo V soll das Mähen eines Rasens zeigen, und das Eingabevideo V soll eine Abfolge von Videosegmenten mit der RGB-Modalität, der Optischer-Fluss-Modalität und der Audiomodalität aufweisen. Konkret wird die Abfolge von Videosegmenten als ein RGB-Datenstrom, der eine Abfolge von RGB-Eingaben aufweist (d.h. RGB-Einzelbilder der Videosegmente), die für die Videosegmente mit der RGB-Modalität stehen, als ein Optischer-Fluss-Datenstrom, der eine Abfolge von Optischer-Fluss-Eingaben aufweist (d.h. Optischer-Fluss-Einzelbilder der Videosegmente), die für die Videosegmente mit der Optischer-Fluss-Modalität stehen, und als ein Audiodatenstrom dargestellt, der eine Abfolge von Audioeingaben aufweist (d.h. Audio-Frames der Videosegmente), die für die Videosegmente mit der Audiomodalität stehen. Beim Ermitteln, ob die Optischer-Fluss-Modalität für jedes Videosegment ausgewählt werden soll, verwendet das Entscheidungsrichtliniennetzwerk 410 bei einer Ausführungsform einen RGB-Differenzdatenstrom, der eine Abfolge von RGB-Differenzeingaben (d.h. RGB-Differenzeinzelbilder der Videosegmente) anstatt des Optischer-Fluss-Datenstroms D aufweist, um den Rechenaufwand zu verringern.
  • Wie in 3 gezeigt wird, wird bei dem Zeitschritt t für ein aktuelles Videosegment st das Entscheidungsrichtliniennetzwerk 410 konfiguriert, um: (1) aus dem RGB-Datenstrom RGB-Eingaben st,rgb zu empfangen, die für das aktuelle Videosegment st mit der RGB-Modalität stehen, (2) aus dem RGB-Differenzdatenstrom RGB-Differenzeingaben st,rgbd zu empfangen, die für das aktuelle Videosegment st mit der Optischer-Fluss-Modalität stehen, (3) aus dem Audiodatenstrom Audioeingaben st,aud zu empfangen, die für das aktuelle Videosegment st mit der Audiomodalität stehen, und (4) teilweise auf Grundlage der empfangenen Eingaben einen entsprechenden Binärentscheidungsrichtlinien-Vektor zu erzeugen. Jedes Element des Binärentscheidungsrichtlinien-Vektors ist ein Binärwert (z.B. eine Binärentscheidung), die entweder der RGB-, der Optischer-Fluss- oder der Audiomodalität entspricht, und das Element steht dafür, ob die entsprechende Datenmodalität für das aktuelle Videosegment st ausgewählt oder übersprungen/übergangen werden soll. Wenn zum Beispiel ein Element des Binärentscheidungsrichtlinien-Vektors, das der RGB-Modalität entspricht, gleich 1 ist, ist die RGB-Modalität eine ausgewählte Datenmodalität 420 für das aktuelle Videosegment st; wenn das Element hingegen gleich 0 ist, ist die RGB-Modalität eine nicht ausgewählte Datenmodalität 421.
  • Das Videoerkennungsnetzwerk 430 soll ein erstes Teilnetzwerk 435 („Teilnetz 1“), das der RGB-Modalität entspricht, ein zweites Teilnetzwerk 435 („Teilnetz 2“), das der Optischer-Fluss-Modalität entspricht, und ein drittes Teilnetzwerk 435 („Teilnetz 3“) enthalten, das der Audiomodalität entspricht. Ein Binärentscheidungsrichtlinien-Vektor, der einem aktuellen Videosegment st entspricht, soll angeben, dass sowohl die RGB- als auch die Optischer-Fluss- und Audiomodalität ausgewählte Datenmodalitäten 420 für das aktuelle Videosegment st sind. Für das aktuelle Videosegment st wird das Videoerkennungsnetzwerk 430 konfiguriert, um: (1) über das Teilnetz 1 eine erste Vorhersage auf Segmentebene zu erzeugen, indem die RGB-Eingaben st,rgb zur Verarbeitung an das Teilnetz 1 weitergeleitet werden, (2) über das Teilnetz 2 eine zweite Vorhersage auf Segmentebene zu erzeugen, indem Optischer-Fluss-Eingaben st,of (aus dem Optischer-Fluss-Datenstrom), die für das aktuelle Videosegment st mit der Optischer-Fluss-Modalität zur Verarbeitung an das Teilnetz 2 weitergeleitet werden, und (3) über das Teilnetz 3 eine dritte Vorhersage auf Segmentebene zu erzeugen, indem die Audioeingaben st,aud zur Verarbeitung an das Teilnetz 3 weitergeleitet werden.
  • Die Zusammenführungseinheit 436 wird konfiguriert, um: (1) alle durch das Teilnetz 1, das Teilnetz 2 und das Teilnetz 3 erzeugten Vorhersagen auf Segmentebene für alle Videosegmente (z.B. das aktuelle Videosegment st) des Eingabevideos V zu empfangen, und (2) eine Vorhersage auf Videoebene für das gesamte Eingabevideo V zu ermitteln, indem ein Durchschnittswert aller empfangenen Vorhersagen auf Segmentebene gebildet wird (d.h. diese aggregiert werden). Wie in 3 gezeigt wird, lautet die Vorhersage auf Videoebene, die für das gesamte Eingabevideo ermittelt wird, „Rasenmähen“, da das Eingabevideo V ein Mähen des Rasens zeigt.
  • 4 veranschaulicht ein Beispiel-Anwendungsszenario 330, das das System einbezieht, gemäß einer Ausführungsform der Erfindung. Dabei soll ein durch das System 330 bereitgestelltes Eingabevideo V einen bellenden Hund zeigen, und das Eingabevideo V weist eine Abfolge von Videosegmenten s1, s2,..., sC mit der RGB-Modalität und der Audiomodalität auf. Konkret wird die Abfolge von Videosegmenten dargestellt als: (1) ein RGB-Datenstrom, der eine Abfolge von RGB-Eingaben s1,rgb, s2,rgb,..., sC,rgb aufweist, die für die Videosegmente mit der RGB-Modalität stehen, und (2) ein Audiodatenstrom, der eine Abfolge von Audioeingaben s1,aud, s2,aud,..., sC,aud aufweist, die für die Videosegmente mit der Audiomodalität stehen.
  • Bei jedem Zeitschritt t wird das Entscheidungsrichtliniennetzwerk 410 konfiguriert, um: (1) auf Grundlage der RGB-Eingaben st,rgb (aus dem RGB-Datenstrom), die für ein aktuelles Videosegment st mit der RGB-Modalität stehen, eine Richtlinienverteilung zrgb mit Richtlinien-Logits zu erzeugen, die der RGB-Modalität entsprechen, (2) auf Grundlage der Audioeingaben st,aud (aus dem Audiodatenstrom), die für das aktuelle Videosegment st mit der Audiomodalität stehen, eine Richtlinienverteilung zaud mit Richtlinien-Logits zu erzeugen, die der Audiomodalität entsprechen, (3) eine Gumbel-Softmax-Operation auf die Richtlinienverteilung zrgb anzuwenden, um ein Sample aus einer Binärentscheidung ut,rgb zu erhalten, die angibt, ob die RGB-Modalität für das aktuelle st ausgewählt oder übersprungen/übergangen werden soll, und (4) eine Gumbel-Softmax-Operation auf die Richtlinienverteilung zaud anzuwenden, um ein Sample aus einer Binärentscheidung ut,aud zu erhalten, die angibt, ob die Audiomodalität für das aktuelle Videosegment st ausgewählt oder übersprungen/übergangen werden soll.
  • Wie in 4 gezeigt wird, ist die RGB-Modalität, wenn die Binärentscheidungen u2,rgb, u5,rgb und uC,rgb gleich 1 sind, nur für die Videosegmente s2, s5 und sC eine ausgewählte Datenmodalität 420, sodass nur die RGB-Eingaben s2,rgb, s5,rgb und sC,rgb (aus dem RGB-Datenstrom) (zur besseren Veranschaulichung mit einem Rahmen hervorgehoben), die für die Videosegmente s2, s5 und sC mit der RGB-Modalität stehen, an ein erstes Teilnetzwerk 435 weitergeleitet werden, das der RGB-Modalität entspricht. Das erste Teilnetzwerk 435 erzeugt Vorhersagen auf Segmentebene für die Videosegmente s2, s5 und sC, indem die RGB-Eingaben s2,rgb, s5,rg bzw. sC,rgb verarbeitet werden. Wie in 4 des Weiteren gezeigt wird, ist die Audiomodalität, wenn die Binärentscheidungen u2,aud. u3,aud und uC,aud gleich 1 sind, nur für die Videosegmente s2, s3 und sC eine ausgewählte Datenmodalität 420, sodass nur die Audioeingaben s2,aud, s3,aud und sC,aud (aus dem Audiodatenstrom) (zur besseren Veranschaulichung mit einem Rahmen hervorgehoben), die für die Videosegmente s2, s3 und sC mit der Audiomodalität stehen, an ein zweites Teilnetzwerk 435 weitergeleitet werden, das der Audiomodalität entspricht. Das zweite Teilnetzwerk 435 erzeugt Vorhersagen auf Segmentebene für die Videosegmente s2, s3 und sC, indem die Audioeingaben s2,aud. s3,aud bzw. sC,aud verarbeitet werden.
  • Wie in 4 gezeigt wird, empfängt die Zusammenführungseinheit 436 alle Vorhersagen auf Segmentebene, die durch das erste und zweite Teilnetzwerk 435 erzeugt werden, und ermittelt eine Vorhersage auf Videoebene für das gesamte Eingabevideo V, indem ein Durchschnittswert aller empfangenen Vorhersagen auf Segmentebene gebildet wird (d.h. diese aggregiert werden). Wie in 4 gezeigt wird, lautet die Vorhersage auf Videoebene, die für das gesamte Eingabevideo ermittelt wird, „Hundegebell“, da das Eingabevideo V den bellenden Hund zeigt.
  • 5A veranschaulicht eine erste Abfolge 500 von Videosegmenten mit verschiedenen Modalitäten gemäß einer Ausführungsform der Erfindung. Dabei soll ein durch das System 330 bereitgestelltes Eingabevideo V einen Fechtkampf zeigen, und das Eingabevideo V weist eine erste Abfolge 500 von Videosegmenten mit der RGB-Modalität und der Audiomodalität auf. Wie in 5A gezeigt wird, wird die erste Abfolge 500 von Videosegmenten zum Beispiel dargestellt als: (1) ein RGB-Datenstrom 501, der eine Abfolge von RGB-Eingaben aufweist, die für die Videosegmente mit der RGB-Modalität stehen, und (2) ein Audiodatenstrom 502, der eine Abfolge von Audioeingaben aufweist, die für die Videosegmente mit der Audiomodalität stehen.
  • Wie in 5A gezeigt wird, wählt das System 330 die RGB-Modalität nur für das zweite und dritte Videosegment des Eingabevideos V aus, sodass nur RGB-Eingaben, die für das zweite und dritte Videosegment stehen, durch das System 330 für eine Videoerkennung verarbeitet werden. Wie in 5A des Weiteren gezeigt wird, überspringt/übergeht das System 330 die Audiomodalität für alle Videosegmente des Eingabevideos V, sodass der gesamte Audiodatenstrom 502 nicht für eine Videoerkennung verarbeitet wird. Da das Eingabevideo V einen Fechtkampf zeigt, kann eine durch das System 330 ermittelte Vorhersage auf Videoebene für das gesamte Eingabevideo V „Fechten“ lauten.
  • 5B veranschaulicht eine zweite Abfolge 510 von Videosegmenten mit verschiedenen Modalitäten gemäß einer Ausführungsform der Erfindung. Dabei soll ein durch das System 330 bereitgestelltes Eingabevideo V das Spielen auf einem Klavier zeigen, und das Eingabevideo V weist eine zweite Abfolge 510 von Videosegmenten mit der RGB-Modalität und der Audiomodalität auf. Wie in 5B gezeigt wird, wird die zweite Abfolge 510 von Videosegmenten zum Beispiel dargestellt als: (1) ein RGB-Datenstrom 511, der eine Abfolge von RGB-Eingaben aufweist, die für die Videosegmente mit der RGB-Modalität stehen, und (2) ein Audiodatenstrom 512, der eine Abfolge von Audioeingaben aufweist, die für die Videosegmente mit der Audiomodalität stehen.
  • Wie in 5B gezeigt wird, wählt das System 330 die RGB-Modalität nur für das zweite Videosegment des Eingabevideos V aus, sodass nur RGB-Eingaben, die für das zweite Videosegment stehen, durch das System 330 für eine Videoerkennung verarbeitet werden. Wie in 5B des Weiteren gezeigt wird, wählt das System 330 die Audiomodalität für alle Videosegmente des Eingabevideos V aus, sodass der gesamte Audiodatenstrom 512 durch das System 330 für eine Videoerkennung verarbeitet wird. Da das Eingabevideo V das Spielen auf dem Klavier zeigt, kann eine durch das System 330 ermittelte Vorhersage auf Videoebene für das gesamte Eingabevideo V „Klavierspiel“ lauten.
  • 5C veranschaulicht eine dritte Abfolge 520 von Videosegmenten mit verschiedenen Modalitäten gemäß einer Ausführungsform der Erfindung. Dabei soll ein durch das System 330 bereitgestelltes Eingabevideo V das Hacken von Holz zeigen, und das Eingabevideo V weist eine dritte Abfolge 520 von Videosegmenten mit der RGB-Modalität und der Optischer-Fluss-Modalität auf. Wie in 5C gezeigt wird, wird die dritte Abfolge 520 von Videosegmenten zum Beispiel dargestellt als: (1) ein RGB-Datenstrom 521, der eine Abfolge von RGB-Eingaben aufweist, die für die Videosegmente mit der RGB-Modalität stehen, und (2) ein Optischer-Fluss-Datenstrom 522, der eine Abfolge von Optischer-Fluss-Eingaben aufweist, die für die Videosegmente mit der Optischer-Fluss-Modalität stehen.
  • Wie in 5C gezeigt wird, wählt das System 330 die RGB-Modalität nur für das erste und dritte Videosegment des Eingabevideos V aus, sodass nur RGB-Eingaben, die für das erste und dritte Videosegment stehen, durch das System 330 für eine Videoerkennung verarbeitet werden. Wie in 5C des Weiteren gezeigt wird, wählt das System 330 die Optischer-Fluss-Modalität nur für das zweite und dritte Videosegment des Eingabevideos V aus, sodass nur Optischer-Fluss-Eingaben, die für das zweite und dritte Videosegmente stehen, durch das System 330 für eine Videoerkennung verarbeitet werden. Da das Eingabevideo V das Hacken von Holz zeigt, kann eine durch das System 330 ermittelte Vorhersage auf Videoebene für das gesamte Eingabevideo V „Holzhacken“ lauten.
  • 5D veranschaulicht eine vierte Abfolge 530 von Videosegmenten mit verschiedenen Modalitäten gemäß einer Ausführungsform der Erfindung. Dabei soll ein durch das System 330 bereitgestelltes Eingabevideo V das Zerreißen von Papier zeigen, und das Eingabevideo V weist eine vierte Abfolge 530 von Videosegmenten mit der RGB-Modalität und der Optischer-Fluss-Modalität auf. Wie in 5D gezeigt wird, wird die vierte Abfolge 530 von Videosegmenten zum Beispiel dargestellt als: (1) ein RGB-Datenstrom 531, der eine Abfolge von RGB-Eingaben aufweist, die für die Videosegmente mit der RGB-Modalität stehen, und (2) ein Optischer-Fluss-Datenstrom 532, der eine Abfolge von Optischer-Fluss-Eingaben aufweist, die für die Videosegmente mit der Optischer-Fluss-Modalität stehen.
  • Wie in 5D gezeigt wird, wählt das System 330 die RGB-Modalität nur für das erste, zweite und dritte Videosegment des Eingabevideos Vaus, sodass nur RGB-Eingaben, die für das erste, zweite und dritte Videosegment stehen, durch das System 330 für eine Videoerkennung verarbeitet werden. Wie in 5D des Weiteren gezeigt wird, wählt das System 330 die Optischer-Fluss-Modalität nur für das zweite Videosegment des Eingabevideos V aus, sodass nur Optischer-Fluss-Eingaben, die für das zweite Videosegment stehen, durch das System 330 für eine Videoerkennung verarbeitet werden. Da das Eingabevideo V das Zerreißen von Papier zeigt, kann eine durch das System 330 ermittelte Vorhersage auf Videoebene für das gesamte Eingabevideo V „Zerreißen von Papier“ lauten.
  • 5E veranschaulicht eine fünfte Abfolge 540 von Videosegmenten mit verschiedenen Modalitäten gemäß einer Ausführungsform der Erfindung. Dabei soll ein durch das System 330 bereitgestelltes Eingabevideo V das das Spielen auf einem Akkordeon zeigen, und das Eingabevideo V weist eine fünfte Abfolge 540 von Videosegmenten mit der RGB-Modalität, der Optischer-Fluss-Modalität und der Audiomodalität auf. Wie in 5E gezeigt wird, wird die fünfte Abfolge 540 von Videosegmenten zum Beispiel dargestellt als: (1) ein RGB-Datenstrom 541, der eine Abfolge von RGB-Eingaben aufweist, die für die Videosegmente mit der RGB-Modalität stehen, und (2) ein Optischer-Fluss-Datenstrom 542, der eine Abfolge von Optischer-Fluss-Eingaben aufweist, die für die Videosegmente mit der Optischer-Fluss-Modalität stehen, sowie (3) ein Audiodatenstrom 543, der eine Abfolge von Audioeingaben aufweist, die für die Videosegmente mit der Audiomodalität stehen.
  • Wie in 5E gezeigt wird, wählt das System 330 die RGB-Modalität nur für das erste und vierte Videosegment des Eingabevideos Vaus, sodass nur RGB-Eingaben, die für das erste und vierte Videosegment stehen, durch das System 330 für eine Videoerkennung verarbeitet werden. Wie in 5E des Weiteren gezeigt wird, wählt das System 330 die Optischer-Fluss-Modalität nur für das sechste Videosegment des Eingabevideos V aus, sodass nur Optischer-Fluss-Eingaben, die für das sechste Videosegment stehen, durch das System 330 für eine Videoerkennung verarbeitet werden. Wie in 5E des Weiteren gezeigt wird, wählt das System 330 die RGB-Modalität nur für das erste bis sechste Videosegmente des Eingabevideos V aus, sodass nur RGB-Eingaben, die für das erste bis sechste Videosegment stehen, durch das System 330 für eine Videoerkennung verarbeitet werden. Da das Eingabevideo V das Spielen auf dem Akkordeon zeigt, kann eine durch das System 330 ermittelte Vorhersage auf Videoebene für das gesamte Eingabevideo V „Akkordeonspiel“ lauten.
  • 5F veranschaulicht eine sechste Abfolge 550 von Videosegmenten mit verschiedenen Modalitäten gemäß einer Ausführungsform der Erfindung. Dabei soll ein durch das System 330 bereitgestelltes Eingabevideo V ein Cheerleading zeigen, und das Eingabevideo V weist eine sechste Abfolge 550 von Videosegmenten mit der RGB-Modalität und der Audiomodalität auf. Wie in 5F gezeigt wird, wird die sechste Abfolge 550 von Videosegmenten zum Beispiel dargestellt als: (1) ein RGB-Datenstrom 551, der eine Abfolge von RGB-Eingaben aufweist, die für die Videosegmente mit der RGB-Modalität stehen, und (2) ein Audiodatenstrom 552, der eine Abfolge von Audioeingaben aufweist, die für die Videosegmente mit der Audiomodalität stehen.
  • Wie in 5F gezeigt wird, wählt das System 330 die RGB-Modalität nur für das erste und zweite Videosegment des Eingabevideos V aus, sodass nur RGB-Eingaben, die für das erste und zweite Videosegmente stehen, durch das System 330 für eine Videoerkennung verarbeitet werden. Wie in 5F des Weiteren gezeigt wird, wählt das System 330 die RGB-Modalität nur für das erste und zweite Videosegment des Eingabevideos V aus, sodass nur RGB-Eingaben, die für das erste und zweite Videosegment stehen, durch das System 330 für eine Videoerkennung verarbeitet werden. Da das Eingabevideo V Cheerleading zeigt, kann eine durch das System 330 ermittelte Vorhersage auf Videoebene für das gesamte Eingabevideo V „Cheerleading“ lauten.
  • 5G veranschaulicht eine siebte Abfolge 560 von Videosegmenten mit verschiedenen Modalitäten gemäß einer Ausführungsform der Erfindung. Dabei soll ein durch das System 330 bereitgestelltes Eingabevideo V das Spielen auf einer Mundharmonika zeigen, und das Eingabevideo V weist eine siebte Abfolge 560 von Videosegmenten mit der RGB-Modalität und der Audiomodalität auf. Wie in 5G gezeigt wird, wird die siebte Abfolge 560 von Videosegmenten zum Beispiel dargestellt als: (1) ein RGB-Datenstrom 561, der eine Abfolge von RGB-Eingaben aufweist, die für die Videosegmente mit der RGB-Modalität stehen, und (2) ein Audiodatenstrom 562, der eine Abfolge von Audioeingaben aufweist, die für die Videosegmente mit der Audiomodalität stehen.
  • Wie in 5G gezeigt wird, wählt das System 330 die RGB-Modalität nur für das dritte Videosegment des Eingabevideos V aus, sodass nur RGB-Eingaben, die für das dritte Videosegment stehen, durch das System 330 für eine Videoerkennung verarbeitet werden. Wie in 5G des Weiteren gezeigt wird, wählt das System 330 die Audiomodalität für alle Videosegmente des Eingabevideos V aus, sodass der gesamte Audiodatenstrom 562 durch das System 330 für eine Videoerkennung verarbeitet wird. Da das Eingabevideo V das Spielen auf der Mundharmonika zeigt, kann eine durch das System 330 ermittelte Vorhersage auf Videoebene für das gesamte Eingabevideo V „Mundharmonikaspiel“ lauten.
  • 5H veranschaulicht eine achte Abfolge 570 von Videosegmenten mit verschiedenen Modalitäten gemäß einer Ausführungsform der Erfindung. Dabei soll ein durch das System 330 bereitgestelltes Eingabevideo V das Hacken von Holz zeigen, und das Eingabevideo V weist eine achte Abfolge 570 von Videosegmenten mit der RGB-Modalität und der Optischer-Fluss-Modalität auf. Wie in 5H gezeigt wird, wird die achte Abfolge 570 von Videosegmenten zum Beispiel dargestellt als: (1) ein RGB-Datenstrom 571, der eine Abfolge von RGB-Eingaben aufweist, die für die Videosegmente mit der RGB-Modalität stehen, und (2) ein Optischer-Fluss-Datenstrom 572, der eine Abfolge von Optischer-Fluss-Eingaben aufweist, die für die Videosegmente mit der Optischer-Fluss-Modalität stehen.
  • Wie in 5H gezeigt wird, wählt das System 330 die RGB-Modalität nur für das zweite Videosegment des Eingabevideos V aus, sodass nur RGB-Eingaben, die für das zweite Videosegment stehen, durch das System 330 für eine Videoerkennung verarbeitet werden. Wie in 5H des Weiteren gezeigt wird, wählt das System 330 die Optischer-Fluss-Modalität nur für das zweite und dritte Videosegment des Eingabevideos Vaus, sodass nur Optischer-Fluss-Eingaben, die für das zweite und dritte Videosegment stehen, durch das System 330 für eine Videoerkennung verarbeitet werden. Da das Eingabevideo V das Hacken von Holz zeigt, kann eine durch das System 330 ermittelte Vorhersage auf Videoebene für das gesamte Eingabevideo V „Holzhacken“ lauten.
  • 5I veranschaulicht eine neunte Abfolge 580 von Videosegmenten mit verschiedenen Modalitäten gemäß einer Ausführungsform der Erfindung. Dabei soll ein durch das System 330 bereitgestelltes Eingabevideo VStepptanz zeigen, und das Eingabevideo V weist eine neunte Abfolge 580 von Videosegmenten mit der RGB-Modalität, der Optischer-Fluss-Modalität und der Audiomodalität auf. Wie in 5I gezeigt wird, wird die neunte Abfolge 580 von Videosegmenten zum Beispiel dargestellt als: (1) ein RGB-Datenstrom 581, der eine Abfolge von RGB-Eingaben aufweist, die für die Videosegmente mit der RGB-Modalität stehen, (2) ein Optischer-Fluss-Datenstrom 582, der eine Abfolge von Optischer-Fluss-Eingaben aufweist, die für die Videosegmente mit der Optischer-Fluss-Modalität stehen, sowie (3) ein Audiodatenstrom 583, der eine Abfolge von Audioeingaben aufweist, die für die Videosegmente mit der Audiomodalität stehen.
  • Wie in 5I gezeigt wird, wählt das System 330 die RGB-Modalität nur für das erste Videosegment des Eingabevideos V aus, sodass nur RGB-Eingaben, die für das erste Videosegment stehen, durch das System 330 für eine Videoerkennung verarbeitet werden. Wie in 5I des Weiteren gezeigt wird, wählt das System 330 die Optischer-Fluss-Modalität nur für das zweite Videosegment des Eingabevideos Vaus, sodass nur Optischer-Fluss-Eingaben, die für das zweite Videosegment stehen, durch das System 330 für eine Videoerkennung verarbeitet werden. Wie in 5I des Weiteren gezeigt wird, wählt das System 330 die Audiomodalität für alle Videosegmente des Eingabevideos V aus, sodass der gesamte Audiodatenstrom 583 durch das System 330 für eine Videoerkennung verarbeitet wird. Da das Eingabevideo V Stepptanz zeigt, kann eine durch das System 330 ermittelte Vorhersage auf Videoebene für das gesamte Eingabevideo V „Stepptanz“ lauten.
  • 6 ist ein Ablaufplan eines Beispielprozesses 600 für eine adaptive Auswahl von Datenmodalitäten für eine effiziente Videoerkennung gemäß einer Ausführungsform der Erfindung. Ein Prozessblock 601 enthält ein Empfangen eines Eingabevideos, das eine Abfolge von Videosegmenten mit einer Mehrzahl von Datenmodalitäten aufweist. Ein Prozessblock 602 enthält ein Auswählen einer oder mehrerer Datenmodalitäten aus der Mehrzahl von Datenmodalitäten auf Grundlage von Daten, die für das Videosegment stehen, für ein Videosegment der Abfolge, wobei jede ausgewählte Datenmodalität optimal für eine Videoerkennung des Videosegments ist. Ein Prozessblock 603 enthält für jede ausgewählte Datenmodalität ein Bereitstellen von mindestens einer Dateneingabe, die für das Videosegment mit der ausgewählten Datenmodalität steht, an ein Modell mit maschinellem Lernen (z.B. ein Teilnetzwerk), das der ausgewählten Datenmodalität entspricht, sowie ein Erzeugen einer ersten Art von Vorhersage (z.B. einer Vorhersage auf Segmentebene), die für das Videosegment steht, über das Modell mit maschinellem Lernen. Ein Prozessblock 604 enthält ein Ermitteln einer zweiten Art von Vorhersage (z.B. einer Vorhersage auf Videoebene), die für das gesamte Eingabevideo steht, indem alle erzeugten Vorhersagen der ersten Art aggregiert werden, wobei die zweite Art von Vorhersage ein Objekt oder eine Aktivität angibt, die in dem Eingabevideo gezeigt wird.
  • Bei einer Ausführungsform werden die Prozessblöcke 601 bis 604 durch eine oder mehrere Komponenten des Systems 330 durchgeführt.
  • Es sei klargestellt, dass die Realisierung der hierin angeführten Lehren nicht auf eine Cloud-Computing-Umgebung beschränkt ist, obwohl diese Offenbarung eine ausführliche Beschreibung von Cloud Computing enthält. 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, Arbeitsspeicher, 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. Bei einer Ausführungsform enthält dieses Cloud-Modell mindestens fünf Eigenschaften, mindestens drei Dienstmodelle und mindestens vier Einsatzmodelle.
  • 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 persönliche digitale Assistenten) 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. Bei einer Ausführungsform gibt es eine gefühlte Standortunabhängigkeit), da der Benutzer im Allgemeinen keine Kontrolle bzw. Kenntnis über den genauen Standort der bereitgestellten Ressourcen hat, aber in der Lage ist, 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 Ressourcenverbrauch kann überwacht, gesteuert und gemeldet werden, wodurch sowohl für den Anbieter als auch für den Benutzer des verwendeten Dienstes Transparenz bereitgestellt 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. Bei einer Ausführungsform wird sie durch die Organisation oder einen Dritten verwaltet und steht in den eigenen Räumen oder fremden Räumen.
    • 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). Bei einer Ausführungsform wird sie durch die Organisationen oder einen Dritten verwaltet werden und steht in den eigenen Räumen oder fremden Räumen.
    • 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, Benutzergemeinschaft 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 Lastausgleich 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 enthält.
  • 7 stellt eine Cloud-Computing-Umgebung 50 gemäß einer Ausführungsform der vorliegenden Erfindung dar. Wie gezeigt wird, weist die Cloud-Computing-Umgebung 50 bei einer Ausführungsform einen oder mehrere Cloud-Computing-Knoten 10 auf, mit denen von Cloud-Nutzern verwendete lokale Datenverarbeitungseinheiten wie ein elektronischer Assistent (PDA, Personal Digital Assistant) oder ein Mobiltelefon 54A, ein Desktop Computer 54B, ein Laptop Computer 54C und/oder ein Automobil-Computersystem 54N Daten austauschen. Bei einer Ausführungsform tauschen die Knoten 10 Daten miteinander aus. Bei einer Ausführungsform werden sie physisch oder virtuell in einem oder mehreren Netzwerken wie Private, Community, Public oder Hybrid Clouds zusammengefasst (nicht gezeigt), wie vorstehend beschrieben wurde, oder aber in einer Kombination daraus. Dies ermöglicht es der Cloud-Computing-Umgebung 50, 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 5 gezeigten Datenverarbeitungseinheiten 54A bis N lediglich veranschaulichend sein sollen und dass die Datenverarbeitungsknoten 10 und die Cloud-Computing-Umgebung 50 ü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.
  • 8 stellt einen Satz von funktionalen Abstraktionsmodellschichten dar, die gemäß einer Ausführungsform der vorliegenden Erfindung durch eine Cloud-Computing-Umgebung 50 bereitgestellt werden. Es sollte von vornherein klar sein, dass die in 8 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 60 enthält Hardware- und Software-Komponenten. Zu Beispielen für Hardware-Komponenten gehören: Mainframe Computer 61; auf der RISC-Architektur (Reduced Instruction Set Computer) beruhende Server 62; Server 63; Blade-Server 64; Speichereinheiten 65; und Netzwerke sowie Netzwerkkomponenten 66. In einigen Ausführungsformen enthalten Software-Komponenten eine Netzwerk-Anwendungsserver-Software 67 und eine Datenbank-Software 68.
  • Bei einer Ausführungsform stellt eine Virtualisierungsschicht 70 eine Abstraktionsschicht bereit, welche die folgenden Beispiele für virtuelle Einheiten zur Verfügung stellt: virtuelle Server 71; virtueller Speicher 72; virtuelle Netzwerke 73, die virtuelle private Netzwerke aufweisen; virtuelle Anwendungen und Betriebssysteme 74; sowie virtuelle Clients 75.
  • Bei einer Ausführungsform stellt eine Verwaltungsschicht 80 die nachfolgend beschriebenen Funktionen bereit. Eine Ressourcen-Bereitstellung 81 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 82 stellen die Kostenverfolgung beim Verwenden von Ressourcen innerhalb der Cloud-Computing-Umgebung sowie die Abrechnung oder Rechnungsstellung für den Verbrauch dieser Ressourcen bereit. Bei einer Ausführungsform enthalten diese Ressourcen Anwendungs-Software-Lizenzen. 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 83 stellt Nutzern und Systemadministratoren einen Zugriff auf die Cloud-Computing-Umgebung bereit. Eine Verwaltung des Dienstumfangs 84 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) 85 stellt die Vorab-Anordnung und die Beschaffung von Cloud-Computing-Ressourcen, für die eine zukünftige Anforderung vorausgesehen wird, gemäß einer SLA bereit.
  • Bei einer Ausführungsform stellt eine Arbeitslastenschicht 90 Beispiele für die Funktionalität bereit, für die die Cloud-Computing-Umgebung verwendet wird. Bei einer Ausführungsform enthalten Beispiele für Auslastungen und Funktionen, die von dieser Schicht bereitgestellt werden können: Zuordnung und Navigation 91; Software-Entwicklung und Lebenszyklusverwaltung 92; Bereitstellung von virtuellen Schulungen 93; Datenanalyseverarbeitung 94; Transaktionsverarbeitung 95; und KI 96 (z.B. ein adaptives, multimodales Lernsystem 330) (1)).
  • 9 ist ein Übersichtsblockschaubild, das ein Informationsverarbeitungssystem 700 zeigt, das von Nutzen ist, um eine Ausführungsform der Erfindung zu realisieren. Das Computersystem enthält einen oder mehrere Prozessoren wie z.B. einen Prozessor 702. Der Prozessor 702 wird mit einer Datenübertragungsinfrastruktur 704 (z.B. einem Datenübertragungsbus, einer Querverbinderschiene oder einem Netzwerk) verbunden.
  • Das Computersystem kann eine Anzeigeschnittstelle 706 enthalten, die Grafiken, Text und andere Daten von der Sprach-Datenübertragungsinfrastruktur 704 (oder von einem nicht abgebildeten Einzelbildpuffer) zur Anzeige auf einer Anzeigeeinheit 708 weiterleitet. Bei einer Ausführungsform enthält das Computersystem außerdem einen Hauptarbeitsspeicher 710, vorzugsweise einen Direktzugriffsspeicher (RAM), und darüber hinaus einen sekundären Arbeitsspeicher 712. Bei einer Ausführungsform enthält der sekundäre Arbeitsspeicher 712 zum Beispiel ein Festplattenlaufwerk 714 und/oder ein austauschbares Speicherlaufwerk 716, bei dem es sich zum Beispiel um ein Diskettenlaufwerk, ein Magnetbandlaufwerk oder ein optisches Plattenlaufwerk handelt. Das austauschbare Speicherlaufwerk 716 liest auf eine dem Fachmann hinlänglich bekannte Weise aus einer austauschbaren Speichereinheit 718 und/oder schreibt in eine solche Einheit. Bei der austauschbaren Speichereinheit 718 handelt es sich zum Beispiel um eine Diskette, eine Compact Disc, ein Magnetband oder eine optische Platte usw., die von dem austauschbaren Speicherlaufwerk 716 gelesen wird bzw. auf die es schreibt. Wie offensichtlich sein dürfte, enthält die austauschbare Speichereinheit 718 ein computerlesbares Medium, auf dem Computer-Software und/oder Daten gespeichert werden.
  • Bei alternativen Ausführungsformen kann der sekundäre Arbeitsspeicher 712 ein anderes, ähnliches Mittel enthalten, damit Computerprogramme oder andere in das Computersystem geladen werden können. Ein solches Mittel enthält zum Beispiel eine austauschbare Speichereinheit 720 und eine Schnittstelle 722. Beispiele für ein solches Mittel enthalten ein Programmpaket und eine Paketschnittstelle (wie sie z.B. in Videospieleinheiten zu finden ist), einen austauschbaren Arbeitsspeicher-Chip (z.B. einen EPROM oder PROM) und ein zugehöriges Socket sowie andere austauschbare Speichereinheiten 720 und Schnittstellen 722, die eine Übertragung von Software und Daten von der austauschbaren Speichereinheit 720 an das Computersystem ermöglichen.
  • Bei einer Ausführungsform enthält das Computersystem außerdem eine Datenübertragungsschnittstelle 724. Die Datenübertragungsschnittstelle 724 ermöglicht die Übertragung von Software und Daten zwischen dem Computersystem und externen Einheiten. Bei einer Ausführungsform enthalten Beispiele für die Datenübertragungsschnittstelle 724 einen Modem, eine Netzwerkschnittstelle (z.B. eine Ethernet-Karte), einen Datenübertragungsanschluss oder einen PCMCIA-Steckplatz und eine PCMCIA-Karte usw. Bei einer Ausführungsform liegen Software und Daten, die über die Datenübertragungsschnittstelle 724 übertragen werden, in Form von Signalen vor, bei denen es sich zum Beispiel um elektronische, elektromagnetische, optische oder anderweitige Signale handeln kann, die durch die Datenübertragungsschnittstelle 724 empfangen werden können. Diese Signale werden der Datenübertragungsschnittstelle 724 über einen Datenübertragungspfad (d.h. Kanal) 726 bereitgestellt. Bei einer Ausführungsform überträgt dieser Datenübertragungspfad 726 Signale und wird unter Verwendung eines Drahts oder Kabels, eines Lichtwellenleiters, einer Telefonleitung, einer Mobilfunkverbindung, einer Hochfrequenz(HF)-Verbindung und/oder anderen Datenübertragungskanälen realisiert.
  • Bei Ausführungsformen der 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 von Ausführungsformen 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 (Read-Only Memory, ROM) ein löschbarer programmierbarer Nur-Lese-Speicher (Erasable Programmable Read-Only Memory (EPROM) bzw. Flash-Speicher), ein statischer Direktzugriffsspeicher (Static Random Access Memory, 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 flüchtige Signale an sich aufgefasst werden, wie zum Beispiel Funkwellen oder andere sich frei ausbreitende elektromagnetische Wellen, elektromagnetische Wellen, die sich durch einen Wellenleiter oder ein anderes Übertragungsmedium ausbreiten (z.B. durch ein Lichtwellenleiterkabel geleitete 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 (Local Area Network, LAN), ein Weitverkehrsnetzwerk (Wide Area Network, 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 Operationen von Ausführungsformen 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 sein, darunter 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 von Ausführungsformen der vorliegenden Erfindung durchzuführen.
  • Aspekte von Ausführungsformen der Erfindung werden hierin unter Bezugnahme auf Ablaufplandarstellungen und/oder Blockschaubilder von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Es wird darauf hingewiesen, dass jeder Block der Ablaufplandarstellungen und/oder der Blockschaubilder sowie Kombinationen von Blöcken in den Ablaufplandarstellungen 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.
  • Der Ablaufplan und die Blockschaubilder in den Figuren veranschaulichen die Architektur, Funktionalität und den Betrieb möglicher Realisierungen von Systemen, Verfahren, und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der 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, gleichzeitig, 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 Ablaufplandarstellungen sowie Kombinationen aus Blöcken in den Blockschaubildern und/oder den Ablaufplandarstellungen 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.
  • Aus der obigen Beschreibung wird ersichtlich, dass Ausführungsformen der Erfindung ein System, Computerprogrammprodukt und Verfahren zum Realisieren der Ausführungsformen der Erfindung bereitstellen. Ausführungsformen der Erfindung stellen des Weiteren ein nicht transitorisches, computernutzbares Speichermedium zum Realisieren der Ausführungsformen der Erfindung bereit. Das nicht transitorische, computernutzbare Speichermedium hat ein computerlesbares Programm, wobei das Programm bei Verarbeitung in einem Computer den Computer veranlasst, die hierin beschriebenen Schritte von Ausführungsformen der Erfindung zu realisieren. Sofern nicht anderweitig erwähnt, bedeutet eine Bezugnahme in den Ansprüchen auf ein Element in der Einzahl nicht „ein einziges“, sondern vielmehr „ein oder mehrere“. Alle struktur- und funktionsbezogenen Äquivalente der oben beschriebenen beispielhaften Ausführungsform, die dem Fachmann gegenwärtig bekannt sind oder zu einem späteren Zeitpunkt bekannt sein werden, sollen durch die vorliegenden Ansprüche mit eingeschlossen sein. Kein Anspruchselement hierin soll gemäß den Bestimmungen von 35 USC, Abschnitt 112, Absatz 6, aufgefasst werden, es sei denn, das Element ist ausdrücklich unter Verwendung des Begriffs „Mittel für“ oder „Schritt zum“ angeführt.
  • Die hier verwendete Begrifflichkeit dient lediglich zur Beschreibung bestimmter Ausführungsformen der Erfindung und ist nicht als Beschränkung gedacht. Im hier verwendeten Sinne sollen die Singularformen „ein/e/r,“ und „der/die/das“ auch die Pluralformen enthalten, sofern der Kontext dies nicht eindeutig anders vorgibt. Des Weiteren wird darauf verwiesen, dass die Begriffe „weist auf“ und/oder „aufweisend“ in dieser Beschreibung das Vorhandensein der genannten Merkmale, Ganzzahlen, Schritte, Operationen, Elemente und/oder Komponenten angeben, ohne jedoch das Vorhandensein oder die Hinzufügung von einem/einer oder mehreren anderen Merkmalen, Ganzzahlen, Schritten, Operationen, Elementen, Komponenten und/oder Gruppen derselben auszuschließen.
  • Die betreffenden Strukturen, Materialien, Handlungen und Äquivalente aller Mittel oder Schritte zusätzlich zu den Funktionselementen in den nachstehenden Ansprüchen sollen sämtliche Strukturen, Materialien oder Handlungen enthalten, mit denen die Funktion in Verbindung mit anderen beanspruchten Elementen durchgeführt werden kann, wie sie hier ausdrücklich beansprucht werden.
  • Die Beschreibungen der verschiedenen Ausführungsformen der 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. Verfahren für eine Videoerkennung, aufweisend: Empfangen eines Eingabevideos, das eine Abfolge von Videosegmenten mit einer Mehrzahl von Datenmodalitäten aufweist; Auswählen einer oder mehrerer Datenmodalitäten aus der Mehrzahl von Datenmodalitäten auf Grundlage von Daten, die für das Videosegment stehen, für ein Videosegment der Abfolge, wobei jede ausgewählte Datenmodalität optimal für eine Videoerkennung des Videosegments ist; Bereitstellen von mindestens einer Dateneingabe, die für das Videosegment mit der ausgewählten Datenmodalität steht, für jede ausgewählte Datenmodalität an ein Modell mit maschinellem Lernen, das der ausgewählten Datenmodalität entspricht, sowie Erzeugen einer ersten Art von Vorhersage, die für das Videosegment steht, über das Modell mit maschinellem Lernen; und Ermitteln einer zweiten Art von Vorhersage, die für das gesamte Eingabevideo steht, indem alle erzeugten Vorhersagen der ersten Art aggregiert werden, wobei die zweite Art von Vorhersage ein Objekt oder eine Aktivität angibt, das bzw. die in dem Eingabevideo gezeigt wird.
  2. Verfahren nach Anspruch 1, wobei die Mehrzahl von Datenmodalitäten mindestens eines aus einer RGB-Modalität, einer Optischer-Fluss-Modalität und einer Audiomodalität aufweist.
  3. Verfahren nach Anspruch 1, wobei die Daten, die für das Videosegment stehen, mindestens eines aus einem oder mehreren RGB-Einzelbildern, einem oder mehreren RGB-Differenzeinzelbildern und einem oder mehreren Audio-Frames aufweisen.
  4. Verfahren nach Anspruch 1, wobei jede Datenmodalität der Mehrzahl von Datenmodalitäten ein entsprechendes Modell mit maschinellem Lernen hat, das mit einem oder mehreren anderen Modellen mit maschinellem Lernen, die einer oder mehreren anderen Datenmodalitäten der Mehrzahl von Datenmodalitäten entsprechen, gemeinsam trainiert wird.
  5. Verfahren nach Anspruch 4, wobei jedes Modell mit maschinellem Lernen, das jeder Datenmodalität der Mehrzahl von Datenmodalitäten entspricht, ein Teilnetzwerk aufweist.
  6. Verfahren nach Anspruch 1, wobei die eine oder die mehreren ausgewählten Datenmodalitäten einen optimalen Kompromiss zwischen der Genauigkeit der Videoerkennung und der Recheneffizienz bereitstellen.
  7. Verfahren nach Anspruch 1, des Weiteren aufweisend: Extrahieren eines gemeinsamen Merkmals aus den Dateneingaben, die für das Videosegment mit der Mehrzahl von Datenmodalitäten stehen, über einen Extraktor eines gemeinsamen Merkmals; Berechnen von verborgenen Zuständen für das Videosegment teilweise auf Grundlage des extrahierten gemeinsamen Merkmals über ein langes Kurzzeitgedächtnis (Long Short-Term Memory, LSTM); und für jede Datenmodalität der Mehrzahl von Datenmodalitäten: Schätzen einer entsprechenden Richtlinienverteilung auf Grundlage der verborgenen Zustände für das Videosegment; und Anwenden einer Gumbel-Softmax-Operation auf die entsprechende Richtlinienverteilung, um ein Sample aus einer entsprechenden Binärentscheidung zu erhalten, die angibt, ob die Datenmodalität für die Videoerkennung des Videosegments ausgewählt werden soll.
  8. Verfahren nach Anspruch 1, wobei jede Datenmodalität der Mehrzahl von Datenmodalitäten, die nicht ausgewählt wird, für die Videoerkennung des Videosegments überflüssig ist.
  9. System für eine Videoerkennung, aufweisend: mindestens einen Prozessor; und eine nicht transitorische, prozessorlesbare Arbeitsspeichereinheit, die Anweisungen speichert, die bei Ausführung durch den mindestens einen Prozessor den mindestens einen Prozessor zum Durchführen von Operationen veranlassen, enthaltend: Empfangen eines Eingabevideos, das eine Abfolge von Videosegmenten mit einer Mehrzahl von Datenmodalitäten aufweist; Auswählen einer oder mehrerer Datenmodalitäten aus der Mehrzahl von Datenmodalitäten auf Grundlage von Daten, die für das Videosegment stehen, für ein Videosegment der Abfolge, wobei jede ausgewählte Datenmodalität optimal für eine Videoerkennung des Videosegments ist; Bereitstellen von mindestens einer Dateneingabe, die für das Videosegment mit der ausgewählten Datenmodalität steht, für jede ausgewählte Datenmodalität an ein Modell mit maschinellem Lernen, das der ausgewählten Datenmodalität entspricht, sowie Erzeugen einer ersten Art von Vorhersage, die für das Videosegment steht, über das Modell mit maschinellem Lernen; und Ermitteln einer zweiten Art von Vorhersage, die für das gesamte Eingabevideo steht, indem alle erzeugten Vorhersagen der ersten Art aggregiert werden, wobei die zweite Art von Vorhersage ein Objekt oder eine Aktivität angibt, das bzw. die in dem Eingabevideo gezeigt wird.
  10. Verfahren nach Anspruch 9, wobei die Mehrzahl von Datenmodalitäten mindestens eines aus einer RGB-Modalität, einer Optischer-Fluss-Modalität und einer Audiomodalität aufweist.
  11. System nach Anspruch 9, wobei die Daten, die für das Videosegment stehen, mindestens eines aus einem oder mehreren RGB-Einzelbildern, einem oder mehreren RGB-Differenzeinzelbildern und einem oder mehreren Audio-Frames aufweisen.
  12. System nach Anspruch 9, wobei jede Datenmodalität der Mehrzahl von Datenmodalitäten ein entsprechendes Modell mit maschinellem Lernen hat, das mit einem oder mehreren anderen Modellen mit maschinellem Lernen, die einer oder mehreren anderen Datenmodalitäten der Mehrzahl von Datenmodalitäten entsprechen, gemeinsam trainiert wird.
  13. System nach Anspruch 12, wobei jedes Modell mit maschinellem Lernen, das jeder Datenmodalität der Mehrzahl von Datenmodalitäten entspricht, ein Teilnetzwerk aufweist.
  14. System nach Anspruch 9, wobei die eine oder die mehreren ausgewählten Datenmodalitäten einen optimalen Kompromiss zwischen der Genauigkeit der Videoerkennung und der Recheneffizienz bereitstellen.
  15. System nach Anspruch 9, wobei die Anweisungen des Weiteren enthalten: Extrahieren eines gemeinsamen Merkmals aus den Dateneingaben, die für das Videosegment mit der Mehrzahl von Datenmodalitäten stehen, über einen Extraktor eines gemeinsamen Merkmals; Berechnen von verborgenen Zuständen für das Videosegment teilweise auf Grundlage des extrahierten gemeinsamen Merkmals über ein langes Kurzzeitgedächtnis (Long Short-Term Memory, LSTM); und für jede Datenmodalität der Mehrzahl von Datenmodalitäten: Schätzen einer entsprechenden Richtlinienverteilung auf Grundlage der verborgenen Zustände für das Videosegment; und Anwenden einer Gumbel-Softmax-Operation auf die entsprechende Richtlinienverteilung, um ein Sample aus einer entsprechenden Binärentscheidung zu erhalten, die angibt, ob die Datenmodalität für die Videoerkennung des Videosegments ausgewählt werden soll.
  16. System nach Anspruch 9, wobei jede Datenmodalität der Mehrzahl von Datenmodalitäten, die nicht ausgewählt wird, für die Videoerkennung des Videosegments überflüssig ist.
  17. Computerprogrammprodukt für eine Videoerkennung, wobei das Computerprogrammprodukt ein computerlesbares Speichermedium mit darauf enthaltenen Programmanweisungen aufweist, wobei die Programmanweisungen durch einen Prozessor ausführbar sind, um den Prozessor zu veranlassen: ein Eingabevideo zu empfangen, das eine Abfolge von Videosegmenten mit einer Mehrzahl von Datenmodalitäten aufweist; für ein Videosegment der Abfolge eine oder mehrere Datenmodalitäten aus der Mehrzahl von Datenmodalitäten auf Grundlage von Daten auszuwählen, die für das Videosegment stehen, wobei jede ausgewählte Datenmodalität optimal für eine Videoerkennung des Videosegments ist; für jede ausgewählte Datenmodalität mindestens eine Dateneingabe, die für das Videosegment mit der ausgewählten Datenmodalität steht, einem Modell mit maschinellem Lernen bereitzustellen, das der ausgewählten Datenmodalität entspricht, sowie über das Modell mit maschinellem Lernen eine erste Art von Vorhersage zu erzeugen, die für das Videosegment steht; und eine zweite Art von Vorhersage zu ermitteln, die für das gesamte Eingabevideo steht, indem alle erzeugten Vorhersagen der ersten Art aggregiert werden, wobei die zweite Art von Vorhersage ein Objekt oder eine Aktivität angibt, das bzw. die in dem Eingabevideo gezeigt wird.
  18. Computerprogrammprodukt nach Anspruch 17, wobei die Mehrzahl von Datenmodalitäten mindestens eines aus einer RGB-Modalität, einer Optischer-Fluss-Modalität und einer Audiomodalität aufweist.
  19. Computerprogrammprodukt nach Anspruch 17, wobei die Daten, die für das Videosegment stehen, mindestens eines aus einem oder mehreren RGB-Einzelbildern, einem oder mehreren RGB-Differenzeinzelbildern und einem oder mehreren Audio-Frames aufweisen.
  20. Computerprogrammprodukt nach Anspruch 17, wobei jede Datenmodalität der Mehrzahl von Datenmodalitäten ein entsprechendes Modell mit maschinellem Lernen hat, das mit einem oder mehreren anderen Modellen mit maschinellem Lernen, die einer oder mehreren anderen Datenmodalitäten der Mehrzahl von Datenmodalitäten entsprechen, gemeinsam trainiert wird.
DE112022001431.8T 2021-03-11 2022-03-10 Adaptive auswahl von datenmodalitäten für eine effiziente videoerkennung Pending DE112022001431T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US17/199,307 2021-03-11
US17/199,307 US20220292285A1 (en) 2021-03-11 2021-03-11 Adaptive selection of data modalities for efficient video recognition
PCT/CN2022/080147 WO2022188838A1 (en) 2021-03-11 2022-03-10 Adaptive selection of data modalities for efficient video recognition

Publications (1)

Publication Number Publication Date
DE112022001431T5 true DE112022001431T5 (de) 2024-03-28

Family

ID=83193924

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112022001431.8T Pending DE112022001431T5 (de) 2021-03-11 2022-03-10 Adaptive auswahl von datenmodalitäten für eine effiziente videoerkennung

Country Status (6)

Country Link
US (1) US20220292285A1 (de)
JP (1) JP2024509854A (de)
CN (1) CN117203680A (de)
DE (1) DE112022001431T5 (de)
GB (1) GB2620309A (de)
WO (1) WO2022188838A1 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116189062A (zh) * 2023-04-21 2023-05-30 北京金楼世纪科技有限公司 一种视频流行度预测方法和系统

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7143352B2 (en) * 2002-11-01 2006-11-28 Mitsubishi Electric Research Laboratories, Inc Blind summarization of video content
KR20060116335A (ko) * 2005-05-09 2006-11-15 삼성전자주식회사 이벤트를 이용한 동영상 요약 장치 및 방법과 그 장치를제어하는 컴퓨터 프로그램을 저장하는 컴퓨터로 읽을 수있는 기록 매체
US8135221B2 (en) * 2009-10-07 2012-03-13 Eastman Kodak Company Video concept classification using audio-visual atoms
US9197736B2 (en) * 2009-12-31 2015-11-24 Digimarc Corporation Intuitive computing methods and systems
IL206240A0 (en) * 2010-06-08 2011-02-28 Verint Systems Ltd Systems and methods for extracting media from network traffic having unknown protocols
US8750375B2 (en) * 2010-06-19 2014-06-10 International Business Machines Corporation Echocardiogram view classification using edge filtered scale-invariant motion features
US8274508B2 (en) * 2011-02-14 2012-09-25 Mitsubishi Electric Research Laboratories, Inc. Method for representing objects with concentric ring signature descriptors for detecting 3D objects in range images
EP2523149B1 (de) * 2011-05-11 2023-01-11 Tata Consultancy Services Ltd. Verfahren und System zur Verknüpfungs- und Entscheidungsfusion von multimodularen Eingaben
US20150029222A1 (en) * 2011-11-29 2015-01-29 Layar B.V. Dynamically configuring an image processing function
WO2015054627A1 (en) * 2013-10-10 2015-04-16 The Trustees Of Columbia University In The City Of New York Methods and systems for aggregation and organization of multimedia data acquired from a plurality of sources
US10776710B2 (en) * 2015-03-24 2020-09-15 International Business Machines Corporation Multimodal data fusion by hierarchical multi-view dictionary learning
CN105022835B (zh) * 2015-08-14 2018-01-12 武汉大学 一种群智感知大数据公共安全识别方法及系统
BR102016007265B1 (pt) * 2016-04-01 2022-11-16 Samsung Eletrônica da Amazônia Ltda. Método multimodal e em tempo real para filtragem de conteúdo sensível
US9836853B1 (en) * 2016-09-06 2017-12-05 Gopro, Inc. Three-dimensional convolutional neural networks for video highlight detection
US11197036B2 (en) * 2017-04-26 2021-12-07 Piksel, Inc. Multimedia stream analysis and retrieval
EP3651055A4 (de) * 2017-08-01 2020-10-21 Huawei Technologies Co., Ltd. Verfahren, gerät und vorrichtung zur gestenerkennung
CN113229961A (zh) * 2017-09-04 2021-08-10 梶田大树 照相机系统
US11443227B2 (en) * 2018-03-30 2022-09-13 International Business Machines Corporation System and method for cognitive multilingual speech training and recognition
WO2019222759A1 (en) * 2018-05-18 2019-11-21 Synaptics Incorporated Recurrent multimodal attention system based on expert gated networks
US10887640B2 (en) * 2018-07-11 2021-01-05 Adobe Inc. Utilizing artificial intelligence to generate enhanced digital content and improve digital content campaign design
CN109508375A (zh) * 2018-11-19 2019-03-22 重庆邮电大学 一种基于多模态融合的社交情感分类方法
US20220198814A1 (en) * 2019-08-14 2022-06-23 Hewlett-Packard Development Company, L.P. Image dewarping with curved document boundaries
US11270123B2 (en) * 2019-10-22 2022-03-08 Palo Alto Research Center Incorporated System and method for generating localized contextual video annotation
US11416774B2 (en) * 2019-10-23 2022-08-16 Samsung Electronica Da Amazonia Ltda. Method for video recognition capable of encoding spatial and temporal relationships of concepts using contextual features
WO2021166058A1 (ja) * 2020-02-18 2021-08-26 日本電気株式会社 画像認識装置、画像認識方法、及び、記録媒体
WO2021211140A1 (en) * 2020-04-17 2021-10-21 Google Llc Generating quantization tables for image compression
CN111507311B (zh) * 2020-05-22 2024-02-20 南京大学 一种基于多模态特征融合深度网络的视频人物识别方法
US20220157045A1 (en) * 2020-11-16 2022-05-19 Qualcomm Incorporated Automatic early-exiting machine learning models
US20220245424A1 (en) * 2021-01-29 2022-08-04 Samsung Electronics Co., Ltd. Microgenre-based hyper-personalization with multi-modal machine learning
US11574477B2 (en) * 2021-03-08 2023-02-07 Adobe Inc. Highlight video generated with adaptable multimodal customization
US20230140369A1 (en) * 2021-10-28 2023-05-04 Adobe Inc. Customizable framework to extract moments of interest

Also Published As

Publication number Publication date
JP2024509854A (ja) 2024-03-05
GB2620309A (en) 2024-01-03
US20220292285A1 (en) 2022-09-15
WO2022188838A9 (en) 2023-12-07
WO2022188838A1 (en) 2022-09-15
CN117203680A (zh) 2023-12-08
GB202314813D0 (en) 2023-11-08

Similar Documents

Publication Publication Date Title
DE112020000526T5 (de) System und verfahren zum inkrementellen lernen für eine objekterkennung
DE112018004349T5 (de) Dynamische auswahl von bereitstellungskonfigurationen von softwareanwendungen
DE112016001902T5 (de) Schätzen von Rechenressourcen für die Ausführung von Data-Mining-Diensten
DE112019003042B4 (de) Erkennung von verdächtigen aktivitäten in computernetzwerken
DE112020005095T5 (de) Automatische trennung und extraktion von tabellendaten unter verwendung von maschinellem lernen
DE112021004197T5 (de) Semantisches Lernen in einem System für ein föderiertes Lernen
DE112020002110T5 (de) Ressourcenarme entitätsauflösung mit transfer learning
DE112017003937T5 (de) System, Verfahren und Computerprogrammprodukt zur Störungserkennung und - Lokalisierung in Stromnetz
DE112021006130T5 (de) Automatisierte orchestrierung von containern durch bewerten von mikrodiensten
DE112021002572T5 (de) Multikriterielles optimieren von anwendungen
DE112021004227B4 (de) Prädiktive kommunikationskompensation
DE112021003401T5 (de) Schattenexperimente für serverlose multi-tenant-cloud-dienste
DE112021003908T5 (de) Föderales maschinenlernen durch verwenden von ortsabhängigem hashing
DE112020000545T5 (de) Deep-forest-modell-entwicklung und -training
DE112020003596T5 (de) Datenbank-Tuning unter Verwendung eines föderierten maschinellen Lernsystems eines Centerless-Netzwerks
DE112021004380T5 (de) Maschinelles merkmalslernen zur produktformulierung
DE112021002487T5 (de) Teilen einer geografisch konzentrierten arbeitslast zwischen benachbarten mec-hosts mehrerer netzbetreiber
DE102021130396A1 (de) Datenzugriffsüberwachung und -steuerung
DE112016004745B4 (de) Syndiziertes, auf einer Cloud beruhendes Dienstmodell "Benachrichtigung als ein Dienst" Erweiterung in einem RSS-Feed
DE102021125019B4 (de) Orchestrierung von einheiten für das internet der dinge
DE112022001431T5 (de) Adaptive auswahl von datenmodalitäten für eine effiziente videoerkennung
DE102014116744A1 (de) Management von Informationstechnologieressourcen
DE112021003680T5 (de) Deterministisch lernende videoszenenerkennung
DE112021005927T5 (de) Patchen von arbeitsabläufen
DE112019002052T5 (de) Datenschutzsensibilisierung bei der bereitstellung von arbeitslasten

Legal Events

Date Code Title Description
R012 Request for examination validly filed