婁增輝,王紅林,孫彩云
(南京信息工程大學(xué)人工智能學(xué)院,江蘇 南京 210044)
隨著計算機技術(shù)的發(fā)展,大數(shù)據(jù)和教育的聯(lián)系愈發(fā)緊密,在教育領(lǐng)域的應(yīng)用也愈加廣泛。如何有效地提升學(xué)生成績是目前高等教育領(lǐng)域亟待解決的主要問題[1]。成績預(yù)測是大數(shù)據(jù)技術(shù)在教育領(lǐng)域中的一個重要應(yīng)用。學(xué)習(xí)成績預(yù)測不僅可以幫助老師及時修正教學(xué)策略,提高學(xué)生最終學(xué)習(xí)成績,降低不及格學(xué)生比例,還能在一定程度上對學(xué)生起到監(jiān)督和預(yù)警作用,是一種提高學(xué)生成績的有效方法[2]。
當(dāng)前的社會有收集物理世界中的大量信息,并使用傳感器等技術(shù)將其傳輸?shù)骄W(wǎng)絡(luò)世界的能力。數(shù)十億人通過移動設(shè)備連接互聯(lián)網(wǎng),這帶來前所未有的信息處理能力、存儲容量和獲取知識的途徑[3]。關(guān)于大數(shù)據(jù)這個詞的定義,不同的研究者有自己的見解。Yassine等[4]認為,大數(shù)據(jù)是大量的數(shù)據(jù)。然而,De Mauro等[5]將其視為一種具有高數(shù)量、速度和多樣性的信息資產(chǎn)。此外,Osman[6]將大數(shù)據(jù)描述為難以用傳統(tǒng)方式處理、控制或檢查的大數(shù)據(jù)集。在2001年,Gartner Group(前身為META Group)的分析員Doug Laney提出大數(shù)據(jù)的3V特性:Volume(數(shù)據(jù)量)、Velocity(高速)與Variety(多樣)[7]。之后IBM增加了Value(價值)和Veracity(真實)將其擴充至5V[8]。
步入大數(shù)據(jù)時代,“數(shù)據(jù)驅(qū)動發(fā)展,分析變革教育”成為新一代教育創(chuàng)新變革的重要方向。2018年教育部印發(fā)的《教育信息化2.0行動計劃》提出目標:到2022年基本實現(xiàn)“三全兩高一大”的發(fā)展目標,建成“互聯(lián)網(wǎng)+教育”大平臺,努力構(gòu)建“互聯(lián)網(wǎng)+”條件下的人才培養(yǎng)新模式、發(fā)展基于互聯(lián)網(wǎng)的教育服務(wù)新模式、探索信息時代教育治理新模式[9]。2019年中共中央、國務(wù)院印發(fā)的《中國教育現(xiàn)代化2035》提出:加快信息化時代教育變革。建設(shè)智能化校園,統(tǒng)籌建設(shè)一體化智能化教學(xué)、管理與服務(wù)平臺。利用現(xiàn)代技術(shù)加快推動人才培養(yǎng)模式改革,實現(xiàn)規(guī)?;逃c個性化培養(yǎng)的有機結(jié)合[10]。這一系列的計劃和政策引導(dǎo)下,許多學(xué)校已經(jīng)展開了大數(shù)據(jù)與教育融合發(fā)展的探索[11]。
關(guān)于成績預(yù)測的研究并不少見。Macfadyen等[12]基于學(xué)習(xí)管理系統(tǒng)開發(fā)“預(yù)警系統(tǒng)”,發(fā)現(xiàn)處于學(xué)業(yè)危機的學(xué)生,并及時做出預(yù)警并采取措施改善其學(xué)業(yè)情況。陳勇[13]研究并實現(xiàn)了基于遺傳神經(jīng)網(wǎng)絡(luò)對成績的預(yù)測,發(fā)現(xiàn)該模型具有較高的準確性。王小麗等[14]構(gòu)建了基于加權(quán)樸素貝葉斯的英語成績預(yù)測模型,認為該模型可以做為預(yù)測和分析學(xué)生成績的一種有效方法。Jayakumari等[15]用數(shù)據(jù)挖掘技術(shù)分析學(xué)生數(shù)學(xué)水平進行分析并預(yù)測選課結(jié)果。黎龍珍[16]基于C4.5算法構(gòu)建成績預(yù)測模型,取得不錯的準確率,通過模型分析得出對學(xué)生成績影響最大是視頻任務(wù)點完成量。趙慧瓊等[17]對學(xué)習(xí)行為數(shù)據(jù)進行二元Logistic回歸分析并結(jié)合結(jié)果對學(xué)業(yè)危機學(xué)生進行干預(yù),有利于增強學(xué)習(xí)動機,提高學(xué)習(xí)質(zhì)量。這些研究確實對成績進行了預(yù)測并取得了較好的效果,但是其所選數(shù)據(jù)特征較少,并不能全面的反應(yīng)一個學(xué)生的真實情況。為此,有必要對學(xué)生的特征進行進一步分析,找出更加全面的影響成績因素對其成績進行預(yù)測。
目前,常用的大數(shù)據(jù)分析算法有:支持向量機(Support Vector Machine,SVM)、決策樹(Decision Tree,DT)、k近鄰算法(k-Nearest Neighbor,kNN)、神經(jīng)網(wǎng)絡(luò)(Neural Networks,NN)等[18]。這些算法在教育中的 應(yīng)用場景比較多,根據(jù)學(xué)生的行為對學(xué)生分類,可以分析影響學(xué)習(xí)效果的強因素,分析學(xué)習(xí)特征,預(yù)測學(xué)生的學(xué)習(xí)效果,對離群點預(yù)警,還可以為學(xué)生提供不同的學(xué)習(xí)資源分析依據(jù)[19]。本研究選取k近鄰學(xué)習(xí)、決策樹、全連接神經(jīng)網(wǎng)絡(luò)(Fully Connected Neural Network,F(xiàn)C)和循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)這四種算法進行成績預(yù)測研究。
kNN是一種常見的用于分類和回歸的監(jiān)督學(xué)習(xí)方法,在1968年由Cover和Hart提出。算法的基本思想是:對于給定的數(shù)據(jù)集,尋找并設(shè)置合適的k值。對于輸入的數(shù)據(jù),基于某種距離度量(如歐式距離)在數(shù)據(jù)集中找出與其距離最近的k個樣本,根據(jù)分類規(guī)則(如投票法)確定輸入數(shù)據(jù)的類別。如圖1所示。
圖1 kNN算法演示
ω1、ω2、ω3是分好的三類,設(shè)置k=5,輸入數(shù)據(jù)Xu距離ω1有四個最近的點,距離ω3有一個最近的點,所以Xu歸為ω1類。
決策樹是一種可用于分類和預(yù)測的樹形結(jié)構(gòu)。決策樹由根結(jié)點、內(nèi)部結(jié)點和葉子結(jié)點構(gòu)成。決策樹的生成是一個自上而下的遞歸過程?;舅惴ㄈ缦拢?/p>
根據(jù)選擇特征的策略,決策樹算法分為ID3、C4.5和CART算法等。本研究使用CART算法對學(xué)生成績進行預(yù)測,用基尼指數(shù)選擇最優(yōu)特征?;嶂笖?shù)的定義為:設(shè)有N個類,第n類的概率為pn,則
神經(jīng)網(wǎng)絡(luò)一般由輸入層、隱藏層和輸出層構(gòu)成(如圖3)。全連接神經(jīng)網(wǎng)絡(luò)是最樸素的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)。實現(xiàn)神經(jīng)網(wǎng)絡(luò)的過程包含訓(xùn)練步驟和測試步驟兩個步驟[20]。一個全連接神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)只有一個輸入層,一個輸出層,中間是若干層全連接層。神經(jīng)網(wǎng)絡(luò)的公式表示
y=Wx+b
神經(jīng)網(wǎng)絡(luò)的構(gòu)造過程就是一個不斷計算優(yōu)化權(quán)重W和偏置項b的過程。
圖2 神經(jīng)網(wǎng)絡(luò)的基本結(jié)構(gòu)
Adam優(yōu)化器用來更新和計算影響模型訓(xùn)練和模型輸出的網(wǎng)絡(luò)參數(shù),使其逼近或達到最優(yōu)值。
損失函數(shù)(loss)是評價模型預(yù)測值與真實值差異的函數(shù)。本實驗神經(jīng)網(wǎng)絡(luò)模型均使用交叉熵損失函數(shù)。其作用是表征兩個概率分布之間的距離。公式為
H(y*,y)=-∑y**lny
為了緩解過擬合,使用L2正則化。正則化在損失函數(shù)中引入模型復(fù)雜度指標,利用給W加權(quán)值,弱化訓(xùn)練數(shù)據(jù)的噪聲。L2正則化公式
輸出層前通過Softmax函數(shù),將神經(jīng)元的輸出映射到(0,1)區(qū)間內(nèi)。它的作用是把神經(jīng)元輸出轉(zhuǎn)化為概率,從而進行分類。Softmax的公式為
表示第j個分類的概率。
RNN是一類具有短期記憶能力的神經(jīng)網(wǎng)絡(luò)。RNN和FC結(jié)構(gòu)類似,不同之處在于RNN引入了循環(huán)核(ht),ht帶有記憶功能,它存儲了之前的信息,如圖3。
圖3 循環(huán)神經(jīng)網(wǎng)絡(luò)的基本結(jié)構(gòu)
此次實驗數(shù)據(jù)集來自“Kalboard 360”。該數(shù)據(jù)集具有16個特征,480條記錄,1個成績標簽,維度較高。數(shù)據(jù)集的特征有:學(xué)生性別、國籍、出生地、受教育水平、年級、教室、課程、學(xué)期、監(jiān)護者(父親或者母親)、舉手次數(shù)、訪問課程次數(shù)、檢查公告更新次數(shù)、參加討論次數(shù)、家長是否回答了學(xué)校提供的調(diào)查問卷、家長對學(xué)校的滿意度、每個學(xué)生的缺勤天數(shù)。通過對比多種數(shù)據(jù)集,此數(shù)據(jù)集的特征最貼近實際教學(xué)情況,易收集。本實驗的模型均由python3.8語言實現(xiàn)。
在預(yù)處理階段,使用python語言讀取數(shù)據(jù),將用字符型表示的信息重新編碼為數(shù)字型,如對于成績標簽L(低)、M(中)、H(高)分別轉(zhuǎn)化為0、1、2。對數(shù)據(jù)進行隨機化打亂,設(shè)置固定的random seed(隨機種子),使得隨機化后的數(shù)據(jù)固定,按照7:3將數(shù)據(jù)分割為訓(xùn)練集和測試集。
1)kNN
根據(jù)kNN的算法思想寫出程序,對于最佳k值設(shè)置取值范圍1-336,用for循環(huán)對每個k值計算準確率,得當(dāng)k=29時準確率最高,為68.056%。
2)DT
使用CART決策樹預(yù)測成績準確率為69.792%。由于決策樹的性質(zhì)可以使用sklearn機器學(xué)習(xí)庫的feature_importances_函數(shù)提取前6種重要特征:
表1 重要特征和重要度
前5個特征具有較高的重要度,對學(xué)生成績的影響較大,符合客觀規(guī)律。
3)FC
表2 模型參數(shù)設(shè)置
每次送入的樣本個數(shù)bath_size設(shè)置20,訓(xùn)練次數(shù)800次,損失函數(shù)和準確率曲線如下圖所示。
圖4 FC的loss曲線
圖5 FC的準確率曲線
訓(xùn)練集loss收斂于0.54,準確率收斂于78.5%;測試集loss收斂于0.56,準確率收斂于77%。準確率高,擬合效果好。
4)RNN
表3 模型參數(shù)設(shè)置
為了防止模型過擬合,每層RNN后進行一次Dropout,隨機使11%的神經(jīng)元失活。每次送入的樣本個數(shù)bath_size設(shè)置20,訓(xùn)練次數(shù)800次,損失函數(shù)和準確率曲線如下圖所示。
圖6 RNN的loss曲線
圖7 RNN的準確率曲線
訓(xùn)練集loss收斂于0.57,準確率收斂于80%;測試集loss收斂于0.56,準確率收斂于78.5%。較全連接神經(jīng)網(wǎng)絡(luò)有些許提升。
為了評估模型,除了上述的準確率,此次研究還引入其它三種常用的評價指標,結(jié)果如下所示。
圖8 不同模型的評價指數(shù)
從各指標可以看出,兩種神經(jīng)網(wǎng)絡(luò)模型效果明顯要好于kNN和DT,F(xiàn)C在F1值上比RNN要高,但是由于RNN引入了循環(huán)核,所以訓(xùn)練時間會長于FC,且準確率等值有些許波動。總的來說,在如此多特征的數(shù)據(jù)集上,能達到這樣的準確率,說明大數(shù)據(jù)分析算法在成績預(yù)測這一塊領(lǐng)域具有良好的應(yīng)用前景。
表4 不同模型的評價指數(shù)
學(xué)生的學(xué)業(yè)成績受多種因素影響,本研究選取了合適的數(shù)據(jù)集,并用四種大數(shù)據(jù)分析算法模型對學(xué)生進行成績預(yù)測,從結(jié)果來看,神經(jīng)網(wǎng)絡(luò)模型要明顯好過kNN和決策樹。這些算法模型應(yīng)用于實際教學(xué)中,通過決策樹能提取出影響學(xué)生成績的重要特征,結(jié)合神經(jīng)網(wǎng)絡(luò)得出的成績預(yù)測結(jié)果,能使教師對自己的教學(xué)計劃做出合適的調(diào)整,具有良好的應(yīng)用前景。但是本研究選取的算法模型都較為簡單,后續(xù)的研究將采用結(jié)合不同算法的復(fù)合算法模型對學(xué)生成績進行預(yù)測,希望能達到更高的準確率和更好的實用效果。