\item Вектор, операции над векторами и их свойства, векторное пространство, аксиомы векторного пространства, размерность векторного пространства.
\item Линейная зависимость векторов, линейная независимость векторов, методы проверки линейной независимости векторов.
\item Матрица, операции над матрицами, умножение матрицы на вектор, умножение матрицы на матрицу, ранг матрицы, транспонирование матриц, обратная матрица.
\item Система линейных уравнений (СЛУ), число решений СЛУ, ранг матрицы СЛУ и число ее решений.
\item Евклидово пространство, его свойства, норма вектора, ее свойства, метрика, евклидова метрика, скалярное произведение векторов, угол между векторами.
\end{itemize}
\item\textbf{Теория информации} Информационная энтропия (Entropy) – мера неопределённости некоторой системы
\item формальная постановка задачи (кампания по привлечению кредитов, найти модель)
\item данные (признаковое описание -- бинарные, числовые, категориальные, порядковые; матрица расстояний между объектами, временные ряды скалярных или векторных наблюдений, итого 16 прпизнаков)
\item определение ответа (да/нет), но чаще всего нужен не бинарный ответ, а определение степени доверия ответу.
\item выбор критериев качества решения (метрики оценивания используемого метода решения должны иметь интерпретацию, значимую для решаемой бизнес-задачи)
\item выбор метода решения
\item предобработка данных (если клиентов приндалежащих какому-то классу меньше 5\% выборка не сбалансирована)
\item\textbf{Постановка задачи}. Проводилась компания по привлечению клиентов для открытия депозита. Цель маркетинговой компании: привлечь клиентов на депозит, предлагая долгосрочные депозитные заявки с высокими процентными ставками, при сокращении затрат и времени на проведение компании: контактов должно быть меньше, но число клиентов, подписавшихся на депозит не должно уменьшаться. Цель исследования: найти модель, которая может объяснить успех компании т. е., если клиент подписывает депозит. Решается задача классификации: по имеющемуся признаковому описанию клиента определить подпишет ли он депозит (успех) и нет (неудача).
\item\textbf{Данные задачи}. \textbf{Типы входных данных}: признаковое описание, каждый объект описывается набором числовых или нечисловых признаков; матрица расстояний между объектами (метод ближайших соседей); временные ряды скалярных или векторных наблюдений (сигналы); изображение или видеоряд;
\textbf{Признаковое описание} Бинарные признаки –$(0, 1)$; Числовые признаки: $x_{ik}\in R$ -- с этими признаками удобно работать, практически любой метод применим к задаче с числовыми признаками; Категориальные признаки $x_{ik}\in\{\alpha_1, ..., \alpha_k\}$ нет метрики, нет упорядочения; Порядковые признаки $x_{ik}\in\{\alpha_1, ..., \alpha_k\}$ есть упорядочение.
5 - default: has credit in default? (binary: "yes","no")
6 - balance:, in euros (numeric)
7 - housing: has housing loan? (binary: "yes","no")
8 - loan: has personal loan? (binary: "yes","no")
\textbf{Данные о рекламной компании}
9 - contact: contact communication type (categorical: "unknown","telephone","cellular")
10 - day: last contact day of the month (numeric)
11 - month: last contact month of year (categorical: "jan", "feb", "mar", ..., "nov", "dec")
12 - duration: last contact duration, in seconds (numeric)
13 - campaign: number of contacts performed during this campaign (numerict)
14 - pdays: number of days that passed by after the client was last contacted (numeric)
15 - previous: number of contacts performed before this campaign and for this client (numeric)
16 - poutcome: outcome of the c (categorical: "unknown","other","failure","success")
17 - y - has the client subscribed a term deposit? (binary: "yes","no")
\item\textbf{Предварительная обработка и проверка качества исходных данных}
1. Какова доля объектов первого класса в данных? Если эта доля менее 5\% - имеем несбалансированную выборку.
2.Какова доля выбросов, пропусков в данных? Выбросы могут быть результатом: событий, которые происходят с небольшой вероятностью и большим воздействием, системной ошибки.
\item\textbf{Определение ответа} Варианты ответов: клиент подписывает контракт -- класс 1, клиент не подписывает -- класс 0;
вектор $\{p, 1-p\}= P, p$ --степень уверенности алгоритма (вероятность) в том, что объект принадлежит классу 1 .
\item Выбор критериев: метрики оценивания используемого метода решения должны иметь интерпретацию, значимую для решаемой бизнес-задачи.
\item Удаление части элементов мажоритарного класса (недостаток: потеря данных).
\item Дополнение миноритарного класса повторяющимися данными (недостаток: переобучение на элементах миноритарного класса).
\item Создание дополнительных искусственных объектов.
\item Настройка классификатора с использованием весов. В контексте кредитования потеря денег из-за незаслуживающего доверия заемщика обходится существенно выше, чем отсутствие возможности кредитования надежного заемщика. Поэтому мы можем назначать этим классам различные веса и отсечки
\subsection{Метрики качества оценки алгоритмов машинного обучения}
\begin{itemize}
\item\textbf{Accuracy}$\frac{TN + TP}{n}$ -- метрика сама по себе неприменима.
\item\textbf{Precision}$\frac{TP}{TP+FP}$ -- уровень доверия к положительным ответам модели, доля истинных положительных объектов, выделенных классификатором как положительные.
\item\textbf{Recall}$\frac{TP}{TP+FN}$ -- какая часть положительных объектов правильно определена классификатором
\item\textbf{F-мера} (F-score) -- гармоническое среднее точности и полноты. F-мера обладает важным свойством -- она близка к нулю, если хотя бы один из аргументов близок к нулю: $F =\frac{2*precision*recall}{precision+recall}, 0\leq F \leq1$
\item Ошибка 1 рода (Туре I Error) случается, когда объект ошибочно относится к положительному классу
\item Ошибка 2 рода (Туре II Error) случается, когда объект ошибочно относится к отрицательному классу
Посчитаем число вариантов признаковых описаний одного клиента. Число значений категориальных и бинарных признаков каждого клиента, не считая возраста, равно
\[N =12*3*4*8*3*12*4=144*24*48=165888.\]
С ростом размера признакового пространства увеличивается сложность задачи и снижается достоверность решения.
\textbf{Шумовые признаки} -- это признаки, которые никак не связаны с целевой переменной. Зашумленность данных означает, что отдельные значимые объясняющие переменные, возможно, не были зарегистрированы или что дефолт произошел случайно.
\item Обертки -- использующие для отбора признаков конкретную модель. Модель обучается на подмножестве признаков, для нее строится матрица ошибок, затем на другом и т.д.
\item Фильтры -- удаляем коррелированные данные матрица рассеяния, F-тест -- оценивает степень линейной зависимости между признаками и целевой переменной, поэтому он лучше всего подойдёт для линейных моделей. Реализован как \code{f_classif} для классификации; хи-квадрат -- оценивает степень линейной зависимости между признаками и целевой переменной.
\item Встроенные методы -- задача отбора признаков -- побочная задача (случайный лес)
Значения категориальных признаков могут быть любыми объектами, на которых определена операция сравнения (равно и не равно).
\begin{itemize}
\item\textbf{Lable encoding} -- отображение каждого признака в число позволяет использовать его в модели обучения. Недостатки: неявно задает порядок категории, не может работать с неизвестными в процессе обучения значениями категориального признака
\item\textbf{Onehot coding} -- недостатки: увеличение количества признаков
\item\textbf{Target encoding} -- кодирование с учётом целевой переменной
где $p_j(x \in X)$ -- числовое значение $j$-го категориального признака на объекте $x, f_j(x_i)$ -- исходное значение $j$-го категориального признака на объекте $x_i$. Использование счетчиков может привести к переобучению. Модель может опираться на счетчики, если есть уверенность в том, что модель обучена по большому числу объектов. Сглаживание
Если мало объектов этой категории, то числовое значение признака приближается близко к среднему по всей выборке, а для популярных к среднему значению по категории. $p_j(X)\to1/N \sum_{i=1}^N[y_i =1]$, если мало объектов в категории.
Значение категориального признака в задаче регрессии
\item Случайным образом тасуется один столбец в валидационной выборке. Признак считается значимым, если точность модели сильно падает и вызывает увеличение ошибки и «неважным», если перетасовка его значений не влияет на точность модели.
\item Permutation Importance рассчитывается после обучения модели с использованием библиотеки ELI5. ELI5 -- это библиотека Python, которая позволяет визуализировать и отлаживать различные модели машинного обучения с использованием унифицированного API.
\item Feature selection -- отбор самых важных признаков. Оценка информативности признаков: Вычисление дисперсии: чем больше дисперсия, тем информативнее признак
Позволяет убирать малоинформативные признаки, недостатки: никак не учитываются значения целевой переменной.
\item Вычисление корреляции между значениями признака и целевой переменной (задача регрессии)
\item Задача классификации: Подсчет процента успешной классификации для каждого из значений признака $p$. По теореме Байеса считаем $P(X_j|Y)$ -- вероятность признака $X_j$, если объект принадлежит положительному классу. Если $P(X_j|Y =1) > 0,7\cup P(X_j|Y =1) < 0,3$, то считаем $X_j$ информативным признаком.
Число строк в квадрате справа равно числу единиц, число столбцов -- числу нулей. Стартуем из точки (0, 0)(левый нижний угол. Если значение метки класса в просматриваемой строке 1, то делаем шаг вверх; если 0, то делаем шаг вправо, если у нескольких объектов значения оценок равны, то делаем шаг в точку \textbf{а} блоков выше и \textbf{b} блоков правее, где \textbf{а} -- число единиц, \textbf{b} -- число нулей в рассматриваемой группе объектов.
$a(X_i,w)=[\langle w,X_i\rangle >t]$, где $t$ -- порог, оценка $\sum_{j=1}^m\omega_jx_{ij}$. $TPR=\frac{TP}{TP+FN}$, доля правильно определенных объектов положительного класса $FPR=\frac{FP}{FP+TN}$ доля неправильно определенных объектов положительного класса. Число строк в прямоугольнике равно \textbf{числу единиц}, число столбцов –\textbf{числу нулей} вектора \textbf{$Y_i$}. Идем из точки (0, 0)(левый нижний угол). Если \textbf{$Y_i=1$} то шаг вверх; если 0, то шаг вправо. Если у нескольких объектов значения оценок равны, то делаем шаг в точку на $a$ блоков выше и $b$ блоков правее, где $a$– число единиц, $b$– число нулей.
\textbf{Принятие решений на основе кривой.} Для того, чтобы решить, какие объекты отнести к классу 1, а какие к классу 0, нужно будет выбрать некоторый порог (объекты с оценками выше порога относим к классу 1, остальные -- 0). Выбору порога соответствует выбор точки на ROC-кривой. Здесь для порога $0.25$ выбрана точка (1/4,2/3).
В случае бинарных ответов ROC-кривая состоит из трёх точек, соединёнными линиями: $(0,0)$, $(FPR, TPR)$, $(1, 1)$, где FPR и TPR соответствуют любому порогу из интервала $(0, 1)$. На рисунке зелёным показана ROCкривая бинаризованногорешения, AUC ROC после бинаризации уменьшилась и стала равна $8.5/12\sim0.71$. Формула для вычисления AUC ROC для бинарного решения:
Качество ROC-кривой напрямую зависит от объёма выборки и количества признаков. С её помощью можно оченить информативность признаков (отобрать признаки).
\subsection{Площадь под ROC-кривой, AUC-ROC}
\textbf{AUC ROC} оценивает качество упорядочивания алгоритмом объектов двух классов, (например, по вероятности принадлежности объекта к классу 1). Ее значение лежит на отрезке [0, 1]. В рассматриваемом примере $AUC ROC =9.5/12\sim0.79$.
На рисунке слева приведены случаи идеального, наихудшего и обратимого следования меток в упорядоченной таблице. Идеальному соответствует ROC-кривая, проходящая через точку $(0, 1)$, площадь под ней равна $1$. Если ROC кривая, проходит через точку $(1, 0)$, площадь под ней -- 0, в этом случае в результата инвертирования можно получить неплохую модель. Случайному -- что-то похожее на диагональ квадрата,площадь примерно равна $0.5$.
\textbf{Индекс $\text{Джини}=2*S_{AUCROC}-1$}
\begin{itemize}
\item Показатель AUC ROC предназначен скорее для сравнительного анализа нескольких моделей;
\itemЕго не имеет смысла использовать на коротких выборках
\item Высокий AUC ROC может существовать и в очень плохих моделях. Пример.
$precision=\frac{TP}{TP+FP}, recall=\frac{TP}{TP+FN}; t_{min} precision=?, recall=1$ Качество оценки площади PR-кривой зависит от объёма выборки при разной пропорции классов: при малых объемах выборки отклонения от среднего увеличиваются.
Обучающая выборка делится на 3 части: На обучающей выборке происходит обучение алгоритма. На валидационной выбираются гиперпараметры. На тестовой выборке никакие параметры не меняются. $60-70\%$ -- обучение, $40\%-30\%$ -- валидационная и тестовая выборки.
\begin{itemize}
\item ошибка обучения = доля неверно классифицированных обучающих примеров;
\item ошибка теста = доля ошибочно классифицированных тестовых примеров на валидационной выборке;
\item ошибка обобщения = вероятность неправильной классификации новых случайный примеров.
\item Робастность -- устойчивость к отклонениям от исходных предпосылок метода, например, возможность работы с зашумленными данными, пропущенными значениями в данных, нарушениями предположений о распределении и пр.
\item Интерпретируемость -- обеспечивает возможность понимания модели аналитиком предметной области.
\end{itemize}
Пусть для решения применили методы: деревья решений; байесовская классификация, метод ближайшего соседа; логистическая регрессия; метод опорных векторов. Можно ли сравнить их по вышеперечисленным характеристикам?
\subsection{Постановка задачи классификации}
Пусть $X_t\subset X$ -- объект множества $X$ c набором характеристик $(x_{t1},x_{t2},...,x_{tn})$, \textbf{Y} -- множество классов, к которым принадлежать объекты множества \textbf{X}.
$\{X_t, Y_t\}^N_{t=1}$ -- обучающая выборка, для которой в подмножестве объектов $X_t\subset X$ известны ответы $Y_t$. Требуется построить алгоритм $a:X \to Y$, который определяет ответы $Y_t$ для любого объекта $X_t$, не принадлежащего обучающей выборке $\mathcal{L}=\{X_t, Y_t\}^N_{t=1}$.
\begin{itemize}
\item По числу классов различают двухклассовую классификацию: множество классов $Y=\{-1,1\}$ или $Y=\{0,1\}$ и многоклассовую классификацию $Y=\{1, 2, ..., m\}$.
\item Множество «ответов» (классов) задается либо числом (обозначение класса), либо вектором $\{p_1,p_2,...P_m\}$, где $P_i$ - верность или степень уверенности применяемого алгоритма, что выбранный объект принадлежит классу $i, i =1, 2, ..., m, \sum^m_{i=1}p_i =1$.
\item Алгоритм $a(Xt)$ отображает объект $X_t$ на вектор ответов $a:(X_t, g)\to\bigg\{0,...,\underbrace{1}_i,...,0\bigg\}$, где $i$ -- номер класса, определенного алгоритмом для объекта $X_t$, или $a:(X_t, g)\to\{p_1, p_2, ..., p_m\}$, где $p_i$ -- вероятность класса, $g$ -- вектор гиперпараметров.
\item Классы могут пересекаться: рассматривают задачи с непересекающимися и пересекающимися классами: объект может относиться одновременно к нескольким классам. $Y=\{0, 1\}^M$, Пусть $M =3$, тогда $Y =\{0, 1\}\times\{0,1\}\times\{0,1\}$ и результат $Y=\{1\}\times\{1\}\times\{0\}$ означает, что классифицируемый объект принадлежит первому и второму классам.
Задача бинарной классификации -- разделение объектов множества $X$ на два класса. Пусть $\{X_i, Y_i\}^l_{i-1}$, где $X_i\in R^r,Y_i\in\{-1,1\}$, обучающая выборка. Линейная модель или алгоритм классификации:
Алгоритм -- гиперплоскость в пространстве признаков с нормалью $||w||$ и расстоянием $a(x_i)$ до точки $x_i, \langle w, x_i\rangle$ -- скалярное произведение, величина которого пропорциональна расстоянию от разделяющей гиперплоскости $\langle w, x\rangle=0$ до $x_i$.
Если признаковое пространство может быть разделено гиперплоскостью на два полупространства, в каждом из которых находятся только объекты одного из двух классов, то обучающая выборка называется линейно разделимой.
\subsection{Метрики. Оценка качества работы алгоритма}
Обучение линейного классификатора заключается в поиске вектора весов $w$, на котором достигается минимум заданного функционала качества. Примеры:
L(a(x))=\frac{1}{l}\sum^l_{i=1}[sign(\langle w,X_i\rangle)*Y_i<0]\to min
\end{gathered}
\end{equation*}
используется в задаче классификации. Величина $M_i=\langle w,X_i\rangle)*Y_i$ называется отступом объекта $X_i$, она равна расстоянию от объекта до разделяющей гиперплоскости $(x,w)=0$
\[ L(a(x))=\frac{1}{l}\sum^l_{i=1}(a(X_i-Y_i))^2\to min \]
используется в задаче регрессии.
\end{enumerate}
\subsection{Верхняя оценка пороговой функции потерь}
Оценим функцию $L(M_i)$ сверху во всех точках $M L (M)=log(1+e^{-M}))$. Кусочно -- линейная функция потерь $\tilde{L}(M)=(1-M)^+=max(0,1-M)$. Экспоненциальная функция потерь $\tilde{L}(M)=EXP(-M)$. Квадратичная функция потерь $\tilde{L}(M)=M^2$.
Особенность оценочных функций в том, что они по значению больше, либо равны исходной пороговой. Следовательно, минимизация приводит к минимизации потерь и для пороговой функции.
\subsection{Задача классификации. Метод логистической регрессии}
Рассматриваем бинарную классификацию $Y={1,-1}$, хотим построить модель, которая выдает не номер класса, а вероятность принадлежности объекта к классу. Бинарная логистическая регрессия предсказывает вероятность того, что модель принадлежит к положительному классу. Будем говорить, что модель корректно предсказывает вероятности, если среди множества объектов, для которых модель предсказала вероятность $p$, доля положительных равна $p$.
$\langle X_i,w\rangle\to\sigma(\langle X_i,w\rangle)=\frac{1}{1+exp(-\langle X_i,w\rangle)}\in[0,1]$, это преобразование сохраняет монотонность: если $z_1\leq z_2\to\sigma(z_1)\leq\sigma(z_2).$Клаccификатор логистической регресии имеет вид:
log-loss $L(Y,z)=[Y=1]\log z+[y=-1]\log(1-z))$. Как изменится штраф? После несложных преобразований получим наш исходный критерий: $\sum^N_{i=1}log(1+exp(-Y_i\langle X_i,w\rangle))\to\underbrace{\min}_w$.
\subsection{Задача классификации. Метод логистической регрессии.}
Рассматриваем бинарную классификацию $Y =\{1, -1\}$, хотим построить модель, которая выдает не номер класса, а вероятность принадлежности объекта к классу. Бинарная логистическая регрессия предсказывает вероятность того, что модель принадлежит к положительному классу.
Будем говорить, что модель корректно предсказывает вероятности, если среди множества объектов, для которых модель предсказала вероятность $p$, доля положительных равна $p$.
Пусть значение целевой переменной $Y\in R$ для входного вектора $X=\left\{X_1,X_2,...,X_n,..\right\}$ определяется значением детерминированной функции $g(X,w)$с аддитивным гауссовым шумом:
Если линейно-зависимые столбцы мы не можем регрессировать. Разность между модельным и реальным называется разностью. Можно построить график разностей. Если они примерно однородны -- это линейные остатки. Если остатки не переходят в другие области такого графика -- это называется гомоскедастичность.
Пусть объект прогнозирования описывается формулой:
\[y_i=\sum^r_{j=1}(w_jx_ij+w_0)+\xi_i,\]
где:
\begin{enumerate}
\item Регрессоры (признаки) $x_{i1},...,x_{ir}$, не являются случайными величинами.
Ошибки некоррелированыи гомоскедастичны. Если величины $\xi_i, i=1, 2, ..., n$,распределены по нормальному закону, то модель называется \textbf{Нормальной регрессионной моделью}.
По результатам наблюдений признаков требуется найти значения $w$, которые лучше всего объясняли бы $y_i$, т.е отклонение $\sum^l_{i=1}(y_i-a(x_i))^2$ было бы минимальными для всех возможных значений $(x_i, y_i), i=1, 2, ..., l$.
оценки $w_j$ полученные методом наименьших квадратов, имеют наименьшую дисперсию в классе всех линейных несмещенных оценок. Формула МНК: $W=(X^TX)^{-1}X^TY$. Сложность обращения матрицы $r^3$. Если столбцы линейно зависимы, то определитель матрицы $X$ равен 0.
\subsection{Регуляризация}
Если матрица $X$ -- вырожденная, то $(X^TX)$ -- не является обратимой, функционал $Q(a,x)=\frac{1}{l}\sum^l_{i=1}(\langle w,x_i\rangle-y_I)^2\to min$ может иметь бесконечное число решений и очень большие веса $w$. Тогда применяют регуляризацию -- минимизируют функционал
Признаки $x_i=\left\{f_{i1},f_{i2},...,f_{ir}\right\}$ объекта $х$ могут иметь различный физический смысл и размерности, поэтому коэффициент $w$, $у$ признака, принимающего большие значения, может принимать маленькие значения, не соответствующие важности признака. Поэтому для повышения способности модели к интерпретации следует выполнять стандартизацию признаков:
\item$\frac{1}{l}\sum^l_{i=1}\log(1+e^{-y_i\langle w,x_i\rangle})\to min$ -- без регуляризации
\item$\frac{1}{l}\sum^l_{i=1}\log(1+e^{-y_i\langle w,x_i\rangle})+C||w||_2\to\underbrace{\min}_{C,w}$ -- с регуляризацией по норме $L_2$
\item$\frac{1}{l}\sum^l_{i=1}\log(1+e^{-y_i\langle w,x_i\rangle})+C||w||_1\to\underbrace{\min}_{C,w}$ -- с регуляризацией по норме $L_1$
\end{itemize}
\subsection{Меры качества прогнозирования }
\begin{enumerate}
\item Средняя квадратичная ошибка $Q(a,x)=MSE=\frac{1}{l}\sum^l_{i=1}(a(x_i)-y_i)^2$
\item Корень из среднеквадратичной ошибки (root mean squared error, RMSE): $RMSE=\sqrt{\frac{1}{l}\sum^l_{i=1}(a(x_i)-y_i)^2}$
\item коэффициент R2 или коэффициент детерминации: $R^2=1-\frac{\sum^l_{i=1}(a(x_i)-y_i)^2}{\sum^l_{i=1}(y_i-\bar{y})^2}$ где $\bar{y}=\sum^l_{i=1}y_i, \sum^l_{i=1}(a(x_i)-y_i)^2$ доля дисперсии объясняемая моделью.
-- дисперсия ошибки, r -- число признаков. Оптимальная модель имеет минимальное значение критерия. Использование информационных критериев для построения модели:
\begin{itemize}
\item Построить все возможные варианты регрессионной модели, удовлетворяющие критериям (см пред лекцию)
\item Наилучшая модель должна иметь минимальные значения критериев Акаикеи Шварца.
\end{itemize}
\subsection{Меры качества прогнозирования}
Скорректированный Коэффициент детерминации $R^2_{adj}=R^2-\frac{r}{l-r}(1-R^2)$. Выбор признаков: если в модель не будет включена переменная, которая должна быть там, то
\begin{enumerate}
\item Уменьшается возможность правильной оценки и интерпретации уравнения
\item Оценки коэффициентов могут оказаться смещенными
\item Стандартные ошибки коэффициентов и соответствующие t-статистики в целом становятся некорректными.
\end{enumerate}
\textbf{Четыре критерия для включения переменной}
\begin{enumerate}
\item Роль переменной в уравнении опирается на прочные теоретические основания
\item Высокие значения t-статистики $t_{stat}=\frac{w-\bar{w}}{\sigma_w\sqrt{l}}$
\item Исправленный коэффициент детерминации растет при включении переменной
\item Другие коэффициенты испытывают значительное смещение при включении новой переменной
$g(X_i,w)=\sum^r_{j=1}(w_jx_{ij}+w_0)\rightarrow Y_i$ , модель прогнозирования, $X_i-r$–мерный вектор. Функция потерь алгоритма: $L(a,y)=(g(X_i,w)-Y_i)^2$. Методы обучения:
числитель -- среднеквадратичная ошибка, знаменатель -- простое среднее. Хорошая модель -- где ошибка классификатора минимальна. В модель нежелательно включать лишние регрессоры (штрафы по критериям Aкаике и Iварца).
Пусть существуют такие параметры $w^*$ и $b^*$, что классификатор $a(X_i,w)=sign(\langle w^*, X_i\rangle+b^*)$ не допускает ни одной ошибки на обучающей выборке, т.е. выборка является линейно разделимой. Тогда строим алгоритм такой, что
где $sign(w, x_i)*y_i$ называется отступом. Положительный знак отступа соответствует правильному ответу, отрицательный -- неправильному, величина отступа -- среднее расстояние от разделяющей гиперплоскости до объектов. Метод обучения -- минимизация эмпирического риска. Функционал
не допускает использование градиентных методов поиска экстремума.
\subsection{Отступ классификатора}
Пусть $(sign\langle\hat{w},X_i \rangle+\hat{b})$ -- построенный линейный классификатор. Тогда расстояние от любой точки $X_i\in{X_t,Y_t},t=1,2,...,N$ обучающей выборки до гиперплоскости, определяемой уравнением,$\hat{w}X+\hat{b}=0$ равно:
Тогда расстояние от гиперплоскости до ближайшего объекта обучающей выборки равно $\underbrace{\min}_{i=1,2,...,N}\frac{w^*X_i+b^*}{||w*||}=\frac{1}{||w^*||}$, т.е. ширина разделяющей полосы (отступ классификатора) равна $\frac{2}{||w^*||}$
Первое условие означает отсутствие ошибок классификации для линейно разделимой выборки.
\textbf{Неразделимый случай.} Если в выборке есть $X_i$, такие что при любых $w^*$ и $b^*$, не существует решения задачи, то для них рассматриваются ограничения
\[y_i(\langle w^*,X_i\rangle+b^*)\geq1-\xi_i\]
где $\xi_i>0$ -- штраф за нарушение ограничений. Если отступ объекта лежит между 0 и 1, то объект верно классифицируется, но штрафуется за попадание внутрь разделяющей полосы.
\subsection{Метод опорных векторов для линейно неразделимой выборки}
Отступ $М$ по определению равен $M=y_i(\langle\hat{w},X_i \rangle+\hat{b})$, тогда $\max(0,1-(\langle\hat{w},X_i \rangle+\hat{b}))=\max(0,1-M)$. И задача безусловной оптимизации имеет вид
\subsection{Сравнение логистической регрессии и SVM}
Логистическая регрессия требует, чтобы отступ уходил в $+\infty$ на каждом объекте -- важно для формирования корректных вероятностей, SVM достаточно отступа равного 1.
Решатели «newton-cg», «sag» и «lbfgs» поддерживают только регуляризацию L2. По умолчанию классификатор содержит константу. \code{Liblinear} для небольших размерностей данных, \code{sag} -- для больших. С -- гиперпараметр, не может определяться по обучающей выборке.
\code{class_weight}: \code{dict} or \code{‘balanced’} (default=\code{None}) -- веса классов по умолчанию -1, \code{’balanced’} -- веса устанавливаются обратно пропорционально частотам класса во входных данных.
\code{max_iter}: int(default=100) -- используется только для \code{newton-cg}, \code{sag} и \code{lbfgs}.
\subsection{Оценка качества решения задачи. Режимы тестирования}
\begin{itemize}
\item\textbf{Отложенная выборка:} выделение обучающей, валидационной, и тестовой выборок, оценка качества работы алгоритма на обеих выборках.
\item\textbf{Полная кросс-валидация}. Выбирается значение $t$, затем выборка разбивается всеми возможными способами на две части: $T^l=T^t\cup T_{l-t}$, вычисляется средняя оценка качества по всем разбиениям.
\item\textbf{K-fold кросс-валидация}. Обучающая выборка разбивается на $k$ непересекающихся одинаковых по объему частей. Выполняется $k$ итераций. На каждой итерации из выборки удаляется одна из частей и модель обучается по оставшимся частям выборки. Модель тестируется на части обучающей выборки, которая не участвовала в обучении. Вычисляется средняя оценка качества по всем разбиениям
В таблице показаны прогнозы, сделанные по двум регрессионным моделям. Для каждой модели рассчитайте сумму квадратов ошибки и оцените качество моделей.
\begin{table}[H]
\centering
\begin{tabular}{||r|c|c||}
\hline
f1 & f2 & fact \\ [0.5ex]
\hline\hline
2.623 & 2.664 & 2.691 \\
2.423 & 2.436 & 2.367 \\
2.423 & 2.399 & 2.412 \\
2.448 & 2.447 & 2.440 \\
2.762 & 2.847 & 2.693 \\
2.435 & 2.411 & 2.493 \\
2.519 & 2.516 & 2.598 \\
2.772 & 2.870 & 2.814 \\
2.601 & 2.586 & 2.583 \\
2.422 & 2.414 & 2.485 \\
\hline
\end{tabular}
\end{table}
\[MSE_1=\frac{1}{N}\sum_{i=1}^N(f_i-f1_i)^2\]
\section{Решающие деревья, случайный лес}
Дерево -- это ациклический граф.
Решающие деревья -- это инструмент построения логических алгоритмов для решения задач классификации и регрессии. В отличие от линейных алгоритмов позволяет восстанавливать нелинейные зависимости произвольной сложности.
Алгоритм обучения, на вход которого поступает обучающая выборка $(X, Y)=(x_i,y_i)_{i=1}-1^l$, строит решающее дерево, которое представляет собой связный ациклический граф, включающий:
\begin{itemize}
\item набор вершин двух типов вершин: внутренних и листовых;
\item набор правил перехода из внутренних вершин в листовые и внутренние;
\item набор правил останова- прекращения обучения.
\end{itemize}
После окончания процесса обучения для каждого объекта $x \in(X,Y)$ определяется класс или вектор степени уверенности алгоритма в выборе каждого класса в случае решения задачи классификации;
\subsection{Параметры алгоритма обучения}
квадратные скобки -- это предикаты -- если да, идём налево в дереве, если нет -- направо.
\subsection{Энтропия}
Энтропия -- это уровень неопределённости относительно реализации случайной величины $H =-\sum_{i=1}^k p_i \log_2p_i$.
\subsection{Критерии качества разбиения}
\textbf{IG -- information gain}
Вместо IG можно рассматривать взвешенный энтропийный критерий, Критерий джини, критерий в задачах в регрессии.
\subsection{Листовые вершины}
В каждой листовой вершине дерево будет выдавать константу или вектор вероятностей.
Конкретный метод построения решающего дерева определяется
\begin{enumerate}
\item Видом предикатов в вершинах
\item функционалом качества
\item Критерием останова
\item Методом обработки пропущенных значений
\item Методом стрижки удаление некоторых вершин с целью понижения сложности и способности к переобучения
\end{enumerate}
Обработка пропусков. Задачи регрессии и бинарной классификации.
\textbf{Регрессия:} Заменяем пропущенные значения средними, спрогнозированными другими признаками. \textbf{Решающие деревья.} При построении: выбираем предикат в вершине, отправляем объекты с пропусками в оба поддерева. \textbf{Суррогатные предикаты}.
\subsection{Преимущества и ограничения}
\subsection{Ансамбль алгоритмов}
Если ответы регрессоров на объекте -- независимые случайные величины с одинаковым матожиданием и дисперсией, то выполняются следующие свойства:
Пусть имеется 3 независимых классификатора с вероятностью ошибки $p$ и решение принимается голосованием по большинству. Какова вероятность ошибки трёх классификаторов?