使用 Amazon SageMaker 构建

Amazon SageMaker 提供标记您的训练数据、访问和共享笔记本以及使用内置算法和框架所需的所有内容,因此您可以轻松构建机器学习 (ML) 模型并为训练做好准备。

功能

协作笔记本体验

Amazon SageMaker Studio Notebooks 是一键式 Jupyter 笔记本,您可以用它在几秒钟内实现弹性计算。Notebooks 包含运行或重新创建机器学习工作流程所需的一切,并集成在 Amazon SageMaker Studio 中。Notebooks 预装了所有常用的 CUDA 和 cuDNN 驱动程序、Anaconda 软件包以及框架库。

笔记本环境可让您浏览和可视化数据,并记录在可重复使用的工作流程中的发现。在笔记本中,您可以添加存储在 Amazon S3 中的数据。此外,您还可以使用 AWS Glue 轻松将数据从 Amazon RDS、Amazon DynamoDB 和 Amazon Redshift 移动到 S3 以进行分析。

如果没有弹性笔记本,则要查看、运行或共享笔记本,您需要启动计算实例来为笔记本提供支持。如果您需要更多的计算能力,则需要启动一个新实例,转移笔记本,然后关闭旧实例。而且,由于笔记本通常耦合到计算实例,并且笔记本通常存在于用户的工作站上,因此没有简单的方法可以共享笔记本和进行协作迭代。

SageMaker Studio Notebooks 克服了这些挑战。您不再需要浪费时间关闭旧实例并在新实例中重新创建工作。这样可以更快地开始构建模型。

您可以写入或导入笔记本或使用 Amazon SageMaker 随附的预构建笔记本之一用于其他使用案例。启动后,您可以不中断地增加和减少计算资源(包括 GPU 资源)。此外,您的状态会自动保存,这样下次返回笔记本时,您就可以准确地找到离开的地方。

SageMaker Studio Notebooks 可以轻松地与同事共享,以便他们可以可视化和重现您的结果。

笔记本

构建精确的训练数据集

Amazon SageMaker Ground Truth 可帮助您使用机器学习快速构建高度准确的训练数据集,并将数据标记成本降低多达 70%。成功的机器学习模型的训练方式是:使用经过标记的数据来教会模型如何做出正确的决策。此过程通常需要大量人员花费数月的时间才能完成。SageMaker Ground Truth 提供了一种创新的解决方案,可以降低成本和复杂性,同时通过将人工标记流程与称为主动学习的机器学习相结合来提高数据标记的准确性。

工作原理

全面托管的大规模数据处理

通常,机器学习的数据处理和分析工作负载是在自行管理的基础设施上运行的,而这些基础设施很难随着业务需求的变化分配和扩展。使用不同的工具来实现这一目标会变得很麻烦,从而导致性能达不到最优,资本和运营费用增加。Amazon SageMaker Processing 通过将 SageMaker 的易用性、可扩展性和可靠性扩展到可大规模运行数据处理工作负载的全面托管体验,克服了这一挑战。SageMaker Processing 使您可以连接到现有的存储或文件系统数据源,增加运行作业所需的资源,将输出保存到持久性存储中,并提供日志和指标。您还可以使用自己选择的框架增加自己的容器,并充分利用运行数据处理和分析工作负载的优势。

内置的高性能算法

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

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

算法 描述
BlazingText Word2Vec BlazingText 采用 Word2Vec 算法进行扩展,并加快来自大量文档的词嵌入的生成速度。
DeepAR 通过使用递归神经网络从很多相关的时间序列中学习模式来生成准确预测结果的一种算法。
因式分解机 一种模型,可通过极少数据预估各个特征之间的所有交互
梯度提升树 (XGBoost) XGBoost 是“极值梯度提升”的简称,一种经过优化的分布式梯度提升库。
图像分类 (ResNet) 一种常见神经网络,用于开发图像分类系统。
IP 见解 一种检测恶意用户或学习 IP 地址使用模式的算法。
K-Means 集群 它是最简单的 ML 算法之一,用于在未标记的数据中查找组。
K-Nearest Neighbor (k-NN) 一种基于索引的算法,用于解决基于分类和回归的问题。
潜在狄利克雷分配 (LDA) 一种模型,非常适用于自动发现一组文本文件中的主要话题。
线性学习者(分类) 线性分类使用对象的特性来识别该对象所归属的对应组。
线性学习者(回归) 线性回归用于预测两个变量之间的线性关系。
神经主题建模 (NTM) 一种基于神经网络的方法,用于通过文本和图像数据集学习话题。
Object2Vec 一种神经嵌入算法,用于计算最近的邻居和可视化自然集群。
对象检测 检测图像中的多个物体,对其进行分类并放置边界框。
主成分分析 (PCA) 该算法常用于数据预处理,可将一个表格或矩阵的多个特征整合为较少的典型特征。
随机森林砍伐 用于异常检测的自主机器学习算法。
语义分段 通过向图像的各个像素分配标签来对图像进行分区以识别感兴趣的地方。
Sequence2Sequence 一种通用的文本编解码器,常用于机器语言翻译、文本摘要等。

了解更多 »

您还可以通过 Docker 容器添加自己的框架或算法,或者从 AWS Marketplace 中提供的数百种算法和预先训练的模型中进行选择。 

广泛的框架支持

Amazon SageMaker 支持许多流行的深度学习框架,例如 TensorFlow、Apache MXNet、PyTorch、Chainer 等。这些框架会自动配置和优化以实现高性能。您无需手动设置这些框架,就可以在内置容器中使用它们。您可以将所需的任何框架添加到 SageMaker,方法是将其构建到您存储在 Amazon EC2 Container Registry 中的 Docker 容器。

了解更多 »

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

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

强化学习

除传统的监督和自主学习外,Amazon SageMaker 还支持强化学习。SageMaker 具有内置、完全托管的强化学习算法,包括学术文献中的一些最新和最佳表现的算法。SageMaker 在多个框架(包括 TensorFlow 和 MXNet)以及为强化学习从头设计的更新的框架(如 Intel Coach 和 Ray RL)中都支持 RL。支持多个 2D 和 3D 物理特性模拟环境,包括基于开源 OpenGym 接口的环境。此外,SageMaker RL 将允许您使用 Amazon Sumerian 和 Amazon RoboMaker 中内置的虚拟 3D 环境进行训练。为帮助您入门,SageMaker 还提供了一系列示例笔记本和教程。

大多数机器学习都属于一种称为监督学习的类别。此方法需要大量标记的训练数据,但您构建的模型能够做出复杂的决策。它是针对计算机视觉、语音和语言模型的常见方法。另一种常见但较少使用的机器学习类别称为自主学习。对于这种学习类别,算法将试图识别未标记数据中的隐藏结构。训练自主模型的标准低得多,但代价的是模型做出的决策不太复杂。自主模型通常用于识别数据中的异常,如温度的异常波动或网络入侵的迹象。

强化学习 (RL) 已成为机器学习的又一种补充方法。RL 采用了一种与众不同的方法来训练模型。它几乎不需要标记的训练数据,但它仍然可以达到(在某些情况下甚至超过)人类的复杂程度。关于 RL,的最好的一点是它可以学习对一系列复杂的行为进行建模以达到预期的结果,而不是简单地做出单个决定。目前 RL 最常见的应用之一是训练自动驾驶车辆以导航到目的地。

了解 RL 如何工作的一个简单方法是设想一个简单的视频游戏,其中有一个角色需要穿越迷宫、收集旗帜和避开敌人。该游戏不是让人去玩,而是让算法控制角色并玩数百万个游戏。要开始玩游戏,只需知道角色可以向上、向下、向左和向右移动,并且得分将得到奖励。然后,该算法将学习如何玩以获得最高分。它将学习增加分数的行为(例如拿起旗帜或利用分数相乘),并最大限度地减少惩罚(例如被敌人击中)。 随着时间的推移,RL 算法可以学习掌控游戏的高级策略,例如首先清除迷宫的下半部分,如何以及何时使用攻击力提升以及如何利用敌人的行为。

RL 可以成为传统的机器学习技术的增力器。例如,RL 与监督学习已结合起来,以在医疗保健中打造个性化治疗方案,优化制造供应链,提高风力涡轮机性能,驾驶自动驾驶汽车,安全地操作机器人,甚至是为学生创建个性化课程和学习计划。

资源

构建 ML 模型的分步指南

了解如何在 Amazon SageMaker 中构建 ML 模型。

Amazon SageMaker 示例笔记本

在 GitHub 上访问丰富的示例 Amazon SageMaker 笔记本存储库。

构建安全的机器学习环境
 
探索 Amazon SageMaker 安全功能