谷歌开源数据中心解决方案

谷歌加入开放计算项目


开放计算项目是由Facebook在2011年创建,其背景是随着Facebook业务的扩大,过去的数据中心、服务器解决方案无法满足其需求,而且定制成本高昂,包括谷歌、Facebook在内的互联网公司需要更廉价、高效以及可扩展性的硬件资源,因此,他们在幕后悄悄地从头开始设计硬件,并将硬件的制造外包给亚洲的鲜为人知的公司。


这个潜在的硬件市场很少得到公开讨论。像谷歌这样的公司就将其数据中心解决方案作为公司竞争的优势,一度处于高级保密阶段。Facebook技术业务副总裁 Heiliger表示:五年前的数据中心领域就像一个「搏击俱乐部」。「是时候停止像对待《搏击俱乐部》一样对待数据中心设计方案了,也是时候把这些方法去神秘化了。 Heiliger 说道。


在Facebook的努力下,开放计算项目得到包括惠普、戴尔、微软等公司的支持,而最后的两家巨头就是谷歌和亚马逊。此次谷歌的加入,被业界认为是谷歌业务战略的一大挑战,对此谷歌资深员工Urs Hölzle 告诉《连线》杂志,他无法认同业界将此举定义「一个重大转变」,他指出谷歌之前就已经公开讨论过它的内部硬件设计方案。「我知道新闻界过去倾向于提出这件事,把开放计算项目和谷歌对立起来。但事实从来不是这样。」他说,「在过去十年里,我们已经分享了行业内许许多多的事情。这是最近的一件事。


诚然,谷歌在2009年揭示了它的服务器设计方案的一部分,而且,去年,它撩起窗帘,展示了处理计算机网络硬件的重要方法。但是,谷歌只是在转移设备后才揭示它的设计方案。并且它没有像脸书那样开放设备资源。不过谷歌和脸书最近积极合作,合作内容涉及他们意欲公开源代码的硬件,这将是两家公司优先发展的亮点。


不过,谷歌的举动至少也从另一个侧面反映了互联网大玩家们内部的其它变化。《连线》杂志指出,谷歌加入 Facebook 的这个项目与深度学习的崛起有关联,这一人工智能技术迅速地重塑了现代社会的很多方面。两家公司都明白人工智能是他们未来发展的关键部分,他们都相信如果他们合作并分享驱动神经网络的一些核心技术,就能尽快达到目标。


Hölzle 介绍了谷歌的计划,他们将和 Facebook 共同开发数据中心服务器架构。这个新的支架能为所有机器传送大约4倍的电力,从12伏到48伏。 Hölzle 表示,随着我们将越来越多的硬件打包装进越来越小的空间,数据中心的架构需要越来越多的能源,这种需要不仅随着数据中心内部 GPUs 的增加而增加,也随着深度神经网络越来越重要而增加。


GPUs 最初被设计用于为游戏或其它需要密集图像的程序应用提供效果图。但是结果呢,它们也能很好地适用于操作深度神经网络,这种人工智能技术如今帮助向谷歌这样的公司辨认图象、识别输入智能手机里的语音命令、有针对地投放广告、生成研究结果和完成其它更多事情。 Hölzle 透露:「整个性能都在不断提高, GPUs加快或者说放大了这个过程。」


为什么开源?


从技术发展的趋势来看,开源日渐成为一股不可阻挡的趋势。作为美国国防部的一个研究机构,很难想象 DARPA 这样的组织竟不在意别人利用自己公开的信息。然而,DARPA 已经向开源机器学习技术迈出了一大步。


事实上,DARPA XDATA 项目导致产生一个目前最先进的机器学习、可视化和其他技术的目录,任何人都可以下载、使用和修改这些技术以打造定制化的人工智能工具。


DARPA 和国防部如此支持开源的事实有力地表明开源的优点大于将高质量的工具提供给潜在对手的缺点。


另一个开源项目则是 OpenAI 项目,该项目最近由技术企业家 Elon Musk 和 Sam Altman 等人发起,这项工作的目的是研究具有越来越强的理解世界和与世界交互的能力的机器的创造与发布背后的伦理道德。


DARPA 和 OpenAI 的动机都不能解释到底为什么这些商业技术公司要开源他们的人工智能代码。毕竟,作为技术公司,他们关注的问题更加直接和具体。毕竟如果没人使用他们的产品,那好而整洁的代码和用心良苦的算法又有什么用呢?


业内存在一个共识,即谷歌、Facebook 和亚马逊这样的公司的业务模式和人们所想的并不一样。从长远来看,谷歌和Facebook都没有真正的广告销售业务。这些技术公司都是由你的眼球(和数据)驱动的。他们的通货是用户。以谷歌为例,免费提供电子邮箱和搜索服务将用户吸引到它的产品上;它需要快速创新、产出更多更好地产品以确保用户留存下来。


对于 TensorFlow 为何要开源,谷歌官方的解释是,将技术免费开放是希望可以加速人工智能领域的发展。所有人都可以帮助 Google 改进其技术,并将成果反馈回来。正如 Google 深度学习项目的主要推动者 Jeff Dean 所说:「我们希望的是,整个研究、开发者社区将 TensorFlow 作为一种很好的手段来实现各种各样的机器学习算法,同时也为其在各种场景下的应用带来改进。」如果此次开源能够使更多的数据科学家开始使用谷歌的系统来从事机器学习方面的研究,那么这将有利于谷歌对日益发展的机器学习行业拥有更多的主导权。


谷歌敢于开放 Tensor Flow 的代码,是因为它所拥有的数据对于建造一个强力的人工智能引擎更具价值。该公司希望开源能将其打造成机器学习领域的领先者,并发展与开发者和合作伙伴的关系。Tensor Flow「从某种程度上给了我们一个共同说话的语言。」


艾伦人工智能研究所执行董事 Oren Etzioni 对谷歌的这一行为评价道,这是谷歌整个平台战略的一部分,来吸引开发者和机器学习人才。但比起提供云服务的 IBM、微软和亚马逊,谷歌确实在做一些更加开放的工作。开源人工智能的举措能够保证这些公司在前沿技术领域保持自己的领先地位。从这个意义上看,它们并没有交出自己成功的钥匙,而只是在给自己的未来铺路。


当然,科技巨头将深度学习平台也势必会带来更多的商业利益,Jeff Dean 说:「我们从使用过 Tensor Flow 的开发者们身上获取益处,这并不是纯粹的无私行为。」,MIT 斯隆管理学院的教授 Michael A. Cusumano 就认为,即便 TensorFlow 是开源,但如果它能获得成功,将毫无疑问成为谷歌的赚钱机器。


这些公司开源它们的人工智能软件是因为它们希望成为其他人创新的基础。成功的企业可以借此壮大,而这些科技公司也可以将它们整合到自己的产品集群中。人工智能是其中的核心,因为通过设计,它可以学习、适应甚至决策。人工智能不只是一种产品:它是一个产品生成器。在不远的未来,人工智能并不会被直接用来提供图像服务或消费类产品,但会通过创新新产品,帮助企业找到新的创新机会。


开源人工智能的举措能够保证这些公司在前沿技术领域保持自己的领先地位。从这个意义上看,它们并没有交出自己成功的钥匙,而只是在给自己的未来铺路。


科技巨头的开源竞赛


正式因为开源所带来的各种价值,谷歌、Facebook等科技巨头也开始了激烈的开源竞赛。谷歌开源了TensorFlow ,Facebook 紧接着开源人工智能硬件 Big Sur,之后IBM、百度和雅虎也相继加入。


1)谷歌开源 TensorFlow


2015年12月,谷歌开源了第二代深度学习系统 TensorFlow,该系统将机器学习算法变成了符号表达的各类图表,从而有效缩短了重新写代码的时间。谷歌在官方博客上表示,比起旧系统,TensorFlow 没有被束缚在谷歌自身的IT架构内,能够被任何有相关背景的人基于合适的IT资源进行配置。它更快、更灵活以及更聪明,在建立和训练机器学习模型方面比第一代人工智能系统快五倍。谷歌 CEO Sundar Pichai 在博客中写到,TensorFlow更快的速度使我们能够更快的提升产品表现。


当然,谷歌也并非完全毫无保留。目前开源的是其引擎中较为顶层的算法,也没有开源其硬件基础设施系统。而且,谷歌也不是第一个将深度学习系统开源的科技巨头。


2)Facebook开源 Torch和硬件


TensorFlow之后,Yann LeCun在Facebook上转了一篇纽约时报Bits报道TensorFlow的文章,并评论说:「如果放在几年前,谁会想到一篇关于深度学习开源库的文章会发布在纽约时报科技频道(Bits)上?」补充一下 (以便大家不要误解我的含义): 我认为TensorFlow 非常酷,我对谷歌的朋友们将其开源表深表赞同。

其实,Yann LeCun是在非常狡猾的提醒用户,Facebook早在今年一月份就公布了一个机器学习的开源项目,他们将一些基于机器神经网络的产品免费放在了Torch(一个关注深度学习的开源软件项目)上,可以用来处理数据,分析信息的共同特征。Facebook人工智能实验室的研发工程师Soumith Chintala对此表示,将人工智能和神经网络公开是十分有用的,他也是Torch项目的创始人之一。他说,除了大公司之外,Torch也会用于创业公司和大学实验室。


2015年12月,Facebook开始为他们的人工智能工作建造定制化的服务器,并在周四宣布将向全世界公布这个强大硬件的设计——而且是免费。这个服务器设计蓝图的开源计划名为「大索尔(Big Sur)」。其他公司和研究者将能从Facebook开发者的研究进展中获利。上个月,谷歌曾发布了构建AI的软件系统TensorFlow。微软、IBM和三星也都发布了自己的软件工具。


Big Sur服务器是围绕英伟达的GPU(图形处理单元)建造的。GPU在人工智能中的应用十分广泛,因为这种芯片上搭载的处理核心数量多于英特尔生产的传统处理器,使得它们十分适用于AI软件所需要的海量计算。这个硬件设计将作为开放计算项目(OCP,Open Compute Project)的一部分。高盛投资公司说,他们在2012年使用了OCP的设计,节省的计算支出多达30%。2014年1月,扎克伯格说这个系统的使用为Facebook节省了12亿美元。


3)IBM开源机器学习平台


2015年11与,IBM周一宣布旗下机器学习平台 SystemML正式开源,成为Apache孵化器下面的一个开源项目。根据IBM官方的说法,SystemML使用 Java编译, 能够实现以下三点:(1) 可定制算法;(2) 多个执行模式,包括单个,Hadoop 批量和 Spark 批量;(3) 自动优化。


Apache孵化器是Apache基金会成立于2002年10月,为那些意图成为Apache基金会努力的一部分的项目和代码库,提供一个进入到Apache软件基金会的路径。那些从外部组织捐赠的所有代码,以及意图移动到Apache的现有外部项目,都必须进入Apache孵化器。IBM表示,将在6月份捐献SystemML代码。


从某种意义上说,IBM此举,也是为了抢占机器学习领域的话语权。各大巨头希望通过吸引越来越多开发者参与到自己平台上,鼓励他们使用自己的平台进行数据训练,随着训练数据越来越多,机器也会变得越来越聪明,这也有利于形成良好的生态循环。


4)百度开源人工智能代码


2016年1月5号,百度本周宣布开源人工智能代码,从而在人工智能技术的标准发展中掌握一定的主动权。此前,谷歌和Facebook也宣布将开源相关技术。百度硅谷实验室已经向GitHub上传了Warp-CTC C代码库。与此同时,百度在一篇博客文章中鼓励开发者试用这些代码。


5)雅虎开源 CaffeOnSpark 深度学习软件


2015年3月,雅虎的 Big ML 团队成员 Andy Feng, Jun Shi 以及 Mridul Jain 在他们的博客中说道:CaffeOnSpark 这一深学习系统,现在已经可以通过开源社区获取并且进行进一步的开发了。


CaffeOnSpark 是一Hadoop/Spark 的分布式学习系统,基于Apache Spark 开源集群计算框架。正是这个深度学习系统支持着雅虎 Flickr 网站的图像功能,Yahoo 就是用这项技术来识别照片中的不同内容,以此改良 Flickr 网站的搜索结果。而现在,雅虎正式将这一系统开源。这个系统提供了很多数据分类和数据处理的方法,对于开发者来说,无疑又是一个好消息。

上一篇:[AlwaysOn Availability Groups]排查:Primary上的修改无法在Secondary体现


下一篇:云速搭部署OSS及资源包最佳实践