La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Cours 2 Recherche d'informations Espace vectoriel des sacs de mots.

Présentations similaires


Présentation au sujet: "Cours 2 Recherche d'informations Espace vectoriel des sacs de mots."— Transcription de la présentation:

1 Cours 2 Recherche d'informations Espace vectoriel des sacs de mots

2 Recherche d'informations Moteurs de recherche sur le web Recherche dans d'autres ensembles de documents : - les documents d'un utilisateur ou d'une entreprise - la documentation technique d'un gros projet Méthode de base On suppose que le sens des textes contenus dans les documents se ramène aux tokens-mots, sans tenir compte de l'ordre : modèle du sac de mots (bag of words) ou modèle vectoriel

3 Recherche d'informations Document la plus petite quantité de texte indexée et renvoyée par un système de recherche d'informations Ex. : page web, site web, article de journal, paragraphe... Requête La demande de l'utilisateur

4 Le modèle vectoriel Principe Imaginons que les tokens-mots des documents sont seulement cinéma football rugby On représente chaque document et la requête par un vecteur dans un espace à trois dimensions Les coordonnées du vecteur sont 0 ou 1 suivant que le document contient le mot correspondant ou pas Document1Document2Document3 cinéma010 football110 rugby001

5 Le modèle vectoriel Visualisation Chaque dimension correspond à un des mots du vocabulaire Chaque document correspond à un point dans l'espace, la requête aussi cinéma football rugby d1 d2 d3

6 Le modèle vectoriel Beaucoup plus que 3 tokens-mots dans le vocabulaire C'est un espace vectoriel à plus de 3 dimensions (N = plusieurs dizaines de milliers) Vocabulaire les tokens-mots de tous les documents indexés par le système Vecteurs d 1 = (m 1,1, m 2,1,..., m N,1 )d 2 = (m 1,2, m 2,2,..., m N,2 ) Similarité entre deux vecteurs sim(d 1, d 2 ) = Σ 1 i N m i,1 m i,2 C'est le nombre de coordonnées que les 2 vecteurs ont en commun C'est le produit scalaire : 0 si vecteurs orthogonaux, N si égaux

7 Exemple d1 : football football football football d2 : football cinema football cinema cinema cinema football football cinema d3 : rugby rugby rugby Similarités entre vecteurs sim(d 1, d 2 ) = 1 sim(d 2, d 3 ) = 0 sim(d 1, d 3 ) = 0

8 Le modèle vectoriel On prend le document qui a la similarité la plus élevée avec la requête L'ensemble des documents peut être représenté par une matrice Lignes : les mots Colonnes : les documents et la requête d1d2d3... cinéma football rugby

9 Exemple Requête : cinéma rugby d1d2d3r cinéma0101 football1100 rugby Similarités011 Meilleures réponses : d2 et d3

10 Le modèle vectoriel Les coordonnées des vecteurs représentent les poids des mots dans les documents Au lieu d'utiliser des poids binaires (0 ou 1), on peut utiliser le nombre d'occurrences du mot dans le document

11 Exemple d1 : football football football football d2 : football cinema football cinema cinema cinema football football cinema d3 : rugby rugby rugby Similarités entre vecteurs sim(d 1, d 2 ) = 16 sim(d 2, d 3 ) = 0 sim(d 1, d 3 ) = 0

12 Exemple Requête : cinéma rugby d1d2d3r cinéma0501 football4400 rugby Similarités053 Meilleure réponse : d2

13 Le modèle vectoriel Le produit scalaire sim(d 1, d 2 ) = Σ 1 i N m i,1 m i,2 augmente avec la taille des documents Les documents longs ne sont pas plus intéressants que les courts Donc on normalise la norme (longueur) de tous les vecteurs à 1 m i,k / Σ 1 j N m j,k 2 (documents = points sur une sphère de rayon 1) Similarité normalisée: sim(d 1, d 2 ) = Σ 1 i N m i,1 m i,2 / Σ 1 i N m i,1 2 Σ 1 i N m i,2 2 C'est le cosinus de l'angle entre les deux vecteurs Il ne dépend pas de la taille des documents (0 si vecteurs orthogonaux, 1 si égaux)

14 Exemple d1 : football football football football d2 : football cinema football cinema cinema cinema football football cinema d3 : rugby rugby rugby Similarités entre vecteurs sim(d 1, d 2 ) = 0,62 sim(d 2, d 3 ) = 0 sim(d 1, d 3 ) = 0

