Разработка функций

редактировать

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

Содержание
  • 1 Возможности
  • 2 Важность
  • 3 Процесс
  • 4 Актуальность
  • 5 Расширение возможностей
  • 6 Автоматизация
  • 7 См. Также
  • 8 Ссылки
  • 9 Дополнительная литература
Характеристики

A характеристика - это атрибут или свойство, совместно используемое всеми независимыми модулями, по которым должен выполняться анализ или прогноз. Любой атрибут может быть функцией, если он полезен для модели.

Назначение функции, помимо атрибута, было бы намного легче понять в контексте проблемы. Функция - это характеристика, которая может помочь при решении проблемы.

Важность

Характеристики важны для прогнозных моделей и влияют на результаты.

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

Процесс

Процесс разработки функций:

  • Мозговой штурм или тестирование функций ;
  • Выбор функций для создания;
  • Создание элементов;
  • Проверка того, как элементы работают с вашей моделью;
  • Улучшение ваших функций при необходимости;
  • Вернитесь к мозговому штурму / созданию дополнительных функций, пока работа сделана.
Релевантность

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

Разброс элементов

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

  • Шаблоны функций - реализация шаблонов функций вместо кодирования новых функций
  • Комбинации функций - комбинации, которые не могут быть представлены линейной системой

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

Автоматизация

Автоматизация проектирования функций - это тема исследования, которая началась по крайней мере с конца 1990-х годов. Академическую литературу по этой теме можно грубо разделить на две строки: во-первых, изучение многореляционного дерева решений (MRDTL), в котором используется контролируемый алгоритм, похожий на дерево решений. Во-вторых, более современные подходы, такие как Deep Feature Synthesis, в которых используются более простые методы.

Обучение многореляционному дереву решений (MRDTL) генерирует функции в форме SQL-запросов путем последовательного добавления новых предложений к запросам. Например, алгоритм может начинаться с

SELECT COUNT (*) FROM ATOM t1 LEFT JOIN MOLECULE t2 ON t1.mol_id = t2.mol_id GROUP BY t1.mol_id

Затем запрос можно последовательно уточнять, добавляя условия, например "WHERE t1.charge <= -0.392".

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

В 2015 году исследователи из Массачусетского технологического института представили алгоритм Deep Feature Synthesis и продемонстрировали его эффективность в онлайн-режиме. соревнования по науке о данных, в которых он победил 615 из 906 человеческих команд. Deep Feature Synthesis доступен в виде библиотеки с открытым исходным кодом под названием Featuretools. За этой работой последовали другие исследователи, включая IBM OneBM и Berkeley Explo reKit. Исследователи из IBM заявили, что автоматизация проектирования функций «помогает специалистам по обработке данных сократить время исследования данных, позволяя им опробовать многие идеи за короткое время. С другой стороны, это позволяет неспециалистам, которые не знакомы с наукой о данных, быстро извлекать ценность из их данных с небольшими усилиями, временем и затратами ».

См. также
Ссылки
Дополнительная литература
  • Бёмке, Брэдли; Гринвелл, Брэндон (2019). "Feature Target Engineering". Практическое машинное обучение с Р. Чепменом и Холлом. С. 41–75. ISBN 978-1-138-49568-5.
  • Чжэн, Алиса; Касари, Аманда (2018). Разработка функций для машинного обучения: принципы и методы для специалистов по данным. О'Рейли. ISBN 978-1-4919-5324-2.
  • Зумель, Нина; Гора, Джон (2020). «Инженерия данных и формирование данных». Практическая наука о данных с R (2-е изд.). Мэннинг. С. 113–160. ISBN 978-1-61729-587-4.
Последняя правка сделана 2021-05-20 12:15:19
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте