多変量ガウス分布の共分散事後分布の推定


15

サンプル数の少ない2変量ガウス分布を「学習」する必要がありますが、事前分布に関する仮説は良好なので、ベイジアンアプローチを使用したいと思います。

:私は私の前に定義された

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μn

P(Σn1|x1,,xn)

データから完全に指定された分布を学習させるため。

これは可能ですか?それはすでにコンピューティングによって解決されるとし、それはちょうど間違った方法で(または私は単にそれをmisentrepretingています)上記の式を表現していますか?参照をいただければ幸いです。どうもありがとう。Σn

編集

コメントから、で定義される一定の共分散を仮定しているという意味で、私のアプローチは「間違っている」ように見えました。事前にPΣを置く必要がありますが、どのディストリビューションを使用する必要があるのか​​わかりません。ΣP(Σ)


データの共分散をとして既に指定していますが、更新する前の分布を指定していませんか?Σ=[180018]
コロネ

あなたの言ってる事がわかります。したがって、私のアプローチでは、基本的に分散が一定であると仮定し、指定しました。見積もりたい場合は、事前に確認する必要があります。今、私の問題は、それを定義する方法をクリアしていない、とそれに適した分布になることであるが、これは最初の質問の範囲外であると思われます。P(Σ)F(μΣ,ΣΣ)
-unziberla

次に質問を変更します:-)
Corone

回答:


11

平均を更新したのとほぼ同じ精神で、共分散構造のベイジアン更新を行うことができます。多変量正規分布の共分散行列の共役事前分布は逆ウィシャート分布なので、そこから始めるのが理にかなっています。

P(Σ)W1(Ψ,ν)

次に、あなたのサンプルを取得するときの長さのをn個あなたは標本共分散推定値を計算することができます Σ X = 1XnΣX=1n(Xμ)(Xμ)

これは、共分散行列の推定値を更新するために使用できます

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

この平均を共分散のポイント推定値として使用することを選択できます(Posterior Mean Estimator)

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

または、モードを使用することもできます(最大A事後推定量)

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


Thanks a lot. Now I assume something will change in my estimation process. As a first step, I should estimate the covariance Σ^ with your procedure, then my distribution given the estimated hypothesis woulb be P(X|μ,Σ^) and since Σ^ is estimated and has its own distribution I am pretty sure this will somehow change my previous formula to compute μ^n (as it happens on gaussian MLE when using the sample variance).
unziberla

The approach that you describe would be instead to use Σ^=E[Σ|x1xn] so that I have an actual value for the covariance, as if I knew it before. In a frequentist approach, this would sound wrong, but maybe there is something that I am missing from the fact that I assume the prior is known and this makes the procedure correct?
unziberla

7

Ok, I found the real solution for my problem. I am posting it even if the correct answer to my (misplaced) question is the one selected.

Basically, my question explains how to estimate the mean knowing the covariance, and the answer how to estimate the covariance knowing the mean. But my actual problem was estimating with both parameters unknown.

I found the answer on Wikipedia with the derivation explained here. The multivariate normal's conjugated prior is the Normal-inverse-Wishart, that is basically a distribution over multivariate Normals.

The prior parameters that need to be specified are μ0 to define the mean, Ψ to define the covariance, and two scalar values κ0 and ν0 that I would say define how confident we are on the estimation of the first two parameters respectively.

The updated distribution after observing n samples of a p-variate Normal has the form

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
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.