機械学習における最適なサブセットの選択 (説明と例)
機械学習では、一連の予測変数と応答変数を使用してモデルを構築することがよくあります。私たちの目標は、予測変数を効果的に使用して応答変数の値を予測できるモデルを構築することです。
p個の合計予測子変数のセットが与えられると、構築できる可能性のあるモデルが多数存在します。最適なモデルを選択するために使用できる 1 つの方法は、最適なサブセット選択として知られており、次のように機能します。
1. M 0を予測変数を含まないヌル モデルとする。
2. k = 1, 2, … p の場合:
- 正確にk 個の予測子を含むすべてのp C kモデルを当てはめます。
- これらのpCkモデルの中から最適なものを選択し、それをMkと呼びます。 「最良」とは、R 2が最も高いモデル、または同等の RSS が最も低いモデルと定義します。
3.相互検証予測誤差、Cp、BIC、AIC、または調整された R 2を使用して、M 0 … M pから単一の最良のモデルを選択します。
p個の予測子変数のセットに対して、2 p個の可能なモデルがあることに注意してください。
最適なサブセットを選択する例
p = 3 の予測変数と応答変数 y を含むデータセットがあるとします。このデータセットで最適なサブセット選択を実行するには、次の 2 p = 2 3 = 8 モデルを当てはめます。
- 予測子のないモデル
- 予測器付きモデル× 1
- 予測器× 2を備えたモデル
- 予測器× 3を備えたモデル
- x 1 、 x 2予測子を持つモデル
- 予測子 x 1 、 x 3を含むモデル
- x 2 、 x 3予測子を持つモデル
- 予測子 x 1 、 x 2 、 x 3を含むモデル
次に、 k 個の予測子を持つモデルの各セットから、最も高いR2を持つモデルを選択します。たとえば、最終的に次のような選択をすることになるかもしれません。
- 予測子のないモデル
- 予測器× 2を備えたモデル
- x 1 、 x 2予測子を持つモデル
- 予測子 x 1 、 x 2 、 x 3を含むモデル
次に、相互検証を行って、予測誤差 (Cp、BIC、AIC、または調整済みR2)が最も低くなる最適なモデルを選択します。
たとえば、相互検証された予測誤差が最も低かった次のモデルを「最良の」モデルとして選択することになる場合があります。
- x 1 、 x 2予測子を持つモデル
「最適な」モデルを選択するための基準
最適なサブセットを選択する最後のステップは、予測誤差が最も低いモデル、Cp が最も低いモデル、BIC が最も低いモデル、AIC が最も低いモデル、または調整済みR2が最も低いモデルを選択することです。より高い。
これらの各指標の計算に使用される式は次のとおりです。
Cp: (RSS+2dσ̂) / n
AIC: (RSS+2dσ̂ 2 ) / (nσ̂ 2 )
BIC: (RSS+log(n)dσ̂ 2 ) / n
調整された R 2 : 1 – ( (RSS / (nd-1)) / (TSS / (n-1)) )
金:
- d:予測子の数
- n:観測値の合計
- σ̂:回帰モデルの各応答測定に関連する誤差分散の推定値
- RSS:回帰モデルからの残差二乗和
- TSS:回帰モデルの総二乗和
最適なサブセット選択の長所と短所
最適なサブセットを選択すると、次のような利点があります。
- それは理解して解釈するためのシンプルなアプローチです。
- これにより、予測変数のすべての組み合わせが考慮されるため、可能な限り最良のモデルを特定することができます。
ただし、この方法には次のような欠点があります。
- これは大量の計算を必要とする可能性があります。 p個の予測子変数のセットに対して、2 p個の可能なモデルが存在します。たとえば、10 個の予測変数がある場合、考慮すべきモデルは 2 10 = 1000 個あります。
- 非常に多くのモデルが考慮されるため、トレーニング データでは良好に実行されるが、将来のデータでは良好に実行されないモデルが見つかる可能性があります。これにより、 過剰適合が発生する可能性があります。
結論
最適なサブセットの選択は実装と理解が簡単ですが、多数の予測子を含むデータセットを操作しており、過剰適合につながる可能性がある場合には非現実的である可能性があります。
この方法の代替方法は 段階的選択として知られており、計算効率が高くなります。