首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到16条相似文献,搜索用时 180 毫秒
1.
程序代码相似度度量算法研究   总被引:5,自引:0,他引:5  
代码剽窃是程序设计课程中经常出现的一种作弊行为,检测剽窃的源代码,验证学生程序作业的原创性在教学中很重要.程序代码的相似度度量是剽窃检测的关键技术.通过对现有程序代码相似度度量技术进行研究后,基于Karp-Rabin和最长公共子串算法思想,提出了一种改进的源代码相似度度量算法,即串的散列值匹配算法.  相似文献   

2.
程序代码的相似度是剽窃检测的关键技术。通过对现有程序代码相似度度量技术进行研究后,基于属性技术法、结构度量法提出了一种属性计数和结构度量相结合的方法。通过统计程序源代码的操作符和操作数个数以及程序逻辑结构从而产生出一个特征向量,利用向量夹角的余弦计算属性相似度。实验结果表明,该方法能够有效检测出作业中相似的程序代码。  相似文献   

3.
程序代码相似度度量的研究与实现   总被引:1,自引:1,他引:0       下载免费PDF全文
针对程序代码相似度的度量问题,提出一种属性计数和结构度量相结合的方法,通过统计程序源代码的操作符和操作数个数,产生Halstead长度、Halstead词汇和Halstead容量3个程序的特征向量,利用向量夹角的余弦计算属性相似度,采用最长公共子序列算法获取结构相似度,从而衡量程序对间的相似程度。实验结果表明,该方法能够有效检测出学生作业中的相似程序代码。  相似文献   

4.
检测剽窃的源代码,在验证学生的作业中很重要。代码的相似度度量是剽窃检测的关键技术。首先本文介绍了源代码剽窃检测技术在国内外的发展情况,然后提出了一种改进的基于Karp-Rabin和GST算法的程序源代码相似度测量方法。  相似文献   

5.
代码相似性检测在程序设计教学中的应用   总被引:1,自引:0,他引:1  
张莉  周祖林 《计算机教育》2009,(13):116-118,112
代码剽窃是程序设计课程中经常出现的一种作弊行为,检测剽窃的源代码、验证学生程序作业的原创性在教学中很重要。程序代码的相似度度量是剽窃检测的关键技术。本文首先对现有程序代码相似性检测技术进行研究,然后改进Halstead算法,提出了基于统计学方法程序代码相似性检测算法,最后对算法的有效性进行了实验分析。  相似文献   

6.
在软件开发的过程中,开发人员通过复制粘贴式的开发方式或者模块化的开发方式来完成需求是十分常见的,这两种开发方式可以提高开发效率,但同时会导致软件系统中出现大量的相同代码或者相似代码,大量的相似代码会给软件维护等方面带来很大的困难,这也是最常见的重构对象。源代码相似性度量是指利用一定的检测方法分析程序源代码间的相似程度。该技术被应用于代码抄袭检测、代码克隆检测、软件知识产权保护、代码复用等多个领域。为了提高代码相似性度量的准确性,提出了一种基于多特征值的源代码相似性检测技术。构建了源代码注释、型构、代码文本语句与结构中特征提取的方法,并给出了源代码相似度检测的度量模型。通过与权威的代码相似检测系统Moss进行对比实验,结果表明该方法可以更准确地检测出相似代码。  相似文献   

7.
根据基于内容的概念格图形的近似自相似性,给出了用户自定义基块和划分细度的近似自相似度度量方法,在此基础上又提出确定关键子块的近似自相似度度量方法,最后分别用这两种方法对概念格图形的近似自相似性进行分析,并提出了概念格近似自相似度度量的应用方向.  相似文献   

8.
相似度量是Vague集研究中的一个重要内容,对于知识表达、模式识别等研究具有重要意义。引入了Vague值(集)相似度量的基本准则,并对现有的一些Vague值(集)相似度量方法进行研究,发现目前Vague值(集)相似度量方法存在一些缺陷,因此提出了一种新的Vague值(集)的相似度量方法,并通过数据分析验证了新方法的有效性。  相似文献   

9.
一个基于未知度的Vague集(值)相似度量新方法   总被引:2,自引:0,他引:2  
相似度是研究和应用Vague集(值)的重要工具.分析了现有Vague集(值)之间的相似度量方法,揭示了这些方法不能准确刻画Vague集(值)之间相似度量的本质,并总结了相似度量的一般准则,指出了影响Vague集相似度量的3个因素.在此基础上充分考虑了未知度,它为Vague集之间的相似度提供了一种更好的度量方法.最后用实例说明其应用以及该方法的有效性和直观性.  相似文献   

10.
一种新的Vague集相似度量   总被引:2,自引:0,他引:2  
针对以往的Vague集相似度量方法的不足之处,提出了一种新的Vague值相似度的定义,并重新给出了新的Vague集相似度量的定义和性质。最后,又提出了在Vague环境下用Vague集间的相似度和相似度量进行模式识别的方法。通过一些应用实例计算,结果表明,该Vague集的相似度量具有一定的优越性,并提高了Vague集相似度量的精确度。  相似文献   

