百度开源深度学习平台Paddle 吃瓜群众表示只想知道好不好。百度今天开源了其深度学习平台Paddle,引发了挺多人工智能领域开发者的兴趣,包括一些之前一直在Tensorflow和Caffe上练手的开发者。不过鉴于深度学习的开源平台目前并不多,作为开发者也作为热心吃瓜群众的头等大事,就是想知道——这个平台怎么样?别人怎么看这个平台?以及这个平台跟Tensorflow以及Caffe有何区别?

  ▎这个平台本身怎么样

  Paddle本身在开源前就一直存在,始于2013年的时候,因为百度深度实验室察觉到自己在深度神经网络训练方面,伴随着计算广告、文本、图像、语音等训练数据的快速增长,传统的基于单GPU的训练平台已经无法满足需求,为此在徐伟的带领下,实验室搭建了 Paddle(Parallel Asynchronous Distributed Deep Learning)多机并行GPU这个训练平台。

  但今天开源的Paddle当然不是3年前的简单模型,3年前Paddle可能还是一个独立的深度学习平台,不能很好地支持把数据从其他平台接入的需求。但今天的Paddle已经在处处强调,它的特色是让Spark 与PADDLE耦合起来,是一个基于Spark的异构分布式深度学习系统。并且经过和百度相关业务的“紧密摩擦”后,它已经迭代了两个版本:从Spark on Paddle架构1.0版,到Spark on PADDLE 架构2.0版。根据平台开源的规则,大概是在百度内部用的非常得心应手,修复了一系列bug后,实验室才终于打算把Spark on PADDLE以及异构计算平台开源。至于百度为什么要开源,这个理由大家都懂的

  深度学习平台目前还有很多bug——吸引更多的开发者来尝试和使用深度学习技术,对提高Paddle的档次是绝对有帮助的。

  ▎外界人士对这个平台的评价

  知乎上贾清扬的回答,目前是比较正面的评价。

  1. 很高质量的GPU代码

  2. 非常好的RNN设计

  3. 设计很干净,没有太多的abstraction,这一点比TensorFlow好很多。

  4. 高速RDMA的部分貌似没有开源(可能是因为RDMA对于cluster design有一定要求):Paddle/RDMANetwork.h at master · baidu/Paddle · GitHub

  5. 设计思路比较像第一代的DL框架,不过考虑到paddle已经有年头了,这样设计还是有历史原因的。

  5.1 config是hard-code的protobuf message,这对扩展性可能会有影响。

  5.2 可以看到很多有意思的类似历史遗留的设计:采用了STREAM_DEFAULT macro,然后通过TLS的方式定向到非default stream:Paddle/hl_base.h at 4fe7d833cf0dd952bfa8af8d5d7772bbcd552c58 · baidu/Paddle · GitHub (所以Paddle off-the-shelf不支持mac?)

  5.3 在梯度计算上采用了传统的粗粒度forward/backward设计(类似Caffe)。可能有人会说“所以paddle没有auto gradient generation”,这是不对的,autograd的存在与否和op的粒度粗细无关。事实上,TensorFlow在意识到细粒度operator超级慢的速度以后,也在逐渐转回粗粒度的operator上。目前只看到这里。总之是一个非常solid的框架,百度的开发功底还是不错的。

  估计不少人都读过贾清扬的评价,下面我们贴一个前百度数据工程师,极视角CTO缨宁的评价

  看了一下,从设计理念来看和Caffe挺像的,但网络模型没有Caffe那么容易定义。最大贡献是做了分布式,提高了建立模型的速度。再详细的感受就得看代码和上手用了。

  另一个跟上面两位观点反差较大的某研究深度学习的学者表示

  Tensorflow 的架构可以认为是一个升级版的theano, theano比Caffe还要早几年,只是Caffe最早train好了,同时发布了一些成功的卷积神经网络模型因此得到更多关注。Tensorflow 和Caffe没啥太大的关系,可能借鉴了Caffe某一些实现技巧,本质上没啥关系。 百度这个很有可能是看到Caffe的成功之后实现的,很大程度模仿的Caffe, 同时试图修改一些东西使其看的和Caffe不一样。

  我估计使用Caffe的人不会投向它,使用其他的工具的人(tensorflow, keras, theano, torch,mxnet)也不会投向它, 大家说几天然后就……一个月之后看一下它的github的关注量和github上能够找到的别人写的代码量你就知道他是否能有什么浪花(后面可以看看有没有人用他来参加kaggle或者其他比赛或在科研发布代码)。现在基本每个大公司都发布自己的深度学习框架(或者机器学习框架),例如微软, 亚马逊, 雅虎,好像都没有大动静。

  ▎这个平台跟Tensorflow以及Caffe有何区别

  雷锋网申请了Paddle的今天公测版本,目前还在审核中,虽然不能直接下载体验,但和其它两个平台的区别也不是毫无踪迹。根据我们之前对Caffe, Tensorflow的了解,以及今天Paddle放出的数据。

  附接口语音

  Caffe ——cmd, matlab, python

  Tensorflow——python, c++

  Paddle ——python, c++

  (注:其中python是开发者主要使用的语言, 只有Caffe修改model内部的时候要用的c++。(如有异议,欢迎各开发者进一步交流)

  总的来说

  1)Caffe可以说是第一个工业级深度学习工具,始于2013年底由UC Berkely的贾杨清编写的具有出色的CNN实现功能的开发语言,在计算机视觉领域Caffe仍然是最流行的工具包。

  Caffe的开发语言支持C++和Cuda,速度很快,但是由于一些历史性的遗留架构问题,它的灵活性不够强。而且对递归网络和语言建模的支持很差。Caffe支持所有主流开发系统,上手难度属于中等水平。

  2)Tensorflow是Google开源的第二代深度学习技术,是一个理想的RNN API实现,它使用了向量运算的符号图方法,使得开发的速度可以很快。

  Tensorflow支持的比较好的系统只有各种Linux系统和OSX,不过其对语言的支持比较全面,包含了Python、C++和Cuda等,开发者文档写得没有Caffe那么全面,所以上手比较难。

  3)而此次百度的Paddle,作为基于Spark的异构分布式深度学习系统,通过使用GPU与FPGA异构计算提升每台机器的数据处理能力,暂时获得了业内 “相当简洁、设计干净、稳定,速度较快,显存占用较小。”的评价,跟它通过使用GPU与FPGA异构计算提升每台机器的数据处理能力有重要联系。不过具体表现如何,还需等待几天观察一下大家的使用感受。

  本文转载自雷锋网。

百度开源深度学习平台Paddle相关推荐

  1. 百度开源深度学习平台飞桨的核心技术及应用

    分享嘉宾:蓝翔 百度 资深研发工程师 编辑整理:张兰兰 人民银行 出品平台:DataFunTalk 导读:近期,DataFunSummit AI基础软件架构峰会以线上形式成功召开,其中深度学习框架论坛 ...

  2. 1.3 飞桨开源深度学习平台介绍

    介绍飞桨在行业内的应用情况.产品全景.技术优势,以及飞桨的安装方法和联系方式. 深度学习框架 近年来深度学习在很多机器学习领域都有着非常出色表现,在图像识别.语音识别.自然语言处理.机器人.网络广告投 ...

  3. Win10_64位系统安装CUDA、CUDDN、深度学习平台Paddle 、PaddleX安装总结

    人工智能(Artificial Intelligence),英文缩写为AI.它是研究.开发用于模拟.延伸和扩展人的智能的理论.方法.技术及应用系统的一门新的技术科学.2016年8月百度开源了深度学习框 ...

  4. AI Studio 飞桨 零基础入门深度学习笔记4-飞桨开源深度学习平台介绍

    AI Studio 飞桨 零基础入门深度学习笔记4-飞桨开源深度学习平台介绍 深度学习框架 深度学习框架优势 深度学习框架设计思路 飞桨开源深度学习平台 飞桨开源深度学习平台全景 框架和全流程工具 模 ...

  5. 飞桨开源深度学习平台介绍

    深度学习框架 近年来深度学习在很多机器学习领域都有着非常出色的表现,在图像识别.语音识别.自然语言处理.机器人.网络广告投放.医学自动诊断和金融等领域有着广泛应用.面对繁多的应用场景,深度学习框架有助 ...

  6. 深度学习平台——Paddle核心框架介绍

    摘要 本博文将最后的讲解和学习有关于的Paddle的核心框架的分享.并且有关于的Paddle的学习就暂时告一段落.后期本人将更多的在与深度学习的原理和利用Paddle开发自己的深度学习模型作为分享.飞 ...

  7. deepfashion 深度学习_基于Alluxio加速混合云下的Intel Analytics Zoo开源深度学习平台...

    本文描述了Alluxio如何在混合云环境中,加速oneAPI支撑的英特尔Analytics Zoo开源平台深度学习模型训练.本文会讨论有关新架构和工作流的细节,以及Alluxio的性能优势和基准测试结 ...

  8. 全开源深度学习平台PaddlePaddle入手之路(二)----利用Docker在Windows10专业版环境下配置PaddlePaddle...

    利用Docker在Windows10专业版环境下配置PaddlePaddle 对于PaddlePaddle的安装,查询官网信息,PaddlePaddle提供pip安装和Docker安装运行的使用方式. ...

  9. retinanet 部署_目标检测RetinaNet_飞桨-源于产业实践的开源深度学习平台

    目标检测-RetinaNet 类别 计算机视觉(PaddleCV) 应用 图像搜索 安防监控 自动驾驶 智慧城市 机器人视觉 模型概述 经典的一阶段框架,由ResNet主干网络.FPN结构.和两个分别 ...

最新文章

  1. c语言考试经典编程题目及答案,经典练习C语言编程的题目及答案整理
  2. 深入WPF中的图像画刷(ImageBrush)之1——ImageBrush使用举例
  3. OpenGL多窗口示例
  4. Effective Java之通过接口引用对象(五十二)
  5. 依赖注入的几种形式及场景
  6. Idea Tomcat启动报异常CannotLoadBeanClassException
  7. 有关编程的12个猜想
  8. 从 ASP.NET Core 2.1 迁移到 2.2 踩坑总结
  9. 为什么突然变乱码_9102年了,还不知道Android为什么卡?
  10. 实习成长之路:后端开发实践系列——领域驱动设计(DDD)编码实践一
  11. C语言 - 判断素数的函数
  12. 7K字面经 | 百度金融、蚂蚁金服、易贷网、金蛋科技等互联网金融公司面试经验...
  13. VS Code 安装 VSIX 插件
  14. 大数据时代,数据分析师的职业发展规划
  15. CodeForces 592B
  16. JAVA课程设计——医院挂号系统
  17. python 爬虫request ssl_Python request SSL证书问题
  18. Android 程序保活,锁机代码
  19. 【一】JAVAScript 学习笔记:如何用javascript输出helloworld
  20. 小程序选择手机图片后 压缩图片 转码base64

热门文章

  1. Python+QT+Selenium制作在线视频播放器
  2. 【附源码】Java计算机毕业设计家政管理系统(程序+LW+部署)
  3. LabVIEW操作者框架(Actor Framework)范例集锦之二:视频范例
  4. 低通滤波器计算截止评率_科普文|一文了解电阻-电容(RC)低通滤波器
  5. 联想拯救者15isk清灰_拯救者15值得买吗?联想拯救者15isk游戏本全面深度评测图解...
  6. 小程序拨打电话功能,微信小程序点击手机号,拨打电话~!
  7. python拨打网络电话_python 网络电话
  8. Unity3d学习日记 (1)为场景内物体添加基本逻辑和脚本代码
  9. 【unity】FPS快速实现全息瞄准镜
  10. 媒体报道 | 创业邦:巴别鸟,一款便捷好用的企业级文件协同网盘