Regularizing your Neural Network
Regularization
l2 norm(vector)의 합이 Frobenius norm(matrix)이 된다.
Why Regularization Reduces Overfitting?
regularization parameter lambda가 크다고 가정하면 weight는 0에 가까울 것이다.
따라서, 1. 몇몇 node들이 사라지며 model의 크기가 줄어든다고 볼 수 있을 것이며, 2. activation function이 non-linearity를 제대로 model에 부여할 수 없다. (activation function이 없어지는 효과가 나타나 이것도 model의 크기가 줄어든다고 볼 수 있다.)
overfitting이 불가능할 정도로 model이 작아지면 overfitting을 방지할 수 있다!
Dropout Regularization
확률적으로 network 안의 몇몇 노드들을 제거하여 학습을 시키는 방법이다.
Understanding Dropout
한 feature에 결과를 맡기기보다 (한 weight 몰빵), dropout을 이용하여 weight를 분산시킨다.
implementation을 한 후 iteration마다 cost가 낮아지는지를 정상적으로 확인하기 어렵기 때문에 dropout 없이 돌린 다음(dropout probability를 0으로) cost가 낮아지는지를 확인한 후 dropout을 추가한다.
Other Regularization
Data augmentation - 기존 data를 이용하여 새 data를 만들어 data를 부풀리는 것. (ex. 고양이 사진 데이터가 있다면 사진의 좌우를 바꾼다거나 확대, 축소시켜서 data를 생성)
Early stopping - Overfitting을 막기 위해 이른 시기에 training을 중단하는 것, mid size인 w를 얻을 수 있다.
Optimize cost function - Adam optimizer, momentum, ...
'Google Machine Learning Bootcamp 2022 > Improving Deep Neural Networks' 카테고리의 다른 글
3. Hyperparameter Tuning, Batch Normalization and Programming Frameworks (0) | 2022.07.15 |
---|---|
2. Optimization Algorithms (0) | 2022.07.14 |
1. Practical Aspects of Deep Learning #3 (0) | 2022.07.10 |
1. Practical Aspects of Deep Learning #1 (0) | 2022.07.05 |
댓글