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”).