Utilisation de réseaux de neurones et aldo d'apprentissage pour apprendre à un robot à se garer
Étude de cas : Utilisation de réseaux de neurones et aldo d'apprentissage pour apprendre à un robot à se garer. Rechercher de 53 000+ Dissertation Gratuites et MémoiresPar AllEyesOnMe • 6 Novembre 2017 • Étude de cas • 511 Mots (3 Pages) • 1 049 Vues
On peut utiliser des réseaux de neurones et algo d'apprentissage pour apprendre a un robot a se garer
Le principe est de résoudre un problème complexe via un apprentissage simple comme pour un enfant qui apprend à conduire un cadis. Les reseaux de neurones peuvent généraliser des connaissances. Une entrée, une sortie, si on lui donne les lettres de l'alphabet, on peut les lui faire reconnaître en lui donnant suffisamment d'exemples. Il sera nsuite capable de les reconnaître ces lettres si on lui donne de nouveaux exemples en généralisant les caractéristiques de la forme des lettres.
Avantage : explication/pédagogie facile avec le réseau de neurones et on peut le voir apprendre rapidement.
Présenter aux visiteurs l'apprentissage des robots
Différence deep learning/ réseau de neurones : pareil mais le deep learning permet de résoudre des calculs plus complexes (?)
Manip déjà commencée l'année dernière. Codée en Python. Manips aussi effectuées par un stagiaire en été, eventuellement des bugs dans l'algo, à voir; et peut etre aussi car on ne respecte pas l'algo d'apprentissage des réseaux de neurones.
Pour doc : depinfonancy.net/texlab, puis minoides gido, minoides backprop
--> README
Perceptron multicouches : réseau de neurones a plusieurs couches -->
une couche d'entrée/sortie et des couches entre les 2. Il y a des noeuds (neurones) sur chacune des couches. La sortie de chaque neurone est reliée à l'entre de chaque neurone de la couche suivante.
Chaque neurone a une activité, pondérée qui va
La fonction qui détermine l'activité est proche de th
Algo du gradiant : modifier les wij pour trouver le minimum d'une fonction
Lorsque l'algo donne une sortie, on lui renvoie la sortie désirée et on mesure la distance entre les 2 vecteurs (erreur) et on cherche à minimiser cette erreur.
Pour cela on modifie le poids synaptique jusqu'a avoir une erreur moyenne minimale.
On modifie chaque poids en fonctions de la dérivee de l'erreur. Pour minoides entre 70 et 80 poids synaptiques.
Problème du réseau : - si fonction trop simple, il va l'apprendre par coeur
- trop de bruits parfois
- moment : on garde parfois une partie du gradient précédent si la pente est trop élevée : on ne va pas dans la bonne direction
- saturation des neurones : vient de f'(ai) : si l'entrée est très active, ai = 1, surexcitabilité des neurones. Du coup f'(ai)=0 du coup ça ne sert à rien de multiplier par f'(ai)
- Contre exemple : il faut non seulement montrer à l'algo des exemples pour apprendre, mais aussi des contres exemples. Exemple sur l'alphabet, lui montrer des chiffres, et lui dire que ça ne correspond pas à une lettre. Sinon il risque de reconnaître un caractère sur un gribouillage.
Pour éviter les saturations, on va normaliser les entrées.
Réseau de neurones :
...