玄関雑学の部屋雑学コーナー統計学入門

11.5 変数選択法

(1) 変数選択法の種類

重回帰分析やロジスティック回帰分析と同様に、比例ハザードモデルによる重回帰型生命表解析にも各種の変数選択法が考えられています。 比例ハザードモデルによる重回帰型生命表解析は、重回帰分析において目的変数が対数ハザード比になったものに相当しますから、次のように変数の選択法にも同じような手法があります。 (→7.3 変数の選択)

  1. 変数指定法
    医学・薬学等の実質科学的理論や知識によって適当な変数を指定する。
  2. 総当たり法
    全ての変数の組み合わせを計算し、最も良いと思われるものを選択する。
  3. 逐次選択法
    一定の規則に従って変数を逐次選択していく。

これらの手法のうち最も多用されるものは、重回帰分析と同様に3番の逐次選択法です。 そしてこの方法は、変数の選択規則によってさらに次のように細分されます。 なお比例ハザードモデルによる重回帰型生命表解析では、ロジスティック回帰分析と同様に、重寄与率の増減分を反映するスコア統計量を変数選択の指標にします。 そしてスコア統計量としては、偏回帰係数の検定に使用するワルドのχ2値を用います。 (→10.4 変数の選択)

  1. 変数増加法(前進的選択法、forward selection method)
    最初に、全変数のうち対数ハザード比に対するスコア統計量が最大のものを取り込む。 そしてそれ以後は、すでに取り込まれた変数との共有部分を除いて、単独でスコア統計量が最大の変数を取り込んでいく。 これは、その変数を取り込んで重回帰式を計算した時、重寄与率の増加が最大になることを意味している。 その際、スコア統計量があらかじめ決めておいた値、すなわち取り込み基準未満になった時に変数の取り込みを終了する。
  2. 変数減少法(後退的選択法、backward selection method)
    最初に全変数を取り込み、以後は取り込まれた変数のうち、単独でスコア統計量が最小のものを追い出していく。 これは、その変数を追い出して重回帰式を計算した時、重寄与率の減少が最小になることを意味している。 この際、スコア統計量があらかじめ決めておいた値、すなわち追い出し基準以上になった時に変数の追い出しを終了する。
  3. 変数増減法(stepwise forward selection method)
    増加法と減少法を組み合わせたもので、まず増加法と同様に取り込み基準に従って変数を取り込む。 そして1つ変数を取り込むたびに、すでに取り込んだ変数の中に、減少法と同様の追い出し基準を満足するものがないか調べ、あればそれを追い出してから、さらに変数の取り込みを続ける。 そして取り込むべき変数も追い出すべき変数もなくなった時に、変数の選択を終了する。
    この方法は、対数ハザード比に寄与する割合が大きい変数を少数選択するという特徴を持ち、逐次変数選択法の中で最も多用されている。
  4. 変数減増法(stepwise backward selection method)
    増加法と減少法を組み合わせたもので、変数増減法とは逆に、まず減少法に従って全ての変数を取り込み、追い出し基準を満足するものを追い出す。 そして1つ変数を追い出すたびに、すでに追い出した変数の中に、増加法と同様の取り込み基準を満足するものがないか調べ、あればそれを取り込み、さらに変数の追い出しを続ける。 増減法と同じく、取り込むべき変数も追い出すべき変数もなくなった時に変数の選択を終了する。
    この方法は、対数ハザード比に寄与する割合が少ない変数を少数除外するという特徴を持ち、効率的な変数の組み合わせが得られる可能性が逐次変数選択法の中で最も高い。

(2) 変数増減法の手順

変数選択法の中で最も多用されるのは重回帰分析と同じく変数増減法なので、この手法について順を追ってもう少し詳しく説明することにしましょう。 (注1)

1) 変数の取り込み

まず最初にスコア統計量が最大の変数、つまり単独で対数ハザード比に最も寄与している変数を探し、それが取り込み基準を満足するなら取り込みます。 仮にそれをx1とすると、この時の状態は図11.7のようになります。

図11.7 1つの変数を取り込んだ時

取り込み基準は、「重寄与率に対する寄与分が回帰誤差の2倍以上あること」すなわち「スコア統計量χ2値が2以上」にするのが一般的で、これは次のように表されます。

スコア統計量:χ2≧χ2in=2の時取り込み

