[๋…ผ๋ฌธ์ •๋ฆฌ๐Ÿ“ƒ] ImageNet Classification with Deep Convolutional Neural Networks

๋…ผ๋ฌธ์›๋ณธ๐Ÿ˜™

2012 ILSVRC์—์„œ ์ˆ˜์ƒํ•œ neural network โ€œAlexNetโ€

AlexNet ์ฝ”๋“œ๊ตฌํ˜„ ํŽ˜์ด์ง€. => AlexNet

0. ์š”์•ฝ

ILSVRC-2010 ์ฝ˜ํ…Œ์ŠคํŠธ์—์„œ ImageNet์˜ 120๋งŒ ๊ณ ํ™”์งˆ ์ด๋ฏธ์ง€๋ฅผ ๋ถ„๋ฅ˜ํ•˜๊ธฐ ์œ„ํ•ด ํฌ๊ณ  ๊นŠ์€ CNN์„ ์‚ฌ์šฉํ•ด 1000๊ฐœ์˜ ๋‹ค๋ฅธ ํด๋ž˜์Šค๋“ค์„ ๋„์ถœํ•˜์˜€๋‹ค.

60million ํŒŒ๋ผ๋ฏธํ„ฐ์™€ 650000 neurons, 5๊ฐœ์˜ convolutional layers, max-pooling layers ๊ทธ๋ฆฌ๊ณ  3๊ฐœ์˜ fully-connected layers

  • To train faster โ‡’ use non-saturating neurons and ํšจ์œจ์ ์ธ GPU
  • To reduce โ‡’ use dropout, which is a recently-developed regularization method

top-5 test error rate of 15.3%๋ฅผ ๊ธฐ๋กํ•˜๋ฉฐ ILSVRC-2012 ๋Œ€ํšŒ์—์„œ 1๋“ฑ์„ ์ˆ˜์ƒํ•˜์˜€๋‹ค.

1. ๊ฐœ์š”

์ด์ „์—๋Š” ๋ ˆ์ด๋ธ”๋œ ์ด๋ฏธ์ง€ ๋ฐ์ดํ„ฐ์…‹์€ ๋งค์šฐ ์ ์—ˆ๋‹ค. ๋˜ํ•œ ์ด๋Ÿฐ ๋ฐ์ดํ„ฐ์…‹์€ ๋‹จ์ˆœ์ธ์‹ ๋ฌธ์ œ์—์„œ๋งŒ ์ž˜ ์ ์šฉ์ด ๋˜์—ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ง€๊ธˆ์€ ์ˆ˜๋ฐฑ๋งŒ๊ฐœ์˜ ์ด๋ฏธ์ง€๋กœ ๋ ˆ์ด๋ธ”๋ง ๋œ ๋ฐ์ดํ„ฐ ์…‹์„ ์ˆ˜์ง‘ ๊ฐ€๋Šฅํ•˜๋‹ค.

ํ•˜์ง€๋งŒ,

์—„์ฒญ ๋ณต์žกํ•œ ์‚ฌ๋ฌผ ์ธ์‹ ๋ฌธ์ œ๋Š” ImageNet๋งŒํผ ํฐ ๋ฐ์ดํ„ฐ์…‹์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ  ๊ตฌ์ฒดํ™” ๋˜์ง€ ์•Š๋Š”๋‹ค.

๋”ฐ๋ผ์„œ ๋ชจ๋ธ์€ ๋งŽ์€ ์‚ฌ์ „ ์ง€์‹๊ณผ ์•„์ง ๊ฐ€์ง€๊ณ  ์žˆ์ง€ ์•Š์€ ๋ชจ๋“  ๋ฐ์ดํ„ฐ(ํ•™์Šต๋˜์ง€ ์•Š์€ ๋ฐ์ดํ„ฐ)๋ฅผ ์ดํ•ดํ•ด์•ผ ํ•œ๋‹ค.

CNN์€ ๊นŠ์ด์™€ ๋„“์ด๋ฅผ ๋‹ค์–‘ํ•˜๊ฒŒ ์ปจํŠธ๋กคํ•  ์ˆ˜ ์žˆ๊ณ  ๊ฐ•ํ•˜๊ฒŒ๋„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค. ๋˜ํ•œ, ์ž์—ฐ์˜ ์ด๋ฏธ์ง€์— ๋Œ€ํ•ด์„œ ๊ฑฐ์˜ ๋Œ€๋ถ€๋ถ„ ๋งž๋Š” ์˜ˆ์ธก์„ ํ•œ๋‹ค. ๋”ฐ๋ผ์„œ ๊ธฐ์กด์˜ feed-forward neural networks์™€ ๋น„๊ตํ–ˆ์„ ๋•Œ CNN์€ ๋” ์ ์€ ์—ฐ๊ฒฐ๊ณผ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์–ด ์‰ฝ๊ฒŒ ํ•™์Šตํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ๋™์‹œ์— ์ด๋ก ์ ์œผ๋กœ ์•„์ฃผ ๋ฏธ๋ฏธํ•˜๊ฒŒ ๋‚˜์˜๋ฉฐ ์ตœ๊ณ ์˜ ์„ฑ๋Šฅ์„ ๋‚ธ๋‹ค

1) CNN์˜ ์งˆ๊ณผ 2)์ง€์—ญ์  ๊ตฌ์กฐ์˜ ์ƒ๋Œ€์  ํšจ์œจ์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ  ํฐ ์Šค์ผ€์ผ์—์„œ ๊ณ  ํ™”์งˆ์„ ์ ์šฉํ•˜๊ธฐ์—๋Š” ์—ฌ์ „ํžˆ ๋น„์šฉ์ด ๊ฝค ๋“ ๋‹ค. ๋‹คํ–‰ํžˆ ํ˜„์žฌ GPU(highly-optimized implementation of 2D convolution์œผ๋กœ ์Œ์„ ์ด๋ฃจ๋Š” GPU)๋กœ ์„ฑ๋Šฅ์„ ๋‚ผ ์ˆ˜ ์žˆ๋‹ค.

์šฐ๋ฆฌ๋Š” ์ด ๋ชจ๋ธ์„ ํ†ตํ•ด์„œ ์„ฑ๋Šฅ์„ ๋†’์ด๊ณ  ํ•™์Šต ์‹œ๊ฐ„์„ ์ค„์˜€๋‹ค. ์šฐ๋ฆฌ์˜ ์‹คํ—˜์€ ์„ฑ๋Šฅ์ด ๋” ์ข‹์€ GPU๊ฐ€ ๋ฐœ๋ช…๋จ์œผ๋กœ์จ ๋” ํ–ฅ์ƒ๋  ์ˆ˜ ์žˆ๋‹ค.

2. Dataset

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

3. The Architecture

image

์ด 8๊ฐœ์˜ layer๋กœ, 5๊ฐœ์˜ convolutional layer, 3๊ฐœ์˜ fully-connected layer๋กœ ๊ตฌ์„ฑ๋˜์–ด์žˆ๋‹ค.

3.1 ReLU nonlinearity

๊ฐœ๋… ์ •๋ฆฌ ๋จผ์ €!

  • saturating linearity : ์–ด๋–ค ์ž…๋ ฅ x๊ฐ€ ๋ฌดํ•œ๋Œ€๋กœ ๊ฐˆ ๋•Œ ํ•จ์ˆ˜ ๊ฐ’์ด ๋ฌดํ•œ๋Œ€๋กœ ๊ฐ€๋Š” ๊ฒƒ ex) ReLu
  • non-saturating linearity : ์–ด๋–ค ์ž…๋ ฅ x๊ฐ€ ๋ฌดํ•œ๋Œ€๋กœ ๊ฐˆ ๋•Œ ํ•จ์ˆ˜ ๊ฐ’์ด ์–ด๋–ค ๋ฒ”์œ„ ๋‚ด์—์„œ๋งŒ ์›€์ง์ด๋Š” ๊ฒƒ ex) Sigmoid, hyper tahn

image

์œ„์˜ ํ‘œ๋ฅผ ๋ณด๋ฉด, ์‹ค์„ ์ธ ReLu ํ•จ์ˆ˜๊ฐ€ ์ ์„  tanh ํ•จ์ˆ˜๋ณดํƒ€ ์•ฝ 6๋ฐฐ ๋น ๋ฅด๊ฒŒ ํ•™์Šตํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ๋‹ค. ์ด๊ฒƒ์€, ์ „ํ†ต๋ชจ๋ธ์„ ์‚ฌ์šฉํ–ˆ๋”๋ผ๋ฉด ์ด ์ž‘์—…์— ๋Œ€ํ•ด ํฐ neural net ์‹คํ—˜์ด ๋ถˆ๊ฐ€๋Šฅํ–ˆ์Œ์„ ๋ณด์—ฌ์ค€๋‹ค.

๋น ๋ฅธ ํ•™์Šต์€ ํฐ ๊ทœ๋ชจ์˜ ๋ฐ์ดํ„ฐ์…‹์œผ๋กœ ์ด๋ฃจ์–ด์ง„ ํฐ ๋ชจ๋ธ์˜ ์„ฑ๋Šฅ์— ์ข‹์€ ์˜ํ–ฅ์„ ๋ฏธ์นœ๋‹ค.

3.2 Training on Multiple GPUs

120๋งŒ์˜ ํ•™์Šต ์˜ˆ์ œ๋Š” ํ•˜๋‚˜์˜ GPU๋กœ๋Š” ๋„ˆ๋ฌด ํฌ๋‹ค. ๋”ฐ๋ผ์„œ ๋‘๊ฐœ์˜ GPU๋ฅผ ํŽผ์ณ์„œ ๋ง(net)์„ ์—‡๊ฐˆ๋ฆฌ๊ฒŒ ํ•˜์˜€๋‹ค.

image

์œ„์˜ ์ด๋ฏธ์ง€์™€ ๊ฐ™์ด kernel 2๊ฐœ๋ฅผ ๋™์‹œ์— ์‚ฌ์šฉ(GPU 2๊ฐœ๋กœ ๋ถ„ํ• ํ•ด์„œ) ๋˜ ์ด๊ฒƒ์„ crossํ•˜๊ฒŒ ํ•™์Šตํ•˜๊ฒŒ ๋” ํ•˜์˜€๋‹ค.

  • ์ตœ๊ทผ์˜ GPU๋“ค์€ ๊ต์ฐจ ๋ณ‘๋ ฌ์ฒ˜๋ฆฌ๊ฐ€ ์ž˜ ๋˜์–ด์žˆ์–ด ํ˜ธ์ŠคํŠธ ๋จธ์‹  ๋ฉ”๋ชจ๋ฆฌ์— ์ง์ ‘ ๊ฐ€์ง€ ์•Š๊ณ ๋„ ์„œ๋กœ์˜ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ R/W ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ๊ฐ ์ปค๋„์€ ๋ฐ”๋กœ ์•ž ๋‹จ layer์—์„œ ๋งŒ ์ž…๋ ฅ์„ ๋ฐ›๋Š”๋‹ค.
  • ์—ฐ๊ฒฐ์˜ ํŒจํ„ด์„ ๊ณ ๋ฅด๋Š” ๊ฒƒ์€ cross-validation์˜ ๋ฌธ์ œ์ด์ง€๋งŒ ์ด๊ฒƒ ๋•๋ถ„์— ํ—ˆ์šฉ ๊ฐ€๋Šฅํ•œ ๊ณ„์‚ฐ ๊ฐ’์˜ ๋ถ„์ˆ˜๊ฐ€ ๋‚˜์˜ฌ ๋•Œ๊นŒ์ง€ ๋ฏธ์„ธ ์กฐ์ •์ด ๊ฐ€๋Šฅํ•˜๋‹ค.

3.3 Local Response Normalization

