[논문리뷰] Optimizing Prompts for Text-to-Image Generation

2026. 1. 13. 11:04논문리뷰

이 글에서는 NeurIPS 2023에서 Microsoft Research가 발표한 논문
Optimizing Prompts for Text-to-Image Generation에 대한 리뷰를 시작해보려고 합니다.

 

발표자료는 제가 논문 세미나를 위해 열심히 만든 자료입니다.

참고만 해주시면 감사하겠습니다.

틀린 부분도 있을 수 있습니다. 부족하지만 열심히 읽고 리뷰한 논문 재밌게 봐주세용.

잘 설계된 prompttext-image 모델이 의도를 더 잘 이해하고 좋은 품질의 결과를 생성할 수 있도록 합니다.

이전의 연구들은 특정 text-to-image 모델에 대한 수동 프롬프트 엔지니어링을 구현하여 프롬프트 엔지니어링을 진행해왔습니다.

하지만 수동으로 프롬프트 엔지니어링을 수행하면 시간이 너무 많이 필요하고 비효율적인 작업입니다.

또한 다양한 모델 버전마다 다 다르게 엔지니어링을 수행해야하는 문제가 있습니다.

 

따라서 저자들은 강화학습을 사용해 사용자 의도와 다양한 모델에 맞는 프롬프트를 자동으로 맞추기 위한 체계적인 방법인 프롬프트 프레임워크를 제안했습니다.

저자들은 이를 prompist라고 이름을 붙였으며 이 promptist의 결과는 아래 사진과 같습니다.


왜 프롬프트 최적화가 필요한가?

잘 설계된 프롬프트(prompt)는 text-to-image 모델이 사용자의 의도를 더 정확히 이해하도록 돕고, 결과적으로 더 높은 품질의 이미지를 생성하게 만듭니다.
하지만 현실에서는 대부분의 사용자 입력이 모델이 미적으로 만족스러운 이미지를 생성하기에는 충분하지 않은 경우가 많습니다. 특히 Stable Diffusion과 같은 모델은 CLIP 텍스트 인코더의 표현 용량이 제한적이기 때문에, 프롬프트의 표현 방식에 따라 결과가 크게 달라집니다.

이러한 이유로 기존 연구들은 특정 text-to-image 모델을 대상으로 수동 프롬프트 엔지니어링을 수행해 왔습니다. 보통 원래 입력 문장에 스타일, 화풍, 디테일을 나타내는 modifier를 덧붙이는 방식입니다.

하지만 이 접근에는 분명한 한계가 있습니다.

  • 프롬프트를 수작업으로 설계하는 데 많은 시간과 노력이 필요하고
  • 모델 버전이 바뀔 때마다 다시 엔지니어링해야 하며
  • 한 모델에 맞춰 설계된 프롬프트가 다른 모델로 잘 전이되지 않는 문제가 존재합니다

즉, 수동 프롬프트 엔지니어링은 비효율적이며 확장성이 떨어지는 방식입니다.


Promptist: 자동 프롬프트 최적화를 위한 프레임워크

이러한 문제의식에서 출발하여, 저자들은 강화학습을 활용한 자동 프롬프트 엔지니어링 프레임워크를 제안합니다. 이 프레임워크는 사용자의 의도를 유지하면서도, 각 text-to-image 모델이 선호하는 프롬프트 형태로 입력을 자동 변환하는 것을 목표로 합니다.

저자들은 이 프레임워크를 Promptist라고 명명합니다.

Promptist의 핵심 아이디어는 다음과 같습니다.

  1. 사전 단계 (Supervised Fine-Tuning)
    • 소량의 수동으로 설계된 고품질 프롬프트 데이터를 사용해
    • 사전 학습된 언어 모델(예: GPT)을 **지도 학습(SFT)**으로 먼저 미세조정합니다
    • 이 모델은 이후 강화학습 단계에서 프롬프트 정책 네트워크의 초기값으로 사용됩니다
  2. 강화학습 단계 (Reinforcement Learning)
    • 모델은 사용자 입력을 기반으로 다양한 후보 프롬프트를 생성하고
    • beam search를 활용해 품질과 다양성을 동시에 고려합니다
    • 생성된 이미지에 대해 정의된 reward 함수를 최대화하도록 학습합니다
  3. Reward 설계
    Reward는 두 가지 요소의 조합으로 정의됩니다.
    • 관련성 점수(Relevance score)
      → 프롬프트 최적화 이후에도 원래 사용자 의도가 얼마나 잘 유지되는지
    • 미적 점수(Aesthetic score)
      → 생성된 이미지가 얼마나 미적으로 만족스러운지

따라서 간단하게 먼저 사용자 input에 대한 prompt를 모델에 맞는 prompt로 적응시키는 general prompt optimization framework에대해 설명드리면 먼저 소량의 수동으로 설계된 prompt collection에 대해 미리 학습된 모델인 GPT와같은 모델을 사용해 supervised finetunig을 진행합니다.

 

finetuning된 모델은 강화학습을 위한 prompt policy network에 초기화에 사용되며

해당 policy모델이 사용자 입력의 최적화 된 프롬프트를 탐색하여 사용자의 입력이 주어지면 모델은 원래 사용자의 prompt의 의도를 유지하면서도 모델이 선호하는 prompt를 자동으로 엔지니어링해서는 방법을 학습하면서 진행이 됩니다.

 

논문 번역 부분:

생성 기반 모델은 언어 모델과 text-to-image 모델을 포함해, 프롬프트를 통해 사용자 지침을 따르도록 설계할 수 있다. 최근 연구들은 프롬프트 디자인이 생성 결과의 품질에 결정적인 영향을 미친다는 점을 반복적으로 보여주고 있다. 즉, 모델이 사용자의 의도를 더 잘 이해하고 높은 품질의 결과를 생성하도록 하려면, 프롬프트를 적절히 조정하는 과정이 필수적이다.

이 문제는 특히 text-to-image 모델에서 더 두드러진다. Stable Diffusion에서 사용하는 CLIP 텍스트 인코더와 같이, 텍스트 인코더의 표현 용량이 상대적으로 제한적이기 때문이다. 그 결과, 일반적인 사용자 입력만으로는 현재의 모델에서 미적으로 만족스러운 이미지를 생성하기에 부족한 경우가 많다.

기존 연구들은 이러한 한계를 극복하기 위해, 특정 text-to-image 모델을 대상으로 수동 프롬프트 엔지니어링을 수행해 왔다. 보통은 원래의 사용자 입력에 스타일이나 디테일을 나타내는 modifier를 추가하는 방식이다. 그러나 수동 프롬프트 엔지니어링은 많은 시간과 노력이 필요하며, 경우에 따라서는 현실적으로 실행하기 어려운 작업이 되기도 한다. 더 큰 문제는, 이렇게 수동으로 설계된 프롬프트가 모델 버전이 달라질 경우 잘 전이되지 않는다는 점이다. 따라서 사용자의 의도와 각 모델이 선호하는 프롬프트 형태를 자동으로 정렬할 수 있는 체계적인 방법이 필요하다.

이 논문에서는 이러한 문제를 해결하기 위해, 강화 학습 기반의 자동 프롬프트 엔지니어링을 위한 프롬프트 적응 프레임워크를 제안한다. 먼저, 소량의 수동으로 설계된 프롬프트 데이터를 활용해, 사전 학습된 언어 모델(예: GPT)을 supervised fine-tuning한다. 이렇게 미세 조정된 모델은 이후 강화 학습 단계에서 프롬프트 정책 네트워크의 초기화 모델로 사용된다.

이후 모델은 사용자 입력에 대해 최적화된 프롬프트를 탐색하도록 학습되며, 생성 품질과 다양성을 동시에 고려하기 위해 beam search가 활용된다. 학습의 목적 함수는 생성된 이미지의 관련성 점수(relevance score)와 미적 점수(aesthetic score)의 조합으로 정의된 reward를 최대화하는 것이다. 관련성 점수는 프롬프트 최적화 이후에도 원래 사용자 의도가 얼마나 잘 유지되는지를 평가하며, 미적 점수는 생성된 이미지가 얼마나 시각적으로 만족스러운지를 반영한다.

저자들은 공개적으로 사용 가능한 Stable Diffusion 모델을 사용해 실험을 수행하였다. 평가에는 자동 reward metric뿐만 아니라 사람의 선호도 평가(human preference rating)도 함께 사용되었다. 실험 결과, 최적화된 프롬프트는 원래의 사용자 입력뿐만 아니라, 인간이 수동으로 설계한 프롬프트보다도 일관되게 더 우수한 성능을 보였다. 특히 사람의 선호도 평가에서도 in-domain과 out-of-domain 프롬프트 모두에서 개선 효과가 관찰되었다. 또한 강화 학습 기반 접근이 supervised fine-tuning만 적용한 경우보다, out-of-domain 사용자 입력에 대해 더욱 효과적이라는 점도 확인되었다.

