唐成龍,唐露新,楊旺功,孫道宗,薛秀云
(1. 廣州理工學院招生就業處,廣東廣州510540; 2. 廣東工業大學 機電工程學院,廣東廣州510006;3. 北京林業大學信息學院,北京100083; 4. 華南農業大學電子工程學院,廣東廣州510642)
招生工作的自動化與智能化是當前高等學校(簡稱高校)招生的研究熱點。結合當前高校培養人才的多重因素[1],不僅更容易通過大數據分析來獲得更優的招生信息,而且通過分析歷年的招生數據,結合學校人才培養模式,發揮學校專業優勢及就業形勢,更有利于高校吸引考生報考。招生數據挖掘應用廣泛[2],根據錄取情況,結合學生考試分數、地域、所選專業及性別信息,對上述數據進行有效挖掘,對學校招生計劃的制定及教學資源的配置具有指導作用。根據專業發展的需求及人才培養的歷史經驗數據,不同專業在錄取過程中對學生進行差異化招生,是數據挖掘技術為高校人才招生提供的新的研究方向。特別是在自主招生中,根據學生個人能力、競賽獲獎及社會實踐等情況,結合專業發展特點,能夠更加精準地進行招生。
近年來,通過數據挖掘及大數據分析方法進行高校招生的研究成為熱點,取得了一些成果。FP-growth算法作為數據挖掘常用的關聯分析方法之一,在多個領域得到了廣泛應用。文獻[3]中針對云計算環境下的需求,提出一種改進的FP-growth算法,實現了算法的并行化,并與分布式計算框架的MapReduce模式進行有機結合。文獻[4]中分析了大數據時代教育數據挖掘的新形勢與傳統分析模式之間的差異,指出數據挖掘技術在教育行業,特別是招生數據分析方面,具有較大的應用潛力。在國內教育領域,已有不少研究者提出使用數據挖掘算法對教育教學領域的數據進行挖掘分析。文獻[5]中運用FP-growth算法對收集的貧困生數據進行數據挖掘,提高了貧困生認定工作的效率。在學校招生方面,文獻[6]中提出了一種混合型貝葉斯決策樹挖掘方法并應用到高職院校招生數據挖掘中,對新生報到情況進行分析與預測。目前,FP-growth算法在招生領域的應用還未見相關研究。由于高校招生數據挖掘需要結合學生層面變量與學校層面變量,分析這些變量對招生結果的影響較為困難,特別是分析這些變量與招生結果的定量關系,因此依靠單一算法很難完成。
本文中將FP-growth算法與分層線性模型相結合運用于招生數據挖掘。由于在招生數據挖掘中有2個最重要的因素,即在考生層面是招生錄取期望值(錄取成績),在學校層面是報到率,因此,首先使用FP-growth算法對報到率進行分析,根據學生數據及報到情況得到相關招生的決策支持;然后,結合學校學科及專業發展,將學校層面與考生層面相結合,充分分析學校層面變量與學生層面變量的交互影響,從而建立分層線性模型對招生期望值進行分析。
FP-growth算法頻繁集的生成主要通過掃描數據庫完成[6]。以圖1為例對頻繁集生成過程進行說明。首先,設數據庫中有12組數據集合,每組集合包含英文26個小寫字母中的若干字母,將這12組原始集合稱為原始集,將原始集中的每個字母進行數量統計,得到字母候選頻繁集,設最小支持度為2,因此可以得到字母頻繁集。

圖1 FP-growth算法數據頻繁集生成
FP-growth算法構造流程[7]如下:首先對數據進行統計,獲得每個字母在所有元組的事務標識符(transaction identifier,TID)的統計數。然后建立二維表,從第1個TID開始,對每個字母進行計數,并將計數結果存至哈希表中,接著進行第2個TID統計,若第2個TID的字母已經在哈希表中有記錄,則直接將記錄中該字母的計數結果進行更新,若第2個TID的字母在當前哈希表中無記錄,則將該字母添加至哈希表的末尾,并將計數結果存至哈希表中。依據此操作,遍歷所有TID。
根據支持度要求,刪除小于設定的支持度的字母及所對應的計數結果,并更新哈希表,同時根據計數結果從多至少的順序對哈希表的行進行重新排列,生成新的哈希表,即FP-table,這樣就可以通過序號及字母檢索查詢到各字母所對應的計數結果。
FP-growth算法在對頻繁模式樹(FP-tree)實現第1次遍歷后,對原始集合的所有項進行計數,根據計數結果與設置的最小支持度,對原始集合進行整理,就可以得到去掉了非頻繁集合的數據集合。表1所示為以8棵FP-tree為例描述FP-growth算法的關聯挖掘過程。

表1 FP-growth算法的關聯挖掘過程
由表可以看出,在對8棵FP-tree進行第1次遍歷時,對集合中較多的項進行計數統計,其中集合I9、I10的支持度均為1,集合I7、I8的支持度為2,小于設定的最小支持度3,因此經過FP-growth算法整理后的集合刪除這4項,對FP-tree進行更新,并且根據支持度大小進行遞減排序。第1次遍歷后得到的項頭表如表2所示。

表2 頻繁模式樹(FP-tree)算法項頭表
再次掃描數據庫,對頻繁集進行統計,例如掃描到T2時,〈I2、I1〉、〈I2、I6〉、〈I2、I8〉、〈I1、I6〉、〈I1、I8〉、〈I6、I8〉的各項計數加1。根據遍歷結果,可以得到計數矩陣[8-9]。根據計數矩陣,可以得到每個項的頻繁集及多對應支持度值,根據頻繁集及支持度得到關聯規則挖掘結果。
分層模型的單層基礎模型只考慮單因素對模型目標值的影響[10],設Yij為第j個學校對第i個考生的錄取期望值,β0j為第j個(j代表的是同一個挖掘值)學校中所有報考該校考生的平均錄取期望值,rij為第j個學校的第i個考生的錄取差異,服從正態分布N(0,δ2),方差var(rij)=δ2,那么單層基礎模型的計算方法[11]為
Yij=β0j+rij,
(1)
β0j=γ00+u0j,
(2)
式中:γ00為所有同類學校中所有報考該類校考生的平均錄取期望值;u0j為第j個學校在學校層的差異。
var(β0j)=var(u0j)=τ00,
(3)
var(Yij)=var(rij+u0j)=δ2+τ00,
(4)
式中τ00為平均錄取期望值之間的差值。
求解組內相關系數(ICC)ρ的公式[12]為
(5)
為了進一步挖掘高校招生數據,充分考慮學生能力及學校因素,分別從學生層和學校層建立分層線性模型。
本文中以高校理工科專業招生為例,對理工科專業的定義學生綜合能力指標,如表3所示。

表3 高等學校理工科學生綜合能力指標
以學生綜合能力指標N1、N2、N3和N4作為第1層變量。在單層基礎模型增加一層,以便更好地反映學校層面因素對招生錄取帶來的影響。學校層面變量如表4所示。以學校層面變量m1、m2、m3、m4和m5作為第2層變量,建立以錄取率為因變量的多層線性模型(HLM)。

表4 學校層面變量
參照式(1),HLM計算方法[13-14]為
(6)
β0j=γ00+γ01(m1)+γ02(m2)+γ03(m3)+
γ04(m4)+γ05(m5) ,
(7)
β1j=γ10+γ11(m1)+γ12(m2)+γ13(m3)+
γ14(m4)+γ15(m5) ,
(8)

為了驗證FP-growth算法與分層線性模型對招生數據挖掘的性能,首先在MATLAB平臺采用FP-growth算法對某高校2018年度的招生數據進行仿真,分析該校2018年度學生的報到率; 然后運用HLM對不同高校2018年度的8 671個數據進行建模分析。
選取某高校2018年度招生數據集作為仿真對象,其中數據集數據個數為3 886,訓練集數據個數為586,測試集數據個數為3 300。
考慮考生成績S、專業M、生源地D等對報到情況的影響,將考生正常報到設為T,未報到設為F。根據FP-growth算法得到頻繁集,計算頻繁集的支持度,由于篇幅所限,因此表5中只列出部分頻繁集的支持度。
通過統計可知該校的報到率均維持在80%以上,因此將最小置信度設為80%,由此篩選出符合最小置信度的數據挖掘關聯規則如表6所示。從表中數據可以看出,該校計算機專業的報到率超過了90%,表明該專業在該校的招生方面優勢明顯。從該校官網上可以看到,該校的計算機專業是國家重點學科,師資隊伍和教學資源都是實力最強的,因此深受考生青睞。該校在華南、華中和華北地區的招生情況較好,報到率均超過了85%,而東北、東南、西南和西北地區的考生報到率略差。在報到率大于80%的14條關聯規則記錄中,專業主要集中在建筑、工程管理、計算機、通信工程等,這與該校是以理工科為主的背景一致。

表5 頻繁集支持度

表6 關聯規則表
將考生成績、所選專業、生源地等變量和學生報到率采用FP-growth算法進行置信分析,可以根據學生數據及報到情況得到相關招生的決策支持。如果從學校學科及專業發展考慮,可以將學校層面與考生層面相結合,充分考慮到學校層面變量與學生層面變量的交互影響,建立分層線性模型。
選取8 671個樣本作為仿真對象,其中231個未錄取樣本,8 440個錄取樣本,然后進行樣本初始化,數據集如表7所示。

表7 數據樣本集分布
采用HLM7.0軟件建立模型,輸入8 671個數據樣本,計算模型的顯著性水平p值及系數[15],p值小于0.05時模型才顯著。
3.2.1 學生層面變量分析
首先對影響招生錄取的4個學生層面變量進行HLM分析,統計結果如表8所示。從表中數據可以看出,學生考試成績、獲獎情況、科技創新及社會實踐均正向影響考生的招生錄取,即當N1、N2、N3和N4數值越大,該考生越容易被錄取,而且N1的系數最大,表明在錄取的學生中,學生的考試成績仍占據最重要的地位。從p值來看,與學生考試成績和競賽獲獎相比,科技創新和社會實踐對學生的錄取影響較小,這也符合我國的招生實際情況,考試分數高且奧林匹克競賽等獲獎的學生更受學校青睞。相比之下,科技創新與社會實踐影響較小,與學校招生的側重點有關,同時也與學生在這2個方面的關注度及取得的成果數量有關。從標準差來看,在錄取過程中,學生的社會實踐成績差距并不大,考試成績分布更分散。

表8 分層線性模型的學生層面變量分析
3.2.2 學校層面變量分析
對影響招生錄取的5個學校變量進行HLM分析,統計結果如表9所示。

表9 分層線性模型的學校層面變量分析
從表中數據可以看出,m1、m2、m3和m4的系數均為正,m5的系數為負,表明學校排名、學校規模、專業排名和專業就業率對招生錄取有正向影響,其中學校規模對錄取的影響最大,系數達到了1.083 524,專業就業率次之,這可能是因為規模大的學校在專業設置及招生規模方面具有優勢,所以錄取率高、就業率好的專業,可能報考考生多,錄取率也較高。相比之下,學校排名和專業排名對錄取率影響并不大。學校地理位置對高校招生呈現負影響,系數為-0.734 293。當學校地理位置量化數值越大,錄取率越不理想,表明學生在擇校時更傾向于大城市。
從顯著性來看,學校規模、專業就業率和學校地理位置對招生錄取的影響更加顯著,特別是學校規模和地理位置,p值均小于0.018。學校排名對招生錄取的影響敏感度最低。
本文中將FP-growth算法與分層線性模型運用于高校招生數據挖掘,結果表明:FP-growth算法能夠較好地獲得大置信區間的報到率數據,得到影響報到率的相關因素;采用分層線性模型,可以從學生層面和學校層面進行因素定量分析,獲得影響招生錄取的顯著程度。后續研究將對分層線性模型的招生數據挖掘效果進行有效評價,通過科學評價方法不斷完善數據挖掘模型,不斷提高招生數據挖掘的有效性和準確性。