본문 바로가기
  • 책상 밖 세상을 경험할 수 있는 Playground를 제공하고, 수동적 학습에서 창조의 삶으로의 전환을 위한 새로운 라이프 스타일을 제시합니다.
Miscellaneous

[2026-1] 이루가 - InstructPix2Pix: Learning to Follow Image Editing Instructions

by wnfladl 2026. 6. 12.

논문링크: https://arxiv.org/abs/2211.09800

 

InstructPix2Pix: Learning to Follow Image Editing Instructions

We propose a method for editing images from human instructions: given an input image and a written instruction that tells the model what to do, our model follows these instructions to edit the image. To obtain training data for this problem, we combine the

arxiv.org

 

Abstract

  • 목표
    • 입력 이미지와 사용자의 자연어 지시를 바탕으로 이미지를 편집하는 방법 제안
    • 모델은 “무엇을 변경할지” 설명하는 문장을 이해하고 해당 내용을 이미지에 반영
  • 학습 데이터 생성
    • 대규모 이미지 편집 데이터셋을 자동으로 구축
    • GPT-3를 활용해 이미지 편집 지시문 생성
    • Stable Diffusion을 활용해 지시문에 대응하는 편집 이미지 생성
  • 제안 모델: InstructPix2Pix
    • 생성된 데이터셋으로 학습된 conditional diffusion model
    • 실제 이미지와 사용자가 직접 작성한 다양한 지시문에도 일반화 가능
  • 주요 장점
    • 이미지마다 별도의 fine-tuning이 필요하지 않음
    • 이미지 inversion 과정이 필요하지 않음
    • 한 번의 forward pass로 편집을 수행하여 수 초 내에 빠른 이미지 편집 가능
  • 결과
    • 다양한 입력 이미지와 편집 지시문에 대해 효과적인 이미지 편집 결과를 보여줌

 

1. Introduction

연구 목표

  • 사용자가 작성한 자연어 지시문을 이해하고 이미지를 편집하는 생성 모델을 제안
  • 입력 요소
    • 원본 이미지
    • 이미지를 어떻게 수정할지 설명하는 텍스트 지시문
  • 출력 요소
    • 사용자의 지시가 반영된 편집 이미지

기존 문제점

  • 자연어 기반 이미지 편집 모델을 학습하려면 다음 요소가 쌍으로 구성된 데이터가 필요함
    • 입력 이미지
    • 편집 지시문
    • 편집 결과 이미지
  • 이러한 paired training data를 대규모로 직접 수집하는 것은 어려움

학습 데이터 생성 방법

  • 서로 다른 modality에 특화된 두 개의 대규모 사전학습 모델을 결합
    • GPT-3: 언어와 이미지 편집 지시문에 관한 지식 제공
    • Stable Diffusion: 텍스트에 대응하는 이미지 생성
  • 두 모델의 상호보완적인 지식을 활용해 이미지 편집을 위한 paired dataset을 자동 생성
  • 언어와 이미지를 결합해야 하는 multimodal task의 학습 데이터를 구축

모델 학습 및 작동 방식

  • 생성된 paired dataset을 사용해 conditional diffusion model 학습
  • 모델은 다음 정보를 조건으로 편집 이미지를 생성
    • 입력 이미지
    • 텍스트 편집 지시문
  • 추가적인 복잡한 과정 없이 forward pass에서 직접 이미지 편집 수행

추가로 필요하지 않은 요소

  • 별도의 예시 이미지
  • 입력 및 출력 이미지에 대한 상세한 전체 설명
  • 이미지별 fine-tuning
  • 각 이미지에 대한 별도의 최적화 과정

Zero-shot Generalization

  • 학습 데이터는 지시문과 이미지가 모두 생성된 synthetic examples로 구성
  • 합성 데이터만으로 학습했음에도 다음 대상에 zero-shot으로 일반화 가능
    • 임의의 실제 이미지
    • 사람이 자연스럽게 작성한 편집 지시문

지원하는 이미지 편집 유형

  • 이미지 속 객체 교체
  • 이미지 스타일 변경
  • 배경이나 장소 변경
  • 예술적 표현 매체 변경
  • 그 외 다양한 자연어 기반 이미지 편집

핵심 의의

  • 복잡한 이미지 편집 과정을 자연어 지시만으로 수행할 수 있음
  • 대규모 실제 편집 데이터 없이도 사전학습 모델을 활용해 학습 데이터를 생성
  • 직관적이고 빠른 범용 이미지 편집 방법을 제공

2. Prior Work

2.1 대규모 사전학습 모델의 결합

  • 최근에는 하나의 모델만으로 해결하기 어려운 multimodal task를 위해 여러 사전학습 모델을 결합하는 연구가 진행됨
  • 대표적인 multimodal task
    • Image Captioning
    • Visual Question Answering
  • 이러한 작업은 언어 모델의 지식과 이미지-텍스트 모델의 지식을 동시에 필요로 함
  • 기존의 사전학습 모델 결합 방법
    • 새로운 task에 대한 joint fine-tuning
    • Prompt를 통한 모델 간 통신
    • Energy-based model의 확률분포 결합
    • 한 모델의 feedback을 이용해 다른 모델을 guide
    • 반복적인 최적화 수행
  • 본 연구 역시 두 모델의 상호보완적인 능력을 활용
    • GPT-3: 언어 및 편집 지시문 생성
    • Stable Diffusion: 이미지 생성
  • 기존 연구와의 차이점
    • 두 모델을 직접 결합해 최종 task를 수행하는 것이 아님
    • 두 모델을 이용해 paired multimodal training data를 생성
    • 생성된 데이터를 별도의 이미지 편집 모델 학습에 사용

