Caicloud TensorFlow as a Service(TaaS)
TaaS 简介
谷歌深度学习框架 TensorFlow 自2015年11月开源以来受到了学术界和工业界的广泛关注。然而要将 TensorFlow 真正地应用于生产环境中任然存在很大的挑战。为了进一步降低 TensorFlow 的使用门槛,Caicloud 大数据平台 TensorFlow as a Service(TaaS,后面部分都将使用 TaaS)提供了支持 CPU 和 GPU 的分布式 TensorFlow 模型训练平台和 TensorFlow 模型托管平台。通过将 TensorFlow 与谷歌开源的容器云平台管理工具 Kubernetes 结合, Caicloud 提供的 TaaS 服务解决了 TensorFlow 在使用中学习成本高、管理难、监控难、上线难等问题,旨在帮助您更快更容易的体验和应用最新深度学习技术。
TaaS 特性
TaaS 可以帮助您更好的管理分布式 TensorFlow 的模型训练过程,并一键上线训练好的 TensorFlow 模型。它提供了:
对 TensorFlow 的高层封装,使得您可以不需要关心分布式 TensorFlow 的运行方式,只需要专注于模型本身的结构以及训练模型的操作。这将大大降低了您使用分布式 TensorFlow 的学习成本。
对底层硬件信息和软件配置的有效管理。 TaaS 可以自动分配和管理底层存储、网络以及计算资源,让您省去对集群环境配置和管理的工作。
TaaS 支持对 GPU 资源的自动管理,相比 CPU,GPU 可以将训练速度提升数十倍。而且您可以在享受 GPU 带来的性能提升同时不用花费任何的学习、搭建和维护成本。
TaaS 支持自动的 TensorFlow 生命周期管理,任务调度时自动分配运行资源,在任务结束后可以自动回收资源。
TaaS 支持对多用户的统一管理。通过对资源的有效管理和隔离,TaaS 可以有效避免在多用户情况下对资源使用的竞争以及资源分配时产生的问题。
TaaS 提供可视化界面来管理所有分布式 TensorFlow 训练任务。通过 TaaS,您可以通过 UI 界面查看资源使用率、TensorFlow 日志以及 TensorBoard 提供的可视化结果。
TaaS 提供 TensorFlow 模型一键托管功能。TaaS 支持一键启动训练好的 TensorFlow 模型,并对外提供 RESTful 和 gRPC API。TaaS 模型托管平台也会完成资源监控、自动收缩等功能。
TaaS 服务
TaaS 主要提供了三个主要的服务:
-
- 提供 TensorFlow 任务代码和数据文件上传、编辑。
- 提供 TensorFlow 训练模型文件的下载。
- 提供在线 Terminal 命令行操作。
-
- 基于项目来管理模型训练任务,管理模型训练进度。
- 分布式 TensorFlow 模型训练任务的创建和删除等操作。
- 自动将应用代码分布式地跑在 CPU 和 GPU 混合集群上。
- 提供训练过程的 TensorBoard 可视化。
- 便利的资源监控和日志管理等功能。
-
- TensorFlow 模型一键式上线。
- 模型预测服务的 gRPC 和 RESTful API。
- 模型托管 Serving 流量和带宽监控。