模型部署模式
文章描述两种常见模式 通过集成和生产移动ML人工品异步修改模型和代码意味着多模式ML开发过程可能跟随
模型由代码生成,但生成模型人工品和生成代码可异步操作即新模式版本和代码修改可能不会同时发生例例考虑下列假想
检测欺诈交易 开发ML管道 每周重试模型代码可能不常修改,但模型每周可能接受再培训以输入新数据
创建大型深度神经网络分类文档培训模式计算成本耗时,再培训模式极难实现代码部署、服务和监测此模型无需再培训即可更新
两种模式是否不同模型人工品或训练代码生成模型人工推广制作
部署代码
在大多数情况下 Databricks建议使用部署代码方法这种方法被纳入推荐MLOPS工作流.
以这种模式开发模型代码代码转置后编译模型在每种环境都接受训练:初始开发环境作为模型开发的一部分,中转(有限子集数据)作为集成测试的一部分,生产环境(全制作数据)制作最终模型
长处 :
在限制获取生产数据的组织中,这种模式允许模型接受生产环境生产数据培训
自动化模型再培训安全性强,因为培训代码经过审查、测试并核准制作
辅助代码沿袭模式训练代码都经过集成测试
缺陷:
数据科学家向合作者传递代码学习曲线可陡峭预定义项目模板和工作流有帮助
数据科学家也必须能够审查生产环境培训结果,因为他们有识别和解决ML特有问题的知识。
状态要求模型全编译时训练使用混合方法,即部署代码集编、培训模型编译后再部署模型编译这种方法省下生产培训成本,但增加置件操作成本
部署模型
模型人工编程通过开发环境培训代码生成人工制品先在中转环境测试后投入生产
可考虑此选项,如果下列一个或多个应用
模型训练费用昂贵或难复制
所有工作都用单数据键工作空间完成
您不工作外部回复或CI/CD进程
长处 :
简单交换数据科学家
模型培训费用昂贵时,只需培训模型一次
缺陷:
如果无法从开发环境获取制作数据(出于安全原因可能属实),则该架构可能不可行。
自动化模型再培训难处理开发环境可自动化再培训,但负责模型制作团队可能不接受生成模型为制作准备
支持代码,例如用于特征工程、推理和监测的管道需要单独部署制作
下图对比代码生命周期 以上部署模式 跨不同执行环境
图中显示环境是跨步运行的最后环境举例说,在部署模型模式中,终端单元和集成测试是在开发环境中进行的。部署代码模式中,单元测试和集成测试在开发环境中运行,最后单元和集成测试在中转环境中实施