非线性回归模型-研究生

Download Report

Transcript 非线性回归模型-研究生

非线性回归模型
汕头大学医学院预防医学教研室
吴库生
概念


非线性回归(nonlinear regression)
是指在因变量与一组自变量之间建立非
线性模型。
这里的“线性”和“非线性”并非指因
变量与自变量之间是直线关系还是曲线
关系,而是指因变量能否表示为自变量
的线性组合。
问题提出



变量变换可以解决一部分曲线拟合的问题,但
是直线回归采用的是最小二乘法,保证变换后
的残差平方和最小,如果变换回原始数值,并不
一定是最优方程
当曲线关系极为复杂时,不可能通过变量变换
转换为直线方程
曲线直线化后仍然采用最小二乘法加以拟合,
对于更复杂的拟合方式无法实现,如最小一乘
法、复杂的加权方法等。
如果条件允许最好采用非线性回
归(Nonlinear Regression)拟合曲
线
注意绘制散点图,并结合专业知
识解释
非线性回归方程
非线性回归与一般线性回归的求解方法不同在
于:
1. 需要给定参数(a、b)的初始值
2. 采用迭代方法,不断更新估计的参数,直至
稳定在某一值为止。
优点:在需要变换Y时,结果更可靠。
缺点:a.计算复杂;b.初始值不适当时,估计不准确.
采用SPSS进行曲线拟合
曲线直线化
Analyze
Regression
Curve Estimation …
可选Power 、Logarithmic、Exponential、
Quadratic、Cubic 等
非线性回归
Analyze
Regression
Nonlinear …
设置模型: Model Expression
参数赋初值:Parameters…
模型入门

非线性回归模型一般可以表示为如下形式:
yi  yˆ  ei  f ( x, )  ei

其中f 为期望函数,该模型的结构和线性回归模
型非常相似,所不同的是期望函数f 可能为任
意形式,在有的情况下甚至于可以没有显示表
达式。
如何估计模型参数



先给出一个表示估计误差的函数(损失函数),
然后使得该函数取值最小化,并求得此时的参
数估计值。
在常用的最小二乘法中,它也是设法找到使得
各数据点离模型回归线纵向距离的平方和达到
最小的估计值(损失函数为残差绝对值平方)。
但此处的模型回归线就是相应的曲线,而不是
线性回归中的直线,或者曲线拟合中变换后的
直线。
估计参数



由于期望函数并非直线,使得模型无法
直接计算出最小二乘估计的参数值,因
此非线性回归模型一般采用高斯—牛顿
法进行参数估计。
泰勒级数展开,反复迭代求解。
基本思路:


首先为所有未知参数指定一个初始值,然后将
原方程按泰勒级数展开,并只取一阶各项作为
线性函数的逼近,其余项均归入误差中;然后
采用最小二乘法对该模型中的参数进行估计;
用参数估计值替代初始值,将方程再次展开,
进行线性化,从而又可以求出一批参数估计值;
如此反复,直至参数估计值收敛为止。
显然,这一方法非常复杂,必须借助计算机完
成。
分析实例 (SPSS)

例:下列数据文件记录
了小鼠的S78-3肉瘤体
积y(cm3)随时间x
(day)的增长规律,试
建立二者之间的回归模
型。
操作过程
Analyze
Regression
Nonlinear Regression
... ...
弹出主对话框
Model Expression: 模型表达式。此模型
至少应包含一个自变量。
必要的时候,模型表达式还可以分区段表
示。每一段模型由一个逻辑表达式定义,
整个模型必须是由几个分段模型的逻辑
表达式组合在一起。例如:
 0 X 0

f (X )  X 0  X  1
 1 X 1

其逻辑表达式为:
( X  0)  0  ( X  0 & X  1)  X  ( X  1) 1


由于逻辑表达式只能是1或0,于是
当X<=0时,结果为
1*0+0*X+0*1=0
当X>0&X<1时,结果为
0*0+1*X+0*1=X
当X>1时, 结果为0*0+0*X+1*1=1
字符串变量也可以用于逻辑表达式,如:
(city=‘New
York’)*costliv+(city=Washington)*0.59*costliv



常用的非线性模型可参考相关书籍。在
模型选择上一定要根据资料的性质而定。
初始值:
确定模型中的参数的初始值是非常重要
的,而且其中有的模型还需要进行参数
约束。
Starting value 的确定



