0 votes
par dans 01 - Bases, concepts et histoire
Bonjour,

    Je suis totalement novice dans le deep learning et j'ai un problème à comprendre comment les neurones d'une même couche d'un réseau DNN peuvent diverger. En effet au départ, chacun des neurones de la couche n avec n >1 reçoit exactement la même information que tous les autres neurones de la même couche. Comment ne peuvent ils pas tous converger vers le même état ? Es ce du au fait que chaque neurone de la même couche à des paramètres initiaux différents ? Et que la back propagation amplifie le phénomène ? Qu'arriverait il si tout les neurones d'une même couche étaient mis dans le même état au départ (i.e. les mêmes valeurs de paramètres) ? N'hésitez pas à dire que cette question est idiote mais en précisant pourquoi...

1 Réponse

0 votes
par
sélectionné par
 
Meilleure réponse
Bonjour,

C'est une excellente question. Oui il est nécessaire que les paramètres soit différents pour que cela puisse fonctionner. En effet à l'initialisation du modèle, les poids sont générés par tirage aléatoire selon une distribution uniforme ou normale. Exactement, il s'agit des méthodes d'initialisation Xavier ou Kaiming.

Cordialement,
BC
par
Merci beaucoup pour votre réponse qui m'a permis de clarifier ce point qui me paraissait obscure.
par
Une remarque supplémentaire.
Il y a beaucoup d'aléatoire dans un réseau de neuronne. Donc en plus du tirage au sort lors de l'initialisation des poids des paramètres, il faudra aussi mélanger aléatoirement le dataset lors de l'apprentissage (en effet si le dataset est trié par catégorie, c'est catastrophique dans l'état pour l'apprentissage ... la bonne pratique est de toujours mélanger avant chaque epoch=1 passage de l'entièreté du dataset).
Donc il faut comprendre que chaque apprentissage avec la meme architecture de modèle et le meme dataset aboutit à des poids de paramètres toujours légèrement différents et un résultat toujours légèrement différent !!
...