质量不良成本是制造商关注的焦点。质量缺陷会增加废品和返工成本,降低产能,并可能影响客户和公司声誉。生产线上的质量检验对于维护质量标准至关重要。在许多情况下,人工目视检查用于评估质量和检测缺陷,这可能会由于人工检查员的限制而限制产能。
机器学习(ML)和人工智能(AI)的出现通过计算机视觉(CV)ML模型提供了额外的视觉检验能力。将CV ML与人工检查相结合可以减少检测错误,提速生产,降低质量成本,并积极影响客户。构建CV ML模型通常需要数据科学和编码方面的专业知识,这在制造业组织中通常是稀缺资源。现在,质量工程师和车间其他人员可以使用无代码ML服务构建和评估这些模型,从而加速在制造业运营中广泛探索和采用这些模型。
Amazon SageMaker Canvas是一个可视化界面,使质量、流程和生产工程师能够自行生成准确的ML预测,而无需任何ML经验或编写一行代码。您可以使用SageMaker Canvas创建单标签图像分类模型,用于使用自己的图像数据集识别常见的制造缺陷。
在本文中,您将学习如何使用SageMaker Canvas构建一个单标签图像分类模型,以根据图像中的制造磁贴识别缺陷。
解决方案概述
本文假设质量工程师从CV ML检验的角度进行探索,并且您将使用磁贴图像的示例数据来构建一个图像分类ML模型,以预测磁贴质量检查中的缺陷。数据集包含超过1,200张磁贴图像,其中包含缺陷,如气孔、断裂、裂纹、抓伤和表面不平。以下图像是单标签缺陷分类的示例,左侧是裂纹的磁贴,右侧是无缺陷的磁贴。
在实际示例中,您可以从生产线上的成品中收集此类图像。在本文中,您将使用SageMaker Canvas构建一个单标签图像分类模型,以预测和分类给定磁贴图像的缺陷。
SageMaker Canvas可以从本地磁盘文件或Amazon Simple Storage Service(Amazon S3)导入图像数据。对于本文,已在一个S3存储桶中创建了多个文件夹(每个缺陷类型一个文件夹,如气孔、断裂或裂纹),并将磁贴图像上传到各自的文件夹中。名为Free
的文件夹包含无缺陷的图像。
使用SageMaker Canvas构建ML模型涉及四个步骤:
- 导入图像数据集。
- 构建和训练模型。
- 分析模型洞察,如准确度。
- 进行预测。
先决条件
在开始之前,您需要设置和启动SageMaker Canvas。这个设置由IT管理员执行,并涉及三个步骤:
- 设置Amazon SageMaker域。
- 设置用户。
- 设置权限以使用SageMaker Canvas中的特定功能。
请参阅入门使用Amazon SageMaker Canvas和设置和管理Amazon SageMaker Canvas(供IT管理员使用)以配置您组织的SageMaker Canvas。
当SageMaker Canvas设置完成后,用户可以导航到SageMaker控制台,在导航窗格中选择Canvas,然后选择Open Canvas来启动SageMaker Canvas。
SageMaker Canvas应用程序在新的浏览器窗口中启动。
SageMaker Canvas应用程序启动后,您可以开始构建ML模型的步骤。
导入数据集
使用SageMaker Canvas构建ML模型时,导入数据集是第一步。
- 在SageMaker Canvas应用程序中,选择导航窗格中的数据集。
- 在创建菜单中,选择图像。
- 对于数据集名称,输入一个名称,例如
Magnetic-Tiles-Dataset
。 - 选择创建以创建数据集。
数据集创建完成后,您需要导入数据集中的图像。
- 在导入页面上,选择Amazon S3(磁贴图像存储在S3存储桶中)。
您也可以选择从本地计算机上传图像。
- 选择S3存储桶中存储磁贴图像的文件夹,然后选择导入数据。
SageMaker Canvas开始将图像导入数据集。导入完成后,您可以看到包含1266个图像的图像数据集。
您可以选择数据集以查看详细信息,例如图像的预览及其缺陷类型的标签。因为图像被组织在文件夹中,并且每个文件夹的名称都是缺陷类型的名称,所以SageMaker Canvas会根据文件夹名称自动完成图像的标记。作为替代方案,您可以导入无标签的图像,添加标签,并在以后的时间点对各个图像进行标记。您还可以修改现有已标记图像的标签。
图像导入完成,您现在已在SageMaker Canvas中创建了一个图像数据集。您可以进行下一步,构建一个ML模型来预测磁贴的缺陷。
构建和训练模型
使用导入的数据集对模型进行训练。
- 选择数据集(
Magnetic-tiles-Dataset
)并选择创建模型。 - 对于模型名称,输入一个名称,例如
Magnetic-Tiles-Defect-Model。
- 选择图像分析作为问题类型,并选择创建以配置模型构建。
在模型的构建选项卡上,您可以看到有关数据集的各种详细信息,例如标签分布、已标记与未标记图像的数量,以及模型类型,在本例中是单标签图像预测。如果您导入了未标记的图像,或者想要修改或纠正某些图像的标签,可以选择编辑数据集来修改标签。
您可以通过两种方式构建模型:快速构建和标准构建。快速构建选项优先考虑速度而非准确性。它在15-30分钟内训练模型。该模型可以用于预测,但无法共享。这是一个快速检查使用给定数据集训练模型的可行性和准确性的好选项。标准构建选项优先考虑准确性而非速度,模型训练可能需要2-4小时。
在本文中,您使用标准构建选项来训练模型。
- 在构建选项卡上选择标准构建以开始训练模型。
模型训练会立即开始。您可以在分析选项卡上查看预计的构建时间和训练进度。
等待模型训练完成,然后您可以分析模型的准确性。
分析模型
在本例中,完成模型训练所需的时间不到一小时。当模型训练完成后,您可以在分析选项卡上检查模型的准确性,以确定模型是否能够准确预测缺陷。在本例中,整体模型准确性为97.7%。您还可以检查每个单独标签或缺陷类型的模型准确性,例如Fray和Uneven的准确性为100%,但Blowhole
的准确性约为95%。这种准确性水平是令人鼓舞的,因此我们可以继续评估。
为了更好地理解和信任模型,可以启用热力图,以查看模型用于区分标签的图像中的感兴趣区域。它基于类激活映射(CAM)技术。您可以使用热力图来识别不正确预测图像中的模式,从而有助于改进模型的质量。
在评分选项卡上,您可以检查模型对每个标签(或类别或缺陷类型)的精确度和召回率。精确度和召回率是用于衡量二分类和多分类模型性能的评估指标。精确度表示模型在预测特定类别(在本例中为缺陷类型)方面的准确程度。召回率表示模型能够检测到特定类别的次数。
模型分析帮助您在使用模型进行预测之前了解模型的准确性。
进行预测
在进行模型分析之后,您现在可以使用此模型进行预测,以识别磁砖上的缺陷。
在预测选项卡上,您可以选择单个预测和批量预测。在单个预测中,您可以从本地计算机或S3存储桶中导入单个图像,对缺陷进行预测。在批量预测中,您可以对存储在SageMaker Canvas数据集中的多个图像进行预测。您可以在SageMaker Canvas中创建一个单独的数据集,其中包含用于批量预测的测试或推断图像。在本文中,我们同时使用了单个预测和批量预测。
对于单个预测,在预测选项卡上,选择单个预测,然后选择导入图像以上传来自本地计算机的测试或推断图像。
图像导入后,模型对缺陷进行预测。对于第一次推断,可能需要几分钟,因为模型正在首次加载。但是在模型加载完成后,它会立即对图像进行预测。您可以查看每个标签类型的图像和预测的置信度水平。例如,在这种情况下,磁砖图像被预测为具有不均匀表面缺陷(”Uneven
“标签),模型对此有94%的置信度。
类似地,您可以使用其他图像或图像数据集对缺陷进行预测。
对于批量预测,我们使用名为Magnetic-Tiles-Test-Dataset
的未标记图像数据集,从本地计算机上传12个测试图像到数据集中。
在预测选项卡上,选择批量预测,然后选择选择数据集。
选择Magnetic-Tiles-Test-Dataset
数据集,然后选择生成预测。
生成所有图像的预测需要一些时间。当状态为就绪时,选择数据集链接以查看预测结果。
您可以查看所有图像的预测结果及其置信度水平。您可以选择任何一个图像以查看图像级别的预测详情。
您可以下载预测结果的CSV或.zip文件以离线工作。您还可以验证预测标签并将其添加到训练数据集中。要验证预测标签,请选择验证预测。
在预测数据集中,如果您发现预测标签不正确,可以更新各个图像的标签。在按需更新标签后,请选择添加到训练数据集以将图像合并到您的训练数据集中(在此示例中为Magnetic-Tiles-Dataset
)。
这将更新训练数据集,其中包括您现有的训练图像和具有预测标签的新图像。您可以使用更新后的数据集训练新的模型版本,并可能改善模型的性能。新的模型版本不会进行增量训练,而是使用更新后的数据集从头开始进行新的训练。这有助于保持模型随着新数据来源的更新。
清理
完成使用SageMaker Canvas的工作后,请选择注销以关闭会话并避免进一步的费用。
注销后,您的工作(如数据集和模型)将保留,并且您可以再次启动SageMaker Canvas会话以后续继续工作。
SageMaker Canvas会为生成预测创建一个异步SageMaker端点。要删除由SageMaker Canvas创建的端点、端点配置和模型,请参阅删除端点和资源。
结论
通过本文,您了解了如何使用SageMaker Canvas构建图像分类模型,以预测制造产品中的缺陷,从而补充和改进视觉检查质量流程。您可以使用SageMaker Canvas和来自制造环境的不同图像数据集来构建适用于预测维护、包装检查、工人安全、货物跟踪等用例的模型。SageMaker Canvas使您能够使用机器学习生成预测,而无需编写任何代码,加速了计算机视觉机器学习能力的评估和采用。
要开始并了解更多关于SageMaker Canvas的信息,请参阅以下资源:
- Amazon SageMaker Canvas开发人员指南
- 宣布Amazon SageMaker Canvas – 一种面向业务分析师的可视化、无代码机器学习能力