10

J'ai lu à propos de l'utilisation de la décomposition de la valeur singulière (SVD) pour effectuer une analyse sémantique latente (LSA) dans le corpus de textes. J'ai compris comment faire cela, aussi je comprends les concepts mathématiques de SVD.Concepts d'analyse sémantique latente

Mais je ne comprends pas pourquoi cela s'applique aux corpus de textes (je crois - il doit y avoir une explication linguistique). Quelqu'un pourrait-il m'expliquer cela avec un point de vue linguistique?

Merci

+0

Cela pourrait être un meilleur ajustement à cstheory.stackexchange.com. – templatetypedef

+0

Avez-vous lu le paragraphe introductif de http://en.wikipedia.org/wiki/Latent_semantic_analysis? – borrible

+0

Salut, j'ai aussi eu le même doute! Est-il obligatoire de réduire les dimensions? pourquoi ne pouvons-nous pas simplement utiliser la matrice v pour trouver la similarité entre les documents et la matrice u pour trouver la similarité entre les termes? – CTsiddharth

Répondre

9

Il n'y a pas d'interprétation linguistique, pas de syntaxe, pas de manipulation de classes d'équivalence, de synonymes, d'homonymes, de retombées, etc. Aucune sémantique n'est impliquée, ce sont juste des mots. Considérons un «document» comme un panier: il contient une combinaison de mots (achats). Et les mots ont tendance à se produire avec des mots "apparentés". Par exemple: Le mot «drogue» peut apparaître avec {amour, médecin, médecine, sport, crime}; chacun vous pointera dans une direction différente. Mais combiné avec beaucoup d'autres mots dans le document, votre requête trouvera probablement des documents d'un champ similaire.

+1

Votre réponse est beaucoup mieux que le mien. Et l'exemple de * drug * était un home run! –

4

mots apparaissant ensemble (par exemple à proximité ou dans le même document dans un corpus) contribuent au contexte. L'analyse sémantique latente regroupe essentiellement des documents similaires dans un corpus en fonction de leur similarité de contexte.

Je pense que l'exemple et le tracé de mot-document sur la page this aideront à la compréhension.

3

Supposons que nous avons la série suivante de cinq documents

  • d1: Roméo et Juliette.
  • d2: Juliette: O joyeux poignard!
  • d3: Romeo est mort au poignard.
  • d4: "Vivre libre ou mourir", c'est la devise du New-Hampshire.
  • d5: Saviez-vous que New-Hampshire est en Nouvelle-Angleterre.

et une requête de recherche: meurt, poignard.

De toute évidence, d3 devrait être classé en tête de liste car il contient les deux matrices, poignard. Ensuite, d2 et d4 devraient suivre, chacun contenant un mot de la requête. Cependant, qu'en est-il de d1 et d5? Devraient-ils être retournés comme résultats potentiellement intéressants à cette requête? En tant qu'êtres humains, nous savons que d1 est tout à fait lié à la requête . D'un autre côté, d5 n'est pas tellement lié à la requête. Ainsi, nous aimerions d1 mais pas d5, ou autrement dit, nous voulons que d1 soit classé plus haut que d5.

La question est: Est-ce que la machine peut déduire cela? La réponse est oui, LSI fait exactement cela. Dans cet exemple , LSI sera en mesure de voir que le terme dagger est lié à d1 parce qu'il se produit avec les termes d1 Romeo et Juliet, en d2 et d3, respectivement.En outre, les matrices de terme sont liées à d1 et d5 parce qu'il se produit avec le terme Romeo de d1 et le terme New-Hampshire de d5 en d3 et d4, respectivement. LSI va également peser correctement les connexions découvertes; d1 plus est liée à la requête

que d5 puisque d1 est "doublement" connecté à poignarder Romeo et Juliette, et également connecté à Romeo, alors que d5 n'a qu'une seule connexion à la requête à travers New-Hampshire .

Référence: Latent Semantic Analysis (Alex Thomo)