我在一些数据上实现高斯分布模型,如果sigma(协方差矩阵)是单数,那么它是不可逆的,并且将导致计算概率失败。我认为在sigma中添加一个Identity矩阵会使sigma可逆,但这会使模型不适合数据。
有没有办法让sigma矩阵可逆并保持模型拟合数据?
有一组数据:(x1,x2)_1,(x1,x2)_2,...,(x1,x2)_i。其中x1和x2是连续的实数,有些(x1,x2)可以显示serval时间,我假设这些数据遵循Guassian分布,然后可以将平均向量计算为(mean(x1),mean(x2)),然后像往常一样计算协方差矩阵。在某些情况下,协方差矩阵可能是单数的,我认为添加一些随机的小移位可以使它非常规,但我不知道如何正确地做到这一点,以便模型仍能很好地拟合数据。
答案 0 :(得分:0)
在这种情况下,您只需要使用1D高斯分布对数据的一维建模。
如果你的二维数据{(x1,x2)_i}
的协方差矩阵是单数,这意味着数据沿着一条直线。 {x2}
数据是{x1}
数据的确定性函数,因此您只需要随机建模{x1}
数据。 {x2}
数据会立即从{x1}
开始,一旦您知道{x1}
,就不再是随机的。
这是我的推理:
协方差矩阵看起来像这样,因为所有协方差矩阵都是对称的:
| a b |
| b c |
a = var(x1)
,c = var(x2)
,b = cov(x1,x2)
。
现在,如果此矩阵是单数,则第二列向量必须是第一列的标量倍数(因为它们是线性相关的)。让我们说常数是k
。然后:
b = k*c
a = k*b = k*k*c
因此协方差矩阵看起来很像:
| k*k*c k*c |
| k*c c |
这里只有一个参数c = var(x2)
决定了分布(因为k
可以是任何东西),所以数据本身就是一维的。使用一个变量x1
对其进行建模就足够了。另一种看待此问题的方法是检查此分布的Pearson Correlation Coefficient是否为b/(sqrt(a)*sqrt(c)) = 1
。