4
(なぜ)オーバーフィットモデルは大きな係数を持つ傾向がありますか?
変数の係数が大きいほど、モデルはその次元で「スイング」する能力が大きくなり、ノイズに適合する機会が増えると思います。モデルの分散と大きな係数との関係については合理的な意味を持っていると思いますが、オーバーフィットモデルでそれらが発生する理由についてはあまり意味がありません。それらが過剰適合の症状であり、係数の収縮はモデルの分散を減らすための技術であると言うのは間違っていますか?係数の縮小による正則化は、大きな係数は過剰適合モデルの結果であるという原則に基づいているようですが、おそらくこの手法の背後にある動機を誤解しているのでしょう。 大きな係数は一般に過剰適合の症状であるという私の直感は、次の例から得られます。 すべてがx軸上にある点をフィットさせたいとしましょう。これらの点がある多項式を簡単に構築できます。私たちのポイントがでているとしましょう。この手法は、10以上のすべての係数を提供します(1つの係数を除く)。さらにポイントを追加すると(したがって、多項式の次数が増加します)、これらの係数の大きさは急速に増加します。f (x )= (x − x 1)(x − x 2)。。。。(X - X N - 1)(X - X N)のx = 1 、2 、3 、4nnnf(x)=(x−x1)(x−x2)....(x−xn−1)(x−xn)f(バツ)=(バツ−バツ1)(バツ−バツ2)。。。。(バツ−バツn−1)(バツ−バツn)f(x) = (x-x_1)(x-x_2)....(x-x_{n-1})(x-x_n)x=1,2,3,4バツ=1、2、3、4x=1,2,3,4 この例は、現在、モデル係数のサイズと生成されたモデルの「複雑さ」をどのように結びつけているのかを示していますが、実際の動作を実際に示すためにこのケースが不毛になることを心配しています。私は意図的にオーバーフィットモデル(2次サンプリングモデルから生成されたデータにフィットする10次多項式OLS)を構築し、私のモデルでほとんど小さな係数を見ることに驚きました: set.seed(123) xv = seq(-5,15,length.out=1e4) x=sample(xv,20) gen=function(v){v^2 + 7*rnorm(length(v))} y=gen(x) df = data.frame(x,y) model = lm(y~poly(x,10,raw=T), data=df) summary(abs(model$coefficients)) # Min. 1st Qu. Median …