你的儿时我的儿时好似都那样

小小的皮肤大幅背包上呀上大学堂

当今世界Donzy没讨厌读书的小孩子

被爸爸妈妈打多了,也就有了~

自动草稿

读书意味着什么呢~意味着开始做工作台

假期工作台没写怎么办?赶紧拿姐妹的来抄,你心里悄咪咪的笑了,终于赶上了最后学委去办公室的那趟高速。

自动草稿

哈哈哈这很可以,儿时的真实情况一览无余了。今天我还看到一个笑话:

为防抄工作台,爸爸要求将五胞胎分在五个班 。

自动草稿

这操作真神了,但是哪用这么麻烦撒!

今天小编带大家写这款剽窃检验小JAVA,在家就能知道你孩子的工作台都互相剽窃了没~

正文

首先载入所有必要的模块(1):

import os from sklearn.feature_extraction.text import TfidfVectorizer from sklearn.metrics.pairwise import cosine_similarity

使用OS模块加载文本文件的路径,然后使用TfidfVectorizer对文本数据和余弦相似度执行词嵌入,来计算是否存在剽窃。(2):

用列表推导式(List Comprehension)读取所有文本文件

student_files =[doc for doc in os.listdir() if doc.endswith( .txt )]

使用Lambda功能来向量化并计算相似性(3):

vectorize =lambda Text: TfidfVectorizer().fit_transform(Text).toarray()similarity = lambda doc1, doc2:cosine_similarity([doc1, doc2])

加入下列两行代码,将加载的学生文件向量。

vectors =vectorize(student_notes)s_vectors = list(zip(student_files,vectors))

def check_plagiarism(): plagiarism_results = set() global s_vectors for student_a, text_vector_a in s_vectors: new_vectors=s_vectors.copy() current_index = new_vectors.index((student_a,text_vector_a)) del new_vectors[current_index] for student_b , text_vector_b in new_vectors: sim_score =similarity(text_vector_a, text_vector_b)[0][1] student_pair= sorted((student_a, student_b)) score = (student_pair[0], student_pair[1],sim_score) plagiarism_results.add(score) return plagiarism_results Let’s print plagiarism results for data in check_plagiarism(): print(data)

import os from sklearn.feature_extraction.text import TfidfVectorizer from sklearn.metrics.pairwise import cosine_similaritystudent_files = [doc for doc in os.listdir() if doc.endswith( .txt )] student_notes=[open(File).read() for File in student_files]vectorize = lambda Text:TfidfVectorizer().fit_transform(Text).toarray() similarity = lambda doc1, doc2: cosine_similarity([doc1,doc2])vectors = vectorize(student_notes) s_vectors= list(zip(student_files, vectors))def check_plagiarism(): plagiarism_results = set() global s_vectors for student_a, text_vector_a in s_vectors: new_vectors=s_vectors.copy() current_index = new_vectors.index((student_a,text_vector_a)) del new_vectors[current_index] for student_b , text_vector_b in new_vectors: sim_score =similarity(text_vector_a, text_vector_b)[0][1] student_pair= sorted((student_a, student_b)) score = (student_pair[0], student_pair[1],sim_score) plagiarism_results.add(score) return plagiarism_resultsfor data in check_plagiarism(): print(data)

总结

剽窃检验器完成啦!老师们用起来,广大中小学生们的美梦就此结束了。

自动草稿
1.本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2.分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3.不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4.本站提供的源码、模板、插件等其他资源,都不包含技术服务请大家谅解!
5.如有链接无法下载或失效,请联系管理员处理!
6.本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!