Python程序设计题的查重研究

来源 :新疆农业大学 | 被引量 : 0次 | 上传用户:fanfrong
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
程序设计题的查重实质上就是对程序代码之间的相似度进行检测,通过程序代码之间的相似度得出程序代码之间的重复率。本文主要对Python程序设计题进行查重研究,同时设计实现出适用于Python程序设计题的查重系统,使得该系统可用于Python程序语言的教学中。虽然本系统的研究主体是Python语言,但其设计原理和方法具有普遍性,因此对其它程序设计语言同样适用。本文的主要研究工作如下:1)本文对外国内外已有的抄袭检测系统的实现方法和原理进行了研究,分析了各个系统之间的优点和缺点。确立本系统的实现采用属性计数技术和结构度量技术相结合的方法。2)本文对向量空间模型原理和实现方法进行了研究,借鉴向量空间模型在文本分类问题中的运用。确立本系统采用向量空间模型把程序代码转换成由特征项组合而成的特征向量,由特征向量之间的相似度得到程序代码之间的相似度。3)本文对正则匹配技术、抽象语法树处理技术以及常见的几种特征提取算法的原理和实现方法进行了研究。设计实现了基于程序代码和基于抽象语法树这两种特征提取方法。4)本文对常用的几种特征加权方法的原理和实现方法进行了研究。设计实现了一种改进的逆文档频率加权算法,这种加权算法能很好地适用于程序代码的特征向量加权。5)本文对常用的几种向量相似度计算方法的原理和实现方法进行了研究。并设计实现了适用于本系统的一种全新的向量相似度计算方法。6)本文从基于程序代码和基于抽象语法树这两种特征提取方法的角度,分别用余弦夹角、相关系数、差异程度这三种相似度计算方法对三种不同程度的抄袭进行了检测,并将最终的检测结果与MOSS系统的检测结果进行比对。同时,为了验证查重系统的可行性,本文还选取了实际教学中的学生代码进行了测试,并与人工比对的结果进行了比较。通过对最终测试结果进行对比分析,本系统能较好的识别不同程度的抄袭,并给出相应的判断。本文通过对系统的测试结果与MOSS系统的测试结果进行比对分析,得出本系统从基于抽象语法树的角度进行特征提取,采用差异程度算法计算特征向量的相似度,最终得到的查重结果最优。
其他文献
浙江省农村文化礼堂建设方兴未艾,逐步成为农村和农民的"精神文化家园"。绍兴市的文化礼堂建设也涌现出许多颇具特色的样本,将本地历史、文化和产业密切相连,在农村精神文明
针对目前公路车-桥耦合分析系统功能的不足,建立了随机车流-桥梁耦合振动精细化分析框架,该分析框架尽可能考虑了桥梁上通行车辆荷载的随机特性。采用交通信息采集系统和动态
研究了采用水力旋流重选—酸浸提纯工艺从阳极炉洗渣中富集硫酸钡。试验结果表明:旋流重选精砂产率为26.83%,精砂中硫酸钡质量分数96.25%;对重选中砂进行酸浸,在c(H2SO4)=2mo
美国SonTek/YSI公司生产的声学多普勒流速剖面仪mini-ADP(以下都简称ADP),在黑龙江干流洛古河水文站进行畅流期流量比测分析试验,验证了ADP在黑龙江上进行流量测验的精度。
研究了用硫酸从含钴镍工业废渣中浸出钴、镍,及用焦亚硫酸钠将Co3+、Ni3+还原为Co2+、Ni2+,考察了硫酸浓度、还原剂用量、液固体积质量比、浸出时间、搅拌速度及反应温度对钴、镍
国务院教育督导委员会贯彻落实中共十八届三中全会《决定》"深化教育领域综合改革,强化国家教育督导精神"中的一项重要的举措就是中小学责任督学挂牌督导。如今,我国的教育改
党的十八大以来,习近平在治国理政理论构建和实践之中对家庭的重要作用予以高度关注,使其重要性得到广泛认同。当前学界主要从形成条件、丰富内涵、实践路径、交叉比较关系以