Aperçu des hyperparamètres d'Isolation Forest

Détection d’anomalies en Python

Bekhruz (Bex) Tuychiev

Kaggle Master, Data Science Content Creator

Hyperparamètres clés

Hyperparamètres qui influencent le plus IForest :

  • contamination
  • n_estimators
  • max_samples
  • max_features
Détection d’anomalies en Python

Qu'est-ce que la contamination ?

Comment IForest classe les points :

  1. Génération de scores d'anomalie bruts
  2. Définition d'un seuil nommé contamination
  3. Le pourcentage le plus élevé de scores, défini par contamination, est marqué comme valeurs aberrantes
Détection d’anomalies en Python

Définir la contamination

from pyod.models.iforest import IForest


# Accepte une valeur entre 0 et 0.5 iforest = IForest(contamination=0.05)
Détection d’anomalies en Python

Qu'est-ce que n_estimators ?

# Plus d'arbres pour les grands jeux de données
iforest = IForest(n_estimators=1000)

iforest.fit(airbnb_df)
Détection d’anomalies en Python

max_samples et max_features

iforest = IForest(n_estimators=200, max_samples=0.6, max_features=0.9)


iforest.fit(airbnb_df)
Détection d’anomalies en Python

Croissance des arbres

  • iTrees :
    • croissance aléatoire
    • coupure choisie aléatoirement entre le min et le max d'une variable
    • croissance jusqu'à :
      • tous les points sont isolés
      • profondeur maximale atteinte
Détection d’anomalies en Python

Profondeur max. de l'arbre

  • Égale au logarithme de la taille de l'échantillon
Détection d’anomalies en Python

Atouts d'IForest

  • Très efficace sur de grands jeux de données
  • N'exige pas toutes les instances normales comme d'autres algorithmes
  • Aucune hypothèse statistique
  • Efficace sans réglages poussés
Détection d’anomalies en Python

Défis de la détection d'anomalies

  • Les modèles supervisés s'appuient sur des métriques comme RMSE ou log loss
  • La détection d'anomalies est un problème non supervisé
  • Les classifieurs d'anomalies doivent être combinés à des modèles supervisés
Détection d’anomalies en Python

Passons à la pratique !

Détection d’anomalies en Python

Preparing Video For Download...