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

时间:2021-07-28 16:15:57

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

(一)

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

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

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

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

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

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

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

上述算法的一种实现是:

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

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

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

(二)

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

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

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

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

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

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

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

下面是证明:

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

PLA算法小结(优缺点)

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

(三)Weight Pocket Algorithm

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

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

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

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

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