2012-08-07 87 views

回答

0

決策樹可能是分佈式最常見的方式是森林。因爲通過計算獨立樹來進行分發並不重要,而不重要的是以分佈的方式高效地構建單個樹?

0

隨機森林當然可以很好地並行化,因爲每棵樹都是建立在(有希望的)隨機獨立子集的訓練數據上的。

但是,Hadoop已經決定了每個節點上的哪些數據(以及它的數量)。根據源數據,在分發到節點之前先進行隨機化可能不切實際。此外,每個節點上的觀測數量不再是RF算法的一個參數,它由Hadoop配置控制數據如何分佈以及節點上的數據冗餘度。如果沒有特別的注意,樣本偏差會很容易蔓延到每棵樹(專家)模型中。因爲CART中的二進制遞歸分區所需的核心計算(例如計算方法(除以計數的總和),誤差函數(方差,偏移量等))需要跨多個hadoop節點並行化單個樹(CART)基尼等)應該可以寫在地圖上減少。這並不是微不足道的,因爲節點需要非常健談,才能發揮作用 - 發送索引來分割原始數據樣本的子節點,然後遞歸子節點。我認爲這可能適用於真正龐大的數據集,但對於那些已經可以「適合」到單個工作站內存中的數據集來說,速度會更慢。

革命分析最近發佈了他們的版本或R已經在Hadoop集羣上實施了decsion樹。我沒有嘗試過,但看看它如何在各種大型數據集上執行會很有趣。

這裏是鏈接:Revolution Analytics Brings Big Data Decision Trees and New Hadoop Support to Predictive Analytics