首页 > 其他分享 >个人项目

个人项目

时间:2024-09-14 23:13:11浏览次数:6  
标签:文件 个人 项目 论文 60 命令行 txt orig

这个作业属于哪个课程 班级链接
这个作业要求在哪里 作业链接
这个作业的目标 设计一个论文查重算法,给出一个原文文件和一个在这份原文
上经过了增删改的抄袭版论文的文件,在答案文件中输出其重复率。

Github链接:点击此处

PSP表格

PSP2.1 Personal Software
Peocess Stages
预估时间
(分钟)
实际耗时
(分钟)
Planning 计划 60 60
* Estimate * 估计这个任务需要多少时间 60 60
Development 开发 720 625
* Analysls * 需求分析(包括学习新技能) 120 145
* Design Spec * 生成设计文档 60 30
* Design Review * 设计复审 30 45
* Coding Standard * 代码规范(为目前的开发制定合适的规范) 60 30
* Design * 具体设计 120 130
* Coding * 具体编码 150 100
* Coding Review * 代码复审 60 45
* Test * 测试(自我测试、修改代码、提交修改) 120 100
Reporting 报告 150 60
* Test Report * 测试报告 60 30
* Size Measurement * 计算工作量 30 15
* Postmortem & Process
Improvement Plan
* 事后总结,并提出过程改进计划 60 15
合计 930 745

需求分析

需求:

题目:论文查重

描述如下:

设计一个论文查重算法,给出一个原文文件和一个在这份原文上经过了增删改的抄袭版论文的文件,在答案文件中输出其重复率。

原文示例:今天是星期天,天气晴,今天晚上我要去看电影。
抄袭版示例:今天是周天,天气晴朗,我晚上要去看电影。
要求输入输出采用文件输入输出,规范如下:

从命令行参数给出:论文原文的文件的绝对路径。
从命令行参数给出:抄袭版论文的文件的绝对路径。
从命令行参数给出:输出的答案文件的绝对路径。
我们提供一份样例,课堂上下发,上传到班级群,使用方法是:orig.txt是原文,其他orig_add.txt等均为抄袭版论文。

注意:答案文件中输出的答案为浮点型,精确到小数点后两位

分析:

设计一个论文查重算法,通过对原文和抄袭版论文进行比对,输出重复率
可以使用余弦相似度来实现

实现思路

  1. 分词:对需要比较的文本进行分词,获得词和词频(key/num)
  • 使用已有工具库:目前,常用流行的以及分次效果好的工具库包括:jieba、HanLP、LTP、FudanNLP等
  1. 统计:统计所有的词,作为向量的维度
  2. 构建:以词作为维度,词频作为当前维度的值,构建向量。没有的以0填充
  3. 计算:

具体设计

测试样例

  1. orig.txt与orig_0.8_add.txt进行比对
    命令行:

    重复率:

    答案文件输出:
  2. orig.txt与orig_0.8_del.txt进行比对
    命令行:

    重复率:

    答案文件输出:
  3. orig.txt与orig_0.8_dis_1.txt进行比对
    命令行:

    重复率:

    答案文件输出:
  4. orig.txt与orig_0.8_dis_10.txt进行比对
    命令行:

    重复率:

    答案文件输出:
  5. orig.txt与orig_0.8_dis_15.txt进行比对
    命令行:

    重复率:

    答案文件输出:

异常处理说明

  1. 命令行未给出文件路径:
  2. 命令行读取的文件不存在

总结:

本次个人项目使用了Maven工具进行Java项目的开发,通过余弦相似度进行论文的比对,通过以词为维度,词频作为量来

对比两篇文字同一词汇出现的次数来计算重复率,但如果两篇文章使用的词相似,词的位置差距较大,则会被鉴定为抄袭

,因此使用余弦相似法具有一定的误差。

标签:文件,个人,项目,论文,60,命令行,txt,orig
From: https://www.cnblogs.com/renata123/p/18409084

相关文章

  • 个人项目——论文查重
    这个作业属于哪个课程https://edu.cnblogs.com/campus/gdgy/CSGrade22-34这个作业要求在哪里https://edu.cnblogs.com/campus/gdgy/CSGrade22-34/homework/13229这个作业的目标个人项目——论文查重一:我的github仓库地址https://github.com/kelin-KL/kelin-KL......
  • 个人项目
    这个作业属于哪个课程计科3班这个作业要求在哪里作业要求这个作业的目标<单元测试,代码性能,PSP表,git的正确使用>GithubPSP表格PSP2.1PersonalSoftwareProcessStages预估耗时(分钟)实际耗时(分钟)Planning计划2030·Estimate·估计这个任务......
  • 个人项目
    这个作业属于哪个课程https://edu.cnblogs.com/campus/gdgy/CSGrade22-34/这个作业要求在哪里https://edu.cnblogs.com/campus/gdgy/CSGrade22-34/homework/13229这个作业的目标设计一个论文查重算法,给出一个原文文件和一个在这份原文上经过了增删改的抄袭版论文的......
  • 个人学习笔记7-5:动手学深度学习pytorch版-李沐
    #人工智能##深度学习##语义分割##计算机视觉##神经网络#计算机视觉13.10转置卷积例如,卷积层和汇聚层,通常会减少下采样输入图像的空间维度(高和宽)。然而如果输入和输出图像的空间维度相同,在以像素级分类的语义分割中将会很方便。转置卷积(transposedconvolution)可以增加......
  • 个人项目
    https://github.com/z-ronin/z-ronin2.开发环境:IntelliJIDEACommunityEdition2024.1PSP表格计算机模块设计与实验类:Main:这是唯一的类,包含了程序的入口点main方法以及用于文件处理、相似度计算和结果输出的辅助方法。函数:main(String[]args):程序的入口点,负责处......
  • CMake构建学习笔记16-使用VS进行CMake项目的开发
    目录1.概论2.详论2.1创建工程2.2加载工程2.3配置文件2.4工程配置2.5调试执行3.项目案例4.总结1.概论在之前的系列博文中,我们学习了如何构建第三方的依赖库,也学习了如何去组建自己的CMake项目,尤其是学习了CMake的核心配置文件CMakeLists.txt如何编写。长期以来,CMakeLis......
  • 个人项目
    所属课程https://edu.cnblogs.com/campus/gdgy/CSGrade22-34作业要求https://edu.cnblogs.com/campus/gdgy/CSGrade22-34/homework/13229作业目标学会github的使用,熟悉markdown格式,熟悉个人开发流程,了解项目单元测试Github链接:https://github.com/Qiteng925/Q......
  • 个人项目
    这个作业属于哪个课程https://edu.cnblogs.com/campus/gdgy/CSGrade22-12这个作业要求在哪里https://edu.cnblogs.com/campus/gdgy/CSGrade22-12/homework/13220这个作业的目标学会论文查重算法,学会使用git等操作github地址https://github.com/nurimanguli/322......
  • 个人项目
    这个作业属于哪个课程https://edu.cnblogs.com/campus/gdgy/CSGrade22-34/这个作业要求在哪里https://edu.cnblogs.com/campus/gdgy/CSGrade22-34/homework/13229这个作业的目标开发个人项目,实现项目单元测试个人github仓库地址:https://github.com/Kun3M/322200......
  • c语言快递小项目
    structpack_head{  intfd;//通信的文件描述符  unsignedchartype; //消息类型  unsignedcharusertype;//用户类型:1:用户 2:快递员   charname[32]; //用户名  charpaaswd[32];//密码  charbuf[32]; //调试信息  stru......