Apprentissage auto-supervisé en vision par ordinateur : classification d’images

Par : Johan Fernandes, Statistique Canada

Introduction

La vision par ordinateur comprend des tâches telles que la classification d'images, la détection d'objets et la segmentation d'images Note de bas de page 1. La classification d'images consiste à affecter une image entière à l'une de plusieurs classes finies. Par exemple, si une image contient un « chien » qui occupe 90 % de l'espace, elle est étiquetée comme étant un « chien ». De multiples modèles d'apprentissage profond (AP) utilisant des réseaux de neurones artificiels (RNA) ont été élaborés pour classer les images avec une grande précision. Les modèles de pointe pour cette tâche utilisent des RNA de différentes profondeurs et largeurs.

Ces modèles d'AP sont entraînés sur plusieurs images de différentes classes afin de développer leurs capacités de classification. À l'instar de l'entraînement d'un enfant humain pour faire la distinction entre les images d'une « voiture » et d'un « vélo », ces modèles doivent se voir présenter de multiples images de classes telles que « voiture » et « vélo » pour générer cette connaissance. Cependant, les humains ont l'avantage supplémentaire d'élaborer un contexte en observant leur environnement. Notre esprit peut capter des signaux sensoriels (sonores et visuels) qui nous aident à développer cette connaissance pour tous les types d'objets Note de bas de page 2. Par exemple, lorsque nous observons une voiture sur la route, notre esprit peut générer des connaissances contextuelles sur l'objet (la voiture) grâce à des caractéristiques visuelles telles que l'emplacement, la couleur, la forme, l'éclairage entourant l'objet et l'ombre qu'il crée.

Par ailleurs, un modèle d'AP créé expressément pour la vision par ordinateur doit être formé pour développer ces connaissances qui sont stockées sous la forme de poids et de biais qu'il utilise dans son architecture. Ces poids et ces biais sont mis à jour en fonction de ces connaissances lors de l'apprentissage du modèle. Le processus d'entraînement le plus courant, appelé apprentissage supervisé, consiste à entraîner le modèle avec l'image et l'étiquette correspondante afin d'améliorer sa capacité de classification. Cependant, la génération d'étiquettes pour toutes les images est chronophage et coûteuse, car cela implique que des annotateurs humains génèrent manuellement des étiquettes pour chacune des images. Par contre, l'apprentissage auto-supervisé est un nouveau paradigme d'entraînement qui peut être utilisé pour entraîner des modèles d'AP afin de classer des images sans le goulot d'étranglement d'étiquettes bien définies pour chaque image pendant l'entraînement. Dans le cadre de ces travaux, je décrirai l'état actuel de l'apprentissage auto-supervisé et son incidence sur la classification d'images.

Importance de l'apprentissage auto-supervisé

L'apprentissage auto-supervisé vise à mettre en place un environnement permettant d'entraîner le modèle d'AP à extraire le maximum de caractéristiques ou de signaux de l'image. Des études récentes ont montré que la capacité d'extraction de caractéristiques des modèles d'AP est limitée lorsqu'ils sont entraînés avec des étiquettes, car ils doivent sélectionner des signaux qui les aideront à élaborer un modèle pour associer des images semblables à cette étiquette Note de bas de page 2, Note de bas de page 3. Avec l'apprentissage auto-supervisé, le modèle est entraîné à comprendre les signaux sensoriels (p. ex. la forme et le contour d'objets) des images d'entrée sans qu'on lui montre les étiquettes associées.

En outre, puisque l'apprentissage auto-supervisé ne limite pas le modèle à l'élaboration d'une représentation discrète (étiquette) d'une image, il peut apprendre à extraire des caractéristiques beaucoup plus riches d'une image que son équivalent supervisé. Il dispose d'une plus grande liberté pour améliorer la façon dont il représente une image, car il n'a plus besoin d'être entraîné à associer une étiquette à une image Note de bas de page 3. Au lieu de cela, le modèle peut se concentrer sur l'élaboration d'une représentation des images grâce aux caractéristiques améliorées qu'il extrait et sur l'identification d'un modèle permettant de regrouper les images d'une même classe.

L'apprentissage auto-supervisé utilise davantage de signaux de réaction pour améliorer sa connaissance d'une image que l'apprentissage supervisé Note de bas de page 2. Par conséquent, le terme « auto‑supervisé » est de plus en plus souvent utilisé à la place de « non supervisé », car on peut faire valoir que les modèles d'AP reçoivent des signaux d'entrée provenant des données plutôt que des étiquettes. Cependant, ils bénéficient d'une certaine forme de supervision et ne sont pas complètement laissés à eux-mêmes dans le processus d'entraînement. Dans la section suivante, je décrirai les composantes nécessaires à l'apprentissage auto-supervisé.

Ces signaux sont améliorés par une technique appelée « augmentation des données », dans laquelle l'image est recadrée, certaines sections de l'image sont cachées ou le schéma de couleurs de l'image est modifié. À chaque augmentation, le modèle d'AP reçoit une image différente de la même classe ou catégorie que l'image originale. En exposant le modèle à de telles images augmentées, il peut être entraîné à extraire des caractéristiques riches fondées sur les sections visibles de l'imageNote de bas de page 4. En outre, cette méthode d'entraînement élimine le temps système lié à la génération d'étiquettes pour toutes les images, permettant ainsi d'adapter la classification d'images à des domaines où les étiquettes ne sont pas facilement disponibles.

Composantes des méthodes d'apprentissage auto-supervisé :

Encodeur ou extracteur de caractéristiques :

En tant qu'être humain, lorsque nous regardons une image, nous pouvons automatiquement recenser des caractéristiques telles que le contour et la couleur des objets afin de déterminer le type d'objet dans l'image. Pour qu'une machine puisse effectuer une telle tâche, nous utilisons un modèle d'AP, que nous appelons encodeur ou extracteur de caractéristiques puisqu'il peut automatiquement coder et extraire les caractéristiques d'une image. L'encodeur se compose de couches de RNA ordonnées de façon séquentielle, comme le montre la figure 1.

Figure 1. Composantes d’un encodeur ou extracteur de caractéristiques d’apprentissage profond

Figure 1: Composantes d’un encodeur ou extracteur de caractéristiques d’apprentissage profond

L’image décrit la structure d’un encodeur ou d’un extracteur de caractéristiques ainsi qu’un exemple de l’entrée qu’il reçoit et de la sortie qu’il fournit. L’entrée dans l’encodeur est une image qui, dans ce cas, montre un chien et la sortie est un vecteur qui peut représenter cette image dans un espace dimensionnel supérieur. L’encodeur est constitué de plusieurs couches neuronales à couche unique qui sont empilées l’une sur l’autre ou à côté l’une de l’autre, comme le montre cette image. Chaque couche se compose de plusieurs neurones convolutifs. Ces couches choisiront des caractéristiques essentielles qui aideront l’encodeur à représenter l’image comme un vecteur qui constitue la sortie finale de l’encodeur. Le vecteur qu’il produit à la fin aura n dimensions, et chaque dimension sera réservée à une caractéristique. Ce vecteur peut être projeté dans un espace n-dimensionel et peut être utilisé pour regrouper des vecteurs de la même classe comme un chien ou un chat.

Une image contient plusieurs caractéristiques. La tâche de l'encodeur consiste à extraire uniquement les caractéristiques essentielles, à faire abstraction du bruit et à convertir ces caractéristiques en une représentation vectorielle. Cette représentation codée de l'image peut être projetée dans un espace n-dimensionnel ou latent, selon la taille du vecteur. Par conséquent, pour chaque image, l'encodeur génère un vecteur représentant l'image dans cet espace latent. Le principe sous-jacent est de s'assurer que les vecteurs d'images de la même classe peuvent être regroupés dans cet espace latent. Par conséquent, les vecteurs de « chats » seront regroupés, tandis que les vecteurs de « chiens » formeront un groupe distinct, les deux groupes de vecteurs étant clairement séparés l'un de l'autre.

Les encodeurs sont entraînés pour améliorer leur représentation d'images afin de pouvoir coder des caractéristiques plus riches des images dans des vecteurs qui aideront à distinguer ces vecteurs dans l'espace latent. Les vecteurs générés par les encodeurs peuvent être utilisés pour traiter de multiples tâches de vision par ordinateur, telles que la classification d'images et la détection d'objets. Les couches de RNA dans l'encodeur sont traditionnellement des couches d'un réseau neuronal convolutif (RNC), comme le montre la figure 1. Toutefois, les derniers modèles d'AP utilisent des couches de réseau attentionnel dans leur architecture. Ces encodeurs sont appelés transformateurs, et des travaux récents ont commencé à les utiliser pour traiter la classification d'images en raison de leur incidence dans le domaine du traitement du langage naturel. Les vecteurs peuvent être transmis à des modèles de classification, qui peuvent être une série de couches de RNA ou des modèles basés sur le regroupement, tels que le classificateur k plus proches voisins (KPPV). La littérature actuelle sur l'apprentissage auto-supervisé utilise les classificateurs KPPV pour regrouper les images, car ils ne requièrent que le nombre de groupes comme argument et n'ont pas besoin d'étiquettes.

Augmentation des données :

Les étiquettes d'images ne sont pas fournies aux encodeurs entraînés de manière auto-supervisée. Par conséquent, la capacité de représentation des encodeurs doit être améliorée uniquement à partir des images qu'ils reçoivent. En tant qu'être humain, nous pouvons regarder des objets sous différents angles et perspectives afin d'en comprendre la forme et le contour. De même, les images augmentées aident les encodeurs en offrant des perspectives différentes des images d'apprentissage originales. Ces perspectives d'image peuvent être développées en appliquant à l'image des stratégies telles que le redimensionnement, le rognage et le décalage de couleurs, comme le montre la figure 2. Les images augmentées améliorent la capacité de l'encodeur à extraire des caractéristiques riches d'une image en apprenant à partir d'une section ou d'une parcelle de l'image et en appliquant ces connaissances pour prédire d'autres sections de l'image Note de bas de page 4.

Figure 2. Stratégies d’augmentation pouvant être utilisées pour entraîner des encodeurs dans un format auto-supervisé. Ces stratégies d’augmentation sont appliquées de manière aléatoire à l’image lors de l’entraînement des encodeurs.

Figure 2 : Stratégies d’augmentation pouvant être utilisées pour entraîner des encodeurs dans un format auto-supervisé. Ces stratégies d’augmentation sont appliquées de manière aléatoire à l’image lors de l’entraînement des encodeurs.

L’image comporte quatre façons de représenter une image pour l’entraînement de type apprentissage auto supervisé. Une image d’un chien corgi est utilisée comme échantillon dans ce cas. La première façon est l’image originale en elle-même sans filtres supplémentaires sur l’image. La deuxième façon est de retourner l’image horizontalement. Ainsi, l’image du chien corgi qui regardait à l’origine vers sa gauche regarde maintenant vers sa droite. La troisième façon est de redimensionner l’image et de recadrer une section de l’image qui comporte l’objet d’intérêt. Dans ce cas, le chien corgi est au centre de l’image, donc une version recadrée de la tête du chien et d’une partie de son corps est utilisée comme image augmentée. La dernière façon est de changer l’échelle de couleur de l’image, soit l’augmentation par décalage de couleur. La couleur du chien qui était de couleur dorée dans l’image d’origine prendra une couleur bleue dans le cadre de cette stratégie d’augmentation.

Architecture de réseau siamois :

De nombreuses méthodes d'apprentissage auto-supervisé utilisent l'architecture de réseau siamois pour entraîner les encodeurs. Comme le montre la figure 3, un réseau siamois est constitué de deux encodeurs qui peuvent partager la même architecture (p. ex. ResNet-50 pour les deux encodeurs) Note de bas de page 3. Les deux encodeurs reçoivent des lots d'images pendant l'entraînement (lots d'entraînement). Les deux encodeurs recevront une image de chaque lot, mais avec des stratégies d'augmentation différentes appliquées aux images qu'ils reçoivent. Comme le montre la figure 3, nous considérons les deux encodeurs E1 et E2. Dans ce réseau, l'image (x) est augmentée par deux stratégies différentes pour générer x1 et x2, qui sont respectivement transmises à E1 et E2. Chaque encodeur fournit alors une représentation vectorielle de l'image, qui peut être utilisée pour mesurer la similarité et calculer la perte.

Pendant la phase d'apprentissage, les poids entre les deux encodeurs sont mis à jour à l'aide d'un processus appelé distillation des connaissances. Il s'agit d'un format d'entraînement étudiant-enseignant. L'encodeur étudiant est entraîné en ligne et subit une propagation vers l'avant et vers l'arrière, tandis que les poids de l'encodeur enseignant sont mis à jour à intervalles réguliers à l'aide de poids stables de l'étudiant avec des techniques telles que la moyenne mobile exponentielle Note de bas de page 3.

Figure 3. Un réseau siamois composé de deux encodeurs entraînés en parallèle pour générer des représentations d’images, garantissant que les représentations d’images de la même classe sont semblables les unes aux autres.

Figure 3. Un réseau siamois composé de deux encodeurs entraînés en parallèle pour générer des représentations d’images, garantissant que les représentations d’images de la même classe sont semblables les unes aux autres.

L’image décrit la configuration d’un réseau siamois, une technique populaire pour l’entraînement des encodeurs auto-supervisés. Le réseau siamois est composé de deux encodeurs qui auront la même architecture de réseau neuronal. Les deux encodeurs sont entraînés en parallèle. L’image montre qu’une image d’un chien corgi est envoyée aux deux encodeurs. Un encodeur se comporte comme un élève qui s’appelle E1 tandis que l’autre encodeur se comporte comme un enseignant qui s’appelle E2. E1 reçoit l’image d’un chien corgi augmentée par recadrage et retournement horizontal. E2 reçoit une image du même chien corgi que E1 augmentée par recadrage et décalage de couleurs. L’image montre également que les deux encodeurs partagent leurs connaissances au moyen de poids à intervalles réguliers pendant la phase d’entraînement. Les deux encodeurs fournissent des représentations vectorielles comme sortie finale. Une cote de similitude est calculée pour mesurer si le E1 a pu apprendre au moyen des poids stables du E2 et améliorer ses connaissances de représentation.

Méthodes d'apprentissage auto-supervisé contrasté et non contrasté :

Toutes les méthodes d'apprentissage auto-supervisé disponibles utilisent ces composantes, avec quelques modifications supplémentaires pour améliorer leur performance respective. Ces méthodes d'apprentissage peuvent être regroupées en deux catégories :

Figure 4. Paire positive et négative de morceaux d’image.

Figure 4. Paire positive et négative de morceaux d’image.

L’image montre comment on peut créer des paires positives et négatives d’images. L’image est divisée en deux parties. Dans la première partie, il y a deux images différentes de chiens corgi. L’augmentation par recadrage est utilisée pour extraire les sections importantes comme le visage et le corps des chiens et pour créer deux nouvelles images. Les nouvelles images augmentées par recadrage des deux images de chiens corgi peuvent maintenant être considérées comme une paire positive comme le montre l’image. Dans la deuxième partie de cette image, un exemple d’une paire négative d’images est montré. Contrairement à la première partie, il y a une image originale d’un chien corgi et une autre d’un chat. Une fois que l’augmentation par recadrage est effectuée sur ces images, nous voyons deux nouvelles images des originaux. L’un a le visage du chat tandis que l’autre a le visage du chien corgi. Ces nouvelles images seront considérées comme une paire négative d’images.

Méthodes d'apprentissage contrasté

Ces méthodes nécessitent des paires positives et négatives de chaque image pour entraîner et améliorer la capacité de représentation des encodeurs. Elles utilisent la perte contrastive pour entraîner les encodeurs dans un réseau siamois avec distillation des connaissances. Comme le montre la figure 4, une paire positive est une image augmentée ou un morceau de la même classe que l'image originale. Une paire négative serait une image ou un morceau d'une autre image appartenant à une classe différente. La fonction sous-jacente de toutes les méthodes d'apprentissage contrasté est d'aider les encodeurs à générer des vecteurs de sorte que les vecteurs des paires positives soient plus proches les uns des autres et que ceux des paires négatives soient plus éloignés les uns des autres dans l'espace latent.

De nombreuses méthodes populaires, telles que SimCLR Note de bas de page 4 et MoCo Note de bas de page 5, sont fondées sur ce principe et fonctionnent efficacement sur de grands ensembles de données d'objets naturels comme ImageNet. Des paires d'images positives et négatives sont fournies dans chaque lot d'entraînement afin d'éviter que les encodeurs ne s'effondrent dans un état où ils produisent des vecteurs que d'une seule classe. Cependant, pour entraîner les encodeurs avec des paires d'images négatives, ces méthodes reposent sur des lots de grande taille (jusqu'à 4 096 images dans un lot d'entraînement). En outre, de nombreux ensembles de données, contrairement à ImageNet, ne comportent pas de multiples images par classe, ce qui rend la génération de paires négatives dans chaque lot difficile, voire impossible. Par conséquent, la recherche récente s'oriente vers des méthodes d'apprentissage non contrasté.

Méthodes d'apprentissage non contrasté

Des méthodes telles que DINO Note de bas de page 3, BYOL Note de bas de page 6 et BarlowTwins Note de bas de page 7 entraînent les encodeurs dans un format auto-supervisé sans qu'il soit nécessaire de distinguer les images en paires positives et négatives dans leurs lots d'entraînement. Les méthodes telles que DINO continuent d'utiliser le réseau siamois dans un format étudiant-enseignant et s'appuient sur une forte augmentation des données. Cependant, elles améliorent les méthodes d'apprentissage contrasté en y apportant quelques améliorations :

  • Les morceaux d'images fournissent une vue locale de l'image à l'étudiant et une vue globale de l'image à l'encodeur enseignant Note de bas de page 3.
  • Une couche de prédiction est ajoutée à l'encodeur étudiant pour générer une sortie fondée sur la probabilité Note de bas de page 3. Cette couche est utilisée uniquement pendant l'entraînement.
  • Au lieu de calculer la perte de contraste entre les paires d'images, la sortie des encodeurs est utilisée pour calculer un type de classification de perte, tel que l'entropie croisée ou la perte L2, pour déterminer si les vecteurs de sortie des encodeurs étudiants et enseignants sont semblables ou non Note de bas de page 3, Note de bas de page 6, Note de bas de page 7, Note de bas de page 8.
  • Recours à la méthode de moyenne mobile exponentielle ou à toute autre méthode de moyenne mobile pour mettre à jour les poids du réseau enseignant à partir des poids en ligne du réseau étudiant, tout en évitant la rétropropagation sur le réseau enseignant Note de bas de page 3, Note de bas de page 6, Note de bas de page 7, Note de bas de page 8.

Contrairement aux méthodes d'apprentissage contrasté, ces méthodes ne nécessitent pas de lots de grande taille pour l'entraînement et n'ont pas besoin de temps système supplémentaire pour garantir la présence de paires négatives dans chaque lot d'entraînement. En outre, les modèles d'apprentissage profond (AP) tels que le transformeur de vision, qui ont la capacité d'apprendre à partir de la vue locale d'une image et de prédire d'autres vues locales semblables tout en tenant compte de la vue globale, ont remplacé les encodeurs de RNC classiques. Ces modèles ont permis d'améliorer les méthodes d'apprentissage non contrasté pour dépasser les précisions de classification d'images des techniques d'apprentissage supervisé.

Conclusion

L'apprentissage auto-supervisé est un processus d'entraînement qui peut aider les modèles d'AP à s'entraîner plus efficacement que les méthodes populaires d'apprentissage supervisé sans le recours à des étiquettes. Cette efficacité est évidente dans la précision supérieure que les modèles d'AP ont atteinte sur des ensembles de données populaires tels que ImageNet lorsqu'ils sont entraînés dans une configuration auto-supervisée comparativement à une configuration supervisée. En outre, l'apprentissage auto-supervisé élimine la nécessité d'étiqueter les images avant l'entraînement, ce qui constitue un avantage supplémentaire. L'avenir est prometteur pour les solutions qui adoptent ce type d'apprentissage pour les tâches de classification d'images, car un nombre croissant de recherches sont menées sur ses applications dans des domaines qui n'impliquent pas d'objets naturels, tels que les images médicales et documentaires.

Rencontre avec le scientifique des données

Inscrivez-vous à la présentation Rencontre avec le scientifique des données

Si vous avez des questions à propos de mon article ou si vous souhaitez en discuter davantage, je vous invite à une Rencontre avec le scientifique des données, un événement au cours duquel les auteurs rencontrent les lecteurs, présentent leur sujet et discutent de leurs résultats.

Jeudi, le 15 juin
De 13 00 h à 16 00 h, HE
MS Teams – le lien sera fourni aux participants par courriel

Inscrivez-vous à la présentation Rencontre avec le scientifique des données.
À bientôt!

Abonnez-vous au bulletin d'information du Réseau de la science des données pour la fonction publique fédérale pour rester au fait des dernières nouvelles de la science des données.

Date de modification :

S’attaquer à la surcharge de renseignements : l’application d’intelligence artificielle « Document Cracker » d’Affaires mondiales Canada rationalise les efforts de réponse aux crises

Par : l’équipe de science des données d’Affaires mondiales Canada

Introduction

Lorsqu’une crise mondiale survient, les représentants du gouvernement sont souvent confrontés au défi de passer au crible un déluge de nouveaux renseignements pour trouver ceux qui sont importants et qui les aideront à gérer efficacement la réponse du Canada. Par exemple, à la suite de l’invasion de l’Ukraine par la Russie en février 2022, une proportion importante des missions diplomatiques du Canada ont commencé à rédiger des rapports de situation sur les développements locaux liés au conflit. Compte tenu du nombre élevé de ces rapports de situation, ainsi que des comptes rendus de réunions, des déclarations tirées de réunions internationales et des rapports des médias d’information, il est rapidement devenu impossible pour les décideurs individuels de lire manuellement tous les renseignements pertinents mis à leur disposition.

Pour relever ce défi, l’équipe de science des données d’AMC a mis au point un outil de recherche et d’analyse de documents appelé Document Cracker (ci-après « DocCracker ») qui aide les représentants à trouver rapidement les renseignements dont ils ont besoin. À la base, DocCracker offre deux fonctions essentielles : 1) la possibilité d’effectuer des recherches dans un grand nombre de documents à l’aide d’une plateforme d’indexation sophistiquée; 2) la possibilité de surveiller automatiquement les nouveaux documents pour y trouver des sujets particuliers, des tendances émergentes et des mentions de personnes, de lieux ou d’organisations clés. Dans le contexte de l’invasion russe, ces fonctions de l’application visent à permettre aux représentants du Canada de relever rapidement les questions urgentes, d’adopter une position privilégiée par rapport à celles-ci et de suivre l’évolution des positions des autres pays. Grâce à de tels renseignements, l’application peut jouer un rôle clé en aidant les responsables à concevoir et à mesurer les répercussions actuelles de la réponse du Canada à la crise.

Veuillez prendre note que même si DocCracker a été mis au point expressément en réponse aux événements en Ukraine, l’application a également été conçue comme application multilocataire qui peut fournir des interfaces de recherche et de suivi distinctes pour de nombreuses questions mondiales en même temps. Par exemple, l’agrandissement de l’application est en cours pour soutenir l’analyse des événements géopolitiques au Moyen-Orient.

Aperçu de l’application

Du point de vue de l’utilisateur, l’interface de DocCracker comprend une page de destination qui comporte une barre de recherche et une variété de fiches de contenu qui suivent les mises à jour récentes concernant des régions géographiques et des personnes d’intérêt précises. L’utilisateur peut se concentrer sur ces mises à jour récentes ou effectuer une recherche, qui renvoie une liste de documents classés. La sélection d’un document permet d’accéder à la transcription sous-jacente, ainsi qu’à l’ensemble des liens vers des documents connexes. Les utilisateurs peuvent également accéder aux métadonnées associées à chaque document, qui comprennent des listes de sujets, d’organisations, de personnes, de lieux et de phrases clés extraites automatiquement. En tout temps, une bannière située en haut de la page de l’application permet aux utilisateurs d’accéder à une série de tableaux de bord qui mettent en évidence les tendances globales et propres à la mission concernant une liste prédéfinie de 10 sujets importants (p. ex. la sécurité alimentaire, les crimes de guerre et la crise de l’énergie).

Pour permettre ces expériences utilisateur, DocCracker met en œuvre un pipeline logiciel qui : a) charge les nouveaux documents disponibles à partir d’un éventail de sources de données internes et externes; b) « déchiffre » ces documents en appliquant une variété d’outils de traitement du langage naturel pour extraire des données structurées; c) utilise ces données structurées pour créer un index de recherche qui prend en charge les requêtes et la création de tableaux de bord. La figure 1 ci-dessous donne un aperçu visuel du pipeline.

Figure 1 : Pipeline de traitement de DocCracker

Figure 1 : Pipeline de traitement de DocCracker

Pendant la phase de « chargement » du pipeline, les sources de données internes et externes sont intégrées et prétraitées pour extraire des métadonnées de base, telles que le type de rapport, la date du rapport, l’emplacement de la source, le titre et l’URL du site Web. Pendant la phase de « déchiffrage » du pipeline, les documents téléchargés sont soumis à une série d’outils de traitement du langage naturel afin de fournir des étiquettes thématiques, de déterminer les entités nommées, d’extraire des résumés et de traduire en anglais tout texte qui n’est pas en anglais. Pendant la phase d’« indexation » définitive du pipeline, les documents déchiffrés sont utilisés pour créer un index de recherche qui prend en charge les requêtes documentaires souples et la création de tableaux de bord qui fournissent des instantanés agrégés des caractéristiques des documents utilisés pour alimenter cet index de recherche.

