https://arxiv.org/abs/2207.12598
Classifier-Free Diffusion Guidance
Classifier guidance is a recently introduced method to trade off mode coverage and sample fidelity in conditional diffusion models post training, in the same spirit as low temperature sampling or truncation in other types of generative models. Classifier g
arxiv.org

Introduce
์ด ๋ ผ๋ฌธ์ classifier guidance ๋ ผ๋ฌธ์์ classifier ์ ์ฌ์ฉํ์ง ์๊ณ ๋ controllablity ๋ฅผ ๋ถ์ฌํ ์ ์๋์ง์ ๋ํด์ ์ฐ๊ตฌ๋ฅผ ํ ๋ ผ๋ฌธ์ ๋๋ค.
Classifier Guidance ๋ ผ๋ฌธ์ diffusion ๋ชจ๋ธ์์ controllablity ๋ฅผ ๋ถ์ฌํ ๋ ผ๋ฌธ์ผ๋ก, mode coverage(๋ค์์ฑ)๊ณผ sample fidelity(์ ํ์ฑ) ์ trade off ๋ฅผ ํตํด์ ๊ฒฐ๊ณผ๋ฌผ์ ์ํ๋ ๋ฐฉํฅ์ผ๋ก ๋์ถํด๋ผ ์ ์๋๋ก ์ฐ๊ตฌ๋ฅผ ํ์ต๋๋ค.
Classifier Guidance ๋ ์ด๋ฏธ์ง ์์ฑ ํ์ง์ ๋์ด๊ธฐ ์ํด ํ์ฐ ๋ชจ๋ธ์ ๋ถ๋ฅ๊ธฐ(Classifier)์ ๊ทธ๋๋์ธํธ(Gradient) ๋ฅผ ํ์ฉํ๋ ๊ธฐ๋ฒ์ ๋๋ค.
- ํต์ฌ ์์ด๋์ด: ํ์ฐ ๋ชจ๋ธ์ ์ํ์ด ๋ถ๋ฅ๊ธฐ์ ๋ ์ ๋ง๋๋ก ์ํ๋ง ๊ณผ์ ์ ์ ๋(guidance) ํฉ๋๋ค.

- ฯตฮธโ(z,c): ํ์ฐ ๋ชจ๋ธ์ ์ค์ฝ์ด ์ถ์ ์น (denoising score)
- โzโ log pclassifierโ(cโฃz): ๋ถ๋ฅ๊ธฐ์ ๊ทธ๋๋์ธํธ
- w: guidance strength (๊ฐ์ค์น)
- ์ฆ, ๋ถ๋ฅ๊ธฐ์ ๊ทธ๋๋์ธํธ๋ฅผ ํ์ฉํด "๋ ์ ํํ" ์ํ์ ๋ง๋ค๋๋ก ๋ชจ๋ธ์ ์ ๋ํฉ๋๋ค.
ํ์ง๋ง, ์ด Classifier Guidance ๋ ๋ค์ํ ํ๊ณ์ ์ด ์กด์ฌํฉ๋๋ค.
- ๋ชจ๋ธ ํ์ต ๊ณผ์ ์ ๋ณต์ก์ฑ
- ํ์ฐ ๋ชจ๋ธ ์ธ์ ๋ณ๋์ ๋ถ๋ฅ๊ธฐ(classifier) ์ ์ถ๊ฐ๋ก ํ์ตํด์ผ ํฉ๋๋ค.
- ์ด๋ ๋ชจ๋ธ์ ํ์ต ํ์ดํ๋ผ์ธ์ ๋ณต์กํ๊ฒ ๋ง๋ค๊ณ ๊ณ์ฐ์ ์์์ ์๊ตฌํฉ๋๋ค.
- ์ฌ์ ํ์ต๋ ๋ถ๋ฅ๊ธฐ ์ฌ์ฉ ๋ถ๊ฐ๋ฅ
- ๋ ธ์ด์ฆ๊ฐ ์๋ ๋ฐ์ดํฐ์ ๋ง์ถฐ ํ์ต๋ ์๋ก์ด ๋ถ๋ฅ๊ธฐ๊ฐ ํ์ํฉ๋๋ค. (๋ณ๋์ ๋ถ๋ฅ๊ธฐ ์ถ๊ฐ ํ์ต ํ์)
- ์ ์ฌ์ ์ธ ์ ๋์ ํ์ต
- classifier guidance ์ ์ํ๋ง ๊ณผ์ (์์ ์ ์ฐธ๊ณ )์ ๋ถ๋ฅ๊ธฐ๋ฅผ ์์ด๊ธฐ ์ํด ๊ฒฝ๊ณ์ ์ ๊ณต๊ฒฉํ๋ ์ ๋์ ๊ณต๊ฒฉ(adversarial attack) ๊ณผ ์ ์ฌํฉ๋๋ค.
- ํ๊ฐ ์งํ์ ์ ๋ขฐ์ฑ ๋ฌธ์
- 3๋ฒ์ ์ด์ ๋ก, ์ํ ํ์ง์ด ์ข์์ง๋ ์ด์ ๊ฐ ์ง์ง ๋ฐ์ดํฐ ํ์ง ํฅ์ ๋๋ฌธ์ธ์ง, ์๋๋ฉด ๋ถ๋ฅ๊ธฐ๋ฅผ ์ ์์ฌ์(=์ ๋์ ๊ณต๊ฒฉ) ํ๊ฐ ์งํ๊ฐ ๋์์ง ๊ฒ์ธ์ง ๋ถ๋ถ๋ช ํฉ๋๋ค.
์ด ํ๊ณ์ ์ ํด๊ฒฐํ๊ธฐ ์ํด Classifier Free ์ธ ์ด ๋ ผ๋ฌธ์ด ๋ฑ์ฅํ๊ฒ ๋์์ต๋๋ค.
- ๋ถ๋ฅ๊ธฐ ์์ด๋ ์ํ ํ์ง ๊ฐ์
- Conditional ๊ณผ Unconditional ๋ชจ๋ธ์ score ๋ฅผ ์กฐํฉํ์ฌ ๋ถ๋ฅ๊ธฐ ์์ด๋ ํ์ง์ ๊ฐ์ ํ๊ณ ์ ํฉ๋๋ค.
- ์ ๋์ ๊ณต๊ฒฉ ๋ฐฉ์ง
- classifier gradient ๋ฅผ ์ฌ์ฉํ์ง ์๊ธฐ ๋๋ฌธ์, ์ ๋์ ๊ณต๊ฒฉ๊ณผ ๊ฐ์ ์ด์๊ฐ ์ฌ๋ผ์ง๋๋ค.
- ํ๊ฐ ์งํ์ ์ ๋ขฐ์ฑ ํ๋ณด
- FID, IS ๋ฑ์ ํ๊ฐ ์งํ ๊ฐ์ ์ด ์ค์ ์ํ ํ์ง ํฅ์๊ณผ ๋ ๋ฐ์ ํ๊ฒ ์ฐ๊ฒฐ๋ฉ๋๋ค.
Background
Diffusion Model
<Forward Process>
์์ (1) ์ค๋ช

