期刊导航
期刊开放获取
上海教育软件发展有限公..
期刊文献
+
任意字段
题名或关键词
题名
关键词
文摘
作者
第一作者
机构
刊名
分类号
参考文献
作者简介
基金资助
栏目信息
任意字段
题名或关键词
题名
关键词
文摘
作者
第一作者
机构
刊名
分类号
参考文献
作者简介
基金资助
栏目信息
检索
高级检索
期刊导航
共找到
5
篇文章
<
1
>
每页显示
20
50
100
已选择
0
条
导出题录
引用分析
参考文献
引证文献
统计分析
检索结果
已选文献
显示方式:
文摘
详细
列表
相关度排序
被引量排序
时效性排序
代码特征自动提取方法
被引量:
7
1
作者
史志成
周宇
《计算机科学与探索》
CSCD
北大核心
2021年第3期456-467,共12页
神经网络在软件工程中的应用极大程度上缓解了传统的人工提取代码特征的压力。已有的研究往往将代码简化为自然语言或者依赖专家的领域知识来提取代码特征,简化为自然语言的处理方法过于简单,容易造成信息丢失,而引入专家制定启发式规...
神经网络在软件工程中的应用极大程度上缓解了传统的人工提取代码特征的压力。已有的研究往往将代码简化为自然语言或者依赖专家的领域知识来提取代码特征,简化为自然语言的处理方法过于简单,容易造成信息丢失,而引入专家制定启发式规则的模型往往过于复杂,可拓展性以及普适性不强。鉴于以上问题,提出了一种基于卷积和循环神经网络的自动代码特征提取模型,该模型借助代码的抽象语法树(AST)来提取代码特征。为了缓解因AST过于庞大而带来的梯度消失问题,对AST进行切割,转换成一个AST序列再作为模型的输入。该模型利用卷积网络提取代码中的结构信息,利用双向循环神经网络提取代码中的序列信息。整个流程不需要专家的领域知识来指导模型的训练,只需要将标注类别的代码作为模型的输入就可以让模型自动地学习如何提取代码特征。应用训练好的分类编码器,在相似代码搜索任务上进行测试,Top1、NDCG、MRR的值分别能达到0.560、0.679和0.638,对比当下前沿的用于代码特征提取的深度学习模型以及业界常用的代码相似检测工具有显著的优势。
展开更多
关键词
代码特征提取
代码
分类
程序理解
相似
代码
搜索
在线阅读
下载PDF
职称材料
基于上下文特征融合的代码漏洞检测方法
被引量:
3
2
作者
徐泽鑫
段立娟
+1 位作者
王文健
恩擎
《浙江大学学报(工学版)》
EI
CAS
CSCD
北大核心
2022年第11期2260-2270,共11页
针对现有代码漏洞检测方法误报率和漏报率较高的问题,提出基于上下文特征融合的代码漏洞检测方法.该方法将代码特征解耦分为代码块局部特征和上下文全局特征.代码块局部特征关注代码块中关键词的语义及其短距离依赖关系.将局部特征融合...
针对现有代码漏洞检测方法误报率和漏报率较高的问题,提出基于上下文特征融合的代码漏洞检测方法.该方法将代码特征解耦分为代码块局部特征和上下文全局特征.代码块局部特征关注代码块中关键词的语义及其短距离依赖关系.将局部特征融合得到上下文全局特征从而捕捉代码行上下文长距离依赖关系.该方法通过局部信息与全局信息协同学习,提升了模型的特征学习能力.模型精确地挖掘出代码漏洞的编程模式,增加了代码漏洞对比映射模块,拉大了正负样本在嵌入空间中的距离,促使对正负样本进行准确地区分.实验结果表明,在9个软件源代码混合的真实数据集上的精确率最大提升了29%,召回率最大提升了16%.
展开更多
关键词
代码
漏洞检测
代码
块局部
特征提取
上下文全局
特征
融合
短距离依赖
长距离依赖
在线阅读
下载PDF
职称材料
基于增强描述的代码搜索方法
被引量:
14
3
作者
黎宣
王千祥
金芝
《软件学报》
EI
CSCD
北大核心
2017年第6期1405-1417,共13页
如何有效地帮助程序员从目前的各种代码库中搜索与特定编程任务相关的代码,已成为软件工程重要的研究领域之一.提出一种基于增强描述的代码搜索方法 DERECS,该方法首先基于开源项目、问答系统等构建一个代码-描述语料库,并分析代码及自...
如何有效地帮助程序员从目前的各种代码库中搜索与特定编程任务相关的代码,已成为软件工程重要的研究领域之一.提出一种基于增强描述的代码搜索方法 DERECS,该方法首先基于开源项目、问答系统等构建一个代码-描述语料库,并分析代码及自然语言描述,提取方法调用和代码结构相关特征值;然后,基于代码片段中的方法调用及代码片段的结构特征对代码进行描述增强,以减小被搜索的代码与自然语言查询语句之间的差异,扩大搜索的范围.使用真实自然语言查询语句作为测试基准,对DERECS进行验证.验证结果表明,DERECS的效果显著优于典型方法 SNIFF和Krugle的查询结果.
展开更多
关键词
代码
搜索
自然语言处理
代码
-描述对
代码特征提取
代码
描述增强
在线阅读
下载PDF
职称材料
基于众包问答信息的API使用代码搜索
被引量:
1
4
作者
李宇琨
彭鑫
赵文耘
《计算机应用与软件》
北大核心
2018年第7期43-51,共9页
现代软件开发大量依赖类库以及第三方软件框架和开发,为此软件开发者经常需要寻找能够解决特定问题的应用程序编程接口API并通过示例代码学习相关API的使用方式。然而,由于开发者的问题描述与相关的API及其使用代码之间的词汇上经常存...
现代软件开发大量依赖类库以及第三方软件框架和开发,为此软件开发者经常需要寻找能够解决特定问题的应用程序编程接口API并通过示例代码学习相关API的使用方式。然而,由于开发者的问题描述与相关的API及其使用代码之间的词汇上经常存在差异,因此直接的代码搜索效果往往不好。Stack Overflow等众包问答网站上存在着很多开发问题及建议解决方案,其中也会包含一些API等代码元素,可以成为问题描述和代码内容之间匹配的桥梁。基于这一思想,提出并实现一种基于众包问答信息的API使用代码搜索方法。该方法首先借助于众包问答信息将问题描述对应到相关的代码元素上,并生成一种包含结构信息的代码骨架,然后基于代码骨架对代码库(例如开源项目代码)进行搜索和匹配,从而生成搜索结果。为了验证方法的有效性,收集了Stack Overflow上的137多万条问答信息以及GitHub上的3亿行Java源码,并针对30个与API相关的问题进行了实验验证。结果表明,96.6%的问题能在前十个结果中找到正确答案,有40%的问题能在第一个结果中找到正确答案,并且所有问题能在2 s内返回结果。
展开更多
关键词
代码
搜索
代码特征提取
文本摘要
在线阅读
下载PDF
职称材料
基于Transformer和卷积神经网络的代码克隆检测
被引量:
2
5
作者
贲可荣
杨佳辉
+1 位作者
张献
赵翀
《郑州大学学报(工学版)》
CAS
北大核心
2023年第6期12-18,共7页
基于深度学习的代码克隆检测方法往往作用在代码解析的词序列上或是整棵抽象语法树上,使用基于循环神经网络的时间序列模型提取特征,这会遗漏源代码的重要语法语义信息并诱发梯度消失。针对这一问题,提出一种基于Transformer和卷积神经...
基于深度学习的代码克隆检测方法往往作用在代码解析的词序列上或是整棵抽象语法树上,使用基于循环神经网络的时间序列模型提取特征,这会遗漏源代码的重要语法语义信息并诱发梯度消失。针对这一问题,提出一种基于Transformer和卷积神经网络的代码克隆检测方法(TCCCD)。首先,TCCCD将源代码表示成抽象语法树,并将抽象语法树切割成语句子树输入给神经网络,其中,语句子树由先序遍历得到的语句结点序列构成,蕴含了代码的结构和层次化信息。其次,在神经网络设计方面,TCCCD使用Transformer的Encoder部分提取代码的全局信息,再利用卷积神经网络捕获代码的局部信息。再次,融合2个不同网络提取出的特征,学习得到蕴含词法、语法和结构信息的代码向量表示。最后,采用两段代码向量的欧氏距离表征语义关联程度,训练一个分类器检测代码克隆。实验结果表明:在OJClone数据集上,精度、召回率、F 1值分别能达到98.9%、98.1%和98.5%;在BigCloneBench数据集上,精度、召回率、F 1值分别能达到99.1%、91.5%和94.2%。与其他方法对比,精度、召回率、F 1值均有提升,所提方法能够有效检测代码克隆。
展开更多
关键词
代码
克隆检测
抽象语法树(AST)
TRANSFORMER
卷积神经网络
代码特征提取
在线阅读
下载PDF
职称材料
题名
代码特征自动提取方法
被引量:
7
1
作者
史志成
周宇
机构
南京航空航天大学计算机科学与技术学院
南京航空航天大学高安全系统的软件开发与验证技术工信部重点实验室
南京大学软件新技术国家重点实验室
出处
《计算机科学与探索》
CSCD
北大核心
2021年第3期456-467,共12页
基金
国家重点研发计划(2018YFB1003902)
国家自然科学基金(61972197)
+1 种基金
中央高校基本科研业务费专项资金(NS2019055)
江苏高校“青蓝工程”。
文摘
神经网络在软件工程中的应用极大程度上缓解了传统的人工提取代码特征的压力。已有的研究往往将代码简化为自然语言或者依赖专家的领域知识来提取代码特征,简化为自然语言的处理方法过于简单,容易造成信息丢失,而引入专家制定启发式规则的模型往往过于复杂,可拓展性以及普适性不强。鉴于以上问题,提出了一种基于卷积和循环神经网络的自动代码特征提取模型,该模型借助代码的抽象语法树(AST)来提取代码特征。为了缓解因AST过于庞大而带来的梯度消失问题,对AST进行切割,转换成一个AST序列再作为模型的输入。该模型利用卷积网络提取代码中的结构信息,利用双向循环神经网络提取代码中的序列信息。整个流程不需要专家的领域知识来指导模型的训练,只需要将标注类别的代码作为模型的输入就可以让模型自动地学习如何提取代码特征。应用训练好的分类编码器,在相似代码搜索任务上进行测试,Top1、NDCG、MRR的值分别能达到0.560、0.679和0.638,对比当下前沿的用于代码特征提取的深度学习模型以及业界常用的代码相似检测工具有显著的优势。
关键词
代码特征提取
代码
分类
程序理解
相似
代码
搜索
Keywords
code feature extraction
code classification
program comprehension
similar code search
分类号
TP391 [自动化与计算机技术—计算机应用技术]
在线阅读
下载PDF
职称材料
题名
基于上下文特征融合的代码漏洞检测方法
被引量:
3
2
作者
徐泽鑫
段立娟
王文健
恩擎
机构
北京工业大学信息学部
可信计算北京市重点实验室
信息安全等级保护关键技术国家工程实验室
卡尔顿大学计算机学院
出处
《浙江大学学报(工学版)》
EI
CAS
CSCD
北大核心
2022年第11期2260-2270,共11页
基金
国家自然科学基金资助项目(62176009,62106065)
北京市教委重点项目(KZ201910005008).
文摘
针对现有代码漏洞检测方法误报率和漏报率较高的问题,提出基于上下文特征融合的代码漏洞检测方法.该方法将代码特征解耦分为代码块局部特征和上下文全局特征.代码块局部特征关注代码块中关键词的语义及其短距离依赖关系.将局部特征融合得到上下文全局特征从而捕捉代码行上下文长距离依赖关系.该方法通过局部信息与全局信息协同学习,提升了模型的特征学习能力.模型精确地挖掘出代码漏洞的编程模式,增加了代码漏洞对比映射模块,拉大了正负样本在嵌入空间中的距离,促使对正负样本进行准确地区分.实验结果表明,在9个软件源代码混合的真实数据集上的精确率最大提升了29%,召回率最大提升了16%.
关键词
代码
漏洞检测
代码
块局部
特征提取
上下文全局
特征
融合
短距离依赖
长距离依赖
Keywords
code vulnerability detection
code block local feature extraction
contextual global feature fusion
short-distance dependence
long-distance dependence
分类号
TP391 [自动化与计算机技术—计算机应用技术]
在线阅读
下载PDF
职称材料
题名
基于增强描述的代码搜索方法
被引量:
14
3
作者
黎宣
王千祥
金芝
机构
北京大学信息科学技术学院
高可信软件技术教育部重点实验室(北京大学)
出处
《软件学报》
EI
CSCD
北大核心
2017年第6期1405-1417,共13页
基金
国家重点基础研究发展计划(973)(2015CB352200
2015CB352201)
+3 种基金
国家自然科学基金(61672045
61421091
61529201
91318301)~~
文摘
如何有效地帮助程序员从目前的各种代码库中搜索与特定编程任务相关的代码,已成为软件工程重要的研究领域之一.提出一种基于增强描述的代码搜索方法 DERECS,该方法首先基于开源项目、问答系统等构建一个代码-描述语料库,并分析代码及自然语言描述,提取方法调用和代码结构相关特征值;然后,基于代码片段中的方法调用及代码片段的结构特征对代码进行描述增强,以减小被搜索的代码与自然语言查询语句之间的差异,扩大搜索的范围.使用真实自然语言查询语句作为测试基准,对DERECS进行验证.验证结果表明,DERECS的效果显著优于典型方法 SNIFF和Krugle的查询结果.
关键词
代码
搜索
自然语言处理
代码
-描述对
代码特征提取
代码
描述增强
Keywords
code search
natural language process
code-description pair
code feature extraction
code description reinforcement
分类号
TP311 [自动化与计算机技术—计算机软件与理论]
在线阅读
下载PDF
职称材料
题名
基于众包问答信息的API使用代码搜索
被引量:
1
4
作者
李宇琨
彭鑫
赵文耘
机构
复旦大学软件学院
上海市数据科学重点实验室(复旦大学)
出处
《计算机应用与软件》
北大核心
2018年第7期43-51,共9页
文摘
现代软件开发大量依赖类库以及第三方软件框架和开发,为此软件开发者经常需要寻找能够解决特定问题的应用程序编程接口API并通过示例代码学习相关API的使用方式。然而,由于开发者的问题描述与相关的API及其使用代码之间的词汇上经常存在差异,因此直接的代码搜索效果往往不好。Stack Overflow等众包问答网站上存在着很多开发问题及建议解决方案,其中也会包含一些API等代码元素,可以成为问题描述和代码内容之间匹配的桥梁。基于这一思想,提出并实现一种基于众包问答信息的API使用代码搜索方法。该方法首先借助于众包问答信息将问题描述对应到相关的代码元素上,并生成一种包含结构信息的代码骨架,然后基于代码骨架对代码库(例如开源项目代码)进行搜索和匹配,从而生成搜索结果。为了验证方法的有效性,收集了Stack Overflow上的137多万条问答信息以及GitHub上的3亿行Java源码,并针对30个与API相关的问题进行了实验验证。结果表明,96.6%的问题能在前十个结果中找到正确答案,有40%的问题能在第一个结果中找到正确答案,并且所有问题能在2 s内返回结果。
关键词
代码
搜索
代码特征提取
文本摘要
Keywords
Code search
Code feature extraction
Text summarization
分类号
TP3 [自动化与计算机技术—计算机科学与技术]
在线阅读
下载PDF
职称材料
题名
基于Transformer和卷积神经网络的代码克隆检测
被引量:
2
5
作者
贲可荣
杨佳辉
张献
赵翀
机构
海军工程大学电子工程学院
出处
《郑州大学学报(工学版)》
CAS
北大核心
2023年第6期12-18,共7页
基金
“十三五”预研项目(2019333/6152)。
文摘
基于深度学习的代码克隆检测方法往往作用在代码解析的词序列上或是整棵抽象语法树上,使用基于循环神经网络的时间序列模型提取特征,这会遗漏源代码的重要语法语义信息并诱发梯度消失。针对这一问题,提出一种基于Transformer和卷积神经网络的代码克隆检测方法(TCCCD)。首先,TCCCD将源代码表示成抽象语法树,并将抽象语法树切割成语句子树输入给神经网络,其中,语句子树由先序遍历得到的语句结点序列构成,蕴含了代码的结构和层次化信息。其次,在神经网络设计方面,TCCCD使用Transformer的Encoder部分提取代码的全局信息,再利用卷积神经网络捕获代码的局部信息。再次,融合2个不同网络提取出的特征,学习得到蕴含词法、语法和结构信息的代码向量表示。最后,采用两段代码向量的欧氏距离表征语义关联程度,训练一个分类器检测代码克隆。实验结果表明:在OJClone数据集上,精度、召回率、F 1值分别能达到98.9%、98.1%和98.5%;在BigCloneBench数据集上,精度、召回率、F 1值分别能达到99.1%、91.5%和94.2%。与其他方法对比,精度、召回率、F 1值均有提升,所提方法能够有效检测代码克隆。
关键词
代码
克隆检测
抽象语法树(AST)
TRANSFORMER
卷积神经网络
代码特征提取
Keywords
code clone detection
abstract syntax tree(AST)
Transformer
convolutional neural network
code feature extraction
分类号
TP393 [自动化与计算机技术—计算机应用技术]
在线阅读
下载PDF
职称材料
题名
作者
出处
发文年
被引量
操作
1
代码特征自动提取方法
史志成
周宇
《计算机科学与探索》
CSCD
北大核心
2021
7
在线阅读
下载PDF
职称材料
2
基于上下文特征融合的代码漏洞检测方法
徐泽鑫
段立娟
王文健
恩擎
《浙江大学学报(工学版)》
EI
CAS
CSCD
北大核心
2022
3
在线阅读
下载PDF
职称材料
3
基于增强描述的代码搜索方法
黎宣
王千祥
金芝
《软件学报》
EI
CSCD
北大核心
2017
14
在线阅读
下载PDF
职称材料
4
基于众包问答信息的API使用代码搜索
李宇琨
彭鑫
赵文耘
《计算机应用与软件》
北大核心
2018
1
在线阅读
下载PDF
职称材料
5
基于Transformer和卷积神经网络的代码克隆检测
贲可荣
杨佳辉
张献
赵翀
《郑州大学学报(工学版)》
CAS
北大核心
2023
2
在线阅读
下载PDF
职称材料
已选择
0
条
导出题录
引用分析
参考文献
引证文献
统计分析
检索结果
已选文献
上一页
1
下一页
到第
页
确定
用户登录
登录
IP登录
使用帮助
返回顶部