종합하면, 이 연구는 언어 모델이 사용자 입력을 모델이 선호하는 프롬프트로 자동 변환하는 인터페이스 역할을 수행할 수 있음을 실험적으로 보여준다.

 

논문에서 제안하는 프롬프트 최적화 모델의 이름은 Promptist이며, GPT와 같은 사전학습된 언어 모델(pre-trained language model) 을 기반으로 한다.

Promptist의 핵심 아이디어는 비교적 단순하다.
사람이 직접 잘 만들어둔 프롬프트(prompt engineering example)를 학습 데이터로 사용해,
모델이 “좋은 프롬프트를 자동으로 생성하도록” 만드는 것이다.

이를 위해 저자들은 먼저 다음과 같은 형태의 데이터셋을 수집한다.

  • x: 사용자가 입력한 원본 프롬프트
  • y: 사람이 수동으로 엔지니어링한 고품질 프롬프트

즉, 하나의 입력 프롬프트 x에 대해, 이를 더 정교하게 다듬은 프롬프트 y를 짝(pair)으로 구성한다.

이후 Promptist는 Supervised Fine-Tuning (SFT) 방식으로 학습된다.


학습 과정에서의 목표는 간단하다.
사용자의 입력 프롬프트 x가 주어졌을 때, 모델이 사람이 직접 설계한 프롬프트 y를 최대한 정확하게 생성하도록 하는 것이다.

아래 수식에서 볼 수 있듯이, 손실 함수는모델이 정답 프롬프트 를 생성할 확률을 최대화하도록 정의되며, 결과적으로 SFT loss를 최소화하는 방향으로 파인튜닝이 진행된다.

이 과정을 통해 Promptist는새로운 사용자 프롬프트가 입력되었을 때도 사람이 프롬프트 엔지니어링을 한 것처럼 더 상세하고 효과적인 프롬프트를 자동으로 생성할 수 있게 된다.

 

이전 페이지에서 설명했듯이, Promptist는
사용자의 입력 프롬프트 x가 사람이 직접 엔지니어링한 고품질 프롬프트 y
동일하거나 매우 유사한 표현을 생성하도록 fine-tuning된다.

이때 중요한 문제는 학습에 필요한 다양한 (x, y)데이터 쌍을 어떻게 만들 것인가이다.
이 섹션에서는 논문에서 제안한 데이터 수집 및 생성 방법을 살펴본다.


사람이 만든 프롬프트의 구조

논문에서는 사람들이 작성한 텍스트-투-이미지 프롬프트가
크게 두 가지 구성 요소로 이루어져 있다고 본다.

  1. 주요 내용 (main content)
    • 사용자의 핵심 의도, 즉 “무엇을 그리고 싶은지”
  2. 수식어 (modifiers)
    • 스타일, 분위기, 디테일 등을 설명하는 표현
    • 예: 화풍, 조명, 감정, 품질 관련 표현 등

Promptist의 목표는 이 두 요소가 모두 잘 반영된 최종 프롬프트 y를 생성하는 것이며, 이를 위해 다양한 형태의 입력 x를 인위적으로 만들어낸다.


다양한 입력 프롬프트 x를 만드는 방법

SFT 과정에서 사용할 다양한 x를 만들기 위해, 논문에서는 크롤링된 프롬프트를 target y로 두고 이를 변형하는 방식을 사용한다.

아래 예시에서 빨간 박스로 표시된 문장이 웹에서 수집된 원본 프롬프트(= target )라고 가정하자.

 

1️⃣ 수식어 제거 (Removing modifiers)

첫 번째 방법은 프롬프트에서 수식어를 제거하고 주요 내용만 추출하는 것이다.

이 경우, dieselpunk blue wolf with fuzzy tail 과 같이 핵심 대상만 남긴 문장이 사용자의 원래 입력 x로 사용된다.

 

2️⃣ 일부 수식어 무작위 제거 및 순서 변경

두 번째 방법은 수식어 중 일부를 무작위로 제거하고 남은 단어들의 순서를 섞는 방식이다.

