논문 읽기/Semi-Supervised

[논문 읽기] (2019), Consistency-based Semi-supervised Learning for Object Detection

AI 꿈나무 2021. 7. 8. 15:03
반응형

 안녕하세요, 오늘 읽은 논문은 Consistency-based Semi-supervised Learning for Object Detection 입니다.

 

 object detection task는 많은 수의 annotated sample이 필요합니다. 그리고 이를 사람이 직접 annotate하는 데에는 많은 비용이 필요합니다. 해당 논문에서는 unlabeled data를 활용하기 위한 semi-supervised learning 방법을 제안합니다. unlabeled data를 활용하기 위해 (1) consistency loss를 제안하고, back-ground class가 성능에 악영향을 주는 것을 방지하기 위해 (2) Background Elimination(BE)를 제안합니다.

 

labeleing cost를 감소하기 위한 많은 노력이 존재합니다.

 

 

 (a)는 supervised learning입니다. 각 이미지안에 존재하는 각각의 object에 대하여 class와 bounding box location이 필요합니다.

 

 (b) Weakly supervised learning은 label만 annotate된 image를 활용하므로 cost를 감소시킬 수 있지만, 극심한 성능저하가 발생합니다. 여기서 class만 정의된 data를 weakly labeled data라고 합니다.

 

 (c) Weakly semi-supervised learning은 fully labeled data와 weakly labeled data를 함께 사용합니다.

 

 (d) Semi-supervised learning은 unlabeled data와 labeleda data를 함께 사용합니다. 해당 논문에서는 이 방법으로 cost 문제를 해결하려 합니다.

 

Semi-supervised learning

 논문에서 semi-supervised learning에서 사용하는 consistency regularization(CR)을 object detection에 적용합니다. CR은 모델이 robust 되도록 학습하는데에 도움이 되지만, 이를 object detection에 바로 적용하기에는 문제가 발생합니다. 각 이미지에서 생성된 다수의 candidate box는 size와 location이 다양하기 때문입니다. 따라서 horizontally flip된 이미지를 사용하여 original image와 matching을 합니다. 여기에 consistency constraint를 적용하고, 새로운 consistency loss를 제안합니다.

 

 또한 매우 많은 background class가 consistency loss에 악영향을 미치므로 background 확률이 높은 박스를 제거하는 Background Elimination(BE) 방법을 제안합니다.

 

Method

 

 original image와 flip이 적용된 이미지를 함께 input으로 전달합니다. 하나는 label된 image고, 다른 하나는 unlabel image 입니다. labeled image는 일반적인 방법으로 학습을 진행하고, unlabeled image는 labeled image 사이의 consistency loss를 계산합니다. 

 

(1) Consistency loss for classification

 consistency loss는 label image와 unlabel image 사이의 유사도를 계산합니다. 이 유사도를 사용하는 방법으로 consistency regularization을 이용하며, Jensen-shannon divergence(JSD)를 사용합니다. JSD는 KL divergence를 수정한 거리 metric으로 사용합니다. 다른 거리 metric인 L2 loss는 모든 class에 대해 동일하게 다루므로 오히려 성능에 악영향을 준다고 합니다. confidence가 낮은 clss는 loss에 높은 영향을 가해야 general한 모델을 학습시킬 수 있습니다.

 

 

 original image와 flip된 image 사이의 JS(Jensen-shannon Divergence)를 계산합니다. 그리고 전체 consistency loss는 모든 바운딩 박스에대한 loss값에 평균을 취해 계산합니다.

 

 

 Jensen-shannon Divergence에 대해 잠깐 설명하자면, KL Divergence는 symmetry하지 않아 유사도를 이야기할 때 거리라고 표현하지 않습니다. 이 KL divergence를 거리 metric으로 쓸 수 있는 방법에 대해 고민하면서 나온 개념이 Jensen-Shannon Divergence 입니다. 이 JS는 symmetry한 성질을 갖습니다.

 

KL DIvergence는 symmetric을 만족하지 않습니다.

 

 

 Jensen-Shannon Divergence는 symmetric이 만족하여 거리 metric으로 사용합니다

 

 

(2) Consistency loss for localization

 flip된 image에 대한 바운딩박스 예측값 좌표를 다시 flip 하여 original image와 유사도를 계산합니다.

 

 

 그리곻 모든 박스에대해 평균값을 계산합니다.

 

 

(3) Overall loss for object detection

 전체 loss는 label image를 사용하여 계산하는 일반적인 object detection의 class, localization loss에 unlabel image를 사용하는 consistency loss를 추가합니다. 

 

consistency loss

 

total loss

 

(4) Background elimination

 object detection 모델이 생성한 bounding box는 엄청나게 많은 background class를 지니고 있습니다. 이 배경 class를 지닌 box들을 제거하지 않는다면 consistency loss에 영향을 미쳐 성능 저하가 발생합니다. 따라서 배경 확률이 높은 박스들을 mask를 사용하여 제거합니다. mask는 다음과 같이 설계합니다.

 

 

 이 mask는 배경 class 확률이 가장 높은 box를 0으로 만듭니다. 이를 consistency loss에 적용합니다.

 

 

 위 식을 자세히 보시면 original image에 대해서만 mask를 적용합니다. flip된 이미지에는 mask를 적용하지 않습니다. 배경 class를 너무 많이 제거해도 성능에 악영향을 주기 때문입니다.

Experiments

 supervised 방법보다 좋은 성능을 보여줍니다.

 

 

 background elimination의 효과입니다. 배경 class를 너무 많에 제거해도 성능에 악영향을 줍니다.

 

 self-training, consistency regularization 기반 다른 방법과의 비교입니다.

 


참고 문헌

[1] https://papers.nips.cc/paper/2019/hash/d0f4dae80c3d0277922f8371d5827292-Abstract.html

반응형