基于半监督自编码器的动态异常检测方法及装置

文档序号:33102553发布日期:2023-02-01 00:55阅读:35来源:国知局
基于半监督自编码器的动态异常检测方法及装置

1.本发明属于云计算服务异常检测技术领域,具体涉及一种基于半监督自编码器的动态异常检测方法及装置。


背景技术:

2.随着云计算的广泛应用,云服务及其用户的规模急剧增加。高可用性和可靠性的需求愈显重要。然而,意外故障经常对系统运行构成重大威胁。云计算智能化运维系统通常采用监控数据发现因故障所导致的异常,进而采取措施恢复正常运行。
3.由于深度学习技术的日益成熟,在实际生产环境中,智能化运维系统采用相关技术中基于自编码器的无监督异常检测技术告警系统异常运行状态。由于故障种类繁多、系统运行环境多变、监控数据种类不均衡等因素,造成自编码器特征表示难以拥有足够泛化性能,人工设定的异常得分阈值无法自适应等一系列问题,严重影响异常识别精度。
4.现有技术文献中,基于对比学习的自编码器异常检测方法存在以下不足:
5.①
采用自编码器算法无法有效利用线下累积数据集中的少量异常标签;
6.②
人工设定的异常得分阈值无法动态自适应在线检测环境的变化。


技术实现要素:

7.本发明旨在至少在一定程度上解决相关技术中的技术问题之一。
8.本发明的目的在于提供一种基于半监督自编码器的动态异常检测方法及装置,融合监督学习和半监督学习的优势,能够充分利用历史运行数据,全面获取各种异常数据特征,摆脱阈值设定的人工依赖,自适应系统监控数据的变化,进一步提升异常识别准确率。
9.本发明的目的至少通过如下技术方案之一。
10.一种基于半监督自编码器的动态异常检测方法,包括以下步骤:
11.s1、通过监控组件获取监控数据;
12.s2、对监控数据进行预处理;
13.s3、通过线下累积数据训练半监督自编码器,获取半监督代价函数数值最小时的网络权重,以此对在线实时检测数据进行重建,获取重建偏差;
14.s4、通过线下累积数据及其重建偏差标签训练的宽度学习网络,以此获得在线实时检测数据的重建阈值;
15.s5、根据在线实时检测数据的重建偏差和重建阈值,甄别异常监控数据。
16.进一步地,步骤s1中,所述通过监控组件获取监据,包括:
17.在线实时检测数据和线下累积数据,其中线下累积数据是由持续获取的在线实时检测数据累积而成,线下累积数据不包括当前时刻的获取的在线实时检测数据。
18.进一步地,步骤s2中,所述对监控数据进行预处理,包括:
19.根据线下累积数据对在线实时检测数据进行标准化和缺省值填补;
20.根据上下文信息对线下累积数据进行标准化、缺省值填补及标签标注。
21.进一步地,标准化包括采用z-score、最大-最小值、对数函数进行转换;缺省值填补包括采用该时刻的前一时刻和后一时刻的均值、最大值和最小值间的均值或前一时刻的值进行填充;标签标注包括采用0和1,-1和1,0和-1对正常和异常样本进行标记。
22.进一步地,步骤s3中,根据半监督代价函数,通过线下累积数据训练半监督自编码器,获取半监督代价函数数值最小时的网络权重,将在线实时检测数据代入上述网络权重进行计算,得到在线实时检测数据的重建数据,并通过计算在线实时检测数据与其重建数据间的相似度,以此作为重建偏差。
23.进一步地,半监督自编码器的训练目标包括:
24.目标1、在网络权重下使得正常监控数据与其重建数据之间的平均偏差小于第一阈值;
25.目标2、在低维隐空间,同类数据的平均距离小于第二阈值,不同类数据的平均距离大于第三阈值;
26.若目标1和目标2不能同时满足,则迭代计算次数超过设定的第四阈值时,以该网络权重为目标网络权重。
27.进一步地,所述半监督代价函数为:
[0028][0029]
其中,n为用于训练的线下积累数据总条数,为正常监控数据与其重建数据间的相似度,即重建偏差,包括但不仅限于通过以下计算方法得到:欧式距离、余弦距离、汉明距离;
[0030]
xi和x
′i分别表示第i条正常监控数据与其重建数据,为第i条和第j条监控数据在低维隐空间的欧式距离,y