tahn ์ด๋‚˜ sigmoid ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด saturating์„ ํ•ด์•ผํ•ด์„œ overfitting์„ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ์ž…๋ ฅํ• ๋•Œ ๋ถ€ํ„ฐ normalization์„ ๋“ค์–ด๊ฐ„๋‹ค. ํ•˜์ง€๋งŒ ReLu๋Š” ์–‘์ˆ˜ ์ž…๋ ฅ๊ฐ’์„ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— convolution ์ด๋‚˜ pooling์‹œ ๋งค์šฐ ๋†’์€ ํ•˜๋‚˜์˜ ํ”ฝ์…€๊ฐ’์ด ์ฃผ๋ณ€์˜ ํ”ฝ์…€์— ์˜ํ–ฅ์„ ๋ฏธ์น˜๊ฒŒ ๋œ๋‹ค. ์ด๊ฒƒ์„ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ๋‹ค๋ฅธ activation map(kernel)์˜ ๊ฐ™์€ ์œ„์น˜์— ์žˆ๋Š” ํ”ฝ์…€๋ผ๋ฆฌ normalization์„ ํ•ด์ฃผ๋Š”๋ฐ ์ด๊ฒƒ์ด Local Response Normalization์ด๋‹ค.

  • ์ด ์ •๊ทœํ™”๋Š” top-1, top-5 ์—๋Ÿฌ๋น„์œจ์„ 1.4%์™€ 1.2% ๋กœ ์ค„์˜€๋‹ค.
  • 1,2 layer์— ์‚ฌ์šฉํ•˜๋ฉฐ ReLU ํ•จ์ˆ˜ ์ ์šฉ ํ›„์— ์‚ฌ์šฉํ•œ๋‹ค.

3.4 Overlapping Pooling

pooling์€ ํŠน์„ฑ๋งต(feature map)์„ ์ค„์ด๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ. ์—ฌ๊ธฐ์„œ๋Š” overlapping, max pooling ์„ ์‚ฌ์šฉํ•œ๋‹ค. โ‡’ ๊ฒฐ๊ณผ๋กœ overfit์ด ์ž˜ ๋‚˜์˜ค์ง€ ์•Š๋Š” ๊ฒƒ์„ ๋ฐœ๊ฒฌ

  • Non-overlapping๊ณผ ๋น„๊ตํ–ˆ์„ ๋•Œ top-1, top-5 ์—๋Ÿฌ๋น„์œจ์„ 0.4%์™€ 0.3% ๊นŒ์ง€ ์ค„์˜€๋‹ค.

image

๋Œ€ํ‘œ์ ์œผ๋กœ Lenet-5๋Š” non-overlapping, average pooling์„ ์‚ฌ์šฉํ•˜์˜€๋‹ค.

3.5 Overall Archtecture

image

AlexNet์€ ์ด 8๊ฐœ์˜ layer๋กœ, 5๊ฐœ์˜ convolutional layer, 3๊ฐœ์˜ fully-connected layer๋กœ ๊ตฌ์„ฑ๋˜์–ด์žˆ๋‹ค. 2,3,5 ๋ฒˆ์งธ convolution layer์€ ์ „ ๋‹จ๊ณ„์˜ ๊ฐ™์€ ์ฑ„๋…ˆ์˜ ํŠน์„ฑ๋งต๋“ค๊ณผ ์—ฐ๊ฒฐ๋˜์–ด์žˆ๋Š” ๋ฐ˜๋ฉด, 3๋ฒˆ์งธ convolution layer์€ ์ „ ๋‹จ๊ณ„์˜ ๋‘ ์ฑ„๋„์˜ ํŠน์„ฑ ๋งต๋“ค๊ณผ ๋ชจ๋‘ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ๋‹ค. ๋ชจ๋“  layer๋Š” ReLUํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ๋งˆ์ง€๋ง‰ output์—๋งŒ softmaxํ•จ์ˆ˜๋ฅผ ์ ์šฉํ•œ๋‹ค.

์ด์ œ ๊ฐ ๋ ˆ์ด์–ด๋งˆ๋‹ค ์–ด๋–ค ์ž‘์—…์ด ์ˆ˜ํ–‰๋˜๋Š”์ง€ ์‚ดํŽด๋ณด์ž. ์šฐ์„  AlexNet์— ์ž…๋ ฅ ๋˜๋Š” ๊ฒƒ์€ 227 x 227 x 3 ์ด๋ฏธ์ง€๋‹ค. (227 x 227 ์‚ฌ์ด์ฆˆ์˜ RGB ์ปฌ๋Ÿฌ ์ด๋ฏธ์ง€)

