
์ ๊ฒฝ๋ง(Neural Network) ์ 2010๋
๊ฒฝ๋ถํฐ ๋ค์ ์ฃผ๋ชฉ๋ฐ๊ธฐ ์์ํ๊ณ ,
์ด๋ฏธ์ง ๋ถ๋ฅ(image classification) ๋ถ์ผ์์ ํฐ ์ฑ๊ณต์ ๊ฑฐ๋์๋ค.
๊ธฐ๊ด์์ ๋ง๋ ์ํ ์ด๋ฏธ์ง ๋ถ๋ฅ์ฉ ๋ฐ์ดํฐ์
CIFAR-100 ๋ฐ์ดํฐ์
CNN์ ์ด๋ฏธ์ง ๋ถ๋ฅ๋ฅผ ์ํด ๋ฐ์ ๋ ๋ฅ๋ฌ๋ ๋ชจ๋ธ ๊ตฌ์กฐ
๋ค์ํ ์ด๋ฏธ์ง ๊ด๋ จ ๋ฌธ์ ์ ๋ํด ๋๋ผ์ด ์ฑ๋ฅ์ ๋ณด์ฌ์ฃผ๋ฉฐ ๋ฐ์ ํด์๋ค.
์: ๊ฐ์ฒด ์ธ์, ์ผ๊ตด ์ธ์, ์์จ ์ฃผํ ๋ฑ
CNN์ ์ธ๊ฐ์ ์๊ฐ ์์คํ
๊ณผ ๋น์ทํ๋ค.๊ณ์ธต์ (hierarchical) ์ผ๋ก ์ธ์ํ๋ค:์กฐํฉํด ๊ฐ๋ฉฐ ์ ์ฒด ์ด๋ฏธ์ง(๊ฐ์ฒด) ๋ฅผ ์ธ์ํ๋ค.ํฉ์ฑ๊ณฑ(convolution) ๊ณผ ํ๋ง(pooling) ๊ณ์ธต์ ํตํด ์ด๋ฃจ์ด์ง๋ค.์ด๋ฏธ์ง ์์์ ์์ ํจํด(์: ์ , ๋ชจ์๋ฆฌ ๋ฑ) ์ ์ฐพ์๋ธ๋ค.
ํํฐ(๋๋ ์ปค๋)๋ฅผ ์ด๋ฏธ์ง์ ์ฌ๋ผ์ด๋ฉํ๋ฉฐ ํน์ง(feature)์ ์ถ์ถํ๋ค.
์์์ ์ถ์ถํ ํน์ง์ ์์ฝ/์ถ์ํ๋ ์ญํ ์ ํ๋ค.
๊ฐ์ฅ ๋ํ์ ์ธ ์ ๋ณด๋ฅผ ๋ฝ์๋ด์ด ๊ณต๊ฐ ํฌ๊ธฐ๋ฅผ ์ค์ด๊ณ , ๊ณ์ฐ ํจ์จ์ ๋์ธ๋ค.
ํฉ์ฑ๊ณฑ ๊ณ์ธต์ ์ฌ๋ฌ ๊ฐ์ ํํฐ(filter)๋ก ๊ตฌ์ฑ๋์ด ์์
ํฉ์ฑ๊ณฑ ํํฐ๋ ์ด๋ฏธ์ง ์์์ ํน์ ํ ์ง์ญ์ ์ธ ํจํด(local feature) ์ด ์กด์ฌํ๋์ง๋ฅผ ํ๋จํ๋ ์์ ํ
ํ๋ฆฟ
ํํฐ๋ ํ์ต์ ํตํด ์ต์ ํ๋จ
๋งค์ฐ ๋จ์ํ ์ฐ์ฐ์ธ ํฉ์ฑ๊ณฑ(dot product) ์ ์ฌ์ฉํจ
์ด๋ฏธ์ง ์๋ฅผ ํํฐ๊ฐ ์ฌ๋ผ์ด๋ฉํ๋ฉด์ local feature์ ํน์ง์ ์ก์ ๊ฐ ์์ญ๊ณผ์ ์ ์ฌ๋๋ฅผ ๊ณ์ฐํจ
โ
์์
์
๋ ฅ ์ด๋ฏธ์ง (4ร3):
ํํฐ (2ร2):
์ถ๋ ฅ ์ด๋ฏธ์ง (ํฉ์ฑ๊ณฑ ๊ฒฐ๊ณผ):
์ด ๊ฒฐ๊ณผ๋ ์๋ณธ ์ด๋ฏธ์ง ์ค, ํํฐ์ ๋น์ทํ ๋ถ๋ถ์ ๋์ ์ ์๋ฅผ ๋ถ์ฌํจ
โผ๏ธ ํํฐ๊ฐ
2ร2์ด๊ธฐ ๋๋ฌธ์ dimenssion์ดํ๋์ฉ ์ค์ด๋ ๋ค. if 3ร3 ์ด์๋ค๋ฉด ๋ ์ฉ ์ค์์ ๊ฒ.
๋ง์ฝ ๋ง์ง ์์ผ๋ฉด
padding True์ต์ ์ ํตํด ํฌ๊ธฐ๋ฅผ ๋ง์ถ์ด ์ค
ํํฐ๋ ๋จ์ํ ์ , ๋ชจ์๋ฆฌ ๋ฑ ์์ ํํ(shape) ๋ฅผ ๋ํ๋ด๋ ์์ ์ด๋ฏธ์ง๋ก ๋ณผ ์ ์๋ค
ํ๋ จ ์ค ํ์ต๋จ (backpropagation์ผ๋ก ์ต์ ํ๋จ)
์
๋ ฅ ์ด๋ฏธ์ง์ ํํฐ์ ๋ํธ๊ณฑ(dot product) ์ผ๋ก ์ ์ฌ๋๋ฅผ ๊ณ์ฐ
์ ์ฌํ ์ง์ญ์ด๋ฉด ๋์ ๊ฐ, ๋ค๋ฅด๋ฉด ๋ฎ์ ๊ฐ ์ถ๋ ฅ
- `์์ง ํํฐ`๋ ์์ง ์ค๋ฌด๋ฌ๋ ๋ชจ์๋ฆฌ๋ฅผ ๊ฐ์กฐํ๊ณ ,
- `์ํ ํํฐ`๋ ์ํ ์ค๋ฌด๋ฌ๋ ์ฃ์ง๋ฅผ ๊ฐ์กฐํ๋ค.
์ปฌ๋ฌ ์ด๋ฏธ์ง๋ 3๊ฐ์ ์์ ์ฑ๋(R, G, B) ๋ก ๊ตฌ์ฑ๋๋ค.2์ฐจ์ ๋ฐฐ์ด(feature map) ์ด๋ค.32ร32 ๋ฐฐ์ด (Red, Green, Blue)3ร3 ํฌ๊ธฐ์ ๊ฐ์ค์น ํ๋ ฌ๋ก ๊ตฌ์ฑ๋๋ค.ํฉ์ฑ๊ณฑ(convolution) ํ๋ค.feature map์ ํฉ์ฐ(summing) ํ์ฌ2์ฐจ์ ์ถ๋ ฅ feature map ํ๋๋ฅผ ์์ฑํ๋ค.ReLU ํจ์๋ฅผ ํตํด ๋น์ ํ ๋ณํ๋๋ค:โ ๊ฒฐ๊ณผ์ ์ผ๋ก ํํฐ๋ ์ด๋ฏธ์ง ์ ํน์ง(์ , ๋ชจ์๋ฆฌ ๋ฑ)์ ๊ฐ์งํ๊ณ , ํน์ง ๋งต(feature map) ์ ๊ทธ ๊ฐ๋๋ฅผ ํํํ๊ฒ ๋๋ค.
์ด๋ฏธ์ง์ ํฌ๊ธฐ๋ฅผ ์ค์ด๊ณ , ํต์ฌ ์ ๋ณด๋ง ์์ฝํ๋ ์ญํ ์ ํจ
์ ๋ณด ์์ถ + ์์น ๋ถ๋ณ์ฑ ํ๋ณด๋ฅผ ๋์์ ํด์ฃผ๋ ๋จ๊ณ
โ
๐ ํจ๊ณผ
๊ฐ๋ก ร ์ธ๋ก ๋ชจ๋ ์ ๋ฐ์ผ๋ก ์ถ์1/4๋ก ์ค์๐ ์์น ๋ถ๋ณ์ฑ
์ผ๋ฐ์ ์ธ `CNN`์ ์ฌ๋ฌ ๊ฐ์ `ํฉ์ฑ๊ณฑ ์ธต`(convolution layers) ๊ณผ `ํ๋ง ์ธต`(pooling layers) ์ผ๋ก ๊ตฌ์ฑ๋จ
ex) ํฉ์ฑ๊ณฑ 3๊ฐ + ํ๋ง 3๊ฐ ์กฐํฉ
- ํํฐ๋ ์ผ๋ฐ์ ์ผ๋ก ์์ ํฌ๊ธฐ (์: 2ร2, 3ร3)๋ฅผ
- ๊ฐ ํํฐ๋ ์
๋ ฅ ์ด๋ฏธ์ง๋ก๋ถํฐ ํ๋์ ์๋ก์ด ์ฑ๋(feature map) ์ ์์ฑํจ
์ด๋ฏธ์ง ํฌ๊ธฐ โฌ๏ธ ์ฑ๋ ์ โฌ๏ธ โ ์ ๋ณด ์์ฝ์ ๋์ง๋ง ํํ๋ ฅ์ ๋ ํ๋ถํด์ง
ResNet-50: ์ด๋ฏธ์ง๋ท(Imagenet) ์ 1000๊ฐ ํด๋์ค ์ด๋ฏธ์ง ๋ถ๋ฅ์ ์ฌ์ฉ๋จ, ๋ฌด๋ ค 50๊ฐ์ ์ธต(layer) ์ผ๋ก ๊ตฌ์ฑ๋ ๋งค์ฐ ๊น์ ๋คํธ์ํฌ
ํ๋์ ํ์ต ์ด๋ฏธ์ง๋ฅผ ์ฌ๋ฌ ๋ฒ ๋ณต์ ํ๊ณ , ๊ทธ ๋ณต์ ๋ณธ๋ง๋ค ์์ฐ์ค๋ฌ์ด ์๊ณก์ ์ ์ฉํ๋ ๋ฐฉ์
์ฌ๋์ด ๋ณด๊ธฐ์ ๊ฐ์ ์ด๋ฏธ์ง๋ก ์ธ์๋ ์ ๋๋ก ๋ฏธ์ธํ ๋ณํ๋ง ์ฃผ๋ฉฐ, ๋ํ์ ์ธ ์๋ก๋ ํ๋(zoom), ์ํ/์์ง ์ด๋, ๊ธฐ์ธ์(shear), ์์ ํ์ , ์ข์ฐ ๋ฐ์ (horizontal flip) ๋ฑ์ด ์๋ค.
๊ฐ์ ์ ๋ต ๋ผ๋ฒจ์ ๊ณต์ ํ๋ฉฐ, ๊ฒฐ๊ณผ์ ์ผ๋ก ํ์ต ๋ฐ์ดํฐ์ ์์ ํจ๊ณผ์ ์ผ๋ก ์ฆ๊ฐ์ํค๋ ํจ๊ณผ๋ฅผ ๋ธ๋ค.
์ด๋ ๋ชจ๋ธ์ด ๊ณผ์ ํฉ(overfitting) ๋๋ ๊ฒ์ ๋ฐฉ์งํ๊ณ , ๋ ์ผ๋ฐํ๋ ํน์ฑ์ ํ์ตํ ์ ์๋๋ก ๋์์ค๋ค.
์ด๋ฌํ ๋ฐฉ์์ ์ผ์ข
์ ์ ๊ทํ(regularization) ๊ธฐ๋ฒ์ผ๋ก ๋ณผ ์ ์๋๋ฐ, ํ๋์ ์๋ณธ ์ด๋ฏธ์ง๋ฅผ ์ค์ฌ์ผ๋ก ๋ค์ํ ๋ณํ ์ด๋ฏธ์ง๋ค์ด ํ๋์ "์ด๋ฏธ์ง ๊ตฌ๋ฆ(image cloud)" ์ ์ด๋ฃจ๊ฒ ๋๊ณ , ์ด๋ ๋ชจ๋ธ์ด ์์ ๋ณํ์ ๊ฐ๊ฑดํ ํํ๋ก ํ์ต๋๋๋ก ์ ๋ํ๋ค.
๐ ResNet50์ ํ์ฉํ ์ด๋ฏธ์ง ๋ถ๋ฅ
์ด ํ๋ฅ ๊ฐ์ ํด๋น ์ด๋ฏธ์ง๊ฐ ๊ฐ ํด๋์ค์ ์ํ ๊ฐ๋ฅ์ฑ์ ๋ํ๋ด๋ ๊ฐ์ผ๋ก, ์ด 100๊ฐ์ ํด๋์ค ์ค ๋ชจ๋ธ์ด ๊ฐ์ฅ ์์ ์์ด ํ๋ 3๊ฐ ์ ํ์ง๋ฅผ ๋ณด์ฌ์ค๋ค.
์ด๋ฌํ ๋ฐฉ์์ ๋จ์ํ ์ ๋ต ์ฌ๋ถ๋ฅผ ๋์ด์, ๋ชจ๋ธ์ด ์์ธก์ ๋ํด ์ด๋ ์ ๋์ ํ์ ์ ๊ฐ์ง๊ณ ์๋์ง๊น์ง ํ์ธํ ์ ์๊ฒ ํด์ฃผ๋ฉฐ, ๋ถ๋ฅ๊ธฐ์ ์ฑ๋ฅ์ ๋ณด๋ค ์ ์ฒด์ ์ผ๋ก ์ดํดํ๋ ๋ฐ ๋์์ด ๋๋ค.
![]()
4D Tensor: (#Samples, Height, Width, #Channel)