第二章 感知机

在学习一个模型的时候应该问:

  • 模型的适用条件
  • 要解决什么问题
  • 对应统计学习方法的三个要素,假设空间,策略,算法
    感知机要解决的问题是二分类问题,假设是数据是可分的。

2.1 感知机模型

符号说明:
输入空间:X⊆RnX \subseteq R^{n}XRn
输入变量:x∈Xx \in XxX
输出空间:Y={+1,−1}Y=\{+1,-1\}Y={+1,1}
输出变量:y∈{+1,−1}y \in\{+1,-1\}y{+1,1}
假设空间:
f(x)=sign⁡(w⋅x+b)f(x)=\operatorname{sign}(w \cdot x+b)f(x)=sign(wx+b)
其中sign是符号函数
感知机模型

2.2 感知机的学习策略

损失函数:
误分类点到超平面的距离:
L(w,b)=−∑xi∈Myi(w⋅xi+b)L(w, b)=-\sum_{x_{i} \in M} y_{i}\left(w \cdot x_{i}+b\right)L(w,b)=xiMyi(wxi+b)
其中M是误分类点的集合。

2.4 感知机学习算法

2.4.1 随机梯度下降:

输入
训练数据集T=[(x1,y1),…,(xN,yN))T=\left[\left(x_{1}, y_{1}\right), \dots,\left(x_{N}, y_{N}\right)\right)T=[(x1,y1),,(xN,yN))
学习率η\etaη

  1. 选取初值w0,b0w_{0}, b_{0}w0,b0
  2. 在训练集中选取数据(xi,yi)\left(x_{i}, y_{i}\right)(xi,yi)
  3. 如果yi(w⋅xi+b)≤0y_{i}\left(w \cdot x_{i}+b\right) \leq 0yi(wxi+b)0
    w:=w+ηyixiw:=w+\eta y_{i} x_{i}w:=w+ηyixi
    b:=b+ηyib:=b+\eta y_{i}b:=b+ηyi
  4. 转至2,直到训练集中没有误分类的点

输出w,b
在这里插入图片描述

2.4.2 感知机模型的对偶形式

感知机模型的对偶形式
f(χ)=sign⁡(∑j=1Nαjyjxj⋅x+b)α=(α1,⋯αN)T\begin{array}{c} f(\chi)=\operatorname{sign}\left(\sum_{j=1}^{N} \alpha_{j} y_{j} x_{j} \cdot x+b\right) \\ \alpha=\left(\alpha_{1}, \cdots \alpha_{N}\right)^{T} \end{array}f(χ)=sign(j=1Nαjyjxjx+b)α=(α1,αN)T

算法:
输入
训练数据集T=[(x1,y1),…,(xN,yN))T=\left[\left(x_{1}, y_{1}\right), \dots,\left(x_{N}, y_{N}\right)\right)T=[(x1,y1),,(xN,yN))
学习率η\etaη
1.初值α:=0,b:=0\alpha:=0, b:=0α:=0,b:=0
2.在训练集中选取数据(xi,yi)\left(x_{i}, y_{i}\right)(xi,yi)
3.如果yi(∑j=1Nαjyjxj⋅x+b)≤0y_{i}\left(\sum_{j=1}^{N} \alpha_{j} y_{j} x_{j} \cdot x+b\right) \leq 0yi(j=1Nαjyjxjx+b)0
αi:=αi+η\alpha_{i}:=\alpha_{i}+\etaαi:=αi+η
b:=b+ηyib:=b+\eta y_{i}b:=b+ηyi
4. 转至2,直到训练集中没有误分类的点

输出w,b

对于随机梯度下降来说,对偶形式更新参数要少。

习题

2.1 Minsky与Papert指出:感知机因为是线性模型,所以不能表示复杂的函数,如异或(XOR)。验证感知机为什么不能表示异或。
首先看一下异或:
简单理解,如果两个数a和b进行异或操作。如果a、b两个值不相同,则异或结果为1。如果a、b两个值相同,异或结果为0。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