Alexey Dosovitskiy, Philipp Fischer, Jost Tobias Springenberg, Martin Riedmiller, Thomas Brox
(Submitted on 26 Jun 2014 (v1), last revised 19 Jun 2015 (this version, v2))
arXiv:1406.6909
Exemplar-CNN 또는 Exemplar 라고 부른다.
2014년도 예전의 논문이라 간단히 어떤식으로 네트워크를 학습시켰는지만 봤다.
training에 쓰일 input들은 나중에 학습후에 적용될 target task의 이미지와 거의 동일한 분포를 가진 이미지를 선택한다.
또한 저자들은 object를 포함하거나 object의 part를 포함하고 있는 패치에만 관심이 있었기 때문에 상당한 gradients를 가진 지역으로부터만 sample을 해서 사용했다. (위의 그림처럼)
이제 이 패치들을 각각 transformations을 해준다.
transformation의 종류는 매우 다양하다.
-
translation: vertical or horizontal translation by a distance within 0.2 of the patch size; • scaling: multiplication of the patch scale by a factor between 0.7 and 1.4
-
rotation: rotation of the image by an angle up to 20 degrees
-
contrast 1: multiply the projection of each patch pixel onto the principal components of the set of all pixels by a factor between 0.5 and 2 (factors are independent for each principal component and the same for all pixels within a patch)
-
contrast 2: raise saturation and value (S and V components of the HSV color representation) of all pixels to a power between 0.25 and 4 (same for all pixels within a patch), multiply these values by a factor between 0.7 and 1.4, add to them a value between −0.1 and 0.1
-
color: add a value between −0.1 and 0.1 to the hue (H component of the HSV color representation) of all pixels in the patch (the same value is used for all pixels within a patch)
이제 위의 수많은 transformation을 랜덤하게 해주었을 때 아래와 같은 그림이 나온다.
가장 왼쪽 상단 빨간색 칸 안의 사슴이 실제 original 패치이고 그 외의 것들은 random transformation을 거친 것들이다.
자 이제 이들을 어떻게 학습시키는 것인가?
각 오리지널 패치마다 클래스 번호를 달아준다.
그리고 transformation을 통해 생성된 수많은 패치들을 input으로 넣었을 때 해당하는 클래스 넘버가 나오게끔 학습을 시킨다.
예를 들어, Figure 2의 original 사슴에 5번이라는 클래스 넘버를 ground truth로 할당한다.
그렇다면 오리지널 사슴 이외의 것들을 네트워크에 입력으로 넣었을 때 5번이라고 나오게끔 학습을 시킨다는 것이다.
여기서 transformation에 대해 알아야 할것이 있다. 이 transformation approach는 image content의 identity를 바꾸지는 않는다는 것을 가정한다.
예를 들어, color transformation을 이용하여 이러한 색 변화에 invariant 하도록 네트워크를 학습시킬 것이므로 color information에 의존하는 task에서는 학습된 feature들이 제대로 작동하는 것을 기대할 수 없다.
예를 들자면 흑표범과 푸마를 구분하기가 어렵다는 것.
이 경우에는 적용될 transformation을 주의깊게 선택하는 거나 그 이외의 방법으로 커버가 가능하다.
classification에 적용한 결과는 아래와 같다.
(이미지는 논문의 것 그대로 사용하여 작성하였다.)
'AI > 논문정리' 카테고리의 다른 글
i-REVNET: DEEP INVERTIBLE NETWORKS (0) | 2019.11.11 |
---|---|
The Reversible Residual Network : Backpropagation Without Storing Activations (RevNet) (0) | 2019.11.10 |
Unsupervised Learning of Visual Representations by Solving Jigsaw Puzzles (0) | 2019.11.06 |
How transferable are features in deep neural networks? (0) | 2019.11.04 |
Deep Residual Learning for Image Recognition (ResNet) (0) | 2019.11.01 |