Local Outlier Factor
Część sekcji Uczenie nienadzorowane ścieżki Machine Learning w Coddy. Lekcja 36 z 51.
Niektóre nietypowe punkty kryją się w zakresie danych. lokalny współczynnik odstających obserwacji, LOF, porównuje zagęszczenie każdego punktu z zagęszczeniem jego sąsiadów:
Klienci czasami zostają 6 godzin. Ale sąsiedzi tego samochodu to osoby dojeżdżające do pracy, stłoczone blisko siebie, a ten samochód stoi daleko od ich grupy:
from sklearn.neighbors import LocalOutlierFactor
lof = LocalOutlierFactor(n_neighbors=20, contamination=0.02)
flags = lof.fit_predict(X)Takie same odpowiedzi jak poprzednio: -1 oznacza wartość odstającą, 1 — normalną. n_neighbors określa, jak lokalne jest porównanie.
Wyzwanie
ŚredniFirma telefoniczna szuka kont różniących się od sąsiednich. Kod początkowy skaluje dane i oznacza konta za pomocą lasu izolacyjnego; program odczytuje k.
- Oznacz konta za pomocą LOF:
n_neighbors=k,contamination=0.03. - Wypisz liczbę wskazań każdego detektora oraz liczbę kont wskazanych przez oba.
- Wymień konta oznaczone tylko przez LOF, w kolejności z tabeli, jak poniżej.
Dla mniejszej firmy i 10:
Isolation forest: 5 accounts
LOF: 5 accounts
Both: 4 accounts
Only LOF:
A118: 960 minutes, 6.2 GBSpróbuj swoich sił
import pandas as pd
from sklearn.preprocessing import StandardScaler
from sklearn.ensemble import IsolationForest
from sklearn.neighbors import LocalOutlierFactor
# Jeden wiersz na konto telefoniczne: liczba minut połączeń i ilość danych komórkowych w miesiącu
accounts = pd.read_csv("accounts.csv")
X = StandardScaler().fit_transform(accounts[["call_minutes", "data_gb"]])
k = int(input())
# Wynik Isolation Forest: -1 dla kont uznanych przez model za nietypowe
forest_flags = IsolationForest(contamination=0.03, random_state=0).fit_predict(X)
# Wpisz swój kod poniżej
Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Uczenie nienadzorowane
1Znajdowanie grup
Uczenie się bez etykietMierzenie podobieństwaK-Means krok po krokuK-Means w scikit-learnPodsumowanie: członkowie siłowni4Klasteryzacja hierarchiczna
Łączenie krok po krokuModele aglomeracyjneDendrogramyPodsumowanie: rasy psów7PCA w praktyce
Poznajemy 64 wymiarySkładowe jako wzorceKompresuj i odtwórzPCA przed modelemPodsumowanie: skaner twarzy10Projekt: Odkrywca cyfr
Przyjrzyj się cyfromZmniejsz wymiar za pomocą PCAGrupuj cyfryNazwij grupyZnajdź te nietypowe2Wybór k
InercjaMetoda łokciaWyniki silhouetteSkalowanie przed klasteryzacjąPodsumowanie: strefy dostaw8Wykrywanie anomalii
Znajdowanie nietypowych elementówIsolation ForestLocal Outlier FactorOceny anomaliiPodsumowanie: Monitoring serweraPoćwicz samodzielnie: Kompilator Python online