Skip to content

rlakdus/MAT3123

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

18 Commits
ย 
ย 
ย 
ย 

Repository files navigation

๐ŸŽญ Latent Space-Based Facial Expression Reconstruction and Editing using VAE and GAN: VAE์™€ GAN์„ ํ™œ์šฉํ•œ ์–ผ๊ตด ํ‘œ์ • ๋ณต์› ๋ฐ ์ž ์žฌ ๊ณต๊ฐ„ ๊ธฐ๋ฐ˜ ํ‘œ์ • ๋ณ€ํ™”

Background & Problem Definition

๋ณธ ํ”„๋กœ์ ํŠธ๋Š” Variational Autoencoder(VAE)์™€ Generative Adversarial Network(GAN)๋ฅผ ํ™œ์šฉํ•˜์—ฌ, ๊ธฐ์กด ์ด๋ฏธ์ง€ ํŽธ์ง‘ ๋„๊ตฌ๋กœ๋Š” ๋‹ค๋ฃจ๊ธฐ ์–ด๋ ค์šด ์–ผ๊ตด ํ‘œ์ •์„ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ๋ณต์›ํ•˜๊ณ  ์ƒ์„ฑํ•˜๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์ธ ์ด๋ฏธ์ง€ ํŽธ์ง‘ ๋„๊ตฌ๋Š” ํ”ผ๋ถ€ ํ†ค ๋ณด์ •, ์žกํ‹ฐ ์ œ๊ฑฐ, ๋ฐ๊ธฐ ๋ฐ ์ƒ‰๊ฐ ์กฐ์ ˆ๊ณผ ๊ฐ™์ด ํ”ฝ์…€ ์ˆ˜์ค€์—์„œ ๋น„๊ต์  ๊ทœ์น™์ ์œผ๋กœ ์ •์˜๋˜๋Š” ์ด๋ฏธ์ง€ ์ˆ˜์ •์—๋Š” ๊ฐ•์ ์„ ๋ณด์ด์ง€๋งŒ, ์›ƒ์Œ์ด๋‚˜ ์ฐก๊ทธ๋ฆผ์ฒ˜๋Ÿผ ์–ผ๊ตด ๊ทผ์œก์˜ ์›€์ง์ž„๊ณผ ๊ฐ์ •์  ์˜๋ฏธ๊ฐ€ ๋™์‹œ์— ๋ฐ˜์˜๋˜๋Š” ํ‘œ์ •์„ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ์กฐ์ž‘ํ•˜๋Š” ๋ฐ์—๋Š” ํ•œ๊ณ„๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ํ”ผ๋ถ€ ํ†ค์ด๋‚˜ ์žกํ‹ฐ๋Š” ๊ฐ„๋‹จํ•œ ๋ณด์ •์œผ๋กœ ๊ฐœ์„ ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ, โ€œ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ์›ƒ๋Š” ํ‘œ์ •์œผ๋กœ ๋ณ€๊ฒฝํ•˜๊ธฐโ€ ๋˜๋Š” โ€œ์ฐก๊ทธ๋ฆฐ ํ‘œ์ •์„ ๋ถ€๋“œ๋Ÿฝ๊ฒŒ ๋ณต์›ํ•˜๊ธฐโ€์™€ ๊ฐ™์€ ์ž‘์—…์€ ๋‹จ์ˆœํ•œ ํ•„ํ„ฐ ์ ์šฉ๋งŒ์œผ๋กœ ํ•ด๊ฒฐํ•˜๊ธฐ ์–ด๋ ต์Šต๋‹ˆ๋‹ค. ์ด๋Š” ์–ผ๊ตด ํ‘œ์ •์ด ๋‹จ์ˆœํ•œ ํ…์Šค์ฒ˜ ๋ณ€ํ™”๊ฐ€ ์•„๋‹ˆ๋ผ ๋ˆˆ๊ฐ€, ์ž…๊ผฌ๋ฆฌ, ๋ณผ์˜ ํ˜•ํƒœ ๋“ฑ ์—ฌ๋Ÿฌ ์–ผ๊ตด ๋ถ€์œ„์˜ ์ƒํ˜ธ์ž‘์šฉ์„ ํฌํ•จํ•˜๋ฉฐ, ๊ทธ ๋ณ€ํ™”๊ฐ€ ์—ฐ์†์ ์ด๊ณ  ๋ณต์žกํ•œ ๊ตฌ์กฐ๋ฅผ ๊ฐ€์ง€๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๋ณธ ํ”„๋กœ์ ํŠธ์—์„œ๋Š” ์–ผ๊ตด ์ด๋ฏธ์ง€๋ฅผ ํ™•๋ฅ ์  ์ž ์žฌ ๊ณต๊ฐ„์œผ๋กœ ํ‘œํ˜„ํ•˜๊ณ , ํ•ด๋‹น ๊ณต๊ฐ„์—์„œ ํ‘œ์ •์˜ ๋ณ€ํ™”๋ฅผ ์กฐ์ ˆํ•˜๊ฑฐ๋‚˜ ๋ณต์›ํ•  ์ˆ˜ ์žˆ๋Š” ์ƒ์„ฑ ๋ชจ๋ธ์„ ์„ค๊ณ„ํ•จ์œผ๋กœ์จ, ํ‘œ์ • ์กฐ์ž‘ ๊ฐ€๋Šฅ์„ฑ๊ณผ ๊ฒฐ๊ณผ ์ด๋ฏธ์ง€์˜ ํ˜„์‹ค๊ฐ์„ ๋™์‹œ์— ๋‹ฌ์„ฑํ•˜๊ณ ์ž ํ•˜์˜€์Šต๋‹ˆ๋‹ค.


Objective

๋ณธ ํ”„๋กœ์ ํŠธ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ชฉํ‘œ๋ฅผ ๊ฐ€์ง€๊ณ  ์ง„ํ–‰ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ๋จผ์ € ์–ผ๊ตด ์ด๋ฏธ์ง€๋กœ๋ถ€ํ„ฐ ํ‘œ์ • ์ •๋ณด๋ฅผ ํฌํ•จํ•˜๋Š” ์ž ์žฌ ํ‘œํ˜„(latent representation)์„ ํ•™์Šตํ•˜์—ฌ, ํ‘œ์ •์ด ๋ณ€ํ™”ํ•˜๋”๋ผ๋„ ์–ผ๊ตด์˜ ์ „์ฒด ๊ตฌ์กฐ์™€ ์ •์ฒด์„ฑ์ด ํฌ๊ฒŒ ํ›ผ์†๋˜์ง€ ์•Š๋„๋ก ํ•˜๊ณ ์ž ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ๋‹ค์Œ์œผ๋กœ ํ•™์Šต๋œ ์ž ์žฌ ํ‘œํ˜„์„ ์ด์šฉํ•˜์—ฌ ์ž…๋ ฅ ์ด๋ฏธ์ง€์˜ ํ‘œ์ •์„ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ๋ณต์›ํ•˜๊ฑฐ๋‚˜ ๋ณ€ํ˜•ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ๋งˆ์ง€๋ง‰์œผ๋กœ VAE์™€ GAN์„ ๊ฒฐํ•ฉํ•˜์—ฌ, ์ž ์žฌ ๊ณต๊ฐ„์—์„œ์˜ ์˜๋ฏธ์  ์กฐ์ž‘ ๊ฐ€๋Šฅ์„ฑ๊ณผ ์ƒ์„ฑ ๊ฒฐ๊ณผ์˜ ์‹œ๊ฐ์  ํ˜„์‹ค๊ฐ์„ ๋™์‹œ์— ํ–ฅ์ƒ์‹œํ‚ค๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•˜์˜€์Šต๋‹ˆ๋‹ค.


Dataset

๋ณธ ํ”„๋กœ์ ํŠธ์—์„œ๋Š” Kaggle์—์„œ ์ œ๊ณตํ•˜๋Š” FER-2013 ์–ผ๊ตด ํ‘œ์ • ์ด๋ฏธ์ง€ ๋ฐ์ดํ„ฐ์…‹์„ ์‚ฌ์šฉํ•˜์˜€์Šต๋‹ˆ๋‹ค. ํ•ด๋‹น ๋ฐ์ดํ„ฐ์…‹์€ ๋‹ค์–‘ํ•œ ์ธ์ข…๊ณผ ์„ฑ๋ณ„์˜ ์–ผ๊ตด ์ด๋ฏธ์ง€๋ฅผ ํฌํ•จํ•˜๊ณ  ์žˆ์œผ๋ฉฐ, ์‹ค์ œ ํ™˜๊ฒฝ์—์„œ ์ดฌ์˜๋œ ์ €ํ•ด์ƒ๋„ ์–ผ๊ตด ์ด๋ฏธ์ง€๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์–ด ํ‘œ์ • ์ธ์‹ ๋ฐ ์ƒ์„ฑ ๋ชจ๋ธ์„ ์‹คํ—˜ํ•˜๊ธฐ์— ์ ํ•ฉํ•œ ๋ฐ์ดํ„ฐ์…‹์ž…๋‹ˆ๋‹ค. FER-2013 ๋ฐ์ดํ„ฐ์…‹์€ ์ด 7๊ฐœ์˜ ํ‘œ์ • ํด๋ž˜์Šค๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์œผ๋ฉฐ, ๊ฐ ์ด๋ฏธ์ง€๋Š” angry, disgust, fear, happy, neutral, sad, surprise ์ค‘ ํ•˜๋‚˜์˜ ํ‘œ์ • ๋ ˆ์ด๋ธ”์„ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋‹ค์–‘ํ•œ ํ‘œ์ • ๋ฒ”์ฃผ๋Š” ๋ชจ๋ธ์ด ๋‹จ์ผ ํ‘œ์ •์— ์น˜์šฐ์น˜์ง€ ์•Š๊ณ , ์–ผ๊ตด ๊ทผ์œก ๋ณ€ํ™”์™€ ๊ฐ์ • ํ‘œํ˜„์˜ ํญ๋„“์€ ๋ณ€ํ˜•์„ ํ•™์Šตํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ค๋‹ˆ๋‹ค.


Preprocessing

๋ณธ ํ”„๋กœ์ ํŠธ์—์„œ๋Š” kaggle์˜ FER-2013 ๋ฐ์ดํ„ฐ์…‹์„ ์‚ฌ์šฉํ•˜์—ฌ ์ƒ์„ฑ ๋ชจ๋ธ ํ•™์Šต์— ์ ํ•ฉํ•˜๋„๋ก ์ „์ฒ˜๋ฆฌ๋ฅผ ์ˆ˜ํ–‰ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ์…‹์€ ์ด๋ฏธ ์–ผ๊ตด ์˜์—ญ์ด ํฌํ•จ๋œ ํ‘๋ฐฑ ์ด๋ฏธ์ง€๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์œผ๋ฏ€๋กœ ๋ณ„๋„์˜ ์–ผ๊ตด ๊ฒ€์ถœ ๊ณผ์ •์€ ์ ์šฉํ•˜์ง€ ์•Š์•˜์œผ๋ฉฐ, ๋ชจ๋“  ์ด๋ฏธ์ง€๋ฅผ 48ร—48 ํ•ด์ƒ๋„๋กœ ๋ฆฌ์‚ฌ์ด์ฆˆํ•˜์—ฌ ์ž…๋ ฅ ํฌ๊ธฐ๋ฅผ ํ†ต์ผํ•˜์˜€์Šต๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ ๋กœ๋”ฉ ๊ณผ์ •์—์„œ ์ฑ„๋„ ์ˆ˜์˜ ๋ถˆ์ผ์น˜๋ฅผ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ๋ชจ๋“  ์ด๋ฏธ์ง€๋ฅผ ๋‹จ์ผ ์ฑ„๋„ grayscale ํ˜•ํƒœ๋กœ ๋ณ€ํ™˜ํ•˜์˜€๊ณ , PyTorch Tensor๋กœ ๋ณ€ํ™˜ํ•œ ๋’ค ํ”ฝ์…€ ๊ฐ’์„ ํ‰๊ท  0.5, ํ‘œ์ค€ํŽธ์ฐจ 0.5๋กœ ์ •๊ทœํ™”ํ•˜์—ฌ [-1, 1] ๋ฒ”์œ„๋กœ ์Šค์ผ€์ผ๋งํ•˜์˜€์Šต๋‹ˆ๋‹ค. ํ•™์Šต ๋ฐ ํ‰๊ฐ€๋ฅผ ์œ„ํ•ด FER-2013 ๋ฐ์ดํ„ฐ์…‹์—์„œ ์ œ๊ณตํ•˜๋Š” train ๋ฐ test ๋ถ„ํ• ์„ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉํ•˜์˜€์Šต๋‹ˆ๋‹ค.


Model Architecture & Training

๋ณธ ํ”„๋กœ์ ํŠธ์—์„œ๋Š” VAE, GAN, ๊ทธ๋ฆฌ๊ณ  VAE์™€ GAN์„ ๊ฒฐํ•ฉํ•œ ๊ตฌ์กฐ๋ฅผ ๊ตฌํ˜„ํ•˜๊ณ  ๋น„๊ตํ•˜์˜€์Šต๋‹ˆ๋‹ค. VAE๋Š” ํ‘œ์ • ๋ณ€ํ™”์™€ ๊ฐ™์€ ์—ฐ์†์ ์ธ ๋ณ€ํ˜•์„ ์ž ์žฌ ๊ณต๊ฐ„์—์„œ ๋ถ€๋“œ๋Ÿฝ๊ฒŒ ํ‘œํ˜„ํ•˜๋Š” ๋ฐ ๊ฐ•์ ์ด ์žˆ์œผ๋ฉฐ, GAN์€ ์ƒ์„ฑ ์ด๋ฏธ์ง€์˜ ์„ ๋ช…๋„์™€ ํ˜„์‹ค๊ฐ์„ ํ–ฅ์ƒ์‹œํ‚ค๋Š” ๋ฐ ๊ฐ•์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๋‘ ๋ชจ๋ธ์„ ๊ฐ๊ฐ ํ•™์Šตํ•ด ๋น„๊ตํ•˜๊ณ , ๊ฒฐํ•ฉ ๋ชจ๋ธ์—์„œ ๋‘ ์žฅ์ ์„ ๋™์‹œ์— ์–ป์„ ์ˆ˜ ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ์ง„ํ–‰ํ•˜์˜€์Šต๋‹ˆ๋‹ค.


1. Variational Autoencoder (VAE)

๋ชจ๋ธ ์„ ํƒ ๋ฐฐ๊ฒฝ ๋ฐ ์—ญํ• 

์–ผ๊ตด ํ‘œ์ • ๋ณ€ํ™”๋Š” ๋‹จ์ˆœํ•œ ํ”ฝ์…€ ๊ฐ’์˜ ๋ณ€ํ™”๊ฐ€ ์•„๋‹ˆ๋ผ, ๋ˆˆ, ์ž…, ๋ณผ๊ณผ ๊ฐ™์€ ์–ผ๊ตด ๋ถ€์œ„์˜ ํ˜•ํƒœ๊ฐ€ ์—ฐ์†์ ์œผ๋กœ ๋ณ€ํ™”ํ•˜๋ฉฐ ๊ฐ์ •์  ์˜๋ฏธ๋ฅผ ๋ฐ˜์˜ํ•˜๋Š” ๊ณ ์ฐจ์›์ ์ธ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๋ณธ ํ”„๋กœ์ ํŠธ์—์„œ๋Š” ์ด๋Ÿฌํ•œ ํ‘œ์ • ๋ณ€ํ™”๋ฅผ ์—ฐ์†์ ์ด๊ณ  ํ•ด์„ ๊ฐ€๋Šฅํ•œ ๋ฐฉ์‹์œผ๋กœ ๋‹ค๋ฃฐ ์ˆ˜ ์žˆ๋Š” ์ƒ์„ฑ ๋ชจ๋ธ์ด ํ•„์š”ํ•˜๋‹ค๊ณ  ํŒ๋‹จํ•˜์˜€์œผ๋ฉฐ, ๊ทธ์— ๋”ฐ๋ผ Variational Autoencoder(VAE)๋ฅผ ๊ธฐ๋ณธ ๋ชจ๋ธ๋กœ ์„ ํƒํ•˜์˜€์Šต๋‹ˆ๋‹ค.

