[CNN] CNN feature map๊ณผ filter ์๊ฐํ
๋ชฉ์ : CNN layer๋ค ์ค๊ฐ์ค๊ฐ ์ถ์ถ๋๋ feature๋ค์ ์๊ฐํํด๋ณด๋ฉด์ layer๋ฅผ ๊ฑฐ์น๋ฉด์ ์ด๋ ํ ๋ณํ๊ฐ ์ผ์ด๋๋์ง ์์๋ณธ๋ค.
CNN architecture
๋ค์ด๊ฐ๊ธฐ์ ์, CNN์ ์ดํดํ๊ธฐ ์ํด ๊ผญ ํ์ํ ์ ๋ณด๋ค์ ๋ํด์ ์ ๋ฆฌํด๋ณธ๋ค.
1. input image์ ์ฐ๋ฆฌ๋ filter(=mask=kernel)๋ฅผ ์ ์ฉํ์ฌ feature map์ ์์ฑํ๋ค. ์ด๋ filter๋ ์ด๋ฏธ์ง๊ฐ ๊ฐ์ง๊ณ ์๋ edge, vertical line, horizontal line, bends์ ๊ฐ์ ์ฌ๋ฌ feature๋ค์ ๋ํ๋ด์ฃผ๋๋ก ๋์์ค๋ค.
2. ์์ฑ๋ feature map์ pooling์ ์ ์ฉํ๋ค. min, avg, max pooling๋ฑ์ ์ธ ์ ์๊ณ , ๊ทธ ์ค์์ max pooling์ ์ฌ์ฉํ์ ๋ ์ฑ๋ฅํฅ์์ ๊ธฐ๋ํด๋ณผ ์ ์๋ค.
์ฐธ๊ณ ๋ก, pooling์ subsampling์ด๋ผ๊ณ ๋ ๋ถ๋ฆฌ๋๋ฐ image data์ size๋ฅผ ์ค์ด๊ธฐ ๋๋ฌธ์ด๋ค. size๋ฅผ ์ด๋ป๊ฒ ์ค์ผ ์ง์ ๋ฐ๋ผ min/max/avg sampling ๋ฑ์ผ๋ก ๋๋๋ค.
- pooling์ ๋ชฉ์ : ์ด๋ฏธ์ง ํฌ๊ธฐ๋ฅผ ์ค์ = parameter์ ์ค์ = ๊ณผ์ ํฉ ๋ฐฉ์ง
- pooling์ ์ฅ์ : channel์์ ์ํฅ์ ์ฃผ์ง ์๋๋ค. channel ์ ์ ์ง (independent)
input feature map์ ๋ฒผํ๊ฐ ์์ด๋ pooling์ ๊ฒฐ๊ณผ์๋ ๋ณํ๊ฐ ์ ๋ค (robustness)
ํ์ตํ parameter๊ฐ ์๋ค
3. flatten์ํจ ํ deep neural net์ input์ผ๋ก ๋ฃ์ด์ค๋ค. ์ด neural net์ output์ผ๋ก ๋ถ๋ฅ๋ class๋ฅผ ๋ด๋ฑ์ด์ค๋ค. (classify)
CNN์ ๊ณผ์ ์ ์์ด๋ณด์๋ค.
๊ทธ๋ฐ๋ฐ ๊ฐ๋,, CNN์ ์ฌ์ฉํ๋ค๋ณด๋ฉด ๊ฒฐ๊ณผ๊ฐ ์ ์ด๋ ๊ฒ ๋์ค์ง? ํน์ ๋ฐ์ดํฐ๊ฐ CNN์ ํต๊ณผํ๋ ๊ณผ์ ์ค์ ๊ฒฐ๊ณผ๊ฐ ๊ถ๊ธํ ๋๊ฐ ์๋ค.
๋ชจ๋ธ์ด ์ด๋ค์์ผ๋ก ํ์ตํ๊ณ ์๋์ง intermediate representation์ ์๊ฐํํด๋ณด๋ฉด ์ข์ ๊ฒ ๊ฐ๋ค.
์ด๋ ๊ฒ ํ๋ฉด ๋ชจ๋ธ์ ๊ฒฐ๊ณผ์ ๋ํ ํด์, model fine tuning ๋ฑ ๋ ์ฉ์ดํด์ง ๊ฒ์ด๋ค.
filter์ feature map์ ์๊ฐํํ๋ ๋ฒ์ ๋ฐฐ์ฐ๊ธฐ ์ ์, convolutional layer์ filter์ ๋ํด ์ง๊ณ ๋์ด๊ฐ์ผํ ์ค์ํ point๋ค์ remind ํด๋ณธ๋ค.
Convolution layer์ Filter (์ค์ point)
1. CNN์ filter์ depth๋ input image์ depth์ ๊ฐ์์ผํ๋ค. ์ฌ๊ธฐ์ depth๊ฐ ์๋ฏธํ๋ ๊ฒ์ color channel ์์ด๋ค.
2. color image์ 3๊ฐ channel๋ง๋ค ๊ฐ๊ฐ ๋ค๋ฅธ Conv2D filter๊ฐ ์์ฑ๋๋ค.
3. ๊ฐ layer์ filter๋ randomํ๊ฒ initialize๋๋ค. ํ์ต์ ํตํด์ feature๊ฐ ๋๋๋ฌ์ง๋ filter๋ก ๋ง๋ค์ด์ง๋ค.
4. ์์ ์๋ layer์ผ์๋ก high-level feature๋ฅผ ์ถ์ถํ๋ค. layer๊ฐ ๊น์ด์ง์๋ก filter ๊ฐ์๋ฅผ ์ฆ๊ฐ์ํจ๋ค.
5. ๋ ๊น์ layer์ ์๋ filter์ผ์๋ก ๋ ๋ง์ feature๋ฅผ ํ์ตํ์ง๋ง ๊ณ์ฐ๋์ด ํฌ๋ค.
filter์ ๊ฐ์ = feature map๊ฐ์
์ฆ, ๋ด๊ฐ 6๊ฐ์ filter๋ฅผ ์ฌ์ฉํ๋ค -> 6๊ฐ์ ์๋ก ๋ค๋ฅธ feature๋ฅผ ๋ฝ๊ฒ ๋ค -> filter 6๊ฐ๋ฅผ convolveํ ๊ฒฐ๊ณผ convolution layer์๋ ์๋ก๋ค๋ฅธ 6๊ฐ์ feature map ์ด ์์ฑ๋๋ค