Gorqelunavi Logo

Maîtriser l'IA pour des infrastructures urbaines connectées

Comment un débutant utilise vraiment les réseaux de neurones

Thomas suit une formation en développement web depuis trois mois. Cette semaine, son formateur lui a confié un premier projet impliquant des réseaux de neurones. Je l'ai suivi pendant toute sa journée de travail.

8h30 - Découverte du projet

Thomas ouvre le brief. Il doit créer un système qui reconnaît des espèces de fleurs à partir de photos. Le dataset contient 600 photos réparties en six espèces différentes. Il n'a jamais fait ça avant. Sa première réaction: chercher sur Google comment fonctionnent les réseaux de neurones pour la classification d'images.

9h15 - Installation et configuration

Il installe Python, TensorFlow et Keras sur son laptop. L'installation prend 25 minutes. Ensuite il télécharge le dataset et découvre que les images ont des tailles différentes. Certaines font 4000x3000 pixels, d'autres 800x600. Il apprend qu'il faut les redimensionner toutes à la même taille avant de les donner au réseau. Il choisit 224x224 pixels.

10h30 - Premier modèle

Thomas suit un tutoriel qui explique comment construire un réseau convolutif simple. Trois couches de convolution, du max pooling entre chaque, puis deux couches denses. Il tape le code sans vraiment comprendre ce que fait chaque partie. Premier entraînement: le modèle atteint 45% de précision. Pire qu'un choix aléatoire qui donnerait environ 16%.

12h00 - Pause et réflexion

Pendant la pause déjeuner, il demande de l'aide à son formateur. Le problème: il a oublié de normaliser les valeurs des pixels. Les images ont des valeurs entre 0 et 255, mais le réseau marche mieux avec des valeurs entre 0 et 1. Simple division par 255.

14h00 - Amélioration progressive

Après normalisation, la précision monte à 68%. Mieux, mais pas terrible. Thomas lit qu'il faut séparer les données en trois groupes: entraînement, validation et test. Il modifie son code pour utiliser 70% des images pour l'entraînement, 15% pour la validation, 15% pour tester à la fin. Il augmente aussi le nombre d'époques de 10 à 30. L'entraînement prend maintenant 15 minutes au lieu de 3.

16h00 - Résultats finals

La précision atteint 82% sur les données de test. Thomas teste avec ses propres photos de fleurs prises dans son jardin. Le modèle se trompe souvent parce que l'arrière-plan et l'éclairage sont différents des photos d'entraînement. Il comprend que les réseaux de neurones ne sont pas magiques. Ils apprennent seulement ce qu'on leur montre.

17h30 - Bilan

Thomas a appris que 80% du travail consiste à préparer les données correctement. Le code du réseau lui-même fait 50 lignes. Tout le reste, c'est charger les images, les redimensionner, les normaliser, séparer les datasets. Il a aussi compris qu'on n'invente pas tout de zéro. On adapte des architectures qui fonctionnent déjà.