機器學習筆記5 線性不可分問題

2021-08-20 06:53:41 字數 2012 閱讀 6631

線性不可分簡單來說就是你乙個資料集不可以通過乙個線性分類器(直線、平面)來實現分類。這樣子的資料集在實際應用中是很常見的,例如:人臉影象、文字文件等。下面的幾個資料都是線性不可分的:

我們不可以使用乙個直線或者乙個直面把上面影象中的兩類資料很好的劃分。這就是線性不可分。

現在流行的解決線性不可分的方法就是使用核函式(kernel)。這個技術加在任何分類演算法上幾乎都可以提高一些效果,不過也給程式帶來了一些不便(例如多了模型的選擇和引數的調節)。

核函式解決線性不可分的本質思想就是把原始的樣本通過核函式對映到高維空間中,讓樣本在高維特徵空間中是線性可分的,然後再使用常見的線性分類器,如svm就可以很好的分類了。

那麼什麼是「通過核函式對映到高維空間」呢?針對上面兩個線性不可分的資料例子我們說一下各自的對映過程,如下圖:

說明:圖中開口向上的二次拋物線就是核函式,正類樣本(紅色)對映到該拋物線中得到的函式值都是小於0的,負類樣本(藍色)對映得到的函式值都是大於0的,這個時候就線性可分了。那麼為什麼說對映之後就是高維空間了,解釋如下:

(上述核函式是拋物線,函式模型為

)下面是另外乙個例子的對映到高維空間的圖示。

可以發現其中要計算兩個樣本特徵向量之間的內積。核函式就是從這裡入手!

根據這個切入點,有兩種思路:

1)將輸入的空間中樣本對映到新的空間中,在新的空間中求內積;

2)找到乙個核函式,它不需要將輸入空間中的樣本對映到新的空間中去,在輸入空間中就可以直接計算出內積了。

我們先看第一種,乙個二維非線性空間要展開變成線性的,就會成為5維的,然後問題就變得線性可分。這種轉化帶來的問題就是維度變高了,後續的計算會變得非常複雜。對於學習期而言就是特徵空間維數可能最終無法計算,而他的泛化能力會隨著位數的增長而大大降低,最終可能會使得內積無法求出,後果也就失去了這種轉化的優勢。

第二種方法,它其實是對輸入空間向高維空間的一種隱式對映(注意,這也是低維空間到高維空間的一種對映)。他不需要給出那個對映,而在輸入空間中就可以計算內積,這就是我們這節要講的核函式方法。

核函式k,對於所有的x1,x2滿足:

再說的直接一點,核函式可以簡化對映空間中的內積運算,而我們的svm演算法中最需要計算的地方恰恰就是特徵向量之間的內積演算法,這也是我們剛才說的切入點。

引入了核函式之後,我們的目標函式就成為了:

其中的內積直接替換成了核函式。其實注意觀察這兩個方式就可以發現:顯式對映就是先對映到高維空間,再求內積,此時往往由於過於高維,使得無法求得內積;隱式對映是先在核函式中求內積,然後再到高維,這個時候內積就是在輸入空間中求的,不怕維數災難了。

多項式核函式:

線性核函式:

高斯核函式等。

線性可分 線性不可分

很多機器學習分類演算法,比如支援向量機 svm 的介紹都說了假設資料要是線性可分。如果資料不是線性可分的,我們就必須要採用一些特殊的方法,比如svm的核技巧把資料轉換到更高的維度上,在那個高維空間資料更可能是線性可分的 cover定理 理論上一定能在更高的維度把資料線性可分。線性可分就是說可以用乙個...

線性可分與線性不可分

線性可分與線性不可分 現實任務中,原始樣本空間內並不存在乙個能正確劃分兩類樣本的超平面。可將樣本從原始空間影射到乙個更高維的特徵空間,使得樣本在這個特徵空間內線性可分。例如在上圖中,若將原始的二維空間對映到乙個合適的三維空間,這樣就能找到乙個合適的劃分超平面,幸運的是如果原始空間是有限維度,即屬性數...

理解線性可分和線性不可分與機器學習什麼叫線性模型

首先大家不要直觀理解線性可分就一定要是一條直線,線性可分指的是可以用乙個線性函式將兩類樣本分開 注意這裡是線性函式 比如在二維空間中的直線,三位空間中的平面以及高維空間中的線性函式。這裡指的可分是沒有一絲誤差的分開,線性不可分指的就是部分樣本用線性分類面 這個看清楚 劃分時會產生分類錯誤的現象。這裡...