KalelPark's LAB

[ Computer Vision ] DINOv2: Learning Robust Visual Features without Supervision 본문

Data Science/Self Supervised Learning

[ Computer Vision ] DINOv2: Learning Robust Visual Features without Supervision

kalelpark 2023. 4. 23. 12:43

Abstract

최근 거대한 데이터셋으로의 NLP의 성공이 Computer Vision에도 유사한 방식으로 혁신을 보여주고 있습니다. 이러한 방법은, 선별된 데이터셋에서만 사용이 가능합니다. 우리는 기존 방식을 재검토하고, 다양한 기술을 결합하여 데이터 및 모델의 크기 측면을 확장합니다.

대부분 기술적 기여는 학습의 규모를 안정화하거나 가속화를 진행합니다. 

Introduction

task에 구애받지 않은 표현력 학습을 하는 것은 NLP에서는 기본이 되어왔습니다. NLP에서의 영향을 받아, Vision에도 상당한 영향을 미치고 있습니다. 대부분 유망한 노력은 text-guided pretraining에 초점이 되어왔으며, feature를 학습하는데 상당한 기여를 해왔습니다. Caption은 이미지의 풍부한 정보에 접근할 뿐이며, 복잡한 픽셀 수준 정보는 supervision에 표면화되지 않기에, image에 대한 정보로 사용하는데 한계가 있습니다. text-guided pretraining 대안으로써, image로부터 feature를 학습하는 것에 대한 Self-supervised learning을 하는 것입니다. 이러한 방법은 language modeling과 같이 pretext에 가까우며, image와 pixel level에서의 정보를 얻을 수 있습니다. 하지만, 기존 연구에서는 데이터가 너무 적거나 (ImageNet1K), 데이터셋의 품질이 많이 떨어지는 경우(uncurated)가 대부분입니다. 그리하여, iBoT과 같은 image / patch level discriminative 방법을 제시합니다.

Related Work

Intra-image Self-supervised training.

기존의 Patch기반의 SSL method를 소개합니다. (re-colorizing, predicting transformation, inpainting, patch re-ordering 등)을 소개합니다. 또한 최근 Patch기반의 Vit가 각광 받으면서 더욱 인기가 많아졌음을 언급합니다. 

 

Discriminative Self-supervised learning.

두 번째 방법은 image 또는 image group간의 feature의 차별적인 부분을 학습하는 것을 목표로 둡니다. 이러한 친숙한 방법은 초기 딥러닝의 토대가 되고, instance classification에서 상당히 많은 대두가 되어 왔습니다. instance classification에서 주로 성능을 개선하기 위한 Method는 2가지가 있습니다. (1번째 : instance-level objective, 2번째 : clustering). 이러한 방법은 Imagenet에서는 괜찮지만, large dataset에서는 적용하기 어렵다는 단점이 있습니다. 논문에서는 iBOT을 활용하여, Large Dataset에서 적용하는 것이 가능함을 보여줍니다.

 

Scaling self-supervised pretraining.

최근 연구는, data, model size의 관점에서 SSL의 능력을 확장시키는 것에 초점을 두었습니다. 대부분 이러한 방식은 supervision없이 정제되지 않은 데이터로 학습을 합니다. 이러한 방법은 data의 quality가 떨어지고, 결과의 대부분이 finetunning에 의하여 얻어지기 때문에 확장되어야 하기에, discriminative method는 data를 scale해야 함을 증명합니다. 이러한 연구는 self-supervised method의 성능은 어떤 data로부터 높은 성능을 낼 수 있는지 의문을 남김니다.

Discriminative Self-supervsied Pretraining

우리의 방법론은 SwAV의 Centering과 결합을 하고, DINO와 iBOT의 loss를 결합으로, discriminative self-supervixed method 및 feature를 학습시킵니다. 또한 우리는 feature를 퍼뜨리기 위해 regularization을 적용합니다. 

 

Image-level objective.

student와 teacher로부터 추출된 feature사이의 CrossEntropy를 사용합니다. 또한, DINO와 같이 EMA를 사용합니다. (Student는 Masking된 이미지, Teacher는 일반적인 이미지를 사용합니다.)

 

Patch-level objective.

Student는 Masking된 이미지, Teacher는 일반적인 이미지를 사용합니다. Masking된 Patch에서 patch level에서의 cross entropy를 구합니다. 

 

Untying head weights between both objectives.

우리는 2가지 목표와 관련된 weight를 묶으면 patch-level에서는 underfitting이 발생하고, image-level에서는 overfitting이 발생한다는 것을 발견합니다. 이러한 weight를 해체하면, 두 척도에서 모두 성능을 개선시킬 수 있습니다.

 

Sinkhorn-Knopp centering.

Sinkhorn-Knopp Algorithm을 3 iteration을 진행하고, Student의 경우에는 Softmax normalization을 적용합니다. 

 

KoLeo regularizer.

KoLeo regularization은 KoLeo 정규화기는 Kozacenko-Leonenko 차등 엔트로피 추정기에서 파생되며 배치 내에서 특징의 균일한 범위를 장려합니다. 즉, batch 내 여러 feature가 있으면, feature 사이의 거리를 균등하게 만드는 방법입니다.  또한 regularization을 하기전에, l2-normalization을 적용합니다.

 

(이후에는 여러가지 파라미터 세팅 및 효율적으로 학습시키기 위한 설명들이 열거되어 있다.)

Reference

https://arxiv.org/abs/2304.07193

 

DINOv2: Learning Robust Visual Features without Supervision

The recent breakthroughs in natural language processing for model pretraining on large quantities of data have opened the way for similar foundation models in computer vision. These models could greatly simplify the use of images in any system by producing

arxiv.org

 

Comments