美文网首页
机器学习模型部署

机器学习模型部署

作者: 梦游的猫头鹰 | 来源:发表于2020-10-30 09:10 被阅读0次

    开局一张图,简明扼要。

    一、常见模型部署方案

    1、利用Java、Spark等创建微服务API接口输出。

    2、算法平台工作流部署,如蚂蚁金服的PAI平台,可实现业务同学对workflow自助搭建。其他常见决策引擎:SMG3、FICO的Blaze、SAS的Viya,这种统一的解决方案是比较好的,基本上模型监控、版本管理的功能都有提供。

    3、PMML部署上线,PMML(Predictive Model Markup Language),预测模型标记语言,sklearn2pmml库(离线模型可适用joblib或pkl)导出PMML文件(xml格式),Java端采用jpmml/jpmml-evaluator项目,载入 PMML 文件。

    特征工程可以线上线下分开做,也可以 DataFrameMapper 的方式实现特征工程,导出到PMML模型文件中,缺点是只可以使用Sklearn包中提供的方法。

    对于神经网络的模型,可以查阅参考文章2,使适用keras2pmml库。

    4、也看到有人分享BentoML、python-httpserver(Java通过Restful方式调用python,适用于并发量小的情况)等方法。

    上线注意事项:

    1、数值精度(例如小数点后3位)、检验变量输出一致性、分数分布一致性,定期监控线上输出结果,如有异常及早发现

    2、灰度上线,一般会dry run(只打分,不决策)一段时间,等一致性评估达到预期标准后,才切换为正式上线。

    二、模型部署实例

    1、参考资料3有很详细的步骤,思路是在py环境下,保存model,并用flask做了个前端,接收参数,属于第一部分的4中类型。

    2、利用docker部署,参考资料5,其实和1差不多,就是不依赖于环境,更鲁棒。

    附,参考资料

    1、风控模型上线部署流程,https://zhuanlan.zhihu.com/p/92691256

    2、如何把神经网络keras模型转PMML文件?,https://mp.weixin.qq.com/s/hlv_J6BAQnr155SZ5Kv1NA

    3、模型部署3/3-手把手实现利用flask深度学习模型部署,https://zhuanlan.zhihu.com/p/273252334

    4、使用PMML部署机器学习模型实例,https://zhuanlan.zhihu.com/p/258946621

    5、如何使用Kubernetes轻松部署深度学习模型,https://zhuanlan.zhihu.com/p/46749703

    相关文章

      网友评论

          本文标题:机器学习模型部署

          本文链接:https://www.haomeiwen.com/subject/nsqxvktx.html