一、前提知識
定義0——噪音、對稱噪音、非對稱噪音:
- 噪音:在這里指的是標簽錯誤的樣本。例如在通過眾包進行數據打標的場景中噪音就是一個不可避免的問題。
- 對稱噪音(symmetric/uniform noise):所有的樣本,都以同樣的概率會錯標成其他標簽;
- 非對稱噪音(asymmetric/class-confitional noise):不同類別的樣本,其錯標的概率也不相同。
定義1——損失函數的抗噪性:
如果一個損失函數,在有噪音的情況下,其風險最小化的模型(minimizer)跟沒有噪音時是相同的,就稱這個損失函數是抗噪的(noise-tolerant)。換言之,有噪音的情況下的最優模型,跟沒噪音一樣。(聽起來是不是不可能?)
定義2——損失函數的對稱性:
我們設模型的損失函數為
,設分類問題的類別有
類,則稱這個損失函數
是對稱的,當它滿足下面的公式:
二、重大發現:有對稱性的損失函數,具有一定的抗噪能力
作者通過推導以及實驗,發現擁有對稱屬性的損失函數,對噪音的抵抗能力也更強。甚至,當噪音時對稱噪音時,該損失函數理論上是完全抗噪的。
理論推導:
下面我們來推導一下:
首先假設我們面對的是對稱噪音,噪音比為.
設一個模型在沒有噪音時的目標函數,即損失函數在所有訓練樣本上的期望:
然后,設該模型在當前有噪音的情況下,目標函數是,公式為:
那么,如果損失函數是對稱的,我們可以有以下推導:
即可以得出結論:
其中為常數,
為跟噪音比
和類別
相關的系數。
由此可以知道,當的時候(即當
時),
和
是線性相關的,故他們的f的最優解也是一樣的!而只需要滿足對稱噪音的噪音比
即可。
這相當于,在二分類問題中噪音比不超過50%,三分類問題中噪音不超過66%,十分類問題中噪音不超過90% ,都跟沒噪音一樣!
基于直覺的理解:
推導出上面的結論,我當時也十分的驚訝,居然這么神奇。我們想一想,上面的結論中,最重要的假設是什么?有兩方面:
-
損失函數自身的對稱屬性
這個屬性直觀的理解,可以通過下圖:
上圖展示了一個四分類問題,損失函數對稱,就意味著如果一個樣本,它的真實標簽把所有標簽都遍歷一遍,計算其損失之和,這個和是個常數。 對稱噪音,即當一個樣本錯標時,它被分配到任意一個標簽的概率都是相同的。
在這樣的情況下,噪音的出現,在某種意義上,相當于一個樣本把所有標簽都遍歷了一遍。那么對整體的損失函數,只不過是增加了一個常數,因此不影響最終的優化結果。
現實的例子
通過上面的神奇的發現,我們不禁想問,擁有這么神奇的屬性的損失函數應該很少見吧。其實不是,常見的MAE(mean absolute error,平均絕對誤差),就是一個典型的擁有對稱性的損失函數。而我們最最常用的CCE(categorical cross-entropy loss,交叉熵損失函數)、MSE(mean squire error,均方誤差),則是非對稱的。
下面是他們的損失函數:
通過遍歷類別求和,驗證其對稱性:
可以看出,MAE確實具有對稱性。
作者在MNIST和RCV1數據集上做了一些實驗,見下圖:
可以看出,在有噪音的情況下,CCE最大的特點就是,測試集上的accuracy像坐過山車一樣,很快到達坡頂,然后飛流直下。而MAE在測試集上則是緩緩地爬坡,沒有明顯的下降趨勢。
然而,MAE自然也有其缺點,其收斂十分艱難,從圖中可以看出,它在訓練集上的收斂速度很慢,甚至嚴重欠擬合。