使用Amazon Rekognition和Amazon SageMaker JumpStart对图像进行分类与目标检测

发布于:2025-03-21 ⋅ 阅读:(30) ⋅ 点赞:(0)

在过去十年里,计算机视觉的应用场景逐渐增多,特别是在保险、汽车、电商、能源、零售、制造等行业。各大企业和开发者都在积极地构建计算机视觉机器学习(ML)模型,以提升业务运营效率并实现视觉任务的自动化。这些模型能够自动对图像进行分类或检测图像中特定的目标,从而满足企业和开发者的业务需求。

为了简化机器学习模型的构建流程,亚马逊云科技在2020年12月推出了Amazon SageMaker JumpStart。JumpStart可以帮助大家快速上手机器学习的核心技术,提供一键式部署和多种直接可用的预训练微调模型,以及一系列端到端的解决方案。这大幅减少了ML开发流程中的复杂工作,使高质量模型的开发变得更加轻松,并缩短了部署时间。然而JumpStart要求大家具备一定的ML基础知识,以便从200多个预训练计算机视觉模型的目录中选择合适的模型,并通过不同超参数设置对模型性能进行基准测试,从而选择最佳模型进行生产部署。

为了进一步降低JumpStart使用门槛,让缺乏机器学习模型开发经验的开发者也能构建定制化的计算机视觉模型,亚马逊云科技在JumpStart中推出了一个新的示例代码Notebook,该Notebook使用Amazon Rekognition Custom Labels——一项用于构建自定义计算机视觉模型的全托管服务。Rekognition Custom Labels基于Amazon Rekognition的计算机视觉预训练模型,这些模型已经经过数千万张、跨多个类别的图片进行训练。与需要数千张图片进行模型训练的传统方法不同,大家只需提供少量(几百张甚至更少)符合业务需求的训练图片即可快速开始训练。Rekognition Custom Labels有效降低了构建自定义模型的复杂性,它能够自动检查训练数据、选择合适的ML算法、选择训练的服务器实例类型、使用不同超参数训练多个候选模型,并最终输出最佳训练模型。此外Rekognition Custom Labels在亚马逊云科技管理控制台中提供了一个易于使用的界面,支持在UI中操作整个ML工作流,包括图像标注、模型训练、部署以及测试结果可视化。

在JumpStart提供的这个Notebook示例代码,可以用于执行任何图像分类或目标检测的计算机视觉任务,让熟悉Amazon SageMaker的开发者能够轻松构建符合自己业务需求的计算机视觉模型和解决方案。

在本文中我们也提供了在JumpStart中的示例Notebook源代码和操作指南。我们分享的Notebook展示了如何使用Rekognition Custom Labels的模型训练和推理API,来创建图像分类模型、多标签分类模型和目标检测模型。为了让大家可以更快速的上手,我们也为每种任务模型提供了用于训练的数据集供大家使用。

使用Rekognition训练并部署计算机视觉模型

下面我们将介绍如何在JumpStart中找到相关Notebook示例代码,并介绍如何训练模型并在部署模型的端点上运行推理。首先我们从Amazon SageMaker Studio Launcher开始操作:

1. 在Studio Launcher界面,选择Go to SageMaker JumpStart。

在JumpStart的主页,我们可以看到用于创建ML解决方案、文本模型和视觉模型的各项功能选项,同时提供了功能搜索栏。

2. 在搜索栏中输入“Rekognition Custom Labels”,然后选择Rekognition Custom Labels for Vision Notebook。

Notebook会以只读模式打开。

3. 选择Import Notebook,将Notebook导入大家的云平台环境。

该Notebook提供了使用Rekognition Custom Labels进行计算机视觉模型训练和推理的操作指南,并提供了四个示例测试数据集,以展示单标签和多标签图像分类任务以及目标检测任务的使用场景:

  • 单标签图像分类任务 – 该测试数据集展示了如何将图像分类匹配到预定义标签上。例如房地产公司可以使用Rekognition Custom Labels对客厅、后院、卧室等房屋场景进行分类。以下是该数据集中的一个示例图像。

  • 多标签图像分类任务 – 该数据集展示了如何将图像分类匹配到多个类别中,例如花的颜色、大小、纹理和种类。例如植物种植者可以使用Rekognition Custom Labels区分不同种类的花,并判断它们是健康的、残缺的还是感染的。以下是该数据集中的一个示例图像。

  • 目标检测任务 – 该数据集展示了如何对物品进行目标定位,例如在生产线或工厂制造流水线上定位目标零部件。例如在电子行业,Rekognition Custom Labels可以帮助统计电路板上的电容器数量。以下是该数据集中的一个示例图像。

  • 品牌和Logo检测任务 – 该数据集展示了如何在图像中定位公司的Logo或品牌。例如在媒体行业,目标检测模型可以帮助识别照片中的赞助商Logo位置。以下是该数据集中的一个示例图像。

4. 按照Notebook示例代码中的步骤运行每个单元格。
这个Notebook展示了如何运行Notebook中的示例代码,通过Rekognition Custom Labels API同时处理图像分类和目标检测任务。

在Notebook操作过程中,大家可以选择上述任意一个示例测试数据集进行测试。我们鼓励大家尝试在Notebook中运行所有数据集,以获得更深入的理解。

结论

在本文中我们展示了如何使用Rekognition Custom Labels API来构建图像分类或目标检测的计算机视觉模型,以在图像中识别和分类符合大家业务需求的对象。与传统方法相比大家只需提供数十到数百张标注图像,而非数千张训练数据集,从而可以快速完成模型训练任务。Rekognition Custom Labels简化了模型训练的过程,它会自动选择合适的计算资源、算法以及超参数(例如神经网络层数、学习率和批量大小)。此外Rekognition Custom Labels还简化了训练完毕的模型的部署,并提供了一键式的推理操作。

Rekognition Custom Labels在亚马逊云科技控制台中提供了直观易用的UI操作界面,支持整个训练生命周期过程的管理、模型的部署以及数据集图像的可视化分析。欢迎大家进一步了解Rekognition Custom Labels,并尝试使用自己业务场景下的数据集进行测试。