国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

編程語言作業(yè)云平臺自動評分技術(shù)與實現(xiàn)

2017-05-13 22:59壽周翔魯文科
中國信息技術(shù)教育 2017年8期
關(guān)鍵詞:字符串分詞代碼

壽周翔+魯文科

隨著計算機(jī)的大量普及,高校的日常管理效率顯著提高,但在教學(xué)管理上,效率改變還不是十分明顯,特別是針對計算機(jī)專業(yè)學(xué)生的作業(yè)評分還是完全人工的方式,教師需要花大量的時間和精力在作業(yè)批改上,且評分主觀性大,效率低。如何改變這一現(xiàn)狀呢?能不能采用算法來提高評分的客觀性,減少主觀性呢?針對上述問題,筆者提出了借助教育云平臺(ITbegin)的作業(yè)自動評分技術(shù),以期幫助教師減少作業(yè)批改時間,降低評分主觀性,提高工作效率。

ITbegin云教育平臺作業(yè)自動評分

ITbegin是一個云教育平臺,它已集成了編程知識庫、在線編程、在線運行、實時互動等多項要素。同時,該平臺已具備整合在線作業(yè)自動評分的兩個條件:①能支撐各種語言編譯。②能實現(xiàn)程序的運行并取得結(jié)果。因此,我們只要實現(xiàn)評分的正確性、客觀性,便能完成作業(yè)的自動評分。所以,我們需要建立一個評分模型來驗證評分的正確性、客觀性。

評分模型

從正確性、客觀性出發(fā),代碼運行正確、代碼運行結(jié)果與答案結(jié)果匹配、代碼與答案代碼匹配、做作業(yè)時的敲鍵次數(shù)、做作業(yè)時的運行次數(shù)等五個指標(biāo)會影響評分。

評分模型設(shè)計可分為嚴(yán)格型、標(biāo)準(zhǔn)型、寬松型三種,教師可以根據(jù)不同的評分模型進(jìn)行評分。

嚴(yán)格型的評分模型必須代碼運行正確,且代碼運行結(jié)果與答案結(jié)果完全匹配(如表1)。

標(biāo)準(zhǔn)型的評分模型必須代碼運行正確,降低代碼與答案代碼匹配的權(quán)重,提高代碼與答案代碼匹配的權(quán)重(如表2)。

寬松型的評分模型中,代碼運行正確不是唯一標(biāo)準(zhǔn),所以會提高敲鍵次數(shù)、運行次數(shù)的權(quán)重(如表3)。

作業(yè)自動評分的技術(shù)分析

評分模型各指標(biāo)需要使用各種算法去匹配,這里主要介紹運行結(jié)果算法和代碼相似度算法。

1.運行結(jié)果算法分析

由于程序運行的結(jié)果一般都以字符串的形式出現(xiàn),所以可以將代碼運行的結(jié)果字符串與答案運行的結(jié)果字符串進(jìn)行相似度比較。運行結(jié)果算法常采用距離算法來比較作業(yè)的運行結(jié)果與答案的運行結(jié)果。

距離算法是指從原串轉(zhuǎn)換到目標(biāo)串所需要的最少插入、刪除和替換的操作次數(shù)。它們的距離越大,說明它們越不同。

將字符串1轉(zhuǎn)成字符串2的距離算法說明如表4所示。

距離算法過程:

(1)如果字符串1或字符串2長度為0,則返回另一個字符串的長度。

(2)初始化(字符串1長度+1)*(字符串2長度+2)的矩陣m,矩陣的下標(biāo)從零開始。

(3)掃描整個矩陣,如果str1 [i]==str2[j],則temp=0,否則temp=1,然后矩陣m[i][j]=(上方值+1,左邊值+1,左上方值+temp)三者的最小值。

(4)掃描完后,返回矩陣m的最后一個值是它們的距離。

(5)相似度的計算公式:相似度=1-(距離/兩字符串的最大長度)。例如,abc和abcd的相似度為1-(1/4)=0.75。

2.代碼相似度算法分析

由于代碼中可能存在英文或中文的單詞,所以筆者在代碼相似度算法中,基于Lucene實現(xiàn)了中英文分詞。Lucene提供了幾個常用的分詞器,如StandardAnalyzer(標(biāo)準(zhǔn)分析器,去除標(biāo)點符號)、IKAnalyzer(一個獨立的開源中文分詞工具包,提供了語義級的分詞,更加智能)等。

相似度計算可以用向量空間模型,向量可以解釋為一組坐標(biāo),一個坐標(biāo)表示空間中的一個點,而向量本身是從空間原點到該點的向量。兩個向量的夾角越小,方向就越一致,相似度就越高,夾角的計算用余弦公式。

相似度算法過程:

(1)字符串分詞(如上頁表5)。

(2)合并分詞集合并計算每個詞的相似度(值為0~1之間,如上頁表6)。

(3)計算各點的向量(如上頁表7)。

(4)用余弦定理計算相似度。

相似度=sum/Math.sqrt (s1*s2)=0.73706。

作業(yè)自動評分的技術(shù)實現(xiàn)

作業(yè)自動評分技術(shù)采用Java語言編寫及實現(xiàn)。

1.運行結(jié)果算法實現(xiàn)

核心代碼如上頁圖1所示。

2.代碼相似度算法實現(xiàn)

核心代碼如圖2所示。

作業(yè)自動評分技術(shù)的優(yōu)點

(1)高效率。作業(yè)由原來的人工評分變?yōu)橛嬎銠C(jī)自動評分,大大縮短了教師批改作業(yè)的時間,提高了他們的工作效率。

(2)客觀性。作業(yè)自動評分以評分模型為標(biāo)準(zhǔn),評分較客觀,適用于所有學(xué)生。

(3)公平性。作業(yè)自動評分減少了人為的主觀因素,提高了評分的公平性。

作者簡介:壽周翔(1974—),男,浙江省諸暨市人,碩士研究生,講師,主要研究方向為人工智能。

基金項目:浙江省教育技術(shù)研究規(guī)劃課題(項目編號:JB049);浙江省高等教育教學(xué)改革項目(項目編號:jg2015244)。

猜你喜歡
字符串分詞代碼
分詞在英語教學(xué)中的妙用
結(jié)巴分詞在詞云中的應(yīng)用
結(jié)巴分詞在詞云中的應(yīng)用
一種基于PowerBuilder環(huán)境字符串相似度算法
神秘的代碼
SQL server 2008中的常見的字符串處理函數(shù)
倍增法之后綴數(shù)組解決重復(fù)子串的問題
一周機(jī)構(gòu)凈增(減)倉股前20名
重要股東二級市場增、減持明細(xì)
近期連續(xù)上漲7天以上的股
成武县| 宽甸| 姜堰市| 新余市| 乌鲁木齐市| 太和县| 大同市| 莱芜市| 瓮安县| 体育| 西乌珠穆沁旗| 格尔木市| 辉南县| 兴化市| 清丰县| 双流县| 通海县| 耒阳市| 赣州市| 兰溪市| 乌兰察布市| 成安县| 监利县| 衡水市| 安多县| 宜丰县| 西乡县| 奉贤区| 高陵县| 慈溪市| 凤凰县| 疏勒县| 上犹县| 开阳县| 西城区| 周宁县| 望谟县| 西畴县| 湘阴县| 乐陵市| 江山市|