[Convolutional Neural Networks and Image Classification] Part 3
๐ง๐ป๐ป์ฉ์ด ์ ๋ฆฌ
Convolutional Neural Networks
fully-connected layer
fully-connected neural network
activation map
Hyperparameters
VGGNet
ResNet
Convolutional Neural Networks
- fully-connected layer
fully-connected neural network - Computer Vision (ConvNets)
- 2012๋ AlexNet๋ถํฐ ์ฑ๋ฅ์ด ๊ธ๊ฒฉํ ์ข์์ง
- 2015๋ ์ฌ๋๋ณด๋ค ๋ ์ธ์์ ์ ํ๊ฒ ๋์์ต๋๋ค.
์ฌ๋ฌ๋ถ์ ๊ณ ์์ด์ ๊ฐ์์ง๋ฅผ ์ ๊ตฌ๋ถํ ์ ์๋์?
๊ณ ์์ด์ ๊ฐ์์ง๋ฅผ ๊ตฌ๋ถํ๊ธฐ ์ํด์๋
Computer Vision ๋ถ์ผ์์ ๋ง์ด ์ฐ์ด๋ CNN, ์ฆ Convolutional Neural Network๊ฐ ๊ฐ์ฅ default๋ก ์ฐ์ ๋๋ค.
๊ทธ ๊ณผ์ ์๋ pixel์ ๊ฐ์ ์ค์ฐจ ๋ฒ์์์ ํ๋ํ๋ ๋ค ๋น๊ตํ๋ ๋ฐฉ๋ฒ์ด ์ฌ์ฉ๋ฉ๋๋ค.
์ฆ, Trying Every Possible Match๊ฐ ๊ทธ๊ฒ์ ๋๋ค.
๊ทธ๋ฆฌ๊ณ , ๋ชจ๋ ๊ฐ๋ค์ ์๋ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด ๋ํ๋ด์ด ์ค์ฐจ๋ฅผ ๊ณ์ฐํ๋ฉฐ activation map ํน์ ํ์ฑํ ์ง๋ ๋ผ๊ณ ๋ถ๋ฆ ๋๋ค.
(ํ ์ด๋ธ์ ์จ์๋ ์ซ์๋ฅผ ์ธ๊ธํ ๊ฒ์ ๋๋ค.)
์ ํน์ ํ์ฑํ ์ง๋๋ ํน์ ํ convolution filter ์ฃผ์ด์ง ์ ๋ ฅ ์ด๋ฏธ์ง์ ๊ฐ๋ฅํ ๋ชจ๋ ์์น์ Overlab์ ์์ผ ๋งค์นญ๋๋ ์ ๋๋ฅผ ์ป์์ ๋, ๋์ค๋ ๊ฒฐ๊ณผ ์ด๋ฏธ์ง ์ ๋๋ค.
์ด ์ฐ์ฐ์ Convolution ์ฐ์ฐ ํน์ Operation์ด๋ผ๊ณ ์ ์ํด ๋ณผ ์ ์์ต๋๋ค.
๊ฒฐ๊ตญ ์ด Activation Map์ ์ป๊ธฐ ์ํด์ ์๋์ ๊ฐ์ ๊ณผ์ ์ด ํ์ํฉ๋๋ค.
- Convolution filter๋ฅผ ์ด๋ฏธ์ง ์์ ๊ฐ๊ฐ์ ํน์ ์์น์ ์์น ์์ผ์ ๊ทธ์ ํด๋นํ๋ ์ด๋ฏธ์ง ํจ์น์ align ์์ผฐ์ ๋, pixel ๊ฐ๋ค์ ์๋ก ๊ณฑํฉ๋๋ค.
- ๊ทธ๊ฒ์ ๋ค ๋ํฉ๋๋ค.
- ๊ทธ๋ฆฌ๊ณ total pixel ๊ฐ์๋ก ๋๋์ด ์ค๋๋ค. (์ ํ)
Convolution filter
- Convolution layer์์๋ ์ฌ๋ฌ ๊ฐ์ ํน์ ํ ๊ณ ์ ํ ํจํด์ ๊ฐ์ง๋ ๋ค์์ convolution filter๊ฐ ์กด์ฌํฉ๋๋ค.
- ์ด convolution filter ํน์ ํจ์น๋ฅผ ๊ฐ๊ฐ ์ฃผ์ด์ง ์ ๋ ฅ ์ด๋ฏธ์ง์ ์ ์ฉํ์ ๋ filter ๋ณ๋ก activation map์ด output์ผ๋ก ๋์ต๋๋ค.
- ํ๋์ activation map์ ์ด๋ฏธ์ง๋ก ๋ณธ๋ค๋ฉด, ์ฃผ์ด์ง ์ด๋ฏธ์ง ํ ์ฅ์ ๊ฐ์ง๊ณ filter ๊ฐ์๋งํผ์ ์ด๋ฏธ์ง๋ฅผ ๋ง๋ค์ด๋ ๋๋ค.
๊ทธ๋์, ์ด๋ฌํ Convolution layer๋ฅผ ์ฌ๋ฌ ๊ณ์ธต์ผ๋ก ์์์ ๋, deep neural network๋ก์์ convolution neural nework๋ฅผ ๊ตฌ์ฑํ์ ๋, ํ convolution layer ๋ด์ ์ฃผ์ด์ง๋ ์ ๋ ฅ์ด ํ ์ฅ์ด ์๋ ์ฌ๋ฌ ์ฅ์ธ ์ ๋ ฅ์ผ ๊ฒฝ์ฐ๋ ์๊ฐํด ๋ณผ ์ ์์ต๋๋ค.
ํ ์ฅ์ ์ด๋ฏธ์ง๋ฅผ ์ฑ๋์ด๋ผ๊ณ ๋ถ๋ฆ ๋๋ค.
๊ฐ convolution filter๊ฐ ํ ์นธ์ฉ ์ด๋ํ๋ฉด์ scalar ๊ฐ์ ๋ฝ๊ฒ ๋ฉ๋๋ค.
์ด๋ก์จ activation map์ด ๋์ค๊ฒ ๋ฉ๋๋ค.
Pooling Layer
- ํน์ ์ด๋ฏธ์ง ํจ์น ๋ด์์ ๊ฐ์ฅ ์ต๋๊ฐ์ ์ ์ ํฉ๋๋ค.
- ์ด๋ฌํ ๊ณผ์ ์ max pooling์ด๋ผ๊ณ ํฉ๋๋ค.
- ํน์ ์ด๋ฏธ์ง ํจ์น๋ฅผ ์ฎ๊ฒจ๊ฐ๋ฉฐ output layer๋ฅผ ์ป๊ฒ ๋ฉ๋๋ค.
- ์ต๋๊ฐ๋ง ๋ฝ๊ธฐ ๋๋ฌธ์, ๊ฐ๋ก ์ธ๋ก์ ์ฌ์ด์ฆ๋ฅผ ๋ฐ์ผ๋ก ์ค์ด๊ฒ ๋๋ ํจ๊ณผ๋ฅผ ์ป๊ฒ ๋ฉ๋๋ค.
- ์ฑ๋๋ณ๋ก ๋ฐ๋ก ์ด๋ฃจ์ด์ง๋๋ค.
ReLU Layer(ReLUs, Rectified Linear Units)
- ํจ์๋ฅผ ๋ณด๋ค ์ ์ฐํ๊ฒ ๋ค์ํ ํจํด๋ค์ ํํํ๊ฒ ๋ง๋ค์ด์ค๋๋ค.
- ์์์๋ ๊ฐ์ ๊ทธ๋๋ก, ์์ ๊ฐ์ 0์ผ๋ก clipping ํด์ฃผ๊ฒ ๋ฉ๋๋ค.
- ์ฆ, ๋ณํ๋ Output activation map์ ์ฃผ๊ฒ ๋ฉ๋๋ค.
Convolutional Neural Networks ๊ณผ์
- ๊ฐ์คํฉ์ ๊ตฌํ๊ฒ ๋๋ convolutional operation์ ๋จผ์ ์ ์ฉํฉ๋๋ค.
- ๊ทธ๋ฆฌ๊ณ ๋ฐ๋ก ReLU Layer ๊ณผ์ ์ ๊ฑฐ์นฉ๋๋ค.
- ๊ทธ๋ฆฌ๊ณ , 1,2 ๊ณผ์ ์ ๋ช 1๋ฒ stacking ํ ํ์ ์ด ์ด๋ฏธ์ง๋ฅผ ์ข ๋ ์ถ์ฝ๋ ํํ๋ก ๋ฐ๊ฟ์ฃผ๋ max pooling layer ๊ณผ์ ์ด ๋์ค๊ฒ ๋ฉ๋๋ค.
- 1,2,3์ ๊ณผ์ ์ ๋ฐ๋ณตํ๋ ํํ๋ก ์ด๋ฃจ์ด์ง๋๋ค.
ํน์ Convolution layer์์ Max pooling์ด ์ฌ๋ฌ ๋ฒ์ ๊ฑธ์ณ์ ์์ ํ,
์์ ์ด๋ฏธ์ง size๋ก ๋ณํ๋ activation layer๋ฅผ filter์ ๊ฐ์, ์ฆ channel์ ๊ฐ์ ๋งํผ์ output activation map์ ๋ง๋ค์์ ๋,
ํน์ Layer์์ ํ ์ค์ vector๋ก ํผ๊ฒ ๋ฉ๋๋ค.
์ด vector๋ฅผ ์ ๋ ฅ์ผ๋ก ์ฃผ์ด์ Fully connected layer๋ฅผ ๊ตฌ์ฑํ๊ฒ ๋ฉ๋๋ค.
๋ชฉ์ ์ด๋ฏธ์ง์ ๋ํ output node๋ฅผ ๋ง๋ค๊ฒ ๋๊ณ , class์ ๋ํ score๋ฅผ ๊ฐ๊ฐ ๋ง๋ค์ด ์ค ์ ์๊ฒ ๋ฉ๋๋ค.
score ๊ฐ์ ๋ํด์ ์ต์ข ์ด๋ฏธ์ง๋ฅผ ๋ถ๋ฅํ๊ฒ ๋ฉ๋๋ค.
์ต๋ํ score์ ๊ฐ์ด ์ ๋ต๊ฐ์ด ์ต๋ํ 1, ๋๋จธ์ง๋ ์ต๋ํ 0์ด ๋๋๋ก ํฉ๋๋ค.
Hyperparameters
- Convolution
- Number of filters
- Size of filters
- Pooling
- Window size
- Window stride // window ํ ๋ฒ ์ฎ๊ฒผ์ ๋ ๋ช Pixel ๋งํผ ์์ง์ด๋๋.
- Fully Connected
- Number of layers
- Number of neurons
Various CNN Architectures
- AlexNet
- VGGNet
- CNN filter๋ฅผ 3 by 3 ์ผ๋ก๋ง ํฉ๋๋ค.
- GoogLeNet
- ResNet (Residual Network)
- layer ๋ค์ ์ฌ๋ฌ ๊ฐ ์์์ skip ํ ์ ์๊ฒ ํฉ๋๋ค.
'Artificial Intelligence > Deep Learning' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Machine Learning] ์ ๊ฒฝ๋ง ๊ธฐ์ด 2 (2) | 2023.02.06 |
---|---|
[XAI] ์ค๋ช ๊ฐ๋ฅํ AI (Explainable AI) (0) | 2023.01.26 |
[Training Neural Networks] part 2 (0) | 2023.01.24 |
[Deep Neural Network] part 1 - 2 (0) | 2023.01.22 |
[Deep Neural Network] part 1 - 1 (0) | 2023.01.22 |