统计学习方法-感知机
来源:互联网 发布:贵州大数据产业规模 编辑:程序博客网 时间:2024/05/16 17:19
概念
感知机是二分类模型,输入实例的特征向量,输出实例的±类别。
感知机模型
定义
假设输入空间是,输出空间是,x和y分属这两个空间,那么由输入空间到输出空间的如下函数:
称为感知机。其中,w和b称为感知机模型参数,叫做权值或权值向量,叫做偏置,w·x表示向量w和x的内积。sign是一个函数:
感知机的几何解释是,线性方程
将特征空间划分为正负两个部分:
这个平面(2维时退化为直线)称为分离超平面。
感知机学习策略
数据集的线性可分性
定义
给定数据集
其中如果存在某个超平面S
能够完全正确地将正负实例点全部分割开来,则称T线性可分,否则称T线性不可分。
感知机学习策略
假定数据集线性可分,我们希望找到一个合理的损失函数。
一个朴素的想法是采用误分类点的总数,但是这样的损失函数不是参数w,b的连续可导函数,不可导自然不能把握函数的变化,也就不易优化(不知道什么时候该终止训练,或终止的时机不是最优的)。
另一个想法是选择所有误分类点到超平面S的总距离。为此,先定义点x0到平面S的距离:
分母是w的L2范数,所谓L2范数,指的是向量各元素的平方和然后求平方根(长度)。这个式子很好理解,回忆中学学过的点到平面的距离:
此处的点到超平面S的距离的几何意义就是上述距离在多维空间的推广。
又因为,如果点i被误分类,一定有
成立,所以我们去掉了绝对值符号,得到误分类点到超平面S的距离公式:
假设所有误分类点构成集合M,那么所有误分类点到超平面S的总距离为
分母作用不大,反正一定是正的,不考虑分母,就得到了感知机学习的损失函数:
感知机学习算法
原始形式
感知机学习算法是对以下最优化问题的算法:
感知机学习算法是误分类驱动的,先随机选取一个超平面,然后用梯度下降法不断极小化上述损失函数。损失函数的梯度由:
给出。所谓梯度,是一个向量,指向的是标量场增长最快的方向,长度是最大变化率。所谓标量场,指的是空间中任意一个点的属性都可以用一个标量表示的场(个人理解该标量为函数的输出)。
随机选一个误分类点i,对参数w,b进行更新:
上式是学习率。损失函数的参数加上梯度上升的反方向,于是就梯度下降了。所以,上述迭代可以使损失函数不断减小,直到为0。于是得到了原始形式的感知机学习算法:
对于此算法,使用下面的例子作为测试数据:
- [统计学习方法]感知机
- 统计学习方法-感知机
- 统计学习方法:感知机
- 统计学习方法---感知机
- 统计学习方法之感知机
- 统计学习方法学习--感知机
- 《统计学习方法》2.感知机
- 统计学习方法笔记-感知机
- 《李航:统计学习方法》笔记之感知机
- 《李航:统计学习方法》笔记之感知机
- 《统计学习方法,李航》:2、感知机模型
- 统计学习方法(三)--感知机
- 《统计学习方法》读书笔记——感知机
- 统计学习方法--感知机模型 (perception)
- 统计学习方法笔记(二)感知机
- 《统计学习方法》笔记(2):感知机
- 李航《统计学习方法》第二章 感知机
- 二、感知机--统计学习方法总结
- Qt学习之路(7): 创建一个对话框(上)
- Navicat Premium连接Oracle数据库报错
- Hbase1.1.3的相关使用心得
- Linux/Windows JDK8安装|JDK1.8安装和环境变量配置
- IOS 系统打电话事件的监听与状态获取
- 统计学习方法-感知机
- 【VISIO】visio画图使用技巧
- SpringMVC+hibernate整合JBPM4.4
- 自增长主键
- java提高篇(二三)-----HashMap
- Qt学习之路(8): 创建一个对话框(下)
- 一个不粗的JS插件库网站
- Android 开发最佳实践
- SAP的WebService发布