武劍平
廣東建設職業(yè)技術(shù)學院,廣東廣州 510470
基于BP人工神經(jīng)網(wǎng)絡的學生高考成績預測
武劍平
廣東建設職業(yè)技術(shù)學院,廣東廣州 510470
本文通過研究某高中某些成績中等及以下的取得過進步的學生高三該年全年月考的成績,以matlab的BP人工神經(jīng)網(wǎng)絡作為輔助工具對他們的高考成績進行有效地預測。從方法上而言,本次預測試驗可結(jié)合統(tǒng)計規(guī)律和學生平時的實際情況有效對高考生在選報志愿時進行合理規(guī)劃。這有利于高中生自身的發(fā)展和我國教育資源的合理分配。
matlab;BP人工神經(jīng)網(wǎng)絡;高考成績;預測
人工神經(jīng)網(wǎng)絡(ANN)是基于對人大腦的組織結(jié)構(gòu),活動原理研究的前提下提出的一種新型的信息分類和處理技術(shù)。近年來,由于計算機科學的發(fā)展,大量的統(tǒng)計學規(guī)律逐步通過計算機的計算得以揭示。然而人工神經(jīng)網(wǎng)絡正適合解決現(xiàn)實中和工程中高度非線性的,無法尋找到合適的解析模型的問題。因此,人工神經(jīng)網(wǎng)絡目前被用于諸如股票證劵行業(yè)預測,工程界的非線性問題[1],人口統(tǒng)計學等領(lǐng)域[3]。
含有隱層的多層前饋網(wǎng)絡能大大地提高問題的分類能力,但是并沒有很好解決權(quán)值調(diào)整問題?;诖?,BP算法基本思想是學習過程由信號的正向傳播和誤差的反向傳播兩個過程組成。
本例利用以下為基于BP算法的3層(輸入層,隱層,輸出層)前饋網(wǎng)絡的模型:
1)輸入層輸入向量為:
X={x1,,x2,……,xn}T;
加入x0=-1為隱層神經(jīng)元的閾值;
2)隱層輸出向量為:
Y={y1,,y2,……,yn}T;
加入y0=-1為輸出神經(jīng)元的閾值;
對隱層輸出函數(shù):
Yi=f(netj);
隱層的m權(quán)
值調(diào)整:
3)輸出層向量為:
O={o1,,o2,……,on}T;
對輸出層:
Ok=f(netj)
輸出層的權(quán)值調(diào)整:
輸出層結(jié)果可以和期望向量:
d={d1,,d2,……,dn}T
4)其中轉(zhuǎn)移函數(shù)f(x)可以取如單極性的Sigmoid函數(shù):
諸如此類函數(shù)具有連續(xù)可導的特點。
本例中隱含層選用matlab自帶的傳遞函數(shù),其中隱含層選擇tansig雙曲正切傳遞函數(shù);輸出層選擇線性的purelin輸出函數(shù);最后誤差反傳選擇traingdm函數(shù),進行比較測算網(wǎng)絡的預測準確度。
本次研究的人工神經(jīng)網(wǎng)絡分為三層:輸入、隱含和輸出層。其中隱含曾數(shù)目和隱含層中神經(jīng)元個數(shù)的確定是構(gòu)建BP人工神經(jīng)網(wǎng)絡的關(guān)鍵。
本文選用單隱層的BP人工神經(jīng)網(wǎng)絡,隱層中神經(jīng)元個數(shù)通過試探法確定。
根據(jù)當今人工神經(jīng)網(wǎng)絡在統(tǒng)計學上常用的經(jīng)驗公式:h=(mn)1/2+a[6]
其中h—隱層數(shù);
m—輸入層單元;
n—輸出層單元;
a—取2-10。
確定隱層h=4-14,隨后進行誤差比較。本文中選取訓練迭代步上限=10000;迭代停止誤差=1e-3。
經(jīng)過下面章節(jié)的實例訓練發(fā)現(xiàn)只有h=9,10時滿足迭代上限和停止誤差要求,遂比較兩者誤差。
h 輸出平均相對誤差(%)10 2.69 9 3.34
根據(jù)matlab針對該組數(shù)據(jù)的測試結(jié)果,選用h=10的隱含層進行仿真更能夠接近真實結(jié)果。
本次試驗采集的數(shù)據(jù)為2014年廣東省某中學高三年級某班成績中等以及偏下的同學。他們在同一個班里接受的教育氛圍相同,具有可比性。根據(jù)該班級的實際情況得知,以下17名學生在9次月考中每三次考試都得到老師的相關(guān)心理輔導和鼓勵并取得一定進步。
Matlab軟件中已經(jīng)集成了人工神經(jīng)網(wǎng)絡工具箱,本例在軟件現(xiàn)有工具箱基礎上應用GUI操作界面構(gòu)建BP人工神經(jīng)網(wǎng)絡。在構(gòu)建BP網(wǎng)絡之前需要對數(shù)據(jù)進行歸一化處理方能方便代入BP網(wǎng)絡中的傳遞函數(shù)。歸一化處理采用如下公式:
同樣,數(shù)據(jù)進行訓練仿真后需要將輸出結(jié)果反歸一化:
因本次實例的數(shù)據(jù)有17組,為提高工作和編程在對BP網(wǎng)絡訓練前先采用Microsoft? Excel數(shù)據(jù)表格處理軟件進行歸一化后列表(表2)。
下表列出該班里所需要統(tǒng)計的17名同學9次月考的成績和最后高考成績。
表1 廣東省某中學某班月考和高考成績統(tǒng)計
通過歸一化處理后以上數(shù)據(jù)變?yōu)椋?/p>
表2 廣東某中學某班物理月考和高考成績統(tǒng)計歸一化數(shù)據(jù)
基于以上表格的17組數(shù)據(jù),本次試驗選擇表格中從上往下1-15組為人工神經(jīng)網(wǎng)絡的訓練數(shù)據(jù),第16-17組為測試數(shù)據(jù)。
本次matlab所構(gòu)建的BP人工神經(jīng)網(wǎng)絡訓練達到1e-3的精度后停止。
圖1表明精度達到0.00032741后運算結(jié)束,在指定周期內(nèi)未達到1e-4的精度但是對于此問題已經(jīng)足夠精確。同時由于前面用的歸一化公式是完全線性的公式,無需把得到的結(jié)果反歸一化,只需直接討論相對誤差。
3.1 第一組測試數(shù)據(jù)(對應表格第16組)誤差討論
通過人工神經(jīng)網(wǎng)絡仿真的結(jié)果(Matlab軟件中設為A矩陣)可得:A =0.7869。
而實際情況中該考生的標準值是0.8095,相對誤差是:2.79%。
圖1 誤差收斂情況
3.2 第二組測試數(shù)據(jù)(對應表格第17組)誤差討論
通過人工神經(jīng)網(wǎng)絡仿真的結(jié)果(Matlab軟件中設為B矩陣)可得:B=0.8375。
而實際情況中該考生的標準值是0.8333,相對誤差是:0.50%。
根據(jù)人工神經(jīng)網(wǎng)絡的matlab模擬計算結(jié)果顯示本次試驗的取樣模擬和仿真能較好地和實際中該年級的學生群高考成績相當吻合:
第16組測試數(shù)據(jù)反歸一化后得到的分數(shù)是:65.05分,而該學生實際成績是65分。
第17組測試數(shù)據(jù)反歸一化后得到的分數(shù)是:67.18分,而該學生實際成績是67。
這說明所選取的成績樣本合理而且該人工神經(jīng)網(wǎng)絡達到預期目的。
3.3 總結(jié)
本文通過此例說明,在實際某些問題中沒有一個標準的函數(shù)模型或者函數(shù)解析模型是高度非線性的,那么可以利用人工神經(jīng)網(wǎng)絡來預測出近似值。當然,本例中由于高三學生一年中9次月考成績和高考成績呈現(xiàn)的相關(guān)性并非明顯(還和考生心理素質(zhì),學習掌握程度,考試的難易程度等等有關(guān)),為了提高模型準確度,可以將實際情況充分分類后考慮增加和高考成績的相關(guān)因素個數(shù)來實現(xiàn)更精確的預測。
[1]湯愛濤,胡紅軍.計算機在材料工程中的應用[M].重慶大學出版社,2008.
[2]王洪元,史國棟.人工神經(jīng)網(wǎng)絡技術(shù)及其應用[M].中國石化社,2002.
[3]韓力群.人工神經(jīng)網(wǎng)絡理論設計及應用[M].北京:化學工業(yè)出版社,2002.
[4]張成林.俱樂部管理決策中使用人工神經(jīng)網(wǎng)絡專家系統(tǒng)的可行性研究[J].山西體育科技,2000(3).
[5]高曉冬,朱波.基于BP人工神經(jīng)網(wǎng)絡的碳纖維性能預測系統(tǒng)設計[J].工業(yè)加熱,2012(2).
[6]李承康.基于BP人工神經(jīng)網(wǎng)絡的平面區(qū)域劃分[J].金融科技時代,2012(3).
[7]孫陽春,范智勇.基于人工神經(jīng)網(wǎng)絡的地區(qū)高等教育水平評價[J].寧波大學學報(教育科學版),2012(3).
TP3
A
1674-6708(2015)149-0164-02