核函數
核函數
支持向量機通過某種非線性變換 φ( x) ,將輸入空間映射到高維特徵空間。特徵空間的維數可能非常高。如果支持向量機的求解只用到內積運算,而在低維輸入空間又存在某個函數 K(x, x′) ,它恰好等於在高維空間中這個內積,即K( x, x′) =<φ( x) ⋅φ( x′) > 。那麼支持向量機就不用計算複雜的非線性變換,而由這個函數 K(x, x′) 直接得到非線性變換的內積大大大簡化了計算。這樣的函數 K(x, x′) 稱為核函數。
早在1964年Aizermann等在勢函數方法的研究中就將該技術引入到機器學習領域,但是直到1992年Vapnik等利用該技術成功地將線性SVMs推廣到非線性SVMs時其潛力才得以充分挖掘。而核函數的理論則更為古老,Mercer定理可以追溯到1909年,再生核希爾伯特空間(ReproducingKernel Hilbert Space, RKHS)研究是在20世紀40年代開始的。
核函數包括線性核函數、多項式核函數、高斯核函數等,其中高斯核函數最常用,可以將數據映射到無窮維,也叫做徑向基函數(Radial Basis Function 簡稱 RBF),是某種沿徑向對稱的標量函數。通常定義為空間中任一點x到某一中心xc之間歐氏距離的單調函數,可記作 k(||x-xc||),其作用往往是局部的,即當x遠離xc時函數取值很小。
核函數的選擇要求滿足Mercer定理(Mercer's theorem),即核函數在樣本空間內的任意格拉姆矩陣(Gram matrix)為半正定矩陣(semi-positive definite)。常用的核函數有:線性核函數,多項式核函數,徑向基核函數,Sigmoid核函數和複合核函數,傅立葉級數核,B樣條核函數和張量積核函數等。
平穩和各向同性核函數
具有平穩性(stationarity)的核函數僅是特徵空間下樣本間向量的函數,對指數集的平移變換保持不變(translation invariant)。若樣本的協方差與其向量的方向無關,即僅與距離有關,則可使用具有各向同性(isotropy)的核函數。很多核函數同時滿足平穩性和各向同性,這裡給出其常見例子:
1. 徑向基函數核(RBF kernel)
式中,為RBF核的超參數,定義了學習樣本間相似性的特徵長度尺度(characteristic length-scale),即權重空間視角下特徵空間映射前後樣本間距離的比例。
2. 馬頓核(Matérn kernel)
式中為核函數的超參數,為修正貝塞爾函數(modified Bessel function)。由修正貝塞爾函數的定義可知,馬頓核是指數函數與多項式函數的乘積,其可導性,或平滑程度與有關,的常見選擇為1.5和2.5。當時,馬頓核等價於以為特徵尺度的RBF核。
3. 指數函數核(exponential kernel)
指數函數核是馬頓核在的特殊形式,通常對應奧恩斯坦-烏倫貝克過程(Ornstein-Uhlenbeck Process, OU)。OU過程是一個連續但不平滑(均方不可導)的隨機過程。其對應的數學模型是維納過程(Wiener process)下質點運動的速度。
4. 二次有理函數核(rational quadratic kernel, RQ kernel)
式中為超參數。可以證明,RQ核是無窮個RBF核的線性疊加,當趨於無窮時,RQ核等價於以為特徵尺度的RBF核。
其它
1. 周期核函數(periodickernel)
平穩核函數可以用於構建周期核函數:式中,表示該核函數具有的周期,例如由RBF核得到的周期核的形式為:。
2. 內積核函數(dot product kernel)
內積核函數也被稱為多項式核函數,其形式為:,式中表示多項式的階數。
3. 各向異性核函數
對各向同性核函數,定義可將各向同性核函數轉化為各向異性核函數,式中是表徵各向異性的函數,其格拉姆矩陣的對角元素表示對不同維度所取的不同尺度。
根據模式識別理論,低維空間線性不可分的模式通過非線性映射到高維特徵空間則可能實現線性可分,但是如果直接採用這種技術在高維空間進行分類或回歸,則存在確定非線性映射函數的形式和參數、特徵空間維數等問題,而最大的障礙則是在高維特徵空間運算時存在的“維數災難”。採用核函數技術可以有效地解決這樣問題。
設x,z∈X,X屬於R(n)空間,非線性函數Φ實現輸入空間X到特徵空間F的映射,其中F屬於R(m),n<
K(x,z) =<Φ(x),Φ(z) > (1)
其中:<, >為內積,K(x,z)為核函數。從式(1)可以看出,核函數將m維高維空間的內積運算轉化為n維低維輸入空間的核函數計算,從而巧妙地解決了在高維特徵空間中計算的“維數災難”等問題,從而為在高維特徵空間解決複雜的分類或回歸問題奠定了理論基礎。
函數具有以下性質:
(1)核函數的引入避免了“維數災難”,大大減小了計算量。而輸入空間的維數n對核函數矩陣無影響,因此,核函數方法可以有效處理高維輸入。
(2)無需知道非線性變換函數Φ的形式和參數.
(3)核函數的形式和參數的變化會隱式地改變從輸入空間到特徵空間的映射,進而對特徵空間的性質產生影響,最終改變各種核函數方法的性能。
(4)核函數方法可以和不同的演演算法相結合,形成多種不同的基於核函數技術的方法,且這兩部分的設計可以單獨進行,並可以為不同的應用選擇不同的核函數和演演算法。
目錄