首页 | 官方网站   微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 109 毫秒
1.
代码相似度检测是代码抄袭检测的核心组成部分,对于营造良好的学习氛围、提高知识产权保护意识具有重要作用。总结了应用指纹技术检测代码相似度的基本思路,分析了几种常见的指纹选取方法的优缺点,提出一种改进的面向代码相似度检测的指纹选取方法。该方法能够从疑似抄袭代码集中去除由代码编写规则产生的虚假相似代码对,有效获得代码之间准确的相似度值。  相似文献   

2.
近年来,随着不同编程语言代码自动转换工具的出现,跨语言的代码抄袭检测问题受到了越来越多的关注.现有跨语言代码抄袭检测主要包括传统的基于中间特征的检测方法和近年来出现的基于机器学习的检测方法,后者在检测模型训练完成之后具有更好的检测速度,是当前跨语言代码抄袭检测的研究热点.然而,现有的基于机器学习的跨语言抄袭检测方法大多将代码作为文本来处理,未考虑代码的结构特征.结合代码基于抽象语法树的结构特征,本文提出了一个基于伪孪生神经网络框架的跨语言抄袭检测工具CLPDetector.该工具将训练数据中的源代码对转换成对应的抽象语法树,基于抽象语法树生成代码的向量表示,然后将结合BiLSTM、CNN和Attention的深度神经网络嵌入到伪孪生网络架构中训练抄袭检测模型,从而实现了跨语言代码抄袭的检测.为了提高检测精度,首先,在训练检测模型前,利用基于抽象语法树的skip-gram算法对词向量进行了预训练,并基于程序依赖图删除了训练数据集代码中的冗余代码.其次,在代码抄袭检测阶段,提出了一个基于属性计数的过滤器,用以排除不可能抄袭的代码对,提高检测效率.实验中基于一个开源的数据集,以Java代码和...  相似文献   

3.
针对目前代码抄袭检测方面的研究大多是基于程序源码层面进行相似度比较,不需要对代码进行语法分析,由于忽略程序语法语义,对稍加结构修改的抄袭行为无法有效检测的现状,提出一种基于AST的代码抄袭检测方法.先将代码进行格式化预处理,再进行词法分析、语法分析,得到对应的AST;然后遍历AST生成代码序列,对代码序列进行相似度计算,从而得到代码的抄袭检测报告.实验结果表明,该方法能够有效检测出C程序代码的抄袭行为,并对C++、Java等多种程序代码的抄袭检测具有一定的通用性和可扩展性.  相似文献   

4.
基于XML的C代码抄袭检测算法   总被引:3,自引:0,他引:3       下载免费PDF全文
主要研究一种基于XML文本的C代码抄袭检测算法。将C程序源代码转化为XML文本,提取XML文本各行标记的属性,计算XML文本行的相似值,得到程序对的相似度。并对抄袭检测算法实行分类测试:按十二种抄袭手段分类;按复杂语义和复杂数据结构分类。测试结果对比验证了抄袭检测算法的有效性。  相似文献   

5.
程序代码相似性的识别是利用一定的检测识别手段,判断两个源程序代码之间的相似性,并度量两个程序代码之间的相似程度。代码抄袭是程序设计课程中频繁出现的一种作弊行为,检测源代码的抄袭对验证学生程序作业的独创性非常重要。本文针对计算机教学考核中对程序设计客观性和真实性的要求,应用最长公共子序列算法来对比两个源程序文件在结构上的相似性,同时设计可用于教学考核的程序代码相似度评判系统。  相似文献   

6.
《软件》2019,(11):4-8
为了检测出数据库实验课程中结构化查询语言(StructuredQueryLanguage,SQL)语句代码的抄袭行为,发现因SQL语句篇幅较短,使用现有的技术进行代码检测却没有得到预期的结果,于是提出了一种基于编码习惯的SQL语句抄袭检测算法。获取学生历史的编码数据并分类,判定待检测代码的类别并将其与之类别相同的代码依照学生的编码习惯进行特征提取,进而得到特征矩阵并对比代码之间的相似程度,对涉嫌抄袭的代码进行过滤,判断该代码是否为该学生编写。实验结果表明,该算法能够有效地判断出学生的抄袭行为,同时也解决因编码篇幅较短而带来的难以检测是否为抄袭代码这一问题。  相似文献   

7.
为了检测程序设计类课程中出现的作业抄袭行为,提出了基于抽象语法树的抄袭检测方法.运用语法分析工具对代码进行语法分析生成抽象语法树(AST),通过计算生物学中序列匹配的算法进行程序相似度的计算.提取程序相似部分的AST特征,生成空间向量,聚类分析找出“抄袭团伙”.实验结果表明,该方法对抄袭行为具有较好的检测效果,并能比较准确地找到“抄袭团伙”.  相似文献   

