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

Обзор

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

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

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

Существует три основных типа методов выбора признаков:

  1. Методы фильтрации. Эти методы используют статистическую меру для оценки релевантности каждой функции и выбора подмножества наиболее релевантных функций.
  2. Методы-оболочки: эти методы используют производительность определенного алгоритма машинного обучения для оценки актуальности каждой функции.
  3. Встроенные методы: эти методы включают выбор признаков как часть процесса обучения алгоритма машинного обучения.

Далее мы обсудим наиболее эффективные методы этих техник ниже. Чтобы подчеркнуть эффект от применения каждого из этих методов, мы будем использовать Висконсинский (диагностический) набор данных по раку молочной железы. Результаты сравнения будут получены путем применения Случайного лесного классификатора после применения каждый метод.

Показанные табличные результаты рассчитаны с использованием этого кода.

1. Корреляция Пирсона

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

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

2. Тест хи-квадрат

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

Это может помочь вам определить, какие функции наиболее полезны для вашей задачи прогнозирования. Это делается путем сравнения отношения между функцией и целевой переменной. Критерий хи-квадрат вычисляет значение p, которое представляет вероятность наблюдения тестовой статистики при нулевой гипотезе. Если функция имеет высокий показатель хи-квадрат, это означает, что существует сильная связь между функцией и целевой переменной, и эта функция будет считаться релевантной (гипотеза о независимости неверна).

3. ANOVA F-критерий

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

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

4. Прямой выбор

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

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

5. Рекурсивное устранение признаков

Рекурсивное устранение признаков (RFE) включает в себя рекурсивное удаление признаков и построение модели с оставшимися признаками. Процесс начинается с обучения модели со всеми функциями и оценки ее производительности. Затем функция, которая приводит к наихудшей производительности, удаляется из модели, и процесс повторяется с оставшимися функциями. Этот процесс рекурсивно повторяется до тех пор, пока не будет достигнут критерий остановки.

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

6. Важность функции

Важность функций включает в себя ранжирование функций на основе того, насколько они влияют на производительность модели. Этот метод можно использовать с любым типом модели, но он особенно полезен с моделями на основе деревьев, такими как деревья решений, случайные леса и модели с повышением градиента. Значения важности функции обычно получают путем обучения модели и измерения снижения производительности модели, когда функция переставляется или перемешивается случайным образом. Чем больше снижается производительность, тем более важной считается функция.

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

Сравнение каждой техники

Также стоит упомянуть другие методы, такие как обратное исключение, регуляризация L1 и Boruta.

Подведение итогов

Это основные методы, которые я нашел полезными как в академических, так и в производственных (промышленных) условиях. Всегда лучше поэкспериментировать с этими методами и выяснить, что лучше всего работает с имеющимися данными.

Я хочу поблагодарить вас за то, что вы прочитали эту статью, и, пожалуйста, поставьте лайк и оставьте отзыв, если она вам понравилась. Пожалуйста, поделитесь с теми, кто найдет их полезными.

Вы можете загрузить код 💻 на Kaggle, используя это: https://www.kaggle.com/code/lasaljaywardena/feature-selection-techniques-that-you-must-know.

Наконец, если вы хотите связаться со мной, вы можете связаться со мной через Linkedin — https://www.linkedin.com/in/lasal-jayawardena.

Удачи и хорошего дня!