xixixii

个人项目-论文查重

这个作业属于哪个课程 计科22级1班
这个作业要求在哪里 要求
这个作业的目标 设计软件

GitHub链接

PSP表格

PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)
Planning 计划 30 30
Estimate 估计这个任务需要多少时间 200 200
Development 开发 500 600
Analysis 需求分析 (包括学习新技术) 200 100
Design Spec 生成设计文档 50 60
Design Review 设计复审 50 60
Coding Standard 代码规范 (为目前的开发制定合适的规范) 50 20
Design 具体设计 30 30
Coding 具体编码 100 120
Code Review 代码复审 10 20
Test 测试(自我测试,修改代码,提交修改) 30 20
Reporting 报告 30 30
Test Repor 测试报告 20 10
Size Measurement 计算工作量 10 5
Postmortem & Process Improvement Plan 事后总结, 并提出过程改进计划 20 30
合计 1330 1335

模块的设计

项目结构如下图

基本思路是海明算法,通过hanlp模块将文件分词,通过MD5算法来得到散列值,然后for计算得到词频进行加权,最后合并再降维得到海明距离

性能改进

开始想做余弦算法,但是这个知识点没有现成的资料来进行研究,,于是选择了更加寻常的simhash算法,其实感觉使用两个算法一起进行的会使得程序的性能更强大
对应性能分析图

其中消耗最大的算法是得到哈希值的getsimhash算法

单元测试

对应代码覆盖率

测试代码

主程序测试代码

对提供的文本内容进行查重处理
结果如下图

产生海明距离的代码测试

通过simhash算法进行海明距离的运算

异常处理

对文本内容文字数量的异常

对文本类型的异常

posted on 2024-09-15 06:00  息息系  阅读(6)  评论(0编辑  收藏  举报

导航