• OpenVINO--初步学习笔记


    1. 英特尔发布的针对AI工作负载的一款部署神器
    2. 当模型训练结束后,上线部署时,就会遇到各种问题,比如,模型性能是否满足线上要求,模型如何嵌入到原有工程系统,推理线程的并发路数是否满足,这些问题决定着投入产出比。只有深入且准确的理解深度学习框架,才能更好的完成这些任务,满足上线要求。实际情况是,新的算法模型和所用框架在不停的变化
    3. OpenVINO是一个Pipeline工具集,同时可以兼容各种开源框架训练好的模型,拥有算法模型上线部署的各种能力,只要掌握了该工具,你可以轻松的将预训练模型在Intel的CPU上快速部署起来。
    4. 包含了图片处理工具包OpenCV,视频处理工具包Media SDK,用于处理图像视频解码,前处理和推理结果后处理等。
    5. 在做推理的时候,大多数情况需要前处理和后处理,前处理如通道变换,取均值,归一化,Resize等,后处理是推理后,需要将检测框等特征叠加至原图等,都可以使用OpenVINO工具套件里的API接口完成。
    6. 对于AI工作负载来说,OpenVINO提供了深度学习推理套件(DLDT),该套件可以将各种开源框架训练好的模型进行线上部署,DLDT分为两部分:

      1. 模型优化器(Model Optimizer):
        1. 模型优化器是线下模型转换;
        2. 模型优化器是一个python脚本工具,用于将开源框架训练好的模型转化为推理引擎可以识别的中间表达,其实就是两个文件,xml和bin文件,前者是网络结构的描述,后者是权重文件。模型优化器的作用包括压缩模型和加速,比如,去掉推理无用的操作(Dropout),层的融合(Conv + BN + Relu),以及内存优化。
      2. 推理引擎(Inference Engine):
        1. 推理引擎是部署在设备上运行的AI负载。
        2. 推理引擎是一个支持C\C++和python的一套API接口,需要开发人员自己实现推理过程的开发,开发流程其实非常的简单,核心流程如下:
          1. 装载处理器的插件库
          2. 读取网络结构和权重
          3. 配置输入和输出参数
          4. 装载模型
          5. 创建推理请求
          6. 准备输入Data
          7. 推理
          8. 结果处理
        3. 推理过程只需要开发一次,只要模型的输入和输出不变,剩下的就是训练模型和模型优化工作了。
  • 相关阅读:
    Javascript正则表达式常用的验证(验证手机号,电话,邮箱,网址等)
    C 与 C++ 的真正区别在哪里?
    大型电商网站详情页是如何支撑亿级流量访问的?
    13.vue3组件化开发
    Linux 搭建本地镜像源(CentOS 离线 yum)
    vue 样式加scoped不起作用 局部更改element-ui的默认样式
    睡眠质量记录64
    LVS-DR模式
    前端Vue怎么获取登录的用户名或用户id
    fsync
  • 原文地址:https://blog.csdn.net/weixin_45647721/article/details/128060590