一般性问题

问:什么是 Amazon SageMaker?

Amazon SageMaker 是一项完全托管的服务,可以帮助开发人员和数据科学家快速构建、训练和部署机器学习 (ML) 模型。SageMaker 完全消除了机器学习过程中每个步骤的繁重工作,让开发高质量模型变得更加轻松。

问:Amazon SageMaker 在哪些区域提供?

有关支持 Amazon SageMaker 的 AWS 区域的列表,请访问 AWS 区域表了解所有 AWS 全球基础设施。有关更多信息,请参阅 AWS 一般参考中的区域和终端节点

问:Amazon SageMaker 的服务可用性水平如何?

Amazon SageMaker 旨在提供高可用性。没有维护时段或计划停机时间。SageMaker API 在 Amazon 稳定可靠且具有高可用性的数据中心中运行,相关的服务堆栈会在每个 AWS 地区中的三处数据中心进行复制配置,以实现容错,防止服务器故障或可用区中断等事故导致的损失。

问:Amazon SageMaker 有哪些安全防护保障?

Amazon SageMaker 可以确保机器学习模型项目和其他系统项目在传输中和静态下全部经过加密。对 SageMaker API 和控制台发出的请求全部通过安全 (SSL) 连接进行。您可以为 SageMaker 分配 AWS Identity and Access Management 角色,为其提供资源访问权限以便进行训练和部署。您可以将加密的 S3 存储桶用于模型项目和数据,并为 SageMaker 笔记本、训练作业和终端节点分配 KMS 密钥来加密挂载的 ML 存储卷。

问:Amazon SageMaker 如何保护我的代码安全?

Amazon SageMaker 将代码存储在 ML 存储卷上,通过安全组保证安全,并可以选择在静态时加密。

问:Amazon SageMaker 是如何收费的?

您需要为用于托管笔记本、训练模型、执行预测和记录输出日志的 ML 计算、存储和数据处理资源付费。借助 Amazon SageMaker,您可以选择用于托管笔记本、训练和模型托管的实例的数量和类型。您只需按您的实际用量付费;既没有最低费用,也无需预付费。有关详细信息,请参阅 Amazon SageMaker 定价页面

问:如果我有自己的笔记本以及训练或托管环境,会怎么样?

Amazon SageMaker 提供完整的端到端工作流,但是您能够继续将现有工具与 SageMaker 结合使用。您可以根据业务需求将每个阶段的结果轻松传入和传出 SageMaker。

问:Amazon SageMaker 是否支持 R?

是,Amazon SageMaker 支持 R。您可以在 SageMaker 笔记本实例中使用 R,该实例包括预装的 R 内核和 reticulate 库。Reticulate 为 Amazon SageMaker Python 开发工具包提供了 R 接口,使机器学习从业人员能够构建、训练、调整和部署 R 模型。 

问:什么是 Amazon SageMaker Studio?

Amazon SageMaker Studio 提供了一个基于 Web 的可视化界面,您可以通过该界面执行所有 ML 开发步骤。借助 SageMaker Studio,您可以全面掌控构建、训练和部署模型的每个步骤。您可以快速上传数据、创建新笔记本、训练和调优模型,在步骤之间来回移动以调整实验、对比结果以及将模型部署到生产环境中,而且上述所有工作都在一个地方完成,大大提升了工作效率。您可以在统一的 SageMaker Studio 可视化界面中执行所有 ML 开发活动,包括笔记本、实验管理、自动创建模型、调试和分析以及模型偏差检测。

问:什么是 Amazon SageMaker Autopilot?

Amazon SageMaker Autopilot 是业内首个自动化机器学习功能,可让您完全掌控 ML 模型。只需单击几下,SageMaker Autopilot 即可自动检查原始数据、应用功能处理器、选择最佳算法集、训练和调优多个模型、跟踪模型性能以及根据性能对模型进行排名。如此一来,您无需像通常情况下训练模型那样耗费时间,只需很少的时间即可部署性能最佳的模型。您可以全面了解模型的创建方式以及模型内容。此外,SageMaker Autopilot 已与 Amazon SageMaker Studio 集成。您可以深入了解 SageMaker Autopilot 在 SageMaker Studio 中生成的 50 余种不同模型,轻松为您的使用案例选择最佳模型。SageMaker Autopilot 适用于各类人群,不具备机器学习经验的人员可以使用它轻松生成模型,经验丰富的开发人员可以使用它快速开发基准模型,供团队进一步迭代。

问:Amazon SageMaker Autopilot 与 Amazon Personalize 和 Amazon Forecast 等垂直行业 AI 服务有什么区别?

Amazon Personalize 和 Amazon Forecast 专门针对个性化推荐和预测使用场景,而 Amazon SageMaker Autopilot 是一种通用的自动机器学习解决方案,用于分类和回归问题,例如欺诈检测、客户流失分析和定向营销。Personalize and Forecast focus 打包提供训练和模型托管服务,重点关注简化端到端体验。您可以使用 Amazon SageMaker Autopilot 来训练模型,并自由使用这些模型及其生成的管道。然后您可以将模型部署到自己选择的托管环境中,或者进一步迭代以提高模型质量。

问:Amazon SageMaker Autopilot 支持哪些内置算法?

Amazon SageMaker Autopilot 在推出时支持 2 种内置算法:XGBoost 和 Linear Learner。

问:Amazon SageMaker Autopilot 是否支持分布式训练?

可以。所有 Amazon SageMaker Autopilot 都支持分布式训练,而且开箱即用。

问:能否手动停止 Amazon SageMaker Autopilot 作业?

可以。您可以随时停止某项作业。停止一项 Amazon SageMaker Autopilot 作业时,所有正在进行的试验都将停止,也不会开始新的试验。

构建模型

问:什么是 Amazon SageMaker Studio Notebooks?

Amazon SageMaker Studio Notebook 是一种新的协作、灵活、托管型 Jupyter 笔记本体验,属于完全集成的机器学习开发环境 Amazon SageMaker Studio 的一部分。

问:SageMaker Studio Notebooks 与基于实例的笔记本服务有何不同?

SageMaker Studio Notebooks 提供了几项重要的功能,从而将它与基于实例的笔记本区分开来。借助这一新的笔记本体验,您现在可以快速启动笔记本,而无需手动预置实例并等待其运行。启动 UI 来读取和执行笔记本的启动时间比基于实例的笔记本快。

您还可以随时灵活地在 UI 内从大量实例类型中进行选择。要启动新实例和移动笔记本,您不再需要转至 AWS 控制台。

每个用户都有一个独立于特定实例的隔离主目录。该目录在启动时便自动挂载在所有的笔记本服务器和内核中,因此,即使您切换实例以查看和运行笔记本,您仍可以访问笔记本和其他文件。

SageMaker Studio Notebooks 集成了 AWS SSO,使您可以轻松地使用组织凭证来访问笔记本。笔记本共享是 SageMaker Studio Notebooks 中的集成功能。您还可以通过一次单击与同事共享笔记本。

问:支持哪些类型的笔记本?

目前支持 Jupyter 笔记本。

问:Amazon SageMaker Studio Notebooks 是如何运作的?

Amazon SageMaker Studio Notebooks 是一键式 Jupyter 笔记本,可以快速启动。底层计算资源极具弹性,让您可以轻松启用或关闭可用资源,并且更改将在后台自动进行,不会干扰您的工作。SageMaker 还支持一键共享笔记本。您可以与他人轻松共享笔记本,他们将获得保存在同一位置的完全相同的笔记本。

使用 SageMaker Studio Notebooks 时,您可以通过 AWS SSO 使用您的企业凭证登录。在团队内和团队间共享笔记本非常简单,因为系统会在工作映像中自动跟踪运行笔记本所需的依赖关系,并在共享笔记本时将其封装在笔记本内。

问:Amazon SageMaker Studio Notebooks 如何与其他 AWS 服务协同工作?

Amazon SageMaker Studio Notebooks 让您能够使用 SageMaker 的所有功能,例如分布式训练、批量转换、托管和试验管理。您可以从 SageMaker Notebooks 中使用 Amazon S3 中的数据集、Amazon Redshift、AWS Glue、Amazon EMR 或 AWS Lake Formation 等其他服务。

问:问:什么是 Amazon SageMaker Ground Truth?

Amazon SageMaker Ground Truth 提供使用机器学习进行自动化数据标记的功能。SageMaker Ground Truth 首先会选择随机数据样本,并将其发送到 Amazon Mechanical Turk 进行标记。然后将结果用于训练标记模型,该模型会尝试自动对新的原始数据样本进行标记。当模型可以使用满足或超过设置阈值的置信度分数标记数据时,将提交标签。当置信度分数低于阈值时,数据会发送至人工贴标机。人工标记的一些数据用于为标记模型生成新的训练数据集,且模型会自动保留以提升其准确性。使用待标记的各个原始数据样本,重复此过程。标记模型在每次迭代时自动标记原始数据的能力变得更强,而传输给人工的数据变得更少。

训练模型

问:什么是 Amazon SageMaker Experiments?

Amazon SageMaker Experiments 可帮助您组织和跟踪机器学习模型的迭代。SageMaker Experiments 通过自动捕获输入参数、配置和结果并将其存储为“实验”来帮助您管理迭代。您可以使用 SageMaker Studio 的可视化界面来浏览进行中的实验,根据实验特征搜索先前的实验、查看先前的实验及结果,以及直观比较实验结果。

问:什么是 Amazon SageMaker Debugger?

Amazon SageMaker Debugger 能够在训练期间自动捕获实时指标(例如训练和验证、混淆矩阵和学习梯度),让训练流程更加透明,最终提高模型精度。

Amazon SageMaker Studio 中会直观呈现来自 SageMaker Debugger 的指标,以便您理解。在检测到常见的训练问题时,SageMaker Debugger 还会生成警告并提供修复建议。借助 SageMaker Debugger,您可以理解模型的工作原理,而在实现模型可解释性的过程中,这正是早期阶段的一个重要步骤。

问:什么是托管型 Spot 训练?

借助 Amazon SageMaker 的托管型 Spot 训练功能,您可以使用 Amazon EC2 Spot 实例来训练您的机器学习模型,同时降低最高 90% 的训练模型成本。

问:我如何使用托管型 Spot 训练?

您可以在提交训练作业时启用托管型 Spot 训练选项,同时您还可以指定希望等待 Spot 容量多长时间。然后,Amazon SageMaker 将使用 Amazon EC2 Spot 实例运行您的作业并管理 Spot 容量。您可以在训练作业运行及等待容量时全面了解其状态。

问:我应该在何时使用托管型 Spot 训练?

当您能灵活运行您的训练且您想最大限度降低训练作业成本时,托管型 Spot 训练适用。托管型 Spot 训练可帮助您将训练机器学习模型的成本最高降低 90%。

问:托管型 Spot 训练的工作原理是什么?

托管型 Spot 训练使用 Amazon EC2 Spot 实例进行训练,并且当 AWS 需要容量时可以先获得这些实例。因此,当容量可用时,托管型 Spot 训练作业可以以小的增量运行。当出现中断时,不需要从头开始重启训练作业,因为 Amazon SageMaker 可以使用最新的模型检查点恢复训练作业。SageMaker 的内置框架和内置计算机视觉算法支持定期检查点,并且您可以启用带有自定义模型的检查点。

问:使用托管型 Spot 训练时,我是否需要定期检查?

