for batch&supervised binary classfication,g≈f <=> Eout(g)≥0 achieved through Eout(g)≈Ein(g) and Ein(g)≈0

其中Ein是某一个备选函数h在数据D上犯错误的比例,在整个数据集上犯错误的比例为Eout

1.Perceptron Hypothesis Set

假设训数据集市线性可分的,感知机学习是目标就是求得一个能够将训练集正实例点和负实例点完全正确分开的分离超平面,

对于一组数据X={x1,x2,x3...,xn},其中每一个xi代表了一个属性值,那么这个属性值所代表的属性的重要程度可能是不同的,我们用一组权重的向量代表每个属性的重要程度W={w1,w2,w3...,wn},wi变化会产生不同的数据,这样对每一组数据我们可以计算出一个得分score,他可能代表了一些具体含义,比如某客户的信用额度。那么当score与某一临界值作比较时,当score大于临界值时,就是正值表示的含义是发信用卡,当score小于该临界值时,就是负值表示不发信用卡,这样分类器就产生了。具体来说:

接着为了之后的简单,我们进行了合并的操作:

相应的,在二维空间中,h(x)变成了如下形式

2.Perceptron Learning Algorithm (PLA)

PLA算法的基本思想是,最开始的时候随便取一条曲线wn,这条曲线应用到已知的训练数据集中,那么会有错误的划分(xn,yn),这时候我们去纠正我们的曲线wn+1=wn+ynxn

  

根据上图,由于权向量w是分割线的法向量,无论发生错误的点是正值还是负值,经过修正后的分割线调整了方向从而向错误点靠拢,就是说他更接近那条完美的分割线。算法的具体描述是:

3.PLA算法的可行性

想让PLA算法可停止,必须能够找到至少一条直线将训练数据集D划分成正值和负值两个部分,即必须有无错的权向量存在。这样的D我们称它为“线性可分”的。D线性可分是PLA停止的必要条件,那么他是充分条件吗?即如果D线性可分,PLA一定会停止吗?证明如下:

通俗的说就是,如果D里面的数据能划分,就一定能找到那条(其实有无数条)划分线;此时,在D里面随便选一个点,它一定处在划分线的某一侧(不是直线上),并且这一侧所有其他点的计算符号都与它相同,所以这些点到直线的距离大于零(不等式(1)的意义);根据这些条件得到不等式(2),它告诉我们权向量就像11点50的分针,近似目标向量就像同一时刻的时针,每一次修正,分针都离时针更近了!

但是上边的证明还不够完美,向量内积不仅反映了向量的角度还反映了其长度,两个向量就算夹角不变,只要长度变化,内积也可以增大!

不错,权向量的长度会怎么变化,推导如下

可以看到,修正之后权向量的长度,相较于修正之前的增加有一个上限,或者说它的长度增长是较慢的。这个上限由D中距离坐标原点最远的那个点决定。

4.Learning with Noisy Data

对于那些有杂质的数据来说,要做到线性可分是非常困难的,因此我们采用的方法是找到一条直线,它是所有可能直线当中犯错误最少的?这是一个很难的问题,因为所含的直线太多了,你必须完整遍历一遍之后才能找到最优解,这是数学上的NP-hard问题。因此又提出了妥协的结果:口袋算法(Pocket Algorithm)

