CommencezCommencez gratuitement

Ajuster votre Random Forest pour la détection de fraude

Dans cet exercice, vous allez explorer les options du classificateur random forest : nous allons attribuer des poids et ajuster la structure des arbres de décision de la forêt. Vous allez définir les poids manuellement afin d'atténuer un peu le déséquilibre. Dans notre cas, on compte 300 fraudes pour 7 000 non-fraudes; en fixant le ratio des poids à 1:12, on obtient un ratio d'environ 1/3 de fraudes pour 2/3 de non-fraudes, ce qui est suffisant pour entraîner le modèle.

Les données ont déjà été séparées en ensembles d'entraînement et de test; vous pouvez donc vous concentrer sur la définition de votre modèle. Vous pouvez ensuite utiliser la fonction get_model_results() comme raccourci. Cette fonction entraîne le modèle sur vos données d'entraînement, produit des prédictions et calcule des mesures de performance similaires aux étapes réalisées dans les exercices précédents.

Cette activité fait partie du cours

Détection de fraude en Python

Voir le cours

Instructions de l’exercice

  • Modifiez l'option weight pour fixer le ratio à 1 pour 12 entre les cas non frauduleux et frauduleux, et définissez le critère de partition à « entropy ».
  • Réglez la profondeur maximale à 10.
  • Réglez le nombre minimal d'exemples dans les feuilles à 10.
  • Réglez le nombre d'arbres à utiliser dans le modèle à 20.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# Change the model options
model = RandomForestClassifier(bootstrap=True, class_weight={0:____, 1:____}, criterion='____',
			
			# Change depth of model
            max_depth=____,
		
			# Change the number of samples in leaf nodes
            min_samples_leaf=____, 

			# Change the number of trees to use
            n_estimators=____, n_jobs=-1, random_state=5)

# Run the function get_model_results
get_model_results(X_train, y_train, X_test, y_test, model)
Modifier et exécuter le code