一种数据预测方法和装置的制造方法
【技术领域】
[0001]本发明涉及计算机技术领域,尤其涉及一种数据预测方法和装置。
【背景技术】
[0002]随着计算机技术的发展和普及,通过历史数据来预测这种数据未来的发展趋势的需求也日益增加。例如,随着人们生活水平的提高和旅游业的飞速发展,各景区的游客数量大幅增加,尤其在法定节假日,各景区的游客数量激增,景区现有的衣食住行难以满足过多的游客数量,导致不良影响甚至暴力事件。而如何有效地分析各个景区的历史旅游数据,例如,景区天气参数、游客人数、旅游日期等,并基于这些历史数据进行发展趋势预测,对于游客合理安排出行、缓解交通压力、有效分散游客数量、使景区能够预先储备足够的食物、提高服务效率等,是非常重要的。
[0003]目前,一些模型被建立来预测这种大批量的数据的发展趋势,然而这些模型的计算需要较长的时间、且准确率低。
【发明内容】
[0004]鉴于上述问题,提出了本发明,以便提供一种克服上述问题或者至少部分地解决上述问题的应用的特征参数的估算方法和装置。
[0005]依据本发明的第一方面,提供了一种数据预测方法,包括:从服务器获取时间序列数据,所述时间序列数据包括已发生的N个时间点的数据;分析所述时间序列数据的平稳性,以获得平稳性分析结果;根据所述平稳性分析结果,选择第一预测模型;以及根据所选择的第一预测模型,预测未来K个时间点的数据。
[0006]可选地,其中分析所述时间序列数据的平稳性包括:利用单位根检验分析时间序列数据的平稳性。
[0007]可选地,其中根据所述平稳性分析结果,选择第一预测模型包括:当所述平稳性分析结果为所述时间序列数据是平稳的,选择ARIMA模型作为第一预测模型。
[0008]可选地,其中根据所述平稳性分析结果,选择第一预测模型包括:当所述平稳性分析结果为所述时间序列数据是不平稳的,对所述时间序列数据进行逐级差分;分析差分后的时间序列数据的平稳性;以及当所述差分后的时间序列数据是平稳的,选择ARIMA模型作为第一预测模型。
[0009]可选地,其中根据所述平稳性分析结果,选择第一预测模型包括:当所述平稳性分析结果为所述时间序列数据是不平稳的,对所述时间序列数据进行逐级差分;以及当所述差分后的时间序列数据的方差大于差分前的所述时间序列数据,选择Lasso算法建立所述第一预测模型。
[0010]可选地,其中根据所述平稳性分析结果,选择第一预测模型包括:根据所述平稳性分析结果,确定所述ARIMA模型的第一参数,所述第一参数是当差分后的时间序列数据是平稳时,所述时间序列数据被差分的次数;计算所述差分后的时间序列数据的自相关函数和偏自相关函数;根据所述第一参数、所述自相关函数和所述偏自相关函数,训练所述ARIMA模型,并选择最优的ARIMA模型作为所述第一预测模型。
[0011 ] 可选地,其中选择最优的ARIMA模型作为所述第一预测模型包括:当所述自相关函数和所述偏自相关函数为拖尾时,根据所述ARIMA模型的评价指标参数和ARIMA模型的测试集上的性能参数,选择最优的ARIMA模型作为所述第一预测模型。
[0012]可选地,其中根据所选择的第一预测模型,预测未来K个时间点的数据包括:根据所选择的第一预测模型,直接预测未来K个时间点的数据。
[0013]可选地,其中根据所述平稳性分析结果,选择第一预测模型还包括:判断所选择的第一预测模型的残差是否具有异方差性,当所选择的第一预测模型的残差具有异方差性,对所述时间序列数据进行变换处理;分析变换处理后的时间序列数据的平稳性;根据变换处理后的时间序列数据的平稳性,选择第二预测模型;判断所选择的第二预测模型的残差是否具有异方差性,当所选择的第二预测模型的残差具有异方差性,选择Lasso算法建立所述第一预测模型。
[0014]可选地,其中判断所选择的预测模型的残差是否具有异方差性包括:基于ARCH检验、White检验或Goldfed-Quanadt检验,判断所选择的预测模型的残差是否具有异方差性。
[0015]可选地,其中根据所选择的第一预测模型,预测未来K个时间点的数据包括:针对所述K个时间点中的每一个时间点,根据所述时间序列数据的自回归参数和预先设定的特征参数,分别预测每一个时间点的数据。
[0016]根据本发明的第二方面,提供了一种数据预测装置,包括:数据获取模块,适于从服务器获取时间序列数据,所述时间序列数据包括已发生的N个时间点的数据;平稳性分析模块,适于分析所述时间序列数据的平稳性,以获得平稳性分析结果;模型选择模块,适于根据所述平稳性分析结果,选择第一预测模型;以及数据预测模块,适于根据所选择的第一预测模型,预测未来K个时间点的数据。
[0017]可选地,其中所述平稳性分析模块适于:利用单位根检验分析时间序列数据的平稳性。
[0018]可选地,其中所述模型选择模块适于:当所述平稳性分析结果为所述时间序列数据是平稳的,选择ARIMA模型作为第一预测模型。
[0019]可选地,其中所述模型选择模块适于:当所述平稳性分析结果为所述时间序列数据是不平稳的,对所述时间序列数据进行逐级差分;分析差分后的时间序列数据的平稳性;以及当所述差分后的时间序列数据是平稳的,选择ARIMA模型作为第一预测模型。
[0020]可选地,其中所述模型选择模块适于:当所述平稳性分析结果为所述时间序列数据是不平稳的,对所述时间序列数据进行逐级差分;以及当所述差分后的时间序列数据的方差大于差分前的所述时间序列数据,选择Lasso算法建立所述第一预测模型。
[0021]可选地,其中所述模型选择模块适于:根据所述平稳性分析结果,确定所述ARIMA模型的第一参数,所述第一参数是当差分后的时间序列数据是平稳时,所述时间序列数据被差分的次数;计算所述差分后的时间序列数据的自相关函数和偏自相关函数;根据所述第一参数、所述自相关函数和所述偏自相关函数,训练所述ARIMA模型,并选择最优的ARIMA模型作为所述第一预测模型。
[0022]可选地,其中所述模型选择模块还适于:当所述自相关函数和所述偏自相关函数为拖尾时,根据所述ARIMA模型的评价指标参数和ARIMA模型的测试集上的性能参数,选择最优的ARIMA模型作为所述第一预测模型。
[0023]可选地,其中所述数据预测模块适于:根据所选择的第一预测模型,直接预测未来K个时间点的数据。
[0024]可选地,其中所述模型选择模块还适于:判断所选择的第一预测模型的残差是否具有异方差性,当所选择的第一预测模型的残差具有异方差性,对所述时间序列数据进行变换处理;分析变换处理后的时间序列数据的平稳性;根据变换处理后的时间序列数据的平稳性,选择第二预测模型;判断所选择的第二预测模型的残差是否具有异方差性,当所选择的第二预测模型的残差具有异方差性,选择Lasso算法建立所述第一预测模型。
[0025]可选地,其中所述模型选择模块还适于:基于ARCH检验、White检验或Goldfed-Quanadt检验,判断所选择的预测模型的残差是否具有异方差性。
[0026]可选地,其中所述数据预测模块适于:针对所述K个时间点中的每一个时间点,根据所述时间序列数据的自回归参数和预先设定的特征参数,分别预测每一个时间点的数据。
[0027]本发明提供了上述根据本发明的实施例的数据预测方法和装置,通过分析所述时间序列数据的平稳性选择预测模型,并根据预测模型来预测未来时间点的数据,构建了改进的数据预测体系,能够自适应地判断该用何种模型建模,具有显著提高的灵活性,兼顾了预测效果和时间成本;同时还能自动进行参数选择和模型训练,提高了数据预测的准确性和效率,对于处理大批量的时间序列数据的趋势预测任务尤其有优势。
[0028]上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的【具体实施方式】。
【附图说明】
[0029]通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
[0030]图1是根据本发明的实施例的数据预测方法的流程图;以及
[0031]图2是根据本发明的实施例的数据预测装置的结构示意图。
【具体实施方式】
[0032]下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
[0033]根据本发明的第一方面,提供了一种根据本发明的实施例的数据预测方法100。
[0034]图1示出了根据本发明的实施例的数据预测方法100的流程图。
[0035]如图1所示,数据预测方法100始于步骤SlOl:从服务器获取时间序列数据,所述时间序列数据包括已发生的N个时间点的数据。
[0036]在本发明的实施例中,服务器可以是一个或多个服务器计算机,可设置为提供某种服务器功能,例如数据库管理和搜索引擎。服务器可以包括至少一个处理器,其与存储器以及多个其它模块协同操作。所述处理器可以包括多个核心,以用于多线程或并行处理。所述存储器可以包括一个或多个存储设备,存储器或者其中的存储设备包括非易失性计算机可读记录/存储介质。
[0037]在本发明的实施例中,时间序列数据可以是与时间的变化相关的数据,所述时间序列数据包括已发生的N个时间点的数据,如Ix1, X2, X3,.., xN}。例如,以旅游为例,时间序列数据可以是某城市在一段时间内每天的旅游数据,例如,北京过去7天之内每天的到达航班、火车的数量或乘客数量,各景点接待的游客数量,各景点附件餐馆、旅店接待的游客数量,各景点温度等数据。
[0038]需说明,以旅游为例说明本发明,其仅仅是示例性的,本发明并不仅限于此,还包括其他方面的应用,例如,对就业、入学等其他大批量时间序列数据的分析和发展趋势预测。
[0039]如图1所示,方法100还包括步骤S103:分析所述时间序列数据的平稳性,以获得平稳性分析结果。
[0040]根据本发明的示例性实施例,分析所述时间序列数据的平稳性包括:利用单位根检验分析时间序列数据的平稳性。例如,对
于时间序列数据Ix1, X2, X3,.., X1J,利用单位根检验,例如DF检验或ADF检验,分析时间序列数据的平稳性。单位根检验是指检验序列中是否存在单位根,如果存在单位根所述时间序列数据就不是平稳的;反之,如果不存在单位根,则所述时间序列数据就是平稳的。可选地,也可以使用其他方法检验所述时间序列数据的平稳性,例如PP检验、KPSS检验、ERS检验和NP检验等。
[0041]如图1所示,方法100还包括步骤S105:根据所述平稳性分析结果,选择第一预测模型。
[0042]根据本发明的示例性实施例,根据所述平稳性分析结果,选择第一预测模型包括:当所述平稳性分析结果为所述时间序列数据是平稳的,选择ARIMA模型作为第一预测模型。如果时间序列数据Ix1, X2, X3,.., xj通过平稳性检验,即,所述平稳性分析结果为所述时间序列数据是平稳的,则利用ARIMA模型作为第一预测模型,预测未来K个时间点的数据
{Χν+1,Χν+2,..,Xn+iJ °
[0043]根据本发明的示例性实施例,根据所述平稳性分析结果,选择第一预测模型包括:当所述平稳性分析结果为所述时间序列数据是不平稳的,对所述时间序列数据进行逐级差分;分析差分后的时间序列数据的平稳性;以及当所述差分后的时间序列数据是平稳的,选择ARIMA模型作为第一预测模型。可选地,如果时间序列数据Ix1, x2,x3,..,xN}未通过平稳性检验,即,所述平稳性分析结果为所述时间序列数据是不平稳的,则对Ix1, X2, X3,.., xN}做一阶差分,得到差分后的序列Ix/,x2’,x3’,..,xN_/ };分析差分后的时间序列数据Ix/,x2’,x3’,..,xN_/ }的平稳性,例如利用单位根检验;如果差分后的时间序列{V,x2,,x3,,..,%_/ }是平稳的,则选择ARIMA模型作为第一预测模型。
[0044]根据本发明的示例性实施例,其中根据所述平稳性分析结果,选择第一预测模型包括:当所述平稳性分析结果为所述时间序列数据是不平稳的,对所述时间序列数据进行逐级差分;以及当所述差分后的时间序列数据的方差大于差分前的所述时间序列数据,选择Lasso算法建立所述第一预测模型。可选地,如果时间序列数据(X1, x2,x3,..,xN}未通过平稳性检验,即,所述平稳性分析结果为所述时间序列数据是不平稳的,则对(X1, X2, X3,.., XnI做一阶差分,得到差分的序列{x/,X2’,X3’,..,Xn-Z };当所述差分后的时间序列数据Ix/,X2’,X3’,..,%_/ }的方差大于差分前的所述时间序列数据(X1, X2, X3,.., XnI,选择Lasso算法建立所述第一预测模型。
[0045]可选地,当一阶差分后所获得的所述差分后的时间序列数据{x/,X2’,X3’,..,XN_/ }的方差小于差分前的所述时间序列数据(X1, X2, X3,.., XN},且差分后的时间序列数据Ix/,x2’,x3’,..,%_/ }通过平稳性检验,选择ARIMA算法建立所述第一预测模型。
[0046]可选地,当一阶差分后所获得的所述差分后的时间序列数据(X1 ’,X2’,X3’,..,XN_/ }的方差小于差分前的所述时间序列数据(X1, X2, X3,.., XN},且差分后的时间序列数据{x/,X2’,X3’,..,Xn-Z }未通过平稳性检验,则对(X1, X2, X3,.., XN}做二阶差分,得到二阶差分后的时间序列数据{Xl”,X2”,χ3”,..,XN-2” },分析二阶差分后的时间序列数据{Xi”,X2”,X3”,..,Xn_2”}的平稳性并对比二阶差分后的时间序列数据{Xi”,X2”,X3”,..,Xn_2”}的方差。
[0047]如果二阶差分后的时间序列数据{χΛ x2", x3”,..,xN_2”}的方差大于差分前的所述时间序列数据(X1, X2, X3,.., XnI,选择Lasso算法建立所述第一预测模型。
[0048]如果二阶差分后的时间序列数据{X1”,X2”,X3”,..,XN_2”}方差小于差分前的所述时间序列数据Ix1, X2, X3,.., χΝ},且二阶差分后的时间序列数据{Xl”,X2”,χ3”,..,χΝ_2”}通过平稳性检验,则选择ARIMA算法建立所述第一预测模型。
[0049]如果二阶差分后的时间序列数据{Χ1”,Χ2”,Χ3”,..,ΧΝ_2”}方差小于差分前的所述时间序列数据Ix1, X2, X3,.., χΝ},且二阶差分后的时间序列数据{Xl”,X2”,χ3”,..,χΝ_2”}未通过平稳性检验,则对时间序列数据Ix1, X2, X3,.., χΝ}做三阶差分,得到三阶差分后的时间序列数据Ιχ/”,χ2”’,χ3”’,..,χΝ-2”’},分析三阶差分后的时间序列数据Ιχ/”,χ2”’,X3
χΝ_2”’}的平稳性,并对比三阶差分后的时间序列数据Ιχ/”,χ2”’,χ3”’,..,χΝ-2”’ I和差分前的时间序列数据的方差,依此类推。
[0050]如上所述,根据本发明的实施例的上述数据预测方法,经过对时间序列数据进行逐级差分,对差分后的时间序列数据进行平稳性分析,和/或对比差分后的时间序列数据的方差,选择Lasso算法建立第一预测模型,或者选择ARIMA算法建立第一预测模型。根据本发明的实施例的上述数据预测方法,能够根据历史时间序列数据的特性来选择性地构建预测模型,例如,在预测不同旅游路线的未来趋势预测中,如果所有旅游路线的预测任务都选择Lasso算法作为第一预测模型,每个预测任务都将被分拆成多个预测任务,且均需要抽取额外的特征集合进行模型训练,所花费的时间较长;如果所有的旅游线路的预测任务都选择ARIMA算法作为第一预测模型,则这种模型利用的特征参数比较有限,对于平稳性较差的历史时间序列数据,则难以准确预测,而根据本发明示例性的数据预测方法能够自适应地选择ARIMA算法或Lasso算法用于模型建模,兼顾了预测效果和时间成本,同时还能自动进行参数选择和模型训练,提高了数据预测的准确性和效率。
[0051]根据本发明的示例性实施例,当选择ARIMA模型作为第一预测模型时,其中根据所述平稳性分析结果,选择第一预测模型包括:根据所述平稳性分析结果,确定所述ARIMA模型的第一参数,所述第一参数是当差分后的时间序列数据是平稳时,所述时间序列数据被差分的次数;计算所述差分后的时间序列数据的自相关函数和偏自相关函数;根据所述第一参数、所述自相关函数和所述偏自相关函数,训练所述ARIMA模型,并选择最优的ARIMA模型作为所述第一预测模型。
[0052]可选地,将ARIMA(p,d, q)中的d作为第一参数,当时间序列数据Ix1, χ2, χ3,..,xN}本身是平稳的,则d = O ;当一阶差分后所获得的所述差分后的时间序列数据{x/,X2’,X3’,..,XN_/ }的方差小于差分前的所述时间序列数据(X1, X2, X3,.., XN},且差分后的时间序列数据Ix/,x2’,x3’,..,%_/ }通过平稳性检验,选择ARIMA算法建立所述第一预测模型,此时d = 1,以此类推,ARIMA(p, d, q)中的第一参数d为满足平稳性条件所对应的当前差分次数。确定d的数值后,计算差分后的时间序列数据的自相关函数ACF和偏自相关函数PACE,根据所述第一参数d、所述自相关函数ACF和所述偏自相关函数PACE,训练所述ARIMA模型,并选择最优的ARIMA模型作为所述第一预测模型。
[0053]根据本发明的示例性实施例,选择最优的ARIMA模型作为所述第一预测模型包括:当所述自相关函数和所述偏自相关函数为拖尾时,根据所述ARIMA模型的评价指标参数和ARIMA模型的测试集上的性能参数,选择最优的ARIMA模型作为所述第一预测模型。可选地,确定第一参数d后,计算当前序列的自相关函数ACF和偏自相关函数PACF,在给定显著性水平0.05下,得到自相关系数ACF和偏自相关系数PACF的置信区间,分别记为[_a,a]和[_b,b],然后进行如下判断:如果偏自相关系数在P’步(要求P’ <10)后值均落在阈值
0.005以内,认为其在P’步后截尾,设置P = p’,用ARIMA(p’,d,O)对时间序列进行建模;如果自相关系数在q’步(要求q’〈10)后值均落在阈值0.005以内,认为其在q’步后截尾,设置q = q’,选择ARIMA(0,d,q’)作为第一预测模型;如果不满足前两个条件,表明自相关函数和偏自相关函数均为拖尾的,记自相关函数在q’步(要求q’〈10)后值均落在置信区间[-a, a]内,偏自相关函数在P’步(要求p’〈10)后值均落在置信区间[_b,b]内,尝试训练模型 ARIMA (p,,d, q,)、ARIMA(p,+1,d, q,)、ARIMA(p,,d, q,+1)和 ARIMA (p,+1,d, q,+1),并从中选择最优的ARIMA模型ARIMA (p*,d*,q*)作为第一预测模式。若前三条均不满足,选择Lasso模型作为第一预测模型。可选地,当自相关函数ACF和偏自相关函数PACF均被判定为拖尾时,利用模型的AIC,BIC或R平方为选择依据判断最优模型ARIMA(p*,d*,q*)。以AIC为例,假定所有训练的模型中ARIMA (3,d*,4)的AIC最小,那么该组参数被选为最终采用的ARIMA模型。
[0054]根据本发明的示例性实施例,其中根据所述平稳性分析结果,选择第一预测模型还包括:判断所选择的第一预测模型的残差是否具有异方差性,当所选择的第一预测模型的残差具有异方差性,对所述时间序列数据进行变换处理;分析变换处理后的时间序列数据的平稳性;根据变换处理后的时间序列数据的平稳性,选择第二预测模型;判断所选择的第二预测模型的残差是否具有异方差性,当所选择的第二预测模型的残差具有异方差性,选择Lasso算法建立所述第一预测模型。
[0055]根据本发明的示例性实施例,其中判断所选择的预测模型的残差是否具有异方差性包括:基于ARCH检验、White检验或Goldfed-QuaNadt检验,判断所选择的预测模型的残差是否具有异方差性。
[0056]可选地,对于最优的ARIMA(p*,d*,q*),判断其残差是否具有异方差性,例如,基于ARCH检验、White检验或Goldfed-QuaNadt检验来判断是否具有异方差性;如果最优的ARIMA (p*,d*,q*)的残差具有异方差性,那么对时间序列数据Ix1, x2, x3,..,xN}进行变换处理,如log或Box-Cox变换处理,得到变换处理后的时间序列数据{yi, y2, y3,..,yN
},分析变换处理后的时间序列数据{yi,y2,y3,..,yN}的平稳性;根据变换处理后的时间序列数据{yi,y2,y3,..,yN}的平稳性,选择第二预测模型。可选地,可以使用与上述通过对时间序列数据进行逐级差分,对差分后的时间序列数据进行平稳性分析,和/或对比差分后的时间序列数据的方差选择Lasso算法或ARIMA算法建立第一预测模型的方式类似的方式,来选择第二预测模型。如果所选择的第二预测模型的残差仍然具有异方差性,选择Lasso算法建立所述第一预测模型,可选地,除变量的自回归特征外额外再抽取其它预先设定的特征集合。否则,在基于变换后的时间序列数据{yi,y2,y3,..,yN}得到当前最优的ARIMA (p*,d*,q*)后,预测出结果{yN+1,yN+2,..,yN+k},再按之前变换操作的反操作将预测结果处理成最终的预测结果{xN+1,xN+2,..,xN+k}。
[0057]如图1所示,方法100还包括步骤S107:根据所选择的第一预测模型,预测未来K个时间点的数据。
[0058]根据本发明的示例性实施例,其中当选择ARIMA模型作为第一预测模型时,根据所选择的第一预测模型,预测未来K个时间点的数据包括:根据所选择的第一预测模型,直接预测未来K个时间点的数据。
[0059]根据本发明的示例性实施例,其中当选择Lasso模型作为第一预测模型时,根据所选择的第一预测模型,预测未来K个时间点的数据包括:针对所述K个时间点中的每一个时间点,根据所述时间序列数据的自回归参数和预先设定的特征参数,分别预测每一个时间点的数据。当选择Lass0算法建立第一模型时,对于需要预测的未来K个时间点中的每一个时间点,分拆成K个预测任务,对于每个预测任务单独训练模型,即,对于每个要预测的时间点利用相应的回归模型做单独的预测。例如,要预测未来k个时间点的数据,SP{χΝ+1, χΝ+2,..,xN+k},将其分拆为k个预测任务,对每个预测任务启动预先设置的特征抽取模块,为每个任务单独抽取训练样本集和待预测样本。对于采用Lass0算法的情况,除待预测变量的自回归参数外,再额外提取一部分预先设定的特征参数,Lasso算法分别预测每一个时间点的数据,以使预测结果更加准确。
[0060]总之,本发明的实施方式提供的根据本发明的实施例的数据预测方法100,通过分析所述时间序列数据的平稳性选择预测模型,并根据预测模型来预测未来时间点的数据,构建了改进的数据预测体系,能够自适应地判断该用何种模型建模,具有显著提高的灵活性,兼顾了预测效果和时间成本;同时还能自动进行参数选择和模型训练,提高了数据预测的准确性和效率,对于处理大批量的时间序列数据的趋势预测任务尤其有优势。
[0061]根据本发明的第二方面,提供了一种根据本发明的实施例的数据预测装置200。
[0062]图2示出了根据本发明的实施例的数据预测装置200的示意图。如图2所示,数据预测装置200包括:数据获取模块201,适于从服务器获取时间序列数据,所述时间序列数据包括已发生的N个时间点的数据;平稳性分析模块203,适于分析所述时间序列数据的平稳性,以获得平稳性分析结果;模型选择模块205,适于根据所述平稳性分析结果,选择第一预测模型;以及数据预测模块207,适于根据所选择的第一预测模型,预测未来K个时间点的数据。
[0063]在本发明的实施例中,时间序列数据可以是与时间的变化相关的数据,所述时间序列数据包括已发生的N个时间点的数据,如Ix1, X2, X3,.., xN}。例如,以旅游为例,时间序列数据可以是某城市在一段时间内每天的旅游数据,例如,北京过去7天之内每天的到达航班、火车的数量或乘客数量,各景点接待的游客数量,各景点附件餐馆、旅店接待的游客数量,各景点温度等数据。
[0064]需说明,以旅游为例说明本发明,其仅仅是示例性的,本发明并不仅限于此,还包括其他方面的应用,例如,对就业、入学等其他大批量时间序列数据的分析和发展趋势预测。
[0065]根据本发明的示例性实施例,所述平稳性分析模块203适于:利用单位根检验分析时间序列数据的平稳性。例如,对于时间序列数据Ix1, X2, X3,.., X1J,利用单位根检验,例如DF检验或ADF检验,分析时间序列数据的平稳性。单位根检验是指检验序列中是否存在单位根,如果存在单位根所述时间序列数据就不是平稳的;反之,如果不存在单位根,则所述时间序列数据就是平稳的。可选地,也可以使用其他方法检验所述时间序列数据的平稳性,例如PP检验、KPSS检验、ERS检验和NP检验等。
[0066]根据本发明的示例性实施例,其中所述模型选择模块205适于:当所述平稳性分析结果为所述时间序列数据是平稳的,选择ARIMA模型作为第一预测模型。如果时间序列数据Ix1, X2, X3,.., xN}通过平稳性检验,即,所述平稳性分析结果为所述时间序列数据是平稳的,则模型选择模块205选择ARIMA模型作为第一预测模型,预测未来K个时间点的数据
(Χν+1,Χν+2,..,Xn+iJ °
[0067]根据本发明的示例性实施例,其中模型选择模块205适于:当所述平稳性分析结果为所述时间序列数据是不平稳的,对所述时间序列数据进行逐级差分;分析差分后的时间序列数据的平稳性;以及当所述差分后的时间序列数据是平稳的,选择ARIMA模型作为第一预测模型。可选地,如果时间序列数据Ix1, X2, X3,.., xj未通过平稳性检验,即,所述平稳性分析结果为所述时间序列数据是不平稳的,则对Ix1, X2, X3,.., xj做一阶差分,得到差分后的序列Ix/,χ2’,χ3’,..,χΝ_/ };分析差分后的时间序列数据Ix/,χ2’,χ3’,..,χΝ_/ }的平稳性,例如利用单位根检验;如果差分后的时间序列Ix/,χ2’,χ3’,..,χΝ_/ }是平稳的,则选择ARIMA模型作为第一预测模型。
[0068]根据本发明的示例性实施例,其中所述模型选择模块205适于:当所述平稳性分析结果为所述时间序列数据是不平稳的,对所述时间序列数据进行逐级差分;以及当所述差分后的时间序列数据的方差大于差分前的所述时间序列数据,选择Lasso算法建立所述第一预测模型。可选地,如果时间序列数据Ix1, X2, X3,.., xj未通过平稳性检验,即,所述平稳性分析结果为所述时间序列数据是不平稳的,则对Ix1, X2, X3,.., Xj做一阶差分,得到差分的序列Ix/,χ2’,χ3’,..,χΝ-/ };当所述差分后的时间序列数据Ix/,χ2’,χ3’,..,xNV }的方差大于差分前的所述时间序列数据Ix1, X2, X3,.., Xj,选择Lass0算法建立所述第一预测模型。
[0069]可选地,当一阶差分后所获得的所述差分后的时间序列数据{χ/,Χ2’,Χ3’,..,ΧΝ_/ }的方差小于差分前的所述时间序列数据(X1, X2, X3,.., ΧΝ},且差分后的时间序列数据Ix/,χ2’,χ3’,..,χΝ-/ }通过平稳性检验,所述模型选择模块205选择ARIMA算法建立所述第一预测模型。
[0070]可选地,当一阶差分后所获得的所述差分后的时间序列数据(X1 ’,X2’,Χ3’ ,., ΧΝ_/ }的方差小于差分前的所述时间序列数据(X1, X2, X3,.., ΧΝ},且差分后的时间序列数据{χ/,Χ2’,Χ3’,..,Xn-Z }未通过平稳性检验,则对(X1, X2, X3,.., ΧΝ}做二阶差分,得到二阶差分后的时间序列数据{Xl”,X2”,χ3”,..,ΧΝ-2” },分析二阶差分后的时间序列数据{Χι”,Χ2”,Χ3”,..,Χν_2”}的平稳性并对比二阶差分后的时间序列数据{Xi”,X2”,X3”,..,Xn_2”}的方差。
[0071]如果二阶差分后的时间序列数据Ix1' X2”,x3”,..,xN_2”}的方差大于差分前的所述时间序列数据(X1, X2, X3,.., XnI,模型选择模块205选择Lasso算法建立所述第一预测模型。
[0072]如果二阶差分后的时间序列数据{Χ1”,Χ2”,Χ3”,..,ΧΝ_2”}方差小于差分前的所述时间序列数据Ix1, X2, X3,.., χΝ},且二阶差分后的时间序列数据{Xl”,X2”,χ3”,..,χΝ_2”}通过平稳性检验,则模型选择模块205选择ARIMA算法建立所述第一预测模型。
[0073]如果二阶差分后的时间序列数据{Χ1”,Χ2”,Χ3”,..,ΧΝ_2”}方差小于差分前的所述时间序列数据Ix1, X2, X3,.., χΝ},且二阶差分后的时间序列数据{Xl”,X2”,χ3”,..,χΝ_2”}未通过平稳性检验,则对时间序列数据Ix1, X2, X3,.., χΝ}做三阶差分,得到三阶差分后的时间序列数据Ιχ/”,χ2”’,χ3”’,..,χΝ-2”’},分析三阶差分后的时间序列数据Ιχ/”,χ2”’,X3
χΝ_2”’}的平稳性,并对比三阶差分后的时间序列数据Ιχ/”,χ2”’,χ3”’,..,χΝ-2”’ I和差分前的时间序列数据的方差,依此类推。
[0074]如上所述,根据本发明的实施例的上述数据预测装置,经过对时间序列数据进行逐级差分,对差分后的时间序列数据进行平稳性分析,和/或对比差分后的时间序列数据的方差,要么选择Lasso算法建立第一预测模型,要么选择ARIMA算法建立第一预测模型。根据本发明的实施例的上述数据预测装置,能够根据历史时间序列数据的特性来选择性地构建预测模型,例如,在预测不同旅游路线的未来趋势预测中,如果所有旅游路线的预测任务都选择Lasso算法作为第一预测模型,每个预测任务都将被分拆成多个预测任务,且均需要抽取额外的特征集合进行模型训练,所花费的时间较长;如果所有的旅游线路的预测任务都选择ARIMA算法作为第一预测模型,则这种模型利用的特征参数比较有限,对于平稳性较差的历史时间序列数据,则难以准确预测,而根据本发明示例性的数据预测装置能够自适应地选择ARIMA算法或Lasso算法用于模型建模,兼顾了预测效果和时间成本,同时还能自动进行参数选择和模型训练,提高了数据预测的准确性和效率。
[0075]根据本发明的示例性实施例,当选择ARIMA模型作为第一预测模型时,所述模型选择模块205:根据所述平稳性分析结果,确定所述ARIMA模型的第一参数,所述第一参数是当差分后的时间序列数据是平稳时,所述时间序列数据被差分的次数;计算所述差分后的时间序列数据的自相关函数和偏自相关函数;根据所述第一参数、所述自相关函数和所述偏自相关函数,训练所述ARIMA模型,并选择最优的ARIMA模型作为所述第一预测模型。
[0076]可选地,将ARIMA (P, d, q)中的d作为第一参数,当时间序列数据{x” X2, X3,.., xN}本身是平稳的,则d = O ;当一阶差分后所获得的所述差分后的时间序列数据{x/,X2’,X3’,..,XN_/ }的方差小于差分前的所述时间序列数据(X1, X2, X3,.., XN},且差分后的时间序列数据{V,x2,,x3,,..,xN-/}通过平稳性检验,模型选择模块205选择ARIMA算法建立所述第一预测模型,此时d = 1,以此类推,ARIMA(P, d, q)中的第一参数d为满足平稳性条件所对应的当前差分次数。确定d的数值后,计算差分后的时间序列数据的自相关函数ACF和偏自相关函数PACE,根据所述第一参数d、所述自相关函数ACF和所述偏自相关函数PACE,训练所述ARIMA模型,并选择最优的ARIMA模型作为所述第一预测模型。
[0077]根据本发明的示例性实施例,模型选择模块205适于:当所述自相关函数和所述偏自相关函数为拖尾时,根据所述ARIMA模型的评价指标参数和ARIMA模型的测试集上的性能参数,选择最优的ARIMA模型作为所述第一预测模型。可选地,确定第一参数d后,计算当前序列的自相关函数ACF和偏自相关函数PACF,在给定显著性水平0.05下,得到自相关系数ACF和偏自相关系数PACF的置信区间,分别记为[_a,a]和[_b,b],然后进行如下判断:如果偏自相关系数在P’步(要求P’〈10)后值均落在阈值0.005以内,认为其在P’步后截尾,设置P = P’,用ARIMA(p’,d,0)对时间序列进行建模;如果自相关系数在q’步(要求q’〈10)后值均落在阈值0.005以内,认为其在q’步后截尾,设置q = q’,选择ARIMA(0,d,q’ )作为第一预测模型;如果不满足前两个条件,表明自相关函数和偏自相关函数均为拖尾的,记自相关函数在q’步(要求q’〈10)后值均落在置信区间[_a,a]内,偏自相关函数在P’步(要求P’〈10)后值均落在置信区间[_b,b]内,尝试训练模型ARIMA (p,,d,q’)、ARIMA(p’ +1,d, q’)、ARIMA(p’,d, q’ +1)和 ARIMA (p,+1,d, q’ +1),并从中选择最优的ARIMA模型ARIMA (p*,d*,q*)作为第一预测模式。若前三条均不满足,选择Lasso模型作为第一预测模型。可选地,当自相关函数ACF和偏自相关函数PACF均被判定为拖尾时,利用模型的AIC,BIC或R平方为选择依据判断最优模型ARIMA(p*,d*,q*)。以AIC为例,假定所有训练的模型中ARIMA(3,d*,4)的AIC最小,那么该组参数被选为最终采用的ARIMA模型。
[0078]根据本发明的示例性实施例,其中模型选择模块205还适于:判断所选择的第一预测模型的残差是否具有异方差性,当所选择的第一预测模型的残差具有异方差性,对所述时间序列数据进行变换处理;分析变换处理后的时间序列数据的平稳性;根据变换处理后的时间序列数据的平稳性,选择第二预测模型;判断所选择的第二预测模型的残差是否具有异方差性,当所选择的第二预测模型的残差具有异方差性,选择Lasso算法建立所述第一预测模型。
[0079]根据本发明的示例性实施例,其中模型选择模块205还适于:基于ARCH检验、White检验或Goldfed-QuaNadt检验,判断所选择的预测模型的残差是否具有异方差性。
[0080]可选地,对于最优的ARIMA(p*,d*,q*),由模型选择模块205判断其残差是否具有异方差性,例如,基于ARCH检验、White检验或Goldfed-QuaNadt检验来判断是否具有异方差性;如果最优的ARIMA(p*,d*,q*)的残差具有异方差性,那么对时间序列数据(X1, X2, X3,.., XnI进行变换处理,如log或Box-Cox变换处理,得到变换处理后的时间序列数据K y2, y3,.., yN},分析变换处理后的时间序列数据{yi,y2) y3,..,yNl的平稳性;根据变换处理后的时间序列数据{yi,y2,y3,..,yN}的平稳性,选择第二预测模型。可选地,可以使用与上述通过对时间序列数据进行逐级差分,对差分后的时间序列数据进行平稳性分析,和/或对比差分后的时间序列数据的方差选择Lasso算法或ARIMA算法建立第一预测模型的方式类似的方式,来选择第二预测模型。如果所选择的第二预测模型的残差仍然具有异方差性,选择Lasso算法建立所述第一预测模型,可选地,除变量的自回归特征外额外再抽取其它预先设定的特征集合。否则,在基于变换后的时间序列数据{yi,I2, y3,.., yN}得到当前最优的ARIMA (p*,d*,q*)后,预测出结果{yN+1,yN+2,..,yN+k},再按之前变换操作的反操作将预测结果处理成最终的预测结果lxN+1,xN+2,..,xN+k}。
[0081]根据本发明的示例性实施例,当选择ARIMA模型作为第一预测模型时,其中所述数据预测模块207适于:根据所选择的第一预测模型,直接预测未来K个时间点的数据。
[0082]根据本发明的示例性实施例,其中当选择Lasso模型作为第一预测模型时,所述数据预测模块207适于:针对所述K个时间点中的每一个时间点,根据所述时间序列数据的自回归参数和预先设定的特征参数,分别预测每一个时间点的数据。当选择Lasso算法建立第一模型时,对于需要预测的未来K个时间点中的每一个时间点,分拆成K个预测任务,对于每个预测任务单独训练模型,即,对于每个要预测的时间点利用相应的回归模型做单独的预测。例如,要预测未来k个时间点的数据,即{xN+1,xN+2,..,xN+k},将其分拆为k个预测任务,对每个预测任务启动预先设置的特征抽取模块,为每个任务单独抽取训练样本集和待预测样本。对于采用Lasso算法的情况,除待预测变量的自回归参数外,再额外提取一部分预先设定的特征参数,Lasso算法分别预测每一个时间点的数据,以使预测结果更加准确。
[0083]总之,本发明的实施方式提供的根据本发明的实施例的数据预测装置,通过分析所述时间序列数据的平稳性选择预测模型,并根据预测模型来预测未来时间点的数据,构建了改进的数据预测体系,能够自适应地判断该用何种模型建模,具有显著提高的灵活性,兼顾了预测效果和时间成本;同时还能自动进行参数选择和模型训练,提高了数据预测的准确性和效率,对于处理大批量的时间序列数据的趋势预测任务尤其有优势。
[0084]在此提供的方法和装置不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类装置所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
[0085]在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
[0086]类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循【具体实施方式】的权利要求书由此明确地并入该【具体实施方式】,其中每个权利要求本身都作为本发明的单独实施例。
[0087]本领域那些技术人员可以理解,可以对实施例中的装置中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个装置中。可以把实施例中的若干模块组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者模块中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的替代特征来代替。
[0088]此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
[0089]本发明的各个装置实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的装置中的一些或者全部模块的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
[0090]应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
[0091]本发明还公开了:
[0092]Al.—种数据预测方法,包括:
[0093]从服务器获取时间序列数据,所述时间序列数据包括已发生的N个时间点的数据;
[0094]分析所述时间序列数据的平稳性,以获得平稳性分析结果;
[0095]根据所述平稳性分析结果,选择第一预测模型;以及
[0096]根据所选择的第一预测模型,预测未来K个时间点的数据。
[0097]A2.如Al所述的方法,其中分析所述时间序列数据的平稳性包括:
[0098]利用单位根检验分析
时间序列数据的平稳性。
[0099]A3.如Al所述的方法,其中根据所述平稳性分析结果,选择第一预测模型包括:
[0100]当所述平稳性分析结果为所述时间序列数据是平稳的,选择ARIMA模型作为第一预测模型。
[0101]A4.如Al所述的方法,其中根据所述平稳性分析结果,选择第一预测模型包括:
[0102]当所述平稳性分析结果为所述时间序列数据是不平稳的,对所述时间序列数据进行逐级差分;
[0103]分析差分后的时间序列数据的平稳性;以及
[0104]当所述差分后的时间序列数据是平稳的,选择ARIMA模型作为第一预测模型。
[0105]A5.如Al所述的方法,其中根据所述平稳性分析结果,选择第一预测模型包括:
[0106]当所述平稳性分析结果为所述时间序列数据是不平稳的,对所述时间序列数据进行逐级差分;以及
[0107]当所述差分后的时间序列数据的方差大于差分前的所述时间序列数据,选择Lasso算法建立所述第一预测模型。
[0108]A6.如A4所述的方法,其中根据所述平稳性分析结果,选择第一预测模型包括:
[0109]根据所述平稳性分析结果,确定所述ARIMA模型的第一参数,所述第一参数是当差分后的时间序列数据是平稳时,所述时间序列数据被差分的次数;
[0110]计算所述差分后的时间序列数据的自相关函数和偏自相关函数;
[0111]根据所述第一参数、所述自相关函数和所述偏自相关函数,训练所述ARIMA模型,并选择最优的ARIMA模型作为所述第一预测模型。
[0112]A7.如A6所述的方法,其中选择最优的ARIMA模型作为所述第一预测模型包括:
[0113]当所述自相关函数和所述偏自相关函数为拖尾时,根据所述ARIMA模型的评价指标参数和ARIMA模型的测试集上的性能参数,选择最优的ARIMA模型作为所述第一预测模型。
[0114]AS.如A3或4所述的方法,其中根据所选择的第一预测模型,预测未来K个时间点的数据包括:
[0115]根据所选择的第一预测模型,直接预测未来K个时间点的数据。
[0116]A9.如A6所述的方法,其中根据所述平稳性分析结果,选择第一预测模型还包括:
[0117]判断所选择的第一预测模型的残差是否具有异方差性,当所选择的第一预测模型的残差具有异方差性,对所述时间序列数据进行变换处理;
[0118]分析变换处理后的时间序列数据的平稳性;
[0119]根据变换处理后的时间序列数据的平稳性,选择第二预测模型;
[0120]判断所选择的第二预测模型的残差是否具有异方差性,当所选择的第二预测模型的残差具有异方差性,选择Lasso算法建立所述第一预测模型。
[0121]A10.如A9所述的方法,其中判断所选择的预测模型的残差是否具有异方差性包括:
[0122]基于ARCH检验、White检验或Goldfed-Quanadt检验,判断所选择的预测模型的残差是否具有异方差性。
[0123]All.如A5或9所述的方法,其中根据所选择的第一预测模型,预测未来K个时间点的数据包括:
[0124]针对所述K个时间点中的每一个时间点,根据所述时间序列数据的自回归参数和预先设定的特征参数,分别预测每一个时间点的数据。
[0125]A12.—种数据预测装置,包括:
[0126]数据获取模块,适于从服务器获取时间序列数据,所述时间序列数据包括已发生的N个时间点的数据;
[0127]平稳性分析模块,适于分析所述时间序列数据的平稳性,以获得平稳性分析结果;
[0128]模型选择模块,适于根据所述平稳性分析结果,选择第一预测模型;以及
[0129]数据预测模块,适于根据所选择的第一预测模型,预测未来K个时间点的数据。
[0130]A13.如A12所述的装置,其中所述平稳性分析模块适于:
[0131]利用单位根检验分析时间序列数据的平稳性。
[0132]A14.如A12所述的装置,其中所述模型选择模块适于:
[0133]当所述平稳性分析结果为所述时间序列数据是平稳的,选择ARIMA模型作为第一预测模型。
[0134]A15.如A12所述的装置,其中所述模型选择模块适于:
[0135]当所述平稳性分析结果为所述时间序列数据是不平稳的,对所述时间序列数据进行逐级差分;
[0136]分析差分后的时间序列数据的平稳性;以及
[0137]当所述差分后的时间序列数据是平稳的,选择ARIMA模型作为第一预测模型。
[0138]A16.如A12所述的装置,其中所述模型选择模块适于:
[0139]当所述平稳性分析结果为所述时间序列数据是不平稳的,对所述时间序列数据进行逐级差分;以及
[0140]当所述差分后的时间序列数据的方差大于差分前的所述时间序列数据,选择Lasso算法建立所述第一预测模型。
[0141]A17.如A16所述的装置,其中所述模型选择模块适于:
[0142]根据所述平稳性分析结果,确定所述ARIMA模型的第一参数,所述第一参数是当差分后的时间序列数据是平稳时,所述时间序列数据被差分的次数;
[0143]计算所述差分后的时间序列数据的自相关函数和偏自相关函数;
[0144]根据所述第一参数、所述自相关函数和所述偏自相关函数,训练所述ARIMA模型,并选择最优的ARIMA模型作为所述第一预测模型。
[0145]A18.如A17所述的装置,其中所述模型选择模块还适于:
[0146]当所述自相关函数和所述偏自相关函数为拖尾时,根据所述ARIMA模型的评价指标参数和ARIMA模型的测试集上的性能参数,选择最优的ARIMA模型作为所述第一预测模型。
[0147]A19.如A14或15所述的装置,其中所述数据预测模块适于:
[0148]根据所选择的第一预测模型,直接预测未来K个时间点的数据。
[0149]A20.如A17所述的装置,其中所述模型选择模块还适于:
[0150]判断所选择的第一预测模型的残差是否具有异方差性,当所选择的第一预测模型的残差具有异方差性,对所述时间序列数据进行变换处理;
[0151]分析变换处理后的时间序列数据的平稳性;
[0152]根据变换处理后的时间序列数据的平稳性,选择第二预测模型;
[0153]判断所选择的第二预测模型的残差是否具有异方差性,当所选择的第二预测模型的残差具有异方差性,选择Lasso算法建立所述第一预测模型。
[0154]A21.如A20所述的装置,其中所述模型选择模块还适于:
[0155]基于ARCH检验、White检验或Goldfed-Quanadt检验,判断所选择的预测模型的残差是否具有异方差性。
[0156]A22.如A16或20所述的装置,其中所述数据预测模块适于:
[0157]针对所述K个时间点中的每一个时间点,根据所述时间序列数据的自回归参数和预先设定的特征参数,分别预测每一个时间点的数据。
【主权项】
1.一种数据预测方法,包括: 从服务器获取时间序列数据,所述时间序列数据包括已发生的N个时间点的数据; 分析所述时间序列数据的平稳性,以获得平稳性分析结果; 根据所述平稳性分析结果,选择第一预测模型;以及 根据所选择的第一预测模型,预测未来K个时间点的数据。2.如权利要求1所述的方法,其中分析所述时间序列数据的平稳性包括: 利用单位根检验分析时间序列数据的平稳性。3.如权利要求1所述的方法,其中根据所述平稳性分析结果,选择第一预测模型包括: 当所述平稳性分析结果为所述时间序列数据是平稳的,选择ARIMA模型作为第一预测模型。4.如权利要求1所述的方法,其中根据所述平稳性分析结果,选择第一预测模型包括: 当所述平稳性分析结果为所述时间序列数据是不平稳的,对所述时间序列数据进行逐级差分; 分析差分后的时间序列数据的平稳性;以及 当所述差分后的时间序列数据是平稳的,选择ARIMA模型作为第一预测模型。5.如权利要求1所述的方法,其中根据所述平稳性分析结果,选择第一预测模型包括: 当所述平稳性分析结果为所述时间序列数据是不平稳的,对所述时间序列数据进行逐级差分;以及 当所述差分后的时间序列数据的方差大于差分前的所述时间序列数据,选择Lasso算法建立所述第一预测模型。6.一种数据预测装置,包括: 数据获取模块,适于从服务器获取时间序列数据,所述时间序列数据包括已发生的N个时间点的数据; 平稳性分析模块,适于分析所述时间序列数据的平稳性,以获得平稳性分析结果; 模型选择模块,适于根据所述平稳性分析结果,选择第一预测模型;以及 数据预测模块,适于根据所选择的第一预测模型,预测未来K个时间点的数据。7.如权利要求6所述的装置,其中所述平稳性分析模块适于: 利用单位根检验分析时间序列数据的平稳性。8.如权利要求6所述的装置,其中所述模型选择模块适于: 当所述平稳性分析结果为所述时间序列数据是平稳的,选择ARIMA模型作为第一预测模型。9.如权利要求6所述的装置,其中所述模型选择模块适于: 当所述平稳性分析结果为所述时间序列数据是不平稳的,对所述时间序列数据进行逐级差分; 分析差分后的时间序列数据的平稳性;以及 当所述差分后的时间序列数据是平稳的,选择ARIMA模型作为第一预测模型。10.如权利要求6所述的装置,其中所述模型选择模块适于: 当所述平稳性分析结果为所述时间序列数据是不平稳的,对所述时间序列数据进行逐级差分;以及 当所述差分后的时间序列数据的方差大于差分前的所述时间序列数据,选择Lasso算法建立所述第一预测模型。
【专利摘要】本发明公开了一种数据预测方法和装置。所述方法包括:从服务器获取时间序列数据,所述时间序列数据包括已发生的N个时间点的数据;分析所述时间序列数据的平稳性,以获得平稳性分析结果;根据所述平稳性分析结果,选择第一预测模型;以及根据所选择的第一预测模型,预测未来K个时间点的数据。
【IPC分类】G06Q10/04, G06Q50/14
【公开号】CN104899663
【申请号】CN201510336437
【发明人】程苏琦, 罗维, 邓宇
【申请人】北京奇虎科技有限公司, 奇智软件(北京)有限公司
【公开日】2015年9月9日
【申请日】2015年6月17日