日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

信息熵的直观理解

發布時間:2024/9/5 编程问答 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 信息熵的直观理解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
信息熵的直觀理解

?

在機器學習算法(如二叉樹)、特征選擇(互信息)中經常用到熵的概念,信息熵的概念以及介紹網上有很多,這里主要做一個直觀的介紹。

1.?信息的度量

2. 信息熵

?

一、 信息量

常常把消息中有意義的內容成為信息。我們常常說,某人說的某句話信息量很大,具體在信息論中,其實指的是他說的這句話消除的不確定性多。信息的度量定義為消除不確定性的多少。(信息是用來消除不確定性的東西--Shannon)

信息量函數:

$I=-\ln p_{i}$

其中,$p_{i}$是事件$x_{i}$發生的概率($x_{i} \in X$)

直觀上,概率越小,即事件發生的概率越小,它指出的信息越具體,相應地,信息量就越大。怎么理解這句話呢,舉個栗子。有一個30*30的座位表,你未來的女朋友在其中的一個座位上入座,但是你并不知道她到底在哪個座位上(這也是你為什么沒有女朋友的原因嗎,哈哈哈。。。)。如果天上的某位月老1告訴你,她坐在第6排,那么范圍會縮小很多。月老2告訴你“她坐在第6排第6列”?!八诘?排”和“她坐在第6排第6列”,直觀上顯然后者包含的信息量更多。那么如何定量的比較這兩句話的信息量大小呢?

* 對于前者,事件發生的概率是 $p = \frac{30}{30 \times 30}= \frac{1}{30}$,那么信息量 $I=- \ln p_{i}= 3.4$

* 對于后者,事件發生的概率是 $p = \frac{1}{30 \times 30} = \frac{1}{900}$,那么信息量 $I=- \ln p_{i}= 6.8$

對于前者,月老1給出的信息還是太少,即從原來什么都不知道消除的不確定性還是太少,同時月老1的預言發生的概率也比較大。月老2給出的信息非常具體,消除的不確定性很多,這句話發生的概率對應地也比較小。也可以這么理解,給出的信息越具體,發生的概率越小,風險越高,因為你不知道他說的到底對不對(信息量大不代表信息準確)。

總結一句話,一個事件的信息量就是這個事件發生的概率的負對數。

?

二、信息熵

簡單的講,信息熵(entropy)就是平均而言發生一個事件我們得到的信息量大小。所以數學上,信息熵其實是信息量的期望。

$H = -\sum_{x \in X} P(x) logP(x)$

$X$是事件的集合。在理解了信息量的概念后,公式還是很直觀的,就是信息量的期望。

在信息論中,熵是信息不確定性的一個測度,熵越大表示信息的不確定性越高。比如對明天的天氣做預測,

a. 預測1:100%晴天

$H_{1}=0.0$

b. 預測2:50%晴天, 50%陰天

$H_{2}=-\frac{1}{2} \ln (\frac{1}{2})-\frac{1}{2} \ln (\frac{1}{2})=1.0$

c. 預測3:30%晴天, 30%陰天,40%

$H_{3}=-\frac{3}{10}\ln \frac{3}{10} -\frac{3}{10}\ln \frac{3}{10}?- \frac{4}{10} \ln \frac{4}{10}=1.6$

# 計算信息熵
import math x = [0.3, 0.3, 0.4] H = sum(map(lambda x : -x * math.log(x, 2), x))

從上面這個例子也可以看出來,不確定性越大,信息熵越大。

posted on 2017-05-16 22:39?詹晴天 閱讀(...) 評論(...) 編輯 收藏

轉載于:https://www.cnblogs.com/satchel/p/6864116.html

總結

以上是生活随笔為你收集整理的信息熵的直观理解的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。