AlexNet paper
https://www.cs.toronto.edu/~kriz/imagenet_classification_with_deep_convolutional.pdf
TanH(hyperbolic-tangent)는 x가 -5보다 작거나, 5보다 크면 그래디언트가 0으로 작아지는 단점이 있다.
이에 반해, ReLU(Rectified Linear Unit) x가 양수이기만하면 그래디언트가 항상 1로 일정하다. 따라서 그래디언트가 0이 되는 현상을 피할 수 있고(x가 양수일때), 미분하기도 편리하여 계산복잡성이 낮다. 다만 0을 기준으로 대칭 구조가 아니며, x가 음수이면 그래디언트가 무조건 0이 되는 단점이 있다.
LeNet은 활성화 함수로 hyperbolic-tangent를 활용.
AlexNet은 ReLU를 활성화 홤수로 활용.
ReLU가 gradient saturation을 막는데 많은 도움이 되었지만, 아래와 같은 normalization도 도움이 되었다. 아래 식은 network의 ReLU를 빠져나온 출력들을 대상으로 간은 spatial위치 (x,y)의 인접한 kernel map n개를 모아서 정규화한다. 이는 생물학전 뉴런에서 강한 자극이 주변의 약한 자극을 막는 효과(lateral inhibition)을 모방한 일반화 효과이며, i는 커널 number, k/n/alpha/beta는 hyper parameter 이다.
CNN에서 일반적으로 pooling은 convolution 연산을 통해 얻은 feature-map 영상의 크기를 줄이기 위하여 사용되며, average pooling, max poolin 등이 있다. LeNet에서는 averaged pooling 방식을 사용하였고, AlexNet에서는 max pooling을 사용하였다.
통상적으로 pooling을 할 때 겹치는 부분이 없게 하는것이 대부분이다. 따라서 poolilng window의 크기가 2x2라면, stride(건너뛰기)eh 2를 사용하여 출력 영상의 크기가 가로/세로 각 1/2로 줄어드는 효과를 얻는다. 그러나 AlexNet은 2x2 윈도우 대신 3x3 윈도우를 선택하고, stride를 2로하는 overlapped pooling방식을 사용했다.
04.AlexNet 참고자료
https://blog.naver.com/laonple/220654387455
https://ratsgo.github.io/deep%20learning/2017/04/22/NNtricks/
https://dalpo0814.tistory.com/23
잘 못 작성된 내용이 있다면 댓글 부탁드립니다. 감사합니다.😊