HyperAI

Kontrastives Lernen

Zusammenfassung

Kontrastives Lernen ist eine Technik, die die Leistung bei Sehaufgaben verbessert, indem sie das Prinzip der Gegenüberstellung von Stichproben nutzt, um Eigenschaften zu erlernen, die Datenklassen gemeinsam haben und Eigenschaften, die eine Datenklasse von einer anderen unterscheiden.

Dieses Lernmodell, das die Art und Weise nachahmt, wie Menschen etwas über die Welt um sie herum lernen, hat in der Deep-Learning-Literatur vielversprechende Ergebnisse gezeigt und gewinnt im Bereich der Computer-Vision-Forschung zunehmend an Bedeutung.

Was ist kontrastives Lernen?

Kontrastives Lernen ist ein Paradigma des maschinellen Lernens, bei dem unbeschriftete Datenpunkte einander gegenübergestellt werden, um dem Modell beizubringen, welche Punkte ähnlich und welche unterschiedlich sind.

Das heißt, wie der Name schon sagt, werden Stichproben einander gegenübergestellt und Stichproben, die zur gleichen Verteilung gehören, werden im Einbettungsraum aufeinander zugeschoben. Stattdessen konkurrieren diejenigen, die zu unterschiedlichen Distributionen gehören, miteinander.

Die Bedeutung des kontrastiven Lernens

Überwachtes Lernen ist eine Technik des maschinellen Lernens, bei der ein Modell mithilfe einer großen Anzahl gekennzeichneter Beispiele trainiert wird. Die Qualität der Datenbeschriftungen ist entscheidend für den Erfolg überwachter Modelle.

Allerdings ist die Beschaffung solch hochwertiger, gekennzeichneter Daten eine mühsame Aufgabe, insbesondere in Bereichen wie der biomedizinischen Bildgebung, wo die Daten von erfahrenen Ärzten kommentiert werden müssen. Dies ist sowohl teuer als auch zeitaufwändig. Im Rahmen des Supervised Learning ML-Projekts 80% wurde 3T Zeit in die Erfassung und Bereinigung von Daten für das Modelltraining investiert.

Daher konzentriert sich die aktuelle Forschung im Bereich Deep Learning auf die Reduzierung des Überwachungsbedarfs beim Modelltraining. Zu diesem Zweck wurden verschiedene Methoden vorgeschlagen, beispielsweise halbüberwachtes Lernen, unüberwachtes Lernen und selbstüberwachtes Lernen.

Beim halbüberwachten Lernen werden eine kleine Menge gekennzeichneter Daten und eine große Menge unkenntlich gemachter Daten zum Trainieren eines tiefen Modells verwendet. Beim unüberwachten Lernen versucht das Modell, unstrukturierte Daten ohne Datenbeschriftungen zu verstehen.

Beim selbstüberwachten Lernen (SSL) wird ein etwas anderer Ansatz verfolgt.

Wie beim unüberwachten Lernen werden unstrukturierte Daten als Eingabe für das Modell bereitgestellt. Das Modell kommentiert die Daten jedoch selbst und die mit hoher Sicherheit vorhergesagten Beschriftungen werden in zukünftigen Iterationen des Modelltrainings als Grundwahrheit verwendet.

Dadurch werden die Modellgewichte kontinuierlich verbessert, um bessere Vorhersagen zu treffen. Die Wirksamkeit von SSL-Methoden im Vergleich zu herkömmlichen überwachten Methoden hat die Aufmerksamkeit mehrerer Computer Vision-Forscher auf sich gezogen.

Eine der ältesten und beliebtesten Techniken, die in SSL verwendet werden, ist das kontrastive Lernen, bei dem „positive“ und „negative“ Beispiele zur Steuerung eines Deep-Learning-Modells verwendet werden.

Das kontrastive Lernen wurde seitdem weiterentwickelt und wird nun sowohl in vollständig überwachten als auch in halbüberwachten Umgebungen verwendet und verbessert die Leistung bestehender hochmoderner Techniken.

Ein Rahmen für kontrastives Lernen

In der aktuellen Literatur werden von Deep-Learning- und Computer-Vision-Forschern drei gängige Arbeitsmechanismen für kontrastive Lernrahmen vorgeschlagen.

1.SimCLR

Das von Google Brain entwickelte SimCLR-Modell ist ein Framework für das kontrastive Lernen visueller Darstellungen. SimCLR soll selbstüberwachte und halbüberwachte Lernprobleme durch kontrastives Lernen lösen.

Das grundlegende Funktionsprinzip besteht darin, den Kontrastverlust im latenten Raum auszunutzen, um die Konsistenz zwischen verschiedenen verbesserten Versionen derselben Probe zu maximieren.

2. NNCLR

Die meisten instanzdiskriminierenden kontrastiven Lernalgorithmen trainieren den Encoder so, dass er gegenüber vordefinierten Transformationen derselben Instanz invariant ist.

Während die meisten Methoden unterschiedliche Ansichten desselben Bildes als positive Werte für den Kontrastverlust betrachten, versucht das in diesem Artikel entwickelte Framework für kontrastives Lernen mit nächstem Nachbarn (NNCLR), positive Werte aus anderen Instanzen im Datensatz zu verwenden, d. h. unterschiedliche Bilder aus dem Datensatz zu verwenden. Dieselbe Klasse, statt das gleiche Image zu verbessern.

3. PCL

Prototype Contrastive Learning (PCL) ist eine unüberwachte Methode des Repräsentationslernens, die kontrastives Lernen mit Clustering kombiniert. PCL lernt Low-Level-Funktionen für die Instanzunterscheidungsaufgabe und kodiert außerdem die durch Clustering entdeckte semantische Struktur in den gelernten Einbettungsraum.

Verweise

【1】https://www.v7labs.com/blog/contrastive-learning-guide#ten-contrastive-learning-frameworks