La frecuencia de término – frecuencia inversa de documento (TF-IDF) por sus siglas en inglés) es un cálculo utilizado en el área de Machine Learning para poder computar la similitud entre dos documentos. Hay varias maneras de calcularla. A continuación les presento la manera mas fácil que he visto de calcularla con un ejemplo muy simple. Espero que les sirva.
Variables a utilizar:
- Cantidad de documentos siendo analizados: 64
- Ocurrencias de la palabra «la» en el documento siendo analizado: 1,000
- Ocurrencias de la palabra «bruja» en el documento siendo analizado: 5
- En cuantos de los 64 documentos siendo analizados aparece la palabra «la»: 63
- En cuantos de los 64 documentos siendo analizados aparece la palabra «bruja»: 3
Fórmulas:
- Frecuencia de Término: la cantidad de veces que aparece una palabra en el documento siendo estudiado
- Frecuencia Inversa de Documento: log. # de documentos totales / 1 + cantidad de documentos donde aparece la palabra
Ejemplo utilizando las variables definidas:
- Frecuencia de Término para la palabra «la» = 1,000
- Frecuencia de Término para la palabra «la» = 5
Frecuencia de Término:
la | bruja | |||
1,000 | 5 |
Frecuencia Inversa del Documento:
Para la palabra «la»:
log (64 / 1 + 63 )= 0
Para la palabra «bruja»:
log (64 / 1 + 3) = 4
la | bruja | |||
0 | 4 |
Una vez que hemos calculado ambos valores tan solo queda realizar la multiplicación de los vectores para generar el TF * IDF
la | bruja | |||
1,000 * 0 = 0 | 5*4 = 20 |
Así que el TF * IDF de la palabra «la» es 0 y el TF * IDF de la palabra «bruja» es 20.
Es importante notar que este ejemplo tiene el trasfondo de demostrar como este cálculo ayuda a reducir el peso d palabras que son comunes localmente («la») e incrementar el peso de palabras que aparecen escasamente en el resto de documentos siendo comparados («bruja»).