ロジスティック回帰分析を、正則化つき(L1/L2)で実行したいのですが、
実施したことがある方がいらっしゃいましたら、
どのように実装可能かアドバイスいただけませんでしょうか?
(ソースコードや、手順について参考になる記事など・・)
@11140 さん
下記のExploratoryの記事の中に、e1071パッケージのsvmを実行した内容がありますので、下記の記事のスクリプトは参考になるかと思います。
実際には、glmnetパッケージを使って、
- 正則化ロジスティック回帰モデルの
formula
を受け入れ(標準化済み変数を想定) - 正則化パラメタのlambdaを決定するためにTVHまたはクロスバリデーション用にデータを分割
- 適当なlambdaを計算
- 適当なlambdaを用いて正則化ロジスティック回帰モデルを実行
- 回帰係数を返す または テストデータを予測できるように返して評価
というような感じで関数を作成すれば実行可能かと思います。glmnetパッケージ以外にも、h2oパッケージ、tidymodelsパッケージでengine
としてglmnetを呼び出すなどでも同じようなことができると思います。
他にもH2OパッケージのRandomForestを実行した内容がありますので、下記の記事のスクリプトの例も参考になるかと思います。