查看原文
其他

直播回放 | 通用深度学习推理服务dl_inference开源项目解析

封宇 58AILab 2022-03-15


dl_inference 是58同城开源的通用深度学习推理服务,可在生产环境中快速上线由TensorFlow、PyTorch和Caffe框架训练出的深度学习模型,提供GPU和CPU两种部署方式,并且实现了模型多节点部署时的负载均衡策略,支持线上海量推理请求,dl_inference支撑了58同城各AI场景下日均超过10亿次的线上推理请求。

dl_inference开源项目地址:

      https://github.com/wuba/dl_inference

dl_inference文章介绍:

58同城技术委员会AI分会联合百林哲于2020年5月8日下午17:00-18:00举办了一期线上技术沙龙,58同城AI Lab后端高级工程师封宇直播分享了《通用深度学习推理服务dl_inference开源项目解析》,下面是直播录像回放。


录像回放

Q&A集锦

问题1:Tensorflow、PyTorch和Caffe几个接口之间是如何无缝衔接的?

解答:统一接入服务中,Tensorflow、PyTorch和Caffe这三种框架模型都有单独的接口,不同模型需要调对应模型框架接口才能完成预测。

问题2:请问数据都是结构化数据么?还是已经将非结构化数据做了处理?

解答:demo中的示例数据是需要将样本数据结构化转换成约定的对象来传输。

问题3:wide&deep推荐排序模型的性能怎么样?这里是预测了多少条数据呢?能再看看客户端和服务端怎么交互的吗?例如特征处理这一块。

解答:wide&deep推荐排序模型演示示例是平均耗时3ms,演示是预测单条数据。客户端与服务端如何交互以及特征处理可以查看项目中wide&deep的示例程序。

问题4:PyTorch请求第一次耗时比较高,这是什么原因呢?

解答:演示操作中模型都是刚部署的,PyTorch模型部署只是load模型,并没有加载模型参数和初始化网络结构,因此会在第一次请求来完成这个操作,类似Tensorflow推理也有这种情况存在。

问题5:这里都是用K8S部署,能不能不用K8S部署,例如像普通后端服务一样在物理机上部署,K8S有什么好处吗?

解答:不是使用的K8S部署的,是使用Docker来部署模型,可以像普通后端服务一样部署在物理机上,使用Docker部署方式可以简化环境安装部署,部署比较方便

问题6:在推理服务性能优化上有什么经验吗?

解答:Tensorflow模型上的性能调优,CPU若是Intel的可以考虑重新制作镜像添加相关指令集优化,以及使用Intel MKL加速库来对模型进行加速,同时可以考虑使用openVINO来对模型镜像优化。Nvidia GPU上可以考虑TensorRT来优化加速模型。

问题7:老师,我们当初选型为什么考虑pytorch?据说小米是使用caffe,腾讯的嵌入式部署框架ncnn也是对caffe支持较好。百度用他们自己的paddle框架和模型,转换方面也是对caffe较友好,那我们在选型之初,是如何考虑的呢?非常感谢

解答:目前没有移动环境需求,而且转换成caffe可能出现准确度下降的问题

问题8:神经网络训练时会出现训练学习率不下降的问题,尤其在计算loss时数据纬度方面,有没有好的建议呢。

解答:正常情况下学习率都是人为选定的,不存在学习率不下降的问题;如果是问loss不下降,可能有以下几个方面建议,如果是抖动,可能是学习率的问题,改小点之类的,或者调整优化器;如果是loss先下降,后来不动了,但是模型还没训练好,可能是局部最优了或者过拟合,检查数据分布,然后调整batch-size和学习率之类的;如果loss一直不下降,就相当于没学习,估计是代码写错了,检查下代码。

欢迎大家加入58,一起做有意义的事情:

58同城AI Lab 社招/校招/实习生 招聘,欢迎加入


58同城AI Lab介绍

58同城AI Lab(人工智能实验室)隶属于58同城TEG技术工程平台群,旨在推动AI技术在58同城的落地,打造AI中台能力,以提高前台业务人效和用户体验。AI Lab目前负责的产品包括:智能客服、语音机器人、智能写稿、智能语音分析平台、AI算法平台、语音识别等,未来将持续加速创新,拓展AI应用。
欢迎关注AI Lab微信公众号:58 AI Lab

欢迎加入58 AI Lab技术交流社区

欢迎在欣秀https://app.ic3i.com)平台上加入"58同城AILab技术沙龙"圈子,一起交流技术,可以扫描以下二维码加入该圈子:

团队照片


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存