[Paper Review] AutoEncoder

msgoยท2026๋…„ 5์›” 25์ผ

๐Ÿ“Œ ๋ณธ ๊ธ€์€ 2023.04 ์— ์ž‘์„ฑํ•œ paper review๋ฅผ ๋‹ค๋“ฌ์–ด ๋ฐœํ–‰ํ•œ ์•„์นด์ด๋ธŒ ๊ธ€์ž…๋‹ˆ๋‹ค.
์ž‘์„ฑ ๋‹น์‹œ ์ปจํ…์ŠคํŠธ: X:AI 4๊ธฐ Basic

์˜คํ† ์ธ์ฝ”๋”๋ž€ ์‹ ๊ฒฝ๋ง์˜ ํ•œ ์ข…๋ฅ˜๋กœ ์ธํ’‹์„ ๋ชจ๋ธ์— ๋„ฃ์œผ๋ฉด ์ด๋ฅผ ์••์ถ•ํ•˜์—ฌ ์œ ์˜๋ฏธํ•œ representation์„ ์ƒ์„ฑํ•˜๊ณ  ์ด๊ฒƒ์„ ๋‹ค์‹œ ๋””์ฝ”๋”ฉํ•˜์—ฌ ๊ฐ€๋Šฅํ•œํ•œ ์›๋ณธ๊ณผ ์œ ์‚ฌํ•œ ์ƒํƒœ๋กœ ์žฌ๊ตฌ์ถ•ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์˜คํ†  ์ธ์ฝ”๋”๋Š” 1986๋…„์— ์ฒ˜์Œ ์†Œ๊ฐœ๋˜์–ด์กŒ์Šต๋‹ˆ๋‹ค. ์ด ๋•Œ์˜ main contribution์€ ๋น„์ง€๋„ ํ•™์Šต์„ ํ†ตํ•ด์„œ ์ •๋ณด๊ฐ€ ๋‹ด๊ธด representation์„ ๋งŒ๋“ค์–ด๋‚ด๋Š” ๊ฒƒ์ด์—ˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ •์˜๋ฉ๋‹ˆ๋‹ค.

Encoder A : Rn>>RpR^n >> R^p

์ž…๋ ฅ๊ฐ’์„ ๋ฐ›์•„ ํŠน์ง•๊ฐ’์œผ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ์‹ ๊ฒฝ๋ง

Decoder **B** : Rp>>RnR^p >> R^n

ํŠน์ง•๊ฐ’์„ ๋ฐ›์•„ ์ถœ๋ ฅ๊ฐ’์œผ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ์‹ ๊ฒฝ๋ง

