隨機森林之特徵選擇

2022-03-12 03:17:37 字數 1148 閱讀 3843

摘要:在隨機森林介紹

中提到了隨機森林乙個重要特徵:能夠計算單個特徵變數的重要性。並且這一特徵在很多方面能夠得到應用,例如在銀行貸款業務中能否正確的評估乙個企業的信用度,關係到是否能夠有效地**貸款。但是信用評估模型的資料特徵有很多,其中不乏有很多噪音,所以需要計算出每乙個特徵的重要性並對這些特徵進行乙個排序,進而可以從所有特徵中選擇出重要性靠前的特徵。

一:特徵重要性

在隨機森林中某個特徵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)降序排序。

b)確定刪除比例,從當前的特徵變數中剔除相應比例不重要的指標,從而得到乙個新的特徵集。

c)用新的特徵集建立新的隨機森林,並計算特徵集中每個特徵的vi,並排序。

d)重複以上步驟,直到剩下m個特徵。

2:根據1中得到的每個特徵集和它們建立起來的隨機森林,計算對應的袋外誤差率(oob err),將袋外誤差率最低的特徵集作為最後選定的特徵集。

隨機森林特徵選擇

隨機森林具有準確率高 魯棒性好 易於使用等優點,這使得它成為了目前最流行的機器學習演算法之一。隨機森林提供了兩種特徵選擇的方法 mean decrease impurity 和mean decrease accuracy。隨機森林由多個決策樹構成。決策樹中的每乙個節點都是關於某個特徵的條件,為的是將...

用隨機森林做特徵選擇

關於隨機森林的介紹,可見本部落格中 首先提出兩個指標,特徵重要性和分類精確度。一.特徵重要性 對於隨機森林中的一顆決策樹,其訓練資料集是使用bagging方法得到的,即套袋法,還有大約1 3的袋外資料我們可以用它進行特徵重要性的度量,假設針對某個特徵x,我們利用套袋法建立了一顆決策樹t,然後用t對袋...

隨機森林特徵篩選

剛看到一篇介紹特徵篩選的文章,裡面介紹基於模型的特徵排名,附加了乙個隨機森林的python程式,感覺挺好,趕緊mark下來。程式使用了skliearn機器學習庫,資料集為boston房屋 資料,源程式如下所示 fromsklearn.cross validationimportcross val s...