Логические алгоритмы классификации

advertisement
Понятия закономерности и информативности
Методы построения логических алгоритмов
Вероятностное оценивание
Логические алгоритмы классификации
К. В. Воронцов
vokov@forecsys.ru
www.MachineLearning.ru, Участник:Vokov
ЗАО «Форексис»,
Вычислительный Центр им. А. А. Дородницына РАН
Научный семинар Яндекс
Москва, 9 июня 2010
К. В. Воронцов (www.ccas.ru/voron)
Логические алгоритмы классификации
Понятия закономерности и информативности
Методы построения логических алгоритмов
Вероятностное оценивание
Содержание
1
Понятия закономерности и информативности
Логическая закономерность
Требование интерпретируемости
Требование информативности
2
Методы построения логических алгоритмов
Индукция закономерностей
Композиция закономерностей
Взвешенное голосование
3
Вероятностное оценивание
Постановка задачи
Оценки надёжности закономерностей
Калибровка Платта
К. В. Воронцов (www.ccas.ru/voron)
Логические алгоритмы классификации
Понятия закономерности и информативности
Методы построения логических алгоритмов
Вероятностное оценивание
Логическая закономерность
Требование интерпретируемости
Требование информативности
Задача классификации
X — множество объектов; Y — множество классов;
y : X → Y — неизвестная целевая зависимость (target).
Дано: X ℓ = (xi , yi )ℓi=1 — обучающая выборка, yi = y (xi )

 
f1 (x1 ) . . . fn (x1 )
y1
. . . . . . . . . . . . . . . . . . . . .
f1 (xℓ ) . . . fn (xℓ )
yℓ
Найти: классификатор — функцию a : X → Y ,
приближающую y (x) на всём множестве x ∈ X .

 ′ 
f1 (x1′ ) . . . fn (x1′ )
a(x1 )
 . . . . . . . . . . . . . . . . . .  . . . 
