読者です 読者をやめる 読者になる 読者になる

StatsBeginner: 初学者の統計学習ノート

初学者が統計学、機械学習、R、Pythonの勉強の過程をメモっていくノート。

『データ解析のための統計モデリング入門』読書会第7回の復習 #みどりぼん

2週連続の読書会

 8月5日に『緑本』読書会の第7回に参加してきました。
 「データ解析のための統計モデリング入門」 読書会 - connpass


 2人目のLT(データ解析でご飯を食べるという事)の方に、「データ分析プロジェクトの発注者側に言いたい文句とかないですか」と質問させて頂いたのが私です。
 実際、自分が努めてる会社にはデータが大量にあり、またデータ分析によって合理化できそうな業務もたくさんあると思ってるんですが、企画側にデータ分析の知識とかスキルが不足していて、自分で分析できないばかりか、そもそもどういう仕様で専門家に分析業務を委託したら有益なプロジェクトになりそうなのか想像がついていないという感じです。


 今回は読書会が2週連続開催となっており、「次回は来週じゃなくて今週だった!」というのに気づいたのが読書会の前日だったので、予習はしましたがここに書き込む時間はなかったです。なので復習だけ書いておきます。
 
 

第7章のだいたいの内容

 今回の対象範囲だった『緑本』第7章のだいたいの内容は、以下のような感じでした。


データ解析のための統計モデリング入門――一般化線形モデル・階層ベイズモデル・MCMC (確率と情報の科学)

データ解析のための統計モデリング入門――一般化線形モデル・階層ベイズモデル・MCMC (確率と情報の科学)

 
 

  • 前章までで説明してきたGLMが、じつはそのままでは多くの場合分析に使えないということが指摘される。
  • たとえば、植物の種子数やその生存数をカウントする調査の場合に、「個体間の差」や「場所間の差」が実際には存在するのにそれをモデルに入れていない場合、妥当な予測ができなくなる。
  • たとえば、ポアソン分布や二項分布を仮定しても、実際の応答変数の分散が大きくて全然仮定が当てはまっていなかったりとか(過分散)。
  • そこでGLMをさらに拡張し、個体や場所の効果を確率変数として導入することを考える。そういうモデルを、GLMM(一般化線形混合モデル)と呼ぶ。
  • この個体差や場所差は、そこまで明確な根拠はないがとりあえず正規分布にしたがって変動するということにしておくことが多い。
  • また、確率変数として導入される個体差や場所差の項は、ランダム効果と呼ばれる。これはなんか別の教科書では「変量効果」と呼ばれていて、そっちのネーミングのほうが分かりやすいが。
  • 著者も、固定効果とランダム効果という呼び名は分かりにくいと言っており、大域的なパラメータと局所的なパラメータだと思えと言っている。それも私のような文系初学者にはイメージがつきにくいが、要は、「線形予測子&リンク関数&確率分布」で表現されていたモデルの「線形予測子」のところに入れ子状に確率分布を持つ変数が埋め込まれてるということだ。
  • 確率変数が入れ子になってややこしいが、ランダム効果で積分し、分布を合成した尤度関数にしてしまえばよい。つまりさっきの「局所的な確率分布」の全ての場合における「大域的な確率分布」を考慮しているような関数にするということ。
  • これで割と現実に当てはまるモデルになったりする。
  • ちなみに、データの取り方が「疑似反復」に当たるような場合、つまり個体差や場所差を「傾向」の情報として取り出すことができるような場合は、かならずランダム効果を考慮したモデルでパラメータを推定しなければならない。

 
 

読書会当日

 読書会当日の、発表者の方のプレゼンや、LTをやられた方のプレゼンなどは、↓の記事にまとめられています。
 第7回 「データ解析のための統計モデリング入門」 読書会に参加してきた - INPUTしたらOUTPUT!


 当日の発表者の方の解説は、とてもわかりやすかったです。とくに、教科書に書かれていないことも補足されていたので、大変勉強になりました。主なところでは、以下のような点です。

  • 変量効果モデルの呼称はいろいろある。紹介されていた中では「マルチレベルモデル」「階層線形モデル」が直感的に分かりやすい気がしました。入れ子になっているモデルなわけなので。
  • 細かくいうとこの第7章で解説されているのは「ランダム切片モデル」というべきものであり「ランダム傾きモデル」も存在する。線形予測子の係数のところを確率変数にするということ。
  • 反復の話を理解するには実験計画の三原則を確認するのがよい
  • この教科書の例ぐらいシンプルなモデルであれば、ランダム効果部分を積分した尤度関数で推定すればいいのだが、ふつうはもっと複雑で計算がややこしいので、階層ベイズやMCMCで推定する。
  • 教科書p.159のRでの推定は、実はglmmML関数のオプションで「Method=ghq」と指定しないと教科書どおりにならない。
  • ある変数が固定効果なのかランダム効果なのかは、場合によって異なり、ある程度は判断の参考になる基準がある。

 
 

「反復」という言葉がなぜ使われるのか

 ところで、最初教科書を読んでるとき、1個の植物個体から1個の種子を取る場合について、なぜ「反復」という用語が用いられているのかよく分かりませんでした。逆に1個の植物個体から複数個の種子を取るとなぜ「疑似反復」と呼ばれるのかも。


 f:id:midnightseminar:20140809010850p:plain


 だって、なんか1個体から複数の種をとってるほうが「反復」感あるし……。


 『緑本』でのランダム効果の説明自体は、一応だいたい分かるのです*1。「個体差」が系統誤差として議論しうるような実験(観察)デザインになっているのであれば、それはモデルに明示的に入れておくべきであり、1つの個体から複数個の種をとっているなら、明らかに個体による傾向の違いが情報としてあるよねと。
 1個体から1個しか種を取らない場合は、種と種の違いなのか、個体と個体の違いなのかを議論する意味がなくて、個体差は説明変数として明示的にモデルに入れようがないから、単なる誤差に含めて扱う。(1個体から種1個というのに加えて、個体の抽出が無作為であると言える必要があるのだと思いますが。)


 しかしやはり「反復」という言葉の語感がイマイチつかめない。教科書の言ってる意味が分からないというより、単純になぜそういう言葉が使われているのかが気になります。文系なので。資本という意味のcapitalは、首都(capital city)や大文字(capital letter)や死刑(capital punishment)を表す場合とどういう関係あるのか知りたい、的なノリです*2
 ググると、実験計画法における「反復(replication)」という用語については、たとえば以下のような説明がある。

http://ja.wikipedia.org/wiki/実験計画法
・局所管理化:影響を調べる要因以外のすべての要因を可能な限り一定にする。
・反復:実験ごとの偶然のバラツキ(誤差)の影響を除くために同条件で反復する。
以上は物理学などの実験でも普通に採用されるが、さらに次の原則が加えられる。
・無作為化(ランダム化):以上でも制御できない可能性のある要因の影響を除き、偏りを小さくするために条件を無作為化する。例えば実験を行う空間的・時間的順序の影響があるかもしれないから、決まった順序でなく実験のたびに無作為に順序を決めるなど。これは生物学などの実験で特に重要である。

実験計画法

