Google a lancé un nouveau framework pour TensorFlow baptisé NSL (Neural Structured Learning). Open source, cet outil pour les chercheurs et développeurs en machine learning est adapté aux données structurées telles que des graphes pour l’entraînement de réseaux neuronaux profonds.
Présenté sur Medium et sur le site de TensorFlow, le framework NSL fonctionne avec la plateforme de machine learning TensorFlow. Il est destiné aussi bien aux débutants en la matière qu’aux chercheurs ayant une plus vaste expérience. Ce nouvel outil permet de générer des modèles, d’effectuer des tâches d’entraînement et prédiction à partir de données structurées, telles que celles que l’on peut trouver au sein des graphs de connaissances. Le Neural Structured Learning framework permet de faire de l’apprentissage supervisé, semi-supervisé et non-supervisé.
En tirant parti de la structure des données (et donc les relations entre elles) en plus des features (caractéristiques isolées de chaque échantillon d’un jeu de données) traditionnellement exploitées, l’outil permet d’obtenir de meilleures performances, surtout lorsque peu de données labellisées sont disponibles.
Ce traitement supplémentaire n’a bien sûr aucun impact sur la vitesse d’exécution des tâches d’inférence, puisque les relations sont traitées uniquement lors de l’entraînement.
Da-Cheng Juan et Sujith Ravi, qui ont tous deux travaillé à son développement, ont annoncé le lancement de NSL et indiqué que le fait de “tirer parti des signaux structurés au cours de l’apprentissage permet aux développeurs d’obtenir une plus grande précision dans les modèles. Plus précisément, lorsque la quantité de données étiquetées est relativement faible. L’entraînement avec des signaux structurés conduit également à des modèles plus robustes. Ces techniques ont été largement utilisées dans Google pour améliorer les performances des modèles, comme l’apprentissage de l’intégration sémantique d’images”.
Comme l’indiquent les deux scientifiques, NSL permet aux développeurs de structurer, avec beaucoup moins de code les données ainsi que les API pour la création de réseaux adverses. Le framework comprend des APIs et des outils pour l’entraînement des modèles avec des données structurées:
- Les APIs Keras pour permettre un entraînement avec des graphes (structure explicite) et des perturbations contradictoires (structure implicite).
- Fonctions pour permettre l’entraînement avec structure lors de l’utilisation des APIs TensorFlow de niveau inférieur.
- Outils pour construire des graphiques et construire des inputs de graphique pour l’entraînement.
Grâce à NSL, le modèle est obligé d’apprendre des prévisions précises tout en maintenant la similarité entre les entrées d’une même structure. Cette technique est générique et peut être appliquée à des architectures neuronales arbitraires.