VAE๋Š” ์ž…๋ ฅ ์ด๋ฏธ์ง€๋ฅผ ํ•˜๋‚˜์˜ ๊ณ ์ •๋œ ๋ฒกํ„ฐ๋กœ ์••์ถ•ํ•˜๋Š” ๋Œ€์‹ , ํ‰๊ท ๊ณผ ๋ถ„์‚ฐ์„ ๊ฐ€์ง€๋Š” ํ™•๋ฅ  ๋ถ„ํฌ๋กœ ์ธ์ฝ”๋”ฉํ•ฉ๋‹ˆ๋‹ค. ์ด๋กœ ์ธํ•ด ์ž ์žฌ ๊ณต๊ฐ„์ด ์—ฐ์†์ ์ด๊ณ  ๋ถ€๋“œ๋Ÿฝ๊ฒŒ ๊ตฌ์„ฑ๋˜๋ฉฐ, ์„œ๋กœ ๋‹ค๋ฅธ ํ‘œ์ • ๊ฐ„์˜ ๋ณด๊ฐ„(interpolation)์ด๋‚˜ ๋ฐฉํ–ฅ ๋ฒกํ„ฐ๋ฅผ ํ†ตํ•œ ํ‘œ์ • ํŽธ์ง‘๊ณผ ๊ฐ™์€ ์ž‘์—…์ด ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ํŠน์„ฑ์€ ๋ณธ ํ”„๋กœ์ ํŠธ์—์„œ ์ˆ˜ํ–‰ํ•œ latent space ๊ธฐ๋ฐ˜ ํ‘œ์ • ํŽธ์ง‘์˜ ํ•ต์‹ฌ์ ์ธ ๊ธฐ๋ฐ˜์ด ๋ฉ๋‹ˆ๋‹ค.

๋ชจ๋ธ ๊ตฌ์กฐ

๋ณธ ํ”„๋กœ์ ํŠธ์—์„œ ์‚ฌ์šฉํ•œ VAE๋Š” CNN ๊ธฐ๋ฐ˜์˜ Encoderโ€“Decoder ๊ตฌ์กฐ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. Encoder๋Š” ์ž…๋ ฅ ์–ผ๊ตด ์ด๋ฏธ์ง€๋ฅผ ๋ฐ›์•„ ์ž ์žฌ ๋ณ€์ˆ˜์˜ ํ‰๊ท (ฮผ)๊ณผ ๋กœ๊ทธ ๋ถ„์‚ฐ(log ฯƒยฒ)์„ ์ถœ๋ ฅํ•˜๋ฉฐ, ์ด๋Š” ์–ผ๊ตด ์ด๋ฏธ์ง€๊ฐ€ ๋”ฐ๋ฅด๋Š” ํ™•๋ฅ  ๋ถ„ํฌ๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ์ดํ›„ reparameterization trick์„ ์‚ฌ์šฉํ•˜์—ฌ ํ•ด๋‹น ๋ถ„ํฌ๋กœ๋ถ€ํ„ฐ ์ž ์žฌ ๋ณ€์ˆ˜ z๋ฅผ ์ƒ˜ํ”Œ๋งํ•จ์œผ๋กœ์จ, ์—ญ์ „ํŒŒ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋„๋ก ์„ค๊ณ„ํ•˜์˜€์Šต๋‹ˆ๋‹ค.

Decoder๋Š” ์ƒ˜ํ”Œ๋ง๋œ ์ž ์žฌ ๋ณ€์ˆ˜ z๋ฅผ ์ž…๋ ฅ์œผ๋กœ ๋ฐ›์•„ CNN ๊ธฐ๋ฐ˜์˜ ์—…์ƒ˜ํ”Œ๋ง ๊ณผ์ •์„ ๊ฑฐ์ณ ์›๋ณธ ์ด๋ฏธ์ง€์™€ ๋™์ผํ•œ ํฌ๊ธฐ์˜ ์–ผ๊ตด ์ด๋ฏธ์ง€๋ฅผ ๋ณต์›ํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ตฌ์กฐ๋ฅผ ํ†ตํ•ด ๋ชจ๋ธ์€ ์–ผ๊ตด ์ด๋ฏธ์ง€๋ฅผ ํšจ์œจ์ ์œผ๋กœ ์••์ถ•ยท๋ณต์›ํ•˜๋Š” ๋™์‹œ์—, ์ž ์žฌ ๊ณต๊ฐ„์ด ํŠน์ • ๋ถ„ํฌ๋ฅผ ๋”ฐ๋ฅด๋„๋ก ํ•™์Šต๋ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ์ ์œผ๋กœ ์ž ์žฌ ๊ณต๊ฐ„์€ ํ‘œ์ • ๋ณ€ํ™”์™€ ๊ฐ™์€ ์˜๋ฏธ์  ๋ณ€ํ˜•์„ ์ˆ˜ํ–‰ํ•˜๊ธฐ์— ์ ํ•ฉํ•œ ํ˜•ํƒœ๋กœ ์ •๋ˆ๋ฉ๋‹ˆ๋‹ค.

์†์‹ค ํ•จ์ˆ˜ ์„ค๊ณ„

VAE ํ•™์Šต์—๋Š” ๋‘ ๊ฐ€์ง€ ์†์‹ค ํ•ญ์ด ์‚ฌ์šฉ๋˜๋ฉฐ, ์ด๋Š” ์ฝ”๋“œ์—์„œ vae_loss ํ•จ์ˆ˜๋กœ ๊ตฌํ˜„๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

์ฒซ ๋ฒˆ์งธ ํ•ญ์€ Reconstruction Loss๋กœ, ๋ณต์›๋œ ์ด๋ฏธ์ง€์™€ ์›๋ณธ ์ด๋ฏธ์ง€ ๊ฐ„์˜ ์ฐจ์ด๋ฅผ ์ตœ์†Œํ™”ํ•˜๋Š” ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค. ๋ณธ ํ”„๋กœ์ ํŠธ์—์„œ๋Š” ํ”ฝ์…€ ๋‹จ์œ„ ์ฐจ์ด๋ฅผ ์ธก์ •ํ•˜๊ธฐ ์œ„ํ•ด Mean Squared Error(MSE)๋ฅผ ์‚ฌ์šฉํ•˜์˜€์Šต๋‹ˆ๋‹ค. ์ด ํ•ญ์€ ์–ผ๊ตด์˜ ์ „๋ฐ˜์ ์ธ ๊ตฌ์กฐ์™€ ํ‘œ์ •์ด ์ž…๋ ฅ ์ด๋ฏธ์ง€์™€ ์œ ์‚ฌํ•˜๊ฒŒ ์œ ์ง€๋˜๋„๋ก ์œ ๋„ํ•ฉ๋‹ˆ๋‹ค. ๋‘ ๋ฒˆ์งธ ํ•ญ์€ KL Divergence๋กœ, Encoder๊ฐ€ ์ถœ๋ ฅํ•˜๋Š” ์ž ์žฌ ๋ถ„ํฌ๊ฐ€ ํ‘œ์ค€ ์ •๊ทœ๋ถ„ํฌ์— ๊ฐ€๊นŒ์›Œ์ง€๋„๋ก ์ œ์•ฝ์„ ๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ์ž ์žฌ ๊ณต๊ฐ„์ด ๊ณผ๋„ํ•˜๊ฒŒ ํฉ์–ด์ง€์ง€ ์•Š๊ณ , ์—ฐ์†์ ์ด๋ฉฐ ๊ตฌ์กฐ์ ์ธ ํ˜•ํƒœ๋ฅผ ์œ ์ง€ํ•˜๋„๋ก ํ•ฉ๋‹ˆ๋‹ค. ๋ณธ ํ”„๋กœ์ ํŠธ์—์„œ๋Š” ๋‘ ์†์‹ค ํ•ญ์˜ ๊ท ํ˜•์„ ์กฐ์ ˆํ•˜๊ธฐ ์œ„ํ•ด ฮฒ ๊ณ„์ˆ˜๋ฅผ ์ ์šฉํ•˜์˜€์œผ๋ฉฐ, ฮฒ ๊ฐ’์„ 0.01๋กœ ์„ค์ •ํ•˜์—ฌ ๋ณต์› ํ’ˆ์งˆ์„ ์šฐ์„ ์ ์œผ๋กœ ์œ ์ง€ํ•˜๋ฉด์„œ๋„ ์ž ์žฌ ๊ณต๊ฐ„์˜ ์ •๊ทœํ™”๋ฅผ ์œ ๋„ํ•˜์˜€์Šต๋‹ˆ๋‹ค.

์ตœ์ข…์ ์œผ๋กœ ์‚ฌ์šฉ๋œ ์†์‹ค ํ•จ์ˆ˜๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํ˜•ํƒœ๋ฅผ ๊ฐ€์ง‘๋‹ˆ๋‹ค.

Total Loss = Reconstruction Loss + ฮฒ ร— KL Divergence

ํ•™์Šต ๋ฐ ํ•™์Šต ๊ฒฐ๊ณผ

VAE๋Š” FER-2013 ๋ฐ์ดํ„ฐ์…‹์˜ ํ•™์Šต ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ด 30 epoch ๋™์•ˆ ํ•™์Šต๋˜์—ˆ์œผ๋ฉฐ, ์ตœ์ ํ™” ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ๋กœ๋Š” Adam ์˜ตํ‹ฐ๋งˆ์ด์ €๋ฅผ ์‚ฌ์šฉํ•˜์˜€์Šต๋‹ˆ๋‹ค. ํ•™์Šต ๊ณผ์ •์—์„œ๋Š” ๋งค epoch๋งˆ๋‹ค ์ „์ฒด ์†์‹ค, ๋ณต์› ์†์‹ค, KL ์†์‹ค์„ ๊ฐ๊ฐ ์ถ”์ ํ•˜์—ฌ ๋ชจ๋ธ์ด ์•ˆ์ •์ ์œผ๋กœ ์ˆ˜๋ ดํ•˜๋Š”์ง€๋ฅผ ํ™•์ธํ•˜์˜€์Šต๋‹ˆ๋‹ค. ํ•™์Šต์ด ์™„๋ฃŒ๋œ ํ›„์—๋Š” ์ถ”ํ›„ ํ‘œ์ • ํŽธ์ง‘ ๋ฐ GAN ๊ฒฐํ•ฉ ์‹คํ—˜์— ํ™œ์šฉํ•˜๊ธฐ ์œ„ํ•ด ํ•™์Šต๋œ VAE ๋ชจ๋ธ์˜ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ํŒŒ์ผ๋กœ ์ €์žฅํ•˜์˜€์Šต๋‹ˆ๋‹ค.

image VAE ํ•™์Šต ๊ณผ์ •์—์„œ ์ „์ฒด ์†์‹ค์€ ์ดˆ๊ธฐ ์•ฝ 0.10 ์ˆ˜์ค€์—์„œ ์‹œ์ž‘ํ•˜์—ฌ 30 epoch ์ดํ›„ ์•ฝ 0.046๊นŒ์ง€ ์ ์ง„์ ์œผ๋กœ ๊ฐ์†Œํ•˜๋ฉฐ ์•ˆ์ •์ ์œผ๋กœ ์ˆ˜๋ ดํ•˜๋Š” ๋ชจ์Šต์„ ๋ณด์˜€์Šต๋‹ˆ๋‹ค. ํŠนํžˆ Reconstruction Loss๋Š” ์•ฝ 0.09์—์„œ ์•ฝ 0.03 ์ˆ˜์ค€๊นŒ์ง€ ์ง€์†์ ์œผ๋กœ ๊ฐ์†Œํ•˜์˜€์Šต๋‹ˆ๋‹ค. ๋ฐ˜๋ฉด KL Divergence๋Š” ํ•™์Šต ์ดˆ๋ฐ˜ ์ฆ๊ฐ€ํ•œ ์ดํ›„ ์•ฝ 1.3 ๋‚ด์™ธ์—์„œ ์•ˆ์ •์ ์œผ๋กœ ์œ ์ง€๋˜์–ด, ์ž ์žฌ ๊ณต๊ฐ„์ด ๊ณผ๋„ํ•˜๊ฒŒ ๋ถ•๊ดด๋˜์ง€ ์•Š๊ณ  ๊ตฌ์กฐ์ ์œผ๋กœ ์ •๊ทœํ™”๋˜์—ˆ์Œ์„ ์‹œ์‚ฌํ•ฉ๋‹ˆ๋‹ค.


2. VAE + GAN

๊ฒฐํ•ฉ ๋ฐฐ๊ฒฝ ๋ฐ ๋ชฉ์ 

์•ž์„œ ์„ค๋ช…ํ•œ VAE๋Š” ์ž ์žฌ ๊ณต๊ฐ„์ด ์—ฐ์†์ ์ด๊ณ  ๊ตฌ์กฐ์ ์œผ๋กœ ์ •๋ˆ๋˜์–ด ์žˆ์–ด ํ‘œ์ • ๋ณด๊ฐ„์ด๋‚˜ ์ž ์žฌ ๊ณต๊ฐ„ ์กฐ์ž‘๊ณผ ๊ฐ™์€ ์˜๋ฏธ์  ํŽธ์ง‘์— ๋งค์šฐ ์ ํ•ฉํ•œ ๋ชจ๋ธ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ํ‰๊ท ์ ์ธ ๋ณต์› ๊ฒฐ๊ณผ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๊ฒฝํ–ฅ์ด ์žˆ์–ด, ๋ณต์› ์ด๋ฏธ์ง€๊ฐ€ ๋‹ค์†Œ ํ๋ฆฟํ•˜๊ฒŒ ๋‚˜ํƒ€๋‚˜๋Š” ํ•œ๊ณ„๊ฐ€ ์กด์žฌํ•ฉ๋‹ˆ๋‹ค. ๋ฐ˜๋ฉด GAN์€ ์‹ค์ œ ์ด๋ฏธ์ง€์™€ ๊ตฌ๋ณ„ํ•˜๊ธฐ ์–ด๋ ค์šด ์„ ๋ช…ํ•œ ๊ฒฐ๊ณผ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋ฐ ๊ฐ•์ ์„ ๊ฐ€์ง€์ง€๋งŒ, ์ž ์žฌ ๊ณต๊ฐ„์˜ ํ•ด์„ ๊ฐ€๋Šฅ์„ฑ์ด๋‚˜ ํ‘œ์ • ๋ฐฉํ–ฅ ๋ฒกํ„ฐ์™€ ๊ฐ™์€ ์˜๋ฏธ์  ์กฐ์ž‘์„ ์ง์ ‘์ ์œผ๋กœ ์ œ๊ณตํ•˜์ง€๋Š” ์•Š์Šต๋‹ˆ๋‹ค. ์ด์— ๋”ฐ๋ผ ๋ณธ ํ”„๋กœ์ ํŠธ์—์„œ๋Š” ํ‘œ์ •์˜ ์˜๋ฏธ์  ์กฐ์ž‘์€ VAE๊ฐ€, ์‹œ๊ฐ์  ๊ฐœ์„ ์€ GAN์ด ๋‹ด๋‹นํ•˜๋„๋ก ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ํ‘œ์ • ๋ณ€ํ™”์˜ ์—ฐ์†์„ฑ๊ณผ ํ•ด์„ ๊ฐ€๋Šฅ์„ฑ์€ ์œ ์ง€ํ•˜๋ฉด์„œ๋„, ์ตœ์ข… ์ƒ์„ฑ ๊ฒฐ๊ณผ๋ฅผ ๋ณด์™„ํ•˜๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•˜์˜€์Šต๋‹ˆ๋‹ค.

