Mis a jour le 2025-04-14, 12:10

Random Forest

Random Forests :
  • from sklearn.ensemble import RandomForestClassifier
    rf = RandomForestClassifier()
    rf.fit(X, y)
    y2 = rf.predict(X2)
        
  • rf.score(X2, y2) : donne l'accuracy de la prédiction faite avec X2 par rapport à la réalité y2 (équivalent à accuracy_score(rf.predict(X2), y2)
  • les principaux paramètres sont :
    • n_estimators : le nombre d'arbres à utiliser (par défaut 100)
    • max_features : le nombre de features à utiliser pour chaque arbre : 'sqrt' si sqrt(n) (n étant le nombre des features(, 'log2' si log2(n), None pour utiliser toutes les features, 5 pour utiliser au maximum 5 features, 0.5 pour utiliser au maximum 50% des features. Le défaut est 'auto' qui revient à sqrt'.
    • max_depth = 3 : hauteur maximum des arbres est de 3 (défaut est None, pas de hauteur maximum)
    • criterion : 'gini' ou 'entropy' pour le critère d'enrichissement d'un split ('gini' est le défaut).
    • n_jobs = 3 : le nombre de process à faire tourer en parallèle (mais en général, on ne peut pas montrer très haut).
  • rf.predict_proba(X2) : donne une array 2 x n (si 2 classes et n individus qui donne pour chaque classe sa probabilité.
  • rf.predict_log_proba(X2) : la même chose que predict_proba, mais en donnant le log (à base e) de la probabilité.

Copyright python-simple.com
programmer en python, tutoriel python, graphes en python, Aymeric Duclert