机器学习开发中镜像用于提供开发所需的运行环境,机器学习平台为用户提供了包括 Python、CUDA、PyTorch、TensorFlow、BytePS 等多种依赖的预置镜像供用户直接使用。
Python 是目前机器学习研究和开发中最常用的编程语言之一,该语言可读性强且拥有丰富的软件库(如 scikit-learn、numpy 等)。平台基于原版 Ubuntu 镜像安装了不同版本的 Miniconda Python(3.7+),内置了常用开发工具,同时 pip、conda 和 apt 使用国内镜像源。
该镜像体积较小,适合作为基础镜像或是在轻量级任务中使用。
平台提供的 CUDA 镜像基于 nvidia/cuda
系列镜像构建,提供的 CUDA 版本包括 11.7.0、11.6.0、11.3.0、11.1.1。 内含 GPU 加速工具库、编译器、开发工具和 CUDA 运行时环境,适合通用的高性能计算场景。
镜像的主要特性:
由于生命周期和兼容性相关问题,Ubuntu 18 不支持 V100 RDMA 机型,CUDA 10 不支持 Ampere 系列 GPU,平台不提供也不建议使用相关的软件。
Pytorch 镜像基于平台的 CUDA 镜像构建,新增了pytorch
、torchvision
、torchaudio
软件包,内置 Pytorch DDP 多机测试样例,具体详见机器学习平台【镜像中心】PyTorch 详情页面。CUDA 镜像的说明在 Pytorch 镜像中也适用。
平台目前只提供 Pytorch 官方支持的 CUDA 版本组合。
TensorFlow 是一个用于机器学习的端到端开源平台。 它拥有一个由工具、库和社区资源组成的全面、灵活的生态系统。平台预置了一系列的 TensorFlow 镜像,并在镜像中安装了 CUDA、cuDNN 等 GPU 相关的软件包。用户可使用该镜像轻松构建和部署机器学习应用。
不同镜像版本中的 TensorFlow、CUDA、cuDNN 的版本不同。
版本 | CUDA 版本 | cuDNN 版本 |
---|---|---|
tensorflow:2.4 | 11.0 | 8.0 |
tensorflow:1.15 | 10.0 | 7.4 |
TensorFlow Serving 是一种灵活的高性能机器学习推理引擎,主要应用于 TensorFlow 模型的快速部署及服务的生命周期管理。平台预置了多个 TensorFlow Serving 的镜像以便于部署不同版本的 TensorFlow 模型。
不同版本的镜像包含的 CUDA 版本不同,支持的 TensorFlow 的版本也不相同,用户需要按需选择镜像版本。
版本 | CUDA 版本 | 支持的 TensorFlow 版本 |
---|---|---|
tfserving:tf-cuda11.0 | 11.0 | 2.4+ |
tfserving:tf-cuda10.1 | 10.1 | 1.14、1.15、2.0、2.2、2.3 |
Triton Inference Server 是一个针对 CPU 和 GPU 高度优化的推理解决方案,它不仅支持 SavedModel、Torchsript、ONNX、TensorRT 等多种格式的深度学习模型,同时在较高版本中还支持 XGBoost、LightGBM 训练的树模型。平台预置了一系列的 Triton 镜像供用户灵活选择,从而实现高性能的模型推理。
不同版本的镜像包含的 Triton Inference Server 版本不同,对应支持模型框架的版本也不相同,用户需要按需选择镜像版本。
版本 | 支持的框架版本 |
---|---|
tritonserver:22.08 | TensorFlow1.15 / 2.9、PyTorch1.13、TensorRT8.4.2、ONNX Runtime1.12、FIL(XGBoost、LightGBM、sklearn 训练的模型) |
tritonserver:21.12 | TensorFlow1.15 / 2.6、PyTorch1.11、TensorRT8.2.1、ONNX Runtime1.9、FIL(XGBoost、LightGBM、sklearn 训练的模型) |
tritonserver:21.04 | TensorFlow1.15 / 2.4、PyTorch1.9、TensorRT7.2.3、ONNX Runtime1.7 |
tritonserver:21.02 | TensorFlow1.15 / 2.4、PyTorch1.8、TensorRT7.2.2、ONNX Runtime1.6 |
tritonserver:20.09 | TensorFlow1.15 / 2.3、PyTorch1.7、TensorRT7.1.3、ONNX Runtime1.4 |
Groot 是火山引擎针对 GBDT 模型自研的推理引擎,其提供了通用且高性能的 GBDT 服务部署方案。平台将其封装成预置镜像使用包含了该引擎的预置镜像即可便捷地部署 XGBoost、LightGBM 等框架训练的树模型。