- ๐ ฮป : Signal-to-Noise Ratio(SNR) ์ ๋ก๊ทธ ์ค์ผ์ผ ํํ
- ฮป ๊ฐ ํด์๋ก ๋ ธ์ด์ฆ๊ฐ ์ ์(๊นจ๋ํ ๋ฐ์ดํฐ ์ํ) (๋์ SNR)
- ฮป ๊ฐ ์์์๋ก ๋ ธ์ด์ฆํ๋ ๋ฐ์ดํฐ (๋ฎ์ SNR)
- ฮป ๋ ์ค์ ๋ก ์๊ฐ ์ถ์ฒ๋ผ ์ฌ์ฉ๋จ
- "๊นจ๋ํ ๋ฐ์ดํฐ" โ "์์ ํ ๋ ธ์ด์ฆ"๋ก ๋ณํํ๋ ๊ณผ์ ์ ๋ํ๋
- โ ๊ฑฐ์ ๋ ธ์ด์ฆ๋ก ๊ฐ๋ ์ฐฌ ์ํ
- ฮปmax=20 โ ์๋ณธ ๋ฐ์ดํฐ์ ๊ฐ๊น์ด ์ํ
- q(zฮปโฃx): ๋ฐ์ดํฐ x ์ ๋ ธ์ด์ฆ๋ฅผ ์ถ๊ฐํ ๊ฒฐ๊ณผ์ธ zฮป์ ํ๋ฅ ๋ถํฌ(๊ฐ์ฐ์์ ๋ถํฌ)
- ฮฑฮปโ: ์๋ณธ ๋ฐ์ดํฐ์ ์ค์ผ์ผ๋ง ๊ณ์. ๋
ธ์ด์ฆ๊ฐ ์ถ๊ฐ๋ ์๋ก ์ด ๊ฐ์ ์ ์ ์์์ง
- ๋ ธ์ด์ฆ๊ฐ ๋ง์์๋ก ์๋ณธ๋ฐ์ดํฐ์ ์ํฅ์ด ์ค์ด๋ฌ

- ฯฮป^2*I: ๋
ธ์ด์ฆ์ ๋ถ์ฐ์ ๋ํ๋ด๋ ํญ
- ๋ ธ์ด์ฆ๊ฐ ๋ง์ด ์ถ๊ฐ๋ ์๋ก ์ด ๊ฐ์ ์ปค์ง

- : ๊ฐ์ฐ์์ ๋ถํฌ๋ฅผ ์๋ฏธํ๋ฉฐ, ํ๊ท ์ ฮฑฮปx, ๋ถ์ฐ์ ฯฮป^2
- Forward Process ์์๋ ์๊ฐ t ๊ฐ ์ฆ๊ฐํจ์ ๋ฐ๋ผ:
- ฮฑฮป๋ ๊ฐ์ โ ์๋ณธ ๋ฐ์ดํฐ์ ์ํฅ ๊ฐ์ (์ ํธ ์ฝํ)
- ฯฮป^2๋ ์ฆ๊ฐ โ ๋ ธ์ด์ฆ์ ์ํฅ ์ฆ๊ฐ
- ๊ทธ๋ฌ๋ SNR์ ๋ก๊ทธ ์ค์ผ์ผ ฮปโ๋ ์ด์ ๋ฐ๋๋ก, ฮปโ๊ฐ ํด์๋ก ๋ ธ์ด์ฆ๊ฐ ์ ๊ณ (๊นจ๋ํ ๋ฐ์ดํฐ), ฮปโ๊ฐ ์์์๋ก ๋ ธ์ด์ฆ๊ฐ ๋ง๋ค.
- Forward Process ์์๋ ์๊ฐ์ด ์ง๋จ์ ๋ฐ๋ผ ฮปโ๊ฐ ์์์ง๋๋ค.
- ๊ฒฐ๊ตญ zฮป ๋ ์ ์ ์์ ํ ๋ ธ์ด์ฆํ๋ ๊ฐ์ฐ์์ ๋ถํฌ์ ๊ฐ๊น์์ง๋๋ค.
์์ (2) ์ค๋ช

- q(zฮปโฒโโฃzฮปโ): ์๊ฐ ฮป ๋จ๊ณ์ ๋ ธ์ด์ฆ ๋ฐ์ดํฐ zฮปโ ์์ ๋ ๋ง์ ๋ ธ์ด์ฆ๋ฅผ ์ถ๊ฐํ์ฌ ๋ค์ ๋จ๊ณ ฮปโฒ ์ ๋ฐ์ดํฐ zฮปโฒ ๋ก ์ ํํ๋ ํ๋ฅ ๋ถํฌ
- โ(ฮฑฮปโฒโ/ ฮฑฮป)โ zฮป: ์ด์ ๋จ๊ณ์ ๋ฐ์ดํฐ zฮป ๋ฅผ ์ค์ผ์ผ๋งํ ๊ฐ์ผ๋ก, ๊ธฐ์กด ์ ๋ณด์ ์ ์ง ์ ๋๋ฅผ ๊ฒฐ์
-

- ์ด ์์์ ๋ ธ์ด์ฆ ์ถ๊ฐ๋ฅผ ์ฌ๋ฌ ๋จ๊ณ๋ก ๋๋ ์ ์ ์ง์ ์ผ๋ก ์ ์ฉํ๋ ๊ณผ์ ์ ์ค๋ช ํฉ๋๋ค.
- ์ด ๊ณผ์ ์ด Markov Process (๋ง๋ฅด์ฝํ ๊ณผ์ ) ์ฒ๋ผ ์ด์ ์ํ์๋ง ์์กดํ์ฌ ๋ค์ ์ํ๋ก ์ ์ด๋ฉ๋๋ค.
<Back Process>
์์ (3) ์ค๋ช

- :
- ์๊ฐ ฮป ๋จ๊ณ์์์ ๋
ธ์ด์ฆ ๋ฐ์ดํฐ zฮป ๋ก๋ถํฐ
๋ ์ ์ ๋ ธ์ด์ฆ ๋จ๊ณ์ธ zฮปโฒ ๋ก ์ ํํ๋ ํ๋ฅ ๋ถํฌ - ์ ๊ท ๋ถํฌ(๊ฐ์ฐ์์ ๋ถํฌ)๋ฅผ ๋ฐ๋ฆ
- ์๊ฐ ฮป ๋จ๊ณ์์์ ๋
ธ์ด์ฆ ๋ฐ์ดํฐ zฮป ๋ก๋ถํฐ
- ํ๊ท (Mean)
- ์ฒซ๋ฒ์งธ ํญ: ๊ธฐ์กด ๋ ธ์ด์ฆ ๋ฐ์ดํฐ zฮป ์ ์ํฅ
- ๋๋ฒ์งธ ํญ: ์๋ณธ ๋ฐ์ดํฐ x ์ ์ํฅ
- : ๋ ธ์ด์ฆ ๋จ๊ณ ๊ฐ์ ๊ฐ์ค์น๋ก, ฮปโฒ>ฮป ์ผ์๋ก ๋ ๋ง์ ๋ณต์(๋ ธ์ด์ฆ ์ ๊ฑฐ)์ด ์ด๋ฃจ์ด์ง

- ๋ถ์ฐ(Variance)
- ๋ ธ์ด์ฆ ๊ฐ์๋์ ์กฐ์ ํ๋ ๋ถ์ฐ ํญ

- ์ด ์์์ ๋ ธ์ด์ฆ๋ฅผ ์ ๊ฑฐํ๋ฉด์ ์๋ณธ๋ฐ์ดํฐ๋ก ๋ณต์ํ๋ ๊ณผ์ ์ ๋๋ค.
- ์ญ๋ฐฉ ๊ณผ์ ์์ ์ํ์ ๊ธฐ์กด ๋ ธ์ด์ฆ ๋ฐ์ดํฐ์ ์ ๋ณด์ ์๋ณธ ๋ฐ์ดํฐ์ ์ ๋ณด๋ฅผ ์ ์ ํ ํผํฉํฉ๋๋ค.
- ๋ ธ์ด์ฆ๊ฐ ์ ์ ๋จ๊ณ๋ก ๊ฐ์๋ก ์๋ณธ ๋ฐ์ดํฐ์ ๋น์ค์ด ์ ์ ์ปค์ง๊ฒ ๋ฉ๋๋ค.
์์ (4) ์ค๋ช

- pฮธ(zฮปโฒโฃzฮป)
- ๋ชจ๋ธ ฮธ ๊ฐ ํ์ตํ ์ญ๋ฐฉํฅ ํ๋ฅ ๋ถํฌ
โ ์ฆ, ๋ ธ์ด์ฆ๋ฅผ ์ ์ง์ ์ผ๋ก ์ ๊ฑฐํ๋ฉฐ ๋ค์ ์ํ zฮปโฒ ๋ก ์ด๋ํ๋ ๊ณผ์ - ์ ๊ท๋ถํฌ(๊ฐ์ฐ์์๋ถํฌ)๋ก ํํ๋จ : N(ํ๊ท (Mean),๋ถ์ฐ(Variance))
- ๋ชจ๋ธ ฮธ ๊ฐ ํ์ตํ ์ญ๋ฐฉํฅ ํ๋ฅ ๋ถํฌ
- ํ๊ท (Mean):
- : ํ์ฌ ๋จ๊ณ์ ๋ ธ์ด์ฆ ๋ฐ์ดํฐ
- xฮธ(zฮป)
- ๋ชจ๋ธ์ด ์์ธกํ ์๋ณธ ๋ฐ์ดํฐ ๋ณต์ ๊ฒฐ๊ณผ (denoising output)
- ๋ชจ๋ธ์ด zฮป๋ก๋ถํฐ "์ด๋ฐ ๋ฐ์ดํฐ๊ฐ ์๋ณธ์ผ ๊ฒ์ด๋ค"๋ผ๊ณ ์ถ์ ํ ๊ฐ
- ๋ถ์ฐ(Variance):
- :
- ๋ชจ๋ธ์ด ์ถ์ ํ ์ญ๋ฐฉํฅ ๊ณผ์ ์ ๋ถ์ฐ
- ์ค์ ๋ก ๋ ธ์ด์ฆ๋ฅผ ์ ๊ฑฐํ๋ ๊ณผ์ ์์ ์ฌ์ฉํ๋ ๋ถ์ฐ ๊ฐ
- ๋ค์ ํญ:
- ์ด๋ก ์ ์ธ ์ ๋ฐฉ ๊ณผ์ ์ ๋ถ์ฐ ๊ฐ (forward process์ ground truth ๋ถ์ฐ)
- ์ค์ ๋ฐ์ดํฐ ๋ถํฌ์์ ์ ๋๋ ์ด์์ ์ธ ๋ถ์ฐ ๊ฐ
- ฮฝ:
- ๋ถ์ฐ ๋ณด๊ฐ(interpolation) ๊ณ์
- 0 โค ฮฝ โค 10์ฌ์ด์ ๊ฐ์ผ๋ก,
๋ชจ๋ธ์ด ์ถ์ ํ ๋ถ์ฐ๊ณผ ์ด๋ก ์ ์ธ ๋ถ์ฐ ์ฌ์ด๋ฅผ ์กฐ์
- :
์์ (5) ์ค๋ช

- ์์ค ํจ์๋ "๋ชจ๋ธ์ด ์ค์ ๋ ธ์ด์ฆ๋ฅผ ์ผ๋ง๋ ์ ๋ณต์(denoise)ํ๋์ง"๋ฅผ ํ๊ฐํฉ๋๋ค.
- ์๋ณธ ๋ฐ์ดํฐ x ์ ๋ ธ์ด์ฆ ฯต ๋ฅผ ์ถ๊ฐํ์ฌ zฮป ์์ฑ
- ๋ชจ๋ธ ฮธ ๊ฐ ๋ฅผ ์ ๋ ฅ์ผ๋ก ๋ฐ์ ๋ ธ์ด์ฆ ฯต ๋ฅผ ์์ธก
- ๋ชจ๋ธ์ ์์ธก๊ฐ ฯตฮธ(zฮป) ์ ์ค์ ๋ ธ์ด์ฆ ฯต ์ ์ฐจ์ด๋ฅผ ๊ณ์ฐ
- ์ด ์ฐจ์ด๋ฅผ ์ต์ํํ๋๋ก ๋ชจ๋ธ์ ํ์ต
๊ธฐ์กด ๋ด์ฉ vs ์๋ก์ด ๊ธฐ์ฌ
๊ฐ๋ | ๊ธฐ์กด Diffusion ๋ชจ๋ธ | ์ด ๋ ผ๋ฌธ์์์ ์๋ก์ด ๊ธฐ์ฌ |
Denoising Score Matching (DSM) | โ Vincent (2011), Song & Ermon (2019) | ๊ธฐ์กด DSM์ ํ์ฉ, ๋ค์ํ ๋ ธ์ด์ฆ ์ค์ผ์ผ์์ ํ์ฅ ์ ์ฉ |
Variational Lower Bound (VLB) | โ Kingma et al. (2021) | Weighted VLB๋ก ํด์ํ์ฌ ์ํ ํ์ง ์กฐ์ ๊ฐ์ |
Noise Schedule (Cosine) | โ Nichol & Dhariwal (2021) | ํ์ดํผ๋ณผ๋ฆญ ์์ปจํธ ๋ถํฌ ๊ธฐ๋ฐ ๋ ธ์ด์ฆ ์ค์ผ์ค๋ง ์ ์ |
Classifier Guidance | โ Ho et al. (2020) | Classifier-Free Guidance๋ก ๋ถ๋ฅ๊ธฐ ์์ด ํ์ง ๊ฐ์ |
Langevin Dynamics | โ Song & Ermon (2019) | ๊ธฐ์กด ๊ฐ๋ ์ ์ง, ๋ชจ๋ธ ํจ์จ์ฑ ๋ฐ ์ํ ํ์ง ๊ฐ์ |
- ๊ธฐ์กด (๋น์กฐ๊ฑด๋ถ): ฮธ(zฮป) โ ๋จ์ํ ๋ ธ์ด์ฆ zฮป ๋ง ์ ๋ ฅ์ผ๋ก ๋ฐ์
- ์กฐ๊ฑด๋ถ ๋ชจ๋ธ: ฮธ(zฮป,c) โ ๋ ธ์ด์ฆ zฮป ๋ฟ๋ง ์๋๋ผ ์กฐ๊ฑด c๋ ํจ๊ป ์ ๋ ฅ์ผ๋ก ๋ฐ์์ "์กฐ๊ฑด์ ๋ง๋ ๊ฒฐ๊ณผ"
Guidance
GAN์ด๋ flow-based model์ ๊ฒฝ์ฐ, ์ํ๋ง ์์ ๋ถ์ฐ์ด๋ ์ ๋ ฅ noise์ ๋ฒ์๋ฅผ ์ค์ฌ truncated sampling์ด๋ low temperature sampling์ ์ํํ๋ค. ์ด๋ฐ ๋ฐฉ๋ฒ๋ค์ ์ํ์ ๋ค์์ฑ์ ์ค์ด๋ฉด์ ๊ฐ ์ํ์ ํ์ง์ ๋์ธ๋ค. ํ์ง๋ง, diffusion model์ ๊ฒฝ์ฐ ์ด๋ฌํ ๋ฐฉ๋ฒ๋ค์ด ํจ๊ณผ์ ์ด์ง ์๋ค.
Classifier Guidance

- ฯต ฬฮธ(zฮป, c)
- Guided Score Function (์์ ๋ ์ค์ฝ์ด ํจ์)
- ์ํ๋ง ๊ณผ์ ์์ ์ฌ์ฉ๋๋ ์ต์ข ์ค์ฝ์ด์ด๋ค.
- ฯต ฮธ(zฮป, c)
- ๊ธฐ์กด ํ์ฐ ๋ชจ๋ธ์ ์ค์ฝ์ด ํจ์
- ์๋๋ ์ด ํจ์๋ก ์ํ์ ์์ฑํ๋ค.
- w
- classifier guidance strength (๊ฐ์ค์น)
- ํด์๋ก ์ํ ํ์ง(fidelity) ๊ฐ ํฅ์๋์ง๋ง, ๋ค์์ฑ(diversity) ๋ ๊ฐ์ํ๋ค.
-
- Classifier์ ๊ทธ๋๋์ธํธ(gradient)
- ๋ฐ์ดํฐ zฮป๊ฐ ์กฐ๊ฑด c์ ๋ ์ ํฉํ๋๋ก ์ํ์ "๋์ด๋น๊ธฐ๋" ์ญํ ์ ํฉ๋๋ค.
โ Classifier Guidance ์ ํจ๊ณผ
- Inception Score (IS) ํฅ์
- inception score ์ ๋ชจ๋ธ์ด ์์ฑํ ์ํ์ด ๋ถ๋ฅํ๊ธฐ ์ฌ์ธ์๋ก ๋๊ฒ ๋์ต๋๋ค.
- classifier guidance ๋ ๋ถ๋ฅ๊ธฐ๊ฐ ์ ๋ง์ถ ์ ์๋ ์ํ์ ์์ฑํ๊ธฐ ๋๋ฌธ์ inception score ๊ฐ ๋์์ง๋๋ค.
- ๋ค์์ฑ ๊ฐ์
- ์ํ๋ค์ด ๋ถ๋ฅ๊ธฐ ๊ธฐ์ค์ผ๋ก ํ์ ํ ์ ์๋ ์์ญ์ ๋ชฐ๋ฆฌ๊ฒ ๋ฉ๋๋ค
- ์ด๋ก ์ธํด ๋ค์ํ ์ํ์ด ์ค์ด๋ค๊ณ , ๋์ผํ ํจํด์ ์ํ์ด ๋ฐ๋ณต๋๋ ๋ฌธ์ ๊ฐ ๋ฐ์ํฉ๋๋ค.
์ด์ Classifier Guidance ๋ ผ๋ฌธ์์๋
"๋น์กฐ๊ฑด๋ถ ๋ชจ๋ธ์ Classifier Guidance๋ฅผ ์ ์ฉํ ๊ฒ๋ณด๋ค
์ด๋ฏธ ์กฐ๊ฑด๋ถ๋ก ํ์ต๋ ๋ชจ๋ธ์ Guidance๋ฅผ ์ถ๊ฐํ๋ ๊ฒ์ด ์ํ ํ์ง์ด ๋ ์ฐ์"
ํ๋ค๋ ๊ฒฐ๋ก ์ ๋์ถํ์์ต๋๋ค.
์ด๋ ์กฐ๊ฑด๋ถ ๋ชจ๋ธ์์ w์ ๊ฐ์ค์น๋ฅผ ์ ์ฉํ ๊ฒฐ๊ณผ๊ฐ
๋น์กฐ๊ฑด๋ถ ๋ชจ๋ธ์์ w+1 ๊ฐ์ค์น๋ฅผ ์ ์ฉํ ๊ฒฐ๊ณผ์ ๊ฐ์๊ธฐ ๋๋ฌธ์
๋๋ค.
โ ๊ฒฐ๋ก :
- ์กฐ๊ฑด๋ถ ๋ชจ๋ธ + Classifier Guidance = ๋ ๋์ ์ํ ํ์ง ๋ฐ ๋ค์์ฑ ์ ์ง
- ๋น์กฐ๊ฑด๋ถ ๋ชจ๋ธ + ๊ฐํ Guidance = ํ์ง์ ๋์ง๋ง, ๋ค์์ฑ ๊ฐ์ ๋ฐ ๋ถ์์ ์ฑ ์ฆ๊ฐ


Classifier-Free Guidance
โ ๊ธฐ๋ณธ ๊ฐ๋
- Unconditional Diffusion Model:
- ์กฐ๊ฑด ์์ด ์์ํ ๋ฐ์ดํฐ ๋ถํฌ p(x) ๋ฅผ ํ์ต
- ์ํ๋ง ์ ๋จ์ํ ๋ ธ์ด์ฆ์์ ์์ํ์ฌ ๋ฐ์ดํฐ๋ก ๋ณต์
- Conditional Diffusion Model:
- ์กฐ๊ฑด c (์: ํด๋์ค ๋ ์ด๋ธ, ํ ์คํธ ๋ฑ)์ ๋ฐ๋ผ ์ํ ์์ฑ
- ์กฐ๊ฑด์ ๋ง๋ ๋ฐ์ดํฐ ๋ถํฌ p(xโฃc) ๋ฅผ ํ์ต
๋ ผ๋ฌธ์์๋ ๋ ๊ฐ์ ๋ชจ๋ธ์ ๋ฐ๋ก ํ์ตํ์ง ์๊ณ , ํ๋์ ์ ๊ฒฝ๋ง ฯตฮธโ(zฮปโ,c) ์ผ๋ก Unconditional ๊ณผ Conditional ๋ชจ๋ธ์ ๋์์ ํ์ต์ํต๋๋ค.
โ ํต์ฌ ์์ด๋์ด:
- ์กฐ๊ฑด c ๋ฅผ ์ผ๋ถ ํ๋ฅ ๋ก ๋นํ์ฑํํ์ฌ Unconditional ๋ชจ๋ธ๋ก ํ์ต
- ์ฌ๊ธฐ์ โ ๋ "์กฐ๊ฑด ์์"์ ๋ํ๋ด๋ ํน์ ํ ํฐ ๋๋ Null ๊ฐ

- ๋๋จธ์ง ๊ฒฝ์ฐ์๋ ์กฐ๊ฑด c ๋ฅผ ํ์ฑํํ์ฌ Conditional ๋ชจ๋ธ๋ก ํ์ต

์๋ ์๊ณ ๋ฆฌ์ฆ 1์ Single Neural Network ๋ก conditional diffusion model ๊ณผ unconditional diffusion model ๋๋ค ๊ฒฐํฉํ์ฌ ํ์ต์ํค๋ ๊ณผ์ ์ ๋ด์ Joint Training ๊ณผ์ ์ ๋๋ค.

์์ ์๊ณ ๋ฆฌ์ฆ 1์์ 3๋ฒ์งธ ์ค์ ๋ณด๋ฉด Puncond ํ๋ฅ ์ ์ฌ์ฉํ์ฌ Unconditional ๋ก ์ฌ์ฉํ๋์ง ์๋์ง๋ฅผ ์ฒ๋ฆฌํฉ๋๋ค.

- ๋น์จ๋ก ์กฐ๊ฑด์ ์ ๊ฑฐํ์ฌ Unconditional ๋ชจ๋ธ๋ก ํ์ต
- 1โpuncond๋น์จ๋ก ์ค์ ์กฐ๊ฑด c ๋ฅผ ์ ๊ณตํ์ฌ Conditional ๋ชจ๋ธ๋ก ํ์ต
- ์ฌ๊ธฐ์ Puncond ๋ ํ์ตํ ์ ์๋ ํ๋ผ๋ฏธํฐ
Joint Training ์ ์์คํจ์๋ ๋ค์๊ณผ ๊ฐ์ด ํํํ ์ ์์ต๋๋ค.

- (7๋ฒ์งธ ์ค) ๋ชจ๋ธ์ Loss ๊ฐ์ ํ์ฉํ์ฌ
- ๋ ธ์ด์ฆ ฯต ๋ฅผ ์ ํํ ์์ธกํ๋๋ก ํ์ต๋ฉ๋๋ค.
- Classifier-Free Guidance ํ์ต:
-
- ํ๋ฅ puncond ๋ก ์กฐ๊ฑด ์์ด(Unconditional) ํ์ต
- ๋๋จธ์ง ํ๋ฅ ๋ก๋ ์กฐ๊ฑด๋ถ(Conditional) ํ์ต ์ํ
์ ์ด์ ์ด ๋ ผ๋ฌธ์ Classifier-Free Guidance ์ main ์ ์ ๋๋ค!! ๐๐

- : ์กฐ๊ฑด๋ถ ๋ชจ๋ธ์ ๋ ธ์ด์ฆ ์ถ์
- ฯตฮธ(z,โ ): ๋น์กฐ๊ฑด๋ถ ๋ชจ๋ธ์ ๋ ธ์ด์ฆ ์ถ์
- w: Guidance Strength (์ํ ํ์ง๊ณผ ๋ค์์ฑ ์กฐ์ )
์๊ณ ๋ฆฌ์ฆ 2๋ ์กฐ๊ฑด ์ํ๋ง ๊ณผ์ ์ ๋ํ๋ธ ์๊ณ ๋ฆฌ์ฆ ์ ๋๋ค.

