Recensione: Google Cloud AutoML è un vero e proprio machine learning automatizzato

Quando cerchi di addestrare automaticamente il miglior modello di machine learning per i tuoi dati, c'è AutoML, o machine learning automatizzato, e poi c'è Google Cloud AutoML. Google Cloud AutoML è una marcia in più. 

In passato ho esaminato H2O Driverless AI, Amazon SageMaker e Azure Machine Learning AutoML. L'intelligenza artificiale senza driver esegue automaticamente l'ingegneria delle funzionalità e l'ottimizzazione degli iperparametri e afferma di funzionare come i master Kaggle. Amazon SageMaker supporta l'ottimizzazione degli iperparametri. Azure Machine Learning AutoML passa automaticamente attraverso funzionalità, algoritmi e iperparametri per algoritmi di machine learning di base; una funzione separata per l'ottimizzazione degli iperparametri di Azure Machine Learning consente di eseguire lo sweep di iperparametri specifici per un esperimento esistente.

Questi sono buoni, ma Google Cloud AutoML va a un livello completamente diverso e personalizza le reti neurali profonde ad alta precisione e testate in battaglia di Google per i tuoi dati taggati. Anziché partire da zero durante l'addestramento dei modelli dai dati, Google Cloud AutoML implementa l'apprendimento automatico del trasferimento profondo (il che significa che parte da una rete neurale profonda esistente addestrata su altri dati) e la ricerca dell'architettura neurale (il che significa che trova la giusta combinazione di extra livelli di rete) per la traduzione delle coppie linguistiche, la classificazione del linguaggio naturale e la classificazione delle immagini.

In ogni area, Google dispone già di uno o più servizi pre-addestrati basati su reti neurali profonde e enormi set di dati etichettati. Questi potrebbero funzionare per i tuoi dati senza modifiche e dovresti testarlo per risparmiare tempo e denaro. Se questi servizi non fanno quello che ti serve, Google Cloud AutoML ti aiuta a creare un modello che lo fa, senza che tu sappia come eseguire l'apprendimento del trasferimento o anche come creare reti neurali.

Il transfer learning offre due grandi vantaggi rispetto all'addestramento di una rete neurale da zero. Innanzitutto, richiede molti meno dati per l'addestramento, poiché la maggior parte dei livelli della rete è già ben addestrata. In secondo luogo, funziona molto più velocemente, poiché ottimizza solo gli strati finali.

Traduzione AutoML di Google Cloud

Quindi, ad esempio, puoi allenarti contro 1.000 coppie di frasi in due lingue in un'ora o due con l'apprendimento del trasferimento di traduzione di Google Cloud AutoML. La rete neurale di base da personalizzare, NMT, ha impiegato centinaia di migliaia di ore per addestrarsi da zero per ogni coppia linguistica, su un gran numero di CPU e GPU. Tieni presente che la tariffa oraria per l'addestramento di un modello di traduzione personalizzato è attualmente di $ 76.

La Guida per principianti di AutoML Translation spiega le nozioni di base su ciò che può fare Google Cloud AutoML Translation e perché lo useresti. In sostanza, perfeziona un modello di traduzione generale esistente per uno scopo di nicchia. Non è necessario svolgere alcuna formazione per la traduzione generale delle centinaia di lingue che Google già supporta, ma sarà necessario eseguire l'apprendimento di trasferimento se si desidera creare una rete di traduzione per vocabolario o utilizzo specializzati . Un esempio citato da Google è la traduzione in tempo reale di documenti finanziari sensibili al fattore tempo. La traduzione generica non utilizza sempre i termini artistici corretti per la finanza.

 L'impostazione della formazione per Google Cloud AutoML Translation è un processo in cinque passaggi, come mostrato nelle schermate seguenti, dopo aver preparato un file con coppie di frasi. Ho utilizzato le 8.720 coppie inglese-spagnolo per i prompt delle app forniti da Google nell'AutoML Translation Quickstart, formattato come file di valori separati da tabulazioni. Google Cloud AutoML Translation supporta anche il formato TMX (Translation Memory eXchange) basato su XML per le coppie di frasi.

