CN117892301A - 少样本恶意软件的分类方法、装置、设备及介质 - Google Patents
少样本恶意软件的分类方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN117892301A CN117892301A CN202410060040.9A CN202410060040A CN117892301A CN 117892301 A CN117892301 A CN 117892301A CN 202410060040 A CN202410060040 A CN 202410060040A CN 117892301 A CN117892301 A CN 117892301A
- Authority
- CN
- China
- Prior art keywords
- preset
- neural network
- malicious software
- color space
- model
- 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
- 238000000034 method Methods 0.000 title claims abstract description 66
- 238000013145 classification model Methods 0.000 claims abstract description 113
- 238000013528 artificial neural network Methods 0.000 claims abstract description 112
- 230000008859 change Effects 0.000 claims abstract description 10
- 238000004422 calculation algorithm Methods 0.000 claims description 106
- 238000012549 training Methods 0.000 claims description 82
- 230000000007 visual effect Effects 0.000 claims description 43
- 238000012360 testing method Methods 0.000 claims description 24
- 238000003491 array Methods 0.000 claims description 20
- 238000010586 diagram Methods 0.000 claims description 17
- 238000012795 verification Methods 0.000 claims description 15
- 238000013507 mapping Methods 0.000 claims description 12
- 238000006243 chemical reaction Methods 0.000 claims description 11
- 238000003062 neural network model Methods 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 7
- 238000003780 insertion Methods 0.000 claims description 6
- 230000037431 insertion Effects 0.000 claims description 6
- 239000003086 colorant Substances 0.000 claims description 3
- 230000000694 effects Effects 0.000 abstract description 6
- 230000008569 process Effects 0.000 description 14
- 238000012545 processing Methods 0.000 description 11
- 230000009286 beneficial effect Effects 0.000 description 10
- 238000004891 communication Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 8
- 238000004458 analytical method Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 7
- 238000011478 gradient descent method Methods 0.000 description 5
- 230000003068 static effect Effects 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 210000002569 neuron Anatomy 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000008447 perception Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000011176 pooling Methods 0.000 description 2
- KLDZYURQCUYZBL-UHFFFAOYSA-N 2-[3-[(2-hydroxyphenyl)methylideneamino]propyliminomethyl]phenol Chemical compound OC1=CC=CC=C1C=NCCCN=CC1=CC=CC=C1O KLDZYURQCUYZBL-UHFFFAOYSA-N 0.000 description 1
- 238000012896 Statistical algorithm Methods 0.000 description 1
- 241000700605 Viruses Species 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 201000001098 delayed sleep phase syndrome Diseases 0.000 description 1
- 208000033921 delayed sleep phase type circadian rhythm sleep disease Diseases 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 239000003623 enhancer Substances 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000005206 flow analysis Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- ZXQYGBMAQZUVMI-GCMPRSNUSA-N gamma-cyhalothrin Chemical compound CC1(C)[C@@H](\C=C(/Cl)C(F)(F)F)[C@H]1C(=O)O[C@H](C#N)C1=CC=CC(OC=2C=CC=CC=2)=C1 ZXQYGBMAQZUVMI-GCMPRSNUSA-N 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000007477 logistic regression Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000037361 pathway Effects 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000012706 support-vector machine Methods 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Image Analysis (AREA)
Abstract
本发明涉及一种少样本恶意软件的分类方法、装置、设备及介质,属于网络安全的技术领域,所述方法包括:获取的待分类恶意软件;所述待分类恶意软件为对计算机系统的运行造成危害的软件;将所述待分类恶意软件转换为多个Lab色彩空间对照图;将所述多个Lab色彩空间对照图输入至预设的神经网络分类模型中,得到所述待分类恶意软件的分类结果,其中,所述预设的神经网络分类模型是基于不同的恶意软件各自对应的多个Lab色彩空间对照图进行训练得到的。本申请具有对于小样本量和高动态变化的恶意软件,提高分类性能和泛化能力的效果。
Description
技术领域
本发明涉及网络安全的技术领域,尤其涉及一种少样本恶意软件的分类方法、装置、设备及介质。
背景技术
随着信息技术的快速发展,恶意软件已经成为网络数字世界的主要威胁之一。恶意软件可以针对个人用户、企业和社会造成严重破坏,因此对其进行分析和检测至关重要。传统的分析方法包括静态分析、动态分析和混合分析,这些方法在面对新型恶意软件时可能存在效率和准确性问题。
为了解决这些问题,传统的机器学习方法被引入恶意软件分类和检测中。这些方法通过提取恶意软件的特征,如字符串和字节序列,并使用诸如朴素贝叶斯、决策树、支持向量机和逻辑回归等算法进行分类。然而,这些方法需要人工设计和选择特征,可能导致效率低下且覆盖不全。此外,它们还可能受到恶意软件的规避技术影响,导致错误的分类。
随着深度学习技术的发展,其在大规模数据处理和复杂模式识别方面的优势使得其在恶意软件分类中具有巨大潜力。然而,深度学习方法需要大量标记数据,这在恶意软件领域中可能是挑战性的。此外,高级恶意软件可能只有少量样本,导致过拟合问题,影响分类性能和泛化能力。
为了解决小样本量恶意软件数据集的问题,少样本学习和元学习被引入。少样本学习方法使模型能够从少量示例中学习,而元学习则使模型能够快速适应新任务。然而,这些方法的有效性高度依赖于样本质量和数据平衡。尽管现有技术为恶意软件分类提供了不同的方法,但它们仍面临效率和准确性的挑战。特别是对于小样本量和高动态变化的恶意软件,需要更有效的分类方法来提高性能和泛化能力。
发明内容
本发明所要解决的技术问题是:提高对小样本量和高动态变化的新型恶意软件分类的准确性。
本发明解决上述技术问题的技术方案如下:
第一方面,本申请提供一种少样本恶意软件的分类方法,采用如下技术方案:
一种少样本恶意软件的分类方法,包括:
获取的待分类恶意软件;所述待分类恶意软件为对计算机系统的运行造成危害的软件;
将所述待分类恶意软件转换为多个Lab色彩空间对照图;
将所述多个Lab色彩空间对照图输入至预设的神经网络分类模型中,得到所述待分类恶意软件的分类结果,其中,所述预设的神经网络分类模型是基于不同的恶意软件各自对应的多个Lab色彩空间对照图进行训练得到的。
本发明的有益效果是:通过将待分类恶意软件转换为多个Lab色彩空间对照图,可达到快速从少样本扩展到大量样本,以及将不平衡数据集快速进行平衡操作,随着通过Lab空间动态平衡方法将恶意软件数据增强多个Lab色彩空间对照图,可以使少量的恶意软件样本得到相当可观数量的恶意软件样本数据,并使用恶意软件对应的多个Lab色彩空间对照图训练神经网络分类模型,提高了根据神经网络分类模型对恶意软件分类的准确性。
在上述技术方案的基础上,本发明还可以做如下改进。
进一步,所述将所述待分类恶意软件转换为多个Lab色彩空间对照图,包括:
将所述待分类恶意软件转换为预设格式的可视化灰度图;
对所述可视化灰度图进行数据增强,得到数据增强灰度图;
分别对所述可视化灰度图和所述数据增强灰度图进行Lab色彩空间映射,得到所述待分类恶意软件对应的多个Lab色彩空间对照图。
采用上述进一步方案的有益效果是:通过将恶意软件转换为可视化灰度图,使得恶意软件的分析和识别过程更加直观,通过数据增强技术,如插入代码、添加抖动和高斯噪声,可以增加数据集的多样性和丰富性,提高神经网络分类模型的泛化能力,使其能够更好地适应各种可能的恶意软件变种,将可视化灰度图和数据增强灰度图转换为Lab色彩空间对照图,可以捕捉到更多的细节和特征,从而更全面地描述恶意软件的特性,提高分类的准确性和可靠性。
进一步,所述数据增强灰度图包括插入代码灰度图、添加抖动灰度图和插入高斯噪声灰度图,所述分别对所述可视化灰度图和所述数据增强灰度图进行Lab色彩空间映射,得到所述待分类恶意软件对应的多个Lab色彩空间对照图,包括:
计算所述可视化灰度图、所述插入代码灰度图、所述添加抖动灰度图和所述插入高斯噪声灰度图分别与所述可视化灰度图的相似度;
根据各个所述的相似度,对所述可视化灰度图、所述插入代码灰度图、所述添加抖动灰度图和所述插入高斯噪声灰度图进行排序;
按照排序结果和预设组合规则,对所述可视化灰度图、所述插入代码灰度图、所述添加抖动灰度图和所述插入高斯噪声灰度图进行组合,得到多个灰度图像组合,每个所述灰度图像组合包括所述可视化灰度图、所述插入代码灰度图、所述添加抖动灰度图和所述插入高斯噪声灰度图中的任意三个灰度图;
对于每组所述灰度图像组合,根据预设的格式转换算法将所述灰度图像组合中的每个灰度图转换为NumPy数组;
对于每组所述灰度图像组合,将所述灰度图像组合中的各个灰度图对应的NumPy数组,按照Lab色彩空间的三个通道中每个通道对应的颜色进行划分,得到每个所述通道对应的NumPy数组;
对于每组所述灰度图像组合,根据该灰度图像组合对应的各个所述通道对应的NumPy数组,得到该灰度图像组合对应的Lab色彩空间对照图;
根据各个所述灰度图像组合对应的Lab色彩空间对照图,得到所述待分类恶意软件对应的多个Lab色彩空间对照图。
采用上述进一步方案的有益效果是:通过在Lab色彩空间中映射灰度图,可以更好地捕捉和表示恶意软件的视觉特征,Lab色彩空间具有感知均匀性,能够更好地处理颜色差异,从而更准确地描述恶意软件的特性。通过预设组合规则对灰度图进行组合,得到多个灰度图像组合,并通过将灰度图像组合中的灰度图合成Lab色彩空间图,将一个恶意软件数据增强为多个Lab色彩空间图,提高了恶意软件分类的准确性和可靠性。也为神经网络分类模型的训练提供了更多的数据样本。
进一步,所述预设的神经网络分类模型的训练方法,包括:
获取增强数据集,所述增强数据集包括多个恶意软件样本各自对应的多个Lab色彩空间对照图;
将所述增强数据集划分为元训练集和元验证集;
基于所述元训练集对预设的MI-MAML算法模型进行神经网络模型训练,得到初始神经网络分类模型;所述预设的MI-MAML算法模型包括四个卷积层,每个所述卷积层后连接有dropout层;
基于所述元验证集对所述初始神经网络分类模型进行验证,直到训练出满足预设条件的初始神经网络分类模型,将满足预设条件的初始神经网络分类模型作为所述神经网络分类模型。
采用上述进一步方案的有益效果是:通过使用增强数据集,其中包括多个恶意软件样本分别对应的多个Lab色彩空间对照图,可以增加数据集的多样性和丰富性。这有助于提高神经网络分类模型的泛化能力和适应各种不同的恶意软件样本。预设的MI-MAML算法模型包括四个卷积层,每个卷积层后设置有dropout层,这种模型结构能够更好地捕捉和提取恶意软件样本在Lab色彩空间中的特征,提高分类的准确性和可靠性。
进一步,所述基于所述元训练集对预设的MI-MAML算法模型进行神经网络模型训练,得到初始神经网络分类模型,包括:
步骤S11,根据所述元训练集,获取训练样本,所述训练样本中包括至少一批任务,每批任务中包括多个任务,每个所述任务对应一种恶意软件;
步骤S12,对于每批任务,从该批任务中选择一个任务作为当前任务对待训练的MI-MAML算法模型进行训练,得到所述当前任务对应的训练结果、梯度参数信息和学习率,所述待训练的MI-MAML算法模型为初始MI-MAML算法模型;
步骤S13,根据当前迭代次数、当前内循环的循环步骤和预设的学习率算法,对所述当前任务对应的学习率进行更新,得到更新后的学习率,所述当前内循环的循环步骤为所述当前任务在预设的循环周期中对应的循环步骤,对于每批任务,所述当前迭代次数与所述当前任务在该批任务中的选择次序相等;
S14,根据每批任务对应的各个训练结果,确定所述待训练的MI-MAML算法模型对应的损失值;
S15,在所述损失值不满足预设的训练结束条件时,根据所述梯度参数信息更新所述待训练的MI-MAML算法模型的全局参数,得到更新后的MI-MAML算法模型;
S16,对于每批任务,从该批任务中选择一个新的任务作为所述当前任务,将所述更新后的MI-MAML算法模型作为所述待训练的MI-MAML算法模型,重复执行所述S12至S16,直到该批任务中的每个任务均作为当前任务进行模型训练,将最后一次更新后的MI-MAML算法模型作为所述神经网络分类模型。
采用上述进一步方案的有益效果是:在训练过程中,根据损失值和预设的梯度下降方法更新MI-MAML算法模型的模型参数,并生成任务对应的梯度参数信息,可以根据训练过程中的反馈动态调整模型参数和学习率,提高训练的效率和稳定性。在训练完成后,根据每个执行的当前批次任务中各个任务对应的梯度参数信息、外循环学习率和预设的梯度下降法更新预设的MI-MAML算法模型的全局参数,实现全局优化,进一步提高模型的性能和准确性。
进一步,所述预设的学习率算法为:
其中,其中,α1为预设的MI-MAML算法模型的初始化的内循环学习率;Δ为预设的MI-MAML算法模型内循环学习率的变化率,i为预设的MI-MAML算法模型的当前迭代次数,n为预设的MI-MAML算法模型的当前内循环的循环步数。
采用上述进一步方案的有益效果是:通过每次内循环迭代后,都会根据当前的循环步数i和学习率αi更新学习率α(i+1),动态地调整学习率,以更好地适应模型训练的需求。
进一步,所述学习率还包括外循环学习率,所述基于所述元测试集对所述神经网络分类模型进行测试,直到训练出满足预设条件的神经网络分类模型,包括:
根据所述元测试集对所述神经网络分类模型进行测试,得到所述神经网络分类模型的测试损失值;
若所述神经网络分类模型的测试损失值未达到预设值时,根据预设的衰减算法,将所述外循环学习率进行衰减,得到新的外循环学习率,按照所述新的外循环学习率更新所述神经网络分类模型,直至更新后的所述神经网络分类模型满足预设条件,得到满足预设条件的神经网络分类模型。
采用上述进一步方案的有益效果是:通过根据模型的损失值进行判断,以决定是否继续训练或调整学习率,如果模型的损失值未达到预设值,那么根据预设的衰减算法动态调整学习率,动态调整学习率,提高神经网络分类模型收敛性能和训练效果。
第二方面,本申请提供一种少样本恶意软件的分类装置,采用如下技术方案:
一种少样本恶意软件的分类装置,包括:
获取模块,用于获取待分类恶意软件;所述待分类恶意软件为对计算机系统的运行造成危害的软件;
转换模块,将所述待分类恶意软件转换为多个Lab色彩空间对照图;
分类模块,将所述多个Lab色彩空间对照图输入至预设的神经网络分类模型中,得到所述待分类恶意软件的分类结果,其中,所述预设的神经网络分类模型是基于不同的恶意软件各自对应的多个Lab色彩空间对照图进行训练得到的。
本发明的有益效果是:通过将待分类恶意软件转换为多个Lab色彩空间对照图,可达到快速从少样本扩展到大量样本,以及将不平衡数据集快速进行平衡操作,随着通过Lab空间动态平衡方法将恶意软件数据增强多个Lab色彩空间对照图,可以使少量的恶意软件样本得到相当可观数量的恶意软件样本数据,并使用恶意软件对应的多个Lab色彩空间对照图训练神经网络分类模型,提高了根据神经网络分类模型对恶意软件分类的准确性。
第三方面,本申请提供一种电子设备,采用如下技术方案:
一种电子设备,包括存储器和处理器,所述存储器上存储有能够被处理器加载并执行第一方面任一项所述的少样本恶意软件的分类方法的计算机程序。
本发明的有益效果是:处理器执行存储器中存储少样本恶意软件的分类方法,通过将待分类恶意软件转换为多个Lab色彩空间对照图,可达到快速从少样本扩展到大量样本,以及将不平衡数据集快速进行平衡操作,并使用恶意软件对应的多个Lab色彩空间对照图训练神经网络分类模型,提高了根据神经网络分类模型对恶意软件分类的准确性。
第四方面,本申请提供一种计算机可读存储介质,采用如下技术方案:
一种计算机可读存储介质,存储有能够被处理器加载并执行第一方面任一项所述的少样本恶意软件的分类的计算机程序。
本发明的有益效果是:处理器加载并执行计算机可读存储介质中存储的计算机程序,电子设备通过将待分类恶意软件转换为多个Lab色彩空间对照图,可达到快速从少样本扩展到大量样本,以及将不平衡数据集快速进行平衡操作,并使用恶意软件对应的多个Lab色彩空间对照图训练神经网络分类模型,提高了根据神经网络分类模型对恶意软件分类的准确性。
附图说明
图1为本发明一种少样本恶意软件的分类方法的流程示意图;
图2为本发明一种少样本恶意软件的分类方法中将恶意软件转换为数据增强灰度图的示意图;
图3为本发明一种少样本恶意软件的分类方法中将增强可视化灰度图映射Lab色彩空间对照图的示意图;
图4为本发明神经网络分类模型训练的示意图;
图5为本发明神经网络分类模型的内循环学习率变化规律的示意图;
图6为本发明一种少样本恶意软件的分类装置的结构框图;
图7为本发明一种电子设备的结构框图。
具体实施方式
以下结合附图对本申请作进一步详细说明。
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
另外,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,如无特殊说明,一般表示前后关联对象是一种“或”的关系。
本申请实施例提供一种少样本恶意软件的分类方法,该少样本恶意软件的分类方法可由电子设备执行,该电子设备可以为服务器,也可以为移动终端设备,其中服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云计算服务的云服务器;移动终端设备可以是笔记本电脑、台式计算机等,但不局限于此。
下面结合说明书附图对本申请实施例作进一步详细描述。如图1所示,一种少样本恶意软件的分类方法包括步骤S1~S3:
步骤S1,获取的待分类恶意软件;
在一种实施方式中,恶意软件是指从网络中收集到的、可能对计算机系统造成危害的软件程序。这些软件程序可能是自主运行的病毒、蠕虫、特洛伊木马等,也可能是需要用户触发或交互的间谍软件、广告软件等。待分类恶意软件为需要进行测试的新恶意软件样本(元测试集)。本申请实施方式中,可通过安全监测系统、网络流量分析等方式,从互联网上收集待分类恶意软件的样本。
步骤S2,将所述待分类恶意软件转换为多个Lab色彩空间对照图;
在一种实施方式中,具体的,步骤S2包括如下子步骤:
步骤S21,基于预设的恶意软件可视化算法将所述待分类恶意软件转换为预设格式的可视化灰度图;
在一种实施方式中,如图2所示,电子设备基于图像处理和计算机视觉技术的恶意软件可视化算法,对待分类恶意软件进行二进制代码的解码和可视化,将恶意软件的二进制代码转换为可视化灰度图。在转换过程中,可以使用预定义的参数和阈值作为预设格式,将恶意软件的二进制代码按照一定的规则转换为灰度图像。该灰度图像具有预设的格式和大小,以便于后续的数据增强和Lab色彩空间映射。
步骤S22,对所述可视化灰度图进行数据增强,得到数据增强灰度图,所述数据增强灰度图包括插入代码灰度图、添加抖动灰度图和插入高斯噪声灰度图;
在一种实施方式中,如图2所示,对所述可视化灰度图进行数据增强,将一张可视化灰度图转化为三张灰度图,分别为插入代码灰度图、添加抖动灰度图和插入高斯噪声灰度图。
其中,插入代码灰度图通过在可视化灰度图中随机插入恶意软件的代码片段,生成一个新的灰度图。增加数据的多样性和丰富性,提高分类模型的泛化能力。添加抖动灰度图通过在灰度图中添加随机抖动效果,生成一个新的灰度图,使得灰度图像具有一定的噪声和变化,提高数据的复杂度和模型的鲁棒性。插入高斯噪声灰度图通过在可视化灰度图中随机加入高斯噪声,模拟真实环境中恶意软件样本可能存在的噪声和干扰,进一步提高数据的多样性和模型的鲁棒性。
步骤S23,分别对所述可视化灰度图和所述数据增强灰度图进行Lab色彩空间映射,得到所述待分类恶意软件对应的多个Lab色彩空间对照图。
在一种实施方式中,所述分别对所述可视化灰度图和所述数据增强灰度图进行Lab色彩空间映射,得到所述待分类恶意软件对应的多个Lab色彩空间对照图,包括:
首先,计算所述可视化灰度图、所述插入代码灰度图、所述添加抖动灰度图和所述插入高斯噪声灰度图分别与所述可视化灰度图的相似度;
其次,根据各个所述的相似度,对所述可视化灰度图、所述插入代码灰度图、所述添加抖动灰度图和所述插入高斯噪声灰度图进行排序;
之后,按照排序结果和预设组合规则,对所述可视化灰度图、所述插入代码灰度图、所述添加抖动灰度图和所述插入高斯噪声灰度图进行组合,得到多个灰度图像组合,每个所述灰度图像组合包括所述可视化灰度图、所述插入代码灰度图、所述添加抖动灰度图和所述插入高斯噪声灰度图中的任意三个灰度图;
之后,对于每组所述灰度图像组合,根据预设的格式转换算法将所述灰度图像组合中的每个灰度图转换为NumPy数组;
对于每组所述灰度图像组合,将所述灰度图像组合中的各个灰度图对应的NumPy数组,按照Lab色彩空间的三个通道中每个通道对应的颜色进行划分,得到每个所述通道对应的NumPy数组
对于每组所述灰度图像组合,根据该灰度图像组合对应的各个所述通道对应的NumPy数组,得到该灰度图像组合对应的Lab色彩空间对照图;在本申请实施方式中,使用colorspacious库进行颜色空间的转换;
最后,根据各个所述灰度图像组合对应的Lab色彩空间对照图,得到所述待分类恶意软件对应的多个Lab色彩空间对照图。
在一种实施方式中,电子设备根据图像处理和计算机视觉中的相似度计算方法,分别计算可视化灰度图、插入代码灰度图、添加抖动灰度图和插入高斯噪声灰度图与原始可视化灰度图的相似度,按照相似度将每个灰度图排序,得到顺序为可视化灰度图、插入代码灰度图、添加抖动灰度图和插入高斯噪声灰度图,并分别定义为a、b、c和d。
之后,将四张灰度图进行组合,生成四个灰度图像组合,分别是aaa组合、abc组合、abd组合和acd组合。其中aaa中包含三张a图,abc组合包含一张a图、一张b图和一张c图,abd组合包含一张a图、一张b图和一张d图,acd组合包含一张a图、一张c图和一张d图。
图3为将增强可视化灰度图映射Lab色彩空间对照图的示意图,如图3所示,对于每个组合的三个灰度图,电子设备预设的格式转换算法将其转换为NumPy数组格式。需要说明的是,NumPy数组是用于存储和处理多维数组的Python库,适用于后续的数据处理和模型训练。电子设备根据colorspacious库将这三个NumPy数组依次作为Lab色彩空间的三个通道,即L*(亮度)、a*(从红色到绿色的范围)、b*(从黄色到蓝色的范围),合成一个Lab色彩空间图。这样每个组合都能得到一个Lab色彩空间对照图,将各个所述Lab色彩空间图的Lab数组的值缩放至预设范围,预设范围为0-255的范围,得到所述待分类恶意软件对应的多个Lab色彩空间对照图。
由于Lab色彩空间具有感知均匀性,能够更好地处理颜色差异,所以更准确地描述恶意软件的特性,将待分类恶意软件的可视化灰度图的纹理特征显示的更加明确。
通过将恶意软件转换为可视化灰度图,使得恶意软件的分析和识别过程更加直观,通过数据增强技术,如插入代码、添加抖动和高斯噪声,可以增加数据集的多样性和丰富性,提高神经网络分类模型的泛化能力,使其能够更好地适应各种可能的恶意软件变种。通过将可视化灰度图和数据增强灰度图转换为多个Lab色彩空间对照图,可以捕捉到更多的细节和特征,从而更全面地描述恶意软件的特性,提高分类的准确性和可靠性。也为神经网络分类模型的训练提供了更多的数据样本。
步骤S3,将所述多个Lab色彩空间对照图输入至预设的神经网络分类模型中,得到所述待分类恶意软件的分类结果,其中,所述预设的神经网络分类模型是基于不同的恶意软件各自对应的多个Lab色彩空间对照图进行训练得到的。
在一种实施方式中,如图4所示,将多个Lab色彩空间对照图作为神经网络分类模型的元测试集,输入至预设的神经网络分类模型中,得到所述待分类恶意软件的分类结果。
其中,所述预设的神经网络分类模型基于预设的恶意软件对应的多个Lab色彩空间对照图进行训练,包括如下步骤:
首先,获取增强数据集,所述增强数据集包括多个恶意软件样本各自对应的多个Lab色彩空间对照图;
在一种实施方式中,采用上述步骤S2的方式将恶意软件样本转换为多个Lab色彩空间对照图样本,选择出具有代表性的图像,形成增强数据集。
其次,基于预设的统计算法将所述增强数据集划分为元训练集和元验证集;元训练集用于训练神经网络模型,元验证集用于验证模型的性能和防止过拟合。
之后,基于所述元训练集对预设的MI-MAML算法模型进行神经网络模型训练,得到初始神经网络分类模型;所述预设的MI-MAML算法模型包括四个卷积层和全连接层,每个所述卷积层后设置有batchnorm层、池化层和dropout层,设置dropout率为0.25,每个所述卷积层包括64个3x3卷积核,每个卷积层的激活函数是ELU;所述全连接层包括N个神经元,每个所述神经元对应待分类的类别,激活函数为softmax;
最后,基于所述元验证集对所述初始神经网络分类模型进行验证,直到训练出满足预设条件的初始神经网络分类模型,将满足预设条件的初始神经网络分类模型作为所述神经网络分类模型。
通过使用增强数据集,其中包括多个恶意软件样本分别对应的多个Lab色彩空间对照图,可以增加数据集的多样性和丰富性。这有助于提高神经网络分类模型的泛化能力和适应各种不同的恶意软件样本。预设的MI-MAML算法模型包括四个卷积层和全连接层,每个卷积层后设置有batchnorm层、池化层和dropout层,每个卷积层包括64个3x3卷积核,这种模型结构能够更好地捕捉和提取恶意软件样本在Lab色彩空间中的特征,提高分类的准确性和可靠性。
其中,作为所述基于所述元训练集对预设的MI-MAML算法模型进行神经网络模型训练,得到初始神经网络分类模型的一种实施方式,包括步骤S11~S18:
步骤S11,根据所述元训练集,获取训练样本,所述训练样本中包括至少一批任务,每批任务中包括多个任务,每个所述任务对应一种恶意软件;
在一种实施方式中,在所述元训练集中抽取训练样本,生成包含至少一批任务的任务集合,并初始化预设的MI-MAML算法模型的参数、周期、内循环学习率和外循环学习率;设定初始的学习率为α1,学习率变化周期为4n。需要说明的是,选择周期4n是因为它经常在作为元学习使用,但具体选择取决于问题和实验设置。周期可以是一个固定的值,也可以根据任务或数据集的大小动态调整。
步骤S12,对于每批任务,从该批任务中选择一个任务作为当前任务对待训练的MI-MAML算法模型进行训练,得到所述当前任务对应的训练结果、梯度参数信息和学习率,所述待训练的MI-MAML算法模型为初始MI-MAML算法模型;
在一种实施方式中,输入任务分布信息,电子设备获取任务分布信息,所述任务分布信息包括所需执行的任务批次数量和任务定义,该任务定义为分类任务;
之后,对所述任务集合进行任务采样,在所述任务集合中确定一批任务,将所述一批任务作为当前批次任务,这些任务将用于当前的学习迭代。确保每次迭代都使用不同的任务。
步骤S13,根据当前迭代次数、当前内循环的循环步骤和预设的学习率算法,对所述当前任务对应的学习率进行更新,得到更新后的学习率,所述当前内循环的循环步骤为所述当前任务在预设的循环周期中对应的循环步骤,对于每批任务,所述当前迭代次数与所述当前任务在该批任务中的选择次序相等;
在一种实施方式中,电子设备从所述当前批次任务中选择一个任务对所述预设的MI-MAML算法模型进行训练,对于选择的任务,基于预设的交叉熵损失函数,计算所述预设的MI-MAML算法模型的损失值;通过计算损失函数的梯度并反向传播,逐步调整参数以减少损失。
根据所述损失值和预设的梯度下降方法更新所述预设的MI-MAML算法模型的模型参数,并生成所述任务对应的梯度参数信息;该过程是迭代进行的,每次更新参数后,都会重新计算损失值,直到损失值达到预设的阈值或迭代次数。
根据所述预设的MI-MAML算法模型的当前迭代次数、当前内循环的循环步数和所述预设的学习率算法,更新所述预设的所述MI-MAML算法模型的学习率。
在一种实施方式中,所述预设的学习率算法为:
其中,α1为预设的MI-MAML算法模型的初始化的内循环学习率;Δ为预设的MI-MAML算法模型内循环学习率的变化率,i为预设的MI-MAML算法模型的当前迭代次数,n为预设的MI-MAML算法模型的当前内循环的循环步数。
预设的学习率算法的变化率Δ用于控制预设的MI-MAML算法模型的学习率的调整幅度。Δ可以是不同的值,如Δ1、Δ2,它们分别对应不同的学习率调整规则。
图5为神经网络分类模型的内循环学习率变化规律的示意图。
如图5所示,在MI-MAML算法模型不同的循环步数下,学习率可以按照不同的方式进行调整。具体来说,可以分为以下几个阶段:
阶段1:在循环步数i从1到n的情况下,学习率α(i+1)会比原学习率αi增加Δ1;
阶段2:在循环步数i从n+1到2n的情况下,学习率α(i+1)会比原学习率αi减少Δ1;
阶段3:在循环步数i从2n+1到3n的情况下,学习率α(i+1)会比原学习率αi减少Δ2;
阶段4:在循环步数i从3n+1到4n的情况下,学习率α(i+1)会比原学习率αi增加Δ2。这些规则可以根据实际需求进行调整,以达到更好的训练效果。
在训练过程中,根据上述规则,每次内循环迭代后,都会根据当前的循环步数i和学习率αi更新学习率α(i+1)。通过这种方式,可以动态地调整学习率,以更好地适应模型训练的需求。通过利用预设的学习率算法动态地调整MI-MAML算法模型的学习率,从而优化模型的训练效果,提高神经网络分类模型的性能和鲁棒性。
S14,根据每批任务对应的各个训练结果,确定所述待训练的MI-MAML算法模型对应的损失值;
S15,在所述损失值不满足预设的训练结束条件时,根据所述梯度参数信息更新所述待训练的MI-MAML算法模型的全局参数,得到更新后的MI-MAML算法模型;
S16,对于每批任务,从该批任务中选择一个新的任务作为所述当前任务,将所述更新后的MI-MAML算法模型作为所述待训练的MI-MAML算法模型,重复执行所述S12至S16,直到该批任务中的每个任务均作为当前任务进行模型训练,将最后一次更新后的MI-MAML算法模型作为所述神经网络分类模型。
在训练过程中,通过根据损失值和预设的梯度下降方法更新MI-MAML算法模型的模型参数,并生成任务对应的梯度参数信息,可以根据训练过程中的反馈动态调整模型参数和学习率,提高训练的效率和稳定性。在训练完成后,通过根据每个执行的当前批次任务中各个任务对应的梯度参数信息、外循环学习率和预设的梯度下降法更新预设的不可知学习模型的全局参数,实现全局优化,进一步提高模型的性能和准确性。
作为基于所述元验证集对神经网络分类模型进行验证,直到训练出满足预设条件的神经网络分类模型的一种实施方式,包括:
根据所述元测试集对所述神经网络分类模型进行测试,得到所述神经网络分类模型的测试损失值;
若所述神经网络分类模型的测试损失值未达到预设值时,根据预设的衰减算法,将所述外循环学习率进行衰减,得到新的外循环学习率,按照所述新的外循环学习率更新所述神经网络分类模型,直至更新后的所述神经网络分类模型满足预设条件,得到满足预设条件的神经网络分类模型。
在一种实施方式中,具体的,步骤S31,在所述元验证集中选取至少一批任务,从所述选取至少一批任务中选择一个任务对所述神经网络分类模型进行迭代训练,对于选择的任务,基于预设的交叉熵损失函数计算所述选择的任务对应的损失值;
步骤S32,判断所述选择的任务对应的迭代次数是否达到预设次数;
若所述选择的任务对应的迭代次数达到预设次数,则执行步骤S33;若所述选择的任务对应的迭代次数未达到预设次数,则从至少一批任务中选择一个其他任务进行测试,基于预设的交叉熵损失函数计算所述选择的任务对应的损失值;
步骤S33,判断所述神经网络分类模型的损失值是否达到预设值;
若所述神经网络分类模型的损失值达到预设值,则将下一个选择的任务对应的迭代次数作为第一次迭代,并执行步骤S31至步骤S33,直至所述神经网络分类模型满足预设验证条件;
若所述神经网络分类模型的损失值未达到预设值,则根据预设的衰减算法将所述神经网络分类模型的外循环学习率进行衰减,得到新的外循环学习率,按照所述信息外循环学习率更新神经网络分类模型,并将下一个选择的任务对应的迭代次数作为第一次迭代,并执行步骤S31至步骤S33,直至所述神经网络分类模型满足预设验证条件。
在一种实施方式中,预设的衰减算法为:
η=η*1/n;
其中,η为神经网络分类模型的外循环学习率,n为预设次数。
预设验证条件为当所有任务对应的损失值在预设范围内和/或达到预设的最大迭代次数或时,训练过程终止。此时,得到的神经网络分类模型即为满足预设条件的模型。
通过根据任务的迭代次数和模型的损失值进行判断,以决定是否继续训练或调整学习率,如果模型的损失值未达到预设值,那么根据预设的衰减算法动态调整学习率,动态调整学习率,提高神经网络分类模型收敛性能和训练效果。
本方法通过将恶意软件转换为可视化灰度图,使得恶意软件的分析和识别过程更加直观,通过数据增强技术,如插入代码、添加抖动和高斯噪声,可以增加数据集的多样性和丰富性,提高神经网络分类模型的泛化能力,使其能够更好地适应各种可能的恶意软件变种,将可视化灰度图和数据增强灰度图转换为Lab色彩空间对照图,可以捕捉到更多的细节和特征,从而更全面地描述恶意软件的特性,提高分类的准确性和可靠性。
图6为本申请实施例的少样本恶意软件的分类装置200的结构框图。
如图6所示,一种少样本恶意软件的分类装置包括:
获取模块201,用于获取的待分类恶意软件;所述待分类恶意软件为对计算机系统的运行造成危害的软件;
转换模块202,用于将所述待分类恶意软件转换为多个Lab色彩空间对照图;
分类模块203,用于将所述多个Lab色彩空间对照图输入至预设的神经网络分类模型中,得到所述待分类恶意软件的分类结果,其中,所述预设的神经网络分类模型是基于不同的恶意软件各自对应的多个Lab色彩空间对照图进行训练得到的。
可选地,预处理模块202包括:
转换子模块,用于将所述待分类恶意软件转换为预设格式的可视化灰度图;
数据增强子模块,用于对所述可视化灰度图进行数据增强,得到数据增强灰度图;
映射子模块,用于分别对所述可视化灰度图和所述数据增强灰度图进行Lab色彩空间映射,得到所述待分类恶意软件对应的多个Lab色彩空间对照图。
可选地,所述数据增强灰度图包括插入代码灰度图、添加抖动灰度图和插入高斯噪声灰度图,映射子模块具体用于:
计算所述可视化灰度图、所述插入代码灰度图、所述添加抖动灰度图和所述插入高斯噪声灰度图分别与所述可视化灰度图的相似度;
根据各个所述的相似度,对所述可视化灰度图、所述插入代码灰度图、所述添加抖动灰度图和所述插入高斯噪声灰度图进行排序;
按照排序结果和预设组合规则,对所述可视化灰度图、所述插入代码灰度图、所述添加抖动灰度图和所述插入高斯噪声灰度图进行组合,得到多个灰度图像组合,每个所述灰度图像组合包括所述可视化灰度图、所述插入代码灰度图、所述添加抖动灰度图和所述插入高斯噪声灰度图中的任意三个灰度图;
对于每组所述灰度图像组合,根据预设的格式转换算法将所述灰度图像组合中的每个灰度图转换为NumPy数组;
对于每组所述灰度图像组合,将所述灰度图像组合中的各个灰度图对应的NumPy数组,按照Lab色彩空间的三个通道中每个通道对应的颜色进行划分,得到每个所述通道对应的NumPy数组;
对于每组所述灰度图像组合,根据该灰度图像组合对应的各个所述通道对应的NumPy数组,得到该灰度图像组合对应的Lab色彩空间对照图;
根据各个所述灰度图像组合对应的Lab色彩空间对照图,得到所述待分类恶意软件对应的多个Lab色彩空间对照图。
可选地,预设的神经网络分类模型的训练模块包括:
获取子模块,用于获取增强数据集,所述增强数据集包括多个恶意软件样本各自对应的多个Lab色彩空间对照图;
划分子模块,用于将所述增强数据集划分为元训练集和元验证集;
训练子模块,用于基于所述元训练集对预设的MI-MAML算法模型进行神经网络模型训练,得到初始神经网络分类模型;所述预设的MI-MAML算法模型包括四个卷积层,每个所述卷积层后连接有dropout层;
验证子模块,用于基于所述元验证集对所述初始神经网络分类模型进行验证,直到训练出满足预设条件的初始神经网络分类模型,将满足预设条件的初始神经网络分类模型作为所述神经网络分类模型。
可选地,所述训练子模块具体用于执行如下步骤:
所述基于所述元训练集对预设的MI-MAML算法模型进行神经网络模型训练,得到初始神经网络分类模型,包括:
步骤S11,根据所述元训练集,获取训练样本,所述训练样本中包括至少一批任务,每批任务中包括多个任务,每个所述任务对应一种恶意软件;
步骤S12,对于每批任务,从该批任务中选择一个任务作为当前任务对待训练的MI-MAML算法模型进行训练,得到所述当前任务对应的训练结果、梯度参数信息和学习率,所述待训练的MI-MAML算法模型为初始MI-MAML算法模型;
步骤S13,根据当前迭代次数、当前内循环的循环步骤和预设的学习率算法,对所述当前任务对应的学习率进行更新,得到更新后的学习率,所述当前内循环的循环步骤为所述当前任务在预设的循环周期中对应的循环步骤,对于每批任务,所述当前迭代次数与所述当前任务在该批任务中的选择次序相等;
S14,根据每批任务对应的各个训练结果,确定所述待训练的MI-MAML算法模型对应的损失值;
S15,在所述损失值不满足预设的训练结束条件时,根据所述梯度参数信息更新所述待训练的MI-MAML算法模型的全局参数,得到更新后的MI-MAML算法模型;
S16,对于每批任务,从该批任务中选择一个新的任务作为所述当前任务,将所述更新后的MI-MAML算法模型作为所述待训练的MI-MAML算法模型,重复执行所述S12至S16,直到该批任务中的每个任务均作为当前任务进行模型训练,将最后一次更新后的MI-MAML算法模型作为所述初始神经网络分类模型。
可选地,所述预设的学习率算法为:
其中,其中,α1为预设的MI-MAML算法模型的初始化的内循环学习率;Δ为预设的MI-MAML算法模型内循环学习率的变化率,i为预设的MI-MAML算法模型的当前迭代次数,n为预设的MI-MAML算法模型的当前内循环的循环步数。
可选地,验证子模块具体用于:
根据所述元测试集对所述神经网络分类模型进行测试,得到所述神经网络分类模型的测试损失值;
若所述神经网络分类模型的测试损失值未达到预设值时,根据预设的衰减算法,将所述外循环学习率进行衰减,得到新的外循环学习率,按照所述新的外循环学习率更新所述神经网络分类模型,直至更新后的所述神经网络分类模型满足预设条件,得到满足预设条件的神经网络分类模型。
在一个例子中,以上任一装置中的模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个专用集成电路(application specificintegratedcircuit,ASIC),或,一个或多个数字信号处理器(digital signal processor,DSP),或,一个或者多个现场可编程门阵列(field programmable gate array,FPGA),或这些集成电路形式中至少两种的组合。
再如,当装置中的模块可以通过处理元件调度程序的形式实现时,该处理元件可以是通用处理器,例如中央处理器(central processing unit,CPU)或其它可以调用程序的处理器。再如,这些模块可以集成在一起,以片上系统(system-on-a-chip,SOC)的形式实现。
在本申请中可能出现的对各种消息/信息/设备/网元/系统/装置/动作/操作/流程/概念等各类客体进行了赋名,可以理解的是,这些具体的名称并不构成对相关客体的限定,所赋名称可随着场景,语境或者使用习惯等因素而变更,对本申请中技术术语的技术含义的理解,应主要从其在技术方案中所体现/执行的功能和技术效果来确定。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的模块及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
图7为本申请实施例一种电子设备300的结构框图。
如图7所示,电子设备300包括处理器301和存储器302,还可以进一步包括信息输入/信息输出(I/O)接口303以及通信组件304中的一种或多种。
其中,处理器301用于控制电子设备300的整体操作,以完成上述的少样本恶意软件的分类方法中的全部或部分步骤;存储器302用于存储各种类型的数据以支持在电子设备300的操作,这些数据例如可以包括用于在该电子设备300上操作的任何应用程序或方法的指令,以及应用程序相关的数据。该存储器302可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,SRAM)、电可擦除可编程只读存储器(Electrically Erasable Programmable Read-OnlyMemory,EEPROM)、可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM)、可编程只读存储器(Programmable Read-Only Memory,PROM)、只读存储器(Read-OnlyMemory,ROM)、磁存储器、快闪存储器、磁盘或光盘中的一种或多种。
I/O接口303为处理器301和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件304用于测试电子设备300与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(NearField Communication,简称NFC),2G、3G或4G,或它们中的一种或几种的组合,因此相应的该通信组件304可以包括:Wi-Fi部件,蓝牙部件,NFC部件。
通信总线305可包括一通路,在上述组件之间传送信息。通信总线305可以是PCI(Peripheral Component Interconnect,外设部件互连标准)总线或EISA(ExtendedIndustry Standard Architecture,扩展工业标准结构)总线等。通信总线305可以分为地址总线、数据总线、控制总线等。
电子设备300可以被一个或多个应用专用集成电路(ApplicationSpecificIntegrated Circuit,简称ASIC)、数字信号处理器(Digital Signal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field ProgrammableGate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述实施例给出的少样本恶意软件的分类方法。
电子设备300可以包括但不限于数字广播接收器、PDA(个人数字助理)、PMP(便携式多媒体播放器)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端,还可以为服务器等。
下面对本申请实施例提供的计算机可读存储介质进行介绍,下文描述的计算机可读存储介质与上文描述的少样本恶意软件的分类方法可相互对应参照。
本申请还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述的少样本恶意软件的分类方法的步骤。
该计算机可读存储介质可以包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的申请范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离前述申请构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中申请的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
Claims (10)
1.一种少样本恶意软件的分类方法,其特征在于,包括:
获取的待分类恶意软件;所述待分类恶意软件为对计算机系统的运行造成危害的软件;
将所述待分类恶意软件转换为多个Lab色彩空间对照图;
将所述多个Lab色彩空间对照图输入至预设的神经网络分类模型中,得到所述待分类恶意软件的分类结果,其中,所述预设的神经网络分类模型是基于不同的恶意软件各自对应的多个Lab色彩空间对照图进行训练得到的。
2.根据权利要求1所述的一种少样本恶意软件的分类方法,其特征在于,所述将所述待分类恶意软件转换为多个Lab色彩空间对照图,包括:
将所述待分类恶意软件转换为预设格式的可视化灰度图;
对所述可视化灰度图进行数据增强,得到数据增强灰度图;
分别对所述可视化灰度图和所述数据增强灰度图进行Lab色彩空间映射,得到所述待分类恶意软件对应的多个Lab色彩空间对照图。
3.根据权利要求2所述的一种少样本恶意软件的分类方法,其特征在于,所述数据增强灰度图包括插入代码灰度图、添加抖动灰度图和插入高斯噪声灰度图,所述分别对所述可视化灰度图和所述数据增强灰度图进行Lab色彩空间映射,得到所述待分类恶意软件对应的多个Lab色彩空间对照图,包括:
计算所述可视化灰度图、所述插入代码灰度图、所述添加抖动灰度图和所述插入高斯噪声灰度图分别与所述可视化灰度图的相似度;
根据各个所述的相似度,对所述可视化灰度图、所述插入代码灰度图、所述添加抖动灰度图和所述插入高斯噪声灰度图进行排序;
按照排序结果和预设组合规则,对所述可视化灰度图、所述插入代码灰度图、所述添加抖动灰度图和所述插入高斯噪声灰度图进行组合,得到多个灰度图像组合,每个所述灰度图像组合包括所述可视化灰度图、所述插入代码灰度图、所述添加抖动灰度图和所述插入高斯噪声灰度图中的任意三个灰度图;
对于每组所述灰度图像组合,根据预设的格式转换算法将所述灰度图像组合中的每个灰度图转换为NumPy数组;
对于每组所述灰度图像组合,将所述灰度图像组合中的各个灰度图对应的NumPy数组,按照Lab色彩空间的三个通道中每个通道对应的颜色进行划分,得到每个所述通道对应的NumPy数组;
对于每组所述灰度图像组合,根据该灰度图像组合对应的各个所述通道对应的NumPy数组,得到该灰度图像组合对应的Lab色彩空间对照图;
根据各个所述灰度图像组合对应的Lab色彩空间对照图,得到所述待分类恶意软件对应的多个Lab色彩空间对照图。
4.根据权利要求1所述的一种少样本恶意软件的分类方法,其特征在于,所述预设的神经网络分类模型的训练方法,包括:
获取增强数据集,所述增强数据集包括多个恶意软件样本各自对应的多个Lab色彩空间对照图;
将所述增强数据集划分为元训练集和元验证集;
基于所述元训练集对预设的MI-MAML算法模型进行神经网络模型训练,得到初始神经网络分类模型;所述预设的MI-MAML算法模型包括四个卷积层,每个所述卷积层后连接有dropout层;
基于所述元验证集对所述初始神经网络分类模型进行验证,直到训练出满足预设条件的初始神经网络分类模型,将满足预设条件的初始神经网络分类模型作为所述神经网络分类模型。
5.根据权利要求4所述的一种少样本恶意软件的分类方法,其特征在于,所述基于所述元训练集对预设的MI-MAML算法模型进行神经网络模型训练,得到初始神经网络分类模型,包括:
步骤S11,根据所述元训练集,获取训练样本,所述训练样本中包括至少一批任务,每批任务中包括多个任务,每个所述任务对应一种恶意软件;
步骤S12,对于每批任务,从该批任务中选择一个任务作为当前任务对待训练的MI-MAML算法模型进行训练,得到所述当前任务对应的训练结果、梯度参数信息和学习率,所述待训练的MI-MAML算法模型为初始MI-MAML算法模型;
步骤S13,根据当前迭代次数、当前内循环的循环步骤和预设的学习率算法,对所述当前任务对应的学习率进行更新,得到更新后的学习率,所述当前内循环的循环步骤为所述当前任务在预设的循环周期中对应的循环步骤,对于每批任务,所述当前迭代次数与所述当前任务在该批任务中的选择次序相等;
S14,根据每批任务对应的各个训练结果,确定所述待训练的MI-MAML算法模型对应的损失值;
S15,在所述损失值不满足预设的训练结束条件时,根据所述梯度参数信息更新所述待训练的MI-MAML算法模型的全局参数,得到更新后的MI-MAML算法模型;
S16,对于每批任务,从该批任务中选择一个新的任务作为所述当前任务,将所述更新后的MI-MAML算法模型作为所述待训练的MI-MAML算法模型,重复执行所述S12至S16,直到该批任务中的每个任务均作为当前任务进行模型训练,将最后一次更新后的MI-MAML算法模型作为所述初始神经网络分类模型。
6.根据权利要求5所述的一种少样本恶意软件的分类方法,其特征在于,所述学习率包括内循环学习率,所述预设的学习率算法为:
其中,其中,α1为预设的MI-MAML算法模型的初始化的内循环学习率;Δ为预设的MI-MAML算法模型内循环学习率的变化率,i为预设的MI-MAML算法模型的当前迭代次数,n为预设的MI-MAML算法模型的当前内循环的循环步数。
7.根据权利要求5所述的一种少样本恶意软件的分类方法,其特征在于,所述学习率还包括外循环学习率,所述基于所述元测试集对所述神经网络分类模型进行测试,直到训练出满足预设条件的神经网络分类模型,包括:
根据所述元测试集对所述神经网络分类模型进行测试,得到所述神经网络分类模型的测试损失值;
若所述神经网络分类模型的测试损失值未达到预设值时,根据预设的衰减算法,将所述外循环学习率进行衰减,得到新的外循环学习率,按照所述新的外循环学习率更新所述神经网络分类模型,直至更新后的所述神经网络分类模型满足预设条件,得到满足预设条件的神经网络分类模型。
8.一种少样本恶意软件的分类装置,其特征在于,包括:
获取模块,用于获取待分类恶意软件;所述待分类恶意软件为对计算机系统的运行造成危害的软件;
转换模块,将所述待分类恶意软件转换为多个Lab色彩空间对照图;
分类模块,将所述多个Lab色彩空间对照图输入至预设的神经网络分类模型中,得到所述待分类恶意软件的分类结果,其中,所述预设的神经网络分类模型是基于不同的恶意软件各自对应的多个Lab色彩空间对照图进行训练得到的。
9.一种电子设备,其特征在于,包括处理器,所述处理器与存储器耦合;
所述处理器用于执行所述存储器中存储的计算机程序,以使得所述电子设备执行如权利要求1至7任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,包括计算机程序或指令,当所述计算机程序或指令在计算机上运行时,使得所述计算机执行如权利要求1-7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410060040.9A CN117892301B (zh) | 2024-01-15 | 2024-01-15 | 少样本恶意软件的分类方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410060040.9A CN117892301B (zh) | 2024-01-15 | 2024-01-15 | 少样本恶意软件的分类方法、装置、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117892301A true CN117892301A (zh) | 2024-04-16 |
CN117892301B CN117892301B (zh) | 2024-06-28 |
Family
ID=90645341
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410060040.9A Active CN117892301B (zh) | 2024-01-15 | 2024-01-15 | 少样本恶意软件的分类方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117892301B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160328742A1 (en) * | 2015-05-05 | 2016-11-10 | Sentrant Security Inc. | Systems and methods for monitoring malicious software engaging in online advertising fraud or other form of deceit |
CN109063478A (zh) * | 2018-07-19 | 2018-12-21 | 中国人民解放军61660部队 | 可移植的可执行文件的病毒检测方法、装置、设备及介质 |
CN110765458A (zh) * | 2019-09-19 | 2020-02-07 | 浙江工业大学 | 一种基于深度学习的恶意软件检测方法及其装置 |
KR20200039912A (ko) * | 2018-10-08 | 2020-04-17 | 순천향대학교 산학협력단 | Ai 기반 안드로이드 악성코드 자동화 분석 시스템 및 방법 |
US20210133322A1 (en) * | 2019-11-06 | 2021-05-06 | Mcafee, Llc | Visual Identification of Malware |
CN112884061A (zh) * | 2021-03-10 | 2021-06-01 | 河北师范大学 | 一种基于参数优化元学习的恶意软件家族分类方法 |
US20220198622A1 (en) * | 2020-12-17 | 2022-06-23 | Nvidia Corporation | High dynamic range support for legacy applications |
CN114926680A (zh) * | 2022-05-13 | 2022-08-19 | 山东省计算中心(国家超级计算济南中心) | 一种基于AlexNet网络模型的恶意软件分类方法及系统 |
CN116861431A (zh) * | 2023-09-05 | 2023-10-10 | 国网山东省电力公司信息通信公司 | 基于多通道图像和神经网络的恶意软件分类方法及系统 |
US20230394144A1 (en) * | 2020-10-30 | 2023-12-07 | Inlyse Gmbh | Method for detection of malware |
-
2024
- 2024-01-15 CN CN202410060040.9A patent/CN117892301B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160328742A1 (en) * | 2015-05-05 | 2016-11-10 | Sentrant Security Inc. | Systems and methods for monitoring malicious software engaging in online advertising fraud or other form of deceit |
CN109063478A (zh) * | 2018-07-19 | 2018-12-21 | 中国人民解放军61660部队 | 可移植的可执行文件的病毒检测方法、装置、设备及介质 |
KR20200039912A (ko) * | 2018-10-08 | 2020-04-17 | 순천향대학교 산학협력단 | Ai 기반 안드로이드 악성코드 자동화 분석 시스템 및 방법 |
CN110765458A (zh) * | 2019-09-19 | 2020-02-07 | 浙江工业大学 | 一种基于深度学习的恶意软件检测方法及其装置 |
US20210133322A1 (en) * | 2019-11-06 | 2021-05-06 | Mcafee, Llc | Visual Identification of Malware |
US20230394144A1 (en) * | 2020-10-30 | 2023-12-07 | Inlyse Gmbh | Method for detection of malware |
US20220198622A1 (en) * | 2020-12-17 | 2022-06-23 | Nvidia Corporation | High dynamic range support for legacy applications |
CN112884061A (zh) * | 2021-03-10 | 2021-06-01 | 河北师范大学 | 一种基于参数优化元学习的恶意软件家族分类方法 |
CN114926680A (zh) * | 2022-05-13 | 2022-08-19 | 山东省计算中心(国家超级计算济南中心) | 一种基于AlexNet网络模型的恶意软件分类方法及系统 |
CN116861431A (zh) * | 2023-09-05 | 2023-10-10 | 国网山东省电力公司信息通信公司 | 基于多通道图像和神经网络的恶意软件分类方法及系统 |
Non-Patent Citations (1)
Title |
---|
王博: "基于VGGNet的恶意代码变种分类", 计算机应用, no. 1, 24 September 2019 (2019-09-24), pages 168 - 173 * |
Also Published As
Publication number | Publication date |
---|---|
CN117892301B (zh) | 2024-06-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6994588B2 (ja) | 顔特徴抽出モデル訓練方法、顔特徴抽出方法、装置、機器および記憶媒体 | |
CN110008680B (zh) | 基于对抗样本的验证码生成系统及方法 | |
CN110704840A (zh) | 一种基于卷积神经网络cnn的恶意软件检测方法 | |
CN112329016A (zh) | 一种基于深度神经网络的可视化恶意软件检测装置及方法 | |
CN108021806B (zh) | 一种恶意安装包的识别方法和装置 | |
CN109829306A (zh) | 一种优化特征提取的恶意软件分类方法 | |
CN113360912A (zh) | 恶意软件检测方法、装置、设备及存储介质 | |
CN111783812B (zh) | 违禁图像识别方法、装置和计算机可读存储介质 | |
CN114692156A (zh) | 内存片段恶意代码入侵检测方法、系统、存储介质及设备 | |
CN115577357A (zh) | 一种基于堆叠集成技术的Android恶意软件检测方法 | |
Yoo et al. | The image game: exploit kit detection based on recursive convolutional neural networks | |
CN109508545B (zh) | 一种基于稀疏表示和模型融合的Android Malware分类方法 | |
CN113222053B (zh) | 基于RGB图像和Stacking多模型融合的恶意软件家族分类方法、系统和介质 | |
Baia et al. | Effective universal unrestricted adversarial attacks using a MOE approach | |
CN113283388A (zh) | 活体人脸检测模型的训练方法、装置、设备及存储介质 | |
CN117892301B (zh) | 少样本恶意软件的分类方法、装置、设备及介质 | |
CN112560034A (zh) | 基于反馈式深度对抗网络的恶意代码样本合成方法及装置 | |
CN110197068B (zh) | 基于改进灰狼算法的Android恶意应用检测方法 | |
CN112818774A (zh) | 一种活体检测方法及装置 | |
CN115713669A (zh) | 一种基于类间关系的图像分类方法、装置、存储介质及终端 | |
CN111222558A (zh) | 图像处理方法及存储介质 | |
CN115828239A (zh) | 一种多维数据决策融合的恶意代码检测方法 | |
CN115546554A (zh) | 敏感图像的识别方法、装置、设备和计算机可读存储介质 | |
CN114445656A (zh) | 多标签模型处理方法、装置、电子设备及存储介质 | |
Lu et al. | Deep learning based malware classification using deep residual network |
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 |