统计学习方法之感知机


【概述】

1、感知机模型特征:感知机对应于输入空间中将实例划分为正负两类的分离超平面,属于判别模型。

2、感知机策略:感知机学习的目标是求出将训练数据进行线性划分的分离超平面,导入基于误分类的损失函数,利用梯度下降法对损失函数进行最小化,求得感知机模型。

3、感知机学习算法:用学习得到的感知机模型对新的输入实例进行分类。

4、重点:感知机是神经网络和支持向量机的基础,所以一些核心概念要仔细理解和和掌握。


一、感知机模型(机器学习三要素之一)

1、定义2.1(感知机)

公式说明:W和b为感知机模型参数,称为权值(weight)或权值向量(weight vector),b称为偏置,一般b会以bx0的方式形成统一的权值向量w,w.x表示w和x的内积(内积的定义见附录1),sign(x)是符号函数,即:


                                                          图2.1:Sign符号函数的几何表示

2、感知机的几何解释

     线性方程w.x+b=0对应于特征空间的一个超平面S,其中w是超平面的法向量(法向量和超平面的关系见附录2),b是超平面的截距。


     该超平面将特征空间划分成两个部分,位于两部分的点(特征向量)分别被分成正、负两类,超平面S成为分离超平面。

3、感知机学习方法

     由训练集(实例的特征向量及类别)T= {(x1,y1),(x2,y2),…,(xn,yn)},通过学习求得感知机模型(2.1),即求得模型参数w。

4、感知机应用举例(贷款申请)

     每个申请贷款的人者有若干特征,包括年龄、性别、收入、负债情况,上述这些特征构成特征向量x(x1,x2,...xn)。《统计学习方法》中图2.1给出的是x的二维向量实例,在图2.1中,超平面简化为斜率为-w1/w2的分类直线。

     申请者的数据,通过w加权取得总分,减去这个门槛值,总分超过门槛值(即大于等于0)就给+1,没超过(即小于0)就给-1  (另一个例子是“学生是否及格的判断”)


二、感知机学习策略(机器学习三要素之二)

1、数据集的线性可分性

    如果存在某个超平面S,能够将数据集的正实例点和负实例点完全正确地划分到超平面的两侧,即对所有yi=+1的实例1,有w.xi+b>0;对所有yi=-1的实例i,有w.xi+b<0,则称数据集T为线性可分数据集。

    否则,则称数据集T线性不可分。

注:从上文可看出:

1)如果找到合适的超平面,正确划分好的两个区域或空间中,yi和w.xi+b为同符号,同为正值或同为负值,即yi.(w.xi+b)>0;

2)对于没有完全正确区分的超平面,存在yi.(w.xi+b)<0的xi误分类点;

3)感知机的优化就是通过对xi误分类点到待优化超平面S的距离进行最小化调整。

2、感知机学习策略

      为了找出这样的超平面,需要确定学习策略,定义(经验)损失函数并将损失函数最小化。

在此选取“误分类点到超平面S的总距离”作为损失函数。

     首先写出输入空间R任一点x0到超平面S的距离(注:点到直线/平面的距离计算见附录3):

这里||w||是w的L2范数。

  (基于符号函数中的yi特性)对于误分类的数据(xi,yi)来说,-yi(w.xi+b)>0成立。

     因此,假设超平面S的误分类点集合为M,所有误分类点到超平面S的总距离为:


感知机损失函数的定义:


【小结】感知机学习的策略,就是在假设空间中选取使损失函数(2.4)最小的模型参数w,b,即感知机模型。


三、感知机学习算法(机器学习三要素之三)

     感知机学习问题转化为求解损失函数(式2.4)的最优化问题(最小值min),最优化的方法是随机梯度下降法(Stochastic gradient descent)。

     感知机学习算法是误分类点驱动的(注:这个在林轩田的视频中也反复提到,戏称“有错能改”算法)。

     本节介绍具体算法,包括原始形式和对偶形式,并证明在训练数据线性可分条件下学习算法得收敛性(有限次数的优化步骤)。

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

1)算法思路

    采用误分类驱动方式,当一个实例点被误分类,即位于分类超平面的错误一侧是,则进行w、b值的调整,使分离超平面向该误分类点的一侧移动,以减少该误分类点跟超平面的距离,直到超平面越过该误分类点使其被正确分类。   

2)梯度的计算方式,

    采用偏导数方式,分别对L求变量w和变量b的偏导,计算损失函数L(w,b)的梯度。具体如下:

∇wL(w,b)=-∑yi.xi

∇bL(w,b)=-∑yi

上述就是,求得w和b的变化梯度,分别是yixi和yi

普遍性地,随机选取一个误分类点(xi,yi),对w和b进行更新

w<—w+ηyixi

b<—b+ηyi

这里,η是自变量的步长,统计学习中又称为学习率(learning rate)。

通过迭代可以期待损失函数L(w,b)不断减少,直到为0。

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

通过上述分析,得到以下算法(算法2.1)

(1)输入:

     训练集T={(x1,y1),(x2,y2),(x3,y3),...,(xn,yn)},其中xi∈X=Rn,yi∈Y={-1,1},i=1,2,...,N;学习率η(0<η≤1);

(2)输出:

w,b;感知机模型f(x)=sign(w.x+b)

第1步:选取初值w0、b0

第2步:在训练集中选取数据(xi,yi)

第3步:如果y(w.xi+b)≤0,则进行以下迭代

       w<— w+ηyixi

       b<— w+ηyi

(4)更新w值和b值,转到第(2)步,直到训练集中没有误分类点

注:算法2.1体现了误分类驱动


2、感知机学习算法的对偶形式

思路:将w和b表示为实例xi和Label标记yi的线性组合的形式,并通过求解系数求得w和b。

(1)在算法2.1中可假设初始值w0、b0均为0,对误分类点(xi,yi)通过

w<— w+ηyixi

b<— w+ηyi

(2)逐步修改w、b,假设修改n次,则w,b系数关于(xi,yi)的增量分别就是aiyixi和aiyi,这里ai=niη

这样,从学习过程可以看出,最后学习到的w,b可以分别表示为

w=∑(I=1,N)aiyixi

b=∑(I=1,N)aiyi


通过上述分析,得到以下算法(算法2.2)

1)输入

训练集T={(x1,y1),(x2,y2),(x3,y3),...,(xn,yn)},其中xi∈X=Rn,yi∈Y={-1,1},i=1,2,...,N;学习率η(0<η≤1);

2)输出

a,b;感知机模型f(x)=yi(∑(j=1,N)ajyjxj.xi+b)≤0

其中,a=(a1,a2,...,aN)T

(1)a<—0,b<—0

(2)在训练集选取数据(xi,yi)

(3)如果yi(∑(j=1,N)ajyjxj.xi+b)≤0

ai<—ai+η

b<—b+ηyi

(4)更新a值和b值,转到第(2)步,直到训练集中没有误分类数据




例题2.2:正样本点是x1=(3,3)T,x2=(4,3)T,负样板点是x3=(1,1)T,以下试用感知机学习算法对偶形式求感知机模型

解:

  按照算法2.2

1)取ai=0,i=1,2,3,b=0,步长η=1

2)计算Gram矩阵

    目前训练集中有3个实例(3个样本,2个正样本,1个负样本),分别是a1=(3,3),a2=(4,3),a3=(1,1)三个向量

注2:3个实例形成一个Gram矩阵如下:

[A11,A12,A13

A21,A22,A23

A31,A32,A33]

行一列一元素A11=<a1.a1的内积>=3*3+3*3=18;行一列二元素A12=<a2.a1>4*3+3*3=21

行二列三元素A13=<a3.a1>=*3+*3=6;行二列一元素A21的内积=3*4+3*3=21

行二列二元素A22=<a2.a2>4*4+3*3=25;行二列三元素A23的内积=1*4+1*3=7

行三列一元素A31的内积=3*1+3*1=6;行三列二元素A32的内积=4*1+3*1=7

行三列三元素A33的内积=1*1+1*1=2。

推出对应的Gram矩阵如下:

[18,21,6

21,25,7

6,7,2]

3)误分条件

yi(∑(j=1,N)ajyjxj.xi+b)≤0

参数更新

ai<--ai+1

b<--b+yi

4)迭代,形成以下表格

5)最后形成分离超平面(本章是线性分离直线)

w=2x1+0x2-5x3=(1,1)T(T是转置)

b=-3

x1+x2-3=0

W的系数都是1

6)得出感知机模型

f(x)=sign(x(1)+x(2)-3)



附录1 :关于内积的定义

两个向量的内积等于一个向量的模跟另一个向量在这个向量的方向上的正投影的数量的乘积。

内积的用途是判断两个向量的相似度:两个向量是否接近或相等,判断就是这两个向量的内积最大化


附录2:关于法向量的概念

空间直线L.Ax+By+Cz+D=0的法向量的法向量是(A,B,C)

证明:直线斜率是-A/B,向量斜率是B/A,斜率乘积是-1,所以Ax+By+Cz+D=0与向量(A,B,C,)垂直


附录3:关于点到平面的距离计算方式

附录4:为何感知机不能区分XOR函数

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 157,298评论 4 360
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 66,701评论 1 290
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 107,078评论 0 237
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,687评论 0 202
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,018评论 3 286
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,410评论 1 211
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,729评论 2 310
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,412评论 0 194
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,124评论 1 239
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,379评论 2 242
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 31,903评论 1 257
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,268评论 2 251
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 32,894评论 3 233
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,014评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,770评论 0 192
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,435评论 2 269
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,312评论 2 260

推荐阅读更多精彩内容