CN115599579A - 基于加权损失的***故障预测方法、装置、设备及介质 - Google Patents

基于加权损失的***故障预测方法、装置、设备及介质 Download PDF

Info

Publication number
CN115599579A
CN115599579A CN202211225563.1A CN202211225563A CN115599579A CN 115599579 A CN115599579 A CN 115599579A CN 202211225563 A CN202211225563 A CN 202211225563A CN 115599579 A CN115599579 A CN 115599579A
Authority
CN
China
Prior art keywords
abnormal
downtime
sequence
fault
fault prediction
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
Application number
CN202211225563.1A
Other languages
English (en)
Inventor
王雨农
夏坤
邓凌飞
马旭华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Cloud Computing Ltd
Original Assignee
Alibaba Cloud Computing Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Alibaba Cloud Computing Ltd filed Critical Alibaba Cloud Computing Ltd
Priority to CN202211225563.1A priority Critical patent/CN115599579A/zh
Publication of CN115599579A publication Critical patent/CN115599579A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0709Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0775Content or structure details of the error report, e.g. specific table structure, specific error fields
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/079Root cause analysis, i.e. error or fault diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Biomedical Technology (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请实施例提供了基于加权损失的***故障预测方法、装置、设备及介质,所述方法包括:获取故障预测模型和实时采集的实时***数据;其中,故障预测模型基于目标损失函数训练生成,所述目标损失函数基于故障预测模型的加权交叉熵损失以及置信度计算得到;根据实时采集的实时***数据生成异常序列;根据异常序列和故障预测模型,得到针对云计算***的故障预测结果。通过采用的基于加权交叉熵损失计算的损失函数,其加权交叉熵损失为基于故障宕机单元生命周期中采集的多个样本预测生成,能够降低混淆样本的权重,并可以基于此损失填补训练、测试对象不同的差异,减小混淆样本对模型的负面影响,提高模型预测的精准度。

Description

基于加权损失的***故障预测方法、装置、设备及介质
技术领域
本申请涉及云计算技术领域,特别是涉及一种基于加权损失的***故障预测方法、一种基于加权损失的***故障预测装置、相应的一种电子设备以及相应的一种计算机可读存储介质。
背景技术
云计算***能够提供云计算服务,同时将计算服务器进行集中管理、运维、升级和使用,实现提高计算资源的利用效率和降低企业的使用成本的效果,而对于云计算***所管理的服务器,收集、利用云计算***所产出的异常日志预测其服务器故障并及时对故障进行运维,能够提高云计算***的稳定性。
然而,云计算***中所包含的服务器数量众多,其所产生的异常量较大,且由于不同宕机类型的关键异常模型所出现的时间不同,采用统一的标准给数据打上的标签可能出现错误,导致训练集中出现大量混淆样本,影响模型预测的精准度。
发明内容
鉴于上述问题,提出了本申请实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种基于加权损失的***故障预测方法、一种基于加权损失的***故障预测装置、相应的一种电子设备以及相应的一种计算机可读存储介质。
本申请实施例公开了一种基于加权损失的***故障预测方法,应用于云计算***,所述方法包括:
获取故障预测模型和实时采集的实时***数据;其中,所述故障预测模型基于目标损失函数训练生成,所述目标损失函数基于所述故障预测模型的加权交叉熵损失以及置信度计算得到;
根据所述实时采集的实时***数据生成异常序列;
根据所述异常序列和所述故障预测模型,得到针对所述云计算***的故障预测结果。
可选地,所述实时采集的实时***数据包括云计算***中各个故障宕机单元针对***异常报出的异常日志;所述根据所实时采集的实时***数据生成异常序列,包括:
获取各个故障宕机单元报出所述异常日志的报出顺序,以及将所述各个故障宕机单元针对***异常报出的异常日志映射得到异常事件,其中各个异常事件在异常事件库中具有各自对应的数值标识,且各个异常事件具有相应的异常等级;
将所映射得到的异常事件所对应的数值标识和异常事件所对应的异常等级进行组合映射得到针对各个异常日志的异常数值标识;
并按照所述报出顺序的倒序顺序进行将所述针对各个异常日志的异常数值标识的异常数值标识组成异常标识序列;
对所述异常标识序列按照预设时间间隔和预设采样窗口长度进行采样,得到异常序列。
可选地,所述异常标识序列包含宕机样本和非宕机样本,其中所述宕机样本为所述云计算***发生的***宕机所对应的数值标识样本,所述非宕机样本为所述云计算***发生的除了***宕机以外的其他***异常所对应的数值标识样本;
所述对述异常标识序列按照预设时间间隔和预设采样窗口长度进行采样,得到异常序列,包括:
按照所述预设时间间隔确定在所述异常标识序列上确定若干个采样位置;
从所述若干个采样位置中获取与所述宕机样本对应的目标采样位置,并将所述目标采样位置作为采样起始位置;
保留以所述采样起始位置开始在预设采样窗口长度内的宕机样本,以及以所述采样起始位置开始按照预设比例随机保留所述异常标识序列上的非宕机样本,得到针对***宕机的异常序列。
可选地,所述根据所述异常序列和所述故障预测模型,得到针对***的故障预测结果,包括:
将所述异常序列作为输入项输入至所述故障预测模型,输出得到预测置信度;
若所述预测置信度大于预设阈值,则确定所述针对***的故障预测结果为宕机结果;
和/或,若所述预测置信度小于或者等于所述预设阈值,则确定所述针对***的预测故障结果为不宕机结果。
可选地,所述故障预测模型具有分类器模块,所述分类器模块用于指示所述故障预测模块判定所述云计算***的故障预测结果;所述故障预测模型通过如下方式生成:
获取离线数据集,所述离线数据集包括经过数据预处理得到的样本异常序列,其中,所述样本异常序列作为用于训练所述故障预测模型的输入项,所述样本异常序列基于云计算***中各个故障宕机单元针对***异常所报出的异常日志映射得到的异常事件,以及基于所映射得到的训练异常事件所对应的异常等级生成;
随机对预设矩阵进行初始化得到模型矩阵,并采用所述模型矩阵对所述样本异常序列进行编码得到编码向量;
获取初始化的权重矩阵,根据所述编码向量和所述权重矩阵得到输出序列;
获取所述分类器模块的参数,根据所述输出序列和所述分类器模块的参数,生成故障预测模型。
可选地,所述样本异常序列中包含与***异常所对应的各个数值标识样本;所述采用所述模型矩阵对作为所述样本异常序列进行编码得到编码向量,包括:
获取所述异常序列中各个***异常所对应的各个数值标识样本,并将所述异常序列中各个异常所对应的各个数值标识样本映射转换为相应的特征向量;
采用预设损失函数确定所述特征向量的损失的梯度,并反传所述特征向量的损失的梯度更新所述模型矩阵的对应位置;
采用更新后的模型矩阵对所述样本异常序列进行编码,得到针对所述样本异常序列中各个***异常所对应的各个数值标识样本的编码向量。
可选地,所述故障预测模型具有多层线性复杂度注意力模块,所述时间感知注意力模块用于指示所述故障预测模型基于加权损失进行***故障检测;所述根据所述编码向量和所述权重矩阵得到输出序列,包括:
将所述编码向量作为所述线性复杂度注意力模块的第一层的输入项,与所述权重矩阵相乘,得到第一层的输出项;
从所述线性复杂度注意力模块的第二层开始,按照前一层的输入项和前一层的输出项的和作为下一层的输入项,并与所述权重矩阵相乘得到下一层的输出项,直至按照前一层的输入项和前一层的输出项的和与权重矩阵相乘,得到顶层的输出项为止;
将顶层的输出项的特征向量组成输出序列。
可选地,所述根据所述输出序列和所述分类器模块的参数,生成故障预测模型,包括:
获取所述输出序列中位于首个位置的特征向量,将所获取的目标特征向量输入至所述分类器模块进行分类,确定用于训练所述故障预测模型的加权交叉熵损失以及置信度;
根据所述故障预测模型的加权交叉熵损失以及置信度生成目标损失函数,采用所述目标损失函数训练得到故障预测模型。
可选地,所述将所获取的目标特征向量输入至所述分类器模块进行分类,确定用于训练所述故障预测模型的加权交叉熵损失以及置信度,包括:
将所获取的目标特征向量输入至所述分类器模块进行分类,得到所述分类器模块将所述输出序列中各个特征向量所对应的各个样本分类为宕机样本的置信度;
确定所述输出序列中各个特征向量所对应的各个样本所属的故障宕机单元;
当后续的输出序列中存在相同的故障宕机单元的样本时,基于所述相同的故障宕机单元所记录的置信度计算针对该故障宕机单元出现***宕机的宕机权重,并将该相同的故障宕机单元的样本的权重增加至所述宕机权重;
采用所存在相同的故障宕机单元的样本所增加至的宕机权重和所存在相同的故障宕机单元的样本进行加权损失计算,确定加权交叉熵损失,以及更新所述相同的故障宕机单元所记录的置信度为在整个故障宕机单元下已训练样本分类为宕机样本所输出的最大置信度。
可选地,所述根据所述故障预测模型的加权交叉熵损失以及置信度生成目标损失函数,采用所述目标损失函数训练得到故障预测模型,包括:
通过所述目标损失函数反传所述加权交叉熵损失的梯度,更新所述故障预测模型的参数,生成故障预测模型。
本申请实施例还公开了一种基于加权损失的***故障预测装置,应用于云计算***,所述装置包括:
异常序列生成模块,用于获取实时采集的实时***数据,根据所述实时采集的实时***数据生成异常序列;
故障预测模型获取模块,用于获取故障预测模型;其中,所述故障预测模型基于目标损失函数训练生成,所述目标损失函数基于所述故障预测模型的加权交叉熵损失以及置信度计算得到;
故障预测模块,用于根据所述异常序列和所述故障预测模型,得到针对所述云计算***的故障预测结果。
可选地,所述实时采集的实时***数据包括云计算***中各个故障宕机单元针对***异常报出的异常日志;异常序列生成模块501可以包括如下子模块:
异常事件库构建子模块,用于获取各个故障宕机单元报出所述异常日志的报出顺序,以及将所述各个故障宕机单元针对***异常报出的异常日志映射得到异常事件,其中各个异常事件在异常事件库中具有各自对应的数值标识,且各个异常事件具有相应的异常等级;
异常数值标识映射子模块,用于将所映射得到的异常事件所对应的数值标识和异常事件所对应的异常等级进行组合映射得到针对各个异常日志的异常数值标识;
序列组成子模块,用于按照所述报出顺序的倒序顺序进行将所述针对各个异常日志的异常数值标识的组成异常标识序列;
异常序列生成子模块,用于对所述异常标识序列按照预设时间间隔和预设采样窗口长度进行采样,得到异常序列。
在本申请的一种实施例中,所述异常标识序列包含宕机样本和非宕机样本,其中所述宕机样本为所述云计算***发生的***宕机所对应的数值标识样本,所述非宕机样本为所述云计算***发生的除了***宕机以外的其他***异常所对应的数值标识样本;异常序列生成子模块可以包括如下单元:
采样点确定单元,用于按照所述预设时间间隔确定在所述异常标识序列上确定若干个采样位置;
采样起始位置确定单元,用于从所述若干个采样位置中获取与所述宕机样本对应的目标采样位置,并将所述目标采样位置作为采样起始位置;
异常序列生成单元,用于保留以所述采样起始位置开始在预设采样窗口长度内的宕机样本,以及以所述采样起始位置开始按照预设比例随机保留所述异常标识序列上的非宕机样本,得到针对***宕机的异常序列。
可选地,所述故障预测模块包括:
置信度输出子模块,用于将所述异常序列作为输入项输入至所述故障预测模型,输出得到预测置信度;
第一故障预测子模块,用于在所述预测置信度大于预设阈值时,确定所述针对***的故障预测结果为宕机结果;
第二故障预测子模块,用于在所述预测置信度小于或者等于所述预设阈值时,确定所述针对***的预测故障结果为不宕机结果。
可选地,所述故障预测模型具有分类器模块,所述分类器模块用于指示所述故障预测模块判定所述云计算***的故障预测结果;所述装置还包括:
故障预测模型生成模块,用于生成基于加权损失的故障预测模型。
可选地,所述故障预测模型生成模块包括:
离线数据集获取子模块,用于获取离线数据集,所述离线数据集包括经过数据预处理得到的样本异常序列,其中,所述样本异常序列作为用于训练所述故障预测模型的输入项,所述样本异常序列基于云计算***中各个故障宕机单元针对***异常所报出的异常日志映射得到的异常事件,以及基于所映射得到的训练异常事件所对应的异常等级生成;
编码子模块,用于随机对预设矩阵进行初始化得到模型矩阵,并采用所述模型矩阵对所述样本异常序列进行编码得到编码向量;
输出序列生成子模块,用于获取初始化的权重矩阵,根据所述编码向量和所述权重矩阵得到输出序列;
故障预测模型生成子模块,用于获取所述分类器模块的参数,根据所述输出序列和所述分类器模块的参数,生成故障预测模型。
可选地,所述样本异常序列中包含与***异常所对应的各个数值标识样本;所述编码子模块包括:
特征向量转换单元,用于获取所述异常序列中各个***异常所对应的各个数值标识样本,并将所述异常序列中各个***异常所对应的各个数值标识样本映射转换为相应的特征向量;
矩阵更新单元,用于采用预设损失函数确定所述特征向量的损失的梯度,并反传所述特征向量的损失的梯度更新所述模型矩阵的对应位置;
编码向量输出单元,用于采用更新后的模型矩阵对所述样本异常序列进行编码,得到针对所述样本异常序列中各个***异常所对应的各个数值标识样本的编码向量。
可选地,所述故障预测模型具有多层线性复杂度注意力模块,所述时间感知注意力模块用于指示所述故障预测模型基于加权损失进行***故障检测;所述输出序列生成子模块包括:
输出项生成单元,用于将所述编码向量作为所述线性复杂度注意力模块的第一层的输入项,与所述权重矩阵相乘,得到第一层的输出项;
迭代计算单元,用于从所述线性复杂度注意力模块的第二层开始,按照前一层的输入项和前一层的输出项的和作为下一层的输入项,并与所述权重矩阵相乘得到下一层的输出项,直至按照前一层的输入项和前一层的输出项的和与权重矩阵相乘,得到顶层的输出项为止;
输出序列组成单元,用于将顶层的输出项的特征向量组成输出序列。
可选地,所述故障预测模型生成子模块包括:
加权交叉熵损失确定单元,用于获取所述输出序列中位于首个位置的特征向量,将所获取的目标特征向量输入至所述分类器模块进行分类,确定用于训练所述故障预测模型的加权交叉熵损失以及置信度;
故障预测模型生成单元,用于根据所述故障预测模型的加权交叉熵损失以及置信度生成目标损失函数,采用所述目标损失函数训练得到故障预测模型。
可选地,所述加权交叉熵损失确定单元包括:
置信度确定子单元,用于将所获取的目标特征向量输入至所述分类器模块进行分类,得到所述分类器模块将所述输出序列中各个特征向量所对应的各个样本分类为宕机样本的置信度;
故障宕机单元确定子单元,用于确定所述输出序列中各个特征向量所对应的各个样本所属的故障宕机单元;
权重设置子单元,用于当后续的输出序列中存在相同的故障宕机单元的样本时,基于所述相同的故障宕机单元所记录的置信度计算针对该故障宕机单元出现***宕机的宕机权重,并将该相同的故障宕机单元的样本的权重增加至所述宕机权重;
置信度更新子单元,用于采用所存在相同的故障宕机单元的样本所增加至的宕机权重和所存在相同的故障宕机单元的样本进行加权损失计算,确定加权交叉熵损失,以及更新所述相同的故障宕机单元所记录的置信度为在整个故障宕机单元下已训练样本分类为宕机样本所输出的最大置信度。
可选地,所述故障预测模型生成单元包括:
故障预测模型生成子单元,用于通过所述目标损失函数反传所述加权交叉熵损失的梯度,更新所述故障预测模型的参数,生成故障预测模型。
本申请实施例还公开了一种电子设备,包括:处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现任一项所述基于加权损失的***故障预测方法。
本申请实施例还公开了一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现任一项所述基于加权损失的***故障预测方法。
本申请实施例包括以下优点:
在本申请实施例中,在对实时采集的实时***数据进行故障预测时,可以将实时采集的实时***数据生成异常序列,然后采用所获取的故障预测模型对异常序列进行故障预测,得到故障预测结果,其中所采用的故障预测模型可基于目标损失函数训练生成,而目标损失函数训练可以基于故障预测模型的加权交叉熵损失以及置信度计算得到,其所采用的基于加权交叉熵损失计算的损失函数,其加权交叉熵损失为基于故障宕机单元生命周期中采集的多个样本预测生成,能够降低混淆样本的权重,并可以基于此损失填补训练、测试对象不同的差异,减小混淆样本对模型的负面影响,提高模型预测的精准度。
附图说明
图1是本申请的一种基于加权损失的***故障预测方法实施例的步骤流程图;
图2是本申请的另一种基于加权损失的***故障预测方法实施例的步骤流程图;
图3是本申请实施例提供的故障预测模型的训练框架示意图;
图4是本申请实施例提供的基于加权损失的***故障预测的应用场景示意图;
图5是本申请的一种基于加权损失的***故障预测装置实施例的结构框图。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。
为便于本领域技术人员理解本申请,下面对本申请下述各实施例中涉及的术语或名词做出解释:
Attention:注意力机制,其可用于对重点关注的目标区域投入更多的注意力资源,以获得更多所需关注的目标的细节信息,并抑制其它无用信息,在本申请实施例中通常可将注意力机制作为接口,提供挖掘序列中元素间相关性信息。
Transformer:基于Attention的机器学习模型,常用于自然语言处理和图像处理任务。
BERT:Bidirectional Encoder Representations from Transformers,双向编码Transformer模型,常用于自然语言处理和图像处理任务。
XgBoost:Extreme Gradient Boosting,一种常用的集成学习算法。
NCLAT:NC loss and Linear Attention based Transformer,本申请实施例提出的基于NC加权损失和线性计算复杂度的注意力机制的Transformer算法。
NC:Node Controller,指的是云计算***中用于统计故障宕机的单个单元。
GELU:Gaussian Error Linear Unit,指的是BERT模型中使用的激活函数,此激活函数引入了随机正则的思想。
ECS:Elastic Compute Service,云服务器。
LogBERT模型:在本申请实施例中表现为在BERT模型基础上,基于统计特征的机器学习故障预测的模型。
XgBoost模型:在本申请实施例中表现为采用常用的集成学习算法,实现基于统计特征的机器学习故障预测的模型。
FFN:Feed Forward Network,前向传播网络。
NC宕机故障是影响云计算***稳定性的重要因素之一,不可预料的突然宕机将会给用户造成严重损失,利用已有宕机NC的异常日志记录信息,学习宕机NC的异常产出模式,从而可以根据监控侧异常日志记录推断当前的NC是否会在接下来的一段时间内发生宕机,即通常可通过模型学习已有故障NC的***日志的报出模式实现对服务器宕机的***,并基于预测结果决定是否提前对宕机故障进行运维以实现用户对宕机的无感化,从而优化用户的体验。
然而,现有的宕机预测算法在输入较长的序列时具有极高的运算代价,不能满足线上实时预测的需求,且由于云计算***中所包含的服务器数量众多,其所产生的异常量较大,其中不同宕机类型的关键异常模型所出现的时间不同,采用统一的标准给数据打上的标签可能出现错误,导致训练集中出现大量混淆样本,示例性地,由于标签通常是根据距离NC宕机时间的远近进行操作的,但并不是所有的NC宕机都具有相同的时间模式,此时部分正样本的标签可能是错误的,即标为宕机的正样本实际上可能与宕机无关,从而导致模型出现误判,影响模型预测的精准度。
在相关的宕机预测算法中,可以表现为通过LogBERT模型和/或XgBoost模型利用已有宕机NC的异常日志记录信息,学习宕机NC的异常产出模式,并根据监控侧异常日志记录推断当前的NC是否会在接下来的一段时间内发生宕机。
具体地,LogBERT模型使用自然语言处理的方式对日志文本进行处理,具体根据指定的格式解析日志文本,然后采用BERT模型作为特征提取器,并提前使用大量的日志文本数据构建辅助学习任务,用于训练BERT模型使其学习日志文本的组成逻辑,再将训练后得到的模型用于故障预测任务的学习和测试。然而,LogBERT模型存在提前使用大量日志文本构建辅助学习任务的预训练过程,预训练过程增加模型训练的耗时,且对日志文本编码的复杂过程也增加了所使用模型的复杂度,使得所使用的模型复杂度较高而导致的模型体量过大,效率较低,以及在模型进行训练的过程中并未考虑混淆样本的情况下,在处于样本混淆的场景下所训练得到的模型所预测的精准度较低。
XgBoost模型主要是利用统计特征处理故障预测问题,具体统计各台NC中一个固定时间窗口内各个异常日志发生的次数,作为NC的统计特征,再将此特征送入XgBoost分类器中进行训练,并将所训练的模型进行线上测试。然而,XgBoost模型所提取的统计特征包含的是异常发生的频次信息,并未包含发生顺序等信息,且并没有考虑异常间的相互联系,无法学***方损失作为损失函数,所训练得到的模型同样无法区分混淆样本,数据集中大量存在的混淆样本将会对模型造成负面影响,导致模型进行故障预测时的精准度不高。
由上述可知,LogBERT模型和XgBoost模型利用***的异常日志进行故障预测任务,但在进行故障学习的过程中,LogBERT模型和XgBoost模型均未考虑混淆样本的情况。
本申请实施例的核心思想之一在于采用线形Attention计算方式,以减小模型计算复杂度,还采用NC级损失函数,通过设计NC级损失填补训练、测试对象不同的差异,减小混淆样本对模型的负面影响,提高对***故障预测结果的准确性。具体使用线形复杂度Attention代替BERT中普通Attention机制,减小模型计算复杂度,提升模型效率和稳定性,在线预测中可以同时处理更多的数据;且采用NC级损失函数,由于训练中使用的是NC生命周期中采集的多个样本而最后的预测对象是NC,设计NC级损失能够填补训练、测试对象不同的差异,减小混淆样本对模型的负面影响。进一步地,对日志文本抽象化处理,构建相应的异常事件库对日志进行编码,其基于单独的异常事件库进行构建以免去BERT模型对日志文本编码的预训练的复杂过程,降低模型的计算复杂度,使得训练得到的模型体量更小,训练测试速度更快以及效率更高。
参照图1,示出了本申请的一种基于加权损失的***故障预测方法实施例的步骤流程图,应用于云计算***,侧重于故障预测模型的使用过程,具体可以包括如下步骤:
步骤101,获取故障预测模型和实时采集的实时***数据;
在本申请实施例中,可以采用线形Attention计算方式,以减小模型计算复杂度,还采用NC级损失函数,通过设计NC级损失填补训练、测试对象不同的差异,减小混淆样本对模型的负面影响,提高对***故障预测结果的准确性。
为了所采用的故障预测模型在进行故障预测的过程中,能够通过设计NC级损失填补训练、测试对象不同的差异,减小混淆样本对模型的负面影响,具体可基于加权交叉熵损失计算的损失函数实现,通过其加权交叉熵损失为基于故障宕机单元生命周期中采集的多个样本预测生成,能够降低混淆样本的权重,所获取的故障预测模型可以是基于故障预测模型的加权交叉熵损失以及置信度所计算得到的目标损失函数训练生成的模型。需要说明的是,相较于训练中普遍使用的交叉熵损失,加权交叉熵损失能够降低混淆样本的权重,大幅增加模型的精准率。
在对故障预测模型的具体使用过程中,在获取故障预测模型的加权交叉熵损失以及置信度所计算得到的目标损失函数训练生成的故障预测模型后,可以在某个时刻获得一个异常序列,在对异常事件序列得到经过异常事件与相应的异常等级映射后的整数序列,送入训练好的故障预测模型进行预测。
步骤102,根据实时采集的实时***数据生成异常序列;
在实际应用中,在某个时刻获得一个异常序列,具体可基于实时采集的实时***数据生成,而用于送入训练好的故障预测模型进行预测的整数序列可以表现为异常序列。
具体地,实时采集的实时***数据可以包括云计算***中各个故障故障宕机单元针对***异常报出的异常日志,此时通常可对针对***异常的异常日志中所包含的日志文本进行抽象化处理,基于预先构建的异常事件库对日志进行编码,得到针对日常日志的异常事件。其中,基于抽象化处理构建相应的异常事件,对所构建的异常事件进行相应的数值标识的编码操作,实现对针对各个异常事件的异常事件库的预先构建,以便后续在进行对异常日志进行的数据预处理时,能够基于单独的异常事件库的构建,即基于“***异常的异常日志—异常事件—数值标识”的编码减小模型的体量,加快训练的测试速度,以免去BERT模型对日志文本编码的预训练的复杂过程。具体表现为对所获取的用于统计故障宕机的故障宕机单元,即各台NC报出的异常日志所进行的数据预处理过程,
在本发明的一种实施例中,可以将各个故障宕机单元针对***异常报出的异常日志映射得到异常事件,然后可以从预先构建的异常事件库中获取所映射得到的异常事件各自对应的数值标识,异常事件对应的数值标识通常可表现为异常事件对应的整数,此时可以在获取各个故障宕机单元报出所述异常日志的报出顺序后,按照报出顺序的倒序顺序对所映射得到的异常事件所对应的数值标识,即对应的整数排序组成异常标识序列,以便基于对所组成的异常标识序列按照预设时间间隔和预设采样窗口长度进行采样,得到异常序列。
在实际应用中,对异常事件的映射过程,可以通过正则表达式将报出的异常日志映射得到异常事件,表现为通过检测器实时获取NC报出的异常日志,并根据专家知识和正则表达式将各种异常日志一一对应地抽象为一个短语,所抽象得到的短语,即可称为异常事件。具体地,对每一条日志,可以确定此日志和其他日志共有的关键词,比如Error、hardware等词,然后可以再根据所出现的关键词的种类将其划分为不同的异常名称,得到用于命名异常事件的短语,示例性地,将原日志文本“mce:[Hardware Error]:Machinecheck events logged”抽象为异常事件“dmesg_unrecover_mce”;同时,可以将所映射得到的异常事件划分相应的异常等级,例如划分为5等:normal、low_warning、warning、critical和fatal,那么原案例日志最后得到的异常事件为“dmesg_unrecover_mce-critical”。由于线上报出的异常日志是描述计算机状态的语句,包含很多冗余信息,而通过对日志文本的抽象可提取其中的关键信息,同时也可对线上报出的异常日志进行有选择地筛选,比如选择具有Error字段的日志进行解析。
需要说明的是,抽象得到的异常事件往往是一类异常日志的统一描述;且异常等级解析规则通常会根据不同的异常事件类型而发生变化,一般会根据其事件发生的严重程度来确定具体的等级,以进一步细分异常事件增加细化信息,有利于宕机的预测。
在映射得到异常事件之后,可以基于预先构建的异常事件库进行相应的数值标识的转化,其中,预先构建的异常事件库与自然语言处理中的语料库类似,包含各种异常事件种类,各个异常事件可以对应一个数值标识,即整数,且各个异常事件具有相应的异常等级,由于在异常事件库中的异常事件以短语形式呈现,不利于故障预测模型对其进行直接训练,而通常采用向量的形式对故障预测模型进行输入,此时可以根据异常事件库将每个异常转化为数字以用于训练,例如将异常事件“dmesg_unrecover_mce”转化为32,同理异常等级也分别映射为1~5的整数,例如将“dmesg_unrecover_mce-critical”转化为32-4。需要说明的是,为了更好地区分,可以将不同等级的相同异常看作不同的独立的异常,具体考虑到异常事件的等级有5个,假定异常事件在词典中的索引为i,其对应的等级为j,那么异常事件可以为“i-j”,具体可以映射为i*5+j。例如对异常“exception-level”构建的映射,可以将“32-4”映射为整数164。
在将异常事件库中的异常事件对应的整数和异常等级映射生成后,为了保证能够让故障预测模型先看到最近时间段发生的***异常,同时由于故障预测模型所允许输入的序列长度通常有限,此时可以在截断长序列的情况下保证优先时刻更近的异常,具体表现为将异常事件对应的整数以及此异常事件所对应的异常等级所组合得到的针对各个异常日志的异常数值标识,按照异常日志的报出顺序的倒序排序组成异常标识序列;然后可以对所组成的异常标识序列按照预设时间间隔和预设采样窗口长度进行采样,得到异常序列,并根据异常序列得到异常时间戳序列。具体地,可以表现为将每台NC报出的异常所转化的数字按倒序排列组成一个异常标识序列。
其中,云计算***所发生的***异常可以包括宕机(即常说的“当机”/“死机”),也可以包括其他故障,那么基于所报出的异常日志所生成的异常标识序列,可以包含宕机样本和非宕机样本,其中宕机样本可以指的是云计算***发生的***宕机所对应的数值标识样本,非宕机样本可以指的是云计算***发生的除了***宕机以外的其他***异常所对应的数值标识样本。
此时,可以按照预设时间间隔在所组成的异常标识序列上确定若干个采样位置,然后从若干个采样位置中获取与宕机样本对应的目标采样位置,即处于宕机时刻的目标采样位置,并将此目标采样位置作为采样起始位置,然后再保留以采样起始位置开始在预设采样窗口长度内的宕机样本,以及以采样起始位置开始按照预设比例随机保留所组成的异常标识序列上的非宕机样本,得到针对***宕机的异常序列。
示例性地,在按照倒序排列组成异常标识序列后,可以按照预设时间间隔,例如5分钟为时间间隔,以预设采样窗口长度,例如3天为采样长度,在整段序列上有重叠地进行采样,表现为假设5分钟一个采样位置点,每个采样位置包含采样时间往前3天内的***异常的情况下,由于相邻两个采样位置的时间间隔远小于预设采样窗口长度,在采样位置A所采集的序列包含在当前采样时间,例如在12:03往前3天(即72小时)的序列时,与采样位置A相邻的采样位置B的采样时间,例如在12:08往前3天的序列(即72小时)时,采样位置B所采集的在12:03-12:08这5分钟时间段内的序列是采样位置A无法采集到的,而采样位置B与采样位置A在除了这5分钟以外可能存在2天23小时55分钟的序列是重合的,保证新发生的异常和前边所存在的异常进行关联性保留,那么可以对宕机样本(正样本)保留采样起始位置在宕机时刻3天内的数据,对正常样本(负样本)在整段序列上随机保留一定比例的样本,得到形如“[start],32,91,……,256”的异常序列,对负样本的随机保留是为了保留训练样本的多样性,降采样是为了减小类别不平衡比例。其中,[start]为起始符,没有具体含义。
需要说明的是,负样本指的是没有宕机NC的生命周期上采集的样本,这种情况下的样本均为负,而正样本指的是发生宕机NC在宕机时刻开始预设采样窗口长度,例如与3天内所采集的样本,此时异常事件仅仅是***日志抽象后获取,异常的发生并不意味着宕机,而本申请实施例所训练的故障预测模型是用于预测一个样本发生样本序列中这些异常后会不会有宕机风险的模型,即宕机样本属于正样本,非宕机样本(即正常样本)属于负样本,在所组成的序列是基于所报出的异常事件所转化为数字组成的情况下,所组成的序列上同样也存在不属于宕机样本的正常样本。
步骤103,根据异常序列和故障预测模型,得到针对云计算***的故障预测结果。
在将所生成的异常序列送入训练好的故障预测模型,即将异常序列作为输入项输入至故障预测模型后,训练好的故障预测模型可以对所输入的实时***数据进行故障预测,预测***是否会发生故障,并基于预测结果决定是否提前对宕机故障进行运维以实现用户对宕机的无感化,从而优化用户的体验。
在实际应用中,NC宕机故障是影响云计算***稳定性的重要因素之一,不可预料的突然宕机将会给用户造成严重损失,为了维护云计算***的稳定性,此时可以通过故障预测模型基于所输入的实时***数据推断当前的NC是否会在接下来的一段时间内发生宕机,输出故障预测结果。
在具体实现中,可以基于所输出的预测置信度进行故障预测结果的确定,若预测置信度大于预设阈值,则确定针对***的故障预测结果为宕机结果,和/或,若预测置信度小于或者等于预设阈值,则确定针对***的预测故障结果为不宕机结果。其中,宕机结果指的是判定这台NC未来一段时间内有宕机风险,此时可以提前对宕机故障进行运维以实现用户对宕机的无感化,不宕机结果指的是这台NC未来一段时间内不存在宕机风险,此时暂时不进行任何操作。
在本申请实施例中,在对实时采集的实时***数据进行故障预测时,可以将实时采集的实时***数据生成异常序列,然后采用所获取的故障预测模型对异常序列进行故障预测,得到故障预测结果,其中所采用的故障预测模型可基于目标损失函数训练生成,而目标损失函数训练可以基于故障预测模型的加权交叉熵损失以及置信度计算得到,其所采用的基于加权交叉熵损失计算的损失函数,其加权交叉熵损失为基于故障宕机单元生命周期中采集的多个样本预测生成,能够降低混淆样本的权重,并可以基于此损失填补训练、测试对象不同的差异,减小混淆样本对模型的负面影响,提高模型预测的精准度。
参照图2,示出了本申请的另一种基于加权损失的***故障预测方法实施例的步骤流程图,应用于云计算***,侧重于故障预测模型的生成/训练过程,具体可以包括如下步骤:
步骤201,获取离线数据集,离线数据集包括经过数据预处理得到的样本异常序列;
本申请实施例提出的基于NC加权损失和线性计算复杂度的注意力机制的Transformer算法,可以采用线形Attention计算方式,以减小模型计算复杂度,还采用NC级损失函数,通过设计NC级损失填补训练、测试对象不同的差异,减小混淆样本对模型的负面影响,提高对***故障预测结果的准确性。而在实际应用中,基于NC加权损失和线性计算复杂度的注意力机制的Transformer算法的使用可基于故障预测模型的执行实现,此时可以对故障预测模型进行生成/训练,以使得所生成的故障预测模型能够具有执行基于NC加权损失和线性计算复杂度的注意力机制的Transformer算法的能力。
具体地,参照图3,示出了本申请实施例提供的故障预测模型的训练框架示意图,具体可以基于加权交叉熵损失降低混淆样本的权重,大幅增加模型的精准率的同时,还可对日志文本抽象化处理,构建相应的异常事件库对日志进行编码,其基于单独的异常事件库进行构建以免去BERT模型对日志文本编码的预训练的复杂过程,降低模型的计算复杂度。
在本申请实施例中,用于训练故障预测模型所使用的离线数据集,可以包括经过数据预处理得到的样本异常序列,其中,样本异常序列可以基于所报出的异常日志所映射生成的异常事件,以及异常事件所对应的异常等级生成。
在本发明的一种实施例中,样本异常序列主要可列按照预设时间间隔和预设采样窗口长度进行重采样实现,具体可以将异常日志映射得到异常事件,然后将异常事件在预先构建的异常事件库中所对应的数值标识,即对应的整数,按照报出异常日志的报出顺序的倒序排序组成异常标识序列,以便基于对所组成的异常标识序列按照预设时间间隔和预设采样窗口长度进行采样,得到异常序列。
在实际应用中,对异常事件的映射过程,可以通过正则表达式将报出的异常日志映射得到异常事件,表现为通过检测器实时获取NC报出的异常日志,并根据专家知识和正则表达式将各种异常日志一一对应地抽象为一个短语,所抽象得到的短语,即可称为异常事件。具体地,对每一条日志,可以确定此日志和其他日志共有的关键词,比如Error、hardware等词,然后可以再根据所出现的关键词的种类将其划分为不同的异常名称,得到用于命名异常事件的短语,示例性地,将原日志文本“mce:[Hardware Error]:Machinecheck events logged”抽象为异常事件“dmesg_unrecover_mce”;同时,可以将所映射得到的异常事件划分相应的异常等级,例如划分为5等:normal、low_warning、warning、critical和fatal,那么原案例日志最后得到的异常事件为“dmesg_unrecover_mce-critical”。由于线上报出的异常日志是描述计算机状态的语句,包含很多冗余信息,而通过对日志文本的抽象可提取其中的关键信息,同时也可对线上报出的异常日志进行有选择地筛选,比如选择具有Error字段的日志进行解析。
需要说明的是,抽象得到的异常事件往往是一类异常日志的统一描述;且异常等级解析规则通常会根据不同的异常事件类型而发生变化,一般会根据其事件发生的严重程度来确定具体的等级,以进一步细分异常事件增加细化信息,有利于宕机的预测。
在映射得到异常事件之后,可以基于预先构建的异常事件库进行相应的数值标识的转化,其中,预先构建的异常事件库与自然语言处理中的语料库类似,包含各种异常事件种类,各个异常事件可以对应一个数值标识,即整数,且各个异常事件具有相应的异常等级,由于在异常事件库中的异常事件以短语形式呈现,不利于故障预测模型对其进行直接训练,而通常采用向量的形式对故障预测模型进行输入,此时可以根据异常事件库将每个异常转化为数字以用于训练,例如将异常事件“dmesg_unrecover_mce”转化为32,同理异常等级也分别映射为1~5的整数,例如将“dmesg_unrecover_mce-critical”转化为32-4。需要说明的是,为了更好地区分,可以将不同等级的相同异常看作不同的独立的异常,具体考虑到异常事件的等级有5个,假定异常事件在词典中的索引为i,其对应的等级为j,那么异常事件可以为“i-j”,具体可以映射为i*5+j。例如对异常“exception-level”构建的映射,可以将“32-4”映射为整数164。
在将异常事件库中的异常事件对应的整数和异常等级映射生成后,为了保证能够让故障预测模型先看到最近时间段发生的***异常,同时由于故障预测模型所允许输入的序列长度通常有限,此时可以在截断长序列的情况下保证优先时刻更近的异常,具体表现为将异常事件对应的整数以及此异常事件所对应的异常等级所组合得到的针对各个异常日志的异常数值标识,按照异常日志的报出顺序的倒序排序组成异常标识序列;然后可以对所组成的异常标识序列按照预设时间间隔和预设采样窗口长度进行采样,得到异常序列,并根据异常序列得到异常时间戳序列。具体地,可以表现为将每台NC报出的异常所转化的数字按倒序排列组成一个异常标识序列。
其中,云计算***所发生的***异常可以包括宕机(即常说的“当机”/“死机”),也可以包括其他故障,那么基于所报出的异常日志所生成的异常标识序列,可以包含宕机样本和非宕机样本,其中宕机样本可以指的是云计算***发生的***宕机所对应的数值标识样本,非宕机样本可以指的是云计算***发生的除了***宕机以外的其他***异常所对应的数值标识样本。
此时,可以按照预设时间间隔在所组成的异常标识序列上确定若干个采样位置,然后从若干个采样位置中获取与宕机样本对应的目标采样位置,即处于宕机时刻的目标采样位置,并将此目标采样位置作为采样起始位置,然后再保留以采样起始位置开始在预设采样窗口长度内的宕机样本,以及以采样起始位置开始按照预设比例随机保留所组成的异常标识序列上的非宕机样本,得到针对***宕机的异常序列。
示例性地,在按照倒序排列组成异常标识序列后,可以按照预设时间间隔,例如5分钟为时间间隔,以预设采样窗口长度,例如3天为采样长度,在整段序列上有重叠地进行采样,表现为假设5分钟一个采样位置点,每个采样位置包含采样时间往前3天内的***异常的情况下,由于相邻两个采样位置的时间间隔远小于预设采样窗口长度,在采样位置A所采集的序列包含在当前采样时间,例如在12:03往前3天(即72小时)的序列时,与采样位置A相邻的采样位置B的采样时间,例如在12:08往前3天的序列(即72小时)时,采样位置B所采集的在12:03-12:08这5分钟时间段内的序列是采样位置A无法采集到的,而采样位置B与采样位置A在除了这5分钟以外可能存在2天23小时55分钟的序列是重合的,保证新发生的异常和前边所存在的异常进行关联性保留,那么可以对宕机样本(正样本)保留采样起始位置在宕机时刻3天内的数据,对正常样本(负样本)在整段序列上随机保留一定比例的样本,得到形如“[start],32,91,……,256”的异常序列,对负样本的随机保留是为了保留训练样本的多样性,降采样是为了减小类别不平衡比例。其中,[start]为起始符,没有具体含义。
需要说明的是,负样本指的是没有宕机NC的生命周期上采集的样本,这种情况下的样本均为负,而正样本指的是发生宕机NC在宕机时刻开始预设采样窗口长度,例如与3天内所采集的样本,此时异常事件仅仅是***日志抽象后获取,异常的发生并不意味着宕机,而本申请实施例所训练的故障预测模型是用于预测一个样本发生样本序列中这些异常后会不会有宕机风险的模型,即宕机样本属于正样本,非宕机样本(即正常样本)属于负样本,在所组成的序列是基于所报出的异常事件所转化为数字组成的情况下,所组成的序列上同样也存在不属于宕机样本的正常样本。
步骤202,随机对预设矩阵进行初始化得到模型矩阵,并采用模型矩阵对样本异常序列进行编码得到编码向量;
在本发明的一种实施例中,在获取离线数据集中所包含的样本异常序列后,可以获取样本异常序列中各个***异常所对应的各个数值标识样本,并将异常序列中各个***异常所对应的各个数值标识样本映射转换为特征向量,然后采用预设损失函数确定特征向量的损失的梯度,并反传特征向量的损失的梯度更新初始化后得到的模型矩阵的对应位置,以便采用更新后的模型矩阵对作为输入项的样本异常序列进行编码,得到针对样本异常序列中各个***异常所对应的各个数值标识样本的编码向量,便于后续基于所生成的编码向量得到用于训练故障预测模型的输出序列。
在实际应用中,编码向量的生成过程可以通过如图3所示的输入编码(Embedding)实现,具体可以在故障预测模型进行训练前,可以随机初始化一个矩阵E,样本异常序列中的行索引可以代表异常事件的种类,D是映射后特征向量的维度,用于表示编码后的维度,为矩阵E的第二个维度的大小;在对故障预测模型进行训练的开始时,可以将输入的样本异常序列中的各个数值标识样本映射转换为特征向量送入模型作为模型输入,在对故障预测模型所进行的训练中,可以将对应***异常的损失的梯度反传到矩阵E对应位置进行更新,矩阵E是模型的参数,此时具体表现为根据损失函数的关于E的梯度进行反传,可以更新E的参数,从而达到训练模型的目的;在对预测模型的训练完成后,矩阵E作为模型参数的一部分,可以对测试输入进行编码,此时输入的可以为前述整数序列,以根据矩阵E和映射得到的整数,取得对应事件的编码向量,即采用更新后的模型矩阵对作为输入项的异常序列进行编码,得到针对异常序列中各个异常的编码向量。
步骤203,获取初始化的权重矩阵,根据编码向量和权重矩阵得到输出序列;
基于所生成的编码向量得到用于训练故障预测模型的输出序列的过程,可以表现为根据编码向量和权重矩阵得到输出序列。
在实际应用中,可以通过如图3所示的线性复杂度注意力模块(Linear AttentionBlock)实现。由图3所示,模型由多层Linear Attention Block串联组成,其中,第n-1层的输出会作为第n层的输入,那么对于每一层Linear Attention Block,可以将编码向量作为线性复杂度注意力模块的第一层的输入项,与权重矩阵相乘,得到第一层的输出项,然后从第二层至第L层,按照前一层的输入项和前一层的输出项的和作为下一层的输入项,并与权重矩阵相乘得到下一层的输出项,直至按照前一层的输入项和前一层的输出项的和与权重矩阵相乘,得到顶层的输出项为止。其中,故障预测模型中所具有的顶层的线性复杂度注意力模块,即最后一层的线性复杂度注意力模的输出型表现为矩阵形式,而矩阵形式相当于特殊的向量,即其可以转化为特征向量进行标识,此时可以将输出项中各个行向量的特征向量组成输出序列。
具体地,假设所输入的序列为编码向量,所获取的权重矩阵可以表现为随机初始化的三个权重矩阵:WQ,Wk,Wv,进行如下计算:
Q=XWQ
α=Softmax(Q)
Figure BDA0003879710910000161
X'=FFN(K⊙GELU(XWV)+X)
其中,WQ用于计算所输入的序列中某个编码向量的权重,X可以指的是输入项,例如从线性复杂度注意力模块的第二层开始,按照前一层的输入项和前一层的输出项的和,是一个矩阵(包含多个向量),其可以根据X乘上WQ得到Q,Q可以指的是权重与输入项的乘积,并将此乘积的值作为动态化的权重;a可以指的是对包含有多个向量的矩阵Q进行归一化指数函数Softmax的计算,将其进行向量化,得到相应的特征向量,a可以由ai构成的,即ai=[a1,a2,…aL],其中L可以表示故障预测模型所具有的线性复杂度注意力模块,即Block的层数,而ai可以表示不同层数特征向量;Wk用于接受所计算的动态化权重并计算各个特征向量的列权重,Wv用于接受所计算的列权重并输出到下一层;FFN用于对样本中所有异常向量的每个维度的特征值组成的向量做映射,Softmax、GELU分别表示两种不同的激活函数,表示“矩阵和向量元素乘积”(向量K与矩阵每一行都做对应元素的乘积),X’可以用于代表当前Block,即当前的线性复杂度注意力模块的输出项。
步骤204,根据输出序列和分类器模块的参数,生成故障预测模型。
在本申请的一种实施例中,可以将顶层,即最后一层的输出项的目标特征向量按照序列的方式排列,组成输出序列,此时可以将获取输出序列中位于首个位置的目标特征向量,即起始符对应的特征向量,输入至分类器模块进行分类,确定用于训练故障预测模型的加权交叉熵损失以及置信度,然后可以根据故障预测模型的加权交叉熵损失以及置信度生成目标损失函数,采用目标损失函数训练得到故障预测模型。
在实际应用中,可以将最后一层TAABlock的输出序列的起始符对应的特征向量(class token)作为这个序列的代表,送入如图3所示的分类器(Classifier)进行分类,其中起始符不对应任何异常,但在计算相关性矩阵时计算每个异常与起始符的相关关系并以此为基础对起始符的向量进行了加权,那么起始符可以看作独立在各个异常之外的,但又可以代表所有异常的组合的一个符号,因此采用此起始符所对应的特征向量用于分类。
其中,相较于训练中普遍使用的交叉熵损失,加权交叉熵损失能够降低混淆样本的权重,大幅增加模型的精准率。
具体地,可以将所获取的目标特征向量输入至所述分类器模块进行分类,得到分类器模块将所述输出序列中各个特征向量所对应的各个样本分类为宕机样本的置信度,然耨确定输出序列中各个特征向量所对应的各个样本的所属的故障宕机单元,当后续的输出序列中存在相同的故障宕机单元的样本时,基于相同的故障宕机单元所记录的置信度计算针对该故障宕机单元出现***宕机的宕机权重,并为所存在相同的故障宕机单元的样本的权重增加至宕机权重,此时可以采用所存在相同的故障宕机单元的样本所增加至的宕机权重和所存在相同的故障宕机单元的样本进行加权损失计算,确定加权交叉熵损失,还可以更新相同的故障宕机单元所记录的置信度为在整个故障宕机单元下已训练样本分类为宕机样本所输出的最大置信度。
示例性地,加权交叉熵损失具体表现为NC级损失,以用于分类器的训练,具体表现为针对送入的各个样本,记录各个样本所属的NC,并记录模型对这个样本分类为正样本的置信度P;当之后的训练中存在相同的NC的样本时,可以根据当前相同的NC所记录的P值对当前所输入的样本设置权重W,进行加权交叉熵损失计算,同时还可以更新当前相同的NC所记录的P值为NC下已训练样本分类为正样本的输出的最大的置信度,实现对各个NC所记录的对应的P,与其样本所进行的加权损失计算,以为基于故障宕机单元生命周期中采集的多个样本预测生成,能够降低混淆样本的权重,并可以基于此损失填补训练、测试对象不同的差异,减小混淆样本对模型的负面影响。
在实际应用中,根据Pmax计算权重W的过程可以如下:
Figure BDA0003879710910000181
其中γ是超参数,Pmax是对应NC记录的样本中被模型预测为正样本的最大置信度,是当前样本被模型预测为正样本的输出置信度。
在一种优选的实施例中,在计算为W之后进行Pmax的更新与衰减,以使得权重乘以对应样本的损失函数用于训练时的模型更新,来提升模型的宕机预测能力。具体可以根据当前样本被模型预测为正样本的置信度P,按照按下方式更新和衰减最大置信度Pmax
Pmax←max(Pmax,P)
Pmax←λPmax,λ∈(0,1)
其中,在对最大置信度进行更新时,可以表现为按照max(Pmax,P)将置信度P更新至Pmax;在对最大置信度进行衰减时,可以表现为按照倍数λ将Pmax进行衰减,具体地λ的取值范围为0~1,即通常为小数,以小数与Pmax的乘积达到对最大置信度进行衰减的目的。需要说明的是,对于倍数λ的具体取值,本申请实施例对此不加以限制。
在最后分类时,可以设置一个预设阈值,当模型输出的预测置信度大于预设阈值时,则可以判定故障预测结果为宕机结果,当所输出的预测置信度小于或者等于预设阈值时,可以判定故障预测结果为不宕机结果。
需要说明的是,上述对最大置信度的更新过程存在于训练过程,在使用所训练生成的故障预测模型进行预测的过程中不需要进行对置信度的更新步骤。且由于是在训练过程,模型在每一轮迭代中可能会发生变化,此时可以不断更新Pmax,同理,由于模型发生了变化,之前记录的Pmax可能已经变小,那么还存在衰减的情况。
此时,可以通过目标损失函数反传加权交叉熵损失的梯度更新故障预测模型的参数,生成故障预测模型。
在本申请实施例中,采用线形Attention计算方式,以减小模型计算复杂度,还采用NC级损失函数,通过设计NC级损失填补训练、测试对象不同的差异,减小混淆样本对模型的负面影响,提高对***故障预测结果的准确性。具体使用线形复杂度Attention代替BERT中普通Attention机制,减小模型计算复杂度,提升模型效率和稳定性,在线预测中可以同时处理更多的数据;且采用NC级损失函数,由于训练中使用的是NC生命周期中采集的多个样本而最后的预测对象是NC,设计NC级损失能够填补训练、测试对象不同的差异,减小混淆样本对模型的负面影响。进一步地,对日志文本抽象化处理,构建相应的异常事件库对日志进行编码,其基于单独的异常事件库进行构建以免去BERT模型对日志文本编码的预训练的复杂过程,降低模型的计算复杂度,使得训练得到的模型体量更小,训练测试速度更快以及效率更高。
参照图4,示出了本申请实施例提供的基于加权损失的***故障预测的应用场景示意图,基于加权损失的***故障预测可以应用在云计算***,涉及云计算平台410和云计算服务器集群411。
在实际应用中,云计算平台410可以将从云计算服务器集群411采集的离线数据集,按照对异常日志进行异常事件的映射、将异常事件转化为数值标识、将异常等级转化为数值标识、构建异常事件库、组成异常标识序列以及按照预设时间间隔和预设采样窗口长度进行重采样生成异常序列的步骤,对离线数据集所包含的异常日志进行预处理,以作为训练集训练模型并保存;然后可以按照如图3所示的故障预测模型的训练框架示意图进行故障预测模型的训练/生成,使得所生成的故障预测模型能够具有执行基于NC加权损失和线性计算复杂度的注意力机制的Transformer算法的能力。
在进行故障预测时,可以表现为云计算平台410在某个时刻获得一个异常事件序列,然后基于所获取的故障预测模型执行基于NC加权损失和线性计算复杂度的注意力机制的Transformer算法,预测***是否会发生故障,并基于预测结果决定是否提前对宕机故障进行运维以实现用户对宕机的无感化,从而优化用户的体验。
具体地,NC宕机故障是影响云计算***稳定性的重要因素之一,不可预料的突然宕机将会给用户造成严重损失,为了维护云计算***的稳定性,此时可以通过故障预测模型基于所输入的实时***数据推断当前的NC是否会在接下来的一段时间内发生宕机,输出故障预测结果。在具体实现中,可以基于所输出的预测置信度进行故障预测结果的确定,若预测置信度大于预设阈值,则确定针对***的故障预测结果为宕机结果,和/或,若预测置信度小于或者等于预设阈值,则确定针对***的预测故障结果为不宕机结果。其中,宕机结果指的是判定这台NC未来一段时间内有宕机风险,此时可以提前对宕机故障进行运维以实现用户对宕机的无感化,不宕机结果指的是这台NC未来一段时间内不存在宕机风险,此时暂时不进行任何操作。
在本申请实施例中,本申请实施例所提出的NCLAT算法,能够以较低的计算复杂度提取复杂的特征表达模式,同时减小混淆样本对模型的负面影响,实现高效、精准、全面地找到即将要宕机的NC,及时运维来避免不必要的损失,大幅提升云计算***的稳定性。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请实施例并不受所描述的动作顺序的限制,因为依据本申请实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本申请实施例所必须的。
参照图5,示出了本申请的一种基于加权损失的***故障预测装置实施例的结构框图,应用于云计算***,具体可以包括如下模块:
异常序列生成模块501,用于获取实时采集的实时***数据,根据所述实时采集的实时***数据生成异常序列;
故障预测模型获取模块502,用于获取故障预测模型;其中,所述故障预测模型基于目标损失函数训练生成,所述目标损失函数基于所述故障预测模型的加权交叉熵损失以及置信度计算得到;
故障预测模块503,用于根据所述异常序列和所述故障预测模型,得到针对所述云计算***的故障预测结果。
在本申请的一种实施例中,所述实时采集的实时***数据包括云计算***中各个故障宕机单元针对***异常报出的异常日志;异常序列生成模块501可以包括如下子模块:
异常事件库构建子模块,用于获取各个故障宕机单元报出所述异常日志的报出顺序,以及将所述各个故障宕机单元针对***异常报出的异常日志映射得到异常事件,其中各个异常事件在异常事件库中具有各自对应的数值标识,且各个异常事件具有相应的异常等级;
异常数值标识映射子模块,用于将所映射得到的异常事件所对应的数值标识和异常事件所对应的异常等级进行组合映射得到针对各个异常日志的异常数值标识;
序列组成子模块,用于按照所述报出顺序的倒序顺序进行将所述针对各个异常日志的异常数值标识的组成异常标识序列;
异常序列生成子模块,用于对所述异常标识序列按照预设时间间隔和预设采样窗口长度进行采样,得到异常序列。
在本申请的一种实施例中,所述异常标识序列包含宕机样本和非宕机样本,其中所述宕机样本为所述云计算***发生的***宕机所对应的数值标识样本,所述非宕机样本为所述云计算***发生的除了***宕机以外的其他***异常所对应的数值标识样本;异常序列生成子模块可以包括如下单元:
采样点确定单元,用于按照所述预设时间间隔确定在所述异常标识序列上确定若干个采样位置;
采样起始位置确定单元,用于从所述若干个采样位置中获取与所述宕机样本对应的目标采样位置,并将所述目标采样位置作为采样起始位置;
异常序列生成单元,用于保留以所述采样起始位置开始在预设采样窗口长度内的宕机样本,以及以所述采样起始位置开始按照预设比例随机保留所述异常标识序列上的非宕机样本,得到针对***宕机的异常序列。
在本申请的一种实施例中,故障预测模块503可以包括如下子模块:
置信度输出子模块,用于将所述异常序列作为输入项输入至所述故障预测模型,输出得到预测置信度;
第一故障预测子模块,用于在所述预测置信度大于预设阈值时,确定所述针对***的故障预测结果为宕机结果;
第二故障预测子模块,用于在所述预测置信度小于或者等于所述预设阈值时,确定所述针对***的预测故障结果为不宕机结果。
在本申请的一种实施例中,所述故障预测模型具有分类器模块,所述分类器模块用于指示所述故障预测模块判定所述云计算***的故障预测结果;所述装置还可以包括如下模块:
故障预测模型生成模块,用于生成基于加权损失的故障预测模型。
在本申请的一种实施例中,故障预测模型生成模块可以包括如下子模块:
离线数据集获取子模块,用于获取离线数据集,所述离线数据集包括经过数据预处理得到的样本异常序列,其中,所述样本异常序列作为用于训练所述故障预测模型的输入项,所述样本异常序列基于云计算***中各个故障宕机单元针对***异常所报出的异常日志映射得到的异常事件,以及基于所映射得到的训练异常事件所对应的异常等级生成;
编码子模块,用于随机对预设矩阵进行初始化得到模型矩阵,并采用所述模型矩阵对所述样本异常序列进行编码得到编码向量;
输出序列生成子模块,用于获取初始化的权重矩阵,根据所述编码向量和所述权重矩阵得到输出序列;
故障预测模型生成子模块,用于获取所述分类器模块的参数,根据所述输出序列和所述分类器模块的参数,生成故障预测模型。
在本申请的一种实施例中,所述样本异常序列中包含与***异常所对应的各个数值标识样本;编码子模块可以包括如下单元:
特征向量转换单元,用于获取所述异常序列中各个***异常所对应的各个数值标识样本,并将所述异常序列中各个***异常所对应的各个数值标识样本映射转换为相应的特征向量;
矩阵更新单元,用于采用预设损失函数确定所述特征向量的损失的梯度,并反传所述特征向量的损失的梯度更新所述模型矩阵的对应位置;
编码向量输出单元,用于采用更新后的模型矩阵对所述样本异常序列进行编码,得到针对所述样本异常序列中各个***异常所对应的各个数值标识样本的编码向量。
在本申请的一种实施例中,所述故障预测模型具有多层线性复杂度注意力模块,所述时间感知注意力模块用于指示所述故障预测模型基于加权损失进行***故障检测;输出序列生成子模块可以包括如下单元:
输出项生成单元,用于将所述编码向量作为所述线性复杂度注意力模块的第一层的输入项,与所述权重矩阵相乘,得到第一层的输出项;
迭代计算单元,用于从所述线性复杂度注意力模块的第二层开始,按照前一层的输入项和前一层的输出项的和作为下一层的输入项,并与所述权重矩阵相乘得到下一层的输出项,直至按照前一层的输入项和前一层的输出项的和与权重矩阵相乘,得到顶层的输出项为止;
输出序列组成单元,用于将顶层的输出项的特征向量组成输出序列。
在本申请的一种实施例中,故障预测模型生成子模块可以包括如下单元:
加权交叉熵损失确定单元,用于获取所述输出序列中位于首个位置的特征向量,将所获取的目标特征向量输入至所述分类器模块进行分类,确定用于训练所述故障预测模型的加权交叉熵损失以及置信度;
故障预测模型生成单元,用于根据所述故障预测模型的加权交叉熵损失以及置信度生成目标损失函数,采用所述目标损失函数训练得到故障预测模型。
在本申请的一种实施例中,加权交叉熵损失确定单元可以包括如下子单元:
置信度确定子单元,用于将所获取的目标特征向量输入至所述分类器模块进行分类,得到所述分类器模块将所述输出序列中各个特征向量所对应的各个样本分类为宕机样本的置信度;
故障宕机单元确定子单元,用于确定所述输出序列中各个特征向量所对应的各个样本所属的故障宕机单元;
权重设置子单元,用于当后续的输出序列中存在相同的故障宕机单元的样本时,基于所述相同的故障宕机单元所记录的置信度计算针对该故障宕机单元出现***宕机的宕机权重,并将该相同的故障宕机单元的样本的权重增加至所述宕机权重;
置信度更新子单元,用于采用所存在相同的故障宕机单元的样本所增加至的宕机权重和所存在相同的故障宕机单元的样本进行加权损失计算,确定加权交叉熵损失,以及更新所述相同的故障宕机单元所记录的置信度为在整个故障宕机单元下已训练样本分类为宕机样本所输出的最大置信度。
在本申请的一种实施例中,故障预测模型生成单元可以包括如下子单元:
故障预测模型生成子单元,用于通过所述目标损失函数反传所述加权交叉熵损失的梯度,更新所述故障预测模型的参数,生成故障预测模型。
本申请实施例提出的基于加权损失的***故障预测装置,在对实时采集的实时***数据进行故障预测时,可以将实时采集的实时***数据生成异常序列,然后采用所获取的故障预测模型对异常序列进行故障预测,得到故障预测结果,其中所采用的故障预测模型可基于目标损失函数训练生成,而目标损失函数训练可以基于故障预测模型的加权交叉熵损失以及置信度计算得到,其所采用的基于加权交叉熵损失计算的损失函数,其加权交叉熵损失为基于故障宕机单元生命周期中采集的多个样本预测生成,能够降低混淆样本的权重,并可以基于此损失填补训练、测试对象不同的差异,减小混淆样本对模型的负面影响,提高模型预测的精准度。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本申请实施例还提供了一种电子设备,包括:
包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,该计算机程序被处理器执行时实现上述基于加权损失的***故障预测方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本申请实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储计算机程序,计算机程序被处理器执行时实现上述基于加权损失的***故障预测方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本申请实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本申请实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请实施例是参照根据本申请实施例的方法、终端设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本申请所提供的一种基于加权损失的***故障预测方法、一种基于加权损失的***故障预测装置、相应的一种电子设备以及相应的一种计算机可读存储介质,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (13)

1.一种基于加权损失的***故障预测方法,其特征在于,应用于云计算***,所述方法包括:
获取故障预测模型和实时采集的实时***数据;其中,所述故障预测模型基于目标损失函数训练生成,所述目标损失函数基于所述故障预测模型的加权交叉熵损失以及置信度计算得到;
根据所述实时采集的实时***数据生成异常序列;
根据所述异常序列和所述故障预测模型,得到针对所述云计算***的故障预测结果。
2.根据权利要求1所述的方法,其特征在于,所述实时采集的实时***数据包括云计算***中各个故障宕机单元针对***异常报出的异常日志;所述根据所实时采集的实时***数据生成异常序列,包括:
获取各个故障宕机单元报出所述异常日志的报出顺序,以及将所述各个故障宕机单元针对***异常报出的异常日志映射得到异常事件,其中各个异常事件在异常事件库中具有各自对应的数值标识,且各个异常事件具有相应的异常等级;
将所映射得到的异常事件所对应的数值标识和异常事件所对应的异常等级进行组合映射得到针对各个异常日志的异常数值标识;
按照所述报出顺序的倒序顺序进行将所述针对各个异常日志的异常数值标识的组成异常标识序列;
对所述异常标识序列按照预设时间间隔和预设采样窗口长度进行采样,得到异常序列。
3.根据权利要求2所述的方法,其特征在于,所述异常标识序列包含宕机样本和非宕机样本,其中所述宕机样本为所述云计算***发生的***宕机所对应的数值标识样本,所述非宕机样本为所述云计算***发生的除了***宕机以外的其他***异常所对应的数值标识样本;
所述对所述异常标识序列按照预设时间间隔和预设采样窗口长度进行采样,得到异常序列,包括:
按照所述预设时间间隔确定在所述异常标识序列上确定若干个采样位置;
从所述若干个采样位置中获取与所述宕机样本对应的目标采样位置,并将所述目标采样位置作为采样起始位置;
保留以所述采样起始位置开始在预设采样窗口长度内的宕机样本,以及以所述采样起始位置开始按照预设比例随机保留所述异常标识序列上的非宕机样本,得到针对***宕机的异常序列。
4.根据权利要求1所述的方法,其特征在于,所述根据所述异常序列和所述故障预测模型,得到针对***的故障预测结果,包括:
将所述异常序列作为输入项输入至所述故障预测模型,输出得到预测置信度;
若所述预测置信度大于预设阈值,则确定所述针对***的故障预测结果为宕机结果;
和/或,若所述预测置信度小于或者等于所述预设阈值,则确定所述针对***的预测故障结果为不宕机结果。
5.根据权利要求1或4所述的方法,其特征在于,所述故障预测模型具有分类器模块,所述分类器模块用于指示所述故障预测模块判定所述云计算***的故障预测结果;所述故障预测模型通过如下方式生成:
获取离线数据集,所述离线数据集包括经过数据预处理得到的样本异常序列,其中,所述样本异常序列作为用于训练所述故障预测模型的输入项,所述样本异常序列基于云计算***中各个故障宕机单元针对***异常所报出的异常日志映射得到的异常事件,以及基于所映射得到的训练异常事件所对应的异常等级生成;
随机对预设矩阵进行初始化得到模型矩阵,并采用所述模型矩阵对所述样本异常序列进行编码得到编码向量;
获取初始化的权重矩阵,根据所述编码向量和所述权重矩阵得到输出序列;
获取所述分类器模块的参数,根据所述输出序列和所述分类器模块的参数,生成故障预测模型。
6.根据权利要求5所述的方法,其特征在于,所述样本异常序列中包含与***异常所对应的各个数值标识样本;所述采用所述模型矩阵对作为所述样本异常序列进行编码得到编码向量,包括:
获取所述异常序列中各个***异常所对应的各个数值标识样本,并将所述异常序列中各个***异常所对应的各个数值标识样本映射转换为相应的特征向量;
采用预设损失函数确定所述特征向量的损失的梯度,并反传所述特征向量的损失的梯度更新所述模型矩阵的对应位置;
采用更新后的模型矩阵对所述样本异常序列进行编码,得到针对所述样本异常序列中各个***异常所对应的各个数值标识样本的编码向量。
7.根据权利要求5所述的方法,其特征在于,所述故障预测模型具有多层线性复杂度注意力模块,所述时间感知注意力模块用于指示所述故障预测模型基于加权损失进行***故障检测;所述根据所述编码向量和所述权重矩阵得到输出序列,包括:
将所述编码向量作为所述线性复杂度注意力模块的第一层的输入项,与所述权重矩阵相乘,得到第一层的输出项;
从所述线性复杂度注意力模块的第二层开始,按照前一层的输入项和前一层的输出项的和作为下一层的输入项,并与所述权重矩阵相乘得到下一层的输出项,直至按照前一层的输入项和前一层的输出项的和与权重矩阵相乘,得到顶层的输出项为止;
将顶层的输出项的特征向量组成输出序列。
8.根据权利要求5所述的方法,其特征在于,所述根据所述输出序列和所述分类器模块的参数,生成故障预测模型,包括:
获取所述输出序列中位于首个位置的特征向量,将所获取的目标特征向量输入至所述分类器模块进行分类,确定用于训练所述故障预测模型的加权交叉熵损失以及置信度;
根据所述故障预测模型的加权交叉熵损失以及置信度生成目标损失函数,采用所述目标损失函数训练得到故障预测模型。
9.根据权利要求8所述的方法,其特征在于,所述将所获取的目标特征向量输入至所述分类器模块进行分类,确定用于训练所述故障预测模型的加权交叉熵损失以及置信度,包括:
将所获取的目标特征向量输入至所述分类器模块进行分类,得到所述分类器模块将所述输出序列中各个特征向量所对应的各个样本分类为宕机样本的置信度;
确定所述输出序列中各个特征向量所对应的各个样本所属的故障宕机单元;
当后续的输出序列中存在相同的故障宕机单元的样本时,基于所述相同的故障宕机单元所记录的置信度计算针对该故障宕机单元出现***宕机的宕机权重,并将该相同的故障宕机单元的样本的权重增加至所述宕机权重;
采用所存在相同的故障宕机单元的样本所增加至的宕机权重和所存在相同的故障宕机单元的样本进行加权损失计算,确定加权交叉熵损失,以及更新所述相同的故障宕机单元所记录的置信度为在整个故障宕机单元下已训练样本分类为宕机样本所输出的最大置信度。
10.根据权利要求8所述的方法,其特征在于,所述根据所述故障预测模型的加权交叉熵损失以及置信度生成目标损失函数,采用所述目标损失函数训练得到故障预测模型,包括:
通过所述目标损失函数反传所述加权交叉熵损失的梯度,更新所述故障预测模型的参数,生成故障预测模型。
11.一种基于加权损失的***故障预测装置,其特征在于,应用于云计算***,所述装置包括:
异常序列生成模块,用于获取实时采集的实时***数据,根据所述实时采集的实时***数据生成异常序列;
故障预测模型获取模块,用于获取故障预测模型;其中,所述故障预测模型基于目标损失函数训练生成,所述目标损失函数基于所述故障预测模型的加权交叉熵损失以及置信度计算得到;
故障预测模块,用于根据所述异常序列和所述故障预测模型,得到针对所述云计算***的故障预测结果。
12.一种电子设备,其特征在于,包括:处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1-10中任一项所述基于加权损失的***故障预测方法。
13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如权利要求1至10中任一项所述基于加权损失的***故障预测方法。
CN202211225563.1A 2022-10-09 2022-10-09 基于加权损失的***故障预测方法、装置、设备及介质 Pending CN115599579A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211225563.1A CN115599579A (zh) 2022-10-09 2022-10-09 基于加权损失的***故障预测方法、装置、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211225563.1A CN115599579A (zh) 2022-10-09 2022-10-09 基于加权损失的***故障预测方法、装置、设备及介质

Publications (1)

Publication Number Publication Date
CN115599579A true CN115599579A (zh) 2023-01-13

Family

ID=84846705

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211225563.1A Pending CN115599579A (zh) 2022-10-09 2022-10-09 基于加权损失的***故障预测方法、装置、设备及介质

Country Status (1)

Country Link
CN (1) CN115599579A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116430817A (zh) * 2023-04-26 2023-07-14 同心县启胜新能源科技有限公司 应用于光伏组件生产***的数据采集处理方法及***
CN116453507A (zh) * 2023-02-21 2023-07-18 北京数美时代科技有限公司 基于置信度模型的语音识别优化方法、***和存储介质
CN117033912A (zh) * 2023-10-07 2023-11-10 成都态坦测试科技有限公司 一种设备故障预测方法、装置、可读存储介质及电子设备
CN118094126A (zh) * 2024-04-17 2024-05-28 华侨大学 基于聚类和Transformer算法的真空干泵剩余寿命预测方法及设备

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116453507A (zh) * 2023-02-21 2023-07-18 北京数美时代科技有限公司 基于置信度模型的语音识别优化方法、***和存储介质
CN116453507B (zh) * 2023-02-21 2023-09-08 北京数美时代科技有限公司 基于置信度模型的语音识别优化方法、***和存储介质
CN116430817A (zh) * 2023-04-26 2023-07-14 同心县启胜新能源科技有限公司 应用于光伏组件生产***的数据采集处理方法及***
CN116430817B (zh) * 2023-04-26 2023-09-29 同心县启胜新能源科技有限公司 应用于光伏组件生产***的数据采集处理方法及***
CN117033912A (zh) * 2023-10-07 2023-11-10 成都态坦测试科技有限公司 一种设备故障预测方法、装置、可读存储介质及电子设备
CN117033912B (zh) * 2023-10-07 2024-02-13 成都态坦测试科技有限公司 一种设备故障预测方法、装置、可读存储介质及电子设备
CN118094126A (zh) * 2024-04-17 2024-05-28 华侨大学 基于聚类和Transformer算法的真空干泵剩余寿命预测方法及设备
CN118094126B (zh) * 2024-04-17 2024-07-16 华侨大学 基于聚类和Transformer算法的真空干泵剩余寿命预测方法及设备

Similar Documents

Publication Publication Date Title
CN115599579A (zh) 基于加权损失的***故障预测方法、装置、设备及介质
CN111914873B (zh) 一种两阶段云服务器无监督异常预测方法
CN115617554A (zh) 基于时间感知的***故障预测方法、装置、设备及介质
CN113343581B (zh) 基于图马尔可夫神经网络的变压器故障的诊断方法
JP2023504103A (ja) モデル更新システム、モデル更新方法及び関連装置
JP2023547849A (ja) ラベルなしセンサデータを用いた産業システム内の稀な障害の自動化されたリアルタイムの検出、予測、及び予防に関する、方法または非一時的コンピュータ可読媒体
CN114661905A (zh) 一种基于bert的电网故障诊断方法
Ranasinghe et al. Generating real-valued failure data for prognostics under the conditions of limited data availability
CN115373879A (zh) 一种面向大规模云数据中心智能运维的磁盘故障预测方法
CN115146739A (zh) 基于堆叠时间序列网络的电力变压器故障诊断方法
CN115221942A (zh) 一种基于时序融合和神经网络的设备缺陷预测方法及***
CN111027591A (zh) 一种面向大规模集群***的节点故障预测方法
Antici et al. Augmenting ML-based Predictive Modelling with NLP to Forecast a Job's Power Consumption
CN113033089A (zh) 用电量异常用户识别方法和装置
CN112232078A (zh) 一种基于双向gru与注意力机制的调度操作票审核方法
CN115904916A (zh) 一种硬盘故障预测的方法、装置、电子设备以及存储介质
CN113076217B (zh) 基于国产平台的磁盘故障预测方法
CN115952928A (zh) 一种短期电力负荷预测方法、装置、设备及存储介质
CN113240098B (zh) 基于混合门控神经网络的故障预测方法、装置和存储介质
CN109947728B (zh) 一种日志文件的处理方法及装置
JP7475549B2 (ja) 学習装置、予測装置、予測システム、学習方法、予測方法、及び予測プログラム
CN114819108B (zh) 一种综合能源***故障识别方法及装置
CN115174421B (zh) 基于自监督解缠绕超图注意力的网络故障预测方法及装置
CN117667495B (zh) 一种关联规则与深度学习集成的应用***故障预测方法
Chen et al. Transient voltage stability assessment based on an improved TCN-BiLSTM framework

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