CN116149898B - 内核异常类型的确定方法、电子设备及存储介质 - Google Patents
内核异常类型的确定方法、电子设备及存储介质 Download PDFInfo
- Publication number
- CN116149898B CN116149898B CN202310421220.0A CN202310421220A CN116149898B CN 116149898 B CN116149898 B CN 116149898B CN 202310421220 A CN202310421220 A CN 202310421220A CN 116149898 B CN116149898 B CN 116149898B
- Authority
- CN
- China
- Prior art keywords
- kernel
- target
- feature vector
- calling
- function
- 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.)
- Active
Links
Classifications
-
- 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
- Debugging And Monitoring (AREA)
Abstract
本申请提供了内核异常类型的确定方法、电子设备及存储介质,涉及计算机技术领域。其中,该方法包括:针对目标执行栈信息中的多个调用函数,对所述多个调用函数中的目标调用函数对应的第一语义特征向量进行特征提取,获得所述目标调用函数对应的第二语义特征向量;对所述多个调用函数分别对应的第二语义特征向量进行融合处理,获得所述目标执行栈信息对应的第三语义特征向量;所述第三语义特征向量用于表征所述目标执行栈信息的语义特征;至少依据所述第三语义特征向量,确定所述容器内核的目标内核异常类型。本申请的方案能够使确定出的目标内核异常类型具有更高的准确度。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及内核异常类型的确定方法、电子设备及存储介质。
背景技术
容器(Container)技术是一种用于封装应用的虚拟化技术。基于容器技术可以在一台宿主机(Host)上虚拟出多个独立的、互不干扰的容器。容器可为运行在该容器内的应用提供独立的操作系统运行环境,同时,容器具有可扩展性、轻量化、易部署以及易移植等特点。基于容器的上述功能及特点,容器已经被广泛使用。
但在容器的使用过程中,容器的容器内核往往会出现运行异常的情况,从而导致容器无法正常使用。为了能够解决容器内核出现的运行异常的问题,从而使容器能够正常使用,需要对容器内核出现的运行异常的问题进行分析以及解决。为了能够有针对性的对容器内核出现的运行异常的问题进行分析以及解决,往往需要先确定容器内核的异常类型。因此,如何确定容器内核的异常类型,成为容器使用过程中亟待解决的技术问题。
发明内容
本申请实施例提供内核异常类型的确定方法、电子设备及存储介质,以提高确定出的目标内核异常类型的准确度。
第一方面,本申请实施例提供了一种内核异常类型的确定方法,包括:
针对目标执行栈信息中的多个调用函数,对多个调用函数中的目标调用函数对应的第一语义特征向量进行特征提取,获得目标调用函数对应的第二语义特征向量;目标执行栈信息从容器内核运行异常时产生的内核异常日志中解析得到;目标调用函数对应的第一语义特征向量用于表征目标调用函数的语义特征;目标调用函数对应的第二语义特征向量用于表征语义特征以及目标调用函数与多个调用函数中的其他调用函数之间的语义相关性;
对多个调用函数分别对应的第二语义特征向量进行融合处理,获得目标执行栈信息对应的第三语义特征向量;第三语义特征向量用于表征目标执行栈信息的语义特征;
至少依据第三语义特征向量,确定容器内核的目标内核异常类型。
第二方面,本申请实施例提供了另一种内核异常类型的确定方法,包括:
将目标执行栈信息中的多个调用函数分别对应的第一语义特征向量输入至已训练的内核异常分类模型,利用已训练的内核异常分类模型中的第一网络层对多个调用函数中的目标调用函数对应的第一语义特征向量进行特征提取,获得目标调用函数对应的第二语义特征向量;目标执行栈信息从容器内核运行异常时产生的内核异常日志中解析得到;目标调用函数对应的第一语义特征向量用于表征目标调用函数的语义特征;目标调用函数对应的第二语义特征向量用于表征语义特征以及目标调用函数与多个调用函数中的其他调用函数之间的语义相关性;
基于已训练的内核异常分类模型中的第二网络层对多个调用函数分别对应的第二语义特征向量进行融合处理,获得目标执行栈信息对应的第三语义特征向量;第三语义特征向量用于表征目标执行栈信息的语义特征;
将第三语义特征向量输入至已训练的内核异常分类模型中的第三网络层,获得第三网络层输出的容器内核的目标内核异常类型;第三网络层用于至少依据第三语义特征向量,确定目标内核异常类型。
第三方面,本申请实施例提供一种电子设备,包括存储器、处理器及存储在存储器上的计算机程序,处理器在执行计算机程序时实现本申请任一实施例提供的方法。
第四方面,本申请实施例提供一种计算机可读存储介质,计算机可读存储介质内存储有计算机程序,计算机程序被处理器执行时实现本申请任一实施例提供的方法。
与现有技术相比,本申请具有如下优点:
本申请的技术方案,先针对目标执行栈信息中的多个调用函数,对多个调用函数中的目标调用函数对应的第一语义特征向量进行特征提取,获得目标调用函数对应的第二语义特征向量,然后,再对多个调用函数分别对应的第二语义特征向量进行融合处理,获得目标执行栈信息对应的第三语义特征向量,之后,至少依据第三语义特征向量,确定容器内核的目标内核异常类型。
由于目标调用函数对应的第二语义特征向量用于表征语义特征以及目标调用函数与多个调用函数中的其他调用函数之间的语义相关性,因此,目标调用函数对应的第二语义特征向量能够更为精准的表征出目标调用函数在目标执行栈信息中的真实语义。在第二语义特征向量能够更为精准的表征出调用函数在目标执行栈信息中的真实语义的情况下,通过对多个调用函数分别对应的第二语义特征向量进行融合处理获得第三语义特征向量,能够使该第三语义特征向量更为精准的表征出目标执行栈信息的真实语义。由于第三语义特征向量能够更为精准的表征出目标执行栈信息的真实语义,因此,依据第三语义特征向量确定出的目标内核异常类型具有更高的准确度。
上述概述仅仅是为了说明书的目的,并不意图以任何方式进行限制。除上述描述的示意性的方面、实施方式和特征之外,通过参考附图和以下的详细描述,本申请进一步的方面、实施方式和特征将会是容易明白的。
附图说明
在附图中,除非另外规定,否则贯穿多个附图相同的附图标记表示相同或相似的部件或元素。这些附图不一定是按照比例绘制的。应该理解,这些附图仅描绘了根据本申请公开的一些实施方式,而不应将其视为是对本申请范围的限制。
图1示出了本申请实施例中提供的一种内核异常类型的确定方法的应用过程的示意图;
图2示出了本申请实施例中提供的一种内核异常类型的确定方法的流程图;
图3示出了本申请实施例中提供的另一种内核异常类型的确定方法的流程图;
图4示出了本申请实施例中提供的内核异常类型的确定装置的示意图;
图5示出了用来实现本申请实施例的电子设备的框图。
具体实施方式
在下文中,仅简单地描述了某些示例性实施例。正如本领域技术人员可认识到的那样,在不脱离本申请的构思或范围的情况下,可通过各种不同方式修改所描述的实施例。因此,附图和描述被认为本质上是示例性的,而非限制性的。
为便于理解本申请实施例的技术方案,以下对本申请实施例的相关技术进行说明。以下相关技术作为可选方案与本申请实施例的技术方案可以进行任意结合,其均属于本申请实施例的保护范围。
本申请实施例中涉及到对容器的容器内核出现的运行异常进行分类的方案。容器包括普通容器以及安全容器,其中,普通容器基于操作系统虚拟化技术实现,主要利用Cgroups(Control groups,控制组)和Namespace(命名空间)机制实现资源隔离,不同的普通容器之间共享宿主机内核(Host Kernel),安全容器与普通容器相比其主要区别在于,安全容器基于硬件虚拟化技术实现,每个安全容器都运行在一个单独的虚拟机中,并且拥有独立的客户机内核(Guest Kernel),安全容器可以采用安全沙箱架构。在容器是普通容器时,容器的容器内核是指宿主机内核,在容器是安全容器时,容器的容器内核是指客户机内核。
在容器内核出现运行异常时,具有容器内核运行异常检测功能的应用程序、服务或者实例等会从容器对应的执行栈(执行栈也可称为调用栈)中读取执行栈信息,并写入至内核异常日志,也即是说,内核异常日志在容器内核运行异常时产生。其中,执行栈信息用于揭示容器内核运行异常产生的过程和原因,至少包括容器内核所调用的多个调用函数。内核异常日志中除了记录有执行栈信息外,还可以记录有其他信息,例如,用对容器内核进行描述的信息,以及对容器内核的运行环境进行描述的信息等。目标执行栈信息是指从待确定内核异常类型的内核异常日志中解析得到的执行栈信息。目标执行栈信息中除包括多个调用函数外,还可以包括多个调用函数的偏置量以及容器内核的配置参数等。
在从待确定内核异常类型的内核异常日志中解析得到目标执行栈信息时,可先对待确定内核异常类型的内核异常日志进行解析,获得待确定内核异常类型的内核异常日志中记录的信息,然后,再从待确定内核异常类型的内核异常日志中记录的信息中,筛选出目标执行栈信息。在一示例中,可先依据设定的用于标识执行栈信息的执行栈信息关键词,从从待确定内核异常类型的内核异常日志中记录的信息中,筛选出与执行栈信息关键词相关的信息,然后,再将与执行栈信息关键词相关的信息确定为目标执行栈信息。例如,可先依据用于筛选执行栈信息的正则表达式以及执行栈信息关键词,从待确定内核异常类型的内核异常日志中记录的信息中,筛选出与执行栈信息关键词相关的信息,然后,再将与执行栈信息关键词相关的信息确定为目标执行栈信息。
本申请实施例中涉及到对容器的容器内核出现的运行异常进行分类的方案,要先针对目标执行栈信息中的多个调用函数,对多个调用函数中的目标调用函数对应的第一语义特征向量进行特征提取,获得目标调用函数对应的第二语义特征向量。其中,目标调用函数对应的第一语义特征向量用于表征目标调用函数的语义特征,目标调用函数对应的第二语义特征向量用于表征语义特征以及目标调用函数与多个调用函数中的其他调用函数之间的语义相关性。在针对目标执行栈信息中的多个调用函数,对多个调用函数中的目标调用函数对应的第一语义特征向量进行特征提取时,多个调用函数中的各调用函数均会被确定为目标调用函数。在此情况下,针对目标执行栈信息中的多个调用函数,对多个调用函数中的目标调用函数对应的第一语义特征向量进行特征提取,获得目标调用函数对应的第二语义特征向量是指,先将多个调用函数中的各调用函数分别确定为目标调用函数,然后,再对目标调用函数对应的第一语义特征向量进行特征提取,获得目标调用函数对应的第二语义特征向量,以得到多个调用函数分别对应的第二语义特征向量。也即是说,本申请实施例中涉及到对容器的容器内核出现的运行异常进行分类的方案会对多个调用函数分别对应的第一语义特征向量均进行特征提取,以获得多个调用函数分别对应的第二语义特征向量。在将多个调用函数中的某个调用函数确定为目标调用函数时,所获得目标调用函数对应的第二语义特征向量即为该调用函数对应的第二语义特征向量。
本申请实施例中涉及到对容器的容器内核出现的运行异常进行分类的方案,在获得目标调用函数对应的第二语义特征向量后,要进一步对多个调用函数分别对应的第二语义特征向量进行融合处理,获得目标执行栈信息对应的第三语义特征向量。其中,第三语义特征向量用于表征目标执行栈信息的语义特征。对多个调用函数分别对应的第二语义特征向量进行融合处理一般是指对多个调用函数分别对应的第二语义特征向量进行叠加。
本申请实施例中涉及到对容器的容器内核出现的运行异常进行分类的方案,在获得目标执行栈信息对应的第三语义特征向量后,要进一步至少依据第三语义特征向量,确定容器内核的目标内核异常类型。其中,至少依据第三语义特征向量,确定容器内核的目标内核异常类型是指,先确定与第三语义特征向量对应的内核异常类型,然后,再将与第三语义特征向量对应的内核异常类型确定为目标内核异常类型。
为了更清楚地展示本申请实施例中提供的内核异常类型的确定方法,首先介绍一下本申请实施例中提供的内核异常类型的确定方法的一个应用示例。该示例利用已训练的内核异常分类模型确定目标内核异常类型,该内核异常分类模型包括第一网络层、第二网络层以及第三网络层,其中,第一网络层用于对目标调用函数对应的第一语义特征向量进行特征提取,获得目标调用函数对应的第二语义特征向量;第二网络层用于对多个调用函数分别对应的第二语义特征向量进行融合处理,获得第三语义特征向量;第三网络层用于至少依据第三语义特征向量,确定目标内核异常类型。该示例的具体实现过程可参照图1,示出的内核异常类型的确定过程如下:
该应用示例中,在利用已训练的内核异常分类模型确定目标内核异常类型之前,要先对待训练的内核异常分类模型进行模型训练,以获得已训练的内核异常分类模型。对待训练的内核异常分类模型进行模型训练的步骤如下:
首先,针对至少一个容器样本,采集多个内核异常日志样本,并将多个内核异常日志样本存储至用于存储内核异常日志的日志存储数据库中。各内核异常日志样本为至少一个容器样本的容器内核运行异常时产生的内核异常日志。
其次,先从日志存储数据库中读取多个内核异常日志样本,再对各内核异常日志样本进行解析,获取各内核异常日志样本中记录的执行栈信息,并将各内核异常日志样本中记录的执行栈信息确定为执行栈信息样本,以得到多个执行栈信息样本。
再次,先对多个执行栈信息样本中的各执行栈信息样本分别进行向量化,获得多个执行栈信息样本分别对应的第四语义特征向量,然后,再对针对多个执行栈信息样本,依据各执行栈信息样本对应的第四语义特征向量之间的相似度,将多个执行栈信息样本划分为至少一个样本集合。例如,多个执行栈信息样本包括执行栈信息样本1、执行栈信息样本2、执行栈信息样本3以及执行栈信息样本4,执行栈信息样本1对应的第四语义特征向量为第四语义特征向量1,执行栈信息样本2对应的第四语义特征向量为第四语义特征向量2,执行栈信息样本3对应的第四语义特征向量为第四语义特征向量3,执行栈信息样本4对应的第四语义特征向量为第四语义特征向量4,依据据各执行栈信息样本对应的第四语义特征向量之间的相似度,可将多个执行栈信息样本划分为两个样本集合。其中,第一样本集合包括执行栈信息样本1以及执行栈信息样本3(即,第四语义特征向量1与第四语义特征向量3之间的相似度高于设定的相似度阈值),第二样本集合包括执行栈信息样本2以及执行栈信息样本4(即,第四语义特征向量2与第四语义特征向量4之间的相似度高于设定的相似度阈值)。
最后,在将多个执行栈信息样本划分为至少一个样本集合划分为至少一个样本集合后,针对至少一个样本集合进行容器内核异常类型标注,获得至少一个标注有容器内核异常类型的样本集合,再利用至少一个标注有容器内核异常类型的样本集合对待训练的内核异常分类模型进行模型训练,得到已训练的内核异常分类模型。
在针对至少一个样本集合进行容器内核异常类型标注,获得至少一个标注有容器内核异常类型的样本集合时,可先在用于记录内核异常情况的数据库中获取样本集合列表,再在样本集合列表中查找与各样本集合对应的容器内核异常类型,并依据与各样本集合对应的容器内核异常类型标注对至少一个样本集合进行容器内核异常类型标注。其中,样本集合列表中记载有多个样本集合以及各样本集合对应的容器内核异常类型。
由于样本集合包括至少一个执行栈信息样本,在针对至少一个样本集合进行容器内核异常类型标注,获得至少一个标注有容器内核异常类型的样本集合后,各样本集合中的至少一个执行栈信息样本也对应于相应的容器内核异常类型。也即是说,通过对各样本集合进行容器内核异常类型标注方式,可将各样本集合对应的容器内核异常类型标注给样本集合中的至少一个执行栈信息样本,从而通过对至少一个样本集合进行容器内核异常类型标注的方式,即可实现对多个执行栈信息样本的容器内核异常类型的标注。这样,大大降低了模型训练过程中对多个执行栈信息样本进行标注的所需消耗的资源和成本。
在通过模型训练得到已训练的已训练的内核异常分类模型后,即可利用已训练的内核异常分类模型确定目标内核异常类型,具体步骤如下:
首先,从日志存储数据库中读取容器内核运行异常时产生的内核异常日志,再对内核异常日志进行解析,获取内核异常日志中记录的执行栈信息,并将内核异常日志中记录的执行栈信息确定为目标执行栈信息样本。
然后,先对多个调用函数中的各调用函数进行向量化,获得各调用函数对应的第一语义特征向量,再将多个调用函数分别对应的第一语义特征向量输入至已训练的内核异常分类模型。
最后,在将多个调用函数分别对应的第一语义特征向量输入至已训练的内核异常分类模型后,先利用已训练的内核异常分类模型中的第一网络层对多个调用函数中的目标调用函数对应的第一语义特征向量进行特征提取,获得目标调用函数对应的第二语义特征向量,再基于已训练的内核异常分类模型中的第二网络层对多个调用函数分别对应的第二语义特征向量进行融合处理,获得目标执行栈信息对应的第三语义特征向量,之后,在将第三语义特征向量输入至已训练的内核异常分类模型中的第三网络层,获得第三网络层输出的容器内核的目标内核异常类型。
由于在将多个调用函数分别对应的第一语义特征向量输入至已训练的内核异常分类模型后,可先对多个调用函数中的目标调用函数对应的第一语义特征向量进行特征提取,获得目标调用函数对应的第二语义特征向量,然后,再对多个调用函数分别对应的第二语义特征向量进行融合处理,获得目标执行栈信息对应的第三语义特征向量,之后,至少依据第三语义特征向量,确定容器内核的目标内核异常类型。
由于目标调用函数对应的第二语义特征向量用于表征语义特征以及目标调用函数与多个调用函数中的其他调用函数之间的语义相关性,因此,目标调用函数对应的第二语义特征向量能够更为精准的表征出目标调用函数在目标执行栈信息中的真实语义。在第二语义特征向量能够更为精准的表征出调用函数在目标执行栈信息中的真实语义的情况下,通过对多个调用函数分别对应的第二语义特征向量进行融合处理获得第三语义特征向量,能够使该第三语义特征向量更为精准的表征出目标执行栈信息的真实语义。由于第三语义特征向量能够更为精准的表征出目标执行栈信息的真实语义,因此,依据第三语义特征向量确定出的目标内核异常类型具有更高的准确度。
另外,由于是利用已训练的内核异常分类模型确定目标内核异常类型,因此,确定目标内核异常类型的速度和效率更好,并且利用已训练的内核异常分类模型确定目标内核异常类型,能够降低确定目标内核异常类型所需花费的人力成本。
本申请的内核异常类型的确定方案,对应的执行主体均可以是应用程序、服务、实例、软件形态的功能模块、虚拟机(Virtual Machine,VM)或云服务器等,或者具有内核异常类型的确定功能的硬件设备(如服务器、终端设备)或硬件芯片,硬件芯片可以为CPU(Central Processing Unit,中央处理器)、GPU(Graphics Processing,图形处理器)、FPGA(Field Programmable Gate Array,现场可编程逻辑门阵列)、NPU(Neural-networkProcessing Unit,网络处理器)、AI(Artificial Intelligence,人工智能)加速卡或DPU(Data Processing Unit,数据处理器)等。其中,实现内核异常类型的确定的装置均可以部署在本地计算设备或提供算力、存储和网络资源的云计算平台上,云计算平台对外提供服务的模式可以是IaaS(Infrastructure as a Service,基础设施即服务)、PaaS(Platform as a Service,平台即服务)、SaaS(Software-as-a-service,软件即服务)或DaaS(Data-as-a-service,数据即服务)。以平台提供SaaS软件即服务(Software-as-a-Service)为例,云计算平台可以利用自身的计算资源提供内核异常类型的确定功能,具体的应用架构可以根据服务需求进行搭建。
下面以具体实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。以下相关技术作为可选方案与本申请实施例的技术方案可以进行任意结合,其均属于本申请实施例的保护范围,对于相同或相似的概念或过程可能在某些实施例中不再赘述。
图2示出了本申请实施例中提供的一种内核异常类型的确定方法200的流程图,可以包括步骤S201-S203。
在步骤S201中,针对目标执行栈信息中的多个调用函数,对多个调用函数中的目标调用函数对应的第一语义特征向量进行特征提取,获得目标调用函数对应的第二语义特征向量;目标执行栈信息从容器内核运行异常时产生的内核异常日志中解析得到;目标调用函数对应的第一语义特征向量用于表征目标调用函数的语义特征;目标调用函数对应的第二语义特征向量用于表征语义特征以及目标调用函数与多个调用函数中的其他调用函数之间的语义相关性。
容器包括普通容器以及安全容器,在容器是普通容器时,容器的容器内核是指宿主机内核,在容器是安全容器时,容器的容器内核是指客户机内核。
执行栈信息用于揭示容器内核运行异常产生的过程和原因,至少包括容器内核所调用的多个调用函数。内核异常日志中除了记录有执行栈信息外,还可以记录有其他信息,例如,用对容器内核进行描述的信息,以及对容器内核的运行环境进行描述的信息等。
在从内核异常日志中解析得到目标执行栈信息时,可先对内核异常日志进行解析,获得内核异常日志中记录的信息,然后,再从内核异常日志中记录的信息中,筛选出目标执行栈信息。
针对目标执行栈信息中的多个调用函数,对多个调用函数中的目标调用函数对应的第一语义特征向量进行特征提取,获得目标调用函数对应的第二语义特征向量是指,先将多个调用函数中的各调用函数分别确定为目标调用函数,然后,再对目标调用函数对应的第一语义特征向量进行特征提取,获得目标调用函数对应的第二语义特征向量,以得到多个调用函数分别对应的第二语义特征向量。
一种可能的实现方式中,在对多个调用函数中的目标调用函数对应的第一语义特征向量进行特征提取,获得目标调用函数对应的第二语义特征向量之前,可先对多个调用函数中的各调用函数分别进行向量化,获得各调用函数对应的第一语义特征向量。
对多个调用函数中的各调用函数分别进行向量化,获得各调用函数对应的第一语义特征向量是指,对各调用函数进行特征序列编码,得到对应的第一语义特征向量。
调用函数中可能包含部分冗余信息,如果不对冗余信息进行精简处理就直接对调用函数进行向量化,此时,得到的调用函数对应的第一语义特征向量可能无法精准的表征出目标调用函数在目标执行栈信息中的真实语义,从而影响确定出的目标内核异常类型的准确度。为了使调用函数对应的第一语义特征向量可以更为精准的表征出目标调用函数在目标执行栈信息中的真实语义,提高确定出的目标内核异常类型的准确度,在一示例中,可先对多个调用函数中的各调用函数进行精简处理,保留各调用函数的函数名称,然后,再对函数名称进行向量化,获得各调用函数对应的第一语义特征向量。
对多个调用函数中的各调用函数进行精简处理一般是指,对各调用函数中除函数名称之外的信息进行裁剪。
另外,先对多个调用函数中的各调用函数进行精简处理,保留各调用函数的函数名称,然后,再对对函数名称进行向量化,获得各调用函数对应的第一语义特征向量,还能够降低对多个调用函数进行向量化时所消耗的处理资源,并且能够提高调用函数向量化的效率。
一种可能的实现方式中,为了使调用函数对应的第一语义特征向量可以精准的表征出目标调用函数在目标执行栈信息中的真实语义,在对函数名称进行向量化,获得各调用函数对应的第一语义特征向量时,可以先采用上下文双向编码的编码方式对函数名称进行编码,得到各调用函数对应的第一语义特征向量。在采用上下文双向编码的编码方式对函数名称进行编码时,调用函数对应的第一语义特征向量不仅可以表征出函数名称中的各词组的语义,还可以表征出各词组之间的语义相关性,在此情况下,调用函数对应的第一语义特征向量可以精准的表征出目标调用函数在目标执行栈信息中的真实语义。在一示例中,可利用基于转换(Transformer)网络的双向编码器对函数名称进行编码,例如,BERT(Bidirectional Encoder Representation from Transformers)模型。
本申请实施例提供的内核异常类型的确定方法,在对多个调用函数中的目标调用函数对应的第一语义特征向量进行特征提取,获得目标调用函数对应的第二语义特征向量之后,要进一步执行步骤S202。在步骤S202中,对多个调用函数分别对应的第二语义特征向量进行融合处理,获得目标执行栈信息对应的第三语义特征向量;第三语义特征向量用于表征目标执行栈信息的语义特征。
对多个调用函数分别对应的第二语义特征向量进行融合处理是指,对多个调用函数分别对应的第二语义特征向量进行叠加。
一种可能的实现方式中,多个调用函数中包括至少一个使目标执行栈信息区别于其他执行栈信息的调用函数,由于使目标执行栈信息区别于其他执行栈信息的调用函数能够将目标执行栈信息与其他执行栈信息区别开来,在获取多个调用函数中的各调用函数分别对应的函数权重之前,可以为至少一个使目标执行栈信息区别于其他执行栈信息的调用函数配置目标函数权重,且使目标函数权重大于多个调用函数中的其他调用函数对应的函数权重,这样,在依据函数权重,对多个调用函数对应的第二语义特征向量加权求和,得到第三语义特征向量时,能够让使目标执行栈信息区别于其他执行栈信息的对应的第二语义特征向量占据更为重要的比重,从而能够提高确定出的目标内核异常类型的准确度。
本申请实施例提供的内核异常类型的确定方法,在获得目标执行栈信息对应的第三语义特征向量之后,要进一步执行步骤S203。在步骤S203中,至少依据第三语义特征向量,确定容器内核的目标内核异常类型。
至少依据第三语义特征向量,确定容器内核的目标内核异常类型是指,先确定与第三语义特征向量对应的内核异常类型,然后,再将与第三语义特征向量对应的内核异常类型确定为目标内核异常类型。
在一示例中,为了能够更为快速且准确的确定出目标内核异常类型,在至少依据第三语义特征向量,确定容器内核的目标内核异常类型时,可以先获取内核异常类型列表,然后,再在内核异常类型列表中查找与第三语义特征向量对应的内核异常类型,以获得目标内核异常类型,其中,内核异常类型列表记录有多个内核异常类型以及各内核异常类型对应的语义特征向量。
在另一示例中,为了能够使容器内核出现的运行异常的问题得到快速的解决,在至少依据第三语义特征向量,确定容器内核的目标内核异常类型之后,还可以进一步在用于记录内核异常情况的数据库中查找目标内核异常类型对应的异常解决方案。
除异常解决方案之外,还可以依据存储需求在用于记录内核异常情况的数据库中存储其他与内核异常相关的信息。
一种可能的实现方式中,为了使确定目标内核异常类型的速度和效率更好,并降低确定目标内核异常类型所需花费的人力成本,可利用已训练的内核异常分类模型确定目标内核异常类型,此时,可将多个调用函数分别对应的第一语义特征向量输入至已训练的内核异常分类模型。其中,内核异常分类模型包括第一网络层、第二网络层以及第三网络层;第一网络层用于对目标调用函数对应的第一语义特征向量进行特征提取,获得目标调用函数对应的第二语义特征向量;第二网络层用于对多个调用函数分别对应的第二语义特征向量进行融合处理,获得第三语义特征向量;第三网络层用于至少依据第三语义特征向量,确定目标内核异常类型。
在一示例中,为了使调用函数对应的第一语义特征向量可以精准的表征出目标调用函数在目标执行栈信息中的真实语义,可将第一网络层配置为基于双向长短期记忆力网络(Bidirectional Long Short-Term Memory,BiLSTM)的网络层。
在另一实例中,为了能够让使目标执行栈信息区别于其他执行栈信息的对应的第二语义特征向量占据更为重要的比重,从而提高确定出的目标内核异常类型的准确度,可以将第二网络层配置为基于注意力网络的网络层,其中,基于注意力网络的网络层对至少一个使目标执行栈信息区别于其他执行栈信息的调用函数具有较大的函数权重,即,基于注意力网络的网络层可为至少一个使目标执行栈信息区别于其他执行栈信息的调用函数配置目标函数权重,且使目标函数权重大于多个调用函数中的其他调用函数对应的函数权重。
一种可能的实现方式中,为了降低模型训练过程中对多个执行栈信息样本进行标注的所需消耗的资源和成本,在训练得到已训练的内核异常分类模型时,可先针对多个执行栈信息样本,依据各执行栈信息样本对应的第四语义特征向量之间的相似度,将多个执行栈信息样本划分为至少一个样本集合,然后,再针对至少一个样本集合进行容器内核异常类型标注,获得至少一个标注有容器内核异常类型的样本集合,之后,再利用至少一个标注有容器内核异常类型的样本集合对待训练的内核异常分类模型进行模型训练,得到已训练的内核异常分类模型。其中,第四语义特征向量用于表征执行栈信息样本的语义特征;样本集合包括至少一个执行栈信息样本。
本申请实施例提供的内核异常类型的确定方法,先针对目标执行栈信息中的多个调用函数,对多个调用函数中的目标调用函数对应的第一语义特征向量进行特征提取,获得目标调用函数对应的第二语义特征向量,然后,再对多个调用函数分别对应的第二语义特征向量进行融合处理,获得目标执行栈信息对应的第三语义特征向量,之后,至少依据第三语义特征向量,确定容器内核的目标内核异常类型。
由于目标调用函数对应的第二语义特征向量用于表征语义特征以及目标调用函数与多个调用函数中的其他调用函数之间的语义相关性,因此,目标调用函数对应的第二语义特征向量能够更为精准的表征出目标调用函数在目标执行栈信息中的真实语义。在第二语义特征向量能够更为精准的表征出调用函数在目标执行栈信息中的真实语义的情况下,通过对多个调用函数分别对应的第二语义特征向量进行融合处理获得第三语义特征向量,能够使该第三语义特征向量更为精准的表征出目标执行栈信息的真实语义。由于第三语义特征向量能够更为精准的表征出目标执行栈信息的真实语义,因此,依据第三语义特征向量确定出的目标内核异常类型具有更高的准确度。
与本申请实施例提供的方法的应用示例以及方法相对应地,本申请实施例还提供另一种内核异常类型的确定方法,图3示出了本申请实施例中提供的另一种内核异常类型的确定方法300的流程图,可以包括步骤S301-S303。
在步骤S301中,将目标执行栈信息中的多个调用函数分别对应的第一语义特征向量输入至已训练的内核异常分类模型,利用已训练的内核异常分类模型中的第一网络层对多个调用函数中的目标调用函数对应的第一语义特征向量进行特征提取,获得目标调用函数对应的第二语义特征向量;目标执行栈信息从容器内核运行异常时产生的内核异常日志中解析得到;目标调用函数对应的第一语义特征向量用于表征目标调用函数的语义特征;目标调用函数对应的第二语义特征向量用于表征语义特征以及目标调用函数与多个调用函数中的其他调用函数之间的语义相关性。
在步骤S302中,基于已训练的内核异常分类模型中的第二网络层对多个调用函数分别对应的第二语义特征向量进行融合处理,获得目标执行栈信息对应的第三语义特征向量;第三语义特征向量用于表征目标执行栈信息的语义特征。
在步骤S303中,将第三语义特征向量输入至已训练的内核异常分类模型中的第三网络层,获得第三网络层输出的容器内核的目标内核异常类型;第三网络层用于至少依据第三语义特征向量,确定目标内核异常类型。
本申请实施例提供的内核异常类型的确定方法,由于在将多个调用函数分别对应的第一语义特征向量输入至已训练的内核异常分类模型后,可先对多个调用函数中的目标调用函数对应的第一语义特征向量进行特征提取,获得目标调用函数对应的第二语义特征向量,然后,再对多个调用函数分别对应的第二语义特征向量进行融合处理,获得目标执行栈信息对应的第三语义特征向量,之后,至少依据第三语义特征向量,确定容器内核的目标内核异常类型。
由于目标调用函数对应的第二语义特征向量用于表征语义特征以及目标调用函数与多个调用函数中的其他调用函数之间的语义相关性,因此,目标调用函数对应的第二语义特征向量能够更为精准的表征出目标调用函数在目标执行栈信息中的真实语义。在第二语义特征向量能够更为精准的表征出调用函数在目标执行栈信息中的真实语义的情况下,通过对多个调用函数分别对应的第二语义特征向量进行融合处理获得第三语义特征向量,能够使该第三语义特征向量更为精准的表征出目标执行栈信息的真实语义。由于第三语义特征向量能够更为精准的表征出目标执行栈信息的真实语义,因此,依据第三语义特征向量确定出的目标内核异常类型具有更高的准确度。
另外,由于是利用已训练的内核异常分类模型确定目标内核异常类型,因此,确定目标内核异常类型的速度和效率更好,并且利用已训练的内核异常分类模型确定目标内核异常类型,能够降低确定目标内核异常类型所需花费的人力成本。
对多个调用函数分别对应的第二语义特征向量进行融合处理是指,对多个调用函数分别对应的第二语义特征向量进行叠加。
在一种可能的实现方式中,在基于已训练的内核异常分类模型中的第二网络层对多个调用函数分别对应的第二语义特征向量进行融合处理,获得目标执行栈信息对应的第三语义特征向量时,可以先获取多个调用函数中的各调用函数分别对应的函数权重,然后,再依据函数权重,对多个调用函数对应的第二语义特征向量加权求和,得到第三语义特征向量。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准,并提供有相应的操作入口,供用户选择授权或者拒绝。
与本申请实施例提供的方法的应用示例以及方法相对应地,本申请实施例还提供一种内核异常类型的确定装置,该装置如图4所示。图4示出了本申请实施例中提供的一种内核异常类型的确定装置400的结构框图,该内核异常类型的确定装置400可以包括:
第二语义特征向量获得模块401,用于针对目标执行栈信息中的多个调用函数,对多个调用函数中的目标调用函数对应的第一语义特征向量进行特征提取,获得目标调用函数对应的第二语义特征向量;目标执行栈信息从容器内核运行异常时产生的内核异常日志中解析得到;目标调用函数对应的第一语义特征向量用于表征目标调用函数的语义特征;目标调用函数对应的第二语义特征向量用于表征语义特征以及目标调用函数与多个调用函数中的其他调用函数之间的语义相关性;
第三语义特征向量获得模块402,用于对多个调用函数分别对应的第二语义特征向量进行融合处理,获得目标执行栈信息对应的第三语义特征向量;第三语义特征向量用于表征目标执行栈信息的语义特征;
目标内核异常类型确定模块403,用于至少依据第三语义特征向量,确定容器内核的目标内核异常类型。
一种可能的实现方式中,该装置还包括:
函数精简处理单元,用于在对多个调用函数中的目标调用函数对应的第一语义特征向量进行特征提取,获得目标调用函数对应的第二语义特征向量之前,对多个调用函数中的各调用函数进行精简处理,保留各调用函数的函数名称;
名称向量化单元,用于对函数名称进行向量化,获得各调用函数对应的第一语义特征向量。
一种可能的实现方式中,名称向量化单元包括:
名称向量化子单元,用于采用上下文双向编码的编码方式对函数名称进行编码,得到各调用函数对应的第一语义特征向量。
一种可能的实现方式中,第三语义特征向量获得模块402包括:
函数权重获取子模块,用于获取多个调用函数中的各调用函数分别对应的函数权重;
加权求和子模块,用于依据函数权重,对多个调用函数对应的第二语义特征向量加权求和,得到第三语义特征向量。
一种可能的实现方式中,多个调用函数中包括至少一个使目标执行栈信息区别于其他执行栈信息的调用函数;该装置还包括:
权重配置模块,用于在获取多个调用函数中的各调用函数分别对应的函数权重之前,为至少一个使目标执行栈信息区别于其他执行栈信息的调用函数配置目标函数权重;目标函数权重大于多个调用函数中的其他调用函数对应的函数权重。
一种可能的实现方式中,目标内核异常类型确定模块403包括:
内核异常类型列表获取子模块,用于获取内核异常类型列表;内核异常类型列表记录有多个内核异常类型以及各内核异常类型对应的语义特征向量;
目标内核异常类型获得子模块,用于在内核异常类型列表中查找与第三语义特征向量对应的内核异常类型,以获得目标内核异常类型。
一种可能的实现方式中,该装置还包括:
异常解决方案查找模块,用于在至少依据第三语义特征向量,确定容器内核的目标内核异常类型之后,在用于记录内核异常情况的数据库中查找目标内核异常类型对应的异常解决方案。
本申请实施例各装置中的各模块的功能可以参见上述方法中的对应描述,并具备相应的有益效果,在此不再赘述。
与本申请实施例提供的内核异常类型的确定方法相对应地,本申请实施例还提供另一种内核异常类型的确定装置,该装置如图4所示。图4示出了本申请实施例中提供的另一种内核异常类型的确定装置400的结构框图,该内核异常类型的确定装置400可以包括:
第二语义特征向量获得模块401,用于将目标执行栈信息中的多个调用函数分别对应的第一语义特征向量输入至已训练的内核异常分类模型,利用已训练的内核异常分类模型中的第一网络层对多个调用函数中的目标调用函数对应的第一语义特征向量进行特征提取,获得目标调用函数对应的第二语义特征向量;目标执行栈信息从容器内核运行异常时产生的内核异常日志中解析得到;目标调用函数对应的第一语义特征向量用于表征目标调用函数的语义特征;目标调用函数对应的第二语义特征向量用于表征语义特征以及目标调用函数与多个调用函数中的其他调用函数之间的语义相关性;
第三语义特征向量获得模块402,用于基于已训练的内核异常分类模型中的第二网络层对多个调用函数分别对应的第二语义特征向量进行融合处理,获得目标执行栈信息对应的第三语义特征向量;第三语义特征向量用于表征目标执行栈信息的语义特征;
目标内核异常类型确定模块403,用于将第三语义特征向量输入至已训练的内核异常分类模型中的第三网络层,获得第三网络层输出的容器内核的目标内核异常类型;第三网络层用于至少依据第三语义特征向量,确定目标内核异常类型。
一种可能的实现方式中,第三语义特征向量获得模块402包括:
函数权重获取子模块,用于获取多个调用函数中的各调用函数分别对应的函数权重;
加权求和子模块,用于依据函数权重,对多个调用函数对应的第二语义特征向量加权求和,得到第三语义特征向量。
本申请实施例各装置中的各模块的功能可以参见上述方法中的对应描述,并具备相应的有益效果,在此不再赘述。
图5为用来实现本申请实施例的电子设备的框图。如图5所示,该电子设备包括:存储器501和处理器502,存储器501内存储有可在处理器502上运行的计算机程序。处理器502执行该计算机程序时实现上述实施例中的方法。存储器501和处理器502的数量可以为一个或多个。
该电子设备还包括:
通信接口503,用于与外界设备进行通信,进行数据交互传输。
如果存储器501、处理器502和通信接口503独立实现,则存储器501、处理器502和通信接口503可以通过总线相互连接并完成相互间的通信。该总线可以是工业标准体系结构(Industry Standard Architecture,ISA)总线、外部设备互连(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准体系结构(ExtendedIndustry StandardArchitecture,EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
可选的,在具体实现上,如果存储器501、处理器502及通信接口503集成在一块芯片上,则存储器501、处理器502及通信接口503可以通过内部接口完成相互间的通信。
本申请实施例提供了一种计算机可读存储介质,其存储有计算机程序,该程序被处理器执行时实现本申请实施例中提供的方法。
本申请实施例还提供了一种芯片,该芯片包括,包括处理器,用于从存储器中调用并运行存储器中存储的指令,使得安装有芯片的通信设备执行本申请实施例提供的方法。
本申请实施例还提供了一种芯片,包括:输入接口、输出接口、处理器和存储器,输入接口、输出接口、处理器以及存储器之间通过内部连接通路相连,处理器用于执行存储器中的代码,当代码被执行时,处理器用于执行申请实施例提供的方法。
应理解的是,上述处理器可以是中央处理器(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(FieldProgrammable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者是任何常规的处理器等。值得说明的是,处理器可以是支持进阶精简指令集机器(Advanced RISC Machines,ARM)架构的处理器。
进一步地,可选的,上述存储器可以包括只读存储器和随机存取存储器,还可以包括非易失性随机存取存储器。该存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以包括只读存储器(Read-OnlyMemory,ROM)、可编程只读存储器(ProgrammableROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(ElectricallyEPROM,EEPROM)或闪存。易失性存储器可以包括随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用。例如,静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic Random Access Memory ,DRAM) 、同步动态随机存取存储器(SynchronousDRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double Data Rate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(EnhancedSDRAM,ESDRAM)、同步连接动态随机存取存储器(Synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DRRAM)。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包括于本申请的至少一个实施例或示例中。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分。并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。
Claims (14)
1.一种容器内核异常的分类方法,包括:
针对目标调用栈信息中的多个调用函数,对所述多个调用函数中的目标调用函数对应的第一特征向量序列进行特征提取,获得所述目标调用函数对应的第二特征向量序列;所述目标调用栈信息从容器内核运行异常时产生的内核异常日志中解析得到;所述目标调用函数对应的第一特征向量序列用于表征所述目标调用函数的语义特征;所述目标调用函数对应的第二特征向量用于表征所述语义特征以及所述目标调用函数与所述多个调用函数中的其他调用函数之间的语义相关性;
对所述多个调用函数分别对应的第二特征向量序列进行融合处理,获得所述目标调用栈信息对应的第三特征向量序列;所述第三特征向量序列用于表征所述目标调用栈信息的语义特征;
至少依据所述第三特征向量序列,确定所述容器内核的目标内核异常类型。
2.根据权利要求1所述的方法,其中,在所述对所述多个调用函数中的目标调用函数对应的第一特征向量序列进行特征提取,获得所述目标调用函数对应的第二特征向量序列之前,所述方法还包括:
对所述多个调用函数中的各调用函数进行精简处理,保留所述各调用函数的函数名称;
对所述函数名称进行向量化,获得所述各调用函数对应的第一特征向量序列。
3.根据权利要求2所述的方法,其中,所述对所述函数名称进行向量化,获得所述各调用函数对应的第一特征向量序列包括:
采用上下文双向编码的编码方式对所述函数名称进行编码,得到所述各调用函数对应的第一特征向量序列。
4.根据权利要求1所述的方法,其中,所述对所述多个调用函数分别对应的第二特征向量序列进行融合处理包括:
获取所述多个调用函数中的各调用函数分别对应的函数权重;
依据所述函数权重,对所述多个调用函数对应的第二特征向量序列加权求和,得到所述第三特征向量序列。
5.根据权利要求4所述的方法,其中,所述多个调用函数中包括至少一个使所述目标调用栈信息区别于其他调用栈信息的调用函数;在所述获取所述多个调用函数中的各调用函数分别对应的函数权重之前,所述方法还包括:
为所述至少一个使所述目标调用栈信息区别于其他调用栈信息的调用函数配置目标函数权重;所述目标函数权重大于所述多个调用函数中的其他调用函数对应的函数权重。
6.根据权利要求1所述的方法,其中,所述至少依据所述第三特征向量序列,确定所述容器内核的目标内核异常类型包括:
获取内核异常类型列表;所述内核异常类型列表记录有多个内核异常类型以及各内核异常类型对应的特征向量序列;
在所述内核异常类型列表中查找与所述第三特征向量序列对应的内核异常类型,以获得所述目标内核异常类型。
7.根据权利要求1所述的方法,其中,在所述至少依据所述第三特征向量序列,确定所述容器内核的目标内核异常类型之后,所述方法还包括:
在用于记录内核异常情况的数据库中查找所述目标内核异常类型对应的异常解决方案。
8.根据权利要求1所述的方法,其中,所述容器内核包括安全容器的客户内核。
9.根据权利要求1所述的方法,其中,在所述对所述多个调用函数中的目标调用函数对应的第一特征向量序列进行特征提取,获得所述目标调用函数对应的第二特征向量序列之前,所述方法还包括:
将所述多个调用函数分别对应的第一特征向量序列输入至已训练的内核异常分类模型;所述内核异常分类模型包括第一网络层、第二网络层以及第三网络层;所述第一网络层用于对所述目标调用函数对应的第一特征向量序列进行特征提取,获得所述目标调用函数对应的第二特征向量序列;所述第二网络层用于对所述多个调用函数分别对应的第二特征向量序列进行融合处理,获得所述第三特征向量序列;所述第三网络层用于至少依据所述第三特征向量序列,确定所述目标内核异常类型;其中,所述第一网络层配置包括基于双向长短期记忆力网络的网络层。
10.根据权利要求9所述的方法,其中,所述已训练的内核异常分类模型通过如下步骤训练获得:
针对多个调用栈信息样本,依据各调用栈信息样本对应的第四特征向量序列之间的相似度,将所述多个调用栈信息样本划分为至少一个样本集合;所述第四特征向量序列用于表征调用栈信息样本的语义特征;所述样本集合包括至少一个调用栈信息样本;
针对所述至少一个样本集合进行容器内核异常类型标注,获得至少一个标注有容器内核异常类型的样本集合;
利用所述至少一个标注有容器内核异常类型的样本集合对待训练的内核异常分类模型进行模型训练,得到所述已训练的内核异常分类模型。
11.一种容器内核异常的分类方法,包括:
将目标调用栈信息中的多个调用函数分别对应的第一特征向量序列输入至已训练的内核异常分类模型,利用所述已训练的内核异常分类模型中的第一网络层对所述多个调用函数中的目标调用函数对应的第一特征向量序列进行特征提取,获得所述目标调用函数对应的第二特征向量序列;所述目标调用栈信息从容器内核运行异常时产生的内核异常日志中解析得到;所述目标调用函数对应的第一特征向量序列用于表征所述目标调用函数的语义特征;所述目标调用函数对应的第二特征向量用于表征所述语义特征以及所述目标调用函数与所述多个调用函数中的其他调用函数之间的语义相关性;
基于所述已训练的内核异常分类模型中的第二网络层对所述多个调用函数分别对应的第二特征向量序列进行融合处理,获得所述目标调用栈信息对应的第三特征向量序列;所述第三特征向量序列用于表征所述目标调用栈信息的语义特征;
将所述第三特征向量序列输入至所述已训练的内核异常分类模型中的第三网络层,获得所述第三网络层输出的所述容器内核的目标内核异常类型;所述第三网络层用于至少依据所述第三特征向量序列,确定所述目标内核异常类型。
12.根据权利要求11所述的方法,其中,所述基于所述已训练的内核异常分类模型中的第二网络层对所述多个调用函数分别对应的第二特征向量序列进行融合处理,获得所述目标调用栈信息对应的第三特征向量序列包括:
获取所述多个调用函数中的各调用函数分别对应的函数权重;
依据所述函数权重,对所述多个调用函数对应的第二特征向量序列加权求和,得到所述第三特征向量序列。
13.一种电子设备,包括存储器、处理器及存储在存储器上的计算机程序,所述处理器在执行所述计算机程序时实现权利要求1-12任一项所述的方法。
14.一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-12中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310421220.0A CN116149898B (zh) | 2023-04-17 | 2023-04-17 | 内核异常类型的确定方法、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310421220.0A CN116149898B (zh) | 2023-04-17 | 2023-04-17 | 内核异常类型的确定方法、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116149898A CN116149898A (zh) | 2023-05-23 |
CN116149898B true CN116149898B (zh) | 2023-07-21 |
Family
ID=86362174
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310421220.0A Active CN116149898B (zh) | 2023-04-17 | 2023-04-17 | 内核异常类型的确定方法、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116149898B (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115756762A (zh) * | 2022-12-15 | 2023-03-07 | 深信服科技股份有限公司 | 系统调用信息确定方法、装置、电子设备及存储介质 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7036052B2 (en) * | 2001-10-22 | 2006-04-25 | Microsoft Corporation | Remote error detection by preserving errors generated throughout a software stack within a message |
US20060059486A1 (en) * | 2004-09-14 | 2006-03-16 | Microsoft Corporation | Call stack capture in an interrupt driven architecture |
US7716647B2 (en) * | 2004-10-01 | 2010-05-11 | Microsoft Corporation | Method and system for a system call profiler |
CN109815152A (zh) * | 2019-01-31 | 2019-05-28 | 科大讯飞股份有限公司 | 程序崩溃类型预测方法及系统 |
CN111563234A (zh) * | 2020-04-23 | 2020-08-21 | 华南理工大学 | 一种主机异常检测中系统调用数据的特征提取方法 |
CN113918370A (zh) * | 2021-10-11 | 2022-01-11 | 北京罗克维尔斯科技有限公司 | 类别确定方法、装置、电子设备和存储介质 |
CN114816821A (zh) * | 2022-04-29 | 2022-07-29 | 阿里巴巴(中国)有限公司 | 内核崩溃报告的分类方法及装置 |
CN115344416A (zh) * | 2022-08-31 | 2022-11-15 | 济南浪潮数据技术有限公司 | 异常日志筛查方法、系统、装置及计算机可读存储设备 |
CN115617564A (zh) * | 2022-11-10 | 2023-01-17 | 阿里巴巴(中国)有限公司 | 针对内核异常的处理方法、装置、电子设备及存储介质 |
CN115934666A (zh) * | 2022-11-28 | 2023-04-07 | 中南大学 | 基于图卷积神经网络的特征增强云容器异常日志分类方法 |
-
2023
- 2023-04-17 CN CN202310421220.0A patent/CN116149898B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115756762A (zh) * | 2022-12-15 | 2023-03-07 | 深信服科技股份有限公司 | 系统调用信息确定方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN116149898A (zh) | 2023-05-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11580222B2 (en) | Automated malware analysis that automatically clusters sandbox reports of similar malware samples | |
US20190087208A1 (en) | Method and apparatus for loading elf file of linux system in windows system | |
CN113961919B (zh) | 恶意软件检测方法和装置 | |
CN112380401B (zh) | 业务数据的核对方法和装置 | |
CN112308627B (zh) | 基于区块链和人工智能的广告数据接入方法及大数据中心 | |
CN113254935A (zh) | 恶意文件识别方法、装置及存储介质 | |
US20240241954A1 (en) | Method of detecting android malware based on heterogeneous graph and apparatus thereof | |
CN110955758A (zh) | 代码检测方法、代码检测服务器及索引服务器 | |
CN112308626B (zh) | 基于区块链和人工智能的广告推送方法及大数据挖掘中心 | |
CN116149898B (zh) | 内核异常类型的确定方法、电子设备及存储介质 | |
CN111709016B (zh) | 一种基层医保结算数据防护方法及系统 | |
CN106502707B (zh) | 代码生成方法及装置 | |
CN116305131B (zh) | 脚本静态去混淆方法及系统 | |
CN115328753B (zh) | 一种故障预测方法及装置、电子设备、存储介质 | |
CN111240790A (zh) | 一种应用的多语言适配方法、装置、客户端和存储介质 | |
CN110019295B (zh) | 数据库检索方法、装置、系统以及存储介质 | |
CN110968500A (zh) | 一种测试用例的执行方法及装置 | |
CN113849811A (zh) | 一种共享虚拟资源分析方法及装置 | |
CN110472415B (zh) | 一种恶意程序的确定方法及装置 | |
CN115081006A (zh) | 一种敏感数据的处理方法、装置及设备 | |
CN111753548A (zh) | 信息获取方法及装置、计算机存储介质、电子设备 | |
CN111324732A (zh) | 模型训练方法、文本处理方法、装置及电子设备 | |
CN116383390B (zh) | 一种用于经营管理信息的非结构化数据存储方法及云平台 | |
CN116560665B (zh) | 数据生成和处理的方法和装置、信用卡营销规则引擎系统 | |
CN117950962A (zh) | 异常调用识别方法、装置、电子设备及介质 |
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 |