亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        一種基于編碼習(xí)慣的SQL語句抄襲檢測算法

        2019-12-19 02:07:13葛文馨魏永山
        軟件 2019年11期

        葛文馨 魏永山

        摘? 要: 為了檢測出數(shù)據(jù)庫實(shí)驗(yàn)課程中結(jié)構(gòu)化查詢語言(Structured Query Language, SQL)語句代碼的抄襲行為,發(fā)現(xiàn)因SQL語句篇幅較短,使用現(xiàn)有的技術(shù)進(jìn)行代碼檢測卻沒有得到預(yù)期的結(jié)果,于是提出了一種基于編碼習(xí)慣的SQL語句抄襲檢測算法。獲取學(xué)生歷史的編碼數(shù)據(jù)并分類,判定待檢測代碼的類別并將其與之類別相同的代碼依照學(xué)生的編碼習(xí)慣進(jìn)行特征提取,進(jìn)而得到特征矩陣并對比代碼之間的相似程度,對涉嫌抄襲的代碼進(jìn)行過濾,判斷該代碼是否為該學(xué)生編寫。實(shí)驗(yàn)結(jié)果表明,該算法能夠有效地判斷出學(xué)生的抄襲行為,同時(shí)也解決因編碼篇幅較短而帶來的難以檢測是否為抄襲代碼這一問題。

        關(guān)鍵詞: 編碼習(xí)慣;代碼抄襲檢測;樸素貝葉斯;SQL

        【Abstract】: In order to detect the plagiarism of the SQL statement code in the database experiment course, it is found that the SQL statement is short, and the existing technology is used to detect the code but the expected result is not obtained. Therefore, a SQL statement plagiarism detection based on coding habit is proposed. Obtaining the classification data of the student history and classifying it, determining the category of the code to be detected and extracting the code with the same category according to the coding behavior of the student, thereby obtaining the feature matrix and comparing the degree of similarity between the codes, for the suspected plagiarism. The code is filtered to determine if the code was written for the student. The experimental results show that the algorithm can effectively judge the plagiarism of students, and also solve the problem that it is difficult to detect whether it is plagiarism code due to the short length of coding.

        【Key words】: Coding behavior; Code plagiarism detection; Naive bayesian; SQL

        0? 引言

        隨著計(jì)算機(jī)技術(shù)的蓬勃發(fā)展,當(dāng)今的教育模式也繼而發(fā)生著巨大的改變?,F(xiàn)如今的教育模式已經(jīng)不僅僅是過去那種傳統(tǒng)又單一的書本教育,而是逐漸發(fā)展成書本、互聯(lián)網(wǎng)等多元化的形式,在線教育也應(yīng)運(yùn)而生。學(xué)生可以在課程輔助網(wǎng)站上進(jìn)行相應(yīng)課程的練習(xí),以鞏固提高在課堂上學(xué)習(xí)到的知識點(diǎn)。學(xué)生在網(wǎng)站上進(jìn)行練習(xí)時(shí)會(huì)遇到需要編寫代碼才能完成的題目,該類題目設(shè)計(jì)的初衷是為了幫助學(xué)生掌握相關(guān)知識點(diǎn),提高學(xué)生的編碼技能以及熟練程度。然而,隨著代碼共享以及復(fù)制粘貼的方法越來越容易,初衷卻越來越難以實(shí)現(xiàn),反而抄襲的現(xiàn)象日益劇增,尤其是在學(xué)生和老師缺乏直接聯(lián)系的在線教育網(wǎng)站中,畢竟在網(wǎng)絡(luò)教育中難以對學(xué)生的做題過程進(jìn)行監(jiān)督,于是很難確定學(xué)生是否掌握此類知識,能否熟練準(zhǔn)確地編寫出相應(yīng)的代碼。為了能夠檢查出學(xué)生在做題的過程中是否存在抄襲行為,研究代碼抄襲檢測算法的學(xué)者與日俱增。他們提出多種不同的方法來對代碼進(jìn)行分析,并開發(fā)出一些有效的代碼剽竊監(jiān)測系統(tǒng),而被廣為使用的系統(tǒng)如JPlag[1]、Moss[2]、YAP3[3]等均采用串對比算法,將源碼和執(zhí)行流程進(jìn)行處理轉(zhuǎn)換成字符,使用串對比的算法對這些轉(zhuǎn)換后的字符串進(jìn)行相似度對比。國內(nèi)外眾多學(xué)者對這些檢測系統(tǒng)中的算法進(jìn)行改進(jìn),如Pawelczak等人[4]提出了一種基于源代碼標(biāo)記的思想,使用貪婪字符串平鋪的方法對學(xué)生提交的代碼進(jìn)行抄襲檢查;衛(wèi)軍超[5]使用Jplag中的GST(Greedy String Tilling)算法,提出了一種基于屬性計(jì)數(shù)法和結(jié)構(gòu)度量技術(shù)相結(jié)合的程序相似度計(jì)算方法;Wang等人[6]則是將Moss系統(tǒng)和抽象語法樹模型進(jìn)行融合,對Verilog代碼進(jìn)行剽竊檢測;文獻(xiàn)[7-9]都對Winnowing算法進(jìn)行改進(jìn),使其能夠判定文本或程序是否存在抄襲現(xiàn)象;文獻(xiàn)[10]-[12]提出了不同的基于源碼結(jié)構(gòu)的抄襲檢測系統(tǒng),將程序源代碼轉(zhuǎn)換成帶有結(jié)構(gòu)特征的特征串并進(jìn)行匹配計(jì)算代碼之間的相似程度;文獻(xiàn)[13]則是基于文本的重復(fù)代碼的基礎(chǔ)上通過詞法分析并使用語法樹對代碼進(jìn)行對比,篩選出重復(fù)的代碼。

        由于現(xiàn)有的方法在對用戶編寫的代碼進(jìn)行抄襲檢測時(shí)是將用戶所編寫的代碼與其他用戶編寫的代碼以及存在于網(wǎng)絡(luò)或書籍中的代碼進(jìn)行相似度匹配,觀察該用戶是否存在抄襲行為。但是這些檢測方法都是僅僅考慮到代碼的語法特征,從而計(jì)算出的代碼之間的相似程度,并沒有將其與代碼的編碼規(guī)范進(jìn)行結(jié)合,同時(shí)對于篇幅簡短的代碼檢測效果往往不太理想。于是本文是在現(xiàn)有的代碼抄襲檢測技術(shù)的基礎(chǔ)上,提出了一種基于編碼習(xí)慣的抄襲檢測的方法,使得抄襲檢測不再局限于檢測不同用戶在同一題目中所提交的代碼是否一致,提取該用戶的編碼習(xí)慣特征并進(jìn)行分析,判斷該用戶所作答的代碼是否存在抄襲行為。實(shí)驗(yàn)表明,本文提出的基于編碼習(xí)慣的抄襲檢測方法能夠?qū)W(xué)生提交的代碼進(jìn)行抄襲檢測,判斷出該代碼是否為該學(xué)生所編寫,進(jìn)而提高抄襲檢測的準(zhǔn)確率。

        1? 基于編碼習(xí)慣的抄襲檢測算法

        1.1? 編碼習(xí)慣

        每個(gè)學(xué)生在編寫計(jì)算機(jī)程序源代碼時(shí)都會(huì)有一種獨(dú)有的編碼習(xí)慣。編碼習(xí)慣,又稱編碼風(fēng)格,是指學(xué)生在編寫代碼的過程中習(xí)慣使用某種特有的書寫格式或內(nèi)容。編碼習(xí)慣通常因編程語言的不同而不同,例如在編寫JAVA語言的源代碼所使用的編碼習(xí)慣和編寫SQL語言的源代碼所使用的編碼習(xí)慣會(huì)有很大的不同。

        3? 結(jié)論

        本文在現(xiàn)有的代碼抄襲檢測系統(tǒng)的基礎(chǔ)上,為了檢測出不同學(xué)生在編碼過程中是否存在抄襲行為而提出了一種基于編碼習(xí)慣的抄襲檢測算法,通過對學(xué)生歷史編碼的數(shù)據(jù)進(jìn)行分類,并對學(xué)生提交的待檢測代碼進(jìn)行類別判定,將同類代碼進(jìn)行特征提取,進(jìn)一步處理得到特征矩陣,并比較矩陣之間的相似程度。實(shí)驗(yàn)結(jié)果表明,使用該方法能夠有效地檢測出抄襲代碼,有助于指導(dǎo)教師對學(xué)生的學(xué)習(xí)情況進(jìn)行評估。

        參考文獻(xiàn)

        [1]Prechelt L, Malpohl G, Philippsen M. Finding Plagiarisms among a Set of Programs with JPlag[J]. J Universal Computer Science, 2000, 8(11): 1016-1038.

        [2]Schleimer S, Wilkerson D S, Ailen A. Winnowing: local algorithms for document fingerprinting[C]//Proceedings of the 2003 ACM SIGMOD International Conference on Management of Data, San Diego, California, June 09-12, 2003. ACM Press, 2003: 76.

        [3]Wise M J. YAP3: Improved Detection of Similarities In Computer Program And Other Texts[J]. ACM SIGCSE Bulletin, 1996: 28(1).

        [4]Pawelczak D. Benefits and drawbacks of source code plagiarism detection in engineering education[C]//2018 IEEE Global Engi neering Education Conference (EDUCON), Tenerife, Islas Canarias, Spain, Apr. 17-20, 2018, IEEE, 2018: 1048-1056.

        [5]衛(wèi)軍超. 在線評測系統(tǒng)中代碼剽竊檢測技術(shù)的研究與實(shí)現(xiàn)[D]. 陜西: 西北農(nóng)林科技大學(xué), 2017.

        [6]Lisheng Wang, Lingchao Jiang, Guofeng Qin. A Search of Verilog Code Plagiarism Detection Method[C]//2018 13th Inter national Conference on Computer Science & Education (ICCSE). Sri Lanka, Colombo, Aug. 8-11, 2018 IEEE, 2018: 1-5.

        [7]趙萌萌. 基于數(shù)字指紋的文本抄襲檢測算法研究[D]. 浙江: 杭州電子科技大學(xué), 2017.

        [8]殷丹平. 基于CNN的代碼相似度檢測研究與代碼查重系統(tǒng)[D]. 北京: 北京郵電大學(xué), 2018.

        [9]段旭良, 楊洋, 王曼韜等. 一種擴(kuò)展Winnowing剽竊檢測算法[J]. 計(jì)算機(jī)工程與科學(xué), 2017, 39(12): 2245-2251.

        [10]楊超. 基于多種技術(shù)的混合式程序代碼抄襲檢測方法[J]. 計(jì)算機(jī)工程與應(yīng)用, 2016, 52(18): 222-227.

        [11]Arabyarmohamady S, Moradi H, Asadpour M. A coding style-based plagiarism detection[C]//Proceedings of 2012 Inter national Conference on Interactive Mobile and Computer Aided Learning (IMCL). Amman, Jordan, Nov. 6-8, 2012, IEEE, 2012: 180-186.

        [12]孫芬芬. 基于源碼結(jié)構(gòu)相似度檢測系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D]. 內(nèi)蒙古: 內(nèi)蒙古大學(xué), 2017.

        [13]劉偉,賓航飛,胡志剛. 一種改進(jìn)的基于文本的重復(fù)代碼自動(dòng)識別方法[J]. 軟件, 2018, 39(10): 68-73.

        [14]李航. 統(tǒng)計(jì)學(xué)習(xí)方法[M]. 北京: 清華大學(xué)出版社, 2012.

        [15]周志華. 機(jī)器學(xué)習(xí)[M]. 北京: 清華大學(xué)出版社, 2016.

        [16]胡燕祝, 權(quán)桁, 艾新波. 復(fù)雜網(wǎng)絡(luò)全局拓?fù)湎嗨贫扔?jì)算方法實(shí)證研究[J]. 軟件, 2015, 36(9): 16-20.

        [17]劉宇帥, 高廣宇. 基于相似性判斷的廣告片段檢索[J]. 軟件, 2012, 33(10): 25-27.

        [18]韓如冰, 葉得學(xué). 基于VSM的權(quán)重改進(jìn)文檔相似度算法研究[J]. 軟件, 2012, 33(10): 103-105.

        亚洲情精品中文字幕99在线| 国产欧美日韩视频一区二区三区 | 日韩 无码 偷拍 中文字幕| 少妇无码av无码专区| 国产日韩亚洲欧洲一区二区三区| 人妻少妇精品视频一区二区三区| 不卡一区二区三区国产| 国产精品欧美久久久久久日本一道| 台湾佬综合网| 9丨精品国产高清自在线看| 国产亚洲专区一区二区| 无码aⅴ精品一区二区三区浪潮| 久久婷婷香蕉热狠狠综合| 亚洲AV无码一区二区一二区色戒 | 国产成人亚洲精品电影| 国产少妇露脸精品自拍网站| 色窝窝亚洲av网在线观看| 牲欲强的熟妇农村老妇女| 青青草视频华人绿色在线| 亚洲av本道一本二本三区 | 久久精品一区二区熟女| 女人被狂躁c到高潮视频| 91麻豆国产香蕉久久精品| 免费美女黄网站久久久| 亚洲女优中文字幕在线观看| 国产如狼似虎富婆找强壮黑人| 亚洲av日韩av综合aⅴxxx| 日本一区二区在线播放| 天天躁日日躁aaaaxxxx| 亚洲色偷偷综合亚洲av伊人| 成人特黄特色毛片免费看| 国产成人高清在线观看视频 | 免费又黄又爽又猛的毛片| 韩国三级大全久久网站| 不卡一本av天堂专区| 亚洲成av人片天堂网| 亚洲AV永久天堂在线观看| 久久精品国产精品亚洲艾| 日韩日韩日韩日韩日韩| 日本一区二区不卡视频| 美女被插到高潮嗷嗷叫|