R语言机器学习实战之多项式回归

简介: R语言机器学习实战之多项式回归

如果数据比简单的直线更为复杂,我们也可以用线性模型来你和非线性数据。一个简单的方法就是将每一个特征的幂次方添加为一个新的特征,然后在这个拓展的特征集上进行线性拟合,这种方法成为多项式回归。

回归分析的目标是根据自变量(或自变量向量)x 的值来模拟因变量 y 的期望值。在简单的线性回归中,使用模型

其中ε是未观察到的随机误差,其以标量 x 为条件,均值为零。在该模型中,对于 x 值的每个单位增加,y 的条件期望增加 β1β1个单位。

在许多情况下,这种线性关系可能不成立。例如,如果我们根据合成发生的温度对化学合成的产率进行建模,我们可以发现通过增加每单位温度增加的量来提高产率。在这种情况下,我们可能会提出如下所示的二次模型:

通常,我们可以将 y 的期望值建模为 n 次多项式,得到一般多项式回归模型:

为了方便,这些模型从估计的角度来看都是线性的,因为回归函数就未知参数β0β0、β1β1等而言是线性的。因此,对于最小二乘分析,多项式回归的计算和推理问题可以使用多元回归技术完全解决,这是通过将 xx、x2x2 等视为多元回归模型中的独特自变量来完成的。

拟合R语言中的多项式回归

让我们看一个经济学的例子:假设你想购买一定数量q的特定产品。如果单价是p,那么你会支付总金额y。这是一个线性关系的典型例子。总价格和数量成正比。

 

 

如下所示:

但购买和出售,我们可能要考虑一些其他相关信息,就像当:购买显著数量很可能是我们可以要求并获得折扣,或购买更多更重要的是我们可能会推高价格。

这可能导致像这样的情况,其中总成本不再是数量的线性函数:

 

通过多项式回归,我们可以将n阶模型拟合到数据上,并尝试对非线性关系进行建模。

如何拟合多项式回归

这是我们模拟观测数据的图。模拟的数据点是蓝色的点,而红色的线是信号(信号是一个技术术语,通常用于表示我们感兴趣检测的总体趋势)。

 

让我们用R来拟合。当拟合多项式时,您可以使用

1.  lm(noisy.y?poly(q,3))
2.

通过使用该confint()函数,我们可以获得我们模型参数的置信区间。

模型参数的置信区间:

1. confint(model,level = 0.95)
2.

拟合vs残差图

总的来说,这个模型似乎很适合,因为R的平方为0.8。正如我们所预期的那样,一阶和三阶项的系数在统计上显着。

预测值和置信区间

将线添加到现有图中:

我们可以看到,我们的模型在拟合数据方面做得不错。

相关文章
|
3月前
|
机器学习/深度学习 传感器 算法
【机器学习】多元线性回归基本概念
【1月更文挑战第23天】【机器学习】多元线性回归基本概念
|
5月前
|
机器学习/深度学习 算法
20 机器学习 - Lineage逻辑回归算法分类案例
20 机器学习 - Lineage逻辑回归算法分类案例
33 0
|
13天前
|
机器学习/深度学习 资源调度 分布式计算
机器学习的线性模型简介
机器学习的线性模型简介
15 0
|
8月前
|
机器学习/深度学习 人工智能 算法
【机器学习】十大算法之一 “线性回归”
机器学习是人工智能的一个重要分支,它利用各种算法和模型,通过分析和理解数据,让机器学习到一个智能模型,从而对数据作出预测和判断。回归分析是一种基于统计学方法的数学分析技术,用于描述两个或多个变量之间的关系。线性回归是一种最简单的回归分析方法,它使用最小二乘法来拟合一个关于自变量的线性函数,以预测其与因变量之间的相互作用关系。线性回归是机器学习领域中最为常见的算法之一,它是一个简单但非常有效的算法,常用于数据挖掘和机器学习的预测分析,例如房价预测、销售额预测等等。
245 0
【机器学习】十大算法之一 “线性回归”
|
10月前
|
机器学习/深度学习 数据采集 数据可视化
R|机器学习入门-多元线性回归(3)
R|机器学习入门-多元线性回归(3)
|
10月前
|
机器学习/深度学习 算法
学习笔记: 机器学习经典算法-多项式回归
机器学习经典算法-个人笔记和学习心得分享
93 0
|
10月前
|
机器学习/深度学习 算法 Python
学习笔记: 机器学习经典算法-多元线性回归的正规方程解
机器学习经典算法-个人笔记和学习心得分享
71 0
|
11月前
|
机器学习/深度学习 算法 数据可视化
机器学习线性回归算法实战
机器学习线性回归算法实战
150 0
|
机器学习/深度学习
机器学习数学基础九:回归分析
高斯分布:银行可能会多给,也可能会少给,但是绝大多数情况下这个浮动不会太大,极小情况下浮动会比较大,符合正常情况
135 0
机器学习数学基础九:回归分析
|
机器学习/深度学习 算法

热门文章

最新文章

http://www.vxiaotou.com