Out-of-Distribution-Erkennung
Dreht sich alles um Cluster?

Können tiefe neuronale Netze in der Bildverarbeitung zuverlässig neue, unbekannte Testmuster erkennen? Erste Überlegungen zu verschiedenen Methoden - vor allem für sicherheitskritische Anwendungen.

Close-up schwarz-weiß
mask Close-up schwarz-weiß

Tiefe neuronale Netze (Deep Neural Networks, DNN) werden für eine Vielzahl von Aufgaben eingesetzt, darunter auch für Probleme im Zusammenhang mit der Bildverarbeitung (Bild/Video als Eingabedaten) wie Bildklassifizierung, Objekterkennung usw. Zu diesem Zweck werden DNNs mit gegebenen Trainingsdaten trainiert und erkennen so Muster in neuen Eingaben, welche den Trainingsdaten ähneln (In-Distribution).

Viele DNNs operieren in einem Open-World-Szenario, das bedeutet: Eingabedaten müssen nicht zwingend ähnlich zu den Daten im Trainingsdatensatz sein. Im Gegenteil: Mögliche Eingabedaten können unbekannte Klassen sein, mit denen das Netz nicht trainiert wurde.

Solche neuen Testmuster, die sich signifikant von den Trainingsmustern unterscheiden, werden als Out-of-distribution (OOD)-Muster bezeichnet. Man muss sich vorstellen, dass eine OOD-Stichprobe alles Mögliche sein kann, d.h. sie kann zum Beispiel einer beliebigen Kategorie angehören. Diese OOD-Eingaben führen oft zu unvorhersehbarem Verhalten, oft werden sogar falsche Klassen mit hoher Konfidenz vorhergesagt [1]. Daher ist es wichtig, OOD-Muster so zu erkennen, dass das System weiß, was es nicht weiß, sodass zusätzliche Fall-Back-Maßnahmen ergriffen werden können [2]. OOD-Daten zuverlässig zu erkennen, ist vor allem für sicherheitskritische Anwendungen von höchster Bedeutung, da fehlerhafte Vorhersagen fatale Folgen haben könnten.

Eine vielversprechende Richtung für die Erkennung von OOD ist das Erlernen eines latenten Raumes, sodass verwandte Muster im Vergleich zu nicht verwandten Mustern in unmittelbarer Nähe liegen. In diesem Raum kann jede Eingabe als komprimierter, niedrig-dimensionaler Vektor gesehen werden, welcher die Semantik der Eingabe kodiert. Diese Vorgehensweise ist vergleichbar mit der Vorstellung eines Raums, in dem alle semantisch ähnlichen Trainingsdaten (Bilder mit Objekten, die ähnliche Formen/Strukturen aufweisen) zu Gruppen zusammengefasst werden (z. B. Cluster von Katzen, Autos, Schiffen usw.), während die OOD-Muster weit entfernt von solchen bekannten Clustern liegen.

Contrastive Learning

Contrastive Learning, CL hat sich in letzter Zeit als eine sehr erfolgreiche Methode erwiesen, die nach einem ähnlichen Prinzip funktioniert. CL gruppiert im Wesentlichen Darstellungen oder erlernte embeddings ähnlicher Instanzen oder Klassen zusammen, während es gleichzeitig die embeddings unterschiedlicher Instanzen oder Klassen möglichst weit entfernt voneinander im latenten Raum platziert.

Beim überwachten CL (Supervised Contrastive Learning, SupCon) [3] versucht das DNN, embeddings zu erlernen, die ähnliche Klassen in entsprechenden Bereichen (Klasse 1, 2 usw.) zusammenfassen, während es embeddings aus anderen Klassen auseinander schiebt. Bei selbstüberwachtem CL, z. B. SimCLR [4], gibt es keine Informationen darüber, zu welcher Klasse eine bestimmte Eingabe gehört. Daher lernt das DNN Cluster aus semantisch ähnlichen embeddings ("positives"), wobei unterschiedliche Eingaben ("negatives") möglichst weit entfernt platziert werden, wie im Bild dargestellt.

Contrastive Learning
Bild

Überwachtes CL fördert Cluster auf der Grundlage von Klassen verschiedener Kategorien, während selbstüberwachtes CL Cluster von positiven und negativen Kategorien fördert [3].

Eine Frage der Qualität