2.2 Diffusion 기반 생성 모델

  • Diffusion model의 발전으로 고품질 이미지 생성이 가능해짐
  • Diffusion model은 이미지뿐 아니라 다양한 modality에 활용되고 있음
    • Video
    • Audio
    • Text
    • Neural network parameters
  • 최근의 text-to-image diffusion model은 임의의 텍스트 caption을 바탕으로 현실적인 이미지를 생성할 수 있음
  • 대표적인 text-to-image diffusion model
    • Stable Diffusion
    • DALL-E 계열 모델
    • 기타 대규모 diffusion 기반 이미지 생성 모델

2.3 이미지 편집을 위한 생성 모델

기존 이미지 편집 방식

  • 초기 이미지 편집 모델은 주로 하나의 특정 task에 집중
    • Style Transfer
    • 서로 다른 image domain 간 translation
  • 많은 연구가 이미지를 latent space로 변환한 뒤 편집을 수행
    • 이미지를 latent space로 inversion
    • Encoder를 이용해 latent vector로 변환
    • StyleGAN 등의 latent vector를 조작하여 이미지 수정
  • 최근에는 CLIP embedding을 이용해 텍스트로 이미지 편집을 guide하는 연구가 등장

Text2Live

  • CLIP similarity objective를 최대화하도록 이미지에 추가할 layer를 최적화하는 방식
  • 본 연구에서는 Text2Live를 비교 대상으로 사용

2.4 Text-to-Image Diffusion Model을 이용한 이미지 편집

  • 최근에는 사전학습된 text-to-image diffusion model을 이미지 편집에 활용하는 연구가 증가

기존 방식의 문제점

  • 일부 모델은 자체적으로 이미지 편집 기능을 제공
    • 이미지 variation 생성
    • 특정 영역 inpainting
    • CLIP embedding 조작
  • 그러나 text-to-image model을 이용한 정교한 편집은 어려움
    • 비슷한 prompt를 입력해도 비슷한 이미지가 생성된다는 보장이 없음
    • 편집하려는 부분뿐 아니라 이미지 전체가 변경될 수 있음
    • 원본 이미지의 구조나 identity를 유지하기 어려움

Prompt-to-Prompt

  • 유사한 text prompt로 생성되는 이미지의 attention을 조정하여 이미지 간 일관성을 유지
  • 생성된 이미지에서 특정 부분만 선택적으로 수정할 수 있도록 함
  • 본 연구에서는 training data 생성 과정에 Prompt-to-Prompt를 활용

SDEdit

  • 실제 입력 이미지에 noise를 추가한 뒤 새로운 target prompt를 조건으로 denoising
  • 기존 이미지의 구조를 일부 유지하면서 prompt에 맞게 이미지를 변경
  • 본 연구에서는 SDEdit을 baseline으로 비교

기타 이미지 편집 연구

  • 사용자가 mask를 직접 그린 뒤 해당 영역을 caption에 맞게 inpainting
  • 소수의 이미지로 특정 객체나 concept을 학습한 뒤 새로운 이미지 생성
  • 하나의 이미지를 inversion 및 fine-tuning하고 새로운 text description으로 재생성

2.5 기존 이미지 편집 방법과 본 연구의 차이

  • 기존 방법들은 다음과 같은 추가 정보나 과정이 필요한 경우가 많음
    • 사용자가 직접 그린 mask
    • 추가적인 예시 이미지
    • 입력 또는 출력 이미지 전체를 설명하는 caption
    • 이미지별 inversion
    • 이미지별 fine-tuning 또는 optimization
  • 본 연구의 모델은 다음 두 가지 입력만 사용
    • 하나의 입력 이미지
    • 해당 이미지를 어떻게 변경할지 설명하는 instruction
  • 편집을 한 번의 forward pass에서 직접 수행
  • 이미지별 inversion이나 fine-tuning이 필요하지 않음

2.6 Instruction Following 기반 이미지 편집

  • 기존 text-based image editing 방법은 주로 다음과 같은 텍스트를 입력으로 사용
    • Object label
    • Image caption
    • 입력 이미지의 전체 description
    • 출력 이미지의 전체 description
  • 본 연구는 이미지에 무엇이 있어야 하는지를 설명하는 대신, 모델이 수행해야 할 편집 행동을 instruction 형태로 입력

Instruction 방식의 장점

  • 사용자가 자연어로 모델에게 원하는 행동을 직접 전달할 수 있음
  • 입력과 출력 이미지에서 유지되어야 하는 시각적 내용을 다시 설명할 필요가 없음
  • 추가적인 예시 이미지가 필요하지 않음
  • 특정 객체나 시각적 속성만 정확하게 지정하여 변경 가능
  • 표현력이 높고 구체적이며 직관적으로 작성 가능

연구적 배경

  • 대규모 언어 모델이 인간의 자연어 지시를 더 잘 따르도록 학습하는 instruction-following 연구에서 영감을 받음
  • 언어 분야의 instruction following 개념을 이미지 편집 task에 적용

2.7 생성 모델을 이용한 Training Data 생성

  • Deep learning model은 일반적으로 대량의 학습 데이터를 필요로 함
  • 인터넷에는 많은 데이터가 존재하지만 특정 task에 필요한 supervised format으로 제공되지는 않음
    • 특히 서로 다른 modality가 연결된 paired data는 수집하기 어려움
  • 생성 모델의 성능이 발전하면서 생성 모델을 저렴하고 대량으로 확보할 수 있는 학습 데이터의 출처로 사용하는 연구가 증가
  • 본 연구의 접근
    • 별도로 제공되는 두 개의 off-the-shelf generative model 활용
      • Language model
      • Text-to-image model
    • 두 모델로 이미지 편집용 합성 데이터를 생성
    • 생성한 paired dataset으로 최종 이미지 편집 모델을 학습

핵심 차별점

  • GPT-3와 Stable Diffusion을 직접 편집 모델로 사용하는 것이 아니라 학습 데이터 생성기로 활용
  • 자연어 caption이 아닌 편집 instruction을 입력으로 사용
  • 실제 paired editing dataset 없이 합성 데이터만으로 모델 학습
  • Mask, 추가 이미지, inversion, 이미지별 fine-tuning 없이 직접 편집 수행

3. Method

  • Instruction-based image editing을 supervised learning problem으로 정의
  • 전체 과정은 두 단계로 구성됨
    1. 편집 전·후 이미지와 텍스트 편집 지시문으로 이루어진 paired training dataset 생성
    2. 생성된 데이터셋으로 image editing diffusion model 학습
  • 모델은 합성 이미지와 생성된 편집 지시문만으로 학습됨
  • 그럼에도 실제 이미지와 사람이 작성한 임의의 자연어 지시문에 일반화 가능

3.1 Multimodal Training Dataset 생성

  • 서로 다른 modality를 처리하는 두 개의 대규모 사전학습 모델을 결합
    • GPT-3: 편집 지시문과 편집 전·후 caption 생성
    • Stable Diffusion: caption을 이미지로 변환
  • 최종적으로 다음 세 요소가 연결된 multimodal training data를 생성
    • 편집 전 이미지
    • 텍스트 편집 지시문
    • 편집 후 이미지

데이터 생성 과정

  1. GPT-3를 fine-tuning하여 다음 텍스트 triplet 생성
    • 입력 이미지 caption
    • 편집 instruction
    • 편집 후 이미지 caption
  2. 편집 전·후 caption을 text-to-image model에 입력
    • 편집 전 이미지 생성
    • 편집 후 이미지 생성

3.1.1 Instruction과 Paired Caption 생성

텍스트 영역에서의 데이터 생성

  • 먼저 이미지 생성 없이 text domain에서만 작업
  • 입력 이미지 caption을 GPT-3에 제공하면 다음 두 요소를 생성
    • 이미지에 적용할 편집 instruction
    • 편집 결과를 설명하는 output caption

생성 예시

  • Input caption
    • photograph of a girl riding a horse
  • Edit instruction
    • have her ride a dragon
  • Output caption
    • photograph of a girl riding a dragon
  • 이 방식은 편집 지시문과 실제 caption 변화 사이의 대응 관계를 유지하면서 대규모의 다양한 편집 데이터를 생성할 수 있음

GPT-3 Fine-tuning Dataset

  • GPT-3를 학습하기 위해 사람이 직접 작성한 소규모 editing triplet dataset 구축
  • 각 triplet은 다음으로 구성
    1. Input caption
    2. Edit instruction
    3. Output caption
  • **LAION-Aesthetics V2 6.5+**에서 입력 caption 700개를 추출
  • 각 caption에 대해 사람이 직접 다음 요소 작성
    • 편집 지시문
    • 편집 후 caption
  • GPT-3 Davinci 모델 사용
  • 기본 학습 parameter를 사용하여 1 epoch fine-tuning

GPT-3 생성 결과

  • GPT-3의 방대한 사전학습 지식과 일반화 능력을 활용
  • Fine-tuning된 모델은 다음 특성을 가진 데이터를 생성
    • 창의적이면서도 합리적인 편집 instruction
    • Instruction이 적절하게 반영된 output caption

대규모 Corpus 생성

  • LAION-Aesthetics의 실제 이미지 caption을 input caption으로 사용
  • 중복 caption 또는 중복 image URL이 포함된 sample은 제거
  • Fine-tuning된 GPT-3를 사용해 대규모 instruction과 output caption 생성
  • 최종 생성된 instruction-caption corpus
    • 454,445개 예시

LAION을 선택한 이유

  • 매우 큰 데이터셋 규모
  • 다양한 콘텐츠 포함
  • 고유명사와 대중문화 관련 표현 포함
  • 여러 이미지 medium 포함
    • Photograph
    • Painting
    • Digital artwork

LAION의 한계와 대응

  • 데이터가 noisy함
  • 의미가 없거나 이미지를 충분히 설명하지 못하는 caption이 포함됨
  • 이러한 문제는 다음 방법을 통해 완화
    • Dataset filtering
    • Classifier-free guidance

3.1.2 Paired Caption으로 Paired Image 생성

  • 편집 전·후 이미지를 설명하는 caption pair를 pretrained text-to-image model에 입력
  • 각 caption에 대응하는 두 이미지를 생성
    • 편집 전 이미지
    • 편집 후 이미지

문제점 - 이미지 일관성 부족

  • 일반적인 text-to-image model은 비슷한 prompt를 사용하더라도 유사한 이미지를 생성한다는 보장이 없음
  • 예시
    • a picture of a cat
    • a picture of a black cat
  • 두 prompt의 차이는 작지만, 생성된 이미지에서는 다음 요소가 모두 달라질 수 있음
    • 고양이의 외형
    • 자세
    • 배경
    • 이미지 구도
  • 이러한 결과는 이미지 편집 학습에 적합하지 않음
    • 모델은 원본 이미지를 일부 수정하는 것이 아니라 완전히 다른 이미지를 생성하는 방법을 학습할 수 있음

Prompt-to-Prompt 활용

  • 편집 전·후 이미지의 일관성을 유지하기 위해 Prompt-to-Prompt 사용
  • Prompt-to-Prompt는 text-to-image diffusion model의 여러 생성 결과가 서로 유사하도록 유도
  • 일부 denoising step에서 두 이미지가 동일한 cross-attention weight를 공유하도록 함
  • 이를 통해 원본 이미지의 구조와 내용은 유지하면서 특정 요소만 변경할 수 있음

