Middle
19
Как работает TF-IDF?
Компании, где спрашивали
ЦифровыеПривычки
Ответ от нейросети
sobes.tech AI
TF-IDF (Term Frequency-Inverse Document Frequency) — это статистическая мера, которая отражает важность слова в документе относительно всего корпуса документов.
- TF (Term Frequency) — частота термина в конкретном документе. Обычно считается как количество вхождений слова, делённое на общее количество слов в документе.
- IDF (Inverse Document Frequency) — обратная частота документа, показывает насколько слово редкое во всём наборе документов. Вычисляется как логарифм отношения общего числа документов к числу документов, содержащих это слово.
Итоговый вес слова в документе — произведение TF на IDF:
[ \text{TF-IDF}(t,d) = \text{TF}(t,d) \times \log\frac{N}{1 + \text{DF}(t)} ]
где:
- (t) — термин,
- (d) — документ,
- (N) — общее число документов,
- (\text{DF}(t)) — число документов, содержащих термин (t).
Это помогает выделить слова, которые часто встречаются в конкретном документе, но редко в других, что полезно для векторизации текста и последующего анализа.
Пример на Python с использованием sklearn:
from sklearn.feature_extraction.text import TfidfVectorizer
docs = ["машинное обучение это интересно", "обработка естественного языка важна"]
vectorizer = TfidfVectorizer()
tfidf_matrix = vectorizer.fit_transform(docs)
print(vectorizer.get_feature_names_out())
print(tfidf_matrix.toarray())