matlab回归分析方法综述

第八章 回归分析方法

当人们对研究对象的内在特性和各因素间的关系有比较充分的认识时,一般用机理分析方法建立数学模型。如果由于客观事物内部规律的复杂性及人们认识程度的限制,无法分析实际对象内在的因果关系,建立合乎机理规律的数学模型,那么通常的办法是搜集大量数据,基于对数据的统计分析去建立模型。本章讨论其中用途非常广泛的一类模型——统计回归模型。回归模型常用来解决预测、控制、生产工艺优化等问题。 变量之间的关系可以分为两类:一类叫确定性关系,也叫函数关系,其特征是:一个变量随着其它变量的确定而确定。另一类关系叫相关关系,变量之间的关系很难用一种精确的方法表示出来。例如,通常人的年龄越大血压越高,但人的年龄和血压之间没有确定的数量关系,人的年龄和血压之间的关系就是相关关系。回归分析就是处理变量之间的相关关系的一种数学方法。其解决问题的大致方法、步骤如下: (1)收集一组包含因变量和自变量的数据; (2)选定因变量和自变量之间的模型,即一个数学式子,利用数据按照最小二乘准则计算模型中的系数; (3)利用统计分析方法对不同的模型进行比较,找出与数据拟合得最好的模型; (4)判断得到的模型是否适合于这组数据; (5)利用模型对因变量作出预测或解释。应用统计分析特别是多元统计分析方法一般都要处理大量数据,工作量非常大,所以在计算机普及以前,这些方法大都是停留在理论研究上。运用一般计算语言编程也要占用大量时间,而对于经济管理及社会学等对高级编程语言了解不深的人来说要应用这些统计方法更是不可能。MATLAB等软件的开发和普及大大减少了对计算机编程的要求,使数据分析方法的广泛应用成为可能。MATLAB统计工具箱几乎包括了数理统计方面主要的概念、理论、方法和算法。运用MATLAB统计工具箱,我们可以十分方便地在计算机上进行计算,从而进一步加深理解,同时,其强大的图形功能使得概念、过程和结果可以直观地展现在我们面前。本章内容通常先介绍有关回归分析的数学原理,主要说明建模过程中要做的工作及理由,如模型的假设检验、参数估计等,为了把主要精力集中在应用上,我们略去详细而繁杂的理论。在此基础上再介绍在建模过程中如何有效地使用MATLAB软件。没有学过这部分数学知识的读者可以不深究其数学原理,只要知道回归分析的目的,按照相应方法通过软件显示的图形或计算所得结果表示什么意思,那么,仍然可以学到用回归模型解决实际问题的基本方法。包括:一元线性回归、多元线性回归、非线性回归、逐步回归等方法以及如何利用MATLAB软件建立初步的数学模型,如何透过输出结果对模型进行分析和改进,回归模型的应用等。

一元线性回归分析回归模型可分为线性回归模型和非线性回归模型。非线性回归模型是回归函数关于未知参数具有非线性结构的回归模型。某些非线性回归模型可以化为线性回归模型处理;如果知道函数形式只是要确定其中的参数则是拟合问题,可以使用MATLAB软件的curvefit命令或nlinfit命令拟合得到参数的估计并进行统计分析。本节主要考察线性回归模型。 8.1.1 一元线性回归模型的建立及其MATLAB实现 其中是待定系数,对于不同的是相互独立的随机变量。假设对于的n个值,得到的n个相应的值,确定的方法是根据最小二乘准则,要使

取最小值。利用极值必要条件令,求的估计值,从而得到回归直线。只不过这个过程可以由软件通过直线拟合完成,而无须进行繁杂的运算。(1)参数的区间估计由于我们所计算出的仍然是随机变量,因此要对取值的区间进行估计,如果区间估计值是一个较短的区间表示模型精度较高。(2)对误差方差的估计设为回归函数的值,为测量值,残差平方和

剩余方差(3)线性相关性的检验由于我们采用的是一元线性回归,因此,如果模型可用的话,应该具有较好的线性关系。反映模型是否具有良好线性关系可通过相关系数R的值及F值观察(后面的例子说明)。(4)一元线性回归的MATLAB实现 MATLAB工具箱中用命令regress实现,其用法是: b=regress(y,x) [b ,bint , r ,rint , s]=regress(y , x , alpha)输入y(因变量,列向量)、x(1与自变量组成的矩阵,见下例),alpha是显著性水平(缺省时默认0.05)。输出,注意:b中元素顺序与拟合命令polyfit的输出不同,bint是的置信区间,r是残差(列向量),rint是残差的置信区间,s包含4个统计量:决定系数(相关系数为R);F值;F(1,n-2)分布大于F值的概率p;剩余方差的值(MATLAB7.0以后版本)。也可由程序sum(r.^2)/(n-2)计算。其意义和用法如下:的值越