A CART (Classification and Regression Tree) algoritmus , ahogy a neve is sugallja, döntési fa felépítésével oldja meg az osztályozási és regressziós problémákat. 1974-1984 között négy statisztikaprofesszor fejlesztette ki: Leo Breiman ( Berkeley ), Jerome Friedman( Stanford ), Charles Stone (Charles Stone, Berkeley ) és Richard Olshen (Richard A. Olshen, Stanford ).
A mai napig számos olyan algoritmus létezik, amely döntési fákat valósít meg: CART , C4.5 , CHAID, CN2, NewId , ITrule és mások [1] .
A CART algoritmust bináris döntési fa létrehozására tervezték. A bináris (bináris) fák olyan fák, amelyek mindegyik csomópontjának felosztása esetén csak két gyermeke van. A CART algoritmusnál a kiválasztott csoport objektumainak "viselkedése" a kimeneti jellemző modális (leggyakoribb) értékének arányát jelenti. A kiválasztott csoportok azok, amelyeknél ez az arány meglehetősen magas. A faépítés minden lépésében a csomópontban kialakított szabály két részre osztja az adott példakészletet - arra a részre, ahol a szabály igaz (gyermek - jobb), és arra a részre, ahol a szabály nem igaz (gyermek - bal). [2]
A CART algoritmus előnye, hogy bizonyos garancia arra, hogy ha a kívánt meghatározások megvannak a vizsgált populációban, akkor azok megjelennek. Ezenkívül a CART lehetővé teszi, hogy ne „bezárja” a kimeneti jellemző egyetlen értékét, hanem keressen minden olyan értéket, amelyhez megtalálja a megfelelő magyarázó kifejezést. [3]
A CART módszert nominális (általában kétszintű) és ordinális prediktorváltozókhoz használják. Ebben a módszerben minden egyes csomóponthoz tartozó összes lehetséges elágazási opciót felsoroljuk, és kiválasztjuk azt a prediktorváltozót, amelyre a becslő a legjobb pontszámot adja.
Egy névleges előrejelző változóhoz, amely egy adott csomópontban k értéket vesz fel, pontosan 2 (k-1) −1 lehetőség van az értékkészlet két részre osztására.
Egy adott csomóponton k különböző szinttel rendelkező ordinális előrejelző esetén k-1 pont választja el a különböző szinteket. A különböző elágazási lehetőségek száma, amelyeket meg kell tekinteni, nagyon nagy lesz: ha sok prediktor van a problémában, akkor sok értékük van, ami azt jelenti, hogy sok terminális csúcs van a fában. Ezen túlmenően ez a módszer inkább azokat a prediktorváltozókat választja elágazásra, amelyeknek több szintje van, ezért olyan indikátorra van szükség, amely lehetővé teszi a felépített modell minőségének értékelését. [négy]
A CART algoritmus által használt kiértékelési funkció azon az intuitív ötleten alapul, hogy csökkentsék egy csomópontban a bizonytalanságot (heterogenitást). Példaként vegyünk egy problémát két osztállyal és egy olyan csomóponttal, amelyik mindegyik osztályból 50 példányt tartalmaz. A csomópont maximális bizonytalansággal rendelkezik. Ha olyan partíciót találunk, amely az adatokat két 40:5 arányú, a másikban 10:45 arányú alcsoportra osztja, akkor a heterogenitás intuitív módon csökkenni fog. Teljesen eltűnik, ha olyan felosztást találunk, amely 50:0 és 0:50 alcsoportokat hoz létre. A CART algoritmusban a bizonytalanság gondolata a Gini -indexben formalizálódik . Ha a T adatkészlet n osztályadatot tartalmaz, akkor a Gini -indexet a következőképpen határozzuk meg [5]
, ahol pi az i osztály valószínűsége (relatív gyakorisága) T -ben . Ha a T halmazt két részre osztjuk T1 és T2 részre , mindegyik N1 és N2 példák számával , akkor a felosztási minőségi index egyenlő lesz:
A legjobb partíció az, amelyhez a Ginisplit(T) minimális. Legyen N az őscsomópontban lévő példák száma, L , R a bal és a jobb oldali gyermek példáinak száma, li és ri az i -edik osztály példányainak száma a bal/jobb gyermekben. Ezután a partíció minőségét a következő képlettel becsüljük meg:
A számítások mennyiségének csökkentése érdekében a képlet átalakítható:
Mivel a konstanssal való szorzás nem játszik szerepet a minimalizálásban:
Ennek eredményeként az lesz a legjobb partíció, amelynél az érték maximális. Így a „döntési fa” CART módszerrel történő felépítésénél olyan elágazási lehetőséget keresünk, amelyben a Ginisplit(T) mutató értéke a lehető legnagyobb mértékben csökken .
Ez a minimális költség-komplexitású fametszésnek nevezett mechanizmus (lásd az angol Wikipédiában a Metszés című cikket ), a CART algoritmus alapvetően különbözik néhány más döntési fa építési algoritmustól. A vizsgált algoritmusban a metszés kompromisszum a "megfelelő méretű" fa és a legpontosabb osztályozási becslés között. A metszés (ritkítás) nemcsak a fák egyszerűsítése miatt fontos, hanem a túlillesztés elkerülése érdekében is . A módszer a csökkenő fák sorozatának megszerzéséből áll, de nem minden fát veszünk figyelembe, hanem csak a „legjobb képviselőket”. [egy]
A keresztellenőrzés a CART algoritmus legösszetettebb és egyben eredeti része. Ez egy módja a végső fa kiválasztásának, feltéve, hogy az adathalmaz kicsi, vagy az adathalmaz rekordjai annyira specifikusak, hogy nem lehet a halmazt felosztani képzési és tesztkészletekre [1] .
Előnyök:
Hibák: