面向自然语言处理的自训练方法
OriginalSelf-Training for Natural Language Processing
指出公开语料难以覆盖需要领域知识、不同推理技能或新文本风格的所有应用。
- 发布时间
- 2022-05
内容介绍
面向自然语言处理的模型,表现很大程度上取决于有没有足够的标注数据。公开的大规模语料与标准评测集已经被大量标注并发布,但它们并不能覆盖所有可能的应用,这是这份资料试图回应的出发点。换句话说,关键问题不在于“有没有数据”,而在于“手上的数据是否属于目标场景”。当一个任务需要特定领域知识、需要不同的推理技能,或者面对一种新的文本风格时,现成的公开数据就显得不够用。
围绕这个缺口,作者把注意力放在自训练(self-training)上。材料的要点把它描述为一种弥合训练与评估之间数据分布差距的手段,这个差距既可能出现在领域层面——训练语料来自一个领域,评估发生在另一个领域,也可能出现在任务层面。方法上的思路是让模型参与到自身训练数据的构造中:先用手头数据训练,再借助模型去处理未标注或来自新场景的数据。值得注意的是,探索并不止于“真实数据加伪标签”这一种经典做法,还包括自动生成训练数据的可能性。
第一条值得记住的判断是关于覆盖范围的。公开语料和标准 benchmark 之所以不够,不是因为规模小,而是因为它们对应的是已经被定义好、被采集过的场景;真实应用却常常要求领域知识、特定的推理能力,或者对新的文本风格保持稳健。这意味着,把在公开数据上训好的模型直接搬过去,会撞上分布不匹配的问题。材料的中文摘要在陈述这一点时恰好中断,只留下“难以迁移”这半句判断,具体论述需要回到原文核对。
第二条判断关于自训练的定位。它被当作一种缩小差距的机制,而不只是数据增广技巧:训练分布与评估分布之间的差异,需要通过让模型接触目标侧的数据来缓解。与之配套的是对数据来源的重新思考,如果目标场景的标注数据根本不存在,那么等待人工标注未必是唯一出路,自动生成训练数据是一条可以探索的路径。这里可以做一个解读:自训练的意义不只在省标注成本,更在于它把“训练数据从哪来”从一个既定前提变成了一个可以设计的问题。
对实践而言,这些要点提供了一个检查顺序。如果你正打算把公开数据上训练的模型搬到新领域,先看清评估数据与训练数据的分布差在哪里,再判断是否需要引入目标侧的无标注数据做自训练。而“自动生成训练数据”这一方向提示,伪标签不是终点,构造什么样的训练样本本身就值得设计。这些推论都需要在具体任务上验证,不能从几条要点直接推出通用结论。
读者对象上,这份资料面向关心标注数据瓶颈、正在做领域迁移或低资源任务的研究与工程人员。读完能拿走的是一套问题框架:覆盖缺口出现在哪里、自训练如何介入、训练数据能否被生成。边界也应当说清楚,从标题与要点看,讨论集中在自训练这一条路线,并非数据效率方法的全景综述;材料提供的中文摘要本身在句中截断,涉及迁移困难的具体论证与实验细节,只能回到论文原文确认。