이번 글에서는 제로샷 Image Captioning 모델에 제어요소를 도입한 ConZIC(Controllable Zero-shot IC) 논문리뷰를 진행하겠습니다.
✅ Key Idea
1. 최초의 제로샷 IC에 제어요소를 도입
2. Gibbs sampling과 MLM의 관계를 분석해서 새로운 LM, Gibbs-BERT 제안
3. 이를 CLIP과 결합해서 Controllable Zero-shot IC, ConZIC 개발
1. Introduction
- 이미지 캡셔닝(Image Captioning, IC)은 VL(visual-language) task로 이미지를 묘사하는 문장을 생성하는 것이 목표입니다.
- IC task를 수행하기 위해서 human-annotated 데이터셋을 이용하여 지도학습 supervised fine-tuning을 수행함으로써 좋은 성과를 달성했습니다.
- 하지만 이러한 지도학습 방식들은 훈련데이터에 강하게 의존하기 때문에 훈련데이터의 분포에서 벗어나는 데이터에 대해서는 모델의 성능이 급격하게 저하됩니다.
- 또한 지도학습에 사용되는 고품질의 데이터셋을 구축하는 것은 비용이 많이든다는 단점도 있습니다.
- 최근에 대규모 사전훈련 모델이 초대형 데이터에서 학습한 지식을 통해 downstream task에서도 좋은 성능을 보이면서
- 모델이 훈련데이터로 학습하지 않은 task를 수행할 수 있다는 점에서 제로샷이 딥러닝에서 주목을 받게 되었습니다.
- 이미지 캡셔닝 분야에서도 제로샷의 가능성에 대해 연구되었는데 이에 관한 논문으로는 ZeroCap이 있습니다.
- ZeroCap은 지도학습 방식을 사용하지 않고 대규모 사전학습 모델의 지식을 사용해서 제로샷 캡션을 생성하였습니다.
- ZeroCap은 CLIP에서 얻은 시각-언어 지식과 GPT-2의 언어지식을 결합하여 검색기반 전략을 사용하는 최초이자 유일한 제로샷 이미지 캡션 방법입니다.
- 즉, 거대 pre-trained 모델의 지식을 활용해서 추가적인 지도학습 없이 캡션을 생성할 수 있는 가능성을 보여주었습니다.
- 하지만 ZeroCap에는 다음과 같은 한계점이 존재합니다.
- AR(Auto-Regressive) generation은 left-to-right 방식으로 한 방향으로만 생성되므로 단어가 수정될 수 없습니다. (Not Flexible)
- Generation Time이 오래 걸립니다. (Inefficient)
- ZeroCap은 beam search 방식으로 문장을 생성하는데 이렇게 생성한 여러 후보문장들은 유사한 구문 패턴을 가지고 있다. (Low Diversity)
- 제어가능성(controllability)이 반영되지 않았습니다.
- 그래서 본 논문에서는 이러한 4가지의 한계점을 극복하는 Controllable Zeroshot IC, ConZIC 프레임워크 제안합니다.
- ConZIC은 Gibbs sampling과 MLM 사이의 관계를 분석해서 Gibbs-BERT라는 새로운 LM을 개발하고
- 이 모델을 CLIP과 통합하여 제로샷 IC를 수행할 수 있습니다.
- 또한 task별 Classifier를 추가해서 Controllability까지 갖추도록 하였습니다.
- ConZIC의 contribution은 다음과 같습니다.
- Gibbs-BERT를 사용해서 bidirectional 방식으로 단어를 수정할 수 있습니다. (polishing)
- ZeroCap과 달리 파라미터 업데이트가 없어서 5배 빠른 생성속도를 갖습니다.
- 다양성이 높은 문장을 생성할 수 있습니다.
- 최초의 controllable 제로샷 IC 방식 (length, infilling, styles, and part-of-speech)
2. Related Work
2.1 Supervised Image Captioning
- 전통적인 이미지 캡션 Task에서의 연구는
- CNN 기반의 인코더, RNN/LSTM 기반의 디코더를 사용하여 이미지와 캡션 간의 관계를 모델링하는 방식으로 이루어졌습니다.
- 추가로 object-detector을 이용해서 시각적 주의를 높이고 주요 이미지 영역을 추출하는 방식도 있었으며
- 두 모달리티(이미지-텍스트) 간의 상호작용을 더 활발하게 하기 위해서 어텐션 메커니즘과 그래프 신경망이 도입되기도 했습니다.
- 최근에는 대규모 VLP 모델이 IC를 포함한 다운스트림 작업에서 뛰어난 성능을 보이면서 제로샷과 관련된 연구가 활발하게 이루어지고 있습니다.
- 하지만 이러한 방식은 supervised fine-tuning on human-annotated 데이터셋에 의존한다는 단점이 존재합니다.
2.2 Zero-shot Image Captioning
- 제로샷의 가장 큰 의미는 사전 훈련된 대규모 모델을 활용하여 지도 훈련데이터 없이 task와 관련된 지식을 전달하는데 있습니다.
- 이미지 캡션(IC) 분야에서는 이러한 제로샷 기능에 대해서 잘 연구되지 않았는습니다.
- 그중 IC에서 제로샷 기능에 대한 사전연구는 NOIC, ZeroCap 등이 있는데 NOIC은 본 논문에서 연구하는 바와 다르고 ZeroCap이 유사한데 ZeroCap은 이미 훈련된 GPT-2와 CLIP를 활용하여 제로샷 이미지 캡션을 생성하는 방법이다.
- ZeroCap에서는 각 위치의 생성단계에서 추론단계에 대해 CLIP에 의해 측정된 이미지-텍스트 일치 손실을 최소화해서 컨텍스트 캐시를 업데이트하는 방식으로 학습을 진행합니다.
- 하지만 위에서도 언급했듯이 ZeroCap은 다음과 같은 한계가 존재합니다.
- AR 특성때문에 현재 위치에서의 단어 검색은 왼쪽 정보만 고려 & mode collapse 문제 & Low diversity
- 반복 기울기 업데이트의 시간 비용이 높아 긴 캡션의 경우에는 더 복잡해질 수 있다.
- ZeroCap은 controllable 제로샷 IC 작업에 대해 고려되지 않았음.
2.3 Diversity and Controllability
- 이미지 캡션생성에서 중요한 속성은 다양성(diversity)과 제어 가능성(controllability)입니다.
- 다양성(diversity)는 Mode collapse 문제와 연결됩니다.
- 여기서 Mode collapse 문제는 생성자가 다양한 생성을 하지 못하고 비슷한 생성을 반복하는 현상입니다.
- supervised 방식으로 생성된 캡션은 평균 캡션으로 편향되어서 mode collapse 문제가 발생하는 경향이 있습니다.
- 또한 언어모델의 AR 특성은 유사한 패턴의 구문을 생성해서 구문의 다양성이 낮아지는 현상을 보이고 있습니다.
- 다음은 제어가능성(controllability)입니다.
- 인간이 말을 할 때 특정한 지시가 있으면 그 지시에 따라서 생성을 유동적으로 조절할 수 있습니다. 예를들면 무언가를 말할 때 짧은 문장으로만 대답해줘라는 지시를 통해 생성을 제어할 수 있습니다.
- 이처럼 인간의 제어가능성을 모방하기 위해서 supervised 훈련에 제어신호를 도입해서 자막 생성을 제어하는 작업이 이루어졌습니다.
- 다양한 객관적 신호를 사용하여 길이, 감정, 성격, 품사, 객체 영역 등을 제어하는 것에 대한 작업이 진행되었습니다.
- 하지만 훈련없이 제어신호를 도입하고 제어가능한 제로샷 IC를 구현하는 것에 대한 연구는 아직 없습니다.
3. Method
3.1 Framework of ConZIC
- 본격적으로 ConZIC에 대해서 알아보도록 하겠습니다.
- 제로샷 IC는 이미지 $I$가 주어지면 훈련없이 $n$개의 단어를 포함하는 캡션 ${x}_{<1, n>}$ (n개의 단어로 구성된 문장)을 생성하는 것이 목표입니다.
- 여기에 우리는 제어신호(control signal)도 고려하므로 이미지 $I$와 제어신호 $C$가 주어졌을 때 n개의 단어로 구성된 문장을 생성할 확률 $p({x}{<1,n>}|I, C)$를 최대화하는 ${x}{<1,n>}$를 찾는 것을 최종 목표라고 할 수 있습니다.
- 따라서 각 목적함수의 수식과 이에 대한 의미를 나타내면 다음과 같습니다.
- $p({x}_{<1,n>})$: 자연스러운 문장 생성 유도
- $p(I|{x}_{<1,n>})$:이미지와 높은 유사성을 가지는 문장 생성 유도
- $p(C|{x}_{<1,n>})$: 제어신호에 부합하는 문장 생성 유도
3.2 Sampling-based language model for $p({x}_{<1,n>})$
- 기존 AR 생성방식은 이전까지의 토큰을 고려해서 다음 토큰을 생성하게 됩니다.
- 이를 수식으로 나타내면 다음과 같습니다.
- 하지만 이러한 방식은 error accumulation & low diversity의 이슈가 있고, 제로샷 IC에 이런 순차적인 탐색 순서는 flexible이 부족하다는 한계가 존재합니다.
- 따라서 본 논문에서는 Gibbs Sampling + MLM(Masked Language Model)을 결합한 sampling-based LM 제안합니다.
- Gibbs Sampling에 대해서는 잘 설명되어 있는 블로그가 있어서 링크를 첨부합니다.
- 결국Gibbs Sampling은 조건부확률에서 각 변수를 반복적으로 샘플링해서 공동 데이터 분포 $p({x}_{<1,n>})$에서 샘플을 추출하는 것이라고 할 수 있습니다.
- Gibbs Sampling은 샘플링 초기에는 ${x}_{-i}$에 의존하지만 반복적으로 충분히 많이 뽑게 되면 초기 상태와 관계없이 데이터 분포에 기반한 표본을 추출할 수 있으며
- 샘플링 순서가 자유로워서 low diversity를 발생시키는 mode collapse로부터 자유롭다는 장점을 취할 수 있습니다.
- 본 논문의 저자들은 이러한 Gibbs Sampling의 과정을 MLM(Masked Language Model)의 학습 과정과 연관지었습니다.
- MLM(Masked Language Model)
- MLM은 문장이 주어졌을 때 몇 개의 단어를 [Mask] 처리하고 [Mask] 처리 안 된 단어들을 이용해서 masked word를 예측하게됩니다.
- 즉, 이 과정은 마스크 처리 되지 않은 단어들 ${x}_{-M}$이 주어졌을 때 마스크된 단어 ${x}_{M}$에 대한 확률 $p({x}_{M}|{x}_{-M})$ $p({x}{M}|{x}{-M})$ 조건부 분포를 모델링하는 것이라고 생각할 수 있습니다.
- 본 논문에서는 MLM으로 BERT를 사용하였습니다.
- 따라서 본 논문에서는 $p({x}_{<1,n>})$을 모델링하는 새로운 LM을 Gibbs-BERT라고 칭합니다.
- $p({x}_{<1,n>})$로부터 $x_{<1,n>}$을 샘플링하는 알고리즘은 다음과 같습니다.
- $x_i^{t-1}$=[MASK]로 마스킹 (예측할 위치를 [MASK]로 표시)
- 매 반복마다 BERT의 word distribution으로부터 word 분포를 예측하고 그 분포를 따르는 단어를 샘플링
- [MASK] 대신 샘플링된 값 대입
- $x_i^{t}=x_i^{t-1}$ 로 대체
- 현재 step에서 구한 token은 다음 iteration에 반영됨
- 반복을 통해 Polishing
3.3 Image-text matching network for $p(I|{x}_{<1,n>})$
- ConZIC의 목적함수 중 이미지와 높은 유사성을 갖는 캡션을 생성할 수 있도록 유도하는 $p(I|{x}_{<1,n>})$ 파트에 대해서 살펴보겠습니다.
- 이미지와 높은 유사성을 갖는 캡션을 생성할 수 있도록 하기 위해서 사전 훈련된 CLIP을 사용해서 CLIP matching score를 구하게 됩니다.
- 선택된 후보 문장에 대해 CLIP 유사도를 계산하고 softmax를 취해서 이미지와의 최종적인 CLIP matching score를 구합니다.
- 위의 식에 따라 다른 단어들과 함께 문장을 형성하고 상위 1개의 단어를(최대 확률) $x_i$로 선택합니다.
3.4 Discriminator for control signal $p(C|{x}_{<1, n>})$
- 지금까지는 제어신호가 없는 제로샷 IC에 대한 일반적인 파트에 대한 설명을 진행했습니다.
- 이 섹션에서는 controllable IC를 위해서 제어신호 C를 제로샷 IC에 통합하는 방법에 대해서 살펴보겠습니다.
- $p(C|{x}_{<1, n>})$ 파트는 controllable IC를 위해서 이미지와 주어진 제어신호 C에 대해서 관련된 캡션을 생성할 수 있도록 생성된 캡션과 제어신호 간의 상관관계를 평가하는 부분입니다.
- Gibbs-BERT로 top-K 문장을 선택한 후에 $p(C|{s_k}_{k=1}^{K})$ 모델링을 진행하게 됩니다.
3.5 Overall algorithm
- 지금까지 살펴본 내용을 바탕으로 총 정리해서 살펴본 ConZIC의 전반적인 알고리즘은 다음과 같습니다.
- 초기 캡션은 all [MASK] 토큰으로 구성
- T번의 iter동안 임의의 위치 i에 대해서 Gibbs-BERT로 word distribution을 예측하고 $p(x_i|\bold{x}_{-i}^{t-1})$
- $p(x_i|{x}{-i}^{t-1})$를 이용해서 해당 위치의 top-K 후보단어 선택 ${x{ik}^t}_{k=1}$ ( $p_k^{Bert}$)
- top-K 후보단어를 이용해서 K개의 후보문장 생성
- CLIP, classifier 점수 계산 ($p_k^{Clip}, p_k^{Cls}$)
- $\alpha p_k^{Bert} + \beta p_k^{Clip} + \gamma p_k^{Cls}$가 가장 큰 단어를 선택하고 교체
- 위의 과정을 반복
- $p(C|{x}_{<1, n>})$를 삭제하면 제어신호 없는 표준 제로샷 IC
- 제어신호가 길이일 때는 $p(C|{x}_{<1, n>})$를 사용할 필요 없음
4. Experiments
4.1 Datasets
- MSCOCO 캡션
- SentiCap: 각 이미지 별로 3개의 긍정적 또는 부정적 감성 캡션 레이블
- FlickrStyle 10k: 각 이미지에 사실적, 유머러스, 로맨틱 스타일에 대한 캡션 포함
- SketchyCOCO 캡션
- SkethcyCOCO는 이미지와 라벨분류가 있는 데이터셋이지 IC 데이터셋이 아닌데 “A Drawing of a [CLASS]”를 통해서 캡션 벤치마크를 구성
4.2 Implementation Details
- 모델
- 모든 실험에 대해서 Frozen pre-trained 모델 사용(fine-tuning X)
- 이미지-텍스트 matching: CLIP-ViT-B/32
- LM: BERT-base
- controllable discriminator: 4.4에서 다시 언급
- 하이퍼파라미터
- K, T, α, β는 200, 15, 0.02, 2로 설정
- MSCOCO 캡션과 SketchyCOCO 캡션의 경우 문장 길이 n을 각각 12와 5로 설정
- 스타일화된 IC와 POS 제어 IC의 경우 γ을 5로 설정
- 하드웨어: 단일 RTX3090 GPU
4.3 Evaluation on Accuracy and Diversity
Evaluation Metrics
- Accuracy
- supervised 메트릭: BLEU-4(B-4), MATEO(M), CIDEr(C), SPICE(S), RefCLIPscore(RefCLIP-S)
- unsupervised 메트릭: CLIPScore(CLIP-S)
- Diversity
- Vocab(테스트셋에서 생성된 모든 캡션의 어휘크기), Self-CIDEr(S-C), Div-n
Quantitative Results
- MSCOCO 데이터셋에서 평가한 정량적 결과
- supervised Accuracy 메트릭에서는 제로샷 IC 모델이 Supervised Method보다 뒤쳐짐
- supervised Method들이 MSCOCO에서 학습되어서 domain bias에서 benefit을 받을 수 있다.
(훈련 및 테스트셋이 같은 annotator에 의해 라벨링 되고 비슷한 캡션 스타일을 가지고 있다.) - IC task는 정답이 없기 때문에
- supervised Method들이 MSCOCO에서 학습되어서 domain bias에서 benefit을 받을 수 있다.
- 그 외에는 제로샷 IC모델이 Diversity, Accuracy 측면에서 더 좋은 성능
- SketchyCOCO 캡션 데이터셋에서 평가한 결과
- MSCOCO와 SketchyCOCO간의 도메인 격차 때문에 supervised Accuracy에서 위와 다른 결과를 보임
Qualitative Results
4.4 Evaluation on controllable IC tasks
- 4가지 controllable task에 대해서 고려함
- length, infilling, style, parts-of-speech
- length, infilling → classifier-free
- style, parts-of-speech → rely on classifier
Length
- Length Controlling: 원하는 캡션의 길이를 설정
- 분류기 없이 초기 길이만 설정하면 된다.
- 정성적 결과(MSCOCO)
- 반복단계에 따른 CLIPscore 및 RefCLIPScore의 변화
- iter. 횟수가 증가할수록 점수가 높아짐

