募集中いろいろな大学などでの研究をわかりやすく紹介したり、研究生活のこと・データ解析のことなど書いたり。ノイズ処理を行う」についてです。実行するためのプログラムについてはこちらをご覧ください。(LASSO)により変数選択をしながら線形の回帰モデルを構築することができます。LASSOを行うことでいくつかの説明変数に対応する回帰係数が0のモデルが得られるわけです。オートスケーリングするオートスケーリングとは各変数から平均値を引いて平均を0にし、各変数を標準偏差で割って標準偏差を1にする操作です。それぞれのλの値においてクロスバリデーションにより目的変数の推定値を得るクロスバリデーションとして、leave-one-outクロスバリデーションが有名ですが、オーバーフィッティングを起こしやすいため、5-foldクロスバリデーションや2-foldクロスバリデーションが望ましいです。データを一つ取り除いてそれ以外でモデルを構築して、取り除いた一つを推定することを繰り返すのではなく、あらかじめデータセットを5個または2個のグループに分けておき、1グループを取り除いてそれ以外のグループでモデル構築して、取り除いた1グループを予測することを繰り返します。mとして、例えばm=30とします。説明変数の数(正確にいうと次元の数)が30未満の場合はmをその数に合わせます。計算するRMSEの値が最小となるλの値を選択する選ばれたλの値におけるLASSOモデルを構築する回帰係数が0でない説明変数が、選択された変数ということになります。(r2CV・RMSECV)を計算するr2Cは目的変数の持つ情報の何割を説明できるモデルかを表します。RMSECはモデルのもつ平均的な誤差を表します。r2CVは目的変数のもつ情報の何割を新しいデータに対して推定できる可能性があるかを表します。RMSECVは新しいデータを推定した場合に平均的な誤差はどれくらいになるかを表します。クロスバリデーションは、完全な外部データを用いた検証方法ではないため、r2CV・RMSECVが適切に『新しいデータ』に対する性能を表現しているわけではありませんが、その指標にはなります。r2CVが大きく、RMSECVが小さいモデルが良いモデルといえます。r2Cとr2CVとの差が大きかったり、RMSECとRMSECVとの差が大きかったりすると、モデルがオーバーフィットしている危険があります。目的変数の実測値と計算値とのプロット、そして実測値と推定値とのプロットを確認するこれにより外れ値がないか確認できます。オートスケーリングされた後のモデルであるためです。そこで、新しく予測したい説明変数のデータがあれば、そのデータからオートスケーリングしたときの説明変数の平均値を引き、標準偏差で割ってから回帰係数により目的変数の推定値を計算し、その後その推定値にオートスケーリングした時の目的変数の標準偏差をかけて平均値を足す、つまり元のスケールに戻す必要があります。それぞれ平均値・標準偏差で標準回帰係数から回帰係数と定数項に変換する必要があります。データマイニングブログを勉強しながら役立つ情報を発信しています!フォローしていただけると嬉しいです。