Cross validation

validation set를 떼어 내어 평가하는 과정을 여러 번 반복합니다. 그다음 이 점수를 평균하여 최종 검증 점수를 얻습니다.

from sklearn.model_selection import cross_validate
scores = cross_validate(dt,train_input, train_target, cv=StratifiedKFold())
print(scores)

cross_validate는 모델, 학습데이터,를 파라미터로 받아서 cross validation을 실행한 뒤 각 validation 정보를 반환

Hyperparameter tuning

model parameter : 머신러닝 모델이 학습하는 파라미터를 모델 파라미터

hyper parameter : 사용자가 지정해야 하는 파라미터

Grid search

from sklearn.model_selection import GridSearchCV
params = {'min_impurity_decrease':[0.0001,0.0002,0.0003,0.0004,0.0005]}
gs = GridSearchCV(DecisionTreeClassifier(random_state=42),params,n_job=-1)
gs.fit(train_input, train_target)
  1. params로 바꿀 파라미터를 정하고 GridSearchCV의 파라미터로 넘겨줌
  2. 학습데이터를 통해 학습을 하고 최적의 모델과 파라미터로 학습한 모델을 생성함