如何解决斯坦的 3PL IRT 模型
我对 Stan 很陌生,我想用它来估计一些 IRT 模型。作为练习,我正在尝试拟合三参数逻辑 (3PL) IRT 模型。
在 official examples 上展开,仅显示 1PL 和 2PL 模型,我编写了以下代码:
data {
int<lower=1> J; // number of students
int<lower=1> K; // number of questions
int<lower=1> N; // number of observations
int<lower=1,upper=J> jj[N]; // student for observation n
int<lower=1,upper=K> kk[N]; // question for observation n
int<lower=0,upper=1> y[N]; // correctness for observation n
}
parameters {
real mu_beta; // mean question difficulty
vector[J] alpha; // ability for j - mean
vector[K] beta; // difficulty for k
vector<lower=0>[K] gamma; // discrimination of k
vector<lower=0,upper = 1>[K] zeta; // guessing of k
real<lower=0> sigma_beta; // scale of difficulties
real<lower=0> sigma_gamma; // scale of log discrimination
real<lower=0> sigma_zeta; // scale of guessing
}
model {
alpha ~ std_normal();
beta ~ normal(0,sigma_beta);
gamma ~ lognormal(0,sigma_gamma);
zeta ~ normal(0.2,sigma_zeta);
mu_beta ~ cauchy(0,5);
sigma_beta ~ cauchy(0,5);
sigma_gamma ~ cauchy(0,5);
sigma_zeta ~ cauchy(0,5);
y ~ zeta[kk] + bernoulli_logit((1 - zeta[kk]) .* (gamma[kk] .* (alpha[jj] - (beta[kk] + mu_beta))));
}
但是,我发现自己对放置猜测参数 (zeta
) 的位置有些困惑。我试图让我的语法类似于 3PL 模型公式。但是,我不确定我的解决方案是否正确。如果有人能告诉我在这种情况下我的语法是否正确,我将不胜感激,如果不正确,请向我解释我做错了什么。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。