分類問題損失函式的資訊理論解釋

2022-06-06 19:21:09 字數 2835 閱讀 3066

分類問題的優化過程是乙個損失函式最小化的過程,對應的損失函式一般稱為logloss,對於乙個多分類問題,其在n個樣本上的logloss損失函式具有以下形式:

其中,yi(n)代表第n個樣本是否屬於第i個類別,取值為0或1,f(x(n))i代表分類模型對於第n個樣本屬於第i個類別的**概率。將上面的式子稍作簡化就可以得到我們常見的二分類問題下的損失函式,在這裡不做展開,我們下面的討論也都對於更為一般的多分類問題展開,而這些討論對於二分類問題顯然也同樣適用。

上面的損失函式,很容易從最大似然的角度來做理解,也就是說等號右邊的部分,去掉負號以後,對應著模型的乙個估計f在n個樣本上(取了log)的似然函式,而似然函式的最大化就對應著損失函式的最小化。

但是這個損失函式還有另外乙個名字,叫做cross-entropy loss,從名字可以看出,這是乙個資訊理論相關的名字,我們這篇文章就從資訊理論的角度,來理解一下分類問題的損失函式。

說起熵,大家都能知道衡量的是「資料的混亂程度」,但是它具體是如何衡量的呢?讓我們首先來重新認識一下熵。

現在是周五的下班高峰期,你站在北京東三環的一座天橋上面,望著一輛輛汽車穿梭而過。你現在肩負著乙個任務:你需要告訴我你看到的每一輛車的品牌型號,而我們的通訊工具,是乙個二進位制的通訊管道,裡面只能傳輸0或者1,這個管道的收費是1¥/bit。

顯然你需要設計一組二進位制串,每個串對應乙個車型,例如1001對應的是一輛大眾桑塔納。那麼你要如何設計這一組二進位制串呢?具體來說,你會為豐田凱美瑞和特斯拉models設計同樣長度的串嗎?

即使你不精通概率論,你可能也不會這麼做,因為你知道大街上跑著的凱美瑞肯定比models多得多,用同樣長度的bit來傳輸肯定是不經濟的。你肯定會為凱美瑞設計乙個比較短的串,而為models設計乙個長一些的串。你為什麼會這麼做?本質上來講,你是在利用你對分布的先驗知識,來減少所需的bit數量。那具體我們應該如何利用分布知識來對資訊進行編碼呢?

幸運的是,夏農(shannon)老先生證明了,如果你知道乙個變數的真實分布,那麼為了使得你使用的平均bit最少,那麼你應該給這個變數的第i個取值分配log1/yi個bit,其中yi是變數的第i個取值的概率。如果我們按照這樣的方式來分配bit,那麼我們就可以得到最優的資料傳輸方案,在這個方案下,我們為了傳輸這個分布產生的資料,平均使用的bit數量為:

有沒有很眼熟?沒錯,這就是我們天天掛在嘴邊的熵(entropy)。

在上面的例子中,我們利用我們對資料分布y的了解,來設計資料傳輸方案,在這個方案中,資料的真實分布y充當了乙個「工具」的角色,這個工具可以讓我們的平均bit長度達到最小。

但是在大部分真實場景中,我們往往不知道真實y的分布,但是我們可以通過一些統計的方法得到y的乙個估計。如果我們用來設計傳輸方案,也就是說,我們給分布的第i個取值分配log1/yi個bit,結果會是怎樣?

套用之前的式子,將log中的y替換成為y^,我們可以得到,如果使用y^作為「工具」來對資料進行編碼傳輸,能夠使用的最小平均bit數為:

這個量,就是所謂的交叉熵(cross entropy),代表的就是使用y^來對y進行編碼的話,需要使用的最短平均bit串長度。

交叉熵永遠大於或等於熵,因為交叉熵是在用存在錯誤的資訊來編碼資料,所以一定會比使用正確的資訊要使用更多的bit。只有當y^和y完全相等時,交叉熵才等於熵。

現在回到分類問題上來。假設我們通過訓練得到了某模型,我們希望評估這個模型的好壞。從上面通道傳輸的角度來看,這個模型實際上提供了對真實分布y的乙個估計y^。我們說要評估這個模型的好壞,實際是是想知道我們給出的估計y^和真實的分布y相差多大,那麼我們可以使用交叉熵來度量這個差異。

由於交叉熵的物理意義是用y^作為工具來傳輸y平均需要多少個bit,那我們可以計算一下如果用y^來傳輸整個訓練資料集需要多少個bit,首先我們看一下傳輸第n個樣本需要多少個bit。由於估計出來的模型對於第n個樣本屬於第i個類的**概率是y^i(n),而第n個樣本的真實概率分布是yi(n),所以這乙個樣本也可以看做是乙個概率分布,那麼根據交叉熵的定義:

那麼傳輸整個資料集需要的bit就是:

進一步變換可得:

其中。對比文章最開始的logloss損失函式可知:

也就是說,分類問題的損失函式,從資訊理論的角度來看,等價於訓練出來的模型(分布)與真實模型(分布)之間的交叉熵(兩者相差乙個只和樣本資料量有關的倍數n),而這個交叉熵的大小,衡量了訓練模型與真實模型之間的差距,交叉熵越小,兩者越接近,從而說明模型越準確。

通過上面的講解,我們從資訊理論的角度重新認識了分類問題的損失函式。資訊理論和機器學習是緊密相關的兩個學科,從資訊理論的角度來說,模型優化的本質就是在減少資料中的資訊,也就是不確定性。希望這個理解角度,能夠讓大家對分類問題有乙個更全面的認識。希望對熵有進一步了解的同學,可以讀一下夏農老先生的著名文章《amathematical theory of communication》,有時間的同學更可以研讀一下《elements ofinformation theory》這本巨著,一定會讓你的ml內功發生質的提公升。

本文的靈感和部分內容來自這篇文章:

來自為知筆記(wiz)

分類問題損失函式的資訊理論解釋

分類問題的優化過程是乙個損失函式最小化的過程,對應的損失函式一般稱為logloss,對於乙個多分類問題,其在n個樣本上的logloss損失函式具有以下形式 上面的損失函式,很容易從最大似然的角度來做理解,也就是說等號右邊的部分,去掉負號以後,對應著模型的乙個估計f在n個樣本上 取了log 的似然函式...

資訊理論 資訊的度量

概述 資訊使用來消除不確定性的東西 資訊不等於訊息,訊息只是資訊的載體 度量 資訊的大小是由資訊消除的不確定性的大小決定的 中國男子桌球隊獲得冠軍與中國男子足球隊獲得冠軍的資訊量完全不同 事件1的不確定性為i p1 p1為事件1的先驗概率 資訊a消除的不確定性為i p2 則獲取資訊a後事件1的不確定...

資訊理論 資訊量的計算

夏農定義,乙個事件包含資訊量的大小由這個事件消除了多少不確定性決定 計算得出的資訊稱為 shannon information content 資訊量在某些情況下是可加的,比如 得知乙個六面骰子投擲三次的結果所包含的資訊量,是得知投擲一次的結果的三倍 用數學表達的話,可以假設可能的結果為 r 投擲一...