理解條件熵

2021-08-21 16:40:42 字數 1926 閱讀 3109

1  資訊熵以及引出條件熵

我們首先知道資訊熵是考慮該隨機變數的所有可能取值,即所有可能發生事件所帶來的資訊量的期望。公式如下:

我們的條件熵的定義是:定義為x給定條件下,y的條件概率分布的熵對x的數學期望

這個還是比較抽象,下面我們解釋一下:

設有隨機變數(x,y),其聯合概率分布為 

條件熵h(y|x)表示在已知隨機變數x的條件下隨機變數y的不確定性。

隨機變數x給定的條件下隨機變數y的條件熵h(y|x)

2  公式

下面推導一下條件熵的公式:

3  注意

注意,這個條件熵,不是指在給定某個數(某個變數為某個值)的情況下,另乙個變數的熵是多少,變數的不確定性是多少?而是期望!

因為條件熵中x也是乙個變數,意思是在乙個變數x的條件下(變數x的每個值都會取),另乙個變數y熵對x的期望。

這是最容易錯的!

4  例子

下面通過例子來解釋一下:

假如我們有上面資料:

設隨機變數y=

我們可以統計出,嫁的個數為6/12 = 1/2

不嫁的個數為6/12 = 1/2

那麼y的熵,根據熵的公式來算,可以得到h(y) =  -1/2log1/2 -1/2log1/2

為了引出條件熵,我們現在還有乙個變數x,代表長相是帥還是帥,當長相是不帥的時候,統計如下紅色所示:

可以得出,當已知不帥的條件下,滿足條件的只有4個資料了,這四個資料中,不嫁的個數為1個,佔1/4

嫁的個數為3個,佔3/4

那麼此時的h(y|x = 不帥) = -1/4log1/4-3/4log3/4

p(x = 不帥) = 4/12 = 1/3

同理我們可以得到:

當已知帥的條件下,滿足條件的有8個資料了,這八個資料中,不嫁的個數為5個,佔5/8

嫁的個數為3個,佔3/8

那麼此時的h(y|x = 帥) = -5/8log5/8-3/8log3/8

p(x = 帥) = 8/12 = 2/3

5  計算結果

有了上面的鋪墊之後,我們終於可以計算我們的條件熵了,我們現在需要求:

h(y|x = 長相)

也就是說,我們想要求出當已知長相的條件下的條件熵。

根據公式我們可以知道,長相可以取帥與不帥倆種

條件熵是另乙個變數y熵對x(條件)的期望。

公式為:

h(y|x=長相) = p(x =帥)*h(y|x=帥)+p(x =不帥)*h(y|x=不帥)

然後將上面已經求得的答案帶入即可求出條件熵!

這裡比較容易錯誤就是忽略了x也是可以取多個值,然後對其求期望!!

6  總結

其實條件熵意思是按乙個新的變數的每個值對原變數進行分類,比如上面這個題把嫁與不嫁按帥,不帥分成了倆類。

然後在每乙個小類裡面,都計算乙個小熵,然後每乙個小熵乘以各個類別的概率,然後求和。

我們用另乙個變數對原變數分類後,原變數的不確定性就會減小了,因為新增了y的資訊,可以感受一下。不確定程度減少了多少就是資訊的增益。

通俗理解條件熵

1資訊熵以及引出條件熵 我們首先知道資訊熵是考慮該隨機變數的所有可能取值,即所有可能發生事件所帶來的資訊量的期望。公式如下 我們的條件熵的定義是 定義為x給定條件下,y的條件概率分布的熵對x的數學期望 這個還是比較抽象,下面我們解釋一下 設有隨機變數 x,y 其聯合概率分布為 條件熵h y x 表示...

通俗理解條件熵 數學

就是決策樹裡面選劃分屬性用到的計算 條件熵越小表示劃分之後各個集合越純淨 前面我們總結了資訊熵的概念通俗理解資訊熵 知乎專欄,這次我們來理解一下條件熵。我們首先知道資訊熵是考慮該隨機變數的所有可能取值,即所有可能發生事件所帶來的資訊量的期望。公式如下 我們的條件熵的定義是 定義為x給定條件下,y的條...

資訊熵 條件熵

1資訊熵以及引出條件熵 我們首先知道資訊熵是考慮該隨機變數的所有可能取值,即所有可能發生事件所帶來的資訊量的期望。公式如下 我們的條件熵的定義是 定義為x給定條件下,y的條件概率分布的熵對x的數學期望 這個還是比較抽象,下面我們解釋一下 設有隨機變數 x,y 其聯合概率分布為 條件熵h y x 表示...