处理器系统故障的预测与诊断方法和装置与流程

文档序号:19786562发布日期:2020-01-24 13:39阅读:211来源:国知局
处理器系统故障的预测与诊断方法和装置与流程

本发明涉及多部件系统故障的预测与诊断技术领域,尤其涉及一种处理器系统故障的预测与诊断方法和装置。



背景技术:

在航天领域,会采用运行稳定性高的处理器系统进行程序控制、数据传输以及状态监控。但空间环境中的高能电子会在器件表面积累,到达一定阈值时,就会引起逻辑的翻转,导致处理器系统软件错误的发生,进而会给处理器系统的稳定运行带来隐患。因此,早期对处理器系统的健康评估尤为重要,处理器系统的健康评估包括处理器系统的故障诊断与预测两个方面,其中,故障诊断是指系统发出故障信号时,通过对当前系统故障特征的分析,实现对故障源的定位,而故障预测是指故障未发生时,利用系统当前观测节点特征来预测可能发生的故障类型。

目前,故障诊断模型有基于信号特征分析和基于数据驱动两种,其中,信号特征分析是通过信号处理后阈值判定来进行故障源定位,而数据驱动是利用历史数据进行训练产生故障源定位模型。常见的故障预测模型有基于模型和基于数据驱动两种,其中基于模型的方法要求研究对象系统的数据模型是已知的,而数据驱动是利用历史数据进行训练产生故障预测模型。因此,现有技术中,故障诊断模型和故障预测模型通常是分立的,不仅使用不便,而且维护成本高。

进一步地,就故障诊断而言,目前大部分算法只支持单节点的故障诊断,而处理器系统的故障类型和故障原因相对复杂,而且组件之间存在层次性和故障的传播性,致使其在产生故障后难以定位原因;就故障预测而言,考虑到时序的动态性,进而需要动态时序算法来进行故障的预测,但处理器系统中间时刻状态是无法获取的,进而需要一种间接方式来实现处理器系统的故障预测。

因此,如何提供一种多节点的故障诊断算法,成为本领域技术人员亟待解决的问题。

需要说明的是,公开于该发明背景技术部分的信息仅仅旨在加深对本发明一般背景技术的理解,而不应当被视为承认或以任何形式暗示该信息构成已为本领域技术人员所公知的现有技术。



技术实现要素:

本发明的第一个目的是提供一种用于预测与诊断处理器系统故障的方法,第二个目的是提供一种用于预测与诊断处理器系统故障的装置。

为实现本发明的第一个目的,本发明通过以下技术方案予以实现:一种处理器系统故障的预测与诊断方法,包括以下步骤:

s100:利用数据清洗方法,构建结构化的故障样本数据集;

s200:利用贝叶斯网络模型,建立处理器系统故障的传播关系网络;

s300:利用lstm网络,级联所述贝叶斯网络模型,对所述处理器系统的故障进行预测和诊断。

可选地,在执行步骤s100之前,还包括确定故障注入点及观测节点,注入故障并收集故障时序数据,以得到故障样本初始数据集。

可选地,步骤s100中,所述利用数据清洗方式,构建结构化的故障样本数据集包括,

按照预设的标准化规则,对所述故障样本初始数据集进行标准化;

使用标准化后的所述故障样本初始数据集,对所述处理器系统的失效行为标注,构建故障源、观测节点和失效标签组成的所述结构化的故障样本数据集。

可选地,所述预设的标准化规则包括所述故障时序数据的非数值、常值的过滤、特征值区间收缩以及观测节点异常判定。

可选地,所述观测节点异常判定包括,将所述故障时序数据与未注入故障的基准时序数据进行平均欧式距离的相似度计算,以此判断所述观测节点是否异常。

可选地,失效行为标注的系统失效类型包括没有影响、错误输出、超时以及cpu异常。

可选地,步骤s200中,所述利用贝叶斯网络模型,建立处理器系统故障的传播关系网络包括,

s210:将所述结构化的故障样本数据集分为第一训练集和第一测试集;

s220:利用所述结构化的故障样本数据集,建立初始贝叶斯网络模型;

