10 questions à poser avant de lancer un projet d'apprentissage automatique
- 10 questions à poser avant de lancer un projet d'apprentissage automatique
- Questions à poser avant de lancer un projet d'apprentissage automatique :
- 1) Quel est le problème central et l'objectif du projet ?
- 2) Quelles mesures seront utilisées pour évaluer la réussite du projet, et à partir de quel(s) seuil(s) ?
- 3) De combien de données disposons-nous pour commencer ?
- 4) Quelle quantité de données peut être étiquetée avant le début du projet et quelle quantité peut être générée par mois ?
- 5) Quelle est la part de subjectivité dans l'étiquetage par les annotateurs humains ?
- 6) Quelles métadonnées seront disponibles pour chaque document ?
- 7) Est-il possible d'avoir accès à des listes d'entités que nous rencontrerons ?
- 8) Pouvons-nous faire quelque chose pour accélérer le processus de collecte et d'étiquetage des données ?
- 9) Existe-t-il des données non étiquetées provenant du même domaine ou des données étiquetées existantes qui ne sont pas liées à la tâche de prédiction pilote ?
- 10) Existe-t-il une base de données connue de textes spécifiques au domaine qui partagent un vocabulaire (et des entités) similaire ?
- Questions à poser avant de lancer un projet d'apprentissage automatique :
10 questions à poser avant de lancer un projet d'apprentissage automatique
Plus de 80% des projets de science des données ne parviennent pas à dépasser le stade des tests et à passer en production. Si tout le monde se lance dans un projet d'apprentissage automatique, où cela se passe-t-il mal ? Il ne fait aucun doute que les solutions d'apprentissage automatique augmentent l'efficacité de ceux qui collectent ou analysent de grandes quantités de données. Mais souvent, l'idée menaçante de la mise en œuvre d'un tel projet nous en empêche.
Comment aborder une telle tâche ? De la même manière que l'on mange un éléphant - bouchée par bouchée. Grâce à l'expérience que j'ai acquise en dirigeant mon équipe dans la construction d'une plateforme d'IA standard (Barre d'outils Skim AI Chrome) et des solutions personnalisées, j'ai identifié les 10 questions à poser avant de démarrer un projet d'apprentissage automatique. Une fois que vous aurez répondu à ces 10 questions, vous saurez clairement comment aborder le projet.
Questions à poser avant de lancer un projet d'apprentissage automatique :
1) Quel est le problème central et l'objectif du projet ?
Il existe plusieurs réponses valables à cette question. Tout d'abord, identifiez l'objectif général : devez-vous extraire des informations ou les classer ?
Ensuite, il faut déterminer à quel niveau de détail cela doit être exécuté. Par exemple, le modèle doit-il analyser au niveau de la phrase ou au niveau du document entier ? Ou avez-vous besoin de quelque chose de personnalisé, comme un sous-ensemble de phrases dans un paragraphe, qu'il n'est peut-être pas idéal de mettre en œuvre avec une grande précision ?
2) Quelles mesures seront utilisées pour évaluer la réussite du projet, et à partir de quel(s) seuil(s) ?
Déterminez les résultats quantitatifs souhaités. Vous souhaitez peut-être augmenter la quantité de données classées grâce à l'extraction automatique de données. Dans ce cas, vous devez indiquer de combien. Ou bien vous voulez augmenter la quantité de données que vous étiquetez collectivement en tant qu'entreprise ou être en mesure de faire une prédiction avec un certain niveau de précision. Quel que soit l'objectif, il faut le préciser et établir des paramètres mesurables.
3) De combien de données disposons-nous pour commencer ?
L'idéal est de disposer de deux à cinq mille points de données pour commencer. chacun catégorie de classification. Il est utile de disposer de cinquante à cent mille autres éléments de texte brut non étiqueté, d'articles ou d'éléments équivalents à utiliser comme couche dans votre modèle. Si vous construisez un classificateur de sentiment ou autre pour les mentions d'un produit dans les données d'actualité, il serait bon de disposer de quelques centaines de milliers d'articles d'actualité mentionnant des produits et le secteur pour lequel vous construisez le modèle, même si ces articles ne sont pas étiquetés.
4) Quelle quantité de données peut être étiquetée avant le début du projet et quelle quantité peut être générée par mois ?
Comme indiqué à la question 3, le nombre minimum de points de données requis est de 5 000 par catégorie pour développer un modèle fournissant des résultats proches de la précision humaine. Afin d'établir un calendrier réaliste, vous devez vous demander combien de temps il vous faudrait pour étiqueter manuellement cette première série de données.
5) Quelle est la part de subjectivité dans l'étiquetage par les annotateurs humains ?
Sur la méthodologie :
Parfois, vous devez simplifier votre système pour déployer un modèle d'apprentissage automatique utile. Souvent, la raison en est que vous n'aurez tout simplement pas assez de données pour construire un modèle avec une précision de niveau humain afin de distinguer les catégories.
Votre méthodologie est-elle facile à comprendre pour un être humain ? Vos catégories de classification sont-elles distinctes et présentent-elles des différences de vocabulaire entre les catégories, ou est-il difficile de les distinguer en raison de la subjectivité et de l'incapacité à définir des règles avec certitude.
Si un être humain ne peut pas prendre une décision en l'espace d'une ou deux secondes, une machine va avoir un problème. Certaines équipes atténuent ce problème en créant une catégorie de classification "mixte" et en la signalant à un analyste pour examen, de la même manière que lorsqu'une Tesla n'est pas sûre de savoir quoi faire dans une situation confuse, elle demande au conducteur de prendre le contrôle du volant.
6) Quelles métadonnées seront disponibles pour chaque document ?
Il est utile de déterminer les éléments d'information que vous pourrez collecter pour chaque document de votre base de données. Il peut s'agir d'éléments tels que l'auteur, la date, l'heure, la section du journal, le lieu, la source, la catégorie ou les entités concernées (parmi de nombreux autres éléments).
7) Est-il possible d'avoir accès à des listes d'entités que nous rencontrerons ?
La plupart des projets d'extraction de données visent à extraire facilement les entités (personnes, lieux et objets) d'un texte. De nombreuses entreprises souhaitent associer ces données à un client particulier ou afficher des analyses au niveau de l'entité à l'intention d'un utilisateur final (probablement un client). Si vous devez faire correspondre une entité du texte à une entité de votre base de données, il est utile de rédiger les correspondances souhaitées.
En outre, si vous disposez déjà d'entités étiquetées dans le texte, la construction d'un modèle pour extraire les entités du nouveau texte atteindra un niveau de précision élevé. C'est particulièrement le cas si l'objectif est d'étiqueter toutes les variations d'une entité unique et unifiée (par exemple, faire correspondre "Facebook", "WhatsApp" et "Instagram" à leur symbole boursier commun "FB"). La création d'une liste maîtresse d'entités est également utile si vous trouvez de diverses manières une entité mentionnée dans un texte que vous devez ensuite afficher dans une interface frontale orientée client, comme un tableau de bord décisionnel.
8) Pouvons-nous faire quelque chose pour accélérer le processus de collecte et d'étiquetage des données ?
Les données sont un avantage concurrentiel qui vous permet de construire des modèles. Vous devriez envisager de développer cette capacité en interne ou dans le cadre d'une externalisation afin de pouvoir mener à bien vos futurs projets.
Si vous ne disposez pas d'une équipe interne, envisagez d'externaliser vos besoins en matière de collecte de données auprès d'entreprises situées en Inde ou en Europe de l'Est. Leurs tarifs sont très compétitifs et devraient se situer entre 500 et 1 000 euros par mois pour un collecteur de données, en fonction du degré de sophistication de votre système d'étiquetage.
9) Existe-t-il des données non étiquetées provenant du même domaine ou des données étiquetées existantes qui ne sont pas liées à la tâche de prédiction pilote ?
Par exemple, y a-t-il encore beaucoup de données à étiqueter qui sont stockées dans la base de données, pour ce problème particulier ou d'autres documents spécifiques au domaine pour lesquels nous créerons des modèles à l'avenir ?
Si c'est le cas, vous pouvez créer ou adapter divers modèles linguistiques pour améliorer les performances de la plupart des solutions. En effet, même les données non étiquetées sont utiles aux modèles d'apprentissage automatique pour extraire le sens des relations qui existent déjà dans le texte non étiqueté.
10) Existe-t-il une base de données connue de textes spécifiques au domaine qui partagent un vocabulaire (et des entités) similaire ?
Pour les mêmes raisons que celles mentionnées ci-dessus, les données spécifiques à un domaine sont très utiles pour la ML/NLP. Souvent, quelqu'un ou un fournisseur de données dispose de ce dont vous avez besoin pour commencer, parfois gratuitement. De nombreux projets de recherche envisagent de partager leurs ensembles de données, souvent pour un usage non commercial. Envoyez-leur un courriel. Voyez ce qu'il faudrait faire pour obtenir l'accès en termes de coût et s'il existe des API.
Google, Facebook, les gouvernements, les fournisseurs de données de marché, les projets de recherche et d'autres peuvent vous aider à alimenter votre ensemble de données initial avec des données qu'ils mettent à la disposition de la communauté. Souvent, le fait de disposer d'un ensemble de données aussi vaste vous permet d'exploiter davantage vos modèles, même si vos propres données sont moins bien étiquetées.