返回列表 发帖

Spss电脑实验-第七节(6)时间序列数据的其它非线性回归预测法

Ⅵ. 时间序列数据的其它非线性回归预测法
1. 非线性回归预测的含义
在社会经济生活中,许多事物间的相互影响往往不是线性关系,而是呈非线线性关系,所以要用到非线性回归预测模型。
非线性回归预测模型有很多,前面已经提到过的“11 种常用曲线方程”,其中的除“直线回归方程(LIN)”外的对数曲线方程(LOG)、反函数曲线方程(INV)、二次曲线(抛物线)方程(QUA)、三次曲线方程(CUB)、复合曲线方程(COM)、幂函数曲线方程(POW)、S 形曲线方程(S)、生长曲线方程(GRO)、指数曲线方程(EXP)与logistic 曲线方程(LGS)等均为非线性回归方程。当然还有双曲线回归方程、超指数曲线方程等许多非线性回归方程,可用于预测预报。这里再举两个非线性回归方程用于预测预报的例子。
2. 非线性回归方程的拟合与预测方法
例1:指数曲线方程用于预测。指数曲线方程为:y = b0 eb1 x 或y = b0*(e**(b1*x))。
估计得 b0 与 b1 即可得指数曲线方程。
某产品价格(x)与销售量(万件y)间的关系,9年来统计数据见下表第(2)、(3)列。
表 7-5 某产品的价格与销售量的关系
----------------------------------------------------------------------
年序 价格(x) 销售量(y) 预测值(Ey1) 
(1) (2) (3) (4)
-----------------------------------------------------------------------
1 3.5 0.6 0.60
2 3.0 0.7 0.70
3 2.5 0.8 0.80
4 2.3 1.1 1.10
5 1.9 1.5 1.50
6 1.7 2.0 2.00
7 1.3 2.3 2.30
8 1.0 3.0 3.00
9 0.9 3.3 3.30
------------------------------------------------------------------------

当该产品的价格(x)降至 0.8元时,估计的销售量是多少?
我们可用曲线拟合命令“CURVEFIT”来产生指数曲线方程。
此命令产生的过程是:Analyze → Regression → Curve Estimation → 将 Y 选入右侧的Dependent(s) 窗中 →将 x 选入右侧的 Independent 窗中(这时默认的拟合模型为直线回归方程 Linear)→ 把 Models 中的 Exponential (指数曲线)勾选 → 击右下方的 Save钮 → 将新出现的小窗 Save Variables 中的 Predicted Values、 Residuals 与Prediction Intervals 全勾选 → Continue → Paste →出现 CURVEFIT 命令。
2.1 第(1)种方法用 CURVEFIT命令:运算后会输出待解参数 b0 与 b1。
可见 b0 = 5.8745, b1 = -0.7020。即可写出如下指数曲线方程:
y = 5.8745 ×e (-0.7020× x)
当该产品的价格(x)降至 0.8元时,估计的销售量:
y = 5.8745 × e (-0.7020× 0.8) = 3.35 万件。
最后自动输出了指数曲线的拟合图形。
所用的程序文件为 NLR-Pred.sps 的例 *1。
* Some examples for NLR prediction; Filename: NLR-Pred.sps.
*---------------------------------------------------------------------------.
*1. From Wang Xian-Yu: Market Survey and the Prediction, P.178:.
DATA LIST FREE /x y.
BEGIN DATA.
3.5 0.6 3.0 0.7 2.5 0.8 2.3 1.1 1.9 1.5 1.7 2.0 1.3 2.3 1.0 3.0 0.9 3.3
END DATA.
* (1) Using Curve Estimation:.
CURVEFIT /VARIABLES=y WITH x
/CONSTANT
/MODEL=EXPONENTIAL
/PLOT=FIT
/CIN=95
/SAVE=PRED RESID CIN.
*(2) Using Linear Regression Model:.
COMPUTE LNy=LN(y).
REGRESSION VARIABLES=x LNy
/DEPENDENT=LNy
/METHOD=ENTER x
/CASEWISE=ALL.
COMPUTE Ey1 = EXP(LNy).
LIST VARIABLES=x y Ey1 /CASES=FROM 1 TO 9.

