构建

用于编写模型的托管笔记本

Amazon SageMaker 提供完全托管的实例,其运行的是 Jupyter 笔记本,用于进行数据探索和预处理训练。这些笔记本已预先加载了适用于常见深度学习平台的 CUDA 和 cuDNN 驱动程序、Anaconda 软件包以及适用于 TensorFlow、Apache MXNet、Chainer 和 PyTorch 的库。

只需单击一下鼠标,即可访问完全托管的机器学习笔记本环境 (使用的是常见 Jupyter 开源笔记本格式)。

通过这些笔记本工作区,您可以使用几乎所有常见库、框架和接口来探索和呈现数据并在可重复使用的工作流中记录自己的发现。在笔记本中,您可以添加自己之前存储在 Amazon S3 中的数据。此外,您还可以使用 AWS Glue 轻松将数据从 Amazon RDS、Amazon DynamoDB 和 Amazon Redshift 移动到 S3 以进行分析。您可以写入或导入您自己的笔记本或使用已预先加载到 Amazon SageMaker 中的其中一个预构建笔记本。预构建笔记本适用于所有内置的机器学习算法。此外,笔记本模板可以帮助您开始使用常见 ML 应用程序以及更高级的 Amazon SageMaker 功能。

常见 ML 应用程序模板

高级 SageMaker 功能模板

时间序列预测

使用您自己的 TensorFlow、MXNet 和 Chainer 容器

有针对性的直接营销

使用您自己的 scikit 或 R 算法或模型

客户流失预测

分布式训练中的数据分区

内置的高性能算法

Amazon SageMaker 提供的机器学习算法不仅性能高、可扩展,还针对速度、规模和准确性进行了优化。这些算法可以对 PB 级数据集执行训练,所提供的性能是其他实施方案的 10 倍之高。您可以从监督算法中选择,其中,正确答案会在训练时显示,您也可以在模型出错的位置指示模型。Amazon SageMaker 提供一些监督算法 (如 XGBoost 和线性/逻辑回归或分类),以解决建议和时间序列预测问题。Amazon SageMaker 还提供对非监督式学习 (也就是说,算法必须自行发现正确答案) 的支持,例如 K 均值集群分析和主成分分析 (PCA),从而解决基于购买行为识别客户群等问题。

Amazon SageMaker 会自动为您提供最常见的机器学习算法。您只需指定数据源,便可立即开始针对数据细分运行 K 均值群集分析、针对建议运行因式分解机、时间序列预测、线性回归或主成分分析。

BlazingText Word2Vec BlazingText 采用 Word2Vec 算法进行扩展,并加快来自大量文档的词嵌入的生成速度。
DeepAR 通过使用递归神经网络从很多相关的时间序列中学习模式来生成准确预测结果的一种算法。
因式分解机 一种模型,可通过极少数据预估各个特征之间的所有交互。
梯度提升树 (XGBoost) XGBoost 是“极值梯度提升”的简称,一种经过优化的分布式梯度提升库。
图像分类 (ResNet) 一种常见神经网络,用于开发图像分类系统。
K 均值集群分析 一种最简单的 ML 算法。用于在未标记数据中查找群体。

潜在狄利克雷分配 (LDA)

一种模型,非常适用于自动发现一组文本文件中的主要话题。
线性学习者 (分类) 线性分类使用对象的特性来识别该对象所归属的对应组。
线性学习者 (回归) 线性回归用于预测两个变量之间的线性关系。
神经话题建模 (NTM) 一种基于神经网络的方法,用于通过文本和图像数据集学习话题。
主成分分析 (PCA) 该算法常用于数据预处理,可将一个表格或矩阵的多个特征整合为较少的典型特征。
随机森林砍伐 用于异常检测的自主机器学习算法。
Seqence2Sequence 一种通用的文本编解码器,常用于机器翻译、文本摘要等。
k-Nearest-Neighbor (kNN) 一种适用于处理分类和回归问题的非参数模型。
物体检测
检测图像中的多个物体,对其进行分类并放置边界框。

这些算法已经过优化,因此它们的性能比传统实施方案所能达到的速度快 10 倍之多。我们实现此目标的一种做法是实施这些算法,这样它们便无需返回查看已遇到的数据。过去,算法通常需要多次返回查看数据集以参考之前的数据。这对于小型数据集还可以接受,但会影响大型数据集的性能,从而大大减慢训练速度。借助单程工程设计,您能够以较低成本高效地对 PB 级数据集进行训练。

广泛的框架支持

Amazon SageMaker 会自动配置和优化 TensorFlow、Apache MXNet、Chainer 和 PyTorch,因此您无需进行任何设置便可开始使用这些框架,而且我们将在未来的几个月内添加其他大型框架。当然,您始终可以将所需的任何框架添加到 Amazon SageMaker,方法是将其构建到您存储在 Amazon EC2 Container Registry 中的 Docker 容器。

