morの解析ブログ

解析疫学、リスクにまつわるメモや計算

「推定」のまわりをさぐる.教科書では「解析はMHにより行う、因子が多ければ重回帰を用いる」という風で詳しい例は少ない.独自(のつもり)な思いつきで具体に試行.
 数理を用いるべきアセスメントにも切り込む.

【最尤推定の理解】

■ 二項分布、ポアソン分布より複雑で面白いのがlogistic分布の最尤推定である.
■ 最尤推定をlogistic回帰でなぞる.
    xi :個人ごとのプロファイル 
    βj :係数(切片を含む)   
 とおく.また、
    yi :観察された個人ごとイベント発生プロファイル
 とすると、モデル化された発生確率は、
    pi=exp(xiβyi) / (1+exp(xiβ))
          (yi=1なら、発生する確率、yi=0なら発生しない確率) 
 となる.
        * yiは 0,1 のいずれかをとる.
         expの肩にかけると pi と 1-pi が一式で表現できるのがミソ


 尤度、  
    ℒ = π  pi 
 つまり、    
    ℒ = π  exp(xiβyi) / (1 + exp(xiβ))
 について、最大化するβiをもとめるため、対数尤度 L
    L = Σxiβyi - Σln(1+exp(xiβ))
 を扱う.[1,2]


 βで微分すると、expを含んだ右項は、なんとpi の形に戻り、([3]、例は[4])次のようになる.
   β。で微分・・ Σyi - Σ pi = 0   ①
   βi     ・・ Σxiyi - Σ pixi = 0  ②
 これを解いて最尤な係数を求める.
 なおxが多段階な量であるとき②は、xによる加重平均の形になる.


 ①は、データの平均が推定する係数を縛り、②は、曝露した因子が発生を説明するという拘束が課されることとなる.


   参考文献 :[1] 菅 氏「R でロジスティック回帰分析」harp.lib.hiroshima-u.
         [2] 外山氏辻谷氏 「実践R統計分析」 オーム社
         [3]  Scott A. Czepie,Maximum Likelihood Estimation of Logistic
           Regression Models: Theory and Implementation
         [4] 土居氏 一般化線形モデル入門の入門
         
■ Rでは最尤推定の計算は内部で処理され、結果はあっけなく現れる.手計算するためには、表計算で、プロファイルとなるxi、yiについて01を入力したリストを作り左辺を計算する.一方適当な係数からなるセルとyiの間で計算したpiを和し、最小となる係数を探る.(手計算例は以前の記事に掲載済)初めに与える係数は、MHORと、コントロールグループの発生率から計算したoddsを用いて係数ベクトルを求める手計算を体感すると、重回帰での最尤推定の巧妙さが実感できる.


■ 最尤推定の計算過程:微分対数尤度による係数の最適化とは、要するに観察した曝露、イベント発生の両プロフィールによる行列に対して、曝露と発生確率(係数ベクトル)による行列を近づける作業だった.
■ 面白いところは、とくに対数尤度を微分すると再度pi()が現れて、それが観察した情報xi、yiとの対応に直感的な結びつけができるところにある.


■ ①②の性質から、glmでは、ある因子を出し入れするだけで係数が変化する.とくに事例に強く関連する因子が抜けたとき、異常な推定がなされることになる.層化解析を併用すべき理由である.しかしこのことが、重要な因子が手元になかったことを気づかせる.
 また、交互作用など留意する必要が出てくる. 


□ 係数の関係式
 推定係数は、フルモデルとreduceモデルでは異なる.  関連記事: https://moruke.muragon.com/entry/133.html


 reduceモデルの試行から、いずれの係数も変化する、とくにBGの異常は見逃せない.
 BGを示す係数は、β。である. 
用語 
 係数=glmで推定されるcoefficients

×

非ログインユーザーとして返信する