Ensemble Learning Methods for Deep Learning Neural Networks

Tweet Share Share Share

Last Updated on Augusztus 6, 2019

How to Improve Performance By Combination Predictions From Multiple Models.

A mélyen tanuló neurális hálózatok nemlineáris módszerek.

Nagyobb rugalmasságot kínálnak, és a rendelkezésre álló képzési adatok mennyiségével arányosan skálázhatók. Ennek a rugalmasságnak az a hátránya, hogy sztochasztikus képzési algoritmuson keresztül tanulnak, ami azt jelenti, hogy érzékenyek a képzési adatok sajátosságaira, és minden egyes képzési alkalommal más-más súlykészletet találhatnak, ami viszont más-más előrejelzéseket eredményez.

Ezt általában úgy nevezik, hogy a neurális hálózatoknak nagy a szórása, és ez frusztráló lehet, amikor megpróbáljuk kialakítani a végső modellt, amelyet előrejelzések készítéséhez használhatunk.

A neurális hálózati modellek szórásának csökkentésére sikeres megközelítés, ha egyetlen modell helyett több modellt képzünk ki, és e modellek előrejelzéseit kombináljuk. Ezt nevezik ensemble-tanulásnak, és nemcsak a jóslatok szórását csökkenti, hanem olyan jóslatokat is eredményezhet, amelyek jobbak, mint bármelyik egyedi modell.

Ebben a bejegyzésben olyan módszereket ismerhet meg, amelyekkel a mélytanuló neurális hálózatok csökkenthetik a szórást és javíthatják az előrejelzések teljesítményét.

A bejegyzés elolvasása után tudni fogja:

  • A neurális hálózati modellek nemlineárisak és nagy varianciával rendelkeznek, ami frusztráló lehet, amikor egy végleges modellt készítünk előrejelzések készítéséhez.
  • Az együttes tanulás több neurális hálózati modell előrejelzéseit egyesíti, hogy csökkentse az előrejelzések varianciáját és csökkentse az általánosítási hibát.
  • Az ensemble-tanulás technikái csoportosíthatók a változó elem, például a képzési adatok, a modell és az előrejelzések kombinálásának módja szerint.

Kezdje el projektjét új könyvemmel, a Better Deep Learning cíművel, amely lépésről lépésre bemutató útmutatókat és az összes példa Python forráskódfájlját tartalmazza.

Kezdjük el.

Ensemble Methods to Reduce Variance and Improve Performance of Deep Learning Neural Networks

Ensemble Methods to Reduce Variance and Improve Performance of Deep Learning Neural Networks
Photo by University of San Francisco’s Performing Arts, some rights reserved.

Overview

This tutorial is divided into four parts; they are:

  1. High Variance of Neural Network Models
  2. Reduce Variance Using an Ensemble of Models
  3. How to Ensemble Neural Network Models
  4. Summary of Ensemble Techniques

High Variance of Neural Network Models

Training deep neural networks can be very computationally expensive.

Very deep networks trained on millions of examples may take days, weeks, and sometimes months to train.

A Google alapmodellje egy mély konvolúciós neurális hálózat volt, amelyet körülbelül hat hónapig képeztek aszinkron sztochasztikus gradiens leszállással, nagyszámú magon.

– Distilling the Knowledge in a Neural Network, 2015.

Ennyi idő és erőforrás befektetése után nincs garancia arra, hogy a végleges modellnek alacsony lesz az általánosítási hibája, jól teljesít a képzés során nem látott példákon.

… sok különböző jelölt hálózatot képezni, majd kiválasztani a legjobbat, a többit pedig elvetni. Egy ilyen megközelítésnek két hátránya van. Először is, a fennmaradó hálózatok képzésével járó összes erőfeszítés kárba vész. Másodszor, a validációs halmazon legjobb teljesítményt nyújtó hálózat nem biztos, hogy az új tesztadatokon is a legjobb teljesítményt nyújtja.

– Pages 364-365, Neural Networks for Pattern Recognition, 1995.

