Chapitre 1 : Réseau de neurones artificiels
Les systèmes informatiques qui sont modélisés d'après les réseaux neuronaux biologiques qui composent le cerveau des animaux sont connus sous le nom de réseaux neuronaux artificiels, ou ANN, en abrégé. Ces réseaux sont plus souvent appelés réseaux neuronaux, ou simplement NN.
Un RNA est construit sur un réseau d'unités ou de nouds interconnectés appelés neurones artificiels. Ces neurones sont censés imiter grossièrement les neurones que l'on trouve dans un cerveau biologique. Chaque connexion, similaire aux synapses que l'on trouve dans les cerveaux réels, a la capacité d'envoyer un signal à d'autres neurones. Un neurone artificiel est un neurone qui reçoit d'abord des signaux, puis analyse ces signaux, puis envoie des messages à d'autres neurones auxquels il est lié. Le « signal » à une connexion est un nombre réel, et la sortie de chaque neurone est calculée par une fonction non linéaire de la somme de ses entrées. Le « signal » à une connexion est appelé le « signal » à la connexion. Les arêtes sont un autre nom pour les connexions. Le poids des dendrites neuronales et des connexions de bord change souvent en fonction de l'apprentissage continu. L'intensité du signal au niveau d'une connexion peut être augmentée ou diminuée en fonction du poids. Il est possible que les neurones aient un seuil, et que ce n'est que lorsque le signal total dépasse ce seuil que le neurone envoie un signal. Dans la plupart des cas, les groupes de neurones sont organisés en couches. Il est possible pour chaque couche d'apporter des modifications uniques aux données qu'elle reçoit. Les signaux se frayent un chemin de la première couche, connue sous le nom de couche d'entrée, à la couche finale, connue sous le nom de couche de sortie, peut-être après avoir traversé les couches plus d'une fois.
Les instances de traitement, dont chacune a une « entrée » et une « sortie » connues, permettent aux réseaux neuronaux d'apprendre (ou d'être entraînés) en créant des connexions pondérées en probabilité entre les deux, qui sont ensuite stockées à l'intérieur de la structure de données du réseau lui-même. C'est ainsi que les réseaux neuronaux apprennent. Le processus d'entraînement d'un réseau neuronal à l'aide d'un exemple existant implique souvent de calculer la différence entre la sortie traitée du réseau (généralement une prédiction) et une sortie cible. Ceci est fait afin de déterminer dans quelle mesure le réseau a appris de l'exemple. C'est dans cette distinction que réside l'erreur. Le réseau apportera ensuite les ajustements nécessaires à ses associations pondérées conformément à une règle d'apprentissage et en utilisant cette valeur d'erreur. La sortie générée par le réseau neuronal à la suite de modifications successives deviendra progressivement similaire à la sortie prévue. Après un nombre suffisant de ces modifications, la formation peut être interrompue en fonction de conditions spécifiées après avoir été terminée. Ce type d'apprentissage est appelé apprentissage supervisé.
Ces types de systèmes « apprennent » à effectuer des tâches en pensant à des exemples, dans la plupart des cas sans être programmés avec des règles pertinentes pour les activités elles-mêmes. Par exemple, dans le domaine de la reconnaissance d'images, ils peuvent apprendre à reconnaître les images contenant des chats en analysant des exemples d'images qui ont été étiquetés manuellement comme « chat » ou « sans chat », puis en utilisant les résultats pour reconnaître les chats dans d'autres images. De cette façon, ils apprendraient à identifier les images qui contiennent des chats en analysant les images qui ont été étiquetées manuellement comme « chat » ou « pas de chat ». Ils y parviennent malgré le fait qu'ils n'ont aucune connaissance préalable sur les chats, comme le fait que les chats ont des poils, une queue, des moustaches et des visages similaires à ceux des chats. Au lieu de cela, ils développent des traits d'identification de manière entièrement automatisée à partir des instances qu'ils analysent.
Ce sont Warren McCulloch et Walter Pitts qui ont découvert que les perceptrons de base étaient incapables de traiter le circuit exclusif ou et que les ordinateurs n'avaient pas la capacité de traiter les réseaux neuronaux qui étaient utiles.
En 1970, l'approche générale pour la différenciation automatisée (AD) des réseaux liés discrets de fonctions dérivables imbriquées avait été développée par Seppo Linnainmaa a été publiée. en termes de critères tels que l'identification des panneaux de signalisation (IJCNN 2012).
Les ANN ont d'abord été conçus comme un effort pour imiter la structure du cerveau humain afin de résoudre des problèmes difficiles à résoudre pour les approches algorithmiques traditionnelles. Ils se sont rapidement concentrés sur l'amélioration des résultats empiriques, abandonnant en grande partie leurs efforts pour rester fidèles aux origines biologiques de leurs produits. Les neurones sont liés les uns aux autres dans une variété de configurations différentes, ce qui permet à la sortie de certains neurones de devenir l'entrée d'autres neurones. Le réseau a la forme d'un graphique qui est dirigé et pondéré.
Les réseaux de neurones artificiels (RNA) sont constitués de neurones artificiels, qui sont essentiellement tirés de réseaux neuronaux biologiques. Chaque neurone artificiel reçoit des entrées et génère une sortie unique capable d'être distribuée à plusieurs neurones supplémentaires. Les valeurs de caractéristique d'un échantillon de données externes, telles que des photos ou des articles, peuvent servir d'entrées. Alternativement, les sorties d'autres neurones peuvent servir dans cette capacité. Le travail, tel que l'identification d'un élément dans une image, est complété par les sorties des derniers neurones de sortie du réseau neuronal.
Afin de déterminer quelle est la sortie du neurone, nous devons d'abord calculer la somme pondérée de toutes les entrées du neurone. Cette somme doit être calculée en tenant compte des poids des connexions qui vont des entrées au neurone. Nous allons ajouter un terme de biais à ce total.
Dans l'apprentissage profond, les neurones sont souvent disposés en plusieurs couches, car ce type d'apprentissage met l'accent sur la complexité. Les neurones d'une couche ne peuvent établir des connexions qu'avec d'autres neurones de la couche immédiatement avant et de la couche qui la suit immédiatement. La couche qui reçoit des données de l'extérieur est appelée couche d'entrée. La couche de sortie est celle qui génère le produit fini dans son intégralité. Il y a au moins une et peut-être plusieurs couches secrètes entre elles. Il existe également des réseaux avec une seule couche et des réseaux sans couches. Il est possible que de nombreux modèles de connexion existent entre les deux niveaux. Ils peuvent être « complètement liés », ce qui signifie que chaque neurone d'une couche est capable de se connecter à chaque neurone de la couche supérieure. Ils peuvent être regroupés, c'est-à-dire lorsqu'un groupe de neurones d'une couche se lie à un seul neurone de la couche suivante, réduisant ainsi le nombre de neurones dans cette couche. La mise en commun est l'un des moyens par lesquels les neurones peuvent communiquer entre eux.
Un hyperparamètre est une sorte de paramètre constant, dont la valeur est déterminée avant le début du processus d'apprentissage. Le processus d'apprentissage permet d'obtenir les valeurs des paramètres. Le taux d'apprentissage, le nombre de couches cachées et la taille du lot sont tous des exemples d'hyperparamètres. Il est possible que les valeurs de certains hyperparamètres dépendent des valeurs d'autres hyperparamètres. Par exemple, l'épaisseur de certaines couches peut changer en fonction de la quantité totale de couches.
L'apprentissage est le processus par lequel le réseau s'adapte pour mieux s'attaquer à un travail en tenant compte des observations d'échantillons. L'apprentissage consiste à ajuster les poids (et, dans certains cas, les seuils) du réseau afin d'obtenir une prédiction plus précise. Pour y parvenir, il faut réduire autant que possible les erreurs observées. L'apprentissage est considéré comme complet lorsque l'examen d'autres données n'aide pas à réduire le taux d'erreur de manière significative. Même après avoir été enseigné, le taux d'erreur ne devient généralement pas complètement nul. Dans la plupart des cas, le réseau devra être modifié s'il est déterminé, après apprentissage, que le taux d'erreur est trop élevé. Dans la pratique, cela se fait en créant une fonction de coût qui est ensuite évaluée à intervalles réguliers pendant que le système apprend. Le processus d'apprentissage se poursuivra tant que la production du système continuera à baisser. Le coût est généralement caractérisé comme une statistique dont la valeur ne peut être que devinée plutôt que déterminée avec précision. Parce que les sorties sont des nombres, la marge d'erreur entre la sortie, qui est presque certainement un chat, et la bonne réponse, qui est aussi un chat, est plutôt minuscule lorsque le taux d'erreur est faible. Le but de l'apprentissage est de réduire autant que possible le nombre total d'écarts entre les observations. La grande majorité des modèles d'apprentissage peuvent être compris comme une application directe de la théorie de l'optimisation et de l'estimation statistique.
Le taux d'apprentissage est le facteur qui détermine l'ampleur des actions correctives que le modèle doit...