对于过拟合的理解
来源:8-3 过拟合与欠拟合

热心市民小马
2021-05-03
老师,对于y = 0.5 * x**2 + x + 2 + np.random.normal(0, 1, size=100)这样的x方次比较小的函数而言,degree选择2我是可以理解的,但如果此时degree选取了100,那他的数学意义是什么呢,是否意味着,将原本只有一个特征的x,不仅将x^2也变成了单独的特征,还为他添加了很多方次更高的特征。这样就将X在进行PolynomialFeatures之后变成了具有非常多的特征的一个矩阵,最后再为他们进行线性回归预测而得到了针对每一个特征的theta。从而用这个模型再去预测X_test。
但是针对这张图而言,为什么靠近边界的预测值会非常大呢,是因为他进行100次方之后,某些特征值过大而导致最后预测结果整体过大吗
刚接触机器学习,有些问题可能想的太过复杂,老师见谅 : >
2回答
-
1)
"是否意味着,将原本只有一个特征的x,不仅将x^2也变成了单独的特征,还为他添加了很多方次更高的特征。这样就将X在进行PolynomialFeatures之后变成了具有非常多的特征的一个矩阵,最后再为他们进行线性回归预测而得到了针对每一个特征的theta。从而用这个模型再去预测X_test。"
理解的完全正确。
2)
“为什么靠近边界的预测值会非常大呢,是因为他进行100次方之后,某些特征值过大而导致最后预测结果整体过大吗”
是的,可以这么理解。
其实就是我们的到了一个 y = ax^100 + bx^99 + cx^98 .... 这样一个拟合函数,当把某一点带入这个拟合函数的时候,计算出的结果。
3)
“在我们所定义的Pipeline,在后续对于X_test的预测中会对X_test进行StandardScaler()吗?”
会的,因为 pipeline 中有 StandardScaler。
继续加油!:)
012021-05-03 -
热心市民小马
提问者
2021-05-03
老师,再补充一个疑问,在我们所定义的Pipeline,在后续对于X_test的预测中会对X_test进行StandardScaler()吗?
00
相似问题