精华内容
下载资源
问答
  • 常见的预测方法主要有
    万次阅读
    2020-11-06 14:43:18

    预测性分析及常用的预测方法

    预测的目的

    数据分析最重要的目的就是从数据中寻找规律,找到能够指导我们未来实践的原则和方法,是产生智慧的主要途径。所以预测分析是数据分析的终极目的。虽然数据分析承担了很多功能,但是预测才是最为关键的,所以掌握数据分析和挖掘的预测方法才是数据分析师的看家本领。

    预测包括现象的预测和规律的预测。自然科学的本质上也是对事物的属性、本质和规律的预测。有了对事物的认知和对规律的掌握,我们就能够创造出更多的东西。商业也是如此,我们能够知道影响销售的因素,并能够掌握这些因素的数据,就能够对市场做出精准的预测,从而指导我们商业的决策,做到稳定的发展。但事物具有复杂性,我们无法掌握所有的信息,更无法轻易掌握所有的规律。

    随着大数据、物联网等技术的快速发展和应用,我们会拥有越来越多的数据,在这些数据上通过各种分析技术,我们就能够加工出越来越多的“智慧”,从而就能够知道我们的实践,而我们对未来的预测越来越精准,越来越有效。

    人们总是把数据分析师想象的过于美好,认为做大数据的人能够上知天文,下晓地理,能够准确的预测未来。人类掌握了一些基本的事物发展规律,对人类大脑、情感、心里的认知也逐步深入,但是我们对这些学科的掌握程度还远远达不到准确的预测未来的程度,至少现在还是没有这个能力,未来可能会有。

    我们经常说“以史为鉴”其实就是研究事物发展的历史,为我们研究新的事物做出指导,让我们对未来的事物有更远一点的估计。

    预测的必要性

    事物是复杂的,我们对事物的认知是有限的,正因为如此,事物在发展的过程中会发生超越我们预期的偶然时间和随机时间,我们把这些叫做误差,误差是必然存在的。随着我们对事物的认知越清楚,掌握的信息数据越完善,这个误差就睡越小,偶然时间就会越少。预测不准确的正常的,我们不能因为预测不准确而放弃对事物的预测,掌握未来发展是人类的本能,也是人类进化的动力。

    我们现在出行是,我们会根据地图应用提供的交通流量信息,选择不堵车最近的线路,这是一个典型的应用场景,把大数据当做平台和基础设施的应用场景。未来会有越来越多的这种应用场景,这就是预测在我们的日常生活中,影响着我们的日常生活。

    预测方法;

    1.经验预测法

    经验预测法是最为传统的预测法。如果我们有了丰富的生活阅历和工作经验,那么我们对事物的判断就会更加准确,从而能够做出更加合理的决策。

    我们认为一个优秀的人才一般都在优秀的公司中,所以企业会更加看中应聘者是不是在优秀的公司中工作过,这些都是为了佐证应聘者拥有丰富的相关“经验”。所以优秀的公司,在人才招聘方面的成本越低。而越是一般的公司,用人成本越高——因为我们过度依赖经验来管理。

    经验预测法在生活、工作中有大量的应用实例。人们最容易用自己过去的经验做出判断,所以人们几乎每时每刻都在做经验预测。量化的经验预测是一种数据化的方法。单纯依靠少数人的预测往往风险很高,因为我们每个人的生活经历都是有限的,并且看问题的视角也是有限的,所以对于重大决策,在没有其他更好的方法可以预测是,需要让更多的人一起利用经验来预测,这个方法被称为德尔菲法。

    德尔菲法是通过召集专家开会、通过集体讨论、得出一致预测意见的专家会议法既有联系又有区别。是一种专家预测方法。

    德尔菲法能发挥专家会议法的优点,即能充分发挥各位专家的作用,集思广益,准确性高。能把各位专家意见的分歧点表达出来,取各家之长,避各家之短。同时,德尔菲法又能避免专家会议法的缺点:权威人士的意见影响他人的意见;有些专家碍于情面,不愿意发表与其他人不同的意见;出于自尊心而不愿意修改自己原来不全面的意见。

    德尔菲法的主要缺点是:缺少思想沟通交流,可能存在一定的主观片面性;易忽视少数人的意见,可能导致预测的结果偏离实际;存在组织者主观影响

    2.类比预测法

    事物有很多的相似性,事物发展的规律也有相似性。例如人的成长历程,环境相同,人的成长历程也会有相近之处。当我们“阅人无数”后,基本上能够判断这个人是一个什么样的人。另外,人的行为习惯和思维习惯都有一致性,虽然会发生剧烈的变化,但在大多数情况下都是可以预测的。我们可以根据一个人对一件事情的反应,找到这个人的行为模式,从而预测其未来的行为模式,这就是类比预测法。

    人的行为模式的背后是人的心智模式。无论是九型人格学说还是MBTI的人格测试,其背后都是通过评测人的心智模式来预测人的行为模式,从而为人们找到一个比较好的事业发展规划。通过研究大量人员的行为模式,为个人以后的发展做出知道,这种方式的本质就是类比。

    通过一个行业的发展来类比另一个行业的发展,能够给我们很多的启发。例如智能手机取代了功能手机,苹果打败了诺基亚和摩托罗拉,成为智能手机的领导者。根据智能手机行业的发展规律,我们可以预测未来智能汽车的发展规律,特斯拉的创新性的智能汽车,不止单纯的电动汽车,如果不出意外,特斯拉很可能会彻底颠覆驱车行业,那些原有的行业大佬在未来短短的几年就会重新洗牌。

    就像智能手机一样,我们有理由相信智能汽车早晚会代替现在的功能性汽车。智能设备,智能家具,智能…都是不可逆的一种潮流,代表人类发展的趋势和规律。

    手机行业中,消费者的更换周期为2-3年,所以智能手机在2-3年就颠覆了手机行业原有的潮流。在城市中,消费这更换汽车的周期为5-7年,运用类比的方法,未来的5-7年就是智能手机慢慢取代原有汽车行业。取代是一个缓慢且顺应时代的产物,取代的周期就是消费者的一个更换周期。

    标杆研究也是一种类比的方法,可以通过研究标杆企业的做法借鉴其经营和管理的决策。如果一家公司采用某种管理模式成功解决了一类问题,那么我们也可以采用同样的方法来解决类似的问题。所以当我们对于某些管理问题找不到方法的时候,做简单有效的方法就是寻找标杆企业的做法。学会站在巨人的肩膀上看待问题。

    类比法也有局限性,主要的局限在于类的可比性。类比的本质含义就是同类的或者相近类别之间的对比,如果不具有可比性,则类比的预测就会出现问题。当然,没有两个事物是完全相同的,也没有相同的历史和未来,我们还需要在不同类别中寻找共同点,在这个共同点上找到差异,例如:智能手机用了2年就颠覆了手机行业,那是因为消费者更换手机的周期比较短。汽车行业就不适用这个周期,因为消费者更换汽车的周期要比手机的更换周期长的多。

    所以,我们类比的过程中,我们要思考可比的基础是什么,从而做出预测,对结论进行修订,确保预测的合理性和准确性,并在以后的过程中反思忽略了哪些重要因素,以后在进行预测时,还需要考虑哪些因素。

    3.惯性时间预测法

    惯性预测法是根据事物发展的惯性进行预测,其中最典型的就是趋势分析。炒股的人除了要看基本的股值点数外,还要看趋势线,并根据趋势线来判断什么地方时拐点。

    本质上,惯性只存在于信息不对称的领域,在信息足够对称的情况下,大家转向的风向一致,那么股票价格就不会有这样的波动图形。在信息不够对称的环境下,以信息谋取利润的行业就会有更多的暴力。如果信息已经充分对称了,那么以信息谋取利润的行业就会消失。未来商品的价格会越来越透明,根据信息不对称来销售商品的公司会倒闭。

    时间序列分析模型是最典型的惯性分析法,其本质就是探寻一个事物的数量化指标随时间变化的规律。如果事物完全按照时间顺序发展,则一定会按照一定的规律继续发展下去,如果是向上的趋势,就会继续向上发展;如果是向下的趋势,就会继续向下发展;如果存在周期性,就会按照周期性的规律发展;如果具有循环往复的特征,就会按照循环往复的特征发展下去

    从上面的描述中可以看出时间序列模型最本质的局限;忽略了现在的变化影响因素。即如果事物过去都是向上发展的,则时间序列认为事物还会继续向上发展,但是因为某些因素的原因,出现了下滑,则这个因素不予考虑,会认为是误差或者受随机因素的影响。

    时间序列模型有多种类型,这些类型的分类是从事物变化是否具有规律性来评价的。如果事物的变化很有规律性,而随机影响较小,则可以通过惯性预测法对事物的变化进行预测;如果事物变化是有规律的,但是噪声过大,容易掩盖事物自身的规律,这个时候惯性预测法就不太使用了。噪声的大小是我们是否可以使用惯性预测法来预测的非常重要的因素,噪声大,规律就容易被掩盖,噪声小,我们可以通过趋势来发现事物的规律。

    我们对事物变化规律的认知其实是有限的。一般来说,再利用惯性发探测事物变化规律时,我们能够掌握三种变化规律的探测,分别是季节性、周期性、趋势性。季节性是与时间变化有关系的变化规律。周期性是与变量取值有关系的,盛极而衰,触底反弹。趋势性是随时间呈增长或者下降的趋势,这个趋势可能线性的,也可能是幂级增长或者指数增长。

    4.逻辑关系预测法

    逻辑关系预测法从预测的角度来看是最简单的方法,但从算法探索的角度来看则是最难得方法。两个事物为什么会相关,其背后逻辑是什么,一直困扰着数据分析师。

    沃尔玛的“纸尿裤和啤酒”的事件,让我们觉得纸尿裤和啤酒的销售量有较大的相关性。但是这个相关性能否站的住脚,是否有足够的逻辑解释,是否在任何情况都适用,还是需要数据的支持,没有数据的完美论证。

    在逻辑关系方面,我们可以用各种模型来解读数据,需要不断尝试才能找到一个最佳的逻辑关系。有些逻辑关系只在特殊的情景下才成立,而在其他的情境下就不会成立。逻辑关系的数学模型不是一成不变的,他会随时间、市场状况的变化而变化。

    每个逻辑规律都有其成立的条件。在广告投放初期构建的模型,不见得适合中期和后期;品牌的知名度较低的时候,广告与销售额的关系会被弱化,边际效应显现。当公司的品牌已经非常强大的时候,广告本应该承担一个提醒功能,这个时候如果还是采用说服式广告就非常不妥了,消费者会觉得这是“忽悠”,其自我保护机制显现,导致一些负面的成绩。

    5.比例预测法

    比例是一个数学术语,在数学中,如果一个变量的变化总是伴随着另一个变量的变化,则两个变量是成比例的。我们的日常生活中处处充满着比例。例如:奶茶中奶和茶的比例可以带来不一样的口感,混凝土中砂石、水泥、水的比例,会呈现不同的强度。

    运用比例预测法,其实就是针对以往的数据,对其进行分类汇总整理后,对未来的数据按照一定的比例进行预测,这种比例就是通过以往的数据总结出来的比例。人的行为方式、兴趣爱好在短时间是不会发生较大的变化,我们的预测其实就是在预测人的行为方式和思维,这也就是为什么可以使用比例预测法的原因,因为人的行为方式、兴趣爱好不会轻易改变。

    小编喜欢吃鸡肉,可能再不出现较大的事情之前,这点爱好是不会改变的,通过一段时间的数据收集、汇总、分析。就能够预测出未来的一段时间吃鸡肉的这个概率。一个人的行为方式可能会受到外界因素的影响,可能预测的准确率不会太高。但是如果换做是分析几万,几十万或者更多的人的行为方式兴趣爱好进行整理汇总,在进行预测性分析,那么准确率就会很稳定。

    比例预测法的重点就是在无特殊情况下的一种状态下的预测,例如:一家大型购物中心,前5个月的会员销售占比为50%,那么在第六个月的会员销售占比也会是在50%左右。前5个月的周一到周五的日均销售额为100万,周六周日的日均销售是200万。那么我们可以根据本月工作日和双休日的天数,预测出这个月的一个销售额。

    商业中有一个重要的比例;【10:6:3:1】。讲的是,在每10个顾客中,会有6个人会感兴趣,其中3个人会购买,最终会有1个人进行复购。这个比例在很多销售行业都很适用。这也就是为什么到了一定的节假日,各大商场购物中心花重金进行宣传营销,目的是为了提高10这个基数,基数上升了,最终的3和1也就自然多了。

    比例预测法也有其局限性,比例预测法成立的前提是需要有大量的数据源,但是当数据较少的情况下,比例预测法就没有效果,反而会误导我们的决策。

    更多相关内容
  • 目前常用的负荷预测方法主要是通过负荷自身和相关关系的研究建立模型,提出一种新的负荷预测思路,即从传统频域预测方法的误差入手,通过研究虚拟预测误差的历史分布规律进行误差预测,然后对传统方法得到的预测结果...
  • 预测方法除主观判断方法外,主要有单变量方法和多变量方法。单变量方法在实际中使用最多,主要涉及分数差分模型、结构模型、贝叶斯预测方法。多元回归方法仍是最常用的多变量预测方法,但对经济时间序列拟合多元回归...
  • 针对煤矿生产过程中的水、火、瓦斯、顶板和煤尘等主要安全风险,对煤矿瓦斯涌出与瓦斯突出风险、顶板塌落风险、底板突水风险、矿井煤层自燃风险以及矿井煤尘爆炸风险等煤矿生产风险常用预测方法进行综述,研究了不同...
  • 时间序列预测方法

    千次阅读 2022-01-03 20:55:13
    之前一直在看时间序列预测方法的文献,最近终于有点头绪了,然后就花了些时间来做一下整理。时间序列预测方法可分为传统的,基于机器学习的和基于深度学习的,以下每一方面都列举了几个比较经典的模型算法。

            之前一直在看时间序列预测方法的文献,最近终于有点头绪了,然后就花了些时间来做一下整理。时间序列预测方法可分为传统的,基于机器学习的和基于深度学习的,以下每一方面都列举了几个比较经典的模型算法。


    目录

    1 背景

    2 传统的时间序列预测方法

             2.1 ARIMA

    2.2 Holt

    2.3 Facebook Prophet

    3 基于机器学习的时间序列预测方法

    3.1 支持向量机(SVM)

    3.2 贝叶斯网络(BN)

    3.3 矩阵分解(MF)

    3.4 高斯过程(GP)

    4 基于深度学习的时间序列预测方法

    4.1 长短期记忆网络(LSTM)

    4.2 Transformer

    4.3 Informer

    5 总结

    参考文献


    1 背景

            现实生活中,农业、商业、气象、军事和医疗等领域每天都会产生大量的数据。例如,金融领域股票价格随时间的走势,电商行业每日的销售额,旅游行业随着节假日周期变化的机票酒店价格等。

            我们称这种不同时间收到的,描述一个或多种特征随着时间发生变化的数据,为时间序列数据(Time Series Data)。

            通俗地说,时间序列是按照时间排序的一组随机变量,它通常是在相等间隔的时间段内,依照给定的采样率对某种潜在过程进行观测的结果。时间序列数据通常是一系列实值型数据,用X_1,X_2,X_3,\cdot \cdot \cdot ,X_t,X_t \in R(t \in Z) 表示时间。

            总之,目前时间序列数据正以不可预测的速度几乎产生于现实生活中的每一个应用领域。

            时间序列数据的研究方法主要包括分类、聚类和回归预测等方面,本文重点讨论时间序列预测方法。现实生活中的时间序列数据预测问题有很多,包括语音分析、噪声消除、商品销售、气象研究以及股票市场的分析等,其本质主要就是通过一种或者多种维度的数据本身内在与时间的关联特性,利用历史的数据挖掘出这种规律并对未来做出预测这么一件事情。

            本文主要介绍时间序列预测方法,第2节主要描述传统的时间序列预测方法,第3节主要介绍基于机器学习的时间序列预测方法,第4节主要介绍基于深度学习的时间序列预测方法,最后总结全文。

    2 传统的时间序列预测方法

            传统的时间序列预测方法主要是针对具体数据,设计数学(形态函数)模型,捕捉时序特征规律完成预测工作。其预测的针对性强,鲁棒性好,可解释,但是学习自由度低,泛化性差。

    2.1 ARIMA

            ARIMA模型也被称为 Box-Jenkins 模型,是由Box和Jenkins提出的一著名时间序列预测方法,它是差分自回归滑动平均模型(Auto-Regressive Integrated Moving Averages)的首字母缩写。主要应用于单变量、同方差场合的线性模型。该模型可以处理非平稳序列,主要思想是先对非平稳序列进行差分,使之变为平稳序列,然后再用ARMA模型来拟合差分后的序列。

            ARIMA模型有三个主要参数:

            Number of AR (Auto-Regressive) terms (p): 现在点使用多少个过往数据计算。AR条件仅仅是因变量的滞后。如:如果P等于5,那么预测x(t)将是x(t-1)…x(t-5)。

            Number of MA (Moving Average) terms (q):使用多少个过往的残余错误值。MA条件是预测方程的滞后预测错误。如:如果q等于5,预测x(t)将是e(t-1)…e(t-5),e(i)是移动平均叔在第i个瞬间和实际值的差值。

            Number of Differences (d):为时间序列成为平稳时所做的差分次数。有非季节性的差值,这种情况下我们采用一阶差分。

    2.2 Holt

            对于没有明显趋势或季节因素的数据,可以使用“简单指数平滑”(一次指数平滑,或一阶holt),直观理解就是离当前时间越近的历史值,影响越大。将简单指数平滑扩展至趋势性数据则是二次指数平滑,或二阶holt。Holt(1957)和 Winters(1960)则是将Holt方法进行拓展用来捕获季节因素,称为Holt-Winter模型(三次指数平滑,或三阶holt)。Holt-Winters季节性方法包括预测方程和三个平滑方程:一个用于水平,一个用于趋势,另一个用于季节性分量。然后以累加或累乘的方式叠加分量组成预测。

    2.3 Facebook Prophet

            Prophet 算法是基于时间序列分解和机器学习的拟合来做的,它最适用于具有强烈季节性影响和多个季节历史数据的时间序列。Prophet对缺失数据和趋势变化具有稳健性,并且通常可以很好地处理异常值。但是对于一些周期性或者趋势性不是很强的时间序列,用 Prophet 可能就不合适了。

    3 基于机器学习的时间序列预测方法

            近年来时间序列预测方法,多采用机器学习方式。机器学习的方法,主要是构建样本数据集,采用“时间特征”到“样本值”的方式,通过监督学习,学习特征与标签之前的关联关系,从而实现时间序列预测。

            这些方法学习自由度高,可有效引入协变量影响因素,精度高,鲁棒性好。但是特征工程费时费力且依赖专家经验,外加复杂度高。

    3.1 支持向量机(SVM)

            支持向量机(Support Vector Machine, SVM)是以统计学习理论为基础的机器学习方法,其主要以VC维理论和结构风险最小化原理为基础,同时也是建立在几何距离基础上的首个学习算法。支持向量机坚实的理论基础保证了其在解决小样本、高维数据和非线性问题方面展现出特有的优势。

    3.2 贝叶斯网络(BN)

            贝叶斯网络(Bayesian Network,BN)本质上是一个有向无环图,使用概率网络进行不确定性推理。这个有向无环图中的节点表示随机变量,节点之间的有向弧代表变量之间的直接依赖关系。利用贝叶斯网络进行时间序列预测工作,主要是针对给定数据集学习出贝叶斯网络结构,这部分工作是构建整个预测模型的基础,其目的就是找出一个最适合数据的网络结构。

    3.3 矩阵分解(MF)

            矩阵分解(Matrix Factorization,MF)也是机器学习中的一项重要工作,其在协同过滤、协作排序和社会网络分析等领域都发挥了重要作用。MF本质就是针对原始矩阵找出两个小规模矩阵,使得这两个小矩阵的乘积最大程度地近似拟合原始矩阵。高维时间序列的表示可以采用矩阵形式,其每一列对应的是时间点,每一行对应的是一维的时间序列特征。

            MF在处理拥有缺失数据的时间序列数据预测中取得了很好的效果。网络流量数据本质上是一个时间序列数据,其中存在缺失值的情况特别常见。

    3.4 高斯过程(GP)

            高斯过程(Gauss Process,GP)最早于20世纪90年代末被提出。在2006年,Rasmussen和Williams在Gaussian Processes for Machine Learning一书中从机器学习核方法角度对高斯过程重新加以阐述,并对回归和分类两类问题做了系统的理论和数值实验分析。核函数的采用保证了高斯过程具有很强的处理非线性问题的能力,其还具有其他很多优点。高斯过程通常也可以被看作是一个采用概率分布进行描述的正态随机过程,可以对复杂的时变非参数函数进行通用简易求解,具有很灵活的非参数性质,能够对时间序列数据进行有效的估计。

    4 基于深度学习的时间序列预测方法

    4.1 长短期记忆网络(LSTM)

            长期以来,隐变量模型存在着长期信息保存和短期输入缺失的问题。解决这一问题的最早方法之一是长短期存储器(long short-term memory,LSTM)。它有许多与门控循环单元(GRU)一样的属性。

            可以说,长短期记忆网络的设计灵感来自于计算机的逻辑门。长短期记忆网络引入了记忆元(memory cell),或简称为单元(cell)。有些文献认为记忆元是隐状态的一种特殊类型,它们与隐状态具有相同的形状,其设计目的是用于记录附加的信息。 为了控制记忆元,我们需要许多门。其中一个门用来从单元中输出条目,我们将其称为输出门(output gate)。另外一个门用来决定何时将数据读入单元,我们将其称为输入门(input gate)。我们还需要一种机制来重置单元的内容,由遗忘门(forget gate)来管理,这种设计的动机与门控循环单元相同,能够通过专用机制决定什么时候记忆或忽略隐状态中的输入。

    4.2 Transformer

            Transformer模型完全基于注意力机制,没有任何卷积层或循环神经网络层。尽管transformer最初是应用于在文本数据上的序列到序列学习,但现在已经推广到各种现代的深度学习中,例如语言、视觉、语音和强化学习领域。

            Transformer作为编码器-解码器架构的一个实例,其整体架构图在图4.2中展示。正如所见到的,transformer是由编码器和解码器组成的。与基于Bahdanau注意力实现的序列到序列的学习相比,transformer的编码器和解码器是基于自注意力的模块叠加而成的,源(输入)序列和目标(输出)序列的嵌入(embedding)表示将加上位置编码(positional encoding),再分别输入到编码器和解码器中。

    4.3 Informer

            Transformer模型具有提高预测能力的潜力。但是,Transformer存在几个问题,使其无法直接应用于长时间序列预测问题,如二次时间复杂度、高内存使用率和编码器-解码器架构的固有限制。

            Informer模型则是为了解决这些问题而设计出来的。Informer基于Transformer模型,它具有三个独特的特点:(1) ProbSparse Self-attention机制,在时间复杂度和内存开销上实现了O(LlogL) ,并且在序列依赖关系对齐上具有相当的性能;(2)自注意力蒸馏机制,通过将层级输入减半来突出主导注意力,并高效处理极端长的输入序列;(3)生成式解码器,虽然其在概念上简单,但它能够以一次前向操作而不是分步操作的方式预测长时序序列,极大地提高了长序列预测的推理速度。

            上图是Informer模型整体框架图。图中左边的结构是编码器Encoder,其能接受长序列输入(绿色序列)。Encoder采用了自注意力蒸馏机制(蓝色梯形),通过将层级输入减半,来提取主导的注意力,并大幅减少网络规模;同时我们在Encoder中用ProbSparse self-attention替换掉了原始的self-attention,提高长序列处理的性能。图中右边的结构是解码器Decoder,其同样能接受长序列输入,并将需要预测的目标元素填充为零,通过将需要预测的该全零序列也作为特征图的加权注意力组成部分,用生成式的方式对预测序列(橙色序列)进行预测。

    5 总结

            时间序列预测方法虽然经历了很长时间的发展,但数据规模的急剧增长给传统的预测方法带来了严峻的挑战,也严重影响了预测方法的效率。利用深度学习的方法来进行时间序列数据预测成为新的趋势,这也为我们进一步的研究指明了方向。

    若有不合适的地方,欢迎来评论区补充、讨论~

    觉得有帮助的可以点赞支持一下哦~


    参考文献

    [1] 杨海民, 潘志松, 白玮. 时间序列预测方法综述[J]. 计算机科学, 2019, 46(1): 21-28.

    [2] VoidOc. 【时间序列】时间序列预测算法总结[EB/OL]. [2021-11-17]. https://zhuanlan.zhihu.com/p/421710621.

    [3] SuperZhang828. 时间序列分析发展史[EB/OL]. [2017-7-1]. https://www.cnblogs.com/super-zhang-828/p/7102931.html.

    [4] BOX G, JENKINS G. Time Series Analysis,Forecasting and Control[M]. HoldenGDay, 1990.

    [5] 钱魏Way. 时间序列预测之ARIMA[EB/OL]. [2020-10-02]. https://www.biaodianfu.com/arima.html.

    [6] 张戎. Facebook 时间序列预测算法 Prophet 的研究[EB/OL]. [2018-12-13]. https://zhuanlan.zhihu.com/p/52330017.

    [7] Hochreiter S, Jürgen Schmidhuber. Long short-term memory[J]. Neural Computation, 1997(9):1735-1780.

    [8] Zhang A, Li M, Lipton Z C, etal. Dive into deep learning[M]. 人民邮电出版社, 2019-6.

    [9] Vaswani A, Shazeer N, Parmar N, etal. Attention is All you Need[J]. Neural Information Processing Systems, 2017.

    [10] Zhou H, Zhang S, Peng J, etal. Informer: Beyond Efficient Transformer for Long Sequence Time-Series Forecasting[J]. National Conference on Artificial Intelligence, 2020.

    展开全文
  • 11种常见的时间序列预测方法

    千次阅读 2022-05-02 21:58:30
    11种常见的时间序列预测方法

    参考内容:4大类11种常见的时间序列预测方法总结和代码示例

    代码地址:
    https://github.com/SeafyLiang/machine_learning_study/blob/master/time_series

    本篇文章将总结时间序列预测方法,并将所有方法分类介绍并提供相应的python代码示例,以下是本文将要介绍的方法列表:

    1、使用平滑技术进行时间序列预测

    • 指数平滑
    • Holt-Winters 法

    2、单变量时间序列预测

    • 自回归 (AR)
    • 移动平均模型 (MA)
    • 自回归滑动平均模型 (ARMA)
    • 差分整合移动平均自回归模型 (ARIMA)
    • 季节性 ARIMA (SARIMA)

    3、外生变量的时间序列预测

    • 包含外生变量的SARIMAX (SARIMAX)
    • 具有外生回归量的向量自回归移动平均 (VARMAX)

    4、多元时间序列预测

    • 向量自回归 (VAR)
    • 向量自回归移动平均 (VARMA)

    下面我们对上面的方法一一进行介绍,并给出python的代码示例
    在这里插入图片描述

    1、指数平滑Exponential Smoothing

    指数平滑法是过去观测值的加权平均值,随着观测值变老,权重呈指数会衰减。换句话说,观察时间越近相关权重就越高。它可以快速生成可靠的预测,并且适用于广泛的时间序列。
    简单指数平滑:此方法适用于预测没有明确趋势或季节性模式的单变量时间序列数据。简单指数平滑法将下一个时间步建模为先前时间步的观测值的指数加权线性函数。
    它需要一个称为 alpha (a) 的参数,也称为平滑因子或平滑系数,它控制先前时间步长的观测值的影响呈指数衰减的速率,即控制权重减小的速率。a 通常设置为 0 和 1 之间的值。较大的值意味着模型主要关注最近的过去观察,而较小的值意味着在进行预测时会考虑更多的历史。简单指数平滑时间序列的简单数学解释如下所示:
    在这里插入图片描述

    # SES
    from statsmodels.tsa.holtwinters import SimpleExpSmoothing
    from random import random
    # contrived dataset
    data = [x + random() for x in range(1, 100)]
    # fit model
    model = SimpleExpSmoothing(data)
    model_fit = model.fit()
    # make prediction
    yhat = model_fit.predict(len(data), len(data))
    print(yhat)
    

    2、Holt-Winters 法

    在 1957 年初,Holt扩展了简单的指数平滑法,使它可以预测具有趋势的数据。这种被称为 Holt 线性趋势的方法包括一个预测方程和两个平滑方程(一个用于水平,一个用于趋势)以及相应的平滑参数 α 和 β。后来为了避免趋势模式无限重复,引入了阻尼趋势法,当需要预测许多序列时,它被证明是非常成功和最受欢迎的单个方法。除了两个平滑参数之外,它还包括一个称为阻尼参数 φ 的附加参数。
    一旦能够捕捉到趋势,Holt-Winters 法扩展了传统的Holt法来捕捉季节性。Holt-Winters 的季节性方法包括预测方程和三个平滑方程——一个用于水平,一个用于趋势,一个用于季节性分量,并具有相应的平滑参数 α、β 和 γ。
    此方法有两种变体,它们在季节性成分的性质上有所不同。当季节变化在整个系列中大致恒定时,首选加法方法,而当季节变化与系列水平成比例变化时,首选乘法方法。

    # HWES
    from statsmodels.tsa.holtwinters import ExponentialSmoothing
    from random import random
    # contrived dataset
    data = [x + random() for x in range(1, 100)]
    # fit model
    model = ExponentialSmoothing(data)
    model_fit = model.fit()
    # make prediction
    yhat = model_fit.predict(len(data), len(data))
    print(yhat)
    

    3、自回归 (AR)

    在 AR 模型中,我们使用变量过去值的线性组合来预测感兴趣的变量。术语自回归表明它是变量对自身的回归。AR模型的简单数学表示如下:
    在这里插入图片描述

    这里,εt 是白噪声。这类似于多元回归,但是使用 yt 的滞后值作为预测变量。我们将其称为 AR§ 模型,即 p 阶的自回归模型。

    #AR
    from statsmodels.tsa.ar_model import AutoReg
    from random import random
    # contrived dataset
    data = [x + random() for x in range(1, 100)]
    # fit model
    model = AutoReg(data, lags=1)
    model_fit = model.fit()
    # make prediction
    yhat = model_fit.predict(len(data), len(data))
    print(yhat)
    

    4、移动平均模型(MA)

    与在回归中使用预测变量的过去值的 AR 模型不同,MA 模型在类似回归的模型中关注过去的预测误差或残差。MA模型的简单数学表示如下:
    在这里插入图片描述

    这里,εt 是白噪声。我们将其称为 MA(q) 模型,即 q 阶移动平均模型。

    # MA
    from statsmodels.tsa.arima.model import ARIMA
    from random import random
    # contrived dataset
    data = [x + random() for x in range(1, 100)]
    # fit model
    model = ARIMA(data, order=(0, 0, 1))
    model_fit = model.fit()
    # make prediction
    yhat = model_fit.predict(len(data), len(data))
    print(yhat)
    

    需要说明的是不应将这里说的移动平均线方法与计算时间序列的移动平均线混淆,因为两者是不同的概念。

    5、自回归滑动平均模型 (ARMA)

    在 AR 模型中,我们使用变量过去值与过去预测误差或残差的线性组合来预测感兴趣的变量。它结合了自回归 (AR) 和移动平均 (MA) 模型。
    AR 部分涉及对变量自身的滞后(即过去)值进行回归。MA部分涉及将误差项建模为在过去不同时间同时发生的误差项的线性组合。模型的符号涉及将 AR§ 和 MA(q) 模型的顺序指定为 ARMA 函数的参数,例如 ARMA(p,q)。ARMA 模型的简单数学表示如下所示:
    在这里插入图片描述

    # ARMA 
    from statsmodels.tsa.arima.model import ARIMA
    from random import random
    # contrived dataset
    data = [random() for x in range(1, 100)]
    # fit model
    model = ARIMA(data, order=(2, 0, 1))
    model_fit = model.fit()
    # make prediction
    yhat = model_fit.predict(len(data), len(data))
    print(yhat)
    

    6、差分整合移动平均自回归模型 (ARIMA)

    如果我们将差分与自回归和移动平均模型相结合,我们将获得 ARIMA 模型。ARIMA 是差分整合移动平均自回归模型Autoregressive Integrated Moving Average model 的首字母缩写。它结合了自回归 (AR) 和移动平均模型 (MA) 以及为了使序列平稳而对序列的差分预处理过程,这个过程称为积分(I)。ARIMA 模型的简单数学表示如下:
    在这里插入图片描述

    其中 y′t 是差分级数。右侧的“预测变量”包括滞后值和滞后误差。我们称之为 ARIMA(p,d,q) 模型。

    这里,p 是自回归部分的阶数,d 是所涉及的一阶差分程度,q 是移动平均部分的阶数。
    ACF 和 PACF 图在求 p 和 q 阶中的意义:

    • 为了找到 AR§ 模型的阶 p:我们预计 ACF 图会逐渐减小,同时 PACF 在 p 显著滞后后会急剧下降或切断。
    • 为了找到 MA(q) 模型的阶 p:我们预计 PACF 图将逐渐减小,同时 ACF 应该在某些 q 显著滞后后急剧下降或切断。
    # ARIMA 
    from statsmodels.tsa.arima.model import ARIMA
    from random import random
    # contrived dataset
    data = [x + random() for x in range(1, 100)]
    # fit model
    model = ARIMA(data, order=(1, 1, 1))
    model_fit = model.fit()
    # make prediction
    yhat = model_fit.predict(len(data), len(data), typ='levels')
    print(yhat)
    

    7、季节性 ARIMA (SARIMA)

    ARIMA 模型还能够对广泛的季节性数据进行建模。季节性 ARIMA 模型是通过在 ARIMA 模型中包含额外的季节性项来形成的。
    在这里插入图片描述

    这里,m = 每个时间季节的步数。我们对模型的季节性部分使用大写符号,对模型的非季节性部分使用小写符号。

    它将 ARIMA 模型与在季节性数据级别执行相同的自回归、差分和移动平均建模的能力相结合。

    # SARIMA 
    from statsmodels.tsa.statespace.sarimax import SARIMAX
    from random import random
    # contrived dataset
    data = [x + random() for x in range(1, 100)]
    # fit model
    model = SARIMAX(data, order=(1, 1, 1), seasonal_order=(0, 0, 0, 0))
    model_fit = model.fit(disp=False)
    # make prediction
    yhat = model_fit.predict(len(data), len(data))
    print(yhat)
    

    8、包含外生变量的SARIMA (SARIMAX)

    SARIMAX 模型是传统 SARIMA 模型的扩展,包括外生变量的建模,是Seasonal Autoregressive Integrated Moving-Average with Exogenous Regressors 的缩写
    外生变量是其值在模型之外确定并施加在模型上的变量。它们也被称为协变量。外生变量的观测值在每个时间步直接包含在模型中,并且与主要内生序列的使用不同的建模方式。
    SARIMAX 方法也可用于通过包含外生变量来模拟具有外生变量的其他变化,例如 ARX、MAX、ARMAX 和 ARIMAX。

    # SARIMAX 
    from statsmodels.tsa.statespace.sarimax import SARIMAX
    from random import random
    # contrived dataset
    data1 = [x + random() for x in range(1, 100)]
    data2 = [x + random() for x in range(101, 200)]
    # fit model
    model = SARIMAX(data1, exog=data2, order=(1, 1, 1), seasonal_order=(0, 0, 0, 0))
    model_fit = model.fit(disp=False)
    # make prediction
    exog2 = [200 + random()]
    yhat = model_fit.predict(len(data1), len(data1), exog=[exog2])
    print(yhat)
    

    9、向量自回归 (VAR)

    VAR 模型是单变量自回归模型的推广,用于预测时间序列向量或多个并行时间序列,例如 多元时间序列。它是关于系统中每个变量的一个方程。
    如果序列是平稳的,可以通过将 VAR 直接拟合到数据来预测它们(称为“VAR in levels”)。如果序列是非平稳的,我们会取数据的差异以使其平稳,然后拟合 VAR 模型(称为“VAR in differences”)。
    我们将其称为 VAR§ 模型,即 p 阶向量自回归模型。

    # VAR 
    from statsmodels.tsa.vector_ar.var_model import VAR
    from random import random
    # contrived dataset with dependency
    data = list()
    for i in range(100):
      v1 = i + random()
      v2 = v1 + random()
      row = [v1, v2]
      data.append(row)
    # fit model
    model = VAR(data)
    model_fit = model.fit()
    # make prediction
    yhat = model_fit.forecast(model_fit.y, steps=1)
    print(yhat)
    

    10、向量自回归滑动平均模型 (VARMA)

    VARMA 方法是 ARMA 对多个并行时间序列的推广,例如 多元时间序列。具有有限阶 MA 误差项的有限阶 VAR 过程称为 VARMA。
    模型的公式将 AR§ 和 MA(q) 模型的阶数指定为 VARMA 函数的参数,例如 VARMA(p,q)。VARMA 模型也可用于VAR 或 VMA 模型。

    # VARMA 
    from statsmodels.tsa.statespace.varmax import VARMAX
    from random import random
    # contrived dataset with dependency
    data = list()
    for i in range(100):
      v1 = random()
      v2 = v1 + random()
      row = [v1, v2]
      data.append(row)
    # fit model
    model = VARMAX(data, order=(1, 1))
    model_fit = model.fit(disp=False)
    # make prediction
    yhat = model_fit.forecast()
    print(yhat)
    

    11、包含外生变量的向量自回归滑动平均模型 (VARMAX)

    Vector Autoregression Moving-Average with Exogenous Regressors (VARMAX) 是 VARMA 模型的扩展,模型中还包含使用外生变量的建模。它是 ARMAX 方法对多个并行时间序列的推广,即 ARMAX 方法的多变量版本。
    VARMAX 方法也可用于对包含外生变量的包含模型进行建模,例如 VARX 和 VMAX。

    # VARMAX 
    from statsmodels.tsa.statespace.varmax import VARMAX
    from random import random
    # contrived dataset with dependency
    data = list()
    for i in range(100):
      v1 = random()
      v2 = v1 + random()
      row = [v1, v2]
      data.append(row)
    data_exog = [x + random() for x in range(100)]
    # fit model
    model = VARMAX(data, exog=data_exog, order=(1, 1))
    model_fit = model.fit(disp=False)
    # make prediction
    data_exog2 = [[100]]
    yhat = model_fit.forecast(exog=data_exog2)
    print(yhat)
    

    总结

    在这篇文章中,基本上覆盖了所有主要时间序列预测的问题。我们可以把上面提到的方法整理成以下几个重要的方向:

    • AR:自回归
    • MA:平均移动
    • I:差分整合
    • S:季节性
    • V:向量(多维输入)
    • X:外生变量

    本文中提到的每种算法基本上都是这几种方法的组合,本文中已将每种的算法都进行了重点的描述和代码的演示,如果你想深入了解其中的知识请查看相关的论文。

    展开全文
  • 文中主要对基于深度学习的信息级联预测方法的研究现状与经典算法进行分类、梳理与总结。根据信息级联特征刻画的侧重点不冋,将基于深度学习的信息级联预测方法分为时序信息级联预测方法与拓扑信息级联预测方法,并...
  • 中文“预测”的含义在“英语”情境下则两种含义:evaluate,“估算”,前文归因的方法中,是从因变量Y发现自变量X,也就是Y-->X,“估算”则是“归因”的逆操...

    中文“预测”的含义在“英语”情境下则有两种含义:

    • evaluate,“估算”,前文归因的方法中,是从因变量Y发现自变量X,也就是Y-->X,“估算”则是“归因”的逆操作——需要从已知的X来推导未知的Y,即X-->Y;

    • forecast,“预测”,基于“时间序列”来预估未来的数据,比如股票走势、业务发展趋势、交易量预估等等;

    640?wx_fmt=png

    evaluate & forecast


    关于 evaluate

    “估算”常见有两种情况:

    • 基于关联原则来类推,简称“类推法”,也就是先归类,然后推导。比如格子衫、发量少、戴眼镜、男性、程序员这几个特征是高度关联的,知道“格子衫”和“发量少”就能推断出此人职业很可能是“程序员”;

    • 基于目标数据和已知数据存在“函数关系”,简称“函数法”或者“公式法”,即Y=f(X),基于函数规则就能计算得到目标数据Y。比如评估某次产品运营活动对交易产生的影响量(Y),那么对应需要考虑的X可能包含活动覆盖的人群属性、人群数量、活动方式、优惠力度等;


    类推法

    类推法可以分为两种:

    • 相似个体类推相似的个体通常其属性(特征)也具有相似性,如果要推算某个体的某属性,那么找到具有相似性的个体的属性作为预估值即可。

    • 归属群体类推,人以类聚,物以群分,每个类群的整体属性和个体属性差异不会太大(只要不是极端个例),也可以理解为正态分布的群体的某属性的均值可以作为某个未知个体属性的替代值。

    640?wx_fmt=png

    相似个体类推

    如上图所示,假如现在我们要想估算主体B的属性③的数值(橙色标记目标数据),那么我们可以找到和B类似(AB在属性②、④上相似)且同时具有属性③的主体A,如果主体A的属性③是已知的,那么该数值可以当做主体B属性③的估算值,如果可以匹配的已知相似属性更多,得到的值一般更精确。

    e.g. 要推算京东在微信端交易订单量占整体交易量的占比,可以借鉴唯品会的数据。首先唯品会和京东的业务模式具有较高的相似性——都是电商平台(虽然主要品类结构不一样),主要交易端都是App\PC\Weixin这3个,唯品会和京东都在微信上都有“钱包入口”,整体上覆盖的人群结构也差不多——现在知道了唯品会微信上交易量的占比(数据已经相对稳定),那么该数值可以作为预估京东数据的参考值基准。

    注:因为京东在“发现”页还有入口,而且唯品会和京东的交易量级以及品类结构上存在差异,所以数据还需要进一步调整。


    归属群体类推

    如上图右图,基于背景知识,我们知道要推算的个体X归属于某个群体,那么可以用该群体的属性来推断X的对应属性。

    e.g. 我们到野外偶遇一只不知所名的动物(未知的X),发现此动物尖牙利爪长尾巴(已知属性),这和我们平时见到的猫科动物(归属的群体)特征很匹配,我们知道猫科动物大多数是吃肉的,那么可以推断该动物也很可能不是吃素的(肉食动物)。


    确定相似性可以参考的特征:

    • 空间属性,比如所处地理位置相同,具有类似的结构或者模式,体量差不多,或者归属的群体是一致的等等;

    • 时间属性,所处的时代相同,主体的生命周期差不多等;



    函数法

    目标数据和已知数据存在“函数关系”,即Y=f(X),基于函数规则就能计算得到目标数据Y

    常见的两种函数或者公式如下:

    • 连乘公式,常见于存在转化率或集合包含关系的情况

      640?wx_fmt=png

    • 加权公式,常见于存在多个成分或分类的情况

      640?wx_fmt=png

    使用函数法需要明确目标数据的函数表达式,以及需要知道函数表达式中各变量的数值。

    640?wx_fmt=png

    函数法中,因变量Y和自变量X的具有高相关性。

    使用函数法进行估算的案例,可以参考前文从一道面试题谈数据推算方法

    在该案例中,估算目标用户群数量时用的就是连乘公式。

    该城市总人口1000W,设符合用车条件的人群(16-60)占比为60%(这个数据也可以到国家人口普查数据上找);设上述人群中有互联网产品使用经验的比例为60%(可以查下中国互联网普及率);设有短距离出行需求的人数比例为15%(大多数时候选择的交通工具是地铁、公交、自驾);设该公司在该城市的市场份额为30%(假设要和ofo、摩拜3分天下,这里的30%是假设只有3家投放单车时的值),基于以上假设可以得到目标用户数为:1000W*60%*60%*15%*30% ≈ 16W人

    AhongPlus,公众号:数据分析007从一道面试题谈数据推算方法

    e.g. 假设现在需要预估一次运营活动带来的交易量,那么可以先对交易量“细分”,看看活动覆盖哪些人群、覆盖哪些端口、不同人群或端口的交易转化率(可以参考历史数据或业务经验)等,把每个细分人群细分端口的交易计算出来,再进行加总即可。


    关于 forecast

    基于时间序列的趋势预测,是基于历史数据预测未来发生的事件。

    e.g. 进行年度KPI预测的时候,可以拟合历年的实际交易数据——一般业务过了成熟期,就能看到比较明显的S曲线(sigmoid curve)——基于拟合的曲线就能大致预测出下一年的交易量了。这个预测值可以作为基准,还要考虑业务上新的变化对数据进行调整,比如产品功能改变、人群定位变化等、渠道入口发生改变等。

    e.g. 交易预估流程(先用线性回归预测2018年度的总交易,然后拆分到季度)

    注:此处交易是有明显的季节性变化趋势的。

    640?wx_fmt=png

    注:该案例也可以Holt-Winters法来操作,把Residual的部分区分出来。


    时间序列可以分解(decomposition)为4部分:

    参考:https://en.wikipedia.org/wiki/Decomposition_of_time_series

    • 长期趋势(Trend),比如持续的增长或者降低,这种趋势可能是线性也可能是非线性的(比如S型曲线);

    • 季节变化(Seasonal),通常是一年时间内的周期波动(可能季度、月度或者周等不同时间颗粒度),季节变化通常是因为受到人们活动的周期性的影响而出现的。比如:人行为上的周期性,e.g.一天的作息、一年4季的购衣需求、不同年龄阶段的行为模式等;②周期性的社会活动,e.g.节假日、定期行业集会等;③商业业务的周期性,e.g.唯品会的早10晚8上新、公众号通常在上班前或者下班后发布消息等;

    • 发展周期(Cycle),不同于季节变化,发展周期的时间跨度更长(通常是两年以上),而且和事物的生命周期有关(比如产品的生命周期等);

    • 随机噪声(Reminder,或Residual),不能归于以上3类的部分被称为不规则剩余(Irregular Remainder),可以看做是时间序列数据中的随机成分;

    举个例子,原始时间序列如下图所示:

    数据源:https://raw.githubusercontent.com/jbrownlee/Datasets/master/airline-passengers.csv

    640?wx_fmt=png

    可以分解为3部分(此处不考虑“发展周期”因素):

    640?wx_fmt=png

    注:此处采用Holt-Winters’ additive method来分解,调用函数为statsmodels.tsa.seasonal.seasonal_decompose


    时间序列预测的流程可以参考下图

    640?wx_fmt=gif

    来源:http://people.duke.edu/~rnau/411fcst.htm


    对于数据转化和预测方法的选择可以参考

    • http://people.duke.edu/~rnau/whatuse.htm


    • https://otexts.com/fpp2/transformations.html

    • https://hbr.org/1971/07/how-to-choose-the-right-forecasting-technique

    • Selecting Forecasting Methods, J. Scott Armstrong


    时间序列预测常见方法:

    • 回归模型对于历史数据进行拟合(可能是线性也可能是非线性),线性的情况意味着长期的变化趋势基本一致(平稳增长或者平稳下降),非线性的情况则说明变化的速度不稳定(比如生长曲线);

    • ARIMA模型,差分自回归移动平均模型(Autoregressive integrated moving average),ARIMA由自回归模型、移动平均模型和差分法结合而来;


      更多参考https://otexts.com/fpp2/arima.html

      https://en.wikipedia.org/wiki/Autoregressive_integrated_moving_average

    • Holt Winters'方法,也被称之为季节分解法,将原始时间序列分为level(基线)、trend(变化趋势)、season(季节性波动)3部分;

      更多参考https://otexts.com/fpp2/holt-winters.html

    • 移动平均法(Moving Average),通常用于时间序列比较平稳的情况(stationary);

    • 指数平滑法(Exponential Smoothing),对于参与预测的时间周期进行加权,可以看做是加权版的移动平均法;



    关于时间序列预测的实操(Python)可以参考:

    • https://www.analyticsvidhya.com/blog/2018/02/time-series-forecasting-methods/

    • https://www.analyticsvidhya.com/blog/2016/02/time-series-forecasting-codes-python/


    基于时间序列的趋势预测时,需要注意:

    • 要有完成的观测周期,小心“黑天鹅”现象——火鸡观测了1000天没有被吃掉,不能代表第1001天依然好运,所以完整的观测周期很重要;

    • 数据的周期长短要视具体的业务场景,比如可能考察产品的周期性,也可能是某个用户群等,不同的场景的时间颗粒度也不一样;

    • 发展趋势中需要区分自然因素和“人工”因素,自然因素是不可控的(比如PEST等外部因素的影响),“人工”因素是可控的,在进行预测时最好将不可控的随机成分和可控的稳定成分区分开;

    • 业务发展的预测要考虑市场环境以及产品生命周期,有可能这个市场本身就在缩小,或者产品已经经历了成熟期;

    • 注意观测期和预测期是否会出现一些大的变化,比如产品的功能、业务覆盖的人群、外部市场环境等,对预测指标影响较大的因素出现时,那么观测期的数据和预测期的数据大概率不能“同日而语”,需要进行较大的调整;

    • 其他注意事项可以参考:http://people.duke.edu/~rnau/notroubl.htm


    参考资料:

    • 活动数据,驱动业务的数据分析实战,陈哲,8.3.1

    • http://people.duke.edu/~rnau/411home.htm

    • Forecasting: Principles and Practice,https://otexts.com/fpp2/

    • http://ucanalytics.com/blogs/forecasting-time-series-analysis-manufacturing-case-study-example-part-1/

    • https://corporatefinanceinstitute.com/resources/knowledge/modeling/forecasting-methods/

    • http://www.forexabode.com/forex-school/technical-indicators/moving-averages/which-moving-averages-of-what-time-frames-are-best/

    展开全文
  • 常见预测方法及其特点

    万次阅读 2015-05-07 14:06:26
    常见预测方法及其特点   方法名 适用时间 方法说明 需要数据 定性方法 专家会议法 长期预测 组织专家以会议的形式进行预测,综合专家意见得出结论 市场历史发展资料信息 德尔菲法 ...
  • 时间序列预测的8种常用方法简介

    万次阅读 多人点赞 2020-12-08 22:01:17
    时间序列预测8种常用方法简介,包括朴素预测法、简单平均法、移动平均法、简单指数平滑法、霍尔特(Holt)线性趋势法、Holt-Winter方法、AMRIA。
  • 时间序列预测方法最全总结!

    万次阅读 多人点赞 2021-03-12 00:15:38
    时间序列预测就是利用过去一段时间的数据来预测未来一段时间内的信息,包括连续型预测(数值预测,范围估计)与离散型预测(事件预测)等,具有非常高的商业价值。需要明确一点的是,与回归分析预测模型...
  • 数据分析预测方法有哪些

    千次阅读 2020-11-10 13:58:24
    数据分析预测多种不同的方法,特别是对于刚参与数据分析预测的人来说,也需要了解应该掌握什么样的能力和数据的价值。数据分析和预测是一项重要的内容,其中也将使用四维分析。但是也一定要了解数据分析预测用哪...
  • 组合预测的主要思想在于以下事实:不同的预测方法包含有用且独立的信息。 根据阿姆斯特朗(Armstrong,2001)的预测,实践证明了通过结合单个预测来提高预测准确性的证据。 此外,当难以选择最准确的预测方法时,...
  • 由于底板构造突水水量的难以预测性,生产中常用底板疏降水量代替突水水量,导致矿井防排水系统建设的主要依据可靠度偏低。以霍州煤电集团大水矿区为例,分析了矿井正常涌水量、最大涌水量和突水水量的区别与联系,基于含...
  • 作者简介饭饭爱吃饭,携程高级数据分析师,主要负责旅游领域数据赋能相关工作。对旅游趋势识别与推荐、旅游广告投放、旅游LBS等领域浓厚兴趣。一、背景随着大数据的发展,自然科学、社会科学、...
  • 本篇文章将总结时间序列预测方法,并将所有方法分类介绍并提供相应的python代码示例,以下是本文将要介绍的方法列表: 1、使用平滑技术进行时间序列预测 指数平滑 Holt-Winters 法 2、单变量时间序列预测 自回归 ...
  • 数学建模|预测方法:灰色预测模型

    千次阅读 2022-02-08 14:41:15
    数学建模灰色预测模型,参照司守奎《数学建模算法与应用》以及文中博客
  • 典型的神经网络模型主要分3大类:以感知机、BP反向传播模型、函数型网络为代表的,用于分类、预测和模式识别的前馈式神经网络模型;以Hopfield的离散模型和连续模型为代表的,分别用于联想记忆和优化计算的反馈式神经...
  • 数学建模常见的综合评价方法及预测方法

    万次阅读 多人点赞 2017-01-31 21:49:40
    综合评价方法 •简单加权法 1.  线性加权综合法 适用条件:各评价指标之间相互独立。  对不完全独立的情况,其结果将导致各指标间信息的重复,使评价结果不能客观地反映实际。 主要特点:  (1)各评价指标间...
  • 几种常见预测模型

    万次阅读 多人点赞 2018-03-26 16:14:42
    趋势外推预测方法趋势外推预测方法是根据事物的历史和现实数据,寻求事物随时间推移而发展变化的规律,从而推测其未来状况的一种常用预测方法。 趋势外推法的假设条件是: (1)假设事物发展过程没有跳跃式变化,...
  • 电商销量预测方法综述

    千次阅读 2021-03-08 15:01:31
    但是销量的预测受影响复杂,传统的基于统计的计量模型,比如时间序列模型等由于对现实的假设情况过多,在实际场景中应用,本文利用R语言和Python梳理并实现了当前主流的电商销量预测方法:第一类是计量统计模型,以...
  • 预测目标值为顺序意义的连续变量 取值范围为任意实数 序回归: 预测目标值为顺序意义的有限个数离散变量 例如:评价(非常满意、满意、一般、不满意、非常不满意),这五种目标取值是离散量,但其间又顺序...
  • 常见预测模型及算法

    万次阅读 多人点赞 2020-05-01 13:22:18
    如果得到一份数据集,任务是要预测出一系列的值,而在预测任务中,我们大多数都采用的是拟合的方法,这篇文字主要介绍三种预测方法时间序列分析,灰色预测模型,神经网络。 时间序列分析 时间序列也叫动态序列,数据...
  • 常用的分类与预测算法

    万次阅读 2018-12-11 11:37:27
    确定预测属性与其他变量间相互依赖的定量关系最常用的统计学方法 决策树 自顶向下的递归方式,在内部节点进行属性值的比较,并根据不同的属性值从该节点下分支,最终得到的叶节点是学习划分的类 人工神经...
  • 数据驱动背景下的设备故障预测及诊断方法

    千次阅读 多人点赞 2021-09-02 20:45:35
    数据驱动背景下的设备故障预测一、设备故障预测1、基于可靠性模型的故障预测方法2、基于物理模型的故障预测方法3、基于数据驱动的故障预测方法三级目录 一、设备故障预测 设备故障预测是PHM(Prognostics Health ...
  • 德尔菲法——意见可靠预测方法

    千次阅读 2019-07-09 08:59:14
    因此,这种预测方法被命名为 德尔菲法 。1946年, 兰德公司 首次用这种方法用来进行预测,后来该方法被迅速广泛采用。  德尔菲法也称专家调查法,是一种采用通讯方式分别将所需解决的问题单独发送到各个专家手中...
  • 短时交通预测方法总结

    万次阅读 多人点赞 2020-05-16 17:49:55
    交通流量预测方法可分为三类:统计方法模型、传统机器学习模型和深度学习模型。 一、统计方法模型 1.1 HA模型(History Average Model) Stephanedes 于1981 年将HA模型应用于城市交通控制系统。 算法定义 .....
  • 机器学习——时间序列预测方法

    千次阅读 2022-05-05 10:50:52
    目录 传统时序建模 自回归模型(Autoregressive model,简称AR) 移动平均模型(Moving Average model,简称MA ) ...机器学习模型方法 深度学习模型方法 传统时序建模 自回归模型(Autoregressi...
  • 从使用的广义角度上看,数据挖掘常用分析方法主要有分类、聚类、估值、预测、关联规则、可视化等。从数据挖掘算法所依托的数理基础角度归类,目前数据挖掘算法主要分为三大类:机器学习方法、统计方法与神经网络方法...
  • 并比较了常见评价煤层气孔隙发育测井方法,以沁水盆地榆社-武乡区块的煤岩测试资料为基础,提出了基于储集空间发育的影响因素建立的评价煤层气储层孔隙发育的解释模型,研究认为灰分含量、变质程度、煤体结构是影响研究...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 174,286
精华内容 69,714
热门标签
关键字:

常见的预测方法主要有

友情链接: lmsg.tar.gz