当人们试图查找诸如过拟合和欠拟合之类的概念时,最常见的就是多项式回归。为什么多项式回归经常被用来证明这些概念?是不是因为它可以像这里的图表一样容易地可视化:
https://scikit-learn.org/stable/auto_examples/model_selection/plot_underfitting_overfitting.html
但是也可以使用大多数 ml 算法,例如 kmeans 聚类。那为什么通常只有多项式回归呢?还有其他类似的算法可以使用吗?
当人们试图查找诸如过拟合和欠拟合之类的概念时,最常见的就是多项式回归。为什么多项式回归经常被用来证明这些概念?是不是因为它可以像这里的图表一样容易地可视化:
https://scikit-learn.org/stable/auto_examples/model_selection/plot_underfitting_overfitting.html
但是也可以使用大多数 ml 算法,例如 kmeans 聚类。那为什么通常只有多项式回归呢?还有其他类似的算法可以使用吗?
线性代数告诉我们 N 个线性独立向量跨越所有 N 维空间。在回归设置中,这转化为这样一个事实:如果您有 N 个观察值和每个观察值的 N 个特征,那么您的回归模型很有可能在 NxN 训练数据上实现 100% 的准确度。如果 NxN 特征集主要由噪声组成,你的机会会更大,因为 N 个随机生成的 N 维向量是线性独立的。
训练集上的高精度是因为模型对数据中的随机噪声有过拟合。这样的模型几乎不能很好地概括在样本外的测试集上。
因此,多项式回归中发生的情况是,当您添加更新的特征时,它们可能会添加更多的噪声(可能是无用的信息),但非常有能力被模型用来解释训练集的方差,但永远不会在测试集上解释。
这就是为什么它是理想选择的原因,因为它允许您轻松地从现有功能中添加新功能并在训练集上演示过拟合。