Dropout - 만약 우리가 운동을 하는데 자기가 더 많이 사용하는 손(오른손잡이 와 같이)으로만 운동을 한다면? - 한쪽 팔뚝만 굵어지는 일이 생기게 된다. - 한쪽 팔뚝만 키우려고 운동하는 사람은 없지 않은가? 따라서 성공한 운동이 되었다고 볼 수 없다. - 마찬가지로 네트워크를 학습하는 과정에서도 한쪽의 weight이 더 큰 경우 - 특정 방향으로 편향되어 네트워크가 진행되는 경향이 생길 수 있다. - 따라서 이와같은 경우를 방지하고자, 특정 unit을 끄고(turn off) 나머지 네트워크 학습을 진행하곤 한다. - 이를 구현하는 방법으로는 각 노드들이 연산에서 (순방향 및 역방향 모두) 제외될 확률을 주는 알고리즘을 통해 - 랜덤하게 특정 노드들을 연산에서 제외시킨다. - 위의 경우 0.2로 ..
Early Stopping - 위의 모델들의 epoch에 따른 training set과 testing set의 모델변화 추이를 봐보자. - 우측으로 갈 수록 training set에 대해 정확하다 못해 너무 지엽적이게 된다. - 우리는 적절한 일반화가 잘 된 모델을 찾는것이 목표이기 때문에 - 맨 우측 모델은 너무 세부적이라 일반화에 실패한 모델이 되어버린다. - 이는 testing set을 적용시켜봤을때 하나도 들어맞는것이 없게 되며 - 마치 training set을 단순 암기 한 모델정도 뿐이다. - 따라서 우리의 목표는 Training Error도 적고, Testing Error도 적은 지점을 찾는것이다. - 모델 복잡도 그래프를 봐보면 특징이 있다. - Testing error의 경우 기울기가 급..