Отбор признаков
Материал из MachineLearning.
| Строка 11: | Строка 11: | ||
:<tex>\Omega = \{1, \dots, D\}, \quad |\Omega| = D</tex> | :<tex>\Omega = \{1, \dots, D\}, \quad |\Omega| = D</tex> | ||
| - | Задачей отбора признаков является нахождение оптимального подмножества индексов <tex>S \subset \Omega</tex> фиксированной или переменной мощности <tex>|S| = d</tex> (где <tex>d \ll D</tex>), которое минимизирует функционал эмпирического риска выбранного базового алгоритма обучения <tex>A</ | + | Задачей отбора признаков является нахождение оптимального подмножества индексов <tex>S \subset \Omega</tex> фиксированной или переменной мощности <tex>|S| = d</tex> (где <tex>d \ll D</tex>), которое минимизирует функционал эмпирического риска выбранного базового алгоритма обучения <tex>A</tex> на отложенной выборке: |
:<tex>S^* = \arg\min_{S \subset \Omega} \frac{1}{M} \sum_{m=1}^{M} \mathcal{L}\left(A(X_{S}^{train})_{x_m}, y_m\right)</tex> | :<tex>S^* = \arg\min_{S \subset \Omega} \frac{1}{M} \sum_{m=1}^{M} \mathcal{L}\left(A(X_{S}^{train})_{x_m}, y_m\right)</tex> | ||
| - | :: где <tex>X_S</tex> — усеченная | + | :: где <tex>X_S</tex> — усеченная матрица объектов размерности <tex>N \times d</tex>, содержащая только столбцы с индексами из множества <tex>S</tex>, <tex>\mathcal{L}</tex> — функция потерь алгоритма, а <tex>M</tex> — размер валидационной выборки. |
Полный перебор всех возможных комбинаций требует оценки <tex>2^D</tex> вариантов, что представляет собой NP-трудную задачу. В силу этого на практике применяются эвристические подходы, разделяемые на три класса: фильтрация (filters), обертывание (wrappers) и встроенные методы (embedded). | Полный перебор всех возможных комбинаций требует оценки <tex>2^D</tex> вариантов, что представляет собой NP-трудную задачу. В силу этого на практике применяются эвристические подходы, разделяемые на три класса: фильтрация (filters), обертывание (wrappers) и встроенные методы (embedded). | ||
| Строка 26: | Строка 26: | ||
:<tex>r_j = \frac{\sum_{i=1}^{N} (x_{ij} - \mu_j)(y_i - \mu_y)}{\sqrt{\sum_{i=1}^{N} (x_{ij} - \mu_j)^2 \sum_{i=1}^{N} (y_i - \mu_y)^2}}</tex> | :<tex>r_j = \frac{\sum_{i=1}^{N} (x_{ij} - \mu_j)(y_i - \mu_y)}{\sqrt{\sum_{i=1}^{N} (x_{ij} - \mu_j)^2 \sum_{i=1}^{N} (y_i - \mu_y)^2}}</tex> | ||
| - | * '''Критерий Хи-квадрат (<tex>\chi^2</ | + | * '''Критерий Хи-квадрат (<tex>\chi^2</tex>-тест):''' Применяется для качественных (категориальных) признаков. Проверяет гипотезу о независимости признака <tex>j</tex> и целевой переменной. Статистика вычисляется на основе таблицы сопряженности: |
:<tex>\chi^2_j = \sum_{u=1}^{U} \sum_{v=1}^{V} \frac{(O_{uv} - E_{uv})^2}{E_{uv}}</tex> | :<tex>\chi^2_j = \sum_{u=1}^{U} \sum_{v=1}^{V} \frac{(O_{uv} - E_{uv})^2}{E_{uv}}</tex> | ||
| - | :: где <tex>O_{uv}</tex> — наблюдаемое число объектов, сочетающих <tex>u</ | + | :: где <tex>O_{uv}</tex> — наблюдаемое число объектов, сочетающих <tex>u</tex>-е значение признака и <tex>v</t>-й класс, а <tex>E_{uv}</t> — ожидаемое число объектов при гипотезе о независимости. |
* '''Взаимная информация (Mutual Information):''' Базируется на энтропии Шеннона и улавливает произвольные нелинейные зависимости. Для дискретных случайных величин формула имеет вид: | * '''Взаимная информация (Mutual Information):''' Базируется на энтропии Шеннона и улавливает произвольные нелинейные зависимости. Для дискретных случайных величин формула имеет вид: | ||
:<tex>I(X^{(j)}; Y) = \sum_{x \in X^{(j)}} \sum_{y \in \mathbf{Y}} p(x, y) \ln \frac{p(x, y)}{p(x)p(y)}</tex> | :<tex>I(X^{(j)}; Y) = \sum_{x \in X^{(j)}} \sum_{y \in \mathbf{Y}} p(x, y) \ln \frac{p(x, y)}{p(x)p(y)}</tex> | ||
| - | :: где <tex>p(x, y)</ | + | :: где <tex>p(x, y)</tt> — совместное распределение вероятностей, а <tex>p(x)</tt> и <tex>p(y)</tt> — маргинальные распределения. |
=== 3. Методы обертывания (Wrapper Methods) === | === 3. Методы обертывания (Wrapper Methods) === | ||
| Строка 47: | Строка 47: | ||
* '''L1-регуляризация (LASSO):''' Метод аппроксимации разреженных решений (Tibshirani, 1996). За счет сингулярности (острых углов) ограничения L1-нормы в области нулевых значений, оптимизатор принудительно зануляет веса избыточных предикторов: | * '''L1-регуляризация (LASSO):''' Метод аппроксимации разреженных решений (Tibshirani, 1996). За счет сингулярности (острых углов) ограничения L1-нормы в области нулевых значений, оптимизатор принудительно зануляет веса избыточных предикторов: | ||
:<tex>Q_{LASSO}(w) = \frac{1}{2N} \sum_{i=1}^{N} \left(y_i - \sum_{j=1}^{D} w_j x_{ij}\right)^2 + \lambda \sum_{j=1}^{D} |w_j| \to \min_{w}</tex> | :<tex>Q_{LASSO}(w) = \frac{1}{2N} \sum_{i=1}^{N} \left(y_i - \sum_{j=1}^{D} w_j x_{ij}\right)^2 + \lambda \sum_{j=1}^{D} |w_j| \to \min_{w}</tex> | ||
| - | :: где <tex>\lambda</ | + | :: где <tex>\lambda</tt> — управляющий гиперпараметр. Признак <tex>j</tt> считается исключенным, если <tex>w_j = 0</tt>. |
* '''Elastic Net Регуляризация:''' Комбинирует штрафы L1 и L2 (Zou, Hastie, 2005) для преодоления ограничений LASSO при работе с коррелированными группами признаков: | * '''Elastic Net Регуляризация:''' Комбинирует штрафы L1 и L2 (Zou, Hastie, 2005) для преодоления ограничений LASSO при работе с коррелированными группами признаков: | ||
:<tex>Q_{EN}(w) = \frac{1}{2N} \sum_{i=1}^{N} \left(y_i - \sum_{j=1}^{D} w_j x_{ij}\right)^2 + \lambda_1 \sum_{j=1}^{D} |w_j| + \lambda_2 \sum_{j=1}^{D} w_j^2 \to \min_{w}</tex> | :<tex>Q_{EN}(w) = \frac{1}{2N} \sum_{i=1}^{N} \left(y_i - \sum_{j=1}^{D} w_j x_{ij}\right)^2 + \lambda_1 \sum_{j=1}^{D} |w_j| + \lambda_2 \sum_{j=1}^{D} w_j^2 \to \min_{w}</tex> | ||
| - | * '''Уменьшение примеси в ансамблях деревьев (Mean Decrease Impurity, MDI):''' Метод оценки важности признаков в алгоритме Random Forest (Breiman, 2001). Значимость признака <tex>j</ | + | * '''Уменьшение примеси в ансамблях деревьев (Mean Decrease Impurity, MDI):''' Метод оценки важности признаков в алгоритме Random Forest (Breiman, 2001). Значимость признака <tex>j</tt> вычисляется как взвешенная сумма улучшений критерия информативности (например, Джини) по всем узлам <tex>t</tt>, где было произведено разбиение по данному признаку: |
:<tex>\text{MDI}(j) = \frac{1}{|T|} \sum_{t \in T} w(t) \left[ I(t) - \frac{N_{tL}}{N_t}I(t_L) - \frac{N_{tR}}{N_t}I(t_R) \right]</tex> | :<tex>\text{MDI}(j) = \frac{1}{|T|} \sum_{t \in T} w(t) \left[ I(t) - \frac{N_{tL}}{N_t}I(t_L) - \frac{N_{tR}}{N_t}I(t_R) \right]</tex> | ||
| - | :: где <tex>I(t)</ | + | :: где <tex>I(t)</tt> — значение неопределенности в узле, <tex>w(t)</tt> — доля объектов, прошедших через узел, а <tex>t_L</tt> и <tex>t_R</tt> — левое и правое поддеревья соответственно. |
=== 5. Функции потерь и информационные критерии оценки === | === 5. Функции потерь и информационные критерии оценки === | ||
| - | Для оценки оптимальности подмножеств признаков в линейных и классических вероятностных моделях используют критерии, накладывающие явный штраф за избыточную параметризацию (мощность подмножества <tex>d</ | + | Для оценки оптимальности подмножеств признаков в линейных и классических вероятностных моделях используют критерии, накладывающие явный штраф за избыточную параметризацию (мощность подмножества <tex>d</tt>): |
* '''Информационный критерий Акаике (AIC):''' | * '''Информационный критерий Акаике (AIC):''' | ||
:<tex>\text{AIC} = 2d - 2\ln(L_{max})</tex> | :<tex>\text{AIC} = 2d - 2\ln(L_{max})</tex> | ||
| - | :: где <tex>L_{max}</ | + | :: где <tex>L_{max}</tt> — максимизированное значение функции правдоподобия (Likelihood function) модели. |
* '''Байесовский информационный критерий Шварца (BIC):''' | * '''Байесовский информационный критерий Шварца (BIC):''' | ||
:<tex>\text{BIC} = d\ln(N) - 2\ln(L_{max})</tex> | :<tex>\text{BIC} = d\ln(N) - 2\ln(L_{max})</tex> | ||
| - | :: Штрафует за размерность жестче, чем AIC, при объемах выборки <tex>\ln(N) > 2</ | + | :: Штрафует за размерность жестче, чем AIC, при объемах выборки <tex>\ln(N) > 2</tt>. |
| - | * '''Скорректированный коэффициент детерминации (<tex>R^2_{adj}</ | + | * '''Скорректированный коэффициент детерминации (<tex>R^2_{adj}</tt>):''' Используется в задачах регрессии: |
| - | :<tex>R^2_{adj} = 1 - (1 - R^2)\frac{N - 1}{N - d - 1}</ | + | :<tex>R^2_{adj} = 1 - (1 - R^2)\frac{N - 1}{N - d - 1}</tex> |
=== 6. Метрики качества работы методов отбора === | === 6. Метрики качества работы методов отбора === | ||
Интегральная оценка алгоритмов селекции оперирует не только ошибкой аппроксимации, но и показателями стабильности: | Интегральная оценка алгоритмов селекции оперирует не только ошибкой аппроксимации, но и показателями стабильности: | ||
| - | # '''Стабильность отбора (Индекс Жакара):''' Оценивает инвариантность метода к малым возмущениям обучающей выборки. Для двух подмножеств <tex>S_1</ | + | # '''Стабильность отбора (Индекс Жакара):''' Оценивает инвариантность метода к малым возмущениям обучающей выборки. Для двух подмножеств <tex>S_1</tt> и <tex>S_2</tt>, полученных на разных подвыборках: |
| - | :<tex>J(S_1, S_2) = \frac{|S_1 \cap S_2|}{|S_1 \cup S_2|}</ | + | :<tex>J(S_1, S_2) = \frac{|S_1 \cap S_2|}{|S_1 \cup S_2|}</tex> |
# '''Скорректированный индекс Кунчевой (Kuncheva's Stability Index):''' Учитывает вероятность случайного совпадения признаков в высокоразмерных пространствах: | # '''Скорректированный индекс Кунчевой (Kuncheva's Stability Index):''' Учитывает вероятность случайного совпадения признаков в высокоразмерных пространствах: | ||
| - | :<tex>I_K(S_1, S_2) = \frac{r \cdot D - d^2}{d \cdot (D - d)}</ | + | :<tex>I_K(S_1, S_2) = \frac{r \cdot D - d^2}{d \cdot (D - d)}</tex> |
| - | :: где <tex>r = |S_1 \cap S_2|</ | + | :: где <tex>r = |S_1 \cap S_2|</tt> — размер пересечения подмножеств, а <tex>d</tt> — их фиксированная мощность (<tex>|S_1|=|S_2|=d</tt>). Диапазон значений: <tex>[-1, 1]</tt>. |
=== 7. Практические рекомендации и типичные ошибки === | === 7. Практические рекомендации и типичные ошибки === | ||
| - | * '''Утечка данных (Data Leakage) при кросс-валидации:''' КРИТИЧЕСКАЯ И САМАЯ РАСПРОСТРАНЕННАЯ ОШИБКА. Расчет любых статистик фильтрации (например, взаимной информации или корреляций) должен производиться строго '''внутри тренировочных фолдов'''. Если выполнить отбор признаков на всей матрице <tex>X</ | + | * '''Утечка данных (Data Leakage) при кросс-валидации:''' КРИТИЧЕСКАЯ И САМАЯ РАСПРОСТРАНЕННАЯ ОШИБКА. Расчет любых статистик фильтрации (например, взаимной информации или корреляций) должен производиться строго '''внутри тренировочных фолдов'''. Если выполнить отбор признаков на всей матрице <tex>X</tt> до разбиения на фолды кросс-валидации, информация из валидационных подвыборок попадет в модель, что приведет к сильному оптимистическому смещению оценок качества (ошибка генерализации будет занижена). |
| - | * '''Чувствительность к масштабу данных:''' Большинство регуляризаторов (LASSO, Elastic Net) и оберток на базе линейных моделей критичны к масштабу. Перед началом процедуры отбора матрица признаков <tex>X</ | + | * '''Чувствительность к масштабу данных:''' Большинство регуляризаторов (LASSO, Elastic Net) и оберток на базе линейных моделей критичны к масштабу. Перед началом процедуры отбора матрица признаков <tex>X</tt> подлежит обязательной стандартизации: |
| - | :<tex>\tilde{x}_{ij} = \frac{x_{ij} - \mu_j}{\sigma_j}</ | + | :<tex>\tilde{x}_{ij} = \frac{x_{ij} - \mu_j}{\sigma_j}</tex> |
| - | * '''Проблема группировки при мультиколлинеарности:''' Если в выборке присутствует группа строго коррелированных признаков (например, <tex>r > 0.95</ | + | * '''Проблема группировки при мультиколлинеарности:''' Если в выборке присутствует группа строго коррелированных признаков (например, <tex>r > 0.95</tt>), классический метод LASSO случайным образом выберет один из них, занулив остальные. Это делает интерпретацию модели нестабильной. Для сохранения всей группы информативных связанных переменных необходимо отдавать предпочтение регуляризатору Elastic Net. |
== Литература == | == Литература == | ||
Версия 13:12, 23 июня 2026
Шаблон:Философия ИИ/Статья создана с помощью ИИ
Содержание |
Отбор признаков (Feature Selection)
Отбор признаков (англ. feature selection) — процесс выбора оптимального подмножества релевантных признаков (предикторов, переменных) для построения модели машинного обучения. Отбор признаков преследует несколько фундаментальных целей: преодоление «проклятия размерности» (curse of dimensionality), устранение мультиколлинеарности, минимизация времени обучения и радикальное повышение интерпретируемости результирующих моделей при сохранении или увеличении их обобщающей способности.
1. Математическая постановка задачи
Пусть задана обучающая выборка, представленная в виде матрицы объекты-признаки , где
— количество независимых объектов (наблюдений), а
— исходная размерность признакового пространства. Каждому объекту (строке матрицы)
поставлен в соответствие истинный ответ (целевая переменная)
. Для задач регрессии
, для задач многоклассовой классификации
.
Определим полное множество индексов исходных признаков как:
Задачей отбора признаков является нахождение оптимального подмножества индексов фиксированной или переменной мощности
(где
), которое минимизирует функционал эмпирического риска выбранного базового алгоритма обучения
на отложенной выборке:
- где
— усеченная матрица объектов размерности
, содержащая только столбцы с индексами из множества
,
— функция потерь алгоритма, а
— размер валидационной выборки.
- где
Полный перебор всех возможных комбинаций требует оценки вариантов, что представляет собой NP-трудную задачу. В силу этого на практике применяются эвристические подходы, разделяемые на три класса: фильтрация (filters), обертывание (wrappers) и встроенные методы (embedded).
2. Методы фильтрации (Filter Methods)
Методы фильтрации оценивают статистические свойства признаков изолированно от структуры и параметров финальной прогностической модели. Из-за вычислительной простоты они используются в качестве методов быстрой предварительной фильтрации (screener).
- Порог дисперсии (Variance Threshold): Устраняет константные и квазиконстантные признаки, не несущие дискриминативной информации. Признак
удаляется, если его выборочная дисперсия ниже заданного порога
:
- Линейный коэффициент корреляции Пирсона: Измеряет степень линейной связи между непрерывным признаком
и непрерывной целевой переменной
:
- Критерий Хи-квадрат (
-тест): Применяется для качественных (категориальных) признаков. Проверяет гипотезу о независимости признака
и целевой переменной. Статистика вычисляется на основе таблицы сопряженности:
- где
— наблюдаемое число объектов, сочетающих
-е значение признака и
- где
. На шаге
- Обратное последовательное исключение (Backward Stepwise Elimination): Процесс, обратный прямому отбору. Стартует с полного набора признаков
, на каждом шаге отбрасывается переменная, удаление которой наносит минимальный ущерб точности модели.
- Рекурсивное исключение признаков (Recursive Feature Elimination, RFE): Алгоритм (Guyon et al., 2002), обучающий модель на полном множестве, ранжирующий признаки по величине квадрата весовых коэффициентов линейного классификатора
(или значимости в деревьях) и последовательно отсекающий наименее важные элементы.
4. Встроенные методы (Embedded Methods)
Встроенные методы осуществляют селекцию признаков непосредственно в ходе оптимизации внутренних параметров модели (процессы обучения и отбора математически неразделимы).
- L1-регуляризация (LASSO): Метод аппроксимации разреженных решений (Tibshirani, 1996). За счет сингулярности (острых углов) ограничения L1-нормы в области нулевых значений, оптимизатор принудительно зануляет веса избыточных предикторов:
- где
- Уменьшение примеси в ансамблях деревьев (Mean Decrease Impurity, MDI): Метод оценки важности признаков в алгоритме Random Forest (Breiman, 2001). Значимость признака
- где
- где
- Штрафует за размерность жестче, чем AIC, при объемах выборки
6. Метрики качества работы методов отбора
Интегральная оценка алгоритмов селекции оперирует не только ошибкой аппроксимации, но и показателями стабильности:
- Стабильность отбора (Индекс Жакара): Оценивает инвариантность метода к малым возмущениям обучающей выборки. Для двух подмножеств
- Штрафует за размерность жестче, чем AIC, при объемах выборки
- Скорректированный индекс Кунчевой (Kuncheva's Stability Index): Учитывает вероятность случайного совпадения признаков в высокоразмерных пространствах:
- где
- Проблема группировки при мультиколлинеарности: Если в выборке присутствует группа строго коррелированных признаков (например,
- где
- где
- где
- где
- где
- где

