[24’ ICLR] LLaMA-Adapter: Efficient Fine-tuning of Language Models with Zero-init Attention

Date:     Updated:

카테고리:

태그:

image


🔍 Abstract

LLaMA 7B model을 그대로 full fine-tuning하는 것은 비효율적이다. 이 논문에서는 일종의 prefix tuning으로 볼 수 있는 PEFT 방법론을 제안한다. 이때 learnable parameter는 1.2M 정도로, 이는 7B model의 0.02%에 해당한다. 그리고 A100 8개로 1시간 이내에 학습이 가능하다. 이러한 방법으로 LLaMA-Adapter는 기존 LLaMA fine-tuning model인 Alpaca나, LLaMA LoRA fine-tuning model인 Alpaca-LoRA과 비슷한 성능을 보여주면서도 더 빠른 학습이 가능했다.


1. Architecture

1.1. LLaMA-Adapter

image

LLaMA-Adapter의 Main Feature는 크게 2가지로 나눠볼 수 있다. (1) Variants of Prefix Tuning, (2) Zero-initialized Attention이다.

먼저 Prefix Tuning 부분을 보면, Prefix Tuning에서 backpropagation의 효율을 높이기 위해 topmost $L$ layer에만 learnable prefix를 추가한 모습이다. 이러한 방법으로 backpropagation을 모델 끝까지 다시 할 필요성을 제거했다.

또한 Zero-initialized Attention 부분을 보면, 초기 학습에서 prefix의 영향력을 0으로 만들기 위해 zero-gating을 시행하여 안정적으로 학습을 진행할 수 있도록 했다. 식으로 보면 다음과 같다.

먼저 Queries, Keys, Values를 다음과 같이 나타낼 수 있다.

image

이때 $P_ l$은 prefix, $T_ l$은 text token embedding, $t_ l$은 예측해야 할 직전 layer의 token embedding이다. Attention score는 다음과 같이 계산된다.

image

이를 prefix 부분($\leq K$)과 그 이후 부분($\leq K+M+1$)으로 나누면 다음과 같다.

image

이때 앞쪽의 $S_ l ^ K$는 prefix가 $t_ l$을 생성하는데 미치는 정보들을 나타내며, 초기에 이 값들이 random initialization됨에 따라 학습이 불안정할 수 있다. 따라서 learnable gating factor $g_ l$을 softmax layer 이후에 추가하고, 이를 초기에 0으로 설정하여 prefix의 영향력을 0으로 만들어 학습을 안정화시킨다.

image


1.2. Multimodal LLaMA-Adapter

image

이러한 방법을 multimodal setting에도 적용할 수 있다. CLIP과 같은 visual encoder로부터 얻은 multi-scale global feature를 $\lbrace I_m \rbrace _ {m=1} ^M$이라 하고, 이로부터 vision feature를 다음과 같이 추출할 수 있다.

image

그리고 이를 prefix에 더해주어 vision feature를 seamless하게 prefix 부분에 합칠 수 있다.

image


2. Experiments

2.1. Instruction-following Evaluation

image

먼저 저자들은 instruction-following evaluation을 통해 LLaMA-Adapter의 성능을 확인했다. 이때 LLaMA-AdapterAlpacaAlpaca-LoRA에 비해 더 잘 학습되었으며, 더 효율적으로 학습되었다. LLaMA에 있어서 이 방법은 더 효과적이고 효율적이라고 할 수 있다.


2.2. Multi-modal Evaluation

image
image

굉장히 간단한 방법을 사용하였음에도 불구하고, LLaMA-Adapter는 multimodal setting을 잘 처리하는 모습을 보여주고 있다.


2.3. Ablation Study

image

저자는 추가로 fine-tuning하는 layer의 수가 많아지면 성능이 크게 향상된다는 것과 zero-initialized attention이 성능에 굉장히 중요하다는 것을 강조했다. 그 외에 다른 세팅에서도 zero-initialization을 실험하여 이 방법의 효과를 증명했다.


💡 Summary

LLaMA-AdapterLLaMA를 효율적으로 학습시키기 위한 방법론으로, prefix tuningzero-initialized attention을 사용한다. 이를 통해 AlpacaAlpaca-LoRA와 비슷한 성능을 보여주면서도 더 빠르게 학습이 가능했다. 또한 multimodal setting에서도 잘 작동하는 것을 확인할 수 있다. 특히, zero-initialized attention이 성능에 큰 영향을 미치는 것을 확인할 수 있었고, 유사한 구현 상황에서 활용해봐야 할 중요한 부분이라고 생각된다.


📃 Reference


Language 카테고리 내 다른 글 보러가기

댓글 남기기