什么是凸函数?
f(x)满足下面的关系就是凸的:
f(2x1+x2)≤2f(x1)+f(x2)

参考 (opens new window)
什么是上确界?
sup是supremum单词的缩写,意思是最小上界。inf是单词infimum的简写,意思是最大下界。
数学中,经常出现的表示方式是 lim sup 或者 lim inf,即找上界或者下界的极限。
sup{S}就是S的上确界,即S的所有上界组成的集合的最小元。
举例:
集合S=[0,1], sup{S} = 1, max{S} = 1;
集合S=[0,1), sup{S} = 1, max{S} 不存在。
参考1 (opens new window) 参考2 (opens new window)
什么是对偶空间?
揭示点线对偶的实际就是直线方程:
ax+by=C
可以写成(f是一个线性函数):
f(x,y)=C
为了更广泛地表示不同维度的情况,把x,y写作 v⃗:
f(v⃗)=C
之前提到的“点动成线”实际上就是 v⃗ 在变化:
线动成点”则是f在变化:
我们可以认为:
V=v1⃗,v2⃗,v3⃗,⋯
代表点, 而
V∗=f1,f2,f3,⋯
代表线。
认为V∗是V的对偶空间。
参考 (opens new window)
什么是Dom f?
f:N→N
表示: 函数f的定义域是N,(自然数), 而陪域也是N
f:x↦x2
或者
f(x)=x2
表示: 函数f的输入是x,而返回值是x2
Dom(f) 或者 Domf的意思是: 函数f的定义域;
Ran(f) 或者 Ranf的意思是: 函数f的值域。
参考 (opens new window)
什么是凸共轭?
凸共轭也叫作Fenchel Conjugate, 不过名字什么的都不是那么重要啦。我们说每个凸函数f都有一个伙伴f∗。它是这样定义的:
f∗(t)=x∈dom(f)max{xt−f(x)}
先不要放弃,再坚持一会儿。
举个例子,我们想要算f∗(t1)的值是多少, 我们是这样做的:
算个t时的凸共轭
- 带入t1到xt−f(x)得到xt1−f(x)
- 穷举所有的x,得到下面一组数:
- x1t1−f(x1)
- x2t1−f(x2)
- ...
- xnt1−f(xn)
- 比较哪一组数最大(假设第一组数最大)
- 得到f∗(t1)=x1t1−f(x1)
对于t取其他的值,重复上面的过程, 取完所有的t就得到了函数f∗(t);
用上的方式找到f∗(t)貌似有些复杂,我们可以有更简单的方式找到f∗(t)
一种求凸共轭函数更好的方法
- 穷举所有的x, 做xt−f(x)的函数图, 如图中黑线
- 给定一个t,作t=t1,交点最大值即为f∗(t1)
- t从左到右移动,重复2步骤,交点就形成了红色的线。
- 红色的线就是f∗(t)

参考0: 李宏毅老师在GAN课程里面对凸共轭的解释 (opens new window)
参考1 (opens new window)
参考2 (opens new window)