Logo elodees  elodees

Une IA bien-veillante pour un monde meilleur













Seuls les caractères alphabétiques accentués ou non ainsi que l'espace sont acceptés

Logo IA




Validation croisée





Pas encore de compte ?

Inscrivez-vous pour accéder à tous les contenus




La validation croisée est l'une des diverses techniques de validation de modèle similaires permettant d'évaluer comment les résultats d'une analyse statistique se généraliseront à un ensemble de données indépendant.

La validation croisée est une méthode de rééchantillonnage qui utilise différentes parties des données pour tester et former un modèle sur différentes itérations.

Il est principalement utilisé dans des contextes où l'objectif est la prédiction, et on veut estimer la précision avec laquelle un modèle prédictif fonctionnera dans la pratique.

Dans un problème de prédiction, un modèle reçoit un ensemble de données de données connues sur lesquelles la formation est exécutée, et un ensemble de données de données inconnues par rapport auxquelles le modèle est testé.

L'objectif de la validation croisée est de tester la capacité du modèle à prédire de nouvelles données qui n'ont pas été utilisées pour l'estimer.

Ceci, afin de signaler des problèmes tels que le surajustement ou le biais de sélection et de donner un aperçu de la façon dont le modèle se généralisera à un ensemble de données indépendant.



Machine Learning - Cross Validation K-Fold



Testé sous Anaconda et Python 3.7

from sklearn import datasets
from sklearn.tree import DecisionTreeClassifier
from sklearn.model_selection import KFold, cross_val_score
 
X, y = datasets.load_iris(return_X_y=True)
 
clf = DecisionTreeClassifier(random_state=42)
 
k_folds = KFold(n_splits = 5)
 
scores = cross_val_score(clf, X, y, cv = k_folds)
 
print("Cross Validation Scores: ", scores)
print("Average CV Score: ", scores.mean())
print("Number of CV Scores used in Average: ", len(scores))
 


Source : https://www.w3schools.com/python/python_ml_cross_validation.asp



Cross Validation Scores: [1. 1. 0.83333333 0.93333333 0.8 ]

Average CV Score: 0.9133333333333333

Number of CV Scores used in Average: 5



Machine Learning - Cross Validation Stratified K-Fold



Testé sous Anaconda et Python 3.7

from sklearn import datasets
from sklearn.tree import DecisionTreeClassifier
from sklearn.model_selection import StratifiedKFold, cross_val_score
 
X, y = datasets.load_iris(return_X_y=True)
 
clf = DecisionTreeClassifier(random_state=42)
 
sk_folds = StratifiedKFold(n_splits = 5)
 
scores = cross_val_score(clf, X, y, cv = sk_folds)
 
print("Cross Validation Scores: ", scores)
print("Average CV Score: ", scores.mean())
print("Number of CV Scores used in Average: ", len(scores))
 


Source : https://www.w3schools.com/python/python_ml_cross_validation.asp



Cross Validation Scores: [0.96666667 0.96666667 0.9 0.93333333 1. ]

Average CV Score: 0.9533333333333334

Number of CV Scores used in Average: 5



Machine Learning - Cross Validation Leave One Out (LOO)



Testé sous Anaconda et Python 3.7

from sklearn import datasets
from sklearn.tree import DecisionTreeClassifier
from sklearn.model_selection import LeaveOneOut, cross_val_score
 
X, y = datasets.load_iris(return_X_y=True)
 
clf = DecisionTreeClassifier(random_state=42)
 
loo = LeaveOneOut()
 
scores = cross_val_score(clf, X, y, cv = loo)
 
print("Cross Validation Scores: ", scores)
print("Average CV Score: ", scores.mean())
print("Number of CV Scores used in Average: ", len(scores))
 


Source : https://www.w3schools.com/python/python_ml_cross_validation.asp



Cross Validation Scores :
[1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1.
1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1.
1. 1. 1. 1. 1. 1. 1. 1. 1. 0. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 0. 1.
1. 1. 1. 1. 1. 0. 1. 1. 1. 1. 1. 0. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1.
1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 0. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 0.
1. 1. 1. 1. 1. 1. 1. 1. 1. 0. 1. 1. 1. 0. 1. 1. 1. 1. 0. 1. 1. 1. 1. 1.
1. 1. 1. 1. 1. 1.]

Average CV Score: 0.94

Number of CV Scores used in Average: 150





Machine Learning - Cross Validation Leave P Out (LPO)



Testé sous Anaconda et Python 3.7

from sklearn import datasets
from sklearn.tree import DecisionTreeClassifier
from sklearn.model_selection import LeavePOut, cross_val_score
 
X, y = datasets.load_iris(return_X_y=True)
 
clf = DecisionTreeClassifier(random_state=42)
 
lpo = LeavePOut(p=2)
 
scores = cross_val_score(clf, X, y, cv = lpo)
 
print("Cross Validation Scores: ", scores)
print("Average CV Score: ", scores.mean())
print("Number of CV Scores used in Average: ", len(scores))
 


Source : https://www.w3schools.com/python/python_ml_cross_validation.asp



Cross Validation Scores: [1. 1. 1. ... 1. 1. 1.]

Average CV Score: 0.9382997762863534

Number of CV Scores used in Average: 11175



Machine Learning - Cross Validation Shuffle Split



Testé sous Anaconda et Python 3.7

from sklearn import datasets
from sklearn.tree import DecisionTreeClassifier
from sklearn.model_selection import ShuffleSplit, cross_val_score
 
X, y = datasets.load_iris(return_X_y=True)
 
clf = DecisionTreeClassifier(random_state=42)
 
ss = ShuffleSplit(train_size=0.6, test_size=0.3, n_splits = 5)
 
scores = cross_val_score(clf, X, y, cv = ss)
 
print("Cross Validation Scores: ", scores)
print("Average CV Score: ", scores.mean())
print("Number of CV Scores used in Average: ", len(scores))
 


Source : https://www.w3schools.com/python/python_ml_cross_validation.asp



Cross Validation Scores: [0.97777778 0.93333333 0.88888889 0.95555556 0.93333333]

Average CV Score: 0.9377777777777778

Number of CV Scores used in Average: 5





Apprentissage profond

Apprentissage automatique












Bienvenu, je m’appelle Eric Soupet et je suis l'administrateur du site elodees.com. elodees.com est un état de l'art de l'Intelligence Artificielle et se veut collaboratif, vous pouvez dès à présent proposer du contenu tels que des articles, des événements, des tutoriels, ... alors n'hésitez pas !

Crédit des images de la plate-forme : Pixabay - Pixabay License | Pexels - Pexels License