Проблема с использованием inprod () для суммирования линейного предиктора - PullRequest
0 голосов
/ 28 декабря 2018

У меня возникла проблема при попытке подвести итог моего адитивного предиктора:

mu[j] <- b0 +  weights1[1] * A[j] + weights1[2] * A[j+1] + weights1[3] * A[j+2] + weights1[4] * A[j+3] +
     weights1[5] * A[j+4] + weights1[6] * A[j+5] + weights1[7] * A[j+6] + weights1[8] * A[j+7] + 
     weights1[9] * A[j+8] + weights1[10] * A[j+9] + weights1[11] * A[j+10] + weights1[12] * A[j+11] + 

     weights2[1] * B[j] + weights2[2] * B[j+1] + weights2[3] * B[j+2] + weights2[4] * B[j+3] +
     weights2[5] * B[j+4] + weights2[6] * B[j+5] + weights2[7] * B[j+6] + weights2[8] * B[j+7] + 
     weights2[9] * B[j+8] + weights2[10] * B[j+9] + weights2[11] * B[j+10] + weights2[12] * B[j+11]

с помощью inprod ().Это то, что, как я думал, должно быть эквивалентно:

     mu[j] <- b0 + inprod(weights1[],A[j:(j+11)]) + inprod(weights2[],B[j:(j+11)]) 

Хотя модель компилируется и, кажется, работает, она постоянно обновляется.Он работал в течение нескольких часов, и он не заканчивается, пока первый подход заканчивается через несколько минут.

Это априоры, на всякий случай:

weights1[1] ~ dnorm(0,1.0E-6)
weights2[1] ~ dnorm(0,1.0E-6)
for(t in 2:12) {
weights1[t]~dnorm(weights1[t-1],tauweight1)}
for(t in 2:12) {
weights2[t]~dnorm(weights2[t-1],tauweight2)}
b0 ~ dnorm(0,.001)
tau ~ dgamma(0.001, 0.001)
sigma <- 1/sqrt(tau)
tauweight1~dgamma(1.0E-3,1.0E-3)
tauweight2~dgamma(1.0E-3,1.0E-3)

Я вызываю OpenBUGS из R с использованием R2OpenBUGS на всякий случай.

Большое спасибо за ваше время!

...