elsur.jpn.org >

« 読了:Aguilera, et al. (2006) ロジスティック主成分回帰 | メイン | 読了:Hellevik (2009) 二値の従属変数に対してロジスティック回帰とかじゃなくて線形回帰をやって、いったい何が悪いんだよ »

2016年6月23日 (木)

 週末に学会の大会を聴講しに行った空き時間で読んだ奴。自分が発表しない学会というのは気楽なものである。

King, G., Tomz, M., Wittenberg, J. (2000) Making the most of statistical analysis: Improving interpretation and presentation. Amerian Journal of Political Science, 44(2), 341-355.
 社会科学者よ、統計学的な分析結果を人に伝えるときはこういう風にしなさい、という啓蒙論文。Google様によれば被引用回数3241。すげえ。
 あ、第一著者のKingって、名著と名高い「社会科学のリサーチ・デザイン」の著者だ... ちゃんと読んでませんけど。

 冒頭に挙げられている良い伝え方の例:「ほかの点がすべて同一であれば、教育年数が1年増えると、年収は平均して1500ドル(±約500ドル)増えるでしょう」。悪い伝え方の例:「教育の係数は有意水準0.05で統計的に有意でした」。
 ポイントは次の3つ。(1)標準的な統計モデルから、関心の対象となる新しい量を抽出すること。(2)その量の不確実性を評価すること。(3)統計的訓練を受けていなくてもわかる結果に変換すること。
 以上を実現するための有力な武器がシミュレーションである。

 統計モデルの非常に一般的なクラス、すなわち
 $Y_i \sim f(\theta_i, \alpha)$
 $\theta_i = g(X_i, \beta)$
を考える。一本目は統計モデルの確率的コンポーネントで、従属変数$Y_i$が確率密度$f(\theta_i, \alpha)$からのランダムドローとして生成されている。確率密度関数の特性はオブザベーションによって変動するかもしれないし($\theta_i$)、一定かもしれない($\alpha$)。二本目はモデルのシステマティックなコンポーネントで、$\theta_i$がどう変動するかを示している。$g(\cdot, \cdot)$はリンク関数と呼ばれることが多い。
 このクラスのメンバーであるなんらかのモデルを考える。たとえば線形正規回帰モデルなら
 $Y_i \sim N(\mu_i, \sigma^2)$
 $\mu_i = X_i \beta$
ロジットモデルなら
 $Y_i \sim Bernoulli(\pi_i)$
 $\pi_i = \frac{1}{1+\exp(-X_i \beta)}$
ですわね。まあとにかく、なんらかのモデルをつくり、結果が得られた、としましょう。

 ここからが本題である。モデルから得られた結果をどうやって解釈するか。
 多くの研究者は$\hat\alpha$, $\hat\beta$の符号と「統計的有意性」しかみない。でもそれらはふつう、研究の動機となっている実質的問題と間接的にしか関連してない。実質的な関心が直接に持たれるような量を提示すべきだ。
 また、つぎの2つの不確実性を無視してはならない。(1)推定の不確実性。$\beta$と$\alpha$は完全にはわからない。(2)根本的な不確実性。仮に$\beta$と$\alpha$が完全にわかったとしても$Y$には不確実性が残る。

 そこでだ。諸君、シミュレーションしたまえ。
 シミュレーションとは、サーベイ・サンプリングの理屈を使って複雑な数学的計算を近似することだ。たとえば確率分布$P(y)$の平均を計算するために、$E(Y) = \int^{\infty}_{-\infty} y P(y) dy$を求めるんじゃなくて、$P(y)$から$M$個の値をドローしてきて平均するわけである。$M$を増やせば正確になる。

 まずはパラメータのシミュレーション。手順は次の通り。

(2)を$M$回繰り返す。たとえば1000回とか。

 次に、予測値のシミュレーション。手順は次の通り。

(2)と(3)を$M$回繰り返す。

 必要ならば、従属変数の期待値についてもシミュレーションするがよい。なお、正確に言うと「従属変数の期待値」と「従属変数の予測値の平均」とはちがうのだが、非線形性がシビアでないかぎり両者はだいたい近くなる。
 従属変数の期待値のシミュレーションと、予測値のシミュレーションとはちがうぞ。後者には二種類の不確実性がはいっているが、前者には推定の不確実性しか入っていない。たとえば選挙結果の予測とか為替レートの予測という場面では後者が大事だが、特定の説明変数の平均的な効果に関心がある場合には前者が大事かも。
 手順は次の通り。

(2)と(3)を$M$回繰り返す。このとき、$M$と$m$は十分に大きくすること。なお、線形正規モデルやロジットモデルでは$E(Y_c)=\theta_c$なので$\tilde\theta_c$をそのまま使えばよろしい。

 第一階差のシミュレーション。第一階差とは、2つの期待値の差のこと。上の手順の(1)で、$X_c$を2つ用意する($X_s, X_e$としよう)。で、(5)で$\tilde{E}(Y_s)$ と$\tilde{E}(Y_e)$の差を求める。これを繰り返して平均する。
 ところで、たとえば順序プロビットモデルで$P(Y=3)$を求めるというような場合には、期待値を推定するアルゴリズムをちょっと修正しなければならない[←??? なんでだろう...]。そんなときは僕らが作ったCLARIFYというソフトを使うといいよ。

 本論文で紹介したのとはちょっと別なアプローチとして以下がある。

まとめると、シミュレーションは便利だ。分析的な解がないときにも正確な結果が得られる。教育上も良い。ある研究者は「それでも分析的手法を教えるべきだ」という理由を挙げることができた人に5000ドルをあげると宣言しているが、この賞金を受け取った人はまだいない[ははは。Simonという人だそうだ]。ま、一番いいのは両方教えることだけどね。

 シミュレーションの際のコツ。

 後半は事例。線形回帰、ロジットモデル、時系列クロスセクショナルモデル、多項ロジットモデル、打ち切りのあるワイブル回帰モデルについて例を挙げている。最初のふたつだけ読んだ。メモは省略するけど、正直、前半の説明よか事例のほうがはるかにわかりやすいよ... 最初っから事例を使って説明してくれればいいのに...

 結局、仕事の役には立たなかったんだけど、勉強になりました。特に、「2種類の不確実性」という言い方が勉強になった。以前、若い友人たちと新宿のカフェで応答曲面モデルの勉強会をやったとき、回帰モデルから得られる、ある条件下での期待値の信頼区間と、その条件下での予測の信頼区間とは全然ちがう問題なのよという話になり、私の説明が下手なせいであんまし納得してもらえなかったんだけど、そうだよな、こういうことなんだよな。
 いっぽう、素朴な疑問でこっぱずかしいが、こうやってパラメータについて無理やりMVNを仮定するんじゃなくて、全部ブートストラップ法でいいんじゃない? というモヤモヤ感がある。
 また、この論文はあるモデルから得られる結果をどうやってわかりやすく伝えるかという話けど、モデルの不確実性(変数選択やリンク関数選択の不確実性)をも考慮して、一連のモデルからなる集合から得られる結果について伝えるときに、こういうシミュレーションによる方法をうまく使えないもんかなあ、という疑問もある。

論文:データ解析(2015-) - 読了:King, Tomz, & Wittenberg (2000) 統計モデルから得られる知見について人々にわかりやすく伝えるためのシミュレーションの手引き

rebuilt: 2020年11月16日 22:55
validate this page