最近我们被客户要求撰写关于多项式回归的研究报告,包括一些图形和统计输出。

 相关视频:非线性模型原理与R语言多项式回归、局部平滑样条、 广义相加模型GAM分析

非线性模型原理与R语言多项式回归、局部平滑样条、 广义相加模型GAM分析

,时长05:41


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

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

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

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

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

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

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

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

如下所示:

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

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

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

如何拟合多项式回归

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

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

 lm(noisy.y〜poly(q,3))

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

模型参数的置信区间:

confint(model,level = 0.95)

拟合vs残差图

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

预测值和置信区间

将线添加到现有图中:

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


参考文献

R语言机器学习实战之多项式回归相关推荐

  1. R语言机器学习与大数据可视化暨Python文本挖掘与自然语言处理核心技术研修

    中国通信工业协会通信和信息技术创新人才培养工程项目办公室 通人办[2017] 第45号 "R语言机器学习与大数据可视化"暨"Python文本挖掘与自然语言处理" ...

  2. “R语言机器学习与大数据可视化”暨“Python文本挖掘与自然语言处理”核心技术高级研修班的通知

    中国通信工业协会通信和信息技术创新人才培养工程项目办公室 通人办[2017] 第45号 "R语言机器学习与大数据可视化"暨"Python文本挖掘与自然语言处理" ...

  3. R语言如何构建正交多项式回归?

    R语言如何构建正交多项式回归? 目录 R语言如何构建正交多项式回归? R语言是解决什么问题的? R语言如何构建正交多项式回归? 安利一个R语言的优秀博主及其CSDN专栏: R语言是解决什么问题的? R ...

  4. R语言机器学习Caret包(Caret包是分类和回归训练的简称)、数据划分、数据预处理、模型构建、模型调优、模型评估、多模型对比、模型预测推理

    R语言机器学习Caret包(Caret包是分类和回归训练的简称).数据划分.数据预处理.模型构建.模型调优.模型评估.多模型对比.模型预测推理 目录

  5. R语言R-markdown实战示例、R-markdown、R-markdown生成结果汇报的HTML文件

    R语言R-markdown实战示例.R-markdown.R-markdown生成结果汇报的HTML文件 目录 R语言R-markdown实战示例.R-markdown.R-markdown生成结果汇 ...

  6. R 回归 虚拟变量na_工具amp;方法 | R语言机器学习包大全(共45个包)

    机器学习,是一门多学科交叉的人工智能领域的分析技术,它使用算法解析数据,从中学习,然后对世界上的某件事情做出决定或预测. 目前,常见机器学习的研究方向主要包括决策树.随机森林.神经网络.贝叶斯学习和支 ...

  7. 三十四、R语言数据分析实战

    @Author : By Runsen @Date : 2020/5/14 作者介绍:Runsen目前大三下学期,专业化学工程与工艺,大学沉迷日语,Python, Java和一系列数据分析软件.导致翘 ...

  8. 《R语言机器学习:实用案例分析》——1.2节R的数据结构

    本节书摘来自华章社区<R语言机器学习:实用案例分析>一书中的第1章,第1.2节R的数据结构,作者[印度] 拉格哈夫·巴利(Raghav Bali)迪潘简·撒卡尔(Dipanjan Sark ...

  9. 《R语言机器学习:实用案例分析》——1.3节使用函数

    本节书摘来自华章社区<R语言机器学习:实用案例分析>一书中的第1章,第1.3节使用函数,作者[印度] 拉格哈夫·巴利(Raghav Bali)迪潘简·撒卡尔(Dipanjan Sarkar ...

最新文章

  1. 使用script命令自动录屏用户操作
  2. 【New】简•导航 正式上线
  3. 用matlab找出所有真因子,在matlab中找出与fmincon匹配两条曲线的缩放因子
  4. 问题:如何将多个文件里内容都提取出来
  5. 2017java面试_2017 Java面试大全(一)
  6. MFC把 ListCtrl的数据导出到excel表格
  7. android下注入技术详解
  8. ubuntu 好用的桌面小工具
  9. mysql和redis常见面试题_redis相关面试题
  10. git push 报错 pre-receive hook declined
  11. 微信小程序:实现微信登录
  12. WinDbg 符号下载错误解决方案
  13. Java给PNG透明图片加水印,亲测可用
  14. Weex和Web开发体验的异同
  15. 【分享】QY-IMX8M主板简介
  16. 搜素引擎与社会责任的关系
  17. python可以用来写什么_python这么火,到底可以用来做什么?
  18. 如何使用USB转网线的接口在MacBook上登录校园网
  19. ae导出gif插件_AE导出GIF动画的几种方式
  20. 2020年9月虹科Pico汽车示波器简报

热门文章

  1. 计算材料学中的四巨头之间的关系
  2. windows文件同步工具
  3. java坦克大战 实训报告_坦克大战系统《Java程序开发实训》综合实训报告.doc
  4. matlab拟合二元,MATLAB 二元函数公式拟合?
  5. 有关SAP系统函数的说明
  6. TLSR8258开发-低功耗
  7. 2020年11月28日天梯赛GPLT总决赛(全部题目 + 189分代码答案)
  8. 推荐8款插件,浏览器使用体验上升500%
  9. 分享57个Python源码,总有一款适合您
  10. 计算机考研408-2009