분류 전체보기(327)
-
6. Dropout Regularization
Dropout - L2 norm 정규화랑 비슷한 개념으로 그냥 unit을 비활성화 시키는 정규화 기법 d3.shape : a3.shape과 같은 랜덤 숫자 배정. - 이때 keep_prob과 비교 연산을 수행한다면 결과값은 0또는1로 매핑된다. a3와 element-wise 연산을 통해 일부 unit을 0으로 만들어 dropout을 수행한다. 이후 a3를 다시 keep_prob으로 나누어 Inverted dropout를 수행한다. - 이는 기존 a3에서 일부가 0으로 바뀌게 되면서 기댓값이 줄어들었으므로, propagation 시 전달되는 기댓값은 유지하기 위해 수행한다. Making predictions at test time - test 시에는 당연하게도 dropout을 사용하지 않고 모든 unit을..
2023.09.10 -
5. Why Regularization Reduces Overfitting
적절한 크기의 람다를 통해 hig variance에서 just right으로 분류기를 만들 수 있도록 한다. - 람다가 커지고 몇몇 unit의 영향을 없애는 효과를 가져온다면, 실제로 더 단순한 네트워크를 만드는 효과를 가져오기도 한다. - 이는 과적합 가능성이 낮은 단순한 네트워크로 변환하는 과정을 통해 과적합을 방지할 수 있게 된다. 선형 그래프에서는 과적합이 일어나는 꼬불꼬불한 복잡한 차원의 분류기를 생성할 수 없으므로 과적합을 방지할 수 있다!
2023.09.10 -
4. Regularization
L1 정규화의 경우 w will be sparse. - 이는 모델 압축에 도움이 될 순 있지만 모델 압축이 목적이 아니라면 굳이.. 보통의 경우 L2 정규화를 사용함을 기억하자. Cost function에 대하여 L 개의 layer에 존재하는 W에 대해 정규화를 수행한다고 할 때 - W[l].shape : (n[l], n[l-1]) - 따라서 W[l] ** 2 = sum(sum( w(ij)**2 )) - L2 norm - 이를 Frobenius norm이라고 부른다. 관례이므로 그냥 기억하자. L2 norm이 아니더라. 기존에 learning rate * dW 만큼 update 된데에 비해 더 크게 변하게됨 - 정규화 과정이 없을 때 비해 수식을 전개해보았을 때 (1- a*람다 /m) W[l]이므로 결국..
2023.09.10 -
3. Basic recipe for machine learning
1. check high bias ? - training data performance - and then, more iteration or change to bigger network 2. check high variance ? - dev set performance - more data always work - Regularization or chage to bigger network 1-2를 반복. 딥러닝 시대 이전. "bias vs variance trade off" - 빅데이터 + 딥러닝모델 시대에서는 bias를 크게 해치지 않으면서 variance를 줄일 수 있다!
2023.09.10 -
2. Bias / Variance
underfitting : case 2,3 - high bias overfitting : case 1 - high variance just right : case 4 - low bias, low variance
2023.09.10 -
1. Train / Dev / Test sets
Train / Valid / Test sets. dev : cross-validation set how about ratio? - train / test = 7:3 or train / valid / test = 6:2:2 - but 빅데이터 시대에서는 총 데이터가 1,000,000개 이상일 때 Valid , Test set은 10,000개만 있어도 충분하다. - 거의 98:1:1 **중요 : Mistmatched train/test distribution** - train과 test set의 분포 양상이 다르다면, 학습한게 의미가 없는 결과를 나을 수도 있다. Not having a test set might be okay. (Only dev set)
2023.09.10