소프트 프롬프트 — prompt/prefix/P-tuning

소프트 프롬프트 — prompt/prefix/P-tuning

🤗 PEFT의 소프트 프롬프트 개념 가이드는 prompt tuning·prefix tuning·P-tuning·multitask prompt tuning을 아우르는 설명이에요. 공통점은 '학습 가능한 임베딩 텐서'를 입력에 덧붙인다는 점이에요.

Prompt tuning

프롬프트 토큰이 자기만의 파라미터를 가져 독립적으로 갱신돼요. 사전학습 모델 파라미터는 얼리고, 프롬프트 토큰 임베딩의 그래디언트만 업데이트해요. 결과는 전체 모델 훈련에 준하며, 모델이 커질수록 성능이 좋아져요. 다만 '가상 토큰'은 실제 단어의 임베딩과 맞지 않아 사람이 읽을 수 없다는 단점이 있어요.

Prefix tuning

prompt tuning과 비슷하지만, 프리픽스 파라미터를 모든 레이어에 삽입해요(prompt tuning은 입력 임베딩에만). 별도 FFN으로 최적화하기도 해요.

P-tuning

훈련 가능한 임베딩 텐서에 LSTM 기반 프롬프트 인코더를 사용해 프롬프트 파라미터를 최적화하는 변형이에요.

Multitask prompt tuning (MPT)

여러 태스크에 공유 가능한 단일 프롬프트를 학습해 파라미터 효율 전이 학습을 구현해요.

더 알아보기