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 優化模型
確定學習策略 —-定義(經驗)損失函式並將其最小化。
分析:
(1) 由於我們的目標是找到乙個超平面將資料完分開,標籤為+1
的樣本都處於超平面的上半空間,標籤為-1 的樣本都處於超平面下半空間,自然想到目標損失函式迫使誤分類的資料點數降到0,表示成數學形式如下: l(
x;ω,
b)=∑
i=1n
i[si
gn(ω
x+b)
≠yi]
(3)
但是這個損失函式
l 不是引數ω,
b的連續可導函式,不易求解,因此不能採用這樣的函式。
(2)損失函式另一種取法是誤分類點到超平面的距離,則可寫作l′
(x;ω
,b)=
∑xi∈
m|ωx
i+b|
||ω|
|(4)
式中m 是誤分點的集合。若m=
∅,則l′
=0,否則l′
>
0 。
為了便於求解(4)式,需要對其進行等效處理。首先要處理掉「|
|」,ωxi
+b表示的是點xi
到超平面的相對距離;樣本
(xi,
+1)處
於超平面
的上半空
間(ωx
i+b>0)
樣本(x
i,−1
)處於超
平面的下
半空間(
ωxi+
b<0)
}⇒yi
(ωxi
+b)>
0(5)
這是資料點xi
被超平面分類正確的情況。相反,資料點被超平面錯分時: 樣本
(xi,
−1)處
於超平面
的上半空
間(ωx
i+b>0)
樣本(x
i,+1
)處於超
平面的下
半空間(
ωxi+
b<0)
}⇒yi
(ωxi
+b)<
0(6)
則當樣本被錯分時,有−y
i(ωx
+b)>
0 ,因此,(4) 式被等效地變為l′
(x;ω
,b)=
−1||
ω||∑
xi∈m
yi(ω
xi+b
)(7)
學習模型就是將損失函式最小化,即
minω,b
l′(x
;ω,b
)=minω,b
−1||
ω||∑
xi∈m
yi(ω
xi+b
)(8)
3 優化模型求解
上面已經將損失函式造好,下面就需要求解,不過求解之前對(8)式仍需做簡單的處理,項1|
|ω||
不影響問題的最優解,而優化引數又處於分母,所以將其去掉,(8)式重新寫作
minω,b
−∑xi
∈myi
(ωxi
+b)(9)
這是典型的多元函式求極值問題,用最速下降法即可高效求解。具體地,每一步使得引數ω^
=(ω,
b)沿著其在損失函式的負梯度方向調整,即可快速求得最優解。
未完待續….
reference:
統計學習方法\李航
感知機演算法
利用帶有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 則不修正權重 ...
感知機學習演算法
from sklearn.linear model import perceptron import numpy as np 訓練資料集 x train np.array 3,3 4,3 1,1 y np.array 1 1,1 構建perceptron物件,訓練資料並輸出結果 perceptron...
機器學習 感知機演算法
感知機 perception 是一種二類線性模型,主要用於分類問題。目標函式 f x sgn w x b 其中sgn為符號函式 其中向量w為目標函式向量,向量x為樣本。向量w 向量x 超平面 w x b 0 所構成的平面 向量w為超平面上的法向量。訓練集 t x1,y1 x2,y2 x3,y3 xn...