鬼佬大哥大
  • / 11
  • 下載費用:30 金幣  

馬爾科夫毯嵌入式的基于封裝的特征選擇方法.pdf

摘要
申請專利號:

CN201510534505.0

申請日:

2015.08.25

公開號:

CN105205349A

公開日:

2015.12.30

當前法律狀態:

授權

有效性:

有權

法律詳情: 授權|||實質審查的生效IPC(主分類):G06F 19/20申請日:20150825|||公開
IPC分類號: G06F19/20(2011.01)I; G06F19/24(2011.01)I 主分類號: G06F19/20
申請人: 合肥工業大學
發明人: 楊靜; 王愛國; 安寧
地址: 230009 安徽省合肥市包河區屯溪路193號
優先權:
專利代理機構: 安徽省合肥新安專利代理有限責任公司 34101 代理人: 陸麗莉;何梅生
PDF完整版下載: PDF下載
法律狀態
申請(專利)號:

CN201510534505.0

授權公告號:

||||||

法律狀態公告日:

2018.08.03|||2016.01.27|||2015.12.30

法律狀態類型:

授權|||實質審查的生效|||公開

摘要

本發明公開了一種馬爾科夫毯嵌入式的基于封裝的特征選擇方法,其特征是按如下步驟進行:1利用五折交叉驗證方法獲得最優特征;2判斷最優特征是否為空集,若為空集,則完成特征選擇,否則更新的特征子集;3、利用馬爾科夫毯方法刪除冗余特征,從而更新特征向量;4判斷特征向量是否為空集,若為空集則完成特征選擇,否則重復步驟2。本發明能夠獲得高質量的特征子集,同時降低基于封裝的特征選擇方法的時間復雜度,從而獲得較好的分類性能和時間性能。

權利要求書

權利要求書
1.  一種馬爾科夫毯嵌入式的基于封裝的特征選擇方法,是應用于由m個實例組成的數據集Data中,記為Data={inst1,inst2,…,insti,…,instm};insti表示第i個實例;1≤i≤m;第i個實例insti由n個特征和一個類別變量Ci組成;表示第i個實例insti中第j個特征,1≤j≤n;由m個實例的第j個特征組成第j個特征向量,記為從而獲得由n個特征向量所構成的數據集Data的特征向量,記為D={f1,f2,…,fj,…,fn};由m個實例的類別變量組成類別向量,記為C={C1,C2,…,Ci,…,Cm};其特征是,所述特征選擇方法是按如下步驟進行:
步驟1、定義循環次數k,并初始化k=1;定義特征子集S,并初始化
步驟2、根據特征子集S,利用五折交叉驗證方法從特征向量D中選擇能與特征子集S構成最優特征組的第k次循環的最優特征,記為
步驟3、判斷是否成立,若成立,則表示完成特征選擇,并獲得特征子集S;若不成立,則將第k次循環的最優特征加入特征子集S中,從而獲得更新的特征子集S′;
步驟4、將更新的特征子集S′賦值給特征子集S;
步驟5、利用馬爾科夫毯方法從特征向量D中刪除第k次循環的最優特征以及與第k次循環的最優特征相冗余的特征,從而獲得更新的特征向量D′;
步驟6、將更新的特征向量D′賦值給特征向量D;
步驟7、判斷特征向量D是否為空集,若為空集,則表示完成特征選擇,并獲得特征子集S;若不為空集,則將k+1賦值給k;并返回步驟2執行。

