滕玲,施三支,張夢菲,劉先俊
(1.長春理工大學(xué) 數(shù)學(xué)與統(tǒng)計學(xué)院,長春 130022;2.長春理工大學(xué) 學(xué)生工作部,長春 130022)
家庭經(jīng)濟困難學(xué)生的認定是高校學(xué)生資助工作的首要步驟,只有準確分類和精準認定,才能為學(xué)生提供針對性較強的經(jīng)濟方面的資助。高校貧困生認定工作每學(xué)年進行一次,每學(xué)期調(diào)整一次,相對于老生而言,新生輔導(dǎo)員對學(xué)生的家庭經(jīng)濟情況了解時間較短,如何進行精準認定,成為高校資助工作的一大難題。其次,我國高校在開展認定工作時普遍存在受主觀影響較大、測評標準不明確、判定方法合理性不足等問題。因此,高校貧困生認定模型在理論研究和實際工作兩個層面上都具有十分重要的現(xiàn)實意義。
貧困生認定可視作一個分類問題。為了科學(xué)準確地對高校貧困生進行等級認定,許多資助工作者和相關(guān)研究人員基于不同的指標進行貧困生認定研究。在認定方法上從傳統(tǒng)的分類方法逐漸向機器學(xué)習(xí)方法轉(zhuǎn)變。傳統(tǒng)的方法包括層次分析、決策樹、聚類、Logistic、SVM等,早在2010年劉善槐[1]就利用教育支出、健康狀況、平均收入和生源類別四個因素建立了Logistic回歸模型,實現(xiàn)了貧困生的二分類,即是否為貧困;2018年劉嘉慶[2]利用一卡通消費數(shù)據(jù)來預(yù)測學(xué)生的困難等級;2019年陳瑞虹[3]建立基于SVM算法的高校貧困生等級識別模型。近年來,機器學(xué)習(xí)在分類問題上得到了廣泛應(yīng)用,具有代表性的是神經(jīng)網(wǎng)絡(luò)和集成學(xué)習(xí)算法。程茜宇[4]以某高校資助工作為例,利用深度神經(jīng)網(wǎng)絡(luò)方法構(gòu)建了學(xué)生資助評定模型,認定準確率與傳統(tǒng)算法相比得到一定提升。
深度神經(jīng)網(wǎng)絡(luò)的發(fā)展在機器學(xué)習(xí)領(lǐng)域取得了顯著進展,往往在訓(xùn)練過程中存在調(diào)參困難、訓(xùn)練時間長和樣本需求量大等缺點,于是越來越多的學(xué)者將目光投向集成學(xué)習(xí)算法,如隨機森 林(Random Forest,RF)[5]、XGboost(eXtreme Gradient Boosting)[6]以 及 梯 度 提 升 樹(Gradient Boosting Decision Tree,GBDT)[7]等。2017 年,唐燕[8]提出將隨機森林算法應(yīng)用于高校貧困生認定中,并驗證了其準確率高于決策樹算法。楊勝志[9]利用反映學(xué)生在校行為數(shù)據(jù),包括消費情況、表現(xiàn)情況和學(xué)習(xí)情況,通過改進后的GBDT模型實現(xiàn)貧困生的四分類,得到的準確率并不理想。2019年陸桂明[10]應(yīng)用XGBoost模型對貧困生進行分類預(yù)測,得到的準確率為53.68%,相比Logistic和SVM兩種方法取得更好的分類效果。
深度森林(DeepForest,DF)[11]是基于決策樹構(gòu)建的深度集成模型,在高光譜圖像分類[12]、信用評估[13]、交通風(fēng)險等級[14]等問題上取得了顯著的效果。本文以我校貧困生數(shù)據(jù)為例,從生源類別、固定資產(chǎn)、經(jīng)濟狀況、特殊群體、人力資源和突發(fā)狀況六個方面,提出了ADA-MDF貧困生認定模型。該模型引入ADASYN算法有效改善了數(shù)據(jù)的不平衡性,并改進了深度森林的級聯(lián)結(jié)構(gòu),實驗結(jié)果與我校目前使用的“本科生困難程度測評模型”相比,準確率提高了8.81%,能夠?qū)ω毨J定起到積極的指導(dǎo)作用。
2017年,周志華提出了多粒度級聯(lián)森林方法,構(gòu)建了深度森林模型。這是一種非神經(jīng)網(wǎng)絡(luò)類型的深度模型,這一模型表現(xiàn)出較強的表征能力,與深度神經(jīng)網(wǎng)絡(luò)模型相比,超參數(shù)更少、分類效率更高,具有更優(yōu)異的分類性能。
如圖1所示,深度森林主要由兩個部分構(gòu)成:多粒度掃描(Multi-grained Scanning)和級聯(lián)森林結(jié)構(gòu)(Cascade Forest Structure)。在多粒度掃描中,滑動窗口用于掃描原始特征,假設(shè)原始輸入特征為p,滑動窗口大小為wi,則每個窗口都會產(chǎn)生p-wi+1個特征向量。當(dāng)分類個數(shù)為n時,每個森林產(chǎn)生n(p-wi+1)個類向量,記為m。從而計算出每個樣本對應(yīng)類別的概率,將這些森林生成的概率向量拼接成新的特征向量,用作級聯(lián)森林結(jié)構(gòu)的輸入。
圖1 深度森林框架
級聯(lián)森林結(jié)構(gòu)的每層都是由兩個RF和兩個完全隨機森林(Completely Random Forest,CRF)組成。每個CRF包含m棵完全隨機樹[15],通過在每個節(jié)點上隨機分配一個用于分裂的特征,并生長一棵樹直到純?nèi)~,即每個葉節(jié)點僅包含同一類樣本;每個RF包含m棵樹,每個節(jié)點隨機選擇個候選特征(d是輸入特征的數(shù)量),然后選擇Gini值最佳的特征進行分割。每個森林通過計算相應(yīng)葉節(jié)點上不同類別的訓(xùn)練樣本的百分比來估計類的分布,并對同一森林中的所有樹求平均值,得到每個森林的一個類向量,共得到4n維的特征向量(n分類,4個森林),與原始特征向量連接,即4n+m維的特征向量,共同輸入到下一級。在最后一級,取所有向量的平均值作為最終的類向量,概率最高的類為該樣本的最終預(yù)測類別。每個森林產(chǎn)生的類向量可以通過k倍交叉驗證來生成,以降低過度擬合的風(fēng)險。如果驗證集沒有顯著的性能提升,則訓(xùn)練過程自動終止。
自適應(yīng)綜合過采樣(Adaptive Synthetic Sampling,ADASYN)[16]最大的特點是考慮了數(shù)據(jù)的分布密度,使合成的新樣本更加地貼近原始數(shù)據(jù),不會破壞原有數(shù)據(jù)集的分布空間。具體流程如下:
設(shè)訓(xùn)練數(shù)據(jù)集S={xi,yi},i=1,...,m。其中,xi是p維特征空間中一個樣本,yi∈Y ={1,-1},ms和ml分別為少數(shù)類和多數(shù)類樣本,有ms≤ml且ms+ml=m。
(1)計算不平衡度:
(2)計算需要合成樣本數(shù)量:
(3)利用歐式距離計算xi的k個最鄰近樣本,統(tǒng)計k個鄰近中屬于多數(shù)類的樣本個數(shù)Δi,計算:
(4)正則化ri,得到密度分布:
(5)對每個少數(shù)類樣本計算合成樣本的數(shù)目:
(6)利用k鄰近算法隨機選擇xi附近的一個樣本xj,生成新樣本:
重復(fù)合成,直到滿足步驟(5)需要合成的數(shù)目為止。
原始深度森林的級聯(lián)結(jié)構(gòu)由RF和CRF組成,這兩種分類器都是集成學(xué)習(xí)中Bagging思想的典型代表。誤差-分歧分解(Error-ambiguity decomposition)理論[17]指出“各學(xué)習(xí)器的準確性越高,多樣性越大,集成的效果就越好”。針對貧困生數(shù)據(jù)特征復(fù)雜多樣問題,本文對其級聯(lián)結(jié)構(gòu)的多樣性進行優(yōu)化,引入Boosting算法和機器學(xué)習(xí)中的線性分類器,增強學(xué)習(xí)器的多樣性。最終選取 RF、CRF、XGboost、Logistic和隨機梯度下降法(Stochastic Gradient Descent,SGD)五種分類器構(gòu)建全新的級聯(lián)結(jié)構(gòu),如圖2所示,其中Logistic、SGD為線性模型,有學(xué)習(xí)能力強、收斂速度快等特點;RF、CRF和XGBoost屬于非線性模型,具有很好的擬合效果。訓(xùn)練時,各分類器在特征空間上可以發(fā)揮各自優(yōu)勢以充分學(xué)習(xí)多特征的信息,對多粒度掃描階段生成的特征向量進行深度迭代,從而更加精準地預(yù)測每條訓(xùn)練集數(shù)據(jù)所屬的類別,進一步增強了模型的集成能力和泛化能力。本文是針對貧困生等級的三分類研究,每個弱學(xué)習(xí)器都會生成一個長度為3的概率向量,每一級共產(chǎn)生15個增強特征向量,再與多粒度掃描階段生成的特征向量拼接,輸入到下一級,優(yōu)化后的深度森林模型稱為MDF模型。
圖2 改進的級聯(lián)森林結(jié)構(gòu)
深度森林算法中缺少對類別不平衡數(shù)據(jù)均衡化的設(shè)計,訓(xùn)練樣本過少,會導(dǎo)致學(xué)習(xí)不充分,難以保證模型的精度,因此把ADASYN算法融入到MDF模型中,構(gòu)建ADA-MDF貧困生認定模型,通過過采樣增加少數(shù)類樣本量,有效解決不平衡數(shù)據(jù)下貧困生的認定問題。模型的具體框架如圖3所示,首先對原始數(shù)據(jù)進行預(yù)處理后,按照8∶2的比例劃分訓(xùn)練集和測試集,實驗針對訓(xùn)練集進行ADASYN過采樣,將過采樣后的數(shù)據(jù)輸入改進后的MDF模型,取5倍交叉驗證后的平均值,如果近兩層內(nèi)性能沒有增長,訓(xùn)練過程停止,保存模型;最后輸入測試集,預(yù)測貧困生等級,輸出實驗結(jié)果并計算準確率。
圖3 ADA-MDF貧困生認定模型
本文獲取到我校2017-2020年申請貧困認定的學(xué)生數(shù)據(jù),進行匯總清洗后得到3 700條數(shù)據(jù)。其中,1 196人為特別困難,1 943人為一般困難,561人為不困難,三個等級分別用“2”“1”“0”表示。這里可以看出原始數(shù)據(jù)存在一定不平衡性,不困難類別的樣本量非常小,會對準確率造成影響。
在對已有研究進行總結(jié)的基礎(chǔ)上,結(jié)合教育部最新政策要求,本文將建檔立卡等特殊困難群體因素考慮在內(nèi),從6個評價因素共25個具體屬性提出高校貧困生評價指標體系,如表1所示。
表1 貧困生評價指標體系
根據(jù)評價指標的定義,對“生源類別”“是否貸款”“擁有住房”“住房類型”“低保”“建檔立卡 ”“ 殘 疾 ”“ 單 親 ”“ 孤 兒 ”“ 外 債 金 額 ”“ 家 庭 年 總純收入”“家庭月生活費”“自己月均生活費”“父親狀況”“母親狀況”“家庭自然災(zāi)害”“家中有大病患者”“家用電器”“交通工具”“收入來源”共20個指標,按照困難程度逐漸加深的順序一一對應(yīng)轉(zhuǎn)化為數(shù)值數(shù)據(jù)0~7;剩余“就讀幼兒園人數(shù)”“初中小學(xué)人數(shù)”“高中及中專人數(shù)”“就讀大學(xué)人數(shù)”“贍養(yǎng)老人人數(shù)”5個指標為計量數(shù)據(jù),故沒有進行轉(zhuǎn)化。
完成數(shù)值轉(zhuǎn)化后,在ADA-MDF模型分析貧困生數(shù)據(jù)的過程中,對25個指標進行歸一化處理,把特征數(shù)據(jù)映射到[0,1]之間。這里采用最小-最大歸一化方法,公式如下:[18]
其中,xi代表第i個指標;minxi、maxxi分別代表xi的最小值與最大值;Xi表示轉(zhuǎn)化后的數(shù)值。對各個指標貧困數(shù)據(jù)進行歸一化處理后,每個學(xué)生簡化成一個貧困向量,25個元素分別代表相關(guān)指標的值,定義如下:
本文研究的貧困生等級認定是一個三分類的問題,給出三分類的混淆矩陣,如表2所示。通過計算精準率(P)、準確率(ACC)、召回率(R)、F1值和macro-F1值來評估模型的性能,定義1給出了以上指標的計算公式。
表2 貧困生等級混淆矩陣
定義1:根據(jù)二分類中模型評價指標的含義,給出本文中三分類模型使用的評價指標如下:
實驗以8∶2的比例將數(shù)據(jù)集劃分為訓(xùn)練集和測試集,在訓(xùn)練集上進行ADASYN過采樣后得到各類別的樣本量,如表3所示。
表3 訓(xùn)練集中各類別的樣本量(單位/個)
對采樣后的訓(xùn)練集運用5倍交叉驗證,將訓(xùn)練集劃分成五個不相交的子集,其中四個子集用來訓(xùn)練,另一個子集用作驗證,這個過程重復(fù)五次,則每個子集都被精確地用作驗證集,對每個驗證集的準確率計算平均值。實驗得到ADA-MDF模型最好的層索引為第2層,此時得到的實驗結(jié)果如表4所示。
表4 ADA-MDF模型的實驗結(jié)果(單位/%)
ADA-MDF模型預(yù)測的特別困難、一般困難和不困難的精準率分別為94%、94%和89%。其中,不困難類別的精準率最低,由于該類別樣本數(shù)量特別少,造成嚴重的數(shù)據(jù)不平衡,即使通過ADASYN采樣方法進行補救,但是依然無法達到與其他兩類相同的效果。此外,召回率和F1值也有同樣的表現(xiàn)。相比較之下,特別困難和一般困難的精準率、召回率及F1值均能達到90%以上,特別困難的召回率最高,故該模型在貧困生分類方面具有一定的有效性,預(yù)測結(jié)果可以為貧困生認定工作提供可信的依據(jù)。
圖4為ADA-MDF模型三分類的ROC曲線圖,其中橫軸為“假正率”(False Positive Rate,簡稱 FPR),縱軸表示“真正率”(True Positive Rate,簡稱TPR),見定義2。當(dāng)i=1時,TPR1表示實際等級為“一般困難”的樣本中被預(yù)測為“一般困難”的占比,TPR越大越好;FPR1表示實際等級為“特別困難”和“不困難”的樣本中被預(yù)測成“一般困難”的占比,F(xiàn)PR越小越好。由圖可以看出特別困難的曲線面積最大,為98%,一般困難、不困難的曲線面積分別為96%、97%,說明模型的準確度較高,達到較好的分類效果。
圖4 ADA-MDF模型的ROC曲線圖
定義2:根據(jù)二分類中ROC曲線圖的TPR和FPR值,給出本文三分類的TPR和FPR值如下:
為了進一步研究ADA-MDF模型的性能,分別與圖5中顯示的其他基于樹的模型進行對比,包括 DF、RF、LGB、XGBoost、GBDT 五種分類方法,由于每次實驗都是對原始數(shù)據(jù)隨機劃分訓(xùn)練集和測試集,一次實驗并不具備說服力,為了產(chǎn)生公平的比較,每種方法均采用默認的參數(shù),分別進行了10次實驗,圖5(a)記錄了十次實驗的準確率,可以看出,ADA-MDF基本保持在中上游,且準確率最高達到93.38%,其中ADA-MDF、LGB和GBDT三種模型的極差最小為0.54%,說明這三個模型的穩(wěn)定性較好。
圖5 不同分類方法的實驗結(jié)果
圖5(b)為10次實驗的平均準確率,本文提出的ADA-MDF模型平均準確率最高,達到了93.11%,優(yōu)于其他模型,與平均準確率第二高的DF相比,準確率增長了0.11%,說明改進級聯(lián)結(jié)構(gòu)的深度森林有助于提高分類準確率且穩(wěn)定性更強。從誤差棒的長短可見,ADA-MDF的誤差略大于GBDT模型,但是比其余4個模型小的多,雖然GBDT模型在穩(wěn)定性和誤差方面具有一定優(yōu)勢,但是其準確率遠遠沒有達到預(yù)期效果,綜上,ADA-MDF模型的綜合性能更為優(yōu)越。
根據(jù)貧困生認定工作流程,我校目前使用“本科生困難程度測評模型”的測評結(jié)果作為最終認定結(jié)果的參考依據(jù),而實際認定過程中會存在等級調(diào)整的情況,經(jīng)計算,測評結(jié)果的準確率為84.30%。本文將ADASYN自適應(yīng)過采樣方法引入到深度森林算法,提高了模型在不平衡數(shù)據(jù)中的分類效果;創(chuàng)建了一個新的級聯(lián)結(jié)構(gòu),由 RF、CRF、XGboost、SGD、Logistic五種基分類器組成,對特征進行深度學(xué)習(xí),實現(xiàn)貧困生的三分類,平均準確率達到93.11%。故本文提出的ADA-MDF模型有助于貧困生等級精準分類,下一步可研究如何進行特征選擇,構(gòu)建更適用于我校學(xué)生的評價指標體系,不斷提高貧困生認定模型的準確率及普適性,貫徹落實精準資助。