CanvasDigitAI est un projet éducatif simple visant à créer, entraîner et évaluer des réseaux de neurones depuis zéro pour reconnaître des chiffres manuscrits (0-9) dessinés sur un canevas interactif. Inspiré du dataset MNIST classique, il permet de visualiser les projections statistiques, les taux de réussite/échec et d'expérimenter facilement avec des données dessinées à la main.
L'objectif est de démystifier l'apprentissage automatique en implémentant un réseau de neurones basique qui apprend à classer des chiffres à partir de dessins simples sur un canevas (comme dans Canva ou un outil HTML5 Canvas).
On évalue les performances via des métriques claires (accuracy, confusion matrix) et on visualise les évolutions : courbes d'apprentissage, projections statistiques (ex. t-SNE pour voir les clusters de chiffres) et analyses d'erreurs.
C'est un exemple simple et reconnu (MNIST-like) pour réfléchir aux mécanismes d'IA : surapprentissage, généralisation, et impact des données "réelles" vs. datasets standards.
- Dessin interactif : Canvas pour dessiner des chiffres 0-9 en temps réel
- Entraînement from scratch : Réseau de neurones en Python (TensorFlow/PyTorch ou vanilla NumPy).
- Évaluation live : Taux de succès/échec, matrices de confusion.
- Visualisations : Graphiques de loss/accuracy, projections 2D des embeddings.
- Données simples : Génération de milliers d'exemples via canvas + dataset MNIST.
Ce projet illustre parfaitement pourquoi MNIST est un "Hello World" de l'IA : données faciles à générer, résultats rapides, mais défis réels (variabilité des dessins).
Observez comment un réseau simple atteint ~95% d'accuracy sur MNIST, mais chute avec des dessins imparfaits – idéal pour discuter biais, robustesse et scaling.
- Frontend : HTML5 Canvas + JavaScript (React?)
- Backend/ML : Python, NumPy/TensorFlow, Matplotlib/Plotly.
- TODO: Define ...