์๊ณ ๋ฆฌ์ฆ 2์ ์ฃผ์ ๊ตฌ์ฑ ์์
- ์
๋ ฅ ๋งค๊ฐ๋ณ์
- w: Guidance Strength. ์ด ๊ฐ์ ์กฐ๊ฑด๋ถ ์์ฑ์์ ์กฐ๊ฑด ์ ๋ณด์ ์ค์๋๋ฅผ ์กฐ์ ํฉ๋๋ค.
- c: Conditioning information. ์ด๋ ์์ฑ ๊ณผ์ ์์ ๋ชจ๋ธ์ด ๋ฐ๋ผ์ผ ํ ์กฐ๊ฑด์ ๋ํ๋ ๋๋ค.
- : ๋ก๊ทธ ์ ํธ ๋ ์ก์ ๋น์จ(log SNR)์ ์ฆ๊ฐํ๋ ์ํ์ค. ์์ฑ ๊ณผ์ ์์์ ๋ ธ์ด์ฆ ์์ค์ ์กฐ์ ํฉ๋๋ค.
- ์ด๊ธฐํ
- z1โผN(0,I): ์ด๊ธฐ ์ํ์ ํ์ค ์ ๊ท ๋ถํฌ์์ ์ถ์ถ๋ฉ๋๋ค.
- ๋ฐ๋ณต๊ณผ์
- ๊ฐ ์๊ฐ ๋จ๊ณ t ์์, Classifier-Free Guidance ๋ฅผ ์ฌ์ฉํ์ฌ ์กฐ๊ฑด๋ถ ์์ฑ๊ณผ ๋ฌด์กฐ๊ฑด๋ถ ์์ฑ์ ๊ฒฐํฉํฉ๋๋ค.
- 3๋ฒ์งธ ์ค: ์กฐ๊ฑด๋ถ์ ๋ฌด์กฐ๊ฑด๋ถ ์์ฑ์ ๊ฐ์ค ํ๊ท ์ ๊ณ์ฐํ์ฌ ๊ฐ์ด๋์ค๋ฅผ ์ ์ฉํฉ๋๋ค.
- ์ํ๋ง ๋จ๊ณ์์๋ ๊ณ์ฐ๋ ์ค์ฝ์ด๋ฅผ ์ฌ์ฉํ์ฌ ๋ค์ ์ํ์ ์์ฑํฉ๋๋ค.
- 4๋ฒ์งธ ์ค: ๋ ธ์ด์ฆ๋ฅผ ์ ๊ฑฐํ๊ณ ์ํ์ ๊ฐ์ ํฉ๋๋ค.
- 5๋ฒ์งธ ์ค: ๋ค์ ์ํ zt+1 ์ ์ ๊ท ๋ถํฌ์์ ์ถ์ถ๋๋ฉฐ, ์ด ๋ถํฌ์ ํ๊ท ๊ณผ ๋ถ์ฐ์ ์ด์ ์ํ๊ณผ ๊ณ์ฐ๋ ๊ฐ์ ์ํด ๊ฒฐ์ ๋ฉ๋๋ค.
- ๊ฐ ์๊ฐ ๋จ๊ณ t ์์, Classifier-Free Guidance ๋ฅผ ์ฌ์ฉํ์ฌ ์กฐ๊ฑด๋ถ ์์ฑ๊ณผ ๋ฌด์กฐ๊ฑด๋ถ ์์ฑ์ ๊ฒฐํฉํฉ๋๋ค.
์ ๋ฆฌ ๐ง
ํญ๋ชฉ | Algorithm 1 (ํ์ต) | Algorithm 2 (์ํ๋ง) |
๋ชฉ์ | ๋ชจ๋ธ ํ์ต (๋ ธ์ด์ฆ ์ ๊ฑฐ ๋ฅ๋ ฅ ํ์ต) | ์๋ก์ด ๋ฐ์ดํฐ ์์ฑ (์ํ๋ง) |
๊ณผ์ | Forward Process (๋ ธ์ด์ฆ ์ถ๊ฐ) | Reverse Process (๋ ธ์ด์ฆ ์ ๊ฑฐ) |
์ถ๋ ฅ ๊ฒฐ๊ณผ | ๋ ธ์ด์ฆ๋ฅผ ์ ํํ๊ฒ ์์ธกํ๋ ๋ชจ๋ธ ฯตฮธ | ์๋ณธ๊ณผ ์ ์ฌํ ์๋ก์ด ๋ฐ์ดํฐ ์์ฑ |
ํต์ฌ ํ๋ผ๋ฏธํฐ | puncond (Unconditional ํ์ต ํ๋ฅ ) | w (Guidance Strength) |
์ญํ | ์กฐ๊ฑด๋ถ/๋น์กฐ๊ฑด๋ถ ๋ฐ์ดํฐ๋ก ๋ชจ๋ธ ํ์ต | ํ์ต๋ ๋ชจ๋ธ์ ์ฌ์ฉํ์ฌ ๊ณ ํ์ง ์ํ ์์ฑ |
CFG ์ ์ฉ ์ฌ๋ถ | โ Classifier-Free Guidance๋ฅผ ์ํ ์ค์ฝ์ด ํ์ต | โ Classifier-Free Guidance๋ฅผ ์ ์ฉํ์ฌ ์ํ ํ์ง ํฅ์ |
Experiments
์ด ๋ ผ๋ฌธ์์๋ Classifier-Free Guidance (CFG) ์ ํจ๊ณผ๋ฅผ ๊ฒ์ฆํ๊ธฐ ์ํด ๋ค์ํ ํ์ดํผ ํ๋ผ๋ฏธํฐ๋ฅผ ์กฐ์ ํ๋ฉด์ ์คํ์ ์งํํ๋ค.
์คํ์ ์ํ ํ์ง(Fidelity), ๋ค์์ฑ(Diversity), ํจ์จ์ฑ(Efficiency) ์ ๋ฏธ์น๋ ์ํฅ์ ๋ถ์ํ๋ ๋ฐ ์ด์ ์ ๋ง์ท๋ค.
- Varying the Classifier-Free Guidance Strength
- w โ {0, 0.1, 0.2, . . . , 4}
- log SNR endpoints
- ฮปmin = โ20 and ฮปmax = 20
- 64 x 64 models
- noise interpolation coefficient: v = 0.3
- trained for 400,000 steps
- 128 x 128 models
- v = 0.2
- trained for 2,700,000 steps
- Varying the Unconditional Training Probability
- puncond โ {0.1, 0.2, 0.5}
- 0.1,0.2 ์์ ๊ฐ์ฅ ์ข์ ์ฑ๋ฅ
- 0.5 ์์๋ ์ฑ๋ฅ์ด ์ ํ๋จ
- Varying the Number of Smapling Steps
- T โ {128, 256, 1024}
- 256 ์ด ๊ฒฐ๊ณผ๊ฐ ๊ฐ์ฅ ๋ฐธ๋ฐ์ค๊ฐ ์ข์์
Discussion
- CFG๋ ์ํ์ Unconditional Likelihood(p(x))๋ฅผ ๊ฐ์์ํค๊ณ , Conditional Likelihood(p(xโฃc))๋ฅผ ์ฆ๊ฐ์ํค๋ ๋ฐฉ์์ผ๋ก ์๋ํฉ๋๋ค.
- Classifier-Free Guidance๋ ์ํ๋ง ์๋(Sampling Speed)์ ๋ถ๋ฆฌํ ์ ์๋ค. ์๋ํ๋ฉด Diffusion Model์ Forward Pass๋ฅผ ๋ ๋ฒ ์คํํด์ผ ํ๊ธฐ ๋๋ฌธ์ด๋ค.
- (1) ํ์ต ๊ณผ์ (Training Phase)์์๋?
- Forward Process(๋ ธ์ด์ฆ ์ถ๊ฐ)๋ Unconditional๊ณผ Conditional์ ๋ฐ๋ก ๋ ๋ฒ ์งํํ์ง ์์ต๋๋ค.
- ํ๋ฅ ์ ์ผ๋ก ์กฐ๊ฑด์ ์ ๊ฑฐํ์ฌ Unconditional ๋ฐ์ดํฐ๋ฅผ ํจ๊ป ํ์ตํฉ๋๋ค.
- ์ฆ, ํ์ต ์์๋ ํ ๋ฒ์ Forward Pass๋ง ์ํ๋ฉ๋๋ค.
- (2) ์ํ๋ง ๊ณผ์ (Sampling Phase)์์๋?
- ์ํ๋ง ๋จ๊ณ์์๋ Classifier-Free Guidance (CFG)๊ฐ ์ ์ฉ๋ฉ๋๋ค.
- ์ํ ํ์ง์ ๊ฐ์ ํ๊ธฐ ์ํด Conditional Score์ Unconditional Score๋ฅผ ํจ๊ป ์ฌ์ฉํฉ๋๋ค.
- ์ด๋ฅผ ์ํด ์ํ๋ง ๊ณผ์ ์์ ๋ ๋ฒ์ Forward Pass๊ฐ ํ์ํฉ๋๋ค.
- ์ฒซ ๋ฒ์งธ Forward Pass:
- Conditional Score ฯตฮธ(z,c) ๊ณ์ฐ
- ์ฆ, ์กฐ๊ฑด c ๋ฅผ ํฌํจํ ์์ธก ์ํ
- ๋ ๋ฒ์งธ Forward Pass:
- Unconditional Score ฯตฮธ(z) ๊ณ์ฐ
- ์ฆ, ์กฐ๊ฑด ์์ด ์์ธก ์ํ
- Guidance ์ ์ฉ:
- ๋ ๊ฐ์ ์ค์ฝ์ด๋ฅผ ์กฐํฉํ์ฌ ์ต์ข ์ํ๋ง ์ํ
- ฯต~ฮธ(z,c)=(1+w)โ ฯตฮธ(z,c)โwโ ฯตฮธ(z)
- ์ฌ๊ธฐ์ ฯตฮธ(z,c)์ ฯตฮธ(z)๋ฅผ ๋ ๋ค ์ฌ์ฉํด์ผ ํ๋ฏ๋ก
Forward Pass๋ฅผ ๋ ๋ฒ ์คํํด์ผ ํจ.
- (1) ํ์ต ๊ณผ์ (Training Phase)์์๋?
CFG๊ฐ Unconditional ๋ชจ๋ธ์ ํ์๋ก ํ๋ ํต์ฌ ์ด์
๊ธฐ์กด ์กฐ๊ฑด๋ถ ๋ชจ๋ธ๋ง ์ฌ์ฉํ ๊ฒฝ์ฐ | Unconditional ๋ชจ๋ธ์ ํจ๊ป ํ์ตํ ๊ฒฝ์ฐ |
ํน์ ์กฐ๊ฑด์ ๋๋ฌด ๊ฐํ๊ฒ ๋ฐ๋ฆ | ์กฐ๊ฑด์ ๋ฐ๋ฅด๋ฉด์๋ ์ํ ๋ค์์ฑ์ ์ ์ง ๊ฐ๋ฅ |
๋ชจ๋ธ์ด ํน์ ๋ชจ๋(mode)์ ๊ฐํ | ๋ ๋์ ๋ฐ์ดํฐ ๋ถํฌ๋ฅผ ๋ฐ์ํ์ฌ ์ํ๋ง ํ์ง ํฅ์ |
๋ค์ํ ์ํ์ ์์ฑํ๊ธฐ ์ด๋ ค์ | ww ๊ฐ์ ์กฐ์ ํ์ฌ ํ์ง๊ณผ ๋ค์์ฑ ์กฐ์ ๊ฐ๋ฅ |
๐ก๐ก๐ก
๋ ผ๋ฌธ์ ์ฝ๋ค๊ฐ ๋ ์๋ฌธ์ ์ ๋๋ค.
์ด๋ฏธ ์กฐ๊ฑด๋ถ ํ์ฐ ๋ชจ๋ธ์ด ์กด์ฌํ๋๋ฐ,
์ CG (Classifier Guidance)์ CFG (Classifier-Free Guidance) ๋ ผ๋ฌธ์ด ์ค์ํ๊ฐ?
๊ทธ์ ๋ํ ๋ต ์ ๋๋ค.
๐ 1. ์กฐ๊ฑด๋ถ ํ์ฐ ๋ชจ๋ธ(Conditional Diffusion Model)์ ์ด๋ป๊ฒ ๋ง๋ค์ด์ง๋๊ฐ?
์กฐ๊ฑด๋ถ ํ์ฐ ๋ชจ๋ธ์ ์ฃผ์ด์ง ์กฐ๊ฑด c๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํน์ ํ ๋ฐ์ดํฐ๋ฅผ ์์ฑํ๋ ํ์ฐ ๋ชจ๋ธ์
๋๋ค.
์ด ๋ชจ๋ธ์ ๊ธฐ๋ณธ์ ์ธ Diffusion Process๋ฅผ ๋ฐ๋ฅด์ง๋ง, ํ์ต ๊ณผ์ ์์ ์ถ๊ฐ์ ์ธ ์กฐ๊ฑด์ ๋ชจ๋ธ์ ์ ๊ณตํ์ฌ ์ ์ด ๊ฐ๋ฅํ๊ฒ ๋ง๋ญ๋๋ค.
โ (1) ๊ธฐ๋ณธ์ ์ธ ์กฐ๊ฑด๋ถ ํ์ฐ ๋ชจ๋ธ์ ๊ตฌ์กฐ
ฯตฮธ(z,c)
- z: ๋ ธ์ด์ฆ๊ฐ ์ถ๊ฐ๋ ์ด๋ฏธ์ง (Diffusion Step)
- c: ์กฐ๊ฑด (์: ํด๋์ค ๋ ์ด๋ธ, ํ ์คํธ, ํฌ์ฆ ์ ๋ณด ๋ฑ)
- ฯตฮธ(z,c): ์กฐ๊ฑด๋ถ ๋ชจ๋ธ์ด ์์ธกํ๋ ๋ ธ์ด์ฆ
๐ ์์ค ํจ์ (Loss Function)