15 Exemple Requête : cinéma rugby d1d2d3r cinéma0501 football4400 rugby Similarités00,550,71 Meilleure réponse : d3 d2 n'est plus avantagé par sa longueur Il est désavantagé par le fait qu'il concerne aussi le football

16 Classement par pertinence Classement des documents par ordre décroissant de similarité avec la requête Seuils - nombre maximum de documents - similarité minimale En fonction des seuils, le système retient un ensemble de documents et les présente dans l'ordre de pertinence décroissante

17 Pondération par pertinence Un défaut de la méthode précédente Certains tokens-mots apparaissent souvent mais ne sont pas pertinents : de, le, à, un... On les reconnaît parce qu'ils sont fréquents dans tous les documents

18 Pondération par pertinence Coordonnées avec pondération par pertinence On utilise D documents d(i) = le nombre de documents qui contiennent le mot i D/d(i) mesure la pertinence de i 1 D/d(i) D m i,j = le nombre d'occurrences de i dans le document d j On prend comme coordonnées de d j : m i,j log D/d(i) (formule "TF IDF") term frequency, inverse document frequency On normalise la similarité avec ces nouvelles valeurs des coordonnées

19 Exemple d1 : football football football football d2 : football cinema football cinema cinema cinema football football cinema d3 : rugby rugby rugby d(i) log D/d(i) football20,41 cinema11,10 rugby11,10

20 Exemple d1 : football football football football d2 : football cinema football cinema cinema cinema football football cinema d3 : rugby rugby rugby Similarités entre vecteurs sim(d 1, d 2 ) = 0,28 sim(d 2, d 3 ) = 0 sim(d 1, d 3 ) = 0

21 Exemple Requête : cinéma rugby d1d2d3r cinéma0501 football4400 rugby Similarités00,680,71 Meilleure réponse : d3

22 Évaluation Objectif : évaluer un système de recherche d'informations Documents pertinents : d'après un jugement humain Documents retenus : par le système Rappel Proportion de documents pertinents retenus (P R) parmi tous les documents pertinents (P) rappel = P R/PLe rappel est compris entre 0 et 1 silence = 1 - rappel Précision Proportion de documents pertinents retenus parmi tous les documents retenus (R) précision = P R/RLa précision est comprise entre 0 et 1 bruit = 1 - précision

23 Quelques astuces Utilisation dun index Il est coûteux de calculer la similarité dune requête avec tous les documents dune collection (ex. sil y en a des milliards) On utilise un index pour faire un préfiltrage des documents selon la requête Un index: à chaque token-mot, on associe lensemble des documents dans lesquels il apparaît On ne garde que les documents qui contiennent au moins un token- mot de la requête

24 Filtrage de mots non pertinents Certains mots ne sont pas pertinents pour un document: ex. de, la, les, quelques, plusieurs, nos, votre Les fréquences ne sont pas un critère totalement fiable (nos nest pas forcément très fréquent dans les textes) On utilise une liste de mots non pertinents pour filtrer ces mots des textes et donc des vecteurs et de lindex Diminution de la taille mémoire nécessaire

25 Pondération des zones de documents Certaines parties de documents concentrent le plus dinformations pertinentes Dans des documents structurés ou semi-structurés (XML, HTML), on peut considérer que les mots de certaines parties sont plus importants que les mots qui se trouvent dans les autres Exemple: pour les pages Web, les mots du titre (balise ) et les mots-clés (balise META keywords) comportent beaucoup dinformations pertinentes

26 Prise en compte de la qualité dun document Dans une collection de documents, tous les documents nont pas la même qualité Un exemple : internet Une solution : tenir compte de la qualité des documents pour répondre à une requête donnée Le cas de Google : algorithme PageRank

27 Principe de PageRank Marque déposée Page : l'auteur de l'algorithme Algorithme PageRank : classement de lensemble des pages Web selon leur « qualité » Cest un processus off-line (réalisé durant la phase dindexation) Principe : la qualité dune page Web dépend du nombre de documents qui citent cette page et de leur qualité => La « qualité » dune page est donc en fait sa popularité

28 Algorithme PageRank très simplifié Un vecteur U : chaque composante est une mesure de la popularité dun document Une matrice M : représente le graphe de dépendance entre les pages Calcul du PageRank par produit matriciel itératif U [i+1] = M.U [i] avec U [0] fixé arbitrairement U [i] = M i U [0] On sarrête lorsque lon obtient un point fixe : | U [i+1] - U [i] | < ε donné

29 autres critères Distance entre les mots-clés dans le texte Ordre des mots-clés


Télécharger ppt "Cours 2 Recherche d'informations Espace vectoriel des sacs de mots."

Présentations similaires


Annonces Google