- 일반적으로 길이가 긴 문장이 더 많은 세부정보의 이미지를 효과적으로 담고 있음 (CLIPscore가 높아지는 원인)
Infilling
- 단어의 일부가 누락된 human annotation 캡션이 주어지면 이미지와 좌우 context에 맞는 단어를 생성하는 것이 목표

- ZeroCap과 같은 기존 IC 모델은 AR이 왼쪽 context만 기반으로 단어를 생성하기 때문에 이 작업을 수행할 수 없음
- MSCOCO 참조캡션에 동사와 명사를 무작위로 마스킹해서 Infilling을 수행한 정량적결과
- 원본 단어를 ground truth로 간주하지만 다른 단어도 적합할 수 있기 때문에 두 단어사이의 의미론적 유사성을 평가하는 지표인(WSIM, BSIM)도 측정
- ConZIC이 ZeroCap을 큰 차이로 능가
Style
- 특정 언어 스타일(긍정적, 부정적, 낭만적 또는 유머러스한)을 갖는 이미지에 대한 설명을 생성하는 것이 목표
- 각 스타일을 구별하기 위한 사전훈련된 Classifier로 감성제어에는 Senti-wordNet을 사용하고 낭만적-유머 제어는 TextCNN 사용
- SentiCap 데이터셋을 이용해서 ConZIC의 감정제어 성능평가
- 생성된 캡션을 감정 분류기에 공급하여 ConZIC의 정확도를 테스트하고, CLIP-S를 사용하여 이미지와 캡션 사이의 상관 관계를 평가
- 정량적 결과
-
- 정성적 결과
- Flickstyle8k 데이터셋에서의 ConZIC 감정제어 평가

Parts-of-speech(POS)
- 주어진 품사 POS 태그와 일치하는 캡션을 생성하는 것이 목표
- a cat sitting in the bed
- DET NOUN VERB ADP DET NOUN
- “somebody/something doing something at someplace”의 형태로 우리가 보통 이미지를 묘사하기 때문에 품사 태깅도 DET ADJ/NOUN NOUN VERB VERB ADV ADP DET ADJ/NOUN NOUN NOUN 이렇게 사용함
- 높은 Accuracy는 달성했으나, M, C, CLIP-S는 낮아짐(이유: 모든 이미지가 Pos tag 템플릿에 맞는 것은 아니기 때문에)
4.5 Evaluation on generation speed
- ZeroCap과 ConZIC의 문장 생성속도는 대부분 문장길이와 관련이 있었다.
- 샘플링 기반 Gibbs-BERT를 사용했기 때문에 ConZIC이 ZeroCap 보다 5배 빠른 것을 확인할 수 있다.
5. Conclusion and future work
- ConZIC(Controllable Zero-shot Image Captioning)
- MLM과 Gibbs sampling 사이의 관계를 발견해서 새로운 샘플링 기반 Gibbs-BERT 모델개발
- bidirectional attention으로 인해서 flexible한 캡션생성이 가능
- Gibbs-BERT를 CLIP, pre-train discriminator for controlling과 통합해서 제어 가능한 이미지 캡션 생성을 실현
- MLM과 Gibbs sampling 사이의 관계를 발견해서 새로운 샘플링 기반 Gibbs-BERT 모델개발
- 제로샷 이미지 캡션 연구는 초기 단계이며, ConZIC 및 ZeroCap은 이미지의 작은 목표를 무시하는 경향이 있음.
- 작은 목표를 캡처하기 위한 탐지기의 향상과 함께, 제로샷 이미지 캡션에 대한 더 나은 평가 메트릭을 개발하는 것이 필요함.
- 향후 연구에서는 감독된 메트릭보다 제어 가능한 이미지 캡션에 더 적합한 메트릭을 고려하는 것이 중요함.
🤗 Review
본 논문을 읽고 본 논문을 발전시킬 수 있는 연구주제에 대해서 약간 생각해보았습니다.
- 이미지 캡션의 문장구조 다양성을 측정하는 메트릭에 관한 연구 + 데이터셋 구축
- 문장구조의 다양성: 서로 다른 구조를 가진 문장을 얼마나 생성할 수 있는가
- → 생성된 문장들의 품사 태깅을 이용해서 구조의 다양성을 측정
- controllable zero-shot IC 모델을 발전시켜서 CLIP에서 했던 것처럼 웹에서 크롤링한 noisy web 데이터에 캡션을 라벨링하여 IC 평가 데이터셋을 기존 데이터셋보다 대규모로 고퀄리티 구축
- sampling based BERT model의 생성형 언어모델로의 활용가능성에 대한 연구
- 일반적으로 BERT가 양방향을 모두 참조할 수 있어서 텍스트 생성에 적합하지 않았는데 생성형 모델로의 BERT-based LM의 가능성을 엿볼 수 있었습니다.
- GPT-based의 생성형 언어모델이 아니라 BERT-based의 생성형 모델에 대해서 연구
- 추가로 생성한 캡션에 대해서 RLHF 방식을 적용한다면 “이미지 캡셔닝의 개인화”에 대한 연구로 발전시킬 수 있을 것 같다.
- controllable zero-shot IC에서 제어요소의 다양화
- Style Control 부분이 긍정과 부정같은 감정에 한정되어서 제어되는 것이 아쉬웠다.
- 캡션에 특정 감정 톤을 제어하거나 서로 다른 문체(예. 전문적 문체, 일상적 문체, 문학적 문체)도 제어할 수 있는 기능을 추가함으로써 다양한 언어 스타일을 활용한 설명을 생성하는 Controllable Zero-shot IC에 대한 연구진행
긴 글 읽어주셔서 감사합니다.
언제나 잘못된 부분에 대한 피드백과 조언은 환영입니다 :)
추가로 저의 리뷰(?에 더 좋은 생각이 있으면 댓글로 같이 이야기 해봐요 !