본문 바로가기
Research/Machine Learning

Weight Decay, Regularization, Overfitting, Validation set, Drop out, ReLU

by IMCOMKING 2014. 8. 4.

Overftting : 뉴럴 네트워크를 학습하다보면, 오버피팅이 쉽게 일어난다.

오버피팅은 training set을 너무 많이 학습해서, training set에대한 error는 매우 줄어들지만, 문제에대한 일반성이 떨어져서 test set 또는 validation set(오버피팅 여부를 확인하기위해 error를 측정하기위한 데이터 셋으로, test set도 아니고 training set도 아닌 데이터)에대한 error가 증가하는 것을 의미한다.


Regularization : 이러한 현상은 weight가 처음에는 매우 작게 세팅되어 있다가, 점점 커지는 것과 비례해서 오버피팅이 일어나는 것으로 해석된다.

따라서 이것을 막기위해 weight decay(=regularization) 을 사용한다.

이것은 Error에대한 정의를 수정해서, W의 제곱만큼을 다시 빼줌으로써 weight가 너무 빠르게 상승하는 것을 방지한다.

weight decay를 쓰면 test set 에대한 성능향상이 많이 일어난다고 한다.
(물론 validation set 을 따로 분리하면, 학습할 training set이 그만큼 줄어드는 것이지만, 이는 학습을 언제 끝낼 것인가를 결정하게 해주어 결과적으로 test set에 대한 generalization이 좋아지는 효과를 낸다.)


validation set을 통해 error가 최소인 지점을 찾을때 주의할 점은, 항상 U자 형태의 그래프로 error가 나타나지 않는 다는 것이다. W자 형태로 error가 변하는 경우등이 있으니 조심해서 결정해야 한다.


또한 validation set 이 어떤 것이냐에 따라, error 변화의 양상이다를 수 있다.

그렇기 때문에 k-cross-validation 을 써서, K등분한 셋 중 1개씩을 validation 으로 바꿔가면서 error의 평균 변화양상을 측정한다.

그리고 나서 test set의 error가 최소가 되는 최적 iteration 을 찾고, 그때는 validation set 없이 전부 training set 으로 학습한다.


Drop out : 현 시점에서 가장 강력한 Regularization 기법의 하나이다. Deep Neural Network의 학습 단계에서(Test에서는 아님) 각각의 Hidden Layer에서 랜덤하게 몇개의 Neuron 들만(보통 50%) 사용하여 학습하는 것이다. 이렇게 할 경우 매우 다양한 장점이 있다.

매 학습시 마다 랜덤하게 50%의 Neuron들만 사용하여 학습 할 경우, nC2 가지 만큼의 조합이 탄생하게 된다. 따라서 하나의 거대한 DNN에 여러개의 작은 뉴럴 넷이 앙상블되어지는(합쳐진) 효과가 있다.

앙상블을 할 경우 일반적으로 Overftting이 크게 줄어든다고 알려져 있다.(하나의 Classifier에 의해서만 결정되지 않고 여러개의 Classifier가 같이 결정하기 때문에 편견(Bias)가 줄어든다.)

또한 Drop out을 사용 할 경우 비슷한 Weight를 갖는 뉴런들이 줄어들게 되어, 중복된 판단을 하는 뉴런 들이 줄어들게 되어 각 뉴런을 100%(실제론 아니지만) 활용할 수 있게 된다고 한다.


ReLU(Rectified Linear Unit) : 이 또한 Sigmoid를 대신하는 현 시점에서 가장 강력한 Activation Function 이다. 아래 그래프처럼 매우 간단한 두개의 직선 (y=x 과 y=ax)으로 이루어진 ReLU는 간단한 y=max(0,x) 함수로 정의 된다. 이것이 강력한 이유는 우선 Gradient Descent를 하기위해 합성 함수미분을 하게되고, 그 결과 Activation Function을 미분해서 곱해야 하는데 기존의 Sigmoid는 기울기가 최대 1/4이기 때문에 Gradient Descent를 여러 Layer로 해나갈 때 마다 Error가 (1/4)^2 씩 소멸되는(Vanish) 문제가 있다.

그러나 ReLU의 경우 기울기가 0 or 1로 학습이 되는 경우는 100% Error가 전파되어 이러한 문제가 없다.
또한 Activation 값이 sigmoid 처럼 [0,1]로 제한되는 것이 아니고 무제한이기 때문에 좀 더 확실한 표현력을 가진다고 볼 수 있다. 그 결과 Regularization 도 강력하고 Representation 도 강력한 효과를 지니게 된다.

'Research > Machine Learning' 카테고리의 다른 글

Generative Model, Discriminant Model  (0) 2014.08.12
테일러 급수, 푸리에 급수  (2) 2014.08.10
Deep Belief Network  (0) 2014.08.01
RBM, Contrastive Divergence  (4) 2014.07.23
MCMC, Metropolis-Hastings, Gibbs Sampling  (2) 2014.07.22

댓글