摘要:在隨機森林介紹
中提到了隨機森林乙個重要特徵:能夠計算單個特徵變數的重要性。並且這一特徵在很多方面能夠得到應用,例如在銀行貸款業務中能否正確的評估乙個企業的信用度,關係到是否能夠有效地**貸款。但是信用評估模型的資料特徵有很多,其中不乏有很多噪音,所以需要計算出每乙個特徵的重要性並對這些特徵進行乙個排序,進而可以從所有特徵中選擇出重要性靠前的特徵。
一:特徵重要性
在隨機森林中某個特徵x的重要性的計算方法如下:
1:對於隨機森林中的每一顆決策樹,使用相應的oob
(袋外資料)資料來計算它的袋外資料誤差
,記為erroob1.
2: 隨機地對袋外資料oob所有樣本的特徵x加入雜訊干擾(就可以隨機的改變樣本在特徵x處的值),再次計算它的袋外資料誤差,記為erroob2.
3:假設隨機森林中有ntree棵樹,那麼對於特徵x的重要性=∑(erroob2-erroob1)/ntree,之所以可以用這個表示式來作為相應特徵的重要性的度量值是因為:若給某個特徵隨機加入雜訊之後,袋外的準確率大幅度降低,則說明這個特徵對於樣本的分類結果影響很大,也就是說它的重要程度比較高。
二:特徵選擇
在** variable selection using random forests
中詳細的論述了基於隨機森林的特徵選擇方法,這裡我們進行一些回顧。
首先特徵選擇的目標有兩個:
2:選擇出數目較少的特徵變數並且能夠充分的**應變數的結果。
其次一般特徵選擇的步驟為:
1:初步估計和排序
a)對隨機森林中的特徵變數按照vi(variable importance)降序排序。2:根據1中得到的每個特徵集和它們建立起來的隨機森林,計算對應的袋外誤差率(oob err),將袋外誤差率最低的特徵集作為最後選定的特徵集。b)確定刪除比例,從當前的特徵變數中剔除相應比例不重要的指標,從而得到乙個新的特徵集。
c)用新的特徵集建立新的隨機森林,並計算特徵集中每個特徵的vi,並排序。
d)重複以上步驟,直到剩下m個特徵。
隨機森林特徵選擇
隨機森林具有準確率高 魯棒性好 易於使用等優點,這使得它成為了目前最流行的機器學習演算法之一。隨機森林提供了兩種特徵選擇的方法 mean decrease impurity 和mean decrease accuracy。隨機森林由多個決策樹構成。決策樹中的每乙個節點都是關於某個特徵的條件,為的是將...
用隨機森林做特徵選擇
關於隨機森林的介紹,可見本部落格中 首先提出兩個指標,特徵重要性和分類精確度。一.特徵重要性 對於隨機森林中的一顆決策樹,其訓練資料集是使用bagging方法得到的,即套袋法,還有大約1 3的袋外資料我們可以用它進行特徵重要性的度量,假設針對某個特徵x,我們利用套袋法建立了一顆決策樹t,然後用t對袋...
隨機森林特徵篩選
剛看到一篇介紹特徵篩選的文章,裡面介紹基於模型的特徵排名,附加了乙個隨機森林的python程式,感覺挺好,趕緊mark下來。程式使用了skliearn機器學習庫,資料集為boston房屋 資料,源程式如下所示 fromsklearn.cross validationimportcross val s...