我为 MixtureMultivariateNormalDistribution 使用 apache commons math 库。而且看起来有时density()函数会返回非常大于1的值。它是什么? 我的混合系数总和为1,每个NormalDistribution的协方差矩阵都很好(因为当我创建对象时,MixtureMultivariateNormalDistribution构造函数不会抛出任何异常),并且手段也很好。尺寸为39.我在混合物中有3个正态分布。这是一些错误还是什么?有人遇到过这个问题吗?
由于
答案 0 :(得分:0)
累积分布函数确实介于0和1之间。另一方面,DENSITY函数只需要大于或等于零;特别是,只要其积分(cdf)等于1,就允许大于1。
例如,考虑以原点为中心的单个高斯凸点。其密度函数为exp(-1/2*x^2/sigma^2)/sigma/sqrt(2*pi)
。它在原点的最大值是1/sigma/sqrt(2*pi)
,因此对于sigma < 1/sqrt(2*pi)
(大约0.399),峰值大于1.
如果您正在处理方差足够小的混合成分,那么在它们的平均值附近,密度可以大于1。
答案 1 :(得分:-1)
&#34;返回在指定点x处评估的此分布的概率密度函数(PDF)。通常,PDF是累积分布函数的衍生物。如果x处不存在导数,则应返回适当的替换,例如, Double.POSITIVE_INFINITY,Double.NaN,或差商的下限或上限。&#34;
这有帮助吗?我认为你获得了差异优势的极限。不幸的是,我不知道这意味着什么。