ij
为第i条和第j条监控数据的标签是否相同的指示函数;m为关于欧式距离的阈值。
[0031]
进一步地,步骤s4中,通过线下累积数据及其重建误差标签训练的宽度学习网络,将在线实时检测数据代入宽度学习网络进行计算获得在线实时检测数据重建阈值,具体如下:
[0032]
重建偏差标签,其中在于保证违反线下累积数据标注标签次数少于或等于第五阈值,通过对线下累积数据的重建偏差进行偏置操作获得重建偏差标签。
[0033]
进一步地,所述重建偏差标签为:
[0034][0035]
其中,为第i条监控数据xi的重建偏差,yi=0和yi=1分别表示第i条监控数据xi为正常和异常,yi为第i条监控数据xi的标签,θi为第i条监控数据xi的重建偏差标签,α为第六阈值。
[0036]
一种基于半监督自编码器的动态异常检测装置,包括以下模块:
[0037]
监控数据获取模块,用于从监控组件获取监控数据,包括在线实时检测数据和线
下累积数据;
[0038]
监控数据预处理模块,用于对监控数据获取模块获取的监控数据进行预处理;
[0039]
半监督自编码器建模模块,用于通过线下累积数据训练半监督自编码器,获取半监督代价函数数值最小时的网络权重,以此对在线实时检测数据进行重建,得到在线实时检测数据的重建数据,获取重建偏差;
[0040]
阈值动态生成模块,用于通过线下累积数据及其重建偏差标签训练的宽度学习网络,以此获得在线实时检测数据的重建阈值;
[0041]
异常甄别模块,用于根据在线实时检测数据的重建偏差和重建阈值,甄别异常监控数据。
[0042]
相比于现有技术,本发明的优点在于:
[0043]
本发明采用半监督代价函数对少量异常数据进行建模,能够提升自编码器的泛化性能;
[0044]
本发明采用对线下累积数据进行偏置的操作,以获得重建偏差标签,能够为后续阈值动态生成提供有效的监督信息;
[0045]
本发明采用宽度学习网络动态生成阈值,能够有效自适应在线检测要求。
附图说明
[0046]
图1为本发明实施例一所提供的一种基于半监督自编码器的动态异常检测方法的流程示意图;
[0047]
图2为本发明实施例二所提供的一种基于半监督自编码器的动态异常检测装置的流程示意图;
[0048]
图3为本发明实施例三所提供的一种基于半监督自编码器的动态异常检测方法的流程示意图。
具体实施方式
[0049]
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
[0050]
本发明选择基于编码器-解码器算法进行改进,设计一种融合监督学习和无监督学习,充分利用历史运维数据,能够自适应云计算环境的动态异常检测方法。其中主要的改进有两点:引入基于深度学习的半监督代价函数和基于宽度学习的动态阈值生成方法。
[0051]
下面参考附图描述本发明实施例的基于半监督自编码器的动态异常检测方法和装置。
[0052]
实施例:
[0053]
一种基于半监督自编码器的动态异常检测方法,如图1所示,包括以下步骤:
[0054]
s1、通过监控组件获取监控数据,包括:
[0055]
在线实时检测数据和线下累积数据,其中线下累积数据是由持续获取的在线实时检测数据累积而成,线下累积数据不包括当前时刻的获取的在线实时检测数据。
[0056]
s2、对监控数据进行预处理,包括:
[0057]
根据线下累积数据对在线实时检测数据进行标准化和缺省值填补;
[0058]
根据上下文信息对线下累积数据进行标准化、缺省值填补及标签标注。
[0059]
本实施例中,标准化采用z-score进行转换;缺省值填补采用该时刻的前一时刻和后一时刻的均值进行填充;标签标注采用0和1对正常和异常样本进行标记。
[0060]
s3、根据半监督代价函数,通过线下累积数据训练半监督自编码器,获取半监督代价函数数值最小时的网络权重,将在线实时检测数据代入上述网络权重进行计算,得到在线实时检测数据的重建数据,并通过计算在线实时检测数据与其重建数据间的相似度,以此作为重建偏差。
[0061]
半监督自编码器的训练目标包括:
[0062]
目标1、在网络权重下使得正常监控数据与其重建数据之间的平均偏差小于第一阈值;
[0063]
目标2、在低维隐空间,同类数据的平均距离小于第二阈值,不同类数据的平均距离大于第三阈值;
[0064]
若目标1和目标2不能同时满足,则迭代计算次数超过设定的第四阈值时,以该网络权重为目标网络权重。
[0065]
所述半监督代价函数为:
[0066][0067]
其中,n为用于训练的线下积累数据总条数,为正常监控数据与其重建数据间的相似度,即重建偏差,包括但不仅限于通过以下计算方法得到:欧式距离、余弦距离、汉明距离;
[0068]
xi和x
′i分别表示第i条正常监控数据与其重建数据,为第i条和第j条监控数据在低维隐空间的欧式距离,y

