R語言數據挖掘實踐——Rattle模型評估案例實戰

R語言數據挖掘實踐——Rattle模型評估案例實戰

現在通過一個綜合實例,完整地講述模型的評估與選擇。

數據介紹

這個案例選擇的數據來源於Rattle程序包中關於審計的"audit.csv"數據集,在data選項中,單擊“Execute”,這時會彈出是否加載默認數據集的提示,點擊“是”,然後在“Filename”中選擇“audit.csv”文件,再單擊“Execute”,這時就將審計的數據集加載進來了。

R語言數據挖掘實踐——Rattle模型評估案例實戰

讀入數據後,切換至Explore選項,對數據集進行描述性分析,選擇“Summary”類型,單擊“Execute”。

R語言數據挖掘實踐——Rattle模型評估案例實戰

執行結果列出了數據集中所包含的變量,以及變量的最小值、最大值、中位數、眾數、均值、四分位數,對於定性變來那個,描述分析圖中列出了每個類別的數量。

模型建立

對數據進行了簡單分析之後,我們切換至Model選項,選擇Forest建立隨機森林模型,選擇參數,建立500棵決策樹,每一節點上利用的變量個數為3個,單擊“Execute”。

R語言數據挖掘實踐——Rattle模型評估案例實戰

從執行結果我們可以看到,隨機森林模型中含有1400個訓練集樣本,並利用隨機森林模型原理對缺失值進行插值。模型利用數據集中的TARGET-Adjusted為響應變量。

模型結果分析

對隨機森林模型的結果分析,主要有隨機森林的重要值分析、模型之間的混淆矩陣對比分析和模型之間的風險圖分析。

1、隨機森林重要值分析

隨機森林方法的一個重要特徵是能夠計算每個變量的重要值,Rattle提供兩種基本的重要值,一種是採用精度平均減少值作為度量標準,另一種是採用節點不純度的平均減少值作為度量標準。模型變量重要值的結果分析如下圖:

R語言數據挖掘實踐——Rattle模型評估案例實戰

按照第一種標準(MeanDecreaseAccuracy)分析,自變量Marital對於模型的預測能力是最重要的,自變量Income在第一種標準下僅僅屬於中等重要程度。然而在第二種判斷標準(MeanDecreaseGini)下,自變量Income對於模型的預測能力時非常重要的,而自變量Marital的重要性僅排在第二位。

2、不同模型之間的混淆矩陣對比情況

模型之間的混淆矩陣對比如下圖所示:

R語言數據挖掘實踐——Rattle模型評估案例實戰

從上圖中可以知道:

  1. 決策樹模型的預測誤差為(6+9)/(71+6+9+14)=15%,即將6%的真實結果為0的樣本錯誤地預測為1的類別,將9%的真實結果為1的樣本錯誤地預測為0的類別;

  2. 隨機森林模型的預測誤差為17%,即將7%的真實結果為0的樣本錯誤地預測為1的類別,將10%的真實結果為1的樣本錯誤地預測為0的類別;

  3. 支持向量機模型的預測誤差為17%,即將5%的真實結果為0的樣本錯誤地預測為1的類別,將12%的真實結果為1的樣本錯誤地預測為0的類別;

  4. 自適應選擇模型的預測誤差為18%,即將8%的真實結果為0的樣本錯誤地預測為1的類別,將10%的真實結果為1的樣本錯誤地預測為0的類別。

單純從預測模型的混淆矩陣進行分析可以發現,自適應選擇模型的預測能力最差,誤差高達18%,支持向量機模型以及隨機森林模型其次,預測誤差為17%,而預測能力較強的模型為決策樹模型,預測誤差為15%。

3、不同模型之間的風險圖分析

不同模型之間的風險圖分析如下:

R語言數據挖掘實踐——Rattle模型評估案例實戰

從上圖可以得知,圖形下方面積最大的是根據自適應選擇模型繪製的風險圖,該圖像中有90%的面積位於Target-Adjusted線的下方,而決策樹模型的Target-Adjusted線下方的面積僅為85%,隨機森林和支持向量機的線下方面積為88%。

綜合分析來看,決策樹模型在在混淆矩陣中展現的預測誤差率是最低的,預測能力最強,而在風險圖分析中,決策樹模型的線下方面積所佔比最小;與此相反,自適應模型呈現出另一個極端:混淆矩陣中預測能力最差,風險分析中線下面積所佔比最大;支持向量機模型與隨機森林模型表現中庸。我們暫且先選擇隨機森林模型來完成下一步的分析操作。

4、模型ROC圖及相關圖表

模型的ROC圖及相關圖表如下:

R語言數據挖掘實踐——Rattle模型評估案例實戰

  • ROC圖繪製的是正確肯定判斷率與錯誤肯定判斷率之間的關係圖。模型正確肯定判斷率與錯誤肯定判斷率呈現正比例關係變化,且在錯誤肯定判斷率較低時正確肯定判斷率的變化幅度較大;

  • 精確度與敏感度圖中,精確度與敏感度呈現反比例變動趨勢,說明在獲得模型精確度的同時將不得不犧牲模型的敏感度;

相關推薦

推薦中...