A neurális hálózati modellek nemlineáris módszer. Ez azt jelenti, hogy képesek összetett, nemlineáris összefüggések megtanulására az adatokban. Ennek a rugalmasságnak az a hátránya, hogy érzékenyek a kezdeti feltételekre, mind a kezdeti véletlen súlyok, mind a képzési adathalmazban lévő statisztikai zaj tekintetében.

A tanulási algoritmusnak ez a sztochasztikus jellege azt jelenti, hogy minden egyes alkalommal, amikor egy neurális hálózati modellt betanítunk, a bemenetek és kimenetek közötti leképező függvénynek egy kissé (vagy drámaian) eltérő változatát tanulhatja meg, ami viszont eltérő teljesítményt nyújt a gyakorló és a visszatartott adathalmazokon.

A neurális hálózatra úgy is gondolhatunk, mint egy olyan módszerre, amely alacsony torzítással és nagy szórással rendelkezik. Még ha nagy adatkészleteken képezzük is ki a magas variancia kielégítésére, akkor is frusztráló lehet, ha bármilyen variancia van a végső modellben, amelyet előrejelzések készítésére kívánunk használni.

Jobb eredményeket szeretne elérni a mélytanulással?

Vegye fel most az ingyenes 7 napos e-mailes gyorstalpaló tanfolyamomat (mintakóddal).

Kattintson a feliratkozáshoz, és a tanfolyam ingyenes PDF Ebook változatát is megkapja.

Töltse le az INGYENES minitanfolyamát

Modellek együttesének használatával csökkenthetjük a szórást

A neurális hálózatok nagy szórására az a megoldás, hogy több modellt képezünk ki, és kombináljuk az előrejelzéseiket.

Az ötlet az, hogy több jó, de különböző modell előrejelzéseit kombináljuk.

A jó modellnek van képessége, ami azt jelenti, hogy az előrejelzései jobbak a véletlennél. Fontos, hogy a modelleknek különböző módon kell jónak lenniük; különböző előrejelzési hibákat kell produkálniuk.

A modellátlagolás azért működik, mert a különböző modellek általában nem ugyanazt a hibát produkálják a tesztkészleten.

– 256. oldal, Deep Learning, 2016.

A több neurális hálózat előrejelzéseinek kombinálása hozzáad egy torzítást, amely viszont ellensúlyozza az egyetlen betanított neurális hálózati modell varianciáját. Az eredmény olyan előrejelzések, amelyek kevésbé érzékenyek a képzési adatok sajátosságaira, a képzési séma megválasztására és az egyetlen képzési futtatás szerencséjére.

Az előrejelzés varianciájának csökkentése mellett az együttes jobb előrejelzéseket is eredményezhet, mint bármelyik egyetlen legjobb modell.

… egy bizottság teljesítménye jobb lehet, mint az elszigetelten használt egyetlen legjobb hálózat teljesítménye.

– 365. oldal, Neural Networks for Pattern Recognition, 1995.

Ez a megközelítés az “ensemble learning” elnevezésű módszerek általános osztályába tartozik, amely olyan módszereket ír le, amelyek az ugyanazon problémára készített több modell előrejelzéseit próbálják a legjobban kihasználni.

Az ensemble-tanulás általában azt jelenti, hogy egynél több hálózatot képeznek ki ugyanazon az adathalmazon, majd a képzett modellek mindegyikét felhasználják egy-egy előrejelzés elkészítéséhez, mielőtt az előrejelzéseket valamilyen módon kombinálják a végeredmény vagy előrejelzés elkészítéséhez.

A modellek összevonása valójában az alkalmazott gépi tanulás standard megközelítése annak biztosítására, hogy a lehető legstabilabb és legjobb előrejelzés szülessen.

