深入淺出核函式
前言
支援向量機是最重要的機器學習演算法之一,支援向量機的一個重要特點是通過核函式進行非線性分類。本文深度剖析了核函式的含義,並從該角度去理解線性迴歸和非線性分類的問題。
目錄
1、線性迴歸的核函式表示
2、核函式含義解析
3、核函式含義理解線性迴歸
4、核函式含義理解非線性分類
5、核函式的應用範圍
6、總結
1、線性迴歸的核函式表示
我們先通過構建最優線性迴歸模型來引出核函式的表示式。
總結:
(1)1.5式就是傳說中的核函式方程,核函式方程的展開式有很多種情況,這一節的核函式方程展開式是基函式向量的內積。
(2)1.4式是線性迴歸的核函式對偶形式,對偶形式都會包含下面這項:
2、核函式含義解析
我們用1.5式和1.6式來解析核函式的含義。
1.5式和1.6式結合,得:
上式表示,先對輸入變數對映為特徵空間,然後在該特徵空間下內積。
現在,我們考慮三種常用的基函式,分別為多項式基函式,高斯基函式,S型基函式。
令輸入變數x'為常數,x'的值用紅色叉號表示,可以畫出x與k(x,x')的關係曲線:
圖的第一行為基函式曲線,第二行為x與核函式k(x,x')的曲線。
由上圖可知,核函式k(x,x')取得最大值的必要條件是x=x',核函式值的大小可以表示兩個輸入變數x和x'的相似度。舉例說明這一含義:
如上圖第二列,歸一化的正態分佈在x=0具有最大概率,當兩個輸入變數值都是0時,核函式具有最大值,它們的相似度最高。
如上圖第三列,S型函式值表示P(y=1|x)的概率,當兩個輸入變數都是1時,核函式具有最大值,它們的相似度最高。
因此,核函式的含義可以用相似度來解釋,若兩個輸入變數的特徵空間都較大,則兩個輸入變數在該核函式下具有較高的相似度。
3、核函式含義理解線性迴歸
為了閱讀方便,1.4式預測目標表達式:
結論
線性迴歸可以理解成訓練目標值的權值相加,權值與核函式成正比,若輸入特徵與某一訓練樣本的特徵相似度越高,相應的核函式越大,則對應的權值就越大,該訓練樣本的目標變數對預測目標變數的影響亦越大。
4、核函式含義理解非線性分類
解決如下圖的二分類問題,不同形狀表示不同的類。
(1)顯示對映法
分類效果圖如下:
(2)核函式法
我們知道核函式的含義是相似度,我們考慮用高斯核函式進行分類,高斯核函式用樣本的相對距離來表示相似度,若相對距離越小,則相似度越大,反之相似度越小。
首先用核函式將低維對映成高維空間,然後用線性支援向量機的方法進行分類(後續文章會詳細講支援向量機演算法)。
請用核函式法
第二節用顯示對映函式的方法說明了核函式的含義,這一節用該方法求決策函式,但是這種方法難點在於定義顯示對映函式,而核函式法是隱式的對映特徵空間且核函式法計算k(x,x')比較容易,因此推薦核函式法作特徵的多維對映。
核函式的應用範圍
這一節用一句話來概括:凡是有特徵內積出現的式子都可以用核函式來代替。
如下圖:
左邊為核函式,右邊為內積。
總結
本文詳細的解釋了核函式的含義——相似度,然後從核函式的角度去理解線性迴歸和非線性分類,核函式是隱式的特徵空間對映,不需要定義特徵對映函式。特徵內積出現的式子都可以用核函式來代替,因此,核函式在支援向量機的非線性分類具有不可替代的作用。
參考
李航 《統計學習方法》
Christopher M.Bishop <<Pattern Reconition and Machine Learning>>
推薦閱讀文章
深入理解線性迴歸演算法(一)
線性分類模型(一):淺談判別模型分析