2.  根據權利要求1的特征選擇方法,其特征是,五折交叉驗證方法是按如下步驟進行:
步驟2.1、定義準確率變量為定義標識符為flag,并初始化flag=false;
步驟2.2、判斷是否成立,若成立,則初始化否則,執行步驟2.3;
步驟2.3、將數據集Data映射在特征子集S與類別向量C上,獲得約減數據集Data0;
步驟2.4、將約減數據集Data0中的實例均分為五份,分別選取其中的每一份作為測試集,剩余的四份作為訓練集用于訓練分類器,從而獲得五個測試準確率,記為acc0={acc1,acc2,acc3,acc4,acc5}以及平均準確率,記為
步驟2.5、初始化j=1;
步驟2.6、將數據集Data映射在特征子集S、類別向量C和第j個特征fj上,獲得第j個約減數據集Dataj;
步驟2.7、將第j個約減數據集Dataj中的實例均分為五份,分別選取其中的每一份作為測試集,剩余的四份作為訓練集用于訓練分類器,從而獲得關于第j個特征fj的五個測試準確率,記為accj={acc1(j),acc2(j),acc3(j),acc4(j),acc5(j)}]]>以及第j個平均準確率,記為acc‾j=Σt=15acct(j);]]>
步驟2.8、判斷且的個數大于所設定的閾值是否同時滿足;當同時滿足時,令flag=true;將第j個特征fj作為最優特征;并將賦值給從而更新
步驟2.9、將j+1賦值給j,判斷j≤n是否成立,若成立,則返回步驟2.6執行;若不成立,則判斷flag=true是否成立,若成立,則將第j個特征fj作為第k次循環的最優特征否則,令后,將第j個特征fj作為第k次循環的最優特征

3.  根據權利要求1或2的特征選擇方法,其特征是,步驟5中的馬爾科夫毯方法是按如下步驟進行:
步驟5.1、定義冗余特征下標集合為index,初始化
步驟5.2、初始化j=1;
步驟5.3、利用式(1)計算第j個特征fj與類別變量C之間的相關性SU(fj,C):
SU(fj,C)=2×(H(C)-H(C|fj))H(C)+H(fj)---(1)]]>
式(1),H(fj)表示第j個特征fj的信息熵;H(C)表示類別變量C的信息熵;H(C|fj)表示在第j個特征fj條件下類別變量C的條件信息熵;
步驟5.4、利用式(2)計算第k次循環的最優特征與類別變量C之間的相關性
SU(fk(s),C)=2×(H(C)-H(C|fk(s)))H(C)+H(fk(s))---(2)]]>
步驟5.5、利用式(3)計算第k次循環的最優特征和第j個特征fj之間相關性
SU(fk(s),fj)=2×(H(fj)-H(fj|fk(s)))H(fj)+H(fk(s))---(3)]]>
步驟5.6、根據式(4)和式(5)判斷第j個特征fj是否為冗余特征;
SU(fk(s),C)≥SU(fj,C)---(4)]]>
SU(fk(s),fj)≥SU(fj,C)---(5)]]>
若式(4)和式(5)同時成立,則表示第j個特征fj為冗余特征,并將fj的下標j加入到冗余特征下標集合index中,從而獲得更新的下標集合index′;
步驟5.7、將更新的下標集合index′賦值給冗余特征下標集合index;
步驟5.8、將j+1賦值給j,判斷j≤n是否成立,若成立,則返回步驟3執行;否則,執行步驟5.9;
步驟5.9、根據冗余特征下標集合index,從特征向量D中刪除下標包含在index中的特征向量。

說明書

