Tôi đang cố gắng để phù hợp với một mô hình phân cấp bằng cách sử dụng jags và gói rjags. Biến kết cục của tôi là y, là một chuỗi các thử nghiệm bernoulli. Tôi có 38 đối tượng người đang biểu diễn theo hai loại: P và M. Dựa trên phân tích của tôi, mọi diễn giả đều có xác suất thành công ở loại P là và xác suất thành công ở loại M là θ p × θ m . Tôi cũng giả sử rằng có một số siêu tham số cấp cộng đồng cho P và M: μ p và μ m .
Vì vậy, đối với mỗi loa: và θ m ~ b đ t một ( μ m × κ m , ( 1 - μ m ) × κ m ) nơi κ p và κ mkiểm soát mức phân phối cực đại ở khoảng và μ m .
Cũng , μ m ~ b đ t một ( Một m , B m ) .
Đây là mô hình jags của tôi:
model{
## y = N bernoulli trials
## Each speaker has a theta value for each category
for(i in 1:length(y)){
y[i] ~ dbern( theta[ speaker[i],category[i]])
}
## Category P has theta Ptheta
## Category M has theta Ptheta * Mtheta
## No observed data for pure Mtheta
##
## Kp and Km represent how similar speakers are to each other
## for Ptheta and Mtheta
for(j in 1:max(speaker)){
theta[j,1] ~ dbeta(Pmu*Kp, (1-Pmu)*Kp)
catM[j] ~ dbeta(Mmu*Km, (1-Mmu)*Km)
theta[j,2] <- theta[j,1] * catM[j]
}
## Priors for Pmu and Mmu
Pmu ~ dbeta(Ap,Bp)
Mmu ~ dbeta(Am,Bm)
## Priors for Kp and Km
Kp ~ dgamma(1,1/50)
Km ~ dgamma(1,1/50)
## Hyperpriors for Pmu and Mmu
Ap ~ dgamma(1,1/50)
Bp ~ dgamma(1,1/50)
Am ~ dgamma(1,1/50)
Bm ~ dgamma(1,1/50)
}
Vấn đề tôi gặp phải là khi tôi chạy mô hình này với 5000 lần lặp để điều chỉnh, sau đó lấy 1000 mẫu Mmu
và Km
đã hội tụ thành các giá trị đơn. Tôi đã chạy nó với 4 chuỗi và mỗi chuỗi không có cùng một giá trị, nhưng trong mỗi chuỗi chỉ có một giá trị duy nhất.
Tôi khá mới để điều chỉnh các mô hình phân cấp bằng các phương thức MCMC, vì vậy tôi tự hỏi điều này tệ đến mức nào. Tôi có nên coi đây là một dấu hiệu cho thấy mô hình này là vô vọng để phù hợp, rằng có điều gì đó không ổn với các linh mục của tôi, hoặc đây là mệnh cho khóa học?