SAS学习系列25非线性回归.docx

上传人:b****1 文档编号:2800577 上传时间:2023-05-04 格式:DOCX 页数:22 大小:111.37KB
下载 相关 举报
SAS学习系列25非线性回归.docx_第1页
第1页 / 共22页
SAS学习系列25非线性回归.docx_第2页
第2页 / 共22页
SAS学习系列25非线性回归.docx_第3页
第3页 / 共22页
SAS学习系列25非线性回归.docx_第4页
第4页 / 共22页
SAS学习系列25非线性回归.docx_第5页
第5页 / 共22页
SAS学习系列25非线性回归.docx_第6页
第6页 / 共22页
SAS学习系列25非线性回归.docx_第7页
第7页 / 共22页
SAS学习系列25非线性回归.docx_第8页
第8页 / 共22页
SAS学习系列25非线性回归.docx_第9页
第9页 / 共22页
SAS学习系列25非线性回归.docx_第10页
第10页 / 共22页
SAS学习系列25非线性回归.docx_第11页
第11页 / 共22页
SAS学习系列25非线性回归.docx_第12页
第12页 / 共22页
SAS学习系列25非线性回归.docx_第13页
第13页 / 共22页
SAS学习系列25非线性回归.docx_第14页
第14页 / 共22页
SAS学习系列25非线性回归.docx_第15页
第15页 / 共22页
SAS学习系列25非线性回归.docx_第16页
第16页 / 共22页
SAS学习系列25非线性回归.docx_第17页
第17页 / 共22页
SAS学习系列25非线性回归.docx_第18页
第18页 / 共22页
SAS学习系列25非线性回归.docx_第19页
第19页 / 共22页
SAS学习系列25非线性回归.docx_第20页
第20页 / 共22页
亲,该文档总共22页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

SAS学习系列25非线性回归.docx

《SAS学习系列25非线性回归.docx》由会员分享,可在线阅读,更多相关《SAS学习系列25非线性回归.docx(22页珍藏版)》请在冰点文库上搜索。

SAS学习系列25非线性回归.docx

SAS学习系列25非线性回归

25.非线性回归

现实世界中严格的线性模型并不多见,它们或多或少都带有某种程度的近似;在不少情况下,非线性模型可能更加符合实际。

对变量间非线性相关问题的曲线拟合,处理的方法主要有:

(1)首先确定非线性模型的函数类型,对于其中可线性化问题则通过变量变换将其线性化,从而归结为前面的多元线性回归问题来解决;

(2)若实际问题的曲线类型不易确定时,由于任意曲线皆可由多项式来逼近,故常可用多项式回归来拟合曲线;

(3)若变量间非线性关系式已知(多数未知),且难以用变量变换法将其线性化,则进行数值迭代的非线性回归分析。

(一)可变换为线性的非线性回归

表1典型的函数及线性化方法'

1b

—=盘亠一卫

yt

I1

V=—U=—&

VX

b

y=axa

v-Inym二In耳』

崔数巒数•

y1-q严*

v-Inyn=x

y-ae卡

V二111J川二丄。

X

対数函議

F二“+占bn

v=yu-Inx*-

S型蚩竝H

1

y*.

1-r

V——li*

y

在很多场合,可以对非线性模型进行线性化处理,尤其是可变换为线性的非线性回归,运用最小二乘法进行推断,对线性化后的线性模型,可以应用REG过程步进行计算。

例1有实验数据如下:

X

1.1

1.2

1.3

1.4

1.5

1.6

1.7

1.8

1.9

2

2.1

2.2

2.3

2.4

Y

109.95

40.45:

!

0.092

4.531

1.027.

394J

)52.7

21.8

214

)0.82

:

0.30

).20

.22

试分别采用指数回归(y二aebx)方法进行回归分析

代码:

data

exam25_1;

input

xy;

cards;

1.1

109.95

1.2

40.45

1.3

20.09

1.4

24.53

1.5

11.02

1.6

7.39

1.7

4.95

1.8

2.72

1.9

1.82

2

1.49

2.1

0.82

2.2

0.3

2.3

0.2

2.4

0.22

run;

procsgplotdata=exam25_1;scatterx=xy=y;

run;

proccorrdata=exam25_1;

varxy;

run;

datanew1;

setexam25_1;

v=log(y);

run;

procsgplotdata=new1;

scatterx=xy=v;

title'变量代换后数据';

run;

procregdata=newl;

varxv;

modelv=x;

printcli;

title'残差图';

plotresidual.*predicted.;

run;

datanew2;

setexam25_1;

y1=14530.28*exp(-4.73895*x);run;

procgplotdata=new2;

ploty*x=1y1*x=2/overlay;symbolv=doti=nonecv=red;symbol2i=smcolor=blue;

title'指数回归图';

run;

运行结果:

CURR过程

简单统计帛

N

均值

标准差

总和

虽小值

最大值

X

I4

1.75000

041833

2450000

L10000

2.40000

y

11

16.13929

294SD37

225KOOO

0.20000

103.95000

Pearson相关系数.N=14

Prob>|r|underHU:

Rho-0

K

X

y

L00000

-0.71104

0.0044

y

-0.71104

1(KMX)

0.(JIM4

變氏代欣石靶I!

 

读取的观测数

14

便用的观测数

M

 

方差分析

自由度

平方

均方

F值

Pr>r

1

^)1.09106

51O910fi

75631

误差

12

O.81OC3

0.06J55

校正合计

13

51.90170

均方犠谍差

0.25S91

R方

09E44

因变量均値

1.29084

调整R方

0.9(831

鉴异系数

2U1349B

 

彗数怙计値

变早

自由度

怙计值

标准误差

t值

Pr>|t|

1ntercept

1

9.56399

0.30<*45

30.07

<.000II

X

1

-4./s«a&

D.17232

-2J.5D

<.0001

输岀统计星

观测

因变早

预测值

标准渎走均值预测

95%CL

预测

残差

1

4.7000

4.3712

0.1313

373C2

5.0061

0.3289

2

3./(Wl

3.89/3

0.11/b

3.2/feU

4.siin

-0L1S72

3

3.0002

Z4234

0.1041

2.S133

4.0334

-0.4231

工丨泗

2.9495

0.M20

23487

3.5502

0.2504

5

2.3997

2.4756

o.oen

1B819

it.392

0.0759

6

2.0001

20017

0.0741

14120

2.5905

-0.0DI549

7

1.5994

1.52/8

0.D/00

09413

2.1143

0LU716

8

1,0006

1.0533

0.0700

0.W4

1.C40d

-0.0533

9

0.5908

0.5Q00

0.0741

-».009876

L1609

0.0180

10

d3938

0.llXil

0.0917

-0.4575

0.6S97

0.2购7

11

-0.1905

-0.3S7G

0.0920

-09886

0.2323

0.1693

12

-1.2040

•0.8+1/

0.1041

14517

-0.2311

0l3(523

13

-1.609-1

-1.3150

0.1175

-19371

-0.G941

-0.2S39

14

-1.5141

-1.7035

0.1318

•2.42彳4

-L1545

0.2754

H

1*

D.■罪

Ad^FEOnbsi

n.ait

■报台ST的V

•ftr

霜暑口田念12NSJFDOB?

*

R方D

鼻整覽力i0WJ1

I;台□SBt■JUHw列羽

程序说明:

(1)调整后的R2=0.9831,说明拟合程度很好;F检验的P值=O.OOO1Va=0.05,拒绝原假设,故直线回归的斜率不为0;

(2)将线性回归系数代入,得到原回归方程

y=14530.28*e-4.73895x

(3)残差图趋势,符合残差随机正态分布的假设(不带其它明显趋势)。

、多项式回归

一般函数都可用多项式来逼近,故多项式回归分析可用来处理相当广泛的非线性问题。

对观测数据(Xt,yt),t=1,…,N.多项式回归模型为:

yt=%++方…+b玳x;+令*尸12…皿|令

]勺£-*■

_£11

Y=\

1$Xy…

jB=

r£二

」x.vx.v"

爭N.

则模型可写为:

Y二XB+£

当X列满秩时,用最小二乘估计B=XX"XY可求得其多项式回归方程。

但由于XX」的计算既复杂又不稳定,故一般采用正交多项式法来进行多项式回归。

多项式模型可以直接应用GLM(广义线性模型)求解。

例2重庆市种畜场奶牛群1—12月份(x1),产犊母牛平均产奶量(y)的资料如程序数据步中,试对该资料配置一个合适的回归方程。

代码:

dataexam25_2;inputx1y@@;x2=x1*x1;

datalines;

13833.43

73476.76

23811.58

83466.22

33769.47

93395.42

43565.74

103807.08

53481.99

113817.03

63372.82

123884.52

run;

procsgplotdata=exam25_2;

scatterx=x1y=y;

title'原始数据散点图';

run;

procregdata=exam25_2;

modely=x1x2;

run;

运行结果:

SQD

3™

阙.

Mir

REG过程

按型:

M0DEL1

因变军:

y

iiffi(的观测数匹

便用的规测数12

方苣分斬

白由度

平方和

均方

F伯

Pr>F

模型

2

332594

16G2S7

16.89

0.000!

误葢

9

83501

93H56254

校正合计

11

4?

1195

 

均方根淒差

9H.21977

R方

0.7895

因变阜均值

3t)4O.Iflt)/

调整R方

0?

429

锂异系数

2.72609

 

参数怙计值

自由度

参数

怙计值

标准误差

t值

Pr>|t|

1nteroepI

1

4117.20136

102.54649

40.15

G000II

xl

1

-204.9366S

36.26837

-5.65

00(X)3

x2

1

1578670

2.71589

5.81

00003

以下列鑫的残弹七回归量:

¥

255D75100125flK5075im1251ITO

X1泛

GLM过程

自由度

平方和

均方

卜慎

丹>卜

2

3325S4.3259

166297.IC30

16.89

0.000(5

g口旦Be差

9

88601.0629

9844.5625

校正合计

11

421I9S.3808

 

Rh

姿异系数

根MSt

*均值

0.7SS644

2.725689

99.21977

3640.172

 

自由度

犁SS

均方

F值

Pr>b

xl

1

1L0050

11.0050

0.00

0.9741

*1*x1

1

332583.3210

332563.3210

33.78

0.0003

 

自由度

111SS

均方

卜值

Pr>卜

xl

1

314325.5414

314325.b4bl

31.93

0.tK)03

x1*x1

1

3325S3.3210

33P583.3210

33,78

0.0003

舂数

估计憤

标准误差

tffi

Pr>|t|

1ntorcnpt

4117,201364

1025464905

4a15

<.0001

x1

-204.936578

3&那£3725

-5.6&

U.0003

x1*x1

15.785599

2,7168077

681

J0003

拟合图y

料匸二1那l^Rl

程序说明:

(1)观察数据的散点图,更适合二次多项式拟合,也可以测试几种不同次数的多项式拟合选择其中最优的;

(2)将回归系数代入多项式方程得到:

y=4117.20136-204.93668x1+15.78570x12

三、不能变换为线性的非线性回归

该类非线性回归分析就是利用最小二乘准则来估计回归系数B,

使得残差平方和最小。

一般来用数值迭代法来进行,先选定回归系数的初值%,按照给定的步长和搜索方向逐步迭代,直到残差平方和达到最小。

有5种常用的非线性回归迭代方法:

高斯-牛顿法

(Gauss-Newton)、最速下降法(梯度法)、牛顿法(Newton)、麦夸特法(Marquardt)、正割法(DUD)。

高斯-牛顿法在初值选取适当,且可逆时非常有效,但在其他情形,其求解较为困难,对此,Marguardt对其中的正则系数阵作适当修正,得到了改进算法。

(二)PROCNLIN过程步

对于不能线性化的非线性模型。

其估计不能直接运用经典的最小二乘法,而需要运用其他估计方法,如加权最小二乘法、直接搜索法、直接最优法与Taylor级数展开法进行线性逼近。

此时,可以利用NLIN过程步实现相应的计算,它是采用最小误差平方法及迭代推测法来建立一个非线性模型,估计参数默认采用高斯-牛顿迭代法NLIN过程不保证一定可以算出符合最小误差平方法之标准的参数估计值。

基本语法:

PROCNLINdata=数据集;

PARMS参数名二数值;

MODEL因变量二表达式;

vOUTPUTout=输出数据集;>

说明:

(1)NLIN的可选项包括:

outest=输出数据集一一输出每步迭代的结果;

best=n只输出最好的n组残差平方和;

method=gauss|marquardt|newton|gradient|dud

|设定参数估计的迭代方法,默认为gauss(没有der.语句);

(2)PARMS语句指定参数并赋值,一般包括参数名、初始值(GridSearch可以帮助选择合适的初始值)、迭代准则;例如:

parmsb0=0b1=1to10b2=1to10by2b3=1,10,100;

(3)bounds语句用于设定参数的约束,主要是不等式约束,约束间用逗号分隔。

例如,boundsa<=20,b>30,1<=c<=10;

(4)der.语句用于计算模型关于各参数的偏导数,相应格式

为:

一阶偏导数:

der.参数名=表达式;

二阶偏导数:

der.参数名.参数名=表达式;

例如,对于模型modely=bO*(1—exp(-b1*x));二阶偏导数表达式:

der.b0.b1二x*exp(-b1*x);

例3根据对已有数据的XY散点图的观察和分析,发现丫随X增长趋势是减缓的,并且Y趋向一个极限值,我们认为用负指数增长曲线来拟合模型较为合适。

代码:

dataexpd;

inputxy@@;

datalines;

0200.570300.720400.810500.870600.910700.94

0800.950900.971000.981100.991201.001300.99

1400.991501.001601.001700.991801.001901.00

2000.992101.00

procnlindata=expdbest=10method=gauss;

parmsb0=0to2by0.5b1=0.01to0.09by0.01;

modely=b0*(1-exp(-b1*x));

der.b0=1-exp(-b1*x);

der.b1=b0*x*exp(-b1*x);

outputout=expoutp=ygs;

run;

goptionsreset=globalgunit=pctcback=whiteborder

htitle=6htext=3ftext=swissbcolors=(back);

procgplotdata=expout;

ploty*xygs*x/haxis=axis1vaxis=axis2overlay;

symbol1i=nonev=pluscv=redh=2.5w=2;

symbol2i=joinv=nonel=1h=2.5w=2;

axislorder=20to210by10;axis2order=0.5to1.1by0.05;

titlel'y=b0*(1-exp(-b1*x)';

title2'procnlinmethod=gauss'

run;

运行结果:

NLIN过稈

网格搜索

b0

bl

平方和

1.(XXX)

0.(M0U

0.00140

1.0000

0.UbOO

0.0168

1.0000

0.0600

0.(Jbb2

1,0000

0,0300

0.0G66

L0000

0C1700

0.0973

1.0000

0.0800

0.1365

1.()000

0.0900

0.17(J«

1.uouo

0.0200

0.4193

t.5000

001OU

0.3767

L0000

00100

2.1553

MLIN过程

因壹帛7

方法:

GauNewton

迭代阶段

送代

bO

bl

乎方和

0

1DQOC

(1.fMOO

0(MH40

1

0.9361

0.D419

a0005&0

2

0.9S62

0.0420

□000577

3

0.9562

0、0420

O000577

4

fl9562

0.0120

a.ODO577

Nl>lE;Uonvergcnceileriunmet.

怙计汇■&

方法

Gfiuss-Newton

迭代

4

R

2.55?

F-7

PPC(bl)

1O2SLS

RPC(bl)

9.394E-7

ObjccL

2.5SE-10

目标

n.000517

读取的观测

20

便用的观测

20

缺失的现测

0

 

HotelAninterceptwasnots

pecHied

forthisnode1L

白由度

平力和

均方

FVa1ue

以F

模樂

2

17.6717

3.8359

275733

<.0001

误差

18

0.000577

C0OC03?

未校正合计

20

17.6723

 

参数

估计值

近似标准淇差

近似直信限

bO

0

Q00161

0A92S

C.

hi

a0420

0.OCO398

O(J411

(J.042S

 

近似相关矩阵

bO

bl

bO

10000000

a5556957

b1

-(LfiS5S9S7

1*(XIOQOOO

y=b0*(1—exp(—b1*x)

pnoenlinmethod=geuiss

程序说明:

5个值,bi取0.01,0.02,…,0.09共9个值,所有可能组合为5X9=45,

选项best=10要求输出残差平方和最小的前10种组合;

(2)最好的迭代初始值为bo=1.0000,b1=0.0400,此时回归

模型残差为ESS=0.00140;从该迭代初始值开始经过4次迭代误差平方和的变化就满足收敛准则(ESS值几乎不变),停止迭代;

(3)高斯-牛顿迭代算法要求给出模型y=b0(1-eTx)对参数b0

和b1的一阶偏导数表达式:

der.语句用来表示上面两个一阶偏导数表达式

(4)output语句输出一个新数据集expout,包括原数据集和非线性回归模型的预测值ygs;gplot过程的主要作用是绘制输出数据集expout中的原始数据的散点图及回归曲线的平滑线;

(5)方差分析表,给出了回归平方和为17.6717,残差平方和为0.000577,总平方和为17.6723.

(6)参数估计表,给出了b0和b1的渐近估计值,得到的非线性回归模型为

y=1.0000000*[1-exp(0.5558957x)]

同时还给出bo和b1参数估计的渐近有效标准差和渐近95%置信区间。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 党团工作 > 党团建设

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2