DennyQi's Log

03 Entropy Rate

随机过程(Stochastic Process)

在渐进均分性中,我们讨论的是一列独立同分布的随机变量。现在我们要讨论一列并不独立同分布的随机变量,这样的一列随机变量通常被称为一个“随机过程”,记为X1,X2,,Xt,X_1,X_2,\cdots,X_t,\cdots。随机变量XiX_i的下标ii通常称为时间(必须是整数,但可以是负数),这样我们就能把这列随机变量看作一个随时间变化的状态。例如一维数轴上的随机游走就是一个随机过程。在这里,我们认为XiX_i的取值个数是可数的,这样的随机过程称为离散的随机过程。

一个随机过程的特性通过联合分布Pr[X1=a1X2=a2Xt=at],t\Pr[X_1=a_1\land X_2=a_2\land \cdots \land X_t=a_t],\forall t来刻画(假设tt从1开始)。如果对于任意的整数n,ln,l,联合分布都满足Pr[X1=a1Xn=an]\Pr[X_1=a_1\land \cdots \land X_n=a_n] =Pr[X1+l=a1+l\andXn+l=an+l]=\Pr[X_{1+l}=a_{1+l}\and\cdots\land X_{n+l}=a_{n+l}],就称这个随机过程是stationary(平稳)的。也即这个随机过程中变量的分布是与时间无关的。如果一个随机过程满足对任意的时间tt都有Pr[Xt=atXt1=at1,,X1=a1]=\Pr[X_t=a_t\mid X_{t-1}=a_{t-1},\cdots,X_1=a_1]= Pr[Xt=atXt1=at1]\Pr[X_t=a_t\mid X_{t-1}=a_{t-1}],也即每个随机变量的取值分布都只与前一时间的随机变量有关,就称这个随机过程是一个(离散)马尔可夫链(Discrete Markov Chain)。一维随机游走就是一个马尔可夫链。如果XtX_t可能的取值是有限的,假设不超过nn种,那么我们就能用一个n×nn\times n的矩阵PtP_t来描述Pr[Xt=atXt1=at1]\Pr[X_t=a_t\mid X_{t-1}=a_{t-1}]。这称为这个马尔可夫链的状态转移矩阵。对于一个stationary的马尔可夫链,状态转移矩阵与时间tt无关,那么只需要一个矩阵PP以及初始分布X1X_1就可以完全刻画这个马尔可夫链:设XtX_t的分布为μt\mu_t,那么μtP=μt+1\mu_t^\top P=\mu_{t+1}^\top。由此,μt=μ1Pt1\mu_t^\top=\mu_1^\top P^{t-1}

对于stationary的有限马尔可夫链,如果存在一个分布π\pi满足πP=π\pi^\top P=\pi^\top,也即状态转移后分布不变,那么称π\pi为一个稳态分布(Stationary Distribution)。我们可以证明,stationary的马尔可夫链一定存在一个稳态分布(证明:即证方程Pπ=πP^\top \pi=\pi有界,这等价于PP^\top有特征值1。chihao的随机过程中给出了具体证明)。

熵率(Entropy Rate)

一个随机过程的熵率定义为H(X)=limn1nH(X1,X2,,Xn)H(\mathcal{X})=\lim\limits_{n\to\infty}\dfrac{1}{n}H(X_1,X_2,\cdots,X_n),它描述前nn个随机变量的联合熵取平均值随nn趋向无穷后的取值。

对于一个stationary的随机过程,熵率是well-defined的,因为我们可以证明这一极限始终存在。根据链式法则,H(X1,,Xn)=i=1nH(XiX1,,Xi1)H(X_1,\cdots,X_n)=\sum\limits_{i=1}^{n}H(X_i\mid X_1,\cdots,X_{i-1}),于是limn1ni=1nH(XiX1,,Xi1)\lim\limits_{n\to\infty} \dfrac{1}{n}\sum\limits_{i=1}^{n}H(X_i\mid X_1,\cdots,X_{i-1})。现在对于stationary的随机过程,我们注意到H(XnX1,,Xn1)H(X_n\mid X_1,\cdots,X_{n-1})一定是收敛的:根据条件熵的性质,始终成立H(Xn+1X1,,Xn)H(Xn+1X2,,Xn)H(X_{n+1}\mid X_1,\cdots, X_n)\leq H(X_{n+1}\mid X_2,\cdots,X_n),而根据stationary这就等于H(XnX1,,Xn1)H(X_{n}\mid X_1,\cdots,X_{n-1})。也即H(XnX1,,Xn1)H(X_n\mid X_1,\cdots,X_{n-1})一定是随nn递减的,而由于熵是非负的,它有下界00。那么根据单调有界必收敛,H(XnX1,,Xn1)H(X_n\mid X_1,\cdots,X_{n-1})一定收敛,我们把这个极限记为H(X)H'(\mathcal{X})。根据Cauchy命题,熵率H(X)H(\mathcal{X})恰好等于这个极限H(X)H'(\mathcal{X})。因此对于stationary的随机过程,也可以定义熵率为limnH(XnX1,,Xn1)\lim\limits_{n\to\infty}H(X_n\mid X_1,\cdots,X_{n-1})。这通常是更容易计算的,它描述了前nn个随机变量对随后的随机变量贡献的信息的极限情况。换言之,它描述了随着时间增长时熵的增长率

对于stationary的马尔可夫链,H(X)=H(X)=limnH(XnX1,,Xn1)=limnH(XnXn1)H(\mathcal{X})=H'(\mathcal{X})=\lim\limits_{n\to\infty}H(X_n\mid X_1,\cdots,X_{n-1})=\lim\limits_{n\to\infty}H(X_n\mid X_{n-1}) =limnH(X2X1)=H(X2X1)=\lim\limits_{n\to\infty}H(X_2\mid X_{1})=H(X_2\mid X_{1})。设X1X_1的可能取值集合为{vi}\{v_i\},取viv_i的概率为μi\mu_i,则H(X2X1)=iμiH(X2X1=vi)H(X_2\mid X_1)=\sum\limits_{i}\mu_i H(X_2\mid X_1=v_i) =iμij(PijlogPij)=\sum\limits_{i}\mu_i\sum\limits_{j}(-P_{ij}\log P_{ij})。对于一般的马尔可夫链,我们可以证明(见chihao的随机过程)如果它满足irreducible与aperiodic,那么它有唯一的稳态分布,并且任意初始分布都会收敛于稳态分布。自然,此时取μ\mu为这个稳态分布代入上式依然会得到正确的熵率。

马尔可夫链的函数

对于stationary马尔可夫链X1,,Xn,X_1,\cdots,X_n,\cdots和函数ϕ\phi,由ϕ\phi给出了新的一列随机变量Yi=ϕ(Xi)Y_i=\phi(X_i),我们称它为马尔可夫链X\mathcal{X}的函数Y\mathcal{Y}。此时,我们并不能由此说明YiY_i是马尔可夫链。事实上很多时候Y\mathcal{Y}并不是马尔可夫链。然而由于X\mathcal{X}是时间无关的(stationary),因此Y\mathcal{Y}也势必是时间无关的。因此,用同样的方法可以论证熵率H(Y)=H(Y)=limnH(YnY1,,Yn1)H(\mathcal{Y})=H'(\mathcal{Y})=\lim\limits_{n\to\infty}H(Y_n\mid Y_1,\cdots,Y_{n-1})依然是well-defined的。

在计算熵率H(Y)H(\mathcal{Y})时,如果仅仅计算H(YnY1,,Yn1)H(Y_n\mid Y_1,\cdots,Y_{n-1})是难以判断收敛的,因为收敛数列本身的差分是不足以判断收敛情况的(调和级数就是例子)。为此,我们希望能给出H(Y)H(\mathcal{Y})的关于nn的上下界,如果上下界充分靠近就能判定收敛。在定义stationary随机过程的熵率时,我们已经证明了单调递减性H(Yn+1Y1,,Yn)H(YnY1,,Yn1)H(Y_{n+1}\mid Y_1,\cdots, Y_n)\leq H(Y_{n}\mid Y_1,\cdots,Y_{n-1}),这其实已经给出了上界H(Y)H(YnY1,,Yn1)H(\mathcal{Y})\leq H(Y_n\mid Y_1,\cdots,Y_{n-1})始终成立。对于下界,我们惊奇地发现只要把Y1Y_1替换为X1X_1,就得到了下界H(Y)H(YnX1,Y2,,Yn1)H(\mathcal{Y})\geq H(Y_n\mid X_1,Y_2,\cdots,Y_{n-1}),并且

