特征工程
“上面的多项式特征是根据它们与目标数据的匹配程度来选择的。考虑这个问题的另一种方法是,一旦我们创建了新特性,我们仍然在使用线性回归。鉴于此,最好的特征将是相对于目标的线性。这可以通过一个例子来更好地理解。”——吴恩达
简单理解,就是对X进行处理,使X与Y呈现的函数是线性的。
例子
x = np.arange(20)
y = x**2
X = np.c_[x, x**2, x**3]
X_feature = ['x', 'x^2', 'x^3']
fig, ax = plt.subplots(1, 3, figsize=(12, 3), sharey=True)
for i in range(len(ax)):
ax[i].scatter(X[:, i], y)
ax[i].set_xlabel(X_feature[i])
ax[0].set_ylabel("y")
plt.show()
![](https://i-blog.csdnimg.cn/blog_migrate/4fa19b4c71bdb5521412c67be806faaa.png)
如上图所示,对X所做的特征中, X 2 X^2 X2与Y呈线性关系,最符合对X进行特征工程的目的,可以称为一个好的特征工程。
参考资料
- 吴恩达机器学习