本技术涉及互联网,特别是涉及一种异常分析方法、装置、计算机设备及计算机可读存储介质。
背景技术:
1、随着互联网技术的发展,各种平台在运营的过程中每天都会产生大量的数据,例如一些报表数据。在日常的运营中,平台会时常出现诸如支付成功率突然异常波动的情况,为了了解波动的具体原因,检测平台每天产生的数据是否发生异常波动以及分析产生异常波动的原因便显得尤为重要。
2、相关技术中,针对数据异常波动的分析通常由分析模型完成,分析模型会根据输入的波动异常进行分析,解释波动的原因,提供一些异常的特征,以供工作人员对潜在的风险提前进行准备,或者挖掘更好的思路并推广。
3、在实现本技术的过程中,申请人发现相关技术至少存在以下问题:
4、分析模型分析得到的异常特征是一些粗粒度的特征,难以通过这些特征定位到指标波动的真正原因和细节,造成大量的无效运算,分析效率低下,准确率不高。
技术实现思路
1、有鉴于此,本技术提供了一种异常分析方法、装置、计算机设备及计算机可读存储介质,主要目的在于解决目前难以通过这些特征定位到指标波动的真正原因和细节,造成大量的无效运算,分析效率低下,准确率不高的问题。
2、依据本技术第一方面,提供了一种异常分析方法,该方法包括:
3、响应于异常分析请求,获取多个待分析历史数据,在所述多个待分析历史数据中确定异常数据;
4、在所述异常数据关联的多个第一维度中提取至少一个目标第一维度,分别计算每个目标第一维度的异常贡献值,将异常贡献值满足贡献值阈值的目标第一维度作为一异常维度;
5、确定预设分析深度,根据所述预设分析深度对所述异常维度关联的第二维度进行维度拆解分析,得到数量满足所述预设分析深度的至少一个异常原因;
6、基于所述至少一个异常原因,生成异常分析结果,以及将所述异常分析结果输出。
7、可选地,所述响应于异常分析请求,获取多个待分析历史数据,在所述多个待分析历史数据中确定异常数据,包括:
8、响应于所述异常分析请求,确定所述异常分析请求指示的待分析数据类型、待分析时间段;
9、将匹配到的发生于所述待分析时间段且数据类型与所述待分析数据类型一致的多个历史数据作为所述多个待分析历史数据;
10、利用时序分解算法对所述多个待分析历史数据进行时序分解处理,得到按照时间顺序排列的一数据序列;
11、基于异常检测算法对所述数据序列中相邻两个待分析历史数据进行异常值计算,将所述数据序列中异常值达到异常条件的待分析历史数据作为所述异常数据。
12、可选地,所述在所述异常数据关联的多个第一维度中提取至少一个目标第一维度,包括:
13、查询所述异常数据关联的所述多个第一维度,计算所述多个第一维度中每个第一维度的交叉熵;
14、获取交叉熵阈值,在所述多个第一维度中提取交叉熵大于所述交叉熵阈值的多个第一维度作为多个候选第一维度;
15、按照交叉熵由大到小的顺序对所述多个候选第一维度进行排序,得到第一维度序列,将排在所述第一维度序列队首的至少一个候选第一维度作为所述至少一个目标第一维度。
16、可选地,所述分别计算每个目标第一维度的异常贡献值,包括:
17、对于所述每个目标第一维度,读取所述异常数据在所述目标第一维度下的当日数据值,并查询所述异常数据在所述目标第一维度下的对照数据值,其中,所述对照数据值是所述当前数据值的发生日期对应的对照日期的数据值;
18、查询所述异常数据在所述当前数据值的发生日期对应的当日总值,并查询所述异常数据在所述对照日期对应的对照总值;
19、计算所述当日数据值与所述对照数据值的第一差值,计算所述当日总值与所述对照总值的第二差值;
20、将所述第一差值与所述第二差值的比值作为所述目标第一维度的异常贡献值。
21、可选地,所述在所述异常数据关联的多个第一维度中提取至少一个目标第一维度,分别计算每个目标第一维度的异常贡献值,将异常贡献值满足贡献值阈值的目标第一维度作为一异常维度之后,所述方法还包括:
22、获取所述预设分析深度;
23、当所述预设分析深度指示单维度分析时,将所述异常维度作为异常原因;
24、生成包括所述异常原因的单维度分析结果,将所述单维度分析结果输出。
25、可选地,所述确定预设分析深度,根据所述预设分析深度对所述异常维度关联的第二维度进行维度拆解分析,得到数量满足所述预设分析深度的至少一个异常原因,包括:
26、当所述预设分析深度指示多维度分析时,查询所述异常维度关联的多个第二维度,在所述多个第二维度中确定另一异常维度;
27、确定所述预设分析深度指示的深度取值,继续在所述另一异常维度关联的多个第三维度中确定异常维度,直至确定的异常维度的数量等于所述深度取值,得到数量满足所述预设分析深度的至少一个异常维度;
28、将所述至少一个异常维度作为所述至少一个异常原因。
29、可选地,所述在所述多个第二维度中确定另一异常维度,包括:
30、计算所述多个第二维度中每个第二维度的交叉熵;
31、获取交叉熵阈值,在所述多个第二维度中提取交叉熵大于所述交叉熵阈值的多个第二维度作为多个候选第二维度;
32、按照交叉熵由大到小的顺序对所述多个候选第二维度进行排序,得到第二维度序列,将排在所述第二维度序列队首的至少一个候选第二维度作为至少一个目标第二维度;
33、分别计算所述至少一个目标第二维度中每个目标第二维度的异常贡献值,将所述至少一个目标第二维度中异常贡献值满足所述贡献值阈值的目标第二维度作为所述另一异常维度。
34、可选地,所述基于所述至少一个异常原因,生成异常分析结果,包括:
35、识别所述至少一个异常原因中的重复异常原因,以及在所述至少一个异常原因中将所述重复异常原因过滤;
36、分别读取过滤后的所述至少一个异常原因中每个异常原因对应的异常贡献值,按照异常贡献值由大到小的顺序对过滤后的所述至少一个异常原因进行排序,得到原因序列;
37、确定预设输出数量,在所述原因序列中提取排在队首的所述预设输出数量的目标异常原因,生成包括所述预设输出数量的目标异常原因的所述异常分析结果。
38、可选地,所述方法还包括:
39、读取所述异常分析结果包括的目标异常原因,查询所述目标异常原因关联的解释信息;
40、采用所述解释信息对所述异常分析结果进行标注,生成包括标注后的所述异常分析结果的结果验证提醒,将所述结果验证提醒输出;
41、当基于所述结果验证提醒接收到验证通过指令时,确定结果接收方,以及将标注后的所述异常分析结果推送至所述结果接收方。
42、依据本技术第二方面,提供了一种异常分析装置,该装置包括:
43、确定模块,用于响应于异常分析请求,获取多个待分析历史数据,在所述多个待分析历史数据中确定异常数据;
44、计算模块,用于在所述异常数据关联的多个第一维度中提取至少一个目标第一维度,分别计算每个目标第一维度的异常贡献值,将异常贡献值满足贡献值阈值的目标第一维度作为一异常维度;
45、分析模块,用于确定预设分析深度,根据所述预设分析深度对所述异常维度关联的第二维度进行维度拆解分析,得到数量满足所述预设分析深度的至少一个异常原因;
46、生成模块,用于基于所述至少一个异常原因,生成异常分析结果,以及将所述异常分析结果输出。
47、可选地,所述确定模块,用于响应于所述异常分析请求,确定所述异常分析请求指示的待分析数据类型、待分析时间段;将匹配到的发生于所述待分析时间段且数据类型与所述待分析数据类型一致的多个历史数据作为所述多个待分析历史数据;利用时序分解算法对所述多个待分析历史数据进行时序分解处理,得到按照时间顺序排列的一数据序列;基于异常检测算法对所述数据序列中相邻两个待分析历史数据进行异常值计算,将所述数据序列中异常值达到异常条件的待分析历史数据作为所述异常数据。
48、可选地,所述计算模块,用于查询所述异常数据关联的所述多个第一维度,计算所述多个第一维度中每个第一维度的交叉熵;获取交叉熵阈值,在所述多个第一维度中提取交叉熵大于所述交叉熵阈值的多个第一维度作为多个候选第一维度;按照交叉熵由大到小的顺序对所述多个候选第一维度进行排序,得到第一维度序列,将排在所述第一维度序列队首的至少一个候选第一维度作为所述至少一个目标第一维度。
49、可选地,所述计算模块,用于对于所述每个目标第一维度,读取所述异常数据在所述目标第一维度下的当日数据值,并查询所述异常数据在所述目标第一维度下的对照数据值,其中,所述对照数据值是所述当前数据值的发生日期对应的对照日期的数据值;查询所述异常数据在所述当前数据值的发生日期对应的当日总值,并查询所述异常数据在所述对照日期对应的对照总值;计算所述当日数据值与所述对照数据值的第一差值,计算所述当日总值与所述对照总值的第二差值;将所述第一差值与所述第二差值的比值作为所述目标第一维度的异常贡献值。
50、可选地,所述生成模块,还用于获取所述预设分析深度;当所述预设分析深度指示单维度分析时,将所述异常维度作为异常原因;生成包括所述异常原因的单维度分析结果,将所述单维度分析结果输出。
51、可选地,所述分析模块,用于当所述预设分析深度指示多维度分析时,查询所述异常维度关联的多个第二维度,在所述多个第二维度中确定另一异常维度;确定所述预设分析深度指示的深度取值,继续在所述另一异常维度关联的多个第三维度中确定异常维度,直至确定的异常维度的数量等于所述深度取值,得到数量满足所述预设分析深度的至少一个异常维度;将所述至少一个异常维度作为所述至少一个异常原因。
52、可选地,所述分析模块,用于计算所述多个第二维度中每个第二维度的交叉熵;获取交叉熵阈值,在所述多个第二维度中提取交叉熵大于所述交叉熵阈值的多个第二维度作为多个候选第二维度;按照交叉熵由大到小的顺序对所述多个候选第二维度进行排序,得到第二维度序列,将排在所述第二维度序列队首的至少一个候选第二维度作为至少一个目标第二维度;分别计算所述至少一个目标第二维度中每个目标第二维度的异常贡献值,将所述至少一个目标第二维度中异常贡献值满足所述贡献值阈值的目标第二维度作为所述另一异常维度。
53、可选地,所述生成模块,用于识别所述至少一个异常原因中的重复异常原因,以及在所述至少一个异常原因中将所述重复异常原因过滤;分别读取过滤后的所述至少一个异常原因中每个异常原因对应的异常贡献值,按照异常贡献值由大到小的顺序对过滤后的所述至少一个异常原因进行排序,得到原因序列;确定预设输出数量,在所述原因序列中提取排在队首的所述预设输出数量的目标异常原因,生成包括所述预设输出数量的目标异常原因的所述异常分析结果。
54、可选地,所述装置还包括:
55、查询模块,用于读取所述异常分析结果包括的目标异常原因,查询所述目标异常原因关联的解释信息;
56、标注模块,用于采用所述解释信息对所述异常分析结果进行标注,生成包括标注后的所述异常分析结果的结果验证提醒,将所述结果验证提醒输出;
57、推送模块,用于当基于所述结果验证提醒接收到验证通过指令时,确定结果接收方,以及将标注后的所述异常分析结果推送至所述结果接收方。
58、依据本技术第三方面,提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述第一方面中任一项所述方法的步骤。
59、依据本技术第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面中任一项所述的方法的步骤。
60、借由上述技术方案,本技术提供的一种异常分析方法、装置、计算机设备及计算机可读存储介质,本技术响应于异常分析请求,获取多个待分析历史数据,在多个待分析历史数据中确定异常数据,在异常数据关联的多个第一维度中提取至少一个目标第一维度,分别计算每个目标第一维度的异常贡献值,将异常贡献值满足贡献值阈值的目标第一维度作为一异常维度,确定预设分析深度,根据预设分析深度对异常维度关联的第二维度进行维度拆解分析,得到数量满足预设分析深度的至少一个异常原因,基于至少一个异常原因,生成异常分析结果,以及将异常分析结果输出,通过维度拆解分析,在大量维度中发现造成该异常数据的主要维度,生成对该主要维度进行解释的异常分析结果,能够将其他干扰维度过滤,快速定位异常原因,降低无效运算,提高分析效率和准确率。
61、上述说明仅是本技术技术方案的概述,为了能够更清楚了解本技术的技术手段,而可依照说明书的内容予以实施,并且为了让本技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本技术的具体实施方式。