Paddle.js 简介
概念:Paddle.js以JavaScript实现Web端推理引擎,并提供深度学习开发工具,让开发者能轻松地在浏览器、小程序等环境快速实现深度学习应用。Paddle.js 是百度 Paddle 的 web 方向子项目,是一个运行在浏览器中的开源深度学习框架。Paddle.js 可以加载提前训练好的 paddle 模型,或者将 paddle hub 中的模型通过 paddle.js 的模型转换工具变成浏览器友好的模型进行在线推理预测使用。目前,paddle.js 仅可以在支持 webGL 的浏览器中运行。
特性:
- 模块化:Paddle.js项目基于Atom系统构建,该系统是一个通用框架,可支持WebGL上的GPGPU操作。 它非常模块化,可以通过利用WebGL来更快地执行计算任务。
- 浏览器覆盖范围:PC: Chrome, firefox,Mac: Chrome, Safari,Android: Baidu App , UC, Chrome and QQ Browser
- 支持的操作:目前,Paddle.js只支持有限的一组算子操作。如果您的模型中使用了不支持的操作,那么padde.js将运行失败并提示您的模型中有哪些op算子目前还不支持。如果您的模型中存在目前Paddle.js不支持的算子,请提出问题,让我们知道你需要支持。
- 低延迟:本地GPU加速运算,无网络延迟
- 开箱即用:低使用门槛、跨平台
- 数据安全:无需上传数据,保证用户隐私
- 工具支持:模型转换工具、小程序插件(即将推出)
Paddle.js 历史及由来
PaddlePaddle的前身是百度于2013年自主研发的深度学习平台Paddle。而现在,PaddlePaddle在深度学习框架方面,覆盖了搜索、图像识别、语音语义识别理解、情感分析、机器翻译、用户画像推荐等多领域的业务和技术。
Paddle.js 最新版说明
Paddle.js 1.0 发布了,更新内容如下:
兼容性
- 支持在 webGL2.0 和 webGL1.0 的浏览器上运行。例如 chrome、firefox、safari 以及移动端的 Baidu App、QQ 浏览器等。
- 支持 NCHW 与 NHWC 格式的模型数据计算。
功能
- 开发者可以通过 Paddle.js 将训练好的深度学习模型部署在浏览器上。通过 WebGL,Paddle.js 能够利用用户端设备的 gpu 进行加速运算,无需与服务器端进行交互,完成快速、安全的模型预测。
- Paddle.js 可以对图像等多媒体数据进行处理,将 web 多媒体标签内容处理成在线推理引擎需要的输入数据。
- 模型转换工具可以将 Paddle.fluid 模型转换为 Paddle.js 支持的模型,并且集成了包括算子融合等模型优化的处理方法。
- 对基础的算子提供了支持,未来会继续补充支持更多的算子。
- 提供 MobilenetV2、TinyYoloV3、人像分割、黄反暴恐检测和手势检测等模型的 demo。
- 支持预热和多次执行在线推理,并且进行了执行资源复用等性能方面的实现。
- 支持多模型串执行在线推理。
关于 Paddle 的更多信息,可以查看官网。
下载安装命令
## 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
更新说明:https://github.com/PaddlePaddle/Paddle.js/releases/tag/v1.0