Feature engineering: шесть шагов для создания успешной модели машинного обучения

Feature engineering: шесть шагов для создания успешной модели машинного обучения

Метод feature engineering так же стар, как и data science. Но почему-то он становится все более забытым. Высокий спрос на машинное обучение вызвал ажиотаж среди ученых-исследователей. Сегодня у них огромный опыт создания инструментов и алгоритмов. Но у них недостаточно отраслевых знаний, требуемых для feature engineering. Исследователи пытаются компенсировать это инструментами и алгоритмами. Однако алгоритмы теперь являются лишь товаром и сами по себе не генерируют корпоративное IP-портфолио (портфель интеллектуальных прав, принадлежащих компании — «Хайтек»).

Feature engineering (с англ. «создание показателей, признаков») — техника решения задач машинного обучения, позволяющая увеличить качество разрабатываемых алгоритмов. Предусматривает превращение данных, специфических для предметной области, в понятные для модели векторы. Чтобы эффективно решить задачу с feature engineering, необходимо быть экспертом в конкретной области и понимать, что влияет на конкретную целевую переменную. Поэтому многие разработчики называют feature engineering искусством, требующим решения большого количества задач и наработки опыта.

Сегодня такие стартапы, как ContextRelevant и SparkBeyond, разрабатывают новые инструменты, которые упростят для пользователей процесс создания и отбора показателей (feature selection).

Обобщенные данные тоже становятся товаром, а облачные сервисы машинного обучения (MLaaS), такие, как Amazon ML и Google AutoML, теперь позволяют даже менее опытным членам команды запускать модели данных и получать их прогнозы в течение нескольких минут. Но в результате этого набирают обороты те компании, которые развивают организационную компетенцию в сборе или изготовлении собственных данных, создаваемых при feature engineering. Простого сбора данных и построения моделей уже недостаточно.

Корпорации многому учатся у победителей соревнований по моделированию, таких как KDD Cup и Heritage Provider Network Health Prize. Своими успехами они обязаны именно грамотному подходу к методу feature engineering. Методы feature engineering

Для техники feature engineering ученые разработали ряд методов.

Контекстная трансформация. Он включает в себя преобразование отдельных функций из исходного набора в более контекстуально значимую информацию для каждой конкретной модели.

Например, при использовании категориальной функции в качестве «неизвестного» может быть специальная информация в контексте ситуации. Но внутри модели это выглядит, как просто другое значение категории. В этом случае можно ввести новую двоичную функцию has_value, чтобы отделить «неизвестное» от всех других опций. Например, функция color позволит ввести has_color для какого-то неизвестного цвета.

Команды машинного обучения часто используют биннинг для разбивания отдельных функций на несколько для лучшего понимания. Например, разделение функции «возраст» на «молодой» для <40 лет, «средний» для 40–60 лет и «пожилой» для >60 лет.

Биннинг, или балансировка данных — метод предварительной обработки, используемый для уменьшения влияния незначительных ошибок наблюдения. Исходные значения данных, которые попадают в небольшой интервал, заменяются значением, представляющим этот интервал, часто центральным значением. Это форма квантования.

Некоторые другие примеры преобразований: масштабирование значений между min-max переменной (например, возраста) в диапазоне [0, 1]; разделение количества посещений каждого типа ресторана в качестве индикатора «интереса» в кухнях мира.

Многофункциональная арифметика. Другой подход к feature engineering заключается в применении арифметических формул к набору существующих точек данных. Такие формулы создают производные, основанные на взаимодействии между функциями и их отношениях друг к другу.

Построение с многофункциональной арифметикой — очень выгодно, но оно требует полного понимания предмета и целей модели.

Примеры использования формул: расчет благоприятности «местности» из сочетания характеристик «школьного рейтинга» и «уровня преступности»; определение «коэффициента удачи казино» путем сравнения фактических расходов посетителя с ожидаемыми расходами; расчет «коэффициента использования» путем деления баланса «кредитной карты» на «лимит»; получение оценки RFM (членство, частота, финансовый поток), чтобы сегментировать клиентов из комбинации «самой последней транзакции», «частоты транзакций» и «потраченной суммы» в течение определенного периода времени.

Передовые методы. Команды выбирают более сложные алгоритмические методы, которые анализируют существующие данные для поиска возможности для создания новых функций. Анализ основных компонентов (Principal component analysis, PCA) и анализ независимых компонентов (Independent component analysis, ICA) сопоставляют существующие данные с другим пространством объектов. Глубокий синтез функций (Deep feature synthesis, DFS) позволяет переносить промежуточные результаты обучения из средних слоев нейронных сетей. Основы для успешной разработки