*So getting b0 = 1.771, b1 = -0.702:.
COMPUTE Ey1=EXP(1.771 - 0.702 * x).
LIST VARIABLES=x y Ey1 /FORMAT=NUMBERED /CASES=FROM 1 TO 9.
GRAPH /LINE(MULTIPLE)=VALUE(y, Ey1) BY x.

*(3) Using NLR commands:.
MODEL PROGRAM b0=1 b1=1.
COMPUTE LNy2=b0+b1*x.
NLR LNy /PRED=LNy2 /SAVE=PRED.
*So getting b0=1.770616436, b1= -.702034569:.
COMPUTE Ey2=EXP(1.770616436 -.702034569 * x).

LIST VARIABLES=x y Ey2 /FORMAT=NUMBERED /CASES=FROM 1 TO 9.
GRAPH /LINE(MULTIPLE)=VALUE(y, Ey2) BY x.
*------------------------------------------------------------------------------.
Independent: X
-------------------------------------------------------------------------------
Dependent Mth Rsq d.f. F Sigf b0 b1
-------------------------------------------------------------------------------
Y EXP 0.966 7 198.65 0.000 5.8745 -0.7020
-------------------------------------------------------------------------------

The following new variables are being created:
-------------------------------------------------------------------------------
Name Label
-------------------------------------------------------------------------------
FIT_1 Fit for Y with X from CURVEFIT, MOD_1 EXPONENTIAL
ERR_1 Error for Y with X from CURVEFIT, MOD_1 EXPONENTIAL
LCL_1 95% LCL for Y with X from CURVEFIT, MOD_1 EXPONENTIAL
UCL_1 95% UCL for Y with X from CURVEFIT, MOD_1 EXPONENTIAL
-------------------------------------------------------------------------------

2.2 第(2)种方法用 REGRESSION命令:
由于指数曲线方程可表示为:Y = b0 eb1 x 或 Y = b0*(e**(b1*x))
令 ln (Y) = Y', ln (b0) = b0' ,则可得出直线方程形式:Y' = b0' + (b1 * x )。
故可用 REGRESSION命令来拟合此直线回归方程:
对 Y 值取自然对数,即 “COMPUTE LNy = LN(y).”一句;其下 REGRESSION 一句以 LNy 为因变量、x 为自变量,拟合直线回归方程,可得 b0 = 1.771, b1 = -0.702。
当该产品的价格(x)降至 0.8元时,估计的销售量 Ey1:
Ey1 = EXP (1.771 - 0.702 * 0.8) = 3.35 万件, 结果同上。
Model Summary
Model R R Square Adjusted R Square Std. Error of the Estimate
1 0.983 0.966 0.961 0.1259
a Predictors: (Constant), X
可见拟合良好(R square = R2 = 0.966)。
Coefficients
Unstandardized Coefficients Standardized Coefficients t Sig.
Model B Std. Error Beta
1 (Constant) 1.771 .109 16.303 .000
X -0.702 .050 -.983 -14.094 .000
a Dependent Variable: LNY

2.3 第(3)种方法用非线性回归(non-linear regression, NLR)命令:
做法是先以其直线方程形式 Y' = b0' + (b1 * x ),取初始值 b0 = 1, b1 = 1。即先用 “MODEL PROGRAM b0=1 b1=1.” 一句;以此来拟合直线回归方程,即其下的 “COMPUTE LNy2 = b0 + b1 * x.”一句;再用非线性回归 NLR 命令 “NLR LNy /PRED = LNy2 /SAVE=PRED.”来解得方程的 b0 与 b1;结果可得 b0=1.770616436, b1= -.702034569。
当该产品的价格(x)降至 0.8元时,估计的销售量 Ey2:
Ey2 = EXP(1.770616436 -.702034569 * 0.8) = 3.35 万件,结果也相同。
Nonlinear Regression Summary Statistics Dependent Variable LNY
---------------------------------------------------------------------------
Source DF Sum of Squares Mean Square
---------------------------------------------------------------------------
Regression 2 4.30707 2.15354
Residual 7 .11096 .01585
Uncorrected Total 9 4.41803
(Corrected Total) 8 3.25974

R squared = 1 - Residual SS / Corrected SS = 0.96596
---------------------------------------------------------------------------
Asymptotic 95 %
Asymptotic Confidence Interval
Parameter Estimate Std. Error Lower Upper
---------------------------------------------------------------------------
B0 1.770616436 0.108608000 1.513799324 2.027433547
B1 -0.702034569 0.049809471 -.819815252 -.584253885
---------------------------------------------------------------------------

