前言
學習決策樹時會接觸到一些信息熵,條件熵和信息增益的知識,此外還有互信息,相對熵,交叉熵和互信息,KL散度等等亂七八糟的知識和名字,我本人已經記得大腦混亂了,還沒有全部記住,所以在這里記錄一下.
1.信息熵:信息的度量,信息的不確定程度,是亂七八糟熵的基礎.吳軍大大的數學之美中用了猜球隊冠軍的方式引出了信息熵的概念.我覺得這種方法印象很深刻,所以在這里提出一下.如果有32支球隊,使用二分查找法去猜哪支球隊是冠軍,如:冠軍在1-16號球隊內.這樣一共需要猜5次就可以找到結果,也就是log32=5,但是某些球隊的獲勝率大一些,所以它的准確信息量的表示應該如下:

香農就稱它為信息熵,表示信息的不確定程度,不確定性越大,信息熵也就越大.圖1中的p(x)表示隨機變量x的概率.信息熵
H(x)的取值范圍:0<=H(x)<=logn,其中n是隨機變量x取值的種類數.
2.條件熵:有兩個隨機變量X和Y,在已知Y的情況下,求X的信息熵稱之為條件熵:

其中p(x|y)是已知y求x的條件概率.p(x,y)是聯合概率.
3.信息增益:表示在確定某條件Y后,隨機變量X的信息不確定性減少的程度.也稱為互信息(Mutual Information).

它的取值是0到min(H(x),H(y))之間的數值.取值為0時,表示兩個事件X和Y完全不相關.在決策樹中算法中,ID3算法就是使用信息增益來划分特征.在某個特征條件下,求數據的信息增益,信息增益大的特征,說明對數據划分幫助很大,優先選擇該特征進行決策樹的划分,這就是ID3算法.
4.信息增益比(率):信息增益比是信息增益的進化版,用於解決信息增益對屬性選擇取值較多的問題,信息增益率為信息增益與該特征的信息熵之比.在決策樹中算法中,C4.5算法就是使用信息增益比來划分特征.公式如下:

信息熵,條件熵和互信息的關系:

注:圖片取自不同地方,所以符號表示不同,請自行對照,同時信息增益比的公式有的文章或者書籍分母可能不同.
5.相對熵(KL散度):用來描述兩個概率分布p,q之間的差異(圖6),數學之美中介紹是用來衡量兩個取值為正數函數的相似性(圖7)


概念都是一樣的,所以不需要太在意這兩個公式的區別.如果兩個函數(分布)完全相同,那么它們的相對熵為0,同理如果相對熵越大,說明它們之間的差異越大,反之相對熵越小,說明它們之間的差異越小.需要注意的是相對熵不是對稱的,也就是:

但是這樣計算很不方便,所以香農和傑森(不是郭達斯坦森)提出了一個新的對稱的相對熵公式:

上面的相對熵公式可以用於計算兩個文本的相似度,吳軍大大在數學之美中介紹,google的問答系統就是用圖9的公式計算答案相似性的(現在還是不是就不清楚了).
6.交叉熵(cross-entropy):我們知道通常深度學習模型最后一般都會使用交叉熵作為模型的損失函數.那是為什么呢?首先我們先將相對熵KL公式(圖6)進行變換(log中除法可以拆分為兩個log相減):

其中前一部分的-H(p(x))是p的熵,后一部分就是我們所說的交叉熵.

損失函數是計算模型預測值和數據真實值之間的相關性,所以可以使用相對熵(KL散度)計算,根據圖10可以看出,-H(p(x))是不變的,所以我們可以通過計算后一部分的交叉熵來求得Loss.所以通常會使用交叉熵來作為Loss函數,同理交叉熵越小,預測值和真實值之間相似度越高,模型越好.注:LR的損失函數就是交叉熵.
7.聯合熵:聯合熵可以表示為兩個事件X,Y的熵的並集

它的取值范圍是:max(H(x),H(y)) <= H(x,y) <= H(x)+H(y)
8.基尼系數(Gini,它屬於混進來的):在決策樹的CART(分類回歸樹)中有兩類樹,一是回歸樹,划分特征使用的是平方誤差最小化的方法,二是分類樹,采用的就是Gini系數最小化進行划分數據集.

其中k為label的種類數.基尼指數越大,信息的不確定性越大,這與信息熵相同.(CART樹是如何使用Gini指數的這里就不詳細介紹了,以后會在決策樹中詳細介紹的)
9.困惑度(perplexity,PPL):在NLP中,通常使用困惑度作為衡量語言模型好壞的指標.

其中S為句子,N是句子中單詞的個數,p(wi)代表第i個單詞的概率.所以PPL越小p(wi)的概率越高,則一句話屬於自然語言的概率也就越高.
參考:
《數學之美-第二版》 吳軍 著
《統計學習方法》 李航 著
《統計自然語言處理》 宗成慶 著