TensorFlow - Amazon EMR
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

TensorFlow

TensorFlow 是一种开源符号数学库,用于机器智能和深度学习应用程序。有关更多信息,请参阅 TensorFlow 网站。TensorFlow 在 Amazon EMR 发行版 5.17.0 及更高版本中提供。

下表列出了 Amazon EMR 6.x 系列的最新发行版附带的 TensorFlow 版本,以及 Amazon EMR 随 TensorFlow 一起安装的组件。

有关此发行版中随 TensorFlow 安装的组件版本,请参阅 Release 6.14.0 Component Versions

emr-6.14.0 的 TensorFlow 版本信息
Amazon EMR 发行版标签 TensorFlow 版本 随 TensorFlow 安装的组件

emr-6.14.0

TensorFlow 2.11.0

emrfs, emr-goodies, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, tensorflow

下表列出了 Amazon EMR 5.x 系列的最新发行版附带的 TensorFlow 版本,以及 Amazon EMR 随 TensorFlow 一起安装的组件。

有关此发行版中随 TensorFlow 安装的组件版本,请参阅 Release 6.14.0 Component Versions

emr-5.36.1 的 TensorFlow 版本信息
Amazon EMR 发行版标签 TensorFlow 版本 随 TensorFlow 安装的组件

emr-5.36.1

TensorFlow 2.4.1

emrfs, emr-goodies, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-httpfs-server, hadoop-kms-server, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, tensorflow

使用的 TensorFlow 版本因 Amazon EC2 实例类型而异

Amazon EMR 使用的 TensorFlow 库版本因您为集群选择的实例类型而异。下表按实例类型列出版本。

EC2 实例类型 TensorFlow 版本

M5 和 C5

利用英特尔 MKL 进行优化的 TensorFlow 1.9.0

P2

采用 CUDA 9.2、cuDNN 7.1 的 Tensorflow 1.9.0

P3

采用 CUDA 9.2、cuDNN 7.1、NCCL 2.2.13 的 Tensorflow 1.9.0

NVIDIA NCCL 仅适用于 P3 实例。最终用户许可协议(EULA):在 Amazon EMR 上使用 Nvidia 组件,即表示您同意产品 EULA 中列出的条款和条件。

所有其他地址

Tensorflow 1.9.0

安全性

除了遵循安全使用 TensorFlow 指南外,还建议您在私有子网中启动集群,以帮助您限制对受信任源的访问。有关更多信息,请参阅《Amazon EMR 管理指南》中的 Amazon VPC 选项

使用 TensorBoard

TensorBoard 是一套用于 TensorFlow 程序的可视化工具。有关更多信息,请参阅 Tensorflow 网站上的 Tensorflow:可视化学习

要将 TensorBoard 与 Amazon EMR 结合使用,您必须在集群主节点上启动 TensorBoard。

在 Amazon EMR 上将 Tensorboard 与 Tensorflow 结合使用
  1. 使用 SSH 连接到集群的主节点。有关更多信息,请参阅《Amazon EMR 管理指南》中的使用 SSH 连接到主节点

  2. 键入以下命令,在主节点上启动 TensorFboard。将 /my/log/directory 替换为您使用摘要写入器生成和存储摘要数据的主节点上的目录。

    Amazon EMR 5.19.0 and later
    python3 -m tensorboard.main --logdir=/home/hadoop/tensor --bind_all
    Amazon EMR 5.18.1 and earlier
    python3 -m tensorboard.main --logdir=/my/log/dir

    默认情况下,主节点使用端口 6006 和主公共 DNS 名称托管 TensorBoard。启动 TensorBoard 后,命令行输出将显示可用于连接到 TensorBoard 的 URL,如以下示例所示:

    TensorBoard 1.9.0 at http://master-public-dns-name:6006 (Press CTRL+C to quit)
  3. 设置来自受信任客户端对主节点上 Web 界面的访问权限。有关更多信息,请参阅《Amazon EMR 管理指南》中的查看 Amazon EMR 集群上托管的 Web 界面

  4. 打开 TensorBoard(http://master-public-dns-name:6006)。