Stan'da tanımlanmış öncelikleri olmayan parametreler


15

Stan ve kullanmayı öğrenmeye başladım rstan. JAGS / BUGS'un nasıl çalıştığı konusunda her zaman kafam karışmadıkça, çizilecek modeldeki her parametre için her zaman bir tür önceden dağıtım tanımlamanız gerektiğini düşündüm. Yine de Stan belgelerine dayanarak bunu yapmak zorunda değilsiniz gibi görünüyor. İşte burada verdikleri örnek bir model .

data {
  int<lower=0> J; // number of schools 
  real y[J]; // estimated treatment effects
  real<lower=0> sigma[J]; // s.e. of effect estimates 
} 
parameters {
  real theta[J]; 
  real mu; 
  real<lower=0> tau; 
} 
model {
  theta ~ normal(mu, tau); 
  y ~ normal(theta, sigma);
} 

Öncelikleri mune tautanımlanmış ne de tanımlanmıştır. JAGS modellerimin bazılarını Stan'a dönüştürürken, tanımlanmamış önceliklere sahip parametrelerin çoğunu veya çoğunu bırakırsam çalıştıklarını gördüm.

Sorun şu ki, tanımlanmış öncelikleri olmayan parametreler olduğunda Stan'in ne yaptığını anlamıyorum. Tekdüze bir dağılım gibi bir şey midir? Bu, her parametre için önceden tanımlanmış bir gereksinim duymadığı HMC'nin özel özelliklerinden biri mi?

Yanıtlar:


18

Stan referans kılavuzundan (önceki bir sürümü):

Öncek belirtmemek, önceden tek tip belirtmekle eşdeğerdir.

Tekdüze bir öncel, sadece parametre bağlıysa uygundur [...]

Stan programlarında uygunsuz önceliklere de izin verilir; örnekleme ifadeleri olmadan kısıtsız parametrelerden kaynaklanır. Bazı durumlarda, uygun olmayan bir öncül uygun bir posteriora yol açabilir, ancak parametrelerdeki veya verilerdeki kısıtlamaların posteriorun uygunluğunu garanti etmesi kullanıcıya bağlıdır.

(Ayrıca 1.0.1 sürümünde C.3 bölümüne bakın ).

Stan'in iyi olmasının altında yatan neden, HATA'da değil, HATA'da, "program" modelinizin resmi bir grafik modeli belirlediği gerçeği ile ilgili olmayabilir, Stan'de ortak olasılığı hesaplamak için küçük bir işlev yazıyorsunuz Yoğunluk fonksiyonu. Tüm değişkenler için uygun bir önceliğin belirtilmemesi, grafik modellerin hoş resmi özelliklerini bozabilir.

Bununla birlikte, Hamiltonian MC için eklem yoğunluğu fonksiyonunu (sayısal olarak) hesaplamanız yeterlidir. Düz (hatta uygunsuz) bir önceki sadece yoğunluğa sabit bir terime katkıda bulunur ve posterior uygun olduğu sürece (sonlu toplam olasılık kütlesi) - ki bu herhangi bir makul olasılık fonksiyonuyla olacaktır - HMC'de tamamen göz ardı edilebilir düzeni.


8

Kaynaktan stan referans v1.0.2 (pg 6, 1 dipnot)

Model bloğunda önceden belirtilmemişse, teta üzerindeki kısıtlamalar 0 ile 1 arasında kalmasını sağlar ve teta'ya önceden örtülü bir üniforma sağlar. Önceden belirlenmiş ve sınırsız desteği olmayan parametreler için sonuç yanlıştır. Stan uygun olmayan öncelikleri kabul eder, ancak örneklemenin başarılı olması için posteriorlar uygun olmalıdır.

Her ikisi de muve sigmadüzgün üniforma önceliklerine sahiptir.

Kaputun altında muve sigmafarklı muamele edilir. sigmaalt sınır ile tanımlanır; Stan örnekleri log(sigma)(dönüşüm için Jacobian ayarlamasıyla). Dönüşümler hakkında daha fazla ayrıntı için, bkz. Bölüm 27 (s. 153).


Sadece bu konuda netim, eğer log (sigma) seviyesinde STAN örnekleri varsa, düz önceki hala logma (sigma) üzerinde değil sigma üzerinde mi?
Rasmus Bååth

1
Evet, önceki üniforma hala bitti sigma, değil log(sigma). Stan, parametreyi dönüştürerek ve Jacobian'ı kullanarak değişkenlerin doğru ayarlanmasını uygulayarak bunu başarır.
syclik
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.