ํค์๋
- CNN(Convolutional Neural Network)
- padding, stride, filter
- Pooling
- Transfer Learning
- Image Data Augmentation
CNN(Convolutional Neural Network ; ํฉ์ฑ๊ณฑ ์ ๊ฒฝ๋ง)
- ์ปดํจํฐ ๋น์ ์์ ์์ฃผ ์ฌ์ฉ๋๋ ์ ๊ฒฝ๋ง
- ์ด๋ฏธ์ง์ ๊ณต๊ฐ์ ์ธ ํน์ฑ์ ์ต๋ํ ๋ณด์กดํ๋ฉฐ ํ์ตํ๊ธฐ์ ์ข์
[CNN]๊ตฌ์กฐ
ํฌ๊ฒ ํน์ง ์ถ์ถ ๋ถ๋ถ ๊ณผ ๋ถ๋ฅ๋ฅผ ์ํ ์ ๊ฒฝ๋ง ๋ถ๋ถ์ผ๋ก ๋๋ ์ ์์ต๋๋ค.
[CNN] ํน์ง ์ถ์ถ ๋ถ๋ถ
[CNN] ํฉ์ฑ๊ณฑ(Convolution)
- ๊ฒฉ์ ํํ๋ฅผ ๊ฐ์ง ์ด๋ฏธ์ง ๋ฐ์ดํฐ๋ฅผ ํน์ ๊ฒฉ์์ ํฌ๊ธฐ๋ฅผ ๊ฐ์ง ํํฐ๋ฅผ ํตํด ํฉ์ฑ๊ณฑ์ ์งํํด๋์๊ฐ๋๋ค.
- ํํฐ์ ๊ฒฉ์ ๊ฐฏ์๊ฐ ๊ณง ๊ฐ์ค์น๋ค์ด ๋ฉ๋๋ค.
- ex) ํํฐ (5, 5), ํํฐ ๊ฐฏ์ 3, ์ฑ๋ ์ 3 ์ผ ๋ ์ด ๊ฐ์ค์น ๊ฐฏ์๋ 5 * 5 * 3 * 3 = 225 ๊ฐ ๋ฉ๋๋ค.
[ํฉ์ฑ๊ณฑ]ํจ๋ฉ(Padding)
- ์์์ ํํฐ๋ฅผ ํตํด ์ด๋ฏธ์ง๋ฅผ slidingํ ๋, ์ฝ๋์ ์๋ ๊ฒฉ์๊ฐ์ ๊ทธ ํ์ฉ๋๊ฐ ๋งค์ฐ ๋จ์ด์ง๊ฒ ๋ฉ๋๋ค.
- ์๋ฅผ ๋ค์ด (0, 0)์ ์์นํ ๊ฐ์ ์ฒซ๋ฒ์งธ ํํฐ๋ฅผ ๊ฑฐ์น๋ ๊ฒ๋ง๊ณ ๋ ๊ฑฐ์ณ๊ฐ๋ ํํฐ๊ฐ ์์ต๋๋ค.
- ์ด๋ฐ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ์ด๋ฏธ์ง ๋ฐ์ดํฐ ํ
๋๋ฆฌ์ ์ฃผ๋ก
0
์ ๋๋ฌ์ฃผ๊ณ ํฉ์ฑ๊ณฑ์ ์งํํฉ๋๋ค. - ๊ฐ ๊ฒฉ์๊ฐ์ ๋ ์ ํ์ฉํ ์ ์๊ณ ์ถ๋ ฅ๋๋ Feature map์ shape ์ input๊ณผ ๋์ผํ๊ฒ ํ ์ ์๋ค๋ ์ฅ์ ์ด ์์ต๋๋ค.
[ํฉ์ฑ๊ณฑ]์คํธ๋ผ์ด๋(Stride)
- ํํฐ๊ฐ sliding ์ ์์ง์ด๋ ๊ฐ๊ฒฉ์ ์๋ฏธํฉ๋๋ค.
- stride์ ๊ฐ์ ๋ฐ๋ผ์๋ ์ถ๋ ฅ๋๋ Feature map์ ํฌ๊ธฐ๊ฐ ๋ฌ๋ผ์ง๊ฒ ๋ฉ๋๋ค.
Feature map์ ํฌ๊ธฐ(ํฉ์ฑ๊ณฑ output์ ํฌ๊ธฐ)
- ํํฐ ํฌ๊ธฐ(Filter size), ํจ๋ฉ(Padding), ์คํธ๋ผ์ด๋(Stride)์ ๋ฐ๋ฅธ Feature map ํฌ๊ธฐ ๋ณํ
$$
N_{\text{out}} = \bigg[\frac{N_{\text{in}} + 2p - k}{s}\bigg] + 1
$$
$N_{\text{in}}$ : ์
๋ ฅ๋๋ ์ด๋ฏธ์ง์ ํฌ๊ธฐ(=ํผ์ฒ ์)
$N_{\text{out}}$ : ์ถ๋ ฅ๋๋ ์ด๋ฏธ์ง์ ํฌ๊ธฐ(=ํผ์ฒ ์)
$k$ : ํฉ์ฑ๊ณฑ์ ์ฌ์ฉ๋๋ ์ปค๋(=ํํฐ)์ ํฌ๊ธฐ
$p$ : ํฉ์ฑ๊ณฑ์ ์ ์ฉํ ํจ๋ฉ ๊ฐ
$s$ : ํฉ์ฑ๊ณฑ์ ์ ์ฉํ ์คํธ๋ผ์ด๋ ๊ฐ
[CNN] ํ๋ง(Pooling)
- ์ฃผ๋ก ํฉ์ฑ๊ณฑ ๊ณผ์ ์ดํ ์งํ๋๋ ๊ณผ์
- ๊ฐ๋ก, ์ธ๋ก ๋ฐฉํฅ์ ๊ณต๊ฐ์ ์ค์ด๊ธฐ ์ํจ์ด๋ฉฐ Max pooling(์ต๋๊ฐ ์ ํ)๊ณผ Average pooling(ํ๊ท ๊ฐ ์ ํ)์ ์ฃผ๋ก ์ฌ์ฉํฉ๋๋ค.
- ํ๋ง ๋ํ stride์ ๊ฐ๋ ์ด ์์ง๋ง ์ฃผ๋ก ํ๋งํ๋ ๊ฒฉ์์ ํฌ๊ธฐ์ ๋์ผํ๊ฒ ํ์ฌ ๋ฐ์ดํฐ๊ฐ ๊ฒน์น์ง ์๋๋ก ํฉ๋๋ค.
- ํ๋ง ์ธต์์๋ ํ์ตํด์ผํ ๊ฐ์ค์น๊ฐ ์๊ณ ์ฑ๋ ์๊ฐ ๋ณํ์ง ์๋๋ค๋ ํน์ง์ด ์์ต๋๋ค.
[CNN] ์์ ์ฐ๊ฒฐ ์ ๊ฒฝ๋ง(Fully connected Layer) = ๋ถ๋ฅ๋ฅผ ์ํ ์ ๊ฒฝ๋ง ๋ถ๋ถ
- ํฉ์ฑ๊ณฑ ๊ณผ์ ์ดํ ๋ฌธ์ ์ ๋ฐ๋ผ ์ ์๋๋ ๋ง์ง๋ง ๋จ๊ณ๋ก MLP(๋ค์ธต ํผ์ ํธ๋ก ) ์ ๊ฒฝ๋ง์ผ๋ก ๊ตฌ์ฑ์ ํ๊ฒ ๋ฉ๋๋ค.
- ํ์ด์ผํ๋ ๋ฌธ์ ์ ๋ฐ๋ผ ์ถ๋ ฅ์ธต์ ์ค๊ณํฉ๋๋ค.
์ถ๊ฐ ๊ฐ๋
์ธต์ด ๊น์ด์ง์๋ก ํํฐ๋ ๋ ์ ์ฒด์ ์ธ ํน์ง์ ์ก๊ฒ ๋ฉ๋๋ค.
- ์ฒซ๋ฒ์งธ ํํฐ๋ง์ ํ ๋๋, ํํฐ 1๋ฒ ํฉ์ฑ๊ณฑ ๊ณผ์ ์์ ์ด๋ฏธ์ง์ ์ธ์ธํ ๋ถ๋ถ์ ๋ด๊ฒ ๋ฉ๋๋ค.
- ์ดํ Convolution layer๊ฐ ์์ผ์๋ก ํํฐ์ ๋ด๊ธฐ๋ ์ด๋ฏธ์ง์ ์ ๋ณด๋ ๋ ํฐ ๋ฒ์์ ์ด๋ฏธ์ง๊ฐ ๋ด๊ธฐ๊ฒ ๋ฉ๋๋ค.(์ ์ฐจ ํฌ๊ธฐ๊ฐ ์ค๋ฉด์ ์ด๋ฏธ์ง๊ฐ ์์ถ๋๋๊น)
์ ์ด ํ์ต(Transfer Learning)
- ์ฌ์ ํ์ต ๋ชจ๋ธ์ ๊ฐ์ค์น๋ฅผ ๊ฐ์ ธ์์ ํ์ตํ๋ ๋ฐฉ๋ฒ
- ์ฆ, CNN์ ํน์ง ์ถ์ถ ๋ถ๋ถ(๊ฐ์ค์น)์ ๊ฐ์ ธ์์ ๋ค์ ์์ ์ฐ๊ฒฐ ์ ๊ฒฝ๋ง๋ง ์ํ๋ ๋ฌธ์ ์ ๋ฐ๋ผ ์ค๊ณํ ํ, ๊ฐ๊ณ ์๋ ๋ฐ์ดํฐ๋ฅผ ํ์ต์ํฌ ์ ์์ต๋๋ค.
- ๋ฐ์ดํฐ๋ฅผ ๊ตฌํ๋๋ฐ ์๊ฐ์ ์๋ผ๊ณ , ๋ณต์กํ๊ฒ ๋ฐ๋ก ๋ชจ๋ธ๋งํ ๊ฒ ์์ด ์ ๋ง๋ค์ด์ง ๊ตฌ์กฐ๋ฅผ ๊ฐ์ ธ์ค๊ธฐ ๋๋ฌธ์ ์ ์ฉํฉ๋๋ค.
์ฌ์ ํ์ต ๋ชจ๋ธ(Pre-trained Model)
- ์ฑ๋ฅ์ด ์ข์ ๋ชจ๋ธ์ ๋๋์ ๋ฐ์ดํฐ๋ก ํ์ต์์ผ๋์ ๋ชจ๋ธ
- ๋ํ์ ์ผ๋ก VGG, GoogLeNet, ResNet ๋ฑ์ด ์์ต๋๋ค.
์ด๋ฏธ์ง ๋ฐ์ดํฐ ์ฆ๊ฐ(Image Data Augmentation)
- ๊ฐ๊ณ ์๋ ์ด๋ฏธ์ง ๋ฐ์ดํฐ๋ฅผ
ํ์ , ๋ฐ์ , ์๋ฅด๊ธฐ, ๋ฐ๊ธฐ ๋ณํ, ์ฑ๋ ๋ณํ ๋ฑ
์ ํตํด ๋ ๋ค์ํ ํ์ต ๋ฐ์ดํฐ๋ฅผ ๋ง๋๋ ๋ฐฉ๋ฒ์ ๋๋ค. - ํ์ต ๋ฐ์ดํฐ๋ฅผ ๋ ๋ค์ํ๊ฒ ๋๋ฆฌ๊ธฐ ๋๋ฌธ์ Data Augmentation์ ์ผ์ข ์ ๋๋ค.
- ex) ๊ณ ์์ด๊ฐ ๋ ๊ท๊ฐ ์์ ๋ค๋ฆฌ๊ฐ ์๋์ ์๋ ์ฌ์ง๋ง ์๋ ๊ฒ์ด ์๋๊ธฐ ๋๋ฌธ์ ์ด๋ ๊ฒ ๋ฐ์ดํฐ ์ฆ๊ฐ์ ํตํด ๋ ๋ค์ํ ์ฌ์ง์ ๊ณ ์์ด๋ก ํ์ต์ํฌ ์ ์๊ฒ ๋ฉ๋๋ค.
'๐ฟ Data > ๋ถํธ์บ ํ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[TIL] 84. AutoEncoder (0) | 2022.03.14 |
---|---|
[TIL] 83. Image Segmentation, Object Detection/Recognition (0) | 2022.03.12 |
[TIL] 81. Section4 Sprint2 (0) | 2022.03.09 |
[TIL] 80. Transformer (0) | 2022.03.09 |
[TIL] 79. ์ธ์ฝ๋-๋์ฝ๋, Attention (0) | 2022.03.08 |