Qu’est-ce que l’analyse sémantique latente ?

Auteur

Jacob Murel Ph.D.

Senior Technical Content Creator

Joshua Noble

Data Scientist

Qu’est-ce que l’analyse sémantique latente ?

Dans le machine learning, l’analyse sémantique latente (LSA) est une technique de modélisation thématique qui analyse la co-occurrence des mots pour découvrir des sujets latents dans les documents. La LSA utilise la réduction de la dimensionnalité pour créer des données structurées à partir d’un texte non structuré afin de faciliter la classification et la récupération du texte.

La LSA est l’une des deux principales techniques de modélisation thématique, l’autre étant l’allocation de Dirichlet latente (LDA). La modélisation thématique est une technique de traitement automatique du langage naturel (NLP) qui applique un apprentissage non supervisé sur de grands jeux de données textuelles afin de produire un ensemble récapitulatif de termes dérivés de ces documents. Ces termes sont censés représenter l’ensemble des sujets principaux de la collection. Ainsi, les modèles thématiques visent à découvrir les thèmes ou sujets latents qui caractérisent un ensemble de documents.

Les utilisateurs peuvent générer des modèles thématiques LSA à l’aide des outils en langage naturel (NLTK) de Scikit-learn (communément appelé sklearn) et de gensim en Python. Les packages topic models et lsa dans R contiennent également des fonctions permettant de générer des modèles thématiques LSA.

Recherche d’informations

L’analyse sémantique latente est associée à l’indexation sémantique latente (LSI), qui est une technique de recherche d’information. Dans les systèmes de recherche d’information, la LSI utilise la même procédure mathématique que la LSA pour faire correspondre les requêtes des utilisateurs aux documents en fonction de la co-occurrence des mots. Si un utilisateur interroge un système pour waltz et foxtrot, il peut s’intéresser aux documents qui ne contiennent aucun de ces termes, mais qui contiennent des termes qui sont souvent des co-occurrences avec les termes de sa requête. Par exemple,tango et bolero peuvent fréquemment coexister avec les termes de la requête et doivent indiquer des documents sur le même sujet. La LSI indexe les documents en fonction de groupes de mots sémantiques latents composés de mots couramment co-occurrents. Il peut ainsi améliorer les résultats des moteurs de recherche. La LSA applique la même procédure mathématique que la LSI afin de capturer la structure sémantique cachée sous-jacente à de grandes collections de documents.2

Les dernières tendances en matière d’IA, vues par des experts

Obtenez des informations sur les actualités les plus importantes et les plus intrigantes en matière d’intelligence artificielle. Abonnez-vous à notre newsletter hebdomadaire Think. Lire la Déclaration de confidentialité d’IBM.

Merci ! Vous êtes abonné(e).

Vous recevrez votre abonnement en anglais. Vous trouverez un lien de désabonnement dans chaque newsletter. Vous pouvez gérer vos abonnements ou vous désabonner ici. Consultez la Déclaration de confidentialité d’IBM pour plus d’informations.

Fonctionnement de l’analyse sémantique latente

Matrice document-terme

La LSA commence par la matrice document-terme ou parfois par le biais d’une matrice terme-document. Le nombre d’occurrences de chaque mot dans tous les documents s’affiche. En Python (pour donner un exemple), les utilisateurs peuvent construire ces matrices à l’aide d’un cadre de données Pandas. Voici un exemple de matrice de termes de documents utilisant les trois chaînes de texte comme documents individuels :

d1 : Mon amour est comme des roses très rouges

d2 : Les roses sont rouges, les violettes sont bleues

d3 : Moïse suppose que ses orteils sont des roses

exemple de matrice terme-document avec trois documents

Cette matrice indique la fréquence de chaque mot dans les trois documents après le marquage sémantique et la suppression des mots vides. Chaque colonne correspond à un document, tandis que chaque ligne correspond à un mot spécifique trouvé dans l’ensemble du corpus de texte. Les valeurs de la matrice indiquent le nombre de fois qu’un terme donné apparaît dans un document donné. Si le terme w apparaît n fois dans le document d, alors [w,d] = n. Par exemple, le document 1 utilise deux fois « rouge », et donc [rouge, d1] = 2.

À partir de la matrice document-terme, la LSA produit une matrice document-document et une matrice terme-terme. Si les dimensions de la matrice terme-document sont définies comme d documents multipliés par w mots, alors la matrice document-document est d fois d, et la matrice terme-terme w fois w. Chaque valeur de la matrice document-document indique le nombre de mots que chaque document a en commun. Chaque valeur de la matrice terme-terme indique le nombre de documents dans lesquels deux termes coexistent.3

La parcimonie des données, qui conduit à un surajustement du modèle, se produit lorsque la majorité des valeurs de données d’un jeu de données donné sont nulles (c’est-à-dire, vides). Cela se produit régulièrement lors de la construction de matrices document-terme, pour lesquelles chaque mot individuel est une dimension de ligne et d’espace vectoriel distincte, car un document ne contiendra généralement pas la majorité des mots qui sont plus fréquents dans d’autres documents. En effet, la matrice document-terme de l’exemple utilisée ici contient de nombreuses utilisations pour des mots tels que Moïse, violettes et bleues qui n’apparaissent que dans un seul document. Bien entendu, les techniques de prétraitement de texte, telles que la suppression des mots vides, la dérivation et la lemmatisation, peuvent contribuer à réduire la parcimonie. La LSA offre cependant une approche plus ciblée.

