Was ist DBSCAN?
—> Density-Based Spatial Clustering of Applications with Noise (dichtebasiert)
Der Algorithmus dient der Identifikation von Clustern in einer gegebenen Datenmenge. Er arbeitet basierend auf der Definition einer Punktdichte (2D: "Punkte je Fläche", " MinPts je eps "), wodurch er einige Unzulänglichkeiten von k-means ausgleicht
Wie funktioniert DBSCAN? (Algorithmus)
—> wenn mindestens MinPts in Epsilonumgebung zu finden sind, dann Cluster gefunden
Wie lautet das Vorgehen?
Was ist ein geeignetes Epsilon?
—> Radius Kreis für Abstand
—> Wie viele MinPoints?
Punkt (Featurevektor) zufällig wählen
—> als bekannt labeln
Menge N von Featurevektoren in Epsilonumgebung + Punkt selbst mitzählen (Id oder Vektorkoordinaten vermerken)
Anzahl an Umgebungspunkten > MinPoints?
—> dann kein Rauschen
Cluster um 1 erhöhen (zuerst 0+1) und Punkt Cluster hinzufügen
alle Punkte in N betrachten, als bekannt Labeln und aus N löschen, stattdessen Menge M hinzufügen
M und N vereinigen, wodurch Punkt wieder N hinzugefügt wird
alle Punkte die nicht rauschen sind und keinem Cluster zugehörig sind —> Cluster des Kernpunkts hinzufügen
Und von vorne
Welche Punkte werden unterschieden?
Kernpunkte: Befindet sich der Punkt X innerhalb der Epsilonumgebung und hat dieser mindestens R Nachbarn, dann nennt DBSCAN diesen Punkt einen ‚Kernpunkt‘
Randpunkte / dichterreichbare Punkte: Wenn weniger als R Nachbarn in der Umgebung liegen, dann nennt der Algorithmus diesen ‚Randpunkt‘. Die Kernpunkte befinden sich in unmittelbarer Nähe. In Epsilonumgebung nah genug aber kein Kernpunkt. Werden zu Cluster gezählt.
Rauschen: Ein Rauschpunkt hat keine Nachbarn in seinem direkten Umkreis. Nicht in der Epsilonumgebung von einem Kernpunkt. Weder Kernpunkte noch dichteereichbarer Punkt.
Was sind Vorteile und Nachteile des DBSCAN?
Vorteile
Keine geometrische Grundlage notwendig
Ähnlichkeits- oder Distanzmaß reicht aus
Nachteile
Funktion gibNachbarn()
Werte für ε und MinPts
Last changeda year ago