機器學習筆記(1) 決策樹

2021-08-04 14:43:58 字數 2021 閱讀 4638

機器學習中分類和**演算法的評估:

準確率速度

強壯性可規模型

可解釋性

決策樹決策樹是乙個類似於流程圖的結構

節點表示判斷,將連續變數離散化,規定閾值歸類

資訊熵:變數的的不確定性越大,熵也就越大

計算公式:

p(x)為單個事件的概率

決策樹歸納演算法(id3)

選擇屬性判斷結點

資訊獲取量(information gain):gain(a) = info(d) -infor_a(d)

通過a來作為節點分類獲取了多少資訊

選擇資訊獲取量最大的屬性作為根節點,重複此過程直到所有結果都屬於同乙個類。

演算法:

·      樹以代表訓練樣本的單個結點開始(步驟1)。

·      如果

樣本都在同乙個類,

則該結點成

為樹葉,並用

該類標號(步驟2

和3)。

·      否

則,演算法使用稱

為資訊增益的基於

熵的度量作為啟

發資訊,選擇能

夠最好地將樣本分

類的屬性(步驟6

)。該屬性成為該結點的「

測試」或「

判定」屬性(步驟7

)。在演算法的

該版本中,

·      所有的屬性都是分

類的,即離散值。

連續屬性必

須離散化。

·      對測試屬性的每個已知的值,建立乙個分枝,並據此劃分樣本(步驟

8-10)。

·      演算法使用同樣的

過程,遞迴地形成每個劃分上的

樣本判定

樹。一旦乙個屬性出

現在乙個

結點上,就不必

該結點的任何後代上考

慮它(步驟13

)。 ·      遞迴劃分步驟僅當下列條件之一成立停止:

·      (a)

給定結點的所有樣本屬於同一類(步驟2 和

3)。·      (b)

沒有剩餘屬性可以用來

進一步劃分

樣本(步驟4

)。在此情況下,使用多數表決(步驟5

)。 ·      這涉及將給定的結點轉換成樹葉,並用樣本中的多數所在的類標記它。替換地,可以存放結

·      點樣本的

類分布。

·      (c) 分枝

·      test_attribute=a

i沒有樣本(步驟11

)。在這

種情況下,以

samples

中的多數類

·      建立乙個樹葉(步驟12)

特點:貪心演算法,自上而下

其他演算法:c4.5,cart(選擇屬性的度量方法不同

樹剪枝葉:先剪枝,後剪枝

優點:直觀、便於理解、小規模資料集有效

缺點:處理連續變數不好、類別較多時錯誤增加較快、可規模性一般

python機器學習的庫:sickit-learn

特性:簡單高效的資料探勘和機器學習分析

對所有使用者開放,根據不同需求高度可重用性

基於numpy, scipy和matplotlib

開源,商用級別:獲得 bsd許可

覆蓋問題領域:

分類(classification), 回歸(regression), 聚類(clustering), 降維(dimensionalityreduction)

模型選擇(model selection), 預處理(preprocessing)

使用用scikit-learn

安裝scikit-learn: pip,easy_install, windows installer

安裝必要package:numpy, scipy和matplotlib, 可使用anaconda (包含numpy, scipy等科學計算常用

package)

安裝注意問題:python直譯器版本(2.7 or3.4?), 32-bit or 64-bit系統

機器學習筆記 1 決策樹

系統不確定性的度量 先來看2個概念.資訊熵 h theta sum n theta jx j 基尼係數 g 1 sum n p i 2 二者都反映了資訊的不確定性,是資訊不確定性的不同評價標準.關於資訊熵,在數學之美中,有一段通俗易懂的例子.sklearn中使用決策樹 在sklearn中使用deci...

機器學習筆記 決策樹學習

決策樹學習是一種逼近離散值目標函式的方法,在這樣的方法中學習到的函式被表示為一棵決策樹。表示法 把例項從根節點排列到某個葉子節點來分類例項,葉子節點即為例項所屬的分類。樹上的每個節點指定了對例項的某個屬性 attribute 的測試,而且該節點的每個字尾分支相應於該屬性的乙個可能值。分類例項的方法是...

機器學習之決策樹1

好久沒來寫過部落格了,最近忙一些個人的事情終於有一點空閒的時間了,所以決定還是繼續自己喜歡的東西,已經把python的基礎都學得差不多了 雖說有三個月不用我現在又忘得差不多了 然後又看了看方向,感覺還是直接上機器學習比較好 ruby了,高數線代什麼的,邊看邊學再補課吧,要不然需要補得太多,我怕自己看...