Pas encore de compte ?
L'ordre des points pour identifier la structure de regroupement est un algorithme permettant de trouver des clusters basés sur la densité dans les données spatiales.
OPTICS est similaire à DBSCAN, mais il répond à l'une des principales faiblesses de DBSCAN à savoir, le problème de la détection de clusters significatifs dans des données de densité variable.
Pour ce faire, les points de la base de données sont ordonnés de telle sorte que les points spatialement les plus proches deviennent voisins dans l'ordre.
Une distance spéciale est stockée pour chaque point qui représente la densité qui doit être acceptée pour un cluster afin que les deux points appartiennent à celui-ci.
Ceci est représenté par un dendrogramme.
Détection d'anomalies avec OPTICS
Testé sous Anaconda et Python 3.7
from sklearn.cluster import OPTICS from sklearn.datasets import make_blobs from numpy import quantile, where, random import matplotlib.pyplot as plt random.seed(123) x, _ = make_blobs(n_samples=350, centers=1, cluster_std=.4, center_box=(20, 5)) plt.scatter(x[:,0], x[:,1]) plt.grid(True) plt.show() model = OPTICS().fit(x) print(model) scores = model.core_distances_ thresh = quantile(scores, .98) print(thresh) index = where(scores >= thresh) values = x[index] print(values) plt.scatter(x[:,0], x[:,1]) plt.scatter(values[:,0],values[:,1], color='r') plt.legend(("normal", "anomal"), loc="best", fancybox=True, shadow=True) plt.grid(True) plt.show()
Source : https://www.datatechnotes.com/2020/12/anomaly-detection-with-optics-in-python.html
Bienvenu, je m’appelle Eric Soupet et je suis l'administrateur du site elodees.com. elodees.com est un état de l'art de l'Intelligence Artificielle et se veut collaboratif, vous pouvez dès à présent proposer du contenu tels que des articles, des événements, des tutoriels, ... alors n'hésitez pas !
Crédit des images de la plate-forme : Pixabay - Pixabay License | Pexels - Pexels License