CNN
Updated:
0. Convolutional Neural Network
์ด๋ฏธ์ง ์ธ์๊ณผ ์์ฑ ์ธ์ ๋ฑ ๋ค์ํ ๊ณณ์์ ์ฌ์ฉ๋๋ค.
CNN์ ๋คํธ์ํฌ๋ ํฉ์ฑ๊ณฑ ๊ณ์ธต convolutional layer ์ ํ๋ง ๊ณ์ธต pooling layer ๋ฅผ ํฌํจํ๋ค.
1. Convolutional layer
์์ ์ฐ๊ฒฐ ์ธต fully connected layer ์ ๋น๊ตํ์ ๋ CNN์ ์ฅ์ ์ ์
๋ ฅ๋ฐ๋ ๋ฐ์ดํฐ์ ํ์์ ์ ์งํ ์ ์๋ค๋ ์ ์ด๋ค.
์์ ์ฐ๊ฒฐ ์ธต์์๋ 1์ฐจ์ ํํ์ ๋ฐ์ดํฐ๋ฅผ ์
๋ ฅ์ผ๋ก ๋ฐ๋๋ค. ๋ฐ๋ผ์ ์ด๋ฏธ์ง์ ๊ฐ์ 3์ฐจ์ ๋ฐ์ดํฐ์ ๊ฒฝ์ฐ, ๋ฐ์ดํฐ๋ฅผ 1์ค๋ก ์ธ์์ 1์ฐจ์์ผ๋ก ํํํ๊ฒ ๋ณํํ ๋ค ์ฌ์ฉํ๋ค.
๋ฐ๋ฉด CNN์์๋ 3์ฐจ์ ๋ฐ์ดํฐ๋ฅผ ๊ทธ๋๋ก ์
๋ ฅ๋ฐ์ ์ ์๋ค.
์ด๋ ๊ฒ ์ฐจ์์ ์ ์งํจ์ผ๋ก์จ ๋ง์ฝ ์ด๋ฏธ์ง ๋ฐ์ดํฐ๋ผ๋ฉด ํด๋น ์ด๋ฏธ์ง์ ์ ๋ณด๋ฅผ ์์ง ์๊ณ ์ ์งํ ์ ์๋ค.
CNN์์๋ ํฉ์ฑ๊ณฑ ๊ณ์ธต์ ์
์ถ๋ ฅ ๋ฐ์ดํฐ๋ฅผ ํน์ง ๋งต feature map ์ด๋ผ๊ณ ํํํ๊ธฐ๋ ํ๋ค.
ํฉ์ฑ๊ณฑ ์ธต์์๋ ํฉ์ฑ๊ณฑ ์ฐ์ฐ ์ด ์ด๋ฃจ์ด์ง๋ค. ์
๋ ฅ ๋ฐ์ดํฐ์ ํํฐ๋ฅผ ์ ์ฉํ๋ ๊ฒ์ธ๋ฐ ์ด ํํฐ๋ฅผ ์ปค๋ ์ด๋ผ ํํํ๊ธฐ๋ ํ๋ค.
ํฉ์ฑ๊ณฑ ์ฐ์ฐ
์์ ์ฐ๊ฒฐ ์ ๊ฒฝ๋ง์์์ ๋ง์ฐฌ๊ฐ์ง๋ก CNN์๋ ๊ฐ์ค์น ๋งค๊ฐ๋ณ์์ ํธํฅ์ด ์กด์ฌํ๋ค.
ํฉ์ฑ๊ณฑ ์ฐ์ฐ์ ํ์ํ ํ์ดํผํ๋ผ๋ฏธํฐ๋ค์ด ์๋ค.
-
ํจ๋ฉ padding
ํฉ์ฑ๊ณฑ ์ฐ์ฐ์ ์ํํ๊ธฐ ์ ์ ์ ๋ ฅ ๋ฐ์ดํฐ ์ฃผ๋ณ์ ํน์ ๊ฐ์ผ๋ก ์ฑ์ฐ๋ ๊ฒ์ ํจ๋ฉ ์ด๋ผ ํ๋ค.
ํจ๋ฉ์ ํตํด ์ถ๋ ฅ ํฌ๊ธฐ๋ฅผ ์กฐ์ ํ ์ ์์ผ๋ฉฐ ํจ๋ฉ์ ํฌ๊ฒํ๋ฉด ์ถ๋ ฅ ํฌ๊ธฐ๊ฐ ์ปค์ง๋ค.
์ฌ์ธต ์ ๊ฒฝ๋ง์์๋ ํฉ์ฑ๊ณฑ ์ฐ์ฐ์ด ๋ฐ๋ณตํด์ ์ด๋ฃจ์ด์ง๊ธฐ ๋๋ฌธ์ ์ถ๋ ฅ ํฌ๊ธฐ๊ฐ ๋๋ฌด ์์์ง๋ฉด ์ ๋๋ค. ์๋ฅผ ๋ค์ด ์ถ๋ ฅ ํฌ๊ธฐ๊ฐ 1์ด ๋์ด๋ฒ๋ฆฌ๋ฉด ๋๋ ํฉ์ฑ๊ณฑ ์ฐ์ฐ์ ์งํํ ์ ์๋ค. ์ด๋ฌํ ์ํฉ์ ๋ง๊ธฐ ์ํด ํจ๋ฉ์ ์ฌ์ฉํ๋ค. -
์คํธ๋ผ์ด๋ stride
ํจ๋ฉ์ ์ ์ฉํ๋ ์์น์ ๊ฐ๊ฒฉ์ ์คํธ๋ผ์ด๋๋ผ๊ณ ํ๋ค.
์คํธ๋ผ์ด๋๋ฅผ ํค์ฐ๋ฉด ์ถ๋ ฅ์ ํฌ๊ธฐ๋ ์์์ง๋ค.
2. Pooling layer
ํ๋ง์ ๊ฐ๋ก, ์ธ๋ก ๋ฐฉํฅ์ ๊ณต๊ฐ์ ์ค์ด๋ ์ฐ์ฐ์ด๋ค.
์ต๋ ํ๋ง, ํ๊ท ํ๋ง ๋ฑ์ด ์๋ค.
์ด๋ ํ๋ง์ ์๋์ฐ ํฌ๊ธฐ์ ์คํธ๋ผ์ด๋๋ ๊ฐ์ ๊ฐ์ผ๋ก ์ค์ ํ๋ ๊ฒ์ด ๋ณดํต์ด๋ค.
3. CNN ์๊ฐํ
์ฌ๋ฌ ๊ฐ์ ๋ ์ด์ด๋ก ์ด๋ฃจ์ด์ง CNN์์ ๊ฐ ๋ ์ด์ด์์๋ ์ด๋ค ์ ๋ณด๊ฐ ์ถ์ถ๋ ๊น.
์ด๊ธฐ์๋ edge๋ blob (๋ฉ์ด๋ฆฌ) ๋ฑ์ ์ ์์ค ์ ๋ณด low-level feature ๊ฐ ์ถ์ถ๋๋ค.
๋ ์ด์ด๊ฐ ๊น์ด์ง์๋ก ๋ ๋ณต์กํ๊ณ ์ถ์์ ์ธ, high level feature ๊ฐ ์ถ์ถ๋๋ค.
Leave a comment