◎前置概念
◎簡述
◎Information Entropy
依照實際分布,最短編碼長度為
$H(p)=-\sum_{x}^{}p(x)\log p(x)$
◎Cross Entropy
依照估算分布,所得出的編碼長度
$H(p,q)=-\sum_{x}^{}p(x)\log q(x)$,p為實際分布,q為估算分布(非實際)。
Cross Entropy越低,表示越接近實際分布,即當p = q時,Cross Entropy相等於Information Entropy
$H(p,q) \geq H(p)$
◎Relative Entropy
抽樣分布得出的編碼長度與實際分布"多"了多少
$H(p||q) \geq 0 $
$H(p||q) = H(p,q) - H(p) = \sum_{x}^{}p(x)\log\frac{1}{q(x)} - \sum_{x}^{}p(x)\log\frac{1}{p(x)} = \sum_{x}^{}p(x)\log\frac{p(x)}{q(x)}$
$H(p||q) \neq H(q||p)$
◎範例
假定一個實際分布中含有{1, 2, 3, 4},取出數字1, 2, 3, 4為$\frac{1}{2}$、$\frac{1}{4}$、$\frac{1}{8}$、$\frac{1}{8}$
其 Information Entropy為 $\frac{1}{2}\times\log 2+ \frac{1}{4}\times\log 4+ \frac{1}{8}\times\log 8 + \frac{1}{8}\times\log 8 = 1.75$
而因為我們不知道實際分布,我們假定各個數字出現機率相等,皆為$\frac{1}{4}$,
其 Cross Entropy為$\frac{1}{2}\times\log 4+ \frac{1}{4}\times\log 4+ \frac{1}{8}\times\log 4 + \frac{1}{8}\times\log 4 = 2 $。
其 Relative Entropy 為 $2- 1.75 = \frac{1}{2}\log\frac{4}{2} + \frac{1}{4}\log\frac{4}{4} + \frac{1}{8}\log\frac{4}{8} + \frac{1}{8}\log\frac{4}{8} = 0.25$
- 熵代表的是不確定性,熵越大表示不確定性越大,如 : 若1~10為每個數出現機率一樣,不確性增加,即熵越大,若某數的出現機率為99%,不確性降低,即熵越低。
- 若某一變量機率分布為1/2,則編碼長度1個bit($\log\frac{1}{P}$)即可表示。若某一變量機率分布為1/4,則2個bit即可表示,以此類推。
- 熵可表示為 隨機變量的位元量 X 發生機率 的 總和(數學期望) 。
- Relative Entropy 等於 Kullback–Leibler divergence。
- 機器學習目的即為了讓Relative Entropy盡可能接近0,接近實際分布。
- 求最小Relative Entropy,即為求maximum likelihood estimation
◎簡述
- Information Entropy : 知道實際分布,最短的平均編碼長度為多少。
- Cross Entropy : 不知道實際分布,推估出來的平均編碼長度為多少。
- Relative Entropy : 不知道實際分布,比最短平均編碼長度增加多少。
◎Information Entropy
依照實際分布,最短編碼長度為
$H(p)=-\sum_{x}^{}p(x)\log p(x)$
◎Cross Entropy
依照估算分布,所得出的編碼長度
$H(p,q)=-\sum_{x}^{}p(x)\log q(x)$,p為實際分布,q為估算分布(非實際)。
Cross Entropy越低,表示越接近實際分布,即當p = q時,Cross Entropy相等於Information Entropy
$H(p,q) \geq H(p)$
◎Relative Entropy
抽樣分布得出的編碼長度與實際分布"多"了多少
$H(p||q) \geq 0 $
$H(p||q) = H(p,q) - H(p) = \sum_{x}^{}p(x)\log\frac{1}{q(x)} - \sum_{x}^{}p(x)\log\frac{1}{p(x)} = \sum_{x}^{}p(x)\log\frac{p(x)}{q(x)}$
$H(p||q) \neq H(q||p)$
◎範例
假定一個實際分布中含有{1, 2, 3, 4},取出數字1, 2, 3, 4為$\frac{1}{2}$、$\frac{1}{4}$、$\frac{1}{8}$、$\frac{1}{8}$
其 Information Entropy為 $\frac{1}{2}\times\log 2+ \frac{1}{4}\times\log 4+ \frac{1}{8}\times\log 8 + \frac{1}{8}\times\log 8 = 1.75$
而因為我們不知道實際分布,我們假定各個數字出現機率相等,皆為$\frac{1}{4}$,
其 Cross Entropy為$\frac{1}{2}\times\log 4+ \frac{1}{4}\times\log 4+ \frac{1}{8}\times\log 4 + \frac{1}{8}\times\log 4 = 2 $。
其 Relative Entropy 為 $2- 1.75 = \frac{1}{2}\log\frac{4}{2} + \frac{1}{4}\log\frac{4}{4} + \frac{1}{8}\log\frac{4}{8} + \frac{1}{8}\log\frac{4}{8} = 0.25$
留言
張貼留言