最近使用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)< n).
正定性的重要性在于,在某些运算中需要计算输入矩阵的逆矩阵。 如果矩阵是奇异的,那么在计算他的逆矩阵时候就会使得矩阵除0.
ML estimetion中也需要计算Sigma的逆,因为需要最大化输入matrix和sigma的相似度, 如果Sigma是非正定的,问题就
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)< n).
正定性的重要性在于,在某些运算中需要计算输入矩阵的逆矩阵。 如果矩阵是奇异的,那么在计算他的逆矩阵时候就会使得矩阵除0.
ML estimetion中也需要计算Sigma的逆,因为需要最大化输入matrix和sigma的相似度, 如果Sigma是非正定的,问题就