s230:初始化条件概率表,使用所述第一训练集,训练所述初始贝叶斯网络模型,得到训练后的条件概率表;

s240:使用所述第一测试集,根据所述训练后的初始贝叶斯网络模型的预测与诊断的准确率,继续训练所述训练后的初始贝叶斯网络模型,得到所述贝叶斯网络模型。

可选地,所述训练后的贝叶斯网络模型的预测与诊断的方法包括,

利用所述训练后的贝叶斯网络模型的正向推理进行故障源到所述处理器系统的失效行为的预测,利用所述训练后的贝叶斯网络模型的反向推理进行所述处理器系统失效行为到故障源的诊断。

可选地,所述利用lstm网络,级联所述贝叶斯网络模型对所述处理器系统的故障进行预测包括,

s310:将所述结构化的故障样本数据集分为第二训练集和第二测试集;

s320:对所述第二训练集和所述第二测试集进行归一化处理,使其值域在设定阈值范围;

s330:调整时间步长,使用所述第二训练集和所述第二测试集训练所述lstm网络,直至所述lstm网络的预测精度饱和;

s340:对所述预测值进行反归一化,使得预测值回归到原始值域;

s350:对所述预测值进行所述观测节点的异常判断,然后级联所述贝叶斯网络预测所述处理器系统的故障。

为实现第二个目的,本发明还提供了一种处理器系统故障的预测与诊断装置,包括,

故障注入单元:利用数据清洗方法,用于构建结构化的故障样本数据集;

模型构建单元:利用贝叶斯网络模型,用于建立处理器系统故障的传播关系网络;

预测诊断单元:利用lstm网络,用于级联所述贝叶斯网络模型,并用于对所述处理器系统的故障进行预测和诊断。

与现有技术相比,本发明提供的一种处理器系统故障的诊断与预测方法及装置,不仅能够适用处理器系统故障的诊断,而且适用于处理器系统故障的预测,进一步地,还具有以下有益效果:

1.大规模的数据驱动使得贝叶斯网络的训练更加客观,实现了处理器系统故障源-系统失效行为的双向概率推理,即可以实现处理器系统故障的诊断也可以实现处理器系统故障的预测。

2.利用循环神经网络中的lstm网络对观测节点的时序值进行预测,并级联贝叶斯网络进行系统失效类型预测。

3.通过注入故障并收集故障时序数据获得故障样本数据集,不仅更加客观,而且无须考虑处理器系统的组件之间的层次性和故障的传播性,不再依赖处理器系统故障的人为相关经验的预测与诊断。

进一步地,由于通过注入故障并收集故障时序数据获得故障样本数据集,而且后续处理不再依赖人为相关经验的预测与诊断,本发明提出的处理器系统故障的预测与诊断方法和装置,并不仅仅适用于处理器系统故障的预测与诊断,当故障样布数据集来自一般复杂系统时,还可以进一步扩展应用到一般复杂系统,即由多个部件构成的系统,部件具有局部可观测性,部件之间的关联具有动态性和不确定性。

附图说明

图1为本发明实施例的一种处理器系统故障的预测与诊断放入方法流程图;

图2为本发明实施例的一种利用数据清洗方法,构建结构化的故障样本数据的步骤流程图;

图3为本发明实施例的一种利用贝叶斯网路模型建立处理器系统故障的传播关系网络的步骤流程图;

图4为本发明实施例的一种利用lstm网络与贝叶斯网路级联预测处理器系统失效行为的步骤流程图;

图5为本发明实施例的一种处理器系统故障的预测与诊断装置结构示意图;

其中,附图标记说明如下:

100-故障注入单元,200-模型构建单元,300-预测诊断单元。

具体实施方式

在具体介绍本发明提供的一种处理器系统故障的预测与诊断方法和装置之前,简要说明一下本发明的核心思想。经过不断深入的调查和研究,发明人发现现有技术中处理器系统故障的诊断与预测方法存在以下问题:

问题1:处理器系统故障的诊断与治疗方法使用的系统相互独立,维护和使用均不方便。

问题2:大部分诊断方法仅支持单节点的故障诊断,而处理器系统的故障类型和失效原理相对复杂,且组件之间存在层次性和故障的传播性,若要精准定位,人为相关经验依赖较大。

问题3:对于故障预测而言,没有考虑到时序的动态性。

基于此,本发明的提出了一种处理器系统故障的预测与诊断方法,利用数据驱动的方式实现处理器系统“故障源-系统失效行为”的双向概率推理、利用模型级联的方式实现处理器系统的失效类型预测。

同时,本发明还提供了一种处理器系统故障的预测与诊断装置,用于实施上述处理器系统故障的预测与诊断方法。

为使本发明的目的、优点和特征更加清楚,以下结合附图对本发明提出的一种处理器系统故障的预测与诊断方法及装置作进一步详细说明。需说明的是,附图均采用非常简化的形式且均使用非精准的比例,仅用以方便、明晰地辅助说明本发明实施例的目的。应当了解,说明书附图并不一定按比例地显示本发明的具体结构,并且在说明书附图中用于说明本发明某些原理的图示性特征也会采取略微简化的画法。本文所公开的本发明的具体设计特征包括例如具体尺寸、方向、位置和外形将部分地由具体所要应用和使用的环境来确定。

本发明的其中一个实施例,提供了一种用于处理器系统故障的诊断与预测方法,参见附图1所示,包括以下步骤:

s100:利用数据清洗方法,构建结构化的故障样本数据集;

s200:利用贝叶斯网络模型,建立处理器系统故障的传播关系网络;

s300:利用lstm网络,级联所述贝叶斯网络模型,对所述处理器系统的故障进行预测和诊断。

进一步地,在执行步骤s100之前,还包括确定故障注入点及观测节点,注入故障并收集故障时序数据,以得到故障样本初始数据集。显然地,本发明并不限制得到故障样本初始数据集的具体手段,以及故障注入点及观测节点的选择方法。在本实施例中,通过系统仿真平台对处理器系统关键组件和功能建模,然后采用自动化的故障注入与时序采集方法,得到故障样本初始数据集。在其他的实施方式中,也可以采用非自动化的故障注入与时序采集方法。较佳地,可以使用全系统仿真平台进行采集。包括但不限于simics、gem5等。其中,simics是一种完整系统模拟技术,为软件和系统开发人员、架构师、测试工程师提供为各种目的构建和使用虚拟系统或创建多个虚拟连接系统的方法;gem5是一款模块化的离散事件驱动全系统模拟器,它结合了m5(多处理器模拟器)和gems(存储层次模拟器)中最优秀的部分,是一款高度可配置、集成多种isa和多种cpu模型的体系结构模拟器。gem5已经能够支持多种商用isa,包括x86、arm、alpha、mips、power、sparc等,并且能够在x86、arm、alpha上加载linux操作系统。是一种名副其实的全系统计算机架构仿真工具。同样地,根据实际工况的需要,所述故障注入点包括但不限于cpu、存储器以及外部设备等,较佳地,所述观测节点根据所述故障注入点设定,比如,cpu中的所有可能的访问属性都可以作为观测节点,包括但不限于寄存器、中断状态及其他时间相关的属性等。

在本实施例中,参见附图2,步骤s100中,所述利用数据清洗方式,构建结构化的故障样本数据集的具体步骤如下:

s110:对所述故障样本初始数据集进行格式化。具体地,为了适用后期的lstm网络的预测,对所述故障样本初始数据集中存在的一些异常的、重复的所述故障时序数据移除,得到第一故障样本初始数据集。

接下来,按照预设的标准化规则,对所述第一故障样本初始数据进行标准化处理。其中,所述预设的标准化规则包括所述故障时序数据的非数值、常值的过滤、特征值区间收缩以及观测节点异常判定。具体如下:

s120:对格式化后的第一故障样本初始数据集进行非数值类型、常值类型的过滤。具体地,所述非数值类型包括部分所述观测节点的所述故障时序数据在后续处理中难以量化,所述常值类型包括部分所述观测节点的所述故障时序数据为常值。

s130:特征值区间收缩。考虑到所述故障时序数据的值的分布范围较大,为了适应后期lstm预测,避免因所述故障时序数据的值的分布差异过大而导致预测值呈现数量级别的差异的现象,对所述第一故障样本初始数据集进行特征值区间收缩,使得所述故障时序数据的值在预设的区间范围内。

s140:观测节点异常判定。具体地,将所述故障时序数据与未注入故障的基准时序数据进行平均欧式距离的相似度计算,以此判断所述观测节点是否异常。

s150:使用标准化后的所述故障样本初始数据集,对所述处理器系统的失效行为标注,构建故障源、观测节点和失效标签组成的所述结构化的故障样本数据集。其中,所述失效行为标注的系统失效类型包括没有影响、错误输出、超时以及cpu异常。实际应用中,所述系统失效类型的分布是不平衡的,比如,没有影响占比较大,而cpu异常占比较小。

显然地,本领域的技术人员应该能够理解,上述各步骤仅为较佳实施方式的描述,而非限制,在实际应用中,某些步骤可以略去。比如,若所述初始故障样本初始数据集中没有异常数据、无效数据及其他非预期数据,步骤s110可以省略。

进一步地,步骤s200中,所述利用贝叶斯网络模型,建立处理器系统故障的传播关系网络。其中,贝叶斯网络是概率图模型中的一种用于不确定性推理的网络,它以贝叶斯公式为基础,利用有向图来表示观测节点之间的影响关系,不仅可以较好地解释故障的传播路径,而且可以利用正向推理进行故障的预测,反向推理进行故障的诊断,进一步地,还可以处理不确定性的问题。比如,在结果发生的时候,利用贝叶斯公式可以计算出各种原因事件发生的可能性。贝叶斯网络的训练包括两部分,拓扑学习和条件概率表学习。当网络拓扑结构确定后,利用贝叶斯估计法进行参数的学习,即先初始化条件概率表,然后利用样本迭代不断对条件概率表进行更新。

在本实施例中,参见附图3所示,所述利用贝叶斯网络模型,建立处理器系统故障的传播关系网络,包括以下步骤:

s210:将所述结构化的故障样本数据集分为第一训练集和第一测试集。具体地,考虑到所述失效类型的不平衡性,为了准确评价模型的性能,需要对所述结构化的故障样本数据集进行划分,较佳地,每个所述失效类型随机选择80%作为第一训练集,剩余20%作为第一测试集。当后期网络模型训练结束后,可以分别计算在所述第一训练集和所述第一测试集上每个所述失效类型的预测准确率。较佳地,所述结构化的故障样本数据集采用随机的方式划分为第一训练集和所述第一测试集。

s220:利用所述结构化的故障样本数据集,建立初始贝叶斯网络模型。具体地,可以根据人工约束和样本学习结合的方式,即半自动化的方式定义贝叶斯网络拓扑。所述人工约束包括根据经验加入一些故障注入过程中引起异常的所述观测节点。

s230:初始化条件概率表,使用所述第一训练集,训练所述初始贝叶斯网络模型,得到训练后的条件概率表。当网络拓扑定义完毕后,进行所述初始贝叶斯网络模型的参数学习。具体地,先初始化所述条件概率表,使用所述第一训练集,通过样本学习不断迭代更新所述条件概率表。当整个所述第一训练集遍历完毕后,输出对应的训练后的条件概率表。

s240:使用所述第一测试集,根据所述训练后的初始贝叶斯网络模型的预测与诊断的准确率,继续训练所述训练后的初始贝叶斯网络模型,得到所述贝叶斯网络模型。具体地,不断重复步骤s210和s230预设次数,并记录每次所述贝叶斯网络模型训练完成后在所述第一测试集上的预测准确率,选择预测准确率较高的作为最佳的所述贝叶斯网络模型。得到最佳的所述贝叶斯网络模型之后,当最终系统状态节点发生对应的失效类型时,可以进行回溯寻找到对应故障发生的位置。具体地,训练后的贝叶斯网络模型的预测与诊断的方法包括,利用所述训练后的贝叶斯网络模型的反向推理进行所述处理器系统失效行为到故障源的诊断,利用所述训练后的贝叶斯网络模型的正向推理进行故障源到所述处理器系统的失效行为的预测。

较佳地,利用所述训练后的贝叶斯网络模型的正向推理进行故障源到所述处理器系统的失效行为的预测包括利用lstm(longshorttermmemory)网络,级联所述贝叶斯网络模型对所述处理器系统的故障进行预测。其中,所述lstm网络可以实现多观测节点的状态值预测,具有长时记忆性。

具体地,参见附图4所示,所述利用lstm网络,级联所述贝叶斯网络模型对所述处理器系统的故障进行预测包括以下步骤:

s310:将所述结构化的故障样本数据集分为第二训练集和第二测试集。在本实施例中,所述结构化的故障样本数据集采用随机的方式划分为所述第二训练集和所述第二测试集,其中,所述结构化的故障样本数据集的80%作为第二训练集,所述结构化的故障样本数据集的20%作为第二测试集。

s320:对所述第二训练集和所述第二测试集进行归一化处理,使其值域在设定阈值范围。在本实施例中,所述设定阈值范围为[0,1]区间。

s330:调整时间步长,使用所述第二训练集和所述第二测试集训练所述lstm网络,直至所述lstm网络的预测精度饱和。对于预设的采样次数,利用所述lstm网络进行故障时序预测,直至预测出所述处理器系统最终时刻的观测节点的预测值。

s340:对所述预测值进行反归一化,使得所述预测值回归到原始值域。具体地,每次所述lstm网络训练完成之后,对所述预测值进行反归一化操作,使其从所述设定阈值范围恢复到初始的值域。在本实施例中,所述设定阈值范围为[0,1]区间。

s350:对所述预测值进行所述观测节点的异常判断,然后级联所述贝叶斯网络预测所述处理器系统的故障。所述处理器系统的故障包括最终时刻的所述失效类型。

通过调整测试中的预设采样次数,实现级联模型采样次数和预测准确率的最优权衡,进而降低所述观测节点的所述故障时序数据的采样开销。

参见附图5所示,本发明的再一实施例,还提供了一种处理器系统故障的预测与诊断装置,适用于执行上述实施提供的一种处理器系统故障的预测与诊断方法,包括,

故障注入单元100:利用数据清洗方法,用于构建结构化的故障样本数据集。

模型构建单元200:利用贝叶斯网络模型,用于建立处理器系统故障的传播关系网络。

预测诊断单元300:利用lstm网络,用于级联所述贝叶斯网络模型,并用于对所述处理器系统的故障进行预测和诊断。

具体地,所述故障注入单元100为数据驱动的故障分析提供了完整的结构化的故障样本数据集。所述模型构建单元200利用所述结构化的故障样本数据集的大规模数据驱动,使得贝叶斯网络的训练更加客观,实现了“故障源-系统失效行为”的双向概率推理。预测诊断单元300利用lstm网络对观测节点的时序值进行预测,并级联所述贝叶斯网络进行系统失效类型的预测。

由此可见,本发明提供的一种处理器系统故障的预测与诊断方法和装置,解决了处理器系统的多故障源定位和动态时序预测问题。该方法以概率图模型中的贝叶斯网络理论为基础,利用大规模的数据驱动使得贝叶斯网络的训练更加客观,实现了“故障源-系统失效行为”的双向概率推理。同时,利用lstm网络对观测节点的时序值进行预测,并级联贝叶斯网络进行系统失效类型预测。

综上,上述实施例对处理器系统故障的预测与诊断方法和装置的不同构型进行了详细说明,当然,上述描述仅是对本发明较佳实施例的描述,并非对本发明范围的任何限定,本发明包括但不局限于上述实施中所列举的构型,本领域技术人员可以根据上述实施例的内容举一反三,本发明领域的普通技术人员根据上述揭示内容做的任何变更、修饰,均属于权利要求书的保护范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1