χ2inの値は2と決められているわけではありませんが、一般に2〜2.5ぐらいが適当だといわれています。

2) 次の変数の取り込み

次に残りの変数から今取り込んだ変数と共有する情報を取り除き、その上でスコア統計量が最大の説明変数を探します。 そしてそれが取り込み基準を満足するなら、その説明変数を取り込みます。 その変数をxjとすると、この時の状態は図11.8のようになります。

図11.8 次の説明変数を取り込んだ時

3) 変数の追い出し

今までに取り込んだ変数のうち、単独でスコア統計量が最小のもの、つまりその変数を追い出した時に重寄与率の減少が最小になるものを探します。 そしてそれが追い出し基準を満足しているのなら、その変数を追い出し、満足していないのならそのままにします。 これは次のように表されます。

スコア統計量:χ2<χ2out=2の時追い出し

χ2outの値はχ2in以下ならどんな値でもかまいませんが、普通はχ2inと同じ値にします。 もしχ2out>χ2inにすると、同じ説明変数が出たり入ったりを繰り返してしまうので注意が必要です。 またχ2out=0にすると変数増加法になり、χ2in=χ2out=0にすると全変数を取り込むことになります。 このあたりのことも、重回帰分析と同様です。

図11.9 説明変数の追い出し

4) 変数選択の終了

さらに2番に戻って変数の取り込みを続け、取り込む変数も追い出す変数もなくなるまで、2番と3番の手順を繰り返します。

(3) 変数選択の例

表11.8のデータに変数増減法による重回帰型生命表解析を適用すると、次のように変数を2つとも取り込み、前節の結果と同じものになります。 なお、取り込み基準χ2inと追い出し基準χ2outはどちらも2にしました。 (注2)

・変数選択後の比例ハザードモデル式…x1とx2を選択
 y=ln{ λ(t|x1,x2)
―――――
λ0(t)
}=-0.420-0.669x1+0.735x2
 x1のスコア統計量:ワルドのχβ12値=5.925>χ2in=2
 x2のスコア統計量:ワルドのχβ22値=16.316>χ2in=2
 x1:治療(0:無 1:有)  x2:重症度(0:症状無 1:軽症 2:重症)

重回帰分析やロジスティック回帰分析と同様に、逐次変数選択法によって得られた比例ハザードモデル式は、できるだけ少ない変数で、できるだけ精度良く生存率を予測するための、簡便で実用的な予測式です。 このため例えば医学の臨床現場で、なるべく少ない検査項目で、なるべく正確に予後を予測したい時などに用いると便利です。

そして選択された変数の組み合わせは、単に数字の大きさだけで機械的に選択されたものであり、科学的に最適なものでも、因果関係を考慮したものでもありません。 このため得られた比例ハザードモデル式について、実質科学的に十分吟味することが必要です。 もし実質科学的に解釈することが困難で、納得のいかない結果でしたら、変数の組み合わせを変え、色々な比例ハザードモデル式を計算し、それらをよく検討して最終的な結果を選ぶべきです。 このあたりの注意点も重回帰分析やロジスティック回帰分析と同様です。


(注1) 比例ハザードモデルによる重回帰型生命表解析の変数増減法の原理は、ロジスティック回帰分析の変数増減法の原理と同じであり、手順も注意点もほぼ同じです。 (→10.4 変数の選択 (注1))

1) スコア統計量計算

最初は、全ての変数についてスコア統計量を計算します。 スコア統計量としては、ワルドの検定に用いるχ2値を用います。 ただしこの場合のχ2値は、全ての偏回帰係数の初期値を0として、ニュートン・ラプソン法を1回計算した時の値を用います。 変数選択途中では、未選択の変数についてだけスコア統計量を計算します。 その際、選択済みの変数の偏回帰係数の初期値は最尤推定値を用い、未選択の変数の偏回帰係数の初期値は0として計算します。

なお比例ハザードモデルの定数項は各変数の平均値と偏回帰係数から計算するため、ニュートン・ラプソン法の計算対象にはなりません。

初期値:
bj0:選択済みの変数については最尤推定値、未選択の変数については0









スコア統計量:

2) 取り込み変数の選択

ここから変数の選択に入ります。 未選択の変数の中でスコア統計量が最大のものを選び、スコア統計量が取り込み基準を満足していれば、その変数を取り込みます。 もし変数選択基準を満足していなければ、これで変数の選択を終了します。

