TensorRT等模型的端部署能力剖析

一、深度学习的部署流程

步骤1:确定部署环境ü有没有GPU?具体GPU型号是什么?ü具体什么操作系统?可以联网部署么?ü具体CPU和内存是多大?ü具体部署方法是什么?编程环境是什么?

步骤2:确定部署要求ü最长响应时间多少?ü平均响应时间多少?ü最大并发量多少?ü模型最大权重多少?

步骤3:实施模型部署,包括安装、打包和验证;

GPU部署:利用CUDA加速;

CPU部署:利用CPU完成计算;

服务部署:把模型调用过程封装为HTTP或GRPC服务;

本地部署:将模型部署到设备本地,直接进行调用;

Python语言部署:p C++语言部署

---------------------------------

部署方法1:基于Python的本地部署,将模型权重导出,并使用Python加载进行预测。

适用场景:简单的Demo,或者桌面GUI应用;

p 部署方法2:基于服务器的GPU部署,需要利用服务器GPU进行加速,并完成远程调用;

适用场景:大多数API调用场景;

p 部署方法3:基于服务器的CPU部署,并完成远程调用;

适用场景:大多数API调用场景;

p 部署方法4:基于移动端/嵌入式设备,在移动端完成本地模型调用;

适用场景:现有的智能手机设备等场景;

---------------------------------

模型参数量:模型权重大小;

模型计算量:FLOPs(浮点运算数)

模型精度:

模型环境:所依赖的环境

二、深度学习模型加速和压缩方法

权重冗余:裁剪、分解、蒸馏;

数值冗余:量化;


------------------------------

裁剪(Pruning):去掉不重要的参数

方法1:在参数loss中加入L1,让权重稀疏化;

方法2:考虑参数对loss的影响,根据导数衡量重要性;

方法3:考虑到参数对后续层的影响;

方法4:计算参数相关性;

------------------------------

分解(Low-rank factorization):施加低秩约束的方式稀疏化卷积核矩阵

方法1:将参数矩阵进行SVD分解;

方法2:通过聚类方法压缩矩阵;

优点:适合模型压缩;

缺点:计算成本很高,现在已经很少使用;

------------------------------

量化(quantization):用较低位宽表示典型的 32 位浮点网络参数

方法1:二值量化,将权值矩阵中的单精度浮点数用两个值来表示;

方法2:多值量化,使用8big或16bit定点数来表示;

------------------------------

蒸馏(Knowledge distillation):将深度和宽度网络压缩成较浅的网络,其中压缩模型模拟了

复杂模型所学习的函数。


三、GPU/CPU部署方法

GPU环境:如何充分利用GPU完成加速;

步骤1:导出深度学习为ONNX格式;

步骤2:模型参数裁剪;

步骤3:TensorRT参数量化,转换;

------------------------------

CPU环境:如何充分利用多核CPU完成加速;

步骤1:模型参数裁剪;

步骤2:利用MKL-DNN或OpenVINO完成加速;

MKL/MKL-DNN

Intel MKL(Intel Math Kernel Library),英特尔数学核心函数库,是一套高度优化、线程安全

的数学例程、函数,面向高性能的工程、科学与财务应用。提供了线性代数、快速傅立叶转换、

矢量数学与随机号码生成器支持。

OpenVINO

OpenVINO是英特尔推出的一款全面的工具套件,可以兼容各种开源框架训练好的模型,拥有算法模

型上线部署的各种能力。

------------------------------

TFLite:TensorFlow Lite 是一种用于设备端推断的开源深度学习框架。

------------------------------

TensorFlow Serving

是一个适用于机器学习模型的灵活、高性能应用系统,专为生产环境而设计。


模型的端到端转换包含tensorflow版本和pytorch版本的实践



load & save

补充:

opencv也是可以来进行模型的部署的

gRPC 是可以在任何环境中运行的现代开源高性能 RPC 框架。它可以通过可插拔的支持来有效地连接数据中心内和跨数据中心的服务,以实现负载平衡,跟踪,运行状况检查和身份验证。它也适用于分布式计算的最后一英里,以将设备,移动应用程序和浏览器连接到后端服务。


参考文章:

https://zhuanlan.zhihu.com/p/46591057

https://zhuanlan.zhihu.com/p/58182172 Int8量化

https://github.com/tensorflow/tensorrt TensorRT的代码TF版本

https://github.com/NVIDIA-AI-IOT/torch2trt pytorch版本

https://www.tensorflow.org/lite/examples/bert_qa/overview?hl=zh-cn CV&NLP的常见任务执行TensorFlow Lite

https://github.com/tensorflow/serving 生产环境的serving部署

https://pytorch.org/tutorials/intermediate/pruning_tutorial.html  pruning_tutorial

https://www.tensorflow.org/model_optimization/guide/quantization/post_training 量化

https://docs.opencv.org/4.5.2/dc/d70/pytorch_cls_tutorial_dnn_conversion.html opencv进行模型的部署

https://software.intel.com/content/www/us/en/develop/articles/intel-optimization-for-tensorflow-installation-guide.html intel

http://doc.oschina.net/grpc 开源中国组织翻译的《gRPC 官方文档中文版》

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,711评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,079评论 3 387
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 159,194评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,089评论 1 286
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,197评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,306评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,338评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,119评论 0 269
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,541评论 1 306
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,846评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,014评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,694评论 4 337
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,322评论 3 318
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,026评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,257评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,863评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,895评论 2 351

推荐阅读更多精彩内容