>>> from sklearn.model_selection import cross_validate
>>> scores = cross_validate(estimator=pipe_lr,
... X=X_train,
... y=y_train,
... scoring=['accuracy'],
... cv=10,
... n_jobs=-1)
>>> print('CV 정확도 점수: %s' % scores['test_accuracy'])
CV 정확도 점수: [0.93478261 0.93478261 0.95652174
0.95652174 0.93478261 0.95555556
0.97777778 0.93333333 0.95555556
0.95555556]
>>> print('CV 정확도: %.3f +/- %.3f' % (np.mean(scores['test_accuracy']),
... np.std(scores['test_accuracy'])))
CV 정확도: 0.950 +/- 0.014
cross_val_predict 함수는 cross_val_score와 비슷한 인터페이스를 제공하지만 훈련 데이터셋의 각 샘플이 테스트 폴드가 되었을 때 만들어진 예측을 반환합니다. 따라서 cross_val_predict 함수의 결과를 사용하여 모델의 성능(예를 들어 정확도)을 계산하면 cross_val_score 함수의 결과와 다르며 바람직한 일반화 성능 추정이 아닙니다. cross_val_predict 함수는 훈련 데이터셋에 대한 예측 결과를 시각화하거나 7장에서 소개하는 스태킹(Stacking) 앙상블(Ensemble) 방법처럼 다른 모델에 주입할 훈련 데이터를 만들기 위해 사용할 수 있습니다.