Alex Krizhevsky, et al. például az “Imagenet classification with deep convolutional neural networks” című híres 2012-es tanulmányukban, amely nagyon mély konvolúciós neurális hálózatokat mutatott be a fényképek osztályozására (azaz az AlexNet-et), több jól teljesítő CNN-modell átlagolását alkalmazta, hogy elérje az akkori legkorszerűbb eredményeket. Az egy modell teljesítményét két, öt és hét különböző modellre átlagolt együttes előrejelzésekkel hasonlították össze.

Öt hasonló CNN előrejelzéseinek átlagolása 16,4%-os hibaarányt eredményezett. Két, a fent említett öt CNN-nel előzetesen betanított CNN előrejelzéseinek átlagolása 15,3%-os hibaarányt ad.

A gépi tanulási versenyek győztesei is az ensemblinget alkalmazzák.

A másik hatékony technika, amellyel a lehető legjobb eredményeket érhetjük el egy feladatban, a modell ensembling. Ha megnézzük a gépi tanulási versenyeket, különösen a Kaggle-on, láthatjuk, hogy a győztesek nagyon nagy modellegyütteseket használnak, amelyek elkerülhetetlenül legyőzik bármelyik egyedi modellt, legyen az bármilyen jó.

– Page 264, Deep Learning With Python, 2017.

How to Ensemble Neural Network Models

A neurális hálózatok talán legrégebbi és még mindig leggyakrabban használt ensembling megközelítése az úgynevezett “hálózatok bizottsága”.”

Az azonos konfigurációjú és különböző kezdeti véletlen súlyokkal rendelkező hálózatok gyűjteményét ugyanazon az adathalmazon képzik ki. Ezután minden egyes modellt előrejelzésre használnak, és a tényleges előrejelzést az előrejelzések átlagaként számítják ki.

A modellek számát az együttesben gyakran alacsonyan tartják, egyrészt a modellek képzésével járó számítási költségek miatt, másrészt pedig azért, mert az együttes további tagjainak hozzáadásával csökken a teljesítmény. Az együttesek lehetnek akár három, öt vagy tíz képzett modellből is.

Az együttes tanulás területe jól tanulmányozott, és ennek az egyszerű témának számos változata létezik.

Segítő lehet, ha az együttes módszer három fő elemének variálására gondolunk; például:

  • Képzési adatok: Változtassa az ensemble egyes modelljeinek képzéséhez használt adatok kiválasztását.
  • Ensemble modellek: Az ensemble-ban használt modellek kiválasztásának variálása.
  • Kombinációk: Az együttes tagjainak eredményei kombinálási módjának megválasztása.

Változtassuk az egyes elemeket sorban.

A képzési adatok változtatása

Az együttes egyes tagjainak képzéséhez használt adatok variálhatók.

A legegyszerűbb megközelítés az lenne, ha k-szoros kereszt-validációt használnánk a választott modellkonfiguráció általánosítási hibájának becslésére. Ebben az eljárásban k különböző modellt képezünk a képzési adatok k különböző részhalmazán. Ez a k modell ezután elmenthető és egy együttes tagjaként használható.

Egy másik népszerű megközelítés a képzési adathalmaz cserével történő újramintázását, majd a hálózat képzését az újramintázott adathalmaz felhasználásával. Az újramintázási eljárás azt jelenti, hogy az egyes gyakorlóadathalmazok összetétele eltérő, a duplikált példák lehetőségével, ami lehetővé teszi, hogy az adathalmazon betanított modell kissé eltérő várakozással rendelkezzen a minták sűrűségét illetően, és ezáltal eltérő általánosítási hibát eredményezzen.

Ezt a megközelítést bootstrap aggregációnak, vagy röviden baggingnek nevezik, és nagy szórással és alacsony torzítással rendelkező, nem metszett döntési fákkal való használatra tervezték. Általában nagyszámú döntési fát használnak, például több százat vagy ezret, tekintettel arra, hogy gyorsan elkészíthetők.

… egy statisztikai tanulási módszer szórásának csökkentésének és ezáltal előrejelzési pontosságának növelésének természetes módja, hogy sok gyakorlóhalmazt vesznek a populációból, minden gyakorlóhalmazból külön előrejelzési modellt készítenek, és az így kapott előrejelzéseket átlagolják. Ez persze nem praktikus, mert általában nem férünk hozzá több gyakorlóhalmazhoz. Ehelyett bootstrapelhetünk, azaz ismételt mintákat veszünk a (egyetlen) képzési adathalmazból.

– Pages 216-317, An Introduction to Statistical Learning with Applications in R, 2013.

Egy ezzel egyenértékű megközelítés lehet a képzési adathalmaz egy kisebb részhalmazának használata regularizáció nélkül, hogy gyorsabb képzést és némi túlillesztést tegyünk lehetővé.

A kissé aluloptimalizált modellek iránti vágy általánosabban is érvényes az ensemble-tagok kiválasztására.

… a tagokat egyenként nem úgy kell kiválasztani, hogy optimális legyen az előfeszítés és a variancia közötti kompromisszum, hanem viszonylag kisebb előfeszítéssel kell rendelkezniük, mivel az extra variancia átlagolással eltávolítható.

– Page 366, Neural Networks for Pattern Recognition, 1995.

Egy másik megközelítésben kiválaszthatjuk a bemeneti tér egy véletlenszerű altérét, amelyet az egyes modellekhez rendelünk, például a bemeneti tér hipertérfogatának egy részhalmazát vagy a bemeneti jellemzők egy részhalmazát.

Ensemble Tutorials

A képzési adatokat variáló mélytanulási együttesek példáit lásd:

  • How to Develop a Random-Split, Cross-Validation, and Bagging Ensemble for Deep Learning

Variáló modellek

Az azonos alulszabályozott modell ugyanazon adatokon, különböző kezdeti feltételekkel történő képzése a probléma nehézsége és a tanulási algoritmus sztochasztikus jellege miatt különböző modelleket eredményez.

Ez azért van, mert a hálózat által megoldani kívánt optimalizálási probléma olyan nagy kihívást jelent, hogy sok “jó” és “különböző” megoldás létezik a bemenetek kimenetekhez való hozzárendelésére.

A legtöbb neurális hálózati algoritmus kifejezetten a szuboptimális helyi minimumok túl nagy száma miatt ér el szuboptimális teljesítményt. Ha a lokális minimumokhoz konvergáló neurális hálózatok egy halmazát vesszük, és átlagolást alkalmazunk, akkor egy javított becslést állíthatunk elő. Ezt a tényt úgy érthetjük meg, ha figyelembe vesszük, hogy általában a különböző lokális minimumokba esett hálózatok a jellemzőtér különböző régióiban rosszul fognak teljesíteni, és így hibatereik nem lesznek erősen korreláltak.

– Amikor a hálózatok nem értenek egyet: Ensemble methods for hybrid neural networks, 1995.

Ez csökkentheti a varianciát, de nem biztos, hogy drámaian javítja az általánosítási hibát. A modellek által elkövetett hibák még mindig túl nagymértékben korrelálhatnak, mivel a modellek mind hasonló leképezési függvényeket tanultak.

Egy alternatív megközelítés lehet az egyes ensemble-modellek konfigurációjának variálása, például különböző kapacitású hálózatok (pl. rétegek vagy csomópontok száma) vagy különböző feltételek (pl. tanulási sebesség vagy regularizáció) mellett képzett modellek használata.

Az eredmény olyan modellekből álló ensemble lehet, amelyek a leképezési függvények heterogénebb gyűjteményét tanulták meg, és így kisebb korrelációt mutatnak előrejelzéseik és előrejelzési hibáik között.

A véletlenszerű inicializálás, a minitételek véletlenszerű kiválasztása, a hiperparaméterek eltérései vagy a neurális hálózatok nem determinisztikus implementációinak eltérő eredményei gyakran elegendőek ahhoz, hogy az együttes különböző tagjai részben független hibákat kövessenek el.

– Pages 257-258, Deep Learning, 2016.

Az eltérő konfigurációjú modellek ilyen együttesét a hálózat fejlesztésének és a hiperparaméterek hangolásának szokásos folyamatával lehet elérni. Minden egyes modellt el lehet menteni e folyamat során, és a jobb modellek egy részhalmazát ki lehet választani az ensemble összeállításához.

A legtöbb tuningalgoritmus ingyenes mellékterméke a gyengébben képzett hálózatok; kívánatos az ilyen extra példányok használata még akkor is, ha teljesítményük jelentősen rosszabb, mint a legjobbnak talált teljesítmény. Még mindig jobb teljesítmény érhető el az ensemble osztályozás gondos tervezésével, a legjobb elérhető paraméterek használatával és a rendelkezésre álló adatbázis különböző részhalmazain történő különböző példányok betanításával.

– Neural Network Ensembles, 1990.

Azokban az esetekben, amikor egyetlen modell betanítása heteket vagy hónapokat vesz igénybe, egy másik alternatíva lehet a legjobb modell időszakos mentése a betanítási folyamat során, az úgynevezett pillanatfelvétel vagy ellenőrzőpont modellek, majd az ensemble tagjainak kiválasztása a mentett modellek közül. Ez azt az előnyt nyújtja, mintha több modellt képeznénk ugyanazokon az adatokon, bár azokat egyetlen képzési folyamat során gyűjtöttük.

A snapshot Ensembling egyetlen képzési folyamatból pontos és változatos modellek együttesét állítja elő. A Snapshot Ensembling középpontjában egy optimalizálási folyamat áll, amely több helyi minimumot is meglátogat, mielőtt konvergál egy végső megoldáshoz. Ezekben a különböző minimumokban pillanatfelvételeket készítünk a modellekről, és a tesztidőszakban átlagoljuk az előrejelzéseiket.

– Snapshot Ensembles: Train 1, get M for free, 2017.

A Snapshot ensemble egyik változata az, hogy a modelleket egy sor epochából mentjük el, amelyeket esetleg a modell teljesítményének tanulási görbéinek áttekintésével azonosíthatunk a tréning és a validációs adathalmazokon a képzés során. Az ilyen összefüggő modellsorozatokból álló együtteseket horizontális együtteseknek nevezzük.

Először is kiválasztjuk a viszonylag stabil epochatartományra képzett hálózatokat. Az egyes címkék valószínűségére vonatkozó előrejelzéseket a standard osztályozók a kiválasztott epochára állítják elő, majd átlagolják őket.

– Horizontális és vertikális ensemble mély reprezentációval osztályozáshoz, 2013.

A pillanatfelvételes ensemble további továbbfejlesztése, hogy a képzés során szisztematikusan variáljuk az optimalizációs eljárást, hogy különböző megoldásokat (azaz súlykészleteket) kényszerítsünk ki, amelyek közül a legjobbakat ellenőrzőpontokba menthetjük. Ez magában foglalhatja egy oszcilláló mennyiségű zaj bejuttatását a képzési epochák során, vagy a tanulási sebesség oszcillálását a képzési epochák során. Ennek a megközelítésnek az SGDR (Stochastic Gradient Descent with Warm Restarts) nevű változata gyorsabb tanulást és a legkorszerűbb eredményeket mutatott a szabványos fényképosztályozási feladatok esetében.

A mi SGDR-ünk a meleg újraindításokat szimulálja a tanulási sebesség ütemezésével, hogy nagyjából két-négyszer gyorsabban érjen el versenyképes eredményeket. Az SGDR-rel új csúcsteljesítményeket is elértünk, főként azáltal, hogy még szélesebb körű és együttes pillanatfelvételeket használtunk az SGDR pályájáról.

– SGDR: Stochastic Gradient Descent with Warm Restarts, 2016.

