GMLPs
Hanxiao Liu, Zihang Dai, David R. So, Quoc V. Le / Pay Attention to MLPs / NeurIPS - 2021
1. Problem Definition
gating과 MLP 구조를 사용한 간단한 네트워크를 통해 Transformer와 비슷한 성능을 보이는 gMLP 제안
2. Motivation
Motivation
Transformer는 두 가지 중요한 부분을 가지고 있음
각 토큰이 병렬로 처리 될 수 있는 recurrent-free 한 아키텍쳐
multi-head self attention을 통해, 토큰들 간의 정보를 통합
여기서 attention 구조는 인풋 간의 관계에 따라 파라미터가 달라지면서 토큰들의 관계를 판단하는 inductive bias 를 가지고 있음
그런데, 과연 self-attention 구조가 Transformer의 성능에 중요한 역할을 했을까?
self-attention이 정말 필요할지에 대한 의문에서 연구가 시작
Idea
self-attention 구조가 없는 MLP 기반 모델 제안 (basic MLP layers with gating)
3. Method
📌 관련 용어
Identity Mapping
입력으로 들어간 값 x가 어떠한 함수를 통과하더라도 다시 x가 나와야 한다는 것
3.1 Model description
동일한 크기와 구조인 L개의 blocks으로 이루어져 있음
각 블록은 다음과 같이 정의됨
U와 V는 channel dimension상에서의 linear projection
s( )는 spatial interaction을 캐치할 수 있는 레이어
s가 indentity mapping일 때, s를 통과하면 regular Feed forward neural network로 변함
여기서 각 token이 어떤 상호작용 없이 독립적으로 처리됨 (<-> transformer 와 달리)
본 연구에서 주요 focus 중 하나는 바로 충분히 복잡한 spatial interaction을 포착할 수 있는 좋은 s를 디자인 하는 것!
전반적인 블록 레이아웃은 inverted bottlenecks에서 영감을 얻어 spatial depthwise convolution으로 구상
Transformer와 달리, 본 연구에서 제시한 모델은 position embedding을 요구하지 않음
왜냐하면, 이런 정보가 s( )에서 포착될 것이기 때문
본 연구에서의 모델은 BERT / ViT와 동일한 input, output format을 사용함
예시) language task를 할 때, multiple text segments를 concat하고 prediction이 마지막 레이어 representation을 통해 도출됨 (이러한 구조가 동일하게 본 연구에서의 모델에도 쓰인다는 의미)
3.2 Spatial Gating Unit
elementwise multiplication
이때, f(Z)는 단순한 linear projection으로 다음과 같음
W는 n * n 행렬 (n: 시퀀스 길이)
학습의 안정성을 위해, W를 0으로, b를 1로 initialize 해주는 것 중요함
이런 초기화가 모델의 각 블럭이 학습 초기 단계에서 regular FFN처럼 행동하도록 함
또, s(Z)를 연산할 때, Z를 나누어 연산하는 것이 더 효율적이라고 함
3.3 gMLP Overview
4. Experiment
본 논문에서는 크게 2가지 분야에서 gMLP 검증
Image classification
Language Modeling
4.1 Image classification
gMLP 모델과 attentive model 들 사이 비교
Vision Transformer (ViT)
DeiT (ViT with improved regularization)
several other representative convolutional networks
위 결과를 통해 gMLPs가 DeiT와 견줄만 하다는 것을 보임
즉, self-attention이 없는 모델도 Transformer만큼 efficient 할 수 있다는 것을 알 수 있음
4.2 Masked Language Modeling with BERT
masked language modeling (MLM) task 실험 진행
input/output 형식은 BERT를 따름
Transformer와 다른 점은 positional embedding을 사용하지 않는다는 것
ablation & case study에서 모델은 batch size 2048, max length 128 for 125K steps로 학습되었음
main experiments는 batch size 256, max length 512 로 학습됨
4.2.1 Ablation: The Importance of Gating in gMLP for BERT’s Pretraining
gMLP 여러개의 버전과 baselines 비교
사용한 baselines
기존 BERT
기존 BERT + relative position biases
(기존 BERT + relative position biases) - softmax에서 모든 content-dependent terms 제거
variant of Transformers without self-attention라고 볼 수 있음
Tranformer에서의 multi-head attention을 대체하는 MLP-Mixer 모델
Metric으로 언어모델의 성능을 판단할 수 있는 지표인 perplexity를 사용
값이 낮을 수록 모델이 잘 학습되었다는 것을 의미
gMLP with SGU가 Transformer 만큼의 perplexity를 얻음
4.2.2 Case Study: The Behavior of gMLP as Model Size Increases
모델의 크기가 커질 때마다 성능이 어떻게 변하는지 확인하였음
Results
gMLP 모델이 deep 해질 수록 Transformer와 성능이 비슷해지며, 심지어는 outperform 하는 경우도 존재함
SST-2, 즉 sentiment analysis task 측면에서도 같은 개수의 파라미터일 때, gMLP 모델이 Transformer 보다 뛰어나다는 것을 보임
하지만, natural language inference task 측면에서는 Transformer가 더 좋은 성능을 보였음
왜냐하면, 이 task에서는 모델이 2 문장을 다루어야 하는데, 여기서 self-attention 이 유용한 역할을 했기 때문 -> self-attention을 가지고 있는 Transformer 가 훨씬 유리
4.2.3 Ablation: The Usefulness of Tiny Attention in BERT’s Finetuning
위의 MNLI-m 결과에서 gMLP가 Transformer 모델보다 성능이 낮았던 것을 개선하기 위해 tiny self-attention block을 모델에 추가하였음
이미 gMLP가 spatial 관계를 파악할 수 있기 때문에 self-attention 모듈이 heavy 할 필요는 없다고 생각
사이즈가 64인 single head -> "aMLP" 라고 함
aMLP Overview
Results
aMLP가 모두 Transformer 보다 좋은 성능을 보임
4.2.4 Main Results for MLM in the BERT Setup
full BERT setup에서 실험을 진행함
공정한 비교를 위해 gMLP의 depth와 width를 조정해줌
Model specifications
Results
gMLP가 Transformer와 견줄만 하다는 것을 알 수 있음
앞서 계속 언급했지만, gMLP의 크기가 커질 수록 Transformer와의 성능 갭이 줄어드는 것을 확인 할 수 있음
또, tiny single-head self-attention을 사용하기만 해도 Transformer보다 좋은 성능이 나올 수 있다는 것을 알 수 있음
5. Conclusion
본 연구는 Transformer의 self-attention이 중요한 역할을 하는가에서 시작하여 연구를 진행함
따라서 본 연구에서는 multi-head self-attention layer를 대신할 수 있는 간단한 방법을 제시
gMLPs, a simple variant of MLPs with gating
gMLP는 특정 분야에서 Transformer보다 더 좋은 성능을 낼 수 있음을 보임
또, Transformer의 multi-head self-attention이 문장과의 관계를 고려하는 task에서 유용함을 알 수 있었음
모델 사이즈를 늘리는 것보다 small single-head self attention 을 추가하는 것이 gMLP가 더 좋은 성능을 가지게 한다는 것을 보임
Author Information
Kaist, 지식서비스공학대학 20213383 원예은
관심 분야: System analysis, ASRS
6. Reference & Additional materials
논문 Appendix
Identity mapping: https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=siniphia&logNo=221387516366
Transformer 구조: https://wikidocs.net/31379
Last updated