На странице Scikit Learn по выбору модели упоминается использование вложенной перекрестной проверки:
>>> clf = GridSearchCV(estimator=svc, param_grid=dict(gamma=gammas), ... n_jobs=-1) >>> cross_validation.cross_val_score(clf, X_digits, y_digits)
Два цикла перекрестной проверки выполняются параллельно: один с помощью оценщика GridSearchCV для установки гаммы, а другой с помощью cross_val_score для измерения эффективности прогнозирования оценщика. Полученные оценки являются объективными оценками прогноза на основе новых данных.
Из того, что я понимаю, clf.fit
будем использовать перекрестную проверку для определения наилучшей гаммы. В таком случае, зачем нам использовать вложенный cv, как указано выше? В примечании упоминается, что вложенный cv производит «непредвзятые оценки» оценки прогноза. Разве это не так с clf.fit
?
Кроме того, я не смог получить лучшие оценки clf из cross_validation.cross_val_score(clf, X_digits, y_digits)
процедуры. Не могли бы вы посоветовать, как это можно сделать?