我试图找到马尔可夫链的平衡分布,这意味着找到代表它的转移矩阵的特征值,但是,eig函数自动标准化它返回的特征向量,在MatLab中有一个标志你可以传递给函数停止这种行为
eig(X, '不平衡')
其中 X 是矩阵。看http://www.mathworks.com/help/techdoc/ref/eig.html http://www.mathworks.com/help/techdoc/ref/eig.html。但是,当我在八度音程中尝试此操作时,我收到一个错误:
错误:eig:错误类型参数“sq_string”
我还应该调用其他函数吗?
Cheers
如果您的目标是计算马尔可夫链的均衡分布,请查看麦克统计距离 http://pmtk3.googlecode.com/svn/trunk/toolbox/BasicModels/markov/sub/mcStatDist.m函数实现从PMTK3工具箱 http://code.google.com/p/pmtk3/。它显示了计算结果的四种不同方法。例子:
TR = rand(3,3); %# random transition matrix
TR = bsxfun(@rdivide, TR, sum(TR,2)); %# normalize so that rows sum to one
[V,D] = eig(TR'); %'# eigen-decomposition
EQ = V(:,1) ./ sum(V(:,1)); %# state equilibrium distribution
正如链接代码的注释中所述,这种方法在某些情况下可能在数值上不稳定,因此您可能需要考虑其他选项之一......
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)