๋ชจ๋ธ ๊ตฌ์กฐ

VAE + GAN ๊ฒฐํ•ฉ ๋ชจ๋ธ์—์„œ๋Š” ์‚ฌ์ „์— ํ•™์Šต๋œ VAE๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜์—ฌ, VAE์˜ Encoder์™€ Decoder๋ฅผ ํ‘œ์ • ํ‘œํ˜„ ํ•™์Šต ๋ฐ ๋ณต์›์˜ ํ•ต์‹ฌ ๋ชจ๋“ˆ๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋จผ์ € VAE๋Š” FER-2013 ๋ฐ์ดํ„ฐ์…‹์„ ์ด์šฉํ•ด ๋‹จ๋…์œผ๋กœ ํ•™์Šต๋˜๋ฉฐ, ์ด ๊ณผ์ •์—์„œ ์–ผ๊ตด ์ด๋ฏธ์ง€์˜ ๊ตฌ์กฐ์™€ ํ‘œ์ • ์ •๋ณด๊ฐ€ ์ž ์žฌ ๊ณต๊ฐ„์— ์•ˆ์ •์ ์œผ๋กœ ํ‘œํ˜„๋ฉ๋‹ˆ๋‹ค. ์ดํ›„ VAE + GAN ํ•™์Šต ๋‹จ๊ณ„์—์„œ๋Š” VAE์˜ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ๊ณ ์ •(freeze)ํ•˜๊ณ , VAE๊ฐ€ ์ƒ์„ฑํ•œ ๋ณต์› ์ด๋ฏธ์ง€๋ฅผ ์ž…๋ ฅ์œผ๋กœ ๋ฐ›์•„ ์ด๋ฅผ ๊ฐœ์„ ํ•˜๋Š” Generator์™€ Discriminator๋ฅผ ํ•™์Šตํ•ฉ๋‹ˆ๋‹ค. ์ฆ‰, GAN์€ ์›๋ณธ ์ด๋ฏธ์ง€๋ฅผ ์ง์ ‘ ์ƒ์„ฑํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ, VAE์˜ ๋ณต์› ๊ฒฐ๊ณผ๋ฅผ ์ž…๋ ฅ์œผ๋กœ ๋ฐ›์•„ ๋ณด๋‹ค ์‹ค์ œ ์ด๋ฏธ์ง€์ฒ˜๋Ÿผ ๋ณด์ด๋„๋ก ์ •์ œํ•˜๋Š” ์—ญํ• ์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

ํ•™์Šต ๋ฐ ์†์‹ค ํ•จ์ˆ˜ ๊ตฌ์„ฑ

ํ•™์Šต ๊ณผ์ •์—์„œ VAE๋Š” ๊ณ ์ •๋œ ์ƒํƒœ๋กœ ์œ ์ง€๋˜๋ฉฐ, ๊ฐ ์ž…๋ ฅ ์ด๋ฏธ์ง€์— ๋Œ€ํ•ด VAE Encoder๋ฅผ ํ†ตํ•ด ์ž ์žฌ ๋ณ€์ˆ˜์˜ ํ‰๊ท ์„ ์ถ”์ถœํ•˜๊ณ , Decoder๋ฅผ ํ†ตํ•ด ์ดˆ๊ธฐ ๋ณต์› ์ด๋ฏธ์ง€(VAE output)๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. ์ดํ›„ Discriminator๋Š” ์‹ค์ œ ์ด๋ฏธ์ง€์™€ VAE ๋ณต์› ์ด๋ฏธ์ง€๋ฅผ ๊ตฌ๋ถ„ํ•˜๋„๋ก ํ•™์Šต๋˜๋ฉฐ, ์ด๋ฅผ ํ†ตํ•ด Generator๊ฐ€ ์ƒ์„ฑํ•˜๋Š” ๊ฒฐ๊ณผ๊ฐ€ ์‹ค์ œ ์ด๋ฏธ์ง€ ๋ถ„ํฌ์— ๋” ๊ฐ€๊นŒ์›Œ์ง€๋„๋ก ์œ ๋„ํ•ฉ๋‹ˆ๋‹ค.

Generator๋Š” ๋‘ ๊ฐ€์ง€ ์†์‹ค ํ•ญ์„ ๋™์‹œ์— ์ตœ์†Œํ™”ํ•˜๋„๋ก ํ•™์Šต๋ฉ๋‹ˆ๋‹ค. ์ฒซ์งธ๋Š” Adversarial Loss๋กœ, Discriminator๋ฅผ ์†์—ฌ ์ƒ์„ฑ ๊ฒฐ๊ณผ๊ฐ€ ์‹ค์ œ ์ด๋ฏธ์ง€๋กœ ํŒ๋ณ„๋˜๋„๋ก ๋งŒ๋“œ๋Š” ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค. ๋‘˜์งธ๋Š” L1 Loss๋กœ, Generator์˜ ์ถœ๋ ฅ ์ด๋ฏธ์ง€๊ฐ€ ์›๋ณธ ์ด๋ฏธ์ง€์™€ ๊ณผ๋„ํ•˜๊ฒŒ ๋‹ฌ๋ผ์ง€์ง€ ์•Š๋„๋ก ์ œ์•ฝ์„ ๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. ๋ณธ ํ”„๋กœ์ ํŠธ์—์„œ๋Š” L1 Loss์˜ ๊ฐ€์ค‘์น˜๋กœ ๋น„๊ต์  ํฐ ๊ฐ’(ฮป = 100)์„ ์‚ฌ์šฉํ•˜์—ฌ, ์‹œ๊ฐ์  ์„ ๋ช…๋„ ํ–ฅ์ƒ๊ณผ ๋™์‹œ์— ์–ผ๊ตด ๊ตฌ์กฐ ๋ฐ ํ‘œ์ •์˜ ์•ˆ์ •์ ์ธ ๋ณด์กด์„ ์œ ๋„ํ•˜์˜€์Šต๋‹ˆ๋‹ค.

Discriminator๋Š” ์‹ค์ œ ์ด๋ฏธ์ง€์™€ VAE ๋ณต์› ์ด๋ฏธ์ง€๋ฅผ ๊ฐ๊ฐ ์‹ค์ œ(real)์™€ ๊ฐ€์งœ(fake)๋กœ ๊ตฌ๋ถ„ํ•˜๋„๋ก ํ•™์Šต๋˜๋ฉฐ, Generator๋Š” ์ด๋Ÿฌํ•œ Discriminator๋ฅผ ์†์ด๋ฉด์„œ๋„ ์›๋ณธ ์ด๋ฏธ์ง€์™€์˜ ํ”ฝ์…€ ๋‹จ์œ„ ์ฐจ์ด๋ฅผ ์ตœ์†Œํ™”ํ•˜๋„๋ก ํ•™์Šต๋ฉ๋‹ˆ๋‹ค. ์ด์™€ ๊ฐ™์€ ํ•™์Šต ๊ตฌ์กฐ๋ฅผ ํ†ตํ•ด GAN์€ ํ‘œ์ •์˜ ์˜๋ฏธ๋ฅผ ๋ณ€๊ฒฝํ•˜์ง€ ์•Š๊ณ , VAE๊ฐ€ ์ƒ์„ฑํ•œ ๊ฒฐ๊ณผ๋ฅผ ๋ณด๋‹ค ์ž์—ฐ์Šค๋Ÿฝ๊ณ  ์ผ๊ด€๋œ ์งˆ๊ฐ์œผ๋กœ ๊ฐœ์„ ํ•˜๋Š” ์—ญํ• ์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.


Result

MSE

๋‹ค์Œ ํ‘œ๋Š” ํ…Œ์ŠคํŠธ ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•ด ์›๋ณธ ์ด๋ฏธ์ง€์™€ ๋ณต์› ์ด๋ฏธ์ง€ ๊ฐ„์˜ Mean Squared Error(MSE) ๋ฅผ ๋น„๊ตํ•œ ๊ฒฐ๊ณผ์ž…๋‹ˆ๋‹ค. MSE๋Š” ํ”ฝ์…€ ๋‹จ์œ„์—์„œ ๋ณต์› ๊ฒฐ๊ณผ๊ฐ€ ์›๋ณธ ์ด๋ฏธ์ง€์™€ ์–ผ๋งˆ๋‚˜ ์ฐจ์ด๊ฐ€ ๋‚˜๋Š”์ง€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์ง€ํ‘œ๋กœ, ๊ฐ’์ด ์ž‘์„์ˆ˜๋ก ์žฌ๊ตฌ์„ฑ ์„ฑ๋Šฅ์ด ๋†’์Œ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

Model Reconstruction MSE
VAE 79.859829
VAE + GAN 85.155731

Visualization

๋ชจ๋ธ์ด ํ•™์Šตํ•œ ์–ผ๊ตด ํ‘œํ˜„๊ณผ ํ‘œ์ • ์กฐ์ž‘ ๊ฒฐ๊ณผ๋ฅผ ์ง๊ด€์ ์œผ๋กœ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด, ๋ณต์› ๊ฒฐ๊ณผ์™€ ํ‘œ์ • ๋ณ€ํ™” ๊ฒฐ๊ณผ๋ฅผ ์‹œ๊ฐํ™”ํ•˜์˜€์Šต๋‹ˆ๋‹ค.

Reconstruction

image ์œ„ ๊ทธ๋ฆผ์€ ๋™์ผํ•œ ์ž…๋ ฅ ์ด๋ฏธ์ง€์— ๋Œ€ํ•ด ๊ฐ ๋ชจ๋ธ์˜ ๋ณต์› ๊ฒฐ๊ณผ๋ฅผ ๋น„๊ตํ•œ ๊ฒฐ๊ณผ์ž…๋‹ˆ๋‹ค. ์ฒซ ๋ฒˆ์งธ ํ–‰์€ ์›๋ณธ ์ด๋ฏธ์ง€(original image)๋ฅผ ๋‚˜ํƒ€๋‚ด๋ฉฐ, ๋‘ ๋ฒˆ์งธ ํ–‰์€ VAE๋ฅผ ํ†ตํ•ด ๋ณต์›๋œ ๊ฒฐ๊ณผ์ž…๋‹ˆ๋‹ค. ์„ธ ๋ฒˆ์งธ ํ–‰์€ VAE์˜ ๋ณต์› ๊ฒฐ๊ณผ๋ฅผ GAN์„ ํ†ตํ•ด ์ถ”๊ฐ€์ ์œผ๋กœ ์ •์ œํ•œ VAE + GAN์˜ ์ถœ๋ ฅ ๊ฒฐ๊ณผ๋ฅผ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

Change of Expression

image ์œ„ ๊ทธ๋ฆผ์€ ์ž ์žฌ ๊ณต๊ฐ„์—์„œ ํ‘œ์ • ๋ฐฉํ–ฅ ๋ฒกํ„ฐ๋ฅผ ๋”ฐ๋ผ ์ด๋™์‹œํ‚ค๋ฉฐ ํ‘œ์ • ๋ณ€ํ™”๋ฅผ ์ƒ์„ฑํ•œ ๊ฒฐ๊ณผ๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹คํ•œ ํ‘œ์ • ๋ณ€ํ™” ๊ฒฐ๊ณผ์ด๋ฉฐ, ๋‘ ๋ฒˆ์งธ ํ–‰์€ ๋™์ผํ•œ ์ž ์žฌ ํŽธ์ง‘ ๊ฒฐ๊ณผ์— GAN์„ ์ ์šฉํ•œ VAE + GAN์˜ ๊ฒฐ๊ณผ์ž…๋‹ˆ๋‹ค. ฮฑ๋Š” ํ‘œ์ • ๋ฐฉํ–ฅ ๋ฒกํ„ฐ์˜ ํฌ๊ธฐ๋ฅผ ์กฐ์ ˆํ•˜๋Š” ๊ณ„์ˆ˜๋กœ, ๊ฐ’์˜ ์ ˆ๋Œ€๊ฐ’์ด ์ปค์งˆ์ˆ˜๋ก ํ‘œ์ • ๋ณ€ํ™”์˜ ๊ฐ•๋„๊ฐ€ ์ฆ๊ฐ€ํ•จ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ฮฑ๊ฐ€ 0์ผ ๊ฒฝ์šฐ์—๋Š” ์›๋ณธ ์ด๋ฏธ์ง€์˜ ์ž ์žฌ ํ‘œํ˜„์ด ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉ๋˜๋ฉฐ, ์–‘์˜ ฮฑ ๊ฐ’์€ ๋ชฉํ‘œ ํ‘œ์ • ๋ฐฉํ–ฅ์œผ๋กœ์˜ ๋ณ€ํ™”๋ฅผ ๊ฐ•ํ™”ํ•˜๊ณ , ์Œ์˜ ฮฑ ๊ฐ’์€ ๋ฐ˜๋Œ€ ๋ฐฉํ–ฅ์˜ ํ‘œ์ • ๋ณ€ํ™”๋ฅผ ์œ ๋„ํ•ฉ๋‹ˆ๋‹ค. ์ž ์žฌ ๊ณต๊ฐ„์—์„œ์˜ ์„ ํ˜• ์ด๋™๋งŒ์œผ๋กœ ํ‘œ์ • ๋ณ€ํ™”๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Œ์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

Conclusion

๋ณธ ํ”„๋กœ์ ํŠธ์—์„œ๋Š” Variational Autoencoder(VAE)์™€ VAE + GAN ๊ฒฐํ•ฉ ๋ชจ๋ธ์„ ํ™œ์šฉํ•˜์—ฌ ์–ผ๊ตด ํ‘œ์ • ๋ณต์› ๋ฐ ํ‘œ์ • ํŽธ์ง‘ ๊ฐ€๋Šฅ์„ฑ์„ ์‹คํ—˜ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ์‹คํ—˜ ๊ฒฐ๊ณผ, VAE๋Š” ์–ผ๊ตด์˜ ์ „๋ฐ˜์ ์ธ ๊ตฌ์กฐ์™€ ํ‘œ์ • ์ •๋ณด๋ฅผ ์•ˆ์ •์ ์œผ๋กœ ์ž ์žฌ ๊ณต๊ฐ„์— ํ•™์Šตํ•˜์˜€์œผ๋ฉฐ, ์ž ์žฌ ๊ณต๊ฐ„์—์„œ์˜ ์„ ํ˜• ์ด๋™์„ ํ†ตํ•ด ํ‘œ์ •์ด ์ ์ง„์ ์œผ๋กœ ๋ณ€ํ™”ํ•˜๋Š” ๋ชจ์Šต์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด VAE๊ฐ€ ํ‘œ์ •๊ณผ ๊ฐ™์€ ์˜๋ฏธ ์ •๋ณด๋ฅผ ์—ฐ์†์ ์ด๊ณ  ๊ตฌ์กฐ์ ์ธ ๋ฐฉ์‹์œผ๋กœ ํ‘œํ˜„ํ•˜๊ณ  ์žˆ์Œ์„ ํ™•์ธํ•˜์˜€์Šต๋‹ˆ๋‹ค.

๋ฐ˜๋ฉด, VAE + GAN ๊ฒฐํ•ฉ ๋ชจ๋ธ์˜ ๊ฒฝ์šฐ ์‹œ๊ฐ์  ํ’ˆ์งˆ ๊ฐœ์„ ์„ ๊ธฐ๋Œ€ํ•˜์˜€์œผ๋‚˜, MSE ๊ธฐ์ค€์—์„œ๋Š” VAE ๋‹จ๋… ๋ชจ๋ธ๋ณด๋‹ค ์˜คํžˆ๋ ค ์„ฑ๋Šฅ์ด ์ €ํ•˜๋˜๋Š” ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜ํƒ€๋‚ฌ์Šต๋‹ˆ๋‹ค. ์ด๋Š” GAN์ด ํ”ฝ์…€ ๋‹จ์œ„์˜ ์žฌ๊ตฌ์„ฑ ์˜ค์ฐจ๋ฅผ ์ตœ์†Œํ™”ํ•˜๋Š” ๋ฐ ๋ชฉ์ ์ด ์žˆ๋Š” ๋ชจ๋ธ์ด ์•„๋‹ˆ๋ผ, ์‹œ๊ฐ์ ์œผ๋กœ ์ž์—ฐ์Šค๋Ÿฌ์šด ์งˆ๊ฐ๊ณผ ๋ถ„ํฌ๋ฅผ ํ•™์Šตํ•˜๋Š” ๋ฐ ์ดˆ์ ์„ ๋‘๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์œผ๋กœ ํ•ด์„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์‹ค์ œ๋กœ GAN์„ ์ ์šฉํ•œ ๊ฒฐ๊ณผ์—์„œ ์‹œ๊ฐ์ ์œผ๋กœ ํฐ ์„ ๋ช…๋„ ํ–ฅ์ƒ์ด ๋‚˜ํƒ€๋‚˜์ง€๋Š” ์•Š์•˜์œผ๋ฉฐ, ์ผ๋ถ€ ๊ฒฝ์šฐ์—๋Š” ๋…ธ์ด์ฆˆ๊ฐ€ ์ถ”๊ฐ€๋œ ๋“ฏํ•œ ๊ฒฐ๊ณผ๋„ ๊ด€์ฐฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. GAN์€ ์ž…๋ ฅ์œผ๋กœ ์ œ๊ณต๋œ ๋ณต์› ๊ฒฐ๊ณผ์˜ ํ’ˆ์งˆ์— ํฌ๊ฒŒ ์˜์กดํ•˜๋ฏ€๋กœ, VAE ๋‹จ๊ณ„์—์„œ ์ถฉ๋ถ„ํ•œ ์ •๋ณด๊ฐ€ ๋ณด์กด๋˜์ง€ ์•Š์€ ๊ฒฝ์šฐ GAN์˜ ํšจ๊ณผ๊ฐ€ ์ œํ•œ์ ์œผ๋กœ ๋‚˜ํƒ€๋‚  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Limitation & Future Work

Limitations

๋ณธ ํ”„๋กœ์ ํŠธ์—๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํ•œ๊ณ„์ ์ด ์กด์žฌํ•ฉ๋‹ˆ๋‹ค.

์ฒซ์งธ, ์‚ฌ์šฉํ•œ FER-2013 ๋ฐ์ดํ„ฐ์…‹์˜ ํ•ด์ƒ๋„๊ฐ€ 48ร—48๋กœ ๋งค์šฐ ๋‚ฎ๋‹ค๋Š” ์ ์ž…๋‹ˆ๋‹ค. ์›๋ณธ ์ด๋ฏธ์ง€ ์ž์ฒด๊ฐ€ ์ €ํ™”์งˆ์ด๋ฉฐ, ์–ผ๊ตด์˜ ์„ธ๋ถ€์ ์ธ ํ‘œ์ • ๋ณ€ํ™”๋‚˜ ๊ณ ์ฃผํŒŒ ์ •๋ณด๊ฐ€ ์ถฉ๋ถ„ํžˆ ํฌํ•จ๋˜์–ด ์žˆ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ํŠน์„ฑ์œผ๋กœ ์ธํ•ด VAE์˜ ๋ณต์› ๋‹จ๊ณ„์—์„œ ์ด๋ฏธ์ง€๊ฐ€ ์ „๋ฐ˜์ ์œผ๋กœ ํ๋ฆฟํ•ด์ง€๋Š” ๊ฒฝํ–ฅ์ด ๋‚˜ํƒ€๋‚ฌ์œผ๋ฉฐ, ์ดํ›„ GAN์„ ์ ์šฉํ•˜๋”๋ผ๋„ ํฌ๊ฒŒ ๊ฐœ์„ ํ•˜๋Š” ๋ฐ์—๋Š” ํ•œ๊ณ„๊ฐ€ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

๋‘˜์งธ, ํ‘œ์ • ๋ณ€ํ™”์˜ ์ •๋„์— ๋”ฐ๋ผ ํŽธ์ง‘ ๊ฒฐ๊ณผ์˜ ์ฐจ์ด๊ฐ€ ํฌ๊ฒŒ ๋‚˜ํƒ€๋‚ฌ์Šต๋‹ˆ๋‹ค. ์œ„์—์„œ ์ œ์‹œํ•œ happy โ†’ neutral๊ณผ ๊ฐ™์€ ๊ฒฝ์šฐ์—๋Š” ํ‘œ์ • ๋ณ€ํ™”๊ฐ€ ๋น„๊ต์  ๋šœ๋ ทํ•˜๊ฒŒ ๊ด€์ฐฐ๋˜์—ˆ์œผ๋‚˜, sad โ†’ angry์™€ ๊ฐ™์ด ํ‘œ์ • ๊ฐ„ ์ฐจ์ด๊ฐ€ ์ƒ๋Œ€์ ์œผ๋กœ ๋ฏธ๋ฌ˜ํ•œ ๊ฒฝ์šฐ์—๋Š” ๋ณ€ํ™”๊ฐ€ ๋ช…ํ™•ํ•˜๊ฒŒ ๋“œ๋Ÿฌ๋‚˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ์‹ค์ œ ์ด๋ฏธ์ง€๋“ค์„ ํ™•์ธํ•œ ๊ฒฐ๊ณผ, FER-2013 ๋ฐ์ดํ„ฐ์…‹ ๋‚ด ์ผ๋ถ€ ํ‘œ์ • ํด๋ž˜์Šค๋Š” ํ‘œ์ • ์ž์ฒด๊ฐ€ ๊ฐ•ํ•˜๊ฒŒ ํ‘œํ˜„๋˜์–ด ์žˆ์ง€ ์•Š์•„, ์ž ์žฌ ๊ณต๊ฐ„์—์„œ์˜ ์„ ํ˜• ์ด๋™๋งŒ์œผ๋กœ๋Š” ์˜๋ฏธ ์žˆ๋Š” ํ‘œ์ • ๋ณ€ํ™”๋ฅผ ์ƒ์„ฑํ•˜๊ธฐ ์–ด๋ ค์šด ๊ฒฝ์šฐ๊ฐ€ ์กด์žฌํ•˜์˜€์Šต๋‹ˆ๋‹ค.

