機器學習入門精講,這些知識點不可錯過

決策樹:是一種簡單常用的分類器,通過訓練好的決策樹可以實現對未知的數據進行高效分類。

最近很火的狼人殺的遊戲結局也用到了決策樹的思想:

下面用圖來表示:

這幅圖完整表達了狼人殺結局的各種情況,箭頭指向一個判斷條件在不同情況下的遊戲結果,最後通過場上剩餘的人來判斷是誰獲勝。

我們可以看出,在每一個關鍵節點(比如村人殺死所有的狼人?),依據判斷條件,可以將答案劃分為Yes or No,最後輸出獲勝一方。

通過樹形結構,根據條件判斷輸出相應的結局,這種簡單的演算法,便是決策樹的原型。

01

決策樹——機器學習中的「倚天寶劍」

決策樹是機器學習中很經典的一種演算法。它既是分類演算法,也是回歸演算法,還可以用在隨機森林中。

咱們學計算機的同學經常敲if 、else if、else其實就已經在用到決策樹的思想了。

從開頭狼人殺的例子中也可以看出,決策樹模型具有較好的可讀性和描述性,能夠幫助我們更高效率地去分析問題。

舉個例子,普通人去銀行貸款的時候,銀行會根據相應條件,來判斷貸款人是否具有還貸能力。

貸款用戶主要具備三個屬性:房產、婚姻、平均月收入。

擁有房產或結過婚或月收入大於4000的貸款用戶具備償還能力。

判斷償還能力過程

例如:用戶甲沒有房產,沒有結婚,月收入5K,通過上圖的判斷條件可以判斷出用戶甲具備償還貸款能力。

這整個判斷還貸能力的過程,就用到了決策樹的思想。

02

決策樹演算法——基尼不純度、熵

基尼不純度,是指將來自集合中的某種結果隨機應用在集合中,某一數據項的預期誤差率,可以用來度量任何不均勻分布。

下圖是組合1和組合2的基尼不純度:

從圖中我們可以看出,組合1的基尼不純度大於組合2。

打個比方,基尼不純度就像男生挑鑽石向女生求婚,所有的鑽石看著都很閃,但仔細比較價格卻差很多,因為每顆鑽石的的純度不一樣,純度越高,價格也就越貴。

由此可總結出這樣2種情況:

A、基尼不純度越小,純度越高,集合的有序程度越高,分類的效果越好

B、基尼不純度為 0 時,表示集合類別一致

熵度量的是事物的不確定性,越不確定的事物,它的熵就越大。

熵是資訊理論中的概念,用來表示集合的無序程度,熵越大表示集合越混亂,反之則表示集合越有序。

03

決策樹演算法——信息增益

信息增益越大,說明整個集合從無序到有序的速度越快,本次拆分越有效,則越適合用來分類。

通俗來講,信息增益代表了在一個條件下,信息複雜度(不確定性)減少的程度。

我們以《非誠勿擾》為例,在男嘉賓出場之前,如果女嘉賓對男嘉賓一無所知,成為他女朋友的不確定性就比較高,如果知道其中的幾個特徵(如身高、性格等),不確定性就會減少很多。

由上面的例子可見,一個屬性的信息增益越大,表明這個屬性使得數據由不確定性變成確定性的能力越強

04

決策樹演算法的補充要點

關於剪枝

利用決策樹演算法構建一個初始的樹之後,為了有效的分類,還要對其進行剪枝,剪枝是為了減少過擬合現象。

剪枝思路主要是兩種:

一種是預剪枝,即在生成決策樹的時候就決定是否剪枝。

另一個是後剪枝,即先生成決策樹,再通過交叉驗證來剪枝。

關於過擬合

為了得到一致假設而使假設變得過度複雜稱為過擬合。

比如,考試的時候,有的人採用題海戰術,把每個題目都背下來。

但是題目稍微變化一下,他就不會做了,因為他沒有總結出通用的規則。

過擬合的原因一般有兩種:

A. 模型太過複雜而樣本量不足

B. 訓練集和測試機特徵分布不一致

機器學習中關於決策樹的部分就講到這裡了,想知道更多詳情的,請戳:

機器學習入門精講,這40個知識點不可錯過(二)


推薦閱讀:

Tensorflow入門教程(6)
喜報!人工智閱讀理解能力首超人類,AI時代來了
機器學習筆記005 | 更加接近現實情況的預測
關鍵詞提取Part1(A Quick Review)
關聯分析:第一大數據挖掘演算法

TAG:機器學習 | 狼人殺 | 科大訊飛 |