Jensen不等式:如果 f 是一个凸函数,X 是一个随机变量,那么:
$ f(\mathbb{E}[X]) \leq \mathbb{E}[f(X)] $
它的含义是,对于凸函数 f 而言:平均值的函数 ≤ 函数的平均值,如果 f 是凹函数,则不等式取反。
想象一下,函数 f 的形状就像一个碗,例如 f(x) = x²,中间向下,两端向上翘起。
在碗中任意选取两点,比如 x₁ 和 x₂。连接 f(x₁) 和 f(x₂) 的弦(即直线)位于曲线上方。这就是凸性的核心,对于任意介于 0 和 1 之间的 t:
$ f(t x_1 + (1-t) x_2) \leq t f(x_1) + (1-t) f(x_2) $
碗底位于上方拉起的弦的下方。
证明过程如下:首先,从两点开始,就是凸性的定义,它是我们的公理。然后,推广到有限点集,使用归纳法。如果对于 2 个点成立,你可以证明对于 3 个、4 个、… 任意 n 个点也成立,对于权重 $ \lambda_i $之和为 1 :
$ f\left( \sum_{i=1}^n \lambda_i x_i \right) \leq \sum_{i=1}^n \lambda_i f(x_i) $
意思是,无论你如何混合碗中的各个点,混合点的高度 ≤ 各点高度之和。
从有限到连续,计算期望。期望值 E[X] 就像是值的“连续混合”,对于离散随机变量:
$ \mathbb{E}[X] = \sum p_i x_i,\quad \mathbb{E}[f(X)] = \sum p_i f(x_i) $
代入有限情况,完成。对于连续变量,可以用离散点近似并取极限。但原理相同:先在定义域内进行混合,然后再应用 f,其结果比先应用 f 再进行混合要好。
在信息论中,詹森不等式是其背后的原因:熵 H(X) 关于 p(x) 是凸的,詹森不等式控制着边界。它告诉我们,随机性(方差)只会增加描述长度,而不会减少它,因为 $ f(x) = \log(1/x) $ 在概率上是凸函数,所以$ D_{\text{KL}} \geq 0$。
詹森不等式不仅仅是一个不等式,它是信息秩序的守护者。它表明,如果你的测量工具是凸函数,那么先混合后测量的结果总是小于或等于先测量后混合的结果。它确保了信息和代码的世界拥有可靠的结构,不会因为平均值而产生意外。
退一步思考,这里的“n 个点”是什么意思?
我们有点 $ x_1, x_2, ..., x_n $ 和权重 $ \lambda_1, \dots, \lambda_n $ ,满足 $ \sum_{i=1}^n \lambda_i = 1 $,且每个 $ \lambda_i \geq 0 $。
我们要证明:$ f\left( \sum_{i=1}^n \lambda_i x_i \right) \leq \sum_{i=1}^n \lambda_i f(x_i) $ 。
从 2 点到 3 点,我们不能简单地“两两平均”。归纳技巧是,我们将前 n 个点视为一个混合点,将第 (n+1) 个点视为第二个混合点。
让我们以 n=3 为例进行说明:设权重分别为 λ₁、λ₂ 和 λ₃,且三者之和为 1,定义:$ t = \lambda_1 + \lambda_2, \quad 1-t = \lambda_3 $。如果 t = 0 或 t = 1,则结论不成立,因此假设 0 < t < 1。
现在,将 x₁ 和 x₂ 分别用归一化权重 λ₁/t 和 λ₂/t 进行混合:$ y = \frac{\lambda_1}{t} x_1 + \frac{\lambda_2}{t} x_2 $,y 是 x₁ 和 x₂ 的加权平均值。
然后:$\sum_{i=1}^3 \lambda_i x_i = t \cdot y + (1-t) \cdot x_3 $。这样,我们就将原本的三点混合简化为 y 和 $ x_3 $ 之间的两点混合。
两次应用凸性:首先对 x₁ 和 x₂ 应用凸性(因为 f 是凸函数):$ f(y) \leq \frac{\lambda_1}{t} f(x_1) + \frac{\lambda_2}{t} f(x_2) $
之后,对 y 和 $ x_3 $ 应用凸性,权重分别为 t 和 1-t:$ f\left( t y + (1-t) x_3 \right) \leq t f(y) + (1-t) f(x_3) $
最后,将步骤 1 中得到的 f(y) 的界限代入步骤 2:$ f\left( t y + (1-t) x_3 \right) \leq t \left[ \frac{\lambda_1}{t} f(x_1) + \frac{\lambda_2}{t} f(x_2) \right] + (1-t) f(x_3) $
化简 $ t \cdot (\lambda_1/t) = \lambda_1 $,得到:
$ f\left( \lambda_1 x_1 + \lambda_2 x_2 + \lambda_3 x_3 \right) \leq \lambda_1 f(x_1) + \lambda_2 f(x_2) + \lambda_3 f(x_3) $
n=3 时完成。
一般的 n → n+1 归纳步骤:假设对 n 个点都成立。对于权重分别为 $ \lambda_1,\dots,\lambda_{n+1} $ 的 n+1 个点 $ x_1,\dots,x_{n+1} $,总和为 1。令 $ t = \sum_{i=1}^n \lambda_i $ ,若 t=0,则为平凡情况;若 t=1,$ \lambda_{n+1}=0 $,则简化为 n 个点的情况。
定义$ y = \sum_{i=1}^n \frac{\lambda_i}{t} x_i $,即前 n 个点的混合。
然后:$ \sum_{i=1}^{n+1} \lambda_i x_i = t y + (1-t) x_{n+1} $
对 y 和 x_{n+1} 应用凸性:$ f\left( t y + (1-t) x_{n+1} \right) \leq t f(y) + (1-t) f(x_{n+1}) $
根据归纳假设,因为 y 是 n 个点的混合:$ f(y) \leq \sum_{i=1}^n \frac{\lambda_i}{t} f(x_i) $
代入:$ f\left( \sum_{i=1}^{n+1} \lambda_i x_i \right) \leq \sum_{i=1}^{n+1} \lambda_i f(x_i) $
归纳完成。
我们不会在成对树中逐一平均所有点,相反,我们会将除一个点之外的所有点组合成山谷中的一个“复合位置” y,然后将 y 与最后一个点融合。凸性保证了,如果融合两个点成立,并且你知道如何将n个点融合成一个“代表”点,那么再添加一个点就相当于再次融合两个点。