Zuvor mit ** Deep Distance Learning ** ["Erkennung von Abnormalitäten des Bildes"](https://qiita.com/shinmura0/items/06d81c72601c7578c6d3#%E3%83%99%E3%83%B3%E3% 83% 81% E3% 83% 9E% E3% 83% BC% E3% 82% AF) wurde durchgeführt. Danach erschien ** die neueste Methode des Fernunterrichts ** "AdaCos".
In diesem Artikel möchte ich AdaCos auf "Anomalieerkennung" anwenden und einen einfachen Benchmark durchführen. Der gesamte Code ist hier
Bei der Anwendung von AdaCos zur Erkennung von Anomalien haben wir Folgendes festgestellt:
AdaCos Obwohl AdaCos ab Januar 2020 die neueste Methode für Fernunterricht sein soll, ist es mehr als ein halbes Jahr her, seit das Papier veröffentlicht wurde. Es ist vergangen. Soweit ich weiß, befindet es sich jedoch immer noch im Rahmen des "reinen Fernunterrichts". Es scheint SOTA zu sein.
AdaCos ist eine Methode, die auf ArcFace usw. und den in ArcFace usw. verwendeten Parametern basiert. Es ist eine Methode, um automatisch zu entscheiden. Da sich die Genauigkeit von ArcFace je nach Auswahl der Parameter dramatisch ändert, Die Abstimmung der Parameter war sehr streng. Mit der Einführung von AdaCos erfolgt dies jedoch automatisch Wenn Sie die Parameter bestimmen können, sind Sie von dieser Optimierungsaufgabe befreit.
Darüber hinaus wurde bestätigt, dass auch die Genauigkeit verbessert wird, was die Arbeitseffizienz und Genauigkeit erheblich verbessert. Dies ist eine sehr nützliche Methode. Einzelheiten finden Sie in den folgenden Artikeln.
Es gibt zwei Arten von AdaCos: Fest und Dynamisch. Die in diesem Artikel verwendete Methode ist "Fixed Ada Cos".
Außerdem kann AdaCos nur angewendet werden, wenn die Anzahl der Klassen 3 oder mehr beträgt. Dies wird zu einem Engpass bei der Anwendung von Selbstüberwachtes Lernen, aber die Überlegung ist vorhanden Nächster Artikel. Dies ist kein Problem, da die Anzahl der Klassen in diesem Experiment 9 beträgt.
[Vorheriges Experiment](https://qiita.com/shinmura0/items/06d81c72601c7578c6d3#%E3%83%99%E3%83%B3%E3%83%81%E3%83%9E%E3%83 Führen Sie das Experiment unter den gleichen Bedingungen wie% BC% E3% 82% AF durch.
Der Code von AdaCos selbst ist fast der gleiche wie der von ArceFace. Die Methode zur Angabe von Parametern wurde jedoch in den AdaCos-Stil geändert.
Der gesamte Code ist hier
Fashion-MNIST
Die Aufteilung der Daten ist wie folgt.
Normal ist "Turnschuhe", abnormal ist "Stiefel".
Menge | Anzahl der Klassen | Bemerkungen | |
---|---|---|---|
Referenzdaten zum Lernen | 8000 | 8 | Ohne Turnschuhe und Stiefel |
Normale Daten für das Training | 1000 | 1 | Turnschuhe |
Testdaten (normal) | 1000 | 1 | Turnschuhe |
Testdaten (abnormal) | 1000 | 1 | Stiefel |
cifar-10
Die Aufteilung der Daten ist wie folgt.
Normal ist "Hirsch", abnormal ist "Pferd".
Menge | Anzahl der Klassen | Bemerkungen | |
---|---|---|---|
Referenzdaten zum Lernen | 8000 | 8 | Ohne Hirsche und Pferde |
Normale Daten für das Training | 1000 | 1 | Hirsch |
Testdaten (normal) | 1000 | 1 | Hirsch |
Testdaten (abnormal) | 1000 | 1 | Pferd |
"L2-Softmax Loss" und "Arc Face" zeigen die Ergebnisse des vorherigen Experiments. Das Ergebnis von "AdaCos" ist das Ergebnis dieses Experiments.
Der Medianwert von "AdaCos" ist jetzt fast ** dieselbe AUC wie bei ArcFace. ** ** **
Immerhin bin ich dankbar, dass keine Parametereinstellung mehr erforderlich ist.
"L2-Softmax Loss" und "Arc Face" zeigen die Ergebnisse des vorherigen Experiments. Das Ergebnis von "AdaCos" ist das Ergebnis dieses Experiments.
Ähnlich wie bei Fashin-MNIST entspricht der Medianwert von "AdaCos" fast der AUC von ArcFace.
Recommended Posts