【问题标题】:Multilayer Perceptron replaced with Single Layer Perceptron多层感知器替换为单层感知器
【发布时间】:2015-08-14 01:56:13
【问题描述】:

我在理解 MLP 和 SLP 之间的区别时遇到了问题。

我知道在第一种情况下,MLP 有不止一个层(隐藏层),并且神经元有一个非线性激活函数,如逻辑函数(梯度下降所需要的) )。但我读过:

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

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

Xor 的 Mlp:

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

在链接图像中,神经元 A B 和 C 具有线性激活函数(如阶跃函数)

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

【问题讨论】:

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


    【解决方案1】:

    线性函数是f(x) = a x + b。如果我们采用另一个线性函数g(z) = c z + d,并应用 g(f(x))(这相当于将一个线性层的输出作为下一个线性层的输入),我们得到g(f(x)) = c (a x + b) + d = ac x + cb + d = (ac) x + (cb + d),它位于本身是另一个线性函数。

    阶跃函数不是线性函数 - 你不能写成a x + b。这就是为什么使用阶跃函数的 MLP 比使用阶跃函数的单层感知器更具表现力。

    【讨论】:

      猜你喜欢
      • 2012-04-30
      • 1970-01-01
      • 1970-01-01
      • 2019-04-13
      • 2014-12-06
      • 2023-03-03
      • 2011-07-01
      • 2011-11-15
      相关资源
      最近更新 更多