田偉
(蘭州商學(xué)院隴橋?qū)W院,甘肅 蘭州 730000)
Apriori算法在學(xué)生成績(jī)數(shù)據(jù)中的應(yīng)用研究
田偉
(蘭州商學(xué)院隴橋?qū)W院,甘肅 蘭州 730000)
在高校的數(shù)據(jù)管理中,有很大一塊是對(duì)學(xué)生成績(jī)的管理,具體的處理就是:成績(jī)的錄入,成績(jī)的查詢,修改等就數(shù)據(jù)本身的一些操作,而成績(jī)只是作為升留級(jí),評(píng)優(yōu)的參考依據(jù),而就及占用的資源而言,利用率不是很高,造成了極大浪費(fèi).隨著科學(xué)技術(shù)的不斷進(jìn)步,如何使成績(jī)發(fā)揮它的最大效用,成為了當(dāng)前高校重點(diǎn)考慮的問題.本文將利用Apriori算法,借助學(xué)生成績(jī)數(shù)據(jù)庫(kù),挖掘出課程之間存在的相關(guān)關(guān)系,為相關(guān)部門合理、科學(xué)的安排課程提供理論依據(jù).
Apriori算法;最小支持度;最小置信度
隨著高校的不斷擴(kuò)招,學(xué)生人數(shù)增長(zhǎng)迅速,對(duì)于學(xué)生而言,課程結(jié)束后的考試必不可少,作為各高校評(píng)價(jià)學(xué)生學(xué)習(xí)情況,及評(píng)優(yōu)的重要衡量指標(biāo),經(jīng)過長(zhǎng)期的積累,每個(gè)高校都存儲(chǔ)了大量的學(xué)生成績(jī)信息,但對(duì)成績(jī)的使用還只停留在查詢和簡(jiǎn)單統(tǒng)計(jì)階段,例如成績(jī)錄入、修改、刪除,求和,計(jì)算平均成績(jī)等操作,除此之外,再?zèng)]有其他深層次的應(yīng)用.然而,實(shí)際上成績(jī)?cè)谀承┓矫妫€能夠反映出課程設(shè)置的合理性,通過對(duì)學(xué)生成績(jī)的分析,我們可以看出課程的安排順序?qū)W(xué)生的成績(jī)會(huì)產(chǎn)生一定的影響,從而說明了用成績(jī)來判定課程設(shè)置的合理性是有科學(xué)根據(jù)的.
在本文中,我們從全院在校學(xué)生成績(jī)數(shù)據(jù)庫(kù)中,選取了我系10級(jí)信息管理與信息系統(tǒng)專業(yè)學(xué)生的《計(jì)算機(jī)網(wǎng)絡(luò)》、《外語》、《高數(shù)》、《計(jì)算機(jī)基礎(chǔ)》、《操作系統(tǒng)》等8門課程作為源數(shù)據(jù)進(jìn)行分析,分析過程使用Apriori算法,利用此算法挖掘出每門課程對(duì)其他課程的影響程度,從而為排課的相關(guān)人員提供參考依據(jù),也為學(xué)生今后的選課提供一定的指導(dǎo).
通過對(duì)學(xué)生成績(jī)的分析,可以揭示“教”與“學(xué)”這間的關(guān)系,從而判斷出高校教學(xué)計(jì)劃的制定是否存在問題,對(duì)教師的“教”和學(xué)生的“學(xué)”,以及相關(guān)部門的計(jì)劃制定起到指導(dǎo)作用.
2.1 數(shù)據(jù)清理
原始數(shù)據(jù)是從我院的教務(wù)系統(tǒng)中得到,其中包含了全校各個(gè)專業(yè)、各個(gè)年級(jí)、各門課程的全部成績(jī),因?yàn)樯婕暗臄?shù)據(jù)量巨大,所以存在部分錯(cuò)誤,還有某些數(shù)據(jù)從本身的從教經(jīng)驗(yàn)上看不可能存在關(guān)系,因此為了便于通過模型進(jìn)行分析,在本文中,只選取了我系10級(jí)信息管理與信息系統(tǒng)專業(yè)學(xué)生的《計(jì)算機(jī)基礎(chǔ)》等8門課程成績(jī)作為對(duì)象,為方便后續(xù)工作的開展,剔除了空白以及數(shù)據(jù)缺失的記錄.清理完畢的數(shù)據(jù)如表1所示.

表1 數(shù)據(jù)清理后的學(xué)生成績(jī)
2.2 數(shù)據(jù)集成
所謂數(shù)據(jù)集成是將多個(gè)數(shù)據(jù)源合并到一致的數(shù)據(jù)存儲(chǔ)中,方便進(jìn)行統(tǒng)一的分析,依據(jù)以往經(jīng)驗(yàn)思政類和體育類課程對(duì)我院本系課程的計(jì)劃制定影響不大,所以剔除.通過分析整理,最終將所有數(shù)據(jù)集成到一個(gè)Excel中,最終數(shù)據(jù)包含488條56名學(xué)生的共八門課程的數(shù)成績(jī).
2.3 數(shù)據(jù)轉(zhuǎn)換
將數(shù)據(jù)轉(zhuǎn)化成適合于進(jìn)行挖掘的形式,例如將屬性數(shù)據(jù)按比例縮放,使其落入一個(gè)比較小的區(qū)間內(nèi).由于存放在學(xué)生成績(jī)數(shù)據(jù)庫(kù)中的數(shù)據(jù)都是以數(shù)值形式表示的,因此會(huì)對(duì)數(shù)據(jù)挖掘造成不必要的麻煩,為了解決這一問題,要對(duì)現(xiàn)有學(xué)生成績(jī)進(jìn)行離散化處理,也就是把數(shù)值型的成績(jī)轉(zhuǎn)換為優(yōu)、良、中、差、不及格這五個(gè)級(jí)別.60分以下為“不及格”,60~70分之間的為“差”,70~80分之間的為“中”,80~90分之間的為“良”,90分以上為“優(yōu)”.用“1、2、3、4、5”這五個(gè)數(shù)字,分別對(duì)應(yīng)表示“優(yōu)、良、中、差、不及格”這5個(gè)等級(jí),另外用“A”表示計(jì)算機(jī)基礎(chǔ),“B”表示外語,“C”表示高數(shù),“D”表示計(jì)算機(jī)網(wǎng)絡(luò),以此類推.并將各科目字段設(shè)置為字符型,運(yùn)用Apriori算法對(duì)表1中的數(shù)據(jù)進(jìn)行關(guān)聯(lián)規(guī)則的挖掘,轉(zhuǎn)換后的數(shù)據(jù)表部分?jǐn)?shù)據(jù)如表2所示.

表2 預(yù)處理后的數(shù)據(jù)
3.1 基本原理
Apriroi算法是一種基于兩個(gè)階段頻繁項(xiàng)集的數(shù)據(jù)挖掘方法,在此算法中,尋找最大項(xiàng)目集需要對(duì)數(shù)據(jù)集進(jìn)行多步處理.首先,簡(jiǎn)單統(tǒng)計(jì)所有含一個(gè)元素項(xiàng)目集出現(xiàn)的頻率,并找出那些不小于最小支持度的項(xiàng)目集,即一維最大項(xiàng)目集.其次,使用第一步找到的頻繁項(xiàng)集產(chǎn)生期望的規(guī)則.首先產(chǎn)生頻繁1-項(xiàng)集L1,然后是頻繁2-項(xiàng)集L2,直到有某個(gè)r值使得Lr為空,算法停止.這里在第k次循環(huán)中,過程先產(chǎn)生侯選k-項(xiàng)集的集合Ck,Ck中的每一個(gè)項(xiàng)集是對(duì)兩個(gè)只有一個(gè)項(xiàng)不同的屬于Lk-1的頻繁集做一個(gè)(k-2)連接來產(chǎn)生的.Ck中的項(xiàng)集是用來產(chǎn)生頻繁集的候選集,最后的頻繁集Lk必須是Ck的一個(gè)子集.如果Ck中某個(gè)候選集有一個(gè)(k-1)子集不屬于Lk-1,則這個(gè)項(xiàng)集可以被修剪掉不予考慮.然后根據(jù)可信度的定義規(guī)則,產(chǎn)生關(guān)聯(lián)規(guī)則.
①對(duì)于每個(gè)頻繁項(xiàng)集L,產(chǎn)生L的所有非空子集;
②對(duì)于L的每個(gè)非空子集S,如果s-count(L)
s-count(s)≥Cmin
則輸出規(guī)則“s→L-s”.
3.2 Apriori算法應(yīng)用
在該程序中運(yùn)用了Apriori算法模型進(jìn)行分析.為了得到更有效的數(shù)據(jù),進(jìn)行了反復(fù)的驗(yàn)證.設(shè)最小支持度為30%,設(shè)最小置信度為60%,部分規(guī)則如下表3所示.

表3 挖掘結(jié)果
當(dāng)然,表3中的挖掘關(guān)聯(lián)規(guī)則并非每一條都具有現(xiàn)實(shí)意義,我們還要進(jìn)一步進(jìn)行處理,將這些關(guān)聯(lián)規(guī)則模型導(dǎo)出進(jìn)行分析.結(jié)果如下:
4.1 從上面的挖掘結(jié)果可以看出,有些課程之間的關(guān)系與我們實(shí)際的教學(xué)經(jīng)驗(yàn)是一致的.如《數(shù)據(jù)結(jié)構(gòu)》這門課程的成績(jī)?cè)?0~90分之間,《高級(jí)語言程序設(shè)計(jì)》課程成績(jī)也在80~90分之間的支持度為64.8%,置信度為85.2%,通過此規(guī)則我們可以知道《數(shù)據(jù)結(jié)構(gòu)》這門課程學(xué)習(xí)的好壞,直接影響到《高級(jí)語言課程》這門課程的學(xué)習(xí),因此安排課程時(shí)應(yīng)該將《數(shù)據(jù)結(jié)構(gòu)》安排在前先上,教師在授課過程中一定嚴(yán)格要求學(xué)生,使其認(rèn)真學(xué)習(xí)這門課程,為今后其他課程的學(xué)習(xí)打好基礎(chǔ).
4.2 公共基礎(chǔ)課程《計(jì)算機(jī)基礎(chǔ)》和《外語》這兩門課程,對(duì)于學(xué)好計(jì)算機(jī)專業(yè)課也起到了很大的作用,同時(shí)可以看到對(duì)于我系學(xué)生而言《計(jì)算機(jī)基礎(chǔ)》成績(jī)和《外語》成績(jī)相對(duì)偏低,需要引起高度重視.
4.3 《計(jì)算機(jī)基礎(chǔ)》成績(jī)?cè)?0~80分之間,《高數(shù)》成績(jī)?cè)?0~90分之間的支持度為55.8%,置信度為87.2%,可信度和置信度雖然都達(dá)到了要求,但根據(jù)實(shí)際經(jīng)驗(yàn),兩者并無直接關(guān)聯(lián),實(shí)際工作中可以不予考慮.其他規(guī)則同樣如此,需要相關(guān)部門根據(jù)實(shí)際情況進(jìn)行具體地研究,有分析地借鑒參考.
在本文中,我們利用關(guān)聯(lián)規(guī)則中的Apriori算法,對(duì)信息管理與信息系統(tǒng)專業(yè)的學(xué)生成績(jī)進(jìn)行了挖掘,找出了隱藏在學(xué)生成績(jī)背后的規(guī)律,可以對(duì)偏離正常軌道的學(xué)生,及時(shí)進(jìn)行干預(yù),從而幫助學(xué)生順利完成學(xué)業(yè),還可以對(duì)課程的管理者的決策提供參考,也為關(guān)聯(lián)規(guī)則在其它學(xué)科的應(yīng)用提供了思路.
〔1〕王海容.數(shù)據(jù)挖掘在學(xué)生成績(jī)分析的應(yīng)用[J].電子設(shè)計(jì)工程,2013,21(4):4-56.
〔2〕邵峰晶,于忠清.數(shù)據(jù)挖掘原理與算法[M].北京:水利水電出版杜,2003.
〔3〕史忠植.知識(shí)發(fā)現(xiàn)[M].北京:清華大學(xué)出版社,2002.
〔4〕崔學(xué)文.關(guān)聯(lián)規(guī)則挖掘算法Apriori在學(xué)生成績(jī)分析中的應(yīng)用[J].河北北方學(xué)院學(xué)報(bào)(自然科學(xué)版),2011(1):44-47.
〔5〕李金忠.關(guān)聯(lián)規(guī)則Apriori算法[J].電腦編程技巧與維護(hù),2008(6):35~37.
〔6〕常朝穩(wěn),代永衛(wèi),等.關(guān)聯(lián)規(guī)則在公安情報(bào)信息系統(tǒng)中的應(yīng)用[J].計(jì)算機(jī)工程與應(yīng)用,2008,44(5):75~78.
〔7〕趙輝.數(shù)據(jù)挖掘技術(shù)在學(xué)生成績(jī)分析中的研究及應(yīng)用[D].大連:大連海事大學(xué),2007.
〔8〕陸楠.關(guān)聯(lián)規(guī)則的挖掘及其算法的研究[D].長(zhǎng)春:吉林大學(xué),2007.
TP311.13
A
1673-260X(2014)09-0012-02
赤峰學(xué)院學(xué)報(bào)·自然科學(xué)版2014年18期