Quand vous travaillez à résoudre une difficulté de Machine Learning, adapter et améliorer une solution existante peut vous permettre de dégager plus rapidement des résultats probants. Le recours aux modèles déjà en place est non seulement avantageux pour les data scientists, mais également pour les sociétés. Cela leur donne la possibilité de réaliser des économies de temps et de coûts. De nos jours, il existe plusieurs entreprises qui proposent des bibliothèques open source comprenant des modèles pré-entraînés et Hugging Face en fait partie. Dans cet article, nous allons parler de ce grand projet réalisé par des ingénieurs français.
Qu’est-ce que le Hugging Face?
Hugging Face est une startup française particulièrement prometteuse qui entend révolutionner le milieu du ML en apportant des technologies open source de traitement du langage naturel. Fondée en 2016, elle est l’œuvre de Clément Delangue et Julien Chaumond, deux ingénieurs français.
Hugging Face est une plateforme communautaire et de science des données qui vise à fournir :
- Des outils permettant aux utilisateurs d’avoir la possibilité de créer, d’entraîner et de déployer des modèles ML basés sur du code et des technologies open source (OS).
- Un espace où une grande communauté de data scientists, de chercheurs ML et d’ingénieurs peut se rassembler et partager des idées, afin d’obtenir de l’aide et de contribuer à des projets open source.
Quel est l’objectif du projet?
Avec l’évolution des pratiques de travail hybrides et flexibles observées récemment, les outils permettant aux équipes de science des données, aux experts et aux amateurs de collaborer à distance commencent à être de plus en plus utilisés et adoptés.
En effet, la communauté des OS prend de plus en plus d’importance pour faire progresser l’IA. Les entreprises, pas même les « géants de la technologie », ne seront pas en mesure de « résoudre l’IA » toutes seules. De ce fait, le partage des connaissances et des ressources pour accélérer et avancer constitue la ligne directrice du futur !
Lire aussi : La belle vie des français en Australie
Hugging Face vise à répondre à cette nécessité en proposant un « Hub » communautaire. Il s’agit d’un espace central dans lequel tout le monde peut partager et explorer des modèles et des ensembles de données. La plateforme entend devenir un lieu disposant de la plus grande collection de modèles et d’ensembles de données, dans le but de démocratiser l’IA pour tous.
Comment devenir membre du Hub communautaire?
Pour être membre de Hugging Face, il faut s’inscrire sur la plateforme. Une fois que vous êtes validé, vous obtenez un référentiel hébergé basé sur Git où vous pouvez stocker des modèles, des ensembles de données ainsi que des espaces. L’inscription en tant que contributeur individuel à la communauté est gratuite. Il existe cependant un plan « Pro » et des modèles de tarification distincts pour les organisations.
Dès que votre compte est ouvert, vous êtes redirigé vers votre référentiel personnel. À partir de cette page, vous pouvez faire un certain nombre de choses, notamment
- Consulter votre flux d’activité
- Afficher votre profil et vos paramètres
- Créer un nouveau modèle, ensemble de données ou espace
- Découvrir les tendances de la communauté
- Voir la liste des organisations auxquelles vous appartenez et accéder à leurs espaces respectifs
- Accéder aux ressources et aux documentations utiles
Comment créer des modèles?
Quand vous créez un nouveau « modèle », celui-ci est en fait un dépôt Git contenant les fichiers liés au modèle ML que vous voulez partager. Il présente tous les avantages auxquels vous pouvez vous attendre, comme le versionnement, les branches, la facilité de découverte, etc.
Pour ce faire, cliquez sur le bouton « + Nouveau » dans le hub, puis sélectionnez « Modèle ». Une boîte de dialogue apparaîtra ensuite. Cette dernière vous permettra de spécifier le nom et le type de licence du système d’exploitation pour lequel vous contribuez au code de votre modèle et aux ressources associées.
Vous pouvez choisir la visibilité de votre modèle, c’est-à-dire le rendre public et visible pour la communauté Hugging Face. Si vous voulez le garder privé, vous pouvez le placer dans votre dépôt personnel ou dans votre organisation.
Comment créer des ensembles de données?
La création d’un nouvel ensemble de données suit un flux très similaire à celui de la création d’un nouveau modèle. Vous devez cliquer sur le bouton « + Nouveau » dans le hub, puis sélectionner « Dataset ».
Vous devez ensuite spécifier le nom, le type de licence, l’accès public ou privé. Ensuite, vous voyez une vue du référentiel, avec une « carte de l’ensemble de données », « Fichiers et versions », analogue à ce que vous avez dans le référentiel du modèle.
Comment créer les espaces?
Sur Hugging Face, les espaces vous donnent la possibilité de valoriser votre travail sous forme d’applications de démonstration ML autonomes. Il existe de nombreux espaces communautaires que vous pouvez découvrir si vous êtes à la recherche d’inspiration.
Ces espaces représentent un excellent moyen de constituer un portefeuille de vos projets pouvant être utilisé dans le cadre de présentations, de collaborations avec des collègues de votre organisation ou avec l’écosystème ML au sens large.
Pour démarrer, cliquez sur le bouton « + Nouveau » dans le Hub, puis sélectionnez « Espace ». Vous accédez alors à une boîte de dialogue dans laquelle vous pouvez spécifier le nom de l’espace et le type de licence.
Vous allez également devoir choisir un SDK. Lorsque vous écrivez cet article, vous avez le choix entre deux frameworks basés sur Python pour l’hébergement d’applications : Gradio ou Streamlit. Sinon, vous pouvez utiliser du HTML.
Quels sont les avantages de l’utilisation des outils de Hugging Face?
Hugging Face comporte de multiples avantages. En voici quelques-uns :
- Il fournit une large variété de modèles pré-entraînés pour divers types de tâche NLP, dont la classification de textes, la recherche d’entités nommées, la production de textes, etc.
- La plateforme est facile à utiliser et elle peut être intégrée à d’autres frameworks et applications.
- Elle propose une excellente documentation et dispose d’une communauté active.
- La plateforme offre également des instruments pour simplifier la mise en œuvre de modèles NLP sur les serveurs et les appareils mobiles.