利用转移矩阵特征向量求马尔可夫链平稳分布的疑问
马尔可夫链平稳分布求解问题解答
为什么直接对P求特征向量得不到π?
马尔可夫链的平稳分布π满足πP = π,这意味着π是矩阵P的左特征向量(对应特征值1)。而eigen(P)默认计算的是右特征向量(满足vP = λv),所以直接得到的特征向量和π无关,自然不是π的比例形式。你发现用eigen(P')是对的,因为转置后,原来的左特征向量就变成了转置矩阵的右特征向量,此时求出来的特征向量才是π的比例形式。
如何归一化特征向量得到π?
特征向量本身是成比例的,只要满足所有元素之和为1,就是合法的平稳分布。步骤如下:
- 从
eigen(P')的结果中,找到对应特征值最接近1的特征向量(数值计算中特征值可能不是精确的1,比如1.0000000001,需筛选误差最小的那个)。 - 提取该特征向量的实部(数值计算可能引入微小虚部,可直接忽略)。
- 计算该向量所有元素的总和,将每个元素除以这个总和,得到的就是归一化后的平稳分布π。
针对你的示例矩阵的计算说明
你的转移矩阵P:
0.5 0.2 0.3 0.6 0.2 0.2 0.1 0.8 0.1
对P'求特征值和特征向量后,若得到对应特征值1的比例向量为[2, 2, 1],计算总和为5,将每个元素除以5,即可得到平稳分布[0.4, 0.4, 0.2]。
内容的提问来源于stack exchange,提问作者fvim
相关产品推荐
相关产品推荐

