BI Consult Desktop Logo BI Consult Mobile Logo
  • Russian BI Исследование российских bi
  • Перейти на Fine BI
  • Контакты
  • +7 812 334-08-01
    +7 499 608-13-06
  • Отправить сообщение
  • Главная
  • Продукты Эксперт-BI
    • Дистрибуция
    • Розничная торговля
    • Производство
    • Операторы связи
    • Страхование
    • Банки
    • Лизинг
    • Логистика
    • Нефтегазовый сектор
    • Медицина
    • Сеть ресторанов
    • E-Commerce
    • Сельское хозяйство
    • Энергетика
    • FMCG
    • Девелоперы
    • Маркетплейсы
    • Пищевая промышленность
    • Фармацевтика
    • Построение Data Platform
    • Цифровая трансформация
    • Управление по KPI
    • Финансы
    • Продажи
    • Склад
    • HR
    • Маркетинг
    • Внутренний аудит
    • Категорийный менеджмент
    • S&OP и FP&A
    • Геоаналитика
    • Цепочки поставок (SCM)
    • AutoML
    • Process Mining
    • IBP
    • ИТ (CIO)
    • Закупки
  • Платформы
    • Системы бизнес-анализа (BI)
    • Интегрированное бизнес-планирование (IBP)
    • Хранилища данных (DWH / Lakehouse)
    • Каталоги данных (Data Catalog)
    • Системы ETL и ELT
    • AI / Исскуственный интеллект
    • Шина данных (ESB)
    • Система управления мастер-данными (MDM)
    • Семантический слой
  • Услуги
    • Переход на отечественные BI и DWH системы
    • Консалтинг
    • Пилотный проект
    • Обучение и сертификация
    • Бесплатное обучение
    • Поддержка
    • Технические задания
    • Сбор требований для проекта внедрения BI-системы
    • CI/CD для DWH
    • Аудит BI приложений и DWH
    • Выделенная команда
    • Настойка и поддержка баз данных
    • Разработка BI Стратегии
    • Styleguide для BI-системы
    • Как выбрать BI-систему
  • Курсы
    • Учебный курс Информационная грамотность (Data Literacy)
    • Учебный курс для бизнес-аналитиков
    • Учебный курс для системных аналитиков
    • Учебный курс по Data Governance
    • Учебный курс Как стать CDO
    • Учебный курс Современная архитектура хранилища данных
    • Учебный курс по Fine BI
    • Учебный курс по FineReport
    • Учебный курс по DWH
    • Учебный курс по Data Science (ML, AI)
    • Учебный курс по PostgreSQL
    • Учебный курс по Greenplum
    • Учебный курс по Apache Airflow и NiFi
    • Учебный курс по Open-source BI
    • Учебный курс по ClickHouse
    • Учебный курс по DataLens
    • Учебный курс по Loginom
    • Учебный курс по Modus BI и ETL
    • Учебный курс по Visiology
    • Учебный курс по dbt (Data Build Tool)
  • Компания
    • Руководство
    • Новости
    • Клиенты
    • Карьера
    • Скачать
    • Контакты

BI

  • FineBI
  • FineReport
  • FineDataLink
  • FineChatBI (FineAI)
  • Коннекторы данных из 1С в BI
  • Airflow / Nifi
  • Visiology
  • PIX BI
  • Modus BI
  • Yandex.DataLens
  • Open-source BI: Superset/Metabase
  • Luxms BI
  • AW BI + Alpha BI
  • FlyBI + Форсайт. Аналитическая Платформа
  • Loginom
  • Триафлай
  • AI / Исскуственный интеллект
  • Optimacros
  • Навигатор BI
  • Семантический слой

СУБД

  • Arenadata
  • ClickHouse
  • Greenplum
  • Postgres Professional
  • TData

Другое

  • Построение Data Platform
    • Аналитическое хранилище данных
    • Data Lake и Data Engineering
    • Подробнее про Data Lake
    • Внедрение Lakehouse
      • Apache Doris
      • StarRocks
      • Trino
    • Миграция витрин из пропиетарных DWH на новый стек
    • Учебный курс "Современная архитектура хранилища данных"
Главная » Курсы по системам бизнес-анализа и методологии » Учебный курс по MLOps и Data Science (ML, AI) » Что такое TF-IDF в машинном обучении

Что такое TF-IDF в машинном обучении

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

В машинном обучении TF-IDF используют для преобразования текстов в числовые признаки: в поиске, классификации документов, анализе отзывов, рекомендательных системах и других NLP-задачах. В статье разберем, что такое TF-IDF, как работают TF и IDF, почему редкие и смысловые слова получают больший вес, а также как реализовать векторизацию текста на Python с помощью Scikit-learn.

