QCon 演讲火热征集中,快来分享技术实践与洞见! 了解详情
写点什么

构建机器学习工具一年得到的四个教训

Humanloop

  • 2021-08-15
  • 本文字数:2522 字

    阅读完需:约 8 分钟

构建机器学习工具一年得到的四个教训

关于如何构建机器学习工具、未来的需求和为什么领域专家在人工智能的未来中扮演重要的角色,我们想与大家分享一些最令人惊讶的经验。

 

在过去的一年里, Humanloop 一直在开发一种用于训练和部署自然语言处理模型的新工具。我们已经帮助律师、客服人员、市场营销人员和软件开发人员团队快速训练出能够理解语言的人工智能模型,并立即使用它们。在使用主动学习时,我们开始将注意力集中在减少注释数据的需求上,但是很快发现需要更多。

 

我们真正需要的是一组新的工具和工作流,从第一原则出发,这些工具和工作流是用来处理人工智能工作挑战的。这里有一些我们学到的东西。

 

1. 主题专家的影响力不亚于数据科学家

 

2011 年初,对深度学习专业知识的需求如此之高,以至于 Geoff Hinton 能够以 4400 万美元的价格将自己卖给谷歌 。今天不再是这样了。

 

2011 年的许多难题都已商业化。通过导入库,你可以使用最先进的模型,并且大多数研究的突破性成果都会很快被纳入。尽管我已经拿到了深度学习的博士学位,但我仍然对标准模型在广泛的使用案例中的开箱即用表现感到惊讶。

 

构建机器学习服务仍然很难,但最大的挑战是获取正确的数据。

 

或许,令人惊讶的是,机器学习技术方面的支持已经不如领域的专业知识有用。

 

举例来说,我们与一个团队合作,他们想知道 80000 多项历史法律判决的结果。手工处理这些文件是完全不可行的,那要花上几十万美元的律师时间。要解决这个问题,光靠数据科学家时不行的。一位律师是我们真正需要的。

 

在数据科学中,传统的工作流程将数据注释看作模型训练的第一步。我们知道,将数据注释/数据管护(data curation)放在工作流的中心位置实际上会让你更快的得到结果。由主题专家担任领导角色,与数据科学家更容易合作。而且我们也看到,这会产生更高的数据质量和更高的模型质量。

 

两位律师组成的团队为 Humanloop 平台上的数据进行了注释,并用主动学习自动并行的方式来训练模型。仅用了几个小时,律师们就训练出了一个模型,它能提供所有 80000 项判决结果,而这些结果完全不需要数据科学家的参与。

 

不只是律师,我们见过医生团队为训练医疗聊天机器人所作的注释;金融分析师为命名实体识别所作的标记,以及科学家对数据进行注释,以便大规模检索论文。

 

2. 第一次迭代总是在标签分类上

 

机器学习模型的训练通常从标记数据集开始。在我们最初构建 Humanloop 平台时,我们认为选择一个标签分类法是在项目开始时做的事情,然后就完成了。

 

如果不探索数据,大多数团队都低估了定义好的标签分类是多么困难。

 

我们很快意识到,一旦团队开始注释数据,他们就会发现最初对于他们想要的分类的猜测是错误的。这些数据中常常会有他们从未考虑过的分类,或者是一些非常罕见的,所以最好将它们合并到一个更大的分类。团队会惊讶的发现,对于即使是简单的分类,常常很难对其含义达成一致意见。

 

在项目开始后,数据科学家、项目经理和标注员之间几乎总是在讨论如何更新标签分类的问题。

 

将数据整理置于机器学习工作流的中心,可以让不同的利益相关者快速达成一致。为简化这一过程,我们为项目经理增加了在注释期间编辑其标签分类的能力。Humanloop 模型和主动学习系统可以自动遵循对标签的任何修改。让团队能够对示例数据点进行标记、评论和讨论。

 

3. 快速反馈的投资回报率很高

 

对于我们创建的主动学习平台,一个出乎意料的好处就是,它可以让项目快速原型化并消除风险。在 Humanloop 平台上,通过团队的注释,对模型进行了实时训练,并提供了模型性能的统计数据。

 

许多机器学习项目都会失败。根据 algorithmia 的数据 ,多达 80% 的项目从未投产。出现这种情况通常是因为目标不明确,输入的数据质量太差,无法预测输出,或者模型陷入困境,等待生产。高层管理人员变得不愿意为不确定性很高的项目投入资源,因而错失了很多好机会。

 

尽管我们没有计划,但我们意识到团队正在利用 Humanloop 的早期快速反馈来评估项目的可行性。他们可以上传小的数据集,然后给一些例子贴上标签,这样就能了解到他们的项目会有多好。这就是说,一些可能会失败的项目没有继续进行,而另一些项目很快就会获得更多的资源,因为团队知道它们会成功。这类早期探索通常由完全没有机器学习背景的产品经理来完成。

 

4. 机器学习工具应当以数据为中心,但以模型为依托

 

目前大部分训练和部署机器学习(MLOps)的工具都是针对传统软件构建的。它们专注于代码而非数据,它们的目标是很窄的机器学习开发管道。有一些 MLOps 工具可以用于监控、特征存储、模型版本、数据集版本、模型训练、评估存储等等。几乎没有任何一种工具可以方便地查看和理解系统所学到的数据。

 

吴恩达(Andrew Ng)和 Andreij Kaparthy 等人最近一直在呼吁使用以数据为中心的机器学习工具。人们完全同意,机器学习要求团队更多地关注他们的数据集,但是我们发现这些工具的最佳版本需要与模型紧密结合。

 

在 Humanloop 平台上,我们看到的大部分好处来自数据和模型之间的相互作用

 

  1. 在探索阶段:该模型显示出罕见的分类,并提供有关分类学习难度的反馈。

  2. 在训练阶段:模型找到具有最高价值的数据标注,使模型以较少的标签获得高性能模型。

  3. 在审查阶段:该模型使得发现错误注释变得更加容易。Humanloop 平台显示出模型的预测与领域专家的标注员不一致的例子,并且具有很高的置信度。发现和纠正错误的数据点往往是提高模型性能的最有效途径。

 

结合数据和模型构建过程在机器学习开发过程的每一个阶段都有好处。对模型进行注释学习后,部署不再是一个“瀑布”时刻。模型是不断学习的,可以轻松地保持更新。

 

一年来,我们认为我们已经在建立让机器学习变得更简单的新工具方面取得了重大进展,首先是自然语言处理。如今,很多行业的专家都对人工智能模型的训练做出了贡献,并且很高兴看到基于 Humanloop 的新应用程序。

 

作者介绍:

 

Humanloop 是一家从事机器学习和人工智能的初创公司,该公司的产品 Humanloop 是一个训练和部署自然语言处理的人工智能数据标记工具,为用户的模型提供 API,用户可以使用该工具更好地可视化和理解其数据,从而拓展客户人力资源。

 

原文链接:

 

https://humanloop.com/blog/4-lessons-from-a-year-building-tools-for-machine-learning

2021-08-15 08:004590

评论

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

2023年金三银四大厂高频Java面试题(附答案)整理总结

架构师之道

程序员 java面试

聊聊池化层和步长为2的卷积层

华为云开发者联盟

人工智能 华为云 华为云开发者联盟 企业号 3 月 PK 榜 卷积层

模型训练过程中,混合精度训练稳定性解决方案

Openlab_cosmoplat

模型训练 开源社区

优秀!阿里甩出GC面试小册,仅7天Github获赞96.9K

Java你猿哥

Java ssm 面经 GC Java工程师

延伸测试边界,银行测试团队转型建议

BY林子

软件测试 敏捷测试 测试转型

我眼中的优秀PM

BY林子

团队管理 项目管理

2023年一线大厂 Java 面试八股文大全(整理版)附答案详解!

采菊东篱下

Java 程序员 面试

JAVA实战:如何让单元测试覆盖率达到80%甚至以上

Java你猿哥

Java ssm 单元测试 Java工程师 java实战

直击面试!阿里技术官手码12W字面试小册在Github上爆火

Java你猿哥

Java 后端 面经 简历 Java工程师

4种API性能恶化根因分析

华为云开发者联盟

开发 API 华为云 华为云开发者联盟 企业号 3 月 PK 榜

论文分享丨Holistic Evaluation of Language Models

华为云开发者联盟

人工智能 华为云 论文 华为云开发者联盟 企业号 3 月 PK 榜

HummerRisk 使用教程:k8s检测

HummerCloud

gRPC快速整合SpringCloud

Java你猿哥

Java gRPC Spring Cloud 后端 ssm

低代码开发平台如何推动企业数字化转型

力软低代码开发平台

开发和测试融合,到底该怎么做?

BY林子

敏捷开发 敏捷测试

赋能数字经济新动能 焱融科技获评「人工智能高质量发展-行业责任担当」企业

焱融科技

人工智能 文件存储 容器存储 分布式文件存储 全闪存储

ITSM | 如何通过设计提升工单处理效率

嘉为蓝鲸

IT ITSM 流程管理

HummerRisk 使用教程:资源态势

HummerCloud

【活动报名】 拥抱公平《 Impact Tech, She Can 》

亚马逊云科技 (Amazon Web Services)

人工智能

大数据计算引擎 EasyMR:拥抱开源,引领技术创新

袋鼠云数栈

大数据 大数据基础平台

BugBuilder: 高质量大规模缺陷库自动构建方法

华为云开发者联盟

开发 华为云 补丁 华为云开发者联盟 企业号 3 月 PK 榜

蛇形走线用在哪里,一文告诉你

华秋PCB

信号 PCB PCB设计 布线 滤波

一站式管理多平台小程序的办法

Onegun

微信小程序 小程序管理平台 小程序管理

矩阵佛萨奇(MetaForce)合约开发源码搭建

薇電13242772558

web3

ChatGPT能否取代程序员?仍然是一个需要认真探讨的问题,对此你怎么看?

兴科Sinco

OpenAPI openai #人工智能 ChatGPT

开门见山|首期《崖山论“见”》技术 Meetup启程

YashanDB

记一次 rr 和硬件断点解决内存踩踏问题

NebulaGraph

数据库 debug

手把手教你如何使用MyBatisPlus

Java你猿哥

mybatis 实战 Mybatis-Plus

Docker等容器技术应用到移动开发的探索

Onegun

容器 docker build 小程序容器

如何防止AD域环境遭受恶意攻击?

嘉为蓝鲸

AD #运维

MySQL中这14个小玩意,让人眼前一亮!

Java你猿哥

Java MySQL 后端 ssm Java工程师

构建机器学习工具一年得到的四个教训_大数据_InfoQ精选文章