Revisit Visual Prompt Tuning: The Expressiveness of Prompt Experts
이 논문은 기존 Visual Prompt Tuning(VPT)의 제한된 표현력을 해결하기 위해, 프롬프트 전문가(prompt experts)에 가변성을 부여하여 성능과 효율성을 동시에 높인 Visual Adaptive Prompt Tuning(VAPT) 방법을 제안합니다.
원저자:Minh Le, Anh Nguyen, Huy Nguyen, Chau Nguyen, Anh Tran, Nhat Ho
이미 세상의 모든 요리를 다 아는 **'천재 요리사(거대 AI 모델)'**가 있다고 상상해 보세요. 이 요리사에게 갑자기 "이제부터 한국식 매운 떡볶이를 만들어봐!"라고 시키면, 요리사는 당황할 수 있습니다.
이때 두 가지 방법이 있습니다.
전체 재교육 (Full Fine-tuning): 요리사에게 처음부터 끝까지 한국 요리 교과서를 다시 통째로 외우게 하는 것입니다. 시간도 너무 오래 걸리고, 요리사의 머릿속을 다 바꾸느라 에너지가 엄청나게 소비됩니다.
기존 방식 (VPT - Visual Prompt Tuning): 요리사에게 요리법을 다 바꾸라고 하는 대신, 옆에 '작은 메모지(Prompt)' 한 장을 붙여주는 겁니다. "요리할 때 고추장을 한 스푼 더 넣어!"라고 적힌 메모죠. 요리사는 원래 실력대로 요리하되, 그 메모만 보고 살짝 조절합니다. 이건 아주 빠르고 효율적입니다.
⚠️ 문제점: "고정된 메모지의 한계"
하지만 기존의 메모지 방식(VPT)에는 치명적인 단점이 있었습니다. 이 메모지는 **'정지된 메모지'**라는 거예요.
예를 들어, 요리사가 재료를 보고 "어? 이 고추장은 좀 맵네?" 혹은 "이 고추장은 좀 싱겁네?"라고 상황에 따라 판단해야 하는데, 기존 메모지는 **"무조건 고추장 한 스푼!"**이라고만 적혀 있습니다. 재료가 매일 바뀌는데 메모지는 똑같으니, 요리의 맛이 항상 일정하지 않고 완벽하지 않은 거죠.
최근 파라미터 효율적 미세 조정(PEFT) 기법 중 하나인 **Visual Prompt Tuning (VPT)**은 사전 학습된 비전 트랜스포머(ViT)의 입력에 학습 가능한 프롬프트 토큰을 추가하여 하위 태스크에 적응시키는 강력한 방법으로 주목받았습니다. 그러나 본 논문은 VPT의 기존 설계에 다음과 같은 핵심적인 한계가 있음을 지적합니다.
제한된 기능적 표현력 (Restricted Functional Expressiveness): 기존 VPT에서 프롬프트 전문가는 입력 데이터(X)와 무관하게 고정된(static/input-invariant) 벡터로 모델링됩니다. 즉, 입력값이 바뀌어도 프롬프트 값은 변하지 않습니다.
MoE 관점에서의 불일치: 최근 연구에 따르면 트랜스포머의 어텐션 헤드는 여러 '전문가(Experts)'가 결합된 Mixture of Experts (MoE) 구조로 해석될 수 있습니다. 기존 VPT는 새로운 '프롬프트 전문가'를 추가하는 방식이지만, 이 전문가들이 입력에 따라 적응하지 못하는 '정적(static)' 형태라는 점이 모델의 적응 능력을 제한하는 병목 현상이 됩니다.
핵심 질문: "파라미터 효율성을 유지하면서, 프롬프트 전문가의 표현력을 입력 데이터에 따라 변화하도록(input-adaptive) 만들 수 있는가?"
2. 제안 방법론 (Methodology: VAPT)
본 논문은 프롬프트 전문가에게 입력 의존성을 부여하는 **Visual Adaptive Prompt Tuning (VAPT)**을 제안합니다. VAPT는 두 가지 주요 모듈을 통해 구현됩니다.
① 토큰별 프로젝터 (Token-wise Projectors) & 채널별 컨볼루션 (Channel-wise Convolution)
글로벌 정보 통합: 기존 전문가들이 국소적(local) 정보에 치중하는 것을 보완하기 위해, 입력 피처 맵 전체에서 글로벌 정보를 추출합니다.
채널별 컨볼루션: 공간적 관계(spatial relationship)를 모델링하기 위해 사용됩니다. 모든 채널에 동일한 가중치를 공유하는 컨볼루션을 사용하여 파라미터 수를 획기적으로 줄이면서도 인접 패치 간의 관계를 학습합니다.
토큰별 프로젝터: 컨볼루션된 피처를 가중 평균하여 각 프롬프트 전문가가 참조할 글로벌 특징 벡터(Gj)를 생성합니다.
② 적응형 프롬프트 생성 (Adaptive Prompt Generation)
피처 프로젝터 (Feature Projector): 추출된 글로벌 특징을 작은 MLP(Multi-Layer Perceptron)에 통과시켜, 최종적으로 입력 데이터 X에 따라 동적으로 변하는 적응형 프롬프트 토큰 P(X)를 생성합니다.
이 과정을 통해 프롬프트 전문가는 단순한 상수 벡터가 아닌, 입력의 맥락을 반영하는 함수 f(X)의 형태를 갖게 됩니다.
3. 주요 기여 (Key Contributions)
이론적 재해석: VPT를 MoE 구조의 관점에서 분석하여, 기존 프롬프트 전문가의 '정적 특성'이 표현력을 제한한다는 점을 이론적으로 규명했습니다.
VAPT 프레임워크 제안: 파라미터 효율성을 유지하면서도 입력 적응형(input-adaptive) 프롬프트를 생성하는 새로운 구조를 설계했습니다.
수학적 증명: VAPT가 프롬프트 추정(prompt estimation)에 있어 **최적의 샘플 효율성(optimal sample efficiency)**을 달성함을 수학적으로 증명했습니다.
실증적 우수성: 다양한 벤치마크를 통해 기존 VPT 및 다른 PEFT 기법들보다 뛰어난 성능을 입증했습니다.
4. 실험 결과 (Results)
성능 향상: VTAB-1K 및 FGVC 벤치마크에서 VAPT는 풀 파인튜닝(Full Fine-tuning) 베이스라인을 크게 상회하는 성능을 보였습니다. (VTAB-1K에서 평균 7.34% 향상)
효율성: VPT보다 더 적은 학습 파라미터를 사용하면서도 성능은 일관되게 높았습니다. 또한, 연산량(FLOPs) 증가폭은 0.6% 미만으로 매우 미미합니다.
데이터 효율성 (Sample Efficiency): Stanford Dogs 데이터셋 실험 결과, 데이터가 1%만 있는 극단적인 저데이터 상황에서 VPT는 3.6%의 정확도를 보인 반면, VAPT는 60.1%의 정확도를 기록하며 압도적인 적응력을 보였습니다.
범용성: 자기지도학습(MAE, MoCo v3)으로 사전 학습된 모델에서도 강력한 성능을 보였으며, 세만틱 세그멘테이션(Semantic Segmentation) 및 멀티모달(Image-Text Retrieval) 작업에서도 우수한 성능을 입증했습니다.
5. 의의 (Significance)
본 논문은 단순히 성능을 높이는 것을 넘어, **"프롬프트의 표현력이 왜 중요한가"**에 대한 이론적 근거를 제시했다는 점에서 큰 의의가 있습니다. 프롬프트를 고정된 값이 아닌 입력에 반응하는 '동적 전문가'로 정의함으로써, PEFT 분야에서 파라미터 효율성과 모델 표현력 사이의 트레이드오프를 해결할 수 있는 새로운 방향성을 제시했습니다.