BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

Watson首席架构师专访:IBM深度学习平台Fabric for Deep Learning

| 作者 Rags Srinivas 关注 11 他的粉丝 ,译者 姚佳灵 关注 0 他的粉丝 发布于 2018年5月10日. 估计阅读时间: 8 分钟 | CNUTCon 了解国内外一线大厂50+智能运维最新实践案例。

看新闻很累?看技术新闻更累?试试下载InfoQ手机客户端,每天上下班路上听新闻,有趣还有料!

最近,IBM发布了深度学习平台FfDL(Fabric for Deep Learning,简称FfDL),它是在Kubernetes上基于微服务的平台,用于

  • 深度学习模型训练
  • 开放深度学习API
  • 通用规范(Common Instrumentation)
  • 在多个云中托管深度学习

它利用Kubernetes、Helm Charts和微服务来实现深度学习平台中固有的不同配置,以取代不必要地暴露底层硬件(可能包含CPU、GPU等)的细节。

InfoQ就FfDL相关问题采访了Watson的首席架构师Ruchir Puri

InfoQ:围绕着深度学习和Kubernetes平台有很多活动。能否请您描述一下深度学习和Kubernetes之间的整体协同作用吗?

Puri:对于分布式深度学习,可扩展性、并行性、弹性、按需调度和批处理作业的终止是底层平台所需的关键特性。Kubernetes提供了所有这些以及更多的特性,因此,Kubernetes上的深度学习平台纷纷崛起,如FfDL、Kubeflow、PaddlePaddle等等。

Kubernetes 使用设备驱动程序不断提升对英伟达GPU的支持是另一个因素。GPU资源非常昂贵,对于数据科学家群体来说,拥有一个共享的GPU资源托管集群很有意义。即使是单独的深度学习实践者,Kubernetes也会为他们处理调度和作业管理,让他们能够腾出手来专注于他们自己的任务。

Kubernetes社区正致力于利用有状态集合进行持久存储,对CSI等等的支持也在发挥了很大作用,因为很多机器学习任务脱离不了数据。

InfoQ:机器学习平台本身是通过Helm Chart安装的。那么FfDL提供了什么附加价值?

Puri:除了FfDL的安装和部署是通过Helm Chart(这会吸引熟悉Kubernetes工作方式的DevOps从业者)之外,FfDL控制面板微服务是作为pod来部署的,并且我们利用Kubernetes来管理让机器有效工作的GPU和CPU集群,当它们崩溃时,重启微服务,并报告微服务的健康状况。我们也支持与S3兼容的存储,另外还支持多框架方式来进行分布式深度学习。

对于AI开发人员和数据科学家来说,他们使用一个平台进行深度学习训练,该平台具有集成深度学习调度、日志记录和监控指示板功能。指示板显示每一个步骤的评估指标,用框架无关的方式提供精度、熵、权重、偏差等信息。

对系统运维人员,FfDL提供隔离API,允许服务以模块化方式成长和演进,并随着深度学习领域快速创新的需求,允许组件不断发展。

对于深度学习框架的创新者来说,FfDL提供了一个开发API协作的平台,这可以让丰富的深度学习生态系统更容易访问他们的框架。

对于那些对开发AI组件、工作流和应用程序感兴趣的软件工程师,FfDL提供一个开放框架以供协作开发。被采用的API和组件有可能被应用于工业邪恶的IBM AI Studio,以及通用开源AI生态系统。

InfoQ:您能否从开发人员和用户的角度对Kubeflow和FfDL进行一下对比?

Puri:FfDL作为服务技术,是IBM Watson Studio深度学习的核心,我们已经把它开源,并公布在GitHub上,它形成IBM建立在IBM Spark 技术中心之上的开源数据和AI技术中心的关键部分,连同资产交易模型(Model Asset eXchange,简称MAX)和对抗健壮性工具(Adversarial Robustness Tool,简称ART),还有更多在研发的东西,开发人员都可以在IBM Code上获得。我们相信FfDL具有与其他开源框架(如谷歌的Kubeflow、百度的PaddlePaddle等等)互补的功能。IBM是开源社区的领袖,贡献了范围广泛的互补技术,这些技术有实现访问AI民主化的潜力。

InfoQ:文档似乎表明,对象存储是在Amazon S3上实现的,它使云变得具体起来。您能否澄清一下,是否存在对特定云的依赖?

Puri: 任何与S3 API 兼容的存储都行,包括IBM云对象存储(IBM Cloud Object Storage)。我们也在努力通过增加对NFS等的支持,让存储故事更通用。

此外,我们在密切监控Kubernetes社区对CSI接口的支持,以便基于标准存储故事。

InfoQ:FfDL会如何简化机器学习或数据科学家、开发人员的日常工作,而不是通过增加额外的Kubernetes层使之复杂化?

Puri:训练深度神经网络,也即深度学习,现在是高度复杂的,并且计算量很大。它需要高度调谐的系统,要有软件、驱动程序、计算、内存和存储资源的正确组合。数据科学家和AI开发人员应该专注于他们的专长:专注于数据及其改进、在那些大型数据集上训练神经网络模型(用自动化),并创建尖端模型。

FfDL提供了一个消除这些担忧的栈,因此,数据科学家能够在云中用他们选择的深度学习框架大规模地执行训练任务。它的构建旨在提供弹性、可扩展性、多租户及安全性,无需修改深度学习框架,并且无需对模型代码进行修改,或者只需做很小的修改。

FfDL也将在一定程度上,让数据科学家免受快速演化的AI基础架构混乱的影响。他们能够期望他们的集群演化和改进,并且可以加入更高级别的功能,而不必为每一项变动重写他们的系统。

InfoQ:您能否提供更多关于如何支持其他能够集成到FfDL的机器学习工具包的技术细节?您是否也能讲讲社区对FfDL的支持?

Puri:机器学习工具包的docker映像,以及FfDL生命周期管理(FfDL Lifecycle Manage,简称LCM)配置文件中加上的指针,能够了解到平台包含的内容。如果我们在增加对分布式训练的支持,就需要额外的代码,以确保支持机器学习引擎的分布式架构。在默认情况下,Tensorflow喜欢用参数服务器方法进行分布式学习,而PyTorch喜欢MPI方式。

我们期望社区能根据我们产品的优点,不断优化。随着合作机会的增加,我们将与主要参与者接触。此外,IBM和大学有很深厚的联系,会进行合作研究,如麻省理工与IBM Watson合作的AI实验室(MIT-IBM Watson AI Lab),在适当的情况下,把FfDL当作平台用于AI工程。总的来说,我们希望,开源社区能为AI生态系统增加的这个新东西感到高兴,并和我们一起工作,不断进化,以提供越来越大的价值。

请移步FfDL WiKi以查看更多技术细节。

阅读英文原文:Q&A on IBM's Fabric for Deep Learning with Chief Architect of Watson


感谢冬雨对本文的审校。

给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ@丁晓昀),微信(微信号:InfoQChina)关注我们。

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

深度内容

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT