验证感知器学习示例

我正在通过一位教授提供的示例来理解感知器学习算法。这是我的理解。能有人检查一下我的理解是否正确吗?

假设我有以下输入

x1 x2 result(y)

1 3 +1

-1 -2 -1

1 -1 1

-2 1 -1

现在我使用下面的算法来获取权重

w0=0

1)y1(w0x1)<=0

因此 w1=w0+y1*x1=[1,3]

2)y2(w1,x2)<=0

因此 w2=w1+y2*x2=[3,-1]

3)y3(w2,x2)>=0

因此无需迭代

4)y4(w2,x4)<=0

因此 w3=w2+y4*x4=[5,-2]

因此现在我的权重是

x1 x2 result(y) weights

1 3 +1 [1,3]

-1 -2 -1 [3,-1]

1 -1 1 [3,-1]

-2 1 -1 [5,2]

我的理解正确吗?还是我在选择权重时犯了错误,或者在进行迭代时犯了错误?


回答:

看起来你做的是正确的,但有一些评论需要注意:

  1. 你提到最初的w0 = 0,这不太合理,因为你后来将其加到维度为2的向量上。我猜你是指w0 = [0, 0]

  2. 供参考:

    1. 更一般的感知器学习算法不会直接加减分类错误的实例,而是对其进行缩放并乘以某个0 < α ≤ 1。你上面的算法使用了α = 1

    2. 通常会在感知器输入前人为地添加一个常数1项。因此,如果原始输入是维度为2的向量,你将处理维度为3的向量,其中每个向量的第一个项目是1。

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注