[發明專利]一種面向軟件缺陷預測的特征聚類選擇方法在審
| 申請號: | 201710788664.2 | 申請日: | 2017-09-04 |
| 公開(公告)號: | CN107577605A | 公開(公告)日: | 2018-01-12 |
| 發明(設計)人: | 江國華;李麗媛 | 申請(專利權)人: | 南京航空航天大學 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 211106 江*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 面向 軟件 缺陷 預測 特征 選擇 方法 | ||
1技術領域
本發明涉及一種在聚類基礎上進行的特征子集選擇方法,屬于軟件缺陷預測領域和機器 學習領域的結合應用。
2背景技術
隨著現代信息技術的不斷發展,軟件領域也迅速擴大起來,軟件規模不斷增長,程序復 雜度不斷提高,致使軟件中隱藏的缺陷也越來越多,由此引發的軟件故障給國家、給企業帶 來了不可估量的損失。軟件缺陷預測技術可以分析軟件靜態信息,利用與缺陷相關的度量元, 準確預測出模塊的缺陷分布情況,給軟件質量保證提供了重要的途徑。
在分析軟件模塊時,有大量的度量元(即特征)可以提取,現有研究存在特征交互的問 題。特征交互是指數個特征間相互聯系、相互作用的問題。一方面,特征集中可能存在一些 無關特征,它與軟件中的缺陷毫無聯系。另一方面,特征集中可能存在特征間的兩兩交互、 三三交互甚至更高強度的交互問題。換句話說,就是特征間有冗余,一個特征可以由其他一 些特征推導出來。以NASA的MDP數據集為例,他們提取的軟件特征主要有三類:LOC、McCabe 和Halstead,除了基本特征從源碼中獲得,其他特征都是由這些基本特征間接計算獲得。那 么我們的目標就是要篩選出一個最優子集,它的特征間都是相互獨立且互補的,沒有無關特 征和冗余特征。
二、搜索空間問題。搜索空間會隨著選擇的特征數的增加而呈指數級增加,N個特征所 要搜索的特征子集有2N個,大部分情況下,搜索全部的特征子集是不可能的。
三、數據不平衡問題。據統計,在實際的軟件模塊中也存在“二八原則”,即百分之八 十的缺陷存在于百分之二十的模塊中,這樣在預測過程中大量的系統資源都被用來計算無缺 陷的模塊,那么盡早、準確的預測出無缺陷模塊,將其移除,把系統資源留給后續計算是十 分有必要的。
基于以上幾個問題,本發明公開了一種基于聚類分析的特征子集選擇方法,能夠有效去 除無關特征和冗余特征,減少特征子集規模,減小搜索空間,縮短運行時間,并能提高缺陷 預測的效果。
3發明內容
3.1發明目的
為了解決軟件缺陷預測過程中特征交互、搜索空間大和數據不平衡的問題,本發明提出 了一種基于聚類分析的特征子集選擇方法,用以縮減特征子集,提高運行效率,同時又提高 了缺陷預測準確度。
3.2技術方案
本發明為解決其技術問題采用如下技術方案:具體包含以下幾個步驟:
步驟一:從軟件項目集中抽取軟件模塊和特征數據,標記部分缺陷信息,形成初始可預 測樣本數據集;
步驟二:對預處理的樣本數據集,進行特征聚類。
步驟三:利用聚類結果輔助特征選擇,在特征聚類后使用特征子集選擇方法,選出最優 子集;
步驟四:利用最優特征子集,削減構成新的樣本數據集,構建軟件缺陷預測模型。
上述步驟一,在進行軟件缺陷預測時,首先需要從軟件項目集中抽取軟件模塊和特征數據, 之后標記部分缺陷信息,形成初始可預測樣本數據集D;
步驟二中,我們利用一般聚類方法對樣本數據集D進行聚類,首先隨機選取K個數據作 為初始中心,計算各個數據到中心點的距離,將樣本數據指派到最近的簇中。然后計算每個 簇的均值,重復指派過程,循環執行,直至簇中心不再變化或達到最大迭代次數。以此為基 礎進行特征子集的選擇。
步驟三中:基于特征聚類的結果,我們進行特征子集選擇。所謂特征選擇,就是從一組 數量為N的特征中選擇出數量為M的最優特征(N>M)。本發明采用包裝式的特征子集選擇方 法,根據屬性子集中每一個特征的預測能力以及它們之間的相關性進行評估。現有特征數量 為N,采用帶回溯的啟發式搜索算法從空集開始搜索,根據任意兩個特征間的冗余度及單個 特征的預測能力對其搜索的特征子集進行評估,以后續分類器的性能作為評價標準,當預測 效果超過給定閾值且不再增加時停止搜索。最終得出包含M個特征的最優特征子集S。
步驟四中:對選擇出的最優特征子集S,在初始樣本數據集D中只保留最優子集中的特 征值樣本,組成新的樣本數據集D’。本發明采用十折交叉驗證,將新的樣本數據集D’分為 十組,其中九組作為訓練集,用以構建訓練模型,剩余一組作為測試集,重復這個隨機過程 十次,這樣每組樣本數據都可以被預測一次,確保實施例的可信性。用訓練出的缺陷預測模 型來預測缺陷情況未知的測試集樣本,得出預測分類結果。
3.3有益效果
本發明采用以上技術方案與現有技術相比,具有以下有益效果:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于南京航空航天大學,未經南京航空航天大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710788664.2/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種提升電器柜外觀規范程度的標識貼附模具
- 下一篇:一種不干膠貼標機





