《机器学习》西瓜书习题解答 - 1.6 矩阵、优化和概率分布
📋 题目
第1章 第1.6题
教材附录A中介绍了矩阵的性质,随机矩阵(stochastic matrix)和双随机矩阵(doubly stochastic matrix)在机器学习中经常出现,常用于运筹学、经济学、交通运输等不同领域中。
定义1.1(随机矩阵)
设矩阵 X ∈ ℝ^(d×d) 是非负矩阵,若满足:
∑j=1dxij=1,i=1,2,⋯ ,d\sum_{j=1}^{d} x_{ij} = 1, \quad i=1,2,\cdots,dj=1∑dxij=1,i=1,2,⋯,d
即矩阵每行和为1,则称矩阵 X 为随机矩阵(stochastic matrix)。
如果 X 还满足:
∑i=1dxij=1,j=1,2,⋯ ,d\sum_{i=1}^{d} x_{ij} = 1, \quad j=1,2,\cdots,di=1∑dxij=1,j=1,2,⋯,d
即矩阵每列和为1,则称矩阵 X 为双随机矩阵。
问题: 对于双随机矩阵 X ∈ ℝ^(d×d),回答以下问题:
-
定义矩阵 X 的统计量 H(X) = -∑_{i,j} x_{ij} log x_{ij},试证明:H(X) ≤ d log d
-
矩阵谱半径(spectral radius)的定义为特征值取模后的最大值:ρ(X) = max_i |λ_i|。请证明 X 的谱半径 ρ(X)=1,且1是 X 的特征值。
证明过程中可基于Perron-Frobenius定理。
🎯 题目分析
考察知识点
这道题主要考察以下内容:
- 随机矩阵与双随机矩阵的性质
- 信息熵的概念及其最大值问题
- 矩阵特征值理论
- Perron-Frobenius定理的应用
- 凸优化中的Jensen不等式
题目意图
这道题想让我们理解双随机矩阵在机器学习中的重要性质。第一问通过信息熵的角度,让我们认识到双随机矩阵的"均匀性"——当矩阵元素越均匀分布时,熵越大。第二问则从谱理论角度,揭示双随机矩阵的稳定性特征,这在马尔可夫链、图论、以及各种迭代算法中都有重要应用。
📚 必备基础知识
概念1:双随机矩阵
定义: 一个非负矩阵,其每行之和与每列之和都等于1。
通俗理解: 可以把双随机矩阵想象成一个"公平的转移规则"——无论从行看还是从列看,概率分布都是归一化的。例如,在一个完全对称的网络中,节点之间的转移概率矩阵就可能是双随机的。
数学表达: X ∈ ℝ^(d×d),满足 x_{ij} ≥ 0,∑_j x_{ij} = 1(行和),∑_i x_{ij} = 1(列和)
概念2:信息熵
定义: 信息熵是衡量随机变量不确定性的度量。
通俗理解: 熵越大,表示系统越"混乱"或"均匀"。对于概率分布,当所有事件等概率发生时,熵达到最大值。
数学表达: 对于离散概率分布 p₁, p₂, ⋯, pₙ,熵定义为 H = -∑_{i=1}^{n} p_i log p_i
概念3:Jensen不等式
定义: 对于凸函数 f,有 f(𝔼[X]) ≤ 𝔼[f(X)];对于凹函数,不等号反向。
通俗理解: 函数作用在平均值上的结果,与先作用再平均的结果,存在大小关系。
数学表达: 由于 -x log x 是凹函数,因此 -𝔼[X log X] ≤ -𝔼[X] log 𝔼[X]
概念4:Perron-Frobenius定理
定义: 对于非负矩阵,存在非负的最大特征值,称为Perron根。
关键结论: 对于正的或不可约非负矩阵,Perron根是单重的,且对应的特征向量可以取为正向量。
数学表达: 若 A ≥ 0,则存在 λ_max ≥ 0,使得 |λ| ≤ λ_max 对所有特征值 λ 成立。
概念5:谱半径
定义: 矩阵所有特征值的模的最大值。
通俗理解: 谱半径刻画了矩阵作为线性变换时的"最大拉伸倍数"。
数学表达: ρ(A) = max_i |λ_i|
💡 解题思路
解决这道题的整体思路是:
第一问思路
- 第一步: 将问题转化为求熵的最大值问题
- 第二步: 利用拉格朗日乘数法或Jensen不等式
- 第三步: 证明当所有元素相等时(即 x_{ij} = 1/d)熵达到最大值 d log d
第二问思路
- 第一步: 利用双随机矩阵的性质,构造特征向量
- 第二步: 证明1是特征值(全1向量是特征向量)
- 第三步: 利用Perron-Frobenius定理和Gerschgorin圆盘定理证明谱半径等于1
📝 详细解答
第一问:证明 H(X) ≤ d log d
步骤一:理解问题的本质
要做什么:
我们需要证明双随机矩阵的熵有上界,这个上界是 d log d。
具体过程:
矩阵 X 有 d² 个元素,可以将它们看作一个离散概率分布(因为所有元素非负且总和为 d)。为了应用熵的性质,我们先归一化:
定义 p_{ij} = x_{ij}/d
由于 X 是双随机矩阵,有:
∑i,jxij=∑i∑jxij=∑i1=d\sum_{i,j} x_{ij} = \sum_i \sum_j x_{ij} = \sum_i 1 = di,j∑xij=i∑j∑xij=i∑1=d
因此 ∑_{i,j} p_{ij} = 1,p_{ij} 构成概率分布。
为什么这样做:
将问题转化为标准的概率分布熵问题,便于应用熵的经典结论。
步骤二:应用熵的最大值定理
要做什么:
利用熵在均匀分布时达到最大值的性质。
具体过程:
对于 d² 个元素的离散概率分布,熵的定义为:
H(P)=−∑i,jpijlogpijH(P) = -\sum_{i,j} p_{ij} \log p_{ij}H(P)=−i,j∑pijlogpij
根据信息论的基本定理,当且仅当所有概率相等时,即 p_{ij} = 1/d² 时,熵达到最大值:
H(P)max=log(d2)=2logdH(P)_{max} = \log(d^2) = 2\log dH(P)max=log(d2)=2logd
但这里我们要证明的是:
H(X)=−∑i,jxijlogxij≤dlogdH(X) = -\sum_{i,j} x_{ij} \log x_{ij} \leq d\log dH(X)=−i,j∑xijlogxij≤dlogd
注意到:
H(X)=−∑i,jxijlogxij=−∑i,j(d⋅pij)log(d⋅pij)=−∑i,jd⋅pij(logd+logpij)=−dlogd∑i,jpij−d∑i,jpijlogpij=−dlogd+d⋅H(P)\begin{align} H(X) &= -\sum_{i,j} x_{ij} \log x_{ij} \\ &= -\sum_{i,j} (d \cdot p_{ij}) \log (d \cdot p_{ij}) \\ &= -\sum_{i,j} d \cdot p_{ij} (\log d + \log p_{ij}) \\ &= -d\log d \sum_{i,j} p_{ij} - d\sum_{i,j} p_{ij} \log p_{ij} \\ &= -d\log d + d \cdot H(P) \end{align}H(X)=−i,j∑xijlogxij=−i,j∑(d⋅pij)log(d⋅pij)=−i,j∑d⋅pij(logd+logpij)=−dlogdi,j∑pij−di,j∑pijlogpij=−dlogd+d⋅H(P)
为什么这样做:
通过变量替换,将原问题与标准熵联系起来。
步骤三:利用双随机矩阵的约束
要做什么:
考虑双随机矩阵的特殊约束,找到熵的真正上界。
具体过程:
方法一:利用凹函数性质(Jensen不等式)
函数 f(x) = -x log x 在 x > 0 时是凹函数。
对于双随机矩阵,考虑每一行:
∑j=1dxij=1\sum_{j=1}^{d} x_{ij} = 1j=1∑dxij=1
应用Jensen不等式:
∑j=1d(−xijlogxij)≤−∑j=1dxij⋅log(∑j=1dxijd)=−1⋅log(1d)=logd\sum_{j=1}^{d} (-x_{ij}\log x_{ij}) \leq -\sum_{j=1}^{d} x_{ij} \cdot \log\left(\frac{\sum_{j=1}^{d} x_{ij}}{d}\right) = -1 \cdot \log\left(\frac{1}{d}\right) = \log dj=1∑d(−xijlogxij)≤−j=1∑dxij⋅log(d∑j=1dxij)=−1⋅log(d1)=logd
对所有 d 行求和:
H(X)=∑i=1d∑j=1d(−xijlogxij)≤d⋅logdH(X) = \sum_{i=1}^{d} \sum_{j=1}^{d} (-x_{ij}\log x_{ij}) \leq d \cdot \log dH(X)=i=1∑dj=1∑d(−xijlogxij)≤d⋅logd
等号成立当且仅当每行的所有元素相等,即 x_{ij} = 1/d,此时 X = (1/d)𝟙𝟙^T(全为 1/d 的矩阵)。
方法二:利用拉格朗日乘数法
要最大化 H(X) = -∑_{i,j} x_{ij} log x_{ij}
约束条件:
- ∑_j x_{ij} = 1, ∀i(行和约束)
- ∑_i x_{ij} = 1, ∀j(列和约束)
- x_{ij} ≥ 0
构造拉格朗日函数:
L=−∑i,jxijlogxij+∑iαi(1−∑jxij)+∑jβj(1−∑ixij)\mathcal{L} = -\sum_{i,j} x_{ij}\log x_{ij} + \sum_i \alpha_i\left(1-\sum_j x_{ij}\right) + \sum_j \beta_j\left(1-\sum_i x_{ij}\right)L=−i,j∑xijlogxij+i∑αi(1−j∑xij)+j∑βj(1−i∑xij)
对 x_{ij} 求偏导并令其为0:
∂L∂xij=−logxij−1−αi−βj=0\frac{\partial \mathcal{L}}{\partial x_{ij}} = -\log x_{ij} - 1 - \alpha_i - \beta_j = 0∂xij∂L=−logxij−1−αi−βj=0
得到:
xij=e−1−αi−βjx_{ij} = e^{-1-\alpha_i-\beta_j}xij=e−1−αi−βj
由对称性和约束条件,可以验证 x_{ij} = 1/d 是满足所有约束的解。
代入得:
H(X)max=−d2⋅1dlog1d=dlogdH(X)_{max} = -d^2 \cdot \frac{1}{d} \log\frac{1}{d} = d\log dH(X)max=−d2⋅d1logd1=dlogd
为什么这样做:
通过优化理论,严格证明了上界的存在性和达到条件。
第二问:证明 ρ(X) = 1 且1是特征值
步骤一:证明1是特征值
要做什么:
找到特征值为1的特征向量。
具体过程:
设 e = (1, 1, ⋯, 1)^T ∈ ℝ^d 为全1向量。
计算 Xe:
(Xe)i=∑j=1dxij⋅1=∑j=1dxij=1(X\mathbf{e})_i = \sum_{j=1}^{d} x_{ij} \cdot 1 = \sum_{j=1}^{d} x_{ij} = 1(Xe)i=j=1∑dxij⋅1=j=1∑dxij=1
因为 X 是随机矩阵(每行和为1),所以:
Xe=eX\mathbf{e} = \mathbf{e}Xe=e
这说明 e 是 X 对应于特征值1的右特征向量。
同样,考虑左特征向量。由于 X 是双随机矩阵(每列和也为1):
eTX=eT\mathbf{e}^T X = \mathbf{e}^TeTX=eT
因此1确实是 X 的特征值。
为什么这样做:
利用双随机矩阵的定义直接构造特征向量,这是最直接的证明方法。
步骤二:证明谱半径不超过1
要做什么:
证明所有特征值的模都不超过1。
具体过程:
方法一:利用Gerschgorin圆盘定理
Gerschgorin圆盘定理指出,矩阵的每个特征值都位于某个Gerschgorin圆盘内:
Di={z∈C:∣z−xii∣≤∑j≠i∣xij∣}D_i = \left\{z \in \mathbb{C} : |z - x_{ii}| \leq \sum_{j \neq i} |x_{ij}|\right\}Di=⎩ ⎨ ⎧z∈C:∣z−xii∣≤j=i∑∣xij∣⎭ ⎬ ⎫
对于双随机矩阵 X:
- 0 ≤ x_{ii} ≤ 1
- ∑_{j≠i} x_{ij} = 1 - x_{ii}
因此第 i 个圆盘的中心在 x_{ii},半径为 1-x_{ii},圆盘为:
Di={z:∣z−xii∣≤1−xii}D_i = \{z : |z - x_{ii}| \leq 1 - x_{ii}\}Di={z:∣z−xii∣≤1−xii}
这个圆盘完全包含在单位圆盘 {z : |z| ≤ 1} 内。证明如下:
对于圆盘内任意点 z,有 |z - x_{ii}| ≤ 1 - x_{ii}。
由三角不等式:
∣z∣≤∣z−xii∣+∣xii∣≤(1−xii)+xii=1|z| \leq |z - x_{ii}| + |x_{ii}| \leq (1-x_{ii}) + x_{ii} = 1∣z∣≤∣z−xii∣+∣xii∣≤(1−xii)+xii=1
因此所有特征值满足 |λ| ≤ 1,即 ρ(X) ≤ 1。
方法二:利用矩阵范数
对于任意矩阵 A,谱半径满足:
ρ(A)≤∥A∥\rho(A) \leq \|A\|ρ(A)≤∥A∥
其中 ‖·‖ 是任意算子范数。
对于双随机矩阵 X,其 ∞-范数(最大行和)为:
∥X∥∞=maxi∑j∣xij∣=maxi∑jxij=1\|X\|_{\infty} = \max_i \sum_j |x_{ij}| = \max_i \sum_j x_{ij} = 1∥X∥∞=imaxj∑∣xij∣=imaxj∑xij=1
因此 ρ(X) ≤ 1。
方法三:利用Perron-Frobenius定理
双随机矩阵是非负矩阵。根据Perron-Frobenius定理,存在非负的Perron根 λ_max,且:
mini∑jxij≤λmax≤maxi∑jxij\min_i \sum_j x_{ij} \leq \lambda_{max} \leq \max_i \sum_j x_{ij}iminj∑xij≤λmax≤imaxj∑xij
对于双随机矩阵,所有行和都等于1,因此:
1≤λmax≤11 \leq \lambda_{max} \leq 11≤λmax≤1
即 λ_max = 1。
由于Perron根是所有特征值中模最大的,所以 ρ(X) = 1。
为什么这样做:
从多个角度证明同一结论,增强理解的深度和广度。
步骤三:综合结论
要做什么:
整合前面的结果,给出完整答案。
具体过程:
结合步骤一和步骤二:
- 1是 X 的特征值(已证)
- 所有特征值的模不超过1(已证)
- 由Perron-Frobenius定理,1是最大特征值
因此:ρ(X) = 1
为什么这样做:
逻辑完整,确保证明的严密性。
✅ 最终答案
第一问答案
证明: H(X) ≤ d log d
由于函数 f(x) = -x log x 是凹函数,对双随机矩阵 X 的每一行应用Jensen不等式:
∑j=1d(−xijlogxij)≤−(∑j=1dxij)log(∑j=1dxijd)=logd\sum_{j=1}^{d} (-x_{ij}\log x_{ij}) \leq -\left(\sum_{j=1}^{d} x_{ij}\right) \log\left(\frac{\sum_{j=1}^{d} x_{ij}}{d}\right) = \log dj=1∑d(−xijlogxij)≤−(j=1∑dxij)log(d∑j=1dxij)=logd
对所有 d 行求和:
H(X)=∑i=1d∑j=1d(−xijlogxij)≤dlogdH(X) = \sum_{i=1}^{d}\sum_{j=1}^{d} (-x_{ij}\log x_{ij}) \leq d\log dH(X)=i=1∑dj=1∑d(−xijlogxij)≤dlogd
等号成立当且仅当 x_{ij} = 1/d 对所有 i,j 成立。
第二问答案
证明: ρ(X) = 1 且1是 X 的特征值
(1) 证明1是特征值:
设 e = (1,1,⋯,1)^T,则:
Xe=eX\mathbf{e} = \mathbf{e}Xe=e
因为 (Xe)i = ∑_j x{ij} = 1(随机矩阵性质)
所以1是特征值,e 是对应的特征向量。
(2) 证明 ρ(X) = 1:
利用Gerschgorin圆盘定理,第 i 个圆盘为:
Di={z:∣z−xii∣≤1−xii}D_i = \{z : |z-x_{ii}| \leq 1-x_{ii}\}Di={z:∣z−xii∣≤1−xii}
该圆盘包含在单位圆内,因此所有特征值满足 |λ| ≤ 1。
结合(1),1是特征值,所以:
ρ(X)=maxi∣λi∣=1\rho(X) = \max_i |\lambda_i| = 1ρ(X)=imax∣λi∣=1
🔍 深入理解
直观解释
第一问的直观含义:
双随机矩阵的熵衡量了矩阵元素的"分散程度"。上界 d log d 告诉我们,当矩阵的所有元素都相等(即 x_{ij} = 1/d)时,不确定性最大。这就像一个完全公平的系统——每个状态转移的概率都相同,系统最"混乱"。
在实际应用中,比如随机游走或马尔可夫链,如果转移矩阵接近均匀分布,系统的混合速度会更快,达到平稳分布的时间更短。
第二问的直观含义:
谱半径等于1意味着双随机矩阵作为线性变换,不会"放大"向量的长度(在某种范数意义下)。这保证了迭代过程的稳定性——无论初始状态如何,经过多次转移后,系统不会发散。
特征值1对应的特征向量是全1向量,这表示"均匀分布"是系统的一个不动点。在马尔可夫链中,这对应于平稳分布的存在性。
几何/图形理解
熵的几何解释:
可以将 d² 个矩阵元素看作 d² 维空间中的一个点。双随机矩阵的约束定义了一个凸多面体(Birkhoff多面体)。熵函数在这个多面体上的最大值点是中心点 (1/d, 1/d, ⋯, 1/d)。
谱半径的几何解释:
特征值在复平面上的分布反映了矩阵的动力学性质。对于双随机矩阵,所有特征值都在单位圆内或单位圆上,且1是必有的特征值。这在复平面上形成一个以原点为中心、半径为1的圆盘。
与其他知识点的联系
与机器学习的联系:
-
图神经网络(GNN): 许多GNN的传播矩阵就是(近似)双随机的,这保证了节点特征在传播过程中的稳定性。
-
注意力机制: Softmax归一化后的注意力权重矩阵在某些情况下接近双随机矩阵。
-
数据增强: Mixup等方法本质上是在样本空间中进行凸组合,其权重矩阵具有随机矩阵的性质。
-
优化算法: 分布式优化中的Gossip算法使用双随机矩阵来保证一致性。
与概率论的联系:
- 马尔可夫链的转移矩阵是随机矩阵
- 可逆马尔可夫链的转移矩阵可以转化为双随机矩阵
- 平稳分布对应于特征值1的左特征向量
与线性代数的联系:
- Perron-Frobenius定理
- 矩阵范数理论
- 特征值扰动理论
💎 关键要点总结
通过这道题,我们学到了:
-
核心概念:
- 双随机矩阵兼具行随机和列随机性质,是一类重要的特殊矩阵
- 信息熵刻画了概率分布的不确定性,在均匀分布时达到最大
- 谱半径决定了矩阵迭代的收敛性质
-
解题技巧:
- 利用Jensen不等式处理凹函数的最值问题
- 利用Gerschgorin圆盘定理估计特征值的范围
- 构造特殊向量(如全1向量)来验证特征值的存在性
- 多角度证明同一结论以加深理解
-
常见陷阱:
- 注意区分 H(X) 和标准熵 H§ 的关系(差一个归一化常数)
- Gerschgorin定理给出的是充分条件,不是必要条件
- 双随机矩阵不一定对称,所以特征值可能是复数
-
拓展思考:
- 如果只是随机矩阵(不是双随机),谱半径还是1吗?(是的)
- 双随机矩阵的第二大特征值(spectral gap)有什么意义?(决定收敛速度)
- Birkhoff-von Neumann定理:任何双随机矩阵都可以表示为置换矩阵的凸组合
🤔 自我检验
做完这道题后,问问自己:
- ✅ 我能用自己的话解释为什么双随机矩阵的熵上界是 d log d 吗?
- ✅ 我理解Jensen不等式在证明中的作用吗?能举出其他应用Jensen不等式的例子吗?
- ✅ 我能独立证明全1向量是特征值1对应的特征向量吗?
- ✅ 我理解Gerschgorin圆盘定理的几何意义吗?
- ✅ 我能解释为什么谱半径等于1对马尔可夫链的稳定性很重要吗?
- ✅ 如果矩阵不是双随机的,只是行随机,结论会有什么变化?
📌 相关习题推荐
如果想进一步巩固,可以尝试:
- 附录A 矩阵论基础 - 复习特征值、特征向量的基本性质
- 第3章 线性模型 - 理解正则化与矩阵性质的关系
- 第10章 降维与度量学习 - 矩阵分解与谱方法
- 扩展阅读:
- Perron-Frobenius定理的完整证明
- Markov链的收敛性理论
- 图拉普拉斯矩阵与双随机矩阵的关系
💬 学习建议
针对这道题的建议:
-
打好基础: 确保熟练掌握线性代数中的特征值理论、矩阵范数、以及基本的凸优化知识。
-
多角度理解: 不要满足于一种证明方法,尝试从不同角度(代数、几何、优化)理解同一个结论。
-
联系实际: 思考双随机矩阵在实际问题中的应用,比如网页排名(PageRank)、社交网络分析、推荐系统等。
-
动手计算: 用Python/Matlab构造一些具体的双随机矩阵,计算它们的熵和特征值,验证理论结果。
-
深入阅读:
- Horn & Johnson的《Matrix Analysis》
- Cover & Thomas的《Elements of Information Theory》
- 关于马尔可夫链的经典教材
-
思考变体:
- 如果矩阵元素有额外约束(如稀疏性),熵的上界会如何变化?
- 非方阵的情况如何推广?
- 量子信息中的酉矩阵与双随机矩阵有什么联系?
通用学习建议:
机器学习中的数学不是孤立的,矩阵理论、概率论、优化理论是相互交织的。这道题很好地展示了这种交叉:
- 用概率论的熵概念分析矩阵
- 用优化理论求熵的最大值
- 用线性代数的谱理论分析稳定性
建议在学习时注重这种跨学科的联系,培养综合运用多种数学工具解决问题的能力。
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐


所有评论(0)