機器學習Lesson 11 — 使用Bi-Tempered Logistic Loss打造強健的模型

施威銘研究室
7 min readMar 26, 2021

--

處理分類問題時,我們常常使用Softmax激活函數以及Logistic損失函數,但是在訓練資料集有較多雜訊的情況下,使用這兩個函數可能會造成訓練過程不穩定。今天,我們用二元分類來了解問題在哪裡,以及可能的解決方案。

一、Softmax激活函數

我們希望模型輸出的預測值即是資料屬於各個類別的機率,如果是二元分類,那模型的輸出則為某一筆資料屬於類別一的機率、以及類別二的機率。為了達到這個目的,通常我們會使用Softmax激活函數,讓模型最終的輸出為機率值:

二、Logistic損失函數

得到了模型的預測機率,接下來的問題是:我們要怎麼知道模型預測的精準度如何呢?其中一個常用的方法即是使用「Logistic損失函數」。

模型使用Softmax激活函數後,得到某一筆資料屬於某一個類別的機率之後,接下來我們要將預測值跟資料實際的標籤做比較,看看差異是多少,並作為模型參數更新的參考。Logistic損失函數用以下的數學式,來比較預測值跟標籤的差異:

三、Temperature Generalisation Softmax激活函數

看起來有了Softmax激活函數,以及Logistic損失函數,我們就可以將模型的預測值跟標籤比較,並且作為改進模型的參考了。很不幸的,有時候這兩個函數,沒辦法讓我們得到一個強健(比較不會受到訓練資料集的雜訊干擾)的模型。接下來我們要來仔細探討Softmax跟Logistic函數當中分別都有一個麻煩的問題,以及可能的解決方案。

Softmax激活函數中,使用到了exponential函數。而exponential函數在輸入小於0的情況下,輸出很快就會衰減到趨近於0,又稱為short tail。這種激烈變化意味著模型的計算只要有一點差異,就會造成輸出機率有很大的不同。如果現在的訓練資料中,有幾筆相似度很高但類別不同的資料,即會造成模型訓練不穩定。

為了解決這個問題,有研究者(Amid et al., 2019)提出了新的函數來取代exponential函數:

這個函數看起來很奇怪,我們使用不同的x跟t並畫出來看看吧。從圖一可以發現到如果t的數字越大,代表機率衰減的速度會越慢,也就是不太可能會出現機率非常低的預測結果。

圖一

四、Temperature Generalisation Logistic損失函數

Logistic損失函數主要是由log函數組成,但是log函數也有一個缺點:如果模型預測失準,且輸出機率值非常的小,取log之後就會出現很大的負數,這也會讓模型訓練不穩,這問題稱為unbounded。為了解決這個問題,同一組研究者(Amid et al., 2019)提出了新的函數來取代log函數:

我們使用不同的x跟t並畫出來看看吧。從圖二可以發現,當輸入介於0到1之間時,新的函數不會出現無窮小的輸出值,其最小值跟t有關:

圖二

如何在訓練過程中使用自己定義的損失函數,大家可以參考旗標出版的「Kaggle競賽攻頂秘笈 — 揭開Grandmaster的特徵工程心法,掌握制勝的關鍵技術」第二章的內容。

五、Bi-Tempered Logistic Loss

為了解決一開始我們提到的問題,這組研究者(Amid et al., 2019)就將Softmax激活函數跟Logistic損失函數裡面的exponential跟log全部換成新的函數,其中新的log所使用的參數為t1,新的exponential所使用的參數為t2。圖三跟圖四為不同參數下,模型的輸出與損失函數的關係。從圖中可以觀察到,Bi-Tempered Logistic Loss除了不會出現非常龐大的loss,也不會有loss急遽變化的區域。

圖三
圖四

圖五為此研究團隊(Amid et al., 2019)的實驗結果。( a )是理想的二元分類問題;( b )在決策邊界附近有很難分類的資料;( c )距離決策邊界很遠的地方有無法分類的資料;( d )少數隨機無法分類的資料。原始exponential函數對於( b )這種資料集便會有不良的影響,原始log函數對於( c )這種資料集也會有不良的影響,因此可以從( b )、( c )、( d )的上方圖看到決策邊界會有一些奇怪的彎曲現象。如果使用了Bi-Tempered Logistic Loss,便可以產生比較穩定的決策邊界,增加模型的強健性。

圖五(Amid et al., 2019)

此研究團隊也提供了程式碼給大家使用:https://github.com/google/bi-tempered-loss,趕快來試試看吧!

重點整理

1、Exponential函數的short tail特性,使得決策邊界上難以分類的資料會讓模型穩定度降低。

2、log函數的unbounded特性,使得距離決策邊界非常遙遠的無法分類資料,給模型帶來不穩定性。

3、Bi-Tempered Logistic Loss導入Temperature Generalisation來取代exponential函數以及log函數,可以增加模型的穩定性

參考資料

Amid, E., Warmuth, M. K., Anil, R., and Koren, T. (2019). Robust Bi-Tempered Logistic Loss Based on Bregman Divergences. In Advances in Neural Information Processing Systems, pp. 15013–15022.

關於作者

Chia-Hao Li received the M.S. degree in computer science from Durham University, United Kingdom. He engages in computer algorithm, machine learning, and hardware/software codesign. He was former senior engineer in Mediatek, Taiwan. His currently research topic is the application of machine learning techniques for fault detection in the high-performance computing systems.

--

--

施威銘研究室
施威銘研究室

Written by 施威銘研究室

致力開發AI領域的圖書、創客、教具,希望培養更多的AI人才。整合各種人才,投入創客產品的開發,推廣「實作學習」,希望實踐學以致用的理想。

No responses yet