a(xk′ )
f1 (xk′ ) . . . fn (xk′ )
К. В. Воронцов (www.ccas.ru/voron)
Логические алгоритмы классификации
Понятия закономерности и информативности
Методы построения логических алгоритмов
Вероятностное оценивание
Логическая закономерность
Требование интерпретируемости
Требование информативности
Задача классификации: уточнение требований
Требования к классификатору:
интерпретируемость ответов
— возможность объяснить классификацию;
интерпретируемость классификатора
— понятность его внутренней структуры;
возможность оценивать риски
— на выходе — оценки вероятностей классов P(y |x);
обобщающая способность
— высокое качество прогнозов на контрольных данных;
масштабируемость
— миллионы объектов ℓ, тысячи признаков n;
Данной совокупности требований удовлетворяют
логические алгоритмы классификации.
К. В. Воронцов (www.ccas.ru/voron)
Логические алгоритмы классификации
Понятия закономерности и информативности
Методы построения логических алгоритмов
Вероятностное оценивание
Логическая закономерность
Требование интерпретируемости
Требование информативности
Логическая закономерность
Логическая закономерность (правило, rule) — это предикат
R : X → {0, 1}, удовлетворяющий двум требованиям:
1) интерпретируемость:
R записывается на естественном языке;
R зависит от небольшого числа признаков (1–7);
2) информативность
относительно
одного из классов c ∈ Y :
p(R) = xi : R(xi )=1 и yi =c → max;
n(R) = xi : R(xi )=1 и yi 6=c → min;
Если R(x) = 1, то говорят «R выделяет x» (R covers x).
К. В. Воронцов (www.ccas.ru/voron)
Логические алгоритмы классификации
Понятия закономерности и информативности
Методы построения логических алгоритмов
Вероятностное оценивание
Логическая закономерность
Требование интерпретируемости
Требование информативности
Часто используемые виды закономерностей
1. Конъюнкция пороговых условий (термов):
^
aj 6 fj (x) 6 bj .
R(x) =
j∈J
2. Синдром — когда выполнено не менее d термов из J,
(при d = |J| это конъюнкция, при d = 1 — дизъюнкция):
X
R(x) =
aj 6 fj (x) 6 bj > d ,
j∈J
Синдромы обнаруживаются во многих прикладных областях:
в кредитном скоринге, в геологическом прогнозировании,
в медицинской диагностике [Переверзев-Орлов, 1990], и др.
Параметры J, aj , bj , d настраиваются по обучающей выборке.
К. В. Воронцов (www.ccas.ru/voron)
Логические алгоритмы классификации
Понятия закономерности и информативности
Методы построения логических алгоритмов
Вероятностное оценивание
Логическая закономерность
Требование интерпретируемости
Требование информативности
Часто используемые виды закономерностей
3. Полуплоскость — линейная пороговая функция:
i
hP
wj fj (x) > w0 .
R(x) =
j∈J
4. Шар — пороговая функция близости:
R(x) = r (x, x0 ) 6 w0 ,
АВО — алгоритмы вычисления оценок [Ю. И. Журавлёв, 1971]:
r (x, x0 ) = max wj fj (x) − fj (x0 ).
j∈J
SCM — машины покрывающих множеств [M. Marchand, 2001]:
2
P r (x, x0 ) = wj fj (x) − fj (x0 ) .
j∈J
Параметры J, wj , w0 , x0 настраиваются по обучающей выборке
путём оптимизации критерия информативности.
К. В. Воронцов (www.ccas.ru/voron)
Логические алгоритмы классификации
Понятия закономерности и информативности
Методы построения логических алгоритмов
Вероятностное оценивание
Логическая закономерность
Требование интерпретируемости
Требование информативности
Часто используемые критерии информативности
Проблема: надо сравнивать закономерности R.
Как свернуть два критерия в один критерий информативности?
(
p(R) → max
?
=⇒ I (p, n) → max
n(R) → min
Очевидные, но не всегда адекватные свёртки:
p
→ max (precision);
p+n
p − n → max (accuracy);
p − Cn → max (linear cost accuracy);
n
p
−
→ max (relative accuracy);
P
N
P = xi : yi =c — число «своих» во всей выборке;
N = xi : yi 6=c — число «чужих» во всей выборке.
К. В. Воронцов (www.ccas.ru/voron)
Логические алгоритмы классификации
Понятия закономерности и информативности
Методы построения логических алгоритмов
Вероятностное оценивание
Логическая закономерность
Требование интерпретируемости
Требование информативности
Часто используемые критерии информативности
Адекватные, но неочевидные критерии:
энтропийный критерий информационного выигрыша:
p+n
ℓ−p−n
p
P −p
P
−
−
→ max,
h
h
h
ℓ
ℓ
p+n
ℓ
ℓ−p−n
где h(q) = −q log2 q − (1 − q) log2 (1 − q);
критерий неслучайности FET (Fisher’s Exact Test):
p+n
CPp CNn /CP+N
→ min;
критерий бустинга [Cohen, Singer, 1999]:
√
√
p − n → max
нормированный
критерий бустинга:
p
p
p/P − n/N → max;
предсказательные критерии на основе мета-обучения
[J. Fürnkranz at al., 2001–2007].
К. В. Воронцов (www.ccas.ru/voron)
Логические алгоритмы классификации
Понятия закономерности и информативности
Методы построения логических алгоритмов
Вероятностное оценивание
Логическая закономерность
Требование интерпретируемости
Требование информативности
Где находятся закономерности в (p, n)-плоскости
Логические закономерности:
n
p+n
Статистические закономерности:
p
P+N > 0.05.
p+n
CPp CNn /CP+N
6 0.05.
6 0.1,
n
100
P = 200
90
N = 100
80
70
60
50
40
30
20
10
0
0
10
20
30
40
50
60
70
80
90
логические закономерности низкой информативности
логические закономерности высокой информативности
100 110 120 130 140 150 160 170 180 190
статистические закономерности
минимум информативности
p
Вывод: неслучайность — ещё не значит закономерность.
К. В. Воронцов (www.ccas.ru/voron)
Логические алгоритмы классификации
Понятия закономерности и информативности
Методы построения логических алгоритмов
Вероятностное оценивание
Логическая закономерность
Требование интерпретируемости
Требование информативности
Парето-критерий информативности
Парето-фронт — множество недоминируемых закономерностей
(точка R недоминируема, если правее и ниже точек нет)
50
2$.!*!-3(.+( 415$*$.(-*$"'!
6 "#$6
5 "#$6
4 "#$6
3 "#$6
2 "#$6
1 "#$6
*(321 *+( 415$*$.(-*$"'!
!"#$ $'-!01'(#)*+, %-!.(-$/, n(R)
45
40
35
30
25
20
15
10
5
0
0
50
задача UCI:german
100
150
200
!"#$ %$#$&!'(#)*+, %-!.(-$/, p(R)
К. В. Воронцов (www.ccas.ru/voron)
250
300
Логические алгоритмы классификации
Понятия закономерности и информативности
Методы построения логических алгоритмов
Вероятностное оценивание
Индукция закономерностей
Композиция закономерностей
Взвешенное голосование
Поиск информативных наборов признаков
Проблема: как сократить перебор предикатов, захватив
побольше закономерностей из первых Парето-слоёв.
Это задача комбинаторной оптимизации.
Основные эвристические методы поиска:
поиск в глубину, метод ветвей и границ (КОРА);
поиск в ширину (ТЭМП);
стохастический локальный поиск (SLIPPER);
генетические (эволюционные) алгоритмы (DMEL);
случайный поиск с адаптацией (СПА);
Основной практический вывод:
Почти не важно, каким именно методом поиска пользоваться.
Гораздо важнее критерий отбора закономерностей.
К. В. Воронцов (www.ccas.ru/voron)
Логические алгоритмы классификации
Понятия закономерности и информативности
Методы построения логических алгоритмов
Вероятностное оценивание
Индукция закономерностей
Композиция закономерностей
Взвешенное голосование
Локальное улучшение найденных закономерностей
Редукция (pruning):
1: заранее выделить контрольную выборку;
2: для всех найденных закономерностей R(x)
3:
для всех признаков fj из J
4:
если удаление признака повышает информативность
закономерности на контроле, то
5:
признак удаляется;
Стабилизация:
1: для всех найденных закономерностей R(x)
2:
для всех признаков fj из J
3:
оптимизировать пороги aj , bj по критерию
максимума информативности на всей выборке;
4: удалить дубликаты среди закономерностей;
К. В. Воронцов (www.ccas.ru/voron)
Логические алгоритмы классификации
Понятия закономерности и информативности
Методы построения логических алгоритмов
Вероятностное оценивание
Индукция закономерностей
Композиция закономерностей
Взвешенное голосование
Композиция закономерностей
Каждое правило выделяет лишь небольшую долю объектов.
Следовательно, правил нужно много.
Две основные идеи:
1: покрытие
(комитеты старшинства,
решающие списки и деревья)
К. В. Воронцов (www.ccas.ru/voron)
2: голосование
(комитеты большинства,
бустинг и бэггинг)
Логические алгоритмы классификации
Понятия закономерности и информативности
Методы построения логических алгоритмов
Вероятностное оценивание
Индукция закономерностей
Композиция закономерностей
Взвешенное голосование
Взвешенное голосование закономерностей
Пусть Ryt (x), t = 1, . . . , Ty — закономерности класса y .
Взвешенное голосование:
1) сумма голосов закономерностей за класс y :
Γy (x) =
Ty
X
ayt Ryt (x);
t=1
2) алгоритм классификации:
a(x) = arg max Γy (x).
y ∈Y
ayt
Методы настройки весов
по обучающей выборке:
t
простое голосование: ay = 1/Ty ;
LR — логистическая регрессия;
SVM — метод опорных векторов;
бустинг.
К. В. Воронцов (www.ccas.ru/voron)
Логические алгоритмы классификации
Понятия закономерности и информативности
Методы построения логических алгоритмов
Вероятностное оценивание
Индукция закономерностей
Композиция закономерностей
Взвешенное голосование
Покрытие выборки
Перевес голосов (margin) за правильный класс yi на объекте xi :
M(xi ) = Γyi (xi ) − max Γy (xi ).
y 6=yi
Margin
0.8
0.6
0.4
0.2
шумы
пограничные
объекты
надёжно классифицируемые объекты
эталонные
объекты
0
-0.2
ошибки
-0.4
-0.6
0
20
40
60
80
100
120
140
160
180
200
i
Практический вывод: метод настройки весов не столь важен,
как обеспечение надёжного покрытия выборки и отсев шума.
К. В. Воронцов (www.ccas.ru/voron)
Логические алгоритмы классификации
Понятия закономерности и информативности
Методы построения логических алгоритмов
Вероятностное оценивание
Постановка задачи
Оценки надёжности закономерностей
Калибровка Платта
Задача вероятностного оценивания
Задача:
наряду с классификацией объекта a(x) вычислять оценки
вероятностей P(y |x) для всех классов y .
Основные методы решения:
оценивание надёжности отдельных закономерностей
(для решающих списков и деревьев);
калибровка Платта
(для взвешенного голосования);
нечёткие закономерности и др.
К. В. Воронцов (www.ccas.ru/voron)
Логические алгоритмы классификации
Понятия закономерности и информативности
Методы построения логических алгоритмов
Вероятностное оценивание
Постановка задачи
Оценки надёжности закономерностей
Калибровка Платта
Оценки надёжности закономерностей
Переобучение закономерностей:
p ′ (R) на контроле меньше, чем p(R) на обучении;
n′ (R) на контроле больше, чем n(R) на обучении;
Смещённость оценки вероятности:
если Ry (x) = 1, то вероятность того, что «x из класса y »:
p
− δ(p, n, . . .) .
P(y |x) =
| {z }
p+n
поправка на
переобученность
Способы несмещённого оценивания:
По контрольным данным: P y (x)=c ≈
p′
p ′ +n′ .
Метаобучение: строится регрессионная модель δ(p, n, . . .).
Точные комбинаторные оценки вероятности переобучения
(теория under construction).
К. В. Воронцов (www.ccas.ru/voron)
Логические алгоритмы классификации
Понятия закономерности и информативности
Методы построения логических алгоритмов
Вероятностное оценивание
Постановка задачи
Оценки надёжности закономерностей
Калибровка Платта
Калибровка Платта
Пусть для простоты классов два, Y = {−1, +1}.
При некоторых (не слишком сильных) допущениях
вероятность P(y |x) связана с перевесом голосов
∆y (x) = Γy (x) − Γ−y (x) через сигмоидную функцию σ(z):
1.0
P(y |x) = σ(a∆y (x) + b),
σ(z) =
1
1 + e −z
σ(z)
0.5
0
-6
-4
-2
0
2
4
6
Настройка коэффициентов a, b по контрольной выборке
методом максимума правдоподобия:
X
X
log 1 − p(xi ; a, b) +
log p(xi ; a, b) → max
yi =−1
К. В. Воронцов (www.ccas.ru/voron)
yi =+1
a,b
Логические алгоритмы классификации
z
Понятия закономерности и информативности
Методы построения логических алгоритмов
Вероятностное оценивание
Постановка задачи
Оценки надёжности закономерностей
Калибровка Платта
Сухой остаток
1
Закономерности — это простые информативные правила.
Чаще всего применяются закономерности-конъюнкции.
2
Популярные критерии информативности не вполне адекватны.
Спасает расслоение Парето.
3
Поиск закономерностей сводится к отбору признаков.
Выбор конкретного метода отбора почти не важен.
4
Два основных типа композиций закономерностей.
Взвешенное голосование немного надёжнее покрытия.
5
Визуальный контроль граничных и шумовых объектов.
Калибровка Платта даёт вероятности классов.
К. В. Воронцов (www.ccas.ru/voron)
Логические алгоритмы классификации
Понятия закономерности и информативности
Методы построения логических алгоритмов
Вероятностное оценивание
Постановка задачи
Оценки надёжности закономерностей
Калибровка Платта
Литература
Ю. И. Журавлёв, В. В. Никифоров. Алгоритмы распознавания,
основанные на вычислении оценок // Кибернетика, Киев, 1971, № 3.
В. С. Переверзев-Орлов. Советчик специалиста: опыт создания
партнерской системы. Наука, Москва, 1990. 133 С.
W. W. Cohen, Y. Singer, A Simple, Fast and Effective Rule Learner //
16th National Conference on Artificial Intelligence, 1999, Pp. 335–342.
J. Fürnkranz, P. A. Flach. ROC‘n’Rule Learning — Towards a Better
Understanding of Covering Algorithms // Machine Learning, 2005, No. 1,
Vol. 58, Pp. 39–77.
F. Janssen, J. Fürnkranz. Meta-Learning Rule Learning Heuristics //
Martin-Luther-University Halle-Wittenberg, 2007, Pp. 167–174.
Hsuan-tien Lin, Chih-Jen Lin, Ruby C. Weng. A Note on Platts
Probabilistic Outputs for SVM // Machine Learning, 2007, No. 3, Vol. 68,
Pp. 267–276.
M. Marchand, J. Shawe-Taylor. Learning with the Set Covering
Machine // ICML-18, 2001, Pp. 345–352.
К. В. Воронцов (www.ccas.ru/voron)
Логические алгоритмы классификации
Download