掌桥专利:专业的专利平台
掌桥专利
首页

异常检测方法及装置

文献发布时间:2023-06-19 11:52:33


异常检测方法及装置

技术领域

本公开涉及计算机技术中的人工智能领域,尤其涉及一种异常检测方法及装置。

背景技术

因为互联网应用规模庞大、结构复杂等特点,互联网应用发生异常也变得难以避免,为保证应用的正常运行,对异常进行检测就显得尤为重要。

目前,相关技术中在检测应用的异常时,通常都是通过收集服务端日志和客户端日志,将这些日志处理为可视化的图表,例如指标随时间变化的折线图等,之后基于可视化的图表分析,确定应用是否发生异常。

然而,通过图表进行异常分析严重依赖人工经验,例如针对同一份图表,不同的人会做出不同的判断,从而会导致异常的检测缺乏准确性。

发明内容

本公开提供了一种异常检测方法及装置。

根据本公开的第一方面,提供了一种异常检测方法,包括:

确定应用程序的待检测参数;

获取所述待检测参数在当前时刻之前的预设时段内的多个波动指示数据,所述波动指示数据用于指示所述待检测参数相对于上一个周期的波动情况;

根据所述多个波动指示数据所对应的差异信息以及预设阈值,确定检测结果,其中,所述差异信息用于指示所述多个波动指示数据之间的差异,所述检测结果用于指示所述待检测参数存在异常或者所述待检测参数不存在异常。

根据本公开的第二方面,提供了一种异常检测装置,包括:

第一确定模块,用于确定应用程序的待检测参数;

获取模块,用于获取所述待检测参数在当前时刻之前的预设时段内的多个波动指示数据,所述波动指示数据用于指示所述待检测参数相对于上一个周期的波动情况;

第二确定模块,用于根据所述多个波动指示数据所对应的差异信息以及预设阈值,确定检测结果,其中,所述差异信息用于指示所述多个波动指示数据之间的差异,所述检测结果用于指示所述待检测参数存在异常或者所述待检测参数不存在异常。

根据本公开的第三方面,提供了一种电子设备,包括:

至少一个处理器;以及

与所述至少一个处理器通信连接的存储器;其中,

所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行第一方面所述的方法。

根据本公开的第四方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行第一方面所述的方法。

根据本公开的第五方面,提供了一种计算机程序产品,所述计算机程序产品包括:计算机程序,所述计算机程序存储在可读存储介质中,电子设备的至少一个处理器可以从所述可读存储介质读取所述计算机程序,所述至少一个处理器执行所述计算机程序使得电子设备执行第一方面所述的方法。

根据本公开的技术提升了异常检测的准确性。

应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。

附图说明

附图用于更好地理解本方案,不构成对本公开的限定。其中:

图1为本公开实施例提供的异常检测方法的系统示意图;

图2为本公开实施例提供的异常检测方法的流程图;

图3为本公开实施例提供的异常检测方法的流程图二;

图4为本公开实施例提供的确定临界值的实现示意图;

图5为本公开实施例提供的确定平均波动指示数据的实现示意图;

图6为本公开实施例提供的异常检测方法的流程图三;

图7为本公开实施例提供的异常数据修正的实现示意图;

图8为本公开实施例提供的异常检测方法的流程图四;

图9为本公开实施例提供的获取增量日志的实现示意图;

图10为本公开实施例提供的确定波动指示数据的实现示意图;

图11为本公开实施例提供的异常检测方法的执行单元示意图;

图12为本公开实施例的异常检测装置的结构示意图;

图13是用来实现本公开实施例的异常检测方法的电子设备的框图。

具体实施方式

以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。

为了更好的理解本公开的技术方案,下面对本公开所涉及的相关技术进行进一步的详细介绍。

随着互联网技术的不断发展,特别是智能手机的普及和移动通信技术的进步,越来越多的用户通过互联网进行娱乐、购物、学习以及获取信息等操作。互联网应用作为互联网服务的入口和支撑,已经成为人们日常生活中必不可少的基础设施。

由于互联网应用在日常生活中扮演着越来越重要的角色,因此互联网应用的异常状态会严重影响到用户的使用,而由于互联网应用规模庞大、结构复杂、迭代速度快等特点,应用的异常的发生变得难以避免。因此能够及时的检测异常成为互联网应用必不可少的一项功能。

目前,相关技术中在进行应用的异常检测时,存在一种实现方式是通过收集服务端日志以及客户端日志,来为应用的异常检测提供必要的数据,其中服务端日志例如可以包括请求次数、分发量等,客户端日志例如可以包括曝光次数、点击次数、观看时长等等。

其中,因为日志数据的数据量巨大,无法通过直接阅读日志来识别异常,因此在相关技术中将日志数据按照时间顺序处理为可视化的图表,比如说指标随着时间变化的曲线图,或者柱状图等等,之后由工作人员基于图表来判断应用是否发生异常。

然而,基于图表进行分析的实现方式严重依赖于人工经验,例如针对同一份图表,不同的人会做出不同的判断,从而会导致针对异常检测的准确性较低。

以及,目前的相关技术中还存在一种实现方式,是通过设置固定的阈值来进行异常检测。

其中,互联网应用的使用情况往往依赖于人们的作息,呈现出一种周期性。例如当前应用的指标和昨天或者上周同一时刻应用的指标一致或者接近。利用这一点,可以假设昨天或者上周同一时刻的指标是正常的,通过计算当前指标的日环比或者周同比,并将其和固定的阈值做对比来判断是否发生异常。

然而,设置固定的阈值来检测异常的方式存在有如下缺点:

第一点:只判断单点的值是否超出阈值,对于连续多个接近阈值的异常点不会发出报警,导致无法及时的发现异常。

例如某指标日环比的报警阈值是-5%,如果某种异常导致该指标连续多个日环比的值为-4%,则此方法无法识别该异常,从而导致异常识别的准确性较低。

第二点:异常的判断标准无法做到自适应,阈值的设置高度依赖于应用的使用情况,例如一款1000万日活的应用和一款500万日活的应用的报警阈值是不一样的,同一个应用的不同功能的报警阈值也可能是不一样的,此外阈值还需要随着时间而调整,例如某应用一年前日活为500万,设置了某个报警阈值,一年后这个应用的日活成长到了1000万,则阈值也需要相应的做出调整,从而需要针对不同的应用设置不同的阈值,以及针对不同时期的同一应用,也需要进行阈值的调整,从而导致异常识别的复杂度较高。