편집마다 필요한 변화량의 차이

  • 모든 편집이 동일한 수준의 이미지 유사성을 요구하는 것은 아님
  • 작은 편집
    • 색상 변경
    • 재질 변경
    • 특정 속성 추가
    • 편집 전·후 이미지가 높은 유사성을 유지해야 함
  • 큰 편집
    • 객체 위치 이동
    • 객체를 다른 형태의 객체로 교체
    • 이미지의 전체적인 구조 변경
    • 편집 전·후 이미지에 더 큰 차이가 필요함

Prompt-to-Prompt Parameter (p)

  • Prompt-to-Prompt는 두 이미지의 유사성을 조절하는 parameter (p)를 제공
  • (p)는 두 이미지가 attention weight를 공유하는 denoising step의 비율을 의미
  • 높은 (p)
    • 더 많은 denoising step에서 attention 공유
    • 편집 전·후 이미지의 유사성이 높아짐
  • 낮은 (p)
    • attention을 공유하는 step 감소
    • 이미지의 구조나 내용이 더 크게 변경될 수 있음
  • 문제점
    • Caption과 instruction만으로 각 편집에 적합한 (p) 값을 결정하기 어려움

다양한 Candidate Image Pair 생성

  • 각 caption pair마다 100개의 image pair 생성
  • 각 image pair에 서로 다른 (p) 값을 무작위로 적용
  • (p)는 다음 uniform distribution에서 sampling
    • (p \sim U(0.1, 0.9))
  • 이를 통해 적은 변화부터 큰 변화까지 다양한 수준의 image pair 확보

CLIP 기반 Filtering

  • 생성된 100개 candidate 중 적절한 image pair를 선택하기 위해 CLIP 기반 metric 사용
  • 사용 metric
    • Directional similarity in CLIP space

Directional Similarity의 역할

  • Caption에서 발생한 의미 변화와 이미지에서 발생한 시각적 변화가 일치하는지 측정
  • 비교 대상
    • Input caption → Output caption의 변화 방향
    • Input image → Output image의 변화 방향
  • 두 변화 방향이 CLIP embedding space에서 유사할수록 instruction이 이미지에 올바르게 반영된 것으로 판단

Filtering의 효과

  • 편집 instruction과 이미지 변화의 일관성 향상
  • Image pair의 품질 향상
  • 다양한 변화 수준의 image pair 확보
  • Prompt-to-Prompt의 실패 사례 제거
  • Stable Diffusion의 부적절한 생성 결과 제거
  • 전체 데이터 생성 과정의 안정성과 robustness 향상

3.2 InstructPix2Pix

  • 생성한 paired training data를 사용해 자연어 지시문 기반 이미지 편집 diffusion model을 학습
  • 모델의 기반 구조로 대규모 text-to-image latent diffusion model인 Stable Diffusion을 사용
  • 모델의 입력
    • Noise가 추가된 이미지 latent: z_t
    • 원본 이미지 조건: c_I
    • 텍스트 편집 지시문 조건: c_T
  • 모델의 출력
    • 입력 이미지와 편집 지시문을 반영한 편집 이미지

Diffusion Model의 기본 원리

  • Diffusion model은 noise가 포함된 데이터에서 점진적으로 noise를 제거하는 denoising process를 학습
  • 여러 단계의 denoising autoencoder를 통해 실제 데이터 분포에 가까운 sample을 생성
  • 모델은 noisy data가 실제 데이터 분포의 높은 밀도 영역으로 이동해야 하는 방향인 score를 추정

Latent Diffusion

  • 일반적인 diffusion model은 pixel space에서 작동하기 때문에 계산량이 큼
  • Latent Diffusion은 pretrained Variational Autoencoder의 latent space에서 diffusion을 수행하여 계산 효율성과 이미지 생성 품질을 향상
  • Variational Autoencoder 구성
    • Encoder E: 이미지를 latent representation으로 변환
    • Decoder D: latent representation을 이미지로 복원
  • 입력 이미지 x는 encoder를 통해 latent z로 변환
z = E(x)
  • Diffusion process에서는 timestep t가 증가할수록 latent z에 noise를 추가하여 noisy latent z_t를 생성

InstructPix2Pix의 학습 목표

  • 모델 ε_θ는 noisy latent에 추가된 실제 noise ε을 예측
  • Noise 예측에 사용되는 정보
    • Noisy latent: z_t
    • Diffusion timestep: t
    • 원본 이미지 latent: E(c_I)
    • 텍스트 편집 지시문: c_T
  • 학습 objective
L = E[ || ε - ε_θ(z_t, t, E(c_I), c_T) ||²₂ ]
  • 기호의 의미
    • ε: latent에 실제로 추가된 noise
    • ε_θ: 모델이 예측한 noise
    • || · ||²₂: 두 값 사이의 squared L2 distance
    • E[ · ]: 전체 학습 sample에 대한 expectation
  • 실제로 추가된 noise와 모델이 예측한 noise 사이의 mean squared error를 최소화
  • 이를 통해 모델은 원본 이미지와 텍스트 편집 지시문을 모두 고려하여 denoising하는 방법을 학습

Stable Diffusion Fine-tuning

  • Image translation task에서는 모델을 처음부터 학습하는 것보다 pretrained image diffusion model을 fine-tuning하는 것이 더 효과적
  • 특히 paired training data가 제한적인 경우 pretrained model의 활용이 중요
  • InstructPix2Pix는 pretrained Stable Diffusion checkpoint로 모델 weight를 초기화
  • 이를 통해 Stable Diffusion이 이미 학습한 대규모 text-to-image 생성 능력을 활용

원본 이미지 Conditioning 추가

  • 기존 Stable Diffusion은 주로 text condition을 입력받아 이미지를 생성
  • InstructPix2Pix는 원본 이미지도 조건으로 입력받아야 하므로 모델의 입력 구조를 수정
  • 원본 이미지 condition c_I를 VAE encoder로 변환
E(c_I)
  • Noisy latent z_t와 원본 이미지 latent E(c_I)를 channel 방향으로 연결
Input = concat(z_t, E(c_I))
  • 이를 처리하기 위해 Stable Diffusion의 첫 번째 convolutional layer에 추가 input channel을 생성

Weight 초기화

  • 기존 Stable Diffusion과 동일한 부분
    • Pretrained checkpoint의 weight를 그대로 사용
  • 새롭게 추가된 image-conditioning channel
    • Weight를 0으로 초기화
  • 이러한 초기화 방식은 Stable Diffusion의 기존 생성 능력을 유지하면서 새로운 image condition을 안정적으로 학습하도록 도움

Text Conditioning 변경

  • Stable Diffusion의 기존 text-conditioning mechanism은 이미지 전체를 설명하는 caption을 입력받도록 설계됨
  • InstructPix2Pix에서는 동일한 text-conditioning mechanism을 사용하되 caption 대신 **텍스트 편집 지시문 c_T**를 입력
  • 즉, 모델은 결과 이미지 전체에 대한 설명을 입력받는 것이 아니라 원본 이미지에 수행해야 할 편집 행동을 전달받음

3.2.1 두 가지 Condition을 위한 Classifier-Free Guidance

Classifier-Free Guidance란?

  • Diffusion model에서 생성 결과의 품질과 다양성 사이의 균형을 조절하는 방법
  • Class-conditional 또는 text-conditional image generation에서 널리 사용됨
  • 주요 효과
    • 생성 이미지의 시각적 품질 향상
    • 생성 결과가 주어진 condition에 더 잘 대응하도록 유도
    • Guidance scale을 이용해 condition 반영 강도를 조절

Conditional 및 Unconditional Denoising

  • 학습 과정에서 일부 sample의 condition을 고정된 null value ∅로 대체
  • 이를 통해 하나의 모델이 두 종류의 denoising을 모두 학습
    • Conditional denoising
    • Unconditional denoising
  • 추론 단계에서는 conditional prediction과 unconditional prediction을 결합
ε̃_θ(z_t, c)
= ε_θ(z_t, ∅)
+ s × [ε_θ(z_t, c) - ε_θ(z_t, ∅)]
  • 각 항의 의미
    • ε_θ(z_t, ∅): condition이 없는 unconditional prediction
    • ε_θ(z_t, c): condition이 주어진 conditional prediction
    • s: guidance scale
    • ε̃_θ: classifier-free guidance가 적용된 최종 noise prediction
  • s가 증가할수록 생성 결과가 condition을 더 강하게 반영
  • 다만 guidance scale이 지나치게 크면 다양성이 감소하거나 이미지 품질이 저하될 수 있음

InstructPix2Pix의 두 가지 Conditioning

  • 일반적인 diffusion model과 달리 InstructPix2Pix는 두 종류의 condition을 사용
    • 원본 이미지 condition: c_I
    • 텍스트 편집 지시문 condition: c_T
  • 모델의 score network
ε_θ(z_t, c_I, c_T)
  • 모델은 condition의 조합에 따라 다음과 같은 denoising을 수행할 수 있도록 학습
    • 이미지와 텍스트 condition 모두 사용
    • 이미지만 사용
    • 텍스트만 사용
    • 두 condition 모두 사용하지 않음

Condition Dropout

  • 학습 과정에서 이미지 condition과 텍스트 condition을 일정 확률로 null value로 설정
  • 전체 training example 중
    • 5%: 이미지 condition만 제거
      • c_I = ∅_I
    • 5%: 텍스트 condition만 제거
      • c_T = ∅_T
    • 5%: 이미지와 텍스트 condition을 모두 제거
      • c_I = ∅_I, c_T = ∅_T
  • 이를 통해 모델은 각 condition의 유무에 따른 conditional 및 unconditional denoising을 모두 학습

두 가지 Guidance Scale

  • InstructPix2Pix는 두 condition의 영향력을 개별적으로 조절하기 위해 두 개의 guidance scale을 도입

Image Guidance Scale: s_I

  • 생성 결과가 원본 이미지와 얼마나 일치해야 하는지 조절
  • s_I가 높을수록 원본 이미지의 구조와 내용이 강하게 유지됨

Text Guidance Scale: s_T

  • 생성 결과가 편집 지시문을 얼마나 강하게 반영해야 하는지 조절
  • s_T가 높을수록 지시된 변화가 더 뚜렷하게 나타남

수정된 Score Estimate

ε̃_θ(z_t, c_I, c_T)
= ε_θ(z_t, ∅, ∅)
+ s_I × [ε_θ(z_t, c_I, ∅) - ε_θ(z_t, ∅, ∅)]
+ s_T × [ε_θ(z_t, c_I, c_T) - ε_θ(z_t, c_I, ∅)]

각 항의 의미

  • Unconditional prediction
ε_θ(z_t, ∅, ∅)
  • 이미지와 텍스트 condition을 모두 사용하지 않은 기본 noise prediction
  • Image guidance 항
s_I × [ε_θ(z_t, c_I, ∅) - ε_θ(z_t, ∅, ∅)]
  • 아무 condition도 없을 때와 이미지 condition만 추가했을 때의 prediction 차이
  • 원본 이미지의 구조와 내용이 유지되도록 유도
  • Text guidance 항
s_T × [ε_θ(z_t, c_I, c_T) - ε_θ(z_t, c_I, ∅)]
  • 원본 이미지 condition만 있을 때와 텍스트 instruction까지 추가했을 때의 prediction 차이
  • 편집 지시문에 해당하는 변화가 이미지에 반영되도록 유도

