机器学习经典算法之感知机与支持向量机

感知机

属于二分类的线性判别模型,是神经网络与支持向量机的基础。

基本公式 f ( x ) = s i g n ( w x + b ) f(x)=sign(wx+b) f(x)=sign(wx+b)

样本类别标签为 y ∈ { + 1 , − 1 } y \in \{+1,-1\} y{ +1,1}

损失函数

若将误分类的总数作为损失函数,不是参数 w , b w,b w,b的连续可导函数,不易优化。误分类样本点到超平面的总距离 − 1 ∥ w ∥ ∑ x i ∈ M y i ( w x i + b ) -\frac{1}{\left\|w\right\|}\sum_{x_i\in M}y_i(wx_i+b) w1xiMyi(wxi+b),不考虑 1 ∥ w ∥ \frac{1}{\left\|w\right\|} w1 L ( w , b ) = − ∑ x i ∈ M y i ( w x i + b ) L(w,b)=-\sum_{x_i\in M}y_i(wx_i+b) L(w,b)=xiMyi(wxi+b)便是感知机的损失函数,为 w , b w,b w,b的连续可导函数。对 w w w求导得 − ∑ x i ∈ M y i x i -\sum_{x_i \in M}y_ix_i xiMyixi,对 b b b求导得 − ∑ x i ∈ M y i -\sum_{x_i \in M}y_i xiMyi,故 w w w b b b的更新公式为 w ← w + η y i x i w \leftarrow w+\eta y_ix_i ww+ηyixi b ← b + η y i b \leftarrow b+\eta y_i bb+ηyi,其中 ( x i , y i ) (x_i,y_i) (xi,yi)为错分样本,感知机每次随机选取错分样本,因此得到的超平面不唯一,初值选取不同,也会导致超平面不相同。

可证,感知机算法的收敛性:若样本线性可分,经过有限次迭代,可得到一个完全划分正确的超平面。

对偶形式

对偶形式的基本想法为,由原始形式的 w w w b b b的更新公式,将 w w w b b b表示为实例 ( x i , y i ) (x_i,y_i) (xi,yi)的线性组合形式 w = ∑ i = 1 N α i y i x i , b = ∑ i = 1 N α i y i w=\sum_{i=1}^N\alpha_iy_ix_i,b=\sum_{i=1}^N\alpha_iy_i w=i=1Nαiyixi,b=i=1Nαiyi,其中 α i = n i η \alpha_i=n_i\eta αi=niη n i n_i ni表示第 i i i个实例样本由于误分类而进行更新的次数。

对偶形式算法:输入:线性可分的数据集 T = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , ⋯   , ( x N , y N ) } T=\{(x_1,y_1),(x_2,y_2),\cdots,(x_N,y_N)\} T={ (x1,y1),(x2,y2),,(xN,yN)},其中 x i ∈ R n , y i ∈ { − 1 , + 1 } , i = 1 , 2 , ⋯   , N x_i\in R^n,y_i\in\{-1,+1\},i=1,2,\cdots,N xiRn,yi{ 1,+1},i=1,2,,N,学习率 η ( 0 < η ≤ 1 ) \eta(0<\eta\le 1) η(0<η1);

输出: α , b \alpha,b α,b;感知机模型 f ( x ) = s i g n ( ∑ j = 1 N α j y j x j ⋅ x + b ) f(x)=sign(\sum_{j=1}^N\alpha_jy_jx_j\cdot x+b) f(x)=sign(j=1Nαjyjxjx+b),其中 α = ( α 1 , α 2 , ⋯   , α N ) \alpha=(\alpha_1,\alpha_2,\cdots,\alpha_N) α=(α1,α2,,αN)

(1) α ← 0 , b ← 0 \alpha \leftarrow0,b\leftarrow 0 α0,b0

(2)在训练集中选取数据 ( x i , y i ) (x_i,y_i) (xi,yi)

(3)如果 y i ( ∑ j = 1 N α j y j x j ⋅ x + b ) ≤ 0 y_i(\sum_{j=1}^N\alpha_jy_jx_j\cdot x+b)\le0

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值