-
Technisches Gebiet
-
Die vorliegende Offenbarung bezieht sich allgemein auf maschinelles Lernen, insbesondere auf ein auf einem Computer implementiertes Verfahren, ein Computersystem und ein Computerprogrammprodukt zum Vereinigen von Modellen, die jeweilige Sätze von Zielklassen aufweisen.
-
HINTERGRUND
-
Der Erfolg des maschinellen Lernens bei Klassifikationsaufgaben ist maßgeblich durch die Verfügbarkeit großer Datensätze ermöglicht worden. Über mehr Trainings-Daten zu verfügen, hilft dabei, die Genauigkeit der Klassifikationsaufgaben zu verbessern. Mit der zunehmenden Verbreitung der Technologie geht die Datensammlung in Richtung breiter verteilter Einstellungen, bei denen die Daten von mehreren Entitäten bezogen und dann kombiniert werden, um einen Klassifikator in einem zentralen Knoten zu trainieren.
-
In vielen Fällen ist eine Übertragung von Daten zwischen Entitäten jedoch aufgrund von Datenschutzbedenken oder Ressourcen-Beschränkungen wie zum Beispiel Netzwerk-Ressourcen eingeschränkt. Darüber hinaus ist aufgrund einer unterschiedlichen Datenverfügbarkeit möglicherweise nicht jede Datenquelle in der Lage, genügend Trainings-Daten aller Zielklassen zu sammeln. Diese Einschränkungen erschweren das Vereinigen von Wissen aus verschiedenen Quellen.
-
Diese Situation hat zu mehreren Arbeiten geführt, die vorschlagen, Klassifikatoren zu lernen, ohne direkt Daten gemeinsam zu nutzen. Solche Arbeiten enthalten verteilte Optimierung, auf Konsens beruhendes Training, föderales Lernen, Wissensdestillation (G. E. Hinton, et al., „Distilling the knowledge in a neural network", in NIPS (Neural Information Processing Systems) Deep Learning and Representation Learning Workshop, 2015), datenfreie Wissensdestillation für tiefe neuronale Netze (R. G. Lopes, et al., „Data-free knowledge distillation for deep neural networks", in NIPS workshop on learning with limited labeled data, 2017), usw. Diese herkömmlichen Ansätze gehen jedoch davon aus, dass die Zielklassen aller Modelle übereinstimmen. Es gibt jedoch viele Fälle, in denen es nicht möglich ist, jedes Modell mit denselben Zielklassen zu versehen, zum Beispiel aufgrund der Datenverfügbarkeit.
-
Technisches Problem
-
Daher besteht ein Bedarf an einer Technik, die in der Lage ist, ein vereinigtes Modell aus einer Mehrzahl von einzelnen Modellen zu trainieren, selbst in einem Fall, in dem die einzelnen trainierten Modelle jeweilige Teilsätze von Zielklassen aufweisen, die sich von einem Satz von vereinigten Klassen des vereinigten Modells unterscheiden.
-
Lösung des Problems
-
Gemäß einer Ausführungsform der vorliegenden Erfindung wird ein auf einem Computer implementiertes Verfahren zum Erzeugen von vereinigten Soft-Labels bereitgestellt. Das auf einem Computer implementierte Verfahren enthält ein Vorbereiten einer Sammlung von Stichproben. Das auf einem Computer implementierte Verfahren enthält darüber hinaus ein Gewinnen einer durch eine Mehrzahl von einzelnen trainierten Modellen erzeugten Mehrzahl von Vorhersagen für jede Stichprobe, wobei jedes einzelne trainierte Modell einen einzelnen Klassensatz aufweist, um zumindest zum Teil einen Satz von vereinigten Klassen auszubilden, der eine Mehrzahl von Zielklassen enthält. Das auf einem Computer implementierte Verfahren enthält des Weiteren für jede Stichprobe ein Schätzen von vereinigten Soft-Labels über die Zielklassen in dem Satz von vereinigten Klassen aus der Mehrzahl der Vorhersagen mithilfe einer Beziehung, die eine erste Ausgabe jedes einzelnen trainierten Modells und eine zweite Ausgabe des vereinigten Modells verbindet. Das auf einem Computer implementierte Verfahren enthält darüber hinaus ein Ausgeben der vereinigten Soft-Labels, um ein vereinigtes Modell zu trainieren, das den Satz von vereinigten Klassen aufweist.
-
Gemäß dem auf einem Computer implementierten Verfahren der Ausführungsform der vorliegenden Erfindung ist es, da die zum Trainieren des vereinigten Modells zu verwendenden vereinigten Soft-Labels aus den durch die einzelnen trainierten Modelle erzeugten Vorhersagen in einer Weise geschätzt werden, die mit der Ausgabe des vereinigten Modells konsistent ist, möglich, das Wissen der einzelnen trainierten Modelle auf das vereinigte Modell zu übertragen, obwohl die einzelnen trainierten Modelle unterschiedliche Teilsätze von Zielklassen in dem Satz von vereinigten Klassen des vereinigten Zielmodells aufweisen.
-
In einer bevorzugten Ausführungsform enthält das auf einem Computer implementierte Verfahren ein Zuführen jeder Stichprobe zu dem vereinigten Modell, um Vorhersagewerte über die Zielklassen in dem Satz von vereinigten Klassen als die zweite Ausgabe abzuleiten. Das auf einem Computer implementierte Verfahren enthält darüber hinaus ein Aktualisieren des vereinigten Modells auf Grundlage einer Verlustfunktion zwischen den vereinigten Soft-Labels und den Vorhersagewerten für jede Stichprobe. Das auf einem Computer implementierte Verfahren enthält des Weiteren ein Speichern des aktualisierten vereinigten Modells. Dadurch zeigt das vereinigte Modell, das gemäß dem auf einem Computer implementierten Verfahren der bevorzugten Ausführungsform der vorliegenden Erfindung trainiert worden ist, eine hohe Leistungsfähigkeit, die im Besonderen vergleichbar mit einem Modell ist, das direkt in einer zentralisierten und überwachten Weise mit Trainings-Daten trainiert worden ist, die zum Trainieren der einzelnen trainierten Modelle verwendet werden.
-
In einer weiteren bevorzugten Ausführungsform gibt die Beziehung eine Äquivalenz zwischen jedem Vorhersagewert in der ersten Ausgabe eines einzelnen trainierten Modells und einem entsprechenden Vorhersagewert in der zweiten Ausgabe des vereinigten Modells, normalisiert durch den einzelnen Klassensatz des einen einzelnen trainierten Modells, an. Dadurch wird ein Bereitstellen einer unpassenden Überwachung auf fehlende Zielklassen in der Vorhersage des einzelnen trainierten Modells vermieden und ist es möglich, die Verschlechterung der Leistungsfähigkeit des vereinigten Modells aufgrund einer solchen unpassenden Überwachung zu verhindern.
-
In einer sonstigen bevorzugten Ausführungsform wird die Verlustfunktion durch Gewichtungen über die Zielklassen in dem Satz von vereinigten Klassen gewichtet. Jede Gewichtung für eine Zielklasse wird in einer Weise berechnet, die auf einer Statistik der vereinigten Soft-Labels für die eine Zielklasse über die Sammlung beruht. Dadurch kann verhindert werden, dass systematische Fehler in den Trainings-Daten für die einzelnen trainierten Modelle, die möglicherweise bestimmte Klassen stärker bevorzugen als andere, auf das vereinigte Modell übertragen werden.
-
In einer besonderen Ausführungsform werden die vereinigten Soft-Labels geschätzt, indem ein Problem eines Optimierens einer Zielfunktion im Hinblick auf eine Verteilung q gelöst wird, die der zweiten Ausgabe des vereinigten Modells entspricht. Die Zielfunktion misst einen Fehler zwischen einer Mehrzahl von Referenzverteilungen pi, die der Mehrzahl der Vorhersagen entspricht, und einer Mehrzahl von normalisierten Verteilungen qi^, von denen jede durch Normalisieren der Verteilung q über Zielklassen in jedem einzelnen Klassensatz gewonnen wird.
-
In einer sonstigen besonderen Ausführungsform werden die vereinigten Soft-Labels geschätzt, indem ein Problem eines Optimierens einer Zielfunktion im Hinblick auf zumindest einen Ausgabevektor u, der die zweite Ausgabe q des vereinigten Modells als Variablen darstellt, in einer Weise gelöst wird, die auf Matrixfaktorisierung beruht. Die vereinigten Soft-Labels werden in einer Form von Wahrscheinlichkeit oder Logits dargestellt.
-
In einer weiteren bevorzugten Ausführungsform enthält das auf einem Computer implementierte Verfahren für jedes der Mehrzahl der einzelnen trainierten Modelle ein Empfangen (i) eines Inhalts des einzelnen trainierten Modells selbst oder (ii) einer Soft-Label-Sammlung, die durch Zuführen jeder Stichprobe zu dem einzelnen trainierten Modell gewonnen wird, zusammen mit einem Inhalt des einzelnen Klassensatzes. Dadurch wird keine Datenübertragung von Trainings-Daten benötigt, die zum Trainieren des einzelnen trainierten Modells verwendet werden. Der Inhalt des einzelnen trainierten Modells und der aus dem einzelnen trainierten Modell gewonnenen Soft-Label-Sammlung sind keine Rohdaten und im Allgemeinen kompakter als dessen Trainings-Daten. Darüber hinaus bestehen weniger Einschränkungen hinsichtlich der Modellarchitektur des einzelnen trainierten Modells. Daher ist dies in einer Situation vorzuziehen, in der zumindest eine von Einschränkungen bezüglich Modellarchitektur, Berechnungen, Datenverfügbarkeit und Vertraulichkeit besteht.
-
Gemäß einer weiteren Ausführungsform der vorliegenden Erfindung wird ein auf einem Computer implementiertes Verfahren zum Trainieren eines vereinigten Modells bereitgestellt. Das auf einem Computer implementierte Verfahren enthält ein Vorbereiten einer Sammlung von Stichproben. Das auf einem Computer implementierte Verfahren enthält darüber hinaus ein Gewinnen einer durch eine Mehrzahl von einzelnen trainierten Modellen erzeugten Mehrzahl von Vorhersagen für jede Stichprobe, wobei jedes einzelne trainierte Modell einen einzelnen Klassensatz aufweist, um zumindest zum Teil einen Satz von vereinigten Klassen auszubilden, der eine Mehrzahl von Zielklassen enthält. Das auf einem Computer implementierte Verfahren enthält des Weiteren ein Aktualisieren des vereinigten Modells, das den Satz von vereinigten Klassen aufweist, mithilfe der Mehrzahl der Vorhersagen für jede Stichprobe und einer Beziehung, die eine erste Ausgabe jedes einzelnen trainierten Modells und eine zweite Ausgabe des vereinigten Modells verbindet, über die Zielklassen in dem Satz von vereinigten Klassen.
-
Gemäß dem auf einem Computer implementierten Verfahren der sonstigen Ausführungsform der vorliegenden Erfindung ist es, da das vereinigte Modell mithilfe der durch die Mehrzahl der einzelnen trainierten Modelle erzeugten Ausgaben in einer Weise aktualisiert wird, die mit der Ausgabe des vereinigten Modells konsistent ist, möglich, Wissen der einzelnen trainierten Modelle auf das vereinigte Modell zu übertragen, obwohl die einzelnen trainierten Modelle unterschiedliche Teilsätze von Zielklassen in dem Satz von vereinigten Klassen des vereinigten Modells aufweisen. Das vereinigte Modell, das gemäß dem auf einem Computer implementierten Verfahren der sonstigen Ausführungsform der vorliegenden Erfindung trainiert worden ist, zeigt eine hohe Leistungsfähigkeit, die im Besonderen vergleichbar mit einem Modell ist, das direkt in einer zentralisierten und überwachten Weise mit Trainings-Daten von einzelnen Modellen trainiert worden ist. Darüber hinaus ist es möglich zu verhindern, dass eine Ansammlung von Fehlern beim Schätzen der vereinigten Soft-Labels auf das Training des vereinigten Modells propagiert.
-
In einer besonderen Ausführungsform enthält das auf einem Computer implementierte Verfahren darüber hinaus ein Zuführen jeder Stichprobe zu dem vereinigten Modell, um Vorhersagewerte über die Zielklassen in dem Satz von vereinigten Klassen als die zweite Ausgabe abzuleiten, wobei das vereinigte Modell mithilfe der Vorhersagewerte aktualisiert wird. Das auf einem Computer implementierte Verfahren enthält des Weiteren ein Speichern des aktualisierten vereinigten Modells.
-
In einer weiteren besonderen Ausführungsform enthält das vereinigte Modell ein neuronales Netz und wird das vereinigte Modell durch Rückwärtspropagierung eines Verlustes über das gesamte neuronale Netz hinweg aktualisiert, wobei der Verlust einen Fehler zwischen einer Mehrzahl von Referenzverteilungen pi, die der Mehrzahl der Vorhersagen entspricht, und einer Mehrzahl von normalisierten Verteilungen qi^ misst, die durch Normalisieren einer Verteilung q über Zielklassen in jedem einzelnen Klassensatz gewonnen wird, und die Verteilung q als die durch das vereinigte Modell abgeleitete Vorhersagewerte gewonnen wird.
-
In einer besonderen Ausführungsform enthält das vereinigte Modell ein neuronales Netz und wird das vereinigte Modell durch Rückwärtspropagierung eines Verlustes über das gesamte neuronale Netz hinweg aktualisiert, wobei der Verlust durch Lösen eines Problems eines Optimierens einer Zielfunktion mit einem Ausgabevektor u, der die zweite Ausgabe des vereinigten Modells darstellt, und sonstigen Variablen in einer Weise gewonnen wird, die auf Matrixfaktorisierung beruht, und der Ausgabevektor u als die Vorhersagewerte gewonnen wird, die durch das vereinigte Modell abgeleitet werden, und in dem Problem festgelegt wird.
-
Computersysteme und Computerprogrammprodukte, die sich auf einen oder mehrere Aspekte der vorliegenden Erfindung beziehen, werden hierin ebenfalls beschrieben und beansprucht.
-
Zusätzliche Merkmale und Vorteile werden durch die Techniken der vorliegenden Erfindung umgesetzt. Sonstige Ausführungsformen und Aspekte der Erfindung werden hierin ausführlich beschrieben und werden als Teil der beanspruchten Erfindung betrachtet.
-
Figurenliste
-
Der Gegenstand, der als die Erfindung betrachtet wird, wird in den Ansprüchen am Ende der Beschreibung genau dargelegt und ausdrücklich beansprucht. Die obigen und sonstige Merkmale und Vorteile der Erfindung werden aus der folgenden ausführlichen Beschreibung in Verbindung mit den beigefügten Zeichnungen deutlich, in denen:
- 1 ein Trainings-Schema mit einem Wissensdestillationssystem gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung veranschaulicht;
- 2 ein Blockschaubild des Wissensdestillationssystems und zugehöriger Komponenten um das Wissensdestillationssystem gemäß der beispielhaften Ausführungsform der vorliegenden Erfindung veranschaulicht;
- 3 intuitiv eine schematische Darstellung einer probabilistischen Beziehung beschreibt, die Ausgaben einzelner Klassifikatoren und eine Ausgabe eines vereinigten Klassifikators gemäß der beispielhaften Ausführungsform der vorliegenden Erfindung verbindet;
- 4 ein Ablaufplan ist, der einen Wissensdestillationsprozess zum Trainieren eines vereinigten Klassifikators mit mehreren einzelnen Klassifikatoren gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung darstellt;
- 5 ein Blockschaubild eines Wissensdestillationssystems gemäß einer sonstigen beispielhaften Ausführungsform der vorliegenden Erfindung veranschaulicht;
- 6 ein Blockschaubild eines Wissensdestillationssystems gemäß einer weiteren sonstigen beispielhaften Ausführungsform der vorliegenden Erfindung veranschaulicht;
- 7 ein Ablaufplan ist, der einen Wissensdestillationsprozess zum Trainieren eines vereinigten Klassifikators mit einzelnen Klassifikatoren gemäß der weiteren sonstigen beispielhaften Ausführungsform der vorliegenden Erfindung darstellt;
- 8 Ergebnisse einer Sensitivitätsanalyse darstellt: (A) Größe eines Satzes ohne Kennzeichnung, (B) Temperatur und (C) Genauigkeit der einzelnen Klassifikatoren; und
- 9 eine schematische Darstellung eines Computersystems gemäß einer oder mehreren Ausführungsformen der vorliegenden Erfindung darstellt.
-
Beschreibung von Ausführungsformen
-
Im Folgenden wird die vorliegende Erfindung mithilfe besonderer Ausführungsformen beschrieben, und es versteht sich, dass die im Folgenden beschriebenen Ausführungsformen lediglich als Beispiele zu bezeichnen sind und den Umfang der vorliegenden Erfindung nicht einschränken sollen.
-
Eine oder mehrere Ausführungsformen gemäß der vorliegenden Erfindung beziehen sich auf auf einem Computer implementierte Verfahren, Computersysteme und Computerprogrammprodukte zum Erzeugen von vereinigten Soft-Labels, die zum Trainieren eines vereinigten Schülermodells, das einen Satz von Zielklassen (der als Satz von vereinigten Klassen bezeichnet wird) aufweist, verwendet werden können, indem Daten verwendet werden, die von einer Mehrzahl von einzelnen Lehrermodellen gewonnen werden, die jeweils unterschiedliche Sätze von Zielklassen (die als einzelner Klassensatz bezeichnet werden) aufweisen können.
-
Eine oder mehrere sonstige Ausführungsformen gemäß der vorliegenden Erfindung beziehen sich auf auf einem Computer implementierte Verfahren, Computersysteme und Computerprogrammprodukte zum Trainieren eines vereinigten Schülermodells, das einen Satz von vereinigten Klassen von Zielklassen aufweist, indem Daten verwendet werden, die von einer Mehrzahl von einzelnen Lehrermodellen mit jeweiligen einzelnen Klassensätzen gewonnen werden.
-
Zunächst werden unter Bezugnahme auf eine Reihe von 1 bis 5 ein Computersystem und ein Verfahren zum Trainieren eines vereinigten Schülermodells mit einer Mehrzahl von einzelnen Lehrermodellen im Rahmen einer Wissensdestillation, wobei es sich bei den Schüler- und den Lehrermodellen um Klassifikatoren mit jeweiligen Zielklassen handelt und von den einzelnen Lehrerklassifikatoren gewonnene Daten verwendet werden, um vereinigte Soft-Labels für den vereinigten Schülerklassifikator zu schätzen, gemäß beispielhaften Ausführungsformen der vorliegenden Erfindung beschrieben.
-
Anschließend werden unter Bezugnahme auf eine Reihe von 6 und 7 ein Computersystem und ein Verfahren zum Trainieren eines vereinigten Schülermodells mit einer Mehrzahl von einzelnen Lehrermodellen im Rahmen einer Wissensdestillation, wobei es sich bei den Schüler- und den Lehrermodellen um Klassifikatoren mit jeweiligen Zielklassen handelt und von den einzelnen Lehrerklassifikatoren gewonnene Daten verwendet werden, um den vereinigten Schülerklassifikator zu aktualisieren, ohne zuerst die vereinigten Soft-Labels schätzen zu müssen, gemäß sonstigen beispielhaften Ausführungsformen der vorliegenden Erfindung beschrieben.
-
Des Weiteren werden unter Bezugnahme auf 8 experimentelle Untersuchungen zur Bildklassifikation mit einer neuartigen Wissensdestillation gemäß den beispielhaften Ausführungsformen der vorliegenden Erfindung beschrieben. Schließlich wird unter Bezugnahme auf 9 eine Hardware-Konfiguration eines Computersystems gemäß einer oder mehreren Ausführungsformen der vorliegenden Erfindung beschrieben.
-
Unter Bezugnahme auf 1 und 2 wird ein Wissensdestillationssystem 130 zur Bildklassifikation gemäß einer beispielhaften Ausführungsform der vorliegenden Erfindung beschrieben.
-
1 veranschaulicht ein Trainings-Schema mithilfe des Wissensdestillationssystems 130. Wie in 1 dargestellt, sind ein zentrales Datenverarbeitungssystem 120 und eine Mehrzahl von Datenquellen 110-1 bis 110-N vorhanden.
-
In 1 werden Komponenten jeder Datenquelle 110 dargestellt. In jeder Datenquelle 110 befinden sich eine Trainings-Datensammlung 112, ein Trainings-Modul 114 und ein einzelner Klassifikator 116. In jeder Datenquelle 110 wird der einzelne Klassifikator 116 durch das Trainings-Modul 114 mithilfe der Trainings-Datensammlung 112 trainiert. Im Allgemeinen wird jede Datenquelle 110 durch eine Entität mit ihren Rechten und Pflichten verwaltet, und zu einer solchen Entität können eine Privatperson, eine Firma, ein Unternehmen, eine Bildungseinrichtung, eine medizinische Einrichtung zählen, um nur einige zu nennen.
-
Jede Trainings-Datensammlung 112 speichert eine Sammlung von Trainings-Daten, die jeweils ein Bild und eine dem Bild zugewiesene Klassenbezeichnung enthalten. Die in der Trainings-Datensammlung 112 gespeicherten Trainings-Daten können Datenschutz- und/oder vertrauliche Informationen enthalten, die in der Datenquelle 110 aufbewahrt werden müssen. Die Vielfalt und die Menge der Trainings-Daten, die in den Trainings-Datensammlungen 112-1 bis 112-N gespeichert sind, unterscheiden sich im Allgemeinen aufgrund ihrer Datenverfügbarkeit voneinander. Es ist zu beachten, dass in der beschriebenen Ausführungsform die Trainings-Daten jeweils das Bild enthalten, dem die Klassenbezeichnung zugewiesen ist. In einer sonstigen Ausführungsform mit einer anderen Klassifikationsaufgabe sind jeweils die in den Trainings-Daten enthaltenen Daten jedoch nicht auf das Bild beschränkt und können sonstige Datentypen sein, z.B. Audioaufnahmen für eine Spracherkennungsaufgabe.
-
Jeder einzelne Klassifikator 116 kann eines von bekannten Klassifikationsmodellen sein, darunter, aber nicht beschränkt auf Klassifikationsmodelle auf Grundlage von neuronalen Netzen (z.B. DNN (Deep Neural Network, tiefes neuronales Netz), CNN (Convolutional Neural Network, faltendes neuronales Netz), RNN (Recurrent Neural Network, rekurrentes neuronales Netz) und deren Varianten), Klassifikationsmodelle auf Grundlage von Entscheidungsbäumen oder eines -waldes (z.B. Random Forest, willkürlicher Wald), Klassifikationsmodelle auf Grundlage von nächstgelegenen Nachbarn und Klassifikationsmodelle auf Grundlage einer Support Vector Machine (SVM) (die Standard-SVM kann modifiziert werden, um als einzelner Klassifikator 116 zu arbeiten). Darüber hinaus ist jeder einzelne Klassifikator 116 möglicherweise nicht auf ein einziges Klassifikationsmodell beschränkt und kann ein Ensemble aus mehreren Klassifikationsmodellen sein (z.B. Bagging, Boosting, Mixture-of-Experts usw.). Der einzelne Klassifikator 116 wird durch das Trainings-Modul 114 so trainiert, dass er eine Wahrscheinlichkeit vorhersagt, dass ein Bild zu jeder Zielklasse gehört. Diese einzelnen Klassifikatoren 116-1 bis 116-N können unterschiedliche Architekturen aufweisen und können so trainiert werden, dass sie unterschiedliche Sätze von Zielklassen (den einzelnen Klassensatz) klassifizieren, und werden daher als „heterogene Klassifikatoren“ bezeichnet.
-
Jedes Trainings-Modul 114 implementiert einen Lernalgorithmus, der für eine entsprechende Architektur des zu trainierenden einzelnen Klassifikators 116 geeignet ist. Jedes Trainings-Modul 114 ist so konfiguriert, dass es den einzelnen Klassifikator 116 mithilfe der in der Trainings-Datensammlung 112 gespeicherten Trainings-Daten trainiert.
-
Unter Bezugnahme auf 1 werden auch Komponenten des zentralen Datenverarbeitungssystems 120 dargestellt. Das zentrale Datenverarbeitungssystem 120 enthält eine Übertragungssammlung 124, das Wissensdestillationssystem 130 und einen vereinigten Klassifikator 126. In dem zentralen Datenverarbeitungssystem 120 wird der vereinigte Klassifikator 126 durch das Wissensdestillationssystem 130 mithilfe der Übertragungssammlung 124 trainiert. Das zentrale Datenverarbeitungssystem 120 wird durch eine Entität verwaltet, die sich von den Entitäten der Datenquellen 110-1 bis 110-N unterscheiden kann, daher ist eine Datenübertragung von den Trainings-Datensammlungen 112-1 bis 112-N zu dem zentralen Datenverarbeitungssystem 120 typischerweise eingeschränkt.
-
Der Zweck der neuartigen Wissensdestillation gemäß der beispielhaften Ausführungsform der vorliegenden Erfindung besteht darin, das Wissen der Datenquellen 110-1 bis 110-N zu einem einzigen vereinigten Modell zu vereinigen, ohne die über die mehreren Datenquellen 110-1 bis 110-N verteilten Trainings-Daten zu übertragen, was Probleme mit dem Datenschutz- und/oder der Vertraulichkeit verursachen kann.
-
In diesem Trainings-Schema wird, um das über die verschiedenen Datenquellen 110-1 bis 110-N verteilte Wissen zu integrieren, jede Entität nur aufgefordert, ihre trainierten einzelnen Klassifikatoren 116-1 bis 116-N und ihre Klassennamen an das zentrale Datenverarbeitungssystem 120 weiterzuleiten. In dem zentralen Datenverarbeitungssystem 120 empfängt das Wissensdestillationssystem 130 die übertragenen einzelnen Klassifikatoren 122-1 bis 122-N und führt sie auf seinen Ressourcen aus. Anschließend trainiert das Wissensdestillationssystem 130 den vereinigten Klassifikator 126, indem es die übertragenen einzelnen Klassifikatoren 122-1 bis 122-N mit der Übertragungssammlung 124 nutzt.
-
Da das Wissen der Datenquellen 110-1 bis 110-N in den trainierten einzelnen Klassifikatoren 122-1 bis 122-N angesammelt wird, ist es möglich, das verteilte Wissen zu dem einzigen vereinigten Klassifikator 126 zu vereinigen, so dass dieser alle Zielklassen aller einzelnen Klassifikatoren 116-1 bis 116-N klassifizieren kann.
-
In der Regel ist der Inhalt des einzelnen Klassifikators 116 kompakter als die Gesamtheit der Trainings-Daten, die in der Trainings-Datensammlung 112 gespeichert ist. Daher ist dieses Trainings-Schema in einer Situation vorzuziehen, in der eine Ressourcen-Beschränkung wie zum Beispiel eine Bandbreitenbeschränkung besteht (z.B. bei sehr großen Datensätzen).
-
2 veranschaulicht ein Blockschaubild des Wissensdestillationssystems 130 und zugehöriger Komponenten um das Wissensdestillationssystem 130. Wie in 2 dargestellt, enthält das Wissensdestillationssystem 130 ein Modul 132 zum Erzeugen von Soft-Labels und ein Modul 134 zum Trainieren von vereinigten Modellen. Es sind der vereinigte Klassifikator 126, der als Schülermodell zu trainieren ist, und die Mehrzahl der einzelnen Klassifikatoren 122-1 bis 122-N vorhanden, die bereits als Lehrermodelle trainiert worden sind.
-
Die Übertragungssammlung 124 speichert eine Sammlung von Übertragungsdaten, die jeweils ein Bild enthalten können, wenn auf die Bildklassifikation abgezielt wird. Bei den Übertragungsdaten handelt es sich um Daten, die zum Übertragen von Wissen an den vereinigten Klassifikator 126 verwendet werden. Die Übertragungsdaten (oder eine Stichprobe) werden aus der Übertragungssammlung 124 entnommen und jedem der Lehrer- und Schülerklassifikatoren 122, 126 als Eingabe zugeführt. In einer besonderen Ausführungsform muss dem in der Übertragungssammlung 124 gespeicherten Bild kein Hard-Label zugewiesen werden und enthält möglicherweise keine Datenschutz- und vertraulichen Informationen. Als Übertragungsdaten kann ein beliebiges Bild in öffentlichen Bilddatensätzen und/oder sonstigen Bilddatensätzen, die für die neuartige Wissensdestillation gesammelt werden, verwendet werden. Es ist zu beachten, dass in der beschriebenen Ausführungsform alle Übertragungsdaten das Bild enthalten. In sonstigen Ausführungsformen mit einer anderen Klassifikationsaufgabe können die Übertragungsdaten jedoch jeweils sonstige Datentypen enthalten, z.B. Audioaufzeichnungen für eine Spracherkennungsaufgabe.
-
Der vereinigte Klassifikator 126 kann eines von bekannten Klassifikationsmodellen auf Grundlage von neuronalen Netzen (z.B. DNN, CNN, RNN und deren Varianten), Klassifikationsmodellen auf Grundlage von Entscheidungsbäumen oder eines -waldes (z.B. Random Forest), Klassifikationsmodellen auf Grundlage von nächstgelegenen Nachbarn und Klassifikationsmodellen auf Grundlage von SVM (die Standard-SVM kann modifiziert werden, um als vereinigter Klassifikator 126 zu arbeiten) sein. Der vereinigte Klassifikator 126 wird durch das Wissensdestillationssystem 130 so trainiert, dass er eine Wahrscheinlichkeit vorhersagt, dass ein Bild zu jeder Zielklasse gehört. Der vereinigte Klassifikator 126 kann eine andere Architektur als die einzelnen Klassifikatoren 122-1 bis 122-N aufweisen und kann so trainiert werden, dass er einen Satz von anderen Zielklassen (den Satz von vereinigten Klassen) als diejenigen der einzelnen Klassifikatoren 122-1 bis 122-N klassifiziert. Der Satz von vereinigten Klassen kann eine Verknüpfung der einzelnen Klassensätze der einzelnen Klassifikatoren 122-1 bis 122-N sein und somit alle Elemente in den einzelnen Klassensätzen enthalten.
-
Das Wissensdestillationssystem 130 ist so konfiguriert, dass es die Übertragungssammlung 124 vorbereitet und die einzelnen Übertragungsdaten aus der Übertragungssammlung 124 den einzelnen Klassifikatoren 122-1 bis 122-N zuführt. Jeder einzelne Klassifikator 122 leitet eine Wahrscheinlichkeit ab, dass das Bild der Übertragungsdaten zu jeder Zielklasse gehört, und erzeugt eine Vorhersage als Ausgabe. Die Vorhersage kann Wahrscheinlichkeiten oder Logits über Zielklassen in ihrem einzelnen Klassensatz enthalten.
-
Das Modul 132 zum Erzeugen von Soft-Labels ist so konfiguriert, dass es für Übertragungsdaten (oder eine Stichprobe) jeweils die durch die einzelnen Klassifikatoren 122-1 bis 122-N erzeugten Vorhersagen gewinnt. Die Mehrzahl der Vorhersagen, die von der Mehrzahl der einzelnen Klassifikatoren 122-1 bis 122-N gewonnen wird, wird als Primärdaten verwendet, um vereinigte Soft-Labels für die Wissensdestillation zu erzeugen. Das Modul 132 zum Erzeugen von Soft-Labels ist des Weiteren so konfiguriert, dass es für Übertragungsdaten (oder eine Stichprobe) jeweils vereinigte Soft-Labels über die Zielklassen in dem Satz von vereinigten Klassen aus den Vorhersagen mithilfe einer probabilistischen Beziehung schätzt, die hierin neu abgeleitet wird. Die probabilistische Beziehung verbindet oder verknüpft eine Ausgabe jedes einzelnen Klassifikators 122 und eine Ausgabe des vereinigten Klassifikators 126. Weitere Einzelheiten über die probabilistische Beziehung werden im Folgenden beschrieben. Nach dem Gewinnen der vereinigten Soft-Labels gibt das Modul 132 zum Erzeugen von Soft-Labels die vereinigten Soft-Labels an das Modul 134 zum Trainieren von vereinigten Modellen aus. Die vereinigten Soft-Labels werden als „Soft“-Labels bezeichnet, da die Klassenidentitäten nicht so deterministisch sind wie das One-Hot-Hard-Label.
-
Das Modul 134 zum Trainieren von vereinigten Modellen implementiert einen Lernalgorithmus, der für eine entsprechende Architektur des vereinigten Klassifikators 126 geeignet ist, und ist so konfiguriert, dass es den vereinigten Klassifikator 126 trainiert, indem es die vereinigten Soft-Labels verwendet, die für die Übertragungsdaten jeweils in einer überwachten Weise geschätzt werden. Wenn ein auf einem neuronalen Netz beruhendes Modell als vereinigter Klassifikator 126 verwendet wird, kann ein Rückwärtspropagierungsalgorithmus verwendet werden.
-
Genauer gesagt, das Modul 134 zum Trainieren von vereinigten Modellen ist so konfiguriert, dass es die Übertragungsdaten (oder eine Stichprobe) jeweils dem vereinigten Klassifikator 126 zuführt, um die Wahrscheinlichkeit abzuleiten, dass das Bild der Übertragungsdaten zu jeder Zielklasse gehört, und um eine Ausgabe zu gewinnen. Die Ausgabe des vereinigten Klassifikators 126 kann Wahrscheinlichkeiten oder Logits über Zielklassen in dem Satz von vereinigten Klassen enthalten. Das Modul 134 zum Trainieren von vereinigten Modellen ist so konfiguriert, dass es des Weiteren den vereinigten Klassifikator 126 (seine Parameter) auf Grundlage einer Verlustfunktion zwischen den vereinigten Soft-Labels und der Ausgabe des vereinigten Klassifikators 126 für jede Stichprobe iterativ aktualisiert. Wenn der Trainingsprozess abgeschlossen ist, speichert das Modul 134 zum Trainieren von vereinigten Modellen den vereinigten Klassifikator 126 in einer geeigneten Speichereinheit.
-
Im Folgenden werden unter Bezugnahme auf 2 weitere Einzelheiten über die neuartige Wissensdestillation beschrieben. Hier wird die neuartige Wissensdestillation mit den heterogenen Klassifikatoren wie folgt definiert. U sei die Übertragungssammlung 124, die einen Satz von Bildern ohne Kennzeichnung aufweist. C = {C1, C2, ..., CN} sei ein Satz von N einzelnen Klassifikatoren 122-1 bis 122-N. Ein Eingabebild x wird aus der Übertragungssammlung 124 (U) entnommen und in die einzelnen Klassifikatoren 122-1 bis 122-N {C1, C2, ..., CN} eingegeben, wobei jeder einzelne Klassifikator 122 (Ci) trainiert worden ist, um die Wahrscheinlichkeit pi(Y = Ij) vorherzusagen, dass ein Bild zu der Klasse Ij gehört, die in dem einzelnen Klassensatz Li enthalten ist.
-
Bei gegebenem U und C ist das Ziel, den vereinigten Klassifikator
126 (Cu) zu trainieren, der die Wahrscheinlichkeit q(Y=I
j) schätzt, dass ein Eingabebild zu der Klasse I
j gehört, die in dem Satz von vereinigten Klassen Lu enthalten ist, wobei gilt:
Formel 1
-
Es ist zu beachten, dass der einzelne Klassifikator 122 (Ci) trainiert werden kann, um verschiedene Sätze von Zielklassen zu klassifizieren, d.h., dass somit ein einzelner Klassensatz Li möglicherweise nicht gleich wie ein sonstiger einzelner Klassensatz Lj ist und/oder sogar die Anzahl der Klassen in einem einzelnen Klassensatz |Li| möglicherweise nicht gleich wie die Anzahl der Klassen in einem sonstigen einzelnen Klassensatz |Lj| ist, wenn i nicht gleich j ist.
-
Im Allgemeinen ist die Wissensdestillation eine Klasse von Algorithmen, die zum Komprimieren mehrerer Lehrermodelle C
i zu einem einzigen Modell Cu aus einem Datensatz U ohne Kennzeichnung verwendet werden. Eine Standarddestillation entspricht dem Fall, in dem alle einzelnen Klassensätze gleich sind (L
i = L
j, ∀ (i, j)) und das Schülermodell Cu durch Minimieren der Kreuzentropie zwischen den Ausgaben p
i des Lehrermodells C
i und der Ausgabe q des Schülermodells Cu wie folgt trainiert werden kann:
Formel 2
-
Im Wesentlichen werden die Ausgaben p
i des Lehrermodells C
i als Soft-Labels für den Datensatz U ohne Kennzeichnung beim Trainieren des Schülermodells C
U verwendet. Bei neuronalen Netzen werden die Wahrscheinlichkeiten normalerweise mit einer Softmax-Funktion wie folgt berechnet:
Formel 3
wobei z
I ein Logit (Aktivierungen vor Softmax) für die Klasse / ist und T einen einstellbaren Temperaturparameter bezeichnet. Ein Minimieren der in Gleichung (1) dargestellten Kreuzentropie, wenn T angemessen hoch ist, ähnelt dem Minimieren des L2-Fehlers zwischen den Logits von p
i und q, wodurch das Minimieren der Kreuzentropie mit einer Logit-Zuordnung in Beziehung gesetzt wird.
-
Das Hauptproblem bei der Standarddestillation rührt jedoch aus ihrer Unfähigkeit, den allgemeineren Fall zu bewältigen, in dem ein einzelner Klassensatz Li möglicherweise nicht gleich wie ein sonstiger einzelner Klassensatz Lj ist. Die oben erwähnte Gleichung (1) nimmt an, dass das Schülermodell Cu und die Lehrermodelle Ci denselben Satz von Zielklassen (Li = Lj= LU) gemeinsam nutzen.
-
In den heterogenen Klassifikatoren wird jedoch jedes Lehrermodell Ci trainiert, um Klassen in dem einzelnen Klassensatz Li vorherzusagen, daher ist pi(Y=I) undefiniert für I, das in einem Satz L-i enthalten ist, der als Satz von Zielklassen in dem Satz von vereinigten Klassen Lu, aber außerhalb des einzelnen Klassensatzes Li definiert ist. Eine naive Lösung für die Inkonsistenz in Ausgaben zwischen dem Lehrermodell Ci und dem Schülermodell Cu bestünde darin, einfach pi(Y = I) = 0 für I festzulegen, das in dem Satz L-i enthalten ist. Eine solche naive Lösung könnte jedoch zu Fehlern führen, z.B. könnte man pi(Y= Katze) eines „Katzen“-Bildes auf null festlegen, wenn das Lehrermodell Ci keine Katzen klassifiziert, was eine unpassende Überwachung wäre.
-
Um die Einschränkung der Standarddestillation zu überwinden, wird eine probabilistische Beziehung eingeführt, die die Ausgabe p
i jedes einzelnen Klassifikators
122 (C
i) und die Ausgabe q des vereinigten Klassifikators
126 (Cu) in Beziehung setzt. Da der einzelne Klassensatz L
i ein Teilsatz des Satzes Lu von vereinigten Klassen ist, wird die Wahrscheinlichkeit p
i(Y = I) als Wahrscheinlichkeit q von Y = / betrachtet, wenn Y nicht in L
-i enthalten sein kann. Dies führt zu der folgenden Ableitung:
Formel 4
-
Die Gleichung (6) gibt eine Äquivalenz zwischen jedem Vorhersagewert pi(Y=I) in der Ausgabe eines einzelnen Klassifikators 122 (Ci) und einem entsprechenden Vorhersagewert q(Y=I) in der Ausgabe des vereinigten Klassifikators 126 (Cu), normalisiert durch den einzelnen Klassensatz Li des einen einzelnen trainierten Modells 122 (Ci), an.
-
3 beschreibt eine schematische Darstellung der probabilistischen Beziehung, die die Ausgabe des einzelnen Klassifikators 122 (Ci) und die Ausgabe des vereinigten Klassifikators 126 (Cu) verbindet. Wie in 3 dargestellt, kann man sich den einzelnen Klassifikator 122 (Ci) als Ausgeben von Teilklassen des vereinigten Klassifikators 126 (Cu) verstehen.
-
In der neuartigen Wissensdestillation gemäß einer oder mehreren Ausführungsformen der vorliegenden Erfindung werden auf Grundlage dieser probabilistischen Beziehung zwei Klassen von Techniken bereitgestellt, darunter eine auf einer Minimierung von Kreuzentropie beruhende Technik und eine auf Matrixfaktorisierung beruhende Technik mit fehlenden Einträgen. Diese beiden Techniken ermöglichen, die vereinigten Soft-Labels q aus der Stichprobe x ohne Kennzeichnung über alle Klassen in dem Satz LU von vereinigten Klassen zu schätzen und die vereinigten Soft-Labels q zum Trainieren des vereinigten Klassifikators 126 zu verwenden. Weitere Einzelheiten über die auf Kreuzentropie beruhende Technik und die auf Matrixfaktorisierung beruhende Technik werden im Folgenden beschrieben.
-
In besonderen Ausführungsformen kann jedes der Module 122, 126, 130 des in 1 beschriebenen zentralen Datenverarbeitungssystems 120 sowie jedes der Teilmodule 132 und 134 des in 2 dargestellten Wissensdestillationssystems 130 als Software-Modul, das Programmanweisungen und/oder Datenstrukturen enthält, in Verbindung mit Hardwarekomponenten wie zum Beispiel einer Verarbeitungsschaltung (z.B. einer CPU (Central Processing Unit, Zentraleinheit), einer GPU (Graphic Processing Unit, Graphikverarbeitungseinheit), FPGA (feldprogrammierbares Gate-Array)), einem Speicher usw.; als Hardware-Modul, das elektronische Schaltungen (z.B. einen neuromorphen Chip) enthält; oder als eine Kombination von diesen implementiert sein, ohne darauf beschränkt zu sein.
-
Diese in 1 und 2 beschriebenen Module 122, 126, 130, 132 und 134 können auf einem einzigen Computersystem, wie zum Beispiel einem Personal Computer und einer Server-Maschine, oder einem Computersystem, das über eine Mehrzahl von Datenverarbeitungseinheiten verteilt ist, wie z.B. einem Computer-Verbund der Datenverarbeitungseinheiten, implementiert sein. Die Übertragungssammlung 124 und der Inhalt der einzelnen Klassifikatoren 122-1 bis 122-N können in einer/einem beliebigen internen oder externen Speichereinheit oder -medium gespeichert werden, auf das das zentrale Datenverarbeitungssystem 120 zugreifen kann.
-
Darüber hinaus kann jedes der Module 114, 116 in der in 1 beschriebenen Datenquelle 110 als Software-Modul; als Hardware-Modul; oder als Kombination von diesen implementiert sein, ohne darauf beschränkt zu sein. Diese in 1 beschriebenen Module 114, 116 können auf einem einzigen Computersystem oder einem auf mehrere Computereinheiten verteilten Computersystem implementiert sein. Die Trainings-Datensammlung 112 kann in einer/einem beliebigen internen oder externen Speichereinheit oder -medium gespeichert werden, auf das ein Computersystem, das das Modul 114 implementiert, zugreifen kann.
-
Es ist zu beachten, dass sich der einzelne Klassifikator 122 nicht unbedingt auf einem lokalen eines zentralen Datenverarbeitungssystems 120 befinden muss. Es ist ausreichend, wenn der einzelne Klassifikator 122 durch ein Netzwerk verfügbar ist. So bedeutet das Vorbereiten des einzelnen Klassifikators 122, den einzelnen Klassifikator 122 verfügbar zu machen, indem der einzelne Klassifikator 122 in einen Speicherbereich des lokalen Computersystems eingelesen wird; oder eine Verbindung mit dem einzelnen Klassifikator 122 herzustellen, der auf einem entfernt angeordneten Computersystem arbeitet, so dass die Übertragungsdaten (die Stichprobe) dem einzelnen Klassifikator 122 zugeführt werden können und eine resultierende Vorhersage für die Übertragungsdaten (die Stichprobe) von diesem empfangen werden kann.
-
Darüber hinaus ist in einer oder mehreren Ausführungsformen nicht einmal ein Zugriff auf den einzelnen Klassifikator 122 von dem zentralen Datenverarbeitungssystem 120 aus erforderlich. In dieser Situation wird der Inhalt der Übertragungssammlung 124 an jede Datenquelle 110 übergeben, und die Entität wird aufgefordert, eine Soft-Label-Sammlung, die durch Zuführen jeder Stichprobe in der Übertragungssammlung 124 zu dem einzelnen Klassifikator 122 gewonnen wird, und deren Klassennamen weiterzuleiten. Anschließend empfängt das Wissensdestillationssystem 130 die Soft-Label-Sammlung und die Klassennamen.
-
Unter Bezugnahme auf 4 wird ein Ablaufplan dargestellt, der einen Wissensdestillationsprozess zum Trainieren eines vereinigten Klassifikators 126 darstellt. Wie in 4 dargestellt, kann der Prozess in Schritt S100 als Reaktion auf ein Empfangen einer Anforderung zum Initiieren eines Wissensdestillationsprozesses von einem Bediener beginnen. In dieser Anforderung kann der Satz der einzelnen Klassifikatoren 122-1 bis 122-N {C1, C2,..., CN}, die Konfiguration des vereinigten Klassifikators 126 (Cu) und die Übertragungssammlung 124 (U) angegeben werden. Es ist zu beachten, dass der in 4 dargestellte Prozess durch eine Verarbeitungsschaltung wie zum Beispiel eine oder mehrere Verarbeitungseinheiten in dem zentralen Datenverarbeitungssystem 120 durchgeführt werden kann.
-
In Schritt S101 kann die Verarbeitungsschaltung die Übertragungssammlung 124 (U) und die einzelnen Klassifikatoren 122-1 bis 122-N {C1, C2,..., CN} vorbereiten, die bereits trainiert worden sind. In Schritt S102 kann die Verarbeitungsschaltung den vereinigten Klassifikator 126 initialisieren. Jeder einzelne Klassifikator 122, der in Schritt S101 vorbereitet worden ist, weist einen entsprechenden einzelnen Klassensatz Li auf, wohingegen der vereinigte Klassifikator 126, der in Schritt S102 vorbereitet worden ist, den Satz Lu von vereinigten Klassen aufweist, der eine Vereinigung der einzelnen Klassensätze Li ist.
-
In Schritt S103 kann die Verarbeitungsschaltung eine Stichprobe x aus der Übertragungssammlung 124 (U) lesen. In Schritt S104 kann die Verarbeitungsschaltung eine Mehrzahl von Vorhersagen pi gewinnen, indem die Stichprobe x jedem einzelnen Klassifikator 122 (Ci) zugeführt wird. In Schritt S105 kann die Verarbeitungsschaltung aus den Vorhersagen pi mithilfe der oben erwähnten probabilistischen Beziehung vereinigte Soft-Labels q über alle Zielklassen des Satzes Lu von vereinigten Klassen schätzen.
-
Ein auf Kreuzentropie beruhender Ansatz
-
Im Folgenden wird ein erstes Verfahren zum Schätzen vereinigter Soft-Labels q beschrieben, das auf einer Minimierung von Kreuzentropie beruht. Auf Grundlage der probabilistischen Beziehung (
6) kann die oben erwähnte Kostenfunktion (
1) zu der folgenden Kostenfunktion verallgemeinert werden:
Formel 5
wobei gilt:
-
Der Unterschied zwischen den oben erwähnten Gleichungen (1) und (7) liegt in der Normalisierung der Wahrscheinlichkeit q. Im Besonderen wird die Kreuzentropie jedes einzelnen Klassifikators 122 (Ci) zwischen der Wahrscheinlichkeit pi(Y = I) und der normalisierten Wahrscheinlichkeit qi^ (Y = I) über die Zielklassen in dem einzelnen Klassensatz Li berechnet. Gemäß der Gleichung (7) sind beliebig definierte Werte von pi(Y = I) für fehlende Zielklassen L-i nicht erforderlich.
-
Angenommen, es besteht eine Wahrscheinlichkeit p
- über alle Klassen in dem Satz L
U von vereinigten Klassen, wobei gilt:
Formel 6
dann ist q = p
- ein globales Minimum der Kostenfunktion (
7). Dies legt die Form des globalen Minimums der Kostenfunktion (
7) fest, und dass ein Minimieren der Kostenfunktion (
7) die wahre zugrundeliegende Wahrscheinlichkeit p
- ergeben kann, wenn sie vorhanden ist.
-
Wenn eine Wahrscheinlichkeitsverteilung q gegeben ist, misst die oben erwähnte Kostenfunktion (7) einen Fehler zwischen einer Mehrzahl von Referenzwahrscheinlichkeitsverteilungen pi(Y = I), von denen jede der Vorhersage eines einzelnen Klassifikators 122 (Ci) entspricht, und einer Mehrzahl von normalisierten Verteilungen qi^ (Y = I), von denen jede durch Normalisieren der gegebenen Wahrscheinlichkeitsverteilung q über Zielklassen in jedem einzelnen Klassensatz Li gewonnen wird. Durch Minimieren der oben erwähnten Kostenfunktion (7) im Hinblick auf die Wahrscheinlichkeitsverteilung q wird die optimale Verteilung q als vereinigte Soft-Labels über alle Zielklassen des Satzes LU von vereinigten Klassen gewonnen. In der beschriebenen Ausführungsform wird die Kostenfunktion als Zielfunktion verwendet, daher ist ein Problem eines Optimierens der Zielfunktion ein Minimieren der Kostenfunktion.
-
Das Minimieren der oben erwähnten Kostenfunktion (
7) kann in ein geometrisches Programm umgewandelt werden, das dann in ein konvexes Problem umgewandelt und effizient gelöst werden kann. Kurz gesagt, jede Klasse I, die in dem Satz Lu von vereinigten Klassen enthalten ist, erhält neue temporäre Variablen u
I (∈ R), und jede temporäre Variable u
I wird durch eine Logarithmusfunktion der Wahrscheinlichkeit q (Y= I) dargestellt (d.h., u
I=log q(Y = I)). Daher kann in einer besonderen Ausführungsform die oben erwähnte Gleichung (7) in die folgende Gleichung umgewandelt werden:
Formel 7
die in den temporären Variablen{u
I}
I konvex ist, da diese Funktion eine Summe von skalierten und Log-Sum-Exps der neuen temporären Variablen {u
I}
I ist. Die Gleichung (9) kann mithilfe eines geeigneten Verfahrens wie zum Beispiel des Gradientenabstiegs minimiert werden. Da die Wahrscheinlichkeitsverteilung q durch einen Satz von Exponentialfunktionen der jeweiligen temporären Variablen u
I (d.h., exp (u
I)) in dem konvexen Problem dargestellt wird, werden die optimalen temporären Variablen {u
I}
I, nachdem die optimalen temporären Variablen {u
I}
I gewonnen worden sind, durch die oben erwähnte Softmax-Funktion (
2) in q in eine Form von Wahrscheinlichkeit umgewandelt. Die Wahrscheinlichkeitsverteilung q, dementsprechend die vereinigten Soft-Labels, kann/können durch Lösen dieses konvexen Problems gewonnen werden. Wenngleich in der beschriebenen Ausführungsform die Kreuzentropiefunktion als Zielfunktion verwendet wird, kann in einer sonstigen Ausführungsform auch die Kullback-Leibler(KL)-Divergenz als Zielfunktion verwendet werden, da die Kreuzentropie und die KL-Divergenz in dem Sinne äquivalent sind, dass sie dieselbe Lösung bereitstellen würden, wenn sie optimiert sind, obwohl die KL-Divergenz und die Kreuzentropie im Allgemeinen unterschiedlich sind.
-
Auf Matrixfaktorisierung beruhende Ansätze
-
Im Folgenden wird eine zweite Klasse von Ansätzen zum Schätzen von vereinigten Soft-Labels q beschrieben, die auf Matrixfaktorisierung mit fehlenden Einträgen beruht. Es ist möglich, ein Problem eines Vereinigens von heterogenen Klassifikatoren als ein Problem eines Füllens einer unvollständigen Matrix von Soft-Labels zu betrachten. Im Folgenden werden drei Möglichkeiten zum Verwenden von Matrixfaktorisierung beschrieben, um vereinigte Soft-Labels q aus dem Satz der Vorhersagen {pi}i zu gewinnen.
-
Matrixfaktorisierung im Wahrscheinlichkeitsraum
-
Es werde eine Wahrscheinlichkeitsmatrix P ∈ [0, 1]L×N betrachtet, wobei PIi (das Element in Zeile / und Spalte i) auf pi(Y= I), wenn / in dem einzelnen Klassensatz Li enthalten ist, und ansonsten auf null (0) festgelegt wird. Die Wahrscheinlichkeitsmatrix P stellt die Vorhersagen pi in einer Form von Wahrscheinlichkeit mit fehlenden Einträgen dar. Um diese fehlenden Vorhersagen zu berücksichtigen, wird eine Maskenmatrix M E {0, 1}L×N definiert, in der MIi (das Element in Zeile / und Spalte i) eins (1), wenn / in dem einzelnen Klassensatz Li enthalten ist, und ansonsten null (0) ist. Die Maskenmatrix M stellt ein Vorhandensein einer fehlenden Klasse in den einzelnen Klassensätzen Li dar.
-
Mithilfe der probabilistischen Beziehung zwischen p
i und q in Gleichung (6) kann die Wahrscheinlichkeitsmatrix P in ein maskiertes Produkt von Vektoren faktorisiert werden als:
Formel 8
wobei ein eingekreister Punkt das Hadamard-Produkt darstellt. Hier ist der Vektor u ein Ausgabevektor, der die Verteilung q enthält, die in Form von Wahrscheinlichkeit dargestellt wird, und jedes Element in dem Vektor v enthält einen Normalisierungsfaktor für jedes einzelne trainierte Modell (C
i), daher wird der Vektor v als Normalisierungsvektor v bezeichnet.
-
In dieser Form kann der Wahrscheinlichkeitsausgabevektor u durch Lösen des folgenden Problems einer Matrixvervollständigung ersten Ranges geschätzt werden:
Formel 9
wobei | | . | | F die Frobenius-Norm bezeichnet und 0
k und 1
k Vektoren von Nullen und Einsen der Größe k bezeichnen.
-
Hier stellt die Gleichung (12) ein Problem eines Optimierens einer Zielfunktion im Hinblick auf den Ausgabevektor u und den Normalisierungsvektor v als Variablen dar, wobei die Zielfunktion einen Fehler zwischen der Wahrscheinlichkeitsmatrix P mit fehlenden Einträgen und einem Produkt aus dem Ausgabevektor u und dem Normalisierungsvektor v mit der Maskenmatrix M misst. Die Einschränkung (14) stellt sicher, dass der Normalisierungsvektor v nichtnegativ ist. Die Einschränkung (13, 14) stellt sicher, dass der Ausgabevektor u ein Wahrscheinlichkeitsvektor ist. Diese Formulierung kann als nichtnegative Matrixfaktorisierung betrachtet werden, die zum Beispiel mithilfe des Verfahrens der alternierenden kleinsten Quadrate (Alternating Least Squares, ALS) gelöst werden kann, wobei der Ausgabevektor u in jeder Iteration auf die Summe 1 normalisiert wird. Aufgrund der Eichfreiheit hat diese Normalisierung in dem Vektor u keinen Einfluss auf die Kostenfunktion.
-
Matrixfaktorisierung im Logit-Raum
-
Wie oben erwähnt, besteht eine Beziehung zwischen dem Minimieren der Kreuzentropie und dem L2-Abstand zwischen den Logits des einzelnen Klassifikators
122 (C
i) und des vereinigten Klassifikators
126 (Cu). Daher kann die Matrixfaktorisierung mit niedrigem Rang auf Logits angewendet werden. Diese Formulierung ist faktisch eine Verallgemeinerung einer Logit-Zuordnung.
sei eine gegebene Logit-Ausgabe der Klasse / des einzelnen Klassifikators
122 (C
i) und u ein zu schätzender Logit-Ausgabevektor. Für Algorithmen abgesehen von neuronalen Netzen können Logits aus der Wahrscheinlichkeit über
gewonnen werden. Es werde eine Logit-Matrix Z ∈ R
L×N betrachtet, wobei Z
Ii (das Element in Zeile / und Spalte i)
wenn / in dem einzelnen Klassensatz L
i enthalten ist, und ansonsten null (0) ist. Das Problem des Schätzens des Logit-Ausgabevektors u ∈ R
L kann wie folgt formuliert werden:
Formel 10
wobei der Vektor c ∈ RN eine Verschiebung in den Logits behandelt, die dann als Logit-Verschiebungsvektor c bezeichnet wird, und r ∈ R ein Hyperparameter ist, der eine Regularisierung steuert.
-
Die Verschiebung der Logit-Werte hat keine Auswirkung auf die Wahrscheinlichkeitsausgabe, aber unterschiedliche Verschiebungen einzelner Klassifikatoren werden so verarbeitet, dass sie diese als Matrixfaktorisierung modellieren werden. Hier ist ein Optimieren des Skalierungsvektors v ∈ RN ähnlich wie ein Optimieren der Temperatur der Logits von jedem einzelnen Klassifikator 122 (Ci), und der Logit-Skalierungsvektor v ist darauf beschränkt, nichtnegativ zu sein, um den Vorzeichenwechsel des Logits zu verhindern, der die Wahrscheinlichkeit beeinflussen könnte.
-
Die Gleichung (15) stellt ein Problem eines Optimierens einer Zielfunktion im Hinblick auf den in einer Form von Logits dargestellten Ausgabevektor u, den Logit-Skalierungsvektor v und den Logit-Verschiebungsvektor c als Variablen dar, wobei die Zielfunktion einen Fehler zwischen der Logit-Matrix Z mit fehlenden Einträgen und einem Produkt aus dem Ausgabevektor u und dem um den Logit-Verschiebungsvektor c verschobenen Logit-Skalierungsvektor v mit der Maskenmatrix M misst. Das durch die oben erwähnte Gleichung (15) definierte Problem kann mithilfe von ALS über die Vektoren u, v und c gelöst werden. Hier besteht keine Beschränkung auf den Ausgabevektor u, daher wird der Ausgabevektor u nicht normalisiert. Die vereinigten Soft-Labels q in dem Wahrscheinlichkeitsraum können aus dem Ausgabevektor u mithilfe der oben erwähnten Softmax-Funktion (2) gewonnen werden, wobei uI und qI als zI und p(Y=I) betrachtet werden. Durch Gewinnen von q aus u können die gewonnenen Soft-Labels q verwendet werden, um den vereinigten Klassifikator zu trainieren, der Soft-Labels akzeptiert. In einer sonstigen Ausführungsform kann der gewonnene Ausgabevektor u direkt zum Trainieren des vereinigten Klassifikators verwendet werden, der Logits (z.B. neuronale Netze, bei denen die letzte Softmax-Schicht entfernt worden ist) als sonstigen Typ von Soft-Labels ausgeben kann. Wenngleich sich der Logit in dem Ausgabevektor u von der Wahrscheinlichkeit q in der Darstellung unterscheidet, enthalten die hierin genannten vereinigten Soft-Labels die Werte in dem Logit-Raum.
-
Matrixfaktorisierung im Logit-Raum mit festgelegtem Skalierungsvektor v
-
Zwar ermöglicht das Festlegen des Vektors v als Variable der oben erwähnten Gleichung (15), unterschiedliche Skalierungen des Logits zu verarbeiten. Die Eichfreiheit in uv
T kann jedoch wie folgt zu einer beliebigen Skalierung in u führen:
Formel 11
-
Als Nächstes hilft die Regularisierung zwar zu verhindern, dass die Normen des Vektors u und des Vektors v zu groß werden, es ist jedoch schwierig, einen einzigen Regularisierungs-Hyperparameter r festzulegen, der für alle Daten in der Übertragungssammlung
124 (U) gut funktioniert. Um diese Probleme zu bekämpfen, kann eine weitere Formulierung von (15) vorgeschlagen werden, bei der der Skalierungsvektor v auf 1
N festgelegt ist. Mit dem festgelegten Skalierungsfaktor v ist keine Regularisierung des Vektors u erforderlich, da seine Größenordnung durch Z ermittelt wird. Darüber hinaus ist die neue Formulierung konvex und kann zur globalen Optimalität gelöst werden. Das Problem des Schätzens des Logit-Ausgabevektors u ∈R
L mit festgelegtem Skalierungsvektor kann wie folgt formuliert werden:
Formel 12
-
Die Gleichung (17) stellt ein Problem eines Optimierens einer Zielfunktion im Hinblick auf den in einer Form von Logits dargestellten Ausgabevektor u und den Logit-Verschiebungsvektor c dar, wobei die Zielfunktion einen Fehler zwischen der Logit-Matrix Z mit fehlenden Einträgen und einem Produkt aus dem Ausgabevektor u und dem um den Logit-Verschiebungsvektor c verschobenen festgelegten Skalierungsvektor mit der Maskenmatrix M misst. Das durch die oben erwähnte Gleichung (17) definierte Problem kann mit einem geeigneten Verfahren wie dem Gradientenabstiegsverfahren über die Vektoren u und c gelöst werden. Darüber hinaus können die vereinigten Soft-Labels q in dem Wahrscheinlichkeitsraum aus dem Ausgabevektor u in dem Logit-Raum mithilfe der Softmax-Funktion (2) gewonnen werden. Alternativ kann der gewonnene Ausgabevektor u direkt zum Trainieren des vereinigten Klassifikators verwendet werden, der Logits als sonstigen Typ von Soft-Labels ausgeben kann.
-
Unter Bezugnahme zurück auf 4 kann die Verarbeitungsschaltung in Schritt S106 dieselbe Stichprobe dem aktuellen vereinigten Klassifikator 126 zuführen, um eine Ausgabe pu abzuleiten. In Schritt S107 kann die Verarbeitungsschaltung den aktuellen vereinigten Klassifikator 126 auf Grundlage einer Verlustfunktion zwischen den vereinigten Soft-Labels q und der Ausgabe pu des aktuellen vereinigten Klassifikators 126 aktualisieren.
-
In einer besonderen Ausführungsform wird die Verlustfunktion, die zum Trainieren des vereinigten Klassifikators
126 verwendet wird, als folgende KreuzentropieFunktion dargestellt:
Formel 13
wobei q das in Schritt
S105 geschätzte vereinigte Soft-Label darstellt, das als Pseudo-Label fungiert, pu die Ausgabewahrscheinlichkeit über Klassen in dem Satz von vereinigten Klassen des aktuellen vereinigten Klassifikators
126 mit den Parametern ϑ darstellt. Da in der beispielhaften Ausführungsform Daten ohne Kennzeichnung als die Übertragungsdaten zum Vereinigen der einzelnen Klassifikatoren
122 verwendet werden, ist kein Aufwand zum Kennzeichnen jeglicher Daten in dem zentralen Datenverarbeitungssystem
120 erforderlich. Wenn jedoch ein den Übertragungsdaten zugewiesenes Hard-Label verfügbar ist, kann das Hard-Label verwendet werden, um die Parameter ϑ des vereinigten Klassifikators
126 während des Trainingsprozesses abwechselnd oder gleichzeitig mit den Soft-Labels zu aktualisieren.
-
In Schritt S108 kann die Verarbeitungseinheit ermitteln, ob eine Abbruchbedingung erfüllt ist. Wenn zum Beispiel die vorgegebene Anzahl von Epochen abgeschlossen ist, wird ermittelt, dass die Abbruchbedingung erfüllt ist. Wenn die Verarbeitungseinheit in Schritt S108 ermittelt, dass die Abbruchbedingung noch nicht erfüllt ist, kann der Prozess für eine weitere Iteration zu Schritt S103 zurückkehren. Wenn demgegenüber die Verarbeitungseinheit ermittelt, dass die Abbruchbedingung bereits in Schritt S108 erfüllt worden ist, kann der Prozess zu Schritt S109 übergehen. In Schritt S109 kann die Verarbeitungseinheit den aktuellen vereinigten Klassifikator 126 speichern, und der Prozess kann in Schritt S110 enden. Es ist zu beachten, dass die Iteration des Trainings für jedes Übertragungsbeispiel (z.B. Online-Training) oder für einen vorgegebenen Satz von Übertragungsbeispielen (z.B. Batch-Training, Mini-Batch-Training) durchgeführt werden kann.
-
Im Folgenden wird unter Bezugnahme auf 5 ein Wissensdestillationssystem gemäß einer sonstigen beispielhaften Ausführungsform der vorliegenden Erfindung beschrieben. 5 beschreibt ein Blockschaubild eines Wissensdestillationssystems gemäß einer sonstigen beispielhaften Ausführungsform der vorliegenden Erfindung. Der Unterschied zwischen der in 2 dargestellten Ausführungsform und der in 5 dargestellten Ausführungsform ist das Vorhandensein eines Soft-Label-Speichers 136 und eines Ausgleichsmoduls 138 in dem Wissensdestillationssystem 130.
-
Wie oben beschrieben, werden die vereinigten Soft-Labels q aus einer Mehrzahl von Vorhersagen {pi}i für jede Stichprobe x, die der Übertragungssammlung 124 (U) entnommen wird, geschätzt und zum Trainieren des vereinigten Klassifikators 126 (Cu) verwendet. In einigen Fällen kann jedoch der Satz der geschätzten Soft-Labels q aus der gesamten Übertragungssammlung 124 (U) unausgeglichen sein. Das heißt, dass die geschätzten vereinigten Labels q bestimmte Klassen stärker bevorzugen als andere, was dazu führen könnte, dass der vereinigte Klassifikator 126 (Cu) so trainiert wird, dass er in Richtung derselben Sätze von Klassen verzerrt wird. Um dieser Verzerrung entgegenzuwirken, können Gewichtungen auf den Kreuzentropieverlust angewendet werden, wenn die vereinigten Soft-Labels q zum Trainieren des vereinigten Klassifikators 126 (CU) verwendet werden, wobei die Gewichtung jeder Klasse / in einer Weise berechnet wird, die auf einer Statik der Wahrscheinlichkeit q(Y= I) über alle Daten aus der Übertragungssammlung 124 (U) beruht. Als Statik für die Gewichtung kann eine Inverse des Mittelwertes der Wahrscheinlichkeit q(Y = I) über alle Daten verwendet werden.
-
In dieser beispielhaften Ausführungsform ist das Modul 132 zum Erzeugen von Soft-Labels des Weiteren so konfiguriert, dass es vereinigte Soft-Labels für alle Übertragungsdaten in dem Soft-Label-Speicher 136 speichert. Nach dem Gewinnen der Soft-Labels für alle Übertragungsdaten in der Übertragungssammlung 124 (U) ist das Ausgleichsmodul 138 so konfiguriert, dass es die Statik der Wahrscheinlichkeit q(Y= I) über alle Daten aus der Übertragungssammlung 124(U) berechnet und die Statiken als Gewichtungen speichert. Das Modul 134 zum Trainieren von vereinigten Modellen ist so konfiguriert, dass es beim Trainieren des vereinigten Klassifikators 126 die Verlustfunktion mit den Gewichtungen über die Zielklassen in dem Satz von vereinigten Klassen gewichtet.
-
Gemäß den oben erwähnten Ausführungsformen werden die vereinigten Soft-Labels q zunächst geschätzt und zum Trainieren des vereinigten Klassifikators 126 in einer überwachten Weise verwendet. Wenn der vereinigte Klassifikator 126 (Cu) jedoch ein neuronales Netz ist, besteht eine alternative Möglichkeit, bei der der Verlust des Schätzens von q direkt über das gesamte neuronale Netz hinweg rückwärts propagiert wird, ohne dass q zuerst geschätzt werden muss.
-
Im Folgenden wird unter Bezugnahme auf 6 und 7 eine Wissensdestillation, bei der die von den einzelnen Klassifikatoren 122-1 bis 122-N gewonnenen Daten verwendet werden, um den vereinigten Klassifikator 126 zu aktualisieren, ohne dass die vereinigten Soft-Labels q zuerst geschätzt werden müssen, gemäß einer weiteren sonstigen beispielhaften Ausführungsform der vorliegenden Erfindung beschrieben.
-
6 beschreibt ein Blockschaubild eines Wissensdestillationssystems gemäß der weiteren sonstigen beispielhaften Ausführungsform der vorliegenden Erfindung. Der Unterschied zwischen der in 2 dargestellten Ausführungsform und der in 6 dargestellten Ausführungsform besteht darin, dass das in 2 dargestellte Modul 132 zum Erzeugen von Soft-Labels weggelassen wird und ein Aktualisierungsmodul 140 in das Modul 134 zum Trainieren von vereinigten Modellen integriert ist. Darüber hinaus ist zu beachten, dass der vereinigte Klassifikator 126 ein auf einem neuronalen Netz beruhendes Modell ist.
-
Das Aktualisierungsmodul 140 ist so konfiguriert, dass es für Übertragungsdaten (oder eine Stichprobe) jeweils die durch die einzelnen Klassifikatoren 122-1 bis 122-N erzeugten Vorhersagen pi gewinnt. Das Aktualisierungsmodul 140 ist darüber hinaus so konfiguriert, dass es jede Stichprobe dem vereinigten Klassifikator 126 zuführt, um Vorhersagewerte über die Zielklassen in dem Satz von vereinigten Klassen abzuleiten. Das Aktualisierungsmodul 140 ist des Weiteren so konfiguriert, dass es den vereinigten Klassifikator 126 (seine Parameter ϑ) mithilfe der Vorhersagewerte des vereinigten Klassifikators 126 und der Vorhersagen der einzelnen Klassifikatoren 122-1 bis 122-N für jede Stichprobe mit der oben erwähnten probabilistischen Beziehung, die die Ausgaben der einzelnen Klassifikatoren 122-1 bis 122-N und die Ausgabe des vereinigten Klassifikators 126 verbindet, über die Zielklassen in dem Satz Lu von vereinigten Klassen aktualisiert. Wenn der Trainingsprozess abgeschlossen ist, speichert das Modul 134 zum Trainieren von vereinigten Modellen den vereinigten Klassifikator 126 in einer geeigneten Speichereinheit.
-
Unter Bezugnahme auf 7 wird ein Ablaufplan dargestellt, der einen Wissensdestillationsprozess gemäß der weiteren sonstigen beispielhaften Ausführungsform darstellt. Wie in 7 dargestellt, kann der Prozess in Schritt S200 als Reaktion auf ein Empfangen einer Anforderung zum Initiieren eines Wissensdestillationsprozesses von einem Bediener beginnen. Der in 7 dargestellte Prozess kann durch eine Verarbeitungsschaltung wie zum Beispiel eine oder mehrere Verarbeitungseinheiten in dem zentralen Datenverarbeitungssystem 120 durchgeführt werden.
-
In Schritt S201 kann die Verarbeitungsschaltung die Übertragungssammlung 124 (U) und die einzelnen Klassifikatoren 122-1 bis 122-N {C1, C2,..., CN} vorbereiten. In Schritt S202 kann die Verarbeitungsschaltung den vereinigten Klassifikator 126 initialisieren. In Schritt S203 kann die Verarbeitungsschaltung eine Stichprobe x aus der Übertragungssammlung 124 (U) lesen. In Schritt S204 kann die Verarbeitungsschaltung eine Mehrzahl von Vorhersagen pi gewinnen, indem die Stichprobe x jedem einzelnen Klassifikator 122 (Ci) zugeführt wird. In Schritt S205 kann die Verarbeitungsschaltung dieselbe Stichprobe dem aktuellen vereinigten Klassifikator 126 zuführen, um eine Ausgabe q abzuleiten.
-
In Schritt S206 kann die Verarbeitungsschaltung den aktuellen vereinigten Klassifikator 126 auf Grundlage einer Verlustfunktion mit der oben erwähnten probabilistischen Beziehung aus der Vorhersage pi von einzelnen Klassifikatoren 122-1 bis 122-N und der Ausgabe q des aktuellen vereinigten Klassifikators 126 über alle Zielklassen aktualisieren.
-
Im Fall des auf der Kreuzentropie beruhenden Ansatzes wird q in Gleichung (7) als Wahrscheinlichkeitsausgabe von dem aktuellen vereinigten Klassifikator 126 (Cu) betrachtet, dann kann der Verlust direkt rückwärts durchpropagiert werden. In Schritt S206 wird der aktuelle vereinigte Klassifikator 126 aktualisiert, indem der Verlust durch das gesamte neuronale Netz des vereinigten Klassifikators 126 (Cu) hinweg auf Grundlage der Verlustfunktion (7) rückwärts propagiert wird, die einen Fehler zwischen den Referenzverteilungen pi und den normalisierten Verteilungen qi^ misst, die durch Normalisieren einer Verteilung q über Zielklassen in jedem einzelnen Klassensatz gewonnen werden, wobei die Verteilung q als Vorhersagewerte gewonnen wird, die durch den vereinigten Klassifikator 126 in Schritt 205 abgeleitet werden. Die Verlustfunktion (7) wird zum Aktualisieren der Parameter ϑ durch die Rückwärtspropagierung in Form eines Verwendens des Gradienten der Verlustfunktion verwendet.
-
Im Fall von Ansätzen mit Matrixfaktorisierung wird der Ausgabevektor u entweder als Wahrscheinlichkeits- oder Logit-Vektorausgaben von dem vereinigten Klassifikator 126 (Cu) betrachtet. Nachdem der Ausgabevektor u gewonnen worden ist, wird der Ausgabevektor u in jede Formulierung (12), (15) oder (17) eingesetzt und das Problem für sonstige Variablen (z.B. v und c) gelöst, wobei der Ausgabevektor u festgelegt wird, und anschließend wird der Verlust über den Ausgabevektor u rückwärts propagiert. Der vereinigte Klassifikator 126 wird durch Rückwärtspropagierung eines Verlustes über das gesamte neuronale Netz hinweg aktualisiert, wobei der Verlust durch Lösen eines Problems eines Optimierens einer Zielfunktion mit einem Ausgabevektor u des vereinigten Modells und sonstigen Variablen (z.B. v und c) in einer auf Matrixfaktorisierung beruhenden Weise gewonnen wird. Der Ausgabevektor u wird als die durch den vereinigten Klassifikator 126 abgeleiteten Vorhersagewerte gewonnen und in dem Problem festgelegt. Es werde zum Beispiel die Formulierung (15) betrachtet. In diesem Fall wird, nachdem der Ausgabevektor u von dem vereinigten Klassifikator 126 (Cu) gewonnen worden ist, der Wert des Ausgabevektors u in der Formulierung (15) festgelegt, und anschließend wird die durch die Formulierung (15) dargestellte Zielfunktion für den Logit-Skalierungsvektor v und den Logit-Verschiebungsvektor c optimiert, bis ihre optimalen Werte gewonnen werden. Anschließend werden die Vektoren v und c festgelegt und der Gradient der Gleichung (15) im Hinblick auf den Ausgabevektor u berechnet. Dann kann dieser Gradient verwendet werden, um den vereinigten Klassifikator 126 (Cu) rückwärts zu propagieren.
-
Bei beiden Ansätzen hilft eine direkte Rückwärtspropagierung des Verlustes, den Schritt des Schätzens von q und den Schritt des Verwendens des geschätzten q zum Trainieren des vereinigten Klassifikators 126 (Cu) zu einem einzigen Schritt zusammenzufassen. Dies verhindert, dass sich eine Ansammlung von Fehlern beim Schätzen von q auf das Training des vereinigten Klassifikators 126 (Cu) propagiert.
-
In Schritt S207 kann die Verarbeitungseinheit ermitteln, ob eine Abbruchbedingung erfüllt ist. Wenn die Verarbeitungseinheit in Schritt S207 ermittelt, dass die Abbruchbedingung noch nicht erfüllt ist, kann der Prozess für eine weitere Iteration zu Schritt S203 zurückkehren. Wenn demgegenüber die Verarbeitungseinheit ermittelt, dass die Abbruchbedingung bereits in Schritt S207 erfüllt worden ist, kann der Prozess zu Schritt S208 übergehen. In Schritt S208 kann die Verarbeitungseinheit den aktuellen vereinigten Klassifikator 126 speichern, und der Prozess kann in Schritt S209 enden.
-
Gemäß einer oder mehreren Ausführungsformen der vorliegenden Erfindung ist es möglich, das Wissen der einzelnen trainierten Modelle (der einzelnen Klassifikatoren 122-1 bis 122-N) auf das vereinigte Modell (den vereinigten Klassifikator 126) zu übertragen, obwohl die einzelnen trainierten Modelle unterschiedliche Teilsätze von Zielklassen aufweisen. Die vereinigten Soft-Labels werden aus den Vorhersagen geschätzt, die durch die einzelnen trainierten Modelle in einer Weise erzeugt werden, die mit der Ausgabe des vereinigten Modells konsistent ist.
-
Darüber hinaus zeigt das vereinigte Modell, das mit den vereinigten Soft-Labels trainiert worden ist, eine hohe Leistungsfähigkeit, die insbesondere mit einem Modell vergleichbar ist, das direkt in zentralisierter und überwachter Weise mit Trainings-Daten trainiert worden ist, die zum Trainieren der einzelnen trainierten Modelle verwendet werden, wie im folgenden experimentellen Abschnitt beschrieben wird. Im Gegensatz zu Ensemble-Verfahren werden die einzelnen trainierten Modelle, die zum Trainieren des vereinigten Modells verwendet werden, nicht mehr zur Ableitung benötigt, wohingegen bei den Ensemble-Ansätzen alle Modelle gespeichert und ausgeführt werden müssen, was bei einem Verwenden komplexer Modelle zu einem Skalierbarkeitsproblem führen kann. Ein Trainieren eines neuen Modells ermöglicht eine Verringerung des Rechenaufwands im Vergleich zu den Ensemble-Verfahren. Auch durch Einführen der probabilistischen Beziehung wird ein Bereitstellen einer unpassenden Überwachung für fehlende Zielklassen in der Vorhersage des einzelnen trainierten Modells vermieden, und es ist möglich, die Verschlechterung der Leistungsfähigkeit des vereinigten Modells aufgrund einer solchen unpassenden Überwachung zu verhindern.
-
Der oben erwähnte Kreuzentropieansatz und die Matrixfaktorisierungsansätze stellen praktische Lösungen zum Lösen der vereinigten Soft-Labels q aus den Vorhersagen pi des einzelnen Klassifikators 122 bereit.
-
Des Weiteren wird, um die neuartige Wissensdestillation durchzuführen, keine Datenübertragung von Trainings-Daten benötigt, die zum Trainieren des einzelnen trainierten Modells verwendet werden. Der Inhalt des einzelnen trainierten Modells und der aus dem einzelnen trainierten Modell gewonnenen Soft-Label-Sammlung sind keine Rohdaten und im Allgemeinen kompakter als dessen Trainings-Daten. Darüber hinaus bestehen weniger Einschränkungen hinsichtlich der Modellarchitektur des einzelnen trainierten Modells. Daher ist dies in einer Situation vorzuziehen, in der zumindest eine von Einschränkungen bezüglich Modellarchitektur, Berechnungen, Datenverfügbarkeit und Vertraulichkeit besteht.
-
Es kann praktische Anwendungen für die Fälle geben, in denen es aufgrund von Einschränkungen bezüglich Berechnungen, Datenverfügbarkeit und Vertraulichkeit nicht möglich ist, jede Entität zu zwingen, dasselbe Modell/dieselbe Architektur zu verwenden; genügend Trainings-Daten für alle Klassen zu sammeln; oder Daten an den zentralen Knoten zu senden.
-
Gemäß der oben erwähnten Ausführungsform ist die neuartige Wissensdestillation in einem Kontext der Bildklassifikation beschrieben worden. Der durch die neuartige Wissensdestillation gemäß einer oder mehreren Ausführungsformen der vorliegenden Erfindung zu trainierende Klassifikator ist jedoch nicht auf den Bildklassifikator beschränkt. In einer oder sonstigen Ausführungsformen sind viele Anwendungen denkbar, darunter Spracherkennung, Handschrifterkennung, medizinische Bildanalyse, Mustererkennung, um nur einige zu nennen.
-
Nachdem die Vorteile beschrieben worden sind, die im Hinblick auf die eine oder mehreren spezifischen Ausführungsformen gemäß der vorliegenden Erfindung erzielt werden, versteht es sich, dass einige Ausführungsformen diese potenziellen Vorteile möglicherweise nicht aufweisen und diese potenziellen Vorteile nicht unbedingt für alle Ausführungsformen erforderlich sind.
-
Experimentelle Untersuchung
-
Programme, die das Wissensdestillationssystem und die Wissensdestillationsprozesse, die unter Bezugnahme auf die Reihe von 1 bis 7 beschrieben werden, gemäß den beispielhaften Ausführungsformen implementieren, wurden codiert und ausgeführt.
-
Es werden die Hauptexperimente an den Datensätzen ImageNet, LSUN und Places 365 beschrieben. Im Folgenden wird die folgende Abkürzung verwendet, um die oben erwähnten Verfahren zu bezeichnen: SD für die naive Erweiterung der Standarddestillation (Vergleichsbeispiel 1), bei der einfach pi(Y = I) = 0 für I, das in dem Satz L-i. enthalten ist, festgelegt wird; CE-X für auf Kreuzentropie beruhende Verfahren (Beispiele 1 bis 3); MF-P-X für Matrixfaktorisierung an der Wahrscheinlichkeit (Beispiel 4 bis 6); und MF-LU-X und MF-LF-X für Matrixfaktorisierung an Logits mit nicht festgelegtem (Beispiel 7 bis 9) bzw. festgelegtem v (Beispiel 10 bis 12). In den oben erwähnten Abkürzungen wird das Suffix „X‟ durch „E‟, wenn die vereinigten Soft-Labels q zuerst geschätzt werden, bevor sie zum Trainieren des vereinigten Klassifikators 126 (Cu) verwendet werden (Beispiele 1, 4, 7, 10); durch „BP‟, wenn eine direkte Rückwärtspropagierung von der Verlustfunktion durchgeführt wird (Beispiele 2, 5, 8, 11); und durch ,BS' ersetzt, wenn die vereinigten Soft-Labels q durch die Inverse des Mittelwerts der Wahrscheinlichkeit q(Y= I) als Statik ausgeglichen werden, bevor der vereinigte Klassifikator 126 (Cu) trainiert wird (Beispiele 3, 6, 9, 12). Zusätzlich zu den oben erwähnten Verfahren sind SD-BS als SD-Verfahren mit ausgeglichenen Soft-Labels (Vergleichsbeispiel 2) und SPV (Vergleichsbeispiel 3) als in überwachter Weise direkt trainiertes Verfahren mit allen Daten mit Kennzeichnung aller einzelnen Klassifikatoren 122 (Ci) als Orientierung enthalten. Für MF-LU-X-Verfahren wurde der Hyperparameter r= 0,01 verwendet. Alle Verfahren verwendeten die Temperatur T = 3 zum Glätten der Soft-Labels und Logits.
-
Zunächst werden die Experimentenprotokolle, Einzelheiten zu den Datensätzen, die Architekturen, die als einzelner Klassifikator 122 (Ci) und als vereinigter Klassifikator 126(CU) verwendet werden, und die Konfigurationen des einzelnen Klassifikators 122 (Ci) beschrieben. Anschließend wird das Ergebnis erörtert.
-
Experimentenprotokolle:
-
Datensätze: Es wurden drei Datensätze verwendet. Bei dem ersten Datensatz handelt es sich um ImageNet (ILSVRC2012). Dieser Datensatz enthält 1 k Klassen mit ungefähr 700 bis 1.300 Trainings- und 50 Validierungsbildern pro Klasse sowie 100 k Testbilder ohne Kennzeichnung. In diesem Experiment wurden die Trainings-Bilder als Trainings-Daten für die einzelnen Klassifikatoren 122-1 bis 122-N (Ci) verwendet, die Testbilder ohne Kennzeichnung wurden als Übertragungssammlung 124 (U) verwendet, und die Validierungsbilder wurden als Testsatz zum Bewerten der Genauigkeit verwendet. Bei dem zweiten Datensatz handelt es sich um LSUN, der 10 Klassen mit ungefähr 100 k bis 3 M Trainings-Bildern (je nach Klasse) und 300 Validierungsbildern pro Klasse mit 10 k Testbildern ohne Kennzeichnung enthält. Hier wurde ein Satz von 1 k Trainings-Bildern pro Klasse zufällig abgetastet, um den einzelnen Klassifikator 122 (Ci) zu trainieren, ein zweiter zufällig abgetasteter Satz von 20 k Bildern pro Klasse, ebenfalls aus den Trainings-Daten, wurde als Übertragungssammlung 124 (U) verwendet, und die Validierungsdaten wurden als Testsatz verwendet. Bei dem dritten Datensatz handelt es sich um Places365. Dieser Datensatz enthält 365 Klassen mit ungefähr 3 k bis 5 k Trainings- und 100 Validierungsbildern pro Klasse sowie 329 k Testbildern ohne Kennzeichnung. In diesem Experiment wurden die Trainings-Bilder als Trainings-Daten für die einzelnen Klassifikatoren 122-1 bis 122-N (Ci) verwendet, die Testbilder ohne Kennzeichnung wurden als Übertragungssammlung 124 (U) verwendet, und die Validierungsbilder wurden als Testsatz zum Bewerten der Genauigkeit verwendet. Alle Bilder wurden durch Ausschneiden aus der Mitte und Skalieren auf 64 x 64 Pixel vorverarbeitet.
-
Konfigurationen der einzelnen Klassifikatoren:
-
Die vorgeschlagenen Verfahren wurden mit zwei Konfigurationen der einzelnen Klassifikatoren getestet (zusammengefasst in Tabelle 1). (i) Zufallsklassen: Für den ImageNet-Datensatz wurden in jedem Versuch
20 bis
50 Klassen als Lu abgetastet und wurden 10 bis 20 einzelne Klassifikatoren
122 (C
i) trainiert, wobei jeder trainiert wurde, um 5 bis 15 Klassen zu klassifizieren. Für den LSUN-Datensatz wurden in jedem Versuch 5 bis 10 Klassen als Lu abgetastet und wurden 3 bis 7 einzelne Klassifikatoren
122 trainiert, wobei jeder trainiert wurde, um 2 bis 5 Klassen zu klassifizieren. Diese Konfiguration wurde als Haupttest dafür verwendet, wenn die einzelnen Klassifikatoren
122 (C
i) unterschiedliche Sätze von Klassen klassifizieren. Für den Places365-Datensatz wurden in jedem Versuch
20 bis
50 Klassen als Lu abgetastet und wurden 10 bis 20 einzelne Klassifikatoren
122 (C
i) trainiert, wobei jeder trainiert wurde, um 5 bis 15 Klassen zu klassifizieren. (ii) Vollständig überlappende Klassen: Hier wurden dieselben Konfigurationen wie in (i) verwendet, mit der Ausnahme, dass alle einzelnen Klassifikatoren
122 (C
i) trainiert wurden, um alle Klassen in Lu zu klassifizieren. Dieser Fall wird verwendet, um die vorgeschlagenen Verfahren mit den gemeinsamen Konfigurationen zu testen, bei denen alle Klassifikatoren C
i und Cu dieselben Klassen gemeinsam nutzen. Bei beiden Konfigurationen bestand die Übertragungssammlung
124 (U) aus einem erheblich größeren Satz von Klassen als Lu. Mit anderen Worten, ein großer Teil der Bilder in der Übertragungssammlung
124 (U) fiel unter keine der Klassen in Lu.
Tabelle 1
Datensatz | # von Klassen in Lu | # von einzelnen Klassifikatoren (N) | # von Klassen für jeden einzelnen Klassifikator |
Zufall | Vollständig überlappend |
ImageNet | 20-50 | 10-20 | 5-15 | =L |
LSUN | 5-10 | 3-7 | 2-5 | =L |
Places365 | 20-50 | 10-20 | 5-15 | =L |
-
Modelle:
-
Jeder einzelne Klassifikator 122 (Ci) wurde zufällig aus einer der folgenden vier Architekturen mit anhand von ImageNet vortrainierten Gewichtungen ausgewählt: AlexNet, VGG16, ResNet18 und ResNet34. Für AlexNet und VGG16 wurden die Gewichtungen ihres Merkmalextraktor-Abschnitts festgelegt, ihre fc(fully connected, vollständig verbundenen)-Schichten wurden durch zwei fc-Schichten mit 256 verdeckten Knoten (mit BatchNorm und ReLu) ersetzt, und die fc-Schichten wurden mit ihren Trainings-Daten trainiert. In ähnlicher Weise wurden bei den ResNet-Modellen deren fc-Schichten durch zwei fc-Schichten mit 256 verdeckten Knoten wie oben ersetzt. Darüber hinaus wurde der letzte Restblock einer Feinabstimmung unterzogen. Für den vereinigten Klassifikator 126 (Cu) wurden zwei Modelle, darunter VGG16 und ResNet34, mit ähnlichen Einstellungen wie oben verwendet.
-
Für alle Datensätze und Konfigurationen wurde jeder einzelne Klassifikator 122 (Ci) mit 50 bis 200 Stichproben pro Klasse trainiert; keine Stichprobe wurde zwischen einzelnen Klassifikatoren 122 (Ci) in demselben Versuch gemeinsam genutzt. Diese einzelnen Klassifikatoren 122 (Ci) wurden dann zusammen mit der Übertragungssammlung 124 (U) verwendet, um den vereinigten Klassifikator 126 (Cu) zu trainieren. Alle Modelle wurden über 20 Epochen mit dem SGD(Stochastic Gradient Descent, stochastischer Gradientenabstieg)-Optimierungsprogramm trainiert (Schrittgrößen von 0,1 und 0,015 für die ersten und letzten 10 Epochen mit einer Dynamik von 0,9). Um die Variation in den Ergebnissen zu steuern, wurde in jedem Versuch der vereinigte Klassifikator 126 (Cu) derselben Architektur mithilfe derselben Gewichtungen initialisiert und mithilfe derselben Stapelreihenfolge trainiert. Der vereinigte Klassifikator 126 (Cu) aller Verfahren wurde anhand der Testdaten aller Klassen in L seines jeweiligen Versuchs bewertet. Für jeden Datensatz, jedes Modell und die Konfigurationskombination der einzelnen Klassifikatoren wurden 50 Versuche durchgeführt.
-
Ergebnis:
-
Die bewerteten Genauigkeitsergebnisse sind in der folgenden Tabelle 2 und Tabelle 3 zusammengefasst:
Tabelle 2
Verfahren | Zufallsklassen |
ImageNet | LSUN | Places365 |
VGG16 | ResNet34 | VGG16 | ResNet34 | VGG16 | ResNet34 |
SPV | 0,7212 | 0,6953 | 0,6664 | 0,6760 | 0,5525 | 0,5870 |
SD | 0,5543 | 0,5562 | 0,5310 | 0,5350 | 0,4390 | 0,4564 |
CE-E | 0,6911 | 0,6852 | 0,6483 | 0,6445 | 0,5484 | 0,5643 |
MF-P-E | 0,6819 | 0,6747 | 0,6443 | 0,6406 | 0,5349 | 0,5488 |
MF-LU-E | 0,6660 | 0,6609 | 0,6348 | 0,6330 | 0,5199 | 0,5414 |
MF-LF-E | 0,6886 | 0,6833 | 0,6490 | 0,6458 | 0,5441 | 0,5609 |
CE-BP | 0,6902 | 0,6869 | 0,6520 | 0,6439 | 0,5466 | 0,5669 |
MF-P-BP | 0,6945 | 0,6872 | 0,6480 | 0,6417 | 0,5471 | 0,5609 |
MF-LU-BP | 0,6889 | 0,6847 | 0,6495 | 0,6389 | 0,5467 | 0,5681 |
MF-LF-BP | 0,6842 | 0,6840 | 0,6523 | 0,6445 | 0,5383 | 0,5624 |
SD-BS | 0,6629 | 0,6574 | 0,6343 | 0,6345 | 0,5283 | 0,5433 |
CE-BS | 0,6928 | 0,6856 | 0,6513 | 0,6464 | 0,5548 | 0,5687 |
MF-P-BS | 0,6851 | 0,6756 | 0,6474 | 0,6450 | 0,5455 | 0,5546 |
MF-LU-BS | 0,6772 | 0,6682 | 0,6388 | 0,6357 | 0,5346 | 0,5497 |
MF-LF-BS | 0,6935 | 0,6865 | 0,6549 | 0,6485 | 0,5544 | 0,5692 |
Tabelle 3
Verfahren | Vollständig überlappende Klassen |
ImageNet | LSUN | Places365 |
VGG16 | ResNet34 | VGG16 | ResNet34 | VGG16 | ResNet34 |
SPV | 0,7345 | 0,7490 | 0,6769 | 0,7017 | 0,5960 | 0,6460 |
SD | 0,7275 | 0,7292 | 0,7004 | 0,7041 | 0,6163 | 0,6402 |
CE-E | 0,7276 | 0,7290 | 0,7002 | 0,7036 | 0,6162 | 0,6406 |
MF-P-E | 0,7280 | 0,7297 | 0,7012 | 0,7052 | 0,6167 | 0,6406 |
MF-LU-E | 0,7231 | 0,7242 | 0,7031 | 0,7043 | 0,6129 | 0,6374 |
MF-LF-E | 0,7265 | 0,7279 | 0,7015 | 0,7057 | 0,6161 | 0,6397 |
CE-BP | 0,7275 | 0,7288 | 0,7003 | 0,7040 | 0,6161 | 0,6400 |
MF-P-BP | 0,7277 | 0,7287 | 0,6999 | 0,7019 | 0,6146 | 0,6384 |
MF-LU-BP | 0,7229 | 0,7225 | 0,7001 | 0,7046 | 0,6113 | 0,6369 |
MF-LF-BP | 0,7239 | 0,7252 | 0,7020 | 0,7034 | 0,6104 | 0,6366 |
SD-BS | 0,7217 | 0,7214 | 0,6979 | 0,7017 | 0,6094 | 0,6320 |
CE-BS | 0,7215 | 0,7213 | 0,6979 | 0,7018 | 0,6094 | 0,6323 |
MF-P-BS | 0,7243 | 0,7252 | 0,6996 | 0,7041 | 0,6124 | 0,6355 |
MF-LU-BS | 0,7168 | 0,7173 | 0,7014 | 0,7028 | 0,6063 | 0,6301 |
MF-LF-BS | 0,7210 | 0,7215 | 0,6998 | 0,7035 | 0,6101 | 0,6330 |
-
Tabelle 2 und Tabelle 3 stellen die Genauigkeit der Verfahren über verschiedene Kombinationen von Konfigurationen einzelner Klassifikatoren, Datensätzen und vereinigten Klassifikatormodellen dar. Jede Spalte stellt die durchschnittliche Genauigkeit jedes Verfahrens bei jeder experimentellen Einstellung dar, wobei das beste Ergebnis ohne SPV jeder Einstellung unterstrichen fett dargestellt wird. Um die statistische Signifikanz zu testen, wurde der Wilcoxon-Vorzeichen-Rang-Test über die Standardabweichung gewählt, um den sehr unterschiedlichen Einstellungen (z.B. Modellarchitekturen, Anzahl der Klassen und HCs usw.) über die Versuche hinweg Rechnung zu tragen. Der Test wurde zwischen dem Verfahren mit der besten Leistung in jedem Experiment und den Übrigen durchgeführt. Verfahren, bei denen sich die Leistungsfähigkeit bei α = 0,01 nicht statistisch signifikant von dem besten Verfahren unterscheidet, werden fett dargestellt.
-
Im Folgenden wird das Ergebnis für den Fall einer Zufallsklasse beschrieben, der das Hauptszenario der vorgeschlagenen neuartigen Wissensdestillation anspricht, wenn jeder einzelne Klassifikator 122 zum Klassifizieren verschiedener Sätze von Klassen trainiert wurde.
-
Wie in Tabelle 2 dargestellt, schnitten alle vorgeschlagenen Verfahren (Beispiele 1 bis 12) signifikant besser ab als SD (Vergleichsbeispiel 1). Alle Verfahren der q schätzenden Verfahren mit den Suffixen „E‟ (Beispiele 1, 4, 7, 10), der Verfahren mit direkter Rückwärtspropagierung mit den Suffixen „BP‟ (Beispiele 2, 5, 8, 11) und der Ausgleichsverfahren mit den Suffixen „BS‟ (einschließlich SD-BS) (Beispiele 3, 6, 9, 12 und Vergleichsbeispiel 2) der Tabelle 2 übertrafen SD (Vergleichsbeispiel 1) mit einem großen Vorsprung von 9 bis 15 %. Es wurde gezeigt, dass ein einfaches Festlegen der Wahrscheinlichkeit undefinierter Klassen jedes einzelnen Klassifikators auf 0 die Genauigkeit signifikant verschlechtern kann. Demgegenüber erzielten die vorgeschlagenen Verfahren (Beispiele 1 bis 12) signifikant bessere Ergebnisse und erreichten fast dieselbe Genauigkeit wie SPV (Vergleichsbeispiel 3) mit einem Abstand von 1 bis 4 %. Dies deutet darauf hin, dass die Soft-Labels von den einzelnen Klassifikatoren 122 (Ci) für ein unüberwachtes Training mit geringem Genauigkeitsverlust verwendet werden können, obwohl die Übertragungssammlung 124 (U) einen signifikanten Anteil an Bildern enthält, die nicht Teil der Zielklassen sind. Dennoch gibt es mehrere Faktoren, die die Fähigkeit des vereinigten Klassifikators 126 (Cu), die Genauigkeit von SPV zu erreichen, beeinflussen können, z.B. die Genauigkeit der einzelnen Klassifikatoren 122 (Ci), ihre Architekturen usw.
-
Es ist zu erkennen, dass verschiedene Algorithmen unter verschiedenen Einstellungen am besten abschnitten, jedoch die Matrixfaktorisierung an den Logits mit festgelegtem v (Beispiel 10 bis 12) immer am besten abschneidet oder keinen statistischen Unterschied zu den besten Verfahren aufweist. Dies deutet darauf hin, dass die Matrixfaktorisierung an Logits mit festgelegtem v das beste Verfahren zum Lösen des Problems des Vereinigens von heterogenen Klassifikatoren sein könnte.
-
Wenngleich die Verbesserung nur geringfügig sein mag (weniger als 1,5 %), übertreffen die Label-Ausgleichsverfahren mit dem Suffix „BS‟ (Beispiele 3, 6, 9, 12) durchweg ihre Entsprechungen mit dem Suffix „E‟ (Beispiele 1, 4, 7, 10). Diese Ergebnisse deuten darauf hin, dass es eine gute Idee ist, die ausgeglichenen Soft-Labels zum Trainieren des vereinigten Klassifikators 126 (Cu) zu verwenden. Es ist zu beachten, dass SD-BS (Vergleichsbeispiel 2) zwar einen signifikanten Schub erhielt, aber dennoch im Allgemeinen schlechter als sonstige CE- und MF-Verfahren (Beispiele 1 bis 12) abschnitt, was darauf hindeutet, dass es wichtig ist, die Beziehung zwischen {pi}i und q in das Training einzubeziehen.
-
Die Verfahren mit den Suffixen „E‟ und „BS‟ beruhen auf einem Schätzen von q vor dem Trainieren des vereinigten Klassifikators 126 (Cu), wohingegen die Verfahren mit dem Suffix „BP‟ direkt eine Rückwärtspropagierung von der Verlustfunktion durchführten. Die Verluste der Kreuzentropie (CE) und die Matrixfaktorisierung an Logits mit festgelegtem v (MF-LF) sind konvex in ihren Variablen, wohingegen die Matrixfaktorisierung an der Wahrscheinlichkeit (MF-P) und die Matrixfaktorisierung an den Logits mit nicht festgelegtem v (MF-LU) nichtkonvex sind. Hier ist eine kleine, aber interessante Wirkung zu beobachten, bei der Verfahren mit konvexen Verlusten besser abschnitten, wenn q zuerst geschätzt wird, statt den Verlust direkt rückwärts zu propagieren, wohingegen nichtkonvexe ein entgegengesetztes Ergebnis aufweisen. Dies kann auf der Ansammlung von Fehlern beruhen, wenn q für nichtkonvexe Verfahren geschätzt wird, die weitergegeben werden, anschließend wird der vereinigte Klassifikator 126 (Cu) trainiert, wohingegen nichtkonvexe „BP‟-Verfahren in der Lage sein könnten, eine solche lokale Fehleransammlung zu vermeiden. Demgegenüber können konvexe Verfahren global ein optimales q schätzen, so dass deren Verwendung zum Trainieren des vereinigten Klassifikators 126 (Cu) bewirken kann, dass schlechte lokale Optima vermieden werden.
-
Als Nächstes werden die Ergebnisse des vollständig überlappenden Falls unter Bezugnahme auf Tabelle 3 beschrieben. Alle Verfahren (Beispiele 1 bis 12) schnitten ziemlich gleich gut ab. Es ist zu erkennen, dass alle Verfahren ungefähr dieselbe Genauigkeit wie SD (Vergleichsbeispiel 1) erreichten. Dies zeigt, dass die vorgeschlagenen Verfahren auch in den üblichen Fällen, in denen alle einzelnen Klassifikatoren darauf trainiert werden, alle Klassen zu klassifizieren, eine gute Leistung erbringen können und untermauert, dass die vorgeschlagenen Verfahren Verallgemeinerungen der Wissensdestillation sind.
-
Es ist festzustellen, dass ein Ausgleichen von Soft-Labels die Genauigkeit tendenziell etwas verschlechtert. Hier schnitt sogar SD-BS (Vergleichsbeispiel 2), das im Fall einer Zufallsklasse einen Genauigkeitsschub erhielt, schlechter ab als seine Entsprechung SD (Vergleichsbeispiel 1). Dies deutet darauf hin, dass es in diesem Fall eine bessere Option sein könnte, Soft-Labels nicht auszugleichen.
-
Für die Datensätze LSUN und Places365 ist zu erkennen, dass alle Verfahren (Beispiele 1 bis 12) besser abschnitten als SPV (Vergleichsbeispiel 3). Insbesondere bei VGG16 schnitt SPV in den meisten der 50 Versuche durchweg um 1 bis 3 % schlechter ab als sonstige Verfahren. Dies zeigt, dass es möglich ist, dass auf Destillation beruhende Verfahren ihre überwachten Entsprechungen übertreffen können.
-
Sensitivitätsanalyse
-
Darüber hinaus wurden drei Sätze von Sensitivitätsanalysen im Hinblick auf die Wirkung der Größe des Übertragungssatzes, des Temperaturparameters T und der Genauigkeit der einzelnen Klassifikatoren 122 (Ci) durchgeführt. Es wurden dieselben Einstellungen wie bei dem Experiment mit den Zufallsklassen von ImageNet mit VGG16 als vereinigter Klassifikator 126 (Cu) verwendet. Für jeden Test wurden 50 Versuche durchgeführt. Die folgenden fünf Verfahren wurden als repräsentativer Satz von SD- und leistungsfähigsten Verfahren aus dem vorherigen Abschnitt bewertet: SD (Vergleichsbeispiel 4), SD-BS (Vergleichsbeispiel 5), MF-P-BP (Beispiel 13), MF-LF-BS (Beispiel 14) und CE-BS (Beispiel 15).
-
Größe des Übertragungssatzes: Der Test zum Bewerten der Wirkung der Anzahl der Stichproben ohne Kennzeichnung in dem Übertragungssatz U wurde verwendet. Die Anzahl der Stichproben wurde von 103 bis 105 variiert. Das Ergebnis wird in 8A dargestellt. Wie erwartet, ist zu erkennen, dass sich alle Verfahren mit abnehmender Größe des Übertragungssatzes verschlechtern. In diesem Test ist MF-P-BP (Beispiel 13) am stärksten durch die Abnahme beeinflusst, da seine Genauigkeit am schnellsten abnimmt. Dennoch schneiden alle sonstigen Verfahren (Beispiele 13 bis 15) im gesamten Testbereich besser ab als SD, was die Robustheit gegenüber Übertragungssätzen mit unterschiedlichen Größen veranschaulicht.
-
Temperatur: In diesem Test wurde die Temperatur T, die zum Glätten der Wahrscheinlichkeit {pi}i verwendet wurde, variiert, bevor sie zum Schätzen von q oder zum Trainieren von CU verwendet wurde. Die bewerteten Werte sind T = 1, 3, 6; und 10. Das Ergebnis wird in 8B dargestellt. Es ist zu erkennen, dass die Genauigkeiten von SD und SD-BS (Vergleichsbeispiele 4 bis 5) signifikant abfallen, wenn T auf hohe bzw. niedrige Werte festgelegt wird. Demgegenüber werden die sonstigen drei Verfahren (Beispiele 13 bis 15) durch unterschiedliche Werte von T weniger beeinflusst.
-
Genauigkeiten von einzelnen Klassifikatoren: In diesem Test wurde die Robustheit der Verfahren gegenüber einer variierenden Genauigkeit der einzelnen Klassifikatoren 122 (Ci) bewertet. Das Testprotokoll ist wie folgt: In jedem Versuch wurde die Genauigkeit aller einzelnen Klassifikatoren 122 (Ci) auf 40 bis 80 % variiert, pi wurde aus den einzelnen Klassifikatoren 122 (Ci) gewonnen und zum Durchführen des Verfahrens verwendet. Um die Genauigkeit jedes einzelnen Klassifikators 122 (Ci) zu variieren, wurden pro Klasse 50 Stichproben aus den Trainings-Daten als Anpassungssatz entnommen, jeder einzelne Klassifikator 122 (Ci) aus den verbleibenden Trainings-Daten vollständig trainiert, anschließend zunehmendes Gaußsches Rauschen in die letzte fc-Schicht injiziert, bis deren Genauigkeit in dem Anpassungssatz auf den gewünschten Wert fällt. Wenn die anfängliche Genauigkeit der einzelnen Klassifikatoren 122 (Ci) unter dem gewünschten Wert liegt, wurde einfach der anfängliche Ci verwendet. Das Ergebnis dieser Bewertung wird in 8C dargestellt. Es ist zu erkennen, dass die Genauigkeit aller Verfahren (Beispiele 13 bis 15) zunimmt, wenn die einzelnen Klassifikatoren 122 (Ci) besser abschneiden, was veranschaulicht, dass die Genauigkeit der einzelnen Klassifikatoren 122 (Ci) ein beträchtlicher Faktor für die Leistungsfähigkeit ist. Es ist darüber hinaus zu erkennen, dass MF-P-BP (Beispiel 13) am meisten durch eine geringe Genauigkeit der einzelnen Klassifikatoren 122 (Ci) beeinflusst ist, wohingegen MF-LF-BS (Beispiel 14) am robustesten ist.
-
Auf Grundlage der Sensitivitätsanalyse wurde gezeigt, dass MF-LF-BS (Beispiel 14) das robusteste Verfahren gegenüber der Anzahl der Stichproben in dem Übertragungssatz, der Temperatur und der Genauigkeit der einzelnen Klassifikatoren 122 ist. Dieses Ergebnis ist ein weiterer Hinweis dafür, dass MF-LF-BS das von uns vorgeschlagene Verfahren ist.
-
Computer-Hardware-Komponente
-
Unter Bezugnahme auf 9 wird eine schematische Darstellung eines Beispiels für ein Computersystem 10 dargestellt, das als das zentrale Datenverarbeitungssystem 120 und ein sonstiges Datenverarbeitungssystem für Daten-Ressourcen 110 verwendet werden kann. Das in 9 dargestellte Computersystem 10 ist als Computersystem implementiert. Das Computersystem 10 ist lediglich ein Beispiel für eine geeignete Verarbeitungseinheit und soll den Umfang der Nutzung oder der Funktionalität von Ausführungsformen der hierin beschriebenen Erfindung nicht einschränken. Dennoch ist das Computersystem 10 in der Lage, implementiert zu werden und/oder jegliche der hierin oben dargelegten Funktionalitäten durchzuführen.
-
Das Computersystem 10 ist mit zahlreichen sonstigen Universal- oder Spezial-Datenverarbeitungssystem-Umgebungen oder -Konfigurationen betriebsfähig. Zu Beispielen für allgemein bekannte Datenverarbeitungssysteme, -Umgebungen und/oder - Konfigurationen, die zur Verwendung mit dem Computersystem 10 geeignet sein können, zählen Personal-Computersysteme, Server-Computersysteme, Thin Clients, Thick Clients, Hand- oder Laptop-Einheiten, Bordeinheiten, Mehrprozessorsysteme, Systeme auf Grundlage von Mikroprozessoren, Set-Top-Boxen, programmierbare Unterhaltungselektronik, Netzwerk-PCs, Minicomputersysteme, Großrechnersysteme und verteilte Cloud-Computing-Umgebungen, die beliebige der obigen Systeme oder Einheiten enthalten, und dergleichen, ohne auf diese beschränkt zu sein.
-
Das Computersystem 10 kann im allgemeinen Zusammenhang von Anweisungen beschrieben werden, die durch ein Computersystem ausführbar sind, wie zum Beispiel Programmmodule, die durch ein Computersystem ausgeführt werden. Im Allgemeinen können Programmmodule Routinen, Programme, Objekte, Komponenten, Logik, Datenstrukturen usw. enthalten, die bestimmte Aufgaben durchführen oder bestimmte abstrakte Datentypen implementieren.
-
Wie in 9 gezeigt, wird das Computersystem 10 in Form einer Universal-Datenverarbeitungseinheit dargestellt. Zu den Komponenten des Computersystems 10 können ein Prozessor (oder eine Verarbeitungsschaltung) 12 und ein Speicher 16, der mit dem Prozessor 12 durch einen Bus, darunter einen Speicherbus oder eine Speichersteuereinheit, verbunden ist, und ein Prozessor oder ein lokaler Bus mithilfe einer beliebigen von einer Vielfalt von Busarchitekturen zählen.
-
Das Computersystem 10 enthält üblicherweise eine Vielfalt von durch ein Computersystem lesbaren Medien. Bei solchen Medien kann es sich um beliebige verfügbare Medien handeln, auf die durch das Computersystem 10 zugegriffen werden kann, und sie enthalten sowohl flüchtige als auch nichtflüchtige Medien sowie austauschbare und nichtaustauschbare Medien.
-
Der Speicher 16 kann durch ein Computersystem lesbare Medien in Form eines flüchtigen Speichers wie zum Beispiel eines Direktzugriffsspeichers (random access memory, RAM) enthalten. Das Computersystem 10 kann des Weiteren sonstige austauschbare/nicht austauschbare, flüchtige/nichtflüchtige Computersystem-Speichermedien enthalten. Lediglich als Beispiel kann das Speichersystem 18 zum Lesen von einem nicht austauschbaren, nichtflüchtigen Magnetmedium und zum Schreiben darauf bereitgestellt werden. Wie im Folgenden näher dargestellt und beschrieben wird, kann das Speichersystem 18 zumindest ein Programmprodukt enthalten, das einen Satz (z.B. zumindest eins) von Programmmodulen aufweist, die dazu konfiguriert sind, die Funktionen von Ausführungsformen der Erfindung auszuführen.
-
Ein Programm/Dienstprogramm, das einen Satz (zumindest eins) von Programmmodulen aufweist, kann als Beispiel, das keine Einschränkung darstellen soll, in dem Speichersystem 18 gespeichert werden, wie auch ein Betriebssystem, ein oder mehrere Anwendungsprogramme, sonstige Programmmodule und Programmdaten. Von dem Betriebssystem, dem einen oder den mehreren Anwendungsprogrammen, den sonstigen Programmmodulen und Programmdaten und einigen Kombinationen von diesen kann jedes eine Implementierung einer Netzwerkumgebung enthalten. Programmmodule führen im Allgemeinen die Funktionen und/oder Methoden von Ausführungsformen der Erfindung aus, wie sie hierin beschrieben wird.
-
Das Computersystem 10 kann außerdem mit einem oder mehreren Peripheriegeräten 24 wie zum Beispiel einer Tastatur, einer Zeigeeinheit, einem Fahrzeugnavigationssystem, einem Audiosystem usw.; einer Anzeige 26; einer oder mehreren Einheiten, die einem Benutzer ermöglichen, mit dem Computersystem 10 in Wechselwirkung zu treten; und/oder beliebigen Einheiten (z.B. einer Netzwerkkarte, einem Modem usw.) Daten austauschen, die dem Computersystem 10 ermöglichen, Daten mit einer oder mehreren sonstigen Datenverarbeitungseinheiten auszutauschen. Ein solcher Datenaustausch kann über Eingabe-/Ausgabe(E/A)-Schnittstellen 22 durchgeführt werden. Weiterhin kann das Computersystem 10 mit einem oder mehreren Netzwerken wie zum Beispiel einem lokalen Netzwerk (lokal area network, LAN), einem allgemeinen Weitverkehrsnetz (wide area network, WAN) und/oder einem öffentlichen Netzwerk (z.B. dem Internet) über einen Netzwerkadapter 20 Daten austauschen. Wie dargestellt, tauscht der Netzwerkadapter 20 Daten mit den sonstigen Komponenten des Computersystems 10 über einen Bus aus. Es versteht sich, wenngleich dies nicht dargestellt wird, dass sonstige Hardware- und/oder Software-Komponenten zusammen mit dem Computersystem 10 verwendet werden könnten. Zu Beispielen zählen Mikrocode, Einheitentreiber, redundante Verarbeitungseinheiten, externe Plattenlaufwerk-Arrays, RAID-Systeme, Bandlaufwerke und Datenarchivierungs-Speichersysteme usw., ohne auf diese beschränkt zu sein.
-
Computerprogrammimplementierung
-
Bei der vorliegenden Erfindung kann es sich um ein System, ein Verfahren und/oder ein Computerprogrammprodukt handeln. Das Computerprogrammprodukt kann (ein) durch einen Computer lesbare(s) Speichermedium (oder -medien) enthalten, auf dem/denen durch einen Computer lesbare Programmanweisungen gespeichert ist/sind, um einen Prozessor dazu zu veranlassen, Aspekte der vorliegenden Erfindung auszuführen.
-
Bei dem durch einen Computer lesbaren Speichermedium kann es sich um eine physische Einheit handeln, die Anweisungen zur Verwendung durch eine Einheit zur Ausführung von Anweisungen behalten und speichern kann. Bei dem durch einen Computer lesbaren 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 durch einen Computer lesbaren Speichermediums gehören die Folgenden: eine tragbare Computerdiskette, eine Festplatte, ein Direktzugriffsspeicher (RAM), ein Festwertspeicher (ROM), ein löschbarer programmierbarer Festwertspeicher (EPROM bzw. Flash-Speicher), ein statischer Direktzugriffsspeicher (SRAM), ein tragbarer Kompaktspeicherplatten-Festwertspeicher (CD-ROM), eine DVD (digital versatile disc), ein Speicher-Stick, eine Diskette, eine mechanisch codierte Einheit wie zum Beispiel Lochkarten oder erhabene Strukturen in einer Rille, auf denen Anweisungen gespeichert sind, und jede geeignete Kombination daraus. Ein durch einen Computer lesbares 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 Glasfaserkabel geleitete Lichtimpulse) oder durch einen Draht übertragene elektrische Signale.
-
Hierin beschriebene, durch einen Computer lesbare Programmanweisungen können von einem durch einen Computer lesbaren Speichermedium auf jeweilige Datenverarbeitungs-/Verarbeitungseinheiten oder über ein Netzwerk wie zum Beispiel das Internet, ein lokales Netzwerk, ein Weitverkehrsnetz und/oder ein drahtloses Netzwerk auf einen externen Computer oder eine externe Speichereinheit heruntergeladen werden. Das Netzwerk kann Kupferübertragungskabel, Lichtwellenübertragungsleiter, drahtlose Übertragung, Router, Firewalls, Vermittlungseinheiten, Gateway-Computer und/oder Edge-Server aufweisen. Eine Netzwerkadapterkarte oder Netzwerkschnittstelle in jeder Datenverarbeitungs-/Verarbeitungseinheit empfängt durch einen Computer lesbare Programmanweisungen aus dem Netzwerk und leitet die durch einen Computer lesbaren Programmanweisungen zur Speicherung in einem durch einen Computer lesbaren Speichermedium innerhalb der entsprechenden Datenverarbeitungs-/Verarbeitungseinheit weiter.
-
Bei durch einen Computer lesbaren Programmanweisungen zum Ausführen von Arbeitsschritten der vorliegenden Erfindung kann es sich um Assembler-Anweisungen, ISA-Anweisungen (Instruction-Set-Architecture), Maschinenanweisungen, maschinenabhängige Anweisungen, Mikrocode, Firmware-Anweisungen, zustandssetzende Daten oder entweder Quellcode oder 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 durch einen Computer lesbaren Programmanweisungen können vollständig auf dem Computer des Benutzers, zum Teil auf dem Computer des Benutzers, als eigenständiges Software-Paket, zum Teil auf dem Computer des Benutzers und zum Teil 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 Weitverkehrsnetz (WAN), oder die Verbindung kann mit einem externen Computer hergestellt werden (zum Beispiel über das Internet unter Verwenden eines Internet-Dienstanbieters). In einigen Ausführungsformen können elektronische Schaltungen, darunter zum Beispiel programmierbare Logikschaltungen, feldprogrammierbare Gate-Arrays (FPGA) oder programmierbare Logik-Arrays (PLA) die durch einen Computer lesbaren Programmanweisungen ausführen, indem sie Zustandsdaten der durch einen Computer lesbaren Programmanweisungen nutzen, um die elektronischen Schaltungen zu personalisieren, um Aspekte der vorliegenden Erfindung durchzuführen.
-
Aspekte der vorliegenden Erfindung sind hierin unter Bezugnahme auf Ablaufpläne und/oder Blockschaubilder von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Es wird darauf hingewiesen, dass jeder Block der Ablaufpläne und/oder der Blockschaubilder sowie Kombinationen von Blöcken in den Ablaufplänen und/oder den Blockschaubildern mittels durch einen Computer lesbare Programmanweisungen implementiert werden können.
-
Diese durch einen Computer lesbaren Programmanweisungen können einem Prozessor eines Universalcomputers, eines Spezialcomputers oder einer anderen programmierbaren Datenverarbeitungsvorrichtung bereitgestellt werden, um eine Maschine zu erzeugen, so dass die über den Prozessor des Computers bzw. der anderen programmierbaren Datenverarbeitungsvorrichtung ausgeführten Anweisungen Mittel zur Umsetzung der in dem Block bzw. den Blöcken des Ablaufplans und/oder des Blockschaubildes festgelegten Funktionen/Schritte erzeugen. Diese durch einen Computer lesbaren Programmanweisungen können auch auf einem durch einen Computer lesbaren Speichermedium gespeichert sein, das einen Computer, eine programmierbare Datenverarbeitungsvorrichtung und/oder andere Einheiten so steuern kann, dass sie auf eine bestimmte Art funktionieren, so dass das durch einen Computer lesbare Speichermedium, auf dem Anweisungen gespeichert sind, ein Herstellungsprodukt aufweist, darunter Anweisungen, welche Aspekte der/des in dem Block bzw. den Blöcken des Ablaufplans und/oder des Blockschaubildes angegebenen Funktion/Schritts umsetzen.
-
Die durch einen Computer lesbaren 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 auf einem Computer ausgeführten Prozess zu erzeugen, so dass die auf dem Computer, einer anderen programmierbaren Vorrichtung oder einer anderen Einheit ausgeführten Anweisungen die in dem Block bzw. den Blöcken des Ablaufplans und/oder des Blockschaubildes festgelegten Funktionen/Schritte umsetzen.
-
Der Ablaufplan und die Blockschaubilder in den Figuren veranschaulichen die Architektur, die Funktionalität und den Betrieb möglicher Implementierungen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. In diesem Zusammenhang kann jeder Block in dem Ablaufplan oder den Blockschaubildern ein Modul, ein Segment oder einen Teil von Anweisungen darstellen, die eine oder mehrere ausführbare Anweisungen zur Ausführung der bestimmten logischen Funktion(en) aufweisen. In einigen alternativen Implementierungen können die in dem Block angegebenen Funktionen in einer anderen Reihenfolge als in den Figuren gezeigt auftreten. Zwei nacheinander gezeigte Blöcke können zum Beispiel in Wirklichkeit im Wesentlichen gleichzeitig 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 des Ablaufplans sowie Kombinationen aus Blöcken in den Blockschaubildern und/oder dem Ablaufplan durch spezielle auf Hardware beruhende Systeme implementiert werden können, welche die festgelegten Funktionen oder Schritte durchführen, oder Kombinationen aus Spezial-Hardware und Computeranweisungen ausführen.
-
Die hierin verwendete Terminologie dient lediglich der Beschreibung bestimmter Ausführungsformen und soll die Erfindung nicht beschränken. So, wie sie hierin verwendet werden, sollen die Singularformen „ein“, „eine“ und „der“, „die“, „das“ auch die Pluralformen enthalten, sofern dies aus dem Kontext nicht eindeutig anders hervorgeht. Es versteht sich darüber hinaus, dass die Begriffe „aufweist“ und/oder „aufweisend“, wenn sie in dieser Beschreibung verwendet werden, das Vorhandensein von angegebenen Merkmalen, Ganzzahlen, Schritten, Vorgängen, Elementen und/oder Komponenten bezeichnen, jedoch nicht das Vorhandensein bzw. die Beifügung von einem/einer bzw. mehreren anderen Merkmalen, Ganzzahlen, Schritten, Vorgängen, Elementen, Komponenten und/oder Gruppen davon ausschließen.
-
Die entsprechenden Strukturen, Materialien, Vorgänge und Entsprechungen aller Mittel oder Schritt-plus-Funktion-Elemente in den nachstehenden Ansprüchen sollen gegebenenfalls jede Struktur, jedes Material oder jeden Vorgang zum Durchführen der Funktion in Kombination mit anderen beanspruchten Elementen als ausdrücklich beansprucht enthalten. Die Beschreibung eines oder mehrerer Aspekte der vorliegenden Erfindung erfolgte zum Zweck der Veranschaulichung und Beschreibung, ist jedoch nicht erschöpfend oder auf die Erfindung in der offenbarten Form beschränkt gemeint.
-
Viele Modifizierungen und Varianten sind für Fachleute ersichtlich, ohne vom Umfang und Wesensgehalt der beschriebenen Ausführungsformen abzuweichen. Die hierin verwendete Terminologie wurde gewählt, um die Grundgedanken der Ausführungsformen, die praktische Anwendung oder die technische Verbesserung gegenüber auf dem Markt erhältlichen Technologien am besten zu erläutern oder um anderen Fachleuten zu ermöglichen, die hierin offenbarten Ausführungsformen zu verstehen.
-
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 Nicht-Patentliteratur
-
- G. E. Hinton, et al., „Distilling the knowledge in a neural network“, in NIPS (Neural Information Processing Systems) Deep Learning and Representation Learning Workshop, 2015 [0004]
- R. G. Lopes, et al., „Data-free knowledge distillation for deep neural networks“, in NIPS workshop on learning with limited labeled data, 2017 [0004]