综述:NLP中的 Human in the Loop

format,png

作者 | 太子长琴 

整理 | NewBeeNLP

大家好,这里是 NewBeeNLP。ChatGPT 大火,今天聊聊其模型训练的一个关键词:Human in the loop

这篇文章基于一篇 Survey,就是如何将人类的反馈放在 NLP 过程中,这个过程可以是训练,也可以是部署后,也可以是数据标注阶段。总之,它泛指把人类的反馈与 NLP 过程结合。

ad49fbcc90129fa83bf8505dbf4abd54.png
  • 论文:Putting Humans in the Natural Language Processing Loop: A Survey

  • 地址:https://aclanthology.org/2021.hcinlp-1.8.pdf

在正式开始前,我们需要先说明几个业界常用的概念:

  • HITL:Human in the loop 的简称,将人置于循环迭代

  • HCI:Human machine interaction 的简称,人机互动

首先要说的是动机——HITL 有啥用,为啥要 HITL?两个很重要的原因:

  • 提升模型效果(分类、对话和 QA 等)和泛化能力。

  • 提升模型可解释性和可用性(用户创建的特征词典、QA 中用户生成的对抗 Q 等)并提升用户体验。

HITL任务

具体有哪些实践任务呢?

文本分类

NLP 基础任务,一般是这么做的:先训练一个分类器,然后基于该分类器结果人工进行标注,合并已标注数据持续训练模型。

具体点来说,包括以下一些操作:

  • 交互式地编辑文本特征或标注新文档。

  • 主动学习,选择那些能带来最大信息增益的样本而不是随机样本给标注人员,更少的样本达到同等效果。

  • 将主动学习组件扩展到标签(文档)之外的特征(单词)采样。

  • 使用一个构建好的字典增加可解释性。

解析和实体链接

一些有意思的做法包括:

  • 再训练时将用户反馈作为软约束惩罚 Parser。

  • 战略性采样要呈现给标注人员的样本。

主题建模

具体做法包括:

  • 通过添加、删除或更改每个主题中单词的权重来优化经过训练的模型。然后,使用用户更新的特征和权重,模型更有可能生成有用的主题。

  • 强调终端用户的需求(以及他们的反馈),而不是仅仅收集算法方便的反馈。

摘要和翻译

具体做法包括:

  • 在两个模型生成的「摘要对上」收集人类反馈,然后训练奖励模型预测偏好。此奖励模型用于训练策略以使用强化学习生成摘要。

  • 收集显式和隐式人类反馈,通过将反馈与强化学习结合使用来改进机器翻译模型。

对话和 QA

主要有两大类:

  • 在线反馈系统:持续收集反馈;或持续定时更新,对于低分的结果要求用户给出反馈,作为新的训练样本。

  • 离线反馈系统:离线批量更新,一般由标注人员批量生成对抗问题。

HITL流程

上面总的来说都是一些在 NLP 具体任务上的做法,每一个都涉及到相关 paper,我们可以简单的将其归纳为这么一个流程:

  • 首先搞一个/多个已有系统。在线、离线均可,实际任务或标注任务都行。

  • 从已有系统给出结果。这里样例的选取可以考虑能带来最大信息增益的、或者分数较低的、或者特征不显著的样本等等。

  • 根据给出的结果收集反馈。这包括标注(判断已有模型给出的答案对不对,或哪个更好等等),直接让用户更新/反馈(好不好、哪个好、自然文本、直接更新特征等等)。

  • 根据反馈结果重新优化模型。有的可以直接作为样本,有的可以作为训练时的约束;可以在线实时更,也可以离线批量更。

  • 重复这个流程。

HITL交互

首先是交互媒介,一般包括两种:图形接口和自然语言接口。后者是模拟对话的形式,剩下的基本都是前者。

接下来是用户反馈的类型,刚刚上面已经提到一些,这里归纳一下:

  • 二元反馈(是/否,好/不好,满意/不满意等等)。

  • 打分反馈(5、10、100 等为满分,给结果一个分值评价;按结果的好坏排序也属于这种)。

  • 自然语言反馈:自然语言接口居多,根据反馈的文本可以直接作为更细模型的样本或依据。

最后是使用方式,上面也提到一些,不过从算法角度看,可以分成两种:

  • active learning:交互式让用户给出(设计的想要的)反馈。

  • reinforcement learning:根据用户反馈采取行动以最大化累计奖励。

前者直接优化目标,后者优化策略;前者学习表征,后者学习规则。

HITL方向

首先是在 NLP 系统中扮演起更广泛的角色:

  • 作为更好理解模型和提升最终用户体验的一种方法。比如用户反馈可以用来缓解模型偏见。

  • 考虑让模型工程师和最终用户参与到 NLP 开发流程。比如用户可以在运行时观察到模型的行为或者更改模型特征权重,给用户更多的控制权。

然后是要设计以 Human 为中心的系统,比如:在 HITL 界面添加模型解释线索,提高反馈质量(把原理告诉反馈者)。未来方向包括:

  • 人类反馈具有主观性,应该从谁那里收集,执行某些任务是否需要专业知识?这个主要体现在终端用户这里。

  • 如何呈现模型学到的东西,以及需要哪些反馈?如何可视化模型从用户反馈中学习后的变化?

  • 如何动态选择最有帮助的反馈,如何引导用户提供有用的反馈?

  • 如何评估收集到的反馈?因为这些反馈可能充满噪声,甚至误导性。

  • 严格的用户研究,以评估 HITL 系统的有效性和模型性能。

  • 开源工具,发布新的 HITL NLP 工作时共享用户研究协议。

  • 创建和共享人类反馈数据集。

这一部分内容看起来比较亮眼,关于方向的梳理极具指导意义,尤其是 Human 为中心的系统设计,站在一个宏观和整体的角度对 HITL 进行了思考。从系统的角度看,这和原来的设计可能完全不一样,要考虑的问题更加全面,而且角度也大相径庭。这一块也是目前已有系统非常不完善的地方,尤其是国内的一些应用,无法直视。

一起交流

想和你一起学习进步!『NewBeeNLP』目前已经建立了多个不同方向交流群(机器学习 / 深度学习 / 自然语言处理 / 搜索推荐 / 图网络 / 面试交流 / 等),名额有限,赶紧添加下方微信加入一起讨论交流吧!(注意一定o要备注信息才能通过)

format,png

bf53df699508256d002c0452dd4705fc.gif

Human-in-the-Loop Machine Learning lays out methods for humans and machines to work together effectively. Summary Most machine learning systems that are deployed in the world today learn from human feedback. However, most machine learning courses focus almost exclusively on the algorithms, not the human-computer interaction part of the systems. This can leave a big knowledge gap for data scientists working in real-world machine learning, where data scientists spend more time on data management than on building algorithms. Human-in-the-Loop Machine Learning is a practical guide to optimizing the entire machine learning process, including techniques for annotation, active learning, transfer learning, and using machine learning to optimize every step of the process. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the technology Machine learning applications perform better with human feedback. Keeping the right people in the loop improves the accuracy of models, reduces errors in data, lowers costs, and helps you ship models faster. About the book Human-in-the-Loop Machine Learning lays out methods for humans and machines to work together effectively. You'll find best practices on selecting sample data for human feedback, quality control for human annotations, and designing annotation interfaces. You'll learn to create training data for labeling, object detection, and semantic segmentation, sequence labeling, and more. The book starts with the basics and progresses to advanced techniques like transfer learning and self-supervision within annotation workflows. What's inside Identifying the right training and evaluation data Finding and managing people to annotate data Selecting annotation quality control strategies Designing interfaces to improve accuracy and efficiency About the author Robert (Munro) Monarch is a data scientist and engineer who has built machine learning data for companies such as
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值