一种预测数据异常检测方法、装置、设备及存储介质转让专利
申请号 : CN201911139963.9
文献号 : CN112825164A
文献日 : 2021-05-21
发明人 : 肖沙沙 , 王本玉 , 许颖聪 , 林梦婷 , 戴妍妍 , 金晶
申请人 : 顺丰科技有限公司
摘要 :
权利要求 :
1.一种预测数据异常检测方法,其特征在于,包括:确定待检测网点,以及所述待检测网点的待检测指标;
获取所述待检测网点的所述待检测指标的往期预测数据、往期真实数据,以及本期预测数据;
根据所述往期预测数据和所述往期真实数据,检测所述本期预测数据是否出现异常。
2.如权利要求1所述的预测数据异常检测方法,其特征在于,所述根据所述往期预测数据和所述往期真实数据,检测所述本期预测数据是否出现异常,包括:根据所述待检测网点的所述往期预测数据和所述往期真实数据,计算所述待检测网点的所述本期预测数据的控制上限和控制下限;
在全部的所述待检测网点中,统计所述本期预测数据未在对应的所述控制上限和所述控制下限范围内的待检测网点所占的比值;
根据所述比值确定所述本期预测数据是否出现异常。
3.如权利要求2所述的预测数据异常检测方法,其特征在于,所述根据所述待检测网点的所述往期预测数据和所述往期真实数据,计算所述待检测网点的所述本期预测数据的控制上限和控制下限,包括:
根据所述待检测网点的所述往期预测数据和所述往期真实数据,计算所述待检测网点的所述往期预测数据所对应的控制上限和控制下限;
根据所述待检测网点的所述往期预测数据所对应的控制上限和控制下限,计算所述待检测网点的所述本期预测数据的控制上限和控制下限。
4.如权利要求3所述的预测数据异常检测方法,其特征在于,每期预测数据包括预测当天的预测值和预测当天之后预设时间内每一天的预测值,所述当天之后预设时间内的每一天对应一个预测提前期;所述根据所述待检测网点的所述往期预测数据和所述往期真实数据,计算所述待检测网点的所述往期预测数据所对应的控制上限和控制下限,包括:获取所述待检测网点的所述往期预测数据中的预测本期的预测值,以及获取所述待检测网点的所述往期预测数据中的每个预测提前期的预测值;
根据所述往期预测数据中的预测本期的预测值计算所述往期预测数据中的预测本期的预测均值;
根据所述往期预测数据中的每个预测提前期的预测值和所述往期真实数据,计算每个预测提前期所对应的误差均值;
根据所述预测均值和每个预测提前期所对应的误差均值,计算每个预测提前期所对应的控制上限和控制下限;并将每个预测提前期所对应的控制上限和控制下限,作为所述待检测网点的所述往期预测数据所对应的控制上限和控制下限。
5.如权利要求3所述的预测数据异常检测方法,其特征在于,所述根据所述待检测网点的所述往期预测数据所对应的控制上限和控制下限,计算所述待检测网点的所述本期预测数据的控制上限和控制下限,包括:确定所述待检测网点的所述往期预测数据所对应的控制上限的上α分位数,并将所述上α分位数作为所述待检测网点的所述本期预测数据的控制上限;
确定所述待检测网点的所述往期预测数据所对应的控制下限的下β分位数,并将所述下β分位数作为所述待检测网点的所述本期预测数据的控制下限。
6.如权利要求2所述的预测数据异常检测方法,其特征在于,所述根据所述比值确定所述本期预测数据是否出现异常,包括:判断所述比值是否大于预设比值;
若所述比值大于预设比值,则确定所述本期预测数据异常;并从所述往期预测数据中确定一期预测数据作为本期预测数据;
若所述比值不大于预设比值,则确定所述本期预测数据正常。
7.如权利要求1所述的预测数据异常检测方法,其特征在于,所述确定待检测网点,包括:
获取所有网点中的待检测指标的往期预测数据和往期真实数据;
根据所述往期预测数据和所述往期真实数据,确定每个网点的预测误差;
根据每个网点的预测误差,从所述所有网点中确定待检测网点。
8.一种预测数据异常检测装置,其特征在于,包括:确定单元,用于确定待检测网点,以及所述待检测网点的待检测指标;
获取单元,用于获取所述待检测网点的所述待检测指标的往期预测数据、往期真实数据,以及本期预测数据;
检测单元,用于根据所述往期预测数据和所述往期真实数据,检测所述本期预测数据是否出现异常。
9.一种计算机设备,其特征在于,所述计算机设备包括:一个或多个处理器;存储器;以及一个或多个应用程序,其中所述处理器和所述存储器相连接,所述一个或多个应用程序被存储于所述存储器中,并配置为由所述处理器执行以实现权利要求1至7中任一项所述的预测数据异常检测方法。
10.一种存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器进行加载,以执行权利要求1至7任一项所述的预测数据异常检测方法中的步骤。
说明书 :
一种预测数据异常检测方法、装置、设备及存储介质
技术领域
背景技术
型在每天的预测更新中有时会受到新加入的特征参数和历史数据影响,导致输出的预测数
据出现明显异常,当异常的预测数据输送给下游相关业务人员进行人力物力资源分配时会
造成严重后果。因此使用预测模型对各网点当天及未来收派件量进行预测时,不能对模型
输出的预测数据的准确率进行判定,以及对预测数据的合理性进行评价,降低了用户体验。
发明内容
包括:
限的下β分位数;
的控制下限。
多个应用程序被存储于所述存储器中,并配置为由所述处理器执行上述任一项所述的预测
数据异常检测方法。
所述往期预测数据和所述往期真实数据,检测所述本期预测数据是否出现异常。本发明实
施例实现根据往期预测数据和往期真实数据,来检测本期预测数据是否出现异常,实现了
对本期预测数据是否出现异常的检测,根据是否出现异常来确定本期预测数据的合理性。
附图说明
本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附
图。
具体实施方式
本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施
例,都属于本发明保护的范围。
一”、“第二”的特征可以明示或者隐含地包括一个或者更多个所述特征。在本发明的描述
中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。另外,“第一”、“第二”这些
术语用来将多个元素彼此区分开。例如,在不脱离本发明范围的前提下,第一计算单元可以
被称为第二计算单元,并且类似地,第二计算单元可以被称为第一计算单元。第一计算单元
和第二计算单元均为计算单元,但它们并非同一计算单元。
何技术人员能够实现和使用本发明,给出了以下描述。在以下描述中,为了解释的目的而列
出了细节。应当明白的是,本领域普通技术人员可以认识到,在不使用这些特定细节的情况
下也可以实现本发明。在其它实例中,不会对公知的结构和过程进行详细阐述,以避免不必
要的细节使本发明的描述变得晦涩。因此,本发明并非旨在限于所示的实施例,而是与符合
本发明所公开的原理和特征的最广范围相一致。
台式电脑等设备。以下分别进行详细说明。
要提前优化配置各网点的人力物力资源,需每天利用件量预测模型对各网点当天以及未来
收派件量进行预测,以更新各网点当天及未来收派件量的预测数据,其中,未来收派件量的
预测数据指的是当天之后预设时间段内的每一天的收派件量的预测值。因此,需要对预测
出的收派件量进行异常检测,以确定预测的收派件量是否正常。故待检测网点指的是需要
对预测出来的收派件量进行检测的站点。
则将每天的预测数据作为一期预测数据,也可以理解为件量预测模型的更新频率为每天。
如此,每期预测数据包括预测当天的预测值和预测当天之后预设时间内每一天的预测值。
往期预测数据包括预测往期当天的预测值和预测往期当天之后的预设时间段内每一天的
预测值,例如,上一期预测数据包括预测昨天的预测值和预测昨天之后预设时间段内每一
天的预测值。往期真实数据指的是往期当天所对应的实际值。步骤1011,包括:获取所有网
点中的待检测指标的过去多期预测数据和过去多期真实数据。
据,即过去N天的实际值;然后根据过去N期预测数据中每期对于当天的预测值和过去N天的
实际值,计算每个网点过去N期的平均绝对百分比误差(Mean absolute percentage
error,MAPE);将所计算的平均绝对百分比误差作为每个网点的预测误差。其中,还可以计
算均方根误差(Root Mean Square Error,RMSE),平均绝对误差(Mean Absolute Error,
MAE)等来代替平均绝对百分比误差,来作为每个网点的预测误差。
的拆分、合并)会导致预测误差较大,选择预测误差较大的网点序列做对比检验不具代表
性。因此,需要从所有网点中确定待检测网点,以根据待检测网点的数据来进行预测数据的
检测,如此,提高预测数据检测的准确度和效率。
预测误差是否小于等于50%,例如,MAPE<=50%;若某网点的往期真实数据中存在过去连
续N期的实际值,且往期预测数据中存在过去连续2N期预测数据,且计算出的该网点的预测
误差小于等于50%(例如,该网点过去N期的实际值与预测值的MAPE<=50),则将该网点确
定为待检测网点;否则,则不将该网点确定为待检测网点。
预测数据,过去N期真实数据,以及本期预测数据。
的预测值和预测当天之后预设时间段内每一天的预测值。其中,2018/8/21也被称为被检测
日期,即需要检测本期预测数据是否正常的检测日期,对应于本期预测数据的当天。假设N
=10,则往期预测数据,即为过去20期预测数据(2018/8/1-2018/8/20所对应的每期预测数
据),往期真实数据,即为过去10期真实数据(2018/8/11-2018/8/20所对应的每期真实数
据,即2018/8/11-2018/8/20所对应的实际值)。
通常是生产过程中进行实时监控的统计分析技术,运用科学的方法区分生产过程中产品质
量的随机波动与异常波动,从而在发生异常波动趋势时提前给出预警,方便相关管理人员
及时采取措施。SPC在监测过程中可根据控制图来判断异常情况,控制图中包括控制中线
(CL)、控制上线(UCL)、控制下限(LCL)组成,当被检测的点超过控制上限、控制下限时为异
常点。控制上限、控制下限常用的是3σ原理,根据质量特性的均值μ和标准偏差σ来控制上
限、控制下限。本发明中采用统计过程控制的方法来检测本期预测数据是否出现异常。
据所对应的控制上限和控制下限,计算待检测网点的本期预测数据的控制上限和控制下
限。
往期预测数据和往期真实数据,计算待检测网点的往期预测数据所对应的控制上限和控制
下限的步骤,如图4所示,包括1031a-1031e。
2018/8/21日之后预设时间段内每一天的预测值,包括2018/8/22日的预测值、预测2018/8/
23日的预测值、预测2018/8/24日的预测值、......。其中,预测本期的预测值,指的是本期
预测数据中选择用来作为检测的预测值。本期预测数据中选择用来作为检测的预测值可以
是2018/8/21(当天)的预测值,也可以是2018/8/22、2018/8/23、2018/8/24......中的任一
天的预测值,通常情况下选择最近日期的预测值来作为检测,故以下方案中选择用当天
2018/8/21日的预测值为例进行说明。如此,往期预测数据中的预测本期的预测值,理解为,
过去N期预测数据中预测2018/8/21日的预测值,即2018/8/11-2018/8/20每天的预测数据
中预测2018/8/21日的预测值。
一天等),T+2的物理意义为今天预测后天(或者前天预测今天或者今天预测后两天等),T+
3、……、T+N的物理意义以此类推。需要说明的是,若用来作为检测的预测值是2018/8/21
(当天)的预测值,,那么对应的,每个预测提前期包括T+1、T+2、……、T+N所对应的预测提前
期;若用来作为检测的预测值是2018/8/22的预测值,对应的,每个预测提前期包括T+2、T+
3、……、T+N所对应的预测提前期;若“用来作为检测的预测值是2018/8/23,对应的,每个预
测提前期包括T+3、T+4、……、T+N所对应的预测提前期;若用来作为检测的预测值是2018/
8/24的预测值,对应的,每个预测提前期包括T+4、T+5、……、T+N所对应的预测提前期;依次
类推。
测值、2018/8/17日预测的2018/8/18的预测值、……、2018/8/10日预测的2018/8/11的预测
值。如对于T+2所对应的预测提前期,则获取2018/8/18日预测的2018/8/20的预测值、2018/
8/17日预测的2018/8/19的预测值、2018/8/16日预测的2018/8/18的预测值、……、2018/8/
9日预测的2018/8/11的预测值。对于T+3、……、T+N所对应的预测提前期的预测值以此类
推。具体地,如表1所示,为T+1、……、T+N所对应的预测提前期的预测值。为了简化表达,将
其中的年份去掉了。其中,表1中的最后一列是解释说明;表1中的第一行从左到右依次表示
的是2018/8/11所对应的真实值、2018/8/12所对应的真实值、2018/8/13所对应的真实
值、……,2018/8/20所对应的真实值;从表1中的第二行开始分别对应T+1、……、T+N所对应
的预测提前期的预测值。
T+2 8/9 8/10 8/11 ...... 8/18 本行中的每个日期预测后两天的预测值
T+3 8/8 8/9 8/10 ...... 8/17 本行中的每个日期预测后三天的预测值
...... ...... ...... ...... ...... ...... ......
T+N 8/1 8/2 8/3 ...... 8/10 本行中的每个日期预测后N天的预测值
测均值。如根据过去2018/8/11-2018/8/20这10期预测数据中预测2018/8/21日的预测值求
平均以得到2018/8/21日的预测均值。具体地,计算公式如公式(2)所示,其中,表示预测
均值,N表示N期,yt表示预测值。
2018/8/22日的预测均值;若用来作为检测的预测值是2018/8/23的预测值,则对于每个待
检测网点,根据过去N期预测数据中预测2018/8/23日的预测值,计算过去N期预测数据中预
测2018/8/23日的预测均值,依次类推。其中,上述公式(2)中有多少个yt,分母就为对应个
数。
根据每个预测提前期的预测值和往期真实数据,计算每个预测提前期的误差,可以理解为,
如对于2018/8/11的实际值,T+1所对应的预测提前期的预测误差是指2018/08/10日输出的
2018/08/11的预测值和2018/08/11的实际值的误差,T+2所对应的预测提前期的预测误差
2018/08/9日输出的2018/08/11的预测值和2018/08/11的实际值的误差,......,T+10所对
应的预测提前期的预测误差是指2018/08/01输出的日期2018/08/11的预测值和2018/08/
11实际值的误差。如表1所示,后面的每期数据的误差计算,以此类推。
据每个预测提前期的误差计算每个预测提前期的的误差均值,理解为,对于选择的N期真实
数据,每一期都计算出了一个T+1、T+2、……、T+N所对应的预测提前期的误差,根据每一期
计算出的一个T+1、T+2、……、T+N所对应的预测提前期的误差计算T+1、T+2、……、T+N所对
应的预测提前期的误差均值。其中,误差均值为 i=1,2,....,N。若误差指的是相对误
差,则计算出的误差均值为相对误差均值,若误差指的是绝对误差,则计算出的误差均值为
绝对误差均值。该步骤的实际意义是,计算预测后一天的误差均值,计算预测后两天的误差
均值,计算预测后三天的误差均值,……,计算预测后N天的误差均值。
值,则计算每个预测提前期的控制上限和控制下限的计算公式如公式(5)和公式(6)所示。
其中,i=1,2,....,N,Y_UCLi表示第i个预测提前期的控制上限,Y_LCLi表示第i个预测提前
期的控制下限,k为常数。其中,k的值可根据件量预测模型的实际情况进行设定,通常情况
下默认设置为1。
所对应的控制下限。
误差情况,根据往期预测数据的多种误差情况,来得到往期预测数据所对应的控制上限和
控制下限,使得计算出的往期预测数据所对应的控制上限和控制下限更加准确,以使后续
利用往期预测数据所对应的控制上限和控制下限计算出的本期预测数据的控制上限和控
制下限也更加准确、合理。
预测数据所对应的控制上限的上α分位数,并将上α分位数作为待检测网点的本期预测数据
的控制上限;确定待检测网点的往期预测数据所对应的控制下限的下β分位数,并将下β分
位数作为待检测网点的本期预测数据的控制下限。可以理解地,对于每个待检测网点的被
检测日期,也即对于每个待检测网点的本期当天来说,每个待检测网点,均有N个预测上限,
即往期预测数据所对应的控制上限;和N个预测下限,即往期预测数据所对应的控制下限。
对N个预测上限,提取上α分位数,将所提取的上α分位数确定为往期预测数据所对应的控制
上限的上α分位数,将上α分位数作为本期预测数据的控制上限。对N个预测下限,提取下β分
位数,将所提取的下β分位数确定为往期预测数据所对应的控制下限的下β分位数,将下β分
位数作为本期预测数据的控制下限。具体地,对于每个待检测网点,确定本期预测数据的控
制上限和控制下限的公式如公式(7)和公式(8)所示。其中,Y_UCL表示本期预测数据的控制
上限,Y_LCL表示本期预测数据的控制下限。
的N个预测提前期的控制上限的上α分位数,例如,上1/4分位数(整体的75%分位数)。将每
个预测提前期的控制下限(也即往期预测数据的控制下限),按照从小到大排列,本期预测
数据的控制下限为排列后的N个预测提前期的控制下限的下β分位数,例如,下1/4分位数
(整体的25%分位数)。对于每个待检测网点,都可计算出本期预测数据的控制上限和控制
下限。
25%位置上的数)也叫做第一四分位数,排在上1/4位置上的数就叫上四分位数(按照%比,
也就是75%位置上的数)也叫做第三四分位数,同样排列在中间位置的就是中位数,也叫做
第二四分位数,四分位数间距就是指上下四分位数之间的差值。
的控制上限和控制下限计算的更为准确,合理。
据中的预测当天的预测值未在对应的控制上限和控制下限范围内,则确定为异常网点;统
计异常网点所占的比值。具体地,如比值的计算如公式(9)所示,其中,将未在对应的控制上
限和控制下限范围内的待检测网点,即异常网点所占的比值为R表示,M0表示未在对应的控
制上限和控制下限的异常网点的数量;M表示全部的待检测网点的数量。
并从往期预测数据中确定一期预测数据作为本期预测数据;若比值不大于预设比值,则确
定本期预测数据正常。其中,从往期预测数据中确定一期预测数据作为本期预测数据,包
括:将往期预测数据中的最后一期预测数据(也可以理解为本期预测数据的上一期预测数
据)作为本期预测数据,可以理解地,在一般情况下,前后两期预测数据相差范围不大;也可
以将往期预测数据进行平均,将平均后的预测数据作为本期预测数据;也可以按照其他的
方式从往期预测数据中确定一期预测数据作为本期预测数据。
免将存在异常的预测数据输送到业务下游,从而造成相关资源配置的损失。即本发明实施
例中的预测数据异常检测方法可以根据历史预测数据和历史真实数据来对未来预测数据
进行异常检测,提高对预测数据异常检测的效率和准确率,从而降低预测数据异常对业务
的影响,提高用户体验。
则每期预测数据对应的是预设时间的预测数据,而不是每天的预测数据。
集成于设备中,该设备可以是服务器,也可以是终端,如手机、Pad、台式电脑等设备。
据。第一误差确定单元,用于根据往期预测数据和往期真实数据,确定每个网点的预测误
差。网点确定单元,用于根据每个网点的往期预测数据、往期真实数据,以及每个网点的预
测误差,从所有网点中确定待检测网点。
待检测网点的本期预测数据的控制上限和控制下限。统计单元2032,用于在全部的待检测
网点中,统计待检测网点的本期预测数据未在对应的控制上限和控制下限范围内的待检测
网点所占的比值。异常确定单元2033,用于根据比值确定本期预测数据是否出现异常。
的控制上限和控制下限。第二计算单元,用于根据待检测网点的往期预测数据所对应的控
制上限和控制下限,计算待检测网点的本期预测数据的控制上限和控制下限。
测网点的往期预测数据中的预测本期的预测值,以及获取待检测网点的往期预测数据中的
每个预测提前期的预测值。预测均值计算单元,用于根据往期预测数据中的预测本期的预
测值计算往期预测数据中的预测本期的预测均值。误差均值计算单元,用于根据往期预测
数据中的每个预测提前期的预测值和往期真实数据,计算每个预测提前期所对应的误差均
值。第一上下限计算单元,用于根据预测均值和每个预测提前期所对应的误差均值,计算每
个预测提前期所对应的控制上限和控制下限。第一上下限确定单元,用于将每个预测提前
期所对应的控制上限和控制下限,作为待检测网点的往期预测数据所对应的控制上限和控
制下限。
以及确定待检测网点的往期预测数据所对应的控制下限的下β分位数。第二上下限确定单
元,用于将上α分位数作为待检测网点的本期预测数据的控制上限,以及将下β分位数作为
待检测网点的本期预测数据的控制下限。
预设比值,则确定本期预测数据异常,以及若比值不大于预设比值,则确定本期预测数据正
常。预测数据确定单元,用于在本期预测数据异常时,从往期预测数据中确定一期预测数据
作为本期预测数据。
述。
理解,图中示出的计算机设备结构并不构成对计算机设备的限定,可以包括比图示更多或
更少的部件,或者组合某些部件,或者不同的部件布置。其中:
在存储器302内的数据,执行计算机设备的各种功能和处理数据,从而对计算机设备进行整
体监控。可选的,处理器301可包括一个或多个处理核心;优选的,处理器301可集成应用处
理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调
制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处
理器301中。
序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比
如声音播放功能、图像播放功能等)等;存储数据区可存储根据计算机设备的使用所创建的
数据等。此外,存储器302可以包括高速随机存取存储器,还可以包括非易失性存储器,例如
至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器302还可以
包括存储器控制器,以提供处理器301对存储器302的访问。
等功能。电源303还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检
测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
号输入。
应的可执行文件加载到存储器302中,并由处理器301来运行存储在存储器302中的应用程
序,从而实现各种功能,如下:
的有益效果,详见前面的实施例,在此不再赘述。
储介质中,并由处理器进行加载和执行。
存储有计算机程序,所述计算机程序被处理器进行加载,以执行本发明实施例所提供的任
一种预测数据异常检测方法中的步骤。例如,所述计算机程序被处理器进行加载可以执行
如下步骤:
实施例,在此不再赘述。
述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的
技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,
本说明书内容不应理解为对本发明的限制。