分類演算法 感知機(Perceptron)

2022-06-18 16:36:10 字數 1167 閱讀 3410

感知機演算法是一類二分類演算法,其問題描述為,給定乙個訓練資料集

$$t=\,$$

其中$x_i\in \mathbb^n,y_i\in\,i=1,2,\cdots,n$,求引數$w,b$,使得以下損失函式極小化問題的解

$$\min_l(w,b)=\min -\sum_y_i(w\cdot x_i+b),$$

其中$m$為誤分類點的集合。

下一節給出損失函式的推導過程。

感知機演算法求解的資料集必須具有線性可分性,其定義為,對於資料集

$$t=\,$$

其中$x_i\in \mathbb^n,y_i\in\,i=1,2,\cdots,n$,如果存在某個超平面$s$

$$w\cdot x + b = 0,$$

能夠將資料集的正類和負類完全正確地劃分到超平面的兩側,即對所有$y_i=+1$的樣本$i$,有$w\cdot x_i+b>0$,對所有$y_i=-1$的樣本$i$,有$w\cdot x_i + b < 0$,則稱資料集$t$為線性可分資料集(linearly separable dataset)。

感知機演算法即是求解線性可分資料集中的超平面$s$的演算法。由於超平面是由$w$和$b$確定的,因此學習超平面的目標即是確定引數$w$和$b$,按照梯度下降法優化要求,需要定義乙個關於引數$w$和$b$的損失函式進行優化。

注意到,損失函式被期望是連續可導的,因此不能直接選取誤分類點個數作為損失函式,在感知機中,選取誤分類點到超平面$s$的總距離作為損失函式。對於輸入空間$\mathbb^n$中任意一點$x_i$到超平面$s$的距離為

$$\frac\left | w \cdot x_i + b \right |,$$

其次,對於誤分類點來說,滿足

$$-y_i(w_i\cdot x_i+b)>0,$$

因此可以把距離公式的絕對值替換得到

$$-\fracy_i\left ( w \cdot x_i + b \right ),$$

假設超平面$s$的誤分類集合為$m$,那麼所有誤分類點到超平面$s$的總距離為

$$-\frac\sum_y_i\left ( w \cdot x_i + b \right ),$$

不考慮$\frac$,則感知機$sign(w\cdot x+b)$的損失函式定義為

$$l(w,b)=-\sum_y_i(w\cdot x_i+b).$$

《統計學習方法》,李航

感知機演算法

1 目標 感知機演算法針對二分類問題 f x x 1 實質在於對於線性可分的資料集 x i0,x i1,x in y i xi y i i 0,1 2,m 2 找到乙個超平面 x b 0 將資料分成兩部分,使得位於位於超平面上半部分的資料點屬於 1 類,處於超平面下半空間的資料點屬於 1 類。2 優...

感知機演算法

利用帶有0 1門限的神經元進行學習。形式化如下 感知機輸入x x 感知機權值w w 偏置 b 1令y x wxt b y x wx t b感知機輸出 z x role presentation t t 及標籤集y y 每次餵入乙個樣本xi x i,若yi z x i y i z xi 則不修正權重 ...

感知機分類學習

感知機 perceptron 是一種二類分類的線性分類模型,也就是說,使用於將資料分成兩類的,並且資料要線性可分的情況。線性可分是指存在乙個超平面能夠將空間分成兩部分,每一部分為一類,感知機的目的就在於找這樣的乙個超平面。假設輸入資料形式為x x1,x2.xn 即所謂的特徵向量。y代表輸入資料的類別...