Inductive bias란?
- 새로운 데이터에 대해 좋은 성능을 내기 위해 모델에 사전적으로 주어지는 가정
- SVM: Margin 최대화, CNN: Locality (지역적인 정보), RNN: Sequentiality (순차적인 정보)
- CNN은 2차원의 지역적인 특성을 유지하며 레이어를 통과하며 지역적인 정보를 중요하게 여기며 모델을 학습한다.
- 반면 Transformer는 데이터를 1차원으로 만든 후 self attention을 통해 layer를 학습하기 때문에 2차원의 지역적인 정보가 유지가 되지 않으므로 CNN에 비해 inductive bias가 적다. 다만 모델의 자유도가 CNN보다 높아 데이터로부터 더 많은 것을 학습할 수 있다.
투빅스 16기 전민진입니다
ViT는 CNN에 의존하지 않고 순수한 transformer가 impage patch의 시퀀스에 다이렉트로 적용되어 image분류 task에서 좋은 성능을 보일 수 있음을 밝혔습니다.
큰 데이터셋에 pre-trained 시킨 후 작거나 중간의 image recognition 벤치마크 데이터셋에 전이 학습을 할 때 ViT는 기존 CNN SOTA모델들 보다 계산량 대비 좋은 성능을 보였습니다.
ViT는 다음과 같은 과정으로 학습을 진행합니다.
1. 우선 이미지를 여러개의 패치로 나눠 각각을 1차원으로 Flatten시키고 linear projection을 통해 D차원 벡터로 매핑시킵니다.
2. 1의 과정으로 얻은 patch embedding의 맨 앞에 class token을 추가하고, 각 시퀀스의 순서를 나타내기 위해 position embedding을 추가합니다.
3. 이후 이를 transformer에 넣어 이미지의 class를 예측합니다
hybrid architecture
Fine-tuning and High resolution
투빅스 16기 김경준입니다.