个人博客地址 Glooow,欢迎光临~~~
1. 保凸变换
前面提到过一次保凸变换,前面针对的是集合,凸集经过一定的保凸变换,映射后的集合仍然是凸集。这里复习一下
- 任意个凸集的交集
- 仿射变换
- 透视变换
- 分式线性函数
而这里要讲的是对函数经过操作以后,得到的仍然是凸函数。
1.1 正权重求和
离散情况:f=∑ωifi,ωi≥0
连续情况:f=∫ω(y)f(y)dy,ω(y)≥0
1.2 与仿射变换的复合函数
若 f 为凸函数,则 f(Ax+b) 也为凸函数。
Remarks:反之则不一定成立,若想成立(根据后面复合函数的原理)则仿射变换应具有一定的单调性。
1.3 逐元素最大值&上确界
若 fi 均为凸函数,则 f(x)=maxi{f1(x),...,fn(x)} 也为凸函数。
Remarks:这实际上可以看成是 epif=⋂epifi,多个凸集的交集仍然是凸集。
若与仿射变换相结合,则可以得到 f(x)=maxi{a1Tx+b1,...,anTx+bn} 也是凸函数。
例:根据上述结论,可以推广得到,n 个元素中最大的 r 的求和也是凸函数,证明很简单。
若 f(x,y) 关于 x 是凸的,对任意 y∈A,则 g(x)=supy∈Af(x,y) 也是凸的。
Remarks:上述情况跟逐元素最大值是类似的,可以看成是无穷个 epigraph 的交集。
由上述结论,可以得到一个重要性质
Property:若 f 为凸函数,则 f(x)=sup{g(x)∣g is affine,g(z)≤f(z),∀z}
Remarks:上述性质所描述的事情实际上就是 f 被很多个支撑超平面(以及更靠下的平面)紧紧的围起来了。证明过程实际上就是找到每个 x 对应的(支撑)超平面。

通过上面的证明,可以得到的一个结论就是 ∀x∈int domf,都存在一个 y 使得
f(z)≥f(x)+yT(z−x),∀z∈domf
由此可以引出**次梯度(subgradient)**的概念
∂f={g∣f(z)≥f(x)+gT(z−x),∀z∈domf}
注意这里得到的是一系列梯度值的集合,这个集合有以下性质
- ∂f(x)=∅,if x∈int domf
-
∂f(x) convex and closed
-
∂f(x) bounded if x∈int domf
例:应用上述结论,可验证下面这些函数是凸的
- 集合 C 的支撑函数(support function)定义为:SC(x)=supy∈CyTx (实际上可以将 x 看作某个支撑超平面的法向量)
- 到集合 C 的最远距离:f(x)=supy∈C∥x−y∥ (距离关于 x,y 都是凸的)
- 矩阵范数:∥X∥a,b=sup{∥Xv∥a/∥v∥b} (证明过程用到了范数的等价定义,可参考 Boyd 的书)
1.4 下确界
前面提到了逐元素上确界,实际上就是 epigraph 的交集,而取下确界呢?是类似的,只不过对 f(x,y) 的要求更严了
若 f(x,y) 关于 (x,y) 是凸的,C 是一个凸集,则 g(x)=infy∈Cf(x,y) 是凸的。
上述性质可应用下确性质定义来证明,也可以从 epigraph 角度来理解:∀(x,t)∈epi g,都有 (x,y,t)∈epi f, for some y∈C,所以 epi g 实际上可以看作 epi f 向低维空间中的一个投影,也是一个仿射变换/线性变换,因此 epi g 也是凸的。
Remarks:注意上面还要求 C 是一个凸集,因为凸函数要求其定义域也为凸集。
例:到集合 C 最近距离:dist(x,S)=infy∈S∥x−y∥ 是凸的,如果 S 是凸的。
1.5 复合函数
两个凸函数的复合函数不一定是凸的,比如 f(x)=−x,g(x)=x2,那么 f(g(x))=−x3 非凸
1. 标量复合函数
有函数 g:Rn→R, h:R→R,对于复合函数 f(x)=h(g(x))
-
f(x) 为凸函数,若 g convex,h convex,h 单调不减
-
f(x) 为凸函数,若 g concave,h convex,h 单调增
2. 向量复合函数
有函数 g:Rn→Rk, h:Rk→R,对于复合函数 f(x)=h(g(x))=h(g1(x),...,gn(x))
-
f(x) 为凸函数,若 gi convex,h convex,h 关于每个元素都单调不减
-
f(x) 为凸函数,若 gi concave,h convex,h 关于每个元素都单调增
证明:标量函数 f′′(x)=h′′(g(x))g′(x)2+h′(g(x))g′′(x)
向量复合函数 f′′(x)=g′(x)T∇2h(g(x))g′(x)+∇h(g(x))Tg′′(x)
Remarks:
- 回到刚开始提到仿射变换与凸函数的复合 f(Ax+b) 是凸的,但是 Affine(f(x)) 就不一定了,若是凸函数则需要仿射变换具有一定的单调性
例:常见的例子有
-
expg(x) 是凸的,如果 g(x) 是凸的
-
1/g(x) 是凸的,如果 g(x) 是凸的且为正值
-
∑loggi(x) 为凹的,如果 gi 是凹的且为正值
-
log∑expgi(x) 为凸的,如果 gi 为凸的
1.6 透射变换
函数 f:Rn→R 的透射变换 g:Rn×R→R 定义为
g(x,t)=tf(x/t),dom g={(x,t)∣x/t∈dom f,t>0}
若 f 是凸的,则 g 是凸的。
Remarks:上述变换在一些问题中应该能够对应一些物理意义,不过我暂时还没想起来。证明也可以用 epigraph 来证明。
例:对负熵 f(x)=−logx,相对熵为 g(x,t)=tlogt−tlogx
类似的,对向量函数 KL(u,v)=−∑(uilog(ui/vi)−ui+vi) 也是凸的,这实际上就就是 KL-divergence。