Inductive bias(부제:transformer기반 모델이 CNN모델보다 성능이 좋은 이유)

TAEJUN YOUN·2022년 12월 26일
0

개인공부

목록 보기
1/1

제목에 대한 답은 inductive bias가 작기 때문이다.

부제: ViT는 왜 CNN모델보다 성능이 좋을까? - inductive bias가 작기때문에

  1. 머신러닝에서 말하는 bias는 무엇일까? variance는 무엇일까?

    bias: 타겟값과 예측값이 얼마나 떨어져있는가

    → bias가 높다는 것은 데이터와 타겟의 연관성을 잘 찾아내지 못하는 것(underfitting)

    variance: 예측값들이 얼마나 퍼져있는가

    → variance가 높다는 것은 데이터의 사소한 노이즈나 랜덤한 부분까지 민감하게 고려하는 것 (overfitting)

    +bias와 variance는 tradeoff관계를 갖는다.(Error = noise + bias + variance)

  2. Inductive bias란?

    학습 모델이 지금까지 만나보지 못했던 상황에서 정확한 예측을 하기 위해 사용하는 추가적인 가정

    가정이 맞으면 예측을 잘할테고 아니면 예측을 못한다.

    assumption이 강할 경우 그 가정이 맞으면 적은 dataset으로도 탁월한 성능을 줄 수 있지만 가정이 틀릴 경우에는 성능이 더 떨어진다.

    → 지역적으로 얻을 정보가 많은 경우에 CNN이 적은 데이터셋으로도 탁월한 성능을 줄 수 있지만 지역적으로 얻을 정보가 적은 경우에 성능이 떨어진다.

    assumption이 약해질 경우 가정의 실수가 일어날 일이 줄어들어 견고한 특성을 지닌다.(robust)

  3. CNN과 FCN의 inductive bias비교 (CNN > FCN)

    cnn은 convolution filter가 입력을 window sliding하게 된다. 즉 locality에 대한 가정(inductive bias가 있고 local영역에서 spatial한 정보를 잘 뽑아낸다. 그에 반에 FCN은 입력을 개별단위로 받아 entity간의 관계가 약하다.

  4. CNN vs Transformer (task와 데이터셋 크기에 따라 달라질 수 있음)

    cnn은 설계상 global한 영역에 대한 처리가 어렵다는 문제가 있다. 왜냐면 이미지가 지역적으로 얻을 정보가 많다는 것을 가정하고 만들어졌기 때문이다. 하지만 transformer는 positional embedding이랑 self attention을 통해 모든 정보를 활용한다.

  5. 결론

    Transformer의 inductive bias가 적어 데이터 셋에 대한 예측은 robust하게 하지만 학습을 잘 시키기 위해서는 데이터셋이 커야한다.

profile
Study and Share

0개의 댓글