Histoire du 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.

Il comprend également de nombreux prolongements appelés dendrites et un très long prolongement appelé axone qui peut être plusieurs milliers de fois plus long que les dendrites. À 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 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 le réseau de neurone le plus simple, il est composé de neurones qui fonctionnent légèrement différemment que le neurone formel. Ces neurones sont appelés des unités linéaires à seuil (LTU, Linear Treshold Unit). Les LTU ont en entrées des nombres quelconques (contrairement aux neurones formels qui ont des entrées binaires) et chaque entrée est pondérée par un poids :

 Schéma d'un LTU.

Schéma d'un LTU.

Le LTU fonctionne de la façon suivante : X1 et X2 (voir le schéma ci-dessus) sont deux entrées qui contiennent une valeur quelconque (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 échelon (dernier cadre).

Cette fonction va déterminer la valeur de la sortie Y en fonction de sa valeur d’entrée. Le symbole σ (petit sigma) est un seuil. Lorsque la valeur en entrée (à cette 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, avec la fonction échelon, cette phase de transition est en théorie inéxistante, la sortie vaut 1 si l’entrée de la fonction échelon vaut 0 :

 Fonction d'activation échelon avec un seuil de 0.

Fonction d'activation échelon avec un seuil de 0.

Un perceptron peut être compposé d’un ou plusieurs LTU en entrées et d’une ou plusieurs sorties. Les perceptrons permettent de résoudre des problèmes de classification linéaires.

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), une couche cachée en bleu (ici avec 5 neurones) et une couche de sortie en jaune (il peut y avoir plus d’une sortie).
Les perceptrons multicouches ont pour objectif de classer différentes données selon leur étiquette. Pour cela le perceptron observe chacune des données qu'il possède et met à jour chaque poids de chaque neurone de son réseau afin de classifier au mieux cette base de données. L’algorithme que les perceptrons utilisent pour mette à jour leurs poids s’appel la rétropropagation du gradient de l’erreur.

Le deep learning (les années 2010)

Ce que l’on appelle un réseau de neurones profond est un perceptron avec au minimum deux couches cachées (il peut y en avoir autant qu’on le souhaite). La révolution du deep learning vient également de la quantité de données qui ne cesse d’augmenter. Ce nouveau contexte a permis l’essor des réseaux de neurones profonds.

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

Posted on April 9, 2018 and filed under Intelligence artificielle.