SageMaker 和 TensorFlow 2.0

SageMaker and TensorFlow 2.0

使用 AWS Sagemeker 运行 TensorFlow 2.0 的最佳方法是什么?

截至今天(2019 年 8 月 7 日)AWS 不提供 TensorFlow 2.0 SageMaker containers,所以我的理解是我需要构建自己的。

最好使用的基本图像是什么?示例 Dockerfile?

截至目前,可用于构建 Tensorflow 2.0 的最佳映像是 2.0.0b1,这是可用的最新版本的 Tensorflow 2.0(image) now.Please 找到 link here。您还有一个图像 2.0.0b1-py3,它带有 Python3(3.5 用于基于 Ubuntu 16 的图像;3.6 用于基于 Ubuntu 18 的图像)。

如果您觉得这个回答有用,请采纳这个回答and/or 投上一票吧。谢谢

编辑:Amazon SageMaker 现在支持 TF 2.0 及更高版本。


原回答

这里是一个使用 the underlying SageMaker Containers library 的示例 Docker 文件(这是在官方预建 Docker 图像中使用的):

FROM tensorflow/tensorflow:2.0.0b1

RUN pip install sagemaker-containers

# Copies the training code inside the container
COPY train.py /opt/ml/code/train.py

# Defines train.py as script entrypoint
ENV SAGEMAKER_PROGRAM train.py

有关此方法的详细信息,请参阅 https://docs.aws.amazon.com/sagemaker/latest/dg/build-container-to-train-script-get-started.html

2019 年 11 月 10 日更新:

现在有一种在 SageMaker 中使用 Tensorflow 2 的方法,尽管没有直接从 SageMaker 控制台启动 TF 2 的快捷方式。

  1. 启动conda Python3内核

  2. 进行一些更新(每个代码单元一个):

!pip install --upgrade pip         # pip 19.0 or higher is required for TF 2
!pip install --upgrade setuptools  # Otherwise you'll get annoying warnings about bad installs
  1. 安装 Tensorflow 2
!pip install --user --upgrade tensorflow

鉴于 doc,这将安装在 $HOME

Nota:

If you are using a GPU based instance of SageMaker, replace tensorflow by tensorflow-gpu.

您现在可以在您的实例中使用 TF 2。只要实例保持运行,这只需要做一次。

要测试,只需 运行 在下一个单元格中:

import tensorflow as tf
print(tf.__version__)

您应该会看到 2.0.0 或更高版本。

来自 SageMaker 团队。要无缝使用 SageMaker,建议您试用 Amazon SageMaker Studio. It's similar to a Jupyter Notebook instance but has a variety of SageMaker services already integrated within it. A huge plus point is that you can select from a variety of kernels,对于 TensorFlow 2.0,您可以 select 任何已经安装了所有必需软件包的软件:

Python 3 (TensorFlow 2.1 Python 3.6 CPU Optimized)
Python 3 (TensorFlow 2.1 Python 3.6 GPU Optimized)
Python 3 (TensorFlow 2.3 Python 3.7 CPU Optimized)
Python 3 (TensorFlow 2.3 Python 3.7 GPU Optimized)

在 Studio 中,您可以 select 位于 SageMaker Studio 实例右上角的内核下拉菜单:

下面显示的是与 TensorFlow 2.0 兼容的可用内核的 SageMaker Studio 中 UI 界面的屏幕截图。请注意,SageMaker Studio 中的所有内核都经过持续测试,并与所有 SageMaker 服务无缝协作。