Čarolija učenja u ansamblu

Hej Habr! Pozivamo inženjere podataka i stručnjake za strojno učenje na besplatnu demo lekciju “Izlaz ML modela u industrijsko okruženje na primjeru online preporuka”. Objavljujemo i članak Luca Monno - voditelj financijske analitike u CDP SpA.

Jedna od najkorisnijih i najjednostavnijih metoda strojnog učenja je učenje u ansamblu. Ensemble Learning je metoda iza XGBoost, Bagging, Random Forest i mnogih drugih algoritama.

Ima mnogo sjajnih članaka na Towards Data Science, ali ja sam odabrao dvije priče (prvo и drugi) što mi se najviše svidjelo. Zašto onda napisati još jedan članak o EL? Jer ti želim pokazati kako to funkcionira s jednostavnim primjerom, zbog čega sam shvatio da ovdje nema nikakve magije.

Kada sam prvi put vidio EL na djelu (rad s nekim vrlo jednostavnim regresijskim modelima) nisam mogao vjerovati svojim očima, a još uvijek se sjećam profesora koji me učio ovoj metodi.

Imao sam dva različita modela (dva slaba algoritma za obuku) s metrikom izvan uzorka R² jednako 0,90 odnosno 0,93. Prije nego sam pogledao rezultat, mislio sam da ću dobiti R² negdje između dvije izvorne vrijednosti. Drugim riječima, vjerovao sam da se EL može upotrijebiti kako bi model radio ne tako loše kao najgori model, ali ne tako dobro kao najbolji model.

Na moje veliko iznenađenje, jednostavno izračunavanje prosjeka predviđanja dalo je R² od 0,95. 

Prvo sam počeo tražiti grešku, ali onda sam pomislio da se ovdje možda krije neka magija!

Što je ansambl učenje

S EL-om možete kombinirati predviđanja dvaju ili više modela kako biste proizveli robusniji i učinkovitiji model. Postoje mnoge metodologije za rad s uzornim ansamblima. Ovdje ću se dotaknuti dva najkorisnija kako bih dao pregled.

S regresija moguće je izračunati prosjek performansi dostupnih modela.

S klasifikacija Modelima možete dati mogućnost odabira etiketa. Oznaka koja se najčešće bira je ona koju će odabrati novi model.

Zašto EL radi bolje

Glavni razlog zašto EL ima bolju izvedbu je taj što svako predviđanje ima pogrešku (znamo to iz teorije vjerojatnosti), kombiniranje dvaju predviđanja može pomoći u smanjenju pogreške i stoga poboljšati metriku izvedbe (RMSE, R², itd.). d.).

Sljedeći dijagram prikazuje kako dva slaba algoritma rade na skupu podataka. Prvi algoritam ima veći nagib od potrebnog, dok drugi ima gotovo nulu (vjerojatno zbog pretjerane regularizacije). Ali ansambl pokazuje mnogo bolje rezultate. 

Ako pogledate indikator R², tada će za prvi i drugi algoritam treninga biti jednak -0.01¹, odnosno 0.22, dok će za ansambl biti jednak 0.73.

Čarolija učenja u ansamblu

Mnogo je razloga zašto algoritam može biti loš model čak i na osnovnom primjeru kao što je ovaj: možda ste odlučili upotrijebiti regularizaciju kako biste izbjegli pretjerano prilagođavanje, ili ste odlučili ne isključiti neke anomalije, ili ste možda koristili polinomsku regresiju i pogriješili stupnja (na primjer, koristili smo polinom drugog stupnja, a testni podaci pokazuju jasnu asimetriju za koju bi treći stupanj bio prikladniji).

Kada EL radi bolje

Pogledajmo dva algoritma učenja koji rade s istim podacima.

Čarolija učenja u ansamblu

Ovdje možete vidjeti da kombiniranje dvaju modela nije puno poboljšalo performanse. U početku, za dva algoritma treninga, R² indikatori bili su jednaki -0,37 odnosno 0,22, a za ansambl se pokazalo da je -0,04. Odnosno, model EL dobio je prosječnu vrijednost pokazatelja.

Međutim, postoji velika razlika između ova dva primjera: u prvom su primjeru pogreške modela bile negativno korelirane, au drugom su bile pozitivno korelirane (koeficijenti triju modela nisu procijenjeni, već su jednostavno odabrani od strane autor kao primjer.)

Stoga se učenje ansambla može koristiti za poboljšanje ravnoteže pristranosti/varijance u svakom slučaju, ali kada Pogreške modela nisu u pozitivnoj korelaciji, korištenje EL može dovesti do poboljšane izvedbe.

Homogeni i heterogeni modeli

Vrlo često se EL koristi na homogenim modelima (kao u ovom primjeru ili slučajnoj šumi), ali zapravo možete kombinirati različite modele (linearna regresija + neuronska mreža + XGBoost) s različitim skupovima objašnjavajućih varijabli. To će vjerojatno rezultirati nekoreliranim pogreškama i poboljšanom izvedbom.

Usporedba s diverzifikacijom portfelja

EL funkcionira slično diverzifikaciji u teoriji portfelja, ali tim bolje za nas. 

Prilikom diverzifikacije pokušavate smanjiti varijancu svoje izvedbe ulaganjem u nekorelirane dionice. Dobro diverzificiran portfelj dionica imat će bolje rezultate od najgorih pojedinačnih dionica, ali nikada bolje od najboljih.

Da citiram Warrena Buffetta: 

"Diverzifikacija je obrana od neznanja; nekome tko ne zna što radi, to [diverzifikacija] nema mnogo smisla."

U strojnom učenju, EL pomaže smanjiti varijancu vašeg modela, ali može rezultirati modelom s ukupnom izvedbom boljom od najboljeg izvornog modela.

Sumirati

Kombiniranje više modela u jedan je relativno jednostavna tehnika koja može dovesti do rješavanja problema pristranosti varijance i poboljšanja izvedbe.

Ako imate dva ili više modela koji dobro rade, nemojte birati između njih: koristite ih sve (ali s oprezom)!

Jeste li zainteresirani za razvoj u ovom smjeru? Prijavite se za besplatnu demo lekciju “Izlaz ML modela u industrijsko okruženje na primjeru online preporuka” i sudjelovati u online sastanak s Andrejem Kuznjecovim — Inženjer strojnog učenja u Mail.ru Group.

Izvor: www.habr.com

Dodajte komentar