1.共轭函数
设函数
f
:
R
n
→
R
f:\mathrm{R}^{n}\rightarrow \mathrm{R}
f:Rn→R,定义函数
f
∗
:
R
n
→
R
f^{*}:\mathrm{R}^{n}\rightarrow\mathrm{R}
f∗:Rn→R为
f
∗
(
y
)
=
sup
x
∈
d
o
m
(
y
⊤
x
−
f
(
x
)
)
,
f^{*}(y)=\underset{x \in \mathrm{dom}}{\operatorname{sup}}(y^{\top}x-f(x)),
f∗(y)=x∈domsup(y⊤x−f(x)),此函数称为函数
f
f
f的共轭函数。使上述上确界有限,即差值
y
⊤
x
−
f
(
x
)
y^{\top}x-f(x)
y⊤x−f(x)在
d
o
m
f
\mathrm{dom}f
domf有上界的所有
y
∈
R
n
y \in \mathrm{R}^{n}
y∈Rn构成共轭函数的定义域。
如上图所示,函数
f
:
R
→
R
f:\mathrm{R}\rightarrow\mathrm{R}
f:R→R以及某一
y
∈
R
y \in \mathrm{R}
y∈R。共轭函数
f
∗
(
y
)
f^{*}(y)
f∗(y)是线性函数
y
x
yx
yx和
f
(
x
)
f(x)
f(x)之间的最大差值,见红色虚线所示。如果
f
f
f可微,在满足
f
′
(
x
)
=
y
f^{\prime}(x)=y
f′(x)=y的点
x
x
x处差值最大。显而易见,
f
∗
f^{*}
f∗是凸函数,这是因为它是一系列
y
y
y的凸函数(实质上是仿射函数)的逐点上确界。无论
f
f
f是否是凸函数,
f
∗
f^{*}
f∗都是凸函数(注意到这里当
f
f
f是凸函数时,下标
x
∈
d
o
m
f
x \in \mathrm{dom}f
x∈domf可以去掉,这里是因为根据之前关于扩展延伸的定义,对于
x
∉
d
o
m
f
,
y
⊤
x
−
f
(
x
)
=
−
∞
x \notin \mathrm{dom}f,y^{\top}x-f(x)=-\infty
x∈/domf,y⊤x−f(x)=−∞)
2.具体实例
2.1 凸函数的共轭函数
- 仿射函数 f ( x ) = a x + b f(x)=ax+b f(x)=ax+b:作为 x x x的函数,当且仅当 y = a y=a y=a,即为常数时, y x − a x − b yx-ax-b yx−ax−b有界。因此共轭函数 f ∗ f^{*} f∗的定义域为单点集 { a } \{a\} {a},且 f ∗ ( a ) = − b f^{*}(a)=-b f∗(a)=−b。
- 负对数函数 f ( x ) = − log x f(x)=-\log x f(x)=−logx:定义域为 d o m f = R + + \mathrm{dom}f=\mathrm{R}^{++} domf=R++。当 y ≥ 0 y \geq 0 y≥0时,函数 x y + log x xy+\log x xy+logx无上界,当 y < 0 y < 0 y<0时,在 x = − 1 / y x=-1/y x=−1/y处函数达到最大值。因此,定义域 d o m f ∗ = { y ∣ y < 0 } = − R + + \mathrm{dom}f^{*}=\{y|y<0\}=-\mathrm{R}_{++} domf∗={y∣y<0}=−R++,共轭函数为 f ∗ ( y ) = − log ( − y ) − 1 ( y < 0 ) f^{*}(y)=-\log(-y)-1(y<0) f∗(y)=−log(−y)−1(y<0)。
- 指数函数 f ( x ) = e x f(x)=e^{x} f(x)=ex:当 y < 0 y<0 y<0时,函数 x y − e x xy-e^{x} xy−ex无界。当 y > 0 y>0 y>0时,函数 x y − e x xy-e^{x} xy−ex在 x = log y x=\log y x=logy处达到最大值。因此, f ∗ ( y ) = y log y − y f^{*}(y)=y\log y-y f∗(y)=ylogy−y。当 y = 0 y=0 y=0s时, f ∗ ( y ) = s u p x − e x = 0 f^{*}(y)=\underset{x}{\mathrm{sup}}-e^{x}=0 f∗(y)=xsup−ex=0。综合起来, d o m f ∗ = R + \mathrm{dom}f^{*}=\mathrm{R}_{+} domf∗=R+, f ∗ ( y ) = y log y − y f^{*}(y)=y\log y-y f∗(y)=ylogy−y(其中规定 0 log 0 = 0 0\log 0=0 0log0=0)。
- 负熵函数 f ( x ) = x l o g x f(x)=xlogx f(x)=xlogx:定义域为 d o m f = R + \mathrm{dom}f=\mathrm{R}_{+} domf=R+。对所有 y y y,函数 x y − x log x xy-x\log x xy−xlogx关于 x x x在 R + \mathrm{R}_{+} R+上有界,因此 d o m f ∗ = R \mathrm{dom}f^{*}=\mathrm{R} domf∗=R。在 x = e y − 1 x=e^{y-1} x=ey−1处,函数达到最大值。因此 f ∗ ( y ) = e y − 1 f^{*}(y)=e^{y-1} f∗(y)=ey−1。
- 反函数 f ( x ) = 1 / x f(x)=1/x f(x)=1/x:当 y > 0 y>0 y>0时, y x − 1 / x yx-1/x yx−1/x无上界。当 y = 0 y=0 y=0时,函数有上确界0;当 y < 0 y<0 y<0时,在 x = ( − y ) − 1 / 2 x=(-y)^{-1/2} x=(−y)−1/2处达到上确界。因此, f ∗ ( y ) = − 2 ( − y ) 1 / 2 f^{*}(y)=-2(-y)^{1/2} f∗(y)=−2(−y)1/2且 d o m f ∗ = − R + \mathrm{dom}f^{*}=-\mathrm{R}_{+} domf∗=−R+。
2.2 严格凸的二次函数
考虑函数 f ( x ) = 1 2 x ⊤ Q x , Q ∈ S + + n f(x)=\frac{1}{2}x^{\top}Qx,Q \in S^{n}_{++} f(x)=21x⊤Qx,Q∈S++n。对所有的 y y y, x x x的函数 y ⊤ x − 1 2 x ⊤ Q x y^{\top}x-\frac{1}{2}x^{\top}Qx y⊤x−21x⊤Qx都有上界并在 x = Q − 1 y x=Q^{-1}y x=Q−1y处达到上确界,因此 f ∗ ( y ) = 1 2 y ⊤ Q − 1 y . f^{*}(y)=\frac{1}{2}y^{\top}Q^{-1}y. f∗(y)=21y⊤Q−1y.
2.3 对数行列式
考虑 S + + n \mathrm{S}_{++}^{n} S++n上定义的函数 f ( X ) = log det X − 1 f(X)=\log \det X^{-1} f(X)=logdetX−1。其共轭函数定义为 f ∗ ( Y ) = s u p X ≻ 0 ( t r ( Y X ) + log det X ) , f^{*}(Y)=\underset{X \succ 0}{\mathrm{sup}}(\mathrm{tr}(YX)+\log \det X), f∗(Y)=X≻0sup(tr(YX)+logdetX),其中, t r ( Y X ) \mathrm{tr}(YX) tr(YX)是 S n \mathrm{S}^{n} Sn上的标准内积。首先说明当只有 Y ≺ 0 Y\prec 0 Y≺0时, t r ( Y X ) + log det X \mathrm{tr}(YX)+\log \det X tr(YX)+logdetX才有上界。如果 Y ⊀ 0 Y \nprec 0 Y⊀0,则有 Y Y Y有特征向量 v v v, ∥ v ∥ 2 = 1 \|v\|_2=1 ∥v∥2=1且对应的特征值 λ ≥ 0 \lambda \geq 0 λ≥0。令 X = I + t v v ⊤ X=I+tvv^{\top} X=I+tvv⊤,则有 t r ( Y X ) + log det X = t r Y + t λ + log det ( I + t v v ⊤ ) = t r Y + t λ + log ( 1 + t ) , \mathrm{tr}(YX)+\log \det X =\mathrm{tr} Y +t\lambda+\log \det(I+tvv^{\top})=\mathrm{tr} Y+t\lambda+\log(1+t), tr(YX)+logdetX=trY+tλ+logdet(I+tvv⊤)=trY+tλ+log(1+t),当 t → ∞ t \rightarrow \infty t→∞时,上式无界。接下来考虑 Y ≺ 0 Y \prec 0 Y≺0的情形,为了求最大值,令对 X X X的偏导为零,则 ∇ X ( t r ( Y X ) + log det X ) = Y + X − 1 = 0 \nabla_X(\mathrm{tr}(YX)+\log \det X)=Y+X^{-1}=0 ∇X(tr(YX)+logdetX)=Y+X−1=0得 X = − Y − 1 X=-Y^{-1} X=−Y−1( X X X是正定的)。因此 f ∗ ( Y ) = log det ( − Y ) − 1 − n , f^{*}(Y)=\log \det(-Y)^{-1}-n, f∗(Y)=logdet(−Y)−1−n,其定义域为 d o m f ∗ = − S + + n \mathrm{dom}f^{*}=-\mathrm{S}_{++}^{n} domf∗=−S++n。
2.4 示性函数
设 I S I_S IS是某个集合 S ⊆ R n S \subseteq \mathrm{R}^n S⊆Rn(不一定是凸集)的示性函数,即当 x x x在 d o m I S = S \mathrm{dom}I_S=S domIS=S内时, I S ( x ) = 0 I_S(x)=0 IS(x)=0。示性函数的共轭函数为 I S ∗ ( y ) = s u p x ∈ S y ⊤ x , I^{*}_S(y)=\underset{x \in S}{\mathrm{sup}}y^{\top}x, IS∗(y)=x∈Ssupy⊤x,它是集合 S S S的支撑函数。
2.5 指数和的对数函数
为了得到指数和的对数函数
f
(
x
)
=
log
(
∑
i
=
1
n
e
x
i
)
f(x)=\log (\sum\limits_{i=1}^{n}e^{x_i})
f(x)=log(i=1∑nexi)的共轭函数,首先考察
y
y
y取何值时
y
⊤
x
−
f
(
x
)
y^{\top}x-f(x)
y⊤x−f(x)的最大值可以得到。对
x
x
x求导,令其为零,得到如下条件:
y
i
=
e
x
i
∑
j
=
1
n
e
x
j
,
i
=
1
,
⋯
,
n
.
y_i=\frac{e^{x_i}}{\sum\limits_{j=1}^{n}e^{x_j}},i=1,\cdots,n.
yi=j=1∑nexjexi,i=1,⋯,n.当且仅当
y
≻
0
y \succ 0
y≻0以及
1
⊤
y
=
1
\boldsymbol{1}^{\top}y=1
1⊤y=1时上述方程有解。将
y
i
y_i
yi的表达式代入
y
⊤
x
−
f
(
x
)
y^{\top}x-f(x)
y⊤x−f(x)可得
f
∗
(
y
)
=
∑
i
=
1
n
y
i
log
y
i
f^{*}(y)=\sum\limits_{i=1}^{n}y_i\log y_i
f∗(y)=i=1∑nyilogyi。根据前面的约定,
0
log
0
0 \log 0
0log0等于0,因此只要满足
y
⪰
0
y \succeq 0
y⪰0以及
1
⊤
y
=
1
\boldsymbol{1}^{\top}y=1
1⊤y=1,即使当
y
y
y的某些分量为零时,
f
∗
f^{*}
f∗的表达式仍然正确。
&esmsp; 事实上
f
∗
f^{*}
f∗的定义域即为
1
⊤
y
=
1
,
y
⪰
0
\boldsymbol{1}^{\top}y=1,y \succeq0
1⊤y=1,y⪰0。为了说明这一点,假设
y
y
y的某个分量是负的,比如说
y
k
<
0
y_k < 0
yk<0,令
x
k
=
−
t
x_k=-t
xk=−t,
x
i
=
0
x_i=0
xi=0,
i
≠
k
i \neq k
i=k,令
t
t
t趋向于无穷,
y
⊤
x
−
f
(
x
)
y^{\top}x-f(x)
y⊤x−f(x)无上界。如果
y
⪰
0
y \succeq 0
y⪰0但是
1
⊤
y
≠
1
\boldsymbol{1}^{\top}y \neq1
1⊤y=1,令
x
=
t
1
x=t_1
x=t1,可得
y
⊤
x
−
f
(
x
)
=
t
1
⊤
y
−
t
−
log
n
.
y^{\top}x-f(x)=t_1^{\top}y-t-\log n.
y⊤x−f(x)=t1⊤y−t−logn.若
1
⊤
y
>
1
\boldsymbol{1}^{\top}y>1
1⊤y>1,当
t
→
∞
t \rightarrow \infty
t→∞时上述表达式无界;当
1
⊤
y
<
1
\boldsymbol{1}^{\top}y < 1
1⊤y<1时,若
t
→
t \rightarrow
t→时其无界。总之
f
∗
(
y
)
=
{
∑
i
=
1
n
y
i
log
y
i
y
⪰
0
and
1
⊤
y
=
1
∞
o
t
h
e
r
w
i
s
e
f^{*}(y)=\left\{\begin{array}{ll}\sum\limits_{i=1}^{n}y_i \log y_i & y \succeq 0 \text{and} \boldsymbol{1}^{\top}y=1 \\ \infty &\mathrm{otherwise}\end{array}\right.
f∗(y)=⎩⎨⎧i=1∑nyilogyi∞y⪰0and1⊤y=1otherwise换言之,指数和的对数函数的共轭函数是概率单纯形内的负熵函数。
2.6 范数
令 ∥ ⋅ ∥ \|\cdot\| ∥⋅∥表示 R n \mathrm{R}^{n} Rn上的范数,其对偶范数为 ∥ ⋅ ∥ ∗ \|\cdot\|_{*} ∥⋅∥∗。则其共轭函数为 f ∗ ( y ) = { 0 ∥ y ∥ ∗ ≤ 1 ∞ o t h e r w i s e f^{*}(y)=\left\{\begin{array}{ll}0 & \|y\|_{*}\leq 1\\\infty&\mathrm{otherwise}\end{array}\right. f∗(y)={0∞∥y∥∗≤1otherwise即范数的共轭函数是对偶范数单位球的示性范数。如果 ∥ y ∥ ∗ > 1 \|y\|_{*}>1 ∥y∥∗>1,根据对偶范数的定义,存在 z ∈ R n z \in \mathrm{R}^{n} z∈Rn, ∥ z ∥ ≤ 1 \|z\|\leq1 ∥z∥≤1使得 y ⊤ z > 1 y^{\top}z>1 y⊤z>1。取 x = t z x=tz x=tz,令 t → ∞ t \rightarrow\infty t→∞可得 y ⊤ x − ∥ x ∥ = t ( y ⊤ z − ∥ z ∣ ∣ ) → ∞ , y^{\top}x-\|x\|=t(y^{\top}z-\|z||)\rightarrow \infty, y⊤x−∥x∥=t(y⊤z−∥z∣∣)→∞,即 f ∗ ( y ) = ∞ f^{*}(y)=\infty f∗(y)=∞,没有上界。反之,若 ∥ y ∥ ∗ ≤ 1 \|y\|_{*}\leq 1 ∥y∥∗≤1,对任意 x x x,有 y ⊤ x ≤ ∥ x ∥ ∥ y ∥ ∗ y^{\top}x \leq \|x\|\|y\|_{*} y⊤x≤∥x∥∥y∥∗,即对任意 x x x, y ⊤ x − ∥ x ∥ ≤ 0 y^{\top}x-\|x\|\leq 0 y⊤x−∥x∥≤0。因此,在 x = 0 x=0 x=0处, y ⊤ x − ∥ x ∥ y^{\top}x-\|x\| y⊤x−∥x∥达到最大值0。
2.7 范数的平方
考虑函数 f ( x ) = 1 2 ∥ x ∥ 2 f(x)=\frac{1}{2}\|x\|^{2} f(x)=21∥x∥2,其中 ∥ ⋅ ∥ \|\cdot\| ∥⋅∥是范数,对偶范数为 ∥ ⋅ ∥ ∗ \|\cdot\|_{*} ∥⋅∥∗。此函数的共轭函数为 f ∗ ( y ) = 1 2 ∥ y ∥ ∗ 2 f^{*}(y)=\frac{1}{2}\|y\|_{*}^{2} f∗(y)=21∥y∥∗2。由 y ⊤ x ≤ ∥ y ∥ ∗ ∥ x ∥ y^{\top}x \leq\|y\|_{*}\|x\| y⊤x≤∥y∥∗∥x∥可知,对任意 x x x下式成立 y ⊤ x − 1 2 ∥ x ∥ 2 ≤ ∥ y ∥ ∗ ∥ x ∥ − 1 2 ∥ x ∥ 2 . y^{\top}x-\frac{1}{2}\|x\|^2\leq \|y\|_{*}\|x\|-\frac{1}{2}\|x\|^2. y⊤x−21∥x∥2≤∥y∥∗∥x∥−21∥x∥2.上式右端是 ∥ x ∥ \|x\| ∥x∥的二次函数,其最大值为 ( 1 / 2 ) ∥ y ∥ ∗ 2 (1/2)\|y\|^2_{*} (1/2)∥y∥∗2。因此对任意 x x x,则有 y ⊤ x − ( 1 / 2 ) ∥ x ∥ 2 ≤ ( 1 / 2 ) ∥ y ∥ ∗ 2 , y^{\top}x-(1/2)\|x\|^{2}\leq(1/2)\|y\|_{*}^{2}, y⊤x−(1/2)∥x∥2≤(1/2)∥y∥∗2,即 f ∗ ( y ) ≤ ( 1 / 2 ) ∥ y ∥ ∗ 2 f^{*}(y)\leq(1/2)\|y\|^{2}_{*} f∗(y)≤(1/2)∥y∥∗2。为了说明 f ∗ ( y ) ≥ ( 1 / 2 ) ∥ y ∥ ∗ f^{*}(y)\geq(1/2)\|y\|_{*} f∗(y)≥(1/2)∥y∥∗,任取满足 y ⊤ x = ∥ y ∥ ∗ ∥ x ∥ y^{\top}x=\|y\|_{*}\|x\| y⊤x=∥y∥∗∥x∥的向量 x x x,对其进行伸缩使得 ∥ x ∥ = ∥ y ∥ ∗ \|x\|=\|y\|_{*} ∥x∥=∥y∥∗。对于此 x x x有 y ⊤ x − ( 1 / 2 ) ∥ x ∥ 2 = ( 1 / 2 ) ∥ y ∥ ∗ 2 , y^{\top}x-(1/2)\|x\|^{2}=(1/2)\|y\|^{2}_{*}, y⊤x−(1/2)∥x∥2=(1/2)∥y∥∗2,因此 f ∗ ( y ) ≥ ( 1 / 2 ) ∥ y ∥ ∗ 2 f^{*}(y)\geq (1/2)\|y\|_{*}^{2} f∗(y)≥(1/2)∥y∥∗2。
3.基本性质
3.1 Fenchel 不等式
从共轭函数的定义可以得到,对任意
x
x
x和
y
y
y,如下不等式成立
f
(
x
)
+
f
(
y
)
≥
x
⊤
y
,
f(x)+f(y)\geq x^{\top}y,
f(x)+f(y)≥x⊤y,上述不等式为Fenchel不等式(当
f
f
f可微的时候亦称Young不等式)。
以函数
f
(
x
)
=
(
1
/
2
)
x
⊤
Q
x
f(x)=(1/2)x^{\top}Qx
f(x)=(1/2)x⊤Qx为例,其中
Q
∈
S
+
+
n
Q \in \mathrm{S}^{n}_{++}
Q∈S++n,可以得到如下不等式
x
⊤
y
≤
(
1
/
2
)
x
⊤
Q
x
+
(
1
/
2
)
y
⊤
Q
−
1
y
.
x^{\top}y \leq (1/2)x^{\top}Qx+(1/2)y^{\top}Q^{-1}y.
x⊤y≤(1/2)x⊤Qx+(1/2)y⊤Q−1y.
3.2 共轭的共轭
凸函数的共轭函数的共轭函数是原函数。也即:如果函数 f f f是凸函数且 f f f是闭的(即 e p i f \mathrm{epi} f epif是闭集),则 f ∗ ∗ = f f^{**}=f f∗∗=f。
3.3 可微函数
可微函数
f
f
f的共轭函数亦称为函数
f
f
f的Legendre变换。(为了区分一般情况和可微情况下所定义的共轭,一般函数的共轭有时称为Fenchel共轭。)
设函数
f
f
f是凸函数且可微,其定义域为
d
o
m
f
=
R
n
\mathrm{dom}f=\mathrm{R}^{n}
domf=Rn,使
y
⊤
x
−
f
(
x
)
y^{\top}x-f(x)
y⊤x−f(x)取最大的
x
∗
x^{*}
x∗满足
y
=
∇
f
(
x
∗
)
y=\nabla f(x^{*})
y=∇f(x∗),反之,若
x
∗
x^{*}
x∗满足KaTeX parse error: Expected '}', got 'EOF' at end of input: …\nabla f(x^{*]),y^{\top}x-f(x)在
x
∗
x^{*}
x∗处取最大值。因此如果
y
=
∇
f
(
x
∗
)
y=\nabla f(x^{*})
y=∇f(x∗),则有
f
∗
(
y
)
=
x
∗
∇
f
(
x
∗
)
−
f
(
x
∗
)
.
f^{*}(y)=x^{*}\nabla f(x^{*})-f(x^{*}).
f∗(y)=x∗∇f(x∗)−f(x∗).所以,给定任意
y
y
y,我们可以求解梯度方程
y
=
∇
f
(
z
)
y=\nabla f(z)
y=∇f(z),从而得到
y
y
y处的共轭函数
f
∗
(
y
)
f^{*}(y)
f∗(y)。亦可以换个角度理解,任选
z
∈
R
n
z \in \mathrm{R}^{n}
z∈Rn,令
y
=
∇
f
(
z
)
y=\nabla f(z)
y=∇f(z),则
f
∗
(
y
)
=
z
⊤
∇
f
(
z
)
−
f
(
z
)
.
f^{*}(y)=z^{\top}\nabla f(z)-f(z).
f∗(y)=z⊤∇f(z)−f(z).
3.4 伸缩变换和复合仿射变换
若 a > 0 a>0 a>0以及 b ∈ R b \in \mathrm{R} b∈R, g ( x ) = a f ( x ) + b g(x)=af(x)+b g(x)=af(x)+b的共轭函数为 g ∗ ( y ) = a f ∗ ( y / a ) − b g^{*}(y)=af^{*}(y/a)-b g∗(y)=af∗(y/a)−b。设 A ∈ R n × n A \in \mathrm{R}^{n \times n} A∈Rn×n非奇异, b ∈ R n b\in \mathrm{R}^{n} b∈Rn,则函数 g ( x ) = f ( A x + b ) g(x)=f(Ax+b) g(x)=f(Ax+b)的共轭函数为 g ∗ ( y ) = f ∗ ( A − ⊤ y ) − b ⊤ A − ⊤ y , g^{*}(y)=f^{*}(A^{-\top}y)-b^{\top}A^{-\top}y, g∗(y)=f∗(A−⊤y)−b⊤A−⊤y,其定义域为 d o m g ∗ = A ⊤ d o m f ∗ \mathrm{dom}g^{*}=A^{\top}\mathrm{dom}f^{*} domg∗=A⊤domf∗。
3.5 独立函数的和
如果函数 f ( u , v ) = f 1 ( u ) + f 1 ( v ) f(u,v)=f_1(u)+f_1(v) f(u,v)=f1(u)+f1(v),其中 f 1 f_1 f1和 f 2 f_2 f2是凸函数,且共轭函数分别为 f 1 ∗ f^{*}_1 f1∗和 f 2 ∗ f^{*}_2 f2∗,则 f ∗ ( w , z ) = f 1 ∗ ( w ) + f 2 ∗ ( z ) f^{*}(w,z)=f^{*}_1(w)+f^{*}_2(z) f∗(w,z)=f1∗(w)+f2∗(z)换言之,独立函数的和的共轭函数是各个凸函数的共轭函数的和。(“独立”的含义是各个函数具有不同的变量。)