Введение в Data Science Занятие 1. Классификация и регрессия Николай Анохин Михаил Фирулик 3 марта 2014 г.
Введение в Data ScienceЗанятие 1. Классификация и регрессия
Николай Анохин Михаил Фирулик
3 марта 2014 г.
Постановка задач классификации и регрессии
Теория принятия решений
Обучение модели
Выбор модели
Классификация: интуиция
ЗадачаРазработать алгоритм, позволяющий определить класспроизвольного объекта из некоторго множества
I Дана обучающая выборка, в которой для каждого объектаизвестен класс
Регрессия: интуиция
ЗадачаРазработать алгоритм, позволяющий предсказать числовуюхарактеристику произвольного объекта из некоторого множества
I Дана обучающая выборка, в которой для каждого объектаизвестно значение данной числовой характеристики
Формализуем
X – множество объектовT – множество значений целевой переменной (target variable)
Дана обучающая выборка из объектов
X = (x1, . . . , xN)>, xi ∈ X
и соответствующие им классы
T = (t1, . . . , tN)>, ti ∈ T
Требуется найти функцию
y∗(x) : X → T ,
позволяющую для произвольного x ∈ X наиболее точно предсказатьсоответствующее t ∈ T
Целевая переменная
I T = {C1, . . . ,CK} – задача классификации в Kнепересекающихся классов
I T = [a, b] ⊂ R – задача регрессии
Как решать?
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)
Теория принятия решений
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)
Что моделировать?
Генеративные модели. Смоделировать p(x |Ck) и p(Ck), применитьтеорему Байеса
p(Ck |x) =p(x |Ck)p(Ck)
p(x)
и использовать p(Ck |x) для принятия решения(NB, Bayes Networks, MRF)
Дискриминативные модели. Смоделировать p(Ck |x) ииспользовать ее для принятия решения(Logistic Regression, Decision Trees)
Функции решения. Смоделировать напрямую f (x) : X → T(Linear Models, Neural Networks)
Минимизируем риск
ПустьRk – область, такая что все x ∈ Rk относим к Ck
ДаноRkj – риск, связанный с отнесением объекта класса Ck к классу Cj
Найти∀k : Rk , такие, что математическое ожидание риска E [R]минимально.
E [R] =∑k
∑j
∫Rj
Rkjp(Ck |x)p(x)dx
Медицинская диагностика
Матрица риска [Rkj ]
sick normalsick 0 10
normal 1 0
Условные вероятности p(Ck |x)
p(normal|moving) = 0.9, p(normal|not moving) = 0.3
Вероятности p(x)p(moving) = 0.7
Требуется определить Rsick, Rnormal
Регрессия
Те же виды моделей: генеративные, дискриминативные,функция решения
Задана функция рискаR(t, y(x))
Математическое ожидание E [R]
E [R] =
∫ ∫R(t, y(x))p(x , t)dxdt
Для квадратичной функции риска R(t, y(x)) = [t − y(x)]2
y(x) = Et [t|x ]
Когда удобнее вероятностные модели
I Функция риска может менятьсяI Отказ от классификации (reject option)I Дисбаланс в выборкеI Ансамбли моделей
Обучение модели
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)
Выбор параметров модели
Функция потерь L(x , t, θ) - ошибка, которую для данного x даетмодель y(x , θ) по сравнению с реальным значением t
Эмпирический риск – средняя ошибка на обучающей выборке
Q(X,T, θ) =1
N
N∑k=1
L(xk , tk , θ)
Задача – найти значение θ∗, минимизирующее эмпирический риск
θ∗ = θ∗(X,T) = argminθQ(X,T, θ)
Некоторые функции потерь
I Индикатор ошибки
L(x , t, θ) = 0 if y(x , θ) = t else 1
I Функция Минковского
L(x , t, θ) = |t − y(x , θ)|q
Частные случаи: квадратичная q = 2, абсолютная ошибка q = 1
I HingeL(x , t, θ) = max(0, 1− t ∗ y(x , θ))
I Информационная
L(x , t, θ) = − log2 p(t|x , θ)
Проблема 1. Переобучение
ЗадачаАппроксимировать обучающую выборку полиномом M степени
Проблема 2. Проклятие размерности
ЗадачаКлассифицировать объекты.
Выбор модели
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)
Как оценить различные модели?
Идеяиспользовать долю неверно классифицированных объектов(error rate)
Важное замечаниеerror rate на обучающей выборке НЕ является хорошим показателемкачества модели
Решение 1: разделение выборки
Делим обучающую выборку на тренировочную, валидационную итестовую
Решение 2: скользящий контроль
(n-times) (stratified) cross-validation
частный случай: leave-one-out
Решение 3: bootstrap
выбираем в тренировочную выбоку n объектов с возвращением
упражнение: найти математическое ожидание размера тестовойвыборки.
Доверительный интервал для success rateПри тестировании на N = 100 объектах было получено 25 ошибок.Таким образом измеренная вероятность успеха (success rate)составила f = 0.75. Найти доверительный интервал длядействительной вероятности успеха c уровнем доверия α = 0.8.
РешениеПусть p – действительная вероятность успеха в испытанияхбернулли, тогда
f ∼ N (p, p(1− p)/N) .
Воспользовавшись табличным значением P(−z ≤ N (0, 1) ≤ z) = α,имеем
P
(−z ≤ f − p√
p(1− p)/N≤ z
)= α,
откуда
p ∈
(f +
z2
2N± z
√f
N− f 2
N+
z2
4N2
)/
(1 +
z2
N
)= [0.69, 0.80]
Метрики качества. Вероятностные модели.
Пусть ti - действительный класс для объекта xiI Information loss
− 1
N
∑i
log2 p(ti |xi )
I Quadratic loss1
N
∑j
(p(tj |xi )− aj(xi ))2,
где
aj(xi ) =
{1, если Cj = ti
0, иначе
Метрики качества. Функции решения.
Предсказанныйtrue false
Действительный true TP FNfalse FP TN
success rate = accuracy =TP + TN
TP + FP + FN + TN
recall = TPR =TP
TP + FN; precision =
TP
TP + FP
FPR =FP
FP + TN
affinity = lift =accuracy
p
Receiver Operating Characteristic
TPR =TP
TP + FN; FPR =
FP
FP + TN
Упражнение
Простые классификаторыВ генеральной совокупности существуют объекты 3 классов,вероятность появления которых p1 < p2 < p3. Первый классификаторотносит все объекты к классу с большей вероятностью (то есть ктретьему). Второй классификатор случайно относит объект к одномуиз классов в соответствии с базовым распределением. Рассчитатьprecision и recall, которые эти классификаторы дают для каждого из3 классов.
Метрики качества. Регрессия
MSE =1
N
∑(y(xi )− ti )
2, RMSE =√
MSE
MAE =1
N
∑|y(xi )− ti |, RMAE =
√MAE
RSE =
∑(y(xi )− ti )
2∑(ti − t̄)2
correlation =Sty
StSy; Sty =
∑(y(i)− y(i))(ti − t̄)
N − 1
Sy =
∑(y(i)− y(i))2
N − 1; St =
∑(ti − t̄)2
N − 1
MDL принцип: интуиция
Спасибо!
Обратная связь