Что внутри:

  • что такое TF-IDF простыми словами;
  • зачем нужна векторизация текста в машинном обучении;
  • как работает TF — term frequency;
  • как работает IDF — inverse document frequency;
  • почему частые служебные слова получают меньший вес;
  • как TF-IDF помогает поиску выбирать более релевантные документы;
  • чем TfidfTransformer отличается от TfidfVectorizer;
  • пример реализации TF-IDF на Python в Scikit-learn;
  • где TF-IDF применяют в NLP и анализе текстов.

 

Введение в векторизацию TF-IDF в машинном обучении и его реализация с использованием Python.

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

 

Что такое TF-IDF?

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

Scikit-Learn реализует метод TF-IDF в двух классах: TfidfTransformer, который принимает выходные данные разреженной матрицы, созданные CountVectorizer, и преобразует их, и TfidfVectorizer, который принимает текстовые данные и выполняет как извлечение функций из пакета слов, так и преобразование TF-IDF.

 

Зачем нужна векторизация TF-IDF?

Предположим, у поисковой системы есть база данных с тысячами описаний кошек, и пользователь хочет найти пушистых кошек, а затем вводит запрос «The furry cat». Поисковой системе необходимо решить, какой результат должен быть возвращен из базы данных.

Если в поисковой системе есть документы, которые соответствуют точному запросу, не будет никаких сомнений, но что, если ей нужно выбрать между частичными совпадениями? Чтобы упростить, скажем, он должен выбрать между этими двумя описаниями:

  • «The pretty cat»
  • «A furry kitten»

 

Первое описание содержит 2 из 3 слов запроса, а второе соответствует только 1 из 3, тогда поисковая система выберет первое описание. Как TF-IDF может помочь ему выбрать второе описание вместо первого?

TF одинаков для каждого слова, здесь никакой разницы. Однако можно было бы ожидать, что термины «cat» и «kitten» будут представлены во многих документах (высокая частота документов означает низкий IDF), а вот термин  «furry» будет встречаться в меньшем количестве документов (IDF выше). Таким образом, TF-IDF для «cat» и «kitten» имеет низкое значение, а TF-IDF будет больше для «hairy», то есть в нашей базе данных слово «hairy» имеет большую силу. Различение как «cat» и «kitten».

Если мы используем TF-IDF для взвешивания различных слов, соответствующих запросу, слово «furry» будет более релевантным, чем слово «cat», и поэтому мы могли бы выбрать «A furry kitten» как лучшее соответствие.

 

Реализация алгоритма с помощью Python

А теперь давайте посмотрим, как реализовать метод TF-IDF с машинным обучением и использованием языка программирования Python. В приведенном ниже примере показана реализация векторизации TF-IDF с использованием Scikit-learn:

 

from sklearn.feature_extraction.text import TfidfVectorizer
corpus = [
    'This is the first document.',
    'This document is the second document.',
    'And this is the third one.',
    'Is this the first document?',
]
vectorizer = TfidfVectorizer()
X = vectorizer.fit_transform(corpus)
print(vectorizer.get_feature_names())

print(X.shape)

 

Результат:

(4, 9)

 

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

Надеюсь, вам понравилась эта статья о векторизации TF-IDF в машинном обучении.

 

FAQ

Вопрос: Что такое TF-IDF?

Ответ: TF-IDF — это метод оценки важности слова в документе. Он повышает вес слов, которые часто встречаются в конкретном документе, но редко встречаются во всем корпусе текстов.

 

Вопрос: Зачем TF-IDF нужен в машинном обучении?

Ответ: Алгоритмы машинного обучения работают с числами, а не с текстом. TF-IDF преобразует документы в числовые векторы, которые можно использовать для классификации, поиска, кластеризации и других NLP-задач.

 

Вопрос: Чем TF отличается от IDF?

Ответ: TF показывает, как часто слово встречается в конкретном документе. IDF показывает, насколько редко это слово встречается во всем наборе документов. Вместе они помогают выделить слова, которые лучше описывают смысл текста.

 

Вопрос: Чем TfidfVectorizer отличается от TfidfTransformer?

Ответ: TfidfVectorizer сразу принимает текстовые документы и строит TF-IDF-признаки. TfidfTransformer используется после CountVectorizer и преобразует уже готовую матрицу частот слов в TF-IDF.

 

Вопрос: Где применяется TF-IDF?

Ответ: TF-IDF применяют в поисковых системах, классификации текстов, анализе отзывов, тематической кластеризации, рекомендательных системах и базовых NLP-пайплайнах.

 

  • Градиентный спуск в машинном обучении
  • Метрики оценки Machine Learning моделей
  • LSTM в машинном обучении
  • Кривая AUC и ROC с использованием Python

 

 

Узнать стоимость решенияЗапросить видео презентацию

← Предыдущая статья
Косинусное сходство в машинном обучении
Следующая статья →
Что такое перекрестная проверка в машинном обучении?

 

