Local Outlier Factor
Fa parte della sezione Apprendimento non supervisionato del percorso Machine Learning di Coddy. Lezione 36 di 51.
Alcuni punti anomali si nascondono nell'intervallo dei dati. Il fattore di anomalia locale, LOF, confronta quanto è affollata la zona di ciascun punto con quelle dei suoi vicini:
A volte gli acquirenti restano per 6 ore. Ma i vicini di questa auto sono pendolari, ammassati, e si trova lontano dal loro gruppo:
from sklearn.neighbors import LocalOutlierFactor
lof = LocalOutlierFactor(n_neighbors=20, contamination=0.02)
flags = lof.fit_predict(X)Stesse risposte di prima: -1 anomalo, 1 normale. n_neighbors determina quanto è locale il confronto.
Sfida
MedioUn'azienda telefonica cerca account diversi dai loro vicini. Il codice iniziale ridimensiona i dati e segnala gli account con una foresta di isolamento; il programma legge k.
- Segnala gli account con LOF:
n_neighbors=k,contamination=0.03. - Stampa il conteggio di ciascun rilevatore e quanti account vengono segnalati da entrambi.
- Elenca gli account segnalati solo da LOF, nell'ordine della tabella, come sotto.
Per un'azienda più piccola e 10:
Isolation forest: 5 accounts
LOF: 5 accounts
Both: 4 accounts
Only LOF:
A118: 960 minutes, 6.2 GBProvalo tu
import pandas as pd
from sklearn.preprocessing import StandardScaler
from sklearn.ensemble import IsolationForest
from sklearn.neighbors import LocalOutlierFactor
# Una fila por cuenta telefónica: minutos de llamadas y datos móviles de un mes
accounts = pd.read_csv("accounts.csv")
X = StandardScaler().fit_transform(accounts[["call_minutes", "data_gb"]])
k = int(input())
# De Isolation Forest: -1 para las cuentas que el bosque considera anómalas
forest_flags = IsolationForest(contamination=0.03, random_state=0).fit_predict(X)
# Escribe tu código a continuación
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Apprendimento non supervisionato
1Trovare gruppi
Apprendimento senza etichetteMisurare la similaritàK-Means a manoK-Means in scikit-learnRiepilogo: iscritti alla palestra4Clustering gerarchico
Unire passo dopo passoModelli agglomerativiDendrogrammiRiepilogo: razze canine7PCA nella pratica
Vedere 64 dimensioniComponenti come schemiComprimere e ricostruirePCA prima di un modelloRiepilogo: scanner facciale10Progetto: Esplorare le cifre
Osserva le cifreRiduci con PCARaggruppa le cifreDai un nome ai gruppiTrova gli elementi insoliti2Scelta di k
InerziaIl metodo del gomitoPunteggi silhouetteScala prima del clusteringRiepilogo: zone di consegna8Rilevamento delle anomalie
Individuare gli elementi anomaliIsolation ForestLocal Outlier FactorPunteggi di anomaliaRiepilogo: monitoraggio del serverEsercitati da solo: Compilatore Python online