《第九章 统计方法建模.pdf》由会员分享,可在线阅读,更多相关《第九章 统计方法建模.pdf(42页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、1第九章第九章 统计方法建模统计方法建模一、统计的一、统计的基本概念基本概念数理统计研究的对象是受随机因素影响的数据,以下数理统计就简称统计,统计是以概率论为基础的一门应用学科。数据样本少则几个,多则成千上万,人们希望能用少数几个包含其最多相关信息的数值来体现数据样本总体的规律。描述性统计就是搜集、整理、加工和分析统计数据,使之系统化、条理化,以显示出数据资料的趋势、特征和数量关系。它是统计推断的基础,实用性较强,在统计工作中经常使用。面对一批数据如何进行描述与分析,需要掌握参数估计和假设检验这两个数理统计的最基本方法。1.11.11.11.1 总体和样本总体和样本在数理统计中,把所研究的对象
2、的全体称为总体。通常指研究对象的某项数量指标,一般记为X。把总体的每一个基本单位称为个体。如全体在校生的身高X,某批灯泡的寿命Y。对不同的个体,X的取值是不同的。所以,X可以看成是一个随机变量或随机向量。从总体X中抽出若干个个体称为样本,一般记为()nXXX,21。n称为样本容量。而对这n个个体的一次具体的观察结果()nxxx,21是完全确定的一组数值,但它又随着每次抽样观察而改变。()nxxx,21称为样本观察值。统计的任务是从手中已有的资料样本观察值,去推断总体的情况总体分布。1.21.21.21.2 频数表和直方图频数表和直方图一组数据(样本观察值)虽然包含了总体的信息,但往往是杂乱无章
3、的,作出它的频数表和直方图,可以看作是对这组数据的一个初步整理和直观描述。将数据的取值范围划分为若干个区间,然后统计这组数据在每个区间中出现的次数,称为频数,由此得到一个频数表。以数据的取值为横坐标,频数为纵坐标,画出一个阶梯形的图,称为直方图,或频数分布图。1.31.31.31.3 统计量统计量样本是我们进行分析和推断的起点,但实际上我们并不直接用样本进行推断,而需对样本进行“加工”和“提炼”,将分散于样本中的信息集中起来,为此引入统计量的概念。假设有一个容量为n的样本,需要对它进行一定的加工,才能提出有用信息,用作对总体(分布)参数的估计和检验。统计量就是加工出来的、不含未知参数的样本的函
4、数。21.41.41.41.4 几种常用的统计量几种常用的统计量(1)算术平均值和中位数算术平均值(简称均值),=niiXnX11,中位数是将数据由小到大排序后位于中间位置的那个数值。(2)标准差、方差标准差:()211211=niiXXns,它是各个数据与均值偏离程度的度量。方差是标准差的平方,记为2s。(3)偏度和峰度表示数据分布形状的统计量有偏度和峰度。偏度:()=niiXXsg13311反映数据分布对称性的指标,当01g时,称为右偏态,此时数据位于均值右边的比位于左边的多;当01g时称为左偏态,情况相反;而1g 接近0时,则可认为分布是对称的。峰度:()=niiXXsg14421),是
5、数据分布形状的另一种度量,正态分布的峰度为3,若2g 比3大得多,表示分布有沉重的尾巴,说明样本中含有较多远离均值的数据,因而峰度可以用作衡量偏离正态分布的尺度之一。将样本的观测值()nxxx,21代入以上各式后,即可求得对应统计量的观测值。1.51.51.51.5 利用利用 MATLABMATLABMATLABMATLAB 计算计算下面我们列出用于数据的统计描述和分析的常用MATLAB命令。其中,x为原始数据行向量。(1)用hist命令实现作频数表及直方图,其用法是:n,yn,yn,yn,y =hist(hist(hist(hist(x x x x,k k k k)返回x的频数表。它将区间m
6、in(x),max(x)等分为k份(缺省时k设定为10),n返回k个小区间的频数,y返回k个小区间的中点。hist(hist(hist(hist(x x x x,k k k k)3返回x的直方图。(1)算术平均值和中位数Matlab中mean(x)返回x的均值,median(x)返回中位数。(2)标准差、方差和极差极差是nxxx,21的最大值与最小值之差。Matlab中std(x)返回x的标准差,var(x)返回方差,range(x)返回极差。(4)偏度和峰度Matlab中skewness(x)返回x的偏度,kurtosis(x)返回峰度。例1 某学校随机抽取100名学生,测量他们的身高,所得
7、数据如下表1721691691711671781771701671691711681651691681731701601791721661681641701651631731651761621601751731721681651721771821751551761721691761701701691861741731681691671701631721761661671661611731751581721771771691661701691731641651821761721731741671711661661721711751651691681731781631691691771841661
8、71170用Matlab计算例1的频数表、直方图及均值等统计量,程序如下:X=172 169 169 171 167 178 177 170 167 169 171 168 165 169 168 173170 160 179 172 166 168 164 170 165 163 173 165 176 162 160 175 173172 168 165 172 177 182 175 155 176 172 169 176 170 170 169 186 174173 168 169 167 170 163 172 176 166 167 166 161 173 175 158 172
9、177177 169 166 170 169 173 164 165 182 176 172 173 174 167 171 166 166172 171 175 165 169 168 173 178 163 169 169 177 184 166 171 170;n,y=hist(X)n=23618262211822y=156.5500159.6500162.7500165.8500168.9500172.05004175.1500178.2500181.3500184.4500hist(X)155160165170175180185190051015202530直方图x1=mean(X)
10、x1=170.2500 x2=median(X)x2=170 x3=range(X)x3=31x4=std(X)x4=5.4018x5=skewness(X)x5=0.1545x6=kurtosis(X)x6=3.5573(5)几个重要的概率分布的MATLAB实现Matlab统计工具箱中提供了约20种概率分布,对每一种分布提供了5种运算功能,下表给出了常见8种分布对应的Matlab命令字符,表2给出了每一种运算功能所对应的Matlab命令字符。当需要某一分布的某类运算功能时,将分布字符与功能字符连接起来,就得到所要的命令。5分布均匀指数正态2分布t分布F分布二项泊松字符unifexpnormc
11、hi2tfbinopoiss功能概率密度分布函数逆概率密度均值与方差随机数生成字符pdfcdfinvstatrnd例2 求正态分布()2,1N,在x=1.2处的概率密度。y=normpdf(1.2,-1,2)y=0.1089例3 求泊松分布()3P,在k=5,6,7处的概率。y=poisspdf(5 6 7,3)y=0.10080.05040.0216例4 求均匀分布()3,1U,在x=2处的分布函数值。y=unifcdf(2,1,3)y=0.5000例5 求概率995.0=的正态分布()2,1N的分位数X。y=norminv(0.995,1,2)y=6.1517例6 求t分布()10t的期望
12、和方差。m,v=tstat(10)m=0v=1.2500例7 生成一个2*3阶正态分布的随机矩阵。其中,第一行3个数分别服从均值为1,2,3;第二行3个数分别服从均值为4,5,6,且标准差均为0.1的正态分布。A=normrnd(1 2 3;4 5 6,0.1,2,3)A=1.11892.03272.98133.99625.01756.0726例8 生成一个2*3阶服从均匀分布()3,1U的随机矩阵。6B=unifrnd(1,3,2,3)B=1.82051.11582.62632.78731.70571.0197注:对于标准正态分布,可用命令randn(m,n);对于均匀分布()1,0U,可用
13、命令rand(m,n)。一、一、参数估计参数估计3.13.13.13.1 参数估计的方法参数估计的方法利用样本对总体进行统计推断的一类问题是参数估计,即假定总体的概率分布类型已知,由样本估计参数的分布。参数估计的方法主要有点估计和区间估计两种。(1)点估计点估计是用样本统计量确定总体参数的一个数值。估计的方法有矩法、极大似然法等。(2)区间估计点估计虽然给出了待估参数的一个数值,却没有告诉我们这个估计值的精度和可信程度。一般地,对于服从正态分布的总体,待估参数记作(如2,),对于给定的(10,0,0,21时,令tail=1;1H为0 x=159 280 101 212 224 379 179
14、264 222 362 168 250 149 260 485 170;h,p,ci=ttest(x,225,0.05,1)h=0p=0.2570ci=198.2321Infh=0,p=0.2570,说明在显著水平为0.05的情况下,不能拒绝原假设,认为元件的平均寿命不大于225小时。例11 在平炉上进行一项试验以确定改变操作方法的建议是否会增加钢的得率,试验是在同一平炉上进行的。每炼一炉钢时除操作方法外,其它条件都可能做到相同。先用标准方法炼一炉,然后用建议的新方法炼一炉,以后交换进行,各炼了10炉,其得率分别为:1标准方法 78.1 72.4 76.2 74.3 77.4 78.4 76.
15、0 75.6 76.7 77.32新方法 79.1 81.0 77.3 79.1 80.0 79.1 79.1 77.3 80.2 82.1设这两个样本相互独立且服从标准差相同的正态分布,问建议的新方法能否提高得率?(取9=0.05。)解 需要检验:0H:21=,1H:21 时接受原假设,即认为因素A对指标有无显著影响。另外,该命令还给出一个标准的方差分析表和一个盒子图。例13 用4种工艺生产灯泡,从各种工艺制成的灯泡中各抽出了若干个测量其寿命,结果如下表,试推断这几种工艺制成的灯泡寿命是否有显著差异。序号工艺12345A116201580146015001670A21600154015501
16、700A3164016201610175011A4172016801800解:在 MATLAB 命令窗口中输入:x=1620 1580 1460 1500 1670 1600 1540 1550 1700 1640 1620 1610 17501720 1680 1800;g=ones(1,5),2*ones(1,4),3*ones(1,3),4*ones(1,4);p=anova1(x,g)p=0.0149p=0.01491时,输出p还包含另外一个概率值,该p值接近于零(小于0.05)时,认为两个因素交互作用的效应是显著的。例14 下表给出某种化工过程在三种浓度、四种温度水平下得率的数据。假
17、设在诸水平配对下的试验结果如下表所示。试在水平=0.05下,检验在不同浓度(因素A)、不同温度(因素B)下的得率是否有显著差异?交互作用是否显著?浓度(B)温度(A)1024385221110111113910124971087116106511131412131410解:在 MATLAB 命令窗口中输入:x=11 11 13 10;10 11 9 12;9 10 7 6;7 8 11 10;5 13 12 14;11 14 13 10;p=anova2(x,2)p=0.31040.04190.7010p=0.3104 0.0419 0.701。即认为温度因素不显著、而浓度因素有显著差异,交互
18、作用不显著。双因素方差分析表13五、回归分析五、回归分析变量间的关系有两类:一类可用函数关系表示,称之为确定性关系;另一类关系不能用函数来表示,称为相关关系。具有相关关系的变量虽然不具有确定的函数关系,但可以借助函数关系来表示它们之间的统计规律。回归分析方法是处理变量之间相关关系的一种统计方法,它不仅提供建立变量间关系的数学表达式经验公式,而且利用概率统计知识进行了分析讨论,从而判断经验公式的正确性。回归分析主要解决以下几方面的问题:(1)确定几个特定变量之间是否存在相关关系,如果存在的话,找出它们之间合适的数学表达式(2)根据一个或几个变量的值,预报或控制另一个变量的取值,并且要知道这种预报
19、或控制的精确度(3)进行因素分析,确定因素的主次以及因素之间的相互关系等等5.15.15.15.1 一元线性回归一元线性回归5.1.15.1.15.1.15.1.1 一元回归线性模型一元回归线性模型+=xY10,()2,0N(9.1)其中10,为未知参数。利用不完全相同的nxxx,21对随机变量Y作n次观测可以得到 n 对数据()()()nnyxyxyx,2211,代入模型(9.1)可得:iiixy+=10,()2,0Ni令xY10+=,称为Y关于x的线性回归方程或经验公式,其图像称为回归直线。10,为参数10,的估计。由回归方程,对每一个ix,可以确定一个回归值,iixy10+=。回归值iy
20、与实际观测值iy之差称为残差,它反映了所有观测值与回归直线的偏离度。我们可以利用它来确定10,。5.1.25.1.25.1.25.1.2 最小二乘估计最小二乘估计所谓的最小二乘法,就是寻求10,的估计10,,使残差平方和()()=niiixyQ121010,(9.2)14达到最小值。利用微分方法可得:=0)(20)(211011100niiiiniiixxyQxyQ=+=+=niiiniiyxxxnynxnn1112010)((9.3)解上述方程可得:=101xyllxxxy(9.4)其中,21212)(xnxxxlniiniixx=,yxnyxyyxxlniiiniiixy=11)((9.4
21、)式称为10,的最小二乘估计。5.1.35.1.35.1.35.1.3 回归系数的假设检验和置信区间回归系数的假设检验和置信区间回归系数的假设检验上述讨论是在线性假设的前提下进行的,为了判断Y与x之间是否存在线性关系,还需要作如下的假设检验:0:10=H,0:11H记=niiyyyyl12)(,xxxyniillyyU212)(=,yylQU=+。F 检验法:当H0为真时,选取统计量()2.1(2=nFnQUF。给定显著性水平为a,其拒绝域为:)2,1(1nFF。若拒绝H0,即认为本Y与x之间存在线性关系,则还需计算1的置信区间。记22nQ为剩余标准差,有)2(11ntlxx)(。所以,1的置
22、信度为1-a的双侧置信区间为:+xxxxlntlnt)2(,)2(211211(9.5)155.1.45.1.45.1.45.1.4 预测和控制预测和控制若Y与x有显著的线性关系,当x=x0时,可以利用回归方程预测Y=Y0。在显著性水平a下Y0的预测区间为:+)2(,)2(210210dntydnty,其中,()xxlxxnd2011+=。当 n 较大时,预测区间可近似取作:+,210210uyuy(9.6)控制是预测问题的反问题,即如果要求Y落在某一指定区间ULyy,内,变量x应控制在什么区间内?当 n 较大时,可以从方程+=+=21102110uxyuxyUL(9.7)中解出Lx和Ux,即
23、得x控制区间为ULxx,。由上式知:要实现控制,还须要求区间ULyy,的长度大于区间221u。5.25.25.25.2 多元线性回归多元线性回归5.2.15.2.15.2.15.2.1 多元回归线性模型多元回归线性模型当一个随机变量与多个随机变量存在相关关系时,可以采用多元回归分析的方法来建模。多元线性回归的数学模型:+=mmxxxY22110,()2,0N(9.8)记 n 组样本数据为()niyxxxiimii,2,1,21=,则有+=+=+=nnmmnnnmmmmxxxyxxxyxxxy2211022222211021112211101(9.9)其中()niNi,2,1,02=。16将上述
24、方程组写成矩阵方程形式:+=Xy,其中:=nyyyy21,=nmnmmxxxxxxX1221111111,=n21,=n21。5.2.25.2.25.2.25.2.2 最小二乘估计最小二乘估计同一元线性回归的最小二乘估计法类似,首先定义残差平方和:()()()XyXyQT=(9.10)令0,0,010=mQQQ,可得()YXXXTT1=(9.11)即得所求的回归方程为:mmxxxY22110+=。5.35.35.35.3 最优逐步线性回归最优逐步线性回归在多元线性回归分析中,当经过检验,若0=i为显著,说明变量ix不起作用,要从方程中剔除出去,一切都要从头算起,很麻烦。这里介绍的方法是先对变量
25、mxxx,21逐个检验,确认它们在方程中的作用的显著程度,然后依大到小逐次引入变量到方程,并及时进行检验,去掉作用不显著的变量,依次进行,直到不能引入和移出为止,这个方法称为最优逐步回归法。5.45.45.45.4 非线性回归非线性回归5.4.15.4.15.4.15.4.1 多项式回归多项式回归多项式回归本质上仍然属于多元线性回归,也可分为一元多项式回归和多元多项式回归两种,其中,在实际应用中,最常用的多元多项式回归是多元二项式回归,下面我们只简单的介绍他们的数学模型,参数估计可以参考前面的最小二乘估计。一元多项式回归的数学模型为:+=ppxxxY2210(9.12)多元二项式回归的数学模型
26、为:17+=mjijiijmmxxxxxY,122110(9.13)5.4.25.4.25.4.25.4.2 非线性回归非线性回归上述回归分析都有一个共同特点:Y与未知参数之间均为线性关系,所以,参数估计均可以采用线性最小二乘估计法。一般的非线性回归数学模型为:()+=kmxxxfY,2121(9.14)其中f对参数k,21是非线性的。此时,参数估计须采用非线性最小二乘估计。5.4.35.4.35.4.35.4.3 一些特殊的非线性回归一些特殊的非线性回归下面我们介绍一些可以通过变量代换,化为线性回归的非线性回归类型,其参数亦可通过线性最小二乘法来确定。具体见下表:非线性回归模型变换公式变换后
27、的模型xY101+=YU1=,xv1=vU10+=10 xY=YUln=,xvln=vU10+=()00ln=xYln10+=YU=,xvln=vU10+=xeY10=YUln=,xv=vU10+=()00ln=()xeY+=101YU1=,xev=vU10+=5.55.55.55.5 回归分析的回归分析的 MatlabMatlabMatlabMatlab 实现实现5.5.15.5.15.5.15.5.1 多元线性回归的多元线性回归的 MatlabMatlabMatlabMatlab 实现实现Matlab统计工具箱用命令regress实现多元线性回归,用的方法是最小二乘法,其MATLAB命令为
28、:b,bint,r,rint,stats=regress(y,x,alpha)b,bint,r,rint,stats=regress(y,x,alpha)其中 y,x为输入数据,alpha是显著性水平(缺省值为0.05),输出b为回归系数估计值,bint是的置信区间,r是残差向量,rint是r的置信区间,stats中包含了三个检验量:决18定系数2R,F值和p值。它们的用法如下:2R值反映了变量间的线性相关的程度,2R越接近1,则变量间的线性关系越强;如果满足()FnF2,11,同样可以认为Y与x显著地有线性关系;若p,则线性模型可用。残差及其置信区间还可以用rcoplot(r,rint)画图
29、。若某个数据的残差置信区间不包含零点,则该数据可视为异常点,通常可将其剔除后重新计算。例 15 某饮料公司发现饮料的销售量与气温之间存在着相关关系,即气温越高,人们对饮料的需求量越大。下表记录了饮料销售量和气温的观察数据:气温x(度)3021354237208173525销量y(箱)430335520490470210195270400480试建立销售量与气温之间的关系。解:首先画出散点图,从图形可以看出,这些点大致分布在一条直线上,所以,可以考虑一元线性回归。01020304050100200300400500600 xy散点图在MATLAB命令窗口中输入:x=30 21 35 42 37
30、20 8 17 35 25;y=430 335 520 490 470 210 195 270 400 480;plot(x,y,o)X=ones(10,1),x;b bint r rint s=regress(y,X,0.05)b=117.07029.7381bint=-19.0529253.19325.013814.462519p=s(3)p=0.0014p=0.00140.05,说明模型成立,即气温x与饮料销售量Y有显著的线性关系。接下来画残差分布图rcoplot(r,rint)12345678910-200-150-100-50050100150200Residual Case Ord
31、er PlotResidualsCase Number残差分布图由残差分布图可知,除第10个数据外其余残差的置信区间均包含零点。因此,第10个点应视为异常点,将其剔除后重新计算,可得x=30 21 35 42 37 20 8 17 35;y=430 335 520 490 470 210 195 270 400;X=ones(9,1),x;b bint r rint s=regress(y,X,0.05);b=96.621610.0017bint=-13.8604207.10376.218813.7845p=s(3)p=4.2334e-004p值小于原模型的p值,所以应该用修改后的模型。5.5
32、.25.5.25.5.25.5.2 多项式回归的多项式回归的 MATLABMATLABMATLABMATLAB 实现实现20一元多项式回归的MATLAB命令为:p,s=ployfit(x,y,n)p,s=ployfit(x,y,n)其中输入x,y是样本数据,n表示多项式的阶数,输出p是回归多项式的系数,s是一个数据结构,可用于其他函数的计算,比如,y delta=polyconf(p,x0,s)可用于计算x0处的预测值y及其置信区间的半径delta。一元多项式回归还可以采用如下命令:polytool(x,y,n,alpha)polytool(x,y,n,alpha)该命令输出一个交互式画面,画
33、面显示回归曲线及其置信区间,通过图左下方的export下拉式菜单,还可以得到回归系数的估计值及其置信区间、残差等。还可以在正下方左边的窗口中输入x,即可在右边窗口得到预测值y及其对应的置信区间。例15 将17至29岁的运动员每两岁一组分为7组,每组两人测量其旋转定向能力,以考察年龄对这种运动能力的影响。现得到一组数据如下表:年龄17192123252729第一人20.4825.1326.1530.026.120.319.35第二人24.3528.1126.331.426.9225.721.3试建立二者之间的关系。解 数据的散点图(略)明显地呈现两端低中间高的形状,所以应拟合一条二次曲线。x=1
34、7:2:29;X=x,x;y=20.48 25.13 26.15 30.0 26.1 20.3 19.35 24.35 28.11 26.3 31.4 26.9225.7 21.3;p,s=polyfit(X,y,2)p=-0.20038.9782-72.2150即所求的回归模型为:215.729782.82003.02+=xxY下面的命令给出了年龄为26岁时的预测值及其置信区间的半径。x0=26;y0,delta=polyconf(p,x0,s)y0=25.8073delta=5.090221若采用命令polytool(X,y,2),则可得到一个如下图所示的交互式画面,其中实曲线为拟合曲线,
35、它两侧的虚线是y的置信区间。点击左下方的Export按钮,可以在MATLAB的工作空间中得到回归系数等。1820222426281015202530355.5.35.5.35.5.35.5.3 多元二项式回归的多元二项式回归的 MATLABMATLABMATLABMATLAB 实现实现MATLAB中提供了一个作多元二项式回归的命令rstool,同命令polytool类似也可产生一个交互式画面,并输出有关信息,用法是rstool(x,y,model,alpha)rstool(x,y,model,alpha)其中输入数据x,y分别为n m矩阵和n维向量,alpha为显著性水平a (缺省时设定为0.
36、05),model对应4个模型(用字符串输入,缺省时设定为线性模型),分别为:linear(只包含线性项);purequadratic(包含线性项和纯二次项);interaction(包含线性项和纯交叉项);quadratic(包含线性项和完全二次项)。例16 对下面这组数据采用多元二项式回归确定它们之间的关系:x1120140190130155175125145180150 x210011090150210150250270300250y10210012077469326696585解:在MATLAB命令窗口中输入x1=120 140 190 130 155 175 125 145 180
37、150;x2=100 110 90 150 210 150 250 270 300 250;y=102 100 120 77 46 93 26 69 65 85;22x=x1 x2;rstool(x,y,quadratic)得到一个如下图所示的交互式画面。130140150160170180-150-100-50050100150200250300150200250通过按钮Export向Matlab工作区传送:beta(回归系数),rmse(剩余标准差)和residuals(残差)等数据。可得:beta=-307.3600 7.2032-1.7374 0.0001-0.0226 0.0037r
38、mse=18.6064对应的回归模型为:222121210037.00226.00001.07374.12032.736.307xxxxxxY+=利用图左下方的下拉式菜单,选择不同的模型并通过按钮Export向Matlab工作区传送数据,就可以比较它们的剩余标准差,会发现模型(purequadratic)的rmse=16.6436最小,对应的回归模型为:2221210037.00228.07337.127.7587.312xxxxY+=5.5.45.5.45.5.45.5.4 非线性回归的非线性回归的 MatlabMatlabMatlabMatlab 实现实现Matlab提供的非线性回归命令有
39、:nlinfit,nlparci,nlpredci,nlintool。它们的具体用法如下:b,R,J=nlinfit(x,y,b,R,J=nlinfit(x,y,modelmodel,b0),b0)其中输入数据x,y分别为n m矩阵和n维向量。Model是事先用M文件定义的非线性函数,其形式为(),xfy=,为待估参数。b0是的初值。输出b是的估计值,R是残差,J23是用于估计误差的Jacobi矩阵。进一步,将以上输出代入命令bi=nlparci(b,R,J)可得的置信区间bi。若代入命令y0 delta=nlpredci(model,x0,b,R,J)则可得回归函数在x0处的预测值y0及其置
40、信区间。命令nlintool可产生一个交互式画面,并输出有关信息,用法是:nlintool(x,y,nlintool(x,y,modelmodel ,b0,alpha),b0,alpha)例17 在工程中希望建立一种能由混凝土的抗压强度x推算抗剪强度y的经验公式,下表中给出了现有9对数据。试分别按以下三种形式建立y对x的回归方程,并从中选出最优模型。(1)xbay+=(2)xbayln+=(3)bcxy=x141152168182195204223254277y23.124.227.227.828.731.432.534.836.2解:首先对每个回归方程建立相应的M文件如下:f1.m:func
41、tion y=f1(beta,x);y=beta(1)+beta(2)*sqrt(x);f2.m:function y=f2(beta,x);y=beta(1)+beta(2)*log(x);f3.m:function y=f3(beta,x);y=beta(1)*x.beta(2);然后,用nlinfit计算回归系数x=141 152 168 182 195 204 223 254 277;y=23.1 24.2 27.2 27.8 28.7 31.4 32.5 34.8 36.2;b0=1,2;b1,r1,j1=nlinfit(x,y,f1,b0)b1=-9.88062.8068r1=-0
42、.3483-0.52400.7003-0.1852-0.61421.19150.4661-0.0524-0.6338b2,r2,j2=nlinfit(x,y,f2,b0)24b2=-75.284419.8789r2=0.0083-0.38500.6254-0.3657-0.83720.96580.29550.0081-0.3151b3,r3,j3=nlinfit(x,y,f3,b0)b3=0.89630.6610r3=-0.5071-0.60880.6945-0.1455-0.54941.26510.5381-0.0334-0.6875通过比较三个模型的残差和可得:sum(r2)sum(r1)
43、212211,GxdGxdGxGxdGxdGx(9.16)即当x到1G的马氏距离不超过到2G的马氏距离时,判x来自1G;反之,判x来自2G。若=21,则有()()()()()()2121112212,=xxxxGxdGxdTT()()21121212+=Tx定义一个新的函数()()()2112121+=TxxW(9.17)则判别准则可简化为()()0W,0W,21xGxxGx若若(9.18)上述推导中均要求总体的数学期望和协方差矩阵是已知的。但通常情况下和均可能未知。此时,就需要根据数据资料(训练样本)对和做出估计。设总体1G,2G服从正态分布,21,和21,均未知且=21。从两个总体分别抽取
44、容量为1n和2n的 两 个 样 本,每 个 子 样 皆 是 p 维 向 量。记 总 体1G的 训 练 样 本 为()()()112111,nxxx,总体2G的训练样本为()()()222212,nxxx。要以训练样本估计21,和,其估计量分别为:()=111111niixn,()=212221niixn,()()()()()()()()+=2112222111112121niTiiniTiixxxxnn此时判别函数为:29()()()2112121+=TxxW(9.19)对应的判别准则为:()()0W,0W,21xGxxGx若若(9.20)6.2.26.2.26.2.26.2.2 判别误差判别
45、误差当一个判别准则提出以后,还要研究其优良性。通常可以采用误判率作为衡量一个判别准则好坏的标准。要精确的计算误判率,需要知道总体的分布。但在实际应用中,总体的分布往往是不知道,只能通过训练样本对其作出估计。下面以两个总体为例介绍以训练样本为基础的用回代法估计误判率的方法。将全体训练样本作为新样品,逐个回代已建立的判别准则中判别归属,这个过程称为回判。记属于1G的样品被正确判为1G的个数为11n;属于1G的样品被错判为2G的个数为12n;属于2G的样品被正确判为2G的个数为22n;属于2G的样品被错判为1G的个数为21n。则误判率的回代估计为:nnna2112+=。其中22211211nnnnn
46、+=。a作为真实误判率的估计常常比真实误判率小,但可以作为真实误判率的一种估计。6.36.36.36.3 FisherFisherFisherFisher 判别和判别和 BayesBayesBayesBayes 判别简介判别简介Fisher 判别法通常采用线性判别函数()xaxWT=。它的基本思想是利用投影,将 k组 p 维数据投影到某一方向a,使得它们的投影组尽可能的分开。此类判别函数可以借助方差分析的方法导出。Bayes 判别法是一种概率方法,它的好处是可以充分利用先验信息而且可以使误判概率平均达到最小。但事先需知道总体的分布,且在作判别之前能够确定待判别对象属于某一类的概率。6.46.4
47、6.46.4 判别分析得判别分析得 MATLABMATLABMATLABMATLAB 实现实现用作判别分析的 Matlab 命令是 classify,其调用格式为:class,err=classify(sample,training,group,typeclass,err=classify(sample,training,group,type,prior)prior)其中输入 training 是一个pn矩阵代表训练样本数据;sample 是一个pm矩阵代表待判样品数据;group 是一个n维列向量,每个分量代表对应的训练样本数据所在的类。Type30代表分类方法,有三种选择:linear(缺
48、省设置)代表线性判别分析法,quadratic 代表二次判别分析法,mahalanobis代表使用马氏距离进行判别分析。输出 class 代表待判样品的分类结果;err 表示误判率的估计。例 19 从健康人群、硬化症患者和冠心病患者分别随机选取 10 人,6 人和 4 人考察了各自心电图的 5 个不同指标(记作521,xxx),试对两个待判样品做出判断。序号类型1x2x3x4x5x118.11261.0113.235.467.36219.36185.399.025.665.99319.85249.5815.616.066.11412.55137.139.216.114.35516.01231.
49、3414.275.218.79619.46231.3813.034.888.53714.11260.2514.725.3610.02818.90259.5114.164.919.79917.71273.8416.015.158.791017.51303.5919.145.78.531126.8308.915.115.528.491228.68258.6914.024.797.161325.67355.5415.134.979.431428.1476.697.385.3211.321523.71316.1217.126.048.171625.37274.5716.754.989.671735.2
50、2330.3418.194.969.611834.71331.4721.264.313.721934.71352.520.795.07112033.36347.3117.94.6511.19样品 18.06231.0314.415.726.15样品 29.89409.4219.475.1910.4931解:在MATLAB命令窗口中输入training=8.11 261.01 13.23 5.46 7.36;9.36 185.39 9.02 5.66 5.99;9.85249.58 15.61 6.06 6.11;2.55 137.13 9.21 6.11 4.35;6.01 231.34 14