资源描述:
《基于matlab的多元非线性回归模型new》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第29卷第2期云南师范大学学报Vo.l29No.22009年3月JournalofYunnanNormalUniversityMar.2009*基于MATLAB的多元非线性回归模型董大校(临沧师范高等专科学校,云南临沧6770000)摘要:MATLAB是源于矩阵运算的一种高度集成的计算机语言。它提供了强大的科学运算、灵活的程序设计流程、高质量的图形可视化与界面设计、便捷的与其他程序和语言接口的功能。文章充分利用MATLAB统计工具箱的优势,通过程序的实现,对多元非线性回归模型的未知参数的估计方法以及对估计
2、后的模型预报做出研究,并以实例验证了该方法的有效性。关键词:MATLAB;多元非线性回归;最小二乘法;统计工具箱中图分类号:TP301文献标识码:A文章编号:1007-9793(2009)02-0045-041预备知识[1]非线性回归最小二乘法拟合的基本原理。对给定数据(xi,yi)(i=0,1,,m),在取定的函数类中,求p(x),使误差ri=p(x)-yi(i=0,1,,m)的平方和最小,即mm22!ri=![p(xi)-yi]i=1i=0最小,从几何意义上讲,就是寻求与给定点(xi,
3、yi)(i=0,1,,m)的距离平方和为最小的曲线y=p(x)(图1)。函数p(x)称为拟合函数或最小二乘解,求拟合函数p(x)的方法称为曲线拟合的最小二乘法。2MATLAB非线性曲线拟合命令介绍[2]21nlinfit函数用nlinfit函数进行非线性最小二乘数据拟合。该函数使用高斯∀牛顿算法,调用格式如下:#beta=nlinfit(X,y,fun,beta0)用最小二乘法估计非线性函数系数。y为响应值(因变量)矢量。一般地,为自变量值组成的设计矩阵,每一行对应与y中的一发个值。但是,X可以是fun参
4、数能接受的任何数组。fun参数为一函数,该函数具有下面的形式yhat=myfun(beta,X)其中beta为系数矢量,X为设计矩阵。fun为参数返回一个拟合y值的yhat矢量。beta0为包含系数初始值的矢量。#[beta,r,J]=nlinfit(X,y,fun,beta0)返回拟合系数(beta)、残差(r)、和雅可比矩阵J,这些参数可以用于nlintool函数,生成预测值的误差估计;或用于nlparci函数生成系数的误差估计。22nlintool函数使用nlintool函数可以对数据进行非线性方程拟合
5、并交互图形显示,其调用格式如下:*收稿日期:2008-10-23作者简介:董大校(1965-),男,云南省临沧市人,副教授,主要从事数学教学科研工作&46&云南师范大学学报(自然科学版)第29卷#nlinfit(x,y,fun,beta0)为一预测图,它提供数据(x,y)的非线性曲线拟合。它用两条红色曲线来表示预测值的95%置信区间。beta0为一矢量,包含参数的初值。fun参数为一函数,该函数具有yhat=myfun(beta,X)的形式:其中beta为系数矢量,X为设计矩阵。nlintool函数显示一
6、个图形∃矢量%,其中的每个图形对应于输入矩阵x的每一列。响应变量y为一列矢量,与x的行数相匹配。#nlintool(x,y,FUN,beta0,alpha)用图形表示预测值的100(1-alpha)%置信区间。当x为矩阵时,将为每一列单独生成图形,应变量y为一列变量,对应于x的行。alpha()的默认值为005生成95%置信区间。23nlpredci函数可利用nlpredci函数计算非线性模型预测值的置信区间,其调用格式如下:#ypred=nlpredci(FUN,inputs,beta,r,J)给定拟合
7、参数(beta)、残差(r)和和雅可比矩阵(J),返回预测响应。输入是非线性函数中独立变量的数值矩阵。24nlparci函数可利用nlparci函数计算非线性模型中参数估计值的置信区间。#nlparci(beta,r,J)给定拟合参数(beta)、残差(r)、和解处的雅可比矩阵(J),返回非线性最小二乘参数估计(beta)的95%置信区间ci。nlparci函数使用nlinfit函数的输出作为输入。25regress函数用regress函数进行多元线性回归。#[b,bin,tr,rin,tstats]=re
8、gress(y,x,alpha)给出bint和rint的100(1-alpha)%置信区间。26stepwise函数用stepwise函数进行逐步回归,它使用交互环境进行分析。其调用格式如下:#stepwise(x,y,inmode,lpenter,premove)指定模型的初始状态和要使用的置信区间。inmodel为长度为x中列数的逻辑矢量。inmodel指定包含