改进您的 Amazon Rekognition 自定义标签模型 PlatoBlockchain 数据智能的提示。 垂直搜索。 哎。

改进 Amazon Rekognition 自定义标签模型的提示

在这篇文章中,我们讨论了使用以下方法提高计算机视觉模型性能的最佳实践 Amazon Rekognition自定义标签. Rekognition Custom Labels 是一项完全托管的服务,用于为图像分类和对象检测用例构建自定义计算机视觉模型。 Rekognition Custom Labels 建立在预训练模型的基础之上 亚马逊重新认识,它们已经在许多类别的数千万张图像上进行了训练。 您可以从一组特定于您的用例的训练图像(几百或更少)开始,而不是数千张图像。 Rekognition 自定义标签抽象出构建自定义模型所涉及的复杂性。 它会自动检查训练数据,选择正确的 ML 算法,选择实例类型,使用各种超参数设置训练多个候选模型,并输出最佳训练模型。 Rekognition 自定义标签还提供了一个易于使用的界面,来自 AWS管理控制台 用于管理整个 ML 工作流程,包括标记图像、训练模型、部署模型和可视化测试结果。

有时模型的准确性不是最好的,并且您没有太多选项来调整模型的配置参数。 在幕后,有多种因素对构建高性能模型起着关键作用,例如:

  • 画面角度
  • 图像分辨率
  • 图像纵横比
  • 曝光
  • 背景的清晰和生动
  • 色彩对比
  • 样本数据量

以下是训练生产级 Rekognition 自定义标签模型应遵循的一般步骤:

  1. 审查分类 – 这定义了您要在图像中识别的属性/项目的列表。
  2. 收集相关数据 – 这是最重要的一步,您需要收集与您在生产环境中看到的相似的相关图像。 这可能涉及具有不同背景、照明或摄像机角度的物体图像。 然后,您通过拆分收集的图像来创建训练和测试数据集。 您应该只包含真实世界的图像作为测试数据集的一部分,并且不应包含任何合成生成的图像。 您收集的数据的注释对于模型性能至关重要。 确保边界框在对象周围紧密且标签准确。 我们将在本文后面讨论构建适当数据集时可以考虑的一些技巧。
  3. 查看培训指标 – 使用上述数据集训练模型并查看 F1 分数、精度和召回率的训练指标。 我们将在本文后面详细讨论如何分析训练指标。
  4. 评估训练好的模型 – 使用一组具有已知标签的未见过图像(不用于训练模型)来评估预测。 应始终执行此步骤以确保模型在生产环境中按预期执行。
  5. 再培训(可选) – 一般来说,训练任何机器学习模型都是一个迭代过程以达到预期的结果,计算机视觉模型也不例外。 查看第 4 步中的结果,查看是否需要将更多图像添加到训练数据中,然后重复上述第 3-5 步。

在这篇文章中,我们将重点介绍收集相关数据(步骤 2)和评估训练指标(步骤 3)以提高模型性能的最佳实践。

收集相关数据

这是训练生产级 Rekognition 自定义标签模型的最关键阶段。 具体来说,有两个数据集:训练和测试。 训练数据用于训练模型,您需要花费精力构建合适的训练集。 Rekognition 自定义标签模型针对 F1分数 在测试数据集上为您的项目选择最准确的模型。 因此,有必要策划一个类似于现实世界的测试数据集。

图片数量

我们建议每个标签至少包含 15-20 张图片。 拥有更多具有更多变化以反映您的用例的图像将提高模型性能。

平衡数据集

理想情况下,数据集中的每个标签都应该有相似数量的样本。 每个标签的图像数量不应存在巨大差异。 例如,一个标签的最大图像数量为 1,000 个的数据集与另一个标签的 50 个图像类似,这类似于一个不平衡的数据集。 我们建议避免在图像数量最少的标签与图像数量最多的标签之间出现 1:50 的不平衡比率的情况。

不同类型的图像

在训练和测试数据集中包含与您将在现实世界中使用的图像相似的图像。 例如,如果您想对客厅和卧室的图像进行分类,您应该包括两个房间的空置图像和带家具的图像。

以下是带家具的客厅的示例图像。

改进您的 Amazon Rekognition 自定义标签模型 PlatoBlockchain 数据智能的提示。 垂直搜索。 哎。

相比之下,下面是一个没有家具的客厅的例子。

以下是带家具的卧室的示例图像。

改进您的 Amazon Rekognition 自定义标签模型 PlatoBlockchain 数据智能的提示。 垂直搜索。 哎。

下面是一个没有家具的卧室的示例图像。

改进您的 Amazon Rekognition 自定义标签模型 PlatoBlockchain 数据智能的提示。 垂直搜索。 哎。

不同的背景

包括具有不同背景的图像。 具有自然背景的图像可以提供比普通背景更好的结果。

以下是房屋前院的示例图像。

改进您的 Amazon Rekognition 自定义标签模型 PlatoBlockchain 数据智能的提示。 垂直搜索。 哎。

以下是具有不同背景的不同房屋前院的示例图像。

改进您的 Amazon Rekognition 自定义标签模型 PlatoBlockchain 数据智能的提示。 垂直搜索。 哎。

