实用卷积神经网络:运用Python实现高级深度学习模型
上QQ阅读APP看书,第一时间看更新

1.1 创建神经网络块

神经网络由很多人工神经元组成。它是大脑的一种表征还是某种知识的数学表征?这里将试图讲解如何在实践中使用神经网络。卷积神经网络(CNN)是一种非常特殊的多层神经网络。CNN设计的目的是,以最小的数据处理代价直接从图像中识别出视觉模式。此网络的图形表示如图1-1所示。神经网络领域最初是受生物神经系统建模目标所启发的,但是从那时起,它就向不同的方向发展,成为一个工程问题,并在机器学习任务中取得良好效果。

图1-1 CNN的图形表示

人工神经元是一个接收输入并产生输出的函数。使用神经元的个数取决于要解决的问题。可能少至两个,也可能多至几千。有很多种将人工神经元连接在一起构建CNN的方法。一种常用的拓扑结构是前馈网络。

每个神经元接收来自其他神经元的输入。每个输入项对神经元的影响由权重控制,权重可以是正的也可以是负的。整个神经网络通过理解这种范式进而执行有效的计算来识别对象。现在我们把这些神经元连接成一个网络,称之为前馈网络。这意味着每一层的神经元将其输出向前传递到下一层,直到得到最终输出。相应公式如下:

前向传播神经元的实现如下: