Bevezetés
A döntési fák (DT) egy nem paraméteres, felügyelt tanulási módszer, amelyet osztályozásra és regresszióra használnak. A cél egy olyan modell létrehozása, amely az adatjellemzőkből levonható egyszerű döntési szabályok megtanulásával megjósolja egy célváltozó értékét.
Entrópia
A tréning célja, hogy megtaláljuk a csomópontokban a legjobb spliteket, hogy megtaláljuk a legoptimálisabb fát. A felosztások bizonyos kritériumok alapján történnek, mint például: Entrópia.
Az entrópiának számos definíciója létezik, például:
-
Az entrópia az információforrásban található információ mennyiségének felel meg.
-
Az entrópia úgy is felfogható, mint a véletlenszerűség vagy a meglepetés mérése egy halmazban.
-
Az entrópia egy olyan mérőszám, amely a rendszer kiszámíthatatlanságát vagy szennyezettségét méri.
A döntési fákban az entrópiát a csomóponton belüli tisztaság mértékének tekintjük. A döntési fa modell célja, hogy csökkentse a csomópontok entrópiáját minden felosztásnál:
Így szeretnénk maximalizálni a különbséget a szülő csomópont entrópiája és a gyermek csomópontok entrópiája között. Ezt a különbséget Információs nyereség-nak nevezik.
Egy halmaz entrópiája matematikailag a következőképpen van megfogalmazva:
Információszerzés
Az információnyereség a különbség a szülőcsomópont entrópiája és a chlid csomópontok entrópiáinak súlyozott összege között, így a következőképpen fogalmazható meg:
ahol:
-
az entrópia.
-
a felosztás előtti populáció, a szülőcsomópontot jelöli.
-
az a változó, amelyet a felosztáshoz szeretnénk használni.
-
az X egyedi értéke.
-
A egy felosztott lista, csak értékekkel.
vegyünk egy megfelelő példát:
Az információs nyereséget akkor fogjuk kiszámítani, amikor a szülőcsomópontot felosztjuk X értékeivel:
\
Először kiszámítjuk a szülőcsomópont entrópiáját:
\
Ezután kiszámítjuk az egyes gyermekcsomópontok belső valószínűségét a felosztás után az X egyedi értékeinek felhasználásával:
Mint például:
-
: az első gyermek csomópont entrópiáját jelöli.
-
: a második gyermekcsomópont entrópiáját jelöli.
\
Kezdjük az első gyermek csomóponttal:
\
És akkor a második gyermek csomópont:
\
Végül behelyettesítjük az entrópiákat az Information Gain képletben:
\
\
Amint korábban említettük, a csomópont-felosztás célja az információnyereség maximalizálása, és ezáltal az entrópia minimalizálása az eredményül kapott gyermekcsomópontban. Ehhez meg kell próbálnunk felosztani a csomópontot különböző bemeneti készletekkel: , és csak azt a felosztást tartjuk meg, amely maximalizálja az információnyereséget:
Mikor kell abbahagyni a felosztást
A döntési fákban a csomópont felosztása rekurzív, ezért kell lennie egy kritériumnak, amellyel megállíthatjuk a felosztást. Íme néhány a leginkább alkalmazott kritériumok közül:
-
Ha a csomópont tiszta: H(csomópont) = 0. Felesleges tovább felosztani a csomópontot.
-
Maximális mélységszám: Beállíthatunk egy maximális mélységet, amit a modell elérhet, ami azt jelenti, hogy ha a csomópont nem tiszta, akkor is megáll a hasítás.
-
Minimális mintaszám csomópontonként: Beállíthatunk egy csomópontonkénti minimális mintaszámot is, . Ha a minták száma csomópontonként , akkor leállítjuk a felosztást, még akkor is, ha a csomópont nem tiszta.
A betanítás (felosztás) végére minden csomópontot, amely a döntési fa végére támaszkodik, "Leaf"-nek nevezik, mert nem gyökere egyik részfának sem. Minden levél a legtöbb mintával rendelkező osztályt képviseli.
Következtetés
Hatékonyságának, intuitív hátterének és egyszerű megvalósításának köszönhetően a döntési fa az egyik leghíresebb gépi tanulási algoritmus. Ez az algoritmus tovább használható numerikus független változókkal (Gaussian Decision Tree), és kiterjeszthető regressziós feladatok megoldására is.