乐趣区

关于机器学习:如何为机器学习进行数据标签版本控制和管理

一个丰盛食物数据集的案例钻研

介绍

几个月前,托洛卡和 ClearML 公司一起创立了此联结我的项目。咱们的指标是向其余机器学习的从业者展现从收集数据到将数据输出机器学习模型之前,如何对其进行版本化和治理。

咱们置信,遵循这些最佳实际将帮忙其他人构建更好、更弱小的人工智能解决方案。如果您也对此好奇,请查看咱们独特创立的我的项目。

我的项目:食品数据集

咱们是否丰盛现有数据集并让算法学会辨认新特色?

咱们在 Kaggle 上找到了以下数据集,并很快确定它非常适合咱们的我的项目。该数据集由应用 MyFoodRepo 收集的数千张不同类型的图像组成,并已在 Creative Commons CC-BY-4.0 许可下公布。您能够在官网食品辨认基准论文中查看无关此数据的更多详细信息。

咱们留神到,食物能够分为两大类:固体和饮料。

此外,咱们留神到有些食物……比另一种更可口。

那么咱们是否用这些额定的信息来丰盛这个数据集,而后制订一个可能辨认新特色的算法呢?

答案是必定的,咱们应用托洛卡和 ClearML 公司做到了。

——

如何正文数据?

对于这一步,咱们应用了托洛卡众包平台。它是一种工具,您能够在其中创立正文我的项目,而后将其分发给世界各地的近程正文者。

我的项目的第一步是创立界面和具体阐明。在这种状况下,咱们想提出两个问题:
● 主观问题:对于食物的类型,无论是固体还是液体?
● 主观问题:对于一个人是否感觉食物开胃?

咱们应用了如下所示的界面:

此外,在阐明中,咱们曾经明确阐明了什么是固体和液体食物,给出了例子,并提供了边缘案例。

一旦指令和界面准备就绪,咱们就必须为咱们的我的项目邀请执行者。托洛卡正文器遍布世界各地,因而咱们必须认真抉择可能参加咱们我的项目的人员。

因为咱们给出的阐明是用英语写的,所以咱们决定只邀请说英语的人,并通过考试来测试他们对它们的了解水平。考试包含 10 个工作,咱们在这些工作上测试了对于食物类型的第一个问题的答案。咱们有 5 种固体、4 种液体和 1 个应标记为其余的边缘案例。咱们要求考试成绩达到 100% 能力进入正文我的项目。

下图显示了参加考试的人给出的答案散布。

如果您认真查看最初一个条目,您会留神到它的正确响应百分比绝对较低,仅为 49%,而其余部分则高于 90%。这是咱们用来捕获不留神浏览阐明的执行者
的边缘案例。最初一张图片由各种类型的食物组成,包含液体和固体,因而它应该被标记为“其余”。

侥幸的是,咱们过滤掉了答复谬误的人。

咱们为管制正文品质而施行的下一个措施是:

● 疾速响应规定
● 重叠
● 和管制工作

当用户对给定工作的响应过快时,应用疾速响应规定。这意味着他甚至没有工夫正确地查看和查看工作,而且他不太可能失去正确的回应。

另一方面,重叠让咱们对响应更有信念,因为每个工作都调配给几个正文者,并且他们的工作能够聚合。在这种状况下,咱们应用了三个重叠。

咱们还在失常工作之间调配了管制工作。这意味着对于给正文者的每九个工作,将有一个管制工作查看他给出的响应是否正确。如果正文者对管制工作给出了不正确的响应,他就会被从我的项目中删除。

作为此正文的后果,咱们应用三个独特的正文器对 980 张图片进行了正文。收集后果大概须要 30 分钟,破费 6.54 美元。咱们也有总共 105 人参加了这个我的项目。

当初能够将后果传递给 ClearML 工具,这些工具将用于版本化和剖析收集的数据。如果您的我的项目须要其余类型的正文,您能够在此处浏览不同的正文演示。

数据管理

——

当初咱们实际上曾经创立了一个框架来获取和正文数据,咱们能够间接应用它,或者更好的是,对它进行版本化,这样咱们就能够记住谁做了什么以及什么时候做的 :)

ClearML 是一个开源 MLOps 平台,它提供了一个名为 ClearML Data 的数据管理工具,它与平台的其余部分无缝集成。

创立带正文的数据集后,咱们只需将其注册到 ClearML 中。

在 ClearML 中注册数据后,用户就能够创立和查看数据因循流程、增加数据预览、元数据甚至是标签散布等图表!这意味着所有信息都封装在一个实体中。

在咱们的例子中,咱们能够将数据集正文老本保留为元数据。咱们还能够存储其余正文参数,例如指令、语言参数或其余任何货色!并将其附加到数据集,以便咱们稍后参考。

好的,当初数据已被跟踪和治理,但接下来您可能会问。

好吧,将其连贯到 ClearML 试验治理解决方案的弱小性能来了!

只需一行代码,用户就能够将数据集发送到他们的指标机器,齐全形象出数据的理论存储地位(在专用的 ClearML 服务器上,或者只是存储在您最喜爱的云提供商的存储上)

ClearML Data 从存储的任何中央为您获取数据,并将其缓存起来,因而间断运行不须要从新下载数据!

连贯到 ClearML 的试验治理解决方案容许用户享受它提供的所有性能,例如试验比拟,咱们能够比拟 2 个试验,其中惟一的区别是正文的老本,并理论理解为正文领取更多费用对咱们的模型有何影响!

而且因为咱们将老本保留为元数据,如果咱们应用托洛卡的 SDK 自动化正文工作,咱们实际上能够联合托洛卡和 ClearML 主动对正文老本运行超参数优化,并计算出咱们应该在正文上真正投资多少!

——

应用超数据集晋升您的数据管理程度

须要充分利用您的数据集管理工具吗?查看超数据集!

超数据集实质上将正文和元数据存储在数据库中,因而能够在训练 \ 测试时对其进行查问!

用户能够将数据查问(称为 DataViews)连贯到试验和版本!应用 Datviews 可让您在须要时轻松获取数据集的特定子集(甚至多个数据集),这为数据管理提供了另一个级别的粒度。

如果您须要更好的数据统计数据、更好地管制网络所馈送的数据以及解决数据的子集并心愿防止数据反复(这既须要存储又须要治理),DataViews 和 Hyper-Dataset 十分有用。

——

概括

在本文中,您学习了如何应用托洛卡和 ClearML 工具在食品数据集示例上构建您的 ML 数据工作流。如果您想查看本博客中列出的步骤所需的所有代码,请查看咱们筹备的 colab 笔记本。

此外,咱们以网络研讨会的模式展现了咱们的试验后果,并为您保留了录音(托洛卡局部,ClearML 局部)。

您感觉本指南对治理您本人的机器学习我的项目的数据有用吗?如果您有任何反馈或想询问无关此我的项目的问题,请在下方发表评论。

退出移动版