본문 바로가기
Paper Review/Diffusion Model

[논문 리뷰] IMPUS: IMAGE MORPHING WITH PERCEPTUALLY UNIFORM SAMPLING USING DIFFUSION MODELS (ICLR 2024)

by climba 2024. 6. 10.

AID: Attention Interpolation of Text-to-Image Diffusion 논문과 비슷하게 image interpolation task(여기서는 image morphing task)를 수행한 연구다.

실험부분에 AID와의 비교가 없어서 찾아보니, 이 논문이 선행연구여서 AID의 Appendix E에 본 논문(IMPUS)과 DiffMorpher(CVPR 2024)과의 비교가 있었다. 본 논문에서는 AID 이전에 있었던 diffusion interpolation 논문인 Interpolating between Images with Diffusion Models (ICMLW 2023)하고만 비교한다. 선행연구인 Interpolating ~ 이 논문이 real image에 대한 interpolation을 잘 못해서(직접 돌려봤을때) 실험 비교에서는 좀 재미가 없긴했다. 또 AID는 내가 아는 한 real image interpolation이 불가능한데(최소한 공개된 코드만으로는), AID와의 비교도 있었으면 좋겠다는 생각을 했다. 개인적으로 diffusion model을 활용한 interpolation / image morphing 연구는 좀 더 일찍 나올만 했던 것 같은데, 상당히 늦게(요즘 많이) 나오는 것 같다. AID를 비롯해서 이 논문, DiffMorpher(이건 아직 안봤지만) 등 보다 더 좋은 메소드가 있을 것 같은데, 보기엔 쉬워보여도 방법론을 구축하는 직관은 역시 쉽게 생기지 않는 것 같다.

 

그럼에도 이 논문은 나한테 정말 큰 의미가 있었는데, 우선 diffusion model + optimal transport를 제안한 논문(Understanding DDPM Latent Codes Through Optimal Transport, ICLR 2023)을 알려주고, diffusion model을 (꼭 image morphing task가 아니더라도) optimal transport와 연관지어 생각해볼 수 있다는 것을 알려줬다.

요즘 기대수 해석학과 함께 optimal transport를 찍먹하려는 나에게는 매우 흥미로운 직관이였다. 논문 자체가 "왜 잘되는지"에 대한 설명은 좀 부족했지만, 이건 많은 AI 논문들이 이 정도로 넘어가는 것 같고, method 구축까지의 과정이 꽤나 참신해서 배울점이 많았던 것 같다.

 

arxiv : https://arxiv.org/abs/2311.06792

code : https://github.com/GoL2022/IMPUS

 

Before reading

  1. 논문 제목을 보고 해당 모델이 어떤 방법론을 바탕으로 할지 가설을 세워봅시다.
    1. PERCEPTUALLY UNIFORM SAMPLING을 이용해 image morphing을 한다는데, 제목이 본 논문의 내용을 잘 대표하고 있지 못하는 것 같다. LoRA 얘기를 해야하는 거 아닌가...?

1. Introduction

  1. 논문이 다루는 task : Image morphing task(image interpolation)
    1. Input : 2 images
    2. Output : (some) interpolated images
  2. 해당 task에서 기존 연구 한계점

좌 : Interpolating between Images with Diffusion Models (ICMLW 2023) vs 우 : 본 논문

Interpolating between Images with Diffusion Models (ICMLW 2023) : 그냥 image interpolation을 잘 못한다.

2. Related Work

Text-to-image Generation

Glide, SD, Textual Inversion

 

Image Editing

SDEdit, Imagic, Instructpix2pix, P2P, NTI

 

Image-to-image Translation

plug-and-play Diffusion, VCT

<to read>

Dual Diffusion Implicit Bridges for Image-to-Image Translation (ICLR 2023)

Unpaired Image-to-Image Translation via Neural Schrödinger Bridge (ICLR 2024)

 

Image Morphing

-> uses neural networks to learn the morph map between two images (interpolation과 매우 유사)

-> 보통은 사람의 개입이 필요 or 매우 좁은 도메인에서만 가능 -> 본 논문은 X

3. 제안 방법론

- Desiderata for Image Morphing

image morphing problem은 constrained Wasserstein barycenter problem으로 나타낼 수 있다. (논문 참고)

쉽게 말하면 두 이미지의 distribution을 각각 ξ_0과 ξ_1로 나타냈을때, 이를 이용해 α-parameterized distribution ξ_α를 찾는 것이다.

W_2 : 2-Wasserstein distance / M : target data manifold / v : probability measure on M / α : interpolation parameter

그러나 위 수식을 real word에서 잘 모델링하는것은 매우 어렵다. (image의 dimension이 매우 높기 때문에)

따라서 본 논문에서는 아래 세 가지 특성에 (특히) 초점을 맞춤

  • Smoothness:
    • 생성된 이미지 변환 시퀀스의 두 연속 이미지 간의 원활한 전환 (not stringent constraint but perceptually smooth path)
  • Realism:
    • high-density region에 위치한 시각적으로 현실적인 이미지 생성
  • Directness:
    • 최소한의 변형으로 효율적인 변환 경로 구현 (optimal transport)

- Main Idea

INTERPOLATION IN OPTIMIZED TEXT-EMBEDDING AND LATENT-STATE SPACE

- Interpolating Text Embeddings

  • CLIP feature space is densely concentrated and locally linear (이미 발견된 사실)
  • 본 논문에서는 두 image의 CLIP text embeddings e(0)과 e(1) 사이를 linearly interpolate(아래 수식)
  • 이때 text prompt를 <An image of [token]> 등으로 하는데, [token] 자리에는 (예를들어) flamingo, ostrich의 경우 root class인 "bird"를 하거나, beetle과 car처럼 root class가 다르면 "beetle car"을 대입.

text prompt의 (initial) embedding : e

  • e(0), e(1) 각각에 대한 조건부 확률 pθ(x|e(0)),(1)로 표현하고 이를 interpolate하면 pθ(x|e(α)) = pθ(x|(1 − α)e(0) + αe(1))

- Interpolating Latent States

  • pθ(x|e(α))를 계산하기 위해, 두 이미지 x_0와 x_1의 latent를 interpolate
  • vanilla interpolation(image 자체로) -> 잘 안됨
  • Probability flow ODE로 N(xT ; 0, I)으로 mapping을 한 뒤 interpolate (latent interpolation을 잘해야 -> image interpolation을 잘함)
  • info diffusion에서와 같이 slerp(spherical linear interpolation)을 활용해서 interpolate

slerp 수식

이때,

 

MODEL ADAPTATION WITH A HEURISTIC BOTTLENECK CONSTRAINT

image pair가 의미적으로 다를 경우 심각한 artifact가 발생

-> direct & intuitive interpolation을 하기 위해 image pair에 model adaptation 적용

-> 주어진 이미지와 관련 없는 high-density regions을 억제하므로서 morphing process의 variation을 제한할 수 있다.

 

standard approach는 아래 수식처럼 finetuning 하는 것인데, 이렇게하면 image detail의 손실이 생김(-> mode collapse)

 

따라서 본 논문에서는 LoRA(low-rank adaptation)를 채택하여 heuristic bottleneck constraint를 둔다. (아래 수식)

conditional

💡 LoRA의 low-rank bottleneck 덕분에 mode coverage를 유지하고, catastrophic forgetting의 위험을 줄일 수 있음

이때, LoRA rank가 크면 image divesity를 억제하여 morphs의 directness가 강화되지만, fidelity가 낮은 결과가 나올 수 있으므로 적절한 trade-off를 찾아내야함. (보통 2,4 등을 사용하는 것 같음)

 

- Relative Perceptual Path Diversity

Relative Perceptual Path Diversity (rPPD) : 이미지 모핑 과정에서 연속된 이미지들 사이의 다양성을 측정

두 이미지마다의 LPIPS를 측정해서 sum한 뒤 양 끝 이미지의 LPIPS * (N-1)로 나눠줌

(Empirically) 이렇게 구한 gamma γ를 이용해 LoRA의 rank r_e를 구해준다.

- Unconditional Bias Correction

여기서도 역시 CFG를 활용하는데, CFG를 활용하면 unet의 파라미터가 conditional일때와 unconditional일때 공유되므로, unconditional distribution도 변경되어 예상치 못한 bias가 발생할 수 있음

해결 방법으로는 아래 두가지를 고려

1) randomly discard conditioning (like CFG)

2) separate LoRA parameters for fine-tuning the unconditional branch on x0 and x1

후자가 좀 더 효율적(bias correction에 더 robust함)

 

즉 아래 수식과 같이 x0와 x1의 unconditional branch에 대해서도 LoRA 파라미터를 분리하여 fine-tuning하는 것이다.

unconditional

 

Inference 시에는, 위 conditional, unconditional part를 w, (1-w)를 곱하여 더해 noise prediction을 수행한다.

PERCEPTUALLY-UNIFORM SAMPLING

매끄러운 image morphing sequence를 생성하기 위해 연속 샘플들이 유사한 perceptual difference를 가지도록 해야함(AID에서는 beta distribution을 활용해 해결)

-> Uniform sampling으로는 부족 -> adaptive interpolation parameters {α_i}를 통해 해결

 

핵심은 binary search를 통해 일정한 LPIPS 차이를 갖는 interpolation parameters α_i를 근사.

- Contribution

제목에 PERCEPTUALLY UNIFORM SAMPLING이 들어간 것 치고, 이 부분에 대한 설명은 굉장히 미미하다.

오히려 LoRA에 대한 설명이 많은데, Low Rank adaptation을 통해 image pair가 의미적으로 달라도 morphing을 자연스럽게 할 수 있게 한 건 신기한 것 같다.

4. 실험 및 결과

- Dataset

1) benchmark datasets for image generation (CelebA-HQ, AFHQ, LSUN)

2) internet images

3) 25 image pairs from " Interpolating between Images with Diffusion Models (ICMLW 2023)"

- Baseline

좌 : Interpolating between Images with Diffusion Models (ICMLW 2023) vs 우 : Ours

- Results

.

 

LPIPS_T : Total LPIPS (shorter path) / LPIPS_M : Max LPIPS (direct path)

- Conclusion (What I learned)

Image Morphing이 잘 안되던 것을 LoRA로 푼게 인상적이였다. 실험도 되게 많이 한 것 같고 연결짓기가 어려웠을텐데 설득력 있는 논문이였다.

 

 

댓글