如何在R中计算高斯混合模型的Fisher信息矩阵

3
对于具有k个组件的高斯混合模型:
enter image description here 费舍尔信息矩阵如下:

enter image description here

我该如何计算费舍尔信息矩阵?是否有可用于此计算的R函数?

你用过哪些R包/函数获取高斯混合模型加数据的模型呢? - Mossa
@Mossa,我是新手。我不太了解要使用哪个R包或库。谢谢。 - Débora
请注意,SO是用于编码的。我倾向于认为这应该迁移到SE,其中数学概念将在提供代码之前包含在内。 - Onyambu
这个问题似乎缺乏足够的上下文。你尝试过什么?你搜索了什么? - eduardokapp
这里的编码将是不完整的。g未给出,pi也未给出等等。如果您想要海森矩阵,在假定了g之后,您将需要通过EM估计pi向量,然后可以使用mle.tools包来计算I。 - Onyambu
1个回答

2

请看mle.tools包。例如,在正态分布中,

library(mle.tools)
## Normal distribution
pdf <- quote(1 / (sqrt(2 * pi) * sigma) * exp(-0.5 / sigma ^ 2 * (x - mu) ^ 2))
lpdf <- quote(-log(sigma) - 0.5 / sigma ^ 2 * (x - mu) ^ 2)
x <- rnorm(n = 100, mean = 0.0, sd = 1.0)
expected.varcov(density = pdf, logdensity = lpdf, n = length(x), parms = c("mu", "sigma"),
                mle = c(mean(x), sd(x)), lower = '-Inf', upper = 'Inf')

$mle
         mu       sigma 
-0.01889498  0.96256386 

$varcov
                 mu         sigma
mu     9.265292e-03 -6.989460e-13
sigma -6.989460e-13  4.632646e-03




##Normal distribution
lpdf <- quote(-log(sigma) - 0.5 / sigma ^ 2 * (x - mu) ^ 2)
x <- rnorm(n = 100, mean = 0.0, sd = 1.0)
observed.varcov(logdensity = lpdf, X = x, parms = c("mu", "sigma"),
                mle = c(mean(x), sd(x)))

$mle
        mu      sigma 
0.02476464 1.12332365 

$varcov
                mu        sigma
mu    1.261856e-02 2.617048e-19
sigma 2.617048e-19 6.405360e-03

更多详细信息,请参见mle.tools.pdf


谢谢你的回答。 实际上,我对统计学是新手。您能告诉我如何为上述给定公式的高斯混合模型的似然函数定义“pdf”和“lpdf”吗? - Débora
这不是针对混合模型,而是针对正态分布。 - Onyambu

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接