对于长期运行的训练作业,我们建议将定期检查点作为一般最佳实践。这将阻止您的托管型 Spot 训练作业在先取得容量时重新启动。当您启用检查点时,Amazon SageMaker 会从最近的检查点恢复您的托管型 Spot 训练作业。

问:如何计算使用托管型 Spot 训练作业节省的成本?

当托管的 Spot 训练作业完成后,您可以在 AWS 管理控制台中查看节省情况,并且还能通过训练作业运行持续时间与计费持续时间之间的百分比差异来计算成本节省。

无论您的托管型 Spot 训练作业中断了多少次,都只会根据下载数据的持续时间向您收取一次费用。

问:我可以将哪些实例用于托管型 Spot 训练?

可以将托管型 Spot 训练用于 Amazon SageMaker 中支持的所有实例。

问:哪些 AWS 区域支持托管型 Spot 训练?

目前提供 Amazon SageMaker 的所有 AWS 区域都支持托管型 Spot 训练。

问:对于可用于训练的数据集,有没有大小限制?

Amazon SageMaker 训练模型可以使用的数据集没有固定的大小限制。

问:我可以将哪些数据源轻松提取到 Amazon SageMaker 中?

您可以在创建训练作业时指定训练数据的 Amazon S3 位置。

问:Amazon SageMaker 使用哪些算法来生成模型?

Amazon SageMaker 包含一些内置算法,例如线性回归算法、逻辑回归算法、k-means 集群算法、主成分分析算法、因式分解机算法、神经主题建模算法、潜在狄利克雷分配算法、梯度提高树算法、序列到序列算法、预测时间序列 word2vec 和镜像分类算法等。SageMaker 还提供经过优化的 Apache MXNet、Tensorflow、Chainer、PyTorch、Gluon、Keras、Horovod、Scikit-learn 和 Deep Graph Library 容器。此外,Amazon SageMaker 还支持通过符合成文规格的 Docker 镜像提供的自定义训练算法。

问:什么是自动模型优化?

大多数 Machine Learning 算法都提供了各种各样的参数,这些参数控制了底层算法的运算方式。这些参数通常被称为超参数,它们的值会影响经过训练的模型的质量。Automatic Model Tuning 是为能够生成最优模型的算法寻找超参数组合的过程。

问:Automatic Model Tuning 可用来优化哪些模型?

只要在科学上可行,您就可以在 Amazon SageMaker 中基于任何算法运行自动模型优化,包括内置的 SageMaker 算法、深度神经网络算法或您通过 Docker 镜像引入 SageMaker 的任意算法。

问:可以在 Amazon SageMaker 之外使用 Automatic Model Tuning 吗?

目前不可以。只有在 Amazon SageMaker 内部使用它,才能获得最佳的模型优化性能和体验。

问:什么是底层优化算法?

目前,我们用于优化超参数的算法是对贝叶斯算法的自定义实现。其目的是在优化过程中优化客户指定的目标参数。具体来说,它检查已完成训练作业的目标参数,然后利用这一信息推断下一个训练作业的超参数组合。

问:系统是否针对需要优化的具体超参数提供建议?

不提供。某些超参数对模型性能的影响取决于各种各样的因素,很难肯定地说一个超参数比其他超参数更重要,因此需要对它进行优化。对于 Amazon SageMaker 的内置算法,我们会提示每个超参数是否可进行优化。

问:每个超参数优化任务用时多久?

超参数优化任务的用时长短取决于多种因素,包括数据的大小、底层算法和超参数的值。此外,客户可以选择同时执行的训练任务的数量和训练任务的总数量。所有这些选择都会影响超参数优化作业的用时。

问:能否像优化模型一样既快速又准确地同时优化多个目标?

目前不可以。目前,您必须指定一个目标参数来优化或更改您的算法代码,以生成一个新指标(该指标是两个或更多有用指标之间的加强平均值),并在优化过程中对该目标指标进行优化。

问:Automatic Model Tuning 是如何收费的?

超参数优化任务本身不收费。您需要按照模型训练定价为超参数优化作业启动的训练作业付费。

问:怎样判断是应该使用 Amazon SageMaker Autopilot 还是Automatic Model Tuning?

Amazon SageMaker Autopilot 可以自动处理典型的机器学习工作流程中的所有工作,包括特征预处理、算法选择和超参数优化,同时特别关注分类和回归使用场景。而 Automatic Model Tuning 用于优化任何模型,无论其是基于内置算法、深度学习框架还是自定义容器。为了获得灵活性,您必须手动选择具体算法并确定要优化的超参数和相应的搜索范围。

问:什么是强化学习?

强化学习是一项机器学习技术,可帮助代理运用从其自己的行为和经验中得到的反馈,通过反复试验在交互式环境中学习。

问:我是否可以在 Amazon SageMaker 中训练强化学习模型?

可以,除了监督学习和无监督学习训练模型之外,您还可以在 Amazon SageMaker 中训练强化学习模型。

问:强化学习与监督学习有何不同?

虽然监督学习与强化学习均使用输入和输出之间的映射,但强化学习使用延迟反馈,它对奖励信号进行了优化,以确保通过一系列操作实现长期目标,而不像监督学习那样,提供给代理的反馈是一组用于执行任务的正确操作。

问:什么时候应该使用强化学习?

监督学习技术的目标是根据训练数据中的模式找到正确的答案,无监督学习技术的目标是发现数据点之间的相同之处和不同之处。相比之下,强化学习技术的目标是学习如何实现预期结果,即使不清楚如何实现该结果。因此,RL 更适合实现智能应用,其中代理可以自主决策,例如机器人、无人驾驶车辆、暖通空调和工业控制等等。

问:可以使用哪些类型的环境来训练强化学习模型?

Amazon SageMaker RL 支持许多不同的环境来训练强化学习模型。您可以使用 AWS 服务(如 AWS RoboMaker)、开源环境或自定义环境(使用 Open AI Gym 接口开发),或者使用商业模拟环境(如 MATLAB 和 Simulink)。

问:我是否需要编写自己的 RL 代理算法来训练强化学习模型?

不需要,Amazon SageMaker RL 包含 RL 工具包(如 Coach 和 Ray RLLib),这些工具包提供 RL 代理算法的实现,如 DQN、PPO、A3C 等等。

问:我能否自带 RL 库和算法实现并在 Amazon SageMaker RL 中运行?

是的,您可以将您自己的 RL 库和算法实现引入 Docker 容器并在 Amazon SageMaker RL 中运行这些实现。

问:我是否可以使用 Amazon SageMaker RL 执行分布式部署?

可以。您甚至可以选择一个异构集群,其中训练可以在 GPU 实例上运行,而模拟可以在多个 CPU 实例上运行。

部署模型

问:什么是 Amazon SageMaker Model Monitor?

开发人员能够使用 Amazon SageMaker Model Monitor 来检测和修复概念偏差。SageMaker Model Monitor 会自动检测已部署模型中的概念偏差,并提供详细的警报,帮助确定问题的根源。通过 SageMaker 训练的所有模型都会自动发送关键指标,这些指标可以在 SageMaker Studio 中收集和查看。从 SageMaker Studio 内部,您可以配置要收集的数据、查看方式以及警报的接收时间。

问:我能否访问运行 Amazon SageMaker 的基础设施?

不能。Amazon SageMaker 会代您运行计算基础设施,从而执行运行状况检查、应用安全补丁和执行其他例行维护。您也可以通过在自己托管的环境中训练自定义推理代码来部署模型项目。

问:如何在投产后扩展 Amazon SageMaker 模型的大小和性能?

Amazon SageMaker 托管使用 Application Auto Scaling 自动扩展到您的应用程序所需的性能。此外,您可以通过修改终端节点配置,在不停机的情况下手动更改实例的数量和类型。

问:如何监控我的 Amazon SageMaker 生产环境?

