Изменения

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

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

5581 байт добавлено, 18:54, 29 июня 2022
Фильтры
= Уменьшение размерности =
Под '''уменьшением размерности''' (англ. ''dimensionality reduction'') в машинном обучении подразумевается уменьшение числа признаков набора данных. Наличие в нем признаков избыточных, неинформативных или слабо информативных может понизить эффективность модели, а после такого преобразования она упрощается, и , соответственно , уменьшается размер набора данных в памяти и ускоряется работа алгоритмов ML на нем. Уменьшение размерности может быть осуществлено методами выбора признаков (англ. ''feature selection'') или выделения признаков (англ. ''feature extraction'').
{{Определение
=Встроенные методы=
 {{Определение|definition=Встроенные методы (''embedded methods'') — это методы выборапризнаков, при которых этот выбор осуществляется в процессе работыдругих алгоритмов (классификаторов и регрессоров)* Опираются на конкретный алгоритм* Специфичны для каждого алгоритма}} [[ФайлFile:Таблица_2Feature_selection_embedded_rus.jpgpng|600px|thumb|right|Схема Процесс работы встроенных методов]] Группа '''встроенных методов''' (англ. ''embedded methods'') очень похожа на оберточные методы, но для выбора признаков используется непосредственно структуру некоторого классификатора. В оберточных методах классификатор служит только для оценки работы на данном множестве признаков, тогда как встроенные методы используют какую-то информацию о признаках, которую классификаторы присваивают во время обучения. Одним из примеров встроенного методаявляется реализация на [[Дерево решений и случайный лес| случайном лесе]]: каждому дереву на вход подаются случайное подмножество данных из датасета с каким-то случайным набор признаков, в процессе обучения каждое из деревьев решений производит «голосование» за релевантность его признаков, эти данные агрегируются, и на выходе получаются значения важности каждого признака набора данных. Дальнейший выбор нужных нам признаков уже зависит от выбранного критерия отбора. Встроенные методы используют преимущества оберточных методов и являются более эффективными, при этом на отбор тратится меньше времени, уменьшается риск [[переобучение|переобучения]], но т.к. полученный набор признаков был отобран на основе знаний о классификаторе, то есть вероятность, что для другого классификатора это множество признаков уже не будет настолько же релевантным.
==Классификация методов выбора признаков==
** Стохастические (''stochastic'')
* Гибридные и ансамблирующие методы
 
==Встроенные методы==
[[File:Feature_selection_embedded_rus.png|450px|thumb|right|Процесс работы встроенных методов]]
Группа '''встроенных методов''' (англ. ''embedded methods'') очень похожа на оберточные методы, но для выбора признаков используется непосредственно структуру некоторого классификатора. В оберточных методах классификатор служит только для оценки работы на данном множестве признаков, тогда как встроенные методы используют какую-то информацию о признаках, которую классификаторы присваивают во время обучения.
 
Одним из примеров встроенного метода является реализация на [[Дерево решений и случайный лес| случайном лесе]]: каждому дереву на вход подаются случайное подмножество данных из датасета с каким-то случайным набор признаков, в процессе обучения каждое из деревьев решений производит "голосование" за релевантность его признаков, эти данные агрегируются, и на выходе получаются значения важности каждого признака набора данных. Дальнейший выбор нужных нам признаков уже зависит от выбранного критерия отбора.
 
Встроенные методы используют преимущества оберточных методов и являются более эффективными, при этом на отбор тратится меньше времени, уменьшается риск [[переобучение|переобучения]], но т.к. полученный набор признаков был отобран на основе знаний о классификаторе, то есть вероятность, что для другого классификатора это множество признаков уже не будет настолько же релевантным.
{{Пример
|example='''Cлучайный лес'''
[[Файл:Таблица_3.jpg|500px|thumb|right|Случайный лес]]
{{main|Дерево решений и случайный лес}}
[[Файл:Таблица_3.jpg|500px|thumb|right|Случайный лес]]
* Учитывать число вхождений признака в дерево.
* Учитывать глубину вершины вхождения признака в дерево.
=Методы-обертки=
[[ФайлFile:Таблица_4Feature_selection_wrapper_rus.jpgpng|600px|thumb|right|Схема метода-оберткиПроцесс работы оберточных методов]] '''Метод-обертка ''' (''wrapper method'') использует алгоритм (классификатор или регрессор) для оценки качества получаемого подмножества признаков и использует алгоритмы дискретной оптимизации для поиска оптимального подмножества признаков. '''Оберточные методы''' (англ. ''wrapper methods'') находят подмножество искомых признаков последовательно, используя некоторый классификатор как источник оценки качества выбранных признаков, т.е. этот процесс является циклическим и продолжается до тех пор, пока не будут достигнуты заданные условия останова. Оберточные методы учитывают зависимости между признаками, что является преимуществом по сравнению с фильтрами, к тому же показывают большую точность, но вычисления занимают длительное время, и повышается риск [[переобучение|переобучения]].  Существует несколько типов оберточных методов: детерминированные, которые изменяют множество признаков по определенному правилу, а также рандомизированные, которые используют генетические алгоритмы для выбора искомого подмножества признаков.
==Классификация методов-оберток==
* Детерминированные:
** 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.jpg|600px|thumb|right]]
==Ансамблирование в выборе признаков==
[[Файл:ТАблица_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
правок

Навигация