2023年8月3日发(作者:)
第四章 回归分析
回归分析就是根据实验数据或历史数据,研究变量之间的相关关系,建立起一个数学模型,进而将此模型用于预测或控制.如果研究两个变量x,y之间的关系,则称为一元回归模型(即一元函数拟合),如果研究变量y与多个变量x1,x2,......,回归模型(即多元函数拟合)。
xm之间的关系,则称为多元多项式拟合一元函数拟合
非线性拟合
曲线拟合 多元函数拟合
多元线性拟合多元非线性拟合实验4.1多项式拟合
实验目的
(1) 掌握多项式回归的Matlab命令,
(2) 熟练计算残差平方和与可决系数,并能据此进行拟合效果分析。
一元回归模型中,如果f(x)c0c1xc2x2cmxm是多项式函数,则称为多项式回归,此时的参数即多项式的系数;如果f(x)为指数函数、对数函数、幂函数或三角函数比如a(1be),ab,sinaxcosbx,则称为非线性,ablnx等(a,b,c是待定的参数)拟合.
cxx实验内容
在Matlab中多项式拟合与求值的命令如下:
p=polyfit(x,y,n)
其中输入:x为自变量,y为因变量,n是多项式的阶数;
输出:p是按降幂排列的多项式的系数.
polyval(p,x) %计算以p为系数的多项式在x处的函数值。
对于多项式拟合一般有以下几个步骤:
(1)首先作出数据的散点图,根据散点图,确定多项式的阶数。
(2)用多项式拟合的命令polyfit求其系数;
(3)根据多项式的值计算残差平方和与可决系数,比较拟合效果。
计算可决系数的公式为 R21(yi1ni1niˆi)2y
(yiy)21n22其中
yyi,显然0R1,R越趋近于1表明拟合效果越好.
ni1【例题4.1】为了分析X射线的杀菌作用,用200千伏的X射线来照射细菌,每次照射6分钟,照射次数记为t,照射后的细菌数y如表4.1所示:
表4.1 X射线照射次数与残留细菌数
t
y
1 2 3 4 5 6 7 8 9
56
10
38
11
36
12
32
13
21
14
19
15
15 352 211 197 160 142 106 104 60
试求:(1)y与t的二次函数与三次函数关系;(2)在同一坐标系内作出原始数据与拟合结果的散点图;(3)建立评价标准判断二次函数与三次函数拟合效果;(4)根据问题的实际意义你认为选择多项式函数是否合适?
解:首先做散点图:(见图4.1)
t=[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15];
y=[ 352 211 197 160 142 106 104 60 56 38 36 32 21 19 15];
plot(t,y,'-o')
图4.1 原始数据散点图
根据题目要求,求y与t的二次函数关系,输入命令:
p=polyfit(t,y,2)
得到p =1.9897 -51.1394 347.8967,
即二次函数为:
y21.9897t51.1394t347.8967
同理可得三次函数为:y3 -0.1777t 6.2557t -79.3303t
391.4095在同一坐标系内作出原始数据、二次函数、三次函数的图形(见图4.2)。
继续输入命令:
y2=1.9897*t.^2-51.1394*t+347.8967 ;
y3=-0.1777*t.^3+6.2557*t.^2-79.3303*t+391.4095 ;
plot(t,y,'*',t,y2,'o',t,y3,'+'),
322legend('原始数据','二次函数','三次函数')
图4.2 原始数据与拟合曲线图形
我们分别计算二次函数与三次函数的可决系数:
R2=1-sum((y-y2).^2)/sum((y-mean(y)).^2),
R3=1-sum((y-y3).^2)/sum((y-mean(y)).^2)
因为R3 =0.9673> 0.9530=R2,所以三次函数拟合效果优于二次函数.
从问题的实际意义可知,随着照射次数的增加残留的细菌数减少,且开始时减少幅度较大,但随着照射次数增加,减少的速度变得缓慢.而多项式函数随着自变量的增加,函数值趋向于无穷大,因此如果在有限的照射次数内用多项式拟合是可以的,如果照射次数超过15次,则拟合效果开始变差,比如t=16,用二次函数计算出细菌残留数为39.0396,显然与实际不相符合.
发布者:admin,转转请注明出处:http://www.yc00.com/xiaochengxu/1691040412a492973.html
评论列表(0条)