dhkim0225 / 1day_1paper

read 1 paper everyday (only weekday)
53 stars 1 forks source link

[78] Understanding Failure Modes of Self-Supervised Learning #107

Open dhkim0225 opened 2 years ago

dhkim0225 commented 2 years ago

from weekly arxiv AI 만담

SSL로 학습된 모델에서 오분류되는 이미지들을 평가하는 Q-score 제안
제대로 분류되는 이미지는 sparse & 특징이 드러나는 feature들이 존재. 잘못 분류되는 이미지 피처는 그 반대
Encoder를 통과한 latent feature 를 활용하여 Q-score를 제안 (Z-score를 피처의 L1-norm을 노멀라이징)
Q-score 노멀라이징하면 SSL --> 분류문제 적용시 정확도가 훨씬 향상된다고.

paper

SimCLR, SwaV, MoCo V2, BYOL 4개의 모델에 대해 조사했음. sample-wise Self-Supervised Representation Quality Score (or, Q-Score) 제안.

contribution

Q-score

Visualize features

pretrained SimCLR 을 ImageNet-100 에 finetune 시키고, feature를 뽑는다. (learnable linear 붙임) class 별 average feature 들을 쭉 구하고, magnitude 가 가장 큰 값을 map 에 찍어 보았다. image 왼쪽은 잘 classify 한 애들, 오른 쪽은 classification 실패한 애들.

Notation

f(.) ==> encoder g(.) ==> MLP projection head x, x^~ ==> 2개의 view h, h^~ ==> 2개의 view 를 encoder 에 통과시켜 얻은 feature z, z^~ ==> 2개의 view 를 encoder&MLP 에 통과시켜 얻은 feature

Encoder feature scores

encoder 를 거쳐 나온 h feature 들을 이용해 다음 값들을 구할 수 있다. image

Q-score

Q-score 는 Encoder를 통과한 latent feature 를 활용하여 구한다. Z-score를 피처의 L1-norm을 normalize image

튀는 값이 크게 있으면, not-noisy 하다는 이야기고 그게 좋은 feature라는 이야기

Q-score regularization

기존 SimCLR loss 가 다음과 같으니, image

여기에 regularzation term 을 붙임 image

근데 실험적으로, 이렇게 reg 를 붙이면, feature 하나만 극단적으로 사용하는 것이 trivial solution이게 된다. image

그래서, 모든 데이터셋 내부의 feature 를 활용해서 term 을 하나 더 붙인다. image 2N 인 이유는, N개의 set 에 대해 2개의 view 가 있기 때문. l은 encoder output dimension임 여기서, 모든 데이터 셋의 feature index 별 l1 norm feature 를 다음과 같이 표기한다. image

최종 loss 는 다음과 같다. image λ1 = 0.1, λ2 = 0.1

Q-score 괜찮은 거임?

image image image

Not bad.

Results

image image

Q-score regularization 을 적용하면 feature 가 요렇게 변한다. image