• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于SSDBSCAN的跨項目缺陷預(yù)測數(shù)據(jù)篩選方法

      2017-09-13 01:09:26伍蔓張建升馬傳香安格格余嘯
      關(guān)鍵詞:標(biāo)號度量實例

      伍蔓,張建升,馬傳香,安格格,余嘯

      (1.湖北大學(xué)計算機(jī)與信息工程學(xué)院,湖北 武漢 430062;2.湖北省教育信息化工程研究中心,湖北 武漢 430062;3.武漢大學(xué)軟件工程國家重點(diǎn)實驗室,計算機(jī)學(xué)院,湖北 武漢 430072)

      基于SSDBSCAN的跨項目缺陷預(yù)測數(shù)據(jù)篩選方法

      伍蔓1,2,3,張建升1,2,馬傳香1,2,安格格3,余嘯3

      (1.湖北大學(xué)計算機(jī)與信息工程學(xué)院,湖北 武漢 430062;2.湖北省教育信息化工程研究中心,湖北 武漢 430062;3.武漢大學(xué)軟件工程國家重點(diǎn)實驗室,計算機(jī)學(xué)院,湖北 武漢 430072)

      針對跨項目軟件缺陷預(yù)測中大量不相關(guān)的跨項目數(shù)據(jù)損害了缺陷預(yù)測模型性能的問題,提出了一種基于SSDBSCAN(semi-suppervised density-based clustering)的跨項目缺陷預(yù)測數(shù)據(jù)篩選方法——SSDBSCAN filter.首先,SSDBSCAN filter結(jié)合少量帶類標(biāo)號的本項目歷史數(shù)據(jù)、跨項目歷史數(shù)據(jù)和大量不帶類標(biāo)號的本項目數(shù)據(jù);然后,利用SSDBSCAN算法對這些數(shù)據(jù)進(jìn)行聚類發(fā)現(xiàn)子簇;最后,收集子簇中的跨項目數(shù)據(jù),不屬于任何簇的跨項目數(shù)據(jù)被作為噪聲數(shù)據(jù)而丟棄.實驗使用15個公開的PROMISE數(shù)據(jù)集,3種分類器和4種性能度量指標(biāo).實驗結(jié)果表明,相比于目前已有的Burak filter和DBSCAN filter方法,SSDBSCAN filter在提高了預(yù)測率的同時降低了誤報率,且G-measure與AUC度量值更佳.

      跨項目缺陷預(yù)測;數(shù)據(jù)篩選;SSDBSCAN

      0 引言

      軟件缺陷是計算機(jī)軟件或程序中存在的某個破壞正常運(yùn)行能力的問題、錯誤以及隱藏的功能缺陷.隨著軟件系統(tǒng)在工程應(yīng)用中的不斷擴(kuò)大,軟件缺陷導(dǎo)致的經(jīng)濟(jì)損失日益增加.因此,高效的軟件缺陷預(yù)測技術(shù)越來越受到研究者的關(guān)注.目前,已有很多高效的軟件缺陷預(yù)測方法被提出[1-4],但它們通常基于項目內(nèi)缺陷預(yù)測,當(dāng)有足夠的歷史數(shù)據(jù)可用來建立缺陷預(yù)測模型時,本項目缺陷預(yù)測效果最佳.但對于一些新的項目來說,項目內(nèi)的歷史數(shù)據(jù)非常有限,本項目缺陷預(yù)測很難順利進(jìn)行.跨項目缺陷預(yù)測通過利用一個或多個已有的其他項目(跨項目)的歷史數(shù)據(jù)來訓(xùn)練預(yù)測模型,然后將模型應(yīng)用到本項目的缺陷預(yù)測中,從而解決本項目沒有足夠的歷史數(shù)據(jù)來訓(xùn)練模型的問題.Zimmermann使用12個項目構(gòu)建622個跨項目組合,對這些跨項目缺陷預(yù)測模型的性能進(jìn)行評估,發(fā)現(xiàn)由于跨項目數(shù)據(jù)與本項目數(shù)據(jù)的數(shù)據(jù)分布不同,大量不相關(guān)的跨項目數(shù)據(jù)損害了缺陷預(yù)測模型的性能[5].因此在使用跨項目數(shù)據(jù)構(gòu)建缺陷預(yù)測模型之前,對跨項目數(shù)據(jù)進(jìn)行數(shù)據(jù)篩選,找出與本項目數(shù)據(jù)最相關(guān)的數(shù)據(jù)尤為必要.

      近年來,有研究人員提出了一些跨項目缺陷預(yù)測數(shù)據(jù)篩選方法.Turhan提出了Burak Filter,利用K近鄰過濾器篩選跨項目數(shù)據(jù)中與本項目數(shù)據(jù)最相似的數(shù)據(jù)作為訓(xùn)練樣本[6].實驗證明,使用Burak Filter篩選的跨項目數(shù)據(jù)構(gòu)建的預(yù)測模型,其誤報率大大降低.Peter提出了Peter Filter跨項目數(shù)據(jù)篩選方法,不同于Burak Filter方法僅使用了K近鄰算法, Peter Filter將K近鄰算法與K-Means聚類算法相結(jié)合[7].實驗結(jié)果表明Peter Filter方法取得了更佳的預(yù)測性能.Burak Filter和Peter Filter方法操作簡單、容易理解,但其篩選數(shù)據(jù)的效果容易受到設(shè)定的K值的影響,若K值設(shè)定太小,會丟失大量相關(guān)的數(shù)據(jù)實例;若K值設(shè)定太大,近鄰中又可能包含太多的不相關(guān)的數(shù)據(jù)實例.隨后,聚類算法漸漸被運(yùn)用到跨項目數(shù)據(jù)篩選中.Kawata等嘗試使用更為先進(jìn)的DBSCAN算法進(jìn)行跨項目數(shù)據(jù)的篩選,提出了基于DBSCAN的跨項目數(shù)據(jù)篩選方法 (DBSCAN Filter)[8].DBSCAN Filter將跨項目數(shù)據(jù)和本項目數(shù)據(jù)混合,依據(jù)DBSCAN算法進(jìn)行聚類,最后丟棄不包含本項目數(shù)據(jù)的子簇,收集剩余子簇的跨項目數(shù)據(jù).實驗選取56個項目數(shù)據(jù),將DBSCAN Filter與Peter Filter和Burak Filter兩種方法進(jìn)行了對比.結(jié)果表明,該方法在AUC和G-measure度量上明顯優(yōu)于Burak Filter和Peter Filter方法.但是DBSCAN Filter對鄰域密度閾值和閾值半徑這兩個參數(shù)的定義是敏感的,若選取不當(dāng)將造成聚類質(zhì)量下降.且由于參數(shù)是全局唯一的,當(dāng)簇之間的密度相差較大時,容易造成差別很大的聚類.

      近年來,一些基于遷移學(xué)習(xí)的跨項目預(yù)測方法被提出,Ma提出了TNB (Transfer Naive Bayes) 跨項目缺陷預(yù)測方法,依據(jù)跨項目數(shù)據(jù)與本項目數(shù)據(jù)的相似度賦予跨項目數(shù)據(jù)不同的權(quán)重,然后在已加權(quán)的跨項目數(shù)據(jù)基礎(chǔ)上構(gòu)建預(yù)測模型[9].Jing指出源公司數(shù)據(jù)與目標(biāo)公司數(shù)據(jù)度量屬性通常是異構(gòu)的,因此提出了本公司和跨公司數(shù)據(jù)統(tǒng)一度量表示方法,并將典型相關(guān)分析(CCA)算法運(yùn)用到跨項目缺陷預(yù)測中[10].

      以上的跨項目缺陷預(yù)測方法都是基于本項目沒有任何歷史數(shù)據(jù)的情況.事實上,如果項目內(nèi)存在少量帶類標(biāo)號的歷史數(shù)據(jù),這些數(shù)據(jù)不足以進(jìn)行基于項目內(nèi)缺陷預(yù)測,但可以充分利用這些數(shù)據(jù)進(jìn)一步提升跨項目缺陷預(yù)測模型的性能.

      Turhan嘗試將本項目歷史數(shù)據(jù)與跨項目歷史數(shù)據(jù)混合,使用混合數(shù)據(jù)進(jìn)行缺陷預(yù)測模型的構(gòu)建,實驗結(jié)果表明當(dāng)本項目歷史數(shù)據(jù)極少時,混合數(shù)據(jù)構(gòu)建的缺陷預(yù)測模型也能達(dá)到很好的性能[11].Chen提出了名為DTB(Double Transfer Boosting)的跨項目缺陷預(yù)測方法[12].該方法利用少量本項目歷史數(shù)據(jù),通過縮小跨項目數(shù)據(jù)和本項目數(shù)據(jù)的數(shù)據(jù)分布差異,實現(xiàn)了較好的跨項目缺陷預(yù)測性能.當(dāng)本項目數(shù)據(jù)的極少時,DTB方法構(gòu)建的跨項目缺陷預(yù)測模型的性能甚至可以與本項目缺陷預(yù)測模型相媲美.Yu等人針對DTB方法中會出現(xiàn)負(fù)遷移的問題提出了基于多源動態(tài)TrAdaBoost算法的跨項目缺陷預(yù)測方法[13].該方法利用少量本項目歷史數(shù)據(jù),通過從多個跨項目數(shù)據(jù)中學(xué)習(xí)多個弱缺陷預(yù)測模型,然后結(jié)合這些模型組合為一個強(qiáng)缺陷預(yù)測模型,依賴多個跨項目數(shù)據(jù)避免了負(fù)遷移,實現(xiàn)了較好的性能.

      SSDBSCAN算法是一種最新的半監(jiān)督聚類算法,僅需要一個領(lǐng)域密度閾值參數(shù)就能自動發(fā)現(xiàn)簇結(jié)構(gòu),適用于沒有全局密度參數(shù)的情況,且聚類過程不需要用戶干預(yù).相比于DBSCAN算法,當(dāng)簇之間的密度相差較大時,SSDBSCAN算法也能依據(jù)自然簇的密度發(fā)現(xiàn)自然簇結(jié)構(gòu).為了提升跨項目數(shù)據(jù)篩選能力,本文基于SSDBSCAN算法提出了跨項目數(shù)據(jù)篩選方法——SSDBSCAN Filter.本文中提出的SSDBSCAN Filter同樣能充分利用少量帶有類標(biāo)號的本項目數(shù)據(jù),進(jìn)一步去除跨項目中的不相關(guān)數(shù)據(jù),從而提升預(yù)測模型性能.實驗結(jié)果表明,相比前兩種數(shù)據(jù)篩選方法(Burak Filter和DBSCAN Filter),SSDBSCAN Filter顯著提高了預(yù)測模型的性能.

      接下來的內(nèi)容共分為五個部分:第一部分是對算法部分的相關(guān)約定;第二個部分是對SSDBSCAN Filter的詳細(xì)說明;第三部分為實驗數(shù)據(jù)集、實驗環(huán)境、性能度量指標(biāo)以及實驗步驟等的介紹;第四部分為實驗結(jié)果分析;第五部分為對全文的總結(jié)和對未來的展望.

      1 相關(guān)約定

      定義1ε鄰域.若實例x∈D,實例x的ε鄰域是指以x為中心,以為ε半徑的空間.

      定義2 鄰域密度閾值.若實例x∈D,且為核心對象,則鄰域密度閾值MinPts即為x的ε鄰域所需包含的對象的最小數(shù)目.

      定義3 核心距離.若實例x∈D,x的核心距離cDist(x) 為滿足鄰域密度MinPts的最小半徑值.

      2 SSDBSCAN Filter

      算法1:SSDBSCANFilter 輸入:跨項目歷史數(shù)據(jù)集DCP、無類標(biāo)號本項目數(shù)據(jù)集DWP、帶類標(biāo)號本項目歷史數(shù)據(jù)集DL、鄰域密度閾值MinPts 輸出:篩選后的跨項目數(shù)據(jù)集 1.將DCP、DWP以及DL混合于D 2.標(biāo)記所有D中實例為unvisited 3.foreachunvisited實例pinDL 4. foreachunvisited實例qinD 5. key[q]=+∞; 6. endfor 7.key[p]←0; 8.創(chuàng)建簇C; 9.Q←D; 10.whileQ≠? 11.{ 12. 找到Q中key值最小實例r; 13. ifr∈DL且cLp≠cLr 14. 輸出簇C中與本項目數(shù)據(jù)類標(biāo)號一致的跨項目數(shù)據(jù)實例,將簇中實例均標(biāo)記為visited,break; 15. 將r插入簇中,并將r從Q中移除; 16. foreach實例xinQ 17. ifrDist(r,x)

      為了充分利用少量帶有類標(biāo)號的本項目數(shù)據(jù),進(jìn)一步提升缺陷預(yù)測模型的性能,我們提出了SSDBSCAN Filter用于跨項目數(shù)據(jù)篩選. SSDBSCAN Filter首先將本項目數(shù)據(jù)和跨項目數(shù)據(jù)混合.本項目數(shù)據(jù)中包含少量帶有類標(biāo)號的數(shù)據(jù)和大量不帶有類標(biāo)號的數(shù)據(jù);然后開始聚類過程,每次迭代以帶有類標(biāo)號且未被訪問的本項目數(shù)據(jù)為起點(diǎn),擴(kuò)充過程中不斷更新鄰域各點(diǎn)到簇中各實例的邊界權(quán)值,每一次迭代時尋找鄰域中邊界權(quán)值最小實例添加進(jìn)簇.邊界權(quán)值是由SSDBSCAN算法給出的實例連接到簇中的最短路徑,詳細(xì)定義參見定義4.由于文章篇幅原因,本文不對為何每次將邊界權(quán)值最小實例添加進(jìn)簇的原因進(jìn)行詳細(xì)描述,詳見文獻(xiàn)[14];當(dāng)出現(xiàn)不同類標(biāo)號的本項目數(shù)據(jù),則停止簇的擴(kuò)充,循環(huán)結(jié)束,以另一個未被訪問過的帶類標(biāo)號本項目數(shù)據(jù)實例為起點(diǎn)繼續(xù)另一個簇的擴(kuò)充;隨后,當(dāng)所有帶有類標(biāo)號的本項目數(shù)據(jù)都包含在簇中,聚類過程終止;最后,聚類生成的子簇中包含大量數(shù)據(jù)分布相近的實例,收集子簇中的與本項目數(shù)據(jù)一致的跨項目數(shù)據(jù),即得到篩選后的跨項目數(shù)據(jù).

      圖1 SSDBSCAN filter結(jié)果圖

      SSDBSCAN filter的聚類結(jié)果如圖1所示,我們約定:“○”表示類標(biāo)號為Y的跨項目數(shù)據(jù),“□”表示類標(biāo)號為N的跨項目數(shù)據(jù),“△”表示類標(biāo)號為Y的本項目數(shù)據(jù),“☆”表示類標(biāo)號為N的本項目數(shù)據(jù),“+”表示無類標(biāo)號的本項目數(shù)據(jù).依據(jù)SSDBSCAN filter進(jìn)行聚類得到3個子簇:C1、C2、C3.聚類過程由帶類標(biāo)號的本項目數(shù)據(jù)實例4、9、12、13開始.聚類完成之后,子簇中可能包含的實例有相同類標(biāo)號的本項目實例、相同類標(biāo)號的跨項目實例、不同類標(biāo)號的跨項目實例以及無類標(biāo)號的本項目實例.我們僅收集子簇中與本項目實例類標(biāo)號相同的跨項目實例.因此,簇C1的篩選結(jié)果保留跨項目數(shù)據(jù)實例1、實例2和實例3,實例5因類標(biāo)號與本項目數(shù)據(jù)不同而被舍棄.簇C2、C3的數(shù)據(jù)篩選同C1,簇中實例的類標(biāo)號應(yīng)與帶類標(biāo)號的本項目數(shù)據(jù)一致,因此舍棄跨項目實例5和跨項目實例16.子簇之外的實例19、20、21和22為噪聲數(shù)據(jù).最后篩選出的跨項目實例有:實例1、實例2、實例3、實例7、實例8、實例11、實例14、實例15、實例17和實例18.

      3 實驗方法

      3.1 實驗數(shù)據(jù)與環(huán)境 為了驗證本文方法SSDBSCAN filter在跨項目軟件缺陷預(yù)測的性能,本文從PROMISE庫[15]選取15個常用公開數(shù)據(jù)集,數(shù)據(jù)集詳細(xì)信息如表1所示.實驗均在Intel(R) Core(TM) i5-4210M CPU @ 2.60 GHz,內(nèi)存4 GB 的PC機(jī)上完成的.采用Java語言的開發(fā)平臺Eclipse,并使用了Weka工具包.

      表2 混淆矩陣

      3.2 實驗度量標(biāo)準(zhǔn) 為了評價跨項目缺陷預(yù)測模型的性能,本文選擇了四種常用的度量指標(biāo):PD、PF、G-measure以及AUC.除PF之外,其他度量指標(biāo)值越大表示模型性能越佳.這些度量值首先要用到表2的混淆矩陣.混淆矩陣中TP指被正確預(yù)測的有缺陷模塊數(shù);TN指被正確預(yù)測的無缺陷模塊數(shù);FP指被錯誤預(yù)測為有缺陷的無缺陷模塊數(shù);FN指被錯誤預(yù)測為無缺陷的有缺陷模塊數(shù).混淆矩陣定義如下:

      1)PD(預(yù)測率)是指正確被預(yù)測為有缺陷的模塊數(shù)與實際有缺陷的模塊數(shù)的比率.

      (1)

      2)PF(誤報率)是指正確被預(yù)測為有缺陷的模塊數(shù)與預(yù)測為有缺陷的模塊數(shù)的比率.

      (2)

      (3)

      (4)

      3.3 實驗步驟 實驗共采用15個PROMISE數(shù)據(jù)集,將其中1個作為本項目數(shù)據(jù),剩余14個作為跨項目數(shù)據(jù),共15種數(shù)據(jù)集組合.為便于模型的性能度量,實驗數(shù)據(jù)均帶有類標(biāo)號.

      我們將本文方法與Burack Filter方法[5]和DBSCAN Filter[9]對比.對于Burak Filter方法,每個本項目實例從跨項目數(shù)據(jù)中選取K個最近鄰實例組成訓(xùn)練數(shù)據(jù)集,與文獻(xiàn)[3]一致,取K=10.對于DBSCAN Filter,相比于文獻(xiàn)[7],由于使用數(shù)據(jù)集不同,本文中將參數(shù)調(diào)整為MintPts=5,radius=5.考慮到公平性,SSDBSCAN Filter的參數(shù)MintPts同樣設(shè)為5. 3種數(shù)據(jù)篩選方法均使用每種組合全部的本項目數(shù)據(jù)和跨項目數(shù)據(jù).由于SSDBSCAN Filter可以使用少量的帶有類標(biāo)號的本項目數(shù)據(jù),因此將本項目數(shù)據(jù)進(jìn)一步劃分為兩個部分:10%帶類標(biāo)號的本項目數(shù)據(jù)和 90%不帶類標(biāo)號的本項目數(shù)據(jù),應(yīng)用于SSDBSCAN Filter.

      構(gòu)建跨項目缺陷預(yù)測模型時,我們采用3種分類方法:樸素貝葉斯、隨機(jī)森林和邏輯回歸在Weka上實現(xiàn).SSDBSCAN Filter已使用10%的本項目數(shù)據(jù)的類標(biāo)號,為公平起見,在對模型進(jìn)行性能度量時,使用剩余的90%本項目數(shù)據(jù).實驗重復(fù)進(jìn)行20次,取性能度量的均值.

      4 實驗結(jié)果分析

      4.1 PD與PF結(jié)果分析 表3記錄了PD與PF的實驗結(jié)果.為了使結(jié)果更加清晰,表格首先被劃分為3個區(qū)域,從左到右依次為3種數(shù)據(jù)篩選方法:Burak Filter、DBSCAN Filter和SSDBSCAN Filter.緊接著,實驗使用了3種最常用的構(gòu)建預(yù)測模型的方法:樸素貝葉斯(NB)、隨機(jī)森林(RF),以及邏輯回歸(LR).在使用樸素貝葉斯構(gòu)建預(yù)測模型的情況下,SSDBSCAN Filter的PF值在大部分?jǐn)?shù)據(jù)集上均有下降,相比于Burak Filter方法,PF值下降幅度達(dá)到4.6%,此外過半數(shù)的數(shù)據(jù)集PD值提高;在使用隨機(jī)森林構(gòu)建預(yù)測模型的情況下,SSDBSCAN Filter在13個數(shù)據(jù)集上PF值降低,10個數(shù)據(jù)集上PD值升高,直接顯示出性能的優(yōu)越;在使用邏輯回歸構(gòu)建預(yù)測模型的情況下,約半數(shù)數(shù)據(jù)集顯示,SSDBSCAN Filter在降低PF值的同時提高了PD值.綜合表3可以看出,SSDBSCAN Filter區(qū)域的最優(yōu)值居多,且選擇3種分類器的任意一種構(gòu)建缺陷預(yù)測模型,15組數(shù)據(jù)的PD、PF度量指標(biāo)的平均結(jié)果均在SSDBSCAN Filter處取得最佳.結(jié)果表明,相比于Burak Filter和DBSCAN Filter,SSDBSCAN Filter在PD、PF度量上顯示出其優(yōu)勢.

      表3 跨項目缺陷預(yù)測PD與PF結(jié)果對比

      圖2 G-measure結(jié)果對

      圖3 AUC結(jié)果對

      從圖2可以看出,對于樸素貝葉斯分類器,SSDBSCAN Filter的G-measure值的中位數(shù)高于其他兩種方法,最小值與最大值均有相應(yīng)提升.Burak Filter的數(shù)據(jù)最集中,但是相對而言SSDBSCAN Filter使得G-measure值有一段幅度的提升;對于隨機(jī)森林分類器,SSDBSCAN Filter的G-measure值的最小值和下四分位數(shù)與其他兩種方法基本持平,但從中位數(shù)、上小四分位數(shù)和最大值的角度來看,G-measure性能較佳;對于邏輯回歸分類器,SSDBSCAN Filter的G-measure值分布集中,且中位數(shù)、最小值、下四分位數(shù)明顯高于其他方法,顯示出最佳的性能.

      由圖3 可見,在樸素貝葉斯作為分類器的情況下,SSDBSCAN Filter的AUC度量中位數(shù)明顯提高,上下四分位數(shù)之間的差距縮??;對于隨機(jī)森林,AUC值的中位數(shù)明顯高于其余兩種方法,最小值也有一定的提升.結(jié)合圖1和圖2可知,相比于Burak Filter和DBSCAN Filter, SSDBSCAN Filter總具有較好的G-measure與AUC性能.

      綜上所述,從選擇的4種性能度量PD、PF、G-measure和AUC的結(jié)果來看,在大部分的數(shù)據(jù)集上,SSDBSCAN Filter提高預(yù)測率的同時降低了誤報率.且使用不同的分類方法:樸素貝葉斯、隨機(jī)森林或邏輯回歸,篩選后的跨項目數(shù)據(jù)所構(gòu)建的預(yù)測模型總具有較好的性能度量結(jié)果.顯然, SSDBSCAN Filter最大限度地利用了本項目數(shù)據(jù)信息,較好地解決了大量不相關(guān)的跨項目數(shù)據(jù)影響預(yù)測的問題,顯著提高了跨項目缺陷預(yù)測性能.

      4.3 顯著性檢驗 統(tǒng)計學(xué)研究中,p值常用于反映兩者間差別有無統(tǒng)計學(xué)意義.p值越小,越有理由認(rèn)為對比事物間存在差異.p>0.05稱“不顯著”;p≤0.05稱“顯著”,p≤0.01稱“非常顯著”.從顯著性檢驗的角度,我們將SSDBSCAN Filter與Burak Filter、DBSCAN Filter分別進(jìn)行p檢驗,得到以下結(jié)果:

      表4 p值結(jié)果對比

      由上表易知,結(jié)果中所有p值均≤0.05,少部分p值≤0.01,因此有理由認(rèn)為本文提出的SSDBSCAN Filter與Burak Filter、DBSCAN Filter的差別具有顯著的統(tǒng)計學(xué)意義.

      5 結(jié)論

      本文中針對跨項目數(shù)據(jù)中存在大量不相關(guān)數(shù)據(jù)的問題,提出了SSDBSCAN Filter用于跨項目數(shù)據(jù)篩選.該方法的優(yōu)勢在于可利用少量帶有類標(biāo)號的本項目數(shù)據(jù)進(jìn)一步提升篩選效果.實驗結(jié)果表明,相比于前人提出的Burak Filter和DBSCAN Filter,利用本文中提出的SSDBSCAN Filter所篩選的跨項目數(shù)據(jù),在樸素貝葉斯、隨機(jī)森林、邏輯回歸這3種分類器上所構(gòu)建的跨項目缺陷預(yù)測模型的性能均有明顯提高.

      在后續(xù)工作中,我們將收集更多的數(shù)據(jù)來驗證我們提出方法的通用性.同時,將進(jìn)一步考慮采用更為高效的半監(jiān)督聚類算法對跨項目數(shù)據(jù)進(jìn)行數(shù)據(jù)篩選.

      [1] 李勇. 結(jié)合欠抽樣與集成的軟件缺陷預(yù)測[J].計算機(jī)應(yīng)用,2014,34(8):2291-2294.

      [2] 王培,金聰,葛賀賀.面向軟件缺陷預(yù)測的互信息屬性選擇方法[J].計算機(jī)應(yīng)用,2012,32(6):1738-1740.

      [3] Liu M, Miao L, Zhang D. Two-stage cost-sensitive learning for software defect prediction[J]. IEEE Transactions on Reliability, 2014, 63(2): 676-686.

      [4] Jing X Y, Ying S, Zhang Z W, et al. Dictionary learning based software defect prediction[C]// Proceedings of the 36th International Conference on Software Engineering. New York: ACM,2014: 414-423.

      [5] Zimmermann T, Nagappan N, Gall H, et al. Cross-project defect prediction: a large scale experiment on Cross-project defect prediction: a large scale experiment on data vs. domain vs. process[C]// Proceedings of the the 7th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering. New York: ACM, 2009: 91-100.

      [6] Turhan B, Menzies T, Bener A B, et al. On the relative value of cross-company and within-company data for defect prediction[J]. Empirical Software Engineering, 2009, 14(5): 540-578.

      [7] Peters F, Menzies T, Marcus A. Better cross company defect prediction[C]// Mining Software Repositories (MSR). San Francisco: IEEE, 2013: 409-418.

      [8] Kawata K, Amasaki S, Yokogawa T. Improving Relevancy Filter Methods for Cross-Project Defect Prediction[M]// Applied Computing & Information Technology. Springer International Publishing, 2016: 1-12.

      [9] Ma Y, Luo G, Zeng X, et al. Transfer learning for cross-company software defect prediction[J]. Information and Software Technology, 2012, 54(3): 248-256.

      [10] Jing X, Wu F, Dong X, et al. Heterogeneous cross-company defect prediction by unified metric representation and cca-based transfer learning[C]// Proceedings of the 2015 10th Joint Meeting on Foundations of Software Engineering. New York: ACM, 2015: 496-507.

      [11] Turhan B, MiSiRLi A T, Bener A. Empirical evaluation of the effects of mixed project data on learning defect predictors[J]. Information and Software Technology, 2013, 55(6): 1101-1118.

      [12] Chen L, Fang B, Shang Z, et al. Negative samples reduction in cross-company software defects prediction[J]. Information and Software Technology, 2015, 62: 67-77.

      [13] Yu Xiao,Liu Jin, Fu Mandi, et al. A Multi-Source TrAdaBoost Approach for Cross-Company Defect Prediction[C]// The 28th International Conference on Software Engineering & Knowledge Engineering. San Francisco Bay, California, USA,2016: 237-242.

      [14] Lelis L, Sander J. Semi-supervised density-based clustering[C]// 2009 Ninth IEEE International Conference on Data Mining. Miami: IEEE, 2009: 842-847.

      [15] Boetticher G, Menzies T, Ostrand T. PROMISE Repository of empirical software engineering data[J]. West Virginia University, Department of Computer Science, 2007.

      (責(zé)任編輯 江津)

      A data filtering method based on SSDBSCANfor cross-project defect prediction

      WU Man1,2,3, ZHANG Jiansheng1,2, MA Chuanxiang1,2, AN Gege3, YU Xiao3

      (1.School of Computer Science and Information Engineering, Hubei University, Wuhan 430062, China;2.Educational Informationalization Engineering Research Center of Hubei Province, Wuhan 430062,China;3.State Key Lab of Software Engineering, Computer School, Wuhan University, Wuhan 430072, China)

      Since massive irrelevant cross-project data degrades the performance of cross-project defect prediction model in cross-project defect prediction, a data filtering method based on SSDBSCAN (i.e., SSDBSCAN filter) was proposed for cross-project defect prediction. Firstly, the method combined limited amount of labeled within-project data, cross-project data and unlabeled within-project data. Secondly, sub-clusters were found by using SSDBSCAN algorithm. Finally, cross-project data in the sub-clusters was collected and some cross-project data which did not belong to any sub-clusters was discarded as noisy data. The experiments were conducted on 15 public PROMISE datasets using three different classifiers with four performance metrics. Compared with Burak Filter and DBSCAN Filter, the experimental results showed that SSDBSCAN Filter increasedPDvalue, reducedPFvalue and achieved higher G-measure andAUCvalues.

      academic cross-project defect prediction; data filter; SSDBSCAN

      2017-01-28

      湖北省自然科學(xué)基金(2011CDB072)和湖北大學(xué)《數(shù)據(jù)挖掘》精品課程經(jīng)費(fèi)資助

      伍蔓(1996-),女,本科生; 馬傳香(1971-),女,通信作者,教授,博士,主要研究方向為數(shù)據(jù)挖掘、云計算,E-mail:mxc838@hubu.edu.cn

      1000-2375(2017)05-0550-08

      TB324.1

      A

      10.3969/j.issn.1000-2375.2017.05.021

      猜你喜歡
      標(biāo)號度量實例
      有趣的度量
      模糊度量空間的強(qiáng)嵌入
      迷向表示分為6個不可約直和的旗流形上不變愛因斯坦度量
      非連通圖2D3,4∪G的優(yōu)美標(biāo)號
      地質(zhì)異常的奇異性度量與隱伏源致礦異常識別
      非連通圖D3,4∪G的優(yōu)美標(biāo)號
      非連通圖(P1∨Pm)∪C4n∪P2的優(yōu)美性
      完形填空Ⅱ
      完形填空Ⅰ
      非連通圖C3(m,0,0)∪G的優(yōu)美性
      长兴县| 会同县| 赣榆县| 顺昌县| 柳河县| 兴安盟| 长寿区| 五家渠市| 年辖:市辖区| 施秉县| 深泽县| 延安市| 辉南县| 普兰县| 繁峙县| 祥云县| 洱源县| 金堂县| 大埔区| 聊城市| 绵阳市| 昭苏县| 磴口县| 高密市| 仪陇县| 芮城县| 东港市| 五大连池市| 醴陵市| 高唐县| 灵川县| 黄陵县| 察哈| 盖州市| 普定县| 通辽市| 福海县| 隆德县| 东安县| 龙江县| 韩城市|