姜利群
摘要:網(wǎng)絡(luò)答疑系統(tǒng)是現(xiàn)代教育技術(shù)擴(kuò)展課堂教學(xué)的一個(gè)重要舉措。采用樸素貝葉斯分類算法,開發(fā)了Java課程網(wǎng)絡(luò)答疑反饋系統(tǒng),它輔助教師進(jìn)行答疑解惑,并能對(duì)學(xué)生的問題進(jìn)行分類并反饋給教師,由此幫助教師改進(jìn)課堂教學(xué)。
關(guān)鍵詞: 樸素貝葉斯;中文分詞;文本分類;網(wǎng)絡(luò)答疑反饋系統(tǒng)
中圖分類號(hào):TP391 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2016)23-0206-03
Abstract: Using network answering system as an extension of classroom teaching is a major development of modern educational technology. A network answering and feedback system for Java curriculum is developed based on the naive Bayesian classification algorithm. It will assist the teacher with online question-and-answer and also classify the questions and provide feedback on how to improve the classroom instruction.
Key words: Naive Bayes; Chinese words segmentation; text classification; network answering system
隨著網(wǎng)絡(luò)技術(shù)的發(fā)展和完善,大學(xué)教學(xué)中的答疑環(huán)節(jié)常常利用網(wǎng)絡(luò)答疑系統(tǒng)實(shí)現(xiàn),這給面對(duì)學(xué)生數(shù)量大的課程提供了很大方便,是重要的大學(xué)教學(xué)輔助手段。但是,很多課程的網(wǎng)絡(luò)答疑系統(tǒng)也僅用于輔助答疑解惑,還沒有考慮如何從學(xué)生的問題帖子中進(jìn)一步挖掘出學(xué)生的學(xué)習(xí)信息。
我們利用多年的Java語(yǔ)言程序設(shè)計(jì)課程教學(xué)經(jīng)驗(yàn)和積累的學(xué)生問題帖子、技術(shù)論壇中收集的知識(shí)點(diǎn)的各類帖子,開發(fā)了基于樸素貝葉斯分類算法的Java課程網(wǎng)絡(luò)答疑反饋系統(tǒng),該系統(tǒng)不僅實(shí)現(xiàn)了輔助答疑功能,同時(shí)具有“反饋”功能,它通過文本分類將學(xué)生的問題帖子所屬的Java課程的知識(shí)點(diǎn)進(jìn)行歸類、統(tǒng)計(jì),并反饋給教師,輔助教師調(diào)整后續(xù)課程的教學(xué)導(dǎo)向、教學(xué)內(nèi)容、教學(xué)方式和方法等,以幫助教師更進(jìn)一步提高教學(xué)效果。
本文主要介紹網(wǎng)絡(luò)答疑反饋系統(tǒng)的反饋功能部分的實(shí)現(xiàn)方法與技術(shù)。
1 反饋系統(tǒng)需求及架構(gòu)
1.1 系統(tǒng)需求
如何在教學(xué)過程中及時(shí)地把握學(xué)生學(xué)習(xí)過程中遇到的問題,獲取足夠的信息用以改進(jìn)教學(xué),對(duì)提高教學(xué)質(zhì)量十分重要。因此,教育信息的挖掘處理是當(dāng)前教學(xué)過程中需要迫切解決的問題,有必要使用技術(shù)上的手段來解決知識(shí)的智能分類,提高對(duì)知識(shí)整理的效率,減少搜索成本。
基于上述需求,Java課程網(wǎng)絡(luò)答疑系統(tǒng)需要加入反饋功能,就是對(duì)問題進(jìn)行文本分類,根據(jù)問題的類型將其劃分到相應(yīng)的語(yǔ)義類別中,最終反饋給教師。
1.2 知識(shí)點(diǎn)分類設(shè)計(jì)
本文采用基于Lucene全文檢索并基于詞典的中文分詞技術(shù)設(shè)計(jì)答疑系統(tǒng)的搜索引擎[1] [2]。在分類算法中,利用比較經(jīng)典的樸素貝葉斯分類算法,對(duì)問題進(jìn)行文本分類。
系統(tǒng)是以Java課程在線答疑系統(tǒng)學(xué)生提問帖子文本分類為實(shí)際應(yīng)用背景進(jìn)行設(shè)計(jì)的。Java課程的知識(shí)點(diǎn)被分成21個(gè)大類,如表1所示。
1.3 文本分類設(shè)計(jì)
文本分類過程是建立從待分類帖子文本到知識(shí)點(diǎn)類別空間的映射。分類系統(tǒng)分為訓(xùn)練階段和分類階段。訓(xùn)練階段構(gòu)造特征集合和訓(xùn)練分類器數(shù)據(jù)。分類階段是根據(jù)特征集合與分類器對(duì)未分類的帖子文本進(jìn)行分類,并將分類的結(jié)果存入數(shù)據(jù)庫(kù)。
整個(gè)文本分類的執(zhí)行過程如下:
(1)收集Java課程按照知識(shí)點(diǎn)分的原始語(yǔ)料庫(kù);
(2)對(duì)語(yǔ)料庫(kù)文本進(jìn)行分詞、停用詞過濾等預(yù)處理;
(3)對(duì)已預(yù)處理的數(shù)據(jù)進(jìn)行特征降維,構(gòu)造訓(xùn)練集的特征矩陣;
(4)訓(xùn)練分類器,將訓(xùn)練的結(jié)果保存到集合中;
(5)根據(jù)訓(xùn)練好的分類器對(duì)學(xué)生所發(fā)的帖子文本進(jìn)行樸素貝葉斯分類,并將分類結(jié)果更新回帖子數(shù)據(jù)表的類別字段中。
文本分類整體框架如圖1所示。
2 樸素貝葉斯文本分類模型
2.1 樸素貝葉斯分類器
以貝葉斯定理為基礎(chǔ)的樸素貝葉斯分類器模型是基于概率統(tǒng)計(jì)的分類模型,由于該方法在速度和效率上很有優(yōu)勢(shì),被廣泛地應(yīng)用[3]。
分類過程如下[4][5][6]:
2.2 樸素貝葉斯分類實(shí)現(xiàn)方法
3 系統(tǒng)實(shí)現(xiàn)及結(jié)果分析
3.1 數(shù)據(jù)準(zhǔn)備
本系統(tǒng)為Java知識(shí)點(diǎn)每個(gè)類別收集了60篇文檔,每個(gè)文檔都是該知識(shí)點(diǎn)的描述、定義、疑問解答等內(nèi)容,能夠提供足夠的信息用于分類。
原始數(shù)據(jù)格式比較隨意,數(shù)據(jù)中帶有較多的無用標(biāo)識(shí)符,需要進(jìn)一步對(duì)語(yǔ)料庫(kù)原始數(shù)據(jù)進(jìn)行預(yù)處理,過程包括分詞、停用詞處理等, 預(yù)處理過程如圖2所示。
原始數(shù)據(jù)經(jīng)過預(yù)處理模塊后,文本最后會(huì)被表示成獨(dú)立詞語(yǔ)的集合,其中虛詞和無意義詞均通過停用詞方式去除,這樣就可以方便計(jì)算機(jī)進(jìn)行識(shí)別與計(jì)算。
3.2 特征提取
3.3 樸素貝葉斯分類器實(shí)現(xiàn)
樸素貝葉斯分類器模塊涉及樣本的訓(xùn)練和分類兩個(gè)部分。在文本樣本訓(xùn)練階段,由經(jīng)過預(yù)處理與特征提取后的特征詞集合計(jì)算每個(gè)特征詞的先驗(yàn)概率和條件概率,構(gòu)成分類器的參數(shù)。進(jìn)行文本分類時(shí)利用樸素貝葉斯公式計(jì)算相應(yīng)文本的后驗(yàn)概率,選取最大后驗(yàn)概率的類別作為該文本的類別。
利用樣本數(shù)據(jù)進(jìn)行特征詞提取后的訓(xùn)練和分類過程的模塊結(jié)構(gòu)如圖4所示。
從圖5看到,答疑反饋系統(tǒng)與一般的答疑系統(tǒng)相比只是多了一個(gè)問答文本的分類處理。系統(tǒng)對(duì)于每一條存到數(shù)據(jù)庫(kù)的問題帖子文本都有一個(gè)分類,對(duì)于檢索不到的答案,學(xué)生需要發(fā)表新問題,教師對(duì)新問題進(jìn)行回答后對(duì)問和答文本進(jìn)行分類,分類結(jié)果能夠確定該問題屬于哪個(gè)知識(shí)點(diǎn),然后在數(shù)據(jù)表中標(biāo)識(shí)該知識(shí)點(diǎn)即可。標(biāo)識(shí)完畢后,學(xué)生就可以再通過關(guān)鍵字檢索的方式檢索到該答案。通過批量的方式對(duì)問題帖子文本進(jìn)行分類,確定問題的類別,從而縮小問題的搜索范圍,提高系統(tǒng)的性能。
3.4 答疑反饋信息柱形圖
系統(tǒng)將學(xué)生各類問題帖子的百分比用答疑反饋信息柱形圖給出,如圖5所示。教師通過答疑反饋信息柱形圖可以直觀地看出學(xué)生在哪些知識(shí)點(diǎn)學(xué)得比較好,哪些知識(shí)點(diǎn)上學(xué)習(xí)問題比較多,輔助教師調(diào)整教學(xué)計(jì)劃。
3.5 實(shí)驗(yàn)結(jié)果與分析
限于篇幅,這里僅進(jìn)行準(zhǔn)確率分析。準(zhǔn)確率定義如下:
本文所用的訓(xùn)練語(yǔ)料庫(kù)是21個(gè)一級(jí)知識(shí)點(diǎn)文本類,每類有文檔60個(gè),一共有文檔1260個(gè)。帖子問答文本來源于在線答疑反饋系統(tǒng)的學(xué)生提問的問答帖子文本,每類個(gè)數(shù)在25至36之間。
系統(tǒng)評(píng)估了特征提取前后系統(tǒng)的分類準(zhǔn)確率,如圖6所示。
從圖6可以看出增加了特征提取之后樸素貝葉斯分類的準(zhǔn)確率有比較明顯的提高。采用樸素貝葉斯算法的平均分類準(zhǔn)確率約為87%,增加文本特征提取方法后的平均正確率達(dá)到89%左右。由于本系統(tǒng)中采集的訓(xùn)練樣本數(shù)據(jù)較少,對(duì)分類的準(zhǔn)確度會(huì)有一定影響,隨著訓(xùn)練樣本集的增加,系統(tǒng)的置信度也會(huì)提高,使得訓(xùn)練樣本更能突出類別信息,分類的準(zhǔn)確率也會(huì)提高。
4 結(jié)論
網(wǎng)絡(luò)答疑反饋系統(tǒng)采用樸素貝葉斯文本分類算法能夠比較準(zhǔn)確的實(shí)現(xiàn)文本的分類,加入特征提取模塊后分類的準(zhǔn)確率有一定的提高,分類的速度較好,完全可以應(yīng)用于各種文本分類場(chǎng)合。Java課程網(wǎng)絡(luò)答疑反饋系統(tǒng)在實(shí)際教學(xué)中使用后對(duì)教師了解學(xué)生學(xué)習(xí)信息、提高教學(xué)效果有很大的幫助。
參考文獻(xiàn):
[1] 高琰,谷士文,譚立球,費(fèi)耀平. 基于Lucene的搜索引擎設(shè)計(jì)與實(shí)現(xiàn)[J]. 微機(jī)發(fā)展,2004,14(10):42-44.
[2] 王志嘉,薛質(zhì).一種基于Lucene 的中文分詞的設(shè)計(jì)與測(cè)試[J].信息技術(shù),2010(12).
[3] 王國(guó)才.樸素貝葉斯分類器的研究與應(yīng)用[D].重慶:重慶交通大學(xué),2010.
[4] 劉彧.基于貝葉斯理論的文本分類技術(shù)的研究與實(shí)現(xiàn)[D].長(zhǎng)春:吉林大學(xué),2009.
[5] 章舜仲,王樹梅,黃河燕.詞間相關(guān)性在貝葉斯文本分類中的應(yīng)用研究[J].計(jì)算機(jī)工程與應(yīng)用,2009,45(16): 159-161.
[6] 史瑞芳.貝葉斯文本分類器的研究與改進(jìn)[J].計(jì)算機(jī)工程與應(yīng)用,2009,45(12):147-148.
[7] 周茜,趙明生,等.中文文本分類中的特征選擇研究[J].中文信息學(xué)報(bào),清華大學(xué),2004-3.