A sűrűség-alapú klaszterezés olyan nagy sűrűségű területeket keres, amelyeket alacsony sűrűségű területek választanak el egymástól. A DBSCAN egy egyszerű és hatékony sűrűség-alapú klaszterező algoritmus, amely számos olyan fogalmat szemléltet, amely fontos bármely sűrűség-alapú klaszterező megközelítés számára. Ebben a szakaszban a sűrűség alapvető fogalmának tisztázása után kizárólag a DBSCAN eljárásra összpontosítunk. Más sűrűség-alapú klaszterek keresésére szolgáló eljárásokat a következő fejezetben tárgyalunk.
Bár koránt sincs annyi módszer a sűrűség definiálására, mint a hasonlóságéra, de azért számos különböző eljárást találunk. Ebben a szakaszban azt a középpont-alapú (center-based) megközelítést tárgyaljuk, amelyen a DBSCAN is alapul. A sűrűség további definícióit a 9. fejezetben mutatjuk be.
A középpont-alapú megközelítésnél az adathalmaz egy adott
pontjában a sűrűséget úgy becsüljük, hogy megszámoljuk a pont
A módszer implementációja egyszerű, de bármely pont sűrűsége a
sugár függvénye lesz. Ha például a sugár elég nagy, akkor minden
pontban
Pontok osztályozása középpont-alapú sűrűség alapján
A középpont-alapú sűrűségi megközelítés egy pontot aszerint osztályoz az elhelyezkedése alapján, hogy (1) egy sűrű terület belsejébe (belső pont), (2) egy sűrű terület szélére (határpont), vagy (3) egy ritka területre (zajos vagy háttér pont) esik. A 8.21. ábrán kétdimenziós pontok segítségével szemléltetjük grafikusan a belső, a határ-, valamint a zajos pontok fogalmát. Az alábbiakban pontosabb leírást adunk ezekről.
Belső (core) pontok:
Ezek a pontok a sűrűség-alapú klaszterek belső részében
helyezkednek el. Egy pont belső pont, ha a távolságfüggvény és egy, a
felhasználó által megadott
Határ (border) pontok:
Egy határpont nem belső pont, de egy belső pont környezetében
van. A 8.21. ábrán
Zajos (noise) pontok:
Minden olyan pont zajos pont, amely nem belső vagy határpont. A
8.21. ábrán a
Ha adott a belső, határ-, és zajos pontok fenti definíciója,
akkor a DBSCAN algoritmus az alábbi kötetlen módon írható le. Bármely
két belső pont ugyanabba a klaszterbe kerül, amennyiben elég közel --
egy
8.4. algoritmus. DBSCAN algoritmus |
1: Címkézzünk meg minden egyes pontot belső, határ-, vagy zajos pontként 2: Hagyjuk el a zajos pontokat 3: Kössük össze az összes olyan
a belső pontot, amelyek
4: Minden összekötött belső pontcsoportot tegyünk egy különálló klaszterbe 5: Rendeljük minden egyes határpontot azon klaszterek egyikéhez, melynek belső pontjaihoz kapcsolódik |
Idő- és tárbonyolultság
A DBSCAN algoritmus időbonyolultsága
A DBSCAN paramétereinek megválasztása
Természetesen kérdés, hogy hogyan határozzuk meg az
A 8.22. ábra egy minta adathalmazt ábrázol, az adatokhoz tartozó
Változó sűrűségű klaszterek
A DBSCAN módszer nehezen kezeli a nagymértékben változó sűrűségű
klaszterek problémáját. Tekintsük a 8.24. ábrán látható, zajba
ágyazott négy klasztert. A klaszterek és a zajos tartományok sűrűségét
a szürke árnyalatainak mélysége jelöli (a sötétebb területek a
sűrűbbek). A sűrűbb
Példa
A DBSCAN használatát úgy szemléltetjük, hogy bemutatjuk a
módszer segítségével megtalált klasztereket egy olyan viszonylag
bonyolult szerkezetű kétdimenziós adathalmazon, mely a 8.22. ábrán
látható. Ez az adathalmaz 3000 kétdimenziós pontot tartalmaz. Az
Mivel a DBSCAN egy klasztert sűrűség-alapon definiál, viszonylag
ellenálló a zajjal szemben és kezelni képes tetszőleges alakú és
méretű klasztereket. Így a DBSCAN képes olyan klaszterek megtalálására
is, melyekre a