用線性分類的方法求解非線性分類問題分為兩步:
首先使用乙個變換將原空間的資料對映到新空間;
然後在新空間裡利用線性分類學習方法從訓練資料中學習分類模型。核技巧就是這種方法。
核技巧應用到svm,基本想法是通過乙個非線性變換將輸入空間對應於乙個特徵空間,使得在輸入空間中的超曲面模型對應於特徵空間中的超平面模型(svm)。這樣,分類問題的學習任務通過在特徵空間中求解線性svm就可以完成。
k (x
,z)=
ϕ(x)
⋅ϕ(z
)k(x,z)=\phi(x)\cdot \phi(z)
k(x,z)
=ϕ(x
)⋅ϕ(
z)稱k (x
,z)k(x,z)
k(x,z)
為核函式,ϕ(x
)\phi(x)
ϕ(x)
為對映函式。
核技巧的想法是,在學習和**中只定義核函式k(x
,z)k(x,z)
k(x,z)
,而不顯式地定義對映函式ϕ
\phi
ϕ。通常,直接計算k(x
,z)k(x,z)
k(x,z)
比較容易。
i ⋅x
jx_i\cdot x_j
xi⋅xj
可以用和函式k(x
i,xj
)=ϕ(
xi)⋅
ϕ(xj
)k(x_i,x_j)=\phi(x_i)\cdot\phi(x_j)
k(xi,
xj)
=ϕ(x
i)⋅
ϕ(xj
)代替。目標函式變為
w (a
)=12
∑i=1
n∑j=
1nai
ajyi
yjk(
xi,x
j)−∑
i=1n
aiw(a)=\frac\sum\limits_^n\sum\limits_^na_ia_jy_iy_jk(x_i,x_j)-\sum\limits_^na_i
w(a)=2
1i=
1∑n
j=1∑
nai
aj
yiy
jk(
xi,
xj)
−i=1
∑na
i分類決策函式成為
f (x
)=si
gn(∑
i=1n
ai∗y
ik(x
i,x)
+b∗)
f(x)=sign(\sum\limits_^na_i^*y_ik(x_i,x)+b^*)
f(x)=s
ign(
i=1∑
nai
∗yi
k(x
i,x
)+b∗
)當對映函式是非線性函式時,學習到的含有核函式的svm就是非線性分類模型。
在核函式給定的條件下,可以利用解線性分類的方法求解非線性分類問題的svm。學習是隱式地在特徵空間中進行的,不需要顯式地定義特徵空間和對映函式。
d對應的svm是乙個d次多項式分類器。
k (x
,z)=
exp(
−γ∣∣
x−z∣
∣22σ
2)k(x,z)=exp(-\frac)
k(x,z)
=exp
(−2σ
2γ∣∣
x−z∣
∣2)
對應的svm是高斯徑向基函式(radial basis function)分類器。
γ
\gamma
γ定義了了當個樣本對整體分類超平面的影響,當γ
\gamma
γ比較小時,單個樣本對整個分類超平面的影響比較大,更容易被選擇為支援向量。
如果把懲罰係數c和rbf核的γ
\gamma
γ一起看,當c比較大,γ
\gamma
γ比較小時,會有更多支援向量,模型比較複雜。
)核函式不僅可以定義在歐式空間上,還可以定義在離散資料的集合上。
《統計學習方法》第7章機器學習 小象學院
非線性支援向量機與核函式
對於求解線性分類問題,線性支援向量機是一種非常有效的方法。而對於非線性分類問題,就需要借助核函式將非線性問題變換成線性問題,然後再進一步求解。所以,今天我們來認識一下什麼是核函式。1.非線性分類問題 非線性分類問題是指通過利用非線性模型才能很好地進行分類的問題。對於下面左圖,是用一條橢圓曲線 非線性...
SVM 支援向量機學習(6) 非線性SVM和核函式
對於線性可分問題和線性問題,都已經有很好的解決方案為了。對於非線性問題,產生了非線性svm,關鍵在於核技巧 kernel trick 的引用。如圖,對於正負樣本無法用直線分開。採用橢圓這樣的非線性模型才可正確分開。對於t,若可用r中的乙個超曲面正確分開,則稱該問題為非線性的可分問題。如圖的橢圓方程為...
SVM常用核函式
以下是幾種常用的核函式表示 線性核 linear kernel 多項式核 polynomial kernel 徑向基核函式 radial basis function 也叫高斯核 gaussian kernel 因為可以看成如下核函式的領乙個種形式 徑向基函式是指取值僅僅依賴於特定點距離的實值函式,...