徐丹 路永 于化龍
【摘 要】隨著在線教育平臺的發展,在學生和在線平臺的交互過程中產生了大量的學習數據,為教育數據挖掘提供了數據基礎。本文以KDD Cup 2010提供的在線學習數據為研究對象,利用協同過濾算法找到待預測學生的K近鄰,進而對該學生的答題結果進行預測,取得了理想的效果。
【關鍵詞】協同過濾;教育數據挖掘;學習結果預測
中圖分類號: TP391.3 文獻標識碼: A 文章編號: 2095-2457(2018)30-0052-004
DOI:10.19694/j.cnki.issn2095-2457.2018.30.022
Student Performance Prediction based on Collaborative Filtering Algorithm
XU Dan1 LU Yong2 YU Hua-long1
(1.School of Computer Science,Jiangsu University of Science and Technology,Zhenjiang Jiangsu 212003;
2.Department of Technology and Informationization,Public Security Bureau of Xuzhou,Xuzhou Jiangsu 221000)
【Abstract】A large amount of learning data is generated during the interactive between the students and online study platforms.The data is captured and stored and consequently used for educational data mining.In this paper,we utilize the collaborative filtering algorithm to find the K nearest neighbours of the test student.The performance of the student will be predicted according to its K nearest neighbours.The experiment is executed on KDD Cup 2010 data set and shows expected results.
【Key words】Collaborative filtering algorithm;Educational data mining;Student performance prediction
0 引言
近年來,隨著慕課、edex等在線教育平臺的出現和普及,在學生和在線平臺的交互過程中產生了大量的學習數據,教育大數據的概念隨之興起。在此基礎上產生了教育數據挖掘和學習分析兩種相互關聯又互有不同的研究領域[1]。
國際教育數據挖掘學會認為教育數據挖掘的主要目的為:利用數據挖掘的方法探索教育數據,幫助更好的理解學生以及學生的學習環境和背景,進而預測學習者群體的學習效果[2]。學習分析則通過搜集教與學過程中的行為數據,并應用機器學習和數據挖掘的方法和模型,從多個維度深度挖掘有價值的數據信息,揭示其中隱藏的學習行為模式,預測學習者的學習結果,從系統角度出發幫助學生、導師和教育管理者做學習和教學決策[3,4]。二者的關鍵不同在于教育數據挖掘側重于全自動方法發現教育數據隱藏信息,更多的用于結果預測;學習分析則偏向于采用人為主導的方法分析教育數據,更多的用于為學習行為和現象尋找可解釋和可理解的模型[5]。
教育數據挖掘中的主要任務之一是學習結果預測。通過對學生學習行為和學習過程的分析預測未來的結果事件,例如哪些學生可能存在輟學的風險。也可對不能直接采集的數據屬性進行預測,如學生的學習成績。在[6]中,等人開發的Purdue Signals project項目即是采用預測模型進行學生學習結果預測的典型案例,實踐證明該系統能夠明顯的改善教學效果。
本文的主要工作是通過協同過濾算法對在線教育數據進行挖掘,探尋數據之間存在的關聯模式,對學習結果進行預測。因此本文的研究重點在于數據的獲取和分析以及數據挖掘算法在教育數據中的應用。
1 協同過濾算法
協同過濾算法在電子商務和推薦系統中被廣泛應用[7]。其基本思想是,通過對用戶歷史行為數據的挖掘發現用戶的偏好,基于不同的偏好對用戶進行群組劃分并推薦類別相似的商品。協同過濾算法根據其主體不同可分為兩類:基于用戶的協同過濾算法和基于商品的協同過濾算法。
本文將協同過濾算法用于學生學習結果預測,將學生看作用戶,將學生的學習表現看作項目,采用以學生為主體的協同過濾算法,尋找與目標學生距離最近的K個學生,根據這K個學生的學習結果來預測目標學生的學習結果。
如圖1所示,本文算法流程主要包括三個部分,首先計算待分類數據和已知數據之間的相似性,其次根據相似性生成待分類數據的K近鄰集合,最后根據K近鄰中學生的答題結果預測待分類學生的答題結果。
2 學習結果預測
教育數據挖掘產生的主要原因之一是不斷增加的、可分析的教育數據的出現。當學習者通過電子設備與在線學習平臺交互時,學習數據便被獲取并存儲起來以備后用。比較有代表性的教育數據來源于卡耐基梅隆大學的Datashop,其提供了多個與教育相關的公開和私有數據集[8]。另一個具有代表性的數據集是KDD(Data Mining and Knowledge Discovery)Cup 2010提供的關于學生通過在線輔助教學平臺學習情況的公開數據集[9]。KDD Cup 2010是為數據挖掘和知識發現競賽而設置的數據集,有明確的訓練集和測試集,其目的是用于學生學習結果的預測。因此,在本文中選用KDD CUP 2010作為我們的實驗數據集。
KDD CUP 2010一共有5個數據集,包括3個發展數據集和2個挑戰數據集。兩個數據集最大的不同是,發展數據集用于參賽算法的測試,其測試集提供真值數據,而挑戰數據集用于比賽,其測試集不提供真值數據。我們選擇發展數據集中的Algebar I 2005-2006數據集用于實驗。通過575名學生在數學學習過程中和計算機輔助教學系統之間的交互數據預測學生最終的答題結果。學生通過計算機輔助教學系統答題,在答題過程中與輔助教學系統之間的交互可分為兩種:一是遇到困難可以向輔助教學系統提問,二是答題結束后提交最終答案,學生和教學系統的每次交互稱為一個transaction。在學生學習過程中,有四個基本概念,分別為問題、步驟、知識點和學習機會數。其中,問題是學生要解決的基本任務,也可稱為練習,通常包括多個步驟,有的步驟可用于解決不同的問題。每個步驟可能包括多個知識點,當然,不同的步驟可以涉及相同的知識點。學習機會數是指學生學習某個知識點的次數,當學生在解題過程中遇到某一知識點,則該知識點的機會數加1。數據集中的特征如表1所示。
導入之后得到的數據示例如表2所示,需要注意的是,為了方便顯示我們省略了一些屬性。另外,KC是關于知識點的詳細描述,所占篇幅較長,我們僅以SkillRule代替。
訓練數據集中有19種特征,其中特征7-13、15-17的值在測試數據集中被隱藏,特征14 (Correct First Attempt) 為需要預測的分類特征。因此,在訓練過程中也排除了特征7-13和特征15-17。我們將剩下的8種非類別特征分為三類,一是與學生相關的特征,即特征2;二是與題目相關的特征,即特征3-6;第三類是與知識點相關的特證,即特征18和19。在對數據樣本進行距離度量過程中采用協同過濾算法,把學生當做主體,即協同過濾算法中的客戶,將題目和知識點看作與客戶相關的項目。
2.1 相似性度量
距離度量也分為三個部分,學生本身的相似性度量、學習-題目相似性度量和學生-知識點相似性度量。
學生本身的相似性度量,給定訓練集Dtr,sp為訓練樣本中的學生標識號,sq為待分類樣本中的學生標識號,則學生自身的相似度為:
學生-題目相似性度量,記學生sp,sq所做的步驟集合分別為Isp,Isq,其做過的相同步驟的集合可表示為,則學生-題目相似度可用Pearson相似性度量[10]方法表示如下:
式中,I是學生sp,sq做過相同步驟的數量,是學生sp提交的第i個步驟的結果,是學生sp在相同步驟上的提交結果的均值。
學生-知識點相似性度量,記學生sp,sq所做的步驟涉及的知識點集合分別為Ksp,Ksq,則相同的知識點集合可表示為,則學生-題目相似度可表示為:
式中,表示學生sp的第k個知識點出現次數。該公式前一項給出了兩個學生知識點的交集和并集中知識點數量的比值,后一項給出了對于相同的知識點,其出現次數的差距的倒數。
因此,以學生為主體的兩個數據樣本之間的相似度可以用公式(4)表示,并將最終的相似性度量進行歸一化。
2.2 結果預測
對于待分類的數據記錄,計算其和已知數據記錄的相似性度量,獲取和待分類記錄中相似度最高的K個記錄,并且按照相似度從大到小的順序降序排列。
確定待分類記錄的最近鄰后,即可預測其對應的的答題結果。這里我們采用加權平均的方法,即取該記錄的最近鄰中K個學生的答題結果的均值,若均值大于0.5,則認為待分類記錄的學生的答題結果為1,否則為0。
本文采用均方根誤差值RMSE(Root Mean Square Error)評估預測值和真實值之間的差異。記i為一問題步驟,s為學生,則esi表示學生s對于步驟i的答題結果的預測值,gsi表示學生s對于步驟i的答題結果的真實值。RMSE值越小,則預測值與真實值越接近,算法的分類正確率越高。
預測算法在測試數據集Dt上的RMSE可用下式計算:
在測試數據集上的分類正確率和RMSE如圖2所示。圖中K是表示待測試數據的最近鄰數量,分別取5,10和15。從圖中可知,當K=10時,其RMSE和預測正確率明顯高于K=5時的性能;但相較于K=10,K=15時的RMSE和正確率指標略有改進,但幅度不大。
3 結語
本文首先對KDD Cup 2010提供的數據集進行了詳細的分析,在此基礎上探討了協同過濾算法在學生學習結果預測中的應用,并取得了理想的預測結果。下一步工作重點在于構建針對本校學生的學習數據集,進行學習結果分析與預測,據此進行個性化的干預和指導。
【參考文獻】
[1]蔣卓軒,張巖,李曉明.基于MOOC數據的學習行為分析與預測[J].計算機研究與發展,2014:1.
[2]Baker RS,Inventado PS.Educational data mining and learning analytics[M]//Learning analytics.Springer,New York,NY,2014:61-75.
[3]Pe a-Ayala A.Educational data mining:A survey and a data mining-based analysis of recent works[J].Expert systems with applications,2014,41(4):1432-1462.
[4]賀超凱,吳蒙.edX 平臺教育大數據的學習行為分析與預測[J].中國遠程教育,2016(6):54-59.
[5]Siemens G,d Baker R S J.Learning analytics and educational data mining:towards communication and collaboration[C]//Proceedings of the 2nd international conference on learning analytics and knowledge.ACM,2012:252-254.
[6]Arnold K E.Signals:Applying academic analytics[J].Educause Quarterly,2010,33(1):1-10.
[7]榮輝桂,火生旭,胡春華,等.基于用戶相似度的協同過濾推薦算法[J].通信學報,2017,35(2):16-24.
[8]Koedinger K R,Baker R S J,Cunningham K,et al.A data repository for the EDM community:The PSLC DataShop[J]. Handbook of educational data mining,2010,43:43-56.
[9]Stamper J,Pardos Z A.The 2010 KDD Cup Competition Dataset:Engaging the machine learning community in predictive learning analytics[J].Journal of Learning Analytics,2016,3(2):312-316.
[10]劉翠翠.協同過濾算法在教育數據挖掘中學生成績預測的研究[D].昆明理工大學,2016.