1.決策樹
????決策樹是應(yīng)用廣泛的一種歸納推理算法。在分類問題中域仇,決策樹算法基于特征對樣本進(jìn)行分類钝尸,構(gòu)成一棵包含一系列if-then規(guī)則的樹,在數(shù)學(xué)上可以將這棵樹解釋為定義在特征空間與類空間上的條件概率分布扣汪。
????決策樹的主要優(yōu)點(diǎn)是分類速度快、訓(xùn)練數(shù)據(jù)可包含錯誤锨匆、模型具有可讀性崭别,目前已被成功應(yīng)用到醫(yī)療診斷、貸款風(fēng)險(xiǎn)評估等領(lǐng)域恐锣。
2.sklearn中自帶的決策樹方法
class?sklearn.tree.DecisionTreeClassifier(criterion='gini',?splitter='best',?max_depth=None,?min_samples_split=2,min_samples_leaf =1,?min_weight_fraction_leaf=0.0,?max_features=None,?random_state=None,?max_leaf_nodes=None,class_weight=None,?presort=False)
主要參數(shù)說明如下:
①criterion:默認(rèn)為"gini"茅主,用來衡量分類的質(zhì)量。支持的標(biāo)準(zhǔn)有"gini"與"entropy"土榴,"gini"代表的是Gini impurity(不純度)诀姚,"entropy"代表的是information gain(信息增益)。
②splitter:默認(rèn)為"best"玷禽,一種用來在節(jié)點(diǎn)中選擇分類的策略赫段。支持的策略有"best",選擇最好的分類矢赁,"random"選擇最好的隨機(jī)分類糯笙。
③max_features:有int,float,string or None三類值,默認(rèn)為None撩银,表示在進(jìn)行分類時(shí)需要考慮的特征數(shù)给涕。
3.ID3算法
(1)相關(guān)概念
①信息熵
設(shè)X為一個可取有限個值{x1,x2额获,...够庙,xn}的離散隨機(jī)變量,其概率分布為Pi=P(X=xi)咪啡,則隨機(jī)變量X的信息熵定義為:
上式中首启,對數(shù)log以2為底,熵的單位是比特(bit)撤摸,以自然對數(shù)e為底毅桃,熵的單位是納特(nat)。信息熵越大准夷,表示不確定性越強(qiáng)钥飞。
②條件信息熵
假設(shè)X的概率分布為pi=PX(X=xi),Y在X條件下的條件概率分布為pj|i=PY|X(yj?|xi)衫嵌,條件信息熵H(Y|X)定義為:
③信息增益
g(D, A)=H(D)-H(D |A)
信息增益用來量化分類的不確定性降低的程度读宙,即熵降低的程度。所以在選擇切分特征時(shí)楔绞,先計(jì)算每個特征的信息增益结闸,選擇信息增益最大的特征作為切分特征唇兑。
所以ID3算法是依據(jù)信息增益做特征選擇。
(2)ID3算法的實(shí)現(xiàn)
【注】決策樹可視化需要安裝GraphViz桦锄,并將軟件的安裝路徑添加到主機(jī)環(huán)境變量中扎附。
(3)ID3的缺點(diǎn)
①實(shí)例各特征的取值必須是離散值,而不能是連續(xù)實(shí)數(shù)值(例如銷量只能是“高”结耀、“低”留夜,而不能是具體數(shù)值)。
②預(yù)測目標(biāo)只能為離散值图甜,不能是連續(xù)實(shí)數(shù)值碍粥,因此只能處理分類問題,而不能處理回歸問題黑毅。
4.C4.5算法
????依據(jù)信息增益選擇切分特征時(shí)嚼摩,如果一個特征的可取值較多,通常它的信息增益更大博肋,該特征則會被優(yōu)先選擇低斋,這對于可取值較少的特征不公平。為避免這樣的問題匪凡,可以以信息增益比為指標(biāo)來選擇切分特征,信息增益比實(shí)質(zhì)上就是在信息增益的基礎(chǔ)上對可取值較多的特征做出一定的“懲罰”掘猿。
????C4.5算法就是依據(jù)信息增益比來選擇特征的病游。