天天看點

機器學習-感覺機

感覺機

感覺機是一個二分類的線性分類模型,輸入是特征向量,輸出是類别,通常取值為+1和-1。感覺機是神經網絡和支援向量機的基礎。

定義

數學公定義為: f ( x ) = s i n g n ( w x + b ) f(x)=singn(wx+b) f(x)=singn(wx+b),稱之為感覺機。其中w和b為感覺機模型參數,w為權重,b為偏置。而 s i g n ( ) sign() sign()為符号函數,輸出值為+1和-1。

幾何解釋

我們将其線性方程: w x + b = 0 wx+b=0 wx+b=0,對應于一個超平面上。将其中的w看成超平面的法向量(定義了法向量,那麼平面的方向就确定了),b看成是超平面的截距(定義了截距,平面的位置就确定了)。那麼,就有如下圖所示:

機器學習-感覺機

從圖中,可以看出平面将空間分為兩部分,一部分可以認為是正類,一部分為負類。如果給定一個資料集,存在一個超平面使得正類和負類的點完全正确的被分到超平面的兩側,我們就稱此資料集是線性可分的,否則,就稱線性不可分。

感覺機學習政策

假設資料集是線性可分的,為了能夠找到一個合适的超平面,這就需要一個學習政策來确定模型的參數w和b。

我們自然會想到誤分類的點越少越好,但是依據這樣的損失函數不是連續可導的,無法優化,是以換個思想,改成計算誤分類點到超平面的距離。

其中,距離的公式定義為: 1 ∣ ∣ w ∣ ∣ ∣ w x + b ∣ \frac{1}{||w||}|wx+b| ∣∣w∣∣1​∣wx+b∣,

機器學習-感覺機

由于增加了負号和y的緣故,保持了損失函數是非負的,是以看出誤分類點越少,誤分類點離超平面越近,損失函數的值越小。我們最終的優化目标是: m i n L ( w , b ) = − ∑ y i ( w x i + b ) minL(w,b)=-\sum{y_i(wx_i+b)} minL(w,b)=−∑yi​(wxi​+b)。

感覺機學習算法的原始形式

機器學習-感覺機

這個算法的思想是:每當一個點被誤分類,則調整w和b的值,使得分離超平面向誤分類點的一側移動,以減少距離,直至所有的點被正确分類。

有定理可以證明,當資料集線性可分時,經過有限次的搜尋,可以找到将訓練集資料完全分離的超平面,感覺機的原始形式的算法是收斂的。

繼續閱讀