使用最大似然拟合多元正态模型时,如何确保协方差矩阵的性质?


22

假设我有以下模型

yi=f(xi,θ)+εi

其中, 是解释变量的向量,\ theta是非线性函数f\ varepsilon_i \ sim N(0,\ Sigma)的参数,其中\ Sigma自然是K \ times K矩阵。yiRKxiθfεiN(0,Σ)ΣK×K

通常的目标是估算θΣ。明显的选择是最大似然法。此模型的对数似然性(假设我们有一个样本(yi,xi),i=1,...,n)看起来像

l(θ,Σ)=n2log(2π)n2logdetΣi=1n(yif(xi,θ))Σ1(yf(xi,θ)))

现在,这似乎很简单,指定了对数似然性,将其放入数据中,并使用某种算法进行非线性优化。问题是如何确保Σ为正定。例如,optim在R中使用R(或任何其他非线性优化算法)将无法保证Σ是正定的。

那么问题是如何确保Σ保持正定值?我看到两种可能的解决方案:

  1. 重新参数化ΣRR,其中R是上三角或对称矩阵。然后Σ将始终是正定的,并且R可以不受约束。

  2. 使用配置文件可能性。推导θ^(Σ)\ hat {\ Sigma}(\ theta)的公式Σ^(θ)。从一些\ theta_0开始θ0并迭代Σ^j=Σ^(θ^j1)θ^j=θ^(Σ^j1)直到收敛为止。

还有其他方法吗,这两种方法又会起作用吗,它们是标准的吗?这似乎是很标准的问题,但是快速搜索没有给我任何提示。我知道贝叶斯估计也是可能的,但目前我不想参与其中。


我在卡尔曼算法中也遇到了同样的问题,但是这个问题更加复杂,而且不容易使用汉密尔顿技巧。我不知道那是否更简单的事情是仅使用。这样,我强制代码不给出错误并且不更改解决方案。这也具有迫使该术语具有与可能性的最后部分相同的符号的优点。有任何想法吗?log(detΣ+1)
econ_pipo

Answers:


6

假设在构建协方差矩阵,则会自动采取对称问题的关心,你的数似然将是时是因为不正定的术语模特对不对?为了防止在出现数值错误,我会预先计算,如果它不是正数,则使对数似然性等于-Inf,否则继续。无论如何,您都必须计算行列式,因此这不会花费您任何额外的计算。 Σd Ë Σ < 0 d È Σlogdet Σdet Σ<0det Σ


5

事实证明,您可以使用轮廓最大可能性来确保必要的属性。您可以证明对于给定的,被最大化 θΣθ^l(θ^,Σ)

Σ^=1ni=1nε^iε^i,

哪里

ε^i=yif(xi,θ^)

然后有可能表明

i=1n(yif(xi,θ^))Σ^1(yf(xi,θ^)))=const,

因此我们只需要最大化

lR(θ,Σ)=n2logdetΣ^.

在这种情况下,自然会满足所有必要的属性。对于为线性的情况,证明是相同的,可以在JD Hamilton的时间序列分析第295页中找到,因此我省略了它们。˚FΣf


3

协方差矩阵的另一种参数化是根据特征值和 “ Givens”角度。 p p - 1 / 2 θ Ĵλ1,...,λpp(p1)/2θij

也就是说,我们可以写

Σ=GTΛG

其中是正交的,并且G

Λ=diag(λ1,...,λp)

与。λ1...λp0

同时,可以根据角度唯一地对进行参数化,其中和。[1]p p - 1 / 2 θ Ĵ= 1 2 p - 1 Ĵ = p 1Gpp-1个/2θ一世Ĵ一世=1个2p-1个Ĵ=一世p-1个

(细节待添加)

[1]:霍夫曼,拉夫内蒂,鲁登伯格。“欧拉角到N维正交矩阵的推广”。J.数学 物理 13,528(1972)


矩阵实际上是正交的,因为是对称矩阵。这是我要推荐的方法-基本上相当于旋转向量和模型函数以便误差独立,然后将OLS应用于每个旋转的分量(我认为)。Σ ÿ ˚F X θ GΣÿ一世FX一世θ
概率

2

按照charles.y.zheng的解决方案,您可能希望对进行建模,其中是对角矩阵,而是等级更新为的Cholesky因式分解。您只需要保持正的对角线即可保持正数。也就是说,您应该估计的对角线和的元素,而不是估计。 Λ Ç Λ Λ Σ Λ Ç ΣΣ=Λ+CCΛCΛΛΣΛCΣ


只要对角线为正,此设置中对角线元素下方是否可以是我想要的任何东西?在numpy中以这种方式模拟矩阵时,并非所有矩阵都是正定的。
sztal

Λ是对角矩阵。
shabbychef
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.