AI 101

Wat is Ensemble Learning?

mm

Een van de krachtigste machine learning-technieken is ensemble learning. Ensemblelearning is het gebruik van meerdere machine learning-modellen om de betrouwbaarheid en nauwkeurigheid van voorspellingen te verbeteren. Maar hoe leidt het gebruik van meerdere machine learning-modellen tot nauwkeurigere voorspellingen? Wat voor soort technieken worden gebruikt om ensemble learning-modellen te creëren? We zullen het antwoord op deze vragen onderzoeken, door naar de reden achter het gebruik van ensemble-modellen te kijken en de primaire manieren waarop ensemble-modellen worden gemaakt.

Wat is Ensemble Learning?

Kort gezegd, ensemble learning is het proces van het trainen van meerdere machine learning-modellen en het combineren van hun uitvoer. De verschillende modellen worden gebruikt als basis om één optimaal voorspellend model te creëren. Het combineren van een gevarieerde set van individuele machine learning-modellen kan de stabiliteit van het totale model verbeteren, waardoor nauwkeurigere voorspellingen worden gegenereerd. Ensemble learning-modellen zijn vaak betrouwbaarder dan individuele modellen en komen daarom vaak als eerste in veel machine learning-wedstrijden.
Er zijn verschillende technieken die een ingenieur kan gebruiken om een ensemble learning-model te creëren. Simpele ensemble learning-technieken omvatten dingen als het berekenen van het gemiddelde van de uitvoer van verschillende modellen, terwijl er ook complexere methoden en algoritmen zijn ontwikkeld om de voorspellingen van veel basisleren/modellen samen te voegen.

Waarom Ensemble Trainingsmethoden Gebruiken?

Machine learning-modellen kunnen van elkaar verschillen om verschillende redenen. Verschillende machine learning-modellen kunnen werken met verschillende steekproeven van de populatiegegevens, verschillende modelleringstechnieken kunnen worden gebruikt en een andere hypothese kan worden gebruikt.
Stel je voor dat je een trivia-spel speelt met een grote groep mensen. Als je alleen in een team zit, zijn er ongetwijfeld onderwerpen waar je kennis over hebt en veel onderwerpen waar je geen kennis van hebt. Stel nu dat je in een team speelt met andere mensen. Net als jij, hebben ze kennis over hun eigen specialiteiten en geen kennis van andere onderwerpen. Toch, wanneer je kennis wordt gecombineerd, heb je nauwkeurigere gokjes voor meer velden en neemt het aantal onderwerpen waar je team geen kennis van heeft af. Dit is hetzelfde principe dat ten grondslag ligt aan ensemble learning, het combineren van de voorspellingen van verschillende teamleden (individuele modellen) om de nauwkeurigheid te verbeteren en fouten te minimaliseren.
Statistici hebben aangetoond dat wanneer een menigte mensen wordt gevraagd om de juiste antwoord te raden voor een bepaalde vraag met een reeks mogelijke antwoorden, alle antwoorden een kansverdeling vormen. De mensen die echt het juiste antwoord weten, kiezen het juiste antwoord met vertrouwen, terwijl de mensen die de verkeerde antwoorden kiezen, hun gokjes verdelen over de reeks mogelijke verkeerde antwoorden. Terug naar het voorbeeld van een trivia-spel, als jij en je twee vrienden het juiste antwoord weten is A, zullen alle drie jullie A kiezen, terwijl de drie andere mensen in je team die het antwoord niet weten, waarschijnlijk verkeerd zullen gokken B, C, D of E. Het resultaat is dat A drie stemmen heeft en de andere antwoorden waarschijnlijk slechts één of twee stemmen zullen hebben.
Alle modellen hebben een zekere hoeveelheid fouten. De fouten voor het ene model zullen verschillen van de fouten die door een ander model worden gegenereerd, omdat de modellen zelf om de bovenstaande redenen verschillend zijn. Wanneer alle fouten worden onderzocht, zullen ze niet rond één antwoord of een ander zijn gegroepeerd, maar zullen ze verspreid zijn. De onjuiste gokjes zijn in wezen verspreid over alle mogelijke verkeerde antwoorden en heffen elkaar op. Ondertussen zullen de juiste gokjes van de verschillende modellen rond het juiste, correcte antwoord zijn gegroepeerd. Wanneer ensemble trainingsmethoden worden gebruikt, kan het juiste antwoord met grotere betrouwbaarheid worden gevonden.

