1 適合度の指標.

IRTで扱う適合度は大きく分けて3つ.

  • 個人適合度(z3統計量).
    受験者の反応パタンが、その受験者の能力から推測されるパタンにどれだけ一致しているかを表す.
  • 項目適合度(G^2統計量).
    ICCがどれだけデータに当てはまっているかを表す.
  • 全体適合度(尤度比カイ2乗統計量).
    受験者や項目レべルではなく、それら全体をひとまとめにし てデータへの当てはまりを評価する

1.1 個人適合度(person fit).

z3統計量(Rでの計算).

パッケージirtoysでは関数apiで計算可能である(第13章p315参照).
ここでは定義に基づいて計算しているが煩雑である。
詳しくは、テキストp204参照.

a <- c(1,1.5,0.7,1.2)
b <- c(1.5,0.5,0,-1)
c <- c(0,0,0,0)
u <- c(1,0,1,1)
t1 <- 0.776438
ip <- matrix(c(a,b,c),nrow=4);ip
##      [,1] [,2] [,3]
## [1,]  1.0  1.5    0
## [2,]  1.5  0.5    0
## [3,]  0.7  0.0    0
## [4,]  1.2 -1.0    0
icc2PL <- function(a,b,theta){
  1/(1+exp(-1.7*a*(theta-b)))
}
E3 <- function(a,b,theta){sum((icc2PL(a,b,theta)*log(icc2PL(a,b,theta))+(1-icc2PL(a,b,theta))*log(1-icc2PL(a,b,theta))))}
E3(a,b,t1)
## [1] -1.886624
S3 <- function(a,b,theta){sqrt(sum(icc2PL(a,b,theta)*(1-icc2PL(a,b,theta))*(log((icc2PL(a,b,theta)/(1-icc2PL(a,b,theta))))^2)))}
S3(a,b,t1)
## [1] 0.9385259
LL <- function(u,a,b,theta){ sum(u*log(icc2PL(a,b,theta)) + (1-u)*log(1-icc2PL(a,b,theta)))
}
LL(u,a,b,t1)
## [1] -2.953549
z3 <- (LL(u,a,b,t1)-E3(a,b,t1))/S3(a,b,t1);z3
## [1] -1.13681

z3値は、標準正規分布で近似できると言われている(p203).
\(|z_3|<2\) であるので、個人適合度に有意な差はないと判断できる。

1.2 項目適合度(item fit).

\(\chi^2\)型統計量と\(G^2\)型統計量がある(p206).
パッケージirtoysでは関数itfで計算可能である(第13章p316参照).

1.3 全体適合度(total fit).

尤度比カイ二乗統計量が用いられる。
Rでの計算もできるがここで止め、立ち入らないことにしよう。