本發明專利技術提供的一種基于不平衡數據集的軟件測試方法及系統,方法包括以下步驟:獲取不平衡的軟件缺陷的樣本數據,對樣本數據進行預處理;根據預處理之后的樣本數據的不平衡特性為樣本數據中的數據類別設定代價敏感系數;根據包括代價敏感系數的樣本數據訓練代價敏感核寬度學習系統分類模型;通過網格搜索確定最優懲罰系數,根據最優懲罰系數確定模型的目標參數;根據目標參數構建得到目標分類模型,通過目標分類模型對測試實例進行分類預測,輸出預測結果;方案可有效消除軟件缺陷數據集極端不平衡的特性對分類性能的影響,提高分類精確度,并且同時解決了特征工程工作中訓練繁瑣問題,提高了模型的訓練效率,可廣泛應用于計算機技術領域。機技術領域。機技術領域。
【技術實現步驟摘要】
一種基于不平衡數據集的軟件測試方法及系統
[0001]本專利技術涉及計算機
,尤其是一種基于不平衡數據集的軟件測試方法及系統。
技術介紹
[0002]隨著軟件產業的不斷擴大,軟件質量問題逐漸引起廣泛關注,軟件缺陷是威脅軟件質量的最重要因素之一。軟件缺陷通常源于軟件工程師在編碼過程中犯的錯誤,這通常需要大量的人力資源和時間來修復。因此,在軟件開發過程中及早發現故障模塊已成為一個亟待解決的問題。軟件缺陷預測(SDP)是提高軟件測試效率的重要工具。SDP屬于不平衡問題,因為有缺陷的數據分布不均勻,有缺陷的模塊比無缺陷的模塊少得多。傳統的機器學習方法往往以數據服從均衡分布為前提,忽略少數有缺陷的軟件。
[0003]雖然日前有很多優秀的機器學習以及深度學習算法能夠達到比較高分類精度,但大多機器學習算法遇到數據不均衡時性能會急速下降,往往會過多的關注多數類而忽略少數類,這是致命的,比如軟件缺陷預測方面,正常的往往是多于異常的,但在測試過程中更多的是關注有異常的軟件而不是正常的,如果一個分類器能夠分類出所有正常的類別而不能分類出有異常的軟件這對軟件開發行業會造成巨大的經濟損失。另一方面,深度學習雖然能夠提取更加深層的特征,但在數據量比較小時無法能夠完成很好的擬合效果,可一旦數據集數據量比較大時,這就需要比較長的時間去反向傳播尋找最優的參數,耗費時間過長。
技術實現思路
[0004]有鑒于此,基于
技術介紹
中所提及的技術問題或者缺陷,本專利技術實施例的目的在于提供一種基于不平衡數據集的軟件測試方法,能夠解決現有的不平衡的軟件缺陷數據集預測不夠準確與高效的弊端。同時,本申請技術方案還提供了能夠實現這一方法的軟件測試系統。
[0005]一方面,本申請技術方案提供了一種基于不平衡數據集的軟件測試方法,包括以下步驟:
[0006]獲取不平衡的軟件缺陷的樣本數據,對所述樣本數據進行預處理;
[0007]根據預處理之后的樣本數據的不平衡特性為所述樣本數據中的數據類別設定代價敏感系數;
[0008]根據包括所述代價敏感系數的樣本數據訓練代價敏感核寬度學習系統分類模型;
[0009]通過網格搜索確定最優懲罰系數,根據所述最優懲罰系數確定訓練后所述代價敏感核寬度學習系統分類模型的目標參數;
[0010]根據所述目標參數構建得到目標分類模型,通過所述目標分類模型對測試實例進行分類預測,輸出預測結果。
[0011]在本申請方案的一種可行的實施例中,所述獲取不平衡的軟件缺陷的樣本數據,
對所述樣本數據進行預處理,包括:
[0012]通過所述樣本數據的均值對缺失值進行填補,或者刪除所述缺失值;
[0013]確定進行缺失值處理之后的所述樣本數據的標簽,并肩編碼處理后的所述標簽添加至所述樣本數據。
[0014]在本申請方案的一種可行的實施例中,所述根據預處理之后的樣本數據的不平衡特性為所述樣本數據中的數據類別設定代價敏感系數,包括:
[0015]根據所述樣本數據的樣本數量確定第一權重矩陣,根據所述第一權重矩陣確定所述數據類別的懲罰參數;
[0016]根據所述懲罰參數確定所述數據類別對應的所述代價敏感系數。
[0017]在本申請方案的一種可行的實施例中,所述根據包括所述代價敏感系數的樣本數據訓練代價敏感核寬度學習系統分類模型,包括:
[0018]通過徑向基核函數確定所述樣本數據之間的內積矩陣,根據所述內積矩陣構建映射層,并確定所述映射層與輸入層之間的第一連接權重;
[0019]將所述映射層的節點作為輸入,通過所述徑向基核函數進行映射得到增強層,并確定所述增強層與所述映射層之間的第二連接權重;
[0020]根據所述映射層、所述增強層、所述第一連接權重以及所述第二連接權重構建得到所述代價敏感核寬度學習系統分類模型。
[0021]在本申請方案的一種可行的實施例中,所述內積矩陣的計算公式為:
[0022][0023]其中,Ω
i,j
表征所述內積矩陣,x
a
表征第a個樣本數據的特征向量,x
b
表征第b個樣本數據的特征向量,σ表征徑向基核函數的參數,N為正整數。
[0024]在本申請方案的一種可行的實施例中,所述根據所述映射層、所述增強層、所述第一連接權重以及所述第二連接權重構建得到所述代價敏感核寬度學習系統分類模型,包括:
[0025]根據所述第一連接權重以及所述第二連接權重確定所述代價敏感核寬度學習系統分類模型中隱藏層的第二權重矩陣;所述隱藏層由所述映射層與所述增強層進行拼接得到;
[0026]根據所述第二權重矩陣構建所述代價敏感核寬度學習系統分類模型中的目標函數。
[0027]在本申請方案的一種可行的實施例中,所述通過徑向基核函數確定所述樣本數據之間的內積矩陣,根據所述內積矩陣構建映射層,并確定所述映射層與輸入層之間的第一連接權重這一步驟中,所述第一連接權重的計算公式如下:
[0028][0029]其中,λ表征正則項參數,I表征單位矩陣,Ω
m
表征所述映射層的距離矩陣,X表征輸入的所述樣本數據。
[0030]在本申請方案的一種可行的實施例中,所述將所述映射層的節點作為輸入,通過所述徑向基核函數進行映射得到增強層,并確定所述增強層與所述映射層之間的第二連接
權重這一步驟中,所述第二連接權重的計算公式如下:
[0031][0032]其中,λ表征正則項參數,I表征單位矩陣,Ω
m
表征所述映射層的距離矩陣,Ω
e
表征所述增強層的距離矩陣。
[0033]在本申請方案的一種可行的實施例中,所述代價敏感核寬度學習系統分類模型中的輸出層權重的公式如下:
[0034][0035]其中,W表征輸出層權重,λ表征正則項參數,Y表征所述樣本數據對應的標簽矩陣,C
+
表征少數類樣本誤分類的代價敏感系數,C
?
表征多數類樣本誤分類的懲罰系數,K=[Ω
m
,Ω
e
],Ω
m
表征所述映射層的距離矩陣,Ω
e
表征所述增強層的距離矩陣。
[0036]另一方面,本申請技術方案還提供了一種基于不平衡數據集的軟件測試系統,該系統包括:
[0037]數據獲取單元,用于獲取不平衡的軟件缺陷的樣本數據,對所述樣本數據進行預處理;
[0038]數據根據預處理之后的樣本數據的不平衡特性為所述樣本數據中的數據類別設定代價敏感系數;
[0039]模型訓練單元,用于根據包括所述代價敏感系數的樣本數據訓練代價敏感核寬度學習系統分類模型;
[0040]參數優化單元,用于通過網格搜索確定最優懲罰系數,根據所述最優懲罰系數確定訓練后所述代價敏感核寬度學習系統分類模型的目標參數;
[0041]預測輸出單元,用于根據所述目標參數構建得到目標分類模型,通過所述目標分本文檔來自技高網...
【技術保護點】
【技術特征摘要】
1.一種基于不平衡數據集的軟件測試方法,其特征在于,包括以下步驟:獲取不平衡的軟件缺陷的樣本數據,對所述樣本數據進行預處理;根據預處理之后的樣本數據的不平衡特性為所述樣本數據中的數據類別設定代價敏感系數;根據包括所述代價敏感系數的樣本數據訓練代價敏感核寬度學習系統分類模型;通過網格搜索確定最優懲罰系數,根據所述最優懲罰系數確定訓練后所述代價敏感核寬度學習系統分類模型的目標參數;根據所述目標參數構建得到目標分類模型,通過所述目標分類模型對測試實例進行分類預測,輸出預測結果。2.根據權利要求1所述的一種基于不平衡數據集的軟件測試方法,其特征在于,所述獲取不平衡的軟件缺陷的樣本數據,對所述樣本數據進行預處理,包括:通過所述樣本數據的均值對缺失值進行填補,或者刪除所述缺失值;確定進行缺失值處理之后的所述樣本數據的標簽,并肩編碼處理后的所述標簽添加至所述樣本數據。3.根據權利要求1所述的一種基于不平衡數據集的軟件測試方法,其特征在于,所述根據預處理之后的樣本數據的不平衡特性為所述樣本數據中的數據類別設定代價敏感系數,包括:根據所述樣本數據的樣本數量確定第一權重矩陣,根據所述第一權重矩陣確定所述數據類別的懲罰參數;根據所述懲罰參數確定所述數據類別對應的所述代價敏感系數。4.根據權利要求1所述的一種基于不平衡數據集的軟件測試方法,其特征在于,所述根據包括所述代價敏感系數的樣本數據訓練代價敏感核寬度學習系統分類模型,包括:通過徑向基核函數確定所述樣本數據之間的內積矩陣,根據所述內積矩陣構建映射層,并確定所述映射層與輸入層之間的第一連接權重;將所述映射層的節點作為輸入,通過所述徑向基核函數進行映射得到增強層,并確定所述增強層與所述映射層之間的第二連接權重;根據所述映射層、所述增強層、所述第一連接權重以及所述第二連接權重構建得到所述代價敏感核寬度學習系統分類模型。5.根據權利要求4所述的一種基于不平衡數據集的軟件測試方法,其特征在于,所述內積矩陣的計算公式為:其中,Ω
i,j
表征所述內積矩陣,x
a
表征第a個樣本數據的特征向量,x
b
表征第b個樣本數據的特征向量,σ表征徑向基核函數的參數,N為正整數。6.根據權利要求4所述的一種基于不平衡數據集的軟件測試方法,其特征在于,所述根據所述映射層、所述增強層、所述第一連接權重以及所述第二連接權重構建得到所述代價敏感核寬度學習系統分類模型,包括:...
【專利技術屬性】
技術研發人員:程良倫,陳武興,張偉文,
申請(專利權)人:廣東工業大學,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。