dhkim0225 / 1day_1paper

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

[91] Three things everyone should know about Vision Transformers #120

Open dhkim0225 opened 2 years ago

dhkim0225 commented 2 years ago

paper

Touvron 의 신작.

  1. 모듈들을 병렬로 잘 연결하자
  2. data 가 적으면 mhsa 만 튜닝해도 좋다
  3. 16 patchify layer 를 resnet-d 처럼 작은 stride 를 갖는 레이어들로 쪼개면 좋다. (multi-step 으로 달성시킨다)

ViT 의 특성을 잘 정리해 주었는데, 다음과 같다.

paramter 는 depth 에 비례, width 에 quadratic FLOP 은 depth 에 비례, width 에 quadratic Peak memory 는 depth 에는 constant, width 에 quadratic latency 는 이론상 wide 한 게 더 좋은데, 꼭 그렇지는 않음.

Parallel ㄱㄱ

image

AS-IS image

TO-BE image

2개의 block 을 하나의 block 으로 합치는 형태이다. 공평하게 하기 위해서 36 block 와 비교할 때, 18x2 block 과 비교하는 식으로 실험이 진행된다. image

LS 는 LayerScale 인데, 네트워크가 깊어질 수록 안정화시키는 장치이다. learnable diagonal matrix 를 residual block output 에 더하는 것이고, diangonal matrix 는 0으로 initialize 된다. 어떻게 보면 learnable 한 per-channel attention parameter라 보면 되겠다.

Data 적을 때는 attn 이 효과적이다.

image image

patchifty 는 나눠서 진행하면 좋다.

image image image