摘要:选择了4种常用统计分析软件(SAS,SPSS,DPS和FORSTA),从输入和输出两方面,比较了其中非线性回归的用户界面,从迭代方法!收敛标准!参数初始值选择!计算速度和精度等方面分析了其功能,对其特点进行了评价,并提出了使用时应注意的事项,对用户使用非线性回归模型进行数据处理和分析有指导意义. 关键词:非线性回归;统计软件;用户界面;功能分析 中图分类号:TP319 文献标识码:A
1 软件的选择及功能分析 1.1 软件的选择 现选择4种常用的统计分析软件进行分析. SAS(StatisticsAnalysisSystem)由北卡罗来纳大学推出,已被全世界120多个国家和地区的近3万家机构所采用,直接用户则超过3*10^6人,被誉为国际上的标准软件系统. SPSS(StatisticalPackagefortheSocialSciences)是世界上最早的统计分析软件,由美国斯坦福大学研制.分析软件微机版本SPSS/PC+,开创了SPSS微机系列产品的开发方向,使其能很快地应用于自然科学!技术科学!社会科学的各个领域,是世界上应用最广泛的专业统计软件. DPS(DataProcessingSystem)由中国水稻研究所唐启义和浙江大学生命科学学院冯明光编制,内容包括方差分析及实验设计等常用统计方法以及农药毒力测定!品种区试!遗传育种!生存分析等专业性的统计分析方法.DPS集数据全屏幕编辑制表!试验设计及统计分析!多元分析!数值计算以及建立各种数学模型等多项功能为一体,可广泛适用于教学!科研和生产各个领域. FORSTAT是在IBM2PC基础上,加进许多近代统计功能,采用面向对象的程序设计方法和COM(组件对象模型)技术,使用可视化的集成开发环境,研制开发的一个数值分析软件.它内容丰富,不仅包括一般的多元统计!规划!经营管理及决策方法中的主要方法,而且包括具有鲜明行业特色的测树学模块!数量生态学模块!数量遗传学模块等;它方法先进,不仅有经典的计算方法,而且包括遗传算法!模拟退化算法等;它界面友好,不仅可以使用界面操作,而且可以进行编程计算.
1.2 功能分析 1.2.1 迭代方法 SAS中提供了5种迭代方法,它们分别是最速下降法或梯度法(GRADDIENT)!牛顿法(NEWTON)!修正的高斯-牛顿法(GAUSS)!麦夸特法(MARQUARDT)和多元割线法或试位法(DUD).除多元割线法外,其余4种方法都需要由用户直接写出模型关于每个参数的偏导数,牛顿法还需要每个参数的二阶偏导数.
SPSS提供了2种迭代方法,连续2次规划算法和麦夸特法. DPS提供了2种迭代方法,麦夸特法和加速单纯形法. FORSTAT提供了2种迭代方法,麦夸特法和单纯形法.
1.2.2迭代收敛准则 SAS使用残差(SSE)!参数收敛准则或者两者规定收敛的标准,默认值是10-8,可以 通过选项CONVERGEOBJ=c或CONVERGE=c以及CONVEREPARM=c来修改.在一个收敛准则没有满足 前,默认的迭代次数是50,可以通过MAXITER=i来修改. SPSS使用SSE和参数收敛准则两者共同作用来确定收敛的标准,默认值均是10-8,可以通过用户界 面进行修改,但最大值均为10-10.默认的迭代次数为500[6]. DPS使用参数收敛准则来确定收敛的标准.不能指定参数收敛的标准,估计值是10-8.最大的迭代次 数为500. FORSTAT中使用SSE!参数收敛准则!梯度收敛准则3种标准来规定迭代的收敛标准,默认值分别是 10-8,10-4.可以通过用户界面方便地进行修改.最大迭代次数的默认值是10000,可以修改. 1.2.3 参数的初始值 4种软件都需要指定参数的初始值,SAS和FORSTAT还可以进行网格搜索(在一定的区间选择最优的参数组合),这在参数的初始值选择没有经验数据时尤为重要.因为初始值直接影响非线性回归模型的结果,选择不当,可能造成模型不收敛或者是局部最优.网格搜索通常会占用较长的时间.除FORSTAT外,其余3种软件还可以对参数的估计值进行约束. 1.2.4 参数估计准则 FORSTAT可以采用最小二乘法(残差平方和最小)!最小一乘法(绝对残差和最小)和绝对相对误差和最小3种方法中的一种作为参数估计准则,其余3种软件均是使用最小二乘法作为参数估计准则.
2 输入界面的比较 211 SAS界面 SAS没有可视化的用户界面,需要在程序编辑窗口进行编程,进行非线性回归时,需要使用以下的语 句[5]: 必需的语句 PROCNLIN3option4;MODELdependent=expression;PARAMETER|PARMSparameter=value<,,, parameter=value>; 可选择的语句为 BOUNDSexpression<,,,expression>;BYvariables;DER.parameter=expression;DER.parameter. parameter=expression;IDvariables;OUTPUTOUT=SAS2data2setkeyword=names<,,,keyword=names>; 对于每个被分析的非线性模型,用户必须指定以下各项被估计的参数名和初始值!模型!模型关于每 个参数的偏导数(DUD方法除外)和模型关于每个参数的二阶偏导数(仅对Newton方法). 如:procnlinmethod=MARQUARDT; modely=b1+b2@x1@b3; parmsb1=1 b2=1 b3=1; DER.b1=1;DER.b2=X1@b3;DER.b3=b2@X1@b3@log(X1); 212 SPSS界面 SPSS用户界面比较友好,在菜单Analyze下,单击Regression下的Nonlinear,弹出如下界面(图1):第2期李海奎等:常用统计软件中非线性回归功能的分析与评价203 图1 SPSS界面 Fig11 SPSSinterface 在Dependent下选择一个因变量,在Model Expression中输入模型表达式,再击参数选择项 (Parameters),输入参数的初始值,最后单击即可 运算. 213 DPS界面 DPS的用户界面类似EXCEL,没有单独的非 线性回归选项界面.进行非线性回归时首先要选 择数据块,然后定义公式块,并选中,接着在数学 模型菜单下的/单因变量模型参数估计0中选择相 应的方法,按提示输入参数的初始值即可.在定义 公式块时,数据块中的第一列为X1,第二列为 X2,依次类推,待求参数必须按C1,C2,C3的自然顺序排列.如X4=C1+C2@X1C3合法,而X4=C2+C1@ X1C3则不合法. 214 FORSTAT界面 FORSTAT的非线性回归界面和SPSS类似,在数据窗口的/统计分析0菜单下,选择/非线性回归0,出现 如下的用户界面(图2): 图2 FORSTAT界面 Fig12 FORSTATinterface 输入因变量和模型表达式,程序会自动识别出参数和 自变量,在参数初值表中输入参数的初始值,必要时可以进 行网格搜索确定最佳的参数初值.表达式中可以利用的函 数也已经列出(和SPSS一样),可以绘制估计值图或残差 图,能够选择保存估计值和残差.回归方法的选择可以从选 项中获得. 3 评价与应用 SAS中非线性回归方法齐全,功能完善,计算速度快, 精度高,但SAS系统的开发原来主要是针对大型机,后来 才可以在PC机上运行.用户界面不友好,需要编程来实现各种功能,绘图需要额外的语句.大多数的回归 方法需要用户输入模型对各个参数的偏导数,主要适宜于有良好数学基础和数理统计背景的专业人员 使用. SPSS中非线性回归方法用户界面友好,计算速度快,精度高,但全是英文提示,不能进行网格搜索确 定最佳的初始值组合,没有绘图功能.适宜于有英文基础和本行业专业背景的人员使用. DPS是针对农业试验设计开发的统计分析软件,全过程中文提示,对于非线性回归方法来讲,当数据 量较大时,计算速度慢,精度可以满足用户的要求,无法指定迭代的收敛标准!迭代次数,也无法进行网格 搜索,模型表达式的书写格式固定,不灵活,不能进行图形输出,比较适宜于小批量数据的处理. FORSTAT中的非线性回归,用户界面友好,可以灵活地书写模型表达式,方便地修改迭代的收敛标准 和迭代次数,能够进行网格搜索确定最佳的初始值组合,还可以指定求模型对每个参数的偏导数时的微分 步长,计算速度较快,精度也比DPS高.除了最小二乘法外,还可以选择最小一乘法等两种参数估计准则, 全过程中文提示.不仅适宜于专业人员使用,而且对于一般的用户也能够容易地进行操作. 4 结语 4种统计软件中的非线性回归各有千秋,用户应根据自己的实际情况,有选择性的使用其中的一种或 几种来处理获得的数据,分析其中的相关关系.例如,如果确定的模型的参数初始值没有经验数据,可以选 择SAS或FORSTAT,首先用网格搜索确定较为适宜的初始值;英文基础较差时,可以选择DPS或FOR2 STAT;数据量不大时,DPS也是一个较好的选择. |