TF-IDF

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher

Le TF-IDF (de l'anglais Term Frequency-Inverse Document Frequency) est une méthode de pondération souvent utilisée en recherche d'information et en particulier dans la fouille de textes. Cette mesure statistique permet d'évaluer l'importance d'un terme contenu dans un document, relativement à une collection ou un corpus. Le poids augmente proportionnellement au nombre d'occurrences du mot dans le document. Il varie également en fonction de la fréquence du mot dans le corpus. Des variantes de la formule originale sont souvent utilisées dans des moteurs de recherche pour apprécier la pertinence d'un document en fonction des critères de recherche de l'utilisateur.

Introduction[modifier | modifier le code]

La justification théorique a posteriori de ce schéma de pondération repose sur l'observation empirique de la fréquence des mots dans un texte qui est donnée par la Loi de Zipf. Si une requête contient le terme T, un document a d'autant plus de chances d'y répondre qu'il contient ce terme : la fréquence du terme au sein du document (TF) est grande. Néanmoins, si le terme T est lui-même très fréquent au sein du corpus, c'est-à-dire qu'il est présent dans de nombreux documents (e.g. les articles définis - le, la, les), il est en fait peu discriminant. C'est pourquoi le schéma propose d'augmenter la pertinence d'un terme en fonction de sa rareté au sein du corpus (fréquence du terme dans le corpus IDF élevée). Ainsi, la présence d'un terme rare de la requête dans le contenu d'un document fait croître le « score » de ce dernier.

Définition formelle[modifier | modifier le code]

Fréquence du terme[modifier | modifier le code]

La fréquence « brute » d'un terme (raw frequency) est simplement le nombre d'occurrences de ce terme dans le document considéré (on parle de « fréquence » par abus de langage). On peut choisir cette fréquence brute pour exprimer la fréquence d'un terme (term frequency).

Des variantes ont été proposées. Un choix plus simple, dit « binaire », est de mettre 1 si le terme apparaît dans le document et 0 sinon. A l'opposé, on peut normaliser logarithmiquement la fréquence brute pour amortir les écarts. Une normalisation courante pour prendre en compte la longueur du document est de normaliser par la fréquence brute maximale du document.

Variantes de TF
Schéma de pondération formule du TF
binaire
fréquence brute
normalisation logarithmique
normalisation « 0.5 » par le max
normalisation par le max

Fréquence inverse de document[modifier | modifier le code]

La fréquence inverse de document (inverse document frequency) est une mesure de l'importance du terme dans l'ensemble du corpus. Dans le schéma TF-IDF, elle vise à donner un poids plus important aux termes les moins fréquents, considérés comme plus discriminants. Elle consiste à calculer le logarithme de l'inverse de la proportion de documents du corpus qui contiennent le terme :

où :

  •  : nombre total de documents dans le corpus ;
  •  : nombre de documents où le terme apparaît (c'est-à-dire ).

Calcul de tf-idf[modifier | modifier le code]

Finalement, le poids s'obtient en multipliant les deux mesures :

Exemple[modifier | modifier le code]

Corpus (tiré d'œuvres de Friedrich Gottlieb Klopstock)[1]
Document 1 Document 2 Document 3
Son nom est célébré par le bocage qui frémit, et par le ruisseau qui murmure, les vents l’emportent jusqu’à l’arc céleste, l’arc de grâce et de consolation que sa main tendit dans les nuages. À peine distinguait-on deux buts à l’extrémité de la carrière : des chênes ombrageaient l’un, autour de l’autre des palmiers se dessinaient dans l’éclat du soir. Ah ! le beau temps de mes travaux poétiques ! les beaux jours que j’ai passés près de toi ! Les premiers, inépuisables de joie, de paix et de liberté ; les derniers, empreints d’une mélancolie qui eut bien aussi ses charmes.

L'exemple porte sur le document 1 (soit ) et le terme analysé est « qui » (soit = qui). La ponctuation et l'apostrophe sont ignorées.

Calcul de tf[modifier | modifier le code]

Détails du calcul : la plupart des termes apparaissent une fois (21 termes), l apparaît 3 fois (1 terme) et arc, de, et, le, les, par et qui apparaissent 2 fois (7 termes). Le dénominateur est donc 3 + 7*2 + 21 = 38. Cette somme correspond au nombre de mots dans le document.

Calcul de idf[modifier | modifier le code]

Le terme « qui » n'apparaît pas dans le deuxième document. Ainsi :

Poids final[modifier | modifier le code]

On obtient :

Pour les autres documents :

Le premier document apparaît ainsi comme « le plus pertinent ».

Applications[modifier | modifier le code]

En recherche d'information, une fois un ensemble de documents potentiels identifiés comme pouvant répondre à une requête, il s'agit de les ordonner par ordre de pertinence. La pondération tf-idf est alors couramment utilisée pour établir la description des documents dans un modèle vectoriel, la similarité étant obtenue avec une distance cosinus entre le vecteur représentant la requête et chacun des vecteurs représentatifs des documents potentiels. Bien qu'établie dans les années 70, la variante Okapi BM25 est encore considérée (début XXIe siècle) comme l'une des méthodes à l'état de l'art dans ce domaine.

Bibliographie[modifier | modifier le code]

Notes et références[modifier | modifier le code]

  1. Textes tirés de Friedrich Gottlieb Klopstock sur Wikisource (les Constellations, les Deux Muses et À Schmied, ode écrite pendant une maladie dangereuse).

Voir aussi[modifier | modifier le code]

Articles connexes[modifier | modifier le code]

Liens externes[modifier | modifier le code]