決策樹的優缺點
優點:計算複雜度不高,輸出結果易於理解,對中間值不明幹,可以處理不相關特徵數據。
缺點:可能會產生過度匹配。
範圍:數值型和標稱型。
決策樹的一般流程
收集數據
準備數據:樹構造算法只適用於標稱型數據,因此數值型數據必須離散化
分析數據:可以使用任何方法,構造樹完成之後,應該檢查圖形是否符合預期
訓練算法:使用經驗樹計算錯誤率
使用算法:此步驟可以適用於任何監督學習算法,而使用決策樹可以更好地理解數據的內在含義
信息增益
原則: 將無序的數據變得更加有序。
在劃分數據集之前之後信息發生的變化
熵: 信息的期望值,或者集合信息的度量方式。
熵
熵定義爲信息的期望值。
僞代碼函數createBranch()
檢測數據集中的每個子項是否屬於同一類:
If so return 類標籤
Else
尋找劃分數據集的最好特徵
劃分數據集
創建分支節點
for 每個劃分的子集
調用函數createBranch並增加返回結果到分支節點中
return 分支節點