Calcul de la distance sémantique entre deux documents à l'aide d'un thésaurus hiérarchique
La distance sémantique entre deux documents vise à mesurer leur dissimilarité en termes de signification ou de contenu sémantique. Autrement dit, il s'agit d'une mesure de combien les thèmes ou les sujets traités dans deux documents sont éloignés l'un de l'autre sur le plan sémantique.
Pour mémoire, il existe plusieurs méthodes différentes de définir et de calculer une telle mesure sans l'aide d'un thésaurus:
TF-IDF avec Cosine Similarity : TF-IDF (Term Frequency-Inverse Document Frequency) est une méthode pour transformer des documents en vecteurs numériques, où chaque dimension correspond à un terme spécifique dans le corpus, et l'amplitude représente la fréquence du terme corrigée par la fréquence du document. La similarité cosinus est ensuite utilisée pour mesurer l'angle entre deux vecteurs, donnant ainsi une mesure de la similarité sémantique entre deux documents.
Latent Semantic Analysis (LSA) : LSA, ou parfois appelée Latent Semantic Indexing (LSI), est une méthode d'analyse de texte qui découvre les relations sémantiques cachées entre les mots dans un corpus en utilisant une décomposition en valeurs singulières (SVD). LSA transforme chaque document en un vecteur dans un espace de concepts latents, où la distance entre deux vecteurs peut être utilisée comme une mesure de la distance sémantique.
Word Embeddings (par exemple, Word2Vec, GloVe) : Les modèles d'embedding de mots transforment chaque mot en un vecteur dense dans un espace de grande dimension. La distance sémantique entre deux documents peut être calculée en transformant chaque document en un vecteur (par exemple, en moyennant les embeddings de mots de tous les mots du document), puis en mesurant la distance entre ces vecteurs.
Modèles de langage contextuels (par exemple, BERT, GPT) : Ces modèles de langage pré-entraînés génèrent des embeddings de mots qui tiennent compte du contexte de chaque mot. Comme avec les embeddings de mots, ces embeddings peuvent être utilisés pour transformer chaque document en un vecteur et calculer la distance entre eux.
Topic Modeling (par exemple, LDA) : Les modèles de sujet attribuent à chaque document une distribution de sujets. La distance entre ces distributions peut être utilisée comme une mesure de la distance sémantique entre les documents.
Dans ce texte, nous allons plus spécifiquement nous intéresser aux définitions possibles et au calcul de la distance sémantique entre document à l'aide d'un thésaurus (hiérarchique).
Utilisation d'un thésaurus: approche générale
Un thésaurus est une collection de mots et de phrases (ou termes) qui sont organisés en fonction de leur relation les uns avec les autres. Les relations sont généralement de trois types : équivalence (synonymes ou quasi-synonymes), association (liens sémantiques entre termes) et hiérarchie (termes plus généraux et plus spécifiques). Un thésaurus est souvent utilisé pour aider à la recherche d'informations et à l'indexation en fournissant une liste standardisée de termes.
Pour calculer la distance sémantique entre deux documents à l'aide d'un thesaurus hiérarchique, on doit suivre les étapes suivantes :
Représentation des documents : Chaque document doit d'abord être représenté en termes de concepts à partir du thésaurus. Il s'agit d'identifier chaque terme ou concept dans le document qui correspond à une entrée dans le thésaurus. Cela peut être réalisé de manière manuelle, par des experts du domaine, ou à l'aide de processus automatisés, en tout ou partie, comme l'extraction des caractéristiques, la vectorisation des mots, la lemmatisation, etc. Ensuite, chaque document est représenté comme un ensemble ou une liste de ces concepts. Si un document a plusieurs entrées dans le thésaurus, toutes ces entrées seront incluses dans cette représentation.
Calcul de la distance sémantique entre concepts individuels: Ce calcul peut être effectué en utilisant la structure hiérarchique du thésaurus. La plupart des méthodes se basent sur le principe que plus le concept commun le plus proche (autrement dit, l'ancêtre commun le plus proche) dans la hiérarchie est proche des deux concepts, plus la distance sémantique est petite. L'une de ces méthodes est la mesure de Wu-Palmer, qui calcule la similarité sémantique comme le nombre de nœuds partagés par les deux chemins des concepts au nœud racine, divisé par la longueur totale des chemins. Une autre est la mesure de Lin, qui est basée sur l'information mutuelle des concepts dans un corpus de textes. Ces deux mesures, ainsi que d'autres, sont définie et discutées plus en détails ci-dessous.
Aggrégation : Après avoir calculé les distances sémantiques entre les concepts individuels, on doit enfin les aggréger pour obtenir une distance sémantique entre les documents. Il y a différentes manières de le faire, comme par exemple la moyenne, le minimum, le maximum, etc. des distances.
La distance de Wu-Palmer
La mesure de Wu-Palmer, introduite en 1994, est une mesure de similarité sémantique basée sur la profondeur des nœuds dans un thésaurus hiérarchique, généralement un thésaurus qui représente les relations « est un » entre les termes. Elle est couramment utilisée dans le domaine du traitement du langage naturel.
La mesure de similarité de Wu-Palmer est basée sur l'idée que plus deux concepts ont de nœuds communs dans leur chemin jusqu'à la racine du thésaurus, plus ils sont similaires.
Pour deux concepts c1 et c2, la similarité de Wu-Palmer est calculée comme suit:
sim(c1, c2) = 2 * depth(LCS(c1, c2)) / (depth(c1) + depth(c2))
où :
- LCS(c1, c2) se réfère au concept le plus spécifique (Least Common Subsumer) qui est un ancêtre de à la fois c1 et c2 (c'est-à-dire le concept commun le plus profondément enraciné dans la hiérarchie).
- depth(c) se réfère à la profondeur d'un concept c, qui est le nombre de nœuds de c à la racine du thésaurus.
La valeur de la similarité de Wu-Palmer varie entre 0 et 1, où 1 signifie que les deux concepts sont identiques et 0 qu'ils sont complètement disjoints.
Notez que cette mesure dépend fortement de la structure du thésaurus. Par exemple, elle suppose que tous les liens dans le thésaurus ont une importance égale, ce qui n'est pas nécessairement le cas. De plus, elle ne tient pas compte des informations de co-occurrence des termes dans les documents, qui peuvent également fournir des informations importantes sur la similarité.
Applications pratiques
Une fois définie une (ou plusieurs) distance sémantique, il est possible de l'utiliser dans une variété d'applications en ingénierie de la connaissance, notamment :
Recommandation de contenu : Que ce soit pour des articles, des livres, des films ou de la musique, la distance sémantique peut être utilisée pour recommander des éléments qui sont sémantiquement similaires à ceux qu'un utilisateur a déjà aimés ou recherchés.
Classification de documents (apprentissage supervisé): En calculant la distance sémantique entre les documents, on peut les regrouper en catégories basées sur leur contenu sémantique, ce qui est utile pour organiser et explorer de grands ensembles de documents.
Le clustering de documents (apprentissage non-supervisé) : En calculant la distance sémantique entre les documents, ceux-ci peuvent être regroupés en grappes ou "clusters" basés sur leur contenu sémantique. Chaque cluster contient des documents qui sont sémantiquement similaires les uns aux autres et distincts des documents dans d'autres clusters. Cela peut être extrêmement utile pour organiser et explorer de grands ensembles de documents. Les algorithmes populaires pour le clustering de documents incluent K-means, DBSCAN, ou des techniques de modélisation de sujets comme Latent Dirichlet Allocation (LDA).
Systèmes de questions-réponses (FAQ) : La distance sémantique peut aider à comprendre la similarité entre une question posée par un utilisateur et les questions précédemment posées et répondues dans une base de connaissances, ce qui permet de trouver des réponses pertinentes plus rapidement.
Limitations de la distance de Wu-Palmer
La mesure de similarité de Wu-Palmer, bien qu'utile dans de nombreux cas, présente certaines limitations, notamment :
Dépendance de la structure du thésaurus : La similarité de Wu-Palmer est fortement dépendante de la structure du thésaurus utilisé. Si la hiérarchie du thésaurus est inégalement distribuée ou si elle est biaisée d'une manière ou d'une autre, cela peut affecter la mesure de la similarité. De plus, les thésaurus ont souvent une couverture limitée et peuvent ne pas contenir des termes spécifiques à un domaine ou des termes plus récents.
Importance égale de tous les liens : La mesure de Wu-Palmer suppose que tous les liens dans le thésaurus ont une importance égale, ce qui n'est pas toujours vrai. Dans de nombreux cas, certaines relations peuvent être plus significatives que d'autres. On pourra, en guise d'amélioration, attribuer des poids différents aux relations en fonction de leur type ou de leur niveau dans la hiérarchie. Par exemple, on pourrait attribuer un poids plus élevé aux relations parent-enfant qu'aux relations entre cousins éloignés.
Absence d'informations de co-occurrence : La mesure de Wu-Palmer ne tient pas compte des informations de co-occurrence des termes dans les documents, qui peuvent également fournir des informations importantes sur la similarité. Un axe d'amélioration possible est donc l'utilisation de méthodes d'embedding de mots comme Word2Vec ou GloVe, qui se basent sur l'hypothèse que les mots qui apparaissent dans des contextes similaires ont des significations similaires.
Difficulté avec les thésaurus non hiérarchiques : Si le thésaurus utilisé n'est pas strictement hiérarchique (c'est-à-dire s'il s'agit d'un graphe et non d'un arbre), il peut être difficile d'appliquer la mesure de Wu-Palmer.
Plusieurs mesures dérivées de ou similaires à la mesure de Wu-Palmer peuvent également être introduites, comme par exemple:
La mesure de similarité de Resnik (1995) : Resnik a proposé une autre mesure de similarité qui utilise l'information contenue dans un thésaurus pour quantifier la similarité entre les concepts. La mesure de similarité de Resnik est basée sur l'information mutuelle, qui est une mesure de l'information que deux concepts partagent. Pour deux concepts donnés, Resnik définit leur similarité comme l'information contenue dans leur concept le plus spécifique (c'est-à-dire le moins général) commun.
La mesure de similarité de Jiang et Conrath (1997) : Jiang et Conrath ont proposé une mesure qui combine les approches de Resnik et de Wu-Palmer. La mesure JCN est basée sur l'idée que la similarité entre deux concepts peut être définie en termes de la distance entre les concepts et leur concept le plus spécifique commun dans la hiérarchie, ainsi que de l'information contenue dans ce concept commun.
Le coefficient de Leacock et Chodorow (1998) : Cette mesure de similarité sémantique utilise également une approche fondée sur la profondeur dans une hiérarchie de concepts (comme celle utilisée par Wu-Palmer), mais elle introduit une composante de distance entre les concepts. L'idée est que plus les concepts sont éloignés l'un de l'autre dans la hiérarchie, moins ils sont similaires. La mesure LCH est définie comme le négatif du logarithme de la distance de chemin entre deux concepts, divisé par la profondeur maximale de la hiérarchie.
La mesure de similarité de Lin (1998): Lin a proposé une autre mesure de similarité qui combine les approches de Resnik et de Wu-Palmer. La mesure de similarité de Lin est définie comme deux fois l'information contenue dans le concept le plus spécifique commun, divisée par la somme de l'information contenue dans chaque concept.
En pratique, la mesure de Wu-Palmer est encore largement utilisée en raison de sa simplicité et de sa facilité d'implémentation. Outre les axes d'amélioration évoqués ci-dessus, on pourra, par ailleurs, lorsque c'est utile, combiner la mesure de Wu-Palmer ou d'une de ses dérivée évoquées ci-dessus avec d'autres mesures de similarité sémantique pour obtenir une mesure plus robuste.
Conclusion
En conclusion, la réalisation d'une application d'ingénierie des connaissances, comme par exemple un moteur de recommandation ou de clustering, basé sur l'annotation d'un corpus de documents à l'aide d'un thésaurus dépend de plusieurs facteurs :
Qualité et pertinence du thésaurus : Un thésaurus bien construit et pertinent pour le domaine du corpus est crucial. Il doit couvrir l'ensemble des concepts et des termes présents dans le corpus pour que la similarité sémantique soit calculée efficacement. La structure du thésaurus choisi (hiérarchique ou non, par exemple) peut influencer les algorithmes à mettre en oeuvre en aval.
Annotation précise des documents : Les documents doivent être correctement annotés avec les termes du thésaurus. Cette étape peut être délicate, car l'identification correcte des termes et concepts pertinents dans un document nécessite souvent une compréhension du contexte qui peut être difficile à automatiser.
Choix de la mesure de similarité sémantique : Différentes mesures, comme la similarité de Wu-Palmer, ont des forces et des faiblesses différentes. Le choix de la mesure à utiliser dépend des spécificités du problème et du corpus.
Traitement et analyse des données : Les techniques d'analyse de données utilisées, comme le clustering ou les techniques de recommandation, doivent être choisies et paramétrées correctement pour donner des résultats utiles. Ceci dépend aussi des spécificités du problème.
Mise à jour et maintenance du thésaurus : L'information évolue constamment, et il est donc important de maintenir le thésaurus à jour avec les nouvelles connaissances et les nouveaux termes. Différentes techniques de traitement automatique de la langue, d'apprentissage automatique et de fouille de texte peuvent aider à assurer ces tâches, notamment: l'extraction d'entités nommées, l'extraction de termes et de relations, les technique de désambiguïsation du sens des mots.
D'un point de vue organisationnel, afin d'assurer le succès de la construction de ce type d'application, il importe d'avoir une équipe pluridisciplinaire qui possède à la fois une bonne compréhension du domaine, une expertise en traitement du langage naturel et en analyse de données, et une attention continue à l'exactitude et à la mise à jour de l'information.
Bibliographie succincte
- R. Rada, H. Bicknell, E. Mili, and M. Blettner, “Development and application of a metric on semantic nets,” IEEE Transaction on Systems, Man, and Cybernetics, 1(19), pp. 17- 30, 1989.
- Z. Wu and M. Palmer, “Verbs semantics and lexical selection,” In Proceedings of the 32nd annual meeting on Association for Computational Linguistics, pp. 133-138. Association for Computational Linguistics, 1994.
- Resnik, P. Using information content to evaluate semantic similarity in a taxonomy. arXiv preprint cmp-lg/9511007. 1995.
- Jiang, J. J. et D. W. Conrath. Semantic similarity based on corpus statistics and lexical taxonomy. arXiv preprint cmp-lg/9709008. 1997.
- Leacock, C. et M. Chodorow. Combining local context and wordnet similarity for word sense identification. WordNet : An electronic lexical database 49(2), 265–283, 1998.
- Lin, D. An information-theoretic definition of similarity. In ICML, Volume 98, pp. 296–304, 1998.
- Haïfa Zargayouna, Sylvie Salotti. Mesure de similarité dans une ontologie pour l’indexation sémantique de documents XML. 15èmes Journées francophones d’Ingénierie des Connaissances, May 2004, Lyon, France. pp.249-260. hal-00380573
- M.K. Shenoy, K. Shet et U.D. Acharya. A new similarity measure for taxonomy based on edge counting. Int. J. Web Semant. Technol. 2012, 3, 23.
- D. Guessoum, M. Miraoui, et C. Tadj. "A modification of wu and palmer semantic similarity measure." In The Tenth International Conference on Mobile Ubiquitous Computing, Systems, Services and Technologies, pp. 42-46. 2016.
- Julien Subercaze, Christophe Gravier, Frederique Laforest. Plongement de métrique pour le calcul de similarité sémantique à l’échelle. 16 èmes Journées Francophones Extraction et Gestion des Connaissances, EGC 2016, Jan 2016, Reims, France. hal-01254852