data labeling

Data Labeling : tout savoir sur l’étiquetage de données pour Machine Learning

Le Data Labeling ou étiquetage des données est une étape indispensable du Machine Learning. Pour entraîner une IA à partir de données, il est impératif d’étiqueter ces données au préalable. Découvrez tout ce que vous devez savoir sur ce sujet : définition, cas d’usage, fonctionnement, conseils, meilleurs outils…

Le Machine Learning permet aux ordinateurs d’apprendre de manière autonome, en s’entraînant à partir des données. Toutefois, pour que l’apprentissage automatique puisse commencer, l’humain doit intervenir. Avant de nourrir le modèle d’IA avec des données, il est indispensable de les préparer.

À l’aide de divers outils, on assigne des étiquettes aux données. C’est ce qui permettra ensuite à l’ordinateur d’apprendre à reconnaître les différentes catégories, et à les distinguer. C’est le  » Data Labeling  » ou étiquetage de données.

Cette tâche ne demande pas de compétences techniques particulières, mais requiert beaucoup de temps. La plupart des entreprises externalisent ce travail, pour rester concentrées sur leur activité principale. Ils existent de nombreux fournisseurs de service de Data Labeling.

Qu’est-ce que le Data Labeling ?

Un ordinateur est programmé pour effectuer des calculs complexes. Il est capable d’automatiser des activités. Pourtant, cette même machine serait incapable de distinguer un chien sur une photo. Cette tâche peut sembler facile pour nous, car cette capacité est presque innée pour un humain.

Pour y parvenir, un ordinateur doit impérativement être entraîné pour effectuer ce travail. Il a besoin d’utiliser un algorithme pour apprendre à partir d’un ensemble de données. Et ces données doivent être étiquetées.

Les données étiquetées sont des données marquées, annotées, afin de présenter la  » cible « . Il s’agit de la réponse, que l’on souhaite que le modèle de Machine Learning apprenne à prédire.

En réalité, le Data Labeling ou étiquetage de données désigne différentes tâches en plus de l’annotation de données. On peut citer la classification, la modération, la transcription et le traitement.

L’étiquetage des données met en lumière les caractéristiques des données, leurs propriétés et leurs classifications. L’analyse de ces caractéristiques aide à prédire la cible.

Prenons l’exemple d’un modèle de Machine Learning de vision par ordinateur pour un véhicule autonome. Il est possible d’utiliser des outils d’étiquetage de vidéo image par image pour le Data Labeling. Les étiquettes serviront à indiquer les panneaux de signalisation, les piétons ou les autres véhicules.

La personne chargée d’étiqueter les données est appelée  » human-in-the-loop  » (humain dans la boucle). C’est le Data Labeler. Ses étiquettes permettent à la machine d’identifier les éléments présentés par les données. Elles sont indispensables pour développer des algorithmes hautement performants. Une fois entraîné, un modèle permettra par exemple la reconnaissance de pattern, la classification ou la régression.

Quelques exemples de cas d’usage

Pour développer un système de Computer Vision, ou vision par ordinateur, il est nécessaire d’étiqueter les images pour créer un ensemble de données d’entraînement. Il est possible de classer les images par contenu ou par qualité.

Les données sont ensuite utilisées pour entraîner un modèle de vision par ordinateur. Une fois entraîné, ce modèle sera capable de catégoriser automatiquement les images, de les segmenter, de détecter l’emplacement d’objets spécifiques, ou d’identifier les éléments clés.

Dans le domaine du Traitement Naturel du Langage, il est nécessaire dans un premier temps d’identifier manuellement les sections importantes d’un texte ou de l’étiqueter avec des labels spécifiques pour constituer un ensemble de données d’entraînement.

L’objectif peut être d’identifier le sentiment ou l’intention d’un texte, d’identifier des parties du discours, de classifier les noms propres, ou d’identifier le texte dans les images ou autres documents. Des limites doivent être tracées manuellement autour des éléments du texte. Une fois entraîné, un modèle de Traitement Naturel du Langage (NLP) peut être utilisé pour l’analyse de texte, la reconnaissance nom/entité, et la reconnaissance optique de caractère.

Le traitement audio consiste à convertir tous types de sons dans une forme structurée afin de pouvoir l’utiliser dans le Machine Learning. Cette tâche requiert généralement de transcrire au préalable les sons sous forme de texte écrit. Ceci permet de mettre en lumière des informations approfondies sur l’audio, en ajoutant des étiquettes et en catégorisant les sons. Une fois étiquetées, ces données peuvent être utilisées pour l’entraînement.

Qu’est-ce que le Machine Learning semi-supervisé

Le Data Labeling n’est indispensable que pour le Machine Learning supervisé. Une alternative est l’apprentissage semi-supervisé. Ce style d’entraînement utilise à la fois des données supervisées et non supervisées.

Il est possible d’étiqueter une partie de l’ensemble de données, pour entraîner le modèle ML de classification. Les données non étiquetées peuvent être utilisées ensuite pour le mettre à l’épreuve et tester l’efficacité de cette phase d’entraînement.

Le Machine Learning non-supervisé va encore plus loin et consiste à ne pas étiqueter les données du tout. Le modèle cherche alors des éléments dans les données de façon autonome. Cette méthode est rarement utilisée.

Comment les entreprises étiquettent-elles leurs données ?

Le Data Labeling repose sur une combinaison de logiciels, de traitements et de personnes pour nettoyer, structurer et étiqueter les données. Il existe différentes approches pour procéder.

Le Data Labeling peut être réalisé en interne. Les employés à temps plein ou à mi-temps se chargent de ce processus. Il ne s’agit pas nécessairement de spécialistes. Certaines entreprises font appel à des sous-traitants ou des travailleurs en freelance.

Il existe aussi différents types de plateformes dédiées. Les plateformes de crowdsourcing permettent de faire facilement appel à une vaste main-d’oeuvre. Des entreprises spécialisées proposent aussi un Data Labeling de haute qualité sous forme de service.

Désormais, il existe même des intelligences artificielles capables d’étiqueter les données. À l’avenir, cette méthode basée elle-même sur le Machine Learning devrait devenir la plus couramment employée. L’IA surpassera bientôt les humains pour cette tâche de Data Labeling.

Le Machine Learning peut aussi être utilisé pour étiqueter les données de façon automatique. Un modèle est d’abord entraîné sur un sous-ensemble de données brutes étiquetées par des humains, puis applique des étiquettes à des données brutes de manière autonome.

En cas d’incertitude, les données sont transmises aux humains pour vérifier ou corriger le Labeling. Les corrections sont à nouveau transmises pour qu’il puisse s’améliorer. Au fil du temps, le modèle de Machine Learning gagne en autonomie et permet d’accélérer la création d’ensembles de données d’entraînement.

Pourquoi externaliser le Data Labeling ?

À l’ère du Big Data, les entreprises ont à portée de main d’immenses volumes de données. Toutefois, la plupart des données sont capturées dans une forme non étiquetée.

L’étiquetage est un impératif pour le Machine Learning. De fait, le Data Labeling occupe une majeure partie des projets d’intelligence artificielle. Selon une étude de Cognilytica, la collecte, l’organisation et l’étiquetage des données représentent 80% des projets IA.

Les données doivent être structurées et étiquetées, avant de pouvoir entraîner et déployer les modèles. C’est une tâche très chronophage, et qui doit aussi être exécutée avec soin.

Les étiquettes de mauvaise qualité peuvent impacter négativement le Machine Learning. Des technologies inadéquates, de mauvais processus ou des erreurs humaines sont les causes les plus fréquentes d’un piètre Data Labeling.