由散点图可见二者之间的关系呈指数函
数趋势,即y=A*eB*x
由原始数据任取两个点(0, 0.0042)和
(45, 7.3461),列方程组
0.0042=A*eB*0
7.3461=A*eB*45
解得A=0.0042, B=0.1659
Loss:损失函数


损失函数在非线性回归中指通过运算使
之最小化的函数。
必要的时候,损失函数还可以分区段表
示。
Constraints:参数约束

针对在得到最终参数值的迭代过程中所
允许的取值范围而言的。
本例基本过程:
Analyze
Regression
Nonlinear
► Dependent: y
► Model Expression: a*Exp (b*x)
► Parameters: a:0.0042/b: 0.1659
输出结果
Iteration Historyb
a
Iteration Number
1.0
1.1
1.2
1.3
2.0
2.1
3.0
3.1
4.0
4.1
5.0
5.1
6.0
6.1
7.0
7.1
8.0
8.1
9.0
9.1
10.0
10.1
10.2
11.0
Res idual
Sum of
Squares
34.691
201.036
35.875
26.034
26.034
24.464
24.464
17.911
17.911
15.778
15.778
13.280
13.280
11.333
11.333
8.561
8.561
7.330
7.330
4.936
4.936
5.072
4.053
4.053
Parameter
A
.004
.034
.009
.007
.007
.011
.011
.014
.014
.020
.020
.025
.025
.037
.037
.048
.048
.071
.071
.095
.095
.141
.117
.117
B
.166
.008
.146
.158
.158
.144
.144
.142
.142
.134
.134
.129
.129
.119
.119
.114
.114
.103
.103
.098
.098
.087
.093
.093
3.1
4.0
4.1
5.0
5.1
6.0
6.1
7.0
7.1
8.0
8.1
9.0
9.1
10.0
10.1
10.2
11.0
11.1
11.2
12.0
12.1
13.0
13.1
14.0
14.1
15.0
15.1
16.0
16.1
17.0
17.1
17.911
17.911
15.778
15.778
13.280
13.280
11.333
11.333
8.561
8.561
7.330
7.330
4.936
4.936
5.072
4.053
4.053
4.258
3.670
3.670
3.584
3.584
3.511
3.511
3.510
3.510
3.510
3.510
3.510
3.510
3.510
.014
.014
.020
.020
.025
.025
.037
.037
.048
.048
.071
.071
.095
.095
.141
.117
.117
.163
.135
.135
.164
.164
.160
.160
.161
.161
.161
.161
.161
.161
.161
.142
.142
.134
.134
.129
.129
.119
.119
.114
.114
.103
.103
.098
.098
.087
.093
.093
.084
.090
.090
.085
.085
.086
.086
.086
.086
.086
.086
.086
.086
.086
Derivatives are calculated numerically.
a. Major iteration number is dis played to the left of
the decimal, and minor iteration number is to the
right of the decimal.
b. Run s topped after 38 model evaluations and 17
derivative evaluations because the relative
reduction between succes sive residual s ums of
s quares is at most SSCON = 1.00E-008.
Parameter Estimates
Parameter
A
B
Estimate
.161
.086
95% Confidence Interval
Lower Bound Upper Bound
.088
.234
.075
.097
Std. Error
.035
.005
Correlations of Parameter Estimates
A
B
A
1.000
-.990
B
-.990
1.000
ANOVAa
Source
Regress ion
Res idual
Uncorrected Total
Corrected Total
Sum of
Squares
201.543
3.510
205.053
108.796
df
2
19
21
20
Mean
Squares
100.771
.185
Dependent variable: ÈâÁöÌå»ý(cm3)
a. R s quared = 1 - (Residual Sum of Squares) /
(Corrected Sum of Squares) = .968.

根据参数估计结果,回归方程为
y=0.161e0.086 x



注意:在方差分析表里,此处的残差均
方不是误差的无偏估计,因此通常所用
的方差分析不能用于非线性回归的假设
检验。
在实际应用中,可根据决定系数大小判
断模型拟合程度
本例R2为0.968说明模型拟合效果很好。
需要说明的是,如果模型拟合的效果很
差,决定系数有可能为负值。


Thank you for attention!
All for today.