回归和时序分析_第1页
回归和时序分析_第2页
回归和时序分析_第3页
回归和时序分析_第4页
回归和时序分析_第5页
已阅读5页,还剩81页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第8章回归分析和时序挖掘

回归分析(RegressionAnalysis)是确定两个或多个变量之间相互依赖的定量关系的一种统计分析方法,分为线性回归、非线性回归和逻辑回归等。回归分析和前一章介绍的分类方法都可以用于预测,与分类方法不同的是,通常分类输出是离散类别值,而回归的输出是连续值。

时序挖掘(TimeSeriesMining)包括时序建模和时序相似性搜索,前者用于描述现象随时间发展变化的数量规律性,后者找出时序数据库中与给定查询序列最接近的时序。8.1线性和非线性回归分析如果两个变量间的关系属于因果关系,一般可以用回归分析方法来进行分析,找出依变量变化的规律性。表示原因的变量为自变量,用X表示,它是固定的,没有随机误差,表示结果的变量称为依变量,用Y表示,Y随X的变化而变化,有随机误差。线性回归有一元线性回归和多元线性回归之分。依变量Y在一个自变量X上的回归线性称为一元线性回归;依变量在多个自变量X1、X2、…、Xn上的线性回归称为多元线性回归。8.1.1一元线性回归分析1.一元线性回归分析方法如果两个变量呈线性关系,就可用一元线性回归方程来描述。其一般形式为Y=a+bX,其中,X是自变量,Y是依变量,a、b是一元线性回归方程的系数。

a、b的估计值应是使误差平方和D(a,b)取最小值的、。式中,n是训练样本数目,(x1,y1),…,(xn,yn)是训练样本。可以采用最小二乘法估计系数、。为了使D(a,b)取最小值,分别取D关于a、b的偏导数,并令它们等于零:求解上述方程组,得到唯一的一组解、:其中,在利用训练样本得到、后,可以将Y=

+

X作为Y=a+bX的估计。称Y=

+

X为Y关于X的一元线性回归关系。得到一元线性回归关系后,在检验合适后,可用其进行预测。对于任意x,将其代入方程即可预测出与之对应的y。2.SQLServer中一元线性回归分析示例有如表8.1所示的产品销售表,用SQLServer进行一元线性回归分析的过程如下。no(编号)Price(价格)Sales(销售量)1201.812251.73301.654351.555401.486501.47601.38651.269701.2410751.2111801.212901.18表8.1RA表结构创建数据挖掘结构指定表类型设置挖掘模型结构线性回归分析结果得出的一元线性回归关系如下:Sales=1.9-0.009Price8.1.2多元线性回归分析多元回归是指依变量Y与多个自变量X1、X2、…、Xp有关。多元线性回归方程是一元线性回归方程的推广,其一般形式为:

Y=a+b1X1+…+bpXp其中,X1、X2、…、Xp是自变量,Y是依变量;a、b1、…、bp是多元(p元)线性回归方程的系数。

a、b1、…、bp的估计值应是使误差平方和(残差平方和)D(a,b1,…,bp)取最小值的、、…、:采用最小二乘估计法,为使D(a,b1,…,bp)取最小值,分别取D关于a、b1、…、bp的偏导数,并令它们等于零:求解上述方程组,即可得到、、…、。8.1.3非线性回归分析在进行非线性回归分析时,处理的方法主要有:首先确定非线性模型的函数类型,对于其中可线性化问题则通过变量变换将其线性化,从而归结为前面介绍的多元线性回归问题来解决。若实际问题的曲线类型不易确定时,由于任意曲线皆可由多项式来逼近,所以常用多项式回归来拟合曲线。若变量间非线性关系式已知(多数未知),且难以用变量变换法将其线性化,则进行数值迭代的非线性回归分析。1.可转换成线性回归的非线性回归对于可转换成线性回归的非线性回归,其基本处理方法是,通过变量变换,将非线性回归化为线性回归,然后用线性回归方法处理。(1)对数型对于形如y=a+bln(x)的对数型函数,令x1=ln(x),得到y=a+bx1,将其转换为线性回归关系。(2)双曲线型对于形如的双曲线型函数,令y1=,x1=,得到y1=a+bx1,将其转换为线性回归关系。(3)指数型对于形如y=cebx的指数型函数,令y1=ln(y),a=ln(c),得到y1=a+bx,将其转换为线性回归关系。(4)幂函数型对于形如y=cxb的幂函数,令y1=ln(y),x1=ln(x),a=ln(c)得到y1=a+bx1,将其转换为线性回归关系。(5)S型对于形如的S型函数,令y1=,x1=e-x,得到y1=a+bx1,将其转换为线性回归关系。

【例8.1】有一组试验数据如表8.2所示,它表示银的两种光学密度X、Y之间的关系。推出Y(依变量)与X(自变量)之间的关系。编号XY10.050.120.060.1430.070.2340.10.3750.140.5960.20.7970.25180.311.1290.381.19100.431.25110.471.29通过画出X、Y的坐标图,从数据的散点关系推出它是指数曲线,设回归关系为(b<0)。两边取对数得到:ln(y)=ln(c)+,做变量替换:x1=1/x,y1=ln(y),并设a=ln(c),得到y1=a+bx1。由实际数据(X,Y)求出对应的数据(X1,Y1),如表8.3所示。noX1Y1120-2.303216.667-1.966314.286-1.47410-0.99457.143-0.52865-0.23674083.2260.11392.6320.174102.3260.223112.1280.255

对表8.3的数据做一元线性回归分析,在SQLServer中得到的结果如图8.7所示,对应的回归关系为:

y1=0.547-0.146x1再换回到原变量,得:lny=0.547,,即为Y(依变量)与X(自变量)之间的关系。2.多项式回归分析对于多项式回归关系,其一般形式为:

Y=b0+b1X1+b2X2+…+bmXm+e其中Y为依变量向量,X1、X2、…、Xm为自变量向量,e为随机项(通常是互相独立的并且服从均值为0、方差为σ2的正态分布,即e~N(0,σ2))。例如,有n个样本数据,对应的关系为:

y1=b0+b1x11+b2x12+…+bmx1m+e1

y2=b0+b1x21+b2x22+…+bmx2m+e2

……

yn=b0+b1xn1+b2xn2+…+bmxnm+en

ei~N(0,σ2) i=1,2,…,n这一类问题均可化为多元线性回归问题加以处理。数学理论已证明,任何连续函数可用足够高阶的多项式任意逼近。因此,对比较复杂的实际问题,可以不问Y与诸因素的确切关系如何,而直接用多项式回归。3.不可变换成线性的非线性回归分析对于不可变换成线性的非线性回归问题,不妨设模型为:

Y=f(X1,X2,…,Xm,θ1,θ2,…,θp)+e其中,Y为随机变量,X=(X1,X2,…,Xm)T(T表示转置)为m个自变量,θ=(θ1,θ2,…,θp)T为p个未知参数,e为服从N(0,σ2)的随机变量。对x1,x2,…,xm,y作n次观测,得到观测数据如下:x11

x12

x1m

y1x21

x22

x2m

y2……xn1

xn2

xnm

yn代入这n个观测数据,得到:y1=f(x11,x12,…,x1m,θ1,θ2,…,θp)+e1y2=f(x21,x22,…,x2m,θ1,θ2,…,θp)+e2……yn=f(xn1,xn2,…,xnm,θ1,θ2,…,θp)+enei~N(0,σ2) i=1,2,…,n为了方便起见,常用这样的记号:f(xi1,xi2,…,xim,θ1,θ2,…,θp)=f(xi,θ)=fi(θ)(i=1,2,…,n)对于上述模型,记D(θ)=为误差平方和。采用最小二乘法求,显然D(

)应为最小值,即D()=min{D(θ)}。如果f对于θ的每个分量都是可微的,则求相当于求解以下正规方程组:,j=1,2,…,p对于D(

)=min{D(θ)},一般可用最优化迭代算法,求出最优解,从而确定非线性回归数学模型。8.2逻辑回归分析逻辑(logistic)回归用于分析二分类或有次序的依变量和自变量之间的关系。当依变量是二分类(如1或0)时,称之为二分逻辑回归,自变量X1、X2、…、Xk可以是分类变量或连续变量等。8.2.1逻辑回归原理对于p个独立的自变量X=(X1、X2、…、Xk)和依变量Y,现要求逻辑回归模型。设条件概率P(Y=1|X)=p(X)为根据观测量Y相对于某事件X发生的概率(发生事件的条件概率)。能不能采用前面介绍的一元线性回归逻辑,设置Y=p(X)=a+bX呢?由于概率p的取值在0与1之间,X的取值可以是连续值,所以这个关系式显然是不合适的。也就是说,p(X)与各个自变量之间是非线性的,而是呈现S型函数关系,如图8.8所示。可以设置为这样的S型函数:p(X)=,-∞<f(X)<∞通常f(X)可以看成X的线性函数,逻辑回归就是要找出f(X)。8.2.2逻辑回归模型前面介绍的p(X)函数是由美国科学家R.B.Pearl和L.J.Reed提出的,称为增长函数。由p(X)函数可推出:

P(Y=0|X)=1-p(X)=(不发生事件的条件概率),所以有,两边取对数得到:ln(称为机会比率,即有利于出现某一状态的机会大小。

f(X)即为回归模型。常用的是线性回归模型,即:

ln(=f(X)=β0+β1X1+β2X2+…+βkXk它反映出X每变化一个单位,有利机会对数变化的程度。假设有n组观测样本{xi1,xi2,…,xik;yi}(i=1,2,…,n),其中yi为0/1值。设pi=P(yi=1|x)为给定条件下得到pi=1的概率。在同样条件下得到pi=0的条件概率为P(yi=0|x)=1-pi。于是,得到一个观测值的概率为因为各项观测独立,所以y1、y2、…、yn的似然函数为:对数的似然函数为:最大似然估计就是求β0、β1、β2、…、βk的估值,使上述对数似然函数值最大。8.2.3SQLServer中逻辑回归分析示例如表8.4所示是一个某城市市民出行是否经常乘坐公汽的调查表,X1表示年龄,X2表示月收入,X3表示性别(0为女性,1为男性),Y表示结果(1表示经常乘坐公汽,0表示相反)。用SQLServer进行逻辑回归分析的过程如下。noX1X2X3Y12018500122120001132624001142630000152722001063035001073032000184040000094045001010505100001150530010126045000113653000011465310011LRA表结构设置挖掘模型结构逻辑回归分析结果8.3时序分析模型8.3.1时序分析概述从数学意义上来讲,如果对某一过程中的某一变量进行X(t)观察测量,在一系列时刻t1、t2、…、tn(t为自变量,且t1<t2<…<tn)得到的离散有序数集合Xt1、Xt2、…、Xtn称为离散数字时序。设X(t)是一个随机过程,Xti(i=1,2,…,n)称为一次样本实现,也就是一个具体的时序。序列的统计特征可以表现平稳或者有规律的震荡,这样的序列是分析的基础点。此外如果序列按某类规律(如高斯型)的分布,那么序列的分析就有了理论根据。8.3.2时序预测的常用方法1.确定性时序预测方法若一个时序的未来值被某一个数学函数严格确定,例如y=cos(2πt)这种形式,则称该时序为确定性时序。对于确定性的时序来说,假设未来行为与现在的行为有关,利用属性现在的值预测将来的值是可行的。例如,要预测下周某种商品的销售额,可以用最近一段时间的实际销售量来建立预测模型。设Tt表示长期趋势,St表示季节变动趋势项,Ct表示循环变动趋势项,Rt表示随机干扰项,yt是观测目标的观测记录。最基本的确定性时序模型有以下几种类型:(1)加法模型:Yt=Tt+St+Ct+Rt。(2)乘法模型:Yt=Tt×St×Ct×Rt。(3)混合模型:Yt=Tt×St+Rt

或Yt=St+Tt×Ct×Rt。2.随机时序预测方法通过建立随机模型,对随机时序进行分析,可以预测未来值。若时序是平稳的,可以用自回归(AutoRegressive,简称AR)模型、移动回归模型(MovingAverage,简称MA)或自回归移动平均(AutoRegressiveMovingAverage,简称ARMA)模型进行分析预测。8.3.3回归分析与时序分析的关系时序分析和回归分析两者存在着内在的统一性。事实上,正是用时间变量t代替了许许多多影响事物长期趋势的基本因素,可以把各种影响因素统一在一个回归模型中。8.3.4确定性时序模型1.建立时序模型的流程2.移动平均模型移动平均法就是根据历史统计数据的变化规律,使用最近时期数据的平均数,利用上一个或几个时期的数据产生下一期的预测值。移动平均法是一种常用的确定性时间序列预测法。这里主要介绍一次移动平均预测法和加权一次移动平均预测法。已知序列y1、y2、…、yn是预测前的实际数据组成的时序。如果过早的数据已失去意义,不能反映当前数据的规律,那么可以用一次移动平均法来作预测。即保留最近一个时间区间内的数据,用其算术平均数作为预测值。设时间序列为{yt},取移动平均的项数为n,则第t+1期预测值的计算公式为:其中,yt表示第t期实际值,表示第t+1期预测值(t≥0)。预测标准误差为:其中,N为时间序列{yt}所含原始数据的个数。简单一次移动平均预测法,是把参与平均的数据在预测中所起的作用同等看待,但实际中参与平均的各期数据所起的作用往往是不同的。其中,yt表示第t期的实际值,表示第t+1期预测值,Wi表示权数,n表示移动平均的项数。3.指数平滑模型与移动平均预测法不同,指数平滑法采用了更切合实际的方法,即对各期观测值依时间顺序进行加权平均作为预测值。主要有一次指数平滑法和二次指数平滑法。(1)一次指数平滑法该方法利用前一时刻的数据进行预测的方法。它适用于变化比较平稳,增长或下降趋势不明显的时间序列数据的下一期的预测。其模型是:其中,yt-1表示第t-1期实际值,表示第t期预测值,k(0≤k≤1)称为平滑系数。(2)二次指数平滑法该方法是对一次指数平滑值再作一次指数平滑来进行预测的一种方法,但第t+1期预测值并非第t期的二次指数平滑值,而是采用下列计算公式进行预测:其中,表示第期的一次指数平滑值,表示第期的二次指数平滑值,yt表示第t期实际值,表示第t+T期预测值,k表示平滑系数,,。8.3.5随机时序模型随机时间序列模型是一种精确度较高的短期预测方法。其基本思想是:某些时间序列是依赖于时间t的一组随机变量,构成该序列的单个序列值虽然具有不确定性,但整个序列的变化却有一定的规律性,可以用相应的数学模型近似描述。1.自回归模型AR(p)若时序{yt}中的yt为它的前期值和随机项的线性函数,表示为:则称该时间序列{yt}为自回归序列,该模型为p阶自回归模型(Auto-regressiveModel),记为AR(p)。其中:参数φ1、φ2、…、φp为自回归参数,是模型的待估参数;μt是一个白噪声,用来描述简单随机干扰的平稳序列,是互相独立并且服从均值为0、方差为的正态分布的平稳序列;μt与yt-1、yt-2、…、yt-p不相关。为了表述上式方便引入滞后算子B,其意义为Byt=yt-1,则上式模型可以表示为:其中,Byt=yt-1,B2yt=yt-2,…,Bpyt=yt-p进一步有:则可写为对于一阶自回归序列来讲,若系数φ的绝对值|φ|<1,则称这个序列是渐进平稳的。对于p阶自回归序列来讲,如果是平稳时间序列,它要求滞后算子多项式φ(B)的以下特征方程的所有根的绝对值皆大于1:即阶自回归序列的渐平稳条件为|z|>1。自回归模型AR(p)的参数估计过程是:假设其参数估计值、、…、已经得到,有:误差的平方和D为:根据最小二乘法原理,求参数估计值、、…、。例如,有AR(1)模型yt=0.6yt-1+μt。则:(1-0.6B)yt=μtyt=μt=(1+0.6B+0.36B2+0.216B3+…)μt=μt+0.6μt-1+0.36μt-2+0.216μt-3+…从而变换为一个无限阶的移动平均过程。2.滑动(移动)平均模型MA(q)若时序{yt}中的yt为它前期的误差和随机项的线性函数,可以表示为则称该时间序列{yt}为滑动平均序列,该模型为q阶滑动(移动)平均模型(MovingAverageModel),记为MA(q)。参数θ1、θ2、…、θq为滑动平均参数,是模型的待估参数。可以采用矩估计法进行参数估计,这里不再介绍。3.自回归滑动平均模型ARMA(p,q)若时序中的yt为它的当前值与前期的误差和随机项的线性函数,则可以表示为:则称该时间序列中的{yt}为自回归滑动平均序列。又由于模型包含p项自回归模型和q项滑动平均模型,因此该模型称为自回归滑动平均模型(Auto-regressiveMovingAverageModel),记为ARMA(p,q)。参数φ1、φ2、…、φp为自回归参数,θ1、θ2、…、θq为滑动平均参数,是模型的待估参数。自回归滑动平均模型ARMA(p,q)的参数估计可以采用分为两步,先估计φ1、φ2、…、φp自回归参数,然后估计θ1、θ2、…、θq滑动平均参数。4.差分整合移动平均自回归模型ARIMA(p,d,q)

ARIMA模型(AutoregressiveIntegratedMovingAveragemodel,差分整合移动平均自回归模型,又称整合移动平均自回归模型)是时序预测分析方法之一。在ARIMA(p,d,q)中,AR是自回归,p为自回归项数;MA为滑动平均,q为滑动平均项数,d为使之成为平稳序列所做的差分次数(阶数)。差分的目标是使时序稳定且变得静态,差分阶数表示为时序取的值之间的差分的次数。8.3.6SQLServer建立随机时序模型示例有如表8.8所示的CPI数据表,其中有一部分月份没有给出,采用SQLServer建立其随机时序模型,并预测没有给出的CPI。其过程如下。TimeCPITimeCPITimeCPI(预测值)2010-01-011.52011-08-016.22013-03-01NULL2010-02-012.72011-09-016.12013-04-01NULL2010-03-012.42011-10-015.52013-05-01NULL2010-04-012.82011-11-014.22013-06-01NULL2010-05-013.12011-12-014.12013-07-01NULL2010-06-012.92012-01-014.52013-08-01NULL2010-07-013.32012-02-013.22013-09-01NULL2010-08-013.52012-03-013.62013-10-01NULL2010-09-013.62012-04-013.42013-11-01NULL2010-10-014.42012-05-0132013-12-01NULL2010-11-015.12012-06-012.22013-03-01NULL2010-12-014.62012-07-011.82013-04-01NULL2011-01-014.92012-08-0122011-02-014.92012-09-011.92011-03-015.42012-10-011.72011-04-015.32012-11-0122011-05-015.52012-12-012.52011-06-016.42013-01-0122011-07-016.52013-02-013.2TS表结构创建数据挖掘结构设置挖掘模型结构时序挖掘图显示预测值“模型”选项卡“挖掘图例”对话框8.4时序的相似性搜索时序相似性搜索是基于内容的查询,用X=(xt

|t=0,1,2,…,n-1)表示一个时序,其相似性搜索就是在时序数据库中发现与给定模式相似的序列。8.4.1相似性搜索的概念假设时序模型为AR(n),待测序列X的参数模型为φX,它是待检模型。序列数据库中的其他序列Yi的的参数模型为φYi,它们是参考模型。φX和φYi都是n维向量,均可视为n维空间上的点。从而序列的相似性问题就归结为n维空间Rn中的距离的判别问题。1.距离判别函数常用的距离函数为欧几里得函数,其表示如下:如果待检模型φX与某个参考模型φY的欧几里得距离最小,则它和这个参考序列最相似。用模型中随机项向量μ(白噪声向量)来构造残差距离函数,其表示如下:其中,rX是待检序列的协方差矩阵,N表示待检序列的长度。2.相似性匹配方式一般地,事先给定距离函数D和,时序相似性匹配可分为以下两类:完全匹配:给定N个序列Y1、Y2、…、Yn和一个查询序列X,这些序列有相同的长度,如果存在D(X,Yi)≤,那么称X与Yi完全匹配。子序列匹配:给定N个具有任意长度的序列Y1、Y2、…、Yn和一个查询序列X以及参数。子序列匹配就是在Yi(1≤i≤N)上找到某个子序列,使这个子序列与X之间的距离小于等于。3.数据变换对于一个时序X,对其离散傅立叶变换得到Xf:f=0,1,…,n-1这里,X与xt代表时域信息,而与Xf代表频域信息,={Xf|f=0,1,…,n-1},Xf为为傅立叶系数。注意:采用离散傅立叶变换后,序列上的每个点(时域信息

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论