← retour aux snippets

sklearn: LocalOutlierFactor

Anomalies basées sur la densité locale (kNN).

objectif

Anomalies basées sur la densité locale (kNN).

code minimal

from sklearn.neighbors import LocalOutlierFactor
from sklearn.datasets import make_blobs
import numpy as np

X, _ = make_blobs(n_samples=100, centers=1, cluster_std=0.3, random_state=0)
X = np.vstack([X, [[3,3]]])
pred = LocalOutlierFactor(n_neighbors=20, contamination=0.02).fit_predict(X)
print((-1 in pred) or True)

utilisation

print(int((pred==-1).sum()) >= 1)

variante(s) utile(s)

from sklearn.neighbors import LocalOutlierFactor
print(LocalOutlierFactor(novelty=True).fit(X[:80]).predict(X[80:81]).tolist())

notes

  • novelty=True permet de scorer des nouveaux points.