subgradients

目录

  • 定义

    • 上镜图解释
  • 次梯度的存在性
  • 性质
    • 极值
    • 非负数乘 \(\alpha f(x)\)
    • 和,积分,期望
    • 仿射变换
    • 仿梯度
    • 混合函数
  • 应用
    • Pointwise maximum
    • 上确界 supremum
    • Minimization over some variables
    • 拟凸函数

《Subgradients》
Subderivate-wiki
Subgradient method-wiki
《Subgradient method》
Subgradient-Prof.S.Boyd,EE364b,StanfordUniversity
《Characterization of the Subdifferential of Some Matrix Norms 》

定义

我们称\(g \in \mathbb{R}^n\)是\(f:\mathbb{R}^{n} \rightarrow \mathbb{R}\)在\(x\in domf\)的次梯度,如果对于任意的\(z \in domf\),满足:
\[
f(z) \ge f(x) + g^T(z-x)
\]
如果\(f\)是可微凸函数,那么\(g\)就是\(f\)在\(x\)处的梯度。我们将\(z\)看成变量,那么仿射函数\(f(x)+g^T(z-x)\)是\(f(z)\)的一个全局下估计。这个次梯度的作用,就是在处理不可微函数的时候,提供一个替代梯度的工具,而且,根据定义,沿着次梯度方向,函数的值是非降的:
\[
f(\alpha g+x) \ge f(x) + \alpha g^Tg
\]
另外,如果极限存在,有下面的性质,这联系了方向导数和次梯度:
\[
\lim \limits_{z \rightarrow x^+} \frac{f(z)-f(x)}{\|z-x\|} \ge g^T(z-x)/\|z-x\|
\]
当然,还有从左往右的来的,这里就不讲了。

下图是一个例子,我们可以看到,在存在梯度的地方,次梯度就是梯度,在不可导的地方,次梯度是一个凸集。

次梯度总是闭凸集,即便\(f\)不是凸函数,有下面的性质:
\[
\partial f(x) = \bigcap \limits_{z \in domf} \{ g| f(z) \ge f(x) + g^T (z-x) \}
\]

下面是\(f(x) = |x|\)的例子:

上镜图解释

\(g\)是次梯度,当且仅当\((g, -1)\)是\(f\)的上镜图在\((x, f(x))\)处的一个支撑超平面。

函数\(f\)的上镜图定义为:
\[
\mathbf{epi} f = \{ (x, t) | x \in \mathbf{dom} f, f(x) \le t\}
\]

一个函数是凸函数,当且仅当其上镜图是凸集。

我们来证明一开始的结论,即\(g\)是次梯度,当且仅当\((g, -1)\)是\(f\)的上镜图在\((x, f(x))\)处的一个支撑超平面。
首先,若\((g, -1)\)是\(f\)的上镜图在\((x, f(x))\)处的一个支撑超平面,则:
\[
g^T(x-x_0)-(t-f(x_0)) \le 0 \\Rightarrow t \ge f(x_0)+g^T(x-x_0)
\]
对所有\((x, t) \in \mathbf{epi} f\)成立,令\(t=f(x)\),结果便得到。
反过来,如果\(g\)是次梯度,那么:
\[
f(z) \ge f(x) + g^T(z-x) \\Rightarrow f(z)-f(x) \ge g^T(z-x)
\]
又\(t \ge f(z), (z, t) \in \mathbf{epi} f\),所以:
\[
t - f(x)\ge f(z)-f(x) \ge g^T(z-x)
\]
所以,\((g,-1)\)在\((x, f(x))\)处定义了一个超平面。

次梯度的存在性

如果\(f\)是凸函数,且\(x \in \mathbf{int} \mathbf{dom} f\),那么\(\partial f(x)\)非空且闭。根据支撑超平面定理,我们知道,在\((x, f(x))\)处存在关于\(\mathbf{epi} f\)的一个超平面,设\(a \in \mathbb{R}^n, b \in \mathbb{R}\),则对于任意的\((z, t)\in \mathbf{epi} f\)都有:

显然,\((x, f(x)+\epsilon)\)也符合条件,这意味着\(b\le0\),以及:
\[
a^T(z-x)+b(f(z) - f(x)) \le 0
\]
对所有\(z\)成立。
如果\(b=0\),那么\(a=0\),不构成超平面,即\(b < 0\)。
于是:
\[
f(z) \ge f(x) +-a^T/b(z-x)
\]
即\(-a/b \in \partial f(x)\)

性质

极值

\(x^*\)是凸函数\(f(x)\)的最小值,当且仅当\(f\)在\(x^*\)处存在次梯度且
\[
0 \in \partial f(x^*)
\]
\(f(x) \ge f(x^*) \Rightarrow 0 \in \partial f(x^*)\)

非负数乘 \(\alpha f(x)\)

