L’immondizia è spazzatura. Non c’è alcun modo di dire più vero nell’informatica, e specialmente nel caso dell’intelligenza artificiale. Gli algoritmi di apprendimento automatico dipendono molto da dati di formazione accurati, puliti e ben etichettati da cui apprendere in modo che possano produrre risultati accurati. Se alleni i tuoi modelli di apprendimento automatico con la spazzatura, non sorprende che otterrai risultati inutili. È per questo motivo che la maggior parte del tempo trascorso durante i progetti di IA è durante le fasi di raccolta, pulizia, preparazione ed etichettatura dei dati.
Secondo un recente rapporto della ricerca di AI e della società di consulenza Cognilyticaoltre l’80% del tempo speso in progetti di intelligenza artificiale viene impiegato per trattare e scambiare dati. Ancora più importante, e forse sorprendentemente, è il modo in cui la maggior parte di questo lavoro di preparazione dei dati è intensivo per l’uomo. Affinché le forme supervisionate di apprendimento automatico funzionino, in particolare gli approcci alla rete neurale a apprendimento multiplo a più livelli, devono essere alimentati grandi volumi di esempi di dati corretti che sono opportunamente annotati, o “etichettati”, con il risultato di output desiderato. Ad esempio, se stai cercando di far sì che il tuo algoritmo di apprendimento automatico identifichi correttamente i gatti all’interno delle immagini, devi alimentare quell’algoritmo di migliaia di immagini di gatti, opportunamente etichettati come gatti, con le immagini che non hanno dati estranei o errati che eliminerà l’algoritmo mentre costruisci il modello.(Divulgazione: sono un analista principale con Cognilytica)
Preparazione dei dati: molto più di una semplice pulizia dei dati
Secondo il rapporto di Cognilytica, ci sono molti passaggi necessari per ottenere i dati nella giusta “forma” in modo che funzioni per i progetti di apprendimento automatico:
Rimozione o correzione di dati e duplicati errati – I dati nell’ambiente aziendale sono eccessivamente “sporchi” con dati, duplicati e altre informazioni errati che possono facilmente macchiare modelli di apprendimento automatico se non vengono rimossi o sostituiti.
Standardizzazione e formattazione dei dati : quanti modi diversi ci sono per rappresentare nomi, indirizzi e altre informazioni? Le immagini sono di diverse dimensioni, forme, formati e profondità di colore. Per utilizzare tutto ciò per i progetti di machine learning, i dati devono essere rappresentati nello stesso identico modo o si ottengono risultati imprevedibili.
Aggiornamento delle informazioni non aggiornate: i dati potrebbero essere nel formato corretto e accurati, ma non aggiornati. Non è possibile addestrare i sistemi di apprendimento automatico quando si mescolano dati attuali con dati obsoleti (e irrilevanti).
Migliorare e aumentare dat un – A volte è necessario dati aggiuntivi per far funzionare il modello di apprendimento della macchina, come ad esempio i campi calcolati o dati Sourced aggiuntivi per ottenere di più dal set di dati già esistenti. Se non si dispone di dati di immagine sufficienti, è possibile “moltiplicarli” semplicemente capovolgendo o ruotando le immagini mantenendo i formati dei dati coerenti.
Riduci il rumore : immagini, testo e dati possono avere “disturbi”, ovvero informazioni estranee o pixel che non sono di aiuto nel progetto di apprendimento automatico. Le attività di preparazione dei dati li cancelleranno.
Dati anonimi e di de-bias : rimuovi tutte le informazioni personali non necessarie dai set di dati di apprendimento automatico e rimuovi tutti i dati non necessari che possono alterare gli algoritmi.
Normalizzazione – Per molti algoritmi di apprendimento automatico, in particolare classificatori bayesiani e altri approcci, i dati devono essere rappresentati in intervalli standard in modo che un input non superi gli altri. La normalizzazione funziona per rendere l’allenamento più efficace ed efficiente.
Campionamento dei dati : se si dispone di set di dati molto grandi, è necessario campionare i dati da utilizzare per le fasi di addestramento, test e convalida ed estrarre i sottocampioni per assicurarsi che i dati siano rappresentativi di ciò che lo scenario reale essere come.
Miglioramento delle funzionalità : gli algoritmi di apprendimento automatico funzionano con la formazione sulle “funzionalità” nei dati. Gli strumenti per la preparazione dei dati possono accentuare e migliorare i dati in modo che sia più facilmente in grado di separare le cose su cui gli algoritmi dovrebbero essere addestrati da dati meno rilevanti.
Si può immaginare che l’esecuzione di tutti questi passaggi su gigabyte, o anche terabyte, di dati possa richiedere una quantità significativa di tempo ed energia. Soprattutto se devi farlo più e più volte finché non ottieni le cose per bene. Non sorprende che questi passaggi occupino la maggior parte del tempo di progetto di apprendimento automatico. Fortunatamente, il report descrive anche le soluzioni di fornitori di terze parti, tra cui Melissa Data, Paxata e Trifacta che hanno prodotti in grado di eseguire le suddette operazioni di preparazione dei dati su grandi volumi di dati su larga scala.
Affinché i sistemi di apprendimento automatico imparino, devono essere addestrati con dati che rappresentano la cosa che il sistema deve sapere. Ovviamente, come spiegato sopra, i dati devono essere non solo di buona qualità, ma devono essere “etichettati” con le giuste informazioni. Il semplice fatto di avere un gruppo di foto di gatti non istruisce il sistema a meno che tu non dica al sistema che quelle immagini sono gatti – o una specifica razza di gatto, o solo un animale, o qualsiasi altra cosa tu voglia che il sistema sappia. I computer non possono mettere queste etichette sulle stesse immagini, perché sarebbe un problema di pollo e uova. Come si può etichettare un’immagine se non si è alimentato con le immagini etichettate dal sistema per addestrarlo?
La risposta è che hai bisogno di persone per farlo. Sì, il cuore segreto di tutti i sistemi di intelligenza artificiale è l’intelligenza umana che contrassegna i sistemi di immagini utilizzati in seguito per allenarsi. L’etichettatura dei dati con alimentazione umana è la componente necessaria per qualsiasi modello di apprendimento automatico che deve essere addestrato su dati che non sono già stati etichettati. Vi è una crescente serie di fornitori che forniscono manodopera su richiesta per aiutare con questa etichettatura, quindi le aziende non devono creare il proprio personale o esperienza per farlo. Aziende come CloudFactory, Figure Eight e iMerit sono emerse per fornire questa capacità alle organizzazioni che sono abbastanza saggi da non costruire la propria forza lavoro per l’etichettatura dei dati necessaria.
Alla fine, ci sarà una grande quantità di reti neurali già addestrate che possono essere utilizzate dalle organizzazioni per i propri scopi del modello o estese tramite l’apprendimento del trasferimento a nuove applicazioni. Ma fino a quel momento, le organizzazioni hanno bisogno di occuparsi del lavoro dominato dall’uomo coinvolto nell’etichettatura dei dati, qualcosa che Cognilytica ha identificato richiede fino al 25% del tempo e dei costi totali del progetto di apprendimento automatico.
AI che aiuta la preparazione dei dati
Anche con tutte queste attività nella preparazione e nell’etichettatura dei dati, Cognilytica vede che l’IA avrà un impatto su questo processo. Sempre più spesso le aziende di preparazione dei dati utilizzano l’intelligenza artificiale per identificare automaticamente i modelli di dati, pulire autonomamente i dati, applicare la normalizzazione e l’aumento basati su modelli precedentemente appresi e aggregare i dati laddove necessario in base ai precedenti progetti di apprendimento automatico. Allo stesso modo, l’apprendimento automatico viene applicato all’etichettatura dei dati per accelerare il processo suggerendo potenziali etichette, applicando i bounding box e altrimenti accelerando il processo di etichettatura. In questo modo, l’IA viene applicata per aiutare a rendere i futuri sistemi IA ancora migliori.
La conclusione finale di questo rapporto è che il lato dati di qualsiasi progetto di apprendimento automatico è solitamente la parte più laboriosa. Il mercato sta emergendo per aiutare a rendere quelle mansioni di lavoro meno onerose e costose, ma non possono mai essere eliminate. I progetti di AI di successo apprenderanno come sfruttare il software ei servizi di terze parti per ridurre al minimo il costo e l’impatto complessivo e portare a una distribuzione più rapida nel mondo reale.