關于決策樹
決策樹其實是一種分類算法,目標是將具有P個維度特征的樣本n劃分到c個類別中: c = f(n); 通過這種分類的過程表示為一棵樹,每次通過選擇一個特征pi來進行分叉。
每個葉節點對應著一個分類,非葉節點對應著在每個屬性上的劃分,根據樣本在該屬性上的不同取值將其劃分成若干個子集。對于非純的葉節點,多數類的標號給出到達這個節點的樣本所屬的類。
構建決策樹的核心問題: 在每一步如何選擇適當的屬性對樣本進行拆分。
不同的決策樹算法有著不同的特征選擇方案
1、ID3: 信息增益
2、C4.5: 信息增益率
3、CART: gini系數(基尼系數)
算法描述適用
ID3在決策樹的各級節點上,使用信息增益方法作為屬性選擇標準,來確定生成每個節點時所采用的合適屬性適用于離散的描述屬性
C4.5使用信息增益率來選擇節點屬性,并克服ID3算法的不足即適用離散的描述屬性呦適用連續的描述屬性
CART是一種有效的非參數分類和回歸方法,通過構建樹、修建樹、評估樹來構建二叉樹當終結點為連續屬性時該樹為回歸樹;當終節點為分類變量時,即為分類樹
實例
決策樹-分類.png
數據總結: 屬性數據4個 = {天氣,溫度,濕度,風速}
類別2個 = {進行,取消}
1、類型信息熵
定義:所有樣本中各種類別出現的不確定性之和,根據熵的概念,熵越大,不確定性就越大。需要研究清楚信息就越多。
2、每個屬性的信息熵
每個屬性信息熵相當于一種條件熵。表示在某種屬性的條件下,各種類別出現的不確定性之和。屬性的信息熵越大,該屬性擁有的樣本類型越不“純”。
3、信息增益
信息增益 = 熵 - 條件熵(信息類別熵 - 屬性信息熵);表示信息不確定性減少的程度。若是一個屬性的信息增益越大,就表示用這個屬性進行樣本劃分可以更好的減少劃分后樣本的不確定性。當然,選擇該屬性就可以更快更好的完成分類目標。
信息增益的ID3算法的特征選擇指標
4.屬性分裂信息度量
通過分裂信息度量來考慮某種屬性進行分裂時分支的數量信息和尺寸信息,而這些信息稱之為屬性的內在信息。
信息增益率 = 信息增益 / 內存信息,導致屬性的重要性隨內在信息的增大而減小(換句話說:若是某個屬性本身的不確定性很大,那就不傾向選取它)。是對單純使用信息增益有所補償
5、信息增益率
IGR(天氣) = Gain(天氣) / H(天氣) = 0.246 / 1.577 = 0.155
IGR(溫度) = Gain(溫度) / H(溫度) = 0.029 / 1.556 = 0.0186
IGR(濕度) = Gain(濕度) / H(濕度) = 0.151 / 1.0 = 0.151
IGR(風速) = Gain(風速) / H(風速) = 0.048 / 0.985 = 0.048
信息增益率
結論
后續
信息熵:體現的是在整個樣本數據集中,結果類型或條件屬性在對應的結果集中單一事件出現不確定性的概率;而這個不確定性的結果和對應的結果類型或條件屬性存在log的聯系;信息的不確定性越大,熵的值也就越大; 針對的是一元模型的概率
-(同一結果類型記錄的個數) / (整個樣本數據結果類型記錄的總數)log2((同一結果類型記錄的個數) / (整個樣本數據結果類型記錄的總數))
*
條件熵*: 通過多元模型的方式來減少一元模型中不確定性,或者說降低對應的熵,越低意味著信息的不確定性就越小。
條件熵 = -某個條件屬性某個類型/總結果記錄數
該條件屬性某個類型的不同細分類的信息熵 之和
該條件屬性某個類型的不同細分類的信息熵 = 同個屬性不同內容類型相對結果類型的信息熵的之和
作者:一只躺在夕陽下的koala
鏈接:http://www.lxweimin.com/p/8eaeab891341
來源:簡書
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。