Egy osztályozási modellben elkövetett hibák általában két csoportba sorolhatóak: tanítási hibák (training errors) és általánosítási hibák (generalization errors). A tanítási hiba, vagy más néven visszahelyettesítési hiba (resubstitution error) vagy látszólagos hiba a tanulórekordokon elkövetett helytelen osztályozási hibák száma, míg az általánosítási hiba a modell várható hibája korábban nem látott rekordokon.
A 4.2. szakaszból emlékeztetünk arra, hogy egy jó osztályozási modell nem csak a tanulóadatokra illeszkedik jól, hanem azokat a rekordokat is pontosan osztályozza, amelyeket még soha sem látott. Más szóval, egy jó modellnek kis tanítási hibával, valamint kis általánosítási hibával kell rendelkeznie. Ez azért fontos, mert egy olyan modell, amely túl jól illeszkedik a tanulóadatokra, rosszabb általánosítási hibával rendelkezhet, mint egy nagyobb tanítási hibájú modell. Ez a helyzet modell túlillesztésként ismert.
Egy túlillesztési példa kétdimenziós adatokon
A túlillesztési probléma egy konkrétabb példájaként tekintsük a
4.22. ábrán látható kétdimenziós adatállományt. Az adatállomány olyan
adatpontokat tartalmaz, amelyek két különböző, egyenként o-val és +-szal
jelölt, osztályba tartoznak. Az o osztálybeli adatpontokat három Gauss
eloszlás keverékéből generáltuk, míg a + osztálybeli adatpontok
létrehozására egyenletes eloszlást használtunk. Összesen 1200 pont
tartozik az o osztályba és 1800 pont + osztályba. A pontok
Vegyük észre, hogy a modell tanítási és tesztelési hibaarányai nagyok, ha a fa mérete nagyon kicsi. Ez a helyzet modell alulillesztésként (model underfitting) ismert. Az alulillesztés azért lép fel, mert a modell még nem tanulta meg az adatok igazi szerkezetét. Ennek eredményeként gyengén teljesít a tanuló- és a teszthalmazon egyaránt. Ahogy a döntési fa csúcsainak száma nő, a fa tanítási és tesztelési hibái csökkennek. Amennyiben azonban a fa túl naggyá válik, a tesztelési hibaarány elkezd nőni annak ellenére, hogy a tanítási hibaarány folyamatosan csökken. Ez a jelenség modell túlillesztésként (model overfitting) ismert.
Ahhoz, hogy megértsük a túlillesztés jelenségét, megjegyezzük, hogy a modell tanítási hibája csökkenthető a modell bonyolultságának növelésével. A fa levélcsúcsai például addig bővíthetőek, amíg a fa tökéletesen nem illeszkedik a tanulóadatokra. Bár egy ilyen összetett fa tanítási hibája nulla, a tesztelési hiba már nagy lehet, mert a fa olyan csúcsokat is tartalmazhat, amelyek csak véletlenül illeszkednek a tanulóadatok néhány zajos pontjára. Ezek a csúcsok rontják a fa teljesítményét, mert nem általánosítanak jól a tesztesetekre. A 4.24. ábra két különböző csúcsszámú döntési fa szerkezetét mutatja. Annak a fának, amelyik kevesebb számú csúcsot tartalmaz, nagyobb a tanítási hibaaránya, de kisebb a tesztelési hibaaránya, mint a bonyolultabb fáé.
A túlillesztés és alulillesztés két olyan rendellenesség, amely a modell bonyolultságával kapcsolatos. A szakasz további részében a modell túlillesztés néhány lehetséges okát vizsgáljuk meg.
Tekintsük a 4.3. és a 4.4. táblázatokban látható tanuló- és teszthalmazokat az emlős osztályozási feladatra. A tíz tanulórekord közül kettő kapott téves címkét: a denevéreket és a bálnákat osztályoztuk nem-emlősöknek emlősök helyett.
4.3. táblázat - Egy példa tanulóhalmaz az emlősök osztályozására. Csillagozott osztálycímkék jelölik a tévesen címkézett rekordokat.
Név | Test- | Eleven- | Négy- | Téli álmot | Osztály- |
hőmérséklet | szülő | lábú | alszik | címke | |
sündisznó | melegvérű | igen | igen | igen | igen |
macska | melegvérű | igen | igen | nem | igen |
denevér | melegvérű | igen | nem | igen | nem
|
bálna | melegvérű | igen | nem | nem | nem
|
szalamandra | hidegvérű | nem | igen | igen | nem |
komodói sárkány | hidegvérű | nem | igen | nem | nem |
óriáskígyó | hidegvérű | nem | nem | igen | nem |
lazac | hidegvérű | nem | nem | nem | nem |
sas | melegvérű | nem | nem | nem | nem |
guppi (hal) | hidegvérű | igen | nem | nem | nem |
4.4. táblázat - Egy példa teszthalmaz az emlősök osztályozására
Név | Test- | Eleven- | Négy- | Téli álmot | Osztály- |
hőmérséklet | szülő | lábú | alszik | címke | |
ember | melegvérű | igen | nem | nem | igen |
galamb | melegvérű | nem | nem | nem | nem |
elefánt | melegvérű | igen | igen | nem | igen |
leopárdcápa | hidegvérű | igen | nem | nem | nem |
teknősbéka | hidegvérű | nem | igen | nem | nem |
pingvin | hidegvérű | nem | nem | nem | nem |
angolna | hidegvérű | nem | nem | nem | nem |
delfin | melegvérű | igen | nem | nem | igen |
hangyászsün | melegvérű | nem | igen | igen | igen |
viperagyík | hidegvérű | nem | igen | igen | nem |
Egy a tanulóadatokra tökéletesen illeszkedő döntési fa látható
17. (a) ábrán. Bár a fa tanítási hibája nulla, a tesztelési hibaaránya
Testhőmérséklet
, Elevenszülő és Négylábú
attribútumok értékei azonosak a tanulóhalmaz tévesen címkézett
rekordjaiéval. A hangyászsünök másrészt egy kivételes esetet
jelentenek, amikor egy tesztrekord osztálycímkéje ellentmond más
hasonló rekordok osztálycímkéjének a tanulóhalmazban. A kivételes
esetek miatti hibák gyakran elkerülhetetlenek, és meghatározzák a
bármilyen osztályozó által elérhető minimális hibaarányt.
Ezzel szemben a 4.25. (b) ábrán látható
Négylábú attribútumon alapuló
tesztfeltétel az
Azok a modellek, amelyeknek az osztályozási döntései kevés számú tanulórekordon alapulnak, szintén érzékenyek a túlillesztésre. Ezek a modellek akkor jöhetnek létre, ha a tanulóadatokból jellegzetes minták hiányoznak, és a tanuló algoritmusok akkor is tovább finomítják a modelljeiket, ha már csak néhány tanulórekord áll rendelkezésre. Ezeket a hatásokat szemléltetjük az alábbi példában.
Tekintsük a 4.5. táblázatban látható öt tanulórekordot.
Mindegyik tanulórekord helyesen címkézett, és a megfelelő döntési fát
a 4.26. ábrán ábrázoltuk. Bár a tanítási hiba nulla, a hibaarány
4.5. táblázat - Egy példa tanítóhalmaz az emlősök osztályozására.
Név | Test- | Eleven- | Négy- | Téli álmot | Osztály- |
hőmérséklet | szülő | lábú | alszik | címke | |
szalamandra | hidegvérű | nem | igen | igen | nem |
guppi (hal) | hidegvérű | igen | nem | nem | nem |
sas | melegvérű | nem | nem | nem | nem |
kecskefejő (madár) | melegvérű | nem | nem | igen | nem |
kacsacsőrű emlos | melegvérű | nem | igen | igen | igen |
Az emberek, elefántok és delfinek tévesen osztályozódnak, mert a döntési fa az összes téli álmot nem alvó melegvérű gerincest nem-emlősnek osztályozza. A fa azért jut erre az osztályozási döntésre, mert csak egy tanulórekord van ilyen jellemzőkkel, a sas. Ez a példa világosan demonstrálja a rossz előrejelzés veszélyét, amikor nincs elég reprezentatív eset egy döntési fa levélcsúcsaiban.
A modell túlillesztés olyan tanuló algoritmusoknál is
felmerülhet, amelyek a többszörös összehasonlítási eljárásként ismert
módszertant alkalmazzák. Ahhoz, hogy megértsük a többszörös
összehasonlítási eljárást, tekintsük annak előrejelzésének a
feladatát, hogy a tőzsde növekedni vagy csökkenni fog-e a következő
tíz kereskedési napon. Ha egy tőzsdei elemző egyszerű véletlen
találgatásokat tesz, akkor
amely igen valószínűtlennek tűnik.
Tegyük fel, hogy ötven tőzsdei elemző közül egy befektetési tanácsadó kiválasztása iránt érdeklődünk. Stratégiánk az, hogy azt az elemzőt választjuk ki, aki a legtöbb helyes előrejelzést hozza az elkövetkező tíz kereskedési napon. A hiba ebben a stratégiában az, hogy még ha minden elemző véletlenszerű módon jelez előre,
annak a valószínűsége, hogy legalább az egyik közülük legalább nyolc pontos előrejelzést tesz, ami nagyon magas. Bár mindegyik elemző kis valószínűséggel jelez helyesen előre legalább nyolc alkalommal, összekötve őket már nagy valószínűséggel találunk egy olyan elemzőt, aki ezt képes megtenni. Nincs garancia továbbá a jövőben arra, hogy egy ilyen elemző továbbra is pontos előrejelzéseket fog adni véletlenszerű találgatással.
Hogyan kapcsolódik a többszörös összehasonlítási eljárás a
modell túlillesztéshez? Sok tanuló algoritmus független alternatívák
egy
Legyen
Ez a hatás egyre kifejezettebb lesz, ha a tanulórekordok,
ahonnan
Bár a túlillesztés elsődleges oka még mindig vita tárgya, általában egyetértenek abban, hogy a modell bonyolultsága (összetettsége) hatással van a modell túlillesztésre, mint ahogy azt a 4.23. ábra mutatja. A kérdés az, hogyan határozzuk meg a megfelelő modell bonyolultságot? Ideális bonyolultságról akkor beszélünk, ha egy modell a legkisebb általánosítási hibát adja. A probléma az, hogy a tanuló algoritmus csak a tanulórekordokhoz fér hozzá a modell építése során (lásd a 4.3. ábrát). Nem ismeri a teszthalmazt, és így nem tudja, milyen jól fog majd működni a fa olyan rekordokon, amelyeket még sohasem látott. A legjobb, amit tehetünk, hogy megbecsüljük a felépített fa általánosítási hibáját. Ez a szakasz több módszert is ismertet a becslés végrehajtására.
Visszahelyettesítéses becslés használata
A visszahelyettesítéses becslés megközelítés feltételezi, hogy a tanulóhalmaz jól reprezentálja az összes adatot. Következésképpen a tanítási hiba, vagy más néven visszahelyettesítéses hiba használható arra, hogy az általánosítási hiba egy optimista becslését adja. E feltételezés szerint egy döntési fa következtetési algoritmus egyszerűen azt a modellt választja ki, mint végleges modellt, amelyik a legkisebb tanítási hibaarányt adja. A tanítási hiba ugyanakkor általában az általánosítási hiba rossz becslése.
Példa.
Tekintsük a.4.27. ábrán látható bináris döntési fákat.
Tegyük fel, hogy mindkét fát ugyanazok a tanulóadatok generálják,
és mindkettő a többségi osztálynak megfelelően hozza osztályozási
döntéseit minden levélcsúcsban. Megjegyezzük, hogy a
A modell bonyolultságának beépítése
Mint már említettük, a modell túlillesztés esélye nő, amint a modell egyre bonyolultabbá válik. Emiatt inkább az egyszerűbb modelleket részesítjük előnyben. Ez a stratégia a jól ismert Occam borotvája (Occam’s razor) elv vagy a takarékosság elve:
Definíció
(Occam borotvája) Két azonos általánosítási hibájú modell közül az egyszerűbb modellt részesítjük előnyben az összetettebb modellel szemben. Az Occam borotvája egy intuitív elv, mert egy bonyolult modellben a további összetevők a puszta véletlen miatt nagyobb eséllyel fognak illeszkedni. Einstein szavaival: ,,Tegyünk mindent a lehető legegyszerűbbé, de nem egyszerűbbé, mint ami valójában’’. Ezután két módszert mutatunk be a modell bonyolultság beépítésére osztályozási modellek kiértékelésénél.
Pesszimista hibabecslés
Az első megközelítés úgy számolja ki explicit módon az
általánosítási hibát, mint a tanítási hiba és egy, a modell
bonyolultságát leíró büntető tag összege. Az így kapott általánosítási
hiba annak pesszimista hibabecslésének tekinthető. Legyen például
ahol
Példa.
Tekintsük a 4.27. ábrán látható bináris döntési fákat. Ha a
büntető tag
és a jobboldali fa pesszimista hibabecslése
Így a baloldali fa pesszimista hibaaránya jobb, mint a
jobboldali fáé. A bináris fáknál a
Ha
Legrövidebb leíró hossz elve
Egy másik mód a modell bonyolultságának figyelembe vételére a
legrövidebb leíró hosszon vagy MDL (Minimum Description Length) elven
alapuló információelméleti megközelítés. Ezen elv szemléltetésére
tekintsük a 4.28. ábrán látható példát. Ebben a példában A és B
számára egyaránt rekordok egy halmaza adott, ismert
Alternatívaként A dönthet úgy, hogy egy olyan osztályozási
modellt épít, amely az
ahol a jobb oldalon az első tag a modell kódolásának költsége, míg a második tag a tévesen címkézett rekordok kódolásának költségét reprezetálja. Az MDL elv szerint egy olyan modellt kellene keresnünk, amely minimalizálja a teljes költségfüggvényt. A 207. oldalon a 9. feladatban található példa bemutatja, hogyan kell kiszámítani egy döntési fa teljes leíró hosszát.
Becslő statisztikai korlátok
Az általánosítási hiba a tanítási hiba statisztikai korrekciójaként is becsülhető. Mivel az általánosítási hiba hajlamos arra, hogy nagyobb legyen, mint a tanítási hiba, a statisztikai korrekciót általában a tanítási hiba felső korlátjaként számoljuk ki azon tanulórekordok számát figyelembe véve, amelyek egy adott levélcsúcsba kerülnek. A C4.5 döntési fa algoritmus például az egyes levélcsúcsok által elkövetett hibák számáról feltételezi, hogy binomiális eloszlást követ. Az általánosítási hiba kiszámításához a megfigyelt tanítási hiba felső korlátját kell meghatározni, amint azt a következő példa szemlélteti.
4.3. Példa.
Tekintsük a 4.27. ábrán látható bináris döntési fák bal szélső
ágát. Figyeljük meg, hogy
ahol
Validációs halmaz használata
Ennél a megközelítésnél ahelyett, hogy az általánosítási hiba becslésére a tanulóhalmazt használnánk, az eredeti tanulóadatokat két kisebb részhalmazra bontjuk. Az egyik részhalmazt a tanításra használjuk, míg a másikat, az úgynevezett validációs (érvényesítő) halmazt (validation set), használjuk az általánosítási hiba becslésre. Általában a tanulóhalmaz kétharmadát a modellépítésére tartják fenn, míg a fennmaradó egyharmadot használják hibabecslésre.
Ezt a megközelítést általában olyan osztályozási módszereknél használják, amelyek úgy paraméterezhetőek, hogy különböző bonyolultsági szintű modellek adódnak. A legjobb modell bonyolultsága a tanuló algoritmus paraméterének a módosításával becsülhető (például egy döntési fa metszési szintje), míg a tanuló algoritmus által kapott empirikus modell a legalacsonyabb hibaarányt el nem éri a validációs halmazon. Bár ez a megközelítés jobb módot ad annak becslésére, hogy mennyire jól teljesít a modell a korábban nem látott rekordokon, kevesebb adat áll rendelkezésre a tanításra.
Az előző szakaszban számos módszert írtunk le egy osztályozási modell általánosítási hibájának becslésére. Az általánosítási hiba egy megbízható becslése lehetővé teszi, hogy a tanuló algoritmus egy olyan pontos modellt találjon, amely nincs túlillesztve a tanulóadatokon. Ez a szakasz két stratégiát mutat be a modell túlillesztés elkerülésére döntési fa következtetési környezetben.
Előmetszés (prepruning, korai megállási szabály)
Ebben a megközelítésben a faépítő algoritmus megszakad, mielőtt előállítaná azt a teljesen kifejlett fát, amely tökéletesen illeszkedik a teljes tanulóhalmazra. Ehhez szigorúbb megállási feltételt kell alkalmazni, például meg kell állni egy levélcsúcs bővítésével, ha a szennyezettségi mértékben megfigyelt nyereség (vagy a becsült általánosítási hibában való javulás) nem ér el egy bizonyos küszöbértéket. Az az előnye ennek a megközelítésnek, hogy elkerüli olyan túlságosan bonyolult részfák előállítását, amelyek túlillesztődnek a tanulóhalmazon. Mindazonáltal nehéz kiválasztani a megfelelő küszöbértéket a korai leállásra. Túl magas küszöbérték alulillesztett modellt eredményez, míg a túl alacsony küszöbérték nem elegendő ahhoz, hogy úrrá legyünk a modell túlillesztési problémán. Továbbá, még ha nem is kaptunk szignifikáns nyereséget a létező attribútum tesztfeltételek egyikét használva, egy újabb vágás jobb részfát eredményezhet.
Utómetszés (postpruning)
Ebben a megközelítésben a döntési fát először a maximális méretére növeljük. Ezt egy fametszési lépés követi, amely során a teljesen kifejlett fát alulról felfelé haladóan lenyessük. A nyesést megtehetjük úgy, hogy a részfát helyettesítjük (1) egy olyan új levélcsúccsal, amelynek osztálycímkéjét a részfához tartozó rekordok többségi osztálya határozza meg, vagy (2) a részfa leggyakoribb ágával. A fa-metszést akkor fejezzük be, amikor további javulás már nem figyelhető meg. Az utómetszés általában jobb eredményt ad, mint az előmetszés, mert a nyesésről hozott döntés a teljesen kifejlett fán alapszik, ellentétben az előmetszéssel, amely a faépítési folyamat túl korai megszakításától szenved. Ugyanakkor utómetszésnél a teljes fa felépítéséhez szükséges további számítások hiábavalóak lehetnek, amikor a részfát lemetszük.
A 4.29. ábra az egyszerűsített döntési fa modellt szemlélteti
4.3.6. szakaszbeli web-robot észlelő példához. Figyeljük meg, hogy a