橙山网 > 泛娱乐 > 今日看点 > 正文

LinkedIn开源TonY,让Hadoop原生支援TensorFlow,,TonY由三个主要元

橙山网(www.csnd.net)2018-09-26 20:09:50

[摘要] 原标题:LinkedIn开源TonY,让Hadoop原生支援TensorFlow LinkedIn开源TonY专案,让使用者可在单节点或是大型Hadoop丛集上,基于YARN建置TensorFlow应用的解决方案,TonY其运作方式就像是在Hadoop中的

原标题:LinkedIn开源TonY,让Hadoop原生支援TensorFlow

LinkedIn开源TonY专案,让使用者可在单节点或是大型Hadoop丛集上,基于YARN建置TensorFlow应用的解决方案,TonY其运作方式就像是在Hadoop中的MapReduce,执行Pig和Hive脚本的方式类似,提供TensorFlow任务第一层级的...

LinkedIn开源TonY专案,让使用者可在单节点或是大型Hadoop丛集上,基于YARN建置TensorFlow应用的解决方案,TonY其运作方式就像是在Hadoop中的MapReduce,执行Pig和Hive脚本的方式类似,提供TensorFlow任务第一层级的支援。TonY由三个主要元件组成,分别是客户端、ApplicationMaster以及TaskExecutor,主要提供四大特色GPU调度、精度资源请求、TensorBoard支援以及容错。

LinkedIn平台会员接近6亿人,随着深度学习技术的发展,LinkedIn的人工智能工程师,努力在众多像是摘要或是回复等功能中应用人工智能,而其中有许多使用案例,皆使用Google开发的深度学习框架TensorFlow建置。一开始LinkedIn内部TensorFlow用户都只在小型和非托管的裸机上执行应用,但随着发展,他们逐渐意识到必须要让TensorFlow连结并使用Hadoop大资料平台上的运算以及储存资源。LinkedIn的Hadoop丛集拥有数百PB的资料,很适合用于开发深度学习应用。

虽然TensorFlow支援分散式训练,但要编排TensorFlow必非一件简单的事,LinkedIn调查了市面上现存的解决方方案,但终究没能符合需求。有一个Apache△Spark运算引擎TensorFlow的开源解决方案,能够在框架上执行一些LinkedIn内部深度学习应用程序,但其缺乏GPU调度和异构容器调度是最后不被采用的致命伤。而另一个TensorFlowOnYARN独立函式库则较接近LinkedIn的需求,但是其容错以及可用性较差,且该专案已经停止维护更新。

基于这些原因,LinkedIn只好开始动手开发自家基于Hadoop△YARN的TensorFlow解决方案TonY,以便可以完全控制Hadoop丛集资源,TonY直接在YARN上运作,并以轻量相依执行,因此除了可以在YARN中使用堆叠较低阶的部分,也能使用TensorFlow中堆叠高阶的部分。

LinkedIn提到,TonY运作TensorFlow的方法,类似在Hadoop中MapReduce引擎执行Pig与Hive脚本,或是在Spark中以API执行Scala程式码,TonY通过处理资源沟通或是容器环境设定等任务,支援TensorFlow的工作。TonY主要有3个元件,客户端、ApplicationMaster和TaskExecutor。使用者向客户端提交TensorFlow模型训练程式码、参数以及Python虚拟环境,并由客户端设定ApplicationMaster将其交付给YARN丛集,ApplicationMaster会根据用户的资源要求,与YARN的资源管理器进行资源协商,当ApplicationMaster收到确定的资源分配,便会在分配的节点上创建TaskExecutors,由TaskExecutors启动用户的训练程式码并等待工作完成。

TonY除了可以完成基本在Hadoop上执行分散式TensorFlow的工作外,也实作了用来支援大规模训练的功能。TonY支援GPU调度,能够利用Hadoop的API向丛集请求GPU资源。另外,还支援高精度的资源请求,由于TonY能请求不同的实体作为单独的元件,因此用户可以针对每种实体类型请求不同的资源,也就是说,用户可以良好的控制应用程序使用的资源,同时也有助于丛集管理员避免浪费硬件资源。

TonY现在可以将应用程序追踪的URL重新导向TensorBoard上,让使用者方便通过TensorBoard理解、调校和最佳化TensorFlow应用程序。而TonY重要的特色之一便是容错,可以让深度学习训练更可靠。即便使用大量的机器,TensorFlow训练仍可能需要数小时甚至数天,但长时间运作的TensorFlow任务比短期的任务,更容易受到暂时性错误或抢占的问题影响。TensorFlow拥有容错API,可以将检查点储存成HDFS,还能从先前保存的检查点恢复继续训练。TonY则通过提供弹性分散式基础架构,来从节点故障中恢复,因此当Worker错误、或是ApplicationMaster失去回应等情况,TonY将会重新启动应用程序,并恢复到之前的检查点。

现在LinkedIn在GitHub上开源他们在Hadoop和TensorFlow上的努力,让其他使用者也能方便的建置分散式机器学习应用。

橙山网(Csnd.net)简评:TonY由三个主要元件组成,分别是客户端、ApplicationMaster以及TaskExecutor,主要提供四大特色GPU调度、精度资源请求、TensorBoard支援以及容错。LinkedIn

热 门
明 星
巴巴拉·布什 丹尼尔-雷德克里夫 张美君 新井浩文 丹尼·德维托 威廉·卡斯尔 梁国冠 高梨临 威廉·德马雷斯特 阿莱萨德洛·斯珀杜蒂 杨紫茳 麦家碧 杰里米·弗雷 石言 格里高力·阿莱克桑德夫 海尔德·高德 格莱恩·麦卡西 克劳德·勒鲁什 火车霸座 章雯淇 1977-01-10 刘易斯·阿凯特 米歇尔.威廉姆斯 人设崩塌 遭骂 王苹 千岛群岛发生地震 具体是怎么回事? 1971-07-06 范·迪塞尔 改签回 赵继伟 柯蓝 黄石 霍兹 《OK老板娘》 欧温斯波洛