R语言机器学习实战之多项式回归|附代码数据
原文链接:http://tecdat.cn/?p=2686
最近我们被客户要求撰写关于多项式回归的研究报告,包括一些图形和统计输出。
如果数据比简单的直线更为复杂,我们也可以用线性模型来拟合非线性数据
一个简单的方法就是将每一个特征的幂次方添加为一个新的特征,然后在这个拓展的特征集上进行线性拟合,这种方法成为多项式回归。
回归分析的目标是根据自变量(或自变量向量)x 的值来模拟因变量 y 的期望值。在简单的线性回归中,使用模型
其中ε是未观察到的随机误差,其以标量 x 为条件,均值为零。在该模型中,对于 x 值的每个单位增加,y 的条件期望增加 β1β1个单位。
在许多情况下,这种线性关系可能不成立。例如,如果我们根据合成发生的温度对化学合成的产率进行建模,我们可以发现通过增加每单位温度增加的量来提高产率。在这种情况下,我们可能会提出如下所示的二次模型:
通常,我们可以将 y 的期望值建模为 n 次多项式,得到一般多项式回归模型:
为了方便,这些模型从估计的角度来看都是线性的,因为回归函数就未知参数β0β0、β1β1等而言是线性的。因此,对于最小二乘分析,多项式回归的计算和推理问题可以使用多元回归技术完全解决,这是通过将 xx、x2x2 等视为多元回归模型中的独特自变量来完成的。
拟合R语言中的多项式回归
让我们看一个经济学的例子:假设你想购买一定数量q的特定产品。如果单价是p,那么你会支付总金额y。这是一个线性关系的典型例子。总价格和数量成正比。
如下所示:
但购买和出售,我们可能要考虑一些其他相关信息,就像当:购买显著数量很可能是我们可以要求并获得折扣,或购买更多更重要的是我们可能会推高价格。
这可能导致像这样的情况,其中总成本不再是数量的线性函数:
通过多项式回归,我们可以将n阶模型拟合到数据上,并尝试对非线性关系进行建模。
点击标题查阅往期内容
R语言用logistic逻辑回归和AFRIMA、ARIMA时间序列模型预测世界人口
左右滑动查看更多
01
02
03
04
如何拟合多项式回归
这是我们模拟观测数据的图。模拟的数据点是蓝色的点,而红色的线是信号(信号是一个技术术语,通常用于表示我们感兴趣检测的总体趋势)。
让我们用R来拟合。当拟合多项式时,您可以使用
lm(noisy.y〜poly(q,3))
通过使用该confint()函数,我们可以获得我们模型参数的置信区间。
模型参数的置信区间:
confint(model,level = 0.95)
拟合vs残差图
总的来说,这个模型似乎很适合,因为R的平方为0.8。正如我们所预期的那样,一阶和三阶项的系数在统计上显着。
预测值和置信区间
将线添加到现有图中:
我们可以看到,我们的模型在拟合数据方面做得不错。
点击文末 “阅读原文”
获取全文完整代码数据资料。
本文选自《R语言机器学习实战之多项式回归》。
点击标题查阅往期内容
R语言用logistic逻辑回归和AFRIMA、ARIMA时间序列模型预测世界人口 【视频】R语言逻辑回归(Logistic回归)模型分类预测病人冠心病风险|数据分享 R语言逻辑回归Logistic回归分析预测股票涨跌 matlab用马尔可夫链蒙特卡罗 (MCMC) 的Logistic逻辑回归模型分析汽车实验数据 R语言逻辑回归、Naive Bayes贝叶斯、决策树、随机森林算法预测心脏病 R语言逻辑回归(Logistic Regression)、回归决策树、随机森林信用卡违约分析信贷数据集PYTHON用户流失数据挖掘:建立逻辑回归、XGBOOST、随机森林、决策树、支持向量机、朴素贝叶斯和KMEANS聚类用户画像 Python对商店数据进行lstm和xgboost销售量时间序列建模预测分析 PYTHON集成机器学习:用ADABOOST、决策树、逻辑回归集成模型分类和回归和网格搜索超参数优化 R语言集成模型:提升树boosting、随机森林、约束最小二乘法加权平均模型融合分析时间序列数据 Python对商店数据进行lstm和xgboost销售量时间序列建模预测分析 R语言用主成分PCA、 逻辑回归、决策树、随机森林分析心脏病数据并高维可视化 R语言基于树的方法:决策树,随机森林,Bagging,增强树 R语言用逻辑回归、决策树和随机森林对信贷数据集进行分类预测 spss modeler用决策树神经网络预测ST的股票 R语言中使用线性模型、回归决策树自动组合特征因子水平 R语言中自编基尼系数的CART回归决策树的实现 R语言用rle,svm和rpart决策树进行时间序列预测 python在Scikit-learn中用决策树和随机森林预测NBA获胜者 python中使用scikit-learn和pandas决策树进行iris鸢尾花数据分类建模和交叉验证 R语言里的非线性模型:多项式回归、局部样条、平滑样条、 广义相加模型GAM分析 R语言用标准最小二乘OLS,广义相加模型GAM ,样条函数进行逻辑回归LOGISTIC分类 R语言ISLR工资数据进行多项式回归和样条回归分析 R语言中的多项式回归、局部回归、核平滑和平滑样条回归模型 R语言用泊松Poisson回归、GAM样条曲线模型预测骑自行车者的数量 R语言分位数回归、GAM样条曲线、指数平滑和SARIMA对电力负荷时间序列预测R语言样条曲线、决策树、Adaboost、梯度提升(GBM)算法进行回归、分类和动态可视化 如何用R语言在机器学习中建立集成模型? R语言ARMA-EGARCH模型、集成预测算法对SPX实际波动率进行预测在python 深度学习Keras中计算神经网络集成模型R语言ARIMA集成模型预测时间序列分析R语言基于Bagging分类的逻辑回归(Logistic Regression)、决策树、森林分析心脏病患者 R语言基于树的方法:决策树,随机森林,Bagging,增强树 R语言基于Bootstrap的线性回归预测置信区间估计方法 R语言使用bootstrap和增量法计算广义线性模型(GLM)预测置信区间 R语言样条曲线、决策树、Adaboost、梯度提升(GBM)算法进行回归、分类和动态可视化 Python对商店数据进行lstm和xgboost销售量时间序列建模预测分析 R语言随机森林RandomForest、逻辑回归Logisitc预测心脏病数据和可视化分析 R语言用主成分PCA、 逻辑回归、决策树、随机森林分析心脏病数据并高维可视化 Matlab建立SVM,KNN和朴素贝叶斯模型分类绘制ROC曲线 matlab使用分位数随机森林(QRF)回归树检测异常值
相关文章
- 快速入门Python机器学习(33)
- 机器学习:准确率(Precision)、召回率(Recall)、F值(F-Measure)、ROC曲线、PR曲线
- 重点!11个重要的机器学习模型评估指标
- 李宏毅《机器学习 深度学习》简要笔记(一)
- 论文阅读:《基于机器学习的企业定价算法研究》
- 6个机器学习可解释性框架!
- 五套Alibaba2022小册!涵盖Java知识点+面试题+开发手册+机器学习
- 《深入浅出Python机器学习》读书笔记 第二章 基于Python语言的环境配置
- 【他山之石】50个最佳机器学习公共数据集
- 机器学习:如何解决类别不平衡问题
- 开源机器学习数据库OpenMLDB:线上线下一致的高可用特征平台
- 机器学习模型集成管理介绍
- CADD、人工智能和机器学习在药物发现中的应用:方法概述
- 《机器学习算法竞赛实战笔记1》:如何看待机器学习竞赛问题?
- 香港城市大学赵翔宇团队,招收机器学习、数据挖掘全奖博士生等
- 用机器学习洞察兔年春节幸福感和疫情感知风险
- A.机器学习入门算法(五):基于企鹅数据集的决策树分类预测
- 机器学习模型以出色的精度进行有机反应机理分类
- 机器学习算法之降维详解大数据
- 机器学习之特征工程(一)详解大数据
- Weka连接MySQL数据库:实现机器学习分析(weka连接mysql)
- “机器学习 + 量子力学” ,助力探索新材料
- BAT 在下一盘大棋?深度盘点国内四大机器学习开源平台
- 机器学习小白入门指引,开年也要规划好小目标
- 使用Redis实现高效的主从架构(redis配置主从机器)
- 配置Redis主从机器,实现高可用性(redis配置主从机器)