Гребневая регрессия (Ridge regression)

## Постановка задачи

Решается задача регрессии. Применяется линейная модель (вообще говоря, один из признаков полагается константным для того, чтобы аппроксимирующая гиперплоскость не обязательно проходила через нуль, я не знаю, почему это практически всюду опускается):

f
(
x
,
β
# )
⟨
β
,
x
⟩

{\displaystyle f(x, \beta) = \langle\beta, x\rangle }

. В изначальной постановке полагается, что вектор

β

{\displaystyle \beta}

 находится методом Обычных Наименьших Квадратов (ОНК):

∑

# n
1

N

(
f
(

x
n

,
β
)
−

y
n

)
2

⟶

min

β

{\displaystyle \sum\_{n = 1}^{N} (f(x\_n, \beta) - y\_n)^2 \longrightarrow \min\_{\displaystyle \beta} }

Аналитическое решение данной задачи:

β

∗

=
(

X
T

X

)

−
1

X
T

Y

{\displaystyle \beta^{\*} = (X^TX)^{-1}X^TY }

, однако при вырожденности матрицы

X
T

X

{\displaystyle X^TX}

 решение оказывается не единственным, а при ее плохой обусловленности — неустойчивым. Поэтому целесообразно ввести регуляризацию по параметру

β

{\displaystyle \beta}

, например,

L
2

{\displaystyle L\_2}

.

Таким образом, приходим к следующей задаче минимизации (**гребневая (ridge) регрессия**):

Q
(
β
# )

‖

Y
−
X
β

‖

2

λ

‖
β
‖

2

⟶

min

β

где

‖
β
‖

2

=

∑

# i
1

D

β
i

2

,

{\displaystyle \left \|\beta \right \|^2 =\sum^{D}\_{i=1} {\beta\_i}^2, }

λ

{\displaystyle \lambda}

 — параметр регуляризации(неотрицательное число).

## Вывод оптимальных весов

Для нахождения оптимальных весов продифференцируем функционал по

β

{\displaystyle \beta}

 и приравняем к 0:

∂
Q

∂
β

=
2

X

T

(
X
β
−
Y
)
2
λ
# β
0

{\displaystyle \frac{\partial Q}{\partial \beta} = 2X^{T}(X\beta - Y) + 2\lambda\beta = 0 }

(

X

T

X
λ
I
)
# β

X

T

Y

{\displaystyle (X^{T}X + \lambda I)\beta = X^{T}Y }

β

∗

=
(

X

T

X
λ
I

)

−
1

X

T

Y

{\displaystyle \beta^{\*} =(X^{T}X + \lambda I)^{-1} X^{T}Y }

При увеличении параметра

λ

{\displaystyle \lambda}

 решение становится более устойчивым, но с другой стороны — смещенным. При уменьшении — приходим к задаче ОНК без регуляризации: имеем шанс переобучиться. Поэтому нужно искать что-то посерединке.

## Обобщение через ядра

Решение прямой (см. выше) задачи, как уже было получено:

β

∗

=
(

X

T

X
λ
I

)

−
1

X

T

Y

{\displaystyle \beta^{\*} =(X^{T}X + \lambda I)^{-1} X^{T}Y }

. Заметим, что в силу неотрицательной определенности матрицы

X
T

X

{\displaystyle X^TX}

 матрица

X

T

X
λ
I

{\displaystyle X^{T}X + \lambda I }

 вообще положительно определена, поэтому прямое решение всегда существует и единственно. Сложность обучения:

O
(

D
2

(
N
D
)
)

{\displaystyle O(D^2(N+D))}

, сложность предсказания:

O
(
D
)

{\displaystyle O(D)}

.

Введем двойственные переменные. Для этого решим двойственную задачу, где решение прямой задачи будет представлено в виде некоторой линейной комбинации векторов обучающей выборки. Из условий стационарности

X
T

(
X
β
−
Y
)
λ
# β
0

{\displaystyle X^T(X\beta - Y) + \lambda \beta = 0}

 следует

# β

1
λ

X
T

(
Y
−
X
β
# )

X
T

α

{\displaystyle \beta = \frac{1}{\lambda}X^T(Y - X\beta) = X^T\alpha}

, где вектор

# α

1
λ

(
Y
−
X
β
)

{\displaystyle \alpha = \frac{1}{\lambda}(Y - X\beta)}

 — вектор двойственных переменных. Формула для предсказания:

y
^

(
x
# )

x
T

# β

x
T

X
T

# i
1

N

α
i

⟨
x
,

x
i

⟩

{\displaystyle \hat{y}(x) = x^T\beta = x^TX^T\alpha = \sum\_{i=1}^N \alpha\_i \langle x, x\_i\rangle}

. Найти двойственные переменные можно следующим образом:

# α
(
X

X
T

λ
I

)

−
1

Y

{\displaystyle \alpha = (XX^T + \lambda I)^{-1}Y}

 . Это прямо следует из

# α

1
λ

(
Y
−
X
β
)

{\displaystyle \alpha = \frac{1}{\lambda}(Y - X\beta)}

 при подстановке

# β

X
T

α

{\displaystyle \beta = X^T\alpha}

. Сложность обучения:

O
(

N
2

(
D
N
)
)

{\displaystyle O(N^2(D+N))}

, сложность предсказания:

O
(
N
D
)

{\displaystyle O(ND)}

.

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

⟨
x
,

x
′

⟩

{\displaystyle \langle x, x' \rangle}

 везде выше на ядерную функцию

K
(
x
,

x
′

)

{\displaystyle K(x, x')}

, получив следующие формулы:

# α
(
G
λ
I

)

−
1

Y

{\displaystyle \alpha = (G + \lambda I)^{-1}Y}

, где

{
G

}

i
,
j

=
K
(

x
i

,

x
j

)

{\displaystyle \{G\}\_{i,j} = K(x\_i, x\_j)}

 — матрица Грама,

y
^

(
x

# i
1

N

α
i

K
(
x
,

x
i

)

{\displaystyle \hat{y}(x) = \sum\_{i=1}^N \alpha\_i K(x, x\_i)}

 . Таким образом, решая задачу линейной регрессии можно получать нелинейные решения.