-
INFORMATION BEZÜGLICH ZUGEHÖRIGER ANMELDUNGEN
-
Diese Anmeldung beansprucht die Priorität der am 21. August 2019 eingereichten vorläufigen Anmeldung Nr.
62/890,013 , der am 7. Mai 2020 eingereichten vorläufigen Anmeldung Nr.
63/021,208 und der am 18. August 2020 eingereichten US-Patentanmeldung Nr.
16/996,110 , die jeweils hierin durch Bezugnahme in ihrer Gesamtheit enthalten sind.
-
HINTERGRUND
-
Technisches Gebiet
-
Die vorliegende Erfindung betrifft Zeitreihendaten und insbesondere ein Verfahren zur multimodalen Wiedergewinnung und Clusterung unter Verwendung einer tiefen kanonischen Korrelationsanalyse (CCA) und aktiver paarweiser Abfragen.
-
Beschreibung des zugehörigen Standes der Technik
-
Zeitreihendaten (TS) sind im Zeitalter von Big-Data bzw. Massendaten weit verbreitet. Ein Beispiel ist ein industrielles Überwachen, wobei Messungen aus einer großen Anzahl von Sensoren komplexe Zeitreihen bilden. Moderne Datenanalysesoftware verwendet maschinelles Lernen, um Muster aus Zeitreihen zu erkennen. Jedoch ist aktuelle Analysesoftware nicht sehr benutzerfreundlich. Zum Beispiel sind die folgenden Probleme sehr häufig. Während maschinelle Lernsysteme spezifische Klassifizierungsaufgaben durchführen können, werden die Ergebnisse normalerweise ohne Erklärungen zurückgegeben. Benutzer möchten, dass Ergebnisse einer Maschinenanalyse ausgearbeiteter und natürlicher präsentiert werden. Mit dem ständig wachsenden Volumen an Zeitreihendaten wird eine automatisierte Suche über historische Daten hinweg notwendig. Traditionell werden beispielhafte Segmente als Suchanfragen verwendet. Es besteht jedoch häufig eine Notwendigkeit, mehr beschreibende Abfragen zu verwenden. Datenbank-Abfragesprachen wie strukturierte Abfragesprache (SQL) können komplexere Kriterien ausdrücken, sind aber für durchschnittliche Benutzer nicht verständlich.
-
In vielen realen Szenarien werden zwischenzeitlich Zeitreihen mit von menschlichen Experten geschriebenen Kommentaren markiert. Wenn beispielsweise ein Kraftwerksbetreiber einen Sensorausfall bzw. -fehler bemerkt, kann der Betreiber Notizen schreiben, die die Signalform, Ursachen, Lösungen und einen erwarteten zukünftigen Zustand beschreiben. Solche Daten enthalten gepaarte Beispiele von zwei Modalitäten. Einrichtungen können im Laufe ihres Betriebs große Mengen von solchen multimodalen Daten angesammelt haben. Multimodale Daten können verwendet werden, um eine Korrelation zwischen Zeitreihendaten und menschlichen Erklärungen zu lernen. Multimodale Daten sind auch eine gute Ressource zum Erlernen von Wissen über spezifische Anwendungsdomänen. Obwohl die Beschaffung solcher Daten kostspielig ist, gibt es derzeit keine einfache Möglichkeit, solche multimodalen Daten zu nutzen.
-
ZUSAMMENFASSUNG
-
Es wird ein computerimplementiertes Verfahren zum Einbetten von Lernen und Clustern für gepaarte multimodale Daten unter Verwendung einer tiefen kanonischen Korrelationsanalyse (CCA) und eines aktiven Lernens mit paarweisen Abfragen präsentiert. Das Verfahren enthält ein Sammeln von Zeitreihendaten aus einer Vielzahl von Sensoren, ein Trainieren, auf unüberwachte Weise, eines kreuzmodalen Wiedergewinnungs- bzw. Abrufsystems durch Verwenden der Zeitreihendaten und relevanter Kommentartexte abhängig von einer Modalität einer Abfrage, Wiedergewinnen bzw. Abrufen der relevanten Kommentartexte aus einem Zeitreihensegment der Zeitreihendaten, wobei die relevanten Kommentartexte als menschenlesbare Erklärungen eines Abfragesegments verwendet werden, Wiedergewinnen bzw. Abrufen relevanter Zeitreihensegmente in Anbetracht eines Satzes oder einer Gruppe von Schlüsselwörtern, so dass die relevanten Zeitreihensegmente mit dem Satz oder der Gruppe von Schlüsselwörtern übereinstimmen, und Wiedergewinnen bzw. Abrufen der relevanten Zeitreihensegmente in Anbetracht des Zeitreihensegments und des Satzes oder der Gruppe von Schlüsselwörtern, so dass eine erste Untergruppe von Attributen mit der Gruppe von Schlüsselwörtern übereinstimmt und eine zweite Untergruppe von Attributen dem Zeitreihensegment ähnlich ist.
-
Es wird ein nicht-transitorisches bzw. nichtflüchtiges computerlesbares Speichermedium, das ein computerlesbares Programm umfasst, zum Einbetten von Lernen und Clustern für gepaarte multimodale Daten unter Verwendung einer tiefen kanonischen Korrelationsanalyse (CCA) und eines aktiven Lernens mit paarweisen Abfragen präsentiert, wobei das computerlesbare Programm, wenn es auf einem Computer ausgeführt wird, veranlasst, dass der Computer die folgendes Schritte durchführt: Sammeln von Zeitreihendaten aus einer Vielzahl von Sensoren, Trainierens, auf unüberwachte Weise, eines kreuzmodalen Wiedergewinnungs- bzw. Abrufsystems durch Verwenden der Zeitreihendaten und relevanter Kommentartexte abhängig von einer Modalität einer Abfrage, Wiedergewinnen bzw. Abrufen der relevanten Kommentartexte aus einem Zeitreihensegment der Zeitreihendaten, wobei die relevanten Kommentartexte als menschenlesbare Erklärungen eines Abfragesegments verwendet werden, Wiedergewinnen bzw. Abrufen relevanter Zeitreihensegmente in Anbetracht eines Satzes oder einer Gruppe von Schlüsselwörtern, so dass die relevanten Zeitreihensegmente mit dem Satz oder der Gruppe von Schlüsselwörtern übereinstimmen, und Wiedergewinnen bzw. Abrufen der relevanten Zeitreihensegmente in Anbetracht des Zeitreihensegments und des Satzes oder der Gruppe von Schlüsselwörtern, so dass eine erste Untergruppe von Attributen mit der Gruppe von Schlüsselwörtern übereinstimmt und eine zweite Untergruppe von Attributen dem Zeitreihensegment ähnlich ist.
-
Es wird ein System zum Einbetten von Lernen und Clustern für gepaarte multimodale Daten unter Verwendung einer tiefen kanonischen Korrelationsanalyse (CCA) und eines aktiven Lernens mit paarweisen Abfragen präsentiert. Das System enthält einen Speicher und einen oder mehrere Prozessoren in Kommunikation mit dem Speicher, konfiguriert, um Zeitreihendaten aus einer Vielzahl von Sensoren zu sammeln, ein kreuzmodales Abrufsystem durch Verwenden der Zeitreihendaten und relevanter Kommentartexte abhängig von einer Modalität einer Abfrage, auf unüberwachte Weise, zu trainieren, die relevanten Kommentartexte aus einem Zeitreihensegment der Zeitreihendaten wiederzugewinnen bzw. abzurufen, wobei die relevanten Kommentartexte als menschenlesbare Erklärungen eines Abfragesegments verwendet werden, relevante Zeitreihensegmente mit einem Satz oder einer Gruppe von Schlüsselwörtern wiederzugewinnen bzw. abzurufen, so dass die relevanten Zeitreihensegmente mit dem Satz oder der Gruppe von Schlüsselwörtern übereinstimmen, und die relevante Zeitreihensegmente in Anbetracht des Zeitreihensegments und des Satzes oder der Gruppe von Schlüsselwörtern wiederzugewinnen bzw. abzurufen, so dass eine erste Untergruppe von Attributen mit der Gruppe von Schlüsselwörtern übereinstimmt und eine zweite Untergruppe von Attributen dem Zeitreihensegment ähnlich ist.
-
Diese und andere Merkmale und Vorteile werden aus der folgenden detaillierten Beschreibung von illustrativen Ausführungsformen davon offensichtlich werden, die in Zusammenhang mit den beigefügten Zeichnungen zu lesen ist.
-
Figurenliste
-
Die Offenbarung wird Details in der folgenden Beschreibung bevorzugter Ausführungsformen unter Bezugnahme auf die folgenden Figuren bereitstellen, wobei:
- 1 ein Block-/Ablaufdiagramm einer beispielhaften gesamten Trainingsprozedur gemäß Ausführungsformen der vorliegenden Erfindung ist;
- 2 ein Block-/Ablaufdiagramm einer beispielhaften Stufe einer tiefen kanonischen Korrelationsanalyse (CCA) gemäß Ausführungsformen der vorliegenden Erfindung ist;
- 3 ein Block-/Ablaufdiagramm einer beispielhaften halbüberwachten Stufe gemäß Ausführungsformen der vorliegenden Erfindung ist;
- 4 ein Block-/Ablaufdiagramm einer beispielhaften aktiven Abfrageauswahl basierend auf einem Gaußschen Mischungsmodell (GMM) gemäß Ausführungsformen der vorliegenden Erfindung ist;
- 5 ein Block-/Ablaufdiagramm einer beispielhaften Abfrageauswahl basierend auf einem aktiven spektralen Clustern gemäß Ausführungsformen der vorliegenden Erfindung ist;
- 6 ein Block-/Ablaufdiagramm einer beispielhaften Clusterprozedur gemäß Ausführungsformen der vorliegenden Erfindung ist;
- 7 ein Block-/Ablaufdiagramm eines beispielhaften Verfahrens zum Wiedergewinnen bzw. Abrufen relevanter Daten für ungesehene Abfragen gemäß Ausführungsformen der vorliegenden Erfindung ist;
- 8 ein Block-/Ablaufdiagramm eines beispielhaften Verfahrens zum Wiedergewinnen bzw. Abrufen von Zeitreihen durch natürliche Sprache gemäß Ausführungsformen der vorliegenden Erfindung ist;
- 9 ein Block-/Ablaufdiagramm eines beispielhaften Verfahrens zum Verwenden einer Suche nach gemeinsamer Modalität gemäß Ausführungsformen der vorliegenden Erfindung ist;
- 10 ein Block-/Ablaufdiagramm eines beispielhaften kreuzmodalen Wiedergewinnungs- bzw. Abrufsystems gemäß Ausführungsformen der vorliegenden Erfindung ist;
- 11 ein Block-/Ablaufdiagramm einer beispielhaften Architektur des Textkommentarcodierers gemäß Ausführungsformen der vorliegenden Erfindung ist;
- 12 ein Block-/Ablaufdiagramm eines beispielhaften Verarbeitungssystems für das multimodale Wiedergewinnen bzw. Abrufen und Clustern unter Verwendung von CCA und aktiven paarweisen Abfragen gemäß Ausführungsformen der vorliegenden Erfindung ist;
- 13 ein Block-/Ablaufdiagramm eines beispielhaften Verfahrens für das multimodale Wiedergewinnen bzw. Abrufen und Clustern unter Verwendung von CCA und aktiven paarweisen Abfragen gemäß Ausführungsformen der vorliegenden Erfindung ist; und
- 14 ein Block-/Ablaufdiagramm einer praktischen Anwendung für das multimodale Wiedergewinnen bzw. Abrufen und Clustern unter Verwendung von CCA und aktiven paarweisen Abfragen gemäß Ausführungsformen der vorliegenden Erfindung ist.
-
DETAILLIERTE BESCHREIBUNG BEVORZUGTER AUSFÜHRUNGSFORMEN
-
Zeitreihen in der realen Welt werden oft mit von Experten auf dem Arbeitsgebiet geschriebenen Textkommentaren versehen. Während die meisten bestehenden Studien die Rolle von Textkommentaren auf Klassenbeschriftungen reduzieren, kann ein tieferes Verständnis durch die Analysieren der vollständigen Textkommentare und durch ein gemeinsames Betrachten der Textkommentare mit Zeitreihen gewonnen werden.
-
Zeitreihendaten sind im Big-Data-Zeitalter weit verbreitet. Ein Beispiel ist eine industrielle Überwachung, bei der ein Messen bzw. Ablesen aus einer großen Anzahl von Sensoren in einer Industrieanlage (z.B. einem Kraftwerk) Zeitreihen bilden, die komplexe Muster zeigen. Algorithmen sind entwickelt worden, um Zeitreihenmuster automatisch zu analysieren und spezifische Aufgaben zu lösen, aber diese Ergebnisse sind normalerweise ohne für menschliche Benutzer verständliche Erklärungen gegeben. Dies reduziert das Vertrauen, das Benutzer in Bezug auf die Ergebnisse haben, signifikant und begrenzt die potenziellen Auswirkungen, die automatisierte Analysen auf den tatsächlichen Entscheidungsprozess haben können.
-
In der Zwischenzeit erfordert eine sinnvolle Interpretation von Zeitreihen oft Fachwissen. In vielen Szenarien der realen Welt werden Zeitreihen mit von menschlichen Experten geschriebenen Kommentaren versehen. Obwohl die Kommentare in einigen Fällen nicht mehr als kategorische Bezeichnungen sind, handelt es sich häufiger um natürliche Freiformtexte. Diese von Experten geschriebenen Kommentare sind lesbar, ausarbeitend bzw. entwickeln und bieten domänen- bzw. arbeitsgebietsspezifische Einblicke. Zum Beispiel kann ein Kommentar von einem Kraftwerksbetreiber eine Beschreibung der Form der anomalen Signale, der Grundursachen, der Maßnahmen zur Behebung des Problems und der Vorhersage eines zukünftigen Status enthalten.
-
Dies sind der Typ von qualitativ hochwertigen und effektiven Erklärungen in Bezug auf Zeitreihen, die Benutzer wünschen. Zusätzlich gibt es eine Notwendigkeit, nach relevanten Zeitreihensegmenten zu suchen, indem Text als Abfrage verwendet wird. Im Vergleich zu herkömmlichen Einzelmodalitäts-Zeitreihenabrufsystemen ermöglicht ein Verwenden von Text, der die Eigenschaften gewünschter Ziele beschreibt, ein Ausbilden semantischer/abstrakter und potenziell komplexer Abfragen auf natürliche Weise. Dies führt zu einer höheren Genauigkeit beim Abrufen von Ergebnissen, die den Erwartungen von Benutzern entsprechen.
-
Weiterhin haben sich in vielen Anlagen im Laufe ihres Betriebs Kommentardaten angesammelt. Trotz der hohen Kosten für ein Einholen von Kommentaren von Experten werden die meisten von ihnen normalerweise nicht wiederverwendet. Es gibt derzeit keine einfache Möglichkeit, Werte aus historischen Kommentaren zu extrahieren, obwohl historische Kommentare eindeutig wertvolles Domänen- bzw. Arbeitsgebietswissen enthalten. Ein solches Wissen kann wichtige Konzepte auf diesem Arbeitsgebiet enthalten. In Zusammenhang mit einem Kraftwerksbetrieb können die Konzepte Dampfdruck und Manöver zum Abschalten eines Ventils enthalten. Anders ausgedrückt enthalten die Kommentare die Materialien zum Aufbauen einer arbeitsgebiets- bzw. domänenspezifischen Wissensbasis. Die Verfügbarkeit von assoziierten bzw. zugehörigen Zeitreihen bietet aufgrund der zusätzlichen Ansicht der Daten mehr Möglichkeiten für eine Konzeptfindung.
-
Die beispielhaften Ausführungsformen der vorliegenden Erfindung führen einen vereinheitlichten Ansatz ein, um solche Fragen anzugehen. Konkreter bieten die beispielhaften Verfahren ein Verfahren zum Wiedergewinnen bzw. Abrufen von relevanten Zeitreihensegmente oder Textkommentaren in Anbetracht einer potenziell multimodalen Abfrage (z.B. Zeitreihensegment und/oder Textbeschreibung) und ein Verfahren zum automatischen Erkennen gemeinsamer Konzepte, die einem multimodalen Datensatz zugrunde liegen. Es gibt mehrere Moden, die beispielhaften Ausführungsformen für ein Abrufen zu verwenden, d.h. in Anbetracht eines Zeitreihensegments relevante Kommentare abrufen, die als menschenlesbare Erklärungen des Zeitreihensegments verwendet werden können. Eine Suche in natürlicher Sprache, d.h. in Anbetracht eines Satzes oder einer Gruppe von Schlüsselwörtern relevante Zeitreihensegmente abrufen. Eine Suche für eine gemeinsame Modalität, d.h. in Anbetracht eines Zeitreihensegments und eines Satzes oder einer Gruppe von Schlüsselwörtern relevante Zeitreihensegmente abrufen, so dass eine Untergruppe von Attributen mit den Schlüsselwörtern übereinstimmt und die verbleibenden Attribute dem gegebenen Zeitreihensegment gleichartig sind oder diesem ähnlich sind.
-
Auf einer hohen Ebene transformieren die beispielhaften Verfahren das Zeitreihensegment und die Textkommentare in Punkte in einem gemeinsamen latenten Raum, so dass Beispiele derselben Klasse und Beispiele im selben Paar nahe zueinander sind. Ein kreuzmodales Abrufen wird durch Finden der nächsten Nachbarn einer Abfrage in diesem gemeinsamen Raum durchgeführt. Die Konzeptermittlung wird durch Clustern der Datenpunkte in diesem Bereich durchgeführt.
-
Im Vergleich zu rein überwachten oder nicht überwachten Verfahren verwenden die beispielhaften Verfahren aktives halb- bzw. semi-überwachtes Lernen, so dass menschliches Wissen das Lernen leiten kann, während ein Aufwand eines manuellen Bezeichnens ohne Leistungseinbußen signifikant reduziert werden kann.
-
Die meisten Algorithmen für aktives Lernen fragen die Bezeichnung einzelner Beispiele ab. In der Praxis ist die Gruppe von Konzepten, die an einem Datensatz in einem neuen Anwendungsbereich beteiligt sind, jedoch oft unbekannt, was es für einen Kommentator schwierig macht, Beschriftungen bzw. Bezeichnungen für einzelne Beispiele bereitzustellen. Zu diesem Zweck verwenden die beispielhaften Verfahren nur Abfragen diesbezüglich, ob zwei Beispiele zum selben Konzept gehören oder nicht. Nach einem Erhalten einer ausreichenden Anzahl von paarweisen Bezeichnungen können die beispielhaften Verfahren dann wählen, um die Gruppe von Konzepten und die Bezeichnungen von jedem Beispiel abzuleiten bzw. anzunehmen.
-
Die Beispielhaften Verfahren verwenden eine tiefe kanonische Korrelationsanalyse (CCA) als unüberwachtes Ziel. CCA findet Transformationen von Zeitreihensegmenten und von Textdaten, so dass korrelierte Informationen in den zwei Modalitäten hervorgehoben werden und unkorrelierte Informationen (Rauschen) minimiert werden. Das Ergebnis besteht darin, dass die transformierten Daten tendenziell eine geclusterte Struktur zeigen.
-
Die beispielhaften Verfahren verwenden eine tiefe CCA sowohl in der Vortrainingsstufe als auch in der aktiven Lernstufe als Regularisierer für das überwachte Ziel. Das überwachte Ziel fördert Einbettungen, so dass Beispiele derselben Klasse näher zueinander sind als zu Beispielen einer anderen Klasse, und zwar ungeachtet einer Modalität. Es können zwei aktive paarweise Abfrageauswahlstrategien basierend auf aktivem spektralen Clustern und Gaußschem Mischmodell (GMM) verwendet werden.
-
1 ist ein Block-/Ablaufdiagramm einer beispielhaften gesamten Trainingsprozedur gemäß Ausführungsformen der vorliegenden Erfindung.
-
Bei einem Block 101 wird ein multimodaler Datensatz erlangt.
-
Bei einem Block 103 wird ein Vortrainieren durch Verwenden einer tiefen CCA durchgeführt.
-
Bei einem Block 105 wird semi-überwachtes Lernen durchgeführt.
-
Bei einem Block 107 wird ein Zeitreihensegment-Codierer verwendet.
-
Bei einem Block 109 wird ein Textcodierer verwendet.
-
Die vollständige Trainingsprozedur ist im Algorithmus 1 nachstehend gezeigt. Die erste Stufe ist ein unüberwachtes Vortrainieren von beiden Codierern mit tiefer CCA. Basierend auf der resultierenden Einbettung ist die zweite Stufe ein CCA-regularisiertes aktives Lernen. Bei jeder Runde wird eine feste Anzahl von beispielhaften Paaren entweder durch aktives spektrales Clustern oder durch die entropiebasierte Strategie für GMM-A-Posteriori ausgewählt. Sie werden menschlichen Kommentatoren gezeigt, die die Bezugsbezeichnungen basierend auf Bereichs- bzw. Domänenwissen oder einigen subjektiven Kriterien zuordnen. Es ist zu beachten, dass die Bezeichnung für irgendein Paar tatsächlich verwendet werden kann, um vier Beziehungen zwischen vier Beispielen zu definieren, die aus den zwei Beispielen sowie ihren Gegenstücken in der entgegengesetzten Modalität bestehen. Dann trainieren die beispielhaften Ausführungsformen unter Verwendung aller bis jetzt erlangten Bezeichnungen bzw. Etiketten beide Codierer bis zu einer Konvergenz. Diese Abtasten/Trainieren-Iteration wird wiederholt, bis das Abfragebudget erreicht ist.
![Figure DE112020003909T5_0001](https://patentimages.storage.***apis.com/91/74/a3/d30a6b0453f9ce/DE112020003909T5_0001.png)
-
Unter weiterer Bezugnahme auf
1 beginnt die Prozedur mit einem Erlangen einer Datenbank von gepaarten Daten, wobei jedes Paar ein Zeitreihensegment und eine Textkommentarpassage enthält. Bei einer gegebenen Datenbank aus gepaarten Daten enthält jedes Paar ein Zeitreihensegment und eine Textkommentarpassage. Die gesamte Anzahl von Datenpaaren ist mit n bezeichnet. Das beispielhafte Verfahren bezeichnet das i'te Datenpaar mit (x
(i), y
(i)), wobei x
(i) das Zeitreihensegment und y
(i) der Textkommentar ist. Der Merkmalsvektor des i'ten Zeitreihensegments ist
Der Merkmalsvektor des i'ten Textkommentars ist
Es soll angenommen werden, dass N
1 ∈R
n×d1 die Merkmalsmatrix von Zeitreihensegmenten ist, so dass die i'te Zeile von H
1 ist. H
2 ∈ R
n × d2 ist die Merkmalsmatrix von Textkommentaren, die gleich bzw. ähnlich definiert sind.
-
Die Codierer 107, 109 werden unter Verwendung von einer tiefen CCA 103 vortrainiert. Danach werden die Codierer 107, 109 in der semi-überwachten Lernstufe 105 unter Verwendung eines überwachten Verlustes basierend auf den abgefragten paarweisen Bezeichnungen in Verbindung mit der tiefen CCA-Regularisierung weiter trainiert. Die zwei trainierten Codierer 107, 109 sind das Ergebnis dieser Prozedur.
-
Der Pseudocode für den gesamten Korrelationsberechnungsteilbereich dieser Prozedur ist folgender:
-
2 ist ein Block-/Ablaufdiagramm einer beispielhaften Stufe einer tiefen kanonischen Korrelationsanalyse (CCA) gemäß Ausführungsformen der vorliegenden Erfindung.
-
Bei einem Block 201 werden die Zeitreihensegmente und die Textkommentare jeweils durch einen Zeitreihencodierer und einen Textcodierer geführt. Zusätzlich werden die latenten Merkmale erhalten.
-
Bei einem Block 203 werden die Kovarianzmatrizen berechnet.
-
Bei einem Block 205 wird die normalisierte Kovarianzmatrix S berechnet.
-
Bei einem Block 207 wird die Singulärwertzerlegung von S erhalten.
-
Bei einem Block 209 werden die gesamten Korrelationen berechnet, indem alle Eigenwerte summiert werden.
-
Bei einem Block 211 werden die Codiererparameter durch einen stochastischen Gradientenabstieg upgedated bzw. aktualisiert.
-
3 zeigt die Prozedur der semi-überwachten Lernstufe.
-
Die Prozedur beginnt ab den vortrainierten Codierern.
-
Bei einem Block 301 werden Zeitreihensegmente und Textkommentare jeweils durch Zeitreihen- und Textcodierer geführt. Zusätzlich werden die Merkmalsvektoren erhalten.
-
Bei einem Block 303 erfolgt ein Auswählen von Paaren unter Verwendung von einer der vorgeschlagenen Strategien und ein Abfragen von Kommentatoren für die Bezeichnungen bzw. Beschriftungen bzw. Etiketten von ausgewählten Paaren.
-
Bei einem Block 305 erfolgt ein Berechnen des überwachten Verlustes Lsup basierend auf allen Paarbeschriftungen, die bis jetzt abgerufen worden sind.
-
Bei einem Block 307 erfolgt ein Berechnen der Gesamtkorrelation c gemäß den Pseudocodezeilen 2-7.
-
Bei einem Block 309 erfolgt ein Kombinieren des überwachten Verlustes und der Gesamtkorrelation, um den Gesamtverlust zu erhalten. L = Lsup + ηc. Ein Hyperparameter η wird durch Kreuzvalidierung ausgewählt.
-
Bei einem Block 311 erfolgt ein Berechnen des Gradienten der Gesamtkorrelation in Bezug auf Parameter von beiden Codierern. Zusätzlich erfolgt ein Updaten der Parameter durch stochastischen Gradientenabstieg.
-
In Bezug auf CCA-regularisiertes semi-überwachtes Lernen wechseln die beispielhaften Verfahren nach der Vortrainingsstufe unter Verwendung von CCA in der semi-überwachten Lernstufe zwischen adaptivem Abfragen und überwachtem Trainieren. Für ein adaptives Abfragen verwenden die beispielhaften Verfahren eine von zwei Strategien (nachstehend detailliert), um Paare von Daten adaptiv auszuwählen und dann ihre paarweisen Beziehungsbezeichnungen von einem menschlichen Kommentator abzufragen. Die paarweisen Beziehungsbezeichnungen sind entweder 1 („verbinden müssen“), wenn sie als dieselbe Klasse betrachtet werden, oder -1 („nicht verbinden können“), wenn sie als von verschiedenen Klassen betrachtet werden. In der Zwischenzeit verwendet ein überwachtes Trainieren diese abgefragten Beziehungsbezeichnungen, um die Codierer sowohl mit überwachtem paarweisem Verlust als auch mit unüberwachtem tiefem CCA-Verlust weiter zu verbessern.
-
Für jedes abgefragte Paar (i, j) gilt die Beziehungsbezeichnung C
ij = 1, wenn der menschliche Kommentator sie als dieselbe Klasse betrachtet, und gilt C
ij = -1, wenn dies nicht der Fall ist. Es soll die Gruppe von allen beschrifteten Paaren mit S bezeichnet bzw. beschriftet sein. Der paarweise Verlust wird unter Verwendung einer Kosinusähnlichkeit berechnet:
-
Da S zu Beginn nur wenige beispielhafte Paare enthält, führt ein Verwenden des paarweisen Verlustes allein tendenziell zu einer Überanpassung. Um dem entgegenzuwirken, enthalten die beispielhaften Verfahren das Korrelationsmaximierungsziel von CCA als Regularisierung, um die globale Konsistenz von zwei Modalitäten beizubehalten. Diese Regularisierung erweist sich als vorteilhaft für den Erfolg des aktiven Lernens unter sehr geringen Budgets.
-
Der Gesamtverlust wird daher formuliert als:
wobei η die Stärke der Regularisierung steuert.
-
Die 4 und 5 zeigen Prozeduren von zwei möglichen Strategien zum Auswählen paarweiser Abfragen.
-
4 zeigt die Prozedur zum Auswählen paarweiser Abfragen basierend auf GMM.
-
Bei einem Block 401 erfolgt ein Initialisieren des Pools von Kandidatenpaaren mit allen Paaren.
-
bei einem Block 403 erfolgt ein Anpassen von GMM an Daten.
-
Bei einem Block 405 erfolgt ein Berechnen von A-Posteriori-Wahrscheinlichkeiten jedes Beispiels.
-
Bei einem Block 407 erfolgt ein Berechnen der Entropie dieser Wahrscheinlichkeiten für jedes Beispiel.
-
Bei einem Block 409 erfolgt ein Auswählen des Paars von Beispielen mit der größten Gesamtentropie aus dem Pool.
-
Bei einem Block 411 erfolgt dann, wenn die Anzahl von ausgewählten Paaren nicht die gewünschte Anzahl erreicht, ein Entfernen aller Paare aus dem Pool, die irgendein Beispiel mit dem ausgewählten Paar teilen (Block 413), und ein Zurückkehren zum Block 409. Sonst erfolgt ein Weitergehen zu einem Block 415.
-
Beim Block 415 erfolgt ein Berechnen des überwachten Verlustes, ein Kombinieren von ihm mit der Gesamtkorrelation, um den Gesamtverlust zu bekommen, und ein Updaten der Codiererparameter.
-
Die Ausgabe dieser Prozedur geht zum Block 305 der Prozedur für eine „semi-überwachte Stufe“ (3).
-
In Bezug auf die Strategie 1, die GMM-A-Posteriori-Unsicherheit, passen die beispielhaften Verfahren in Anbetracht einer vernünftigen Schätzung der Anzahl von Klassen ein Gaußsches Mischmodell an die Daten an. Die beispielhaften Ausführungsformen berechnen dann die Klassen-A-Posteriori-Wahrscheinlichkeiten jedes Beispiels, die die Wahrscheinlichkeit messen, mit der ein Beispiel mit jeder Mischkomponente verbunden ist. Eine Unsicherheit der Zugehörigkeit kann durch die Entropie des hinteren Teils quantifiziert werden. Mit dem hinteren Teil der k'ten Komponente, der mit p(c
i = klx
i) bezeichnet ist, wird der Unsicherheitswert u
i berechnet durch:
-
Der Unsicherheitswert u
ij für ein Paar (i, j) wird dann als die Summe der Entropie von beiden Beispielen definiert:
-
Dann werden Paare mit den höchsten Unsicherheitswerten als Abfragen ausgewählt.
-
5 zeigt die Prozedur zum Auswählen paarweiser Abfragen basierend auf aktivem spektralem Clustern.
-
Bei einem Block 501 erfolgt ein Initialisieren des Pools von Kandidatenpaaren mit allen Paaren.
-
Bei einem Block 503 erfolgt ein Berechnen der Laplace-Einbettung von Daten.
-
Bei einem Block 505 erfolgt ein Berechnen der Norm eines Gradienten des zweiten Eigenvektors in Bezug auf Gewichtungen aller Paare im Pool.
-
Bei einem Block 507 erfolgt ein Auswählen des Paars von Beispielen mit der größten Gradientennorm aus dem Pool.
-
Bei einem Block 509 erfolgt dann, wenn die Anzahl von ausgewählten Paaren nicht die gewünschte Anzahl erreicht, ein Entfernen aller Paare aus dem Pool, die irgendein Beispiel mit dem ausgewählten Paar teilen (Block 511), und ein Zurückkehren zum Block 507. Andernfalls erfolgt ein Weitergehen zu einem Block 513.
-
Beim Block 513 erfolgt ein Berechnen des überwachten Verlustes, ein Kombinieren von ihm mit der Gesamtkorrelation, um den Gesamtverlust zu erhalten, und ein Updaten der Codiererparameter.
-
Die Ausgabe dieser Prozedur geht zum Block 305 der Prozedur für „semi-überwachte Stufe“ (3).
-
In Bezug auf die Strategie 2, das aktive spektrale Clustering bzw. Clustern, haben frühere Offenbarungen eine Strategie vorgeschlagen, die beispielhafte Paare auswählt, die den größten Einfluss auf das Ergebnis eines spektralen Clusterns haben. Es wird beobachtet, dass es unbedeutend ist, ob das Clustern an Daten von einer Modalität oder an Daten von beiden Modalitäten durchgeführt wird. Dieses tiefe CCA-Vortrainieren konvergiert immer zu einer nahezu einheitlichen Korrelation und als Ergebnis sind zwei entsprechende Beispiele im latenten Raum normalerweise sehr nahe beieinander.
-
Die Affinitätsmatrix soll mit W bezeichnet sein, wobei die Gewichtung zwischen irgendeinem Paar von Beispielen ist, definiert durch einen Gaußschen Kernel an ihren Einbettungen:
-
Die Laplace-Matrix wird berechnet als:
wobei D = diag(W1) und / ein Vektor mit nur Einsen ist.
-
Die p'ten Eigenvektoren und Eigenwerte von L sollen mit v
p und λ
p bezeichnet sein. Die Wichtigkeit von einem Paar (i, j) wird durch die Größe des Gradienten des zweiten Eigenvektors V
2 in Bezug auf das Gewicht des Paars quantifiziert:
-
Eine Alternative ist die einfachere Variante, die nur den Einfluss eines Paars auf das unsicherste Beispiel berücksichtigt:
wobei k
min = argmin
k|v
2(k)|. Gemäß diesem Wert bzw. Score bringen die beispielhaften Verfahren alle beispielhaften Paare in eine Reihenfolge, die noch nicht ausgewählt worden sind, und die obersten Paare werden als Abfragen der aktuellen Runde ausgewählt.
-
6 zeigt die Prozedur eines Clusterns.
-
Bei einem Block 601 erhalten, nachdem das Trainieren konvergiert, die Kovarianzmatrizen Σ11, Σ22, und U und V, die Singularwertzerlegung von S wie im Pseudocode.
-
Bei einem Block 603 erfolgt ein Berechnen von geweißten bzw. aufgehellten Merkmalen Z1 und Z2 durch Transformieren der Merkmalsmatrizen H1 und H2:
-
-
-
Bei einem Block 605 erfolgt ein Speichern der geweißten bzw. aufgehellten Merkmale von allen Zeitreihensegmenten und von allen Texten zusammen mit ihrer Rohform in einer Datenbank für einen zukünftigen Abruf bzw. eine zukünftige Wiedergewinnung.
-
Bei einem Block 607 erfolgt ein Clustern der geweißten Merkmale einer Modalität, Z1 oder Z2, unter Verwendung von irgendeinem standardmäßigen Clusteralgorithmus. Zum Beispiel können die beispielhaften Verfahren K-Means verwenden, um Zeitreihensegmentmerkmale Z1 zu clustern, was jeder Instanz x(i) eine Bezeichnung l(i) zuordnet. Weiterhin kann das beispielhafte Verfahren l(i) zu y(i) zuordnen. Die in diesem Schritt gefundenen Cluster bilden die aus dem Datensatz ermittelten Domänen- bzw. Bereichskonzepte.
-
In der Testphase ist die Aufgabe ein kreuzmodaler Abruf. Sind die Codierer und die Datenbank von Rohdaten und Merkmalen von beiden Modalitäten verfügbar, kann eine Suche nach dem nächsten Nachbarn verwendet werden, um relevante Daten für ungesehene Abfragen abzurufen.
-
Wenn die Abfrage x ein Zeitreihensegment ist, wird ihr Merkmal z wie folgt berechnet:
-
Wenn x ein Textkommentar ist, wird sein Merkmal z berechnet als:
-
In der Testphase kann, sind die Codierer und die Datenbank von Rohdaten und Merkmalen von beiden Modalitäten verfügbar, eine Suche nach dem nächsten Nachbarn verwendet werden, um relevante Daten für ungesehene Abfragen abzurufen.
-
Die spezifische Prozedur für jedes der mehreren Anwendungsszenarien wird nachstehend in Bezug auf die 7-9 beschrieben.
-
7 ist ein Block-/Ablaufdiagramm eines beispielhaften Verfahrens zum Abruf bzw. zur Wiedergewinnung relevanter Daten für ungesehene Abfragen gemäß Ausführungsformen der vorliegenden Erfindung.
-
Bei einem Block 701 wird eine Segmentabfrage vorgelegt.
-
Bei einem Block 703 wird ein Zeitreihencodierer für ein neuronales Netz verwendet.
-
Bei einem Block 705 werden Textmerkmale in einen Block 709 eingespeist.
-
Bei einem Block 707 werden Merkmale der Segmentabfrage in den Block 709 eingespeist.
-
Bei einem Block 709 wird der Algorithmus für eine Suche nach dem nächsten Nachbarn verwendet, nachdem gleichzeitig die Merkmale von Texten und die Merkmale einer Segmentabfrage empfangen wurden.
-
Bei einem Block 711 wird eine Liste relevanter Textkommentare bereitgestellt.
-
8 ist ein Block-/Ablaufdiagramm eines beispielhaften Verfahrens zum Abruf von Zeitreihen durch natürliche Sprache gemäß Ausführungsformen der vorliegenden Erfindung.
-
Bei einem Block 801 wird eine Textabfrage vorgelegt.
-
Bei einem Block 803 kommt wird ein Textcodier für ein neuronales Netz verwendet.
-
Bei einem Block 805 werden Merkmale der Segmente in einen Block 809 eingespeist.
-
Bei einem Block 807 werden Merkmale der Textabfrage in den Block 809 eingespeist.
-
Beim Block 809 wird der Algorithmus für eine Suche nach dem nächsten Nachbarn verwendet, nachdem gleichzeitig die Merkmale von Segmenten und die Merkmale der Textabfrage empfangen wurden.
-
Bei einem Block 811 wird eine Liste relevanter Zeitreihensegmente bereitgestellt.
-
9 ist ein Block-/Ablaufdiagramm eines beispielhaften Verfahrens zum Verwenden einer Suche mit gemeinsamer Modalität gemäß Ausführungsformen der vorliegenden Erfindung.
-
Bei einem Block 901 wird eine Segmentabfrage vorgelegt.
-
Bei einem Block 903 wird ein Zeitreihencodierer für ein neuronales Netz verwendet.
-
Bei Block 905 werden Merkmale der Segmentabfrage in einen Block 931 eingespeist.
-
Bei einem Block 907 werden Merkmale von Texten in den Block 931 eingespeist.
-
Bei einem Block 921 wird eine Textabfrage vorgelegt.
-
Bei einem Block 923 wird ein Textcodierer für ein neuronales Netz verwendet.
-
Bei einem Block 925 werden Merkmale der Textabfrage in den Block 931 eingespeist.
-
Beim Block 931 wird der Algorithmus für eine Suche nach dem nächsten Nachbarn verwendet, nachdem gleichzeitig die Merkmale von Texten, die Merkmale der Segmentabfrage und die Merkmale der Textabfrage empfangen wurden.
-
Bei einem Block 933 wird eine Liste relevanter Segmente bereitgestellt.
-
Wenn die Abfrage als eine Zeitreihe beliebiger Länge gegeben ist, wird sie durch den Zeitreihencodierer hindurch weitergeleitet, um einen Merkmalsvektor x zu erhalten. Dann findet das beispielhafte Verfahren die k Textinstanzen aus der Datenbank, deren Merkmale den kleinsten (euklidischen) Abstand zu diesem Vektor haben (z.B. nächste Nachbarn). Diese Textinstanzen, die von Menschen geschriebene Freiformkommentare sind, werden als Abrufergebnisse zurückgegeben.
-
Bei einem Abruf bzw. einer Wiedergewinnung von Zeitreihen durch natürliche Sprache, d.h. wenn die Abfrage als Freiformtextpassage (z.B. Wörter oder kurze Sätze) gegeben ist, wird es durch den Textcodierer hindurchgeführt, um einen Merkmalsvektor y zu erhalten. Dann findet das beispielhafte Verfahren aus der Datenbank die k Zeitreiheninstanzen, deren Merkmale den geringsten Abstand zu y haben. Diese Zeitreihen, die dieselbe semantische Klasse wie der Abfragetext haben und daher eine hohe Relevanz für die Abfrage haben, werden als Abrufergebnisse zurückgegeben.
-
Bei einer Suche mit gemeinsamer Modalität, d.h., wenn die Abfrage als ein Paar von (Zeitreihensegment, Textbeschreibung) gegeben ist, wird die Zeitreihe durch den Zeitreihencodierer hindurchgeführt, um einen Merkmalsvektor x zu erhalten, und wird die Textbeschreibung durch den Textcodierer hindurchgeführt, um einen Merkmalsvektor y zu erhalten. Dann findet das beispielhafte Verfahren aus der Datenbank die n Zeitreihensegmente, deren Merkmale die nächsten Nachbarn von x und n Zeitreihensegmenten sind, deren Merkmale die nächsten Nachbarn von y sind, und ihre Schnittpunkte werden erhalten. Das beispielhafte Verfahren beginnt ab n = k. Wenn die Anzahl von Instanzen beim Schnittpunkt kleiner als k ist, erhöht das beispielhafte Verfahren n und wiederholt die Suche, bis wenigstens k Instanzen abgerufen sind. Diese Instanzen, die semantisch sowohl der Abfragezeitreihe als auch dem Abfragetext gleichen bzw. ähneln, werden als Abrufergebnisse zurückgegeben.
-
10 ist ein Block-/Ablaufdiagramm eines beispielhaften kreuzmodalen Wiedergewinnungs- bzw. Abrufsystems gemäß Ausführungsformen der vorliegenden Erfindung.
-
Das kreuzmodale Abrufsystem 1001 verwendet multimodale neuronale Netze, um Texte und Zeitreihendaten in Vektordarstellungen zu codieren. Die neuronalen Netze werden durch den zweistufigen Trainingsalgorithmus unter Verwendung von Beispielen aus einer von einem Benutzer bereitgestellten Datenbank 1003 von TS-Textpaaren trainiert. Das Trainieren 1010 ist unüberwacht, was bedeutet, dass Klassenbeschriftungen bzw. -bezeichnungen dieser TS-Textpaare nicht erforderlich sind und es keine menschliche Beteiligung an diesem Prozess erfordert. Die erste Stufe ist das auf tiefer CCA basierende Vortrainieren 1040 (mit tiefem CCA 1042). Dies stellt das neuronale Netz so ein, dass die Codierer 1030 vernünftige Darstellungen für die nächste Lernstufe erzeugen. Die zweite Stufe ist ein aktives Clustern 1050. Es können zwei Abfragepaar-Auswahlprozeduren verwendet werden, von denen eines auf einer Gaußschen Mischmodellierung 1054 basiert und das andere ein aktives spektrales Clustern 1056 verwendet. Zusätzlich zum überwachten Verlust enthält das Ziel in dieser Stufe zusätzlich eine Regularisierung durch tiefe CCA 1052. Nachdem der Codierer für ein neuronales Netz 1030 trainiert ist, wird der Abruf von Daten aus der Datenbank gemäß einer von einem Benutzer bereitgestellten Abfrage gemäß dem Abrufalgorithmus 1020 realisiert.
-
11 ist ein Block-/Ablaufdiagramm einer beispielhaften Architektur 1100 des Textkommentarcodierers gemäß Ausführungsformen der vorliegenden Erfindung.
-
Die beispielhaften Verfahren erlangen eine Datenbank von gepaarten Daten, wobei jedes Paar ein Zeitreihensegment und eine Textkommentarpassage enthält. Die Gesamtanzahl von Datenpaaren ist mit n bezeichnet. Das i'te Datenpaar ist mit (x(i), y(i)) bezeichnet, wobei x(i) das Zeitreihensegment und y(i) der Text ist.
-
Das beispielhafte Verfahren enthält eine Trainingsphase und die Testphase.
-
Die Trainingsphase des beispielhaften Verfahrens enthält ein Trainieren von zwei Codierern eines neuronalen Netzes, und zwar einen für Zeitreihensegmente und den anderen für Textkommentare.
-
Der Zeitreihensegmentcodierer und der Textcodierer sind beide neuronale Netze. Der Zeitreihensegmentcodierer, der mit ƒ bezeichnet ist, nimmt ein Zeitreihensegment als Eingabe. Der Textcodierer, der mit g bezeichnet ist, nimmt eine tokenisierte Textkommentarpassage als Eingabe. Der Zeitreihencodierer hat fast dieselbe Architektur wie der Textcodierer, außer dass die Worteinbettungsschicht durch eine vollständig verbundene Schicht ersetzt ist. Die Architektur 1100 enthält eine Reihe von Faltungsschichten 1112, gefolgt von einem Transformatornetzwerk 1110. Die Faltungsebenen 1112 erfassen lokale Kontexte (z.B. Phrasen für Textdaten). Der Transformator 1110 codiert die längerfristigen Abhängigkeiten in der Sequenz.
-
12 ist ein Block-/Ablaufdiagramm eines beispielhaften Verarbeitungssystems für die multimodale Wiedergewinnung und das Clustern unter Verwendung von CCA und aktiven paarweisen Abfragen gemäß Ausführungsformen der vorliegenden Erfindung.
-
Das Verarbeitungssystem enthält wenigstens einen Prozessor oder eine Prozessorvorrichtung (CPU) 1204, der oder die operativ mit anderen Komponenten über einen Systembus 1202 gekoppelt ist. Ein Cache 1206, ein Nurlesespeicher (ROM) 1208, ein Direktzugriffsspeicher (RAM) 1210, ein Eingabe/Ausgabe-(I/O-)Adapter 1220, ein Netzwerk-Adapter 1230, ein Anwenderschnittstellen-Adapter 1240 und ein Anzeige-Adapter 1250 sind operativ mit dem Systembus 1202 gekoppelt. Zeitreihendaten 1260 können aus Sensoren gesammelt werden, wobei die Sensoren mit dem Bus 1202 gekoppelt sind. Die Zeitreihendaten 1260 können durch Verwenden eines multimodalen Einbettungslernens und eines Abrufs bzw. einer Wiedergewinnung und eines Clusterns unter Verwendung von tiefer CCA und aktiven paarweisen Abfragen 1230 analysiert werden.
-
Eine Speichervorrichtung 1222 ist durch den I/O-Adapter 1220 operativ mit dem Systembus 1202 gekoppelt. Die Speichervorrichtung 1222 kann irgendetwas von einer Plattenspeichervorrichtung (z.B. magnetischen oder optischen Plattenspeichervorrichtung), einer magnetischen Festkörpervorrichtung und so weiter sein.
-
Ein Transceiver 1232 ist durch den Netzwerk-Adapter 1230 operativ mit dem Systembus 1202 gekoppelt.
-
Anwendereingabevorrichtungen 1242 sind durch den Anwenderschnittstellen-Adapter 1240 operativ mit dem Systembus 1202 gekoppelt. Die Anwendereingabevorrichtungen 1242 können irgendetwas von einer Tastatur, einer Maus, einer kleinen Tastatur bzw. Folientastatur, einer Bildaufnahmevorrichtung, einer Bewegungserfassungsvorrichtung, einem Mikrofon, einer Vorrichtung, die die Funktionalität von wenigstens zwei der vorstehenden Vorrichtungen enthält, und so weiter sein. Natürlich können auch andere Typen von Eingabevorrichtungen verwendet werden, während der Sinngehalt der vorliegenden Erfindung beibehalten wird. Die Anwendereingabevorrichtungen 1242 können derselbe Typ von Anwendereingabevorrichtung oder unterschiedliche Typen von Anwendereingabevorrichtungen sein. Die Anwendereingabevorrichtungen 1242 werden verwendet, um Information zu dem Verarbeitungssystem einzugeben und von diesem auszugeben.
-
Ein Anzeigevorrichtung 1252 ist durch den Anzeige-Adapter 1250 operativ mit dem Systembus 1202 gekoppelt.
-
Das Verarbeitungssystem kann natürlich auch andere Elemente (nicht gezeigt) enthalten, wie es von einem Fachmann auf dem Gebiet ohne weiteres in Erwägung gezogen wird, sowie bestimmte Elemente weglassen. Zum Beispiel können verschiedene andere Eingabevorrichtungen und/oder Ausgabevorrichtungen in dem System enthalten sein, und zwar in Abhängigkeit von der bestimmten Implementierung desselben, wie es von einem Fachmann auf dem Gebiet ohne weiteres verstanden wird. Zum Beispiel können verschiedene Typen von drahtlosen und/oder verdrahteten Eingabe- und/oder Ausgabevorrichtungen verwendet werden. Darüber hinaus können zusätzliche Prozessoren, Prozessorvorrichtungen, Steuerungen, Speicher und so weiter in verschiedenen Konfigurationen auch verwendet werden, wie es von einem Fachmann auf dem Gebiet ohne weiteres erkannt wird. Diese und andere Variationen des Verarbeitungssystems werden durch einen Fachmann auf dem Gebiet, dem die Lehren der hierin zur Verfügung gestellten vorliegenden Erfindung vorgegeben werden, ohne weiteres in Erwägung gezogen.
-
13 ist ein Block-/Ablaufdiagramm eines beispielhaften Verfahrens für den multimodalen Abruf und ein Clustern unter Verwendung von CCA und aktiven paarweisen Abfragen gemäß Ausführungsformen der vorliegenden Erfindung.
-
Bei einem Block 1301 erfolgt ein Sammeln von Zeitreihendaten aus einer Vielzahl von Sensoren.
-
Bei einem Block 1303 erfolgt ein Trainieren, auf unüberwachte Weise, eines kreuzmodalen Abrufsystems durch Verwenden der Zeitreihendaten und relevanter Kommentartexte.
-
Bei einem Block 1305, erfolgt in Abhängigkeit von einer Modalität einer Abfrage folgendes:
- Abrufen der relevanten Kommentartexte aus einem Zeitreihensegment der Zeitreihendaten, wobei die relevanten Kommentartexte als von Menschen lesbare Erklärungen eines Abfragesegments verwendet werden,
- Abrufen relevanter Zeitreihensegmente in Anbetracht eines Satzes oder einer Gruppe von Schlüsselwörtern, so dass die relevanten Zeitreihensegmente mit dem Satz oder der Gruppe von Schlüsselwörtern übereinstimmen, und
- Abrufen der relevanten Zeitreihensegmente in Anbetracht des Zeitreihensegments und des Satzes oder der Gruppe von Schlüsselwörtern, so dass eine erste Untergruppe von Attributen mit der Gruppe von Schlüsselwörtern übereinstimmt und eine zweite Untergruppe von Attributen dem Zeitreihensegment ähnlich ist.
-
14 ist ein Block-/Ablaufdiagramm einer praktischen Anwendung für das multimodale Abrufen und Clustern unter Verwendung von CCA und aktiven paarweisen Abfragen gemäß Ausführungsformen der vorliegenden Erfindung.
-
Zum Beispiel sammeln im Zusammenhang mit Kraftwerksbetrieben Sensoren 1402, die bei verschiedenen Teilen der Anlage eingesetzt sind, Zeitreihen-(TS-)Daten 1404, die den Status des Stromerzeugungsprozesses charakterisieren. Die TS-Daten 1404 werden zum Datenanalysesystem 1406 übertragen, das in einem Computer im Kontrollraum 1410 installiert ist. Menschliche Bediener 1408 untersuchen die Daten auf einem Monitor und können Notizen in Freiformtext 1409 erstellen. Wenn die Daten anormal sind, wird erwartet, dass die Notizen Details wie Ursachenanalyse und Auflösung enthalten. Die Textnotizen 1409 und die Zeitreihendaten 1404 werden in einer Datenbank gespeichert und werden verwendet, um das bei den beispielhaften Ausführungsformen der vorliegenden Erfindung beschriebene kreuzmodale Abrufsystem zu trainieren, das ein Teil des Datenanalysesystems 1406 ist.
-
Ein menschlicher Bediener 1408 kann mit dem kreuzmodalen Abrufsystem auf eine Anzahl von Weisen interagieren, die nachstehend beschrieben werden.
-
Bei der Erklärung von Zeitreihen in natürlicher Sprache, d.h. bei gegebenem Zeitreihensegment, ruft das beispielhafte Verfahren relevante Kommentartexte 1422 ab, die als Erklärungen für das Abfragesegment 1420 dienen können. (7)
-
Bei der Suche nach historischen Zeitreihen mit Textbeschreibung, d.h. bei einer gegebenen Textbeschreibung 1430 (einem Satz in natürlicher Sprache oder einer Gruppe von Schlüsselwörtern) rufen die beispielhaften Verfahren Zeitreihensegmente ab, die mit der Beschreibung übereinstimmen (Kandidatenzeitreihe 1432). (8)
-
Bei der Suche nach historischen Zeitreihen mit beispielhaften Reihen und Textbeschreibung, d.h. bei Vorgabe eines Zeitreihensegments und einer Textbeschreibung, rufen die beispielhaften Verfahren historische Segmente ab, die mit der Beschreibung übereinstimmen und auch dem beispielhaften Segment ähnlich sind. (9)
-
Zusammenfassend enthalten die beispielhaften Ausführungsformen der vorliegenden Erfindung ein Verfahren zum unüberwachten Trainieren und Verwenden eines kreuzmodalen Abrufsystems für Zeitreihendaten und Textdaten. Bei Vorgabe einer Datenbank, die gepaarte Daten dieser beiden Modalitäten enthält, kann das trainierte System Daten abrufen, die einer vom Benutzer gegebenen Abfrage aus der Datenbank ähnlich sind. Abhängig von der Modalität der Abfrage und den abgerufenen Ergebnissen hat das System die folgenden Verwendungen:
-
Erklären von Zeitreihen in natürlicher Sprache, d.h. bei einem gegebenen Zeitreihensegment Abrufen relevanter Kommentartexte, die als Erklärungen für das Abfragesegment dienen können.
-
Suchen nach historischen Zeitreihen mit Textbeschreibung, d.h. bei einer gegebenen Textbeschreibung (einem Satz in natürlicher Sprache oder einer Gruppe von Schlüsselwörtern) Abrufen von Zeitreihensegmenten, die mit der Beschreibung übereistimmen.
-
Suchen nach historischen Zeitreihen mit Referenzreihen und Textbeschreibung, d.h. bei Vorgabe eines Zeitreihensegments und einer Textbeschreibung, Abrufen von historischen Segmenten, die mit der Beschreibung übereinstimmen und auch dem Abfragesegment ähnlich sind.
-
Auf einer hohen Ebene transformieren die beispielhaften Verfahren das Zeitreihensegment und die Textkommentare in Punkte in einem gemeinsamen latenten Raum, so dass Beispiele derselben Klasse und Beispiele im selben Paar nahe beieinander liegen. Ein kreuzmodales Abrufen bzw. Wiedergewinnen wird durch Finden von nächsten Nachbarn einer Abfrage in diesem gemeinsamen Raum durchgeführt. Eine Konzeptermittlung erfolgt durch Clustern der Datenpunkte in diesem Raum bzw. Bereich.
-
Im Vergleich zu rein überwachten oder unüberwachten Verfahren verwenden die beispielhaften Verfahren aktives semi-überwachtes Lernen, so dass menschliches Wissen das Lernen führen bzw. leiten kann, während ein Aufwand für manuelles Bezeichnen bzw. Beschriften ohne Leistungseinbußen signifikant reduziert werden kann.
-
Die meisten aktiven Lernalgorithmen fragen die Bezeichnung einzelner Beispiele ab. In der Praxis ist jedoch die Gruppe von Konzepten, die an einem Datensatz in einem neuen Anwendungsbereich beteiligt sind, oft unbekannt, was es für einen Kommentator schwierig macht, Beschriftungen bzw. Bezeichnungen für einzelne Beispiele bereitzustellen. Zu diesem Zweck verwenden die beispielhaften Verfahren nur Abfragen diesbezüglich, ob zwei Beispiele zum selben Konzept gehören oder nicht. Nach einem Erhalten einer ausreichenden Anzahl von paarweisen Bezeichnungen können die beispielhaften Verfahren dann wählen, um die Gruppe von Konzepten und die Bezeichnungen von jedem Beispiel abzuleiten.
-
Die beispielhaften Verfahren verwenden eine tiefe kanonische Korrelationsanalyse (CCA) als unüberwachtes Ziel. CCA findet Transformationen von einem Zeitreihensegment und Textdaten, so dass korrelierte Informationen in den zwei Modalitäten hervorgehoben werden und unkorrelierte Informationen (Rauschen) minimiert werden. Das Ergebnis ist, dass die transformierten Daten tendenziell eine geclusterte Struktur zeigen.
-
Die beispielhaften Verfahren verwenden eine tiefe CCA sowohl in der Vortrainingsstufe als auch in der aktiven Lernstufe als Regularisierer für das überwachte Ziel. Das überwachte Ziel fördert Einbettungen, so dass Beispiele derselben Klasse ungeachtet einer Modalität näher beieinander liegen als Beispiele einer anderen Klasse. Es werden zwei aktive paarweise Abfrageauswahlstrategien basierend auf aktivem spektralem Clustern und GMM verwendet.
-
Die beispielhaften Ausführungsformen verbessern die Benutzerfreundlichkeit aktueller Zeitreihenanalysesoftware, indem sie ein auf tiefem Lernen basierendes kreuzmodales Wiedergewinnungs- bzw. Abrufsystem für Zeitreihen und Textnotizen bereitstellen. Dieses beispielhafte System erfordert nur, dass Benutzer Bezeichnung mit Verbindung oder nicht für eine kleine Anzahl von beispielhaften Paaren bereitstellen, was eine signifikante Reduzierung in Bezug auf einen menschlichen Aufwand im Vergleich zur Kommentierung der Klassenbezeichnung für jedes Beispiel im Datensatz ist.
-
Wie sie hierin verwendet sind, können die Ausdrücke „Daten“, „Inhalt“, „Information“ und ähnliche Ausdrücke austauschbar verwendet werden, um sich auf Daten zu beziehen, die gemäß verschiedenen beispielhaften Ausführungsformen aufgenommen, gesendet, empfangen, angezeigt und/oder gespeichert werden können. Somit sollte die Verwendung von irgendwelchen solchen Ausdrücken nicht dafür genommen werden, den Sinngehalt und Schutzumfang der Offenbarung zu beschränken. Weiterhin können dort, wo hierin eine Computervorrichtung beschrieben ist, um Daten von einer anderen Computervorrichtung zu empfangen, die Daten direkt von einer anderen Computervorrichtung empfangen werden oder sie können indirekt von über eine oder mehrere dazwischenliegende bzw. vermittelnde Computervorrichtungen empfangen werden, wie zum Beispiel einen oder mehrere Server, Relais, Router, Netzwerk-Zugangspunkten, Basisstationen und/oder ähnliches. Gleichermaßen können dort, wo hierin eine Computervorrichtung beschrieben ist, um Daten zu einer anderen Computervorrichtung zu senden, die Daten direkt zu der anderen Computervorrichtung gesendet werden oder sie können indirekt über eine oder mehrere dazwischenliegende bzw. vermittelnde Computervorrichtungen gesendet werden, wie zum Beispiel einen oder mehrere Server, Relais, Router, Netzwerk-Zugangspunkten, Basisstationen und/oder ähnliches.
-
Um für eine Interaktion mit einem Anwender zu sorgen, können Ausführungsformen des in dieser Beschreibung beschriebenen Gegenstands auf einem Computer implementiert sein, der eine Anzeigevorrichtung, wie z.B. einen CRT-(Kathodenstrahlröhren-) oder einen LCD-(Flüssigkristallanzeige-)Monitor, zum Anzeigen von Information zu einem Anwender hat, und eine Tastatur und eine Zeigevorrichtung, wie z.B. eine Maus oder einen Trackball bzw. eine Rollkugel, durch welche der Anwender eine Eingabe zum Computer bereitstellen kann. Andere Arten von Vorrichtungen können ebenso gut verwendet werden, um für eine Interaktion mit dem Anwender zu sorgen: zum Beispiel kann eine zum Anwender gelieferte Rückmeldung irgendeine Form einer sensorischen Rückmeldung sein, wie z.B. eine visuelle Rückmeldung, eine auditorische Rückmeldung oder eine taktile Rückmeldung; und eine Eingabe vom Anwender kann in irgendeiner Form empfangen werden, einschließlich einer akustischen, sprachlichen oder taktilen Eingabe.
-
Wie es von einem Fachmann auf dem Gebiet eingesehen werden wird, können Aspekte der vorliegenden Erfindung als ein System, ein Verfahren oder ein Computerprogrammprodukt ausgeführt werden. Demgemäß können Aspekte der vorliegenden Erfindung die Form einer Ausführungsform gänzlich in Hardware, einer Ausführungsform gänzlich in Software (einschließlich Firmware, residenter Software, Mikrocode, etc.) oder einer Ausführungsform, die Software- und Hardware-Aspekte kombiniert, annehmen, auf die alle hierin allgemein als „Schaltung“, „Modul“, „Recheneinheit“, „Vorrichtung“ oder „System“ Bezug genommen werden kann. Weiterhin können Aspekte der vorliegenden Erfindung die Form eines Computerprogrammprodukts annehmen, das in einem oder mehreren computerlesbaren Medien mit darauf verkörpertem computerlesbaren Programmcode verkörpert ist.
-
Irgendeine Kombination von einem oder mehreren computerlesbaren Medien kann verwendet werden. Das computerlesbare Medium kann ein computerlesbares Signalmedium oder ein computerlesbares Speichermedium sein. Ein computerlesbares Speichermedium kann, ist aber nicht darauf beschränkt, zum Beispiel ein elektronisches, magnetisches, optisches, elektromagnetisches, Infrarot- oder Halbleitersystem, eine Vorrichtung oder ein Gerät sein, oder irgendeine Kombination aus den voranstehenden. Mehr spezifische Beispiele (eine nicht erschöpfende Liste) des computerlesbaren Speichermediums würden das Folgende enthalten: eine elektrische Verbindung mit einem oder mehreren Drähten, eine portierbare Computerdiskette, eine Festplatte, einen Direktzugriffsspeicher (RAM), einen Nurlesespeicher (ROM), einen löschbaren programmierbaren Nurlesespeicher (EPROM oder USB-Stick), eine optische Faser bzw. Glasfaser, einen Nurlesespeicher einer portierbaren Computerdiskette (CD-ROM), eine optische Datenspeichervorrichtung, eine magnetische Datenspeichervorrichtung oder irgendeine geeignete Kombination des voranstehenden. In Zusammenhang mit diesem Dokument kann ein computerlesbares Speichermedium irgendein konkretes Medium sein, das ein Programm zur Verwendung durch oder in Verbindung mit einem System, einer Vorrichtung oder einem Gerät zur Anweisungsausführung enthalten oder speichern kann.
-
Ein computerlesbares Signalmedium kann ein ausgebreitetes Datensignal mit einem darin verkörperten computerlesbaren Programmcode enthalten, wie zum Beispiel im Basisband oder als Teil einer Trägerwelle. Ein solches ausgebreitetes Signal kann irgendeine Vielfalt von Formen annehmen, einschließlich, aber nicht darauf beschränkt, elektromagnetisch, optisch oder irgendeine geeignete Kombination davon. Ein computerlesbares Signalmedium kann irgendein computerlesbares Medium sein, das kein computerlesbares Speichermedium ist und das ein Programm zur Verwendung durch oder in Verbindung mit einem System, einer Vorrichtung oder einem Gerät zur Anweisungsausführung kommunizieren, ausbreiten oder transportieren kann.
-
Ein auf einem computerlesbaren Medium verkörperter Programmcode kann unter Verwendung von irgendeinem geeigneten Medium übertragen werden, einschließlich, aber nicht darauf beschränkt, drahtlos, drahtgebunden, Glasfaserkabel, RF, etc., oder irgendeiner geeigneten Kombination des voranstehenden.
-
Ein Computerprogrammcode zum Ausführen von Operationen für Aspekte der vorliegenden Erfindung kann in irgendeiner Kombination von einer oder mehreren Programmiersprachen geschrieben sein, einschließlich einer objektorientierten Programmiersprache, wie beispielsweise Java, Smalltalk, C++ oder ähnlichem, und herkömmlicher verfahrensorientierter Programmiersprachen, wie beispielsweise der C++-Programmiersprache oder ähnlichen Programmiersprachen. Der Programmcode kann gänzlich auf dem Computer eines Anwenders, teilweise auf dem Computer eines Anwenders, als ein alleinstehendes Software-Paket, teilweise auf dem Computer eines Anwenders und teilweise auf einem entfernten Computer oder gänzlich auf dem entfernten Computer oder Server ausführen. Beim letzteren Szenario kann der entfernte Computer mit dem Computer eines Anwenders durch irgendeinen Typ von Netzwerk verbunden sein, einschließlich eines lokalen Netzes (LAN) oder eines Weitverkehrsnetzes (WAN), oder die Verbindung kann zu einem externen Computer (zum Beispiel durch das Internet unter Verwendung eines Internet-Dienstanbieters) ausgeführt werden.
-
Aspekte der vorliegenden Erfindung werden nachstehend unter Bezugnahme auf Ablaufdiagrammdarstellungen und/oder Blockdiagramme von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der vorliegenden Erfindung beschrieben. Es wird verstanden werden, dass jeder Block der Ablaufdiagrammdarstellungen und/oder der Blockdiagramme und Kombinationen von Blöcken in den Ablaufdiagrammdarstellungen und/oder den Blockdiagrammen durch Computerprogrammanweisungen implementiert werden können. Diese Computerprogrammanweisungen können einem Prozessor eines allgemeinen Computers, eines Computers für spezielle Zwecke oder einer anderen programmierbaren Datenverarbeitungsvorrichtung bereitgestellt werden, um eine Maschine zu erzeugen, so dass die Anweisungen, die über den Prozessor des Computers oder einer anderen programmierbaren Datenverarbeitungsvorrichtung ausführen, Mittel zum Implementieren der Funktionen/Handlungen erzeugen, die in dem Ablaufdiagramm und/oder den Blockdiagrammblöcken oder Blöcken oder Modulen spezifiziert sind.
-
Diese Computerprogrammanweisungen können auch in einem computerlesbaren Medium gespeichert werden, das einen Computer, eine andere programmierbare Datenverarbeitungsvorrichtung oder andere Vorrichtungen bzw. Geräte anleiten kann, auf eine bestimmte Weise zu funktionieren, so dass die im dem computerlesbaren Medium gespeicherten Anweisungen einen Herstellungsgegenstand bzw. ein Erzeugnis erzeugen bzw. produzieren, einschließlich Anweisungen, die die Funktion/Handlung implementieren, die im Ablaufdiagramm und/oder Blockdiagrammblock oder Blöcken oder Modulen spezifiziert ist.
-
Die Computerprogrammanweisungen können auch auf einen Computer, eine andere programmierbare Datenverarbeitungsvorrichtung oder andere Vorrichtungen bzw. Geräte geladen werden, um zu veranlassen, dass eine Reihe von Operationsschritten auf dem Computer, einer anderen programmierbaren Vorrichtung oder anderen Vorrichtungen bzw. Geräten durchgeführt wird, um einen computerimplementierten Prozess zu erzeugen bzw. zu produzieren, so dass die Anweisungen, die auf dem Computer oder einer anderen programmierbaren Vorrichtung ausführen, Prozesse zum Implementieren des Funktionen/Handlungen bereitstellen, die in dem Ablaufdiagramm und/oder dem Blockdiagrammblock oder den Blöcken oder Modulen spezifiziert sind.
-
Es ist einzusehen, dass beabsichtigt ist, das der Ausdruck „Prozessor“, wie er hierin verwendet wird, irgendeine Verarbeitungsvorrichtung enthält, wie zum Beispiel eine, welche eine CPU (zentrale Verarbeitungseinheit) und/oder eine andere Verarbeitungsschaltung enthält. Es ist auch zu verstehen, dass sich der Ausdruck „Prozessor“ auf mehr als eine Verarbeitungsvorrichtung beziehen kann und dass verschiedene Elemente, die mit einer Verarbeitungsvorrichtung assoziiert sind, durch andere Verarbeitungsvorrichtungen gemeinsam genutzt werden können.
-
Es ist beabsichtigt, dass der Ausdruck „Speicher“, wie er hierin verwendet ist, einen Speicher enthält, der mit einem Prozessor oder einer CPU assoziiert ist, wie zum Beispiel einen RAM, einen ROM, eine feste Speichervorrichtung (z.B. eine Festplatte), eine entfernbare Speichervorrichtung (z.B. eine Diskette), einen USB-Stick, etc.. Ein solcher Speicher kann als ein computerlesbares Speichermedium angesehen werden.
-
Zusätzlich ist beabsichtigt, dass die Formulierung „Eingabe/AusgabeVorrichtungen“ oder „I/O-Vorrichtungen“, wie sie hierin verwendet ist, zum Beispiel eine oder mehrere Eingabevorrichtungen (z.B. Tastatur, Maus, Scanner, etc.) zum Eingeben von Daten zur Verarbeitungseinheit und/oder eine oder mehrere Ausgabevorrichtungen (z.B. Lautsprecher, Anzeige, Drucker etc.) zum Präsentieren von Ergebnissen, assoziiert mit der Verarbeitungseinheit, enthält.
-
Das Voranstehende ist in jederlei Hinsicht als illustrativ und beispielhaft, aber nicht als beschränkend, zu verstehen, und der Schutzumfang der hierin offenbarten Erfindung ist nicht aus der detaillierten Beschreibung zu bestimmen, sondern eher aus den Ansprüchen, wie sie gemäß der vollständigen Breite interpretiert werden, die durch das Patentrecht zugelassen ist. Es ist zu verstehen, dass die hierin gezeigten und beschriebenen Ausführungsformen nur illustrativ für die Prinzipien der vorliegenden Erfindung sind und dass Fachleute auf dem Gebiet verschiedene Modifikationen implementieren können, ohne von dem Schutzumfang und dem Sinngehalt der Erfindung abzuweichen. Fachleute auf dem Gebiet könnten verschiedene andere Merkmalskombinationen implementieren, ohne von dem Schutzumfang und dem Sinngehalt der Erfindung abzuweichen. Sind somit die Aspekte der Erfindung mit den Details und der Besonderheit, die durch das Patentrecht erforderlich sind, beschrieben worden, ist das, was beansprucht ist und durch das Patent geschützt erwünscht ist, in den beigefügten Ansprüchen dargelegt.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Patentliteratur
-
- US 62/890013 [0001]
- US 63/021208 [0001]
- US 16/996110 [0001]