亚马逊AWS官方博客

AWS Deep Learning Conda AMI 和 Base AMI 入门

今天,AWS 宣布发布两个新版本的 AWS Deep Learning AMI:基于 Conda 的 AMI 和 Base AMI。本文介绍有关如何充分利用新 AMI 的说明和其他资源。

带 Conda 托管环境的新 Deep Learning AMI

这些面向 Amazon LinuxUbuntu 的新 Deep Learning AMI 预安装了 Python 环境,用于使用 Conda 这个热门开源软件包和环境管理工具创建的深度学习。Conda 托管 Python 环境针对常见深度学习框架 (包括 Apache MXNet、TensorFlow、Caffe2、PyTorch、Keras、CNTK 和 Theano) 进行了预先配置。此外,每个 Python 环境都有两个版本 – Python 2 和 Python 3。使用 AWS 管理控制台登录 AWS EC2 实例之后,系统会提供一条控制台消息,列出所有 Conda 环境。

您也可以运行以下命令获取此列表:

conda env list

接下来,为所选深度学习框架 (如 MXNet) 激活 Python 环境,运行以下命令:

对于 Python 2

source activate mxnet_p27

对于 Python 3

source activate mxnet_p36

处于 Python 环境之后,可以运行以下命令查看已安装软件包的列表:

conda list

在 Python 环境中运行深度学习代码很简单。首先启动 python shell:

python

然后导入深度学习框架,或以通常的方式运行深度学习 Python 代码:

import mxnet

现在,切换到另一个深度学习框架,如 TensorFlow。首先退出 python shell

exit()

然后取消激活当前 MXNet 环境

source deactivate

然后像前面那样切换到 Python 环境,只是这次要激活的是 TensorFlow:

对于 Python 2

source activate tensorflow_p27

对于 Python 3

source activate tensorflow_p36

要阅读有关管理 Conda 环境的更多信息,可以在获取 Conda 入门指南获得 Conda 命令备忘单和其他学习资源。您还可以访问新 AWS Deep Learning AMI 文档网站,浏览可从命令行直接运行的介绍性教程

从 Jupyter Notebook 界面管理 Conda

您还可以直接从 Jupyter Notebook 浏览器界面管理 Conda 环境。您可以使用我们文档网站上的说明在基于 Conda 的 AMI 上启动 Jupyter Notebook 服务器。Conda 支持通过以下功能与 Jupyter Notebook 紧密集成:

选择深度学习环境

首先从 Internet 浏览器访问 Jupyter 服务器。在主 Files 页面上,可以从下拉列表中选择具有您所选深度学习框架的 Conda 环境,如以下屏幕截图所示。然后可以继续启动新 Notebook。它将自动链接到您所选的 Python 环境。

您还可以使用此页面上的下拉列表切换到具有不同深度学习框架的其他环境。为帮助您开始使用第一个 Notebook,基于 Conda 的 AMI 附带几个 Jupyter Notebook 并且随时可以启动教程

管理环境

打开 Conda 标签页,可以看到 AMI 上 Conda 环境的专用管理页面:

在此页面上,可以浏览所有预安装 Conda 环境的列表、环境内部安装的软件包,甚至可以通过升级软件包或卸载软件包来重新配置环境。

配置新的 Deep Leaning Base AMI

面向 Amazon LinuxUbuntu 的 Base AMI 附带 GPU 驱动程序基础平台,以及可用来部署您自己的自定义深度学习环境的加速库。默认情况下,该 AMI 配置有 NVidia CUDA 9 环境。不过,通过重新配置环境变量 LD_LIBRARY_PATH,您也可以切换到 CUDA 8 环境。您只需将该环境变量字符串的 CUDA 9 部分替换为 CUDA 8 相应的内容。

LD_LIBRARY_PATH 字符串的 CUDA 9 部分 (默认安装)

…:/usr/local/cuda-9.0/lib64:/usr/local/cuda-9.0/extras/CUPTI/lib64:/lib/nccl/cuda-9:…… LD_LIBRARY_PATH 值的其余部分

替换为 CUDA 8

…:/usr/local/cuda-8.0/lib64:/usr/local/cuda-8.0/extras/CUPTI/lib64:/lib/nccl/cuda-8:…… LD_LIBRARY_PATH 值的其余部分

入门

Deep Learning AMI 入门很简单。您可以关注我们的分步博客或访问我们的新 AWS Deep Learning AMI 文档网站开始了解操作方法指南和有用的资源。


作者简介

Sumit Thakur 是 AWS 深度学习高级产品经理。他负责开发让客户能够轻松开始在云端进行深度学习的产品,他专注于使 Deep Learning AMI 引擎更易用。在业余时间,他喜欢亲近自然和观看科幻电视剧。