OWL-QN: Scalable Training of L1-Regularized Log-Linear Models
Table of Contents

关于

论文导读:Scalable Training of L1-Regularized Log-Linear Models, Galen Andrew, Jianfeng Gao Microsoft Research, 2007.

问题

优化问题:

$$
f (x) = l(x) + r(x) \\
r(x) = \sum |x_i|
$$

l1 范数优化,在0处不可导。

记号

左右偏导

$$
\partial_i^+ f(x) = \lim_{\alpha \rightarrow 0^+} \frac{f(x + \alpha e_i) - f(x)}{\alpha}
$$

$$
\pi_i(x; y) = \begin{cases}
x_i & if \sigma(x_i) = \sigma(y_i) \\
0 & \text{otherwise}
\end{cases}
$$

OWL-QN 算法

在一个象限中,二阶近似是成立的,且二阶梯度矩阵与正则项无关。

对任意符号向量 $(\xi \in \{-1, 0, 1 \}^n)$,定义

$$
\Omega_{\xi} = \{ x \in R^n | \pi(x, \xi) = x \}
$$

在象限$(\Omega_{\xi})$中,目标函数可以写为

$$
f(x) = l(x) + C \xi^T x.
$$

将这个函数扩展到整个空间得到扩展函数$(f_{\xi})$,对于这个函数,可以用拟牛顿法求解。

伪梯度:其实就是将某个方向不可微点的梯度在该方向的分量置为搜索方向的方向梯度;或置0(xi=0点),或正梯度或负梯度.

$$
\Diamond_i f(x) = \begin{cases}
\partial_i^+ f(x) & \partial_i^+ f(x) < 0 \\
\partial_i^- f(x) & \partial_i^- f(x) >0 \\
0 & \text{otherwise}
\end{cases}
$$

与正常L-BFGS算法的改动地方。

约束线性搜索:在非0值,约束在原来的象限和0值搜索;在0值约束在负梯度方向!

$$
\xi_i = \begin{cases}
\sigma(x_i^k) & x_i^k \neq 0 \\
\sigma(- \Diamond_i f(x^k)) & x_i^k =0
\end{cases} \\
p^k = \pi(d^k; \xi_k) \\
x^{k+1} = \pi(x^k + \alpha p^k; x^k) \\
$$