Освоение выбора функций: советы и рекомендации по выбору лучших функций для ваших данных
Важным этапом машинного обучения является выбор функций. Чтобы повысить эффективность и обобщаемость модели, она включает в себя выбор и создание подмножества функций из набора данных, которые наиболее связаны с целевой переменной.
Существует множество различных методов, которые можно использовать для выбора признаков, и подходящий метод будет зависеть от конкретной проблемы и типа данных, с которыми вы работаете. Некоторые распространенные методы включают в себя:
- Методы фильтрации: эти методы оценивают релевантность каждой функции путем расчета статистической оценки и выбора подмножества функций с наивысшей оценкой. Эти методы быстрые и простые, но они не учитывают взаимодействие между функциями или общую прогностическую силу подмножества.
- Методы-оболочки: эти методы используют алгоритм обучения для оценки производительности подмножества функций. Выбирается подмножество с наилучшей производительностью. Методы-оболочки более требовательны к вычислительным ресурсам, чем методы фильтров, но они могут обеспечить лучшие результаты, учитывая взаимодействие между функциями.
- Встроенные методы: эти методы изучают оптимальное подмножество функций как часть самого алгоритма обучения. Например, регрессия Лассо — это тип линейной регрессии, который включает член регуляризации, который наказывает большие коэффициенты и может эффективно обнулить некоторые из менее важных функций.
- Гибридные методы: эти методы сочетают в себе элементы нескольких методов выбора признаков. Например, гибридный метод может использовать метод фильтра для выбора подмножества объектов, а затем использовать метод-оболочку для дальнейшего уточнения выбора.
ПРИМЕЧАНИЕ. Методы фильтрации измеряют релевантность функций по их корреляции с зависимой переменной, в то время как методы-оболочки измеряют полезность подмножества функций путем фактического обучения модели на них.
Важно отметить, что выбор признаков — это компромисс между сложностью модели и предсказательной силой. Добавление дополнительных функций к модели потенциально может улучшить ее производительность, но также может затруднить интерпретацию модели и увеличить риск переобучения (хорошо работает на обучающих данных, но плохо на невидимых данных).
Методы фильтрации
- Тест хи-квадрат: этот метод вычисляет статистику хи-квадрат для каждой функции, которая измеряет зависимость между функцией и целевой переменной. Функции с высокой статистикой хи-квадрат считаются более важными, поскольку они имеют более сильную связь с целевой переменной.
- Взаимная информация: этот метод вычисляет общую информацию между функцией и целевой переменной, которая измеряет количество информации, которую функция предоставляет о цели.
- F-значение ANOVA: этот метод вычисляет F-значение для каждого признака, которое измеряет разницу в среднем значении признака между различными классами целевой переменной. Признаки с высоким F-значением считаются более важными, поскольку они тесно связаны с целью.
- Прирост информации. Этот метод измеряет количество информации, которую функция предоставляет о цели, на основе энтропии цели до и после того, как стало известно значение функции.
Метод оболочки
- Выбор вперед. Этот метод начинается с пустого набора функций и итеративно добавляется одна функция за раз в зависимости от ее влияния на производительность модели. Функция, которая приводит к наибольшему улучшению производительности модели, добавляется в набор, и процесс повторяется до тех пор, пока не будет достигнуто дальнейшее улучшение.
- Последовательный плавающий выбор вперед (SFFS). Этот метод аналогичен выбору вперед, но вместо добавления одного объекта за раз он добавляет группу объектов за раз. Он начинается с пустого набора функций и итеративно добавляет наиболее многообещающую группу функций в зависимости от их влияния на производительность модели.
- Обратное исключение. Этот метод начинается с набора всех функций и итеративно удаляет одну функцию за раз в зависимости от ее влияния на производительность модели. Функция, которая приводит к наименьшему ухудшению производительности модели, удаляется из набора, и процесс повторяется до тех пор, пока не будет достигнуто дальнейшее улучшение.
- Последовательный обратный плавающий выбор (SBFS). Этот метод аналогичен обратному исключению, но вместо удаления одного объекта за раз удаляется группа объектов за раз. Он начинается с набора всех функций и итеративно удаляет наименее важную группу функций в зависимости от их влияния на производительность модели.
Встроенный метод
- Методы L1 и L2: этот метод представляет собой линейную модель, которая включает член регуляризации, уменьшающий коэффициенты признаков до нуля. У члена регуляризации есть параметр настройки, который контролирует силу усадки, а признаки с нулевым или ~нулевым коэффициентом удаляются из модели.
- Деревья решений. Деревья решений — это тип алгоритма машинного обучения, который создает древовидную модель решений на основе особенностей данных. Алгоритм дерева решений включает в себя компонент выбора признаков, поскольку он определяет, какие признаки наиболее важны для принятия решений в дереве.
- Регрессия гребня, эластичная сеть, наименьшее абсолютное отклонение (LAD)
Гибридный метод
Гибридный метод включает в себя объединение двух или более из вышеперечисленных методов для поиска оптимального подмножества признаков. Например, гибридный метод может включать использование метода фильтра для предварительного выбора подмножества функций, а затем использование метода-оболочки для точной настройки выбора функций.
- Обобщение с накоплением
- Многоцелевая оптимизация
Другой метод выбора функции
- Выбор признаков на основе корреляции. Этот метод включает выбор подмножества признаков, которые сильно коррелируют с целевой переменной и не коррелируют друг с другом.
- Группирование объектов. Этот метод включает в себя разделение диапазона непрерывного объекта на интервалы и обработку каждого интервала как отдельного категориального признака.
- Функция низкой дисперсии. Откажитесь от функции низкой дисперсии, поскольку она не влияет на прогнозирование модели.
- Функция удаления дубликатов как в числовом отношении, так и в соответствии с интуитивным знанием предметной области.
- PCA (анализ главных компонентов): это метод уменьшения размерности, который проецирует данные в пространство с меньшим размером, сохраняя при этом как можно большую дисперсию.
Секреты и уловки
- Начните с большого набора функций. Обычно рекомендуется начинать с большого набора функций, а затем выбирать наиболее важные функции.
- Используйте несколько методов. Различные методы выбора признаков могут давать разные результаты в зависимости от характеристик данных и требований задачи.
- Используйте проверочный набор. Важно оценивать производительность модели на проверочном наборе, а не только на обучающем наборе. Это гарантирует, что модель хорошо обобщает невидимые данные.
- Используйте знания предметной области. Знание предметной области может быть ценным источником информации для выбора функций.
- Учитывайте интерпретируемость функций. В некоторых случаях может быть важно сохранить интерпретируемые функции, даже если они не имеют наивысшей важности в соответствии с методом выбора функций.
- Отслеживание выбранных функций. Может быть полезно вести учет выбранных функций на случай, если потребуется вернуться к ним позже.
- Избегайте выбора слишком большого количества функций. Как правило, рекомендуется избегать выбора слишком большого количества функций, так как это может привести к тому, что модель будет излишне сложной и склонной к переоснащению.
- Используйте инструменты автоматического выбора функций. Существует множество доступных инструментов автоматического выбора функций, таких как «SelectFromModel» и «RFE» от scikit-learn, которые может сделать процесс выбора функций более эффективным.
- Учитывайте сложность модели. В зависимости от характеристик данных и требований задачи может потребоваться компромисс между сложностью модели и повышением производительности.
Спасибо, что прочитали это длинное…
Предложения и новые методы приветствуются.