Classification des commentaires sur le Recensement de 2021
Par : Joanne Yoon, Statistique Canada
Tous les cinq ans, le Recensement de la population permet de brosser un portrait statistique complet du Canada et de sa population. Le recensement est la seule source de données qui fournit des statistiques uniformes pour les petites régions géographiques et les petits groupes démographiques partout au Canada. Les renseignements obtenus dans le cadre du recensement sont cruciaux pour la planification à tous les échelons. Que ce soit pour démarrer une entreprise, surveiller un programme gouvernemental, planifier les besoins en transport ou choisir l'emplacement d'une école, les Canadiens se servent des données du recensement chaque jour afin de prendre des décisions éclairées.
La préparation de chaque cycle du recensement nécessite plusieurs étapes de mobilisation, ainsi que la mise à l'essai et l'évaluation des données afin de recommander le contenu du prochain recensement, comme celui de 2021 qui aura bientôt lieu. Ces étapes comprennent des consultations et des discussions sur le contenu avec les intervenants et les utilisateurs des données du recensement, ainsi que l'exécution du Test du recensement de 2019 (qui permet de valider les comportements des répondants et de garantir que les questions et les documents du recensement sont compris par tous les participants).
À la fin des questionnaires du Recensement de la population, les répondants ont accès à une zone de texte dans laquelle ils peuvent partager leurs préoccupations et leurs suggestions, ou formuler des commentaires au sujet des étapes à suivre, du contenu ou des caractéristiques du questionnaire. Les renseignements saisis dans cet espace sont analysés par le Secrétariat des domaines spécialisés du recensement (SDSR) pendant et après la période de collecte des données du recensement. Les commentaires au sujet du contenu du questionnaire sont classés par domaine spécialisé (DS), tel que l'éducation, le travail ou la démographie, et communiqués aux analystes experts correspondants. Les renseignements sont utilisés pour appuyer la prise de décision au sujet de la détermination du contenu pour le prochain recensement et pour surveiller des facteurs tels que le fardeau du répondant.
Utilisation de l'apprentissage automatique pour classer les commentaires
Dans le but d'améliorer l'analyse des commentaires formulés dans le cadre du Recensement de la population de 2021, la Division de la science des données (DScD) de Statistique Canada a travaillé en collaboration avec le SDSR pour créer une preuve de concept sur l'utilisation des techniques d'apprentissage automatique (AA) visant à classer rapidement et en toute objectivité les commentaires. Dans le cadre du projet, le SDSR a déterminé 15 catégories de commentaires possibles et a fourni des commentaires formulés lors du recensement précédent et étiquetés selon l'une ou plusieurs de ces catégories. Ces 15 catégories comprenaient les domaines spécialisés du recensement ainsi que d'autres thèmes généraux liés au recensement en fonction desquels il est possible de classer les commentaires formulés par les répondants, comme « expérience avec le formulaire électronique », « fardeau du répondant » ainsi que « expérience du recensement positive » et des commentaires « non reliés au recensement ». En utilisant les techniques de l'AA avec les données étiquetées, un classificateur de texte bilingue semi-supervisé a été formé, dans lequel les commentaires peuvent être en français ou en anglais, et où la machine peut utiliser les données étiquetées pour apprendre à reconnaître chaque catégorie, tout en profitant des données non étiquetées pour comprendre son espace de donnée. Les scientifiques des données de la DScD ont mené des expériences avec deux modèles d'AA, et les forces de chacun des modèles, ainsi que le modèle final, sont présentés en détail dans cet article.
Les scientifiques des données ont formé le Classificateur de commentaires pour le Recensement de 2021 en utilisant les commentaires formulés lors du Test du recensement de 2019. L'équipe du SDSR a étiqueté manuellement ces commentaires en utilisant les quinze catégories de commentaires qui avaient été déterminées et a mutuellement révisé leur codage en vue de réduire les biais de codage. Le classificateur est à catégories multiples, car un commentaire peut être classé dans 15 catégories différentes. Par conséquent, ce classificateur est aussi à étiquettes multiples puisqu'un répondant peut écrire un commentaire qui porte sur de multiples sujets qui s'inscrivent dans de multiples catégories, et le commentaire peut donc être codé selon une ou plusieurs catégories.
Mise en correspondance déterministe de numéro de question et de numéro de page
Lorsqu'un commentaire comporte un numéro de question ou de page, ce numéro est mis en correspondance de façon déterministe à la catégorie du domaine spécialisé associée à la question et combiné ensuite avec la prévision de catégorie par apprentissage automatique (AA) afin de produire la prévision de catégorie finale. Par exemple, supposons qu'un répondant remplit un questionnaire dans lequel la question numéro 22 porte sur ses études. Dans la zone de commentaires, le répondant ajoute des commentaires sur la question 22 en indiquant expressément le numéro de la question et mentionne aussi les questions sur le sexe et le genre sans indiquer les numéros des questions. La mise en correspondance donne comme résultat la catégorie sur l'éducation, et le modèle d'AA prédit la catégorie sur le sexe et le genre en fonction des mots utilisés pour mentionner les questions sur le sexe et le genre. Le programme produit la prévision finale, qui est une union des deux produits : catégorie sur l'éducation et catégorie sur le sexe et le genre. Quand aucun numéro de question ou de page n'est expressément mentionné, le programme produit uniquement la prévision de l'AA. Le modèle de l'AA n'est pas formé pour apprendre la mise en correspondance du numéro de page de chaque question, car l'emplacement d'une question peut varier selon le format du questionnaire. Il y a par exemple des questions sur différentes pages lorsque vous comparez la police de caractère régulière et les questionnaires à gros caractères, car il y a moins de questions par page avec de gros caractères, et le questionnaire électronique ou en ligne n'affiche aucun numéro de page.
Nettoyage de textes
Avant de former le classificateur, le programme nettoie d'abord les commentaires. Il détermine la langue du commentaire (français ou anglais) et corrige ensuite l'orthographe des mots non identifiables au moyen d'un mot qui nécessite le moins de vérifications et que l'on trouve le plus souvent dans les données d'entraînement. Par exemple, le mot vilse peut être corrigé pour utiliser les mots valides valse ou ville, mais il sera remplacé par ville, car ville a été utilisé plus fréquemment dans les données d'entraînement. De plus, les mots sont regroupés par lemmatisation dans leur représentation de base. La machine comprend alors que les mots marcher et marché ont la même signification à la base. Les mots vides (stop words) ne sont pas retirés, car les mots auxiliaires ont une signification et ajoutent un sentiment. Par exemple, cela devrait être mieux ne signifie pas la même chose que cela est mieux, mais si le programme retirait tous les mots vides (y compris cela, devrait, être et est), les deux phrases deviendraient identiques et il ne resterait qu'un mot : mieux. Le retrait des mots vides peut modifier la signification et le sentiment d'un commentaire.
Classificateur de texte bilingue semi-supervisé
Le classificateur de texte bilingue semi-supervisé apprend des commentaires étiquetés et est utilisé pour classer les commentaires. Le classificateur de texte bilingue semi-supervisé n'est pas un concept unique, mais plutôt des parties individuelles combinées pour mieux classer les commentaires formulés lors du recensement.
Les scientifiques des données ont formé un modèle bilingue dans lequel la proportion de commentaires étiquetés en français par rapport à l'anglais, tels que détectés par un langage de programmation Python, était de 29 % et 71 %, respectivement (16 062 commentaires étiquetés en anglais et 6 597 commentaires étiquetés en français). En formant le modèle en fonction des deux langues, ce dernier a profité des mots identiques (comme consultation, journal et restaurant) qui ont la même signification dans les deux langues pour améliorer l'exactitude des commentaires en français qui ont moins d'étiquettes que les commentaires en anglais.
Le modèle est semi-supervisé. Les données étiquetées déterminent le savoir que la machine doit reproduire. Lorsqu'il reçoit les données de formation étiquetées, le modèle utilise le maximum de vraisemblance pour apprendre les paramètres du modèle et la formation contradictoire pour être robuste face aux petites perturbations. Les données non étiquetées sont aussi utilisées pour élargir l'espace de données que la machine devrait gérer avec peu de confusion, mais n'apprennent pas au modèle la signification des catégories. Les données non étiquetées sont utilisées uniquement pour réduire la confusion du modèle en utilisant la minimisation de l'entropie pour minimiser l'entropie conditionnelle des probabilités de catégories estimées et la formation contradictoire virtuelle pour maximiser le lissage local d'une répartition d'étiquettes conditionnelles par rapport à la perturbation locale.
Le classificateur de texte commence avec une première transformation pour accepter les mots comme données d'entrée. Un tableau de consultation mettra en correspondance chaque mot avec un vecteur dense, car la machine apprend à partir des chiffres et non des caractères. La transformation présentera une séquence de mots en séquence de vecteurs. À partir de cette séquence, le modèle cherche un schéma qui est plus généralisable et plus robuste que d'apprendre chaque mot individuellement. De plus, pour empêcher la machine de mémoriser certaines expressions plutôt que la signification sémantique, une étape d'élimination suit directement la première transformation. Lors de l'entraînement, l'étape d'élimination retire des mots aléatoirement de la phrase de formation. La proportion de mots retirés est fixe, mais les mots retirés sont sélectionnés au hasard. Le modèle est forcé d'apprendre sans certains mots, de sorte qu'il effectue une meilleure généralisation. Lors de l'utilisation du modèle pour classer les commentaires, aucun mot n'est mis de côté et le modèle peut utiliser toute la connaissance et tous les schémas détectés pour faire une prévision.
Comparaison du réseau de neurones à convolution à la mémoire à long-court terme bidirectionnelle
Les scientifiques des données ont comparé un réseau de neurones à convolution (RNC) à un réseau de mémoire à long-court terme bidirectionnelle (MLCT-Bi). Les deux réseaux peuvent classer le texte en apprenant automatiquement des schémas complexes, mais ils apprennent différemment, en raison de leurs structures différentes. Dans cette preuve de concept, les scientifiques des données ont mené une expérience avec trois modèles différents pour apprendre les 15 catégories : un modèle de MLCT simple, un modèle de MLCT multiple et un modèle de RNC multiple. Dans l'ensemble, le modèle de MLCT simple a prévu avec constance toutes les catégories avec le plus d'exactitude et sera donc utilisé dans la production.
Le réseau de MLCT peut saisir les dépendances à long terme entre les séquences de mots en utilisant des mécanismes (gates) appliqués aux données d'entrée, d'oubli et de sortie, car il peut apprendre à retenir ou à oublier l'information sur l'état précédent. L'information sur l'état précédent est le contexte créé par le groupe de mots qui précédait le mot actuel sur lequel le réseau se penche. Si le mot actuel est un adjectif, le réseau sait à quoi réfère l'adjectif, car il a retenu cette information précédemment à l'intérieur de la phrase. Si la phrase parle d'un sujet différent, le réseau devrait oublier l'état précédent de l'information. Puisque la MLCT-Bi est bidirectionnelle, le modèle recueille l'information précédente et future sur chaque mot.
Le modèle de RNC applique un filtre de convolution à une fenêtre mobile de groupe de mots et de regroupement maximum pour sélectionner l'information la plus importante d'une séquence de mots plutôt que d'analyser chaque mot séparément. Le RNC définit le contexte sémantique d'un mot en utilisant les mots qui l'accompagnent, tandis que la MLCT apprend à partir d'un schéma séquentiel de mots. Les caractéristiques individuelles sont concaténées pour former un vecteur de caractéristiques uniques qui résume les caractéristiques principales de la phrase d'entrée.
Un classificateur multiple a été mis à l'essai avec une couche sigmoïde finale donnant une répartition du niveau de confiance associé aux catégories. La couche sigmoïde représentera la cote de confiance de prévision de chaque catégorie sous forme de pourcentage entre 0 et 1 (c.-à-d., 0 % - 100 %) où les cotes sont toutes dépendantes l'une de l'autre. Cela est idéal pour le problème des étiquettes multiples pour les commentaires qui abordent de multiples sujets.
Les scientifiques des données ont aussi mis à l'essai un classificateur simple où un modèle apprend uniquement à déterminer si une seule catégorie est présente dans le texte au moyen d'une fonction d'activation softmax. Le nombre de classificateurs uniques est égal au nombre de catégories. Un commentaire d'entrée peut avoir de multiples étiquettes si de multiples classificateurs prévoient que son sujet est mentionné dans le commentaire. Par exemple, si un commentaire porte sur la langue et l'éducation, le classificateur de langue et le classificateur d'éducation prévoiront 1 pour signaler la présence des catégories de domaine spécialisé pertinentes et d'autres classificateurs prévoiront 0 pour signaler l'absence.
Un classificateur simple apprend chaque catégorie mieux qu'un classificateur multiple, qui doit apprendre 15 catégories différentes, mais il y a le fardeau supplémentaire pour les programmeurs de tenir à jour 15 classificateurs différents. Le fardeau d'exécuter les classificateurs multiples est minimal, car il est facile d'effectuer la programmation visant à exécuter tous les classificateurs dans une boucle et indiquer la pertinence de chaque catégorie. Comme il est indiqué dans le tableau, le modèle de MLCT-Bi simple donne les meilleurs résultats au sein des différentes catégories et sur le plan de la moyenne pondérée.
Tableau 1 : Moyenne pondérée des cotes F1 du test pour différents modèles
cotes F1 | |
---|---|
MLCT-Bi simple | 90,2 % |
RNC multiple | 76 % |
MLCT-Bi | 73 % |
Parmi les classificateurs multiples, le RNC a eu une cote F1 moyenne du test supérieure de 4,6 % à celle de la MLCT-Bi lors de la classification des commentaires en catégories de domaine spécialisé comme la langue et l'éducation. Par contre, la cote F1 moyenne du test du modèle de la MLCT-Bi pour les catégories générales de thèmes du recensement (c.-à-d. « non relié au recensement », « expérience du recensement positive », « fardeau du répondant », « expérience avec le formulaire électronique ») était supérieure de 9,0 % au modèle du RNC. La MLCT-Bi était meilleure pour prévoir si un commentaire était pertinent ou non pour le Programme du recensement, parce qu'elle connaissait le contexte global de l'intention du sentiment. Par exemple, l'opinion d'un répondant au sujet d'une équipe sportive canadienne n'est pas pertinente dans le cadre du recensement, alors ce type de commentaire serait classé dans la catégorie « non relié au recensement ». Dans ce cas, le modèle de RNC prédisait le commentaire comme étant de nature positive et, ainsi, le classait dans la catégorie d'expérience du recensement positive, tandis que la MLCT-Bi a relié le sentiment positif au contexte (équipes sportives); puisque le contexte n'était pas relié au recensement, elle l'a correctement étiqueté comme étant non pertinent aux fins d'analyse supplémentaire par le SDSR. Le RNC, en revanche, examine un éventail plus petit de mots, alors il excelle dans l'extraction de caractéristiques dans certaines parties de la phrase qui sont pertinentes à certaines catégories.
Prochaines étapes
Cette preuve de concept a permis de montrer qu'un modèle d'apprentissage automatique (AA) peut classer avec exactitude les commentaires bilingues formulés dans le cadre du recensement. Le classificateur est à catégories multiples, ce qui signifie qu'il y a de multiples catégories dans lesquelles classer un commentaire. Il est aussi à multiples étiquettes, ce qui signifie que plus d'une catégorie peut être applicable au commentaire d'entrée. La deuxième étape de ce projet sera le passage de ce modèle à la production. En production, les commentaires en français et en anglais feront l'objet d'une vérification grammaticale et seront reliés aux racines des mots en fonction de la langue utilisée pour formuler chaque commentaire. Un classificateur de texte bilingue semi-supervisé servira à prédire la nature des commentaires nettoyés en français et en anglais. Les données étiquetées de 2019 seront utilisées pour entraîner le modèle d'AA à faire ses prédictions et à étiqueter les commentaires qui proviendront du nouveau Recensement de la population de 2021 et ainsi garantir que les commentaires des répondants sont catégorisés et communiqués aux analystes experts appropriés. À l'étape de production, lorsque les commentaires du Recensement de 2021 arriveront, l'équipe du SDSR et les scientifiques des données continueront de valider les prévisions de l'AA et les retourneront à la machine pour améliorer encore le modèle.
Si vous êtes intéressé par l'analyse des textes, ou souhaitez en savoir davantage sur ce projet en particulier, un membre de la Communauté de pratique sur l'apprentissage automatique appliqué pour l'analyse des textes (employés du GC seulement) a récemment fait une présentation sur le projet. Joignez-vous à la communauté pour poser des questions ou discuter de d'autres projets en analyse des textes.
- Date de modification :