上一節機器學習中的基本概念
1.4.3 維度災難
圖1.17 (a)均值為0、方差為1的高斯pdf,圖由gaussPlotDemo生成。(b)條件密度模型p(y | x,θ) = N(y | w+ wxσ)的可視化。當我們離開回歸線時,密度以指數速度下降。圖由linregWedgeDemo2生成。
KNN分類器結構簡單,只要有良好的距離度量和足夠的標記訓練數據,就可以很好地工作,然而,KNN分類器的主要問題是它們不能很好地處理高維輸入。
為了解釋維度災難,我們給出了一些來自(Hastie et al. 2009, p22)的例子。考慮將KNN分類器應用於輸入為均勻分布在d維單位立方體中的數據。我們通過在x周圍生長一個超立方體來估計測試點x周圍類標籤的密度,直到它包含所需的數據點的期望值達到f。此立方體的期望邊長為
如果D = 10,那麼估計基於10%的數據。
我們有e(0.1) = (0.1)' = 0.8,所以我們需要在x周圍的每個維度上擴展立方體的80%,即使我們只使用1%的數據,我們會發現e(0.01) = 0.63。如圖1.16所示。由於數據在每個維度上的範圍僅為1而我們卻需要用掉0.63,因此我們可以看到該方法不再是非常局部的。查看如此遙遠的鄰居的問題是,它們可能不能很好地預測給定點上輸入-輸出函數的行為。
1.4.4 分類和回歸的參數模型
克服維度災難的主要方法是對數據分布的性質(p(y|x)或p(x))做一些假設。這些假設被稱為歸納偏差,通常以參數模型的形式體現出來,參數模型是具有固定數量參數的統計模型。下面我們簡要描述兩個廣泛使用的例子;我們將在本書後面更深入地討論這些模型和其他模型。
1.4.5 線性回歸
圖1.18 對21個數據點進行最小二乘法擬合生成14次多項式和20次多項式。圖由linregPolyVsDegree生成
線性回歸是使用最廣泛的回歸模型之一。其響應輸出是輸入的線性函數。記為:
其中wTx表示輸入向量x與模型的權向量w之間的內積,ε是線性預測和真實響應之間的殘差。我們經常假設ε服從高斯分布或正態分布,即ε~N(μ,σ)。其中μ是均值和σ2是方差,當我們繪製這個分布時,我們得到眾所周知的鐘形曲線,如圖1.17(a)所示。
為了更清楚地說明線性回歸和高斯函數之間的關係,可以將模型改寫為以下形式:
這說明模型是一個條件概率密度函數。在最簡單的情況下,假設μ是x的線性函數,因此μ= wT x,假設噪聲也是固定的則有σ(x) =σ。在這種情況下,模型是θ = (w,σ)的參數模型。
例如,假設輸入是一維的。我們可以將預期的響應表示如下:
w為截距,w是斜率,我們已經定義了向量x= (1, х)(在對輸入向量首部插入常數1項作為截距項是一種常見的符號技術)。如果w是正的,這意味著我們期望輸出隨著輸入的增加而增加。在圖1.17(b)的1d中得到了說明;圖1.7(a)顯示了更常規的平均響應與x的關係圖。
線性回歸可以對非線性關係建模,做法是把輸入x替換成x的非線性函數φ(x)。
它被稱為基函數展開式。例如,圖1.18說明了φ(x) = [1, x, x,…xd],d = 14,和d = 20的情況;這就是所謂的多項式回歸。我們將在本書後面討論其他類型的基函數。事實上,許多流行的機器學習方法,如支持向量機、神經網絡、分類和回歸樹等,可以被看作是從數據中估計基函數的不同方法,正如我們在第14章和第16章中討論的那樣。
下一節