草薙の研究ログ

英語の先生をやってます。

diffIRT:Diffusion IRTモデルのRパッケージ

たまには真面目なことを記事にしよう。ここ1年くらい夢中になっているDiffusion Modelの話。

Diffusion Modelっていうのは,2値判断課題における正答率と反応時間の分布を<同時に扱う>数理的モデル。「信号検出理論(SDT)に反応時間を足したようなもの」ともいわれる。理論的には,頭のなかで判断に必要な情報を逐次集積していき,設定された閾値に到達するまでの漂流(drift)をする,というようなプロセスを考える。基本的に,情報を集める速さ,ないし証拠の強さ,記憶の強度などをあらわす漂流母数(drift rate),情報の閾値を決める境界母数(boundary parameter),それらの項目間分散,個人間分散…などといった母数を推定していく。いろいろモデルの亜種があるのだけど,R. Ratcliffがオリジナルとされている。何がいいって,正答率と反応時間の関係を一元的に,そして少ない母数で説明できるところ。もちろん,外国語教育研究における(公開された)応用例はまだない(…私がうじうじしててちゃんとやらないから)。

RatcliffのDiffusion modelも派生的な研究がものすごい量があって,IRT風に拡張したDiffusion IRT Modelを扱うRのパッケージが去年の暮れくらいにできたのよね。diffIRTというらしい。IRTなので,というか測定モデルなので,個人の漂流母数,境界母数,そして項目の漂流母数,境界母数(と非決定時間母数)を同時に結びつけて考える。こういう考え方自体については,

  • van der Maas, H.L.J., Molenaar, D., Maris, G., Kievit, R.A., & Borsboom, D. (2011). Cognitive Psychology Meets Psychometric Theory: On the Relation Between Process Models for Decision Making and Latent Variable Models for Individual Differences. Psychological Review, 118, 339- 356.
  • Molenaar, D., Tuerlinkcx, F., & van der Maas, H.L.J. (2015). Fitting Diffusion Item Response Theory Models for Responses and Response Times Using the R Package diffIRT. Journal of Statistical Software, 66(4), 1-34. URL http://www.jstatsoft.org/v66/i04/.
  • Ratcliff, R., & Rouder, J. N. (1998). Modeling response times for two-choice decisions. Psychological Science, 9(5), 347-356.

 

 パッケージの仕様については,

https://cran.r-project.org/web/packages/diffIRT/diffIRT.pdf

 

基本的には,diffIRTという関数に判断時間,正誤反応,そしてモデル(DモデルかQモデルか)を入れてやればいい(最尤推定なのでそれなりの初期値を入れてやらなければダメな場合もあるかも)。モデルの要約はsummary関数で見れる。RespFit関数でM2統計量によるモデルの有意性を,factest関数で個人のスコア(個人の漂流母数,境界母数推定値)を返してくれる。もちろんモデル間の検定もできる。

ちょっと気をつけなければならないのは,制約の入れかた。diffIRT関数のconstrainという項に推定する母数に関する制約を入れられる。特に項目間の漂流母数や境界母数,非決定時間に等値制約をいれられる(vi.equal,ai.equalみたいに)。これで複数のモデルをやってみてモデル間の比較をしたらいいかも。

モデルのフィットは,尤度はもちろん,AIC, BIC, DICなどを出してくれるし,検定もできる。特に非決定時間や境界母数が項目に固有であると認めるかとかいうのは理論的にも重要なところなので制約なしでそのままやってていいのかみたいなのがある。