11.2 默认的基准模型
确定性能度量和目标后,任何实际应用的下一步是尽快建立一个合理的端到端的系统。在本节中,我们提供了关于不同情况下使用哪种算法作为第一基准方法的推荐。值得注意的是,深度学习研究进展迅速,所以本书出版后很快可能会有更好的默认算法。
根据问题的复杂性,项目开始时可能无须使用深度学习。如果只需正确地选择几个线性权重就可能解决问题,那么项目可以开始于一个简单的统计模型,如逻辑回归。
如果问题属于“AI-完全”类的,如对象识别、语音识别、机器翻译等,那么项目开始于一个合适的深度学习模型,效果会比较好。
首先,根据数据的结构选择一类合适的模型。如果项目是以固定大小的向量作为输入的监督学习,那么可以使用全连接的前馈网络。如果输入已知的拓扑结构(例如,输入的是图像),那么可以使用卷积网络。在这些情况下,刚开始可以使用某些分段线性单元(ReLU或者其扩展,如Leaky ReLU、PReLU和maxout)。如果输入或输出是一个序列,可以使用门控循环网络(LSTM或GRU)。
具有衰减学习率以及动量的SGD是优化算法一个合理的选择(流行的衰减方法有,衰减到固定最低学习率的线性衰减、指数衰减,或每次发生验证错误停滞时将学习率降低2~10倍,这些衰减方法在不同问题上好坏不一)。另一个非常合理的选择是Adam算法。批标准化对优化性能有着显著的影响,特别是对卷积网络和具有sigmoid非线性函数的网络而言。虽然在最初的基准中忽略批标准化是合理的,然而当优化似乎出现问题时,应该立刻使用批标准化。
除非训练集包含数千万以及更多的样本,否则项目应该在一开始就包含一些温和的正则化。提前终止也被普遍采用。Dropout也是一个很容易实现,且兼容很多模型和训练算法的出色正则化项。批标准化有时也能降低泛化误差,此时可以省略Dropout步骤,因为用于标准化变量的统计量估计本身就存在噪声。
如果我们的任务和另一个被广泛研究的任务相似,那么通过复制先前研究中已知性能良好的模型和算法,可能会得到很好的效果,甚至可以从该任务中复制一个训练好的模型。例如,通常会使用在ImageNet上训练好的卷积网络的特征来解决其他计算机视觉任务(Girshick et al.,2015)。
一个常见问题是项目开始时是否使用无监督学习,我们将在第三部分进一步探讨这个问题。这个问题和特定领域有关。在某些领域,比如自然语言处理,能够大大受益于无监督学习技术,如学习无监督词嵌入。在其他领域,如计算机视觉,除非是在半监督的设定下(标注样本数量很少)(Kingma et al.,2014;Rasmus et al.,2015),目前无监督学习并没有带来益处。如果应用所在环境中,无监督学习被认为是很重要的,那么将其包含在第一个端到端的基准中。否则,只有在解决无监督问题时,才会第一次尝试时使用无监督学习。在发现初始基准过拟合的时候,我们可以尝试加入无监督学习。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论