11多元回归与神经网络的应用摘要本文主要是通过整理分析数据,以得出题目中所给出的ix与jy的函数关系.由于数据并不是很充足,我们选择了所有数据为样本数据和部分数据为验证数据。我们首先采用了多元回归方法,由于数据之间并没有明显的线性或者其它函数关系,模型很难选择,得到的结论对于1y来说残值偏大,效果很差,于是我们引用了BP神经网络,经过选择合适的参数,多次训练得到合适的网络,拟合得到了相对精确的结果,并进行了验证,最后将三种模型进行了对比。关键字:多元线性回归多元非线性回归最小二乘法牛顿法BP神经网络1.问题重述现实生活中,由于客观事物内部规律的复杂性及人们认识程度的限制,人们常收集大量的数据,基于数据的统计分析建立合乎基本规律的数学模型,然后通过计算得到的模型结果来解决实际问题.回归分析法和神经网络是数学建模中常用于解决问题的有效方法.本文要解决的主要问题是:通过对所给数据的分析,分别用回归方法或神经网络来确立xi与yi之间的函数关系,并验证结论。2.问题分析题目要求我们使用神经网络或回归方法来做相关数据处理,相比较之下,我们对回归方法比较熟悉,所以首先选取了回归方法。得到相关函数,并分析误差,再利用神经网络模型建立合理的网络,进行误差分析并和前者比较,得出合理的结论。3.符号说明mx的自变量个数回归系数残差Q偏差平方和12,XY分别为两个变量序列,iiXY的均值w(t)ij第一层网络与第二层网络之间的权值(t)ijB第二层神经元的阈值(t)jkw第二层与第三层之间的权值(t)jkB第三层神经元的阈值jkw第二层与第三层权值调整量jkB第二层与第三层阈值调整量ijw第一层与第二层权值调整量ijB第一层与第二层阈值调整量Logsig函数xey11Tansig函数1-)e+(12x2-Q偏差平方和y观察值^y回归值估计参数hS回归平方和1hS(p-1)个变量所引起的回归平方和(即除去ix)iQ偏回归平方和4.模型建立与求解134.1多元回归方法它是研究某个变量与另一些变量的函数关系.主要内容是从一组样本数据出发,通过合理分析得到正确的函数关系,建立相应的表达式,并通过相关软件处理得到相应的系数。4.1.1多元线性回归方法1.回归模型的一般形式为:Y=01122...mmXXX其中01,,...,m是待估计参数,e是随机误差即残差。残差服从均数为0,方差为2的正态分布。这就是线性回归的数学模型。12Yyy,X1114491494501504111xxxxxx,01234,12,那么多元线性回归数学模型可也写成矩阵形式:YX其中的分量是独立的。2.参数的最小二乘估计.为了估计参数,我们采用最小二乘估计法.设014,,...,bbb分别是参数014,,...,的最小二乘估计,则回归方程为^01144...ybbxbx由最小二乘法知道,014,,...,bbb应使得全部观察值y与回归值^y的偏差平方和Q达到最小,即使2^Qyy=最小14所以Q是014,,...,bbb的非负二次式,最小值一定存在。根据微积分中的极值原理,014,,...,bbb应是下列正规方程组的解:^0^20,20,jjQQyybyyxb显然,正规方程组的系数矩阵是对称矩阵,用A来表示,则'AXX,则其右端常数项矩阵B亦可以用矩阵X和Y来表示:'BXY,所以可以得到回归方程的回归系数:11''bABXXXY3.由于利用偏回归方程和iQ可以衡量每个变量在回归中所起的作用大小(即影响程度),设hS是p个变量所引起的回归平方和,1hS是(p-1)个变量所引起的回归平方和(即除去ix),则偏回归平方和iQ为12*0pjjhjijiiijhbQbSSbBBc就是去掉变量ix后,回归平方和所减少的量。4.建立模型453423121xbxbxbxbbyi5.模型的求解我们通过MATLAB,求得其回归系数,并最终得到ix与iy的函数关系:1234112342339.849916.811411.548967.541415.5485,164.55800.18741.797629.972812.4426,yxxxxyxxxx同时通过MATLAB可以得出ix与iy的误差结果如下:15由此,我们可得出结论,采用多元线性回归得出的函数关系对于1y残差太大,效果很差,对于2y的拟合也并不是很完美。4.1.2非线性回归方法1.数据标准化我们选用的是非线性模型LSE的Gauss-Newton算法:采用Z-score标准化法,即对序列12,,...,mxxx进行变换:iisxxy,(1其中,11NiiNxx,2111NisiNxx,则构成新序列,均值为0,方差为1.。首先考虑单参数的非线性回归模型:,iiifxY其残差平方和函数为1621,NiSiifYX要使S取极小值,则令其一阶导数为0,来求.一个近似的方法是用Taylor近似展开来代替。设的初值为1,则在1点附近函数有近似Taylor展式:111,,,iiidfffdXXX可以求的其导数值,简记为:11,iidfdXZ则221111111,.NNiiSiiiiifYXZYZ即为线性回归11.iiiZY的残差和.上式被称为拟线性模型.其最小二乘估计是)()()]()([)()()(1~'111'1211111~2YZZZZZYniiniii如果我们有的初值,就可以得到另一个新值,进而可以得到一个序列,写出一个迭代表达式,即1n与n的关系。若在迭代过程中有1n=n,即S的一阶导数为0,此时S取得一个极值。为了避免迭代时间过长或迭代来回反复,可以引入进步长控制函数nt,'11[Z()Z()]nnnnnndStd'1'2[Z()Z()]()[Y(X,)]nnnnnntZfnt由计算机程序根据误差自动调整.上述算法一般称为Gauss-Newton算法.172.建立非线性回归模型:采用多元二次多项式函数设函数:220112233445161271381492102312211241231334144ybbxbxbxbxbxbxxbxxbxxbxbxxbxxbxbxxbx通过Gauss-Newton算法和MATLAB计算最终得出以下结果:212341121221314223243342412212575.940129.457127.81901597.99601695.57780.87100.466535.30932.15491.289824.79770.912131.894694.336757.08592483.447814.59885.8585yxxxxxxxxxxxxxxxxxxxxyxx234112221314223243342412.5802302.89100.48880.09558.72100.49710.21233.04590.141024.69235.203310.1871xxxxxxxxxxxxxxxxxx通过MATLAB编写相应程序所得结果如下:12,yy的残差图18由图可以明显看出误差很大,拟合效果不好。综合多元非线性和多元线性这两种模型,我们可以发现y1并不适合这两种模型,y2模拟相对较好,但误差并没有足够小,不再我们的预期效果之内。于是我们采用了BP神经网络。4.2神经网络4.2.1模型的原理BP(BackPropagation)神经网络是一种多层前馈神经网络。其由输入层、中间层、输出层组成的阶层型神经网络,中间层可扩展为多层。相邻层之间各神经元进行全连接,而每层各神经元之间无连接,网络按有教师示教的方式进行学习,当一对学习模式提供给网络后,各神经元获得网络的输入响应产生连接权值(Weight),隐含层神经元将传递过来的信息进行整合,通常还会在整合过程添加一个阈值,这是模仿生物学中神经元必须达到一定阈值才会触发的原理。输入层神经元数量由输入样本的维数决定,输出层神经元数量由输出样本的维数决定,隐藏层神经元合理选择。然后按减小希望输出与实际输出误差的方向,从输出层经各中间层逐层修正各连接权,回到输入层。此过程反复交替进行,直至网络的全局误差趋向给定的极小值,即完成学习的过程。BP网络的核心是数学中的“负梯度下降”理论,即BP的误差调整方向总是沿着误差下降最快的方向进行。.相关传递函数(或激励函数):阈值型(一般只用于简单分类的MP模型中)0,0()1,0xfxx线性型(一般只用于输入和输出神经元)()fxxS型(常用于隐含层神经元)1()1xfxe或1()1xxefxeBP神经网络模型型19通常还会在激励函数的变量中耦合一个常数以调整激励网络的输出幅度。4.2.2模型的建立与求解步骤1、准备训练网络的样本我们此次的BP网络是一个4输入2输出的网络,如下表所示:序号X1X2X3X4Y1Y218100.51441.3214.328140.715725.670.00533818116113.7812.1448221.217867.160.00558261.518905.630.003610100.7165.5271.6871014117100.41810181.218329.850.42910221.51424.0257.321010260.515191.133.891113101183.8877.41213141.21436.8319.571313181.515217.939.061413220.516258.350.00411513260.717398.460.00581615101.2152.2485.321715141.51629.2415.741815180.517296.9871915220.718207.520.036201526114204.860.7062118101.5173.1685.52218140.51815.9236.322318180.71449.429.52241822115149.60.512518261.2162550.05268281.21869.386.322782011858.981.9288170.718125.598.39298150.51885.195.2110308131.518115.397.7531102811815.535.443210200.71818.842.43310170.51817.341.983410151.51866.483.583510131.21858.682.523613280.71818.142.483713200.51821.850.73813171.51877.187.583913151.2186282.2440131311836.266.064115280.51826.962.044215201.518135.398.154315171.21861.384.2644151511836.368.884515130.71817.745.724618281.518184.999.24718201.21880.590.5848181711841.969.649