1. 程式人生 > >決策樹、SVM、AdaBoost方法的比較

決策樹、SVM、AdaBoost方法的比較

- 選擇的演算法:決策樹、整合方法、支撐向量機

  • 決策樹

    • 模型在真實世界中也應用場景

      • 在金融方面使用決策樹建模分析,用於評估使用者的信用、貸款違約率等;在電子商務中,可以根據使用者的以往的交易種類、時間、價格建立商品推薦體統等。

    • 這個模型的優勢是什麼?

      • 決策樹易於實現和理解;
      • 對於決策樹,資料的準備工作一般比較簡單;
      • 能夠同時處理多種資料型別
      • 給定一個決策樹模型,可以根據產生的決策樹推出相應的邏輯表示式;
      • 通過靜態測試來對模型的表現進行評價;
      • 在相對較短的時間內可以對大量的資料做出非常好的結果;
      • 決策樹可以很好地擴充套件到大型資料中,同時決策樹的大小獨立於資料庫的大小;
      • 計算複雜度相對較低,結果的輸出易於理解,對部分的資料缺失不敏感。
    • 他什麼情況下表現最好?

      • 例項是由“屬性-值”對錶示的;
      • 目標函式具有離散的輸出值;
      • 訓練資料集包含部分錯誤(決策樹對錯誤有適應性);
      • 訓練資料缺少少量屬性的例項。
    • 這個模型的缺點是什麼?

      • 易於出現過擬合問題;
      • 忽略了資料集中屬性之間的相關性;
      • 對於類比不一致的樣本,決策樹的資訊增益傾向於那些資料值較多的特徵
    • 什麼條件下它表現很差?

      • 決策樹匹配的資料過多時;
      • 分類的類別過於複雜;
      • 資料的屬性之間具有非常強的關聯。
    • 根據我們當前資料集的特點,為什麼這個模型適合這個問題。

      • 不需要準備太多的訓練資料,不需要對資料過多的處理如刪除空白值等;
      • 易於編碼;
      • 該問題是非線性問題,決策樹能夠很好地解決非線性問題;
      • 演算法的執行效率高,對機器的要求較小。
  • 支撐向量機

    • 模型在真實世界中也應用場景
      • 支撐向量機用於文字和超文字的分類;
      • 用於影象分類;
      • 用於手寫體識別;
      • Kecman, Vojislav; Learning and Soft Computing — Support Vector Machines, Neural Networks, Fuzzy Logic Systems, The MIT Press, Cambridge, MA, 2001.
      • Barghout, Lauren. “Spatial-Taxon Information Granules as Used in Iterative Fuzzy-Decision-Making for Image Segmentation.” Granular Computing and Decision-Making. Springer International Publishing, 2015. 285-318.
    • 這個模型的優勢是什麼?

      • 分類效果好;
      • 可以有效地處理高維空間的資料;
      • 可以有效地處理變數個數大於樣本個數的資料;
      • 只是使用了一部分子集來進行訓練模型,所以SVM模型不需要太大的記憶體;
      • 可以提高泛化能力;
      • 無區域性極小值問題;
    • 他什麼情況下表現最好?

      • 資料的維度較高;
      • 需要模型具有非常強的泛化能力;
      • 樣本資料量較小時;
      • 解決非線性問題;
    • 這個模型的缺點是什麼?

      • 無法處理大規模的資料集,因為該演算法需要較長的訓練時間;
      • 無法有效地處理包含噪聲太多的資料集;
      • SVM模型沒有直接給出概率的估計值,而是利用交叉驗證的方式估計,這種方式耗時較長;
      • 對缺失資料非常敏感;
      • 對於非線性問題,有時很難找到一個合適的核函式。
    • 什麼條件下它表現很差?

      • 資料集的資料量過大;
      • 資料集中的含有噪聲;
      • 資料集中的缺失較多的資料;
      • 對演算法的訓練效率要求較高;
    • 根據我們當前資料集的特點,為什麼這個模型適合這個問題。
      • 該專案所提供的樣本資料相對較少;
      • 該問題是屬於非線性問題;
      • 資料集經過“獨熱編碼”後,維度較高;

- SVM可以指定不同的核函式,用於提高分類器的準確性。

  • 整合方法(AdaBoost)
    • 模型在真實世界中也應用場景
      • 用於二分類或多分類問題;
      • 用於特徵選擇;
      • 多標籤問題;
      • 迴歸問題;
        引用
    • 這個模型的優勢是什麼?
      • AdaBoost是一種精度非常高的分類器;
      • 可以與各種方法構建子分類器,AdaBoost演算法提供一種計算框架;
      • 弱分類器的構造方法比較簡單;
      • 演算法易於理解,不用做特徵篩選;
      • 不易發生過擬合。
      • 易於編碼;
    • 他什麼情況下表現最好?
      • 用於解決二分類問題;
      • 解決大類單標籤問題;
      • 處理多類單標籤問題;
      • 處理迴歸相關的問題。
    • 這個模型的缺點是什麼?
      • AdaBoost演算法的迭代次數不好設定,需要使用交叉驗證的方式來進行確定;
      • 資料集的不平衡分佈導致分類器的分類精度下降;
      • 訓練比較耗費時間;
      • 對異常值比較敏感;
    • 什麼條件下它表現很差?
      • 資料集分佈非常不均勻;
      • 資料集中含有較多的異常值;
      • 對演算法的訓練的效率要求較高;
    • 根據我們當前資料集的特點,為什麼這個模型適合這個問題。
      • 該資料集可以歸屬為多標籤分類問題;
      • 資料集中異常值較少;
      • 對演算法模型的準確率要就較高;