2010-10-04 24 views
1

Je travaille sur une fonction de recherche personnalisée pour un site Web. et j'étais curieux de savoir si utiliser uniquement tf-idf pour classer les documents dans mon corpus aiderait aussi à peser des documents qui ont plusieurs termes de recherche plus élevés que les documents avec un seul terme de recherche. Théoriquement, la requête ci-dessus pèserait-elle (en utilisant le traditionnel tf-idf) un document plus haut si le document contenait 100 fois "pologne" et "eau" zéro? Ou serait-il peser un document plus lourd s'il contenait "pologne" 10 fois et "eau" 10 fois. Je suis conscient que tout dépend de la valeur tf-idf de "pologne" et "eau" mais théoriquement sur un terrain de jeu pair, serait l'algorithme aider à apporter des documents au sommet des résultats plus s'il y avait ou plusieurs termes dans le document, ou est-ce vraiment terme indépendant?tf-idf: L'aide aide-t-elle à peser des documents qui partagent les termes plus élevés qu'un document qui ne le fait pas?

+0

Salut. Est-ce qu'il y a un problème avec ma réponse? – Programmer

Répondre

1

Il est indépendant du terme. Rappelez-vous que le système de pesée tf-idf traite la requête comme un sac de mots et chaque document est considéré comme un vecteur. Pour l'exemple ci-dessus, considérons tf pour pologne est 100 alors que son idf est 1 dans doc x. En outre, considérons tf pour pologne est 10 et tf pour l'eau est 2 est doc y. l'idf de l'eau est 1.

score de doc x = 100 score de doc y = 12

doc x rang supérieur, même si a un terme.

0

son terme indépendant. Dépend du rapport entre le nombre de documents contenant de la pologne et le nombre d'entre eux qui contiennent de l'eau. c'est ce ratio. Si sa moitié-moitié, le deuxième document gagne. Si le rapport est de 100: 1, le premier document gagne puisque le rapport est plus similaire à la distribution des mots dans le document.