일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 딥러닝
- cs
- Python
- nerf
- pytorch
- web
- 머신러닝
- Meta Learning
- algorithm
- ML
- FineGrained
- 3d
- Torch
- Vision
- FGVC
- Depth estimation
- REACT
- Front
- PRML
- GAN
- clean code
- classification
- 알고리즘
- CV
- 자료구조
- SSL
- dl
- nlp
- computervision
- math
- Today
- Total
KalelPark's LAB
[논문 리뷰] LeNet [1998] 본문
GitHub를 참고하시면, CODE 및 다양한 논문 리뷰가 있습니다! 하단 링크를 참고하시기 바랍니다.
(+ Star 및 Follow는 사랑입니다..!)
https://github.com/kalelpark/AI_PAPER
Introduction
본 논문의 주된 내용은, hand-designed hueristics에 의존하기보다는, automatic Learning을 사용하는 것이 pattern recognition에 효과적이라는 것이다.
PREVIOUS PROBLEM
1. Hand-designed feature extractor
hand-designed feature extractor는 입력으로부터 관련있는 정보만 수집하고, 무관한 정보를 제거합니다. 이는 사람이 설계한 feature extractor로 추출한 정보만으로 분류기로 전달되므로, limited learning만이 될 수 밖에서 없습니다. 그러므로, feature extractor된 그 자체로 학습해야 합니다.
2. Using Many Parameters
하나의 이미지는 몇 백개의 변수(pixel)을 포함하고 있습니다. 또한 fully connected multi layer의 첫 번째 layer에 이미 몇 만개의 가중치를 가지고 있습니다. 이러한 parameters는 Memory의 저장공간을 많이 필요하게 합니다.
3. Ignore Input topology
이미지는 2D 구조(if not using channel)를 가지고 있으므로, 인접한 변수(pixel)들은 공간적으로 매우 큰 상관관계를 가지고 있습니 다. 하지만, fully-connected-multi-layer는 인접한 변수들에 대하여 공간적인 정보를 얻지 못하는 문제가 있습니다.
Learning From Data
Automatic ML에는 여러가지 approaches가 존재하지만, most succesful는 gradient-based-learning이다.
* Input과 parameter를 통하여, class별 점수를 산출하고, test loss와 train loss의 차이를 감소시켜야함
Gradient-Based Learning
parameter의 관점에서 식을 최소화하는 것이 CS에서 근본적으로 발생하는 문제이다. Gradient-Based Learning은 일반적으로, 미분값을 최소화하는 것을 더욱 쉽게합니다. A popular minimization procedure is the stochastic gradient algorithm이다. 이것은 noisy parameter vector을 사용함으로서, 업데이트 됩니다.
확률적 경사 하강법(Stochastic Gradient Descent)는 일반적인(Gradient Descent)보다 더욱 학습속도가 빠르다.
LeNet-5 Architecture
Layer C1
5x5 크기의 kernel 6개와 stride=1을 지닌 convolutional layer이다.
Layer S2
2x2 크기의 kernel 6개와 stride = 2를 지닌 subsampling layer이다.
Layer C3
5x5 크기의 kernel 16개와 stride = 1을 지닌 Convolution layer이다.
C3의 feature map과 연결된 S2의 feature map을 보여줍니다.
Layer S4
2x2 크기의 kernel 16개와 stride = 2를 지닌 subsampling layer이다.
Layer C5
5x5 크기의 kernel 120개와 stride = 1을 지닌 convolutional layer이다.
Layer F6
입력 120개에 대한, 출력 84개를 합니다.
Layer F7
입력 84개에 대한 출력, 즉 Output Layer 10개를 진행합니다.
GitHub를 참고하시면, CODE 및 다양한 논문 리뷰가 있습니다! 하단 링크를 참고하시기 바랍니다.
(+ Star 및 Follow는 사랑입니다..!)