1. 程式人生 > >數據挖掘筆試面試(13)

數據挖掘筆試面試(13)

nic 簡化 tis con cos 常見面試題 tao 規劃 inf

【校招面經】機器學習與數據挖掘常見面試題整理 part9

2018年08月04日 22:10:31 稻蛙 閱讀數:203

八十、SVM的核函數

from:https://blog.csdn.net/lihaitao000/article/details/51173459

SVM核函數包括線性核函數、多項式核函數、徑向基核函數、高斯核函數、冪指數核函數、拉普拉斯核函數、ANOVA核函數、二次有理核函數、多元二次核函數、逆多元二次核函數以及Sigmoid核函數. 核函數的定義並不困難,根據泛函的有關理論,只要一種函數 K ( x i , x j ) 滿足Mercer條件,它就對應某一變換空間的內積.對於判斷哪些函數是核函數到目前為止也取得了重要的突破,得到Mercer定理和以下常用的核函數類型: (1)線性核函數 K ( x , x i ) = x ⋅ x i (2)多項式核 K ( x , x i ) = ( ( x ⋅ x i ) + 1 ) d (3)徑向基核(RBF) K ( x , x i ) = exp ( − ∥ x − x i ∥ 2 σ 2 ) Gauss徑向基函數則是局部性強的核函數,其外推能力隨著參數 σ 的增大而減弱。多項式形式的核函數具有良好的全局性質。局部性較差。 (4)傅裏葉核 K ( x , x i ) = 1 − q 2 2 ( 1 − 2 q cos ( x − x i ) + q 2 ) (5)樣條核 K ( x , x i ) = B 2 n + 1 ( x − x i ) (6)Sigmoid核函數 K ( x , x i ) = tanh ( κ ( x , x i ) − δ ) 采用Sigmoid函數作為核函數時,支持向量機實現的就是一種多層感知器神經網絡,應用SVM方法,隱含層節點數目(它確定神經網絡的結構)、隱含層節點對輸入節點的權值都是在設計(訓練)的過程中自動確定的。而且支持向量機的理論基礎決定了它最終求得的是全局最優值而不是局部最小值,也保證了它對於未知樣本的良好泛化能力而不會出現過學習現象。 核函數的選擇 在選取核函數解決實際問題時,通常采用的方法有: 一是利用專家的先驗知識預先選定核函數; 二是采用Cross-Validation方法,即在進行核函數選取時,分別試用不同的核函數,歸納誤差最小的核函數就是最好的核函數.如針對傅立葉核、RBF核,結合信號處理問題中的函數回歸問題,通過仿真實驗,對比分析了在相同數據條件下,采用傅立葉核的SVM要比采用RBF核的SVM誤差小很多. 三是采用由Smits等人提出的混合核函數方法,該方法較之前兩者是目前選取核函數的主流方法,也是關於如何構造核函數的又一開創性的工作.將不同的核函數結合起來後會有更好的特性,這是混合核函數方法的基本思想

八十一、SVM-點到超平面的距離

from:https://blog.csdn.net/denghecsdn/article/details/77313758

前提知識:已知法線的情況下,求點到平面的距離:

d=| ( n*PA) / n | (n為法向量,P為該點,A為平面內任意一點)

n*PA是向量的點乘

—————————————————————————————

樣本空間中的任意一點 x,到超平面(w,b)的距離,可以表示為

技術分享圖片

後來有同學評論說,點到超平面上的點為什麽這麽計算呢?我在這裏再具體說一下。推導過程並不繁瑣(這裏以三維空間為例)。

對於超平面A

技術分享圖片

,假設 x‘ 為超平面上任意一點,那麽,顯然滿足:

技術分享圖片

對於空間上任意一點 x, 到平面 A 的距離 H,等於 x 到超平面的法向量長度,也就是 向量 xx‘ 在垂直方向上(即法向量)上的投影。而計算投影,將 xx‘ 乘以法向量 w 即可。並且,我們不光要投影,還要計算單位,即使用單位為 1 的投影。也就是在分母除以 || w ||。所以,距離 H 可以表示為:

技術分享圖片

又因為:

技術分享圖片

所以,距離為:

技術分享圖片

八十二、SVM中,高斯核為什麽會把原始維度映射到無窮多維?

from:https://blog.csdn.net/u013382288/article/details/80978456

1)先將高斯函數泰勒展開

技術分享圖片

2)將x和x‘分離,發現它們長得一樣

3)高斯函數裏藏著無限多維的轉換

技術分享圖片

八十三、SVM中的C和gamma

from:https://blog.csdn.net/u013382288/article/details/80978456

技術分享圖片

1. C

1)C越大,越不能容忍分類誤差樣本存在,也就是hard-margin SVM,容易出現曲線邊,容易過擬合

2)C越小,不關心分類是否正確,而關心間隔是否夠大,容易欠擬合

2. gamma:gamma是選擇RBF函數作為kernel後,該函數自帶的一個參數。隱含地決定了數據映射到新的特征空間後的分布,

1)gamma越大,支持向量越少,容易欠擬合

2)gamma值越小,支持向量越多,容易過擬合

支持向量的個數影響訓練與預測的速度

八十四、SVM的原問題和對偶問題

from:https://blog.csdn.net/diligent_321/article/details/53396682

SVM原問題

  SVM的幾何意義是尋找一個最優分隔超平面,使其能把數據空間的兩類點分開。記超平面方程為wTx+b=0,任意一點xi到超平面的距離公式為

di=|wTxi+b|||w||

  所以,目標函數為

maxw,bmini∈{1,...,N}|wTxi+b|||w||

  約束條件為

yi(wTxi+b)>0,i∈{1,...,N}

  ,這樣便可以保證所有點都被正確分類。

  觀察上述規劃問題可知,將w, b同時放大或者縮小相同的倍數,不影響結果,即w, b存在多組解。為了得到唯一的一組w, b, 不妨令“函數間隔”為1,即令樣本集滿足

mini∈{1,...,N}|wTxi+b|=1

  ,那麽可以轉化為新問題如下,

maxw,b1||w||=minw,b12||w||2s,t yi(wTxi+b)≥1,i∈{1,...,N}

SVM對偶問題

  對於SVM而言,原問題

minwθp(w)=minwmaxα,β,αi≥0L(w,α,β)

  不易求解,但由於原問題為二次規劃問題,滿足“strong duality”關系,故可解其對偶問題。

maxα,β,αi≥0minwL(w,α,β)=maxα,αi≥0minw,b{12||w||2−∑i=1Nαi[yi(wTxi+b)−1]}

  求解偏導數得

∂L(w,α)∂w=w−∑i=1Nαiyixi∂L(w,α)∂b=−∑i=1Nαiyi

  ,若令∂L(w,α)∂w=0,∂L(w,α)∂b=0,則可解之得

w∗=∑i=1Nαiyixi, ∑i=1Nαiyi=0

  ,於是,對偶問題轉化為

maxα{∑i=1Nαi−12∑i,j=1Ny(i)y(j)αiαj<x(i),x(j)>}s,t αi≥0, i∈{1,...,N}∑i=1Nαiyi=0

  ,求解出α,則w∗,b∗也就得到了。決策方程可以表示為

(w∗)Tx+b=(∑i=1Nαiyixi)Tx+b=∑i=1Nαiyi<xi,x>+b

  ,上式中,看上去是對所有訓練樣例和測試樣例做內積,計算量大,其實不然,從KKT條件可知,對偶問題解出的α參數,僅support vectors的αi非零,其余全0。

  此外,引入對偶問題,除了簡化“無約束”最優化過程外,還為核函數做了鋪墊,而kernel function可以將原始樣本映射到高維空間,使其變得“更有可能線性可分”(根據常識,數據越稀疏越可分)

數據挖掘筆試面試(13)