感知机模型

输入空间是$\chi\subseteq\mathbb{R}^n$,输出空间是$y={+1,-1}$
感知机定义为:$f(x)=sign(wx+b)$

感知机学习策略

输入空间任一点$x_0$到超平面S的距离:
$\frac{1}{||w||}|wx_0+b|$
误分类数据$(x_i,y_i)$,有$-y_i(wx_i+b)>0$
误分类点$x_i$到超平面S的距离$-\frac{1}{||w||}y_i(wx_i+b)$
误分类点集合M,所有误分类点到超平面S的距离
$-\frac{1}{||w||}\sum_{x_i\in{M}}y_i(wx_i+b)$
由此,感知机损失函数定义为
$L(w,b)=-\sum_{x_i\in{M}}y_i(wx_i+b)$

感知机学习算法(原始形式)

输入:训练数据集
$T={(x_1,y_1),(x_2,y_2),(x_N,y_N)...,(x_1,y_1)}$
$x_i\in\chi\subseteq\mathbb{R}^n$,$y_i\in{y}={+1,-1}$,学习率$\eta$
输出:w,b;感知机模型$f(x)=sign(wx+b)$
(1)选取初值$w_0$,$b_0$
(2)训练集选取$(x_i,y_i)$
(3)IF $y_i(wx_i+b)≤0$
$w←w+\eta{y_ix_i}$
$b←b+\eta{y_i}$
(4)转至(2),直到没有误分类点。

:感知机算法是收敛的,在训练数据及上的误分类次数k满足
$k≤(\frac{R}{\gamma})^2$

感知机学习算法(对偶形式)

由原始形式
$w←w+\eta{y_ix_i}$
$b←b+\eta{y_i}$
进行n次,w,b关于$(x_i,y_i)$增量分别为$a_iy_ix_i$和$a_iy_i$
记$a_i=n_i\eta$,最后学习到的w,b表示为
$w=\sum_{i=1}^{N}a_iy_ix_i$
$b=\sum_{i=1}^{N}a_iy_i$
输入:训练数据集
$T={(x_1,y_1),(x_2,y_2),(x_N,y_N)...,(x_1,y_1)}$
$x_i\in\chi\subseteq\mathbb{R}^n$,$y_i\in{y}={+1,-1}$,学习率$\eta$
输出:a,b;感知机模型$f(x)=sign(\sum_{j=1}^{N}a_jy_jx_j·x+b)$
其中$a=(a_1,a_2,...,a_N)^T$
(1)$a←0$;$b←0$
(2)训练集选取$(x_i,y_i)$
(3)IF $y_i(\sum_{j=1}^{N}a_jy_jx_j·x_i+b)≤0$
$a_i←a_i+\eta$
$b←b+\eta{y_i}$
(4)转至(2),直到没有误分类点。
记Gram矩阵$G=[x_i·x_j]_{N×N}$

《统计学习方法》极简笔记P2:感知机数学推导的更多相关文章

  1. 《统计学习方法》极简笔记P5:决策树公式推导

    <统计学习方法>极简笔记P2:感知机数学推导 <统计学习方法>极简笔记P3:k-NN数学推导 <统计学习方法>极简笔记P4:朴素贝叶斯公式推导

  2. 《统计学习方法》极简笔记P4:朴素贝叶斯公式推导

    <统计学习方法>极简笔记P4:朴素贝叶斯公式推导 朴素贝叶斯基本方法 通过训练数据集 T={(x_1,y_1),(x_2,y_2),(x_N,y_N)...,(x_1,y_1)} 学习联合 ...

  3. 统计学习方法笔记 -- KNN

    K近邻法(K-nearest neighbor,k-NN),这里只讨论基于knn的分类问题,1968年由Cover和Hart提出,属于判别模型 K近邻法不具有显式的学习过程,算法比较简单,每次分类都是 ...

  4. 统计学习方法 --- 感知机模型原理及c++实现

    参考博客 Liam Q博客 和李航的<统计学习方法> 感知机学习旨在求出将训练数据集进行线性划分的分类超平面,为此,导入了基于误分类的损失函数,然后利用梯度下降法对损失函数进行极小化,从而 ...

  5. 我的第一个 Rails 站点:极简优雅的笔记工具-Raysnote

    出于公司开发需求,这个暑假我開始搞Ruby on Rails.在业余时间捣鼓了一个在线笔记应用:http://raysnote.com.这是一个极简而优雅的笔记站点(至少我个人这么觉得的). 笔记支持 ...

  6. 《统计学习方法》笔记九 EM算法及其推广

    本系列笔记内容参考来源为李航<统计学习方法> EM算法是一种迭代算法,用于含有隐变量的概率模型参数的极大似然估计或极大后验概率估计.迭代由 (1)E步:求期望 (2)M步:求极大 组成,称 ...

  7. 《统计学习方法》笔记三 k近邻法

    本系列笔记内容参考来源为李航<统计学习方法> k近邻是一种基本分类与回归方法,书中只讨论分类情况.输入为实例的特征向量,输出为实例的类别.k值的选择.距离度量及分类决策规则是k近邻法的三个 ...

  8. 统计学习方法与Python实现(一)——感知机

    统计学习方法与Python实现(一)——感知机 iwehdio的博客园:https://www.cnblogs.com/iwehdio/ 1.定义 假设输入的实例的特征空间为x属于Rn的n维特征向量, ...

  9. 统计学习方法笔记--EM算法--三硬币例子补充

    本文,意在说明<统计学习方法>第九章EM算法的三硬币例子,公式(9.5-9.6如何而来) 下面是(公式9.5-9.8)的说明, 本人水平有限,怀着分享学习的态度发表此文,欢迎大家批评,交流 ...

随机推荐

  1. Bzoj 3624: [Apio2008]免费道路 (贪心+生成树)

    Sample Input 5 7 2 1 3 0 4 5 1 3 2 0 5 3 1 4 3 0 1 2 1 4 2 1 Sample Output 3 2 0 4 3 0 5 3 1 1 2 1 这 ...

  2. 每周一个js重要概念之一 调用堆栈

    js写了也有两年多了,大到复杂的后台系统,小到页面,还有日均300万的网页主站,HTML5的适配页面等等. 框架也杂七杂八接触了不少,从小的jquery.bootstrap.echarts等等,到大一 ...

  3. android网络编程-socket基础

    转载http://www.eoeandroid.com/thread-61727-1-1.html 一.Socket通讯机制1. TCP连接: 面向连接的可靠传输协议,具有数据确认和数据重传机制,保证 ...

  4. Java编程思想:序列化深层部分

    import java.io.*; import java.util.ArrayList; import java.util.List; public class Test { public stat ...

  5. /data/src/dragon/bidder_mod//src/proto_adapters/dragon_wax_adapter.h:11:对‘vtable for DragonWaxAdapter’未定义的引用

    dragon/bidder_mod/config中增加: $ngx_addon_dir/src/proto_adapters/dragon_wax_adapter.cc \

  6. 【原创】用事实说话,Firefox 的性能是 Chrome 的 2 倍,Edge 的 4 倍,IE11 的 6 倍!

    前言 每个浏览器新版本发布,都号称性能有显著提升,并且市面有各种测试工具,测试结果也是大相径庭,比如下面这篇文章: https://www.oschina.net/news/97924/browser ...

  7. C#写进程守护程序

    最近写了好多次进程守护程序,今天在这里总结一下. 用到的知识点: 1.在程序中启动进程, 2.写Windows服务, 3.以及在Windows服务中启动带界面的程序 关于第三点的问题,我在我的上一篇博 ...

  8. PHP-2.数据库小功能

    <?php /* * <PHP数据库部分功能实现> */ $KCNUM = @$_POST['KCNUM']; //建立一个数据库连接 $conn = mysql_connect(' ...

  9. Git实战

    Git实战 1.Git特点 1.1.Git两大特点 版本控制:可以解决多人同时开发的代码问题,也可以解决找回历史代码的问题. 分布式:Git是分布式版本控制系统,同一个Git仓库,可以分布到不同的机器 ...

  10. On The Way—Step 2 Python入门之Python内容初始

    2.1 输出 print() ​ 打印一个字符串 print('你真好!') ​ 打印变量内容 a = '你真好!' print(a) 结果都是:你真好! 2.2 变量 变量名字规则 只能用下划线.字 ...