一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于自适应计算时间策略的恶意软件检测方法及系统

2022-11-30 13:41:01 来源:中国专利 TAG:

技术特征:
1.一种基于自适应计算时间策略的恶意软件检测方法,其特征在于包括以下步骤:s1、对带有标签的android软件的apk数据进行数据清洗,并对数据进行划分得到训练集、验证集和测试集;所述apk数据是指代对apk安装包进行解压,并对解压结果进行解析,从而提取出程序的多个特征,所述的多个特征包括系统调用、绑定器以及复合行为的调用频率;其中标签为恶意软件和良性软件;s2、对步骤s1处理后的数据通过卷积神经网络conv1d,将二维数据扩展维度成多维稠密向量,将原始特征之间的弱关联信息嵌入到连续向量空间中,生成一个序列簇矩阵;s3、搭建基于自适应计算时间策略的恶意软件检测模型dact-transformer,并使用训练集数据对模型进行训练;所述基于自适应计算时间策略的恶意软件检测模型dact-transformer包括embedding层、n个transformer编码层以及n个自适应计算层dact;其中n=12;所述embedding层用于将输入序列经过embedding扩展成尺寸为512维的特征向量;第1个transformer编码层接收所述embedding层的输出,经过transformer编码后的输出被复制成两份,分别输入到第2个transformer编码层和第1个dact层;第n个transformer编码层接收上一层transformer编码层的输出,经过transformer编码后的输出被复制成两份,分别输入到第n 1个transformer编码层和第n个dact层;其中2≤n≤n-1;第n个transformer编码层接收上一层transformer编码层的输出,经过transformer编码后的输出输入到第n个dact层;第1个dact层接收第1个transformer编码层的输出,将其输入的矩阵经过softmax和sigmoid处理后得到中间预测结果y
n
和其置信度,再输出到第2个dact层;第n个dact层接上一层transformer编码层和dact层的输出,将其输入的矩阵经过softmax和sigmoid处理后得到中间预测结果y
n
和其置信度,再输出到下一层dact层;在每一层dact中,当置信度达到一定范围区间后终止训练,将当前预测结果作为中间预测结果输出;2≤n≤n-1;第n个dact层接第n个transformer编码层和第n-1个dact层的输出,将其输入的矩阵经过softmax和sigmoid处理后得到最终预测结果y
n
;所述transformer编码层包括multihead attention层和全连接层;所述multihead attention层用于对输入的特征向量通过self-attention计算注意力分布,得到一个矩阵;所述全连接层用于所述multihead attention层的输出经过归一化后,对特征进行非线性变换;s4、用训练好的dact-transformer模型对测试集数据进行检测;s5、用测试好的dact-transformer模型对验证集数据进行验证;s6、利用验证好的dact-transformer模型以实现android软件的检测。2.根据权利要求1所述的方法,其特征在于步骤s1中数据清洗的方法为:清洗缺失值、异常值,对数据的特征属性量化编码,对数据归一化处理。3.根据权利要求1所述的方法,其特征在于步骤s1中数据清洗的方法为:1)查找是否存在缺失值,若存在则继续判断缺失值个数是否大于预设阈值a,若是则认为缺失值过多,则选择与样本标签相同的样本集属性的平均数或众数填充缺失值,若否则
认为缺失值较少,则可以删除缺失值所在的数据行;2)检查是否存在异常值,若存在则继续判断异常值个数是否大于预设阈值b,若是则认为异常值过多,需分析异常值的原因并修改异常值,若否则认为异常值较少,删除包括异常值在内的数据行;3)特征属性量化编码:在范围0-m内对离散的特征属性进行编码,其中m 1表示软件类型总数;4)采用的归一化方法是对每个特征进行如下约束,公式如下:其中,x
i,norm
表示第i个特征x
i
的归一化结果,x
i,min
、x
i,max
分别表示第i个特征所在列的最小值、最大值。4.根据权利要求1所述的方法,其特征在于步骤s3中所述基于自适应计算时间策略的恶意软件检测模型dact-transformer中transformer编码层具体是:1)multi-head attention层用于对输入的特征向量通过self-attention计算注意力分布,得到一个矩阵:

信息输入:接收输入的特征向量q、k、v,其中q、k、v分别为矩阵x经过不同线性变换之后的结果,矩阵x=[x1,x2,...,x
m
]为步骤s2的序列簇矩阵或上一层transformer编码层的输出结果;

计算注意力分布α:通过q和k进行点积计算相关度,并通过softmax计算分数;令q=k=v,通过softmax计算注意力权重,公式如(1.2)所示;α
i
=softmax(s(k
i
,q))=softmax(s(x
i
,q))#(1.2)其中α
i
为注意力概率分布,s(k
i
,q)为注意力打分机制;

信息加权平均:注意力概率分布α
i
来解释在上下文查询q
i
时,第i个信息受关注程度,公式如(1.3)所示;其中m表示矩阵x的维度;2)经由multi-head attention计算得出的序列矩阵,到达add&norm层,经过残差处理以及normalization标准化;3)经过标准化处理的序列矩阵,进入全连接层feedforward,先将数据映射到高维空间再映射到低维空间,学习更抽象的特征;4)全连接层feedforward结束后再一次经过一层残差处理和标准化过程得到的结果矩阵。5.根据权利要求1或4所述的方法,其特征在于步骤s3中所述基于自适应计算时间策略的恶意软件检测模型dact-transformer中所述dact层具体是:1)从上一层transformer编码层中获取到的中间值经过softmax和sigmoid处理后的到中间预测结果y
n
和表示当前层对其输出结果y
n
的置信度h
n

其中z
i
表示从transformer编码层获取到的所有分类结果中的第i个分类结果,c表示从transformer编码层获取到所有分类结果的总数;2)建立一个协助确定停止条件的值p
n
,如(1.6)所示,当p
n
达到一定区间范围后,就可以停止训练后续模型块;p
r
(ans
*
,n)(1-p
n
)
d
≥p
r
(ans
ru
,n) p
n
d#(1.7)a
n
=y
n
p
n-1
a
n-1
(1-p
n-1
)#(1.8)其中p
n
表示考虑前n-1层的全部集合的不确定性,p
n
的值是相对于索引n单调递减并趋向于0,a
n
表示辅助累加器变量,用于组合到第n个dact层为止所有的中间输出y,以形成最终结果y,ans
*
表示最好的中间输出y,d表示距离n剩余的步骤数量,ans
ru
表示次好的中间输出y,p
r
(ans
*
,n)表示在第n层时得到ans
*
的概率。6.一种实现权利要求1-5任一项所述方法的恶意软件检测系统,其特征在于包括已经训练、验证、测试好的基于自适应计算时间策略的恶意软件检测模型dact-transformer。7.一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-5中任一项所述的方法。8.一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-5中任一项所述的方法。

技术总结
本发明公开一种基于自适应计算时间策略的恶意软件检测方法及系统。本发明提出了一个新的深度学习框架——DACT-Transformer来检测Android恶意软件,是一种用于类似Transformer模型的自适应计算时间策略。DACT-Transformer为Transformer的常规处理增加了一个自适应的计算机制,它可以控制在推理时需要执行的Transformer块的数量。通过这样使本发明在略微降低精度的情况下,减少了模型的计算负荷,降低在实际生产中对设备造成的压力。降低在实际生产中对设备造成的压力。降低在实际生产中对设备造成的压力。


技术研发人员:王莹心 寇亮 张纪林 万健 袁俊峰
受保护的技术使用者:杭州电子科技大学
技术研发日:2022.09.01
技术公布日:2022/11/29
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献