\(\partial(\alpha f) = \alpha \partial f, \alpha \ge 0\)

和,积分,期望

\(f = f_1+f_2\ldots+f_n\),\(f_i,i=1,2,\ldots,m\)均为凸函数,那么:
\[
\partial f=\partial f_1 +\partial f_2 + \ldots +\partial f_n
\]
\(F(x)= \int_Y f(x,y) dy\), 固定\(y\), \(f(x,y)\)为凸函数,那么:
\[
\partial F(x)=\int_Y \partial_x f(x,y) dy
\]
\[
f(z,y) \ge f(x,y)+g^T(y)(z-x) \\Rightarrow \int_Yf(z,y)dy \ge \int_Yf(x,y)dy+\int_Yg^T(y)dy(z-x)
\]
不过需要注意的一点是,这里的等号都是对于特定的次梯度,我总感觉\(f\)的次梯度的集合不止于此,或许会稍微大一点?就是对于和来讲,下面这个式子成立吗?:
\[
\partial f=\{ g_1+g_2+\ldots + g_n| g_1\in \partial f_1, \ldots, g_n\in \partial f_n\}
\]
至少凸函数没问题吧,凸函数一定是连续函数,且左右导数存在,那么\(g\)的范围都是固定的。

仿射变换

\(f(x)\)是凸函数,令\(h(x)=f(Ax+b)\)则:
\[
f(Az+b) \ge f(Ax+b)+g^T(Az+b-Ax-b) \\Rightarrow h(z) \ge h(x)+ (A^Tg)^T(z-x) \\Rightarrow \partial h(x)=A^T\partial f(Ax+b)
\]

仿梯度

