Programmering

Anmeldelse: Google Cloud AutoML er virkelig automatiseret maskinindlæring

Når du forsøger at træne den bedste maskineindlæringsmodel til dine data automatisk, er der AutoML eller automatisk maskinindlæring, og så er der Google Cloud AutoML. Google Cloud AutoML er et snit ovenfor.

Tidligere har jeg gennemgået H2O Driverless AI, Amazon SageMaker og Azure Machine Learning AutoML. Driverless AI udfører automatisk funktionsteknologi og hyperparameter-tuning og hævder at udføre såvel som Kaggle-mestre. Amazon SageMaker understøtter optimering af hyperparameter. Azure Machine Learning AutoML gennemgår automatisk funktioner, algoritmer og hyperparametre til grundlæggende maskinindlæringsalgoritmer; en separat Azure Machine Learning hyperparameter tuning facilitet giver dig mulighed for at feje specifikke hyperparametre til et eksisterende eksperiment.

Disse er gode, men Google Cloud AutoML går på et helt andet niveau og tilpasser Googles kamptestede dybe neurale netværk med høj nøjagtighed til dine taggede data. I stedet for at starte fra bunden, når du træner modeller fra dine data, implementerer Google Cloud AutoML automatisk dyb overførselsindlæring (hvilket betyder, at den starter fra et eksisterende dybt neuralt netværk, der er trænet i andre data) og neural arkitektur-søgning (hvilket betyder, at den finder den rigtige kombination af ekstra netværkslag) til oversættelse af sprogpar, klassificering af naturligt sprog og billedklassificering.

I hvert område har Google allerede en eller flere foruddannede tjenester baseret på dybe neurale netværk og enorme sæt mærkede data. Disse fungerer muligvis for dine data umodificerede, og du bør teste det for at spare dig tid og penge. Hvis disse tjenester ikke gør det, du har brug for, hjælper Google Cloud AutoML dig med at oprette en model, der gør det uden at kræve, at du ved, hvordan du udfører transferindlæring eller endda hvordan man opretter neurale netværk.

Transferlæring tilbyder to store fordele i forhold til at træne et neuralt netværk fra bunden. For det første kræver det meget mindre data til træning, da de fleste af lagene i netværket allerede er veluddannede. For det andet kører det meget hurtigere, da det kun optimerer de endelige lag.

Google Cloud AutoML-oversættelse

Så for eksempel kan du træne mod 1.000 to-sprogs sætningspar på en time eller to med Google Cloud AutoML-oversættelsesoverførselsindlæring. Det basale neurale net, der blev tilpasset, NMT, tog hundreder til tusinder af timer at træne fra bunden for hvert sprogpar på et stort antal CPU'er og GPU'er. Bemærk, at timegebyret for træning af en tilpasset oversættelsesmodel i øjeblikket er $ 76.

Begyndervejledningen til AutoML-oversættelse forklarer det grundlæggende i, hvad Google Cloud AutoML-oversættelse kan, og hvorfor du vil bruge det. I det væsentlige forfiner det en eksisterende generel oversættelsesmodel til et nicheformål. Du behøver ikke træne nogen form for generel oversættelse af de hundrede eller deromkring sprog, som Google allerede understøtter, men du skal køre overførselsindlæringen, hvis du vil oprette et oversættelsesnetværk til specialiseret ordforråd eller brug. Et eksempel, Google nævner, er at oversætte tidsfølsomme økonomiske dokumenter i realtid. Almindelig oversættelse bruger ikke altid de korrekte kunsttermer til finansiering.

Opsætning af træning til Google Cloud AutoML-oversættelse er en fem-trins proces, som vist i skærmbillederne nedenfor, når du har forberedt en fil med sætningspar. Jeg brugte de 8.720 engelsk-spanske par til app-meddelelser leveret af Google i Quickstart-oversættelsen til AutoML, formateret som en fane-adskilt-værdifil. Google Cloud AutoML-oversættelse understøtter også det XML-baserede Translation Memory eXchange (TMX) -format til sætningspar.

