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())