各種代理損失函數的曲線。藍色為0–1指示函數,綠色為平方損失函數,紫色為鉸鏈損失函數,黃色為邏輯損失函數。注意所有代理損失函數對y=f(x= 0) 均給出1的懲罰。
在機器學習和最佳化領域中,分類問題之損失函數可以用來表達預測不準確之程度,其中分類問題主要是用來判斷所偵測到的物件屬於什麼類別。將一個向量空間
做為所有的輸入值,而向量空間
做為所有的輸出值。我們希望能夠找到最佳的公式
將
映射到
[1]。然而,由於信息不完整、雜訊、計算過程中的非確定性模塊等因素,有可能會有相同的輸入值
映射到不同的輸出值
[2]。因此,這個學習過程的目的就是要最小化預期風險(更詳細的介紹參見統計學習理論),預期風險之定義為:
![{\displaystyle I[f]=\textstyle \int _{X\times Y}^{}\displaystyle V(f({\vec {x}},y))p({\vec {x}},y)d{\vec {x}}dy}](https://wikimedia.org/api/rest_v1/media/math/render/svg/c513eaa2127b38b6cbf4a2983cb2083bdc805b88)
其中
即損失函數,而
為機率密度函數。而實作上概率分布
通常是未知的,因此我們使用由數據樣本空間中取出的
個獨立且同分布(i.i.d.)的樣本點
作為訓練集,將樣本空間所得到的經驗風險做為預期風險的替代,其定義為:
![{\displaystyle I_{S}[f]={\frac {1}{n}}\sum _{i=1}^{n}V(f({\vec {x_{i}}},y_{i}))}](https://wikimedia.org/api/rest_v1/media/math/render/svg/625450ad58714b69472a0319deb70706742f2dd7)
基於分類問題的二元性,可定義0-1函數做為匹配值之基準。因此損失函數為:
![{\displaystyle V(f({\vec {x}},y))=H(-yf({\vec {x}}))}](https://wikimedia.org/api/rest_v1/media/math/render/svg/b6a70f821118111703db21f3e4e9e7e61e53ddbe)
其中
為步階函數。然而損失函數並不是凸函數或平滑函數,是一種NP-hard的問題,因此做為替代,需要使用可以追蹤的機器學習演算法(透過凸損失函數)。
分類問題之界線[編輯]
使用貝式定理,可以基於問題的二元性最佳化映射公式
為:
![{\displaystyle f^{*}({\vec {x}})={\begin{cases}1,&{\text{if }}p(1\mid {\vec {x}})>p(-1\mid {\vec {x}})\\-1,&{\text{if }}p(1\mid {\vec {x}})<p(-1\mid {\vec {x}})\end{cases}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/f59cd44143b43c5c842d53c5edab297d5a484736)
當
簡化分類問題預期風險[編輯]
![{\displaystyle {\begin{alignedat}{4}I[f(x)]&=\int _{X\times Y}^{}V(f({\vec {x}},y))p({\vec {x}},y)d{\vec {x}}dy\\&=\int _{X}^{}\int _{Y}^{}V(f({\vec {x}},y))p({\vec {x}},y)p({\vec {x}})dyd{\vec {x}}\\&=\int _{X}^{}[V(-f({\vec {x}})p(1\mid x)+V(f({\vec {x}})p(-1\mid x)]p({\vec {x}})d{\vec {x}}\\&=\int _{X}^{}[V(-f({\vec {x}})p(1\mid x)+V(f({\vec {x}})(1-p(1\mid x))]p({\vec {x}})d{\vec {x}}\end{alignedat}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/953d0aa17d4b1cea72b74e62153f75b62e6a9ee6)
平方損失[編輯]
![{\displaystyle V(f({\vec {x}},y))=(1-yf({\vec {x}}))^{2}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/c7c881a81ea537f9a3ff6e685e5e6fd6b6a6cb30)
平方損失凸且平滑,但容易過度懲罰錯誤預測,導致收斂速度比邏輯損失和鏈結損失慢。它的優點為有助於簡化交叉驗證之正則化(regularization)。
最小化預期風險之映射函數為:
![{\displaystyle f_{Square}^{*}=2p(1\mid x)-1}](https://wikimedia.org/api/rest_v1/media/math/render/svg/f64eb7d05bf7d149b180e76ea00439299e4e3a9b)
鏈結損失[編輯]
![{\displaystyle V(f({\vec {x}}),y)=\max(0,1-yf({\vec {x}}))=|1-yf({\vec {x}})|_{+}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/699bdcda15dc477c0e44b879502252ff088677ec)
鏈結損失公式等同於支持向量機(SVM)的損失公式。鏈結損失凸但不平滑(在
不可微分),因此不適用於梯度下降法和隨機梯度下降法,但適用次梯度下降法。
最小化預期風險之映射函數為:
![{\displaystyle f_{Square}^{*}=2p(1\mid x)-1}](https://wikimedia.org/api/rest_v1/media/math/render/svg/f64eb7d05bf7d149b180e76ea00439299e4e3a9b)
廣義平滑鏈結損失[編輯]
![{\displaystyle f_{\alpha }^{*}(z)\;=\;{\begin{cases}{\frac {\alpha }{\alpha +1}}&{\text{if }}z<0\\{\frac {1}{\alpha +1}}z^{\alpha +1}-z+{\frac {\alpha }{\alpha +1}}&{\text{if }}0<z<1\\0&{\text{if }}z\geq 1\end{cases}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/94e156422b05e97536925d2dd77a3fb20c8723aa)
其中
邏輯損失[編輯]
![{\displaystyle V(f({\vec {x}}),y)={\frac {1}{\ln 2}}\ln(1+e^{-yf({\vec {x}})})}](https://wikimedia.org/api/rest_v1/media/math/render/svg/5d92ae97b8548968815c13fc8812e84e235b12bf)
適用於梯度下降法,但不會對錯誤預測做懲罰。
最小化預期風險之映射函數為:
![{\displaystyle f_{\text{Logistic}}^{*}=\ln \left({\frac {p(1\mid x)}{1-p(1\mid x)}}\right).}](https://wikimedia.org/api/rest_v1/media/math/render/svg/e12cc00905b429a08269f48973920fb190349e6e)
交叉熵損失[編輯]
![{\displaystyle V(f({\vec {x}}),t)=-t\ln(f({\vec {x}}))-(1-t)\ln(1-f({\vec {x}}))}](https://wikimedia.org/api/rest_v1/media/math/render/svg/25d7fd48ff0fc80b73271dc22e6a9193f889411f)
其中
so that
屬於凸函數,適用於隨機梯度下降法。
指數損失[編輯]
![{\displaystyle V(f({\vec {x}}),y)=e^{-\beta yf({\vec {x}})}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/8239d1fb48856fcb9d31df2430b251dc66a022b7)
參考資料[編輯]
- ^ Shen, Yi, Loss Functions For Binary Classification and Class Probability Estimation (PDF), University of Pennsylvania, 2005 [6 December 2014], (原始內容存檔 (PDF)於2019-06-14)
- ^ Rosasco, Lorenzo; Poggio, Tomaso, A Regularization Tour of Machine Learning, MIT-9.520 Lectures Notes, Manuscript, 2014
可微分計算 |
---|
| 概論 | |
---|
| 概念 | |
---|
| 應用 | |
---|
| 硬件 | |
---|
| 軟件庫 | |
---|
| 實現 | |
---|
| 人物 | |
---|
| 組織 | |
---|
| 架構 | |
---|
|
主題
分類
|
|