предисловие
При обработке текстов часто необходимо присваивать веса каждому слову, а с весами - последующую дальнейшую обработку. Обычно используемый алгоритм — это в основном TF-IDF.
TF
TF, а именно Частота терминов. Мы можем думать о документе как о состоящем из нескольких терминов, тогда частота термина в документе равна TF. Существует связь между частотой слов и весом слова, которую можно использовать в качестве одного из факторов измерения веса слова.
IDF
IDF, а именно обратная частота документа. Есть проблема с алгоритмом TF: например, несколько терминов в документе имеют одинаковое количество вхождений, и трудно определить, какой из них важнее. Поэтому вводится обратная частота документа (IDF), а IDF термина может быть определен как:
IDF = log(\frac{T}{t})
Среди них T — общее количество документов в статистической выборке, t — количество документов, содержащих термин. Это означает, что чем больше документов содержит термин, тем менее важным является термин.
Как получить ИДФ
На самом деле существует несколько способов подсчета IDF.
- Соберите собственную библиотеку образцов для статистики.
- Таблица IDF сторонней статистики.
- С помощью поисковой системы Baidu или Google этот способ не является точным. Возьмите случайное значение m и предположите, что это весь документ, а затем выполните поиск термина, чтобы получить n результатов, тогда считается, что n, деленное на m, является IDF.
TF-IDF
С предыдущими TF и IDF вес термина может быть определен ими вместе. Определите TF-IDF как TF, умноженный на IDF.
код реализации
https://github.com/sea-boat/nlp_lab/tree/master/tf_idf
------------- Рекомендуем прочитать ------------
Резюме моей статьи за 2017 год — машинное обучение
Краткое изложение моих статей за 2017 год — Java и промежуточное ПО
Резюме моих статей 2017 года — глубокое обучение
Краткое изложение моих статей за 2017 год — исходный код JDK
Резюме моей статьи за 2017 год — обработка естественного языка
Резюме моих статей 2017 года — Java Concurrency
------------------рекламное время----------------
Меню официальной учетной записи было разделено на «распределенное», «машинное обучение», «глубокое обучение», «НЛП», «глубина Java», «ядро параллелизма Java», «исходный код JDK», «ядро Tomcat», и т.д. Там может быть один стиль, чтобы удовлетворить ваш аппетит.
Моя новая книга «Анализ проектирования ядра Tomcat» продана на Jingdong, и нуждающиеся друзья могут ее купить. Спасибо друзья.
Зачем писать «Анализ проектирования ядра Tomcat»
Добро пожаловать, чтобы следовать: