2. 인공지능 논문리뷰/Computer Vision

논문리뷰 1. DreamBooth: Fine Tuning Text-to-Image Diffusion Models for Subject-Driven Generation (CVPR 2023)

First man 2024. 11. 25. 20:49
728x90
반응형
SMALL

 

안녕하세요, 

 

오늘은 Computer Vision 논문리뷰를 해보려고 합니다.

 

비전공자이다보니까 수식이 어떻게 활용되었는지 논문을 읽을때마다 어렵기도 하고, 어려운 부분인 것 같아요.

제가 다룰 논문 리뷰들에서는 어떻게 수식이 적용되었는지 보여드릴 예정이니 비전공이신분들도 두려워마시고 차근차근 읽어서 가져가시기 바랍니다.

 

Multimodal에 관한 연구를 하시는 분들에게 조금이나마 도움이 되시기 바랍니다.

 

 

DreamBooth: Fine Tuning Text-to-Image Diffusion Models for Subject-Driven Generation ( Ruiz, N., Li, Y., Jampani, V., Pritch, Y., Rubinstein, M., & Aberman, K. CVPR 2023) 논문의 핵심은 두가지라 생각합니다.

 

1. 소량의 이미지를 사용하여 이미지의 피사체가 가지고 있는 특성을 활용(Unique identifier 설정)하여 사용자가 원하는 이미지 생성

2. 소량의 이미지를 사용하면서 발생하는 Overfitting과 Language drift를 해결하고자 Prior-preservation loss를 사용

 

 

사실 소량의 이미지를 사용하면 대부분의 모델에서 Overfitting이 발생하는 문제가 있는데요. 본 논문에서는 이러한 문제를 해결하였기에 참 좋은 논문이다 라고 생각하였습니다.

 


Introduction

최근에 개발된 대규모 Text-Image 생성 모델들은 자연어 텍스트 프롬프트를 기반으로 고품질의 성능을 보여주었는데요.  모델이 강력한 Semantic prior(의미적 사전지식) 로 대규모 데이터를 학습할 수 있었습니다. 예를 들어,  ‘개’라는 단어가 주어지면, 어떻게 생겼는지, 어떤 형태와 색상이 일반적인지에 대한 지식을 갖게 된다고 할 수 있습니다.

 

하지만, 기존 연구의 문제점은 주제의 외형을 모방하거나 동일한 주제를 다른 맥락에서 새롭게 재현하기가 어렵다는 한계가 존재합니다. 

 

이러한 문제를 해결하기 위해 DreamBooth 논문에서는 사전 학습 된 Imagen 모델을 특정 주제에 대한 몇 장의 사진만으로 Fine-tuning하여 개인화된 Text-Image 생성 모델을 만드는 방식으로 해결하였습니다.

시각적 특징을 보존하면서 다양한 장면에서 자연스럽게 조화를 이루는 이미지를 생성 (높은 fidelity) 하였다고 할 수 있습니다.

 

즉, 사용자의 이미지 생성 요구 사항에 맞게 모델이 조정되는 “personalization”을 위한 새로운 접근방식 제안하였는데요.

 

새로운 접근 방식에서 나타나는 문제점인 Overfitting과 Language drift를 해결하고자 class-specific prior preservation loss 사용하게 되었습니다. (* 주제가 ‘개’일 때, 모델이 사용자가 제공한 개에 국한되지 않고, 여러 종류의 개를 다양한 모습으로 생성할 수 있도록 함 이 과정에서 위에 언급된 loss를 사용)

 

그렇다면 어떠한 Method가 사용되었는지 자세히 설명하기에 앞서서 Background로 Diffusion Model에 대해서 설명하도록 하겠습니다.


Background

Diffusion Model은 가우시안 분포에서 샘플링한 변수를 점진적으로 denoising하여 데이터 분포를 학습하는 확률적 생성 모델입니다. 
따라서, Squared error loss를 최소화함으로써, 모델이 Noise가 있는 이미지에서 Noise를 제거하여 실제 이미지에 가까운 이미지를 생성하도록 학습한다고 할 수 있는데요.
 
아래 간단한 식(그림1)을 보시면서 이해를 도와드리겠습니다.

그림1

 

*용어 정리1 : X위에 작은 산같은 모양이 있는 부분을 X헷 이라고 말합니다.

*용어 정리 2 :  Ground truth란? 실제 이미지 라고 생각 하시면 이해하기 쉽습니다.

 

앞부분(X헷)은 Diffusion model이 가지고 있는 Noise가 추가된 이미지, 뒤의 X부분은 실제 이미지(Ground truth)입니다.

