Andiamo subito al centro della questione: cos’è il Deep Learning? La traduzione letterale è “apprendimento profondo”, un termine che però risulta piuttosto limitativo. Il Deep Learning è una branca del Machine Learning, che invece significa letteralmente “apprendimento automatico”.
Abbiamo così tracciato una prima differenza tra Machine Learning e Deep Learning, rientranti entrambi nella sfera dell’Intelligenza Artificiale.
Pur essendo un concetto piuttosto complesso, il Deep Learning viene utilizzato quotidianamente da tutti noi: in forma privata ma anche nelle aziende tecnologicamente avanzate.
Esso è presente negli smartphone e negli assistenti vocali in grado di riconoscere le voci umane. Viene utilizzato nelle macchine di produzione industriale, le quali interrompono la loro azione quando rilevano persone troppo vicine, ma è anche una dotazione di tutte le auto moderne con guida automatica. Quando ad esempio esse individuano e leggono i cartelli stradali, agiscono di conseguenza.
Nei seguenti paragrafi analizziamo più nello specifico il Deep Learning, la sua relazione con il Machine Learning e le differenze tra i due. Cercheremo di estrapolare e snocciolare i concetti principali per renderli più fruibili.
Per comprendere cos’è il Deep Learning dobbiamo risalire alla fonte, cioè all’Intelligenza Artificiale.
L’Intelligenza Artificiale è una tecnologia che consente alle macchine di “pensare”, “ragionare”, agire in totale autonomia, svolgere compiti in modo intelligente e risolvere efficacemente problemi. L’AI nel corso del tempo ha sviluppato tante sottosezioni, come il linguaggio naturale, la computer vision ed il Machine Learning.
Il Machine Learning si basa sul concetto di apprendimento autonomo. Significa che una macchina, dopo un periodo di training e di analisi, è in grado di svolgere gli stessi compiti, generalmente noiosi e ripetitivi, assegnati fino a qualche anno fa agli esseri umani. Le macchine dal loro database sono in grado di analizzare e scandagliare tutti i dati a loro disposizione, per poi estrapolare le informazioni più pertinenti per risolvere un determinato problema.
Esempi perfetti di Machine Learning sono i chatbot, che si sostituiscono agli esseri umani e sono perfettamente in grado di sostenere una conversazione in tempo reale.
In questa sorta di processo evolutivo arriviamo finalmente al Deep Learning che, essendo una “costola” del Machine Learning, fondamentalmente svolge le stesse funzioni ma segue processi decisamente diversi ed ancora più accurati. Le macchine, sfruttando il Deep Learning, riescono ad imparare seguendo un esempio specifico tramite le reti neurali. Proprio le reti neurali sono il fulcro attorno cui ruota il Deep Learning e su di esse è opportuno approfondire ulteriormente il discorso.
Le reti neurali possono essere considerate dei modelli matematici che simulano i processi del cervello umano. Il nostro cervello, quando si trova ad analizzare una situazione o a risolvere un problema, agisce secondo uno schema ben definito per individuare la soluzione più adatta. Le reti neurali funzionano più o meno nello stesso modo, consentendo alle macchine di imparare più in fretta secondo uno schema preciso. Esattamente come il cervello umano, le reti neurali sistemano i dati in modo gerarchico e li organizzano in specifici livelli di importanza. In questo modo, durante il processo, estrapolano i dati più pertinenti per la risoluzione di un problema.
Volendo fare un esempio possiamo analizzare il comportamento delle reti neurali dinanzi a forme complesse. I neuroni del primo strato individuano i bordi, quelli del secondo strato le forme complesse, quelli del terzo strato le forme ancora più complesse, quelli del quarto strato i dettagli e così via.
Si tratta quindi di un sistema scalabile, cioè con la capacità di modificarsi in caso di variazioni notevoli della tipologia o della mole dei dati trattati.
Proprio qui risiede la principale differenza tra Machine Learning e Deep Learning: il primo, dopo aver raggiunto un determinato livello di prestazioni, non è più scalabile né migliorabile, mentre il secondo migliora le sue prestazioni con l’aumentare dei dati.