Archivi di immagini, testi, e-mail, log d’accesso ai sistemi, transazioni dei clienti, registrazioni da telecamere e sensori IoT usati in fabbrica o su apparati cliente. Questi sono alcuni esempi di dataset aziendali che possono essere valorizzati sul fronte del business attraverso l’utilizzo più efficace di software AI. Valore che cresce ulteriormente quando è possibile avvalersi anche di fonti dati esterne, pubbliche o private, che possono andare dai commenti su social network ai big data resi accessibili presso terze parti specializzate.
Machine learning e deep learning sono le tecniche software AI che permettono d’imparare dai dati, ricavare modelli di conoscenza utili per realizzare compiti di classificazione dei dati (individuazione dei contenuti di immagini/video, di pattern indicativi su tentativi di frode o comportamenti dei clienti ecc.) e inferenza con flussi di dati che giungono dall’esterno in tempo reale, per dare raccomandazioni a chi deve prendere decisioni tempestive oppure inviare squadre di tecnici laddove l’insieme d’indizi ed esperienze precedenti fa supporre la prossimità di un guasto (manutenzione predittiva).
La creazione dei dataset a misura di software AI
Tra i problemi da affrontare per impiegare software AI che sfruttano algoritmi di machine learning e deep learning, ci sono la selezione dei dati utili per l’ottenimento del risultato (la predizione o l’azione intelligente desiderate) e la traduzione nel formato più appropriato.
I dati utili al software AI sono quelli significativi per gli eventi d’interesse, ossia che hanno correlazioni con l’ambito che il sistema deve affrontare. Dati contenenti immagini di oggetti inanimati, per esempio, sono inutili per l’alimentazione di un sistema di riconoscimento facciale.
Il data scientist ha il compito di verificare che i dati forniti al software AI siano in linea con l’utilizzo previsto e correttamente formattati. Il formato dei dati per l’alimentazione di un sistema di deep learning è un tensor, ossia un array multidimensionale ottenuto convertendo formati d’immagine, video, suono, voce, testo e serie temporali in vettori sui quali possono essere applicate le operazioni dell’algebra lineare. Questo può richiedere complesse operazioni di pulizia, normalizzazioni e standardizzazioni per rendere i dati utilizzabili.
La preparazione dei dataset per allenare il software AI
La messa a punto di software AI basati sull’apprendimento artificiale richiede la creazione di set di dati dedicati all’allenamento e alla validazione dei sistemi. Raccogliere e preparare dati in quantità sufficienti per questi scopi è un compito difficile. Può richiedere molto tempo al data scientist e soprattutto conoscenze specifiche per la selezione delle informazioni più rilevanti. La competenza “umana” è fondamentale per ricercare i dati grezzi e trasformarli nelle rappresentazioni numeriche che gli algoritmi possono comprendere.
La creazione di dataset per il training ha grande valore nell’ambito della data science, perché è strettamente correlata con la capacità di risolvere problemi attraverso software AI. Un compito assimilabile alla creazione di un racconto, capace di guidare la rete neurale di deep learning nell’estrazione delle caratteristiche utili dal set di formazione, così come farà in seguito dai dati sconosciuti che si troverà a elaborare. Per creare i set di dati richiesti serve capire il problema da risolvere e a cosa il sistema deve prestare attenzione.
La creazione del modello attraverso training e test
Per validare un software AI che usa il deep learning servono almeno due differenti set di dati, rispettivamente dedicati al training e al test, creati a partire da campionature casuali realizzate da un corpus dati molto più ampio.
Il primo set di dati, il più grande, è il set di training che ha lo scopo d’insegnare alla rete neurale come valutare le diverse caratteristiche, regolandole in base alla probabilità di ridurre al minimo gli errori nei risultati. I coefficienti di calcolo, o parametri, sono contenuti nei tensori e insieme codificano il modello dei dati su cui è stato fatto il training. Il modello è in pratica il risultato finale che si ottiene addestrando la rete neurale.
Il secondo set di dati che entra in gioco, dimensionalmente più piccolo, ha lo scopo di provare che il software di AI funziona. Il test verrà effettuato soltanto dopo aver addestrato la rete neurale, e i risultati prodotti dovrebbero confermare la capacità della rete di produrre risultati affidabili con un basso livello d’errore per i compiti a cui è destinata. Se non si ottengono risultati precisi, occorre ritornare alla fase di training, esaminare i parametri utilizzati per ottimizzare la rete, nonché rivedere la qualità dei dati e le tecniche di pre-elaborazione.