“J’ai plein de photos… mais la prise de tête pour les trier et les mettre dans un Excel avec ce qu’il y a dessus ”
On s’est tous dit ça un jour, en regardant ce dossier de vacances, de produits, ou pire… de photos à légender pour un client. Et si on vous disait qu’on peut reconnaître ce qu’il y a dans vos images
automatiquement, sans Python, sans serveur, et
directement dans le navigateur, juste avec un peu de JavaScript et beaucoup d’intelligence artificielle ?
Bienvenue dans le monde magique de MobileNet + TensorFlow.js.
C’est quoi ce Machine Learning qu’on utilise là ?
Sous le capot, on s’appuie sur un modèle pré-entraîné : MobileNet.
C’est un réseau de neurones convolutif léger, optimisé pour tourner en local (même sur un smartphone), et capable de reconnaître des centaines d’objets courants : chien, chat, tasse, banane,
guitare, bateau, et j’en passe.
Ce modèle a été entraîné sur ImageNet, une énorme base de données contenant plus de 14 millions d’images classées. Mais ici, on n’a pas besoin de réentraîner quoi que ce soit : on le charge tel quel, prêt à l’emploi. C’est ce qu’on appelle du "transfer learning" ou plus précisément de la prédiction à partir d’un modèle pré-entraîné.
Pas besoin de GPU, ni de Docker, ni même de Python. Juste un navigateur moderne.
Python vs JavaScript : et si JS gagnait cette manche ?
La plupart des tutos machine learning commencent en mode :
pip install tensorflow keras pandas numpy opencv scikit-learn matplotlib et ton âme
C’est cool, mais tout le monde n’a pas envie d’installer un zoo complet pour juste classifier 30 photos perso.
Là où Python est parfait pour le training et la R&D, JavaScript a un super avantage : il tourne
partout, immédiatement, sans installation, dans
le navigateur.
Et avec TensorFlow.js, on profite de la puissance de TensorFlow (la même base que sur Python) mais côté frontend.
Pas besoin d’API, pas de backend, pas de données envoyées sur un serveur. Tout se fait localement, ce qui est top pour la vie privée ou pour un usage rapide en entreprise.
Pourquoi TensorFlow.js et pas un autre ?
Parce que c’est :
- Officiel (développé par Google),
- Documenté,
- Compatible avec plein de modèles prêts à l’emploi,
- Rapide (WebGL sous le capot),
- Et... franchement, c’est assez magique de faire tourner de la reconnaissance d’image dans une page HTML sans rien installer.
Et puis bon, pouvoir dire : “Oui, je fais un peu de machine learning... en JavaScript dans le navigateur”, ça a son petit effet.
Tester la classification d'images avancée