陳霄 曾振東
摘 要:關(guān)聯(lián)規(guī)則挖掘是挖掘研究領(lǐng)域的一項(xiàng)重要技術(shù),高職院校教學(xué)管理系統(tǒng)產(chǎn)生海量數(shù)據(jù),這些數(shù)據(jù)中隱藏著大量有價(jià)值的信息。文章采用改進(jìn)的Apriori算法對(duì)高職院校計(jì)算機(jī)專業(yè)學(xué)生成績(jī)進(jìn)行關(guān)聯(lián)規(guī)則分析,挖掘出課程之間的相關(guān)性,為高職院校更科學(xué)的制定教學(xué)計(jì)劃提供有力的決策支持,進(jìn)而提高教育教學(xué)質(zhì)量。
關(guān)鍵詞:關(guān)聯(lián)規(guī)則;高職院校;計(jì)算機(jī)專業(yè)
中圖分類號(hào):TP393 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):1673-8454(2014)20-0075-03
一、引言
隨著高職院??焖侔l(fā)展,規(guī)模不斷擴(kuò)大,造成高職院校在課程設(shè)置、教學(xué)內(nèi)容、學(xué)生管理、招生就業(yè)等方面面臨嚴(yán)峻的考驗(yàn),傳統(tǒng)的教學(xué)管理理念已經(jīng)不能夠適應(yīng)高職院校發(fā)展的需要,但是,許多高職院校在專業(yè)課程設(shè)置上都是在以往的專業(yè)課程設(shè)置基礎(chǔ)上結(jié)合教學(xué)實(shí)際情況簡(jiǎn)單的進(jìn)行修改,很少高職院校在專業(yè)課程設(shè)置上聽取企業(yè)的建議或者遵循市場(chǎng)對(duì)人才的需求,導(dǎo)致課程應(yīng)該在哪個(gè)學(xué)期開設(shè)或者是否繼續(xù)開設(shè)等方面存在不少問題。
目前,基本上所有的高職院校都是采用基于WEB的教學(xué)管理系統(tǒng)對(duì)學(xué)生成績(jī)信息進(jìn)行有效管理,隨著時(shí)間的推移,教學(xué)管理系統(tǒng)將產(chǎn)生海量的數(shù)據(jù),大量的數(shù)據(jù)沒有被充分的利用,因此,如何利用關(guān)聯(lián)規(guī)則挖掘技術(shù)發(fā)掘隱藏在海量學(xué)生成績(jī)數(shù)據(jù)背后有價(jià)值的信息或者規(guī)則,如課程之間的聯(lián)系,學(xué)生成績(jī)與課程之間的聯(lián)系等等,為教師授課、學(xué)生學(xué)習(xí)、教育管理決策提供有用的理論指導(dǎo)。
二、關(guān)聯(lián)規(guī)則挖掘和改進(jìn)的Apriori算法
1.基本概念
數(shù)據(jù)挖掘(Data Mining),就是從大量的、不完全的、有噪聲的、模糊的、隨機(jī)的實(shí)際應(yīng)用數(shù)據(jù)中,提取隱含在其中的、人們事先不知道的、但又潛在有用的信息和知識(shí)的過程。[1]關(guān)聯(lián)規(guī)則挖掘是從大量數(shù)據(jù)中挖掘出有價(jià)值的、描述數(shù)據(jù)項(xiàng)之間相互聯(lián)系的有關(guān)知識(shí)。[2]關(guān)聯(lián)規(guī)則是數(shù)據(jù)挖掘研究領(lǐng)域的一項(xiàng)重要技術(shù),其目的是從數(shù)據(jù)庫中挖掘出不低于預(yù)先給定min-support閾值和min-confi閾值的關(guān)聯(lián)規(guī)則。[3]
關(guān)聯(lián)規(guī)則描述為:設(shè)I={i1,i2,……,im}為M個(gè)項(xiàng)目集,D為交易數(shù)據(jù)集合,其中事務(wù)T是I項(xiàng)目子集(T?I),對(duì)應(yīng)的每一個(gè)事務(wù)交易都有唯一的標(biāo)識(shí)TID。關(guān)聯(lián)規(guī)則形如X?Y的邏輯蘊(yùn)涵式,其中X?I,Y?I,且X∩Y=ф。如果事務(wù)數(shù)據(jù)庫D中有s%的事務(wù)包含X∪Y,則稱關(guān)聯(lián)規(guī)則X?Y的支持度為s%,若項(xiàng)集X的支持度記為support(X),規(guī)則的信任度為support(X∪Y)/ support(X)。[4]也就是:
support(XY)=P(X∪Y)
confidence(XY)=P(Y/X)
2. Apriori算法
Apriori算法是關(guān)聯(lián)規(guī)則挖掘中重要的算法之一,它的核心思想是采用逐層搜索的迭代的方法通過多次掃描數(shù)據(jù)庫D來找出所有的頻繁項(xiàng)集。其算法描述如下:
L1={頻繁1—項(xiàng)集};
For(k=2;Lk-1≠ф;k++)do begin
Ck=apriori_gen(Lk-1);//新的潛在頻繁項(xiàng)集
for all transactions t∈D do begin
Ct=subset(Ck ,t); //事務(wù)t中包含的潛在頻繁項(xiàng)集
for all candidates c∈Ct do
c.count++;
end;
Lk={c∈Ck|c.count≥minsup}
end;
Answer=YkLk;
Apriori算法雖然簡(jiǎn)單明了,容易實(shí)現(xiàn),但是存在許多不足之處,一是對(duì)數(shù)據(jù)庫D掃描次數(shù)過多,二是會(huì)產(chǎn)生大量的中間項(xiàng)集。針對(duì)這兩個(gè)問題,筆者對(duì)Apriori算法做了相應(yīng)的改進(jìn),將整個(gè)數(shù)據(jù)庫進(jìn)行分段,挖掘過程只需在段內(nèi)進(jìn)行,接著各子數(shù)據(jù)庫挖掘結(jié)果匯總,最終刷選出關(guān)聯(lián)規(guī)則。
三、關(guān)聯(lián)規(guī)則挖掘在高職院校計(jì)算機(jī)專業(yè)課程設(shè)置中的應(yīng)用
高職院校計(jì)算機(jī)專業(yè)課程包括有圖像處理、網(wǎng)頁設(shè)計(jì)、動(dòng)畫制作、網(wǎng)站制作與維護(hù)、C語言程序設(shè)計(jì)等。采用改進(jìn)的Apriori算法對(duì)計(jì)算機(jī)專業(yè)課程進(jìn)行分析,分析流程包括數(shù)據(jù)選擇、數(shù)據(jù)刷選、數(shù)據(jù)轉(zhuǎn)換、數(shù)據(jù)挖掘及結(jié)果分析。
1.數(shù)據(jù)準(zhǔn)備
本研究選取某高職院校計(jì)算機(jī)專業(yè)10級(jí)到12級(jí)學(xué)生成績(jī)表作為數(shù)據(jù)源,挖掘課程之間的關(guān)聯(lián)性。為了減少冗余數(shù)據(jù),將一些對(duì)專業(yè)課程影響較小的字段刪除,刪除了思政類、人文類、體育類和公共基礎(chǔ)課成績(jī),最終選取了《圖像處理》、《網(wǎng)頁設(shè)計(jì)》、《動(dòng)畫制作》等15門專業(yè)基礎(chǔ)、專業(yè)骨干、專業(yè)核心課程學(xué)生成績(jī)作為研究對(duì)象。
2.數(shù)據(jù)篩選
采集的數(shù)據(jù)往往存在數(shù)據(jù)冗余、數(shù)據(jù)不完整性等現(xiàn)象,不能直接進(jìn)行挖掘,需要對(duì)數(shù)據(jù)進(jìn)行篩選處理。例如對(duì)于學(xué)生成績(jī)表中含有學(xué)生的電話、地址、出生年月等字段,一一進(jìn)行刪除;對(duì)于學(xué)生成績(jī)表中的學(xué)生退學(xué)、轉(zhuǎn)學(xué)等記錄一一刪除;對(duì)于學(xué)生成績(jī)表中缺考的信息,采用忽略元組的方法刪除;對(duì)于個(gè)別空缺值,采用人工填充的簡(jiǎn)單方式,其填充值為該字段的中值;對(duì)于補(bǔ)考、重修通過的學(xué)生成績(jī),采用替換的方式填充為50分,便于數(shù)據(jù)轉(zhuǎn)換。經(jīng)過數(shù)據(jù)篩選的數(shù)據(jù)如表1所示。
3.數(shù)據(jù)轉(zhuǎn)換
從表1中可以看出,每一條元組代表一名學(xué)生的課程成績(jī),表中成績(jī)都是采用0-100的數(shù)值表示,如果直接進(jìn)行數(shù)據(jù)挖掘,難以取得滿意的結(jié)果,所以,需要對(duì)每一條元組對(duì)應(yīng)的屬性值進(jìn)行量化,如采用區(qū)間量化,使每名學(xué)生每門課的成績(jī)值落入到特定的區(qū)間,最終轉(zhuǎn)換成離散屬性。因此,本文將學(xué)生各門課程成績(jī)分為優(yōu)秀、良好、中、及格、差五等,分別用A、B、C、D、E表示,90-100分為A類,80-89分為B類,70-79分為C類,60-69分為D類,60分以下為E類,同時(shí),為了便于書寫,本文將表中各屬性的字段名用英文字母替代,其中KC1為《圖像處理》、KC2為《網(wǎng)頁設(shè)計(jì)》,KC3為《動(dòng)畫制作》、KC4為《網(wǎng)站制作與維護(hù)》、KC5為《C語言程序設(shè)計(jì)》等等,數(shù)據(jù)轉(zhuǎn)換后如表2所示。
4. Apriori算法的應(yīng)用
要對(duì)上述學(xué)生課程成績(jī)進(jìn)行課程關(guān)聯(lián)規(guī)則挖掘,本文采用的算法運(yùn)行的硬件平臺(tái):Intel 酷睿2雙核 E7500、2GB內(nèi)存,軟件平臺(tái):Windows XP、SQL Server 2000、SPSS Clementine。經(jīng)過數(shù)據(jù)轉(zhuǎn)換的學(xué)生成績(jī)數(shù)據(jù)已經(jīng)滿足Apriori算法對(duì)數(shù)據(jù)的要求,可以直接使用Apriori模型進(jìn)行挖掘。為了能夠得到準(zhǔn)確有效的課程關(guān)聯(lián)規(guī)則,經(jīng)過反復(fù)驗(yàn)證處理,將最小支持度設(shè)定為30%,最小置信度設(shè)定為60%。部分挖掘結(jié)果如圖1所示。
5.挖掘結(jié)果及分析
上面挖掘出來的98條結(jié)果并非每條關(guān)聯(lián)規(guī)則都有意義,我們對(duì)某些無價(jià)值的關(guān)聯(lián)規(guī)則進(jìn)行處理,無價(jià)值關(guān)聯(lián)就是一門課程的成績(jī)?cè)贏、B、C、D類中的其中一類能夠同時(shí)推出另外一門課程的成績(jī)?yōu)锳、B、C、D類中的兩類或者兩類以上的規(guī)則。例如,《圖像處理》成績(jī)?yōu)锳的學(xué)生可以推出《網(wǎng)頁設(shè)計(jì)》課程的學(xué)生成績(jī)即為A或者C等,這類規(guī)則就沒有意義。關(guān)聯(lián)規(guī)則分析主要有兩個(gè)參考依據(jù):支持度與置信度,若數(shù)據(jù)集中D有C比例的事務(wù)T滿足“包含A事務(wù)的同時(shí)包含B事務(wù)”,則稱規(guī)則A→B具有C置信度,置信度的高低代表關(guān)聯(lián)規(guī)則強(qiáng)弱,置信度越高,關(guān)聯(lián)越強(qiáng)。
通過整理98條,剩下64條有價(jià)值的規(guī)則,分析這些關(guān)聯(lián)規(guī)則,得到部分主要的關(guān)聯(lián)規(guī)則如下:
規(guī)則1:C語言程序設(shè)計(jì)=A→網(wǎng)頁設(shè)計(jì)=A,置信度為69.2%,圖像處理=A、C語言程序設(shè)計(jì)=A→網(wǎng)頁設(shè)計(jì)=A,說明C語言程序設(shè)計(jì)、圖像處理是網(wǎng)頁設(shè)計(jì)的前導(dǎo)課程,因此,在課程設(shè)置中,網(wǎng)頁設(shè)計(jì)排在C語言程序設(shè)計(jì)、圖像處理課之后。
規(guī)則2:動(dòng)畫制作=A→網(wǎng)頁設(shè)計(jì)=C,置信度為70.5%,通過查看課程的安排學(xué)期發(fā)現(xiàn),網(wǎng)頁設(shè)計(jì)課程安排在動(dòng)畫制作課程的前面,導(dǎo)致動(dòng)畫制作課程為優(yōu)秀的學(xué)生,網(wǎng)頁設(shè)計(jì)課程的學(xué)生不一定為優(yōu)秀,因此,動(dòng)畫制作課程應(yīng)該安排在網(wǎng)頁設(shè)計(jì)的前面。
以下幾條規(guī)則的含義相似,不在詳述。
規(guī)則3:網(wǎng)頁設(shè)計(jì)=A、C語言程序設(shè)計(jì)=A→網(wǎng)站制作與維護(hù)=A,置信度為85%。
規(guī)則4:數(shù)據(jù)結(jié)構(gòu)=D、C語言程序設(shè)計(jì)=D→數(shù)據(jù)庫技術(shù)=D,置信度80.3%。
規(guī)則5:C語言程序設(shè)計(jì)=A、操作系統(tǒng)=A→網(wǎng)站制作與維護(hù)=A,置信度76.5%。
規(guī)則6:計(jì)算機(jī)基礎(chǔ)=A、計(jì)算機(jī)組裝與維護(hù)=A、C語言程序設(shè)計(jì)=A→信息系統(tǒng)分析與設(shè)計(jì)=A,置信度82%。
從以上規(guī)則可以看出,C語言、數(shù)據(jù)結(jié)構(gòu)對(duì)于計(jì)算機(jī)專業(yè)的學(xué)生來說是一門基礎(chǔ)課,比較重要。筆者通過分析某高職院校計(jì)算機(jī)專業(yè)課程設(shè)置是否合理,簡(jiǎn)單的得出計(jì)算機(jī)專業(yè)課程體系,其中基礎(chǔ)課程為計(jì)算機(jī)基礎(chǔ)、計(jì)算機(jī)組裝與維護(hù)、計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)、辦公自動(dòng)化高級(jí)應(yīng)用、圖像處理、動(dòng)畫制作、C語言程序設(shè)計(jì)等,骨干課程為數(shù)據(jù)庫技術(shù)、網(wǎng)頁設(shè)計(jì)、操作系統(tǒng)、網(wǎng)站制作與維護(hù)等,核心課程為動(dòng)態(tài)WEB技術(shù)、信息系統(tǒng)分析與設(shè)計(jì)等。
四、結(jié)束語
高職教育是培養(yǎng)符合市場(chǎng)需求的高技能型人才,通過關(guān)聯(lián)規(guī)則挖掘算法,能夠有效地挖掘出課程之間的關(guān)聯(lián)關(guān)系,為高職院校課程設(shè)置、教學(xué)計(jì)劃和教學(xué)方案提供有力地決策支持,也為學(xué)生學(xué)習(xí)提供方向性指導(dǎo)意見。
參考文獻(xiàn):
[1]J Han, M Kamber. Data Mining:Concepts and Techniques[M]. San Mateo, CA:Morgan Kaufmann, 2001.
[2]付沙,周航軍.關(guān)聯(lián)規(guī)則挖掘Apriori算法的研究與改進(jìn)[J]. 微電子學(xué)與計(jì)算機(jī),2013(9).
[3]孫志剛,朱小冬,王毅剛.基于改進(jìn)關(guān)聯(lián)規(guī)則的維修專業(yè)組合與優(yōu)化模型[J].計(jì)算機(jī)應(yīng)用研究,2013(2).
[4]屈展,陳雷.一種改進(jìn)的APRIORI算法在電子商務(wù)中的應(yīng)用[J].西安石油大學(xué)學(xué)報(bào)(自然科學(xué)版),2012(1).
(編輯:魯利瑞)