葛佶莛
(北京科技大學 東凌經(jīng)濟管理學院,北京100083)
在學校教育中,考試與教學不可分割,考試成績扮演著檢驗學生學習情況和狀態(tài)的重要角色。因此,成績評價對于檢測和監(jiān)控教育質(zhì)量、引導教師的教學行為,督促學生積極努力地學習是非常有必要的?,F(xiàn)在,學校里擁有各種系統(tǒng)和各類數(shù)據(jù)庫,積累了大量的學生成績數(shù)據(jù),但是由于工作人員缺乏相關挖掘知識和技術,只能通過Excel工具的簡單統(tǒng)計獲得少量信息,隱藏在這些大量數(shù)據(jù)中的信息不能得到應用。因此,如何利用學生前期的考試成績數(shù)據(jù)進行統(tǒng)計分析對提高學生的知識水平有著至關重要的意義。面對這一挑戰(zhàn),數(shù)據(jù)挖掘技術應運而生,并逐漸顯示出了強大的生命力,[1]作為數(shù)據(jù)挖掘的重要算法,k-means算法是一種硬聚類方法,即在n維的歐幾里得空間把n個樣本數(shù)據(jù)分成k類。[2]由于k-means聚類算法對噪聲和孤立點敏感以及對處理大數(shù)據(jù)集非常有效的特點,[3]本文將k-means算法應用于成績分析,從而全面地分析學生考試結(jié)果。
本文所引用的文獻一闡述了成績管理的作用、現(xiàn)狀以及現(xiàn)有成績管理的不足,并說明了決策樹算法及粗糙集理論在成績管理中的作用;文獻二介紹了k-means聚類算法,并在此基礎上提出了一種改進的遺傳k-means聚類算法;文獻三在分析k-means聚類算法優(yōu)缺點的基礎上進行改進,并通過實驗比較了改進算法與原算法的優(yōu)劣;文獻四介紹了典型的數(shù)據(jù)預處理技術,實現(xiàn)了一種基于日志請求的參考文件的啟發(fā)式會話識別算法。
論文利用k-means聚類算法對學生的成績進行評價、統(tǒng)計和分析,從而確定學生的學業(yè)成績在一個群體中所處的相對位置,為提高學生的成績做準備,為教學工作提供反饋信息,并采取針對性的補救措施,從而進一步提高學校的教學質(zhì)量。
圖1 設計方案實現(xiàn)圖
本論文將按圖1所示,設計總體方案。同時論文將選用所在學院的成績數(shù)據(jù)庫,成績數(shù)據(jù)庫中包括了學生所有課程的考試成績。
第一步,數(shù)據(jù)采集,為了保證數(shù)據(jù)的完整性和準確性,首先必須做好原始數(shù)據(jù)的選擇和整理工作,本文選取學院某個年級的學生在某一學期的課程成績。
第二步,數(shù)據(jù)預處理,數(shù)據(jù)預處理是一個逐步深入、由表及里的過程,經(jīng)過數(shù)據(jù)審查、數(shù)據(jù)清理、數(shù)據(jù)轉(zhuǎn)換和數(shù)據(jù)驗證四大步驟對數(shù)據(jù)進行預處理,解決數(shù)據(jù)沖突和數(shù)據(jù)不一致等問題,最終形成一份學生成績表。[4]
第三步,執(zhí)行聚類算法在確定挖掘任務后,通過編寫k-means聚類算法在matlab程序代碼,實現(xiàn)k-means在學生成績分析上的處理。
第四步,聚類結(jié)果評價,對聚類結(jié)果所發(fā)現(xiàn)的信息進行解釋和評價。采用k-means聚類算法后,在學生成績評價中,每一個類就是一個成績?nèi)?,不同的類相應地對各個成績?nèi)哼M行了劃分,也相應地給出了不同成績?nèi)旱闹行某煽?,這些中心成績就是學生成績劃分參考標準之一。
第五步,提出針對策略,將挖掘出來的信息提供給教學決策者,調(diào)整教學策略,進一步指導教學工作,提高學生成績。
圖2 K-means算法研究學生成績流程
圖2給出了K-means算法研究學生成績的流程,在整個設計流程中,存在兩個關鍵問題,分別是成績的表示和成績的距離計算,對于第一個問題,論文將每個學生各科目的考試成績看做q維向量,記作xi=(x1i,x2i,…,xqi),(i=1,2,…,n),其中xki表示學生編號為i的第k門科目的成績,成績采用百分制,并根據(jù)不同的科目賦予不同的權(quán)重。對于第二個問題,論文采用歐式加權(quán)距離來定義學生成績之間的距離,將聚類組數(shù)設為P,cj(j=1,2,…,p)為聚類中心,則成績到聚類中心的距離可以用公式表示為:
其中,q為粒子的屬性組成的維數(shù),ωk為各屬性的權(quán)值;
對所有學生的各科成績進行分組聚類的K-means聚類算法的具體步驟如下:
Step1:設學生成績集為Q=(x1,x2,…xn-1,xn),其中xi=(x1i,x2i,…,xqi);
Step2:隨機選取每個類里的一個粒子作為初始聚類中心c1,c2,…,cP;
Step3:根據(jù)公式(2)將學生成績集Q中的對象xi(i=1,2,…,n)依次按歐式平均距離分配給距離最近的中心cj(j=1,2,…,p)。
其中,q為粒子的屬性組成的維數(shù),ωk為各屬性的權(quán)值;
Step4:按公式(3)計算P個聚類新的中心cj(j=1,2,…,P)。
其中,Nj為第j個聚類Sj中所包含的粒子個數(shù);
Step5:如果各個聚類中心cj(j=1,2,…,p)不再變化,否則結(jié)束,否則返回Step3。
在論文設計方案中,將學生(其中不包含不及格需要補考的學生)分為四類,分別是優(yōu)秀、良好、中等、偏差,并從自我發(fā)展和教學管理兩方面向不同類別的學生提出了建議性策略。(見表1)
表1 學生管理策略
第一步:數(shù)據(jù)采集
通過學院提供的數(shù)據(jù)庫,選取某個年級的學生在某一學期的課程成績。學生該學期均有8門功課,分別是信息資源管理、概率論、會計學、口語、工程力學、毛概、體育、數(shù)學實驗,依次對應的加權(quán)是0.2、0.2、0.2、0.1、0.1、0.1、0.05、0.05,學生成績均為百分制,隨機選擇200名學生的成績形成一張原始成績單。
第二步:數(shù)據(jù)預處理
論文將200名學生原始成績單集成為一張成績單。通過數(shù)據(jù)處理,使表中的每一個數(shù)據(jù)都是唯一和沒有疑義的,同時對空白數(shù)據(jù)進行填補或者刪除。首先考慮到數(shù)據(jù)庫中存在“0分”異常數(shù)據(jù)會對k-means算法造成很大的影響,因此本論文不將其考慮在研究范圍內(nèi)。同時,通過Excel工具將成績小于60分的選出,所對應的該學生成績也不采取k-means算法進行處理,因為成績一旦低于60分,該學生要進行補考,相應分數(shù)也會做更改處理。本論文數(shù)據(jù)采集的200名學生中一共有10人出現(xiàn)掛科情況,接下來會對剩下的190名學生的考試成績做k-means算法處理。
表2 數(shù)據(jù)清理掉的學生成績表
第三步:k-means算法對學生成績進行分析處理
確定聚類個數(shù)k值,聚類個數(shù)要接近于所用的聚類變量的個數(shù),本次實驗選取k=4。通過數(shù)據(jù)初始中心分析,隨機選擇幾個學生的學習成績作為初始聚類中心,通過matlab算法實現(xiàn)。
實驗結(jié)果可視化:(見圖3-圖7)
(1)由圖3可知,第二類學生成績?yōu)閮?yōu)秀,第一類學生成績?yōu)榱己?,第三類學生成績?yōu)橹械?,第四類學生成績?yōu)槠睢Mㄟ^計算,優(yōu)秀和良好的人數(shù)占總?cè)藬?shù)的47%,中等和偏差的人數(shù)占總?cè)藬?shù)的48%,其余為存在掛科學生的比例,說明本文隨機選取的這個專業(yè)整體的學習狀態(tài)有待進步,相關教職人員和教師應該采取必要的措施提高學生學習的積極性。同時,通過分析研究還可以發(fā)現(xiàn),每一科學生成績隨中心的變化都會影響整體成績的分布情況,特別是像會計學、概率論、信息資源管理等加權(quán)比較重的科目。
(2)如圖4、5、6、7所示,距離第二個聚類中心更近的21名學生聚成一類;距離第三個聚類中心更近的52名學生聚成一類;距離第四個聚類中心更近的44名學生聚成一類;距離第一個聚類中心更近的73名學生聚成一類。從中可以看出相近的成績都被劃分到了同一類,從而彌補了傳統(tǒng)劃分方法“在學生成績差別不大的情況下,經(jīng)過劃分后結(jié)果可能相差很大”的缺陷。
(3)聚類分析技術的應用不僅可以使190名學生清楚自己相對于整體成績的位置,還可以體現(xiàn)某類學生某些學科的不足,從而提醒教學人員針對性地采取相應的措施,實驗結(jié)果可以為教學人員制定出有針對性的解決辦法提供依據(jù),從而提高學生后期的學習成績。
本文研究k-means聚類算法在學生成績評價分析中的應用。通過對數(shù)據(jù)的預處理,采用k-means算法,利用matlab工具對數(shù)據(jù)進行處理分析,彌補了傳統(tǒng)統(tǒng)計方法的缺陷。并針對不同類型的學生,給出了學生自我發(fā)展策略和教學管理策略,從而為后期提高學生成績和教學質(zhì)量做準備。
[1]譚慶.基于k-means聚類算法的試卷成績分析研究[J].河南大學學報(自然科學版),2009,39(4):412-415.
[2]劉婷,郭海湘,諸克軍,高思維.一種改進的遺傳kmeans聚類算法[J].數(shù)學的實踐與認識,2007,37(8):104-111.
[3]周愛武,于亞飛.k-means聚類算法的研究[J].計算機技術與發(fā)展,2011,21(2):61-65.
[4]張麗偉,李禮.Web挖掘中數(shù)據(jù)預處理技術研究[J].電腦知識與技術,2010,6(15):4324-4325.