运行经过训练的 Amazon Lookout for Vision 模型 - Amazon Lookout for Vision

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

运行经过训练的 Amazon Lookout for Vision 模型

要使用您的模型检测图像中的异常,必须先使用 StartModel 操作来启动模型。Amazon Lookout for Vision 控制台提供了 AWS CLI 命令,可用于启动和停止您的模型。本节包括您可以使用的示例代码。

模型启动后,您可以使用 DetectAnomalies 操作来检测图像中的异常。有关更多信息,请参阅 检测图像中的异常

推理单位

当您启动模型后,Amazon Lookout for Vision 会预调配至少一个计算资源,称为一个推理单位。您应该在 StartModel API 的 MinInferenceUnits 输入参数中指定要使用的推理单位数量。模型的默认分配值为 1 个推理单位。

重要

您需要按照模型运行的小时数和模型在运行时使用的推理单位数付费,具体取决于您如何配置模型的运行。例如,如果使用两个推理单位启动模型并使用模型 8 小时,则需要支付 16 个推理小时(8 小时运行时间 x 两个推理单位)的费用。有关更多信息,请参阅 Amazon Lookout for Vision 定价。如果不通过调用 StopModel 明确停止模型,则即使您未主动使用模型来分析图像,也需要付费。

单个推理单位支持的每秒事务数 (TPS) 受以下因素影响:

  • Lookout for Vision 用来训练模型的算法。当您训练模型时,多个模型会受到训练。Lookout for Vision 会根据数据集的大小及其正常图像和异常图像组成情况,从中选择性能最好的模型。

  • 图像分辨率越高,需要的分析时间越长。

  • 小图像(以 MB 为测量单位)的分析速度比大图像快。

使用推理单位管理吞吐量

根据您的应用需求,您可以提高或降低模型的吞吐量。要提高吞吐量,请使用更多推理单位。每增加一个推理单位,您的处理速度就会增加一个推理单位。有关计算所需推理单位数的信息,请参阅计算 Amazon Rekognition Custom Labels 模型和 Amazon Lookout for Vision 模型的推理单位数量。如果要更改模型支持的吞吐量,您有两种选择:

手动添加或移除推理单位

停止模型,然后使用所需数量的推理单位重新启动模型。这种方法的缺点是,模型在重新启动时无法接收请求,也不能用于应对需求高峰。如果您的模型具有稳定的吞吐量,并且您的使用场景可以容忍 10-20 分钟的停机时间,请使用此方法。例如,您想使用每周计划对模型进行批量调用。

自动扩缩推理单位数量

如果您的模型必须适应需求高峰,Amazon Lookout for Vision 可以自动扩缩模型使用的推理单位数量。随着需求的增加,Amazon Lookout for Vision 会向模型添加更多推理单位,并在需求下降时将其移除。

要允许 Lookout for Vision 自动为模型扩缩推理单位,请启动模型,然后使用 MaxInferenceUnits 参数设置模型可使用的最大推理单位数量。通过设置最大推理单位数,您可以限制可供模型使用的推理单位数量,以此来管理模型的运行成本。如果不指定最大单位数,Lookout for Vision 将不会自动扩缩模型,而只会使用您启动模型时所用的推理单位数量。有关最大推理单位数量的信息,请参阅服务限额

您也可使用 MinInferenceUnits 参数指定最小推理单位数量。这可让您为模型指定最小吞吐量,其中一个推理单位代表 1 小时的处理时间。

注意

您无法使用 Lookout for Vision 控制台设置最大推理单位数量,而应通过为 StartModel 操作指定 MaxInferenceUnits 输入参数来设置。

Lookout for Vision 提供了以下 Amazon CloudWatch Logs 指标,您可以使用它们来确定模型当前的自动扩缩状态。

指标 描述

DesiredInferenceUnits

Lookout for Vision 扩大或缩小到的推理单位数量。

InServiceInferenceUnits

模型正在使用的推理单位数量。

如果 DesiredInferenceUnits = InServiceInferenceUnits,则 Lookout for Vision 当前不会扩缩推理单位的数量。

如果 DesiredInferenceUnits > InServiceInferenceUnits,则 Lookout for Vision 会扩大到 DesiredInferenceUnits 的值。

如果 DesiredInferenceUnits < InServiceInferenceUnits,则 Lookout for Vision 会缩小到 DesiredInferenceUnits 的值。

有关 Lookout for Vision 返回的指标和筛选维度的更多信息,请参阅使用 Amazon CloudWatch 监控 Lookout for Vision

要查明您为模型请求的最大推理单位数量,请调用 DescribeModel 并检查其响应中的 MaxInferenceUnits 字段。

可用区

Amazon Lookout for Vision 会在一个 AWS 区域内的多个可用区之间分配推理单位,以提供更高的可用性。有关更多信息,请参阅可用区。为帮助保护生产模型免受可用区中断和推理单位故障的影响,请使用至少两个推理单位启动生产模型。

如果可用区中断,则可用区中的所有推理单位都将无法使用,模型容量也会减少。对 DetectAnomalies 的调用将在剩余的推理单位之间重新分配。如果此类调用不超过剩余推理单位支持的每秒事务数 (TPS),则它们会成功。在 AWS 修复可用区后,推理单位将重新启动,模型也将恢复其全部容量。

如果单个推理单位出现故障,Amazon Lookout for Vision 会自动在同一可用区内启动新的推理单位。在新推理单位启动之前,模型容量会降低。