์ด ๋ฌธ์„œ์˜ ์›๋ณธ์€ ์™ธ๋ถ€ ์œ„ํ‚ค์—์„œ ๊ฐ€์ ธ์™”์Šต๋‹ˆ๋‹ค.
ANN์—์„œ ๋„˜์–ด์˜ด
1. ๊ฐœ์š”2. ๋ณธ๋ก 
2.1. ์ „๋‹ฌ/ํ™œ์„ฑ ํ•จ์ˆ˜2.2. ํ•™์Šต ๋ฐฉ๋ฒ•2.3. ์ƒ๋ฌผํ•™์  ๋‡Œ์™€์˜ ์ฐจ์ด2.4. ๋ช…์˜ˆํšŒ๋ณต, ๊ทธ๋ฆฌ๊ณ  ๋ถ€ํ™œ
3. ์ข…๋ฅ˜
3.1. Perceptron
3.1.1. Multi Layer Perceptron (MLP)
3.2. ์‹ฌ์ธตํ•™์Šต(Deep Learning)
3.2.1. Convolutional Neural Network(CNN)3.2.2. Recurrent Neural Network
3.2.2.1. Long Short Term Memory
3.2.2.1.1. Gated Recurrent Unit
3.3. ๊ฐ•ํ™”ํ•™์Šต3.4. ์ง„ํ™”์ „๋žต3.5. ํ˜ผํ•ฉ๋ชจ๋ธ
3.5.1. ์˜คํ† ์ธ์ฝ”๋”3.5.2. GAN
3.5.2.1. DCGAN3.5.2.2. cGAN
4. ํ•™์Šต๋ฒ•
4.1. ๊ฒฝ์‚ฌ ํ•˜๊ฐ•๋ฒ•4.2. ํ™•๋ฅ ์  ๊ฒฝ์‚ฌ ํ•˜๊ฐ•๋ฒ•4.3. Adam4.4. Nadam
5. ๊ณตํ•™์ ์ธ ๊ธฐ์ˆ 6. ๋ฌธ์ œ์ 7. ๊ธฐ์ˆ  ๋™ํ–ฅ8. ๊ธฐํƒ€9. ๊ด€๋ จ ๋ฌธ์„œ

1. ๊ฐœ์š”[ํŽธ์ง‘]

ไบบๅทฅ็ฅž็ถ“็ถฒ / artificial neural network
์ธ๊ณต์‹ ๊ฒฝ๋ง์ด๋ž€, ์ธ๊ฐ„์˜ ๋‰ด๋Ÿฐ ๊ตฌ์กฐ๋ฅผ ๋ณธ๋–  ๋งŒ๋“  ๊ธฐ๊ณ„ํ•™์Šต ๋ชจ๋ธ์ด๋‹ค.

์ด๋ฆ„์—์„œ ์•Œ ์ˆ˜ ์žˆ๋“ฏ์ด ์ƒ๋ฌผ์˜ ์‹ ๊ฒฝ๋ง, ํŠนํžˆ ์ธ๊ฐ„์˜ ์‹œ๊ฐ/์ฒญ๊ฐ ํ”ผ์งˆ์„ ๋ณธ๋–  ๋งŒ๋“  ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋‹ค. (์ง„์งœ ์ธ๊ฐ„ ๋‡Œ์˜ ์ž‘๋™ ๋ฐฉ์‹๊ณผ๋Š” ๋ฐฑ๋งŒ ๊ด‘๋…„ ์ •๋„ ๊ฑฐ๋ฆฌ๊ฐ€ ์žˆ๋‹ค.)

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

2. ๋ณธ๋ก [ํŽธ์ง‘]


3blue1brown์˜ ๊ฐ„๋‹จํ•œ ์„ค๋ช…
๊ธฐ๋ณธ ์›๋ฆฌ๋Š” ๋‹จ์ˆœํ•˜๋‹ค. ๋ช‡ ๊ฐœ์˜ ์ธต์œ„๋ฅผ ๋งŒ๋“ค์–ด์„œ ๊ทธ ์•ˆ์— '์„ธํฌ'๋“ค์„ ์ง‘์–ด๋„ฃ๊ณ , ์ด๋“ค์„ ๋ฌด์ž‘์œ„ ์—ฐ๊ฒฐ ๊ฐ•๋„๋กœ ์—ฐ๊ฒฐํ•œ๋‹ค. ๊ฐ '์„ธํฌ'๋“ค์€ ์ž์‹ ์—๊ฒŒ ๋“ค์–ด์˜จ ์‹ ํ˜ธ๋ฅผ ๊ฐ€์ค‘์น˜์™€ ๊ณฑํ•ด ๋ชจ๋‘ ๋”ํ•˜๊ณ (), ์—ญ์น˜์™€ ๋น„๊ตํ•ด์„œ() ์‹ ํ˜ธ๋ฅผ ๋‹ค์Œ ๋‰ด๋Ÿฐ์œผ๋กœ ์ „๋‹ฌํ•œ๋‹ค.

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

2.1. ์ „๋‹ฌ/ํ™œ์„ฑ ํ•จ์ˆ˜[ํŽธ์ง‘]

์•ž์„œ ์–ธ๊ธ‰ํ–ˆ๋“ฏ์ด ์ž…๋ ฅ ์‹ ํ˜ธ์˜ ์„ ํ˜• ํ•ฉ์„ ํ™œ์„ฑํ™” ํ•จ์ˆ˜์— ์ง‘์–ด๋„ฃ์œผ๋ฉด์„œ ์ตœ์ข…์ ์œผ๋กœ ์‹ ํ˜ธ์˜ ๊ฐ•๋„๋ฅผ ๊ณ„์‚ฐํ•˜๋Š”๋ฐ, ๊ทธ๋ƒฅ ์ฃผ๋จน๊ตฌ๊ตฌ์‹์œผ๋กœ ์ด๊ฒƒ์ €๊ฒƒ ํ•จ์ˆ˜๋ฅผ ๋Œ€์ž…ํ•ด ๋ณด๋ฉด์„œ ๊ฐ€์žฅ ๊ฒฐ๊ณผ๊ฐ€ ์ข‹์€ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ค‘์ด๋‹ค. ์ดˆ๊ธฐ์—๋Š” ์‹ค์ œ ์„ธํฌ์˜ ์‹ค๋ฌด์œจ์„ ์ž˜ ๋ชจ์‚ฌํ•  ๊ฒƒ์œผ๋กœ ๋ณด์ด๋Š” sigmoid ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•œ logistic ๋ชจ๋ธ์ด ์‚ฌ์šฉ๋˜์—ˆ๊ณ , tanhํ•จ์ˆ˜๋‚˜ softmax ํ•จ์ˆ˜๊ฐ€ ์‚ฌ์šฉ๋˜์—ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ํ•ด๋‹น ํ•จ์ˆ˜๋ฅผ ํ™œ์„ฑ ํ•จ์ˆ˜๋กœ ์“ธ ๊ฒฝ์šฐ ์€๋‹‰ ์ธต์˜ ์ˆ˜๊ฐ€ ์ฆ๊ฐ€ํ•˜๋ฉด ์—ฐ๊ฒฐ ๊ฐ•๋„๋ฅผ ํ•™์Šต์‹œํ‚ฌ ๋•Œ ํ™œ์„ฑ ํ•จ์ˆ˜ ๋ฏธ๋ถ„ ๊ฐ’์„ ๊ณฑํ•œ ๊ฐ’์ด 0์œผ๋กœ ์ˆ˜๋ ดํ•˜์—ฌ ํ•™์Šต์ด ์ž˜ ๋˜์ง€ ์•Š๋Š”๋‹ค๋Š” ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ๋‹ค. ์ด์— ๋”ฐ๋ผ ์ตœ๊ทผ์—๋Š” sigmoid, tanh์™€ ๊ฐ™์€ squashing function์ด ์•„๋‹ˆ๋ผ, ReLU์™€ ๊ฐ™์ด ์ž…๋ ฅ ๊ฐ’์ด ์ฆ๊ฐ€ํ• ์ˆ˜๋ก ์ถœ๋ ฅ ๊ฐ’๋„ ์ฆ๊ฐ€ํ•˜๋Š” ํ•จ์ˆ˜๊ฐ€ ๋งŽ์ด ์‚ฌ์šฉ๋˜๊ณ  ์žˆ๋‹ค. ReLUํ•จ์ˆ˜๋Š” max(0, x)์˜ ๊ผด์„ ๊ฐ€์ง€๋Š”๋ฐ, ์ž…๋ ฅ ๊ฐ’์ด 0 ์ดํ•˜๋ฉด ํ•ญ์ƒ 0์˜ ์ถœ๋ ฅ ๊ฐ’์„ ๊ฐ€์ง€๋ฏ€๋กœ, ์Œ์ˆ˜์ธ ์ž…๋ ฅ ๊ฐ’์— ๋Œ€ํ•˜์—ฌ ํ•ด๋‹น ๋‰ด๋Ÿฐ์˜ ํ•™์Šต์ด ์ง„ํ–‰๋˜์ง€ ์•Š๋Š”๋‹ค๋Š” ๋ฌธ์ œ์ ์ด ์žˆ์—ˆ๋‹ค. ์ด๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•˜์—ฌ ์Œ์ˆ˜์˜ ์ž…๋ ฅ ๊ฐ’์—์„œ๋„ 0์ด ์•„๋‹Œ ์ถœ๋ ฅ ๊ฐ’์„ ๊ฐ€์ง€๋Š” Leaky ReLU ํ•จ์ˆ˜ ๋ฐ Parametric ReLU ํ•จ์ˆ˜๊ฐ€ ์ œ์•ˆ๋˜์—ˆ์œผ๋ฉฐ, ์ผ๋ฐ˜์ ์œผ๋กœ ReLU๋ณด๋‹ค ์ข‹์€ ์„ฑ๋Šฅ์„ ๋‚ธ๋‹ค๊ณ  ์•Œ๋ ค์ ธ์žˆ๋‹ค. ๋”๋ถˆ์–ด ํ•จ์ˆ˜์˜ ๋ฏธ๋ถ„ ๊ฐ’์ด ์—ฐ์†์ ์ธ ELU ํ•จ์ˆ˜ ๋˜ํ•œ ํ™œ์„ฑ ํ•จ์ˆ˜๋กœ ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๊ณ  ์žˆ๋‹ค.

๋‹ค๋งŒ ์ตœ๊ทผ ๋ฐฐ์น˜ ์ •๊ทœํ™”๋ผ๋Š” ๋ฐฉ๋ฒ•์ด ์ œ์•ˆ๋˜๋ฉด์„œ, ์ž…๋ ฅ์˜ ๊ฐ’ ๋ถ„ํฌ๋ฅผ ์ตœ์ ํ™”ํ•  ์ˆ˜ ์žˆ๊ฒŒ๋จ์— ๋”ฐ๋ผ, sigmoid ํ•จ์ˆ˜๋ฅผ ํ™œ์„ฑํ•จ์ˆ˜๋กœ ์“ฐ๋”๋ผ๋„ ์€๋‹‰์ธต์ด ๋งŽ์€ ์ธ๊ณต ์‹ ๊ฒฝ๋ง์„ ์ž˜ ํ•™์Šต์‹œํ‚ฌ ์ˆ˜ ์žˆ๊ฒŒ ๋˜์—ˆ๋‹ค. ์ด์™€ ๊ฐ™์€ ํ˜„์ƒ์€ sigmoid ํ•จ์ˆ˜๊ฐ€ ๊ทผ๋ฐฉ์—์„œ ์ง์„ ๊ณผ ๊ฐ™์€ ํ˜•ํƒœ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์œผ๋ฏ€๋กœ ์ž…๋ ฅ์„ ์ž˜ ์ฒ˜๋ฆฌํ•ด์ฃผ๋ฉด ์ฃผ๋กœ ํ•ด๋‹น ์˜์—ญ์—์„œ ์ž…๋ ฅ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์—์„œ ๊ธฐ์ธํ•œ๋‹ค.