์…‹์งธ, ํ‘œ์ • ํŽธ์ง‘์ด ์ž ์žฌ ๊ณต๊ฐ„์—์„œ์˜ ๋‹จ์ˆœํ•œ ์„ ํ˜• ์ด๋™์— ๊ธฐ๋ฐ˜ํ•˜๊ณ  ์žˆ๋‹ค๋Š” ์  ๋˜ํ•œ ํ•œ๊ณ„๋กœ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž ์žฌ ๊ณต๊ฐ„์ด ์—ฐ์†์ ์ด๋ผ๋Š” ์žฅ์ ์€ ์žˆ์œผ๋‚˜, ๋ชจ๋“  ํ‘œ์ • ๋ณ€ํ™”๊ฐ€ ํ•˜๋‚˜์˜ ์„ ํ˜• ๋ฐฉํ–ฅ์œผ๋กœ ์ž˜ ํ‘œํ˜„๋œ๋‹ค๊ณ  ๊ฐ€์ •ํ•˜๊ธฐ๋Š” ์–ด๋ ต์Šต๋‹ˆ๋‹ค. ์ด๋กœ ์ธํ•ด ฮฑ ๊ฐ’์ด ์ปค์งˆ์ˆ˜๋ก ํ‘œ์ • ๋ณ€ํ™”๊ฐ€ ๊ณผ๋„ํ•ด์ง€๊ฑฐ๋‚˜ ์–ผ๊ตด ๊ตฌ์กฐ๊ฐ€ ์™œ๊ณก๋˜๋Š” ํ˜„์ƒ์ด ์ผ๋ถ€ ๊ด€์ฐฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

Future Work

ํ–ฅํ›„ ์—ฐ๊ตฌ์—์„œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ฐฉํ–ฅ์œผ๋กœ ๋ณธ ํ”„๋กœ์ ํŠธ๋ฅผ ํ™•์žฅํ•  ์ˆ˜ ์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋‹จ์ˆœํ•œ ํ”ฝ์…€ ๊ธฐ๋ฐ˜ ์†์‹ค ํ•จ์ˆ˜(MSE, L1 loss) ์™ธ์— perceptual loss๋‚˜ feature-based loss๋ฅผ ๋„์ž…ํ•œ๋‹ค๋ฉด, GAN์˜ ์žฅ์ ์„ ๋ณด๋‹ค ํšจ๊ณผ์ ์œผ๋กœ ๋ฐ˜์˜ํ•  ์ˆ˜ ์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์†์‹ค ํ•จ์ˆ˜๋Š” ์‚ฌ์ „ ํ•™์Šต๋œ ๋„คํŠธ์›Œํฌ์˜ ์ค‘๊ฐ„ ํŠน์ง• ๊ณต๊ฐ„์—์„œ ์ด๋ฏธ์ง€ ๊ฐ„ ์ฐจ์ด๋ฅผ ์ธก์ •ํ•˜๋ฏ€๋กœ, ์ธ๊ฐ„์˜ ์‹œ๊ฐ์  ์ธ์‹๊ณผ ๋ณด๋‹ค ์ž˜ ๋ถ€ํ•ฉํ•˜๋Š” ํ‰๊ฐ€ ๊ธฐ์ค€์„ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ํ”ฝ์…€ ๋‹จ์œ„ ์˜ค์ฐจ๋Š” ๋‹ค์†Œ ์ฆ๊ฐ€ํ•˜๋”๋ผ๋„, ์‹œ๊ฐ์ ์œผ๋กœ ์ž์—ฐ์Šค๋Ÿฌ์šด ๊ฒฐ๊ณผ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋ฐฉํ–ฅ์œผ๋กœ ๋ชจ๋ธ์„ ์œ ๋„ํ•  ์ˆ˜ ์žˆ์„ ๊ฒƒ์œผ๋กœ ๊ธฐ๋Œ€๋ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ํ‘œ์ • ํŽธ์ง‘ ๋ฐฉ์‹ ์ธก๋ฉด์—์„œ๋Š” ๋‹จ์ผ ๋ฐฉํ–ฅ ๋ฒกํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ์‹์—์„œ ๋‚˜์•„๊ฐ€, ์กฐ๊ฑด๋ถ€ ์ƒ์„ฑ ๋ชจ๋ธ์„ ๋„์ž…ํ•˜๋Š” ๊ฒƒ๋„ ํ•˜๋‚˜์˜ ํ™•์žฅ ๋ฐฉํ–ฅ์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด conditional GAN์ด๋‚˜ conditional VAE์™€ ๊ฐ™์ด ํ‘œ์ • ๋ ˆ์ด๋ธ”์„ ์กฐ๊ฑด์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ๋ชจ๋ธ์„ ํ™œ์šฉํ•œ๋‹ค๋ฉด, ํŠน์ • ํ‘œ์ •์œผ๋กœ์˜ ๋ณ€ํ™˜์„ ๋ณด๋‹ค ๋ช…ํ™•ํ•˜๊ฒŒ ์ œ์–ดํ•  ์ˆ˜ ์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ฐฉ์‹์€ ํ‘œ์ • ๊ฐ„ ์ฐจ์ด๊ฐ€ ๋ฏธ๋ฌ˜ํ•œ ๊ฒฝ์šฐ์—๋„ ๋ชจ๋ธ์ด ๋ชฉํ‘œ ํ‘œ์ •์„ ๋ณด๋‹ค ๋ถ„๋ช…ํ•˜๊ฒŒ ํ•™์Šตํ•˜๋„๋ก ๋„์™€์ค„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. GAN ๊ธฐ๋ฐ˜ ์ ‘๊ทผ๋ฒ• ์™ธ์—๋„ ๋‹ค์–‘ํ•œ ์ƒ์„ฑ ๋ชจ๋ธ์„ ํ™œ์šฉํ•œ ๊ฐœ์„  ๊ฐ€๋Šฅ์„ฑ์ด ์กด์žฌํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, attention ๋ฉ”์ปค๋‹ˆ์ฆ˜์„ ํ™œ์šฉํ•˜์—ฌ ์–ผ๊ตด์˜ ํŠน์ • ๋ถ€์œ„(๋ˆˆ, ์ž… ๋“ฑ)์— ์ง‘์ค‘ํ•˜๋„๋ก ์„ค๊ณ„ํ•˜๊ฑฐ๋‚˜, autoencoder ๊ตฌ์กฐ์— residual connection์„ ์ถ”๊ฐ€ํ•˜์—ฌ ๋ณต์› ํ’ˆ์งˆ์„ ํ–ฅ์ƒ์‹œํ‚ค๋Š” ๋ฐฉ๋ฒ•๋„ ๊ณ ๋ คํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์ ‘๊ทผ๋ฒ•์€ ๋ชจ๋ธ์˜ ๋ณต์žก๋„๋ฅผ ๊ณผ๋„ํ•˜๊ฒŒ ์ฆ๊ฐ€์‹œํ‚ค์ง€ ์•Š์œผ๋ฉด์„œ๋„ ๋ณต์› ์„ฑ๋Šฅ์„ ๊ฐœ์„ ํ•˜๋Š” ๋Œ€์•ˆ์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋งˆ์ง€๋ง‰์œผ๋กœ diffusion ๋ชจ๋ธ๊ณผ ๊ฐ™์€ ์ตœ์‹  ์ƒ์„ฑ ๋ชจ๋ธ์€ ์ ์ „์ ์ธ ๋…ธ์ด์ฆˆ ์ œ๊ฑฐ๋ฅผ ํ†ตํ•ด ๊ณ ํ’ˆ์งˆ ์ด๋ฏธ์ง€๋ฅผ ์ƒ์„ฑํ•˜๋Š”๋ฐ ๊ฐ•์ ์„ ๊ฐ€์ง€๋ฏ€๋กœ, diffusion๊ณผ ๊ฐ™์€ ๋ชจ๋ธ๋„ ํ™œ์šฉํ•˜์—ฌ ๋น„๊ต ์‹คํ—˜์„ ํ•ด๋ณด๋Š” ๊ฒƒ๋„ ์˜๋ฏธ๊ฐ€ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.


About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages