Skip to content

共轭函数 ​

定义 ​

设函数 f:Rn→R,其共轭函数 f∗:Rn→R 为

f∗(y)=supx∈domf(y⊤x−f(x))

几何意义 ​

共轭函数的几何意义如图所示。教材当中仅仅只是简略说明了这张图,但实际上这张图并不是特别容易理解。下面详细说明如何将这张图和共轭函数的定义结合起来理解。

首先,我们要明确的一点是,在共轭函数的定义中,自变量是 y,而不是 x,x 应该当成常数或者参数。而在上面的函数图像中,自变量是 x,而不是 y,y 应该当成常数或者参数。

因此,一元函数 f(x) 的图像就可以画在平面直角坐标系中(图中蓝色曲线)。这里为了方便并且直观地说明,假设 f:R→R。由于 y 被当成常数,yx 就是正比例函数,其图像是过原点的倾斜直线(图中上方虚线)。

因此,共轭函数的定义可以用自然语言描述为:直线(超平面)y⊤x 与 f(x) 函数值的最大差值,并且该差值的取值与 y⊤ 的取值一一对应——任意改变直线的斜率(超平面的方向向量),都有唯一确定的一个值与之对应。

显然,f∗ 是凸函数,这是因为它是在求一系列值的逐点上确界。而且,无论 f 是否为凸函数,f∗ 都是凸函数。如果 f 是凸函数,那么就没必要限制 x∈domf 了。这是因为根据之前关于扩展值延伸的定义,对于 x∉domf,y⊤x−f(x)=−∞。

举例 ​

仿射函数 ​

f(x)=ax+b

当且仅当 y=a 时,yx−ax−b=−b 有界。因此,仿射函数的共轭函数为

f∗(y)=−b,domf∗={a}

负对数函数 ​

f(x)=−log⁡x,domf=R++

当 y>0 时,函数 xy+log⁡x 无上界;当 y<0 时,在 x=−1y 处取最大值。因此,负对数函数的共轭函数为

f∗(y)=−log⁡(−y)−1,domf∗=−R++

指数函数 ​

f(x)=ex

当 y<0 时,函数 xy−ex 无界;当 y>0 时,函数 xy−ex 在 x=ln⁡y 处取最大值;当 y=0 时,f∗(y)=sup{−ex}=0。因此,指数函数的共轭函数为

f∗(y)=ylog⁡y−y,domf∗=R+

负熵函数 ​

f(x)=xlog⁡x,domf=R+

对所有 y,函数 xy−xlog⁡x 关于 x 在 R+ 上有上界,且在 x=ey−1 处取最大值。因此,负熵函数的共轭函数为

f∗(y)=ey−1

反比例函数 ​

f(x)=1x,domf=R++

当 y>0 时,yx−1/x 无上界;当 y=0 时,函数有上确界 0;当 y<0 时,在 x=(−y)1/2 处达到上确界。因此,反比例函数的共轭函数为

f∗(y)=−2(−y)1/2,domf∗=R+

严格凸的二次函数 ​

f(x)=12x⊤Qx,Q∈S++n

对所有的 y,关于 x 的函数 y⊤x−12x⊤Qx 都有上界并在 x=Q−1y 处达到上确界。因此

f∗(y)=12y⊤Q−1y

这是一个很好的性质,严格凸的二次函数求共轭函数只需要求其二次型矩阵的逆矩阵即可。

对数-行列式 ​

f(X)=log⁡detX−1,X∈S++n

其共轭函数定义为

f∗(Y)=supX≻0{tr(YX)+log⁡detX}=log⁡det(−Y)−1−n,domf∗=−S++n

指数和的对数函数 ​

f(x)=log⁡(∑i=1nexi)

其共轭函数的推到稍微有些复杂,这里直接给出结果。

f∗(y)={∑i=1nyilog⁡yiy⪰0∧1⊤y=1∞ otherwise 

也就是说,指数和的对数函数的共轭函数是概率单纯形内的负熵函数。

范数 ​

我们知道,Rn 上的范数 ∥⋅∥ 的对偶范数为 ∥⋅∥∗。f(x)=∥x∥ 的共轭函数为

f∗(y)={0∥y∥∗⩽1∞ otherwise 

基本性质 ​

Fenchel 不等式 ​

f(x)+f∗(y)⩾x⊤y

如果 f 可微,上式亦可称为 Young 不等式。

令 f(x)=12x⊤Qx,其中 Q∈S++,利用 Fenchel 不等式,我们可以如下结论:

x⊤y⩽12x⊤Qx+12y⊤Q−1y

共轭的共轭 ​

我们学过的很多概念当中都包含“共轭”,例如共轭根式、共轭复数等。实际上“共轭”包含了“成对出现”这么一层意思。因此,共轭函数也有类似的性质。

f∗∗=f

上述等式要求函数 f 是凸的而且闭的。

Legendre 变换 ​

可微函数 f 的共轭函数亦称为函数 f 的 Legendre 变换。

设函数 f 是凸函数且可微,其定义域为 domf=Rn,使 y⊤x−f(x) 取最大的 x∗ 满足 y=∇f(x∗),并且若 x∗ 满足 y=∇f(x∗),y⊤x−f(x) 在 x∗ 处取最大值(二者等价)。因此,我们可以得到

f∗(y)=x∗⊤∇f(x∗)−f(x∗)

有了这个结论,给定任意 y,我们可以求解梯度方程 y=∇f(z),从而得到 y 处的共轭函数 f∗(y)。

我们也可以换一个角度理解。∀z∈Rn,令 y=∇f(z),则

f∗(y)=z⊤∇f(z)−f(z)

伸缩变换和复合仿射变换 ​

设 a>0,b∈R,则伸缩变换及其共轭函数为

g(x)=af(x)+bg∗(y)=af∗(y/a)−b

设 A∈Rn×n 非奇异,b∈Rn,则复合仿射变换及其共轭函数为

g(x)=f(Ax+b)g∗(y)=f∗(A−⊤y)−b⊤A−⊤y

其定义域为 domg∗=A⊤domf∗。

独立函数的和 ​

设函数 f1 和 f2 都是凸函数,它们的独立函数

f(u,v)=f1(u)+f2(v)

的共轭函数为

f∗(w,z)=f1∗(w)+f2∗(z)

也就是说,独立凸函数的和的共轭函数是各个凸函数的共轭函数的和。

最近更新