2.2. ํ•™์Šต ๋ฐฉ๋ฒ•[ํŽธ์ง‘]

์ธ๊ณต ์‹ ๊ฒฝ๋ง์˜ ํ•™์Šต์„ ์ง„ํ–‰ํ•˜๋ฉด ํ•™์Šต ๋ฐ์ดํ„ฐ์™€์˜ ์˜ค์ฐจ๋ฅผ ์ตœ์†Œํ™”ํ•  ๊ฒƒ์œผ๋กœ ์˜ˆ์ƒ๋˜๋Š” ๋ฐฉํ–ฅ์œผ๋กœ ๊ฐ€์ค‘์น˜ ์™€ ์—ญ์น˜ ์˜ ์—…๋ฐ์ดํŠธ๊ฐ€ ์ด๋ฃจ์–ด์ง„๋‹ค. '์—ญ์น˜'๋ผ๊ณ  ํ‘œํ˜„ํ•˜๊ธฐ๋Š” ํ•˜์ง€๋งŒ, ์ด ๊ฐ’์€ ์ถœ๋ ฅ ๊ฐ’์ด 1์ธ 'ํŽธํ–ฅ ์„ธํฌ(bias neuron)'๊ณผ์˜ ์—ฐ๊ฒฐ ๊ฐ•๋„๋กœ ๋ณผ ์ˆ˜๋„ ์žˆ์œผ๋ฏ€๋กœ ์—ญ์น˜ ๋˜ํ•œ ์‚ฌ์‹ค์ƒ ์ผ์ข…์˜ ์—ฐ๊ฒฐ ๊ฐ•๋„, ์ฆ‰ ๊ฐ€์ค‘์น˜๋ผ๊ณ  ๋ณผ ์ˆ˜ ์žˆ๋‹ค. ๊ทธ๋ž˜์„œ ๋ช‡๋ช‡ ์ž๋ฃŒ์—์„  ๊ฐ€์ค‘์น˜ ์— ์—ญ์น˜ ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ๋Š” ๊ฒฝ์šฐ๋„ ์žˆ๋‹ค.

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

2.3. ์ƒ๋ฌผํ•™์  ๋‡Œ์™€์˜ ์ฐจ์ด[ํŽธ์ง‘]

์ธ๊ณต ์‹ ๊ฒฝ๋ง์ด๋ผ๋Š” ๋‹จ์–ด ์ž์ฒด๊ฐ€ ๋‚˜ํƒ€๋‚ด๊ณ  ์žˆ๋“ฏ์ด ์ธ๊ณต ์‹ ๊ฒฝ๋ง์€ ์ƒ๋ฌผํ•™์ ์ธ ๋‡Œ์™€ ํฐ ์ฐจ์ด์ ์„ ๋ณด์ธ๋‹ค. ์ƒ๋ฌผ์˜ ๋‡Œ, ํŠนํžˆ ์ธ๊ฐ„์˜ ๋‡Œ๋Š” 1,000์–ต ๊ฐœ ์ด์ƒ์˜ ์„ธํฌ๋กœ ๊ตฌ์„ฑ๋˜์–ด์žˆ๋Š”๋ฐ, ํ˜„์žฌ๊นŒ์ง€์˜ ๊ธฐ์ˆ ๋กœ๋Š” ์ด์™€ ๊ฐ™์€ ์ˆ˜์˜ ๋‰ด๋Ÿฐ์„ ์‹œ๋ฎฌ๋ ˆ์ด์…˜ ํ•  ์ˆ˜ ์—†๋‹ค. ๋น„๋ก ์ธ๊ณต ์‹ ๊ฒฝ๋ง์˜ ๊ตฌ์กฐ ์ž์ฒด๊ฐ€ ์ƒ๋ฌผํ•™์ ์ธ ๋‡Œ์˜ ๊ตฌ์กฐ๋ฅผ ๋ชจ์‚ฌํ•˜๋ฉฐ ์‹œ์ž‘๋˜์—ˆ์œผ๋‚˜, ๋‰ด๋Ÿฐ์˜ ์ˆ˜ ๋ง๊ณ ๋„ ๊ตฌ์กฐ์ ์ธ ์ฐจ์ด๊ฐ€ ์กด์žฌํ•œ๋‹ค. ์ผ๋ฐ˜์ ์ธ ์„ธํฌ๋Š” ์—ญ์น˜ ์ด์ƒ์˜ ์ž๊ทน์„ ๋ฐ›์ง€ ์•Š์œผ๋ฉด, ์•„์˜ˆ ๋ฐ˜์‘์„ ํ•˜์ง€ ์•Š๊ณ , ์—ญ์น˜ ์ด์ƒ์˜ ์ž๊ทน์„ ๋ฐ›์œผ๋ฉด ๋ฐ˜์‘์„ ํ•˜๋Š” ์‹ค๋ฌด์œจ ํŠน์„ฑ์„ ๋ณด์ธ๋‹ค. ์ž๊ทน์ด ์„ธ์ง€๋ฉด ๋ฐ˜์‘์˜ ํฌ๊ธฐ๊ฐ€ ์ปค์ง€๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ, ๋ฐ˜์‘์˜ ๋นˆ๋„๊ฐ€ ๋†’์•„์ง€๋Š”๋ฐ, ์‚ฌ์‹ค ์ด๋Ÿฌํ•œ ํŠน์„ฑ์€ ๊ณ„๋‹จ ํ•จ์ˆ˜(step function), ํ˜น์€ ๋””๋ฝ ๋ธํƒ€ ํ•จ์ˆ˜์™€ ๋น„์Šทํ•˜๋‹ค๊ณ  ๋ณผ ์ˆ˜ ์žˆ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ๋‹จ์œ„ ๊ณ„๋‹จ ํ•จ์ˆ˜์™€ ๊ฐ™์€ ๊ณ„๋‹จ ํ•จ์ˆ˜์˜ ๊ฒฝ์šฐ ์ธ ๊ณณ์—์„œ ๋ถˆ์—ฐ์†์ ์ด๋ฏ€๋กœ ๋ฏธ๋ถ„์„ ํ•  ์ˆ˜๊ฐ€ ์—†๊ณ , ๊ทธ๋ž˜์„œ ํ•™์Šต์„ ํ•  ์ˆ˜ ์—†๋‹ค๋Š” ๋งค์šฐ ํฐ ๋ฌธ์ œ์ ์ด ์กด์žฌํ–ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๊ทธ ๋‹น์‹œ์˜ ๊ณผํ•™์ž๋“ค๊ณผ ๊ณตํ•™์ž๋“ค์€ ๋ฏธ๋ถ„์ด ๊ฐ€๋Šฅํ•œ ๋ถ€๋“œ๋Ÿฌ์šด ๊ณ„๋‹จ ํ•จ์ˆ˜ ํ˜•ํƒœ์ธ sigmoidํ•จ์ˆ˜, tanh ํ•จ์ˆ˜ ๋“ฑ์„ ์ผ๋˜ ๊ฒƒ์ด๋‹ค. ๋น„๋ก sigmoid ํ•จ์ˆ˜๊ฐ€ ๊ณ„๋‹จ ํ•จ์ˆ˜์™€ ๋งค์šฐ ๋น„์Šทํ•œ ํ•จ์ˆ˜๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ์œผ๋‚˜, ์ƒ๋ฌผํ•™์ ์ธ ๋‡Œ์™€๋Š” ํฐ ์ฐจ์ด๊ฐ€ ์žˆ๋Š”๋ฐ, ์ƒ๋ฌผํ•™์ ์ธ ๋‡Œ๋Š” ์‹œ๊ฐ„์˜ ํ๋ฆ„ ์—†์ด๋Š” ์ž‘๋™ํ•  ์ˆ˜ ์—†๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. ๋ฐ˜๋ฉด ์ธ๊ณต ์‹ ๊ฒฝ๋ง์˜ ๊ฒฝ์šฐ ์ž…๋ ฅ ๊ฐ’๋งŒ ์ฃผ๋ฉด, ์‹œ๊ฐ„์˜ ํ๋ฆ„๊ณผ๋Š” ์ƒ๊ด€ ์—†์ด ์ถœ๋ ฅ ๊ฐ’์ด ์ •ํ•ด์ ธ์žˆ๋‹ค.

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

2.4. ๋ช…์˜ˆํšŒ๋ณต, ๊ทธ๋ฆฌ๊ณ  ๋ถ€ํ™œ[ํŽธ์ง‘]

๊ทธ๋Ÿฐ๋ฐ ์ด๋ ‡๊ฒŒ ์—ญ์‚ฌ์— ๋ฌปํž ๊ฒƒ ๊ฐ™๋˜ ์ด ์ด๋ก ์€ ๋Œ์—ฐ ๋”ฅ๋Ÿฌ๋‹(Deep learning)์ด๋ผ๋Š” ์ด๋ฆ„์œผ๋กœ ํ™”๋ คํ•˜๊ฒŒ ๋ถ€ํ™œํ–ˆ๋‹ค. ์ด๋Š” '๊ตฌ์‹œ๋Œ€์˜ ์‚ฐ๋ฌผ'๋กœ ๋ฐ›์•„๋“ค์—ฌ์กŒ๋˜ ์ธ๊ณต ์‹ ๊ฒฝ๋ง์— ๋Œ€ํ•ด์„œ ๊ณ„์†ํ•ด์„œ ์—ฐ๊ตฌ๋ฅผ ์ง„ํ–‰ํ–ˆ๋˜ ์—ฐ๊ตฌ์ž๋“ค์ด ํฐ ์ง„๋ณด๋ฅผ ์ด๋ฃจ์–ด๋ƒˆ๊ธฐ ๋•Œ๋ฌธ์ธ๋ฐ, ์ธ๊ณต ์‹ ๊ฒฝ๋ง์„ ์‚ฌ์ „ ํ›ˆ๋ จ ํ•ด์ฃผ๊ฑฐ๋‚˜, sigmoid ๊ณ„์—ด์˜ ํ•จ์ˆ˜๊ฐ€ ์•„๋‹ˆ๋ผ ReLU ๊ณ„์—ด์˜ ํ•จ์ˆ˜๋ฅผ ์“ฐ๋ฉด ์€๋‹‰์ธต์ด ๋งŽ์•„๋„ ์ธ๊ณต ์‹ ๊ฒฝ๋ง์ด ํ•™์Šต์ด ์ž˜ ๋œ๋‹ค๋Š” ๊ฒƒ์ด ๋ฐํ˜€์กŒ๋˜ ๊ฒƒ์ด๋‹ค. ๋”๋ถˆ์–ด ๊ฐ์ข… ๋Œ€ํšŒ์—์„œ ์ธ๊ณต ์‹ ๊ฒฝ๋ง ๋ชจ๋ธ์ด ๊ธฐ์กด์˜ ๋ชจ๋ธ์„ ๋ง ๊ทธ๋Œ€๋กœ ๋ฐ•์‚ด๋‚ด๋ฒ„๋ฆฌ๋ฉด์„œ ์ˆ˜ ๋งŽ์€ ์—ฐ๊ตฌ์ž๋“ค์ด ๋†€๋ผ๋ฉด์„œ ์ธ๊ณต ์‹ ๊ฒฝ๋ง์œผ๋กœ ๋‹ค์‹œ ๊ด€์‹ฌ์„ ๋Œ๋ฆฌ๊ฒŒ ๋œ ๊ฒƒ์ด๋‹ค. ๋ฌผ๋ก  ์€๋‹‰์ธต์˜ ์ˆ˜๊ฐ€ ์ง€๋‚˜์น˜๊ฒŒ ๋งŽ์•„์งˆ ๊ฒฝ์šฐ ์ด์™€ ๊ฐ™์€ ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•ด๋„ ๊ฒฐ๊ณผ๋ฌผ์˜ ์—ดํ™”๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜๋„ ์žˆ๋‹ค๋Š” ์—ฐ๊ตฌ ๊ฒฐ๊ณผ๊ฐ€ ๋ณด๊ณ ๋˜์—ˆ์œผ๋‚˜, ์ด๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ๋ฐฐ์น˜ ์ •๊ทœํ™”, ResNet๋“ฑ์˜ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์ด ์ œ์•ˆ์ด ๋˜์—ˆ์œผ๋ฉฐ, ์‹ค์ œ๋กœ ํšจ๊ณผ๊ฐ€ ์žˆ๋‹ค๋Š” ๊ฒƒ์ด ๋ฐํ˜€์กŒ๋‹ค. ์ด์™€ ๊ฐ™์ด ์ธ๊ณต ์‹ ๊ฒฝ๋ง์œผ๋กœ ์—ฐ๊ตฌ์ž์˜ ๊ด€์‹ฌ์ด ์ ๋ฆฌ๊ณ  ์ธ๊ณต ์‹ ๊ฒฝ๋ง ๋ชจ๋ธ์ด ๋ฐœ์ „ํ•˜๋Š”๋ฐ์—๋Š” ๊ธฐ์กด์— ๋‚œ์ œ๋กœ ๋ณด์˜€๋˜ ๋ฌธ์ œ๋“ค์ด ํ•ด๊ฒฐ๋œ ๊ฒƒ๋„ ๋ฌด์‹œํ•  ์ˆ˜ ์—†์œผ๋‚˜, ์ปดํ“จํ„ฐ์˜ ์—ฐ์‚ฐ์†๋„๊ฐ€ ๋ฌด์ง€๋ง‰์ง€ํ•˜๊ฒŒ ๋นจ๋ผ์ง€๋ฉด์„œ ๋А๋ฆฐ ์ˆ˜๋ ด ์†๋„๊ฐ€ ๊ทธ๋ ‡๊ฒŒ๊นŒ์ง€ ๋ถ€๊ฐ๋˜์ง€ ์•Š๊ฒŒ ๋˜์—ˆ๋‹ค๋Š” ๊ฒƒ๋„ ๋ฌด์‹œํ•  ์ˆ˜ ์—†๋Š” ์š”์ธ์ด๋‹ค. ์™œ๋ƒํ•˜๋ฉด, ๋‚œ์ œ๋“ค์€ ๊ฒฐ๊ตญ ์‹œ๊ฐ„์ด ์ง€๋‚˜๋ฉด ๋ˆ„๊ตฐ๊ฐ€๋Š” ํ•ด๊ฒฐ์„ ํ–ˆ์„ ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

์•„์ง ์ธ๊ณต์‹ ๊ฒฝ๋ง ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ์ธ๊ฐ„ ๋‡Œ์˜ ์„ฑ๋Šฅ์˜ ๋ฐœ๋์—๋„ ๋ฏธ์น˜์ง€ ๋ชปํ•œ๋‹ค. ์ธ๊ฐ„์˜ ์‹œ๊ฐํ”ผ์งˆ์€ ๊ณ ์ž‘ ๋ช‡๋ฐฑg๋ฐ–์— ๋ฌด๊ฒŒ๊ฐ€ ์•ˆ ๋˜๊ณ  ์—๋„ˆ์ง€์› ์—ญ์‹œ ์„คํƒ• ํ•œ ์Šคํ‘ผ๋งŒ ์ฃผ๋ฉด ๋ช‡ ์‹œ๊ฐ„์ด๊ณ  ๊ตด๋ ค๋จน์„ ์ˆ˜ ์žˆ์ง€๋งŒ, ๊ธฐ๊ณ„๊ฐ€ ๊ทธ ์ผ์„ ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์ง‘์ฑ„๋งŒํ•œ ์Šˆํผ์ปดํ“จํ„ฐ๋กœ๋„ ๋ชจ์ž๋ผ๋‹ค. ์—„์ฒญ ๋”ธ๋ฆฌ๋Š” ์†Œํ”„ํŠธ์›จ์–ด์˜ ํšจ์œจ์„ ์••๋„์ ์ธ ํ•˜๋“œ์›จ์–ด๋กœ ์ฐ์–ด๋ˆ„๋ฅด๊ณ  ์žˆ๋Š” ์…ˆ. ๋„๋ฐ๊ณ ์Šค ๊ต์ˆ˜์˜ ๋ง๋งˆ๋”ฐ๋‚˜ ์•„์ง ๊ธฐ๊ณ„ํ•™์Šต์— ๋Œ€ํ•œ ์šฐ๋ฆฌ์˜ ์ดํ•ด๋Š” ์—ฐ๊ธˆ์ˆ  ์ˆ˜์ค€์ด๋ผ๋Š” ๊ฒƒ์ด ์ •ํ™•ํ•  ๊ฒƒ์ด๋‹ค. ์ธ๊ณต์‹ ๊ฒฝ๋ง์€ ๋งŒ๋“œ๋Š” ์‚ฌ๋žŒ๋„ ์“ฐ๋Š” ์‚ฌ๋žŒ๋„ ์ด๊ฒŒ ์™œ ์ž˜ ์ž‘๋™ํ•˜๋Š”์ง€ ์ž˜ ๋ชจ๋ฅผ ๋งŒํผ ๋ถ€์†๊ณผ ์ถœ๋ ฅ์˜ ์ƒํ˜ธ๊ด€๊ณ„๊ฐ€ ์ฒœ์ฐจ๋งŒ๋ณ„์ด๋‹ค. ๊ทธ๋ƒฅ ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์˜ค๋‹ˆ๊นŒ ์“ฐ๋Š” ๊ฑฐ์ง€(...) ํŠนํžˆ ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ์„ฑ๋Šฅ ๊ฐœ์„ ์„ ์œ„ํ•ด ์ ‘๊ทผํ•˜๋Š” ๊ฐ์ข… ์‹œ๋„์˜ ๊ฒฝ์šฐ ์ธ๊ฐ„ ๋‡Œ์„ธํฌ์˜ ์ž‘๋™ ๋ฐฉ์‹๊ณผ ์ „ํ˜€ ๊ด€๋ จ์ด ์—†๋Š” ๊ฒƒ์€ ๋ฌผ๋ก ์ด๊ณ , ์ด ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•˜๋ฉด ์–ด๋–ป๊ฒŒ ์„ฑ๋Šฅ์ด ๋‚˜์•„์ง€๋Š”์ง€์— ๊ด€ํ•œ ์ด๋ก ์  ๊ทผ๊ฑฐ๊ฐ€ ์กฐ์•…ํ•˜๊ฒŒ๋ผ๋„ ๋ถ™์–ด ์žˆ๋Š” ๊ฒฝ์šฐ๊ฐ€ ํ›จ์”ฌ ๋“œ๋ฌผ๋‹ค. ๊ทธ๋ƒฅ '์ด๋ ‡๊ฒŒ ํ•˜๋‹ˆ๊นŒ ํ•™์Šต์ด ๋” ์ž˜ ๋˜๋”๋ผ.' ๋ผ๋Š” ๋ง์ด ๋„๋Š” ํŽธ. ๋ถ€์กฑํ•œ ๊ฒƒ์ด ๋งŽ์ง€๋งŒ ๊ทธ๋ ‡๊ธฐ์— ๋ฐœ์ „ํ•  ์—ฌ์ง€๊ฐ€ ๋งŽ์€ ๋…ผ๋ฆฌ์ด๋ฉฐ, ์‚ฌ๋žŒ๋“ค์ด ์ธ๊ณต์‹ ๊ฒฝ๋ง ์•Œ๊ณ ๋ฆฌ์ฆ˜์— ๊ด€ํ•ด์„  ์ธ๊ฐ„์˜ ์ง€๋Šฅ์„ ๋›ฐ์–ด๋„˜๋Š” ๊ฐ•์ธ๊ณต์ง€๋Šฅ, ๋ฐœ๋‹ฌ์„ ์ถ”๊ตฌํ•˜๋Š” ์ธ๊ณต'์ง€์„ฑ'์ด ํ•ด๊ฒฐํ•˜๊ธฐ๋ฅผ ๋ฐ”๋ผ๋Š” ๊ฐ€์žฅ ํฐ ์ด์œ ์ด๊ธฐ๋„ ํ•˜๋‹ค.

2013๋…„ ์ฆˆ์Œ๋ถ€ํ„ฐ ํ˜„์žฌ๊นŒ์ง€ ๊ฐ€์žฅ ์ฃผ๋ชฉ๋ฐ›๊ณ  ์žˆ๋Š” ๋จธ์‹ ๋Ÿฌ๋‹ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋‹ค.

3. ์ข…๋ฅ˜[ํŽธ์ง‘]

์•„๋ž˜ '์ข…๋ฅ˜'๋ผ๋Š” ๊ฑด ํ•œ ํ”„๋กœ๊ทธ๋žจ์— ํ•˜๋‚˜๋งŒ ์“ฐ์ด๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋‹ค. ๊ฐ€๋ น ์ด๋ฏธ์ง€ ์ฒ˜๋ฆฌ์™€ ์–ธ์–ด ์ฒ˜๋ฆฌ๋ฅผ ๋™์‹œ์— ํ•˜๊ธฐ ์œ„ํ•ด CNN๊ณผ RNN์„ ๋™์‹œ์— ์‚ฌ์šฉํ•  ์ˆ˜๋„ ์žˆ๋‹ค.

3.1. Perceptron[ํŽธ์ง‘]

Perceptron์€ ์œ„์—์„œ ์„ค๋ช…ํ•œ ๋‰ด๋Ÿฐ์˜ ์ˆ˜ํ•™์  ๋ชจ๋ธ์„ ์ผ์ปซ๋Š” ์šฉ์–ด์ด๊ธฐ๋„ ํ•˜๊ณ , ์ตœ์ดˆ๋กœ ์ œ์•ˆ๋œ ์‹ ๊ฒฝ๋ง ํ”„๋กœ๊ทธ๋žจ ์•Œ๊ณ ๋ฆฌ์ฆ˜ (1957)์ด๊ธฐ๋„ ํ•˜๋‹ค. ์ด ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ์ด๋ฆ„ ๊ทธ๋Œ€๋กœ ํ•˜๋‚˜์˜ ๋‰ด๋Ÿฐ์„ ์‚ฌ์šฉํ•˜๋ฉฐ ํ•™์Šต ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์žฅ ์ž˜ ์„ค๋ช…ํ•  ์ˆ˜ ์žˆ๋Š” ์ตœ์ ์˜ ํŒจ๋Ÿฌ๋ฏธํ„ฐ( )๊ฐ’์„ ์ฐพ๋Š”๋‹ค.

ํ•™์Šต์€ ํ•™์Šต ๋ฐ์ดํ„ฐ๋ฅผ ๋„ฃ์€ ํ›„ ๊ฒฐ๊ณผ๊ฐ€ ์›ํ•˜๋˜ ๊ฒฐ๊ณผ๋ณด๋‹ค ํฌ๋ฉด ๊ฒฐ๊ณผ๊ฐ€ ์ž‘์•„์ง€๊ฒŒ ํŒจ๋Ÿฌ๋ฏธํ„ฐ๋ฅผ ์กฐ์ •ํ•˜๊ณ  ์›ํ•˜๋˜ ๊ฒฐ๊ณผ๋ณด๋‹ค ์ž‘์œผ๋ฉด ์ปค์ง€๊ฒŒ ํŒจ๋Ÿฌ๋ฏธํ„ฐ๋ฅผ ์กฐ์ •ํ•˜๋Š” ๊ฒƒ์„ ๋ฐ˜๋ณตํ•œ๋‹ค. ์ด๊ฒƒ์œผ๋กœ ํ•™์Šต์ด ๊ฐ€๋Šฅํ•˜๋‹ค๋Š” ๊ฒƒ์€ perceptron convergence theorem์ด๋ž€ ์ด๋ฆ„์œผ๋กœ ์ฆ๋ช…์ด ๋˜์–ด ์žˆ๋‹ค.

๊ทธ๋Ÿฌ๋‚˜ ๋น„์„ ํ˜•ํ•จ์ˆ˜๋ฅผ ํ•™์Šตํ•  ์ˆ˜ ์—†๊ธฐ์— ์ด ๋ฐฉ๋ฒ•์ด ์‚ฌ์žฅ๋๋‹ค. ์ž…๋ ฅ์ธต๊ณผ ์ถœ๋ ฅ์ธต๋งŒ ์žˆ๋Š” ํผ์…‰ํŠธ๋ก ์œผ๋กœ๋Š” XOR ๋ฌธ์ œ๋„ ํ•ด๊ฒฐํ•  ์ˆ˜ ์—†๋‹ค. ๊ทธ ๊ฒฐ๊ณผ MLP๊ฐ€ ๋‚˜์˜ค๊ฒŒ ๋œ๋‹ค.

3.1.1. Multi Layer Perceptron (MLP)[ํŽธ์ง‘]

๋ง๊ทธ๋Œ€๋กœ ์—ฌ๋Ÿฌ๊ฐœ์˜ Perceptron์„ ์—ฐ๊ฒฐ์‹œ์ผœ ์ธต(Layer)์„ ๋งŒ๋“ค๊ณ , ์ด ์ธต๋“ค์„ ์ค‘์ฒฉ์‹œ์ผœ ๋‹ค์ธต (Multi Layer)์œผ๋กœ ๋งŒ๋“  ๊ฒƒ์ด๋‹ค.

์—ฌ๋Ÿฌ๊ฐœ์˜ Perceptron์ด ํ•˜๋‚˜์˜ ์ธต(Layer)์„ ๊ตฌ์„ฑํ•˜๋ฉฐ, ์ผ๋ฐ˜์ ์œผ๋กœ 3~6๊ฐœ ์ •๋„์˜ ์ธต์„ ๋‘๋ฉฐ, ์ด๋“ค์„ ๊ฐ๊ฐ ์ž…๋ ฅ์ธต(Input layer), ์€๋‹‰์ธต(Hidden layer), ์ถœ๋ ฅ์ธต(Output layer) ์œผ๋กœ ๊ตฌ๋ถ„ํ•˜์—ฌ ๋ถ€๋ฅธ๋‹ค. ํ•„์š”์ด์ƒ์œผ๋กœ ๋งŽ์€ ์ธต์„ ๋‘๋Š” ๊ฒƒ์€ ์˜คํžˆ๋ ค ์„ฑ๋Šฅ์ด ๋–จ์–ด์ง„๋‹ค๊ณ  ์•Œ๋ ค์ ธ์žˆ๋‹ค. ์ฒ˜์Œ์—๋Š” ์ค‘๊ฐ„์— ์กด์žฌํ•˜๋Š” ์€๋‹‰์ธต์„ ํ•™์Šต์‹œํ‚ฌ ๋ฐฉ๋ฒ•์ด ์—†๊ธฐ์— ์‚ฌ์žฅ๋˜์—ˆ์ง€๋งŒ, ํ•ด๊ฒฐํ•  ๋ฐฉ๋ฒ•์„ ๊พธ์ค€ํžˆ ์—ฐ๊ตฌํ•œ ๊ฒฐ๊ณผ ์—ญ์ „ํŒŒ(backpropagation) ์•Œ๊ณ ๋ฆฌ์ฆ˜ (1986)์ด ๋ฐœ๋ช…๋˜์–ด ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋˜์—ˆ๋‹ค. ์‹ ๊ฒฝ๋ง๊ณ„ํ†ต ์•Œ๊ณ ๋ฆฌ์ฆ˜๋‹ต๊ฒŒ ์ดˆ์ฐฝ๊ธฐ์— ๋ฐ˜์งํ•˜๋ฉฐ ์‹ ๋“œ๋กฌ์„ ์ผ์œผํ‚ฌ์ •๋„๋กœ ๊ด€์‹ฌ์„ ๋ฐ›์•˜๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์‚ฌ๋ผ์ง€๋Š” ๊ฒฝ์‚ฌ ๋ฌธ์ œ [2], ๊ณผ์ ํ•ฉ ๋ฌธ์ œ ๋“ฑ์ด ์žˆ์—ˆ๊ณ  ๋‹น์‹œ ์—ฐ์‚ฐ๋Šฅ๋ ฅ์˜ ํ•œ๊ณ„๊ฐ€ ์‹ฌํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ๊ธˆ์ƒˆ ์‚ฌ์žฅ๋˜๊ณ  ๋งŒ๋‹ค.

3.2. ์‹ฌ์ธตํ•™์Šต(Deep Learning)[ํŽธ์ง‘]


์‹ฌ์ธตํ•™์Šต ๋ฌธ์„œ ์ฐธ์กฐ

3.2.1. Convolutional Neural Network(CNN)[ํŽธ์ง‘]

1989๋…„ ์ธ๊ฐ„์˜ ์‹œ์‹ ๊ฒฝ ๊ตฌ์กฐ๋ฅผ ๋ชจ๋ฐฉํ•ด ๋งŒ๋“ค์–ด์ง„ ์ธ๊ณต์‹ ๊ฒฝ๋ง ์•Œ๊ณ ๋ฆฌ์ฆ˜. ๋‹ค์ˆ˜์˜ Convolutional Layer(์ด๋•Œ์˜ ์ž‘์€ ํ–‰๋ ฌ์„ ํ•„ํ„ฐ๋ผ ๋ถ€๋ฅธ๋‹ค)์œผ๋กœ ๋ถ€ํ„ฐ ํŠน์ง•๋งต(Feature map)์„ ์ถ”์ถœํ•˜๊ณ  ์„œ๋ธŒ์ƒ˜ํ”Œ๋ง(Subsampling)์„ ํ†ตํ•ด ์ฐจ์›์„ ์ถ•์†Œํ•˜์—ฌ ํŠน์ง•๋งต์—์„œ ์ค‘์š”ํ•œ ๋ถ€๋ถ„๋งŒ์„ ๊ฐ€์ ธ์˜จ๋‹ค. ์ด๋ฏธ์ง€ ๋ถ„๋ฅ˜, semantic segmentation, optical flow๋“ฑ๋“ฑ ๋Œ€๋ถ€๋ถ„์˜ ์ปดํ“จํ„ฐ ๋น„์ „(computer vision)๋ถ„์•ผ์—์„œ ํ•„์ˆ˜์ ์œผ๋กœ ์‚ฌ์šฉ๋˜๋Š” ๊ธฐ์ˆ ์ด๋ฉฐ, ๊ธฐ์กด์˜ mlp์— ๋น„ํ•ด ์ ์€ ์—ฐ์‚ฐ๋Ÿ‰๊ณผ ๋†’์€ ์„ฑ๋Šฅ์„ ๋ณด์—ฌ์ค˜ ๊ฐ๊ด‘๋ฐ›๊ณ  ์žˆ๋‹ค.

ML ๊ธฐ์ˆ ์˜ ์„ ๊ตฌ์ž ์ค‘ ํ•œ๋ช…์ธ ์–€ ๋ฅด์ฟค์ด ๊ฐœ๋ฐœํ•œ LeNet์ด ์ดˆ๊ธฐ CNN ๊ตฌ์กฐ์˜ ๋Œ€ํ‘œ์ ์ธ ์—ญํ• ์„ ํ–ˆ๊ณ , ์ดํ›„ ImageNet ์ด๋ฏธ์ง€ ๋ถ„๋ฅ˜ ๋Œ€ํšŒ์—์„œ InceptionV3 ๋“ฑ ์ƒˆ๋กœ์šด ๋ชจ๋ธ ๊ตฌ์กฐ๋“ค์ด ๋‚˜์˜ค๋ฉฐ ์„ฑ๋Šฅ์ด ๋น„์•ฝ์ ์œผ๋กœ ๊ฐœ์„ ๋˜์—ˆ๋‹ค. ์š”์ฆ˜์—๋Š” ResNet์„ ์ž์ฃผ ์“ฐ๋Š”๋ฐ, TfNet์ด๋‚˜ Torchvision์—์„œ ์ œ๊ณตํ•˜๋Š” pretrained weights๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ transfer learning์„ ํ•˜๋ฉด ๋งŽ์€ ๋ถ„์•ผ์—์„œ ํ›Œ๋ฅญํ•œ ์„ฑ๋Šฅ์„ ๋ฝ‘์•„์ฃผ๊ธฐ ๋•Œ๋ฌธ์— ์• ์šฉ๋œ๋‹ค. ResNet์˜ ๋ฌด๊ฑฐ์›€์„ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ MobileNetV2๋‚˜ EfficientNet๋„ ์ฃผ๋ชฉ๋ฐ›๊ณ  ์žˆ๋‹ค.

ํ•˜๋‹จ์˜ RNN๊ณผ ์œตํ•ฉํ•œ R-CNN์ด๋ผ๋Š” ๋ฌผ๊ฑด๋„ ์žˆ๋‹ค. Object Detection ํ• ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค.

3.2.2. Recurrent Neural Network[ํŽธ์ง‘]

๋‰ด๋Ÿฐ์˜ ์ถœ๋ ฅ์ด ๋‹ค์‹œ ์ž…๋ ฅ์œผ๋กœ feedback๋˜๋Š” ์žฌ๊ท€์ ์ธ ์—ฐ๊ฒฐ ๊ตฌ์กฐ๋ฅผ ๊ฐ–๋Š” ์‹ ๊ฒฝ๋ง. ๋‹ค์ธต ํผ์…‰ํŠธ๋ก  ์‹ ๊ฒฝ๋ง์€ ์ž…๋ ฅ์ด ์ถœ๋ ฅ ๋ฐฉํ–ฅ์œผ๋กœ๋งŒ ํ™œ์„ฑํ™”๋˜๊ณ  ์€๋‹‰ ๋‰ด๋Ÿฐ์ด ๊ณผ๊ฑฐ์˜ ์ •๋ณด๋ฅผ ๊ธฐ์–ตํ•˜์ง€ ๋ชปํ•œ๋‹ค๋Š” ๋‹จ์ ์ด ์žˆ๋‹ค. ์ด๋Ÿฌ๋ฉด ์ž…๋ ฅ์ด ๋“ค์–ด์˜จ ๋ฌธ๋งฅ์„ ๊ธฐ์–ตํ•  ์ˆ˜ ์—†๋‹ค. ์ด๋Ÿฐ ๋‹จ์ ์€ ์‹œ๊ณ„์—ด๋ถ„์„[3] ๊ด€๋ จ ๋ฌธ์ œ์—์„œ ๋งค์šฐ ํ•ด๋กญ๋‹ค. RNN์€ ์ด๋Ÿฐ ๋‹จ์ ์„ ํ•ด๊ฒฐํ–ˆ๋‹ค.

์•ž์—์„œ ๋ฌด์Šจ ๋‹จ์–ด๊ฐ€ ๋‚˜์™”๋Š”์ง€์˜ ๋ฌธ๋งฅ์ด ๋‹ค์Œ์— ๋‚˜์˜ฌ ๋‹จ์–ด๋ฅผ ์˜ˆ์ธก(prediction)ํ•˜๋Š” ๋ฌธ์ œ๋ฅผ ํ‘ธ๋Š” ๋ฐ ์œ ์šฉํ•˜๋‹ค. ์ด๋Ÿฐ ๋ฌธ์ œ์—๋Š” ์Œ์„ฑ ์ธ์‹, ํ•„๊ธฐ์ฒด ์ธ์‹, ํ…์Šค์ฒ˜ ์ธ์‹์ด ์žˆ๋‹ค. ๋˜ ๋ถ„๋ฅ˜์—๋„ ์œ ์šฉํ•˜๋‹ค. ์–ธ์–ด ๋ชจ๋ธ์€ ๋ง๋ญ‰์น˜๋ฅผ ์ด์šฉํ•œ ๊ธฐ๊ณ„ ๋ฒˆ์—ญ์— ๋„์›€์ด ๋˜์—ˆ๋‹ค.

๊ธฐ์กด์˜ DNN(Deep Neural Networks)์˜ ๊ฒฝ์šฐ ๊ฐ layer๋งˆ๋‹ค parameter๋“ค์ด ๋…๋ฆฝ์ ์ด์—ˆ์œผ๋‚˜, RNN์€ ์ด๋ฅผ ๊ณต์œ ํ•˜๊ณ  ์žˆ๋‹ค. ๋”ฐ๋ผ์„œ ํ˜„์žฌ์˜ ์ถœ๋ ฅ ๊ฒฐ๊ณผ๋Š” ์ด์ „ time step์˜ ๊ฒฐ๊ณผ์— ์˜ํ–ฅ์„ ๋ฐ›์œผ๋ฉฐ, hidden layer๋Š” ์ผ์ข…์˜ ๋ฉ”๋ชจ๋ฆฌ ์—ญํ• ์„ ํ•˜๊ฒŒ ๋œ๋‹ค.

RNN์˜ ๊ธฐ๋ณธ์  ์ž‘๋™์›๋ฆฌ๋Š” ht = g1 ( xtU + Wh(t-1) + bx), ot = g2 (Vh(t)+bh) ์ด๋‹ค.
g1 g2 : ๋น„์„ ํ˜• ํ™œ์„ฑํ™” ํ•จ์ˆ˜ (Sigmoid, tanh ๋“ฑ)
xt: ์ž…๋ ฅ๊ฐ’
ht: t(์‹œ๊ฐ„)๋‹จ๊ณ„์˜ ์€๋‹‰๋ณ€์ˆ˜ (hidden state)
ot: t(์‹œ๊ฐ„)๋‹จ๊ณ„์˜ ์ถœ๋ ฅ๊ฐ’
b: ํŽธํ–ฅ (bias)
UVW: xt ht ht-1์˜ ๊ฐ€์ค‘์น˜ (weight)
์œ„ ์‹์—์„œ ์ž…๋ ฅ X = (x1 , x2 , x3 , ... , xn)์ด ์ž…๋ ฅ๋˜๋ฉด ot๊ฐ€ ์ถœ๋ ฅ๋œ๋‹ค.

๋ณ€์ข…์œผ๋กœ Bi-directional RNN์ด ์žˆ๋‹ค. ์ด ๋ชจ๋ธ์€ ๊ณผ๊ฑฐ ๋ฐ ๋ฏธ๋ž˜ ์ƒํƒœ๋„ ๋ฐ˜์˜ํ•œ๋‹ค. ์–ธ์–ด ๋ชจ๋ธ๋ง์„ ํ•  ๋•Œ ์•ž๋’ค ๋‹จ์–ด๋ฅผ ๋ชจ๋‘ ๊ณ ๋ คํ•˜๊ฒŒ ๋˜๋ฏ€๋กœ ์ •ํ™•์„ฑ์ด ๋†’์•„์ง„๋‹ค. ํ•˜์ง€๋งŒ ํ•™์Šต์ด ์˜ค๋žซ๋™์•ˆ ์ง„ํ–‰์ง€๋ฉด์„œ ์ดˆ๊ธฐ ํ•™์Šต์ด ์žŠํ˜€์งˆ ๋‹จ์ ์ด ์žˆ๋‹ค.

ํ•˜์ง€๋งŒ ์ „ํ†ต์ ์ธ RNN ๋ชจํ˜• ๋ฐ Bi-directional RNN์˜ ๊ฒฝ์šฐ Vanishing gradient problem์„ ์ง€๋‹Œ๋‹ค. [4]

์ด ํ•ด๊ฒฐ์ฑ…์œผ๋กœ ์ œ์‹œ๋˜๊ณ  ์žˆ๋Š” ๊ฒƒ์ด ๋‹ค์Œ ์•Œ๊ณ ๋ฆฌ์ฆ˜๋“ค์ด๋‹ค.
  • LSTM
  • elman NN: RNN์— context layer๊ฐ€ ์ถ”๊ฐ€๋˜์–ด ์žˆ์–ด vanishing gradient problem์„ ์–ด๋А ์ •๋„ ํ•ด๊ฒฐํ–ˆ๋‹ค. context layer๋Š” hidden layer์—์„œ ๋‚˜์˜จ ๊ฒฐ๊ณผ ์ค‘ ๊ธฐ์–ตํ•˜๊ณ  ์‹ถ์€ ๋ถ€๋ถ„์„ ์ €์žฅํ•ด ๋‘์—ˆ๋‹ค๊ฐ€ ํ•„์š”ํ•  ๋•Œ ๊บผ๋‚ด์˜ฌ ์ˆ˜ ์žˆ๋Š” ํ”ผ๋“œ๋ฐฑ ์‹ ํ˜ธ ์—ญํ• ์„ ํ•œ๋‹ค.
3.2.2.1. Long Short Term Memory[ํŽธ์ง‘]
1997๋…„ ๋‚˜์˜จ RNN์˜ ๊ฐœ์„ ํŒ. ํ•™์Šต์ด ์˜ค๋ž˜ ์ง€์†๋  ๊ฒฝ์šฐ ์ดˆ๊ธฐ ํ•™์Šตํ•œ ๋‚ด์šฉ์ด ์žŠํ˜€์ง„๋‹ค๋Š” ๋‹จ์ ์ด ์žˆ๋Š”๋ฐ ์ด๋ฅผ ๊ฐœ์„ ํ•œ architecture์ด๋‹ค. RNN์˜ ์ž…๋ ฅ, forget, ์ถœ๋ ฅ ๋ถ€๋ถ„์— Gate๋ผ๋Š” ์…€๋“ค์„ ๋ถ™์—ฌ ๊ฐ’์„ ์กฐ์ ˆํ•œ๋‹ค. Forget gate๋Š” ์ด์ „ ์ƒํƒœ ์ •๋ณด๋ฅผ ์ €์žฅํ• ์ง€๋ฅผ ๊ฒฐ์ •ํ•˜๊ณ , input gate๋Š” ์ž…๋ ฅ๋˜๋Š” ์ƒˆ๋กœ์šด ์ •๋ณด๋ฅผ ์ €์žฅํ• ์ง€ ๊ฒฐ์ •ํ•˜๊ณ , output gate๋Š” ๊ฐฑ์‹ ๋œ cell์˜ ์ถœ๋ ฅ๊ฐ’์„ ์ œ์–ดํ•œ๋‹ค.

๋ง๊ฐ ๊ฒŒ์ดํŠธ (forget gate)๋Š” ๊ธฐ์กด์˜ ์†Œ์ž๋ณ€์ˆ˜๋ฅผ ์–ผ๋งˆ๋‚˜ ์žŠ์–ด๋ฒ„๋ฆด์ง€ ๊ฒฐ์ •ํ•œ๋‹ค. ft = ฯƒ (Uf xt + Wf ht-1 + bf)์ด๋‹ค.
Uf xt + Wf ht-1 + bf๋Š” xt, ht-1 , b์˜ ๊ฐ€์ค‘ํ•ฉ์ด๋‹ค. ft๋Š” ์ด ๊ฐ€์ค‘ํ•ฉ์— sigmoidํ•จ์ˆ˜(ฯƒ)๋ฅผ ์”Œ์šด ๊ฒƒ์ด๋‹ค. 1์€ ๋ชจ๋‘ ๊ธฐ์–ตํ•˜๊ฒ ๋‹ค๋Š” ๋œป์ด๊ณ  0์€ ๋ชจ๋‘ ์žŠ์–ด๋ฒ„๋ฆฐ๋‹ค๋Š” ๋œป์ด๋‹ค.
3.2.2.1.1. Gated Recurrent Unit[ํŽธ์ง‘]

2014๋…„ ๋‰ด์š•๋Œ€ํ•™๊ต ์กฐ๊ฒฝํ˜„ ๊ต์ˆ˜๊ฐ€ ๋ฐœํ‘œํ•œ, LSTM์˜ ์žฅ๊ธฐ๊ธฐ์–ต๋Šฅ๋ ฅ์€ ๋ณด์กดํ•˜๋ฉด์„œ ์—ฐ์‚ฐ์€ ์ ์€ ๋ชจ๋ธ์ด๋‹ค.

3.3. ๊ฐ•ํ™”ํ•™์Šต[ํŽธ์ง‘]

3.4. ์ง„ํ™”์ „๋žต[ํŽธ์ง‘]

2018๋…„ ์ง„ํ™”์ „๋žต ๊ฐœ๋ฐœ์ค‘ openAI

3.5. ํ˜ผํ•ฉ๋ชจ๋ธ[ํŽธ์ง‘]

3.5.1. ์˜คํ† ์ธ์ฝ”๋”[ํŽธ์ง‘]

์ž๊ธฐ๋ถ€ํ˜ธํ™”๊ธฐ (Autoencoder)

์ด๋ฏธ์ง€ ๊ฐ™์€ ๋ณต์žกํ•œ ๋ฐ์ดํ„ฐ๋Š” ๋†’์€ ์ฐจ์›์— ์กด์žฌํ•œ๋‹ค. ๋ณต์žกํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์ฐจ์›์œผ๋กœ ํ‘œํ˜„ํ•˜๋ฉด ์ฒ˜๋ฆฌ๊ฐ€ ๊ฐ„๋‹จํ•ด์งˆ ์ˆ˜ ์žˆ๋‹ค. ์ด ๋•Œ๋ฌธ์— ๋ฐ์ดํ„ฐ์˜ ์ฐจ์›์„ ์ถ•์†Œํ•˜๋ ค๋Š” ๋…ธ๋ ฅ๋“ค์ด ์žˆ์–ด ์™”๋‹ค. ๊ทธ ์˜ˆ๋กœ Singular Value Decomposition (SVD) ํ˜น์€ ์ฃผ์„ฑ๋ถ„ ๋ถ„์„ (PCA)์ด ์žˆ๋‹ค. RNN ์—ญ์‹œ ์‹œ๊ณ„์—ด ๋ฐ์ดํ„ฐ๋ฅผ ์ง์ ‘์ ์œผ๋กœ ์ด์šฉํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ์€๋‹‰ ์ƒํƒœ๋ฅผ ์ถ”๋ก ํ•˜์—ฌ ๋ฌธ์ œ๋ฅผ ํ’€์–ด ๋‚˜๊ฐ„๋‹ค. ์ด๋ ‡๊ฒŒ ์ฐจ์›์„ ์ถ•์†Œํ•˜๋ฉด ๋ถ„๋ฅ˜๋„ ์‰ฌ์›Œ์ง„๋‹ค.

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

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

๋‹จ, ์Œ“์•„ ์˜ฌ๋ฆฐ ์˜คํ† ์ธ์ฝ”๋”๋Š” ์ผ๋ฐ˜์ ์ธ ์—ญ์ „ํŒŒ(back propagation) ๋ฐฉ๋ฒ•์œผ๋กœ๋Š” ํ•™์Šต์ด ์ž˜ ๋˜์ง€ ์•Š๋Š”๋ฐ ์ด๋ฅผ ๊ทน๋ณตํ•˜๊ธฐ ์œ„ํ•ด์„œ RBM(Restricted Boltzmann Machine)์„ ์ด์šฉํ•ด ์˜คํ† ์ธ์ฝ”๋”๋ฅผ ๋ฏธ๋ฆฌ ํ•™์Šต์‹œํ‚ค๊ณ , ๋ฏธ๋ฆฌ ํ•™์Šต๋œ ๊ฒฐ๊ณผ๋ฅผ ์ดˆ๊ธฐ ์ถ”์ธก์œผ๋กœ ์‚ฌ์šฉํ•˜์—ฌ ์—ญ์ „ํŒŒ ๋ฐฉ๋ฒ•์œผ๋กœ ํŠœ๋‹ํ•˜๋ฉด ์Œ“์•„ ์˜ฌ๋ฆฐ ์˜คํ† ์ธ์ฝ”๋”๋ฅผ ์ œ๋Œ€๋กœ ํ•™์Šตํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋œ๋‹ค.

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

๊ตฌ์ฒด์ ์ธ ๋ฐฉ๋ฒ•์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. ์ž…๋ ฅ ๊ฐ’ x๊ฐ€ ์ฃผ์–ด์ง€๋ฉด ์ธ์ฝ”๋”๋ฅผ ํ†ตํ•ด ์••์ถ•๋œ ๋ฐ์ดํ„ฐ y๋กœ ๋ณ€ํ™˜ํ•˜๊ณ  ๋””์ฝ”๋”๋ฅผ ํ†ตํ•ด ์••์ถ•๋œ ๋ฐ์ดํ„ฐ y๋ฅผ z๋กœ ํ’€์–ด๋‚ธ๋‹ค.
y = fฮธ(x) = s (Wx+b)
z = gฮธ(y) = s (W'y + b')

3.5.2. GAN[ํŽธ์ง‘]

generative adversarial networks

2014.6 ์ œ์•ˆ๋œ ๋ฐฉ์‹.
Classification (๋ถ„๋ฅ˜) ๋ฌธ์ œ๋Š” ์ ‘๊ทผ๋ฒ•์„ discriminative ๋ชจ๋ธ๊ณผ generative model๋กœ ๋‚˜๋ˆŒ ์ˆ˜ ์žˆ๋‹ค.
  • discriminative model (์ง€๋„ํ•™์Šต์˜ ์ผ์ข…): ์ž…๋ ฅ x์—์„œ ์ถœ๋ ฅ y๋กœ ๊ฐ€๋Š” ๊ด€๊ณ„์ธ ์กฐ๊ฑด๋ถ€ํ™•๋ฅ  p(y|x)๋ฅผ ์ถ”์ •ํ•˜๋ ค๊ณ  ์‹œ๋„ํ•œ๋‹ค. ํด๋ž˜์Šค๋ฅผ ๋ถ„๋ฅ˜ํ•˜๋ ค ํ•œ๋‹ค. ๋งŒ์•ฝ generative model์—์„œ ๋งŒ๋“ค์–ด์ง„ output์ด ์‹ค์ œ์ธ์ง€ ์•„๋‹Œ์ง€ ํŒ๋‹จํ•˜๋Š” ํƒ์ • ์—ญํ• ์ด๋ผ๊ณ  ์ตœ์ดˆ ๋…ผ๋ฌธ์—๋Š” ์„œ์ˆ ๋˜์–ด ์žˆ๋‹ค. ๋‹ค์ค‘ ํšŒ๊ท€๋ถ„์„, ๋‚˜์ด๋ธŒ ๋ฒ ์ด์ง€์•ˆ ๋ถ„๋ฅ˜๊ธฐ ๋“ฑ.
  • generative model (๋น„์ง€๋„ํ•™์Šต์˜ ์ผ์ข…): p (x,y)์„ ์ถ”์ •ํ•˜๋ ค๊ณ  ํ•œ๋‹ค. ๋ถ„๋ฅ˜ ๊ฒฝ๊ณ„์„  (decision boundary)์„ ๋งŒ๋“ค๋ ค๊ณ  ํ•œ๋‹ค. ์šฐ๋„ (likelihood)๋‚˜ ์‚ฌํ›„ํ™•๋ฅ  (posterior probability)๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. ๋ฐ€๋„ ๊ธฐ๋ฐ˜ ์ถ”์ •๋ฒ•๋“ค. ์ตœ์ดˆ ๋…ผ๋ฌธ์—๋Š” ํƒ์ •์„ ์†์ด๊ธฐ ์œ„ํ•ด ์ ์  ๋” ๋‚˜์€ ๋ชจํ˜•์˜ ์œ„์กฐ ์ง€ํ๋ฅผ ๋งŒ๋“œ๋Š” ์œ„์กฐ ์ง€ํ๋ฒ”์ด๋ผ๊ณ  ๋น„์œ ๋˜์–ด ์„ค๋ช…๋˜์–ด์žˆ๋‹ค.

GAN์€ ๋‘ ๋ชจํ˜•์„ ํ•จ๊ป˜ ์‚ฌ์šฉํ•˜๊ณ  ์„œ๋กœ ๊ฒฝ์Ÿ์‹œํ‚ด์œผ๋กœ์จ ์ •ํ™•๋„๋ฅผ ํ–ฅ์ƒ์‹œํ‚ค๊ณ ์ž ํ•œ๋‹ค.

์ถœ์ฒ˜
)]
)]

์œ„ ์‹์—์„œ G๋Š” ์ƒ์„ฑ ๋ชจ๋ธ, D๋Š” ๋ถ„๋ฅ˜ ๋ชจ๋ธ์„ ๊ฐ€๋ฆฌํ‚จ๋‹ค. ์ขŒ๋ณ€์€ ์ƒ์„ฑ์ž๊ฐ€ ๊ตฌ๋ถ„์ž์˜ ์ •ํ™•๋„๋ฅผ ์ตœ์†Œํ™”์‹œํ‚ค๋ฉด์„œ ๊ตฌ๋ถ„์ž๋Š” ์ž์‹ ์˜ ์ •ํ™•๋„๋ฅผ ์ตœ๋Œ€ํ™”์‹œํ‚ค๋Š” minimax ์ตœ์ ํ™” ๋ฌธ์ œ๋ฅผ ์˜๋ฏธํ•œ๋‹ค. ์ด ๊ฐ’์€ 0~1๋กœ ์ฃผ์–ด์ง„๋‹ค.