그렇다면 Diffusion model의 수식은 ? Diffusion model의 이미지와 실제 이미지를 계산 하는 식입니다.

 

쉽죠? 그럼 이 식의 오차를 줄이면? 실제 이미지에 가까운 이미지를 생성된다 라고 생각하시면 됩니다.

 

다음으로 Method를 다뤄보겠습니다.


METHOD

Method Overview는 아래와 같습니다. 

그림2

 

텍스트 설명 없이 주제에 대해 소량의 이미지 (3~5개)가 주어졌을 때 Text prompt가 잘 반영된 새로운 주제 이미지를 생성합니다.

 

Input으로 특정 개에 대한 이미지가 들어갑니다. 여기에는 Pretrain된 모델이 사용되는데요.

본 논문에서는 Google의 Imagenet과 오픈 소스인 Stable diffusion을 활용하였습니다.

 

이렇게 들어간 이미지의 피사체인 강아지의 특징을 잘 뽑아내고자 Unique identifier로 특정 피사체의 특징을 지정합니다.

Unique identifier를 사용할 때, Rare-token Identifier를 사용하는데요.

이유는 Unique identifier가 기존 text-to-image diffusion model의 학습 데이터셋에 존재하는 경우, 그 단어에 대한 prior이 강해져서 문제가 발생하기 때문입니다. 여기서 발생하는 문제란 피사체의 고유한 특징을 반영하지 못하는 것입니다.

 

Unique identifier는 아래처럼 만들어주는데요. 

Unique identifier는 [특정 피사체를 식별하는 것]과 [원하는 상황] 으로 이루어져 있다고 생각하시면 됩니다.

그림3

 


Problem

여기서 여러 문제가 발생합니다.

본 논문에서는 " Posibility of reduced output diversity" 와 "Language drift"로 설명하였습니다.

 

1. Posibility of reduced output diversity

다시 말하면, Overfitting이 발생해 결과물의 다양성이 줄어들었다는 말입니다. 

쉽게 설명하자면 Text-to-Image diffusion model은 높은 다양성을 가진 출력을 생성할 수 있지만, 소수의 이미지로 fine-tuning하면 새로운 시점이나 포즈로 표현되지 않고, 제한된 포즈로만 생성되는 현상 발생하는 것입니다. 

 

 

이에 대한 해결법으로 모든 layer에 fine-tuning을 해주었다고 합니다.

 

하지만, text embedding을 조건으로 하는 fine-tuning layer가 포함되어 있기에 Language drift라는 문제가 또 발생하는데요.

 

 

2. Language drift 

Language drift란 언어의 구문 및 의미적 지식을 잃어버리는 현상입니다. 

 

그럼 여기서 발생한 Language drift는 무슨 현상인가?

Text Prompt에는 [identifier]와[Class noun]가 모두 포함되어 있기 때문에 diffusion model이 작은 image set에서 fine-tuning될 때 동일한 클래스의 주제를 생성하는 방법을 잊어가면서 다른 인스턴스를 생성하는 문제 발생했다고 할 수 있습니다.

 

 

이 문제를 해결하고자 본 논문에서는 어떠한 방법을 사용했을까요?

Class-Specific Prior Preservation Loss를 사용하였습니다.

 

다시 Method로 돌아와서 아래에서 마저 설명드리겠습니다.


Class-Specific Prior Preservation Loss를 통해 Output 다양성을 보여주었습니다.

 

아래 그림4는 Class-Specific Prior Preservation Loss 식을 쉽게 풀어서 설명드리기 위해 제작한 그림입니다.

그림4

초록색 부분은 앞서 Background로 설명드린 Stable diffusion부분이죠? 

Stable diffuion부분 피사체(Unique identifier)부분을 통해 prior 지식을 보존 및 학습을 통해 다양한 주제를 생성할 수 있게 하는 부분을 더합니다.

 

여기서 람다(λ) 는 가중치를 두어 중요도를 조절하는 역할을 하였습니다.

본 논문에서는 람다를 1로 지정하였다고 합니다.

 

본 논문에서 prior-preservation loss를 적용한 이미지와 적용하지 않은 이미지(w/o prior-preservation loss)에 대한 결과물을 통해 차이를 보여주었는데요. 아래 그림(그림5)을 보면 확실히 적용한 모습이 잘 나왔네요.

 

 

그림5

 

 


 

Experiments

 

본 논문의 Experiments 부분입니다.

 

Dataset (그림6)

Image : 직접 수집하거나 Unsplash의 이미지 (가방,  개, 고양이 등 30개 (21개는 사물, 9개는 동/생물)

Prompt : 25개 (20개는 사물에 대한 재맥락화, 5개는 속성 수정 프롬프트)
Image generation : 3,000개

 

Image generation은 Test에 사용하기 위해 생성된 데이터로 생각하시면 됩니다.

그림6

 

 

Recontextualization (재맥락화)  : a[V][class noun][context description] 형식으로 문장을 형성하는 것입니다.

 

아래 그림(그림7)을 보시면 재맥락화를 통해 이미지가 맥락에 따라 잘 나타난 것을 보실 수 있습니다.

그림7

 

 

Text-guided view synthesis : 새로운 시점으로 대상을 렌더링하는 것입니다. 새로운 시점으로 랜더링 한다는 것은 

위를 바라보거나, 아래를 바라보거나, 뒤를 바라보는 것으로 시점을 변경하는 것을 뜻합니다.

Art Renditions : 여러 유명한 화가의 화풍으로 그림을 만들어내는 것입니다.

   예시) 유명한 화가의 화풍으로 만들고자 a painting of a [V] [class noun] in the style of [famous painter] 형식으로 문장을 형성했습니다.

Property Modification : 대상의 속성을 수정하여 원하는 피사체에 투영할 수 있습니다.

 

위 세가지의 결과물은 아래 사진(그림8)으로 결과물을 보여주었습니다.

그림8


Evaluation 

본 논문의 Evaluation Metrics에서는 두가지를 중요하게 보았는데요
중요한 평가부분은 Subject fidelity  & Prompt fidelity(생성된 이미지에서 주제의 세부사항이 잘 보존되는 정도를 의미) 였습니다.  

 

Fidelity는 충실함, 충실도를 의미하는 말로 주제의 충실도와 프롬프트 충실도를 중요하게 보았습니다.
 
아래의 Evaluation 표(그림9)를 보시면 DINO, CLIP-I, CLIP-T가 나오는데 각각 무엇을 의미하는지 설명드릴게요.
그림9

 

DINO는 특징 충실도 (생성 이미지와 실제 이미지 간 평균 코사인 유사도 (선호 지표) 를 나타냅니다.

따라서, DINO 값이 높을수록 주제의 고유한 시각적 특징을 잘 반영했다고 볼 수 있구요.

 

CLIP-I는 주제 충실도로 생성된 이미지와 실제 이미지의 CLIP 임베딩 간 평균 코사인 유사도를 나타냅니다.
따라서, CLIP-I 값이 높을수록 생성된 이미지가 실제 이미지와 유사하다고 할 수 있습니다.

* I는 Image를 나타내니까 이미지와 관련된 것이라는 것을 알 수 있죠?

 

CLIP-T는 Prompt 충실도로 Prompt와 이미지의 CLIP 임베딩 간 평균 코사인 유사도를 나타냅니다.
따라서, CLIP-T 값이 높을수록 Text Prompt의 의미가 이미지에 잘 반영되었다고 할 수 있습니다.

*여기서 T는 그럼 Text를 나타내니까 Prompt를 의미하는구나! 생각하시면 됩니다.

 

 


Conclusions

 

본 논문의 결론은 "몇 장의 주제 이미지를 기반으로 Text Prompt를 통해 상용자가 원하는 장면을 생성" 했다고 할 수 있습니다.

 

대부분의 경우 실제 이미지와 구별할 수 없을 정도의 성능을 입증했습니다.

 


Limitations 

맥락을 정확하게 생성하지 못하는 경우와 대상의 외형이 변하는 경우, 마지막으로 일부 주제가 다른 주제보다 학습이 용이할 수 있다는 한계가 존재합니다.

 

아래 그림(그림 9)로 설명을 간단히 드리겠습니다.

(a) Incorrect context synthesis의 경우 on the moon 을 요청했는데 산을 배경으로 나오는 모습

(b) Context-appearance entanglement의 경우에도 in the Bolivian salt flats에서 피사체(가방)의 색상이 바뀌는 모습

그림 9

 

 


 

이상으로 DreamBooth: Fine Tuning Text-to-Image Diffusion Models for Subject-Driven Generation (CVPR 2023) 논문 리뷰를 마치도록 하겠습니다.

 

본 논문을 개인발표 하시거나, 다른 개인발표를 위해 본 논문의 ppt자료가 필요하신 경우 아래의 링크로 다운받으실 수 있으십니다.

 

링크 : https://kmong.com/self-marketing/618643/zSWmI61vLC

 

다음에는 또다른 논문리뷰로 찾아뵙겠습니다!

728x90
반응형
LIST