CV 9. Deep Learning - waegari/waegari.github.io GitHub Wiki
์ฑํฐ 9: Deep Learning (๋ฅ๋ฌ๋)
1. ๋ฅ๋ฌ๋, ์ ํ์ํ๊ฐ?
-
์ด๋ฏธ์ง ๋ถ๋ฅ์ ๋์ :
- Viewpoint ๋ณํ(์นด๋ฉ๋ผ ๊ฐ๋/๊ฑฐ๋ฆฌ/์ค์ผ์ผ), ์กฐ๋ช , ๋ณํ, ๊ฐ๋ฆผ(occlusion), ๋ฐฐ๊ฒฝ ๋ณต์ก๋ ๋ฑ
- ๊ธฐ์กด ์ ํต์ ๋ฐฉ์(ํ ํ๋ฆฟ ๋งค์นญ, ํผ์ฒ ๊ธฐ๋ฐ ๋งค์นญ)์ผ๋ก๋ ํ๊ณ
-
๋ฅ๋ฌ๋(Deep Neural Network):
- ๋๊ท๋ชจ ๋ฐ์ดํฐ/๋ณต์กํ ๋ฌธ์ ์์๋ โํน์ง ์ถ์ถ+๋ถ๋ฅโ๊น์ง ์๋ ํ์ต
- ์ธ๊ฐ ์์ค/์ด์ํ๋ ์ธ์ ์ ํ๋ ๋ฌ์ฑ
2. ๋ฅ๋ฌ๋ ์ด์ ์ ์ ๊ทผ๋ฒ
-
ํ ํ๋ฆฟ ๊ธฐ๋ฐ ๋งค์นญ:
- โ์ด ํจํด์ด๋ ์ผ๋ง๋ ๋น์ท?โ โ ํ ํ๋ฆฟ ์ด๋ฏธ์ง์ ํฝ์ ๋ณ ๋น๊ต
-
ํผ์ฒ ๊ธฐ๋ฐ ๋งค์นญ:
- ์์ง/์ฝ๋ ๋ฑ ๊ฐํ ํน์ง ๊ฒ์ถ โ ๋ถ๋ฅ๊ธฐ๋ SVM, KNN ๋ฑ ์ ํต ML ์ฌ์ฉ
-
ํผ์ฒ ๋์คํฌ๋ฆฝํฐ+๋ถ๋ฅ๊ธฐ:
- HOG, LBP, SIFT ๋ฑ ํผ์ฒ ์ถ์ถ ํ ๋ถ๋ฅ
3. ๋ฅ๋ฌ๋ ๊ธฐ๋ณธ ๊ตฌ์กฐ(์ ๊ฒฝ๋ง ๋คํธ์ํฌ)
-
Neural Network:
- ์ ๋ ฅ์ธต(Features) โ ์ฌ๋ฌ ๊ฐ์ ์๋์ธต(Hidden Layers) โ ์ถ๋ ฅ์ธต(Classes)
- ๊ฐ ์ฐ๊ฒฐ๋ง๋ค Weight, Bias
- Activation Function(ReLU, Sigmoid, Softmax ๋ฑ)
- ํ์ต: ์ ๋ต(๋ผ๋ฒจ)๊ณผ ์์ธก๊ฐ์ ์ฐจ์ด(Loss)๋ฅผ ์ญ์ ํ(Backpropagation)๋ก ์ต์ํ
-
Supervised/Unsupervised/Semi-supervised Learning
- ๋ํ์ ๋ฐ์ดํฐ์ : MNIST(์๊ธ์จ), CIFAR, ImageNet ๋ฑ
4. CNN (Convolutional Neural Network) ๊ตฌ์กฐ ๋ฐ ํต์ฌ ์ฐ์ฐ
-
Convolution Layer(ํฉ์ฑ๊ณฑ์ธต):
- ์ ๋ ฅ ์ด๋ฏธ์ง์ ํํฐ(์ปค๋) ์ ์ฉ, ๋ก์ปฌ ํน์ง(Edge, Texture, Object part ๋ฑ) ์ถ์ถ
- Stride, Padding ๊ฐ๋ ์ค์ (Feature Map ํฌ๊ธฐ ์กฐ์ )
-
ReLU(Activation):
- ๋น์ ํ์ฑ ์ถ๊ฐ, ์์๋ 0์ผ๋ก ์ฒ๋ฆฌ
-
Pooling Layer:
- Max/Avg Pooling ๋ฑ, ๊ณต๊ฐ ํฌ๊ธฐ ์ถ์/๋ถ๋ณ์ฑ ๊ฐํ(์์น, ๋ ธ์ด์ฆ ๋ฑ)
-
Fully Connected Layer:
- ๋ง์ง๋ง ๋จ๊ณ์์ ๋ชจ๋ ๋ ธ๋ ์ฐ๊ฒฐ, ํด๋์ค๋ณ ํ๋ฅ ์ถ๋ ฅ(Softmax)
-
Loss Function:
- Cross-Entropy Loss, MSE ๋ฑ
-
ํ์ต:
- Forward โ Loss ๊ณ์ฐ โ Backpropagation์ผ๋ก ํ๋ผ๋ฏธํฐ(W, b) ์ ๋ฐ์ดํธ
5. ์ฃผ์ ๋คํธ์ํฌ ๊ตฌ์กฐ (์ฌ๋ก)
-
LeNet-5:
- ์ด์ฐฝ๊ธฐ CNN, MNIST(์๊ธ์จ) ๋ถ๋ฅ์ ์ฑ๊ณต, Conv-Pool-FC ๊ตฌ์กฐ
-
AlexNet:
- 2012 ILSVRC์์ ๋ํ์ , 8๋ ์ด์ด(5 Conv+3 FC), ReLU/Dropout/๋ฐ์ดํฐ ์ฆ๊ฐ ์ ์ฉ
-
๊ทธ ์ดํ:
- VGGNet, GoogLeNet, ResNet ๋ฑ โ๋ ๊น๊ณ ๋์โ ๊ตฌ์กฐ ๋ฑ์ฅ
- Transfer Learning(์ ์ดํ์ต), Fine-tuning(๋ฏธ์ธ์กฐ์ ) ๋ฑ
6. ๋ฅ๋ฌ๋ ๊ธฐ๋ฐ ์์ ๋ถ์์ ์ค์ ๋ฌธ์
-
์ด๋ฏธ์ง ๋ถ๋ฅ(Classification):
- ํ๋์ ์ด๋ฏธ์ง๋ฅผ โ1๊ฐ ํด๋์คโ๋ก ๊ตฌ๋ถ
-
๊ฐ์ฒด ๊ฒ์ถ(Object Detection):
- ์ฌ๋ฌ ๊ฐ ๊ฐ์ฒด ์์น(์ฌ๊ฐํ) + ์ข ๋ฅ ์์ธก
-
์ธ๊ทธ๋ฉํ ์ด์ (Segmentation):
- ๊ฐ ํฝ์ ๋จ์๋ก ํด๋์ค ์ง์ (์: ์ฌ๋/๋ฐฐ๊ฒฝ)
-
๊ฐ์ฒด ํธ๋ํน(Tracking):
- ์์ ๋ด ๊ฐ์ฒด์ ์์น ์ถ์
7. ๋ฅ๋ฌ๋์ ํ๊ณ/์ค์ ์ ์ฉ์ ๊ณ ๋ ค์ฌํญ
- ๋ฐ์ดํฐ ๋ถ์กฑ/ํธํฅ(Bias), ์ค๋ฒํผํ
- ์ฐ์ฐ๋/๋ฉ๋ชจ๋ฆฌ, ์ค์๊ฐ ์ฒ๋ฆฌ ํ๊ณ
- ์ค๋ช ๊ฐ๋ฅ์ฑ(XAI), ์ค๋ฆฌ/ํ๋ผ์ด๋ฒ์ ๋ฌธ์
- ๊ณผ์ ํฉ ๋ฐฉ์ง๋ฒ: Dropout, Regularization, Data Augmentation ๋ฑ
8. ์ํ์ ์์ฃผ ๋์ค๋ ์ธ๋ถ ํฌ์ธํธ/์์
-
Convolution ์ฐ์ฐ:
$$ y[i, j] = \sum_{m} \sum_{n} x[i+m, j+n] \cdot k[m, n] $$
-
ReLU: $f(x) = \max(0, x)$
-
Pooling: $\max$ ๋๋ $\text{avg}$ ์ฐ์ฐ
-
Backpropagation/Gradient Descent ์๋ฆฌ
-
Fully Connected ๊ณ์ฐ: $y = Wx + b$
-
Softmax:
$$ \text{softmax}(z_i) = \frac{e^{z_i}}{\sum_j e^{z_j}} $$
-
Cross-Entropy Loss:
$$ L = -\sum_{i=1}^{C} y_i \log(\hat{y}_i) $$
( $y_i$: ์ ๋ต, $\hat{y}_i$: ์์ธก๊ฐ )
[์๊ธฐ/๋ฉ๋ชจ์ฉ ํค์๋]
- Deep Learning = โEnd-to-End ํ์ตโ, ๋๊ท๋ชจ ๋ฐ์ดํฐ
- CNN: Convolution, Pooling, ReLU, Fully Connected, Softmax
- LeNet, AlexNet, VGG, ResNet, Transfer Learning
- Backpropagation, Gradient Descent, Cross-Entropy
- Classification, Detection, Segmentation, Tracking
- ์ค๋ฒํผํ , Regularization, Data Augmentation, Explainable AI