写点什么

Amazon SageMaker Ground Truth ,构建高度准确的数据集并将添加标签的成本最高降低 70%

  • 2019-10-14
  • 本文字数:3307 字

    阅读完需:约 11 分钟

Amazon SageMaker Ground Truth ,构建高度准确的数据集并将添加标签的成本最高降低 70%

1959 年,Arthur Samuel 将机器学习定义为“让计算机能够无需明确编程而进行学习的研究领域”。但世界上没有“机器神”:学习过程需要算法(“如何学习”)和训练数据集(“学习什么”)。


今天,大部分机器学习任务都使用一种被称为监管学习的方法:通过一种算法从带标签的数据集中学习模式或行为。带标签的数据集包含数据样本以及每个样本的准确答案,也就是“地面实况”。根据所拥有的问题不同,人们可以使用带标签的图像(“这是一只狗”、“这是一只猫”)、带标签的文本(“这是垃圾邮件”、“这不是”)等等。


幸运的是,开发人员和数据学家现在可以借助十分广泛的现成算法(如 Amazon SageMaker 中的内置算法所演示)和参考数据集。深度学习让 MNIST、CIFAR-10 或 ImageNet 等图像数据集普及起来,机器翻译或文本分类等任务的参考数据集更多。这些参考数据集对于初学者和经验丰富从业者都极为有用,但许多公司和组织仍然需要依据自己的数据集进行机器学习模型训练:例如医学影像识别、汽车驾驶等。


构建此类数据集是一个复杂的问题,尤其是涉及的规模很大时。让一个人为一千张图像或文档加标签要花费多少时间? 答案也许是“相当长”! 而现在需要为一百万张图像或文档添加标签:您将需要多少人来完成? 对于大多数公司和组织而言,这是争议问题,因为他们从来都不能聚集到足够的人手。


好吧,不扯远了! 今天,我很高兴地宣布推出 Amazon SageMaker Ground Truth,这是 Amazon SageMaker 的一个新功能,可方便客户高效准确地为机器学习系统训练所需的数据集添加标签。


隆重推出 Amazon SageMaker Ground Truth


Amazon SageMaker Ground Truth 可帮助您为下列目的构建数据集:


  • 文本分类。

  • 图像分类,即将图像分类为特定的类别。

  • 对象检测,即使用边界框找到图像中的对象。

  • 语义分割,即以像素级的精确度找到图像中的对象。

  • 用户自定义任务。

  • Amazon SageMaker Ground Truth 可以选择使用主动学习功能来自动为输入的数据添加标签。主动学习是一种机器学习方法,它会识别需要人工添加标签的数据以及可以由机器添加标签的数据。自动化添加数据标签将会发生 Amazon SageMaker 训练和推理费用,但与人工为整个数据集添加标签相比,它可以降低为数据集添加标签的成本(最高可减少 70%)和时间。


如果需要人工干预,您可以选择使用有 500000 劳动力的 Amazon Mechanical Turk 众包服务、您自己的工人或者 AWS Marketplace 上列出的推荐第三方供应商。


下面我们来看为数据集添加标签的简要步骤:


  • 将数据存储到 Amazon S3;

  • 创建添加标签劳动力;

  • 创建添加标签作业;

  • 开始工作;

  • 显示结果。

  • 举个例子? 下面我来演示为来自 CBCL StreetScenes 数据集的图像添加标签的例子。此数据集包含 3548 张这样的图像。为简单起见,我仅使用前 10 张图像并仅标注汽车。



将数据存储到 Amazon S3


第一步是为该数据集创建一个 manifest 文件。这是一个简单的 JSON 文件,列举了数据集中存在的所有图像。我的文件是下面这个样子:请注意每行对应一个对象,这是一个独立的 JSON 文档。


{"source-ref": "s3://jsimon-groundtruth-demo/SSDB00001.JPG"}{"source-ref": "s3://jsimon-groundtruth-demo/SSDB00002.JPG"}{"source-ref": "s3://jsimon-groundtruth-demo/SSDB00003.JPG"}{"source-ref": "s3://jsimon-groundtruth-demo/SSDB00004.JPG"}{"source-ref": "s3://jsimon-groundtruth-demo/SSDB00005.JPG"}{"source-ref": "s3://jsimon-groundtruth-demo/SSDB00006.JPG"}{"source-ref": "s3://jsimon-groundtruth-demo/SSDB00007.JPG"}{"source-ref": "s3://jsimon-groundtruth-demo/SSDB00008.JPG"}{"source-ref": "s3://jsimon-groundtruth-demo/SSDB00009.JPG"}{"source-ref": "s3://jsimon-groundtruth-demo/SSDB00010.JPG"}
复制代码


然后,我会直接将 manifest 文件和对应的图像复制到一个 Amazon S3 存储桶。


创建添加标签劳动力


Amazon SageMaker Ground Truth 为我们提供了多种选项:


  • Amazon Mechanical Turk 支持的公共劳动力;

  • 内部资源组成的私人劳动力;

  • 第三方供应商提供的供应商劳动力。

  • 第一个选项也许是可扩展性最好的方案。但如果您的作业要求保密、服务保证或特殊的技能,后两个选项也许更为适合。


此例中我只能依赖自己,因此我创建了一个使用新的 Amazon Cognito 组来进行身份验证的私人团队。实际上,任何劳动者访问数据集前都必须通过身份验证。



然后我输入我的电子邮件地址,将自己添加到该团队。几秒钟后,我收到一条包含凭证和一个 URL 的邀请信。此 URL 也可以在添加标签劳动力控制面板上看到。



当我点击链接并修改密码后,我将被注册为此团队的认证劳动者。



现在这个一人的团队已经成立,可以创建添加标签作业本身。


创建添加标签作业


正如您所预期的那样,我必须指定 manifest 文件和数据集的位置。



然后我可以决定是要使用完整的数据集还是使用子集:我甚至可以编写一个 SQL 查询来筛选文件。在此例中我们将使用完整的数据集,因为它仅包含 10 张图像。



然后我必须选择添加标签作业的类型。如前面所提到,这里有多种选项,此处我计划为我的图像添加边界框。



然后我会选择我希望为其分配此作业的团队。这就是我可以选择自动添加数据标签的地方。我还可以决定要求多个劳动者来为同一张图像添加标签,从而提高准确度。



最后,我可以为劳动者提供额外的指令,详细说明需要执行的具体任务,并他们提供一些示例。



一切搞定。我们的添加标签作业已经准备就绪。现在可以让团队(呃,好吧,就是我)开始工作。



为图像添加标签


登录我通过电子邮件收到的 URL,我将看到分配给我的作业列表。



当我单击“Start working(开始工作)”按钮,将看到说明以及需要处理的第一张图像。我可以使用工具箱执行画边框、放大缩小等操作。这相当直观,但要画出恰好吻合的边界框需要时间和细心。现在我知道为什么这是如此耗费时间了……幸好我只有十张图像需要处理!



下面是另一张图像的放大。您有没有看到所有七辆汽车?



当我处理完所有十张图像后,我可以好好休息一下,享受完成添加标签作业的成就感。



显示结果


标记后的图像可在 AWS 控制台中直接显示,非常方便进行完整性检查。我也可以点击任何图像,查看已经应用的标签列表。



当然,我们的目的是使用此信息来训练机器学习模型:我们可以在存储桶中存储的增强 manifest 文件中找到它。例如,下面是 manifest 文件必须提供的有关第一张图像的信息,其中我添加了五辆汽车的标签。


{"source-ref": "s3://jsimon-groundtruth-demo/SSDB00001.JPG","GroundTruthDemo": {  "annotations": [    {"class_id": 0, "width": 54, "top": 482, "height": 39, "left": 337},    {"class_id": 0, "width": 69, "top": 495, "height": 53, "left": 461},    {"class_id": 0, "width": 52, "top": 482, "height": 41, "left": 523},    {"class_id": 0, "width": 71, "top": 481, "height": 62, "left": 589},    {"class_id": 0, "width": 347, "top": 479, "height": 120, "left": 573}  ],  "image_size": [{"width": 1280, "depth": 3, "height": 960}]},"GroundTruthDemo-metadata": {  "job-name": "labeling-job/groundtruthdemo",  "class-map": {"0": "Car"},  "human-annotated": "yes",  "objects": [    {"confidence": 0.94},    {"confidence": 0.94},    {"confidence": 0.94},    {"confidence": 0.94},    {"confidence": 0.94}  ],  "creation-date": "2018-11-26T04:01:09.038134",  "type": "groundtruth/object-detection"  }}
复制代码