Réduction de la dimensionnalité

La LSA déploie une technique de réduction de la dimensionnalité connue sous le nom de décomposition en valeurs singulières (SVD) pour réduire la parcimonie dans la matrice document-terme. La SVD alimente de nombreuses autres approches de réduction des dimensions telles que l’analyse en composantes principales. Le SVD permet d’atténuer les problèmes résultant de la polysémie, de mots uniques ayant plusieurs significations, et de synonymes, de mots différents ayant une signification similaire.

En utilisant les matrices calculées à partir des termes dans les matrices document-document et terme-terme, l’algorithme LSA effectue une SVD sur la matrice terme-document initiale. Cela produit de nouvelles matrices spéciales de vecteurs de valeurs propres qui décomposent les relations terme-document originales en facteurs linéaires indépendants. Le plus important d’entre eux est la matrice des valeurs singulières produites à partir des racines carrées des valeurs propres de la matrice document-document. Dans cette matrice diagonale, souvent représentée par Σ, les valeurs sont toujours positives et disposées par ordre décroissant le long de la diagonale de la matrice :

Exemple de matrice sigma éparse

Comme le montre la matrice Σ de cet exemple, la plupart des valeurs inférieures sont proches de zéro. Le développeur détermine une valeur seuil adaptée à sa situation et réduit à zéro toutes les valeurs singulières de Σ inférieures à ce seuil. Cela signifie supprimer toutes les lignes et colonnes entièrement occupées par des zéros. À son tour, nous supprimons des lignes et des colonnes de nos autres matrices originales jusqu’à ce qu’elles aient le même nombre de lignes et de colonnes que Σ. Cela permet de réduire les dimensions du modèle.4

Comparaison de documents

Une fois que les dimensions du modèle ont été réduites grâce à la SVD, l’algorithme LSA compare les documents dans un espace sémantique de dimension inférieure en utilisant la similarité cosinus. La première étape de cette phase de comparaison consiste à mapper des documents dans un espace vectoriel. Ici, le LSA traite les textes comme un modèle bag of words. L’algorithme représente chaque texte du ou des corpus en tant que vecteur de document, avec les mots individuels de la matrice réduite comme dimensions de ce vecteur. Le traçage ignore l’ordre des mots et le contexte, se concentrant plutôt sur la fréquence à laquelle les mots apparaissent et sur la fréquence de leur co-occurrence dans les documents.5

Avec les modèles bag of words standard, les mots sémantiquement non pertinents (par exemple, les mots tels que le et quelques, et d’autres mots similaires) peuvent avoir la fréquence de terme la plus élevée, et donc le poids le plus important dans un modèle. L’inverse de la fréquence des documents (TF-IDF) est une technique permettant de corriger ce problème. Il s’agit de tenir compte de la prévalence d’un mot dans chaque document d’un ensemble de textes et de pondérer les mots dans chaque document en fonction de la prévalence du mot dans l’ensemble du corpus.6

Une fois les documents représentés dans l’espace vectoriel, l’algorithme LSA utilise un indicateur de similarité cosinus pour les comparer. La similarité cosinus signifie la mesure de l’angle entre deux vecteurs dans l’espace vectoriel. Cette valeur peut être comprise entre -1 et 1. Plus le score cosinus est élevé, plus les deux documents sont considérés comme similaires. La similarité cosinus est représentée par cette formule, où a et b représentent deux vecteurs de documents :7

équation du score de similarité cosinus

Recherches récentes

Il existe de nombreux cas d’utilisation des modèles thématiques, de la critique littéraire8 à la bioinformatique9 jusqu’à la détection des discours de haine sur les réseaux sociaux.10 Comme pour de nombreuses tâches de NLP, une proportion importante de la recherche en modélisation thématique au fil des ans concerne l’anglais et certaines langues latines. Plus récemment, cependant, on a commencé à explorer les approches de modélisation thématique pour l’arabe et d’autres langues utilisant des caractères non latins.17Les recherches se sont également tournées vers la manière dont les grands modèles de langue (LLM) peuvent faire progresser et améliorer les modèles thématiques. Par exemple, une étude affirme que les LLM fournissent une méthode automatisée pour résoudre les problèmes de longue date dans la modélisation thématique, à savoir comment déterminer le nombre approprié de thèmes et comment évaluer les thèmes générés.12

Mixture of Experts | 12 décembre, épisode 85

Décryptage de l’IA : Tour d’horizon hebdomadaire

Rejoignez notre panel d’ingénieurs, de chercheurs, de chefs de produits et autres spécialistes de premier plan pour connaître l’essentiel de l’actualité et des dernières tendances dans le domaine de l’IA.

Solutions connexes
IBM watsonx Orchestrate

Concevez facilement des assistants et des agents IA évolutifs, automatisez les tâches répétitives et simplifiez les processus complexes avec IBM watsonx Orchestrate.

Découvrir watsonx Orchestrate
Outils et API de traitement automatique du langage naturel

Accélérez la valeur métier de l’intelligence artificielle grâce à un portefeuille puissant et flexible de bibliothèques, de services et d’applications.

Découvrir les solutions NLP
Conseils et services en matière d’IA

Réinventez les workflows et les opérations critiques en ajoutant l’IA pour optimiser les expériences, la prise de décision et la valeur métier en temps réel.

Découvrir les services d’IA
Passez à l’étape suivante

Concevez facilement des assistants et des agents IA évolutifs, automatisez les tâches répétitives et simplifiez les processus complexes avec IBM watsonx Orchestrate.

Découvrir watsonx Orchestrate Découvrir les solutions NLP
Notes de bas de page

1 Daniel Jurafsky and James Martin, Speech and Language Processing: An Introduction to Natural Language Processing, Computational Linguistics, and Speech Recognition, 3e édition, 2023, https://web.stanford.edu/~jurafsky/slp3/ (lien externe à ibm.com). Jay Alammar and Maarten Grootendorst, Hands-On Large Language Models, O’Reilly, 2024.

2 Christopher Manning and Hinrich Schütze, Foundations of Statistical Natural Language Processing, MIT Press, 2000.

3 Scott Deerwester, Susan Dumais, George Furnas, Thomas Landauer, and Richard Harshman, “Indexing by Latent Semantic Analysis,” Journal of the American Society for Information Science, Vol. 41, No. 6, 1990, pp. 391-407, https://asistdl.onlinelibrary.wiley.com/doi/abs/10.1002/%28SICI%291097-4571%28199009%2941%3A6%3C391%3A%3AAID-ASI1%3E3.0.CO%3B2-9 (lien externe à ibm.com). Alex Thomo, “Latent Semantic Analysis,” https://www.engr.uvic.ca/~seng474/svd.pdf (lien externe à ibm.com).

4 Hana Nelson, Essential Math for AI, O’Reilly, 2023. Scott Deerwester, Susan Dumais, George Furnas, Thomas Landauer, and Richard Harshman, “Indexing by Latent Semantic Analysis,” Journal of the American Society for Information Science, Vol. 41, No. 6, 1990, pp. 391-407, https://asistdl.onlinelibrary.wiley.com/doi/abs/10.1002/%28SICI%291097-4571%28199009%2941%3A6%3C391%3A%3AAID-ASI1%3E3.0.CO%3B2-9 (lien externe à ibm.com).

5 Matthew Jockers, Text Analysis with R for Students of Literature, Springer, 2014.

6 Alice Zheng and Amanda Casari, Feature Engineering for Machine Learning, O’Reilly, 2018.

7 Elsa Negre, Information and Recommender Systems, Vol. 4, Wiley-ISTE, 2015. Hana Nelson, Essential Math for AI, O’Reilly, 2023.

8 Derek Greene, James O’Sullivan, and Daragh O’Reilly, “Topic modelling literary interviews from The Paris Review,” Digital Scholarship in the Humanities, 2024,https://academic.oup.com/dsh/article/39/1/142/7515230?login=false(lien externe à ibm.com).

9 Yichen Zhang, Mohammadali (Sam) Khalilitousi, and Yongjin Park, “Unraveling dynamically encoded latent transcriptomic patterns in pancreatic cancer cells by topic modeling,” Cell Genomics, Vol. 3, No. 9, 2023, https://www.ncbi.nlm.nih.gov/pmc/articles/PMC10504675/ (lien externe à ibm.com).

10 Richard Shear, Nicholas Johnson Restrepo, Yonatan Lupu, and Neil F. Johnson, “Dynamic Topic Modeling Reveals Variations in Online Hate Narratives,” Intelligent Computing, 2022, https://link.springer.com/chapter/10.1007/978-3-031-10464-0_38 (lien externe à ibm.com).

11 Abeer Abuzayed and Hend Al-Khalifa, “BERT for Arabic Topic Modeling: An Experimental Study on BERTopic Technique,” Procedia Computer Science, 2021, pp. 191-194, https://www.sciencedirect.com/science/article/pii/S1877050921012199 (lien externe à ibm.com). Raghad Alshalan, Hend Al-Khalifa, Duaa Alsaeed, Heyam Al-Baity, and Shahad Alshalan, “Detection of Hate Speech in COVID-19--Related Tweets in the Arab Region: Deep Learning and Topic Modeling Approach,” Journal of Medical Internet Research, Vol. 22, n° 12, 2020, https://www.jmir.org/2020/12/e22609/ (lien externe à ibm.com).

12 Dominik Stammbach, Vilém Zouhar, Alexander Hoyle, Mrinmaya Sachan, and Elliott Ash, “Revisiting Automated Topic Model Evaluation with Large Language Models,” Proceedings of the 2023 Conference on Empirical Methods in Natural Language Processing, 2023, https://aclanthology.org/2023.emnlp-main.581/ (lien externe à ibm.com).