[發明專利]基于改進的Adaboost軟件缺陷不平衡數據分類方法在審
| 申請號: | 201610004546.3 | 申請日: | 2016-01-04 |
| 公開(公告)號: | CN105677564A | 公開(公告)日: | 2016-06-15 |
| 發明(設計)人: | 李克文;鄒晶杰 | 申請(專利權)人: | 中國石油大學(華東) |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36;G06K9/62;G06N3/12 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 266580 山*** | 國省代碼: | 山東;37 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 改進 adaboost 軟件 缺陷 不平衡 數據 分類 方法 | ||
1.基于改進的Adaboost軟件缺陷不平衡數據分類方法,其特征在于,主要 包括以下三個步驟:
A.從軟件數據集中獲取數據,包括軟件特征集和軟件模塊,并對其進行預處 理;將軟件模塊數據分為訓練集和測試集以備訓練和測試;本發明采用十 次交叉驗證,將軟件模塊數據集分成十份,其中九份做訓練,一份做測 試;
B.利用基于改進的遺傳算法與BP神經網絡結合進行軟件數據的特征選擇,得 到最優特征子集,從而對軟件特征進行降維處理,減少運算時間;
(1)隨機產生初始種群,種群大小為P;對特征集進行二進制編碼,0代 表選擇特征,1表示不選擇特征;
(2)以BP神經網絡訓練數據集,根據預測誤差調整網絡的權值和閾值;
(3)利用遺傳算法對BP神經網絡進行優化,進行選擇、交叉、變異的操 作;為充分考慮軟件數據集的不平衡性,適應度函數采用普遍適用于不平衡數 據分類評價的Gmeans,較高的Gmeans值表示分類器是平衡的,即對兩個類 的分類來說都有好的性能,定義如下:
其中,TP為實際有缺陷且分類正確的模塊數,FN為實際有缺陷但被分類錯誤 的模塊數,FP為實際無缺陷但被分類錯誤的模塊數,TN為實際無缺陷且分類 正確的模塊數;
(4)判斷是否達到迭代次數,若達到,則輸出當前最優特征子集,否則 執行以下過程
(a)根據適應度函數選擇遺傳到下一代的個體,適應度越高被選擇的概 率越大;
(b)采用單點交叉算子進行交叉操作,采用單點變異算子進行變異操 作;
C.根據得到的最優特征子集,充分考慮軟件缺陷數據的不平衡性,訓練基于 改進的Adaboost分類器,得到軟件缺陷預測模型,步驟如下:
(1)初始化樣本集內的樣本權重
D1(i)=1/n
其中,n為樣本數,D1(i)為樣本在第1輪迭代中的權重;
(2)進行T次循環訓練弱分類器ht(x),迭代次數t=1,2,…,T
(a)計算弱分類器ht(x)在當前樣本分布上的分類錯誤率,針對軟件缺陷 數據的不平衡性,應充分關注被誤分為“無缺陷”實則“有缺陷的”樣本,被誤分 為“無缺陷”的樣本比例越大,則分類器的分類錯誤率應相應地增加;因此,設 定ht(x)的分類錯誤率為:
其中,其中Dt(i)為樣本(xi,yi)在第t輪迭代中的權重,I[ht(xi)≠yi]說明參與 分類錯誤率εt計算的是被誤分類的樣本;
(b)若εt>0.5或者εt=0,則令T=t-1,迭代停止;
(3)計算弱分類器ht(x)在最終集成獲得的強分類器中的加權系數:
(4)更新訓練集樣本權值:
其中,Zt是歸一化因子:
(5)輸出強分類器:
(6)利用得到的強分類器,對軟件模塊進行缺陷預測。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國石油大學(華東),未經中國石油大學(華東)許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201610004546.3/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種系統的內存管理方法及裝置
- 下一篇:一種機器人日志管理方法及服務器





