Please enable JavaScript.
Coggle requires JavaScript to display documents.
Stanford CS231N - Convolutional Neural Networks - Coggle Diagram
Stanford CS231N - Convolutional Neural Networks
fonctionnal perspective
Convolutionnal layer
le but est de garder la structure spatiale de l'image (contrairement à l’aplatir complètement avec de la donner au modèle)
correspond à l'application d'un filtre plus petit que l'image (par convention de taille impaire comme 5x5x3) en réalisant un produit scalaire de la portion de l'image par le filtre
Chaque filtre retire des information particulière dans l'image et plus on stack de filtre les uns à la suite des autres, plus l'information retenue dans les dernières couches sera complexe
Output size = (N - F) / stride + 1
avec F la taille du filtre
N le nombre de pixels
Sride le slide choisi
exemple :
N = 7, F = 3 output size = (7 - 3) / 1+1 = 5
On peut ajouter un "padding", qui correspond à ajouter des zéros autour de la matrice représentant l'image afin d'en adapter la taille à la convolution sans ajouter d'information
Par convention :
si pour une convolution de FxF,
si F = 3, zero pad with 1,
si F = 5, zero pad with 2,
si F = 9, zero pad with 3
Parcours toute l'image avec le filtre en centrant le filtre sur chaque pixel (ou avec un slide précis comme tous les 2 pixels appelé le "stride")
Pooling layer
réduit la taille de la représentation de l'image et donc plus facile à traiter ensuite
ne provoque aucun changement de profondeur
exemple :
une activation map de 224x224x64, après application de la couche de pooling, la taille sera de 112x112x64, tout en maintenant le plus d'information possible
type de pooling :
max pooling
applique un filtre de taille choisie (exemple 2x2) et ne récupère que la valeur maximale dans ce filtre pour construire la représentation d'après (la valeur maximale dans cette petite matrice représente normalement l'information la plus importante à la compréhension de cette partie de l'image)
average pooling
pareil avec la valeur moyenne du filtre, mais moins efficace
essayer d'éviter l'overlap (pas de padding)
History
Frank Rosenblatt - Perceptron - 1957
pas de backpropagation à ce moment
Widrow and Hoff - Adaline / Madeline - 1960 - Multi layer perceptron
Toujours pas de backpropagation
Rumelhart - 1986 - first back propagation
Hinton and Salakhutdinov - 2006 - revival of research in Deep Learning
2012
First strong results in image classification through CNN
AlexNet