第三点:没有对历史的异常数据进行修正,容易造成异常的误报。传统的做法认为历史数据(例如昨天或者上周同时刻)的值是正常的,因此通过计算日环比或者周同比来判断异常,但是如果历史数据存在异常数据就会导致异常的误报,从而导致异常识别的准确性较低。

因此设置固定的阈值进行异常检测的实现方式同样存在准确性不高的问题。

基于上述介绍的相关技术中的问题,本公开提出了如下技术构思:通过确定待检测参数的波动指示数据,根据波动指示数据之间的差异情况,确定检测结果,从而可以基于具体的数据进行分析,准确的确定待检测参数是否存在异常,并且在检测的过程中,是通过各个波动指示数据之间的差异情况确定的检测结果,同时可以避免了和固定的阈值进行比较确定检测结果导致的准确性不高的问题。

在上述内容的基础上,下面结合具体的实施例对本公开提供的异常检测方法进行介绍,本公开中各实施例的执行主体例如可以为服务器、处理器、微处理器等具备数据处理功能的设备,在实际实现过程中,执行主体的具体实现方式可以根据实际需求进行选择,本实施例对此不做限制,只要选择的设备具备数据处理的功能即可。

首先结合图1对本公开的应用场景进行介绍,图1为本公开实施例提供的异常检测方法的系统示意图。

如图1所示,在本公开的异常检测系统中包括日志单元、异常检测单元以及目标设备。

在日志单元中可以存储有日志数据,其中,日志数据例如可以包括服务端日志和客户端日志,日志数据中记录了应用在各个时刻的相关数据,例如请求次数、分发量、曝光次数、点击次数、观看时长等等,本实施例对日志数据的具体实现方式不做限制,其可以根据实际需求进行选择,凡是应用运行过程中记录的数据均可以作为本实施例中的日志数据。

异常检测单元可以从日志单元中提取日志数据,并基于日志数据进行分析,从而确定应用是否发生异常,在本公开中,异常检测单元在确定应用是否发生异常时,是通过确定应用的待检测参数的波动指示数据,根据波动指示数据之间的差异情况,确定检测结果,从而可以基于具体的数据进行分析,准确的确定待检测参数是否存在异常。

在一种可能的实现方式中,若异常检测单元确定应用发生异常,则可以向目标设备发送报警信息,以提示应用发生异常,后续例如可以针对应用的异常进行维护,从而可以有效的识别异常以及解决异常,提升应用的安全性。

在上述介绍内容的基础上,下面结合图2对本公开实施例提供的异常检测方法进行详细介绍,图2为本公开实施例提供的异常检测方法的流程图。

如图2所示,该方法包括:

S201、确定应用程序的待检测参数。

其中,应用程序的待检测参数为需要进行异常检测的参数,例如可以为应用程序的点击量、浏览量、观看时长等等,本实施例对待检测参数的具体实现方式不做特别限制,其可以根据实际需求进行选择,凡是应用程序的需要进行异常检测的参数均可以作为本实施例中的待检测参数。

在一种可能的实现方式中,本实施例中可以单独的对某一个待检测参数进行异常的检测。或者,还可以对多个待检测参数并行的进行异常检测,本实施例对待检测参数的具体数量同样不做限制,其可以根据实际需求进行选择和设置。

S202、获取待检测参数在当前时刻之前的预设时段内的多个波动指示数据,波动指示数据用于指示待检测参数相对于上一个周期的波动情况。

在本实施例中,待检测参数对应有波动指示数据,其中,因为应用的使用情况与用户的作息有关,因此应用的待检测参数总是呈现出一定的周期性,本实施例中采用波动指示数据指示待检测参数相对于上一个周期的波动情况。

例如待检测参数的周期可以是一天,则波动指示数据例如可以为日环比,其中日环比是指某一时刻的待检测参数与前一天同一时刻的待检测参数的数据比,比如说今天8点与昨天8点的点击量的数据比。

或者,待检测参数的周期还可以是一周,则波动指示数据例如可以为周同比,其中周同比是指某一时刻的待检测参数与上一周同一时刻的待检测参数的数据比,比如说这周一8点的数据与上周一8点的点击量的数据比。

在实际实现过程中,波动指示数据还例如可以为其余的实现方式,其具体取决于待检测参数的周期,本实施例对波动指示数据的具体实现方式不做特别限制,其可以根据实际需求进行选择,只要波动指示数据可以指示待检测参数相对于上一个周期的波动情况即可。

可以理解的是,待检测参数呈现出一定的周期性,但是不同时刻的待检测参数往往满足不同的统计分布,根据待检测参数无法直接进行异常的分析,然而待检测参数的波动情况往往是满足同一统计分布的,因此本实施例中通过获取待检测参数的多个波动指示数据,从而可以基于波动指示数据有效进行应用的异常分析。

在本实施例中,在获取波动指示数据时,为了有足够多的数据进行后续的异常分析,因此获取的是当前时刻之前的预设时段内的多个波动指示数据。

在一种可能的实现方式中,可以按照一定的时间间隔实时的确定波动指示数据,之后对多个时刻的波动指示数据进行存储,之后在获取波动指示数据时,可以从存储单元中获取当前时刻之前的预设时段内的多个波动指示数据,比如说当前时刻之前的24小时内的多个波动指示数据,或者当前时刻之前的48小时内的多个波动指示数据,或者当前时刻之前的72小时内的多个波动指示数据等等,本实施例对预设时段的具体实现方式不做限制,其可以根据实际需求进行选择。

其中,在确定波动指示数据的过程中,例如可以按照一定的时间间隔获取待检测参数,之后根据当前时刻的待检测参数与上一周期对应时刻的待检测参数,确定当前时刻的波动指示数据,按照这样的时间间隔不断的执行,即可以确定多个时刻各自对应的波动指示数据,之后可以将各个时刻的波动指示数据进行存储,以便于后续进行获取。

S203、根据多个波动指示数据所对应的差异信息以及预设阈值,确定检测结果,其中,差异信息用于指示多个波动指示数据之间的差异,检测结果用于指示待检测参数存在异常或者待检测参数不存在异常。

在本实施例中,在得到多个波动指示数据之后,可以根据多个时刻的波动指示数据之间的差异情况,确定当前应用是否存在异常。

可以理解的是,在正常情况下,各个时刻的待检测参数必然是存在波动的,但是其应该是在一定的合理范围内进行波动,也就是说各个时刻的波动指示数据之间的差异应该是较小的,若某一时刻的波动指示数据和其余时刻的波动指示数据之间存在较大的差异,则表示该时刻的待检测参数相较于其他时刻发生了较大的波动,则可以确定检测结果为待检测参数存在异常。

或者,若各个时刻的波动指示数据之间差异较小,则可以确定各个时刻的待检测参数之间也未发生较大的波动,则可以确定检测结果为待检测参数不存在异常。

因此在本实施例中,可以确定多个波动指示数据所对应的差异信息,其中,差异信息用于指示多个波动指示数据之间的差异,在一种可能的实现方式中,差异信息例如可以为多个波动指示数据所对应的检验统计量,其中,在统计学中检验统计量是用于检验假设量是否正确的量。常用的检验统计量有t统计量,z统计量等等,在实际实现过程中,检验统计量的具体实现可以根据实际需求进行选择,本实施例对此不做限制。

或者,差异信息还可以为假设检验中的P值,其中,P值是用来判定假设检验结果的一个参数,P值就是当原假设为真时,比所得到的样本观察结果更极端的结果出现的概率。无论是根据检验统计量还是P值,都可以指示多个波动指示数据之间的差异,在实际实现过程中,差异信息的具体实现方式可以根据实际需求进行选择,本实施例对此不做限制。

在本实施例中,可以根据差异信息和预设阈值确定检测结果,其中,预设阈值是用于衡量波动指示数据之间是否存在显著性差异的阈值。

在一种可能的实现方式中,预设阈值例如可以为预设的显著性水平,其中,显著性水平是估计总体参数落在某一区间内,可能犯错误的概率,可以用α表示。

在确定检测结果时,差异信息例如可以为检验统计量,则例如可以根据预设的显著性水平确定临界值,之后将检验统计量和临界值进行比较,从而确定检测结果;或者,例如差异信息还可以为P值,则例如可以将P值和预设的显著性水平进行比较,从而确定检测结果。

值得说明的是,本实施例中是通过多个波动指示数据之间的差异情况,确定了最终的检测结果,从而可以根据待检测参数的波动的变化情况,自适应的确定检测结果,从而可以有效避免需要针对不同的用户使用情况设置不同的阈值的情况。

本公开实施例提供的异常检测方法,包括:确定应用程序的待检测参数。获取待检测参数在当前时刻之前的预设时段内的多个波动指示数据,波动指示数据用于指示待检测参数相对于上一个周期的波动情况。根据多个波动指示数据所对应的差异信息以及预设阈值,确定检测结果,其中,差异信息用于指示多个波动指示数据之间的差异,检测结果用于指示待检测参数存在异常或者待检测参数不存在异常。通过获取待检测数参数的波动指示数据,根据多个波动指示数据之间的差异,从而适应性的确定待检测参数的波动是否发生了较大的变化,进而确定检测结果,从而可以基于具体的数据准确的确定检测结果,有效提升了异常检测的准确性。

在上述实施例的基础上,下面结合图3至图5对本公开提供的异常检测方法进行进一步的详细介绍,图3为本公开实施例提供的异常检测方法的流程图二,图4为本公开实施例提供的确定临界值的实现示意图,图5为本公开实施例提供的确定平均波动指示数据的实现示意图。

如图3所示,该方法包括:

S301、确定应用程序的待检测参数。

S302、获取待检测参数在当前时刻之前的预设时段内的多个波动指示数据,波动指示数据用于指示待检测参数相对于上一个周期的波动情况。

其中,S301、S302的实现方式与S201、S202的实现方式类似,此处不再赘述。

S303、根据预设阈值,确定预设阈值对应的临界值。

本实施例中确定检测结果的过程基于假设检验,下面首先对假设检验进行简单的介绍。

假设检验是用来判断样本与样本、样本与总体的差异是由抽样误差引起还是本质差别造成的统计推断方法。显著性检验是假设检验中最常用的一种方法,也是一种最基本的统计推断形式,其基本原理是先对总体的特征做出某种假设,然后通过抽样研究的统计推理,对此假设应该被拒绝还是接受做出推断。常用的假设检验方法有Z检验、t检验、卡方检验、F检验等。

假设检验的基本思想是“小概率事件”原理,其统计推断方法是带有某种概率性质的反证法。小概率思想是指小概率事件在一次试验中基本上不会发生。反证法思想是先提出检验假设,再用适当的统计方法,利用小概率原理,确定假设是否成立。即为了检验一个假设H0是否正确,首先假定该假设H0正确,然后根据样本对假设H0做出接受或拒绝的决策。如果样本观察值导致了“小概率事件”发生,就应拒绝假设H0,否则应接受假设H0。

假设检验中所谓“小概率事件”,并非逻辑中的绝对矛盾,而是基于人们在实践中广泛采用的原则,即小概率事件在一次试验中是几乎不发生的,但概率小到什么程度才能算作“小概率事件”,显然,“小概率事件”的概率越小,否定原假设H0就越有说服力,常记这个概率值为α(0<α<1),称为检验的显著性水平。

对于不同的问题,检验的显著性水平α不一定相同,一般认为,事件发生的概率小于0.1、0.05或0.01等,即“小概率事件”。

其中,显著性水平是假设检验中的一个概念,是指当原假设为正确时人们却把它拒绝了的概率或风险。它是公认的小概率事件的概率值,必须在每一次统计检验之前确定,通常取α=0.05或α=0.01。这表明,当作出接受原假设的决定时,其正确的可能性(概率)为95%或99%。

可以理解的是,显著性水平α表示原假设为真时,拒绝原假设的概率,对应的1-α为置信度或置信水平,其表明了区间估计的可靠性。

例如可以结合图4理解,参见图4,在图4中示出了正态分布的示意图,在图4所示的分布中,左侧的区域401所占的面积为整个分布的面积的α/2,表示分布点落在区域401中的概率为α/2,例如α为0.05,则401对应的区域所对应的概率可以为0.025,右侧的402的实现方式与左侧区域401类似。