說明書馬爾科夫毯嵌入式的基于封裝的特征選擇方法
技術領域
本發明屬于數據挖掘領域,具體地說是一種馬爾科夫毯嵌入式的基于封裝的特征選擇方法。
背景技術
特征選擇作為一種數據預處理技術,廣泛地應用在機器學習和數據挖掘任務中,例如分類、回歸以及聚類等問題。當數據的原始特征空間包括與目標任務不相關或冗余的特征時,在整個特征空間上構建的分類器往往具有較差的性能,例如樸素貝葉斯分類器對冗余的特征比較敏感。特征選擇的目的是應用有效的特征選擇方法從原始特征空間中選出一組具有判別能力的特征。有效的特征選擇方法不僅能夠降低原始特征空間的維度,而且可以降低分類器的訓練時間,提高其泛化能力,更重要的是可以幫助研究人員找到一組反映目標任務的重要屬性,增強分類器的可解釋性。例如,在基于微整列數據的癌癥診斷中,通過特征選擇方法找出與特定癌癥相關的基因,可以提高癌癥預測的準確率,同時這些篩選出來的基因可能是靶點基因,能夠降低尋找生物靶點的實驗成本。
基于封裝的特征選擇方法在特征選擇過程中使用某個分類器評價候選特征的優劣。由于特征選擇過程與分類算法之間特定的相互作用,基于封裝的特征方法一般具有較好的分類準確性。雖然基于封裝的特征選擇方法能夠獲得高質量的特征子集和較好的分類準確率,但其較高的時間復雜度在一定程度上影響了該類方法在實際中的廣泛應用。
該類方法的主要缺點包括,
(1)在每一步的特征選擇過程中,通過封裝的方式,以分類準確率或分類錯誤率作為評估準則衡量每個候選特征的優劣,該過程需要執行大量的封裝評估,即評估每個候選特征時,需要經歷訓練分類器和測試分類器性能兩個階段;
(2)不能快速地識別候選特征集合中的冗余特征,并且這些冗余特征一直保留在候選特征集合中直到特征選擇方法運行結束,導致重復地評估這些冗余特征。
發明內容
本發明為克服現有技術存在的不足之處,提出一種馬爾科夫毯嵌入式的基于封裝的特征選擇方法,以期能夠獲得高質量的特征子集,同時降低基于封裝的特征選擇方法的時間復雜度,從而獲得較好的分類性能和時間性能。
本發明為解決技術問題采用如下技術方案:
本發明一種馬爾科夫毯嵌入式的基于封裝的特征選擇方法,是應用于由m個實例組成的數據集Data中,記為Data={inst1,inst2,…,insti,…,instm};insti表示第i個實例;1≤i≤m;第 i個實例insti由n個特征和一個類別變量Ci組成;表示第i個實例insti中第j個特征,1≤j≤n;由m個實例的第j個特征組成第j個特征向量,記為從而獲得由n個特征向量所構成的數據集Data的特征向量,記為D={f1,f2,…,fj,…,fn};由m個實例的類別變量組成類別向量,記為C={C1,C2,…,Ci,…,Cm};其特點是,所述特征選擇方法是按如下步驟進行:
步驟1、定義循環次數k,并初始化k=1;定義特征子集S,并初始化
步驟2、根據特征子集S,利用五折交叉驗證方法從特征向量D中選擇能與特征子集S構成最優特征組的第k次循環的最優特征,記為
步驟3、判斷是否成立,若成立,則表示完成特征選擇,并獲得特征子集S;若不成立,則將第k次循環的最優特征加入特征子集S中,從而獲得更新的特征子集S′;
步驟4、將更新的特征子集S′賦值給特征子集S;
步驟5、利用馬爾科夫毯方法從特征向量D中刪除第k次循環的最優特征以及與第k次循環的最優特征相冗余的特征,從而獲得更新的特征向量D′;
步驟6、將更新的特征向量D′賦值給特征向量D;
步驟7、判斷特征向量D是否為空集,若為空集,則表示完成特征選擇,并獲得特征子集S;若不為空集,則將k+1賦值給k;并返回步驟2執行。
本發明所述的特征選擇方法的特點也在于,五折交叉驗證方法是按如下步驟進行:
步驟2.1、定義準確率變量為定義標識符為flag,并初始化flag=false;
步驟2.2、判斷是否成立,若成立,則初始化否則,執行步驟2.3;
步驟2.3、將數據集Data映射在特征子集S與類別向量C上,獲得約減數據集Data0;
步驟2.4、將約減數據集Data0中的實例均分為五份,分別選取其中的每一份作為測試集,剩余的四份作為訓練集用于訓練分類器,從而獲得五個測試準確率,記為acc0={acc1,acc2,acc3,acc4,acc5}以及平均準確率,記為
步驟2.5、初始化j=1;
步驟2.6、將數據集Data映射在特征子集S、類別向量C和第j個特征fj上,獲得第j個 約減數據集Dataj;
步驟2.7、將第j個約減數據集Dataj中的實例均分為五份,分別選取其中的每一份作為測試集,剩余的四份作為訓練集用于訓練分類器,從而獲得關于第j個特征fj的五個測試準確率,記為以及第j個平均準確率,記為acc‾j=Σt=15acct(j);]]>
步驟2.8、判斷且的個數大于所設定的閾值是否同時滿足;當同時滿足時,令flag=true;將第j個特征fj作為最優特征;并將賦值給從而更新
步驟2.9、將j+1賦值給j,判斷j≤n是否成立,若成立,則返回步驟2.6執行;若不成立,則判斷flag=true是否成立,若成立,則將第j個特征fj作為第k次循環的最優特征否則,令后,將第j個特征fj作為第k次循環的最優特征
步驟5中的馬爾科夫毯方法是按如下步驟進行:
步驟5.1、定義冗余特征下標集合為index,初始化
步驟5.2、初始化j=1;
步驟5.3、利用式(1)計算第j個特征fj與類別變量C之間的相關性SU(fj,C):
SU(fj,C)=2×(H(C)-H(C|fj))H(C)+H(fj)---(1)]]>
式(1),H(fj)表示第j個特征fj的信息熵;H(C)表示類別變量C的信息熵;H(C|fj)表示在第j個特征fj條件下類別變量C的條件信息熵;
步驟5.4、利用式(2)計算第k次循環的最優特征與類別變量C之間的相關性
SU(fk(s),C)=2×(H(C)-H(C|fk(s)))H(C)+H(fk(s))---(2)]]>
步驟5.5、利用式(3)計算第k次循環的最優特征和第j個特征fj之間相關性
SU(fk(s),fj)=2×(H(fj)-H(fj|fk(s)))H(fj)+H(fk(s))---(3)]]>
步驟5.6、根據式(4)和式(5)判斷第j個特征fj是否為冗余特征;
SU(fk(s),C)≥SU(fj,C)---(4)]]>
SU(fk(s),fj)≥SU(fj,C)---(5)]]>
若式(4)和式(5)同時成立,則表示第j個特征fj為冗余特征,并將fj的下標j加入到冗余特征下標集合index中,從而獲得更新的下標集合index′;
步驟5.7、將更新的下標集合index′賦值給冗余特征下標集合index;
步驟5.8、將j+1賦值給j,判斷j≤n是否成立,若成立,則返回步驟3執行;否則,執行步驟5.9;
步驟5.9、根據冗余特征下標集合index,從特征向量D中刪除下標包含在index中的特征向量。
與已有技術相比,本發明的有益效果體現在:
1、本發明提出的馬爾科夫毯嵌入式的基于封裝的特征選擇方法,是基于馬爾科夫毯技術的,能夠快速地識別和刪除冗余特征。一方面,由于該方法刪除的冗余特征所包含的關于目標變量的信息都已經包含在已經選擇的特征子集中,這保證候選特征集合中包含目標變量額外信息的特征沒有被刪除;另一方面,由于從候選特征集合中刪除冗余的特征可以減小候選特征集合的大小,進而減少了需要執行的封裝評估的次數,能夠加快基于封裝的特征選擇方法,具有較好的時間復雜性。因此,本發明提出的方法能夠保證選取具有判別能力的特征,同時能夠快速地識別冗余特征并將其從候選特征集合中刪除。
2、本發明所提出的方法實質上是一種混合的特征選擇方法,同時具有基于過濾的特征選擇方法的快速性和基于封裝的特征選擇方法的有效性;通過嵌入馬爾科夫毯,基于封裝的特征選擇方法不僅能夠選擇與目標變量相關的特征,而且能夠高效地識別并刪除冗余特征,最終獲得高質量的特征子集,達到數據降維的目的。
3、本發明采用馬爾科夫方法進行冗余特征的識別和刪除,該方法不僅能發現變量之間的線性相關性,而且能夠刻畫變量之間的非線性相關性。因此,能夠更有效地選出一組與目標類別具有高相關性,同時彼此之間低冗余性的特征。
4、本發明所提出的方法可用于各類數據分析任務中;例如將方法應用于基因表達數據分析、圖像處理、文本分類等領域有助于研究人員發現與目標任務密切相關的屬性,從而更好 地理解待考察的對象。
具體實施方式
本實施例中,假設所研究的對象是由m個實例組成的數據集Data,記為Data={inst1,inst2,…,insti,…,instm},例如,數據集Data可以是微陣列基因表達數據;insti表示第i個實例;1≤i≤m;第i個實例insti由n個特征即微陣列數據中的基因,和一個類別變量Ci組成,即微陣列樣本對應的類別,如癌癥/正常;表示第i個實例insti中第j個特征,1≤j≤n;由m個實例的第j個特征組成第j個特征向量,記為從而獲得m個實例的n個特征向量,記為f={f1,f2,…,fj,…,fn};由m個實例的類別變量組成類別向量,記為C={C1,C2,…,Ci,…,Cm};由n個特征向量f和類別向量C構成數據集Data的屬性向量Dvar={f1,f2,…,fj,…,fn,C};由n個特征向量f構成數據集Data的特征向量D={f1,f2,…,fj,…,fn};
一種馬爾科夫毯嵌入式的基于封裝的特征選擇方法是按如下步驟進行:
步驟1、定義循環次數k,用于記錄特征選擇的迭代次數;并初始化k=1;定義特征子集S,并初始化S用于保存特征選擇算法最終選擇的特征;
步驟2、根據特征子集S,利用五折交叉驗證方法從特征向量D中選擇能與特征子集S構成最優特征組的第k次循環的最優特征,記為
具體地,k=1時,用于從特征向量D={f1,f2,…,fj,…,fn}中選出一個最優的特征并將其記錄到S中,k=2時,用于從特征向量D\f1s(表示將從D中刪除后得到的集合)中選出第二個特征(D\f1s表示將從D中刪除后得到的集合),該特征與已選擇的特征S構成當前最優的特征組;
步驟2.1、定義準確率變量為定義標識符為flag,并初始化flag=false;flag用于記錄在第k次循環中能否找出一個更好的特征;
步驟2.2、判斷是否成立,若成立,則初始化因為當時,無法構建分類器,因此需要初始化分類準確率否則,執行步驟2.3;
步驟2.3、將數據集Data映射在特征子集S與類別向量C上,獲得約減數據集Data0,Data0中的特征是Data中的特征的一個子集;
步驟2.4、將約減數據集Data0中的實例均分為五份,實際應用中,由于樣本數目可能不是5的整數倍,是將Data0中的實例分成五份,每份中的樣本個數大致相同;分別選取其中的每一份作為測試集,剩余的四份作為訓練集用于訓練分類器,以保證每個實例都有一次作為測試集的機會,從而獲得五個測試準確率,記為acc0={acc1,acc2,acc3,acc4,acc5}以及平均準確率,記為
步驟2.5、初始化j=1;
步驟2.6、將數據集Data映射在特征子集S、類別向量C和第j個特征fj上,獲得第j個約減數據集Dataj;
步驟2.7、將第j個約減數據集Dataj中的實例均分為五份,分別選取其中的每一份作為測試集,剩余的四份作為訓練集用于訓練分類器,從而獲得關于第j個特征fj的五個測試準確率,記為以及第j個平均準確率,記為acc‾j=Σt=15acct(j);]]>
步驟2.8、判斷且的個數大于所設定的閾值是否同時滿足,表示返回的5個準確率中,至少有mf個大于實際應用中,推薦的閾值mf取值為2或3,這種做法能夠避免在小樣本量數據集上進行統計測試,同時可以很好地控制噪聲和過擬合問題;當同時滿足時,令flag=true,表示此次循環中,存在一個更好的特征;將第j個特征fj作為最優特征;并將賦值給從而更新
步驟2.9、將j+1賦值給j,判斷j≤n是否成立,在特征選擇過程中,n表示特征向量D={f1,f2,…,fj,…,fn}中包含的特征個數;若成立,則返回步驟2.6執行;若不成立,則判斷flag=true是否成立,若成立,則將第j個特征fj作為第k次循環的最優特征否則,令后,將第j個特征fj作為第k次循環的最優特征表示在第k次循環中,不存在 最優特征;
步驟3、判斷是否成立,若成立,則表示完成特征選擇,并獲得特征子集S;若不成立,則將第k次循環選出的最優特征加入特征子集S中,從而獲得更新的特征子集S′后執行步驟4;
步驟4、將更新的特征子集S′賦值給特征子集S;
步驟5、利用馬爾科夫毯方法從特征向量D中刪除第k次循環的最優特征以及與第k次循環的最優特征相冗余的特征向量,從而獲得更新的特征向量D′;
步驟5.1、定義冗余特征下標集合為index,用于記錄與相冗余的特征的下標;初始化
步驟5.2、初始化j=1;
步驟5.3、利用式(1)計算第j個特征fj與類別變量C之間的相關性SU(fj,C):
SU(fj,C)=2×(H(C)-H(C|fj))H(C)+H(fj)---(1)]]>
式(1),H(fj)表示第j個特征fj的信息熵,用于測量第j個特征fj所包含的不確定性;H(C)表示類別變量C的信息熵;H(C|fj)表示在第j個特征fj條件下類別變量C的條件信息熵;SU(fj,C)表征對稱不確定性,用于計算兩個變量fj和C之間的標準化互信息;采用信息熵的優勢在于,能夠反映變量之間的非線性相關性,在信息熵的具體計算可以參見文獻《Featureselectionbasedonmutualinformation:criteriaofmax-dependency,max-relevanceandmin-redundancy》中的介紹;
步驟5.4、利用式(2)計算第k次循環的最優特征與類別變量C之間的相關性值越大,表示包含的關于類別變量C的信息越多;
SU(fk(s),C)=2×(H(C)-H(C|fk(s)))H(C)+H(fk(s))---(2)]]>
步驟5.5、利用式(3)計算第k次循環的最優特征和第j個特征fj之間相關性實際上表示兩個特征之間的冗余性,值越大,表示和fj之間的冗余性越高;
SU(fk(s),fj)=2×(H(fj)-H(fj|fk(s)))H(fj)+H(fk(s))---(3)]]>
步驟5.6、根據式(4)和式(5)判斷第j個特征fj是否為冗余特征;
SU(fk(s),C)≥SU(fj,C)---(4)]]>
SU(fk(s),fj)≥SU(fj,C)---(5)]]>
若式(4)和式(5)同時成立,則表示第j個特征fj為冗余特征,并將fj的下標j加入到冗余特征下標集合index中,從而獲得更新的下標集合index′;
步驟5.7、將更新的下標集合index′賦值給冗余特征下標集合index;
步驟5.8、將j+1賦值給j,判斷j≤n是否成立,若成立,則返回步驟3執行;否則,執行步驟5.9;
步驟5.9、根據冗余特征下標集合index,從特征向量D中刪除下標包含在index中的特征向量;
步驟6、將更新的特征向量D′賦值給特征向量D;注意此時特征向量D中包含的特征個數會發生變化,實際代碼實現中的n表示特征向量D中包含的特征的個數;
步驟7、判斷特征向量D是否為空集,若為空集,則表示完成特征選擇,并獲得特征子集S;若不為空集,則將k+1賦值給k,并返回步驟2執行,從剩余的候選特征向量D中選擇下一個最優特征。

關 鍵 詞:
馬爾科夫毯 嵌入式 基于 封裝 特征 選擇 方法
  專利查詢網所有資源均是用戶自行上傳分享,僅供網友學習交流,未經上傳用戶書面授權,請勿作他用。
關于本文
本文標題:馬爾科夫毯嵌入式的基于封裝的特征選擇方法.pdf
鏈接地址:http://www.wwszu.club/p-6405410.html
關于我們 - 網站聲明 - 網站地圖 - 資源地圖 - 友情鏈接 - 網站客服客服 - 聯系我們

[email protected] 2017-2018 zhuanlichaxun.net網站版權所有
經營許可證編號:粵ICP備17046363號-1 
 


收起
展開
鬼佬大哥大