MCMC Geweke диагностический

14

Я использую сэмплер Metropolis (C ++) и хочу использовать предыдущие образцы для оценки степени сходимости.

Я обнаружил одну простую в использовании диагностику - диагностику Гьюке , которая вычисляет разницу между двумя значениями выборки, деленную на оцененную стандартную ошибку. Стандартная ошибка оценивается по спектральной плотности на нуле.

Zn=θ¯Aθ¯B1nASθA^(0)+1nBSθB^(0),

где , B - два окна в цепи Маркова. Я сделал некоторые исследования о том , что являются ^ S θ ( 0 ) и ^ S B θ ( 0 ) , но попасть впросак литературы по энергетической спектральной плотности мощности и спектральной плотности , но я не эксперт по этим вопросам; Мне просто нужен быстрый ответ: эти величины совпадают с дисперсией выборки? Если нет, то какова формула их вычисления?ABSθA^(0)SθB^(0)

Еще одно сомнение в диагностике Гьюке - как выбрать ? В вышеприведенной литературе сказано, что это некоторый функционал θ ( X ) и должен подразумевать существование спектральной плотности ^ S A θ ( 0 ) , но для удобства я предполагаю, что самый простой способ - это использовать функцию тождества (использовать сами образцы). Это верно?θθ(X)SθA^(0)

Пакет R coda содержит описание, но не определяет, как вычислять значения S

Ян
источник
Вы могли бы заглянуть в кишки codaфункции, geweke.diagчтобы увидеть, что она делает ...
Бен Болкер

Ответы:

4

Вы можете просмотреть код geweke.diagфункции в codaпакете, чтобы увидеть, как вычисляется дисперсия с помощью вызова spectrum.ar0функции.


p

pλ

f(λ)=σ2(1j=1pαjexp(2πιjλ))2
αj

p0

f(0)=σ2(1j=1pαj)2

Тогда вычисление будет выглядеть примерно так (с заменой обычных оценщиков на параметры):

tsAR2 = arima.sim(list(ar = c(0.01, 0.03)), n = 1000)  # simulate an AR(2) process
ar2 = ar(tsAR2, aic = TRUE)  # estimate it with AIC complexity selection

# manual estimate of spectral density at zero
sdMan = ar2$var.pred/(1-sum(ar2$ar))^2

# coda computation of spectral density at zer0
sdCoda = coda::spectrum0.ar(tsAr2)$spec

# assert equality
all.equal(sdCoda, sdMan)
tchakravarty
источник
0

SИксИкс(ω), которая является спектральной плотностью. В вашем случае вы должны использоватьSИксИкс(0),

xuhdev
источник