그 결과 입력 프롬프트는 예를 들어 dieselpunk blue wolf with fuzzy tail, dramatic 과 같은 형태가 된다.

이 방식은 현실에서 사용자가 완벽하지 않은 프롬프트를 입력하는 상황을 모사하기 위한 것이다.

 

3️⃣ OpenGPT를 활용한 재구성 (Rephrasing)

세 번째와 네 번째 방법은 OpenGPT를 활용해 프롬프트를 다시 표현하는 방식이다.

  • Rephrasing of main content
    • 주요 내용만을 OpenGPT로 재구성한 프롬프트
  • Rephrasing of target prompt
    • 전체 target 프롬프트 yy를 OpenGPT로 다시 작성한 버전

이 방법을 통해 표현은 다르지만 의미는 유사한 다양한 프롬프트를 생성할 수 있다.

 

프롬프트의 품질을 평가하는 관점은 크게 두 가지로 나뉜다.

  1. 관련성(Relevance)
    • 프롬프트 최적화 이후 생성된 이미지가 원래 사용자가 입력한 프롬프트와 얼마나 잘 부합하는지
  2. 심미성(Aesthetic quality)
    • 생성된 이미지가 얼마나 미적으로 우수한지

이 섹션에서는 먼저 관련성(Relevance)을 어떻게 측정하는지에 대해 설명한다.


관련성(Relevance) 측정 방법

관련성 평가는 “최적화된 프롬프트가 실제로 원래 사용자의 의도를 잘 반영했는가?” 를 정량적으로 측정하는 것을 목표로 한다.

 

① 최적화된 프롬프트로 이미지 생성 (수식 2)

먼저 프롬프트 최적화 모델 Promptist가 생성한 최적화된 프롬프트 를 입력으로 하여 텍스트-투-이미지 모델 GG에서 이미지를 샘플링한다.

  • 입력: 최적화된 프롬프트
  • 출력: 생성된 이미지 i_

논문에서는 이미지 생성 모델 Stable Diffusion을 사용한다.

 

② CLIP 유사도를 이용한 관련성 계산 (수식 3)

다음으로, 원래 사용자의 입력 프롬프트 와 프롬프트 로 생성된 이미지 i_y 사이의 CLIP 유사도 점수를 계산한다.

이 CLIP 점수는 “텍스트 x가 이미지 i_y를 얼마나 잘 설명하는가”를 나타내는 지표로, 생성된 이미지가 원본 입력 프롬프트의 의미를 얼마나 잘 반영했는지를 측정하는 데 사용된다.

 

③ Relevant score 계산 방식

논문에서는 CLIP 유사도 점수를 그대로 사용하지 않고, 다음과 같은 후처리를 거쳐 Relevant score를 정의한다.

  • CLIP 유사도 점수에 20을 곱해 스케일을 확대
  • 기준값 5.6을 설정
  • (20 × CLIP 점수 − 5.6)이
    • 0 이상이면 해당 값을 그대로 사용
    • 0 미만이면 0으로 클리핑(clipping)

이를 통해 입력 프롬프트와 충분히 관련성이 있는 경우만 의미 있는 점수를 갖도록 설계하였다.


Relevant score의 의미

최종적으로 Relevant score는 원래 입력 프롬프트 와 최적화된 프롬프트 를 통해 생성된 이미지 i_y 사이의 CLIP 유사도 점수를 기반으로 한 관련성 지표이다.

실험에서는 를 입력으로 하여 생성된 이미지들에 대해 이 Relevant score의 평균값을 계산함으로써 프롬프트 최적화 전후의 성능을 비교한다.

 

다음으로는 모델이 생성한 이미지가 얼마나 미적으로 우수한지를 평가하는 Aesthetic score 측정 방법에 대해 살펴보자.

Aesthetic score 측정 방식

Aesthetic score는 고정된(frozen) CLIP 모델 위에 linear estimator(선형 회귀 헤드) 를 추가하여 학습된다.

이때 CLIP의 파라미터는 고정한 채, 이미지 임베딩을 입력으로 받아 해당 이미지의 미적 품질을 점수로 예측하는 선형 모델만 학습한다.

학습에 사용된 데이터셋은 인간의 주관적인 미학적 평가를 기반으로 구성된 Aesthetic Visual Analysis 데이터셋이며, 이를 통해 모델이 “사람이 보기에 더 아름다운 이미지”의 기준을 학습하도록 한다.

