關於對信息、熵、信息增益是信息論裏的概念,是對數據處理的量化,這幾個概念主要是在決策樹裏用到的概念,由於在利用特徵來分類的時候會對特徵選取順序的選擇,這幾個概念比較抽象,我也花了好長時間去理解(本身認爲的理解),廢話很少說,接下來開始對這幾個概念解釋,防止本身忘記的同時,望對其餘人有個借鑑的做用,若有錯誤還請指出。算法
一、信息機器學習
這個是熵和信息增益的基礎概念,我以爲對於這個概念的理解更應該把他認爲是一用名稱,就好比‘雞‘(加引號意思是說這個是名稱)是用來修飾雞(沒加引號是說存在的動物即雞),‘狗’是用來修飾狗的,可是假如在雞還未被命名爲'雞'的時候,雞被命名爲‘狗’,狗未被命名爲‘狗’的時候,狗被命名爲'雞',那麼如今咱們看到狗就會稱其爲‘雞’,見到雞的話會稱其爲‘雞’,同理,信息應該是對一個抽象事物的命名,不管用不用‘信息’來命名這種抽象事物,或者用其餘名稱來命名這種抽象事物,這種抽象事物是客觀存在的。函數
引用香農的話,信息是用來消除隨機不肯定性的東西,固然這句話雖然經典,可是仍是很難去搞明白這種東西究竟是個什麼樣,可能在不一樣的地方來講,指的東西又不同,從數學的角度來講可能更加清楚一些,數學原本就是建造在懸崖之上的一種理論,一種抽象的理論,利用抽象來解釋抽象可能更加恰當,同時也是在機器學習決策樹中用的定義,若是帶分類的事物集合能夠劃分爲多個類別當中,則某個類(xi)的信息定義以下:學習
I(x)用來表示隨機變量的信息,p(xi)指是當xi發生時的機率,這裏說一下隨機變量的概念,隨機變量時機率論中的概念,是從樣本空間到實數集的一個映射,樣本空間是指全部隨機事件發生的結果的並集,好比當你拋硬幣的時候,會發生兩個結果,正面或反面,而隨機事件在這裏能夠是,硬幣是正面;硬幣是反面;兩個隨機事件,而{正面,反面}這個集合即是樣本空間,可是在數學中不會說用‘正面’、‘反面’這樣的詞語來做爲數學運算的介質,而是用0表示反面,用1表示正面,而「正面->1」,"反面->0"這樣的映射便爲隨機變量,即相似一個數學函數。spa
二、熵3d
既然信息已經說完,熵提及來就不會那麼的抽象,更多的多是機率論的定義,熵是約翰.馮.諾依曼建議使用的命名(固然是英文),最初緣由是由於你們都不知道它是什麼意思,在信息論和機率論中熵是對隨機變量不肯定性的度量,與上邊聯繫起來,熵即是信息的指望值,能夠記做:blog
熵只依賴X的分佈,和X的取值沒有關係,熵是用來度量不肯定性,當熵越大,機率說X=xi的不肯定性越大,反之越小,在機器學期中分類中說,熵越大即這個類別的不肯定性更大,反之越小,當隨機變量的取值爲兩個時,熵隨機率的變化曲線以下圖:事件
當p=0或p=1時,H(p)=0,隨機變量徹底沒有不肯定性,當p=0.5時,H(p)=1,此時隨機變量的不肯定性最大數學
條件熵基礎
條件熵是用來解釋信息增益而引入的概念,機率定義:隨機變量X在給定條件下隨機變量Y的條件熵,對定義描述爲:X給定條件下Y的條件幹率分佈的熵對X的數學指望,在機器學習中爲選定某個特徵後的熵,公式以下:
這裏可能會有疑惑,這個公式是對條件機率熵求指望,可是上邊說是選定某個特徵的熵,沒錯,是選定某個特徵的熵,由於一個特徵能夠將待分類的事物集合分爲多類,即一個特徵對應着多個類別,所以在此的多個分類即爲X的取值。
三、信息增益
信息增益在決策樹算法中是用來選擇特徵的指標,信息增益越大,則這個特徵的選擇性越好,在機率中定義爲:待分類的集合的熵和選定某個特徵的條件熵之差(這裏只的是經驗熵或經驗條件熵,因爲真正的熵並不知道,是根據樣本計算出來的),公式以下:
注意:這裏不要理解誤差,由於上邊說了熵是類別的,可是在這裏又說是集合的熵,沒區別,由於在計算熵的時候是根據各個類別對應的值求指望來等到熵
四、信息增益算法(舉例,摘自統計學習算法)
訓練數據集合D,|D|爲樣本容量,即樣本的個數(D中元素個數),設有K個類Ck來表示,|Ck|爲Ci的樣本個數,|Ck|之和爲|D|,k=1,2.....,根據特徵A將D劃分爲n個子集D1,D2.....Dn,|Di|爲Di的樣本個數,|Di|之和爲|D|,i=1,2,....,記Di中屬於Ck的樣本集合爲Dik,即交集,|Dik|爲Dik的樣本個數,算法以下:
輸入:D,A
輸出:信息增益g(D,A)
(1)D的經驗熵H(D)
此處的機率計算是根據古典機率計算,因爲訓練數據集總個數爲|D|,某個分類的個數爲|Ck|,在某個分類的機率,或說隨機變量取某值的機率爲:|Ck|/|D|
(2)選定A的經驗條件熵H(D|A)
此處的機率計算同上,因爲|Di|是選定特徵的某個分類的樣本個數,則|Di|/|D|,能夠說爲在選定特徵某個分類的機率,後邊的求和能夠理解爲在選定特徵的某個類別下的條件機率的熵,即訓練集爲Di,交集Dik能夠理解在Di條件下某個分類的樣本個數,即k爲某個分類,就是縮小訓練集爲Di的熵
(3)信息增益