1. 程式人生 > >機器學習-10(最優決策樹演算法的實際展示)

機器學習-10(最優決策樹演算法的實際展示)

網上一大堆的文章,但是他們的介紹並沒有實際上說明為什麼使用最優決策樹,決策樹到底是什麼玩意

我這裡也不做類似的白話文解釋了,直接附圖來詳細生動的例子給大家演示why

OK,現在我們先以是否浮出水面來分類

最終結果如圖

ok,經過我們層層的決策,結果如圖

最後結果是[1,1],[1,1]為魚類,[1,0],[0,1],[0,1]為非魚類,而其實我們在第一次判別是否浮出水面的時候已經把[0,1][0,1]排除在外了

我們實際經歷了2次決策,第一次決策排除了2個

現在我們試試以是否有腳蹼來分類

一樣是2次決策,但是第一次決策只排除了1個

很顯然我們用第一種決策方式,是屬於最優的

在此處資訊熵就是總的5個樣本的集合的訊號

而分類引起的資訊增益也就是劃分之後,我們剩下的子集需要多少訊號去表達的度量

經過第一種分類 剩下的表達就只有 0,1,10三個就可以儲存下

而第二種我們需要0,1,10,11才可以儲存下。

明顯第一種劃分之後純度更高(資訊熵-分類資訊熵),是我們的最優選擇

這就是所謂的決策樹演算法,也就是每次遞迴,我們要去選取哪一種類別佔主要因素