最后自动输出的指数曲线拟合图与前面的图形完全相同,只不过前一个图是x 坐标从小到大排列,故曲线呈下降趋势(销售量随价格的上升而下降);此图的 x 坐标从大到小排列而已,故曲线呈上升趋势(销售量随价格的下降而上升)。
可见拟合良好(R square = R2 = 0.96596 = 0.966)。
例2:双曲线回归方程用于预测。双曲线方程为:Y = b0 + b1 * 1/x
令 z = 1/x,则可得出直线方程形式:Y = b0' + b1 * z。
表 7-6 某商品流通费用水平(y)与销售额(x)的关系
-------------------------------------------------------------------------
时期 销售额(x) 费用水平(%,y) 预测值(Ey)
(1) (2) (3) (4)
-------------------------------------------------------------------------
1 9.50 6.00 5.73
2 11.50 4.60 4.70
3 13.50 4.00 3.98
4 15.50 3.20 3.44
5 17.50 2.80 3.03
6 19.50 2.50 2.70
7 21.50 2.40 2.43
8 23.50 2.30 2.21
9 25.50 2.20 2.02
--------------------------------------------------------------------------
问商品销售额(x)为 28 时,商品流通费用水平(y)是多少?
所用程序文件名为 NLR-Pred.sps 的例 *2。
* Some examples for NLR prediction; Filename: NLR-Pred.sps.
*---------------------------------------------------------------------------.
*2. From Wang Xian-Yu: Market Survey and the Prediction, P.182:.
DATA LIST FREE /x y.
BEGIN DATA.
9.5 6.0 11.5 4.6 13.5 4.0 15.5 3.2 17.5 2.8
19.5 2.5 21.5 2.4 23.5 2.3 25.5 2.2 27.5 2.1
END DATA.
COMPUTE z = 1/x.
REGRESSION VARIABLES = y z
/DEPENDENT = y
/METHOD = ENTER z
/RESIDUALS=DEFAULTS
/CASEWISE=ALL.
*So getting b0 = -0.188, b1 = 56.268:.
COMPUTE Ey = -0.188 + 56.268 * 1/x.
LIST VARIABLES=x y Ey /CASES=FROM 1 TO 9.
GRAPH /LINE(MULTIPLE)=VALUE(y, Ey) BY x.
*--------------------------------------------------------------------------------.
运算结果如下:
Model Summary
Model R R Square Adjusted R Square Std. Error of the Estimate Durbin-Watson
1 .989 0.977 .975 .2037 .834
a Predictors: (Constant), Z b Dependent Variable: Y

Coefficients
Unstandardized Coefficients Standardized Coefficients t Sig.
Model B Std. Error Beta
1 (Constant) -0.188 .193 -.972 .360
Z 56.268 3.019 .989 18.638 .000
a Dependent Variable: Y

Casewise Diagnostics
Case Number Std. Residual Y Predicted Value Residual
1 1.301 6.00 5.7350 .2650
2 -.515 4.60 4.7050 -.1050
3 .098 4.00 3.9801 1.990E-02
4 -1.189 3.20 3.4423 -.2423
5 -1.116 2.80 3.0274 -.2274
6 -.970 2.50 2.6976 -.1976
7 -.143 2.40 2.4292 -2.9208E-02
8 .459 2.30 2.2065 9.353E-02
9 .890 2.20 2.0187 .1813
10 1.187 2.10 1.8582 .2418
a Dependent Variable: Y

可见输出 b0 = -0.188, b1 = 56.268。双曲线方程为:
EY = b0 + b1 * 1/x = -0.188 + 56.268 * 1/x
---------------------------------------------------------------
X Y EY
---------------------------------------------------------------
9.50 6.00 5.73
11.50 4.60 4.70
13.50 4.00 3.98
15.50 3.20 3.44
17.50 2.80 3.03
19.50 2.50 2.70
21.50 2.40 2.43
23.50 2.30 2.21
25.50 2.20 2.02
---------------------------------------------------------------

可见,当商品销售额(x)为 28 时,商品流通费用水平(y)是:
EY = -0.188 + 56.268 * 1/28 = 1.82 %

返回列表