徐 怡,湯天賀,張 屹,劉埠遠,張?zhí)硪?/p>
(安徽大學 計算機科學與技術(shù)學院,安徽 合肥 230601)
目前對于學生實踐能力的評估還是通過某些課程的分數(shù)或者人為觀察,得到的結(jié)果很可能與實際情況不符。這對于高?;蚪處熀饬繉W生綜合能力具有很大影響。標準的可以客觀準確評估學生實踐能力的規(guī)則體系對現(xiàn)階段教學是非常有必要的。文中通過對高校學生的真實數(shù)據(jù)進行處理,得到其中隱含的規(guī)則。具體做法是向高校大一至大四的學生發(fā)放調(diào)查問卷收集數(shù)據(jù),然后利用基于粗糙集的屬性約簡算法和規(guī)則提取算法對數(shù)據(jù)進行處理,最后通過實驗驗證導出規(guī)則的科學性。
文中運用的數(shù)據(jù)分析方法是基于粗糙集的屬性約簡和規(guī)則提取[1]。粗糙集是波蘭科學家Pawlak在1982年提出的一種處理模糊和不確定知識的數(shù)學工具[2-3]。它能有效地分析不精確、不一致性、不完整等各種不完備信息,還可以通過對數(shù)據(jù)的分析和推理,從中發(fā)現(xiàn)隱含的知識,揭示潛在的規(guī)則。目前,粗糙集已經(jīng)廣泛應用于各個領(lǐng)域,例如人工智能領(lǐng)域中的機器學習、知識獲取、分析決策等;也可以與其他軟計算方法結(jié)合,設計出更智能更有效的混合系統(tǒng)[4]。
利用粗糙集理論進行數(shù)據(jù)處理,提取數(shù)據(jù)中隱含的規(guī)則,最重要的一點就是對于屬性約簡和規(guī)則提取算法的研究。屬性約簡可以有效降低知識系統(tǒng)的維數(shù),而規(guī)則提取則在此基礎(chǔ)上從中得出有效的規(guī)則[5]。對于數(shù)量龐大的數(shù)據(jù)集來說,數(shù)據(jù)之間的聯(lián)系性通常代表特殊的現(xiàn)實意義。但由于數(shù)據(jù)庫的龐大,人工處理幾乎不可能,而引入粗糙集方法可以將大量數(shù)據(jù)精煉成規(guī)則形式描述的知識,便于分析[6-7]。
文中的粗糙集在規(guī)則提取方法中運用信息熵的概念,用來描述數(shù)據(jù)之間的相關(guān)性[8]。先運用粗糙集對收集的176份有效問卷進行屬性約簡,然后對約簡后的信息系統(tǒng)提取規(guī)則,最終得到影響學生實踐能力的具體因素。
文中涉及的相關(guān)概念如下[9-10]:
定義1:一個知識表達系統(tǒng)(或信息表)S可以表示成有序四元組S={U,A,V,F};U是論域,是全體樣本的集合;A代表屬性集合,A=C∪D,C是條件屬性集,反映的是對象的特征,D是決策屬性集,反映的是對象的類別;V是屬性值的集合,Vr表示屬性r的取值范圍;F為信息函數(shù),用于確定U中每一個對象x的屬性值;F∶U×A→V,即任一xi∈U,r∈A,則F(xi,r)=Vr。
設U為一個論域,對于屬于條件屬性集合C中的任一屬性集,都可以導出相應的等價劃分。
定義2:U/R表示U上由R導出的所有等價類。[x]R表示包含元素x∈U的R等價類,由同一屬性集導出的等價類中的對象在屬性集上是不可分辨的。例如,P是U上的一個等價類簇,如果Q∈P且Q≠?,則Q的所有等價類的交也是一個等價關(guān)系,記作IND(Q)。
定義3:P為等價關(guān)系簇,R∈P,如果有IND(P)=IND(P-{R}),則稱R是P中不必要的;否則R為P中必要的。如果每一個關(guān)系R∈P都是必要的,則P是獨立的,否則P為依賴的。
定義4:U為論域,Q和P是U上的兩個等價關(guān)系簇,且P包含Q,若Q是獨立的,且兩者劃分的等價關(guān)系相同,則Q是P的一個約簡,記作:RED(P)。P中所有絕對必要關(guān)系的集合稱為等價關(guān)系簇P的核,記作:CORE(P)。
文中采用的屬性約簡算法以核作為基礎(chǔ),逐漸擴充必要的屬性。為了對決策表中屬性重要度做有效度量,引入信息熵的概念。
定義5[11]:信息P的熵H(P)定義為:
文中用到的是條件屬性對于決策屬性的影響,進一步運用信息熵,得出關(guān)于決策屬性的條件信息熵。
定義6[12]:決策信息系統(tǒng)S={U,A=C∪D,V,F},C、D為U上的一個等價關(guān)系集合,C、D在U上導出的劃分分別為:
U/IND(C)={X1,X2,…,Xn}
U/IND(D)={Y1,Y2,…,Yn}
則D相對于C的條件信息熵H(D|C)為:
定義7:在決策信息系統(tǒng)S={U,A=C∪D,V,F}中,若?B?C,H(D|B)=H(D|C)且B相對于D是獨立的,則稱B是C關(guān)于D的屬性約簡。
定義8:設U是一個論域,P是U的一個條件屬性集合,D為決策屬性,則r∈P是核屬性的充分必要條件為H(D|P) 定義9:設S={U,A=C∪D,V,F}是一個決策信息系統(tǒng),其中C是條件屬性集合,D是決策屬性集合,且R?C,則對于任意屬性a∈C-R的重要度SGF(a,R,D)的定義為:SGF(a,R,D)=H(D|R)-H(D|R∪{a})。 當a添加進入C中,信息熵變化越大,a關(guān)于D越重要。 定義10[13]:U={x1,x2,…,xn},c∈C0,c(x)是對象x在屬性C上的值,D(x)是對象x在決策D上的值,則分辨矩陣記為M(S)=[cij]m*n,其i行j列處元素為: if c(xi)≠c(xj),D(xi)≠D(xj)thenc∈Celse0 屬性約簡對于一個信息系統(tǒng)來說非常重要,它可以減少信息系統(tǒng)的規(guī)模。即使用一部分屬性和數(shù)據(jù)就可以達到與之前相同的決策效果。通常信息系統(tǒng)中并不是所有屬性都一樣重要,而去掉冗余屬性的步驟被為稱屬性約簡,文中選用了基于信息熵的屬性約簡算法[14],即利用信息熵來區(qū)分屬性的重要程度。算法描述如下: 輸入:信息系統(tǒng)S={U,A=C∪D,V,F}即屬性集合,C是條件集合,D是決策集合; 輸出:信息系統(tǒng)的核與最小約簡P。 Step1:決策屬性集D相對條件屬性集合C的條件熵H(D|C)。 Step2:計算C中的核屬性集Core。 Step2.1:Core=?; Step2.2:對于每個a∈C,IFH(D|C) Step2.3:輸出Core。 Step3:約簡。 Step3.1:P=Core,B=C-Core; Step3.2:計算條件信息熵H(D|P),IFH(D|P)=H(D|C)轉(zhuǎn)Step4,否則繼續(xù)執(zhí)行; Step3.3:對于每個r∈B,計算條件信息熵H(D|P∪{r}),求SGF({r})=H(D|P)-H(D|P∪{r}); Step3.4:選擇SGF({r})最大的屬性r,B=B-{r},P=P+{r},同時把SGF為零的屬性值去掉; Step3.5:轉(zhuǎn)Step3.2。 Step4:輸出約簡P。 算法的核心思想就是從核屬性集開始,對剩下的屬性計算條件信息熵。條件信息熵的值為0,表示此屬性對于信息系統(tǒng)是不必要的。以此作為判斷條件,進行多輪計算,直到現(xiàn)有屬性集可以替代原來的屬性集。 屬性約簡縮小了數(shù)據(jù)的規(guī)模。但是約簡后的數(shù)據(jù)仍然有冗余。規(guī)則提取就是進一步地去掉不必要的信息,刪除每個樣本中的多余屬性值。用少量的數(shù)據(jù)值就可以區(qū)分一條樣本。由于處理的數(shù)據(jù)量較少,所以文中選用的是基于分辨矩陣的規(guī)則提取算法,該算法較為簡單,也容易實現(xiàn)。中間加入了一些啟發(fā)式信息,來提高效率。 算法描述如下[15-16]: 輸入:信息系統(tǒng)S={U,A=C∪D,V,F}即屬性集合,C是條件集合,D是決策集合; 輸出:規(guī)則集R。 Step1:根據(jù)S構(gòu)造分辨矩陣M。 Step2:計算每行的核屬性集C。 Step2.1:C=?; Step2.2:對于M的一行來說,它的核屬性集C是一行中所有屬性個數(shù)為一的元素的集合。 Step3:更改M。 Step3.1:i為M的行數(shù),j為M的列數(shù); Step3.2:IFM[i][j]∩C≠? THENM[i][j]=?; Step3.3:對于M的一行來說,IF所有元素的并集為空,轉(zhuǎn)Step4,否則繼續(xù)執(zhí)行; Step3.4:挑選M的一行中出現(xiàn)次數(shù)最多的一個屬性r,C=C+{r},轉(zhuǎn)Step3.2。 Step4:輸出規(guī)則。 Step4.1:對于M的第i行,此時得到規(guī)則:核屬性集C中的屬性對于第i行決策表中的描述→決策表第i行的決策值; Step4.2:對M的每一行進行處理。 算法首先構(gòu)建差別矩陣,其中的一行代表此條知識與其他知識的區(qū)分情況。對每一行求出所對應的核屬性,然后用非核屬性填充到核屬性集合,直到核屬性集合可以唯一區(qū)分此條知識。得到的核屬性集合及其值構(gòu)成了規(guī)則,下面通過實驗將對規(guī)則進行分析處理,包括置信度、覆蓋度、支持度的計算,以及驗證。 為了得到大量數(shù)據(jù)研究影響大學生實踐能力的關(guān)鍵因素,設計出一份有關(guān)大學生實踐能力調(diào)查的調(diào)查問卷,問卷內(nèi)容分別從個人信息、個人生活與學習習慣以及對實踐的態(tài)度三個主要方面入手。本問卷共設置20個問項,其中總成績排名、小學期實習成績、暑期實踐活動完成的情況、評價自己實踐能力四條,根據(jù)不同的選項分別設置分數(shù)為0、1、2、3分,分數(shù)相加所得的結(jié)果作為實踐能力的決策屬性。總分在區(qū)間0-7分者實踐能力弱,在區(qū)間9-12分者實踐能力強。為方便數(shù)據(jù)處理,所有問項設置為單項選擇,每個答案相互獨立。具體的調(diào)查問卷見表1。 表1 問卷表 問卷的發(fā)放對象主要為在校大二到大四學生??偣彩盏?00份問卷,去除隨意填寫以及填寫不完整的問卷,真實有效的問卷數(shù)量為176份。因大一新生參與實踐的機會和相關(guān)評價指標較少,為使得到的結(jié)果更為準確,更加具有普遍性,在所得176份有效問卷中,大一新生所占比例較少,僅占比約11%。 根據(jù)第2節(jié)中所提到的基于信息熵的屬性約簡算法對收集到的176份數(shù)據(jù)進行屬性約簡,約簡結(jié)果為以下10條屬性:性格,做事風格,重視學科遷移,積極主動和他人交流,課余時間,遇到問題,幾個社團,公益或志愿者,學習成績還是實踐能力,自己動手做事。 基于第3節(jié)中所提到的分辨矩陣方法將屬性約簡的結(jié)果進行進一步處理,得到10條覆蓋度0.5以上,支持度0.4以上,置信度0.8以上有效規(guī)則,如表2所示。 表2 規(guī)則表 為驗證所得到規(guī)則的準確性,從所有的176份數(shù)據(jù)中分別隨機抽取60%,70%,80%,90%的數(shù)據(jù)作為訓練數(shù)據(jù),其他數(shù)據(jù)作為測試數(shù)據(jù)進行交叉測試。每組測試100次,將測試結(jié)果取平均值,所得結(jié)果統(tǒng)計如表3所示。從表3可以看出當抽取的數(shù)據(jù)比例在50%~90%之間時,分類精度可達到0.6以上,并且隨著訓練集的不斷增加,所得到的分類精度也趨于穩(wěn)定,說明實驗所采用的基于信息熵的屬性約簡算法與規(guī)則提取算法得出了可靠性較高的結(jié)果。 表3 測試抽取比例表 由以上研究數(shù)據(jù)可得出影響大學生實踐能力的關(guān)鍵因素以及推測大致導致其有相關(guān)性的原因:自己動手做事情的積極性、自主學習的積極性與實踐能力呈正相關(guān),而遇到問題時傾向請求他人幫忙與實踐能力呈負相關(guān)。具體表現(xiàn)為學生對實踐本身的內(nèi)心接納程度越高,學習與接受能力越強,實踐能力也越強;另外從結(jié)果中得出的一條規(guī)則得出,在課余時間進行網(wǎng)上娛樂的學生的實踐能力相比在課余時間進行自主學習的學生實踐能力更弱,從而印證了上述觀點。實驗中得出的其中一條結(jié)論引人注目:認為實踐能力相對于學習成績更為重要的學生實踐能力更弱,而認為學習成績更重要的學生往往實踐能力也很好。這說明實踐能力的提高需要以理論知識為基礎(chǔ),實踐也即為所學理論知識的驗證。二者相輔相成,不可分而論之。而大學社團對于學生的實踐能力也存在一定的影響,社團所提供的工作與交流環(huán)境將更有助于培養(yǎng)學生的實踐能力。 根據(jù)以上研究成果所得出的結(jié)論以及原因的推測可以幫助高校制定出臺相關(guān)的規(guī)則制度,也可幫助教師抓住如何提升學生實踐能力的關(guān)鍵所在,并改進實踐授課方法,從而使學生更愿意動手實踐,采取正確的實踐方法,進而提升學生的實踐能力。 為了準確了解影響高校學生實踐能力的關(guān)鍵因素,以提高學生的實踐能力,通過對文中設計的調(diào)查問卷進行分析,利用粗糙集理論的屬性約簡和規(guī)則提取算法,從決策表中提取影響高校學生實踐能力的關(guān)鍵因素,導出規(guī)則集。通過實驗驗證了該規(guī)則集的有效性。研究成果可以對高校教學工作的開展提供參考,繼而提高學生的實踐能力。2 屬性約簡算法
3 規(guī)則提取算法
4 實驗分析
4.1 數(shù)據(jù)收集
4.2 數(shù)據(jù)處理
5 結(jié)束語