楊令葉?黃學(xué)茂
摘要:高校學(xué)生成績預(yù)警是高校教務(wù)管理的重要工作之一,研究高校學(xué)生學(xué)業(yè)預(yù)警問題在理論層面和實(shí)踐指導(dǎo)層面均具有重要的價值。采用關(guān)聯(lián)規(guī)則算法中的Apriori算法來分析廈門工學(xué)院2016級至2018級學(xué)生的成績數(shù)據(jù),探究每個專業(yè)各課程之間的關(guān)聯(lián)度。在Matlab環(huán)境下用Apriori算法對信息與計算科學(xué)專業(yè)的學(xué)生學(xué)業(yè)成績進(jìn)行挖掘分析,發(fā)現(xiàn)該專業(yè)下不同課程間的關(guān)聯(lián)關(guān)系,尤其是對先修課程與后繼課程間的關(guān)聯(lián)規(guī)則的挖掘,及時對掛科的學(xué)生預(yù)警,并同時給任課教師提供指導(dǎo),從而提高教育教學(xué)管理水平。
關(guān)鍵詞:關(guān)聯(lián)規(guī)則;學(xué)業(yè)預(yù)警;Apriori算法
一、Apriori算法介紹
Apriori算法本質(zhì)是屬于逐層查找迭代算法的一種形式。借助候選項集生成頻繁項集,挖掘出布爾型關(guān)聯(lián)規(guī)則,并計算出相應(yīng)的支持度、置信度,此兩個標(biāo)準(zhǔn)用來表示關(guān)聯(lián)規(guī)則的強(qiáng)度。其基本思想是利用頻繁項集的先驗知識以遞歸的方法判斷候選集是否為頻繁項集并且找出最大頻繁項集,利用頻繁項集生成僅包含其非空子集的關(guān)聯(lián)規(guī)則。
二、算法的流程及分析
Apriori算法是利用k-項集來生成(k+1)-項集迭代的方法,其操作流程如圖1所示,設(shè)定最小支持度minSup、最小置信度minConf。第一步,掃描學(xué)業(yè)成績數(shù)據(jù)庫,保留滿足最小支持度的候選項1-項,得到頻繁集1-項集L1;第二步,由L1自身相連生成2-項C2,將得到的C2進(jìn)行剪枝操作,統(tǒng)計2-項集的項數(shù),刪除不滿足minSup的項集,得到頻繁項集2-項集L2;進(jìn)行多次迭代,找到滿足條件的最大頻繁項集k-項集Lk,最終得到頻繁項集:L={L1,L2,L3,...,Lk}
Apriori算法挖掘頻繁項集具體的過程如下[1]:
1.連接步驟:Lk-1經(jīng)過自身連接得到k-項集Ck。如果Lk-1中的某兩個元素(集合)ik-1 和ik-2 的前(k-2)個項是相同,則稱ik-1 和ik-2 是可連接的。所以ik-1 和ik-2 連接產(chǎn)生的結(jié)果集是:
i={i1[1],i1[2],i1[3],...,i1[k-1],i2[k-1]}
2.剪枝:利用任何兩個非頻繁項集的超集都不是頻繁集的性質(zhì),如果項集Ck的子集不屬于Lk-1,則該子集是非頻繁,則從Ck中刪除。
3.刪除:利用上文中得到的Ck,統(tǒng)計剪枝后的每一項的項數(shù),刪除不滿足條件的項,最終得到頻繁k-項集Lk。
三、數(shù)據(jù)準(zhǔn)備
所使用的原始數(shù)據(jù)來源于廈門工學(xué)院教務(wù)系統(tǒng)內(nèi)2016級至2018級共計9000余名學(xué)生的學(xué)業(yè)成績數(shù)據(jù)。為了便于對關(guān)聯(lián)規(guī)則進(jìn)行挖掘分析,選取信息與計算科學(xué)專業(yè)學(xué)生的學(xué)業(yè)成績進(jìn)行挖掘,且在源數(shù)據(jù)提取時,不考慮補(bǔ)考和重修的成績,只保留學(xué)生正考成績。
(一)學(xué)生學(xué)業(yè)成績數(shù)據(jù)預(yù)處理[2]
本次實(shí)驗的數(shù)據(jù)來源于廈門工學(xué)院教務(wù)管理系統(tǒng)數(shù)據(jù)庫,具有規(guī)范性和真實(shí)性。原始數(shù)據(jù)進(jìn)行算法分析時需要生成適用于Apriori算法的布爾型數(shù)據(jù),進(jìn)而實(shí)現(xiàn)算法在成績數(shù)據(jù)挖掘中的應(yīng)用。
1.數(shù)據(jù)消減
針對缺項數(shù)據(jù),則需要刪除這類學(xué)生的異常成績數(shù)據(jù)。
2.數(shù)據(jù)標(biāo)準(zhǔn)化[3]
在學(xué)生的學(xué)業(yè)成績表里,少數(shù)課程錄入的成績?yōu)樗募壷疲▋?yōu)秀、中等、及格、不及格 )。為了使成績數(shù)據(jù)在挖掘過程中統(tǒng)一規(guī)則,需要針對這類數(shù)據(jù)進(jìn)行標(biāo)準(zhǔn)化處理。成績數(shù)據(jù)標(biāo)準(zhǔn)化對應(yīng)表如表1所示。對應(yīng)規(guī)則設(shè)定完成,再將學(xué)生的學(xué)業(yè)成績數(shù)據(jù)基于學(xué)號作為主鍵進(jìn)行數(shù)據(jù)轉(zhuǎn)化。
3.成績數(shù)據(jù)離散化
按照Apriori算法函數(shù)的作用,將標(biāo)準(zhǔn)化后的學(xué)生學(xué)業(yè)成績進(jìn)行離散化處理,并且為了簡化表格,把表中列出的全部課程成績按代碼來表示,離散化后的數(shù)據(jù)表如表2所示。
四、關(guān)聯(lián)參數(shù)閾值確定
首先通過試探法來確定支持度的最佳值,設(shè)定置信度閾值minConf=0.9,試探得出當(dāng)支持度為0.3時,關(guān)聯(lián)規(guī)則分析的結(jié)果最具有代表性,因此我們將支持度設(shè)置為0.3,并使用Apriori算法來對該數(shù)據(jù)集進(jìn)行分析[5]。如表3。
同理通過試探法來確定置信度的最佳值,根據(jù)上一步實(shí)驗得到的最優(yōu)支持度minSup=0.3,試探得出當(dāng)置信度minConf=0.8時,關(guān)聯(lián)規(guī)則分析的結(jié)果最具有代表性,由此可得最優(yōu)置信度設(shè)置為0.8,如表4。
由表4可得,最優(yōu)的關(guān)聯(lián)規(guī)則閾值為:{支持度minSup=0.3,置信度minConf=0.8}。
五、關(guān)聯(lián)規(guī)則結(jié)果
在 Matlab2018a 環(huán)境下,運(yùn)用 Apriori 算法對預(yù)處理的成績數(shù)據(jù)進(jìn)行挖掘,采用上文確定的最優(yōu)支持度和置信度{minSup=0.3,minConf=0.8},挖掘出不同的關(guān)聯(lián)規(guī)則。在分析的過程中,我們得到了一個包含了各種課程成績頻繁項集的列表,其中支持度和置信度都達(dá)到了預(yù)設(shè)的閾值。將強(qiáng)關(guān)聯(lián)規(guī)則以列表的形式呈現(xiàn)出來,在本文中,挖掘出的關(guān)聯(lián)規(guī)則,如表5所示。
六、實(shí)驗結(jié)果分析
本次實(shí)驗共挖掘出27個頻繁項集,其中包含了該專業(yè)學(xué)生的各個成績屬性組合情況。在27個頻繁項集中,選取其中支持度、置信度較高的一些關(guān)聯(lián)規(guī)則進(jìn)行分析,根據(jù)表中列出的關(guān)聯(lián)規(guī)則可知:
(一)規(guī)則12,該專業(yè)學(xué)生在{高等代數(shù)(一)C,高等代數(shù)(二)C}課程中都取得了中等(C)的成績,那么該學(xué)生在{復(fù)變函數(shù)C}課程中也很可能取得中等(C)的成績,支持度70.48%、置信度為80.76%,支持度越大,說明在該專業(yè)的學(xué)生中該三門課程同時取得中等(C)的成績非常普遍,且前置課程的成績對后置課程的成績的影響比較大,影響的概率為80.76%。
(二)規(guī)則5:{數(shù)據(jù)結(jié)構(gòu)D -> 數(shù)據(jù)庫原理D},該規(guī)則的支持度為50.24%、置信度為81.75%,則表明該專業(yè)的學(xué)生成績系統(tǒng)中顯示有一門{數(shù)據(jù)結(jié)構(gòu)}不及格(D),根據(jù)關(guān)聯(lián)規(guī)則得出他需要注意{數(shù)據(jù)庫原理}課程的學(xué)習(xí),同時需要加強(qiáng){數(shù)據(jù)結(jié)構(gòu)}課程的指導(dǎo)及復(fù)習(xí)。
(三)從規(guī)則 10、13、16、27 中可以看到,數(shù)學(xué)類相關(guān)課程的成績與程序語言類,以及專業(yè)課的成績存在一定關(guān)聯(lián)性,其原因是數(shù)學(xué)類課程是計算機(jī)編程邏輯的基礎(chǔ)課程,數(shù)學(xué)類課程對于學(xué)生邏輯思維能力的提升具有不可替代的作用。而語言類編程課程的學(xué)習(xí)一般都是基于邏輯思維來學(xué)習(xí)的,所以若是數(shù)學(xué)類的課程成績較差,后續(xù)的語言類課程也會學(xué)不好或者出現(xiàn)不及格的現(xiàn)象。
綜上所述,通過本次實(shí)驗可以看出,關(guān)聯(lián)規(guī)則挖掘技術(shù)可以對學(xué)生學(xué)業(yè)成績之間的關(guān)系進(jìn)行發(fā)掘和分析,從而為學(xué)生的學(xué)習(xí)提供有益的指導(dǎo)和幫助,促進(jìn)學(xué)生成長和發(fā)展[4]。
參考文獻(xiàn)
[1]王吉.教務(wù)數(shù)據(jù)的分析與預(yù)測——以建寧七中為例.北京:清華大學(xué)出版社,2018:25-28.
[2]吳蓓.基于決策樹算法的成績預(yù)測模型研究及應(yīng)用[M].北京:人民郵電出版社,2019:13-16.
[3]都娟,翟社平.基于改進(jìn) Apriori 算法的高校學(xué)生成績預(yù)警系統(tǒng)的研究[M].北京:人民郵電出版社,2018:108-109.
[4]胡金濤.基于C4.5決策樹的學(xué)生成績預(yù)測教學(xué)系統(tǒng)的研究與實(shí)現(xiàn)[D].西安:西南交通大學(xué),2017.
[5]毋雪雁,王水花,張煜東.K最近鄰算法理論與應(yīng)用綜述[J].計算機(jī)工程與應(yīng)用,2017,53(21):1-7.