前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >多元回归模型

多元回归模型

作者头像
Angel_Kitty
发布于 2018-04-08 08:37:36
发布于 2018-04-08 08:37:36
1.7K00
代码可运行
举报
运行总次数:0
代码可运行

回归模型

1 基本知识介绍

1.1回归模型的引入

由于客观事物内部规律的复杂性及人们认识程度的限制,无法分析实际对象内在的因果关系,建立合乎机理规律的数学模型。所以在遇到有些无法用机理分析建立数学模型的时候,通常采取搜集大量数据的办法,基于对数据的统计分析去建立模型,其中用途最为广泛的一类随即模型就是统计回归模型。

回归模型确定的变量之间是相关关系,在大量的观察下,会表现出一定的规律性,可以借助函数关系式来表达,这种函数就称为回归函数或回归方程。

1.2回归模型的分类

2 用回归模型解题的步骤

回归模型解题步骤主要包括两部分:

一:确定回归模型属于那种基本类型,然后通过计算得到回归方程的表达式;

①根据试验数据画出散点图;

②确定经验公式的函数类型;

③通过最小二乘法得到正规方程组;

④求解方程组,得到回归方程的表达式。

二:是对回归模型进行显著性检验;

①相关系数检验,检验线性相关程度的大小;

②F检验法(这两种检验方法可以任意选);

③残差分析;

④对于多元回归分析还要进行因素的主次排序;

    如果检验结果表示此模型的显著性很差,那么应当另选回归模型了。

3模型的转化

非线性的回归模型可以通过线性变换转变为线性的方程来进行求解:例如

函数关系式:可以通过线性变换:转化为一元线性方程组来求解,对于多元的也可以进行类似的转换。

4举例

例1(多元线性回归模型):已知某湖八年来湖水中COD浓度实测值(y)与影响因素湖区工业产值(x1)、总人口数(x2)、捕鱼量(x3)、降水量(x4)资料,建立污染物y的水质分析模型。

(1)输入数据

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
x1=[1.376, 1.375, 1.387, 1.401, 1.412, 1.428, 1.445, 1.477]
x2=[0.450, 0.475, 0.485, 0.500, 0.535, 0.545, 0.550, 0.575]
x3=[2.170 ,2.554, 2.676, 2.713, 2.823, 3.088, 3.122, 3.262]
x4=[0.8922, 1.1610 ,0.5346, 0.9589, 1.0239, 1.0499, 1.1065, 1.1387]
y=[5.19, 5.30, 5.605.826.00, 6.066.456.95]

(2)保存数据(以数据文件.mat形式保存,便于以后调用)

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
save  data x1 x2 x3 x4 y
    load data  (取出数据)

(3)执行回归命令

得结果:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
b = (-16.528315.72062.0327-0.2106-0.1991)’
stats = (0.990880.95300.0022)

即:

通过查表可知,R2代表决定系数(R代表相关系数),它的值很接近与1,说明此方程是高度线性相关的;

F检验值为80.9530远大于

,可见,检验结果是显著的。

