第一次个人编程作业

第一次个人编程作业:论文查重

GitHub链接:https://github.com/biqingl/031802116

一、计算模块借口的设计与实现过程

流程图

TF-IDF算法:

TF-IDF的主要思想是:如果某个词或短语在一篇文章中出现的频率TF高,并且在其他文章中很少出现,则认为此词或者短语具有很好的类别区分能力,适合用来分类。

1)计算词频TF(term frequency):表示一个词语与一篇文章的相关性
TF=该词在一篇文章中出现的次数/文章的总词数

2)计算逆文档频率IDF(inverse document frequency):表示一个词语的出现的普遍程度。
IDF=log(总文章数/出现该词语的文章数)

3)计算文章中某个词语的重要程度,即词频和逆向文件词频的乘积TF-IDF。
TF-IDF = TF * IDF

实现过程:

1)jieba分词;
句子A:我/喜欢/看/电视,不/喜欢/看/电影。
句子B:我/不/喜欢/看/电视,也/不/喜欢/看/电影。

2)使用TF-IDF算法,取出若干个关键词,合并成一个集合;
我,喜欢,看,电视,电影,不,也。

3)计算每篇文章对于这个集合中的词的词频;
句子A:我 1,喜欢 2,看 2,电视 1,电影 1,不 1,也 0。
句子B:我 1,喜欢 2,看 2,电视 1,电影 1,不 2,也 1。

4)生成两篇文章各自的词频向量;
句子A:[1, 2, 2, 1, 1, 1, 0]
句子B:[1, 2, 2, 1, 1, 2, 1]

5)计算两个向量的余弦相似度,值越大就表示越相似;
![](https://img2020.cnblogs.com/blog/2145989/202009/2145989-20200917143815438-265639026.png

二、计算模块部分单元测试

四、PSP表格

五、总结

此次作业让我清楚的认识到了,,建构框架与单纯写和算法和代码和代码不是一个级别的,为了了解性能分析测试与GitHub用法等,疯狂看博客,各种百度,但是不懂的东西太多了,最后也没做出来,汗颜。。清楚得认识到了自己与别人的差距,,总之此次作业对我来说有难度。。

posted @ 2020-09-17 22:59  C丶Queen  阅读(172)  评论(0编辑  收藏  举报