Courbes de validation : Tracer des scores pour évaluer les modèles

Machine LearningMachine LearningBeginner
Pratiquer maintenant

This tutorial is from open-source community. Access the source code

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

En apprentissage automatique, chaque estimateur a ses avantages et ses inconvénients. L'erreur de généralisation d'un estimateur peut être décomposée en biais, variance et bruit. Le biais d'un estimateur est l'erreur moyenne pour différents ensembles d'entraînement, tandis que la variance indique sa sensibilité aux différents ensembles d'entraînement. Le bruit est une propriété des données.

Dans ce laboratoire, nous allons explorer comment utiliser les courbes de validation pour évaluer les performances des modèles d'apprentissage automatique. Les courbes de validation nous permettent de tracer l'influence d'un seul hyperparamètre sur le score d'entraînement et le score de validation, ce qui nous aide à déterminer si le modèle est surappris ou sous-appris pour différentes valeurs d'hyperparamètres.

Conseils sur la VM

Une fois le démarrage de la VM terminé, cliquez dans le coin supérieur gauche pour basculer vers l'onglet Notebook pour accéder à Jupyter Notebook pour la pratique.

Parfois, vous devrez peut-être attendre quelques secondes pour que Jupyter Notebook ait fini de charger. La validation des opérations ne peut pas être automatisée en raison des limitations de Jupyter Notebook.

Si vous rencontrez des problèmes pendant l'apprentissage, n'hésitez pas à demander à Labby. Donnez des commentaires après la session, et nous résoudrons rapidement le problème pour vous.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL sklearn(("Sklearn")) -.-> sklearn/CoreModelsandAlgorithmsGroup(["Core Models and Algorithms"]) sklearn(("Sklearn")) -.-> sklearn/ModelSelectionandEvaluationGroup(["Model Selection and Evaluation"]) sklearn(("Sklearn")) -.-> sklearn/UtilitiesandDatasetsGroup(["Utilities and Datasets"]) ml(("Machine Learning")) -.-> ml/FrameworkandSoftwareGroup(["Framework and Software"]) sklearn/CoreModelsandAlgorithmsGroup -.-> sklearn/linear_model("Linear Models") sklearn/ModelSelectionandEvaluationGroup -.-> sklearn/model_selection("Model Selection") sklearn/UtilitiesandDatasetsGroup -.-> sklearn/datasets("Datasets") ml/FrameworkandSoftwareGroup -.-> ml/sklearn("scikit-learn") subgraph Lab Skills sklearn/linear_model -.-> lab-71125{{"Courbes de validation : Tracer des scores pour évaluer les modèles"}} sklearn/model_selection -.-> lab-71125{{"Courbes de validation : Tracer des scores pour évaluer les modèles"}} sklearn/datasets -.-> lab-71125{{"Courbes de validation : Tracer des scores pour évaluer les modèles"}} ml/sklearn -.-> lab-71125{{"Courbes de validation : Tracer des scores pour évaluer les modèles"}} end

Importez les bibliothèques requises et chargez les données

Commencez par importer les bibliothèques nécessaires et charger un ensemble de données. Dans cet exemple, nous utiliserons l'ensemble de données Iris.

import numpy as np
from sklearn.model_selection import validation_curve
from sklearn.datasets import load_iris
from sklearn.linear_model import Ridge

np.random.seed(0)
X, y = load_iris(return_X_y=True)

Mélangez les données

Pour assurer l'aléatoire dans notre analyse, mélangeons l'ordre des échantillons dans notre ensemble de données.

indices = np.arange(y.shape[0])
np.random.shuffle(indices)
X, y = X[indices], y[indices]

Tracez la courbe de validation

Maintenant, traçons la courbe de validation à l'aide de la fonction validation_curve. Nous utiliserons l'estimateur Ridge et ferons varier l'hyperparamètre alpha sur une plage de valeurs.

param_range = np.logspace(-7, 3, 3)
train_scores, valid_scores = validation_curve(
    Ridge(), X, y, param_name="alpha", param_range=param_range, cv=5)

Sommaire

Dans ce laboratoire, nous avons exploré le concept des courbes de validation et la manière dont elles peuvent être utilisées pour évaluer les modèles d'apprentissage automatique. En traçant le score d'entraînement et le score de validation pour différentes valeurs d'hyperparamètres, nous pouvons déterminer si un modèle est surappris ou sous-appris. Cette information nous aide à sélectionner les meilleurs hyperparamètres pour nos modèles et à améliorer leurs performances.

OSZAR »