潘麗芳,謝書童,曹秀娟
(1.集美大學(xué)理學(xué)院,福建 廈門 361021;2.集美大學(xué)計算機工程學(xué)院,福建 廈門 361021)
近年來,隨著慕課在線學(xué)習(xí)課程迅速普及,更多的學(xué)生得到了便捷高效的學(xué)習(xí)體驗[1]。然而,慕課動則成千上萬名學(xué)生在一起大規(guī)模的學(xué)習(xí)模式,與現(xiàn)代教育理念中學(xué)生學(xué)習(xí)的個性化需求形成了尖銳的矛盾。在慕課規(guī)模化教學(xué)條件下,合理引導(dǎo)并實現(xiàn)學(xué)生的個性化學(xué)習(xí)是一個教育和學(xué)術(shù)并重的問題,具有重要研究價值[2-3]。
蔣卓軒等[4]對北京大學(xué)在Coursera平臺上開設(shè)的6門慕課的學(xué)習(xí)行為數(shù)據(jù)進行分析與挖掘。結(jié)果表明,基于學(xué)習(xí)行為特征的數(shù)據(jù)分析能有效地判別一個學(xué)生最后能否獲得課程證書。Qiu等[5]基于清華大學(xué)學(xué)堂在線的慕課數(shù)據(jù),提出用潛在動態(tài)因子圖模型(latent dynamic factor graph,LadFG)來預(yù)測學(xué)生作業(yè)情況,以及能否通過考試獲得證書。Xu等[6]通過分析學(xué)生在慕課平臺上的活動日志,歸納出不同學(xué)生的學(xué)習(xí)動機,設(shè)計出基于支持向量機(SVM)的分類算法預(yù)測學(xué)生能否取得證書。Zhang等[7]對北大《數(shù)據(jù)結(jié)構(gòu)與算法》與《計算機導(dǎo)論》兩門慕課,匯聚多源異構(gòu)數(shù)據(jù),分析學(xué)生的學(xué)習(xí)內(nèi)容,識別課程中的重要概念,通過學(xué)生測驗數(shù)據(jù)來評估學(xué)生的知識狀態(tài),并設(shè)計出算法預(yù)測學(xué)生是否中途退課。Yu等[8]根據(jù)學(xué)生的視頻點擊流日志,識別出學(xué)生的七種認(rèn)知參與模型,設(shè)計了基于K最近鄰(KNN)、SVM、人工神經(jīng)網(wǎng)絡(luò)(ANN)的分類算法,預(yù)測學(xué)生能否通過課程考試。
為了提高傳統(tǒng)線下課程與線上慕課的教學(xué)效率,Meier等[9]利用課程的歷史教學(xué)數(shù)據(jù)(主要包括作業(yè)、小測、期中考試等),預(yù)測學(xué)生在后繼學(xué)習(xí)中的可能表現(xiàn)(好/差),為提前對學(xué)習(xí)不佳的學(xué)生進行教學(xué)干預(yù)贏得時間。Xu等[10]設(shè)計了一個雙層結(jié)構(gòu)的集成分類系統(tǒng),對學(xué)生不斷變化的學(xué)習(xí)狀態(tài)進行動態(tài)預(yù)測,并提出了一種基于潛在因子模型和概率矩陣分解的數(shù)據(jù)驅(qū)動方法,發(fā)現(xiàn)了課程的相關(guān)性,從而提高預(yù)測準(zhǔn)確度。Ulloa-Cazarez等[11]提出遺傳規(guī)劃(genetic programming,GP)算法預(yù)測學(xué)生能否通過期末考試。為了識別出學(xué)習(xí)《數(shù)字設(shè)計》課程有困難的學(xué)生,Hussain等[12]使用ANN與SVM等算法,利用學(xué)習(xí)系統(tǒng)上的學(xué)習(xí)行為數(shù)據(jù),預(yù)測出學(xué)習(xí)困難的學(xué)生,方便提前教學(xué)干預(yù)。
上述研究工作大多根據(jù)慕課中的學(xué)習(xí)行為數(shù)據(jù),設(shè)計分類預(yù)測算法來預(yù)測后續(xù)學(xué)習(xí)成效,即預(yù)測學(xué)生能否通過考試、提前退課、順利畢業(yè)等,這實質(zhì)上是一個二分類問題的研究。然而,學(xué)生學(xué)習(xí)成效的多分類預(yù)測比二分類更有利于學(xué)生個性化教學(xué)的實施,但多分類預(yù)測難度較大,目前國內(nèi)外有關(guān)慕課數(shù)據(jù)的多分類預(yù)測的研究很少。本文提出基于數(shù)據(jù)復(fù)雜度的糾錯輸出編碼(error correct output codes,ECOC)多分類算法,對慕課數(shù)據(jù)進行挖掘,以期實現(xiàn)對學(xué)生成績的多分類預(yù)測,即預(yù)測學(xué)生成績的四個等級(優(yōu)、良、合格、不合格),為個性化和差異化的教學(xué)干預(yù)提供理論基礎(chǔ)與技術(shù)條件。
本文提出的基于數(shù)據(jù)復(fù)雜度的ECOC分類算法,首先利用數(shù)據(jù)復(fù)雜度降低兩個分類的復(fù)雜度,然后,利用ECOC算法實現(xiàn)多個二分類預(yù)測,從而實現(xiàn)多分類預(yù)測。該算法主要分為二個步驟:基于數(shù)據(jù)復(fù)雜度的二分類調(diào)整方法;基于ECOC的多分類預(yù)測。
數(shù)據(jù)復(fù)雜度是通過分析數(shù)據(jù)特征來衡量數(shù)據(jù)樣本分類的難易程度[13-14]。數(shù)據(jù)復(fù)雜度越高的分類問題,算法越難以實現(xiàn)正確的分類預(yù)測。因此,本文采用了多種數(shù)據(jù)復(fù)雜度方法降低二分類問題的分類復(fù)雜程度,它們分別是費希爾判別率(F1)、交叉重疊體積(F2)、重疊區(qū)域數(shù)據(jù)點數(shù)(F3)、同類實例與異類實例距離比(N2)、基于最近鄰分類器的錯誤率(N3)、INN分類器的誤差率(N4)、非線性分類器的非線性特點(L3),以及基于質(zhì)心匹配的方法(C1)[13]。
ECOC多分類算法最早由通信領(lǐng)域為解決信號傳輸問題而提出,其處理問題的關(guān)鍵在于選擇高效優(yōu)秀的編碼策略和解碼策略[15]。ECOC多分類算法的主要策略是將多類問題轉(zhuǎn)化為多個二分類問題進行求解。ECOC多分類算法包括三個基本步驟:編碼、訓(xùn)練、解碼。
編碼策略的設(shè)計是為了得到實現(xiàn)多類分解和基分類器集成的編碼矩陣。編碼矩陣是由二元(-1,+1)或者三元(-1,+1,0)組成,其中-1代表負(fù)類,0代表對應(yīng)的類在分類時被忽略,+1代表正類;行向量表示一個類別,列向量表示一個基二分類器。此外,編碼策略分?jǐn)?shù)據(jù)無關(guān)和數(shù)據(jù)相關(guān)兩種類型。數(shù)據(jù)無關(guān)主要是指編碼時不依賴數(shù)據(jù)樣本,數(shù)據(jù)相關(guān)是指編碼時樣本特征的分布緊密聯(lián)系著編碼矩陣。數(shù)據(jù)無關(guān)算法包括一對一(One Vs.One, OVO)、一對多(One Vs.All,OVA)、稀疏隨機(sparse random)和密集隨機(dense random)策略。數(shù)據(jù)相關(guān)算法包括DECOC、Forest-ECOC、ECOC-ONE等。編碼矩陣行列應(yīng)盡可能不同,減少基二分類器和碼字之間的相關(guān)性。訓(xùn)練步驟就是通過訓(xùn)練數(shù)據(jù)對ECOC及其相應(yīng)的基分類器進行訓(xùn)練,從而調(diào)整ECOC及其基分類器的參數(shù)。
解碼策略是指在測試某個樣本時,每個基二分類器都會產(chǎn)生一個相同長度的向量作為輸出,然后計算出輸出向量與編碼矩陣中的碼字之間的距離,選擇距離最小的碼字作為最終結(jié)果,并將相應(yīng)的類別標(biāo)簽賦予該樣本。解碼策略包括AED、ED、ELB、ELW、HD、LAP、LLB等。
首先,基于數(shù)據(jù)復(fù)雜度的ECOC分類算法需將所有的類別隨機分成數(shù)量盡可能相同的兩組,然后對每個類別進行相同的數(shù)據(jù)復(fù)雜度評估,再交換兩個組中具有最高復(fù)雜度的兩個類,從而降低兩個組組內(nèi)整體的數(shù)據(jù)復(fù)雜度,提高對應(yīng)基二分類器的泛化能力。通過降低類別之間的數(shù)據(jù)復(fù)雜度,使得分類算法更容易區(qū)分不同類別,從而達到提高預(yù)測準(zhǔn)確率的目標(biāo)。在追求降低組內(nèi)整體復(fù)雜度時,F(xiàn)1和F3兩種數(shù)據(jù)復(fù)雜度評價指標(biāo)是相反的,應(yīng)盡可能提高組內(nèi)F1或F3指標(biāo)的值才能降低復(fù)雜性。不斷調(diào)整以上類別分組過程以達到最優(yōu)分配,即組內(nèi)數(shù)據(jù)復(fù)雜度達到最低,形成類別樹形分布。將節(jié)點編碼為+1或-1(沒有參與分類的節(jié)點編碼為0),形成編碼矩陣的一列,得到編碼矩陣后,再用訓(xùn)練分類器對樣本進行預(yù)測,算法整體框架如圖1所示。
收集并整合三所高校的計算機基礎(chǔ)課程的慕課數(shù)據(jù),預(yù)處理后的類別數(shù)量、特征數(shù)量、樣本數(shù)量如表1所示。根據(jù)學(xué)生的期末成績,把學(xué)生樣本劃分成四類:分?jǐn)?shù)位于0(含0)到60之間判為第4類,分?jǐn)?shù)位于60(含60)到75之間判為第3類,分?jǐn)?shù)位于75(含75)到85之間判為第2類,分?jǐn)?shù)位于85(含85)到100(含)之間判為第1類,亦即為不合格、合格、良與優(yōu)四個等級。該課程的知識點包括硬件系統(tǒng)組成、操作系統(tǒng)與常用軟件、音頻和圖像處理、數(shù)據(jù)庫技術(shù)、算法、無線通信技術(shù)、加密解密算法,以及網(wǎng)絡(luò)安全等。將相應(yīng)的知識點做成教學(xué)視頻放于慕課平臺供學(xué)生學(xué)習(xí),且每章均有課后習(xí)題,另有階段性小測,以鞏固學(xué)生對知識點的掌握。本研究收集了學(xué)生在慕課平臺觀看教學(xué)視頻的行為數(shù)據(jù)(包括訪問時間、訪問時長、所用電子設(shè)備)、教學(xué)視頻中的答題數(shù)據(jù)、章節(jié)作業(yè)數(shù)據(jù)、小測數(shù)據(jù),以及線下期末成績等大量細(xì)粒度的學(xué)習(xí)行為數(shù)據(jù)。
表1 學(xué)生慕課學(xué)習(xí)行為數(shù)據(jù)集
算法在Matlab上實現(xiàn),并調(diào)用Sklearn工具包。為充分驗證算法的有效性,實驗均采用十折交叉法進行測試,取平均值作為評價標(biāo)準(zhǔn);均采用了兩種基二分類器,即SVM和樸素貝葉斯(NB);所有算法的解碼策略均采用ELW(即指數(shù)損失加權(quán)解碼)方式。五種傳統(tǒng)ECOC算法,即編碼策略為OVO、OVA、DECOC、ECOC-ONE、Forest-ECOC的均進行了相應(yīng)的實驗,以對比本文提出的基于數(shù)據(jù)復(fù)雜度的ECOC與傳統(tǒng)ECOC的算法性能。
如表2和表3所示,準(zhǔn)確率最高的實驗結(jié)果采用下劃線并加粗標(biāo)識。從表2基于SVM的ECOC算法的預(yù)測結(jié)果可以發(fā)現(xiàn):在學(xué)校A數(shù)據(jù)集上,基于數(shù)據(jù)復(fù)雜度的ECOC算法和其他ECOC算法性能相近,準(zhǔn)確率在81%左右;在學(xué)校B數(shù)據(jù)集上,基于質(zhì)心匹配的數(shù)據(jù)復(fù)雜度C1的ECOC算法預(yù)測準(zhǔn)確率最高,達到73.32%,與基于數(shù)據(jù)復(fù)雜度的ECOC算法性能相近,但比傳統(tǒng)ECOC算法準(zhǔn)確率平均提升約0.6%;在學(xué)校C數(shù)據(jù)集上,基于質(zhì)心匹配的數(shù)據(jù)復(fù)雜度C1的ECOC算法獲得最高準(zhǔn)確率,可達73.55%,基于數(shù)據(jù)復(fù)雜度的ECOC算法相比其他ECOC算法準(zhǔn)確率平均提升約0.51%;在所有編碼方式中,基于質(zhì)心匹配的數(shù)據(jù)復(fù)雜度C1的ECOC算法獲得最優(yōu)平均準(zhǔn)確率為75.95%。綜上分析可得,基于數(shù)據(jù)復(fù)雜度的ECOC算法相比于傳統(tǒng)ECOC算法具有更優(yōu)的性能。
表2 基于SVM的不同ECOC算法的準(zhǔn)確率對比
基于NB的ECOC算法的結(jié)果如表3所示。在所有算法中,基于最近鄰分類器的錯誤率數(shù)據(jù)復(fù)雜度N3的ECOC算法在三個數(shù)據(jù)集上平均分類準(zhǔn)確率最高,達到68.95%。在學(xué)校A數(shù)據(jù)集上,OVA算法取得最好的準(zhǔn)確率,即71.56%,其余ECOC算法的準(zhǔn)確率相近;在學(xué)校B數(shù)據(jù)集上,DECOC算法取得最好的準(zhǔn)確率,即70.26%;在學(xué)校C數(shù)據(jù)集上,基于最近鄰分類器的錯誤率數(shù)據(jù)復(fù)雜度N3的ECOC算法取得最好的準(zhǔn)確率,即67.63%。從平均準(zhǔn)確率上看,基于數(shù)據(jù)復(fù)雜度的ECOC算法和傳統(tǒng)ECOC算法并沒有明顯的差距。
由表2和表3的結(jié)果可得,在學(xué)校A、B、C三個數(shù)據(jù)集上,基于SVM的ECOC算法的性能明顯優(yōu)于基于NB的ECOC算法,平均預(yù)測準(zhǔn)確率分別提高了約11%、4%、6%。由圖2可以看出,基于SVM的ECOC算法預(yù)測的平均準(zhǔn)確率(三個數(shù)據(jù)集的準(zhǔn)確率平均值)明顯優(yōu)于基于NB的ECOC算法。進一步可以發(fā)現(xiàn),在采用SVM為基分類器情況下,ECOC算法結(jié)果總體波動較小,其中基于數(shù)據(jù)復(fù)雜度的ECOC算法性能更加穩(wěn)定,且優(yōu)于傳統(tǒng)ECOC。相反地,在基于NB分類器情況下,ECOC算法準(zhǔn)確率波動較大,其中基于數(shù)據(jù)復(fù)雜度的ECOC算法效果較好。
表3 基于NB的不同ECOC算法的準(zhǔn)確率對比
本文收集并整合三個高校學(xué)生的慕課學(xué)習(xí)行為數(shù)據(jù),設(shè)計了包括多種基于數(shù)據(jù)復(fù)雜度的ECOC算法,并與傳統(tǒng)ECOC算法在內(nèi)的十多種基于ECOC的多分類算法進行比較。實驗結(jié)果表明,相比于傳統(tǒng)的ECOC算法,基于數(shù)據(jù)復(fù)雜度的ECOC多分類算法預(yù)測精度更高、更穩(wěn)健,其對學(xué)生成績進行四個等級的預(yù)測,平均準(zhǔn)確率可達75%以上,為提前教學(xué)干預(yù)提供了參考。
未來可考慮用更多的數(shù)據(jù)復(fù)雜度算法來計算三所高校數(shù)據(jù)的復(fù)雜度,衡量數(shù)據(jù)內(nèi)部分布情況。此外,算法中基分類器的多樣性影響著ECOC算法的性能,因此,豐富基分類器的多樣性也是值得深入研究的方向。