我试图通过教授提供的示例来理解感知器学习算法。这是我的理解。我的理解正确吗?
可以说我有输入
x1 x2结果(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结果(y)权重
1 3 +1 [1,3]
-1 -2 -1 [3,-1]
1 -1 1 [3,-1]
-2 1 -1 [5,2]
我的理解是对的吗?还是我在进行权重选择时犯了错误?
看来您所做的是正确的,但是有很多评论:
您声明,最初,w0 = 0。这没有多大意义,因为您稍后将其添加到维度2的向量中。我猜测您的意思是w0 = [0,0]。
供参考:
更为通用的感知器学习算法不会加/减错误分类的实例,而是对缩放版本乘以0 <α≤1进行缩放。您的上述算法使用α= 1。
通常人为地添加感知器输入(常数为1项)。因此,如果原始输入是2维向量,则需要处理3维向量,其中每个向量的第一项是1。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句