Az Ensemble Machine Learning algoritmusok használata a Wekában

Ensemble algoritmusok a gépi tanulási algoritmusok hatékony osztálya, amelyek több modellből származó előrejelzéseket kombinálnak. A Weka gépi tanulás használatának előnye, hogy sokféle együttes gépi tanulási algoritmus áll rendelkezésre.

Együttes algoritmusok áttekintése

Körbejárjuk az öt legfontosabb öt gépi tanulási algoritmusok Wekában. Minden lefedett algoritmust röviden ismertetünk a működésük szempontjából, kiemeljük a legfontosabb algoritmus paramétereket, valamint magát az algoritmust a Weka Explorer felületen mutatjuk be.

Az 5 algoritmus, amely megnézzük a következőket:

  1. zsákolás
  2. véletlenszerű erdő
  3. AdaBoost
  4. szavazás
  5. halmozás

Az egyes algoritmusok bemutatásához egy szokásos gépi tanulási osztályozási problémát fognak használni. Pontosabban az ionoszféra bináris osztályozási problémája. Ez egy jó adatkészlet az osztályozási algoritmusok bemutatására, mivel a bemeneti változók numerikusak és mindegyikük azonos skálával rendelkezik, a problémának csak két osztálya van megkülönböztetésre.

Mindegyik példány leírja a légkörből és a feladat megjósolni, hogy van-e szerkezet az ionoszférában, vagy sem. 34 numerikus bemeneti változó van, általában azonos skálával. Tudjon meg többet erről az adatkészletről az UCI Machine Learning Repository oldalon. A legjobb eredmények 98% -os pontosságúak.

Indítsa el a Weka Explorer alkalmazást:

  1. nyissa meg a Weka GUI Chooser alkalmazást.
  2. Kattintson az „Explorer ”Gombot a Weka Explorer megnyitásához.
  3. Töltse be az Ionosphere adatkészletet az data / ionosphere.arff fájlból
  4. Kattintson a„ Classify ”gombra a Classify fül megnyitásához .

1. Bagging

A Bootstrap Aggregation vagy a Bagging for röviden olyan együttes algoritmus, amely osztályozáshoz vagy regresszióhoz használható. A Bootstrap egy statisztikai becslési technika, ahol egy statisztikai mennyiséget, mint egy átlagot, az adatok több véletlenszerű mintája alapján becsülünk meg (cserével). Hasznos technika, ha korlátozott mennyiségű adat áll rendelkezésre, és érdekli a statisztikai mennyiség erőteljesebb becslése.

Ez a mintaelv használható a gépi tanulási modelleknél. Az edzésadatok több véletlenszerű mintáját kicserélik és több különböző gépi tanulási modell betanítására használják. Ezután minden modellt felhasználnak egy előrejelzéshez, és az eredményeket átlagoljuk, hogy megbízhatóbb előrejelzést kapjunk.

Legjobb olyan modelleknél használni, amelyek alacsony torzítással és nagy szórással rendelkeznek, vagyis az általuk készített előrejelzések nagymértékben függenek azoktól a konkrét adatoktól, amelyekből képezték őket. A zsákolás leggyakrabban használt algoritmusa, amely megfelel a nagy szórás követelményének, a döntési fák.

Válassza ki a zsákolási algoritmust:

  1. Kattintson a „Select” gombra és válassza a „Bagging” lehetőséget a „meta” csoport alatt.
  2. Kattintson az algoritmus nevére az algoritmus konfigurációjának áttekintéséhez.
Weka konfiguráció a csomagolási algoritmushoz

A csomagolás kulcsfontosságú konfigurációs paramétere a csomagolandó modell típusa . Az alapértelmezett a REPTree, amely egy szabványos döntési fa Weka-implementációja, más néven röviden Classification and Regression Tree vagy CART. Ezt az osztályozó paraméter adja meg.

Az egyes véletlenszerű minták méretét a „bagSizePercent” adja meg, amely a nyers oktatási adatkészlet százalékos aránya. Az alapértelmezett érték 100%, amely új, véletlen mintát hoz létre, ugyanolyan méretű, mint az edzés adatkészlete, de más összetételű lesz.

Ennek az az oka, hogy a véletlenszerű mintát helyettesítéssel készítik, ami azt jelenti, hogy minden alkalommal egy példányt véletlenszerűen kiválasztanak a képzési adatkészletből, és hozzáadják a mintához, és visszahelyezik a képzési adatkészletbe is, ami azt jelenti, hogy újra kiválasztható, és kétszer vagy többször hozzáadható a mintához. a táskák számát (és az osztályozók számát) a „numIterations” paraméterben lehet megadni. Az alapértelmezett érték 10, bár általában több száz vagy ezer értéket használunk. Növelje tovább a „numIterations” értékét, amíg már nem lát javulást a modellben, vagy elfogy a memória.

  1. Kattintson az „OK” gombra az algoritmus-konfiguráció bezárásához.
  2. Kattintson a „Start” gombra az algoritmus futtatásához az Ionosphere adatkészleten.

Láthatja, hogy az alapértelmezett konfigurációval a csomagolás 91% -os pontosságot ér el:

Weka osztályozási eredmények a csomagolási algoritmushoz

2.Véletlen erdő

A Véletlen erdő a döntési fák zsákolásának kiterjesztése, amely osztályozáshoz vagy regresszióhoz használható. A zsákos döntési fák alsó oldala az, hogy a döntési fákat mohó algoritmus segítségével állítják össze, amely kiválasztja a fa felépítésének minden egyes lépésében a legjobb hasítási pontot. Mint ilyen, a kapott fák végül nagyon hasonlítanak, ami csökkenti az összes zsák jóslatainak szórását, ami viszont rontja az előrejelzések robusztusságát.

A Véletlen Erdő javulás a zsákos döntési fáknál. megzavarja a kapzsi hasítási algoritmust a fa létrehozása során, így a hasítási pontok csak a bemeneti attribútumok véletlenszerű részhalmazából választhatók ki. Ennek az egyszerű változásnak nagy hatása lehet, ha csökkenti a zsákos fák közötti hasonlóságot, és ennek eredményeként a kapott jóslatok következnek.

Válassza ki a véletlenszerű erdei algoritmust:

  1. kattintson a „Kiválasztás” gombra gombra, és válassza a „fák” csoportban a „RandomForest” lehetőséget.
  2. Kattintson az algoritmus nevére az algoritmus konfigurációjának áttekintéséhez.
Weka konfiguráció a Véletlen Erdei Algoritmushoz

A felsorolt ​​paraméterek mellett fent a zsákoláshoz, a véletlenszerű erdő kulcsfontosságú paramétere az egyes osztási pontokban figyelembe veendő attribútumok száma. A Wekában ezt a „numFeatures” attribútummal lehet szabályozni, amely alapértelmezés szerint 0, ami automatikusan kiválasztja az értéket az alapszabály alapján.

  1. Kattintson az „OK” gombra a algoritmus konfiguráció.
  2. Kattintson a „Start” gombra az algoritmus futtatásához az Ionosphere adatkészleten.

Láthatja, hogy az alapértelmezett konfigurációval a véletlenszerű erdők elérik a pontosságot. 92% -ból:

Weka osztályozási eredmények a véletlenszerű erdei algoritmushoz

3. AdaBoost

Az AdaBoost egy csoportos gépi tanulási algoritmus osztályozási problémákra. Ez része az együttes módszereknek, az úgynevezett boostolásnak, amely új gépi tanulási modelleket ad hozzá egy sorozathoz, ahol a későbbi modellek megpróbálják kijavítani a korábbi modellek által elkövetett előrejelzési hibákat. Az AdaBoost volt az első ilyen típusú modell implementációja.

Az Adaboost rövid döntési fa modellek használatára készült, mindegyiknek egyetlen döntési pontja volt. Az ilyen rövid fákat gyakran döntési tuskóknak nevezik.

Az első modellt a normál módon állítják össze. A képzési adatkészlet minden példányát súlyozzák, és a súlyokat frissítik a modell általános pontossága és annak alapján, hogy egy példányt helyesen osztályoztak-e vagy sem. A későbbi modelleket addig oktatják és adják hozzá, amíg el nem érik a minimális pontosságot, vagy további fejlesztések nem lehetségesek. Minden modell a készségei alapján van súlyozva, és ezeket a súlyokat használják, amikor az összes modell előrejelzéseit új adatokra kombinálják.

Válassza ki az AdaBoost algoritmust:

  1. Kattintson a A „Kiválasztás” gombra, majd a „meta” csoportban válassza az „AdaBoostM1” lehetőséget.
  2. Kattintson az algoritmus nevére az algoritmus konfigurációjának áttekintéséhez. “>

Weka konfiguráció az AdaBoost algoritmushoz

A gyenge tanuló az AdaBoost modellt az osztályozó paraméterrel lehet megadni. Az alapértelmezett a döntéscsonk algoritmus, de más algoritmusok is használhatók. a gyenge tanuló mellett kulcsfontosságú paraméter a sorozatban létrehozandó és hozzáadandó modellek száma. Ez megadható a „numIterations” paraméterben, és alapértelmezés szerint 10.

  1. Kattintson az „OK” gombra az algoritmus konfigurációjának bezárásához.
  2. A futtatáshoz kattintson a „Start” gombra az Ionosphere adatkészlet algoritmusa.

Láthatja, hogy az alapértelmezett konfigurációval az AdaBoost 90% -os pontosságot ér el:

Weka osztályozási eredmények az AdaBoost algoritmushoz

4. Szavazás

A szavazás talán a legegyszerűbb együttes algoritmus, és gyakran nagyon hatékony. Használható osztályozási vagy regressziós problémákra. A szavazás két vagy több almodell létrehozásával működik. Minden almodell előrejelzéseket készít, amelyek valamilyen módon kombinálódnak, például az előrejelzés átlagának vagy módjának megadásával, lehetővé téve az egyes almodellek számára, hogy szavazzanak arról, mi legyen az eredmény.

Válassza ki a Szavazás algoritmus:

  1. Kattintson a „Választ” gombra, és válassza a „Szavazás” lehetőséget a „meta” csoport alatt.
  2. Kattintson az algoritmus nevére az algoritmus konfigurációjának áttekintéséhez.
Weka konfiguráció a szavazóegyüttes algoritmusához

A Szavazat együttes legfontosabb paramétere az almodellek kiválasztása. A modellek megadhatók a Wekában a „osztályozók” paraméterben.Erre a paraméterre kattintva számos osztályozót adhat hozzá:

Weka algoritmus kiválasztása a szavazóegyüttes algoritmushoz

Ha a kiválasztott osztályozóval rákattint a „Szerkesztés” gombra, konfigurálhatja az osztályozó adatait. Az almodellek kiválasztásának célja az olyan modellek kiválasztása, amelyek meglehetősen eltérő előrejelzéseket (korrelálatlan előrejelzéseket) tesznek. Mint ilyen, jó alapszabály nagyon különböző modelltípusok kiválasztása, például fák, példányalapú módszerek, függvények és így tovább.

A szavazáshoz konfigurálandó másik kulcsparaméter az, hogy a almodelleket kombinálják. Ezt a „combinationRule” paraméter vezérli, amely úgy van beállítva, hogy alapértelmezés szerint vegye a valószínűségek átlagát.

  1. Kattintson az „OK” gombra az algoritmus konfigurációjának bezárásához.
  2. Kattintson a „Start” gombra kattintva futtathatja az algoritmust az Ionosphere adatkészleten.

Láthatja, hogy az alapértelmezett konfigurációval a Szavazás 64% -os pontosságot ér el. Nyilvánvaló, hogy ez a technika gyenge eredményeket ért el, mert csak a ZeroR almodellt választották ki.

5. Halmozás

A halmozott általánosítás vagy a rövidre halmozás a szavazóegyüttesek egyszerű kiterjesztése, amely osztályozási és regressziós problémákra használható.

Több almodell kiválasztása mellett a halmozás lehetővé teszi, hogy egy másik modell meghatározása, hogy megtanulják, hogyan lehet a legjobban kombinálni az almodellekből származó előrejelzéseket. Mivel a metamodell az almodellek előrejelzésének legjobb kombinálására szolgál, ezt a technikát néha keverésnek nevezik, akárcsak a jóslatok összekeverésében.

Válassza a Halmozás algoritmust: > Kattintson a „Kiválasztás” gombra, majd a „meta” csoport alatt válassza a „Halmozás” lehetőséget.

  • Kattintson az algoritmus nevére az algoritmus konfigurációjának áttekintéséhez.
  • Weka konfiguráció a halmozó együttes algoritmushoz

    A Szavazás osztályozóhoz hasonlóan az almodelleket is megadhatja az osztályozók paraméterben. Az a modell, amelyet megtanulnak megtanulni, hogyan lehet az almodellből származó előrejelzéseket a legjobban kombinálni, a „metaClassifier” paraméterben határozható meg, amely alapértelmezés szerint ZeroR értékre van állítva. Gyakran lineáris algoritmust, például lineáris regressziót vagy logisztikai regressziót használnak a regresszióhoz, illetve a besorolás típusú problémákhoz. Ezzel olyan kimenetet lehet elérni, amely az almodellek jóslatainak egyszerű lineáris kombinációja.

    1. Az algoritmus konfiguráció bezárásához kattintson az „OK” gombra.
    2. Kattintson a „Start” gomb az algoritmus futtatásához az Ionosphere adatkészleten.

    Láthatja, hogy az alapértelmezett konfigurációval a Stacking 64% -os pontosságot ér el:

    Weka osztályozási eredmények a halmozó együttes algoritmushoz

    Ismét , ugyanaz, mint a szavazás, a Stacking gyenge eredményeket ért el, mert csak a ZeroR almodellt választották ki.

    Vélemény, hozzászólás?

    Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük