歡迎關(guān)注我的專欄( つ??ω??)つ【人工智能通識(shí)】
【匯總】2019年4月專題
什么是條件熵?什么是信息增益?它的作用是什么?

條件熵Conditional entropy
如前面文章所說(shuō)的,人工智能通識(shí)-科普-什么是熵,熵是指系統(tǒng)的不確定性、隨機(jī)性,這種性質(zhì)是以系統(tǒng)輸出的數(shù)據(jù)結(jié)果進(jìn)行表現(xiàn)的,如硬幣和骰子的統(tǒng)計(jì)數(shù)據(jù),所以也可以看做數(shù)據(jù)的不確定性、隨機(jī)性。
系統(tǒng)信息熵的計(jì)算公式是:
但當(dāng)我們獲得更多消息的時(shí)候,系統(tǒng)的不確定性就會(huì)減少。

比如說(shuō)這個(gè)問(wèn)題,明天會(huì)下雨嗎?假設(shè)我們有歷史上每天是否下雨的1000條記錄,其中100天下雨,900天不下,那么我們這個(gè)系統(tǒng)的信息熵可以計(jì)算:
但是,假如我們知道明天是否陰天。因?yàn)殛幪旖?jīng)常會(huì)導(dǎo)致下雨,所以那么明天下雨的確定性就會(huì)上升,不確定性就會(huì)下降,熵就會(huì)減少。
這個(gè)就是條件熵,即在某個(gè)條件下,數(shù)據(jù)變化的不確定性。
條件熵的計(jì)算

仍然以下雨為例,比如上面1000天的數(shù)據(jù)中,200天是陰天的,800天使不陰天的(晴天),其中陰天情況下90天下雨,不陰天情況也有10天下雨(太陽(yáng)雨 ?′ω`?)。
那么已知陰天情況下,共200天,90天下雨,110天不下雨,是否下雨的條件熵是:
這個(gè)條件熵接近1,就是陰天且下雨的概率接近一半一半。
熵是1就是正反面一半一半,信息量是1比特就是可以消除50%的不確定性。
同樣的,已知明天不陰天(晴天)的情況下,共800天,790天不下雨,10天下雨,這個(gè)條件熵是:
這個(gè)條件熵很低,確定性很高,晴天當(dāng)然可以幾乎確定是不下雨的。
如果熵為0,則說(shuō)明絕對(duì)的確定。
但上面只是分開(kāi)計(jì)算了陰天=是和陰天=否的情況,我們還要把它們按照概率比例相加一起才算是整個(gè)陰天與否條件下是否下雨的條件熵:
近乎于1,也就是說(shuō),如果我們知道明天是否陰天,那么是否下雨也就基本確定了一半,這和200個(gè)陰天有90天下雨的感性認(rèn)知基本一致。
總結(jié)上面我們計(jì)算方法,整體條件熵等于條件每個(gè)可能值的條件熵之概率加權(quán)和:
而每個(gè)可能值的條件熵,計(jì)算方法基本上和信息熵公式一致:
信息增益Information Gain
信息增益是指某個(gè)信息條件下,系統(tǒng)整體的熵減少了多少,也就是整體信息熵減去條件信息熵的結(jié)果。
信息增益有什么用?

我們知道,世界上某個(gè)結(jié)果的出現(xiàn)往往是很多原因作用的結(jié)果,比如下雨這個(gè)事情就可能受到氣溫、氣壓、溫度、濕度等等多種原因的影響。
但是,各種因素中哪一個(gè)因素對(duì)下雨影響最大?哪一些影響比較???
如果我們也有1000天的氣溫、氣壓、溫度、濕度數(shù)據(jù),我們就可以計(jì)算出它們分別的條件熵,因?yàn)闂l件熵越大,那么就對(duì)結(jié)果的影響越大。
以上面的例子,是否陰天這個(gè)條件可以讓是否下雨的不確定性下降1.6899-0.9738=0.7161,這個(gè)作用是非常明顯的,相當(dāng)于問(wèn)你“明天有多大概率下雨?”和“明天如果陰天的話有多大概率下雨?”的差別。
下一篇我們將用更完整一些的案例來(lái)深化信息增益的計(jì)算方法和應(yīng)用價(jià)值。
歡迎關(guān)注我的專欄( つ??ω??)つ【人工智能通識(shí)】
每個(gè)人的智能新時(shí)代
如果您發(fā)現(xiàn)文章錯(cuò)誤,請(qǐng)不吝留言指正;
如果您覺(jué)得有用,請(qǐng)點(diǎn)喜歡;
如果您覺(jué)得很有用,歡迎轉(zhuǎn)載~
END