Modele și platforme AI

LightAutoML: O soluție AutoML pentru servicii financiare

mm
Adaugă Unite.AI la sursele tale preferate pe Google

Deși AutoML a devenit popular în urmă cu câțiva ani, lucrările timpurii despre AutoML datează de la începutul anilor ’90, când oamenii de știință au publicat primele articole despre optimizarea hiperparametrilor. A fost în 2014 când ICML a organizat primul atelier AutoML, care a atras atenția dezvoltatorilor de ML. Unul dintre principalele obiective ale AutoML de-a lungul anilor a fost problema căutării hiperparametrilor, unde modelul implementează o serie de metode de optimizare pentru a determina cei mai buni hiperparametri pentru un anumit model de învățare automată. O altă metodă implementată în mod obișnuit de modelele AutoML este de a estima probabilitatea ca un anumit hiperparametru să fie hiperparametrul optim pentru un anumit model de învățare automată. Modelul realizează acest lucru prin implementarea metodelor Bayesiane care, în mod tradițional, utilizează date istorice de la modele estimate anterior și alte seturi de date. În plus față de optimizarea hiperparametrilor, alte metode încearcă să selecteze cele mai bune modele dintr-un spațiu de alternative de modelare.

În acest articol, vom acoperi LightAutoML, un sistem AutoML dezvoltat în primul rând pentru o companie europeană care activează în sectorul financiar, împreună cu ecosistemul său. Cadru LightAutoML este implementat în diverse aplicații, iar rezultatele au demonstrat o performanță superioară, comparabilă cu nivelul specialiștilor în date, chiar și atunci când se construiesc modele de învățare automată de înaltă calitate. Cadru LightAutoML încearcă să aducă următoarele contribuții. În primul rând, cadru LightAutoML a fost dezvoltat în primul rând pentru ecosistemul unei mari instituții financiare și bancare europene. Datorită cadrului și arhitecturii sale, cadru LightAutoML este capabil să depășească cadrele AutoML de ultimă generație în mai multe benchmark-uri deschise, precum și aplicații ale ecosistemului. Performanța cadrului LightAutoML este comparată și cu modelele ajustate manual de către specialiștii în date, iar rezultatele au indicat o performanță mai puternică a cadrului LightAutoML.

Acest articol își propune să acopere cadru LightAutoML în profunzime și să exploreze mecanismul, metodologia, arhitectura cadrului, împreună cu comparația cu cadrele de ultimă generație. Deci, să începem.

LightAutoML: Un cadru AutoML pentru servicii financiare

Deși cercetătorii au început să lucreze la AutoML în mijlocul și la începutul anilor ’90, AutoML a atras o mare parte a atenției în ultimii ani, cu unele dintre soluțiile industriale proeminente care implementează modele de învățare automată construite automat, cum ar fi AutoGluon de la Amazon (AMZN ), DarwinAI, H20.ai, IBM Watson AI, Microsoft (MSFT ) AzureML și multe altele. Majoritatea acestor cadre implementează o soluție AutoML cu scop general care dezvoltă modele de învățare automată pe baza datelor, în diverse clase de aplicații, în servicii financiare, sănătate, educație și multe altele. Principala ipoteză din spatele acestei abordări generice orizontale este că procesul de dezvoltare a modelelor automate rămâne identic în toate aplicațiile. Cu toate acestea, cadru LightAutoML implementează o abordare verticală pentru a dezvolta o soluție AutoML care nu este generică, ci mai degrabă se adaptează nevoilor individuale ale aplicațiilor, în acest caz, unei mari instituții financiare. Cadru LightAutoML este o soluție AutoML verticală care se concentrează pe cerințele complexe ale ecosistemului, împreună cu caracteristicile sale. În primul rând, cadru LightAutoML oferă o căutare rapidă și aproape optimă a hiperparametrilor. Deși modelul nu optimizează direct aceste hiperparametri, el reușește să ofere rezultate satisfăcătoare. Mai mult, modelul menține un echilibru între viteza de căutare a hiperparametrilor și optimizarea dinamică, pentru a se asigura că modelul este optim pentru probleme mici și suficient de rapid pentru cele mai mari. În al doilea rând, cadru LightAutoML limitează în mod deliberat gama de modele de învățare automată la numai două tipuri: modele liniare și GBM sau arbori de decizie cu gradient boosting, în loc să implementeze ansambluri mari de algoritmi diferiți. Motivul principal din spatele limitării gamei de modele de învățare automată este de a accelera timpul de execuție al cadrului LightAutoML, fără a afecta negativ performanța pentru tipul dat de problemă și date. În al treilea rând, cadru LightAutoML prezintă o metodă unică de alegere a schemelor de prelucrare pentru diverse caracteristici utilizate în modele, pe baza unor reguli de selecție și meta-statistici. Cadru LightAutoML este evaluat pe o gamă largă de surse de date deschise, în diverse aplicații.

LightAutoML: Metodologie și arhitectură

Cadru LightAutoML constă în module cunoscute sub numele de Preset, dedicate pentru dezvoltarea de la zero a modelelor pentru sarcini tipice de învățare automată. În prezent, cadru LightAutoML suportă module Preset. În primul rând, Preset-ul TabularAutoML se concentrează pe rezolvarea problemelor clasice de învățare automată definite pe seturi de date tabulare. În al doilea rând, Preset-ul White-Box implementează algoritmi interpretabili simpli, cum ar fi regresia logistică, în loc de codificarea WoE sau greutatea dovezilor și caracteristici discretizate, pentru a rezolva sarcini de clasificare binară pe date tabulare. Implementarea algoritmilor interpretabili simpli este o practică comună pentru a modela probabilitatea unei aplicații, datorită constrângerilor de interpretare impuse de diverse factori. În al treilea rând, Preset-ul NLP este capabil să combine date tabulare cu unelte de procesare a limbajului natural, inclusiv modele de învățare profundă pre-antrenate și extractori de caracteristici specifici. În cele din urmă, Preset-ul CV lucrează cu date de imagine, cu ajutorul unor unelte de bază. Este important de remarcat că, deși modelul LightAutoML suportă toate cele patru Preset-uri, cadru LightAutoML utilizează numai Preset-ul TabularAutoML în sistemul de producție.

Pipeline-ul tipic al cadrului LightAutoML este inclus în imaginea de mai jos.

Fiecare pipeline conține trei componente. În primul rând, Reader, un obiect care primește tipul de sarcină și date brute ca intrare, efectuează calcule importante de metadate, curăță datele inițiale și determină manipulările de date care trebuie efectuate înainte de a se potrivi cu diverse modele. Următorul, seturile de date interne LightAutoML conțin iteratori CV și metadate care implementează scheme de validare pentru seturile de date. Al treilea component este reprezentat de multiple pipeline-uri de învățare automată, stivuite și/sau amestecate pentru a obține o singură predicție. Un pipeline de învățare automată în cadrul arhitecturii cadrului LightAutoML este unul dintre multiplele modele de învățare automată care împărtășesc o singură schemă de validare și prelucrare a datelor. Pașii de prelucrare pot avea până la doi pași de selecție a caracteristicilor, un pas de inginerie a caracteristicilor sau pot fi goale, dacă nu este nevoie de prelucrare. Pipeline-urile de învățare automată pot fi calculate independent pe aceleași seturi de date și apoi amestecate împreună, utilizând medierea (sau medierea ponderată). Alternativ, se poate utiliza o schemă de ansamblu pentru a construi arhitecturi de ansamblu multilevel.

LightAutoML Tabular Preset

În cadrul cadrului LightAutoML, TabularAutoML este pipeline-ul implicit și este implementat în model pentru a rezolva trei tipuri de sarcini pe date tabulare: clasificare binară, regresie și clasificare multi-clasă pentru o gamă largă de metrice de performanță și funcții de pierdere. O tabelă cu patru coloane – caracteristici categorice, caracteristici numerice, timpestamp-uri și o singură coloană țintă cu etichete de clasă sau valori continue – este alimentată componentei TabularAutoML ca intrare. Unul dintre obiectivele principale ale proiectării cadrului LightAutoML a fost de a proiecta un instrument pentru testarea rapidă a ipotezelor, un motiv pentru care cadrul evită utilizarea metodelor de forță brută pentru optimizarea pipeline-ului și se concentrează doar pe tehnici și modele eficiente care funcționează pe o gamă largă de seturi de date.

Auto-Typing și prelucrarea datelor

Pentru a gestiona diferite tipuri de caracteristici în moduri diferite, modelul trebuie să știe tipul fiecărei caracteristici. În situația în care există o singură sarcină cu un set de date mic, utilizatorul poate specifica manual fiecare tip de caracteristică. Cu toate acestea, specificarea manuală a fiecărui tip de caracteristică nu mai este o opțiune viabilă în situații care implică sute de sarcini cu seturi de date care conțin mii de caracteristici. Pentru Preset-ul TabularAutoML, cadrul LightAutoML trebuie să mappeze caracteristici în trei clase: numerice, categorice și datetime. O soluție simplă și evidentă este de a utiliza tipurile de date ale coloanelor de matrice ca tipuri de caracteristici reale, adică de a mapa coloanele float/int la caracteristici numerice, timestamp sau șiruri care pot fi analizate ca timpestampuri – la datetime și altele la categorii. Cu toate acestea, această mapare nu este cea mai bună, din cauza apariției frecvente a tipurilor de date numerice în coloanele categoriilor.

Scheme de validare

Schemele de validare sunt o componentă vitală a cadrului AutoML, deoarece datele din industrie sunt supuse schimbărilor în timp, iar acest element de schimbare face ca ipotezele IID sau Independent Identically Distributed să fie irelevante atunci când se dezvoltă modelul. Modelele AutoML utilizează scheme de validare pentru a estima performanța, a căuta hiperparametri și a genera predicții din afara pliului. Pipeline-ul TabularAutoML implementează trei scheme de validare:

  • Validare Cross-Validation KFold: Validarea Cross-Validation KFold este schema de validare implicită pentru pipeline-ul TabularAutoML, inclusiv GroupKFold pentru modele comportamentale și stratificată KFold pentru sarcini de clasificare.
  • Validare Holdout: Schema de validare Holdout este implementată dacă setul de holdout este specificat.
  • Scheme de validare personalizate: Scheme de validare personalizate pot fi create de utilizatori, în funcție de cerințele individuale.

Selekcija caracteristicilor

Deși selecția caracteristicilor este un aspect crucial al dezvoltării modelelor, conform standardelor din industrie, deoarece facilitează reducerea costurilor de inferență și implementare a modelului, majoritatea soluțiilor AutoML nu se concentrează mult asupra acestei probleme. În schimb, pipeline-ul TabularAutoML implementează trei strategii de selecție a caracteristicilor: fără selecție, selecție prin tăierea importanței și selecție prin selectarea înainte a importanței. Dintre acestea, selecția prin tăierea importanței este implicită. Mai mult, există două moduri principale de estimare a importanței caracteristicilor: importanța bazată pe divizarea arborelui și importanța permutării modelului GBM sau arborelui de decizie cu gradient boosting. Obiectivul principal al selecției prin tăierea importanței este de a respinge caracteristicile care nu sunt utile modelului, permițând modelului să reducă numărul de caracteristici fără a afecta negativ performanța, o abordare care poate accelera inferența și antrenamentul modelului.

Imaginea de mai sus compară diferite strategii de selecție pe seturi de date binare de bancă.

Ajustarea hiperparametrilor

Pipeline-ul TabularAutoML implementează diferite abordări pentru ajustarea hiperparametrilor, în funcție de ceea ce se ajustează.

  • Ajustarea hiperparametrilor prin oprire timpurie selectează numărul de iterații pentru toate modelele în timpul fazei de antrenament.
  • Sistemul expert de ajustare a hiperparametrilor este o modalitate simplă de a seta hiperparametri pentru modele într-un mod satisfăcător. Acesta previne scăderea puternică a scorului final modelului în comparație cu modelele ajustate dur.
  • Estimarea structurată a copacului Parzen sau TPE pentru modelele GBM sau arbori de decizie cu gradient boosting. TPE este o strategie de ajustare mixtă care este implicită în pipeline-ul LightAutoML. Pentru fiecare cadru GBM, cadrul LightAutoML antrenează două modele: primul primește hiperparametri experți, al doilea este ajustat pentru a se potrivi în bugetul de timp.
  • Căutarea în grilă a hiperparametrilor este implementată în pipeline-ul TabularAutoML pentru a ajusta parametrii de regularizare ai unui model liniar, împreună cu oprirea timpurie și pornirea caldă.

Modelul ajustează toți parametrii prin maximizarea funcției de metrică, definită de utilizator sau implicită pentru sarcina rezolvată.

LightAutoML: Experiment și performanță

Pentru a evalua performanța, Preset-ul TabularAutoML din cadrul LightAutoML este comparat cu soluții AutoML existente, pe diverse sarcini, și demonstrează o performanță superioară a cadrului LightAutoML. În primul rând, comparația este efectuată pe benchmark-ul OpenML, care este evaluat pe 35 de seturi de date de clasificare binară și multi-clasă. Tabelul de mai jos rezumă comparația cadrului LightAutoML cu sistemele AutoML existente.

După cum se poate vedea, cadrul LightAutoML depășește toate celelalte sisteme AutoML pe 20 de seturi de date din benchmark. Tabelul de mai jos conține o comparație detaliată în contextul setului de date, indicând faptul că cadrul LightAutoML oferă performanțe diferite pe diverse clase de sarcini. Pentru sarcinile de clasificare binară, cadrul LightAutoML are o performanță mai slabă, în timp ce pentru sarcinile cu o cantitate mare de date, cadrul LightAutoML oferă o performanță superioară.

Tabelul de mai jos compară performanța cadrului LightAutoML cu sistemele AutoML pe 15 seturi de date bancare care conțin diverse sarcini de clasificare binară. După cum se poate observa, cadrul LightAutoML depășește toate soluțiile AutoML pe 12 dintre cele 15 seturi de date, o rată de câștig de 80%.

Gânduri finale

În acest articol, am discutat despre LightAutoML, un sistem AutoML dezvoltat în primul rând pentru o companie europeană care activează în sectorul financiar, împreună cu ecosistemul său. Cadru LightAutoML este implementat în diverse aplicații, iar rezultatele au demonstrat o performanță superioară, comparabilă cu nivelul specialiștilor în date, chiar și atunci când se construiesc modele de învățare automată de înaltă calitate. Cadru LightAutoML încearcă să aducă următoarele contribuții. În primul rând, cadru LightAutoML a fost dezvoltat în primul rând pentru ecosistemul unei mari instituții financiare și bancare europene. Datorită cadrului și arhitecturii sale, cadru LightAutoML este capabil să depășească cadrele AutoML de ultimă generație în mai multe benchmark-uri deschise, precum și aplicații ale ecosistemului. Performanța cadrului LightAutoML este comparată și cu modelele ajustate manual de către specialiștii în date, iar rezultatele au indicat o performanță mai puternică a cadrului LightAutoML.

"Un inginer de profesie, un scriitor din inimă". Kunal este un scriitor tehnic cu o dragoste și o înțelegere profundă a inteligenței artificiale și a învățării automate, dedicat simplificării conceptelor complexe din aceste domenii prin documentația sa captivantă și informativă.