Can you summarize the following document?
        
  隨機森林的引入最初是由華裔美國人於1995年先提出的。然後隨機森林由Leo Breiman於2001年在一篇論文中提出的。這篇文章描述了一種結合隨機節點優化和bagging,利用類CART過程構建不相關樹的森林的方法。此外,本文還結合了一些已知的、新穎的、構成了現代隨機森林實踐的基礎成分,特別是

  

  決策樹是各種機器學習任務的常用方法。 Hastie等說:“樹學習是如今最能滿足於資料探勘的方法,因為它在特徵值的縮放和其他各種轉換下保持不變,對無關特徵是魯棒的,而且能生成可被檢查的模型。然而,它通常並不準確。”  特別的,生長很深的樹容易學習到高度不規則的模式,即過學習,在訓練集上具有低偏差和高方差的特點。隨機森林是平均多個深決策樹以降低方差的一種方法,其中,決策樹是在一個資料集上的不同部分進行訓練的。這是以偏差的小幅增加和一些可解釋性的喪失為代價的,但是在最終的模型中通常會大大提高效能。

  隨機森林訓練演算法把bagging的一般技術應用到樹學習中。給定訓練集 =,..., 和目標 =,...,,bagging方法重複("B"次)從訓練集中有放回地取樣,然後在這些樣本上訓練樹模型:  在訓練結束之後,對未知樣本x的預測可以通過對x上所有單個迴歸樹的預測求平均來實現:  或者在分類任務中選擇多數投票的類別。  這種bagging方法在不增加偏置的情況下降低了方差,從而帶來了更好的效能。這意味著,即使單個樹模型的預測對訓練基的噪聲非常敏感,但對於多個樹模型,只要這些樹並不相關,這種情況就不會出現。簡單地在同一個資料集上訓練多個樹模型會產生強相關的樹模型(甚至是完全相同的樹模型)。Bootstrap抽樣是一種通過產生不同訓練集從而降低樹模型之間關聯性的方法。  此外,上所有單個迴歸樹的預測的標準差可以作為預測的不確定性的估計:  樣本或者樹的數量B是一個自由引數。通常使用幾百到幾千棵樹,這取決於訓練集的大小和性質。使用交叉驗證,或者通過觀察out-of-bag誤差(那些不包含的抽樣集合在樣本的平均預測誤差),可以找到最優的B值。當一些樹訓練到一定程度之後,訓練集和測試集的誤差開始趨於平穩。

  上面的過程描述了樹的原始的 bagging 演算法。隨機森林與這個通用的方案只有一點不同:它使用一種改進的學習演算法,在學習過程中的每次候選分裂中選擇特徵的隨機子集。這個過程有時又被稱為“特徵 bagging”。這樣做的原因是 bootstrap 抽樣導致的樹的相關性:如果有一些特徵預測目標值的能力很強,那麼這些特徵就會被許多樹所選擇,這樣就會導致樹的強相關性。分析了不同條件下 bagging 和隨機子空間投影對精度提高的影響。  典型地,對於一個包含 個特徵的分類問題,可以在每次劃分時使用 formula_3 個特徵。對於迴歸問題,作者推薦 但不少於 5 個特徵。

  再加上一個隨機化步驟,就會得到極限隨機樹("extremely randomized trees"),即極限樹。與普通的隨機森林相同,他們都是單個樹的整合,但也有不同:首先,每棵樹都使用整個學習樣本進行了訓練,其次,自上而下的劃分是隨機的。它並不計算每個特徵的最優劃分點(例如,基於資訊熵或者基尼不純度),而是隨機選擇劃分點。該值是從特徵經驗範圍內均勻隨機選取的。在所有隨機的劃分點中,選擇其中分數最高的作為結點的劃分點。與普通的隨機森林相似,可以指定每個節點要選擇的特徵的個數。該引數的預設值,對於分類問題,是formula_4,對於迴歸問題,是formula_5,其中 formula_5是模型的特徵個數。

  

  隨機森林天然可用來對迴歸或分類問題中變數的重要性進行排序。下面的技術來自Breiman的論文,R語言包randomForest包含它的實現。  度量資料集 formula_7的特徵重要性的第一步是,使用訓練集訓練一個隨機森林模型。在訓練過程中記錄下每個資料點的out-of-bag誤差,然後在整個森林上進行平均。  為了度量第formula_8個特徵的重要性,第formula_8個特徵的值在訓練資料中被打亂,並重新計算打亂後的資料的out-of-bag誤差。則第formula_8個特徵的重要性分數可以通過計算打亂前後的out-of-bag誤差的差值的平均來得到,這個分數通過計算這些差值的標準差進行標準化。  產生更大分數的特徵比小分數的特徵更重要。這種特徵重要性的度量方法的統計定義由Zhu "et al."給出。  這種度量方法也有一些缺陷。對於包含不同取值個數的類別特徵,隨機森林更偏向於那些取值個數較多的特徵,partial permutations、growing unbiased trees可以用來解決這個問題。如果資料包含一些相互關聯的特徵組,那麼更小的組更容易被選擇。

  Lin和Jeon在2002年指出了隨機森林演算法和K-近鄰演算法(-NN)的關係。 事實證明,這兩種演算法都可以被看作是所謂的“加權鄰居的方案”。這些在資料集formula_11上訓練的模型通過檢視一個點的鄰居來計算一個新點的預測值formula_12,並且使用權重函式對這些鄰居進行加權:  其中, formula_14是第個點在同一棵樹中相對於新的資料點的非負權重。對於任一特定的點,formula_15的權重的和必須為1。權重函式設定如下:  因為森林平均了棵樹的預測,且這些樹具有獨立的權重函式formula_18,故森林的預測值是:  上式表明了整個森林也採用了加權的鄰居方案,其中的權重是各個樹的平均。在這裡,的鄰居是那些在任一樹中屬於同一個葉節點的點formula_15。只要formula_15與在某棵樹中屬於同一個葉節點,formula_15就是的鄰居。

  作為構建的一部分,隨機森林預測器自然會導致觀測值之間的不相似性度量。還可以定義未標記資料之間的隨機森林差異度量:其思想是構造一個隨機森林預測器,將“觀測”資料與適當生成的合成資料區分開來。 觀察到的資料是原始的未標記資料,合成資料是從參考分佈中提取的。隨機森林的不相似性度量之所以吸引人,是因為它能很好地處理混合變數型別,對輸入變數的單調變換是不敏感的,而且在存在異常值的情況下度量結果依然可靠。由於其固有變數的選擇,隨機森林不相似性很容易處理大量的半連續變數。

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

  隨機森林的優點有:
在機器學習中,隨機森林是一個包含多個決策樹的分類器,並且其輸出的類別是由個別樹輸出的類別的眾數而定。