不同的照明条件

包括具有不同照明的图像,以便它涵盖推理期间发生的不同照明条件(例如,使用和不使用闪光灯)。 您还可以包含具有不同饱和度、色调和亮度的图像。

以下是正常光线下花朵的示例图像。

改进您的 Amazon Rekognition 自定义标签模型 PlatoBlockchain 数据智能的提示。 垂直搜索。 哎。

相比之下,下图是在强光下的同一朵花。

改进您的 Amazon Rekognition 自定义标签模型 PlatoBlockchain 数据智能的提示。 垂直搜索。 哎。

变化的角度

包括从物体的各个角度拍摄的图像。 这有助于模型学习对象的不同特征。

以下图片是从不同角度拍摄的同一间卧室。

 改进您的 Amazon Rekognition 自定义标签模型 PlatoBlockchain 数据智能的提示。 垂直搜索。 哎。   改进您的 Amazon Rekognition 自定义标签模型 PlatoBlockchain 数据智能的提示。 垂直搜索。 哎。

有时可能无法获取不同类型的图像。 在这些场景中,可以生成合成图像作为训练数据集的一部分。 有关常见图像增强技术的更多信息,请参阅 数据扩充.

添加负面标签

对于图像分类,添加负标签有助于提高模型准确性。 例如,您可以添加与任何所需标签都不匹配的否定标签。 下图表示用于识别完全成熟花朵的不同标签。

改进您的 Amazon Rekognition 自定义标签模型 PlatoBlockchain 数据智能的提示。 垂直搜索。 哎。

添加负面标签 not_fully_grown 帮助模型学习不属于 fully_grown 带有

处理标签混淆

分析测试数据集上的结果以识别训练或测试数据集中遗漏的任何模式。 有时,通过目视检查图像很容易发现此类图案。 在下图中,模型正在努力解决后院与庭院标签之间的问题。

改进您的 Amazon Rekognition 自定义标签模型 PlatoBlockchain 数据智能的提示。 垂直搜索。 哎。

在这种情况下,向数据集中的这些标签添加更多图像并重新定义标签以使每个标签都不同,可以帮助提高模型的准确性。

资料扩充

在 Rekognition 自定义标签中,我们为模型训练执行各种数据增强,包括图像的随机裁剪、颜色抖动、随机高斯噪声等。 根据您的特定用例,向您的训练数据添加更明确的数据增强也可能是有益的。 例如,如果您对检测彩色和黑白图像中的动物感兴趣,则可以通过将相同图像的黑白和彩色版本添加到训练数据中来获得更高的准确度。

我们不建议对测试数据进行扩充,除非扩充反映了您的生产用例。

查看培训指标

F1 分数、准确率、召回率和假定阈值是 度量 作为使用 Rekognition 自定义标签训练模型的输出而生成的。 根据提供的测试数据集优化模型以获得最佳 F1 分数。 假设的阈值也是基于测试数据集生成的。 您可以根据您的业务需求在精度或召回率方面调整阈值。

因为假设的阈值是在测试数据集上设置的,所以适当的测试集应该反映真实世界的生产用例。 如果测试数据集不能代表用例,您可能会在真实图像上看到人为的高 F1 分数和较差的模型性能。

这些指标在对模型进行初始评估时很有帮助。 对于生产级系统,我们建议根据代表现实世界的外部数据集(500-1,000 张未见过的图像)评估模型。 这有助于评估模型在生产系统中的表现,还可以识别任何缺失的模式并通过重新训练模型来纠正它们。 如果您发现 F1 分数与外部评估不匹配,我们建议您检查您的测试数据是否反映了实际用例。

结论

在这篇文章中,我们向您介绍了改进 Rekognition 自定义标签模型的最佳实践。 我们鼓励您了解更多关于 Rekognition 自定义标签 并针对您的业务特定数据集进行尝试。


关于作者

改进您的 Amazon Rekognition 自定义标签模型 PlatoBlockchain 数据智能的提示。 垂直搜索。 哎。阿米特·古普塔(Amit Gupta) 是 AWS 的高级 AI 服务解决方案架构师。 他热衷于为客户大规模地提供架构良好的机器学习解决方案。

改进您的 Amazon Rekognition 自定义标签模型 PlatoBlockchain 数据智能的提示。 垂直搜索。 哎。约格什·查图维迪 是 AWS 的解决方案架构师,专注于计算机视觉。 他与客户一起使用云技术解决他们的业务挑战。 工作之余,他喜欢远足、旅行和观看体育比赛。

改进您的 Amazon Rekognition 自定义标签模型 PlatoBlockchain 数据智能的提示。 垂直搜索。 哎。杨浩 是 Amazon Rekognition 自定义标签团队的高级应用科学家。 他的主要研究兴趣是对象检测和有限注释学习。 工作之余,郝喜欢看电影、摄影和户外活动。

改进您的 Amazon Rekognition 自定义标签模型 PlatoBlockchain 数据智能的提示。 垂直搜索。 哎。普什米人迷雾 是 Amazon Rekognition 自定义标签的高级产品经理。 工作之余,Pashmeen 喜欢冒险远足、摄影以及与家人共度时光。

时间戳记:

更多来自 AWS机器学习