函數間隔、幾何間隔、最大間隔分類器

本來是昨天要寫的

架不住糖衣炮彈

沒把持住自己

叛變了革命

是我的錯


函數間隔

函數間隔: gamma_i=y_{i}f(x_i)=y_i(wx_i+b)

y_{i} 就是人為設定的樣本的值(如:區分貓狗圖片,貓標定為「 -1 」,狗為「 1 」)

f(x_i) 的值就是二分類器的分類結果:

y_i=+1 ,則 f(x_i)=wx_i+bgeq1

y_i=-1 ,則 f(x_i)=wx_i+bleq-1

那麼函數間隔 gamma_i=y_{i}f(x) 就只會存在大於零或者小於零的情況,

gamma_i=y_{i}f(x)>0 ,說明 y_{i}f(x_i) 的值是同號的,那麼說明分類結果正確,反之錯誤。

這裡還要提一下, gamma_i=y_{i}f(x) 的值如果越大(或者越小)說明樣本離分類平面越遠,分類確信度越高。


幾何間隔

因為wb是可縮放的,「margin」是不是會跟著縮減,相應的「confidence」也就不確定了,這時候幾何間隔就登場了。

tilde{gamma_i} = frac{gamma_i}{||w||}=y_{i} (frac{w}{||w||}cdot x_{i} + frac{b}{||w||})

很明顯的可以看出幾何間隔 tilde{gamma_i} 是幾何間隔 gamma_i frac{1}{||w||} 倍。

{||w||} 其實就是 向量w 的二範數,即向量元素的平方和。

到這不禁有人會問,這是為什麼吶?

還記得中學的點(x_i, y_i)到直線ax+by+c=0的距離公式d(x_i, y_i) = frac{|ax_i+by_i+c|}{sqrt{a^2+b^2}}吧,注意這裡是二維的,所以下面是 {sqrt{a^2+b^2}} ,三維就是 {sqrt{a^2+b^2+c^2}} ,再往上自行腦補)。

那幾何間隔就是分類樣本點到超平面的距離了唄~

f(x_i)=wx_i+b 就是那個超平面,降到二維是不是就是一條線, gamma_i 也無非是乘了個 y_{i} ,判定的是它分類到底對於否(大方向),那 tilde{gamma_i} = frac{gamma_i}{||w||}不就是confidence的程度了嘛。


最大間隔分類器

知道了幾何間隔(函數間隔是可縮放的,所以不作為指標),我們就可以來優化了:函數間隔越大,confidence就越大,由此就引出了「maximum margin classifier」。

每個樣本都會有一個幾何間隔 tilde{gamma_i} ,那麼定義一個訓練集內所有樣本中最小的幾何間隔為 tilde{gamma} = min_{i=1,...,n}tilde{gamma_{i}} ,最大間隔分類器定義為: maxleft{ tilde{gamma} right} ,即使得tilde{gamma_i} = frac{gamma_i}{||w||}=y_{i} (frac{w}{||w||}cdot x_{i} + frac{b}{||w||}) 中的最小值最大化(有點暈?放心後面有更暈的...)。


沒了,吃驚嗎?

拉格朗日乘子法明天(或者後天、大後天···)寫

嗯,就是這樣了

bye呀~


推薦閱讀:

A Diversity-Promoting Objective Function for Neural Conversation Models
為什麼梯度下降法每次找到的都是下降最快的點?
自然語言處理(NLP)基礎概念5:word2vec代價函數求梯度計算過程詳解

TAG:机器学习 | 算法 | SVM |