Day3 機器學習監督學習——決策樹原理算法
一.決策樹的原理機器學習
1.機器學習中分類和預測算法的評估:函數
準確率學習
速度測試
強壯型:有數據缺失或錯誤時算法的運行spa
可規模性:數量級規模比較大orm
可解釋性ci
2.決策樹(decision tree)it
決策樹是一個相似於流程圖的樹結構:其中,每一個內部結點表示在一個屬性上的測試,每個分支表明一個屬性輸出,而每一個樹葉節點表明類或類分佈。樹的最頂層是根節點。數據挖掘
3.熵(entropy)概念:
信息比較抽象,度量信息,香農提出了「信息熵」的概念。變量的不肯定性越大,熵也就越大。比特來衡量信息的多少。
4.決策樹概括算法(ID3)——Information Gain
選擇屬性判斷節點:信息獲取量(經過A來做爲節點分類獲取了多少信息)
a.先計算出目標函數的信息熵
b.計算每個屬性的信息熵
c.用目標函數與變量(屬性)的信息熵做差,結果最大的屬性做爲第一個判斷節點。不斷重複此過程,建立當前節點,增加決策樹。其中在處理連續型變量的屬性的時候,咱們須要將連續變量給離散化。
此外,還有一些其餘的算法,他們有相同的地方,也有不一樣的地方。
共同點:貪心算法,自上而下。
不一樣點:屬性選擇度量方案不一樣
5.樹減枝葉(避免overfitting)
a.先剪枝:分到必定程度再也不分
b.後剪枝:徹底先把樹建好,在根據必定標準剪葉子。
6.決策樹優缺點:
優勢:直觀,小規模數據集有效
缺點:在處理連續型變量時很差;類別較多時,錯誤增長的比較多;可規模性通常。
二.決策樹的實現
1.Python機器學習的庫:scikit-learn
1.1特性:
簡單高效地數據挖掘和機器學習分析
對全部用戶開放,根據不一樣需求高度可重用性
基於Numpy,SciPy和matplotlib
開源,商用級別:得到BSD許可
1.2覆蓋問題領域:
分類(classification),迴歸(regression),聚類(clustering),降維(dimensionality reduction)
模型選擇(model selection),預處理(preprocessing)