8.
在分析现有程序代码抄袭检测系统的特点及局限性的基础上,提出一种综合文本分析、结构度量和属性计数技术的混合式程序抄袭检测方法。应用文档指纹技术和Winnowing算法计算程序的文本相似度;将程序代码表示成动态控制结构树(Dynamic Control Structure tree,DCS),运用Winnowing算法计算DCS树相似度,从而得到结构相似度;收集并统计程序中的每个变量信息,应用变量相似度算法分析变量信息节点获取变量相似度;分别赋予文本相似度、结构相似度和变量相似度一个权值,计算得到总体的代码相似度。实验结果表明,所提出的方法能够有效检测出各种抄袭行为。针对不同的抄袭门槛值,使用该方法的检测结果准确度和查全率高于JPLAG系统。特别对于结构简单的程序组,此方法和JPLAG系统检测结果的平均准确度分别为82.5%和69.5%,说明所提的方法更加有效。  相似文献   

9.
针对计算机及相关专业教学中存在学生之间抄袭程序现象的问题,研究不同抄袭行为的方式和特征,提出有效的应对方法,介绍自动化查证程序抄袭的研发经验,大幅度减轻教师的教学负担,有效减少学生抄袭程序现象,督促其独立完成编程作业,促进公平竞争和提高教学质量。  相似文献   

10.
计算机专业课程中一般都涉及程序设计类的作业,而如何对学生提交的电子作业进行抄袭检测,是教学中经常要解决的一个问题。文章提出基于程序相似度计算技术,搭建电子作业抄袭检测平台,并结合社会网络分析软件对抄袭进行检测和分析,为减少学生程序设计作业抄袭现象提供一种新的思路。  相似文献   

11.
针对当前基于网络拓扑结构相似性的链路预测算法普遍存在精确度较低且适应性不强的问题,研究发现融合算法能够有效改善这些问题。提出了一种基于神经网络的融合链路预测算法,主要通过神经网络对不同链路预测相似性指标进行融合。该算法使用神经网络对不同相似性指标的数值特征进行学习,同时采用标准粒子群算法对神经网络进行了优化,并通过优化学习后的神经网络模型计算出融合指标。多个真实网络数据集上实验表明,该算法的预测精度明显高于融合之前的各项指标,并且优于现有融合方法的精度。  相似文献   

12.
Most neural network approaches to the cell formation problem do not use information on the sequence of operations on part types. They only use as input the binary part-machine incidence matrix. In this paper we investigate two sequence-based neural network approaches for cell formation. The objective function considered is the minimization of transportation costs (including both intracellular and intercellular movements). Constraints on the minimum and maximum number of machines per cell can be imposed. The problem is formulated mathematically and shown to be equivalent to a quadratic programming integer program that uses symmetric, sequence-based similarity coefficients between each pair of machines. Of the two energy-based neural network approaches investigated, namely Hopfield model and Potts Mean Field Annealing, the latter seems to give better and faster solutions, although not as good as a Tabu Search algorithm used for benchmarking.  相似文献   

13.
跨语言句子语义相似度计算旨在计算不同语言句子之间的语义相似程度。近年来,前人提出了基于神经网络的跨语言句子语义相似度模型,这些模型多数使用卷积神经网络来捕获文本的局部语义信息,缺少对句子中远距离单词之间语义相关信息的获取。该文提出一种融合门控卷积神经网络和自注意力机制的神经网络结构,用于获取跨语言文本句子中的局部和全局语义相关关系,从而得到文本的综合语义表示。在SemEval-2017多个数据集上的实验结果表明,该文提出的模型能够从多个方面捕捉句子间的语义相似性,结果优于基准方法中基于纯神经网络的模型方法。  相似文献   

14.
在搜索引擎、问答系统中利用深度学习的方法计算问题相似度是NLP领域研究的热点。结合卷积神经网络(CNN)和长短记忆网络(LSTM),提出了递归卷积神经网络(RCNN)问句相似度的计算方法,首先利用双向递归神经网络提取上下文信息,然后采用1D卷积神经网络将词嵌入信息与上下文信息进行融合;再利用全局最大池化提取关键信息来完成问句的语义表示;最后通过匹配层判断问句对的相似度。在Quora Question Pairs数据集上的实验结果表明,该相似度计算方法准确率为83.57%,优于其他方法。  相似文献   

15.
周鹏  武延军  赵琛 《软件学报》2019,30(5):1224-1242
自动化编程是智能软件的核心挑战之一,使用程序执行轨迹或输入输出样例学习程序,是自动化编程的典型研究方法.这些方法无法弥合常规程序元素与神经网络组件间的隔阂,不能吸收经验信息输入、缺乏编程控制能力.给出了一种可无缝结合高级编程语言与神经网络组件的混合编程模型:使用高级编程语言元素和神经网络组件元素混合开发应用程序,其中,编程语言描述程序的框架、提供经验信息,关键复杂部分则用未定、可学习的神经网络组件占位,应用程序在可微分抽象机上运行生成程序的连续可微分计算图表示,然后使用输入输出数据,通过可微分优化方法对计算图进行训练,学习程序的未定部分,自动生成完整的确定性程序.可微分抽象机混合编程模型给出了一种能够将编程经验与神经网络自学习相结合的程序自动生成方法,弥合编程语言元素与神经网络元素间的隔阂,发挥并整合高级过程化编程和神经网络可训练学习编程各自的优势,将复杂的细节交给神经网络未定部分自动生成,降低编程难度或工作量,而适当的经验输入又有助于未定部分的学习,同时,为复用长期积累的宝贵编程经验提供输入接口.  相似文献   

16.
针对传统ART2型神经网络的缺点,提出了一种增强了网络执行速度的改进的ART2型神经网络。改进后的算法避免了传统ART2因输入次序不同而导致的输出结果不同的缺陷。应用了一种新的方法计算输入模式与所有模式的相似度。为了解决传统ART2型神经网络的模式漂移问题引入了激活深度的概念。改善了ATR2型神经网络的适用性。  相似文献   

17.
传统的主题爬虫在计算主题相似度时,通常采用基于词频、向量空间模型以及语义相似度的方法,给相似度计算准确率的提升带来一定瓶颈。因此,提出融合LDA的卷积神经网络主题爬虫,将主题判断模块视为文本分类问题,利用深度神经网络提升主题爬虫的性能。在卷积层之后拼接LDA提取的主题特征,弥补传统卷积神经网络的主题信息缺失。实验结果表明,该方法可以有效提升主题判断模块的平均准确率,在真实爬取环境中相比其他方法更具优势。  相似文献   

18.
程序生成是人工智能的核心研究问题之一,当前输入输出样例驱动的神经网络模型是非常流行的研究方法.面临的主要挑战是泛化能力差、生成程序准确率保证、难以处理复杂程序结构(如分支、循环、递归等),主要原因是模型的输入信息单一(输入输出对)和完全依赖神经网络.显然单一地通过输入输出样例倒推程序行为存在歧义性,而神经网络的记忆容量很难满足常规程序的变量存储需求.提出一种人工与神经网络生成相协作的编程模型,融合神经网络和程序员各自的优势,其中程序员用高级编程语法编写程序框架,神经网络自动学习生成程序局部的琐碎细节,从而促进自动化程序生成方法更好地应对实际应用挑战.实验表明,研究方法是有效的,跟同类代表性研究方法相比表现出更好的学习性能.  相似文献   

19.
宋利  刘靖 《软件学报》2019,30(5):1464-1480
二阶变异测试通过向源程序中人工注入两个缺陷来模拟程序实际的复杂缺陷,在软件测试中具有重要意义.但由一阶变异体组合形成二阶变异体后数量会急剧增长,极大地增加了程序的执行开销.为了减少二阶变异体数量,降低程序的执行开销,提出一种基于SOM神经网络的二阶变异体约简方法.该方法首先采用较为全面的二阶变异体错误组合策略,对一阶变异体组合形成二阶变异体;然后,根据二阶变异体执行过程中的中间值相似性,进行基于SOM神经网络的变异体聚类.使用经典的基准程序和开源程序进行了方法的验证,实验结果表明,一方面,使用错误覆盖更为全面的组合策略能够充分模拟程序的复杂缺陷,聚类约简后,二阶变异体的个数在极大减少的同时,二阶变异充分度和一阶变异充分度更加接近,但是因为执行的二阶变异体数目明显降低,从而使得运行聚类后的二阶变异体时间开销明显比执行全部二阶变异体降低;另一方面,实验过程发现了有利于增加测试组件的隐藏二阶变异体.  相似文献   

20.
现有的链路预测方法的数据来源主要是基于邻居、路径和随机游走的方法,使用的是节点相似性假设或者最大似然估计,尚缺少基于神经网络的链路预测研究。基于神经网络的一些研究表明,基于神经网络的DeepWalk网络表示学习算法可以更加有效地挖掘到网络中的结构特征,已有研究证明DeepWalk等同于分解目标矩阵。因此,提出了一种基于矩阵分解的DeepWalk链路预测算法(LPMF)。该算法首先基于矩阵分解的DeepWalk算法分解得到网络的表示向量;然后通过余弦相似度计算每对节点之间的相似度,构建目标网络的相似度矩阵;最后利用相似度矩阵,在三个真实的引文网络中进行链路预测实验。实验结果表明,提出的链路预测算法性能优于现存的20余种链路预测算法。这充分表明了LPMF能够有效地挖掘网络中节点之间的结构关联性,而且在实际网络的链路预测中能够发挥出较为优异的性能。  相似文献   

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

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

京公网安备 11010802026262号