Kunstig intelligens
LightAutoML: AutoML-løsning for et stort finansielt tjenesteekosystem
Selv om AutoML har økt i popularitet de siste årene, begynte det tidlige arbeidet med AutoML allerede på begynnelsen av 90-tallet, da forskere publiserte de første artiklene om hyperparameter-optimering. Det var i 2014, da ICML organiserte den første AutoML-workshopen, at AutoML fikk oppmerksomheten til ML-utviklere. En av de viktigste fokuspunktene for AutoML gjennom årene har vært hyperparameter-søkeproblemet, der modellen implementerer en rekke optimieringsmetoder for å bestemme de beste hyperparameterne i et stort hyperparameter-rom for en bestemt maskinlæringsmodell. En annen metode som ofte brukes i AutoML-modeller er å estimere sannsynligheten for at en bestemt hyperparameter er den optimale hyperparameteren for en gitt maskinlæringsmodell. Modellen oppnår dette ved å implementere bayesianske metoder som tradisjonelt bruker historiske data fra tidligere estimerte modeller og andre datasett. I tillegg til hyperparameter-optimering, prøver andre metoder å velge de beste modellene fra et rom av modellalternativer.
I denne artikkelen vil vi dekke LightAutoML, et AutoML-system utviklet primært for et europeisk selskap som opererer i finanssektoren samt dets økosystem. LightAutoML-rammeverket er deployert over flere applikasjoner, og resultater har vist overlegen ytelse, sammenlignbar med nivået til dataforskere, selv når det gjelder å bygge høykvalitets maskinlæringsmodeller. LightAutoML-rammeverket prøver å bidra med følgende. Først og fremst ble LightAutoML-rammeverket utviklet primært for økosystemet til et stort europeisk finansielt og bankinstitusjon. Takket være dets rammeverk og arkitektur er LightAutoML-rammeverket i stand til å overgå state-of-the-art AutoML-rammeverk over flere åpne benchmark og økosystem-applikasjoner. Ytelsen til LightAutoML-rammeverket er også sammenlignet med modeller som er justert manuelt av dataforskere, og resultater indikerer sterkere ytelse fra LightAutoML-rammeverket.
Denne artikkelen har som mål å dekke LightAutoML-rammeverket i dybden, og vi utforsker mekanismen, metodikken, arkitekturen til rammeverket samt sammenligningen med state-of-the-art-rammeverk. La oss begynne.
LightAutoML: Et AutoML-rammeverk for finansielle tjenester
Selv om forskerne først startet å arbeide med AutoML på midten og begynnelsen av 90-tallet, har AutoML tiltatt en stor del av oppmerksomheten de siste årene, med noen av de fremtredende industrielle løsningene som implementerer automatisk bygging av maskinlæringsmodeller, som Amazon’s AutoGluon, DarwinAI, H20.ai, IBM Watson AI, Microsoft AzureML og mange flere. De fleste av disse rammeverkene implementerer en generell AutoML-løsning som utvikler ML-baserte modeller automatisk over forskjellige klasser av applikasjoner over finansielle tjenester, helse, utdanning og mer. Den viktigste antakelsen bak denne horisontale generiske tilnærmingen er at prosessen med å utvikle automatiske modeller forblir identisk over alle applikasjoner. Imidlertid implementerer LightAutoML-rammeverket en vertikal tilnærming for å utvikle en AutoML-løsning som ikke er generisk, men heller tilpasset behovene til enkeltapplikasjoner, i dette tilfelle et stort finansielt institusjon. LightAutoML-rammeverket er et vertikalt AutoML-løsning som fokuserer på kravene til det komplekse økosystemet samt dets egenskaper. Først og fremst gir LightAutoML-rammeverket rask og nær optimal hyperparameter-søk. Selv om modellen ikke optimaliserer disse hyperparameterne direkte, klarer den å levere tilfredsstillende resultater. Videre holder modellen balansen mellom hastighet og hyperparameter-optimering dynamisk, for å sikre at modellen er optimal på små problemer og rask nok på større problemer. For det andre begrenser LightAutoML-rammeverket omfanget av maskinlæringsmodeller med vilje til bare to typer: lineære modeller og GBM eller gradient-boostede beslutningstre, i stedet for å implementere store ensembler av forskjellige algoritmer. Den primære grunnen til å begrense omfanget av maskinlæringsmodeller er å øke kjøretiden til LightAutoML-rammeverket uten å påvirke ytelsen negativt for den gitte type problem og data. Tredje, presenterer LightAutoML-rammeverket en unik metode for å velge forbehandlings-skjemaer for forskjellige funksjoner brukt i modellene basert på bestemte valgeregler og meta-statistikk. LightAutoML-rammeverket er evaluert på en rekke åpne datakilder over en rekke applikasjoner.
LightAutoML : Metodikk og arkitektur
LightAutoML-rammeverket består av moduler kjent som Presets som er dedikert for end-to-end modellutvikling for typiske maskinlæringsoppgaver. For tiden støtter LightAutoML-rammeverket Preset-moduler. Først og fremst fokuserer TabularAutoML-Preset på å løse klassiske maskinlæringsproblemer definert på tabellformet data. For det andre implementerer White-Box-Preset enkle tolkbare algoritmer som logistisk regresjon i stedet for WoE eller Weight of Evidence-koding og diskretiserte funksjoner for å løse binære klassifiseringsoppgaver på tabellformet data. Å implementere enkle tolkbare algoritmer er en vanlig praksis for å modellere sannsynligheten for en søknad på grunn av tolkbarhetsbegrensningene som påføres av forskjellige faktorer. Tredje, kan NLP-Preset kombinere tabellformet data med NLP eller Natural Language Processing-verktøy, inkludert forhånds trenede dyptelæringsmodeller og spesifikke funksjons-ekstraktorer. Til slutt fungerer CV-Preset med bilde-data med hjelp av noen grunnleggende verktøy. Det er viktig å merke seg at selv om LightAutoML-modellen støtter alle fire Presets, bruker rammeverket bare TabularAutoML i produksjonssystemet.
Den typiske pipeline til LightAutoML-rammeverket er inkludert i følgende bilde.