๋ชฉ์  ํ•จ์ˆ˜ arg min๐ด,๐ต ๐ธ[ฮ”(x, **๐ต** โ—ฆ **๐ด**(x)]

์—ฌ๊ธฐ์„œ x๋Š” input์„ ๋œปํ•˜๋ฉฐ, ฮ”๋Š” loss๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. loss๋Š” l2 norm์„ ๋”ฐ๋ฆ…๋‹ˆ๋‹ค. ์ด loss๋ฅผ ์ค„์ด๊ธฐ ์œ„ํ•ด ํ•™์Šต์ด ์ง„ํ–‰๋˜๋ฉฐ Encoder์˜ Input๊ณผ Decoder output์„ ๊ฐ™๊ฒŒ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด ํ•™์Šต์ด ์ง„ํ–‰๋˜์–ด์ง‘๋‹ˆ๋‹ค.

์˜คํ† ์ธ์ฝ”๋”๋Š” ์ฃผ๋กœ input data feature๋ฅผ ์ถ”์ถœํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ์‚ฌ์šฉ๋˜๋ฉฐ ์ฐจ์› ์ถ•์†Œ์— ํ™œ์šฉ๋˜์–ด์ง‘๋‹ˆ๋‹ค. Batch-Norm, parameter Initialization๊ธฐ๋ฒ•์ด ๋‚˜์˜ค๊ธฐ ์ „ Network parameter์ดˆ๊ธฐํ™”, pre-training์— ๋งŽ์ด ์‚ฌ์šฉ๋˜์–ด์กŒ๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

599

์ดˆ๊ธฐํ™” ๊ธฐ๋ฒ•์ด ๋‚˜์˜ค๊ธฐ ์ „, Auto encoder๋Š” ํ•™์Šต์„ ์œ„ํ•ด ํ•˜๋‚˜์”ฉ ๋–ผ์–ด์„œ ๋”ฐ๋กœ ๋”ฐ๋กœ ํ•™์Šต์„ ์ง„ํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ ๋‹ค์Œ ๊ฐ๊ฐ์˜ pretrained๋œ weight๋ฅผ ์ด์šฉํ•˜์—ฌ ์ „์ฒด์ ์ธ ๋ชจ๋ธ ํ•™์Šต์„ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

Encoder์™€ Decoder๊ฐ€ activation function์—†์ด ์ž‘๋™๋˜๋Š” ๊ฒฝ์šฐ๋„ ์กด์žฌํ•ฉ๋‹ˆ๋‹ค. ์ด์™€ ๊ฐ™์€ ๊ฒฝ์šฐ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ latent representation์„ PCA์™€ ๊ฐ™์ด ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฏ€๋กœ ์‚ฌ์‹ค์ƒ autoencoder๋Š” PCA์˜ ์ผ๋ฐ˜ํ™”๋ผ๊ณ ๋„ ๋ณผ ์ˆ˜ ์žˆ์œผ๋ฉฐ ๋ฐ์ดํ„ฐ์˜ ์ €์ฐจ์› ์„ค๋ช…์„ ๊ฐ€๋Šฅ์ผ€ ํ•ด์ค๋‹ˆ๋‹ค. ์˜คํ† ์ธ์ฝ”๋”๋Š” end-to-end๋กœ ํ•™์Šต์ด ๊ฐ€๋Šฅํ•˜๋ฉฐ layers๊ฐ€ stack๋œ ํ˜•ํƒœ๋กœ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

LATENT FEATURE

์‹ ๊ฒฝ๋ง ๋‚ด๋ถ€์—์„œ ์ถ”์ถœ๋œ ํŠน์ง•์ • ๊ฐ’๋“ค

ํ‘œํ˜„ํ•™์Šต/ํŠน์ง•ํ•™์Šต์ด๋ž€?

ํŠน์ง• ํƒ์ง€๋‚˜ ๋ถ„๋ฅ˜๋ฅผ ์œ„ํ•ด ํ•„์š”ํ•œ ํŠน์ง•์ ๋“ค์„ ์ž๋™์œผ๋กœ ๋ฐœ๊ฒฌํ•˜๋Š” ์‹œ์Šคํ…œ์  ๊ธฐ๋ฒ•๋“ค์˜ ์ด์ฒด๋ฅผ ์ผ์ปซ๋Š”๋‹ค.

์ฐจ์›์„ ์ค„์ด๋Š” ์ด์œ ๊ฐ€ ๋ฌด์—‡์ผ๊นŒ? โ†’ ์ฐจ์›์˜ ์ €์ฃผ

์ฐจ์›์˜ ์ €์ฃผ

325

๊ณ ์ฐจ์› ๊ณต๊ฐ„์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋ถ„์„ํ•˜๊ฑฐ๋‚˜ ์ธก์ •ํ•  ๋•Œ ์ €์ฐจ์› ๊ณต๊ฐ„์—์„œ๋Š” ๋‚˜ํƒ€๋‚˜์ง€ ์•Š์•˜๋˜ ์—ฌ๋Ÿฌ ๋ฌธ์ œ๋“ค์ด ๋ฐœ์ƒํ•˜๋Š” ๊ฒƒ์œผ๋กœ, ๋จธ์‹ ๋Ÿฌ๋‹์—์„œ๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ์ฐจ์›์ด ์ฆ๊ฐ€ํ•  ๊ฒฝ์šฐ ๊ธฐํ•˜๊ธ‰์ˆ˜์ ์ธ ๋ฐ์ดํ„ฐ๊ฐ€ ์š”๊ตฌ๋˜๋Š” ํ˜„์ƒ์„ ๋งํ•œ๋‹ค.

์ถ”๊ฐ€์ ์ธ ๊ด€๋ จ

๋ชจ๋ธ์˜ ํ•™์Šต ๋ฐฉ๋ฒ•

loss๋ฅผ ์ค„์ด๋Š” ๊ฒƒ์ด๋‹ค!

์•„๋ž˜๋Š” ํ•œ๊ฐœ์˜ ๋ ˆ์ด์–ด๋ฅผ ๊ฐ€์ง€๋Š” ๋ชจ๋ธ์„ ํ†ตํ•ด ํ•™์Šต์„ ์ง„ํ–‰ํ•˜๋Š” ๊ฒƒ์ด๋‹ค.

๋‹จ ํ•œ๊ฐœ์˜ ๋ ˆ์ด์–ด๋ฅผ ๊ฐ€์ง€๋ฉฐ ๊ฐ™์€ ๊ฐ’์œผ๋กœ ์ถ”๋ก ์„ ํ•˜๋ฉฐ ๋ชจ๋ธ์€ ๊ฐ™์€๋ฐ ์™œ ํ•™์Šต์˜ ์†๋„๊ฐ€ ๋‹ค๋ฅผ๊นŒ?

467

467

๊ทธ ์ด์œ ๋Š” ๋ฐ”๋กœ ์ดˆ๊นƒ๊ฐ’์ด๋‹ค.

490

์™ผ์ชฝ์˜ ํ•™์Šต ์ดˆ๊นƒ๊ฐ’์˜ ๊ธฐ์šธ๊ธฐ๊ฐ€ ์•ฝ 0.2, ์˜ค๋ฅธ์ชฝ์˜ ํ•™์Šต ์ดˆ๊นƒ๊ฐ’์˜ ๊ธฐ์šธ๊ธฐ๊ฐ€ ์•ฝ 0.01 ์ •๋„๋กœ ์ด ์ฐจ์ด๋Š” ํฌ๋ฉฐ ์ด์— ๋”ฐ๋ผ ์ „ํŒŒ๋˜๋Š” ๊ธฐ์šธ๊ธฐ์˜ ํฌ๊ธฐ๊ฐ€ ๋‹ฌ๋ผ ํ•™์Šต ์†๋„๊ฐ€ ๋‹ฌ๋ผ์ง„ ๊ฒƒ์ด๋‹ค. ๊ทธ๋งŒํผ ์ดˆ๊นƒ๊ฐ’์ด ์ค‘์š”ํ•˜๋ฉฐ ์ž˜ ์ƒ˜ํ”Œ๋ง๋œ ๋ฐ์ดํ„ฐ๋Š” ์ข‹์€ ๊ฒฐ๊ณผ๋ฅผ ๊ฐ€์ ธ์˜จ๋‹ค๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์ด๋ฅผ ์ƒ๊ฐํ•ด๋ณด๋ฉด ์ดˆ๊นƒ๊ฐ’์„ ๋ ˆ์ดํ„ดํŠธ ๋ฒกํ„ฐ๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉด, ์˜คํ†  ์ธ์ฝ”๋”์˜ ์ธ์ฝ”๋” ๋ถ€๋ถ„์€ ์ดˆ๊นƒ๊ฐ’์„ ๊ฒฐ์ •ํ•˜๋Š” ๋ชจ๋ธ์ด๋ผ ๋ณผ ์ˆ˜ ์žˆ์„ ๊ฒƒ์ด๋‹ค. (๋ถ„ํฌ) โ†’ ์ด๋Š” ์ดํ›„ VAE์—์„œ ์ค‘์š”ํ•œ ๋ถ€๋ถ„์œผ๋กœ ๋‹ค๋ค„์ง„๋‹ค.

Manifold Learning

Manifold๋ž€ ๊ณ ์ฐจ์› ๋ฐ์ดํ„ฐ๋ฅผ ๊ณต๊ฐ„์—๋‹ค๊ฐ€ ๋ฟŒ๋ฆฌ๋ฉด sample๋“ค์„ ์ž˜ ์•„์šฐ๋ฅด๋Š” subspace๊ฐ€ ์žˆ์„ ๊ฑฐ๋ผ๋Š” ๊ฐ€์ •ํ•˜์—์„œ ํ•™์Šต์ด ์ง„ํ–‰๋˜๋ฉฐ, ๋ฐ์ดํ„ฐ์˜ ์ฐจ์›์„ ์ถ•์†Œ์‹œํ‚ค๋Š” ํ•™์Šต ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค.

Manifold๋Š” ๋ฐ์ดํ„ฐ ์••์ถ•, ๋ฐ์ดํ„ฐ ์‹œ๊ฐํ™”, ์ฐจ์›์˜ ์ €์ฃผ, ์ค‘์š” ํ”ผ์ณ ํŒŒ์•…์—์„œ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

Manifold๋Š” ๊ณ ์ฐจ์›์˜ ๋ฐ์ดํ„ฐ๋Š” ๋ฐ€๋„๋Š” ๋‚ฎ์ง€๋งŒ, ๊ณ ์ฐจ์›์˜ ๋ฐ์ดํ„ฐ๋ฅผ ํฌํ•จํ•˜๋Š” ์ €์ฐจ์›์˜ ๋งค๋‹ˆํด๋“œ๊ฐ€ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

413

์šฐ๋ฆฌ๋Š” ์ด๋Ÿฌํ•œ ๋งค๋‹ˆํด๋“œ๋ฅผ ์ฐพ์•„์„œ, ์ƒ˜ํ”Œ ๋ฐ์ดํ„ฐ๋ฅผ ์ถ”์ถœํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋งค๋‹ˆํด๋“œ ๋‚ด์—์„œ ์ขŒํ‘œ๋“ค์ด ์กฐ๊ธˆ์”ฉ ๋ณ€ํ•  ๋•Œ ์› ๋ฐ์ดํ„ฐ๋„ ์œ ์˜๋ฏธํ•œ ๋ณ€ํ™”๋ฅผ ๋ณด์ธ๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•  ๊ฒฝ์šฐ ์šฐ๋ฆฌ๋Š” ์›๋ณธ ๋ฐ์ดํ„ฐ์™€ ์œ ์‚ฌํ•œ sample์„ ์ถ”์ถœํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

โ†’ ์ €๋Š” ์—ฌ๊ธฐ์„œ manifold๋ž€ AutoEncoder์˜ Encoder์˜ ํŒŒ๋ผ๋ฏธํ„ฐ ๊ณผ์ • ์ž์ฒด๋ฅผ manifold์ฐจ์›์ด๋ผ ์ƒ๊ฐํ–ˆ์Šต๋‹ˆ๋‹ค.

DAE ( Denoising Auto Encoder )

denoising AE๋Š” input data์˜ random noise๋ฅผ ์ถ”๊ฐ€ํ•˜๋Š” ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค. output data์ธ ์›๋ณธ์€ ๊ทธ๋Œ€๋กœ ๋‘๊ณ  ํ•™์Šต์„ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค. DAE๋Š” noise๊ฐ€ ์ถ”๊ฐ€๋˜์–ด ์žˆ๋Š” data์—์„œ๋ถ€ํ„ฐ ํ•™์Šต์„ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋ชจ๋ธ์€ ์ค‘์š”ํ•œ ํŒจํ„ด๋“ค์„ ํŒŒ์•…ํ•ด๋‚ด๋ฉฐ ์›๋ณธ ๋ฐ์ดํ„ฐ ๋ณต๊ตฌ๋ฅผ ๋” ๊ฐ•ํ•˜๊ฒŒ ํ•™์Šตํ•ฉ๋‹ˆ๋‹ค. ์ด์— ๋”ฐ๋ผ ๋”์šฑ ๋” ์ข‹์€ ์„ฑ๋Šฅ์„ ๊ฐ–๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

๊ฒฐ๋ก  AutoEncoder๋Š” Manifold Learning์„ ์œ„ํ•จ!

์ฐธ๊ณ 

https://www.youtube.com/watch?v=YxtzQbe2UaE

Autoencoders https://arxiv.org/abs/2003.05991

https://deepinsight.tistory.com/123

https://www.slideshare.net/NaverEngineering/ss-96581209


๐Ÿ”— ๊ด€๋ จ ๊ธ€

0๊ฐœ์˜ ๋Œ“๊ธ€