Paddle Lite

『飞桨』多平台高性能深度学习预测引擎
授权协议 未知
开发语言 C/C++
所属分类 神经网络/人工智能、 机器学习/深度学习
软件类型 开源软件
地区 国产
投 递 者 长孙阳泽
操作系统 嵌入式
开源组织 百度
适用人群 未知
 软件概览

Paddle Lite为Paddle-Mobile的升级版,定位支持包括手机移动端在内更多场景的轻量化高效预测,支持更广泛的硬件和平台,是一个高性能、轻量级的深度学习预测引擎。在保持和PaddlePaddle无缝对接外,也兼容支持其他训练框架产出的模型。

## CPU版本安装命令
pip install -f https://paddlepaddle.org.cn/pip/oschina/cpu paddlepaddle

## GPU版本安装命令
pip install -f https://paddlepaddle.org.cn/pip/oschina/gpu paddlepaddle-gpu

特性

轻量级

执行阶段和计算优化阶段实现良好解耦拆分,移动端可以直接部署执行阶段,无任何第三方依赖。 包含完整的80个 Op+85个 Kernel 的动态库,对于ARMV7只有800K,ARMV8下为1.3M,并可以裁剪到更低。 在应用部署时,载入模型即可直接预测,无需额外分析优化。

高性能

极致的 ARM CPU 性能优化,针对不同微架构特点实现kernel的定制,最大发挥计算性能,在主流模型上展现出领先的速度优势。 支持INT8量化计算,结合 PaddleSlim 模型压缩工具 中 INT8量化训练功能,可以提供高精度高性能的预测能力。 在Huawei NPU, FPGA上也具有有很好的性能表现。

最新 Benchmark 位于 benchmark

通用性

硬件方面,Paddle Lite 的架构设计为多硬件兼容支持做了良好设计。除了支持ARM CPU、Mali GPU、Adreno GPU,还特别支持了华为 NPU,以及 FPGA 等边缘设备广泛使用的硬件。即将支持支持包括寒武纪、比特大陆等AI芯片,未来会增加对更多硬件的支持。

模型支持方面,Paddle Lite和PaddlePaddle训练框架的Op对齐,提供更广泛的模型支持能力。目前已严格验证18个模型85个OP的精度和性能,对视觉类模型做到了较为充分的支持,覆盖分类、检测和定位,包含了特色的OCR模型的支持。未来会持续增加更多模型的支持验证。

框架兼容方面:除了PaddlePaddle外,对其他训练框架也提供兼容支持。当前,支持Caffe 和 TensorFlow 训练出来的模型,通过X2Paddle 转换工具实现。接下来将会对ONNX等格式模型提供兼容支持。

架构

PaddleLite 的架构设计着重考虑了对多硬件和平台的支持,并且强化了多个硬件在一个模型中混合执行的能力,多个层面的性能优化处理,以及对端侧应用的轻量化设计。

其中,Analysis Phase 包括了 MIR(Machine IR) 相关模块,能够对原有的模型的计算图针对具体的硬件列表进行算子融合、计算裁剪 在内的多种优化。Execution Phase 只涉及到Kernel 的执行,且可以单独部署,以支持极致的轻量级部署。

Paddle-Mobile升级为Paddle Lite的说明

原Paddle-Mobile作为一个致力于嵌入式平台的PaddlePaddle预测引擎,已支持多种硬件平台,包括ARM CPU、 Mali GPU、Adreno GPU,以及支持苹果设备的GPU Metal实现、ZU5、ZU9等FPGA开发板、树莓派等arm-linux开发板。在百度内已经过广泛业务场景应用验证。对应设计文档可参考: mobile/README

Paddle-Mobile 整体升级重构并更名为Paddle Lite后,原paddle-mobile 的底层能力大部分已集成到新架构 下。作为过渡,暂时保留原Paddle-mobile代码。 主体代码位于 mobile/ 目录中,后续一段时间会继续维护,并完成全部迁移。新功能会统一到新架构 下开发。

metal, web的模块相对独立,会继续在 ./metal 和 ./web 目录下开发和维护。对苹果设备的GPU Metal实现的需求及web前端预测需求,可以直接进入这两个目录。

  • 一、安装开发环境 1、更新系统软件包目录 sudo apt update && sudo apt dist-upgrade -y 另外扩展:(看个人需求,自动删除无效依赖包) sudo apt autoremove -y 2、下载安装依赖库 sudo apt install -y gcc g++ git make cmake wget python3 python3-dev python3-pip

  • 一、刷系统镜像 1.刷ubuntu-18.04.5-preinstalled-server-arm64+raspi4.img镜像 2.刷完添加SSH文件 3.利用网线单独连接路由器(和电脑连同一个路由器) 4.使用SSH工具,连接树莓派4B;(IP搜索使用软件:WNetWatcher.exe) 5.登录后修改密码,用户名:ubuntu ,密码: ubuntu 二、换源 sudo nano /etc

 相关资料
  • 9.21 一面 9.27 二面 9.30 三面(加面),希望后续有hr面或者oc吧 总结而言,讯飞非常喜欢问基础知识,从算法到操作系统到数学建模,问的项目并不多,所以以后大家要是面的话一定多准备八股 深度学习框架和平台方向相当于是算法和工程的结合,所以算法原理,部署,加速,操作系统,python底层都问到了。跟面试官交流又学习到很多知识,遗憾的是面的时候很多没有准备到,希望好运吧! 一面面经:和实

  • 写写面经攒人品 一面 7月1日(50min) 1.项目介绍与深挖,同时抛些相关的八股,如ddp与dp差别 2.python的迭代器,生成器,报错机制 3.计算机存储结构。 4.知道哪些量化方法。 5.了解科大讯飞吗 二面 7月8号(40min) 1.项目介绍。 2.为什么选择这个岗位,你觉得是做些什么? 3.网络为什么要增加深度,好处是什么。为什么用两个3*3而不是一个5*5 4.pytorch的

  • base北京-2024届提前批-Java后端开发 更新 HR通知三面通过,已拟录取。百度今年没有意向书,等10月前谈薪。 07/17 一面 视频面试 自我介绍 一、深度学习 你本科发表了这么多论文,为什么研究生要转专业呢? 你的 CSDN 博客是从什么时候开始写的? 你研究生具体的方向是什么? 因为你提到你研究生对 CV 有一定了解,你在研究生阶段在这个方向有什么成果或做了什么项目? 你觉得计算机

  • 主要内容 课程列表 专项课程学习 辅助课程 论文专区 课程列表 课程 机构 参考书 Notes等其他资料 卷积神经网络视觉识别 Stanford 暂无 链接 神经网络 Tweet 暂无 链接 深度学习用于自然语言处理 Stanford 暂无 链接 自然语言处理 Speech and Language Processing 链接 专项课程学习 下述的课程都是公认的最好的在线学习资料,侧重点不同,但推

  • Google Cloud Platform 推出了一个 Learn TensorFlow and deep learning, without a Ph.D. 的教程,介绍了如何基于 Tensorflow 实现 CNN 和 RNN,链接在 这里。 Youtube Slide1 Slide2 Sample Code

  • 本来想着国庆后再投,怕国庆过不好,国庆前就投了,很多东西没复习。面了几家最后接百度了,谢谢百度收留我。 cpp基础部分 1.static 2.const 3.cpp内存结构 4.谈谈那几个智能指针 5.那四个强制转换 6.看.so动态库里的啥东西,这个不会,连题意都没记全,太菜了。 7.析构函数能不能传参,能不能有返回值 8.cpp的多态,运行时多态那问的具体怎么实现,我就说了说虚函数表那些,感觉

  • 全程拷打项目(因为项目是和tf与机器学习相关的) 手写conv2D的计算函数(因为项目里有个conv3D相关的tf算子,但是没有写出来) 手写nms算法(写得很慢,之前又因为也是做项目,没有仔细研究源码) 之前使用opencl比较多,cuda使用得比较少,而且机器学习相关的算法也不是很精通,第二天就挂了

  • 现在开始学深度学习。在这部分讲义中,我们要简单介绍神经网络,讨论一下向量化以及利用反向传播(backpropagation)来训练神经网络。 1 神经网络(Neural Networks) 我们将慢慢的从一个小问题开始一步一步的构建一个神经网络。回忆一下本课程最开始的时就见到的那个房价预测问题:给定房屋的面积,我们要预测其价格。 在之前的章节中,我们学到的方法是在数据图像中拟合一条直线。现在咱们不