Up

カテゴリ型項目の信頼性係数

参考文献:Y. Okamoto (2013). “A Direct Bayesian Estimation of Reliability” Behaviormetrika, 40, 149-168.

 

心理学においては、尺度項目の回答(反応)形式は7選択肢などカテゴリ型であることが普通である。その分析は、因子分析と信頼性係数の算出によって行われることが多い。複数の項目からなるテストにおいては、その構造を、例えば、まず因子分析によって調べることは必要な手続きである(本書「心理学データ分析測定」の「第8章 心理学的特性を測る」参照)。その後、α係数による信頼性の検討という形で行われることが多い。信頼性係数としてα係数が用いられるのは、広く使われている統計パッケージによってα係数は容易に算出されるという事情によるものと思われる。しかし、α係数を用いることの問題点は、データの真の構造(母集団モデル)がα係数の前提条件を満たすとき、推定値としてのα係数は、真の信頼性係数の値より大きい値を容易にとりえること、項目の回答形式が「はい/いいえ」のように2値である場合、α係数は真値の他の推定値(ω係数のベイズ的推定値;岡本、20112012)と比べて過度に小さくなることがあげられる。

α係数を求めるのではなく、ベイズ的方法によって信頼性係数を求める試みは、岡本(20112012)およびOkamoto (2013)で報告されている。ベイズ的方法では、小規模データの場合においても、データのサイズに応じた分析結果が、事後分布として得られ、データに含まれる情報量に応じた推定を行うことができる。従って、α係数ではなく、現代統計法であるMCMCによるベイズ的方法による信頼性係数の推定が用いられるべきである。ただし、2値項目の場合、モデルの同定性による制約が強い(parallel items)。したがって、より一般的条件のもとで信頼性係数の推定を行うためには、項目の回答選択肢数を3以上にする必要がある。以下に、選択肢数が3以上の場合のモデルと、そのモデルに基づくベイズ的分析法を行うプログラムについて説明する。

 

モデル

 McDonald (1999)に従い、1因子モデル

を設定する。は項目に対する定数、は回答者の因子得点であり、であるとする。は、いわゆる誤差項であり、と独立な確率変数で、とする。このとき、テスト得点の和

の信頼性係数は次式(McDonald (1999))で与えられる。

 カテゴリ境界

と設定し、の値ととの関係より、回答選択肢が次式

により決まるものとする。このとき、の値に対して

であり、

となる。ここで、は累積標準正規分布関数で、

とおく。

 以上の仮定の下で、データに対する尤度関数は次式で与えられる。

したがって、事後確率は

で与えられる。は事前確率分布で、以下のように与える。

ここで、およびは十分に大きい値であり、は区間上の一様分布を表し、は標準正規分布を表す。それぞれの確率密度関数をおよびで表して、

とおく。

 ベイズ的分析では、事後確率に基づいてパラメータの推定などを行う。

 

 

プログラム

 上のモデルに基づいてベイズ的分析を行うプログラムEstRelBayesian.exeを作成した。このプログラムはクリックしてダウンロード・実行することができるが、「***.dll」がインストールされていないので実行できないというようなエラーが出たときは、例えば無料開発ツールVisual Studio Express 2013 for Windows Desktop

http://www.microsoft.com/visualstudio/jpn/downloads

からダウンロード・インストールすると、必要な「***.dll」などもインストールされるので、プログラムEstRelBayesian.exeをクリックしてダウンロード・実行することができるようになる。なお、Windows 8/8.1の場合については、特にウェブサイトを用意して説明している。

プログラムのソースコードファイルなどは圧縮ファイルEstRelBayesian.zipとしてまとめたので、圧縮ファイル名EstRelBayesian.zipをクリックしてダウンロード・解凍すればVisual Studio 2012で開くことができる。

プログラムを実行すると、図1のフォームが表示される。

図1

 

ボタン「GO」のクリックで、入力データファイル名の設定を求めるダイアログウィンドウが表示される(図2)。入力ファイルの形式は後で説明する。

図2

 

入力データファイル名を選んで「開く」ボタンをクリックすると、次に、計算結果を書き出す出力ファイル名(テキストファイル)の設定を求めるダイアログウィンドウが表示される(図3)。

図3

 

適当なテキストファイル名を設定して、「保存」ボタンをクリックすると、計算が始まる。計算中は図4のような、計算中であることを示すウィンドウが表示される。

図4

 

計算が終了すると、図5の出力ファイルが保存されたことを示すウィンドウが表示される。

図5

 

