金城,崔榮一,趙亞慧
(延邊大學 工學院, 吉林 延吉 133002 )
近年來,一些研究者針對學生的高考成績與學生進入大學后的學習成績(尤其是學生入學第一學期的學習成績)之間的關系進行了研究.例如:陳小杭[1]對學生高考的數(shù)學成績與學生入學后的大學數(shù)學專業(yè)課成績進行了相關性分析,結果表明學生的高考數(shù)學成績與學生入學后的大學數(shù)學專業(yè)課成績無顯著相關性.石鐵玉等[2]研究表明,學生的高考成績與學生入學后的考試成績呈弱相關性.杜曉燕等[3]對學生的高考成績和大一單科成績的關聯(lián)性進行研究表明,文科類課程的成績與高考成績的關聯(lián)性較大,而理科類的課程的成績與高考成績的關聯(lián)性較弱.上述文獻的研究方法主要是基于統(tǒng)計的相關性分析方法進行的,但該方法對于沒有明顯統(tǒng)計學規(guī)律的多元復雜數(shù)據(jù)其效果并不理想.文獻[4]研究表明,隨機森林算法在處理數(shù)據(jù)復雜、維度較高的分類任務時可獲得較高的準確度.因此,本文采用基于隨機森林算法研究學生的高考信息與大學一年級的程序設計課程成績之間的相關性,以為教師在程序設計課程教學中設計出更有針對性和有效的模式提供參考.
機器學習方法可以從一類數(shù)據(jù)中自動學習規(guī)律,特別是對特征種類多、特征數(shù)目龐大的復雜數(shù)據(jù)進行預測時,其效果顯著優(yōu)于基于統(tǒng)計的方法,因此該方法被廣泛地應用于回歸、擬合和大數(shù)據(jù)分析等方面.目前,常使用的機器學習方法包括監(jiān)督學習、無監(jiān)督學習和強化學習[5].其中:監(jiān)督學習方法可以從大量沒有顯著統(tǒng)計規(guī)律的數(shù)據(jù)中學習到有效的模型,因此常用于解決回歸、分類的問題;無監(jiān)督學習可以在較為規(guī)律的統(tǒng)計數(shù)據(jù)中發(fā)現(xiàn)潛在的結構,因此常被用于聚類和降維;強化學習則可在基于環(huán)境的動態(tài)互動中取得最大化的預期利益,因此常被用于控制系統(tǒng)的設計中.
決策樹是一種被廣泛應用于金融、保險、醫(yī)療等領域的樹狀分類器,但決策樹算法在數(shù)據(jù)復雜時準確率較低.為此,L.Breiman結合Bagging集成思想[6]與隨機子空間方法[7]提出了隨機森林算法[8],該算法具有解釋性好、結構簡單、計算開銷小等優(yōu)點[9].隨機森林算法的具體步驟如下:
輸入: 樣本集D={(x1,y1),(x2,y2),…,(xm,ym)}, 決策樹迭代次數(shù)T
輸出: 隨機森林f(x)
1) fort=1 toT:
a)對訓練集進行第t次隨機采樣,共采集m次,由此得到包含m個樣本的采樣集Dt.
b)用采樣集Dt訓練第t個決策樹模型Gt(x). 訓練決策樹模型的節(jié)點時,首先在所有樣本特征中隨機選擇一部分樣本特征,然后在選出的樣本特征中選取一個最優(yōu)的特征來劃分決策樹的左右子樹.
2)在形成的T個決策樹中,利用投票表決結果.當結果只有一個類時,將票數(shù)最多的類別作為最終類別;當結果包含多個類時,將目標類別作為最終類別.
本研究以大學一年級的C語言程序設計課程為例,收集的數(shù)據(jù)為2014—2016年延邊大學計算機科學與技術專業(yè)3個年級的學生個人信息.信息包括:高考成績、學生生源、民族、考生類別和入學第1年的C語言期末考試成績.3個年級的學生人數(shù)分別為115人、157人和145人.
3個年級學生的高考特征屬性及其分布如表1所示.由表1可知:在性別方面,男生略高于女生;在民族結構方面,考生以朝鮮族和漢族學生為主,其中朝鮮族學生占總考生的34.2%;在考生類別方面,城市考生占總考生的58.7%;在生源方面,考生主要來自吉林省,占總考生的49.9%.
表1 考生特征屬性分布
由于本數(shù)據(jù)集中的學生主要為漢族與朝鮮族的考生(占總人數(shù)的91.7%),且朝鮮族和非朝鮮族考生的錄取政策不同(非朝鮮族的其他少數(shù)民族和漢族采用同一錄取標準),因此本文將民族特征分為朝鮮族和非朝鮮族進行分析.同時去除不使用全國I卷和全國II卷省份的學生信息.將考生進入大學后的C語言成績按分數(shù)段分為5類: 100~90(第1類), 89~80(第2類), 79~70(第3類), 69~60(第4類), 59~0(第5類).各年級C語言成績的分布情況如圖1所示.
構建C語言成績預測模型的方法如下:
1)將處理后的數(shù)據(jù)按9∶1分為訓練集和測試集;
2)利用各年級的訓練集數(shù)據(jù)訓練隨機森林模型,并通過調整隨機森林的參數(shù)得到最優(yōu)的預測模型;
3)利用Bootstrap方法從訓練集中隨機抽取多個訓練樣本子集,并對每個子集分別進行隨機森林建模;
4)利用測試集對各隨機森林進行測試,并綜合多棵隨機森林的測試結果以通過投票的方式得出最終的C語言課程成績預測模型;
5)使用可解釋性模型LIME(local interpretable model-agnostic explanations)計算對隨機森林模型貢獻度最大的特征.
上述步驟中利用LIME計算調整貢獻度的方法為:①在原始樣本中隨機替換掉若干特征,以此得到含有噪聲的數(shù)據(jù)z′.②計算隨機森林模型對z′預測的值.③求出原樣本與生成樣本之間的距離,并將其作為權重.④利用生成樣本、預測值和權重訓練一個簡單的線性模型g.⑤按式(1)計算模型g擬合樣本的結果與隨機森林模型預測樣本的結果之間的差值,然后根據(jù)差值對隨機森林模型進行解釋(差值越小貢獻度越大).
(1)
其中,f為原模型,w為權重,z為原樣本,z′為加入噪聲后的樣本.基于隨機森林算法構建C語言成績預測模型的流程如圖2所示.
利用隨機森林算法對數(shù)據(jù)進行訓練,結果如表2所示.
表2 訓練集和測試集的準確度
為獲得最佳的分類效果,本文利用實驗對模型的參數(shù)進行了選定,結果如表3所示.
利用LIME模型計算每個特征對隨機森林模型的貢獻度,結果如表4所示.
根據(jù)表4中的貢獻度結果,本文將各年級中排序為前2名的特征作為最大的相關性特征.這些特征包括生源、民族、總成績、數(shù)學和語文5個特征.在所有特征中任取5種特征,并按不重復原則組合方案進行排列組合,共得到126種組合方式.為驗證本文選擇的特征方案為最佳方案,對126種不同的特征組合使用隨機森林進行了訓練和測試,其中部分特征組合方案測試集的平均準確率的結果如圖3所示.
表3 最優(yōu)模型參數(shù)
表4 各特征對模型的貢獻度
由圖3可知,在所有的特征組合方案中,本文提出的特征選擇方案的準確率最高(68%),故本文提出的特征組合方案為最優(yōu)組合方案.在本文提出的特征組合方案中, 5種特征與C語言成績相關度最大的原因是:
1)學生的學習能力與地區(qū)的經(jīng)濟和教育發(fā)展水平存在一定相關性,因此來自不同地區(qū)的學生其學習能力存在一定的差異.
2)高考總成績是反映一個學生學習能力的重要指標,因此C語言成績與高考總成績呈一定的相關性.
3)因朝鮮族考生的錄取分數(shù)普遍低于漢族考生,且入學初期存在一定的漢語表達障礙[10](因朝鮮族考生在高考前主要接受的是朝鮮語教學),因此朝鮮族學生在大一初期的學習成績普遍偏低.
4)學好計算機程序設計課程需要學生具有較好的邏輯思維能力,而數(shù)學成績在一定程度上能體現(xiàn)一個學生的邏輯思維能力,因此其與C語言成績具有較大的相關性.
5)語文成績能夠體現(xiàn)學生的表達能力和理解能力,其對學習和理解知識至關重要,因此語文成績和C語言成績也具有較大的相關性.
為進一步說明基于隨機森林分析方法的有效性,本文基于相同的數(shù)據(jù)集,計算了2014—2016年級的不同特征與C語言成績間的Pearson相關系數(shù)、Spearman相關系數(shù)、Kendall相關系數(shù),結果(平均值)如表5所示.由表5可知,不同的特征和C語言成績之間的相關系數(shù)均較低(低于0.36),表明其相關性較弱.
利用隨機森林模型對各相關系數(shù)排名前5的特征進行訓練,得到的模型準確率如圖4所示.由圖4可以看出,采用本文提出的隨機森林分析法得出的模型準確率均高于采用3個相關系數(shù)分析法所得的準確率,因此表明采用本文提出的基于隨機森林的方法分析高考信息和C語言成績之間的相關性更為準確.
表5 不同特征與C語言成績間的相關系數(shù)
本文利用基于隨機森林算法的預測和分析方法對C語言成績的影響因素進行了分析,結果表明生源、總成績、民族、數(shù)學、語文5種特征與C語言成績的相關性最高.本文的研究結果有助于教師根據(jù)新生的實際情況設計出具有針對性的教學模式,以提高程序設計課程的教學質量.本文在研究中所使用的數(shù)據(jù)量相對較少,因此在今后的研究中我們將進一步增加實驗數(shù)據(jù)量以提高模型的擬合能力,使實驗結果更具有普適性.