TF-IDF

Midiendo qué tan importante es una palabra dentro de un documento

TF-IDF es una técnica de vectorización de texto que pondera palabras según:

  • qué tan frecuentes son en un documento
  • qué tan raras son en todo el corpus

👉 permite destacar palabras importantes y reducir el peso de palabras demasiado comunes.


Definición corta

TF-IDF asigna mayor importancia a palabras frecuentes en un documento pero poco frecuentes en el resto del corpus.


🧠 Intuición

TF-IDF responde:

👉 “¿Qué palabras hacen realmente especial a este documento?”


Palabra frecuente en documento + Palabra rara globalmente ↓ Alta importancia

🔹 Problema que intenta resolver

En bolsa de palabras:

  • palabras comunes dominan
  • términos poco informativos pesan demasiado

📊 Ejemplo conceptual

“el”, “de”, “la” ↓ Muy frecuentes ↓ Poca utilidad semántica

👉 TF-IDF reduce su impacto.


🔄 Componentes principales

🔹 TF (frecuencia de término)

Mide cuántas veces aparece una palabra en un documento.


📐 Fórmula TF

TF(t,d)=ft,dkfk,dTF(t,d)=\frac{f_{t,d}}{\sum_k f_{k,d}}


👉 donde:

  • ft,df_{t,d}: frecuencia del término

🔹 IDF (frecuencia inversa de documento)

Mide qué tan rara es una palabra en el corpus.


📐 Fórmula IDF

IDF(t)=logNdftIDF(t)=\log\frac{N}{df_t}


👉 donde:

  • NN: número total de documentos
  • dftdf_t​: documentos que contienen el término

📐 Fórmula final TF-IDF

TFIDF(t,d)=TF(t,d)×IDF(t)TF\text{-}IDF(t,d)=TF(t,d)\times IDF(t)


🧠 Idea clave

Una palabra obtiene:

  • puntuación alta → si es frecuente localmente y rara globalmente
  • puntuación baja → si aparece en casi todos los documentos

📊 Ejemplo conceptual

“transformer” ↓ Rara en corpus general ↓ Muy informativa

“el” ↓ Aparece en todos lados ↓ Poco informativa

🧠 Relación con bolsa de palabras

Bolsa de palabrasTF-IDF
conteos simplesconteos ponderados
palabras comunes dominanpalabras relevantes destacan

📊 Ejemplo conceptual

Conteos ↓ Ponderación inteligente

🧠 Uso en machine learning

TF-IDF se usa en:

  • clasificación de documentos
  • motores de búsqueda
  • análisis de sentimiento
  • recuperación de información

📊 Ejemplo conceptual

Texto ↓ TF-IDF ↓ Vectores ↓ Modelo

🧠 Ventajas

  • simple y eficiente
  • mejora sobre Bag of Words
  • resalta términos importantes
  • muy útil en NLP clásico

🧠 Desventajas

  • ignora orden de palabras
  • ignora contexto semántico
  • produce vectores dispersos
  • no entiende significado profundo

🧠 Relación con embeddings

TF-IDFEmbeddings
frecuencias ponderadassignificado semántico
dispersodenso
sin contextocontextual

📊 Ejemplo conceptual

Importancia estadística vs Significado semántico

🧠 Aplicación en motores de búsqueda

TF-IDF fue históricamente clave en:

  • ranking de documentos
  • búsqueda textual
  • recuperación de información

📊 Ejemplo conceptual

Consulta ↓ TF-IDF ↓ Documentos relevantes

📊 Ejemplo en Python

from sklearn.feature_extraction.text import TfidfVectorizer
texts = [
"gato perro gato",
"perro pájaro"
]
vectorizer = TfidfVectorizer()
X = vectorizer.fit_transform(texts)
print(vectorizer.get_feature_names_out())
print(X.toarray())

Resultado esperado

Vectores ponderados
Palabras raras reciben más peso

🧠 Qué muestran estos ejemplos

  • importancia relativa de términos
  • ponderación estadística
  • vectorización avanzada

⚠️ Errores comunes

Pensar que entiende semántica

Solo mide importancia estadística.


Ignorar stopwords

Pueden afectar resultados.


Usarlo para relaciones complejas

Embeddings modernos suelen ser mejores.


📊 Ejemplo conceptual en ML

Texto ↓ TF-IDF ↓ Representación numérica ↓ Modelo

🧠 Interpretación profunda

TF-IDF refleja un principio clave:

👉 Las palabras más útiles no son necesariamente las más frecuentes, sino las más distintivas

Fue una tecnología fundamental para:

  • motores de búsqueda
  • NLP clásico
  • recuperación de información

y preparó el camino para representaciones modernas como embeddings y Transformers.

Conclusión

TF-IDF es una técnica de vectorización que pondera palabras según su importancia estadística dentro de un corpus.

👉 Sigue siendo una herramienta esencial en NLP clásico y sistemas de búsqueda.


Related Concepts