了解Perceptron训练算法

use*_*312 -9 matlab perceptron neural-network

以下文字来自HalDaumé三世的" 机器学习课程 "在线教科书(第41页).

在此输入图像描述

据我所知,D=输入向量的大小.

(1)这是什么样的Perceptron算法?二级/多级?在线/离线?

(2)这是什么y?偏置/重量/样品/ class_label?

(3)测试ya<=0更新砝码的理由是什么?


编辑.

y 是class_label.

dro*_*rco 7

您的问题的答案:

1 -这是一个二进制感知器算法,用于离线批处理.

2 -正如你所写 - Y是标签矢量.每个标签可以是1或-1.

3 -如果y*a <= 0则测试的合理性是检查感知器是否正确分类了某个样本.如果不是 - 感知器的权重被修改.

更多关于第三个问题

感知器算法背后的想法如下:

一个.我们迭代样本MaxIter次.

湾 感知器通过将每个样本与权重向量W相乘并添加偏差b来对每个样本进行分类.结果被分配到变量a中.

C.每个样本的预测可以是1或-1.它由符号(a)计算.在这个阶段,我们检查分类的正确性.

如果y*a> 0表示y = sign(a).换句话说,预测的分类是正确的,我们继续下一个样本.

但是,如果y*a <= 0,则意味着感知器无法预测正确的标签.在这种情况下,算法会改变感知器的权重,使它们与我们未能分类的样本更加兼容.