Du bemærker, at der ikke er nogen mulighed for at kontrollere den hardware (CPU'er, GPU'er, TPU'er og hukommelse), der bruges til at udføre træningen. Det er bevidst: Uddannelsen bruger det, den har brug for. Der er heller ingen muligheder for at kontrollere de neurale netværkslag, der føjes til modellen, antallet af epoker, der skal køres, eller stopkriterierne.

Når modeluddannelsen er afsluttet, kan du se forbedringen (hvis alt går godt) i BLEU-scoren i forhold til basismodellen og prøve at forudsige med modellen. Denne træning tog 0,9 time (mindre end forudsagt) og kostede $ 68,34.

Google Cloud AutoML Natural Language

Google Natural Language API tager tekst og forudsiger enheder, følelser, syntaks og kategorier (fra en foruddefineret liste). Hvis dit tekstklassificeringsproblem ikke passer til nogen af ​​disse, kan du levere et mærket sæt udsagn og bruge Google Cloud AutoML Natural Language til at oprette en brugerdefineret klassifikator.

For at konfigurere AutoML Natural Language til træning skal du kilde dine data, mærke det, forberede det som en CSV-fil og køre uddannelsen. Du kan også bruge AutoML Natural Language UI til at uploade og mærke dataene, hvis du foretrækker det.

Når modeluddannelsen er afsluttet, kan du se modelens præcision, tilbagekaldelse og forvirringsmatrix. Du kan også justere scoretærsklen for den ønskede præcision / tilbagekaldelse. Optimer til tilbagekaldelse for at minimere falske negativer. Optimer til præcision for at minimere falske positive.

Denne træning tog 3,63 timer (omtrent som forudsagt) og kostede $ 10,88.

Google Cloud AutoML Vision

Google Cloud Vision API klassificerer billeder i tusinder af foruddefinerede kategorier, registrerer individuelle objekter og ansigter inden for billeder og finder og læser trykte ord indeholdt i billeder. Google Cloud AutoML Vision giver dig mulighed for at definere og træne din egen liste over kategorier. Nogle applikationer fra det virkelige liv inkluderer afsløring af skader på vindmøller fra dronefotoer og klassificering af genanvendelige produkter til affaldshåndtering.

For at oprette et Google Cloud AutoML Vision-datasæt skal du kilde mindst 100 billeder for hver kategori og mærke dem i en CSV-fil. Alle billederne og CSV-filen skal placeres i en Google Cloud Storage-spand.

Jeg sætter denne træning op til at køre i maksimalt en time, hvilket er gratis for op til 10 modeller om måneden. Jeg blev glædeligt overrasket over at se gode resultater fra den gratis træning og gik ikke med at fortsætte træningen for at forbedre præcisionen og tilbagekaldelsen.

Google Cloud AutoML giver praktiske muligheder for at udføre målrettede oversættelser, tilpasset tekstklassificering og tilpasset billedklassificering. Hver af disse API'er fungerer godt, hvis du giver det nok nøjagtigt mærkede data og tager meget mindre tid og dygtighed end at opbygge din egen neurale netværksmodel eller endda din egen overførselsindlæringsmodel. Med Google Cloud AutoML opretter du faktisk TensorFlow-modeller uden nødvendigvis at vide noget om TensorFlow, Python, neurale netværksarkitekturer eller træningshardware.

Der er mange måder at få dataforberedelsen forkert, men heldigvis kontrollerer de tre API'er alle for de mest almindelige fejl, såsom at have for få eller for mange eksempler til enhver kategori. Diagnostikken vist efter træning giver dig en god idé om, hvor godt din model fungerer, og du kan nemt tilpasse modellerne ved at tilføje flere mærkede træningsdata og køre træningen igen.

Koste: Google Cloud AutoML-oversættelse: Uddannelse koster $ 76,00 i timen, oversættelse $ 80 per million tegn efter de første 500K. Google Cloud AutoML Natural Language: Træning koster $ 3,00 pr. Time, klassificering $ 5 pr. Tusind tekstoptegnelser efter de første 30K. Google Cloud AutoML Vision: Træning koster $ 20 pr. Time efter den første time, klassificering $ 3 pr. Tusind billeder efter de første tusind.

Platform: Google Cloud Platform