1) ์ฒซ๋ฒˆ์งธ ๋ ˆ์ด์–ด(์ปจ๋ณผ๋ฃจ์…˜ ๋ ˆ์ด์–ด):ย 96๊ฐœ์˜ย 11 x 11 x 3 ์‚ฌ์ด์ฆˆย ์ปค๋„๋กœ ์ž…๋ ฅ ์˜์ƒ์„ ์ปจ๋ณผ๋ฃจ์…˜ ํ•ด์ค€๋‹ค. ์ปจ๋ณผ๋ฃจ์…˜ ๋ณดํญ(stride)๋ฅผ 4๋กœ ์„ค์ •ํ–ˆ๊ณ , zero-padding์€ ์‚ฌ์šฉํ•˜์ง€ ์•Š์•˜๋‹ค. zero-padding์€ ์ปจ๋ณผ๋ฃจ์…˜์œผ๋กœ ์ธํ•ด ํŠน์„ฑ๋งต์˜ ์‚ฌ์ด์ฆˆ๊ฐ€ ์ถ•์†Œ๋˜๋Š” ๊ฒƒ์„ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด, ๋˜๋Š” ์ถ•์†Œ๋˜๋Š” ์ •๋„๋ฅผ ์ค„์ด๊ธฐ ์œ„ํ•ด ์˜์ƒ์˜ ๊ฐ€์žฅ์ž๋ฆฌ ๋ถ€๋ถ„์— 0์„ ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ๊ฒฐ๊ณผ์ ์œผ๋กœ 55 x 55 x 96ย ํŠน์„ฑ๋งต(96์žฅ์˜ 55 x 55 ์‚ฌ์ด์ฆˆ ํŠน์„ฑ๋งต๋“ค)์ด ์‚ฐ์ถœ๋œ๋‹ค. ๊ทธ ๋‹ค์Œ์— ReLU ํ•จ์ˆ˜๋กœ ํ™œ์„ฑํ™”ํ•ด์ค€๋‹ค.ย ์ด์–ด์„œ 3 x 3 overlapping max pooling์ด stride 2๋กœ ์‹œํ–‰๋œ๋‹ค. ๊ทธ ๊ฒฐ๊ณผ 27 x 27ย x 96 ํŠน์„ฑ๋งต์„ ๊ฐ–๊ฒŒ ๋œ๋‹ค. ๊ทธ ๋‹ค์Œ์—๋Š” ์ˆ˜๋ ด ์†๋„๋ฅผ ๋†’์ด๊ธฐ ์œ„ํ•ด local response normalization์ด ์‹œํ–‰๋œ๋‹ค. local response normalization์€ ํŠน์„ฑ๋งต์˜ ์ฐจ์›์„ ๋ณ€ํ™”์‹œํ‚ค์ง€ ์•Š์œผ๋ฏ€๋กœ, ํŠน์„ฑ๋งต์˜ ํฌ๊ธฐ๋Š” 27 x 27 x 96์œผ๋กœ ์œ ์ง€๋œ๋‹ค.

2) ๋‘๋ฒˆ์งธ ๋ ˆ์ด์–ด(์ปจ๋ณผ๋ฃจ์…˜ ๋ ˆ์ด์–ด):ย 256๊ฐœ์˜ 5 x 5 x 48ย ์ปค๋„์„ ์‚ฌ์šฉํ•˜์—ฌ ์ „ ๋‹จ๊ณ„์˜ ํŠน์„ฑ๋งต์„ ์ปจ๋ณผ๋ฃจ์…˜ํ•ด์ค€๋‹ค. stride๋Š” 1๋กœ, zero-padding์€ 2๋กœ ์„ค์ •ํ–ˆ๋‹ค. ๋”ฐ๋ผ์„œ 27 x 27 x 256 ํŠน์„ฑ๋งต(256์žฅ์˜ 27 x 27 ์‚ฌ์ด์ฆˆ ํŠน์„ฑ๋งต๋“ค)์„ ์–ป๊ฒŒ ๋œ๋‹ค. ์—ญ์‹œ ReLU ํ•จ์ˆ˜๋กœ ํ™œ์„ฑํ™”ํ•œ๋‹ค. ๊ทธ ๋‹ค์Œ์— 3 x 3 overlapping max pooling์„ stride 2๋กœ ์‹œํ–‰ํ•œ๋‹ค. ๊ทธ ๊ฒฐ๊ณผ 13 x 13 x 256 ํŠน์„ฑ๋งต์„ ์–ป๊ฒŒ ๋œ๋‹ค. ๊ทธ ํ›„ local response normalization์ด ์‹œํ–‰๋˜๊ณ , ํŠน์„ฑ๋งต์˜ ํฌ๊ธฐ๋Š” 13 x 13 x 256์œผ๋กœ ๊ทธ๋Œ€๋กœ ์œ ์ง€๋œ๋‹ค.

3) ์„ธ๋ฒˆ์งธ ๋ ˆ์ด์–ด(์ปจ๋ณผ๋ฃจ์…˜ ๋ ˆ์ด์–ด):ย 384๊ฐœ์˜ 3 x 3 x 256 ์ปค๋„์„ ์‚ฌ์šฉํ•˜์—ฌย ์ „ ๋‹จ๊ณ„์˜ ํŠน์„ฑ๋งต์„ย ์ปจ๋ณผ๋ฃจ์…˜ํ•ด์ค€๋‹ค. stride์™€ zero-padding ๋ชจ๋‘ 1๋กœ ์„ค์ •ํ•œ๋‹ค. ๋”ฐ๋ผ์„œ 13 x 13 x 384 ํŠน์„ฑ๋งต(384์žฅ์˜ 13 x 13 ์‚ฌ์ด์ฆˆ ํŠน์„ฑ๋งต๋“ค)์„ ์–ป๊ฒŒ ๋œ๋‹ค.ย 

4) ๋„ค๋ฒˆ์งธ ๋ ˆ์ด์–ด(์ปจ๋ณผ๋ฃจ์…˜ ๋ ˆ์ด์–ด):ย 384๊ฐœ์˜ 3 x 3 x 192 ์ปค๋„์„ ์‚ฌ์šฉํ•ด์„œย ์ „ ๋‹จ๊ณ„์˜ ํŠน์„ฑ๋งต์„ย ์ปจ๋ณผ๋ฃจ์…˜ํ•ด์ค€๋‹ค. stride์™€ zero-padding ๋ชจ๋‘ 1๋กœ ์„ค์ •ํ•œ๋‹ค. ๋”ฐ๋ผ์„œ 13 x 13 x 384 ํŠน์„ฑ๋งต(384์žฅ์˜ 13 x 13 ์‚ฌ์ด์ฆˆ ํŠน์„ฑ๋งต๋“ค)์„ ์–ป๊ฒŒ ๋œ๋‹ค.ย 

5) ๋‹ค์„ฏ๋ฒˆ์งธ ๋ ˆ์ด์–ด(์ปจ๋ณผ๋ฃจ์…˜ ๋ ˆ์ด์–ด):ย 256๊ฐœ์˜ 3 x 3 x 192 ์ปค๋„์„ ์‚ฌ์šฉํ•ด์„œย ์ „ ๋‹จ๊ณ„์˜ ํŠน์„ฑ๋งต์„ย ์ปจ๋ณผ๋ฃจ์…˜ํ•ด์ค€๋‹ค. stride์™€ zero-padding ๋ชจ๋‘ 1๋กœ ์„ค์ •ํ•œ๋‹ค. ๋”ฐ๋ผ์„œ 13 x 13 x 256 ํŠน์„ฑ๋งต(256์žฅ์˜ 13 x 13 ์‚ฌ์ด์ฆˆ ํŠน์„ฑ๋งต๋“ค)์„ ์–ป๊ฒŒ ๋œ๋‹ค.ย ReLU๋กœ ํ™œ์„ฑํ™” ํ›„ 3 x 3 overlapping max pooling์„ stride 2๋กœ ์‹œํ–‰ํ•œ๋‹ค. ๊ทธ ๊ฒฐ๊ณผ 6 x 6 x 256 ํŠน์„ฑ๋งต์„ ์–ป๊ฒŒ ๋œ๋‹ค.

6) ์—ฌ์„ฏ๋ฒˆ์งธ ๋ ˆ์ด์–ด(Fully connected layer):ย 6 x 6 x 256 ํŠน์„ฑ๋งต์„ flattenํ•ด์ค˜์„œ 6 x 6 x 256 = 9216์ฐจ์›์˜ ๋ฒกํ„ฐ๋กœ ๋งŒ๋“ค์–ด์ค€๋‹ค. ๊ทธ๊ฒƒ์„ ์—ฌ์„ฏ๋ฒˆ์งธ ๋ ˆ์ด์–ด์˜ 4096๊ฐœ์˜ ๋‰ด๋Ÿฐ๊ณผ fully connected ํ•ด์ค€๋‹ค. ๊ทธ ๊ฒฐ๊ณผ๋ฅผย ReLU ํ•จ์ˆ˜๋กœ ํ™œ์„ฑํ™”ํ•œ๋‹ค.

7) ์ผ๊ณฑ๋ฒˆ์งธ ๋ ˆ์ด์–ด(Fully connected layer):ย 4096๊ฐœ์˜ ๋‰ด๋Ÿฐ์œผ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ๋‹ค. ์ „ ๋‹จ๊ณ„์˜ 4096๊ฐœ ๋‰ด๋Ÿฐ๊ณผ fully connected๋˜์–ด ์žˆ๋‹ค.

8) ์—ฌ๋Ÿ๋ฒˆ์งธ ๋ ˆ์ด์–ด(Fully connected layer):ย 1000๊ฐœ์˜ ๋‰ด๋Ÿฐ์œผ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ๋‹ค. ์ „ ๋‹จ๊ณ„์˜ 4096๊ฐœ ๋‰ด๋Ÿฐ๊ณผ fully connected๋˜์–ด ์žˆ๋‹ค. 1000๊ฐœ ๋‰ด๋Ÿฐ์˜ ์ถœ๋ ฅ๊ฐ’์—ย softmax ํ•จ์ˆ˜๋ฅผ ์ ์šฉํ•ด 1000๊ฐœ ํด๋ž˜์Šค ๊ฐ๊ฐ์— ์†ํ•  ํ™•๋ฅ ์„ ๋‚˜ํƒ€๋‚ธ๋‹ค.

4. Reducing Overfitting

์ด NN์˜ ๊ตฌ์กฐ๋Š” 6000๋งŒ๊ฐœ์˜ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ๊ฐ–๊ณ ์žˆ๋‹ค. 1000๊ฐœ ILSVRC ํด๋ž˜์Šค๋“ค๋กœ ์ธํ•ด ๊ฐ ํ•™์Šต ์˜ˆ์ œ๊ฐ€ ์ด๋ฏธ์ง€๋ถ€ํ„ฐ ๋ ˆ์ด๋ธ”๊นŒ์ง€ ๋งคํ•‘ํ•  ๋•Œ 10bit๋กœ ์ œ์–ด๋ฅผ ํ•ด๋„ overfitting์— ๋Œ€ํ•œ ๊ณ ๋ ค ์—†์ด ์•„์ฃผ ๋งŽ์€ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ํ•™์Šต์‹œํ‚ค๊ธฐ์—๋Š” ๋ถˆ์ถฉ๋ถ„ํ•œ ๊ฒƒ์œผ๋กœ ๋ฐํ˜€์กŒ๋‹ค. ๋‘ ๊ฐ€์ง€ ๋ฐฉ๋ฒ•์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

4.1 Data Augmentation

overfitting์„ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•œ ์•„์ฃผ ๊ธฐ๋ณธ์ ์ธ ๋ฐฉ๋ฒ•์€ ๋ ˆ์ด๋ธ”์„ ๋ณด์กดํ•˜๋ฉด์„œ ๋ณ€ํ™˜์‹œํ‚ค๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ ๋ฐ์ดํ„ฐ์…‹์„ ์ธ๊ณต์ ์œผ๋กœ ๋Š˜๋ฆฌ๋Š” ๊ฒƒ์ด๋‹ค.

1) ์ด๋ฏธ์ง€ ๋ฒˆ์—ญ๊ณผ ์ˆ˜ํ‰ ๋ฐ˜์ „

2) RGB ํ”ฝ์…€๊ฐ’์˜ ์ง‘ํ•ฉ์— PCA ์ ์šฉ

4.2 Dropout

์˜ˆ์ธก์„ ์กฐํ•ฉํ•˜๋Š” ๊ฒƒ์€ ์ข‹์€ ๋ฐฉ๋ฒ•์ด๋‚˜ ์˜ค๋žœ ์‹œ๊ฐ„์ด ๊ฑธ๋ฆฌ๊ณ  ์•„์ฃผ ํฐ NN์— ๋†’์€ ๋น„์šฉ์ด ๋ฐœ์ƒํ•œ๋‹ค. ๋”ฐ๋ผ์„œ dropout์œผ๋กœ ๋‰ด๋Ÿฐ๋“ค๊ฐ„์˜ ๋ณต์žกํ•œ ์ƒํ˜ธ ์˜์กด๋„๋ฅผ ๋‚ฎ์ถ”์–ด์„œ overfitting์„ ๋ง‰์„ ์ˆ˜ ์žˆ๋‹ค.

  • โ€œdropoutโ€์ด๋ผ๋Š” ๊ฒƒ์€ forward pass์— ๊ด€์—ฌํ•˜์ง€ ์•Š๊ณ  back propagation์—๋„ ์ฐธ์—ฌํ•˜์ง€ ์•Š๋Š”๊ฒƒ์ด๋‹ค. ๋‹จ, trainingํ•  ๋•Œ๋งŒ ์ฐธ์—ฌํ•˜์ง€ ์•Š๊ณ  testํ•  ๋•Œ๋Š” ์ฐธ์—ฌํ•ด์•ผ ํ•œ๋‹ค.

image

5. Details of learning

๊ทธ๋ƒฅ ๋…ผ๋ฌธ ์ฐธ๊ณ ํ•ด๋ณด๊ธฐ..

6. Results

image

table2์—์„œ ๋ณด๋Š” ๋ฐ”์™€ ๊ฐ™์ด ๊ฒฝํ—˜์ƒ 0.1%์ด์ƒ ์ฐจ์ด๊ฐ€ ๋‚˜์ง€ ์•Š์•„์„œ. ๋ณธ ๋…ผ๋ฌธ์—์„œ ์„ค๋ช…๋œ CNN์€ top-5 error rate์œผ๋กœ 18.2%๋ฅผ ๋‹ฌ์„ฑํ•œ๋‹ค. 5๊ฐœ์˜ ์œ ์‚ฌํ•œ CNN์˜ ์˜ˆ์ธก์„ ํ‰๊ท ํ•˜๋ฉด 16.4%์˜ ์˜ค๋ฅ˜์œจ์ด ์ œ๊ณต๋œ๋‹ค. ์ „์ฒด 1,500๋งŒ ์ด๋ฏธ์ง€, 22K ์นดํ…Œ๊ณ ๋ฆฌ๋ฅผ ๊ฐ€์ง„ ImageNet Fall 2011 ๋ฆด๋ฆฌ์ฆˆ์…‹์„ ๋ถ„๋ฅ˜ํ•˜๊ธฐ ์œ„ํ•ด ๋งˆ์ง€๋ง‰ ํ’€๋ง ๊ณ„์ธต์—๋‹ค๊ฐ€ 6๋ฒˆ์งธ ์ปจ๋ณผ๋ฃจ์…˜ ๋ ˆ์ด์–ด๋ฅผ ์ถ”๊ฐ€ํ•œ CNN ๋ชจ๋ธ์„ ํ•™์Šต์‹œํ‚จ๋‹ค์Œ ILSVRC-2012์—์„œ fine-tuningํ•˜๋ฉด error rate์ด 16.6%๊ฐ€ ๋œ๋‹ค. ์ „์ฒด 2011๋…„ ๊ฐ€์„ ๋ฆด๋ฆฌ์ฆˆ ์…‹์—์„œ ์•ž์„œ ์–ธ๊ธ‰ํ•œ 5๊ฐœ์˜ CNN์œผ๋กœ pre-trained ๋œ 2๊ฐœ์˜ CNN์˜ ์˜ˆ์ธก์„ ํ‰๊ท ํ•˜๋ฉด 15.3%์˜ ์˜ค๋ฅ˜์œจ์ด ์ œ๊ณต๋œ๋‹ค.

AlexNet์„ ์ฝ”๋“œ๋กœ ๊ตฌํ˜„ํ•œ๊ฒƒ์„ ์ •๋ฆฌํ•œ ํŽ˜์ด์ง€์ด๋‹ค. => AlexNet

์ฐธ๊ณ 

[1] https://bskyvision.com/421

ํƒœ๊ทธ: ,

์นดํ…Œ๊ณ ๋ฆฌ:

์—…๋ฐ์ดํŠธ:

๋Œ“๊ธ€๋‚จ๊ธฐ๊ธฐ