Eenvoudige Ensemble Trainingsmethoden

Eenvoudige ensemble trainingsmethoden omvatten meestal alleen het toepassen van statistische samenvattingsTechnieken, zoals het bepalen van de modus, mediaan of gewogen gemiddelde van een reeks voorspellingen.
Modus verwijst naar het meest voorkomende element binnen een reeks getallen. Om de modus te bepalen, retourneren de individuele leermodellen hun voorspellingen en worden deze voorspellingen beschouwd als stemmen voor de finale voorspelling. Het bepalen van het gemiddelde van de voorspellingen gebeurt eenvoudigweg door het rekenkundig gemiddelde van de voorspellingen te berekenen, afgerond op het dichtstbijzijnde gehele getal. Ten slotte kan een gewogen gemiddelde worden berekend door verschillende gewichten toe te kennen aan de modellen die worden gebruikt om voorspellingen te maken, waarbij de gewichten de percipieerde importantie van dat model vertegenwoordigen. De numerieke weergave van de klassevoorspelling wordt vermenigvuldigd met een gewicht van 0 tot 1,0, de individuele gewogen voorspellingen worden vervolgens opgeteld en het resultaat wordt afgerond op het dichtstbijzijnde gehele getal.

Geavanceerde Ensemble Trainingsmethoden

Er zijn drie primaire geavanceerde ensemble trainingsTechnieken, elk ontworpen om een specifiek type machine learning-probleem aan te pakken. “Bagging”-technieken worden gebruikt om de variantie van een models voorspellingen te verlagen, waarbij variantie verwijst naar hoeveel het resultaat van voorspellingen verschilt wanneer deze zijn gebaseerd op dezelfde observatie. “Boosting”-technieken worden gebruikt om de bias van modellen te bestrijden. Ten slotte wordt “stacking” gebruikt om voorspellingen in het algemeen te verbeteren.
Ensemble learning-methoden kunnen over het algemeen worden onderverdeeld in een van twee verschillende groepen: sequentiële methoden en parallele ensemble-methoden.
Sequentiële ensemble-methoden krijgen de naam “sequentieel” omdat de basisleren/modellen sequentieel worden gegenereerd. In het geval van sequentiële methoden is het essentiële idee dat de afhankelijkheid tussen de basisleren wordt uitgebuit om nauwkeurigere voorspellingen te krijgen. Foutief gelabelde voorbeelden krijgen hun gewichten aangepast, terwijl correct gelabelde voorbeelden dezelfde gewichten behouden. Elke keer dat een nieuwe leerder wordt gegenereerd, worden de gewichten veranderd en (hopelijk) verbetert de nauwkeurigheid.
In tegenstelling tot sequentiële ensemble-modellen, genereren parallele ensemble-methoden de basisleren in parallel. Wanneer parallele ensemble learning wordt uitgevoerd, is het idee om de onafhankelijkheid van de basisleren uit te buiten, aangezien de algemene foutkoers kan worden verlaagd door de voorspellingen van de individuele lerenden te middelen.
Ensemble trainingsmethoden kunnen homogeen of heterogeen van aard zijn. De meeste ensemble learning-methoden zijn homogeen, wat betekent dat ze één type basisleermodel/algoritme gebruiken. In tegenstelling tot heterogene ensembles, die gebruikmaken van verschillende leer-algoritmen, diversifiëren en variëren de lerenden om ervoor te zorgen dat de nauwkeurigheid zo hoog mogelijk is.

Voorbeelden van Ensemble Learning-Algoritmen

Visualisatie van ensemble boosting. Foto: Sirakorn via Wikimedia Commons, CC BY SA 4.0, (https://commons.wikimedia.org/wiki/File:Ensemble_Boosting.svg)


Blogger en programmeur met specialisaties in Machine Learning en Deep Learning onderwerpen. Daniel hoopt anderen te helpen de kracht van AI te gebruiken voor het sociale goede.