Sobes.tech
Middle

Como funciona o TF-IDF?

sobes.tech IA

Resposta da IA

TF-IDF (Term Frequency-Inverse Document Frequency) é uma medida estatística que reflete a importância de uma palavra num documento em relação a todo o conjunto de documentos.

  • TF (Frequência do Termo) — a frequência do termo num documento específico. Normalmente é calculada como o número de ocorrências da palavra dividido pelo número total de palavras no documento.
  • IDF (Frequência Inversa de Documento) — a frequência inversa do documento, que indica quão rara é a palavra em todo o conjunto de documentos. É calculada como o logaritmo da relação entre o número total de documentos e o número de documentos que contêm essa palavra.

O peso final da palavra no documento é o produto de TF por IDF:

[ \text{TF-IDF}(t,d) = \text{TF}(t,d) \times \log\frac{N}{1 + \text{DF}(t)} ]

onde:

  • (t) — termo,
  • (d) — documento,
  • (N) — número total de documentos,
  • (\text{DF}(t)) — número de documentos que contêm o termo (t).

Isto ajuda a destacar as palavras que aparecem frequentemente num documento específico, mas são raras noutras, o que é útil para a vetorização do texto e análise posterior.

Exemplo em Python usando sklearn:

from sklearn.feature_extraction.text import TfidfVectorizer

docs = ["aprendizagem automática é interessante", "processamento de linguagem natural importante"]
vectorizer = TfidfVectorizer()
tfidf_matrix = vectorizer.fit_transform(docs)
print(vectorizer.get_feature_names_out())
print(tfidf_matrix.toarray())