韋艷玲
摘要:采用遺傳神經(jīng)網(wǎng)絡(luò),對(duì)高校計(jì)算機(jī)等級(jí)考試進(jìn)行過(guò)級(jí)預(yù)測(cè)。該算法采用三層BP 神經(jīng)網(wǎng)絡(luò), 加入遺傳算法對(duì)網(wǎng)絡(luò)輸入進(jìn)行了優(yōu)化,能夠預(yù)測(cè)學(xué)生的過(guò)級(jí)情況。教師可針對(duì)可能不通過(guò)的學(xué)生進(jìn)行強(qiáng)化訓(xùn)練,為學(xué)生順利過(guò)級(jí)及教師教學(xué)提供一定的的幫助。
關(guān)鍵詞: 遺傳神經(jīng)網(wǎng)絡(luò);高校計(jì)算機(jī)等級(jí)考試;預(yù)測(cè)
中圖分類(lèi)號(hào):TP311.13文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2012)30-7329-03
許多大專(zhuān)院校都規(guī)定:學(xué)生必須要取得全國(guó)高等學(xué)校計(jì)算機(jī)等級(jí)考試合格證。許多高校很重視該種考試的“過(guò)級(jí)率”,廣西高校計(jì)算機(jī)等級(jí)考試聯(lián)考還就考試的“過(guò)級(jí)率”分別對(duì)本科和專(zhuān)科進(jìn)行排名,作為衡量各校計(jì)算機(jī)基礎(chǔ)教學(xué)成績(jī)的重要標(biāo)準(zhǔn)。所以,有必要對(duì)高校計(jì)算機(jī)等級(jí)考試的過(guò)級(jí)情況進(jìn)行研究和分析,對(duì)該種考試過(guò)級(jí)情況進(jìn)行預(yù)測(cè),對(duì)可能不過(guò)關(guān)的學(xué)生進(jìn)行強(qiáng)化訓(xùn)練。
影響學(xué)生高校計(jì)算機(jī)等級(jí)考試是否過(guò)級(jí)的因素多而復(fù)雜。BP神經(jīng)網(wǎng)絡(luò)通過(guò)合理的樣本訓(xùn)練、學(xué)習(xí)專(zhuān)家的經(jīng)驗(yàn)、模擬專(zhuān)家的行為,具有并行處理自組織、自適應(yīng)、自學(xué)習(xí)能力以及較高的容錯(cuò)性等優(yōu)點(diǎn),遺傳算法可以優(yōu)化神經(jīng)網(wǎng)絡(luò),提高神經(jīng)網(wǎng)絡(luò)的泛化能力,提高預(yù)測(cè)精度。遺傳算法與神經(jīng)網(wǎng)絡(luò)的結(jié)合彌補(bǔ)了BP網(wǎng)絡(luò)學(xué)習(xí)過(guò)程收斂速度慢,可能陷入局部級(jí)小的不足。能較好的處理像過(guò)級(jí)預(yù)測(cè)這樣多因素、非確定性、非線性問(wèn)題。
該文結(jié)合遺傳算法的神經(jīng)網(wǎng)絡(luò)技術(shù)對(duì)高校計(jì)算機(jī)等級(jí)考試預(yù)測(cè)的相關(guān)數(shù)據(jù)進(jìn)行挖掘,神經(jīng)網(wǎng)絡(luò)的初始權(quán)值先用遺傳算法處理,經(jīng)過(guò)遺傳算法操作以后,選出適應(yīng)值最高的個(gè)體將權(quán)值付給BP網(wǎng)絡(luò)作為初值,再由BP網(wǎng)絡(luò)在全局搜索過(guò)的基礎(chǔ)上進(jìn)行局部搜索,訓(xùn)練出最優(yōu)網(wǎng)絡(luò),從而預(yù)測(cè)學(xué)生的過(guò)級(jí)情況,達(dá)到了對(duì)學(xué)生過(guò)級(jí)進(jìn)行預(yù)測(cè)的目的,為教師指導(dǎo)學(xué)生等級(jí)考試過(guò)級(jí)提供有益的幫助,對(duì)提高高校計(jì)算機(jī)教學(xué)水平和教學(xué)質(zhì)量具有一定的指導(dǎo)意義。
1 遺傳神經(jīng)網(wǎng)絡(luò)算法
1.1 BP 神經(jīng)網(wǎng)絡(luò)介紹
BP(Back Propagation)網(wǎng)絡(luò)是一種按誤差逆?zhèn)鞑ニ惴ㄓ?xùn)練的多層前饋網(wǎng)絡(luò),是目前應(yīng)用最廣泛的神經(jīng)網(wǎng)絡(luò)模型之一。它可以模擬人的大腦,將大量的神經(jīng)元連接成一個(gè)復(fù)雜的網(wǎng)絡(luò),利用已知樣本數(shù)據(jù)對(duì)神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,讓網(wǎng)絡(luò)存儲(chǔ)變量間的非線性關(guān)系,然后利用存儲(chǔ)的網(wǎng)絡(luò)信息對(duì)未知樣本進(jìn)行分類(lèi)。BP網(wǎng)絡(luò)能學(xué)習(xí)和存貯大量的輸入-輸出模式映射關(guān)系,而無(wú)需事前揭示描述這種映射關(guān)系的數(shù)學(xué)方程。通過(guò)反向傳播來(lái)不斷調(diào)整網(wǎng)絡(luò)的權(quán)值和閾值,使網(wǎng)絡(luò)的誤差平方和最小。一般情況下,神經(jīng)網(wǎng)絡(luò)模型由三個(gè)層次組成:輸入層、中間層和輸出層。神經(jīng)網(wǎng)絡(luò)的訓(xùn)練根據(jù)與訓(xùn)練集中歷史樣本數(shù)據(jù)進(jìn)行對(duì)比反復(fù)的進(jìn)行,并不斷的修改連接強(qiáng)度(權(quán)值),當(dāng)輸出結(jié)果與已知結(jié)果的吻合度達(dá)到一定的精度或滿足其他結(jié)束條件時(shí),就停止對(duì)網(wǎng)絡(luò)的訓(xùn)練,此時(shí)就可用測(cè)試集中的數(shù)據(jù)對(duì)系統(tǒng)進(jìn)行評(píng)價(jià)。
1.2 遺傳算法的計(jì)算步驟
遺傳算法的計(jì)算步驟:
1)參數(shù)編碼.首先將問(wèn)題求解的參數(shù)變量轉(zhuǎn)變成遺傳個(gè)體,這過(guò)程稱(chēng)其為參數(shù)編碼。
2)選擇操作:可以保持種群中的優(yōu)質(zhì)個(gè)體繼續(xù)遺傳,將上一代種群中的優(yōu)質(zhì)個(gè)體直接傳遞給下一代個(gè)體,增大優(yōu)質(zhì)個(gè)體遺傳到下一代的概率,適應(yīng)度較差的個(gè)體被淘汰。
3)交叉運(yùn)算:通過(guò)不斷的雜交和基因重組繁衍后代,從而使父代優(yōu)良的特性能保留到下一代中,保證了種群數(shù)量的多樣性。
4)變異運(yùn)算:保持了種群的多樣性,通過(guò)變異使種群產(chǎn)生新的個(gè)體,此外它還可以有效地控制搜索結(jié)果,以免陷入局部最優(yōu)解,使遺傳算法的搜索空間擴(kuò)大,提高其全局的搜索能力。
1.3 遺傳神經(jīng)網(wǎng)絡(luò)計(jì)算步驟[1-3]
步驟1 確定神經(jīng)網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)。
步驟2選擇染色體種群大小、交叉和突變的概率,并定義訓(xùn)練的次數(shù)。定義適應(yīng)性函數(shù)來(lái)度量單個(gè)染色體的性能或適應(yīng)性。
步驟3編碼,得出初始種群。
步驟4解碼得到權(quán)值和閾值,賦給新建的BP神經(jīng)網(wǎng)絡(luò)。
步驟5 使用樣本訓(xùn)練和測(cè)試網(wǎng)絡(luò),測(cè)試誤差。
步驟6計(jì)算適應(yīng)度,選擇適應(yīng)度高的染色體進(jìn)行復(fù)制
步驟7進(jìn)行交叉和突變操作。
步驟8得到新的種群。
步驟9用新的種群(子代)取代初始種群(父代)。
步驟10 回到步驟4,重復(fù)這個(gè)過(guò)程,直到迭代次數(shù)上限或是誤差達(dá)到訓(xùn)練標(biāo)準(zhǔn)。
步驟11 將把最后一代群體中的所有個(gè)體解碼,輸出滿足條件的網(wǎng)絡(luò)權(quán)系數(shù)和網(wǎng)絡(luò)。
步驟12 輸入檢測(cè)樣本,檢驗(yàn)網(wǎng)絡(luò)的泛化能力。
上述算法通過(guò)BP 神經(jīng)網(wǎng)絡(luò)與遺傳算法結(jié)合計(jì)算穩(wěn)定了訓(xùn)練次數(shù)和最終權(quán)值,大大加快了訓(xùn)練速度。
2 遺傳神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)
2.1 數(shù)據(jù)來(lái)源及數(shù)據(jù)預(yù)處理
前期工作是通過(guò)設(shè)計(jì)問(wèn)卷調(diào)查表,得到有效問(wèn)卷調(diào)查表,通過(guò)清洗,共得到255個(gè)有效樣本。在本實(shí)驗(yàn)中,隨機(jī)選取的155數(shù)據(jù)用來(lái)形成規(guī)則,余下的100數(shù)據(jù)用來(lái)測(cè)試[4]。
數(shù)據(jù)值設(shè)定如下:
所學(xué)專(zhuān)業(yè):有“理工、管理、文史、藝術(shù)” 四檔,分別用 “4、3、2、1”表示;紀(jì)律情況:有“好、一般、差”三檔,分別用 “3、2、1”表示;學(xué)習(xí)情況:有“很好、較好、一般、差”四檔,分別用 “4、3、2、1”表示;對(duì)本課程興趣程度:有“高、中、低”三檔,分別用 “3、2、1”表示;是否常上機(jī)練習(xí):有“是、非”兩檔,分別用 “2、1”表示;班上學(xué)習(xí)風(fēng)氣:有“好、一般、差”三檔,分別用 “3、2、1”表示;教學(xué)經(jīng)驗(yàn):有“豐富、一般、少”三檔,分別用 “3、2、1”表示;責(zé)任心:有 “強(qiáng)、一般、較差”三檔,分別用 “3、2、1”表示;課程目標(biāo):有“高要求、一般要求”兩檔,分別用 “2、1”表示;“課程難易度”有“偏難、適中、偏易”三檔,分別用 “3、2、1”表示。另外,“過(guò)級(jí)否”這一輸出字段有“通過(guò),不通過(guò)”兩種情況,分別用 “1、0”表示。
把“所學(xué)專(zhuān)業(yè)(sxzy)、紀(jì)律情況(jlqk)、學(xué)習(xí)情況(xxqk)、對(duì)本課程興趣程度(xqcd)、是否常上機(jī)練習(xí)(csjlx)、班上學(xué)習(xí)風(fēng)氣(bf)、教學(xué)經(jīng)驗(yàn)(jxjy)、責(zé)任心(zrx)、課程目標(biāo)(kcmb)、課程難易度(Kcnyd)、試卷難易度(sjned)”作為條件屬性,把“過(guò)級(jí)否(gj)”作為決策屬性。
2.2 神經(jīng)網(wǎng)絡(luò)算法實(shí)現(xiàn)
首先確定神經(jīng)網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)。對(duì)一般應(yīng)用而言,三層網(wǎng)絡(luò)是較好選擇。隱含層神經(jīng)網(wǎng)絡(luò)個(gè)數(shù)確定,可用以下公式:隱含層神經(jīng)網(wǎng)絡(luò)個(gè)數(shù)=2*輸入層隱含層神經(jīng)網(wǎng)絡(luò)個(gè)數(shù)+1。
本文中,樣本有11個(gè)輸入?yún)?shù),1個(gè)輸出參數(shù),所以這里隱含層神經(jīng)網(wǎng)絡(luò)個(gè)數(shù)取23。BP神經(jīng)網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)為11-23-1。共有11*23+23*1=276個(gè)權(quán)值,23+1=24個(gè)閾值,得出遺傳算法優(yōu)化參數(shù)的個(gè)數(shù)為300個(gè)。隱含層傳遞函數(shù)采用S型正切函數(shù)tansig(),輸出層傳遞函數(shù)采用S型對(duì)數(shù)函數(shù)logsig()。
適應(yīng)度函數(shù):選擇預(yù)測(cè)樣本的預(yù)測(cè)值與期望值的誤差矩陣的范數(shù)為目標(biāo)函數(shù)的輸出,采用適應(yīng)度分配函數(shù)FitnV=ranking(obj),其中obj為目標(biāo)函數(shù)的輸出。選擇算子:采用隨機(jī)遍歷抽樣。交叉算子:采用單點(diǎn)交叉算子。變異:以隨機(jī)方式選出發(fā)生變異的基因,1變0,0變1。運(yùn)行參數(shù)設(shè)定:種群大小:30;最大遺傳代數(shù):30;變量的二進(jìn)制位數(shù):10;交叉概率:0.01;代溝:0.95。
3 結(jié)果及分析
得到優(yōu)化化的權(quán)值和閾值的訓(xùn)練誤差變化曲線(如圖1所示),預(yù)測(cè)值的準(zhǔn)確率為93.4%,準(zhǔn)確率是比較高的;根據(jù)預(yù)測(cè)結(jié)果,針對(duì)可能不通過(guò)的學(xué)生進(jìn)行強(qiáng)化訓(xùn)練,學(xué)生很有可能過(guò)關(guān);該文作者積極把此算法應(yīng)用于實(shí)踐。在2012年6月的全國(guó)高校計(jì)算機(jī)過(guò)級(jí)考試中,該文作者所教的兩個(gè)班級(jí)均取得了好成績(jī),一個(gè)班過(guò)級(jí)率達(dá)到100%,一個(gè)班過(guò)級(jí)率也達(dá)到了98%,說(shuō)明了遺傳神經(jīng)網(wǎng)絡(luò)對(duì)高校計(jì)算機(jī)等級(jí)考試預(yù)測(cè)的應(yīng)用是有效的,對(duì)學(xué)生順利過(guò)級(jí)及教師教學(xué)可提供一定的的幫助。
參考文獻(xiàn):
[1] 余凡,趙英時(shí),李海濤.基于遺傳BP 神經(jīng)網(wǎng)絡(luò)的主被動(dòng)遙感協(xié)同反演土壤水分[J].紅外與毫米波學(xué)報(bào),2012,31(3),283-288.
[2] 李海俠.遺傳神經(jīng)網(wǎng)絡(luò)滑??刂圃诮涣魉欧刂浦械膽?yīng)用研究[J].機(jī)械設(shè)計(jì)與制造,2012,(7):142-144.
[3] 黃學(xué)雨,馬欣.基于遺傳神經(jīng)網(wǎng)絡(luò)的股指預(yù)測(cè)[J].現(xiàn)代計(jì)算機(jī),2012,(5),30-32,39.
[4] 曠昀.BP算法在高校計(jì)算機(jī)等級(jí)考試過(guò)級(jí)預(yù)測(cè)中的應(yīng)用[D].北京:北京工業(yè)大學(xué),2007.