其中,因为显著性水平的含义,分布点落在区域401或者402中的事件即为小概率事件,基于图4可以理解的是,在检验统计量大于右侧临界值时,则表示分布点落在区域402中,表示当前发生了小概率事件,此时需要拒绝原假设,因此将大于右侧临界值的区域确定为拒绝域;以及,在检验统计量小于左侧临界值时,则表示分布点落在区域401中,表示当前发生了小概率事件,此时同样需要拒绝原假设,因此同样将小于左侧临界值的区域确定为拒绝域;以及,将左侧临界值和右侧临界值之间的范围就确定为接受域,其发生的概率为1-α。

基于上述图4介绍可以确定的是,显著性水平和临界值之间具有对应关系,因此在一种可能的实现方式中,预设阈值例如可以为预设的显著性水平,因此可以基于预设的显著性水平确定对应的临界值,其中,临界值为拒绝原假设的临界值。

在一种可能的实现方式。可以基于目前所具体采用的检验方式,查询对应的临界值表,从而确定预设的显著性水平所对应的临界值,其中,临界值表中包括显著性水平和临界值的对应关系。

例如当前采用的检验方式是t检验,则例如可以通过查询t临界值表,从而确定预设的显著性水平对应的临界值,其余的检验的实现方式类似,均可以通过查表的方式确定对应的临界值,此处对此不再赘述,在实际实现过程中,具体的检验方式的选择可以根据实际需求进行选择,本实施例对此不做限制。

S304、将多个波动指示数据中,每第一数量个波动指示数据进行平均处理,得到多个平均波动指示数据。

在本实施例中,在根据多个波动指示数据检测是否存在异常时,为了避免仅判断单点的值是否超出阈值,而导致的对于连续多个接近阈值的异常点不会发出报警,致使异常未能被及时发现的问题,本实施例中将多个波动指示数据中每第一数量个波动指示数据进行平均处理,从而得到多个平均波动指示数据,之后基于多个平均波动指示数据进行检测,从而可以综合多个点的数据进行检测,以避免仅根据单点的值进行判断所导致的异常检测的准确性不高。

在本实施例中,第一数量例如可以为直接设置的数量,例如可以为m,m可以初始化为大于等于1的整数。

或者,第一数量可以为观察窗口的长度k和n的乘积,其中,观察窗口的长度k可以例如可以初始化为预设数值,其中预设数值例如可以为1,n为提取波动指示数据的第一时长间隔相对于获取待检测数据的第二时长间隔的倍数,n为大于等于1的整数,n的具体设置同样可以根据实际需求进行选择。

例如可以结合图5理解本实施例中的平均处理,例如当前第一数量为2,则表示将每2个波动指示数据进行平均处理,从而得到多个平均波动指示数据,本实施例中用Yi表示波动指示数据,用Zi表示平均波动指示数据。

参见图5,假设当前存在12个波动指示数据,分别是Y1~Y12,对每两个波动指示数据进行平均处理,从而得到图5所示的6个平均波动指示数据Z1~Z6,其中,可以根据Y1和Y2进行平均得到Z1,根据Y3和Y4进行平均得到Z2,以此类推,具体的平均处理的实现取决于具体的第一数量的设置。

同时,本实施例中对每第一数量个波动指示数据进行平均处理,还有一个目的是因为,根据中心极限定理可知,第一数量越大,Zi就越接近正态分布,因此本实施例中通过对多个波动指示数据进行平均处理,可以将波动指示数据处理为更加解决正态分布的平均波动指示数据,以便于后续的检验处理的进行,提升异常检测的准确性。

S305、对多个平均波动指示数据进行检验处理,得到差异信息。

在得到多个平均波动指示数据之后,可以根据多个平均波动指示数据进行预设的检验处理,从而得到差异信息,本实施例中的差异信息例如可以为检验统计量,其中,预设的检验处理例如可以为上述介绍的Z检验、t检验、卡方检验、F检验中的任一种,本实施例对此不做限制,其可以根据实际需求进行选择。

在一种可能的实现方式中,在根据多个平均波动指示数据确定检验统计量时,例如可以确定多个平均波动指示数据的指示参数,其中,指示参数包括如下中的至少一种:均值、方差、平均波动指示数据的数量,之后根据多个平均波动指示数据的指示参数,确定差异信息。

以t检验为例,例如可以通过如下公式一确定t检验的检验统计量:

其中,

值得说明的是,在本实施例中,当前所提到的样本即为上述介绍的平均波动指示数据Zi。

当前介绍的是在t检验中确定检验统计量的实现方式,在实际实现过程中,具体的检验方式可以根据实际需求进行选择,本实施例对此不做限制,则相应的检验统计量的确定方式就根据检验方式的选择进行适应性的变化,各种检验方式所对应的检验统计量的确定方式可以参照相关技术中的介绍,此处不再赘述。

S306、判断差异信息的绝对值是否大于临界值的绝对值,若是,则执行S307,若否,则执行S308。

在得到差异信息之后,因为差异信息可以指示各个平均波动指示数据之间的差异,临界值为用于指示拒绝原假设的临界值,因此可以将差异信息和临界值进行比较,以确定检测结果,

可以理解的是,当前基于临界值要确定拒绝原假设或者接受原假设,在一种可能的实现方式中,本实施例中设置的原假设为最近的平均波动指示数据Zn和历史的平均波动指示数据Z0~Zn-1之间不存在显著性差异,之后基于差异信息和临界值进行比较,从而确定接收该原假设还是拒绝该原假设,进而确定各个波动指示数据之间是否存在差异。

S307、确定检测结果为异常结果,异常结果用于指示待检测参数存在异常。

在一种可能的实现方式中,若确定差异信息的绝对值大于临界值的绝对值,则可以确定当前分布点落在了拒绝域中,因此需要拒绝原假设,本实施例中的原假设是最近的平均波动指示数据Zn和历史的平均波动指示数据Z0~Zn-1之间不存在显著性差异,则拒绝原假设表示最近的平均波动指示数据Zn和历史的平均波动指示数据Z0~Zn-1之间存在显著性差异。

也就是说最近的平均波动指示数据与之前的平均波动指示数据相比,存在较大的差异,比如说最近的平均波动指示数据为20%,历史的平均波动指示数据均为5%,则可以确定最近的平均波动指示数据与之前的历史的平均波动指示数据之间存在较大差异,进而可以确定最近的待检测参数相较于历史时刻发生了较大的波动,因此可以确定检测结果为待检测参数存在异常。

S308、增大第一数量,判断增大后的第一数量是否大于或等于第二阈值,若是,则执行S309,若否,则根据增大后的第一数量执行S304。

在另一种可能的实现方式中,若确定差异信息的绝对值小于或等于临界值的绝对值,则可以确定当前分布点落在了接受域中,因此需要接受原假设,本实施例中的原假设是最近的平均波动指示数据Zn和历史的平均波动指示数据Z0~Zn-1之间不存在显著性差异,则接受原假设表示最近的平均波动指示数据Zn和历史的平均波动指示数据Z0~Zn-1之间不存在显著性差异。

也就是说最近的平均波动指示数据与之前的平均波动指示数据相比,差异较小,比如说最近的平均波动指示数据为6%,历史的平均波动指示数据也均为5%,则可以确定最近的平均波动指示数据与之前的历史的平均波动指示数据之间差异较小,进而可以确定最近的待检测参数相较于历史时刻所发生的波动在正常范围内。

在本实施例中,在基于当前情况接收原假设之后,可以初步确定当前不存在异常情况,但是之后会进行进一步的判断。具体的,本实施例中会增大第一数量,其中单次增大的步长可以根据实际需求进行选择,例如一次将第一数量增大1,或者一次将第一数量增大2,其可以根据实际需求进行选择,本实施例对此不做限制。

之后,可以根据增大后的第一数量继续进行判断,以根据更多的分布点持续进行判断,避免出现上述介绍的相关技术中的只判断单点的值是否超出阈值,对于连续多个接近阈值的异常点不会发出报警,导致无法及时的发现异常的问题。

因此在本实施例中,通过将更多的波动指示数据点进行平均,根据平均后的波动指示数据进行异常的分析,从而可以考虑更多的波动指示数据以确定异常情况,避免根据单点的数据进行判断所导致的异常检测的准确性较低的问题。

在本实施例中,针对第一数量设置有相应的第二阈值,第二阈值为第一数量所能够增加的最大值,在一种可能的实现方式中,当第一数量为单独设置的m时,例如可以针对第一数量m设置有第二阈值,在另一种可能的实现方式中,当第一数量为上述介绍的k×n时,例如可以针对观察窗口设置有最大观察窗口长度l,则对应的第二阈值就等于l×n,第二阈值的具体实现方式可以根据实际需求进行选择,只要第二阈值是用于指示第一数量增加的最大值即可。

在一种可能的实现方式中,若增大后的第一数量小于第二阈值,则表示当前的第一数量还未到达最大值,则可以根据增大后的第一数量重复执行上述的步骤S304~S307,以根据增大后的第一数量重新确定检测结果是否为异常结果,一直重复执行上述步骤,直至确定检测结果为异常结果,或者确定第一数量大于或等于第二阈值。

S309、确定检测结果为正常结果。

在另一种可能的实现方式中,若增大后的第一数量大于或等于第二阈值,则表示当前的第一数量已经到达了最大值,则表示当前经过多次检测,均确定未发现异常,则可以确定检测结果为正常结果。

本公开实施例提供的异常检测方法,通过根据检测方法确定差异参数,并根据差异参数与预设显著性水平对应的临界值进行比较,从而可以有效的确定当前波动指示数据和历史的波动指示数据之间是否存在差异,以根据历史的情况自适应的确定检测结果,无需进行阈值的设置,进而避免了根据用户的使用情况调整阈值所导致的异常检测的复杂性。同时,本实施例中通过动态的增加进行平均处理的波动指示数据的第一数量,从而不断的根据多个数据确定是否存在异常,有效避免了仅判断单点的值是否超出阈值所导致的异常检测的准确性较低的问题。

在上述实施例的基础上,本公开提供的异常检测方法,还可以针对异常的数据进行修正,以提升异常检测的准确性。

可以理解的是,本实施例中在进行异常检测时的原则就是,比较当前的波动指示数据与历史的波动指示数据之间是否存在显著性差异,进而确定是否存在异常,因此本实施例中确定是否存在异常的基础是历史数据,因此历史数据的正确性就对检测结果至关重要。

基于上述介绍可以确定的是,确定的检测结果有可能只是待检测参数存在异常,则为了保证后续的异常检测结果的正确性,就需要对异常的数据进行修正。

比如说波动指示数据正常情况下应该在5%左右,在某个时刻发生异常时,波动指示数据到达了20%,当前可以检测到这个异常,但是如果对这个异常数据不进行修正的话,后续基于这个历史数据进行异常检测的时候,有可能将20%的波动指示数据确定为正常的,但是实际上20%是不正常的,这样就导致了异常检测出现错误,因此需要对异常数据进行修正,下面结合图6和图7对数据修正的过程进行介绍。

图6为本公开实施例提供的异常检测方法的流程图三,图7为本公开实施例提供的异常数据修正的实现示意图。

如图6所示,该方法包括:

S601、若检测结果指示待检测参数存在异常,则发送报警信息。

在本实施例中,在确定检测结果指示待检测参数存在异常时,可以向目标设备发送报警信息,以提升当前的应用发生异常。

S602、将发送报警信息的时刻确定为候选异常时刻,存储候选异常时刻。

本实施例中将发送报警信息的时刻确定为候选异常时刻,并对确定的候选异常时刻进行存储,以便于后续进行修正处理。

S603、根据标注信息,在候选异常时刻中确定目标异常时刻,标注信息用于指示确认发生异常的时刻。

可以理解的是,当前确定的仅仅是候选异常时刻,也就是说提醒有可能发生是发生了异常的时刻,因为设备无法确定应用是否发生了真正的异常,在进行数据修正的时候,需要由工作人员进行进一步的校验,给出标注信息,标注信息用于在候选异常时刻中指示确认发生了异常的时刻。

因此本实施例中可以根据标注信息,在候选异常时刻中确定目标异常时刻。

S604、将目标异常时刻对应的波动指示数据确定为异常波动数据。

本实施例中的目标异常时刻是确定发生了异常的时刻,则可以将目标异常时刻对应的波动指示数据确定为异常波动数据。

S605、确定修正数据,采用修正数据替换异常波动数据。

在确定异常波动数据之后,可以确定修正数据,并采用修正数据对波动异常进行替换,从而实现对于异常数据的修正。

在本实施中,确定修正数据时,在一种可能的实现方式中,例如可以件确定波动指示数据所对应的目标分布,根据目标分布对应的标准值和方差生成第一随机数,将第一随机数确定为修正数据。

