【數之道26】SVM支持向量機-核技巧Kernel Trick詳解(多項式核函數

【數之道】SVM第三節(jié):升維轉換和核技巧

如何求解新維度下的T(xi)*T(xj)呢?
法一:定義相應的維度轉換函數T,對數據完成維度轉換后再求新維度向量的點積
法二:直接套用核函數Kernel Function

用一個簡單的例子比較一下法一和法二:

其中,法二的核函數是多項式核函數。
多項式核函數的一般表達式為:

其中,不同cd的組合能夠控制轉換后的維度數和空間相似度,進而影響最終的決策超平面結果。因此選擇合適的參數組合也十分重要。如何選擇合適參數會在【樹之道】SVM后兩節(jié)詳細闡述。
多項式核函數中的常數項參數c有著重要作用,其存在使得點積結果的表達式中包含了從低次項到高次項的數據組合,體現出維度的多樣性。
假如缺少常數項參數的話,表達式中只會包括高次項,對于這類無常數項參數c的多項式核函數來說,我們也可以將多個不同次的多項式核函數相加組合,使結果同時具有高低次項,以此豐富維度的多樣性:

了解這一點對后續(xù)理解高斯核函數有很大幫助。
cd確定后轉換后的維度數就確定了 ?,F在將新維度數變得無窮大,包含低次到無限高次全部的可能性組合,在這個無限維度空間中求解決策超平面。
為了解決這個問題,之前的法一是不可行的,無限維度意味著無限的新維度數據,需要先定義存儲再計算,這在技術上不可實現。所以只有依靠法二的核函數法。

最重要的核函數之一是“高斯核函數”,也叫Radial Basis Kernel,簡稱RBF核函數:

高斯核函數的值反映了兩向量的相似度大小。由一個大于0的參數gamma和兩向量坐標點間的距離共同決定。下面的圖像反應了向量相似度與兩點距離的關系:

當γ值確定時,兩點距離越大,其相似度越向0靠近;距離越小,相似度越向1接近。gamma值越小,圖像越扁平,反之越尖窄。扁平或尖窄決定了高斯核函數對相似度的判斷標準。γ值越小,圖像越扁平,距離即使較遠,仍能有較明顯的相似度值。而當γ值變大,同樣的距離,相似度值反而可能趨于0:

反映到算法中,它意味著在小γ值的情況下,數據點間的相似度被放大了。這能讓數據點更容易被簡單超平面劃分。而在大γ值的情況下,除了距離非常近的數據點以外,其余數據點均與其它點缺乏相似性。在計算分隔超平面的過程中,需要考慮到這些點各自的空間特征,所以也較容易出現過擬合的問題。
不同γ值繪制出的SVM分類效果圖如下:

如何選擇合適的γ值將在SVM系列的最后一節(jié)進行講解。這里為了計算方便,取γ值為1/2。
現在對高斯核函數做如下推導:

推導完成后,可以把前半部分看成常數C,后半部分是e為底的指數函數。
將兩向量的點積結果看作一個整體,再使用泰勒級數展開得到下面的表達式:

這個表達式我們就很熟悉了,它代表了無窮多個不帶常數項參數C的多項式核函數從低次 到無窮高次排列,根據不同階乘系數調整后再相加。
根據之前的敘述,該結果能體現無限維度數據高低次項組合無限多樣性的特點。這樣我們在不實質性涉及無限維度的情況下得到了無限維度下向量相似度的結果。高斯核函數也因此非常重要且實用。對于SVM非線性分類問題,可以直接使用高斯核函數。