Изменения

Перейти к: навигация, поиск

Обсуждение участника:Gen05

5890 байт добавлено, 18:54, 29 июня 2022
Фильтры
= '''Выбор признаков (''Feature selection'') ='''
== Уменьшение размерности == Под '''уменьшением размерности''' (англ. ''dimensionality reduction'') в машинном обучении подразумевается уменьшение числа признаков набора данных. Наличие в нем признаков избыточных, неинформативных или слабо информативных может понизить эффективность модели, а после такого преобразования она упрощается, и соответственно уменьшается размер набора данных в памяти и ускоряется работа алгоритмов ML на нем. Уменьшение размерности может быть осуществлено методами выбора признаков (англ. ''feature selection'') или выделения признаков (англ. ''feature extraction'').
Под '''уменьшением размерности''' (англ. ''dimensionality reduction'') в машинном обучении подразумевается уменьшение числа признаков набора данных. Наличие в нем признаков избыточных, неинформативных или слабо информативных может понизить эффективность модели, а после такого преобразования она упрощается, и, соответственно, уменьшается размер набора данных в памяти и ускоряется работа алгоритмов ML на нем. Уменьшение размерности может быть осуществлено методами выбора признаков (англ. ''feature selection'') или выделения признаков (англ. ''feature extraction'').
{{Определение
}}
===Зачем нужно===
* Ускорение обучения и обработки
* Борьба с шумом и мультиколлинеарностью
}}
===Когда применяется=== * Меньше Нужно использовать меньше памяти для храненияданных* Уменьшение времени Нужно уменьшить время обработки* Увеличение качества Нужно увеличить качество обработки* Понимание природы Нужно понять природу признаков
[[Файл:Таблица_1.jpg|600px|thumb|right|Методы уменьшения размерности]]
='''Замечание:'''<br>Уменьшение размерности — шаг в предобработке данных ==Два основных подхода уменьшения размерности===
'''Выбор признаков''' (''feature selection'') включает методы, для которых $G ⊂ F$. Они:
* быстро Быстро работают;* не Не могут «выдумывать» сложных признаков.
'''Извлечение признаков''' (''feature extraction'') включает все другиеметоды (в том числе даже те, у которых $k > n$).* в В целом, дольше работают;* могут Могут извлекать сложные признаки.
===Цели извлечения и выбора признаков===
* Уменьшение числа ресурсов, требуемых для обработки больших наборов данных
* Поиск новых признаков
* Эти признаки могут быть линейными и нелинейными относительно исходных
====Цели выбора признаков:====
* Уменьшение переобучения и улучшение качества предсказания
* Улучшение понимания моделей
===Типы ненужных признаков===
Существуют также два типа признаков, которые не являются необходимыми:
* Избыточные (''redundant'') признаки не привносят дополнительной информации относительно существующих
* Нерелевантные (''irrelevant'') признаки просто неинформативны
==Встроенные методы= {{Определение|definition=Встроенные методы (''embedded methods'') — это методы выборапризнаков, при которых этот выбор осуществляется в процессе работыдругих алгоритмов (классификаторов и регрессоров)* Опираются на конкретный алгоритм* Специфичны для каждого алгоритма}} [[ФайлFile:Таблица_2Feature_selection_embedded_rus.jpgpng|600px|thumb|right|Схема Процесс работы встроенных методов]] Группа '''встроенных методов''' (англ. ''embedded methods'') очень похожа на оберточные методы, но для выбора признаков используется непосредственно структуру некоторого классификатора. В оберточных методах классификатор служит только для оценки работы на данном множестве признаков, тогда как встроенные методы используют какую-то информацию о признаках, которую классификаторы присваивают во время обучения. Одним из примеров встроенного методаявляется реализация на [[Дерево решений и случайный лес| случайном лесе]]: каждому дереву на вход подаются случайное подмножество данных из датасета с каким-то случайным набор признаков, в процессе обучения каждое из деревьев решений производит «голосование» за релевантность его признаков, эти данные агрегируются, и на выходе получаются значения важности каждого признака набора данных. Дальнейший выбор нужных нам признаков уже зависит от выбранного критерия отбора. Встроенные методы используют преимущества оберточных методов и являются более эффективными, при этом на отбор тратится меньше времени, уменьшается риск [[переобучение|переобучения]], но т.к. полученный набор признаков был отобран на основе знаний о классификаторе, то есть вероятность, что для другого классификатора это множество признаков уже не будет настолько же релевантным. ===Классификация методов выбора признаков===
* Встроенные методы (''embedded'')
* Фильтрующие методы (''filter'')
* Гибридные и ансамблирующие методы
{{Пример|example===Встроенные методы==='''Cлучайный лес'''[[FileФайл:Feature_selection_embedded_rusТаблица_3.pngjpg|450px500px|thumb|right|Процесс работы встроенных методовСлучайный лес]]Группа '''встроенных методов''' (англ{{main|Дерево решений и случайный лес}}* Учитывать число вхождений признака в дерево. ''embedded methods'') очень похожа на оберточные методы, но для выбора признаков используется непосредственно структуру некоторого классификатора. В оберточных методах классификатор служит только для оценки работы на данном множестве признаков, тогда как встроенные методы используют какую-то информацию о признаках, которую классификаторы присваивают во время обучения* Учитывать глубину вершины вхождения признака в дерево. }}
Одним из примеров встроенного метода является реализация на [[Дерево решений и случайный лес{{Пример| случайном лесе]]: каждому дереву example='''SVM-RFE'''# Обучить SVM на вход подаются случайное подмножество данных из датасета с каким-то случайным набор обучающем подмножестве# Установить веса признаков, в процессе обучения каждое из деревьев решений производит "голосование" за релевантность его равными модулям соответствующих коэффициентов# Отранжировать признаки согласно их весам# Выбросить некоторое число признаковс наименьшими весами# Повторять, эти данные агрегируются, и на выходе получаются значения важности каждого признака набора данных. Дальнейший выбор нужных нам пока не останется нужное число признаков уже зависит от выбранного критерия отбора.}}
Встроенные методы используют преимущества оберточных методов и являются более эффективными, при этом на отбор тратится меньше времени, уменьшается риск =Методы-обертки=[[переобучениеFile:Feature_selection_wrapper_rus.png|переобучения600px|thumb|right|Процесс работы оберточных методов]], но т.к. полученный набор  '''Метод-обертка''' (''wrapper method'') использует алгоритм (классификатор или регрессор) для оценки качества получаемого подмножества признаков был отобран на основе знаний о классификаторе, то есть вероятность, что и использует алгоритмы дискретной оптимизации для другого классификатора это множество поиска оптимального подмножества признаков уже не будет настолько же релевантным.
===Пример: случайный лес==='''Оберточные методы''' (англ. ''wrapper methods'') находят подмножество искомых признаков последовательно, используя некоторый классификатор как источник оценки качества выбранных признаков, т.е. этот процесс является циклическим и продолжается до тех пор, пока не будут достигнуты заданные условия останова. Оберточные методы учитывают зависимости между признаками, что является преимуществом по сравнению с фильтрами, к тому же показывают большую точность, но вычисления занимают длительное время, и повышается риск [[Файл:Таблица_3.jpgпереобучение|300px|thumb|right|Случайный леспереобучения]]*Учитывать число вхождений признака в дерево.*Учитывать глубину вершины вхождения признака в дерево.
===ПримерСуществует несколько типов оберточных методов: SVM-RFE===#Обучить SVM на обучающем подмножестве#Установить веса детерминированные, которые изменяют множество признаковпо определенному правилу, равными модулям соответствующих коэффициентов#Отранжировать признаки согласно их весам#Выбросить некоторое число признаков с наименьшими весами#Повторятьа также рандомизированные, пока не останется нужное число которые используют генетические алгоритмы для выбора искомого подмножества признаков.
==МетодыКлассификация методов-оберткиоберток==[[Файл* Детерминированные:Таблица_4.jpg|600px|thumb|right|Схема метода-обертки]]Метод-обертка ** SFS (''sequential forward selection'')** SBE (wrapper method''sequential backward elimination'') использует алгоритм ** SVM-RFE** Перестановочная полезность (классификатор или регрессор''Permutation importance'') для оценки качества получаемого подмножества * Стохастические — сводят задачу выбора признаков и использует к задаче оптимизации в пространстве бинарных векторов:** Поиск восхождением на холм** Генетические алгоритмы дискретной оптимизации для поиска оптимального подмножества признаков.
===Классификация методов-оберток===*Детерминированные:**SFS (sequential forward selection)**SBE (sequential backward elimination)**SVM-RFE**Перестановочная полезность (Permutation importance)*Стохастические — сводят задачу выбора признаков к задачеоптимизации в пространстве бинарных векторов:*Поиск восхождением на холм**Генетические алгоритмы**. . .===Анализ методов-оберток===
Достоинства:
*Более высокая точность, чем у фильтров*Используют отношения между признаками*Оптимизируют качество предсказательной модели в явном виде
Недостатки:
*Очень долго работают*Могут переобучиться при неправильной работе с разбиением набора данных =Фильтры= [[Файл:ТАблица_5.jpg|600px|thumb|right|Процесс работы фильтрующих методов]] '''Фильтры''' (англ. ''filter methods'') измеряют релевантность признаков на основе функции $\mu$, и затем решают по правилу $\kappa$, какие признаки оставить в результирующем множестве. Фильтры могут быть:* Одномерные (англ. ''univariate'') {{---}} функция $\mu$ определяет релевантность одного признака по отношению к выходным меткам. В таком случае обычно измеряют «качество» каждого признака и удаляют худшие. Одномерные метрики делятся на 3 части: ** Сравнивают два категориальных признака** Сравнивают категориальный и числовой признаки** Сравнивают два числовых признака* Многомерные (англ. ''multivariate'') {{---}} функция $\mu$ определяет релевантность некоторого подмножества исходного множества признаков относительно выходных меток. Преимуществом группы фильтров является простота вычисления релевантности признаков в наборе данных, но недостатком в таком подходе является игнорирование возможных зависимостей между признаками.
==Фильтры==Фильтры (''filter methods'') оценивают качество отдельных признаков илиподмножеств признаков и удаляют худшие.
Две компоненты:
*мера значимости признаков μ$\mu$*правило обрезки κ определяет, какие признаки удалить на основе μ$\mu$===Схема фильтрующих методов===[[Файл:ТАблица_5.jpg|600px|thumb|right]]===Классификация фильтрующих методов===*Одномерные (''univariate''):**Евклидово расстояние**Коэффициент корреляции (Пирсона или Спирмена)**Попарные расстояния (внутренние или внешние)**Условная дисперсия**Прирост информации (IG)**Индекс Джини**χ2$\chi^2$*Многомерные (''multivariate''):**Выбор признаков на основе корреляций (CFS)**Фильтр марковского одеяла (MBF)===Корреляция==='''Коэффициент корреляции Пирсона''' <br> '''Замечание''' Важно помнить, что мы смотрим не на корреляцию, а на модуль корреляции.<tex>r=\displaystyle \frac{\sum_{i, j}(x_{ij}-\bar{x_j})(y_i-\bar{y})}{\sqrt{\sum_{i, j}(x_{ij}-\bar{x_j})^2\sum_i(y_i-\bar{y})^2}}\in[[Файл:Таблица_6.jpg|600px|thumb|right]-1;1]</tex> '''Коэффициент корреляции Спирмана'''#Отсортировать объекты двумя способами (по каждому из признаков).#Найти ранги объектов для каждой сортировки.#Вычислить корреляцию Пирсона между векторами рангов. '''Information gain'''<ref>[https://en.wikipedia.org/wiki/Information_gain_in_decision_trees Определение information gain]</ref>: <br> $IG(T, C)=\displaystyle -\sum_{i=1}^kp(c_i)\log_2{(p(c_i))}+\sum_{i=1}^{n}p(t_i)\sum_{j=1}^kp(c_j|t_i)\log_2{(p(c_j|t_i))}$ ==Правило обрезки κ=подрезки $k$==*Число признаков*Порог значимости признаков*Интегральный порог значимости признаков*Метод сломанной трости*Метод локтя===Анализ одномерных фильтров==='''Преимущества:'''*Исключительно быстро работают*Позволяют оценивать значимость каждого признака'''Недостатки:'''*Порог значимости признаков*Игнорируют отношения между признаками и то, что реально используетпредсказательная модель===Анализ многомерных фильтров==='''Преимущества:'''*Работают достаточно быстро*Учитывают отношения между признаками'''Недостатки:'''*Работают существенно дольше фильтров*Не учитывают то, что реально использует предсказательная модель==Гибриды и ансамбли= [[Файл:Таблица_7.jpg|600px|thumb|right|Схема процесса работы гибридного подхода]] ==Гибридный подход== '''Гибридные методы''' (англ. ''hybrid methods'') комбинируют несколько разных методов выбора признаков, например, некоторое множество фильтров, а потом запускают оберточный или встроенный метод. Таким образом, гибридные методы сочетают в себе преимущества сразу нескольких методов, и на практике повышают эффективность выбора признаков.
===Гибридный подход===
Будем комбинировать подходы, чтобы использовать их сильные стороны
Самый частый вариант:
*сначала применим фильтр (или набор фильтров), отсеяв лишниепризнаки*затем применим метод-обертку или встроенный метод ===Схема гибридного подхода=Ансамблирование в выборе признаков==[[Файл:Таблица_7ТАблица_8.jpg|600px|thumb|right|Ансамблирование в выборе признаков]]===Ансамблирование в выборе '''Ансамблевые методы''' применяются больше для наборов данных с очень большим числом признаков. В данном подходе для начального множества признаков создается несколько подмножеств признаков, и эти группы каким-то образом объединяются, чтобы получить набор самых релевантных признаков. Это довольно гибкая группа методов, т.к. для нее можно применять различные способы выбора признаков===и объединения их подмножеств. Подход к ансамблированию состоит в построении ансамбля алгоритмов выборапризнаков[[Файл:ТАблица_8.jpg|600px|thumb|right]]===Ансамбль на уровне моделей===* Строим ансамбль предсказательных моделей* Объединяем ранжирования* Объединяем меры значимости [[Файл:Таблица_9.jpg|none|600px|thumb|right]]===Ансамбль на уровне ранжирований===Объединяем ранжированиямоделей]][[Файл:Таблица_10.jpg|none|600px|thumb|right]]===Ансамбль на уровне мер значимости===Объединяем меры значимостиранжирований]][[Файл:Таблица_11.jpg|none|600px|thumb|rightАнсамбль на уровне мер значимости]]===Анализ гибридных и ансамблирующих методов===
Преимущества:
*Чаще всего лучше по времени и по качеству
Недостатки:
*Иногда теряется интерпретируемость*Иногда требуется заботиться о проблеме переобучения =Примечания=<references/>
80
правок

Навигация