[VPT] Visual Prompt Tuning
저자: M. Jia et al . Meta
발행년도: ECCV 2022년
인용수: None회
https://arxiv.org/pdf/2203.12119
1. TL;DR
이 논문이 새롭게 문제 삼은 지점은 “대규모 비전-언어 사전학습 모델을 다운스트림에 쓰려면, 왜 항상 전체(혹은 큰 부분)를 파인튜닝해야 하느냐”는 전제였다.
저자들은 성능 이전에 ‘업데이트해야 하는 파라미터의 양’ 자체가 배포·확장·재사용을 가로막는 병목이라고 다시 정의했다.
그래서 “모델을 바꾸는 일”이 아니라 “입력을 바꾸는 일”로 적응을 옮겨가야 한다는 문제의식을 제시했다.
2. 이 논문을 읽기 전의 문제 인식
나는 CLIP 같은 비전-언어 사전학습 모델에 대해서, 다운스트림 성능은 결국 파인튜닝으로 끌어올리는 것이라고 이해했다. 사전학습이 많이 되어있을수록, 마지막에는 데이터셋에 맞춰 가중치를 조금이라도 움직여야 한다고 생각했다.
그 정의가 자연스럽게 느껴진 이유도 분명했다. 비전 모델의 역사는 대체로 “백본을 학습시키고, Task에 맞게 다시 학습시키는” 흐름으로 쌓여 있었다. 파인튜닝은 성능을 향상시키는 가장 일반적인 접근방법이었다. 모델을 고정하고 뭔가를 덧대는 방식은, 예전에는 대개 성능 손실을 감수하는 편법처럼 취급되곤 했다.
당시에는 질문조차 되지 않았던 전제가 있었다. 좋은 Adaptation이란 결국 파라미터를 업데이트하는 일이라는 전제였다. 업데이트를 줄이는 건 연구 흥미나 효율성 이야기일 뿐, “문제 정의”의 중심은 아니라고 여겼다.
3. 읽다가 멈칫했던 지점
멈칫했던 지점은 성능 그래프가 아니라 비용의 종류를 다시 세는 방식이었다. 저자들은 “몇 % 성능이 올랐는가”보다 “몇 개의 파라미터를 새로 저장해야 하는가”를 먼저 꺼냈다. 그 순간, 내가 성능만을 목표로 문제를 정의하고 있었다는 사실이 드러났다고 느꼈다.
저자들이 기존 전제를 문제로 보기 시작한 이유는, 대규모 사전학습 모델의 스케일이 바뀌었기 때문이라고 읽혔다. 모델이 거대해질수록 파인튜닝은 단지 학습 비용이 아니라 운영 비용이 됐다. Task마다 모델 복사본이 늘어나는 순간, 연구 실험에서는 사소했던 일이 제품과 서비스에서는 구조적 부담이 됐다.
여기서부터 문제 정의가 달라 보이기 시작했다. “각 Task에서 최고 성능을 내는 법”이 아니라 “거대한 모델을 Task별로 어떻게 ‘가볍게’ 적응시키는가”가 더 근본적인 질문처럼 보이기 시작했다.
4. 저자들이 다시 정의한 ‘문제’
저자들은 다운스트림 적응을 ‘가중치 최적화 문제’가 아니라 ‘입력(프롬프트) 설계 문제’로 다시 정의했다.
기존 정의는 모델을 바꾸는 쪽에 자유도를 줬다. 대신 Task마다 모델이 달라지는 것을 당연시했다.
이 논문은 반대로, 모델은 고정된 자산이라고 놓았다. 바꿀 수 있는 건 모델이 받아들이는 조건, 즉 프롬프트라고 봤다. 텍스트 프롬프트가 CLIP에서 이미 중요한 역할을 했다는 사실을 출발점으로 삼되, 그걸 “문장 고치기” 수준이 아니라 “학습 가능한 시각적 프롬프트”로 확장했다.
본질적 차이는 관점이었다. 파인튜닝은 모델 내부 표현을 Task에 맞게 재배치한다. 프롬프트 튜닝은 모델이 이미 가진 표현을 Task에 맞게 “불러오는 경로”를 조정한다. 같은 성능 향상이더라도, 무엇을 변화의 주체로 보는지가 달라졌다고 설명했다.
5. 왜 기존 문제 정의로는 한계가 있었는가
기존 연구들이 깔고 있던 가정은 “Task가 달라지면 모델도 달라져도 된다”는 가정이었다. 연구 실험에서는 자연스러웠다. 하지만 사전학습 모델이 공용 인프라처럼 쓰이기 시작하면서, 그 가정은 상식과 충돌했다.
그 가정이 만든 구조적 한계는 명확했다. Task 수가 늘수록 모델 복사본이 선형으로 늘었다. 업데이트·검증·배포·롤백 같은 MLOps 비용이 누적됐다. 보안이나 라이선스 관점에서도 “기본 모델은 고정하고, 수정분만 관리”하고 싶어지는 상황이 많았다.
성능, 일반화, 확장성 측면에서도 문제가 보였다. 파인튜닝은 데이터가 적으면 쉽게 과적합으로 흔들렸다. 태스크가 많아지면 멀티태스크로 묶거나, 계속학습으로 가야 하는데 그때는 망각과 충돌 문제가 따라왔다. 결국 “적응”을 모델 내부에서만 해결하려는 문제 정의가 확장성의 병목을 만들었다고 느꼈다.
6. 방법 개요 — 문제 정의의 결과물
6.1 전체 접근
이 문제 정의라면 ‘모델을 고정하고, 학습 가능한 프롬프트만 추가한다’는 접근이 나올 수밖에 없었다.
저자들은 CLIP 같은 사전학습 비전-언어 모델을 동결했다. 그리고 입력 이미지 쪽에 작은 학습 가능한 토큰(시각적 프롬프트)을 붙여, 모델이 같은 이미지라도 다른 “조건”으로 해석하게 만들었다.
핵심은 “모델 파라미터를 바꾸지 않고도 태스크 적응이 가능하다”를 실험적으로 설득하는 일이었다. 그래서 방법은 복잡해지기보다, 변경 범위를 프롬프트로 제한하는 쪽으로 정리됐다.

6.2 핵심 구성 요소
시각적 프롬프트 토큰은 왜 필요했는지부터 보였다. 텍스트 프롬프트만으로는 이미지 인코더가 만들어내는 표현을 태스크 쪽으로 충분히 끌어당기기 어렵다고 봤기 때문이다. 이미지 입력에 직접 개입하면, 고정된 인코더의 활성 경로를 더 직접적으로 바꿀 수 있다고 해석했다.
프롬프트의 삽입 위치(대개 입력 혹은 중간 표현에 붙이는 방식)는 “모델을 건드리지 않으면서 영향력을 갖는 지점”을 찾는 문제처럼 보였다. 모델을 업데이트하지 못한다는 제약이 생기면, 작은 변경이 어디에 걸려야 효과가 커지는지가 설계의 중심이 됐다.
학습은 결국 프롬프트 파라미터만 최적화하는 형태가 됐다. 여기서 중요한 건 최적화 기법 자체보다, 학습 대상의 경계를 바꿈으로써 “태스크별로 저장해야 하는 것”이 급격히 줄어든다는 점이었다.

7. 실험 결과를 다시 보는 관점
실험은 단순히 “VPT가 더 높다”를 보여주려는 게 아니라, “파라미터를 거의 안 바꾸고도 이 정도까지 간다”를 보여주도록 설계됐다고 읽혔다. 비교축이 정확도 하나가 아니라, 정확도 대비 튜닝 비용이었다.
그래서 결과를 볼 때도 질문이 바뀌었다. 파인튜닝과 동급인가를 먼저 보기보다, 선형 프로빙이나 고정 백본 대비 얼마나 회복하는지를 보게 됐다. “고정 모델의 한계선”을 프롬프트가 얼마나 밀어 올리는지가 이 논문의 주장과 직결됐기 때문이다.
또 하나는 데이터 규모 변화에서의 안정성이었다. 적은 데이터에서 파인튜닝이 흔들릴 때, 프롬프트 튜닝이 덜 흔들리는지 보는 관점이 생겼다. 이건 성능 비교라기보다, “적응의 주체를 바꾸면 실패 모드도 바뀌는가”를 묻는 실험처럼 보였다.
8. Ablation이 드러내는 핵심 가정
Ablation이 보여준 핵심은 ‘프롬프트가 충분한 표현력을 가지면, 동결된 모델도 Task별로 다른 서브스페이스를 호출할 수 있다’는 가정이었다.
프롬프트 길이(토큰 수)를 줄였을 때 성능이 무너진다면, 이 방법이 “아주 작은 트릭”이 아니라 “프롬프트 자체가 작은 모델 역할”을 한다는 뜻이 됐다.
삽입 위치나 방식에 따라 성능이 달라졌다면, 프롬프트가 아무 데나 붙어서 되는 것이 아니라 모델의 특정 병목을 건드려야 한다는 뜻이 됐다. 즉, “모델은 고정해도 된다”는 주장 뒤에는 “고정 모델 내부에 이미 충분한 일반 목적 표현이 존재한다”는 전제가 숨어 있었다고 느꼈다.
제거했을 때 무너지는 것은 단순 정확도만이 아니었다. Task적응의 대부분을 프롬프트가 떠안고 있다는 해석이 가능해졌다. 이 논문의 문제 정의가 의존하는 핵심 가정은, 사전학습 모델이 이미 광범위한 태스크를 커버할 잠재력을 갖고 있고, 우리는 그 잠재력을 ‘재조합’하기만 하면 된다는 믿음이었다.
9. 여전히 남는 질문
프롬프트 튜닝이 “모델을 안 바꾼다”는 장점을 갖는 만큼, “모델이 원래 갖고 있지 않은 능력”은 어떻게 되는지가 남았다. 사전학습 표현 바깥의 태스크에서는 프롬프트가 할 수 있는 일이 급격히 줄 수 있다고 생각했다. 문제 정의가 강해질수록, 전제 위반 상황이 더 중요해졌다.
또 프롬프트가 작다고 해도 태스크가 수천 개가 되면 결국 프롬프트도 수천 개가 됐다. 저장 단위가 모델에서 프롬프트로 옮겨갔을 뿐, 관리 문제는 다른 형태로 돌아올 수 있다고 느꼈다. 프롬프트 간 공유나 조합이 필요해지는 지점이 후속 질문으로 남았다.
마지막으로 해석 가능성의 질문이 생겼다. 입력에 붙는 토큰이 무엇을 의미하는지, 어떤 시각적 변환을 암묵적으로 수행하는지 설명하기는 여전히 어려웠다. “모델을 고정한다”는 제약이 오히려 프롬프트를 블랙박스화할 위험도 있다고 생각했다.
10. 정리
이 논문을 한 문장으로 요약하면, 대규모 사전학습 비전 모델의 다운스트림 적응을 “가중치 업데이트”가 아니라 “학습 가능한 시각적 프롬프트로 입력 조건을 바꾸는 일”로 재정의한 작업이었다.
이 논문은 ‘파인튜닝이 당연하다’는 전제를 문제로 정의했고, 그 정의는 비전-언어 사전학습 모델 시대에 적응을 “모델 변경”이 아니라 “조건부 사용”으로 바라보는 방식을 바꿨다.