微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

斯坦的 3PL IRT 模型

如何解决斯坦的 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 举报,一经查实,本站将立刻删除。