Генерация признаков – пожалуй, самый творческий этап подготовки данных (Data Preparation) для машинного обучения (Machine Learning). Этот этап еще называют Feature Engineering. Он наступает после того, как выборка сформирована и очистка данных завершена. В этой статье мы поговорим о том, что такое признаки, какими они бывают и как Data Scientist их генерирует.
Признаки для Data Mining: определение и виды
Признак (фича, feature) – это переменная, которая описывает отдельную характеристику объекта. В табличном представлении выборки признаки – это столбцы таблицы, а объекты – строки [1]. Входные, независимые, переменные для модели машинного обучения называются предикторами, а выходные, зависимые, – целевыми признаками. Все признаки могут быть следующих видов [2]:
- бинарные, которые принимают два значения, например, {true, false}, {0,1}, {-1,1}, {«да», «нет»} и т.д.;
- номинальные (факторы), которые имеют конечное количество уровней, например, фактор «день недели» имеет именованных 7 уровней: понедельник, вторник и т. д. Факторы могут быть упорядоченными и неупорядоченными. Например, фактор «час суток» имеет 24 уровня и он упорядочен. Фактор «район города» с 32 уровнями не упорядочен, поскольку все уровни имеют равную значимость. Если фактор упорядочен, это стоит явно указать при его объявлении.
- количественные (числовые) значения в диапазоне от минус бесконечности до плюс бесконечности.
Признаки могут извлекаться из данных любого типа, в т.ч. из текста, изображений и геоданных. При обработке текстовой информации сначала выполняется ее токенизация, а затем лемматизация и цифровизация – перевод слов в числовые вектора. Этому процессу мы посвятили отдельную статью. В случае изображений зачастую анализируется не только содержание картинки как набора пикселей различного цвета, но и метаданные графического файла: дата съемки, разрешение, модель камеры и т.д. Географические данные чаще всего представлены в виде адресов (текст) или пар «широта + долгота» (числовых наборов – точек) [3].
Подготовка данных для Data Mining на Python
Код курса
DPREP
Ближайшая дата курса
по запросу
Продолжительность
32 ак.часов
Стоимость обучения
72 000 руб.
Как проходит генерация признаков: 3 задачи этого этапа Data Mining и способы их решения
Генерация признаков включает в себя 3 взаимосвязанные задачи [3], каждой из которых мы посвятили отдельную статью:
- извлечение признаков (feature extraction) – превращение данных, специфических для предметной области, в понятные для модели числовые векторы. В частности, именно здесь выполняется токенизация и лемматизация текстов, обработка изображений и геоданных;
- преобразование признаков (feature transformation) – изменение данных для повышения точности алгоритма, например, нормализация или изменение вероятностного распределения;
- отбор признаков (feature selection) – отсечение ненужных признаков с помощью алгоритмов машинного обучения, которые позволяют оценить важность предиктора, например, жадный алгоритм, логистическая регрессия, случайный лес, градиентный бустинг [4].
Чаще всего для Feature Engineering используются специализированные инструменты типа Featuretools, Trane, Feature Hub и комплексные ML-фреймворки, автоматизирующие создание конвейеров машинного обучения: MLBox, H2O, Auto Sklearn, TPOT и пр. Также Data Scientist может вручную выполнять Feature Engineering, самостоятельно написав Python-скрипты с учетом особенностей данных и предметной области, а также бизнес-потребностей. О том, как реализовать генерацию фич с помощью SQL-запросов, напрямую обращаясь к пакетным и потоковым источникам данных, читайте в нашей новой статье.
После того, как генерация признаков завершена, наступают этапы интеграции и форматирования датасета, чтобы, наконец, приступить к моделированию, т.е. машинному обучению.
Разработка и внедрение ML-решений
Код курса
MLOPS
Ближайшая дата курса
10 марта, 2025
Продолжительность
24 ак.часов
Стоимость обучения
54 000 руб.
Узнайте больше про практическое применение Apache Hive и других компонентов экосистемы Hadoop для реализации проектов Machine Learning и эффективной аналитики больших данных на специализированных курсах в нашем лицензированном учебном центре обучения и повышения квалификации для разработчиков, менеджеров, архитекторов, инженеров, администраторов, Data Scientist’ов и аналитиков Big Data в Москве:
Источники
- https://bigdataschool.ru/blog/data-preparation-operations.html
- https://www.mql5.com/ru/articles/2029
- https://habr.com/ru/company/ods/blog/325422
- http://datareview.info/article/universalnyj-podxod-pochti-k-lyuboj-zadache-mashinnogo-obucheniya/
[…] Генерация призн&… – создание производных признаков и их преобразование в векторы для модели Machine Learning, а также трансформация для повышения точности алгоритмов машинного обучения [4]; […]
[…] Когда очистка данных успешно завершена, data scientist приступает, пожалуй, к самому творческому этапу работы – генерации призн&…. […]
[…] Data Mining, а именно этапа генерации призн&…. […]
[…] при их генерации (Feature Engineering) на этапе […]
[…] данных и работа с признак…: генерация, […]
[…] (Feature Transmormation) на этапе их генерации (Feature […]