Diffusion ๋ชจ๋ธ์ ์ด๋ฏธ์ง ์์ฑ ๋ชจ๋ธ๋ก ๊ฐ์ฅ ์ฃผ๋ชฉ๋ฐ๊ณ ์๋ ๋ชจ๋ธ ์ค ํ๋์ด๋ค.
๋ค์ํ ์๊ตฌ์กฐ๊ฑด์ ๋ง๋ ๊ณ ํ์ง ์ด๋ฏธ์ง๋ฅผ ์์ฑํ ์ ์์ ๋ฟ๋๋ฌ
ํ์ต ๋ฐ์ดํฐ์ ์๋ ํํ์ ์ด๋ฏธ์ง๋ค๋ ์ ๋ ฅ์ผ๋ก ์ฃผ์ด์ง Text๊ฐ ๋ฌ์ฌํ๋ ๋๋ก ์ด๋ฏธ์ง๋ฅผ ์์ฑํ ์ ์๋ค.
๊ทธ๋ ๋ค๋ฉด, Diffusion ๋ชจ๋ธ์ ์ด๋ป๊ฒ ์๋ก์ด ์ด๋ฏธ์ง๋ฅผ ์์ฑํด๋ด๋ ๊ฒ์ผ๊น?
์ด๋ฅผ ์ํด ๋จผ์ ๊ฐ์ฐ์์ ๋ถํฌ์ ํ์ฐ ๊ณผ์ (diffusion processes)์ด ๋ฌด์์ธ์ง ์ดํดํด๋ณด์.
๊ฐ์ฐ์์ ๋ถํฌ๋?
๋ง์ ์์ฐ ํ์๊ณผ ๋ฐ์ดํฐ๊ฐ ์ด ๋ถํฌ๋ฅผ ๋ฐ๋ฅด๊ณ ์์ผ๋ฉฐ, ์ ๊ท๋ถํฌ๋ผ๊ณ ๋ ๋ถ๋ฆฐ๋ค.
์ฐ์ ํ๋ฅ ๋ถํฌ์ ํ๋๋ก,
๊ฐ ๋ค์๊ณผ ๊ฐ์ด ์ ์๋๋ค.
- : ๋ณ์
- μ : ํ๊ท (mean)
- σ2 : ๋ถ์ฐ(variance)
- σ : ํ์ค ํธ์ฐจ(standard deviation)
๊ฐ์ฐ์์ ๋ถํฌ๋ ์ค์ฌ ๊ทนํ ์ ๋ฆฌ์ ์ํด ํฐ ํ๋ณธ์ ํ๊ท ์ด ๊ฐ์ฐ์์ ๋ถํฌ์ ๊ฐ๊น์์ง๋ ํน์ฑ์ ๊ฐ์ง๋ฏ๋ก ํต๊ณ์ ์ถ๋ก ์์ ์ค์ํ ์ญํ ์ ํ๋ค.
๐ ์ค์ฌ ๊ทนํ ์ ๋ฆฌ๋?
์ถฉ๋ถํ ํฐ ํ๋ณธ ํฌ๊ธฐ๋ฅผ ๊ฐ์ง ๋ ๋ฆฝ์ ์ด๊ณ ๋์ผํ๊ฒ ๋ถํฌ๋ ๋ฌด์์ ๋ณ์๋ค์ ํฉ์ด๋ ํ๊ท ์ ์๋ ๋ถํฌ์ ํํ์ ์๊ด์์ด ๊ฐ์ฐ์์ ๋ถํฌ(์ ๊ท ๋ถํฌ)์ ๊ทผ์ ํ๊ฒ ๋๋ค.
- ์ฝ 68%์ ๋ฐ์ดํฐ๊ฐ ํ๊ท ์์ ํ์ค ํธ์ฐจ 1 ์ด๋ด์ ์กด์ฌ
- ์ฝ 95%์ ๋ฐ์ดํฐ๊ฐ ํ๊ท ์์ ํ์ค ํธ์ฐจ 2 ์ด๋ด์ ์กด์ฌ
- ์ฝ 99.7%์ ๋ฐ์ดํฐ๊ฐ ํ๊ท ์์ ํ์ค ํธ์ฐจ 3 ์ด๋ด์ ์กด์ฌ
=> ํต๊ณ์ ์ถ๋ก ์์ ํ๋ณธ ํ๊ท ์ ์ฌ์ฉํ์ฌ ๋ชจ์(ํ๊ท , ๋ถ์ฐ ๋ฑ)๋ฅผ ์ถ์ ํ ๋ ์ ์ฉํ๋ค. ์ ๋ฐ์ ์ผ๋ก ๊ฐ์ฐ์์ ๋ถํฌ๋ ๋ํจ์ ๋ชจ๋ธ์์ ๋ ธ์ด์ฆ๋ฅผ ์ถ๊ฐํ๊ณ ์ ๊ฑฐํ๋ ๋ฐ ์ฌ์ฉ๋๋ ํ๋ฅ ๋ถํฌ๋ก, ๋ชจ๋ธ์ด ๋ฐ์ดํฐ์ ๋ณต์ ๊ณผ์ ์ ํ์ตํ๊ณ ์ํํ๋ ๋ฐ ์ค์ํ ์ญํ ์ ํ๋ค.
Diffusion Process
ํ์ฐ ๊ณผ์ (diffusion processes)์ ๊ฑฐ์ ํ์คํ๊ฒ ์ฐ์์ ์ธ ์ํ ๊ฒฝ๋ก๋ฅผ ๊ฐ์ง๋ ์ฐ์ ์๊ฐ *๋ง๋ฅด์ฝํ ์ฒด์ธ(Markov chain)์ ํ ์ ํ
์ด๋ค. ํ์ฐ ๊ณผ์ ์ ๋ณธ์ง์ ์ผ๋ก ํ๋ฅ ์ ์ด๊ธฐ ๋๋ฌธ์ ๋ง์ ํ์ค์ ํ๋ฅ ์ ์์คํ ์ ๋ชจ๋ธ๋งํ๋ ๋ฐ ์ฌ์ฉ๋๋ค. ํ๋ฅ ์ ์์คํ ์ ์๊ฐ์ ๋ฐ๋ฅธ ๋ณํ๋ฅผ ์ค๋ช ํ๋ ๋ฐ ์ฌ์ฉ๋๋ ๋ชจ๋ธ์ด๋ฉฐ ์๊ฐ์ ๋ฐ๋ผ ๋ฌด์์๋ก ๋ณํํ๊ณ , ์ด ๋ณํ๋ ์ฐ์์ ์ด๋ค.
*๊ฐ ์ฌ๊ฑด์ ํ๋ฅ ์ด ์ด์ ์ฌ๊ฑด์์ ๋ฌ์ฑ๋ ์ํ์๋ง ์์กดํ๋ ์ผ๋ จ์ ๊ฐ๋ฅํ ์ฌ๊ฑด์ ์ค๋ช ํ๋ ํ๋ฅ ๋ชจ๋ธ์ด๋ค. ํ์ฌ ์ํ๋ง์ด ๋ฏธ๋ ์ํ์ ์ํฅ์ ๋ฏธ์น๋ค๋ ์ฑ์ง์ ๊ฐ์ง๋ค.
์ด๊ธฐ ์ด๋ฏธ์ง๊ฐ ์ผ๋ จ์ ๋ถ์๋ค๋ก ์ด๋ฃจ์ด์ ธ ์๋ค๊ณ ๊ฐ์ ํ๊ณ , ๊ทธ๋ฆผ์ ๊ตฌ์ฑํ๋ ๋ถ์๋ค ์ค ํ๋์ ๋ถ์์ ์ด์ ์ ๋ง์ถ์ด ์์ฃผ ์งง์ ์๊ฐ ๋จ์๋ก ์ค๋ ์ท์ ์ฐ์๋ค๊ณ ์์ํ๋ค๋ฉด, ๊ทธ ๋ถ์๋ ์๋์ ๊ฐ์ด ์์ง์ผ ๊ฒ์ด๋ค. ๊ทธ๋ฆฌ๊ณ ์ด๋ฌํ ๋ถ์์ ์์ง์์ ๊ฐ์ฐ์์ ๋ถํฌ(Gaussian Distribution)์ ๋ฐ๋ฅธ๋ค.
์ฆ, ํ๊ท μ ๊ณผ ํ์ค ํธ์ฐจ σ๋ฅผ ๋ฐ๋ฅด๋ ์ ๊ท๋ถํฌ๋ก ์์ง์์ ํํํ ์ ์๋ค. ๊ทธ๋ ๋ค๋ฉด, ๋ง์ผ ๋งค์๊ฐ t ๋ง๋ค ๊ฐ ๋ถ์์ ์์ง์์ ๊ณ์ฐํด๋ผ ์ ์๋ค๋ฉด ์ด๋จ๊น? ๋ค์๊ณผ ๊ฐ์ด Diffusion ๊ณผ์ ์ ๊ฑฐ๊พธ๋ก ๋๋๋ฆด ์ ์์ ๊ฒ์ด๋ค.
๊ทธ๋ฆฌ๊ณ ์ง๊ธ๊น์ง์ ๊ณผ์ ์ ๊ทธ๋๋ก Image ์ Pixel ๊ฐ์ ์ ์ฉํด๋ณด๊ฒ ๋ค. ์ฐ๋ฆฌ๋ ๋ถ์์ ์์ง์์ ์ ๊ท ๋ถํฌ๋ฅผ ๋ฐ๋ฅด๋ Noise ๋ก ๋ณด์๊ธฐ ๋๋ฌธ์, ์ด๊ธฐ Image ์ Pixel ๊ฐ์ ์ ๊ท ๋ถํฌ๋ฅผ ๋ฐ๋ฅด๋ Noise ๊ฐ์ ์ถ๊ฐํ๋ค๊ณ ์๊ฐํด๋ณด๊ฒ ๋ค.
๊ทธ๋ ๋ค๋ฉด Diffusion Process ๋ ๋ค์๊ณผ ๊ฐ์ ํํ๋ก ํํ๋ ๊ฒ์ด๋ค.
์ผ์ชฝ์ด ์๋ณธ์ด๋ฏธ์ง์ด๊ณ ์ด ์ด๋ฏธ์ง์ ๋ชจ๋ ํฝ์ ๊ฐ์ Noise ๋ฅผ ์ถ๊ฐํด์ ๋ง๋ค์ด์ง ๊ฒฐ๊ณผ ์ด๋ฏธ์ง๊ฐ ์ค๋ฅธ์ชฝ๊ณผ ๊ฐ๋ค.
์ด์ ์ด ๊ณผ์ ์ ๋งค์ฐ ๋ง์ด ๋ฐ๋ณตํ๋ฉด ๋ค์๊ณผ ๊ฐ์ด ํํ๋๋ค.
์ด ๊ณผ์ ์ Diffusion Process ์ Forward ๊ณผ์ ์ด๋ผ๊ณ ๋งํ ์ ์๋ค. ์ด๋ฏธ์ง X0๋ก๋ถํฐ ๋ชจ๋ ํฝ์ ๊ฐ์ ์๊ฐ t๋ง๋ค Noise ๋ฅผ ์ฒจ๊ฐํด์ฃผ๋ Process ์ด๋ค. ์ด๋ ๊ฒ ์์ฃผ ๊ธด ์๊ฐ T๋ฒ์ ๊ฑฐ์ณ ๋ง๋ค์ด์ง ์ด๋ฏธ์ง Xt ๋ ์์ ํ ๋ ธ์ด์ฆ ์ด๋ฏธ์ง๊ฐ ๋๋ค.
์๊น, ๋งค ์๊ฐ t์์ ์ฒจ๊ฐ๋ Noise๋ฅผ ๊ณ์ฐํ ์ ์๋ค๋ฉด ๊ณผ์ ์ ๋๋๋ฆด ์ ์๋ค๊ณ ํ์๋ค.
๋ฐ๋ผ์ ์๊ฐ t๋ง๋ค ์ด๋ฏธ์ง ํฝ์ ๊ฐ์ ์ฒจ๊ฐ๋ Noise ๊ฐ์ ๊ณ์ฐํ ์ ์๋ค๋ฉด ๋๋คํ ์ด๋ฏธ์ง Xt ๋ก๋ถํฐ ์ง์ง ์ด๋ฏธ์ง X0๋ก ๋๋๋ฆฌ๋ ๊ฒ์ด ๊ฐ๋ฅํด์ง ๊ฒ์ด๋ค.
Denoising Diffusion models
1. Forward diffusion process : ๋ฐ์ดํฐ์ ์ ์ง์ ์ผ๋ก ๋ ธ์ด์ฆ๋ฅผ ์ถ๊ฐํ๋ ์ ๋ฐฉ ๊ณผ์
2. Reverse denoising process : ๊ทธ ๋ ธ์ด์ฆ๋ฅผ ์ ์ง์ ์ผ๋ก ์ ๊ฑฐ(denoise)ํ์ฌ ์๋ ๋ฐ์ดํฐ๋ฅผ ๋ณต์ํ๋ ์ญ๋ฐฉํฅ ๊ณผ์
์ ๋ฐฉ ๊ณผ์
: ์๋ ๋ฐ์ดํฐ X0 ์ ์ ์ง์ ์ผ๋ก ๋ ธ์ด์ฆ๋ฅผ ๋ํ์ฌ, ์ฌ๋ฌ๋จ๊ณ t ๋ฅผ ๊ฑฐ์ณ ์์ ํ ๋ ธ์ด์ฆํ ๋ ๋ฐ์ดํฐ XT ๋ฅผ ์์ฑํ๋ค.
์ ๋ฐฉ ๊ณผ์ ์ ํ์ต์ด ํ์ํ ์ด์ ๋, ์ถํ ์ญ๋ฐฉํฅ ๊ณผ์ ํ์ต์ ๋ณธ ์ ๋ณด๊ฐ ์ด์ฉ๋๊ธฐ ๋๋ฌธ์ด๋ค.
์ญ๋ฐฉํฅ ๊ณผ์
: ์์ ํ ๋ ธ์ด์ฆํ๋ ๋ฐ์ดํฐ Xt ์์ ์์ํ์ฌ, ์ ์ง์ ์ผ๋ก ๋ ธ์ด์ฆ๋ฅผ ์ ๊ฑฐํ๋ฉด์ ์๋ ๋ฐ์ดํฐ X0 ๋ฅผ ๋ณต์ํ๋ค.
ํ์ต ๋ชฉํ
Diffusion ๋ชจ๋ธ์ ํ์ต์ ์ ๋ฐฉ ๊ณผ์ ๊ณผ ์ญ๋ฐฉํฅ ๊ณผ์ ์ ์ฐจ์ด๋ฅผ ์ต์ํํ๋ ๊ฒ์ ๋ชฉํ๋ก ํ๋ค.
์ฆ, ๋ชจ๋ธ์ด ์ ๋ฐฉ ๊ณผ์ ์์ ์ถ๊ฐ๋ ๋ ธ์ด์ฆ๋ฅผ ์ผ๋ง๋ ์ ์ ๊ฑฐํ ์ ์๋์ง๋ฅผ ํ์ตํ๋ค.
์ด๋ฅผ ์ํด ๋ค์๊ณผ ๊ฐ์ ์์ค ํจ์๋ฅผ ์ฌ์ฉํ๋ฉฐ, ๋ชจ๋ธ์ด ์์ธกํ ๋ ธ์ด์ฆ๊ฐ ์ค์ ๋ ธ์ด์ฆ์ ์ผ๋ง๋ ๊ฐ๊น์ด์ง๋ฅผ ์ธก์ ํ๋ค.
Ref