估计多元高斯的协方差后验分布


15

我需要以很少的样本“学习”一个双变量高斯分布,但是对于先验分布有一个很好的假设,因此我想使用贝叶斯方法。

我定义我的在先:

P(μ)N(μ0,Σ0)
μ0=[00]   Σ0=[160027]

和我的分销给定的假说

P(x|μ,Σ)N(μ,Σ)
μ=[00]   Σ=[180018]

现在我知道感谢这里,可以根据数据估算均值

P(μ|x1,,xn)N(μ^n,Σ^n)

我可以计算:

μ^n=Σ0(Σ0+1nΣ)1(1ni=1nxi)+1nΣ(Σ0+1nΣ)1μ0

Σ^n=1nΣ0(Σ0+1nΣ)1Σ

现在问题来了,也许我错了,但在我看来,仅仅是估计参数的协方差矩阵μ ñ,和我的数据不是估计的协方差。我还要计算Σnμn

P(Σn1|x1,,xn)

为了从我的数据中学到完全指定的分布。

这可能吗?是它已经通过计算解决和它在错误的道路只是表示以上(或我只是misentrepreting吧)的公式?参考将不胜感激。非常感谢。Σn

编辑

从评论中可以看出,我的方法是“错误的”,从某种意义上说,我假设常量协方差由定义。我需要在其上加上一个先验值PΣ,但我不知道应该使用哪种分布,以及随后的更新过程是什么。ΣP(Σ)


您已将数据的协方差指定为 -尚未指定要更新的数据的先验分布?Σ=[180018]
Corone

我明白你的意思了。因此,使用我的方法,我基本上假设方差是恒定的且已指定。如果要估算,则需要先验。现在,我的问题是,目前还不清楚如何界定它,这将是它一个适当的分布,但是这似乎是第一个问题的范围了。P(Σ)F(μΣ,ΣΣ)
unziberla

然后更改问题:-)
Corone

Answers:


11

您可以按照与更新均值几乎相同的精神对协方差结构进行贝叶斯更新。多元正态协方差矩阵的共轭先验是Inverse-Wishart分布,因此从此处开始是有意义的,

P(Σ)W1(Ψ,ν)

然后,当你得到你的样品长度ñ你可以计算样本协方差估计 Σ X = 1XnΣX=1n(Xμ)(Xμ)

然后可以将其用于更新协方差矩阵的估计

P(Σ|X)W1(nΣX+Ψ,n+ν)

您可以选择将其均值用作协方差的点估计(后验均值)

E[Σ|X]=nΣX+Ψν+np1

或者您可以选择使用此模式(最大后验估计器)

Mode[Σ|X]=nΣX+Ψν+n+p+1


非常感谢。现在,我假设我的估算过程将有所改变。作为第一步,我估计协方差Σ与你的程序,那么我给出的估计假设分布woulb被PX | μ Σ和自Σ估计,有其自身的分布,我很肯定这会以某种方式改变我以前的公式来计算μ ñ(因为它使用的样本方差当高斯MLE发生)。Σ^P(X|μ,Σ^)Σ^μ^n
unziberla

这种方法你描述是改为使用 Σ = è [ Σ | x 1x n ],这样我就有一个协方差的实际值,就像我以前知道的那样。在常识性方法中,这听起来似乎是错误的,但是也许我由于先验知识已知而使我丢失了某些东西,这使该过程正确了吗?Σ^=E[Σ|x1xn]
unziberla

7

好的,我找到了解决问题的真正方法。即使我(错放的)问题的正确答案是所选的,我也要发布它。

基本上,我的问题解释了如何估计已知协方差的均值,以及答案如何估计已知均值的协方差。但是我的实际问题是使用未知的两个参数进行估算。

我找到了答案,在维基百科与推导说明这里。多元法线的共轭先验是正态逆维沙特,它基本上是多元法线的分布。

μ0Ψκ0ν0

np

P(μ,Σ|X)NIW(κ0μ0+nx¯κ0+n,κ0+n,ν0+n,Ψ+C+κ0nκ0+n(x¯μ0)(x¯μ0)T)

where

x¯=1ni=0nxi

C=i=1n(xix¯)(xix¯)T

so my desired estimated parameters are

E(μ|X)=κ0μ0+nx¯κ0+n
E(Σ|X)=Ψ+C+κ0nκ0+n(x¯μ0)(x¯μ0)Tν0+np1
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.