Markov-Chain-Montecarlo

Hamiltonian Monte Carlo (HMC):高斯分佈動量變量背後的直覺和理由是什麼?

  • December 23, 2017

我正在閱讀 Michael Betancourt 教授的一篇很棒的HMC 介紹性論文,但我一直在理解我們如何選擇動量分佈。

概括

HMC的基本思想是引入動量變量結合目標變量. 它們共同形成一個相空間

保守系統的總能量是一個常數,系統應該遵循 Hamilton 方程。因此,相空間中的軌跡可以分解為能級,每個能級對應一個給定​​的能量值並且可以描述為滿足以下條件的一組點:

.

我們想估計聯合分佈, 這樣通過積分出來我們得到了想要的目標分佈. 此外,可以等效地寫為, 在哪裡對應於能量的特定值和是那個能級上的位置。

對於給定的值,相對更容易知道,因為我們可以對漢密爾頓方程進行積分以獲得軌跡上的數據點。然而,是取決於我們如何指定動量的棘手部分,因此決定了總能量.

在此處輸入圖像描述

問題

在我看來,我們追求的是, 但我們實際上可以估計的是,基於以下假設可以近似於,如圖 23 所示。然而,我們實際採樣的似乎是.

Q1 : 是不是因為一旦我們知道, 我們可以很容易地計算因此估計?

做出這樣的假設 保持,我們使用高斯分佈動量。論文中提到了兩種選擇:

在哪裡是一個常數稱為歐幾里得度量,又名質量矩陣

在第一選擇的情況下(歐幾里得-高斯),質量矩陣實際上是獨立於,所以我們採樣的概率實際上是. 高斯分佈動量的選擇有協方差的意味著目標變量是具有協方差矩陣的高斯分佈, 作為和需要進行逆變換以保持相空間中的體積不變。

Q2:我的問題是我們如何期待遵循高斯分佈?在實踐中可以是任何復雜的分佈。

我們追求的不是那麼多, 只是如果和是不同的,那麼我們的探索將受到我們無法探索所有相關能量的限制。因此,在實踐中,經驗估計和有助於識別我們探索的任何潛在限制,這是比較直方圖和 E-BFMI 診斷的動機。

那麼,我們對這兩種分佈了解多少呢?當我們增加目標分佈的維數時有點傾向於看起來越來越高斯。如果我們的積分時間足夠長,那麼我們對水平集的探索將達到平衡,如果是高斯然後也將趨向於越來越高斯。

因此,高斯-歐幾里得動能是一個很好的起點,但它絕不總是最優的!我花了很多時間嘗試擬合 Stan 對我大喊大叫 E-BFMI 診斷錯誤的模型。高斯 - 黎曼動能在許多情況下可以顯著改善,因為位置相關的對數行列式可以使明顯更多的高斯,但這仍然需要做更多的研究來充分理解這個問題。

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

comments powered by Disqus