Nachdem das DNN gelernt hat, die embeddings auf der Grundlage ihrer Ähnlichkeit mittels CL zu trennen, stellt sich die Frage: Wie sehen die Cluster aus und wie gut sind sie tatsächlich getrennt? Es ist kein triviales Problem, die Qualität der erzielten Cluster einzuschätzen, daher haben wir die folgenden Metriken verwendet, um einen besseren Einblick in das Problem zu erhalten:

  • Global Separation (GS): Sie folgt dem Verständnis, dass die Trennbarkeit zwischen den Clustern durch die Untersuchung der Abstände zwischen den Clustern und innerhalb der Cluster bestimmt werden kann. Je höher also der Wert von GS ist, desto besser sind die Cluster voneinander getrennt [5].
  • (Cluster Purity (CP): Bestimmt, wie viele Proben innerhalb eines bestimmten Clusters zur selben Klasse gehören. Dies ist besonders hilfreich, wenn das DNN auf unüberwachte Weise trainiert wird, d. h. ohne Kenntnis der Klasse.

Bevor wir die Clusterbildung der verschiedenen kontrastiv gelernten Modelle analysieren, benötigen wir auch ein Basismodell als Referenz. In diesem Fall kann ein DNN, das mit einer einfachen überwachten Kreuzentropie-(Cross-Entropy, CE)-Zielfunktion trainiert wurde, als Basis dienen. Anschließend untersuchen wir die Clusterbildung für die kontrastiv gelernten Modelle SupCon und SimCLR. Die Modelle wurden auf CIFAR-10 als ID-Daten trainiert.

Figure 2
Bild

Globale Trennung zwischen verschiedenen Klassen des CIFAR-10-Datensatzes über die Zeit (Epochen) für verschiedene Modelle

Die obigen Diagramme geben uns bereits einen Hinweis: Überwachte Modelle wie CE und SupCon zeigen eine viel bessere Trennung in Form von klassenbasierten Clustern mit viel höheren GS-Werten über die Zeit (Epochen) als das selbstüberwachte SimCLR. Bei diesem wurden ähnliche Proben nicht auf Klassenebene, sondern auf einer kleineren semantischen Skala von positiven und negativen embeddings gelernt.

Erforschung der OOD-Erkennung anhand von Clustern

Nachdem wir nun eine gute Vorstellung von den Clustern der embeddings haben, die mit verschiedenen CL-Methoden erlernt wurden, untersuchen wir, ob die ID und OOD embeddings mithilfe der Cluster unterschieden werden können. Zu diesem Zweck können verschiedene Metriken wie Mahalanobis, Cosinus-Ähnlichkeit usw. verwendet werden, um die Abstände von ID- und OOD-Mustern zu berechnen.

Diese Abstände lassen sich dann anhand von Schwellenwerten bewerten, die auf der Grundlage des Abstands zum Gesamtzentrum des ID-Cluster-Raums (global score) bestimmt werden. Oder sie können für einzelne Clusterzentren (Cluster-Score) berechnet und anschließend dem nächstgelegenen Cluster zugeordnet werden, um eine noch größere Präzision zu erzielen.

Figure 3 Vergleich
Bild

Illustration der kontrastiv erlernten embedding clusters für das überwachte (SupCon) und das selbstüberwachte (SimCLR) Modell

Da jedes Testmuster entweder als ID oder OOD eingestuft wird, können nun Metriken wie AUROC (Area under the ROC curve) verwendet werden, um zu bestimmen, wie gut das Modell ID- und OOD-Testmuster erkennen kann. Wie oben veranschaulicht, liefern überwachte Methoden wie SupCon eindeutige Cluster und erbringen daher eine gute Leistung, wenn mehrere clusterbasierte Abstände herangezogen werden. Die selbstüberwachte Methode SimCLR dagegen erzeugt überlappende Cluster, sodass der Abstand zu einem einzigen globalen Cluster auch eine wettbewerbsfähige OOD-Erkennung ermöglicht.

Dieser Blog-Artikel basiert auf dem Whitepaper »Is it all a cluster game? Exploring Out-of-Distribution Detection based on Clustering in the Embedding Space«

Zum Whitepaper Pfeil nach rechts

Im Allgemeinen ist es schwierig, zu beurteilen, welche Methode die bessere ist und es hängt weitgehend von Variablen ab wie der Komplexität des ID-Datensatzes, dem Modell, der OOD-Daten, der Abstandsmetrik, den Dimensionen des Raums, in dem latente Repräsentationen gelernt werden, usw.


[1] Hendrycks, D. and Gimpel, K. A Baseline for Detecting Misclassified and Out-of-Distribution Examples in Neural Networks. arXiv:1610.02136 [cs], October 2018.

[2] Henne, M., Schwaiger, A., and Weiss, G. Managing Uncertainty of AI-based Perception for Autonomous Systems. In AISafety@IJCAI 2019, Macao, China, August 11-12, 2019, volume 2419 of CEUR Workshop Proceedings. CEURWS. org, 2019.

[3] Khosla, P., Teterwak, P.,Wang, C., Sarna, A., Tian, Y., Isola, P., Maschinot, A., Liu, C., and Krishnan, D. Supervised Contrastive Learning. arXiv:2004.11362 , April 2020.

[4] Chen, T., Kornblith, S., Norouzi, M., and Hinton, G. A Simple Framework for Contrastive Learning of Visual Representations. In International Conference on Machine Learning, pp. 1597–1607. PMLR, November 2020.

[5] Bojchevski, A., Matkovic, Y., and Günnemann, S. Robust Spectral Clustering for Noisy Data: Modeling Sparse Corruptions Improves Latent Embeddings. In Proceedings of the 23rd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, pp. 737–746, Halifax NS Canada, August 2017.


Dieses Vorhaben wurde im Rahmen des Projekts Unterstützung des thematischen Aufbaus des Instituts für Kognitive Systeme durch das Bayerische Staatsministerium für Wirtschaft, Landesentwicklung und Energie gefördert.

Nächster Artikel

Reinforcement Learning
Hierarchische Strukturen als Schlüssel für sichere und effiziente KI-Systeme

Felippe Schmoeller
Felippe Schmoeller da Roza
Künstliche Intelligenz & Machine Learning / Fraunhofer IKS
Künstliche Intelligenz