Нежное введение в термин частотно-обратная частота документа
TF-IDF расшифровывается как термин частота-обратная частота документа, и это мера, используемая в областях информационного поиска (IR) и машинного обучения, которая может количественно оценить важность или релевантность строковых представлений. (слова, фразы, леммы и т. д.) в документе среди набора документов (также известного как корпус).
Обзор TF-IDF
TF-IDF можно разбить на две части: TF (частота терминов) и IDF (обратная частота документа).
Что такое TF (термин частота)?
Частота терминов работает путем просмотра частоты конкретного термина, который вас интересует, по отношению к документу. Существует несколько мер или способов определения частоты:
- Количество раз, когда слово появляется в документе (необработанное количество).
- Частота терминов с поправкой на длину документа (необработанное количество вхождений, деленное на количество слов в документе).
- Частота в логарифмическом масштабе (например, log(1 + необработанный счет)).
- Булевая частота (например, 1, если термин встречается, или 0, если термин не встречается в документе).
Что такое IDF (обратная частота документа)?
Обратная частота документа показывает, насколько часто (или редко) слово встречается в корпусе. IDF рассчитывается следующим образом, где t – это термин (слово), для которого мы хотим измерить распространенность, а N - количество документов (d) в корпусе (D). Знаменатель — это просто количество документов, в которых встречается термин t.
Примечание. Термин может вообще не отображаться в корпусе, что может привести к ошибке деления на ноль. Один из способов справиться с этим - взять существующий счетчик и добавить 1. Таким образом, получается знаменатель (1 + счетчик). Пример того, как с этим справляется популярная библиотека scikit-learn, можно увидеть ниже.
Причина, по которой нам нужен IDF, заключается в том, чтобы помочь исправить такие слова, как «of», «as», «the» и т. д., поскольку они часто встречаются в английском корпусе. Таким образом, применяя инверсию частоты документов, мы можем свести к минимуму вес частых терминов, в то время как нечастые термины будут иметь большее влияние.
Наконец, IDF также можно получить либо из фонового корпуса, который корректирует систематическую ошибку выборки, либо из набора данных, используемого в данном эксперименте.
Собираем вместе: TF-IDF
Подводя итог, ключевая интуиция, мотивирующая TF-IDF, заключается в том, что важность термина обратно пропорциональна его частоте в документах. TF дает нам информацию о том, как часто термин появляется в документе, а IDF дает нам информацию об относительной редкости термина в коллекции документов. Перемножив эти значения вместе, мы можем получить окончательное значение TF-IDF.
Чем выше оценка TF-IDF, тем более важным или релевантным является термин; по мере того, как термин становится менее релевантным, его оценка TF-IDF приближается к 0.
Где использовать TF-IDF
Как мы видим, TF-IDF может быть очень удобной метрикой для определения того, насколько важен термин в документе. Но как используется TF-IDF? Есть три основных приложения для TF-IDF. К ним относятся машинное обучение, поиск информации и обобщение текста/извлечение ключевых слов.
Использование TF-IDF в машинном обучении и обработке естественного языка
Алгоритмы машинного обучения часто используют числовые данные, поэтому при работе с текстовыми данными или любой задачей обработки естественного языка (NLP), подполя ML/AI, связанного с текстом, эти данные сначала необходимо преобразовать в вектор числовых значений. данные с помощью процесса, известного как векторизация. Векторизация TF-IDF включает в себя вычисление оценки TF-IDF для каждого слова в вашем корпусе относительно этого документа, а затем помещение этой информации в вектор (см. изображение ниже с примерами документов A и B). Таким образом, каждый документ в вашем корпусе будет иметь свой собственный вектор, и вектор будет иметь оценку TF-IDF для каждого отдельного слова во всей коллекции документов. Когда у вас есть эти векторы, вы можете применить их к различным вариантам использования, например, посмотреть, похожи ли два документа, сравнив их вектор TF-IDF с помощью косинусного сходства.
Использование TF-IDF в поиске информации
TF-IDF также имеет варианты использования в области поиска информации, одним из распространенных примеров являются поисковые системы. Поскольку TF-IDF может сообщить вам о значимости термина на основе документа, поисковая система может использовать TF-IDF, чтобы помочь ранжировать результаты поиска на основе релевантности, с результатами, которые более релевантны пользователю с более высоким TF-IDF. баллы.
Использование TF-IDF для суммирования текста и извлечения ключевых слов
Поскольку TF-IDF взвешивает слова на основе релевантности, можно использовать этот метод, чтобы определить, что слова с наивысшей релевантностью являются наиболее важными. Это можно использовать для более эффективного обобщения статей или просто для определения ключевых слов (или даже тегов) для документа.
Векторы и вложения слов: TF-IDF против Word2Vec против Bag-of-words против BERT
Как обсуждалось выше, TF-IDF можно использовать для векторизации текста в формат, более подходящий для методов ML и NLP. Однако, хотя это популярный алгоритм НЛП, он не единственный.
Мешок слов
Мешок слов (BoW) просто подсчитывает частоту слов в документе. Таким образом, вектор для документа имеет частоту каждого слова в корпусе для этого документа. Ключевое различие между пакетом слов и TF-IDF заключается в том, что первый не включает в себя какую-либо обратную частоту документа (IDF) и представляет собой только подсчет частоты (TF).
Word2Vec
Word2Vec — это алгоритм, который использует поверхностные двухслойные, а не глубокие нейронные сети для обработки корпуса и создания наборов векторов. Некоторые ключевые различия между TF-IDF и word2vec заключаются в том, что TF-IDF — это статистическая мера, которую мы можем применить к терминам в документе, а затем использовать ее для формирования вектора, тогда как word2vec создаст вектор для термина, а затем может потребоваться дополнительная работа. нужно сделать, чтобы преобразовать этот набор векторов в единичный вектор или другой формат. Кроме того, TF-IDF не учитывает контекст слов в корпусе, в отличие от word2vec.
BERT — представление двунаправленного энкодера от трансформаторов
BERT — это метод ML/NLP, разработанный Google, который использует модель ML на основе преобразователя для преобразования фраз, слов и т. д. в векторы. Ключевые различия между TF-IDF и BERT заключаются в следующем: TF-IDF не принимает во внимание семантическое значение или контекст слов, в отличие от BERT. Кроме того, BERT использует глубокие нейронные сети как часть своей архитектуры, а это означает, что он может быть намного более затратным в вычислительном отношении, чем TF-IDF, который не имеет таких требований.
Плюсы и минусы использования TF-IDF
Плюсы использования TF-IDF
Самые большие преимущества TF-IDF заключаются в том, насколько он прост и удобен в использовании. Это просто вычислить, это дешево в вычислительном отношении, и это простая отправная точка для вычислений подобия (через векторизацию TF-IDF + косинусное сходство).
Минусы использования TF-IDF
Следует помнить, что TF-IDF не может не нести семантического значения. Он учитывает важность слов из-за того, как он их взвешивает, но он не может обязательно выводить контексты слов и понимать важность таким образом.
Также, как упоминалось выше, как и BoW, TF-IDF игнорирует порядок слов, и поэтому составные существительные, такие как «Королева Англии», не будут рассматриваться как «единая единица». Это также распространяется на такие ситуации, как отрицание с «не оплачивать счет» и «оплачивать счет», где порядок имеет большое значение. В обоих случаях с использованием инструментов NER и символов подчеркивания «queen_of_england» или «not_pay» — это способы обработки фразы как единой единицы.
Другим недостатком является то, что он может страдать от неэффективности памяти, поскольку TF-IDF может страдать от проклятия размерности. Напомним, что длина векторов TF-IDF равна размеру словаря. В некоторых контекстах классификации это может не быть проблемой, но в других контекстах, таких как кластеризация, это может быть громоздким по мере увеличения количества документов. Таким образом, может потребоваться изучение некоторых из названных выше альтернатив (BERT, Word2Vec).
Заключение
TF-IDF (Term Frequency-Inverse Document Frequency) — это удобный алгоритм, который использует частоту слов, чтобы определить, насколько релевантны эти слова для данного документа. Это относительно простой, но интуитивно понятный подход к взвешиванию слов, что позволяет использовать его в качестве отличной отправной точки для множества задач. Это включает в себя создание поисковых систем, обобщение документов или другие задачи в области поиска информации и машинного обучения.
ЗАЯВЛЕНИЕ О РАСКРЫТИИ ИНФОРМАЦИИ: © 2021 Capital One. Мнения принадлежат конкретному автору. Если в этом посте не указано иное, Capital One не связана и не поддерживается ни одной из упомянутых компаний. Все используемые или демонстрируемые товарные знаки и другая интеллектуальная собственность являются собственностью соответствующих владельцев.
Первоначально опубликовано на https://www.capitalone.com.