首页 > 其他分享 >个人项目:论文查重

个人项目:论文查重

时间:2023-09-17 11:55:35浏览次数:37  
标签:查重 30 20 个人 论文 vec return data def

个人项目

作业属于哪个课程 软件工程
作业要求 作业要求
github地址 作业github地址

PSP

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

需求分析

  • 设计一个论文查重算法,通过给出原文和原文上经过了抄袭版的论文,在答案中输出重复率
  • 文件输入规范
    • 命令行参数给出:论文原文的文件的绝对路径
    • 命令行参数给出:抄袭论文的文件的绝对路径
    • 命令行参数给出:输出答案的绝对路径
  • 给出答案为浮点型,保留后两位小数

流程

image

关键代码

相似度计算

# 计算余弦相似度
# 传入参数为numpy
def cos_similarity(vector1,vector2):
    dot=np.sum(np.dot(vector1,vector2))
    a=np.sum(vector1**2)**0.5
    b=np.sum(vector2**2)**0.5
    return dot/(a*b)

将词句变成向量

def TF(data1,data2):
    count_vec=CountVectorizer()
    data=[data1,data2]
    vec_1=count_vec.fit_transform(data).toarray()[0]
    vec_2=count_vec.fit_transform(data).toarray()[1]
    return vec_1,vec_2

分词和过滤

# 过滤器
# 目的是过滤掉标点符号,换行符等没有什么意义的符号
def filter(data):

    result=[]

    # 遍历 ,data中所有的元素
    for index in data:
        # 用正则表达式将,a-z,A-Z,0-9,汉字,有意义的留下来
        if(re.match(u"[a-zA-Z0-9\u4e00-\u9fa5]",index)):
            result.append(index)
        else:
            pass
    return result

# 分词
def seg(data):
    data=jieba.cut(data)
    data=filter(data)
    return " ".join(data)

性能分析

使用Pycharm自带的性能分析软件
image

覆盖率分析

image

覆盖率为93%,没有被覆盖的地方为异常处理处
image

标签:查重,30,20,个人,论文,vec,return,data,def
From: https://www.cnblogs.com/HAAAPY/p/17707554.html

相关文章

  • C++实现论文查重
    软件工程https://edu.cnblogs.com/campus/gdgy/CSGrade21-12/homework/13014作业要求根据给出的样例进行查重,并把结果记录在PSP表格中作业目的对查重有一定的初步了解GitHub链接https://github.com/xingch123456789/3119000414PSP表格PSP2.1Person......
  • 论文解读(FixMatch)《FixMatch: Simplifying Semi-Supervised Learning with Consistenc
    Note:[wechat:Y466551|可加勿骚扰,付费咨询]论文信息论文标题:FixMatch:SimplifyingSemi-SupervisedLearningwithConsistencyandConfidence论文作者:论文来源:2020aRxiv论文地址:download 论文代码:download视屏讲解:click1-介绍 动机:解决现有半监督方法利用未标记......
  • 第一次个人项目
    这个作业属于哪个课程软件工程这个作业要求在哪里作业要求这个作业的目标论文查重:项目地址开发环境windows下开发,python版本:3.7需要安装jieba、gensim等库词句分析使用jieba的库可以很好的对一个中文语句进行分词对字符串的处理接口如下,先使用正则表达式......
  • c++论文查重
    github连接这个作业属于哪个课程软件工程这个作业要求在哪里在这里这个作业的目标了解PSP,写一个论文查重程序,使用github管理项目PSP表PSP2.1PersonalSoftwareProcessStages预估耗时(分钟)实际耗时(分钟)Planning计划2020Estimate估计这个任......
  • 个人项目:Python实现简易论文查重
    这个作业属于哪个课程软件工程这个作业要求在哪里个人项目这个作业的目标个人项目,实现论文查重功能本项目上传至个人GitHub:yulinnn/3121004802项目需求题目:论文查重描述如下:设计一个论文查重算法,给出一个原文文件和一个在这份原文上经过了增删改的抄袭版论......
  • [论文速览] SDXL@ Improving Latent Diffusion Models for High-Resolution Image Syn
    Pretitle:SDXL:ImprovingLatentDiffusionModelsforHigh-ResolutionImageSynthesisaccepted:arXiv2023paper:https://arxiv.org/abs/2307.01952code:https://github.com/Stability-AI/generative-models关键词:imagesynthesis,stablediffusion,SDXL,AICG......
  • 软件工程-个人项目
    这个作业属于哪个课程https://edu.cnblogs.com/campus/gdgy/CSGrade21-34/这个作业要求在哪里https://edu.cnblogs.com/campus/gdgy/CSGrade21-34/homework/13023这个作业的目标完成一个论文查重系统github链接https://github.com/SoyoOfficial/SoyoOfficial......
  • rust_trait个人理解
    0概述什么是traitrust中有许许多多的类型(枚举、结构体...),如果这些不同类型,都有类似的行为,我们把这个行为抽象出来,把他定义为一个特征(trait)一个trait中可以包含,一个或者一组行为,表现形式就是方法or函数1特征约束1.1特征约束1.2特征做函数参数的语法糖真特么nb,看下......
  • 个人项目:论文查重
    1.项目地址Nurali524/3121004877(github.com)2.PSP表格PSP2.1PersonalSoftwareProcessStages预估耗时(分钟)实际耗时(分钟)·Planning计划4030·Estimate估计这个任务需要多少时间510·Development开发200250·Analysis需求分析(包括学习新技术......
  • 软件工程--个人项目
    软件工程个人项目1.作业概述这个作业属于哪个课程软件工程这个作业的要求在哪里个人项目这个作业的目标设计一个论文查重算法,给出一个原文文件和一个在这份原文上经过了增删改的抄袭版论文的文件,在答案文件中输出其重复率Github链接链接2.需求分析题......