Deep Learning

La potenza (matematica) del Deep Learning

L’uso del deep learning è cresciuto rapidamente negli ultimi dieci anni, grazie all’adozione della tecnologia basata su cloud e all’uso di sistemi di deep learning nei big data che prevede che il deep learning diventi un mercato da 93 miliardi di dollari entro il 2028. Questo grazie al diffondersi della percezione positiva di questo strumento e alle sempre più accessibili tecnologie.

Ma cos’è esattamente il deep learning e come funziona?

Il deep learning è un sottoinsieme dell’apprendimento automatico che utilizza le reti neurali per eseguire l’apprendimento e le previsioni. Il deep learning ha mostrato prestazioni straordinarie in varie attività, che si tratti di testo, serie temporali o visione artificiale. Il successo del deep learning deriva principalmente dalla disponibilità di dati di grandi dimensioni e dalla potenza di calcolo. Tuttavia, è più di questo, il che rende il deep learning di gran lunga migliore di qualsiasi algoritmo di machine learning classico.

Deep learning: reti e funzioni neurali

Una rete neurale è una rete interconnessa di neuroni in cui ogni neurone è un approssimatore di funzione limitata. In questo modo, le reti neurali sono considerate approssimatori di funzioni universali. Se ricordi dalla matematica del liceo, una funzione è una mappatura da uno spazio di input a uno spazio di output. Una semplice funzione sin(x) sta mappando dallo spazio angolare (da -180° a 180° o da 0° 360°) allo spazio dei numeri reali (da -1 a 1).

Vediamo perché le reti neurali sono considerate approssimatori di funzioni universali. Ciascun neurone apprende una funzione limitata: f(.) = g(W_X) dove W è il vettore di peso da apprendere, X è il vettore di input e g(.) è una trasformazione non lineare. W_X può essere visualizzato come una linea (in corso di apprendimento) nello spazio ad alta dimensione (iperpiano) e g(.) può essere qualsiasi funzione differenziabile non lineare come sigmoide, tanh, ReLU, ecc. (comunemente usata nel deep learning Comunità). L’apprendimento nelle reti neurali non è altro che trovare il vettore di peso ottimale W. Ad esempio, in y = mx+c, abbiamo 2 pesi: m e c. Ora, a seconda della distribuzione dei punti nello spazio 2D, troviamo il valore ottimale di m & c che soddisfa alcuni criteri: la differenza tra i punti y previsti e quelli effettivi è minima per tutti i punti dati.

L’effetto strato

Ora che ogni neurone è una funzione non lineare, impilamo diversi di questi neuroni in uno “strato” in cui ogni neurone riceve lo stesso insieme di input ma apprende pesi diversi W. Pertanto, ogni strato ha un insieme di funzioni apprese: [f1, f2, …, fn], chiamati come valori di livello nascosti. Questi valori vengono nuovamente combinati, nel livello successivo: h(f1, f2, …, fn) e così via. In questo modo, ogni livello è composto da funzioni del livello precedente (qualcosa come h(f(g(x)))). È stato dimostrato che attraverso questa composizione possiamo apprendere qualsiasi funzione complessa non lineare.

Il deep learning è una rete neurale con molti livelli nascosti (solitamente identificati da > 2 livelli nascosti). Ma in effetti, ciò che il deep learning è una complessa composizione di funzioni da un livello all’altro, trovando così la funzione che definisce una mappatura dall’input all’output. Ad esempio, se l’input è l’immagine di un leone e l’output è la classificazione dell’immagine che l’immagine appartiene alla classe dei leoni, il deep learning sta imparando una funzione che mappa i vettori di immagini alle classi. Allo stesso modo, l’input è una sequenza di parole e l’output è se la frase di input ha un sentimento positivo/neutro/negativo. Pertanto, il deep learning sta imparando una mappa dal testo di input alle classi di output: neutro o positivo o negativo.

Deep learning come interpolazione

Da un’interpretazione biologica, gli esseri umani elaborano le immagini del mondo interpretandole gerarchicamente poco a poco, da caratteristiche di basso livello come bordi e contorni a caratteristiche di alto livello come oggetti e scene. La composizione della funzione nelle reti neurali è in linea con quella, in cui ogni composizione della funzione sta imparando caratteristiche complesse su un’immagine. L’architettura di rete neurale più comune utilizzata per le immagini è la Convolutional Neural Network (CNN), che apprende tali funzionalità in modo gerarchico e quindi una rete neurale completamente connessa classifica le funzionalità dell’immagine in classi diverse.

Usando di nuovo la matematica del liceo, dato un insieme di punti dati in 2D, proviamo ad adattare una curva attraverso l’interpolazione che rappresenta in qualche modo una funzione che definisce quei punti dati. Più complessa è la funzione che adattiamo (in interpolazione, ad esempio, determinata tramite grado polinomiale), più si adatta ai dati; tuttavia, meno generalizza per un nuovo punto dati. È qui che il deep learning deve affrontare le sfide e ciò che viene generalmente definito un problema di overfitting: adattarsi il più possibile ai dati, ma compromettere in generalizzazione. Quasi tutte le architetture nel deep learning hanno dovuto gestire questo importante fattore per poter apprendere una funzione generale che può funzionare ugualmente bene su dati invisibili.

Un pioniere del deep learning, Yann LeCun (creatore della rete neurale convoluzionale e vincitore del premio ACM Turing) ha pubblicato sul suo handle di Twitter (basato su un documento): “Il Deep Learning non è così impressionante come pensi perché è una semplice interpolazione risultante da glorificato raccordo a curva. Ma nelle dimensioni elevate, non esiste una cosa come l’interpolazione. Nelle alte dimensioni, tutto è estrapolazione”. Pertanto, come parte dell’apprendimento delle funzioni, l’apprendimento profondo non fa altro che interpolazione o, in alcuni casi, estrapolazione. Tutto qui!

Ciao, sono Michele!

Sono molto felice di saperti qui.
Ogni giorno ti raccontiamo qualcosa di nuovo sull'AI e sulle nuove tecnologie. Seguici sui social o iscriviti alla newsletter!

Iscriviti alla newsletter!

Iscrivendoti accetti la nostra Privacy Policy

Ti va di rimanere aggiornatə?

Niente spam, niente pubblicità. Ogni tanto una mail. Tutto qui.
(Ah, ovviamente i tuoi dati non verranno mai ceduti)

Iscrivendoti accetti la nostra Privacy Policy