1 IRTにおける1次元性.

1.1 信頼性と妥当性.

  • 信頼性とは、時間の経過や異なる評価者間での測定の一貫性や安定性のこと.
  • 妥当性とは、その尺度が測るべきものをどの程度測っているかということ.

全体として、信頼性と妥当性の評価は、調査手段が正確で一貫性のある結果を出すことを保証し、調査の質と信頼性を高める上で極めて重要である。

参考サイト 研究における信頼性と妥当性.

1次元性とは、全ての項目が1つのものを測定していることであり、測定の妥当性を評価するものといえる。これは因子分析において潜在因子が1つであることを意味する。.

また、1次元性であればその因子により各項目は適度な相関を持つ。これは2値反応データから項目間の相関行列を計算することにより、2値反応の背後にある連続量の相関係数を推定しようという発想である。2値反応データから算出した相関係数をファイ係数と四分点相関係数という(p139参照).
これは、分割表のファイ係数や四分点相関係数とは異なる使われ方である。

<参考> 分割表のファイ係数と四分点相関係数.

 四分点相関係数  \(r_{xy}=\dfrac{ad-bc}{\sqrt{(a+b)(c+d)(a+c)(b+d)}}\).

 ファイ係数     \(\phi=\sqrt{\dfrac{\chi^2}{N}}\)  ( r行要素とc列要素の関連の強さを示す )

 四分表では \(\chi^2=\dfrac{(ad-bc)^2N}{(a+b)(c+d)(a+c)(b+d)}\)  だから.

      \(\phi=\sqrt{\dfrac{\chi^2}{N}}=\dfrac{|ad-bc|}{\sqrt{(a+b)(c+d)(a+c)(b+d)}}=|r_{xy}|\).
      ( \(\chi^2=N\cdot \phi^2\) ということになる ) .

1.2 Rによる1次元性の確認.

library(psych)
library(readr)
u <- read_csv("data/rtest1.csv")
## Rows: 1000 Columns: 10
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## dbl (10): u1, u2, u3, u4, u5, u6, u7, u8, u9, u10
## 
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
head(u)
u1 u2 u3 u4 u5 u6 u7 u8 u9 u10
1 1 0 1 1 1 1 1 1 1
1 0 1 1 1 0 0 1 0 1
0 0 0 1 0 0 0 0 0 0
1 0 0 1 0 1 0 1 0 0
1 1 0 1 1 1 1 1 0 0
0 1 1 1 1 1 0 0 0 1

polychoric関数により四分点相関係数を求める.

polychoric.cor <- polychoric(u)
round(polychoric.cor$rho,2)
##       u1   u2   u3   u4   u5   u6   u7   u8   u9  u10
## u1  1.00 0.47 0.46 0.50 0.34 0.36 0.44 0.40 0.44 0.31
## u2  0.47 1.00 0.46 0.48 0.38 0.43 0.46 0.36 0.39 0.28
## u3  0.46 0.46 1.00 0.38 0.34 0.32 0.43 0.40 0.42 0.32
## u4  0.50 0.48 0.38 1.00 0.41 0.49 0.42 0.37 0.38 0.32
## u5  0.34 0.38 0.34 0.41 1.00 0.45 0.39 0.40 0.36 0.30
## u6  0.36 0.43 0.32 0.49 0.45 1.00 0.51 0.38 0.46 0.39
## u7  0.44 0.46 0.43 0.42 0.39 0.51 1.00 0.42 0.58 0.40
## u8  0.40 0.36 0.40 0.37 0.40 0.38 0.42 1.00 0.42 0.37
## u9  0.44 0.39 0.42 0.38 0.36 0.46 0.58 0.42 1.00 0.42
## u10 0.31 0.28 0.32 0.32 0.30 0.39 0.40 0.37 0.42 1.00

固有値を求めスクリープロットを描く.

eigen(polychoric.cor$rho)$values
##  [1] 4.6595249 0.8571923 0.7740152 0.6903984 0.6320886 0.5673372 0.5216075
##  [8] 0.4754485 0.4230781 0.3993093
VSS.scree(polychoric.cor$rho)

スクリープロットから因子数が1であると判断でき、1次元性が確かめられた。

2 局所独立性.

局所独立性とは、
 「能力を固定したとき、各テスト項目への反応が互いに独立である」
ことである。
これにより、尤度関数の計算が保証される。

3 局所独立性の確認.

項目間の局所独立性の指標として、\(Q_3\) 統計量がある。

\(Q_3\) 統計量は. カテゴリカル因子分析の残差間の相関で、絶対値が0.36以下であれば局所独立の仮定が満たされていると判断できます。 (中村大輝 様より).

3.1 Rによる計算.

x <- read.csv("data/rtest2.csv")
head(x)
theta u7 u8 u9 u10
2.013 1 1 1 1
0.142 0 1 0 1
-1.968 0 0 0 0
-0.471 0 1 0 0
0.853 1 1 0 0
0.230 0 0 0 1
uij <- x[,2:5]
head(uij)
u7 u8 u9 u10
1 1 1 1
0 1 0 1
0 0 0 0
0 1 0 0
1 1 0 0
0 0 0 1

3.1.1 モデル.

a <- c(1.031,0.742,1.051,0.611)
b <- c(0.147,0.034,1.494,-0.178)
icc2PL <- function(a, b, theta) {
  1/(1+exp(-1.7*a*(theta-b)))
}

3.1.2 \(Q_3\) 統計量.

Pij <- uij
for (j in 1:4) Pij[,j] <- icc2PL(x$theta, a[j], b[j])
head(Pij)
u7 u8 u9 u10
0.0463031 0.0814470 0.8199473 0.0629712
0.4468521 0.4573759 0.5267096 0.4525273
0.9506173 0.9144080 0.1851103 0.9333720
0.6699190 0.6380465 0.4122407 0.6528867
0.2172289 0.2637300 0.6552945 0.2415631
0.4144391 0.4312316 0.5431953 0.4234812
dij <-uij-Pij
round(cor(dij),2)
##        u7    u8    u9   u10
## u7   1.00  0.64 -0.09  0.63
## u8   0.64  1.00 -0.12  0.60
## u9  -0.09 -0.12  1.00 -0.09
## u10  0.63  0.60 -0.09  1.00

0.36を超えている相関係数があるので、局所独立性は成り立っていないと考えられる。

3.2 まとめ.

現実のテストにおいて1次元性と局所独立性が完全に成り立つケースは少ないと考えられるが、

  • 近似的に成立するようにコントロールする.

  • \(Q_3\) 統計量などによって評価していく.

これらの努力をするは重要なことである。.