返回介绍

数学基础

统计学习

深度学习

工具

Scala

二、默认的基准模型

发布于 2023-07-17 23:38:23 字数 1454 浏览 0 评论 0 收藏 0

  1. 根据问题的复杂性,项目开始时可能无需使用深度学习

    • 如果只需要正确选择几个线性权重就能解决问题,那么项目开始可以使用一个简单的统计模型,如逻辑回归
  2. 如果问题属于 “AI-完全”类型的,如对象识别、语音识别等,那么项目开始于一个合适的深度学习模型,则效果会比较好

  3. 根据数据结构选择一类合适的模型:

    • 如果是以固定大小的向量作为输入的有监督学习,那么可以使用全连接的前馈网络
    • 如果输入已知的拓扑结构(如图像),则可以使用卷积网络
    • 如果输入或者输出是一个序列,则使用门控循环网络(LSTM 或者 GRU)
  4. 刚开始时可以使用某些分段线性单元:如 ReLU或者其扩展

  5. 可以选择具有衰减学习率以及动量的SGD作为优化算法

    • 常见的衰减方法有:

      • 衰减到固定最低学习率的线性衰减
      • 指数衰减
      • 每次发生验证错误停滞时将学习率降低 2-10 倍的衰减策略
    • 另一种优化选择是 Adam算法

  6. batch normalization对优化性能有着显著的影响,特别是对于卷积网络和具有sigmoid非线性函数的网络而言

    • 最初的基准中,可以忽略batch normalization
    • 当优化似乎出现问题时,应立即使用batch normalization
  7. 除非训练集包含数千万或者更多的样本,否则项目一开始就应该包含一些温和的正则化

    • 建议采用早停策略
    • 建议采用dropout策略,它也兼容很多模型以及许多正则化项
    • batch normalization 有时可以降低泛化误差,此时可以省略dropout策略。因为用于 normalize的统计量估计本身就存在噪音
  8. 如果我们的任务和另一个被广泛研究的任务相似,那么通过复制之前研究中已知的性能良好的模型和算法,可能会得到很好的效果

    • 你可以从该任务中复制一个训练好的模型。如从ImageNet上训练好的卷积网络的特征来解决其他计算机视觉任务
  9. 对于是否使用无监督学习,和特定领域有关

    • 对于某些领域,如自然语言处理,能大大受益于无监督学习技术
    • 在其他领域,目前无监督学习并没有带来好处
    • 如果你所处理的应用,无监督学习是非常重要的,那么将其包含在第一个端到端的基准中;否则只有在解决无监督问题时,才第一次尝试使用无监督学习

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文