Deep Cluster ist ein Deep Clustering-Algorithmus mit fast menschlicher Genauigkeit

4 min read

Deep Cluster mit fast menschlicher Genauigkeit

Im maschinellen Lernen gilt Image-Clustering als ein gut erforschter Bereich. In der Tat wurden jedoch bisher keine bedeutenden Versuche unternommen, diese Methode an die Forschung visueller Besonderheiten von Datensätzen mit hoher Auflösung anzupassen.

Die Erstellung des ImageNet-Datensatzes hat einen großen Beitrag zum Training des hochpräzisen neuronalen Netzwerks geleistet. Mit nur einer Million Bildern ist der ImageNet-Datensatz nach heutigen Maßstäben relativ klein. Die wichtigsten Aufgaben des maschinellen Lernens heutzutage erfordern die Erstellung von größeren und vielfältigeren Datensätzen mit Milliarden von Bildern.

Lernen ohne Lehrer

Für das Erstellen eines Datensatzes benötigt man eine unglaublich große Menge von manuell erstellten Targets. Das Ersetzen von Targets durch unformatierte Metadaten kann zu Abweichungen bei den visuellen Darstellungen mit unvorhersehbaren Folgen führen. Schlimmer als der Mangel an Daten sind nur falsch gekennzeichnete Daten.

Um dieses Problem zu lösen, wird die Methode “Lernen ohne Lehrer” mit Bildern aus dem Internet verwendet. Sie wird von Forschern von Facebook AI Research vorgeschlagen. DeepCluster ist die neueste Clustering-Methode durch das Training der hochpräzisen neuronalen Netzwerke.

Laut Autoren dieser Methode hat dieses Modell viele Vorteile im Gegensatz zu allen modernen Methoden zum Clustering nach allen Parametern. Betrachten wir zuerst die früheren Forschungen in diesem Bereich und erst danach beschreiben die Methode selbst.

Frühere Forschungen

Man unterscheidet folgende Kategorien des Deep-Clusterings

  • Neuronale Netzwerke mit unkontrolliertem Training: z. B trainiert das von Yang und seinen Kollegen erstellte neuronale Netzwerk einzelne Merkmale und ihre Cluster mit einer sich wiederholenden Struktur iterativ. Die Bojanowski- und Joulin-Methode erforscht visuelle Merkmale eines großen Datensatzes mit Hilfe der Verlustfunktion, dank der die Informationen gespeichert werden, die durch das neuronale Netzwerk durchlaufen.
  • Neuronale Netzwerke mit Selbsttraining: Laut Doersch und seinen Kollegen ist die Voraufgabe des neuronalen Netzwerkes die Vorhersage der relativen Patch-Position der Merkmale im Bild, und Noroozi und Favaro trainieren das neuronale Netz, diese Patches im Bild neu anzuordnen.
  • Generative Modelle: Donahue und Dumoulin mit ihren Kollegen beweisen beispielsweise, dass visuelle Merkmale durch GAN (Generative Adversarial Networks) mit Encoder auf einem relativ hohen Niveau im Vergleich zu anderen neuronalen Netzwerken trainiert werden.

Deep Cluster

DeepCluster ist eine Clustering-Methode, die die Merkmale mithilfe des Standard-Clustering-Algorithmus (K-Means-Methode) iterativ gruppiert und fortlaufende Zuweisungen als Prüffaktor zum Aktualisieren der Gewichte eines neuronalen Netzwerks verwendet. Forscher verwenden die K-Means-Methode, da sie in der Arbeit sehr einfach ist. Ohne Hindernis können aber auch die anderen Clustering-Methoden, wie beispielsweise Power Iteration Clustering (PIC), verwendet werden.

Bilder und die drei, die jedem von ihnen am ähnlichsten sind: Ausgangsbilder (Query), die Ergebnisse eines zufällig initialisierten neuronalen Netzwerks (Random), die Ergebnisse desselben neuronalen Netzwerks nach dem Training mit dem DeepClustering PIC.

Im Vergleich zu anderen selbstlernenden neuronalen Netzwerken hat diese Methode einen wesentlichen Vorteil: Sie erfordert keine speziellen Signale von der Ausgabe oder zusätzliche Informationen über Bildbereiche und zeigt dementsprechend eine deutlich bessere Leistung.

Betrachten wir jetzt die Struktur des vorgeschlagenen Clustering-Modells in Einzelheiten.

Methodenübersicht

Das Ergebnis der hochpräzisen neuronalen Netzwerke wird von ihrer Struktur stark beeinflusst, die die Vorgeschichte am Eingangssignal erhält. Die Idee von DeepCluster besteht in der Anwendung dieses schwachen Signals für die Erhöhung der Auflösung eines hochpräzisen Netzwerks.

Wie die Abbildung zeigt, wird unter dieser Methode das iterative Clustering tiefer Merkmale und das Zuweisen von Pseudotargets dem Cluster für das weitere Training der Netzwerkparameter gemeint.

Algorithmus-Schema

Diese Art von abwechselnden Handlungen unterliegt trivialen Lösungen (trivial solutions), die weiter betrachtet werden:

  • Leere Cluster. Dieses Problem wird durch automatische Neuzuweisung leerer Cluster während der Optimierung mithilfe der K-Means-Methode gelöst.
  • Triviale Parametrisierung. Wenn die meisten Bilder zu mehreren Clustern gehören, diskriminieren die Parameter ausschließlich zwischen ihnen. Die Lösung dieses Problems liegt im Auswählen von Bildern aus einer gleichmäßigen Verteilung nach allen Klassen oder Pseudotargets.

Die Grundlage des DeepClusters ist die Standard-AlexNet-Architektur mit fünf hochpräzisen und drei vollständig verbundenen Schichten. Für das Entfernen von Farben und Erhöhen des lokalen Kontrasts verwenden die Forscher eine fixierte lineare Transformation auf der Basis der Sobel-Filter.

In der Tat ist dieses Modell nicht kompliziert. Überprüfen wir ihre Leistungsfähigkeit bei Übertragungs- und ImageNet-Klassifizierungsaufgaben.

Ergebnisse

Hier sind vorläufige Ergebnisse:

  •  (a) Die Entwicklung normalisierter gegenseitiger Information (Normalized Mutual Information) zwischen Clusterzuweisungen und ImageNet-Targets während des Trainings;
  •  (b) Die Entwicklung der Modellstabilität während des Trainings;
  •  (c) Der Einfluss der Clusteranzahl k auf die Modellqualität (k = 10.000 zeigt das beste Ergebnis).
Ergebnisse der Vorforschung

Für die Beurteilung der Qualität des Zielfilters erforschen die Wissenschaftler das Eingabebild, das seine Aktivierungsfunktion maximiert. Auf dem Bild unten ist die Visualisierung der Filter und der Top-9 aktivierten Bilder aus einem Sub-Sample mit 1 Million Bildern des YFCC100M zu sehen.

Visualisierung von Filtern und die ersten 9 aktivierten Bilder für den Zielfilter in den Schichten conv1, conv3 und conv5 in AlexNet, das mit DeepCluster trainierten wurde.

Tiefere Schichten im Netzwerk fassen entsprechend größere Texturstrukturen um. Es scheint jedoch, dass einige Filter in hochpräzisen Schichten nur teilweise die Texturen ersetzen, die in den vorherigen Schichten bereits erfasst wurden.

Unten sind die Ergebnisse der neuesten hochpräzisen Netzwerke dargestellt. Es ist zu betonen, dass dieses Mal die VGG-16-Architektur anstelle von AlexNet verwendet wird.

Visualisierung von Filtern und die ersten 9 aktivierten Bilder für den Zielfilter in der letzten hochpräzisen Schicht in VGG-16, das mit DeepCluster trainiert wurde.

Also können die Filter, die ohne Lehrer trainiert wurden, sehr komplexe Strukturen in Griff kriegen.

Folgende Abbildung zeigt für den ausgewählten Filter die ersten 9 aktivierten Bilder, die semantisch miteinander verbunden sind. Die Filter in der oberen Reihe spiegeln Strukturen wider, die stark mit der Zielklasse korreliert sind, während die Filter in der unteren Reihe an ähnlichen Stilen arbeiten.

Die ersten 9 aktivierten Bilder für den ausgewählten Filter in der hochpräzisen Schicht.

Vergleich

Zum Vergleichen von DeepCluster mit anderen Methoden trainieren die Forscher einen linearen Klassifikator über verschiedene gefrorenen hochpräzise Schichten. Die Genauigkeit der Klassifizierung verschiedener moderner Methoden in ImageNet- und Places-Datensätzen ist in folgender Tabelle dargestellt.

Im ImageNet zeigt DeepCluster bessere Ergebnisse in modernen Ansätzen von conv2- zu conv5-Schicht um 1 bis 6%. Ein schlechtes Ergebnis in der ersten Schicht hängt möglicherweise mit der Sobel-Filtration zusammen, bei der die Farbe verworfen wird. Es ist zu betonen, dass der Unterschied im Ergebnis zwischen DeepCluster und AlexNet mit dem Lehrer von 4% in conv2-conv3-Layern auf 12,3% in conv5 steigt. Diese Tatsache zeigt, wo AlexNet die meisten Klasseninformationen speichert.

Tabelle 1. Lineare Klassifizierung im ImageNet- und Places- Datasets, das die Aktivierungsfunktionen aus hochpräzisen AlexNet-Schichten als Merkmale verwendet

Wenn dasselbe Experiment auf den Places-Datensatz durchgeführt wird, so bekommt man folgende Ergebnisse: DeepCluster gibt Merkmale auf conv3-conv4, vergleichbar mit denen, die beim Training mit ImageNet-Targets erhalten wurden. Dies bedeutet, dass in Fällen, wenn die Zielaufgabe ziemlich weit von dem von ImageNet abgedeckten Bereich entfernt ist, die Targets weniger wichtig sind.

In folgender Tabelle wird DeepCluster mit anderen Methoden zum Training von Merkmalen in drei Aufgaben verglichen: Klassifizierung, Detektierung, semantische Segmentierung. Es ist deutlich zu sehen, dass DeepCluster alle vorigen Trainingsmethoden ohne Lehrer in allen drei Aufgaben übertrifft. Das größte Loslösen wird in der semantischen Segmentierung erreicht.

Tabelle 2. Vergleich der vorgeschlagenen Methoden für ein modernes Merkmalstraining ohne Lehrer für die Aufgaben der Klassifizierung, Erkennung und Segmentierung in Pascal VOC

Fazit

Die DeepCluster-Methode wurde vom Facebook AI Research-Team erforscht. Sie ermöglicht die Erzielung von Ergebnissen, die die bestehenden Methoden bei der Lösung jeder Standardübertragungsaufgabe wesentlich übertreffen. Beim Testieren auf Pascal VOC 2007 für eine Erkennungsaufgabe mit guter Parametereinstellung zeigt DeepCluster das Ergebnis, das nur 1,4% unter der oberen Grenze des Trainings mit einem Lehrer liegt.

Da diese Methode eine detaillierte Beschreibung der Eingabedaten und des fachlichen Wissens erfordert, wird DeepCluster zu einem effektiven Modell für das tiefe Training in speziellen Bereichen, wenn kein markierter Datensatz verfügbar ist.

Sollten Sie Fragen zu Deep Cluster haben, so können Sie sich an das Team von AI-United.de per Mail oder Q&A wenden.

Quelle

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.