Un processus interne inadapté peut aussi se révéler coûteux. Le Data Labeling est long, mais simple et répétitif. Il ne s’agit pas d’un labeur à confier à un Data Scientist, dont le salaire dépasse les 50 000€ par an. Mieux vaut charger cet expert d’opérations plus techniques.

Les équipes peuvent aussi être submergées par l’ampleur de la tâche. Sur un vaste ensemble de données, le Data Labeling peut être un travail de titan.

Pour toutes ces raisons, il peut être pertinent d’externaliser ou de sous-traiter le Data Labeling. De nombreux services existent, et leurs approches sont souvent ingénieuses et surprenantes…

Qu’est-ce qu’un Data Labeler ?

Un Data Labeler est une personne chargée d’étiqueter les données. N’importe qui peut exercer ce rôle, à la seule condition d’apprendre à utiliser les outils adéquats.

Les entreprises utilisent toujours plus le Machine Learning, et la demande en Data Labelers ne cesse d’augmenter. Les géants de la technologie comme IBM, Facebook ou Google recrutent de la main-d’oeuvre à tour de bras.

Quels sont les facteurs de qualité du Data Labeling ?

Plusieurs éléments distinguent un Data Labeling de bonne qualité. Avant tout, il convient de différencier l’exactitude et la qualité des données.

L’exactitude du Data Labeling mesure à quel point l’étiquetage est cohérent avec les conditions du monde réel. La qualité se réfère à la cohérence de l’étiquetage sur l’ensemble du dataset.

Si le Data Labeling est inexact ou de mauvaise qualité, l’entraînement du modèle de Machine Learning peut être faussé. Par la suite, lorsque le modèle se base sur des données pour réaliser des prédictions, un mauvais étiquetage peut impacter les prédictions. Il faut donc accorder un point d’honneur à ce processus.

Conseils pour un Data Labeling de qualité

Plusieurs techniques et principes permettent d’améliorer la qualité du Data Labeling. Des interfaces de tâches intuitives permettent de minimiser la charge cognitive et les transitions de contexte pour les Data Labelers.

Il est également conseillé de réduire les erreurs et les biais des annotateurs individuels par la mise en place d’un consensus. Ceci implique d’envoyer chaque objet du dataset à de multiples annotateurs et de consolider leurs annotations en une étiquette unique.

Après l’étiquetage, recourir à un audit permet de vérifier l’exactitude des étiquettes et de les mettre à jour si nécessaire. Enfin, l’utilisation du Machine Learning peut aider à identifier les données les plus utiles à étiqueter.

Les meilleurs outils de Data Labeling

Il existe une large variété d’outils dédiés au Data Labeling. En fonction du type de données à étiqueter, il est important de choisir la solution appropriée.

On distingue les outils payants et les outils gratuits. En général, une solution gratuite limite le nombre de formats d’export et de données pouvant être traitées sur une période fixe. Les versions payantes peuvent aussi inclure des fonctionnalités additionnelles comme les APIs ou des options de customisation.

Le Labeling d’images et de vidéos

Commençons par les outils les plus couramment utilisés pour l’entraînement de modèles de vision par ordinateur. L’un des plus populaires est Annotorious, une solution Open Source publiée sous la licence MIT.

Il s’agit d’un outil d’annotation et d’étiquetage d’image, disponible gratuitement sur le web. Les utilisateurs peuvent ajouter des commentaires textuels et des dessins sur les images d’un site web. Il est aussi possible d’intégrer l’outil avec deux lignes de code additionnelles.

De nombreux plugins permettent de modifier ou d’étendre les fonctionnalités de Annotorious. Les utilisateurs sont invités à contribuer à l’amélioration de ces outils en partageant leurs retours.

Un autre outil ouvert en ligne est LabelMe. Ce logiciel aide les utilisateurs à créer des bases de données d’images pour les tâches de recherche en vision par ordinateur.

Cette solution basée sur le web peut être utilisée sur un PC, mais aussi sur smartphone. Les développeurs ont créé une application mobile. La fonctionnalité  » Labels  » permet la collecte, le stockage et l’étiquetage d’images.

La fonctionnalité  » Detectors «  permet quant à elle d’entraîner des détecteurs d’objets capables de travailler en temps réel. La toolbox MATLAB est conçue pour travailler avec des images du dataset public LabelMe. Les utilisateurs sont encouragés à contribuer à cet ensemble de données.

L’outil Sloth, totalement gratuit, offre un haut niveau de flexibilité. Les utilisateurs peuvent étiqueter les images et les fichiers vidéo pour la vision par ordinateur. On l’utilise notamment pour la reconnaissance faciale.

 

Les utilisateurs peuvent ajouter un nombre illimité d’étiquettes par image, et chaque étiquette est un ensemble de paires clé/valeur. Ce système permet un traitement de fichiers plus détaillé.

Différents outils de sélection d’images sont proposés par Sloth, comme des points, des rectangles ou des polygones. Ce logiciel est un framework et un ensemble de composants standards.

Enfin, l’outil VoTT (Visual Object Tagging Tool) par Windows permet le traitement d’images et de vidéos. Une fonctionnalité de Data Labeling est proposée, et cet outil permet aussi aux Data Scientists d’entraîner et de valider les modèles de détection d’objets.

Les autres outils réputés pour le Data Labeling d’images sont Labelbox, Alp’s Labeling Tool, Comma Coloring, imglab, Pixorize, VGG Image Annotator, Demon image annotation plugin, FastAnnotationTool, RectLabel et ViPER-GT.

Le labeling de texte

Pour le traitement naturel du langage, on utilise différents outils permettant le labeling de texte. Les tâches de NLP (Natural Language Processing) peuvent être par exemple l’analyse de sentiment, le linking d’entité, la catégorisation de texte ou encore l’analyse syntaxique.

L’outil Labelbox, déjà mentionné pour la vision par ordinateur, peut aussi être utilisé pour l’étiquetage de texte. En plus des options d’étiquetage basique, cet outil permet aussi le développement, l’installation et la maintenance des interfaces de Labeling personnalisées.

Une autre solution est Stanford CoreNLP. Il s’agit d’un toolkit NLP gratuit proposé par les data scientists du Stanford Natural Language Processing Groupe. Les utilisateurs peuvent effectuer différentes tâches de traitement de texte et d’analyse.

De son côté, l’outil open source bella a pour ambition de simplifier et d’accélérer le Labeling de texte. Il s’agit d’une alternative aux tableurs et aux fichiers CSV, évitant d’avoir à convertir les données entre l’étiquetage et l’entraînement de modèle.

L’interface graphique et le backend de base de données sont les principaux points forts de cette solution. L’utilisateur crée et configure un projet pour chaque ensemble de données qu’il souhaite étiqueter. Différents éléments du projet peuvent être configurés, comme la visualisation d’éléments et le type de labels.

La startup Tagtog propose un outil d’annotation et de catégorisation de texte automatisé. Les utilisateurs peuvent choisir entre une annotation manuelle de texte, faire appel à une équipe de Labelers, ou utilise des modèles de Machine Learning pour l’annotation automatisée. Cet outil est utilisé à la fois par les professionnels de la Data Science et par les néophytes, car il ne requiert aucune connaissance en codage et en ingénierie de données.

Le labeling d’audio

Les tâches de Machine Learning liées à l’audio, comme la reconnaissance et la classification de musique, requièrent des outils de Labeling efficaces et simples d’utilisation pour entraîner de puissants réseaux de neurones.

L’outil gratuit Praat est dédié à l’étiquetage de fichiers audio. Des points temporels peuvent être marqués dans un fichier audio et annotés avec du texte sous la forme d’un fichier TextGrid léger et portable. Puisque les annotations textuelles sont liées avec le fichier audio, il est possible de travailler simultanément avec des fichiers sonores et textuels.

