微信扫码
与创始人交个朋友
我要投稿
大模型用于文本生成对话表现不错,但是一旦应用到需要密集专业知识的场景中时,就没有办法准确回复。好像一个没来听课的学霸考生,不可能什么知识都背下来(知识注入型预训练成本太大),因此这种情况下一般依赖他室友(检索器)给他准备开卷考试资料。但是这位室友同学经常喜欢问ChatGPT,把模型答案写到给学霸的小抄里面,有一天他帮学霸准备一个经典的面试题答案:
BERT为什么不适合生成任务?
BERT(Bidirectional Encoder Representations from Transformers)是一种预训练语言表示模型,它在自然语言处理(NLP)领域取得了巨大的成功,特别是在理解语言的任务上,如文本分类、问答、命名实体识别等。然而,BERT在生成任务上的表现并不理想,原因主要包括以下几点:
1. **单向解码限制**:BERT模型是基于Transformer架构,它在编码器(Encoder)部分是双向的,可以同时考虑前后文信息。但在解码器(Decoder)部分,它通常是单向的,只能从左到右生成文本。这限制了BERT在生成任务中的灵活性,因为它不能像双向语言模型那样利用未来的信息来生成文本。
2. **预训练目标**:BERT的预训练目标是Masked Language Model(MLM)和Next Sentence Prediction(NSP)。这些任务并不直接针对生成任务,因此BERT在生成连贯、流畅的文本方面可能不如专门为此设计的模型。
3. **生成效率**:BERT生成文本时,需要逐词生成,这导致生成过程比较慢。对于长文本的生成,效率较低。
4. **生成质量**:由于BERT在预训练时并没有特别针对生成任务进行优化,因此在生成连贯性和多样性方面可能不如其他专门为生成设计的模型,如GPT(Generative Pre-trained Transformer)。
5. **上下文限制**:在生成任务中,BERT通常只能处理固定长度的上下文信息。对于需要更长上下文信息的任务,BERT可能无法生成与上下文紧密相关的文本。
6. **优化困难**:BERT的优化通常需要大量的计算资源,而在生成任务中,可能需要对模型进行进一步的微调,这在资源有限的情况下可能不太可行。
尽管如此,BERT在某些生成任务中仍然可以发挥作用,例如通过微调来适应特定的生成任务,或者与其他生成模型结合使用。但总的来说,BERT并不是为生成任务专门设计的,因此在这类任务中可能不是最佳选择。
可以看到,技术密集型的问题,ChatGPT给的回答往往质量不高,细节错误很多。但是基于相似度的检索器往往不对真实性负责,不管答案对不对都往参考资料里面放,如果将这种内容准备到小抄里面,学霸就极其容易给出一个“BERT模型还有一个单向的Decoder”这种比较荒谬的答案。
回到RAG的链路中,相似度检索和生成器(大模型)是分别优化的,检索文档后再将全部的相关文档输入大模型回复答案。弱的检索器就很容易导致引入额外的噪声,这种情况下一些考生就没法知道该相信那篇文档,就很容易出错。
近日发布在arxiv的文章”ATM: Adversarial Tuning Multi-agent System Makes a Robust Retrieval-Augmented Generator”从互联网上存在的大量大模型生成的无用甚至虚假的信息出发,探究提升这种考生开卷考试能力的方法,使得减轻RAG生成器对大模型幻觉内容的可能。通过引入对抗训练的思想,迭代优化逐步提升大模型的鲁棒性。
原文链接:https://arxiv.org/abs/2405.18111
现有的检索增强语言模型从未在优化过程中考虑检索到大模型生成的幻觉知识,容易导致模型过于相信检索到的文档从而不鲁棒。
在RetRobust(Making Retrieval-Augmented Language Models Robust to Irrelevant Context)中,主要优化生成器大模型对不相关的文档的鲁棒性,通过在训练数据中加入不相关的额外噪声文档优化大模型的效果。与基于自然语言推理过滤后再生成的基线相比,优化后的模型对不相关的文档可以更加鲁棒,也就是说,让考生在做答时学会了哪些知识是相关的。然而大模型编造的知识可能都是与话题强相关的内容,RetRobust可能难以分辨出有用的文档。
本文主要通过对抗思想提升模型对话题强相关的模型编造内容的鲁棒性。如本文总览图所述,通过引入另一个角色Attacker来编造虚假知识,诱导生成器输出错误内容,而生成器Generator不断提升在召回文档混入虚假信息条件下生成正确信息的概率,也就是提升自身对干扰文档的鲁棒性。
优化思想借鉴自对抗训练,综合的优化目标是希望尽可能减小模型在坏召回 和好召回场景 之间的差距(提升鲁棒性),同时提升模型在给定较好召回文档条件下生成正确答案的能力。
由于两者是双向进化的,天然使得这一过程可以迭代循环进行,同时增强两者的能力。
生成器反馈的答案不确定性可以作为Attacker的优化目标,可以以此作为偏好对齐的优化方向,作者通过DPO来提升Attacker的攻击强度:
在Generator的增强方面,文章除了标准的SFT损失,还为增强模型鲁棒性的设置了token级别的损失,希望模型面对两种输入能够保持相同答案输出的一致性。
通过迭代训练,Attacker逐渐产生攻击性更强的数据,Generator尽可能减小强攻击条件下和好召回条件下的差异,模型的效果可以在这种博弈中达到双向增强。作者的实验表明通过循环迭代执行这一机制,两者的效果有希望达到同时增强,通过多轮迭代可以实现效果的逐步提升。
在验证集上,通过优化得到的生成器模型在多个知识密集的数据集上表现出了不错的效果,7B大小的ATM模型表现可以超过多个优化的13B模型。
本文同时考虑了在真实世界场景,考虑大模型幻觉内容进行RAG可能遇到的各类问题:
检索增强是一种向大模型注入知识的有效方式,然而容易被其他大模型生成的幻觉内容错误引导,生成错误答案。
在本文中,研究者设定了对抗优化的场景,通过迭代训练的方式提升了模型对网络上错误内容的鲁棒性,并展示了迭代优化在提升真实世界场景问答准确率的能力。
53AI,企业落地应用大模型首选服务商
产品:大模型应用平台+智能体定制开发+落地咨询服务
承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2024-05-28
2024-04-26
2024-04-11
2024-08-21
2024-07-09
2024-08-13
2024-07-18
2024-10-25
2024-07-01
2024-06-17