機器學習基石(林軒田)筆記之十二__機器學習
來源:互聯網
上載者:User
Nonlinear Transformation(非線性轉換)
回顧 在第十一講中我們介紹了如何通過(logistic)迴歸來處理二分類問題,以及如何通過OVA/OVO分解來解決多分類問題。
Quadratic Hypotheses 二次假設空間 線性假設空間極其缺點:
截止目前為止,我們所介紹的機器學習模型都為線性模型,即假設空間是線性。線性模型中使用的記分函數為線性分數。線性模型的優點為在理論上可以使用VC維保證。但是,當資料集為線性不可分的時候,如上圖右,則會很難找到一條直線將兩種類型完全分離,即很大。下面我們討論如何打破這種限制。 圓形可分情況:
觀察上圖左圖,資料集為線性不可分,但是觀察上圖右圖,發現一個圓形可以很好地將兩類資料分開,我們稱這種情況為圓形可分(circular separable)。
以上資料集使用一個半徑為的圓形可以很好地劃分兩類資料,假設函數如上圖所示:將樣本點到遠點的距離的平方與0.6作比較,小於0.6位+1,大於0.6為-1. 下面我們據此提出新的演算法模型。 首先,我們將上面得到的圓形可分模型分解成我們所熟悉的線性模型的形式:
上圖中,我們將圓形可分的資料集轉換成線性可分的資料集。我們將這種將輸入空間轉換成的過程稱之為(非線性)特徵轉換。
那麼,在新的資料集上線性可分是否就能推出在原資料及上圓形可分呢。 首先,我們要搞清,為何經過特徵轉換之後新的資料集就線性可分了。
上圖中1式為新資料集z與未經處理資料集x的對應關係,2式為新假設函數與原始假設函數之間的對應關係。下面我們觀察權重取不同值時,未經處理資料集上對應的假設函數的區別:
可以得出:通過此種轉換,新的資料集上的線性模型與未經處理資料集上的二次曲線所對應。 如果想表示未經處理資料集上的所有曲線,則需要將新的空間轉換成一個更大的空間,如下圖:
通過上面的特徵轉換之後,我們將未經處理資料集上的所有二次曲線對應到行的資料集上的超平面:
Nonlinear Transform 非線性轉換 好的二次假設空間: 在從x資料集轉換而來的z資料集上得到好的線性模型對應在x資料集上得到一個好的二次曲線模型,則為一個好的二次假設空間。如下圖:
我們使用之前學過的線性模型對特徵轉換後的新資料集進行學習找到最好的假設函數,則可以得到x空間上的最好的假設函數:
非線性轉換步驟:
1.通過特徵轉換將未經處理資料集x轉換到新的資料集z; 2.使用線性模型對新的資料集z進行分類,並且擷取最優的權重向量值; 3.返回未經處理資料集x,將線性模型轉換成其對應的二次曲線。 流程圖如下:
理解:判斷樣本點屬於哪個類的步驟如上圖下兩幅圖,需要先從左往右,將未經處理資料集x轉成新的資料集z,再根據z上得到的線性模型判斷出新的樣本點屬於哪一類,最終再與未經處理資料集對應,從而得到樣本點在未經處理資料集x上額類別。 總結:
非線性模型=特徵轉換+線性模型。 以上非線性模型的求解可以擴充到三次感知、三次迴歸...問題上。
Price of Nonlinear Transform 非線性轉換的代價 Q次多項式轉換
此時權重向量的維數分析如下圖: 此時的權重向量的維數為1+,1對應,對應新的資料集Z上對應的線性模型的權重。從n個不同的元素中無序可重複的抽取其中k個元素,則有種取法。則在求取的維度時,給定元素為,此外還有一個1元素。因此,在求的維度時,相當於是在d+1個元素中重複的抽取Q個元素,維度為:,進一步表示為:。因此,不論是特徵轉換還是得湖實驗都消耗了更高的時間和空間複雜度,當Q很大時,模型的計算變得相當的複雜。 另外:由之前的知識可知,模型參數的自由度與模型的VC維近似,如下圖:
因此,當Q很大時,很大。 當我們用來近似時,當很小的時候,可以滿足,但是不滿足,在變小的時候,假設函數變小,演算法的選擇變小,可能無法判斷到的假設。 當很小的時候,不可以滿足,不好得情況出現的幾率增大,但是滿足,在變大的時候,假設函數變大,演算法的選擇變大,的假設幾率變大。
進一步表述為下圖: 左圖表示使用原始的線性模型,右圖表示一個四次函數的劃分,視覺上得到右圖中的,但是可能出現過擬合,從而導致,不滿足。
Structured Hypothesis Sets 結構化假設空間 不同維度假設空間:
由上可得:
進而:
維度越高自然越小,其中VC維與錯誤率的關係圖如上圖所示。 結論:如果選擇高次多項式,可能非常小,但是很大,進而建議在做多項式轉換的時候可以先從低次往高次測試,最好是從一次式開始。