La page de Scikit Learn sur la sélection de modèles mentionne l'utilisation de la validation croisée imbriquée:
>>> clf = GridSearchCV(estimator=svc, param_grid=dict(gamma=gammas), ... n_jobs=-1) >>> cross_validation.cross_val_score(clf, X_digits, y_digits)
Deux boucles de validation croisée sont effectuées en parallèle: l'une par l'estimateur GridSearchCV pour définir le gamma et l'autre par cross_val_score pour mesurer les performances de prédiction de l'estimateur. Les scores résultants sont des estimations non biaisées du score de prédiction sur les nouvelles données.
D'après ce que je comprends, clf.fit
utilisera la validation croisée en mode natif pour déterminer le meilleur gamma. Dans ce cas, pourquoi aurions-nous besoin d'utiliser un cv imbriqué comme indiqué ci-dessus? La note mentionne que le cv imbriqué produit des "estimations non biaisées" du score de prédiction. N'est-ce pas aussi le cas avec clf.fit
?
De plus, je n'ai pas pu obtenir les meilleures estimations de la clf à partir de la cross_validation.cross_val_score(clf, X_digits, y_digits)
procédure. Pourriez-vous nous dire comment cela peut être fait?