谷歌开源了TensorFlow,世界就要马上被改变了吗?

谷歌开源了TensorFlow,世界就要马上被改变了吗?


Google开源了其第二代深度学习技术TensorFlow——被使用在Google搜索、图像识别以及邮箱的深度学习框架。这在相关媒体圈、工程师圈、人工智能公司、人工智能研究团队里有了一些讨论。比较有趣的是,微软亚洲研究院立刻向媒体发邮件表示,我们发布了开源分布式机器学习工具包(DMTK)。

对于大众来说,这件事让人“困惑”。从“深度学习”到“分布式系统”,太多概念大众一知半解,现今给出的资料又让人难以理解。而对于“Google开源TensorFlow”这一事件,各个公司、团队、学术权威也是众说纷纭。因此,出门问问为大家“破雾”,并讲一讲这次开源意味着什么。

什么是深度学习?

深度学习系统是什么?深度学习理论于2006年被提出,它通过模拟“人脑的神经网络”来解释图像、声音和文本等数据。但是目前的计算机还达不到模拟人脑数量庞大的神经元(千亿级),因此便有了用到成千上万大型计算机(计算平台集群)来吸收数据对其进行自动分类的“分布式深度学习系统”。

TensorFlow的起源和此次开源事件

Google将自家研发的深度学习系统命名为“DistBelief”,它使得Google能够同时处理成千上万台大型计算机的数据,构建更大型的神经网络和大规模训练。Google的搜索、图像识别及邮箱等均采用了该技术。一般情况下,深度学习系统都需要先设定好feature(特征),再学习如何分辨。但Google DistBelief神奇的地方在于,“Google Brain”开发团队“XLab”曾用它在未事先获取 “猫的特征描述”信息的情况下,从大量YouTube 视频中区分出了哪些是猫的视频。这意味着深度学习系统“DistBelief”自行总结出了猫的feature(特征)!虽然这个案例的识别范围、识别率有待提高(81.7%),但作为人工智能最经典案例之一,为人工智能翻开了新的篇章。而“猫”的事件,也让曾经的Google Brain开发团队“XLab”的核心人员、现在被李彦宏挖到百度的吴恩达得到了“Google Brain”之父的美誉。不过,时代总是进步,而“DistBelief”有缺陷。

Google称,虽然DistBelief非常成功,但它仅仅以神经网络为目的、十分局限,而且很难进行配置。另外,DistBelief牢牢绑定在Google的内部基础设施上,几乎不可能将代码与外界共享。因此,本文的主角,Google的第二代深度学习系统“TensorFlow”横空出世了。

Google表示,TensorFlow在设计上尤其针对克服 DistBelief 的短板,灵活、更通用、易使用、更快,而且完全开源。TensorFlow可以被架设在智能手机这样小的设备上,甚至仅一块电路板上,更灵活; TensorFlow可以被使用在很多计算平台,无论是智能手机还是大型计算机、单个CPU / GPU计算机还是成百上千GPU卡组成的分布式系统,ARM的还是X86的构架,更通用;TensorFlow支持多种编程语言,提供了很多深度学习模型库,易使用;在很多指标上,TensorFlow要比DistBelief 要快一倍,更快。但是,学术界和工程界的一些朋友并不喜欢这个“刚刚闯入”开源界的“小伙子”,判了它“意义不大”的死刑。“TensorFlow”之所以“开源”却不讨好,是因为TensorFlow不是第一个被开源的深度学习系统,并且目前只开源了“单机版”,而非能够识别猫的“分布式版本”。除了并非第一以及只开源了单机版代码这两点外,Google开源TensorFlow这件事最被人诟病的地方在于,在“用事实”、“用数据”说话的学术界、工程界,Google并未用“数据对比”证明TensorFlow的“灵活、更通用、易使用”。

对于TensorFlow,出门问问的看法是,TensorFlow对学术界意义不大,但是对工程界意义挺大。

TensorFlow对工程界有意义:其它开源工具虽然众多 但对工程界很难有效使用

Google这次开源的TensorFlow是一种人工智能(更具体的说是深度学习)编程语言或计算框架,学术界从来都不缺少类似的开源工具,尤其是“单机版工具包”有很多。但是学术界的工具往往更多专注在核心算法上,在系统和工程方面比较欠缺,工业界很难直接有效的使用,而Google的TensorFlow在架构设计,跨平台可移植性,算法可扩展性等等偏工程方面会做的比较好。所以,TensorFlow对学术界的帮助比较小,但对工业界的帮助有很大潜在可能性。比如语音识别、自然语言理解、计算机视觉、广告等等都可以应用这种深度学习算法,Google也因为深度学习系统的应用使得Google语音识别水平提高25%。

有意义归有意义,意义的大小是另一回事了。在这个信息交流频繁的时代,没有公司能随便制造一个具有超大意义的事件或者跨时代的黑科技产品。对于工程界,TensorFlow有意义但又不是神乎其神的东西,尤其是Google目前开源的“单机版”的TensorFlow意义要小一些。因为在工程界里,若要完成一整件事,如识别语音,TensorFlow这种通用深度学习框架的存在更多是锦上添花,而非决定根本。比如说在一个可以应用的语音识别系统里, 除了深度学习算法外,还有很多工作是专业领域相关的算法以及海量数据收集和工程系统架构的搭建。

其实,对于中国来说,TensorFlow还有一个意义。在人工智能大潮下许多人和公司想入局,但大都没有能力理解并开发一个与国际同步的深度学习系统,而TensorFlow的存在会大大降低深度学习在各个行业中的应用难度。至于弄懂TensorFlow要花费大量时间的问题,就像很多公司用Linux或者hadoop(一种分布式系统基础架构)但很少有公司弄懂了所有源代码一样,可以把TensorFlow当成一个黑盒,先快速用起来,之后再根据数据和专业领域知识来调整。

总的来说,如果Google按照其所说的那样,在未来完全开源TensorFlow——包括其“分布式版本”,那么TensorFlow对工程界的影响会更明显些——尤其对中国创业公司来说。

来源:36kr.com/p/5039580.html