多层感知器

感知器可以相互连接在一起构成多层感知器(Multi-Layer Perception,简称MLP)。多层感知器一般有很多个层次,可以看成是神经网络的基本形式。

单个感知器具有一定的拟合能力,因而,多层感知器有更为强大的拟合能力,可以用来解决更为复杂的问题。

下图为一个多层感知器的示意图,它具有输入层,输出层以及三个隐藏层次。

多层感知器的输入也是一个向量,即( 1,x1,…xn ),这跟单个感知器的输入是一样的。

在隐藏层,每一个节点都相当于一个感知器。因为每一个感知器都有一些参数,所以整个多层感知器的参数数量是比较多的,相当于感知器的很多倍。

输出层的节点也可以是感知器,还可以根据实际的应用做出调整。比如在分类任务中,多层感知器的输出层经常是一个softmax函数。

多层感知器的隐藏层节点的连接经常是“全连接”的,即把上一层节点的输出全部连接在一起,作为下一层节点的输入部分。“全连接”虽然比较简单,但是在神经网络中经常用到这个感念,因此还需要注意。

当然多层感知器的结构也可以不是全连接的形式,可以去掉一些节点和连接,如下图所示:

下图为输出层接softmax的多层感知器,它的输入为一个长度为784的向量,另外还有一个偏置项。+1代表偏置参数的系数为1,每一层都带有一个偏置项。

我们来看一下它的数学表达式:

第一个隐藏层:

H1=ϕ(W1X+b1),

其中ϕ代表激活函数,常见的有sigmoid、tanh或ReLU等函数;

第二个隐藏层:

H2=ϕ(W2H1+b2);

最后,再经过输出层,得到:

Y=softmax(W3H2+b3),

即为最后的分类结果向量。

激活函数常见的有sigmoid、tanh或ReLU等,如下图所示:

Softmax函数,如下图所示:

谢谢阅读,欢迎交流讨论。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181019G1ICTO00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

同媒体快讯

扫码关注腾讯云开发者

领取腾讯云代金券