交叉熵與對數似然分析
資訊理論(Information Theory)
-
「資訊」是指一組消息的集合。
-
假設在一個雜訊通道上發送消息,我們需要考慮如何對每一個資訊進行編碼、傳輸以及解碼,使得接收者可以儘可能準確地重構出消息。
-
資訊理論將資訊的傳遞看作一種統計現象。
-
資訊傳輸
-
資訊壓縮
-
熵(Entropy)
在資訊理論中,熵用來衡量一個隨機事件的不確定性。
- 熵越高,則隨機變數的資訊越多;
- 熵越低,則隨機變數的資訊越少.
applicatio_
確定性非常高,p(x=n)=1
appl_
那麼有apple
或apply
兩種可能,假設
P\left(x=e\right)=0.7
\\
P\left(x=y\right)=0.3
\end{align}
\]
自資訊(Self Information):一個隨機事件所包含的資訊量
對於一個隨機變數X,當X=x時的自資訊I(x)定義為
\]
這樣定義,讓它滿足可加性
I\left ( x,x’\right ) & = -\left[ \log_{}{p\left(x\right)}+ \log_{}{p\left(x’\right)}\right ]\\
&=-\log_{}{\left ( p\left (x \right )\cdot p\left ( x’ \right ) \right ) }
\end{align}
\]
熵:隨機變數X的自資訊的數學期望
H(x) & = \mathbb{E}_{x} [I(x)]
\\&=\mathbb{E}_{x}[-\log{}{p(x)}]
\\&=-\sum_{x\in \chi }^{} p(x)\log{}{p(x)}
\end{align}
\]
熵編碼(Entropy Encoding)
在對分布p(y)
的符號進行編碼時,熵H(p)
也是理論上最優的平均編碼長度,這種編碼方式稱為熵編碼。
什麼樣的編碼是最優編碼呢?最常出現的字元編碼越短,出現頻率越小的字元編碼越長。
交叉熵(Cross Entropy)
交叉熵是按照概率分布q的最優編碼對真實分布為p的資訊進行編碼的長度。
H(p, q) &=\mathbb{E}_{p}[-\log q(x)] \\
&=-\sum_{x} p(x) \log q(x)
\end{aligned}
\]
- 在給定q的情況下,如果p和q越接近,交叉熵越小;
- 如果p和q越遠,交叉嫡就越大。
KL散度(Kullback-Leibler Divergence)
- KL散度是用概率分布q來近似p時所造成的資訊損失量。
- KL散度是按照概率分布q的最優編碼對真實分布為p的資訊進行編碼,其平均編碼長度(即交叉熵)H(pq)和p的最優平均編碼長度(即熵)H(p)之間的差異。
\mathrm{KL}(p, q) &=H(p, q)-H(p) \\
&=\sum_{x} p(x) \log \frac{p(x)}{q(x)}
\end{aligned}
\]
應用到機器學習
以分類為例
真實分布
\]
預測分布
\]
假設y*為x的真實標籤
& P_{r}(y*|x) = 1 \\
& P_{r}(y|x) = 0, \forall y\ne y*
\end{align}
\]
真實分布相當於onehot向量
\begin{bmatrix}
0\\
0\\
0\\
1\\
0
\end{bmatrix}_{c}=P_{r}(y|x)
\end{align}
\]
如何衡量兩個分布的差異?
課程影片鏈接:3.3交叉熵與對數似然
原創作者:孤飛-部落格園
原文鏈接://www.cnblogs.com/ranxi169/p/16583838.html