モデル選択:ロジスティック回帰


13

我々が持っていると仮定n共変量バツ1バツn、バイナリ結果変数のy。これらの共変量のいくつかは、複数のレベルを持つカテゴリーです。その他は連続的です。「最適な」モデルをどのように選択しますか?言い換えれば、モデルに含める共変量をどのように選択しますか?

単純なロジスティック回帰を使用して、共変量のそ​​れぞれでyを個別にモデル化し、有意な関連性を持つ回帰を選択しますか?


1
下記の私の答えに加えて(または他の人、彼らが出てくる場合)、以下は(それ自体はロジスティック回帰に焦点を当てていないが)モデル選択のいくつかの良い議論を持っていstats.stackexchange.com/questions/18214/...
GUNG -復活モニカ

2
このサイトに関する最近のコメントから、@ jthetzelを引用します。「良い質問ですが、ここで最も学期が長い大学のコースで勉強したもので、キャリアを勉強している人もいます。」ある人と座って、「今日の午後、スワヒリ語を教えてもらえますか?」と言うようなものです。Gungが彼の答えで良い点を挙げていないわけではない。それはただの広大な領域です。
rolando2

2
これはスレッドでもありますが、非常に具体的な質問については、一般的に私からのアドバイスがいくつか含まれています:stats.stackexchange.com/questions/17068/…また、以下で考えを述べます。
フォマイト

さて、基準としてAICを使用するだけだと思います。フルモデルのAICは最低です。また、AICは互いにかなり異なっています。
トーマス

回答:


10

これはおそらく良いことではありません。最初にすべての個々の共変量を見てから、重要な共変量を使用してモデルを構築することは、論理的に自動検索手順と同等です。このアプローチは直感的ですが、この手順から行われた推論は無効です(たとえば、真のp値はソフトウェアによって報告されたものとは異なります)。問題は、共変量の初期セットのサイズが大きいほど大きくなります。とにかくこれを行うと(そして、残念なことに、多くの人が行います)、結果のモデルを真剣に考えることはできません。代わりに、完全に新しいスタディを実行して、独立したサンプルを収集し、以前のモデルを適合させてテストする必要があります。ただし、これには多くのリソースが必要です。さらに、プロセスに欠陥があり、以前のモデルはおそらく貧弱なものなので、多くのリソースを無駄にします。

より良い方法は、あなたにとって実質的に興味のあるモデルを評価することです。次に、モデルの柔軟性を損なう情報基準(AICなど)を使用して、それらのモデル間で判断します。ロジスティック回帰の場合、AICは次のとおりです

AC=2×ln可能性+2k

ここで、はそのモデルに含まれる共変量の数です。すべてが等しい、AICの最小値を持つモデルが必要です。ただし、必ずしもそれほど単純ではありません。いくつかのモデルのAICの値が類似している場合、たとえ1つが最も低い場合でも注意してください。 k

異なるソフトウェアが異なる情報を出力するため、AICの完全な式をここに含めます。可能性だけから計算する必要がある場合もあれば、最終的なAICまたはその中間のものを取得する場合もあります。


6
AICは好きですが、2つ以上の事前に指定されたモデルでAICを計算すると、多重度の問題が発生することに注意してください。
フランクハレル

1
@FrankHarrell素敵なヒント!
GUNG -復活モニカ

9

回帰モデルに含める変数を選択する方法は多数ありますが、適切なもの、悪いもの、ひどいものがあります。サンダーグリーンランドの出版物を簡単に参照できますが、その多くは変数の選択に関するものです。

ただし、一般的に言えば、いくつかの一般的な「ルール」があります。

  • ソフトウェアパッケージに付属しているような自動化アルゴリズムは、おそらく悪い考えです。
  • gungが示唆するように、モデルの診断手法を使用することは、変数選択の選択肢を評価するための優れた手段です。
  • また、主題の専門知識、文献検索、有向非巡回グラフなどの組み合わせを使用して、変数選択の選択肢を通知する必要があります。

3
特に、ポイント1と3を念頭に置いてください。モデルの診断手法では、タイプIエラーを保持できないことがあります。
フランクハレル

3
@Epigradを入れてください。ただし、1つ追加します。問題が大きくなると、自動化されたアルゴリズムが非常に魅力的になります。それらは、場合によってはモデル選択を行う唯一の実行可能な方法かもしれません。人々は現在、数千の潜在的な変数と数百万の観測値を持つ膨大なデータセットを分析しています。1000次元の直感での主題の専門知識はどうですか?そして、あなたが見つけることは、たとえあなたがそれを手動で(すなわち、アナリストと)行っても、変数を選択するためのいくつかのショートカットルールを作成することになるでしょう。難しいのは、これらの選択肢を実際にコーディングすることです。
確率論的

1
@probabilityislogic私はそれに同意します。正直なところ、従来の手法は非常に大規模なデータセットにはあまり適していないと思いますが、より受け入れやすい手法にフォールバックする傾向は、私を驚かせます。自動化されたアルゴリズムが10個の変数を使用してデータセットをバイアスできる場合、10,000個の変数を使用してバイアスをかけられない理由はありません。現在、一部の部分の分析よりもビッグデータの取得に重点が置かれているため、私はやや気味が悪くなっています。
フォマイト

2
深く皮肉なことに@probabilityislogic、私は今>自分がウェル電位の変数の1000年代の10秒を超えるとデータセットを扱う見つける<。
媒介物

2

「最適な」モデルをどのように選択しますか?

この質問に答えるのに十分な情報が提供されていません。yの因果関係を知りたい場合は、交絡について知られていることを反映する回帰を実装する必要があります。予測を行いたい場合、AICは妥当なアプローチです。

これらのアプローチは同じではありません。コンテキストは、変数を選択する(多くの)方法のどれがより適切かを決定します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.