Внедряем AI в бизнес-процессы крупных компаний
От стратегии и инфраструктуры до AI-агентов, интеграций и промышленной эксплуатации.

Подробнее об AI-решениях

 

Запросить видео презентацию Запросить доступ к демо стенду online Узнать стоимость лицензий

Задать вопрос

loading...

Решения

Анализировать ФинансыУвеличивайте ПродажиОптимальный Склад и ЛогистикаМаркетинговые Метрики

Клиенты
  • Группа компаний "Дёке" производит товары для внешней отделки загородных домов. Ассортимент включает виниловый сайдинг, фасадные панели, водосточные системы, чердачные лестницы и гибкую битумную черепицу. Продукция Дёке вызывает гордость у сотрудников и партнеров компании.

  • КАМИ – компания-лидер по поставкам тяжёлых станков в России, занимающаяся продажей и обслуживанием оборудования для обработки металла и дерева, изготовления мебели и не только. На сегодняшний день в компании работают более 1300 человек, запущено 10 обучающих центров, в продаже более 7000 единиц техники. 

  • Нашей компанией был реализован проект автоматизации конвейера данных на базе СПО ETL-инструмента Apache NiFi для клиента ООО «Императорский Монетный Двор» в части актуализации данных, передаваемых из Системы Oracle в Anaplan.

  • Банк "Санкт-Петербург" - это универсальный коммерческий банк, предоставляющий полный спектр финансовых услуг для частных и корпоративных клиентов. Банк основан в 1990 году и имеет генеральную лицензию Банка России на осуществление банковских операций. Сеть банка включает более 170 офисов и отделений, а также свыше 1000 банкоматов и терминалов в Санкт-Петербурге, Москве и других регионах.

  • Решения
    • Дистрибуция
    • Розничная торговля
    • Производство
    • Операторы связи
    • Страхование
    • Банки
    • Лизинг
    • Логистика
    • Нефтегазовый сектор
    • Медицина
    • Сеть ресторанов
    • E-Commerce
    • Энергетика
    • Фармацевтика
  • Услуги
    • Переход на отечественные BI и DWH
    • Консалтинг
    • Пилотный проект
    • Обучение и сертификация
    • Бесплатное обучение
    • Техническая поддержка
    • Технические задания
    • Сбор требований для проекта внедрения BI-системы
    • CI/CD для DWH
    • Аудит BI приложений
    • Выделенная команда
    • Настойка и поддержка баз данных
    • Разработка BI Стратегии
    • Styleguide для BI-системы
    • Как выбрать BI-систему
  • Платформы
    • FineBI
    • FineReport
    • FineDataLink
    • Коннекторы данных из 1С в BI
    • Airflow + NiFi
    • Visiology
    • Luxms BI
    • Modus BI
    • PIX BI
    • Arenadata
    • ClickHouse
    • Greenplum
    • Postgres Professional
    • Open-source BI: Superset/Metabase
    • Loginom
    • Yandex.DataLens
    • AI / Исскуственный интеллект
    • Optimacros
    • Шины данных
  • Курсы
    • Учебный курс Информационная грамотность
    • Учебный курс для бизнес-аналитиков
    • Учебный курс для системных аналитиков
    • Учебный курс по Data Governance
    • Учебный курс Как стать CDO
    • Учебный курс Современная архитектура хранилища данных
    • Учебный курс по Fine BI
    • Учебный курс по FineReport
    • Учебный курс по DWH
    • Учебный курс по Data Science (ML, AI)
    • Учебный курс по PostgreSQL
    • Учебный курс по Apache Airflow и NiFi
    • Учебный курс по Open-source BI
    • Учебный курс по ClickHouse
    • Учебный курс по DataLens
    • Учебный курс по Loginom
    • Учебный курс по Modus BI и ETL
    • Учебный курс по Visiology
    • Учебный курс по dbt
  • Функциональные решения
    • Создание Data Lake
    • Цифровая трансформация
    • Управление по KPI
    • Финансы
    • Продажи
    • Склад
    • HR
    • Маркетинг
    • Внутренний аудит
    • Категорийный менеджмент
    • S&OP и прогнозная аналитика
    • Геоаналитика
    • Цепочки поставок (SCM)
    • AutoML
    • Process Mining
    • Сквозная аналитика
  • Компания
    • О нас
    • Руководство
    • Новости
    • Клиенты
    • Скачать
    • Контакты
    • Политика конфиденциальности
RutubeVkontakteLinkedInYouTube
ООО "Би Ай Консалт",
ИНН: 7811437757,
ОГРН: 1097847154184
199178, Россия,
Санкт-Петербург,
6-ая линия В.О., Д. 63, 4 этаж
Тел: +7 (812) 334-08-01
Тел: +7 (499) 608-13-06
E-mail: info@biconsult.ru

 

 

 

 

 

×

Пользуясь сайтом, вы соглашаетесь с использованием cookies и политикой конфиденциальности.