重回帰分析やロジスティック回帰分析などの多変量解析での説明変数を選ぶ際に、よく”ステップワイズ法”という方法が使われています。
しかし
- 「ステップワイズ法ってどんな方法?」
- 「ステップワイズ法って良いの?」
などといった疑問を持っている方も多いはずです。
最近は「ステップワイズ法は使わないほうがいい」という批判もみられるようになってきました。
実際のところはどうなのでしょうか?
本記事ではステップワイズ法とはどういう方法なのか、どんなメリットがあるのか、なぜ批判されるのか、解説していきたいと思います。
初心者の方でも大丈夫なように、なるべく分かりやすく解説していきますね!
ステップワイズ法(変数増減法)とはどんな方法?強制投入法との違いは?
ステップワイズ法(変数増減法)とは?
ステップワイズ法とは投入した説明変数の中で、目的変数と関係する変数を”自動で”選んでくれる方法です。
ちなみに変数を選ばずに全部の変数を使って解析する方法は、”強制投入法”または”総当り法”なんて呼ばれます。
どのように変数を選んでいくのか、具体例を使って説明していきますね。
ステップワイズ法を例で考える
たとえば患者の入院期間(入院から退院するまでの日数)に関連する要因を知りたいとしましょう。
この時考えられる要因(説明変数)はたくさんありますが、ここでは”年齢”と病気の”重症度”、”治療内容”の3つに限定します。
いずれも入院期間に影響しそうですが、実際に影響するかどうかは解析してみないと分かりません。
ステップワイズ法(変数増減法)の場合、まずは変数が何もないモデル(これをヌルモデルといいます)を作成します。
もちろんまだ変数がないので、何の予測もできない状態です。
次に”年齢”、”重症度”、”治療内容”の3つの変数の中から1つの変数を選択してモデルを作ります。
ここでどの変数をモデルに入れるのかが問題となります。
そこでAICやBICといった指標を使うことで、どの変数を選択したモデルが一番良いか判定します。
AICやBICの詳細は難しいので割愛しますが、ひとまずモデルの最適さを示す指標だと覚えておけばOKです。
さて、これで一つの変数を選択したモデルが出来たわけですが、さらに変数を追加した方がよりよいモデルができるかもしれませんよね。
そこで残った2つの変数から更に1つ変数を追加することを検討します。
このように入院期間と関係の強い変数を1つずつどんどん追加していくわけですが、いずれ変数を追加してもAICやBICが変化しなくなります。(関係の強い変数を追加している間はAICやBICは良くなっていきます)
そうなると変数の追加を終了し、今度は余計な変数が入っていないか確認するために、ひとつずつ変数を減らしてAICやBICが変化しないか検討します。
この時にもし入院期間(目的変数)に関係ない変数があれば削除されます。
そうして最終的に入院期間(目的変数)に関係のある変数だけが選択された状態で結果が出力されます。
以上が変数増減法の概要です。
いかがでしたでしょうか?
要はAICやBICが最適になるように変数を増やして減らしてを繰り返しているだけですね。
このように投入された変数のうち、目的変数に関係のある変数だけを選ぶ方法がステップワイズ変数増減法です。
変数増減法と変数減増法の違い
ステップワイズ法というと、一般的に変数増減法を指します。
しかしたまに変数減増法のことをステップワイズ法と呼んでいる場合があるため注意が必要です。
変数減増法は最初に全部の変数を投入したモデルを作り、そこから1つずつ変数を減らしていく方法のことです。
最初に変数のないモデルを作る変数増減法とは逆の方法ですね。
どちらの方法を使うかで、最終的な結果が変わってきます。
どちらの方法がよいかはケース・バイ・ケースなのですが、変数減増法は変数が多すぎる場合やデータ数が少なすぎる場合には使ってはいけません。
基本的には適用範囲が広い変数増減法を使うことをおすすめします。
ステップワイズ法のメリット
ステップワイズ法のメリットは、変数を絞ることができる点です。
変数を絞ることでどんなメリットがあるのでしょうか?
少ないデータ数で回帰分析をする場合、基本的に変数を多くすることはNGとされています。
重回帰分析の場合はデータ数(n数)÷10までしか変数を入れてはいけないと言われています。
もしn数が100なら変数は多くても10までしか入れることができません。(詳細は割愛しますが、変数をたくさん入れすぎると結果が乱れます)
でも「検討したい変数はたくさんあるんだけど、データ数が足りなくて困った!」という時ってありますよね。
そんな時にステップワイズ法が役立ちます。
先ほどご説明したように、ステップワイズ法は少ない変数から検討していくので、変数がたくさん入るすぎるリスクを減らせるというわけです。
このようにステップワイズ法は変数が多すぎる場合でも変数を絞って解析ができるため、論文などで非常によく使われています。
ステップワイズ法と強制投入法との違いは?
ステップワイズ法と同じ場面でよく見る用語として「強制投入法」があります。
ステップワイズ法とは投入した説明変数の中で、目的変数と関係する変数を”自動で”選んでくれる方法です。
例えば、10個の説明変数を選んだら、その中で統計ソフトがAICなどに基づいて5個や3個の説明変数を自動で選んでくれます。
一方の強制投入法は、投入した説明変数を全て使って回帰分析をする、ということです。
例えば10個の説明変数を選んだら、10個全てをモデルに含めて回帰分析をします。
強制的に全てをモデルに含めるか、それとも統計ソフトに任せて自動で取捨選択をするかの違いですね。
ステップワイズ法に批判があるのはなぜ?
自動で説明変数を選んでくれるため、一見便利そうなステップワイズ法。
でも便利な一方で、問題点も指摘されています。
ステップワイズ法の問題点
便利なステップワイズ法ですが、ステップワイズ法が批判されることもあります。
ステップワイズ法は”結果を見ながら変数を選択する”という点で問題があるからです。
本来使用する変数は、解析をする前にすべて決めておかなければなりません。
結果をみてからだと、本来関係ないのにたまたまいい結果が出た変数を過剰に優遇してしまうリスクがあるからです。
確かにたくさん変数があればあるほど、たまたま目的変数に影響するデータが出てきやすくなります。
「結果を見てから入れる変数を決めたら意味ないじゃないか」
というのがステップワイズ法を批判する人たちの言い分で、これは正しいです。
もしステップワイズ法を使わずに済むなら、確かに避けた方がいいです。
ステップワイズ法を使わずに解析する方法
ステップワイズ法を使わない方法は
- 先行研究から使う変数を絞る
- 似たような変数は合体または片方を削除する
- n数を増やす(可能なら)
といった方法があります。
①先行研究から使う変数を絞る
研究であればまずは先行研究を使う方法を模索してみましょう。
似たような先行研究を探して、その研究で目的変数と有意に関連があった変数と新しく検証したい変数だけ使う、という方法ですね。
また、アウトカムとの臨床的な関係を踏まえて決めることも重要。
要するに、解析に依存しない方法で事前に変数は決める、ということが重要な点です。
②似たよう変数は合体または片方を削除する
変数がたくさんある場合、たいていは似たような変数が紛れています。
例えば”身長”と”座高”のようなものです。
身長と座高の場合、合体(合計するか平均を取るか)すると解釈が難しいので、どちらかを削除することになります。
どちらを削除するかは明確な決まりはありません。
より有用だと思う方またはより検証したい方を残すといいと思います。
n数を増やす
難しい場合も多いと思いますが、可能ならn数を増やしてしまえばステップワイズ法を使う必要がなくなります。
n数が増やせないかも検討してみましょう。
ステップワイズ法を使ってはいけないのか?
変数を減らすことが難しい場合、ステップワイズ法を使ってはいけないのでしょうか?
厳格な人は「絶対使ってはいけない」と言うかもしれません。
ただステップワイズ法の欠点を理解した上で使用するのであれば、問題ないのではないかと思います。
確かに問題はありますが、解析できないよりかは遥かに良いですし、必ずしも間違って結果が出てくるわけではないからです。
あくまでも、”間違った結果が出てくる可能性がある”というだけの話です。
そのため論文では慎重に使ったほうがいいかもしれません。
ステップワイズ法を重回帰分析やロジスティック回帰分析での実施例
ステップワイズ法はエクセルでは実施できません。
SPSSやEZRなどの統計ソフトを利用しましょう。
特にEZRは無料で利用できる統計ソフトです。
論文でも使われているソフトで実績もあるので、安心して使えます。
EZRでステップワイズ法を選択する場合は、重回帰分析やロジスティック回帰分析を使用する際に、チェックボックスにチェックをいれるだけです。
架空のデータでステップワイズをやってみると、最初に投入した説明変数は
- Sex
- コレステロール
- 最高血圧
- 身長
- 年齢
の5つであることがわかります。
そして最終的に得られたモデルの結果を見ると、以下の通り
- Sex
- コレステロール
の2つになったことがわかりました。
AICとBICどちらを使うか選択できますが、初心者のうちはどちらでも大丈夫です。
SPSSでも同様に解析画面でステップワイズ法を選択する画面があります。
解析方法の詳細はEZRはこちら、SPSSはこちらをご覧ください。
まとめ
最後におさらいをしましょう
- ステップワイズ法は変数を絞って解析する方法
- 変数増減法は目的変数と最も関連する変数から1つずつ順番に加えていく方法
- ステップワイズ法は結果を見て変数を絞る点で批判がある
- ステップワイズ法を実施するためには専用の統計ソフトが必要
いかがでしたでしょうか?
批判はありますが、ステップワイズ法は論文で非常によく使われおり実績のある解析方法です。
是非覚えておいてくださいね!
最後までお読み頂きありがとうございました。
コメント
コメント一覧 (1件)
[…] ステップワイズ法(AICやP値などの統計的な指標を使って変数を自動選択する方法)を使って解析する […]