FOREL család algoritmusai

Az oldal jelenlegi verzióját még nem ellenőrizték tapasztalt közreműködők, és jelentősen eltérhet a 2020. január 14-én felülvizsgált verziótól ; az ellenőrzéshez 1 szerkesztés szükséges .

A FOREL (Formal Element)  egy klaszterező algoritmus , amely azon az elgondoláson alapul, hogy az objektumokat a legnagyobb koncentrációjú területeken egy klaszterbe vonják össze.

A klaszterezés célja

Osszuk fel a mintát olyan (korábban ismeretlen) számú taxonra , hogy a klaszterobjektumok és a klaszterközpontok közötti távolságok összege minden klaszter esetében minimális legyen. Azaz az a feladatunk, hogy egymáshoz minél közelebb eső objektumcsoportokat azonosítsunk, amelyek a hasonlósági hipotézis értelmében klasztereinket alkotják majd.

Az algoritmus által minimalizált minőségi funkcionális

,

ahol az első összegzés az összes mintaklaszterre vonatkozik, a második összegzés az aktuális klaszterhez tartozó összes objektumra vonatkozik, és az aktuális klaszter középpontja  , és  az objektumok közötti távolság .

A munkavégzés feltételei

Bemeneti adatok

Meghatározható az objektumok jellemző leírásával – egy lineáris térrel vagy az objektumok közötti páronkénti távolságok mátrixával.
Megjegyzés: a valós feladatokban gyakran lehetetlen vagy értelmetlen az összes adat tárolása, ezért a szükséges adatok a klaszterezés során gyűjtésre kerülnek

Beállítható mind a priori megfontolásokból (a klaszter átmérőjének ismerete), mind a csúszó vezérléssel.

Impresszum

Csoportosulás egy korábban ismeretlen számú taxonba.

Hogyan működik

Minden lépésben véletlenszerűen kiválasztunk egy tárgyat a mintából, felfújunk egy R sugarú gömböt köré, kiválasztjuk a gömbön belüli súlypontot, és az új gömb középpontjává tesszük. Azaz minden lépésnél a mintatárgyak lokális koncentrációja irányába mozgatjuk a gömböt, azaz igyekszünk minél több mintatárgyat rögzíteni egy fix sugarú gömbbel. Miután a gömb középpontja stabilizálódott, a gömbön belüli összes tárgyat ezzel a középponttal csoportosítottként jelöljük meg, és kidobjuk a mintából. Ezt a folyamatot addig ismételjük, amíg a teljes minta csoportosul.

Algoritmus

  1. A kijelölésből véletlenszerűen kiválasztjuk az aktuális objektumot;
  2. Megjelöljük az aktuálistól R-nél kisebb távolságra lévő mintaobjektumokat;
  3. Kiszámoljuk a súlypontjukat, megjelöljük ezt a középpontot új aktuális objektumként;
  4. Ismételje meg a 2-3. lépéseket, amíg az új aktuális objektum meg nem egyezik a régivel;
  5. Az aktuális objektum körüli R sugarú gömbön belüli objektumokat fürtözöttnek jelöljük, kidobjuk a kijelölésből;
  6. Ismételje meg az 1–5. lépéseket, amíg a teljes minta csoportosul.

Az algoritmus pszeudokódja C - szerű nyelven:

# define R 30 // helyi fürtözés keresési szélessége - a clusterization_not_finished () algoritmus bemeneti paramétere ; // az összes objektum fürtözött get_random_object (); // egy tetszőleges, nem fürtözött objektumot ad vissza get_neighbour_objects ( type * object ); // olyan objektumok tömbjét adja vissza , amelyek <= R helyen találhatók az aktuális_objektumok_centrumból ( típus * mass_of_objects ) ; // visszaadja a megadott objektumok súlypontját delete_objects ( type * mass_of_objects ); // eltávolítja a megadott objektumokat a kijelölésből ( már csoportosítottuk őket ) , míg ( clusterisation_not_finished ()) { current_object = get_random_object ( ); szomszéd_objektumok = get_neighbour_objects ( jelenlegi_objektum ); center_object = objektumok_középpontja ( szomszéd_objektumok ); while ( center_object ! = aktuális_objektum ) // amíg a súlypont stabilizálódik { aktuális_objektum = center_object ; _ szomszéd_objektumok = get_neighbour_objects ( jelenlegi_objektum ); center_object = objektumok_középpontja ( szomszéd_objektumok ); } delete_objects ( szomszéd_objektumok ); }

Súlypont heurisztika

  • Lineáris térben a tömegközéppont;
  • A metrikus térben egy objektum, amelynek távolságainak összege minimális, a gömbön belüli összes között;
  • Olyan objektum, amely egy R sugarú gömbön belül tartalmazza a maximális számú egyéb objektumot a teljes kijelölésből (lassú);
  • Az az objektum, amely a maximális számú objektumot tartalmazza egy kis sugarú gömbön belül (az R sugarú gömbből).

Észrevételek

  • Az algoritmus véges számú lépésben való konvergenciája bizonyított;
  • A lineáris térben a súlypont tetszőleges térbeli pont lehet, a metrikus térben csak a minta tárgya;
  • Minél kisebb R, annál több taxon (klaszter);
  • Lineáris térben a középpont keresése O(n) időben, O(n²) metrikus térben történik;
  • Az algoritmus a legjobb eredményeket a tömörségi feltételek megfelelő teljesítése mellett éri el a mintákon;
  • Ismétlődő iterációknál lehetőség van az R paraméter csökkentésére, a leggyorsabb konvergencia érdekében;
  • A klaszterezés nagymértékben függ a kezdeti közelítéstől (az objektum kiválasztása az első lépésben);
  • Javasoljuk az algoritmus újbóli futtatását, hogy kiküszöböljük a „rossz” klaszterezés helyzetét, amely a kezdeti objektumok sikertelen kiválasztása miatt következett be.

Előnyök

  1. A minőségi funkcionális minimalizálás pontossága (az R paraméter sikeres kiválasztásával);
  2. Klaszteres vizualizáció megjelenítése;
  3. Az algoritmus konvergenciája;
  4. A klaszterek középpontjain végzett műveletek lehetősége - ezek az algoritmus során ismertek;
  5. Képes kiszámítani a közepes minőségű funkcionálisokat, például a helyi koncentrációk láncolatának hosszát;
  6. Hasonlósági és tömörségi hipotézisek tesztelésének lehetősége az algoritmus működése során.

Hátrányok

  1. Viszonylag alacsony teljesítmény (megoldott a gömbön belüli 1 objektum hozzáadásakor a középpont keresésének újraszámítási funkciójának bevezetése);
  2. Az algoritmus rossz alkalmazhatósága a minta klaszterekre való rossz szétválasztásával;
  3. Az algoritmus instabilitása (a kezdeti objektum kiválasztásától való függés);
  4. Tetszőleges szám szerinti felosztás klaszterekre;
  5. A klaszterek szélességére (átmérőjére) vonatkozó előzetes ismeretek szükségessége.

Kiegészítők

Miután az algoritmus dolgozott a kész klaszterezésen, végrehajthat néhány műveletet:

  1. A leginkább reprezentatív (reprezentatív) objektumok kiválasztása az egyes klaszterekből. Kiválaszthatja a klaszterek középpontjait, minden klaszterből több objektumot is kiválaszthat, figyelembe véve a minta szükséges reprezentativitásának előzetes ismereteit. Így a kész klaszterezés szerint lehetőségünk van a legreprezentatívabb minta felépítésére;
  2. Klaszterezés (többszintűség) újraszámítása KNI módszerrel.

Hatókör

  1. Klaszterezési problémák megoldása;
  2. Minta rangsorolásának problémáinak megoldása.

Lásd még

Irodalom