Die magie van ensemble-leer

Haai Habr! Ons nooi Data-ingenieurs en Masjienleer-spesialiste uit na 'n gratis Demo-les "Uitvoer van ML-modelle in 'n industriële omgewing deur die voorbeeld van aanlyn aanbevelings te gebruik". Ons publiseer ook die artikel Luca Monno - Hoof van Finansiële Analise by CDP SpA.

Een van die nuttigste en eenvoudigste masjienleermetodes is Ensemble Learning. Ensemble Learning is die metode agter XGBoost, Bagging, Random Forest en baie ander algoritmes.

Daar is baie wonderlike artikels oor Towards Data Science, maar ek het twee stories gekies (1 и 2) waarvan ek die meeste gehou het. So hoekom skryf nog 'n artikel oor EL? Want ek wil jou wys hoe dit werk met 'n eenvoudige voorbeeld, wat my laat verstaan ​​het dat hier geen towerkrag is nie.

Toe ek die eerste keer EL in aksie sien (werk met 'n paar baie eenvoudige regressiemodelle) kon ek my oë nie glo nie, en ek onthou nog die professor wat my hierdie metode geleer het.

Ek het twee verskillende modelle (twee swak opleidingsalgoritmes) met metrieke gehad buite monster R² gelyk aan 0,90 en 0,93, onderskeidelik. Voordat ek na die resultaat kyk, het ek gedink ek sal 'n R² iewers tussen die twee oorspronklike waardes kry. Met ander woorde, ek het geglo dat EL gebruik kan word om 'n model nie so swak te laat presteer as die swakste model nie, maar nie so goed as wat die beste model kan presteer nie.

Tot my groot verbasing het die gemiddelde van die voorspellings 'n R² van 0,95 opgelewer. 

Ek het eers na die fout begin soek, maar toe dink ek dat daar dalk 'n magie hier skuil!

Wat is Ensemble Learning

Met EL kan jy die voorspellings van twee of meer modelle kombineer om 'n meer robuuste en meer werkende model te produseer. Daar is baie metodologieë om met model-ensembles te werk. Hier sal ek die twee nuttigstes aanraak om 'n oorsig te gee.

Met regressie dit is moontlik om die prestasie van beskikbare modelle te gemiddelde.

Met klassifikasie Jy kan modelle die geleentheid gee om etikette te kies. Die etiket wat die meeste gekies is, is die een wat deur die nuwe model gekies sal word.

Waarom EL beter werk

Die hoofrede waarom EL beter presteer, is dat elke voorspelling 'n fout het (ons weet dit uit waarskynlikheidsteorie), die kombinasie van twee voorspellings kan help om die fout te verminder, en dus prestasiemaatstawwe verbeter (RMSE, R², ens.). d.).

Die volgende diagram wys hoe twee swak algoritmes op 'n datastel werk. Die eerste algoritme het 'n groter helling as wat nodig is, terwyl die tweede byna nul het (moontlik as gevolg van oorregularisering). Maar ensemble toon baie beter resultate. 

As jy na die R²-aanwyser kyk, sal dit vir die eerste en tweede opleidingsalgoritme onderskeidelik gelyk wees aan -0.01¹, 0.22, terwyl dit vir die ensemble gelyk sal wees aan 0.73.

Die magie van ensemble-leer

Daar is baie redes waarom 'n algoritme 'n slegte model kan wees, selfs op 'n basiese voorbeeld soos hierdie: miskien het jy besluit om regularisering te gebruik om ooraanpassing te vermy, of jy het besluit om sommige anomalieë nie uit te sluit nie, of dalk het jy polinoomregressie gebruik en die verkeerde graad (byvoorbeeld, ons het 'n polinoom van die tweede graad gebruik, en die toetsdata toon 'n duidelike asimmetrie waarvoor die derde graad beter geskik sou wees).

Wanneer EL beter werk

Kom ons kyk na twee leeralgoritmes wat met dieselfde data werk.

Die magie van ensemble-leer

Hier kan jy sien dat die kombinasie van die twee modelle nie werkverrigting veel verbeter het nie. Aanvanklik, vir die twee opleidingsalgoritmes, was die R²-aanwysers gelyk aan -0,37 en 0,22, onderskeidelik, en vir die ensemble was dit -0,04. Dit wil sê, die EL-model het die gemiddelde waarde van die aanwysers ontvang.

Daar is egter 'n groot verskil tussen hierdie twee voorbeelde: in die eerste voorbeeld was die modelfoute negatief gekorreleer, en in die tweede was hulle positief gekorreleer (die koëffisiënte van die drie modelle is nie beraam nie, maar is bloot gekies deur die skrywer as voorbeeld.)

Daarom kan Ensemble Learning gebruik word om die vooroordeel/variansie balans in elk geval te verbeter, maar wanneer Modelfoute is nie positief gekorreleer nie, die gebruik van EL kan lei tot verbeterde werkverrigting.

Homogene en heterogene modelle

Baie dikwels word EL op homogene modelle gebruik (soos in hierdie voorbeeld of ewekansige woud), maar in werklikheid kan jy verskillende modelle (lineêre regressie + neurale netwerk + XGBoost) met verskillende stelle verduidelikende veranderlikes kombineer. Dit sal waarskynlik lei tot ongekorreleerde foute en verbeterde werkverrigting.

Vergelyking met portefeuljediversifikasie

EL werk soortgelyk aan diversifikasie in portefeuljeteorie, maar soveel te beter vir ons. 

Wanneer jy diversifiseer, probeer jy om die variansie van jou prestasie te verminder deur in ongekorreleerde aandele te belê. ’n Goed gediversifiseerde portefeulje van aandele sal beter presteer as die swakste individuele aandeel, maar nooit beter as die beste nie.

Om Warren Buffett aan te haal: 

"Diversifikasie is 'n verdediging teen onkunde; vir iemand wat nie weet wat hy doen nie, maak dit [diversifikasie] baie min sin."

In masjienleer help EL om die variansie van jou model te verminder, maar dit kan lei tot 'n model met algehele prestasie beter as die beste oorspronklike model.

Som op

Die kombinasie van veelvuldige modelle in een is 'n relatief eenvoudige tegniek wat kan lei tot die oplossing van die probleem van afwykingsvooroordeel en die verbetering van prestasie.

As jy twee of meer modelle het wat goed werk, moenie tussen hulle kies nie: gebruik hulle almal (maar met omsigtigheid)!

Stel u belang om in hierdie rigting te ontwikkel? Teken in vir 'n gratis Demo-les "Uitvoer van ML-modelle in 'n industriële omgewing deur die voorbeeld van aanlyn aanbevelings te gebruik" en deelneem aan aanlyn ontmoeting met Andrey Kuznetsov — Masjienleer-ingenieur by Mail.ru Group.

Bron: will.com

Voeg 'n opmerking