您現在的位置是:首頁 > 旅遊
同學!你因作業作弊已被AI抓獲,Python製作一款AI檢測抄襲小指令碼
python可以製作外掛嗎
導語
你的童年我的童年好像都一樣
小小身體大大書包上呀上學堂
世界上本沒有喜歡上學的小孩
被爸媽打多了,也就有了~
上學意味著什麼呢~意味著開始做作業
假期作業沒寫怎麼辦?趕緊拿姐妹的來抄,你心裡悄咪咪的笑了,終於趕上了最後學委去辦公室的那趟高速。
哈哈哈這很可以,童年的真實情況一覽無餘了。今天我還看到一個笑話:
為防抄作業,爸爸要求將五胞胎分在五個班 。
這操作真神了,但是哪用這麼麻煩撒!
今天小編帶大家寫一款抄襲檢測小指令碼,在家就能知道你孩子的作業都互相抄襲了沒~
正文
首先載入所有必要的模組(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)
總結
抄襲檢測器完成啦!老師們用起來,廣大中小學生們的美夢就此結束了。
哈哈哈!原始碼基地:#私信小編即可# 進來的小可愛記得三連哦~愛你
哈哈哈!原始碼基地:#959755565# 進來的小可愛記得三連哦~愛你
下一篇:老年人冬季如何養生
推薦文章
- 運動後,不用糾結吃不吃,關鍵是吃什麼,看完才知道以前吃錯了!
所以說運動後還是要吃些東西的,要不然身體會抗議的,無論運動是要保持健康,還是要減肥或者是增肌適當的補充能量都是必須的,只要不吃脂肪高的食物都是可以的,看完才發現以前做錯了,以後運動完不敢吃甜食了...
- 剛剛!長沙各區購房門檻曝光,快來看看你能買哪裡?
雨花區購房門檻最低的代表樓盤為金科集美天辰,該專案10月份在售110-132㎡住宅,帶裝修均價8800元/㎡,首付29萬...
- Feng Chen Wang 2022秋冬系列,精緻細節,花卉浪漫與扭結潮範兒
這些色彩在服裝上以和淺色的搭配為主,形成了一些暗紋式的花紋圖案,減少了服裝上單一顏色的單調乏味氣質,在其中,結合了一些西服的套裝,來增強了一些幹練強勢,而不規則裙襬的裙裝穿搭有著更多的設計感...