human
Qu'est-ce que le réseau de neurones artificiels ? Essayer de faire une présentation pour le collège. Ca ne donne pas de sens au sujet. Explique comme si j'avais cinq ans.
gpt
C'est la science qui consiste à résoudre des problèmes en créant un « cerveau artificiel » constitué de « neurones artificiels » organisés en couches. Il est utilisé dans l'apprentissage automatique (vous avez peut-être entendu parler de « réseaux de neurones profonds » ou de « réseaux de neurones convolutifs »), qui est la science qui consiste à donner un sens (ou à trouver des modèles dans) une énorme quantité de données. Le neurone artificiel est la plus petite unité de ces réseaux d'apprentissage. Ils sont comparables aux cellules humaines simples du cerveau et fonctionnent comme un interrupteur marche/arrêt. Un signal entrant doit atteindre un seuil pour qu'un neurone « réagisse », et cette réaction d'un neurone est utilisée en combinaison avec la réaction des neurones environnants dans la couche suivante. Pensez par exemple à la détection des bords : Il y a un espace blanc avec une ligne noire dessus sur une grille de pixels - vous voulez créer un réseau capable de vous dire si la ligne noire est horizontale, verticale ou diagonale ou autre. Chaque pixel se rapporte à 1 neurone sur ce qu'on appelle la « couche d'entrée ». Chaque neurone ou pixel blanc émet un signal négatif, chaque neurone ou pixel noir émet un signal positif. Sur la couche suivante, les informations de 3x3 (ou plus) neurones ou pixels sont combinées, vous donnant des informations sur « l'orientation » du modèle d'activation. Maintenant, si vous voulez gérer des tâches plus difficiles que la détection de l'orientation d'une ligne sur un fond blanc, vous créez des réseaux avec plusieurs couches, chaque couche faisant une transformation des données et en même temps réduit la dimensionnalité des données en combinant des informations de plusieurs de ces neurones. Mais puisque vous avez maintenant probablement des milliers de neurones et des milliers de connexions entre les neurones, vous ne pouvez plus faire cela par vous-même. C'est là que l'apprentissage entre en jeu. Disons que vous voulez classer différents types de voitures sur des images. Vous créez le réseau , et lui montrez certaines de ces voitures . Vous lui montrez une ferrari , mais c'est écrit " bmw " , ce qui est faux . Mais à quel point était-ce mal ? Et qu'aurait-il dû faire pour donner la bonne réponse ? Vous utilisez maintenant un algorithme appelé " Rétropropagation " , abréviation de " propagation arrière des erreurs " , qui calcule le gradient de la fonction d' erreur par rapport aux connexions du réseau neuronal et aux forces de connexion . Cela fonctionne à l'envers, donc les gradients sont calculés en premier pour la dernière couche, ainsi vous obtenez la différence ou l'erreur pour chaque connexion neuronale. Sur cette base, les connexions sont ajustées. Vous faites cela un millier de fois pour un millier d'images Ferrari afin que le réseau obtienne une "généralisation" de ce qu'est une Ferrari. Si vous allez lui montrer de nouvelles Ferrari maintenant, et qu'il les classe correctement, votre réseau est « entraîné ». Cependant , la plupart de ces réseaux sont trop compliqués pour être pleinement compris par les humains . Personne ne sait pourquoi le neurone x de la couche z a maintenant exactement ces poids et ces connexions une fois le réseau formé. Ces réseaux font des erreurs étranges qu'aucun humain ne ferait jamais (regardez ce qu'on appelle les attaques contradictoires), et sont sensibles au bruit. Ils ne résolvent toujours qu'un seul problème à la fois : Vous pouvez avoir un réseau qui classe les voitures, mais si vous voulez qu'il classe les vélos, vous devez l'entraîner à nouveau. [Ici] (URL_0) est une belle visualisation d'un réseau neuronal convolutif qui fait la reconnaissance des chiffres (pas super bon mais fonctionne généralement bien)