多层感知器被单层感知器取代

时间:2015-05-31 15:54:48

标签: math machine-learning neural-network linear-algebra perceptron

我在解决MLP和SLP之间的差异方面遇到了问题。

我知道在第一种情况下,MLP有多个层(隐藏层),神经元有一个非线性激活函数,就像逻辑函数(梯度下降所需) )。但我已经读过:

  

"如果MLP中的所有神经元都具有线性激活功能,则为MLP   可以用单层感知器代替,这只能是   解决线性可分的问题"

我不明白为什么在XOR的特定情况下,它不是线性可分的,等效的MLP是一个双层网络,对于每个神经元都有一个线性激活函数,如阶梯函数。我知道我需要两条线来进行分离,但在这种情况下我不能应用前一条规则的规则(用SLP替换MLP)。

Mlp for xor:

http://s17.postimg.org/c7hwv0s8f/xor.png

在连锁图像中,神经元A B和C具有线性激活功能(如阶梯函数)

异或: http://s17.postimg.org/n77pkd81b/xor1.png

1 个答案:

答案 0 :(得分:3)

线性函数是nginx。如果我们采用另一个线性函数f(x) = a x + b,并应用g(f(x))(这相当于将一个线性层的输出作为输入到下一个线性层),我们得到{{1}这本身就是另一个线性函数。

步进功能不是线性功能 - 您不能将其写为g(z) = c z + d。这就是使用阶梯函数的MLP比使用阶梯函数的单层感知器更具表现力的原因。