2024 年 2 月,一支科研团队在 Transactions of the Association for Computational Linguistics 上发表了一篇题为《迷失在中间:语言模型如何使用长上下文》(Lost in the Middle:How Language Models Use Long Contexts)的论文。
“Lost in the Middle”是指大模型在处理长文本的时候,如果关键信息出现在开头或结尾的话,那么模型会更容易注意到这些信息。
反之,如果关键信息出现在文本中间,那么模型就会更加容易忽略掉这些信息。因此,大模型的准确率会呈现出 U-型的曲线。
同时,领域内的“Needle-in-a-haystack(大海捞针)”测试也展示了同样的结论:如果在一段长文本中加入一小段关键信息,那么文本越长,模型就越容易忽略掉手动嵌入的信息。
为了解决这些问题,目前人们主要使用三种方法:
其一,使用检索增强生成方法,这通常需要一个额外的检索器,从长文本中提取一段文本来给大模型处理。
其二,使用修改模型结构的方法,比如改变模型的位置编码。
其三,让模型在更多长文本数据上做训练。
对于前两种方法来说,需要修改已有的流水线,而且不一定适用通用任务。
对于第三种方法来说,曾有领域内学者在使用这一方法时,在一些长文本问答上做训练,即给定一段真实的文本(里面会涉及现实世界中的事实信息)和关于此文本的问题,借此让模型学习给定的答案,以此来提升模型处理长文本的能力。
但是,这种方法往往需要很多的数据,而且一定程度上会对模型的通用能力造成影响,同时数据中涉及到现实信息的部分会让模型产生“幻觉”。
为此,美国威斯康星麦迪逊大学计算机系研究生熊哲洋和所在团队希望研究这样一个问题:能否合成一种数据,让其不包含现实世界的事实信息(比如纯符号),从而让模型更高效地学习处理长文本的能力,同时不会对其通用能力造成太多影响?
同时,他们也非常好奇这样一个问题:模型能否将其在人工生成的任务中学到的能力,运用到其他更加现实的任务中去?
(来源:arXiv)
为此,他们设计了基于符号(阿拉伯数字)的人工合成数据,并让大模型在这上面做指令微调。
借此发现:即使微调的长文本任务是合成的,大模型仍能将在这上面学到的能力,用于真实的长文本任务之中。
此外,他们发现相比基于现实信息的真实数据,人工合成的数据能更好地利用模版,即可以指定模型使用某一种方式来回答,从而让模型能够更高效地学习相关“技能”,而不是仅仅学会“如何回答一个问题”,这样一来就能减少所需要的数据。
同时,该团队还发现:对于传统的长文本问答数据来说,里面往往包含一些现实信息(有些可能已经过时)。
如果在这上面进行微调,就会让模型产生“幻觉”并会生成错误的回答,尤其在一些考察知识的任务上产生“幻觉”的概率更高。但是,使用合成数据就不会产生这类问题,这也证明了本次成果的优越性。
日前,相关论文以《从人工针到真正的干草堆:通过合成数据微调改进大模型的检索能力》(From Artificial Needles to Real Haystacks: Improving Retrieval Capabilities in LLMs by Finetuning on Synthetic Data)为题发在 arXiv[1]。
图 | 相关论文(来源:arXiv)
在大模型时代,数据毫无疑问占据着重要地位,甚至有人认为人工智能 = 算力 + 数据。
近年来,也有越来越多数据类研究、特别是生成数据类研究出炉。总的来说,原有的真实数据固然很重要,不过生成数据或许可以成为一种补充学习方式,甚至有望成为一种更加高效的学习方式。
需要指出的是,本次研究仅仅探索了合成数据能否提升大模型长文本处理能力这一问题。
而长文本能力所对应的合成数据,不仅更容易被设计,同时也更加符合研究人员的直觉。
因此,接下来该团队计划探索合成数据能否提升大模型的其他能力。
01/ 水也能用来造芯片?科学家用液态水分子制备神经网络计算芯片,或为AI计算提供新方向
02/ 哈佛团队开发类ChatGPT的AI病理模型,诊断19种类型癌症准确率近94%,为癌症诊疗提供新工具
03/ 动物模型血糖被控长达一天,浙大团队制备口服胰岛素制剂,小鼠连续给药7天未出现低血糖
04/可同时用于塑料降解与绿色制氢?科学家制备单原子铁催化剂,有望减少依赖传统化石燃料
05/ 科学家发现新型自由基聚合模式,开发功能化聚烯烃材料,或可突破扩链剂进口依赖