Il dilemma dell’AutoML.  Un ingegnere delle infrastrutture… |  di Haifeng Jin |  Settembre 2023

 | Intelligenza-Artificiale

Abbiamo imparato dove siamo ora e dove stiamo andando con AutoML. La domanda è come ci arriveremo. Riassumiamo i problemi che affrontiamo oggi in tre categorie. Una volta risolti questi problemi, AutoML raggiungerà l’adozione di massa.

Problema 1: Mancanza di incentivi aziendali

La modellazione è banale rispetto allo sviluppo di una soluzione di machine learning utilizzabile, che può includere ma non è limitato alla raccolta dei dati, alla pulizia, alla verifica, all’implementazione del modello e al monitoraggio. Per qualsiasi azienda che può permettersi di assumere persone per eseguire tutti questi passaggi, i costi generali legati all’assunzione di esperti di machine learning per eseguire la modellazione sono irrisori. Quando riescono a creare un team di esperti senza troppi costi generali, non si preoccupano di sperimentare nuove tecniche come AutoML.

Pertanto, le persone inizieranno a utilizzare AutoML solo quando i costi di tutti gli altri passaggi saranno ridotti al minimo. Questo è il momento in cui il costo per assumere persone per fare la modella diventa significativo. Ora, vediamo la nostra tabella di marcia verso questo.

Molti passaggi possono essere automatizzati. Dovremmo essere ottimisti sul fatto che, con l’evoluzione dei servizi cloud, molti passaggi nello sviluppo di una soluzione di machine learning potrebbero essere automatizzati, come la verifica, il monitoraggio e la fornitura dei dati. Tuttavia, esiste un passaggio cruciale che non potrà mai essere automatizzato: l’etichettatura dei dati. A meno che le macchine non possano apprendere da sole, gli esseri umani dovranno sempre preparare i dati affinché le macchine possano apprendere.

L’etichettatura dei dati potrebbe diventare il costo principale di sviluppare una soluzione ML alla fine della giornata. Se riuscissimo a ridurre il costo dell’etichettatura dei dati, avrebbero un incentivo aziendale a utilizzare AutoML per eliminare il costo di modellazione, che sarebbe l’unico costo per lo sviluppo di una soluzione ML.

La soluzione a lungo termine: Sfortunatamente, oggi non esiste la soluzione definitiva per ridurre il costo dell’etichettatura dei dati. Faremo affidamento sui futuri progressi della ricerca sull’“apprendimento con piccoli dati”. Un percorso possibile è investire nel trasferimento dell’apprendimento.

Tuttavia, le persone non sono interessate a lavorare sul trasferimento dell’apprendimento perché è difficile pubblicare su questo argomento. Per maggiori dettagli puoi guardare questo video, Perché la maggior parte della ricerca sul machine learning è inutile.

La soluzione a breve termine: A breve termine, possiamo semplicemente mettere a punto i modelli di grandi dimensioni preaddestrati con dati di piccole dimensioni, che è un modo semplice di trasferire l’apprendimento e l’apprendimento con dati di piccole dimensioni.

In sintesicon la maggior parte dei passaggi nello sviluppo di una soluzione ML automatizzata dai servizi cloud e AutoML può utilizzare modelli preaddestrati per apprendere da set di dati più piccoli per ridurre i costi di etichettatura dei dati, ci saranno incentivi aziendali per applicare AutoML per ridurre i costi nella modellazione ML.

Problema 2: mancanza di manutenibilità

Tutti i modelli di deep learning non sono affidabili. Il comportamento del modello a volte è imprevedibile. È difficile capire perché il modello dia risultati specifici.

Gli ingegneri mantengono i modelli. Oggi abbiamo bisogno di un ingegnere per diagnosticare e riparare il modello quando si verificano problemi. L’azienda comunica con gli ingegneri per qualsiasi cosa vogliano cambiare per il modello di deep learning.

È molto più difficile interagire con il sistema AutoML rispetto a un ingegnere. Oggi è possibile utilizzarlo solo come metodo one-shot per creare il modello di deep learning fornendo al sistema AutoML una serie di obiettivi chiaramente definiti in matematica in anticipo. Se riscontri qualche problema utilizzando il modello nella pratica, non ti aiuterà a risolverlo.

La soluzione a lungo termine: Abbiamo bisogno di più ricerca sull’HCI (interazione uomo-computer). Abbiamo bisogno di un modo più intuitivo per definire gli obiettivi in ​​modo che i modelli creati da AutoML siano più affidabili. Abbiamo anche bisogno di modi migliori per interagire con il sistema AutoML per aggiornare il modello per soddisfare nuovi requisiti o risolvere eventuali problemi senza spendere troppe risorse cercando nuovamente tutti i diversi modelli.

La soluzione a breve termine: Supporta tipi più oggettivi, come FLOPS e il numero di parametri per limitare le dimensioni del modello e il tempo di inferenza, e matrice di confusione ponderata per gestire dati sbilanciati. Quando si verifica un problema nel modello, le persone possono aggiungere un obiettivo rilevante al sistema AutoML per consentirgli di generare un nuovo modello.

Problema 3: mancanza di supporto infrastrutturale

Durante lo sviluppo di un sistema AutoML, abbiamo individuato alcune funzionalità di cui avevamo bisogno nei framework di deep learning che oggi semplicemente non esistono. Senza queste funzionalità, la potenza del sistema AutoML è limitata. Sono riassunti come segue.

Innanzitutto, modelli all’avanguardia con API flessibili unificate. Per creare un sistema AutoML efficace, abbiamo bisogno di un ampio pool di modelli all’avanguardia per assemblare la soluzione finale. Il pool di modelli deve essere aggiornato regolarmente e ben mantenuto. Inoltre, le API per chiamare i modelli devono essere altamente flessibili e unificate in modo da poterli richiamare a livello di codice dal sistema AutoML. Vengono utilizzati come elementi costitutivi per costruire una soluzione ML end-to-end.

Per risolvere questo problema, abbiamo sviluppato Keras CV E PNL duralibrerie specifiche del dominio per la visione artificiale e le attività di elaborazione del linguaggio naturale basate su Keras. Raggruppano i modelli all’avanguardia in API semplici, pulite ma flessibili, che soddisfano i requisiti di un sistema AutoML.

In secondo luogo, il posizionamento automatico dell’hardware dei modelli. Potrebbe essere necessario che il sistema AutoML debba creare e addestrare modelli di grandi dimensioni distribuiti su più GPU su più macchine. Un sistema AutoML dovrebbe essere eseguibile su una determinata quantità di risorse di elaborazione, il che richiede che decida dinamicamente come distribuire il modello (parallelismo del modello) o i dati di addestramento (parallelismo dei dati) per un determinato hardware.

Sorprendentemente e sfortunatamente, nessuno dei framework di deep learning oggi può distribuire automaticamente un modello su più GPU. Dovrai specificare esplicitamente l’allocazione della GPU per ciascun tensore. Quando l’ambiente hardware cambia, ad esempio, il numero di GPU viene ridotto, il codice del modello potrebbe non funzionare più.

Non vedo ancora una soluzione chiara per questo problema. Dobbiamo concedere un po’ di tempo affinché i framework di deep learning si evolvano. Un giorno, il codice di definizione del modello sarà indipendente dal codice per il posizionamento dell’hardware del tensore.

In terzo luogo, la facilità di implementazione dei modelli. Potrebbe essere necessario distribuire qualsiasi modello prodotto dal sistema AutoML a valle dei servizi cloud, dei dispositivi finali, ecc. Supponiamo che sia ancora necessario assumere un tecnico per reimplementare il modello per l’hardware specifico prima della distribuzione, cosa che molto probabilmente avviene oggi . Perché non ti rivolgi semplicemente allo stesso tecnico per implementare il modello invece di utilizzare un sistema AutoML?

Le persone stanno lavorando su questo problema di distribuzione oggi. Per esempio, Modulare ha creato un formato unificato per tutti i modelli e ha integrato tutti i principali fornitori di hardware e framework di deep learning in questa rappresentazione. Quando un modello viene implementato con un framework di deep learning, può essere esportato in questo formato e diventare distribuibile nell’hardware che lo supporta.

Nonostante tutti i problemi di cui abbiamo discusso, ho ancora fiducia in AutoML nel lungo termine. Credo che alla fine verranno risolti perché l’automazione e l’efficienza sono il futuro dello sviluppo del deep learning. Sebbene AutoML non sia stato adottato in modo massiccio oggi, lo sarà finché la rivoluzione ML continuerà.

Fonte: towardsdatascience.com

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *