모형 검증 소개

Python에서의 모델 검증

Kasey Jones

Data Scientist

모형 검증이란?

모형 검증은 다음을 포함합니다:

  • 새 데이터에서도 기대대로 성능을 내는지 확인
  • 홀드아웃 데이터셋으로 성능 테스트
  • 최적의 모형, 하이퍼파라미터, 정확도 지표 선택
  • 주어진 데이터에서 최상의 정확도 달성
Python에서의 모델 검증

scikit-learn 모델링 복습

기본 모델링 단계:

model = RandomForestRegressor(n_estimators=500, random_state=1111)

model.fit(X=X_train, y=y_train)
RandomForestRegressor(bootstrap=True, criterion='mse', max_depth=None,
           max_features='auto', max_leaf_nodes=None,
           min_impurity_decrease=0.0, min_impurity_split=None,
           min_samples_leaf=1, min_samples_split=2,
           min_weight_fraction_leaf=0.0, n_estimators=500, n_jobs=1,
           oob_score=False, random_state=1111, verbose=0, warm_start=False)
Python에서의 모델 검증

모델링 복습 (계속)

predictions = model.predict(X_test)

print("{0:.2f}".format(mae(y_true=y_test, y_pred=predictions)))
10.84

평균 절대 오차(Mean Absolute Error) 공식

$$ \frac{\sum_{i=1}^{n} |y_i - \hat{y}_i|}{n} $$

Python에서의 모델 검증

복습 선행 지식

Python에서의 모델 검증

Fivethirtyeight에는 여러 데이터셋이 있으며, 그중에는 핼러윈 사탕 파워 랭킹 데이터셋이 있습니다. 각 사탕에는 0~100%의 일대일 승률이 있습니다.

Python에서의 모델 검증

본 데이터 vs. 미본 데이터

학습 데이터 = 본 데이터

model = RandomForestRegressor(n_estimators=500, random_state=1111)
model.fit(X_train, y_train)
train_predictions = model.predict(X_train)

테스트 데이터 = 보지 않은 데이터

model = RandomForestRegressor(n_estimators=500, random_state=1111)
model.fit(X_train, y_train)
test_predictions = model.predict(X_test)
Python에서의 모델 검증

시작합시다!

Python에서의 모델 검증

Preparing Video For Download...