【摘要】本文以orange機器學習軟件為工具,以廣西師范學院計算機本科專業學生的基本信息和成績數據作為處理對象,詳細介紹了如何利用orange軟件中的決策樹算法對計算機專業的本科生的成績分布進行數據處理及分析的過程。實驗結果表明:數據分析得到的結論符合計算機學科特點,能夠為學院決策者在專業培養計劃的制定中提供科學依據。
【關鍵詞】orange;高校;學生成績;數據挖掘
1.引言
學生的成績是衡量高校教學質量的一個重要指標。隨著高校學生人數的逐年增加,學生成績數據也越來越龐大,這些大量的數據中蘊含著許多有意義的信息。數據挖掘(Data mining)是用于從大量的不完全的、模糊的、有噪聲的觀察數據中,去發現用戶感興趣數據的技術。利用數據挖掘技術發現大量學生成績數據中的規律和隱含的知識,對于指導高校教學質量和培養計劃的制定都具有重要的實際意義。
本文將利用數據挖掘工具軟件orange,以廣西師范學院計算機專業學生成績為例,對計算機專業學生的成績做非監督分類處理分析。
2.orange軟件簡介
Orange是一個基于組件的數據挖掘和機器學習軟件套裝,其中封裝了決策樹、關聯規則、統計分析等數十種數據挖掘經典算法。它功能友好,其具有快速而又多功能的可視化編程前端,可以方便瀏覽數據分析和可視化。Orange軟件是綁定了Python以進行腳本開發,能夠與c,c++方便的融合。是數據挖掘的有利工具。打開orange軟件后可見其界面圖:
圖1 orange軟件的界面圖
本文利用orange軟件中的ID3決策樹算法對廣西師范學院計算機專業的學生成績做分類分析。決策樹是一種利用信息論原理對樣本的屬性進行歸納分類產生的樹形結構。
構建決策樹的基本步驟為:
(1)連續屬性離散化
(2)選擇測試屬性構造決策樹
(3)決策樹剪枝
3.利用orange的id3算法分析高校學生成績
在利用orange中的決策樹算法對高校學生成績進行分析之前,進行數據采集,并將數據處理成算法所需的數據格式等步驟。下面詳細介紹分析過程:
3.1 數據采集
本文以廣西師范學院計算機與信息工程學院的3屆學生成績為例,對其進行處理分析。所采到的原始數據信息表包括:學生的基本信息表、學生學科成績表,其中學生學科成績表包含了學生大學四年所修的所有學科的成績數據。
原始學生成績表如表1所示:
表1 學生成績信息
原始學生基本信息表如表2所示(基于保密原則,給出格式,學生具體信息不便透露):
表2 學生基本信息
表3 學生成績分布處理字段說明
Codedesign:程序設計成績; math:數學成績; P.E.:體育成績;
Introduceofcomputer:計算機導論成績; English:英語成績; Total:總成績;
area:籍貫; sex:性別; result:等級評定;
表4 整理后的部分學生成績表
codedesign math P.E. English introduceofcomputer area sex result
1.3 1.3 1.8 1.7 0.7 M 1 C
1.5 1.2 1.8 1.5 0.7 E 1 D
1.4 1.4 1.8 1.5 0.7 W 1 C
1.5 1.4 1.9 1.3 0.6 E 1 D
3.2 數據預處理
(1)數據清洗
在收集到的數據中,往往包含著許多與挖掘任務無相關、冗余的屬性。為提高決策樹算法的效率,需要對原始數據進行清洗。
學生基本信息表的清洗:只保留性別、籍貫兩個屬性。
學生成績信息表數據量大,科目繁多。為能夠在成績分類挖掘中進行統一比較,本文只選取了部分科目成績進行整理比較。這些科目成績分別是:程序設計成績、數學成績、體育成績、英語成績和計算機導論成績數據。
(2)數據規范化
學校的學生成績信息是用百分制記錄,不符合ID3算法數據需離散型的要求,故應ID3算法的要求,數據源整理為離散型變量。
性別數據處理:男為1,女為2;
籍貫數據處理:本次收集到的學生數據以廣西學生為多,桂南為S,桂北為N,桂東為E,桂西為W,桂中為M。廣西以外地區以another表示。
成績數據離散化處理:由于原始成績都為百分制,使得數據過于連續,難以進行區分。處理方法為:將總成績除以一百,再進行四舍五入。例:在其中一組數據49份P.E.成績中,學生的分數從158分至192分不等,出現三十余組數據。將其成績除以100再四舍五入,如158分的成績將化為1.6,192分的成績則化為1.9。整組P.E.成績便被劃分為了:1.6、1.7、1.8、1.9四個組別。
經過預處理后,得到的學生信息表內容如表3所示,部分數據整理示例如表4所示.
3.3 實驗步驟
(1)打開orange軟件。
(2)使用File部件負責所需分析數據的導入,Classification部件負責分類算法的選擇,Classification Tree Viewer 與 Classification Tree Graph部件分別代表決策樹的兩種不同表達形式。前者是以樹狀目錄表的形式表示ID3的分類結果,可以觀察到分類的數據細節,包括類別、閾值等。后者以圖形的方式表示ID3的分類結果,非常直觀。
將部件以單線相連,便可以實現由File所導入數據的決策樹輸出。
圖2 Orange Canvas部件連接圖
(3)雙擊File部件將出現數據導入界面,按提示操作即可完成實驗數據導入。
(4)導入數據后,回到Orange Canvas部件連接圖,此時數據已經通過Examples連接線段導入Classifiction Tree部件選擇了算法。Classifiction Tree的連接線段將其導入Classification Tree Viewer 部件和Classification Tree Graph部件。我們通過雙擊Classification Tree Viewer 與 Classification Tree Graph部件便可以得到決策樹的兩種表現形式。
Classification Tree Graph示例如圖3所示:
圖3 實驗結果Classification Tree Graph表示
3.4 實驗結果分析
從決策樹的分類結果我們可以看出:信息熵下降程度最大的分類屬性為math;其次為專業課成績introduceofcomputer。數據分布表現為:學生成績首先以math成績進行分類,math成績lt;1.250的學生成績評定都為D,math成績gt;1.250的學生成績評定以C為多,占有73.7%;其次在math成績gt;1.250的學生里以introduceofcomputer成績進行分類,introduceofcomputer成績lt;0.650的學生成績評定為為D,introduceofcomputer成績gt;0.650的學生成績評定為C,等等。
從以上成績的分布來看,影響計算機專業學生的專業成績的主要因素有兩個,一個是數學成績,一個是計算機導論成績。這說明了計算機專業本身是一個邏輯性很強的專業,數學能力較強的學生比較容易適應這個專業的學習。另一方面,計算機專業也是一個應用型的專業,要求學生有較強的動手能力,反映到成績上,表現為一年級的學生如果在計算機導論的成績較好,說明這些學生對計算機的操作熟練,對這個專業有直觀具體的認識,因而在后面的專業學習中成績也較好。
4.結論
本文以orange機器學習軟件為工具,以廣西師范學院計算機本科專業學生的基本信息和成績數據作為處理對象,對如何利用orange軟件中的決策樹算法對計算機專業的本科生的成績分布進行了數據處理及分析,提供了詳細的實驗步驟和方案。數據分析得到的結論符合計算機學科特點,能夠為學院領導在專業培養計劃的制定中提供科學的依據。
參考文獻
[1]劉曉芬.決策樹分類算法及其在高校學生就業中的應用研究[D].湖北大學碩士學位論文.2012:26-32.
[2]廖芹,郝志峰,陳志宏.數據挖掘與數學建模[M].國防工業出版社,2010:153-154.
[3]胡文瑜,孫志揮,吳英杰.數據挖掘取樣方法研究[J]. 計算機研究與發展,2011,48(1).45-54.
[4] 范明,孟小峰譯.數據挖掘概念與技術[M].機械工業出版社,2012.
[5]劉春陽.數據挖掘技術在高校成績管理中的應用研究[D].大連交通大學工程碩士學位論文.2009:29-4.
作者簡介:
王宇紅(1991—),女,廣西桂林人,現就讀于廣西師范學院計算機與信息工程學院。
馬?。?993—),男,山東龍口人,現就讀于廣西師范學院計算機與信息工程學院。
通訊作者:覃曉(1973—),女,廣西環江人,碩士,廣西師范學院副教授,研究方向:數據挖掘。