図5のウィンドウの「OK」ボタンのクリックで、プログラムは終了する。

 

入力ファイルと出力ファイル

 入力ファイルは、図2のDataCat5.txtの場合、以下のようになっている。

============================================

 

/                           カテゴリー数

5

 

/                           項目の数

5

   ID  Item-1  Item-2  Item-3  Item-4  Item-5

 

/                           項目の選択パターン           1 -> 選択、  0 -> 選択せず

            1       1       1       1       1

 

/

    1       2       3       3       2       2

    2       5       2       5       5       4

    3       3       1       1       1       1

    4       1       2       1       1       4

    5       3       2       1       5       4

                           

                           

                           

  195       4       3       3       4       4

  196       4       4       3       3       5

  197       3       3       3       4       5

  198       3       2       1       2       2

  199       1       4       4       2       4

  200       4       3       2       2       5

/

============================================

最初の「スラッシュ / 」で始まる行の次の行に、カテゴリ変数のカテゴリ数(選択肢数)を書く。

次の「スラッシュ / 」で始まる行の次の行に項目の総数を書き、その次の行に、ケースの識別用の変数名と各項目の変数名を並べて書く。

次の「スラッシュ / 」で始まる行の次の行に、信頼性係数を求めるときに対象とする項目の選択を示す数値を書く。1なら選択、0なら信頼性係数の算出には含まないことを表す。

次の「スラッシュ / 」で始まる行の次の行から、データを並べていく。各行は、ケースの識別用の値(例えば通し番号)で始まり、続いて、各項目の回答カテゴリー値を並べていく。カテゴリー値は、Kカテゴリーの場合は、1からKまでの整数値で表す。例えば、5カテゴリー(当てはまる、どちらかといえば当てはまる、どちらでもない、どちらかといえば当てはまらない、当てはまらない)であれば、

1 −> 当てはまる

2 −> どちらかといえば当てはまる

3 −> どちらでもない

4 −> どちらかといえば当てはまらない

5 −> 当てはまらない

とする。ただし、逆転項目については、数字の順序が逆になる。

また、が仮定されていることに注意。

データの最後は、「スラッシュ / 」で始まる行で示す。

 上のデータを入力ファイルとしたときの出力ファイルは以下のようになる。

=========================================

 

Number of categories = 5

 

Vars...

              Item-1    Item-2    Item-3    Item-4    Item-5

VarSelect...

                   1         1         1         1         1

Data(All)...

        1:         2         3         3         2         2

        2:         5         2         5         5         4

        3:         3         1         1         1         1

        4:         1         2         1         1         4

        5:         3         2         1         5         4

        6:         1         3         2         3         3

        7:         4         3         1         2         4

        8:         3         4         2         3         1

        9:         4         2         2         1         3

       10:         3         5         3         4         5

      191:         2         4         4         2         5

      192:         5         2         3         5         4

      193:         2         1         2         2         1

      194:         2         2         4         5         3

      195:         4         3         3         4         4

      196:         4         4         3         3         5

      197:         3         3         3         4         5

      198:         3         2         1         2         2

      199:         1         4         4         2         4

      200:         4         3         2         2         5

 

Data(Selected)...

        1:         2         3         3         2         2

        2:         5         2         5         5         4

        3:         3         1         1         1         1

        4:         1         2         1         1         4

        5:         3         2         1         5         4

        6:         1         3         2         3         3

        7:         4         3         1         2         4

        8:         3         4         2         3         1

        9:         4         2         2         1         3

       10:         3         5         3         4         5

      191:         2         4         4         2         5

      192:         5         2         3         5         4

      193:         2         1         2         2         1

      194:         2         2         4         5         3

      195:         4         3         3         4         4

      196:         4         4         3         3         5

      197:         3         3         3         4         5

      198:         3         2         1         2         2

      199:         1         4         4         2         4

      200:         4         3         2         2         5

 

Item-1:           mu[0] = 0.061            Lambda[0] = 0.662            SgmE[0] = 0.774         

Item-2:           mu[1] = -0.034           Lambda[1] = 0.638            SgmE[1] = 0.740         

Item-3:           mu[2] = 0.015            Lambda[2] = 0.612            SgmE[2] = 0.839          

Item-4:           mu[3] = -0.003           Lambda[3] = 0.651            SgmE[3] = 0.779         

Item-5:           mu[4] = 0.005            Lambda[4] = 0.648            SgmE[4] = 0.794         

 

Omega...

 

95%HPD interval = [0.70949, 0.8188]

 

95%CI interval = [0.70855, 0.8185]

 

