Cos’è il Deep Learning.
Il Deep Learning è qualcosa di estremamente complesso e fondamentale ai fini della comprensione dell’intelligenza artificiale.
Partiamo dalle basi e dal suo funzionamento.
Il Deep Learning necessità di una quantità straordinaria di dati etichettati e di una capacità elaborativa molto potente.
Stiamo parlando di una sottocategoria dell’AI ma anche dello stesso Machine Learning.
L’apprendimento del Deep Learning è basato su modelli di apprendimento su più livelli, come se fosse un videogioco, o meglio, come se fosse il nostro cervello.
La differenza sostanziale tra il Machine Learning e Deep Learning è che quest’ultimo apprende ed elabora i dati come se fosse proprio un essere umano, poiché formula “ipotesi” che non hanno uno schema lineare e ben prestabilito.
Quindi, l’apprendimento profondo (Deep Learning) utilizza tecniche di apprendimento a diversi “strati”, in cui quest’ultimi sono collegati all’interno di una rete neurale, facendo passare l’input ricevuto (informazione acquisita come l’immagine di un volto) attraverso ognuno dei diversi strati.
L’esempio più lampante è quello relativo al nostro sistema di visione e l’elaborazione del dato.
Il cervello elabora delle informazioni visive provenienti dagli occhi, le quali sono state immagazzinate dalla retina.
Per capire ancora meglio il concetto di Deep Learning dobbiamo fare un passo indietro e parlare di Reti Neurali.

Una rete neurale può essere “reale” come quella all’interno del nostro cervello, dove vengono acquisite migliaia di informazioni attraverso i nostri occhi, le nostre dita (ad esempio il feedback tattile di una tastiera) il nostro palato, e tanto altro, poi immagazzinate nel cervello, seguendo appunto un percorso a strati (step).
Una rete artificiale invece è la “stessa cosa”, simulata però in un computer.
Il concetto complesso del Deep Learning può diventare estremamente semplice proprio pensando al funzionamento del nostro cervello e di come apprendiamo un dato, sia esso visivo sia tattile.
Apprendimento attraverso neuroni collegati tra loro, che ricevono specifici segnali in entrata (input) e appresi nel sistema principale, nel nostro caso il cervello.
Il Deep Learning su una macchina deve fare esattamente la stessa cosa, utilizzando però gli strumenti tecnologici, e non organici, che possiede. Detta in maniera fin troppo semplice.
Un sistema artificiale vede e classifica un’immagine attraverso pixel e numeri, noi invece no.
Ad oggi il Deep Learning viene utilizzato per migliorare in maniera significativa l’elaborazione delle immagine ed il linguaggio, che se ci pensiamo bene, sono i punti attualmente più fragili dell’intelligenza artificiale.
I social, ad esempio, al giorno d’oggi utilizzano tantissimo il Deep Learning per riconoscere immediatamente i contenuti che vengono pubblicati e magari eliminarli immediatamente, se questi non seguono le regole della piattaforma, il tutto senza necessità di un umano.
Oppure far distinguere ad una macchina fotografica un cane piuttosto che un cavallo.
La differenza sostanziale quindi tra il Deep Learning ed il Machine Learning è la possibilità del primo di migliorare le sue prestazione con l’aumentare dei dati forniti.
Il machine learning ha un apprendimento “superficiale” dove una volta raggiunto un determinato livello di comprensione, non sono possibili ulteriori sviluppi.
Quindi dobbiamo utilizzare sempre il Deep Learning in un sistema e non il Machine Learning? Assolutamente no, dipende dal contesto e da cosa ci serve in quel momento.

Un termine che è ricorrente in campo AI è proprio la parola “dipende”, poiché non c’è un vero e proprio ordine rigoroso di seguire e/o utilizzare le tecnologie.
Come per il machine learning, anche per il Deep Learning abbiamo sostanzialmente tre modi per addestrare il sistema.
- Addestramento da zero
Raccogliere un quantitativo enrome di set di dati etichettati e progettare una rete in grado di apprendere le informazioni.
- Transfer Learning
Il metodo più utilizzato, poiché il sistema migliora un modello già precedentemente addestrato.
Si inseriscono “semplicemente” nuovi dati per migliorare l’intero sistema.
- Estrazione feature
Utilizzare la rete come estrattore di feature, in cui è possibile l’estrazione di informazioni in qualsiasi momento durante l’apprendimento e successivamente poterle utilizzare per altri sistemi.
Se volete giocare con il Deep Learning e capirlo in maniera pratica, dopo tutte queste parole, allora trovate il link di Google Teachable Machine.
Uno strumento sensazionale per comprendere meglio le meccaniche dietro l’intelligenza artificiale e il Deep Learning.
https://teachablemachine.withgoogle.com
Il funzionamento è guidato ed estremamente semplice, quindi non mi resta che augurarvi buon divertimento.