Upload
cs-center
View
173
Download
8
Embed Size (px)
Citation preview
Деревья решений
И. Куралёнок, Н. Поваров
Яндекс
СПб, 2016
И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2016 Стр. 1 из 18
Пример
Дмитрий и Владимир выбирают страну, куда поехатьна отдых. Их рассуждения:
в Америку — далеко и много-много диких обезьян;в Европу — дорого;в мусульманские страны не поедем: там питьнельзя;поедем в Крым!
И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2016 Стр. 2 из 18
Пример
По сути герои использовали дерево решений. Воткакими свойствами этот способ обладает:
1 Легко интерпретировать (хотя тяжело понять :))2 Стремление к однородности групп, получившихся
в результате деления3 Деление всего множества4 Жадность
И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2016 Стр. 3 из 18
Свойства
Кусочно-постоянная природа
Большая изменчивость при изменении learn
Операции:Любое дерево можно представить как бинарноеДерево деревьев — деревоЛинейная комбинация, произведение, степень, etc.деревьев — дерево
И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2016 Стр. 4 из 18
Виды деревьев
Дикие
ПенькиЗабывчивыеНечёткие
И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2016 Стр. 5 из 18
Виды деревьев
ДикиеПеньки
ЗабывчивыеНечёткие
И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2016 Стр. 5 из 18
Виды деревьев
ДикиеПенькиЗабывчивые
Нечёткие
И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2016 Стр. 5 из 18
Виды деревьев
ДикиеПенькиЗабывчивыеНечёткие
И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2016 Стр. 5 из 18
Алгоритм обучения
Выберем вид обучаемого дерева, чувство прекрасного T ,пространство точек X , критерий остановки E , правило созданиялиста L
1 Вычислим изменение T для всех возможных способовподелить каждый лист используя факторы из X
2 Выберем максимальное улучшение T , проведем деление,создав листья по количеству возможных значений фактора
3 Проверим критерий остановки E , если он не выполнен,идем в 1 иначе все.
4 Подрежем дерево P
По сути все обучение задается набором T , X и E , L.
И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2016 Стр. 6 из 18
ID3Iterative dichotomizer 3 (Ross Quinlan)
Строим классификатор. Алгоритм:T : T (l) = −
∑c∈C p(c) log p(c)
X : дискретные фичиE : пока в листе не окажется либо ∅, либо все значения будут водном классеL: создаем листья по количеству возможных значений фактора,если множество пустое, то используем значение, которое чащевсего встречается у примеров с таким значением фактора вовсем множествеP : Нет
И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2016 Стр. 7 из 18
C4.5Ross Quinlan
Строим классификатор. Алгоритм:T : T (l) = −
∑c∈C p(c) log p(c)
X : дискретные и непрерывные фичи, веса точек, не все точкиразмеченыE : пока в листе не окажется либо ∅, либо все значения будут водном классеL: создаем листья по количеству возможных значений фактора(в случае непрерывной фичи используем разницу не менее α),если множество пустое, то используем значение, которое чащевсего встречается на предыдущем уровнеP : По CV сворачиваем ветви, которые не работают
И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2016 Стр. 8 из 18
C5Ross Quinlan
Строим классификатор. Алгоритм закрыт. Но говорят:
Работает быстрее и потребляет меньше памяти
Строит деревья меньшей высоты
Умеет работать с весами точек
Поддерживает бустинг (что бы это не значило)
думает за вас.
И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2016 Стр. 9 из 18
CART IClassification and Regression Tree (L. Breiman, J. Friedman, et.al.)
Строим классификатор или регрессию. Дерево бинарное.Алгоритм:T : T (l)
X : все возможные разбиения по каждому факторуE : пока можно найти разбиение lt+1 : T (lt) > T (lt+1)L: создаем 2 листа с средневыборочным значением в каждомP : нет
И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2016 Стр. 10 из 18
CART IIClassification and Regression Tree (L. Breiman, J. Friedman, et.al.)
Чувства прекрасного для CART:В случае классификации, применяем impurityindex:
T (L) =∑
l
∑c p(yi = c |i ∈ l)(1− p(yi = c |i ∈ l) =∑
l(1−∑
c p(yi = c |i ∈ l)2)T (l) = −
∑l
∑c∈C p(c) log p(c)
T (L) = 1|L|∑
l∈L∑
i∈l I (yi 6= yl)
В случае регрессии:
T (L) =∑l∈L
Dl
И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2016 Стр. 11 из 18
CART IIClassification and Regression Tree (L. Breiman, J. Friedman, et.al.)
В чем же разница между разными ЧП:
И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2016 Стр. 12 из 18
Тонкости
На практике мы используем варианты CART, поэтомудальше только о нем.
Одинаковые по форме деревья решений могутнести существенно разную информациюУверенность в значении в листе не всегда можнопросто вычислитьНе всегда оптимально назначатьсредневыборочное как значение в листе O_o
И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2016 Стр. 13 из 18
Немного о информации
Сколько всего информации в дереве:Информация о способе разбиения в каждом ноде:log(n + 1) + log(|fl |+ 1)Информация о получившемся разбиении:∑
l∈L|l ||X | log(|l |+ 1)
Значения в листьях: |L| × 32bit⇒ Круто оптимизировать разбиения фичи⇒ Мы можем построить prior по тому, сколько вдереве информации (сага о log)
И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2016 Стр. 14 из 18
Способы бинаризации
X ⊂ Rn×m, b : Rn → {0, 1}N
По хорошему, хотим b̂ = argmaxb T(V , argmaxF (b) T (L,F )
), но
это дорого и долго, поэтому используем эмпирику, напримермедианное разбиение с фиксированным количеством слотов.
И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2016 Стр. 15 из 18
Диалоги о дисперсииВ случае MSE минимизируем суммарную дисперсию на каждомсплите. Дисперсия растет с числом точек, нам интересно, чтобудет на бесконечности.
Можно использовать исправленную дисперсию, но помогает невсегда и есть варианты.
И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2016 Стр. 16 из 18
Работающие деревья
To be continued
И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2016 Стр. 17 из 18
Работающие деревья
To be continued
И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2016 Стр. 17 из 18
Что мы сегодня узнали
Деревья решений = разделяй и влавствуйЖадность + ограничение информации в делении= ProfitЕсть много чувств прекрасного, и хорошее еще неизобретеноМного нюансов есть в очень простых вещах, дажев вычислении среднего :)
И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2016 Стр. 18 из 18