4-1 前言
本 汽 車 保 險 行 銷 例 題 來 自 於 著 名 資 料 探 勘 網 站 UCI KDD Archive 中關於多變數類型的資料集(Data set),其數據為 CoIL2000 競賽題目,本章同樣利用類神經網路方法中的倒傳遞網路與決策樹方 法,試圖從取得之數據中建立購買汽車保險的顧客模型。
4-1-1 資料描述
本例題所取得之數據原為競賽題目,因此數據取得時已經過初步 整理,其中共有 5822 筆顧客記錄,每筆記錄包含 86 個變數,變數 1
~43 為人口統計資料,包含教育程度、收入、工作類型等…;44~
85 為保險產品資料,包含顧客所購買的其他保險以及是否有出險紀 錄等;變數 86 為是否購買汽車保險,為輸出變數。
4-1-2 變數篩選
本例題因輸入變數數目龐大,因此,將原始數據利用 XLminer 軟體中 Logistic Regression 的逐步迴歸功能,將變數篩選至僅留下 7 個輸入變數,表 4.1 為變數篩選後的結果。
4 488
表 4.1 篩選後的變數
變數內容 變數型態
第 18 項 Lower level education 連續值:0~9 第 22 項 Middle management 連續值:0~9 第 47 項 Contribution car policies 連續值:0~9 第 64 項 Contribution social security
insurance policies 連續值:0~9 第 65 項 Number of private third party
insurance 連續值:1~12 第 68 項 Number of car policies 連續值:0~2 第 82 項 Number of boat policies 連續值:0~2 輸出變數 Number of mobile home
policies 離散值:0~1
原數據中輸出變數的部分,紀錄為 1 者僅有 348 筆,而記錄為 0 者則有 5474 筆,因數量差異過大,故保留所有紀錄為 1 者,再從記 錄為 0 者中隨機挑選出 348 筆,將兩者合併,因此,本例題所用之數 據為 696 筆。
4-1-3資料前處理
本例題資料前處理方式與 3-1-3 節類似,主要分成類神經網路方 法與決策樹網路方法二種,不過由於原始數據已是數值形式,因此在 類神經網路方法中可以直接運用,而決策樹方法僅需針對數值的屬性 加以設定,如表 4.2 所示,即可以進行模型建構。
表 4.2 決策樹方法數值屬性設定
變數 數值屬性
第 18 項 連續值 第 22 項 連續值 第 47 項 連續值 第 64 項 連續值 第 65 項 連續值 第 68 項 連續值 第 82 項 連續值 輸出變數 離散值
4-2 類神經網路方法
4-2-1模型建構
利用類神經網路方法中的倒傳遞網路建立模型,使用 PC Neuron 軟體,網路設定值方面則參照 3-2-1 節之設定方式,訓練範例為 348 筆,測試範例為 348 筆,學習循環次數則使用最佳化設定,如表 4.3 所示,隱藏單元數分別為 2、4、8、16、32 個,其他設定部分則使用 軟體建議值。
5 500
表 4.3 最佳化學習循環次數
隱藏單元數 學習循環次數
2 1000 4 1000 8 500 16 500 32 500
利用上述設定產生傳遞網路模型,並繪製測試範例提升圖,以及 記錄軟體所產生之混亂矩陣、敏感性分析及誤判率。
圖 4.1~圖 4.5 為各隱藏單元數之最佳學習循環次數測試範例提 升圖。
0 50 100 150 200
0 50 100 150 200 250 300 350 400
會員與非會員人數 會
員 人 數
圖 4.1 隱藏單元數=2,學習循環=1000 之測試範例提升圖
0 50 100 150 200
0 50 100 150 200 250 300 350 400
會員與非會員人數 會
員 人 數
圖 4.2 隱藏單元數=4,學習循環=1000 之測試範例提升圖
0 50 100 150 200
0 50 100 150 200 250 300 350 400
會員與非會員人數 會
員 人 數
圖 4.3 隱藏單元數=8,學習循環=500 之測試範例提升圖
5 522 0
50 100 150 200
0 50 100 150 200 250 300 350 400
會員與非會員人數 會
員 人 數
圖 4.4 隱藏單元數=16,學習循環=500 之測試範例提升圖
0 50 100 150 200
0 50 100 150 200 250 300 350 400
會員與非會員人數 會
員 人 數
圖 4.5 隱藏單元數=32,學習循環=500 之測試範例提升圖
由圖 4.1~圖 4.5 可知,各隱藏單元數之測試範例提升圖,在學 習循環最佳化後其結果差異性不大。
表 4.4 為軟體所產生之測試範例混亂矩陣(Confusion Matrix)
表 4.4 測試範例混亂矩陣
隱藏單元數 實際
推論 是 否 合計
是 130 68 198
否 44 106 150
2
合計 174 174 348
是 120 59 179
否 54 115 169
4
合計 174 174 348
是 123 66 189
否 51 108 159
8
合計 174 174 348
是 121 63 184
否 53 111 164
16
合計 174 174 348
是 118 62 180
否 56 112 168
32
合計 174 174 348
5 544
表 4.5 敏感性分析
隱藏單元數=2 隱藏單元數=4 隱藏單元數=8 隱藏單元數=16 隱藏單元數=32
項目 是 否 是 否 是 否 是 否 是 否
第 18 項 -4.4 4.4 -4.5 4.5 -4.4 4.4 -4.2 4.3 -4.3 4.2 第 22 項 1.1 -1.1 4.1 -4.1 2.0 -2.0 3.0 -3.0 1.9 -1.9 第 47 項 22.1 -22.1 28.7 -28.7 21.3 -21.4 26.9 -26.9 28.8 -28.5 第 64 項 7.5 -7.5 -4.0 4.0 -4.3 4.3 -4.9 5.0 -5.0 4.9 第 65 項 1.9 -1.9 4.5 -4.5 1.9 -1.9 3.9 -3.9 4.1 -4.1 第 68 項 2.9 -2.9 -1.6 1.6 1.9 -1.9 -0.9 0.9 -0.3 0.2 第 82 項 9.4 -9.4 8.3 -8.3 9.5 -9.5 9.6 -9.7 8.4 -8.3
最後,經由倒傳遞網路建立之模型誤判率,表示於表 4.6。
表 4.6 學習循環數最佳化之測試範例誤判率
隱藏單元數 學習循環次數 誤判率
2 1000 32.2%
4 1000 32.4%
8 500 33.0%
16 500 33.1%
32 500 34.0%
由上表可知,當隱藏單元數越多,測試範例誤判率有升高的趨 勢,但經過學習循環數最佳化之後,誤判率升高的幅度並不顯著。
4-3 決策樹方法
將 4-1-4 節 中 對 於 決 策 樹 方 法 所 做 的 資 料 前 處 理 數 據 載 入 XpertRule Miner 軟體中建立決策樹模型,設定方式則利用軟體內建的 自動歸納功能,將分支最小範例數設為「10」,分支最大顯著性設定 為「None」,分支判定準則設定為「Entropy」,並在決策樹形成後 利用人工方式修剪,以確保所形成的決策樹具有較佳的「普遍性」。
4-3-1決策樹模型建立與修剪
5 566
圖 4.6 未修剪之決策樹
由上圖可知,未修剪之決策樹規則共 13 項,而訓練範例誤判率 為 31.0%,測試範例誤判率為 38.7%。
接著,利用手動方式修剪,修剪方式同 3-3-2 節所述,修剪完成 之決策樹模型表示於圖 4.7。
圖 4.7 修剪後之決策樹
5 588
表 4.7 修剪後之規則
規則邏輯
規則 1
{Contribution car policies(47 項)≦0} and { Middle management (22 項)≦3}
and{ Number of private third party insurance (65 項 ) ≦ 0} Then 購買 = Yes(22.6%) ; No(77.4%)
規則 2
{Contribution car policies(47 項)≦0} and { Middle management (22 項)≦3}
and{ Number of private third party insurance (65 項)>0} Then 購買=
Yes(20.6%) ; No(79.4%)
規則 3 {Contribution car policies(47 項)≦0} and { Middle management (22 項)>3}
Then 購買=;Yes(45.7%) ; No(54.3%)
規則 4 {Contribution car policies(47 項)≧1}and{ Lower level education(18 項≦
3}and{ Middle management (22 項)≦2} Then 購買= Yes(79.3%); No(20.7%) 規則 5
{Contribution car policies(47 項)≧1}and{ Lower level education(18 項) ≦ 3}and{ Middle management (22 項)>2}and{ Number of private third party insurance (65 項)≦0} Then 購買= Yes(53.8%) ; No(46.2%)
規則 6
{Contribution car policies(47 項)≧1}and and{ Lower level education(18 項) ≦ 3}and{ Middle management (22 項)>2}and{ Number of private third party insurance (65 項)>0} Then 購買= Yes(69.6%) ; No(30.4%)
規則 7
{Contribution car policies(47 項)≧1}and and{ Lower level education(18 項)
>3}and{ Middle management (22 項 ) ≦ 1} Then 購 買 = Yes(50.0%) ; No(50.0%)
規則 8 {Contribution car policies(47 項)≧1}and and{ Lower level education(18 項)
>3}and{ Middle management (22 項)>1} Then 購買= Yes(58.7%) ; No(41.3%)
依照表 4.7 的規則,可已歸納出第 47 項(Contribution car policies)、第 22 項(Middle management)、第 18 項(Lower level education)、第 65 項(Number of private third party insurance)是重 要的輸入變數。
4-3-2 混亂矩陣
由測試範例混亂矩陣可看出決策樹方法對於結果判定的效果,如 表 4.8 所示。
表 4.8 決策樹方法之測試範例混亂矩陣 實際
推論
是 否 合計
是 134 81 215
否 40 93 133
合計 174 174 348
4-3-3 提升圖
圖 4.8 為決策樹方法之測試範例提升圖。
0 50 100 150 200
0 50 100 150 200 250 300 350 400
購買與否人數 購
買 人 數
圖 4.8 決策樹方法之測試範例提升圖
6 600
對於本例題而言,利用類神經網路方法與決策樹方法所產生的結 果差異,分成以下三點討論:
1. 誤判率
以誤判率而言,類神經網路方法在經由學習循環數最佳化後,其 測試範例誤判率以隱藏單元數為 2 時最低,為 32.2%,而決策樹方法 在經過修剪後之測試範例誤判率為 34.7%,兩者差異幅度有限,因 此,可說此二種方法在本例題中所建立的模型準確率相當。
2. 敏感性分析
在類神經網路方法中,利用敏感性分析所判斷出的輸入變數重要 性,參照表 4.5,當隱藏單元數為 2 時,大於 4 的變數依數值大小為 Contribution car policies、Number of boat policies、Number of private third party insurance、Lower level education;決策樹方法所判斷之重 要變數為 Contribution car policies、Middle management、Lower level education、Number of private third party insurance,二方法中有三項變 數相同,分別是 Contribution car policies、Lower level education 及 Number of private third party insurance,不同的變數為 Number of boat policies 及 Middle management,此二項變數意義為是否有購買船隻保 險及是否為中階管理人員,一般而言,有能力購買船隻的人應具有一 定經濟能力,因此,雖然此二項變數不同,但其意義確有相似的地方,
表 4.9 為整理重要輸入變數比較。
表 4.9 重要輸入變數
方法
排序 類神經網路方法 決策樹方法
1 第 47 項 Contribution car policies
第 47 項 Contribution car policies 2 第 82 項
Number of boat policies
第 22 項 Middle management 3 第 65 項
Number of private third party insurance
第 18 項 Lower level education 4 第 18 項
Lower level education
第 65 項
Number of private third party insurance
圖 4.9 為決策樹層級與類神經網路敏感性分析絕對值對於重要輸入變 數判定之結果。
0 5 10 15 20 25
1 2 3 4
1
類神經網路-敏感性分析絕對值 決
策 樹 層 級
Contribution car policies
Number of boat policies Number of private third party insurance Lower level education
圖 4.9 二方法重要輸入變數 3. 測試範例提升圖
比較類神經網路方法中隱藏單元數為 2 時的測試範例提升圖,如
6 622