mi a túltöltés a gépi tanulásban és hogyan kerülhető el?

a gépi tanulási modell felépítése nem csak az adatok táplálásáról szól, sok olyan hiányosság van, amely befolyásolja bármely modell pontosságát. Overfitting a gépi tanulásban az egyik ilyen hiányosság a gépi tanulásban, amely akadályozza a modell pontosságát és teljesítményét. A cikk a következő témákkal foglalkozik:

  • mi a túlmunka a gépi tanulásban?
  • példák a Túltöltésre
  • jel vs zaj
  • mi az Alulszerelés?
  • hogyan lehet észlelni a túlcsordulást?
  • hogyan kerülhető el a gépi tanulás során a túlcsordulás
  • mi a jó illeszkedés?
  • az elfogultság és a variancia közötti kompromisszum

mi a túltöltés a gépi tanulásban?

azt mondják, hogy egy statisztikai modell túl van táplálva, ha a szükségesnél sokkal több adatot táplálunk be. Ahhoz, hogy relatívvá váljon, képzelje el, hogy megpróbál beleférni a túlméretezett ruházatba.

overfitting in machine learning - edureka

amikor egy modell elfér több adatot, mint amire valójában szüksége van, elkezdi elkapni a zajos adatokat és pontatlan értékeket az adatokban. Ennek eredményeként csökken a modell hatékonysága és pontossága. Vessünk egy pillantást néhány példát overfitting annak érdekében, hogy megértsük, hogyan történik valójában.

példák a Túltöltésre

1. példa

Ha az egyszerű lineáris regresszió példáját vesszük figyelembe, az adatok képzése arról szól, hogy megtudjuk a minimális költséget a legjobb illeszkedési vonal és az adatpontok között. Számos iteráción megy keresztül, hogy megtudja az optimális legjobb illeszkedést, minimalizálva a költségeket. Ez az, ahol overfitting jön a képbe.

lineáris regresszió - túltöltés a gépi tanulásban - edureka

a fenti képen látható vonal nagyon hatékony eredményt adhat egy új adatpont számára. Túltöltés esetén, amikor az adatkészleten futtatjuk a képzési algoritmust, minden egyes iterációval csökkentjük a költségeket.

ennek az algoritmusnak a túl hosszú futtatása csökkentett költséget jelent, de illeszkedik az adatkészlet zajos adataihoz is. Az eredmény úgy néz ki, mint az alábbi grafikonon.

túltöltés a gépi tanulásban - edureka

Ez hatékonynak tűnhet, de nem igazán. Egy olyan algoritmus fő célja, mint a lineáris regresszió, hogy megtalálja a domináns trendet, és ennek megfelelően illeszkedjen az adatpontokhoz. De ebben az esetben a vonal minden adatponthoz illeszkedik, ami nem releváns a modell hatékonysága szempontjából az új belépési adatpontok optimális eredményeinek előrejelzésében.

most tekintsünk egy leíróbb példát egy problémamegállapítás segítségével.

2. példa

Problémamegállapítás: Fontolja meg, hogy meg akarjuk jósolni, hogy egy futballista a Tier 1 futballklubban fog-e helyet szerezni a Tier 2 bajnokságban elért jelenlegi teljesítménye alapján.

most képzeljük el, hogy 10 000 ilyen játékossal edzünk és illesztjük a modellt. Amikor megpróbáljuk megjósolni az eredményt az eredeti adathalmazon, tegyük fel, hogy 99% – os pontosságot kaptunk. De egy másik adatkészlet pontossága körülbelül 50 százalék. Ez azt jelenti, hogy a modell nem általánosítható jól a képzési adatainkból és a láthatatlan adatokból.

Ez az, amit overfitting néz ki. Ez egy nagyon gyakori probléma a gépi tanulásban, sőt az adattudományban is. Most értsük meg a jelet és a zajt.

jel vs zaj

a prediktív modellezésben a jel a valódi mögöttes mintára utal, amely segíti a modellt az adatok megismerésében. Másrészt a zaj irreleváns és véletlenszerű adat az adatkészletben. A zaj és a jel fogalmának megértéséhez Vegyünk egy valós példát.

tegyük fel, hogy a felnőttek körében szeretnénk modellezni az életkor vs.írástudást. Ha a lakosság nagyon nagy részét mintavételezzük, egyértelmű kapcsolatot fogunk találni. Ez a jel, míg a zaj zavarja a jelet. Ha ugyanezt tesszük egy helyi lakossággal, a kapcsolat sáros lesz. A kiugró értékek és a véletlenszerűség hatással lenne rá, például egy felnőtt Korán járt iskolába,vagy néhány felnőtt nem engedhette meg magának az oktatást stb.

a zajról és a jelről beszélve a gépi tanulás szempontjából egy jó gépi tanulási algoritmus automatikusan elválasztja a jeleket a zajtól. Ha az algoritmus túl bonyolult vagy nem hatékony, akkor megtanulhatja a zajt is. Ezért a modell túlfeszítése. Értsük meg a gépi tanulás alulteljesítését is.

mi az Alulszerelés?

a túltöltés elkerülése érdekében egy korábbi szakaszban leállíthatjuk az edzést. De ez azt is eredményezheti, hogy a modell nem képes eleget tanulni a képzési adatokból, hogy nehezen tudja megragadni a domináns tendenciát. Ez az úgynevezett underfitting. Az eredmény ugyanaz, mint a túltöltés, az eredmények előrejelzésének hatékonysága.

underfitting - overfitting in machine learning - edureka

most, hogy megértettük, mi is valójában az alulfitting és a túlfitting a gépi tanulásban, próbáljuk megérteni, hogyan észlelhetjük a Túlfittinget a gépi tanulásban.

hogyan lehet észlelni a túlcsordulást?

a túltöltés fő kihívása az, hogy modellünk teljesítményének pontosságát új adatokkal becsüljük meg. Nem tudnánk megbecsülni a pontosságot, amíg ténylegesen nem teszteljük.

a probléma megoldása érdekében a kezdeti adatkészletet külön képzési és tesztadatkészletekre oszthatjuk. Ezzel a technikával valóban megközelíthetjük, hogy modellünk mennyire fog teljesíteni az új adatokkal.

értsük meg ezt egy példával, képzeljük el, hogy 90+ százalékos pontosságot kapunk az edzőkészleten, és 50 százalékos pontosságot a tesztkészleten. Ezután automatikusan piros zászló lenne a modell számára.

a túltöltés észlelésének másik módja az, ha egy egyszerűsített modellel kezdjük, amely referenciaértékként szolgál.

ezzel a megközelítéssel, ha bonyolultabb algoritmusokat próbál meg, meg tudja érteni, hogy a további komplexitás még a modell számára is érdemes-e vagy sem. Occam borotvatesztként is ismert, alapvetően két modell esetében az egyszerűsített modellt választja összehasonlítható teljesítmény esetén. Bár a túlcsordulás észlelése jó gyakorlat, de számos módszer létezik a túlcsordulás megelőzésére is. Vessünk egy pillantást arra, hogyan tudjuk megakadályozni a gépi tanulásban a túlcsordulást.

hogyan kerülhető el a túlcsordulás a gépi tanulásban?

az alábbiakban felsorolunk számos technikát a gépi tanulás túlzott mértékű elkerülésére.

  1. keresztellenőrzés

  2. képzés több adattal

  3. funkciók eltávolítása

  4. korai leállítás

  5. Regularizáció

  6. együttes

1. Cross-Validation

az egyik legerősebb funkciók elkerülése/megakadályozása overfitting kereszt-validálás. Ennek az az ötlete, hogy az alapképzési adatokat felhasználja mini vonat-teszt-felosztások előállításához, majd ezeket a felosztásokat használja a modell hangolásához.

egy szabványos k-szeres validálás során az adatokat k-részhalmazokra osztják fel, más néven redők. Ezt követően az algoritmust iteratív módon kiképzik a k-1 hajtásokon, miközben a fennmaradó hajtásokat tesztkészletként használják, más néven holdout fold.

cross-validation - overfitting in machine learning - edurekaa cross-validation segít nekünk, hogy a hiperparamétereket csak az eredeti képzési készlettel hangoljuk be. Alapvetően külön tartja a tesztkészletet, mint valódi láthatatlan adatkészletet a végső modell kiválasztásához. Ezért, elkerülve overfitting összesen.

2. Képzés több adattal

lehet, hogy ez a technika nem működik minden alkalommal, amint azt a fenti példában is tárgyaltuk, ahol a jelentős populációval rendelkező képzés segíti a modellt. Alapvetően segít a modellnek a jel jobb azonosításában.

de bizonyos esetekben a megnövekedett adatok azt is jelenthetik, hogy több zajt adnak a modellnek. Amikor a modellt több adattal képezzük, meg kell győződnünk arról, hogy az adatok tiszták és véletlenszerűségektől és következetlenségektől mentesek.

3. Funkciók eltávolítása

bár egyes algoritmusok automatikusan kiválasztják a funkciókat. Azok jelentős része számára, akik nem rendelkeznek beépített funkcióválasztással, manuálisan eltávolíthatunk néhány irreleváns funkciót a bemeneti szolgáltatásokból az általánosítás javítása érdekében.

ennek egyik módja az, ha arra a következtetésre jutunk, hogy egy funkció hogyan illeszkedik a modellbe. Nagyon hasonlít a kód soronkénti hibakereséséhez.

abban az esetben, ha egy funkció nem tudja megmagyarázni a modell relevanciáját, egyszerűen azonosíthatjuk ezeket a funkciókat. Még néhány funkcióválasztási heurisztikát is használhatunk egy jó kiindulóponthoz.

4. Korai leállítás

amikor a modell edz, az egyes iterációk alapján ténylegesen megmérheti, hogy a modell milyen jól teljesít. Ezt addig tehetjük, amíg az iterációk javítják a modell teljesítményét. Ezt követően a modell túllépi a képzési adatokat, mivel az általánosítás minden iteráció után gyengül.

korai leállítás - túltöltés a gépi tanulásban - edureka

tehát alapvetően a korai leállítás azt jelenti, hogy leállítjuk a képzési folyamatot, mielőtt a modell átmegy azon a ponton, ahol a modell elkezdi túlfit a képzési adatokat. Ezt a technikát leginkább a mély tanulásban használják.

5. Regularization

Ez alapvetően azt jelenti, mesterségesen kényszerítve a modell, hogy egyszerűbb segítségével szélesebb körű technikák. Ez teljesen attól függ, hogy milyen típusú tanulót használunk. Például metszhetünk egy döntési fát, használhatunk egy lemorzsolódást egy neurális hálózaton, vagy hozzáadhatunk egy büntetési paramétert a költségfüggvényhez regresszióban.

a Szabályozás gyakran hiperparaméter is. Ez azt jelenti, hogy keresztellenőrzéssel is hangolható.

6. Ensembling

Ez a technika alapvetően egyesíti a különböző gépi tanulási modellek előrejelzéseit. Az együttesek két leggyakoribb módszerét az alábbiakban soroljuk fel:

  • a modellek túlcsordulásának esélyének csökkentésére irányuló kísérletek

  • az egyszerűbb modellek prediktív rugalmasságának javítására irányuló kísérletek növelése

annak ellenére, hogy mindkettő együttes módszer, a megközelítés teljesen ellentétes irányból indul ki. A Bagging komplex alapmodelleket használ, és megpróbálja elsimítani előrejelzéseiket, míg a boosting egyszerű alapmodelleket használ, és megpróbálja növelni összesített összetettségét.

mi a jó illeszkedés?

a statisztikai modellezésben az illeszkedés jósága arra utal, hogy az eredmények vagy az előre jelzett értékek mennyire felelnek meg a megfigyelt vagy valós értékeknek. Az a modell, amely a jel helyett zajt tanult, túl van táplálva, mert illeszkedik a képzési adatkészlethez, de az új adatkészlettel gyengébb hatékonyságú lesz.

az elfogultság és a variancia közötti kompromisszum

mind a variancia, mind az elfogultság a előrejelzési hiba formái a gépi tanulásban. A nagy szórás és a nagy torzítás közötti kompromisszum nagyon fontos fogalom a statisztikákban és a gépi tanulásban. Ez egy olyan koncepció, amely az összes felügyelt gépi tanulási algoritmust érinti.

az elfogultság-variancia kompromisszum nagyon jelentős hatással van a komplexitás, az alulfitting és a túlfitting meghatározására bármely gépi tanulási modell esetében.

torzítás

Ez nem más, mint a modell előrejelzett értékei és a tényleges vagy valós értékek közötti különbség. A modell nem mindig könnyű megtanulni a meglehetősen összetett jelekből.

képzeljük el, hogy egy lineáris regressziót illesztünk egy nemlineáris adatokkal rendelkező modellhez. Nem számít, mennyire hatékonyan tanulja meg a modell a megfigyeléseket, nem fogja hatékonyan modellezni a görbéket. Ez az úgynevezett underfitting.

variancia

arra utal, hogy a modell érzékeny a képzési adatok meghatározott halmazaira. A nagy varianciájú algoritmus olyan bizarr modellt fog előállítani, amely drasztikusan eltér a képzési készlettől.

Képzeljünk el egy algoritmust, amely illeszkedik a korlátlan és szuper-rugalmas modell, akkor is tanulni a zaj a képzési készlet okozó overfitting.

Bias-Variance Trade-off

a gépi tanulási algoritmus nem tekinthető egyszeri módszernek a modell képzésére, hanem ismétlődő folyamat.

alacsony variancia-a nagy torzítású algoritmusok kevésbé összetettek, egyszerű és merev szerkezetűek.

  • a konzisztens, de átlagosan pontatlan modelleket fogják kiképezni.

  • Ezek közé tartoznak a lineáris vagy parametrikus algoritmusok, például regresszió, naiv Bayes stb.

nagy variancia-az alacsony torzítású algoritmusok általában összetettebbek, rugalmas szerkezetűek.

  • képzik azokat a modelleket, amelyek következetlenek, de átlagosan pontosak.

  • Ezek közé tartoznak a nemlineáris vagy nem parametrikus algoritmusok, például döntési fák, legközelebbi szomszéd stb.

Ez elvezet minket a végén ezt a cikket, ahol megtanultuk Overfitting a gépi tanulás és a különböző technikákat, hogy elkerüljék azt. Remélem, hogy tisztában van mindazokkal, amelyeket megosztottak veled ebben az oktatóanyagban.

Ha relevánsnak találta ezt a cikket a “gépi tanulásban való túlmunka” témában, nézze meg az Edureka Machine Learning Certification Training-et, egy megbízható online tanulási céget, amelynek hálózata több mint 250 000 elégedett tanuló szerte a világon.

azért vagyunk itt, hogy segítsünk Önnek az utazás minden lépésében, és olyan tantervet állítsunk elő, amelyet olyan diákok és szakemberek számára terveztek, akik gépi tanulási mérnökként szeretnének lenni. A kurzus célja, hogy előnyt nyújtson a Python programozáshoz, és felkészítse Önt mind az alapvető, mind a fejlett Python koncepciókra, valamint a különböző gépi tanulási algoritmusokra, mint például az SVM, a döntési fa stb.

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

Az e-mail-címet nem tesszük közzé.