线性模型(1):Perceptron Learning Algorithm (PLA)

此笔记源于台湾大学林轩田老师《机器学习基石》《机器学习技法

 

                                                 (一)


PLA算法是基本的binary Classification算法。

一个基本的问题是,对于银行,假设我知道用户的年龄、性别、工作、工资,那么应不应该发信用卡给他?

image

 

image

那么它在二维空间里就是一条分割平面的直线。

如何从拥有无限多h的H中选择g?

image

上述算法的一种实现是:

image

从上述算法中可以知道:(以二维空间为例)如果没有一条直线能够完全的分开数据点,即:输入数据不是线性可分的,那么上述算法永远不会停止。一种解决方法是:

image

 

                                           (二)

 

假设我们的输入数据是线性可分的,那么这个算法有:

(1)随着迭代次数的增加,Wt越来越完美,直到可以完全分割输入数据集D;

image

(2)迭代多少次才能完全分开数据集D呢?也即:PLA算法的收敛速度是多少呢?

image

其中 const= ρ/R,R与ρ为:

image

下面是证明:

image

PLA算法小结(优缺点)

image

 

                                

                                     (三)Weight Pocket Algorithm

因为我们的错误衡量标准多种多样,当我们更换错误衡量标准如下时:

image

image

image

image

posted @ 2016-04-26 21:15  wangyanphp  阅读(572)  评论(0编辑  收藏  举报