목록전체 글 (27)
study
CNN(Convolution Neural Network)은 근래에 시각 인식 인공지능에 자주 사용되는 네트워크 구조입니다. CNN이 자주 사용되는 이유는 무엇보다도 다른 것들보다 좋은 성능을 보이기 때문입니다. 이 글은 CS231n 유튜브 강의 9강에서 다룬 Imagenet classification 대회에서 좋은 성적을 거둔 CNN Architecture에 대해 소개할 것입니다. 각 년도에 해당하는 Imagenet Classifcication 승자의 error rate는 위와 같습니다. 여기서 저희는 AlexNet, GoogLeNet, ResNet, VGG Net에 대해 알아보겠습니다. (2013년에 1위를 차지한 ZFNet은 12년 우승자인 AlexNet의 Hyper Parameter를 조금 수정한 ..
Neural Network의 Weight를 조정하는 과정에서 보통 Gradient Descent(경사하강법)라는 방법을 사용합니다 이는 네트워크에서 내놓는 결과값과 실제 값 사이의 차이를 정의하는 Loss Function(손실함수)의 값을 최소화하기 위해 기울기를 이용하는 것입니다 여기서 Loss Function을 계산할 때 전체 Train-Set을 사용하는 것을 Batch Gradient Descent라고 합니다 그러나 이렇게 계산하면 한번 step을 내딛을 때, 전체 데이터에 대해 Loss Function을 계산해야 하므로 너무 많은 계산량이 필요합니다 이를 방지하기 위해 보통은 Stochastic Gradient Descent(SGD)라는 방법을 사용한다 이 방법에서는 Loss Function을 계..
sigmoid함수는 0과 1 사이로 변환해주어 많이 사용된 활성화 함수입니다 하지만 역전파 과정에서 기울기가 없어지는(기울기 : 0) 문제가 발생합니다 이를 vanishing gradient라고 부릅니다 구체적으로 sigmoid 함수를 사용하였을 때 vanishing gradient 문제가 발생하는지 알아보겠습니다 X의 값이 10인 경우 시그모이드 함수에 넣어주면 1 / (1+e-10) = 0.999의 값이 나오고 이를 역전파 시키기 위해 시그모이드 함수 미분값인 (1-∂(x))∂(x) 수식에 0.999를 넣어주면 됩니다 (1-0.999)(0.999) = 0.0000999가 나오는 것을 확인할 수 있습니다 X의 값이 -10인 경우 시그모이드 함수에 넣어주면 1 / (1+e10) = 0.0000453값이 ..