Forêt d’isolation
Fait partie de la section Apprentissage non supervisé du Journey Machine Learning de Coddy. Leçon 35 sur 51.
Les points atypiques sont faciles à isoler. Découpez les données au hasard, encore et encore, jusqu’à ce qu’un point se retrouve seul :
Le point éloigné a nécessité 2 coupures, le point dense 8. Une forêt d’isolation calcule la moyenne des coupures sur 100 arbres aléatoires :
from sklearn.ensemble import IsolationForest
forest = IsolationForest(contamination=0.02, random_state=0)
flags = forest.fit_predict(X)fit_predict renvoie -1 pour les lignes atypiques, 1 pour les autres. contamination est la proportion de lignes que tu t’attends à voir atypiques.
Défi
MoyenUn port a enregistré 160 quarts de grue : le nombre de mouvements par heure et l’énergie par mouvement. Quels quarts étaient inhabituels ?
- Repère les quarts à l’aide d’une forêt d’isolation,
contamination=0.03,random_state=0. Affiche le nombre comme ci-dessous. - Représente les quarts normaux par des points étiquetés
normal. - Entoure ceux qui ont été signalés :
s=150, facecolors="none", edgecolors="red", étiquetésflagged. Ajoute une légende et affiche le graphique.
Pour un autre port, avec 200 quarts :
Flagged: 6 of 200 shiftsCoddy décrit ensuite ton graphique.
Essayez vous-même
import pandas as pd
import matplotlib.pyplot as plt
from sklearn.ensemble import IsolationForest
# Une ligne par poste de travail d'une grue au port : vitesse et consommation d'énergie
shifts = pd.read_csv("cranes.csv")
X = shifts[["moves_per_hour", "kwh_per_move"]]
# Ne modifiez pas les lignes ci-dessous
fig, ax = plt.subplots()
ax.set_title("Crane Shifts")
ax.set_xlabel("Moves per hour")
ax.set_ylabel("Energy per move (kWh)")
# Écrivez votre code ci-dessous
Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Apprentissage non supervisé
1Découvrir des groupes
Apprendre sans étiquettesMesurer la similaritéK-Means à la mainK-Means avec scikit-learnRécapitulatif : les membres de la salle de sport4Classification hiérarchique
Fusion étape par étapeModèles agglomératifsDendrogrammesRécapitulatif : races de chiens7L’ACP en pratique
Visualiser 64 dimensionsLes composantes comme motifsCompresser et reconstruireL’ACP avant un modèleRécapitulatif : scanner de visages10Projet : Explorateur de chiffres
Observer les chiffresRéduire avec la PCARegrouper les chiffresNommer les groupesRepérer les intrus2Choisir k
InertieLa méthode du coudeScores de silhouetteMettre à l’échelle avant le clusteringRécapitulatif : zones de livraison8Détection des anomalies
Repérer les éléments atypiquesForêt d’isolationFacteur local d’anomalieScores d’anomalieRécapitulatif : surveillance des serveursEntraînez-vous par vous-même : Compilateur Python en ligne