Labākā AutoML ietvara izvēle

Četru automātisko mašīnu apguves shēmu salīdzinājums galvu pret galvu 87 datu kopās.

Aditija Balaji un Aleksandrs Allens

Ievads

Automātiskā mašīnu apguve (AutoML) varētu AI sasniegt daudz plašākai auditorijai. Tas nodrošina instrumentu kopumu, lai palīdzētu datu zinātnes komandām ar atšķirīgu pieredzes līmeni paātrināt datu zinātnes procesu. Tieši tāpēc AutoML tiek pieminēts kā risinājums AI demokratizēšanai. Pat ar pieredzējušu komandu jūs varētu izmantot AutoML, lai maksimāli izmantotu ierobežotos resursus. Lai gan ir patentēti risinājumi, kas nodrošina mašīnmācību kā pakalpojumu, ir vērts aplūkot pašreizējos atvērtā pirmkoda risinājumus, kas risina šo vajadzību.

Iepriekšējā rakstā mēs izpētījām AutoML ainavu un izcelām dažus iepakojumus, kas varētu darboties datu zinātnes komandām. Šajā rakstā mēs izpētīsim četrus pieminētos “pilna cauruļvada” risinājumus: auto_ml, auto-sklearn, TPOT un H2O AutoML risinājums.

Katra komplekta stiprās un vājās puses ir sīki aprakstītas mūsu rakstā “Automātisko mašīnu apguves ietvarstruktūru noteikšana”. Darbā ir arī papildu informācija par metodiku un daži papildu rezultāti.

Metodika

Lai nodrošinātu precīzu un godīgu novērtējumu, no OpenML - tiešsaistes repozitorija, kas nodrošina standarta mašīnmācīšanās datu kopas, kuras konsekventi pakļautas REST API, tika izvēlētas 87 atvērtās datu kopas, 30 regresijas un 57 klasifikācijas. Datu kopu sadalījums nodrošina plašu tabulas datu kopu paraugu, ko var atrast biznesa mašīnmācīšanās problēmā. Liela uzmanība tika veltīta datu kopu izvēlei, lai novērstu validācijas kopu piesārņošanu. Piemēram, auto-sklearn izmanto silto sākumu, kas jau ir apmācīts OpenML datu kopu komplektā. Tādas datu kopas kā šīs tika izvairītas.

Katru no četriem ietvariem, auto_ml, auto-sklearn, TPOT un H2O, pārbaudīja ar ieteiktajiem parametriem, izmantojot 10 nejaušas sēklas katrā datu kopā. Par klasifikācijas un regresijas problēmu vērtēšanas kritērijiem tika izvēlēti attiecīgi F1 rādītāji (svērtā vērtība) un vidējā kvadrāta kļūda.

Lai ierobežotu katru AutoML metodi līdz laika periodam, kas atspoguļo sākotnējo izpētes meklēšanu, ko veikušas daudzas datu zinātnes komandas, tika izmantots 3 stundu ierobežojums. Rezultātā aprēķinātais aprēķina laiks ir 10 440 stundas. Rezultātā mēs nolēmām novērtēt modeļus, izmantojot AWS pakešpakalpojumu, lai veiktu šī uzdevuma paralizēšanu, izmantojot C4 aprēķiniem optimizētus EC2 gadījumus, piešķirot 2 vCPU un 4 GB atmiņas vienā darbībā.

Mēs izmantojām labāko piepūles pieeju, lai nodrošinātu, ka visi testi ir pabeigti un ka visiem testiem ir vismaz 3 iespējas gūt panākumus 3 stundu laikā. Dažos gadījumos AWS paketes aprēķināšanas vide un uz dokiem balstīta resursu pārvaldība izraisīja neparedzamu rīcību. Lai to pārvarētu, mēs izstrādājām pielāgotu “tukša metāla” pieeju, lai replicētu AWS paketi EC2 gadījumos ar precīzāku kontroli pār procesa atmiņas pārvaldību. Konkrēti, dokētāja atmiņas pārvaldnieks nosūtīja nogalināšanas signālu uz etalonuzdevumu procesu, ja procesa izmantotais atmiņas apjoms pārsniedza partijas piešķirto daudzumu. Šo cieto robežu nevar mainīt, ja ievērojami nepalielināsit gadījuma lielumu vienā piegājienā. Izmantojot tos pašus aprēķina ierobežojumus, mēs pārbaudījām darbības, kas neizdevās šajos ļoti specifiskajos apstākļos, izmantojot mūsu pielāgoto “tukša metāla” ieviešanu.

Arī šo testu izpildes laikā mēs labojām dažas kļūdas atvērtā pirmkoda ietvaros, kas aprakstīti mūsu pilnajā rakstā. Pēc šiem labojumiem neviena no datu kopām neizdevās. Šīs kļūmes parasti aizēnoja ikdienas lietošana, bet tās parādījās veiktās pārbaudes laikā.

Rezultāti

1. attēlā ir aprakstīta mūsu izvēlēto datu kopu daudzveidība. Var redzēt, ka klasifikācija parasti ir bināra un regresijas rindu skaits ir samērā vienāds, savukārt klasifikācijas rindu skaits ir šķībs pret datu kopām ap 1000 rindām. Funkciju skaits gan regresijas, gan klasifikācijas centros ir aptuveni 10 pazīmju, kuru klasifikācija ir nedaudz sašķiebta uz 100. Mēs uzskatām, ka šī datu grupa ir reprezentatīvs paraugs vispārējām datu zinātnes problēmām, ar kurām varētu saskarties daudzi datu zinātnieki.

1. attēls. Neapstrādātu datu kopu raksturlielumi sadalīti starp klasifikācijas un regresijas problēmām

Dažiem pamatnoteikumiem konkrētajām sēklām un ietvariem beidzās laiks. Pavisam tika atceltas 29 palaišanas kombinācijas (datu kopa un sēkla). Lai uzturētu atsevišķu ietvaru salīdzināmību, šīs izpildes kombinācijas tika izlaistas visās sistēmās. Šī procesa rezultātā tika atmesti 132 datu punkti (29 * 4), kas kopumā ir apmēram ~ 3% (116/3480 reizes).

2. attēls. Ietvarstruktūras vidējais sniegums klasifikācijas datu kopās

3. attēls: ietvarstruktūra no vienas puses uz otru, izmantojot regresijas datu kopas

Katru ietvaru vērtēja gan ar iepriekšminētajām regresijas, gan klasifikācijas datu kopām. Viņu veiktspēja tika aprēķināta, pēc shēmas summējot svērtos F1 un MSE rādītājus dažādās datu kopās. Katra metrika tika standartizēta, balstoties uz datu kopu, visās shēmās un mēroga no 0 līdz 1. MSE gadījumā šīs vērtības tika apgrieztas, kas nozīmē, ka augstākas vērtības atspoguļo labākus rezultātus, lai grafiki saglabātu konsekvenci starp klasifikāciju un regresijas vizualizācijām. Vidējā vērtība starp 10 novērtētajām sēklām norāda uz sistēmas veiktspēju noteiktā datu kopā. 2. un 3. attēlā tumšākas nokrāsas norāda uz lielākām veiktspējas atšķirībām.

4. attēls: ietvara darbība visās klasifikācijas datu kopās

5. attēls: ietvara veiktspēja visās regresijas datu kopās

Lai parādītu karkasa veiktspēju, 4. un 5. attēlā mēs izmantojām lodziņus, kas parādīti 4. un 5. attēlā. Zīmējumi lodziņu diagrammās norāda mediānu ticamības intervālu. Vidējie rādītāji un standartnovirzes 1. tabulā parāda precīzas atšķirības.

1. tabula: precīzi katras struktūras rezultāti

Secinājumi un interpretācija

Kopumā katra vizualizācija un interpretācija attēlo vienu un to pašu attēlu. Automātiskā korekcija klasifikācijas datu kopās darbojas vislabāk, un TPOT regresijas datu kopās ir vislabākā. Ir svarīgi ņemt vērā, ka šī eksperimenta kvantitatīvajiem rezultātiem ir ārkārtīgi lielas atšķirības un kā tāds, visticamāk, daudz svarīgāk ir domāt par kodu bāzes stāvokli, turpmāko attīstību, funkciju kopu un šiem atsevišķajiem ietvariem, nevis par savrupa veiktspēja. Šo faktoru dēļ un mūsu mijiedarbības ar katru no viņu kopienām laikā, kad mēs strādājām pie šīs analīzes, mēs iesakām gan TPOT, gan automātisko apmācību.

Šeit ir sasaistītas visas paketes (Auto-sklearn, TPOT, H2O, Auto_ml), pilns darbs un etalonuzdevumu ieviešana.