W ostatnich latach samonadzorowane uczenie się reprezentacji , które jest wykorzystywane w różnych zadaniach związanych z obrazem i wideo , znacznie się rozwinęło dzięki zastosowaniu uczenia kontrastywnego. Te kontrastujące podejścia do uczenia się zazwyczaj uczą model łączyć ze sobą reprezentacje obrazu docelowego (zwanego „kotwicą”) i dopasowanego („pozytywnego”) obrazu w przestrzeni osadzenia, jednocześnie odsuwając kotwicę od wielu niedopasowanych ( obrazy „negatywne”. Ponieważ zakłada się, że etykiety są niedostępne w samonadzorowanym uczeniu się, pozytywna wartość jest często rozszerzeniem zakotwiczenia, a negatywy są wybierane jako pozostałe próbki z minipartii uczącej. Jednakże, z powodu tego losowego próbkowania, fałszywie negatywy, tj. negatywy wygenerowane z próbek tej samej klasy co kotwica, mogą powodować pogorszenie jakości reprezentacji. Ponadto określenie optymalnej metody generowania pozytywów jest nadal obszarem aktywnych badań .

W przeciwieństwie do podejścia samonadzorowanego, podejście w pełni nadzorowane może wykorzystywać dane oznaczone etykietami do generowania pozytywnych wyników z istniejących przykładów tej samej klasy, zapewniając większą zmienność w szkoleniu wstępnym, niż można to zwykle osiągnąć przez zwykłe rozszerzenie kotwicy. Jednak wykonano bardzo niewiele pracy, aby z powodzeniem zastosować uczenie kontrastowe w dziedzinie w pełni nadzorowanej.

W „ Nadzorowanym uczeniu kontrastowym ”, zaprezentowanym na NeurIPS 2020 , proponujemy nową funkcję utraty, zwaną SupCon, która wypełnia lukę między uczeniem się samonadzorowanym a uczeniem się w pełni nadzorowanym i umożliwia zastosowanie uczenia kontrastowego w środowisku nadzorowanym. Wykorzystując dane oznaczone etykietami, SupCon zachęca znormalizowane osadzania z tej samej klasy do zbliżania się do siebie, podczas gdy osadzania z różnych klassą rozsuwane. Upraszcza to proces selekcji pozytywnej, jednocześnie unikając potencjalnych wyników fałszywie negatywnych. Ponieważ uwzględnia wiele pozytywów na kotwicę, to podejście skutkuje lepszym wyborem pozytywnych przykładów, które są bardziej zróżnicowane, a jednocześnie zawierają istotne semantycznie informacje. SupCon pozwala również, aby informacje o etykiecie odgrywały aktywną rolę w uczeniu reprezentacji, zamiast ograniczać je do wykorzystania tylko w dalszym uczeniu, jak ma to miejsce w przypadku konwencjonalnego uczenia kontrastywnego. Zgodnie z naszą najlepszą wiedzą jest to pierwsza strata kontrastowa, która konsekwentnie działa lepiej w przypadku problemów klasyfikacji obrazów na dużą skalę niż powszechne podejście polegające na wykorzystaniu strat entropii krzyżowejbezpośrednio trenować model. Co ważne, SupCon jest prosty do wdrożenia i stabilny do trenowania, zapewnia stałą poprawę dokładności top-1 dla wielu zestawów danych i architektur (w tym architektur Transformer ) i jest odporny na uszkodzenia obrazu i zmiany hiperparametrów.

Samonadzorowane ( po lewej ) vs nadzorowane ( po prawej ) ubytki kontrastowe: Samonadzorowana utrata kontrastowa zestawia pojedynczy pozytyw dla każdej kotwicy (tj. rozszerzoną wersję tego samego obrazu) z zestawem negatywów składających się z całej reszty minipartii. Jednak nadzorowana utrata kontrastu rozważana w tym artykule zestawia wszystkie próbki z tej samej klasy jako pozytywne z negatywnymi z pozostałej partii.

Supervised Contrastive Learning Framework
SupCon może być postrzegany jako uogólnienie strat zarówno SimCLR, jak i N-par — pierwsza wykorzystuje pozytywy wygenerowane z tej samej próbki co próbka kotwicy, a druga wykorzystuje pozytywy wygenerowane z różnych próbek poprzez wykorzystanie znanej klasy etykiety. Użycie wielu pozytywów i wielu negatywów dla każdej kotwicy pozwala SupCon osiągnąć najnowocześniejsze osiągi bez konieczności wydobywania twardych negatywów (tj. wyszukiwania negatywów podobnych do kotwicy), które mogą być trudne do prawidłowego dostrojenia.

SupCon łączy straty wielokrotne z literatury i jest uogólnieniem strat SimCLR i N-Pair.

Metoda ta jest strukturalnie podobna do metod stosowanych w samonadzorowanym uczeniu kontrastowym, z modyfikacjami dotyczącymi klasyfikacji nadzorowanej. Biorąc pod uwagę wejściową partię danych, najpierw stosujemy rozszerzenie danych dwukrotnie, aby uzyskać dwie kopie lub „widoki” każdej próbki w partii (chociaż można utworzyć i użyć dowolnej liczby widoków rozszerzonych). Obie kopie są propagowane w przód przez sieć kodera, a wynikowe osadzanie jest następnie znormalizowane do poziomu L2 . Zgodnie ze standardową praktyką reprezentacja jest dalej propagowana przez opcjonalną sieć projekcyjnąaby pomóc zidentyfikować znaczące funkcje. Nadzorowana strata kontrastowa jest obliczana na znormalizowanych wyjściach sieci projekcyjnej. Pozytywy dla kotwicy składają się z reprezentacji pochodzących z tego samego wystąpienia w wiązce, co kotwica lub z innych wystąpień o tej samej etykiecie co kotwica; negatywy są wtedy wszystkimi pozostałymi instancjami. Aby zmierzyć wydajność zadań podrzędnych, trenujemy klasyfikator liniowy na podstawie zamrożonych reprezentacji.

Entropia krzyżowa, samonadzorowane ubytki kontrastowe i nadzorowane ubytki kontrastowe Po lewej: Utrata entropii krzyżowej wykorzystuje etykiety i stratę softmax do trenowania klasyfikatora. Środek: Samonadzorowana utrata kontrastowa wykorzystuje utratę kontrastową i rozszerzenia danych do uczenia się reprezentacji. Po prawej: Nadzorowany ubytek kontrastu uczy się również reprezentacji za pomocą ubytku kontrastu, ale wykorzystuje informacje z etykiety do próbkowania pozytywów oprócz augmentacji tego samego obrazu.

Kluczowe wnioski
SupCon konsekwentnie zwiększa dokładność top-1 w porównaniu z entropią krzyżową, klasyfikatorami marży (z wykorzystaniem etykiet) i samonadzorowanymi technikami uczenia kontrastowego w zestawach danych CIFAR-10 i CIFAR-100 oraz ImageNet . Dzięki SupCon osiągamy doskonałą dokładność top-1 w zestawie danych ImageNet dzięki architekturze ResNet-50 i ResNet-200 . W ResNet-200 osiągamy dokładność top-1 na poziomie 81,4%, co stanowi wzrost o 0,8% w porównaniu z najnowocześniejszą stratą entropii krzyżowej przy użyciu tej samej architektury (co stanowi znaczący postęp dla ImageNet ). Porównaliśmy również cross-entropię i SupCon na transformatorowym ViT-B/16 modelu i stwierdzili stałą poprawę w porównaniu z entropią krzyżową (77,8% w porównaniu z 76% dla ImageNet; 92,6% w porównaniu do 91,6% dla CIFAR-10) w tym samym reżimie wzbogacania danych (bez dostrajania w wyższej rozdzielczości).

Strata SupCon konsekwentnie przewyższa entropię krzyżową ze standardowymi strategiami zwiększania danych ( AutoAugment , RandAugment i CutMix ). Pokazujemy dokładność top-1 dla ImageNet, na ResNet-50, ResNet-101 i ResNet200.

Demonstrujemy również analitycznie, że gradient naszej funkcji straty zachęca do uczenia się na podstawie twardych pozytywów i twardych negatywów. Wkład gradientu od twardych pozytywów/negatywów jest duży, podczas gdy te dla łatwych pozytywów/negatywów są małe. Ta niejawna właściwość pozwala, aby kontrastowa strata ominęła potrzebę jawnego wydobywania twardego, które jest delikatną, ale krytyczną częścią wielu strat, takich jak strata trypletów. Zobacz materiał uzupełniający naszego artykułu, aby uzyskać pełne wyprowadzenie.

SupCon jest również bardziej odporny na naturalne uszkodzenia, takie jak szum, rozmycie i kompresja JPEG. Na średnią Korupcja błąd (MCE) środki średnia degradacji wydajności w stosunku do benchmarku IMAGEnet-C zbiorze. Modele SupCon mają niższe wartości mCE w różnych uszkodzeniach w porównaniu z modelami entropii krzyżowej, wykazując zwiększoną odporność.

Pokazujemy empirycznie, że strata SupCon jest mniej wrażliwa niż entropia krzyżowa dla zakresu hiperparametrów. Wraz ze zmianami w augmentacjach, optymalizatorach i szybkości uczenia się obserwujemy znacznie mniejszą wariancję wyniku utraty kontrastu. Co więcej, stosowanie różnych wielkości partii przy jednoczesnym utrzymaniu wszystkich innych hiperparametrów na stałym poziomie skutkuje konsekwentnie lepszą dokładnością SupCon top-1 w stosunku do entropii krzyżowej dla każdej wielkości partii.

Dokładność entropii krzyżowej i nadzorowanej utraty kontrastu w funkcji hiperparametrów i wielkości danych treningowych, mierzone w ImageNet za pomocą kodera ResNet-50. Po lewej: wykres pudełkowy pokazujący dokładność Top-1 w porównaniu ze zmianami w zakresie rozszerzania, optymalizatora i szybkości uczenia się. SupCon daje bardziej spójne wyniki dla różnych odmian, co jest przydatne, gdy najlepsze strategie są nieznane a priori . Po prawej: Dokładność Top-1 jako funkcja wielkości partii pokazuje, że obie straty odnoszą korzyści z większych rozmiarów partii, podczas gdy SupCon ma wyższą dokładność Top-1, nawet jeśli jest trenowany z małymi rozmiarami partii.
Dokładność nadzorowanej utraty kontrastu w funkcji czasu treningu i hiperparametru temperatury, mierzona w ImageNet za pomocą kodera ResNet-50. Po lewej: dokładność Top-1 jako funkcja epok przedtreningowych SupCon. Po prawej: dokładność Top-1 w funkcji temperatury podczas etapu przedtreningowego dla SupCon. Temperatura jest ważnym hiperparametrem w uczeniu kontrastowym i pożądane jest zmniejszenie wrażliwości na temperaturę.

Szersze oddziaływanie i kolejne kroki
Praca ta stanowi postęp techniczny w dziedzinie nadzorowanej klasyfikacji. Nadzorowane uczenie kontrastywne może poprawić zarówno dokładność, jak i odporność klasyfikatorów przy minimalnej złożoności. Klasyczna strata entropii krzyżowej może być postrzegana jako szczególny przypadek SupCon, w którym widoki odpowiadają obrazom i wyuczonym osadzeniom w końcowej warstwie liniowej odpowiadającej etykietom. Zauważamy, że SupCon czerpie korzyści z dużych rozmiarów partii, a możliwość trenowania modeli na mniejszych partiach jest ważnym tematem dla przyszłych badań.

Nasze repozytorium Github zawiera kod Tensorflow do trenowania modeli w artykule . Nasze wstępnie przeszkolony modele są również wydany na TF-Hub.

Podziękowania
Artykuł NeurIPS był współautorem z Prannay Khosla, Piotrem Teterwakiem, Chen Wangiem, Aaronem Sarną, Yonglongiem Tianem, Phillipem Isola, Aaronem Maschinotem, Ce Liu i Dilipem Krishnanem. Specjalne podziękowania dla Jenny Huang za prowadzenie procesu pisania tego wpisu na blogu.

https://ai.googleblog.com/