Deep Learning: Chapter 6 深度前馈网络(前言)

给定足够大的模型和足够大的标注训练数据集,我们可以通过深度学习将输入向量映射到输出向量,完成大多数对人来说能迅速处理的任务。其他任务,比如不能被描述为将一个向量与另一个响亮相关联的任务,或者对于一个人来说足够困难并需要时间思考和反复琢磨才能完成的任务,现在仍然超出了深度学习的能力范围。


深度前馈网络(前馈神经网络/多层感知机),是典型的深度学习模型。这种模型被称为前向(forward)的,是因为信息流过x的函数,流经用于定义f的中间计算过程,最终到达输出y。在模型的输出和模型本身之间没有反馈连接。当前馈神经网络被扩展成包含反馈连接时,它们被称为循环神经网络。

训练样本直接指明了输出层在每一点x上必须做什么;它必须产生一个接近y的值。但是训练数据并没有直接指明其它层应该怎么做。

一种理解前馈网络的方式是从线性模型开始,并考虑如何克服它的局限性。为了扩展线性模型来表示x的非线性函数,我们可以不把线性模型用于x本身,而是用于在一个变换后的输出h(x)上,这里h是一个非线性变换。同样,我们可以使用核技巧,来得到一个基于隐含地使用h映射的非线性学习算法,我们可以认为h提供了一组描述x的特征,或者认为它提供了x的一个新的表示。

接下来的问题就是如何选择映射h。(1)其中一种选择是使用一个通用的h,其中的问题是如果h(x)具有足够高的维数,我们总有能力来拟合训练集,但是对于测试集的泛化往往不佳;(2)另一种选择是手动设计h,这种方法对于每个单独的任务都需要人们长时间的努力,并且不同领域之间很难迁移;(3)深度学习的策略是去学习h。

首先,训练一个前馈网络至少需要做和线性模型同样多的涉及决策:选择一个优化模型、代价函数以及输出单元的形式。前馈网络已经引入了隐藏层的概念,这需要我们去选择用于计算隐藏层值的激活函数。我们还必须设计网络的结构,包括网络应该包含多少层、这些层应该如何连接,以及每一层包含多少个单元。

猜你喜欢

转载自blog.csdn.net/weixin_40516558/article/details/80151215
今日推荐