引入多项式特征不会导致共线性增加吗?
Doesn't introduction of polynomial features lead to increased collinearity?
我正在研究 ISLR 的线性回归和逻辑回归,在这两种情况下,我发现增加模型灵活性的方法之一是使用多项式特征 - X 和 X^2 都作为特征,然后像往常一样应用回归模型,同时将 X 和 X^2 视为独立特征(在 sklearn 中,而不是 statsmodel 的多项式拟合)。但这不会增加特征之间的共线性吗?它如何影响模型性能?
总结一下我对此的看法-
首先,X和X^2有很大的相关性是毋庸置疑的。
其次,我写了一篇blog证明,至少在线性回归中,特征之间的共线性不会影响模型拟合分数,尽管它会使模型的拟合分数降低可以通过增加系数不确定性来解释。
考虑到模型性能是通过拟合分数来衡量的,第二点是否与此有关。
多重共线性并不总是障碍。这取决于数据到数据。如果你的模型没有给你最好的结果(高精度或低损失),那么你可以删除异常值或高度相关的特征来改进它,但如果一切都很好,你就不用担心它们了。
多项式回归也是如此。 是的,它通过在模型中引入 x^2、x^3 特征来增加模型的多重共线性。
为了克服这个问题,您可以使用 orthogonal polynomial regression
,它引入了彼此正交的多项式。
但它仍会引入更高次的多项式,这些多项式可能会在您的数据边界处变得不稳定 space。
要克服这个问题,您可以使用 Regression Splines
,它将数据的分布划分为单独的部分,并在每个部分上拟合线性或低次多项式函数。发生除法的点称为Knots
。我们可以用来对每个 piece/bin 进行建模的函数被称为 Piecewise functions
。 这个函数有一个约束,假设如果是引入3次多项式或者三次特征,那么这个函数应该是二阶可微的。
这种具有 m-1 个连续导数的 度 m 的分段多项式 称为 Spline
.
我正在研究 ISLR 的线性回归和逻辑回归,在这两种情况下,我发现增加模型灵活性的方法之一是使用多项式特征 - X 和 X^2 都作为特征,然后像往常一样应用回归模型,同时将 X 和 X^2 视为独立特征(在 sklearn 中,而不是 statsmodel 的多项式拟合)。但这不会增加特征之间的共线性吗?它如何影响模型性能?
总结一下我对此的看法-
首先,X和X^2有很大的相关性是毋庸置疑的。
其次,我写了一篇blog证明,至少在线性回归中,特征之间的共线性不会影响模型拟合分数,尽管它会使模型的拟合分数降低可以通过增加系数不确定性来解释。
考虑到模型性能是通过拟合分数来衡量的,第二点是否与此有关。
多重共线性并不总是障碍。这取决于数据到数据。如果你的模型没有给你最好的结果(高精度或低损失),那么你可以删除异常值或高度相关的特征来改进它,但如果一切都很好,你就不用担心它们了。
多项式回归也是如此。 是的,它通过在模型中引入 x^2、x^3 特征来增加模型的多重共线性。
为了克服这个问题,您可以使用 orthogonal polynomial regression
,它引入了彼此正交的多项式。
但它仍会引入更高次的多项式,这些多项式可能会在您的数据边界处变得不稳定 space。
要克服这个问题,您可以使用 Regression Splines
,它将数据的分布划分为单独的部分,并在每个部分上拟合线性或低次多项式函数。发生除法的点称为Knots
。我们可以用来对每个 piece/bin 进行建模的函数被称为 Piecewise functions
。 这个函数有一个约束,假设如果是引入3次多项式或者三次特征,那么这个函数应该是二阶可微的。
这种具有 m-1 个连续导数的 度 m 的分段多项式 称为 Spline
.