Изменения

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

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

9005 байт добавлено, 18:54, 29 июня 2022
Фильтры
== '''Выбор признаков (''Feature selection'') =='''
== Уменьшение размерности ==
Под '''уменьшением размерности''' (англ. ''dimensionality reduction'') в машинном обучении подразумевается уменьшение числа признаков набора данных. Наличие в нем признаков избыточных, неинформативных или слабо информативных может понизить эффективность модели, а после такого преобразования она упрощается, и, соответственно, уменьшается размер набора данных в памяти и ускоряется работа алгоритмов ML на нем. Уменьшение размерности может быть осуществлено методами выбора признаков (англ. ''feature selection'') или выделения признаков (англ. ''feature extraction'').
{{Определение|definition=Объекты описаны признаками $F =(f_1, . . . , f_n)$. <br>Задачей является построить множество признаков $G =Задача уменьшения размерности===(g_1, ... , g_k) : k < n$ (часто $k << n$), переход к которым сопровождается наименьшей потерей информации.}}
Объекты описаны признаками F = (f1, . . . , fn).=Зачем нужно==Задачей является построить множество признаков G = (g1, . . . , gk) : k < n (часто* Ускорение обучения и обработкиk ≪ n), переход к которым сопровождается наименьшей потерей* Борьба с шумом и мультиколлинеарностьюинформации.* Интерпретация и визуализация данных
{{Определение|definition=Проклятие размерности ('''Зачем нужно?'curse of dimensionality'') — это набор проблем, возникающих с ростом размерности*Ускорение обучения Увеличиваются требования к памяти и обработкивычислительной мощности*Борьба с шумом и мультиколлинеарностьюДанные становятся более разреженными*Интерпретация и визуализация данныхПроще найти гипотезы, не имеющие отношения к реальности}}
===Проклятие размерности (curse of dimensionality)===Проклятие размерности (curse of dimensionality) — это наборпроблем, возникающих с ростом размерности*Увеличиваются требования к памяти и вычислительной мощности*Данные становятся более разреженными*Проще найти гипотезы, не имеющие отношения к реальности===Когда применяется===*Меньше памяти для хранения*Уменьшение времени обработки*Увеличение качества обработки*Понимание природы признаков
===Методы уменьшения размерности===* Нужно использовать меньше памяти для хранения данных[[Файл:Таблица_1.jpg|600px|thumb|right]]* Нужно уменьшить время обработки* Нужно увеличить качество обработки* Нужно понять природу признаков
'''Два основных подхода [[Файл:Таблица_1.jpg|600px|thumb|right|Методы уменьшения размерности''']]
Выбор признаков (feature selection) включает методы, для которых'''Замечание:'''<br>G ⊂ F. Они*быстро работают;*не могут «выдумывать» сложных признаков.Уменьшение размерности — шаг в предобработке данных
==Два основных подхода уменьшения размерности== '''Выбор признаков''' (''feature selection'') включает методы, для которых $G ⊂ F$. Они:* Быстро работают;* Не могут «выдумывать» сложных признаков. '''Извлечение признаков ''' (''feature extraction'') включает все другиеметоды (в том числе даже те, у которых $k > n$).*в В целом, дольше работают;*могут Могут извлекать сложные признаки.'''==Цели извлечения и выбора признаков'''==*Уменьшение числа ресурсов, требуемых для обработки больших наборовданных*Поиск новых признаков*Эти признаки могут быть линейными и нелинейными относительно исходных====Цели выбора признаков:====*Уменьшение переобучения и улучшение качества предсказания*Улучшение понимания моделей===Типы ненужных признаков===
Существуют также два типа признаков, которые не являются необходимыми:
*Избыточные (''redundant'') признаки не привносятдополнительной информации относительно существующих*Нерелевантные (''irrelevant'') признаки простонеинформативнынеинформативны==Встроенные методы=====Классификация методов выбора признаков===*Встроенные методы (embedded)*Фильтрующие методы (filter)**Одномерные (univariate)**Многомерные (multivariate)*Методы-обертки (wrapper)**Детерминированные (deterministic)**Стохастические (stochastic)*Гибридные и ансамблирующие методы{{Определение===Встроенные методы==|definition=Встроенные методы (''embedded methods'') — это методы выбора
признаков, при которых этот выбор осуществляется в процессе работы
других алгоритмов (классификаторов и регрессоров)
*Опираются на конкретный алгоритм*Специфичны для каждого алгоритма}} [[File:Feature_selection_embedded_rus.png|600px|thumb|right|Процесс работы встроенных методов]] Группа '''встроенных методов''' (англ. ''embedded methods'') очень похожа на оберточные методы, но для выбора признаков используется непосредственно структуру некоторого классификатора. В оберточных методах классификатор служит только для оценки работы на данном множестве признаков, тогда как встроенные методы используют какую-то информацию о признаках, которую классификаторы присваивают во время обучения. Одним из примеров встроенного метода является реализация на [[Дерево решений и случайный лес| случайном лесе]]: каждому дереву на вход подаются случайное подмножество данных из датасета с каким-то случайным набор признаков, в процессе обучения каждое из деревьев решений производит «голосование» за релевантность его признаков, эти данные агрегируются, и на выходе получаются значения важности каждого признака набора данных. Дальнейший выбор нужных нам признаков уже зависит от выбранного критерия отбора.
Встроенные методы используют преимущества оберточных методов и являются более эффективными, при этом на отбор тратится меньше времени, уменьшается риск [[Файл:Таблица_2.jpg|600px|thumbпереобучение|right|Схема встроенного методапереобучения]], но т.к. полученный набор признаков был отобран на основе знаний о классификаторе, то есть вероятность, что для другого классификатора это множество признаков уже не будет настолько же релевантным.
==Классификация методов выбора признаков==* Встроенные методы (''embedded'')* Фильтрующие методы (''filter'')** Одномерные (''univariate'')** Многомерные (''multivariate'')* Методы-обертки (''wrapper'')** Детерминированные (''deterministic'')** Стохастические (''stochastic'')* Гибридные и ансамблирующие методы {{Пример|example='''Cлучайный лес'''[[Файл: Таблица_3.jpg|500px|thumb|right|Случайный лес]]{{main|Дерево решений и случайный лес===}}*Учитывать число вхождений признака в дерево.*Учитывать глубину вершины вхождения признака в дерево.[[Файл:Таблица_3.jpg|600px|thumb}} {{Пример|right]]=example==Пример: '''SVM-RFE==='''#Обучить SVM на обучающем подмножестве#Установить веса признаков, равными модулям соответствующих коэффициентов#Отранжировать признаки согласно их весам#Выбросить некоторое число признаков с наименьшими весами#Повторять, пока не останется нужное число признаков=}} =Методы-обертки==[[File:Feature_selection_wrapper_rus.png|600px|thumb|right|Процесс работы оберточных методов]] '''Метод-обертка ''' (''wrapper method'') использует алгоритм(классификатор или регрессор) для оценки качества получаемогоподмножества признаков и использует алгоритмы дискретнойоптимизации для поиска оптимального подмножества признаков.===Схема метода-обертки==='''Оберточные методы''' (англ. ''wrapper methods'') находят подмножество искомых признаков последовательно, используя некоторый классификатор как источник оценки качества выбранных признаков, т.е. этот процесс является циклическим и продолжается до тех пор, пока не будут достигнуты заданные условия останова. Оберточные методы учитывают зависимости между признаками, что является преимуществом по сравнению с фильтрами, к тому же показывают большую точность, но вычисления занимают длительное время, и повышается риск [[Файл:Таблица_4.jpg|600px|thumbпереобучение|rightпереобучения]].  Существует несколько типов оберточных методов: детерминированные, которые изменяют множество признаков по определенному правилу, а также рандомизированные, которые используют генетические алгоритмы для выбора искомого подмножества признаков. ===Классификация методов-оберток===*Детерминированные:**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
правок

Навигация