Que recèlent les données textuelles issues du web ? (What do text data from the Web have to hide ?) (2020)

Abstract: La collecte et l’usage opportunistes de données textuelles tirées du web sont sujets à une série de problèmes éthiques, méthodologiques et épistémologiques qui méritent l’attention de la communauté scientifique. Nous présentons des études empiriques de leur impact en linguistique et TAL centrées sur la forme (méthodes d’extraction des données) ainsi que sur le fond (contenu des corpus).

## introduction le web est fréquemment perçu comme un « réservoir indifférencié de textes à analyser » pour le tal @xcite et l'on peut affirmer sans risque que web et tal poursuivent leur « histoire commune » (op. cit.). les données issues du web y sont en effet omniprésentes, à la fois en tant qu'instantané d'un état de la langue, de données à analyser pour elles-mêmes, mais aussi de références destinées à construire des modèles de langue ou des ressources langagières. de la collecte au corpus, non seulement opportuniste @xcite mais également « prêt-à-utiliser », il n'y a souvent qu'un pas. le common crawl 1 notamment s'est imposé comme source majeure pour des tâches variées, de la traduction automatique neurale @xcite à la construction et (dans une situation optimale) à l'affinage de modèles de langue basés sur des techniques d'apprentissage profond nécessitant des données massives @xcite . cette évolution a conduit à des problèmes récurrents d'ordre éthique, à l'image du robot conversationnel tay lancé par microsoft en 2016 sur twitter et stoppé 16 heures après son entrée en fonction en raison de l'ampleur et de la gravité des messages racistes et sexistes « appris » et ensuite (re-)publiés par le robot 2 . de même, des modèles entraînés sur des données massives (d'origine contrôlée ou non) intègrent une série de biais sociétaux @xcite . malgré une certaine impression de facilité quant à la construction de corpus, les méthodes utilisant des corpus web nécessitent des dispositifs expérimentaux et des instruments ad hoc @xcite afin d'estimer leur qualité et leur adéquation aux tâches proposées. d'un point de vue épistémologique, la simple accumulation de données textuelles ne rend pas pour autant ce terrain intelligible et un retour analytique sur ces données s'avère nécessaire foot_0 . l'objet de cet article est de documenter et de commenter des problèmes liés au contenu des corpus web ainsi qu'aux processus d'extraction qui permettent d'accéder aux textes. nous considérons des corpus construits directement sans recours à des données pré-existantes et utilisons à cette fin des méthodes de parcours du web, web crawling @xcite , afin de découvrir des hôtes hébergeant des pages web d'une part (méthode « généraliste ») et des documents au sein de domaines déjà connus (méthode « ad hoc ») d'autre part @xcite . la simple notion de texte comme unité langagière cohérente est sujette à caution sur ces données reprises et potentiellement déformées par les outils de traitement. nous souhaitons apporter un retour quantitatif, avec un examen des méthodes d'extraction, ainsi qu'un examen qualitatif, avec l'exemple des discours haineux, afin de remettre en question l'usage sans garde-fous des textes tirés du web et des informations qu'ils recèlent. ## examen des méthodes d'extraction étant donné le code source d'une page web, le processus d'extraction de contenu consiste à détourer le contenu textuel utile (c'est-à-dire notamment sans les éléments de structure, la publicité ou encore les commentaires) et à identifier les méta-données. concrètement, cette tâche implique une conversion du format html vers un autre format (souvent plein texte ou xml). la construction de corpus à partir du web est devenue un élément si commun des chaînes de traitement de tal que les détails techniques sur sa mise en oeuvre sont souvent omis. or, peut-on réellement s'abstenir de se demander ce qui est intégré dans des corpus ? afin d'illustrer ce problème de contenu, nous comparons différents extracteurs récents et/ou populaires afin d'observer ce que des métriques d'évaluation spécialement conçues révèlent concernant leur efficacité. nous laisserons de côté le choix des sources en ellesmêmes pour nous concentrer sur les résultats de l'extraction, qui forment la base de décisions quant à l'inclusion dans le corpus final @xcite , et nous intéressons en particulier à la question multilingue. en effet, les outils mis à disposition de la communauté sont très souvent conçus pour la langue anglaise, l'applicabilité à d'autres langues étant souvent considérée de manière opportuniste comme allant de soi : si les extracteurs fonctionnent sur l'anglais, alors les mêmes ordres de grandeur de résultats seront obtenus dans d'autres langues. corpus et outils nous reprenons un corpus proposé par @xcite qui comprend près de 1.700 documents en 5 langues (475 en anglais, 405 en chinois, 273 en grec, 274 en polonais et 267 en russe) avec la version html d'une part et une version de référence nettoyée manuellement d'autre part. la sélection des outils s'est faite sur trois critères : simplicité d'utilisation (existence d'une version ou wrapper python puisque ce langage est très répandu, en particulier en tal) ; disponibilité sous licence libre (pour les mêmes raisons, nous tenons uniquement compte d'outils directement accessibles) ; popularité ou nouveauté (l'état de l'art fournit des informations, notamment pour des outils relativement anciens comme boilerpipe). en conséquence, nous choisissons de comparer les outils suivants, classés en différentes catégories selon leur finalité : conversion du format html vers le format texte (i), intégration dans un contexte plus large d'extraction et d'analyse d'information (ii), extraction proprement dite du texte principal d'une page web (boilerplate removal, iii). cat. outil version adresse github référence i html2text 2020.1.16 alir3z4/html2text i inscriptis 1.0 weblyzard/inscriptis ii newspaper3k 0.2.8 codelucas/newspaper ii news-please 1.4.25 fhamborg/news-please (hamborg et al., 2017) ii readability 0.7.1 buriy/python-readability iii boilerpy3 1.0.2 jmriebold/boilerpy3 (kohlschütter et al., 2010) iii dragnet 2.0.4 dragnet-org/dragnet (peters & lecocq, 2013) iii goose3 3.1.6 goose3/goose3 iii justext 2.2.0 miso-belica/justext (pomikálek, 2011) iii trafilatura 0.4.1 adbar/trafilatura (barbaresi, 2019) ce comparatif fait également l'objet d'une démonstration (lejeune & barbaresi, 2020), ces résultats peuvent être reproduits en utilisant les données et scripts mis à disposition 4 . nous optons ici pour une version abrégée : une seule des configurations de boilerpipe (bp3_article), configuration par défaut pour justext et trafilatura. mesures les mesures d'évaluation de la campagne cleaneval (baroni et al., 2008) sont fondées sur la préservation des séquences de tokens. bien qu'imparfaites, elles ont le mérite d'être globalement utilisées par la communauté scientifique (weninger et al., 2016). nous ajoutons une mesure plus simple, fondée sur la préservation du vocabulaire, qui donne des résultats tout à fait comparables. cette évaluation nécessite une vérité de terrain, que nous appellerons gt et gt tok pour la séquence de tokens correspondante. nous nommons res le résultat de l'extraction automatique et res tok la séquence de tokens correspondante, en reprenant le tokeniseur fourni par cleaneval. la mesure cleaneval vérifie à quel point la séquence de tokens extraite automatiquement (res tok ) est similaire à la séquence de référence (gt tok ). l'algorithme de ratcliff/obershelp (ratcliff & metzener, 1988) est utilisé pour détecter les plus longues séquences de tokens communes et non-redondantes, sa complexité quadratique est peu efficace et ses résultats ne sont pas immédiatement interprétables. notre mesure plus simple (occ_eval) vérifie si le nombre d'occurrences des tokens correspond aux nombre d'occurrences attendues. quelques résultats nous détaillons ici quelques résultats tirés d'une analyse des outils (barbaresi & lejeune, 2020) et nous concentrons sur leur variabilité. le tableau 1a présente les résultats globaux avec la métrique clean_eval. la précision et le rappel sont des moyennes des précisions et rappels par document. la f-mesure est calculée à partir de ces moyennes 5 . le tableau 1b présente les résultats obtenus avec occ_eval, ceux-ci diffèrent assez peu. l'ordre de grandeur des résultats et la « hiérarchie » entre les outils sont conservés à ceci près que justext semble pénalisé par la mesure clean_eval. variation selon les langues d'un point de vue général, l'outil le plus fiable semble être bp3_art, readability trafilatura et justext se situant juste derrière. toutefois, les moyennes (micro ou macro) masquent des différences entre les langues, comme nous le montrons dans les tableaux 2a 4. https ://www.github.com/run-dimeco/waddle 5. la moyenne des f-mesures donne un score peu intuitif car souvent inférieur à la macro-précision et au macro-rappel. outil macro f micro f micro p micro r bp3_art 72,73 78,84 82,80 75,24 read 74,62 75,87 72,18 79,96 traf 75,69 75.71 68.33 84.87 jt 63,7 71,22 78,93 64,88 dragnet 58,21 69,66 87,53 57,85 nplease 48,84 58,46 69,00 50,72 goose 37,87 53,93 83,89 39,74 npaper 32,37 50,83 82,20 36,78 inscri 40,10 42,95 27,72 95,28 html2t 31,2 33,98 20,86 91,47 (a) mesure clean_eval outil macro f micro f micro p micro r bp3_art 70,41 76,38 80,60 72,57 jt 67,7 74,13 81,36 68,08 read 71,01 73,25 72,43 74,09 traf 68,63 72.89 65.02 82.93 dragnet 56,12 67,09 86,82 54,67 nplease 50,92 66,64 92,03 52,23 goose 41,72 57,74 89,42 42,64 npaper 36,18 54,78 88,68 39,63 inscri 34,98 37,10 23,22 92,22 html2t 30,95 33,45 20,56 89,80 (b) mesure occ_eval remises en cause systémiques outre des slogans exploités par le personnel politique d'extrêmedroite (« on n'est plus chez soi »), la remise en cause d'un soi-disant « système » est un élément central des textes problématiques du corpus, qui se font parfois injurieux, par exemple dans le cas de la critique d'un soi-disant consensus tourné vers les médias mainstream (mainstream-medien), où des « putes journaleuses » (medienhuren) censureraient certaines idées. sexisme et racisme sexisme et racisme sont des corollaires parfois sous-jacents mais omniprésents des théories complotistes et des remises en cause systémiques, comme à travers des discours ouvertement xénophobes sur le soi-disant afflux ou trop-plein d'étrangers ainsi que la dénonciation d'une soi-disant « fémocratie », pouvoir féministe et injustement castrateur qu'il conviendrait d'identifier, de brider, voire d'éliminer. la pornographie constitue un cas à part, tant il s'agit d'une industrie majeure de production et de publication de contenu, qui génère un trafic considérable. par conséquent, toute collecte de données va trouver des hôtes hébergeant des annonces ou des vidéos, comportant nettement plus de pages web que d'autres ainsi que des liens pour favoriser le référencement. l'impact sur des corpus est réel, dans une collecte ciblant des sites utilisant wordpress, décrite dans @xcite , mydirtyhobby (nom de marque) figure parmi les catégories et tags les plus fréquents des sites en .at (autriche). la présence de descriptions de vidéos pornographiques dans un corpus, si elle paraît logique dans une certaine proportion au vu de la large diffusion de ces sites, a un fort impact au niveau lexical, avec un vocabulaire mais aussi un imaginaire issus du règne animal (docilité attendue des « femelles », impétuosité des « mâles ») et des concepts souvent hétérosexuels et dominateurs comme le mot composé dreilochstute (« jument à trois trous »), mot quasiment absent des corpus de référence et plusieurs centaines de fois plus fréquent dans les corpus web non-filtrés. apologie du fascisme ou du national-socialisme l'apologie de crimes passés se fait notamment à travers des mots d'ordre de la période national-socialiste, qui servent de moyen d'identification (« deutschland erwache », « allemagne réveille-toi »), ce qui modifie en conséquence la teneur du corpus. les documents connexes utilisent parfois une iconographie nationale-socialiste glorifiant les principales figures du régime qui pose un problème d'identification puisqu'elle est parfois introuvable dans le texte. en effet, l'idolâtrie par le biais d'images ne semble pas aussi strictement poursuivie. négationnisme révisionnisme et négationnisme portent notamment sur une remise en cause ou une discussion du nombre de personnes enfermées et exécutées pendant la période nazie. face à la répression de ces discours qui tombent sous le coup de la loi, les groupes concernés semblent opérer par mots-clés, comme celui de température des chambres à gaz (gaskammertemperatur), concept désignant une théorie (absolument fausse) visant à exonérer la hiérarchie des camps de concentration de toute responsabilité dans l'extermination de millions de personnes. théories conspirationnistes un bon indicateur de théories conspirationnistes consiste à chercher le néologisme reptiloiden / reptiliens ainsi que des thématiques connexes pour débusquer des documents problématiques. si le concept de créatures imaginaires (ici des reptiles à figure humaine) ayant pris le pouvoir ou le contrôle des gouvernants peut sembler inoffensive, il s'agit bien d'opérer une distinction entre des êtres humains et des nuisibles, catégories qui en recouvrent d'autres ou opèrent de manière souple pour rappeler d'autres théories du complot, par exemple à travers le syllogisme « x (forme attestée dans le corpus : angela merkel) est un reptile », « x poursuit une oeuvre secrète de destruction ou d'accaparement des ressources », « les reptiles sont des juifs ».