1. 程式人生 > >機器學習中核心的祕密:著名案例教你構建它!

機器學習中核心的祕密:著名案例教你構建它!

全文共1576字,預計學習時長3分鐘

核心是對映空間中兩個向量之間的相似性度量(關於核心的詳細情況,請參考文末連結)。本文將帶你瞭解一些有名的核心,以及如何組合它們生成其他核心。

注意:在本文的例子中,為達到繪圖目的,x’是一維的向量,並且把x ’的值固定為2。

線性核

這個核心的超引數是標準差和偏移量引數c。直觀地講,這個核心是什麼意思?如果取一個特定的x並將它與所有其他的x’進行比較,會得到一條直線。這就是為什麼它被稱為線性核。固定x和變數x’表示正沿著直線移動。

它另一個特點是非平穩,指它的值是關於x’的絕對位置而不是相對位置變化的。另一個好處是由於它是線性的,所以在優化中能很有效進行計算。

多項式核

正如名稱所示,這個核心是一個多項式函式和offset c。這值得花一點時間並思考形成這個核心的對映函式ϕ,如果記得核心是對映空間中的一個相似度函式(數量積)——所以它返回了一個標量。2等多項式核的對映函式在二維空間中是這樣的:

當增加輸入維數d和多項式次數時,對映得到的特徵空間會變得很大。好處是可以計算數量積而不需要做變換,如上面的公式所示。這是眾多核心理論的公示之一。

徑向基函式核

這是一個很有名且經常使用的核心。由於指數中的負指數,指數的取值範圍從0到1。因為可以說,1表示很相近或相同,接近0表示完全不同,這是一個很好的特徵。σ引數指數控制核心的靈敏度。對於低的σ,只有真正接近的點才是相近的。為了一個更大的σ要放鬆相似性的標準,因為一個距離更遠的點會更相近。

當然,核心這樣是因為x被固定在0和變數x’上,邏輯上足夠去計算在整個x區域點之間的相似性。這暗示了一個平面,實際上這個平面就是核心含義的例子:

不盡人意的是,核心的值在對角線處最高,在這裡x 和x '是一樣的。

週期核

當考慮週期性時,自然會想到周期函式,比如正弦和餘弦。邏輯上來說,週期核有正弦函式。核心的超引數同樣是特定相似性的靈敏度σ,但除此之外,有特定正弦函數週期的引數p。這完全有道理。另外,注意徑向基核和週期核之間的相似性,它們都被限制輸出值在0和1之間。

 

什麼時候想要使用週期核呢?這是很有邏輯的,假設想要建一個正弦函式。只從這個函式中取兩個關於歐氏距離較遠的點,並不意味著函式的值意義不同。為了解決這類問題,需要週期核。為了完整起見,看看當調整週期核的週期性時會發生什麼(沒有什麼意外):

區域性週期核

得到這個核心的方法基本上就是用徑向基核乘以週期核。結果是,得到的核心值還會隨著x和x '之間的距離而變化,而不僅僅是隨著距離的週期性變化。這導致了所謂的區域性週期性。

 

用3D來繪製這個核心,得到了如下特別的形狀:

看起來很酷!

構建新核心

現在已經看到了一些核心的例子。問題是需要什麼來構建新的核心呢?核心有兩大特徵:

1. 新增含有核心的核心將生成一個新的核心。

2. 核心相乘會產生一個新的核心。

這些能基本構建有意義的核心,本身不需要太多數學運算,而且非常直觀。乘法可以看作是一個and運算,特別是考慮到核心在0和1之間。因此,將週期核與徑向基函式核相結合,可以得到區域性週期核。

這些例子可以幫助開始探索核心。當然,這只是剛剛觸及到所有有趣核心的表面部分。針對問題進行的核心設計是一個重要的任務。要做好這件事需要一定的經驗。此外,機器學習中還有一個專門研究核心函式的領域。

由於演算法的要求,核心設計也會很棘手。因為許多基於核心的演算法都涉及到Gram矩陣倒置,所以要求核心是正定的。

參考:《機器學習的核心祕密》

傳送門:https://towardsdatascience.com/kernel-secrets-in-machine-learning-2aab4c8a295f

ç®—æ³•çš„å…¬å¹³æ€§ä¹Ÿå¯ä»¥é‡åŒ–ï¼Ÿè¯•è¯•è¿™ä¸‰ä¸ªæŒ‡æ ‡å§

留言 點贊 關注

我們一起分享AI學習與發展的乾貨
歡迎關注全平臺AI垂類自媒體 “讀芯術”

(新增小編微信:dxsxbb,加入讀者圈,一起討論最新鮮的人工