Hver pipeline inneholder tre komponenter. Først og fremst, Reader, et objekt som mottar oppgavetype og rådata som innputt, utfører viktige metadata-beregninger, rensker den innledende data og finner ut hvilke data-manipulasjoner som skal utføres før fitting av forskjellige modeller. Neste, inneholder LightAutoML-interne datasett CV-iteratorene og metadata som implementerer valideringsskjemaer for datasettene. Den tredje komponenten er flere maskinlærings-pipelines stablet og/eller blandet for å få en enkelt prediksjon. En maskinlærings-pipeline i arkitekturen til LightAutoML-rammeverket er en av flere maskinlæringsmodeller som deler en felles data-validering og forbehandlings-skjema. Forbehandlings-steg kan ha opptil to funksjons-valg-steg, et funksjons-injeneri-steg eller kan være tom hvis ingen forbehandling er nødvendig. ML-pipelines kan beregnes uavhengig på samme datasett og deretter blandes sammen ved hjelp av gjennomsnitt (eller vektet gjennomsnitt). Alternativt kan en stacking-ensemble-skjema brukes til å bygge fler-nivå ensemble-arkitekturer.
LightAutoML Tabular Preset
Innenfor LightAutoML-rammeverket er TabularAutoML standard-pipeline, og den er implementert i modellen for å løse tre typer oppgaver på tabellformet data: binær klassifisering, regresjon og multi-klassifikasjon for en rekke ytelses-målinger og tap-funksjoner. En tabell med fire kolonner: kategoriske funksjoner, numeriske funksjoner, tidsstempel og en enkelt mål-kolonne med klassifikasjons-etiketter eller kontinuerlige verdier, mates inn til TabularAutoML-komponenten som innputt. En av de primære målene bak designet av LightAutoML-rammeverket var å designe et verktøy for rask hypotesetesting, en stor grunn til at rammeverket unngår å bruke brutt-force-metoder for pipeline-optimering og fokuserer bare på effisiens-teknikker og modeller som fungerer over en rekke datasett.
Auto-Typing og Data Forbehandling
For å håndtere forskjellige typer funksjoner på forskjellige måter, må modellen vite hver funksjonstype. I situasjonen der det er en enkelt oppgave med et lite datasett, kan brukeren manuelt angi hver funksjonstype. Imidlertid er å angi hver funksjonstype manuelt ikke lenger en gjennomførbare løsning i situasjoner som inkluderer hundrevis av oppgaver med datasett som inneholder tusenvis av funksjoner. For TabularAutoML-Preset, må LightAutoML-rammeverket kartlegge funksjoner inn i tre klasser: numerisk, kategori og dato. En enkel og åpenbar løsning er å bruke kolonne-array-data-typer som faktiske funksjonstyper, det vil si å kartlegge float/int-kolonner til numeriske funksjoner, tidsstempel eller streng som kan parsere som et tidsstempel — til dato, og andre til kategori. Imidlertid er denne kartleggingen ikke den beste på grunn av den hyppige forekomsten av numeriske data-typer i kategori-kolonner.
Valideringsskjemaer
Valideringsskjemaer er en vital komponent i AutoML-rammeverk, siden data i industrien er underlagt endringer over tid, og dette elementet av endring gjør IID eller Independent Identically Distributed-antagelser irrelevante når det utvikles modeller. AutoML-modeller bruker valideringsskjemaer for å estimere deres ytelse, søke etter hyperparametere og generere prediksjoner utenfor foldene. TabularAutoML-pipeline implementerer tre valideringsskjemaer:
- KFold Cross Validering: KFold Cross Validering er standard-valideringsskjema for TabularAutoML-pipeline, inkludert GroupKFold for atferds-modeller og stratifisert KFold for klassifiseringsoppgaver.
- Holdout Validering : Holdout-valideringsskjemaet implementeres hvis holdout-settet er spesifisert.
- Tilpassede Valideringsskjemaer: Tilpassede valideringsskjemaer kan opprettes av brukerne avhengig av deres individuelle krav. Tilpassede valideringsskjemaer inkluderer kryssvalidering og tidsrekke-delingsskjemaer.
Funksjons-valg
Selv om funksjons-valg er en kritisk aspekt ved å utvikle modeller i henhold til industri-standarder, siden det fasiliteter reduksjon i inferens og modell-implementerings-kostnader, fokuserer de fleste AutoML-løsninger ikke mye på dette problemet. På den andre siden, implementerer TabularAutoML-pipeline tre funksjons-valg-strategier: Ingen valg, viktighets-avkorting-valg og viktighets-basert fremover-valg. Av de tre, er viktighets-avkorting-valg standard. Videre er det to primære måter å estimere funksjons-viktighet: split-basert tre-viktighet og permutasjons-viktighet av GBM-modell eller gradient-boostede beslutningstre. Det primære målet med viktighets-avkorting-valg er å avvise funksjoner som ikke er nyttige for modellen, og tillate modellen å redusere antall funksjoner uten å påvirke ytelsen negativt, en tilnærming som kan øke modell-inferens og trening.

Bildet over sammenligner forskjellige valg-strategier på binært bank-datasett.
Hyperparameter-justering
TabularAutoML-pipeline implementerer forskjellige tilnærminger for å justere hyperparametere basert på hva som justeres.
- Tidlig stopp Hyperparameter-justeringvelger antall iterasjoner for alle modeller under treningfasen.
- Ekspert-system Hyperparameter-justeringer en enkel måte å sette hyperparametere for modeller på en tilfredsstillende måte. Det forhindrer den endelige modellen fra en stor nedgang i score sammenlignet med hard-justerte modeller.
- Tre-strukturert Parzen-estimering eller TPE for GBM eller gradient-boostede beslutningstre-modeller. TPE er en blandet justerings-strategi som er standard-valget i LightAutoML-pipeline. For hver GMB-rammeverk, trener LightAutoML-rammeverket to modeller: den første får ekspert-hyperparametere, den andre er fin-justert for å passe inn i tidsbudsjettet.
- Rutenett-søk Hyperparameter-justering implementeres i TabularAutoML-pipeline for å fin-justere regulariserings-parametrene til en lineær modell samt tidlig stopp og varm start.
Modellen justerer alle parametrene ved å maksimere målefunksjonen, enten definert av brukeren eller som standard for den løste oppgaven.

LightAutoML : Eksperiment og ytelse
For å evaluere ytelsen, sammenlignes TabularAutoML-Preset innenfor LightAutoML-rammeverket mot eksisterende åpne kilde-løsninger over forskjellige oppgaver, og befester den overlegne ytelsen til LightAutoML-rammeverket. Først og fremst utføres sammenligningen på OpenML-benchmark som er evaluert på 35 binære og multi-klassifikasjonsoppgave-datasett. Følgende tabell summerer sammenligningen av LightAutoML-rammeverket mot eksisterende AutoML-systemer.

Som det kan ses, overgår LightAutoML-rammeverket alle andre AutoML-systemer på 20 datasett innenfor benchmark. Følgende tabell inneholder detaljert sammenligning i datasett-kontekst, som indikerer at LightAutoML leverer forskjellig ytelse på forskjellige klasser av oppgaver. For binære klassifiseringsoppgaver, kommer LightAutoML kort i ytelse, mens for oppgaver med en stor mengde data, leverer LightAutoML-rammeverket overlegen ytelse.

Følgende tabell sammenligner ytelsen til LightAutoML-rammeverket mot AutoML-systemer på 15 bank-datasett som inneholder en rekke binære klassifiseringsoppgaver. Som det kan observeres, overgår LightAutoML alle AutoML-løsninger på 12 av 15 datasett, en seier-prosent på 80.

Slutt-tanker
I denne artikkelen har vi talt om LightAutoML, et AutoML-system utviklet primært for et europeisk selskap som opererer i finanssektoren samt dets økosystem. LightAutoML-rammeverket er deployert over flere applikasjoner, og resultater har vist overlegen ytelse, sammenlignbar med nivået til dataforskere, selv når det gjelder å bygge høykvalitets maskinlæringsmodeller. LightAutoML-rammeverket prøver å bidra med følgende. Først og fremst ble LightAutoML-rammeverket utviklet primært for økosystemet til et stort europeisk finansielt og bankinstitusjon. Takket være dets rammeverk og arkitektur er LightAutoML-rammeverket i stand til å overgå state-of-the-art AutoML-rammeverk over flere åpne benchmark og økosystem-applikasjoner. Ytelsen til LightAutoML-rammeverket er også sammenlignet med modeller som er justert manuelt av dataforskere, og resultater indikerer sterkere ytelse fra LightAutoML-rammeverket.