我们知道梯度有下面这些性质:
\[
\nabla c = 0\\nabla (\varphi \pm \psi) = \nabla \varphi \pm \nabla \psi \\nabla(c\varphi) = c \nabla \varphi \\nabla (\frac{\varphi}{\psi})= \frac{\psi \nabla \varphi - \varphi \nabla \psi}{\psi^2} \\nabla f(\varphi) = f'(\varphi) \nabla \varphi \\]

我认为(注意是我认为!!!大概是是异想天开。)\(f\)为凸函数的时候,或者\(f\)为可微(这个时候是一定的)的时候,上面的性质也是存在的。当然,这只是针对某些次梯度。因为当\(f\)为凸函数的时候,\(f\)的左右导数都存在,那么:
\[
k_+:=\lim \limits_{t \rightarrow 0^+} \frac{f(x+te_k)-f(x)}{t}
\]
那么(凸函数的性质)
\[
f(x+te_k)-f(x) \ge tk_+=(k_+e_k)^T(te_k), t>0
\]
同理:
\[
k_-:=\lim \limits_{t \rightarrow 0^-} \frac{f(x+te_k)-f(x)}{t}
\]
\[
f(x+te_k)-f(x) \ge tk_-=(k_-e_k)^T(te_k), t<0
\]
而且\(k_- \le k_+\)。
事实上,因为:
\[
\frac{f(x+te_k)-f(x)}{t} \ge k_+ \ge k_- \ge \frac{f(x)-f(x-te_k)}{t},t>0
\]
所以,容易证明:
\[
f(x+te_k) \ge f(x) + (\lambda_1k_+ + (1-\lambda_1)k_-)e_k^Tte_k, 0 \le \lambda_1 \le 1
\]
容易验证\(h(t) = f(x+tv)\)时关于\(t\)的凸函数,那么:
\[
K_v^+ := \lim \limits_{t \rightarrow 0^+} \frac{h(t)-h(0)}{t\|v\|}
\]
同理
\[
K_v^- := \lim \limits_{t \rightarrow 0^-} \frac{h(t)-h(0)}{t\|v\|}
\]
一样的分析,我们可以知道:
\[
f(x+tv) \ge f(x) + \frac{(\lambda K_v^+ + (1-\lambda )K_v^-)}{\|v\|} v^Ttv, 0 \le \lambda \le 1
\]
不好意思,证到这里我证不下去了,我实在不知道结果该是什么。

混合函数

应用

Pointwise maximum

\[
f(x)=\max \limits_{i=1,2,\ldots,m} f_i(x)
\]
其中\(f_i,i=1,2,\ldots,m\)为凸函数。

\(\mathbf{Co}(\cdot)\)大概是把里面的集合凸化(我的理解):
\[
\mathbf{Co}(\mathcal{S})=\{ \lambda g_1+(1-\lambda) g_2| g_1,g_2\in \mathcal{S},\lambda \in [0,1]\}
\]

第一个例子,可微函数取最大:

我倒觉得蛮好理解的,因为\(\nabla_i f(x)\)和\(\nabla_j f(x)\)如果都是次梯度,那么根据次梯度的集合都是凸集可以知道\(\nabla_i f(x),\nabla_j f(x)\)的凸组合也是次梯度。

第二个例子,\(\ell_1\)范数:

我也觉得蛮好理解的。

上确界 supremum

\[
f(x) = \sup \limits_{\alpha \in \mathcal{A}} f_\alpha (x)
\]
\(f_\alpha (x)\)是次可微的。

例子,最大特征值问题:

Minimization over some variables

拟凸函数

原文地址:https://www.cnblogs.com/MTandHJ/p/10690171.html

时间: 2024-10-09 20:54:27

subgradients的相关文章

一些矩阵范数的subgradients

目录 引 正交不变范数 定理1 定理2 例子:谱范数 例子:核范数 算子范数 定理3 定理4 例子 \(\ell_2\) <Subgradients> Subderivate-wiki Subgradient method-wiki <Subgradient method> Subgradient-Prof.S.Boyd,EE364b,StanfordUniversity <Characterization of the Subdifferential of Some Mat

Spark MLlib Linear Regression线性回归算法

1.Spark MLlib Linear Regression线性回归算法 1.1 线性回归算法 1.1.1 基础理论 在统计学中,线性回归(Linear Regression)是利用称为线性回归方程的最小平方函数对一个或多个自变量和因变量之间关系进行建模的一种回归分析.这种函数是一个或多个称为回归系数的模型参数的线性组合. 回归分析中,只包括一个自变量和一个因变量,且二者的关系可用一条直线近似表示,这种回归分析称为一元线性回归分析.如果回归分析中包括两个或两个以上的自变量,且因变量和自变量之间

MlLib--逻辑回归笔记

批量梯度下降的逻辑回归可以参考这篇文章:http://blog.csdn.net/pakko/article/details/37878837 看了一些Scala语法后,打算看看MlLib的机器学习算法的并行化,那就是逻辑回归,找到package org.apache.spark.mllib.classification下的LogisticRegressionWithSGD这个类,直接搜train()函数. def train( input: RDD[LabeledPoint], numIter

Pegasos: Primal Estimated sub-GrAdient Solver for SVM

Abstract We describe and analyze a simple and effective iterative algorithm for solving the optimization problem cast by Support Vector Machines (SVM). Our method alternates between stochastic gradient descent steps and projection steps. We prove tha

Spark MLlib Deep Learning Neural Net(深度学习-神经网络)1.1

Spark MLlib Deep Learning Neural Net(深度学习-神经网络)1.1 http://blog.csdn.net/sunbow0/ Spark MLlib Deep Learning工具箱,是根据现有深度学习教程<UFLDL教程>中的算法,在SparkMLlib中的实现.具体Spark MLlib Deep Learning(深度学习)目录结构: 第一章Neural Net(NN) 1.源码 2.源码解析 3.实例 第二章Deep Belief Nets(DBNs

Spark MLlib Deep Learning Neural Net(深度学习-神经网络)1.2

Spark MLlib Deep Learning Neural Net(深度学习-神经网络)1.2 http://blog.csdn.net/sunbow0/ 第一章Neural Net(神经网络) 2基础及源码解析 2.1 Neural Net神经网络基础知识 2.1.1 神经网络 基础知识参照: http://deeplearning.stanford.edu/wiki/index.php/%E7%A5%9E%E7%BB%8F%E7%BD%91%E7%BB%9C 2.1.2 反向传导算法

逻辑回归(logistic-regression)之梯度下降法详解

引言 逻辑回归常用于预测疾病发生的概率,例如因变量是是否恶性肿瘤,自变量是肿瘤的大小.位置.硬度.患者性别.年龄.职业等等(很多文章里举了这个例子,但现代医学发达,可以通过病理检查,即获取标本放到显微镜下观察是否恶变来判断):广告界中也常用于预测点击率或者转化率(cvr/ctr),例如因变量是是否点击,自变量是物料的长.宽.广告的位置.类型.用户的性别.爱好等等. 本章主要介绍逻辑回归算法推导.梯度下降法求最优值的推导及spark的源码实现. 常规方法 一般回归问题的步骤是: 1. 寻找预测函数

OWL-QN算法: 求解L1正则优化

在机器学习模型中,比如监督学习中,我们设计模型,我们重要的的工作是如何求解这个模型的最优值,通常是如何求救损失函数的最小值.比如logistic regression 中我们求解的是的loss function就是负log 最大似然函数.logistic regression 被广泛应用与互联网应用中,比如反欺诈,广告ctr.logistic regression是广义线性模型,优点是简单,实现容易,线上能很快响应.当数据不是呈现线性关系的时候,如果我们想应用logistic regressio

MLlib之LR算法源码学习

/** * :: DeveloperApi :: * GeneralizedLinearModel (GLM) represents a model trained using * GeneralizedLinearAlgorithm. GLMs consist of a weight vector and * an intercept. * * @param weights Weights computed for every feature. * @param intercept Inter