例如波动指示数据服从正态分布,则可以根据正态分布所对应的标准值和方差生成第一随机数;或者波动指示数据还可以服从卡方分布,本实施例对波动指示数据所服从的目标分布不做限制,其取决于波动指示数据的具体实现。

同时可以理解的是,根据目标分布对应的标准值和方差生成的第一随机数,可以保证是符合目标分布的,因此将第一随机数确定为修正数据,可以有效实现

在另一种可能的实现方式中,还可以在波动指示数据中的正常波动数据中随机选择第二随机数,将第二随机数确定为修正数据。

其中,将正常波动数据确定为修正数据,同样可以有效实现对于异常数据的修复。

本实施例对确定修正数据的具体实现方式不做限制,只要其可以实现对于异常波动数据的修正即可。

例如可以参照图7进行理解,如图7所示,假设当前在t1~t12的多个时刻中,确定了目标异常时刻是t3,可以看出t3时刻对应的波动指示数据和其余时刻的波动指示数据存在较大差异,因此可以对t3时刻的异常波动数据进行修正,例如可以可以确定修正数据为5%,之后采用修正数据5%替换异常波动数据30%,从而实现了对于异常数据的修正,以保证后续在根据历史数据确定异常的检测结果时,可以有效保证检测结果的准确性。

本公开实施例提供的异常检测方法,包括:若检测结果指示待检测参数存在异常,则发送报警信息。将发送报警信息的时刻确定为候选异常时刻,存储候选异常时刻。根据标注信息,在候选异常时刻中确定目标异常时刻,标注信息用于指示确认发生异常的时刻。将目标异常时刻对应的波动指示数据确定为异常波动数据。确定修正数据,采用修正数据替换异常波动数据。通过确定异常波动数据,并采用修正数据对异常波动数据进行替换,从而可以有效实现对于异常波动数据的替换,以避免后续根据存在异常的历史数据进行异常检测时,会导致误检测的问题,有效提升了异常检测的准确率。

在上述实施例的基础上,下面对确定波动指示数据的实现方式进行介绍。基于上述介绍的内容可以确定的是,本公开中可以获取当前时刻之间的预设时段内的多个波动指示数据,在一种可能的实现方式中,可以按照一定的时间间隔实时的不断的生成波动指示数据,并将波动指示数据存储至存储单元,则在获取波动指示数据时可以直接从存储单元中获取。

下面结合图8至图10对确定波动指示数据的实现方式进行介绍,图8为本公开实施例提供的异常检测方法的流程图四,图9为本公开实施例提供的获取增量日志的实现示意图,图10为本公开实施例提供的确定波动指示数据的实现示意图。

如图8所示,该方法包括:

S801、以第一时长为周期,获取当前时刻之前第一时长内的增量日志。

在本实施例中,波动指示数据是针对于待检测参数的波动指示数据,因此要确定波动指示数据,需要首先获取待检测参数,而待检测参数可以根据日志信息获取,因此在本实施例中可以获取日志信息。

以及在本实施例中,可以是以第一时长为周期,获取当前时刻之前的第一时长内的增量日志,其中增量日志的含义是,第一时长之前到当前时刻之间的日志信息,通过获取增量日志而非全部的日志,可以简单有效的获取当前时刻对应的时段内的日志信息,以便于后续确定当前时刻对应的时段内的待检测参数。

例如可以参照图9进行理解,如图9所示,当前t1时刻到t2时刻之间的时长即为第一时长,假设从t1时刻开始,在经过第一时长之后到达t2,则在t2时刻可以获取t1时刻到t2时刻之间的增量日志;之后持续进行,从t2时刻开始,在经过第一时长之后到达t3,则在t3时刻可以获取t2时刻到t3时刻之间的增量日志,以此类推,从而不断的获取增量日志。

可以理解的是,以t1时刻到t2时刻为例,t1时刻到t2时刻之间的增量日志就记录了t1时刻到t2时刻这第一时长内的相关日志信息,比如说点击量、访问量、浏览量等等,因此通过获取增量日志,可以有效的获取到各个时段内的相关信息。

其中第一时长例如可以为10分钟,则在获取增量日志时,就是获取当前时刻之前10分钟内的增量日志,在一种可能的实现方式中,例如可以设置有计时器,在计时器的计时时长每到达10分钟的时候,可以获取当前时刻之前10分钟内的增量日志。

在实际实现过程中,第一时长的具体设置方式可以根据实际需求进行选择,本实施例对此不做特别限制。

S802、根据增量日志,确定当前时刻对应的第一待检测参数。

在获取到增量日志之后,因为日志信息中例如可以记录有各个时刻的点击量、访问量等等的相关参数,则可以根据增量日志确定当前时刻所对应的第一待检测参数。

可以理解的是,本实施例中所提到的当前时刻对应的第一待检测参数,实际上是当前时刻之前的第一时长内的第一待检测参数,其中,第一待检测参数例如可以为访问量、点击量等等,本实施例对此不做限制,其例如可以从增量日志中直接获取,或者还可以在对增量日志进行一定的处理之后,确定第一待检测参数,本实施例对此不做限制,具体取决于日志信息的记录方式,总之根据日志信息可以确定当前时刻的第一待检测参数。

S803、根据当前时刻对应的第一待检测参数以及第二时刻对应的第二待检测参数,确定第一待检测参数的波动指示数据,其中,第二时刻为当前时刻对应于上一周期的时刻。

本实施例中的波动指示数据用于指示待检测参数相对于上一周期的波动情况,因此在确定当前时刻对应的第一待检测参数之后,还要获取上一周期对应于当前时刻的第二时刻的第二待检测参数。

此处进行举例说明,比如说当前的待检测参数对应的周期是1天,以及假设当前时刻为今天的8点,则第二时刻对应于上一周期的时刻,就是昨天的8点,之后根据今天8点的第一待检测参数和昨天8点的第二待检测参数,就可以得到今天8点的第一待检测参数的波动情况,也就是波动指示数据。

下面对确定波动指示数据的推导情况进行简单介绍:

因为应用的使用情况受到用户作息的影响,因此待检测参数会呈现出一定的周期性,因此待检测参数通常是时间t的函数,本实施例中采用X(t)表示待检测参数与t的函数关系,则X(t)可以表示为如下公式二:

