Lecture 5: Convolutional Neural Networks
History of Neural Networks
์ธ๊ณต ์ ๊ฒฝ๋ง์ ๋ณธ๊ฒฉ์ ์ธ ์ฐ๊ตฌ๊ฐ ์ด๋ฃจ์ด์ง ๊ฒ์ ๋น๊ต์ ์ต๊ทผ์ด๋ค. ์ปดํจํฐ๊ฐ ๊ฐ๋ฐ๋๊ธฐ ์ ์ ์ฌ๋๋ค์ ๋ค์๊ณผ ๊ฐ์ ์ด๋ก ์ ๋ด๋์๋ค.
- 1957๋ ์ Frank Rosenblatt๋ ์ํ๋ฒณ์ ์ธ์ํ๋ ๊ธฐ๊ณ๋ฅผ ๊ณ ์ํ๋ค.
- 1986๋ ์ ์ญ์ ํ๋ฅผ ํตํด ์ต์ ์ ๊ฐ์ค์น๋ฅผ ์ฐพ๋ ์ฐ๊ตฌ๊ฐ ํ๋ฐํ ์ด๋ฃจ์ด์ก๋ค.
- 1998๋ ์ LeCun, Bottou, Bengio, Haffner๊ฐ ๊ฒฝ์ฌ ํ๊ฐ๋ฒ(gradient descent)๋ฅผ ์ฒ์์ผ๋ก ๊ธ์ ์ธ์์ ์ ์ฉํด ๋ณด์๋ค.
- 2012๋ ์ Alex Krizhevsky๊ฐ AlexNet์ ๊ฐ๋ฐํ์๋ค. ์ด๋ ํ๋ CNN ๋ชจ๋ธ์ ๊ทผ๊ฐ์ด ๋ ์ค์ํ ๋ชจ๋ธ์ด๋ค. 5, 2021๋ ํ์ฌ, CNN์ ์ปดํจํฐ ๋น์ ๋ถ์ผ์ ๋ชจ๋ ๊ณณ์์ ์ฌ์ฉ๋๊ณ ์๋ค.
Convolutional Neural Networks
Convolutional Neural Networks (์ดํ CNN) ์ ๋ค์๊ณผ ๊ฐ์ ๋ฐฉ๋ฒ์ผ๋ก ์๋ํ๋ค.
- ๋ค์๊ณผ ๊ฐ์ ์ด๋ฏธ์ง ๋ฐ์ดํฐ ์ ํํฐ ๊ฐ ์กด์ฌํ๋ค.
2. ์๋ ์ฌ์ง๊ณผ ๊ฐ์ด ํํฐ๊ฐ ์
๋ ฅ ์ด๋ฏธ์ง ๋ฐ์ดํฐ๋ฅผ ํน์ ํ ์์๋๋ก ํ๋์ฉ ํ์ด๋๊ฐ๋ค. ๊ทธ๋ฆฌ๊ณ ํํฐ์ ์
๋ ฅ๋ ์ซ์์ ํด๋น๋๋ ์
๋ ฅ ์ด๋ฏธ์ง ํฝ์
์ ์ซ์์ ๋ด์ ํ ๊ฐ์ ์ถ๋ ฅํ๋ค.
3. ์ด๋ฌํ ๊ณผ์ ์ ํ๋ฒ ๋๋ด๊ฒ ๋๋ฉด ๊น์ด๊ฐ 1์ธ ์ถ๋ ฅ ์ด๋ฏธ์ง ๋ฐ์ดํฐ๊ฐ ์์ฑ์ด ๋๋ค. ํํฐ๊ฐ ์
๋ ฅ ์ด๋ฏธ์ง ๋ฐ์ดํฐ๋ฅผ ํ๋ ๊ณผ์ ์ ์ฌ๋ฌ๊ฐ์ ํํฐ์ ์ํด์ ์ฐ์์ ์ผ๋ก ์ด๋ฃจ์ด์ง๋ค. ๋ง์ฝ ํํฐ์ ๊ฐ์๊ฐ 6๊ฐ๋ผ๊ณ ๊ฐ์ ํ๋ฉด ์ต์ข
์ ์ผ๋ก ์ถ๋ ฅ๋๋ ์ด๋ฏธ์ง ๋ฐ์ดํฐ์ ๊น์ด๋ 6์ด ๋๋ค.
4. CNN์ ๋ง์ง๋ง ์ธต์ ํญ์ fully connected layer, ์ฆ ์ต์ข
์ถ๋ ฅ ๋ฐ์ดํฐ๋ฅผ 1์ฐจ์์ผ๋ก ๋ง๋๋ ๋ ์ด์ด๊ฐ ์ ์ฉ์ด ๋๋ค.
5. ์ฌ๋ฌ๊ฐ์ ์ธต(ํํฐ)๋ฅผ ๋ง์ด ์์์๋ก ๋ชจ๋ธ์ ์ด๋ฏธ์ง ๋ฐ์ดํฐ์ ๋ณต์กํ ๋ํ
์ผ์ ํ์ตํ ์ ์๊ฒ๋๋ค. ์๋ ์ฌ์ง์์๋ ์ธต์ 1๊ฐ, 3๊ฐ, 5๊ฐ๋ฅผ ์์์๋ ๋ชจ๋ธ์ด ํ์ตํ๋ ์ ๋๋ฅผ ๋น๊ตํ๊ณ ์๋ค.
Parameters of CNN
๋ค์์ CNN ๋ชจ๋ธ์ ๋ง๋ค๊ธฐ ์ํด์ ์ง์ ํด์ผ ํ๋ ํ๋ผ๋ฏธํฐ์ด๋ค.
- Stride: ํํฐ๊ฐ ์ด๋ฏธ์ง ๋ฐ์ดํฐ๋ฅผ ํ๊ณ ์ง๋๊ฐ๋ ๋ช ์นธ๋งํผ ์ด๋ํ๋์ง ์ง์ ํ๋ ์ธ์์ด๋ค.
- Pad: ์ ๋ ฅ ์ด๋ฏธ์ง ๋ฐ์ดํฐ์ ๋ชจ์๋ฆฌ์ ์ผ๋ง๋งํผ์ ํฝ์ ์ ์ถ๊ฐํ ์ง๋ฅผ ์ง์ ํ๋ ์ธ์์ด๋ค. ์ด๋, ์ถ๊ฐ๋ ํฝ์ ์ ์ถ๋ ฅ ์ด๋ฏธ์ง ๋ฐ์ดํฐ์ ๊ฐ์ ์ํฅ์ ์ฃผ์ง ์๋๋ก ํ๊ธฐ์ํด ๊ฐ์ด 0์ผ๋ก ์ค์ ๋๋ค.
๋ค์ ์์ ์ ๋ ฅ ์ด๋ฏธ์ง ๋ฐ์ดํฐ์ ํฌ๊ธฐ ๋ฅผ N, ํํฐ์ ํฌ๊ธฐ ๋ฅผ F, stride ๋ฅผ S, pad ๋ฅผ P ๋ผ๊ณ ํ ๋ ์ถ๋ ฅ๋๋ ์ด๋ฏธ์ง ๋ฐ์ดํฐ์ ํฌ๊ธฐ M์ ์๊ธฐ ์ํด ์ฌ์ฉ๋๋ ๊ณต์์ด๋ค.
$ M = {(N+2P-F)/S}+1 $
Other layers
convolutional layer์ ์์ ์ค๋ช ํ๋ค์ํผ ํํฐ์ ์ ๋ ฅ๋ ์ซ์์ ํด๋น๋๋ ์ ๋ ฅ ์ด๋ฏธ์ง ํฝ์ ์ ์ซ์์ ๋ด์ ํ ๊ฐ์ ์ถ๋ ฅํ๋ ๋ฐฉ๋ฒ์ผ๋ก ๊ณ์ฐ์ ์งํํ๋ค. convolutional layer์ธ์๋ ๋ค์๊ณผ ๊ฐ์ ๋๊ฐ์ง์ layer ์ด ์กด์ฌํ๋ค.
- Pooling layer: ์ด๋ฏธ์ง ๋ฐ์ดํฐ์์ ์ด๋ฃจ์ด์ง๋ ๊ณ์ฐ์ ๋จ์ํ ์ํค๊ธฐ ์ํด์ ์ด๋ฏธ์ง์ ํฌ๊ธฐ๋ฅผ ์ค์ด๋ ๋ ์ด์ด์ด๋ค.
2. Maxpooling layer: ์ด๋ฏธ์ง ๋ฐ์ดํฐ์ ํํฐ์ ์ผ์นํ๋ ํฝ์
์ ๋ด์ ๊ฐ์ ๊ตฌํ๋ ๋์ ํํฐ ์์ ๋ํ๋๋ ์ด๋ฏธ์ง ๋ฐ์ดํฐ์ ๊ฐ์ฅ ํฐ ํฝ์
๊ฐ์ ์ ์ฅํ๋ ๋ ์ด์ด์ด๋ค.
๋ค์์ ์ฐจ ์ฌ์ง์ ์์ ์ค๋ช ํ ๋ ์ด์ด๋ค์ ๋ชจ๋ ์ ์ฉํ์๋์ ๋ชจ์ต์ด๋ค.
Trends of CNN
- ํํฐ์ ํฌ๊ธฐ๋ฅผ ์ค์ด๊ณ ์ต๋ํ ์ธต์ ๋ง์ด ์๋๋ค.
- Maxpooling layer๊ณผ fully connected layer์ ๋นผ๊ณ ์ค์ง convolutional layer๋ง ์ ์ฉํ๋ค.
Comments