top of page

GridSearchCV avec DECISION TREE

  • niko
  • 4 juil. 2018
  • 1 min de lecture

CODE PYTHON:

from sklearn.tree import DecisionTreeClassifier

#DATAS from sklearn.datasets import load_digits digits = load_digits() X, y = digits.data, digits.target

## mise à l'échelle : normalisation from sklearn.preprocessing import StandardScaler scaler = StandardScaler() X_std = scaler.fit_transform(X)

## initialisation classifieur

clf_tree = DecisionTreeClassifier() clf_tree.fit(X_std, y) print(clf_tree) clf_tree.score(X_std, y)

## score = 1 car pas de limitation de profondeur de l'arbre et donc toutes les données sont bien classées

from sklearn.model_selection import GridSearchCV from sklearn.model_selection import ShuffleSplit import matplotlib.pyplot as plt

cv = ShuffleSplit(n_splits=30, test_size=0.2)

depth_grid = [1, 3, 5, 10, 20, 30, 40, 50, None] #liste des profondeurs d'arbres à tester parameters = {'max_depth': depth_grid} #paramètre qui va être utiliser dans le GridSearchCV clf_tree_grid = GridSearchCV(clf_tree, parameters, cv=cv) clf_tree_grid.fit(X_std, y)

plt.plot(depth_grid, clf_tree_grid.cv_results_['mean_test_score'])

print('Meilleure valeur du paramètre: ', clf_tree_grid.best_params_)

Comments


A découvrir ...
bottom of page