Développement JavaScript avec TensorFlow

Voici les critères à respecter avant de consulter les supports de formation ci-dessous :

  1. Savoir programmer dans un navigateur en HTML, CSS et JavaScript

  2. Savoir utiliser la ligne de commande pour exécuter des scripts Node.js

Objectifs d'apprentissage du programme :

  1. Créer des modèles de ML en JavaScript

  2. Exécuter des modèles existants dans les environnements où JavaScript peut être exécuté

  3. Déployer des modèles de ML dans des navigateurs Web

TensorFlow.js vous permet de développer ou d'exécuter des modèles de ML en JavaScript, et d'utiliser le ML directement dans le navigateur côté client, du côté serveur via Node.js, de manière native sur mobile via React Native, de manière native sur ordinateur de bureau via Electron, et même sur des appareils IoT via Node.js sur Raspberry Pi. Pour en savoir plus sur TensorFlow.js et ses applications, revivez cet échange enregistré lors de la conférence Google I/O.

Étape 1 : Découvrez le concept de machine learning dans le navigateur

Pour apprendre rapidement les bases du ML en JavaScript, suivez, à votre rythme, le cours disponible sur Edx ou regardez les vidéos ci-dessous. Vous y découvrirez les premiers principes de base, et vous apprendrez à utiliser des modèles préétablis existants ainsi qu'à créer votre propre réseau de neurones pour la classification. Vous pouvez également suivre l'atelier de programmation Créer une webcam intelligente en JavaScript pour découvrir ces concepts de manière interactive.

Superpouvoirs pour les applications Web de nouvelle génération : machine learning

Cette présentation générale du machine learning en JavaScript s'adresse aux développeurs Web qui souhaitent faire leurs premiers pas avec TensorFlow.js.

Google AI pour les développeurs JavaScript avec TensorFlow.js

Devenez un pro du ML Web grâce à TensorFlow.js. Apprenez à créer la nouvelle génération d'applications Web capables de s'exécuter côté client sur pratiquement tous les appareils.

Créer une webcam intelligente dans JavaScript à l'aide d'un modèle pré-entraîné

Apprenez à charger et à utiliser l'un des modèles pré-entraînés (COCO-SSD) de TensorFlow.js, et découvrez comment l'utiliser pour reconnaître les objets courants sur lesquels il a été entraîné.

Étape 2 : Creuser le sujet du deep learning

Deux livres sont disponibles pour vous aider à comprendre plus précisément comment fonctionnent les réseaux de neurones et, de façon plus générale, savoir les utiliser en réponse à diverses problématiques.

Si vous débutez avec les Tensors et le machine learning en général, mais connaissez bien JavaScript, commencez par lire le livre Learning TensorFlow.js. Ce livre complet présente non seulement les principes de base (comment manipuler des données afin de les convertir en Tensors, par exemple), mais vous explique également comment créer rapidement des applications réelles. Une fois que vous l'aurez lu, vous saurez comment charger des modèles existants, transmettre des données à ces derniers et interpréter les données obtenues.

Le livre Deep Learning with JavaScript est également idéal pour débuter. Il contient une foule d'exemples issus de GitHub pour vous exercer au machine learning en JavaScript.

Ce livre montre comment utiliser une grande variété d'architectures de réseau de neurones, telles que le réseau de neurones convolutif et le réseau de neurones récurrent, et des paradigmes d'entraînement avancés comme l'apprentissage par renforcement. Il décrit aussi clairement ce qui se passe au niveau du réseau de neurones lors du processus d'entraînement.

Learning TensorFlow.js
de Gant Laborde

Ce livre pratique et complet couvre les principes de base de TensorFlow.js pour un large public technique. À la fin de ce livre, vous saurez comment créer et déployer des systèmes de deep learning prêts pour la production avec TensorFlow.js.

Deep Learning with JavaScript
de Shanqing Cai, Stanley Bileschi, Eric D. Nielsen et François Chollet

Écrit par les principaux auteurs de la bibliothèque TensorFlow, ce livre présente des cas d'utilisation fascinants et explique comment exécuter des applications de deep learning en JavaScript dans un navigateur ou sur Node.

Étape 3 : S'entraîner avec des exemples à l'aide de TensorFlow.js

C'est en forgeant qu'on devient forgeron. Passer à la pratique est le meilleur moyen d'ancrer des concepts. Participez à des ateliers de programmation TensorFlow.js pour approfondir vos connaissances grâce à des guides détaillés qui couvrent les cas d'utilisation courants :

  1. Créer sa propre "Teachable Machine" à partir de zéro

  2. Reconnaître des chiffres manuscrits à l'aide de réseaux de neurones convolutifs

  3. Effectuer des prédictions à partir de données 2D

  4. Convertir un SavedModel Python au format TensorFlow.js

  5. Déployer et héberger un modèle TensorFlow.js à l'aide de Firebase

  6. Créer un système de détection de spam dans les commentaires

  7. Réentraîner un modèle de détection de spam dans les commentaires pour gérer des cas spéciaux personnalisés

  8. Effectuer une reconnaissance audio à l'aide de l'apprentissage par transfert

Maintenant que vous maîtrisez les réseaux de neurones, il est plus facile pour vous d'étudier les exemples accessibles en Open Source imaginés par l'équipe TensorFlow. Ils sont tous disponibles sur GitHub. Le but est de vous permettre de plonger dans le code et de comprendre leur fonctionnement.

Exemples créés avec TensorFlow.js

Un dépôt sur GitHub contenant des exemples mis en œuvre dans TensorFlow.js. Chaque exemple est enregistré dans un répertoire indépendant, qu'il est possible de copier dans un autre projet.

Tutoriels pour bien démarrer avec TensorFlow.js

Les tutoriels TensorFlow se présentent sous la forme de notebooks Jupyter et s'exécutent directement dans Google Colab, un environnement de notebook hébergé qui ne nécessite aucune configuration. Il suffit de cliquer sur le bouton "Exécuter dans Google Colab".

Étape 4 : Inventer

Vous avez testé vos connaissances et vous vous êtes exercé avec des exemples TensorFlow.js. Vous voilà fin prêt à développer vos propres projets ! Étudiez nos modèles pré-entraînés et lancez-vous dans la création d'une application. Vous pouvez également entraîner un modèle personnalisé à partir des données que vous aurez collectées ou d'ensembles de données publics. Kaggle et Google Recherche d'ensembles de données vous donnent accès à des ensembles Open Source pour entraîner votre modèle.

Si vous êtes en manque d'inspiration, regardez notre émission "Créer avec TensorFlow.js" contenant des témoignages de diverses personnes à travers le monde ayant utilisé TensorFlow.js dans leurs applications.

Vous pouvez également découvrir les dernières contributions de la communauté en recherchant le hashtag #MadeWithTFJS sur les réseaux sociaux.