You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
## [Histoire de la reconnaissance des *patterns* et de l'introduction de la descente en gradient](https://www.youtube.com/watch?v=0bMe_vCZo30&t=1461s)
105
+
## [Histoire de la reconnaissance des motifs et de l'introduction de la descente en gradient](https://www.youtube.com/watch?v=0bMe_vCZo30&t=1461s)
106
106
107
107
<!--
108
108
The foregoing is the conceptual basis of *pattern* recognition before deep learning developed. The standard model of *pattern* recognition consists of feature extractor and trainable classifier. Input goes into the feature extractor, extracting relevant useful characteristics of inputs such as detecting an eye when the purpose is recognizing the face. Then, the vector of features is fed to the trainable classifier for computing weighted sum and comparing it with the threshold. Here, a trainable classifier could be a perceptron or single neural network. The problem is feature extractor should be engineered by hand. Which means, *pattern* recognition/computer vision focus on feature extractor considering how to design it for a particular problem, not much devoted to a trainable classifier.
@@ -118,9 +118,9 @@ The method of how to find it is computing gradient. For example, if we are lost
118
118
The more efficient way is called Stochastic Gradient Descent (SGD). Since we want to minimize average loss over the training set, we take one sample or small group of samples and calculate the error, then use gradient descent. Then, we take a new sample and get a new value for the error, then get the gradient which is a different direction normally. Two of the main reasons for using SGD are that it helps a model to converge fast empirically if the training set is very large and it enables better generalization, which means getting similar performance on various sets of data.
119
119
-->
120
120
121
-
La base conceptuelle de la reconnaissance des *patterns* précède le développement de l'apprentissage profond.
122
-
Le modèle standard de reconnaissance des *patterns* comprend un extracteur de caractéristiques et un classificateur pouvant être entraîné.
123
-
L'entrée va dans l'extracteur de caractéristiques, en extrayant les caractéristiques utiles pertinentes des entrées telles que la détection d'un œil lorsque le but est de reconnaître le visage. Ensuite, le vecteur de caractéristiques est envoyé au classificateur pouvant être entraîné pour calculer la somme pondérée et la comparer avec le seuil. Dans ce cas, un classificateur pouvant être entraîné peut être un perceptron ou un réseau neuronal unique. Le problème est que l'extracteur de caractéristiques doit être conçu à la main. Ce qui signifie que la reconnaissance des *patterns* et la vision par ordinateur se concentrent sur l'extracteur en considérant la façon de le concevoir pour un problème particulier, ce qui n'est pas vraiment le cas d'un classificateur pouvant être entraîné.
121
+
La base conceptuelle de la reconnaissance des motifs précède le développement de l'apprentissage profond.
122
+
Le modèle standard de reconnaissance des motifs comprend un extracteur de caractéristiques et un classificateur pouvant être entraîné.
123
+
L'entrée va dans l'extracteur de caractéristiques, en extrayant les caractéristiques utiles pertinentes des entrées telles que la détection d'un œil lorsque le but est de reconnaître le visage. Ensuite, le vecteur de caractéristiques est envoyé au classificateur pouvant être entraîné pour calculer la somme pondérée et la comparer avec le seuil. Dans ce cas, un classificateur pouvant être entraîné peut être un perceptron ou un réseau neuronal unique. Le problème est que l'extracteur de caractéristiques doit être conçu à la main. Ce qui signifie que la reconnaissance des motifs et la vision par ordinateur se concentrent sur l'extracteur en considérant la façon de le concevoir pour un problème particulier, ce qui n'est pas vraiment le cas d'un classificateur pouvant être entraîné.
124
124
125
125
Après l'émergence et le développement de l'apprentissage profond, le processus en deux étapes est passé à des séquences de modules. Chaque module a des paramètres réglables et une non-linéarité. Ensuite, il faut les empiler pour former plusieurs couches. C'est pourquoi on l'appelle "apprentissage profond". La raison pour laquelle on utilise la non-linéarité plutôt que la linéarité est que deux couches linéaires pourraient être une seule couche linéaire puisque la composition de deux linéaires est linéaire.
126
126
@@ -188,7 +188,7 @@ Experiments by Fukushima gave us an understanding of how our brain interprets th
188
188
Experiments in which researchers poked electrodes in specific areas of the visual cortex, specifically the V1 area made researchers realize that certain neurons react to motifs that appear in a very small area in a visual field and similarly with neighbouring neurons and neighbouring areas in the visual field. Additionally, neurons that react to the same visual field, react to different types of edges in an organized manner (e.g. vertical or horizontal edges). It is also important to note that there's also the idea that the visual process is essentially a feed forward process. Hence, somehow fast recognition can be done without some recurrent connections.
189
189
-->
190
190
191
-
Les expériences de Fukushima nous ont permis de comprendre comment notre cerveau interprète les données transmises à nos yeux. En résumé, on a découvert que les neurones situés devant notre rétine compriment l'entrée (connue sous le nom de normalisation du contraste) et que le signal voyage de nos yeux à notre cerveau. Ensuite, l'image est traitée par étapes et certains neurones sont activés pour certaines catégories. Ainsi, le cortex visuel effectue une reconnaissance de *patterns* de manière hiérarchique.
191
+
Les expériences de Fukushima nous ont permis de comprendre comment notre cerveau interprète les données transmises à nos yeux. En résumé, on a découvert que les neurones situés devant notre rétine compriment l'entrée (connue sous le nom de normalisation du contraste) et que le signal voyage de nos yeux à notre cerveau. Ensuite, l'image est traitée par étapes et certains neurones sont activés pour certaines catégories. Ainsi, le cortex visuel effectue une reconnaissance des motifs de manière hiérarchique.
192
192
193
193
Les expériences dans lesquelles les chercheurs ont enfoncé des électrodes dans des zones spécifiques du cortex visuel, en particulier la zone V1, ont permis de réaliser que certains neurones réagissent à des motifs qui apparaissent dans une très petite zone du champ visuel et de la même façon avec les neurones voisins et les zones voisines du champ visuel. En outre, les neurones qui réagissent au même champ visuel réagissent à différents types de bords de manière organisée (par exemple, les bords verticaux ou horizontaux). Il est également important de noter qu'il y a aussi l'idée que le processus visuel est essentiellement un processus *feed forward*. Par conséquent, une reconnaissance rapide peut être effectuée d'une manière ou d'une autre, sans que certaines connexions récurrentes soient nécessaires.
Copy file name to clipboardExpand all lines: docs/fr/week01/01.md
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -15,7 +15,7 @@ We discuss the motivation behind deep learning. We begin with the history and in
15
15
16
16
## Conférence partie A
17
17
18
-
Nous discutons de la motivation derrière l'apprentissage profond. Nous commençons par l'histoire et l'inspiration de celui-ci. Ensuite, nous discutons de l'histoire de la reconnaissance des patterns et nous introduisons la descente de gradient et son calcul par rétropropagation. Enfin, nous discutons de la représentation hiérarchique du cortex visuel.
18
+
Nous discutons de la motivation derrière l'apprentissage profond. Nous commençons par l'histoire et l'inspiration de celui-ci. Ensuite, nous discutons de l'histoire de la reconnaissance des motifs et nous introduisons la descente de gradient et son calcul par rétropropagation. Enfin, nous discutons de la représentation hiérarchique du cortex visuel.
Copy file name to clipboardExpand all lines: docs/fr/week02/02-2.md
+4-4Lines changed: 4 additions & 4 deletions
Original file line number
Diff line number
Diff line change
@@ -37,7 +37,7 @@ Note that complications might arise when the architecture of the graph is not fi
37
37
38
38
Nous considérons un exemple concret de rétropropagation assistée par un graphique visuel. La fonction arbitraire $G(w)$ est introduite dans la fonction de coût $C$, qui peut être représentée sous forme de graphique. Par la manipulation de la multiplication des matrices jacobiennes, nous pouvons transformer ce graphe en un qui calculera les gradients à l'envers. (Notez que PyTorch et TensorFlow font cela automatiquement pour l'utilisateur, c'est-à-dire que le graphe en avant est automatiquement "inversé" pour créer le graphe dérivé qui rétropropage le gradient).
*SoftMax*, qui est également un module PyTorch, est un moyen pratique de transformer un groupe de nombres en un groupe de nombres positifs entre 0$ et 1$ dont la somme vaut 1. Ces nombres peuvent être interprétés comme une distribution de probabilité. Par conséquent, il est couramment utilisé dans les problèmes de classification. $y_i$ dans l'équation ci-dessous est un vecteur de probabilités pour toutes les catégories.
228
+
*SoftMax*, qui est également un module PyTorch, est un moyen pratique de transformer un groupe de nombres en un groupe de nombres positifs entre $0$ et $1$ dont la somme vaut 1. Ces nombres peuvent être interprétés comme une distribution de probabilité. Par conséquent, il est couramment utilisé dans les problèmes de classification. $y_i$ dans l'équation ci-dessous est un vecteur de probabilités pour toutes les catégories.
229
229
230
230
$$
231
231
y_i = \frac{\exp(x_i)}{\sum_j \exp(x_j)}
232
232
$$
233
233
234
-
Cependant, l'utilisation de softmax laisse la possibilité que les gradients disparaissent dans le réseau. La disparition du gradient est un problème, car elle empêche les poids en aval d'être modifiés par le réseau neuronal, ce qui peut empêcher complètement l’entraînement du réseau neuronal. La fonction sigmoïde logistique, qui est la fonction softmax pour une valeur, montre que lorsque $s$ est grand, $h(s)$ est 1$, et lorsque s est petit, $h(s)$ est 0$. Comme la fonction sigmoïde est plate à $h(s) = 0$ et $h(s) = 1$, le gradient est de 0$, ce qui se traduit par un gradient qui disparaît.
234
+
Cependant, l'utilisation de softmax laisse la possibilité que les gradients disparaissent dans le réseau. La disparition du gradient est un problème, car elle empêche les poids en aval d'être modifiés par le réseau neuronal, ce qui peut empêcher complètement l’entraînement du réseau neuronal. La fonction sigmoïde logistique, qui est la fonction softmax pour une valeur, montre que lorsque $s$ est grand, $h(s)$ vaut $1$, et lorsque s est petit, $h(s)$ vaut $0$. Comme la fonction sigmoïde est plate à $h(s) = 0$ et $h(s) = 1$, le gradient est de $0$, ce qui se traduit par un gradient qui disparaît.
235
235
236
236
<center><imgsrc="{{site.baseurl}}/images/week02/02-2/02-2-2.png"alt="Fonction sigmoïde pour illustrer la disparition du gradient"style="background-color:#DCDCDC;" /></center>
L'équation ci-dessous montre une autre façon de considérer la même équation. La figure ci-dessous montre la partie $\log(1 + \exp(s))$ de la fonction. Lorsque $s$ est très petit, la valeur est 0$, et lorsque $s$ est très grand, la valeur est $s$. Par conséquent, elle ne sature pas et le problème du gradient disparaît.
249
+
L'équation ci-dessous montre une autre façon de considérer la même équation. La figure ci-dessous montre la partie $\log(1 + \exp(s))$ de la fonction. Lorsque $s$ est très petit, la valeur est $0$, et lorsque $s$ est très grand, la valeur est $s$. Par conséquent, elle ne sature pas et le problème du gradient disparaît.
250
250
251
251
$$
252
252
\log\left(\frac{\exp(s)}{\exp(s) + 1}\right)= s - \log(1 + \exp(s))
0 commit comments