百度开源了其深度学习平台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的档次是绝对有帮助的。 外界人士对这个平台的评价 知乎上贾清扬的回答,目前是比较正面的评价。
估计不少人都读过贾清扬的评价,下面我们贴一个前百度数据工程师,极视角CTO缨宁的评价
另一个跟上面两位观点反差较大的某研究深度学习的学者表示
这个平台跟Tensorflow以及Caffe有何区别雷锋网(搜索“雷锋网”公众号关注)申请了Paddle的今天公测版本,目前还在审核中,虽然不能直接下载体验,但和其它两个平台的区别也不是毫无踪迹。根据我们之前对Caffe, Tensorflow的了解,以及今天Paddle放出的数据。 附接口语音
(注:其中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异构计算提升每台机器的数据处理能力有重要联系。不过具体表现如何,还需等待几天观察一下大家的使用感受。 文章来自:雷锋网 宗仁 |