X(t)=(1+Y)X(t-p) 公式二

其中,p为时间周期,例如可以为一天或者一周等等,X(t)表示当前时刻的待检测参数,X(t-p)表示上一周期同一时刻的待检测参数,1+Y为当前时刻的待检测参数和上一周期同一时刻的待检测参数之间的波动参数,其中,Y是一个与时间无关的随机变量,例如可以为日环比或者周环比或者其他,具体取决于时间周期p的实现。

基于上述公式二可以确定的是,当Y为1时,表示当前时刻的X(t)和上一周期的X(t-p)是相同的,不存在波动;当Y不为1时,表示当前时刻的X(t)和上一周期的X(t-p)是不相同的,存在一定的波动,因此本实施例中的Y即可以指示待检测参数相对于上一周期的波动情况,基于上述公式二推导波动指示数据Yi,即可以得到如下公式三:

其中,X

基于上述介绍,在根据当前时刻对应的第一待检测参数和第二时刻对应的第二待检测参数确定波动指示数据时,在一种可能的实现方式中,可以确定第一待检测参数和第二待检测参数的差值,并将差值和第二待检测参数的比值,确定为第一待检测参数的波动指示数据。

例如可以结合图10理解上述过程,如图10所示,假设在当前周期的t1时刻根据增量日志确定了第一待检测参数为X1,则可以获取t1时刻在上一周期对应的第二时刻的第二待检测参数,其中,t1时刻在上一周期对应的第二时刻可以为图10中的t1`,t1`时刻对应的第二待检测参数可以为X1`,根据t1时刻的第一待检测参数X1和t1`时刻的第二待检测参数X1`,可以确定t1时刻对应的波动指示数据Y1,其中,Y1用于指示X1相对于X1`的波动情况。

在经过第一时长到达t2时刻之后,执行与上述类似的操作,确定t2时刻对应的波动指示数据Y2;同样的,在经过第一时长到达t3时刻之后,执行与上述类似的操作,确定t3时刻对应的波动指示数据Y3,以此类推,从而持续的确定多个波动指示数据,以及可以将确定的波动指示数据存储在存储单元中,以便于后续在根据波动指示数据进行异常检测时,可以快速的获取到多个波动指示数据。

本公开实施例提供的异常检测方法,包括:以第一时长为周期,获取当前时刻之前第一时长内的增量日志。根据增量日志,确定当前时刻对应的第一待检测参数。根据当前时刻对应的第一待检测参数以及第二时刻对应的第二待检测参数,确定第一待检测参数的波动指示数据,其中,第二时刻为当前时刻对应于上一周期的时刻。通过获取第一时长内的增量日志,之后基于增量日志可以简单有效的确定当前时刻对应的待检测参数,并且根据当前时刻的待检测参数和上一周期的第二时刻的待检测参数,可以有效的确定当前时刻的待检测参数的波动指示数据,从而有效的确定待检测参数的波动情况,并且将确定的波动指示数据存储在存储单元中,以便于后续快速的获取到多个波动指示数据。

上述各实施例均介绍了本公开的异常检测方法,在上述各实施例的基础上,下面结合图11对本公开的异常检测方法进行一个系统的介绍,图11为本公开实施例提供的异常检测方法的执行单元示意图。

