33-增量预训练(Pretrain)样本拼接篇.pdf

33-增量预训练(Pretrain)样本拼接篇.pdf_第1页
33-增量预训练(Pretrain)样本拼接篇.pdf_第2页
33-增量预训练(Pretrain)样本拼接篇.pdf_第3页
增量预训练(Pretrain)样本拼接篇来自:AiGC面试宝典宁静致远2024年01月27日20:47一、Pretrain阶段,为什么需要拼接拼接?为了提高pretrain效率、拓展LLM最大长度,随机将若干条短文本进行拼接是pretrain阶段常见手段。二、有哪些拼接方式?2.1拼接方式一:RandomConcatenate随机将短文本{examples_i}拼接成{examples_k}以打满maxLen是pretrain的常见手段,该方法不仅能够降低padding占比、提高训练效率,还能使LLM具备更好的长文本处理能力。但笔者认为,绝大多数情况下构成Example的多个examples彼此互不相关,无法提供有效的上下文信息,LLM自然也无法从拓宽的窗口中获得反馈。甚至,在语料较少、分布比较集中时,LLM很有可能从多次、偶然的(因拼接导致的)噪音共现中拟合到错误的特征。当然,如果语料足够多、分布足够广,LLM仍能通过足够的contrastive,逐渐聚焦于examples本身而非其他无关examples。此外,也有一些使用specialToken对examples进行软隔离的方案,但没有额外的正则手段时,使用specialToken进行隔离或许只是鸡生蛋、蛋生鸡的死循环。2.2拼接方式二:RandomConcatenate+NoiseMask为缓解2.1所述的无关examples间的噪音共现问题,笔者尝试过添加自定义attentionMask,使LLM在pretrain时仅focuson当前example,经笔者测试,该方法在ICLfew-shot上相比2.1(也即常规pretrain方法)有1.6%左右的提升。•增量预训练(Pretrain)样本拼接篇•一、Pretrain阶段,为什么需要拼接拼接?•二、有哪些拼接方式?•2.1拼接方式一:RandomConcatenate•2.2拼接方式二:RandomConcatenate+NoiseMask•2.3拼接方式三:RandomConcatenate+Cluster•2.4拼接方式四:IN-CONTEXTPRETRAINING•致谢defsegment_causal_mask(input_ids,device,val=float("-inf")):bsz,tgt_len=input_ids.shapecum_lens=torch.arange(1,tgt_len+1,device=device).unsqueeze(0)*\torch.eq(input_ids,EosTokenId).int().to(device)mask=torch.zeros([bsz,tgt_len,tgt_len]).to(device)fori,_cum_lensinenumerate(cum_lens):forvin_cum_lens:扫码加查看更多但这种方式仍存在一个问题,相对位置编码(如ALIBI、ROPE)的token-wise相对位置信息会在attentionScore矩阵对应位置有所体现,如果施加了attentionMask,这部分相对位置信息经过softmax会被完全掩盖/误杀,也即LLM无法在BP过程中,从跨examples间获得反馈(不论是相对位置的反馈还是语义信息的反馈)。因此在不考虑外推性的前提下,这种pretrain方法仍是在短文本窗口内进行训练,没有真正意义上实现maxLen级别的长文本训练,只能起到提高训练效率的作用。另外,尽管2.1中没有利用attentionMask,LLM是否能从无关examples构成的窗口中获取对(更远)相对位置的正向反馈仍然存疑(如果数据构成表现为远的都不相关,即便没有mask,LLM也倾向于忽略更远的tokens),或许这也是多数LLM在拓宽maxLen之后,长文本支持效果仍然差强人意的原因之一。2.3拼接方式三:RandomConcatenate+Cluster鉴于2.2存在的问题,能否既不施加attentionMask,也能让LLM不受跨examples干扰甚至还能获益的方法呢?一个直观的想法就是以实体、语义等维度对{examples_i}进行聚类,使构成同一个Example的examples存在真实可靠的信息共现前提,从而LLM更加不容易从噪音共现中学偏,也能从pretrain中适应更加广泛全局的attention、从而具备更好的长文本处理能力。笔者曾经尝试沿实体维度进行聚类,但发现了一个比较棘手的问题:信息重复,以及经过关键词、语义去重后仍难以避免的信息泄露(或者说二者本质相同,只是程度的分别)。在此情况下LLM有从memorize变成了copy的风险,或许这就是后来实验结论没有显著的原因。本文作者提出的ICLM实际上也是一种类似的方法,即基于语义对examples进行聚合、拼接,因此笔者开始时也十分好奇作者如何妥善处理泄露问题。2.4拼接方式四:IN-CONTEXTPRETRAINING作者在文中提出的pretrain方法,基本思想是在拼接时,利用语义相似度,优先将最相似的进行拼接,从而构成语义更加连贯流畅的上下文,基本流程如下图:作者在文中多次强调了数据去重的重...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

发表评论取消回复

参与评论可获取积分奖励  
微风舍
实名认证
内容提供者

微风舍,风起于青萍之末,浪成于微澜之间,舍是漏舍,唯吾德馨。

确认删除?
回到顶部