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

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

За прошедшие сутки боевики 44 раза обстреляли позиции сил ООС, 1 украинский воин погиб 1970-01-01 03:00

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

Американская киноакадемия ввела новую номинацию премии "Оскар" 1970-01-01 03:00

Американская киноакадемия с 2019 года внедряет новую номинацию кинопремии «Оскар» - за выдающийся популярный фильм.

Об этом сообщает Радио Свобода со ссылкой на пресс-службу киноакадемии.

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

Госдеп США анонсировал новые санкции против РФ из-за отравления Скрипалей 1970-01-01 03:00

Госдепартамент США объявил, что введет против России новые санкции из-за отравления Сергея и Юлии Скрипалей в британском Солсбери. Санкции вступят в силу 22 августа, передает УНН со ссылкой на Reuters.

Колумбия признала Палестину независимым государством 1970-01-01 03:00

Республика Колумбия признала Палестину независимым государством.

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

"Я хотел бы сообщить вам, что от имени правительства Колумбии президент Хуан Мануэль Сантос решил признать Палестину свободным, независимым и суверенным государством", - говорится в письме, датированном 3 августа.

ХАМАС из сектора Газа запустил по Израилю около 150 ракет, есть жертвы 1970-01-01 03:00

Из сектора Газа по Израилю запустили около 150 ракет, из них 25 были перехвачены системой ПВО "Железный купол". Об этом сообщает Армия обороны Израиля (IDF) в Twitter.

"В ответ на эти нападения израильская армия заявила, что за ночь свергла 12 точек ХАМАСа в секторе Газа, в том числе завод по производству оружия", - говорится в сообщении.

О жертвах с обеих сторон сообщает Times of Israel. Трое израильтян в городе Сдерот ранены в результате атаки из сектора Газа. Также по меньшей мере восемь человек были подвергнуты паническим атакам, среди них две беременные женщины.