Amazon SageMaker 将性能指标发到 Amazon CloudWatch Metrics,这样您可以跟踪指标、设置警报,并自动响应生产流量变化。此外,Amazon SageMaker 还会将日志写入 Amazon Cloudwatch Logs,让您能够监控生产环境并对其进行故障排除。

问:哪种模型能够通过 Amazon SageMaker 进行托管?

Amazon SageMaker 可托管符合推理 Docker 镜像的记录规格的任何模型,其中包括利用 Amazon SageMaker 模型项目和推理代码创建的模型。

问:Amazon SageMaker 支持的并发实时 API 请求的数量是多少?

Amazon SageMaker 旨在将每秒完成的事务量扩展到一个更大值。精确的数量因部署的模型以及部署模型的目标实例的数量和类型而有所不同。

问:什么是批量转换?

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

问:什么是 Amazon SageMaker Neo?

Amazon SageMaker Neo 让机器学习模型训练一次即可在云和边缘站点中的任何位置运行。SageMaker Neo 可以自动优化使用常用的深度学习框架构建的模型,这些框架可用于部署在多个硬件平台上。优化的模型运行速度最多可提高两倍,并且所消耗的资源不到典型机器学习模型的十分之一。

问:如何开始使用 Amazon SageMaker Neo?

要开始使用 Amazon SageMaker Neo,您需要登录 Amazon SageMaker 控制台,选择受训模型,根据示例编译模型,然后将生成的模型部署到目标硬件平台上。

问:Amazon SageMaker Neo 有哪些主要组件?

Amazon SageMaker Neo 包含两个主要组件:编译器和运行库。首先,Neo 编译器读取由不同框架导出的模型。然后,它将框架特定的功能和操作转换为与框架无关的中间表示形式。接着,它会执行一系列优化。最后,编译器会为优化的操作生成二进制代码,并将其写入一个共享对象库。此外,编译器还会将模型定义和参数保存到各个文件中。在执行期间,Neo 运行时会加载编译器生成的构件(模型定义、参数和共享对象库)以运行模型。

问:我是否需要使用 Amazon SageMaker 训练我的模型,才能使用 Amazon SageMaker Neo 来转换模型?

不需要。您可以在其他位置训练模型,然后使用 Neo 为 Amazon SageMaker ML 实例或 AWS IoT Greengrass 支持的设备优化这些模型。

问:Amazon SageMaker Neo 支持哪些模型?

目前,Amazon SageMaker Neo 支持最常用的深度学习模型(此类模型支持计算机视觉应用程序),以及当今 Amazon SageMaker 中最常用的决策树模型。Neo 可以优化 MXNet 和 TensorFlow 中训练的 AlexNet、ResNet、VGG、Inception、MobileNet、SqueezeNet 和 DenseNet 模型的性能,以及 XGBoost 中训练的分类和随机砍伐森林 (Random Cut Forest) 模型的性能。

问:Amazon SageMaker Neo 支持哪些平台?

目前,Neo 支持 SageMaker ML.C5、ML.C4、ML.M5、ML.M4、ML.P3 和 ML.P2 实例;AWS DeepLens、Raspberry Pi 及 Jetson TX1 和 TX2 设备;基于 Intel® Atom 和 Intel® Xeon CPU、ARM Cortex-A CPU、Nvidia Maxwell 及 Pascal GPU 的 Greengrass 设备。

问:是否需要使用目标硬件上支持的特定版本的框架?

不需要。开发人员可以在不依赖框架的情况下使用 Amazon SageMaker Neo 容器来运行模型。

问:使用 Amazon SageMaker Neo 的费用是多少?

您需要为使用 Amazon SageMaker Neo 运行推理的 Amazon SageMaker ML 实例付费。

问:Amazon SageMaker Neo 在哪些 AWS 区域提供?

要查看支持区域的列表,请参阅 AWS 区域表

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

访问定价页面
准备好开始使用了吗?
注册
还有更多问题?
联系我们