Markov-Chain-Montecarlo
對於哈密頓蒙特卡羅,為什麼否定動量變量會導致對稱提議?
我一直在詳細閱讀 Radford Neal 出色的 HMC 書籍章節。但是,有一個細節我現在真的很著迷,我不確定我是否考慮對了。在描述計算機實現所需的 HMC 的 Metropolis 步驟時,他說:
軌跡末端動量變量的否定使 Metropolis 提案對稱,因為上述接受概率有效
但是,我無法弄清楚為什麼否定動量變量意味著提案是對稱的。為了清楚起見,這是我對事物的理解:
- 定義提案表示從狀態開始的密度然後得到作為提案,然後我們使用 MH 檢查是否接受。
- 在許多情況下,我們希望提案是對稱的,因此 MH 測試簡化為 Metropolis 測試。一種方法是使用高斯提議,因此定義作為從具有固定方差的高斯採樣,以. 那麼由於高斯是對稱的,.
- 使用 HMC,我們從以下步驟開始:(1)採樣動量變量,通常是高斯,(2)運行更新兩個變量的跳躍步驟,(3)最後否定動量變量以獲得我們最終提出的狀態. 在這裡,我使用 Radford Neal 關於系統狀態的符號,作為位置和作為動力。
好的,所以現在我需要知道為什麼提案是對稱的。我想我需要了解以下幾點:
- 我認為在採樣動量變量之後,越級步驟是“確定性的” (除非我們在計算導數時注入隨機性)。這是否意味著從給定狀態開始然後簡單地應用跳躍步驟(假設沒有對動量變量進行採樣)直到我們到達稍後的狀態的概率是一個?所以這是一個增量分佈,真的。
- 但是當我們對這些高斯動量變量進行採樣時會發生什麼。它們不會影響提案概率嗎?當你包括越級步驟時,我不知道如何分析這一點。
- Neal 還討論了可逆性、哈密頓量守恆和哈密頓動力學的體積保持。我想我需要更好地理解可逆性和體積保持意味著我們可以聲稱該提案是對稱的。(我認為哈密頓量的守恆在理論上可以證明,應該具有相同的值,但在計算機實現中卻沒有。)不幸的是,我似乎在這裡遇到了障礙。
謝謝你的時間!
哈密頓蒙特卡洛的原始構造可能難以理解的原因之一是它比必要的限制更多,即使只是為了簡化理論證明。特別是,確定性更新中對動量的否定實際上實際上是無關緊要的,因為完全動量重採樣*。然而,如果我們包含它,那麼我們可以利用兩個對稱提議的組合本身是對稱的這一理論事實來證明復合哈密頓蒙特卡羅更新也是對稱的。
確定性提案分佈有點棘手,因為如問題中所述,它是由 delta 函數給出的。蒂爾尼 ( https://projecteuclid.org/euclid.aoap/1027961031 ) 表明,任何這樣的確定性更新都是對稱的,它必須是對合。換句話說,它必須在應用兩次時產生標識。假設一個辛積分器,它是時間可逆且保持體積的,這由動量求反來保證。
哈密頓蒙特卡洛實際上在理論和實現方面都比原始算法更通用。有關更多詳細信息,請參閱https://arxiv.org/abs/1701.02434,尤其是附錄。
- 有部分動量重採樣方案,從 Horowitz 的原始方案到最近的“Extra Chance”或“Generalized”方案,其中否定對算法的有效性至關重要。