为了提高线性方法的性能,一种常用的方法是使用数据的非线性函数来训练线性模型。此外,这种方法,更广泛的数据范围也可以适合于机器学习模型。
对于3个特征我们的线性模型是这样的:
在多项式回归中,利用给定的特征创建新特征的成像。如果我们用模型拟合抛物面而不是平面,那么上面的函数可以写成:
乍一看,这个模型似乎并不是线性的。但是,如果您将乘法特征视为单个变量,即a1 = x1 * x2,a2 = x1 ** 2等,则此模型在'w'中仍然是线性的。
现在,让我们使用Python来编写代码。让我们首先导入通常的库和sklearn库。
import numpy as np
import ma as plt
import seaborn as sns
('whitegrid')
% matplotlib inline
import pandas as pd
from import LinearRegression
from import r2_score
现在让我们创建一些我们自己的数据,这些数据更适合抛物面而不是简单的平面。
n_samples = 100
X = np.linspace(0, 10, 100)
y = X ** 3 + np.random.randn(n_samples) * 100 + 100
(figsize=(10,8))
(X, y)
您的数据点可能看起来有点不同,但这并不重要。现在,让我们执行线性回归,看看简单线性模型与这种数据的匹配程度。
lin_reg = LinearRegression()
lin_reg.fi(-1, 1), y)
model_pred = lin_reg.predic(-1,1))
(figsize=(10,8));
(X, y);
(X, model_pred);
print(r2_score(y, model_pred))
R2分数为0.7765,曲线图出现这种情况。正如您所看到的,模型似乎不能很好地表示数据,因为许多实际数据点远离回归线。
现在,让我们使用多项式特征,看看结果模型是怎样的。为此,我们将从sklearn中导入一个预处理函数。
from import PolynomialFeatures
然后,让我们拟合变换数据以给出多项式特征。这里,我们使用degree = 2作为抛物线函数。
poly_reg = PolynomialFeatures(degree=2)
X_poly = (-1, 1))
现在让我们实例化另一个线性回归模型,然后使用多项式特征(即X_poly)拟合模型。
lin_reg_2 = LinearRegression()
lin_reg_2.fit(X_poly, y.reshape(-1, 1))
y_pred = lin_reg_2.predict(X_poly)
(figsize=(10,8));
(X, y);
(X, y_pred);
print(r2_score(y, y_pred))
Polynomial degree = 2
R2得分为0.899,图形看起来像这样。显然,2阶的多项式特征有助于更好地拟合数据而不是简单的线性特征。
您可以使用这种方法调整特性的程度,并更改模型如何适合不同类型的数据。
例如,如果我将degree = 3用于多项式特征,
poly_reg_2 = PolynomialFeatures(degree=3)
X_poly_2 = (-1, 1))
然后,和以前一样
lin_reg_3 = LinearRegression()
lin_reg_3.fit(X_poly_2, y.reshape(-1, 1))
y_pred = lin_reg_3.predict(X_poly)
(figsize=(10,8));
(X, y);
(X, y_pred);
print(r2_score(y, y_pred))
Polynomial degree = 3
R2得分为0.90,图形看起来像这样。在这里,由于数据点有限, degree 3无法看到很多效果。但是,如果最后有数据弯曲,则 degree 3特征可能非常有用。
因此,下次如果您发现数据不仅仅是回归线性,请使用多项式特征来模拟您的机器学习模型,以便最适合您的训练,测试和hold-out集。
1.文章《预处理指令在winform怎么使用》援引自互联网,为网友投稿收集整理,仅供学习和研究使用,内容仅代表作者本人观点,与本网站无关,侵删请点击页脚联系方式。
2.文章《预处理指令在winform怎么使用》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。
相关推荐
- . 现代买票为什么带上携程保险
- . 潮阳怎么去广州南站
- . 湖南马拉河怎么样
- . 烧纸为什么到三岔路口
- . 百色为什么这么热
- . 神州租车怎么样
- . 芜湖方特哪个适合儿童
- . 护肤品保养液是什么类目
- . 早晚的护肤保养有哪些项目
- . 女孩护肤品怎么保养的最好