๐ Convolutional Neural Network
- ์ฐ์ํ ๋ณ์, ์ด์ฐํ ๋ณ์, 2์ฐจ์ ์ด๋ฏธ์ง์ผ ๊ฒฝ์ฐ ์๋์ ๊ฐ์ convolution ์ฐ์ฐ์์ผ๋ก ์ด๋ฃจ์ด ๊ณ์ฐํ๊ฒ ๋๋ค.
- 2D image convolution์ ์ด์ฉํด ์ด๋ฏธ์ง์ Blur, Emboss, Outline๋ฑ ๋ค์ํ ํจ๊ณผ๊ฐ ๋์ค๊ฒ ๋จ.
๐ฅ CNN
- Convolution Layer, Pooling Layer, Fully Connected Layer๋ก ์ด๋ฃจ์ด์ ธ ์์.
- Conv. layer ๊ณผ Pooling Layer์ Feature extraction ์ญํ ์ ํ๋ค.
- FC์ ๊ฒฝ์ฐ decision making์ญํ ์ ํ์ง๋ง, ์ต๊ทผ์๋ ์ฌ์ฉํ์ง ์๋ ์ถ์ธ์ด๋ค
WHY? FC๋ก ๋์ด๊ฐ๋ฉด์ ํ๋ผ๋ฏธํฐ ์๊ฐ ์์ฒญ๋๊ฒ ๋ง์์ง๊ฒ ๋๋๋ฐ ๊ทธ๊ฒ์ ์ค์ด๊ธฐ ์ํจ
- Stride: ํํฐ๋ฅผ ์์ธ ๋ ๊ฑด๋๋ฐ๋ ๋งํผ์ ๋ํ๋
- Padding: ๊ฐ์ ๋ง๋ฐ์ด์ฃผ๋ ๊ฒ -> ์ด๋ฏธ์ง์ ๊ฐ์ฅ์๋ฆฌ๋ ๊ฐ์ ธ๊ฐ๊ธฐ ์ํจ.
- ์์) ๋ค์ ๊ทธ๋ฆผ์์ Parameter ์?
-> 3X3X128 ์ปค๋๋ก convolutionํ๊ณ ์ฐ์ฐ ๊ฒฐ๊ณผ์ channel์๊ฐ 64์ด๋ค.
-> ๋ฐ๋ผ์, 3 X 3 X 128 X 64 = 73,728๊ฐ์ ํ๋ผ๋ฏธํฐ๊ฐ ์๋ค.
- 1 X 1 convolution: Dimension reduction(์ฑ๋ ์ ์ค์(ํ๋ผ๋ฏธํฐ ์)), layer๋ฅผ ๊น๊ฒ ์์ผ๋ฉด์ parameter๋ฅผ ๋ง์ด ์ค์(Bottlenect architecture)
๐ Modern Convolutional Neural Networks
๐ฅ AlexNet(2012, Parameter = 60M)
- ILSVRC์์ ์์ํ๊ธฐ ์์ํ๋ฉด์ ์ดํ๋ก DL์ด ์๋ฆฌ์ก์
- ํน์ง: Network๊ฐ 2๊ฐ๋ก ๋๋์ด์ ธ ์์(GPU์ ํ๊ณ๋ก ๋๋์ด ํ์ต)
-> 11 X 11 ํํฐ ์ฌ์ฉ๊ณผ 5๊ฐ์ Conv Layer์ 3๊ฐ์ Dense layer(FC)
- Key idea: ReLU, Data augmetation, Dropout์ ์ฌ์ฉ
-> Local Response Normalization(LRN), Overlapping pooling ์ฌ์ฉ
๐ฅ VGGNet(2014, parameter = 110M)
- 3 X 3 filter ์ฌ์ฉํ๊ณ FC๋ฅผ ์ํด 1 X 1 filter๋ฅผ ์ฌ์ฉํด ํ๋ผ๋ฏธํฐ ์ ์ค์
๐ ์ 3X3์ ์ฌ์ฉํ๋์?
- Receptive field๊ฐ ์ข์ -> 3X3์ 2๊ฐ ์ฌ์ฉํ๋ ๊ฒ์ 5X5 ํ๋ ์ฌ์ฉ๊ณผ ๋์ผ(Parameter ์๊ฐ ์์)
- ์ดํ๋ก ํํฐ์ ํฌ๊ธฐ๊ฐ 7์ ์ ๋์ด๊ฐ์ง ์์
๐ฅ GoogLeNet(2015, parameter = 4M)
- 22 Layers๋ฅผ ๊ฐ์ง๊ณ ์๊ณ NiN(Network in Network)๋ฅผ ํ์ฉ(Inception block)
- Inception block: ํ๋์ Input์ ๋ํด Receptive field๊ฐ ์ฌ๋ฌ๊ฐ๋ก ๋๋ ์ง๊ณ ๊ทธ๊ฒ์ concatenationํ๊ธฐ์ ์ข์ ์ฑ๋ฅ
-> 1X1 filter๊ฐ ์กด์ฌํด์ Parameter์ ์๊ฐ ์ค์ด๋ฌ
๐ ์ 1X1์ ์ฌ์ฉํ๋ฉด Parameter์ ์๊ฐ ์ค์ด๋๋์?
- ๋ค๋ฅธ ํํฐ๋ฅผ ํต๊ณผ์ํค๊ธฐ ์ ์ 1X1 filter๋ก ์ฑ๋์๋ฅผ ์ค์ฌ ์ค ์ ์๊ณ ์ด๋ก ์ธํ parameter๊ฐ ์ฝ 30%๋ก ๊ฐ์
๐ฅ ResNet(2015)
- Deeper NN์ผ์๋ก ํ์ต์ด ์ด๋ ค์(Not Overfitting) -> ์ธต์ด ์์ผ์๋ก ํ์ต์ด ์์๋๊ณ ์คํ๋ ค ์ฑ๋ฅ์ด ๋จ์ด์ง
=> ๊ทธ๋ ๋ค๋ฉด Skip connection์ ์ถ๊ฐํด๋ณด์! -> ํ์ต์ ๋ ์ ์ํด
- Batch Norm์ Activation Function ์์ ์ฌ์ฉ๋๋ ๊ฒ์ด ํน์ง
- Bottlenect architecture์ ์ฌ์ฉํจ. -> ๊ฐ์๋ก ์ฑ๋ฅ์ด ๋์์ง๊ณ , parameter ์๋ ์์์ง
๐ฅ DenseNet
- ResNet์ด ๋ํด์ฃผ๋ ์ฐ์ฐ์ ํ๋ค๋ฉด, DenseNet์ Concatenation์ ํด์ค
-> ์ด๋ ๊ฒ ๋๋ฉด Channel์๊ฐ ๊ธฐํ๊ธ์์ ์ผ๋ก ๋์ด๋จ(Parameter์๋ ๊ฐ์ด ๋์ด๋จ)
=> ๊ทธ๋ผ, ์ค๊ฐ์ ํ๋ฒ์ฉ Channel์๋ฅผ ์ค์ฌ์ฃผ์!
- Dense Block + Transition Block์ ํฉ์นจ
๐ Computer Vision Apllications(Semantic Segmentation and Detection)
๐ฅ Semantic Segmentation
- ์ด๋ค ์ด๋ฏธ์ง๊ฐ ์์๋ ํฝ์ ๋ง๋ค ๋ถ๋ฅ๋ฅผ ํ๋ ๊ฒ(ex. ์์จ ์ฃผํ์ ์ฌ์ฉ ๊ฐ๋ฅ)
- Dense layer๋ฅผ ์์ ๊ณ Fully Convolutional Network๋ง๋ฌ -> parameter์์ผ๋ก๋ ์์ ํ ๋๊ฐ์
** ๊ทธ๋ ๋ค๋ฉด ์ ์ด๋ ๊ฒ ํ๋ ๊ฑด๊ฐ์?
-> ๋ถ๋ฅ๋ง ๊ฐ๋ฅํ๋ ๋ชจ๋ธ์ด segmentation์ด๋ heatmap์ด ๋ง๋ค์ด์ง ์ ์๋ ๊ฐ๋ฅ์ฑ์ด ์๊น
๐ฅ R-CNN
- region proposals -> compute feature -> Classification(SVM)
-> ์ด๋ฏธ์ง์์ ๋ฝ์ poroposals๋ฅผ ์ ๋ถ CNN์ ๋ฃ์ด ๊ณ์ฐํด์ผํจ(์๊ฐ ↑)
๐ฅ SPPNet
- ์ด๋ฏธ์ง ์์์ ๋ฝ์ Bounding Box์ tensor๋ง ๋ค๊ณ ์ CNN์์ ํ๋ฒ๋ง ๋๋ฆผ
๐ฅ Fast R-CNN
- SPP์ ๊ฑฐ์ ๋์ผํ ์๋ ๋ฐฉ๋ฒ์ ๊ฐ์ง๋, ๋ค๋จ์ NN์ ์ฌ์ฉํด ์๊ฐ์ ๋์ด์ฌ๋ฆผ
๐ฅ Faster R-CNN
- Region Proposal๋ ํ์ต์ด ๊ฐ๋ฅํ๊ฒ ๋ง๋ฌ(RPN)
๐ฅ YOLO(You Only Look Once)
- Extremely fast Object detection algorithm
- ์ด๋ฏธ์ง๋ฅผ ๋ฑ ์ฐ์ด์ ํ์ง(Region proposal์ step์ด ์์ด ๋น ๋ฆ)
- S x S x (B*5 + C)
'์ธ๊ณต์ง๋ฅ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Day 15] DL Basic - Generative Model โ & โ ก (0) | 2021.02.06 |
---|---|
[Day 14] Math for AI - RNN (0) | 2021.02.04 |
[Day 12] Math for AI - Convolution (0) | 2021.02.02 |
[Day 12] DL Basic (0) | 2021.02.02 |
[Day 11] DL Basic (0) | 2021.02.02 |