Mean = 0.76653

 Map = 0.77439

  Q1 = 0.74786   Med = 0.76758   Q3 = 0.78654

=========================================

読みこまれたデータは、「Data(All)…」の後に、先頭の10ケースと、最後の10ケースが確認のため書き出されている。信頼性係数の算出に選ばれた項目のデータは、「Data(Selected)…」の後に、同じく先頭の10ケースと最後の10ケースが出力されている。

mu[j]Lambda[j]SgmE[j]は、を表す。添え字は、0から始まる形式で表記されている。

Omegaに続く出力が、信頼性係数に関するものである。95%HPDとか95%CIは、ベイズ的分析における区間推定であるが、<岡本安晴「計量心理学」培風館、2006、付録H ベイズ的アプローチ>などを参照されたい。

 

 上の出力では、Item-3が一番小さく、が一番大きいので、このItem-3を含めないときの信頼性係数を調べるため、次のデータファイルを用意した。

===========================================

 

/

5

 

/

5

   ID  Item-1  Item-2  Item-3  Item-4  Item-5

 

/

            1       1       0       1       1

 

/

    1       2       3       3       2       2

    2       5       2       5       5       4

    3       3       1       1       1       1

    4       1       2       1       1       4

    5       3       2       1       5       4

                           

                           

                           

  194       2       2       4       5       3

  195       4       3       3       4       4

  196       4       4       3       3       5

  197       3       3       3       4       5

  198       3       2       1       2       2

  199       1       4       4       2       4

  200       4       3       2       2       5

/

===========================================

Item-3に対する選択/非選択を表す値が0になっていることに注意。

このときの出力ファイルは以下のようになる。

===========================================

 

Number of categories = 5

 

Vars...

              Item-1    Item-2    Item-3    Item-4    Item-5

VarSelect...

                   1         1         0         1         1

Data(All)...

        1:         2         3         3         2         2

        2:         5         2         5         5         4

        3:         3         1         1         1         1

        4:         1         2         1         1         4

        5:         3         2         1         5         4

        6:         1         3         2         3         3

        7:         4         3         1         2         4

        8:         3         4         2         3         1

        9:         4         2         2         1         3

       10:         3         5         3         4         5

      191:         2         4         4         2         5

      192:         5         2         3         5         4

      193:         2         1         2         2         1

      194:         2         2         4         5         3

      195:         4         3         3         4         4

      196:         4         4         3         3         5

      197:         3         3         3         4         5

      198:         3         2         1         2         2

      199:         1         4         4         2         4

      200:         4         3         2         2         5

 

Data(Selected)...

        1:         2         3         2         2

        2:         5         2         5         4

        3:         3         1         1         1

        4:         1         2         1         4

        5:         3         2         5         4

        6:         1         3         3         3

        7:         4         3         2         4

        8:         3         4         3         1

        9:         4         2         1         3

       10:         3         5         4         5

      191:         2         4         2         5

      192:         5         2         5         4

      193:         2         1         2         1

      194:         2         2         5         3

      195:         4         3         4         4

      196:         4         4         3         5

      197:         3         3         4         5

      198:         3         2         2         2

      199:         1         4         2         4

      200:         4         3         2         5

 

Item-1:           mu[0] = 0.051            Lambda[0] = 0.697            SgmE[0] = 0.741         

Item-2:           mu[1] = -0.048           Lambda[1] = 0.602            SgmE[1] = 0.764         

Item-4:           mu[2] = -0.013           Lambda[2] = 0.662            SgmE[2] = 0.760         

Item-5:           mu[3] = -0.010           Lambda[3] = 0.614            SgmE[3] = 0.816         

 

Omega...

 

95%HPD interval = [0.66300, 0.7944]

 

95%CI interval = [0.66071, 0.7932]

 

Mean = 0.73277

 Map = 0.73596

  Q1 = 0.71126   Med = 0.73496   Q3 = 0.75685

===========================================

Item-3を抜いても、信頼性係数はよくなっていない。これは、項目数が減ったことによる信頼性係数の低下の効果の方が強いことを示すものである。

 

 

参考文献

岡本安晴(2011).信頼性係数のベイズ推定.日本テスト学会第9回大会発表論文集、120123.

岡本安晴(2012).信頼性係数のベイズ的分析およびIRTとの関連.日本テスト学会第10回大会発表論文集、164167.

岡本安晴(2013)。カテゴリ型項目のベイズ的信頼性推定.日本テスト学会第11回大会発表論文抄録集、50-53

 

Up