您現在的位置是:首頁 > 旅遊

同學!你因作業作弊已被AI抓獲,Python製作一款AI檢測抄襲小指令碼

由 程式設計木木 發表于 旅遊2022-07-24
簡介toarray() similarity = lambda doc1, doc2: cosine_similarity([doc1,doc2])vectors = vectorize(student_notes) s_vectors= li

python可以製作外掛嗎

同學!你因作業作弊已被AI抓獲,Python製作一款AI檢測抄襲小指令碼

導語

你的童年我的童年好像都一樣

小小身體大大書包上呀上學堂

世界上本沒有喜歡上學的小孩

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

同學!你因作業作弊已被AI抓獲,Python製作一款AI檢測抄襲小指令碼

上學意味著什麼呢~意味著開始做作業

假期作業沒寫怎麼辦?趕緊拿姐妹的來抄,你心裡悄咪咪的笑了,終於趕上了最後學委去辦公室的那趟高速。

同學!你因作業作弊已被AI抓獲,Python製作一款AI檢測抄襲小指令碼

哈哈哈這很可以,童年的真實情況一覽無餘了。今天我還看到一個笑話:

為防抄作業,爸爸要求將五胞胎分在五個班 。

同學!你因作業作弊已被AI抓獲,Python製作一款AI檢測抄襲小指令碼

同學!你因作業作弊已被AI抓獲,Python製作一款AI檢測抄襲小指令碼

這操作真神了,但是哪用這麼麻煩撒!

今天小編帶大家寫一款抄襲檢測小指令碼,在家就能知道你孩子的作業都互相抄襲了沒~

正文

首先載入所有必要的模組(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)

總結

抄襲檢測器完成啦!老師們用起來,廣大中小學生們的美夢就此結束了。

同學!你因作業作弊已被AI抓獲,Python製作一款AI檢測抄襲小指令碼

哈哈哈!原始碼基地:#私信小編即可# 進來的小可愛記得三連哦~愛你

同學!你因作業作弊已被AI抓獲,Python製作一款AI檢測抄襲小指令碼

哈哈哈!原始碼基地:#959755565# 進來的小可愛記得三連哦~愛你

同學!你因作業作弊已被AI抓獲,Python製作一款AI檢測抄襲小指令碼

推薦文章