Home » Intelligenza Artificiale » 📋 URL
I convolutional Neural Network sono un tipo di Neural Network tipicamente utilizzati per processare dati di tipo spaziale come le immagini. La struttura che viene utilizzata per processare tali dati è il kernel, ovvero un pattern di pesi (di fatto una matrice) che viene traslato nelle diverse porzioni dell’immagine per estrarre delle informazioni utilizzate per rappresentare le caratteristiche più importanti dell’immagine in questione.
Il termine convolutional, ovvero, impropriamente, convoluzionale, è il termine che rappresenta l’intera famiglia di Neural Network che utilizza la convoluzione per applicare il kernel (la matrice) ai diversi pixel dell’immagine.
Introduciamo ora il vocabolario che utilizzeremo per descrivere alcuni parametri che verranno utilizzati nel calcolo della convoluzione:
- Stride: la distanza s che separa il centro di ogni kernel
- Padding: la porzione di pixel che vengono aggiunti ai bordi dell’immagine e impostati a 0 per evitare che di perdano informazione nei bordi
Quando applichiamo il kernel all’immagine stiamo, di fatto, moltiplicando due matrici: il kernel stesso e una porzione dell’immagine che stiamo manipolando della stessa grandezza del kernel. Per applicare il kernel all’intera immagine avremo bisogno di ripetere più volte questa operazione, spostandolo di volta in volta della quantità s di stride.
Esempio: convoluzione unidimensionale con un kernel di grandezza \ell=3 e stride s=2:
In poche parole
✅ I Convolutional Neural Networks (CNNs) sono un tipo di reti neurali utilizzate principalmente per l’elaborazione di dati spaziali come le immagini. Utilizzano la convoluzione, che consiste nell’applicazione di un kernel (una matrice di pesi) alle diverse parti dell’immagine.
✅ Nella convoluzione, il kernel viene moltiplicato per una porzione di pixel corrispondente nell’immagine da elaborare. Sono presenti due parametri importanti: lo stride, che indica la distanza tra i centri dei kernel, e il padding, ovvero l’aggiunta di pixel a valore nullo nei bordi dell’immagine per evitare che vengano perse informazioni.
✅ L’operazione di convoluzione viene ripetuta su tutta l’immagine, spostando il kernel della quantità di stride specificata.