四、 結果與討論
4.2 實驗結果與討論
4.2.1 五種學習演算法之結果比較
我們針對獨立的學習演算法,使用決策樹(C4.5)、簡單貝氏分類器(Naive Bayes Classifier)、類神經網路(Artificial Neural Network ,ANN)、支援向量機(Support Vector
33
Machine ,SVM)和決策表(Decision Table)五種學習演算法,比較在兩種預測分析上,各學 習演算法在預測準確值上之表現,並加以分析結果。
4.2.1.1 總劑量預測
總劑量預測五種學習演算之結果如表 7,其中表現最好之演算法為決策表(Decision Table),我們將決策表和其餘四種學習演算法的結果作 paired t-test 檢定,若其差異之 p-value 小於 0.05,則在表 7 該演算法上以星號”*”標記之,而 p-value 小於 0.001 者,
會於表 7 該演算法上標記”〒”,表示該演算法和決策表之結果有顯著差異。
表 7. 總劑量預測五種演算法之比較
總劑量預測(%) C4.5 Naive Bayes ANN SVM Decision Table
“low dose” Recall 77.4* 79.0〒 69.8 8.0〒 74.9
“medium dose” Recall 72.8〒 67.7〒 79.6 96.1〒 78.9
“high dose” Recall 60.6〒 38.0〒 21.6〒 0.0〒 48.3
“low dose” Precision 76.3 71.8〒 80.2* 59.4〒 75.6
“medium dose” Precision 73.5* 70.2〒 66.1〒 50.6〒 72.4
“high dose” Precision 62.8〒 46.3〒 56.9* 0.0〒 73.4 Overall Accuracy 72.8 67.9〒 68.5〒 50.7〒 73.3 註:與 Decision Table 之比較:* 表示 p-value < 0.05,〒表示 p-value < 0.001。
4.2.1.2 PCA 劑量預測
PCA 劑量預測五種學習演算之結果如表 8,簡單貝氏分類器(Naive Bayes)為其中表 現最好之演算法,我們將簡單貝氏分類器和其餘四種學習演算法的結果作 paired t-test 檢定,以星號”*” 在表 8 上標記差異之 p-value 小於 0.05 之演算法,並以”〒”標記 差異之 p-value 小於 0.001 之演算法,表示該演算法和簡單貝氏分類器之結果有顯著差異。
34 表 8. PCA 劑量預測五種演算法之比較
PCA 劑量預測(%) C4.5 Naive Bayes ANN SVM Decision Table
“low dose” Recall 76.9〒 81.4 89.2* 99.9〒 82.8
“medium dose” Recall
*
51.5〒 48.1 19.1〒 0.0〒 42.3
“high dose” Recall
〒
45.4〒 50.8 8.4〒 0.0〒 26.8
“low dose” Precision
〒
76.1 75.4 62.0〒 52.8〒 68.4
“medium dose” Precision
〒
51.2〒 55.6 20.7〒 0.0〒 49.1
“high dose” Precision
〒 好的為簡單貝氏分類器(Naive Bayes),我們利用 paired t-test 檢定比較簡單貝氏分類器 (Naive Bayes)和其餘四種學習演算法結果之差異,若其差異之 p-value 小於 0.05,則在表 9 該演算法上以星號”*”標記之若小於 0.001 則以”〒”標記,表示該演算法和簡單貝 氏分類器(Naive Bayes)的結果有顯著差異。
從表 9 可以看出,單一的學習演算法在該預測分析上表現大多不佳,明顯受到類別 不平衡(class imbalance)問題之影響,預測結果大多傾向於預測多數類別(negative class),
其中類神經網路(ANN)和支援向量機(SVM)在少數類別(positive class)的表現最差,幾乎 是全數預測為多數類別(negative class)。
表 9. PCA 裝置調整設定預測分析五種學習演算法之比較,資料未刪除雜訊
PCA 裝置調整設定預測(%) C4.5 Naive Bayes ANN SVM Decision Table Positive Recall 25.5〒 65.8 0.0〒 0.0〒 0.8 Positive Precision
〒
25.4* 23.6 0.0〒 1.0〒 4.8 Positive F-score
〒
25.2〒 34.5 0.0〒 0.1〒 1.3
Negative Recall
〒
82.5〒 49.7 100.0〒 100.0〒 99.0 Negative Precision
〒
82.6〒 86.2 81.1〒 81.1〒 81.0 Negative F-score
〒
82.5〒 62.7 89.5〒 89.5〒 89.1 Geometric Mean
〒
45.8〒 56.6 0.0〒 0.2〒 3.2
Overall Accuracy
〒
71.7〒 52.7 81.1〒 81.1〒 78.9 註:與 Naive Bayes 之比較:* 表示 p-value < 0.05,〒表示 p-value < 0.001。
〒
為解決該預測分析類別不平衡之問題,我們搭配了減少多數類別取樣法(under
35
sampling)和增加少數類別取樣法(over sampling),利用改變取樣次數以平衡兩種類別資 料量。
表 10 為搭配減少多數類別取樣法(under sampling)之結果,其中表現最好之演算法 為決策表(Decision Table),使用 paired t-test 比較決策表(Decision Table)與其餘四種演算 法之差異,若其差異之 p-value 小於 0.05,則用星號”*”標記表 10 該演算法,並以”
〒”標記 p-value 小於 0.001 之該演算法。。
表 10. PCA 裝置調整設定預測分析五種學習演算法之比較,資料未刪除雜訊,搭配減少多數類別取樣法 (under sampling)
PCA 裝置調整設定預測(%) C4.5 Naive Bayes ANN SVM Decision Table Positive Recall 46.8* 54.9 71.4〒 2.2〒 52.6 Positive Precision 22.3〒 24.9 21.2〒 20.3 25.6 Positive F-score 30.1〒 33.7 31.0* 3.8〒 34.0 Negative Recall 62.0 60.2 39.6〒 98.2〒 63.3 Negative Precision 83.3〒 85.1 86.4 81.1〒 85.2 Negative F-score 70.9* 69.7 47.6〒 88.8〒 72.2 Geometric Mean 53.8* 56.2 40.2〒 8.8〒 56.9 Overall Accuracy 59.1* 59.1 45.7〒 80.0〒 61.3 註:與 Decision Table 之比較:* 表示 p-value < 0.05,〒表示 p-value < 0.001。
搭配增加少數類別取樣法(over sampling)之結果如表 11,其中類神經網路(ANN)為 其中表現最好之結果,與上述相同,利用 paired t-test 比較類神經網路(ANN)與其餘演算 法之差異,並且用星號”*”在表 11 上標記其差異之 p-value 小於 0.05 之演算法,而 p-value 小於 0.001 之演算法,則以”〒”標記之。
36
表 11. PCA 裝置調整設定預測分析五種學習演算法之比較,資料未刪除雜訊,搭配增加少數類別取樣法 (over sampling)
PCA 裝置調整設定預測(%) C4.5 Naive Bayes ANN SVM Decision Table Positive Recall 31.6〒 62.1* 67.8 1.9〒 36.5 Positive Precision
〒
22.0* 24.2 24.8 19.3 24.4 Positive F-score 25.3〒 34.3 34.7 3.4〒 28.7 Negative Recall
〒
73.7〒 53.4 48.4 98.8〒 73.1 Negative Precision
〒
82.2 85.9 84.2 81.2* 83.2 Negative F-score 77.6〒 65.1* 57.7 89.1〒 77.6 Geometric Mean
〒 個數,以提昇分類的準確度。在資料清理後,兩種類別的資料比例,從 81%(negative class):19%(positive class)降為 65%(negative class):35%(positive class),這表示資料清 理能降低類別不平衡的程度。資料清理後,再搭配減少多數類別取樣法(under sampling) 和增加少數類別取樣法(over sampling),以期改善類別不平之問題。
表 12 為資料清理(data cleaning)後之結果,表 13 為資料清理後,再搭配減少多數 類別取樣法(under sampling)之結果,表 14 則是資料清理後,再搭配增加少數類別取樣 法(over sampling)之結果。其中表現最好之演算法均為簡單貝氏分類器(Naive Bayes) , 同樣地,我們利用 paired t-test 檢定分別比較簡單貝氏分類器(Naive Bayes)和其餘四種學 習演算法結果之差異,若其差異之 p-value 小於 0.05,則在表 12、表 13 和表 14 該演 算法上以星號”*”標記之,並以”〒”標記 p-value 小於 0.001 之演算法,表示該演算 法和簡單貝氏分類器(Naive Bayes)的結果有顯著差異。
另外,為檢測資料清理(data cleaning)對上述演算法而言,是否對提升預測準確值有 其效果,我們針對相同的演算法,將未作資料清理和已做資料清理的結果作 paired t-test 檢定,若其差異之 p-value 小於 0.05,則在表 12、表 13 和表 14 三者已作資料清理之 結果,在該演算法的結果上以井字號”#”標記之,並以”※”標記 p-value 小於 0.001
37
者,表示使用資料清理與否對該演算法而言有顯著差異。從表 9 和表 12 可以看出,資 料清理後五種學習演算法中,決策樹(C4.5)、支援向量機(SVM)和決策表(Decision Table) 三種學習演算法在 positive F-score 和幾何平均的表現上都有顯著提升,表示資料清理對 這三種演算法而言都是有幫助的。而在類神經網路(ANN)上,即使做了資料清理,對該 演算法依舊沒有幫助。此外,只有簡單貝氏分類器(Naive Bayes)資料清理後,預測準確 值是些微下降的。而搭配減少多數類別演算法(under sampling)的部分,從表 10 和表 13 比較之下得知,決策樹(C4.5)、類神經網路(ANN)和支援向量機(SVM)三種學習演算法資 料清理後的表現是優於未作資料清理之結果,但其中只有支援向量機(SVM)是有顯著提 升的,而簡單貝氏分類器(Naive Bayes)和決策表(Decision Table)兩種演算法資料清理 後,預測準確值略微降低。此外,搭配增加少數類別演算法(over sampling)的部分,可 以比較表 11 和表 14,發現在決策樹(C4.5)、支援向量機(SVM)和決策表(Decision Table) 三者的表現上,資料清理後皆可顯著提升預測準確值,但資料清理對簡單貝氏分類器 (Naive Bayes)和類神經網路(ANN),似乎沒有明顯的改善。
就上述而言,利用 k-nearest-neighbor 演算法對資料進行資料清理(data cleaning),對 大多數的演算法而言,都有顯著之改善,其中以決策樹(C4.5)和支援向量機(SVM)最為 明顯,在資料清理後,配合減少多數類別取樣法(under sampling)和增加多數類別取樣法 (over sampling),與未作資料清理之結果相較準確度均有顯著提升。
4.2.1.4 五種學習演算法之結果討論
在總劑量預測分析中,五種學習演算法表現最好的是決策表(Decision Table),整體 準確度(overall accuracy)為 73.3%,而決策樹(C4.5)之結果僅略差於決策表,整體準確度 為 72.8%。PCA 劑量預測分析中,則是以簡單貝氏分類器(Naive Bayes)為表現最佳之演 算法,整體準確度為 65.4%,決策樹(C4.5)的整體準確度則為 64.1%,兩者僅些微的落差。
而在 PCA 裝置參數設定調整預測的部分,全數表現最好之結果為類神經網路(ANN)搭配 增加少數類別取樣法(over sampling),positive F-score 為 34.7%,第二之結果為簡單貝氏 分類 器 (Naive Bayes) 搭配增加少數類別取樣法(over sampling),positive F-score 為
38
34.3%, 而決策 樹(C4.5)最 好的結 果,為搭配資料 清理和 增加 少 數類別 取樣法 (over sampling),positive F-score 為 31.2%。
雖然在三種預測分析中,決策樹(C4.5)不是表現最好之演算法。但是,決策表 Positive Precision
〒※
23.2*# 22.0※ 0.0〒 27.8*※ 27.9 Positive F-score
〒※
30.2〒※ 33.4※ 0.0〒 6.1〒※ 27.2 Negative Recall
〒※
66.3〒※ 42.1※ 100.0〒 98.3〒※ 82.8 Negative Precision
〒※
83.4〒# 85.7# 81.1〒 81.4〒※ 83.2 Negative F-score
〒※
73.8〒※ 56.2※ 89.5〒 89.0〒※ 82.9 Geometric Mean
〒※
53.7※ 53.9※ 0.0〒 13.1〒※ 46.9 Overall Accuracy
〒※
62.0〒※ 46.6※ 81.1〒 80.4〒※ 72.4 註 1:與 Naive Bayes 之比較:* 表示 p-value < 0.05,〒表示 p-value < 0.001。
〒※
註 2:雜訊清理前後之比較:# 表示 p-value < 0.05,※表示 p-value < 0.001。
39
表 13. PCA 裝置調整設定預測分析五種學習演算法之比較,資料已刪除雜訊,搭配減少多數類別取樣法 (under sampling)
PCA 裝置調整設定預測(%) C4.5 Naïve Bayes ANN SVM Decision Table Positive Recall 52.9〒# 67.0# 72.5* 6.5〒※ 53.4 Positive Precision
〒
22.0 22.6※ 22.7 23.6 24.6 Positive F-score
〒#
31.0* 33.6 32.4 9.7〒※ 33.2 Negative Recall 56.2〒※ 45.6※ 39.2* 94.9〒※ 61.1 Negative Precision
〒#
83.7* 85.4 85.8 81.3〒# 85.0 Negative F-score 67.1〒※ 58.9※ 48.8〒 87.6〒※ 70.4 Geometric Mean
〒# Positive Precision
〒※
22.8 22.2※ 19.5*※ 21.9 24.0 Positive F-score
*
31.2〒※ 33.5# 26.1〒※ 8.9〒※ 32.5 Negative Recall
#
58.0〒※ 43.6※ 42.4 95.2〒※ 61.7 Negative Precision
〒※
84.2*# 85.7 84.8 81.3〒 84.5 Negative F-score
*#
68.5〒※ 57.4※ 45.9*# 87.7〒※ 70.9 Geometric Mean
〒※
55.4※ 54.3※ 29.2〒※ 19.7〒※ 55.5 Overall Accuracy
※
我們以決策樹為基礎演算法,使用 bagging、bagging +stacking、random forest、random forest + stacking 和 AdaBoost 五種整體學習演算法(ensemble learning algorithm)。另外,
因為在 PCA 裝置參數設定調整預測分析上,有類別不平衡(class imbalance)的問題,所 以 還 搭 配 了 減 少 多 數 類 別 取 樣 法 (under sampling) 和 增 加 少 數 類 別 取 樣 法 (over sampling),因此除上述五種整體學習演算法外,還使用了 bagging + over sampling、
bagging + under sampling、AdaBoost + over sampling、AdaBoost + under sampling 和