深度学习与Keras实践|第三期:全连接层简介

1. 一个相对具体的模型——如何连接:

在第一期中,我们曾实现过如下的神经网络:

输入层 - Dense 4,relu,100
输出层 - Dense 5,softmax

这两个层都是全连接层,我们采用一种更加直观的表示方式展现这两个层是如何连接在一起的:

如图所示,输入层具有四个单元,输出层具有五个单元,作为全连接层,输入层的每个单元都与下一层的所有单元相连,输出层的每个单元也都与上一层的所有单元相连。这就是全连接层直观的特点。

当这个模型用于多分类任务时,输出层的五个单元意味着最终的输出结果可以被划分到五个类别中的一个。


2.一个更具体的模型:全连接时到底做了什么?

在上面的模型中,我们看到了采用全连接层时模型的一个稍微具体的形式。但是,我们现在的模型仅仅展示给我们许多复杂的连接线(即使在我们的简单例子中,连接线也有20条之多),而一组数据信息在经过这些连接线、从一个处理层传递到下一个处理层时到底经历了什么,我们仍然不清楚。

实际上,输入的数据经历的过程可以用下面这个数学表达式来表示:

  • output = activation(input · kernel + bias)

其中,activation是按逐个元素来计算的激活函数;kernel是由网络层创建的权值矩阵,权值矩阵将与输入该层的input矩阵进行点乘;bias是偏置量。下面,我们将具体解析这个数学表达式,由于是一个简单介绍,所以我们采用比较简单的形式:

  • 假设我们的输入数据是一个向量,我们对模型进行一个合理化简:
    在这里插入图片描述

  • 我们首先要考虑的是输入的input矩阵是如何与权值矩阵kernel作用的:
    在这里插入图片描述
    在图中,我们有input矩阵X = [ X1 X2 ],权值矩阵kernel = [ K11 K12 K13 ; K21 K22 K23 ],在此图中,连接线为我们直观的展示了input矩阵与kernel矩阵的运算过程,我们不难发现这其实是一个矩阵乘法:

    • X·kernel = [ X1·K11 + X2·K21 ; X1·K12 + X2·K22 ; X1·K13 + X2·K23]
      = [ Y1 Y2 Y3]。
  • 在经过了连接线(实际上是输入矩阵与权值矩阵的乘法运算)的线性作用后,我们得到的数加上偏置矩阵所对应的值后再经过一个激活函数的非线性运算,就得到了最终的输出结果——这一个全连接层经过“连接线的运算”之后得到的输出就是下一个层的输入。

我们看到,在全连接层之间的运算中,权值矩阵的值至关重要。这些参数也是我们在训练模型时的主要关注点。可以想象到,当层数(即深度)与单元数(即宽度)增加时,我们要关注的参数量将变得十分惊人。


3. 这样做有什么意义?

数据在我们的全连接层模型中到底经历了什么此时已经比较清晰了,但我们还是无法从现在的模型中直观的看到这些运算过程的意义。下面我们就对这个问题进行一些讨论。

让我们退几步。回想前两期的内容,我们知道全连接层是对人体的神经系统中的处理单元的模仿。要想明白全连接层为什么会起作用,我们或许需要通过简单的了解我们体内的神经网络来看看我们用全连接层搭建起来的人工神经网络与我们体内大量神经元组成的神经网络之间有什么联系。

在这里插入图片描述
这是人体内一个神经元的简单图示。人类的神经系统由数十亿个这样的小系统组成,而这些小系统又集合起来形成了功能单元。在这个图示中,细胞体作为数据处理的中心,在检测到的由树突流入的微弱电信号达到某个预定的阈值时,神经元将被激发,并通过轴突发送一个电信号,这个信号顺着轴突向与它接触的、来自其它神经元的树突流动。实际上,在这种轴突-树突结构之间还有一个充满导电流体的间隙,而这种流体的导电率受到一系列激素或者药物的影响。我们将轴突-树突结构以及至关重要的间隙称为突触。突触通过激素等调节导电水平,进而调节一个神经元对另一个神经元的影响程度。

将这个生物模型与我们构建的模型进行对比,我们发现实际上突触就相当于权值向量所提供的关键参数——权重。人类能通过其复杂的神经系统对某个信息做出最恰当的反应,实际上就是由于自然选择下漫长的进化或个人长期的习惯而“训练”出了一组最恰当的“权重”——突触的导电水平。而在我们的模型中,各单元的“连接线”以及权值矩阵赋给每条连接线的权重恰好模拟了突触结构——信息通过突触在不同的功能单元间传递,并且这种传递是可以调节的。同时,激活函数与偏置值也能使我们能更加灵活的模拟神经元的线性或者非线性的激发。这样,就像人面对信息的反应可以被训练一样,我们的模型面对输入的信息也可以通过训练获得更好的输出。

当然,只有权值矩阵可以进行自我更新时,这样的训练才是有意义的。如何通过优化器与评估函数等进行自我更新,我们将在后续内容中进行介绍。同时我们也要明白我们的模型只是对人体复杂神经网络的一个简单模拟或者部分模拟,所以其功能实际上是有限的——比如对输入的图片进行一个适度的分类等等。


发布了16 篇原创文章 · 获赞 0 · 访问量 665

猜你喜欢

转载自blog.csdn.net/weixin_43628432/article/details/103842830