【RとIATとBayesian hierarchical diffusion model】diffusion modelと階層ベイズモデリング②

今回は、「二肢選択課題で得られた反応時間データを階層diffusion modelで分析しよう」という話である、Vandekerckhove et al (2011)の紹介の続きをします。前回は、この論文の目的までを書きました(2ページ目の左下まで)。本文中で目的の次に説明しているDiffusion modelの話は、以前ブログ内で説明したことがあるので、今回は飛ばします。「Diffusion model、初めて聞きました」という方は、先に「拡散過程モデルとは?」を読んでいただけるといいかなと思います。また、階層モデルについては「階層ベイズモデリングはIATの分析になぜ良いのか」に書いてあります。

この記事は、「大雑把な翻訳」「輪読での発表の台本のようなもの」だと思って読んでください。

A Hierarchical Framework for the Diffusion Model


動機

著者らが拡散過程モデルに階層性を持たせようと思った動機は、いくつかあるようです。まず、最も重要な動機は、拡散過程モデルは「1人の参加者のデータに適用する」もので、判断の決定に至るプロセスの個人差を見ることが目的としたものではないことにあります(see e.g., Ratcliff & Rouder, 1998)。今回紹介している論文(Vandekerckhove et al., 2011)は、普遍的な法則を導くことに関心がある実験心理学分野のモデルのいいところ(反応に至るまでのプロセスを詳細に説明できる)と、もともと存在する個人差やグループ差に関心がある相関研究分野のモデルのいいところ(個人差の主な源を見つけることができる)を合わせたモデルを考えていくことを目的としています。ですが、従来の(階層性を持たせていない)拡散過程モデルでは実験心理学のモデルの側面しか持ち合わせていません。個人差を検討することが難しいのです。

しかし、近年、拡散過程モデルを使って個人差を検討しようとしている研究もあります(see e.g., Klauer, Voss, Schmitz, & Teige-Mocigemba, 2007; Ratcliff et al., 2004; Wagenmakers et al., 2007)。典型的な方法は、分析をいくつかのステップに分けるというものです。まず、一人一人のデータにモデルをフィットさせ、パラメータの値を求めます(ステップ1)。次に、そのパラメータの値の個人差に関する分析などを行います(ステップ2)。例えば、Klauer et al.(2007)では、求めたパラメータについて分散分析を実施していました。

ただ、いつでもこのような被験者ごとの個別の分析(フィッティング)ができる訳ではありません。今回扱おうとしている拡散過程モデルのパラメータを求めるには、大量のデータが必要となります(Wagenmakers, 2009)。ですので、拡散過程モデルを1人ずつフィッティングをしようとするのは、あまり現実的ではありません(試行数を多くし過ぎると、被験者さんの負担が大きくなってしまいます)。また、特に高次な認知プロセスを調べる実験や顔画像を使った実験では、課題内で同じ刺激が繰り返して呈示されないようにすることが多いのですが、1人ずつ拡散過程モデルを当てはめられるほどの試行数分の刺激を用意するのは大変です(see e.g., Brysbaert, Van Wijnendaele, & De Deyne, 2000; Klauer et al., 2007)。それでも、実験にはたくさんの被験者さんが参加してくださるので、個人差も見たいですよね。何か他の方法を考えないといけません。

また、上述のような分析をいくつかのステップに分ける方法には、別の問題もあります。それは、「被験者間であるパラメータの値が等しくなるように、パラメータに制限をかけたい」といった場合にどうするか、です。分析をいくつかのステップに分けるときは、1人ずつ順番にフィッティングをしていきます。しかし、パラメータに制限をかけたい場合は被験者全員のデータを同時に分析しないといけません。困った。

以上の問題点(①データの数が不十分でも拡散過程モデルを使って分析したい ②パラメータに制限をかけられるようにしたい)を解決することができるのが、階層モデリングによるアプローチです。

階層性拡散過程モデルの使用

階層モデルでは、被験者は、とある大きな母集団からランダムに抽出されたと仮定します(Gelman & Hill, 2007)。いろんな人がいるわけですね。いろんな人がいるということは、各被験者のパラメータのセットは様々だ(個人差がある)ということです。このような被験者間のパラメータの違いはランダム効果として見られます(※ ランダム効果は被験者の違いだけでなく、刺激などでも見られます)。抽出した集団が推定したい母集団全体を構成している(この人たちは同じ)なら、固定効果とするのが良いでしょう。このように、階層モデルでは、個人差を明示的に表現することができます

各被験者のパラメータのセットがどうなっているのかだけが重要なのではありませんよね。まだわかっていない母集団分布の特徴(平均、分散、共分散)を明らかにすることも大事です。階層モデルでは、「あるパラメータは被験者間で平等に制約するが、あるパラメータには個人差がある」といったようなモデルを比較的簡単に組み立てることができます。それに、階層モデルは、被験者一人当たりの試行数(データポイント)が少なく、パラメータを推定するために必要な情報が不足している場合でも、データを処理することができます。

これまでのようにいくつかのステップに分けて分析する方法で個人差を検討するのは、拡散過程モデルでは難しそうでしたが、階層モデルを使えば実現できそうです。また、ステップに分けて分析する方法ではパラメータに制限をかけることはできませんでしたが、これも階層モデルを使えば解決しそうです。

階層モデルが有益であることは、測定モデルに含まれる項目反応理論を用いた研究(see e.g., De Boeck & Wilson, 2004)や、教育効果を調べた研究(Raudenbush & Bryk, 2002)、縦断データの分析(Molenberghs & Verbeke, 2006; Singer & Willett, 2003; Verbeke & Molenberghs, 2000)など、様々な分野で証明されています。その中でも、この論文では特にDe Boeck & Wilson(2004)で提案された枠組みを頼りにしています。

De Boeck & Wilson(2004)は記述的個人差(describing individual differences:あるパラメータの母集団分布を仮定し、それらの母集団分布の特徴を推定する可能性を示すもの)と説明的個人差(explaining individual differences)をはっきりと区別しています。ただ、そのようなアプローチでは、単に個人差を認めるだけです。母集団における変異性を分布の分散によって個人差を量的に表します。しかし、科学における究極の目的は、単に違いを観察するだけでなく、なぜその違いが生じるのかを説明しようとすることです。個人差は、その人固有のパラメータを予測因子に関連づけることで説明することができます(後述)。そうすることで、この論文ではこれまで説明されてきたような母集団の分散を考えていきます。そして、モデルに予測因子を含めることによって、これまで説明されていなかった変異性を明らかにしていきます。

※ これまでの議論では主に個人差に注目していますが、階層性拡散過程モデルでは、個人差以外の違い(刺激など)も同じように当てはめることができます。

この論文で頼りにしているDe Boeck & Wilson(2004)で提案された枠組みと、この論文での枠組みの主な違いは、De Boeck & Wilson(2004)は項目反応理論の文脈でのものであるという点です。De Boeck & Wilson(2004)で扱っているデータは、1組の項目に対する被験者の2択(またはそれ以上)の反応です。モデルとしてはロジスティック回帰モデルや、その拡張・一般化版になります。一方、この論文で扱うデータは2変量(選択反応と反応時間)のもので、測定レベル(measurement level)はWienerの拡散過程モデル(すごく複雑)です。

以降では、De Boeck & Wilson(2004)の枠組みをさらに練り上げて(階層モデルの使い方を参考にして)、拡散過程モデルに当てはめていきます。ただ、もう書くのが疲れてきたので一旦ここで終わります。続きはまた今度。