线性分类Linear Classification

记录一些学习随笔,权且作为基本知识的初步整理


感知器(perceptron)vol.1

我们所学的首个神经网络

类是实现定义好的点所组成的组

分类(classification)可以猜测某一个点所在的类


在学习分类时我们需要解决的2个问题:

1、分类(classifying):判断出点在decision boundary的哪一边

2、learning:找到分隔出两个类的decision boundary。

在learning完成后,classifier可以对未知点做正确分类。


引入超平面(hyperplane)作分隔用。

向量加一个origin point可以表示一个hyperplane P

若点X属于法向量V和超平面上一点C组成的平面,则有V和X-C的点积为0的性质,类似三维平面。


V是超平面的法向量,C是超平面的原点。

对于点到P的符号距离(signed distance)y,可以表示为y=V(X-C)(两个向量的点积)

因此可以用此来将一个点归类,若距离y大于零归为一类,y小于零归为另一类

引入step函数,将y作为参数,当y为负时step函数输出-1,y为正时step函数输出1。再以该输出z作为分类判断依据。


上述就是一个人工神经元(artificial neuron)的例子。xi作为输入,vi作为偏置权值(bias weight),step函数是传递函数(transfer function)的例子,也可以有其他传递函数如linear和tanh等。 


至此,我们已经解决classification的第一个问题classifying。


下面是neuron learning,即找到合理的v0,v1,...,vn。找到法向量和初始点后可构造出hyperplane。


将由hyperplane分类时产生的错误归类称为Error,

t是点X的应该归到的类,取值为1或-1,z是神经元输出。

以E为准我们找到neuron learning的方法:逐步减小error。

1、随机取数据集里的一点

2、计算该点的error

3、调整v0,...,vn使error降低

4、重复上述步骤

我们用E关于vi的偏导数来表示它们之间的变化关系

取一阶偏导数,再将一阶偏导数乘上经验系数(fudge factor,learning rate),则有

得到完整的Delta rule(一种学习法则)

1、在数据集中随机取点

2、计算该点的E

3、计算

4、更新vi

5、重复执行上述步骤,将更多的点进行正确分类


所取的经验系数足够小,算法可以收敛到期望状态,但不唯一。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值