Détails de la mise en œuvre

DocCracker est hébergé en tant qu’application Web dans l’environnement infonuagique de Microsoft Azure et il s’appuie sur les services Azure pour prendre en charge chaque étape du traitement.

Ingestion des données

Au cours de la phase de « chargement », les documents sont rassemblés dans un conteneur de stockage Azure, soit par des extractions automatiques effectuées à partir de sources externes (p. ex. le fil de nouvelles Factiva, les bases de données non protégées d’AMC), soit au moyen de téléchargements manuels. Ensuite, une série de scripts Python est exécutée pour éliminer les documents en double ou erronés et procéder à un nettoyage préliminaire du texte et à l’extraction de métadonnées. Étant donné que les documents englobent une variété de formats de fichiers (.pdf, .txt, .msg, .docx, etc.), différentes méthodes de nettoyage et d’extraction sont appliquées à différents types de documents. Dans tous les cas, cependant, la bibliothèque d’expressions normales de Python est utilisée pour éliminer le texte non pertinent (p. ex. les signatures de courriel, les listes de copies conformes invisibles) et extraire les métadonnées pertinentes (p. ex. le titre ou l’objet des courriels, la date de soumission).

Les expressions normales fournissent une syntaxe puissante permettant de préciser des ensembles de chaînes à rechercher dans un corps de texte. Officiellement, une expression normale donnée définit un ensemble de chaînes de caractères qui peuvent toutes être reconnues par un automate d’états finis qui subit des transitions d’état à la réception de chaque caractère de l’étendue du texte d’entrée; si ces transitions d’état font en sorte que l’automate saisisse un état d’« acceptation », alors l’étendue de l’entrée devient un membre de l’ensemble des chaînes de caractères recherchées. Lorsqu’elles sont détectées, ces chaînes peuvent être soit supprimées (pour nettoyer les données), soit extraites (pour recueillir des métadonnées). Presque tous les langages de programmation prennent en charge les expressions normales, et elles constituent souvent un outil de premier recours dans les projets de nettoyage et d’ingénierie des données.

Traitement du langage naturel

Une fois les documents prétraités, ils sont divisés en portions de texte d’un maximum de 5 120 caractères afin de satisfaire aux exigences de longueur d’entrée de nombreux services de traitement du langage naturel d’Azure. Chaque portion de texte est traitée pour supprimer l’information non linguistique, comme les URL, les espaces blancs vides et les puces. Les portions sont ensuite transférées dans un nouveau conteneur de stockage pour subir un traitement supplémentaire à l’aide d’une variété de modèles d’apprentissage automatique.

Pour relever les mentions de personnes, d’organisations et de lieux, chaque portion de texte est traitée à l’aide d’un service Azure qui effectue la reconnaissance d’entités nommées. Ce service permet de mettre en correspondance des portions de texte avec un ensemble prédéfini de types d’entités. Ensuite, des services semblables sont utilisés pour extraire des phrases clés et quelques phrases de résumé de chaque document, tout en effectuant des traductions en ligne des textes qui ne sont pas en anglais. Enfin, un service d’analyse de sentiments est utilisé pour fournir des évaluations des sentiments portant sur des organisations précises, qui seront affichées sur la page de destination de l’application. Les résultats de chaque service Azure sont enregistrés dans une base de données SQL sous forme d’attributs de métadonnées associés aux documents sous-jacents qui ont été traités.

Pour améliorer ces résultats obtenus avec Azure, l’équipe de science des données d’AMC a également mis au point un modèle d’étiquetage thématique personnalisé qui relève la présence de l’un des 10 sujets d’intérêt précis dans chaque portion de texte. Ce modèle s’appuie sur une technique appelée « BERT » (Bidirectional Encoder Representations from Transformers, ou représentations de l’encodeur bidirectionnel à partir de transformeurs en français) pour analyser des portions de texte et déterminer quels sujets prédéfinis sont présents dans le texte. Le modèle fournit une liste des sujets trouvés, qui peut aller de 0 à 10 étiquettes thématiques.

Comme le montre la figure 2 ci-dessous, le modèle a été élaboré de manière itérative au moyen de volumes croissants de données d’entraînement étiquetées. Lors du troisième cycle d’entraînement du modèle, des résultats de classification très précis ont été obtenus pour 8 des 10 sujets, tandis que des résultats moyennement précis ont été obtenus pour 2 des 10 sujets. La vérification du modèle a été effectuée en utilisant 30 % des échantillons de données étiquetées, tandis que l’entraînement du modèle a été réalisé en utilisant les 70 % d’échantillons restants. Au total, environ 2 000 échantillons étiquetés ont été utilisés pour élaborer le modèle.

Bien qu’il s’agisse d’une petite quantité de données par rapport aux approches habituelles de développement de systèmes d’apprentissage automatique supervisé, l’un des principaux avantages de l’utilisation d’une architecture BERT est que le modèle est d’abord préentraîné au moyen d’une grande quantité de textes non étiquetés avant d’être ajusté avec précision pour effectuer une tâche d’intérêt. Lors du préentraînement, le modèle apprend simplement à prédire les mots manquants qui ont été supprimés de manière aléatoire dans un corpus textuel. En accomplissant cette tâche, le modèle crée des représentations internes très précises des propriétés statistiques du langage humain. Ces représentations peuvent ensuite être réutilisées efficacement au cours de la phase d’ajustement pour apprendre des décisions de classification efficaces à partir d’un petit nombre d’exemples étiquetés.

Figure 2 : Résultats de l’entraînement du modèle d’IA DocCracker

Figure 2 : Résultats de l’entraînement du modèle d’IA DocCracker

Les résultats de l’évaluation sont présentés après trois cycles d’entraînement pour un modèle de détermination de sujets personnalisé qui effectue une classification à étiquettes multiples pour relever jusqu’à 10 sujets prédéfinis dans une portion de texte d’entrée. Grâce aux augmentations progressives de la quantité de données d’entraînement, le modèle de réseau neuronal basé sur un transformateur obtient des résultats très précis pour presque tous les sujets. 

Enfin, les résultats du modèle thématique sont enregistrés dans la base de données SQL en tant qu’attributs de métadonnées supplémentaires pour chaque document sous-jacent. Cette base de données contient maintenant tous les documents qui ont été intégrés, ainsi qu’une riche collection de métadonnées obtenues à l’aide des techniques de traitement du langage naturel décrites précédemment. Grâce à cette combinaison de documents et de métadonnées, il est possible de créer un index de recherche qui permet aux utilisateurs d’effectuer des recherches souples dans les documents et de créer des visualisations de tableau de bord informatives.

Indexation

Dans sa forme la plus simple, un index de recherche est une collection d’un ou de plusieurs tableaux qui fournissent des liens entre les termes de recherche et les ensembles de documents qui correspondent à ces termes. Lorsqu’un utilisateur effectue une requête de recherche, celle-ci est décomposée en un ensemble de termes qui sont utilisés pour rechercher des documents dans l’index. Un algorithme de classement est ensuite utilisé pour hiérarchiser les documents qui correspondent à chaque terme de manière à obtenir une liste ordonnée des documents les plus pertinents par rapport à la requête de recherche.

Dans DocCracker, le service de recherche cognitive d’Azure est utilisé pour créer automatiquement un index à partir de la base de données SQL produite au cours des étapes précédentes du pipeline de traitement. Une fois cet index créé, il est facile de créer une page de destination qui permet aux utilisateurs d’entrer des requêtes de recherche et d’obtenir des documents pertinents. Les métadonnées utilisées pour créer l’index peuvent aussi être exportées vers des fichiers CSV afin de créer des tableaux de bord permettant de suivre une série de mesures variant dans le temps de l’évolution de la situation en Ukraine. Par exemple, en sélectionnant les champs de métadonnées pour les étiquettes des sujets et les dates, il est possible d’afficher la fréquence à laquelle différents sujets ont été mentionnés au fil du temps. De même, en sélectionnant des entités nommées, il est possible de visualiser les personnes ou les organisations qui ont été mentionnées le plus souvent au cours d’une période donnée. On peut aussi facilement faire le suivi du volume de rapports émanant des différentes missions à l’aide d’une méthode de sélection semblable.

Dans l’ensemble, l’index de recherche fournit une représentation structurée des nombreux rapports de situation, rapports et articles de presse non structurés qui ont été intégrés dans DocCracker. En ayant cette représentation structurée en main, il devient possible de mettre en place des capacités de recherche et de suivi qui facilitent l’important travail d’analyse effectué par les représentants d’AMC chargés de gérer la réponse du Canada à l’invasion russe.

Prochaines étapes

Compte tenu de la rapidité toujours croissante avec laquelle les crises internationales sont rapportées, il est essentiel de mettre au point des outils comme DocCracker qui aident les analystes à tirer des renseignements de grands volumes de données textuelles. Pour parfaire la version actuelle de cet outil, l’équipe de science des données d’AMC travaille simultanément sur plusieurs améliorations. Tout d’abord, l’allocation de Dirichlet latente est évaluée pour déterminer automatiquement les nouveaux sujets à mesure qu’ils sont abordés dans les documents entrants, ce qui permet d’informer les analystes sur les nouvelles questions qui pourraient nécessiter leur attention. Ensuite, des modèles de transformateurs génératifs préentraînés sont utilisés pour résumer automatiquement de multiples documents, ce qui aide ainsi les analystes à produire plus rapidement des notes d’information pour les décideurs supérieurs. Enfin, des modèles de détection des positions sont en cours d’élaboration afin de déterminer automatiquement les positions adoptées par les différents pays sur des questions diplomatiques précises (p. ex. la question de la fourniture de systèmes d’armes avancés à l’Ukraine). En ayant de tels modèles en main, les analystes devraient être en mesure de suivre la manière dont les pays adaptent leurs positions sur une question donnée en réponse à la fois aux incitations diplomatiques et à l’évolution des conditions géopolitiques.

Dans l’ensemble, à mesure que des outils comme DocCracker sont plus largement utilisés, nous nous attendons à voir émerger une série de nouvelles applications axées sur la technologie sous-jacente. Pour discuter de ces applications ou pour en savoir plus sur les efforts continus de l’équipe de science des données d’AMC dans ce domaine, veuillez envoyer un courriel à l’adresse suivante : datascience.sciencedesdonnees@international.gc.ca.

Rencontre avec le scientifique des données

Inscrivez-vous à la présentation Rencontre avec le scientifique des données

Si vous avez des questions à propos de mon article ou si vous souhaitez en discuter davantage, je vous invite à une Rencontre avec le scientifique des données, un événement au cours duquel les auteurs rencontrent les lecteurs, présentent leur sujet et discutent de leurs résultats.

Jeudi, le 15 juin
De 13 00 h à 16 00 h, HE
MS Teams – le lien sera fourni aux participants par courriel

Inscrivez-vous à la présentation Rencontre avec le scientifique des données.
À bientôt!

Abonnez-vous au bulletin d'information du Réseau de la science des données pour la fonction publique fédérale pour rester au fait des dernières nouvelles de la science des données.

Date de modification :

Tirer le maximum de la synthèse de données grâce au guide d’utilisation des données synthétiques pour les statistiques officielles

Par : Kenza Sallier et Kate Burnett-Isaacs, Statistique Canada

Note de la rédaction : Pour fournir des exemples pertinents et des explications cohérentes, le présent article tire des extraits de la publication Synthetic Data for Official Statistics - A Starter Guide (en anglais seulement). Veuillez-vous référer à ce guide pour mieux comprendre l’utilisation de données synthétiques pour les statistiques officielles.

Introduction

Ces dernières années, tout particulièrement devant la révolution des données qui s'opère, les organismes nationaux de statistique (ONS) donnent priorité à l'accès aux données, à la transparence et à l'ouverture dans leurs initiatives de modernisation. Le pari consiste à trouver des moyens sûrs et durables d'offrir un accès plus rapide et plus facile à des données désagrégées et à jour, compilées à partir de sources d'une complexité croissante, tout en respectant les engagements pris à l'égard de la confidentialité. La synthèse de données est une technique qui permet aux utilisateurs d'accéder plus facilement à des données riches sur le plan analytique, tout en veillant au respect des impératifs en matière d'intégrité et de confidentialité. La théorie entourant la génération de données synthétiques à forte valeur analytique ne date pas d'aujourd'hui. En effet, elle a ses racines dans les méthodes d'imputation. Toutefois, pour ce qui est de la mise en œuvre, la production de fichiers de données synthétiques reste une voie nouvelle pour la plupart des ONS, surtout quand il s'agit de les produire à partir de sources de données complexes. Au vu du nombre grandissant de nouvelles méthodes et de nouveaux outils utilisés pour la production et l'évaluation d'ensembles de données synthétiques, un document d'orientation sur l'utilité et le risque s'impose. Plus précisément, pour que les données synthétiques deviennent une solution viable d'accès aux microdonnées, les ONS ont besoin d'une vue d'ensemble des méthodes et des outils existants, ainsi que de l'orientation sur la manière de mesurer la puissance analytique de ces données et leurs risques de divulgation.

Pour répondre à ce besoin, le Groupe de haut niveau sur la modernisation des statistiques officielles (GHN-MSO), un réseau relevant de la Commission économique des Nations Unies pour l'Europe (CEE-ONU), a publié le guide Synthetic Data for Official Statistics – A Starter Guide (en anglais seulement). Celui-ci offre aux organismes de statistique un bon point de départ pour apprendre et réfléchir au sujet des données synthétiques, et comprendre la manière dont elles peuvent être générées et utilisées pour partager ouvertement les données tout en protégeant leur intégrité et leur confidentialité. De plus, ce guide aide les utilisateurs à déterminer si les données synthétiques sont la bonne solution à leur problème, les oriente sur la bonne voie pour la synthèse, et fournit des méthodes d'évaluation pour résoudre les problèmes entourant la divulgation de données.

Cet article traitera des lacunes que les fichiers de données synthétiques peuvent combler, présentera des méthodes d'apprentissage profond qui peuvent être utilisées pour générer des données synthétiques, et traitera de l'importance de se fonder sur des normes claires au moment de créer et d'utiliser des données synthétiques, normes prévues dans le guide du GHN-MSO.

Que sont les données synthétiques?

Le guide du GHN-MSO définit les données synthétiques comme des données générées de manière stochastique, qui ont une valeur analytique et qui permettent des niveaux élevés de contrôle de la divulgation. Le concept de données synthétiques provient, à l'origine, du champ de la vérification et de l'imputation des données, mais le champ des données synthétiques a évolué avec le développement des méthodes informatiques et de science des données. Pour générer des données synthétiques, on utilise un processus de modélisation qui vise la préservation à la fois de la valeur analytique et de la confidentialité. La confidentialité fait référence à la divulgation injustifiée de données personnelles confiées à un ONS, qui peut survenir lorsque des renseignements statistiques sont diffusés.

De façon générale, l'objectif de la synthèse de données consiste en ce qui suit. Supposons qu'il y ait un ensemble de données, D, sur lequel les utilisateurs ou les chercheurs souhaitent effectuer un ensemble d'analyses statistiques, qui aboutirait à un ensemble de conclusions statistiques Θ(D). Toutefois, pour des raisons de confidentialité, on ne peut pas donner accès à D aux utilisateurs. Le synthétiseur peut alors utiliser un processus de synthèse de données pour générer une version synthétique de D', que nous appellerons D'. L'objectif de la synthèse de données est de générer D'de telle manière que Θ(D') , l'ensemble des conclusions statistiques des mêmes analyses maintenant effectuées sur D', soit aussi proche que possible de Θ(D).

Figure 1 : Illustration de la génération de données synthétiques. Source : Sallier (2020).

Figure 1 : Illustration de la génération de données synthétiques. Source : Sallier (2020).

Architecture de la synthèse de données. Les analyses fondées sur l'ensemble de données synthétiques fourniraient des conclusions statistiques comparables aux analyses fondées sur l'ensemble de données original.

Texte : La valeur analytique de D' peut être considérée comme une fonction de la distance entre Θ(D) et Θ(D').

Pour discuter de données synthétiques, nous devons d'abord définir et comprendre l'utilité et les risques liés à la divulgation. Dans le contexte des données synthétiques, l'utilité correspond à la valeur analytique, il s'agit de l'utilité de l'ensemble de données synthétiques pour l'utilisateur. De façon générale, la valeur analytique est liée à la mesure dans laquelle les résultats de l'ensemble de données synthétiques sont proches de ceux générés à partir des données d'origine. Par conséquent, la valeur analytique de D' peut être considérée comme une fonction de la distance entre Θ(D) et Θ(D').

Alors que la synthèse de données vise à accroître la valeur analytique, elle cherche aussi à réduire le plus possible le risque de divulgation. Le risque de divulgation peut être défini comme le risque d'une diffusion inappropriée de données ou de renseignements d'attribut (OCDE, 2003) et s'applique à la diffusion de toute statistique agrégée ou d'ensemble de microdonnées, y compris les données synthétiques.

Utilisations recommandées des données synthétiques

Les données synthétiques sont un outil utile pour certains problèmes ou cas d'utilisation auxquels sont confrontés les ONS. Pour chaque problème vient un équilibre nécessaire entre l'utilité et le risque de divulgation. Le guide du GDN-MSO décrit quatre catégories de cas d'utilisation :

  • diffusion au public;
  • mise à l'essai d'analyses;
  • enseignement;
  • mise à l'essai de technologies.

Diffusion au public : Ce cas d'utilisation découle généralement du désir de fournir des données utiles aux parties concernées. La principale difficulté que pose ce cas d'utilisation est que l'ONS ne sait pas la manière dont les données seront utilisées : il n'exerce aucun contrôle sur l'utilisation des données (et ignore donc quelles analyses seront effectuées) et ne sait pas par qui elles seront utilisées ou encore avec qui elles seront partagées (ce qui signifie un risque élevé de divulgation).

Analyse d'essai : La mise à l'essai de la valeur analytique est actuellement le cas d'utilisation le plus courant pour les ONS. De nombreux ONS fournissent des microdonnées confidentielles à des parties de confiance, comme des chercheurs ou des services partenaires, mais cet exercice est régi par de stricts accords d'accès aux données, ainsi que par des contrôles des antécédents et de la sécurité. Les procédures et contrôles connexes peuvent être longs et fastidieux. Les données synthétiques peuvent être une option plus efficace pour le partage de données avec des parties de confiance. Dans ce cas d'utilisation, les ONS peuvent savoir quelle analyse sera effectuée avec les données synthétiques et peuvent personnaliser le mode de génération selon l'analyse, augmentant ainsi l'utilité. Ce cas d'utilisation est souvent le plus utile pour les scientifiques des données, qui cherchent un accès plus rapide aux données d'entraînement pour leurs modèles d'apprentissage automatique.

Enseignement : Un troisième cas d'utilisation dans le contexte des ONS consiste à fournir des données de grande qualité aux étudiants, aux universitaires et aux utilisateurs en général. En particulier, la formation relative à des méthodes complexes comme l'apprentissage automatique nécessite des données qui donneront des résultats réalistes. L'équilibre entre l'utilité et le risque de divulgation dans ce cas d'utilisation est que les ONS peuvent être au courant du sujet particulier à l'étude et, ainsi, préserver les distributions spécifiques en question. Toutefois, les données synthétiques pourraient être réutilisées à différentes fins éducatives, de sorte qu'en fin de compte, l'ONS pourrait ne pas être en mesure de déterminer toutes les utilisations des données ni tous les utilisateurs.

Mise à l'essai de technologies : Des données fictives sont souvent utilisées pour faire l'essai de nouveaux logiciels et de nouvelles technologies. Toutefois, avec l'avènement de technologies plus complexes, les ONS et les intervenants cherchent des données plus réalistes afin de pouvoir évaluer et vérifier les systèmes adéquatement.

Tableau 1 : Résumé des différents cas d'utilisation de données synthétiques déterminés par le GNH-MSO.
Cas d’utilisation Principales considérations  Équilibre entre l’utilité et la confidentialité 
Diffusion de microdonnées au public Le synthétiseur ne sait pas qui utilisera les donnes ou de quelle manière elles seront utilisées. Niveaux élevés d’utilité et de confidentialité requis 
Mise à l’essai d’analyses Les analyses particulières ou les distributions de variables qui doivent être maintenues peuvent éventuellement être connues au moment de la synthèse. Niveaux élevés d’utilité et de confidentialité requis
Enseignement Le synthétiseur peut savoir l’analyse qui sera effectuée et les utilisateurs peuvent éventuellement avoir une autorisation de sécurité ou un accord avec l’ONS, mais peuvent aussi ne pas en avoir. Niveau élevé d’utilité et niveau variable possible de confidentialité
Mise à l’essai de technologies La valeur des données synthétiques dépend de la complexité du système et de la mesure à laquelle des données d’essai doivent être complexes. De nombreuses méthodes de génération de données synthétiques peuvent être trop lourdes sur le plan informatique pour que cet effort en vaille la peine. Niveaux moyens d’utilité et de confidentialité

Méthodes pour générer des données synthétiques

Il existe un nombre grandissant de méthodes pour générer des données synthétiques, et la méthode choisie dépendra du cas d'utilisation. Au moment de créer des données synthétiques, il faut tenir compte de la valeur analytique cible ainsi que du risque de divulgation pour le cas d'utilisation.

Le guide du GHN-MSO présente les méthodes couramment utilisées par les ONS aujourd'hui. Elles se répartissent en trois catégories :

  • modélisation séquentielle;
  • données simulées;
  • méthodes d'apprentissage profond.

Toutes les méthodes sont présentées dans le guide du GHN-MSO, mais aux fins du présent article, nous nous attardons aux méthodes d'apprentissage profond mises au point récemment pour générer des données synthétiques. Les méthodes d'apprentissage profond sont de plus en plus prisées dans le domaine des données synthétiques, car les synthétiseurs sont de plus en plus nombreux à travailler avec de grands ensembles de données non structurés. À l'heure actuelle, la seule méthode d'apprentissage profond utilisée par les ONS pour générer des données synthétiques est celle des réseaux antagonistes génératifs.

Pour en apprendre davantage sur les trois catégories de méthodes de synthèse, leurs avantages et inconvénients et leur adéquation à chacun des quatre cas d'utilisation de données synthétiques pour les statistiques officielles, voir le chapitre 3 du document Synthetic Data for Official Statistics : A Starter Guide (en anglais seulement).

L'utilisation de réseaux antagonistes génératifs pour générer des données synthétiques

Un réseau antagoniste génératif (RAG) (Goodfellow et coll., 2014) est un modèle génératif utilisé pour produire des données synthétiques. Ce modèle tente d'apprendre la structure sous-jacente des données d'origine en générant de nouvelles données (de nouveaux échantillons, plus précisément) à partir de la même distribution statistique que les données d'origine, au moyen de deux réseaux neuronaux, qui se font concurrence. Comme la théorie et la mise en œuvre de processus liés à l'apprentissage profond et aux réseaux neuronaux peuvent être complexes sur le plan technique, nous nous attarderons ici aux concepts généraux (des renseignements plus détaillés peuvent être obtenus dans les publications fournies en référence). Parce que les RAG reposent sur des réseaux de neurones, l'approche peut être utilisée pour générer des données synthétiques discrètes, continues ou textuelles.

Dans un RAG, il existe deux modèles de réseau de neurones concurrents :

  • le générateur prend le bruit ou les valeurs aléatoires à l'entrée et génère des échantillons;
  • le discriminateur reçoit des échantillons du générateur et des données d'entraînement et tente de faire la distinction entre les deux sources.

Le discriminateur est comparable à un classificateur binaire, car il prend à la fois des données réelles (ou originales) à l'entrée, et des données générées (ou synthétiques) et calcule une valeur de pseudoprobabilité, laquelle serait comparée avec une valeur de seuil fixe pour classifier l'entrée du générateur comme générée ou réelle.

Comme le montre la figure 2, le processus d'entraînement est un processus itératif, au cours duquel les deux réseaux jouent un jeu continu où le générateur apprend à produire des échantillons plus réalistes, alors que le discriminateur apprend à mieux faire la distinction entre les données générées et les données réelles. Cette interaction entre les deux réseaux est nécessaire pour le succès de RAG, car ils apprennent tous deux au détriment de l'autre, pour finir par atteindre un équilibre.

Figure 2 : Illustration de l'entraînement d'un RAG dans le contexte de la synthèse de données. Source : Kaloskampis et coll. (2020).

Figure 2 : Illustration de l'entraînement d'un RAG dans le contexte de la synthèse de données. Source : Kaloskampis et coll. (2020).

Le modèle est constitué de deux réseaux : le générateur apprend à produire des échantillons plus réalistes et le discriminateur apprend à mieux classer les données générées comme étant « réelles » ou « synthétiques ». Il s'agit d'un processus itératif où les deux apprennent au détriment de l'autre, jusqu'à ce qu'un équilibre soit atteint.

Toutes les méthodes de données synthétiques ont leurs avantages et leurs considérations. Le tableau 2 présente les avantages, les inconvénients et les considérations liés à l'utilisation des RAG pour produire des données synthétiques.

Tableau 2 : Avantages et inconvénients des réseaux antagonistes génératifs
Avantages Inconvénients

Les réseaux antagonistes génératifs (RAG) sont utilisés par les ONS pour générer des ensembles de données continus, discrets et textuels, tout en s’assurant que la distribution et les modèles sous-jacents des données originales sont préservés.

En outre, des recherches récentes ont porté sur la productionde données en texte libre, qui peuvent être pratiques dans les situations où des modèles doivent être élaborés pour classifier les données en texte libre.

Les RAG peuvent être perçus comme étant trop complexes pour être compris, expliqués ou mis en œuvre lorsqu’il n’y a qu’une connaissance minimale des réseaux de neurones.

Il y a souvent une critique associée aux réseaux de neurones comme manque de transparence.

La méthode prend du temps et a une forte demande de ressources informatiques.

 Les RAG peuvent souffrir de l’effondrement du mode, et du manque de diversité, bien que de nouvelles variations de l’algorithme semblent corriger ces problèmes.

La modélisation de données discrètes peut être difficile pour les modèles RAG.

Autres méthodes d'apprentissage profond

D'autres méthodes de génération de données synthétiques d'apprentissage profond, dont certains ONS pourraient tirer profit, gagnent du terrain dans les milieux de la recherche et du développement.

Par exemple, les autoencodeurs sont des réseaux de neurones profonds à propagation avant utilisés pour compresser et décompresser les données d'origine. Ceci se compare quelque peu à l'enregistrement d'un fichier image à une résolution inférieure pour ensuite essayer de reconstruire l'image à haute résolution à partir de la version à résolution inférieure.

La première partie du processus est effectuée par un réseau de neurones seul, appelé l'encodeur, qui limite la quantité d'information qui voyage à travers le réseau à l'aide d'une convolution. Les autoencodeurs utilisent un deuxième réseau d'apprentissage profond, appelé le décodeur, qui tente d'inverser l'effet de l'encodeur en essayant de reconstruire l'entrée d'origine, la reconstruction étant des données synthétiques (Kaloskampis et coll., 2020). La figure 3 montre l'architecture d'un autoencodeur.

Figure 3 : Illustration de l’architecture d’un autoencodeur. Source : Kaloskampis et coll. (2020).

Figure 3 : Illustration de l’architecture d’un autoencodeur. Source : Kaloskampis et coll. (2020).

Les autoencodeurs utilisent des réseaux de neurones profonds pour compresser (au moyen de couches convolutionnelles et de couches agrégées), puis décompresser (au moyen de couches de déconvolution et des couches non agrégées) les données d'origine. Ceci est presque comparable à la sauvegarde d'un fichier image dans une résolution inférieure, pour ensuite essayer de reconstruire l'image à haute résolution à partir de la version à résolution inférieure.

Des modèles autorégressifs sont à l'étude pour améliorer certaines des lacunes des modèles RAG (Leduc et Grislain, 2021). Les modèles autorégressifs utilisent une variante d'une formule de régression, qui permet de prédire le point suivant d'une séquence en se basant sur des observations antérieures de cette séquence.

Entre autres méthodes, il y a la technique de suréchantillonnage synthétique des cas minoritaires, qui crée des instances de données synthétiques basées sur des instances existantes à partir des données originales (Chawla et coll., 2002). Bon nombre de ces méthodes d'apprentissage profond sont utilisées pour créer des données synthétiques différentiellement privées. Pour en savoir plus sur la confidentialité différentielle et sur les données synthétiques différentiellement privées, voir le chapitre 4 du document Synthetic Data for Official Statistics : A Starter Guide.

Avec l'amélioration de la technologie et de la capacité de calcul, la mise en œuvre des processus d'apprentissage automatique est devenue plus facile et plus accessible. Il est donc naturel que les approches d'apprentissage automatique soient de plus en plus utilisées pour générer des ensembles de données synthétiques. Plus précisément, l'utilisation de modèles d'apprentissage profond est devenue attrayante en raison de leur capacité à développer de puissants modèles prédictifs fondés sur de grands ensembles de données.

L'équilibre entre l'utilité et le risque de divulgation

Considérations liées au risque de divulgation : L'Organisation de coopération et de développement économiques définit la divulgation comme la diffusion inappropriée de données ou de renseignements sur les attributs d'une personne ou d'un organisme (OCDE, 2003). Lorsqu'il est question de risque de divulgation, il s'agit de la possibilité qu'une divulgation survienne. Le risque de divulgation s'applique à toute donnée divulguée : données agrégées, microdonnées ou données synthétiques.

Il y a deux grands types de divulgation, soit la divulgation de l'identité et celle des attributs. La divulgation de l'identité se produit lorsqu'un enregistrement dans les données diffusées est reconnu comme correspondant à une personne pour laquelle l'attaquant (quelqu'un qui cherche délibérément à divulguer ou à enfreindre les règles de confidentialité) connaît les valeurs des données diffusées d'une autre source. La divulgation d'un attribut survient quand un attaquant observe une personne dans les données qui semble être une correspondance unique avec une personne connue. Un attaquant peut utiliser les renseignements diffusés dans les données pour obtenir plus d'information sur la personne.

Bien qu'aucun enregistrement dans un fichier de données entièrement synthétique ne corresponde à une personne réelle ou à un ménage réel, dans le sens où toutes les valeurs ont été générées, on craint que l'attribut et le risque de divulgation de l'identité puissent encore être présents ainsi que le risque de divulgation perçu. Ces situations pourraient nuire à la réputation des détenteurs de données et mettre en péril la volonté des répondants de participer aux enquêtes ou aux recensements. Par conséquent, les ONS peuvent encore décider d'ajouter des couches de contrôle de la divulgation en utilisant des mesures de contrôle de la divulgation statistique plus traditionnelles en plus du processus de génération de données synthétique.

En fin de compte, il importe de préciser que les ONS devraient choisir de mettre en œuvre des méthodes supplémentaires de contrôle en ce qui concerne la divulgation de leurs données synthétiques, ainsi que des techniques spécifiques de protection de la vie privée, fondées sur leurs propres cadres législatifs et opérationnels. Le chapitre 4 du guide du GNH-MSO présente des techniques communes de protection de la vie privée et d'autres mesures de contrôle de la divulgation statistique, y compris la confidentialité différentielle.

Utilité : L'utilité, ou la valeur analytique, d'un ensemble de données synthétiques renvoie à l'utilité de l'ensemble de données pour l'objet ou le cas d'utilisation. La plupart du temps, l'utilité des données synthétiques repose sur la mesure dans laquelle les conclusions les données synthétiques et les données confidentielles originales sont similaires.

Le guide du GNH-MSO présente deux grandes catégories de mesures de l'utilité : des mesures « spécifiques » et des mesures « générales ». Les mesures spécifiques sont utiles pour évaluer l'utilité d'une analyse particulière. Quand des ajustements sont nécessaires, cependant, les mesures générales sont préférables, car elles permettent notamment de :

  1. comparer différentes méthodes de synthèse pour le même ensemble de données afin de générer l'ensemble de données synthétique le plus utile pour l'utilisateur;
  2. déterminer à quel endroit les distributions de données d'origine et de synthèse diffèrent, et ajuster les méthodes de synthèse en conséquence pour améliorer l'utilité des données synthétiques.

Le chapitre 5 du guide orientera l'utilisateur dans le choix de la mesure qui répond le mieux à votre objectif, l'aidera à évaluer les résultats. Lors de l'évaluation de données synthétiques axées sur l'utilité, il est préférable de commencer simplement. Des méthodes comme la comparaison de distributions ou la possibilité pour les données synthétiques de réaliser une tâche ciblée peuvent déterminer une utilité primaire fondamentale. Ensuite, il convient de se demander pourquoi l'on veut mesurer l'utilité. Est-ce pour comparer les méthodes de synthèse et choisir la meilleure? Est-ce pour améliorer le processus de synthèse, soit de l'ajuster? Est-ce pour évaluer la qualité du fichier synthétique en fonction de sa valeur analytique? Après avoir déterminé la raison pour laquelle on veut mesurer l'utilité, il importe de se rappeler qui est utilisateur final et quelles sont les exigences du fichier de données synthétiques final.

L'équilibre entre le risque de divulgation et l'utilité

Au moment d'évaluer la qualité des données synthétiques, nous évaluons les résultats en termes de compromis entre le risque de divulgation et l'utilité. Cette situation est souvent présentée sous forme graphique, comme le montre la figure 4.

Figure 4 : Le compromis entre l'utilité et le risque de divulgation

Figure 4 : Le compromis entre l'utilité et le risque de divulgation

Le graphique décrit le lien entre le risque de divulgation et l'utilité. Le risque de divulgation associé à l'ensemble de données est sur l'axe des x et l'utilité se trouve sur l'axe des y. La courbe est concave, elle augmente, reliant le coin inférieur gauche à l'angle supérieur droit. Cela signifie qu'aucun ensemble de données ne peut avoir en même temps un score élevé quant à l'utilité et un score faible quant au risque de divulgation.

Il convient de se rappeler que dans le contexte des données synthétiques, l'utilité est une mesure de la proximité des résultats des données synthétiques par rapport aux données originales. Les données dont tous les enregistrements avaient des valeurs identiques peuvent avoir une utilité de zéro, et un risque de divulgation de zéro, tandis que les données originales auront une utilité de 100 %. Le risque de divulgation des données synthétiques est maximal lorsque les données originales ne sont pas modifiées. L'emplacement idéal sur ce graphique est en haut à gauche, avec une utilité parfaite et aucun risque de divulgation. Toutefois, ce point n'est jamais atteignable, car la modification des données en vue de leur protection contre les risques de divulgation modifiera toujours leur valeur. Plus important encore, quand on produit et évalue des données synthétiques, il faut toujours tenir compte à la fois de l'utilité et des risques de divulgation.

Conclusion

Le guide Synthetic Data for Official Statistics: A Starter Guide est le fruit d'une collaboration internationale entre des spécialistes des données synthétiques. Il fournit des recommandations sur le moment et la manière d'utiliser, de générer et de valider des données synthétiques dans le contexte des statistiques officielles. Il offre aussi des recommandations et de l'information pertinente sur la manière dont les données synthétiques peuvent accroître la portée et la valeur des fonds de données des ONS.

Bien que les données synthétiques ne puissent pas résoudre tous les problèmes de divulgation auxquels sont confrontés les organismes statistiques, elles peuvent offrir la solution pour étendre l'utilisation des données au grand public, au milieu universitaire, aux parties concernées et même à notre propre personnel. Avec l'avènement de méthodes d'apprentissage profond, les ONS disposent maintenant d'outils pour créer des données synthétiques à partir de grands ensembles de données non structurés. Quelle que soit la manière dont vous générez vos données synthétiques, il est essentiel d'établir un équilibre entre l'utilité des données de sortie et les risques de divulgation. Ne manquez pas de lire le document Synthetic Data for Official Statistics : A Starter Guide pour orienter votre projet de données synthétiques.

Rencontre avec le scientifique des données

Inscrivez-vous à la présentation Rencontre avec le scientifique des données

Si vous avez des questions à propos de mon article ou si vous souhaitez en discuter davantage, je vous invite à une Rencontre avec le scientifique des données, un événement au cours duquel les auteurs rencontrent les lecteurs, présentent leur sujet et discutent de leurs résultats.

Jeudi, le 16 mars
De 14 00 h à 15 30 h, HE
MS Teams – le lien sera fourni aux participants par courriel

Inscrivez-vous à la présentation Rencontre avec le scientifique des données.
À bientôt!

Abonnez-vous au bulletin d'information du Réseau de la science des données pour la fonction publique fédérale pour rester au fait des dernières nouvelles de la science des données.

Références

Chawla, N. V., K. W. Bowyer, L. O. Hall et W. P. Kegelmeyer. 2002. « SMOTE: Synthetic Minority Over-sampling Technique », Journal of Artificial Intelligence Research, vol. 16, p. 321 à 357.

Goodfellow, I., J. Pouget-Abadie, M. Mirza, B. Xu, D. Warde-Farley, S. Ozair, A. Courville et Y. Bengio. 2014. « Generative Adversarial Networks », Advances in Neural Information Processing Systems, vol. 3. 10.1145/3422622.

Kaloskampis, I., C. Joshi, C. Cheung, D. Pugh. et L. Nolan. 2020. « Synthetic data in the civil service », Significance, vol. 17, p. 18 à 23. (en anglais seulement)

Leduc, J. et N. Grislain. 2021. Composable Generative Models, arXiv: 2102.09249v1. (en anglais seulement)

OCDE. 2003. Glossaire de termes statistiques de l’OCDE, consulté le 21 août 2022 sur le site.

Sallier, K. 2020. « Toward More User-centric Data Access Solutions: Producing Synthetic Data of High Analytical Value by Data Synthesis », Statistical Journal of the IAOS, vol. 36, no 4, pp. 1059-1066. (en anglais seulement)

Date de modification :

Série sur les développements en matière d’apprentissage automatique : troisième numéro

Par : Nicholas Denis, Statistique Canada

Note de l’éditeur : Cette série présente les plus récentes et intéressantes nouveautés en matière de recherche dans le domaine de l’apprentissage automatique provenant du monde entier. Nous espérons que vous trouverez quelque chose qui vous aidera dans votre travail.

Les sujets de ce numéro :

La modélisation générative avancée désormais disponible pour les données tabulaires

Les modèles probabilistes de diffusion de débruitage peuvent être appliqués à tout ensemble de données tabulaires et être utilisés pour traiter tout type de caractéristique afin de générer des données synthétiques qui peuvent parfois être plus efficaces que les données réelles.

Figure 1 : Schéma TabDDPM pour le problème de classification; t, y, et l désignent respectivement un pas de temps de diffusion, une étiquette de classe et des logits.

Figure 1 : Schéma TabDDPM pour le problème de classification; t, y, et l désignent respectivement un pas de temps de diffusion, une étiquette de classe et des logits.

Données passant par le schéma TabDDPM. Une instance de données tabulaires, x, est composée de caractéristiques numériques (num) et catégorielles (cat). Les caractéristiques numériques sont transformées à l'aide du transformeur quantile, et les caractéristiques catégorielles sont soumises à un encodage 1 parmi n (à chaud). Le processus de bruit direct est calculé et corrompt l'entrée transformée à un pas de temps, t, qui est utilisé comme entrée dans TabDDPM. TabDDPM est un perceptron multicouche (MLP) et est conditionné par le pas de temps de diffusion, t, et l'étiquette de classe, y. La sortie de TabDDPM est le bruit estimé ajouté aux caractéristiques numériques, ε, et les caractéristiques catégorielles estimées non corrompues (originales) à encodage à chaud.

La figure contient les éléments suivants :

  1. Transformeur quantile (xnum: 0.8, -3.0, 1.2)
    1. avance jusqu’à 3.
  2. Encodage à chaud (xcat1, xcat2)
    1. avance jusqu’à 3.
  3. X dans (Xnumnorm, Xcat1ohe), Xcat2ohe
    1. avance jusqu’à 4.
  4. MLP
    1. t avance jusqu’à 4.
    2. Y avance jusqu’à 4.
    3. avance jusqu’à 5.
  5. ε, lcat1, lcat2
    1. ε avance jusqu’à 7.
    2. lcat1, lcat2 avance jusqu’à 6.
  6. Softmax
    1. De lcat1 avance jusqu’à 7.
    2. De lcat2 avance jusqu’à 7.
  7. X out (ε , Xcat1ohe, Xcat2ohe)

Quoi de neuf? Les modèles probabilistes de diffusion de débruitage (DDPM) produisent des résultats remarquables dans la génération de texte-image (p. ex. Imagen, Stable Diffusion, DALL-E 2) et ont été appliqués à des ensembles de données tabulaires. Cela a permis de générer des instances de données tabulaires synthétiques comprenant des caractéristiques numériques et catégorielles.

Comment cela fonctionne-t-il? Un DDPM typique utilise un processus de bruit gaussien direct et un processus de débruitage inverse (acquis) pour transformer un bruit pur échantillonné à partir d'une distribution normale multivariée standard en une instance de données synthétiques. De même, les données tabulaires avec modèles de diffusion (TabDDPM - en anglais seulement) comprennent également un processus de diffusion multinomial qui permet d'appliquer le DDPM aux caractéristiques catégorielles, ordinales et booléennes que l'on trouve généralement dans les données tabulaires.

Pourquoi cela fonctionne-t-il? Pour un examen rapide des modèles DDPM et du processus de diffusion gaussien, veuillez consulter la Série sur les développements en matière d'apprentissage automatique : deuxième numéro. Ici, nous nous concentrerons sur le processus de diffusion multinomial :

  • Faites en sorte que x0{0,1}K soit une variable à encodage à chaud de K dimensions (catégories).
  • Un processus de diffusion directe, q(xt|xt-1), sur des pas de temps T, s’écrit comme suit :

q(xtxt-1)Cat(xt;(1-βt)xt-1+βt/K

q(xT)Cat(xT;1/K)

q(xt|x0)=Cat(xt;αt¯x0+(1-(αt¯)/K)

{βt}Tt=1, est un schéma de bruit.

  • Le q(xt-1|xt,x0)postérieur est bien défini, et le processus de diffusion inverse est estimé à l’aide d’un réseau neuronal : ρθ(xt-1|xt) Le réseau peut maximiser la limite inférieure variationnelle (divergences KL dans le processus de diffusion inverse).
  • Les caractéristiques numériques sont transformées à l’aide du transformeur quantile et les caractéristiques catégorielles (ordinales, booléennes, etc.) sont transformées en encodages à chaud. Des modèles de diffusion gaussiens et multinomiaux sont formés sur chaque type de caractéristique, respectivement.

Résultats : Plusieurs modèles génératifs de base sont comparés, dont des réseaux antagonistes génératifs (RAG) et un autoencodeur variationnel (AEV), spécialement conçu pour les ensembles de données tabulaires. Quinze ensembles de données tabulaires différents sont utilisés. Les auteurs utilisent une approche formalisée et normalisée pour évaluer la qualité des données synthétiques générées par un modèle génératif, appelée efficacité en matière d'apprentissage automatique. Cette approche mérite d'être expliquée en détail pour toute personne qui s'intéresse à l'évaluation de la qualité des ensembles de données synthétiques.

Tout d'abord, les données réelles sont ajustées à un classificateur CatBoost (en anglais seulement) en utilisant un budget d'optimisation des hyperparamètres fixe et un outil d'optimisation des hyperparamètres appelé Optuna (en anglais seulement). Une fois les hyperparamètres optimaux trouvés, un modèle CatBoost est entraîné en utilisant les données synthétiques. Le score F1 du modèle, évalué en fonction de données réelles, est appelé le score d'efficacité en matière d'apprentissage automatique. Cette valeur mesure la qualité des données synthétiques par leur capacité à être utilisées à la place des données réelles pour les tâches d'apprentissage automatique en aval.

  • TabDDPM a généré de meilleurs résultats que les autres approches d'apprentissage profond dans 14 ensembles de données sur 15.
  • Sur 5 des 15 ensembles de données, un modèle CatBoost entraîné sur des données synthétiques provenant de TabDDPM a obtenu une précision de test plus élevée qu'un modèle CatBoost entraîné sur des données réelles.

Pourquoi est-ce important? Les DDPM produisent des données synthétiques réalistes dans d'autres modalités. L'échantillonnage d'instances de données tabulaires synthétiques de grande qualité peut avoir des applications dans l'augmentation des données, en générant et communiquant des versions synthétiques d'ensembles de données de nature délicate qui peuvent garantir la confidentialité, l'imputation et l'équilibre des ensembles de données déséquilibrés par classe.

Mais... Lorsqu'elle a été testée, la technique de suréchantillonnage synthétique des minorités (SMOTE -en anglais seulement)  a systématiquement donné de meilleurs résultats que le TabDDPM, bien qu'il s'agisse d'une technique plus ancienne et plus simple qui génère de nouvelles instances de données en prenant des combinaisons convexes d'instances de données dans l'ensemble de données. De plus, l'entraînement de TabDDPM est coûteux au chapitre des calculs, en particulier avec son approche d'optimisation des hyperparamètres Optuna.

Notre avis : Avec un accès à une GPU (unité de traitement graphique) pour l'entraînement du modèle, TabDDPM est un excellent moyen de générer des données tabulaires synthétiques de grande qualité et restera une base solide pour les améliorations futures des DDPM tabulaires.

Il suffit de remplir les cases vides

Les chercheurs en intelligence artificielle de Facebook ont obtenu des performances de pointe sur l'ensemble de données ImageNet-1K en appliquant aux ensembles de données de vision par ordinateur la même tâche de préentraînement que celle appliquée aux modèles de langage.

Figure 2 : Architecture d'un autocodeur masqué, dans laquelle 75 % des blocs de pixels sont masqués, puis reconstruits comme tâche de préentraînement.

Figure 2 : Architecture d'un autocodeur masqué, dans laquelle 75 % des blocs de pixels sont masqués, puis reconstruits comme tâche de préentraînement.

Une image de l'architecture d'un autoencodeur masqué.

Image d'entrée d'un flamant rose pixellisé, dont la plupart des pixels sont grisés. Transmission à l'encodeur avec tous les pixels non masqués. Transmission au décodeur avec les pixels masqués seulement. Transmission à la cible finale, une image du flamant rose pixelisée sans pixels masqués].

Quoi de neuf? Les autoencodeurs masqués (AEM) combinent l'architecture Vision Transfer (ViT) et la tâche de préentraînement de prédiction de jetons masqués de modèles de langage de type BERT ((en anglais seulement) Bidirectional Encoder Representations from Transformers, ou Représentations d'encodeur bidirectionnel à partir de réseaux autoattentifs) pour produire des performances de pointe sur diverses tâches et ensembles de données de vision par ordinateur.

Comment cela fonctionne-t-il? Les modèles de langage de type BERT encodent et représentent le langage naturel en exécutant une tâche de préentraînement de modèle de langage masqué. Lorsqu'on reçoit une grande quantité de données textuelles, une phrase est introduite dans le modèle, dans laquelle 15 % des jetons de mots d'entrée sont masqués. En déduisant correctement les mots masqués, les modèles de type BERT capturent la sémantique des entrées textuelles, ce qui les rend utilisables pour des tâches de traitement du langage naturel en aval, comme la classification de textes. L'AEM utilise la même approche, mais au lieu de masquer les mots, 75 % des blocs de pixels de l'image sont masqués et reconstruits.

Pourquoi cela fonctionne-t-il? L'AEM utilise une architecture d'encodeur et décodeur asymétrique. L'encodeur et le décodeur sont tous deux des modèles autoattentifs. Comme 75 % des blocs de l'image sont masqués, seuls 25 % sont traités par l'encodeur, ce qui le rend plus efficace sur le plan informatique que les ViT traditionnels pour l'apprentissage supervisé standard. Le décodeur présente également une architecture à plus petite échelle et reconstruit les blocs masqués. En réduisant au minimum la perte de reconstruction, le modèle apprend à extraire des renseignements globaux sur une image, y compris les zones masquées, uniquement à partir des pixels des zones « visibles ». Une fois le préentraînement terminé, le décodeur est éliminé, et l'encodeur agit comme un modèle préentraîné qui peut être utilisé tel quel pour transformer les entrées en vue d'une classification linéaire ou qui peut être affiné.

Résultats :

  • L'utilisation de l'ensemble de données ImageNet-1K (IN1K), le préentraînement de l'AEM, puis l'affinage pour 50 époques ont permis d'obtenir une précision supérieure à celle du précédent modèle de pointe entièrement supervisé.
  • En utilisant diverses architectures ViT standard, l'AEM a systématiquement donné de meilleurs résultats que les techniques de préentraînement supervisé de pointe précédentes, notamment dans l'ensemble de données IN1K pour la classification, dans l'ensemble de données COCO pour la détection d'objets et la segmentation d'instances, ainsi que dans l'ensemble de données ADE20k pour la segmentation sémantique.
  • Lors de l'évaluation de l'apprentissage par transfert, l'AEM a dépassé tous les résultats précédents sur le plan de la précision de pointe pour divers ensembles de données iNaturalist et Places, dans certains cas de jusqu'à 8 %.

Notre avis : Les techniques de préentraînement deviennent de plus en plus puissantes et peuvent désormais surpasser les paradigmes d'apprentissage supervisé standard. L'AEM n'est pas seulement impressionnant par ses résultats, mais aussi par sa simplicité. Cet article ne s'appuie pas sur des fonctions ou éléments surajoutés; l'architecture ViT de base est utilisée, et des améliorations importantes des résultats sont attendues en utilisant des architectures autoattentives de vision avancées.

Bien qu'elle soit relativement récente, la technologie des AEM a été appliquée aux données spatiotemporelles, aux données multimodales et aux données tabulaires, et elle est appelée à rester à des fins allant au-delà du préentraînement pour l'apprentissage supervisé. Elle a été utilisée pour l'imputation de données et peut être utilisée pour l'apprentissage partiellement supervisé. Des modèles d'AEM préentraînés peuvent également être téléchargés et utilisés en visitant Github Facebookresearch/mae (en anglais seulement)

L'utilisation d'autoencodeurs masqués pour l'imputation de données tabulaires

Les chercheurs transforment un imputeur en imputeur. Comment, que dites-vous?

Figure 3 : Cadre général de ReMasker.

Figure 3 : Cadre général de ReMasker.

Au cours de l'étape d'ajustement, pour chaque entrée, en plus de ses valeurs manquantes, un autre sous-ensemble de valeurs (valeurs remasquées) est sélectionné aléatoirement et masqué. L'encodeur est appliqué aux valeurs restantes pour générer sa représentation vectorielle, qui est étoffée au moyen de jetons masqués et traitée par le décodeur pour reconstruire les valeurs remasquées. Au cours de l'étape d'imputation, le modèle optimisé est appliqué pour prédire les valeurs manquantes.

Étape d'ajustement :

Entrée, encodeur, représentation vectorielle, passage à la représentation vectorielle étoffée, décodeur et valeur reconstruite.

Étape d'imputation :

Entrée, encodeur, représentation vectorielle, passage à la représentation vectorielle étoffée, décodeur et valeur imputée.

Quoi de neuf? Comme nous l'avons expliqué ci-dessus, les AEM sont entraînés pour imputer les données manquantes. Les chercheurs ont décidé de faire l'impensable et d'appliquer des AEM aux données tabulaires afin d'imputer les données manquantes.

Comment cela fonctionne-t-il? L'AEM et la tâche de prédiction de jeton masqué ont été développés à l'origine pour préentraîner un encodeur qui pourrait être affiné pour la classification en aval. Dans l'exécution initiale de l'AEM, le décodeur était écarté après le préentraînement. Dans ReMasker, l'encodeur et le décodeur sont conservés, puis appliqués aux valeurs manquantes réelles de l'ensemble de données pour déduire leurs valeurs.

Pourquoi cela fonctionne-t-il? ReMasker est entraîné avec un ensemble de données tabulaires comportant des valeurs manquantes réelles. Pendant l'entraînement, chaque entrée est masquée par un mécanisme de masquage et produit une entrée avec un mélange de valeurs visibles, de valeurs masquées et de valeurs manquantes. Les valeurs visibles entrent dans l'encodeur (architecture autoattentive), et les jetons de sortie sont combinés avec des jetons de masque assimilables et des encodages positionnels remplaçant les caractéristiques masquées et manquantes. Ceux-ci passent ensuite par le décodeur (architecture autoattentive). Le modèle déduit alors la valeur originale des caractéristiques masquées, mais pas les valeurs manquantes réelles.

Au moment du test, aucun masquage supplémentaire n'a été utilisé, et les instances de données avec des caractéristiques manquantes sont appliquées à ReMasker pour déduire les valeurs manquantes. Tout comme les auteurs de l'article original sur l'AEM l'indiquent, l'encodeur apprend à représenter l'information globale d'une image à partir des blocs de pixels visibles. Les auteurs de l'article sur ReMasker affirment que l'encodeur apprend une représentation « invariante par rapport aux valeurs manquantes » des données. Ce faisant, ReMasker apprend à représenter les instances de données tabulaires d'une manière discriminante qui est robuste par rapport aux caractéristiques manquantes.

Résultats : Les auteurs ont effectué des expériences à l'aide de 12 ensembles de données tabulaires provenant du référentiel d'apprentissage automatique de l'UCI (en anglais seulement), ont envisagé trois mécanismes différents pour échantillonner les valeurs manquantes et ont comparé ReMasker avec 13 techniques d'imputation de pointe. Les mesures de performance comprenaient la racine de l'erreur quadratique moyenne des valeurs imputées par rapport aux valeurs réelles, la distance de Wasserstein des données imputées par rapport aux données réelles et l'aire sous la courbe des caractéristiques opérationnelles de réception (AUROC), pour mesurer l'efficacité des données imputées pour les tâches de classification en aval.

  • ReMasker a systématiquement égalé ou surpassé presque toutes les approches d'imputation de base, la plupart du temps ou tout le temps.
  • L'approche d'imputation la plus proche était HyperImpute, une nouvelle approche d'imputation de pointe qui utilise un ensemble de méthodes d'imputation et sélectionne le meilleur modèle d'imputation pour chaque colonne d'un ensemble de données.
  • Les preuves empiriques semblent indiquer que les performances de ReMasker augmentent lorsque la taille de l'ensemble de données augmente, et lorsque le nombre de caractéristiques augmente.
  • ReMasker est robuste par rapport à la quantité de valeurs manquantes, affichant des performances constantes de 10 % à 70 % de caractéristiques manquantes.
  • Puisque HyperImpute est une approche d'assemblage, les auteurs ont inclus ReMasker comme modèle de base possible dans HyperImpute et ont montré qu'il produisait une amélioration supérieure des résultats de HyperImpute.
  • Pour tester leur hypothèse selon laquelle l'application du préentraînement de l'AEM sur des données tabulaires permet à l'encodeur d'apprendre des représentations des données « invariantes par rapport aux valeurs manquantes », les auteurs ont calculé l'alignement du noyau centré entre les encodages des données complètes et les encodages des données avec des valeurs manquantes entre 10 % et 70 %. Ils ont constaté que la similarité était robuste et ne diminuait que légèrement à mesure que la proportion de caractéristiques manquantes augmentait, ce qui confirme leur hypothèse.

Quel est le contexte? Les ensembles de données du monde réel contiennent des données manquantes pour de nombreuses raisons. L'utilisation de données pour les modèles d'apprentissage automatique, les statistiques officielles ou l'inférence de toute sorte doit aborder la question de savoir comment utiliser ou non les données avec des valeurs manquantes. L'imputation est importante et constitue un domaine de recherche actif au sein de la communauté de l'apprentissage automatique et de celle des méthodes statistiques.

Notre avis : Étant donné que la technique de préentraînement de l'AEM exécute explicitement l'imputation, ce n'était qu'une question de temps avant qu'un chercheur ne teste son application pour l'imputation sur des ensembles de données tabulaires. Il s'agit d'une bonne première exploration de la façon dont l'AEM peut être utilisé à de telles fins.

Rencontre avec le scientifique des données

Inscrivez-vous à la présentation Rencontre avec le scientifique des données

Si vous avez des questions à propos de mon article ou si vous souhaitez en discuter davantage, je vous invite à une Rencontre avec le scientifique des données, un événement au cours duquel les auteurs rencontrent les lecteurs, présentent leur sujet et discutent de leurs résultats.

Jeudi, le 16 mars
De 14 00 h à 15 30 h, HE
MS Teams – le lien sera fourni aux participants par courriel

Inscrivez-vous à la présentation Rencontre avec le scientifique des données.
À bientôt!

Abonnez-vous au bulletin d'information du Réseau de la science des données pour la fonction publique fédérale pour rester au fait des dernières nouvelles de la science des données.

Date de modification :

Rendre la visualisation de données accessible aux personnes aveugles et malvoyantes

Par : Jessica Lachance, Élections Canada

Note de la rédaction : Les renseignements dont il est question dans le présent article sont présentés comme des solutions possibles pour l'accessibilité des produits de visualisation des données, y compris certaines solutions intéressantes et avant-gardistes auxquelles de nombreuses personnes n'ont pas accès aujourd'hui. Aucun des outils dont il est question dans le présent article ne doit être interprété comme une recommandation officielle ni être envisagé aux fins de mise en œuvre dans votre environnement sans avoir fait l'objet au préalable d'un examen approfondi.

Introduction

Tout au long du 21e siècle, la quantité et la variété des données accessibles aux citoyens, aux chercheurs, à l'industrie et au gouvernement ont augmenté de façon exponentielle (voir Volume of data/information created, captured, copied, and consumed worldwide from 2010 to 2020, with forecasts from 2021 to 2025 [en anglais seulement]). En raison de cette croissance, on s'attend à ce que les données soient utilisées pour éclairer les politiques, les décisions opérationnelles et les choix des consommateurs.

Le cerveau humain n'est pas en mesure d'interpréter efficacement cette vaste quantité de données brutes. Or, nous devons résumer les données pour en comprendre les caractéristiques. Les principaux outils utilisés pour nous aider à comprendre les données sont les produits de visualisation. Ils peuvent aller d'images statiques simples à un logiciel interactif qui nous permet de choisir des données particulières et d'afficher des sommaires personnalisés.

Malgré leurs avantages, les produits de visualisation des données présentent des obstacles majeurs pour les personnes aveugles et malvoyantes (AMV). Ces obstacles empêchent les personnes AMV de participer pleinement au discours public ou à leur milieu de travail, ou encore de faire des choix éclairés. Par exemple, les lignes directrices actuelles sur le texte de remplacement ne sont pas toujours fondées sur des données bien documentées. Cela mène à des lacunes qui ne permettent pas aux personnes AMV de saisir des renseignements statistiques à la même vitesse que les utilisateurs voyants. Comment une personne peut-elle comprendre ce que signifie « aplatir la courbe » si elle ne peut pas voir le graphique qui lui est associé? (Voir Making data visualizations more accessible [en anglais seulement].)

Nous nous pencherons davantage sur les principaux besoins et sur les méthodes utilisées pour aider à améliorer l'accessibilité des produits de visualisation des données et fournir des solutions de rechange non visuelles pour la présentation des données. Nous explorerons ensuite quelques solutions qui fonctionnent pour un certain nombre de types de produits de visualisation.

Lignes directrices actuelles sur l'accessibilité

Les Règles pour l'accessibilité des contenus Web (WCAG) 2.1 sont la norme internationale sur l'accessibilité des sites Web. L'accessibilité du Web repose sur quatre grands principes : le contenu doit être perceptible, utilisable, compréhensible et robuste (voir Understanding the Four Principles of Accessibility [en anglais seulement]). Selon le Guide de rédaction du contenu du site Canada.ca, dont les règles prennent appui sur les WCAG 2.1, les auteurs doivent fournir une description longue pour expliquer les graphiques, ainsi qu'un texte de remplacement plus court pour une description de plus haut niveau. Pour les graphiques, un tableau (HTML) pourrait être utilisé pour la description longue.

Cependant, les chercheurs et les défenseurs font valoir que cela ne répond pas toujours aux besoins des personnes AMV, et que les tableaux HTML exigent plus d'efforts (ou une charge cognitive plus élevée) de la part des utilisateurs AMV pour trouver la réponse à une question simple comme « quelle série de données représente le maximum? » Les utilisateurs voyants peuvent facilement obtenir ce renseignement en un coup d'œil. De plus, les textes de remplacement ne fournissent pas toujours suffisamment de détails, surtout en ce qui concerne l'information spatiale du graphique.

Caractéristiques d'un produit de visualisation accessible

Nous avons constaté que chaque chercheur avait une définition unique de ce qui rend le produit de visualisation des données utilisable et des renseignements nécessaires pour la rendre compréhensible et robuste. Les dimensions suivantes doivent être prises en considération pour rendre le produit de visualisation accessible.

Les tâches liées aux données doivent exiger une charge cognitive égale et un effort égal : Comme nous l'avons mentionné plus haut, les tableaux HTML nécessitent une charge cognitive plus élevée pour déterminer certaines caractéristiques statistiques, comme le minimum ou le maximum. Cela ne veut pas dire que les tableaux HTML n'ont pas de valeur. En général, les utilisateurs AMV apprécient cette fonctionnalité, tout comme la plupart des utilisateurs voyants. Cependant, lorsque le tableau HTML est la seule interface offerte, la tâche peut parfois être astreignante.

Fournir des renseignements à différents niveaux de complexité : Toutes les tâches liées aux données ne sont pas égales. Un produit de visualisation peut montrer différents niveaux de complexité des renseignements. Un article intéressant de Lundgard et Satyanarayan (voir Accessible Visualization via Natural Language Descriptions: A Four-Level Model of Semantic Content [en anglais seulement]) définit quatre niveaux distincts de contenu sémantique que pourrait transmettre une description de visualisation des données.

Il s'agit des suivants :

  1. Liste des propriétés propres à la composition de la visualisation (p. ex. axes, type de graphique, couleurs);
  2. Rapports sur les concepts statistiques et les relations;
  3. Détermination du phénomène perceptuel et cognitif;
  4. Obtention des renseignements propres au domaine.

Leur étude a révélé que les participants aveugles et voyants trouvaient que le contenu de niveau 3 était le plus utile. Les participants aveugles ont trouvé que le contenu de niveau 2 était plus utile que leurs homologues voyants, mais ils ont trouvé le contenu de niveau 4 beaucoup moins utile.

Ces différents niveaux sémantiques s'harmonisent également avec le mantra de Shneiderman pour la recherche de renseignements visuels, soit : survol d'abord, zoom et filtre, puis détails sur demande (voir Schneiderman's Mantra | Data Visualization [en anglais seulement]). Ce mantra est un principe très important de la création de produits de visualisation, et il s'applique aussi aux utilisateurs AMV. Ces derniers veulent se représenter une vue d'ensemble du graphique, puis faire un zoom avant dessus et le filtrer pour obtenir des concepts statistiques, des relations et des détails.

Dépeindre mentalement l'image : Certaines lignes directrices existantes stipulent que des détails comme les couleurs du graphique ou les descriptions des axes doivent être ignorés pour réduire la charge cognitive. Mais de nombreuses études ont montré que ces éléments sont importants puisqu'ils aident les utilisateurs AMV à se représenter les graphiques. Par exemple, ils les aident à communiquer les résultats avec leurs collègues voyants et à comprendre les produits de visualisation des données en tant qu'outil statistique, ou lorsqu'ils découvraient un type de graphique moins courant.

Les utilisateurs AMV veulent savoir « ce que l'auteur veut que vous sachiez » : La majorité des utilisateurs AMV ont trouvé que les niveaux 2 et 3, où nous commençons à comprendre l'essentiel des données, sont là où les lignes directrices actuelles sur l'accessibilité font le plus défaut. Il est plus facile de se souvenir des tendances et des caractéristiques lorsqu'on les présente avec des descriptions physiques du graphique. Cette image mentale aide les utilisateurs à se rappeler facilement où trouver des renseignements statistiques comme le minimum, le maximum ou le point où deux lignes se croisent.

Présenter les données objectivement : Les AMV qui ont participé aux études ont souligné que les descriptions accessibles ne devraient pas contenir de contenu éditorialisé associé au contenu sémantique de niveau 4. Les utilisateurs AMV devraient être en mesure de vérifier par eux-mêmes toute allégation faite au sujet des données et ne pas recevoir un point de vue éditorialisé, au-delà de ce à quoi un utilisateur voyant aurait accès. Ils ont également exprimé une préférence pour les descriptions qui utilisent un ton objectif.

S'assurer que la solution convient à la navigation sur le Web : Nous pouvons également envisager la portée de la solution. Une clé électronique pour les personnes en situation de handicap est une solution bien intentionnée qui privilégie la forme à sa fonction de dispositif d'accessibilité. Rendre les produits de visualisation des données accessibles ne nécessite pas un nouvel outil sophistiqué. Idéalement, les solutions devraient être compatibles avec les technologies couramment utilisées par les personnes AMV, comme l'affichage en braille et les lecteurs d'écran. Lorsque les solutions nécessitent des logiciels ou du matériel coûteux, leur opérabilité et leur robustesse sont réduites.

Solutions de rechange accessibles

Nous avons décrit six grandes consignes pour répondre aux besoins des utilisateurs AMV lorsqu'ils visualisent des données :

  1. Fournir des renseignements à différents niveaux de complexité;
  2. Dépeindre une image mentale de la visualisation;
  3. Faire savoir aux utilisateurs AMV ce que vous, en tant qu'auteur, voulez qu'ils sachent;
  4. Présenter les données objectivement;
  5. Intégrer les outils d'accessibilité dont les utilisateurs AMV disposent déjà ou qui peuvent facilement être intégrés au navigateur;
  6. Avoir une solution qui fonctionne pour de nombreux types de graphiques différents.

Nous avons déjà décrit les défaillances des principales recommandations. Nous décrirons dans ce qui suit des solutions de rechange accessibles pour la visualisation des données, ainsi que leurs avantages et inconvénients.

Sonification

La sonification fait référence à l'utilisation d'échelles sonores pour cartographier les données d'une manière analogue aux échelles de couleurs. Les sons peuvent changer de timbre, de hauteur tonale ou de volume pour représenter les changements dans les données. La recherche sur la sonification des graphiques s'intéresse à la façon de cartographier les données sous forme de sons afin d'optimiser la compréhension des utilisateurs AMV.

La sonification, comme la visualisation, peut être traitée en parallèle, ce qui la rend bien adaptée aux données multidimensionnelles. Grâce aux intégrations d'un dispositif Soundscape en 3D, la sonification peut même être utilisée pour tracer des données ayant des relations spatiales, comme des choroplèthes. Consultez la Data Sonification Archive (en anglais seulement) pour en savoir plus.

Les utilisateurs AMV ont découvert que la sonification les aidait à « visualiser » le graphique, mais qu'il y avait une courbe d'apprentissage à surmonter. Le manque de normes pose également des difficultés pour les concepteurs qui tentent d'intégrer les échelles de sonification dans l'environnement en ligne, bien que plusieurs nouvelles bibliothèques de source libre (TwoTone Data Sonification, Highchart Sonification Studio) promettent de créer des échelles de sonification, en utilisant des données.

Retour haptique

Le retour haptique concerne le sens du toucher, par exemple par des sensations de force ou de friction sur son doigt. Le retour haptique peut aider les utilisateurs à ressentir les hauts et les bas d'un graphique linéaire ou la hauteur d'un graphique à barres par rapport au quadrillage.

Selon la recherche sur la visualisation haptique, de nombreuses personnes AMV apprennent par le toucher, donc la représentation tactile du graphique peut faciliter le lien entre ce qu'elles ont appris à l'école et ce qui est présenté devant elles. Toutefois, en pratique, ce n'est pas toujours le cas. Certains utilisateurs ont trouvé les différentes frictions « dérangeantes » et « déroutantes », ce qui les a amenés à percevoir de façon incorrecte la disposition d'un graphique complexe. Cela pourrait être attribuable au fait que la gamme des valeurs perçues par les yeux est beaucoup plus grande que ce qui peut être perçu par le toucher. Donc, même si le retour haptique peut être utile pour saisir l'essentiel d'un graphique, il n'est pas bien adapté pour détecter des points de données précis.

Un autre inconvénient est que sans une bibliothèque facilement accessible avec laquelle travailler, le concepteur de site Web moyen n'est pas en mesure de créer un produit de visualisation des données qui se traduit en retour haptique. Pour remédier au manque de bibliothèques haptiques et répondre au besoin d'un dispositif haptique spécialisé, il pourrait suffire de simplement créer une clé électronique pour les personnes en situation de handicap.

Descriptions accessibles

Une description accessible nécessite la rédaction d'une description du produit de visualisation des données. Bien qu'elles ressemblent aux textes de rechange dans les WCAG 2.1, les stratégies ci-dessous vont un peu plus loin que les lignes directrices actuelles.

Les textes de rechange ne sont pas tous mauvais. Dans le cadre d'une étude, on a demandé aux participants d'évaluer la qualité des textes de rechange trouvés dans des revues universitaires. Ces derniers étaient reconnaissants quand ces textes contenaient des renseignements recommandés par les lignes directrices sur les textes de rechange. Cependant, ces lignes directrices ne sont pas suffisantes en ce qui concerne les trois premiers points mentionnés dans l'introduction. Les textes de rechange sont très utiles pour transmettre des renseignements comme le sujet et le type de graphique, mais ne donnent pas aux utilisateurs AMV un résumé des données ou des caractéristiques statistiques.

Pour les concepteurs, ce serait une tâche fastidieuse, sinon impossible, de rédiger ces descriptions. Plus encore lorsque les graphiques sont interactifs et permettent aux utilisateurs de choisir différentes vues d'un graphique. Par conséquent, la recherche pour la prochaine génération de descriptions accessibles porte principalement sur trois possibilités :

  1. Permettre aux utilisateurs AMV de « naviguer » une visualisation, comme ils le font actuellement pour une page Web;
  2. Générer par programmation des descriptions en langage naturel;
  3. Présenter un mode de recherche interactif où les utilisateurs peuvent poser des questions sur les données en langage naturel.

Graphiques vectoriels adaptables navigables

Le HTML structure une page Web en sections hiérarchiques et chaque balise en décrit le contenu. Les utilisateurs AMV qui utilisent des lecteurs d'écran pour naviguer sur le Web ont l'habitude de naviguer entre ces sections.

Certains chercheurs et développeurs Web font la promotion de l'utilisation d'éléments HTML pour créer des produits de visualisation des données et présenter des descriptions accessibles pour les personnes AMV. Les graphiques vectoriels adaptables (SVG) sont fréquemment utilisés pour la création de produits de visualisation en ligne par programmation, notamment dans Chart.js, D3.js - Data-Driven Documents, Google Charts et autres. Lorsque c'est bien conçu, chaque balise d'un SVG peut être organisée de manière à ce qu'une arborescence puisse être parcourue par des lecteurs d'écran d'une manière significative (p. ex. Semiotic, Accessibility module de Highchart, Accessibility in d3 Bar Charts | a11y with Lindsey).

Génération du langage naturel

La génération du langage naturel est un domaine d'apprentissage automatique qui génère automatiquement du texte qui ressemble à ce qu'aurait écrit un humain. Cela pourrait être utilisé pour créer une description d'un graphique et un résumé de ses données. Il existe actuellement plusieurs bibliothèques (p. ex. VoxLens, evoGraphs), mais elles se limitent aux graphiques 2D, comme les graphiques à barres ou les graphiques linéaires.

Modèles de recherche interactive

Les modes de recherche interactifs permettent aux utilisateurs de contrôler la quantité de renseignements qu'ils reçoivent à la fois. Ces interfaces de langage naturel permettent aux utilisateurs de poser des questions de complexité variable sans être accablés, et ils complètent les autres méthodes décrites dans le présent article.

L'apprentissage des modèles de recherche interactifs peut également être intuitif. Dans une étude, les utilisateurs de VoxLens ont eu l'option d'ajouter des échelles sonores à un graphique ou d'utiliser un dialogue interactif. La plupart préféraient le dialogue interactif.

Mais les modes de recherche interactifs, en particulier en langage naturel, repoussent les limites de nos capacités de traitement actuelles, en particulier pour l'analyse nuancée ou dépendante du contexte des données. Le défi actuel pour la génération de langage naturel et les modèles de recherche interactive est la capacité de créer une solution robuste même pour des produits de visualisation complexes.

Visualisation multimodale

La visualisation multimodale, comme son nom l'indique, est une combinaison des techniques décrites précédemment pour communiquer les données. Les principaux avantages sont les suivants :

  1. La faiblesse d'une méthode peut être compensée par une autre méthode;
  2. Les solutions multimodales représentent un plus large éventail de préférences pour les utilisateurs;
  3. Avoir plusieurs entrées sensorielles peut réduire la charge cognitive nécessaire pour comprendre les données.

La solution multimodale la plus courante est la combinaison de la sonification et du retour haptique. Comme le toucher est une méthode d'apprentissage familière pour certaines personnes AMV, elle peut renforcer l'information fournie par la sonification, qui est moins connue. Inversement, des indices sonores peuvent renforcer la réception haptique, comme l'émission d'un son lorsqu'un utilisateur passe de manière haptique à une série de données différente notée par différentes frictions. Cependant, l'approche multimodale fondée sur le retour haptique présente le même inconvénient que l'utilisation du retour haptique elle-même, elle nécessite un matériel spécialisé.

Les approches multimodales qui combinent la sonification et les descriptions accessibles connaissent un meilleur succès. VoxLens a enregistré une augmentation de 122 % de l'exactitude des tâches et une réduction de 36 % du temps total d'interaction.

En résumé, les approches multimodales qui combinent la sonification et les descriptions accessibles créent des produits de visualisation accessibles qui nécessitent une charge cognitive équitable, fournissent de l'information à tous les niveaux de contenu sémantique et sont légères pour la navigation sur le Web, si les limites quant au type de visualisation de données pris en charge peuvent être surmontées.

Conclusion

Au début du présent article, nous avons demandé : « Comment une personne pourrait-elle comprendre ce que signifie l'expression "aplatir la courbe" si elle ne peut pas voir le graphique associé à cette courbe? ». Nous avons examiné les principaux points à prendre en considération, et nous avons appris que le fait de fournir un tableau de valeurs ne permettrait pas aux utilisateurs AMV de trouver facilement les maximums de chaque courbe.

Pour établir un équilibre entre l'ajout d'information et l'importance de ne pas accroître la charge cognitive, les utilisateurs AMV et les chercheurs suggèrent de faire appel à une méthode accessible pour interroger les données, qui serait utile pour des tâches comme l'obtention du minimum ou du maximum, ou la mise en évidence des zones du graphique.

Les données deviennent de plus en plus complexes, et Loi canadienne sur l'accessibilité vise à créer un Canada exempt obstacle d'ici 2040 (voir Vers un Canada accessible). Dans ce contexte, nous avons tous un rôle à jouer pour veiller à ce que nos produits de visualisation des données ne présentent aucun obstacle pour leurs utilisateurs.

Rencontre avec le scientifique des données

Inscrivez-vous à la présentation Rencontre avec le scientifique des données

Si vous avez des questions à propos de mon article ou si vous souhaitez en discuter davantage, je vous invite à une Rencontre avec le scientifique des données, un événement au cours duquel les auteurs rencontrent les lecteurs, présentent leur sujet et discutent de leurs résultats.

Jeudi, le 16 mars
De 14 00 h à 15 30 h, HE
MS Teams – le lien sera fourni aux participants par courriel

Inscrivez-vous à la présentation Rencontre avec le scientifique des données.
À bientôt!

Abonnez-vous au bulletin d'information du Réseau de la science des données pour la fonction publique fédérale pour rester au fait des dernières nouvelles de la science des données.

Outils référencés

Lectures complémentaires

  1. Ali, S., Muralidharan, L., Alfieri, F., Agrawal, M., & Jorgensen, J. (2020). Sonify: Making Visual Graphs Accessible. In T. Ahram, R. Taiar, S. Colson, & A. Choplin (Eds.), Human Interaction and Emerging Technologies (pp. 454–459). Springer International Publishing. (en anglais seulement)
  2. Choi, J., Jung, S., Park, D. G., Choo, J., & Elmqvist, N. (2019). Visualizing for the Non-Visual: Enabling the Visually Impaired to Use Visualization. Computer Graphics Forum, 38(3), 249–260. (en anglais seulement)
  3. Chundury, P., Patnaik, B., Reyazuddin, Y., Tang, C., Lazar, J., & Elmqvist, N. (2021). Towards Understanding Sensory Substitution for Accessible Visualization: An Interview Study. IEEE Transactions on Visualization and Computer Graphics, 28(1), 1084–1094. (en anglais seulement)
  4. Fan, D., Siu, A. F., Law, W.-S. A., Zhen, R. R., O'Modhrain, S., & Follmer, S. (2022). Slide-Tone and Tilt-Tone: 1-DOF Haptic Techniques for Conveying Shape Characteristics of Graphs to Blind Users. Proceedings of the 2022 CHI Conference on Human Factors in Computing Systems, 1–19. (en anglais seulement)
  5. Fritz, J. P., & Barner, K. E. (1999). Design of a haptic data visualization system for people with visual impairments. IEEE Transactions on Rehabilitation Engineering, 7(3), 372–384. (en anglais seulement)
  6. Godfrey, A. J. R., Murrell, P., & Sorge, V. (2018). An Accessible Interaction Model for Data Visualisation in Statistics. In K. Miesenberger & G. Kouroupetroglou (Eds.), Computers Helping People with Special Needs (pp. 590–597). Springer International Publishing. (en anglais seulement)
  7. Jung, C., Mehta, S., Kulkarni, A., Zhao, Y., & Kim, Y.-S. (2021). Communicating Visualizations without Visuals: Investigation of Visualization Alternative Text for People with Visual Impairments. IEEE Transactions on Visualization and Computer Graphics, 28(1), 1095–1105. (en anglais seulement)
  8. Lundgard, A., & Satyanarayan, A. (2021). Accessible Visualization via Natural Language Descriptions: A Four-Level Model of Semantic Content. IEEE Transactions on Visualization and Computer Graphics, 28(1), 1073–1083. (en anglais seulement)
  9. Lunn, D., Harper, S., & Bechhofer, S. (2011). Identifying Behavioral Strategies of Visually Impaired Users to Improve Access to Web Content. ACM Transactions on Accessible Computing, 3(4), 13:1-13:35. (en anglais seulement)
  10. Murillo-Morales, T., & Miesenberger, K. (2020). AUDiaL: A Natural Language Interface to Make Statistical Charts Accessible to Blind Persons. In K. Miesenberger, R. Manduchi, M. Covarrubias Rodriguez, & P. Peňáz (Eds.), Computers Helping People with Special Needs (pp. 373–384). Springer International Publishing. (en anglais seulement)
  11. Sawe, N., Chafe, C., & Treviño, J. (2020). Using Data Sonification to Overcome Science Literacy, Numeracy, and Visualization Barriers in Science Communication. Frontiers in Communication, 5. (en anglais seulement)
  12. Sharif, A., & Forouraghi, B. (2018). evoGraphs—A jQuery plugin to create web accessible graphs. 2018 15th IEEE Annual Consumer Communications & Networking Conference (CCNC), 1–4. (en anglais seulement)
  13. Sharif, A., Wang, O. H., Muongchan, A. T., Reinecke, K., & Wobbrock, J. O. (2022). VoxLens: Making Online Data Visualizations Accessible with an Interactive JavaScript Plug-In. Proceedings of the 2022 CHI Conference on Human Factors in Computing Systems, 1–19. (en anglais seulement)
  14. Shneiderman, B. (1996). The eyes have it: A task by data type taxonomy for information visualizations. Proceedings 1996 IEEE Symposium on Visual Languages, 336–343. (en anglais seulement)
  15. Strantz, A. (2021a). Using Web Standards to Design Accessible Data Visualizations in Professional Communication. IEEE Transactions on Professional Communication, 64(3), 288–301. (en anglais seulement)
  16. Strantz, A. (2021b). Beyond "Alt-Text": Creating Accessible Data Visualizations with Code. The 39th ACM International Conference on Design of Communication, 331–337. (en anglais seulement)
  17. Yu, W., Ramloll, R., & Brewster, S. (2001). Haptic graphs for blind computer users. In S. Brewster & R. Murray-Smith (Eds.), Haptic Human-Computer Interaction (pp. 41–51). Springer. (en anglais seulement)
  18. Zhao, H., Smith, B. K., Norman, K., Plaisant, C., & Shneiderman, B. (2005). Interactive sonification of choropleth maps. IEEE MultiMedia, 12(2), 26–35. (en anglais seulement)
  19. Zong, J., Lee, C., Lundgard, A., Jang, J., Hajas, D., & Satyanarayan, A. (2022). Rich Screen Reader Experiences for Accessible Data Visualization. Computer Graphics Forum, 41(3), 15–27. (en anglais seulement)
Date de modification :

Conception d'un système d'alerte et de surveillance des mesures

Par : Simardeep Singh, Statistique Canada

Introduction

La conception d'un système d'alerte et de surveillance des mesures est une étape cruciale pour assurer la santé et le rendement de tout système ou de toute application. Un système bien conçu peut aider à repérer les problèmes potentiels avant qu'ils ne deviennent très importants, ce qui permet leur résolution rapide et réduit au minimum le temps d'arrêt.

La première étape de conception d'un système d'alerte et de surveillance des mesures consiste à déterminer les principales mesures qui doivent faire l'objet d'une surveillance. Ces mesures doivent être choisies en fonction des buts et objectifs précis du système ou de l'application ainsi que de ses caractéristiques et de ses exigences uniques. Par exemple, un site Web peut devoir surveiller des mesures comme le temps de chargement des pages, la mobilisation des utilisateurs et le temps de réponse des serveurs, tandis qu'une application mobile peut devoir surveiller des mesures comme l'utilisation de la batterie et le rendement du réseau.

Une fois les principales mesures cernées, la prochaine étape consiste à déterminer la façon dont elles seront recueillies et stockées. Cela peut comprendre la mise en place d'outils de surveillance spécialisés ou l'utilisation d'outils et de services existants. Il est important de s'assurer que les données recueillies sont exactes, fiables et facilement accessibles.

La prochaine étape consiste à établir des alertes et des avis en fonction des mesures qui font l'objet d'une surveillance. Cela peut se faire au moyen de divers outils et méthodes, comme les courriels, les messages textes ou les notifications poussées. Les seuils d'alerte doivent être choisis avec soin afin de s'assurer qu'ils sont suffisamment sensibles pour détecter les problèmes potentiels, mais pas au point de générer des alertes erronées.

Enfin, il est important d'examiner et d'évaluer régulièrement le rendement du système d'alerte et de surveillance des mesures. Il peut s'agir d'analyser les données recueillies, de déterminer les points à améliorer et d'apporter les ajustements nécessaires au système. En améliorant continuellement le système, il peut demeurer efficace et fiable au fil du temps.

Quels sont les principaux éléments du système?

Un système d'alerte et de surveillance des mesures comprend cinq composantes :

  • Collecte de données : Sert à recueillir les données relatives aux mesures à partir de différentes sources.
  • Transmission des données : Sert à transférer les données depuis les sources vers le système de surveillance des mesures.
  • Stockage des données : Sert à organiser et à stocker les données entrantes.
  • Alerte : Sert à analyser les données entrantes, à détecter les anomalies et à générer des alertes. Le système doit pouvoir envoyer des alertes à différents canaux de communication configurés par l'organisation.
  • Visualisation : Sert à présenter les données sous forme de tableaux, de graphiques ou sous d'autres formes, car il est plus facile de cerner les tendances ou les problèmes lorsque les données sont présentées visuellement.

Façon de concevoir les mesures pour le système d'alerte et de surveillance des mesures

Nous examinerons dans la section qui suit certains principes fondamentaux de conception du système, du modèle de données et de la conception globale.

Modélisation de données : Les données relatives aux mesures sont généralement enregistrées sous la forme d'une série chronologique qui contient l'ensemble de valeurs et les estampilles temporelles connexes. La série elle-même peut être désignée par son nom et, sur le plan opérationnel, par un ensemble d'étiquettes. Chaque série chronologique comprend les éléments suivants :

Tableau 1 : Séries temporelles

Nom Type
Un nom de mesure Une chaîne
Un ensemble d’étiquettes Une liste des paires <key : value>
Un ensemble de valeurs et leurs estampilles temporelles  Une matrice de paires <value, timestamp>

Modèle d'accès aux données : Envisager une mise en situation réelle où le système d'alerte doit calculer la charge moyenne de l'unité centrale sur l'ensemble des serveurs Web dans une région précise. La moyenne des données doit être calculée toutes les 10 minutes, ce qui représente environ 10 millions de mesures opérationnelles écrites par jour, et de nombreuses mesures sont recueillies à fréquence élevée. Pour ces systèmes, la charge d'écriture est lourde et la charge de lecture est simultanément irrégulière. Les services de visualisation et d'alerte envoient les requêtes à la base de données et, selon les tendances d'accès et les alertes, le volume de lecture peut augmenter ou diminuer. Le système est soumis à une charge d'écriture constante et lourde, tandis que la charge de lecture est irrégulière.

Système de stockage de données : Une base de données à usage général, en théorie, pourrait prendre en charge les données chronologiques, mais elle nécessitera des ajustements importants pour qu'elle fonctionne à grande échelle. Une base de données relationnelle n'est pas optimisée pour les opérations couramment effectuées sur des données chronologiques.

De nombreux systèmes de stockage sont optimisés pour les données chronologiques. L'optimisation s'appuie sur un moins grand nombre de serveurs pour traiter d'énormes quantités de données. Bon nombre de ces bases de données ont des interfaces de requête sur mesure conçues pour l'analyse de données chronologiques qui sont beaucoup plus faciles à utiliser que le langage relationnel SQL.

Deux bases de données chronologiques très populaires, Influx DB (base de données) et Prometheus, ont été conçues pour stocker de grandes quantités de données chronologiques et effectuer des analyses en temps réel. Une autre caractéristique de la robuste base de données chronologiques est l'agrégation efficace. La base de données Influx DB crée des index sur les étiquettes pour faciliter la consultation rapide de séries chronologiques par étiquettes.

Conception globale

Figure 1 : Conception globale d'un système d'alerte et de surveillance des mesures

Figure 1 : Conception globale d'un système d'alerte et de surveillance des mesures

Figure 1 : Conception globale d'un système d'alerte et de surveillance des mesures

Différentes composantes du système d'alerte et de surveillance des mesures interagissent entre elles. La source des mesures génère les mesures qui sont recueillies par le système de collecte des mesures et qui sont transmises à la base de données de séries chronologiques. La base de données de séries chronologiques est interrogée par le système de visualisation pour afficher les éléments visuels et le système d'alerte pour aviser les développeurs.

  1. Source des mesures
    1. Envoi au Système de collecte des mesures
  2. Système de collecte des mesures
    1. Envoi au Bases de données chronologiques
  3. Bases de données chronologiques
    1. Retour au Source des mesures
    2. Retour au Services de requêtes
  4. Services de requêtes
    1. Retour au Système d’alerte (envoi de requêtes)
    2. Retour au Système de visualisation (envoi de requêtes)
  5. Système de visualisation
    1. Envoi au Services de requêtes
  6. Système d’alerte
    1. Envoi au Courriel
    2. Envoi au Message texte
    3. Envoi au PagerDuty
    4. Envoi au Points terminaux HTTPS
  7. Courriel
  8. Message texte
  9. PagerDuty
  10. Points terminaux HTTPS
  • Source des mesures :Il peut s'agir de serveurs d'applications, de bases de données SQL, de files d'attente de messages, etc.
  • Système de collecte des mesures : Recueille les données relatives aux mesures et les consignes dans la base de données chronologiques.
  • Base de données chronologiques : Sert à stocker les données relatives aux mesures sous forme de séries chronologiques. La base de données fournit habituellement une interface de requête personnalisée pour analyser et résumer une grande quantité de données chronologiques. Elle maintient des index sur les étiquettes pour faciliter la consultation rapide des données à l'aide des étiquettes.
  • Service de requêtes : Le service de requêtes facilite la recherche et l'extraction de données à partir des bases de données chronologiques.
  • Système d'alerte : Envoie des notifications d'alerte à diverses destinations d'alerte.
  • Système de visualisation : Les mesures sont présentées sous diverses formes de graphiques et de tableaux.

Conception en détail

Regardons les conceptions d'un peu plus près :

  • Collecte des mesures
  • Ajustement du pipeline de transmission de mesures
  • Service de requêtes
  • Système d'alerte
  • Système de visualisation

Collecte des mesures

Il y a deux façons de recueillir les données relatives aux mesures : par extraction ou par diffusion.

Figure 2 : Processus de collecte des mesures

Figure 2 : Processus de collecte des mesures
Figure 2 : Processus de collecte des mesures

La source des mesures et le système de collecte des mesures. Ces composantes sont décrites en détail dans les paragraphes suivants.

  1. Source des mesures
    1. Envoi au Système de collecte des mesures
  2. Système de collecte des mesures
    1. Envoi au Bases de données chronologiques
  3. Bases de données chronologiques
    1. Retour au Source des mesures
    2. Retour au Services de requêtes
  4. Services de requêtes
    1. Retour au Système d’alerte (envoi de requêtes)
    2. Retour au Système de visualisation (envoi de requêtes)
  5. Système de visualisation
    1. Envoi au Services de requêtes
  6. Système d’alerte
    1. Envoi au Courriel
    2. Envoi au Message texte
    3. Envoi au PagerDuty
    4. Envoi au Points terminaux HTTPS
  7. Courriel
  8. Message texte
  9. PagerDuty
  10. Points terminaux HTTPS

Modèle de collecte par extraction

Dans un modèle de collecte par extraction, le système de collecte des mesures extrait les mesures à partir des sources. Par conséquent, le système de collecte des mesures doit connaître la liste complète des points terminaux de services pour extraire les données. Nous pouvons utiliser un service fiable, évolutif et maintenable, comme la découverte de services fournie par ETCD et Zookeeper. Un module de découverte de services contient des règles de configuration concernant le moment et l'endroit où recueillir les mesures.

  • Le système de collecte des mesures récupère les métadonnées de configuration du point terminal de service à partir du module de découverte de services. Les métadonnées comprennent l'intervalle d'extraction, les adresses IP, les délais d'expiration ainsi que les paramètres de reprise.
  • Le système de collecte des mesures extrait les données relatives aux mesures au moyen du point terminal HTTP (par exemple, les serveurs Web) ou du point terminal TCP (protocole de contrôle de transmission) (pour les groupements de bases de données).
  • Le système de collecte des mesures enregistre une notification d'événement de changement dans le répertoire de services pour obtenir une mise à jour chaque fois que les points terminaux de services changent.

Figure 3 : Modèle détaillé de collecte par extraction

Figure 3 : Modèle détaillé de collecte par extraction
Figure 3 : Modèle détaillé de collecte par extraction

Le système de collecte des mesures extrait les mesures à partir de différentes sources. Les services de collecte des mesures obtiennent les renseignements des points terminaux de services à partir du répertoire de services qui comprend ETCD et Zookeeper.

  1. Système de collecte des mesures
    1. Envoi au Découverte de services – ETCD, Zookeeper (via Cibles de découverte)
    2. Envoi au Sources des mesures - Serveurs Web, Groupe de bases de données, Groupements de mise en cache, Groupements de files d’attente (via Requêtes)
  2. Découverte de services – ETCD, Zookeeper
  3. Sources des mesures – Serveurs Web, Groupe de bases de données, Groupements de mise en cache, Groupements de files d’attente

Modèle de collecte par diffusion

Dans un modèle de collecte par diffusion, un module de collecte est installé sur chaque serveur qui fait l'objet d'une surveillance. Un module de collecte est un logiciel de longue durée qui recueille les mesures à partir du service exécuté sur le serveur, et qui les transmet au système de collecte.

Pour éviter que le système de collecte des mesures ne prenne du retard dans un modèle de collecte par diffusion, le système de collecte doit toujours être en mode de mise à l'échelle automatique à l'aide d'un équilibreur de charge en première ligne (Figure 4). Le groupement de services doit être augmenté ou réduit en fonction de la charge de l'UCT (unité centrale de traitement) du système de collecte des mesures.

Figure 4 : Modèle détaillé de la collecte par diffusion

Figure 4 : Modèle détaillé de la collecte par diffusion
Figure 4 : Modèle détaillé de la collecte par diffusion

Le module de collecte recueille les mesures à partir des serveurs Web et les diffuse à un équilibreur de charge. L'équilibreur de charge équilibre la charge des mesures et les diffuse vers le groupement de services de collecte des mesures.

  1. Sources des mesures 
    1. Serveurs Web
      1. Envoi au Mesures 1
      2. Envoi au Mesures 2
      3. Envoi au Mesures 3
    2. Envoi à l’Équilibreur de charge
  2. Équilibreur de charge (via Messages diffuses instantanément)
    1. Envoi au Services de collecte des mesures
  3. Services de collecte des mesures

Quel modèle de collecte est préférable? Par extraction ou par diffusion

Alors, qu'est-ce qui est le mieux pour une grande organisation? Il est important de connaître les avantages et les inconvénients liés à chacune des approches. Une grande organisation doit prendre en charge les deux, en particulier dans le cas d'une architecture sans serveur.

Système de surveillance par diffusion :

Avantages :

  • Notifications en temps réel des problèmes et des alertes.
  • Peut alerter plusieurs destinataires en même temps.
  • Peut être personnalisé en fonction d'exigences et de besoins précis.
  • Peut être intégré à d'autres systèmes et applications.

Inconvénients :

  • Nécessite une connexion Internet constante et fiable pour fonctionner correctement.
  • Le nombre de notifications et d'alertes peut devenir trop lourd.
  • Peut être vulnérable aux cyberattaques et aux atteintes à la sécurité.

Système de surveillance par extraction :

Avantages :

  • Accessible à distance et à partir de plusieurs appareils.
  • Peut être configuré pour vérifier des mesures et des paramètres précis à intervalles réguliers.
  • Peut être facilement configuré et personnalisé.
  • Peut fournir des données détaillées et historiques aux fins d'analyse et de production de rapports.

Inconvénients :

  • Nécessite une intervention manuelle pour vérifier et examiner les données.
  • Peut ne pas fournir d'alertes et de notifications en temps réel.
  • Peut être moins efficace pour cerner les problèmes et les anomalies et y remédier.

Ajustement du pipeline de transmission de mesures

Que nous utilisions le modèle de collecte par diffusion ou par extraction, le système de collecte des mesures des serveurs et le regroupement de services reçoivent d'énormes quantités de données. Il y a un risque de perte de données si la base de données chronologiques n'est pas disponible. Pour gérer le risque de perte de données, nous pouvons utiliser un composant de mise en file d'attente, comme le montre la figure 5.

Figure 5 : Ajouter des files d'attente

Figure 5 : Ajouter des files d'attente
Figure 5 : Ajouter des files d'attente

Étapes pour ajuster le pipeline de transmission des mesures. La conception tire parti de l'utilisation du mécanisme de partition intégrée de Kafka pour ajuster le système. Kafka aide à catégoriser les mesures et à établir leur ordre de priorité afin que les mesures importantes soient traitées en premier par la base de données chronologiques.

  1. Source des mesures
    1. Envoi au Système de collecte des mesures
  2. Système de collecte des mesures
    1. Envoi au Kakfa
  3. Kafka
    1. Envoi au Consommateur
  4. Consommateur
    1. Envoi au Bases de données chronologiques
  5. Bases de données chronologiques
    1. Retour au Services de requêtes
  6. Services de requêtes
    1. Retour au Système d'alerte (envoi de requêtes)
    2. Retour au Système de visualisation (envoi de requêtes)
  7. Système de visualisation
    1. Envoi au Services de requêtes
  8. Système d’alerte
    1. Envoi au Courriel
    2. Envoi au Message texte
    3. Envoi au PagerDuty
    4. Envoi au Points terminaux HTTPS
  9. Courriel
  10. Message texte
  11. PagerDuty
  12. Points terminaux HTTPS

Dans cette conception, le système de collecte des mesures envoie des données relatives aux mesures à un système de file d'attente comme Kafka. Ensuite, les consommateurs ou les services de traitement en continu comme Apache Spark traitent les données et les diffusent vers la base de données chronologiques. Cette approche présente plusieurs avantages :

  • Kafka est une plateforme de diffusion de messagerie hautement fiable et évolutive.
  • L'application dissocie les services de collecte et de traitement des données les uns des autres.
  • Elle peut facilement prévenir la perte de données lorsque la base de données n'est pas disponible en conservant les données dans Kafka.

Service de requêtes

Le service de requêtes est constitué d'un groupement de serveurs de requêtes qui accèdent à la base de données chronologiques et traitent les requêtes provenant des systèmes de visualisation ou d'alerte. Une fois qu'un ensemble dédié de serveurs de requêtes est en place, il est possible de dissocier la base de données chronologiques des systèmes de visualisation et d'alerte. Cela permet la modification de la base de données chronologiques ou des systèmes de visualisation et d'alerte, au besoin.

Pour réduire la charge de la base de données chronologiques et rendre le service de requêtes plus performant, des serveurs cache peuvent être ajoutés pour stocker les résultats de la requête, comme le montre la figure 6.

Figure 6 : Couche de mise en cache

Figure 6 : Couche de mise en cache
Figure 6 : Couche de mise en cache

L'intégration du service de requêtes et de la couche de mise en cache. La couche de mise en cache réduit le temps de chargement de la base de données chronologiques et rend la requête plus performante.

  1. Source des mesures
    1. Envoi au Système de collecte des mesures
  2. Système de collecte des mesures
    1. Envoi au Kakfa
  3. Kafka
    1. Envoi au Consommateur
  4. Consommateurs
    1. Envoi au Bases de données chronologiques
  5. Bases de données chronologiques
    1. Retour au Services de requêtes
  6. Services de requêtes
    1. Envoi au Cache
    2. Retour au Système d'alerte (Envoi de requêtes)
    3. Retour au Système de visualisation (Envoi de requêtes)
  7. Cache
  8. Système de visualisation
    1. Envoi au Services de requêtes
  9. Système d'alerte
    1. Envoi au Courriel
    2. Envoi au Message texte
    3. Envoi au PagerDuty
    4. Envoi au Points terminaux HTTPS
  10. Courriel
  11. Message texte
  12. PagerDuty
  13. Points terminaux HTTPS

Couche de stockage

Optimisation de l'espace – afin d'optimiser le stockage, les stratégies suivantes peuvent être utilisées pour résoudre ce problème :

Codage et compression des données : Le codage des données est le processus de traduction des données d'un format à un autre, habituellement à des fins de transmission ou de stockage efficace. La compression des données est un processus connexe qui consiste à réduire la quantité de données requises pour représenter un élément d'information donné. Le codage et la compression des données peuvent réduire considérablement la taille des données. Il s'agit du processus de codage, de restructuration ou de modification des données pour en réduire la taille. Essentiellement, il s'agit de recodage de l'information en utilisant moins d'octets que la représentation originale.

Sous-échantillonnage : Le sous-échantillonnage est le processus qui consiste à réduire le nombre d'échantillons dans un ensemble de données en supprimant certains points de données. Le processus est souvent utilisé pour réduire la quantité de données qui doivent être traitées et pour simplifier l'analyse. Le sous-échantillonnage peut être effectué de diverses façons, notamment par la sélection aléatoire d'un sous-ensemble de points de données, l'utilisation d'un algorithme particulier pour sélectionner les points de données ou l'utilisation d'une fréquence d'échantillonnage précise pour réduire les données. Si la politique de conservation des données est établie à un an, il est possible d'échantillonner les données de la façon suivante.

  • Conservation : sept jours, pas d'échantillonnage
  • Conservation : 30 jours, sous-échantillonnage jusqu'à une résolution d'une minute
  • Rétention : un an, sous-échantillonnage à une résolution d'une heure

Système d'alerte

Bien qu'un système de surveillance soit très utile pour l'interprétation et l'examen proactifs, l'un des principaux avantages d'un système de surveillance complet est que les administrateurs peuvent être déconnectés du système. Les alertes permettent de définir des situations à gérer activement tout en s'appuyant sur la surveillance passive des logiciels pour surveiller l'évolution des conditions.

Le flux d'alerte fonctionne comme suit :

  1. Charger les fichiers de configuration sur les serveurs cache. Les règles sont définies comme des fichiers de configuration sur le disque, comme l'indique la figure 7.

Figure 7 : Système d'alerte

Figure 7 : Système d'alerte
Figure 7 : Système d'alerte

Les fichiers de configuration bruts sont mis en cache et transmis au gestionnaire d'alertes. Le gestionnaire d'alertes transmet ces fichiers à Kafka qui sont ensuite utilisés par les consommateurs d'alertes, y compris les courriels, les messages textes, PagerDuty et les points terminaux HTTP.

  1. Fichiers de configutation des règles
    1. Envoi au Cache
  2. Cache
    1. Envoi au Gestionnaire d’alertes
  3. Gestionnaire d’alertes
    1. Retour au Cache
    2. Envoi au Service de requêtes
    3. Lateral au Consommateur de l’alerte
    4. Envoi au Kafka
  4. Service de requêtes
    1. Retour au Consommateur de l’alerte
  5. Consommateur de l’alerte
    1. Retour au Gestionnaire d’alertes
  6. Kafka
    1. Envoi au Consommateur de l’alerte
  7. Consommateur de l’alerte
    1. Envoi au Courriel
    2. Envoi au Message texte
    3. Envoi au PagerDuty
    4. Envoi au Points terminaux HTTPS
  8. Courriel
  9. Message texte
  10. PagerDuty
  11. Points terminaux HTTPS
  1. Le gestionnaire d'alertes récupère les configurations relatives aux alertes à partir du cache.
  2. Sur la base des règles de configuration, le gestionnaire d'alertes appelle le service de requêtes à un intervalle prédéfini. Si la valeur dépasse le seuil, un événement d'alerte est créé. Le gestionnaire d'alertes a les responsabilités suivantes :
    1. Filtrer et fusionner les alertes, et éliminer les dédoublements. Voici un exemple d'alertes fusionnées qui sont signalées en une seule alerte dans un court délai.

Figure 8 : Alertes fusionnées

Figure 8 : Alertes fusionnées
Figure 8 : Alertes fusionnées

Fusion d'alertes par rapport aux différents événements.

  1. Événement 1, Occurence 1, disk usage > 90%
    1. Envoi au Fusion
  2. Événement 2, Occurence 1, disk usage > 90%
    1. Envoi au Fusion
  3. Événement 3, Occurence 1, disk usage > 90%
    1. Envoi au Fusion
  4. Fusion
    1. Envoi à l'1 alerte concernant l’occurrence 1
  5. 1 alerte concernant l'occurrence 1
  1. Contrôle de l'accès – pour éviter les erreurs humaines et assurer la sécurité du système, il est essentiel de limiter l'accès à certaines opérations de gestion des alertes aux personnes autorisées seulement.
  2. Réessayer – le gestionnaire d'alertes vérifie les états d'alerte et s'assure qu'une notification est envoyée au moins une fois.
  1. La base de stockage d'alertes est une base de données ayant une valeur essentielle comme Cassandra qui maintient l'état de toutes les alertes (active, en attente, déclenchée, résolue). Cela permet de s'assurer qu'une notification est envoyée au moins une fois.
  2. Les alertes admissibles sont insérées dans un système de messagerie et de mise en file d'attente comme Kafka.
  3. Les consommateurs d'alertes extraient les événements d'alerte à partir du système de messagerie et de mise en file d'attente.
  4. Les consommateurs d'alertes traitent les événements d'alerte à partir du système de messagerie et de mise en file d'attente, et envoient des notifications par différents canaux, comme le courrier électronique, la messagerie texte, PagerDuty ou les points terminaux HTTP.

Système de visualisation

Le système de visualisation est créé au-dessus la couche de données. Les mesures peuvent être présentées dans le tableau de bord des mesures sur diverses échelles de temps, et les alertes peuvent être affichées dans le tableau de bord. Un système de visualisation de haute qualité est difficile à concevoir. Il y a de bons arguments en faveur d'un système standard. Par exemple, Grafana peut être un très bon système à cette fin.

Récapitulation

Dans le présent article, nous avons discuté de la conception d'un système d'alerte et de surveillance des mesures. De façon générale, nous avons parlé de la collecte de données, de la base de données chronologiques, des alertes et de la visualisation. Nous nous sommes également penchés sur certaines des techniques et des composantes importantes, notamment :

  • Le modèle de collecte par extraction ou par diffusion pour les données relatives aux mesures.
  • L'utilisation de Kafka pour ajuster le système.
  • Le choix de la bonne base de données chronologiques.
  • Le recours au sous-échantillonnage pour réduire la taille des données.
  • Les options de conception ou d'achat en ce qui a trait aux systèmes d'alerte et de visualisation.

Nous avons procédé à quelques itérations pour affiner le diagramme, et notre conception finale ressemble à ceci :

Figure 9 : Conception finale

Figure 9 : Conception finale
Figure 9 : Conception finale

Conception affinée du système d'alerte et de surveillance des mesures

  1. Source des mesures
    1. Envoi au Système de collecte des mesures
  2. Système de collecte des mesures
    1. Envoi au Kakfa
  3. Kafka
    1. Envoi au Consommateur
  4. Consommateur
    1. Envoi au Bases de données chronologiques
  5. Bases de données chronologiques
    1. Retour au Services de requêtes
  6. Services de requêtes
    1. Retour au Système d'alerte (Envoi de requêtes)
    2. Retour au Système de visualisation (Envoi de requêtes)
  7. Système de visualisation
    1. Envoi au Services de requêtes
  8. Système d’alerte
    1. Envoi au Courriel
    2. Envoi au Message texte
    3. Envoi au PagerDuty
    4. Envoi au Points terminaux HTTPS
  9. Courriel
  10. Message texte
  11. PagerDuty
  12. Points terminaux HTTPS

En conclusion, la conception d'un système d'alerte et de surveillance des mesures est une étape cruciale pour assurer la santé et le rendement de tout système ou application. En sélectionnant soigneusement les mesures clés pour la surveillance, la collecte et le stockage des données avec exactitude, en établissant des alertes et des notifications efficaces et en examinant et en améliorant régulièrement le système, il est possible de créer un système robuste et fiable qui peut aider à cerner et à résoudre les problèmes potentiels avant qu'ils ne deviennent critiques.

Rencontre avec le scientifique des données

Inscrivez-vous à la présentation Rencontre avec le scientifique des données

Si vous avez des questions à propos de mon article ou si vous souhaitez en discuter davantage, je vous invite à une Rencontre avec le scientifique des données, un événement au cours duquel les auteurs rencontrent les lecteurs, présentent leur sujet et discutent de leurs résultats.

Jeudi, le 16 février
De 14 00 h à 15 00 h, HE
MS Teams – le lien sera fourni aux participants par courriel

Inscrivez-vous à la présentation Rencontre avec le scientifique des données.
À bientôt!

Abonnez-vous au bulletin d'information du Réseau de la science des données pour la fonction publique fédérale pour rester au fait des dernières nouvelles de la science des données.

Ressources additionnelles

  1. Datadog (en anglais seulement)
  2. Splunk (en anglais seulement)
  3. PagerDuty (en anglais seulement)
  4. Elastic stack (en anglais seulement)
  5. Dapper, a Large-Scale Distributed Systems Tracing Infrastructure (en anglais seulement)
  6. Distributed Systems Tracing with Zipkin (en anglais seulement)
  7. Prometheus (en anglais seulement)
  8. OpenTSDB-A Distributed, Scalable Monitoring System (en anglais seulement)
  9. Data model (en anglais seulement)
  10. MySQL (en anglais seulement)
  11. Schema design for time-series data | Cloud Bigtable Documentation (en anglais seulement)
  12. MetricsDB (en anglais seulement)
  13. Amazon Timestream (en anglais seulement)
  14. DB-Engines Ranking of time-series DBMS (en anglais seulement)
  15. InfluxDB (en anglais seulement)
  16. etcd (en anglais seulement)
  17. Service Discovery with Zookeeper (en anglais seulement)
  18. Amazon CloudWatch (en anglais seulement)
  19. Graphite (en anglais seulement)
  20. Push vs. Pull (en anglais seulement)
  21. Pull doesn't scale or does it? (en anglais seulement)
  22. Monitoring Architecture (en anglais seulement)
  23. Push vs. Pull in Monitoring Systems (en anglais seulement)
Date de modification :

Pallier les lacunes dans les données pour l'entraînement d'un algorithme d'apprentissage automatique à l'aide d'une application fondée sur l'approche participative généralisée

Par : Chatana Mandava et Nikhil Widhani, Statistique Canada

Introduction

La collecte de données par approche participative est un processus en ligne selon lequel une entreprise ou une organisation sollicite la contribution d'un grand groupe de personnes, que ce soit pour des idées, du contenu, des services ou du financement. Cette méthode permet aux entreprises de tirer parti du savoir collectif et de la créativité de personnes qui peuvent ne pas avoir de lien direct avec elles. Elle leur permet également d'accéder à des ressources auxquelles elles n'auraient pas accès autrement, comme de nouvelles technologies ou des compétences qui existent seulement à l'extérieur de leur organisation.

Dans le cadre de sa modernisation, Statistique Canada a adopté la collecte par approche participative comme méthode de pointe pour recueillir d'importantes données à des fins statistiques. Depuis, l'organisme a mis en œuvre de multiples projets de collecte par approche participative, dont les suivants.

  • Le projet pilote d'approche participative OpenStreetMap (OSM) — Ce projet pilote de collecte par approche participative a permis de recueillir des renseignements géographiques grâce à l'intégration des empreintes d'immeubles dans la région d'Ottawa (Ontario) et de Gatineau (Québec). Il a contribué au lancement de l'initiative Bâtir le Canada 2020, qui vise à cartographier tous les immeubles du Canada dans OMS d'ici 2020.
  • Le projet d'approche participative sur la COVID-19 — Dans le cadre de ce projet, un fichier de microdonnées à grande diffusion a été diffusé qui comprend des renseignements recueillis au moyen de questionnaires et qui peuvent servir à analyser les répercussions de la COVID-19 sur les expériences de discrimination des Canadiens, leur sentiment d'appartenance, leur confiance à l'égard des institutions et leur accès aux services de soins de santé. Ce produit est accessible au moyen du Service de transfert électronique de fichiers de Statistique Canada (voir : Approche participative : répercussions de la COVID-19 sur l'expérience de la discrimination des Canadiens fichier de microdonnées à grande diffusion)
  • La plateforme de collecte par approche participative StatsCannabis — Statistique Canada a entrepris ce projet novateur pour recueillir auprès des consommateurs de cannabis des renseignements au sujet de leur plus récent achat de cannabis, y compris sur le montant payé, la qualité du produit, l'emplacement et la raison de l'utilisation. Des questions ont également été posées sur la fréquence de consommation du cannabis et la quantité consommée en moyenne chaque mois (voir : Approche participative - Cannabis). Cette initiative est encore utilisée pour recueillir des renseignements sur un marché relativement nouveau et aide à surveiller les prix d'une manière confidentielle et non intrusive.

Au sein de Statistique Canada et dans d'autres organisations, on constate une demande croissante pour des données obtenues auprès de sources de rechange, notamment dans le cadre de projets de collecte par approche participative. La Division de la science des données de Statistique Canada a récemment mis sur pied un projet de validation de principe, en collaboration avec le Centre des projets spéciaux sur les entreprises (CPSE) et Nutrition Nord Canada, lequel a mené à la création d'un projet de collecte par approche participative des données de reçus d'épicerie dans les communautés autochtones du Nord du Canada, à l'aide de la reconnaissance optique de caractères (ROC). Dans le cadre de ce projet, des images des reçus d'épicerie sont recueillies, et des variables clés en sont extraites (nom du produit, prix, subvention) à l'aide de méthodes de ROC. De plus, le Centre de données sur la santé de la population de Statistique Canada a mené un projet de validation de principe, le projet Modélisation du contexte à l'aide de transformateurs : reconnaissance des aliments, pour explorer l'utilisation d'images d'aliments pour recueillir des données sur la nutrition, y compris sur la taille des portions et le nombre de calories consommées. Ces deux projets ont comme caractéristique commune la collecte de données par approche participative, mais les données recueillies pour chacun sont différentes. Dans de telles situations, la création d'une application généralisée aidera Statistique Canada à recueillir des données selon différents formats. Cette application unique pourra être réutilisée pour la collecte de données par approche participative dans le cadre de multiples projets, ce qui réduira le fardeau lié à la création de multiples applications pour la collecte de renseignements.

Ces projets exploratoires nous ont donné l'idée d'étendre les cas d'utilisation en appliquant les méthodes d'approche participative à la collecte de divers formats de données non structurées (p. ex. texte, PDF, images satellitaires) en vue de les transformer en données structurées au moyen de techniques d'apprentissage automatique.

Motivation et proposition de valeur

La motivation derrière l'investissement dans une telle application est de créer un guichet unique qui fournira aux organisations gouvernementales l'infrastructure minimale requise pour la réalisation de projets de collecte par approche participative. Cela permettra non seulement de générer un nouveau flux de collecte de données, mais aussi d'explorer diverses données au moyen de solutions non traditionnelles. Le bassin de données pourra servir à un plus grand nombre de cas d'utilisation lorsque les sources des données sont limitées, il accroîtra le rendement de nos modèles d'apprentissage automatique et il en améliorera l'évolutivité.

L'intérêt d'élaborer une application d'approche participative est double. Premièrement, il s'agira d'un outil efficace pour la collecte de données à partir d'un échantillon de grande taille, ce qui permettra de générer plus rapidement et à un coût moindre des statistiques fiables sur divers sujets, comme sur les tendances démographiques ou le développement économique. Deuxièmement, l'application pourrait être utilisée pour faciliter la collaboration entre le public et le milieu de la recherche, en favorisant le partage de connaissances et d'expériences pour mieux comprendre les enjeux importants au pays. En tirant parti du savoir collectif des Canadiennes et Canadiens de tous les groupes démographiques, Statistique Canada aurait accès à de précieux renseignements qui peuvent éclairer la prise de décision et améliorer les services publics.

Architecture

Diagramme du flux de données de l'application de collecte par approche participative
Figure 1 : Diagramme du flux de données de l'application de collecte par approche participative

Un survol de haut niveau des fonctionnalités de base et du flux de données de l'application.

  1. Base de données, Stockages Minio, Authentification de l'utilisateur, Élément dorsal
    1. envoi à l'Analyse des données, téléchargement de données au format structuré CSV, extraction pour l'apprentissage automatique
  2. Analyse des données, téléchargement de données au format structuré CSV, extraction pour l'apprentissage automatique
    1. retour au Base de données, Stockages Minio, Authentification de l'utilisateur, Élément dorsal
    2. envoi à l'Administrateur de données 1
    3. envoi à l'Administrateur de données 2
    4. envoi à l'Administrateur de données 3
  3. Administrateur de données 1
    1. retour à l'Analyse des données, téléchargement de données au format structuré CSV, extraction pour l'apprentissage automatique
    2. envoi à l'Approche participative 1
  4. Administrateur de données 2
    1. retour à l'Analyse des données, téléchargement de données au format structuré CSV, extraction pour l'apprentissage automatique
    2. envoi à l'Approche participative 2
  5. Administrateur de données 3
    1. retour à l'Analyse des données, téléchargement de données au format structuré CSV, extraction pour l'apprentissage automatique
    2. envoi à l'Approche participative 3
  6. Approche participative 1
    1. retour à l'Administrateur de données 1
    2. envoi à l'Utilisateurs
  7. Approche participative 2
    1. retour à l'Administrateur de données 2
    2. envoi à l'Utilisateurs
  8. Approche participative 3
    1. retour à l'Administrateur de données 3
    2. envoi à l'Utilisateurs
  9. Utilisateurs
    1. retour à l'Approche participative 1
    2. retour à l'Approche participative 2
    3. retour à l'Approche participative 3

La figure 1 peut être projetée dans trois sections de base :

Élément dorsal

Les tableaux ont été enregistrés dans une base de données SQLite, un système de gestion de base de données relationnel (SGBDR) contenu dans une bibliothèque C. Contrairement à d'autres systèmes de bases de données, le SGBDR n'a pas besoin d'être configuré ou installé pour être utilisé. Les données y sont stockées dans des tableaux comparables à ceux d'autres SGBDR, comme MySWL ou PostgreSQL, mais il nécessite moins de mémoire et d'espace sur le disque dur que ces derniers. Les bases de données SQLite peuvent être utilisées pour des applications allant de petits projets à un seul utilisateur à de grandes applications Web distribuées avec des millions d'utilisateurs simultanés. Les administrateurs des données obtenues par approche participative peuvent y accéder dans un format structuré. En outre, l'application authentifiera certains utilisateurs parmi les administrateurs ou les développeurs de l'application pour en gérer la sécurité et les fonctionnalités. Voici le schéma utilisé pour ce projet :

Schéma utilisé pour une application de collecte par approche participative
Figure 2 : Schéma utilisé pour une application de collecte par approche participative

Il y a trois tableaux dans la base de données. Le premier est le tableau des utilisateurs où sont conservés les renseignements des utilisateurs à des fins d'authentification. Il s'agit d'un tableau temporaire qui sera utilisé pendant la phase d'élaboration pour vérifier l'authentification mais, dans l'avenir, il sera remplacé par le répertoire actif d'Azure de Statistique Canada. Le deuxième tableau est celui de la collecte par approche participative où seront conservés le nom de l'application d'approche participative, et les données du questionnaire qui comprendront toutes les questions et les renseignements de l'interface utilisateur. Il sera apparié à un utilisateur ayant des droits d'administrateur de données. Enfin, le troisième tableau est celui des réponses. Il contiendra toutes les soumissions et réponses de l'utilisateur participant.

  • UTILISATEURS
  • ID_de_l'utilisateur : BIGINT (20)
  • Administrateur : BOOLEAN
  • Prénom : VARCHAR(50)
  • Nom_de_famille : VARCHAR(50)
  • ID_du_courriel : VARCHAR(50)
  • Compte_créé_le : DATEHEURE
  • APPROCHE PARTICIPATIVE
  • ID_du_projet_d'approche_participative : BIGINT(20)
  • Nom_du_projet_d'approche participative : VARCHAR(20)
  • Contenu_du_questionnaire : JSON
  • ID_de_l'utilisateur : BIGINT(20)
  • RÉPONSES
  • ID_de_l'utilisateur : BIGINT(20)
  • Réponse : TEXTE
  • Créé_le : DATEHEURE
  • Mis_à_jour_le : DATEHEURE
  • État : TEXTE

Générateur de projets d'approche participative

Le générateur de projets d'approche participative est une fonction qui comprend les interfaces existantes avec des modèles de conception qui peuvent être utilisés pour générer des applications de collecte par approche participative selon les cas d'utilisation. Les administrateurs de données peuvent utiliser le générateur de projets d'approche participative à partir de l'application elle-même pour générer des questionnaires sans écrire de code. Ces modèles personnalisés peuvent alors être hébergés et configurés dans l'application par les administrateurs de données. L'idée est de permettre aux utilisateurs de créer et d'héberger de nombreuses pages de collecte par approche participative à l'aide d'une application commune.

Élément frontal

La dernière fonctionnalité de l'application est l'élément frontal. Il s'agit de l'interface d'interaction entre l'utilisateur et le système. Il comprend les éléments graphiques tels que les boutons, les images, les menus et les questionnaires qui permettent aux utilisateurs de réaliser les tâches dans l'application. L'élément frontal offre également un repère visuel pour guider les utilisateurs dans leurs tâches. L'objectif d'un élément frontal bien conçu est d'aider les utilisateurs à comprendre la manière dont ils peuvent utiliser l'application et atteindre rapidement leurs objectifs. Par l'intermédiaire du système frontal, les utilisateurs finaux qui contribueront à une ou plusieurs applications d'approche participative pourront soumettre des données utiles non structurées aux fins d'analyse plus poussée.

Page d'accueil de l'application
Figure 3 : Page d'accueil de l'application.

La page d'accueil de l'application montre les différents types de projets d'approche participative qui ont été créés dans celle-ci. On y retrouve l'approche participative pour les aliments, les reçus d'épicerie, les images satellitaires, les cultures et les fichiers PDF, ainsi que la mise à l'essai de l'approche participative.

Texte de l'image

Tous les projets d'approche participative

  1. Approche participative pour les aliments
  2. Approche participative pour les reçus
  3. Approche participative pour les images satellitaires
  4. Approche participative pour les cultures
  5. Approche participative pour les PDF
  6. Mise à l'essai de l'approche participative
Page du générateur de projets d'approche participative
Figure 4 : Page du générateur de projets d'approche participative.

Cette page de l'application permet aux clients de créer un questionnaire pour la collecte de données par approche participative, grâce à la fonction glisser-déposer. Du côté droit de la fenêtre figure la liste des différentes composantes de l'application, lesquelles peuvent être glissées vers la gauche et réarrangées selon le format du questionnaire d'approche participative. Les étiquettes peuvent être modifiées pour mieux décrire les données qui seront recueillies au moyen du champ en question.

Page de sortie du projet d'approche participative
Figure 5 : Page de sortie du projet d'approche participative

Une fois le questionnaire créé au moyen du générateur de projet d'approche participative, un lien sera créé qui pourra être utilisé par les participants au projet pour transmettre leurs données. L'image ci-dessus correspond à ce que les utilisateurs verraient comme page de sortie de l'approche participative pour les cultures. L'application offre l'option d'indiquer le nom de la culture ou de télécharger une image de la culture avant de cliquer sur Soumettre.

Défis potentiels

  • Sécurité : Une des plus grandes difficultés rencontrées lors de l'élaboration d'une application d'approche participative généralisée est d'assurer la sécurité de toutes les données et interactions des utilisateurs. Cela comprend la protection des renseignements personnels des utilisateurs.
  • Convivialité de l'interface utilisateur (IU) : Pour toute application d'approche participative, il est essentiel que l'interface utilisateur soit intuitive et attrayante. Or il peut être difficile de créer une IU attrayante pour les utilisateurs nouveaux et existants. Les concepteurs doivent s'assurer que les fonctionnalités sont faciles à utiliser, tout en veillant à ce qu'elles soient suffisamment puissantes et souples pour répondre à leurs besoins.
  • Mesures de contrôle de la qualité : Il est important de mettre en œuvre des mesures de contrôle de la qualité pour s'assurer que seuls les tâches et résultats de grande qualité sont diffusés. Ces mesures comprennent la vérification croisée des données soumises par les utilisateurs en temps réel (vérification des normes de qualité des images, de la grammaire, de la nature délicate des données, de l'extension des fichiers téléchargés, etc.). Comme cette application généralisée est utilisée pour recueillir des données en multiples formats, il faut développer un algorithme extrêmement rapide qui peut effectuer une vérification croisée des mesures de qualité susmentionnées et indiquer à l'utilisateur que les résultats téléchargés sont jugés acceptables au contrôle de qualité.

Conclusions

Nous avons expliqué comment il est possible de créer une application unique aux fins de la collecte par approche participative de différents types de données structurées et non structurées. Une telle application permettrait à une organisation d'explorer des données provenant de sources de rechange, et d'utiliser des méthodes novatrices pour recueillir les données et mettre au point de nouvelles méthodes. Elle nous permettrait également de mobiliser le public pour nous aider à mieux comprendre les difficultés en jeu aux étapes de la planification ou de la conception de nouveaux projets. La collecte par approche participative est une méthode moderne de collecte de données auprès de personnes qui souhaitent contribuer aux changements et participer à l'amélioration des statistiques. En combinant cette méthode avec les technologies de l'apprentissage automatique, nous pouvons créer de nouvelles solutions qui n'auraient pas été possibles auparavant, compte tenu du coût des données et de leurs limitations.

Rencontre avec le scientifique des données

Inscrivez-vous à la présentation Rencontre avec le scientifique des données

Si vous avez des questions à propos de mon article ou si vous souhaitez en discuter davantage, je vous invite à une Rencontre avec le scientifique des données, un événement au cours duquel les auteurs rencontrent les lecteurs, présentent leur sujet et discutent de leurs résultats.

Jeudi, 16 février
De 14 h à 15 h, HE
MS Teams – le lien sera fourni aux participants par courriel

Inscrivez-vous à la présentation Rencontre avec le scientifique des données.
À bientôt!

Abonnez-vous au bulletin d'information du Réseau de la science des données pour la fonction publique fédérale pour rester au fait des dernières nouvelles de la science des données.

RÉFÉRENCES

Statistics Canada. (2008). Approche participative : répercussions de la COVID-19 sur l'expérience de la discrimination des Canadiens fichier de microdonnées à grande diffusion, (site consulté le 6 janvier 2023).

Statistics Canada. (s.d.-a). Approche participative – Cannabis, version mise à jour le 22 janvier 2020, (site consulté le 6 janvier 2023).

Statistics Canada. (s.d.-b). Stratégie des données de Statistique Canada, version mise à jour le 16 août 2022, (site consulté le 6 janvier 2023).

Date de modification :

Célébrer les femmes et les filles dans le domaine des sciences : entrevue avec Mme Sevgui Erman (PH. D.)

Par : Ainsley Sullivan et Nashveen Mendes, Statistique Canada; Sevgui Erman, Conseil national de recherches Canada

Introduction

En 2030, les Nations Unies doivent présenter les réalisations relatives aux 17 objectifs de développement durable, dont l'égalité entre les sexes fait partie. Le 11 février marque la Journée internationale des femmes et des filles de science visant à promouvoir l'égalité entre les genres dans le domaine des sciences, des technologies, du génie et des mathématiques, et l'élimination des stéréotypes fondés sur le genre. Dans le cadre de la promotion de cette journée particulière, nous nous sommes entretenus avec Mme Sevgui Erman, femme éminente dans le domaine de la science des données, dont la carrière couvre plusieurs secteurs du domaine de la science des données, des technologies numériques et de l'analytique.

Mme Sevgui Erman est entrée au Conseil national de recherches Canada (CNRC) au début de 2022 et dirige des programmes et services de recherche dans les domaines de la vision artificielle, du traitement du langage naturel, de l'analyse avancée et de l'informatique quantique, entre autres. Son objectif est de faire progresser la recherche et l'innovation au Canada, grâce à l'accélération de la découverte, la promotion de la modélisation et des jumeaux numériques, de l'analyse de textes multilingues, de la sécurité et de la protection de la vie privée. Avant d'entrer au CNRC, Mme Erman était scientifique en chef des données et directrice principale de la Division de la science des données à Statistique Canada. Elle a dirigé la Stratégie de la science des données de l'organisme et lancé le Réseau de la science des données pour la fonction publique fédérale qui, à ce jour, compte plus de 3 000 membres. Mme Erman est titulaire d'un doctorat de l'université Paris-Sud en traitement de signal et commande des systèmes, deux domaines étroitement liés à l'intelligence artificielle (IA).

Madame Erman, comment en êtes-vous venue à vous intéresser à la science des données et qu'est-ce qui a suscité votre passion pour ce domaine?

La science des données a toujours été présente tôt dans ma carrière et mes études. J'ai souvent souhaité optimiser des processus et des produits grâce aux données et à la technologie. Mon doctorat, en particulier, portait sur la conception technique robuste. J'ai eu recours à la modélisation pour relever les paramètres de conception menant à l'optimisation des performances d'un produit en atténuant les pires dégradations de performances dues à des facteurs environnementaux, de fabrication ou autres. Aujourd'hui, en principe, nous appliquons une approche similaire aux découvertes de nouveaux matériaux grâce à l'IA, en recherchant avec efficacité l'espace des paramètres permettant de trouver une nouvelle conception optimale.

En 2005, j'ai obtenu un brevet en télécommunications optiques. Je suis particulièrement attachée à ce brevet, car cet algorithme a permis une amélioration substantielle des performances de système, accroissant ainsi la portée de la transmission du signal. Cet algorithme traitait des mégadonnées en temps réel et a été mis en œuvre sur plusieurs plateformes Nortel Optical Metro à l'époque. Cet événement a éveillé ma passion.

À StatCan, je me souviens des défis liés à la manipulation des données de lecteurs optiques. En 2017, StatCan composait avec des dizaines de millions d'enregistrements à traiter chaque semaine. Nous avons pu régler cet enjeu en ayant recours à l'IA. Je me souviens également de l'enthousiasme lors de la conférence C2 à Montréal en juin 2017, où j'ai pris conscience de l'émergence de l'écosystème dynamique de l'IA au Canada. La science des données était en passe de devenir un outil puissant. Récemment, j'ai collaboré à la rédaction d'un document publié dans le Harvard Data Science Review, qui décrit la façon dont la science des données permet l'innovation et soutient l'élaboration de produits statistiques pertinents et de confiance.

Je suis toujours passionnée par le travail dans ce domaine. La science des données demeure un domaine très dynamique et en constante évolution. Le développement récent du modèle ChatGPT d'OpenAI illustre la croissance de ce secteur et démontre à quel point il est formidable d'être dans une époque où nous pouvons interagir avec de puissantes technologies et contribuer à des solutions dans le monde réel.

Selon vous, quelles sont les réussites du gouvernement du Canada dans le domaine de la science des données? Quels sont les principaux obstacles au sein des ministères empêchant la progression de leurs capacités?

Je pense qu'une des réussites est de faire progresser la science avec détermination. Tout au long de la pandémie, la méthodologie de la science des données a soutenu la fourniture de statistiques actuelles et de grande qualité. Collectivement, notre travail en science des données se concentre sur la résolution de problèmes concrets et l'atteinte de résultats pratiques. À StatCan, la science des données sert à soutenir la création de nouveaux produits et à permettre une prestation de services efficace grâce à l'automatisation. À titre d'exemple, extraire des renseignements de documents en format PDF et en d'autres formats peut prendre beaucoup de temps et StatCan a recours à des techniques de science des données pour automatiser ce processus d'extraction de renseignements. Un autre exemple est l'utilisation de la science des données en construction et en agriculture, afin de détecter le début de la construction de bâtiments ou de déterminer les superficies des serres à partir de l'imagerie satellite ou cartographique. L'objectif à long terme dans ces cas est de remplacer, en partie, une enquête existante et de réduire le fardeau de réponse.

Au CNRC, la science des données sert à contribuer à de nouvelles connaissances et propriétés intellectuelles, à la croissance économique et à un avenir plus sain pour le Canada. De nouvelles méthodes sont utilisées, par exemple, en bioinformatique pour la découverte de médicaments qui interrompent la croissance du cancer ou l'élaboration de diagnostics présymptomatiques de maladies liées à l'âge, comme la démence. La vision artificielle sert à la surveillance automatique de risques en matière d'ergonomie et de fatigue dans le secteur de la fabrication de pointe, ainsi que l'imagerie en temps réel dans le cadre de l'impression 3D de la fabrication additive volumétrique.

En matière d'obstacles, j'estime qu'il faut en faire plus pour accéder aux talents. Du fait de l'expansion de l'IA dans l'ensemble des secteurs d'activités, l'accès aux scientifiques des données et aux ingénieurs de données reste limité.

Il ne s'agit pas d'un blocage, mais d'un défi. Nous devons augmenter plus rapidement les rendements. Dans ce contexte, la collaboration est primordiale; nous ne pouvons pas faire cela seuls. Nous devons travailler avec d'autres innovateurs, le milieu universitaire, les entreprises et les partenaires internationaux. Au CNRC, par exemple, cela se fait par l'intermédiaire de réseaux pancanadiens portant sur des programmes de défis et par l'entremise de centres de collaboration dans les universités canadiennes. Nous travaillons de concert pour trouver des solutions créatives, pertinentes et durables en vue de résoudre les défis canadiens.

Il est également important de se concentrer vivement sur l'infrastructure de calcul, afin d'assurer de bons résultats au Canada. Les organisations continuent de progresser sur ce front, comme dans les domaines du développement de capacités infonuagiques et des grappes sur site. Nous avons besoin d'une infrastructure évolutive qui puisse soutenir des collaborations multipartites entre organisations.

Image de Sevgui Erman
Description : Image de Sevgui Erman

Texte dans l'image : sortez de votre zone de confort. Cela est important, car cela vous pousse à apprendre et, surtout, à accroître votre contribution personnelle.

Sevgui Erman, Directrice exécutive, Centre de recherche en technologies numériques, Conseil national de recherches Canada

En matière d'avenir, quelles occasions ou quels défis éventuels voyez-vous dans le domaine de la science des données au Canada?

Nous vivons une période palpitante et des occasions existent pour créer un meilleur avenir pour l'humanité. Dans le cas de la préservation de la santé de l'océan, par exemple, nous pouvons utiliser l'IA pour modéliser la contamination par des éléments pathogènes ou la visionique pour protéger et suivre les baleines. Au Canada, nous avons la possibilité de tirer parti de la diversité et de fournir aux organisations des perspectives uniques et des solutions créatives. Les équipes de la science des données sont d'excellents exemples de groupes hétérogènes en raison de la nature multidisciplinaire du travail. J'en ai été témoin à StatCan et j'en suis également témoin au CNRC. En technologies numériques, par exemple, des chercheurs ayant une formation en physique ont recours aux méthodes de traitement des signaux pour les recherches en biologie des systèmes aux fins de conception de nouvelles molécules et de nouveaux médicaments. Notre travail en synthèse vocale de langues autochtones rassemble une équipe diversifiée comprenant des chercheurs de collectivités autochtones. Leurs résultats démontrent à quel point la diversité contribue à l'innovation. Je pense qu'il s'agit d'une approche gagnante lors de l'établissement d'équipes : mettre sur pied des équipes diversifiées dont les antécédents professionnels sont variés, tout comme les origines, les cultures et les genres, ainsi que les personnes vivant avec un handicap, qui peuvent trouver des réponses uniques à des problèmes complexes.

L'IA éthique doit être au centre de notre travail, afin de fournir des solutions n'entraînant aucune discrimination, mais réduisant les préjugés. Il est important que les scientifiques des données passent en revue les résultats selon divers angles, afin de cerner d'éventuels préjudices et garantir les avantages pour la population canadienne. La transparence et la responsabilité vont de pair. Au Canada, des progrès substantiels ont été réalisés grâce à la directive du Secrétariat du Conseil du Trésor sur la prise de décisions automatisées. Les lignes directrices de StatCan concernant la qualité et l'apprentissage automatique sont un excellent outil pour les praticiens des données. Le projet de loi 27 récemment déposé sur le plan de mise en œuvre de la Charte du numérique permet de faire progresser l'engagement du Canada en matière d'IA responsable. Au CNRC, nous mettons sur pied un programme visant à faire progresser davantage les méthodes de transparence et d'explication, ainsi que la recherche en technologies de protection de la vie privée qui permettent de travailler sur des sources de données de nature plus délicates.

Quel conseil donneriez-vous aux personnes souhaitant poursuivre une carrière en science des données?

Maintenez le facteur humain au centre de tout ce que vous faites, votre équipe, vos collègues, vos partenaires. C'est ce qui compte le plus. L'écosystème au sein duquel vous évoluez détermine l'incidence que vous pouvez avoir. Le travail d'équipe est essentiel. Je suis très reconnaissante des occasions dont j'ai pu profiter et je continue à travailler avec des équipes et des collègues talentueux, intelligents et incroyables qui s'engagent à faire progresser la science et à créer une incidence positive pour la société.

Je crois également que des conversations directes et honnêtes sont un élément clé de notre réussite. Rien n'est plus précieux qu'une discussion ouverte, dès le départ, sur les défis potentiels et les risques dans toute entreprise et tout travail en commun, afin de trouver des solutions utiles et de tirer parti des expériences antérieures et de générer de nouvelles idées.

Mon conseil aux femmes en particulier est que même si la science des données est un domaine majoritairement masculin, les femmes devraient tout de même s'y investir. Leurs diverses perspectives et expériences de vie contribuent à un environnement plus riche, générant de nouvelles idées et favorisant la créativité. Je pense que nous avons besoin de sensibiliser les femmes aux occasions qui existent pour elles et j'encourage les filles à poursuivre des carrières et à aller jusqu'au bout de leur intérêt dans le domaine des sciences, des technologies, du génie et des mathématiques.

Au fil des années, quelle grande leçon (personnelle, pédagogique ou professionnelle) vous vient en tête que vous pourriez transmettre à nos lecteurs?

J'aimerais vous faire part de deux leçons. La première, c'est de sortir de sa zone de confort. Cela est important, car cela vous pousse à apprendre et, surtout, à accroître votre contribution personnelle. On peut commencer par se servir d'un nouvel outil, travailler dans un nouveau domaine spécialisé, utiliser un nouvel algorithme. Ce sont toutes des occasions de croissance et des éléments essentiels pour travailler dans un environnement à rythme rapide. J'ai travaillé dans les secteurs public et privé ainsi que dans le milieu universitaire, dans les domaines des télécommunications, de la production statistique et des technologies de l'information. À chaque étape de ce parcours, j'étais ouverte à l'idée d'apprendre des choses différentes et j'ai pu réellement apporter une contribution.

Chacune de ces expériences a contribué à me façonner en tant que professionnelle et à développer mon style de leadership. Elles m'ont permis d'avoir une écoute empathique, d'être inclusive et de rechercher des solutions consensuelles.

La deuxième leçon, c'est d'être motivée, de prendre des risques et de les assumer. En fait, c'est ce que de nombreux chercheurs sont invités à faire tôt dans leur carrière, lorsqu'ils utilisent de nouvelles technologies et travaillent pour faire évoluer la science. Je recommande une publication qui m'a inspirée lors de la création de l'Accélérateur de la science des données en 2017 et qui s'intitule The Lean Startup par Eric Ries. Ce livre fournit des conseils pratiques pour une expérimentation scientifique rapide intégrée au cycle de vie du développement de produits, en partant du principe que l'on puisse créer une « jeune entreprise » dans toute organisation ou tout environnement.

Avez-vous des mots inspirants à transmettre aux jeunes scientifiques des données?

Je pense qu'il est important d'être reconnaissant pour les petites choses qui nous rendent heureux. Il nous revient de faire de la place pour ces moments dans nos vies. Il y a trois ans, j'ai reçu un diagnostic de cancer du sein, qui a été décelé tôt. J'ai profité d'un excellent soutien médical ainsi que d'un soutien formidable de mes collègues. J'avais aussi ma famille aimante à mes côtés et j'ai donc été reconnaissante qu'une telle expérience s'avère positive. Le cancer m'a fait voir le monde sous un autre angle et m'a permis, en fait, de me concentrer sur ce qui compte le plus. J'ai cessé de m'inquiéter à savoir si j'étais bien équilibrée sur tous les fronts. J'ai plutôt appris à me faire une idée précise de ce à quoi je voulais consacrer du temps. Mon conseil est d'avoir le courage de ne pas entrer dans un quelconque moule et d'accepter d'être « en déséquilibre ». Je recommande également le livre Off Balance de Matthew Kelly.

Voici donc mes mots d'encouragement pour les jeunes scientifiques des données. Quelle est votre passion? Qu'est-ce qui vous stimule et qu'est-ce qui vous fait vraiment rêver? Je vous encourage à rêver grand, car votre passion est votre carburant. Vous faites partie de notre avenir. Vous apportez une nouvelle énergie et votre travail permettra la livraison de projets qui feront progresser la science et l'innovation. Par conséquent, autorisez-vous à tout bousculer et à être « en déséquilibre ».

Conclusion

Depuis mars 2022, Mme Erman dirige les programmes de recherche en technologies numériques, en se concentrant sur l'accélération de la découverte scientifique et l'innovation dans les domaines de la santé, de la fabrication de pointe, de l'économie bleue et de l'informatique quantique. Mme Erman est enthousiaste à l'idée de continuer à collaborer avec ses collègues, alors qu'ils utilisent la science des données pour créer une incidence significative au Canada et dans le monde.

Abonnez-vous au bulletin d'information du Réseau de la science des données pour la fonction publique fédérale pour rester au fait des dernières nouvelles de la science des données.

Date de modification :

Modélisation du contexte à l'aide de transformateurs : reconnaissance des aliments

Par : Mohammadreza Dorkhah, Sayema Mashhadi et Shannon Lo, Statistique Canada

Introduction

Notre équipe de chercheurs de la Division de la science des données et du Centre de données sur la santé de la population (CDSP) de Statistique Canada a mené un projet de validation de principe permettant de distinguer des aliments dans des images et de chercher une autre façon de recueillir des données sur la nutrition.

Étant donné que ce projet était le premier du genre à Statistique Canada, les équipes qui ont participé à la création de cette validation de principe devaient utiliser exclusivement des ensembles de données d'images d'aliments accessibles au public. Par conséquent, nous avons constitué un ensemble de données définitif contenant des images et des étiquettes qui correspondaient aux aliments et aux boissons consommés par les Canadiens à partir de trois autres ensembles de données. L'ensemble de données qui en a résulté a servi à concevoir un modèle d'apprentissage profond de reconnaissance des aliments qui peut prédire 187 catégories différentes d'aliments ou de boissons et discerner plusieurs produits dans une seule image.

Le modèle d'apprentissage profond de reconnaissance des aliments s'appuie sur un transformateur de vision à la fine pointe de la technologie comme encodeur, appelé « transformateur de segmentation » (segmentation transformer, ou SETR), et un modèle image-texte multimodal pour la modélisation du contexte, appelé « module d'apprentissage de recettes » (Recipe Learning Module, ou ReLeM). Dans le cadre du projet, les membres de l'équipe du CDSP ont testé et vérifié manuellement le rendement des modèles SETR et ReLeM, que nous expliquerons plus loin dans le présent article.

Ensembles de données

Les trois ensembles de données publiques que nous avons utilisés pour concevoir notre ensemble de données définitif convenaient à notre objectif de segmentation sémantique au niveau des ingrédients pour les images d'aliments. Cependant, étant donné que chaque ensemble de données comporte un ensemble différent de catégories d'aliments, nous avons dû les mettre manuellement en correspondance avec des catégories dérivées d'un guide de nutrition (Valeur nutritive de quelques aliments usuels). Les figures 1, 2 et 3 montrent des exemples d'images et de leurs étiquettes pour chacun des trois ensembles de données. Les étiquettes sont des masques de segmentation d'images utilisés pour annoter chaque pixel et distinguer des éléments tels que l'eau, le pain et d'autres aliments.

FoodSeg103

  • 7,118 images (4,983 images d'entraînement, 2,135 images de validation
  • 102 catégories d'aliments
Exemple d'image et de résultat tirés de l'ensemble de données FoodSeg103
Figure 1 : Exemple d'image et de résultat tirés de l'ensemble de données FoodSeg103

Une image d'un gâteau et de fraises tranchées à gauche. L'image de sortie à droite représente la forme du gâteau et des fraises dans leurs propres couleurs.

Résultat tirés de l'ensemble de données FoodSeg103
Couleur Nom de Colour Catégorie initiale Guide de nutrition
L'arrière-plan de la cellule du tableau est coloré "Saumon clair" Saumon clair Gâteau Gâteau
L'arrière-plan de la cellule du tableau est coloré "Magenta" Magenta Fraise Fraise

UECFoodPIX

  • 10,000 images (9,000 images d'entraînement, 1,000 images de validation)
  • 102 catégories d'aliments
Exemple d'image et de résultat tirés de l'ensemble de données UECFoodPIX
Figure 2 : Exemple d'image et de résultat tirés de l'ensemble de données UECFoodPIX.

Une image d'aliments composée de saumon, d'une omelette, de riz, d'une soupe et d'autres aliments à gauche. L'image de sortie à droite représente les formes des images d'aliments dans leurs couleurs correspondantes.

Résultat tirés de l'ensemble de données FoodSeg103
Couleur Nom de Colour Catégorie initiale Guide de nutrition
L'arrière-plan de la cellule du tableau est coloré "Lime" Lime Autres Autres
L'arrière-plan de la cellule du tableau est coloré "Bleu royal" Bleu royal Riz mélangé Céréales, riz
L'arrière-plan de la cellule du tableau est coloré "Bleu ardoise" Bleu ardoise Soupe de miso Soupe
L'arrière-plan de la cellule du tableau est coloré "Bleu ardoise moyen" Bleu ardoise moyen Boisson Boisson
L'arrière-plan de la cellule du tableau est coloré "Brique de feu" Brique de feu Saumon grillé Poisson
L'arrière-plan de la cellule du tableau est coloré "Lime" Lime Autres Autres

MyFoodRepo

  • 58,157 images (54,392 images d'entraînement, 946 images de validation et 2,819 images d'essai)
  • 323 catégories d'aliments
  • Nous avons utilisé des techniques de raffinement pour pallier le problème lié aux masques grossiers.
Exemples d'images tirés de l'ensemble de données MyFoodRepo
Figure 3 : Exemples d'images tirés de l'ensemble de données MyFoodRepo.

Une image d'aliments composée de pâtes à la crème, garnies de persil et de tomates à gauche. Deux images de sortie à droite représentent les formes des images d'aliments dans leurs couleurs correspondantes, l'une pour le masque initial et l'autre pour le masque raffiné.

l'ensemble de données MyFoodRepo.
Couleur Nom de Colour Catégorie initiale Guide de nutrition
L'arrière-plan de la cellule du tableau est coloré "Bleu acier clair" Bleu acier clair Sauce à la crème Sauce
L'arrière-plan de la cellule du tableau est coloré "Violet" Violet Persil Persil
L'arrière-plan de la cellule du tableau est coloré "Saumon foncé" Saumon foncé Tomate Tomate

Certaines catégories se chevauchent dans chaque ensemble de données étiquetées et ont été combinées en une seule dans notre ensemble de données définitif. Après la suppression de quelques étiquettes en raison du nombre insuffisant d'exemples d'images et après le regroupement d'autres étiquettes afin d'obtenir des groupes cohérents de types d'aliments similaires, 187 types différents d'aliments et de boissons ont été établis au total.

Segmentation d'images

La segmentation d'images constitue la base de nombreuses tâches de vision par ordinateur en aval, comme la détection d'objets et la classification d'images. C'est une méthode qui consiste à diviser une image en sous-groupes. Cette division s'effectue habituellement en fonction du contour ou des limites visibles des objets dans une image afin d'en réduire la complexité. La segmentation peut également signifier l'attribution d'étiquettes à chaque pixel d'une image dans le but de définir les éléments importants. La segmentation d'images a plusieurs utilités dans les domaines des véhicules autonomes, de l'analyse d'images médicales et d'images satellites, de la vidéosurveillance et d'autres tâches de reconnaissance et de détection. La segmentation d'images est également utilisée en imagerie médicale, comme l'indique un récent article du Réseau de la science des données intitulé « Segmentation d'images en imagerie médicale ». Les modèles de segmentation d'images basés sur un réseau neuronal contiennent presque toujours un encodeur et un décodeur. L'encodeur sert à l'apprentissage de la représentation des caractéristiques, et le décodeur sert à la classification en pixels des représentations des caractéristiques.
Trois grands types de techniques de segmentation d'images sont utilisés couramment dans le domaine de la vision par ordinateur :

  • Segmentation sémantique : Elle permet d'associer chaque pixel d'une image à une étiquette de catégorie, comme une voiture, un arbre, un fruit ou une personne. Elle traite plusieurs objets de la même catégorie comme une seule entité.
  • Segmentation d'instance : Elle ne permet pas d'associer chaque pixel d'une image à une étiquette de catégorie. Elle traite plusieurs objets de la même catégorie en tant qu'instances individuelles distinctes, sans nécessairement reconnaître les instances individuelles. Par exemple, la voiture 1 et la voiture 2 sont représentées par des couleurs différentes dans une image.
  • Segmentation panoptique : Elle permet de combiner les concepts de segmentation sémantique et de segmentation d'instance, et d'attribuer deux étiquettes à chaque pixel d'une image, à savoir l'étiquette sémantique et l'identificateur d'instance.
Exemple de segmentation sémantique, de segmentation d'instance et de segmentation panoptique à partir d'une seule image d'entrée.
Figure 4 : Exemple de segmentation sémantique, de segmentation d'instance et de segmentation panoptique à partir d'une seule image d'entrée.

Quatre images représentant une image d'entrée et trois types de segmentation utilisés sur l'image, à savoir la segmentation sémantique, la segmentation d'instance et la segmentation panoptique.

Pipeline de segmentation d'images d'aliments

Les modèles de segmentation sémantique ont été jugés appropriés pour notre modèle de reconnaissance des aliments. Cela s'explique principalement par la capacité du modèle à reconnaître le type de nourriture ou de boisson, puisque c'était le principal objectif de l'exercice. Les réseaux entièrement convolutifs (REC) sont des choix populaires pour la segmentation sémantique. Cependant, les modèles d'encodeurs basés sur la résolution spatiale des images d'entrée par sous-échantillonnage du REC entraînent la création de mises en correspondance des caractéristiques à basse résolution. Dans l'article intitulé « Rethinking Semantic Segmentation from a Sequence-to-Sequence Perspective with Transformers », les auteurs ont proposé un nouveau modèle de segmentation basé sur l'architecture de transformateur pur, appelé « transformateur de segmentation » (SEgmentation TRansformer, ou SETR). Un encodeur SETR traite une image d'entrée comme une séquence de morceaux d'image représentés par la vectorisation de morceaux d'image acquis, puis transforme la séquence au moyen de la modélisation par autoattention globale pour l'apprentissage de la représentation discriminante des caractéristiques. Ce modèle a fourni davantage de contexte pour la tâche de reconnaissance des aliments à l'aide du module ReLeM, comme l'ont proposé les auteurs du rapport intitulé « A Large-Scale Benchmark for Food Image Segmentation ». Les modules SETR et ReLeM sont expliqués plus en détail ci-dessous.

Figure 5 : Diagramme du pipeline de segmentation d'images d'aliments. Source : A Large-Scale Benchmark for Food Image Segmentation.
Figure 5 : Diagramme du pipeline de segmentation d'images d'aliments. Source : A Large-Scale Benchmark for Food Image Segmentation.

Le diagramme du pipeline de segmentation d'images d'aliments montre l'interaction entre le module d'apprentissage de recettes et le module de segmentation d'images.

Texte dans l'image : Encodeur de vision, ec perte cosinoïdale/perte sémantique ec, Encodeur de texte, Ingrédients : ½ tasse A.1. Marinade classique, 1 bifteck de surlonge désossé. Instructions : Verser la marinade sur le bifteck dans un sac en plastique refermable. Sceller le sac : retourner le sac pour enrober uniformément le bifteck de marinade. Encodeur de vision (partage des poids), Décodeur de vision

Encodeur de vision (partage des poids) à Décodeur de vision

Module d'apprentissage de recettes

Le module ReLeM fournit des modèles contenant des renseignements contextuels sur les ingrédients tirés de recettes de cuisine. Dans l'article intitulé « A Large-Scale Benchmark for Food Image Segmentation », les auteurs décrivent le module ReLeM comme [traduction] « une approche de préentraînement multimodal […] qui permet de doter de manière explicite un modèle de segmentation de connaissances riches et sémantiques sur les aliments ».

Le module a été entraîné à l'aide d'un ensemble de données Recipe1M (voir Learning Cross-Modal Embeddings for Cooking Recipes and Food Images). Cet ensemble de données contient plus de 1 million de recettes et 800 000 images d'aliments. En étant exposé à des recettes et à des images d'aliments, le module ReLeM forme des associations entre les ingrédients, un peu comme les humains comprennent quels aliments se trouvent généralement ensemble.

Lors de l'entraînement d'un modèle de classification des images d'aliments, il est important d'utiliser des recettes comme données d'entraînement. Cela permet au module de créer des associations entre des ingrédients qui peuvent varier visuellement lorsqu'ils sont préparés différemment. Le module ReLeM apprend également les instructions de préparation des aliments dans des recettes. Par exemple, les aubergines en purée diffèrent visuellement des aubergines frites. En revanche, il peut y avoir différents ingrédients qui se ressemblent, comme le lait et le yogourt. Le module ReLeM a établi des associations entre les ingrédients et les aliments qui apparaissent souvent ensemble, ce qui est utile dans ces scénarios. Par exemple, si un verre contenant une substance blanche et une assiette de biscuits aux pépites de chocolat figurent dans l'image, le module ReLeM pourrait déduire que la substance blanche est plus probablement du lait que du yogourt, puisqu'il y a une association connue entre le lait et les biscuits. Le module ReLeM s'appuie sur la perte sémantique et cosinoïdale pour déterminer la similitude entre les aliments.

Modèle de transformateur de segmentation

Les transformateurs et les modèles d'autoattention ont permis d'améliorer la compréhension et le rendement du traitement du langage naturel. Les modèles GPT-3 (transformateur génératif préentraîné de troisième génération) et BERT (représentations de l'encodeur bidirectionnel à partir de transformateurs), très populaires dans le domaine du traitement du langage naturel, sont basés sur l'architecture du transformateur. La même architecture peut être utilisée pour les images, mais cet apprentissage de séquence à séquence suppose des séquences 1D en entrée. Le modèle d'encodeur SETR de pointe prétraite les images 2D avant de les alimenter dans l'architecture du transformateur. L'image 2D est décomposée en petits morceaux de taille fixe, puis chaque morceau est converti en une séquence 1D. Cette séquence de morceaux d'image est représentée par la vectorisation de morceaux d'images acquis dont il a été question dans le document mentionné précédemment sur la segmentation sémantique. Une fois cette séquence de vectorisation des caractéristiques fournie à l'entrée, le transformateur apprend la représentation discriminante des caractéristiques qui sont retournées à la sortie de l'encodeur SETR. Le modèle de l'encodeur est plus complexe que le modèle du décodeur, puisqu'il doit apprendre et produire une représentation de caractéristiques complexes pour différencier chaque catégorie avec précision.

Figure 6 : Encodeur SETR tiré de l'article « Rethinking Semantic Segmentation from a Sequence-to-Sequence Perspective with Transformers »
Figure 6 : Encodeur SETR tiré de l'article « Rethinking Semantic Segmentation from a Sequence-to-Sequence Perspective with Transformers »

Le diagramme illustre la conception du transformateur de segmentation (SETR).

Texte dans l'image : Vectorisation des morceaux d'image et Vectorisation de positions, Normalisation de la couche, Attention à plusieurs têtes, Perceptron multicouche. Projection linéaire, 24x, Couche du transformateur, Décodeur

Un décodeur est ensuite utilisé pour récupérer la résolution d'image d'origine au moyen d'une classification à l'échelon des pixels. Dans notre cas, nous avons utilisé le décodeur d'agrégation de caractéristiques à plusieurs niveaux (multi-level feature aggregation, ou MLA). Le décodeur MLA accepte les représentations des caractéristiques de chaque couche du SETR. Toutes ces représentations de caractéristiques ont en commun la même résolution (aucune perte de résolution comme au moyen d'un REC) et passent par une série de remodelage et de suréchantillonnage pour obtenir les étiquettes de pixels.

Figure 7 : Décodeur MLA tiré de l'article « Rethinking Semantic Segmentation from a Sequence-to-Sequence Perspective with Transformers »
Figure 7 : Décodeur MLA tiré de l'article« Rethinking Semantic Segmentation from a Sequence-to-Sequence Perspective with Transformers »

Le diagramme illustre l'agrégation des caractéristiques à plusieurs niveaux. Plus précisément, une variante de type SETR-MLA.

Texte dans l'image : Z24, Z18, Z12, Z6, remodelage-conv, conv-conv-4x, conv-4x

Résultats

Voici les résultats de validation fondés sur les mesures de la moyenne de l'intersection sur l'union (MIoU), de l'exactitude moyenne (mAcc) et l'exactitude globale (aAcc) :

Voici les résultats de validation fondés sur les mesures de la moyenne de l'intersection sur l'union (MIoU), de l'exactitude moyenne (mAcc) et l'exactitude globale (aAcc) :
Mesure Valeur
MIoU 40,74 %
mAcc 51,98 %
aAcc 83,21 %

Résultats de tests basés sur les mesures de la précision, du rappel et du score F1 :

Résultats de tests basés sur les mesures de la précision, du rappel et du score F1 :
Mesure Valeur
Précision 81,43 %
Rappel 80,16 %
Score F1 80,79 %

Sans l'initialisation de l'encodeur de vision selon les poids ReLeM entraînés :

Figure 8 : Exemple d'un masque prédit sans l'initialisation de l'encodeur de vision selon les poids ReLeM entraînés
Figure 8 : Exemple d'un masque prédit sans l'initialisation de l'encodeur de vision selon les poids ReLeM entraînés.

Une image de muffins à gauche et un exemple d'un masque prédit à droite sans initialisation de l'encodeur de vision selon les poids ReLeM entraînés.

Exemple d'un masque prédit sans l'initialisation de l'encodeur de vision selon les poids ReLeM entraînés.
Couleur Nom de Colour Catégorie prédite
L'arrière-plan de la cellule du tableau est coloré "Jaune Vert" Jaune Vert Pain, grains entiers (blé entier)
L'arrière-plan de la cellule du tableau est coloré "Turquoise" Turquoise Thé
L'arrière-plan de la cellule du tableau est coloré "Saumon foncé" Orchidée Pomme
L'arrière-plan de la cellule du tableau est coloré "Orchidée moyenne" Orchidée moyenne Patate douce
L'arrière-plan de la cellule du tableau est coloré "Magenta" Magenta Boulette de pâte (dumpling)

Au moyen de l'initialisation de l'encodeur de vision selon les poids ReLeM entraînés :

Figure 9 : Exemple d'un masque prédit au moyen de l'initialisation de l'encodeur de vision selon les poids ReLeM entraînés.
Figure 9 : Exemple d'un masque prédit au moyen de l'initialisation de l'encodeur de vision selon les poids ReLeM entraînés.

Une image de muffins à gauche et un exemple d'un masque prédit à droite au moyen de l'initialisation de l'encodeur de vision selon les poids ReLeM entraînés.

Exemple d'un masque prédit au moyen de l'initialisation de l'encodeur de vision selon les poids ReLeM entraînés.
Couleur Nom de Colour Catégorie prédite
L'arrière-plan de la cellule du tableau est coloré "Turquoise" Turquoise Gâteau
L'arrière-plan de la cellule du tableau est coloré "Vert foncé" Vert foncé Banane

Conclusion

Le modèle de reconnaissance des aliments permet de prédire avec exactitude plusieurs aliments et boissons figurant dans une image en moins d'une seconde, et il permet d'obtenir systématiquement de bons résultats avec certaines catégories, comme le pain. Cependant, il a plus de difficultés avec des catégories d'apparence semblable, comme le bœuf et l'agneau. Le rendement peut être amélioré en ajoutant plus de données étiquetées pour des catégories minoritaires, en effectuant une ronde supplémentaire de reclassification des aliments d'apparence semblable et en utilisant des techniques contre le déséquilibre des catégories.

Rencontre avec le scientifique des données

Inscrivez-vous à la présentation Rencontre avec le scientifique des données

Si vous avez des questions à propos de mon article ou si vous souhaitez en discuter davantage, je vous invite à une Rencontre avec le scientifique des données, un événement au cours duquel les auteurs rencontrent les lecteurs, présentent leur sujet et discutent de leurs résultats.

Mardi, le 17 janvier
14 h 00 à 15 h 00 HE
MS Teams – le lien sera fourni aux participants par courriel

Inscrivez-vous à la présentation Rencontre avec le scientifique des données. À bientôt !

Abonnez-vous au bulletin d'information du Réseau de la science des données pour la fonction publique fédérale pour rester au fait des dernières nouvelles de la science des données.

Date de modification :

Prévisions en matière de consommation d'énergie dans les collectivités éloignées du Nord canadien

Par : Alireza Rahimnejad Yazdi, Lingjun Zhou et Zarrin Langari, l'Accélérateur numérique, Ressources naturelles Canada; Ryan Kilpatrick, CanmetÉNERGIE Ottawa, Ressources naturelles Canada

Introduction

Ressources naturelles Canada (RNCan) aide les collectivités du Nord et des régions éloignées du Canada à effectuer la transition de l'énergie traditionnelle produite à partir de combustibles fossiles à l'énergie renouvelable et verte. La plupart de ces collectivités sont géographiquement isolées et alimentées par des génératrices à combustibles fossiles. Pour appuyer cette initiative, les chercheurs de RNCan devaient prévoir avec précision la consommation d'énergie annuelle de ces collectivités afin de déterminer le type d'énergie renouvelable qui serait le mieux adapté pour soutenir ces collectivités. Pour ce faire, ils ont utilisé des données historiques sur la consommation d'énergie par heure, ainsi que des données démographiques et météorologiques. En établissant un profil horaire type de consommation d'énergie pour n'importe quelle collectivité, nous pouvons raisonnablement estimer la consommation horaire d'énergie pour les collectivités qui ne disposent pas de données historiques.

Grâce aux données accessibles au public fournies par son client, CanmetÉNERGIE Ottawa (CE-O) de RNCan, l'équipe de l'Accélérateur numérique s'est concentrée sur l'analyse des données de consommation d'énergie de 11 collectivités éloignées situées dans la région du Nunavik, dans le nord du Québec. Les données ont été présentées selon un niveau de précision horaire pour les années 2013, 2014 et 2015. Étant donné que cette approche analytique repose sur la consommation d'énergie moyenne pour ces trois années disponibles, les données sur la consommation d'énergie d'une année donnée s'infiltrent donc dans le modèle utilisé pour faire une prédiction pour cette année, et cette fuite de données mine la validité de toute mesure de rendement effectuée.

Nous considérons que la consommation d'électricité dans les collectivités éloignées a une relation non linéaire avec des variables comme la météo, la population, l'âge et l'efficacité des appareils, l'âge du bâtiment et, dans le cas du chauffage électrique, avec les taux d'occupation et les habitudes. Cependant, comme la plupart des méthodes de prédiction traditionnelles ne comportent pas de mécanisme d'apprentissage, il est difficile de décrire la relation non linéaire entre la consommation d'électricité et les variables exerçant une influence, ce qui entraîne des prévisions à faible précision.

Notre analyse permettra de déterminer si les techniques d'apprentissage automatique (AA) peuvent produire une prédiction plus précise des charges électriques dans les collectivités éloignées par rapport à l'approche analytique de CE-O, ainsi que de déterminer quel type de techniques d'AA est le plus approprié pour cette application. Nous espérons également appliquer la technique d'AA choisie pour créer des profils typiques horaires de charge électrique synthétique produite par diesel à l'ensemble des collectivités éloignées pour lesquelles des données granulaires de consommation horaire d'énergie ne sont pas disponibles.
Avant d'effectuer l'analyse, nous avons supposé ce qui suit :

  • Les populations des collectivités demeurent constantes tout au long de l'année, ce qui signifie qu'en tout temps, une maison a le même nombre d'occupants et n'abrite pas de voyageurs hivernants, par exemple.
  • Il n'y a pas de fluctuations majeures de la température. Compte tenu de l'avènement du changement climatique, des phénomènes météorologiques extrêmes, comme de brèves périodes d'extrême chaleur ou d'extrême froid, pourraient conduire à une modélisation inexacte.
  • Il n'y a pas de changements majeurs dans les variables latentes qui pourraient contribuer à la consommation d'énergie qui ne sont pas incluses dans l'ensemble de données. Il s'agit d'une exigence très stricte, étant donné que nous ne savons pas quelles sont ces variables latentes.

Prétraitement des données et analyse exploratoire des données

Une analyse exploratoire des données (AED) a été effectuée pour étudier les données en découvrant des tendances, en repérant des anomalies et en vérifiant l'absence de certaines données à l'aide de statistiques sommaires et de représentations graphiques. Nous avons également cerné les caractéristiques typiques de la consommation d'énergie pour toute collectivité pendant l'AED afin d'aider à estimer la consommation d'énergie granulaire dans les collectivités qui ne disposent que de données sur la consommation d'énergie annuelle ou totale.

Divers modèles, comme la régression linéaire, LightGBM (light gradient-boosting machine), XGBoost, Theta Forecaster, Ensemble Forecaster, Auto-ARIMA, Auto-ETS, la prévision naïve, la transformation de Fourier rapide et les réseaux de neurones, ont été utilisés pour faire des prévisions et leurs performances ont été comparées.

Dans le cadre de la préparation des données, les données sur la population et la consommation d'énergie ont été combinées en calculant la consommation d'énergie par habitant. Ensuite, les données sur la consommation d'énergie par habitant ont été tracées au fil du temps. Les données sur la consommation d'énergie comportent trois composantes : les tendances, la saisonnalité et le bruit. On a supposé que les caractéristiques des données avaient une certaine puissance prédictive et on a donc choisi de les utiliser dans le modèle définitif.

Les renseignements sur la latitude et la longitude variaient trop peu pour fournir une contribution utile et ont été rejetés pour cette étape. Les représentations visuelles ont révélé les renseignements suivants :

Figure 1. L'axe des x pour les deux tracés ci-dessous correspond à la date et l'heure, la première heure étant minuit en date du 1er janvier 2013

Diagrammes à deux lignes illustrant la consommation d'énergie par habitant par rapport à la date et l'heure ainsi que la température par rapport à la date et l'heure. La consommation d'énergie par habitant connaît une baisse évidente durant les mois les plus chauds, comme le mois de juillet, et des sommets durant les mois les plus froids, comme en janvier. La température et la consommation d'énergie par habitant sont corrélées négativement.

Figure 2. Veuillez prendre note que l'axe des x ci-dessus représente l'heure, où minuit du 1er janvier 2013 est la première heure et 23 h du 31 décembre 2015 est la dernière heure.

Les calculs d'autocorrélation et d'autocorrélation partielle pour les données sur la consommation d'énergie par habitant. Les tracés d'autocorrélation et d'autocorrélation partielle montrent des sommets toutes les 24 heures, ce qui indique une forte corrélation toutes les 24 heures. Cela signifie qu'exactement la même heure d'une journée précédente et celle d'une journée en cours partagent des consommations d'électricité semblables.

Une période de trois ans comprend au total 26 280 heures. Tant l'autocorrélation (ACF) que l'autocorrélation partielle (PACF) montrent qu'il y a une forte corrélation toutes les 24 heures. Cela est logique parce que la consommation quotidienne d'énergie suit généralement une tendance répétitive. La PACF est l'ACF pour laquelle les corrélations intermédiaires ont été supprimées. Par exemple, la PACF du décalage 3 correspond à l'ACF du décalage 3 moins la PACF des décalages 1 et 2. L'autocorrélation et l'autocorrélation partielle dans les données des séries chronologiques (en anglais seulement) produisent une analyse détaillée de leurs différences. Grâce à la PACF, nous pouvons voir clairement que la consommation d'électricité est fortement corrélée avec sa propre valeur enregistrée 24 heures auparavant.

Figure 3. Une version agrandie des données historiques sur la consommation d'énergie. Ici, l'axe des x correspond à la date et l'heure, avec la précision des heures.

Une version agrandie de la consommation d'énergie par habitant par rapport à la date et l'heure. Nous pouvons voir un sommet dans la consommation environ toutes les 24 heures.

Voici un résumé des tendances que nous avons observées dans les images ci-dessus :

  • Il existe une relation inverse entre la température normalisée et la consommation d'énergie par habitant.
  • Il existe une faible tendance à la hausse de la consommation d'énergie, mais dans l'ensemble, il y a un modèle annuel répétitif.
  • En l'espace d'un an, l'utilisation d'électricité augmente pendant les mois froids et diminue pendant les mois chauds. Il convient de mentionner que l'ampleur de l'augmentation de l'électricité consommée pendant les mois froids et de sa diminution pendant les mois chauds diffère d'une collectivité à l'autre.
  • En l'espace d'une journée, la consommation d'énergie est plus élevée pendant les heures d'éveil que pendant les heures de sommeil, un sommet étant observé autour de midi. Il convient de mentionner que la valeur de pointe diffère d'une collectivité à l'autre.

Résultats

L'image suivante est une prévision fondée sur les réseaux de neurones. Les prévisions tirées d'autres algorithmes ont des apparences semblables.

Figure 4. L'axe des x représente les heures, à partir de minuit le 1er janvier 2013.

Une prévision simulée de la consommation d'énergie par habitant pour l'année suivante (en orange) comparée aux données réelles de la consommation d'énergie par habitant de l'année suivante (en bleu). Nous pouvons voir que la consommation d'énergie simulée correspond presque à la consommation d'énergie réelle.

Après avoir comparé le rendement de divers algorithmes avec l'erreur moyenne en pourcentage absolu (EMPA), nous avons obtenu les résultats indiqués dans le tableau ci-dessous.

Collectivité EMPA du réseau de neurones EMPA de LightGBM EMPA Linéaire EMPA Linéaire EMPA naïve Approche manuelle
2013 2014 2015
Inukjuak 7,1% 6,7% 6,5% 8,2% 7,7% 12,9% 7,5% 4,9%
Salluit 6,2% 6,8% 6,7% 6,7% 6,1% 7,7% 6,0% 5,0%
Quaqtaq 10,7% 8,8% 8,3% 11,5% 12,2% 16,1% 11,7% 5,7%
Aupaluk 7,9% 8,8% 8,8% 13% 7,8% 10,2% 9,5% 8,6%
Ivujivik 12,9% 14,9% 14,9% 14,9% 13,9% 14,3% 6,3% 6,3%
Kuujjuaq 4,4% 5,3% 5,4% 7,4% 5,4% 5,0% 4,7% 5,4%
Kangirsuk 8,1% 11,0% 10,8% 9,0% 8,8% 8,4% 8,4% 7,8%
Umiujaq 5,4% - - - - 10,9% 9,3% 7,1%
Kuujjuarapik 6,6% 4,8% 4,8% 4,9% 5,2% 98,9% 6,6% 7,4%
Kangiqsualujjuaq 7,9% 7,4% 7,5% 11,7% 7,1% 8,1% 9,0% 8,4%
Puvirnituq 6,2% - - - - 12,5% 7,5% 5,5%
  • Toutes les approches ci-dessus ont des procédures similaires. Nous avons d'abord effectué une séparation temporelle des données pour produire un ensemble de données d'essai et de données d'apprentissage. Ensuite, nous avons entraîné les modèles d'apprentissage automatique en utilisant les données d'apprentissage et mesuré le rendement au moyen de trois mesures différentes qui sont couramment utilisées pour les problèmes de régression : l'EMA (l'erreur moyenne absolue), la RCEQM (la racine carrée de l'erreur quadratique moyenne) et l'EMPA. Enfin, nous avons ajusté les hyperparamètres pour atteindre les meilleures performances pour chaque modèle.
  • Le modèle de réseau de neurones comporte quatre couches. Les trois premières couches ont 32 unités avec activation RELU (unité linéaire rectifiée) et la dernière couche a une unité avec activation linéaire. La fonction de perte et l'optimiseur sont les propagations EMQ (erreur quadratique moyenne) et RQM (racine quadratique moyenne), respectivement. Lors d'un arrêt anticipé, la perte de validation était utilisée pour arrêter l'entraînement et éviter le surapprentissage. Une EMAP de moins de 10 % a été atteinte dans 9 des 11 collectivités.
  • Pour les modèles de prévision LightGBM, linéaire et Theta, nous avons d'abord décomposé les données en supprimant la saisonnalité et la tendance pour arriver au résidu, puis avons entraîné le modèle en utilisant le résidu et inversé le processus pour arriver à une prédiction.
    • La différence :
      • LightGBM est un modèle basé sur un arbre de décision et permet un apprentissage rapide.
      • Le modèle linéaire est un modèle de régression linéaire et sa vitesse d'apprentissage est aussi rapide que celle du LightGBM.
      • Theta est un modèle de lissage exponentiel et son apprentissage prend un certain temps.
  • Pour les prévisions naïves, nous avons simplement déplacé la consommation d'énergie de l'année précédente et l'avons utilisée comme prédiction de la consommation d'énergie de l'année en cours.
  • La dernière colonne montre l'approche manuelle utilisée par CE-O qui illustre la différence entre les consommations d'énergie prévues et celles mesurées pour les années 2013, 2014 et 2015, respectivement. La raison pour laquelle il y a trois valeurs est liée à la façon dont fonctionne l'approche manuelle.

Voici nos observations fondées sur les résultats :

  • Dans plusieurs collectivités, les diverses approches et les divers modèles d'apprentissage automatique fournissent une précision semblable. Le modèle complexe de réseau de neurones n'est que légèrement meilleur; il ne donne pas des résultats nettement supérieurs à ceux de modèles plus simples comme LightGBM ou la régression linéaire.
  • Les prévisions naïves, c'est-à-dire l'utilisation du dossier de consommation d'énergie de l'année précédente pour la prévision de la consommation d'énergie de l'année en cours, peuvent donner un tout aussi bon résultat que tout autre modèle. Cela ne fonctionnerait pas si la tendance à la hausse était plus forte. Les prévisions naïves sont étonnamment difficiles à devancer. Cela est courant pour la prédiction des séries chronologiques et découle de l'observation qu'il existe une tendance annuelle répétitive évidente dans la consommation d'énergie.
  • Il existe d'autres algorithmes potentiellement utiles comme l'analyse de Fourier, MLCT (les réseaux de mémoire à long ou à court terme), Auto-ARIMA, mais ils sont tous inefficaces et coûteux en matière de calcul pour cerner les tendances reproductibles nécessaires pour produire des résultats significatifs. À un moment donné, les auteurs ont essayé d'utiliser Auto-ARIMA pour simuler la série chronologique, mais le processeur graphique de notre poste de travail spécialisé a planté après cinq heures et demie de calcul intense. Il y avait 260 G de mémoire vive qui étaient utilisés alors que l'UCT (unité centrale de traitement) fonctionnait à 100 %.

Ce que nous avons découvert

Comparativement à l'approche manuelle, les prévisions de l'AA et les prévisions naïves peuvent, en moyenne, obtenir des résultats qui sont de 2 % à 3 % supérieurs.

Le risque d'erreurs importantes découlant de l'approche manuelle (16,1 % et 98,9 %) est considérablement réduit. Les approches d'apprentissage automatique semblent être plus stables. Étant donné que les prévisions naïves peuvent être tout aussi efficaces qu'un algorithme d'apprentissage automatique, il serait sans doute plus efficace de considérer l'utilisation de la consommation d'énergie d'une année précédente comme notre prévision pour l'avenir. Cependant, nous devons nous assurer qu'il y a un modèle annuel reproductible dans les données en effectuant une AED approfondie.

L'objectif ultime est de créer un profil horaire «  typique  » de la consommation d'énergie pour les collectivités dont les seuls antécédents disponibles sont des variables externes, comme l'historique des données météorologiques. Par profil de consommation d'énergie «  typique  », nous entendons les résultats normalisés une fois que les variables externes sont données. Par exemple, si deux collectivités ont les mêmes données climatiques, elles auraient alors la même consommation d'énergie par habitant pour chaque heure de l'année. Nous n'avons pas pu atteindre cet objectif pour certaines raisons :

  • Nous remarquons que la consommation d'énergie par habitant s'affiche dans le même ordre de chiffres (entre 0,5 kW et 1,9 kW). Cependant, une personne moyenne de certaines collectivités utilise encore plus d'énergie que celles d'autres collectivités. Il sera difficile de créer un profil de consommation d'énergie «  typique  » pour un utilisateur moyen dans une collectivité «  typique  ». Une certaine normalisation pourrait être nécessaire.
  • Dans la collectivité d'Ivujivik, la consommation d'énergie pour l'année 2014 ne correspond pas aux tendances que nous avons déterminées en utilisant l'AED. Elle fluctue considérablement tout au long de l'année et ne correspond pas à la tendance de faible consommation d'énergie pendant les mois plus chauds et de forte consommation d'énergie pendant les mois plus froids. Une attention supplémentaire est nécessaire pour déterminer la raison pour laquelle cette anomalie existe.

L'avenir du présent projet

Le présent projet pourrait être élargi. Si nous décidons d'aller de l'avant, une nouvelle entente sera mise en place afin d'obtenir des données plus récentes auprès de collectivités plus diversifiées provenant d'un plus grand nombre de géolocalisations et de types de climat ou de régions climatiques, ainsi que pour recueillir des données plus détaillées et pour cerner les tendances universelles dans un plus grand nombre d'ensembles de données. Si un ensemble de données plus riche et plus diversifié était possible, nous tenterions d'élaborer de nouveaux modèles qui peuvent prédire la consommation d'énergie pour les collectivités qui ne disposent pas de dossiers sur la consommation d'énergie. Nous pourrions étudier la relation entre la consommation d'énergie et les variables externes.

Rencontre avec le scientifique des données

Inscrivez-vous à la présentation Rencontre avec le scientifique des données

Si vous avez des questions à propos de mon article ou si vous souhaitez en discuter davantage, je vous invite à une Rencontre avec le scientifique des données, un événement au cours duquel les auteurs rencontrent les lecteurs, présentent leur sujet et discutent de leurs résultats.

Mardi, 17 janvier
De 14 h à 15 h, HE
MS Teams – le lien sera fourni aux participants par courriel

Inscrivez-vous à la présentation Rencontre avec le scientifique des données.
À bientôt!

Abonnez-vous au bulletin d'information du Réseau de la science des données pour la fonction publique fédérale pour rester au fait des dernières nouvelles de la science des données.

Date de modification :