Noterai che non è possibile controllare l'hardware (CPU, GPU, TPU e memoria) utilizzato per eseguire l'allenamento. È intenzionale: la formazione utilizzerà ciò di cui ha bisogno. Non sono inoltre disponibili opzioni per controllare i livelli di rete neurale aggiunti al modello, il numero di epoche da eseguire o i criteri di arresto.

Una volta completato l'addestramento del modello, è possibile visualizzare il miglioramento (se tutto va bene) nel punteggio BLEU rispetto al modello di base e provare a fare previsioni con il modello. Questa formazione ha richiesto 0,9 ore (meno del previsto) e costa $ 68,34.

Google Cloud AutoML Natural Language

L'API di Google Natural Language accetta testo e prevede entità, opinioni, sintassi e categorie (da un elenco predefinito). Se il tuo problema di classificazione del testo non rientra in nessuno di questi, puoi fornire un set di istruzioni etichettato e utilizzare Google Cloud AutoML Natural Language per creare un classificatore personalizzato.

Per configurare AutoML Natural Language per l'addestramento, è necessario acquisire i dati, etichettarli, prepararli come file CSV ed eseguire l'addestramento. Puoi anche utilizzare l'interfaccia utente di AutoML Natural Language per caricare ed etichettare i dati, se preferisci.

Una volta completato l'addestramento del modello, è possibile visualizzare la matrice di precisione, richiamo e confusione del modello. È inoltre possibile regolare la soglia del punteggio per il compromesso precisione / richiamo desiderato. Per ridurre al minimo i falsi negativi, ottimizzare per il richiamo. Per ridurre al minimo i falsi positivi, ottimizzare per la precisione.

Questa formazione ha richiesto 3,63 ore (circa come previsto) e costa $ 10,88.

Google Cloud AutoML Vision

L'API di Google Cloud Vision classifica le immagini in migliaia di categorie predefinite, rileva singoli oggetti e volti all'interno delle immagini e trova e legge le parole stampate contenute nelle immagini. Google Cloud AutoML Vision ti consente di definire e addestrare il tuo elenco di categorie. Alcune applicazioni nella vita reale includono il rilevamento dei danni alle turbine eoliche dalle foto dei droni e la classificazione dei materiali riciclabili per la gestione dei rifiuti.

Per configurare un set di dati AutoML Vision di Google Cloud, è necessario generare almeno 100 immagini per ogni categoria e etichettarle in un file CSV. Tutte le immagini e il file CSV devono risiedere in un bucket di Google Cloud Storage.

Ho impostato questo allenamento in modo che duri al massimo un'ora, che è gratuito per un massimo di 10 modelli al mese. Sono stato piacevolmente sorpreso di vedere buoni risultati dall'allenamento gratuito e non mi sono preoccupato di continuare l'allenamento per migliorare la precisione e il richiamo.

Google Cloud AutoML offre comode opzioni per eseguire traduzioni mirate, classificazione del testo personalizzata e classificazione delle immagini personalizzata. Ognuna di queste API funziona bene se fornisci dati sufficientemente accuratamente etichettati e richiede molto meno tempo e abilità rispetto alla creazione del tuo modello di rete neurale o anche del tuo modello di apprendimento del trasferimento. Con Google Cloud AutoML stai effettivamente creando modelli TensorFlow, senza necessariamente sapere nulla di TensorFlow, Python, architetture di rete neurale o hardware di formazione.

Ci sono molti modi per sbagliare la preparazione dei dati, ma fortunatamente le tre API controllano tutti gli errori più comuni, come avere troppi o troppo pochi esemplari per qualsiasi categoria. La diagnostica mostrata dopo l'addestramento ti dà una buona idea di come funziona il tuo modello e puoi facilmente modificare i modelli aggiungendo più dati di addestramento etichettati e rieseguendo l'addestramento.

-

Costo: Google Cloud AutoML Translation: la formazione costa $ 76,00 l'ora, la traduzione $ 80 per milione di caratteri dopo i primi 500.000. Google Cloud AutoML Natural Language: la formazione costa $ 3,00 l'ora, la classificazione $ 5 per mille record di testo dopo i primi 30.000. Google Cloud AutoML Vision: la formazione costa $ 20 l'ora dopo la prima ora, la classificazione $ 3 per mille immagini dopo le prime mille. 

Piattaforma: Google Cloud Platform