Машинное обучение 1, осень 2014: LASSO, случайные DFT...

30
Линейные модели: уменьшаем variance И. Куралёнок, Н. Поваров Яндекс СПб, 2014 И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2014 Стр. 1 из 26

Transcript of Машинное обучение 1, осень 2014: LASSO, случайные DFT...

Page 1: Машинное обучение 1, осень 2014: LASSO, случайные DFT проекции.

Линейные модели: уменьшаем variance

И. Куралёнок, Н. Поваров

Яндекс

СПб, 2014

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2014 Стр. 1 из 26

Page 2: Машинное обучение 1, осень 2014: LASSO, случайные DFT проекции.

План1 Variance линейных моделей

Воспоминания о предыдущих лекцияхПример

2 Поиск условного оптимумаРегуляризацияВероятностные свойстваКакие prior бываютОтношение к MLСпособы расчёта

3 ElasticNet vs l0.5 vs. l1.1Объем данных vs q

4 Домашнее заданиеИ. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2014 Стр. 2 из 26

Page 3: Машинное обучение 1, осень 2014: LASSO, случайные DFT проекции.

План1 Variance линейных моделей

Воспоминания о предыдущих лекцияхПример

2 Поиск условного оптимумаРегуляризацияВероятностные свойстваКакие prior бываютОтношение к MLСпособы расчёта

3 ElasticNet vs l0.5 vs. l1.1Объем данных vs q

4 Домашнее заданиеИ. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2014 Стр. 2 из 26

Page 4: Машинное обучение 1, осень 2014: LASSO, случайные DFT проекции.

Воспоминания о былом

Из второй лекции мы знаем, что линейные моделиимеют большой разброс решенийИз предыдущей лекции мы знаем, что меньшеразброс нам не сделать с избранной целевойфункцией (теорема Гаусса-Маркова)

⇒ будем менять целевую функцию: вводить условия,или менять саму T .

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2014 Стр. 3 из 26

Page 5: Машинное обучение 1, осень 2014: LASSO, случайные DFT проекции.

Старатели

Хочется денегСтарают золотоОценка только в банкеБанк далеко

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2014 Стр. 4 из 26

Page 6: Машинное обучение 1, осень 2014: LASSO, случайные DFT проекции.

План1 Variance линейных моделей

Воспоминания о предыдущих лекцияхПример

2 Поиск условного оптимумаРегуляризацияВероятностные свойстваКакие prior бываютОтношение к MLСпособы расчёта

3 ElasticNet vs l0.5 vs. l1.1Объем данных vs q

4 Домашнее заданиеИ. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2014 Стр. 4 из 26

Page 7: Машинное обучение 1, осень 2014: LASSO, случайные DFT проекции.

Хорошие решения

1 Предположим, что данные y y нас шумные2 Введем чувство прекрасного −R(β)

Тогда нашу проблему можно свести к:

arg minβ R(β)‖Xβ − y‖ < ε

Ну или так:arg minβ ‖Xβ − y‖R(β) < p

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2014 Стр. 5 из 26

Page 8: Машинное обучение 1, осень 2014: LASSO, случайные DFT проекции.

Преобразование целевой функции

arg minβ‖Xβ − y‖+ λR(β)

Можно найти такой параметр λ, который будет даватьрешение задачи на предыдущем слайде. В смыслеоптимизации проблемы эквивалентны.

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2014 Стр. 6 из 26

Page 9: Машинное обучение 1, осень 2014: LASSO, случайные DFT проекции.

C байесовой точки зрения

Строго говоря, мы ввели prior на распределениерешений:

arg maxβ P(y |Xβ)P(β)= arg maxβ

∑i logP(yi |xiβ) + logP(β)

Если предположить нормальность P(yi |xiβ), топроблема становится очень похожей на то, что мы ужевидели:

= arg minβ‖Xβ − y‖ − zlogP(β)

где z — ошметки нормальности.

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2014 Стр. 7 из 26

Page 10: Машинное обучение 1, осень 2014: LASSO, случайные DFT проекции.

Виды prior

Какими бывают −logP(β):‖β‖0 — бритва Оккама, MDL, etc.;‖Γβ‖2 — нормальное распределение c Σ = Γ−1 и

µ = 0;‖β‖1 — распределение Лапласа;

Как можно видеть все это добро обобщается в lq.

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2014 Стр. 8 из 26

Page 11: Машинное обучение 1, осень 2014: LASSO, случайные DFT проекции.

Сравнение prior’ов в случае l1 и l2

Картинки из википедии

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2014 Стр. 9 из 26

Page 12: Машинное обучение 1, осень 2014: LASSO, случайные DFT проекции.

Как это относится к ML

Точное решение в L несет слишком много информациио обучающей выборке, поэтому точно оптимизироватьсмысла нету. Таким образом условие:

minR(β)‖Xβ − y‖ < ε

хорошо ложится на ML. При этом возможность выбораR позволяет рассказать наши ожидания от структурырешения.

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2014 Стр. 10 из 26

Page 13: Машинное обучение 1, осень 2014: LASSO, случайные DFT проекции.

Как это называется

‖β‖0 — Best Subset;‖Γβ‖2 — регуляризация Тихонова/ridge regression;‖β‖1 — least absolute shrinkage and selection

operator (LASSO);

Также рассматривается обощение на lq.

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2014 Стр. 11 из 26

Page 14: Машинное обучение 1, осень 2014: LASSO, случайные DFT проекции.

Геометрия LASSO

minβ ‖Xβ − y‖‖β‖1 < p

Картинки из ICML 2010 Tutorial (Irina Rish, Genady Grabarnik)

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2014 Стр. 12 из 26

Page 15: Машинное обучение 1, осень 2014: LASSO, случайные DFT проекции.

Геометрия LASSO II

Рассмотрим зависимость компоненты решения β0 от решениябезусловной системы β =

(XTX

)−1 XTy .

Картинки из The Elements of Statistical Learning (Hastie, Friedman andTibshirani, 2009)

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2014 Стр. 13 из 26

Page 16: Машинное обучение 1, осень 2014: LASSO, случайные DFT проекции.

Пара слов об оптимизации l0l0 — естественное условие на решение: “меньше фишек — легчедумать”Точное решение однако найти очень дорого: проблемаNP-сложная. Поэтому есть масса работ по тому как найтиприближенное решение:

Если n < 40 есть работа “Regressions by Leaps and Bounds”(Furnival and Wilson 1974) + CV для выбора эффективногоограничения

Взад-назад селекшен (Forward/Backward-StepwiseSelection): выбрасываем или добавляем фичу снаибольшим/наименьшим Z-score

Приближение с маленьким q

“Хитрые” переборы многомерного креста

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2014 Стр. 14 из 26

Page 17: Машинное обучение 1, осень 2014: LASSO, случайные DFT проекции.

Оптимизация l1 и l2В случае ridge regression все просто:

β0 =(XTX + ΓT Γ

)−1XTy

А в случае LASSO все не так просто, так как T негладкая.Поэтому там почти градиентный спускъ. Есть несколькоспособов:

Пошаговый LASSO

LARS

Покоординатный спуск (посмотреть дома)

ISTA

FISTA

etc.И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2014 Стр. 15 из 26

Page 18: Машинное обучение 1, осень 2014: LASSO, случайные DFT проекции.

Пошаговый LASSO

1 Начнем с β = 0 и зафиксируем шаг w исоответствующие ему шаги по всем ортам eiw

2 Выберем такое направление:

i = arg mini ‖y − X (βt ± eiw) ‖= arg mini ‖ (y − Xβt)± Xeiw‖= arg mini ‖rt ± Xeiw‖

3 βt+1 = βt± eiw если ‖y −Xβt‖−‖y −Xβt+1‖ > λw

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2014 Стр. 16 из 26

Page 19: Машинное обучение 1, осень 2014: LASSO, случайные DFT проекции.

Наблюдение за работой LASSO

Несколько наблюдений:Мы много раз бродили в одном и том женаправленииЗа шаг двигаемся только по одной координатеТак как шаг w фиксирован приходим не в точноерешение, а в приближенное

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2014 Стр. 17 из 26

Page 20: Машинное обучение 1, осень 2014: LASSO, случайные DFT проекции.

Least angle regression (LARS)

Внимание, 1 дальше — это вектор нужной размерности.1 Нормируем X так, чтобы µ(xi) = 0,D(xi) = 1 и y , так чтобы µ(y) = 0

2 Введем β1 = 0, r = y , A = ∅ — множество всех направлений смаксимальной корреляцией с r , s — вектор знаков корреляций.

3 XA =(s1xA(1), s2xA(2), . . . s|A|xA(|A|)

)4 aA =

(1T (XT

A XA)−11)− 1

2

5 uA = aAXA(XTA XA)

−11A обратите внимание, что (XTuA = aA1)

6 c = XT (y − βt)

7 a = XTuA

8 γ = min+j

(C−cjaA−aj

,C+cjaA+aj

)9 βt+1 = β + γuA

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2014 Стр. 18 из 26

Page 21: Машинное обучение 1, осень 2014: LASSO, случайные DFT проекции.

Работа LARS (корреляция)

Картинки из The Elements of Statistical Learning (Hastie, Friedman andTibshirani, 2009)

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2014 Стр. 19 из 26

Page 22: Машинное обучение 1, осень 2014: LASSO, случайные DFT проекции.

План1 Variance линейных моделей

Воспоминания о предыдущих лекцияхПример

2 Поиск условного оптимумаРегуляризацияВероятностные свойстваКакие prior бываютОтношение к MLСпособы расчёта

3 ElasticNet vs l0.5 vs. l1.1Объем данных vs q

4 Домашнее заданиеИ. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2014 Стр. 19 из 26

Page 23: Машинное обучение 1, осень 2014: LASSO, случайные DFT проекции.

Немного о касаниях

Хочется получить единственную точку касания

По возможности хотелось бы упростить вычисления

Картинки от Hui Zou

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2014 Стр. 20 из 26

Page 24: Машинное обучение 1, осень 2014: LASSO, случайные DFT проекции.

ElasticNet, l1.1, etc.

Можно пойти 2-мя способами:1 Добавить компоненту, которая будет отвечать за

“круглые бока” (ElasticNet)

arg minβ‖Xβ − y‖+ λ1‖β‖1 + λ2‖β‖2

2 Если жизнь все равно негладкая то гулять такгулять (1 < q < 2):

arg minβ‖Xβ − y‖+ λ‖β‖q

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2014 Стр. 21 из 26

Page 25: Машинное обучение 1, осень 2014: LASSO, случайные DFT проекции.

Grouped LASSO

Иногда мы априорно знаем, что какие-то переменныепохожи. Эту информацию можно использовать:

arg minβ‖Xβ − y‖+ λ

∑g

√∑j∈g

|βj |

Бывают и другие танцы для того, чтобы обеспечитьstructural sparsity

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2014 Стр. 22 из 26

Page 26: Машинное обучение 1, осень 2014: LASSO, случайные DFT проекции.

Как выбирать q?

Есть теоретические работы на эту тему. Не помню кто,не помню как, но доказал, что в ML q зависит отобъема выборки. Для малых объемов работает q = 0,для бесконечных q = 2. Все что посередине должнынайти свой любимый q.

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2014 Стр. 23 из 26

Page 27: Машинное обучение 1, осень 2014: LASSO, случайные DFT проекции.

Еще раз о регуляризации

arg maxβ P(y |Xβ)P(β)= arg maxβ

∑i logP(yi |xiβ) + logP(β)

Данный фокус гораздо более общий, и подходит нетолько для линейных решений.

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2014 Стр. 24 из 26

Page 28: Машинное обучение 1, осень 2014: LASSO, случайные DFT проекции.

План1 Variance линейных моделей

Воспоминания о предыдущих лекцияхПример

2 Поиск условного оптимумаРегуляризацияВероятностные свойстваКакие prior бываютОтношение к MLСпособы расчёта

3 ElasticNet vs l0.5 vs. l1.1Объем данных vs q

4 Домашнее заданиеИ. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2014 Стр. 24 из 26

Page 29: Машинное обучение 1, осень 2014: LASSO, случайные DFT проекции.

Результаты ДЗ про ln1 229043 - победитель2 eb2f0b - начало кластера 23 308e064 7723ea5 fa94346 7e54a57 0920128 5109c39 93203b10 9753c211 f19b4912 a3777913 4a1f1d14 6ad89515 e3b323 - конец кластера 216 00ec5e - кластер 317 8ce2cd - аутсайдеры18 28f6ed19 f9bc6b20 5833a821 27914322 1cc18923 6b036f24 cc90eb25 3e460926 bfb98327 b3001d28 4b376829 6a06b230 749f77

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2014 Стр. 25 из 26

Page 30: Машинное обучение 1, осень 2014: LASSO, случайные DFT проекции.

Домашнее задание

Датасет в домашнем задании прошлой недели иэтой - одинаковый.Задача - мультиклассификация.Для ДЗ прошлой лекции можноимплементировать методы из прошлой лекции.Для ДЗ текущей лекции можно имплементироватьметоды из текущей лекции.Рейтинг будет строиться исходя из качестваполученной мультиклассификации для каждойнедели отдельно.

И. Кураленок, Н. Поваров, Яндекс Санкт-Петербург, 2014 Стр. 26 из 26