Перейти к основному содержимому

Ядерное обобщение метода опорных векторов

Для метода опорных векторов, как и для гребневой регрессии, существует ядерное обобщение, которое работает по следующему правилу:

  1. Найти оптимальные двойственные переменные α1,...αN\alpha_1^*,...\alpha_N^* из решения двойственной оптимизационной задачи
{12i,jαiαjyiyjk(xi,xj)+n=1Nαnminαn=1Nαiyi=0,0αiC,i=1,2,...N\begin{cases} -\frac{1}{2}\sum\sum_{i,j}\alpha_{i}\alpha_{j}y_{i}y_{j}k(\mathbf{x}_{i},\mathbf{x}_{j})+\sum_{n=1}^{N}\alpha_{n} \to \min_{\boldsymbol{\alpha}} \\ \sum_{n=1}^{N}\alpha_{i}y_{i}=0, \\ 0 \le \alpha_i \le C, \quad i=1,2,...N \end{cases}
  1. Вычислить w0w_0^* по объектам xj\mathbf{x}_{j}, для которых yi(iSVαiyik(xi,xj)+w0)=1y_{i}(\sum_{i\in SV}\alpha_{i}^{*}y_{i}k(\mathbf{x}_{i},\mathbf{x}_{j})+w_{0}^*)=1

  2. Для новых объектов строить прогноз по правилу

y^(x)=sign(iSVαiyik(xi,x)+w0)\widehat{y}\left(\mathbf{x}\right)=\text{sign}\left(\sum_{i\in SV}\alpha_{i}^{*}y_{i}k(\mathbf{x}_{i},\mathbf{x})+w_{0}\right)

где SV={i:αi>0}SV=\{i:\alpha_i^*>0 \}.

Доказательство для любознательных

Ранее мы получили, что для бинарной классификации y{+1,1}y\in\{+1,-1\} прогноз в методе опорных векторов строится по правилу

y^(x)=sign(wTx+w0),\widehat{y}\left(\mathbf{x}\right)=\text{sign}\left(\mathbf{w}^{T}\mathbf{x}+w_{0}\right),

где веса w,w0\mathbf{w},w_0 находятся из решения оптимизационной задачи:

{12wTw+Cn=1Nξnminw,w0,ξyi(wTxi+w0)1ξii=1,2,...Nξi0i=1,2,...N\begin{cases} \frac{1}{2}\mathbf{w}^{T}\mathbf{w}+C\sum_{n=1}^{N}\xi_{n}\to\min_{\mathbf{w},w_{0},\bm{\xi}}\\ y_{i}(\mathbf{w}^{T}\mathbf{x}_{i}+w_{0})\ge1-\xi_{i} & i=1,2,...N\\ \xi_{i}\ge 0 & i=1,2,...N \end{cases}

Для обобщения метода через ядра будем решать эту задачу, используя необходимые условия оптимальности Каруша-Куна-Таккера [1], которые также становятся достаточными, поскольку минимизируется выпуклая функция при выпуклых ограничениях [2].

Для этого запишем лагранжиан с двойственными переменными αi,βi\alpha_i,\beta_i для i=1,2,...Ni=1,2,...N:

L=12wTw+Ci=1Nξii=1Nαi[yi(wTxi+w0)1+ξi]i=1NβiξiL=\frac{1}{2}\mathbf{w}^{T}\mathbf{w}+C\sum_{i=1}^{N}\xi_{i}-\sum_{i=1}^{N}\alpha_{i}[y_{i}(\mathbf{w}^{T}\mathbf{x}_{i}+w_{0})-1+\xi_{i}]-\sum_{i=1}^{N}\beta_{i}\xi_{i}

Согласно условиям Каруша-Куна-Таккера, в оптимуме выполняются следующие условия:

  1. Стационарность:

    Lw=0\frac{\partial L}{\partial\mathbf{w}}=\mathbf{0} Lw0=0\frac{\partial L}{\partial w_{0}}=0
  2. Допустимость:

    yi(wTxi+w0)1ξi,i=1,2,...Ny_{i}(\mathbf{w}^{T}\mathbf{x}_{i}+w_{0})\ge1-\xi_{i}, \quad i=1,2,...N ξi0,i=1,2,...N\xi_{i}\ge 0, \quad i=1,2,...N
  3. Дополняющая нежёсткость:

    αi[yi(wTxi+w0)1+ξi]=0\alpha_{i}[y_{i}(\mathbf{w}^{T}\mathbf{x}_{i}+w_{0})-1+\xi_{i}]=0 βiξi=0\beta_{i}\xi_{i}=0 i=1,2,...N.i=1,2,...N.
  4. Неотрицательность:

    αi0,βi0,\alpha_i\ge 0,\beta_i\ge 0, i=1,2,...N.i=1,2,...N.
Неинформативные и опорные вектора

Вспомним, что мы называли неинформативными векторами те объекты, для которых выполняется условие

yi(wTxi+w0)>1y_i(\mathbf{w}^{T}\mathbf{x}_{i}+w_{0})>1

Эти объекты лежат в глубине своих классов и не оказывают влияния на решение. Из условия дополняющей нежёсткости для таких векторов αi=0\alpha_i=0. Опорными векторами назывались объекты xi\mathbf{x}_{i}, для которых выполнялось условие

yi(wTxi+w0)1y_i(\mathbf{w}^{T}\mathbf{x}_{i}+w_{0})\le 1

Индексы объектов с αi>0\alpha_i>0 обозначим SVSV. В общем случае оно будет совпадать с множеством опорных векторов.

Перепишем лагранжиан в эквивалентном виде:

L=12wTw+i=1Nξn(Cαiβi)w0i=1NαiyiwTi=1Nαiyixi+i=1NαiL=\frac{1}{2}\mathbf{w}^{T}\mathbf{w}+\sum_{i=1}^{N}\xi_{n}\left(C-\alpha_{i}-\beta_{i}\right)-w_{0}\sum_{i=1}^{N}\alpha_{i}y_{i}-\mathbf{w}^{T}\sum_{i=1}^{N}\alpha_{i}y_{i}\mathbf{x}_{i}+\sum_{i=1}^{N}\alpha_{i}

Из условий стационарности получаем:

Lw=wi=1Nαiyixi=0\frac{\partial L}{\partial\mathbf{w}}=\mathbf{w}-\sum_{i=1}^{N}\alpha_{i}y_{i}\mathbf{x}_{i}=\mathbf{0}Lw0=n=1Nαiyi=0\frac{\partial L}{\partial w_{0}}=-\sum_{n=1}^{N}\alpha_{i}y_{i}=0Lξi=Cαiβi=0\frac{\partial L}{\partial\xi_{i}}=C-\alpha_{i}-\beta_{i}=0

Из последнего условия и условий неотрицательности следует, что αi[0,C]\alpha_i\in[0,C] для i=1,2,...Ni=1,2,...N.

Подставляя условия стационарности в лагранжиан, получаем, что

L=12wTw+i=1Nξi(Cαiβi)w0i=1NαiyiwTi=1Nαiyixi+i=1Nαi=12(i=1Nαiyixi)T(j=1Nαjyjxj)(i=1Nαiyixi)T(j=1Nαjyjxj)+i=1Nαi=12i,jαiαjyiyjxiTxji,jαiαjyiyjxiTxj+n=1Nαn=12i,jαiαjyiyjxiTxj+n=1Nαn\begin{aligned} L &= \frac{1}{2}\mathbf{w}^{T}\mathbf{w}+\sum_{i=1}^{N}\xi_{i}\xcancel{\left(C-\alpha_{i}-\beta_{i}\right)}-w_{0}\xcancel{\sum_{i=1}^{N}\alpha_{i}y_{i}}-\mathbf{w}^{T}\sum_{i=1}^{N}\alpha_{i}y_{i}\mathbf{x}_{i}+\sum_{i=1}^{N}\alpha_{i} \\ &= \frac{1}{2}\left(\sum_{i=1}^{N}\alpha_{i}y_{i}\mathbf{x}_{i}\right)^{T}\left(\sum_{j=1}^{N}\alpha_{j}y_{j}\mathbf{x}_{j}\right)-\left(\sum_{i=1}^{N}\alpha_{i}y_{i}\mathbf{x}_{i}\right)^{T}\left(\sum_{j=1}^{N}\alpha_{j}y_{j}\mathbf{x}_{j}\right)+\sum_{i=1}^{N}\alpha_{i} \\ &= \frac{1}{2}\sum_{i,j}\alpha_{i}\alpha_{j}y_{i}y_{j}\mathbf{x}_{i}^{T}\mathbf{x}_{j}-\sum_{i,j}\alpha_{i}\alpha_{j}y_{i}y_{j}\mathbf{x}_{i}^{T}\mathbf{x}_{j}+\sum_{n=1}^{N}\alpha_{n} \\ &= -\frac{1}{2}\sum\sum_{i,j}\alpha_{i}\alpha_{j}y_{i}y_{j}\mathbf{x}_{i}^{T}\mathbf{x}_{j}+\sum_{n=1}^{N}\alpha_{n} \end{aligned}

Для исходной оптимизационной задачи выполняются условия Слейтера [2], состоящие в том, что существуют такой набор (x,ξ)(\mathbf{x},\boldsymbol{\xi}), при котором все ограничения на неравенства становятся строгими неравенствами. Действительно, совмещения условий

{yi(wTxi+w0)>1ξii=1,2,...Nξi>0i=1,2,...N\begin{cases} y_{i}(\mathbf{w}^{T}\mathbf{x}_{i}+w_{0})> 1-\xi_{i} & i=1,2,...N\\ \xi_{i} > 0 & i=1,2,...N \end{cases}

легко достичь, рассмотрев достаточно большие ξi,i=1,2,...N\xi_i, i=1,2,...N. При выполнении этих условий в задачах выпуклой оптимизации по теореме Слейтера [2] оптимальный набор α1,...αN\alpha_1,...\alpha_N можно найти из решения двойственной задачи:

{12i,jαiαjyiyjxiTxj+n=1Nαnminαn=1Nαiyi=0,0αiC,i=1,2,...N\begin{cases} -\frac{1}{2}\sum\sum_{i,j}\alpha_{i}\alpha_{j}y_{i}y_{j}\mathbf{x}_{i}^{T}\mathbf{x}_{j}+\sum_{n=1}^{N}\alpha_{n} \to \min_{\boldsymbol{\alpha}} \\ \sum_{n=1}^{N}\alpha_{i}y_{i}=0, \\ 0 \le \alpha_i \le C, \quad i=1,2,...N \end{cases}

Ограничение-равенство здесь возникает из условий стационарности Каруша-Куна-Таккера, а ограничение-неравенство возникает также из условий стационарности и условий неотрицательности двойственных переменных αi\alpha_i и βi\beta_i.

Найдя оптимальные αi\alpha_i^* из двойственной задачи, мы можем найти оптимальный вектор весов:

w=i=1Nαiyixi=iSVαiyixi,\mathbf{w}^*=\sum_{i=1}^{N}\alpha_{i}^*y_{i}\mathbf{x}_{i} = \sum_{i\in SV}\alpha_{i}^*y_{i}\mathbf{x}_{i},

где SVSV - множество опорных векторов.

Заметим, что для таких векторов из условия стационарности

Для объектов с индексами ii, у которых 0<αi<C0<\alpha_i^*<C из условий стационарности получаем, что βi>0\beta_i^*>0, а из условий дополняющей нежёсткости

βiξi=0αi[yi((w)Txi+w0)1+ξi]=0\begin{aligned} \beta_{i}^*\xi_{i}^*=0 \\ \alpha^*_{i}[y_{i}((\mathbf{w^*})^{T}\mathbf{x}_{i}+w_{0}^*)-1+\xi_{i}^*]=0 \end{aligned}

следует, что

ξi=0yi((w)Txi+w0)1=0\begin{aligned} \xi_i^*=0 \\ y_{i}((\mathbf{w^*})^{T}\mathbf{x}_{i}+w_{0}^*)-1 = 0 \end{aligned}

Из последнего условия можно найти оптимальное значение для w0w_0^*. Из соображений численной устойчивости w0w_0^* находят не по одному ii, а из усреднённого значения последнего равенства для всех ii, у которых 0<αi<C0<\alpha_i^*<C.

Частный случай

В частном случае ни одного ii, для которого 0<αi<C0 < \alpha_i^* < C может не оказаться. В этом случае оптимальное смещение w0w_0^* находят через следующим образом:

  1. Вычисляют рейтинги объектов:
rj=(w)xj=i=1NαiyixiTxjr_j = (\mathbf{w}^*)^\top \mathbf{x}_j=\sum_{i=1}^{N}\alpha_{i}^*y_{i}\mathbf{x}_{i}^T\mathbf{x}_j
  1. Определяют «наихудший» отрицательный и «наилучший» положительный рейтинг:
a=maxi:yi=1ri,b=mini:yi=+1ria = \max_{i: y_i = -1} r_i, \quad b = \min_{i: y_i = +1} r_i
  1. Смещение устанавливают посередине:
w0=a+b2w_0^* = -\,\frac{a+b}{2}

Как видим, лишь опорные объекты оказывают влияние на оптимальные w\mathbf{w}^* и w0w_0^*, а неинформативные - не оказывают.

Прогноз будет строиться по правилу

y^(x)=sign(wTx+w0)=sign(iSVαiyixiTx+w0)\widehat{y}\left(\mathbf{x}\right)=\text{sign}\left(\mathbf{w}^{T}\mathbf{x}+w_{0}\right)=\text{sign}\left(\sum_{i\in SV}\alpha_{i}^{*}y_{i}\mathbf{x}_{i}^{T}\mathbf{x}+w_{0}\right)

Мы описали, как каждый шаг настройки и применения метода опорных векторов можно реализовать, используя только скалярные произведения между объектами, а не напрямую их признаковые описания.

Это позволяет применить обобщение метода через ядра, перейдя от скалярных произведений в исходном пространстве x\mathbf{x} к функциям ядра, являющихся скалярными произведениями в новом (спрямляющем) признаковом пространстве ϕ(x)\phi(\mathbf{x}):

xTx=<x,x>k(x,x)=<ϕ(x),ϕ(x)>\mathbf{x}^{T}\mathbf{x}'=\left<\mathbf{x},\mathbf{x}'\right>\to k(\mathbf{x},\mathbf{x}')=\left<\phi\left(\mathbf{x}\right),\phi\left(\mathbf{x}'\right)\right>

Для этого нужно

  1. Найти оптимальные двойственные переменные α1,...αN\alpha_1,...\alpha_N из двойственной оптимизационной задачи
{12i,jαiαjyiyjk(xi,xj)+n=1Nαnminαn=1Nαiyi=0,0αiC,i=1,2,...N\begin{cases} -\frac{1}{2}\sum\sum_{i,j}\alpha_{i}\alpha_{j}y_{i}y_{j}k(\mathbf{x}_{i},\mathbf{x}_{j})+\sum_{n=1}^{N}\alpha_{n} \to \min_{\boldsymbol{\alpha}} \\ \sum_{n=1}^{N}\alpha_{i}y_{i}=0, \\ 0 \le \alpha_i \le C, \quad i=1,2,...N \end{cases}
  1. Вычислить w0w_0^* по объектам xj\mathbf{x}_{j}, для которых yi(iSVαiyik(xi,xj)+w0)=1y_{i}(\sum_{i\in SV}\alpha_{i}^{*}y_{i}k(\mathbf{x}_{i},\mathbf{x}_{j})+w_{0}^*)=1

  2. Для новых объектов строить прогноз по правилу

y^(x)=sign(iSVαiyik(xi,x)+w0)\widehat{y}\left(\mathbf{x}\right)=\text{sign}\left(\sum_{i\in SV}\alpha_{i}^{*}y_{i}k(\mathbf{x}_{i},\mathbf{x})+w_{0}\right)

Из функциональной формы прогноза видно, что

  • при линейном ядре получим линейный метод классификации;

  • при полиномиальном ядре метод будет строить полиномиальную поверхность, разделяющую классы;

  • при RBF-ядре метод будет работать как метрическим метод, поскольку его прогнозы будут определяться близостью x\mathbf{x} до опорных векторов.

Литература

  1. Википедия: условия Каруша-Куна-Таккера.
  2. Выпуклая оптимизация: учебное пособие / Воронцова Е. А., Хильдебранд Р. Ф., Гасников А. В., Стонякин Ф. С. — Москва: МФТИ, 2021. — 364 с. — ISBN 978-5-7417-0776-0.