Fondamenti di IA

Modelli di apprendimento automatico personalizzati o già pronti all’uso?

mm
Aggiungi Unite.AI alle tue fonti preferite su Google

Quando è meglio costruire piuttosto che acquistare una soluzione già pronta?

Le aziende possono adottare diversi approcci per lo sviluppo di modelli. Dai servizi di apprendimento automatico completamente gestiti, fino a modelli personalizzati. A seconda dei requisiti aziendali, dell’esperienza disponibile e delle limitazioni di pianificazione, devono prendere una decisione: dovrebbero sviluppare soluzioni personalizzate da zero? O dovrebbero scegliere un servizio già pronto all’uso?

Per tutte le fasi del lavoro di apprendimento automatico, deve essere presa una decisione su come i diversi pezzi del puzzle si incastreranno insieme. Dalla raccolta dei dati, alla preparazione e alla visualizzazione, fino all’ingegneria delle caratteristiche, all’addestramento del modello e alla valutazione, gli ingegneri di apprendimento automatico si chiedono ripetutamente la stessa domanda: sarà una soluzione implementata personalmente, scritta e sviluppata da zero? O sarà un servizio già pronto all’uso?

Ma quando è meglio costruire piuttosto che acquistare una soluzione già pronta? I principali fattori di differenziazione tra i due approcci sono: gli sforzi di pre-elaborazione, la velocità di sviluppo e l’esperienza richiesta.

Cosa considerare quando si decide di utilizzare modelli di apprendimento automatico personalizzati o già pronti all’uso?

Sforzi di pre-elaborazione

I progetti di apprendimento automatico affrontano tutti i tipi di sfide, ma forse la sfida più grande è la disponibilità di dati di addestramento. La mancanza di dati di addestramento può fermare un progetto prima che sia anche solo iniziato. Prima che un progetto sia anche solo iniziato, può affrontare costi di pre-elaborazione significativi per la raccolta dei dati, l’etichettatura dei dati, la pulizia e la pre-elaborazione. Questo è il noto trabocchetto in cui molti progetti di apprendimento automatico falliscono: la pre-elaborazione finisce per occupare l’80% delle risorse allocate, mentre poche risorse sono lasciate per l’addestramento effettivo del modello e la valutazione.

Le soluzioni già pronte all’uso alleviano gli sforzi e i dolori degli sforzi di pre-elaborazione. Sono state progettate per eseguire le operazioni più comuni con solo una piccola configurazione richiesta. La cosa migliore di loro è: le soluzioni già pronte all’uso esistono per tutte le fasi del lavoro di apprendimento automatico.

D’altra parte, le implementazioni personalizzate richiedono generalmente più sforzi di pre-elaborazione. Ciò non significa che debbano essere completamente scartate: sono ancora necessarie per affinare una certa fase di apprendimento automatico alle specifiche del problema da risolvere. Un set di dati particolarmente “sporco” può richiedere alcune regole di pulizia speciali. Allo stesso tempo, un set di caratteristiche specifico può richiedere un’ingegneria delle caratteristiche personalizzata, proprio come le architetture neurali possono richiedere leggeri aggiustamenti. In questo caso, le soluzioni personalizzate costruite da zero sono probabilmente in grado di coprire tutte le esigenze.

Velocità di sviluppo

Le soluzioni già pronte all’uso si concentrano sulla configurazione piuttosto che sull’implementazione. Invece di allocare risorse per capire cosa deve essere fatto, i team di apprendimento automatico si concentreranno su come i diversi pezzi del puzzle si incastreranno insieme. Questo approccio consente alle aziende, ai ricercatori e agli ingegneri di implementare rapidamente prototipi e prove di concetto. Invece di reinventare la ruota, le soluzioni già pronte all’uso rendono possibile sfruttare la conoscenza esistente, risparmiando così tempo di sviluppo.

