Normal-Distribution

多元高斯對數似然梯度

  • March 15, 2014

我正在嘗試通過梯度下降找到模型的 MAP 估計值。我的先驗是具有已知協方差矩陣的多元高斯。

在概念層面上,我想我知道如何做到這一點,但我希望在細節方面有所幫助。特別是,如果有更簡單的方法來解決問題,那麼這將特別有用。

這是我認為我需要做的:

  • 對於每個維度,給定我在其他維度中的當前位置,找到條件分佈。
  • 這給了我每個維度的局部單變量高斯,具有正確的均值和標準差。
  • 我認為梯度應該只是這些單變量分佈的導數向量。

我的問題有兩個部分:

  1. 這是最好的方法,還是有更簡單的方法?
  2. 假設我需要走這條路,找到這些條件分佈的最佳方法是什麼?

優化呢?

讓我們看看我是否理解正確。你有一個模型 $ p(y|x, \theta) $ 以一些觀察為條件 $ x $ 和一組參數 $ \theta $ 和之前的 $ p(\theta) $ 導致共同的可能性 $ \mathcal{L} = p(y|x, \theta)p(\theta) $ . 參數根據已知的多元正態分佈,即 $ \theta \sim \mathcal{N}(\mu, \Sigma) $ . 你想找到這個問題的MAP解決方案,即 $$ \text{argmax}_{\theta} \mathcal{L}. $$ 這個問題的一個特例在神經網絡社區中得到了很好的研究,稱為權重衰減。在這種情況下, $ \mu=\mathbf{0} $ 和 $ \Sigma = \mathbf{I}\sigma^2 $ .

正如您已經指出的那樣,訣竅是 $ \text{argmax}{\theta} \mathcal{L} = \text{argmax}{\theta} \log \mathcal{L} $ . 當你取高斯密度的對數時,許多醜陋的項(指數)消失了,你最終會得到類似的東西 $ \log p(\theta) = -{1 \over 2}(\theta - \mu)^T\Sigma^{-1}(\theta - \mu) + \text{const} $ . 如果你把它區分開來,Sam Roweis 的矩陣恆等式就會派上用場,讓你得出

$$ -{1 \over 2}{\partial (\theta - \mu)^T\Sigma^{-1}(\theta - \mu) \over \partial \theta} = -\Sigma^{-1}(\theta - \mu). $$

(請驗證,這是在我的腦海中快速完成的。)連同您的模型的衍生物,您可以使用現成的優化器來獲得 MAP 解決方案。

更新:合併了 David J. Harris 的評論。公式現在應該是正確的。

引用自:https://stats.stackexchange.com/questions/90134

comments powered by Disqus