基于深度神经网络的程序分类技术研究

来源 :浙江大学 | 被引量 : 0次 | 上传用户:henauvic
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着信息技术的发展,各式各样的软件服务于社会的方方面面。程序作为软件的主要组成部分,其分析和理解是实现大规模软件分析、管理和检索的前提,而诸如功能分类、安全性分类等程序分类任务,是程序分析理解的典型任务。随着程序规模的爆炸性增长和深度学习在自然语言处理中的突破,研究者开始基于深度学习进行大规模程序分类,其本质是程序信息的编码和特征提取,如何针对程序特点将程序分析和深度学习进行融合,是提升分类效果的关键。本文在系统研究了现有方法的基础上,提出了针对源程序和二进制程序分类的两种新方法。方法一针对不完整源程序分析困难,程序分析技术和建模技术结合不紧密的缺陷,提出了基于双流卷积神经网络(CNN)进行源程序分类的新方法。该方法使用模糊解析工具提取程序抽象语法树(AST)信息,将其与程序本身一起作为模型输入。区别于现有方法,该方法可以同时处理完整源程序和不完整程序片段,可以引入注释等非程序信息。实验验证了该方法可以在完整和非完整程序功能分类任务中取得比现有方法更好的效果。方法二针对二进制程序长度过长,浅层信息少的问题,提出了基于层次化递归神经网络(HierachicalLSTM)的二进制程序分类新方法。该方法基于程序控制流图(CFG)将超长二进制程序分割为适合深度神经网络处理的程序块,使用分层递归神经网络进行建模。区别于现有方法,该方法充分考虑了程序的层次性,在二进制编译优化选项分类实验中取得了比现有方法更好的效果。实验还探讨了输入数据形态、预处理方式、程序长度等因素对分类效果的影响。
其他文献
绝经后女性由于雌激素水平下降,心血管疾病的风险升高.慢性肾脏病(CKD)是随年龄增长发病率逐年上升的疾病之一,同样多见于绝经后的女性.若绝经后女性同时合并CKD将易出现心力衰
现代远程教育是随着现代信息技术的发展而产生的一种新型的教育模式,通过远程教育可以有效地发挥现有各种教育资源的优势,符合且顺应世界教育发展的潮流。远程教育的发展受到社会的高度关注,与日益发展的信息技术息息相关。这也意味着国家需要对各类中小学校、大学以及职业技术学校等各个级别的教育机构进行审查。俄罗斯的远程教育之所以逐渐发展和普及起来,是由于广阔的国土面积和许多地区离教育中心较远等原因。目前有几十个俄
清洁压裂液虽具有携砂能力强,易破胶,无残渣等优点,但因耐温和抗剪切性能相对较差,在实际应用中受到很大限制,特别是针对于高温深层储层。因此,提升清洁压裂液的耐温、耐剪切
检察监督作为我国人民检察院的主要职能,是实现我国司法公正的重要保障;而司法独立是一项现代法治国家普遍承认和确立的宪政原则与司法原则,但司法独立的确立要以法院的理性化为
现代传媒是社会文化的载体,是社会教育的重要组成部分。现代传媒以其先进的技术和传播信息的广泛性,对人们的价值取向产生了巨大影响,同时影响着国家文化安全。在这种形势下,必须