χj2≧χin(=2〜2.5、取り込み基準)

3) 最尤解を求める

取り込まれたk個の変数を用い、初期値を0として、ニュートン・ラプソン法により最尤解を求めます。

4) 変数の追い出し

k個の変数の中でワルドのχ2値が最小の変数を選び、それが追い出し基準を満足していれば、その変数を追い出します。

χj2<χout(=2〜2.5、追い出し基準)

この後、3番に戻って最尤解を求め、変数の追い出しを続けます。 そして追い出す変数がなくなったら、1番に戻って変数の取り込みを続けます。

5) 変数選択の終了

変数選択は、4番で最後に追い出した変数と、1番に戻って取り込んだ変数が同じだった場合、または取り込む変数がなかった場合、または全ての変数を取り込んだ場合に終了します。

変数取り込み基準と変数追い出し基準が同じならば、4番で最後に追い出した変数を、1番に戻ってまた取り込むということは有り得ないと思うかもしれません。 ところが、変数追い出し時のχ2値は最尤解計算後の値であり、変数取り込み時のχ2値は最尤解計算前の値です。 このため、両者が同じ値になるとは限りません。 その結果、変数追い出し時に追い出した変数を、変数取り込み時にまた取り込んでしまうということ起こり得るのです。 そこで、そのような場合は最尤解計算後のχ2値を信頼し、その変数を追い出して変数選択を終了します。

変数選択基準として、ワルドのχ2値ではなく、ワルドの検定の有意確率p値を用いる方法もあります。

取り込み基準:p≦Pin=0.05
追い出し基準:p>Pout=0.05

しかし、有意確率p値は変数の影響の強さをそのまま反映するわけではなく、例数が少ない時は大きな値になり、例数が多い時は小さな値になります。 このため、例数が少ない時はいくら影響の強い変数があっても選択されず、例数が多い時は影響の弱い変数まで選択されてしまうので、合理的な基準とはいえません。 そしてロジスティック回帰分析における偏回帰係数の検定と同様に、ワルドの検定に実質的な意味はほとんどないため、あまりお勧めの方法ではありません。

(注2) 表11.8の例題について実際に計算してみましょう。

1) 全ての変数のスコア統計量計算

初期値:





2) 取り込み変数の選択

スコア統計量が最大のものはx2であり、しかも変数取り込み基準を満足しています。 そこでx2を取り込みます。

χ22=17.2904≧χin=2

3) 最尤解を求める

x2を用い、初期値を0としてニュートン・ラプソン法により最尤解を求めます。

初期値:



この更新された1を用いて、同様の計算を繰り返します。 そして5回目で45の違いが10-5以下になるため、ここで計算を終了して4を最尤推定値の近似値にします。





4) 変数の追い出し

最尤解計算後のx2のワルドのχ2値は、変数取り込み時のχ2値と少し異なります。 しかしこの値は追い出し基準を満足していないため、追い出し変数はありません。

5) 未選択の変数のスコア統計量計算

x1についてスコア統計量を計算します。 その際、b2の初期値は最尤推定値を用い、b1の初期値は0として計算します。

初期値:




6) 取り込み変数の選択

x1のスコア統計量は変数取り込み基準を満足しています。 そこでx1を取り込みます。

χ12=6.11802≧χin=2

7) 最尤解を求める

x1とx2を用い、初期値をどちらも0として、ニュートン・ラプソン法により最尤解を求めます。

初期値:



この更新された1を用いて、同様の計算を繰り返します。 そして5回目で45の違いが10-5以下になるため、ここで計算を終了して4を最尤推定値の近似値にします。





8) 変数の追い出し

最尤解計算後のx1とx2のワルドのχ2値は、追い出し基準を満足していません。 このため、これで変数の取り込みを終了します。



b03=0.669111×0.485714-0.734744×1.01429=-0.4202469
・比例ハザードモデル:y=-0.420-0.669x1+0.735x2

この結果は、全変数を強制的に取り込んだ結果と同じです。

ちなみにχ2in=χ2out=0とすると、どんな場合でも全変数を強制的に取り込みます。 ただし全変数を強制的に取り込むならば、前節の(注1)で説明したように、初期値として重回帰分析の結果を利用して計算する方が収束が速くて便利です。 (→11.4 比例ハザードモデル (注1))