Методы выбора оптимального набора информативных признаков для задач классификации текстов

advertisement
Методы выбора оптимального
набора информативных
признаков для задач
классификации текстов
Борисова Татьяна
3 курс ВМК МГУ
Для чего нужен выбор признаков?
• Количество признаков может достигать
10 000 – 100 000
• Это слишком много для многих алгоритмов
обучения (нейронные сети, наивная
байесовская модель и т.д.)
– «проклятье размерности»
Достоинства выбора признаков
• Лучше работают алгоритмы обучения
• Проще понять природу данных
• Меньше размер хранилищ
Методы выбора признаков
• Filters (методы-фильтры)
• Wrappers (методы-обертки)
• Embedded (встроенные методы)
Filters (методы-фильтры)
• Этап препроцессинга
• Не зависит от результата работы
классификатора
• Достоинства:
– Вычислительно быстрые
– Простая реализация
– Хорошо масштабируются
Независимое ранжирование
признаков
•
•
•
•
•
Information gain (прирост информации)
Mutual information (взаимная информация)
Критерий хи-квадрат
Term strength («мощность признака»)
mRMR (minimum redundancy-maximum
relevance, минимальная избыточностьмаксимальная релевантность)
Обозначения
• 𝑇 – обучающая выборка:
множество пар 𝑥𝑘 , 𝑦𝑘 𝑘 = 1, 𝑚
• 𝒙 = 𝑥𝑘 – k-й входной объект, 𝑥𝑘 ∈ {0,1}
• 𝑚 – число входных объектов
• 𝑦𝑘 – выходные переменные (классы)
• 𝑐𝑗 – классы, 𝑦𝑘 ∈ {𝑐𝑗 }𝑀
𝑗=1
• 𝑛 – число признаков
• 𝑥𝑘𝑖 – i-й признак 𝑖 = 1, 𝑛
• Предполагаются бинарные признаки
Принцип работы
• Вычисляем ранг каждого признака
• Выкидываем признаки, для которых ранг
меньше заданного значения порога
• Значение порога можно подобрать на
кросс-валидации
(или путем выделения из тестовой выборки специального
подмножества и тестирования на нем различных значений
порога)
Information gain
(прирост информации)
𝑀
𝐺 𝑥𝑖 = −
𝑀
𝑃 𝑐𝑗 𝑙𝑜𝑔𝑃 𝑐𝑗 + 𝑃 𝑥 𝑖
𝑗=1
𝑃 𝑐𝑗 |𝑥 𝑖 𝑙𝑜𝑔𝑃 𝑐𝑗 |𝑥 𝑖
𝑗=1
𝑀
+𝑃 𝑥 𝑖
𝑃 𝑐𝑗 |𝑥 𝑖 𝑙𝑜𝑔𝑃 𝑐𝑗 |𝑥 𝑖
𝑗=1
Сколько бит информации необходимо, чтобы
классифицировать объекты с использованием
признака 𝑥 𝑖 ?
А без его использования?
Берем разницу
Mutual information
(взаимная информация)
Вначале посчитаем взаимную информацию
признака и категории:
𝑖
𝑃(𝑥
∩
𝑐
)
𝑗
𝐼 𝑥 𝑖 , 𝑐𝑗 = 𝑙𝑜𝑔
𝑃 𝑥 𝑖 𝑃(𝑐𝑗 )
Mutual information
(взаимная информация)
Обозначения:
• A: 𝑦𝑘 = 𝑐𝑗 и 𝑥𝑘𝑖 = 1
•
•
•
B: 𝑦𝑘 ≠ 𝑐𝑗 и 𝑥𝑘𝑖 = 1
C: 𝑦𝑘 = 𝑐𝑗 и 𝑥𝑘𝑖 = 0
D: 𝑦𝑘 ≠ 𝑐𝑗 и 𝑥𝑘𝑖 = 0
𝑦𝑘 = 𝑐𝑗
𝑦𝑘 ≠ 𝑐𝑗
𝑥𝑘𝑖 = 1
A
B
𝑥𝑘𝑖 = 0
C
D
Mutual information
(взаимная информация)
При введенных ранее обозначениях
𝐴∙𝑚
𝑖
𝐼 𝑥 , 𝑐𝑗 ≈ 𝑙𝑜𝑔
(𝐴 + 𝐶)(𝐴 + 𝐵)
Теперь можно посчитать оценку для
признака 𝑥 𝑖 :
𝑀
𝐼𝑎𝑣𝑔 𝑥 𝑖 =
𝑃(𝑐𝑗 )𝐼 𝑥 𝑖 , 𝑐𝑗
𝑗=1
𝐼𝑚𝑎𝑥 𝑥 𝑖 = max 𝐼 𝑥 𝑖 , 𝑐𝑗 , 𝑗 = 1, 𝑀
𝑗
Mutual information
(взаимная информация)
Недостаток критерия взаимной информации
𝐼 𝑥 𝑖 , 𝑐𝑗 = 𝑙𝑜𝑔𝑃 𝑥 𝑖 |𝑐𝑗 − 𝑙𝑜𝑔𝑃(𝑥 𝑖 )
Ранг редких признаков выше, чем ранг частых
Критерий хи-квадрат
2
𝑚(𝐴𝐷
−
𝐶𝐵)
2 (𝑥 𝑖 , 𝑐𝑗 ) =
(𝐴 + 𝐶)(𝐵 + 𝐷)(𝐴 + 𝐵)(𝐶 + 𝐷)
𝑦𝑘 = 𝑐𝑗
𝑦𝑘 ≠ 𝑐𝑗
𝑥𝑘𝑖 = 1
A
B
𝑥𝑘𝑖 = 0
C
D
Term strength
(«мощность признака»)
• Основан на кластеризации документов
• Не использует информацию о классах
s 2 (𝑥 𝑖 ) = 𝑃(𝑥 𝑖 ∈ 𝑦|𝑥 𝑖 ∈ 𝑥)
𝑦, 𝑥 – «связанные» документы
Для оценки связанности можно использовать
косинусную меру
mRMR
(minimum redundancymaximum relevance)
• Не использует информацию о категориях
• Может использовать взаимную информацию,
критерий корреляции и т.д.
• Показано, что этот метод приближает
теоретически оптимальный maximum-dependency
метод
mRMR
(minimum redundancymaximum relevance)
• Не использует информацию о категориях
𝑛
1
𝑚𝑅𝑀𝑅(𝑥 , 𝑐𝑗 ) = max
𝑥 𝑖 ,𝑖=1,𝑛 𝑛
𝑖
1
𝐼(𝑥 , 𝑐𝑗 ) − 2
𝑛
𝑛
𝑖
𝑖=1
𝐼(𝑥 𝑖 , 𝑥 𝑗 )
𝑖,𝑗
𝑖=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
1
1
1
0
0
1
0
1
0
1
– обратный жадный алгоритм
0
1
0
0
1
1
0
1
1
0
0
0
1
1
0
0
Прямой и обратный жадный
алгоритмы
0.0
0
0
0
0.1
1
0
0
0.9
1
1
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)
• Применяют также спектральные и
волновые преобразования
Пример работы
Пример работы
Спасибо за внимание!
Download