Transcript Document
Методы выбора оптимального набора информативных признаков для задач классификации текстов Борисова Татьяна 3 курс ВМК МГУ
Для чего нужен выбор признаков?
• • Количество признаков может достигать 10 000 – 100 000 Это слишком много для многих алгоритмов обучения (нейронные сети, наивная байесовская модель и т.д.) – «проклятье размерности»
Достоинства выбора признаков
• • • Лучше работают алгоритмы обучения Проще понять природу данных Меньше размер хранилищ
Методы выбора признаков
• • • Filters (методы-фильтры) Wrappers (методы-обертки) Embedded (встроенные методы)
Filters (методы-фильтры)
• • • Этап препроцессинга Не зависит от результата работы классификатора Достоинства: – Вычислительно быстрые – Простая реализация – Хорошо масштабируются
Независимое ранжирование признаков • • • • • Information gain (прирост информации) Mutual information (взаимная информация) Критерий хи-квадрат Term strength («мощность признака») mRMR (minimum redundancy-maximum relevance, минимальная избыточность максимальная релевантность)
Обозначения
• 𝑇 – обучающая выборка: • • • • • • • множество пар 𝒙 𝑚 𝑦 𝑐 𝑗 𝑘 = 𝑥 𝑘 𝑥 𝑘 , 𝑦 𝑘 𝑘 = 1, 𝑚 – k-й входной объект, – число входных объектов – классы, 𝑦 𝑘 ∈ {𝑐 𝑗 } 𝑀 𝑗=1 𝑥 𝑘 ∈ {0,1} – выходные переменные (классы) 𝑛 – число признаков 𝑥 𝑖 𝑘 – i-й признак 𝑖 = 1, 𝑛 Предполагаются бинарные признаки
Принцип работы
• • • Вычисляем ранг каждого признака Выкидываем признаки, для которых ранг меньше заданного значения порога Значение порога можно подобрать на кросс-валидации (или путем выделения из тестовой выборки специального подмножества и тестирования на нем различных значений порога)
Information gain (прирост информации) 𝐺 𝑥 𝑖 𝑀 = − 𝑗=1 𝑃 𝑐 𝑗 +𝑃 𝑙𝑜𝑔𝑃 𝑐 𝑖 𝑗 + 𝑃 𝑥 𝑖 𝑀 𝑃 𝑐 𝑗 |𝑥 𝑖 𝑗=1 𝑙𝑜𝑔𝑃 𝑐 𝑗 |𝑥 𝑖 𝑀 𝑃 𝑐 𝑗 | 𝑖 𝑗=1 𝑙𝑜𝑔𝑃 𝑐 𝑗 | 𝑖 Сколько бит информации необходимо, чтобы классифицировать объекты с использованием признака 𝑥 𝑖 ?
А без его использования?
Берем разницу
Mutual information (взаимная информация) Вначале посчитаем взаимную информацию признака и категории: 𝑃(𝑥 𝑖 𝐼 𝑥 𝑖 , 𝑐 𝑗 = 𝑙𝑜𝑔 𝑃 𝑥 𝑖 ∩ 𝑐 𝑗 ) 𝑃(𝑐 𝑗 )
Mutual information (взаимная информация) • • • • Обозначения: A: B: C: 𝑦 𝑦 𝑦 𝑘 𝑘 𝑘 D: 𝑦 𝑘 = ≠ = 𝑐 𝑐 𝑐 𝑗 𝑗 𝑗 ≠ 𝑐 𝑗 и 𝑥 𝑘 𝑖 = 1 и 𝑥 𝑘 𝑖 = 1 и 𝑥 𝑘 𝑖 = 0 и 𝑥 𝑘 𝑖 = 0 𝑥 𝑖 𝑘 = 1 𝑥 𝑖 𝑘 = 0 𝑦 𝑘 = 𝑐 𝑗 A C 𝑦 𝑘 ≠ 𝑐 𝑗 B D
Mutual information (взаимная информация) При введенных ранее обозначениях 𝐼 𝑥 𝑖 , 𝑐 𝑗 ≈ 𝑙𝑜𝑔 𝐴 ∙ 𝑚 (𝐴 + 𝐶)(𝐴 + 𝐵) Теперь можно посчитать оценку для признака 𝑥 𝑖 : 𝑀 𝐼 𝐼 𝑎𝑣𝑔 𝑚𝑎𝑥 𝑥 𝑖 𝑥 𝑖 = 𝑃(𝑐 𝑗 )𝐼 𝑥 𝑖 , 𝑐 𝑗 𝑗=1 = max 𝑗 𝐼 𝑥 𝑖 , 𝑐 𝑗 , 𝑗 = 1, 𝑀
Mutual information (взаимная информация) Недостаток критерия взаимной информации 𝐼 𝑥 𝑖 , 𝑐 𝑗 = 𝑙𝑜𝑔𝑃 𝑥 𝑖 |𝑐 𝑗 − 𝑙𝑜𝑔𝑃(𝑥 𝑖 ) Ранг редких признаков выше, чем ранг частых
Критерий хи-квадрат
2 (𝑥 𝑖 , 𝑐 𝑗 ) = 𝑚(𝐴𝐷 − 𝐶𝐵) 2 (𝐴 + 𝐶)(𝐵 + 𝐷)(𝐴 + 𝐵)(𝐶 + 𝐷) 𝑥 𝑘 𝑖 = 1 𝑥 𝑘 𝑖 = 0 𝑦 𝑘 = 𝑐 𝑗 A C 𝑦 𝑘 ≠ 𝑐 𝑗 B D
Term strength («мощность признака») • • Основан на кластеризации документов Не использует информацию о классах s 2 (𝑥 𝑖 ) = 𝑃(𝑥 𝑖 ∈ 𝑦|𝑥 𝑖 ∈ 𝑥) 𝑦 , 𝑥 – «связанные» документы Для оценки связанности можно использовать косинусную меру
mRMR (minimum redundancy maximum relevance) • • • Не использует информацию о категориях Может использовать взаимную информацию, критерий корреляции и т.д.
Показано, что этот метод приближает теоретически оптимальный maximum-dependency метод
• mRMR (minimum redundancy maximum relevance) Не использует информацию о категориях 𝑚𝑅𝑀𝑅(𝑥 𝑖 , 𝑐 𝑗 ) = max 𝑥 𝑖 ,𝑖=1,𝑛 𝑛 1 𝑛 𝑖=1 𝐼(𝑥 𝑖 , 𝑐 𝑗 ) − 𝑛 1 𝑛 2 𝑖,𝑗 𝑖=1 𝑗=1 𝐼(𝑥 𝑖 , 𝑥 𝑗 ) 𝑀 𝑚𝑅𝑀𝑅 𝑚𝑅𝑀𝑅 𝑎𝑣𝑔 𝑚𝑎𝑥 𝑥 𝑖 𝑥 𝑖 = 𝑃 𝑐 𝑗 𝑚𝑅𝑀𝑅 𝑥 𝑖 , 𝑐 𝑗 𝑗=1 = max 𝑗 𝑚𝑅𝑀𝑅 𝑥 𝑖 , 𝑐 𝑗 , 𝑗 = 1, 𝑀
Методы выбора признаков
• • • Filters (методы-фильтры) Wrappers (методы-обертки) Embedded (встроенные методы)
Wrappers (методы-обертки)
• • Алгоритм обучения используется как «черный ящик» Оценивается информативность конкретного подмножества признаков для алгоритма обучения
Принцип работы
• • Выполняется поиск по пространству подмножеств исходного множества признаков Для каждого шага поиска используется информация о качестве обучения на текущем подмножестве признаков
Принцип работы
• • 𝜔 𝑖 – «вес» признака 𝑥 Бинарный случай: 𝜔 𝑖 𝑖 ∈ 0,1 Непрерывный случай: 𝜔 𝑖 ∈ 0,1
Экспоненциальные алгоритмы поиска • Сложность 𝑂(2 𝑛 ) – Exhaustive search – Алгоритм ветвей и границ – FOCUS
Последовательные алгоритмы поиска • • • • На каждом шаге выбираем одного последователя Не можем идти «назад» Сложность 𝑂(𝑛) Можно на каждом шаге рассматривать 𝑘 возможных последователей – Сложность в этом случае 𝑂(𝑛 𝑘 )
Последовательные алгоритмы поиска • • • Прямой жадный алгоритм (forward selection) Обратный жадный алгоритм (backward elimination) Алгоритм восхождения на вершину (hill climbing)
Рандомизированные алгоритмы поиска • • Использование рандомизации для выхода из локальных минимумов Anytime-алгоритмы
Рандомизированные алгоритмы поиска • • Симуляция отжига Генетические алгоритмы
Прямой и обратный жадный алгоритмы • Пример – прямой жадный алгоритм 1 1 0 0 1 1
1
0 1 1 0
1
– обратный жадный алгоритм 1 1 0 1
0
1 0 0 1
0
0 0 1 1 0
0
Прямой и обратный жадный алгоритмы 0.1
1 0 0 0.9
1 1 0 0.0
0 0 0 0.1
0 1 0 0.7
0 1 1 0.5
0 0 1 прямой жадный алгоритм обратный жадный алгоритм 0.6
1 0 1 0.8
1 1 1
Методы выбора признаков
• • • Filters (методы-фильтры) Wrappers (методы-обертки) Embedded (встроенные методы)
Embedded (встроенные методы)
Выбор признаков является одним из этапов алгоритма обучения • • Достоинства: Наилучшим образом приспособлены для конкретной модели Не нужно проводить кросс-валидацию или разбивать тренировочную выборку
Embedded (встроенные методы)
• • • Линейная регрессия – LASSO SVM – SVM-RFE (Recursive Feature Elimination) Полиномиальная логистическая регрессия – RMNL (Random Multinomal logit): основан на случайном лесе
Методы построения признаков
• • • • • PCA (Principal Component Analysis, метод главных компонент) Кластеризация Автокодировщик Регуляризованный случайный лес (RRF) Применяют также спектральные и волновые преобразования