感知器算法/线性回归的基本直觉

basic intuition for perceptron algorithm / linear regression

我正在研究神经网络,我遇到了以下 xorcise(那是个笑话!)问题。

问朋友是否需要实现感知机算法来解决,他说"no- just think about it"。好吧,我想了想,但我的小猴脑只能想出以下几点:

我朋友的话让我觉得这是一个技巧问题,到目前为止我们讨论的唯一技巧是感知器无法执行 XOR 函数。

这是这个问题的目的吗?

如何解决这个问题?...

A simple Perzeptron with two inputs x₁, x₂,  
BIAS, and transfer function y = f(z) = sgn(z), 
separates the two dimensional input space into 
two parts with help of a line g. 

Calculate for this Perzeptron the weights 
w1, w2, wb, so that the line separates 
the given 6 patterns (pX1, pX2; Py) into 
two classes:

1X = (0,  0;  -1), 
2X = (2, -2; +1), 
3X = (7 + ε, 3 - ε; +1), 
4X = (7  -  ε, 3 + ε; -1), 
5X = (0, -2 - ε; +1), 
6X = (0 - ε, -2; -1), 


Remark: 0 < ε << 1. 

如果绘制点图,您会看到所有 -1 都在左上角,所有 +1 都在右下角。您可以绘制一条与 (0, -2) 和 (7,3) 相交的线,它给出表达式:

y = 5x/7 - 2

这足以跳过 运行 通过任何算法。

预测 +1 次出现的直线方程由下式给出:

y < 5x/7 - 2 

上面的行将二维 space 一分为二。阴影区域在线下方,并且该线向右上方移动。所以对于任意点,你只需要弄清楚它是否在阴影区域(正预测 = +1)。

比如说,(pX1, pX2) = (35, 100),

1) 一种方法是将 pX1 重新代入公式(对于 x' = pX1)以找到直线上最接近的部分(其中 y=5x/7-2):

y' = 5(35)/7 - 2
y' = 23

由于直线上的点是(35, 23),而我们感兴趣的点是(35, 100),所以它在线上。换句话说,pX2 不 < 23,预测 returns -1.

2) 绘制 y'=100,所以

100 = 5x/7-2 
x = 142.8

线点=(142.8, 100),你的点(35, 100),我们的点在线点的左边,还是落在阴影区域之外。

3) 您甚至可以绘制它并目视检查它是否在阴影区域

重点是必须进行一些计算来检查它是 IN 还是 OUT。这就是线性回归的意义所在。机器应该很容易弄清楚,因为你只是在计算一件事。有了公式后进行预测应该很快。最难的部分是确定直线的公式,我们已经通过绘制点和看到一个明显的解决方案来完成。如果您使用机器学习,在这种情况下需要更长的时间。