查看: 4100|回复: 2|关注: 0

[已答复] 非正定矩阵 cholesky分解

[复制链接]

新手

5 麦片

财富积分


050


2

主题

4

帖子

0

最佳答案
发表于 2014-8-27 20:38:14 | 显示全部楼层 |阅读模式
做rvm预测,可是出现的矩阵式非正定的,程序中要对这个矩阵进行cholesky分解,怎么办?

新手

5 麦片

财富积分


050


1

主题

3

帖子

0

最佳答案
发表于 2014-8-28 07:35:31 | 显示全部楼层
看你做cholesky分解的目的了,如果是一定要对原矩阵进行分解,那就没办法了,矩阵非正定肯定是不能进行cholesky分解的。 如果是为了后续计算的话,我记得matlab官方交换文件的论坛上有个nearestPSD,我正好有用到,是用来找与原矩阵最接近的半正定矩阵的,用完后计算下前后矩阵的误差能否接受就行。
还有就是最好检查下需要分解的矩阵得来的过程是否有问题,比如精度。我现在正好在做关于病态系统的模型预测控制, 就碰到过不同精度下同样的计算得到的矩阵有可能正定也可能是非正定。
暂时想到这么多,希望对你有帮助。
顺便借宝地也问下,有没有大神了解关于病态系统的预处理问题的。比如如何对一个病态系统进行一定的处理,使得这个系统。也就是这个矩阵或者方程组能够变成良态的。自己找到一些正则化的解释但是对于这个东西不是很明白,各位如果有了解的能否帮忙简明扼要的解释一下或者推荐一下相关资料。感谢!

新手

5 麦片

财富积分


050


1

主题

2

帖子

0

最佳答案
发表于 7 天前 | 显示全部楼层
pumpinkbear 发表于 2014-8-28 07:35
看你做cholesky分解的目的了,如果是一定要对原矩阵进行分解,那就没办法了,矩阵非正定肯定是不能进行chol ...

您好,为什么我的matlab help没有nearestSPD这个函数,请问是版本问题还是这个函数需要单独的文件,我的matlab版本是2014a
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /3 下一条

快速回复 返回顶部 返回列表