Aesthetic score 계산 (수식 설명)

아래 수식을 살펴보면, 논문에서는 절대적인 미적 점수 자체보다는 프롬프트 최적화 전후의 변화량에 주목한다. 

구체적으로는,

  • 원본 입력 프롬프트 로 생성된 이미지
  • 최적화된 프롬프트 로 생성된 이미지

각각에 대해 Aesthetic score를 계산한 뒤, 두 점수의 차이(difference) 를 구한다. 이 차이에 대한 기대값(expected value) 을 사용함으로써, 프롬프트 최적화가 평균적으로 이미지의 미적 품질을 얼마나 향상시키는지를 평가한다.


왜 차이를 사용하는가?

이 방식의 장점은 프롬프트 자체나 이미지 샘플링의 랜덤성에 따른 편차를 줄이고, 프롬프트 최적화로 인한 순수한 개선 효과
집중할 수 있다는 점이다.

즉, Aesthetic score는 “이 이미지가 절대적으로 얼마나 예쁜가?” 보다는

“프롬프트 최적화가 미적 품질을 실제로 개선했는가?”

를 평가하기 위한 지표라고 볼 수 있다.

 

이전 섹션에서 정의한 Relevance scoreAesthetic score는 모두 CLIP 모델을 기반으로 계산된다는 공통점을 가진다.

따라서 reward를 계산하는 과정에서 CLIP의 forward pass를 공유할 수 있으며, 두 점수를 각각 계산하더라도 CLIP 인코딩을 중복 수행하지 않고 재사용할 수 있다.
이는 학습 효율 측면에서도 중요한 장점이다.

전체 reward 정의와 KL penalty

최종적으로 Promptist의 학습에서는 Relevance score와 Aesthetic score를 결합한 reward를 사용하며, 여기에 KL(Kullback–Leibler) penalty를 추가해 전체 reward를 정의한다.

KL penalty는 프롬프트 최적화 과정에서 모델이 과도하게 최적화(over-optimization) 되어 비정상적인 프롬프트를 생성하는 문제를 완화하기 위해 도입된다.

KL penalty의 직관적 의미

KL penalty는 정책 모델 π_θ와 사람이 수동으로 SFT한 기준 모델 π_SFT 사이의 차이를 측정한다.

구체적으로,

  • π_θ(y∣x): 강화학습을 통해 업데이트되는 정책 모델이 입력 x에 대해 프롬프트 y를 생성할 확률
  • π_SFT(y∣x): 사람이 엔지니어링한 데이터로 학습된 SFT 기준 모델의 출력 확률

두 확률 분포의 비율이 1에 가까울수록 두 모델은 유사하다고 볼 수 있다.

 

수식에 해당 로그 비율은 두 모델 간의 차이가 얼마나 큰지를 정량적으로 측정하는 역할을 한다.

KL penalty의 역할

KL penalty 항에는 조정 계수 η가 곱해지며, 이 값은 KL penalty가 전체 reward에서 차지하는 비중을 결정한다.

  • η가 클수록 정책 모델은 SFT 모델과 더 유사한 출력을 유지하려고 하고
  • η가 작을수록 reward 최적화에 더 공격적으로 반응하게 된다

즉, KL penalty는

프롬프트 품질을 개선하면서도 사람이 설계한 프롬프트 분포에서 크게 벗어나지 않도록 제한하는 역할을 한다.

 

마지막으로, 논문에서는 프롬프트 최적화 문제를 하나의 텍스트 생성 문제로 보고, 이를 Markov Decision Process (MDP) 로 모델링하여 policy 모델을 학습하는 방식을 사용한다.

이 관점에서 Promptist는 사용자 입력 프롬프트를 시작 상태로 삼아, 이를 점진적으로 변형해 가며 최종적으로 최대의 보상을 얻는 프롬프트를 생성하는 강화학습 문제로 정의된다.

MDP 구성 요소 정의

논문에서 정의한 MDP의 구성 요소는 다음과 같다.

  • State (상태)
    현재까지 생성된 프롬프트 토큰들의 시퀀스 x_1, x_2, \ldots, x_n 즉, 사용자의 입력 프롬프트로부터 시작해 현재 시점까지 만들어진 부분 프롬프트를 상태로 본다.
  • Action (행동)
    현재 상태에서 모델이 선택할 다음 토큰 y_t 즉, 프롬프트를 구성하는 다음 단어(토큰)를 선택하는 행위이다.
  • Policy (정책)
    주어진 상태에서 어떤 단어를 선택할지에 대한 확률 분포
  • Reward (보상)
    프롬프트 전체가 완성된 후 Relevance score, Aesthetic score, 그리고 KL penalty를 결합해 계산된 최종 보상

학습 과정의 직관적 흐름

이 설정에서 agent는 입력 프롬프트 에서 시작해, 매 단계마다 하나의 단어를 선택하며 프롬프트를 확장해 나간다.

프롬프트 생성이 끝나면 앞서 정의한 reward를 기준으로 평가가 이루어지고, policy 모델은 기대 보상을 최대화하도록 업데이트된다.

결과적으로 Promptist는 단순히 문장을 생성하는 것이 아니라,

“이미지 생성에 더 적합한 프롬프트를 생성하도록 보상을 통해 유도된 텍스트 생성 모델”

로 해석할 수 있다.

 

따라서 이 MDP 설정에서  agent의 최종 목표는 누적 기대 보상(expected cumulative reward)을 최대화하는 것이다.

이를 수식으로 표현하면, 각 시간 단계 tt에서 얻는 보상을 할인 계수(discount factor)를 적용해 합산한 형태로 정의된다.


수식 항의 의미

  • 시간 단계 t에서 에이전트가 선택한 action(다음 단어)에 대해 주어지는 reward를 의미한다.
  • 즉, 현재까지 생성된 프롬프트 y와 입력 프롬프트 를 기반으로 해당 선택이 얼마나 좋은지 평가한 값이다.
  • γ^t
    할인 계수(discount factor)로, 미래에 얻는 보상이 현재 보상에 비해 얼마나 중요한지를 조절한다.
  • γ 값이 클수록 미래의 보상이 더 크게 반영되며, 작을수록 즉각적인 보상에 더 집중하게 된다.

 

따라서 아래 수식을 보시면 πθ가 학습될 policy 모델이라 하면 dataset D′={x}에 대한 policy model π_θ 가 선택하는 action이 나오면 누적된 reward 기대값을 최대화하는 방식으로 policy model π_θ 가 선택하는 action

 

따라서 아래 수식을 보면, πθ를 학습할 policy 모델이라고 할 때, 데이터셋 에 포함된 사용자 입력 프롬프트 에 대해 policy 모델 πθ는 각 단계에서 어떤 action(다음 단어)을 선택할지 결정한다.

이때 πθ의 학습 목표는, 자신이 선택한 action들의 시퀀스로부터 얻어지는 누적 reward의 기대값을 최대화하는 것이다.

즉, policy 모델은 reward를 최대화하도록 학습되며, 이를 통해 프롬프트 생성 과정 전반에서 가장 높은 보상을 얻을 수 있는 단어 선택 전략을 학습하게 된다.

 

text to image generation모델인 Stable Diffusion을 사용하여 출력한 결과는 이미지에 보이는 것과 같습니다

보면 사용자의 prompt보다 논문에서 제안한 최적화된 prompt를 사용하여 생성된 이미지가 더욱 좋은 품질의 이미지가 생성된것을 확인할수있습니다.

 

먼저 도메인 내(in-domain) 데이터로 Lexica에서 수집한 프롬프트를 사용하여 네 가지 프롬프트 augmentation 방법을 비교 평가하였다.

각 프롬프트에 대해 reward를 계산하고, 프롬프트 최적화를 거친 결과가 기존 방법들에 비해 얼마나 개선되었는지를 정량적으로 비교한 결과를 표로 제시한다.


비교한 네 가지 프롬프트 생성 방법

실험에서 사용된 네 가지 방법은 앞서 설명한 데이터 생성 방식과 동일하다.

  • MC (Main Content)
    • 주요 내용만을 포함한 프롬프트
  • MCM (Main Content + Modifiers Mix)
    • 일부 수식어를 무작위로 제거하고 남은 텍스트의 순서를 섞어 만든 프롬프트
  • RMC (Rephrasing of Main Content)
    • 주요 내용을 OpenGPT로 재구성한 프롬프트
  • RTP (Rephrasing of Target Prompt)
    • 전체 target 프롬프트를 OpenGPT로 재구성한 프롬프트

