SVM(支持向量機)之Hinge Loss解釋

  • Hinge Loss 解釋

  SVM 求解使經過創建二次規劃原始問題,引入拉格朗日乘子法,而後轉換成對偶的形式去求解,這是一種理論很是充實的解法。這裏換一種角度來思考,在機器學習領域,通常的作法是經驗風險最小化 ERM ,即構建假設函數爲輸入輸出間的映射,而後採用損失函數來衡量模型的優劣。求得使損失最小化的模型即爲最優的假設函數,採用不一樣的損失函數也會獲得不一樣的機器學習算法,好比這裏的主題 SVM 採用的是 Hinge Loss ,Logistic Regression 採用的則是負 $\log$ 損失,算法

\[L(Y,P(Y|X)) = - \log P(Y|X)\]機器學習

  從二項分佈的角度來考慮 Logistic 迴歸: 函數

 

\begin{aligned}
P(Y=1|X) &= \frac{1}{1 + e^{- \theta x}}\\
P(Y=0|X) &= 1- P(Y=1|X)
\end{aligned}post

  這裏另 $z = \theta^Tx$ ,  $\delta$ 爲 sigmod 映射,則: 學習

\[E(z) = - \log (\delta(z)) \]
優化

  $E(z)$ 的圖形以下圖的紅色曲線,可見 $z$ 越接近 1 , $E(z)$ 的取值越小,即損失越小。反之另:spa

\[E(z) = 1- \log (\delta(z)) \]3d

  此時獲得的圖像應該爲關於 $E(z)$ 對稱的紅色的線(沒畫出),此時 $z$ 越接近 -1,$E(z)$ 的取值越小,即損失越小。blog

  : 圖中綠色的線爲 square loss ,藍色的線爲 hinge loss, 紅的的線爲負 log 損失。io

  • 二分類問題

  給定數據集  $T = \left \{ (x_i,y_i)\right \}_{i=1}^N $ , 要用這些數據作一個線性分類器,即求得最優分離超平面 $w\cdot x + b = 0$ 來將樣本分爲正負兩類,給定數據集後只需求得最優的參數  $w , b$ 便可,爲了解決這個問題,首先作出以下線性映射函數 

\[y = w \cdot x + b\]

  根據經驗風險最小化原則, 這裏引入二分類的 Hinge Loss :

\[max(0, 1- y_i(w \cdot x_i + b))\]

  上圖中對應的 $E(z) = max(0,1-z)$ ,因此SVM能夠經過直接最小化以下損失函數二求得最優的分離超平面:

\[ \min_{w,b} \sum_{i=1}^N max(0, 1- y_i(w \cdot x_i + b)) + \lambda ||w||^2 \]

  • 多分類問題

對於多分類問題,如今要用這些數據作一個 k 類的線性分類器 ,如今須要優化的參數變爲 $W ,b$ , 此時的 $W \in \mathbb{R} ^{k \times n}$,爲一個 $k \times n$ 的矩陣,$b \in \mathbb{R}^k$ 爲一個向量,如今的映射關係以下 :$s =W x_i +b$,此時有 $s \in \mathbb{R}^k$  ,$s$ 中的每一個份量表明分類器在該類別的得分,樣本 $x_i$ 的標籤  $y_i \in \mathbb{R}^k$ , 這裏若 $x_i$ 屬於類別 $k$ ,則 $y_i$ 中除了第 $k$ 個份量外其他元素全爲 0 ,好比 5 分類問題, $x_i$  屬於第 3 類,則有  $y_i = [0,0,1,0,0]$  , 用 $s_j$ 表示得分向量 $s$ 中的第 $j$ 個份量 , $s_{y_i}$ 表示對應 $y_i = 1$ 的份量,則單個樣本多分類的Hinge Loss可表示爲:

\[\sum_{j \ne y_i} max(0,s_j - s_{y_i} + 1)\],

以 $k$ 分類線性分類SVM 的 Hinge Loss表示爲:

\[\min_{W,b} \sum_{i=1}^N\sum_{j \ne y_i} max(0,s_j - s_{y_i} + 1) + \lambda \sum_k \sum_nW_{k,n}^2\]

相關文章
相關標籤/搜索