|
徑向基函數(shù)(RBF)在神經(jīng)網(wǎng)絡(luò)領(lǐng)域扮演著重要的角色,如RBF神經(jīng)網(wǎng)絡(luò)具有唯一最佳逼近的特性,徑向基作為核函數(shù)在SVM中能將輸入樣本映射到高維特征空間,解決一些原本線性不可分的問題。 本文主要討論: 1. 先討論核函數(shù)是如何把數(shù)據(jù)映射到高維空間的,然后引入徑向基函數(shù)作核函數(shù),并特別說明高斯徑向基函數(shù)的幾何意義,以及它作為核函數(shù)時為什么能把數(shù)據(jù)映射到無限維空間。 2.提到了徑向基函數(shù),就繼續(xù)討論下徑向基函數(shù)神經(jīng)網(wǎng)絡(luò)為什么能用來逼近。 再看這文章的時候,注意核函數(shù)是一回事,徑向基函數(shù)是另一回事。核函數(shù)表示的是高維空間里由于向量內(nèi)積而計算出來的一個函數(shù)表達(dá)式(后面將見到)。而徑向基函數(shù)是一類函數(shù),徑向基函數(shù)是一個它的值(y)只依賴于變量(x)距原點距離的函數(shù),即 為什么要將核函數(shù)和RBF神經(jīng)網(wǎng)絡(luò)放在一起,是希望學(xué)習(xí)它們的時候即能看到它們的聯(lián)系又能找到其差別。 一.由非線性映射引入核函數(shù)概念,之后介紹高斯徑向基及其幾何意義。 預(yù)先規(guī)定 下面先用一個例子說明這種映射的好處。 例:假設(shè)二維平面上有一些系列樣本點 如果設(shè)非線性映射為: 那么在映射后的 這意味著在新空間里,樣本點是分布在一條近似直線上的,而不是之前的圓,很明顯這是有利于我們的。 圖1.左圖為原來的x所在的二維空間,右圖為映射后的新的y空間 繼續(xù)這個例子,我們已經(jīng)知道了映射關(guān)系,那么在y空間中的向量內(nèi)積會是什么樣子的呢? 注意公式里的各種括號。[x]代表樣本x,圓括號(,)表示樣本的坐標(biāo),尖括號<,>代表代表向量內(nèi)積。 由此我們知道y空間里兩向量 所以總結(jié)一下核函數(shù)就是:在原樣本空間中非線性問題,我們希望通過一種映射把他映射到高維空間里使問題變得線性。然后在高維空間里使用我們的算法就能解決問題。當(dāng)然這里按照前面的推導(dǎo)我們在高維空間里的運算是以向量內(nèi)積為基礎(chǔ)的。 回顧SVM里的應(yīng)用得到的分類器表達(dá)式為: 把x經(jīng)過映射后得到的表達(dá)式為: 由此就可以看到這里有高維空間里的內(nèi)積,就能夠用核函數(shù)代替這種內(nèi)積了,而往往把高斯徑向基函數(shù)作為核函數(shù)。 高斯徑向基函數(shù)公式如下: 那么它有什么幾何意義呢。 先看看x經(jīng)過映射以后,在高維空間里這個點到原點的距離公式: 這表明樣本x映射到高維空間后, 接下來將討論核函數(shù)為什么能映射到高維空間,徑向基核又為什么能夠映射到無限維空間。 先考慮普通的多項式核函數(shù): 因此這個多項式核函數(shù)能夠?qū)懗桑?/span> 現(xiàn)在回到之前的映射 并取 這就是前面的k(x,y),因此,該核函數(shù)就將2維映射到了3維空間。 看完了普通核函數(shù)由2維向3維的映射,再來看看高斯徑向基函數(shù)會把2維平面上一點映射到多少維。 呃,看看它的泰勒展開式你就會恍然大悟: 這個時候
二、RBF神經(jīng)網(wǎng)絡(luò) 最基本的徑向基函數(shù)(RBF)神經(jīng)網(wǎng)絡(luò)的構(gòu)成包括三層,其中每一層都有著完全不同的作用。輸入層由一些感知單元組成,它們將網(wǎng)絡(luò)與外界環(huán)境連接起來;第二層是網(wǎng)絡(luò)中僅有的一個隱層,它的作用是從輸入空間到隱層空間之間進(jìn)行非線性變換,在大多數(shù)情況下,隱層空間有較高的維數(shù);輸出層是線性的,它為作用于輸入層的激活模式提供響應(yīng)。 函數(shù)逼近的形式: 個人覺得,隱含層的每個節(jié)點就是就是空間中的一個基底,經(jīng)過線性組合加權(quán)以后就變成了輸出。這種理解是通過逼近理論來理解的。
這里的多項式P就是由基底 隱含層每個節(jié)點對應(yīng)的響應(yīng)輸出就像 第二角度理解: 不知大家是否熟悉混合高斯模型,這里的逼近有點像混合高斯模型。也就是每個高斯函數(shù)在自己的中心附近作出突出貢獻(xiàn)。 在這里推介zouxy09的博文《徑向基網(wǎng)絡(luò)(RBF network)之BP監(jiān)督訓(xùn)練》,他的文章演示的比較清楚。我摘抄如下: 當(dāng)年徑向基函數(shù)的誕生主要是為了解決多變量插值的問題。可以看下面的圖。具體的話是先在每個樣本上面放一個基函數(shù),圖中每個藍(lán)色的點是一個樣本,然后中間那個圖中綠色虛線對應(yīng)的,就表示的是每個訓(xùn)練樣本對應(yīng)一個高斯函數(shù)(高斯函數(shù)中心就是樣本點)。然后假設(shè)真實的擬合這些訓(xùn)練數(shù)據(jù)的曲線是藍(lán)色的那根(最右邊的圖),如果我們有一個新的數(shù)據(jù)x1,我們想知道它對應(yīng)的f(x1)是多少,也就是a點的縱坐標(biāo)是多少。那么由圖可以看到,a點的縱坐標(biāo)等于b點的縱坐標(biāo)加上c點的縱坐標(biāo)。而b的縱坐標(biāo)是第一個樣本點的高斯函數(shù)的值乘以一個大點權(quán)值得到的,c的縱坐標(biāo)是第二個樣本點的高斯函數(shù)的值乘以另一個小點的權(quán)值得到。而其他樣本點的權(quán)值全是0,因為我們要插值的點x1在第一和第二個樣本點之間,遠(yuǎn)離其他的樣本點,那么插值影響最大的就是離得近的點,離的遠(yuǎn)的就沒什么貢獻(xiàn)了。所以x1點的函數(shù)值由附近的b和c兩個點就可以確定了。拓展到任意的新的x,這些紅色的高斯函數(shù)乘以一個權(quán)值后再在對應(yīng)的x地方加起來,就可以完美的擬合真實的函數(shù)曲線了。 我個人比較傾向徑向基神經(jīng)網(wǎng)絡(luò)是把輸入的樣本映射到了另一個空間,在另一個空間經(jīng)過線性組合后形成輸出,得到逼近的結(jié)果,這種理解也有利于去窺探神經(jīng)網(wǎng)絡(luò)的本質(zhì)。個人愚見,有錯請指出。
(轉(zhuǎn)載請注明作者和出處:http://blog.csdn.net/heyijia0327 未經(jīng)允許請勿用于商業(yè)用途)
reference: 1.Michael Eigensatz《Insights into the Geometry of the Gaussian Kernel and an Application in Geometric Modeling》 2.Quora 上的問題 Why does the RBF (radial basis function) kernel map into infinite dimensional space? 3.zouxy09 博文《徑向基網(wǎng)絡(luò)(RBF network)之BP監(jiān)督訓(xùn)練》 4.如果想學(xué)SVM, JerryLead 的 《支持向量機(jī)》系列 當(dāng)然不能漏掉. 5.男神 Andrew Ng 的講義是師祖. |
|
|