Upload
technosphere1
View
398
Download
8
Embed Size (px)
DESCRIPTION
L3: Линейная и логистическая регрессия
Citation preview
Введение в Data ScienceЗанятие 2. Линейные модели
Николай Анохин Михаил Фирулик
10 марта 2014 г.
Где мы находимся (глобально)
Где мы находимся (локально)
M Выдвигаем гипотезу насчет модели - семействапараметрических функций вида
Y = {y(x , θ) : X ×Θ→ T},
которая могла бы решить нашу задачу (model selection)L Выбираем наилучшие параметры модели θ∗, используя
алгоритм обучения
A(X,T) : (X ,T )N → Y
(learning/inference)D Используя полученную модель y∗(x) = y(x , θ∗),
классифицируем неизвестные объекты (decision making)
Как выбрать параметры модели?
Решить задачу оптимизации, чтобы получить значения θ∗
Варианты подходовI θ – фиксировано, но неизвестно: ищем θ, согласующееся с
обучающей выборкойI θ – случайная величина, распределенная по известному закону:
ищем параметры распределения
Обобщенные линейные модели
Метод максимального правдоподобия
Байесовский вывод
8 марта (is coming)
Setosa Versicolor VirginicaЗадачаОпределить вид ириса на основании длины чашелистика, ширинычашелистика, длины лепестка и ширины лепестка.
Ирисы Фишера
Линейные модели
Рассматривается случай 2 классов
Функция принятия решения
y(x) = w>x + w0
Регионы принятия решения
R1 = {x : y(x) > 0}
R2 = {x : y(x) < 0}
Задачанайти параметры модели w, w0
Линейные модели: наблюдения
Разделяющая поверхность
D = {x : w>x + w0 = 0}
1. w – нормаль к D2. d = − w0
‖w‖ – расстояние отцентра координат до D
3. r(x) = y(x)‖w‖ – расстояние от D
до x
Положим x0 ≡ 1, получим модель
y(x̃) = w̃>x̃
Обобщенные линейные модели
Линейная модельy(x) = w0 +
∑wixi
Квадратичная модель
y(x) = w0 +∑
wixi +∑∑
wijxixj
Обобщенная линейная модель
g(x) =∑
aiφi (x) = a>y
Случай линейно разделимых классов
Обобщенная линейная модель
g(x) =∑
aiφi (x) = a>y
Дана обучающая выборка Y = {y1, . . . , yN}
ИдеяПреобразовать объекты второго класса в обратные им и решатьзадачу оптимизации в области aTyi > 0, ∀i
Задача оптимизации
ЗадачаМинимизируем критерий J(a) при условиях aTyi > 0, ∀iПусть Y – множество неправильно проклассифицированныхобъектов
I Je(a) =∑
y∈Y 1
I Jp(a) =∑
y∈Y −a>y
I Jq(a) =∑
y∈Y(a>y)2
I Jr (a) =∑
y∈Y(a>y)2−b‖y‖
Улучшение: добавить отступы
Градиентный спуск
1. initialise a, J(a), η(k), ε, k = 02. do k ← k + 13. a← a− η(k)∇J(a)4. until η(k)∇J(a) < ε5. return a5. end
Инкрементальный алгоритм
Рассматриваем Jr (a) =∑
y∈Y(a>y)2−b‖y‖
1. initialise a, η(k), k = 02. do k ← k + 1
3. if yk is misclassified a← a− η(k) (a>yk)2−b
‖yk‖2 yk4. until no errors left5. return a6. end
Случай линейно неразделимых классов
I Использовать η(k)→ 0 при k →∞I От системы неравенств перейти к системе линейных уравненийI Линейное программирование
Снова переобучение
Оптимизируем критерий с регуляризацией
J1(a) = J(a) + λJR(a)
λ – коэффициент регуляризации
JR(a) =∑|aj |q
Перцептрон: результаты
Метод максимального правдоподобия
ЗадачаДана обучающая выборка X. Предполагая, что распределение p(x|θ)известно, найти значения параметров θ.
Интуиция: найти такие θ, которые максимизируют вероятностьP(X|θ).
При предположении, что обучающие образцы независимы, имеем
P(X|θ) =∏
p(xi |θ)
Функция правдоподобия
l(θ) = logP(X|θ) =∑
log p(xi |θ)
Требуется найтиθ = arg max
θl(θ)
Нормальное распределение
p(x |µ) =1
σ√
2πe−
(x−µ)2
2σ2
ЗадачаДана выборка X объектов x , распределенных согласно одномерномунормальному закону N(µ, σ2). Используя принцип максимальногоправдоподобия, оценить значение µ при известном значении σ.
Вероятностная линейная модельРассматриваем 2 класса
p(C1|x) =p(x |C1)p(C1)
p(x |C1)p(C1) + p(x |C2)p(C2)=
1
1 + e−a= σ(a)
a = lnp(x |C1)p(C1)
p(x |C2)p(C2)
σ(a) – сигмоид-функция, a = ln(σ/(1− σ))
Упражнение: p(x|Ck) = N (µk ,Σ). Проверить, чтоp(Ck |x) = σ(w>x + w0)
(Еще более) обобщенная линеная модель
Базисные функции φn(x)
φn(x) = exp
[− (x − µn)2
2s2
]Функция активации f (a)
f (a) = σ(a)
(Совсем) обобщенная линейнаямодель
y(x,w) = f (w>φ(x))
Логистическая регрессия
дано{φn = φ(xn), tn}, tn ∈ {0, 1}, n = 1 . . .N
модельp(C1|φ) = y(φ) = σ(w>φ)
функция правдоподобия
l(w) = log
[N∏
n=1
ptn(C1|φn)(1− p(C1|φn))1−tn
]=
=N∑
n=1
tn log p(C1|φn) + (1− tn) log(1− p(C1|φn)) = −Je(w)
градиент
∇Je(w) =N∑
n=1
(p(C1|φn)− tn)φn → minw
Логистическая регрессия: результаты
Байесовский вывод
ДаноI плотность вероятности p(x|θ)
I априорная плотность p(θ)
I выборка X = {x1, . . . , xN}
Найтиапостериорную плотность p(θ|X)
p(x|X) =
∫p(x|θ)p(θ|X)dθ
p(θ|X) =p(X|θ)p(θ)∫p(X|θ)p(θ)dθ
p(X|θ) =∏n
p(xn|θ)
Мультиклассовая классификация
ЗадачаИспользовать бинарный линейный классификатор длямультиклассовой классификации Ирисов. Какие идеи?
Интерфейс классификатора clfI Использовать выборку x, y для обучения
clf.fit(x, y)I Предсказать класс объектов в x
y = clf.predict(x)I Предсказать вероятности классов для x
y = clf.predict_proba(x)I Вычислить значение функции решения в x
d = clf.decision_function(x)
Домашнее задание 1
Линейные моделиРеализовать на выбор
I Линейная классификация методом градиентного спускаI Линейная регрессия методом градиентного спускаI Линейная классификация инкрементальным методомI Линейная регрессия инкрементальным методом
Ключевые датыI До 2014/03/14 23.59 выбрать задачу и ответственного в группеI До 2014/03/21 00.00 предоставить решение задания
Спасибо!
Обратная связь