В области машинного обучения выбор признаков играет решающую роль в повышении производительности модели, снижении вычислительной сложности и повышении интерпретируемости. Выбор признаков включает определение наиболее релевантных и информативных признаков из данного набора данных.
Допустим, вы любитель пиццы и хотите создать систему рекомендаций по пицце на основе искусственного интеллекта. У вас есть огромная база данных с тысячами атрибутов, описывающих каждую пиццу, включая ингредиенты, тип корочки, тип сыра, вкус соуса и многое другое. Однако включение всех этих атрибутов в рекомендательную систему приведет к медленному и ресурсоемкому процессу. Выбирая только самые важные функции (например, популярные ингредиенты, предпочтения клиентов), вы можете быстро генерировать персонализированные рекомендации по пицце, не перегружая свою пиццерию с искусственным интеллектом.
Цель выбора функций — повысить производительность модели машинного обучения за счет уменьшения размерности входных данных и удаления ненужных или избыточных функций.
Существует несколько распространенных методов выбора признаков:
1.Методы фильтрации
Метод фильтрации использует статистические меры для оценки релевантности функций независимо от любого алгоритма машинного обучения. Он включает в себя ранжирование признаков на основе их индивидуальных характеристик. Общие статистические показатели, используемые в методе фильтрации, включают корреляцию, прирост информации и тесты хи-квадрат. Функции выбираются на основе предопределенных пороговых значений или путем выбора первых k функций с наивысшим рейтингом.
Рассмотрим систему прогнозирования отмены бронирования. Метод фильтрации можно использовать для определения наиболее релевантных функций путем измерения информационного прироста каждой функции по отношению к целевой переменной (отменено бронирование или нет). Функции с высоким информационным приростом, вероятно, окажут значительное влияние на систему отмены бронирования, и их следует выбирать.
2. Метод оболочки.
Этот процесс выбора функций основан на конкретном алгоритме машинного обучения, который мы пытаемся подогнать к заданному набору данных. Он следует подходу жадного поиска, оценивая все возможные комбинации признаков по критерию оценки. Методы-оболочки обычно обеспечивают лучшую точность прогнозирования, чем методы фильтров. Он рассматривает выбор функций как проблему поиска, исследуя различные подмножества функций и выбирая ту, которая обеспечивает наилучшую производительность модели. Методы-оболочки требуют значительных вычислительных ресурсов, но могут фиксировать взаимодействие функций и обеспечивать точные прогнозы.
В Wrapper Methods есть 3 метода:
а. Прямой выбор. Прямой выбор — это итеративный метод, в котором мы начинаем с отсутствия признаков в модели. В каждой итерации мы продолжаем добавлять функцию, которая лучше всего улучшает нашу модель, пока добавление новой переменной не улучшит производительность модели.
б. Обратное исключение. При обратном исключении мы начинаем со всех функций и удаляем наименее значимую функцию на каждой итерации, что повышает производительность модели. Мы повторяем это до тех пор, пока не будет наблюдаться улучшение при удалении признаков.
в. RFE [Recursive Feature Elimination]: используется для выбора признаков. Он удаляет признак с самым низким коэффициентом. Он постоянно создает модели и отбрасывает лучшие или худшие функции на каждой итерации. Он строит следующую модель с оставшимися функциями, пока все функции не будут исчерпаны. Затем он ранжирует функции в порядке их исключения.
Представьте себе задачу классификации спама по электронной почте. Метод оболочки можно использовать для обучения и оценки модели на различных комбинациях функций, таких как частота слов, длина электронного письма, репутация отправителя и наличие вложений. Подмножество признаков, обеспечивающее наибольшую точность или наименьшую частоту ошибок, выбирается в качестве оптимального подмножества признаков.
3. Встроенный метод
Эти методы охватывают преимущества как методов-оболочек, так и методов фильтрации, включая взаимодействие функций.
Встроенные методы выполняют выбор признаков как неотъемлемую часть алгоритма машинного обучения. Эти методы выбирают функции при обучении модели, учитывая их важность в процессе обучения. Такие методы, как регуляризация, деревья решений и повышение градиента, по своей сути выполняют выбор функций, присваивая веса или оценки важности функциям во время обучения.
Регуляризация лассо заключается в добавлении штрафа к различным параметрам модели машинного обучения, чтобы уменьшить свободу модели, т. е. избежать переобучения. Штрафной член способствует выбору признаков, уменьшая коэффициенты до нуля. Установив некоторые коэффициенты равными нулю, Lasso эффективно выполняет выбор функций, исключая эти функции из модели. Это свойство делает Lasso особенно полезным при работе с многомерными наборами данных, где может иметь значение только подмножество функций.
Способность модели Лассо устанавливать коэффициенты равными нулю позволяет автоматически выбирать признаки и может быть полезна в ситуациях, когда необходимо идентифицировать разреженный набор влиятельных признаков.
Предположим, вы работаете над задачей прогнозирования цен на жилье и имеете набор данных с несколькими функциями, такими как количество комнат, площадь в квадратных футах, местоположение и различные удобства. Применяя регрессию Лассо, вы можете определить, какие функции оказывают наиболее значительное влияние на цены на жилье.
Например, после обучения регрессионной модели Лассо вы можете обнаружить, что количество комнат, площадь в квадратных метрах и местоположение являются наиболее важными характеристиками, в то время как другие характеристики, такие как удобства, имеют коэффициенты, близкие к нулю. Это указывает на то, что удобства мало влияют на цены на жилье и могут быть исключены из модели.
Функция feature_importances_ в Random Forest помогает определить, какие функции являются наиболее важными в процессе принятия решений модели Random Forest.
В контексте выбора функций feature_importances_ может направлять выбор наиболее подходящих функций для модели случайного леса. Изучив feature_importances_, вы можете определить функции, которые в наибольшей степени способствуют прогностической способности модели. Эта информация может помочь вам сосредоточиться на наиболее информативных функциях и потенциально отбросить менее важные.
Вы можете использовать feature_importances_ из модели случайного леса, чтобы выбрать K наиболее важных функций. Отсортировав функции по их важности в порядке убывания, вы можете выбрать K функций с наивысшей важностью и отбросить остальные.
Мы видим, что после использования feature_importances_ важность функций отличается от метода получения информации.
4. Гибридный метод
Гибридный метод сочетает методы выбора признаков с методами уменьшения размерности, такими как анализ основных компонентов (PCA) и разложение по сингулярным значениям (SVD). Эти методы преобразуют исходные признаки в новый набор некоррелированных переменных (главных компонентов), сохраняя при этом большую часть информации. Выбирая главные компоненты из топ-к, выбор признаков и уменьшение размерности достигаются одновременно.
Допустим, вы работаете над системой распознавания лиц. Гибридный метод можно использовать, применяя PCA для извлечения наиболее важных черт лица (например, глаз, носа и рта) из большого набора необработанных пиксельных данных. Выбирая k основных компонентов, вы уменьшаете размерность и сохраняете наиболее отличительные черты лица для точного распознавания.
Заключение
Выбор функций — важный шаг в машинном обучении для повышения производительности модели, снижения сложности и улучшения интерпретируемости. Выбирая только самые важные и понятные признаки (например, погодные условия), мы можем создавать упрощенные и более точные модели машинного обучения. Преуспевание в жизни можно сравнить с выбором характеристик, поскольку оно включает в себя признание и расстановку приоритетов ваших ключевых сильных сторон, эффективное управление своим временем и энергией, инвестиции в личный рост и обучение, а также окружение себя поддерживающим влиянием.
Это ссылка на мой проект, в котором я сделал прогноз для проблемы классификации со всеми типами выбора признаков.