《第5讲线性与非线性回归分析初步第1次课》由会员分享,可在线阅读,更多相关《第5讲线性与非线性回归分析初步第1次课(20页珍藏版)》请在金锄头文库上搜索。
1、第第五五讲讲 一一元元多多元元线线性性回回归归与与非非线线性性回回归归1第五讲 一元/多元线性回归(上)内容:内容:线性回归简言之就是用统计数据寻求变量线性回归简言之就是用统计数据寻求变量 间间线性相关关系线性相关关系的近似表达式的一种方法的近似表达式的一种方法目的:目的:学习回归分析的基本思想和方法,掌握学习回归分析的基本思想和方法,掌握 Matlab的一元的一元/多元线性回归多元线性回归函数和工具函数和工具要求:要求:掌握掌握Matlab线性回归分析,处理应用问题线性回归分析,处理应用问题了解回归分析的基本思想和方法了解回归分析的基本思想和方法了解回归分析的了解回归分析的基本类型和实现步骤
2、基本类型和实现步骤掌握线性回归函数掌握线性回归函数 regress rcoplot robustfit掌握交互式回归分析工具掌握交互式回归分析工具 rstool stepwise第第五五讲讲 一一元元多多元元线线性性回回归归与与非非线线性性回回归归2回归分析的基本思想和方法 在客观世界中普遍存在着变量之间的关系,在客观世界中普遍存在着变量之间的关系,变量之间的关系一般来说可分为变量之间的关系一般来说可分为确定性的与非确确定性的与非确定性定性的两种。确定性关系是指变量之间可以用确的两种。确定性关系是指变量之间可以用确定的定的函数关系函数关系来表达来表达 (插值或拟合插值或拟合)。非确定性关。非确
3、定性关系,例如人的身高和体重的关系、人的血压和年系,例如人的身高和体重的关系、人的血压和年龄的关系、某产品的广告投入与销售额间的关系龄的关系、某产品的广告投入与销售额间的关系等,它们之间是有关联的,但又不能用普通函数等,它们之间是有关联的,但又不能用普通函数来表示,我们称这类非确定性关系为来表示,我们称这类非确定性关系为相关关系相关关系。 具有相关关系的变量在很多时候涉及到具有相关关系的变量在很多时候涉及到随机随机变量变量,虽然不具有确定的函数关系,但是可以借,虽然不具有确定的函数关系,但是可以借助函数关系来助函数关系来近似表示近似表示它们之间的统计规律,这它们之间的统计规律,这种近似地表示它
4、们之间的相关关系的函数被称为种近似地表示它们之间的相关关系的函数被称为回归函数回归函数,对应的数学方法称为,对应的数学方法称为回归分析回归分析。第第五五讲讲 一一元元多多元元线线性性回回归归与与非非线线性性回回归归3回归分析的基本思想和方法常见概率密度函数、累积分布函数常见概率密度函数、累积分布函数. ( help stats )第第五五讲讲 一一元元多多元元线线性性回回归归与与非非线线性性回回归归4回归分析的基本思想和方法 回归分析是数学建模的有力工具,那么我们要回归分析是数学建模的有力工具,那么我们要建立回归函数的数学模型,一般需要以下建立回归函数的数学模型,一般需要以下步骤步骤:1、采集
5、采集一组包含自变量和因变量的一组包含自变量和因变量的数据数据;2、选定选定自变量与因变量之间的自变量与因变量之间的模型模型,利用数据,利用数据 按照最小二乘准则按照最小二乘准则计算计算模型中的模型中的系数系数;3、利用统计、利用统计分析分析方法对不同的模型进行方法对不同的模型进行比较比较, 找出与数据拟合得最好的模型;找出与数据拟合得最好的模型;4、判断得到的、判断得到的模型模型是否适合于这组数据,是否适合于这组数据,诊断诊断 有无不适合回归模型的异常数据;有无不适合回归模型的异常数据;5、利用模型对因变量做出、利用模型对因变量做出预测预测或或解释解释。 附注附注:在第:在第2步中,选定自变量
6、与因变量的模步中,选定自变量与因变量的模型时,一般是凭经验选取模型。回归分析主要包型时,一般是凭经验选取模型。回归分析主要包括括一元线性回归,多元线性回归一元线性回归,多元线性回归以及以及非线性回归非线性回归第第五五讲讲 一一元元多多元元线线性性回回归归与与非非线线性性回回归归5一元线性回归( linear regression )基于最小二乘的一元线性回归函数基于最小二乘的一元线性回归函数regress:Unary Linear Regression Analysis:b = regress(y,X)回归系数的点估计回归系数的点估计b,bint,r,rint,stats = regress(
7、y,X,alpha)回归系数的点估计和区间估计,并检验回归模型回归系数的点估计和区间估计,并检验回归模型范例范例 为实时地调整切削机床,需测定刀具的磨损为实时地调整切削机床,需测定刀具的磨损程度,每隔一小时测量刀具的厚度得到以下的数据,程度,每隔一小时测量刀具的厚度得到以下的数据,试建立刀具厚度关于切削时间的回归模型,对模型试建立刀具厚度关于切削时间的回归模型,对模型和系数进行检验,预测和系数进行检验,预测15小时后刀具的厚度小时后刀具的厚度:时间时间(h)012345678910厚度厚度(cm)30.629.128.428.128.027.727.527.227.026.826.5第第五五讲
8、讲 一一元元多多元元线线性性回回归归与与非非线线性性回回归归6一元线性回归( linear regression )1、对原始数据进行观察,确定回归模型:、对原始数据进行观察,确定回归模型:x=0:1:10;y=30.6,29.1,28.4,28.1,28.0,27.7,27.5,27.2,27.0,26.8,26.5;plot(x,y,rs,linewidth,2);从原始数据上看,可以建立一元线性回归模型:从原始数据上看,可以建立一元线性回归模型:第第五五讲讲 一一元元多多元元线线性性回回归归与与非非线线性性回回归归7一元线性回归( linear regression )2、线性回归函数、
9、线性回归函数regress相关参数的统计学意义相关参数的统计学意义: 其中,其中,alpha表示显著性水平,缺省时为表示显著性水平,缺省时为0.05;b为为回归回归系数估计值系数估计值,bint为回归系数的置信区间;为回归系数的置信区间;r是残差,是残差,rint是残差的置信区间;是残差的置信区间;stats是用于是用于检验检验回归模型的统计量。回归模型的统计量。 统计量统计量stats有三个数值:有三个数值: 一是一是相关系数相关系数 R的平方的平方(用于用于相关系数评价,相关系数评价,R的绝对值间于的绝对值间于0.81,越靠近,越靠近1表明回归表明回归显著显著) ;二是二是统计量统计量F(
10、用于用于F检验法,检验法,F的值大于的值大于F1-a(v1,v2)表明回归显著表明回归显著);三是三是与与F对应的概率对应的概率P(Palpha表明表明回归显回归显著,一般著,一般0.01P 0.05被认为是具有统计学意义,而被认为是具有统计学意义,而0.001 P 0.01被认为具有高度统计学意义被认为具有高度统计学意义)第第五五讲讲 一一元元多多元元线线性性回回归归与与非非线线性性回回归归8一元线性回归( linear regression )3、计算计算回归模型各项回归模型各项系数系数并绘制时序残差图并绘制时序残差图:x=0:1:10; y=30.6,29.1,28.4,28.1,28.
11、0,27.7,27.5,27.2,27.0,26.8,26.5;alpha=0.05; x=ones(length(x),1),x; y=y;b,bint,r,rint,stats=regress(y,x,alpha);%线性回归线性回归disp(回归系数回归系数b估计值估计值:, num2str(b);disp(相关系数相关系数R绝对值绝对值:,num2str(sqrt(stats(1);%此值至少间于此值至少间于0.81,越接近,越接近1越显著越显著disp(假设检验统计量假设检验统计量F:,num2str(stats(2);%此值大于对应此值大于对应反查反查F累积分布表值累积分布表值,越
12、大于越显著。,越大于越显著。%查表查表finv(1-alpha,变量数变量数,数据数数据数-变量数变量数-1)如如finv(0.95,1,9)disp(统计量统计量F对应概率对应概率P:,num2str(stats(3);%此值小于此值小于alpha(默认默认0.05),越小于越显著,越小于越显著rcoplot(r,rint) %画出残差及其置信区间画出残差及其置信区间(时序残差图时序残差图)fprintf(回归函数为回归函数为 y=%.4f+%.4f*xn,b(1),b(2);第第五五讲讲 一一元元多多元元线线性性回回归归与与非非线线性性回回归归9一元线性回归( linear regress
13、ion )4、诊断诊断并剔除并剔除不适合回归模型的异常数据不适合回归模型的异常数据:%为了方便多次回归,此处为了方便多次回归,此处daoju.m已作适当改写已作适当改写 观察残差分布,发现第观察残差分布,发现第一个数据一个数据(0,30.6)残差的置信残差的置信区间区间不包括零点不包括零点,应视为,应视为异异常点常点,将其剔除后,用剩余,将其剔除后,用剩余的数据点的数据点重新进行计算重新进行计算: 再次计算,发现原始数再次计算,发现原始数据中的第二个数据据中的第二个数据(1,29.1)残残差的置信区间差的置信区间也不包括零点也不包括零点,仍将该点视为仍将该点视为异常点异常点,将其,将其剔除,剔
14、除,重新计算重新计算: 提示提示: 可在变量空间中双可在变量空间中双击变量然后右键击变量然后右键Delete数据数据第第五五讲讲 一一元元多多元元线线性性回回归归与与非非线线性性回回归归10一元线性回归( linear regression )5、综合、综合三三种评价种评价指指数数一一时序残差时序残差图图选定最佳回归选定最佳回归: 最后一次回归最后一次回归的数据残差的置的数据残差的置信区间信区间全部包括全部包括零点,无异常点零点,无异常点。对比分析:对比对比分析:对比两次两次剔除剔除异常点异常点前后的变化,发前后的变化,发现现置信区间明显置信区间明显缩小,相关系数缩小,相关系数平方和平方和明显
15、变大明显变大,表明异常点的,表明异常点的剔除有利于更好剔除有利于更好的建立模型。的建立模型。第第五五讲讲 一一元元多多元元线线性性回回归归与与非非线线性性回回归归11一元线性回归( linear regression )6、残差向量正态性的图形检验、残差向量正态性的图形检验: 目的是为了检验误差的正态性假设是否合理,常用的目的是为了检验误差的正态性假设是否合理,常用的图形检验方法与三种:图形检验方法与三种:normplot qqplot histqqplot分位图分位图hist频度统计图频度统计图第第五五讲讲 一一元元多多元元线线性性回回归归与与非非线线性性回回归归12一元线性回归( line
16、ar regression )7、利用利用回归回归模型对因变量做出预测或解释模型对因变量做出预测或解释:代入最后一次回归系数估计值:代入最后一次回归系数估计值:28.8667 -0.233333对比采样点和回归模型,并预测对比采样点和回归模型,并预测1515小时后刀具的厚度:小时后刀具的厚度:xdata=0:1:10;ydata=30.6,29.1,28.4,28.1,28.0,27.7,27.5,27.2,27.0,26.8,26.5;plot(xdata,ydata,rs,linewidth,2);hold on;x=0:0.01:16;y=b(1)+b(2)*x;plot(x,y,b-,
17、linewidth,2);y=b(1)+b(2)*15 % ans=25.3667 即该切削机床即该切削机床15小时后的刀具厚度预测值为小时后的刀具厚度预测值为25.3667 cm第第五五讲讲 一一元元多多元元线线性性回回归归与与非非线线性性回回归归13一元线性回归( linear regression )基于最小二乘加权迭代的基于最小二乘加权迭代的稳健回归稳健回归函数函数robustfit:Robust Regression Analysis:b = robustfit(X,Y)b,stats = robustfit(X,Y)b,stats = robustfit(X,Y,wfun,tune
18、,const)说明说明 b为回归为回归系数估计向量;系数估计向量;stats为为各种参数估各种参数估计;计;wfun指定一个加权函数;指定一个加权函数;tune为调协常数;为调协常数;const的值为的值为on(默认值默认值)时添加一个常数项;时添加一个常数项;为为off 时忽略常数项。时忽略常数项。稳健回归稳健回归是指此回归方法是指此回归方法相对于其他回归方法而言,受异常值的影响较小。相对于其他回归方法而言,受异常值的影响较小。第第五五讲讲 一一元元多多元元线线性性回回归归与与非非线线性性回回归归14一元线性回归( linear regression )范例范例 用函数用函数y=10-2x加
19、随机干扰项生成数据集加随机干扰项生成数据集, 改改变变y(10)的值形成异常值,分别作的值形成异常值,分别作regress和和robustfit线性回归,线性回归,观察异常数据点对回归效果的影响:观察异常数据点对回归效果的影响:x=1:1:10; y=10-2*x+randn(1,10); %生成数据并加干扰项生成数据并加干扰项y(10)=0; %产生异常数据点产生异常数据点breg=regress(y,ones(1,10);x)brob=robustfit(x,y) %注意调用格式注意调用格式syms b1 b2 t; fun=b1+b2*t; f=inline(subs(fun,b1,b2
20、,breg(1),breg(2);g=inline(subs(fun,b1,b2,brob(1),brob(2);plot(x,y,rs, linewidth,2); hold on;plot(x,f(x),g-, linewidth,2);plot(x,g(x),b-, linewidth,2);上面的范例也可以通过运行上面的范例也可以通过运行robustdemo动态观察动态观察第第五五讲讲 一一元元多多元元线线性性回回归归与与非非线线性性回回归归15多元线性回归( linear regression )基于最小二乘的多元线性回归函数基于最小二乘的多元线性回归函数regress:Multip
21、le Linear Regression Analysis:b = regress(y,X)b,bint,r,rint,stats = regress(y,X,alpha)范例范例 现有现有23位病人对医院的服务工作进行综合打位病人对医院的服务工作进行综合打分分(百分制百分制),同时也调查病人的简单情况,项目包,同时也调查病人的简单情况,项目包括,病人对医院服务工作的满意程度括,病人对医院服务工作的满意程度Y,病人的年,病人的年龄龄X1,病情严重程度,病情严重程度X2,病人忧虑程度,病人忧虑程度X3,具体,具体调查表格如下调查表格如下(参见参见p89-90)方法方法1: regress多元线性
22、回归多元线性回归第第五五讲讲 一一元元多多元元线线性性回回归归与与非非线线性性回回归归16多元线性回归( linear regression )1、对原始数据进行观察,确定回归模型:、对原始数据进行观察,确定回归模型:load hospital.mat %载入数据源载入数据源subplot(1,3,1);plot(x(1,:),y,rs,linewidth,2);title(年龄年龄vs评分评分);subplot(1,3,2);plot(x(2,:),y,gs,linewidth,2);title(病情病情vs评分评分);subplot(1,3,3);plot(x(3,:),y,bs,line
23、width,2);title(忧虑忧虑vs评分评分);由散点图分析知:由散点图分析知:自变量年龄、病情、忧虑与因变量评分自变量年龄、病情、忧虑与因变量评分呈显著线性关系呈显著线性关系,所以可以建立多元线性回归模型,所以可以建立多元线性回归模型第第五五讲讲 一一元元多多元元线线性性回回归归与与非非线线性性回回归归17多元线性回归( linear regression )2、利用数据按照最小二乘准则计算模型中的系数利用数据按照最小二乘准则计算模型中的系数:load hospital.mat %载入数据源载入数据源alpha=0.05; x=ones(length(x),1),x; y=y;b,bi
24、nt,r,rint,stats=regress(y,x,alpha);disp(回归系数回归系数b估计值估计值:, num2str(b);disp(相关系数相关系数R绝对值绝对值:,num2str(sqrt(stats(1);disp(假设检验统计量假设检验统计量F:,num2str(stats(2);%finv(0.95,3,19)disp(统计量统计量F对应概率对应概率P:,num2str(stats(3);rcoplot(r,rint) %画出残差及其置信区间画出残差及其置信区间(时序残差图时序残差图)fprintf(回归函数为回归函数为 y=%.4f+%.4f*x1+%.4f*x2 +
25、%.4f*x3,b(1),b(2),b(3),b(4);第第五五讲讲 一一元元多多元元线线性性回回归归与与非非线线性性回回归归18多元线性回归( linear regression )3、找出与数据拟合得最好的模型找出与数据拟合得最好的模型:经过对经过对stats统计量和时序残差图的综合分析,回归统计量和时序残差图的综合分析,回归显著,回归函数具有统计学意义显著,回归函数具有统计学意义第第五五讲讲 一一元元多多元元线线性性回回归归与与非非线线性性回回归归19多元线性回归( linear regression )基于最小二乘的多元基于最小二乘的多元线性线性回归工具回归工具rstool:Inter
26、active fitting and visualization of a response surface:rstool(x,y,model)rstool(x,y,model,alpha,xname,yname)方法方法2: rstool交互式回归工具交互式回归工具load hospital.mat %载入数据源载入数据源x=x; y=y; rstool(x,y,linear,0.05,年龄年龄;病情病情;忧虑忧虑,评分评分);第第五五讲讲 一一元元多多元元线线性性回回归归与与非非线线性性回回归归20多元线性回归( linear regression )基于多元线性回归的逐步回归工具基于多元线性回归的逐步回归工具stepwise:Interactive environment for stepwise regression:stepwise(X,y,inmodel)stepwise(X,y,inmodel,alpha)方法方法3: stepwise逐步回归工具逐步回归工具load hospital.mat %载入数据源载入数据源x=x; y=y; stepwise(x,y,1,2,3,0.05);