人工智能/模式识别/机器学习精华专题自然语言处理(NLP)

深度学习项目的生产级架构:开发训练评估模块

2020-01-28  本文已影响0人  6c643a7fc0e6

在生产中部署深度学习模型工作远远超过了训练性能良好模型的工作,为了部署生产级深度学习系统,需要设计和开发不同的模块,如下所示。

deep_learning_deploying_01.png

下图是生产级深度学习系统中不同模块的高级概述。

deep_learning_deploying_02.png

下面我们将介绍开发训练评估模块。

1 软件工程部分

深度学习项目的优选开发语言:Python,常用的编辑器有:

计算资源建议:

  1. 对于个人或初创企业:
  1. 对于大公司:

云服务提供商有:

2 资源管理部分

将免费资源分配给程序,资源管理可以选择:

3 深度学习框架部分

除非有充分的理由,否则请使用Tensorflow / Keras或PyTorch。下图显示了不同框架在发展和生产方面的比较。

deep_learning_deploying_03.png

4 实验管理部分

开发,训练和评估策略:

5 超参数微调部分

微调方法有:

支持微调的平台有:

6 分布式训练部分

  1. 数据并行性:在迭代时间过长时使用(tensorflow和PyTorch支持:Ray 分布式训练
  2. 模型并行度:模型不适合单个GPU的情况
  3. 其他解决方案:Horovod
上一篇 下一篇

猜你喜欢

热点阅读