Créer un projet d’étiquetage de texte et exporter des étiquettes

Découvrez comment créer et exécuter des projets d'étiquetage de données pour étiqueter des données textuelles dans Azure Machine Learning. Spécifiez une ou plusieurs étiquettes à appliquer à chaque élément de texte.

Vous pouvez également utiliser l’outil d’étiquetage des données dans Azure Machine Learning pour créer un projet d’étiquetage d’image.

Fonctionnalités d’étiquetage textuel

L’étiquetage des données Azure Machine Learning est un outil dont vous pouvez vous servir pour créer, gérer et superviser les projets d’étiquetage des données. Utilisez-le pour :

  • Coordonnez les données, les étiquettes et les membres de l’équipe pour gérer efficacement les tâches d’étiquetage.
  • Suivez la progression et gérez la file d’attente des tâches d’étiquetage incomplètes.
  • Démarrez et arrêtez le projet pour contrôler la progression de l’étiquetage.
  • Passez en revue les données étiquetées et exportez-les en tant que jeu de données Azure Machine Learning.

Important

Les images de données dont vous sous servez dans l’outil d’étiquetage des données Azure Machine Learning doivent être disponibles dans un magasin de données Stockage Blob Azure. Si vous ne disposez pas de magasin de données, vous pouvez charger vos fichiers de données dans un nouveau magasin de données lors de la création du projet.

Formats de données disponibles pour les données texte :

  • .txt : chaque fichier représente un seul élément à étiqueter.
  • .csv ou .tsv : chaque ligne représente un élément présenté à l’étiqueteur. Vous décidez quelles colonnes l’étiqueteur peut voir lors de l’étiquetage de la ligne.

Prérequis

Vous employez ces éléments pour configurer l’étiquetage des images dans Azure Machine Learning :

  • Les données à étiqueter, dans des fichiers locaux ou un stockage Blob Azure.
  • L’ensemble d’étiquettes à appliquer.
  • Des instructions pour l’étiquetage.
  • Un abonnement Azure. Si vous n’avez pas d’abonnement Azure, créez un compte gratuit avant de commencer.
  • Un espace de travail Azure Machine Learning. Consultez Créer un espace de travail Microsoft Azure Machine Learning.

Pour un projet d’étiquetage textuel

Les projets d’étiquetage sont administrés dans Azure Machine Learning. Pour la gestion de vos projets, utilisez la page Étiquetage des données dans Machine Learning.

Si vos données se trouvent déjà dans le Stockage Blob Azure, assurez-vous qu’elles sont disponibles sous la forme d’un magasin de données avant de créer le projet d’étiquetage.

  1. Pour créer un projet, sélectionnez Ajouter un projet.

  2. Pour Nom du projet, entrez un nom pour le projet.

    Vous ne pouvez pas réutiliser le nom du projet, même après la suppression du projet.

  3. Pour créer un projet d’étiquetage d’image, pour Type de média, choisissez Texte.

  4. Pour Type de tâche d’étiquetage, choisissez une option pour votre scénario :

    • Pour appliquer une seule étiquette à chaque élément de texte d’un ensemble d’étiquettes, choisissez Classification de texte multiclasse.
    • Pour appliquer une ou plusieurs étiquettes à chaque élément de texte d’un ensemble d’étiquettes, choisissez Classification de texte à plusieurs étiquettes.
    • Pour appliquer des étiquettes à des mots de texte individuels ou à plusieurs mots de texte dans chaque entrée, sélectionnez Reconnaissance d’entité nommée de texte.

    Screenshot that shows creating a labeling project for text labeling.

  5. Sélectionnez Suivant pour continuer.

Ajouter du personnel (facultatif)

Ne sélectionnez utiliser une société d’étiquetage des fournisseurs de la Place de marché Azure que si vous avez engagé une société d’étiquetage des données à partir de la Place de marché Azure. Sélectionnez ensuite le fournisseur. Si votre fournisseur ne figure pas dans la liste, effacez cette option.

Assurez-vous au préalable de contacter le fournisseur et de signer un contrat. Pour plus d’informations, consultez Utiliser une société d’étiquetage de données (préversion).

Sélectionnez Suivant pour continuer.

Sélectionner ou créer un jeu de données

Si vous avez déjà créé un jeu de données qui contient vos données, sélectionnez-le dans la liste déroulante Sélectionner un jeu de données existant. Vous pouvez aussi choisir Créer un jeu de données pour utiliser un magasin de données Azure existant ou pour charger des fichiers locaux.

Notes

Un projet ne peut contenir plus de 500 000 fichiers. Si votre jeu de données est supérieur à ce nombre de fichiers, seuls les 500 000 premiers fichiers sont chargés.

Créer un jeu de données à partir d’un magasin de données Azure

Dans de nombreux cas, vous pouvez charger des fichiers locaux. Cependant, l’Explorateur Stockage Azure constitue un moyen plus rapide et plus robuste de transférer une grande quantité de données. Nous recommandons l’Explorateur Stockage en tant que méthode par défaut pour déplacer des fichiers.

Pour créer un jeu de données à partir de données que vous avez déjà stockées dans le Stockage Blob :

  1. Sélectionnez Create (Créer).
  2. Pour Nom, indiquez un nom pour votre jeu de données. Si vous le souhaitez, entrez une description.
  3. Choisissez le type de jeu de données :
    • Sélectionnez Tabulaire si vous utilisez un fichier .csv ou .tsv, où chaque ligne contient une réponse.
    • Sélectionnez Fichier si vous utilisez des fichiers .txt distincts pour chaque réponse.
  4. Sélectionnez Suivant.
  5. Choisissez À partir du stockage Azure, puis Suivant.
  6. Sélectionnez le magasin de données, ensuite Suivant.
  7. Si vos données sont dans un sous-dossier de votre Stockage Blob, choisissez Parcourir pour sélectionner le chemin d'accès.
    • Pour inclure tous les fichiers des sous-dossiers du chemin d'accès sélectionné, ajoutez /** au chemin d'accès.
    • Pour inclure toutes les données figurant dans le conteneur actuel et ses sous-dossiers, ajoutez **/*.* au chemin d'accès.
  8. Sélectionnez Create (Créer).
  9. Sélectionnez la ressource de données que vous avez créée.

Créer un jeu de données à partir des données chargées

Pour charger directement vos données :

  1. Sélectionnez Create (Créer).
  2. Pour Nom, indiquez un nom pour votre jeu de données. Si vous le souhaitez, entrez une description.
  3. Choisissez le type de jeu de données :
    • Sélectionnez Tabulaire si vous utilisez un fichier .csv ou .tsv, où chaque ligne contient une réponse.
    • Sélectionnez Fichier si vous utilisez des fichiers .txt distincts pour chaque réponse.
  4. Sélectionnez Suivant.
  5. Sélectionnez À partir de fichiers locaux, ensuite Suivant.
  6. (Facultatif) Sélectionnez un magasin de données. La sélection par défaut pour charger dans le magasin d’objets blob par défaut (workspaceblobstore) de votre espace de travail Machine Learning.
  7. Sélectionnez Suivant.
  8. Choisissez Charger>Charger des fichiers ou Charger>Charger un dossier pour sélectionner les fichiers ou dossiers locaux à charger.
  9. Recherchez vos fichiers ou dossier dans la fenêtre du navigateur, puis sélectionnez Ouvrir.
  10. Continuez à sélectionner Charger jusqu’à spécifier tous vos fichiers et dossiers.
  11. Si vous le souhaitez, cochez la case Remplacer s’il existe déjà. Vérifiez la liste des fichiers et des dossiers.
  12. Sélectionnez Suivant.
  13. Vérifiez les détails. Sélectionnez Précédent pour modifier les paramètres, ou choisissez Créer pour créer le jeu de données.
  14. Enfin, sélectionnez la ressource de données que vous avez créée.

Configurer une actualisation incrémentielle

Si vous envisagez d’ajouter de nouveaux fichiers de données à votre jeu de données, utilisez l’actualisation incrémentielle pour ajouter les fichiers à votre projet.

Quand Activer l’actualisation incrémentielle à intervalles réguliers est défini, des recherches sont régulièrement effectuées dans le jeu de données pour que de nouveaux fichiers soient ajoutés à un projet, en fonction du taux de progression de l’étiquetage. La recherche de nouvelles données s’arrête quand le projet contient le nombre maximal de 500 000 fichiers.

Sélectionnez Activer l’actualisation incrémentielle à intervalles réguliers quand vous souhaitez que votre projet supervise en continu les nouvelles données dans le magasin de données.

Effacez la sélection si vous ne voulez pas que les nouveaux fichiers du magasin de données soient ajoutés automatiquement à votre projet.

Important

Ne créez pas de nouvelle version pour le jeu de données que vous souhaitez mettre à jour. Si vous le faites, les mises à jour ne vont pas être visibles, parce que le projet d’étiquetage des données est rattaché à la version initiale. Utilisez plutôt l’Explorateur Stockage Azure pour modifier vos données dans le dossier approprié du Stockage Blob.

Par ailleurs, ne supprimez pas de données. La suppression de données du jeu de données utilisé par votre projet va provoquer une erreur dans le projet.

Une fois le projet créé, utilisez l’onglet Détails pour modifier l’actualisation incrémentielle, afficher l’horodatage de la dernière actualisation et demander une actualisation immédiate des données.

Notes

Les projets qui utilisent une entrée de jeu de données tabulaire (.csv ou .tsv) peuvent utiliser l’actualisation incrémentielle. Mais l’actualisation incrémentielle ajoute uniquement de nouveaux fichiers tabulaires. L’actualisation ne reconnaît pas les modifications apportées aux fichiers tabulaires existants.

Spécifier des catégories d’étiquettes

À la page Catégories d’étiquettes, indiquez un ensemble des classes permettant de catégoriser vos données.

La précision et la vitesse de vos étiqueteurs dépendent de leur capacité à choisir entre les classes. Par exemple, au lieu d’indiquer le genre et l’espèce complets de plantes ou d’animaux, utilisez un code de champ ou abrégez le genre.

Vous pouvez utiliser une liste plate ou créer des groupes d’étiquettes.

  • Pour créer une liste plate, sélectionnez Ajouter une catégorie d’étiquette pour créer chaque étiquette.

    Screenshot that shows how to add a flat structure of labels.

  • Pour créer des étiquettes dans des groupes différents, sélectionnez Ajouter une catégorie d’étiquette pour créer les étiquettes de premier niveau. Sélectionnez ensuite le signe plus + sous chaque premier niveau pour créer le niveau suivant d’étiquettes pour cette catégorie. Vous pouvez créer jusqu’à six niveaux dans chaque groupe.

    Screenshot that shows how to add groups of labels.

Vous pouvez sélectionner des étiquettes à tous les niveaux pendant le processus d’étiquetage. Par exemple, les étiquettes Animal, Animal/Cat, Animal/Dog, Color, Color/Black, Color/White et Color/Silver sont toutes des choix possibles pour une étiquette. Dans un projet à plusieurs étiquettes, il n’est pas nécessaire de choisir une étiquette de chaque catégorie. Si c’est votre intention, veillez à inclure cette information dans vos instructions.

Décrivez la tâche d’étiquetage des données

Il est important d’expliquer clairement la tâche d’étiquetage. Dans la page Instructions d’étiquetage, vous pouvez soit ajouter un lien vers un site externe contenant des instructions d’étiquetage, soit fournir des instructions dans la zone d’édition de la page. Veillez à ce que les instructions soient axées sur la tâche et appropriées pour le public. Prenez en compte les questions suivantes :

  • Quelles sont les étiquettes que les étiqueteurs vont voir, et comment vont-ils entre celles-ci ? Existe-t-il un texte de référence à consulter ?
  • Que doivent-ils faire si aucune étiquette ne semble appropriée ?
  • Que doivent-ils faire si plusieurs étiquettes semblent appropriées ?
  • Quel seuil de confiance doivent-ils appliquer à une étiquette ? Voulez-vous la meilleure approximation de l'étiqueteur s'il n'est pas certain ?
  • Que doivent-ils faire avec des objets partiellement masqués ou qui se chevauchent ?
  • Que doivent-ils faire si un objet est coupé par le bord de l’image ?
  • Que doivent-ils faire après avoir soumis une étiquette, s'ils estiment s'être trompés ?
  • Que doivent-ils faire, s’ils découvrent des problèmes liés à la qualité de l’image, notamment des conditions d’éclairage médiocres, des reflets, une perte de focus, un arrière-plan indésirable inclus, des angles de photo anormaux, etc. ?
  • Que doivent-ils faire, si plusieurs réviseurs ont des opinions différentes sur l’application d’une étiquette ?

Notes

Les étiqueteurs peuvent choisir les neuf premières étiquettes à l’aide des touches numériques 1 à 9.

Contrôle qualité (préversion)

Pour obtenir des étiquettes plus précises, accédez à la page Contrôle qualité pour envoyer chaque élément à plusieurs étiqueteurs.

Important

L’étiquetage de consensus est actuellement en préversion publique.

La préversion est fournie sans contrat de niveau de service et n’est pas recommandée pour les charges de travail en production. Certaines fonctionnalités peuvent être limitées ou non prises en charge.

Pour plus d’informations, consultez Conditions d’Utilisation Supplémentaires relatives aux Évaluations Microsoft Azure.

Pour que chaque élément soit envoyé à plusieurs étiqueteurs, sélectionnez Activer l’étiquetage par consensus (préversion). Ensuite, définissez les valeurs du Nombre minimal d’étiqueteurs et du Nombre maximal d’étiqueteurs pour indique combien d’étiqueteurs utiliser. Assurez-vous de disposer d'autant d'étiqueteuses que votre nombre maximum. Vous ne pouvez plus modifier ces paramètres une fois le projet démarré.

Si un consensus est atteint à partir du nombre minimal d’étiqueteurs, l’élément est étiqueté. Dans le cas où aucun consensus n’est atteint, l’élément est envoyé à plus d’étiqueteurs. En l’absence de consensus, une fois que l’élément a atteint le nombre maximal d’étiqueteurs, son état devient Nécessite un avis ; le propriétaire du projet est alors responsable de l’étiquetage de l’élément.

Utiliser l’étiquetage des données assisté par ML

La page Étiquetage assisté par ML vous permet de déclencher des modèles Machine Learning automatiques pour accélérer les tâches d’étiquetage. L’étiquetage assisté par ML peut gérer les entrées de données de texte au format Fichier (.txt) ou Tabulaire (.csv).

Pour utiliser l’étiquetage assisté par ML :

  1. Sélectionnez Activer l’étiquetage assisté par ML.
  2. Sélectionnez la Langue du jeu de données pour le projet. Cette liste affiche toutes les langues prises en charge par la classe TextDNNLanguages.
  3. Spécifiez une cible de calcul à utiliser. Si vous n’avez pas de cible de calcul dans votre espace de travail, cela crée un cluster de calcul et ajoute ce cluster de calcul à votre espace de travail. Le cluster est créé avec un minimum de zéro nœud, ce qui signifie qu’il ne coûte rien quand il n’est pas utilisé.

Plus d’informations sur l’étiquetage assisté par ML

Au début de votre projet d’étiquetage, les éléments sont mélangés dans un ordre aléatoire pour réduire le biais potentiel. Toutefois, le modèle entraîné reflète tous les biais présents dans le jeu de données. Par exemple, si 80 pour cent de vos éléments appartiennent à une unique classe, environ 80 pour cent des données utilisées pour effectuer l'apprentissage du modèle feront partie de cette classe.

Pour entraîner le modèle DNN de texte utilisé par l’étiquetage assisté par ML, le texte d’entrée par exemple d’entraînement est limité environ aux 128 premiers mots du document. Pour des entrées tabulaires, toutes les colonnes de texte sont d’abord concaténées avant l’application de cette limite. Cette limite pratique permet à l’entraînement du modèle de se terminer dans un délai raisonnable. Le texte réel dans un document (entrées au format Fichier) ou un ensemble de colonnes de texte (entrées au format Tabulaire) peut dépasser 128 mots. La limite ne concerne que ce qui est utilisé en interne par le modèle durant le processus d’entraînement.

Le nombre d’éléments de données étiquetés nécessaires au démarrage de l’étiquetage assisté n’est pas un nombre défini. Ce nombre peut varier considérablement d’un projet d’étiquetage à un autre. La variance dépend de nombreux facteurs, notamment le nombre de classes d’étiquettes et la distribution des étiquettes.

Dans le cadre de l’étiquetage par consensus, l’étiquette de consensus est utilisée pour l’apprentissage.

Dans la mesure où les étiquettes finales dépendent encore de l’entrée de l’étiqueteur, cette technologie est parfois appelée étiquetage avec humain dans la boucle.

Notes

L’étiquetage des données assisté par ML ne prend pas en charge les comptes de stockage par défaut qui sont sécurisés derrière un réseau virtuel. Vous devez utiliser un compte de stockage différent de celui par défaut pour l’étiquetage des données assisté par ML. Le compte de stockage autre que celui par défaut peut être sécurisé derrière le réseau virtuel.

Préétiquetage

Après l’envoi d’un nombre suffisant d’étiquettes à des fins d’entraînement, le modèle entraîné est utilisé pour prédire les étiquettes. L’étiqueteur voit dès lors les pages qui présentent les étiquettes prédites déjà présentes dans chaque élément. La tâche implique l’examen de ces prédictions et la correction de tous les éléments mal étiquetés, avant l’envoi de la page.

Après la formation d’un modèle Machine Learning avec vos données étiquetées manuellement, le modèle est évalué sur un ensemble de tests des éléments étiquetés manuellement. L’évaluation permet de connaître la précision du modèle à différents seuils de confiance. Le processus d’évaluation établit le seuil de confiance au-dessus duquel le modèle est suffisamment précis pour afficher des pré-étiquettes. Le modèle est ensuite évalué par rapport aux données non étiquetées. Les éléments dont les prédictions sont plus fiables que le seuil sont utilisés pour le pré-étiquetage.

Initialisez le projet d’étiquetage des données

Une fois le projet d’étiquetage initialisé, certains de ses aspects sont non modifiables. Vous ne pouvez pas changer le type de tâche ou le jeu de données. Vous pouvez modifier les étiquettes et l’URL de la description de la tâche. Passez en revue attentivement les paramètres avant de créer le projet. Après avoir envoyé le projet, vous revenez à la page vue d’ensemble de l’étiquetage des données, qui affiche le projet comme En cours d’initialisation.

Notes

L'actualisation automatique de cette page n'est pas possible. Après une pause, actualisez manuellement la page pour que l’état du projet indique Créé.

Dépannage

Si vous rencontrez des problèmes liés à la création d’un projet ou à l’accès aux données, consultez Résoudre les problèmes d’étiquetage des données.

Étapes suivantes