JMP>大規模なデータセットからの予測シグネチャの識別>明らかな過剰適合の問題こんにちはJMPコミュニティ、
私は、臨床試験に登録された患者のベースラインで約4,000のバイオマーカー測定値を含む大規模なデータセットを持っています。 このデータの中から、12週間後の臨床転帰を予測する可能性のあるバイオマーカーの組み合わせを特定する必要があります。
私はかなり単純なアプローチを使用しましたが、これは大幅に過剰適合した出力を生成するように見えます。
- 4,000のバイオマーカーすべてをスクリーニング>応答スクリーニングで実行します。ここで、応答は12週目のバイナリ臨床出力です。
- 上位10〜20のバイオマーカーを選択します(FDRに基づく)
- 選択したバイオマーカーを(モデル効果として)フィットモデル>段階的プラットフォームで使用します。ここで、Yは12週目のバイナリ臨床出力です。基準= BICを最小化する
- モデルを生成する
このアプローチは、12週目の臨床反応に対して優れた「予測因子」をもたらしましたが(ROC AUC> 0.940)、ランダムに生成された「ダミー」変数(ROC AUC〜0.870)でテストした場合も高いROCAUCをもたらしました。 後者は、過剰適合のために私の方法がひどく不適切であることを私に示しています。
ディスカバリーおよびバリデーションの患者サブグループ(全人口の50%)での作業の実現可能性を調査しましたが、過剰適合の問題は解決しませんでした。
JMP Proが提供する高度なモデリングプラットフォームを使用する以外に、このような質問に取り組むためのJMPの優れた手法はありますか?
ご協力ありがとうございました。
一番、
TS
分析Re:JMP>大規模なデータセットからの予測シグネチャの識別>明らかな過剰適合の問題ランダムに生成された応答変数について、もう少し詳しく教えてください。どのくらい正確に作成しましたか?
Re:JMP>大規模なデータセットからの予測シグネチャの識別>明らかな過剰適合の問題こんにちはデール、
この比較的オープンな質問をフォローアップしていただきありがとうございます。 次の式を使用して確率変数を作成しました。
random uniform (0,1) > 0.5;
注目すべきことに、私は上記の「メソッド」をダミー変数の8つの異なるバージョンで実行し(つまり、数式を再計算し)、0.770から0.870の範囲のROCAUC値を生成しました。
私はそのような振る舞いに出くわしたことはありませんが、1,200を超えるバイオマーカー変数を扱ったことはありません。
ご協力いただきありがとうございます。
一番、
TS
Re:JMP>大規模なデータセットからの予測シグネチャの識別>明らかな過剰適合の問題答えはわかりませんが、見つけたものは確認できます。バイナリ応答変数(ランダム)と、200個の観測値を持つ20個のランダム正規因子を作成しました。AUC = .71になりました!本当に驚くべきことだと思います。パフォーマンスの尺度としてのAUCの制限と関係があるのではないかと思いますが、私が言ったように、私はこの動作を本当に理解していません。私の場合、それは確かに過剰適合であってはなりません。私は他の人がこれについて何を言うことができるかを見たいと思っています。
Re:JMP>大規模なデータセットからの予測シグネチャの識別>明らかな過剰適合の問題謎に追加するために、私が行ったシミュレーションを添付しました。今回は検証カラムを使用しました。注目に値する点:ロジスティック回帰(ファイルに保存されたスクリプト)は、トレーニングデータのAUCが約.71であり、検証データのAUCがはるかに低い(.5未満)ことを示しています。これは、過剰適合の明らかな証拠です。ただし、モデルのスクリーニングも実行しました。すべての方法(ロジスティック回帰を含む)では、トレーニングデータのAUCが約0.5で、検証データのAUCが低くなっています。これは私には妥当なようです。さらに、ロジスティック回帰モデルは重要ではありません(20のランダムな要因に期待するものについては、1つまたは2つの要因のみが重要です)。私が理解していないことの中には、モデルスクリーニングプラットフォーム内のロジスティック回帰プラットフォームとロジスティック回帰がそのような異なる結果をもたらす理由があります。モデルスクリーニングでは、個々のモデリングプラットフォームほどチューニングハイパーパラメータが検出されないことは知っています(または信じています)が、トレーニングデータの0.7と0.5の差は私には大きすぎるようです。