11.
目的 为提取可充分表达图像语义信息的图像特征,减少哈希检索中的投影误差,并生成更紧致的二值哈希码,提出一种基于密集网络和改进的监督核哈希方法。方法 用训练优化好的密集网络提取图像的高层语义特征;先对提取到的图像特征进行核主成分分析投影,充分挖掘图像特征中隐含的非线性信息,以减少投影误差,再利用监督核哈希方法对图像特征进行监督学习,将特征映射到汉明空间,生成更紧致的二值哈希码。结果 为验证提出方法的有效性、可拓展性以及高效性,在Paris6K和LUNA16(lung nodule analysis 16)数据集上与其他6种常用哈希方法相比,所提方法在不同哈希码长下的平均检索精度均较高,且在哈希码长为64 bit时,平均检索精度达到最高,分别为89.2%和92.9%;与基于卷积神经网络的哈希算法(convolution neural network Hashing,CNNH)方法相比,所提方法的时间复杂度有所降低。结论 提出一种基于密集网络和改进的监督核哈希方法,提高了图像特征的表达能力和投影精度,具有较好的检索性能和较低的时间复杂度;且所提方法的可拓展性也较好,不仅能够有效应用到彩色图像检索领域,也可以应用在医学灰度图像检索领域。  相似文献   

12.
传统的服装检索方法使用固定形状的感受野,当服装目标存在几何变形时无法有效地提取其特征。针对这个问题,提出基于可变形卷积和相似性学习的服装检索方法。首先,构建可变形卷积网络,自动学习服装特征的采样位置和服装图像的哈希编码;然后,级联相似性学习网络,度量哈希编码的相似性;最后,根据相似性评分产生检索结果。实验结果表明,该方法能够有效地提取存在几何变形的服装目标的特征,从而减少了图像背景特征的干扰,提高了检索模型的准确率。  相似文献   

13.
源代码相似程度分析在软件工程和计算机教学等领域都有重要的应用.软件工程领域的源代码盗窃和著作权纠纷仲裁,计算机教学领域的学生作业作弊分析都需要源代码相似程度的分析.良好的源代码相似程序分析软件还可以应用于相似代码聚类和搜索引擎的源代码搜索领域.尽管源代码相似程度分析问题由来已久,但是这个问题并没有令人十分满意和惊喜的研究结果.源代码有其特殊结构,使用传统的纯文本相似度分析显然是不合适的.将首先介绍这个问题的研究历史和进展,简单分析这个问题的难点所在,继而介绍一个新的基于程序控制流图分析的源代码相似程度分析系统,并给出其算法和实现细节.文章最后将分析这个方法的优劣所在,讨论这个方法的进一步改进方向.  相似文献   

14.
代码相似性检测常用于代码预测、知识产权保护和漏洞搜索等领域,可分为源代码相似性检测和二进制代码相似性检测。软件的源代码通常难以获得,因此针对二进制代码的相似性检测技术能够适用的场景更加广泛,学术界也先后提出了多种检测技术,文中对近年来该领域的研究进行了综述。首先总结代码相似性检测的基本流程和需要解决的难题(如跨编译器、跨编译器优化配置、跨指令架构检测);然后根据关注的代码信息的不同,将当前的二进制代码相似性检测技术分为4类,即基于文本的、基于属性度量的、基于程序逻辑的和基于语义的检测技术,并列举了部分代表性方法和工具(如Karta,discovRE,Ge-nius,Gemini,SAFE等);最后根据发展脉络和最新研究成果,对该领域的发展方向进行了分析和论述。  相似文献   

15.
Program plagiarism detection is a task of detecting plagiarized code pairs among a set of source codes. In this paper, we propose a code plagiarism detection system that uses a parse tree kernel. Our parse tree kernel calculates a similarity value between two source codes in terms of their parse tree similarity. Since parse trees contain the essential syntactic structure of source codes, the system effectively handles structural information. The contributions of this paper are two-fold. First, we propose a parse tree kernel that is optimized for program source code. The evaluation shows that our system based on this kernel outperforms well-known baseline systems. Second, we collected a large number of real-world Java source codes from a university programming class. This test set was manually analyzed and tagged by two independent human annotators to mark plagiarized codes. It can be used to evaluate the performance of various detection systems in real-world environments. The experiments with the test set show that the performance of our plagiarism detection system reaches to 93% level of human annotators.  相似文献   

16.
AADL构件到RTLinux平台C代码的转换方法研究*   总被引:1,自引:1,他引:0  
朱江  张茂林 《计算机应用研究》2011,28(12):4613-4615
为了提高嵌入式软件开发的自动化程度,代码自动生成是一种值得采用的有效方法.在研究体系结构分析与设计语言(AADL)和RTLinux(real-time Linux)平台C代码的特性的基础上,提出了AADL构件到RTLinux平台C代码的转换规则;然后用一个实例实现了代码自动生成,从而验证了转换规则的有效性.  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号