文字分類學習 (八)SVM 入門之線性分類器

2021-09-24 22:56:05 字數 1918 閱讀 5882

所以要理解svm首先要明白的就是線性可分和線性分類器。

可以先解釋這張圖,通過這張圖就可以了解線性分類器了。

這是乙個在二維平面的圖。其中實心點和空心點是分別屬於兩類的,origin 是原點。

先看中間那條直線,中間的直線就是一條可以實心點和空心點分隔開來的直線,所以上圖中的資料點是線性可分的。

這條直線其實就是線性分類器,也可以叫做分類函式,在直線上方的屬於+1類,在直線下方的屬於-1類。+1,-1這裡只是區分類別。

所以該直線就是我們上面說的超平面,在二維空間中它是一條直線,三維空間是乙個平面。。。等等,下面就統稱為超平面

這個超平面上的點都滿足

(1)這裡需要解釋一下:

x 在二維平面中不是指橫座標值,而是指二維平面中點的向量,在文字分類中就是文字的向量表示。所以 x = ( xi , yi )

w 也是乙個向量 它是乙個垂直於超平面的向量,如圖中所示

該表示式不只是表示二維空間,也可以表示n維空間的超平面

b 是乙個常數

w * x 是求兩個向量的點積也就是內積,實際上應該寫成w * xt w乘以x的轉置向量,w是橫向量,x是列向量。

所以二維平面中,該表示式也可以表示為:

(2)繼續上圖的解釋,其中原點到超平面的距離為

這個可以很容易推導出來,以二維平面為例,上述表示式可以這麼轉換

根據點到直線的距離公式:

(3)計算這個公式是為了方便我們下面計算得到幾何間隔。

這裡 || w || 叫做 向量 w 的 歐幾里得正規化,p維的向量w的正規化:

實際上是對向量長度的一種度量。

下面是在svm中對線性分類器不同的地方,在svm中我們還要找到以下兩條直線h1, h2 (上圖已經是線性可分的最優分類線)

h1 和 h2 它們平行於超平面,在h1 上的點滿足:

(4)
在h2 上的點滿足:

(5)
所以在圖中我們可以看到空心點 都滿足

(6)實心點都滿足

(7)
所以我們可以把上面連個式子寫成乙個不等式:

(8)
這個不等式就是圖中所有資料點要滿足的條件,也是最優分類函式求出來的條件。

這裡還要提醒一下,xi 不是橫座標而是乙個n維向量,yi 不是縱座標而是乙個分類標籤,只有+1 和 -1。

上面計算過原點到超平面的距離,以此類推,h1 到原點的距離 = |-1-b| / || w || ; h2 到原點的距離 = | 1 - b | / || w ||

那麼h1 到超平面的距離就是 | b| / || w || - |-1-b| / || w || = 1 / ||w|| 同理h2到超平面的距離也是 1/ ||w||

h1 和h2 之間的距離為:2 / ||w|| 。這個距離稱作為幾何間隔。

svm 的工作是在n維空間中找到這兩個超平面:h1 和h2 使得點都分布在h1 和h2 的兩側,並且使h1 和h2 之間的幾何間隔最大,這是h1 和h2 就是支援向量

為什麼呢?因為幾何間隔與樣本的誤分次數間存在關係, 幾何間隔越大誤分次數的上界就越小。

這個1/||w|| 也可以通過上面的不等式(8)推導出來,把不等式(8)左邊和右邊同時除以 || w ||

就可以得到:

(9)
根據(6),(7)實際上yi 只是乙個正負號,相當於取絕對值,因為wxi+b<=-1的時候yi就是-1,結果還是正數,所以(9)可以變成:

(10)
不等式左邊表示的就是點到超平面wx+b=0的距離,該式子表示,所有點到超平面wx+b=0的距離都大於1/||w|| 。從圖中看也正是如此。

所以我們接下來的工作就是最大化幾何間隔,事實上也就是求||w||的最小值。

文字分類學習(六) AdaBoost和SVM

直接從特徵提取,跳到了boostsvm,是因為自己一直在寫程式,分析垃圾文字,和思考文字分類用於識別垃圾文字的短處。自己學習文字分類就是為了識別垃圾文字。中間的部落格待自己研究透徹後再補上吧。因為獲取垃圾文字的時候,發現垃圾文字不是簡單的垃圾文字,它們具有多個特性 1.種類繁多,難有共同的特徵。涵蓋...

文字分類學習(一) 開篇

今天開始,就要認真開始對待文字分類,在此之前只是稀疏的看過一些部落格,了解一下貝葉斯分類。之所以要學習文字分類,是因為我做的畢業設計就是關於文字分類和機器學習的。突然感覺到時間不太夠用了,而擺在我面前的實際上是乙個很浩大的工程,不得不抓緊時間開始研究。至於為什麼畢業設計會選擇文字分類演算法,因為覺得...

文字分類學習(一) 開篇

今天開始,就要認真開始對待文字分類,在此之前只是稀疏的看過一些部落格,了解一下貝葉斯分類。之所以要學習文字分類,是因為我做的畢業設計就是關於文字分類和機器學習的。突然感覺到時間不太夠用了,而擺在我面前的實際上是乙個很浩大的工程,不得不抓緊時間開始研究。至於為什麼畢業設計會選擇文字分類演算法,因為覺得...