2016-06-21 11 views
2

저는 RJAGS를 사용하여 계층 적 베이지안 선형 회귀 모델을 구축하고 있으며 평균 1.3으로 정규 분포 될 세 개의 매개 변수 값의 합을 제한하려고합니다. 즉 :RJAGS를 사용하여 베이지안 선형 회귀에서 매개 변수를 제한

모델이다

Y = B1 * X1 + B2 * X2 + B3 * X3 + ... + BN * XN

그리고

B1 + B2 + B3 ~ dnorm (1.3, 1/(0.2)^2)

그렇게 할 수 있습니까? 앞줄에서와 같이 매개 변수의 합을 분배하기 위해 코드 행을 사용하는 것은 효과가없는 것처럼 보입니다.

두 번째로 좋은 대안은 매개 변수 (B1 + B2 + B3 = 1.3)를 완전히 제한하는 것이지만 어떻게해야할지 모르겠다.

미리 도움 주셔서 감사합니다.

건배!

+1

'B2'와'B3'을'B1'으로 재 표현할 수 있습니까? 이것은 'B1'만이 제한 될 필요가 있고, 또 다른 분리 매개 변수가 될 수 있기 때문에 값을 제한하기가 더 쉽습니다. – colin

답변

2

하나의 접근법은 계층 적 "ANOVA"스타일 모델과 유사합니다. 이 모델에서 각 그룹 평균은베이스 라인 $ \ beta_0 $에서의 처짐 $ \ beta_j $이고 처짐은 0으로 합쳐집니다. 사례에 비유하면 기준 계수에서 3 개의 회귀 계수를 합계에서 0으로 편향시키고 기준선을 평균 1.3으로 계산합니다.

여기에 적응하기위한 아이디어는이 같은 (I는 I 인덱스를 억제 한)입니다 당신은 Doing Bayesian Data Analysis 2nd Ed.의 19 장에 ANOVA에 대한 장애가 있었던 모델 사양의 예를 볼 수 있습니다

mu <- sum(b[1:3]*x[1:3]) 
# Prior on unconstrained baseline a0 and deflections a[j]: 
a0 ~ dnorm(1.3 , 1/0.2^2) 
for (j in 1:3) { a[j] ~ dnorm(0,1/10^2) } 
# Convert a0,a[j] to sum-to-zero b0,b[j]: 
for (j in 1:3) { m[j] <- a0 + a[j] } 
b0 <- mean(m[1:3]) 
for (j in 1:3) { b[j] <- m[j] - b0 } 

이 적어도, 그건 아이디어 ...