这一对上下界最终会夹逼收敛到H(Y)H(\mathcal{Y})。推导如下:由于Y1Y_1X1X_1的函数,因此在H(YnX1,Y2,Yn1)H(Y_{n}\mid X_1,Y_2\cdots,Y_{n-1})中增加条件Y1Y_1并不会改变熵的大小,于是H(YnX1,Y2,,Yn1)=H(YnX1,Y1,Y2,,Yn1)H(Y_{n}\mid X_1,Y_2,\cdots,Y_{n-1})=H(Y_{n}\mid X_1,Y_1,Y_2,\cdots,Y_{n-1})。而XX是马尔可夫链,所以再往里加入X0,X1,X_0,X_{-1},\cdots以及对应的函数值Y0,Y1,Y_0,Y_{-1},\cdots所有这些过时的条件也完全不能改变熵,因此又有=H(YnXk,,X0,X1,Yk,,Y0,Y1,Y2,,Yn1)=H(Y_n\mid X_{-k},\cdots,X_0,X_1,Y_{-k},\cdots,Y_0,Y_1,Y_2,\cdots,Y_{n-1})。现在丢掉所有XX的条件,熵会变大,也即H(YnYk,,Y0,Y1,,Yn1)\leq H(Y_n\mid Y_{-k},\cdots,Y_0,Y_1,\cdots,Y_{n-1})。根据stationary,平移k+1k+1个时间单位,得到H(YnX1,Y2,Yn1)H(Y_{n}\mid X_1,Y_2\cdots,Y_{n-1})\leq H(Yn+k+1Y1,,Yn+k)H(Y_{n+k+1}\mid Y_1,\cdots,Y_{n+k})。RHS在kk\to\infty时就是H(Y)H(\mathcal{Y}),因此H(YnX1,Y2,Yn1)H(Y)H(Y_{n}\mid X_1,Y_2\cdots,Y_{n-1})\leq H(\mathcal{Y})。最后我们要验证nn\to \infty时,H(YnY1,,Yn1)H(YnX1,Y2,,Yn1)0H(Y_n\mid Y_1,\cdots,Y_{n-1})-H(Y_n\mid X_1,Y_2,\cdots,Y_{n-1})\to 0。首先,把H(YnX1,Y2,,Yn1)H(Y_n\mid X_1,Y_2,\cdots,Y_{n-1})写作H(YnX1,Y1,Y2,,Yn1)H(Y_n\mid X_1,Y_1,Y_2,\cdots,Y_{n-1}),那么这个差可以等价地写作互信息I(Yn;X1Y1,,Yn1)I(Y_n;X_1\mid Y_1,\dots,Y_{n-1})。要证它趋于0,只需证级数i=1I(Yi;X1Y1,,Yi1)\sum\limits_{i=1}^{\infty}I(Y_i;X_1\mid Y_1,\cdots,Y_{i-1})收敛,而根据链式法则,这个级数等价于limnI(X1;Y1,Y2,,Yn)\lim\limits_{n\to\infty}I(X_1;Y_1,Y_2,\cdots,Y_n)。而I(X1;Y1,,Yn)I(X_1;Y_1,\cdots,Y_n)始终有上界H(X1)H(X_1),并且级数i=1I(Yi;X1Y1,,Yi1)\sum\limits_{i=1}^{\infty}I(Y_i;X_1\mid Y_1,\cdots,Y_{i-1})显然是正项的。因此收敛得证。

最终我们得到了夹逼:H(YnX1,Y2,Yn1)H(Y)H(YnY1,,Yn1)H(Y_{n}\mid X_1,Y_2\cdots,Y_{n-1})\leq H(\mathcal{Y})\leq H(Y_n\mid Y_1,\cdots,Y_{n-1})