s_I와 s_T의 Trade-off

  • 높은 s_I, 낮은 s_T
    • 원본 이미지의 구조와 세부 정보가 잘 유지됨
    • 편집 지시문에 따른 변화가 약하게 나타날 수 있음
  • 낮은 s_I, 높은 s_T
    • 편집 지시문이 강하게 적용됨
    • 원본 이미지의 구조나 세부 정보가 크게 달라질 수 있음
  • 적절한 s_I와 s_T 설정을 통해 다음 두 요소 사이의 균형을 조절
    • 원본 이미지 보존
    • 편집 instruction 적용

핵심 정리

  • InstructPix2Pix는 Stable Diffusion을 기반으로 한 conditional latent diffusion model
  • Noisy latent뿐 아니라 원본 이미지와 텍스트 편집 지시문을 동시에 condition으로 사용
  • Stable Diffusion의 첫 번째 convolutional layer를 확장하여 원본 이미지 latent를 입력
  • 새롭게 추가한 channel의 weight는 0으로 초기화하고 나머지 부분에는 pretrained weight를 사용
  • 두 가지 condition을 개별적으로 제어하는 classifier-free guidance를 적용
  • s_I는 원본 이미지 보존 정도를 조절
  • s_T는 텍스트 편집 지시문의 반영 정도를 조절

4. Results

  • 다양한 실제 사진과 예술 작품을 대상으로 자연어 지시 기반 이미지 편집 성능을 평가
  • 서로 다른 표현 방식의 instruction과 다양한 편집 유형에 대해 실험 수행
  • 성공적으로 수행한 주요 편집 유형
    • 객체 교체
    • 계절 변경
    • 날씨 변경
    • 배경 교체
    • 재질 및 소재 속성 변경
    • 예술적 표현 매체 변경
    • 기타 다양한 구조적·스타일적 편집
  • 정성적 비교 대상
    • SDEdit
    • Text2Live
  • 정량적 비교 대상
    • SDEdit
  • 추가 분석
    • 생성 학습 데이터의 크기가 성능에 미치는 영향
    • CLIP 기반 데이터 filtering의 효과
    • 두 classifier-free guidance scale의 영향

4.1 Baseline Comparisons

비교 조건

  • InstructPix2Pix는 이미지에 수행할 행동을 설명하는 edit instruction을 입력받음
  • SDEdit과 Text2Live는 edit instruction이 아니라 원하는 결과 이미지에 대한 description 또는 edit layer description을 요구
  • 공정한 비교를 위해 baseline에는 edit instruction 대신 편집 후 이미지의 전체 caption을 입력

SDEdit

  • Pretrained diffusion model을 활용한 이미지 편집 방법
  • 입력 이미지에 일정 수준의 noise를 추가한 뒤, 새로운 text prompt를 조건으로 denoising하여 편집 이미지 생성
  • 실험에서는 Stable Diffusion 기반의 공개 SDEdit 구현을 사용

장점

  • 이미지의 내용이 대체로 유지되고 스타일만 변경되는 편집에서는 비교적 좋은 결과를 생성

한계

  • 큰 변화가 필요한 경우 입력 이미지의 identity를 유지하기 어려움
  • 특정 객체만 분리하여 선택적으로 변경하는 데 어려움
  • 원본 이미지의 구조나 세부 요소가 크게 달라질 수 있음
  • 간단한 edit instruction이 아니라 원하는 출력 이미지 전체를 설명하는 caption이 필요

Text2Live

  • Text prompt를 조건으로 color와 opacity를 가진 augmentation layer를 생성
  • 생성된 layer를 원본 이미지에 추가하여 편집 수행
  • 저자가 공개한 구현을 사용해 비교

장점

  • 원본 이미지 위에 새로운 시각적 요소를 추가하는 additive edit에서 효과적
  • 일부 편집에서는 자연스럽고 설득력 있는 결과 생성

한계

  • 편집을 추가 layer 형태로 수행하기 때문에 처리 가능한 편집 유형이 제한적
  • 객체 교체, 구조 변경, 배경 변경 등 큰 변화에는 적합하지 않음

정성적 비교 결과

  • InstructPix2Pix
    • 다양한 유형의 편집을 하나의 모델로 처리
    • 입력 이미지의 구조와 identity를 비교적 잘 유지
    • 자연어 instruction을 직접 이해하여 필요한 부분을 변경
  • SDEdit
    • 스타일 변화에는 효과적
    • 객체 교체나 큰 구조적 변화에서는 원본 이미지 보존 성능이 떨어짐
  • Text2Live
    • 새로운 효과나 요소를 덧붙이는 편집에는 효과적
    • 적용 가능한 편집 범위가 제한적

정량적 평가 Metric

1. CLIP Image Similarity

  • 입력 이미지와 편집 결과 이미지의 CLIP image embedding 간 cosine similarity
  • 편집 결과가 원본 이미지와 얼마나 일관성을 유지하는지 측정
  • 높은 값
    • 원본 이미지의 구조와 내용이 잘 보존됨

2. Directional CLIP Similarity

  • Caption에서 발생한 의미 변화와 이미지에서 발생한 시각적 변화가 얼마나 일치하는지 측정
  • 비교하는 변화 방향
    • 편집 전 caption → 편집 후 caption
    • 입력 이미지 → 편집 결과 이미지
  • 높은 값
    • 이미지의 변화가 텍스트로 표현된 편집 방향과 잘 일치함
    • Edit instruction이 성공적으로 반영되었다고 볼 수 있음

