LeCun, Y., Bottou, L., Bengio, Y., & Haffner, P. (1998). Gradient-based learning applied to document recognition. Proceedings of the IEEE, 86(11), 2278-2324.
This paper addresses that gradient-based, automatic learning can result in better pattern recognition. The two examples are presented: character recognition and document understanding.
LeNet-5는 처음으로 convolutional neural network (CNN)을 제안한 모델이다. 관련하여 필자가 보기 쉽도록 정리하였다. (문법적인 오류가 있을 수 있다.)
Some problems may occur when we use ordinary fully connected feedforward network: many parameters and memory requirement, and limitations in capturing local correlations.
Therefore, convolutional network was devised to capture variability by local receptive fields (local feature), shared weights, and spatial or temporal subsampling.
local receptive fields: local feature을 추출한다. local receptive field을 사용하여 기초적인 feature (ex edge, conner, end-points)를 추출할 수 있다. → shift, distortion이 있어도 feature을 추출할 수 있으며, 그 결과로 feature map이 생성된다. 또한, parameter size도 줄어든다.
shared weights: feature map의 모든 units는 shared weights and bias를 가진다. 따라서, input의 위치에 상관없이 동일한 특징을 추출해낼 수 있다. (shift에 robust) 동일한 weight과 bias를 사용하기 때문에 parameter로 인한 memory 증가도 없으며, parameter이 너무 많아지지 않아 overfitting도 방지할 수 있다.
spatial or temporal subsampling: 각 특징의 정확한 위치는 중요하지 않다. (오히려 이미지마다 위치가 달라 정확도가 감소할 수 있다.) 따라서 subsampling을 통해 해당 feature을 가졌는지만 평가한다. → 위치 정보를 사용하지 않음으로 생기는 손실은 많은 filter의 수를 늘리고 다양한 feature를 추출하여 해결할 수 있다. (이 때, subsampling은 지금의 mean pooling과 동일한 개념이다.)
Subsequently, LeNet-5 was suggested for the pattern recognition task. LeNet-5의 구조는 다음과 같다.
convolutional layer (C1): 5*5 size (stride=1)인 6개의 kernels
(nonoverlapping) subsampling (mean pooling) layer (S2): 2*2 size인 6개의 kernels (strides=2) (then sigmoid function)
convolutional layer (with noncomplete connection from S2) (C3): 5*5 size (stride=1)인 16개 kernels
subsampling layer (S4): 2*2 size인 16개의 kernels (strides=2)
convolutional layer (C5): 5*5 size (stride=1)인 120개 kernels
fully connected layer (FC): tahn as activation function. 출력 유닛은 84개 (to recognize strings of characters taken from ASCII set)
output layer (FC): Euclidean RBF as activation function. 출력 10개. → ASCII 형태로 바꾼 다음 10개의 숫자를 뽑아내고자.
LeNet-5 was shown to have low memory requirements and extract features robustly to noise.
참고자료
[논문 리뷰] LeNet-5 (1998), 파이토치로 구현하기
[논문 요약 3] Gradient-Based Learning Applied to Document Recognition