2024-06-01から1ヶ月間の記事一覧
データの読み込み こちら(https://ides.hatenablog.com/entry/2024/06/21/235127)で使った心臓病のデータを使用する。 library(dplyr) url <- "https://archive.ics.uci.edu/ml/machine-learning-databases/heart-disease/processed.cleveland.data" column_…
Lassoの技法のひとつである安定性選択とランダム化された安定性選択があるが、これらの方法は結果がスパースになるという問題がある。 要は、選ばれる変数が少なく、とてもスリムにモデルになってしまうという問題である。 github.com link.springer.com ar5…
科学論の実在: パンドラの希望作者:ブルーノ ラトゥール産業図書Amazon 読書会の覚書。 この章はアマゾンの森林での土壌サンプリングを題材に、科学的実践の詳細を観察し、その過程を描写している章。 「循環する参照」(circulating reference) 「循環する…
安定性選択(Stability Selection)について。 ides.hatenablog.com データは説明はこちら。 ides.hatenablog.com データの作成と前処理 library(dplyr) url <- "https://archive.ics.uci.edu/ml/machine-learning-databases/heart-disease/processed.clevelan…
従属変数が連続変数のLasso回帰を今まで紹介してきたが、今回は従属変数が2値、つまりロジットモデルのLasso回帰の例を示す。 使用するのは心臓病のデータである。 データの作成 # データの読み込み(heart disease datasetを使用) url <- "https://archive…
kーfold CVのやり方はこちら。 ides.hatenablog.com また、結果にどのくらいの安定性があるか、計算のたびに異なる乱数を与え、kーfold CVのLassoの計算を100回反復した。1) 独立変数側で選ばれた変数の回数、2)選ばれた時の推定値の平均とその標準偏差を計算…
一つ抜き交差検証(Leave-One-Out Cross-Validation, LOOCV)は、各データポイントを一度だけ検証データとして使用し、残りのデータを訓練データとして使用する交差検証である。具体的には、まずデータセットから1つのデータポイント(1ケース分のデータ)を…
モンテカルロ交差検証(Monte Carlo cross-validation, MCCV)、もしくは反復ランダムサブサンプリング検証(Repeated random sub-sampling validation)と呼ばれる方法は、訓練データと検証データをランダムに分割し、ホールドアウト法と同じく訓練データに基づ…
「主要耐久消費財の普及率」の推移のデータを用いて、ルームエアコンの普及率へのモデルフィッティングを行う。 https://www.e-stat.go.jp/stat-search/files?page=1&layout=datalist&toukei=00100405&tstat=000001014549&cycle=0&tclass1=000001200820&tcla…
安定性選択の方法の一つ。 ides.hatenablog.com ランダム化された安定性選択は、変数選択プロセスにランダム性を導入する方法であり、変数選択の安定性を向上させることを目的としている。この方法では、データを繰り返しサブサンプリングし、Lasso回帰を適…
www.rdocumentation.org データの準備 library(haven) library(tidyr) auto_data <- haven::read_dta("http://www.stata-press.com/data/r9/auto.dta") auto_data <- auto_data %>% drop_na() # 全カラムに対してNAがない行を抽出 auto_data$foreign <- as.i…
入れ子交差検証(Nested Cross-Validation)は、モデルの性能評価とλの選定におけるバイアスを排除するための検証手法である。この方法は、外側と内側という比喩を用いて説明される。外側のクロスバリデーションと内側のクロスバリデーションの二重構造から…
クロスバリデーションの基本的な方法ホールドアウト法やり方と変数選択と推定の安定性のシミュレーションを行った。 n-fold クロスバリデーションがよくつかわれているため、ホールドアウト法はあまり使われないので実践向きではない。 今回は訓練データを70…
stat.paperswithcode.com HDCI(High-Dimensional Confidence Intervals)はは、Lasso回帰とRidge回帰の欠点を補うという点にある。 Lasso回帰は、変数選択を行う際に多くの変数の係数をゼロにするため、少ししか関連性のない変数が推計から排除される可能性…
反復交差検証 Repeated Cross-Validationの安定性のシミュレーションを行った。 反復交差検証については以下のエントリを参照。 ides.hatenablog.com ides.hatenablog.com 安定性のシミュレーションはLOOCVやnーfolds CVの場合と同様に異なった乱数シードを使…
Repeated Cross-Validation(RCV)はCVを反復して安定性を高めようという方法である。 ides.hatenablog.com ただ、何回繰り返せばよいかわからない。 説明を読んでいると5回から10回くらいであろうと書いてあるが、その根拠は経験則のようだ。 社会調査で使う…
データの読み込み library(haven) library(tidyr) # データの読み込みと前処理 auto <- haven::read_dta("http://www.stata-press.com/data/r9/auto.dta") auto <- auto %>% drop_na() # 全カラムに対してNAがない行を抽出 # foreign列を整数に変換 auto$for…
こちらで利用したデータとコードを用いる。 ides.hatenablog.com データの準備 library(haven) library(tidyr) # データの読み込みと前処理 auto <- haven::read_dta("http://www.stata-press.com/data/r9/auto.dta") auto <- auto %>% drop_na() # 全カラム…
通常のクロスバリデーションでは乱数によって結果がかなり違うため、そこで今回は一つ抜き交差検証(Leave-One-Out Cross-Validation, LOOCV)の安定性のシミュレーションを行うことにした。 LOOCVの計算の方法はこちら。 ides.hatenablog.com また、結果に…
LASOOPACKの作者が簡単に解説していたので、まずはそれを参考にシミュレーションをしてみる。 statalasso.github.io 基本形 Stata // データの読み込み webuse auto, clear drop if rep78==. // Lasso 10-folds CV lasso linear price mpg-foreign, grid(1, …