1. 反復 : 同一の実験の繰り返しによって、誤差の減少と推定をします。
2. 無作為化 : 系統誤差を均一にします。
3. 局所管理 : ブロック(局所的な領域)の中では均一な条件にするものの、 ブロック同士の差は”良し”とします。 これは、 系統誤差 を積極的に管理する方法でもあります。 系統誤差になる因子をブロック因子と言います。


 あるいは、↓このへんの資料の乱塊法の解説を読むと、反復(replication)と繰り返し(repeat)「反復」が何と間違われやすいのかというのも分かってきます。


 CiNii 論文 -  実験・調査における「繰返し」と「反復」の誤用
 7. 実験計画法


 要するに、統計学における「反復」とは、「統制可能な変数はなるべく統制して、同一条件の塊(ブロック)をつくり、それ以外の要因は無作為化して誤差として扱うようにした上で、データを何回も取ること」を意味するという感じだと思います。
 どっちかというと、「何回も」の部分よりも「同じ条件下で」というほうに重みがあるのであって、だからこそreplicationと呼ばれてるんでしょう。日本語の「反復」は「繰り返し」の意味合いが濃いですが、どっちかというと「複製」(レプリカ)と言いたいのだと。
 『緑本』第7章の例は、積極的に剰余変数を統制してブロックを作ったというより、意味のある情報が無いがゆえに全体を同一条件(つまり1つのブロック)としか扱いようがないという事例だと思うので、ちょっとピンと来にくかった気もします。
 1個体から1種子だと、個体間の差と種子間の差の区別がつかず、個体の違いを系統誤差として取り出して説明変数にすることはできないから、結局これは同一条件下で得られたデータとしてしか扱えないということですね。個体選びは無作為であるという前提になりますが。


 f:id:midnightseminar:20140809011334p:plain


 1個体から種子を1個しか取らないというふうに積極的に決める場合があるのかどうかは知りませんが、たとえば心理学の実験で、群を分けて「対応なし」(つまり1人の被験者は1つの群にのみ割り当てられる)のデータを取ってt検定や分散分析をやる場合などは、1人の被験者からデータを1個しか取らず、群以外の違いはランダム化して誤差として扱うので、イメージ近いと思います。*3


 で、逆に植物1個体から複数個ずつ種子をとった場合(個体そのものも複数ある)だと、個体の違いが種のデータ全体に何がしかの傾向を与えているであろうことが予想され、同一条件下であるとは言えなくなって、「擬似反復」と言われる。この場合「擬似」は、「何回も取る」というところに係っているというよりは、「同一条件下で」というところに係っているわけですね。
 これで、『緑本』第7章における「反復」「疑似反復」という言葉のイメージがつかめた気がします。


 ところで、「反復」(replication)の概念は「何回も」のところより「同一条件下で」のところに重みがあるのだとして、じゃあ「何回も」のほうにはたいした意味がないのかというと、そうでもない気がします。
 英語版Wikipediaの解説をみると、こういうふうに書いてあります。

Design of experiments - Wikipedia, the free encyclopedia


Replication
Measurements are usually subject to variation and uncertainty. Measurements are repeated and full experiments are replicated to help identify the sources of variation, to better estimate the true effects of treatments, to further strengthen the experiment's reliability and validity, and to add to the existing knowledge of the topic.[13] However, certain conditions must be met before the replication of the experiment is commenced: the original research question has been published in a peer-reviewed journal or widely cited, the researcher is independent of the original experiment, the researcher must first try to replicate the original findings using the original data, and the write-up should state that the study conducted is a replication study that tried to follow the original study as strictly as possible.


 これってもはや、条件をそろえた上で「再現実験」をするようなイメージで説明されてますよねたぶん。「replication」(複製)という言葉の意味あいからすると、こっちの説明のほうがしっくりくるような気もします。
 ある実験によってサポートされた仮説の妥当性・信頼性を追試によって確かめたいのだから、最初の実験と2回目の実験はなるべく条件をそろえなければならない。また、仮説の確からしさを高めることが目的なのだから、相互に独立に行われた実験でなければ意味がない。独立でなければ、「複数回確かめられた」といえなくなるので。この「複数回確かめること」には積極的な意味があるので、「何回も」という点も大事だということが分かります。


 こちらの項目も見てみます。

http://en.m.wikipedia.org/wiki/Replication_(statistics)

replication is the repetition of anexperimental condition so that the variability associated with the phenomenon can be estimated

"the repetition of the set of all the treatment combinations to be compared in an experiment. Each of the repetitions is called a replicate."


 これをみると、要するに、データの取得が繰り返されているというより、「条件」が(複数の実験間で)繰り返されているという意味合いなんでしょうね。言葉的には。

*1:もちろん、深い理解には至ってませんが。

*2:capitalは「第一の」「主要な」という意味で、もともとは借金の元本のことを指したらしい。

*3:この場合の群は『緑本』第7章の場合だと明るさに相当し、カテゴリ変数と量的変数の違いがありますが。