논문 리뷰/자연어처리

P-Tuning v2: Prompt Tuning Can Be Comparable to Fine-tuning Universally Across Scales and Tasks 리뷰

kyj0015 2025. 5. 9. 22:02
        링크:

https://arxiv.org/pdf/2110.07602

Background

  • Full-FT
    • NLU Task별로 pretraining 모델에 fine-tuning을 하는게 일반적인 방법
    • 하지만 각  task 별로 모델을 관리해야하기 때문에 메모리와 컴퓨팅 자원이 많이 듬
  • Prompting
    • Pretraining 모델에 discrete prompt를 작성하여 사용함
    • fine-tuning에 비해 아쉬운 성능
  • Prompt Tuning 
    • Discrete prompt와 continual prompt를 결합하여 continual 부분만 학습
    • Prompt tuning 방식은 10B 이상의 큰 모델에서만 Full-FT와 유사한 성능을 보임
    • 기존의 prompt tuning 방식은 hard sequence labeling tasks를 어려워함
    • *hard sequence labeling task: named entity recognition, extractive question asnwering 등

 

Methods

  • P-Tuning V1과 비교
    • input embedding만 학습시키니 학습시킬 수 있는 파라미터 수의 한계가 있음
    • 모델의 예측에 input embedding (첫 층)이 큰 영향을 미치지 않음
  • P-Tuning V2
    • input embedding layer만 tuning하는 것이 아니라 모든 층의 continual prompt를 학습함
    • class label with linear head로 예측함 (V1은 Verbalizer with LM head로 예측)

 

Experiment & Analysis

  • Figure 1
    • P-tuning과 비교하여 작은 모델에 관해서도 Fine-tuning과 유사한 성능을 달성함

  • Table 2
    • model scale과 다양한 task에 대해 실험함
    • 대부분의 실험에서 PT보다 높은 성능을 보이며, FT와 유사한 성능을 보임
    • MPT-2: Multi-task에 continuous prompts를 사용 가능하도록 공유하여 학습함
    • Simple classification task는 짧은 프롬프트 (less than 20)가 선호되고, hard sequence labeling task는 긴 프롬프트 (around 100)이 선호됨

  • Table 4: CLS with linear head vs Verbalizer with LM head
    • V1에서는 Verbalizer & LM head를 사용함 -> 매핑 vocab이 필요
    • V2에서 비교 실험을 했을때 더 높은 성능을 보이지 않았음
    • Verbalizer에 관해서는: https://kyj0105.tistory.com/84

  • Figure 3: Impact of layer
    • 층마다 중요도가 다름
    • 거의 모든 setting에서 descend 그래프가 높은 성능을 보임 -> upper layer (출력과 가까운 층)을 tuning하는 것이 효율적

 

Result

  • 작은 모델에서도 일관되게 Full-FT와 유사한 성능을 보임
  • hard sequence labeling task에서도 높은 성능을 보임

 

Limitation

  • Prompt Tuning 방식은 여전히 downstream task에서 Full Fine-tuning보다 낮은 성능을 보임