Avec Speechalyzer, le traitement manuel de larges ensembles de données de discours est facilité. Les développeurs sont parvenus à étiqueter plusieurs milliers de fichiers audio en temps réel, ce qui met en lumière les performances de cet outil. Enfin, EchoML permet l’annotation de fichiers et la visualisation de données.

Pour bien choisir l’outil adéquat pour votre projet, prenez en compte plusieurs critères. Les spécialistes recommandent de prendre en compte la complexité, la vitesse, et l’exactitude requises.

Les startups du Data Labeling

Il existe aussi des plateformes complètes permettant de sous-traiter l’étiquetage de données en tout genre. Citons tout d’abord Amazon SageMaker Ground Truth, par le géant du Cloud AWS. Cette plateforme offre l’accès à des Data Labelers humains publics ou privés, pour externaliser le travail de Labeling.

Dataturks

De nombreuses startups voient aussi le jour dans ce secteur. Prenons l’exemple de Dataturks. Ses outils permettent d’effectuer des tâches comme le tagging PoS, la reconnaissance nom/entité, la classification, la modération ou la synthèse de texte. La simplicité et la collaboration sont à l’honneur.

Une version gratuite limitée est disponible, et deux versions payantes destinées aux petites et larges équipes. Outre les textes, Dataturks permet aussi l’étiquetage d’images, d’audio et de vidéos.

Scale AI

De même, la startup Scale AI, fondée il y a cinq ans, se présente comme la plateforme principale pour les données d’entraînement IA. Parmi ses clients, elle compte notamment OpenAI, Nvidia, General Motors ou SAP.

Il suffit d’envoyer un dataset d’entraînement brut à l’entreprise, et elle se charge d’ajouter des annotations. Cette startup fait appel à des experts humains pour annoter manuellement les données. Certaines parties sont toutefois automatisées grâce aux réseaux de neurones.

Début avril 2021, Scale AI a levé 325 millions de dollars et est désormais valorisée à 7,3 milliards de dollars de capitalisation boursière. La startup compte étendre son champ d’action, et a récemment lancé le logiciel Nucleus permettant d’améliorer les ensembles de données d’entraînement.

Vainu

L’approche de la startup finlandaise Vainu est originale. En guise de main-d’oeuvre pour le Data Labeling, elle fait appel à des prisonniers.

Pour ces derniers, c’est l’occasion d’acquérir des compétences facilitant leur réinsertion à la sortie de prison. La main-d’oeuvre est utilisée pour les données en langage finlandais, car les plateformes comme Amazon Mechanical Turk ne sont efficaces que pour le langage anglais.

Snorkel AI

Snorkel AI a vu le jour au sein du Stanford AI Lab en 2019. Cette startup est basée à Palo Alto, en Californie.

Elle utilise le Data Labeling programmatique pour accélérer le développement et le déploiement d’applications IA. Elle développe des outils permettant de gérer efficacement les données sans avoir à les étiqueter manuellement, ni même à les entraîner. Quelques minutes suffisent pour étiqueter les données.

Le processus se déroule en quatre étapes. Les ensembles de données sont étiquetés de façon programmatique, puis nettoyés, combinés et gérés par l’algorithme. En un seul clic, l’entraînement est lancé. Enfin, la plateforme permet l’analyse des données et la correction d’éventuelles erreurs.

Récemment, Snorkel a lancé la nouvelle solution Application Studio. Ce builder visuel propose des templates pour les cas d’usage d’intelligence artificielle les plus courants dans les différentes industries. Il regroupe aussi des templates de Labeling automatique, et des modèles open source haute performance pour l’entraînement d’IA à partir de données privées.

À travers sa solution, Snorkel entend accélérer le développement de modèles IA, promet une haute exactitude, favorise la collaboration et assure la confidentialité. La startup a récemment levé 35 millions de dollars en série B, pour un total de 50 millions. Cette somme va lui permettre d’accroître son équipe d’ingénieurs et d’attirer de nouveaux clients.