---
# System prepended metadata

title: Cross Entropy
tags: [課程共筆]

---

###### tags: `課程共筆`

# Cross Entropy


## Q1:資訊量為何用-logP表示?
因為頻率編碼時-logP與表示事件所傳送資訊數(碼數)相關。
* **N進位**: 一個碼可以表達幾種不同狀態
* **資訊量**: 表達狀態所需要的碼數
    * 與一個碼可能的變化有關(log運算的底數)
    * 與可能獨立狀態數量有關(log運算的對象)
    * $最大資訊量=ceil(log_{底數}(狀態數))=區別所有狀態所需最少的碼數$
    * 狀態的資訊量=目前設定下，表達該狀態需要的碼數
      以頻率編碼後，每個狀態資訊量為$-log_{底數}(狀態發生機率)$
* **頻率編碼**：降低傳輸成本所使用編碼方式，分配讓頻率高的事件占用優先權高的碼。
    * 1-hot編碼: 碼數=狀態數，每個編碼都使用相同碼數 
        * e.g. 1-hot編碼4個值
            => 0001,0010,0100,1000，平均4個碼
    * 依序編碼: 碼數=ceil(log_{底數}(狀態數))
        * e.g. 二進位編碼4個值
            => 00,01,10,11，平均2個碼
    * 頻率編碼: 每個編碼依頻率使用不同傳輸單位數
        * e.g. 二進位編碼4個頻率分別是[1/2,1/4,1/8,1/8]的值
            =>[0,11,100,101]，平均**1.75**個碼(0.5+0.5+0.375+0.375)
> e.g. 假設x現有6種狀態(e.g.學員的成績只落在6個區間內)，若其出現機率如下[1/8,1/8,1/4,0,0,1/2]
照頻率編碼(頻率高的分配較少單位使用)如下
![](https://i.imgur.com/cRI72Qc.png =400x)
可以看到，若傳輸資訊介質的可能性(進位數)很多，則傳輸資訊量越少
若不依頻率編碼資訊量期望值會變大，造成資源使用浪費(耗更多三色燈電力、更多個傳輸的bit)
![](https://i.imgur.com/TtGeOEe.png =300x)


## Q2: Entropy是想量測事件的什麼意義?
* $P(x)$為x發生的機率，則$-log(P(x))$代表x所含資訊量
* 假設P(x)發生的機率很高，則x資訊量很低(不是新鮮事)
* Entropy是所有事件資訊量的期望值: $\sum{P(x)*-log(P(x))}$
> e.g. 假設在一城市晴天發生機率為50%則廣播局會預設1條電線($-log_20.5=1$)傳輸表達是否晴天
若是在沙漠的夏天，晴天發生機率100%則廣播局會覺得不用通知($-log_21.0=0$)今天是否是晴天


