隨機森林中訓練每一棵樹輸入的m個特徵都是隨機選取的嗎?

時間 2021-06-02 01:46:48

1樓:石頭

隨機森林按照隨機的物件分為兩種:在變數(列、字段)上的隨機化、和在資料(行、個案)上的隨機化。無論書上是怎麼定義隨機森林,但我所希望實現的隨機森林是先隨機選取特徵,再用全部的資料生成樹,然後重複這個過程生成森林。

而不是在每個節點再進行隨機抽取,因為對於資料探勘來說,在每個節點上進行隨機選取沒有實際應用上的意義。樓上說得好,每棵樹都是解決一部分問題的專家,我們做隨機森林就是為了建立乙個龐大的專家群。

如果你想實現對特徵隨機選取(甚至遍歷選取),可以自己進行二次開發。親測可以很容易做出一片真正的隨機森林,並生成海量的規則。然後再根據專案要求,從規則中篩選出對現實決策有價值的規則集合。

(如果生成的規則是海量的,還需要另外程式設計做篩選器去除多餘的規則)實際使用的效果非常好,很值得去嘗試一下。

另外在應用中發現,特徵數量不用取很多,一般1-3個就可以了,4個以上能生成的新規則就開始急劇下降,大概這就是CRT一般最多隻生成5層的原因。

2樓:

跟常規的bagging區別就是不僅樣本random,feature也random,所以每棵樹的樣本的feature也random,不一定不一樣哦(一樣的概率太小了)

3樓:

瀉藥。@張馨宇 和 @Stark Einstein 兩位大牛的回答言簡意賅,相信已經可以解答題主的問題了。

我只談談我對隨機森林的使用:

1、它是乙個Out Of Box的演算法,也就是它對超引數的依賴不強,可以拿來即用;

所以一開始接觸資料探勘的時候,感覺隨機森林真是美,直接把資料扔進模型,不用資料預處理、進行簡單調參(其實就是試個值),就能得到乙個相對不錯的的結果。

2、它的另乙個更重要的作用是用來做特徵提取

4樓:

除了一次性隨機抽取部分特徵用來構建一棵CART之外,還可以在CART每次branching的時候隨機抽取一部分特徵計算Gini impurity或均方誤差來選擇best split feature(RF作者使用的這種方法)。更進一步,在構建sub-space的時候,不僅可以使用feature selection,還可以使用feature transformation,每次braching隨機選擇乙個變換矩陣將原始feature變換到低維空間。More randomness, more robust ^ ^

針對為什麼在每次branching的時候只從隨機抽取的部分feature中找best split做補充。如果資料集中有幾個feature是十分predictive的,那麼所有的CART在branching都傾向於使用這個幾個feature,最終結果是雖然每棵樹的訓練樣本不相同,但仍然長得很像,而在branching上加randomness可以消除這種現象。

如何證明一棵樹是樹?

HIPA兄 其實你提的問題,提得不具體,就好比 如何判斷 這個人 是不是 這個人 這種問題根本沒有乙個具體的敘述性陳詞。我和你都是人啊,他和她都是人啊,人這個概念大家都一致,但是 誰 是不是 誰 就不一致了。首先,第乙個 一棵樹 是屬性還是個體?如果是個體,那麼第二個 乙個樹 是綜合屬性,它們就是有...

親手種上一棵樹是什麼體驗?

望一望 種樹很累,時間不長,但是剛開始照料的時間要多一些,畢竟剛種下去的,過一段時間就好了,就能看到到了春天綠意盎然生機勃勃的樹了。 小七學姐 在我的記憶裡面,印象中,最清楚的是上初一的時候,和父親一塊在家裡面種上了一棵樹。這棵樹對我的意義很大。爸爸常年不在家,就算在家呆的時間也不長,這次爸爸好不容...

在無人森林裡,一棵樹倒下會發出聲音嗎?

跟風狗營銷法。我在二線 03年初中時我靠n多捷安特。乙個班一半男生是捷安特哦,即使剛入學時騎著女式的 老爸的 老媽的車,以後很多買了捷安特,都是跟風狗 我買了巨鳳 賽文哥慢發明了超市購物車,早期超市的購物者並沒有立即使用哥慢的購物車。他們寧願從家裡提摟買菜的籃子。要說服那些家庭主婦們放下家裡的菜籃子...