두 Metric 간 Trade-off

  • 두 metric은 서로 경쟁 관계에 있음
  • 편집 결과를 instruction에 강하게 맞출수록
    • Directional CLIP similarity 증가
    • 원본 이미지와의 차이가 커져 CLIP image similarity 감소 가능
  • 원본 이미지를 강하게 유지할수록
    • CLIP image similarity 증가
    • 편집 변화가 약해져 directional similarity 감소 가능
  • 따라서 좋은 이미지 편집 모델은 다음 두 요소의 균형이 필요
    • 원본 이미지 일관성
    • 편집 지시문의 정확한 반영

SDEdit과의 정량적 비교 결과

  • 동일한 directional similarity 수준에서 InstructPix2Pix가 SDEdit보다 더 높은 CLIP image similarity를 보임
  • 의미
    • 동일한 수준으로 편집 instruction을 반영하면서도 원본 이미지의 구조와 identity를 더 잘 보존
    • InstructPix2Pix가 편집 강도와 이미지 일관성 사이에서 더 우수한 trade-off를 제공

4.2 Ablation Studies

Training Dataset 크기의 영향

  • 전체 데이터셋과 더 작은 데이터셋으로 학습한 모델을 비교
    • 전체 데이터 사용
    • 전체 데이터의 10% 사용
    • 전체 데이터의 1% 사용
  • 학습 데이터가 감소할수록 큰 이미지 편집을 수행하는 능력이 저하됨
  • 작은 데이터셋으로 학습한 모델은 주로 다음과 같은 미세한 변화만 수행
    • 색감 조정
    • 스타일 변경
    • 작은 시각적 속성 변경
  • 결과적으로 작은 데이터셋을 사용한 모델은
    • 원본과 거의 유사하기 때문에 CLIP image similarity는 높음
    • 편집 instruction을 충분히 반영하지 못해 directional similarity는 낮음

결론

  • 대규모 데이터는 단순한 스타일 변화뿐 아니라 객체 교체나 구조 변경과 같은 큰 편집을 학습하는 데 중요
  • 다양한 편집 유형과 변화 규모를 학습하려면 충분한 양의 generated training data가 필요

CLIP Filtering의 영향

  • CLIP filtering을 적용한 데이터로 학습한 모델과 filtering을 제거한 데이터로 학습한 모델을 비교
  • CLIP filtering을 제거하면
    • 편집 결과와 입력 이미지 사이의 일관성이 감소
    • 원본 이미지의 구조와 identity가 더 쉽게 훼손됨
  • 원인
    • Prompt-to-Prompt 또는 Stable Diffusion이 생성한 부적절한 image pair가 학습 데이터에 포함
    • Caption의 변화와 이미지의 변화가 일치하지 않는 sample이 제거되지 않음
    • 모델이 이미지 편집이 아닌 불필요한 전체 이미지 변화를 학습할 수 있음

결론

  • CLIP 기반 filtering은 단순히 데이터 품질을 높이는 것뿐 아니라 입력 이미지와 출력 이미지의 일관성을 유지하는 데 핵심적인 역할을 함

Guidance Scale 분석

Text Guidance Scale (s_T)

  • 편집 결과가 텍스트 instruction을 따르는 정도를 조절
  • (s_T)가 증가하면
    • 이미지에 더 강한 편집이 적용됨
    • 출력 이미지가 instruction의 내용과 더 잘 일치
    • 지나치게 높으면 원본 이미지의 구조나 identity가 손상될 수 있음
  • 일반적으로 좋은 결과를 생성하는 범위
    • (s_T = 5 \sim 10)

Image Guidance Scale (s_I)

  • 편집 결과가 입력 이미지의 구조와 내용을 유지하는 정도를 조절
  • (s_I)가 증가하면
    • 원본 이미지의 공간적 구조가 더 잘 보존됨
    • 입력 이미지와 출력 이미지의 일관성이 높아짐
    • 지나치게 높으면 편집 instruction이 충분히 반영되지 않을 수 있음
  • 일반적으로 좋은 결과를 생성하는 범위
    • (s_I = 1 \sim 1.5)

Guidance Scale의 실전 설정

  • 모든 이미지와 instruction에 동일한 guidance scale을 사용하는 것보다 편집 사례에 따라 값을 조정하는 것이 효과적
  • 큰 변화가 필요한 편집
    • 상대적으로 높은 (s_T)
    • 상대적으로 낮은 (s_I)
  • 원본 구조를 강하게 보존해야 하는 편집
    • 상대적으로 높은 (s_I)
    • 적절한 수준의 (s_T)
  • 논문의 결과 이미지에서도 각 사례에 따라 guidance weight를 조정하여 이미지 일관성과 편집 강도의 최적 균형을 선택

핵심 결과

  • InstructPix2Pix는 실제 사진과 예술 작품에서 다양한 자연어 기반 편집을 성공적으로 수행
  • SDEdit보다 동일한 편집 강도에서 원본 이미지의 일관성을 더 잘 유지
  • Text2Live보다 훨씬 다양한 종류의 이미지 편집이 가능
  • 대규모 학습 데이터는 객체 교체와 같은 큰 편집을 수행하는 데 중요
  • CLIP filtering은 생성 데이터의 오류를 제거하고 이미지 일관성을 높이는 데 효과적
  • (s_T)는 편집 강도, (s_I)는 원본 이미지 보존 정도를 조절
  • 최적의 결과를 위해 이미지와 instruction에 따라 두 guidance scale을 적절히 조정해야 함

5. Discussion

  • 본 연구는 두 개의 대규모 사전학습 모델을 결합하여 이미지 편집용 학습 데이터셋을 생성
    • GPT-3: 편집 instruction과 편집 후 caption 생성
    • Stable Diffusion: 편집 전·후 이미지 생성
  • 생성된 multimodal dataset을 사용해 자연어 이미지 편집 지시를 따르는 diffusion model을 학습
  • 모델은 다양한 유형의 편집을 수행 가능
    • 이미지 스타일 변경
    • 예술적 표현 매체 변경
    • 배경이나 상황 등 contextual 요소 변경
    • 객체 및 시각적 속성 수정

주요 한계

1. 생성 이미지 품질에 대한 의존성

  • InstructPix2Pix의 성능은 생성된 학습 데이터의 시각적 품질에 크게 의존
  • 학습 이미지가 Stable Diffusion으로 생성되기 때문에 Stable Diffusion의 한계가 그대로 반영됨
  • Stable Diffusion이 낮은 품질의 이미지나 부정확한 이미지를 생성하면
    • 학습 데이터의 품질이 저하됨
    • 최종 이미지 편집 모델의 성능도 저하됨

2. GPT-3 기반 Instruction 생성의 한계

  • 새로운 편집 유형에 일반화하는 능력은 GPT-3 fine-tuning에 사용된 사람이 작성한 instruction에 영향을 받음
  • 성능을 제한하는 요소
    • 사람이 작성한 초기 instruction 데이터의 다양성
    • GPT-3가 적절한 instruction을 생성하는 능력
    • GPT-3가 input caption을 instruction에 맞게 정확히 수정하는 능력
  • 초기 데이터에 포함되지 않은 편집 유형이나 표현 방식은 모델이 충분히 학습하지 못할 수 있음

3. Prompt-to-Prompt의 한계

  • 편집 전·후 이미지 pair의 품질은 Prompt-to-Prompt의 편집 능력에 의존
  • Prompt-to-Prompt가 특정 변화를 제대로 반영하지 못하면 잘못된 paired data가 생성될 수 있음
  • 결과적으로 최종 모델도 instruction과 시각적 변화 사이의 잘못된 관계를 학습할 가능성이 있음

4. 객체 개수 인식의 어려움

  • 모델은 이미지 속 객체의 개수를 정확하게 처리하는 데 어려움이 있음
  • 예시
    • 객체를 특정 개수만큼 추가
    • 여러 객체 중 일부만 제거
    • 서로 다른 위치에 각각 다른 개수의 객체 배치
  • 예를 들어 다음과 같은 지시를 정확히 수행하기 어려움
    • “테이블 위에 컵 두 개를 놓고 의자 위에 컵 한 개를 놓아라.”
  • 이러한 counting 문제는 Stable Diffusion과 Prompt-to-Prompt에서도 공통적으로 나타나는 한계

5. Spatial Reasoning의 어려움

  • 모델은 객체 사이의 공간적 관계를 이해하고 변경하는 데 어려움이 있음
  • 어려운 instruction 예시
    • “객체를 이미지의 왼쪽으로 이동시켜라.”
    • “두 객체의 위치를 서로 바꿔라.”
    • “한 객체를 다른 객체의 오른쪽에 배치하라.”
    • “특정 개수의 객체를 서로 다른 장소에 놓아라.”
  • 모델은 텍스트의 의미는 이해하더라도 이미지 내부에서 정확한 위치 관계를 구현하지 못할 수 있음

6. Bias 문제

  • 모델은 기존 데이터와 pretrained model에 존재하는 bias를 이어받을 수 있음
  • Bias의 출처
    • LAION 데이터셋
    • GPT-3
    • Stable Diffusion
    • Prompt-to-Prompt
    • 사람이 작성한 fine-tuning instruction
  • 편집 결과에서 나타날 수 있는 문제
    • 특정 직업, 성별, 인종 또는 문화에 대한 고정관념 재생산
    • 원본 이미지에 없던 편향된 요소 추가
    • 기존 데이터의 편향을 강화
    • 새로운 형태의 bias 생성
  • 따라서 생성 결과를 사용할 때 사회적·윤리적 영향을 고려해야 함

Future Work

1. Spatial Reasoning 개선

  • 객체의 위치와 관계를 정확하게 이해하고 수정하는 방법 필요
  • 개선이 필요한 기능
    • 객체 이동
    • 객체 간 위치 교환
    • 방향 및 거리 이해
    • 객체 개수 제어
    • 복잡한 공간적 배치 수행

2. 다른 Conditioning Modality와의 결합

  • 자연어 instruction뿐 아니라 사용자 interaction과 같은 다른 조건을 함께 사용하는 방향 제안
  • 결합 가능한 사용자 입력
    • User-drawn mask
    • Bounding box
    • Point selection
    • Sketch
    • Gesture
    • 사용자가 선택한 편집 영역
  • 자연어의 표현력과 시각적 입력의 정확성을 결합하면 특정 영역을 더욱 세밀하게 편집할 수 있음

3. 평가 방법 개발

  • Instruction-based image editing을 정확하게 평가할 수 있는 새로운 방법이 필요
  • 기존 metric만으로는 다음 요소를 모두 평가하기 어려움
    • Instruction을 정확히 따랐는지
    • 편집하지 않은 영역이 유지되었는지
    • 결과가 자연스럽고 현실적인지
    • 사용자의 실제 의도와 일치하는지
  • 향후에는 자동 평가 metric과 human evaluation을 함께 활용할 필요가 있음

4. Human Feedback 활용

  • 사람의 피드백을 학습 과정에 반영하여 모델이 사용자의 의도를 더 정확하게 따르도록 개선 가능
  • 가능한 접근 방식
    • 사용자가 여러 결과 중 가장 적절한 결과 선택
    • 편집 결과에 대한 선호도 평가
    • 잘못된 편집 사례에 대한 수정 feedback 제공
    • Human-in-the-loop reinforcement learning 적용
  • 이를 통해 모델과 인간 의도 사이의 alignment를 향상할 수 있음