A nagyon mély neurális hálózatok előnye, hogy a köztes rejtett rétegek biztosítják az alacsony felbontású bemeneti adatok megtanult reprezentációját. A rejtett rétegek közvetlenül kiadhatják belső reprezentációikat, és egy nagyon mély hálózat egy vagy több rejtett rétegének kimenete egy új osztályozási modell bemeneteként használható. Ez talán akkor a leghatékonyabb, ha a mély modellt autoencoder modellel képzik. Az ilyen típusú ensemble-t vertikális ensemble-nek nevezik.

Ez a módszer olyan osztályozók sorozatát ensembleli, amelyek bemenetei a köztes rétegek reprezentációi. Alacsonyabb hibaarány várható, mivel ezek a jellemzők változatosnak tűnnek.

– Horizontal and vertical ensemble with deep representation for classification, 2013.

Ensemble Tutorials

Példákat a modelleket variáló mélytanulási együttesekre lásd:

  • Hogyan fejlesszünk ki egy pillanatkép-együttest mélytanuláshoz
  • Hogyan fejlesszünk horizontális szavazóegyüttest mélytanuláshoz

Változó kombinációk

Az előrejelzések kombinálásának legegyszerűbb módja, ha az együttes tagjainak előrejelzéseinek átlagát számítjuk ki.

Ez némileg javítható az egyes modellek előrejelzéseinek súlyozásával, ahol a súlyok optimalizálása egy hold-out validációs adathalmaz segítségével történik. Ez egy súlyozott átlagos ensemble-t eredményez, amelyet néha modellkeverésnek neveznek.

… elvárhatjuk, hogy a bizottság egyes tagjai jellemzően jobb előrejelzéseket adjanak, mint a többi tag. Ezért azt várnánk, hogy még tovább tudjuk csökkenteni a hibát, ha egyes bizottsági tagoknak nagyobb súlyt adunk, mint másoknak. Így egy olyan általánosított bizottsági előrejelzést tekintünk, amelyet a tagok előrejelzéseinek súlyozott kombinációja ad …

– 367. oldal, Neural Networks for Pattern Recognition, 1995.

A komplexitás egyik további lépése, hogy egy új modell segítségével megtanuljuk, hogyan lehet az egyes együttes tagok előrejelzéseit a legjobban kombinálni.

A modell lehet egy egyszerű lineáris modell (pl. a súlyozott átlaghoz hasonlóan), de lehet egy kifinomult nemlineáris módszer is, amely az egyes tagok által adott előrejelzések mellett az adott bemeneti mintát is figyelembe veszi. Az új modell tanulásának ezt az általános megközelítését modellhalmozásnak vagy halmozott általánosításnak nevezzük.

A halmozott általánosítás az általánosító(k) torzításainak levezetésével működik egy megadott tanulási halmazzal kapcsolatban. Ez a levezetés egy második térben történő általánosítással történik, amelynek bemenetei (például) az eredeti általánosítók találgatásai, amikor a tanulási halmaz egy részével tanítják őket, és megpróbálják kitalálni a halmaz többi részét, és amelynek kimenete (például) a helyes találgatás. Egyetlen általánosítóval használva a halmozott általánosítás egy olyan séma, amely egy adott tanulási halmazon betanított, majd egy adott kérdéssel feltett általánosító hibájának becslésére (majd korrekciójára) szolgál.

– Halmozott általánosítás, 1992.

A modellek halmozására vannak kifinomultabb módszerek, például a boosting, ahol az ensemble tagjait egyesével adjuk hozzá, hogy korrigáljuk a korábbi modellek hibáit. A hozzáadott bonyolultság miatt ezt a megközelítést ritkábban alkalmazzák nagy neurális hálózati modellek esetén.

Egy másik, kissé eltérő kombináció több azonos szerkezetű neurális hálózat súlyainak kombinálása. Több hálózat súlyai átlagolhatók, így remélhetőleg egy új, egyetlen modellt kapunk, amely összességében jobb teljesítményt nyújt, mint bármelyik eredeti modell. Ezt a megközelítést modellsúlyok átlagolásának nevezzük.