Le soluzioni personalizzate implementate da zero sono note per essere molto più lente in termini di velocità di sviluppo. Ciò è dovuto alle loro esigenze di manutenzione aumentate: gli ingegneri devono capire sia cosa che come della soluzione. Allo stesso modo, più complessa è la soluzione, più tempo sono richieste le risorse per garantire la sua scalabilità e disponibilità durante la produzione. Da questo punto di vista, le soluzioni personalizzate e gli sforzi di tempo sono direttamente proporzionali: più complessa è la soluzione, più tempo richiederà.

Di solito, tuttavia, la verità è da qualche parte a metà: un codice esistente verrà rifatto e adattato alle esigenze del progetto attuale. Tale è il caso dell’approccio di apprendimento per trasferimento noto per l’addestramento del modello.

Esperienza

Proprio come ci sono molti livelli ai quali il machine learning viene eseguito, ci sono molti livelli di esperienza ai quali i modelli di apprendimento automatico possono essere sviluppati, che vanno dalle interfacce senza codice a quelle costruite da zero.

Le soluzioni già pronte all’uso esistono per le quali è richiesta poca esperienza di apprendimento automatico. Utilizzando interfacce intuitive e anche approcci di trascinamento e rilascio, è diventato estremamente semplice per chiunque (dai business analyst agli ingegneri software) costruire e distribuire un tipo di modello di apprendimento automatico. Sebbene questo approccio semplice allo sviluppo del modello possa funzionare per scopi di prototipazione, è improbabile che soddisfi i requisiti dei sistemi di produzione.

L’esperienza è ancora richiesta per configurare, impostare e mantenere correttamente le soluzioni già pronte all’uso in produzione. I workaround, i patch di codice, la connessione a diverse interfacce API e la gestione dei problemi di distribuzione sono compiti comuni richiesti per garantire le prestazioni dei modelli in ambienti di produzione.

Le soluzioni personalizzate sono solitamente implementate a livello infrastrutturale e non c’è modo di evitarlo: l’esperienza è definitivamente richiesta. A seconda delle dimensioni dell’azienda e degli obiettivi del progetto, possono essere richiesti team multidisciplinari per la manutenzione dei sistemi di produzione. Gli scienziati dei dati, gli ingegneri di apprendimento automatico e gli analisti aziendali si uniscono per comprendere i risultati dell’inferenza e mantenere i modelli di produzione.

Cosa utilizzare: un modello di apprendimento automatico personalizzato o già pronto all’uso?

Una soluzione di apprendimento automatico sarà costruita da molti componenti e servizi individuali che devono unirsi in una soluzione coerente. Non si tratta mai di andare al 100% personalizzato o al 100% già pronto all’uso, poiché diversi problemi aziendali richiedono soluzioni diverse. Più spesso di quanto si pensi, le soluzioni basate sull’apprendimento automatico sono costruite da una miscela di entrambi: servizi già pronti all’uso per estrarre informazioni generali, combinati con modelli personalizzati per una maggiore accuratezza e per la modellazione della conoscenza specifica del dominio.

Il trucco è sapere quando implementare soluzioni personalizzate da zero e quali parti del progetto possono sfruttare i vantaggi dei servizi già pronti all’uso. Ciò dipende ampiamente dal tipo di problema che si sta affrontando, dai requisiti aziendali, dai dati disponibili e dalle limitazioni generali dell’ambiente di sviluppo.

Per ulteriori informazioni su AI e tendenze tecnologiche, vedere Josh Miramant, CEO di Blue Orange Digital, per soluzioni basate sui dati per Supply Chain, automazione della documentazione sanitaria e altro.

Lei potrebbe anche essere interessato:

Utilizzare NLP per classificare i commenti sui social media

Come l’elaborazione del linguaggio sta essere migliorata attraverso il modello BERT open source di Google (GOOGL )

Josh Miramant è il CEO e fondatore di Blue Orange Digital, un'agenzia di data science e machine learning di alto livello con sedi a New York City e Washington DC. Miramant è un noto relatore, futurista e consulente strategico per aziende e startup. Aiuta le organizzazioni a ottimizzare e automatizzare le loro attività, implementare tecniche analitiche basate sui dati e comprendere le implicazioni di nuove tecnologie come l'intelligenza artificiale, i big data e l'Internet delle Cose.