Le challenge des moteurs de recherche ? Offrir des réponses aussi pertinentes, quelle que soit la façon dont on formule la question.
Résumé
Orange remporte un challenge international de similarité sémantique de textes : comment rapprocher deux questions qui n’ont pourtant aucun mot en commun ?
« Comment faire garder les enfants ? ». « Où trouver une bonne baby-sitter ? ». Pour vous, ces deux questions expriment le même besoin et vous pourriez poser l’une ou l’autre à un ami avisé… ou à un moteur de recherche, car des internautes y ont déjà répondu sur des forums. Mais pour les algorithmes chargés de vous remonter les informations, ces deux questions restent très difficiles à lier : elles n’ont aucun mot en commun malgré leur proximité sémantique.
Présenter des résultats aussi pertinents, quelle que soit la façon dont on formule la question : c’est le challenge relevé par Orange qui remporte la première place du « Community Question Answering » à SemEval, un concours qui rassemble depuis dix ans des chercheurs en analyse sémantique du monde entier. Grâce à leur protocole permettant de mesurer la similarité sémantique entre les mots de différents textes, ils apportent une solution applicable aussi bien pour faciliter les recherches sur les forums Orange qu’au service de la relation client.
Article complet
Orange Labs remporte un challenge international de similarité sémantique de textes : comment rapprocher deux questions qui n’ont pourtant aucun mot en commun ?
Les forums permettent aux participants de poser des questions, et d’interagir avec les autres pour obtenir des réponses pertinentes. La popularité des forums montre la capacité de ce type d’interaction à produire des réponses fiables aux questions. Leur popularité est telle que le premier réflexe d’un internaute, lorsqu’il se pose une question, est de faire appel à son moteur de recherche préféré, pour vérifier si une question similaire n’a pas déjà été posée et résolue. Pour pouvoir répondre véritablement à cette fonction, il faut pouvoir mesurer une similarité sémantique entre la nouvelle question posée et les questions déjà postées sur le forum, une similarité qui tienne compte du sens de la question et pas seulement des mots de la question, sur quoi s’appuient les moteurs de recherche usuels. Ainsi, les questions « comment faire garder les enfants » et « où trouver une bonne baby-sitter » sont très proches sémantiquement, alors qu’elles n’ont pas de mots en commun, et ne seront pas remontées par les moteurs de recherche.
Les campagnes SemEval sont des campagnes d’évaluations internationales, qui ont lieu chaque année, depuis 10 ans, sur différentes tâches d’analyse sémantique automatique des textes. Elles permettent aux chercheurs du monde entier de s’évaluer et de se comparer, sur la même tâche, en partageant données et protocole. Dans la campagne SemEval 2017, il existe une tâche « Community Question Answering » qui traite précisément du problème de la recherche de questions similaires dans des forums. Les données de test de la campagne concernent un forum en anglais, à destination des occidentaux expatriés au Qatar, traitant de tout sujet de la vie quotidienne pour un expatrié (où trouver un bon resto, comment faire pour embaucher une nourrice, quelle est la meilleure banque…). Les chercheurs d’Orange Labs (OpenServ/Content/Deskin) ont participé à la campagne de 2017, et leur solution a été classée première, parmi 13 équipes participantes du monde entier.
La solution développée par les chercheurs d’Orange consiste à représenter les textes par des vecteurs dans des espaces de très grande dimension, où chaque axe correspond à un mot (la dimension de l’espace correspond alors à la taille du vocabulaire considéré, pouvant être égale à plusieurs dizaines de milliers de mots). Dans cet espace, la coordonnée du vecteur pour un axe donné, c’est-à-dire pour un mot donné, correspond au poids qu’on attribue à ce mot pour représenter le texte. Ce poids peut dépendre de la fréquence du mot dans le texte, de sa rareté dans les autres textes, du type de mot (nom, verbe ou adjectif) et du rôle que celui-ci joue dans la phrase (sujet, verbe…). Ensuite, on mesure une similarité entre ces vecteurs de très grande dimension, en considérant que les axes ne sont pas indépendants, mais qu’il existe des relations entre ces axes. Puisque les axes de l’espace représentent des mots, on considère des relations sémantiques entre les mots (par exemple, les mots « enfant » et « baby-sitter » sont sémantiquement liés), et on peut calculer une similarité sémantique entre les vecteurs de textes. L’originalité de notre approche se situe à la fois dans le calcul des poids des mots dans le vecteur et dans l’introduction de ces relations sémantiques, calculées en amont de façon appropriée au besoin, qui rendent globalement la mesure de similarité plus robuste.
La 1ere place remportée à la compétition SemEval montre la pertinence des mesures de similarité sémantique textuelles développées à Orange Labs. Ces mesures peuvent s’appliquer, dans un contexte similaire à SemEval, à nos clients, pour leur permettre de trouver dans les forums Orange les questions similaires déjà résolues. Toujours au service de la Relation Client, elles peuvent également s’appliquer pour assister les web-conseillers en retrouvant des problématiques similaires déjà résolues dans l’historique des conversations archivées. Mais le champ d’application des mesures de similarité sémantique textuelle est plus vaste : elles permettent également de faire du clustering de textes (regrouper des textes en « paquets » homogènes sémantiquement), du résumé, de la classification…
En savoir plus :
Preslav Nakov, Doris Hoogeveen, Lluiıs Marquez,Alessandro Moschitti, Hamdy Mubarak, Timothy Baldwin, and Karin Verspoor. 2017. « SemEval-2017 Task3:Community Question Answering », in proceedings of the 11th international workshop on Semantic Evaluations, Association for Computational Linguistics, Vancouver, Canada, SemEval’17
http://nlp.arizona.edu/SemEval-2017/pdf/SemEval003.pdf
Delphine Charlet, Géraldine Damnati, « Simbow at SemEval2017-Task3: Soft-Cosine Semantic Similarity between Questions for Community Question Answering », in proceedings of the 11th international workshop on Semantic Evaluations, Association for Computational Linguistics, Vancouver, Canada, SemEval’17