这样就拥有了训练对象检测模型所需的所有信息,例如 Amazon SageMaker 中内置的 Single-Shot Detector,但这是另一个主题!


现已推出!


我希望这篇博文提供了丰富的有用信息。我们刚刚介绍了 Amazon SageMaker Ground Truth 的强大功能。此服务现已在美国东部(弗吉尼亚)、美国中部(俄亥俄)、美国西部(俄勒冈)、欧洲(爱尔兰)和亚太地区(东京)等区域开放。您现在就可以体验一下,与我们分享您的想法!


本文转载自 AWS 技术博客。


原文链接:


https://amazonaws-china.com/cn/blogs/china/amazon-sagemaker-ground-truth-build-highly-accurate-datasets-and-reduce-labeling-costs-by-up-to-70/


2019-10-14 14:48898
用户头像

发布了 1855 篇内容, 共 122.0 次阅读, 收获喜欢 79 次。

关注

评论

发布
暂无评论
发现更多内容

市场冷空气来袭,SeekTiger如何逆流而上?

鳄鱼视界

读书笔记之:你当象鸟飞往你的山

甜甜的白桃

读书笔记 读书 笔记 6月月更

uni-app进阶之模版语法与数据绑定【day7】

恒山其若陋兮

6月月更

BOM

Jason199

js BOM 6月月更

【Spring 学习笔记(十三)】Spring AOP 五大通知类型

倔强的牛角

Java spring spring aop 6月月更

如何利用 RPA 实现自动化获客?

程序员泥瓦匠

RPA

有爱无碍,科技为他们点亮漫天星光

脑极体

A16Z : Web3生态全景概览

Dream

Web3.0

C#入门系列(十九) -- 作用域、生命期和析构函数

陈言必行

C# 6月月更

【Python技能树共建】with...as... 实战

梦想橡皮擦

Python 6月月更

InfoQ 极客传媒 15 周年庆征文|Vim 常用快捷键

耳东@Erdong

vim 运维 快捷键 6月月更 InfoQ极客传媒15周年庆

Apipost=Postman+Swagger+Mock+流程测试?

Xd

Java 后端 接口测试

JavaScript基础语法知识遨游记

未见花闻

6月月更

【愚公系列】2022年06月 通用职责分配原则(六)-多态原则

愚公搬代码

6月月更

流数据操作

Damon

6月月更

连续居家办公68天后——我的2022居家办公所感所想| 社区征文

No Silver Bullet

居家办公 6月月更 初夏征文 心得体会

HashSet与WeakHashMap的理解

源字节1号

微服务稳定性保障

阿泽🧸

微服务 6月月更

读书笔记之:如何有效阅读

甜甜的白桃

读书笔记 读书 笔记 6月月更

linux常用命令

乌龟哥哥

6月月更

硬核干货:6000字 30张图,带你彻底搞懂BGP动态路由!

wljslmz

BGP 网络技术 动态路由 6月月更

学生管理系统的考试试卷存储方案

爱晒太阳的大白

JVM调优简要思想及简单案例-对象的回收与保留

zarmnosaj

6月月更

作为神经搜索生态的开创者,Jina AI 在做什么?

Jina AI

Python 深度学习 开源 云原生 搜索

GNU/Linux知识库(1)- 历史和演变

冯亮

Linux DevOps GNU

字节Pico走“小”路

科技新知

Docker 实用技巧三

Nick

Docker 容器 实用技巧 6月月更 实操

Java Core 「11」AQS-AbstractQueuedSynchronizer

Samson

学习笔记 Java core 6月月更

力扣每日一练之数组上篇Day1

京与旧铺

6月月更

leetcode 64. Minimum Path Sum 最小路径和(中等)

okokabcd

LeetCode 动态规划 数据结构与算法

市场冷空气来袭,SeekTiger如何逆流而上?

股市老人

Amazon SageMaker Ground Truth ,构建高度准确的数据集并将添加标签的成本最高降低 70%_语言 & 开发_亚马逊云科技 (Amazon Web Services)_InfoQ精选文章