交叉熵損失函式

2022-03-05 10:43:03 字數 1273 閱讀 7420

熵的本質是香濃資訊量\(\log(\frac)\)的期望

既然熵的本質是香濃資訊量\(\log(\frac)\)的期望,那麼便有

\[h(p)=e[p_i\times\log(\frac)]=\sum p_i\times\log\frac

\]乙個時間結果的出現概率越低,對其編碼的bit的長度就越長。熵的本質的另乙個解釋是編碼方案完美時,最短平均編碼長度的是多少

現在關於樣本集的2個概率分布\(p\)和\(q\),其中\(p\)為真實分布,\(q\)為非真實分布,通常是**結果,比如在深度學習的分類中,像手寫數字識別,會有10個類別,那麼對於乙個給定的\(x\),那麼經過深度模型**得到的結果應該是乙個分布,比如\(q(0)=0.0,q(1) = 0.1,q(2) = 0.1, q(3) = 0.8,q(4)=0,\dots\),這就是乙個分布,最後肯定會選擇概率最大的3作為輸出。但是這是**的概率分布,實際的分布應該是\(p(0)=0,p(1)=0,p(2)=0,p(3)=1,p(4)=0,\dots\)。於是,我們想做的就是讓q的分布與\(p\)的分布一樣。

在概率論或資訊理論中,kl散度( kullback–leibler divergence),又稱相對熵(relative entropy),是描述兩個概率分布p和q差異的一種方法。它是非對稱的,這意味著d(p||q) ≠ d(q||p)。特別的,在資訊理論中,d(p||q)表示當用概率分布q來擬合真實分布p時,產生的資訊損耗,其中p表示真實分布,q表示p的擬合分布。簡單的說,kl散度或者相對熵它是用來度量兩個分布\(p,q\)之間的距離的,也就是說,距離越大,兩個分布差距最大。於是。在我們的模型訓練中, 我們要做的就是不斷的調整引數,使得**得到的分布與真實分布盡可能的一致。那麼,這與交叉熵有什麼關係呢?

相對熵的數學定義如下

\[d_ = \sum_ip(i)\log\frac

\]展開後有

\[d_ = \sum_ip(i)\log(p(i)) - p(i)\log(q(i))

\]我們暫且表示為

\[d_ = \sum_ih(p(i) + h(p(i),q(i))

\]而\(h(p_i)\)是乙個真實分布的期望,因此與訓練無關,是乙個常數項。於是,最小化相對熵便轉為最小化\(h(p_i,q_i)=-\sum_i p(i)\log q(i)\)

這個就是交叉熵。

一句話說,就是,最小化誤差可以通過最小化相對熵(kl散度)來實現,而最小化相對熵,則可以通過最小化交叉熵來實現,所以,交叉熵損失函式就這麼來了。。。。。。。。。

交叉熵損失函式 交叉熵損失函式和均方差損失函式引出

交叉熵 均方差損失函式,加正則項的損失函式,線性回歸 嶺回歸 lasso回歸等回歸問題,邏輯回歸,感知機等分類問題 經驗風險 結構風險,極大似然估計 拉普拉斯平滑估計 最大後驗概率估計 貝葉斯估計,貝葉斯公式,頻率學派 貝葉斯學派,概率 統計 記錄被這些各種概念困擾的我,今天終於理出了一些頭緒。概率...

交叉熵損失函式

公式 分類問題中,我們通常使用 交叉熵來做損失函式,在網路的後面 接上一層softmax 將數值 score 轉換成概率。如果是二分類問題,我們通常使用sigmod函式 2.為什麼使用交叉熵損失函式?如果分類問題使用 mse 均方誤差 的方式,在輸出概率接近0 或者 接近1的時候,偏導數非常的小,學...

交叉熵損失函式

監督學習的兩大種類是分類問題和回歸問題。交叉熵損失函式主要應用於分類問題。先上實現 這個函式的功能就是計算labels和logits之間的交叉熵。tf.nn.softmax cross entropy with logits logits y,labels y 首先乙個問題,什麼是交叉熵?交叉熵 c...