多项式回归 Polynomial regression

什么是多项式回归?

  • 一种回归分析的形式,它使用多项式方程来拟合数据。在多项式回归中,自变量被提升到不同的幂次,以便捕捉数据中的非线性关系。这种方法是线性回归的扩展,可以处理更复杂的数据集,其中变量之间的关系不是简单的直线关

y^(w,x)=w0+w1x1+w2x2+w3x1x2+w4x12+w5x22y^(w,z)=w0+w1z1+w2z2+w3z3+w4z4+w5z5\hat{y}(w, x) = w_0 + w_1 x_1 + w_2 x_2 + w_3 x_1 x_2 + w_4 x_1^2 + w_5 x_2^2\\ \hat{y}(w, z) = w_0 + w_1 z_1 + w_2 z_2 + w_3 z_3 + w_4 z_4 + w_5 z_5

  • 将特征从[x1,x2][x_1, x_2] 转到[1,x1,x2,x12,x1x2,x22][1, x_1, x_2, x_1^2, x_1 x_2, x_2^2]
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    >>> from sklearn.preprocessing import PolynomialFeatures
    >>> import numpy as np
    >>> X = np.arange(6).reshape(3, 2)
    >>> X
    array([[0, 1],
    [2, 3],
    [4, 5]])
    >>> poly = PolynomialFeatures(degree=2)
    >>> poly.fit_transform(X)
    array([[ 1., 0., 1., 0., 0., 1.],
    [ 1., 2., 3., 4., 6., 9.],
    [ 1., 4., 5., 16., 20., 25.]])