本篇文章介绍塞巴斯蒂安·拉施卡《Python机器学习》中的第一个算法——感知器学习算法,之后会有文章分析书中的其它算法。
本书的内容非常基础,没有涉及大量的数学知识,书本不厚,并且有配套的代码实例,适合初学者。本人是在淘宝上买的,但是淘宝好物推荐里搜不到,只能用京东。标价88,淘宝上买大约50,所以这里挑了2个价位仅供参考(都是第2版):
如果不想购买也可以尝试下载相关文件
书本大部分内容(含代码)都可以在以下网址下载(需VPN):
Python Machine Learning - Second Edition
Python Machine Learning - Third Edition
下面开始本文的正文
感知器学习算法是书中第一个算法,是机器学习的入门算法
这里自己大致将注释翻译了一遍"/翻译",原文也完全保留了
import
用语言表述就是感知器Perceptron有三个参数:eta、niter、randomstate;两个属性:
和
。
定义了四个函数
、
、
和
-
:初始化;
-
:更新及计算;
-
:对X计算输入值;
-
:使用计算得到的进行预测。
主要介绍
函数:两个参数为
和
第一层循环:迭代n_iter次
errors=0,错误分类的数量归0
第二层循环:每个样本迭代一次,xi、target分别为每个样本特征与类标签
计算权重更新(公式写在后面)
错误分类数计数
结束第二层循环
错误分类数存储为向量
结束第一层循环
返回self
权重更新:
(不含w[0])