์šฐ๋ณ€์€ ๋‘ ๊ฐœ์˜ ํ•ญ์œผ๋กœ ๋‚˜๋‰˜์–ด ์žˆ๋Š”๋ฐ ์ด๋Š” ์ •๋ณด์ด๋ก  (์ˆ˜ํ•™)์—์„œ ์—”ํŠธ๋กœํ”ผ๋ฅผ ์ตœ์†Œํ™”ํ•˜๋Š” ๊ฒƒ๊ณผ ๊ฐ™๋‹ค.[6] ์šฐ๋ณ€ ์ฒซ๋ฒˆ์งธ ํ•ญ์ธ E x~Pdata(x) (log D(x))์€ ์‹ค์ œ ๋ฐ์ดํ„ฐ x๋ฅผ ์ž…๋ ฅ๋ฐ›์•˜์„ ๋•Œ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ '์‹ค์ œ๋ฐ์ดํ„ฐ'(D=1)๋ผ๊ณ  ํŒ๋‹จํ•  ๊ฒฝ์šฐ ์ตœ๋Œ€ํ™”๋œ๋‹ค. ์šฐ๋ณ€ ๋‘๋ฒˆ์งธ ํ•ญ์ธ Ez~Pz(z) (log (1-D(G(z)))์€ ๊ฐ€์ƒ๋ฐ์ดํ„ฐ (z)๋ฅผ ์ž…๋ ฅ๋ฐ›์•˜์„ ๋•Œ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ '๊ฐ€์ƒ๋ฐ์ดํ„ฐ' (D=0)๋ผ๋Š” ๊ฒƒ์„ ๊ตฌ๋ถ„ํ•  ๊ฒฝ์šฐ ์ตœ๋Œ€ํ™”๋œ๋‹ค. ์ƒ์„ฑ์ž๋Š” ๊ทธ๋Ÿด๋“ฏํ•œ ๊ฐ€์ƒ ๋ฐ์ดํ„ฐ๋ฅผ ์ƒ์„ฑํ•จ์œผ๋กœ์จ ๋‘ ๋ฒˆ์งธ ํ•ญ์„ ์ตœ์†Œํ™”์‹œํ‚ค๋ ค๊ณ  ๋…ธ๋ ฅํ•œ๋‹ค.

์˜คํ† ์ธ์ฝ”๋”์—๋Š” ๋‹จ์ˆœํžˆ ๋ฐ์ดํ„ฐ๋ฅผ ์ƒ์„ฑํ•œ๋‹ค๋Š” ๊ฐœ๋…๋งŒ ์žˆ์—ˆ๋‹ค. ํ•˜์ง€๋งŒ GAN์—๋Š” ๊ฒฝ์Ÿ์ด๋ผ๋Š” ์š”์†Œ๊ฐ€ ๋“ค์–ด๊ฐ„๋‹ค. GAN์ด ์˜คํ† ์ธ์ฝ”๋”์— ๋น„ํ•ด ์–‘์งˆ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค.

GAN์—๋„ ๋‹จ์ ์ด ์žˆ๋‹ค. ์ƒ์„ฑ์ž๊ฐ€ ๊ทธ๋Ÿด๋“ฏํ•œ ๊ฐ€์ƒ ๋ฐ์ดํ„ฐ๋ฅผ ํ•™์Šต ์ดˆ๋ฐ˜๋ถ€ํ„ฐ ์ƒ์„ฑํ•˜๊ธฐ ํž˜๋“ค๊ธฐ ๋•Œ๋ฌธ์— ๋ชจ๋ธ์ด ํ•™์Šต๋˜์ง€ ์•Š๋Š” ํ˜„์ƒ์ด ๋ฐœ์ƒํ•œ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์˜คํ† ์ธ์ฝ”๋”๊ฐ€ ์ฃผ์–ด์ง„ ๋ฐ์ดํ„ฐ์˜ ์ž ์žฌ ๋ณ€์ˆ˜ (latent variable)๋ฅผ ์ถ”๋ก ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐ ๋น„ํ•ด GAN์€ ์ฐจ์› ์ถ•์†Œ์˜ ๊ฐœ๋…์ด ์กด์žฌํ•˜์ง€ ์•Š๋Š”๋‹ค.
3.5.2.1. DCGAN[ํŽธ์ง‘]
์œ„์—์„œ ์„ค๋ช…ํ•œ ๋”ฅ CNN๊ณผ GAN์„ ํ†ตํ•ฉํ•œ ๊ฐœ๋….
Radford, A. (2016) [7] ๋…ผ๋ฌธ์—์„œ ์‹œ์ž‘๋˜์—ˆ๋‹ค.

๊ฐ ๋ ˆ์ด์–ด์— Convolution layer๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. ๋‹จ, CNN๊ณผ ๋‹ฌ๋ฆฌ Pooling layer, Fully connected layer๋Š” ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค. ๋ ˆ์ด์–ด ๊ณ„์‚ฐ ๊ฒฐ๊ณผ์— Batch Normalization๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. ํ™œ์„ฑ ํ•จ์ˆ˜(Activation function)์œผ๋กœ ReLU ๋Œ€์‹  LeakyReLU๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.

Generator๋Š” ๋žœ๋ค ์ž…๋ ฅ โ€˜zโ€™๊ฐ€ ์˜๋ฏธ์žˆ๋Š” ์ž ์žฌ ํŠน์ง• (latent feature)์ด ๋˜๋„๋ก ํ•™์Šตํ•œ๋‹ค. ์ด ๋žœ๋ค ์ž…๋ ฅ์˜ ์˜๋ฏธ๊ฐ€ ๋ฌด์—‡์ธ์ง€ ์šฐ๋ฆฌ๋Š” ์•Œ ์ˆ˜ ์—†๋‹ค.
3.5.2.2. cGAN[ํŽธ์ง‘]
์œ„์—์„œ ์„ค๋ช…ํ•œ DCGAN์œผ๋กœ๋Š” latent feature๊ฐ€ ์–ด๋–ค ์˜๋ฏธ๋ฅผ ๊ฐ€์ง€๊ฒŒ ํ•™์Šต์‹œํ‚ฌ ์ˆ˜ ์—†๋‹ค. ๊ทธ๋ž˜์„œ input์„ ์กฐ์ ˆํ•ด์„œ output์„ ์ž์‹ ์ด ์›ํ•˜๋Š” ๋ฐฉํ–ฅ์œผ๋กœ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค. ์ด๋ฅผ ๋ณด์™„ํ•˜๊ธฐ ์œ„ํ•œ ์•„์ด๋””์–ด๋กœ ์ œ์‹œ๋œ ๊ฒƒ์ด cGAN์ธ๋ฐ, conditional GAN์˜ ์ค„์ž„๋ง์ด๋‹ค.

๊ธฐ๋ณธ์ ์ธ GAN๊ณผ ์•„์ด๋””์–ด๋ฅผ ๋™์ผํ•˜๊ฒŒ ๊ฐ€์ ธ๊ฐ„๋‹ค. ํ•˜์ง€๋งŒ ์ฐจ์ด๊ฐ€ ์žˆ๋‹ค๋ฉด DISCRIMINATOR์™€ GENERATOR์— ๋‹จ์ˆœํžˆ LATENT VECTOR์„ ๋„ฃ๋Š” ๊ฒƒ ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ, ๊ฒฝํ–ฅ์„ฑ์„ ๋‚˜ํƒ€๋‚ด๋Š” INPUT Y๋ฅผ ์ถ”๊ฐ€๋กœ ๋„ฃ์–ด์ค€๋‹ค. ์ดˆ๊ธฐ ์—ฐ๊ตฌ์—์„œ๋Š” ์ด y์— one hot encoding์˜ ๋ฐฉ์‹์œผ๋กœ class๋ฅผ ์ง‘์–ด๋„ฃ์–ด ์คฌ๋‹ค๊ณ  ํ•œ๋‹ค.(ex. ๋งŒ์•ฝ 1๋ถ€ํ„ฐ 10๊นŒ์ง€์˜ ์ˆซ์ž ํ•™์Šต์„ ์‹œํ‚จ๋‹ค๊ณ  ํ•˜๋ฉด y์— [1,0,0,0,0,0..]์„ ๋„ฃ์œผ๋ฉด y๊ฐ€ 1์ผ๋•Œ๋Š” output์ด 1์ด ๋‚˜์˜ค๋Š” ๊ฒฝํ–ฅ์„ฑ์„ ๋„๊ฒŒ ํ•™์Šต์‹œํ‚ด.)

์ด๋Ÿฌํ•œ ๋ฐฉ๋ฒ•์„ ํ†ตํ•ด์„œ ์šฐ๋ฆฌ๋Š” DCGAN์—์„œ๋Š” ํ•  ์ˆ˜ ์—†์—ˆ๋˜ OUTPUT์˜ ๊ฒฝํ–ฅ์„ฑ์„ ์•Œ ์ˆ˜ ์žˆ๊ณ , ์ด๋ฅผ ๋‹ค๋ฅด๊ฒŒ ํ‘œํ˜„ํ•˜๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ INFOGAN๋“ฑ์˜ ๋…ผ๋ฌธ์ด ๋‚˜์˜ค๊ฒŒ ๋œ๋‹ค.

4. ํ•™์Šต๋ฒ•[ํŽธ์ง‘]

4.1. ๊ฒฝ์‚ฌ ํ•˜๊ฐ•๋ฒ•[ํŽธ์ง‘]

4.2. ํ™•๋ฅ ์  ๊ฒฝ์‚ฌ ํ•˜๊ฐ•๋ฒ•[ํŽธ์ง‘]

4.3. Adam[ํŽธ์ง‘]

4.4. Nadam[ํŽธ์ง‘]

5. ๊ณตํ•™์ ์ธ ๊ธฐ์ˆ [ํŽธ์ง‘]

  • ๋ฏธ๋‹ˆ๋ฐฐ์น˜
  • Sparknet (2015๋ง)
  • ReLU (Rectified Linear Unit): Sigmoid ํ•จ์ˆ˜์— ๋น„ํ•ด Vanishing gradient problem์„ ํ•ด๊ฒฐํ–ˆ๋‹ค.
  • ๋น… ๋ฐ์ดํ„ฐ ํ”„๋กœ์„ธ์‹ฑ: ๊ณผ์ ํ•ฉ ๋ฌธ์ œ๋ฅผ ๋‹ค๋Ÿ‰์˜ ํ•™์Šต ๋ฐ์ดํ„ฐ ํ™•๋ณด๋ฅผ ํ†ตํ•ด ํ•ด๊ฒฐํ–ˆ๋‹ค.
  • Dropout: ๊ณผ์ ํ•ฉ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์ผ๋ถ€ ๋ ˆ์ด์–ด์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ œ๊ฑฐํ•˜๋Š” ๊ธฐ์ˆ . (1-p) ํ™•๋ฅ ๋กœ ๋…ธ๋“œ๋ฅผ ํ•™์Šต์—์„œ ๋ฌด์‹œํ•˜์—ฌ, ๋…ธ๋“œ์— ์—ฐ๊ฒฐ๋œ edge๊ฐ€ ์—†๋Š” ๊ฒƒ์œผ๋กœ ๊ฐ„์ฃผํ•˜๊ณ  ๋งค ์ฃผ๊ธฐ๋งˆ๋‹ค ๋žœ๋คํ•˜๊ฒŒ ๊ฐฑ์‹ ํ•œ๋‹ค.
  • ๊ด€๋ จ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ: Caffe, Torch, Theano, RNNLIB, CUDA-ConvNet, Pylearn, DL4J, ํ…์„œํ”Œ๋กœ์šฐ ๋“ฑ.
  • ๊ด€๋ จ ๊ณ„์‚ฐ ํ™˜๊ฒฝ: CUDA, Apache Spark

6. ๋ฌธ์ œ์ [ํŽธ์ง‘]

  • ํ•™์Šต์ด ์ผ์ •ํ•˜๊ฒŒ ์ง„ํ–‰๋˜์ง€ ์•Š๋Š”๋‹ค.
  • ์ผ๋ฐ˜ ํ”„๋กœ๊ทธ๋žจ์— ๋น„ํ•ด ๋†’์€ ์‚ฌ์–‘์„ ์š”๊ตฌํ•œ๋‹ค. CPU๋‚˜ ์‹ธ๊ตฌ๋ ค GPU๋กœ๋งŒ ๊ตฌ๋™ํ•œ๋‹ค๋ฉด ์‹œ๊ฐ„์ด ๋งŽ์ด ๊ฑธ๋ฆฐ๋‹ค. ์‹ ๊ฒฝ๋ง ์ข…๋ฅ˜์— ๋”ฐ๋ผ์„œ๋Š” RAM๋„ ์ˆ˜์‹ญ GB ์ด์ƒ ์žก์•„๋จน๋Š”๋‹ค.[8] ์ด ๋•Œ๋ฌธ์— CPU, RAM, GPU ์„ฑ๋Šฅ์˜ ์˜ํ–ฅ์„ ๋งŽ์ด ๋ฐ›์œผ๋ฉฐ, ๊ธฐ์—…์—์„œ ๋”ฅ๋Ÿฌ๋‹ ๊ฐœ๋ฐœ์šฉ์œผ๋กœ ์“ฐ๋Š” ์›Œํฌ์Šคํ…Œ์ด์…˜์€ ์ฒœ๋งŒ์› ์ •๋„๋‹ค. ์ทจ๋ฏธ๋กœ ํ•˜๊ฑฐ๋‚˜ ๋…ํ•™ํ•˜๋Š” ๊ฒฝ์šฐ ๋…ธํŠธ๋ถ์œผ๋กœ๋Š” ํƒ๋„ ์—†๊ธฐ ๋•Œ๋ฌธ์—, ๋ณดํ†ต์€ ์ผ๋‹จ ๋ฌด๋ฃŒ์ธ ๊ตฌ๊ธ€ Colab์„ ์“ด๋‹ค. ๊ทผ๋ฐ ์ด๊ฑด ์ง์ ‘ ๋ฐ์ดํ„ฐ๋‚˜ ๋ชจ๋ธ์„ ์—…๋กœ๋“œ ํ•˜๊ธฐ ๋ฒˆ๊ฑฐ๋กญ๊ณ , ํˆญํ•˜๋ฉด Runtime์ด ๊บผ์ ธ๋ฒ„๋ฆฌ๊ธฐ ๋•Œ๋ฌธ์— (...) ๊ฒฐ๊ตญ Colab Pro๋‚˜ AWS, Azure ๊ฐ™์€๊ฑฐ๋กœ ๊ฐ€๊ฒŒ ๋œ๋‹ค.
  • ์ •ํ™•ํ•œ ๋”ฅ๋Ÿฌ๋‹์˜ ๋ฉ”์ปค๋‹ˆ์ฆ˜์€ ๋ธ”๋ž™๋ฐ•์Šค ํ˜•ํƒœ. ์ธ๊ฐ„์˜ ์‹ ๊ฒฝ๋ง์„ ๋ณธ๋– ์„œ ๋‹ต์ด ๋‚˜์˜ค๊ฒŒ๋” ๋งŒ๋“ค๋‹ค๋ณด๋‹ˆ ์ˆ˜ํ•™์ ์ธ ์ฆ๋ช…์ด ์™„๋ฃŒ๋˜์ง€ ์•Š์•˜๋‹ค. ์‹œ๋ƒ…์Šค๊ฐ€ ์—ญ์น˜๋ฅผ ๋„˜๊ธฐ๊ณ  ํ•™์Šตํ•˜๋ฉด์„œ ์ผ๋ จ์˜ ์ž‘์šฉ์„ ํ•ด, ์ธ๊ฐ„์˜ ๊ฐ๊ฐ์  ๋ฐ˜์‘์„ ์ด๋Œ์–ด ๋‚ด๋Š” ๊ฒƒ์„ ํ‰๋‚ด๋‚ด๊ณ , ์ด ์‹œ๋ƒ…์Šค๋“ค์ด ๋ญ‰์น˜๊ณ  ๋ญ‰์ณ์„œ ๊ฑฐ๋Œ€ํ•œ ๋‡Œ๋ฅผ ์ด๋ฃจ์–ด ํŒ๋‹จ์ด๋‚˜ ๊ณ„์‚ฐ์„ ํ•˜๊ฒŒ ๋˜๋Š” ๊ฒƒ์„ ํ‰๋‚ด๋‚ด๋Š” ๊ฒƒ์— ๊ฐ€๊น๋‹ค. ๋ฌผ๋ก  ์‹ค์ œ ๋‡Œ ๋งค์ปค๋‹ˆ์ฆ˜๊ณผ ๋”ฅ๋Ÿฌ๋‹์˜ ๋งค์ปค๋‹ˆ์ฆ˜์—๋Š” ์–ด๋А์ •๋„ ์ฐจ์ด๊ฐ€ ์žˆ์ง€๋งŒ, ์•„์ด๋””์–ด๋ฅผ ์‹ ๊ฒฝ๋ง์—์„œ ์–ป์€ ์ธ๊ณต์‹ ๊ฒฝ๋ง์ด๋‹ค๋ณด๋‹ˆ ๋น„์Šทํ•œ ๋ฌธ์ œ๋ฅผ ์•ˆ๊ณ  ์žˆ๋Š” ๊ฒƒ์ด๋‹ค.

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

7. ๊ธฐ์ˆ  ๋™ํ–ฅ[ํŽธ์ง‘]

  • ํ•œ๊ตญ์˜ ์ธ๊ณต์‹ ๊ฒฝ๋ง ๊ธฐ์ˆ ์€ ํ˜„์žฌ๋กœ์จ๋Š” ์ฒ˜์ฐธํ•œ ์ƒํƒœ๋‹ค. 2011~2015๋…„ NIPS์— 1,845ํŽธ์˜ ๋…ผ๋ฌธ์ด ๋ฐœํ‘œ๋˜์—ˆ๋Š”๋ฐ ๋ฏธ๊ตญ 1,037๊ฑด, ์˜๊ตญ 110๊ฑด, ํ”„๋ž‘์Šค 103๊ฑด, ์บ๋‚˜๋‹ค 97๊ฑด, ๋…์ผ 85๊ฑด, ์ค‘๊ตญ 73๊ฑด, ์Šค์œ„์Šค 61๊ฑด, ์ด์Šค๋ผ์—˜ 44๊ฑด, ์ผ๋ณธ 43๊ฑด, ํ˜ธ์ฃผ 29๊ฑด, ์ธ๋„ 24๊ฑด, ์‹ฑ๊ฐ€ํฌ๋ฅด 16๊ฑด, ์˜ค์ŠคํŠธ๋ฆฌ์•„/์ดํƒˆ๋ฆฌ์•„/ํ•œ๊ตญ 14๊ฑด ๋“ฑ์ด์—ˆ๋‹ค. ๊ธฐ๊ด€๋ณ„๋กœ ๋ณด๋ฉด ์Šคํƒ ํฌ๋“œ ๋Œ€ํ•™๊ต 84๊ฑด, ์นด๋„ค๊ธฐ ๋ฉœ๋Ÿฐ ๋Œ€ํ•™๊ต 66๊ฑด, MIT 63๊ฑด, UC ๋ฒ„ํด๋ฆฌ 61๊ฑด, ํ…์‚ฌ์Šค ์˜ค์Šคํ‹ด 59๊ฑด, ์œ ๋‹ˆ๋ฒ„์‹œํ‹ฐ ์ปฌ๋ฆฌ์ง€ ๋Ÿฐ๋˜ 41๊ฑด ๋“ฑ์ด๋ฉฐ, ํ•œ๊ตญ ๊ธฐ๊ด€ ์ค‘ 10๊ฑด ์ด์ƒ ๋ฐœํ‘œํ•œ ๊ณณ์€ ์—†๋‹ค.

8. ๊ธฐํƒ€[ํŽธ์ง‘]

  • ์ธ๊ณต์‹ ๊ฒฝ๋ง๊ณผ ์œ ์ „ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๊ฒฐํ•ฉํ•˜์—ฌ ๋งŒ๋“œ๋Š” ๋ชจ๋ธ๋„ ์žˆ๋‹ค. ์ธ๊ณต์‹ ๊ฒฝ๋ง์„ ๋‹ค์–‘ํ•˜๊ฒŒ ๊ตฌ์„ฑํ•œ ๋’ค ํ•™์Šต์‹œ์ผœ ์ตœ์ ์˜ ๊ฒฐ๊ณผ๋ฅผ ์ฐพ๋Š”๋‹ค.

9. ๊ด€๋ จ ๋ฌธ์„œ[ํŽธ์ง‘]


[1] ํ•™์Šต์—์„œ ์‚ฌ์šฉํ•˜๋Š” ๊ธฐ์šธ๊ธฐ ํ•˜๊ฐ•๋ฒ•๊ณผ ๊ด€๋ จ๋œ ๋ฌธ์ œ๋„ ๋ฌธ์ œ์ง€๋งŒ ํ•˜๋“œ์›จ์–ด ์„ฑ๋Šฅ๊ณผ ๋ณ‘๋ ฌ ์—ฐ์‚ฐ์˜ ์ง„๋„๊ฐ€ ๋œ ๋‚˜๊ฐ„ ์ƒํƒœ์—์„œ ์ฒ˜์Œ ๋“ฑ์žฅํ•œ ๊ฒƒ์ด ํฌ๋‹ค. ์ธ๊ณต์‹ ๊ฒฝ๋ง์„ ์ œ๋Œ€๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ํ™˜๊ฒฝ์ด ๊ฐ–์ถฐ์ง€์ž ๋น„๋กœ์†Œ ๋น›์„ ๋ณด๊ฒŒ ๋œ ๊ฒƒ์ด๋‹ค.
[2] Vanishing Gradient Problem. MLP์—์„œ ์ธต์ด ๊นŠ์–ด์งˆ์ˆ˜๋ก ์—ญ์ „ํŒŒ ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ๋กœ ์˜๋ฏธ์žˆ๋Š” ์˜ค๋ฅ˜๋ฅผ ์ž˜ ์ „๋‹ฌํ•˜์ง€ ๋ชปํ•˜๋Š” ๋ฌธ์ œ.
[3] ์‹œ๊ฐ„์— ๋”ฐ๋ผ ์—ฐ์†์„ฑ์„ ์ง€๋‹ˆ๋Š” ๋ฌธ์ œ. ํ…์ŠคํŠธ ์—ญ์‹œ ์—ฐ์†๋œ ๋ฌธ์žฅ๊ณผ ๋‹จ์–ด๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์— RNN์œผ๋กœ ์ž˜ ํ’€๋ฆฐ๋‹ค.
[4] networks์˜ weight๊ฐ€ ์—…๋ฐ์ดํŠธ ๋˜๋Š” ๊ณผ์ •์—์„œ gradient(weight์— ๋Œ€ํ•œ ์ผ์ข…์˜ ์—…๋ฐ์ดํŠธ ๋น„์œจ)๊ฐ€ 1๋ณด๋‹ค ์ž‘์€ ๊ฐ’์ด ๊ณ„์† ๊ณฑํ•ด์ง€๋ฉด์„œ gradient๊ฐ€ ์‚ฌ๋ผ์ง€๋Š” ํ˜„์ƒ. ๋”ฐ๋ผ์„œ, ๋จผ ๊ณผ๊ฑฐ์˜ ์ƒํƒœ๋Š” ํ˜„์žฌ์˜ ํ•™์Šต์— ์•„๋ฌด๋Ÿฐ ์˜ํ–ฅ์„ ๋ฏธ์น˜์ง€ ๋ชปํ•˜๊ฒŒ ๋จ
[6] Jensen-Shannon divergence ์ธก๋„๋ฅผ ์ตœ์†Œํ™”ํ•œ๋‹ค๊ณ  ๋งํ•œ๋‹ค.
[7] Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks. doi : arXiv:1511.06434
[8] ์ง„์งœ ์ œ๋Œ€๋กœ ๋œ ํ™˜๊ฒฝ์—์„œ ์ž‘์ •ํ•˜๊ณ  ์‹คํ—˜์„ ๋Œ๋ฆฌ๋ฉด GB ๋‹จ์œ„๋กœ ์„ธ ์ž๋ฆฟ์ˆ˜๋ฅผ ์ฐ์–ด๋ฒ„๋ฆฐ๋‹ค.