Логические алгоритмы классификации
DESCRIPTION
Логические алгоритмы классификацииTRANSCRIPT
Понятия закономерности и информативностиМетоды построения логических алгоритмов
Вероятностное оценивание
Логические алгоритмы классификации
К. В. Воронцов[email protected]
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). . . . . . . . . . . . . . . . . .f1(xℓ) . . . fn(xℓ)
y1
. . .yℓ
Найти: классификатор — функцию a : X → Y ,приближающую y(x) на всём множестве x ∈ X .
f1(x′1) . . . fn(x
′1)
. . . . . . . . . . . . . . . . . .f1(x
′k) . . . fn(x
′k)
a(x ′1)
. . .a(x ′
k)
К. В. Воронцов (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. Конъюнкция пороговых условий (термов):
R(x) =∧
j∈J
[aj 6 fj(x) 6 bj
].
2. Синдром — когда выполнено не менее d термов из J,(при d = |J| это конъюнкция, при d = 1 — дизъюнкция):
R(x) =
[∑
j∈J
[aj 6 fj(x) 6 bj
]> d
]
,
Синдромы обнаруживаются во многих прикладных областях:в кредитном скоринге, в геологическом прогнозировании,в медицинской диагностике [Переверзев-Орлов, 1990], и др.
Параметры J, aj , bj , d настраиваются по обучающей выборке.
К. В. Воронцов (www.ccas.ru/voron) Логические алгоритмы классификации
Понятия закономерности и информативностиМетоды построения логических алгоритмов
Вероятностное оценивание
Логическая закономерностьТребование интерпретируемостиТребование информативности
Часто используемые виды закономерностей
3. Полуплоскость — линейная пороговая функция:
R(x) =[
∑
j∈J
wj fj(x) > w0
]
.
4. Шар — пороговая функция близости:
R(x) =[r(x , x0) 6 w0
],
АВО — алгоритмы вычисления оценок [Ю.И.Журавлёв, 1971]:
r(x , x0) = maxj∈J
wj
∣∣fj(x) − fj(x0)
∣∣.
SCM — машины покрывающих множеств [M.Marchand, 2001]:
r(x , x0) =∑
j∈J
wj
∣∣fj(x) − fj(x0)
∣∣2.
Параметры J, wj , w0, x0 настраиваются по обучающей выборкепутём оптимизации критерия информативности.
К. В. Воронцов (www.ccas.ru/voron) Логические алгоритмы классификации
Понятия закономерности и информативностиМетоды построения логических алгоритмов
Вероятностное оценивание
Логическая закономерностьТребование интерпретируемостиТребование информативности
Часто используемые критерии информативности
Проблема: надо сравнивать закономерности R .Как свернуть два критерия в один критерий информативности?
{
p(R) → max
n(R) → min
?=⇒ I (p, n) → max
Очевидные, но не всегда адекватные свёртки:p
p + n→ max (precision);
p − n → max (accuracy);
p − Cn → max (linear cost accuracy);p
P− n
N→ max (relative accuracy);
P =∣∣{xi : yi=c
}∣∣ — число «своих» во всей выборке;
N =∣∣{xi : yi 6=c
}∣∣ — число «чужих» во всей выборке.
К. В. Воронцов (www.ccas.ru/voron) Логические алгоритмы классификации
Понятия закономерности и информативностиМетоды построения логических алгоритмов
Вероятностное оценивание
Логическая закономерностьТребование интерпретируемостиТребование информативности
Часто используемые критерии информативности
Адекватные, но неочевидные критерии:
энтропийный критерий информационного выигрыша:
h
(P
ℓ
)
−p + n
ℓh
(p
p + n
)
− ℓ − p − n
ℓh
(P − p
ℓ − p − n
)
→ max,
где h(q) = −q log2 q − (1 − q) log2(1 − q);
критерий неслучайности FET (Fisher’s Exact Test):C
pPC
nN/C
p+nP+N → min;
критерий бустинга [Cohen, Singer, 1999]:√p −√
n → max
нормированный критерий бустинга:√
p/P −√
n/N → max;
предсказательные критерии на основе мета-обучения[J. Furnkranz at al., 2001–2007].
К. В. Воронцов (www.ccas.ru/voron) Логические алгоритмы классификации
Понятия закономерности и информативностиМетоды построения логических алгоритмов
Вероятностное оценивание
Логическая закономерностьТребование интерпретируемостиТребование информативности
Где находятся закономерности в (p, n)-плоскости
Логические закономерности: np+n
6 0.1, pP+N
> 0.05.
Статистические закономерности: CpPC
nN/C
p+nP+N 6 0.05.
P = 200
N = 100
0 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180 1900
10
20
30
40
50
60
70
80
90
100
p
n
логические закономерности низкой информативностилогические закономерности высокой информативности
статистические закономерностиминимум информативности
Вывод: неслучайность — ещё не значит закономерность.
К. В. Воронцов (www.ccas.ru/voron) Логические алгоритмы классификации
Понятия закономерности и информативностиМетоды построения логических алгоритмов
Вероятностное оценивание
Логическая закономерностьТребование интерпретируемостиТребование информативности
Парето-критерий информативности
Парето-фронт — множество недоминируемых закономерностей(точка R недоминируема, если правее и ниже точек нет)
0 50 100 150 200 250 3000
5
10
15
20
25
30
35
40
45
50
!"#$ %$#$&!'(#)*+, %-!.(-$/, p(R)
!"#$ $'-!01'(#)*+, %-!.(-$/, n(R
)
2$.!*!-3(.+( 415$*$.(-*$"'!
6 "#$6
5 "#$6
4 "#$6
3 "#$6
2 "#$6
1 "#$6
*(321 *+( 415$*$.(-*$"'!
задача UCI:germanК. В. Воронцов (www.ccas.ru/voron) Логические алгоритмы классификации
Понятия закономерности и информативностиМетоды построения логических алгоритмов
Вероятностное оценивание
Индукция закономерностейКомпозиция закономерностейВзвешенное голосование
Поиск информативных наборов признаков
Проблема: как сократить перебор предикатов, захвативпобольше закономерностей из первых Парето-слоёв.
Это задача комбинаторной оптимизации.
Основные эвристические методы поиска:
поиск в глубину, метод ветвей и границ (КОРА);
поиск в ширину (ТЭМП);
стохастический локальный поиск (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: покрытие 2: голосование
(комитеты старшинства, (комитеты большинства,решающие списки и деревья) бустинг и бэггинг)
К. В. Воронцов (www.ccas.ru/voron) Логические алгоритмы классификации
Понятия закономерности и информативностиМетоды построения логических алгоритмов
Вероятностное оценивание
Индукция закономерностейКомпозиция закономерностейВзвешенное голосование
Взвешенное голосование закономерностей
Пусть Rty (x), t = 1, . . . ,Ty — закономерности класса y .
Взвешенное голосование:
1) сумма голосов закономерностей за класс y :
Γy (x) =
Ty∑
t=1
atyRt
y (x);
2) алгоритм классификации:
a(x) = arg maxy∈Y
Γy (x).
Методы настройки весов aty по обучающей выборке:
простое голосование: aty = 1/Ty ;
LR — логистическая регрессия;
SVM — метод опорных векторов;
бустинг.
К. В. Воронцов (www.ccas.ru/voron) Логические алгоритмы классификации
Понятия закономерности и информативностиМетоды построения логических алгоритмов
Вероятностное оценивание
Индукция закономерностейКомпозиция закономерностейВзвешенное голосование
Покрытие выборки
Перевес голосов (margin) за правильный класс yi на объекте xi :
M(xi ) = Γyi(xi ) − max
y 6=yi
Γy (xi ).
0 20 40 60 80 100 120 140 160 180 200
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
i
Margin
шумы
ошибки
пограничныеобъекты
надёжно классифицируемые объекты
эталонныеобъекты
Практический вывод: метод настройки весов не столь важен,как обеспечение надёжного покрытия выборки и отсев шума.
К. В. Воронцов (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(y |x) =p
p + n− δ(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):
P(y |x) = σ(a∆y (x) + b),
σ(z) =1
1 + e−z
-6 -4 -2 0 2 4 6
0
0.5
1.0
z
σ(z)
Настройка коэффициентов a, b по контрольной выборкеметодом максимума правдоподобия:
∑
yi=−1
log(1 − p(xi ; a, b)
)+
∑
yi=+1
log p(xi ; a, b) → maxa,b
К. В. Воронцов (www.ccas.ru/voron) Логические алгоритмы классификации
Понятия закономерности и информативностиМетоды построения логических алгоритмов
Вероятностное оценивание
Постановка задачиОценки надёжности закономерностейКалибровка Платта
Сухой остаток
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. Furnkranz, P. A. Flach. ROC‘n’Rule Learning — Towards a BetterUnderstanding of Covering Algorithms // Machine Learning, 2005, No. 1,Vol. 58, Pp. 39–77.
F. Janssen, J. Furnkranz. 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 PlattsProbabilistic Outputs for SVM // Machine Learning, 2007, No. 3, Vol. 68,Pp. 267–276.
M.Marchand, J. Shawe-Taylor. Learning with the Set CoveringMachine // ICML-18, 2001, Pp. 345–352.
К. В. Воронцов (www.ccas.ru/voron) Логические алгоритмы классификации