为什么权重向量与神经网络中的决策平面正交

问题描述 投票:28回答:3

我是神经网络的初学者。我正在学习感知器。我的问题是为什么权重向量垂直于决策边界(超平面)?我提到了很多书,但都提到重量向量与决策边界垂直,但没有人说为什么?

任何人都可以给我一本书的解释或参考吗?

machine-learning neural-network artificial-intelligence perceptron biological-neural-network
3个回答
33
投票

权重只是定义分离平面的系数。暂时忘掉神经元,只考虑N维平面的几何定义:

w1*x1 + w2*x2 + ... + wN*xN - w0 = 0

您也可以将其视为点积:

w*x - w0 = 0

其中wx都是长度为N的向量。该等式适用于平面上的所有点。回想一下,我们可以将上面的等式乘以一个常数,它仍然成立,因此我们可以定义常数,使得矢量w具有单位长度。现在,取出一张纸,绘制你的x-y轴(上述方程中的x1x2)。接下来,在原点附近画一条线(2D中的一个平面)。 w0只是从原点到平面的垂直距离,而w是从原点沿垂直方向指向的单位向量。如果你现在从原点到平面上的任何点绘制一个矢量,那个矢量与单位矢量w的点积将总是等于w0所以上面的等式成立,对吗?这只是平面的几何定义:定义垂直于平面(w)的单位向量和从原点到平面的距离(w0)。

现在我们的神经元只是代表与上述相同的平面,但我们只是略微区别地描述变量。我们将x的组成部分称为“输入”,w的组成部分是我们的“权重”,我们将距离w0称为偏差。这里的所有都是它的。

除了你的实际问题,我们并不关心飞机上的点。我们真的想知道飞机的哪一侧有一个点。虽然w*x - w0在平面上恰好为零,但它将在平面的一侧具有正值,而在另一侧具有负值。这就是神经元激活功能的来源,但这超出了你的实际问题。


7
投票

直观地,在二元问题中,权重向量指向'1'类的方向,而当指向远离权重向量时找到'0'类。因此,决策边界应垂直于权重向量绘制。

请参阅图像以获得简化示例:您的神经网络只有1个输入,因此具有1个权重。如果权重为-1(蓝色向量),那么所有负输入将变为正,因此整个负频谱将被分配给'1'类,而正频谱将被分配为'0'类。因此,2轴平面中的决策边界是穿过原点(红线)的垂直线。简单地说它是垂直于权重向量的线。

让我们通过几个值来讨论这个例子。如果所有inputs * weights的总和大于0(默认阈值),则感知器的输出为1级,否则如果输出小于阈值0,则类为0.您的输入值为1.应用的权重这个单输入是-1,所以1 * -1 = -1小于0.输入因此被赋予类0(注意:类0和类1可能刚刚被称为类A或类B,不要将它们与输入混淆和重量值)。相反,如果输入为-1,则input * weight-1 * -1 = 1,大于0,因此输入分配给类1.如果尝试每个输入值,则会看到此示例中的所有负值都有输出大于0,所以它们都属于1类。所有正值的输出都小于0,因此将被归类为0类。绘制分隔所有正负输入值(红线)和你会看到这条线垂直于权重向量。

另请注意,权重向量仅用于修改输入以适合所需输出。没有重量矢量会发生什么?输入1将导致输出1,其大于阈值0,因此类为“1”。

this page上的第二张图片显示了一个具有2个输入和偏差的感知器。第一个输入与我的例子具有相同的权重,而第二个输入的权重为1.相应的权重向量与决策边界一起如图所示改变。由于增加了1的偏差,决策边界也被转换为右边界。


1
投票

虽然问题是在2年前提出的,但我认为很多学生会有同样的疑问。我达成了这个答案,因为我问了同样的问题。

现在,想想X,Y(笛卡尔坐标系是一个坐标系,它通过一对数字坐标在平面中唯一地指定每个点,这些坐标是从点到两条固定垂直有向线[from Wikipedia]的有符号距离) 。

如果Y = 3X,在几何Y中垂直于X,那么让w = 3,然后Y = wX,w = Y / X,如果我们想要绘制X,w之间的关系,我们将有两个垂直线,就像当我们绘制X,Y之间的关系。所以总是把w系数看作垂直于X和Y.

© www.soinside.com 2019 - 2024. All rights reserved.