最近使用pmtk3工具,做 HMM with Gaussian Mixture Model 的 fitting 的时候总是报错问题是
Sigma is not positive definite.
大致搜了下什么是非正定,以及解决办法。
(I)问题出现:四种情况可以出现此问题
1. 输入的 covariance 或者corelation matrix 非正定。例如在最小二乘规划中需要covariance or correlation 一定要正定的。
ML estimation 也需要这个要求。
2. 渐近互变异收矩阵 (asymptotic covariance matrix)。这个错误不是由于covariance matrix,而是a weight matrix to
be used with asymptotically distribution-free / weighted least squares (ADF/WLS) estimation
3. Sigma 的 estimate
4. other
(II) 什么是非正定
正定矩阵 <=> 矩阵的所有特征值为正
矩阵的正定性和矩阵的determinant有一定的关系。 determinant 是矩阵的标量函数,即求矩阵行列式的值。
一个对称的矩阵,矩阵的正定需要其所有的Principal submatrices 正定。
如果一个矩阵的determinant 是0, 则这个矩阵就是奇异矩阵 Singular matrix (其实就是对应的行列式值为0,或者n*n矩阵M 的秩 Rank(M
Sigma is not positive definite.
大致搜了下什么是非正定,以及解决办法。
(I)问题出现:四种情况可以出现此问题
1. 输入的 covariance 或者corelation matrix 非正定。例如在最小二乘规划中需要covariance or correlation 一定要正定的。
ML estimation 也需要这个要求。
2. 渐近互变异收矩阵 (asymptotic covariance matrix)。这个错误不是由于covariance matrix,而是a weight matrix to
be used with asymptotically distribution-free / weighted least squares (ADF/WLS) estimation
3. Sigma 的 estimate
4. other
(II) 什么是非正定
正定矩阵 <=> 矩阵的所有特征值为正
矩阵的正定性和矩阵的determinant有一定的关系。 determinant 是矩阵的标量函数,即求矩阵行列式的值。
一个对称的矩阵,矩阵的正定需要其所有的Principal submatrices 正定。
如果一个矩阵的determinant 是0, 则这个矩阵就是奇异矩阵 Singular matrix (其实就是对应的行列式值为0,或者n*n矩阵M 的秩 Rank(M