Informazioni su Visione personalizzata
Si userà il servizio Visione personalizzata di Servizi di Azure AI per creare un modello di Machine Learning. Si esaminerà ora il funzionamento di Visione personalizzata, quindi verrà illustrato il processo dettagliato per creare un modello, dall'idea al modello completamente funzionante.
Cos'è Machine Learning?
È probabile che si sia già sentito parlare di intelligenza artificiale (IA), Machine Learning o Deep Learning. Si vedranno ora le definizioni di questi termini in modo da comprenderne le differenze.
Intelligenza artificiale (IA): l'intelligenza artificiale è il processo di programmazione di un computer per simulare l'intelligenza umana. L'intelligenza artificiale include Machine Learning. L'idea di base dell'AI è simulare l'intelligenza umana tramite un computer, ma sono previste molte tecniche diverse. La tecnica illustrata in questo modulo è quella di Machine Learning.
Machine Learning: Machine Learning è un subset dell'intelligenza artificiale. Machine Learning usa tecniche per eseguire il training dei computer in base all'esperienza. È possibile considerare l'esperienza come un set di dati, in cui sono già state date risposte giuste e sbagliate. In Machine Learning il computer usa le risposte fornite per migliorare il completamento di attività specifiche. L'ambito di Machine Learning include anche Deep Learning.
Deep Learning: Deep Learning è un subset di Machine Learning basato su reti neurali artificiali (ANN, Artificial Neural Network). Il processo di apprendimento è detto profondo (deep) perché le reti neurali artificiali sono costituite da più livelli: input, output e livelli nascosti. Ogni livello contiene unità che trasformano i dati di input in informazioni che il livello successivo può usare per un'attività predittiva specifica. La struttura delle reti neurali consente a un computer di imparare tramite l'elaborazione dati.
Quando si crea un modello, si cerca di simulare l'intelligenza umana. Si usano i dati come "esperienza" per eseguire il training di un modello per imparare un'attività o una funzione specifica.
Che cos'è l'apprendimento induttivo?
Visione personalizzata di Servizi di Azure AI usa l'apprendimento induttivo. L'apprendimento induttivo è la capacità di usare le conoscenze precedenti per risolvere in modo più efficiente il problema corrente. Gli esseri umani adottano sempre questo approccio per risolvere i problemi. Ora si stanno scoprendo nuovi modi per farlo anche con i computer.
Nel servizio Visione personalizzata di Azure, l'apprendimento induttivo funziona aggiungendo alla rete neurale un livello costituito da un modello già sottoposto a training. Il modello con training preliminare offre un vantaggio quando si esegue il training di nuovi dati. Il training inizia con un dominio di conoscenza generale. Vengono aggiunti nuovi livelli alla rete neurale per risolvere un problema specifico. In questo caso il problema da risolvere è come identificare gli uccelli. Iniziando con un modello già sottoposto a training si ottengono risultati migliori senza aggiungere grandi quantità di dati.
Come creare un modello di Machine Learning
Per comprendere meglio il processo di creazione di un modello di Machine Learning, di seguito viene illustrata una panoramica dettagliata di tale processo. Il processo verrà completato per creare un modello di Machine Learning.
Porre una domanda precisa. In questo caso la domanda è: è possibile identificare la specie di un uccello da un'immagine, per documentare tendenze e modelli diversi nelle abitudini degli uccelli?
Preparare i dati. Si dispone di un set di dati con immagini di uccelli pulito e preparato da Cornell Lab, quindi questo passaggio è già stato completato. Se si creasse un modello diverso, sarebbe necessario trovare i dati e prepararli per il training del modello. Sarebbe necessario trovare dati utili per rispondere alla domanda a cui si è interessati.
Selezionare un algoritmo. Il servizio Visione personalizzata in Azure usa una rete neurale convoluzionale, quindi questo passaggio non pone problemi. Una rete neurale convoluzionale è un tipo di Deep Learning comunemente usato per analizzare le immagini. Poiché l'algoritmo è già stato creato, è possibile risparmiare davvero molto tempo.
Selezionare un modello candidato. Il servizio Visione personalizzata offre grafici e dati utili per determinare se il funzionamento del modello è tale da rispondere alla domanda in modo soddisfacente. Quando si ritiene che il funzionamento del modello sia soddisfacente, è possibile procedere al passaggio successivo: il test.
Testare il modello usando dati non visti in precedenza (nuovi). È importante testare il modello aggiungendo nuovi dati. Si eseguirà una ricerca in Internet per trovare alcune immagini di test con cui verificare le prestazioni del modello con dati non usati per il training. Più avanti nel modulo verrà illustrato perché è importante eseguire il test in questo modo.
Distribuire il modello. Il servizio Visione personalizzata offre alcune opzioni per la distribuzione del modello. È possibile eseguire la distribuzione in un endpoint per integrare il modello oppure è possibile scaricare il modello. Se si scarica il modello, è possibile scegliere tra più formati e distribuire quello più adatto per il progetto. In questo modulo verrà illustrato come usare l'opzione di distribuzione rapida disponibile nel portale di Visione personalizzata.
Verrà ora illustrato come creare il modello.