技术开发 频道

阿里云推出深度学习开源利器Arena,使数据科学家不再犯难!

  【IT168 评论】2018年7月,阿里云向开源社区引入了深度学习工具Arena。现在,数据科学家可以在云上运行深度学习,而无需学习底层IT资源的使用。他们可以在一分钟之内启动深度学习任务,并在十五分钟内创建异构计算集群。

  为什么创建Arena

  如今,KubeFlow是Kubernetes社区中最流行的深度学习解决方案,那么Arena是不是又重新造了轮子?KubeFlow是一种基于Kubernetes的可组合,便携,可扩展的机器学习技术堆栈。它是一个端到端的解决方案,支持实现从Jupyter Hub模型开发,TFJob模型训练到TF-serving,以及Seldon预测。但是,KubeFlow需要用户掌握Kubernetes。例如,编写yaml文件来部署TFJob,这对于机器学习平台的主要用户——数据科学家来说是非常具有挑战性的。

  这些任务与数据科学家的期望背道而驰,数据科学家只关心三件事:

  •   数据来自哪里。

  •   如何运行机器学习代码。

  •   如何检查训练结果(模型和日志)。

  数据科学家们比较熟悉编写一些简单的脚本,在桌面机上运行机器学习代码这样的工作方式。但是在桌面机上进行模型训练时,硬盘驱动器的空间限制会导致处理数据量不足,无法利用分布式训练导致计算能力受限。

  这就是开发Arena的原因。此命令行工具使数据科学家免受低级资源,环境管理,任务调度以及GPU调度和分配复杂性的影响。Arena帮助数据科学家以一种简单熟悉的方式提交训练任务、检查训练进展。数据科学家在调用Arena时,他们可以指定数据源、代码下载以及是否使用TensorBoard来检查训练效果。

  Arena的作用

  Arena目前支持单机训练和PS-Worker模式的分布式训练。在后端,它依赖于KubeFlow提供的TFJob,很快,它将扩展到支持MPIJob和PytorchJob。

  它还支持实施训练操作和维护,包括:

  •   利用“top”命令监控GPU资源的分配和调度。

  •   CPU和GPU资源监控。

  •   实时检查训练日志。

  未来,我们希望通过Arena提供涵盖整个流程的深度学习生产线,包括集成的训练数据管理、实验管理、模型开发、持续训练、评估以及在线预测。

  Arena的目标是让数据科学家像在桌面机上训练一样轻松的释放KubeFlow的强大功能,同时能够控制集群级别调度和管理。为了能够更好的在开源社区内共享和合作,阿里云已经在github上发布了开源代码https://github.com/AliyunContainerService/arena。

  Arena背后的故事

  开源工具Arena诞生于阿里云的深度学习解决方案。它已经支持了多种深度学习框架(如TensorFlow,Caffe,Hovorod和Pytorch),并且支持整个深度学习生产线(包括集成训练数据管理、实验任务管理、模型开发、持续训练及评估、上线预测等环节)。

  该解决方案整合了阿里云的资源和服务,有效的利用了CPU和GPU等异构资源,统一容器化编排管控,并提供多维度监控告警和运维平台。

  结论

  阿里云高级技术解决方案架构师张凯表示,深度学习为人工智能的发展带来了革命性的飞跃,但也增加了我们对计算和数据资源的依赖。阿里云为大规模训练提供端到端的支持,不断完善深度学习解决方案,使其更易于使用且功能更为强大。

1
相关文章