CN113656691A - 数据预测方法、装置及存储介质 - Google Patents
数据预测方法、装置及存储介质 Download PDFInfo
- Publication number
- CN113656691A CN113656691A CN202110943383.6A CN202110943383A CN113656691A CN 113656691 A CN113656691 A CN 113656691A CN 202110943383 A CN202110943383 A CN 202110943383A CN 113656691 A CN113656691 A CN 113656691A
- Authority
- CN
- China
- Prior art keywords
- data
- prediction
- training
- preset
- hierarchy
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9537—Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供了一种数据预测方法、装置及存储介质,通过获取分层时间序列数据;分层时间序列数据为各个层级时间序列对应的多组数据,其中,各个层级中的每层的子层级的数据之和等于对应父层级的数据;利用预设数据预测模型,对分层时间序列数据进行预测,确定出多个历史时间段之后的预设时间段内的预测结果;其中,预设数据预测模型是基于分层时间序列数据中的,历史预设时间段内的多组训练数据的预测误差,以及各个层级之间误差共同进行训练得到的。由于预设数据预测模型在训练时候不仅考虑到了预测误差的准确性,还考虑到了各个层级间的误差,所以训练得到的预设数据预测模型对数据的预测更加准确。
Description
技术领域
本发明实施例涉及预测模型技术领域,尤其涉及一种数据预测方法、装置及存储介质。
背景技术
时间序列预测有广泛的应用领域,比如零售行业的需求预测、金融市场行情预测、物流货量预测等等。在很多商业流程实现自动化智能化的过程中,时间序列预测起着非常重要的作用,比如在线购物网站,需要预测未来一段时间内每一类商品的销量是一系列商业决策。比如备货、促销等需要考虑的变量,因此预测技术能力会最终对销售收入、库存成本等产生重要影响。与此同时,大型在线购物网站同时售卖的商品数量最高可达百万级,大规模时间序列对现代时序预测技术产生了新的挑战。
现有技术中,时间序列预测通过使用单一层级的数据做预测,再通过拆分或者聚合的方式得到其他层级的预测结果,虽然使用起来简单方便,但也导致其在预测准确率上通常相对较低,主要的缺点有:首先,现有的预测方法均实质只使用了单一层级的预测结果,没有利用其它层级预测数据包含的信息,导致准确率损失;其次,将预测结果向上汇总或向下分解时也会额外引入预测误差。另外,由于使用不同的单一层级得到的结果不同,因此不仅在层级的选择上很依赖人工经验,同时也导致准确率损失。
发明内容
本发明实施例提供的一种数据预测方法、装置及存储介质,可以提高对数据预测的准确性。
本发明的技术方案是这样实现的:
本发明实施例提供了一种数据预测方法,包括:
获取分层时间序列数据;分层时间序列数据为各个层级时间序列对应的多组数据,其中,各个层级中的每层的子层级的数据之和等于对应父层级的数据;
利用预设数据预测模型,对分层时间序列数据进行预测,确定出多个历史时间段之后的预设时间段内的预测结果;其中,
预设数据预测模型是基于分层时间序列数据中的,历史预设时间段内的多组训练数据的预测误差,以及各个层级之间误差共同进行训练得到的。
上述方案中,利用预设数据预测模型,对分层时间序列数据进行预测,确定出多个历史时间段之后的预设时间段内的预测结果之前,获取分层时间序列数据之后,方法还包括:
对分层时间序列数据的多组数据进行标准化处理,并将标准化处理后的多组数据按照预设历史时间段分为训练集和测试集;训练集包括:多组训练数据;测试集包括:多组测试数据;
利用初始预测模型的损失函数计算训练集的预测误差,以及各个层级之间误差,并依据预测误差,及各个层级之间误差对初始预测模型的模型参数进行迭代调整,直至满足训练条件时停止,得到对应测试集的第一预测数据集合;第一预测数据集合包括:对应测试集的各个历史时间段的各个层级的迭代过程中的多次预测数据;
利用多组测试数据和第一预测数据集合进行比对,确定出预设数据预测模型。
上述方案中,利用初始预测模型的损失函数计算训练集的预测误差,以及各个层级之间误差,并依据预测误差,及各个层级之间误差对初始预测模型的模型参数进行迭代调整,直至满足训练条件时停止,得到对应测试集的第一预测数据集合,包括:
将多组训练数据输入初始预测模型,得到第二预测数据集合;第二预测数据集合包括:多个历史时间段的各个层级的预测数据;
基于第二预测数据集合和多组训练数据,结合损失函数计算预测误差和各个层级之间误差;
对损失函数进行梯度求解,得到迭代过程中的模型参数,从而得到更新的预测模型;
利用更新的预测模型,继续对多组训练数据进行训练,直至满足训练条件时停止,得到最终的预测模型,从而得到迭代过程中的多个预测模型;
在采用多个预测模型,得到对应的每个第二预测数据集合中,提取出对应测试集的各个历史时间段的各个层级的预测数据,进而得到迭代过程中的第一预测数据集合。
上述方案中,基于第二预测数据集合和多组训练数据,结合损失函数计算预测误差和各个层级之间误差,包括:
基于第二预测数据集合中的第一预测数据,及多组训练数据,计算预测误差;第一预测数据为第二预测数据集合中多个第一时间段中的各个层级的预测数据;多个第一时间段为多个历史时间段中预设历史时间段之前的时间段;
基于第二预测数据集合中第二预测数据,计算各个层级之间误差;第二预测数据为第二预测数据集合中多个第二时间段中的各个层级的预测数据;多个第二时间段为多个历史时间段中预设历史时间段之后的时间段。
上述方案中,基于第二预测数据集合中的第一预测数据,及多组训练数据,计算预测误差,包括:
计算同一第一时间段中第一预测数据,与对应层级的训练数据的差的平方和,进而得到同一第一时间段中各个层级的第一总和,将多个第一时间段对应的多个第一总和相加得到预测误差。
上述方案中,基于第二预测数据集合中第二预测数据,计算各个层级之间误差,包括:
计算同一第二时间段中第二预测数据中的每层的各个父层级的预测数据,与对应的各个子层级的预测数据和之差的平方和,将多个第二时间段的多个平方和相加得到第二总和;
将多个第二总和与调和误差惩罚项超参数相乘,得到各个层级之间误差。
上述方案中,利用多组测试数据和第一预测数据集合进行比对,确定出预设数据预测模型,包括:
将多组测试数据分别与第一预测数据集合中的多次预测数据进行比对,确定出多次预测数据对应的多次对比误差;
在多次对比误差中确定出在预设误差范围内的目标对比误差;
确定出目标对比误差对应的目标次预测数据对应的目标迭代次;
在多个预测模型中确定目标迭代次对应的预测数据预测模型。
上述方案中,多组训练数据包括:多组第一已处理数据;多组测试数据包括:多组第二已处理数据;
对分层时间序列数据的多组数据进行标准化处理,并将标准化处理后的多组数据按照预设历史时间段分为训练集和测试集,包括:
删除多组数据中各个层级的异常值,并用异常值对应层级的平均数据进行填充;
利用存在空白数据的层级对应的平均数据,填充多组数据中各个层级对应的空白数据,进而得到对应各个层级时间序列的多组已处理数据;
在多个历史时间段中确定出预设历史时间段,将预设历史时间段之前的多个第一时间段对应的多组第一已处理数据组合为训练集,将预设历史时间段之后的多个第二时间段对应的多组第二已处理数据组合为测试集。
上述方案中,方法还包括:
获取多个历史时间段对应的多组物流货量数据;
利用预设数据预测模型对多组物流货量数据进行处理,得到多个历史时间段之后的预设时间段的预测物流货量数据。
本发明实施例还提供了一种数据预测装置,包括:
数据获取单元,用于获取分层时间序列数据;分层时间序列数据为各个层级时间序列对应的多组数据,其中,各个层级中的每层的子层级的数据之和等于对应父层级的数据;
预测单元,用于利用预设数据预测模型,对分层时间序列数据进行预测,确定出多个历史时间段之后的预设时间段内的预测结果;其中,
预设数据预测模型是基于分层时间序列数据中的历史预设时间段内的多组训练数据的预测误差,以及各个层级之间误差共同进行训练得到的。
本发明实施例还提供了一种数据预测装置,包括存储器和处理器,存储器存储有可在处理器上运行的计算机程序,处理器执行程序时实现上述方法中的步骤。
本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述方法中的步骤。
本发明实施例中,获取分层时间序列数据;分层时间序列数据为各个层级时间序列对应的多组数据,其中,各个层级中的每层的子层级的数据之和等于对应父层级的数据;利用预设数据预测模型,对分层时间序列数据进行预测,确定出多个历史时间段之后的预设时间段内的预测结果;其中,预设数据预测模型是基于分层时间序列数据中的,历史预设时间段内的多组训练数据的预测误差,以及各个层级之间误差共同进行训练得到的。由于预设数据预测模型是基于历史时间段内的多组训练数据的预测误差,及各个层级之间误差训练得到的,在训练时候不仅考虑到了预测误差的准确性,还考虑到了各个层级间的误差,所以训练得到的预设数据预测模型对数据的预测更加准确。
附图说明
图1为本发明实施例提供的数据预测方法的一个可选的流程示意图;
图2为本发明实施例提供的数据预测方法的一个可选的效果示意图;
图3为本发明实施例提供的数据预测方法的一个可选的效果示意图;
图4为本发明实施例提供的数据预测方法的一个可选的流程示意图;
图5为本发明实施例提供的数据预测方法的一个可选的流程示意图;
图6为本发明实施例提供的数据预测方法的一个可选的流程示意图;
图7为本发明实施例提供的数据预测方法的一个可选的流程示意图;
图8为本发明实施例提供的数据预测方法的一个可选的流程示意图;
图9为本发明实施例提供的数据预测方法的一个可选的流程示意图;
图10为本发明实施例提供的物流货量预测装置的结构示意图;
图11为本发明实施例提供的数据预测方法的一个可选的流程示意图;
图12为本发明实施例提供的数据预测装置的结构示意图一;
图13为本发明实施例提供的数据预测装置的结构示意图二;
图14为本发明实施例提供的数据预测装置的一种硬件实体示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和实施例对本发明的技术方案进一步详细阐述,所描述的实施例不应视为对本发明的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
如果发明文件中出现“第一/第二”的类似描述则增加以下的说明,在以下的描述中,所涉及的术语“第一\第二\第三”仅仅是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本发明实施例能够以除了在这里图示或描述的以外的顺序实施。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本发明实施例的目的,不是旨在限制本发明。
现有技术中,比如一家全国性的快消品生产企业需要同时预测某款产品在全国与各省的未来销量以便制定库存布局与备货计划。预测方案是分别对各省和全国的销量时间序列进行单时序预测,那么这些不同层级的预测结果往往不会自动满足一致性,即全国的销量预测与各省的销量预测的总和不相等,这种“不一致”的预测结果是无法用于各层级协同决策流程中的。
目前主要的预测方法包括:“自上而下”(Top-Down)、“自下而上”(Bottom-Up)、“中间突破”(Middle-Out)、“最优调合”。顾名思义,“自上而下”是指先对最高层级的时间序列做预测,然后将预测结果根据固定比例拆分到低层级,“自下而上”是指先预测最细粒度的时间序列,然后将预测结果向上聚合。“中间突破”方法结合了自下而上和自上而下的方法。首先,选择“中间级别”并为该级别的所有序列生成预测。对于中间级别以上的系列,通过向上汇总“中间级别”的预测,使用自下而上的方法生成一致预测。对于“中间级别”以下的序列,通过向下分解“中间级别”的预测,使用自上而下的方法生成一致预测。“最优调和”方法是先得到全部层级的预测结果,然后通过最优线性加权调和的方式来对预测结果进行加工,然后得到最终结果。
“自上而下”、“自下而上”、“中间突破”三种方法是目前使用最多的方法,这些方法通过仅使用单一层级的数据做预测,再通过拆分或者聚合的方式得到其他层级的预测结果,虽然使用起来简单方便,但也导致其在预测准确率上通常相对较低,主要的缺点有:首先,这三种预测方法均实质只使用了单一层级的预测结果,没有利用其它层级预测数据包含的信息,导致准确率损失;其次,将预测结果向上汇总或向下分解时也会额外引入预测误差。另外,由于使用不同的单一层级得到的结果不同,因此不仅在层级的选择上很依赖人工经验,同时也导致准确率损失。
为了解决上述的预测模型预测准确率较低的技术问题,本发明实施例还提供了一种数据预测方法,请参阅图1,为本发明实施例提供的数据预测方法的一个可选的流程示意图,将结合图1示出的步骤进行说明。
S101、获取分层时间序列数据;分层时间序列数据为各个层级时间序列对应的多组数据,其中,各个层级中的每层的子层级的数据之和等于对应父层级的数据。
本发明实施例中,服务器获取分层时间序列数据。其中,分层时间序列数据为各个层级时间序列对应的多组数据。各个层级中的每层的子层级的数据之和等于对应父层级的数据。
本发明实施例中,服务器预先与各个层级对应的客户端建立通信连接。服务器通过与各个层级的客户端之间的通信连接,从客户端获取历史多个时间段对应的各个层级的多组数据。也就是服务器从各个层级的客户端获取到了各个层级时间序列对应的多组数据。
本发明实施例中,服务器在自身的数据库中获取预存的分层时间序列数据。
其中,多组数据中的任意一组数据可以包括:任意一时间序列的各个层级对应的数据的组合。也就是多组数据中的任意一组数据可以包括:历史多个时间段中的任意一个时间段对应的各个层级的数据的组合。其中,一组数据中的一个数据可以为对应层级的销量数据、物流量数据、用户年龄数据中的任意一个。其中,物流量数据可以为对应的物流总件数、物流总重量和物流总体积中的一个。
示例性的,时间序列可以为当前时刻之前的三个月分别对应的三个时间序列。时间序列还可以为当前时刻之前的三天分别对应的三个时间序列,本发明实施例中,对时间序列不做限定。
本发明实施例中,子层级可以为市层级,父层级可以为该子层级对应的省层级。一个省层级可以对应多个市层级。父层级还可以为一级代理,子层级可以为父层级对应的多个二级代理。一个一级代理可以对应多个二级代理。多个子层级的数据之和为对应父层级的数据。
本发明实施例中,服务器首先采集待预测的分层时间序列数据。服务器在时刻1-T观测到的第i个时间序列取值记为yi=(yt i,…,yT i)T,i=1,…,n。其中,yi=(yt i,…,yT i)T表征1-T个时间段各个层级的数据,1,…,n为n个层级。
其中,分层时间序列数据满足各个子层级的数据之和等于对应父层级的数据。结合图2,该层次结构满足y1=y2+y3。其中y1为y2和y3对应的父层级数据,y2和y3为y1对应的子层级数据。
结合图3,分层时间序列数据的层次结构满足y1=y2+y3,y2=y4+y5,y3=y6+y7。其中y2为y4和y5对应的父层级数据,y3为y6和y7对应的父层级数据。分层时间序列预测的任务是给定时间1,…,t0的观测数据,预测全部时间序列在未来期t+h的取值其中,y是时间序列数据中的数据。当时间序列为天维度时,则为每天的货量。如7月1日~5日,y_北京市=(10,20,30,40,50),y_河北省=(30,40,50,60,10)。在分层时间序列研究与应用中,常用所示层次结构图形象表达该约束条件。此类约束是分层时序的基础特征,也是“分层”含义的体现,此类约束是统计范围内各变量满足的自然规律,如Y_全国=sum(Y_北京,Y_河北,…),Y_北京市=sum(Y_海淀,…,Y_西城)。
S102、利用预设数据预测模型,对分层时间序列数据进行预测,确定出多个历史时间段之后的预设时间段内的预测结果;其中,预设数据预测模型是基于分层时间序列数据中的,历史预设时间段内的多组训练数据的预测误差,以及各个层级之间误差共同进行训练得到的。
本发明实施例中,服务器利用预设数据预测模型,对分层时间序列数据进行预测,确定出多个历史时间段之后的预设时间段内的预测结果;其中,预设数据预测模型是基于分层时间序列数据中的,历史预设时间段内的多组训练数据的预测误差,以及各个层级之间误差共同进行训练得到的。
本发明实施例中,服务器通过将多组数据分为训练集和测试集。服务器通过训练数据结合损失函数对初始预测模型进行迭代训练。服务器通过迭代训练得到了迭代多次对应的多个预测模型。服务器在将每次迭代的预测数据与对应的真实数据相比,得到每次迭代的预测误差。服务器确定误差最小的迭代对应的预测模型为预设数据预测模型。
本发明实施例中,通过获取分层时间序列数据;分层时间序列数据为各个层级时间序列对应的多组数据,其中,各个层级中的每层的子层级的数据之和等于对应父层级的数据;利用预设数据预测模型,对分层时间序列数据进行预测,确定出多个历史时间段之后的预设时间段内的预测结果;其中,预设数据预测模型是基于分层时间序列数据中的,历史预设时间段内的多组训练数据的预测误差,以及各个层级之间误差共同进行训练得到的。由于预设数据预测模型是基于历史时间段内的多组训练数据的预测误差,及各个层级之间误差训练得到的,在训练时候不仅考虑到了预测误差的准确性,还考虑到了各个层级间的误差,所以训练得到的预设数据预测模型对数据的预测更加准确。
在一些实施例中,参见图4,图4为本发明实施例提供的数据预测方法的一个可选的流程示意图,图1示出的S101之后还包括S103至S105实现,将结合各步骤进行说明。
S103、对分层时间序列数据的多组数据进行标准化处理,并将标准化处理后的多组数据按照预设历史时间段分为训练集和测试集。
本发明实施例中,服务器对分层时间序列数据的多组数据进行标准化处理,并将标准化处理后的多组数据按照预设历史时间段分为训练集和测试集。其中,训练集包括:多组训练数据。测试集包括:多组测试数据。
本发明实施例中,服务器可以删除多组数据中的多余数据,并用对应层级的平均数据填充,或者服务器可以对多组数据中各个层级的空白数据通过对应层级的平均数据进行填充,得到处理后的多组数据。由于多组数据对应多个历史时间段。服务器在多个历史时间段中确定出预设历史时间段,服务器将预设历史时间段之前对应的几组训练数据确定为训练集。服务器将预设历史时间段之后对应的几组测试数据确定为测试集。
其中,训练集是用来训练初始预测模型的数据集合。测试集是用来确定预设数据预测模型的数据集合。
本发明实施例中,服务器对多组数据进行预处理,删除异常值与缺失值填充,并对数据进行标准化。然后对预处理后的数据取某时刻t0,根据使用用途划分为训练集(t=1,…,t0)和测试集(t=t0+1,…,T)。
S104、利用初始预测模型的损失函数计算训练集的预测误差,以及各个层级之间误差,并依据预测误差,及各个层级之间误差对初始预测模型的模型参数进行迭代调整,直至满足训练条件时停止,得到对应测试集的第一预测数据集合。
本发明实施例中,服务器利用初始预测模型的损失函数计算训练集的预测误差,以及各个层级之间误差,并依据预测误差,及各个层级之间误差对初始预测模型的模型参数进行迭代调整,直至满足训练条件时停止,得到对应测试集的第一预测数据集合。其中,第一预测数据集合包括:对应测试集的各个历史时间段的各个层级的迭代过程中的多次预测数据。
本发明实施例中,服务器将训练集内的多组训练数据输入初始预测模型。得到了第二预测数据集合。第二预测数据集合包括:多个历史时间段的各个层级的预测数据。服务器基于第二预测数据集合和多组训练数据,结合损失函数计算得到多组训练数据的预测误差和各个层级之间误差。服务器对损失函数进行求解得到本次训练的模型参数。服务器根据该模型参数对初始预测模型进行调整得到了新的预测模型。服务器通过该新的预测模型继续对多组训练数据进行训练,直至满足训练条件时停止,得到最终的预测模型。同时,也得到了迭代过程中对应测试集的第一预测数据集合。
其中,满足训练条件可以为:达到预设的训练次数或者损失函数值收敛。
S105、利用多组测试数据和第一预测数据集合进行比对,确定出预设数据预测模型。
本发明实施例中,服务器利用多组测试数据和第一预测数据集合进行对比,确定出预设数据预测模型。
本发明实施例中,由于第一预测数据集合内包括:对应测试集的多次迭代的多次预测数据。服务器将多组测试数据中各个时间段中的各个层级的数据与每次预测数据中的对应数据进行对比,确定出各个层级的误差,再将各个层级的误差相加得到每次预测数据的误差。进而可以确定出多次预测数据对应的多次误差。服务器确定出误差最小的一次预测数据对应迭代调整后的预测模型为预设数据预测模型。
示例性的,服务器将多组测试数据中各个时间段中的各个层级的数据与某次预测数据中的对应数据相减,得到对应各个时间段各个层级的数据的误差。服务器将各个时间段各个层级的数据的误差相加,可以得到了对应该次预测数据的误差。
本发明实施例中,服务器通过预测误差和各个层级之间误差迭代调整了预测模型,得到了迭代过程中的多个预测模型。服务器再根据多组测试数据和第一预测数据集合进行比对,确定出预设数据模型。由于预设数据预测模型是基于历史时间段内的多组训练数据的预测误差,及各个层级之间误差训练得到的,在训练时候不仅考虑到了预测误差的准确性,还考虑到了各个层级间的误差,所以训练得到的预设数据预测模型对数据的预测更加准确。
在一些实施例中,参见图5,图5为本发明实施例提供的数据预测方法的一个可选的流程示意图,图4示出的S104还可以通过S106至S110实现,将结合各步骤进行说明。
S106、将多组训练数据输入初始预测模型,得到第二预测数据集合。
本发明实施例中,服务器将多组训练数据输入初始预测模型,得到迭代过程中第一次迭代的第二预测数据集合。其中,第二预测数据集合包括:多个历史时间段的各个层级的预测数据。
本发明实施例中,服务器将多组训练数据输入初始预测模型,得到第一次训练的第二预测数据集合。服务器根据第一次的第二预测数据集合,结合损失函数计算预测误差和各个层级间之误差。服务器根据预测误差和各个层级之间误差得到模型参数,调整初始预测模型,得到下一次更新的预测模型。服务器再次将多组训练数据输入该下一次更新的预测模型,进而执行上述过程,完成迭代。
S107、基于第二预测数据集合和多组训练数据,结合损失函数计算预测误差和各个层级之间误差。
本发明实施例中,服务器基于第二预测数据集合和多组训练数据,结合损失函数计算预测误差和各个层级之间误差。其中,损失函数为对应初始预测模型的函数。
本发明实施例中,服务器基于第二预测数据集合和多组训练数据,结合损失函数计算多个第一时间段的多组训练数据对应的预测误差。其中,多个第一时间段为多个历史时间段中预设历史时间段之前的时间段。预测误差表征预测数据和多组训练数据中对应数据之间的误差。
本发明实施例中,服务器基于第二预测数据集合,结合损失函数的计算多个第二时间段的第二预测数据结合内的各个层级之间的误差。其中,多个第二时间段为多个历史时间段中预设历史时间段之后的时间端。各个层级之间误差表征第二预测数据集合中的父层级的数据和对应子层级数据和的误差。
S108、对损失函数进行梯度求解,得到迭代过程中的模型参数,从而得到更新的预测模型。
本发明实施例中,服务器对损失函数进行梯度求解,得到迭代过程中的模型参数,从而得到更新的预测模型。
本发明实施例中,服务器在迭代的过程中,对每次迭代后的损失函数梯度求解,得到了迭代过程中的每次迭代的模型参数。服务器通过每次的模型参数对本次的预测模型进行调整得到了更新的预测模型。
S109、利用更新的预测模型,继续对多组训练数据进行训练,直至满足训练条件时停止,得到最终的预测模型,从而得到迭代过程中的多个预测模型。
本发明实施例中,服务器利用更新的预测模型,继续对多组训练数据进行训练,直至满足训练条件时停止,得到最终的预测模型,从而得到迭代过程中的多个预测模型。
在本发明实施例中,预测模型的网络结构将基于该预测误差和各个层级之间误差通过输出层,向中间层、输入层逐层反传,按梯度下降的方式修正各层的权值。当预测模型的网络结构各层的权值修正之后,进而得到了新的预测模型。新的预测模型的网络结构会继续对训练集进行训练,直到满足训练条件时停止,得到迭代过程中的多个预测模型。
S110、在采用多个预测模型,得到对应的每个第二预测数据集合中,提取出对应测试集的各个历史时间段的各个层级的预测数据,进而得到迭代过程中的第一预测数据集合。
本发明实施例中,服务器在采用多个预测模型,得到对应的每个第二预测数据集合中,提取出对应测试集的各个历史时间段的各个层级的预测数据,进而得到迭代过程中的第一预测数据集合。
本发明实施例中,服务器在每个第二预测数据集合中,提取出对应测试集的各个历史时间段的各个层级的预测数据,得到了对应每次迭代的一次预测数据集合。服务器将每次迭代的一次预测数据集合进行组合,形成了第一预测数据集合。
本发明实施例中,服务器将多组训练数据输入初始预测模型,得到了第二预测数据集合。服务器再通过第二预测数据集合计算得到预测误差和各个层级之间误差。服务器通过预测误差和各个层级之间误差迭代调整了预测模型,得到了迭代过程中的多个预测模型。同时,服务器可以在迭代过程中的多个第二预测数据集合中提取出第一预测数据集合来进行比对。由于预设数据预测模型是基于历史时间段内的多组训练数据的预测误差,及各个层级之间误差训练得到的,在训练时候不仅考虑到了预测误差的准确性,还考虑到了各个层级间的误差,所以训练得到的预设数据预测模型对数据的预测更加准确。
在一些实施例中,参见图6,图6为本发明实施例提供的数据预测方法的一个可选的流程示意图,图5示出的S107还可以通过S111至S112实现,将结合各步骤进行说明。
S111、基于第二预测数据集合中的第一预测数据,及多组训练数据,计算预测误差。
本发明实施例中,服务器基于第二预测数据集合中的第一预测数据,及多组训练数据,计算预测误差。
其中,第一预测数据为第二预测数据集合中多个第一时间段中的各个层级的预测数据。多个第一时间段为多个历史时间段中预设历史时间段之前的时间段。
S112、基于第二预测数据集合中第二预测数据,计算各个层级之间误差。
本发明实施例中,服务器基于第二预测数据集合中的第二预测数据,计算各个层级之间误差。
其中,第二预测数据为第二预测数据集合中多个第二时间段中的各个层级的预测数据。多个第二时间段为多个历史时间段中预设历史时间段之后的时间段。
本发明实施例中,服务器构建基于DeepAR的分层时间序列预测模型。DeepAR模型是一种基于循环神经网络的时序预测模型,可用于一般的时间序列预测,但是不能直接用于分层时间预测。因此对于分层时间序列预测任务,本发明设计的改进的用于分层时间序列预测的损失函数(1)为:
其中,为预测误差损失,为DeepAR模型的损失函数,不失一般性,这里假设l(x,y)=(x-y)2,是层级间调和误差损失,其中λ为调和误差惩罚项超参数。C为由分层结构推导出的约束条件的集合。是约束条件c中的“父节点”时间序列在t时刻的预测值,是约束条件c中的“叶子节点”时间序列在t时刻的预测值,J(c)为“叶子节点”的个数。如图3中所示结构的分层时间序列数据为例,该层次结构满足的约束是C={y1=y2+y3,y2=y4+y5,y3=y6+y7}。
在一些实施例中,参见图7,图7为本发明实施例提供的数据预测方法的一个可选的流程示意图,图6示出的S111至S112还可以通过S113至S115实现,将结合各步骤进行说明。
S113、计算同一第一时间段中第一预测数据,与对应层级的训练数据的差的平方和,进而得到同一第一时间段中各个层级的第一总和,将多个第一时间段对应的多个第一总和相加得到预测误差。
本发明实施例中,服务器计算同一第一时间段中第一预测数据,与对应层级的训练数据的差的平方和,进而得到同一第一时间段中各个层级的第一总和。服务器将多个第一时间段对应的多个第一总和相加得到预测误差。
示例性的,多个第一时间段包括:两个第一时间段。各个层级包括:父层级(一级代理)和对应的两个子层级(两个二级代理)。服务器计算第一个第一时间段中父层级的数据与对应预测数据的差的平方和,计算两个子层级的数据与对应预测数据的差的平方和,服务器再将父层级的对应的差的平方和与两个子层级对应的差的平方和相加,得到了对应第一个第一时间段的第一总和。同样的,服务器采用同样的方法计算出第二个时间段对应的第一总和。服务器将两个第一总和相加得到预测误差。
S114、计算同一第二时间段中第二预测数据中的每层的各个父层级的预测数据,与对应的各个子层级的预测数据和之差的平方和,将多个第二时间段的多个平方和相加得到第二总和。
本发明实施例中,服务器计算同一第二时间段中第二预测数据中的每层的各个父层级的预测数据,与对应的各个子层级的预测数据和之差的平方和,将多个第二时间段的多个平方和相加得到第二总和。
示例性的,多个第二时间段包括:两个第二时间段。各个层级包括:父层级(一级代理)和对应的两个子层级(两个二级代理)。服务器计算第一个第二时间段中父层级的数据与对应的各个子层级的预测数据和之差的平方和。同样的,服务器采用同样的方法计算出第二个时间段对应的平方和。服务器将两个平方和相加得到第二总和。
S115、将多个第二总和与调和误差惩罚项超参数相乘得到各层级间误差。
本发明实施例中,服务器将多个第二和与调和误差惩罚项超参数得到各个层级之间误差。
其中,调和误差惩罚项超参数可以为任意正数。
相比于普通的时间序列预测来说,分层时间序列预测实质上是对最终预测结果添加了层级间的一致性约束条件,即:
而直接解决这样一个大规模优化问题是非常困难的,而通过将约束条件作为惩罚项添加到损失函数中后,我们可以通过随机梯度下降等方法对公式(1)进行求解,对任意给定的差惩罚项超参数λ,各层级间预测结果的不一致会随着训练过程中损失函数值的下降而下降。
对于分层时间序列预测来说,未来的各层级时序必然满足层级间的一致性。而通过添加调和误差损失的惩罚项,从参数迭代的过程来看,这相当于要求DeepAR的网络参数会在优化过程中兼顾预测偏差和层级结构偏差。从结果来看,这相当于在优化测试集误差的下界。以图2中的分层时序为例,根据柯西不等式:
因此可以看出,损失函数中的层级结构偏差项实质上是一个预测误差的下界,直观理解就是说,虽然满足层级间一致性的预测结果并不一定保证是预测准确率最高的,但是既然未来的真实数据一定是满足一致性的,那么如果预测结果的层级间的误差很大,那么说明预测准确率也一定不会很高,因此在损失函数中加入该项能够有助于提高分层时间序列预测的预测性能。
本发明实施例中,服务器通过第二预测数据集合中的第一预测数据和第二预测数据,分别计算得到了预测误差,和各个层级之间误差。由于服务器在结合损失函数计算误差的过程中,考虑到了各个层级之间的误差,进而通过损失函数的模型参数调整后的预测模型对数据的预测更加准确。
在一些实施例中,参见图8,图8为本发明实施例提供的数据预测方法的一个可选的流程示意图,图3示出的S103可以通过S116至S118实现,将结合各步骤进行说明。
S116、删除多组数据中各个层级的异常值,并用异常值对应层级的平均数据进行填充。
本发明实施例中,服务器删除多组数据中各个层级的异常值,并用异常值对应层级的平均数据进行填充。
其中,平均数据为该异常值对应层级的多个历史时间段的多个该层级的数据的平均值。
S117、利用存在空白数据的层级对应的平均数据,填充多组数据中各个层级对应的空白数据,进而得到对应各个层级时间序列的多组已处理数据。
本发明实施例中,服务器利用存在空白数据的层级对应的平均数据,填充多组数据中各个层级对应的空白数据,进而得到对应各个层级时间序列的多组已处理数据。
S118、在多个历史时间段中确定出预设历史时间段,将预设历史时间段之前的多个第一时间段对应的多组第一已处理数据组合为训练集,将预设历史时间段之后的多个第二时间段对应的多组第二已处理数据组合为测试集。
本发明实施例中,服务器在多个历史时间段中确定出预设历史时间段,将预设历史时间段之前的多个第一时间段对应的多组第一已处理数据组合为训练集,将预设历史时间段之后的多个第二时间段对应的多组第二已处理数据组合为测试集。
示例性的,多个历史时间段可以包括:1月至12月对应的12个时间段。服务器可以确定9月为预设历史时间段。在服务器确定9月为预设历史时间段的情况下,多个第一时间段为1-8月对应的8个时间段,多个第二时间段还可以为10-12月对应的3个时间段。
本发明实施例中,服务器对多组数据进行标准化处理,删除了异常值和填充了空白数据,进而使得多组数据的数据结构更加完善,有利于模型训练。
在一些实施例中,参见图8,图8为本发明实施例提供的数据预测方法的一个可选的流程示意图,图3示出的S105可以通过S119至S122实现,将结合各步骤进行说明。
S119、将多组测试数据分别与第一预测数据集合中的多次预测数据进行比对,确定出多次预测数据对应的多次对比误差。
本发明实施例中,服务器将多组测试数据分别与第一预测数据集合中的多次预测数据进行比对,确定出多次预测数据对应的多次对比误差。
本发明实施例中,服务器将多组测试数据中每个时间段的各个层级的测试数据分别与第一预测数据集合某一次预测数据中对应的预测数据进行比对。服务器确定出每个时间段各个层级的测试数据对应的误差。服务器将每个时间段各个层级的测试数据对应的误差相加,得到每时间段对应的误差,也就是得到了每组测试数据的误差。服务器再将每组测试数据对应的误差相加,得到了对应该次预测数据的误差。进而,可以得到多次预测数据的多次对比误差。
S120、在多次对比误差中确定出在预设误差范围内的目标对比误差。
本发明实施例中,服务器在多次对比误差中确定出在预设误差范围内的目标对比误差。
S121、确定出目标对比误差对应的目标次预测数据对应的目标迭代次。
本发明实施例中,服务器确定出目标对比误差对应的目标次预测数据对应的目标迭代次。
S122、在多个预测模型中确定目标迭代次对应的预测数据预测模型。
本发明实施例中,由于迭代过程中形成了多个预测模型。服务器在多个预测模型中确定出目标迭代次对应形成的预设数据预测模型。
本发明实施例中,由于在迭代过程中形成了多个预测模型,服务器确定出与多组测试数据误差最小的目标迭代次对应的预设数据预测模型,又由于预设数据预测模型对测试集的预测精度较高,进而通过预设数据预测模型对分层时间序列数据进行处理,可以得到预测精度较高的预测结果。
在一些实施例中,参见图9,图9为本发明实施例提供的数据预测方法的一个可选的流程示意图,将结合各步骤进行说明。
S123、获取多个历史时间段对应的多组物流货量数据。
本发明实施例中,服务器获取多个历史时间段对应的多组物流货量数据。
其中,多组物流货量数据包括:全国、各区域、各省的发货量数据与层级关系。
S124、利用预设数据预测模型对多组物流货量数据进行处理,得到多个历史时间段之后的预设时间段的预测物流货量数据。
本发明实施例中,服务器利用预设数据预测模型对多组物流货量数据进行处理,得到多个历史时间段之后的预设时间段的预测物流货量数据。
本发明实施例中,服务器利用预设数据预测模型对多组物流货量数据进行处理,由于预设数据预测模型是基于历史预设时间段内的多组训练数据的预测误差,以及各个层级之间误差共同进行训练得到的。进而通过该预设数据预测模型对多组物流货量数据进行预测,可以得到精度较高的预测结果。
本发明实施例还提供了一种物流货量预测装置600,用于执行图9中提供的数据预测方法,请参阅,图10为本发明实施例提供的物流货量预测装置的结构示意图。
本发明实施例提供了一种物流货量预测装置600,包括:数据获取模块601、数据预处理模块602、目标预测模型训练模块603和数据预测模型604。
数据获取模块601,用于获取物流货量历史时间序列数据与时序间的层级关系。如全国、各区域、各省的发货量数据与层级关系。数据获取模块601用于执行S123。
数据预处理模块602,用于对数据进行预处理,剔除异常值与缺失值填充,并对数据进行标准化。然后对预处理后的数据划分为训练集和测试集。
目标预测模型训练模块603,用于利用历史时序数据对初始网络模型进行训练,得到时序数据的目标预测模型。
数据预测模块604,用于利用目标预测模型对时序数据在未来时间段的数据进行预测得到预测结果,并对所述预测结果进行存储、展示。
在一些实施例中,参见图11,图11为本发明实施例提供的数据预测方法的一个可选的流程示意图,将结合各步骤进行说明。
S201、采集待预测的分层时间序列数据。
示例性的,结合图12,数据预测装置700中的数据获取模块701,用于获取历史时间序列数据与时序间的层级关系。
S202、数据预处理,剔除异常值与缺失值填充;数据切分,划分训练集与测试集。
示例性的,数据预测装置700中的数据预处理模块702,用于对历史时间序列数据进行预处理,剔除异常值与缺失值填充,并对数据进行标准化。然后对预处理后的数据划分为训练集和测试集。
S203、构建DeepAR时间序列预测模型。
S204、训练集输入。
S205、设定分层损失项超参数。
S206、采用学习率自适应的Adam优化算法更新DeepAR模型参数。
S207、训练是否达到预设训练次数。
示例性的,数据预测装置700中的目标预测模型训练模块703,用于利用历史时序数据对初始网络模型进行训练,得到时序数据的目标预测模型。也就是最终模型。
S208、取最终模型输出未来期预测结果。
示例性的,数据预测装置700中的数据预测模块704,用于利用目标预测模型(最终模型)对时序数据在未来时间段的数据进行预测得到预测结果,并对所述预测结果进行存储、展示。
由于DeepAR时间序列预测模型是基于历史时间段内分层时间序列数据中的多组训练数据的预测误差,及各个层级之间误差构建的,在DeepAR时间序列预测模型训练时候不仅考虑到了预测误差的准确性,还考虑到了各个层级间的误差,所以训练得到的最终模型对数据的预测更加准确。
示例性的,本发明实施例还提供了一种数据预测装置700,用于执行图11中提供的数据预测方法,请参阅,图12为本发明实施例提供的数据预测装置的结构示意图一。
本发明实施例提供了一种数据预测装置700,包括:数据获取模块701、数据预处理模块702、目标预测模型训练模块703和数据预测模型704。
数据获取模块701,用于获取历史时间序列数据与时序间的层级关系。
数据预处理模块702,用于对历史时间序列数据进行预处理,剔除异常值与缺失值填充,并对数据进行标准化。然后对预处理后的数据划分为训练集和测试集。模块具体细节在上述预测方法流程中的S202中。
目标预测模型训练模块703,用于利用历史时序数据对初始网络模型进行训练,得到时序数据的目标预测模型。模块具体细节在上述预测方法流程中的S203至S207。
数据预测模块704,用于利用目标预测模型对时序数据在未来时间段的数据进行预测得到预测结果,并对所述预测结果进行存储、展示。模块具体细节在上述预测方法流程中的S208。
请参阅,图13为本发明实施例提供的数据预测装置的结构示意图二。
本发明实施例还提供了一种数据预测装置800,包括:数据获取单元803和预测单元804。
数据获取单元803,用于获取分层时间序列数据;分层时间序列数据为各个层级时间序列对应的多组数据,其中,各个层级中的每层的子层级的数据之和等于对应父层级的数据;
预测单元804,用于利用预设数据预测模型,对分层时间序列数据进行预测,确定出多个历史时间段之后的预设时间段内的预测结果;其中,
预设数据预测模型是基于分层时间序列数据中的历史预设时间段内的多组训练数据的预测误差,以及各个层级之间误差共同进行训练得到的。
本发明实施例中,数据预测装置800用于对分层时间序列数据的多组数据进行标准化处理,并将标准化处理后的多组数据按照预设历史时间段分为训练集和测试集;训练集包括:多组训练数据;测试集包括:多组测试数据;利用初始预测模型的损失函数计算训练集的预测误差,以及各个层级之间误差,并依据预测误差,及各个层级之间误差对初始预测模型的模型参数进行迭代调整,直至满足训练条件时停止,得到对应测试集的第一预测数据集合;第一预测数据集合包括:对应测试集的各个历史时间段的各个层级的迭代过程中的多次预测数据;利用多组测试数据和第一预测数据集合进行比对,确定出预设数据预测模型。
本发明实施例中,数据预测装置800用于将多组训练数据输入初始预测模型,得到第二预测数据集合;第二预测数据集合包括:多个历史时间段的各个层级的预测数据;基于第二预测数据集合和多组训练数据,结合损失函数计算预测误差和各个层级之间误差;对损失函数进行梯度求解,得到迭代过程中的模型参数,从而得到更新的预测模型;利用更新的预测模型,继续对多组训练数据进行训练,直至满足训练条件时停止,得到最终的预测模型,从而得到迭代过程中的多个预测模型;在采用多个预测模型,得到对应的每个第二预测数据集合中,提取出对应测试集的各个历史时间段的各个层级的预测数据,进而得到迭代过程中的第一预测数据集合。
本发明实施例中,数据预测装置800用于基于第二预测数据集合中的第一预测数据,及多组训练数据,计算预测误差;第一预测数据为第二预测数据集合中多个第一时间段中的各个层级的预测数据;多个第一时间段为多个历史时间段中预设历史时间段之前的时间段;基于第二预测数据集合中第二预测数据,计算各个层级之间误差;第二预测数据为第二预测数据集合中多个第二时间段中的各个层级的预测数据;多个第二时间段为多个历史时间段中预设历史时间段之后的时间段。
本发明实施例中,数据预测装置800用于计算同一第一时间段中第一预测数据,与对应层级的训练数据的差的平方和,进而得到同一第一时间段中各个层级的第一总和,将多个第一时间段对应的多个第一总和相加得到预测误差。
本发明实施例中,数据预测装置800用于计算同一第二时间段中第二预测数据中的每层的各个父层级的预测数据,与对应的各个子层级的预测数据和之差的平方和,将多个第二时间段的多个平方和相加得到第二总和;将多个第二总和与调和误差惩罚项超参数相乘,得到各个层级之间误差。
本发明实施例中,数据预测装置800用于将多组测试数据分别与第一预测数据集合中的多次预测数据进行比对,确定出多次预测数据对应的多次对比误差;在多次对比误差中确定出在预设误差范围内的目标对比误差;确定出目标对比误差对应的目标次预测数据对应的目标迭代次;在多个预测模型中确定目标迭代次对应的预测数据预测模型。
本发明实施例中,多组训练数据包括:多组第一已处理数据;多组测试数据包括:多组第二已处理数据;数据预测装置800用于删除多组数据中各个层级的异常值,并用异常值对应层级的平均数据进行填充;利用存在空白数据的层级对应的平均数据,填充多组数据中各个层级对应的空白数据,进而得到对应各个层级时间序列的多组已处理数据;在多个历史时间段中确定出预设历史时间段,将预设历史时间段之前的多个第一时间段对应的多组第一已处理数据组合为训练集,将预设历史时间段之后的多个第二时间段对应的多组第二已处理数据组合为测试集。
本发明实施例中,数据预测装置800中的数据获取单元803用于获取多个历史时间段对应的多组物流货量数据;数据预测装置800中的预测单元804用于利用预设数据预测模型对多组物流货量数据进行处理,得到多个历史时间段之后的预设时间段的预测物流货量数据。
本发明实施例中,通过数据获取单元803获取分层时间序列数据;分层时间序列数据为各个层级时间序列对应的多组数据,其中,各个层级中的每层的子层级的数据之和等于对应父层级的数据;再通过预测单元804利用预设数据预测模型,对分层时间序列数据进行预测,确定出多个历史时间段之后的预设时间段内的预测结果;其中,预设数据预测模型是基于分层时间序列数据中的,历史预设时间段内的多组训练数据的预测误差,以及各个层级之间误差共同进行训练得到的。由于预设数据预测模型是基于历史时间段内的多组训练数据的预测误差,及各个层级之间误差训练得到的,在训练时候不仅考虑到了预测误差的准确性,还考虑到了各个层级间的误差,所以训练得到的预设数据预测模型对数据的预测更加准确。
需要说明的是,本发明实施例中,如果以软件功能模块的形式实现上述的数据预测方法,并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台数据预测装置(可以是个人计算机等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。这样,本发明实施例不限制于任何特定的硬件和软件结合。
对应地,本发明实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述方法中的步骤。
对应地,本发明实施例提供一种数据预测装置,包括存储器802和处理器801,所述存储器802存储有可在处理器801上运行的计算机程序,所述处理器801执行所述程序时实现上述方法中的步骤。
这里需要指出的是:以上存储介质和装置实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本发明存储介质和装置实施例中未披露的技术细节,请参照本发明方法实施例的描述而理解。
需要说明的是,图14为本发明实施例提供的数据预测装置的一种硬件实体示意图,如图14所示,该数据预测装置800的硬件实体包括:处理器801和存储器802,其中;
处理器801通常控制数据预测装置800的总体操作。
存储器802配置为存储由处理器801可执行的指令和应用,还可以缓存待处理器801以及数据预测装置800中各模块待处理或已经处理的数据(例如,图像数据、音频数据、语音通信数据和视频通信数据),可以通过闪存(FLASH)或随机访问存储器(Random AccessMemory,RAM)实现。
应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个***,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储装置、只读存储器(Read Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机装置(可以是个人计算机、服务器、或者网络装置等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储装置、ROM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (12)
1.一种数据预测方法,其特征在于,包括:
获取分层时间序列数据;所述分层时间序列数据为各个层级时间序列对应的多组数据,其中,所述各个层级中的每层的子层级的数据之和等于对应父层级的数据;
利用预设数据预测模型,对所述分层时间序列数据进行预测,确定出多个历史时间段之后的预设时间段内的预测结果;其中,
所述预设数据预测模型是基于所述分层时间序列数据中的,历史预设时间段内的多组训练数据的预测误差,以及各个层级之间误差共同进行训练得到的。
2.根据权利要求1所述的数据预测方法,其特征在于,所述利用预设数据预测模型,对所述分层时间序列数据进行预测,确定出多个历史时间段之后的预设时间段内的预测结果之前,所述获取分层时间序列数据之后,所述方法还包括:
对所述分层时间序列数据的多组数据进行标准化处理,并将标准化处理后的多组数据按照预设历史时间段分为训练集和测试集;所述训练集包括:多组训练数据;所述测试集包括:多组测试数据;
利用初始预测模型的损失函数计算所述训练集的预测误差,以及各个层级之间误差,并依据所述预测误差,及所述各个层级之间误差对所述初始预测模型的模型参数进行迭代调整,直至满足训练条件时停止,得到对应所述测试集的第一预测数据集合;所述第一预测数据集合包括:对应所述测试集的各个历史时间段的各个层级的迭代过程中的多次预测数据;
利用所述多组测试数据和所述第一预测数据集合进行比对,确定出所述预设数据预测模型。
3.根据权利要求2所述的数据预测方法,其特征在于,所述利用初始预测模型的损失函数计算所述训练集的预测误差,以及各个层级之间误差,并依据所述预测误差,及所述各个层级之间误差对初始预测模型的模型参数进行迭代调整,直至满足训练条件时停止,得到对应测试集的第一预测数据集合,包括:
将所述多组训练数据输入所述初始预测模型,得到第二预测数据集合;所述第二预测数据集合包括:所述多个历史时间段的各个层级的预测数据;
基于所述第二预测数据集合和所述多组训练数据,结合所述损失函数计算所述预测误差和所述各个层级之间误差;
对所述损失函数进行梯度求解,得到迭代过程中的模型参数,从而得到更新的预测模型;
利用所述更新的预测模型,继续对所述多组训练数据进行训练,直至满足训练条件时停止,得到最终的预测模型,从而得到迭代过程中的多个预测模型;
在采用所述多个预测模型,得到对应的每个第二预测数据集合中,提取出对应所述测试集的各个历史时间段的各个层级的预测数据,进而得到所述迭代过程中的所述第一预测数据集合。
4.根据权利要求3所述的数据预测方法,其特征在于,所述基于所述第二预测数据集合和所述多组训练数据,结合所述损失函数计算所述预测误差和所述各个层级之间误差,包括:
基于所述第二预测数据集合中的第一预测数据,及所述多组训练数据,计算所述预测误差;所述第一预测数据为所述第二预测数据集合中多个第一时间段中的各个层级的预测数据;所述多个第一时间段为所述多个历史时间段中所述预设历史时间段之前的时间段;
基于所述第二预测数据集合中第二预测数据,计算所述各个层级之间误差;所述第二预测数据为所述第二预测数据集合中多个第二时间段中的各个层级的预测数据;所述多个第二时间段为所述多个历史时间段中所述预设历史时间段之后的时间段。
5.根据权利要求4所述的数据预测方法,其特征在于,所述基于所述第二预测数据集合中的第一预测数据,及所述多组训练数据,计算所述预测误差,包括:
计算同一第一时间段中所述第一预测数据,与对应层级的训练数据的差的平方和,进而得到同一第一时间段中各个层级的第一总和,将所述多个第一时间段对应的多个第一总和相加得到所述预测误差。
6.根据权利要求4所述的数据预测方法,其特征在于,所述基于所述第二预测数据集合中第二预测数据,计算所述各个层级之间误差,包括:
计算同一第二时间段中所述第二预测数据中的每层的各个父层级的预测数据,与对应的各个子层级的预测数据和之差的平方和,将所述多个第二时间段的多个平方和相加得到第二总和;
将所述多个第二总和与调和误差惩罚项超参数相乘,得到所述各个层级之间误差。
7.根据权利要求3-6任一项所述的数据预测方法,其特征在于,所述利用所述多组测试数据和所述第一预测数据集合进行比对,确定出所述预设数据预测模型,包括:
将所述多组测试数据分别与所述第一预测数据集合中的多次预测数据进行比对,确定出所述多次预测数据对应的多次对比误差;
在所述多次对比误差中确定出在预设误差范围内的目标对比误差;
确定出所述目标对比误差对应的目标次预测数据对应的目标迭代次;
在所述多个预测模型中确定目标迭代次对应的所述预测数据预测模型。
8.根据权利要求2-7任一项所述的数据预测方法,其特征在于,所述多组训练数据包括:多组第一已处理数据;所述多组测试数据包括:多组第二已处理数据;
所述对所述分层时间序列数据的多组数据进行标准化处理,并将标准化处理后的多组数据按照预设历史时间段分为训练集和测试集,包括:
删除所述多组数据中各个层级的异常值,并用所述异常值对应层级的平均数据进行填充;
利用存在空白数据的层级对应的平均数据,填充所述多组数据中各个层级对应的空白数据,进而得到对应所述各个层级时间序列的多组已处理数据;
在所述多个历史时间段中确定出预设历史时间段,将所述预设历史时间段之前的多个第一时间段对应的所述多组第一已处理数据组合为训练集,将所述预设历史时间段之后的多个第二时间段对应的所述多组第二已处理数据组合为测试集。
9.根据权利要求1-8任一项所述的数据预测方法,其特征在于,所述方法还包括:
获取所述多个历史时间段对应的多组物流货量数据;
利用所述预设数据预测模型对所述多组物流货量数据进行处理,得到所述多个历史时间段之后的预设时间段的预测物流货量数据。
10.一种数据预测装置,其特征在于,包括:
数据获取单元,用于获取分层时间序列数据;所述分层时间序列数据为各个层级时间序列对应的多组数据,其中,所述各个层级中的每层的子层级的数据之和等于对应父层级的数据;
预测单元,用于利用预设数据预测模型,对所述分层时间序列数据进行预测,确定出多个历史时间段之后的预设时间段内的预测结果;其中,
所述预设数据预测模型是基于所述分层时间序列数据中的历史预设时间段内的多组训练数据的预测误差,以及各个层级之间误差共同进行训练得到的。
11.一种数据预测装置,其特征在于,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,所述处理器执行所述程序时实现权利要求1至9任一项所述方法中的步骤。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至9任一项所述方法中的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110943383.6A CN113656691A (zh) | 2021-08-17 | 2021-08-17 | 数据预测方法、装置及存储介质 |
PCT/CN2022/108936 WO2023020257A1 (zh) | 2021-08-17 | 2022-07-29 | 数据预测方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110943383.6A CN113656691A (zh) | 2021-08-17 | 2021-08-17 | 数据预测方法、装置及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113656691A true CN113656691A (zh) | 2021-11-16 |
Family
ID=78479949
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110943383.6A Pending CN113656691A (zh) | 2021-08-17 | 2021-08-17 | 数据预测方法、装置及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN113656691A (zh) |
WO (1) | WO2023020257A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114626896A (zh) * | 2022-04-02 | 2022-06-14 | 北京京东振世信息技术有限公司 | 物品数量预测方法及装置、电子设备和存储介质 |
WO2023020257A1 (zh) * | 2021-08-17 | 2023-02-23 | 北京沃东天骏信息技术有限公司 | 数据预测方法、装置及存储介质 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116956049A (zh) * | 2023-09-19 | 2023-10-27 | 中国联合网络通信集团有限公司 | 工业产能预测模型的训练方法、装置、设备及存储介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110263380B (zh) * | 2019-05-23 | 2020-11-24 | 东华大学 | 一种纺丝工序级联建模分段区间参数配置方法 |
CN111915083B (zh) * | 2020-08-03 | 2024-06-11 | 国网山东省电力公司电力科学研究院 | 一种基于时间分层组合的风电功率预测方法及预测*** |
CN112348271B (zh) * | 2020-11-12 | 2024-01-30 | 华北电力大学 | 基于vmd-ipso-gru的短期光伏功率预测方法 |
CN113656691A (zh) * | 2021-08-17 | 2021-11-16 | 北京沃东天骏信息技术有限公司 | 数据预测方法、装置及存储介质 |
-
2021
- 2021-08-17 CN CN202110943383.6A patent/CN113656691A/zh active Pending
-
2022
- 2022-07-29 WO PCT/CN2022/108936 patent/WO2023020257A1/zh unknown
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023020257A1 (zh) * | 2021-08-17 | 2023-02-23 | 北京沃东天骏信息技术有限公司 | 数据预测方法、装置及存储介质 |
CN114626896A (zh) * | 2022-04-02 | 2022-06-14 | 北京京东振世信息技术有限公司 | 物品数量预测方法及装置、电子设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2023020257A1 (zh) | 2023-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200302524A1 (en) | Systems and methods for model fairness | |
CN113656691A (zh) | 数据预测方法、装置及存储介质 | |
Guan et al. | An adaptive neuro-fuzzy inference system based approach to real estate property assessment | |
Sentas et al. | Categorical missing data imputation for software cost estimation by multinomial logistic regression | |
Chang et al. | Comparative analysis of trip generation models: results using home-based work trips in the Seoul metropolitan area | |
Cagri Tolga et al. | A fuzzy multi-criteria decision analysis approach for retail location selection | |
JPWO2015040790A1 (ja) | 払出量予測装置、払出量予測方法、プログラム、及び、払出量予測システム | |
CN109767032A (zh) | 一种基于数据分析的企业财务运营数字化管理优化*** | |
CN110046981B (zh) | 一种信用评估方法、装置及存储介质 | |
US20230385857A1 (en) | Predictive systems and processes for product attribute research and development | |
CN113111924A (zh) | 电力客户分类方法及装置 | |
Sakalli | Optimization of Production‐Distribution Problem in Supply Chain Management under Stochastic and Fuzzy Uncertainties | |
Estes et al. | Smart predict-then-optimize for two-stage linear programs with side information | |
CN111127072A (zh) | 一种新产品需求的多阶段实时预测方法 | |
Melendez et al. | Tourism demand modeling and forecasting for El Salvador | |
CN113240359B (zh) | 一种应对外界重大变动的需求预测方法 | |
CN115630979A (zh) | 日前电价的预测方法、装置、存储介质及计算机设备 | |
CN114282657A (zh) | 一种市场数据长期预测模型训练方法、装置、设备及存储介质 | |
CN114519073A (zh) | 一种基于图谱关系挖掘的产品配置推荐方法及*** | |
Cui et al. | Probabilistic model for online 3D printing service evaluation | |
Lv et al. | GA‐based feature selection method for oversized data analysis in digital economy | |
KR102510463B1 (ko) | 상권 분석 정보 제공 방법 및 이를 기록한 기록매체 | |
Wang | The application of categorical embedding and spatial-constraint clustering methods in nested GLM model | |
CN117252665B (zh) | 业务推荐方法、装置、电子设备及存储介质 | |
Wang et al. | Platform Merchant Demand Prediction Based on Decision Tree and Multi-Layer Perceptron Models |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |