官术网_书友最值得收藏!

2.4 實驗結果與分析

本節將通過實驗來驗證GB-RNSA的有效性。實驗采用否定選擇算法研究中普遍使用的兩類數據集,包括2D綜合數據集和UCI數據集。其中,2D綜合數據集是由Memphis大學的Dasgupta教授的研究小組提供的,是實值否定選擇算法性能測試的權威數據集。UCI數據集是經典的機器學習數據集,廣泛應用于檢測器的性能測試和生成效率測試。在實驗中,我們會將GB-RNSA與兩種傳統的實值否定選擇算法RNSA和V-Detector做比較。

實驗采用成熟檢測器的數量DN、檢測率DR、誤報率FAR和檢測器生成的時間代價DT來衡量算法的有效性。由于傳統算法RNSA采用預設檢測器數量作為算法的終止條件,為了保證三種算法在相同的實驗條件下進行有效對比,本書修改了RNSA算法,采用對非自體空間的期望覆蓋率作為算法的終止條件。

2.4.1 2D綜合數據集

這些數據集包含幾種不同的子數據集。我們選擇Ring、Stripe和Pentagram子數據集來測試GB-RNSA的檢測器生成性能。圖2.4顯示了這三種數據集在二維實值空間的分布。

圖2.4 Ring、Stripe和Pentagram數據集的分布

這三種數據集的自體集合大小為Nself= 1000。訓練集由自體集中隨機選擇的數據點組成,測試數據由二維[0,1]空間中隨機選擇的點組成。實驗重復20次取平均值。表2.8和表2.9顯示了實驗結果,其中括號中的值為方差。表2.8列出了GB-RNSA在三種數據集具有相同的期望覆蓋率(90%)、相同的訓練集大小(Ns= 300)、不同的自體半徑的情況下,檢測率和誤報率的對比。可以看出,算法在較小的自體半徑下,具有較高的檢測率和誤報率,同時在較大的自體半徑下,具有較低的檢測率和誤報率。表2.9列出了GB-RNSA在三種數據集具有相同的期望覆蓋率(90%)、相同的自體半徑(rs= 0.05)、不同的訓練集大小的情況下,檢測率和誤報率對比。可以看出,隨著訓練集增大,檢測率逐漸增大,誤報率逐漸減小。

表2.8 不同自體半徑的影響

表2.9 不同訓練集大小的影響

2.4.2 UCI數據集

實驗選取了三種標準的UCI數據集,包括Iris、Haberman's Survival和Abalone,實驗參數如表2.10所示。對這三種數據集,自體集和非自體集都是隨機選擇的,訓練集和測試集也是隨機選擇的。實驗重復20次并取平均值。

表2.10 UCI數據集的實驗參數

2.4.2.1 檢測器數量對比

圖2.5、圖2.6、圖2.7顯示了RNSA、V-Detector和GB-RNSA在三種數據集下的成熟檢測器數量的對比。從圖中可以看出,隨著期望覆蓋率的上升,三種算法所需的成熟檢測器數量相應上升。但是GB-RNSA的效率明顯優于其他兩種算法。對Iris數據集來說,為了達到期望覆蓋率99%, RNSA需要13527個成熟檢測器,V-Detector需要1432個,而GB-RNSA需要1166個,依次下降了89.4%和18.6%。對大數據集Abalone來說,為了達到期望覆蓋率99%, RNSA需要11500個成熟檢測器,V-Detector需要620個,而GB-RNSA需要235個,依次下降了94%和62.1%。因此,在相同的期望覆蓋率、不同的數據維度、不同的訓練集下,GB-RNSA生成的成熟檢測器數量相比RNSA和V-Detector大大減少。

圖2.5 RNSA、V-Detector和GB-RNSA檢測器數量對比(采用Haberman's Survival數據集,自體半徑為0.1)

圖2.6 RNSA、V-Detector和GB-RNSA檢測器數量對比(采用Iris數據集,自體半徑為0.1)

圖2.7 RNSA、V-Detector和GB-RNSA檢測器數量對比(采用Abalone數據集,自體半徑為0.1)

2.4.2.2 檢測器生成代價對比

圖2.8、圖2.9、圖2.10顯示了RNSA、V-Detector和GB-RNSA在三種數據集下的檢測器生成的時間代價的對比。從圖中可以看出,隨著期望覆蓋率的上升,RNSA和V-Detector的時間花費上升非常快,而GB-RNSA上升較緩慢。對Iris數據集來說,為了達到期望覆蓋率90%, RNSA的時間消耗是350.187秒,V-Detector是0.347秒,而GB-RNSA是0.1秒,依次降低了99.9%和71.2%。當期望覆蓋率為99%時,RNSA的時間消耗是1259.047秒,VDetector是40.775秒,而GB-RNSA是3.659秒,依次降低了99.7%和91.0%。對其他兩種數據集,實驗結果是類似的。因此,相比RNSA和V-Detector, GB-RNSA的檢測器生成效率有了大幅提高。

圖2.8 RNSA、V-Detector和GB-RNSA生成檢測器的時間消耗對比(采用Haberman's Survival數據集,自體半徑為0.1)

圖2.9 RNSA、V-Detector和GB-RNSA生成檢測器的時間消耗對比(采用Iris數據集,自體半徑為0.1)

圖2.10 RNSA、V-Detector和GB-RNSA生成檢測器的時間消耗對比(采用Abalone數據集,自體半徑為0.1)

2.4.2.3 檢測率和誤報率對比

圖2.11、圖2.12、圖2.13顯示了RNSA、V-Detector和GB-RNSA在三種數據集下的檢測率和誤報率對比。從圖中可以看出,當期望覆蓋率大于90%時,三種算法的檢測率較為接近,其中RNSA稍低一點;而GB-RNSA的誤報率明顯低于RNSA和V-Detector。對Haberman's Survival數據集來說,當期望覆蓋率為99%時,RNSA的誤報率是55.2%, V-Detector是30.1%,而GB-RNSA是20.1%,依次降低了63.6%和33.2%。對Abalone數據集來說,當期望覆蓋率為99%時,RNSA的誤報率是25.1%, V-Detector是20.5%,而GB-RNSA是12.6%,依次降低了49.8%和38.5%。因此,在相同的期望覆蓋率下,相比RNSA和V-Detector, GB-RNSA的誤報率明顯降低。

圖2.11 RNSA、V-Detector和GB-RNSA的檢測率和誤報率對比(采用Haberman's Survival數據集,自體半徑為0.1)

圖2.12 RNSA、V-Detector和GB-RNSA的檢測率和誤報率對比(采用Iris數據集,自體半徑為0.1)

圖2.13 RNSA、V-Detector和GB-RNSA的檢測率和誤報率對比(采用Abalone數據集,自體半徑為0.1)

ROC曲線是一個采用檢測率(True positive rate)和誤報率(False positive rate)繪制分類模式的圖形方法。圖2.14顯示了RNSA、V-Detector和GBRNSA在三種數據集下的ROC曲線對比。一個好的分類模式的曲線應該盡可能分布在圖形的左上方。從圖中可以看出,GB-RNSA優于RNSA和V-Detector。

圖2.14 RNSA、V-Detector和GB-RNSA的ROC曲線對比

主站蜘蛛池模板: 嵊州市| 连云港市| 华亭县| 方正县| 隆林| 旌德县| 永靖县| 诸城市| 鄂温| 九寨沟县| 宁城县| 沈丘县| 乳源| 句容市| 宁海县| 丹棱县| 平顺县| 连山| 吐鲁番市| 葫芦岛市| 富阳市| 黑河市| 金乡县| 墨玉县| 平泉县| 秦安县| 平安县| 德江县| 绵阳市| 汕头市| 汉寿县| 长岛县| 太原市| 朔州市| 上思县| 来宾市| 克东县| 洛扎县| 宁明县| 文化| 阿坝县|