728x90
1. Gradient Descent
2. Important concepts in optimization
1) Generalization
- iteration이 늘어날수록 training error는 감소하지만 그것이 최적값이라는 보장은 없음
- Gerneralization Gap = test error(학습에 사용하지 않은 데이터에 대한 error) - training error(훈련시키는 과정에서 발생하는 error)
- Gerneralization performance 가 높다 = gerneralization gap이 적음
2) Underfitting vs Overfitting
- overfitting : training data에 대해서는 잘 동작하지만, test data에 대해서는 잘 동작 X
- underfitting : 훈련을 너무 조금 시켜서, training data도 잘 못 맞추는 경우
3) Cross - validation
- training data를 k개로 나누어서, 그 중 k-1개를 training data 나머지 1개를 validation data 처리
- parameter : 최적해에서 찾고 싶은 값
- hyperparameter : 내가 정하는 값
- test data는 학습의 어떤 방법으로든 사용되면 안됨 : 학습에는 무조건 training data & validation data만 사용
4) Bias & Variance
- Variance : 비슷한 input들을 넣었을 때, output이 얼마나 일관적으로 나오는지
- Bias : "평균적으로" 봤을 때 output들이 true target에 접근해 있는정도
- Bias and Variance tradeoff(상충) : bias를 줄이면 variance가 올라가고, bias를 줄이면 variance가 내려갈 확률이 높음
-> Bias와 Variance를 둘 다 동시에 줄이기 힘들다
5) Bootstrapping
- 하나의 입력에 대해서 각각의 모델들이 예측하는 값들이 얼마나 일치하는지 확인 -> 전체적인 모델의 uncertainty를 확인
- 학습 데이터가 고정되어 있을 때, 그 안에서 subsampling을 통해 여러 training data를 만들고, 이를 통해 여러 모델을 생성
- Single Classifier : 데이터가 있을 때 하나의 모델을 만드는 것
- Bagging : 모델 여러 개를 만들어서 각각의 모델을 독립적으로 bootstrapping으로 돌리기
- Boosting : 모델 여러 개를 만들어서 여러 개의 모델(weak learner)가 하나의 모델(strong learner)이 결과론적으로 나오게 됨
728x90