1. 程式人生 > >機器學習中的常見問題——損失函式

機器學習中的常見問題——損失函式

一、分類演算法中的損失函式

在分類演算法中,損失函式通常可以表示成損失項和正則項的和,即有如下的形式:

J(w)=iL(mi(w))+λR(w)

其中,L(mi(w))為損失項,R(w)為正則項。mi的具體形式如下:

mi=y(i)fw(x(i)) y(i){1,1} fw(x(i))=wTx(i)

對於損失項,主要的形式有:

  • 0-1損失
  • Log損失
  • Hinge損失
  • 指數損失
  • 感知損失

1、0-1損失函式

在分類問題中,可以使用函式的正負號來進行模式判斷,函式值本身的大小並不是很重要,0-1損失函式比較的是預測值fw(x(i))與真實值y(i)的符號是否相同,0-1損失的具體形式如下:

L01(m)={01 if m0 if m<0

以上的函式等價於下述的函式:

12(1sign(m))

0-1損失並不依賴m值的大小,只取決於m的正負號。0-1損失是一個非凸的函式,在求解的過程中,存在很多的不足,通常在實際的使用中將0-1損失函式作為一個標準,選擇0-1損失函式的代理函式作為損失函式。

2、Log損失函式

2.1、Log損失

Log損失是0-1損失函式的一種代理函式,Log損失的具體形式如下:

log(1+exp(m))

運用Log損失的典型分類器是Logistic迴歸演算法。

2.2、Logistic迴歸演算法的損失函式

對於Logistic迴歸演算法,分類器可以表示為:

p(yx;w)=σ(wTx)y(1σ(wTx))(1y)

其中,y{0,1}。為了求解其中的引數w,通常使用極大似然估計的方法,具體的過程如下:

1、似然函式

L(w)=i=1nσ(wTx(i))y(i)(1σ(wTx(i)))(1y(i))

其中,

σ(x)=11+exp(x)

2、log似然

logL(w)=i=1ny(i)log(σ(wTx(i)))+(1y(i))log(1σ(wTx(i)))

3、需要求解的是使得log似然取得最大值的w,可以轉換為求最小值: