資訊增益:
首先,計算總系統的熵,
然後,當某特徵固定時,會將系統分成幾個(此特徵的可能值數目)子系統,分別計算每個子系統的熵,方法同上;
而後,將幾個子系統的熵加起來,便是「當不包含此特徵」時系統的熵;
最後,以上兩個「包含」和「不包含」此特徵情況下系統的熵的差值便是此特徵的資訊增益。
gini 係數:
某個節點的gini不純度計算:
比如,某節點a樣本分屬兩類,c1:2, c2:4,則gini(a) = 1 - (2/6)^2 - (4/6) ^2 = 0.444,節點b,c1:6, c2:0, 則 gini(b) = 1 - (6/6)^2 - (0/6)^2 = 0。顯然,前者的不純度更高,所以某節點的gini係數越大則其不純度越高。
而當評判**優劣時,需要用到兩個子節點的gini係數來計算。
比如某根節點有12個樣本(6:6),按照某特徵的某閾值**成兩個子節點a(2:4)和b(0:6),則此次的split的gini係數為:6/12*0.444 + 6/12*0 = 0.222. 那這個分類效果如何呢?比如按照另外乙個特徵的某閾值來分類的話,可以分成c(6:6)和d(0:0),則此次的split的gini係數為:12/12*0.5 + 0/12*0 = 0.5. 而顯然前者的分類效果好,可見,gini_split值越小越好。
對於熵來說,越**明越純,而gini同樣,而這都是針對某個節點,如果某節點越純則我們越能確定它屬於哪一類,則越是理想結果。所以,對於資訊增益來說,如果父節點的熵已定,則希望子節點的熵盡量小,這樣:1.資訊增益得到最大,2.分出來的子節點的類標越明確(越純)。而對於gini係數來說,同樣是盡量讓分出來的子節點擁有盡量低的不純度(越純則類標越明確)。——子節點的樣本分佈越不均勻,gini係數和熵越小,分類效果越好。
【所以在特徵選擇的時候常常用資訊增益,如果ig(資訊增益大)的話那麼這個特徵對於分類來說很關鍵~~ 決策樹就是這樣來找特徵的!】
**:
熵 資訊增益 資訊增益率
介紹資訊增益之前,首先需要介紹一下熵的概念,這是乙個物理學概念,表示 乙個系統的混亂程度 系統的不確定性越高,熵就越大。假設集合中的變數x 它對應在集合的概率分別是p 那麼這個集合的熵表示為 舉乙個的例子 對遊戲活躍使用者進行分層,分為高活躍 中活躍 低活躍,遊戲a按照這個方式劃分,使用者比例分別為...
資訊增益與資訊增益率詳解
熟悉決策樹演算法的人都知道id3以及c4.5兩種演算法,當然也非常清楚資訊增益以及資訊增益率兩個概念。資訊增益 節點m的資訊熵e1與其全部子節點資訊熵之和e2的差。資訊增益率 節點資訊增益與節點 資訊度量的比值。資訊增益是id3演算法的基礎,資訊增益率是c4.5演算法的基礎。同時,c4.5是id3演...
最大資訊熵增益 資訊熵與資訊增益
1.資訊熵 資訊熵就是指不確定性,熵越大,不確定性越大 2.關於資訊增益 資訊增益是針對乙個乙個的特徵而言的,就是看乙個特徵t,系統有它和沒它的時候資訊量各是多少,兩者的差值就是這個特徵給系統帶來的資訊量,即增益。系統含有特徵t的時候資訊量很好計算,就是剛才的式子,它表示的是包含所有特徵時系統的資訊...