线性回归模型的扩展与正则化
在机器学习中,线性回归是一种基础且常用的模型,但在面对复杂数据时,往往需要对其进行扩展和优化。本文将介绍多项式回归、学习曲线、偏差/方差权衡以及几种正则化线性模型的相关知识。
1. 多项式回归
当数据并非简单的直线关系时,我们可以使用线性模型来拟合非线性数据,这种方法就是多项式回归。具体做法是将每个特征的幂作为新特征添加,然后在扩展后的特征集上训练线性模型。
以下是一个简单的例子,我们首先生成一些基于二次方程的非线性数据:
import numpy as np
m = 100
X = 6 * np.random.rand(m, 1) - 3
y = 0.5 * X**2 + X + 2 + np.random.randn(m, 1)
显然,直线无法很好地拟合这些数据。我们可以使用Scikit - Learn的 PolynomialFeatures 类来转换训练数据,添加每个特征的平方作为新特征:
from sklearn.preprocessing import PolynomialFeatures
poly_features = PolynomialFeatures(degree=2, include_bias=False)
X_poly = poly_features.fit_transform(X)
现在 X_poly 包含了原始特征和其平
超级会员免费看
订阅专栏 解锁全文
2181

被折叠的 条评论
为什么被折叠?



