24
DBDA Chapter 15: Metric Predicted Variable on a Single Group オーマ株式会社 Agchbayar Amarsanaa (アマル)

Dbda chapter15

Embed Size (px)

Citation preview

Page 1: Dbda chapter15

DBDA  Chapter  15:  Metric  Predicted  Variable  

on  a  Single  Group

オーマ株式会社  Agchbayar  Amarsanaa (アマル)

Page 2: Dbda chapter15

導入

次のシチュエーションを考える  •  ある大学の1年生の中から無作法にサンプルを選んで血圧を計ってみた。  

–  連邦政府関係機関が発表している、該当する年齢の正常値と比べて違いが

あるか?  

•  (自称)ベジタリアンの中から無作法にサンプルを選んでIQを調べてみる  –  全国平均100と比べて違いがあるか?  

     

•  一つのグループの中から観測される変数の値を予測  •  一般化線形モデルの も基本的なケースを紹介(Ch.14  p.384)  

–  (正規分布に従う)あるグループの平均を予測する  –  伝統的な統計学の「t検定」に該当する内容  

 

Page 3: Dbda chapter15

It’s  normal  to  want  to  fit  in  with  your  friends  Behave  by  their  means  and  believe  all  their  ends.  But  I’ll  be  high  tailing  it,  fast  and  askew,  Precisely  ‘cause  I  can’t  abide  what  you  do.  

参考:The  end  jus*fies  the  means.目的は手段を正当化する;    

友達の輪にとけ込もうとするのは普通のことだ  同じ志しを持っていると信じ、同じように振る舞うだろう  

しかし私は(あなたを)軽蔑し、足早に逃去るだろう  

だって、はっきり言ってあなたがすることが我慢できないのだ      

Page 4: Dbda chapter15

15.1  EsRmaRng  the  Mean  and  Precision  of  a  Normal  Likelihood

p y µ,σ( ) = 1Z exp −12y−µ( )2

σ 2

"

#$$

%

&''

•  正規尤度関数  

•              の場合、  

•  Dが与えられたときペイズの定理より、各パラメータを次のように推測  

•  適当な事前確率      の基で(15.2)を評価してみる  

(15.1) where Z =σ 2π!"#

$%&

D = y1, y2, y3{ }

p yi µ,σ( )i∏ = p D µ,σ( )

p µ,σ D( ) =p D µ,σ( ) p µ,σ( )

dµ dσ p D µ,σ( ) p µ,σ( )∫∫(15.2)

p µ,σ( )

Page 5: Dbda chapter15

15.1.1  SoluRon  by  MathemaRcal  Analysis

•  前提条件  –  尤度関数の標準偏差σが固定されている(σ=Sy)  

•  σの事前分布はスパイク  

•  もし事前確率      が正規分布に従う場合、事後確率も正規分布である  –  Conjugateな事前確率  

•  μ〜N(Mμ,Sμ)とすると、    

(15.2)

p µ( )

Page 6: Dbda chapter15

15.1.1  SoluRon  by  MathemaRcal  Analysis

(15.3)

Page 7: Dbda chapter15

15.1.1  SoluRon  by  MathemaRcal  Analysis

(15.4)

つまり、σ=Sy、μ〜N(Mμ,Sμ)の場合、                                                                                                                                                                                                                                        である。    

精度     で表すと、                                                                                                                                (事後の精度=事前精度+尤度精度)    

p y µ,Sy( ) p µ( )∝NSy2Mµ + Sµ

2ySy2 + Sµ

2 ,Sy2Sµ

2

Sy2 + Sµ

2

"

#

$$

%

&

''

1/σ 2

Sy2 + Sµ

2

Sy2Sµ

2 =1Sµ2 +

1Sy2

Page 8: Dbda chapter15

15.1.1  SoluRon  by  MathemaRcal  Analysis

平均も精度で表すと、                                        (事前精度が良い場合、事後平均が事前平均に近くなる)   

      (尤度精度が良い場合、事後平均が誘導平均に近くなる)         

Page 9: Dbda chapter15

15.1.1  SoluRon  by  MathemaRcal  Analysis

•  Nサンプルの場合、  

                                 を使えば、      

  事後平均=        事後精度=    

   (サンプルサイズが多くなれば、事後平均がデータの平均に引っ張られる)    •  正規分布を平均と精度で表すと都合が良い場合があるN(μ、τ)  

y1,...,N ~ N(µ,σ )⇒ y ~ N(µ,σ / N )

Page 10: Dbda chapter15

15.1.1  SoluRon  by  MathemaRcal  Analysis

•  尤度関数の平均μが固定されている場合  •  もし事前確率p(τ)がガンマ分布に従う場合、事後確率もガンマ分布である  

–  Conjugateな事前確率  –  (e.g.,  Gelman  et  al.,  2004,  p50)  –  ガンマ分布の形が直感的にあっているよね  

•  μ、σのどちらも固定しない場合もConjugateな事前確率を特定することが可能。  –  (e.g.,  Gelman  et  al.,  2004,  p78-­‐83)  

Page 11: Dbda chapter15

15.1.2  ApproximaRon  by  MCMC  in  BUGS

•  データyiは,尤度関数N(μ、τ)によっ

て生成されている  –  平均μ〜N(M,T)  –  精度τ〜Γ(S,R)  

•  μ、τが独立であるという前提条件の

基で、2次元空間から2パラメータを

推測する。   各矢印がBUGSコードの使用と対応している

Page 12: Dbda chapter15

15.1.2  ApproximaRon  by  MCMC  in  BUGS

•  モデルを理解したり、デバッグしたりするにはあらかじめ決めたパラメータを使って

架空のデータを生成してみるのが役に立つ  –  事後分布を使ってパラメータを推測してみてその良さを確認する(SecRon  15.4.1)  

Page 13: Dbda chapter15

15.1.3  Outliers  and  Robust  EsRmaRon:  The  t  DistribuRon

•  異常値の扱い  –  データに異常値が含まれている場合、その原因となる外部要因が分かっていれば修正できる  –  しかしほとんどの場合、外部要因によるものなのか、異常値ではないのかの判断はつかない  –  何かの基準で異常値をデータから削除せず使う場合、正規分布より異常値の影響を受けにくい

尤度関数を使う  

•  t分布は、異常値が含まれるデータのモデルとして使える  –  (Damgaard,  2007,  Meyer  &  Yu,  2000,  Tsionas  2002)  

Page 14: Dbda chapter15

15.1.3  Outliers  and  Robust  EsRmaRon:  The  t  DistribuRon

•  Maximum  Likelihood  esRmates  –  p(D|μ、τ)を 大化する正規分布、p(D|μ、τ、df)を 大化するt分布  

65歳以上の177人を対象に、体内の無機リン化合物の量を量ったデータ。(単位:1mg/10l)。数個のデータを意図的に変更している。

Page 15: Dbda chapter15

15.1.4  When  the  Data  Are  Non-­‐normal:  TransformaRons  

例)  •  光のない洞窟に住む、超音波を発生する新しい種の虫が発見された  •  ある理論によると、発生する音の周波数の平均は22,000Hz  •  ある昆虫学者は200個の周波数を測定した  •  この理論は正しいと言えるか?  

 •  やり方1:  

–  周波数測定データをそのまま使った  –  結果は、「支持されない」  

•  やり方2:  –  ピッチ(知覚される音の高さ)を使った  

•  ログをとる  

–  結果は、「支持された」  

Page 16: Dbda chapter15

15.1.4  When  the  Data  Are  Non-­‐normal:  TransformaRons  

答えは「支持される」が正しい。つまりやり方2が正しい。  •  正規尤度モデルの場合、データが正規分布に従うと仮定している  

–  正規分布の場合だけ、μ、τパラメータが意味を持つ  –  データは少なくとも「大体」正規分布に従っている必要がある  

正規分布以外のデータをどう解析するか?  •  やり方1:データを正規化する  

–  条件1:全てのデータを同じやり方で変換すること  –  条件2:単調変換(monotonic  tranformaRon)であること。つまり尺度を変える  

•  地震エネルギー 対 マグニチュード  

•  摂氏 対 華氏  

•  フィート 対 メートル  

–  変換後の事前分布も適切なものにしなければならない(ex15.2,  15.3)  

•  やり方2:正規分布の代わりに、適切な尤度関数を使う  –  適切なデータ変換が見つからない、変換後の尺度が扱いにくい、データ生成に正規分布以外の

分布が仮定されている場合など  –  正規分布以外の分布に関する知識が必要  

Page 17: Dbda chapter15

15.1.4  When  the  Data  Are  Non-­‐normal:  TransformaRons  

異常値の変換は大丈夫?  •  一つのグループからのデータセットの場合原則OK。  

–  異常値(テールの部分)を圧縮し正常な範囲内に収めるが、変換後の事前分布を考慮しながら同

時にやるのが一般的に難しい  –  変換は一般的に大量の偏りを直すためであり、異常値を直すために使われない。  

Page 18: Dbda chapter15

15.2  Repeated  Measures  and  Individual  Differences

実世界で応用する場合、同じサンプルを繰り返し計測する場合がある。例、  •  ある会社の従業員の血圧の平均を調べたい  

