• 二类分类的线性分类模型,
    • 输出+1和-1.
    • 属判別模型
  • 感知机学习旨在求出将训练数据进行线性划分的分离超平面,
    • 为此,导入基于误分类的损失函数,利用梯度下降法对损失函数进行极小化,求得感知机模型.
  • 感知机学习算法简单易实现,分原始形式和对偶形式
  • 感知机预测是用学习得到的感知机模型对新的输入实例分类
  • 57年由 Rosenblatt提出,
    • 是神经网络与支持向量机的基础

  • 本章先介绍感知机模型;
  • 然后感知机的学习策略,特别是损失函数
  • 最后感知机学习算法,
    • 包括原始形式和对偶形式,并证明算法的收敛性.

2.1感知机模型

  • 定义2.1(感知机)

f(x)=sign(wx+b)(2.1)f(x)=sign(w\cdot x+b)\tag{2.1}

2 感知机

  • 是线性分类模型
  • 感知机模型的
    • 假设空间是定义在特征空间中的所有线性分类模型
    • 即函数集合

2 感知机

  • 感知机几何解释:

wx+b=0w\cdot x+b=0

  • 对应特征空间RnR^n中的一个超平面SS,
  • 法向量,截距.
  • 这个超平面将特征空间划分两部分.
    • 位于两部分的点(特征向量)分别被分为正、负两类.
    • 超平面S称为分离超平面
  • 如图2.1

2 感知机

  • 感知机学习
  • 感知机预测

2.2感知机学习策路

2.2.1数据集的线性可分性

2 感知机

2.2.2感知机学习策略

  • 设线性可分
  • 即确定ww,bb,
    • 需确定一个学习策略
    • 即定义(经验)损失函数并将损失函数极小化

  • 损失函数的另一个选择是误分类点到超平面SS的总距离,
    • 这是感知机所采用的.
  • 输入空间中任一点到超平面SS的距离:

2 感知机

  • 对于误分类的数据(xi,yi)(x_i,y_i)

2 感知机

  • 因此,误分类点xix_i到超平面S的距离是

2 感知机

  • 误分类集合M
  • 那么所有误分类点到超平面SS的总距离为

2 感知机

  • 不考虑1w\frac{1}{||w||},就得到感知机学习的损失函数

  • 感知机学习的
  • 损失函数定义为

2 感知机

  • 这个损失函数就是感知机学习的经验风险函数.

  • 损失函数非负.
  • 如果没有误分类点,损失函数值是0.
  • 且,误分类点越少,误分类点离超平面越近,损失函数值就越小,
  • 一个特定的样本点的损失函数:
    • 在误分类时是参数w,b的线性函数,
    • 在正确分类时是0.
    • 因此,给定训练数据集,损失函数是w,b的连续可导

  • 感知机学习
    • 在假设空间中选取使损失函数式(2.4)最小的模型参数
      W,b,

2.3感知机学习算法

  • 感知机学习问题转化为求解损失函数式(2.4)的最优化问题,
  • 最优化的方法是随机梯度下降法.
  • 本节叙述感知机学习的具体算法,
    • 原始形式和对偶形式,
    • 并证线性可分条件下感知机学习算法的收敛性

2.3.1 感知机学习算法的原始形式

  • 感知机学习算法是误分类驱动的,用随机梯度下降法.
  • 首先,任取w0,b0w_0,b_0,然后用梯度下降法不断地极小化(2.5)
  • 极小化过程中不是一次使M中所有误分类点的梯度下降
    • 而是一次随机选取一个误分类点使其梯度下降

  • 设误分类点集合MM固定,那么损失函数的梯度由

2 感知机

  • 随机选取一个误分类点(xi,yi)(x_i,y_i),对w,bw,b更新:

2 感知机

  • 0<η10<\eta \le 1是步长,又称学习率.
  • 这样,通过迭代可期待损失函数不断减小,直到为0.
  • 综上所述,得如下算法

  • 算法2.1(感知机学习算法的原始形式
  • (1)选初值w,b
  • (2)在训练集中选取数据(xi,yi)(x_i,y_i)
  • (3)如果yi(wxi+b)0y_i(w\cdot x_i+b)\le 0

2 感知机

  • (4)转至(2),直至训练集中没有误分类点

  • 当一个实例点位于超平面错误一侧时,
    • 则调整w,b,
    • 使分离超平面向该误分类点的一侧移动,
    • 以减少该误分类点与超平面间的距离,
    • 直至超平面越过该误分类点使其被正确分类.

  • 算法2,1是感知机学习的基本算法,对应于后面的对偶形式,
    • 称为原始形式

  • 例2.1
  • x1=(3,3)T,x2=(4,3)Tx_1=(3,3)^T,x_2=(4,3)^T
  • x3=(1,1)Tx_3=(1,1)^T
  • f(x)=sign(wx+b)f(x)=sign(w\cdot x+b)
  • w=(w(1),w(2))Tw=(w^{(1)},w^{(2)})^T
  • x=(x(1),x(2))Tx=(x^{(1)},x^{(2)})^T

2 感知机

  • 采用不同的初值或选取不同的误分类点,
    • 解可以不同.

2.3.2算法收敛性

相关文章:

  • 2021-07-30
猜你喜欢
  • 2021-12-03
  • 2021-05-25
  • 2021-10-10
  • 2022-01-05
  • 2021-06-08
  • 2022-12-23
  • 2021-11-17
相关资源
相似解决方案