ij
为第i条和第j条监控数据的标签是否相同的指示函数;m为关于欧式距离的阈值,本实施例中,m取值为2。
[0069]
s4、通过线下累积数据及其重建误差标签训练的宽度学习网络,将在线实时检测数据代入宽度学习网络进行计算获得在线实时检测数据重建阈值,具体如下:
[0070]
重建偏差标签,其中在于保证违反线下累积数据标注标签次数少于或等于第五阈值,通过对线下累积数据的重建偏差进行偏置操作获得重建偏差标签。
[0071]
所述重建偏差标签为:
[0072][0073]
其中,为第i条监控数据xi的重建偏差,yi=0和yi=1分别表示第i条监控数据xi为正常和异常,yi为第i条监控数据xi的标签,θi为第i条监控数据xi的重建偏差标签,α为第六阈值,本实施例中,α=5。
[0074]
s5、根据在线实时检测数据的重建偏差和重建阈值,甄别异常监控数据。
[0075]
一种基于半监督自编码器的动态异常检测装置,包括以下模块:
[0076]
监控数据获取模块,用于从监控组件获取监控数据,包括在线实时检测数据和线下累积数据;
[0077]
监控数据预处理模块,用于对监控数据获取模块获取的监控数据进行预处理;
[0078]
半监督自编码器建模模块,用于通过线下累积数据训练半监督自编码器,获取半监督代价函数数值最小时的网络权重,以此对在线实时检测数据进行重建,得到在线实时检测数据的重建数据,获取重建偏差;
[0079]
阈值动态生成模块,用于通过线下累积数据及其重建偏差标签训练的宽度学习网络,以此获得在线实时检测数据的重建阈值;
[0080]
异常甄别模块,用于根据在线实时检测数据的重建偏差和重建阈值,甄别异常监控数据。
[0081]
实施例2:
[0082]
本发明还提供一种基于半监督自编码器的动态异常检测装置,由于本发明实施例提供的基于半监督自编码器的动态异常检测装置与上述图1实施例提供的基于半监督自编码器的动态异常检测方法相对应,因此在基于半监督自编码器的动态异常检测方法的实施方式也适用于本发明实施例提供的基于半监督自编码器的动态异常检测装置,在本发明实施例中不再详细描述。
[0083]
一种基于半监督自编码器的动态异常检测装置,如图2所示,包括以下模块:
[0084]
监控数据获取模块,用于从监控组件获取监控数据,包括在线实时检测数据和线下累积数据;
[0085]
监控数据预处理模块,用于对监控数据获取模块获取的监控数据进行预处理;
[0086]
半监督自编码器建模模块,用于通过线下累积数据训练半监督自编码器,获取半监督代价函数数值最小时的网络权重,以此对在线实时检测数据进行重建,得到在线实时检测数据的重建数据,获取重建偏差;
[0087]
阈值动态生成模块,用于通过线下累积数据及其重建偏差标签训练的宽度学习网络,以此获得在线实时检测数据的重建阈值;
[0088]
异常甄别模块,用于根据在线实时检测数据的重建偏差和重建阈值,甄别异常监控数据。
[0089]
实施例3:
[0090]
本实施例中,提供一种基于半监督自编码器的动态异常检测方法的实施方式。与实施例1对比,其不同之处在于:
[0091]
步骤s2中,采用最大值和最小值间的均值对缺省值进行填充,采用最大-最小值进行标准化;
[0092]
步骤s3中,采用m=2.5的半监督代价函数获取最优网络权重;
[0093]
步骤s4中,采用第六阈值为10的重建偏差标签。
[0094]
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技
术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
[0095]
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
[0096]
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
[0097]
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
[0098]
本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
[0099]
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
[0100]
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
[0101]
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限
制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1