感知器算法PLA的更多相关文章

  1. Stanford大学机器学习公开课(三):局部加权回归、最小二乘的概率解释、逻辑回归、感知器算法

    (一)局部加权回归 通常情况下的线性拟合不能很好地预测所有的值,因为它容易导致欠拟合(under fitting).如下图的左图.而多项式拟合能拟合所有数据,但是在预测新样本的时候又会变得很糟糕,因为 ...

  2. 第三集 欠拟合与过拟合的概念、局部加权回归、logistic回归、感知器算法

    课程大纲 欠拟合的概念(非正式):数据中某些非常明显的模式没有成功的被拟合出来.如图所示,更适合这组数据的应该是而不是一条直线. 过拟合的概念(非正式):算法拟合出的结果仅仅反映了所给的特定数据的特质 ...

  3. [置顶] 局部加权回归、最小二乘的概率解释、逻辑斯蒂回归、感知器算法——斯坦福ML公开课笔记3

    转载请注明:http://blog.csdn.net/xinzhangyanxiang/article/details/9113681 最近在看Ng的机器学习公开课,Ng的讲法循循善诱,感觉提高了不少 ...

  4. 感知器算法--python实现

    写在前面: 参考: 1  <统计学习方法>第二章感知机[感知机的概念.误分类的判断]   http://pan.baidu.com/s/1hrTscza 2   点到面的距离 3   梯度 ...

  5. Perceptron Algorithm 感知器算法及其实现

    Rosenblatt于1958年发布的感知器算法,算是机器学习鼻祖级别的算法.其算法着眼于最简单的情况,即使用单个神经元.单层网络进行监督学习(目标结果已知),并且输入数据线性可分.我们可以用该算法来 ...

  6. 机器学习之感知器算法原理和Python实现

    (1)感知器模型 感知器模型包含多个输入节点:X0-Xn,权重矩阵W0-Wn(其中X0和W0代表的偏置因子,一般X0=1,图中X0处应该是Xn)一个输出节点O,激活函数是sign函数. (2)感知器学 ...

  7. 【2008nmj】Logistic回归二元分类感知器算法.docx

    给你一堆样本数据(xi,yi),并标上标签[0,1],让你建立模型(分类感知器二元),对于新给的测试数据进行分类. 要将两种数据分开,这是一个分类问题,建立数学模型,(x,y,z),z指示[0,1], ...

  8. 感知器算法 C++

    We can estimate the weight values for our training data using stochastic gradient descent. Stochasti ...

  9. 机器学习 —— 基础整理(六)线性判别函数:感知器、松弛算法、Ho-Kashyap算法

    这篇总结继续复习分类问题.本文简单整理了以下内容: (一)线性判别函数与广义线性判别函数 (二)感知器 (三)松弛算法 (四)Ho-Kashyap算法 闲话:本篇是本系列[机器学习基础整理]在time ...

随机推荐

  1. [翻译] CBStoreHouseTransition

    CBStoreHouseTransition What is it? A custom transition inspired by Storehouse iOS app, also support ...

  2. UnicodeEncodeError: ‘ascii’ codec can’t encode characters in position xxx ordinal

    python在安装时,默认的编码是ascii,当程序中出现非ascii编码时,python的处理常常会报这样的错UnicodeDecodeError: 'ascii' codec can't deco ...

  3. Js 实现五级联动

    js实现多级联动的方法很多,这里给出⼀种5级联动的例子,其实可以扩展成N级联动,在做项目的时候碰到了这样⼀个问题但是有不能从数据库中动态的加载这些选项,所以只有想办法从单个的页面着手来处理了,应为项目 ...

  4. mysql mysql_error mysqli_connect_error 乱码

    <html> <head> <meta charset="utf-8"> <title></title> </he ...

  5. Sublime Text shift+ctrl妙用

    1 :按住shift+ctrl然后按←或→可快速选中一行中的某一部分,相当于双击鼠标选中. 当你想在代码末尾加注释的话,这个方法很好用 输入文字->光标移到文字末尾->按住shift+ct ...

  6. Win10环境下使用VS2015编译PJProject

    一.pjproject源码下载 下载地址:http://www.pjsip.org/ 二.编译之前 1.pj配置,通常直接复制并重命名config_site_simple.h为config_site. ...

  7. Umbraco(7)-The Navigation Menu And A Parent Page with Infinite Children

    原文链接:http://www.ncloud.hk/%E6%8A%80%E6%9C%AF%E5%88%86%E4%BA%AB/umbraco7the-navigation-menu-and-a-par ...

  8. 基调(听云)app,服务器,质量测试手段

    1. 网络质量检测 http://www.tingyun.com/tingyun_network.html

  9. Backbone.js学习之View

    千呼万唤始出来,终于到最后一个要点View了.照旧,先来一睹官方文档: Backbone views are almost more convention than they are code - t ...

  10. 通过Scrapy抓取QQ空间

    毕业设计题目就是用Scrapy抓取QQ空间的数据,最近毕业设计弄完了,来总结以下: 首先是模拟登录的问题: 由于Tencent对模拟登录比较讨厌,各个防备,而本人能力有限,所以做的最简单的,手动登录后 ...