例2(非线性回归模型)非线性回归模型可由命令nlinfit来实现,调用格式为:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[beta,r,j] = nlinfit(x,y,'model’,beta0)

其中,输人数据x,y分别为n×m矩阵和n维列向量,对一元非线性回归,x为n维列向量model是事先用 m-文件定义的非线性函数,beta0是回归系数的初值, beta是估计出的回归系数,r是残差,j是Jacobian矩阵,它们是估计预测误差需要的数据。

预测和预测误差估计用命令

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[y,delta] = nlpredci(’model’,x,beta,r,j)

如:对实例1中COD浓度实测值(y),建立时序预测模型,这里选用logistic模型。即

(1)对所要拟合的非线性模型建立的m-文件mode1.m如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
function yhat=model(beta,t)
yhat=beta(1)./(1+beta(2)*exp(-beta(3)*t))

(2)输入数据

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
t=18
load data y(在data.mat中取出数据y)
beta0=[50101]

(3)求回归系数

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[beta,r,j]=nlinfit(t’,y’,’model’,beta0)

得结果:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
beta=(56.115710.40060.0445)

(4)预测及作图

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[yy,delta] = nlprodei(’model’,t’,beta,r,j)plot(t,y,’k+’,t,yy,’r’)

3.逐步回归

逐步回归的命令是stepwise,它提供了一个交互式画面,通过此工具可以自由地选择变量,进行统计分析。调用格式为:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
stepwise(x,y,inmodel,alpha)

其中x是自变量数据,y是因变量数据,分别为n×m和n×l矩阵,inmodel是矩阵的列数指标(缺省时为全部自变量),alpha,为显著性水平(缺省时为0.5)

结果产生三个图形窗口,在stepwise plot窗口,虚线表示该变量的拟合系数与0无显著差异,实线表示有显著差异,红色线表示从模型中移去的变量;绿色线表明存在模型中的变量,点击一条会改变其状态。在stepwise Table窗口中列出一个统计表,包括回归系数及其置信区间,以及模型的统计量剩余标准差(RMSE),相关系数 (R-square),F值和P值。

例3、主成份分析

主成份分析主要求解特征值和特征向量,使用命令 eig(),调用格式为

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[VD] = eig(R)

其中R为X的相关系数矩阵,D为R的特征值矩阵,V为特征向量矩阵

实例3:对实例1中变量进行主成份成析

(1)调用数据

(2)计算相关系数矩阵

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
R = corrcoef(x)

(3)求特征根、特征向量

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[VD] = eig(R)

得结果:

按特征根由大到小写出各主成份

第一主成份

方差贡献率为3.1863/4 = 79.66%

第二主成份

方差贡献率为0.7606/4 = 19.12%

第三主成份

方差贡献率为0.0601/4=1.5%

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018-02-10 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
数学建模学习笔记(六)多元回归分析算法(matlab)
b:回归系数点估计 bint:回归系数区间估计 r:残差 rint:置信区间 stats:用于检验的统计量,有三个数值,相关系数r^2,F值,与F对应的概率p alpha:显著性水平(缺省时为0.05)
zstar
2022/06/14
3.2K0
数学建模学习笔记(六)多元回归分析算法(matlab)
回归分析详解及matlab实现
当人们对研究对象的内在特性和各因素间的关系有比较充分的认识时,一般用机理分析方法建立数学模型。如果由于客观事物内部规律的复杂性及人们认识程度的限制,无法分析实际对象内在的因果关系,建立合乎机理规律的数学模型,那么通常的办法是搜集大量数据,基于对数据的统计分析去建立模型。本章讨论其中用途非常广泛的一类模型——统计回归模型。回归模型常用来解决预测、控制、生产工艺优化等问题。
全栈程序员站长
2022/11/17
2.2K0
利用回归模型预测数值型数据(代码)
机器学习算法按照目标变量的类型,分为标称型数据和连续型数据。标称型数据类似于标签型的数据,而对于它的预测方法称为分类,连续型数据类似于预测的结果为一定范围内的连续值,对于它的预测方法称为回归。 “回归”一词比较晦涩,下面说一下这个词的来源: “回归”一词是由达尔文的表兄弟Francis Galton发明的。Galton于1877年完成了第一次回归预测,目的是根据上一代豌豆种子(双亲)的尺寸来预测下一代豌豆种子(孩子)的尺寸。 Galton在大量对象上应用了回归分析,甚至包括人的身高预测。他注意到,如果双亲
机器学习AI算法工程
2018/03/14
1.9K0
利用回归模型预测数值型数据(代码)
线性回归(一)-多元线性回归原理介绍
高中的数学必修三有一个概念——线性拟合,其主要原理是通过对两组变量的统计值模型化。高中的的模型主要是简单的一维线性模型,在某种程度上也可以叫做一次函数,即 y = kx + b 的形式。这是一个简单的线性拟合,可以处理两组变量的变化趋势呈现相当的线性规律的问题,且关于因变量只有一个自变量。实际情况下,对于一个目标函数进行估计,其影响因素可能会有多个,且各个因素对于结果的影响程度各不相同。若多个变量的的取值与目标函数取值仍呈现线性关系,则可以使用多元线性回归进行建模预测。本文将从一元线性回归推广到多元线性回归。并通过统计学的显著性检验和误差分析从原理上探究多元线性回归方法,以及该方法的性质和适用条件。
EatRice
2020/06/13
5.7K0
线性回归(一)-多元线性回归原理介绍
【数据分析 R语言实战】学习笔记 第九章(中)多元回归分析 回归诊断
多元线性回归分析同样由函数lm()完成,但参数formula的表达式应表示为多元形式
Ai学习的老章
2019/04/10
5.3K0
【数据分析 R语言实战】学习笔记 第九章(中)多元回归分析 回归诊断
对比R语言和Python,教你实现回归分析
r的取值范围是[-1,1],r=1表示完全正相关!r=-1表示完全负相关!r=0表示完全不相关。
1480
2020/03/03
1.9K0
线性回归(二)-违背基本假设的情况和处理方法
由线性回归(一)^1,我们通过数学中的极值原理推导出了一元线性回归的参数估计和多元线性回归的参数估计的拟合方程计算方法。同时为了检验拟合质量,我们引入了两种主要检验:
EatRice
2020/06/13
13.5K0
线性回归(二)-违背基本假设的情况和处理方法
Python回归分析五部曲(一)—简单线性回归
回归最初是遗传学中的一个名词,是由英国生物学家兼统计学家高尔顿首先提出来的,他在研究人类身高的时候发现:高个子回归人类的平均身高,而矮个子则从另一方向回归人类的平均身高; 回归整体逻辑 回归分析(Regression Analysis) 研究自变量与因变量之间关系形式的分析方法,它主要是通过建立因变量y与影响它的自变量 x_i(i=1,2,3… …)之间的回归模型,来预测因变量y的发展趋向。 回归分析的分类 线性回归分析 简单线性回归 多重线性回归 非线性回归分析 逻辑回归 神经网络 回归分析的步骤 根据预
企鹅号小编
2018/01/12
2.4K0
Python回归分析五部曲(一)—简单线性回归
python logistic回归
常用的分类与预测算法 回归分析 决策树 人工神经网络 贝叶斯网络 支持向量机 其中回归分析包括: 线性回归---自变量因变量线性关系,最小二乘法求解。 非线性回归--自变量因变量非线性关系,函数变换为线性关系,或非线性最小二乘方法求解。 logistic回归--因变量一般有1和0两种取值,将因变量的取值范围控制再0-1范围内,表示取值为1的概率。 岭回归--要求自变量之间具有多重共线性,是一种改进最小二乘法的方法。 主成分回归--要求自变量之间具有多重共线性,是对最小二乘法的方法的改进,可以消除自变量间的多
用户1359560
2018/08/27
1.3K0
python logistic回归
spss线性回归模型汇总_多元线性回归分析模型
多元线性回归,主要是研究一个因变量与多个自变量之间的相关关系,跟一元回归原理差不多,区别在于影响因素(自变量)更多些而已,例如:一元线性回归方程 为:
全栈程序员站长
2022/09/20
2.5K0
一元线性回归
相关关系是指变量之间存在的不确定的数量关系。这种关系与函数关系最大的区别是一个变量的取值不能由另一个变量唯一确定。
爱编程的小明
2022/09/06
1.7K0
一元线性回归
回归分析
在一些问题中,常常希望根据已有数据,确定目标变量(输出,即因变量)与其它变量(输入,即自变量)的关系。当观测到新的输入时,预测它可能的输出值。这种方法叫回归分析(确定两种或两种以上变量间相互依赖的定量关系的一种统计分析方法)。
爱编程的小明
2022/09/05
9180
回归分析
机器学习回归模型的最全总结!
回归分析为许多机器学习算法提供了坚实的基础。在这篇文章中,我们将介绍回归分析概念、7种重要的回归模型、10 个重要的回归问题和5个评价指标。
算法进阶
2023/09/21
1.9K0
机器学习回归模型的最全总结!
多元回归分析
前面我们讲了一元线性回归,没看过的可以先去看看:一元线性回归分析。这一篇我们来讲讲多元线性回归。一元线性回归就是自变量只有一个x,而多元线性回归就是自变量中有多个x。
张俊红
2019/11/07
1.4K0
多元线性回归
给出自变量、因变量和误差项的实例数据,假设 现在不知道回归方程中的参数,运用最小二乘法求解三个参数,得出 β=11.292,β1=11.307,β2=-6.591,这与原参数天差地别。。。
Coder的技术之路
2021/05/14
7320
多元线性回归
绘制带回归线的散点图
按自变量的多少分为一元和多元回归分析;按自变量和因变量的关系分为线性和非线性回归;比较常用的是多项式回归、线性回归和指数回归。
爱学习的小明明
2020/09/25
2.4K0
绘制带回归线的散点图
基于正则化的回归:岭回归和套索回归
在多元线性回归中,多个变量之间可能存在多重共线性,所谓多重,就是一个变量与多个变量之间都存在线性相关。首先来看下多重共线性对回归模型的影响,假设一下回归模型
生信修炼手册
2021/02/09
1.3K0
【独家】手把手教线性回归分析(附R语言实例)
本文长度为8619字,建议阅读15分钟 本文为你介绍线性回归分析。 通常在现实应用中,我们需要去理解一个变量是如何被一些其他变量所决定的。 回答这样的问题,需要我们去建立一个模型。一个模型就是一个公式之中,一个因变量(dependent variable)(需要预测的值)会随着一个或多个数值型的自变量(independent variable)(预测变量)而改变的。我们能够构建的最简单的模型之一就是线性模型,我们可以假设因变量和自变量间是线性的关系。回归分方法可用于预测数值型数据以及量化预测结果与其预测
数据派THU
2018/01/29
14.1K1
【独家】手把手教线性回归分析(附R语言实例)
机器学习笔记——线性回归及其两种常用的优化方法
回归的目的是预测数值型的目标值,最直接的办法是依据输入写出一个目标值的计算公式,比如要计算一个男生可以找到女朋友的概率:
数据森麟
2020/05/27
2.5K0
机器学习笔记——线性回归及其两种常用的优化方法
机器学习(七)—回归
  摘要:本文分别介绍了线性回归、局部加权回归和岭回归,并使用python进行了简单实现。
oYabea
2020/09/07
4290
相关推荐
数学建模学习笔记(六)多元回归分析算法(matlab)
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验