이 네 가지 방법으로 생성된 프롬프트를 입력으로 사용해 프롬프트 최적화 전후의 reward를 비교하였다.


실험 결과 분석

실험 결과, 모든 경우에서 프롬프트 최적화를 거친 프롬프트가 기존 방법 대비 더 높은 reward 값을 보였다. 특히 도메인 내 데이터에서는 최적화된 프롬프트가 기존 방법들보다 일관되게 우수한 성능을 나타냈으며, 그중에서도 재구성 기반 방법(RMC, RTP) 에서
개선 효과가 더욱 두드러졌다. 이는 단순히 수식어를 제거하거나 섞는 것보다, 의미를 유지한 채 표현을 재구성한 프롬프트가 강화학습 기반 최적화의 효과를 더 잘 이끌어낼 수 있음을 보여준다.

 

또한 도메인 외(out-of-domain) 데이터에 대해서도 최적화된 프롬프트는 안정적인 성능 향상을 보였으며, 이를 통해 Promptist의 강화학습 방식이 특정 도메인에 과적합되지 않고 다양한 입력 도메인에 대해 잘 일반화된다는 점을 확인할 수 있다.

 

표 2(Table 2) 에서 확인할 수 있듯이, 강화 학습을 적용한 프롬프트 최적화는

  • Lexica에서 평균 31%
  • DiffusionDB에서 평균 24%
  • COCO 데이터(도메인 외 데이터)에서 평균 71%

의 reward 향상을 가져왔다.


도메인 내 vs 도메인 외 성능 차이

도메인 내(in-domain) 프롬프트는 지도 학습 단계(Stage 1)에서 사용된 데이터와 매우 유사하기 때문에, 이미 SFT를 통해
일정 수준 이상 reward가 최적화된 상태이다.

그 결과, 강화 학습을 추가로 적용하더라도 개선 폭은 상대적으로 제한적으로 나타난다.

반면, COCO 캡션과 같은 도메인 외(out-of-domain) 데이터는 Stage 1 학습 과정에서 사용되지 않았다.
이러한 경우 policy 모델은 강화 학습을 통해 새로운 도메인에 적응하는 방법 자체를 학습하게 되며, 그 결과 훨씬 큰 성능 향상을 보이게 된다.


어려운 프롬프트에서의 개선 효과

또한 실험 결과를 자세히 살펴보면, SFT 단계에서 충분히 최적화되지 못했던 프롬프트일수록 강화 학습으로 인한 성능 향상이 더욱 두드러졌다. 특히 rephrasings of target prompt (RTP) 설정에서는 무려 127%에 달하는 reward 향상이 관측되었으며, 이는 강화 학습이 초기 품질이 낮거나 어려운 입력에 대해 특히 효과적임을 보여준다.

 

개인적인 생각 및 결론

제가 발표한 논문은 text-to-image 모델에 한정된 프레임워크를 다루고 있습니다.
즉, Promptist는 텍스트 프롬프트를 입력으로 받아 이미지를 생성하는 모델을 대상으로 설계된 방법입니다.

하지만 이 접근 방식은 프롬프트 기반으로 동작하는 다른 생성 모델에도 충분히 확장 가능하지 않을까 하는 생각이 들었습니다.
예를 들어,

  • text-to-video
  • audio-to-image
  • 혹은 그 외의 멀티모달 생성 모델

과 같은 경우에도, “더 나은 프롬프트를 생성한다”는 관점에서는 유사한 강화학습 프레임워크를 적용할 수 있을 것으로 보입니다.

다만 이러한 확장에는 명확한 한계도 존재합니다. 
Promptist를 학습시키기 위해서는 사람이 엔지니어링한 고품질 프롬프트 데이터가 필요한데, 현재로서는 audio–image나 text–video와 같은 도메인에서 충분한 규모의 데이터셋을 확보하기가 쉽지 않습니다.

이로 인해 실제로 해당 도메인에 Promptist를 적용할 경우, 학습이 안정적으로 이루어지지 않거나 기대만큼의 성능 향상을 얻기 어려울 가능성이 있습니다.

결론적으로, Promptist는 text-to-image 영역에서는 효과적인 프롬프트 최적화 프레임워크를 제시하지만, 다른 멀티모달 생성 모델로의 확장을 위해서는 데이터셋 구축이라는 선행 과제가 함께 해결되어야 할 것으로 보입니다.