机器学习第六篇:详解支持向量机算法
(本文框架)
01|概念及原理:
支持向量機是一種二分類模型,它的基本模型是定義在特征空間上的間隔最大的線性分類器。
說的通俗一點就是就是在特征空間里面用某條線或某塊面將訓練數據集分成兩類,而依據的原則就是間隔最大化,這里的間隔最大化是指特征空間里面距離分離線或面最近的點到這條線或面的間隔(距離)最大。
看下面的圖來感受一下,SVM的目的就是要找打能把紅色點和藍色點準確分開的線或面。
上圖來源于鏈接:https://www.zhihu.com/question/21094489,里面還有不錯的動態展示視頻,可點擊了解。
間隔最大化的直觀解釋:對訓練數據集找到幾何間隔最大的超平面意味著以充分大的確信度對訓練數據進行分類。也就是說,不僅將正負實例點分開,而且對最難分的實例點(即離平面最近的點)也有足夠大的確信度將他們分開。這樣的超平面對未知的新實例有很好的分類預測能力。
02|幾個基本概念:
1、線性/非線性
線性是指量與量之間按比例,成直線關系,在數學上可理解為一階導數為常數的函數;而非線性是指不按比例,不成直線關系,一階導數不為常數的函數。
2、線性可分/不可分
對于二分類問題,有那么一條直線可以把正負實例點完全分開,這些數據就是線性可分的;而線性不可分就是找不到一條直線可以把正負實例點完全分開。
3、超平面
其實就是實例點從二維空間轉移到三維甚至多維空間中,這個時候不能再用直線劃分,而需要用平面去劃分數據集,這個平面就稱為超平面。
4、支持向量
在線性可分的情況下,訓練數據集的樣本點與分離超平面距離最近的樣本點稱為支持向量,而支持向量機的目的就是求取距離這個點(下圖中帶有v字母的點,與其他實例點無關)最遠的分離超平面,這個點在確定分離超平面時起著決定性作用,所以把這種分類模型稱為支持向量機。
5、間隔問題
函數間隔
一般地,一點距離分離超平面遠近程度可以反映分類預測的準確程度,在超平面wx+b=0確定的情況下,|wx+b|能夠相對地表示點x距離超平面的遠近。而wx+b的符號與類標記y的符號是否一致能夠表示分類是否正確,所以可以用量y(wx+b)來表示分類正確性及確信度,這就是函數間隔。
通過上圖能看出|wx+b|與點到超平面的實際距離之間的區別,所以前面說到是用|wx+b|來相對地表示點x到超平面的遠近。
幾何間隔
上面的函數間隔,只要成比例的改變w和b的值,超平面不會改變,但是函數間隔卻會改變。比如把w和b均擴大一倍,則超平面依然是wx+b=0,而函數間隔則變成了2|wx+b|,(2wx+2b=w'x+b'=-2)。但是我們學習的目的是在保持在間隔不變的情況下通過求取間隔最大化對應的超平面來達到學習的目的,所以我們要保證w保持不變。這里對w做一些約束,如規范化,使得間隔是確定的,這時函數間隔就成了幾何間隔。?
函數間隔與幾何間隔的關系
03|線性可分支持向量機:
線性可分支持向量機是有一條直線(平面)可以將訓練數據集完全分離開來,而線性可分支持向量機的學習目的就是找到那一條直線。
1、算法步驟
假設現在存在這么一個超平面wx+b=0可以完全把訓練數據集分開。
思考這個超平面需要滿足什么樣的條件時才能夠將數據完全分開。
如果距離超平面最近的點都能夠被正確分類,那么其他距離較遠的點肯定都能夠被正確分類。
所以我們現在需要做的是找到距離超平面最近的樣本點(前面幾何間隔與函數間隔區別中有說)。
找到最小值以后還不夠,因為我們前面提到過,樣本點到超平面的距離越大,分類的準確性越高,所以我們要盡可能的讓步驟4求取的極小值盡可能的大。依據這個條件取求取滿足調價的最佳分割超平面。?
2、求解約束問題以及算法步驟
04|線性支持向量機:
1、基本概念
2、求解約束問題以及算法步驟
05|非線性支持向量機:
非線性支持向量機是針對非線性分類問題的一種學習方法。非線性分類問題是指無法用直線(線性模型)將正負實例正確分開,但可以用一條曲線將他們分開。
對解線性分類問題,線性分類支持向量機是一種非常有效的方法。但是有時候分類問題是非線性的,非線性分類問題是指利用非線性模型才能很好地進行分類。(前面我們已經說過線性與非線性的概念)
非線性問題一般不好求解,所以我們一般求解非線性分類問題時,將非線性問題通過非線性變換變換成線性問題。
1、非線性分類問題求解步驟
首先使用一個變換將原空間(非線性分類對應的空間)的數據映射到新空間(線性分類對應的空間),這里用到的方法就是核技巧(核函數)。
然后在新空間里面利用線性分類的方法對問題進行求解。
2、核函數定義
3、核技巧在支持向量機中的應用:
4、非線性支持向量機的算法步驟:
PS時刻:
那些數學公式輸入實在是太麻煩了,所以就用手寫了,但是很無奈字&像素渣渣,所以各位多擔待,有看不清看不懂的地方可以私聊。
總結
以上是生活随笔為你收集整理的机器学习第六篇:详解支持向量机算法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 魔兽世界怀旧服急救150后怎么提升 急救
- 下一篇: 机器学习第七篇:详解EM算法