文章目录
《Subgradients》
Subderivate-wiki
Subgradient method-wiki
《Subgradient method》
Subgradient-Prof.S.Boyd,EE364b,StanfordUniversity
《Characterization of the Subdifferential of Some Matrix Norms 》
定义
我们称
g
∈
R
n
g \in \mathbb{R}^n
g∈Rn是
f
:
R
n
→
R
f:\mathbb{R}^{n} \rightarrow \mathbb{R}
f:Rn→R在
x
∈
d
o
m
f
x\in domf
x∈domf的次梯度,如果对于任意的
z
∈
d
o
m
f
z \in domf
z∈domf,满足:
f
(
z
)
≥
f
(
x
)
+
g
T
(
z
−
x
)
f(z) \ge f(x) + g^T(z-x)
f(z)≥f(x)+gT(z−x)
如果
f
f
f是可微凸函数,那么
g
g
g就是
f
f
f在
x
x
x处的梯度。我们将
z
z
z看成变量,那么仿射函数
f
(
x
)
+
g
T
(
z
−
x
)
f(x)+g^T(z-x)
f(x)+gT(z−x)是
f
(
z
)
f(z)
f(z)的一个全局下估计。这个次梯度的作用,就是在处理不可微函数的时候,提供一个替代梯度的工具,而且,根据定义,沿着次梯度方向,函数的值是非降的:
f
(
α
g
+
x
)
≥
f
(
x
)
+
α
g
T
g
f(\alpha g+x) \ge f(x) + \alpha g^Tg
f(αg+x)≥f(x)+αgTg
另外,如果极限存在,有下面的性质,这联系了方向导数和次梯度:
lim
z
→
x
+
f
(
z
)
−
f
(
x
)
∥
z
−
x
∥
≥
g
T
(
z
−
x
)
/
∥
z
−
x
∥
\lim \limits_{z \rightarrow x^+} \frac{f(z)-f(x)}{\|z-x\|} \ge g^T(z-x)/\|z-x\|
z→x+lim∥z−x∥f(z)−f(x)≥gT(z−x)/∥z−x∥
当然,还有从左往右的来的,这里就不讲了。
下图是一个例子,我们可以看到,在存在梯度的地方,次梯度就是梯度,在不可导的地方,次梯度是一个凸集。
次梯度总是闭凸集,即便
f
f
f不是凸函数,有下面的性质:
∂
f
(
x
)
=
⋂
z
∈
d
o
m
f
{
g
∣
f
(
z
)
≥
f
(
x
)
+
g
T
(
z
−
x
)
}
\partial f(x) = \bigcap \limits_{z \in domf} \{ g| f(z) \ge f(x) + g^T (z-x) \}
∂f(x)=z∈domf⋂{g∣f(z)≥f(x)+gT(z−x)}
下面是
f
(
x
)
=
∣
x
∣
f(x) = |x|
f(x)=∣x∣的例子:
上镜图解释
g
g
g是次梯度,当且仅当
(
g
,
−
1
)
(g, -1)
(g,−1)是
f
f
f的上镜图在
(
x
,
f
(
x
)
)
(x, f(x))
(x,f(x))处的一个支撑超平面。
函数
f
f
f的上镜图定义为:
e
p
i
f
=
{
(
x
,
t
)
∣
x
∈
d
o
m
f
,
f
(
x
)
≤
t
}
\mathbf{epi} f = \{ (x, t) | x \in \mathbf{dom} f, f(x) \le t\}
epif={(x,t)∣x∈domf,f(x)≤t}
一个函数是凸函数,当且仅当其上镜图是凸集。
我们来证明一开始的结论,即
g
g
g是次梯度,当且仅当
(
g
,
−
1
)
(g, -1)
(g,−1)是
f
f
f的上镜图在
(
x
,
f
(
x
)
)
(x, f(x))
(x,f(x))处的一个支撑超平面。
首先,若
(
g
,
−
1
)
(g, -1)
(g,−1)是
f
f
f的上镜图在
(
x
,
f
(
x
)
)
(x, f(x))
(x,f(x))处的一个支撑超平面,则:
g
T
(
x
−
x
0
)
−
(
t
−
f
(
x
0
)
)
≤
0
⇒
t
≥
f
(
x
0
)
+
g
T
(
x
−
x
0
)
g^T(x-x_0)-(t-f(x_0)) \le 0 \\ \Rightarrow t \ge f(x_0)+g^T(x-x_0)
gT(x−x0)−(t−f(x0))≤0⇒t≥f(x0)+gT(x−x0)
对所有
(
x
,
t
)
∈
e
p
i
f
(x, t) \in \mathbf{epi} f
(x,t)∈epif成立,令
t
=
f
(
x
)
t=f(x)
t=f(x),结果便得到。
反过来,如果
g
g
g是次梯度,那么:
f
(
z
)
≥
f
(
x
)
+
g
T
(
z
−
x
)
⇒
f
(
z
)
−
f
(
x
)
≥
g
T
(
z
−
x
)
f(z) \ge f(x) + g^T(z-x) \\ \Rightarrow f(z)-f(x) \ge g^T(z-x)
f(z)≥f(x)+gT(z−x)⇒f(z)−f(x)≥gT(z−x)
又
t
≥
f
(
z
)
,
(
z
,
t
)
∈
e
p
i
f
t \ge f(z), (z, t) \in \mathbf{epi} f
t≥f(z),(z,t)∈epif,所以:
t
−
f
(
x
)
≥
f
(
z
)
−
f
(
x
)
≥
g
T
(
z
−
x
)
t - f(x)\ge f(z)-f(x) \ge g^T(z-x)
t−f(x)≥f(z)−f(x)≥gT(z−x)
所以,
(
g
,
−
1
)
(g,-1)
(g,−1)在
(
x
,
f
(
x
)
)
(x, f(x))
(x,f(x))处定义了一个超平面。
次梯度的存在性
如果
f
f
f是凸函数,且
x
∈
i
n
t
d
o
m
f
x \in \mathbf{int} \mathbf{dom} f
x∈intdomf,那么
∂
f
(
x
)
\partial f(x)
∂f(x)非空且闭。根据支撑超平面定理,我们知道,在
(
x
,
f
(
x
)
)
(x, f(x))
(x,f(x))处存在关于
e
p
i
f
\mathbf{epi} f
epif的一个超平面,设
a
∈
R
n
,
b
∈
R
a \in \mathbb{R}^n, b \in \mathbb{R}
a∈Rn,b∈R,则对于任意的
(
z
,
t
)
∈
e
p
i
f
(z, t)\in \mathbf{epi} f
(z,t)∈epif都有:
显然,
(
x
,
f
(
x
)
+
ϵ
)
(x, f(x)+\epsilon)
(x,f(x)+ϵ)也符合条件,这意味着
b
≤
0
b\le0
b≤0,以及:
a
T
(
z
−
x
)
+
b
(
f
(
z
)
−
f
(
x
)
)
≤
0
a^T(z-x)+b(f(z) - f(x)) \le 0
aT(z−x)+b(f(z)−f(x))≤0
对所有
z
z
z成立。
如果
b
=
0
b=0
b=0,那么
a
=
0
a=0
a=0,不构成超平面,即
b
<
0
b < 0
b<0。
于是:
f
(
z
)
≥
f
(
x
)
+
−
a
T
/
b
(
z
−
x
)
f(z) \ge f(x) +-a^T/b(z-x)
f(z)≥f(x)+−aT/b(z−x)
即
−
a
/
b
∈
∂
f
(
x
)
-a/b \in \partial f(x)
−a/b∈∂f(x)
性质
极值
x
∗
x^*
x∗是凸函数
f
(
x
)
f(x)
f(x)的最小值,当且仅当
f
f
f在
x
∗
x^*
x∗处存在次梯度且
0
∈
∂
f
(
x
∗
)
0 \in \partial f(x^*)
0∈∂f(x∗)
f
(
x
)
≥
f
(
x
∗
)
⇒
0
∈
∂
f
(
x
∗
)
f(x) \ge f(x^*) \Rightarrow 0 \in \partial f(x^*)
f(x)≥f(x∗)⇒0∈∂f(x∗)
非负数乘 α f ( x ) \alpha f(x) αf(x)
∂ ( α f ) = α ∂ f , α ≥ 0 \partial(\alpha f) = \alpha \partial f, \alpha \ge 0 ∂(αf)=α∂f,α≥0
和,积分,期望
f
=
f
1
+
f
2
…
+
f
n
f = f_1+f_2\ldots+f_n
f=f1+f2…+fn,
f
i
,
i
=
1
,
2
,
…
,
m
f_i,i=1,2,\ldots,m
fi,i=1,2,…,m均为凸函数,那么:
∂
f
=
∂
f
1
+
∂
f
2
+
…
+
∂
f
n
\partial f=\partial f_1 +\partial f_2 + \ldots +\partial f_n
∂f=∂f1+∂f2+…+∂fn
F
(
x
)
=
∫
Y
f
(
x
,
y
)
d
y
F(x)= \int_Y f(x,y) dy
F(x)=∫Yf(x,y)dy, 固定
y
y
y,
f
(
x
,
y
)
f(x,y)
f(x,y)为凸函数,那么:
∂
F
(
x
)
=
∫
Y
∂
x
f
(
x
,
y
)
d
y
\partial F(x)=\int_Y \partial_x f(x,y) dy
∂F(x)=∫Y∂xf(x,y)dy
f
(
z
,
y
)
≥
f
(
x
,
y
)
+
g
T
(
y
)
(
z
−
x
)
⇒
∫
Y
f
(
z
,
y
)
d
y
≥
∫
Y
f
(
x
,
y
)
d
y
+
∫
Y
g
T
(
y
)
d
y
(
z
−
x
)
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(z,y)≥f(x,y)+gT(y)(z−x)⇒∫Yf(z,y)dy≥∫Yf(x,y)dy+∫YgT(y)dy(z−x)
不过需要注意的一点是,这里的等号都是对于特定的次梯度,我总感觉
f
f
f的次梯度的集合不止于此,或许会稍微大一点?就是对于和来讲,下面这个式子成立吗?:
∂
f
=
{
g
1
+
g
2
+
…
+
g
n
∣
g
1
∈
∂
f
1
,
…
,
g
n
∈
∂
f
n
}
\partial f=\{ g_1+g_2+\ldots + g_n| g_1\in \partial f_1, \ldots, g_n\in \partial f_n\}
∂f={g1+g2+…+gn∣g1∈∂f1,…,gn∈∂fn}
至少凸函数没问题吧,凸函数一定是连续函数,且左右导数存在,那么
g
g
g的范围都是固定的。
仿射变换
f
(
x
)
f(x)
f(x)是凸函数,令
h
(
x
)
=
f
(
A
x
+
b
)
h(x)=f(Ax+b)
h(x)=f(Ax+b)则:
f
(
A
z
+
b
)
≥
f
(
A
x
+
b
)
+
g
T
(
A
z
+
b
−
A
x
−
b
)
⇒
h
(
z
)
≥
h
(
x
)
+
(
A
T
g
)
T
(
z
−
x
)
⇒
∂
h
(
x
)
=
A
T
∂
f
(
A
x
+
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)
f(Az+b)≥f(Ax+b)+gT(Az+b−Ax−b)⇒h(z)≥h(x)+(ATg)T(z−x)⇒∂h(x)=AT∂f(Ax+b)
仿梯度
我们知道梯度有下面这些性质:
∇
c
=
0
∇
(
φ
±
ψ
)
=
∇
φ
±
∇
ψ
∇
(
c
φ
)
=
c
∇
φ
∇
(
φ
ψ
)
=
ψ
∇
φ
−
φ
∇
ψ
ψ
2
∇
f
(
φ
)
=
f
′
(
φ
)
∇
φ
\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 \\
∇c=0∇(φ±ψ)=∇φ±∇ψ∇(cφ)=c∇φ∇(ψφ)=ψ2ψ∇φ−φ∇ψ∇f(φ)=f′(φ)∇φ
我认为(注意是我认为!!!大概是是异想天开。)
f
f
f为凸函数的时候,或者
f
f
f为可微(这个时候是一定的)的时候,上面的性质也是存在的。当然,这只是针对某些次梯度。因为当
f
f
f为凸函数的时候,
f
f
f的左右导数都存在,那么:
k
+
:
=
lim
t
→
0
+
f
(
x
+
t
e
k
)
−
f
(
x
)
t
k_+:=\lim \limits_{t \rightarrow 0^+} \frac{f(x+te_k)-f(x)}{t}
k+:=t→0+limtf(x+tek)−f(x)
那么(凸函数的性质)
f
(
x
+
t
e
k
)
−
f
(
x
)
≥
t
k
+
=
(
k
+
e
k
)
T
(
t
e
k
)
,
t
>
0
f(x+te_k)-f(x) \ge tk_+=(k_+e_k)^T(te_k), t>0
f(x+tek)−f(x)≥tk+=(k+ek)T(tek),t>0
同理:
k
−
:
=
lim
t
→
0
−
f
(
x
+
t
e
k
)
−
f
(
x
)
t
k_-:=\lim \limits_{t \rightarrow 0^-} \frac{f(x+te_k)-f(x)}{t}
k−:=t→0−limtf(x+tek)−f(x)
f
(
x
+
t
e
k
)
−
f
(
x
)
≥
t
k
−
=
(
k
−
e
k
)
T
(
t
e
k
)
,
t
<
0
f(x+te_k)-f(x) \ge tk_-=(k_-e_k)^T(te_k), t<0
f(x+tek)−f(x)≥tk−=(k−ek)T(tek),t<0
而且
k
−
≤
k
+
k_- \le k_+
k−≤k+。
事实上,因为:
f
(
x
+
t
e
k
)
−
f
(
x
)
t
≥
k
+
≥
k
−
≥
f
(
x
)
−
f
(
x
−
t
e
k
)
t
,
t
>
0
\frac{f(x+te_k)-f(x)}{t} \ge k_+ \ge k_- \ge \frac{f(x)-f(x-te_k)}{t},t>0
tf(x+tek)−f(x)≥k+≥k−≥tf(x)−f(x−tek),t>0
所以,容易证明:
f
(
x
+
t
e
k
)
≥
f
(
x
)
+
(
λ
1
k
+
+
(
1
−
λ
1
)
k
−
)
e
k
T
t
e
k
,
0
≤
λ
1
≤
1
f(x+te_k) \ge f(x) + (\lambda_1k_+ + (1-\lambda_1)k_-)e_k^Tte_k, 0 \le \lambda_1 \le 1
f(x+tek)≥f(x)+(λ1k++(1−λ1)k−)ekTtek,0≤λ1≤1
容易验证
h
(
t
)
=
f
(
x
+
t
v
)
h(t) = f(x+tv)
h(t)=f(x+tv)时关于
t
t
t的凸函数,那么:
K
v
+
:
=
lim
t
→
0
+
h
(
t
)
−
h
(
0
)
t
∥
v
∥
K_v^+ := \lim \limits_{t \rightarrow 0^+} \frac{h(t)-h(0)}{t\|v\|}
Kv+:=t→0+limt∥v∥h(t)−h(0)
同理
K
v
−
:
=
lim
t
→
0
−
h
(
t
)
−
h
(
0
)
t
∥
v
∥
K_v^- := \lim \limits_{t \rightarrow 0^-} \frac{h(t)-h(0)}{t\|v\|}
Kv−:=t→0−limt∥v∥h(t)−h(0)
一样的分析,我们可以知道:
f
(
x
+
t
v
)
≥
f
(
x
)
+
(
λ
K
v
+
+
(
1
−
λ
)
K
v
−
)
∥
v
∥
v
T
t
v
,
0
≤
λ
≤
1
f(x+tv) \ge f(x) + \frac{(\lambda K_v^+ + (1-\lambda )K_v^-)}{\|v\|} v^Ttv, 0 \le \lambda \le 1
f(x+tv)≥f(x)+∥v∥(λKv++(1−λ)Kv−)vTtv,0≤λ≤1
不好意思,证到这里我证不下去了,我实在不知道结果该是什么。
混合函数
应用
Pointwise maximum
f
(
x
)
=
max
i
=
1
,
2
,
…
,
m
f
i
(
x
)
f(x)=\max \limits_{i=1,2,\ldots,m} f_i(x)
f(x)=i=1,2,…,mmaxfi(x)
其中
f
i
,
i
=
1
,
2
,
…
,
m
f_i,i=1,2,\ldots,m
fi,i=1,2,…,m为凸函数。
C
o
(
⋅
)
\mathbf{Co}(\cdot)
Co(⋅)大概是把里面的集合凸化(我的理解):
C
o
(
S
)
=
{
λ
g
1
+
(
1
−
λ
)
g
2
∣
g
1
,
g
2
∈
S
,
λ
∈
[
0
,
1
]
}
\mathbf{Co}(\mathcal{S})=\{ \lambda g_1+(1-\lambda) g_2| g_1,g_2\in \mathcal{S},\lambda \in [0,1]\}
Co(S)={λg1+(1−λ)g2∣g1,g2∈S,λ∈[0,1]}
第一个例子,可微函数取最大:
我倒觉得蛮好理解的,因为
∇
i
f
(
x
)
\nabla_i f(x)
∇if(x)和
∇
j
f
(
x
)
\nabla_j f(x)
∇jf(x)如果都是次梯度,那么根据次梯度的集合都是凸集可以知道
∇
i
f
(
x
)
,
∇
j
f
(
x
)
\nabla_i f(x),\nabla_j f(x)
∇if(x),∇jf(x)的凸组合也是次梯度。
第二个例子,
ℓ
1
\ell_1
ℓ1范数:
我也觉得蛮好理解的。
上确界 supremum
f
(
x
)
=
sup
α
∈
A
f
α
(
x
)
f(x) = \sup \limits_{\alpha \in \mathcal{A}} f_\alpha (x)
f(x)=α∈Asupfα(x)
f
α
(
x
)
f_\alpha (x)
fα(x)是次可微的。
例子,最大特征值问题: