一般化線形モデルの一般論

はじめに

これまで、単回帰分析や重回帰分析といった「目的変数が正規分布に従う」と想定する線形モデルについて説明してきた。
しかしながら、関心のあるデータはいつも正規分布だけで表現できるわけではない。ある病気になるリスクを高くしたり低くしたりする要因について考察したい場合もあるし、発作の回数に影響する要因を探りたいような場合もある。
一般に、ある病気になるか・ならないかはBernoulli(ベルヌーイ)分布*1、発作の回数であればPoisson(ポアソン)分布が適切とされることが多い。

統計モデルはそもそも現実を単純化して表現したものにすぎないが、データの性質に合わせた確率分布を用いることができれば、現実を理解するための助けになるはずである。
そこで、正規分布の線形モデル*2を他の確率分布を扱えるように拡張した「一般化線形モデル(Generalized linear model)」という枠組みが開発されてきた(といっても、提案されたのはもう50年くらい前のことらしい)。


正規分布の線形モデルと何が違うのか

正規分布の線形モデルと違う点は、大きく2つある。

(1) 正規分布以外の確率分布を扱える。

「はじめに」で述べた通り、2値のデータに対してはBernoulli分布、計数データ(0, 1, 2, ...のように自然数の値をとるデータ)に対してはPoisson分布を用いるなど、目的変数の従う確率分布として正規分布以外にも選択肢を広げることができる。

f:id:mstour:20210128193911j:plain
なおBernoulli分布やPoisson分布など、一般化線形モデルで扱うことのできる確率分布は「指数型分布族(Exponential family of distributions)」と呼ばれるグループに属する。

指数型分布族とは大雑把にいうと、確率密度関数(離散的分布の場合は、確率関数)を数学的に式変形することで、ある共通の形式に書き直すことができるような確率分布をまとめたもののことをいう。詳しい話は、また機会があれば書きたいと思う。
この指数型分布族に属する確率分布であれば、どのような分布を想定した場合でも同じ手順によってパラメータの推定、信頼区間の推定、パラメータに関する検定が行えるよう、理論的に整備されている。

(2) 目的変数と説明変数との関係性が、非線形になりうる。

正規分布の線形モデルの場合、目的変数の期待値(すなわち、正規分布の平均パラメータ)と説明変数とが次のような形式で等式で結びつけられていた*3

 \displaystyle
E(y_i) = \mu_i = \boldsymbol{x}_i^T \boldsymbol{\beta}

正規分布に従う確率変数はあらゆる実数値をとりうるので( -\inftyから \inftyまで)、説明変数にどんな値が入っても特に問題はなかったが、その他の確率分布を用いる場合には問題が生じる。
例えば、Bernoulli分布のパラメータは「値が1となる確率 \pi」なのだが、 \piは確率なので0〜1の値しかとることができない。ところが正規分布の場合と同じように

 \displaystyle
\pi_i = \boldsymbol{x}_i^T \boldsymbol{\beta}

としてしまうと、説明変数 \boldsymbol{x}の値によっては0〜1の範囲をはみ出してしまうことになる。

そこで、左辺の \pi_iを次のように変換する。

 \displaystyle
\log \left( \frac{\pi_i}{1-\pi_i} \right) = \boldsymbol{x}_i^T \boldsymbol{\beta}

このような変換を施すと、左辺は -\inftyから \inftyまでの全ての実数値をとることができるようになる。例えば \pi_i = 0の場合(厳密には0に近づけた場合の極限)には左辺は -\inftyとなり、 \pi_i = 1の場合(同じく極限)には左辺は \inftyとなる。 \pi_iを0から1の方向へ動かせば、それに伴って左辺も -\inftyから \inftyの方向へ単調に増加する。
f:id:mstour:20210128193933p:plain
この変換によって、説明変数 \boldsymbol{x}_iとパラメータ \pi_iとの間には非線形な関係が生じることになる。なお \pi_i \log \left( \frac{\pi_i}{1-\pi_i} \right)へ変換する関数は「ロジット関数(Logit function)」と呼ばれる。


モデルの標準形

上記の例のように、一般化線形モデルでは、目的変数が従うと想定した確率分布のパラメータと説明変数とを適切に結びつけるために、「パラメータを非線形関数で変形したもの」と説明変数とを等式で結びつける。
モデル化すべきパラメータを \theta_iとすると、一般的な形式は次のようになる。

 \displaystyle
g(\theta_i) = \boldsymbol{x}_i^T \boldsymbol{\beta}

適切に変換するための関数 gは「連結関数(Link function)」と呼ばれる。
この連結関数は使用する確率分布によって適切なものがほぼ決まっており、対応する確率密度関数を式変形することで導出することができる(このあたりの話はまた改めて)。
なお、連結関数 gは単調(つまり、引数 \theta_iの値が大きくなれば常に関数値 g(\theta_i)の値も大きくなる)で、かつ微分可能であるものが用いられる。

具体例をいくつか挙げる。
目的変数の分布として正規分布を想定したモデルでは連結関数 gは恒等関数、つまり何も変換しないという関数を用いていることになる:

 \displaystyle
g(\mu_i) = \mu_i = \boldsymbol{x}_i^T \boldsymbol{\beta}

Bernoulli分布を想定する場合は、前述のロジット関数

 \displaystyle
g(\pi_i) = \log \left( \frac{\pi_i}{1-\pi_i} \right) = \boldsymbol{x}_i^T \boldsymbol{\beta}

が連結関数である。このモデルはロジスティック回帰(Logistic regression)としてよく知られている。

Poisson分布を想定する時は、分布を特徴づけるパラメータである \lambda_iに関して

 \displaystyle
g(\lambda_i) = \log \left( \lambda_i \right) = \boldsymbol{x}_i^T \boldsymbol{\beta}

のように対数関数が連結関数となる*4


まとめ

一般化線形モデルや関連するモデルを紹介していくにあたり、まずは一般化線形モデルと正規分布モデルとの違いを大まかに述べた。
大きな違いは、
・目的変数をモデル化するために、指数型分布族に属するさまざまな確率分布を使用することができる
・説明変数と目的変数(の従う分布のパラメータ)との間を連結関数で結ぶことにより、説明変数がどのような値であってもパラメータのとりうる値の範囲から逸脱することがない
という点である。
今後は、重要な個々のモデルの紹介や、理論的背景に話を進めていければと思う。

今回は以下の文献を参考にした。
[1] Annette J. Dobson(2008), "一般化線形モデル入門", 共立出版.
[2] John M. Lachin(2020), "医薬データのための統計解析", 共立出版.

*1:2値データの解析では病気になった人数について二項分布を考えることが多いが、ここでは各個人が病気になるorならない、の分布を考えている

*2:重回帰分析、分散分析、共分散分析といった正規分布の線形モデルは「一般線形モデル(General linear model)」と総称されることがあるが、一般化線形モデルと紛らわしいのでここではこの用語は使わなかった

*3:単回帰や重回帰の説明では「目的変数の(説明変数を与えたもとでの条件付き)期待値をモデル化する」という流れで話をしたが、他の分布を使う際にはパラメータに対するモデル式を立てていくと考えるほうが理解しやすいので、以降はそのような言い方をすることにする

*4:目的変数である「何らかの事象の発生回数」が観察時間や観察個体数などに依存するような場合には上式の右辺に「オフセット項」を含めることがあるが、ここではその話は省略した