–  全従業員の血圧を日にちと時間をランダムに繰り返し測定する  

 このような場合、次の仮定を置く  •  サンプル(個人)がグループ全体からランダムに抽出される  

•  同じサンプル(個人)の測定結果はお互いに独立である  –  注意深く設計する必要がある  –  測定間隔が近すぎる(数分、数秒)と相関の高い計測結果になってしまう  –  測定間隔が遠すぎると、根本的な傾向が変わってしまう(体脂肪率が増えたとか)  –  決まったやり方がない  

Page 19: Dbda chapter15

15.2  Repeated  Measures  and  Individual  Differences

•  航空機Boeing720  12体の空調システムの故障間の間隔(Proschan,  1963)  –  同じ機体の空調システムの故障はお互いに独立だと仮定する  

•  故障時に、問題の部品が取り替えられるから  

–  日にちのルート5で正規化  •  全体と個別の尤度関数が大体正規分布になるように設定する必要がある  

Page 20: Dbda chapter15

15.2.1  Hierarchical  Model

仮定  •  J番目の機体のデータは、N(μj,τj)に従う  •  μjはN(μG,  τG)に従う。←グループレベルの分布  すると、  •  μjはグループレベルの分布に従うと、τjもグループレベルの分布に従う  

–  繰り返し測定するときの測定値の動き具合は、所属しているグループによるからである  

•  従って、τjはグループレペルガンマ分布Γ(sG,rG)  

Page 21: Dbda chapter15

15.2.1  Hierarchical  Model

① μjはグループレベルパラメータのμG,τGに依存する  ② τjはグループレベルパラメータのsG,rGに依存する  ③ グループレベルパラメータはより高レベルの分布に従っ      ている。  ④ 利便性の為に、(形状、尺度)→(平均、標準偏差)に直

す  

 •  初、グループレベルの事前確率の定数は具体的に

与えられる必要がある。その分野や手元にあるデータ

によって適切に決められる必要がある。  •  例えば、空調システムの故障なしで作動する機関はお

よそ100で1〜10000日の間に収まる場合μGはmsや無

限大の値を取らないようにする。(正規化したことも忘れ

ずに)  

•  パラメータ推測時に、そもそもの仮定を崩さないように。

各機体からのデータは正規分布に従っていること(ユニ

モーダルで対称性のある)。μjが正規分布に従っている

こと。τjがガンマ分布に従っていること。  

     

① ②

•  顕著な異常値があった場合、t分布を使った方がい

いかもしれない  •  個別の機体のデータで現れる異常値と、平均の分

布で現れる異常値が考えられる。  

•  μjとμGの分布をt分布に変える  

Page 22: Dbda chapter15

15.2.2  ImplementaRon  in  BUGS

•  データ配列Ndataの各値は、測定値と機体番号

のセットになっている  •  「機体jのi番目のデータ」という意味ではない!  

•  事後平均:61.6日  •  Means  of  Each  Aircrauを も説明できるのは、平

均2.28、標準偏差0.33の正規分布  •  Precisions  of  Each  Aircrauを も説明できるのは、

平均3.83、標準偏差1.25のガンマ分布  

(SecRon  15.4.2)

Page 23: Dbda chapter15

15.3  Summary

•  正規尤度関数の精度が固定された場合、事後確率分布の平均と精度が計算が

シンプルに。←このため標準偏差の代わりに精度を使う  •  「正規尤度関数の平均が正規分布に従う、精度がガンマ分布に従う」とするのが

conjugate事前関数が使えるから一般的である。しかし、必ずこれを使う必要性は

なく、BUGSを使えば任意の事前関数プログラムが簡単にかける(効率に違いがあ

る)  

•  繰り返し測定の場合、個々の分布と、個々の平均の分布に正規分布が使える。

BUGSでの階層モデルのプログラミングも簡単  •  正規尤度関数を使う場合、データが正規分布に従っていることをチェックする必要

がある(少なくともユニモーダルで対称性のあることをチェックする)。激しくnon-­‐normalな場合正規かするか、non-­‐normal尤度関数を使う。  

•  データに顕著な異常値が含まれている場合、正規尤度関数の代わりにt分布を

使った方が良い場合がある。(BUGSを使った応用例は後の章に出る)  

 

Page 24: Dbda chapter15

15.4  R  Code

15.4.1  EsRmaRng  the  Mean  and  Precision  of  a  Normal  Likelihood  •  正規尤度関数の平均・精度の推測  15.4.2  Repeated  Measures:  Normal  Across  and  Normal  Within  •  階層モデルの実装(航空機の空調システム)