如图11所示,可以设置有计时器1,计时器1用于针对获取增量日志的时刻进行计时,每当计时器1的计时时长到达第一时长的时候,日志处理单元可以从日志系统中获取增量日志,并将获取的增量日志转换成时序数据(X

在确定待检测参数之后,因为不同的X

同时,考虑到相关技术没有对历史的异常数据进行修正,本实施例中通过数据修正单元,根据异常记录单元中记载的候选异常时刻以及标注信息,对异常的Y

在对异常数据修正之后,可以将修正后的数据存储到数据存储单元,在数据存储单元中存储的就是修正后的波动指示数据Y

以及本实施例还设置有计时器2,其中计时器2用于针对获取波动指示数据的时刻进行计时。

当计时器2的计时时长到达第二时长的时候,数据检测单元可以从数据存储单元中提取当前时刻之前预设时段内的波动指示数据Y

本实施例中可以将计时器2的两个时刻之间的第二时长记为Δt

之后数据检测单元就可以基于当前获取到的多个波动指示数据进行异常的检测,异常检测实现过程可以为:

1、初始化观察窗口的长度k=1;

2、将多个波动指示数据Y

3、由中心极限定理可知kn越大,Z

4、如果Z

5、如果Z

6、在增大观察窗口的长度之后,如果观察窗口的长度超过预先设定的最大观察窗口的长度l,则可以确定待检测参数为正常状态;

7、如果观察窗口的长度没有超过预先设定的最大观察窗口的长度l,则可以重复执行上述的步骤2~7。

当前介绍的异常检测的实现方式与上述实施例介绍的实现方式是类似的,只是本实施例中是以一个更为具体的示例进行介绍的,更为详细的实现方式可以参照上述实施例中的说明。

在确定检测结果之后,如果检测结果指示发生异常,则异常报警单元可以发送报警信息,以及异常处理单元中可以针对异常进行修复。

值得说明的是,本实施中的异常报警单元可以为图11所示的外部依赖,或者还可以在异常检测单元的内部实现,本实施例对此不做特别限制。

同时,本实施例中可以将发送报警信息的时刻确定为候选异常时刻,并将候选异常时刻存储在异常记录单元中,以便于后续对异常数据进行修复。

综上所述,本公开实施例提供的异常检测方法,通过根据检测方法确定差异参数,并根据差异参数与预设显著性水平对应的临界值进行比较,从而可以有效的确定当前波动指示数据和历史的波动指示数据之间是否存在差异,以根据历史的情况自适应的确定检测结果,无需进行阈值的设置,进而避免了根据用户的使用情况调整阈值所导致的异常检测的复杂性。同时,本实施例中通过动态的增加进行平均处理的波动指示数据的第一数量,从而不断的根据多个数据确定是否存在异常,有效避免了仅判断单点的值是否超出阈值所导致的异常检测的准确性较低的问题。同时通过对异常波动数据进行修正,从而可以避免后续根据存在异常的历史数据进行异常检测时,会导致误检测的问题,有效提升了异常检测的准确率。以及上述实现过程均是基于具体的数据分析准确的确定检测结果,从而有效提升了异常检测的准确性。

图12为本公开实施例的异常检测装置的结构示意图。如图12所示,本实施例的异常检测装置1200可以包括:第一确定模块1201、获取模块1202、第二确定模块1203、处理模块1204。

第一确定模块1201,用于确定应用程序的待检测参数;

获取模块1202,用于获取所述待检测参数在当前时刻之前的预设时段内的多个波动指示数据,所述波动指示数据用于指示所述待检测参数相对于上一个周期的波动情况;

第二确定模块1203,用于根据所述多个波动指示数据所对应的差异信息以及预设阈值,确定检测结果,其中,所述差异信息用于指示所述多个波动指示数据之间的差异,所述检测结果用于指示所述待检测参数存在异常或者所述待检测参数不存在异常。

一种可能的实现方式中,所述第二确定模块1203,包括:

第一确定单元,用于根据所述预设阈值,确定所述预设阈值对应的临界值;

预设处理单元,用于根据第一数量对所述多个波动指示数据进行预设处理,得到所述差异信息;

第二确定单元,用于若所述差异信息的绝对值大于所述临界值的绝对值,则确定所述检测结果为异常结果,所述异常结果用于指示所述待检测参数存在异常;或者,

所述第二确定单元,还用于若所述差异信息的绝对值小于或等于所述临界值的绝对值,则增大所述第一数量,以及根据增大后的所述第一数量重复执行所述预设处理,直至增大后的第一数量大于或等于第二阈值或者确定得到所述检测结果异常结果,其中,在所述增大后的第一数量大于或等于所述第二阈值时,确定所述检测结果为正常结果。

一种可能的实现方式中,所述预设处理包括平均处理和检验处理;

所述预设处理单元具体用于:

将所述多个波动指示数据中,每所述第一数量个波动指示数据进行所述平均处理,得到多个平均波动指示数据;

对所述多个平均波动指示数据进行所述检验处理,得到所述差异信息。

一种可能的实现方式中,所述预设处理单元具体用于:

确定所述多个平均波动指示数据的指示参数,其中,所述指示参数包括如下中的至少一种:均值、方差、所述平均波动指示数据的数量;

根据所述多个平均波动指示数据的指示参数,确定所述差异信息。

一种可能的实现方式中,所述装置还包括:处理模块1204;

所述处理模块1204,包括:

第三确定单元,用于在所述获取当前时刻之前预设时长内的多个波动指示数据之前,确定波动指示数据;

第一存储单元,用于将所述波动指示数据存储至存储单元。

一种可能的实现方式中,所述第三确定单元具体用于:

以第一时长为周期,获取当前时刻之前第一时长内的增量日志;

根据所述增量日志,确定当前时刻对应的第一待检测参数;

根据所述当前时刻对应的第一待检测参数以及第二时刻对应的第二待检测参数,确定所述第一待检测参数的波动指示数据,其中,所述第二时刻为当前时刻对应于上一周期的时刻。

一种可能的实现方式中,所述第三确定单元具体用于:

确定所述第一待检测参数和所述第二待检测参数的差值;

将所述差值和所述第二待检测参数的比值,确定为所述第一待检测参数的波动指示数据。

一种可能的实现方式中,所述处理模块1204还包括:

发送单元,用于若所述检测结果指示所述待检测参数存在异常,则发送报警信息;

第二存储单元,用于将发送报警信息的时刻确定为候选异常时刻,存储所述候选异常时刻;

修正单元,用于根据所述候选异常时刻,对所述波动指示数据进行修正。

一种可能的实现方式中,所述修正单元具体用于:

根据标注信息,在所述候选异常时刻中确定目标异常时刻,所述标注信息用于指示确认发生异常的时刻;

将所述目标异常时刻对应的波动指示数据确定为异常波动数据;

确定修正数据,采用所述修正数据替换所述异常波动数据。

一种可能的实现方式中,所述修正单元具体用于:

确定所述波动指示数据所对应的目标分布,根据所述目标分布对应的标准值和方差生成第一随机数,将所述第一随机数确定为修正数据;或者,

在所述波动指示数据中的正常波动数据中随机选择第二随机数,将所述第二随机数确定为修正数据。

本公开提供一种异常检测方法及装置,应用于计算机技术中的人工智能领域,以达到提升异常检测的准确性的目的。

根据本公开的实施例,本公开还提供了一种电子设备和一种可读存储介质。

根据本公开的实施例,本公开还提供了一种计算机程序产品,计算机程序产品包括:计算机程序,计算机程序存储在可读存储介质中,电子设备的至少一个处理器可以从可读存储介质读取计算机程序,至少一个处理器执行计算机程序使得电子设备执行上述任一实施例提供的方案。

图13示出了可以用来实施本公开的实施例的示例电子设备1300的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。

如图13所示,电子设备1300包括计算单元1301,其可以根据存储在只读存储器(ROM)1302中的计算机程序或者从存储单元1308加载到随机访问存储器(RAM)1303中的计算机程序,来执行各种适当的动作和处理。在RAM 1303中,还可存储设备1300操作所需的各种程序和数据。计算单元1301、ROM 1302以及RAM 1303通过总线1304彼此相连。输入/输出(I/O)接口1305也连接至总线1304。

设备1300中的多个部件连接至I/O接口1305,包括:输入单元1306,例如键盘、鼠标等;输出单元1307,例如各种类型的显示器、扬声器等;存储单元1308,例如磁盘、光盘等;以及通信单元1309,例如网卡、调制解调器、无线通信收发机等。通信单元1309允许设备1300通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。

计算单元1301可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元1301的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元1301执行上文所描述的各个方法和处理,例如异常检测方法。例如,在一些实施例中,异常检测方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元1308。在一些实施例中,计算机程序的部分或者全部可以经由ROM1302和/或通信单元1309而被载入和/或安装到设备1300上。当计算机程序加载到RAM 1303并由计算单元1301执行时,可以执行上文描述的异常检测方法的一个或多个步骤。备选地,在其他实施例中,计算单元1301可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行异常检测方法。

本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。

用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。

在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。

为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。

可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。

计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务("Virtual Private Server",或简称"VPS")中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。

应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。

上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。

相关技术
  • 芯片异常检测方法和装置及电路面板异常检测方法和装置
  • 异常检测方法、异常检测程序、异常检测装置、服务器装置以及信息处理方法
技术分类

06120113084196