Je veux utiliser l'algorithme de clustering Dans le cas Test dbscan code> afin de détecter des valeurs aberrantes dans mon jeu de données. Comme il s'agit d'une approche d'apprentissage non supervisée, dois-je faire scinder mon jeu de données dans la formation et les données de test ou tester l'algorithme
dbscan code> tout simplement pas possible? Pour des raisons de détection des valeurs aberrantes, devrais-je alimenter le modèle
dbscan code> avec tout mon jeu de données? P>
DBSCAN code> est possible, pouvez-vous suggérer des moyens de le faire avec Python? P>
3 Réponses :
Vous n'avez pas besoin de diviser vos données en test et en train. Cependant, vous devez avoir un échantillon de données étiquetées de vos données d'origine si vous souhaitez évaluer votre modèle. Il existe également d'autres moyens sans surveillance, mais ils comparent quelle méthode de clustering fonctionne mieux par rapport à d'autres méthodes que vous essayez (algorithmes ou hyperparamètres différents). P>
Je suggérerais de lire - https://scikit-learn.org/stable/ modules / clustering.html La section 2.3.10 montre les différentes méthodes d'évaluation de vos modèles de clustering et l'API Sklearn devait les mettre en œuvre. P>
Vous pouvez choisir lequel convient le mieux à votre exigence sur la base de votre relevé de problème. P>
Merci! Le lien avec la vue d'ensemble des algorithmes de clustering est super utile! Aura un examen plus profond dans les méthodes d'évaluation suggérées.
Permettez-moi d'ajouter un autre point important ici: P>
Vous ne pouvez pas tester des méthodes d'apprentissage non surveillées. L'idée principale des méthodes d'apprentissage non supervisées est de définir une cible non prédéfinienne. p>
Méthodes d'apprentissage supervisées dans l'apprentissage de la machine -> Train / Test ou Train / Dev / Test Split P>
Apprentissage non supervisé -> Pas de scission p>
Selon votre ensemble de données pour les valeurs aberrantes, il existe également d'autres méthodes statistiques pour identifier les valeurs aberrantes: P>
Quantiles p>
z-score p>
Merci! Oui, donc les modèles d'apprentissage fondamentalement non surveillés ne peuvent pas être testés, mais évalués, par ex. Comment sont définis les grappes.
J'ai un espace de fonctionnalité en deux dimensions, j'ai donc choisi de détecter des valeurs aberrantes avec DBSCAN. Dans des cas unidimensionnels, j'ai calculé z scores.
Pour deux dimensions, une parcelle de dispersion est également intéressante
Déjà fait ça :) Mais dans l'intrigue de dispersion, il y avait des régions qui n'étaient pas faciles à identifier visuellement les valeurs aberrantes.
Pour la détection des valeurs aberrantes, utilisez un algorithme de détection bruit tel que détecté par DBSCAN est
Et quel algorithme de détection d'impératif B> suggéreriez-vous? Beaucoup de sources suggèrent que des données plus dimensionnelles Dossiers DBSCAN et une forêt d'isolation pour détecter des valeurs aberrantes ...
Je ne suis pas un fan de forêts d'isolation. Si vous voulez quelque chose de similaire à DBSCAN, utilisez par exemple LOF ou BOOP du même groupe.