首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用单层Perceptron代替多层Perceptron

用单层Perceptron代替多层Perceptron
EN

Stack Overflow用户
提问于 2015-05-31 15:54:47
回答 1查看 2.1K关注 0票数 1

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

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

如果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

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-05-31 19:13:12

线性函数是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。这就是为什么使用step函数的MLP比使用step函数的单层感知器更具有表现力。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30559405

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档