- ๋ชจ๋ธ์ด ๋ ธ์ด์ฆ ์ ๊ฑฐ ๋ฐฉํฅ์ ํ์ตํ๋๋ก ํจ.
๐ ์กฐ๊ฑด์ ์ ๋ ฅํ๋ ๋ฐฉ๋ฒ
- ํด๋์ค ๋ ์ด๋ธ ์ฌ์ฉ (One-hot Encoding or Embedding)
- ์: "๊ฐ์์ง" ํด๋์ค๋ผ๋ฉด c๋ฅผ ์ซ์ ๋ฒกํฐ๋ก ๋ณํํ์ฌ ๋ชจ๋ธ์ ์ ๋ ฅ.
- ํ
์คํธ ์ฌ์ฉ (CLIP, Cross-Attention ๋ฑ ํ์ฉ)
- ํ ์คํธ๋ฅผ ๋ฒกํฐ๋ก ๋ณํํ ํ ๋ชจ๋ธ ๋ด๋ถ์์ ์กฐ๊ฑด์ผ๋ก ์ฌ์ฉ.
- ํฌ์ฆ, Depth Map ๋ฑ ๊ตฌ์กฐ ์ ๋ณด ํ์ฉ
- ํน์ ํ ํฌ์ฆ๋ ๋ชจ์์ ์ ์งํ๋ฉด์ ์ํ์ ์์ฑํ๋๋ก ์ ๋.
ํ์ง๋ง ์ด CG ์ CFG ๋ ผ๋ฌธ์์๋ CLIP ์ ์ฌ์ฉํ์ง ์์๊ณ , Cross-Attention ์ ์ด์ฉํ Stable Diffusion ๋ชจ๋ธ์ด ๋ฐํ๋๊ธฐ ์ ์ ๋์๊ธฐ ๋๋ฌธ์ "1๋ฒ: ํด๋์ค ๋ ์ด๋ธ" ์ ์ฌ์ฉํ์ต๋๋ค.
์ด CFG ๋ ผ๋ฌธ์์๋ ํด๋์ค ๋ ์ด๋ธ์ด ๋ถ์ด์๋ ๋ฐ์ดํฐ๋ง์ ์ฌ์ฉํด์ผํ๊ธฐ ๋๋ฌธ์ ๋ค์๊ณผ ๊ฐ์ ๋ฐ์ดํฐ๋ค์ ์ฌ์ฉํ์์ต๋๋ค.
๋ฐ์ดํฐ์ | ํด์๋ | ์นดํ ๊ณ ๋ฆฌ ์ | ์ค๋ช |
CIFAR-10 | 32ร32 | 10 | ์ํ ์ด๋ฏธ์ง ๋ฐ์ดํฐ์ (๊ฐ์์ง, ๊ณ ์์ด, ์๋์ฐจ ๋ฑ) |
ImageNet 64ร64 | 64ร64 | 1,000 | ImageNet์ 64ร64๋ก ๋ค์ด์ํ๋งํ ๋ฒ์ |
LSUN-Bedroom | 256ร256 | 1 | ์ค๋ด ์ธํ ๋ฆฌ์ด (์นจ์ค) ์ด๋ฏธ์ง ์์ฑ |
LSUN-Cat | 256ร256 | 1 | ๊ณ ์์ด ์ด๋ฏธ์ง ์์ฑ |
LSUN-Horse | 256ร256 | 1 | ๋ง ์ด๋ฏธ์ง ์์ฑ |
FFHQ (Flickr-Faces-HQ) | 256ร256 | 1 | ๊ณ ํด์๋ ์ผ๊ตด ์ด๋ฏธ์ง |
๐ฏ 2. ์กฐ๊ฑด๋ถ ํ์ฐ ๋ชจ๋ธ์ด ์ด๋ฏธ ์์์๋ CG์ CFG ๋ ผ๋ฌธ์ด ์ค์ํ ์ด์
โ (1) Classifier Guidance (CG) ๋ ผ๋ฌธ์ ์์
- ๊ธฐ์กด ์กฐ๊ฑด๋ถ ํ์ฐ ๋ชจ๋ธ์ด ์๋๋ผ๋, Unconditional Diffusion Model์์ ํน์ ํ ์กฐ๊ฑด์ ์ถ๊ฐํ ๋ฐฉ๋ฒ์ ์ ์ํจ.
- ๊ธฐ์กด ๋ถ๋ฅ๊ธฐ(Classifier)์ ๊ทธ๋ผ๋์ธํธ๋ฅผ ํ์ฉํ์ฌ ํน์ ํด๋์ค๋ฅผ ๊ฐํํ๋ ๋ฐฉ์์ ์ฌ์ฉ.
๐ CG์ ํต์ฌ ์์ด๋์ด

- ๋ถ๋ฅ๊ธฐ์ ์ถ๋ ฅ ํ๋ฅ p(yโฃx) ์ ๊ธฐ๋ฐ์ผ๋ก ์ํ๋ง์ ์กฐ์ .
- ์ฆ, Unconditional Diffusion Model์ ์ถ๊ฐ์ ์ธ ํ์ต ์์ด Class-Conditional ๋ฐฉ์์ผ๋ก ์ฌ์ฉํ ์ ์์.
- ์๋ก์ด ์กฐ๊ฑด์ด ํ์ํ ๋ ๋ชจ๋ธ์ ๋ค์ ํ์ตํ ํ์ ์์ด, ๊ธฐ์กด ๋ชจ๋ธ์ ์กฐ๊ฑด์ ์ถ๊ฐ ๊ฐ๋ฅ.
๐ CG ๋ ผ๋ฌธ์ ํต์ฌ ๊ธฐ์ฌ
- ๊ธฐ์กด Diffusion Model์ด Class-Conditional๋ก ํ์ต๋์ง ์์๋, ๋ถ๋ฅ๊ธฐ๋ฅผ ์ฌ์ฉํด ํน์ ์กฐ๊ฑด์ ์ ์ฉํ ์ ์์.
- ์๋ก์ด ๋ฐ์ดํฐ์ ์ด ์ถ๊ฐ๋ ๋, Diffusion Model์ ๋ค์ ํ์ตํ ํ์ ์์ด ๋ถ๋ฅ๊ธฐ๋ง ํ์ตํ๋ฉด ๋จ.
- "๊ฐ์์ง"๋ผ๋ ์กฐ๊ฑด๋ฟ๋ง ์๋๋ผ, "์๋ ๊ฐ์์ง", "์ฌํ ๊ฐ์์ง" ๋ฑ์ ์ถ๊ฐ์ ์ธ ์์ฑ๋ ๋ถ๋ฅ๊ธฐ์ ํ์ฉ์ ํตํด ์กฐ์ ๊ฐ๋ฅ.
- ์ด๊ฑด ์ด์ ๋ฐ์ดํฐ์ ์ ์๋๋ค/ ์ฌํ๋ค ์ ๊ดํ ๋ ์ด๋ธ์ด ๋์ด์์ด์ผ์ง ์คํ์ด ๊ฐ๋ฅ
โ (2) Classifier-Free Guidance (CFG) ๋ ผ๋ฌธ์ ์์
- CG ๋ฐฉ์์ ๋ถ๋ฅ๊ธฐ(Classifier)๊ฐ ํ์ํ์ง๋ง, CFG๋ ๋ถ๋ฅ๊ธฐ ์์ด๋ ์กฐ๊ฑด์ ์กฐ์ ํ๋ ๋ฐฉ๋ฒ์ ์ ์ํจ.
- ๋ถ๋ฅ๊ธฐ ์์ด๋ ์ํ ํ์ง์ ๋์ผ ์ ์๋ ๋ฐฉ์์ ์ฐ๊ตฌํจ.
๐ CFG์ ํต์ฌ ์์ด๋์ด

- Unconditional ๋ชจ๋ธ๊ณผ Conditional ๋ชจ๋ธ์ ํจ๊ป ํ์ตํ์ฌ ๋ถ๋ฅ๊ธฐ ์์ด ์กฐ๊ฑด์ ์ ์ฉํ๋ ๋ฐฉ๋ฒ ์ ์.
- ๋ถ๋ฅ๊ธฐ์ ๊ทธ๋ผ๋์ธํธ๊ฐ ํ์ ์์ผ๋ฏ๋ก, ์ถ๊ฐ์ ์ธ ๋ถ๋ฅ๊ธฐ ํ์ต ์์ด๋ ์กฐ๊ฑด์ ๋ฐ์ํ ์ ์์.
๐ CFG ๋ ผ๋ฌธ์ ํต์ฌ ๊ธฐ์ฌ
- ๋ถ๋ฅ๊ธฐ๋ฅผ ๋ฐ๋ก ํ์ตํ ํ์ ์์ด, Diffusion Model ์์ฒด๋ง์ผ๋ก ์กฐ๊ฑด์ ์กฐ์ ํ ์ ์์.
- ์ํ๋ง ์๋๋ CG๋ณด๋ค ๋๋ฆด ์ ์์ง๋ง, ๋ชจ๋ธ ๊ตฌ์กฐ๊ฐ ๋จ์ํ๊ณ ๋ถ๋ฅ๊ธฐ ์ค๋ฅ๊ฐ ๋ฐ์ํ์ง ์์.
- ํ ์คํธ, ์ด๋ฏธ์ง ๋ฑ ๋ค์ํ ์กฐ๊ฑด์ ์์ฐ์ค๋ฝ๊ฒ ๋ฐ์ํ ์ ์์ (Stable Diffusion ๊ฐ์ ๋ชจ๋ธ์์ ํ์ฉ๋จ).
๊ธด ๊ธ ์ฝ์ด์ฃผ์ ์ gamsahapnida
์ฌ์ค ๊ฐ์ธ ๊ณต๋ถ ๊ธฐ๋ก์ฉ์ด๊ธด ํ๋ฐ...