Lasso/Elastic net での R2 のトレーニングと検証親愛なるみんな、
k 分割相互検証をペナルティ付き回帰モデル (ラッソ、エラスティック ネット) と組み合わせて使用し、トレーニング/検証セットの (平均) R2 値を調べて、過剰適合と説明された分散をチェックしたいと考えています。 すでに多くのオプションを探しましたが、見つかりません。 これを示す方法はありますか? それが概要表に表示され、機種選定に活用できると良いのですが。
ありがとう、マーカス
マックOS予測モデリングと機械学習Re: Lasso/Elastic net での R2 のトレーニングと検証ありがとうございます。モデル スクリーニング プラットフォームについてはもちろん知っていますが、このプラットフォームでは簡素化されたモデルが実行され、完全なモデルのオプションは提供されません。 たとえば、モデル スクリーニングにおけるニューラル モデルは、少数の隠れユニットのみを備えたかなり単純なものであると仮定します。
たとえば、2 層のより複雑なニューラル モデルでネストされた相互検証を実行したい場合、これはモデル スクリーニングでは実行できませんよね。
内側のループ内でのみ実行できるその他のこともあります。 たとえば、独立したテスト サンプルを含むサンプル全体を代入に使用するのは不公平であるため、代入は内側のループ内でのみ行われることがよくあります。
したがって、ネストされた相互検証を実行できるスクリプトを探しています。 これにより、たとえば、内側のループ内にのみ代入を挿入できます。
Re: Lasso/Elastic net での R2 のトレーニングと検証こんにちは@MarkusJH 、
コミュニティへようこそ!
あなたの質問に答えるためのオプションの 1 つは、メニュー「分析」、「予測モデリング」で利用可能なプラットフォーム「モデル スクリーニング」を使用することです。
「モデル スクリーニング」プラットフォームに入ると、「一般化回帰」と「追加メソッド」(ここではタイタニック号データセットで実行) 以外のメソッドの選択を解除し、モデルに 2 因子交互作用または二次項を含めるかどうかを指定できます。 再現可能な結果が必要な場合は、相互検証の分割数とランダム シードを指定することもできます。

分析が完了すると、検証結果が複数のフォールドにわたる要約として表示されます。 この概要表は、最も適切なモデルを選択するのに役立ちます (詳細を確認したいモデルを選択し (または [主要な選択] をクリック)、[選択項目を実行] をクリックして、選択したモデルの詳細を確認するには、一般化回帰のプラットフォーム):

また、「トレーニング」と「検証」メニューを開いて、(必要に応じて)フォールドごとの個々の結果を確認することもできます(ここでは「トレーニング」で、トレーニングされたモデルの種類ごとにフォールド識別子が最後の列に表示されます)。 :

あなたの質問を理解でき、この回答がお役に立てば幸いです。
もし私が何か誤解をしていて、これがあなたが期待していたものではなかった場合は、現在どのプラットフォームを使用しているか、どのような情報がすでに持っていて、どのような情報が欠けているかについて詳しく教えていただけますか?
Re: Lasso/Elastic net における R2 のトレーニングと検証...または、内側のループで実行したい別のことは、ハイパーパラメータの選択(たとえば、隠れユニットの数)です。
もちろん、内側のループの最後には、最適なモデルを定義する基準が存在する必要があり、その基準は外側のループのクロス検証に送信されます。
Re: Lasso/Elastic net における R2 のトレーニングと検証私は JMP に Elastic Net Regression に関する同様の質問をして、R-Squared の何らかの形式を取得する方法を尋ねましたが、KFold または Leave-One-Out 検証方法では提供されず、AICc と BIC でのみ提供されるという回答でした。したがって、手動で計算する必要があると思います。SAS ではこれが可能なので、かなり面倒だと思います。
Re: Lasso/Elastic net における R2 のトレーニングと検証@MarkusJH
「分析 > 予測モデリング」メニューの「モデル比較」プラットフォームを使用して、k 分割間で R2 値を比較できます。次の手順に従います。
- 検証列の作成ユーティリティを使用して K 折り列を作成し、「K 折り列の作成」(ダイアログ ウィンドウの左下) を選択します。
- Gen Reg を起動し、KFold 列を検証ロールとしてロードします。
- 回帰モデル (Elastic Net、Lasso など) を実行し、検証方法として検証列が選択されていることを確認します。
- モデルに満足したら、予測式をデータ テーブルに保存します。
- 各フォールドのR2値を表示するには、分析 > 予測モデリングメニューからモデル比較を起動します。
- 保存した数式列をYとして読み込み、KFold検証列をグループとして読み込みます。
- 結果のレポートには、列内の各 Fold の適合度の測定値が表示されます。
