TF-IDF — это сокращение от термина «частота, обратная частоте документа». Это метод векторизации, используемый в области обработки естественного языка. Да, я знаю, это пугающая фраза, но поверьте мне, она намного проще, чем кажется.

Использование TF-IDF

Обработка естественного языка или НЛП — это область машинного обучения, которая занимается обработкой данных на естественном языке, включая, помимо прочего, комментарии пользователей, обзоры, анализ настроений и перевод текста.

Одно общее препятствие для всех формулировок задач, связанных с НЛП, заключается в том, что входные данные являются текстовыми. Небольшое напоминание для всех вас, ребята из Machine Learning 101 — для алгоритма нужны числа! Он не может обрабатывать текстовые данные. И что теперь? Как мы поступим?

Одной из представленных инновационных технологий была векторизация. Это включало связывание каждого предложения с вектором числовых значений, и этот вектор становился входными данными, которые вводились в модель. TF-IDF является одним из таких методов векторизации. Теперь, когда мы знаем «что?» и «почему?», давайте углубимся в «как?»

Предпосылки

Вам, ребята, необходимо узнать немного больше, прежде чем погрузиться в работу TF-IDF. Да, я мог бы включить его сюда, но это сделало бы статью длинной и скучной. Не волнуйтесь, это очень быстро читается. Он охватывает все основы обработки данных в текстовом формате. Вот ссылка — Обработка текстовых данных

Работа TF-IDF

TF-IDF обычно применяется к группе документов, каждый из которых состоит из группы предложений, чтобы понять значение слова в документе и в наборе документов. Для простоты понимания рассмотрим 3 документа и скажем, что в каждом из документов есть 1 предложение. Предположим, что каждое из этих предложений прошло через методы токенизации и нормализации, упомянутые в статье о предварительных требованиях.

Документ 1: бегите быстро

Документ 2: бегите медленно

Документ 3: иди быстро, беги быстро

Здесь мы сначала вычисляем «Частоту термина», а затем «Частоту обратного документа» для каждого слова и умножаем эти 2 значения, чтобы получить вектор для предложения.

Давайте сначала составим частотную таблицу, соответствующую всем уникальным словам:

Срок Частота

Он рассчитывается следующим образом:

Термин Частота прямо пропорциональна важности слова. Эта мера придает равное значение всем терминам.

Обратная частота документа

IDF рассчитывается следующим образом:

IDF использует логарифмические функции для обеспечения обратной зависимости между важностью слова и его частотой. Значение, возвращаемое IDF для конкретного слова, обратно пропорционально его частоте в документе, т. е. чем реже слово, тем важнее оно для документа. (log10 здесь означает - журнал по основанию 10)

Окончательные векторы

Произведение как TF, так и IDF устанавливает правильный баланс и дает число, которое может быть связано со словом, и, следовательно, позволяет нам представить предложение в виде вектора.

Затем эти векторы передаются в соответствующую модель машинного обучения, где каждый вектор действует как точка данных. Ниже приведен лишь один из методов векторизации. Есть и другие методы, такие как Мешок слов и Word2Vec.

На этом все! Счастливого обучения!

Полное раскрытие: я работаю на https://www.ml-concepts.com/, и эта статья была впервые опубликована там.