CN114881167B - 异常检测方法、装置、电子设备和介质 - Google Patents
异常检测方法、装置、电子设备和介质 Download PDFInfo
- Publication number
- CN114881167B CN114881167B CN202210571609.9A CN202210571609A CN114881167B CN 114881167 B CN114881167 B CN 114881167B CN 202210571609 A CN202210571609 A CN 202210571609A CN 114881167 B CN114881167 B CN 114881167B
- Authority
- CN
- China
- Prior art keywords
- data
- time
- target
- determining
- sequence
- 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.)
- Active
Links
Images
Classifications
-
- 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/211—Selection of the most significant subset of features
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computational Linguistics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Evolutionary Biology (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Testing And Monitoring For Control Systems (AREA)
Abstract
本公开提供了一种异常检测方法、装置、设备、介质和产品,涉及人工智能领域,具体为深度学习、物联网等技术领域,适用于工业设备的异常检测场景。异常检测方法包括:基于数据采集设备采集的第一时间序列数据,确定数据采集设备在目标时刻的第一异常信息;响应于确定第一异常信息表征数据采集设备在目标时刻存在异常,基于目标时刻,获取数据采集设备采集的第二时间序列数据;基于与第二时间序列数据相关联的特征数据,确定数据采集设备在目标时间段的第二异常信息;基于第一异常信息和第二异常信息中的至少一个,确定数据采集设备的异常检测结果。
Description
技术领域
本公开涉及人工智能领域,具体为深度学习、物联网等技术领域,更具体地,涉及一种异常检测方法、装置、电子设备、介质和程序产品。
背景技术
在一些场景下,需要通过数据采集设备采集数据,数据采集设备的正常工作至关重要,因此需要对数据采集设备进行异常检测,以便及时发现数据采集设备是否发生异常。
发明内容
本公开提供了一种异常检测方法、装置、电子设备、存储介质以及程序产品。
根据本公开的一方面,提供了一种异常检测方法,包括:基于数据采集设备采集的第一时间序列数据,确定所述数据采集设备在目标时刻的第一异常信息;响应于确定所述第一异常信息表征所述数据采集设备在所述目标时刻存在异常,基于所述目标时刻,获取所述数据采集设备采集的第二时间序列数据;基于与所述第二时间序列数据相关联的特征数据,确定所述数据采集设备在目标时间段的第二异常信息;基于所述第二异常信息,确定所述数据采集设备的异常检测结果。
根据本公开的另一方面,提供了一种异常检测装置,包括:第一确定模块、第一获取模块、第二确定模块以及第三确定模块。第一确定模块,用于基于数据采集设备采集的第一时间序列数据,确定所述数据采集设备在目标时刻的第一异常信息;第一获取模块,用于响应于确定所述第一异常信息表征所述数据采集设备在所述目标时刻存在异常,基于所述目标时刻,获取所述数据采集设备采集的第二时间序列数据;第二确定模块,用于基于与所述第二时间序列数据相关联的特征数据,确定所述数据采集设备在目标时间段的第二异常信息;第三确定模块,用于基于所述第二异常信息,确定所述数据采集设备的异常检测结果。
根据本公开的另一方面,提供了一种电子设备,包括:至少一个处理器和与所述至少一个处理器通信连接的存储器。其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述的异常检测方法。
根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行上述的异常检测方法。
根据本公开的另一方面,提供了一种计算机程序产品,包括计算机程序/指令,所述计算机程序/指令被处理器执行时实现上述异常检测方法的步骤。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1示意性示出了根据本公开一实施例的异常检测的系统架构;
图2示意性示出了根据本公开一实施例的异常检测方法的流程图;
图3示意性示出了根据本公开一实施例的通过该统计规则标记确定异常信息的流程图;
图4示意性示出了根据本公开一实施例的异常检测的系统图;
图5示意性示出了根据本公开一实施例的特征数据的示意图;
图6示意性示出了根据本公开一实施例的数据链路的示意图;
图7示意性示出了根据本公开一实施例的异常检测装置的框图;以及
图8是用来实现本公开实施例的用于执行异常检测的电子设备的框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。
随着云计算、物联网和边缘计算技术发展,越来越多传统工业领域的企业开始向数字化、智能化转型,并开始探索自动化的生产设备控制、监控和安全生产管理方案。在边缘端和云端融合的物联网场景中,边缘端的传感器以预设的采集频率不断采集数据,并上传至云端的数据库中。同时,云端的控制系统对来自边缘端的数据进行数据分析、利用深度学习模型进行计算,以便对边缘端的工业设备进行控制调节。
目前,大部分工业系统主要依靠行业专家进行机理建模,并在生产过程中对重要的设备进行监控。运行工程师靠观测运行工况和相关的运行数据凭经验判断与处理异常工况。当生产条件与运行工况发生变化时,难以及时准确地预测异常工况。例如,工业流水线普遍存在大量由传感器采集的时间序列数据,仅依靠行业专家进行机理建模、监控与值守来确定传感器异常,其过程耗时费力、扩展性和通用性较低。
工业设备的异常检测模型主要基于历史的工业现场数据以及异常样本点标记,以数据驱动的方式实现工业设备异常的实时检测,从而实现生产线的自动化运维。传统的异常检测模型的建模方法主要通过建立生产线的机理模型进行优化控制。然而,实际控制过程中包含多变量、强非线性、不确定性,因此难以进行数字化机理建模,导致建模精度较低,不具备通用性。换言之,基于机理模型的异常检测模型缺乏对历史生产过程的系统性复盘排查,也无法实时检测生产过程中可能出现的设备异常问题,工业系统中大量宝贵的生产数据无法被有效地利用。
在一些情况下,可以通过异常检测模型来检测传感器是否异常,异常检测模型需要大量具有标签的样本数据进行训练,因此样本数据的标签通常需要进行人工标记,人工标记样本耗时费力、成本高昂。另外,当生产数据量过大时,可能由于数据量过大而造成数据链路阻塞,造成消息堆积,影响异常检测的时效性与准确性。另一方面,即使具有大量具有标签的样本数据,由于样本数据的特征工程耗时费力,在极大程度上影响着模型的效果。
图1示意性示出了根据本公开一实施例的异常检测的系统架构。需要注意的是,图1所示仅为可以应用本公开实施例的系统架构的示例,以帮助本领域技术人员理解本公开的技术内容,但并不意味着本公开实施例不可以用于其他设备、系统、环境或场景。
如图1所示,根据该实施例的系统架构100可以包括客户端101、102、103,网络104和服务器105。网络104用以在客户端101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用客户端101、102、103通过网络104与服务器105交互,以接收或发送消息等。客户端101、102、103上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等(仅为示例)。
客户端101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。本公开实施例的客户端101、102、103例如可以运行应用程序。
服务器105可以是提供各种服务的服务器,例如对用户利用客户端101、102、103所浏览的网站提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的用户请求等数据进行分析等处理,并将处理结果(例如根据用户请求获取或生成的网页、信息、或数据等)反馈给客户端。另外,服务器105还可以是云服务器,即服务器105具有云计算功能。
需要说明的是,本公开实施例所提供的异常检测方法可以由服务器105执行。相应地,本公开实施例所提供的异常检测装置可以设置于服务器105中。
在一种示例中,服务器105可以处理数据采集设备采集的时间序列数据,从而得到表征数据采集设备是否异常的异常检测结果。
应该理解,图1中的客户端、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的客户端、网络和服务器。
下面结合图1的系统架构,参考图2~图6来描述根据本公开示例性实施方式的异常检测方法。本公开实施例的异常检测方法例如可以由图1所示的服务器来执行,图1所示的服务器例如以下文的电子设备相同或类似。
图2示意性示出了根据本公开一实施例的异常检测方法的流程图。
如图2所示,本公开实施例的异常检测方法200例如可以包括操作S210~操作S240。
在操作S210,基于数据采集设备采集的第一时间序列数据,确定数据采集设备在目标时刻的第一异常信息。
在操作S220,响应于确定第一异常信息表征数据采集设备在目标时刻存在异常,基于目标时刻,获取数据采集设备采集的第二时间序列数据。
在操作S230,基于与第二时间序列数据相关联的特征数据,确定数据采集设备在目标时间段的第二异常信息。
在操作S240,基于第二异常信息,确定数据采集设备的异常检测结果。
示例性地,数据采集设备例如包括传感器,传感器例如用于采集生产过程中的温度、压力等数据。数据采集设备采集的数据通常包括时间序列数据。通过处理数据采集设备采集的第一时间序列数据,可以得到第一异常信息,第一异常信息表征了数据采集设备在目标时刻是否发生异常。例如,第一时间序列数据包括多个数据值,每个数据值对应一个时刻,目标时刻可以是多个数据值对应的多个时刻中的任意一个或多个时刻。
当第一异常信息表征数据采集设备在目标时刻存在异常时,表示数据采集设备存在瞬时异常,此时可以进一步确定数据采集设备是否存在稳定的异常风险。例如,基于目标时刻获取数据采集设备采集的第二时间序列数据,第二时间序列数据包括多个数据值,多个数据值对应的时刻与目标时刻相关联。通过处理第二时间序列数据可以得到第二异常信息,第二异常信息包括数据采集设备在目标时间段内存在异常或不存在异常,目标时间段可以包括第二时间序列数据所处的时间段,也可以包括第二时间序列数据所处时间段之外的其他时间段。
接下来,基于第二异常信息确定针对数据采集设备的异常检测结果,异常检测结果表征了数据采集设备在目标时间段内是否存在异常风险。在另一示例中,还可以基于第一异常信息确定针对数据采集设备的异常检测结果,此时异常检测结果表征了数据采集设备在目标时刻是否存在异常风险。
根据本公开的实施例,首先基于第一时间序列数据确定数据采集设备在目标时刻是否存在瞬时异常,在存在瞬时异常的前提下再进一步基于第二时间序列数据确定数据采集设备在目标时间段内是否存在稳定的异常,由此降低了异常检测的范围,提高异常检测的效率。例如,当存在多个数据采集设备时,先从多个数据采集设备中确定存在瞬时异常的部分数据采集设备,再从该部分数据采集设备中确定存在稳定异常的数据采集设备,由此提高了异常检测效率,降低了异常检测耗费的计算资源。
以下将介绍第一异常信息的至少两种确定方式。第一种确定方式包括将第一时间序列数据输入第三深度学习模型中,输出第一异常信息。第二种确定方式包括基于统计规则对第一时间序列数据进行统计得到第一异常信息。通过两种方式得到第一异常信息之后,可以进一步通过人工审核第一异常信息是否准确。
针对第一种确定方式,将第一时间序列数据输入第三深度学习模型中,输出第一异常信息。第三深度学习模型例如包括无监督学习模型,例如包括TS2Vec(Time-series toVector)模型。TS2Vec模型例如具有特征提取功能和异常信息确定功能。将第一时间序列数据输入TS2Vec模型,TS2Vec模型执行以下操作得到第一异常信息。
示例性地,第一时间序列数据例如包括多个数据值,目标时刻包括第一时间序列数据中目标数据值对应的时刻,目标数据值例如可以是第一时间序列数据中最后一个数据值,由此目标时刻为第一时间序列数据所对应的多个时刻中最后一个时刻。
处理第一时间序列数据,得到针对目标时刻的第一特征。例如由TS2Vec模型提取第一时间序列数据中针对目标时刻的第一特征。
遮掩第一时间序列数据中的目标数据值,得到遮掩后时间序列数据。处理遮掩后时间序列数据,得到针对目标时刻的第二特征。例如,遮掩目标数据值包括去除该目标数据值或者将该目标数据值设置为特定值,目的在于确定第二特征时不受到目标数据值额影响。
在得到第一特征和第二特征之后,基于第一特征和第二特征之间的第一距离值,确定数据采集设备在目标时刻的第一异常信息。第一距离值表征了第一特征和第二特征之间的相似度。
例如,目标时刻为t时刻,第一特征表示为rt,第二特征表示为r′t。第一特征rt和第二特征r′t之间的第一距离值αt例如为公式(1)所示。
αt=||rt-r′t||1 (1)
针对目标时刻t,目标时刻t之前包括多个参考时刻z,每个参考时刻z例如对应一个第二距离值,第二距离值与第一距离值的获取方式类似。第一距离值和第二距离值例如是L1距离值,L1距离值包括哈曼吨距离值,当然也可以包括欧式距离值等,在此不限定距离值的具体类型。
例如,参考公式(4),μ与σ分别为异常数据值的平均值与标准差,β为超参数。β=3表示采用3-sigma法则,n-sigma(此时n=3)法则表示数据分布是正态分布或近正态分布。第一异常信息表征了第一时间序列数据中目标时刻t对应的目标数据值是否为异常数据值。如果目标时刻t对应的目标数据值所对应的偏差满足公式(4),则确定目标时刻t对应的目标数据值存在异常,由此将目标时刻t对应的目标数据值标记为异常数据值。
根据本公开的实施例,利用TS2Vec模型确定第一时间序列数据中的第一异常信息,无需人工标记异常信息,降低了人工成本,并且通过模型确定的第一特征和第二特征表征了第一时间序列数据的深层信息,使得基于第一特征和第二特征确定的异常信息更加准确。另外,TS2Vec模型为无监督的深度学习模型,无需通过人工标记模型的训练样本,降低人工成本。
针对第二种确定方式,基于统计规则对第一时间序列数据进行统计得到第一异常信息。
示例性地,目标时刻包括第一时间序列数据中目标数据值对应的时刻。可以基于数据统计规则处理第一时间序列数据,得到异常阈值,然后基于目标数据值与异常阈值之间的关系,确定数据采集设备在目标时刻的第一异常信息。
例如,当目标数据值超过异常阈值时,数据采集设备在目标时刻的第一异常信息表示目标数据值为异常数据,即数据采集设备在目标时刻存在异常。
示例性,采用统计规则可以统计第一时间序列数据中固定时间窗口内单变量时间序列的最大值、最小值、平均值、标准差、变异系数等统计量变量。针对不同的统计变量,基于n-sigma法则计算其异常阈值,异常阈值例如包括控制上限(UCL,upper control limit)和控制下限(LCL,lower control limit)。对第一时间序列数据的统计可以反映数据采集设备在时间窗口内的数据分布,有助于直观地了解数据特点。基于n-sigma法则得到的控制上限和控制下限为异常数据的确定提供了指导,例如使用控制上限和控制下限可以得到第一异常信息。例如,当目标数据值大于控制上限或小于控制下限时,表示目标数据值为异常数据,可以将目标数据值作为第一异常信息。
图3示意性示出了根据本公开一实施例的通过该统计规则标记确定异常信息的流程图。
如图3所示,横坐标为时间,时间例如包括24个小时。纵坐标为温度,例如为室内温度。每个折线例如为不同传感器采集的第一时间序列数据。通过统计规则计算出不同温度传感器的统计变量及其对应的n-sigma法则的控制上限和控制下限,并通过控制上限和控制下限确定异常数据。统计变量例如包括最大值、最小值、平均值、标准差、变异系数等。可以理解,正常的传感器在每个时间窗口内的波动符合室外温度变化,趋势基本相同。而异常传感器在时间窗口内的波动趋势不尽相同,既存在完全没变化的传感器,也存在波动剧烈的传感器。由此,可以标记第一时间序列数据中异常时刻(目标时刻)对应的目标数据值作为第一异常信息。当然,也可以标记一段时间内的传感器数据是否存在异常。
以n-sigma中的n=3为例,根据正态分布的概率密度公式可知,数据取值大部分(例如99.7%)集中在(μ-3σ,μ+3σ)区间内,μ与σ分别为平均值与标准差。此时,控制上限例如可以是μ+3σ,控制下限如可以是μ-3σ。
根据本公开的实施例,可以通过统计规则确定第一异常信息,通过统计规则确定的第一异常信息准确性较高、复杂度较低、计算量较低。
在基于第三深度学习模型(TS2Vec模型)或统计规则确定第一异常信息之后,如果第一异常信息表征数据采集设备在目标时刻存在异常,则进一步基于目标时刻获取第二时间序列数据。例如,基于目标时刻确定时间段范围,时间段范围内的多个时刻与目标时刻较为接近,即时间段范围内的多个时刻是目标时刻的近期时刻。从数据采集设备在时间段范围内采集的时间序列数据中确定第二时间序列数据,例如,从时间段范围内的时间序列数据中确定一个或多个时间窗口内的数据作为第二时间序列数据。
在得到第二时间序列数据之后,通过第一深度学习模型提取第二时间序列数据的特征,得到与第二时间序列数据相关联的特征数据。
得到特征数据之后,利用第二深度学习模型处理特征数据,得到数据采集设备在目标时间段的第二异常信息。例如,将特征数据输入第二深度学习模型中进行预测,得到数据采集设备在目标时间段的第二异常信息。第一深度学习模型例如包括无监督学习模型,例如包括TS2Vec模型。第二深度学习模型例如包括有监督学习模型,例如包括但不仅限于逻辑回归模型(Logistic Regression)、支持向量机模型(Support Vector Machine)、模式识别分类模型(KNeighbors Classifier)、梯度提升模型(XGBoost)。
图4示意性示出了根据本公开一实施例的异常检测的系统图。
如图4所示,本公开的实施例包括控制系统410和离线训练过程420。
示例性地,控制系统410将数据采集装置采集的时间序列数据上传至规则引擎中,由规则引擎将时间序列数据导入时间序列数据库中存储。
从时间序列数据库中获取样本数据进行模型离线训练,得到经训练的第一深度学习模型和经训练的第二深度学习模型。第一深度学习模型例如包括无监督学习模型,例如包括TS2Vec模型,第二深度学习模型例如包括有监督学习模型。
在得到经训练的第一深度学习模型和经训练的第二深度学习模型之后,从时间序列数据库中获取实时数据并采用经训练的第一深度学习模型和经训练的第二深度学习模型进行在线异常检测。
针对在线异常检测过程,从时间序列数据库中获取第一时间序列数据,通过异常标记模块处理第一时间序列数据,得到第一异常信息,第一异常信息表征了数据采集装置在目标时刻是否存在瞬时异常。异常标记模块例如可以实现通过第三深度学习模型(TS2Vec模型)或统计规则确定第一异常信息,基于第三深度学习模型(TS2Vec模型)或统计规则确定第一异常信息的过程如上文所述,在此不再赘述。
如果第一异常信息表征数据采集装置在目标时刻存在瞬时异常,进一步基于目标时刻获取数据采集装置近期采集的第二时间序列数据。通过第一深度学习模型提取第二时间序列数据的特征数据,将特征数据输入第二深度学习模型中进行预测,得到第二异常信息,然后,基于第二异常信息确定数据采集装置在近期的目标时间段内是否具有异常风险。
接下来,可以基于第一异常信息和第二异常信息,对数据采集设备进行告警或停用。例如,如果第一异常信息或第二异常信息表示数据采集设备存在异常风险,可以进行告警或停用。可以理解,可以结合表征瞬时异常的第一异常信息和表征长期异常的第二异常信息来对数据采集设备进行告警或停用,提高了风险预警的准确性。
另外,如果第一异常信息表征数据采集设备存在瞬时异常,可以将第一异常信息存储至时间序列数据库中,以丰富异常数据信息,实现充分利用线上数据形成正向循环迭代模型。
以下将阐述离线训练过程。
首先,阐述第一深度学习模型(TS2Vec模型)的训练过程。
对于工业场景的时间序列数据,通常的特征工程方法主要利用时间戳、时序值(数据值)以及属性变量进行统计,构造出一系列特征数据。然而,统计类特征表征的数据信息有限,且需要一定的业务背景知识才能构造出有效的特征数据。随着云计算的发展,机器对数据的计算能力得到了大幅提升。基于生成式方法(Generative Methods)、对比式方法(Contrastive Methods)的深度学习模型能够以自监督学习(Self-supervised Learning)的方式更好地抽取出时间序列数据的特征数据。例如,对比式方法是通过将数据分别与正例样本和负例样本在特征空间进行对比,由此来学习样本的特征数据,其主要的难点在于如何构造正负样本。
TS2Vec模型主要由一个编码器构成,编码器中例如包含三个部分,分别为输入全连接层(Input Projection Layer)、时间序列遮掩层(Timestamp Masking)以及放大的卷积层(Dilated Convolutions)。
其中,针对TS2Vec模型的正负样本通过时间序列遮掩层Timestamp Masking的进行构造。
在一些示例中,对比学习中的正负样本构造方法,主要通过时序一致(TemporalConsistency)、子序列一致(Subseries Consistency)或变换一致(TransformationConsistency)策略进行构造。时序一致策略把来自不同时间序列且时间戳相邻(时间戳不同)的时间序列作为正样本。子序列一致策略把不同维度且时间戳相同的时间序列作为正样本,不同维度例如表征不同的时间序列数据。变换一致策略对相同时间戳的序列,通过增强变换得到新的时间序列,将新的时间序列与原时间序列作为正样本。时序一致、子序列一致、变换一致等策略存在一定弊端,例如,时序一致策略一般无法处理异常点问题,子序列一致策略一般无法处理两个趋势不同的时间序列。
由于时序一致、子序列一致、变换一致等策略存在一定弊端,本公开的实施例的TS2Vec模型可以采用上下文一致策略对时间序列进行随机剪裁(random cropping),例如利用滑动窗口随机剪裁出存在重合部分的子序列。并使用时间戳遮掩(timestampmasking)的方法,把遮掩前后的子序列作为正样本。该方式使得时间序列在不同的上下文语境下对自身进行重构,能够增加时间序列表征的鲁棒性,消除异常点与趋势的影响。TS2Vec模型采用上下文一致策略获取正负样本以实现模型训练的过程如下文描述。
例如,从时间序列数据库中获取时间序列样本数据,利用时间序列样本数据训练第一深度学习模型。时间序列样本数据例如包括第一时间序列样本数据和第二时间序列样本数据。第一时间序列样本数据和第二时间序列样本数据为不同的时间序列。在一示例中,第一时间序列样本数据和第二时间序列样本数据可以由不同的数据采集装置采集的,也可以是由同一数据采集装置采集的不同时间序列。
例如,将第一时间序列样本数据输入待训练的第一深度学习模型中进行特征提取,得到第一子序列的序列特征。将第二时间序列样本数据输入待训练的第一深度学习模型中进行特征提取,得到第二子序列的序列特征。
基于第一子序列的序列特征,得到第一损失函数值。例如,第一子序列包括多个第一子序列,基于多个第一子序列中任意一个第一子序列中数据值被遮掩前后所对应的序列特征、多个第一子序列中存在重叠的任意两个第一子序列中数据值被遮掩前后所对应的序列特征、多个第一子序列中不存在重叠的任意两个第一子序列所对应的序列特征,得到第一损失函数值。第一损失函数值由公式(5)所示的第一损失函数得到,第一损失函数表征了时间维度的损失。
其中,ri,t、r’i,t表分别表示模型学习到第i个时间序列样本数据的同一个裁剪片段(子序列)在t时间戳进行数据值遮掩前后的表征向量;Ω是随机剪裁时存在重叠的裁剪片段(子序列)的集合;ri,t、r’i,t′分别表示模型学习到第i个时间序列样本数据中存在重叠的不同裁剪片段(子序列)在t时间戳进行数据值遮掩前后的表征向量(正样本);ri,t、ri,t′分别表示第i个时间序列样本数据中不存在重叠的不同裁剪片段(子序列)分别在t时间戳、t′时间戳的表征向量(负样本)。
基于第一子序列的序列特征和第二子序列的序列特征,得到第二损失函数值。例如,第二子序列包括多个第二子序列,基于多个第一子序列中任意一个第一子序列中数据值被遮掩前后所对应的序列特征、多个第一子序列和多个第二子序列中任意两个子序列中数据值被遮掩前后所对应的序列特征、多个第一子序列中任意一个第一子序列和多个第二子序列中任意一个第二子序列分别对应的序列特征,得到第二损失函数值。第二损失函数值由公式(6)所示的第二损失函数得到,第二损失函数表征了实例维度的损失,不同的时间序列样本数据对应不同的实例。
其中,ri,t、r’i,t含义与公式(5)相同;B是批量大小,ri,t、r’j,t′分别表示第i、j(i、j可以相同也可以不同)个时间序列样本数据的裁剪片段(子序列)在t时间戳进行数据值遮掩前后的表征向量(正样本);ri,t、rj,t分别表示第i、j(i、j不同)个时间序列样本数据的裁剪片段(子序列)在t时间戳的表征向量(负样本)。
在得到第一损失函数值和第二损失函数值之后,可以基于第一损失函数值和第二损失函数值,调整待训练的第一深度学习模型,得到经训练的第一深度学习模型。例如基于第一损失函数值和第二损失函数值之和,调整待训练的第一深度学习模型,得到经训练的第一深度学习模型。
换言之,将时间序列样本数据输入第一深度学习模型(TS2Vec模型),由模型利用滑动窗口随机剪裁得到多个第一子序列和多个第二子序列,多个第一子序列中部分存在重合,多个第二子序列中部分存在重合。对第一子序列和第二子序列的某些时间戳对应的数据进行遮掩。针对遮掩前后的子序列,确定针对各时间戳对应的表征向量,从而得到正负样本的向量表示。
得到正负样本的向量表示之后,通过公式(5)和公式(6)计算向量之间的损失函数值,基于损失函数值调整模型参数,使得模型朝着正样本向量之间的相似度高、负样本向量之间的相似度低的方向训练。
接下来,阐述第二深度学习模型的训练过程。
示例性地,从时间序列数据库中获取由参考采集设备采集的时间序列训练样本,时间序列训练样本具有用于表征参考采集设备是否存在异常的标签。参考采集设备例如包括传感器。
示例性,标签是通过样本标记模块得到的,样本标记模块可以通过TS2Vec模型、统计规则、人工审核等方式获得标签,样本标记模块例如与上文提及的异常标记模块类似。例如,样本标记模块基于时间序列训练样本,确定参考采集设备在参考时刻的第三异常信息。如果确定第三异常信息表征参考采集设备在参考时刻存在异常,确定标签为异常。如果确定第三异常信息表征参考采集设备在参考时刻不存在异常,确定标签为正常。第三异常信息的获取方式例如与上文的第一异常信息的获取方式类似,在此不再赘述。
另外,可以利用经训练的第一深度学习模型从时间序列训练样本中提取样本特征数据。然后,将样本特征数据和标签输入待训练的第二深度学习模型中进行训练。例如,利用待训练的第二深度学习模型处理样本特征数据得到处理结果,基于处理结果和标签,训练待训练的第二深度学习模型。
示例性地,第二深度学习模型例如包括有监督学习模型,例如包括但不仅限于逻辑回归模型(Logistic Regression)、支持向量机模型(Support Vector Machine)、模式识别分类模型(KNeighbors Classifier)、梯度提升模型(XGBoost)。
可以理解,通过无监督的第一深度学习模型提取样本特征数据,以及通过样本标记模块得到标签,减少人工标记样本的工作量,并且通过人工审核可以确保标签的准确性。
可以理解,本公开实施例的异常检测方法,第一深度学习模型(TS2Vec模型)可以通过无监督的方式抽取时间序列数据的特征数据,样本标记模块可以通过TS2Vec模型以无监督的方式抽取特征数据并基于特征数据得到第一异常信息,降低了异常样本的标记成本,第二深度学习模型(有监督学习模型)可以采用有监督的方式基于特征数据确定第二异常信息。可以理解,将特征抽取、无监督学习的模型和有监督的模型三者相融合,降低了模型训练、预测的计算开销,并且能够充分利用积累的数据进行模型优化,降低数据加工成本,适应于各类工业异常检测场景,具有良好的拓展性及通用型。
图5示意性示出了根据本公开一实施例的特征数据的示意图。
如图5所示,可以利用经训练的第一深度学习模型(TS2Vec模型)提取特征数据,特征数据包括高维向量。图中示出了利用第一深度学习模型从某个数据采集装置采集的时间序列数据中抽取与10521个时间戳对应的高维向量,对每个高维向量进行降维,得到每个高维向量对应的二维向量。图中的横坐标表示二维向量中的第一维度,纵坐标表示第二维度。
从图中可以看出,10521个高维向量中仅具有521个异常值,从而得知第一深度学习模型(TS2Vec模型)能够较好地学习到时间序列数据的高维特征,实现了以无监督的方式进行异常检测得到第一异常信息。
图6示意性示出了根据本公开一实施例的数据链路的示意图。
如图6所示,在生产过程中,每个产线通常通过大量的数据采集设备610(传感器)分时采集数据,如果每个数据采集设备610都向控制系统640上报数据,那么当控制系统640不具备高性能时,大量数据来临时控制系统640会出现拒绝服务的问题,这对于监控预警是个巨大的挑战。因此,本公开的实施例可以通过网关设备620管理数据采集设备610的数据,同时负责处理上报数据,网关设备620例如包括工控机、边缘网关等。
网关设备620例如使用高性能的非阻塞通信框架接收数据采集设备610上报的数据,非阻塞通信框架例如包括netty。数据采集设备610可以通过HTTP方式将数据上传给网关设备620,网关设备620可以采用TCP Socket通信方式对数据采集设备610进行控制,TCPSocket通信方式是一种实时的、小巧的通信方式,能够确保数据采集设备610收到指令以执行指令。
从网关设备620到控制系统640的链路中,如果通过HTTP或TCP方式通信,当链接建立失败时,那么此次数据可能会丢失。因此可以采用中间件消息队列630的方式进行通信以确保消息的可靠性,消息队列630例如包括RabbitMQ。在上报数据时,网关设备620的角色是发送者,将数据打包成固定的格式,发送到消息队列630中,图中的“pub”表示发送。控制系统640作为消费者,从消息队列630中获取数据,写到控制系统640的数据库中,图中的“sub”表示获取。相比于数据即时推送,本公开实施例选择缓存批量推送的方式,降低了控制系统640的高性能需求。通过批量推送的方式,将一部分的数据压力转移到网关设备620,使得控制系统640的实时性及可用性得到了保障。
在下发控制指令时,网关设备620的角色是消费者,从消息队列630中获取指令,而控制系统640是发送者,将指令发送到消息队列630。通过消息队列630对数据资源进行划分,可以规划网关设备620与消息队列630的映射关系,当发生问题时也能够很快定位。
图7示意性示出了根据本公开一实施例的异常检测装置的框图。
如图7所示,本公开实施例的异常检测装置700例如包括第一确定模块710、第一获取模块720、第二确定模块730以及第三确定模块740。
第一确定模块710可以用于基于数据采集设备采集的第一时间序列数据,确定数据采集设备在目标时刻的第一异常信息。根据本公开实施例,第一确定模块710例如可以执行上文参考图2描述的操作S210,在此不再赘述。
第一获取模块720可以用于响应于确定第一异常信息表征数据采集设备在目标时刻存在异常,基于目标时刻,获取数据采集设备采集的第二时间序列数据。根据本公开实施例,第一获取模块720例如可以执行上文参考图2描述的操作S220,在此不再赘述。
第二确定模块730可以用于基于与第二时间序列数据相关联的特征数据,确定数据采集设备在目标时间段的第二异常信息。根据本公开实施例,第二确定模块730例如可以执行上文参考图2描述的操作S230,在此不再赘述。
第三确定模块740可以用于基于第二异常信息,确定数据采集设备的异常检测结果。根据本公开实施例,第三确定模块740例如可以执行上文参考图2描述的操作S240,在此不再赘述。
根据本公开的实施例,目标时刻包括第一时间序列数据中目标数据值对应的时刻;第一确定模块710包括:第一处理子模块、遮掩子模块、第二处理子模块和第一确定子模块。第一处理子模块,用于处理第一时间序列数据,得到目标时刻的第一特征;遮掩子模块,用于遮掩第一时间序列数据中的目标数据值,得到遮掩后时间序列数据;第二处理子模块,用于处理遮掩后时间序列数据,得到目标时刻的第二特征;第一确定子模块,用于基于第一特征和第二特征之间的第一距离值,确定数据采集设备在目标时刻的第一异常信息。
根据本公开的实施例,第一确定子模块包括:获取单元、获得单元以及确定单元。获取单元,用于获取参考时刻的第二距离值,其中,参考时刻在目标时刻之前;获得单元,用于基于第一距离值和第二距离值,得到平均距离值;确定单元,用于基于第一距离值和平均距离值之间的偏差,确定数据采集设备在目标时刻的第一异常信息。
根据本公开的实施例,目标时刻包括第一时间序列数据中目标数据值对应的时刻;第一确定模块710包括:第三处理子模块和第二确定子模块。第三处理子模块,用于处理第一时间序列数据,得到异常阈值;第二确定子模块,用于基于目标数据值与异常阈值之间的关系,确定数据采集设备在目标时刻的第一异常信息。
根据本公开的实施例,特征数据是利用第一深度学习模型从第二时间序列数据中提取得到的;其中,第二确定模块730还用于:利用第二深度学习模型处理特征数据,得到数据采集设备在目标时间段的第二异常信息。
根据本公开的实施例,第一深度学习模型是通过以下模块得到的:第一输入模块,用于将第一时间序列样本数据输入待训练的第一深度学习模型中,得到第一子序列的序列特征;第二输入模块,用于将第二时间序列样本数据输入待训练的第一深度学习模型中,得到第二子序列的序列特征;第一获得模块,用于基于第一子序列的序列特征,得到第一损失函数值;第二获得模块,用于基于第一子序列的序列特征和第二子序列的序列特征,得到第二损失函数值;调整模块,用于基于第一损失函数值和第二损失函数值,调整待训练的第一深度学习模型,得到经训练的第一深度学习模型。
根据本公开的实施例,第一子序列包括多个第一子序列;第一获得模块还用于:基于多个第一子序列中任意一个第一子序列中数据值被遮掩前后所对应的序列特征、多个第一子序列中存在重叠的任意两个第一子序列中数据值被遮掩前后所对应的序列特征、多个第一子序列中不存在重叠的任意两个第一子序列所对应的序列特征,得到第一损失函数值。
根据本公开的实施例,第二子序列包括多个第二子序列;第二获得模块还用于:基于多个第一子序列中任意一个第一子序列中数据值被遮掩前后所对应的序列特征、多个第一子序列和多个第二子序列中任意两个子序列中数据值被遮掩前后所对应的序列特征、多个第一子序列中任意一个第一子序列和多个第二子序列中任意一个第二子序列分别对应的序列特征,得到第二损失函数值。
根据本公开的实施例,第二深度学习模型是通过以下模块得到的:第二获取模块,用于获取由参考采集设备采集的时间序列训练样本,其中,时间序列训练样本具有用于表征参考采集设备是否存在异常的标签;提取模块,用于从时间序列训练样本中提取的样本特征数据;处理模块,用于利用待训练的第二深度学习模型处理样本特征数据,得到处理结果;训练模块,用于基于处理结果和标签,训练待训练的第二深度学习模型。其中,标签是通过以下模块的得到的:第四确定模块,用于基于时间序列训练样本,确定参考采集设备在参考时刻的第三异常信息;第五确定模块,用于响应于确定第三异常信息表征参考采集设备在参考时刻存在异常,确定标签为异常;第六确定模块,用于响应于确定第三异常信息表征参考采集设备在参考时刻不存在异常,确定标签为正常。
根据本公开的实施例,第一获取模块720包括:第三确定子模块和第四确定子模块。第三确定子模块,用于基于目标时刻确定时间段范围;第四确定子模块,用于从数据采集设备在时间段范围内采集的时间序列数据中确定第二时间序列数据。
在本公开的技术方案中,所涉及的用户个人信息的收集、存储、使用、加工、传输、提供、公开和应用等处理,均符合相关法律法规的规定,采取了必要保密措施,且不违背公序良俗。
在本公开的技术方案中,在获取或采集用户个人信息之前,均获取了用户的授权或同意。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
根据本公开实施例,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,计算机指令用于使计算机执行上文所描述的异常检测方法。
根据本公开实施例,提供了一种计算机程序产品,包括计算机程序/指令,计算机程序/指令被处理器执行时实现上文所描述的异常检测方法。
图8是用来实现本公开实施例的用于执行异常检测的电子设备的框图。
图8示出了可以用来实施本公开实施例的示例电子设备800的示意性框图。电子设备800旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图8所示,设备800包括计算单元801,其可以根据存储在只读存储器(ROM)802中的计算机程序或者从存储单元808加载到随机访问存储器(RAM)803中的计算机程序,来执行各种适当的动作和处理。在RAM 803中,还可存储设备800操作所需的各种程序和数据。计算单元801、ROM 802以及RAM 803通过总线804彼此相连。输入/输出(I/O)接口805也连接至总线804。
设备800中的多个部件连接至I/O接口805,包括:输入单元806,例如键盘、鼠标等;输出单元807,例如各种类型的显示器、扬声器等;存储单元808,例如磁盘、光盘等;以及通信单元809,例如网卡、调制解调器、无线通信收发机等。通信单元809允许设备800通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元801可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元801的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元801执行上文所描述的各个方法和处理,例如异常检测方法。例如,在一些实施例中,异常检测方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元808。在一些实施例中,计算机程序的部分或者全部可以经由ROM 802和/或通信单元809而被载入和/或安装到设备800上。当计算机程序加载到RAM 803并由计算单元801执行时,可以执行上文描述的异常检测方法的一个或多个步骤。备选地,在其他实施例中,计算单元801可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行异常检测方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、复杂可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程异常检测装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以为分布式系统的服务器,或者是结合了区块链的服务器。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
Claims (20)
1.一种异常检测方法,包括:
基于数据采集设备采集的第一时间序列数据,确定所述数据采集设备在目标时刻的第一异常信息;
响应于确定所述第一异常信息表征所述数据采集设备在所述目标时刻存在异常,基于所述目标时刻,获取所述数据采集设备采集的第二时间序列数据;
基于与所述第二时间序列数据相关联的特征数据,确定所述数据采集设备在目标时间段的第二异常信息;以及
基于所述第二异常信息,确定所述数据采集设备的异常检测结果;所述异常检测结果表征了所述数据采集设备在所述目标时间段内是否存在异常风险;
其中,所述目标时刻包括所述第一时间序列数据中目标数据值对应的时刻;所述基于数据采集设备采集的第一时间序列数据,确定所述数据采集设备在目标时刻的第一异常信息包括:
采用无监督学习模型处理所述第一时间序列数据,得到所述目标时刻的第一特征;
遮掩所述第一时间序列数据中的所述目标数据值,得到遮掩后时间序列数据;
采用所述无监督学习模型处理所述遮掩后时间序列数据,得到所述目标时刻的第二特征;以及
基于所述第一特征和所述第二特征之间的第一距离值,确定所述数据采集设备在所述目标时刻的所述第一异常信息。
2.根据权利要求1所述的方法,其中,所述基于所述第一特征和所述第二特征之间的第一距离值,确定所述数据采集设备在所述目标时刻的所述第一异常信息包括:
获取参考时刻的第二距离值,其中,所述参考时刻在所述目标时刻之前;
基于所述第一距离值和所述第二距离值,得到平均距离值;以及
基于所述第一距离值和所述平均距离值之间的偏差,确定所述数据采集设备在所述目标时刻的所述第一异常信息。
3. 根据权利要求1所述的方法,其中,所述目标时刻包括所述第一时间序列数据中目标数据值对应的时刻;所述基于数据采集设备采集的第一时间序列数据,确定所述数据采集设备在目标时刻的第一异常信息包括:
处理所述第一时间序列数据,得到异常阈值;以及
基于所述目标数据值与所述异常阈值之间的关系,确定所述数据采集设备在目标时刻的所述第一异常信息。
4.根据权利要求1-3中任意一项所述的方法,其中,所述特征数据是利用第一深度学习模型从所述第二时间序列数据中提取得到的;
其中,所述基于与所述第二时间序列数据相关联的特征数据,确定所述数据采集设备在目标时间段的第二异常信息包括:
利用第二深度学习模型处理所述特征数据,得到所述数据采集设备在目标时间段的所述第二异常信息。
5.根据权利要求4所述的方法,其中,所述第一深度学习模型是通过以下方式得到的:
将第一时间序列样本数据输入待训练的第一深度学习模型中,得到第一子序列的序列特征;
将第二时间序列样本数据输入待训练的第一深度学习模型中,得到第二子序列的序列特征;
基于所述第一子序列的序列特征,得到第一损失函数值;
基于所述第一子序列的序列特征和所述第二子序列的序列特征,得到第二损失函数值;以及
基于所述第一损失函数值和所述第二损失函数值,调整所述待训练的第一深度学习模型,得到经训练的第一深度学习模型。
6.根据权利要求5所述的方法,其中,所述第一子序列包括多个第一子序列;所述基于所述第一子序列的序列特征,得到第一损失函数值包括:
基于所述多个第一子序列中任意一个第一子序列中数据值被遮掩前后所对应的序列特征、所述多个第一子序列中存在重叠的任意两个第一子序列中数据值被遮掩前后所对应的序列特征、所述多个第一子序列中不存在重叠的任意两个第一子序列所对应的序列特征,得到所述第一损失函数值。
7.根据权利要求6所述的方法,其中,所述第二子序列包括多个第二子序列;所述基于所述第一子序列的序列特征和所述第二子序列的序列特征,得到第二损失函数值包括:
基于所述多个第一子序列中任意一个第一子序列中数据值被遮掩前后所对应的序列特征、所述多个第一子序列和所述多个第二子序列中任意两个子序列中数据值被遮掩前后所对应的序列特征、所述多个第一子序列中任意一个第一子序列和所述多个第二子序列中任意一个第二子序列分别对应的序列特征,得到所述第二损失函数值。
8.根据权利要求4所述的方法,其中,所述第二深度学习模型是通过以下方式得到的:
获取由参考采集设备采集的时间序列训练样本,其中,所述时间序列训练样本具有用于表征所述参考采集设备是否存在异常的标签;
从所述时间序列训练样本中提取的样本特征数据;
利用待训练的第二深度学习模型处理所述样本特征数据,得到处理结果;以及
基于所述处理结果和所述标签,训练所述待训练的第二深度学习模型,
其中,所述标签是通过以下方式的得到的:
基于所述时间序列训练样本,确定所述参考采集设备在参考时刻的第三异常信息;
响应于确定所述第三异常信息表征所述参考采集设备在所述参考时刻存在异常,确定标签为异常;以及
响应于确定所述第三异常信息表征所述参考采集设备在所述参考时刻不存在异常,确定标签为正常。
9. 根据权利要求1-3、5-8中任意一项所述的方法,其中,所述基于所述目标时刻,获取所述数据采集设备采集的第二时间序列数据包括:
基于所述目标时刻确定时间段范围;以及
从所述数据采集设备在所述时间段范围内采集的时间序列数据中确定所述第二时间序列数据。
10.一种异常检测装置,包括:
第一确定模块,用于基于数据采集设备采集的第一时间序列数据,确定所述数据采集设备在目标时刻的第一异常信息;
第一获取模块,用于响应于确定所述第一异常信息表征所述数据采集设备在所述目标时刻存在异常,基于所述目标时刻,获取所述数据采集设备采集的第二时间序列数据;
第二确定模块,用于基于与所述第二时间序列数据相关联的特征数据,确定所述数据采集设备在目标时间段的第二异常信息;以及
第三确定模块,用于基于所述第二异常信息,确定所述数据采集设备的异常检测结果;所述异常检测结果表征了所述数据采集设备在所述目标时间段内是否存在异常风险;
其中,所述目标时刻包括所述第一时间序列数据中目标数据值对应的时刻;所述第一确定模块包括:
第一处理子模块,用于采用无监督学习模型处理所述第一时间序列数据,得到所述目标时刻的第一特征;
遮掩子模块,用于遮掩所述第一时间序列数据中的所述目标数据值,得到遮掩后时间序列数据;
第二处理子模块,用于采用所述无监督学习模型处理所述遮掩后时间序列数据,得到所述目标时刻的第二特征;以及
第一确定子模块,用于基于所述第一特征和所述第二特征之间的第一距离值,确定所述数据采集设备在所述目标时刻的所述第一异常信息。
11.根据权利要求10所述的装置,其中,所述第一确定子模块包括:
获取单元,用于获取参考时刻的第二距离值,其中,所述参考时刻在所述目标时刻之前;
获得单元,用于基于所述第一距离值和所述第二距离值,得到平均距离值;以及
确定单元,用于基于所述第一距离值和所述平均距离值之间的偏差,确定所述数据采集设备在所述目标时刻的所述第一异常信息。
12. 根据权利要求10所述的装置,其中,所述目标时刻包括所述第一时间序列数据中目标数据值对应的时刻;所述第一确定模块包括:
第三处理子模块,用于处理所述第一时间序列数据,得到异常阈值;以及
第二确定子模块,用于基于所述目标数据值与所述异常阈值之间的关系,确定所述数据采集设备在目标时刻的所述第一异常信息。
13.根据权利要求10-12中任意一项所述的装置,其中,所述特征数据是利用第一深度学习模型从所述第二时间序列数据中提取得到的;
其中,所述第二确定模块还用于:
利用第二深度学习模型处理所述特征数据,得到所述数据采集设备在目标时间段的所述第二异常信息。
14.根据权利要求13所述的装置,其中,所述第一深度学习模型是通过以下模块得到的:
第一输入模块,用于将第一时间序列样本数据输入待训练的第一深度学习模型中,得到第一子序列的序列特征;
第二输入模块,用于将第二时间序列样本数据输入待训练的第一深度学习模型中,得到第二子序列的序列特征;
第一获得模块,用于基于所述第一子序列的序列特征,得到第一损失函数值;
第二获得模块,用于基于所述第一子序列的序列特征和所述第二子序列的序列特征,得到第二损失函数值;以及
调整模块,用于基于所述第一损失函数值和所述第二损失函数值,调整所述待训练的第一深度学习模型,得到经训练的第一深度学习模型。
15.根据权利要求14所述的装置,其中,所述第一子序列包括多个第一子序列;所述第一获得模块还用于:
基于所述多个第一子序列中任意一个第一子序列中数据值被遮掩前后所对应的序列特征、所述多个第一子序列中存在重叠的任意两个第一子序列中数据值被遮掩前后所对应的序列特征、所述多个第一子序列中不存在重叠的任意两个第一子序列所对应的序列特征,得到所述第一损失函数值。
16.根据权利要求15所述的装置,其中,所述第二子序列包括多个第二子序列;所述第二获得模块还用于:
基于所述多个第一子序列中任意一个第一子序列中数据值被遮掩前后所对应的序列特征、所述多个第一子序列和所述多个第二子序列中任意两个子序列中数据值被遮掩前后所对应的序列特征、所述多个第一子序列中任意一个第一子序列和所述多个第二子序列中任意一个第二子序列分别对应的序列特征,得到所述第二损失函数值。
17.根据权利要求13所述的装置,其中,所述第二深度学习模型是通过以下模块得到的:
第二获取模块,用于获取由参考采集设备采集的时间序列训练样本,其中,所述时间序列训练样本具有用于表征所述参考采集设备是否存在异常的标签;
提取模块,用于从所述时间序列训练样本中提取的样本特征数据;
处理模块,用于利用待训练的第二深度学习模型处理所述样本特征数据,得到处理结果;以及
训练模块,用于基于所述处理结果和所述标签,训练所述待训练的第二深度学习模型,
其中,所述标签是通过以下模块的得到的:
第四确定模块,用于基于所述时间序列训练样本,确定所述参考采集设备在参考时刻的第三异常信息;
第五确定模块,用于响应于确定所述第三异常信息表征所述参考采集设备在所述参考时刻存在异常,确定标签为异常;以及
第六确定模块,用于响应于确定所述第三异常信息表征所述参考采集设备在所述参考时刻不存在异常,确定标签为正常。
18. 根据权利要求10-12、14-17中任意一项所述的装置,其中,所述第一获取模块包括:
第三确定子模块,用于基于所述目标时刻确定时间段范围;以及
第四确定子模块,用于从所述数据采集设备在所述时间段范围内采集的时间序列数据中确定所述第二时间序列数据。
19. 一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-9中任一项所述的方法。
20.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行权利要求1-9中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210571609.9A CN114881167B (zh) | 2022-05-24 | 2022-05-24 | 异常检测方法、装置、电子设备和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210571609.9A CN114881167B (zh) | 2022-05-24 | 2022-05-24 | 异常检测方法、装置、电子设备和介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114881167A CN114881167A (zh) | 2022-08-09 |
CN114881167B true CN114881167B (zh) | 2023-06-20 |
Family
ID=82677860
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210571609.9A Active CN114881167B (zh) | 2022-05-24 | 2022-05-24 | 异常检测方法、装置、电子设备和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114881167B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115098345B (zh) * | 2022-08-25 | 2022-12-23 | 广州简悦信息科技有限公司 | 数据异常检测方法、电子设备及可读存储介质 |
CN115798167B (zh) * | 2023-01-05 | 2023-04-21 | 石家庄市惠源淀粉有限公司 | 用于淀粉葡萄糖生产工艺的设备异常报警方法及装置 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114363949A (zh) * | 2022-01-21 | 2022-04-15 | 杭州北斗时空研究院 | 一种用于uwb定位系统的异常数据检测方法 |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107203806B (zh) * | 2017-05-15 | 2020-01-10 | 东软集团股份有限公司 | 数据异常检测方法、装置、可读存储介质及电子设备 |
US11475351B2 (en) * | 2017-11-15 | 2022-10-18 | Uatc, Llc | Systems and methods for object detection, tracking, and motion prediction |
CN108491861A (zh) * | 2018-02-24 | 2018-09-04 | 全球能源互联网研究院有限公司 | 基于多源多参量融合的输变电设备状态异常模式识别方法及装置 |
US20210089927A9 (en) * | 2018-06-12 | 2021-03-25 | Ciena Corporation | Unsupervised outlier detection in time-series data |
US20200097810A1 (en) * | 2018-09-25 | 2020-03-26 | Oracle International Corporation | Automated window based feature generation for time-series forecasting and anomaly detection |
US11520981B2 (en) * | 2019-03-07 | 2022-12-06 | Nec Corporation | Complex system anomaly detection based on discrete event sequences |
CN110276409A (zh) * | 2019-06-27 | 2019-09-24 | 腾讯科技(深圳)有限公司 | 一种时间序列异常检测方法、装置、服务器和存储介质 |
CN110362612B (zh) * | 2019-07-19 | 2022-02-22 | 中国工商银行股份有限公司 | 由电子设备执行的异常数据检测方法、装置和电子设备 |
CN110851338B (zh) * | 2019-09-23 | 2022-06-24 | 平安科技(深圳)有限公司 | 异常检测方法、电子设备及存储介质 |
CN111178456B (zh) * | 2020-01-15 | 2022-12-13 | 腾讯科技(深圳)有限公司 | 异常指标检测方法、装置、计算机设备和存储介质 |
CN111562996B (zh) * | 2020-04-11 | 2021-11-23 | 北京交通大学 | 一种关键性能指标数据的时序异常检测方法及系统 |
CN111625413A (zh) * | 2020-04-23 | 2020-09-04 | 平安科技(深圳)有限公司 | 指标异常分析方法、装置及存储介质 |
CN111932051A (zh) * | 2020-06-05 | 2020-11-13 | 电子科技大学 | 一种基于非侵入式电力终端时序监测的恶意行为检测方法 |
CN111915763A (zh) * | 2020-07-24 | 2020-11-10 | 东风汽车有限公司 | 一种汽车高级驾驶辅助功能异常信息采集方法及电子设备 |
US20220058174A1 (en) * | 2020-08-24 | 2022-02-24 | Microsoft Technology Licensing, Llc | System and method for removing exception periods from time series data |
CN114153888A (zh) * | 2020-09-08 | 2022-03-08 | 大连理工大学 | 一种时间序列数据的异常值检测方法和装置 |
CN113515399A (zh) * | 2021-04-26 | 2021-10-19 | 中国工商银行股份有限公司 | 数据异常检测方法及装置 |
CN113554229A (zh) * | 2021-07-23 | 2021-10-26 | 国网青海省电力公司信息通信公司 | 三相电压不平衡异常检测方法及装置 |
CN114387101A (zh) * | 2021-12-28 | 2022-04-22 | 深圳华云信息系统有限公司 | 一种数据处理方法、装置、电子设备及存储介质 |
-
2022
- 2022-05-24 CN CN202210571609.9A patent/CN114881167B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114363949A (zh) * | 2022-01-21 | 2022-04-15 | 杭州北斗时空研究院 | 一种用于uwb定位系统的异常数据检测方法 |
Also Published As
Publication number | Publication date |
---|---|
CN114881167A (zh) | 2022-08-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114881167B (zh) | 异常检测方法、装置、电子设备和介质 | |
US11204847B2 (en) | Machine learning model monitoring | |
WO2021114977A1 (zh) | 一种异常事件根因定位方法及装置 | |
JP6896069B2 (ja) | k近傍およびロジスティック回帰アプローチを用いた時系列異常検出、異常分類、ならびに遷移分析 | |
US9652354B2 (en) | Unsupervised anomaly detection for arbitrary time series | |
WO2021217855A1 (zh) | 异常根因定位方法、装置、电子设备及存储介质 | |
CN108038044B (zh) | 一种面向连续被监测对象的异常检测方法 | |
WO2021213247A1 (zh) | 一种异常检测方法及装置 | |
WO2020134032A1 (zh) | 用于检测业务系统异常的方法及其装置 | |
US10826920B1 (en) | Signal distribution score for bot detection | |
CN111931834B (zh) | 基于孤立森林算法的铝型材挤压过程流数据异常检测方法、设备及存储介质 | |
WO2023071761A1 (zh) | 一种异常定位方法及装置 | |
Folmer et al. | Detection of temporal dependencies in alarm time series of industrial plants | |
US20230075005A1 (en) | Intelligent asset anomaly prediction via feature generation | |
US11514249B2 (en) | Domain-adapted sentiment prediction for long or unbalanced text threads | |
CN115565101A (zh) | 一种生产安全异常识别方法、装置、电子设备及存储介质 | |
CN115915708A (zh) | 制冷设备控制参数预测方法、装置、电子设备及存储介质 | |
CN111800292A (zh) | 基于历史流量的预警方法、装置、计算机设备及存储介质 | |
CN117234844A (zh) | 云服务器异常管理方法、装置、计算机设备及存储介质 | |
US10489485B2 (en) | Analytic system for streaming quantile computation | |
US20230244214A1 (en) | Server and system for automatic selection of tags for modeling and anomaly detection | |
US10956835B2 (en) | Analytic system for gradient boosting tree compression | |
US20090076991A1 (en) | Method and apparatus for visualization of data availability and risk | |
CN116755974A (zh) | 云计算平台运维方法、装置、电子设备及存储介质 | |
US11874725B2 (en) | Visual alert generation in a data pipeline environment |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |