CN115456107A - 一种时间序列异常检测***及方法 - Google Patents
一种时间序列异常检测***及方法 Download PDFInfo
- Publication number
- CN115456107A CN115456107A CN202211201476.2A CN202211201476A CN115456107A CN 115456107 A CN115456107 A CN 115456107A CN 202211201476 A CN202211201476 A CN 202211201476A CN 115456107 A CN115456107 A CN 115456107A
- Authority
- CN
- China
- Prior art keywords
- data set
- time sequence
- pseudo
- self
- pseudo label
- 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
- 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)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Testing And Monitoring For Control Systems (AREA)
Abstract
本申请提供一种时间序列异常检测***及方法,初始化伪标签生成单元对无标签的时序数据集中的部分数据自动标注伪标签,将携带有伪标签的部分数据确定为初始化伪标签数据集,迭代自训练单元利用伪标签数据集对迭代自训练单元进行训练,将时序数据集输入至训练后的迭代自训练单元,得到更新后的伪标签数据集,利用更新后的伪标签数据集继续对迭代自训练单元进行训练,继续将时序数据集输入至训练后的迭代自训练单元,重复得到更新后的伪标签数据集的过程,将迭代自训练单元最后一次输出结果作为时间序列异常检测结果,本申请实施例无需人工标注标签,利用自动标注的伪标签指导迭代自训练单元进行无监督学习,有效进行时间序列异常检测。
Description
技术领域
本发明涉及金融领域,特别涉及一种时间序列异常检测***及方法。
背景技术
时间序列异常检测是采用一定方法从一段给定的时间序列中将存在异常情况的时间点识别出来的过程,对于网络入侵数据、医疗数据、日志数据等领域有着重要意义,异常随时可能发展成为严重故障,因此准确及时的异常检测可以帮助企业尽早采取措施。随着近年来人工智能技术的不断发展,机器学习技术已成为时间序列异常检测中的重要手段,机器学习技术可以分为监督学习和无监督学习,监督学习较为成熟,准确度更高,但是对海量时序数据进行标注需要花费大量的时间和资源。无监督学习,虽然无需标注标签,但由于缺少标签指导训练过程,往往存在准确度不足的问题。
也就是说,如何在不需要为时序数据手工标注异常标签的情况下,充分利用时序数据,进行有效的时间序列异常检测,是急需解决的问题。
因此,现在亟需一种有效的时间序列异常检测方法。
发明内容
有鉴于此,本申请的目的在于提供一种时间序列异常检测***及方法,能够对时间序列进行异常检测。
本申请实施例提供一种时间序列异常检测***,所述***包括:初始化伪标签生成单元和迭代自训练单元;
所述初始化伪标签生成单元用于对无标签的时序数据集中的部分数据自动标注伪标签,将所述携带有伪标签的部分数据确定为初始化伪标签数据集;
所述迭代自训练单元用于获取所述初始化伪标签数据集和所述时序数据集,利用所述伪标签数据集对所述迭代自训练单元进行训练,将所述时序数据集输入至所述训练后的迭代自训练单元,得到更新后的伪标签数据集,利用所述更新后的伪标签数据集继续对所述迭代自训练单元进行训练,继续将所述时序数据集输入至所述训练后的迭代自训练单元,重复得到更新后的伪标签数据集的过程,直到所述迭代自训练单元的训练次数达到预设次数,将所述迭代自训练单元最后一次对所述时序数据集进行处理的输出结果作为时间序列异常检测结果。
本申请实施例提供一种时间序列异常检测方法,所述方法包括:
对无标签的时序数据集中的部分数据自动标注伪标签,将所述携带有伪标签的部分数据确定为初始化伪标签数据集;
获取所述初始化伪标签数据集和所述时序数据集,利用所述伪标签数据集对迭代自训练单元进行训练,将所述时序数据集输入至所述训练后的迭代自训练单元,得到更新后的伪标签数据集,利用所述更新后的伪标签数据集继续对所述迭代自训练单元进行训练,继续将所述时序数据集输入至所述训练后的迭代自训练单元,重复得到更新后的伪标签数据集的过程,直到所述迭代自训练单元的训练次数达到预设次数,将所述迭代自训练单元最后一次对所述时序数据集进行处理的输出结果作为时间序列异常检测结果。
本申请实施例提供了一种时间序列异常检测***,***包括初始化伪标签生成单元和迭代自训练单元,初始化伪标签生成单元用于对无标签的时序数据集中的部分数据自动标注伪标签,将携带有伪标签的部分数据确定为初始化伪标签数据集,迭代自训练单元用于获取初始化伪标签数据集和时序数据集,利用伪标签数据集对迭代自训练单元进行训练,将时序数据集输入至训练后的迭代自训练单元,得到更新后的伪标签数据集,利用更新后的伪标签数据集继续对迭代自训练单元进行训练,继续将时序数据集输入至训练后的迭代自训练单元,重复得到更新后的伪标签数据集的过程,直到迭代自训练单元的训练次数达到预设次数,将迭代自训练单元最后一次对时序数据集进行处理的输出结果作为时间序列异常检测结果,由此可见,本申请实施例无需人工标注标签,利用自动标注的伪标签指导迭代自训练单元进行无监督学习,提高无监督学习效果,有效进行时间序列异常检测。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1示出了本申请实施例提供的一种时间序列异常检测***的结构示意图;
图2示出了本申请实施例提供的一种初始化伪标签生成过程示意图;
图3示出了本申请实施例提供的一种自编码器的训练示意图;
图4示出了本申请实施例提供的一种伪标签生成器生成初始化伪标签数据集的示意图;
图5示出了本申请实施例提供的一种迭代自训练单元训练过程示意图;
图6示出了本申请实施例提供的一种多层感知机的示意图;
图7示出了本申请实施例提供的一种特征筛选过程示意图;
图8示出了本申请实施例提供的一种时间序列异常检测过程示意图;
图9示出了本申请实施例提供的一种时间序列异常检测***方法的流程示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在下面的描述中阐述了很多具体细节以便于充分理解本申请,但是本申请还可以采用其它不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本申请内涵的情况下做类似推广,因此本申请不受下面公开的具体实施例的限制。
时间序列异常检测是采用一定方法从一段给定的时间序列中将存在异常情况的时间点识别出来的过程,对于网络入侵数据、医疗数据、日志数据等领域有着重要意义,异常随时可能发展成为严重故障,因此准确及时的异常检测可以帮助企业尽早采取措施。随着近年来人工智能技术的不断发展,机器学习技术已成为时间序列异常检测中的重要手段,
在机器学习的过程中,“学习”可以理解为一个举一反三的过程,通过一些训练数据,使机器能够利用它们分析未知数据。机器学习技术可以分为监督学习和无监督学习,监督学习,是让机器去学习已有数据集,进而掌握输入与输出的关系,在监督学习中训练数据集既有特征又有标签,通过训练,让机器可以自己找到特征与标签之间的联系,在面对只有特征没有标签的数据时,可以判断出标签。即在标注有每个时间点是否存在异常的时间序列上,对模型进行训练,之后模型可以在无标注的时间序列上判断出异常时间点,标签需要由对具体场景有一定经验的人员对一段时间序列手工进行判断与标注,在时间序列数据规模急速增长的今天,人工成本高,耗时长,缺乏实用性。
监督学习较为成熟,准确度更高,但是对海量时序数据进行标注需要花费大量的时间和资源。无监督学习,虽然无需标注标签,但由于缺少标签指导训练过程,往往存在准确度不足的问题。
也就是说,如何在不需要为时序数据手工标注异常标签的情况下,充分利用时序数据,进行有效的时间序列异常检测,是急需解决的问题。
当前进行时间序列异常检测的方法主要集中在以下几种:
第一,基于经典的统计学方法,通过检验时间序列数据的均值漂移、方差变化、概率分布等指标来识别出那些未通过统计假设检验的时间点。
第二,基于预测的方法,通过历史数据建立预测模型来预测未来的值,并根据预测误差是否超过预设的阈值来识别异常。
第三,基于重构的深度学习方法,通过学习一个模型来试图捕获时间序列的数据分布,将高维时间序列映射成低维表示,再生成对应于输入数据的重构表示,在这个过程中,具有较高重构误差的时间序列数据点,就被视为异常。
但是上述三种方法都存在一定缺陷:
第一,基于传统统计学的方法,由于完全基于统计学原理,不存在训练模型的过程,也就不需要人工标注的问题,同时,即使没有前期的数据积累,也可以快速投入生产使用,但是相对简单固定的统计学方法并不能满足当前海量复杂的时间序列异常检测场景。
第二,基于预测的方法,将时序异常检测问题转换成时序预测问题,时序预测模型由于数据在时序上的前后关系,每个时间点的标签即为该点下一个时间点,训练数据集不存在人工标注的问题,但是很大程度依赖于对应时序预测模型的训练效果,与时间序列是否便于预测也有关系,不能在更多类型或场景情况下达到最好的检测结果。
第三,基于重构的深度学习方法,一般采用自编码器或者生成对抗神经网络,两种最为流行的无监督深度学习的重构模型。由于是无监督模型,训练过程无需标注,由于缺乏标签的引导,存在模型不精确的问题。
因此,现在亟需一种有效的时间序列异常检测方法。
基于此,本申请实施例提供了一种时间序列异常检测***,***包括初始化伪标签生成单元和迭代自训练单元,初始化伪标签生成单元用于对无标签的时序数据集中的部分数据自动标注伪标签,将携带有伪标签的部分数据确定为初始化伪标签数据集,迭代自训练单元用于获取初始化伪标签数据集和时序数据集,利用伪标签数据集对迭代自训练单元进行训练,将时序数据集输入至训练后的迭代自训练单元,得到更新后的伪标签数据集,利用更新后的伪标签数据集继续对迭代自训练单元进行训练,继续将时序数据集输入至训练后的迭代自训练单元,重复得到更新后的伪标签数据集的过程,直到迭代自训练单元的训练次数达到预设次数,将迭代自训练单元最后一次对时序数据集进行处理的输出结果作为时间序列异常检测结果,由此可见,本申请实施例无需人工标注标签,利用自动标注的伪标签指导迭代自训练单元进行无监督学习,提高无监督学习效果,有效进行时间序列异常检测。
为了更好地理解本申请的技术方案和技术效果,以下将结合附图对具体的实施例进行详细的描述。
参见图1,该图为本申请实施例提供的一种时间序列异常检测***的结构示意图。
本实施例提供的时间序列异常检测***100包括:初始化伪标签生成单元110和迭代自训练单元120。
在本申请的实施例中,初始化伪标签生成单元110可以对无标签的时序数据集中的部分数据自动标注伪标签,将携带有伪标签的部分数据确定为初始化伪标签数据集,也就是说,可以利用无监督的方式训练初始化伪标签生成单元110来生成时序数据集中初始的伪标签,形成携带有伪标签的初始化伪标签数据集,后续可以利用初始化伪标签数据集对迭代自训练单元进行训练。
在本申请的实施例中,初始化伪标签生成单元110包括自编码器、重构误差算子和伪标签生成器,参考图2所示,图2示出了一种初始化伪标签生成过程示意图。
具体的,自编码器用于根据时序数据集进行训练,将时序数据集输入经过训练后的自编码器,得到第二重构时序数据集,也就是说,将不携带标签的时序数据集输入自编码器进行无监督学习的训练,自编码器输出重构后的时序数据集,参考图3所示,图3示出了一种自编码器的训练示意图。本申请实施例的输入数据为无手工标注异常标签的时序数据集,经过编码器和解码器,输出经过重构的第二重构时序数据集。本申请实施例的目标是,在无需人工标注时间序列数据的标签的前提下,也即在无监督的场景下,结合自训练思想,为时间序列自动生成伪标签,在伪标签的指导下,提升无需人工标注的无监督学习下的时间序列异常检测效果。在监督学习中,大量数据带有标签信息,模型全程在标签信息的指导下进行训练。在半监督学习中,需要有少量带标签的数据和大量无标签的数据。而在只有大量无标签数据,没有携带标签的数据的基础上,可以首先创造出可以进行自训练的前提条件:生成少量携带标签的数据。自编码器作为典型的无监督模型,可以在当前这种无标签的情景下被训练,在重构时序数据集的过程中,学习到时序数据集中的潜在模式及规律,自编码器利用已掌握的潜在表示,重构时序数据集。时序数据集中的异常数据,由于不符合这段时间序列的潜在表示,不会被重构很好地还原出来,因此第二重构时序数据集与时序数据集有较大差异的部位,极有可能是存在异常的部位。
重构误差算子用于计算时序数据集和第二重构时序数据集之间的误差,得到时序数据集中每个数据的异常分数。重构误差算子可以选用均方误差作为误差的计算标准。自编码器输出重构的时序数据集之后,使用均方误差,计算时序数据集与重构的时序数据集之间的重构误差。一个异常样本的重构误差会比正常样本的重构误差更大,所以会更容易被识别。因此可以将重构误差算子的输出结果作为异常分数,来评估每个数据的异常程度,分数越高,越有可能是异常点。
伪标签生成器用于根据每个数据的异常分数,为时序数据集中的部分数据自动标注伪标签,将携带有伪标签的部分数据确定为初始化伪标签数据集。在进行自动标注伪标签时,由于并非人工标注,可能标注结果存在错误,因此称为标注伪标签,伪标签包括正常标签和异常标签,对部分数据标注正常标签,对部分数据标注异常标签,将标注伪标签的数据确定为初始化伪标签数据集。也就是说,可以将重构过程中的重构误差作为时序数据集中每个数据的异常分数,并根据异常分数是否超过某个预定义的阈值来为每个数据生成伪标签。对第二重构时序数据集中每个数据按照异常分数由高到低来排序,异常分数越高,代表是异常的可能性越大。将异常分数作为置信度,选取异常分数最高的前a%的样本作为异常样本集,伪标签设置为异常标签,选取异常分数最低的后b%的样本作为正常样本集,伪标签设置为正常标签,将二者混合形成初始化伪标签数据集,参考图4所示,图4示出了伪标签生成器生成初始化伪标签数据集的示意图,其中,a和b可以根据实际情况进行确定。这样,就完成了从无标签的时序数据集中,不需借助人工标注,得到部分携带有伪标签的时序数据,伪标签虽然不像人工标签那样准确,但是在后续多次迭代训练的过程中,会持续提高伪标签的准确度。
在本申请的实施例中,迭代自训练单元120可以获取初始化伪标签数据集和时序数据集,利用伪标签数据集对迭代自训练单元120进行训练,将时序数据集输入至训练后的迭代自训练单元120,得到更新后的伪标签数据集,利用更新后的伪标签数据集继续对迭代自训练单元120进行训练,继续将时序数据集输入至训练后的迭代自训练单元120,重复得到更新后的伪标签数据集的过程,直到迭代自训练单元120的训练次数达到预设次数,将迭代自训练单元120最后一次对时序数据集进行处理的输出结果作为时间序列异常检测结果,也就是说,在利用初始化伪标签生成单元110得到初始化伪标签数据集之后,可以利用初始化伪标签数据集对迭代自训练单元120进行无监督学习,通过迭代自训练单元120重复生成伪标签数据集的过程,伪标签的准确度越来越高,迭代自训练单元120的训练效果越来越好,在迭代自训练单元120的训练次数足够多时,就可以利用准确度较高的迭代自训练单元120输出最终的时间序列异常检测结果。
在本申请的实施例中,迭代自训练单元120包括自编码器、多层感知机和伪标签生成器,参考图5所示,图5示出了一种迭代自训练单元训练过程示意图。
自编码器用于根据初始化伪标签数据集进行训练,将时序数据集输入经过训练后的自编码器,得到第1次重构时序数据集,也就是说,将初始化伪标签数据集作为输入,训练自编码器,进而得到训练好的自编码器,将时序数据集作为输入,经过训练后的自编码器,得到重构的时序数据集。
多层感知机用于获取第1次重构时序数据集,得到时序数据集中每个数据的异常分数。多层感知机也称为多层神经网络,由输入层、输出层以及多个隐层组成。参考图6所示,图6示出了一种多层感知机的示意图。图6示出的是带有一个隐层的多层感知机。自编码器输出重构后的时序数据集,重构后的时序数据集包括伪标签数据集,传入多层感知机,基于伪标签数据集,对多层感知机进行监督学习,最大限度地减少在伪标签上的分类损失。将时序数据集作为输入,使用训练好的多层感知机进行处理,输出异常分数。由于多层感知机是用高置信度的数据训练而得,因此会在时序数据集上产生更好的异常分数。可以让多层感知机为下一次的迭代过程产生新的伪标签,形成新的伪标签数据集,用来训练下一个迭代周期中的多层感知机,来提升分类性能。这个过程就是自训练,这个自训练的过程将迭代数轮,直到伪标签不再发生变化,或者达到预设轮数。最后一次迭代的伪标签结果,即为异常检测结果。
伪标签生成器用于根据每个数据的异常分数,为时序数据集中的部分数据自动标注伪标签,将携带有伪标签的部分数据确定为更新后的伪标签数据集。也就是说,可以将多层感知机输出的异常分数,输入伪标签生成器,选取置信度较高的部分异常分数,为对应的部分数据自动标注异常标签,该部分标注伪标签的数据,作为新的伪标签数据集。
在经过第一轮的迭代自训练单元120的训练之后,自编码器可以根据更新后的伪标签数据集继续进行训练,将时序数据集继续输入经过训练后的自编码器,得到第2次重构时序数据集,多层感知机获取第2次重构时序数据集,得到时序数据集中每个数据的异常分数,伪标签生成器根据每个数据的异常分数,为时序数据集中的部分数据自动标注伪标签,将携带有伪标签的部分数据确定为更新后的伪标签数据集。
在经过第二轮的迭代自训练单元120的训练之后,继续进行迭代自训练单元120的第i轮自训练,i>1,判断i是否大于或等于预设次数,若否,则继续进行迭代自训练单元120的训练,若是,则将伪标签生成器最后一次对时序数据集进行自动标注的部分数据作为时间序列异常检测结果。
在本申请的实施例中,***还包括特征筛选器,参考图7和图8所示,图7示出了一种特征筛选过程示意图,图8示出了时间序列异常检测过程示意图。特征筛选器可以对原始时序数据集进行筛选,得到时序数据集,具体的,时序数据往往是高维的,特征选择器对多维度的特征进行筛选,将无关特征以及多重共线性特征进行剔除,最后得到能够用于进一步时序分析的时序数据集。参考图7所示,对于原始的时序数据,结合时序数据特点,经常带有高维度的特性,往往是多个指标的时间序列数据来刻画某一事物的发展水平。但是,高维度带来更为丰富的信息度的同时,也会带来一些模型训练上的误导。多个特征维度,会存在两类特征,需要进行预先剔除:第一类是无用特征,这类特征与其他特征的相关度非常低,使用相关度计算来筛选剔除这类特征,第二类是冗余特征,使用主成分(PCA)分析法,计算多维特征的协方差矩阵,将特征值从大到小排序,保留最大的N个特征值。
在实际应用中,原始时序数据集往往由于时序数据本身特点,容易数据存在重复或者缺失项,因此在将原始时序数据集输入特征选择器之前,首先进行数据预处理,将重复项剔除,并对缺失项进行同期均值填充。
参考图8所示,本申请实施例提供的时间序列异常检测***实现了由原始时序数据集输入,到时序异常检测结果输出的过程,整个装置运行包含三个独立的过程:1.特征筛选过程:原始时序数据集,经过特征选择器,得到时序数据集,2.初始化伪标签生成过程:由经过特征筛选后的时序数据集,经过自编码器、重构误差算子和伪标签生成器,生成初始化伪标签数据集,3.迭代自训练过程:由伪标签数据集经过自编码器、多层感知机和伪标签生成器,形成新的伪标签数据集,更新原有伪标签数据集,此过程需要循环迭代数次,最终输出时序异常检测结果。
有以上叙述可知,本申请实施例提供的时间序列异常检测***不需要对原始时序数据集进行人工标注标签,节省大量人工成本,能够在无监督学习场景下进行训练。并且,不依靠传统统计学方法,而是基于深度学习中的自编码器和多层神经网络,较之相对简单的统计学方法,能够更好地满足当前海量复杂的时间序列异常检测场景。此外,基于无监督学习下的深度学习方法,通过引入半监督学习中的自训练思想,利用伪标签指导模型训练,一定程度上解决了无监督学习中,由于缺乏标签的引导,导致的模型不精确问题。
本申请实施例提供了一种时间序列异常检测***,***包括初始化伪标签生成单元和迭代自训练单元,初始化伪标签生成单元用于对无标签的时序数据集中的部分数据自动标注伪标签,将携带有伪标签的部分数据确定为初始化伪标签数据集,迭代自训练单元用于获取初始化伪标签数据集和时序数据集,利用伪标签数据集对迭代自训练单元进行训练,将时序数据集输入至训练后的迭代自训练单元,得到更新后的伪标签数据集,利用更新后的伪标签数据集继续对迭代自训练单元进行训练,继续将时序数据集输入至训练后的迭代自训练单元,重复得到更新后的伪标签数据集的过程,直到迭代自训练单元的训练次数达到预设次数,将迭代自训练单元最后一次对时序数据集进行处理的输出结果作为时间序列异常检测结果,由此可见,本申请实施例无需人工标注标签,利用自动标注的伪标签指导迭代自训练单元进行无监督学习,提高无监督学习效果,有效进行时间序列异常检测。
基于以上实施例提供的一种时间序列异常检测***,本申请实施例还提供了一种时间序列异常检测方法,下面结合附图来详细说明其工作原理。
参见图9,该图为本申请实施例提供的一种时间序列异常检测方法的流程示意图。
本实施例提供的时间序列异常检测方法包括以下步骤:
S101,对无标签的时序数据集中的部分数据自动标注伪标签,将所述携带有伪标签的部分数据确定为初始化伪标签数据集。
S102,获取所述初始化伪标签数据集和所述时序数据集,利用所述伪标签数据集对迭代自训练单元进行训练,将所述时序数据集输入至所述训练后的迭代自训练单元,得到更新后的伪标签数据集,利用所述更新后的伪标签数据集继续对所述迭代自训练单元进行训练,继续将所述时序数据集输入至所述训练后的迭代自训练单元,重复得到更新后的伪标签数据集的过程,直到所述迭代自训练单元的训练次数达到预设次数,将所述迭代自训练单元最后一次对所述时序数据集进行处理的输出结果作为时间序列异常检测结果。
可选地,所述获取所述初始化伪标签数据集和所述时序数据集,利用所述伪标签数据集对迭代自训练单元进行训练,将所述时序数据集输入至所述训练后的迭代自训练单元,得到更新后的伪标签数据集包括:
根据所述初始化伪标签数据集进行训练,将所述时序数据集输入所述经过训练后的自编码器,得到第1次重构时序数据集;
获取所述第1次重构时序数据集,得到所述时序数据集中每个数据的异常分数;
根据所述每个数据的异常分数,为所述时序数据集中的部分数据自动标注伪标签,将所述携带有伪标签的部分数据确定为更新后的伪标签数据集。
可选地,所述利用所述更新后的伪标签数据集继续对所述迭代自训练单元进行训练,继续将所述时序数据集输入至所述训练后的迭代自训练单元,重复得到更新后的伪标签数据集的过程,直到所述迭代自训练单元的训练次数达到预设次数,将所述迭代自训练单元最后一次对所述时序数据集进行处理的输出结果作为时间序列异常检测结果包括:
根据所述更新后的伪标签数据集继续进行训练,将所述时序数据集输入所述经过训练后的自编码器,得到第i次重构时序数据集,i>1;
获取所述第i次重构时序数据集,得到所述时序数据集中每个数据的异常分数;
根据所述每个数据的异常分数,为所述时序数据集中的部分数据自动标注伪标签,将所述携带有伪标签的部分数据确定为更新后的伪标签数据集;
判断所述i是否大于或等于预设次数,若是,则将最后一次对所述时序数据集进行自动标注的部分数据作为时间序列异常检测结果。
可选地,所述对无标签的时序数据集中的部分数据自动标注伪标签,将所述携带有伪标签的部分数据确定为初始化伪标签数据集包括:
根据所述时序数据集进行训练,将所述时序数据集输入所述经过训练后的自编码器,得到第二重构时序数据集;
计算所述时序数据集和所述第二重构时序数据集之间的误差,得到所述时序数据集中每个数据的异常分数;
根据所述每个数据的异常分数,为所述时序数据集中的部分数据自动标注伪标签,将所述携带有伪标签的部分数据确定为初始化伪标签数据集。
可选地,所述方法还包括:
对原始时序数据集进行筛选,得到所述时序数据集。
基于以上实施例提供的一种时间序列异常检测方法,本申请实施例还提供了一种时间序列异常检测设备,时间序列异常检测设备包括:
处理器和存储器,处理器的数量可以一个或多个。在本申请的一些实施例中,处理器和存储器可通过总线或其它方式连接。
存储器可以包括只读存储器和随机存取存储器,并向处理器提供指令和数据。存储器的一部分还可以包括NVRAM。存储器存储有操作***和操作指令、可执行模块或者数据结构,或者它们的子集,或者它们的扩展集,其中,操作指令可包括各种操作指令,用于实现各种操作。操作***可包括各种***程序,用于实现各种基础业务以及处理基于硬件的任务。
处理器控制终端设备的操作,处理器还可以称为CPU。
上述本申请实施例揭示的方法可以应用于处理器中,或者由处理器实现。处理器可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器、DSP、ASIC、FPGA或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
本申请实施例还提供一种计算机可读存储介质,用于存储程序代码,该程序代码用于执行前述各个实施例的方法中的任意一种实施方式。
在本申请的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行***、装置或设备使用或与指令执行***、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体***、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
需要说明的是,本申请上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
当介绍本申请的各种实施例的元件时,冠词“一”、“一个”、“这个”和“所述”都意图表示有一个或多个元件。词语“包括”、“包含”和“具有”都是包括性的并意味着除了列出的元件之外,还可以有其它元件。
需要说明的是,本领域普通技术人员可以理解实现上述方法实施例中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法实施例的流程。其中,所述存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(RandomAccess Memory,RAM)等。
可以以一种或多种程序设计语言或其组合来编写用于执行本申请的操作的计算机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元及模块可以是或者也可以不是物理上分开的。另外,还可以根据实际的需要选择其中的部分或者全部单元和模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅是本申请的优选实施方式,虽然本申请已以较佳实施例披露如上,然而并非用以限定本申请。任何熟悉本领域的技术人员,在不脱离本申请技术方案范围情况下,都可利用上述揭示的方法和技术内容对本申请技术方案做出许多可能的变动和修饰,或修改为等同变化的等效实施例。因此,凡是未脱离本申请技术方案的内容,依据本申请的技术实质对以上实施例所做的任何的简单修改、等同变化及修饰,均仍属于本申请技术方案保护的范围内。
Claims (10)
1.一种时间序列异常检测***,其特征在于,所述***包括:初始化伪标签生成单元和迭代自训练单元;
所述初始化伪标签生成单元用于对无标签的时序数据集中的部分数据自动标注伪标签,将所述携带有伪标签的部分数据确定为初始化伪标签数据集;
所述迭代自训练单元用于获取所述初始化伪标签数据集和所述时序数据集,利用所述伪标签数据集对所述迭代自训练单元进行训练,将所述时序数据集输入至所述训练后的迭代自训练单元,得到更新后的伪标签数据集,利用所述更新后的伪标签数据集继续对所述迭代自训练单元进行训练,继续将所述时序数据集输入至所述训练后的迭代自训练单元,重复得到更新后的伪标签数据集的过程,直到所述迭代自训练单元的训练次数达到预设次数,将所述迭代自训练单元最后一次对所述时序数据集进行处理的输出结果作为时间序列异常检测结果。
2.根据权利要求1所述的***,其特征在于,所述迭代自训练单元包括自编码器、多层感知机和伪标签生成器;
所述自编码器用于根据所述初始化伪标签数据集进行训练,将所述时序数据集输入所述经过训练后的自编码器,得到第1次重构时序数据集;
所述多层感知机用于获取所述第1次重构时序数据集,得到所述时序数据集中每个数据的异常分数;
所述伪标签生成器用于根据所述每个数据的异常分数,为所述时序数据集中的部分数据自动标注伪标签,将所述携带有伪标签的部分数据确定为更新后的伪标签数据集。
3.根据权利要求2所述的***,其特征在于,所述自编码器用于根据所述更新后的伪标签数据集继续进行训练,将所述时序数据集输入所述经过训练后的自编码器,得到第i次重构时序数据集,i>1;
所述多层感知机用于获取所述第i次重构时序数据集,得到所述时序数据集中每个数据的异常分数;
所述伪标签生成器用于根据所述每个数据的异常分数,为所述时序数据集中的部分数据自动标注伪标签,将所述携带有伪标签的部分数据确定为更新后的伪标签数据集;
判断所述i是否大于或等于预设次数,若是,则将所述伪标签生成器最后一次对所述时序数据集进行自动标注的部分数据作为时间序列异常检测结果。
4.根据权利要求1-3任意一项所述的***,其特征在于,所述初始化伪标签生成单元包括自编码器、重构误差算子和伪标签生成器;
所述自编码器用于根据所述时序数据集进行训练,将所述时序数据集输入所述经过训练后的自编码器,得到第二重构时序数据集;
所述重构误差算子用于计算所述时序数据集和所述第二重构时序数据集之间的误差,得到所述时序数据集中每个数据的异常分数;
所述伪标签生成器用于根据所述每个数据的异常分数,为所述时序数据集中的部分数据自动标注伪标签,将所述携带有伪标签的部分数据确定为初始化伪标签数据集。
5.根据权利要求1-3任意一项所述的***,其特征在于,所述***还包括特征筛选器;
所述特征筛选器用于对原始时序数据集进行筛选,得到所述时序数据集。
6.一种时间序列异常检测方法,其特征在于,所述方法包括:
对无标签的时序数据集中的部分数据自动标注伪标签,将所述携带有伪标签的部分数据确定为初始化伪标签数据集;
获取所述初始化伪标签数据集和所述时序数据集,利用所述伪标签数据集对迭代自训练单元进行训练,将所述时序数据集输入至所述训练后的迭代自训练单元,得到更新后的伪标签数据集,利用所述更新后的伪标签数据集继续对所述迭代自训练单元进行训练,继续将所述时序数据集输入至所述训练后的迭代自训练单元,重复得到更新后的伪标签数据集的过程,直到所述迭代自训练单元的训练次数达到预设次数,将所述迭代自训练单元最后一次对所述时序数据集进行处理的输出结果作为时间序列异常检测结果。
7.根据权利要求6所述的方法,其特征在于,所述获取所述初始化伪标签数据集和所述时序数据集,利用所述伪标签数据集对迭代自训练单元进行训练,将所述时序数据集输入至所述训练后的迭代自训练单元,得到更新后的伪标签数据集包括:
根据所述初始化伪标签数据集进行训练,将所述时序数据集输入所述经过训练后的自编码器,得到第1次重构时序数据集;
获取所述第1次重构时序数据集,得到所述时序数据集中每个数据的异常分数;
根据所述每个数据的异常分数,为所述时序数据集中的部分数据自动标注伪标签,将所述携带有伪标签的部分数据确定为更新后的伪标签数据集。
8.根据权利要求7所述的方法,其特征在于,所述利用所述更新后的伪标签数据集继续对所述迭代自训练单元进行训练,继续将所述时序数据集输入至所述训练后的迭代自训练单元,重复得到更新后的伪标签数据集的过程,直到所述迭代自训练单元的训练次数达到预设次数,将所述迭代自训练单元最后一次对所述时序数据集进行处理的输出结果作为时间序列异常检测结果包括:
根据所述更新后的伪标签数据集继续进行训练,将所述时序数据集输入所述经过训练后的自编码器,得到第i次重构时序数据集,i>1;
获取所述第i次重构时序数据集,得到所述时序数据集中每个数据的异常分数;
根据所述每个数据的异常分数,为所述时序数据集中的部分数据自动标注伪标签,将所述携带有伪标签的部分数据确定为更新后的伪标签数据集;
判断所述i是否大于或等于预设次数,若是,则将最后一次对所述时序数据集进行自动标注的部分数据作为时间序列异常检测结果。
9.根据权利要求6-8任意一项所述的方法,其特征在于,所述对无标签的时序数据集中的部分数据自动标注伪标签,将所述携带有伪标签的部分数据确定为初始化伪标签数据集包括:
根据所述时序数据集进行训练,将所述时序数据集输入所述经过训练后的自编码器,得到第二重构时序数据集;
计算所述时序数据集和所述第二重构时序数据集之间的误差,得到所述时序数据集中每个数据的异常分数;
根据所述每个数据的异常分数,为所述时序数据集中的部分数据自动标注伪标签,将所述携带有伪标签的部分数据确定为初始化伪标签数据集。
10.根据权利要求6-8任意一项所述的方法,其特征在于,所述方法还包括:
对原始时序数据集进行筛选,得到所述时序数据集。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211201476.2A CN115456107A (zh) | 2022-09-29 | 2022-09-29 | 一种时间序列异常检测***及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211201476.2A CN115456107A (zh) | 2022-09-29 | 2022-09-29 | 一种时间序列异常检测***及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115456107A true CN115456107A (zh) | 2022-12-09 |
Family
ID=84309587
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211201476.2A Pending CN115456107A (zh) | 2022-09-29 | 2022-09-29 | 一种时间序列异常检测***及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115456107A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116633705A (zh) * | 2023-07-26 | 2023-08-22 | 山东省计算中心(国家超级计算济南中心) | 基于复合自动编码器的工业控制***异常检测方法及*** |
CN117031421A (zh) * | 2023-08-14 | 2023-11-10 | 广州桐富科技发展有限公司 | 雷达信号模拟***的异常分析方法及*** |
CN117077802A (zh) * | 2023-06-15 | 2023-11-17 | 深圳计算科学研究院 | 一种时序性数据的排序预测方法及装置 |
-
2022
- 2022-09-29 CN CN202211201476.2A patent/CN115456107A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117077802A (zh) * | 2023-06-15 | 2023-11-17 | 深圳计算科学研究院 | 一种时序性数据的排序预测方法及装置 |
CN116633705A (zh) * | 2023-07-26 | 2023-08-22 | 山东省计算中心(国家超级计算济南中心) | 基于复合自动编码器的工业控制***异常检测方法及*** |
CN116633705B (zh) * | 2023-07-26 | 2023-10-13 | 山东省计算中心(国家超级计算济南中心) | 基于复合自动编码器的工业控制***异常检测方法及*** |
CN117031421A (zh) * | 2023-08-14 | 2023-11-10 | 广州桐富科技发展有限公司 | 雷达信号模拟***的异常分析方法及*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Dam et al. | A deep tree-based model for software defect prediction | |
CN111914873A (zh) | 一种两阶段云服务器无监督异常预测方法 | |
CN115456107A (zh) | 一种时间序列异常检测***及方法 | |
US11418029B2 (en) | Method for recognizing contingencies in a power supply network | |
CN112148955A (zh) | 一种物联网时序数据异常检测方法及*** | |
CN111427775B (zh) | 一种基于Bert模型的方法层次缺陷定位方法 | |
CN117034143B (zh) | 一种基于机器学习的分布式***故障诊断方法及装置 | |
CN114787831B (zh) | 改进分类模型的准确性 | |
Wong et al. | Using an RBF neural network to locate program bugs | |
CN116124398A (zh) | 旋转机械故障检测方法及装置、设备、存储介质 | |
CN111080168A (zh) | 一种基于胶囊网络的电力通信网络设备可靠性评估方法 | |
Afric et al. | Empirical study: How issue classification influences software defect prediction | |
CN111290953B (zh) | 分析测试日志的方法与装置 | |
CN112882898A (zh) | 基于大数据日志分析的异常检测方法、***、设备及介质 | |
CN117436569A (zh) | 基于随机森林的核电设备故障预测和智能标定方法及*** | |
CN117194163A (zh) | 一种计算机设备、故障检测***、方法及可读存储介质 | |
CN115460061B (zh) | 基于智能运维场景的健康度评价方法及装置 | |
CN114969334B (zh) | 异常日志检测方法、装置、电子设备及可读存储介质 | |
CN115964470A (zh) | 一种摩托车配件的寿命预测方法及*** | |
CN116910526A (zh) | 模型训练方法、装置、通信设备及可读存储介质 | |
CN116955059A (zh) | 根因定位方法、装置、计算设备及计算机存储介质 | |
Matcha et al. | Using Deep Learning Classifiers to Identify Candidate Classes for Unit Testing in Object-Oriented Systems. | |
CN111913872A (zh) | 一种基于缺陷预测的软件静态检查警告排序优化方法 | |
CN114969335B (zh) | 异常日志检测方法、装置、电子设备及可读存储介质 | |
Do et al. | A Hierarchical Spatial-Test Attention Network for Explainable Multiple Wafer Bin Maps Classification |
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 |