随机森林

维基百科,自由的百科全书
跳转至: 导航搜索

機器學習中,隨機森林是一個包含多個決策樹分類器, 並且其輸出的類別是由個別樹輸出的類別的眾數而定。 Leo BreimanAdele Cutler發展出推論出隨機森林的演算法。 而 "Random Forests" 是他們的商標。 這個術語是1995年由貝爾實驗室的Tin Kam Ho所提出的隨機決策森林random decision forests)而來的。這個方法則是結合 Breimans 的 "Bootstrap aggregating" 想法和 Ho 的"random subspace method" 以建造決策樹的集合。

學習演算法[编辑]

根據下列演算法而建造每棵樹:

  1. N 來表示訓練用例(样本)的個數,M表示特征数目。
  2. 输入特征数目 m ,用于确定决策树上一个节点的决策结果;其中m應远小於M
  3. N個訓練用例(样本)中以有放回抽样的方式,取樣N次,形成一个训练集(即bootstrap取樣),並用未抽到的用例(样本)作預測,評估其誤差。
  4. 對於每一個節點,隨機選擇m個特征,决策树上每个节点的决定都是基于这些特征确定的。根據這 m 個特征,計算其最佳的分裂方式。
  5. 每棵樹都會完整成長而不會剪枝(Pruning)(這有可能在建完一棵正常樹狀分類器後會被採用)。

優點[编辑]

隨機森林的優點有:

  • 對於很多種資料,它可以產生高準確度的分類器。
  • 它可以處理大量的輸入變數。
  • 它可以在決定類別時,評估變數的重要性。
  • 在建造森林時,它可以在內部對於一般化後的誤差產生不偏差的估計。
  • 它包含一個好方法可以估計遺失的資料,並且,如果有很大一部分的資料遺失,仍可以維持準確度。
  • 它提供一個實驗方法,可以去偵測 variable interactions 。
  • 對於不平衡的分類資料集來說,它可以平衡誤差。
  • 它計算各例中的親近度,對於数据挖掘、偵測偏離者(outlier)和將資料視覺化非常有用。
  • 使用上述。它可被延伸應用在未標記的資料上,這類資料通常是使用非監督式聚類。也可偵測偏離者和觀看資料。
  • 學習過程是很快速的。

外部連結[编辑]