【摘 要】
:
随着开源的软件越来越多,在项目开发过程,为了提高开发效率以及程序性能,不可避免的需要引用开源的库和开源的代码块。对于只能获取二进制的项目,通过二进制代码相似性分析来判断项目中是否使用了库中的代码,前人已经提出了一些解决方案,但这些方案要么只能针对单架构的二进制代码进行相似性分析,要么通过特征进行跨平台的函数进行分析,并不能获得不同架构函数真正的语义表示。本文提出了一个基于对比学习的方案来解决该问题
论文部分内容阅读
随着开源的软件越来越多,在项目开发过程,为了提高开发效率以及程序性能,不可避免的需要引用开源的库和开源的代码块。对于只能获取二进制的项目,通过二进制代码相似性分析来判断项目中是否使用了库中的代码,前人已经提出了一些解决方案,但这些方案要么只能针对单架构的二进制代码进行相似性分析,要么通过特征进行跨平台的函数进行分析,并不能获得不同架构函数真正的语义表示。本文提出了一个基于对比学习的方案来解决该问题。采用BERT模型,获取单架构函数块语义嵌入。通过设计新的归一化方案,对函数进行归一化处理,同时设计三种训练任务,使得语义嵌入模型学习获取指令语义的能力。对比几种语义嵌入提取方案,从中获得最好的方案。将本文训练的模型和Asm2Vec模型对比,发现具有更好的性能。针对跨平台函数块的语义嵌入,本文提出了一个新的模型MESCL(Multi-Encoder Supervised Contrastive Learning Model),该模型有两个不同的编码器,分别对应本文研究的两种不同的架构:x86和arm。通过Info NCE损失函数,实现最大化正例对的相似度,最小化负例对的相似度。从而对齐独立的单架构语义嵌入空间。通过该模型能够很好的学习跨架构的语义嵌入表示,通过实验发现其比跨平台模型Gemini的AUC值提高了3%。在该模型获得的语义嵌入向量的基础上,对比各种相似性检索方案,分析各种方案优劣。本文对比暴力搜索方案,基于哈希的ANN方案(LSH),基于矢量量化的ANN方案(K-means)这三种相似向量检索方案,通过实验对这些方案的准确度和查询速度进行分析,本文选取最优的搜索引擎方案为基于矢量量化的相似向量检索方案。
其他文献
医学图像分割技术是临床医疗的一种主要辅助方法,但对于医学图像来说,标注数据的获取通常是昂贵的。与自然图像相比,医学图像在分割任务中需要专业医生对其进行筛选和标注,尤其是含有多个器官组织的图像。为了减轻标记人员的工作量,近年来人们提出了许多半监督的学习方法,在减少标记样本数量的同时获得高性能的机器学习模型。另一方面,半监督学习利用少量标注数据和大量未标注数据的学习方式更加符合临床的实际需求,所以在医
申克孢子丝菌复合体(Sporothrix schenckii complex)广泛分布于世界各地,目前发现该复合体包含七种基因型,分别是狭义申克孢子丝菌(S.schenckii sensu stricto)、球形孢子丝菌(S.globosa)、巴西孢子丝菌(S.brasiliensis)、墨西哥孢子丝菌(S.mexicana)、白孢子丝菌(S.pallida)、卢艾里孢子丝菌(S.luriei)、
在华夏五千年文明的孕育下,纸张是中华民族精神文明的重要载体,更是炎黄子孙智慧的结晶。纸质档案以纸张作为载体的一种档案,最先产生在中国,东汉时就已经应用在文件撰写方面,直到如今我们仍然使用纸质档案,其优点较多,便于管理和利用。保护纸质档案是防止文明缺失的一种重要手段,委以吾辈重任。“生物退化”指由于生物的活动导致非生命物质的性质发生不利于人类需求的变化,即非生命物质的内在价值受到削弱。然而纸质档案受
机器人技术在近些年来得到了不断的发展,在日常生活中的许多场景下已经存在机器人来替代人进行工作。导航和避障能力是智能化的移动机器人最重要的基本能力之一,在近年已经有研究出现,并开始在行人丰富的复杂环境探索。传统的机器人导航主要是用了SLAM技术以及控制规划方法。SLAM技术通过构建环境的地图,为机器人提供全局信息,在地图基础上调用规划方法生成机器人移动路径。这种方法对传感器精度以及构建地图的精度要求
肺癌是具有高死亡率的恶性肿瘤之一,虽然目前人们对肺癌发生机制的了解和抗癌药物的开发有新的进展,但临床治疗效果仍不能令人满意。因此,有效抗肺癌药物的发现已经成为研究者所关心的热点。本课题选用的化合物RY-1-11是一种新型喜树碱衍生物,并且实验室前期研究结果显示RY-1-11通过影响Wnt/β-catenin信号通路显著抑制肺癌细胞的增殖和迁移,具有很好的抗肿瘤活性。同时,前期研究表明RY-1-11
目的:代谢相关脂肪性肝病(Metabolic associated fatty liver disease,MAFLD)也称为非酒精性脂肪性肝病(Nonalcoholic fatty liver disease,NAFLD),是全球发病率最高的慢性肝病,全世界大约有四分之一的人深受该病困扰。MAFLD的预防和治疗主要依赖于饮食控制和运动干预,目前亟需开发新的和有效的治疗药物。AWRK6是基于东北林
淀粉样蛋白沉积疾病是由特定多肽或蛋白质聚集形成高度稳定的、具有细胞毒性的淀粉样蛋白纤维化沉淀所引起的。淀粉样肽β(Amyloidβ,Aβ)被认为是引起阿尔茨海默病(Alzheimer’s disease,AD)的致病蛋白。人胱抑素C(Human cystatin C,HCC)是一种广泛存在于人体的体液和组织液中的半胱氨酸蛋白酶抑制剂,可以抑制细胞外半胱氨酸蛋白酶活性。HCC可与可溶性的Aβ结合,研
随着信息化技术的发展,在线课堂教育开始在信息化应用中崭露头角,但是在线教学中,学生课堂状态不佳和大规模翘课的现象已经对在线教学的发展产生阻碍,因此人们开始更加关注如何改善这种学生翘课的现象。但是,在线教学的相关任务的研究中,公开可使用的数据集和在公开数据集上进行的工作较少,数据集的问题阻碍着在线教育相关任务研究的发展。为了解决上述问题,我们构建了一个新的数据集,并提出了一种新的学生完课预测方法,通
数字化浪潮推动互联网行业飞速发展,开发人员数量的增长速度远低于软件需求的增长速度。因此,研究人员和工业界将目光聚焦智能化编程,希望通过低代码的智能化编程极大地提高软件开发速度、效率和质量。现有的代码生成研究有两个重要的方法:模型驱动的代码生成方法和深度神经网络的代码生成方法。然而,前者需要复杂细致的建模才能得到功能上复杂的代码;后者难以生成结构性复杂的代码,这些问题限制着代码生成的发展。针对上述问