Retour sur la tâche n°8 de la 16ème édition de SemEval

Partager par e-mail
Image vedette de la tâche 8 de SemEval

Découvrez notre travail sur la tâche n°1 de SemEval : le dictionnaire inversé.

SemEval est une série d'ateliers internationaux de recherche en traitement du langage naturel (NLP) dont la mission est de faire progresser l'état de l'art en matière d'analyse sémantique et d'aider à créer des ensembles de données annotées de haute qualité dans une série de problèmes de plus en plus difficiles en sémantique du langage naturel. Chaque année, l'atelier présente un ensemble de tâches partagées dans lesquelles des systèmes d'analyse sémantique computationnelle conçus par différentes équipes sont présentés et comparés.
Dans cette édition, SemEval a proposé 12 tâches sur lesquelles travailler.

Dans cet article, nous allons expliquer comment notre équipe a procédé à la tâche n°8 du défi : Similitude des articles de presse multilingues qui consistait à mesurer la similarité textuelle sémantique entre des articles d'actualité dans différentes langues. Notre objectif était de développer un système utilisant le traitement du langage naturel (TAL), des méthodes de recherche d'information et l'intelligence artificielle pour identifier les articles d'actualité qui fournissent des informations sémantiques similaires sur la base de quatre caractéristiques : la géolocalisation, le temps, les entités partagées et les récits partagés. Pour atteindre cet objectif, nous devons identifier les éléments importants des articles d'actualité, tels que l'événement discuté, le lieu, l'heure et les personnes impliquées.
La tâche de similarité sémantique textuelle (SST) est un sujet de recherche en TAL depuis de nombreuses années, et elle fait partie de SemEval depuis plusieurs éditions. Mais par rapport aux autres éditions, cette année s'est concentrée sur la mesure de la similarité entre de longs texte d'actualité et non des phrases, des extraits de textes ou des textes courts.

Les défis de la tâche

