深度学习 AMI
开发人员指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 Amazon AWS 入门

使用 采用 Conda 的 Deep Learning AMI

采用 Conda 的 Deep Learning AMI 简介

Conda 是一个开源程序包管理系统和环境管理系统,在 Windows、macOS 和 Linux 上运行。Conda 快速安装、运行和更新程序包及其依赖项。Conda 可轻松创建、保存、加载和切换本地计算机上的环境。

采用 Conda 的 Deep Learning AMI 已完成配置,以便让您轻松切换深度学习环境。以下说明为您介绍与 conda 相关的一些基本命令。它们还可以帮助您验证框架的基本导入正常运行,并且您可以使用框架运行一些简单操作。然后,您可以继续查看 DLAMI 提供的更全面的教程,或者每个框架的项目站点上提供的框架示例。

步骤 1:登录您的 DLAMI

登录服务器后,您会看到服务器的“每日消息”(MOTD),它介绍了可以用来切换不同深度学习框架的各种 Conda 命令。以下是示例 MOTD。由于新版本 DLAMI 的发布,您的特定 MOTD 可能不同。

============================================================================= __| __|_ ) _| ( / Deep Learning AMI (Ubuntu) ___|\___|___| ============================================================================= Welcome to Ubuntu 16.04.4 LTS (GNU/Linux 4.4.0-1062-aws x86_64v) Please use one of the following commands to start the required environment with the framework of your choice: for MXNet(+Keras2) with Python3 (CUDA 9.0 and Intel MKL-DNN) _______________________________ source activate mxnet_p36 for MXNet(+Keras2) with Python2 (CUDA 9.0 and Intel MKL-DNN) _______________________________ source activate mxnet_p27 for TensorFlow(+Keras2) with Python3 (CUDA 9.0 and Intel MKL-DNN) _____________________ source activate tensorflow_p36 for TensorFlow(+Keras2) with Python2 (CUDA 9.0 and Intel MKL-DNN) _____________________ source activate tensorflow_p27 for Theano(+Keras2) with Python3 (CUDA 9.0) _______________________________________________ source activate theano_p36 for Theano(+Keras2) with Python2 (CUDA 9.0) _______________________________________________ source activate theano_p27 for PyTorch with Python3 (CUDA 9.0 and Intel MKL) ________________________________________ source activate pytorch_p36 for PyTorch with Python2 (CUDA 9.0 and Intel MKL) ________________________________________ source activate pytorch_p27 for CNTK(+Keras2) with Python3 (CUDA 9.0 and Intel MKL-DNN) _________________________________ source activate cntk_p36 for CNTK(+Keras2) with Python2 (CUDA 9.0 and Intel MKL-DNN) _________________________________ source activate cntk_p27 for Caffe2 with Python2 (CUDA 9.0) ________________________________________________________ source activate caffe2_p27 for Caffe with Python2 (CUDA 8.0) __________________________________________________________ source activate caffe_p27 for Caffe with Python3 (CUDA 8.0) __________________________________________________________ source activate caffe_p35 for Chainer with Python2 (CUDA 9.0 and Intel iDeep) ______________________________________ source activate chainer_p27 for Chainer with Python3 (CUDA 9.0 and Intel iDeep) ______________________________________ source activate chainer_p36 for base Python2 (CUDA 9.0) __________________________________________________________________ source activate python2 for base Python3 (CUDA 9.0) __________________________________________________________________ source activate python3

每个 Conda 命令具有以下模式:

source activate framework_python-version

例如,您可能会看到 for MXNet(+Keras1) with Python3 (CUDA 9) _____________________ source activate mxnet_p36,这意味着该环境具有 MXNet、Keras 1、Python 3 和 CUDA 9。要激活此环境,您可以使用以下命令:

$ source activate mxnet_p36

此命令的另一个变体是:

$ source activate mxnet_p27

这意味着该环境具有 MXNet 和 Python 2 (使用 Keras 1 和 CUDA 9)。

步骤 2:启动 MXNet Python 3 环境

我们首先测试 MXNet,以便让您了解它有多么简单。

注意

在启动您的第一个 Conda 环境时,请在其加载期间耐心等待。采用 Conda 的 Deep Learning AMI 会在框架首次激活时自动为您的 EC2 实例安装框架的最优化版本。您不应期望后续的延迟。

  • 激活适用于 Python 3 的 MXNet 虚拟环境。

    $ source activate mxnet_p36

这将激活使用 Python 3 的 MXNet 环境。或者,您也可以激活 mxnet_p27,以构建使用 Python 2 的环境。

步骤 3:测试某些 MXNet 代码

要测试您的安装,请使用 Python 编写 MXNet 代码,以使用 NDArray API 创建并打印数组。有关更多信息,请参阅 NDArray API

  1. 启动 iPython 终端。

    (mxnet_p36)$ ipython
  2. 导入 MXNet。

    import mxnet as mx

    您可能会看到一条关于第三方软件包的警告消息。您可以忽略它。

  3. 创建一个 5x5 矩阵、一个 NDArray 实例,将元素初始化为 0。打印数组。

    mx.ndarray.zeros((5,5)).asnumpy()

    验证结果。

    array([[ 0., 0., 0., 0., 0.], [ 0., 0., 0., 0., 0.], [ 0., 0., 0., 0., 0.], [ 0., 0., 0., 0., 0.], [ 0., 0., 0., 0., 0.]], dtype=float32)

    您可以在 MXNet 教程部分找到 MXNet 的更多示例。

步骤 4:切换到 TensorFlow 环境

现在我们将切换到 TensorFlow!如果您仍然处于 iPython 控制台中,则使用 quit(),然后准备切换环境。

  1. 激活适用于 Python 3 的 TensorFlow 虚拟环境。

    $ source activate tensorflow_p36
  2. 启动 iPython 终端。

    (tensorflow_36)$ ipython
  3. 运行快速 TensorFlow 程序。

    import tensorflow as tf hello = tf.constant('Hello, TensorFlow!') sess = tf.Session() print(sess.run(hello))

您应该会看到“Hello, Tensorflow!”现在,您已测试了两种不同的深度学习框架,您已了解如何切换框架。

提示

有关已知问题的信息,请参阅发行说明:

后续步骤

运行 Jupyter 笔记本电脑教程