徐 怡,余 浩,劉 剛,倪治偉
(1.安徽大學(xué) 計(jì)算智能與信號處理教育部重點(diǎn)實(shí)驗(yàn)室,安徽 合肥 230039;2.安徽大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,安徽 合肥 230601;3.安徽大學(xué) 互聯(lián)網(wǎng)學(xué)院,安徽 合肥 230039)
在如今的社會環(huán)境中,大學(xué)生在入學(xué)前承受壓力大,課業(yè)繁重,部分學(xué)生存在或多或少的心理健康問題。但是心理健康的影響因素復(fù)雜,比如是否為單親家庭,性格類型,參加課外活動(dòng)的情況等等,各因素的重要程度也有差別,同時(shí)其內(nèi)在聯(lián)系也模糊不清,對高校的策略制定提出了嚴(yán)峻的挑戰(zhàn)。因此,利用科學(xué)的方法找出影響因素,挖掘出有指導(dǎo)意義的依賴規(guī)則就變得十分重要。
波蘭學(xué)者Z.Pawlak在1982年提出的粗糙集理論是一種能夠定量分析處理不完整、不一致、不精確性信息與知識和不確定性的數(shù)學(xué)工具[1]。粗糙集理論與其他理論在處理不確定和不精確的問題的區(qū)別是,它不需要提供數(shù)據(jù)集合以外的任何先驗(yàn)信息處理這個(gè)問題,所以問題的不確定性的描述或處理可以更加客觀[2]。基于粗糙集理論的應(yīng)用研究主要集中在屬性約簡、規(guī)則獲取等方面,基于粗糙集的理論發(fā)展為數(shù)據(jù)挖掘提供了許多有效的方法[3]。決策集的一種樹結(jié)構(gòu),決策樹方法具有速度快、易于轉(zhuǎn)換為簡單易懂的分類規(guī)則等優(yōu)點(diǎn)。
對于決策樹,數(shù)據(jù)的準(zhǔn)備往往是簡單或者是不必要的,而且能夠同時(shí)處理數(shù)據(jù)型和常規(guī)型屬性,在相對短的時(shí)間內(nèi)能夠?qū)Υ笮蛿?shù)據(jù)源做出可行且效果良好的結(jié)果。
文中首先設(shè)計(jì)了高校心理健康狀態(tài)調(diào)查問卷,面向本校大一到大四的學(xué)生分發(fā)調(diào)查問卷收集數(shù)據(jù),經(jīng)過離散化處理后,利用粗糙集理論中基于信息熵的屬性約簡算法找出影響大學(xué)生心理健康的關(guān)鍵因素,最后利用基于屬性重要度的決策樹規(guī)則提取算法挖掘出影響因素與心理健康程度的依賴關(guān)系,得到支持度、置信度高的規(guī)則集。
通過實(shí)驗(yàn)、評估驗(yàn)證了規(guī)則集的有效性。研究成果可以指導(dǎo)高校制定出具有針對性的改善大學(xué)生心理健康的政策,從而準(zhǔn)確及時(shí)地幫助存在心理健康隱患的大學(xué)生。
為引出粗糙集的屬性約簡算法,下面介紹文中涉及到的粗糙集的基本概念[4-6]:
定義1:完整的信息系統(tǒng)S,可以用四元組表示為S={U,R,V,f},簡記為S={U,R}。U={x1,x2,…,xn}是一個(gè)由有限個(gè)對象構(gòu)成的論域,A=C∪D表示域?qū)傩约?其中C={a1,a2,…,an}是條件屬性,D=nph55zl為決策屬性;V表示屬性值域;f是信息函數(shù)從U×R到V的信息函數(shù),即f:U×R→V,用于表示記錄x在屬性a∈A上的取值。
定義2:任取非空屬性子集B?R,如果對xi,xj∈U,?r∈B,f(xi,r)=f(xj,r)均成立,則B為不可分辨關(guān)系,記為Ind(B)。Ind(B)即可把論域∪中分為若干個(gè)等價(jià)類,等價(jià)類的集合記為∪=Ind(B),為基本集。另外如果不存在集合X表示成某些基本集的并時(shí),稱X為B粗糙集。
定義3:任取子集X?U,則X關(guān)于知識R的上近似和下近似是:
R-(X)={x∈U,[x]R∩X≠?}
R-(X)={x∈U,[x]R?X}
其中,[x]R表示元素x的R等價(jià)類。確定域Pos(X)表示U中在R下能確定歸入集合X的元素的集合,否定域表示為Neg(X)。
定義4:在數(shù)據(jù)規(guī)約中,利用兩個(gè)屬性集合P,R?Q之間的相互依賴程度可以確定一個(gè)屬性a的重要度。屬性P對R的依賴程度用γR(p)表示。
屬性a加入R,對于分類U/P的重要程度定義如下:
SGF(a,R,P)=γR(p)-γR-|a|(p)
定義5:屬性集合P的信息熵H(P):
定義6:設(shè)U是一個(gè)論域,P是U的一個(gè)條件屬性集集合,d為決策屬性,r∈P是核屬性的充分必要條件為:
H(rjnhb3p|P) 下面介紹基于信息熵的粗糙集屬性約簡算法。 如果一個(gè)集合有無一個(gè)屬性對于它對決策表的條件信息熵的大小不造成任何改變,表明這個(gè)屬性就可以被約簡[7-9]。 輸入:決策表DT=(U,C∪D)。 主要步驟: Step1:令決策屬性集合為D,條件屬性集合為C,計(jì)算D的信息熵H(D)。 Step2:計(jì)算決策表中屬性集C對決策屬性D的互信息量I(C,D)。 Step3:求核屬性core。 (1)初始化core為空集; (2)?a∈C,若有f(x,C-a)=f(y,C-a),a就是核屬性。 Step4:令core為R,計(jì)算R對決策屬性D的互信息量I(R,D)。 Step5:對?a∈C-R,計(jì)算其對D的互信息量最大的屬性,R=R∪a。 Step6:計(jì)算此屬性集R對決策屬性D的互信息量I。當(dāng)屬性集R的I和全部C的I相等時(shí),則結(jié)束;否則轉(zhuǎn)向Step5。 得到的約簡集需通過規(guī)則提取才能得到有指導(dǎo)意義的規(guī)則集。下面介紹基于決策樹的規(guī)則提取算法。 要理解好決策樹,首先說明一些基本概念及其決策樹的使用過程0-0。再以概念為基礎(chǔ)介紹基于決策樹的規(guī)則提取算法,支持度和置信度的概念[10-13]。 決策樹是知識表示的一種形式。決策樹具有樹結(jié)構(gòu),樹結(jié)構(gòu)由多個(gè)節(jié)點(diǎn)和分支組成。決策樹的第一個(gè)節(jié)點(diǎn)稱為根節(jié)點(diǎn),根節(jié)點(diǎn)是應(yīng)用決策樹時(shí)的唯一入口點(diǎn)。下面的根節(jié)點(diǎn)和內(nèi)部節(jié)點(diǎn)選擇一個(gè)屬性組,換句話說,它們會在內(nèi)部問一個(gè)問題,并將連接節(jié)點(diǎn)分支,和樹枝將有答案的可能值,稱為葉節(jié)點(diǎn)和終端節(jié)點(diǎn)決定節(jié)點(diǎn)用于確定預(yù)計(jì)值或?qū)τ谝粋€(gè)給定的類別分類。 決策樹的使用是通過決策樹變換的分類規(guī)則來確定未知類別數(shù)據(jù)對象的分類。 首先根據(jù)所建立的決策樹生成if-then格式的分類規(guī)則,然后在分類規(guī)則的前提下對所判斷數(shù)據(jù)對象的屬性值進(jìn)行比較。如果與規(guī)則的前提一致,則該規(guī)則的分類就是數(shù)據(jù)對象的類。 以建立決策規(guī)則樹為目的構(gòu)造決策樹算法。 Step1:在約簡屬性集中選擇AS(attribute significance)大的屬性作為節(jié)點(diǎn),如果各個(gè)屬性的AS相等,選擇復(fù)合程度最小的屬性,如果復(fù)合值再一致,則選擇序號較小的屬性。 Step2:依據(jù)所選的屬性進(jìn)行分類,然后對每個(gè)類重復(fù)上述操作,直到所有的類別中的決策屬性相等,或?qū)傩约蠟榭眨蛘邔傩赃x擇不能再繼續(xù)分類,從而產(chǎn)生相應(yīng)的葉子節(jié)點(diǎn)。選擇屬性后,將其從reduce屬性集中刪除,以確保所選屬性不會重復(fù)用于每個(gè)分支。 Step3:讀樹。每個(gè)葉子節(jié)點(diǎn)是一類,就是一個(gè)規(guī)則。 Support(支持度):表示同時(shí)包含A和B的屬性占所有屬性的比例。如果用P(A)表示使用A屬性的比例,那么Support=P(A&B)。支持度是該規(guī)則在決策表中的所占比例。 Confidence(置信度):表示使用包含A的屬性中同時(shí)包含B屬性的比例,即同時(shí)包含A和B的屬性占包含A屬性的比例。公式為:Confidence=P(A&B)/P(A)。置信度計(jì)算方法是該規(guī)則和該規(guī)則有關(guān)的全部不相容規(guī)則比例。舉例如表1所示,其中β表示規(guī)則在表的個(gè)數(shù),D為決策屬性,假設(shè)決策表有100個(gè)元組。 表1 舉 例 則有: (1)CD=1/(1+4+1)×100%=16.7% SD=1/100×100%=1% (2)CD=4/(1+4+1)×100%=66.7% SD=4/100×100%=25% 文中選擇了通過面向本校大一到大四的學(xué)生分發(fā)問卷的形式收集數(shù)據(jù),通過抽樣調(diào)查得到的數(shù)據(jù)經(jīng)過篩選后具有一定的普遍性和可靠性。 對處理后的數(shù)據(jù)使用上文所介紹的算法得到規(guī)則集,然后通過支持度和置信度的計(jì)算驗(yàn)證了規(guī)則集的最簡性,再通過交叉測試驗(yàn)證分類精度的方法驗(yàn)證了規(guī)則集的有效性。 在進(jìn)行調(diào)查問卷之前,考慮到大學(xué)生的隱私問題和后期處理的方便,對調(diào)查問卷進(jìn)行了幾次修改。 本次實(shí)驗(yàn)面向本校大一到大四的學(xué)生隨機(jī)分發(fā)了300份調(diào)查問卷。剔除掉29份無效問卷后得到271份有效問卷。 首先建立大學(xué)生的心理健康特征決策表。在構(gòu)建所有大學(xué)生的心理健康特征決策表時(shí),將所有學(xué)生調(diào)查問卷視為論域U。將大學(xué)生心理健康的影響因素構(gòu)成條件屬性集C,心理健康總體評價(jià)作為決策屬性集D,得到?jīng)Q策表[14]。 利用第2節(jié)描述的基于信息熵的屬性約簡算法對決策表進(jìn)行處理,得到約簡后的屬性集:{a3,a5,a10,a13},分別表示性格類型、單親家庭、課外活動(dòng)、人際關(guān)系。 在屬性約簡的基礎(chǔ)上,利用第3節(jié)描述的規(guī)則提取算法對約簡后的決策表進(jìn)行處理,可以得出以下5條規(guī)則。 (1)Ifa5=0 anda13=1,thend=0 (2)Ifa5=0 anda3=0,thend=0 (3)Ifa3=0 anda13=0,thend=0 (4)Ifa3=1 anda13=1,thend=1 (5)Ifa10=1 anda13=1,thend=1 為驗(yàn)證所得規(guī)則為最簡規(guī)則,分別計(jì)算了5條規(guī)則的支持度和置信度,如表2所示[15]。 表2 CD和SD計(jì)算 % 由結(jié)果可知所有規(guī)則的CD即置信度均為1,即可推出不能去掉任一規(guī)則,即為最簡規(guī)則。如果在5條規(guī)則中加一條,例如: Ifa10=0 anda13=1,thend=0;則規(guī)則1的CD會變化為66.7%,SD也會下降,同理對規(guī)則3和規(guī)則4也會有同樣的影響。 驗(yàn)證了最簡性后,為了驗(yàn)證所得5條規(guī)則的有效性,從279分?jǐn)?shù)據(jù)隨機(jī)抽取部分?jǐn)?shù)據(jù)作為訓(xùn)練數(shù)據(jù),另一部分作為測試數(shù)據(jù),按照不同比率抽取,進(jìn)行三組交叉測試,每組100次,取100次的分類精度平均值作為最終的分類精度,結(jié)果如表3所示。 表3 分類精度測試結(jié)果 從結(jié)果中可以得到分類精度在60%以上,證明了規(guī)則集的有效性。同時(shí)訓(xùn)練數(shù)據(jù)與分類精度正相關(guān),進(jìn)一步證明了算法的可靠性和規(guī)則集的有效性。 經(jīng)過獲取數(shù)據(jù)、處理數(shù)據(jù)和數(shù)據(jù)挖掘之后得到的結(jié)果中可以認(rèn)識到影響大學(xué)生心理健康的主要因素為是否為單親家庭、學(xué)習(xí)情況和人際關(guān)系,有少許影響的為性格類型。在本研究中,了解到為單親家庭的同學(xué)更容易有心理問題。同時(shí)學(xué)習(xí)情況較差并且人際關(guān)系較差的同學(xué)也存在著心理健康風(fēng)險(xiǎn),性格類型對大學(xué)生心理健康的影響存在但并不顯著。與人們的認(rèn)知相同,性格外向?qū)W習(xí)情況好的同學(xué)普遍心理健康狀況好,這在收集問卷的過程中也有所體會。為了準(zhǔn)確地挖掘出影響大學(xué)生心理健康的因素,利用粗糙集的知識構(gòu)建了一種數(shù)據(jù)挖掘模型,并通過實(shí)驗(yàn)驗(yàn)證了其可靠性,可以協(xié)助高校有針對性地幫助可能存在心理健康問題的大學(xué)生,對提高大學(xué)生整體心理健康具有一定的指導(dǎo)價(jià)值。2 基于粗糙集理論的屬性約簡算法
3 基于決策樹的規(guī)則提取算法
3.1 決策樹概念
3.2 決策樹使用過程
3.3 算 法
3.4 支持度和置信度
4 實(shí)驗(yàn)分析
4.1 設(shè)計(jì)問卷
4.2 處理過程及結(jié)果
4.3 規(guī)則集有效性評估
5 結(jié)束語