# TF-IDF

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 répartition 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

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 bien réparti au sein du corpus, c'est-à-dire qu'il est présent dans de nombreux documents (tels 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 si sa répartition au sein du corpus est faible : l'inverse de la répartition du terme dans les documents du corpus (IDF) est grand. 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
### Fréquence du terme

La fréquence « brute » d'un terme est simplement le nombre d'occurrences de ce terme dans le document considéré, divisé par le nombre de mots du document. On peut choisir cette fréquence brute pour exprimer la fréquence d'un terme.
Des variantes ont été proposées. Un choix plus simple est le nombre d'occurrences de ce terme dans le document (appeler ce nombre « fréquence » est un abus de langage). Un choix encore plus simple, dit « binaire », est de mettre 1 si le terme apparaît dans le document et 0 sinon. À 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 | ${0,1}$ |
| nombre d'occurrences | $f_{t,d}$ |
| fréquence brute | $f_{t,d}{\Bigg /}{\sum _{t'\in d}{f_{t',d}}}$ |
| normalisation logarithmique | $\log(1+f_{t,d})$ |
| normalisation « 0.5 » par le max | $0.5+0.5\cdot {\frac {f_{t,d}}{\max _{\{t'\in d\}}{f_{t',d}}}}$ |
| normalisation par le max | $K+(1-K){\frac {f_{t,d}}{\max _{\{t'\in d\}}{f_{t',d}}}}$ |

### Fréquence inverse de document

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 bien répartis, considérés comme plus discriminants. Elle consiste à calculer le logarithme (en base 10 ou en base 2) de l'inverse de la proportion de documents du corpus qui contiennent le terme :
$\mathrm {idf_{i}} =\log {\frac {|D|}{|\{d_{j}:t_{i}\in d_{j}\}|}}$
où :
* $|D|~$ : nombre total de documents dans le corpus ;
* $|\{d_{j}:t_{i}\in d_{j}\}|$ : nombre de documents où le terme $t_{i}$ apparaît (c'est-à-dire $n_{i,j}\neq 0$).

### Calcul de TF-IDF

Finalement, le poids s'obtient en multipliant les deux mesures :
$\mathrm {tfidf_{i,j}} =\mathrm {tf_{i,j}} \cdot \mathrm {idf_{i}}$

## Exemple

Corpus (tiré d'œuvres de Friedrich Gottlieb Klopstock) :
| 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 $d_{1}$) et le terme analysé est « qui » (soit $t_{1}$ = qui). La ponctuation et l'apostrophe sont ignorées.

### Calcul de TF

TF(t) = Nombre d'apparitions du terme t dans le document / Nombre total de mots dans le document 1
    $\mathrm {tf_{1,1}} ={\frac {n_{1,1}}{\sum _{k}n_{k,1}}}={\frac {2}{38}}$
Détails du calcul : la plupart des termes apparaissent une fois (21 termes), arc, de, et, le, les, par et qui apparaissent 2 fois (7 termes) et l' apparaît 3 fois (1 terme). Le dénominateur est donc 21*1 + 7*2 + 1*3 = 38. Cette somme correspond au nombre de mots dans le document.

### Calcul de IDF

Le terme qui n'apparaît pas dans le deuxième document et apparaît dans le premier et le troisième. Ainsi :
    $\mathrm {idf_{1}} =\log {\frac {|D|}{|\{d_{j}:t_{1}\in d_{j}\}|}}=\log {\frac {3}{2}}$

### Poids final

On obtient :
    $\mathrm {tfidf_{1,1}} ={\frac {2}{38}}\cdot \log {\frac {3}{2}}\approx 0{,}0092$
Pour les autres documents :
    $\mathrm {tfidf_{1,2}} =0\cdot \log {\frac {3}{2}}=0$
    $\mathrm {tfidf_{1,3}} ={\frac {1}{40}}\cdot \log {\frac {3}{2}}\approx 0{,}0044$
Le premier document apparaît ainsi comme « le plus pertinent » pour le mot qui.

## Applications

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.