Команды должны постоянно искать более эффективные функции и модели. Но для достижения успеха работу необходимо комплексно структурировать. Шесть шагов для разработок с помощью feature engineering, которые пригодятся командам машинного обучения и их руководителям:

1. Уточните назначение модели. Начните с разъяснения для себя и команды основных целей и вариантов использования модели. Все должны взаимодействовать и работать ради уникальной цели. В противном случае вы будете трудиться впустую.

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

3. Идеальные новые функции. Подумайте о способах создания новых данных для лучшего описания и решения заданной проблемы. Знания в предметной области и привлечение экспертов на этом этапе обеспечат повышение ценности feature engineering.

4. Стройте функции как входные данные. После того, как вы определили новые концепции функций, выберите наиболее эффективные методы для их создания из доступных данных. Выбор правильной техники — ключ к обеспечению полезности новых функций.

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

Измерение производительности модели должно успешно применяться в бизнесе. Сегодня команды имеют обширный набор параметров измерения, которые выходят далеко за рамки точности: отзыв, оценка F1 и кривая рабочей характеристики приемника (Receiver operating characteristic, ROC).

6. Уточните функции. Разработка функций — это итеративный процесс, включающий тестирование, настройку и уточнение новых функций. Цикл оптимизации в этом процессе иногда приводит к удалению низкопроизводительных функций или замене с использованием всех возможных аналогичных вариантов до тех пор, пока не будут идентифицированы самые лучшие функции воздействия. Новая алхимия

Feature engineering — новая алхимия современного мира, в которой успешные команды превращают общие данные в интеллектуальную собственность с добавленной стоимостью для своих организаций.

Важные принципы для успеха в feature engineering: экспертиза, обеспечивающая четкое понимание бизнес-целей и соответствующих мер эффективности модели; работа через итеративный и систематический процесс; рассмотрение множества возможных вариантов фичуризации; понимание и контроль, как выбор функций влияет на производительность модели.

Превращение данных в патентованные функции — это почва для появления осмысленных моделей. Это может стать очень ценной поддержкой и обеспечить конкурентное преимущество организации.

Подпишитесь на наши новости
Лого www.SiteHere.ru
1970-01-01 03:00 http://news.xtipe.com/ru/news/25853

Смотрите так же

Телескоп Spitzer зафиксировал слияние нейтронных звезд 1970-01-01 03:00

Астрономы из Гарвард-Смитсоновского центра астрофизики проанализировали данные с космического телескопа Spitzer, который в течение 200 дней наблюдал за объектом GW170817. В результате ученым удалось проследить процесс слияния двух нейтронных звезд. Исследование опубликовано на сайте центра.    

Астрономы обнаружили мощное излучение от спутника Юпитера 1970-01-01 03:00

Международная группа ученых зафиксировала исходящие от спутника Юпитера Ганимеда электромагнитные волны, мощность которых в миллион раз выше, чем на Земле, и в 100 раз сильнее, чем от другого спутника Юпитера — Европы. Об этом пишет The Independent.

«Если изобретение с ИИ не приносит пользу, сам продукт никому не нужен» 1970-01-01 03:00

Сфера технологий, связанных с искусственным интеллектом, сегодня является особо привлекательной для инвесторов. Компании обещают футуристические продукты, но забывают про реальную пользу, которую они должны приносить. Венчурный капиталист из Индонезии Пэн Т. Онг уверен: грамотная бизнес-модель сработает лучше бесполезных функций ИИ. «Хайтек» перевел и адаптировал колонку инвестора для VentureBeat, чтобы разобраться, в чем опасность инвестиций в ИИ и что лучше выбрать — вложение в развитие технологий или реальные продукты.

Геоинженерия замедлит глобальное потепление, но снизит урожаи 1970-01-01 03:00

Направленное изменение климатических условий на Земле, или геоинженерия, может помочь справиться с глобальным потеплением, но при этом снизит урожаи. Об этом говорится в исследовании ученых из Калифорнийского университета, опубликованном в журнале Nature.  

Американские военные разрабатывают бронежилет на основе паучьего шелка 1970-01-01 03:00

Химики из Исследовательской лаборатории ВВС и Университета Пердью разрабатывают искусственный паучий шелк для изготовления на его основе бронежилетов. Ученые считают, что материал прочнее кевлара и легче нейлона, пишет Business Insider