Histoire du deep learning.

Comme c’est le cas pour les arbres, le deep learning n’est pas apparu un beau jour et à partir de rien. Tout à commencé à partir d’une graine, une graine qui s’est développée et qui n‘a cessé de grandir pour créer le deep learning.

Histoire du deep learning.

Le neurone formel : 1943

Le deep learning est un concept nouveau qui émerge depuis les années 2000. Si le deep learning lui est nouveau, ce n’est pas le cas des réseaux de neurones artificiels, concept sur lequel se base le deep Learning.

On entend parler du premier neurone artificiel en 1943 lorsque Warren McCulloch et Walter Pitts publient leur premier modèle mathématique et informatique du neurone biologique: le neurone formel.

Le neurone formel est directement inspiré du neurone biologique.

À gauche le schéma d'un neurone biologique et à droite le schéma du neurone formel de 1943.

À gauche le schéma d'un neurone biologique et à droite le schéma du neurone formel de 1943.

Un neurone biologique se compose d’un corps cellulaire qui comprend le noyau du neurone et la plupart des éléments complexes de la cellule. De nombreux prolongements appelés dendrites et un très long prolongement appelé axone. À son extrémité, l’axone se décompose en plusieurs ramifications que l’on appelle télodendrons qui se terminent par de minuscules structures appelés synapses et qui sont directement reliés à des dendrites ou directement au corps cellulaire d’autres neurones.

Un neurone reçoit des signaux électriques par le biais des dendrites et lorsque que le neurone reçoit suffisamment de signaux en un temps donné (quelques millisecondes) alors il déclenche ses propres signaux.

Le fonctionnement d’un neurone est relativement simple mais lorsqu’un neurone est connecté à des milliers d’autres et qu’il y a des milliards de neurones, cela crée des réseaux capable de résoudre des problèmes extrêmement complexes.

Warren McCulloch et Walter Pitts propose le premier neurone artificiel (1943), qui est un modèle très simplifié du neurone biologique. Ce neurone artificiel possède une ou plusieurs entrées et une sortie binaires.

Réseau de neurones formels se comportant comme l'opération OU logique.

Réseau de neurones formels se comportant comme l'opération OU logique.

 

Son fonctionnement est simple, le neurone active sa sortie (sortie active = 1) selon si ses entrées dépassent un certain seuil. À partir de ce neurone, il est possible de construire n’importe quel réseau de neurone artificiel capable de résoudre des opérations logiques.
 

Le perceptron: 1957

Le perceptron est inventé en 1957 par F. Rosenblatt. Le perceptron est un neurone formel, le plus petit réseau neuronal possible, dont la fonction d’activation est une fonction échelon également appelé Linear Threshold Function, ce qui fait du perceptron une unité linéaire à seuil (ou Linear Threshold Unit). Le perceptron a en entrées des nombres quelconques (contrairement aux neurones formels de McCulloch et Pitts qui ont des entrées binaires) et chaque entrée est pondérée par un poids (w). Le perceptron possède un algorithme lui permettant sur un ensemble de données avec des étiquettes d’apprendre les poids des entrées.

Schéma d'une LTU.

Schéma d'une LTU.

La LTU sur le schéma ci-dessus fonctionne de la façon suivante : X1 et X2 (voir le schéma ci-dessus) sont deux entrées (cela correspond aux signaux qu’un neurone biologique reçoit par le biais des synapses d’un autre neurone). W1 et W2 sont des poids qui vont respectivement pondérer X1 et X2 (poids synaptiques). Ensuite, le symbole Σ (grand sigma) indique une somme, on va donc faire la somme des deux entrées X1 et X2 pondérées par W1 et W2. Le résultat de cette somme est la valeur d’entrée de la fonction d’activation (dernier cadre). Cette fonction détermine la sortie Y. 

Le symbole σ (petit sigma) est un seuil. Lorsque la valeur en entrée de la fonction d'activation est supérieur à ce seuil le neurone est actif (la sortie est égale à 1), lorsque cette valeur est inférieur à ce seuil il est non-actif (la sortie vaut alors 0 ou -1). Quand la valeur en entrée de la fonction d’activation est au alentour du seuil, on est dans ce que l’on appelle la phase de transition.
Pour l’exemple du perceptron avec la fonction échelon, il n’y a pas de phase de transition.

Fonction d'activation échelon : la sortie vaut 0 si l’entrée est négative et elle vaut 1 si l’entrée est positive.

Fonction d'activation échelon : la sortie vaut 0 si l’entrée est négative et elle vaut 1 si l’entrée est positive.

Le principe du perceptron est de classer les données qu’il reçoit en entrée en deux groupes (0 ou 1). Cependant un perceptron ne peut classer que des données linéairement séparables, c’est-à-dire des données que l’on peut séparer en deux groupes. De plus, il existe des adaptations du perceptron pour séparer des données en plus de deux groupes et dans ce cas le perceptron à plusieurs sorties.

Les perceptrons multicouches: MLP (1986)

Un percetron multicouche se représente généralement sous la forme suivante:

Perceptron multicouche.

Perceptron multicouche.

On distingue une couche d’entrée en vert (il peut y avoir autant d’entrées que l’on souhaite), des couches cachées en bleu (ici une couche unique avec 5 neurones) et une couche de sortie en jaune (il peut y avoir plus d’une sortie).
Les perceptrons multicouches sont des réseaux neuronaux et ont pour objectif de classer des données plus complexe que celles classées par un perceptron. Pour cela le perceptron multicouches observe chacune des données qu'il possède et met à jour chaque poids de chaque neurone de chaque couche de son réseau afin de classifier au mieux cette base de données. L’algorithme que les perceptrons multicouches utilisent pour mette à jour leurs poids s’appel la rétropropagation du gradient de l’erreur.

Le deep learning dans les années 2010

Ce que l’on appelle un réseau de neurones profond est un réseau neuronal avec au minimum deux couches cachées (il peut y en avoir autant qu’on le souhaite).
La révolution du deep learning est lié à la puissance des ordinateurs qui ne cesse d'augmenter et qui permet la création et l’entraînement de réseaux neuronaux avec des dizaines de couches cachées. L'essor du deep learning vient également de la quantité de données qui ne cesse de s'accumuler.

Vous pouvez également consulter les articles suivants:

Vous avez un projet et vous pensez que le deep learning peut améliorer vos résultats ? Contactez-nous !