时间序列分析
- 格式:docx
- 大小:310.98 KB
- 文档页数:8
时间序列分析习题解答第一章 P. 7 1.5 习题1.1 什么是时间序列?请收集几个生活中的观察值序列。
答:按照时间的顺序把随机事件变化发展的过程记录下来就构成一个时间序列。
例1:1820—1869年每年出现的太阳黑子数目的观察值;年份黑子数年份黑子数年份黑子数年份黑子数年份黑子数1820 16 1830 71 1840 63 1850 66 1860 96 1821 7 1831 48 1841 37 1851 64 1861 77 1822 4 1832 28 1842 24 1852 54 1862 59 1823 2 1833 8 1843 11 1853 39 1863 44 1824 8 1834 13 1844 15 1854 21 1864 47 1825 17 1835 57 1845 40 1855 7 1865 30 1826 36 1836 122 1846 62 1856 4 1866 16 1827 50 1837 138 1847 98 1857 23 1867 7 1828 62 1838 103 1848 124 1858 55 1868 37 1829 67 1839 86 1849 96 1859 94 1869 74 例2:北京市城镇居民1990—1999年每年的消费支出按照时间顺序记录下来,就构成了一个序列长度为10的消费支出时间序列(单位:亿元)。
1686,1925,2356,3027,3891,4874,5430,5796,6217,6796。
1.2 时域方法的特点是什么?答:时域方法特点:具有理论基础扎实,操作步骤规范,分析结果易于解释的优点,是时间序列分析的主流方法。
1.3 时域方法的发展轨迹是怎样的?答:时域方法的发展轨迹:一.基础阶段:1. G.U. Yule 1972年AR模型2. G.U.Walker 1931年 MA模型、ARMA模型二.核心阶段:G.E.P.Box和G.M.Jenkins1. 1970年,出版《Time Series Analysis Forecasting and Control》2. 提出ARIMA模型(Box-Jenkins模型)3. Box-Jenkins模型实际上主要运用于单变量、同方差场合的线性模型三.完善阶段:1.异方差场合:a.Robert F.Engle 1982年 ARCH模型b.Bollerslov 1985年 GARCH模型2.多变量场合:C.Granger 1987年提出了协整(co-integration)理论3.非线性场合:汤家豪等 1980年门限自回归模型1.4 在附录1中选择几个感兴趣的序列,创建数据集。
时间序列分析简介与模型时间序列分析是一种统计分析方法,用于研究时间序列数据的发展趋势、周期性和随机性。
时间序列数据是按照时间顺序排列的一系列观测值,如股票市场的每日收盘价、气温的每月平均值等。
时间序列分析可以帮助我们理解数据的变化规律,预测未来的趋势,并支持决策和规划。
在时间序列分析中,一般将数据分为三个主要成分:趋势、季节性和随机扰动。
趋势是序列长期的增长或下降趋势,季节性是周期性的波动,随机扰动是非系统性的噪声。
为了进行时间序列分析,我们需要选择适当的模型。
常见的时间序列模型包括平滑模型、自回归移动平均模型(ARMA)、季节性自回归移动平均模型(SARMA)、季节性自回归整合移动平均模型(SARIMA)和指数平滑模型等。
平滑模型适用于没有趋势和季节性的数据。
其中,移动平均法是一种常用的平滑方法,它通过计算观测值的移动平均值来估计趋势。
指数平滑法是一种适应性的平滑方法,根据最新的观测值赋予较大的权重,较旧的观测值则被较小的权重所影响。
自回归移动平均模型(ARMA)是一种常用的线性模型,它将序列的当前值与它的滞后值和滞后误差联系起来,以预测序列的未来值。
ARMA模型的参数包括自回归阶数(p)和移动平均阶数(q),通过拟合模型可以估计这些参数。
季节性自回归移动平均模型(SARMA)是一种在季节性数据上拓展了ARMA模型的模型。
它引入了季节性序列和季节性滞后误差,以更准确地预测季节性数据的未来值。
季节性自回归整合移动平均模型(SARIMA)是ARIMA模型在季节性数据上的扩展。
ARIMA模型是一种广义的线性模型,包括自回归、差分和移动平均三个部分。
ARIMA模型的参数包括自回归阶数(p)、差分阶数(d)和移动平均阶数(q)。
SARIMA模型加入了季节性差分和季节性滞后误差,以更好地拟合季节性数据。
时间序列分析的核心目标是对未来趋势进行预测。
通过拟合适当的时间序列模型,我们可以估计模型的参数,并使用已知的数据来预测未来时间点的值。
时间序列分析的应用时间序列分析是运用数学、统计学等方法对时间序列资料进行观察、分析和预测的一门学科。
时间序列资料是在时间顺序下观察到的一系列变量值,例如股票收盘价、气候变化指标和销售数据等。
时间序列分析的应用广泛,下面就从不同领域的角度来介绍一些常见的应用及其方法。
1. 经济领域时间序列分析在经济领域的应用较为广泛,主要用于对宏观经济变量进行预测和分析。
主要方法包括趋势分析、季节性分析和周期性分析。
趋势分析可以用于预测经济增长趋势,季节性分析可以用于预测销售数据在不同季节的变化,周期性分析可以用于预测市场波动周期。
此外,时间序列分析还可以用于金融领域的波动率预测和风险管理。
2. 环境领域时间序列分析在环境领域的应用也相当重要。
例如,可以利用时间序列资料来分析气候变化趋势和减缓气候变化的措施效果。
常用的分析方法包括时间序列的平稳性分析、自回归滑动平均模型建立和灰色预测等。
3. 医学领域医学领域中,时间序列分析可用于病发率预测、药物效果评价等方面。
例如,疫情数据的时间序列分析可以用于控制疫情的扩散趋势,肿瘤病发率时间序列分析可用于对病人治疗和康复方案的预测。
4. 社交媒体领域随着社交媒体的普及,时间序列分析在社交媒体领域也有了广泛的应用。
例如,可以分析特定时段用户对某个事件的互动情况,利用时间序列分析挖掘用户对某个品牌的兴趣变化趋势等方面。
常用的分析方法包括自回归模型、指数平滑法等。
总的来说,时间序列分析是一种非常有用的数据分析方法,可以应用于诸多领域并取得良好的预测效果。
使用者需要选择合适的方法,结合实际情况进行分析。
此外,由于时间序列资料具有一定的随机性质,关键在于准确、全面地获取数据、选择合适的模型和算法来进行分析。
时间序列分析中常用的模型时间序列分析是一种重要的数据分析方法,用于研究随时间变化的数据。
在实际应用中,常常需要使用合适的模型来描述和预测时间序列数据。
本文将介绍时间序列分析中常用的几种模型,并对其原理和应用进行详细的讨论。
一、移动平均模型(MA模型)移动平均模型是时间序列分析中最简单的模型之一。
它基于时间序列在不同时刻的观测值之间存在一定的相关性,并假设当前的观测值是过去一段时间内的观测值的线性组合。
移动平均模型一般用“MA(q)”表示,其中q表示移动平均阶数,即过去q个观测值的影响。
二、自回归模型(AR模型)自回归模型是另一种常用的时间序列模型。
它假设当前的观测值与过去一段时间内的观测值之间存在线性关系,并通过自相关函数来描述观测值之间的相关性。
自回归模型一般用“AR(p)”表示,其中p表示自回归阶数,即过去p个观测值的影响。
三、自回归移动平均模型(ARMA模型)自回归移动平均模型是将移动平均模型和自回归模型相结合得到的一种模型。
它通过同时考虑观测值的移动平均部分和自回归部分来描述时间序列的相关性。
四、季节性模型在一些具有周期性波动的时间序列数据中,常常需要使用季节性模型进行分析。
季节性模型一般是在上述模型的基础上加入季节因素,以更准确地描述和预测数据的季节性变化。
五、自回归积分移动平均模型(ARIMA模型)自回归积分移动平均模型是时间序列分析中最常用的模型之一。
它通过引入差分运算来处理非平稳时间序列,并结合自回归模型和移动平均模型来描述残差项之间的相关性。
六、指数平滑模型指数平滑模型是一种常用的时间序列预测方法。
它假设未来的观测值与过去的观测值之间存在指数级的衰减关系,并通过平滑系数来反映不同观测值之间的权重。
七、ARCH模型和GARCH模型ARCH模型和GARCH模型是用于处理时间序列波动性的模型。
它们基于过去的方差序列来描述未来的波动性,并用于金融市场等领域的风险管理和波动率预测。
总结来说,时间序列分析中常用的模型包括移动平均模型、自回归模型、自回归移动平均模型、季节性模型、自回归积分移动平均模型、指数平滑模型、ARCH模型和GARCH模型等。
时间序列分析是一种统计方法,专门用于研究有序时间点上观测到的数值数据。
这些数据点按照时间顺序排列,形成了一条时间序列。
时间序列分析旨在揭示这些数据随时间变化的模式、趋势和周期性,并预测未来的走势。
这一方法广泛应用于各个领域,包括但不限于金融、经济、气象、生物学、医学、社会科学和工程等。
**一、时间序列分析的基本概念**1. **时间序列的定义**:时间序列是一组按时间顺序排列的数据点,通常用于反映某个或多个变量随时间的变化情况。
这些数据点可以是连续的(如每秒的气温),也可以是离散的(如每天的股票价格)。
2. **时间序列的构成**:时间序列通常由四个部分组成:趋势(Trend)、季节性(Seasonality)、周期性(Cyclicality)和随机性(Randomness)。
* **趋势**:长期变化的方向,可以是上升、下降或平稳的。
* **季节性**:由外部因素(如季节变化)引起的周期性变化。
* **周期性**:由内部因素(如经济周期)引起的周期性变化。
* **随机性**:无法预测的随机波动。
3. **时间序列的类型**:根据数据的性质和分析目标,时间序列可以分为平稳时间序列和非平稳时间序列。
平稳时间序列的统计特性(如均值和方差)不随时间变化,而非平稳时间序列则可能存在长期趋势或其他非恒定特性。
**二、时间序列分析方法**1. **描述性统计**:通过计算时间序列的均值、方差、标准差等指标,初步了解数据的分布情况。
2. **时间序列图**:通过绘制时间序列图,可以直观地观察数据的趋势、季节性和周期性。
3. **时间序列模型**:常用的时间序列模型包括自回归模型(AR)、移动平均模型(MA)和自回归移动平均模型(ARMA)等。
这些模型通过拟合历史数据来预测未来的趋势。
**三、时间序列分析的应用场景**1. **金融市场分析**:时间序列分析在金融市场分析中具有重要意义。
股票价格、汇率、债券收益率等金融数据都是典型的时间序列数据。
以下是一些关于时间序列分析的参考文献,供您参考:
《时间序列分析及应用:基于R语言的统计建模》- 威廉·亨利·伊文思著,2017年出版。
"时间序列分析:理论、方法与应用" - 约瑟夫·格雷戈里乌斯著,1994年出版。
"时间序列分析:动态数据建模方法" - 罗伯特·卡茨等著,2004年出版。
"时间序列分析:非平稳数据的建模与预测" - 埃里克·诺尔等著,2017年出版。
"时间序列分析导论" - 约瑟夫·坎贝尔等著,2010年出版。
"时间序列分析:基于Python的方法" - 迈克尔·约翰逊著,2017年出版。
"时间序列分析:预测与控制" - 吉尔伯特·萨金特著,1997年出版。
"时间序列分析:模型、估计与预测" - 克里斯托弗·拉姆齐等著,2014年出版。
"时间序列分析:基于贝叶斯的方法" - 约翰·洛夫斯著,2013年出版。
"时间序列分析:一种综合方法" - 约翰·吉本斯等著,2016年出版。
这些文献涵盖了时间序列分析的各个方面,包括基本概念、模型建立、参数估计、预测方法等。
通过阅读这些文献,您可以深入了解时间序列分析的理论和实践,并应用于实际的数据分析和建模中。
时间序列分析模型时间序列分析模型是一种通过对时间序列数据进行建模和分析的方法,旨在揭示数据中的趋势、季节性、周期和不规则波动等特征,并进行预测和决策。
时间序列分析模型在经济、金融、市场、气象、医学等领域都有广泛的应用。
本文将介绍几种常见的时间序列分析模型。
1. 移动平均模型(MA)移动平均模型是时间序列分析中最简单的模型之一。
它基于一个基本假设,即观察到的时间序列数据是对随机误差的线性组合。
该模型表示为:y_t = c + e_t + θ₁e_(t-1) + θ₂e_(t-2) + … + θ_qe_(t-q)其中,y_t 是观察到的数据,c 是常数,e_t 是随机误差,θ₁,θ₂,…,θ_q 是移动平均项的参数,q 是移动平均项的阶数。
2. 自回归模型(AR)自回归模型是基于一个基本假设,即观察到的时间序列数据是过去若干时间点的线性组合。
自回归模型表示为:y_t = c + ϕ₁y_(t-1) + ϕ₂y_(t-2) + … + ϕ_p y_(t-p) + e_t其中,y_t 是观察到的数据,c 是常数,e_t 是随机误差,ϕ₁,ϕ₂,…,ϕ_p 是自回归项的参数,p 是自回归项的阶数。
3. 自回归移动平均模型(ARMA)自回归移动平均模型将自回归模型和移动平均模型结合在一起,用于处理同时具有自相关和移动平均性质的时间序列数据。
自回归移动平均模型表示为:y_t = c + ϕ₁y_(t-1) + ϕ₂y_(t-2) + … + ϕ_p y_(t-p) + e_t +θ₁e_(t-1) + θ₂e_(t-2) + … + θ_qe_(t-q)其中,y_t 是观察到的数据,c 是常数,e_t 是随机误差,ϕ₁,ϕ₂,…,ϕ_p 是自回归项的参数,θ₁,θ₂,…,θ_q 是移动平均项的参数,p 是自回归项的阶数,q 是移动平均项的阶数。
4. 季节性自回归移动平均模型(SARIMA)季节性自回归移动平均模型是自回归移动平均模型的扩展,用于处理具有季节性和趋势变化的时间序列数据。
时间序列分析的基本概念是什么如何进行时间序列的平稳性检验时间序列分析是一种应用广泛的统计分析方法,用于研究随时间变化的数据序列的规律性和特征。
时间序列数据是按照时间顺序排列的观测值序列,常见的包括股票价格、气温、销售额等。
时间序列分析的基本概念是对时间序列数据进行模型拟合和预测。
它的主要目的是揭示数据的内在规律和特征,为未来的预测和决策提供依据。
下面将介绍时间序列分析的基本概念和时间序列的平稳性检验。
一、时间序列分析的基本概念1. 趋势分析:指时间序列数据在长期内的增长或下降趋势。
趋势分析可以采用移动平均法和指数平滑法等方法进行预测和拟合。
2. 季节性分析:指时间序列数据在短期内的重复周期。
季节性分析可以使用季节指数法和季节自回归移动平均法等方法来对季节性进行分析和预测。
3. 循环分析:指时间序列数据在长期内的周期性波动。
循环分析可以利用时间序列的滞后项构建循环指标,并对周期性进行拟合和预测。
4. 不规则分量分析:指不能被趋势、季节性和循环等因素解释的随机变动。
不规则分量包含各种无法归类的随机因素,可以通过随机过程模型进行分析和预测。
二、时间序列的平稳性检验时间序列的平稳性是进行时间序列分析的基本要求,平稳性包括严平稳和弱平稳两个概念。
严平稳要求时间序列的联合概率分布不随时间的变化而改变,即均值和方差等参数在时间序列的不同阶段保持不变。
严平稳序列可以使用统计工具进行参数估计和假设检验。
弱平稳是指时间序列的均值和自相关性不随时间的变化而改变,但方差可能会随时间的变化而改变。
弱平稳序列可以通过差分进行处理,将非平稳序列转化为平稳序列。
进行时间序列的平稳性检验可以使用统计学方法,常用的方法包括ADF检验、单位根检验和KPSS检验等。
这些方法通过检验序列的单位根特征或自回归模型的稳定性来判断序列的平稳性。
ADF检验(Augmented Dickey-Fuller Test)是一种常用的平稳性检验方法,其原理是对序列进行单位根检验,并根据检验统计量与临界值的比较来判断序列的平稳性。
时间序列数据分析方法时间序列数据在许多领域得到广泛应用,比如金融、经济、气象等。
时间序列数据是指按时间顺序排列的一系列数据,每个时间点有其对应的数据值。
对于时间序列数据的分析,可以帮助我们发现数据的规律和趋势,从而更好地预测未来的走势和决策。
下面介绍一些常用的时间序列数据分析方法。
1. 平稳性检验平稳性是时间序列分析的重要假设,它是指时间序列在统计意义上的均值、方差、协方差不随时间变化而改变。
如果时间序列不满足平稳性,则会影响样本的描述性统计和假设检验的结果。
平稳性检验可以使用自相关系数、平稳性检验统计量等方法。
2. 季节性分解季节性是时间序列中的一个重要特征,它是指周期性变化,并有一定的规律和周期性。
季节性分解是把时间序列分解成趋势、季节性、随机性等三个部分的过程。
常用的方法有加法模型和乘法模型,其中乘法模型比较常用。
季节性分解可以让我们更好地理解数据的季节性特征,并进行更加精准的预测。
3. 自回归移动平均模型自回归移动平均模型是一种常用的时间序列预测方法,它结合了自回归和移动平均的特点。
ARIMA 模型由三个参数表示:p、d、q。
其中,p 表示时间序列的自回归次数,d 表示时间序列被差分的次数,q 表示时间序列的滞后移动平均次数。
ARIMA 模型可以用来对数据进行预测,同时也可以用来对时间序列进行拟合。
4. 神经网络模型神经网络模型是一种非线性模型,它可以处理高维、非线性和时序数据。
神经网络模型的训练采用迭代算法,输入变量通过一系列的网络结构逐步进行处理,最终得到输出变量。
神经网络模型可以在一定程度上提高时间序列预测的精度,并且可以自动学习数据的特征,不需要过多的人工干预。
5. 非参数模型非参数模型又称为自适应模型,它主要是依据数据本身的分布和性质来推断未来的走势。
常用的非参数模型有 Kernel Regression 模型和 P-Spline 模型等。
非参数模型不需要事先设定模型形式和参数,更适用于数据特征不太明显或者数据结构复杂的情况。
时间序列分析的基本概念与检验时间序列分析是一种对随时间变化的数据进行统计分析和预测的方法。
它是根据时间序列数据的特性,通过建立数学模型来研究数据内在规律和变动趋势的一种方法。
时间序列分析通常包括四个主要步骤:数据的可视化与描述性统计分析、时间序列的平稳性检验、模型识别与估计、模型检验与预测。
数据的可视化与描述性统计分析是时间序列分析的第一步。
通过绘制时间序列图,可以直观地观察到数据的整体趋势、季节性、周期性以及异常事件等。
描述性统计分析则可以从均值、方差、关联性等角度对数据进行描述。
时间序列的平稳性检验是确定时间序列是否具有平稳性的重要步骤。
平稳性是时间序列分析的基本假设,它要求数据在时间上的各个阶段具有相同的平均值和方差。
常用的平稳性检验方法有单位根检验、ADF检验等。
如果时间序列不具有平稳性,需要进行差分等预处理方法来实现平稳性。
模型识别与估计是时间序列分析的核心内容。
根据时间序列的特性选择合适的模型结构,并通过最大似然估计等方法来估计模型的参数。
常用的模型包括移动平均模型MA(q)、自回归模型AR(p)以及自回归移动平均模型ARMA(p,q)等。
模型检验与预测是时间序列分析的最后一步。
通过对模型残差进行自相关和偏自相关检验以及正态性检验来判断模型的拟合优度。
在模型通过检验后,可以利用模型对未来的数据进行预测。
预测方法包括单步预测和多步预测,常用的预测准则有均方根误差、平均绝对误差等。
时间序列分析检验的基本概念与方法还有很多。
除了上述提到的检验方法外,还有对时间序列进行平稳性转换、季节调整、异常检测等。
同时,在时间序列分析中还涉及到模型识别的准则选择、残差白噪声检验的有效性评估等问题。
此外,时间序列分析还可以与机器学习方法结合,例如利用神经网络、支持向量机等方法来进行时间序列的模型建立与预测。
总之,时间序列分析是一种重要的统计方法,能够帮助我们理解和预测随时间变化的数据。
通过对时间序列数据的可视化与描述性统计分析、平稳性检验、模型识别与估计以及模型检验与预测等步骤,可以得到对时间序列数据内在规律和未来趋势的深入认识。
数据科学:回归分析和时间序列分析的比较回归分析和时间序列分析是数据科学领域中两种最基本的分析方法。
虽然两种方法的应用场景和数据结构不同,但它们都是构建模型和预测未来的有效工具。
本文将对这两种方法进行比较,探讨它们的异同点及优缺点,帮助读者更好地了解这两种方法的应用。
一、回归分析回归分析是建立现象之间关系的一种方法,常用于探究因变量与自变量之间的关系并进行预测。
因变量与自变量可以是各种类型的数据,包括连续型数据、二元数据、分类型数据等。
回归分析通过拟合一条或多条线来描述自变量和因变量之间的关系,建立一个可供预测的模型。
1.1回归模型回归模型是一种使因变量与自变量之间关系得以表达的数学表达式。
常见的回归模型有线性回归模型、多元线性回归模型、非线性回归模型等。
线性回归模型是回归分析中最基本的模型,它适用于解释自变量与因变量之间的线性关系。
1.2回归分析的优缺点回归分析的优点:(1)建模简单:回归模型能够很方便地被拟合和测试。
(2)适用范围广:回归模型适用于解释各种不同形式的数据。
(3)对噪声有一定的容忍度:回归模型能够适应一定程度的噪声,对于一些小扰动的影响不是非常敏感。
回归分析的缺点:(1)某些预测结果可能会过分依赖于特征变量,导致模型参数不稳定。
(2)模型可能存在过拟合问题,导致模型泛化能力弱。
(3)偏离数据分布过远的点对模型参数影响很大,对异常点的容忍度不高。
二、时间序列分析时间序列分析是一种统计分析方法,用于研究序列随时间变化的规律和趋势。
时间序列假设是一个随机过程,其中各成分随时间变化而变化。
时间序列分析能够对时间序列进行长期预测以及对因素贡献进行分析。
2.1时间序列模型时间序列建模要考虑数据序列的性质,因此在时间序列分析中建模方法也因序列的性质而异。
常用的时间序列模型有AR模型、MA模型、ARMA模型、ARIMA模型、SARIMA模型等。
通过时间序列模型的参数拟合,可以分析和提取出时间序列中的主要成分,并进行预测分析。
1 / 8 1.1时间序列定义: 时间序列是指将某种现象某一个统计指标在不同时间上的各个数值,按时间先后顺序排列而形成的序列. 构成要素:现象所属的时间,反映现象发展水平的指标数值.要素一:时间t;要素二:指标数值。 1.2时间序列的成分: 一个时间序列中往往由几种成分组成,通常假定是四种独立的成分——趋势T、循环C、季节S和不规则I。 T 趋势通常是长期因素影响的结果,如人口总量的变化、方法的变化等。 C任何时间间隔超过一年的,环绕趋势线的上、下波动,都可归结为时间序列的循环成分。 S许多时间序列往往显示出在一年内有规则的运动,这通常由季节因素引起,因此称为季节成分。目前,可以称之为“季节性的周期”,年或者季节或者月份。 I时间序列的不规则成分是剩余的因素,它用来说明在分离了趋势、循环和季节成分后,时间序列值的偏差。不规则成分是由那些影响时间序列的短期的、不可预期的和不重复出现的因素引起的。它是随机的、无法预测的。 四个组成部分与观测值的关系可以用乘法模型或者加法模型或者综合。 1.3预测方法的选择与评估 方法P216 三种预测方法:移动平均法、加权移动平均法和指数平滑法。因为每一种方法的都是要“消除”由时间序列的不规则成分所引起的随机波动,所以它们被称为平滑方法。平滑方法对稳定的时间序列——即没有明显的趋势、循环和季节影响的时间序列——是合适的,这时平滑方法很适应时间序列的水平变化。但当有明显的趋势、循环和季节变差时,平滑方法将不能很好地起作用。 移动平均法使用时间序列中最近几个时期数据值的平均数作为下一个时期的预测值。移动平均数的计算公式如下:
指数平滑法模型: 式中Ft+1——t+1期时间序列的预测值; Yt——t期时间序列的实际值; Ft——t期时间序列的预测值; α——平滑常数(0≤α≤1)。
均方误差是常用的(MSE) 标准误差定义为各测量值误差的平方和的平均值的平方根。 设n个测量值的误差为ε1、ε2……εn,则这组测量值的标准误差σ等于: 2 / 8
数理统计中均方误差是指参数估计值与参数真值之差平方的期望值,记为MSE。MSE是衡量“平均误差”的一种较方便的方法,MSE可以评价数据的变化程度,MSE的值越小,说明预测模型描述实验数据具有更好的精确度。与此相对应的,还有均方根误差RMSE、平均绝对百分误差等等。
时间序列平稳性的定义 假定某个时间序列由某一随机过程(stochastic process)生成,即假定时间序列{Xt}(t=1, 2, …)的每一个数值都是从一个概率分布中随机得到的。如果经由该随机过程所生成的时间序列满足下列条件: 均值E(Xt)=m是与时间t 无关的常数; 方差Var(Xt)=s^2是与时间t 无关的常数; 协方差Cov(Xt,Xt+k)=gk 是只与时期间隔k有关,与时间t 无关的常数; 则称经由该随机过程而生成的时间序列是(弱)平稳的(stationary)。该随机过程便是一个平稳的随机过程(stationary stochastic process)。 例如,白噪声(white noise)过程就是平稳的: Xt=ut , ut~IIN(0,s^2) 因为它的均值为常数零;方差为常数s^2;所有时间间隔的协方差均为零。 但随机游走(random walk)过程是非平稳的: Xt=Xt-1+ut , ut~IIN(0,s^2), 因为尽管其均值为常数E(Xt)=E(Xt-1),但其方差Var(Xt)=ts^2非常数。 不过,若令DXt=Xt-Xt-1,则随机游走过程的一阶差分(first difference)是平稳的: DXt=Xt-Xt-1=ut ,ut~IIN(0,s^2) 一般地,在经济系统中,一个非平稳的时间序列通常均可通过差分变换的方法转换成为平稳序列。 3 / 8
指数平滑法有几种不同形式:一次指数平滑法针对没有趋势和季节性的序列,二次指数平滑法针对有趋势但 没有季节性的序列。术语“Holt-Winters法”有时特指三次指数平滑法。 所有的指数平滑法都要更新上一时间步长的计算结果,并使用当前时间步长的数据中包含的新信息。它们通过“混合”新信息和旧信息来实现,而相关的新旧信息的权重由一个可调整的拌和参数来控制。各种方法的不同之处在于它们跟踪的量的个数和对应的拌和参数的个数。 一次指数平滑法的递推关系特别简单:
其中, 是时间步长i上经过平滑后的值, 是这个时间步长上的实际(未平滑的)数据。你可以看到 是怎么由原始数据和上一时间步长的平滑值 混合而成的。拌和参数 可以是0和1之间的任意值,它控制着新旧信息之间的平衡:当 接近1时,我们就只保留当前数据点(即完全没有对序列进行平滑);当 接近0时,我们就只保留前面的平滑值(也就是说整个曲线都是平的)。 为何这个方法被称为“指数”平滑法?要找出答案,展开它的递推关系式即可知道:
从这里可以看出,在指数平滑法中,所有先前的观测值都对当前平滑值产生了影响,但它们所起的作用随着参数 的幂的增大而逐渐减小。那些相对较早的观测值所起的作用相对较小,这也就是指数变动形态所表现出来的特性。从某种程度上来说,指数平滑法就像是拥有
无限记 忆且权值呈指数级递减的移动平均法。(同时也要注意到所有权值的和,
等于1,因为当q<1 时,几何序列 。参见附录B的几何序列方面的信息。) 一次指数平滑所得的计算结果可以在数据集范围之外进行扩展,因此也就可以用来进行预测。预测也非常简单:
其中, 是最后一个已经算出来的值。也就是说,一次指数平滑法得出的预测在任何时候都是一条直线。 刚刚描述的一次指数平滑法适用于没有总体趋势的时间序列。如果用来处理有总体趋势的序列,平滑值将往往滞后于原始数据,除非 的值接近1,但这样一来就会造成不够平滑。 二次指数平滑法保留了趋势的详细信息,从而改正了这个缺点。换句话说,我们保留并更新两个量的状态:平滑后的信号和平滑后的趋势。它有两个等式和两个拌合参数:
我们先看看第二个等式。这个等式描述了平滑后的趋势。当前趋势的未平滑“值”是当前平滑值和上一个平滑值的差;也就是说,当前趋势告诉我们在上一个 时间步长里平滑信号改变4 / 8
了多少。要想使趋势平滑,我们用一次指数平滑法对趋势进行处理,并使用拌合参数 。为获得平滑信号,我们像上次那样进行一次混合,但要同时考虑到上一个平滑信号及趋势。第一个等式的最后那个项可以对当前平滑信号进行估计——假设在单个 时间步长里我们保持着上一个趋势。 若要利用该计算结果进行预测,我们就取最后那个平滑值,然后每增加一个时间步长,就在该平滑值上增加一次最后那个平滑趋势:
最后,我们给三次指数平滑法添加第三个量,用来描述季节性。我们有必要区分一下累加式和累乘式季节性,累加式对应的等式:
累乘式的等式:
其中,pi 是指“周期性”部分, 是这个周期的长度。前面的等式中也包含预测的等式。 所有的指数平滑方法都是基于递推关系的,这表明我们要先设定初始值才能使用它们。选择什么样的初始值并不特别重要:指数式衰减规律说明所有的指数平滑方法的“记忆”能力都是很短的,只需经过几个时间步长,初始值的影响就会变得微乎其微。一些合理的初始值:
且
对三次指数平滑法而言,我们必须初始化一个完整的“季节”的值,不过我们可以简单地设置为全1(针对累乘式)或全0(针对累加式)。只有当序列的长度较短时,我们才需要慎重考虑初始值的选取。 最后一个问题是如何选择拌合参数。 我的建议是反复试验。先试试0.2和0.4之间的几个值(非常粗略地),然后看看会得到什么结果。或者也可以为(实际数据和平滑算法的结果之间的)误差定 义一个标准,再使用一个数值优化过程来将误差最小化。就我的经验而言,一般没有必要弄得这么麻烦,原因至少有两个:数值优化是一个不能保证收敛的迭代过 程,最终你可能还需要花非常多时间将算法设计成收敛的。此外,任何这样的数值优化都受限于你选对误差进行最小化的表达式。问题是使误差最小化的参数值可能 并不能满足在解决方案中你想要看到的其他特性(也就是近似值的精确性和结果曲线的平滑程度之间的5 / 8
平衡),那么,到最后你才会发现,手动的计算方法往往更 好。不过,如果你要预测很多序列,花些精力构建一个能自动决定最优参数值的系统也是值得的,但要实现这个系统恐怕也并不容易。 最后,我想用一个例子来展示我们想从指数平滑法得到的结果。下图是一个经典的数据集,它显示的是每个月国际航班的旅客数量(单位:千人) 。该图显示了实际数据和三次指数近似值。1949—1957年用来“训练”生成它的算法,而1958—1960年都是预测数值。注意,这里的预测值与实际 数据相当接近——特别是它强烈的季节形态——持续了一段如此长的预测时段(整整三年!)。对于像这样简单的方法来说,是很不错的。
时间序列挖掘-预测算法-三次指数平滑法(Holt-Winters) 在时间序列中,我们需要基于该时间序列当前已有的数据来预测其在之后的走势,三次指数平滑(Triple/Three Order Exponential Smoothing,Holt-Winters)算法可以很好的进行时间序列的预测。 时间序列数据一般有以下几种特点:1.趋势(Trend) 2. 季节性(Seasonality)。 趋势描述的是时间序列的整体走势,比如总体上升或者总体下降。下图所示的时间序列是总体上升的:
季节性描述的是数据的周期性波动,比如以年或者周为周期,如下图: