MLP入门:多层人工神经网络模型及算法公式推导(正向传播与逆向传播过程详解) 您所在的位置:网站首页 神经元之间的连接结构图 MLP入门:多层人工神经网络模型及算法公式推导(正向传播与逆向传播过程详解)

MLP入门:多层人工神经网络模型及算法公式推导(正向传播与逆向传播过程详解)

2023-07-28 14:08| 来源: 网络整理| 查看: 265

多层感知机MLP(Multi-Layer Perceptron)也叫多层人工神经网络。一般的,常见的神经网络是如下图所示的层级结构。由输入层、隐藏层(可有多层)和输出层组成。神经网络中最基本的成分是神经元(neuron)。每层神经元与下一层神经元全互连,神经元之间不存在同层连接,也不存在跨层连接。这样的神经网络结构通常称为“多层前馈神经网络”(multi-layer feedforward neural networks),(前馈并不意味着网络中信号不能向后传,而是指网络拓扑结构上不存在环或回路),其中,输入层神经元仅接收外界输入,不进行函数处理;隐藏层和输出层则包含功能神经元,能将接收到的总输入值与一定的阈值进行比较,然后通过“激活函数”(activation function)处理以产生神经元的输出。若将阈值也作为输入信号在神经网络中标出,则除输出层之外,各层会多出一个固定输入为-1的“哑结点”(dummy node),该节点与下一层的连接权即为阈值。这样权重和阈值的学习就可以统一为权重的学习。为方便后续解释,下图中并未标出哑结点。

下图给出“单隐层网络”模型并解释各层功能及其作用方式:

在这里插入图片描述 输入层拥有d个神经元,代表输入样本在d个属性下的值; 输入层信号通过带权重的连接传递至隐藏层,隐藏层神经元分别接收到各自的总输入值ah(h=1,2…,q),将其与神经元的阈值进行比较,然后通过“激活函数”处理产生相应的输出bh(h=1,2,…,q); 隐藏层输出信号同样通过带权重的连接传递至输出层,输出层神经元分别接收各自的总输入值co(o=1,2,…,l),并通过激活函数处理产生最后输出y’o(o=1,2,…l),即对该样本x的预测y’(这里的y’为 l 维列向量)。输出层神经元代表分类结果,其个数取决于最终分类标签的个数。 神经网络的学习过程,就是根据训练数据来调整神经元之间的“连接权”(connection weight)以及每个功能神经元的阈值;换言之,神经网络“学”到的东西,蕴涵在连接权与阈值中。

为了方便理解,这里举出该神经网络模型的应用实例:识别手写数字。 假设样本为n个手写数字图像,每个数字图像由28×28像素组成,每个像素由灰度值表示。我们把28×28的像素展开变成一个有784个维度的一维行向量,即一个样本向量,那么此时输入层的神经元个数就会有784个,即图中的d=784。因为是识别单个手写数字,其结果会有0-9这十种情况,因此输出层就会有10个神经元,即图中的 l=10。至于隐藏层的层数以及单元数则作为要优化的额外超参数,可以通过交叉验证技术解决,在此不对其进行详细展开。

关于激活函数: 理想的激活函数是如下图(a)所示的阶跃函数,它将输入值映射为输出值“0”或“1”,显然“1”对应于神经元兴奋,“0”对应于神经元抑制。然而,阶跃函数具有不连续、不光滑等不太好的性质,因此实际常用Sigmoid函数作为激活函数,如下图(b)所示。有时,输出层神经元也采用线性激活函数,即直接以输入值c与阈值θ的比较结果作为最后的预测值y’输出。 在这里插入图片描述



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有