乐读窝

深度学习

乐读窝 > 文学理论 > 深度学习

11.2 默认的基准模型

书籍名:《深度学习》    作者:伊恩.古德费洛



确定性能度量和目标后,任何实际应用的下一步是尽快建立一个合理的端到端的系统。在本节中,我们提供了关于不同情况下使用哪种算法作为第一基准方法的推荐。值得注意的是,深度学习研究进展迅速,所以本书出版后很快可能会有更好的默认算法。

根据问题的复杂性,项目开始时可能无须使用深度学习。如果只需正确地选择几个线性权重就可能解决问题,那么项目可以开始于一个简单的统计模型,如逻辑回归。

如果问题属于“AI-完全”类的,如对象识别、语音识别、机器翻译等,那么项目开始于一个合适的深度学习模型,效果会比较好。

首先,根据数据的结构选择一类合适的模型。如果项目是以固定大小的向量作为输入的监督学习,那么可以使用全连接的前馈网络。如果输入已知的拓扑结构(例如,输入的是图像),那么可以使用卷积网络。在这些情况下,刚开始可以使用某些分段线性单元(ReLU或者其扩展,如Leaky  ReLU、PReLU和maxout)。如果输入或输出是一个序列,可以使用门控循环网络(LSTM或GRU)。

具有衰减学习率以及动量的SGD是优化算法一个合理的选择(流行的衰减方法有,衰减到固定最低学习率的线性衰减、指数衰减,或每次发生验证错误停滞时将学习率降低2~10倍,这些衰减方法在不同问题上好坏不一)。另一个非常合理的选择是Adam算法。批标准化对优化性能有着显著的影响,特别是对卷积网络和具有sigmoid非线性函数的网络而言。虽然在最初的基准中忽略批标准化是合理的,然而当优化似乎出现问题时,应该立刻使用批标准化。

除非训练集包含数千万以及更多的样本,否则项目应该在一开始就包含一些温和的正则化。提前终止也被普遍采用。Dropout也是一个很容易实现,且兼容很多模型和训练算法的出色正则化项。批标准化有时也能降低泛化误差,此时可以省略Dropout步骤,因为用于标准化变量的统计量估计本身就存在噪声。

如果我们的任务和另一个被广泛研究的任务相似,那么通过复制先前研究中已知性能良好的模型和算法,可能会得到很好的效果,甚至可以从该任务中复制一个训练好的模型。例如,通常会使用在ImageNet上训练好的卷积网络的特征来解决其他计算机视觉任务(Girshick  et  al.,2015)。

一个常见问题是项目开始时是否使用无监督学习,我们将在第3部分进一步探讨这个问题。这个问题和特定领域有关。在某些领域,比如自然语言处理,能够大大受益于无监督学习技术,如学习无监督词嵌入。在其他领域,如计算机视觉,除非是在半监督的设定下(标注样本数量很少)(Kingma  et  al.,2014;Rasmus  et  al.,2015),目前无监督学习并没有带来益处。如果应用所在环境中,无监督学习被认为是很重要的,那么将其包含在第一个端到端的基准中。否则,只有在解决无监督问题时,才会第一次尝试时使用无监督学习。在发现初始基准过拟合的时候,我们可以尝试加入无监督学习。