AI news:

il portale di approfondimento sul mondo dell'intelligenza artificiale

AI news: il portale di approfondimento sul mondo dell'intelligenza artificiale

Le differenze tra machine learning e deep learning

machine learning e deep learning

Machine learning e deep learning non sono la stessa cosa. Questi presentano infatti svariate differenze che li rendono più o meno adatti a seconda delle esigenze e degli specifici ambiti di applicazione.

Con “intelligenza artificiale” ci si riferisce in generale alla tecnologia in grado di svolgere mansioni tipicamente eseguite da esseri umani. All’interno dell’ambito, vengono dunque utilizzati software diversi a seconda delle esigenze e questi si basano sul concetto di machine learning e su quello di deep learning, termini spesso erroneamente utilizzati come sinonimi, ma che nascondono differenze molto importanti.

Il machine learning indica appunto la capacità delle macchine di apprendere automaticamente, mentre il deep learning – specializzazione del machine learning – significa apprendimento approfondito.  

machine learning e deep learning
Le differenze tra machine learning e deep learning (immagine: Levity)

Definizione di machine learning

Il machine learning permette al sistema di apprendere autonomamente attraverso l’esperienza, senza che sia stato specificamente programmato. Questo sistema si avvale di statistiche per delineare un modello all’interno di una grande quantità di dati, costituiti da numeri, parole, immagini o qualsiasi altra cosa possa essere archiviata digitalmente. L’addestramento di un sistema di machine learning consiste quindi nella sua esposizione a una grande quantità di dati, che lo aiuteranno a identificare pattern con una maggiore “sicurezza” e a fornire output sempre più accurati.

Esistono quattro tipologie di machine learning:

  • Apprendimento supervisionato: i dati di input sono etichettati e si può prevedere quale potrebbe essere l’output. Per esempio, dovendo portare il sistema a classificare immagini di cani e gatti, si dovranno fornire alla macchina informazioni adeguate, indicando dettagli come la forma della coda di gatti e cani, la forma dei loro occhi, le altezze, il colore, ecc. Una volta completato l’addestramento, il sistema, controllando i singoli dati all’interno di un’immagine a lui sottoposta, potrà classificarla correttamente.
  • Apprendimento non supervisionato: i dati di input non sono etichettati, per cui è impossibile prevedere quale sarà l’output. L’pprendimento non supervisionato lavora confrontando i dati alla ricerca di similarità o differenze. Si pensi all’esempio precedente: in questo caso, le immagini sono sconosciute al sistema e questo le classificherà per somiglianze e differenze, trovando modelli e categorie in modo più autonomo.
  • Apprendimento semi-supervisionato: i dati sono etichettati solo in parte, quindi alcune informazioni vengono fornite e altre vengono ricavate per comparazione dal sistema stesso.
  • Apprendimento per rinforzo: il sistema apprende attraverso l’interazione con l’ambiente in cui si trova; l’azione che il sistema compirà si basa sullo stato attuale e verrà valutata positivamente o negativamente a posteriori attraverso feedback.

La composizione di un training dataset adatto e – nel caso dell’apprendimento supervisionato – correttamente etichettato è dunque elemento essenziale per la buona riuscita della fase di addestramento dell’algoritmo utilizzato.

Definizione di deep learning

L’apprendimento profondo è una sottocategoria di machine learning. Si tratta di un tipo di sistemi che cerca di imitare la struttura base e il funzionamento del cervello umano attraverso la creazione di reti neurali artificiali (artificial neural networks), le quali sono divise in tre parti:

  • livello di input (dati forniti);
  • livello nascosto (non immediatamente comprensibile dall’esterno);
  • livello di output (risultato). 

Il livello nascosto – spesso suddiviso a sua volta in più livelli che costituiscono reti più ampie – è ciò che rende l’apprendimento di questo genere di sistemi “profondo” ed è anche ciò che permette loro di risolvere problemi ancora più complessi.

In questi sistemi, infatti, la fase di apprendimento è svolta interamente dalla rete neurale cui vengono sottoposti i dati di interesse. Questa procederà all’estrazione delle caratteristiche e classificherà gli input, dando a ogni dato un peso differente e facendo passare le informazioni al livello neurale successivo. Qualora la rilevanza associata a uno specifico dato risultasse a posteriori male attribuita, il sistema tornerà dunque indietro ad aggiornarla per determinare output appropriati.

Infine, anche il deep learning può essere supervisionato o non supervisionato a seconda che i dati di input siano o meno etichettati.

Differenze tra machine learning e deep learning

Tra il machine learning e il deep learning esistono dunque diverse differenze, a partire dalle modalità di apprendimento fino ad arrivare alle applicazioni.

Machine learningDeep learning
DatiRichiede migliaia di dati (strutturati) per essere addestratoRichiede un dataset (non necessariamente strutturato) molto più ampio
ApprendimentoNecessita di un addestratore umanoNon richiede la presenza di un essere umano (auto-apprendimento)
AlgoritmoVariabileRete neurale di algoritmi
Tempi esecuzionePochi minuti o oreFino a settimane
DatabaseControllabileNecessita di milioni di punti dati
OutputValori numericiIn qualsiasi forma
ApplicazioneOperazioni di routineCompiti complessi

Competenze differenti per diversi ambiti di applicazione

Le caratteristiche di questi sistemi li rendono più o meno adatti a diversi settori sulla base di specifiche esigenze.

Il machine learning, per quanto più “semplice” del deep learning, risulta molto utile nell’assistenza clienti (grazie ai chatbot), nell’ambito dell’online marketing attraverso l’analisi del mercato e l’estrapolazione di dati utili, nel settore delle vendite grazie alle sue doti predittive e nell’elaborazione di strategie commerciali (e non) all’interno di un’azienda.

Anche il deep learning viene utilizzato nell’assistenza clienti e la rende ancor più efficiente, ma può essere utilizzato – tra le altre cose – anche nell’ambito della sicurezza informatica, in quello della computer vision, per migliorare gli assistenti vocali, per la creazione di contenuti di diversa natura e anche nei veicoli a guida autonoma.

Come scegliere tra machine e deep learning?

Sia il machine learning che il deep learning presentano pro e contro, ma l’elemento distintivo più importante consiste nella necessità o meno dell’apporto umano per l’estrazione delle caratteristiche dai dati utilizzate in fase di apprendimento e per ulteriori elaborazioni. Come sopra indicato, infatti, il machine learning richiede il lavoro iniziale di un essere umano per l’estrazione, mentre il deep learning può funzionare anche sulla base di dati grezzi, come immagini e contenuti testuali.

machine learning e deep learning
L’estrazione delle caratteristiche nel machine learning e nel deep learning (immagine: Technologynous)

Per esempio, se si intende addestrare un modello per il riconoscimento visivo di automobili, inizialmente è necessario identificare le caratteristiche tipiche di un’auto (colori, dimensioni, forma, ecc.) ed estrarle per alimentare l’algoritmo. Nel caso del deep learning, questo processo è eseguito direttamente dalla rete neurale, senza che vi sia la necessità dell’intervento umano. Proprio per questo motivo, i tempi di esecuzione dell’apprendimento profondo sono molto più estesi. Di conseguenza, non esiste una risposta univoca su quale sia il sistema migliore. Semplicemente, se il dataset utilizzato non è di grandi dimensioni, non è necessario utilizzare un sistema di deep learning, in quanto l’estrazione umana delle caratteristiche non richiederebbe troppo tempo. Se, invece, i dati a disposizione sono moltissimi ed estrarre le caratteristiche non risulta così agevole, un sistema più complesso e autonomo di deep learning potrebbe essere preferibile.