Programmering

Gjennomgang: Google Cloud AutoML er virkelig automatisert maskinlæring

Når du prøver å trene den beste maskinlæringsmodellen for dataene dine automatisk, er det AutoML eller automatisk maskinlæring, og så er det Google Cloud AutoML. Google Cloud AutoML er et snitt ovenfor.

Tidligere har jeg gjennomgått H2O Driverless AI, Amazon SageMaker og Azure Machine Learning AutoML. Driverless AI utfører automatisk funksjonsteknikk og hyperparameter-tuning, og hevder å prestere så vel som Kaggle-mestere. Amazon SageMaker støtter hyperparameteroptimalisering. Azure Machine Learning AutoML går automatisk gjennom funksjoner, algoritmer og hyperparametere for grunnleggende maskinlæringsalgoritmer; et eget Azure Machine Learning-innstillingsanlegg for hyperparameter lar deg feie spesifikke hyperparametere for et eksisterende eksperiment.

Dette er bra, men Google Cloud AutoML går til et helt annet nivå og tilpasser Googles kamptestede, dypneurale nettverk med høy nøyaktighet for dine merkede data. I stedet for å starte fra bunnen av når du trener modeller fra dataene dine, implementerer Google Cloud AutoML automatisk dypoverføringslæring (noe som betyr at den starter fra et eksisterende dypt nevralt nettverk trent på andre data) og nevral arkitektur-søk (noe som betyr at den finner den rette kombinasjonen av ekstra nettverkslag) for oversettelse av språkpar, klassifisering av naturlig språk og bildeklassifisering.

I hvert område har Google allerede en eller flere forhåndstrente tjenester basert på dype nevrale nettverk og enorme sett med merkede data. Disse kan godt fungere for dine data umodifiserte, og du bør teste det for å spare deg for tid og penger. Hvis disse tjenestene ikke gjør det du trenger, hjelper Google Cloud AutoML deg med å lage en modell som gjør det, uten at du trenger å vite hvordan du skal utføre overføringslæring eller til og med hvordan du oppretter nevrale nettverk.

Overføring læring gir to store fordeler over å trene et nevralt nettverk fra bunnen av. For det første krever det mye mindre data for trening, siden de fleste lagene i nettverket allerede er godt trente. For det andre går den mye raskere, siden den bare optimaliserer de endelige lagene.

Google Cloud AutoML-oversettelse

Så for eksempel kan du trene mot 1000 tospråklige setningspar på en time eller to med Google Cloud AutoML-oversettelseslæring. Det basale nevrale nettet som ble tilpasset, NMT, tok hundrevis til tusenvis av timer å trene fra bunnen av for hvert språkpar, på et stort antall CPUer og GPUer. Merk at timegebyret for opplæring av en tilpasset oversettelsesmodell for øyeblikket er $ 76.

Nybegynnerveiledningen for AutoML-oversettelse forklarer det grunnleggende om hva Google Cloud AutoML-oversettelse kan gjøre, og hvorfor du vil bruke det. I hovedsak foredler den en eksisterende generell oversettelsesmodell for et nisjeformål. Du trenger ikke å trene noe for generell oversettelse av hundre eller så språk som Google allerede støtter, men du må kjøre overføringslæringen hvis du vil opprette et oversettelsesnettverk for spesialisert ordforråd eller bruk. Et eksempel Google nevner er å oversette tidssensitive økonomiske dokumenter i sanntid. Generell oversettelse bruker ikke alltid de riktige kunstuttrykkene for finansiering.

Å sette opp opplæringen for Google Cloud AutoML-oversettelse er en fem-trinns prosess, som vist på skjermbildene nedenfor, når du har utarbeidet en fil med setningspar. Jeg brukte de 8.720 engelsk-spanske parene for appmeldinger levert av Google i hurtigstart for AutoML-oversettelse, formatert som en fane-separerte verdier-fil. Google Cloud AutoML-oversettelse støtter også det XML-baserte Translation Memory eXchange (TMX) -formatet for setningspar.

Du vil merke at det ikke er noe alternativ å kontrollere maskinvaren (CPUer, GPUer, TPUer og minne) som brukes til å utføre opplæringen. Det er bevisst: Treningen vil bruke det den trenger. Det er heller ingen muligheter for å kontrollere nevrale nettverkslag som legges til modellen, antall epoker som skal kjøres eller stoppkriteriene.

Når modellopplæringen er fullført, kan du se forbedringen (hvis alt går bra) i BLEU-poengsummen i forhold til basismodellen, og prøve å forutsi med modellen. Denne treningen tok 0,9 timer (mindre enn forutsagt) og kostet $ 68,34.

Google Cloud AutoML Natural Language

Google Natural Language API tar tekst og forutsier enheter, følelser, syntaks og kategorier (fra en forhåndsdefinert liste). Hvis tekstklassifiseringsproblemet ditt ikke passer til noen av disse, kan du levere et merket sett med utsagn og bruke Google Cloud AutoML Natural Language til å lage en egendefinert klassifisering.

For å konfigurere AutoML Natural Language for trening, må du kildedataene dine, merke dem, forberede dem som en CSV-fil og kjøre opplæringen. Du kan også bruke AutoML Natural Language UI for å laste opp og merke dataene hvis du foretrekker det.

Når modellopplæringen er fullført, kan du se modellens presisjon, tilbakekalling og forvirring. Du kan også justere poengsummen for ønsket presisjon / tilbakekalling. For å minimere falske negativer, optimaliser for tilbakekalling. For å minimere falske positive, optimaliser for presisjon.

Denne opplæringen tok 3,63 timer (omtrent som forutsagt) og kostet $ 10,88.

Google Cloud AutoML Vision

Google Cloud Vision API klassifiserer bilder i tusenvis av forhåndsdefinerte kategorier, oppdager individuelle objekter og ansikter i bilder, og finner og leser trykte ord inneholdt i bilder. Google Cloud AutoML Vision lar deg definere og trene din egen liste over kategorier. Noen virkelige applikasjoner inkluderer å oppdage skader på vindturbiner fra dronebilder, og klassifisere resirkulerbare produkter for avfallshåndtering.

For å sette opp et Google Cloud AutoML Vision-datasett må du kilde minst 100 bilder for hver kategori, og merke dem i en CSV-fil. Alle bildene og CSV-filen må ligge i en Google Cloud Storage-bøtte.

Jeg satte opp denne treningen til å løpe i maksimalt en time, som er gratis for opptil 10 modeller i måneden. Jeg ble positivt overrasket over å se gode resultater fra gratis trening, og gadd ikke fortsette treningen for å forbedre presisjonen og tilbakekallingen.

Google Cloud AutoML gir praktiske alternativer for å utføre målrettede oversettelser, tilpasset tekstklassifisering og tilpasset bildeklassifisering. Hver av disse APIene fungerer bra hvis du gir det nok nøyaktig merkede data, og tar mye mindre tid og dyktighet enn å bygge din egen nevrale nettverksmodell eller til og med din egen overføringslæringsmodell. Med Google Cloud AutoML oppretter du faktisk TensorFlow-modeller uten å nødvendigvis vite noe om TensorFlow, Python, nevrale nettverksarkitekturer eller treningsmaskinvare.

Det er mange måter å gjøre datautarbeidingen feil, men heldigvis ser de tre API-ene alle på de vanligste feilene, for eksempel å ha for få eller for mange eksempler for en hvilken som helst kategori. Diagnostikken som vises etter trening gir deg en god ide om hvor godt modellen din fungerer, og du kan enkelt tilpasse modellene ved å legge til mer merkede treningsdata og kjøre treningen på nytt.

Koste: Google Cloud AutoML-oversettelse: Opplæring koster $ 76,00 per time, oversettelse $ 80 per million tegn etter de første 500 000. Google Cloud AutoML Natural Language: Trening koster $ 3,00 per time, klassifisering $ 5 per tusen tekstoppføringer etter de første 30K. Google Cloud AutoML Vision: Trening koster $ 20 per time etter den første timen, klassifisering $ 3 per tusen bilder etter de første tusen.

Plattform: Google Cloud Platform

$config[zx-auto] not found$config[zx-overlay] not found