CN112711541A - 基于数据流局部离群因子的无监督软件老化检测方法 - Google Patents
基于数据流局部离群因子的无监督软件老化检测方法 Download PDFInfo
- Publication number
- CN112711541A CN112711541A CN202110076116.3A CN202110076116A CN112711541A CN 112711541 A CN112711541 A CN 112711541A CN 202110076116 A CN202110076116 A CN 202110076116A CN 112711541 A CN112711541 A CN 112711541A
- Authority
- CN
- China
- Prior art keywords
- data object
- data
- sliding window
- neighbor
- data objects
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开一种基于数据流局部离群因子的无监督软件老化检测方法,摒弃了现有算法的检测结果的非此即彼的二值属性,利用流数据的局部离群系数来表示各个时刻软件系统的老化程度,使得各个时刻软件系统的老化程度就可以通过具体的数值很直观的显示出来。同时,本发明还考虑了软件系统的外部环境因素对软件系统的老化状态检测的影响。因此,在计算流数据的局部离群系数时候,本发明把监测数据属性分为固有属性和环境属性。然后利用环境参数对被测试数据进行最近邻搜索,而采用固有属性参数来计算被测试数据的局部离群系数。相比于有监督的检测算法,本发明直接在数据集内寻找规律而不用实现标记训练数据集,其属于无监督学习的范畴。
Description
技术领域
本发明涉及软件老化检测技术领域,具体涉及一种基于数据流局部离群因子的无监督软件老化检测方法。
背景技术
老化是自然界中普遍存在且不可避免的一种现象,计算机软件作为人类思维的产物同样存在老化现象。软件老化(Software Aging)是指在开放环境之下,软件系统随着运行时间的不断增加,系统资源消耗或运行时错误的积累而出现的性能衰退、服务质量下降、甚至系统挂起宕机的现象。软件老化不是突发性的事件,通过对系统性能参数的监测和分析可以发现在发生软件老化的系统在运行过程中它们的性能参数会发生具有某种趋势的变化,从而慢慢的脱离正常的轨道。软件故障、硬件故障和人为错误操作是影响软件系统正常运行的三个主要因素,随着硬件技术的成熟和管理人员的专业化,软件故障已经成为影响软件系统稳定性的主要因素。软件老化是软件出现错误的一个不可忽略的影响因素,它可以使资源消耗殆尽、性能衰退、甚至是系统崩溃。因而,软件老化引起的系统低效或停机等问题造成的经济损失不容忽视,甚至可能对人身安全造成巨大伤害。鉴于软件老化带来的影响,如何检测、预防、抵抗软件老化带来的损失是一个亟待解决的问题。
软件老化检测是指通过监测分析反应软件系统运行状态的各种性能参数,然后对软件系统的老化速度、时间、可能性等进行动态的计算评估并以此作为判断软件再生动作的执行点。随着互联网技术的发展以及待处理的数据规模的膨胀式增长,软件系统的规模不断扩大、各组件之间的逻辑复杂性不断加强。因而软件系统的状态特性也变得多样化和复杂化。在实际应用中,软件系统由于受到各种未知因素的影响,其状态的变化规律变得更加不确定。因此,软件系统在实际应用中的状态往往是动态变化的。怎么样从这些复杂且动态变化的状态中检测出系统的老化状态成为了软件系统老化检测的重大挑战。
目前针对软件老化检测的研究可以分为基于模型和基于测量两大类。但是,这两类方法都需要事先标记用于训练的数据集,然后从训练数据集中总结规律并把这种规律运用于实际环境的老化检测。因此,目前主要的软件老化检测方法属于有监督学习范畴。对于稳态的环境,有监督学习方法往往可以取得比较理想的检测结果。但是,对于复杂多变的软件系统,其运行状态很难准确地估计出它的数学模型,或者很难知道相关参数的有用信息。在软件系统运行过程中,其状态还受到各种因素的影响。比如不同的任务类型、负载量和运行的系统环境都会使软件的运行状态呈现出很大的差异。但是,现有的方法忽略了这些外部对老化检测的影响而使得老化检测算法容易产生老化误报。因此,研究一种适用于数据流局部离群点检测的软件老化检测方法具有重要的理论意义是实用价值。
发明内容
本发明所要解决的是现有软件老化检测方法忽略了外部对老化检测的影响而容易产生老化误报的问题,提供一种基于数据流局部离群因子的无监督软件老化检测方法。
为解决上述问题,本发明是通过以下技术方案实现的:
基于数据流局部离群因子的无监督软件老化检测方法,包括步骤如下:
步骤1、持续采集软件系统在各个时刻的属性参数,其中属性参数包括固有属性和环境属性;将每个时刻的属性参数视为一个数据对象,由此得到数据对象流;
步骤2、基于滑动窗口机制对数据对象流进行处理,得到每个数据对象在滑动窗口下的条件局部离群系数;即:
步骤2.1、确定滑动窗口内的每个数据对象oi的邻域集合EN(oi);
①若滑动窗口为第1时刻的滑动窗口,则基于数据对象之间的环境距离确定每个数据对象oi的k近邻数据对象,并将数据对象oi的k近邻数据对象组成该数据对象oi的邻域集合EN(oi);
②若滑动窗口为第2时刻及其第2时刻之后的滑动窗口:则先基于数据对象之间的环境距离确定每个数据对象oi的逆k近邻数据对象,并将数据对象oi的逆k近邻数据对象组成第一逆k近邻集合;再基于数据对象之间的环境距离确定第一逆k近邻集合中每个数据对象的逆k近邻数据对象,并将第一逆k近邻集合中所有数据对象的逆k近邻数据对象组成第二逆k近邻集合;后基于数据对象之间的环境距离确定第二逆k近邻集合中每个数据对象的逆k近邻数据对象,并将第二逆k近邻集合中所有数据对象的逆k近邻数据对象组成数据对象oi的邻域集合EN(oi);
步骤2.2、计算当前滑动窗口内的每个数据对象oi与其邻域集合EN(oi)中的各个数据对象p之间的条件可达距离Crdist(oi,p):
Crdist(oi,p)=max(max(Idis1(oi,p)),Idis(oi,p)) p∈EN(oi)
步骤2.3、计算滑动窗口内的每个数据对象oi的条件局部可达密度Clrd(oi):
步骤2.4、计算滑动窗口内的每个数据对象oi的条件局部离群系数CLOF(oi):
步骤3、利用每个数据对象在其所属历史滑动窗口即第t-1,t-2,…,t-N-1时刻的滑动窗口的条件局部离群系数CLOFt-1,CLOFt-2,…,CLOFt-N-1和每个数据对象在其所属当前滑动窗口即第t时刻的条件局部离群系数CLOFt,计算该数据对象在第t时刻的上下文离群因子N(t):
步骤4、对数据对象在各个时刻的上下文离群因子进行监测,一但数据对象在某个时刻的上下文离群因子大于预设的离群阈值,则认为软件系统在这个时刻出现老化;
其中,i=1,2,…,N,N为滑动窗口长度,k为设定值,Crdist(oi,p)为数据对象oi与其邻域集合EN(oi)中的各个数据对象p之间的条件可达距离,Idis1(oi,p)为数据对象oi与其邻域集合EN(oi)中的各个数据对象p之间的固有距离,Idis(oi,p)为数据对象oi与其邻域集合EN(oi)中的各个数据对象p之间的综合距离,Clrd(oi)为数据对象oi的条件局部可达密度,Clrd(p)为数据对象p的条件局部可达密度,CLOF(oi)为数据对象oi的条件局部离群系数,N(t)为数据对象在第t时刻的上下文离群因子,λ为衰减速度控制参数,为权重系数,
上述步骤1中,所采集的属性参数包括负载率、响应时间、存在的时间和空间距离;其中负载率和响应时间为固有属性,软件系统的存在的时间和空间距离为环境属性。
上述步骤1中,需要对属性参数进行归一化处理。
与现有技术相比,本发明摒弃了现有算法的检测结果的非此即彼的二值属性,利用流数据的局部离群系数来表示各个时刻软件系统的老化程度,使得各个时刻软件系统的老化程度就可以通过具体的数值很直观的显示出来。同时,本发明还考虑了软件系统的外部环境因素对软件系统的老化状态检测的影响。因此,在计算流数据的局部离群系数时候,本发明把监测数据属性分为固有属性和环境属性。然后利用环境参数对被测试数据进行最近邻搜索,而采用固有属性参数来计算被测试数据的局部离群系数。相比于有监督的检测算法,本发明直接在数据集内寻找规律而不用实现标记训练数据集,其属于无监督学习的范畴。
附图说明
图1为等间隔对数据流数据采样图。
图2数据流信息在滑动窗口中的存储情况图。
图3连续监测数据流图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实例,对本发明进一步详细说明。
一种基于数据流局部离群因子的无监督软件老化检测方法,其具体包括步骤如下:
步骤1、持续采集软件系统在各个时刻的属性参数,其中属性参数包括固有属性和环境属性;将每个时刻的属性参数视为一个数据对象,由此得到数据对象流。
在本实施例中,所采集的属性参数包括负载率、响应时间、存在的时间和空间距离,其中选取负载率和响应时间为固有属性,选取存在的时间和空间距离为环境属性。
为了防止不同参数的数量级的不一致性影响检测结果,我们需要对软件系统的属性参数进行归一化处理。本发明采用的归一化形式是把收集的监测参数变为(0,1)之间的小数。假设原始数据为x,归一化的结果为f(x),其计算过程:
步骤2、基于滑动窗口机制对数据对象流进行处理,得到每个数据对象在滑动窗口下的条件局部离群系数。
采用滑动窗口机制对数据对象流进行处理,其中滑动窗口的长度为N。将滑动窗口放置在数据对象流的起始位置,获得数据对象流的第1时刻的滑动窗口,该第1时刻的滑动窗口内包含数据对象流的第1至N个数据对象。将滑动窗口放置向后移动一个窗格,获得数据对象流的第2时刻的滑动窗口,该第2时刻的滑动窗口内包含数据对象流的第2至N+1个数据对象。将滑动窗口放置再向后移动一个窗格,获得数据对象流的第3时刻滑动窗口,该第3时刻的滑动窗口内包含数据对象流的第3至N+2个数据对象。依次类推。得到各个时刻的滑动窗口。如图2所示。
由于每个数据对象均包括固有属性和环境属性,因此每2个数据对象之间存在以下三种距离:
2个数据对象之间的固有属性距离Idis1(o,p)等于这2个数据对象之间的所有固有属性的欧式距离,即:
2个数据对象之间的环境属性距离Idis2(o,p)等于这2个数据对象之间的所有环境属性的欧式距离,即:
2个数据对象之间的综合距离等于这2个数据对象之间的所有固有属性和环境属性的欧式距离,即:
步骤2.1、确定滑动窗口内的每个数据对象oi的邻域集合EN(oi)。
①若滑动窗口为第1时刻的滑动窗口,则基于数据对象之间的环境距离确定每个数据对象oi的k近邻数据对象,并将数据对象oi的k近邻数据对象组成该数据对象oi的邻域集合EN(oi)。
②若滑动窗口为第2时刻及其第2时刻之后的滑动窗口:则先基于数据对象之间的环境距离确定每个数据对象oi的逆k近邻数据对象,并将数据对象oi的逆k近邻数据对象组成第一逆k近邻集合;再基于数据对象之间的环境距离确定第一逆k近邻集合中每个数据对象的逆k近邻数据对象,并将第一逆k近邻集合中所有数据对象的逆k近邻数据对象组成第二逆k近邻集合;后基于数据对象之间的环境距离确定第二逆k近邻集合中每个数据对象的逆k近邻数据对象,并将第二逆k近邻集合中所有数据对象的逆k近邻数据对象组成数据对象oi的邻域集合EN(oi)。
步骤2.2、计算当前滑动窗口内的每个数据对象oi与其邻域集合EN(oi)中的各个数据对象p之间的条件可达距离Crdist(oi,p):
Crdist(oi,p)=max(max(Idis1(oi,p)),Idis(oi,p)) p∈EN(oi)
步骤2.3、计算滑动窗口内的每个数据对象oi的条件局部可达密度Clrd(oi):
步骤2.4、计算滑动窗口内的每个数据对象oi的条件局部离群系数CLOF(oi):
其中,i=1,2,…,N,N为滑动窗口长度,k为设定值,Crdist(oi,p)为数据对象oi与其邻域集合EN(oi)中的各个数据对象p之间的条件可达距离,Idis1(oi,p)为数据对象oi与其邻域集合EN(oi)中的各个数据对象p之间的固有距离,Idis(oi,p)为数据对象oi与其邻域集合EN(oi)中的各个数据对象p之间的综合距离,Clrd(oi)为数据对象oi的条件局部可达密度,Clrd(p)为数据对象p的条件局部可达密度,CLOF(oi)为数据对象oi的条件局部离群系数。
步骤3、利用每个数据对象在其所属历史滑动窗口即第t-1,t-2,…,t-N-1时刻的滑动窗口的条件局部离群系数CLOFt-1,CLOFt-2,…,CLOFt-N-1和每个数据对象在其所属当前滑动窗口即第t时刻的条件局部离群系数CLOFt,计算该数据对象在第t时刻的上下文离群因子N(t):
步骤4、对数据对象在各个时刻的上下文离群因子进行监测,一但数据对象在某个时刻的上下文离群因子大于预设的离群阈值,则认为软件系统在这个时刻出现老化。如图3所示。
需要说明的是,尽管以上本发明所述的实施例是说明性的,但这并非是对本发明的限制,因此本发明并不局限于上述具体实施方式中。在不脱离本发明原理的情况下,凡是本领域技术人员在本发明的启示下获得的其它实施方式,均视为在本发明的保护之内。
Claims (3)
1.基于数据流局部离群因子的无监督软件老化检测方法,其特征是,包括步骤如下:
步骤1、持续采集软件系统在各个时刻的属性参数,其中属性参数包括固有属性和环境属性;将每个时刻的属性参数视为一个数据对象,由此得到数据对象流;
步骤2、基于滑动窗口机制对数据对象流进行处理,得到每个数据对象在滑动窗口下的条件局部离群系数;即:
步骤2.1、确定滑动窗口内的每个数据对象oi的邻域集合EN(oi);
①若滑动窗口为第1时刻的滑动窗口,则基于数据对象之间的环境距离确定每个数据对象oi的k近邻数据对象,并将数据对象oi的k近邻数据对象组成该数据对象oi的邻域集合EN(oi);
②若滑动窗口为第2时刻及其第2时刻之后的滑动窗口:则先基于数据对象之间的环境距离确定每个数据对象oi的逆k近邻数据对象,并将数据对象oi的逆k近邻数据对象组成第一逆k近邻集合;再基于数据对象之间的环境距离确定第一逆k近邻集合中每个数据对象的逆k近邻数据对象,并将第一逆k近邻集合中所有数据对象的逆k近邻数据对象组成第二逆k近邻集合;后基于数据对象之间的环境距离确定第二逆k近邻集合中每个数据对象的逆k近邻数据对象,并将第二逆k近邻集合中所有数据对象的逆k近邻数据对象组成数据对象oi的邻域集合EN(oi);
步骤2.2、计算当前滑动窗口内的每个数据对象oi与其邻域集合EN(oi)中的各个数据对象p之间的条件可达距离Crdist(oi,p):
Crdist(oi,p)=max(max(Idis1(oi,p)),Idis(oi,p)) p∈EN(oi)
步骤2.3、计算滑动窗口内的每个数据对象oi的条件局部可达密度Clrd(oi):
步骤2.4、计算滑动窗口内的每个数据对象oi的条件局部离群系数CLOF(oi):
步骤3、利用每个数据对象在其所属历史滑动窗口即第t-1,t-2,…,t-N-1时刻的滑动窗口的条件局部离群系数CLOFt-1,CLOFt-2,…,CLOFt-N-1和每个数据对象在其所属当前滑动窗口即第t时刻的条件局部离群系数CLOFt,计算该数据对象在第t时刻的上下文离群因子N(t):
步骤4、对数据对象在各个时刻的上下文离群因子进行监测,一但数据对象在某个时刻的上下文离群因子大于预设的离群阈值,则认为软件系统在这个时刻出现老化;
2.根据权利要求1所述的基于数据流局部离群因子的无监督软件老化检测方法,其特征是,步骤1中,所采集的属性参数包括负载率、响应时间、存在的时间和空间距离;其中负载率和响应时间为固有属性,软件系统的存在的时间和空间距离为环境属性。
3.根据权利要求1所述的基于数据流局部离群因子的无监督软件老化检测方法,其特征是,步骤1中,需要对属性参数进行归一化处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110076116.3A CN112711541B (zh) | 2021-01-20 | 2021-01-20 | 基于数据流局部离群因子的无监督软件老化检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110076116.3A CN112711541B (zh) | 2021-01-20 | 2021-01-20 | 基于数据流局部离群因子的无监督软件老化检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112711541A true CN112711541A (zh) | 2021-04-27 |
CN112711541B CN112711541B (zh) | 2023-07-18 |
Family
ID=75549349
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110076116.3A Active CN112711541B (zh) | 2021-01-20 | 2021-01-20 | 基于数据流局部离群因子的无监督软件老化检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112711541B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6594784B1 (en) * | 1999-11-17 | 2003-07-15 | International Business Machines Corporation | Method and system for transparent time-based selective software rejuvenation |
US20180052453A1 (en) * | 2016-08-16 | 2018-02-22 | Fts Computertechnik Gmbh | Fault-tolerant method and device for controlling an autonomous technical system through diversified trajectory planning |
CN108038044A (zh) * | 2017-12-26 | 2018-05-15 | 北京航空航天大学 | 一种面向连续被监测对象的异常检测方法 |
CN108108253A (zh) * | 2017-12-26 | 2018-06-01 | 北京航空航天大学 | 一种面向多数据流的异常状态检测方法 |
-
2021
- 2021-01-20 CN CN202110076116.3A patent/CN112711541B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6594784B1 (en) * | 1999-11-17 | 2003-07-15 | International Business Machines Corporation | Method and system for transparent time-based selective software rejuvenation |
US20180052453A1 (en) * | 2016-08-16 | 2018-02-22 | Fts Computertechnik Gmbh | Fault-tolerant method and device for controlling an autonomous technical system through diversified trajectory planning |
CN108038044A (zh) * | 2017-12-26 | 2018-05-15 | 北京航空航天大学 | 一种面向连续被监测对象的异常检测方法 |
CN108108253A (zh) * | 2017-12-26 | 2018-06-01 | 北京航空航天大学 | 一种面向多数据流的异常状态检测方法 |
Non-Patent Citations (1)
Title |
---|
段培永;崔冲;张洁珏;: "一种改进的局部离群数据检测算法", 黑龙江大学自然科学学报 * |
Also Published As
Publication number | Publication date |
---|---|
CN112711541B (zh) | 2023-07-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11087227B2 (en) | Anomaly detection in spatial and temporal memory system | |
Agrahari et al. | Concept drift detection in data stream mining: A literature review | |
Talagala et al. | Anomaly detection in streaming nonstationary temporal data | |
Yu | Adaptive hidden Markov model-based online learning framework for bearing faulty detection and performance degradation monitoring | |
Rassam et al. | Adaptive and online data anomaly detection for wireless sensor systems | |
CN108038044B (zh) | 一种面向连续被监测对象的异常检测方法 | |
US9652504B2 (en) | Supervised change detection in graph streams | |
US20220058174A1 (en) | System and method for removing exception periods from time series data | |
Yang et al. | An incipient fault diagnosis methodology using local Mahalanobis distance: Detection process based on empirical probability density estimation | |
Bouguelia et al. | An adaptive algorithm for anomaly and novelty detection in evolving data streams | |
CN110012009B (zh) | 基于决策树和自相似模型结合的物联网入侵检测方法 | |
Jiang et al. | Dual residual attention network for remaining useful life prediction of bearings | |
CN111552843A (zh) | 一种基于加权因果依赖图的故障预测方法 | |
Cacciarelli et al. | Robust online active learning | |
Li et al. | Implicit Kalman filtering method for remaining useful life prediction of rolling bearing with adaptive detection of degradation stage transition point | |
Park | Anomaly pattern detection on data streams | |
Huang et al. | Fault classification of industrial processes based on generalized zero-shot learning | |
Inacio et al. | Fault diagnosis with evolving fuzzy classifier based on clustering algorithm and drift detection | |
Li et al. | Correlation‐Based Anomaly Detection Method for Multi‐sensor System | |
US20210365771A1 (en) | Out-of-distribution (ood) detection by perturbation | |
CN112711541A (zh) | 基于数据流局部离群因子的无监督软件老化检测方法 | |
Song et al. | Real-time anomaly detection method for space imager streaming data based on HTM algorithm | |
GB2465860A (en) | A directed graph behaviour model for monitoring a computer system in which each node of the graph represents an event generated by an application | |
CN115391160A (zh) | 一种异常变更检测方法、装置、设备及存储介质 | |
WO2022259446A1 (ja) | 異常原因推定装置、異常原因推定方法、及びコンピュータ読み取り可能な記録媒体 |
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 |