《统计学习方法》-第二章-感知机
来源:互联网 发布:天猫抢购软件 编辑:程序博客网 时间:2024/05/16 08:46
概念
定义
假设输入空间是,输出空间是,x和y分属这两个空间,由输入空间到输出空间的如下函数:
称为感知机。其中,w和b称为感知机模型参数,叫做权值或权值向量,叫做偏置,w·x表示向量w和x的内积。Sign是符号函数,即
感知机的几何解释:线性方程
对应特征空间中的一个人超平面S,其中,w法向量,b是截距。超平面将特征空间划分为正、负两个部分。因此,超平面S称为分离超平面。
感知机学习策略
数据集的线性可分性
感知机学习策略
为找出这样的超平面,即确定感知机模型参数w,b,需要确定一个学习策略,即定义(经验)损失函数并将损失函数极小化。
感知机sign(w•x+b)学习的损失函数定义为:
其中,M为误分类点的集合。
感知机学习算法
感知机学习问题转化为求解损失函数式的最优化问题最优化的方法是随机梯度下降法。
原始形式
感知机学习算法是对以下最优化问题的算法。求参数w,b,使其极小化的解
算法例子:
Python实现感知机算法代码
import copy # 浅拷贝training_set = [[(3, 3), 1], [(4, 3), 1], [(1, 1), -1]]w = [0, 0]b = 0history = []def update(item): global w, b, history w[0] += 1 * item[1] * item[0][0] w[1] += 1 * item[1] * item[0][1] b += 1 * item[1] print(w, b) history.append([copy.copy(w), b])def cal(item): res = 0 for i in range(len(item[0])): res += item[0][i] * w[i] res += b res *= item[1] return resdef check(): flag = False for item in training_set: if cal(item) <= 0: flag = True update(item) if not flag: print("RESULT: w:" + str(w) + "b:"+str(b)) return flagif __name__ == "__main__": for i in range(1000): if not check(): break
阅读全文
0 0
- 李航《统计学习方法》第二章 感知机
- 《统计学习方法》第二章 感知机
- 统计学习方法之第二章感知机
- 统计学习方法 第二章 感知机
- 《统计学习方法》-第二章-感知机
- 统计学习方法-第二章-感知机
- 统计学习方法(第二章)感知机
- 统计学习方法第二章笔记——感知机
- 统计学习方法第二章——感知机
- 统计学习方法笔记--第二章感知机perceptron
- 统计学习方法笔记,第二章笔记, 感知机
- 机器学习(统计学习方法)6【第二章.感知机】
- [统计学习方法]感知机
- 统计学习方法-感知机
- 统计学习方法:感知机
- 统计学习方法---感知机
- 统计学习方法 第2章 感知机
- 统计学习方法笔记,第二章感知机的python代码实现
- springCloud(八)
- 洛谷P1445(数学+画柿子+线性筛)
- JZOJ 5377. 【NOIP2017提高A组模拟9.19】开拓
- 总线基础--USB
- hdu 6208 hash字符串水题
- 《统计学习方法》-第二章-感知机
- Servlet的三种开发方法
- selenium之开发登录脚本_maven版本二(加入Properties)
- Git 连接 GitHub
- 后缀自动机的一些简单题目
- for 语句初始化后第二步是条件判断
- 自定义标题栏(左中右三块)
- LoRa芯片的八种工作模式解析
- ssm整合