Извлечение признаков из необработанных данных для машинного обучения
Разработка признаков — это этап предварительной обработки в контролируемом машинном обучении и статистическом моделировании [1] , который преобразует необработанные данные в более эффективный набор входных данных. Каждый входной сигнал содержит несколько атрибутов, известных как признаки. Предоставляя моделям релевантную информацию, разработка признаков значительно повышает их точность прогнозирования и способность принятия решений. [2] [3] [4]
Помимо машинного обучения, принципы проектирования признаков применяются в различных научных областях, включая физику. Например, физики строят безразмерные числа, такие как число Рейнольдса в гидродинамике , число Нуссельта в теплопередаче и число Архимеда в седиментации . Они также разрабатывают первые приближения решений, такие как аналитические решения для прочности материалов в механике. [5]
Кластеризация
Одним из применений проектирования признаков была кластеризация объектов-признаков или объектов-образцов в наборе данных. В частности, проектирование признаков на основе матричной декомпозиции широко использовалось для кластеризации данных при ограничениях неотрицательности на коэффициенты признаков. К ним относятся неотрицательная матричная факторизация (NMF), [6] неотрицательная матричная трифакторизация (NMTF), [7] неотрицательная тензорная декомпозиция/факторизация (NTF/NTD), [8] и т. д. Ограничения неотрицательности на коэффициенты векторов признаков, извлеченных вышеуказанными алгоритмами, дают представление на основе частей, а различные матрицы факторов демонстрируют естественные свойства кластеризации. Несколько расширений вышеуказанных методов проектирования признаков были описаны в литературе, включая факторизацию с ограничениями ортогональности для жесткой кластеризации и многообразное обучение для преодоления присущих этим алгоритмам проблем.
Другие классы алгоритмов проектирования признаков включают использование общей скрытой структуры в нескольких взаимосвязанных наборах данных для получения консенсусной (общей) схемы кластеризации. Примером является классификация Multi-view на основе консенсусной матрицы декомпозиции (MCMD), [2] , которая разрабатывает общую схему кластеризации в нескольких наборах данных. MCMD предназначен для вывода двух типов меток классов (масштабно-вариантная и масштабно-инвариантная кластеризация), а также:
- является вычислительно устойчивым к отсутствующей информации,
- можно получить выбросы на основе формы и масштаба,
- и может эффективно обрабатывать многомерные данные.
Связанные матричные и тензорные разложения популярны в проектировании многовидовых объектов. [9]
Прогностическое моделирование
Инженерия признаков в машинном обучении и статистическом моделировании включает выбор, создание, преобразование и извлечение признаков данных. Ключевые компоненты включают создание признаков из существующих данных, преобразование и импутацию отсутствующих или недействительных признаков, уменьшение размерности данных с помощью таких методов, как анализ главных компонентов (PCA), анализ независимых компонентов (ICA) и линейный дискриминантный анализ (LDA), а также выбор наиболее релевантных признаков для обучения модели на основе оценок важности и корреляционных матриц . [10]
Значимость признаков различается. [11] Даже относительно незначительные признаки могут вносить вклад в модель. Выбор признаков может сократить количество признаков, чтобы предотвратить слишком специфичную для обучающего набора данных модель (переобучение). [12]
Взрыв признаков происходит, когда число выявленных признаков слишком велико для эффективной оценки или оптимизации модели. Распространенные причины включают:
- Шаблоны функций — реализация шаблонов функций вместо кодирования новых функций
- Комбинации признаков - комбинации, которые не могут быть представлены линейной системой.
Взрывное увеличение числа признаков можно ограничить с помощью таких методов, как: регуляризация , методы ядра и выбор признаков . [13]
Автоматизация
Автоматизация проектирования признаков — это тема исследований, которая восходит к 1990-м годам. [14] Программное обеспечение для машинного обучения, включающее автоматизированное проектирование признаков, стало коммерчески доступным с 2016 года. [15] Соответствующую академическую литературу можно условно разделить на два типа:
- Обучение на основе многореляционного дерева решений (MRDTL) использует контролируемый алгоритм, аналогичный дереву решений .
- Глубокий синтез признаков использует более простые методы. [ необходима ссылка ]
Обучение многореляционному дереву решений (MRDTL)
Обучение дереву решений с помощью мультиреляционного решения (MRDTL) расширяет традиционные методы дерева решений для реляционных баз данных , обрабатывая сложные взаимосвязи данных между таблицами. Он инновационно использует графы выбора в качестве узлов решений , систематически совершенствуемых до тех пор, пока не будет достигнут определенный критерий завершения. [14]
Большинство исследований MRDTL базируют реализации на реляционных базах данных, что приводит к множеству избыточных операций. Эти избыточности можно уменьшить, используя такие методы, как распространение идентификаторов кортежей. [16] [17]
Реализации с открытым исходным кодом
Существует ряд библиотек и инструментов с открытым исходным кодом, которые автоматизируют разработку признаков на основе реляционных данных и временных рядов:
- featuretools — это библиотека Python для преобразования временных рядов и реляционных данных в матрицы признаков для машинного обучения. [18] [19] [20]
- MCMD: алгоритм проектирования признаков с открытым исходным кодом для совместной кластеризации нескольких наборов данных. [21] [2]
- OneBM или One-Button Machine сочетает в себе преобразования признаков и выбор признаков на основе реляционных данных с методами выбора признаков. [22]
[OneBM] помогает ученым по данным сократить время исследования данных, позволяя им пробовать и ошибаться во многих идеях за короткое время. С другой стороны, это позволяет неспециалистам, которые не знакомы с наукой о данных, быстро извлекать ценность из своих данных с небольшими усилиями, временем и затратами. [22]
- Сообщество getML — это инструмент с открытым исходным кодом для автоматизированного проектирования признаков на основе временных рядов и реляционных данных. [23] [24] Он реализован на языке C / C++ с интерфейсом Python. [24] Было показано, что он работает как минимум в 60 раз быстрее, чем tsflex, tsfresh, tsfel, featuretools или kats. [24]
- tsfresh — это библиотека Python для извлечения признаков из данных временных рядов. [25] Она оценивает качество признаков с помощью проверки гипотез. [26]
- tsflex — это библиотека Python с открытым исходным кодом для извлечения признаков из данных временных рядов. [27] Несмотря на то, что она полностью написана на Python, она показала себя более быстрой и более эффективной в плане использования памяти, чем tsfresh, seglearn или tsfel. [28]
- seglearn — это расширение для многомерных последовательных временных рядов данных библиотеки Python scikit-learn . [29]
- tsfel — это пакет Python для извлечения признаков из данных временных рядов. [30]
- kats — это набор инструментов Python для анализа данных временных рядов. [31]
Глубокий синтез признаков
Алгоритм глубокого синтеза признаков (DFS) победил 615 из 906 человеческих команд в соревновании. [32] [33]
Магазины функций
Хранилище функций — это место, где функции хранятся и организуются для явной цели использования для обучения моделей (специалистами по данным) или для прогнозирования (приложениями, имеющими обученную модель). Это центральное место, где вы можете либо создавать, либо обновлять группы функций, созданные из нескольких различных источников данных, либо создавать и обновлять новые наборы данных из этих групп функций для обучения моделей или для использования в приложениях, которые не хотят вычислять функции, а просто извлекают их, когда они им нужны для прогнозирования. [34]
Хранилище функций включает возможность хранить код, используемый для генерации функций, применять код к необработанным данным и предоставлять эти функции моделям по запросу. Полезные возможности включают в себя управление версиями функций и политики, регулирующие обстоятельства, при которых функции могут использоваться. [35]
Хранилища функций могут быть автономными программными инструментами или встроенными в платформы машинного обучения.
Альтернативы
Разработка признаков может быть трудоемким и подверженным ошибкам процессом, поскольку он требует экспертных знаний в предметной области и часто включает в себя метод проб и ошибок. [36] [37] Алгоритмы глубокого обучения могут использоваться для обработки большого набора необработанных данных без необходимости прибегать к разработке признаков. [38] Однако алгоритмы глубокого обучения по-прежнему требуют тщательной предварительной обработки и очистки входных данных. [39] Кроме того, выбор правильной архитектуры, гиперпараметров и алгоритма оптимизации для глубокой нейронной сети может быть сложным и итеративным процессом. [40]
Смотрите также
Ссылки
- ^ Хасти, Тревор; Тибширани, Роберт; Фридман, Джером Х. (2009). Элементы статистического обучения: добыча данных, вывод и прогнозирование. Springer. ISBN 978-0-387-84884-6.
- ^ abc Шарма, Шубхам; Наяк, Ричи; Бхаскар, Ашиш (2024-05-01). "Многопрофильная разработка признаков для ежедневной совместной кластеризации нескольких наборов данных о дорожном движении". Исследования транспорта, часть C: Новые технологии . 162 : 104607. Bibcode : 2024TRPC..16204607S. doi : 10.1016/j.trc.2024.104607 . ISSN 0968-090X.
- ^ Шалев-Шварц, Шай; Бен-Дэвид, Шай (2014). Понимание машинного обучения: от теории к алгоритмам . Кембридж: Cambridge University Press. ISBN 9781107057135.
- ^ Мерфи, Кевин П. (2022). Вероятностное машинное обучение . Кембридж, Массачусетс: The MIT Press (Авторское право 2022 Массачусетский технологический институт, эта работа подчиняется лицензии Creative Commons CC-BY-NC-ND). ISBN 9780262046824.
- ^ MacQueron C (2021). СМЕШИВАНИЕ ТВЕРДОГО ВЕЩЕСТВА И ЖИДКОСТИ В МЕШАЛКАХ: Моделирование, Валидация, Оптимизация конструкции и Прогнозирование качества суспензии (Отчет). doi :10.13140/RG.2.2.11074.84164/1.
- ^ Ли, Дэниел Д.; Сын, Х. Себастьян (1999). «Изучение частей объектов с помощью неотрицательной матричной факторизации». Nature . 401 (6755): 788–791. Bibcode :1999Natur.401..788L. doi :10.1038/44565. ISSN 1476-4687. PMID 10548103.
- ^ Ван, Хуа; Ни, Фейпинг; Хуан, Хэн; Дин, Крис (2011). «Неотрицательная матричная трифакторизация на основе высокопорядковой совместной кластеризации и ее быстрая реализация». 2011 IEEE 11-я международная конференция по интеллектуальному анализу данных . IEEE. стр. 774–783. doi :10.1109/icdm.2011.109. ISBN 978-1-4577-2075-8.
- ^ Лим, Лек-Хенг; Комон, Пьер (2009-04-12). "Неотрицательные приближения неотрицательных тензоров". arXiv : 0903.4530 [cs.NA].
- ^ Наяк, Ричи; Лыонг, Кхань ( 2023). «Многоаспектное обучение». Справочная библиотека интеллектуальных систем . 242. doi :10.1007/978-3-031-33560-0. ISBN 978-3-031-33559-4. ISSN 1868-4394.
- ^ "Инженерия признаков - Линза машинного обучения". docs.aws.amazon.com . Получено 2024-03-01 .
- ^ "Feature Engineering" (PDF) . 2010-04-22 . Получено 12 ноября 2015 .
- ^ "Конструирование и выбор признаков" (PDF) . Александр Бушар-Коте. 1 октября 2009 г. . Получено 12 ноября 2015 г. .
- ^ "Feature engineering in Machine Learning" (PDF) . Зденек Забокртски. Архивировано из оригинала (PDF) 4 марта 2016 года . Получено 12 ноября 2015 года .
- ^ ab Knobbe AJ, Siebes A, Van Der Wallen D (1999). "Multi-relational Decision Tree Induction" (PDF) . Principles of Data Mining and Knowledge Discovery . Lecture Notes in Computer Science. Vol. 1704. pp. 378–383. doi :10.1007/978-3-540-48247-5_46. ISBN 978-3-540-66490-1.
- ^ "Все дело в функциях". Блог Reality AI . Сентябрь 2017 г.
- ^ Yin X, Han J, Yang J, Yu PS (2004). "CrossMine: Эффективная классификация по нескольким связям базы данных". Труды. 20-я Международная конференция по инжинирингу данных . С. 399–410. doi :10.1109/ICDE.2004.1320014. ISBN 0-7695-2065-0. S2CID 1183403.
- ^ Frank R, Moser F, Ester M (2007). "Метод многореляционной классификации с использованием одно- и многофункциональных агрегационных функций". Knowledge Discovery in Databases: PKDD 2007. Lecture Notes in Computer Science. Vol. 4702. pp. 430–437. doi :10.1007/978-3-540-74976-9_43. ISBN 978-3-540-74975-2.
- ^ "Что такое Featuretools?" . Получено 7 сентября 2022 г. .
- ^ "Featuretools - фреймворк Python с открытым исходным кодом для автоматизированной разработки функций" . Получено 7 сентября 2022 г. .
- ^ "github: alteryx/featuretools". GitHub . Получено 7 сентября 2022 г. .
- ^ Шарма, Шубхам, mcmd: Структура классификации с несколькими представлениями, основанная на разложении матрицы консенсуса, разработанная Шубхамом Шармой в QUT , получено 14 апреля 2024 г.
- ^ ab Thanh Lam, Hoang; Thiebaut, Johann-Michael; Sinn, Mathieu; Chen, Bei; Mai, Tiep; Alkan, Oznur (2017-06-01). "Однокнопочная машина для автоматизации проектирования признаков в реляционных базах данных". arXiv : 1706.00327 [cs.DB].
- ^ "getML documentation" . Получено 7 сентября 2022 г. .
- ^ abc "github: getml/getml-community". GitHub . Получено 7 сентября 2022 г. .
- ^ "tsfresh documentation" . Получено 7 сентября 2022 г. .
- ^ "Извлечение признаков временного ряда на основе масштабируемых тестов гипотез (tsfresh – пакет Python)" . Получено 7 сентября 2022 г. .
- ^ "predict-idlab/tsflex". GitHub . Получено 7 сентября 2022 г. .
- ^ Ван дер Донкт, Йонас; Ван дер Донкт, Йерун; Депрост, Эмиэль; Ван Хек, Софи (2022). «tsflex: гибкая обработка временных рядов и извлечение признаков». Программное обеспечениеX . 17 : 100971. arXiv : 2111.12429 . Бибкод : 2022SoftX..1700971V. doi : 10.1016/j.softx.2021.100971. S2CID 244527198 . Проверено 7 сентября 2022 г.
- ^ "руководство пользователя seglearn" . Получено 7 сентября 2022 г. .
- ^ "Добро пожаловать в документацию TSFEL!" . Получено 7 сентября 2022 г.
- ^ "github: facebookresearch/Kats". GitHub . Получено 7 сентября 2022 г. .
- ^ "Автоматизация анализа больших данных". 16 октября 2015 г.
- ^ Кантер, Джеймс Макс; Веерамачанени, Кальян (2015). «Глубокий синтез признаков: на пути к автоматизации исследований в области науки о данных». Международная конференция IEEE 2015 года по науке о данных и передовой аналитике (DSAA) . стр. 1–10. doi :10.1109/DSAA.2015.7344858. ISBN 978-1-4673-8272-4. S2CID 206610380.
- ^ "Что такое магазин функций" . Получено 2022-04-19 .
- ^ "Введение в магазины функций" . Получено 2021-04-15 .
- ^ "Feature Engineering in Machine Learning". Программа инженерного образования (EngEd) | Раздел . Получено 21.03.2023 .
- ^ explorium_admin (2021-10-25). "5 причин, по которым разработка функций является сложной задачей". Explorium . Получено 2023-03-21 .
- ^ Шпигельхальтер, DJ (2019). Искусство статистики: обучение на основе данных. [Лондон] Великобритания. ISBN 978-0-241-39863-0. OCLC 1064776283.
{{cite book}}
: CS1 maint: location missing publisher (link) - ^ Sarker IH (ноябрь 2021 г.). «Глубокое обучение: всесторонний обзор методов, таксономии, приложений и направлений исследований». SN Computer Science . 2 (6): 420. doi :10.1007/s42979-021-00815-1. PMC 8372231. PMID 34426802 .
- ^ Бенгио, Йошуа (2012), «Практические рекомендации по обучению глубоких архитектур на основе градиента», Нейронные сети: приемы торговли , Конспект лекций по информатике, т. 7700, Берлин, Гейдельберг: Springer Berlin Heidelberg, стр. 437–478, arXiv : 1206.5533 , doi : 10.1007/978-3-642-35289-8_26, ISBN 978-3-642-35288-1, S2CID 10808461 , получено 21.03.2023
Дальнейшее чтение
- Boehmke B, Greenwell B (2019). «Feature & Target Engineering». Практическое машинное обучение с R. Chapman & Hall. стр. 41–75. ISBN 978-1-138-49568-5.
- Чжэн А., Касари А. (2018). Разработка признаков для машинного обучения: принципы и методы для специалистов по данным . O'Reilly. ISBN 978-1-4919-5324-2.
- Zumel N, Mount (2020). «Data Engineering and Data Shaping». Practical Data Science with R (2-е изд.). Manning. стр. 113–160. ISBN 978-1-61729-587-4.
- Абууф, М., Сингх, С., Мизуни, Р., Отрок, Х. (2024), Подход на основе проектирования признаков и глубокого обучения для обнаружения событий в медицинском Интернете вещей (MIoT), Elsevier BV
- Chicco D, Oneto L, Tavazzi E (декабрь 2022 г.). « Одиннадцать быстрых советов по очистке данных и проектированию признаков». PLOS Computational Biology . 18 (12): e1010718. doi : 10.1371/journal.pcbi.1010718 . PMC 9754225. PMID 36520712. S2CID 254733288.