… azt sugallja, hogy ígéretes ezeket a pontokat átlagolni a súlytérben, és egy olyan hálózatot használni, amely ezeket az átlagolt súlyokat használja, ahelyett, hogy a hálózatok kimeneteinek a modelltérben való átlagolásával alkotnánk egy együttest

– Averaging Weights Leads to Wider Optima and Better Generalization, 2018.

Ensemble Tutorials

A kombinációkat variáló mélytanulási együttesek példáit lásd:

  • How to Develop a Model Averaging Ensemble for Deep Learning
  • How to Develop a Weighted Average Ensemble for Deep Learning
  • How to Develop a Stacking Ensemble for Deep Learning
  • How to Create a Polyak-Ruppert Ensemble for Deep Learning

Summary of Ensemble Techniques

Összefoglalva, we can list some of the more common and interesting ensemble methods for neural networks organized by each element of the method that can be varied, as follows:

  • Varying Training Data
    • k-fold Cross-Validation Ensemble
    • Bootstrap Aggregation (bagging) Ensemble
    • Random Training Subset Ensemble
  • Varying Models
    • Multiple Training Run Ensemble
    • Hyperparameter Tuning Ensemble
    • Snapshot Ensemble
    • Horizontal Epochs Ensemble
    • Vertical Representational Ensemble
  • Varying Combinations
    • Model Averaging Ensemble
    • Weighted Average Ensemble
    • Stacked Generalization (stacking) Ensemble
    • Boosting Ensemble
    • Model Weight Averaging Ensemble

There is no single best ensemble method; perhaps experiment with a few approaches or let the constraints of your project guide you.

Further Reading

This section provides more resources on the topic if you are looking to go deeper.

Books

  • Section 9.6 Committees of networks, Neural Networks for Pattern Recognition, 1995.
  • Section 7.11 Bagging and Other Ensemble Methods, Deep Learning, 2016.
  • Section 7.3.3 Model ensembling, Deep Learning With Python, 2017.
  • Section 8.2 Bagging, Random Forests, Boosting, An Introduction to Statistical Learning with Applications in R, 2013.

Papers

  • Neural Network Ensembles, 1990.
  • Neural Network Ensembles, Cross Validation, and Active Learning, 1994.
  • When networks disagree: Ensemble methods for hybrid neural networks, 1995.
  • Snapshot Ensembles: Train 1, get M for free, 2017.
  • SGDR: Stochastic Gradient Descent with Warm Restarts, 2016.
  • Horizontal and vertical ensemble with deep representation for classification, 2013.
  • Stacked generalization, 1992.
  • Averaging Weights Leads to Wider Optima and Better Generalization, 2018.

Articles

  • Ensemble learning, Wikipedia.
  • Bootstrap aggregating, Wikipedia.
  • Boosting (machine learning), Wikipedia.

Summary

In this post, you discovered ensemble methods for deep learning neural networks to reduce variance and improve prediction performance.

Specifically, you learned:

  • Neural network models are nonlinear and have a high variance, which can be frustrating when preparing a final model for making predictions.
  • Az ensemble-tanulás több neurális hálózati modell előrejelzéseit kombinálja, hogy csökkentse az előrejelzések szórását és az általánosítási hibát.
  • Az ensemble-tanulás technikái csoportosíthatók a változó elem, például a képzési adatok, a modell és az előrejelzések kombinálásának módja szerint.

Kérdése van?
Tegye fel kérdéseit az alábbi megjegyzésekben, és én igyekszem válaszolni.

Tervezz jobb Deep Learning modelleket még ma!

Better Deep Learning

Tréning gyorsabban, csökkentse a túlfuttatást és az Ensembles

…mindössze néhány sor python kóddal

Fedezze fel, hogyan az új Ebookomban:
Better Deep Learning

Ez önképző tananyagokat tartalmaz olyan témákról, mint:
súlycsökkenés, kötegnormalizálás, kiesés, modellhalmozás és még sok más…

Vezessen jobb mélytanulást a projektjeibe!

Hagyja ki az akadémikusokat. Just Results.

See What’s Inside

Tweet Share Share

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

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