核函式是什麼

2022-03-01 16:42:38 字數 2686 閱讀 6814

假設函式ф是乙個從低維特徵空間到高維特徵空間的乙個對映,那麼如果存在函式k(x,z), 對於任意的低維特徵向量x和z,都有:k(x,z)=θ(x)*θ(z),稱函式k(x,z)為核函式(kernal function)a、使用低維特徵空間上的計算來避免在高維特徵空間中向量內積的恐怖計算量;

b、也就是說此時svm模型可以應用在高維特徵空間中資料可線性分割的優點,同時又避免了引入這個高維特徵空間恐怖的內積計算量。核函式是乙個低緯的計算結果,並沒有採用低緯到高維的對映。只不過核函式低緯運算的結果等價於對映到高維時向量點積的值。假設:函式ф是乙個從低維特徵空間到高維特徵空間的乙個對映,那麼如果存在函式k(x,z), 對於任意的低維特徵向量x和z,都有:

核函式稱函式k(x,z)為核函式(kernal function);

核函式在解決線性不可分問題的時候,採取的方式是:使用低維特徵空間上的計算來避免在高維特徵空間中向量內積的恐怖計算量;也就是說此時svm模型可以應用在高維特徵空間中資料可線性分割的優點,同時又避免了引入這個高維特徵空間恐怖的內積計算量。

本質:核函式是乙個低緯的計算結果,並沒有採用低緯到高維的對映。只不過核函式低緯運算的結果等價於對映到高維時向量點積的值。

公式演繹:

不妨還是從最開始的簡單例子出發,設兩個向量x1 = (μ1 + μ2)t 和x2 = (η1 + η2)t ,兩個向量的點積是五維空間的對映,因此對映過後的內積為:

高維公式

而同時我們可以發現有以下公式:

低緯公式

舉例:現有有兩個兩維的向量,進行二階多項式擴充套件,然後進行內積計算,這個時候對映高高維後計算的計算量為:11次乘法+4次加法;採用近似計算的計算量為:3次乘法+2次加法;採用加係數後的近似計算的計算量為:4次乘法+2次加法;

計算過程

幾種核函式:

線性核函式(linear kernel): 即原函式,不做對映。

線性核函式

多項式核函式(polynomial kernel):其中γ、r、d屬於超參,需要調參定義;

類似上面的函式,上面的0.8476是調參出來的結果。

多項式核函式

重點:

高斯核函式(gaussian kernel):其中γ屬於超參,要求大於0,需要調參定義;

高斯核在實際運用中特別多,不僅僅是因為需要調的引數比較少。

最重要的原因是:

在sklearn中,核函式是rbf,即radial basis functionfuntion 徑向基;其中真正用到的核函式演算法是高斯核。

ps:之前在講加權線性回歸中提過相似度的度量,其中用到的就是類似高斯核的函式。

高斯核函式

sigmoid核函式(sigmoid kernel):其中γ、r屬於超參,需要調參定義;

了解即可,這個核函式別去用它,垃圾得一塌糊塗。

sigmoid核函式

該演算法大致上就是把sigmoid函式變成了tan函式。

sigmoid核函式的幾何意義

核函式的幾何意義:

將原始資料對映到高維,然後找乙個超曲面來分割它們。差不多就是我上一章一開始畫的那個圖。

幾何意義

1、 核函式可以自定義;核函式必須是正定核函式,即gram矩陣是半正定矩陣;

gram矩陣

2、核函式的價值在於它雖然也是將特徵進行從低維到高維的轉換,但核函式它事先在低維上進行計算,而將實質上的分類效果表現在了高維上,也就如上文所說的避免了直接在高維空間中的複雜計算;

3、 通過核函式,可以將非線性可分的資料轉換為線性可分資料;

令z=x;那麼進行多維變換後,應該是同乙個向量,從而可以得到以下公式:

高斯核公式證明

了解核函式的構造方式,尤其是高斯核。

8核 6核 4核 雙核CPU是什麼意思

對於初學者來說,cpu是什麼 什麼是雙核 4核 6核 8核等。下面,就以上的問題,我們做出一一解答。概念 cpu是什麼 做什麼用 一般cpu是接在 的,我們先來看看cpu是什麼,cpu既 處理器 電腦中乙個最重要,最核心的東西,市面上能買到的cpu只有兩種,一種是intel公司生產的,另一種是amd...

SVM為什麼需要核函式

生存?還是毀滅?哈姆雷特 可分?還是不可分?支援向量機 之前一直在討論的線性分類器,器如其名 汗,這是什麼說法啊 只能對線性可分的樣本做處理。如果提供的樣本線性不可分,結果很簡單,線性分類器的求解程式會無限迴圈,永遠也解不出來。這必然使得它的適用範圍大大縮小,而它的很多優點我們實在不原意放棄,怎麼辦...

Python find 函式是什麼

碰到去檢索字串的情況,羅列自己所學的函式,雖然能夠實現,但是不是多多少少,感覺有些冗雜,不是特別簡單,如果有這樣的疑問,首先恭喜,大家思考能力很好,其次就是給大家帶來解決疑難問題的方案,這裡專門介紹find函式,可以幫助我們去檢索返回字串的值,具體內容如下。基本作用 檢索字串,並且輸出運算值 語法 ...