完美解釋交叉熵

2020-11-23 AI火箭營

通過幾個簡單的例子來解釋和總結什麼是交叉熵( Cross Entropy) 以及機器學習分類問題中為什麼使用交叉熵。

第一個例子

假設隨機從一個口袋裡取硬幣, 口袋裡有一個藍色的, 一個紅色的, 一個綠色的, 一個橘色的。

取出一個硬幣之後, 每次問一個問題, 然後做出判斷, 目標是, 問最少的問題, 得到正確答案. 其中一個最好的設計問題的策略如下:

每一個硬幣有1/4的概率被選中, 1/4(機率) * 2道題目 * 4顆球 = 2,平均需要問兩道題目才能找出不同顏色的球,也就是說期望值為2,就是熵(entropy)

第二個例子

例子變了, 變成了袋子中1/8的硬幣是綠色的, 1/8 的是橘色的, 1/4 是紅色的, 1/2 是藍色的, 這時最優的問題的策略如下:

1/2 的概率是藍色, 只需要1個問題就可以知道是或者不是, 1/4 的概率是紅色, 需要2個問題, 按照這個邏輯, 猜中硬幣需要的問題的期望是 1/2×1+1/4×2+1/8×3+1/8×3=1.75

第三個例子

假設袋子中全部是藍色的硬幣, 那麼, 這時候, 需要 0 個問題就可以猜到硬幣, 即 log21=0。 需要注意的是, 只有當知道袋子中全部是藍色的硬幣的時候需要的問題是 0 個.

總結上面的例子, 假設一種硬幣出現的概率是 p, 那麼, 猜中該硬幣的所需要的問題數是 log2(1/Pi)。例如, p=1/4, log24=2。

在這個問題中, 問題個數的期望是

這個式子就是的表達式. 簡單來說, 其意義就是在最優化策略下, 猜到顏色所需要的問題的個數。熵代表的是隨機變量或整個系統的不確定性,熵越大,隨機變量或系統的不確定性就越大。

現在已經了解了熵是什麼, 那麼, 下面解釋交叉熵(cross entropy) 的含義.對於第二個例子, 如果仍然使用第一個例子中的策略, 如下圖:

1/8 的概率, 硬幣是橘色, 需要兩個問題, 1/2 的概率是藍色, 仍然需要兩個問題, 也就是說,認為小球的分布為(1/4,1/4,1/4,1/4),這個分布就是非真實分布。平均來說, 需要的問題數是 1/8×2+1/8×2+1/4×2+1/2×2=2。 因此, 在例子二中使用例子一的策略是一個比較差的策略. 其中2是這個方案中的交叉熵。而最優方案的交叉熵是1.75。

給定一個策略, 交叉熵就是在該策略下猜中顏色所需要的問題的期望值。更普遍的說,交叉熵用來衡量在給定的真實分布下,使用非真實分布所指定的策略消除系統的不確定性所需要付出成本的大小。交叉的字面意思在於:真實分布與非真實分布的交叉。給定一個方案, 越優的策略, 最終的交叉熵越低。具有最低的交叉熵的策略就是最優化策略,也就是上面定義的熵。因此, 在機器學習中, 我們需要最小化交叉熵。

數學上來講, 交叉熵就是

其中, p 是真正的概率, 例如例子二中, 橘色和綠色是 1/8, 紅色是 1/4, 藍色是 1/2。p^是錯誤地假設了的概率, 例如, 在例子二中我們錯誤地假設了所有的顏色的概率都是 1/4。p和 p^ 可能有點容易混淆. 記住一點, log是用來計算在 你的策略下猜中所需要的問題數, 因此, log中需要的是你的預測概率p^。在決策樹中, 如果建立的樹不是最優的, 結果就是對於輸出的概率分布的假設是錯誤地, 導致的直接結果就是交叉熵很高。交叉熵不僅僅應用在決策樹中, 在其他的分類問題中也有應用。

分類問題

在二分類問題中, 標籤 y 是 1 的似然是對於標籤 y 的預測 y^, 同樣的, 標籤是 0 的似然是 1y^. 我們需要最大化似然函數, 而且, 由於二分類問題的特殊性, 根據伯努力分布(Bernoulli distribution),可以把似然函數寫成

當 y=1 的時候, 第二項為 1, 因此, 優化的是 y^

當 y=0 的時候, 第一項為 1, 優化的是 1y^.對上面的似然函數取對數, 結果是:

最大化似然函數, 就是對上面表達式取負然後最小化。也是交叉熵的表達式。 交叉熵有時候也被稱為對數損失函數。注意與上邊例子區別是多了個負號,上邊例子是消除不確定性需要付出的成本;而現在這個加了負號的交叉熵,則是最終的目標函數。

舉例來說, 假設我有 3 枚硬幣, 正正反, 記為 1,1,0. 預測結果是 0.8, 0.9, 0.3, 那麼, 交叉熵的均值是:

1/3(1×log0.8+1×log0.9+(10)×log(10.3))

假設有一個完美的算法, 直接預測出了 1,1,0, 那麼交叉熵的結果就是 0.

相關焦點

  • 理解熵、交叉熵和交叉熵損失
    交叉熵損失是深度學習中應用最廣泛的損失函數之一,這個強大的損失函數是建立在交叉熵概念上的。當我開始使用這個損失函數時,我很難理解它背後的直覺。在google了不同材料後,我能夠得到一個令人滿意的理解,我想在這篇文章中分享它。
  • 透徹講解~交叉熵代價函數
    我們如下定義這個神經元的交叉嫡代價函數:關於輸出層的權重的偏導數為交叉熵在分類問題中的應用交叉熵損失函數應用在分類問題中時,不管是單分類還是多分類,類別的標籤都只能是 0 或者 1。交叉熵代價函數對權重求導的證明交叉熵代價函數的定義:所以其向量形式是對偏置用同樣的方法可得交叉熵的含義和來源我們對於交叉熵的討論聚焦在代數分析和代碼實現
  • 簡單的交叉熵損失函數,你真的懂了嗎?
    說起交叉熵損失函數「Cross Entropy Loss」,腦海中立馬浮現出它的公式:我們已經對這個交叉熵函數非常熟悉,大多數情況下都是直接拿來使用就好。但是它是怎麼來的?為什麼它能表徵真實樣本標籤和預測概率之間的差值?上面的交叉熵函數是否有其它變種?也許很多朋友還不是很清楚!
  • 你還認為似然函數跟交叉熵是一個意思呀?
    似然函數不就是交叉熵嗎?」「機器學習中的似然函數怎麼看起來跟概率統計課本裡的不一樣呢?」「學長學長,我把這個model的輸出接上交叉熵後怎麼報錯了?」 「似然函數」名字的意義已經在以前的多篇文章中提過了,更通用的定義來說,似然函數就是衡量當前模型參數對於已知樣本集X的解釋情況,通用的表現形式如下: 注意!似然函數的定義當然沒有限定樣本集X的分布函數。這樣來看似然函數的話很抽象,不知道實際中如何去用。所以我們把問題縮小一下啦。
  • 信息、熵、螺旋星系
    完美對稱的雪花。例如,由於熵永遠不會減少(無序度總是增加的),所以你可以把一個生雞蛋變成炒雞蛋,但反過來卻不行。如果你要傳遞信息,熵也一定會增加——一通電話是要付出熵的代價的。
  • 機器學習中各種熵的定義及理解
    交叉熵交叉熵是一個用來比較兩個概率分布p和q的度量公式。換句話說,交叉熵是衡量在真實分布下,使用非真實分布所制定的策略能夠消除系統不確定性的大小。如何正確理解上述這段描述呢?同樣地,交叉熵可也以推廣到連續域。
  • 熱力學如何解釋進化論:最大化熵產生原理驅動下的自然選擇
    使用熱力學定律來解釋自然選擇和生命本身   表面上看,進化論和熱力學似乎是相互矛盾的。最明顯的是,熱力學第二定律指出,隨著時間的推移,任何系統都會傾向於達到熵的最大值,這意味著系統的秩序和可用能量均為最低水平。在一個封閉的房間裡打開一瓶香水,最後香氣也會消散,而有機體通常會儘量避免氣味的消散,也就是所謂的死亡。
  • 物理學中的「熵」,如何通俗地解釋?
    「熵」,可以理解為一個系統的混亂程度。簡單地舉個例子,一幼兒園中班,有30人和40把凳子: (1)開學第一天,老師說「大家可以任意選擇凳子坐」,那麼對於這個班級的學生排座來說,老師完全無法預測誰坐哪,也不知道哪把凳子會空著或者被人坐了,於是此時「排座」這個系統最為混亂,即「熵」達到最大值;
  • 熱力學如何解釋進化論:最大化熵產生原理驅動下的自然選擇-虎嗅網
    一些模型運用最大化熵產生原理 maximum entropy production可以很好的預測有關地球的氣候系統、土星的Titan衛星以及溶液中的晶體生長等過程。但直到現在,MEP也只是一個假設——沒有機制或理論來解釋為什麼系統會趨向於這種狀態。而經典的熱力學對此也無能為力,因為它只在封閉系統中解釋熵,其中沒有能量的輸入輸出。經典熱力學沒有說明像生命體這樣開放的非平衡系統應該產生多少熵。
  • 宇宙中的熵到底是什麼?為什麼熵只會增加不會減少?
    但唯一不變的是人們對宇宙的探索,似乎老子《道德經》的『道』 字可以解釋宇宙,不管是道法自然還是天人合一,似乎宇宙運轉的規律已經被人們參透,又似乎讓人摸不著頭腦。 於是有科學家提出了熵,用這個名詞來解釋宇宙的奧秘似乎也沒什麼不妥,但當時熵只適用於熱力學,它解釋了宇宙的混亂程度
  • 熱力學熵:克勞修斯
    克勞修斯提出的熵,被稱為熱力學熵或克勞修斯熵。除此之外,它還有兩個同胞兄弟。並且真要比較的話,克勞修斯熵反而是一個比較抽象的概念,這兩個同胞兄弟理解起來倒更加直觀。第一個胞弟在1877年由統計物理學泰鬥玻爾茲曼發現。這個人非常有魄力。在當時物理學界的一片反對浪潮中,他仍然堅持要用統計的觀點對多數粒子的運動進行解釋(不過我們或許該說幸好他堅持的是非常正確的)。
  • 熱力學第二定律與熵(後話)
    在熱寂說的百年爭論中,對Maxwell demon的研究催生了信息熵的誕生;「漲落說」對耗散結構和混沌理論提供支持,甚至啟發了量子力學的一些理論;耗散結構理論雖不能解釋宇宙命運那怎麼解釋呢?這個小精靈是有智慧的,他能了解每個分子的運動信息,通過大腦的活動去識別和控制這些分子。
  • 浙大學者破解高熵合金強度與塑性兼得奧秘!
    所謂丈夫之志,能屈能伸,堅強與堅韌並存,是歷史和自然對一個完美事物的重要標準之一。金屬材料的製備和使用淵源千年,是我們建設和改變世界所用的最大量和最重要的材料之一。然而完美難以企及,金屬材料的強與韌往往不可兼得。
  • 識得「廬山」真面目,浙大學者破解高熵合金強度與塑性兼得奧秘...
    所謂丈夫之志,能屈能伸,堅強與堅韌並存,是歷史和自然對一個完美事物的重要標準之一。金屬材料的製備和使用淵源千年,是我們建設和改變世界所用的最大量和最重要的材料之一。然而完美難以企及,金屬材料的強與韌往往不可兼得。因此從幾千年前冷兵器時代武器製造開始,人們就一直在追求堅強與堅韌並存的金屬材料,也是從那個時候開始,人們已經意識到,金屬材料的不同處理過程一定在改變著什麼,因為它會帶來強韌性的顯著變化。
  • 黑洞熵與普通系統熵有什麼不同?量子領域與熱力學的碰撞
    特別地,黑洞熵等於四分之一視界面積除以約化普朗克常數和牛頓引力常數。由於普朗克常數出現在黑洞熵公式中,黑洞熵的量子起源從一開始就被大家認可。但其真實的內涵以及與之緊密相關的廣義黑洞熱力學第二定律的具體作用機制、黑洞信息丟失問題,近40年來一直是該領域研究人員所希望揭開的謎題。
  • 熵理論:我們可以用它預測未來趨勢嗎?
    每一次新的熵的爆發都會為創新製造更多的表面積。 這個想法能解釋很多東西——從商業理論,到行業發展,乃至於企業的成功等——所以我給它起了個名字,叫做Entropy Theory(熵理論)。 熵理論把行業的發展解釋為一個混亂不斷加劇的故事。
  • 科普,熵到底是什麼?
    有一種概念對物理和化學有極其重要的作用,它幫助我們解釋物理現象的發生而不是通過其他方式。冰為什麼融化?巖漿為什麼冷卻?奶油為什麼會融入在咖啡中?這個概念就是熵。
  • 宇宙的終極法則熵真的只能增加嗎?聽完科學家的解釋明白了
    所謂熵,就是混亂度的意思。而熵增原理,指的是在自然條件下,宇宙萬物都會朝向越來越混亂的方向前進。記住是自然條件下,不包括人為幹預的情況。有時候人為幹預可以讓小系統內的熵減少,但無法改變宇宙這個大系統的熵,它依然還是在增加的過程中。那麼為什麼宇宙終極法則熵會不斷增加呢?
  • 什麼是熵?
    在本篇文章中,熵都是指代香農熵(Shannon entropy)。其實還有幾種其他類型的熵,但是在自然語言處理或者機器學習領域中,我們提到的熵都是香農熵。所以在沒有特意說明的情況下,下面就是熵的公式。均勻分布具有最大的熵一個好的不確定性度量會在均勻分布時達到最大的值。熵滿足這個要求。給定 n 個可能的結果,最大的熵在所有結果的概率相同時得到。下面是對於伯努利試驗中熵的圖像。
  • 宇宙的終極是熵?你知道熵是什麼嗎?
    那就是「熵」。什麼是「熵」呢?這個詞的解釋異常複雜,希望你能靜心看完。在19世紀初,科學家們發現了能量守恆定律。並且明確表示這個世界運轉的動力就是能量。熵,也就在這一次次的嘗試中誕生了。科學家們將那些在轉換過程中浪費掉的,無法再利用的能量,稱之為"熵"。最後它還被總結成了熱力學第二定律:即能量轉換永遠會產生熵,而所有"事物"最終都會趨於熵值最大化。