我從一個很是直觀的角度來解釋一下熵的定義爲何如題主所示。機器學習
第一,假設存在一個隨機變量,能夠問一下本身當咱們觀測到該隨機變量的一個樣本時,咱們能夠接受到多少信息量呢?毫無疑問,當咱們被告知一個極不可能發生的事情發生了,那咱們就接收到了更多的信息;而當咱們觀測到一個很是常見的事情發生了,那麼咱們就接收到了相對較少的信息量。所以信息的量度應該依賴於機率分佈,因此說熵的定義應該是機率的單調函數。函數
第二,假設兩個隨機變量和是相互獨立的,那麼分別觀測兩個變量獲得的信息量應該和同時觀測兩個變量的信息量是相同的,即:。而從機率上來說,兩個獨立隨機變量就意味着,因此此處能夠得出結論熵的定義應該是機率的函數。所以一個隨機變量的熵可使用以下定義:
此處的負號僅僅是用來保證熵(即信息量)是正數或者爲零。而函數基的選擇是任意的(信息論中基經常選擇爲2,所以信息的單位爲比特bits;而機器學習中基經常選擇爲天然常數,所以單位經常被稱爲nats)。學習
最後,咱們用熵來評價整個隨機變量平均的信息量,而平均最好的量度就是隨機變量的指望,即熵的定義以下:
spa
總的來講,題主給出的定義符合第一點(單調性),可是不符合第二點。it
以上內容參考自Bishop 的著做《Pattern Recognition and Machine Learning》