Nous avons rencontré de nombreux défis en travaillant sur cette tâche :

  • Tout d'abord, l'extraction du contenu de l'URL fournie (lors de la première tentative, nous avions un contenu vide ou incomplet dans de nombreux exemples) ;
  • Il y avait beaucoup de langues à travailler (certaines langues de l'ensemble de test n'étaient pas présentes dans l'ensemble de formation) ;
  • Enfin, il a été difficile de choisir le type de score prédit : décimal ou entier, qui est différent selon le nombre d'annotateurs humains par document.

Description des données

Les données utilisées pour l'entraînement étaient composées de 4 964 paires d'articles de presse écrits dans sept langues différentes : anglais (EN), français (FR), espagnol (SP), allemand (DE), polonais (PL), arabe (AR) et turc (TR). Les paires ont été formés soit avec la même langue, soit avec des langues différentes. Dans le corpus de formation, sept types de couples étaient monolingues et un seul était inter linguistiques (DE_EN).
Pour le corpus de test, il y avait un total de 4 953 paires d'articles de presse dans dix langues différentes. Trois nouvelles langues ont été ajoutées : le russe (RU), le chinois (ZH) et l'italien (IT). Dans ce corpus, nous avions huit types de couples interlinguistiques, dont sept types de couples que nous n'avions jamais vus dans le corpus de formation.

Tableau 1 : statistiques sur le nombre d'exemples du corpus train 140 et du corpus test.
Tableau 1 : statistiques sur le nombre d'exemples des corpus de formation et de test

Chaque paire de documents a été annotée par un à huit annotateurs sur la base de sept catégories de score : "Géographie", "Entités", "Temps", "Narration", "Général", "Style" et "Ton".En outre, les organisateurs ont fourni les identifiants des paires d'articles, les langues et les URL pour chaque paire. En utilisant les URL, nous avons pu récupérer les données des articles telles que : titres, textes, mots-clés, balises, auteurs, date de publication, résumés et méta-descriptions ainsi que d'autres informations non pertinentes.

Aperçu du système

Le défi proposé consistait à choisir entre trois options :

- Construction d'un modèle pour chaque ensemble de données de formation par langue : anglais, français, espagnol, allemand, polonais, arabe et turc.
- Construire un modèle unique en anglais (la langue de référence mondiale et la mieux gérée par les méthodes TAL) et traduire tous les textes dans cette langue.
- Construire un modèle multilingue capable de traiter deux textes dans des langues différentes.

Nous avons choisi de construire des modèles d'apprentissage dans quelques langues principales : anglais, français, espagnol, allemand, arabe et turc. Nous avons abandonné la langue polonaise car nous n'avons pas trouvé de modèles pré-entraînés adéquats. Lorsque deux textes à comparer n'étaient pas dans la même langue, nous les avons traduits dans la langue principale choisie.
Un point fondamental pour le score final à générer est le choix de la précision de la réponse en termes de décimales.Nous avons noté que pour certaines langues, le score global obtenu était un nombre entier. En anglais, par exemple, il y avait un score décimal et un plus grand nombre d'annotateurs. Le nombre réel d'annotations ne pouvait pas être déterminé à l'avance. Nous avions donc défini des règles pour compléter notre évaluation en fonction du score obtenu et de la langue. Nous n'avons pas utilisé les métadonnées des articles de presse car elles étaient incomplètes. Nous avons simplement retenu les titres et le contenu des textes.
Nous avons également remarqué :

  • Une forte corrélation entre le score global et les scores des entités, de la narration et de la géographie.
  • Que l'ensemble des données d'entraînement est déséquilibré, surtout en anglais. Nous avions plus de quatre scores.
Tableau 2 : Corrélations entre les scores des annotateurs
Tableau 2 : Corrélations entre les scores des annotateurs
Figure 1 : Densité des scores des annotateurs
Figure 1 : Densité des scores des annotateurs

Suite aux observations du tableau 2 et de la figure 1, nous avons mis en place un système de notation basé sur les caractéristiques de chaque langue pour alimenter un système supervisé. Nous détaillons ci-dessous nos caractéristiques :

  1. Un score de similarité des titres basé sur des transformateurs de phrases avec un modèle d'encodeur pré-entraîné.
  2. Nous avons utilisé un résumé de texte basé sur des transformateurs pré-entraînés dans chaque langue pour mesurer un score de similarité entre ces résumés. Nous avons testé plusieurs modèles sur quelques exemples et avons sélectionné ceux qui semblaient être les meilleurs. En fonction de la langue, nous avons pu obtenir un ou deux modèles de résumés et donc un ou deux scores. Les modèles ont été pré-entraînés sur différentes variantes de corpus de résumés.
  3. Nous avons utilisé l'identification et l'extraction de mots-clés/"termes clés" dans les titres et les textes. Les balises extraites étaient des noms, des noms propres, des verbes et des adjectifs uniquement avec une recherche du radicale ajoutant les dix mots les plus proches sémantiquement. Ensuite, nous avons calculé le nombre de termes communs dans les deux textes.
  4. Nous avons utilisé l'identification et l'extraction des entités nommées communes entre les titres et les textes de contenu, à savoir : les lieux, les personnes, les organisations et les dates. Comme pour les mots-clés et les termes clés, nous avons calculé le nombre d'entités identiques dans les deux textes.
  5. Pour les différentes entités géographiques détectées (villes, régions, pays), nous utilisons le score des lieux de proximité avec géocodage.
  6. Nous avons utilisé le modèle de classification à zéro coup sur la base des thèmes de la presse que nous avons définis manuellement : politique, sport, santé, économie et technologie. Le score de similarité obtenu reflète le nombre de sujets communs entre deux textes.
  7. Enfin, les modèles d'analyse des sentiments ont été utilisés pour identifier si la polarité du sentiment est positive, négative ou neutre dans les deux textes. Le score de similarité obtenu reflétait ainsi le nombre de points communs.

Grâce à toutes ces caractéristiques, il a été possible de procéder à une évaluation finale basée sur les critères suivants techniques de classification ou de régression.
Pour la classificationnous avons testé Classificateur Random Forest et Régression logistique pour les algorithmes qui ont obtenu les meilleures performances.
Pour la régression,nous avons testé la Linear Regression, Partial Least Squares (PLS) et Extra Trees Regressor. Cela dit, nous avons pu obtenir une évaluation finale de la stratégie choisie. Pour optimiser la Corrélation de Pearson (la mesure choisie par les organisateurs pour l'évaluation), nous avons utilisé la bibliothèque PyCaret pour comparer tous les modèles possibles (en utilisant la validation croisée avec 10 plis).
Pour notre modèle anglais,les différents éléments trouvés nous ont permis d'avoir rapidement une bonne performance (environ 0,85 de corrélation de Pearson). Le seul souci était le fort déséquilibre du jeu de données d'entraînement que nous devions rééquilibrer.
Le modèle français disposait d'un mauvais jeu de données d'entraînement (seulement 72 exemples de paires). Nous avons donc choisi un modèle plus efficace Modèle de transformateur NER (Named Entity Recognition) de Spacy. Nous nous sommes également concentrés sur l'optimisation du modèle turc de la même manière avec un Transformateur NER. Nous n'avons pas travaillé pour optimiser le modèle allemand qui aurait pu être bien meilleur.

Mise en place expérimentale

Nous avons appliqué nos modèles de notation à chaque paire de titres et de textes de contenu. Pour la langue polonaise et les nouvelles langues observées dans l'ensemble de données d'évaluation, tous les textes ont été traduits en anglais à l'aide de la bibliothèque deep Translator, puis le modèle anglais a été appliqué. Lorsqu'il y avait deux langues différentes, elles étaient traduites en anglais.

Résultats et analyse

Notre corrélation finale de Pearson sur le corpus de test était de 0,706. Elle indique des résultats très irréguliers selon la langue de la paire. Tableau 3 montre les résultats obtenus sur le corpus de test pour chaque type de couple de langues.
Le résultat final pour une langue spécifique était généralement cohérent avec les évaluations faites précédemment sur le sous-ensemble (validation croisée) du jeu de données d'entraînement.
Pour la partie traduction, nous avons observé une dérive rapide selon les langues : les exemples ZH_EN traduits en anglais sont restés très corrects (0.79) mais les exemples ZH_ZH n'ont obtenu qu'un score moyen de 0.69. Nous avons donc eu une réduction significative des performances en IT_IT (0.74) et SP_IT (0.61) par rapport aux cas où l'anglais était utilisé.
Nous avons constaté que la plupart des écarts importants dans l'évaluation étaient liés à des erreurs de scraping (texte vide ou incohérent).
En conclusion, nous avons observé que les scores des paires 71% étaient excellents (inférieurs à 0,1), 84% étaient bons (inférieurs à 0,5) et 96% inférieurs à 1. Nous pensons que nos modèles anglais, français, turc et espagnol sont corrects et auraient pu être encore optimisés proprement. Nous avons eu des difficultés techniques pour réaliser un modèle arabe correct, comme pour le modèle allemand.

Tableau 3 : Résultats du système sur le corpus de test
Tableau 3 : Résultats du système sur le corpus de test

Conclusion

Notre système a utilisé différentes caractéristiques reflétant la similarité qui peut être obtenue, par exemple, entre des termes clés partagés et des entités nommées, ou même des sujets en utilisant l'apprentissage de zéro pour les systèmes de classification de textes. En outre, nous avons utilisé la géolocalisation pour les entités de localisation et nous avons mesuré la similarité sémantique par l'utilisation de plongements lexicaux au niveau de la phrase (titre du texte) et du paragraphe (résumé de texte obtenu automatiquement en utilisant des transformateurs).
Au-delà de l'utilisation d'un système supervisé pour mesurer le degré de similarité entre deux textes donnés, nous nous sommes placés dans un contexte de documents pouvant provenir de différentes langues en traitant à la fois des paires de documents monolingues et des paires de documents inter linguistiques. Comme le corpus de test peut contenir des documents écrits dans des langues naturelles non traitées pendant la phase d'apprentissage, notre système a pu effectuer une traduction automatique dans une langue pivot afin de projeter les nouveaux documents dans des espaces déjà connus.
Nous avons obtenu un score de corrélation de Pearson de 0,706 par rapport au meilleur score de 0,818 des équipes ayant participé à cette tâche.

Plus ...

Retour haut de page