在本地执行测试和构建原型

Github 上提供了 Amazon SageMaker 中使用的开源 Apache MXNetTensorflow Docker 容器。您可以将这些容器下载到本地环境,使用 Amazon SageMaker Python 软件开发工具包测试脚本,然后再部署到 Amazon SageMaker 训练或托管环境。当您已完成本地测试并准备好部署到生产训练和托管环境时,只需更改一行代码即可。

训练

一键式训练

当您准备好在 Amazon SageMaker 中训练时,只需指定数据在 Amazon S3 中的位置,注明所需的 Amazon SageMaker ML 实例类型和数量,然后在控制台中单击一下即可开始。Amazon SageMaker 设置分布式计算集群、执行训练、将结果输出至 Amazon S3,然后在完成后销毁集群。

训练模型可通过使用 Amazon SageMaker 轻松创建;您只需指定数据在 S3 中的位置,然后 Amazon SageMaker 将采用您的算法并在训练集群 (在集群本身的软件定义的网络中被隔离,按照您的需求进行了配置) 上运行该算法。您只需选择实例类型(包括非常适合快速高效的训练的 P3 GPU 实例),Amazon SageMaker 便会在 Auto Scaling 组中创建您的群集;将 EBS 卷挂载到每个节点;设置数据管道;并使用 TensorFlow、MXNet、Chainer 或 PyTorch 脚本、Amazon 自己的算法或者由您自己的容器提供的算法开始训练。完成后,它会将结果输出至 S3 并自动销毁集群。

为轻松进行大规模训练,我们优化了 S3 数据流的训练方式。通过 API,您可以指定将所有数据发送到集群中的每个节点,或者让 Amazon SageMaker 根据您的算法需求管理各个节点的数据分布。

通过结合使用内置算法,Amazon SageMaker 所能提供的训练扩展性将可大大减少运行训练的时间和成本。

Automatic Model Tuning

Amazon SageMaker 可以通过调整数千个不同的算法参数组合来校正您的模型,从而达到模型能够实现的最精准预测。

当您要校正模型以提高准确度时,您需要执行两个重要操作:修改您为模型提供的数据输入 (如采用一个数的对数),以及调整算法的参数。这些参数称为超参数,很难找到正确的值。一般来说,您可以先随便选择一个值,然后在您开始注意到变化产生的影响后进行调整,一直重复便可。这一周期可能很长,具体取决于您的模型拥有多少超参数。

Amazon SageMaker 在训练期间提供 Automatic Model Tuning 选项,从而简化了这一周期。Amazon SageMaker 将真正使用 Machine Learning 技术优化您的 Machine Learning 模型。工作原理如下:学习不同类型的数据对模型有何影响,然后在多个模型副本中应用该知识以快速找出最佳的可能结果。作为开发人员或数据科学家,这意味着您确实只需关注自己希望对模型中数据所做的调整,因此训练期间所需关注的问题便大大减少了。

启动 Automatic Model Tuning 时,您只需通过 API 指定训练任务的数量即可,Amazon SageMaker 会替您完成剩下的工作。

部署

一键式部署

您可以跨多个可用区在自动扩展的 Amazon ML 实例上一键部署模型以实现高冗余。您只需指定实例类型以及所需的最小和最大数量,Amazon SageMaker 将负责其余工作。它将启动实例、部署您的模型并针对您的应用程序设置安全的 HTTPS 终端节点。您的应用程序只需为该终端节点提供 API 调用,即可实现低延迟/高吞吐量推理。借助此架构,您可以在几分钟内将新模型集成到应用程序,这是因为模型变化不再要求应用程序代码随之变化。

自动 A/B 测试

Amazon SageMaker 还可以为您管理模型 A/B 测试。您可以配置终端节点以在多达五个不同模型上传输流量,然后设置您希望每个模型处理的推断调用比例。您可以随时更改所有设置、灵活地做实验,然后确定现实中哪个模型能够生成最精准的结果。

完全托管与自动扩展

Amazon SageMaker 能够代您管理生产计算基础设施以执行运行状况检查、应用安全补丁并进行其他例行维护,以上操作均需通过内置的 Amazon CloudWatch 监控和日志记录功能实现。

批量转换

通过批量转换,您可以针对大批量或小批量数据运行预测。无需将数据集拆分为多个区块,也无需管理实时终端节点。使用一个简单的 API,您可以轻松快速地请求对大量数据记录进行预测并转换数据。

 

了解有关 Amazon SageMaker 定价的更多信息

访问定价页面
准备好开始使用了吗?
注册
还有更多问题?
联系我们
页面内容
构建 训练 部署