首页 > 其他分享 >LLM面面观之Prefix LM vs Causal LM

LLM面面观之Prefix LM vs Causal LM

时间:2023-11-29 14:44:48浏览次数:29  
标签:LM 面面观 Encoder Prefix token Decoder Causal

1. 背景

关于Prefix LM和Causal LM的区别,本qiang在网上逛了一翻,发现多数客官只给出了结论,但对于懵懵的本qiang,结果仍是懵懵...

因此,消遣了多半天,从原理及出处,交出了Prefix LM和Causal LM两者区别的更为清楚的说明。

2. Prefix LM

Prefix LM,即前缀语言模型,该结构是Google的T5模型论文起的名字,望文知义来说,这个模型的”前缀”有些内容,但继续向前追溯的话,微软的UniLM已经提及到了。

Prefix LM其实是Encoder-Decoder模型的变体,为什么这样说?解释如下:

(1) 在标准的Encoder-Decoder模型中,Encoder和Decoder各自使用一个独立的Transformer

( 2) 而在Prefix LM,Encoder和Decoder则共享了同一个Transformer结构,在Transformer内部通过Attention Mask机制来实现。

继续展开下Attention Mask机制,马上主题就有解了!

与标准Encoder-Decoder类似,Prefix LM在Encoder部分采用Auto Encoding (AE-自编码)模式,即前缀序列中任意两个token都相互可见,而Decoder部分采用Auto Regressive  (AR-自回归)模式,即待生成的token可以看到Encoder侧所有token(包括上下文)和Decoder侧已经生成的token,但不能看未来尚未产生的token。

下面的图很形象地解释了Prefix LM的Attention Mask机制(左)及流转过程(右)。

           

 

 

 

 

 

Prefix LM的代表模型有UniLM、T5、GLM(清华滴~)

3. Causal LM

了解了Prefix LM后,再来看Causal LM就简单的多了~

Causal LM是因果语言模型,目前流行地大多数模型都是这种结构,别无他因,因为GPT系列模型内部结构就是它,还有开源界的LLaMa也是。

Causal LM只涉及到Encoder-Decoder中的Decoder部分,采用Auto Regressive模式,直白地说,就是根据历史的token来预测下一个token,也是在Attention Mask这里做的手脚。

参照着Prefix LM,可以看下Causal LM的Attention Mask机制(左)及流转过程(右)。

         

 

 

Ps(图真是个好东西,一图胜万字呀)

4. 如何选取

两种结构均能生成文本,应该如何选择呢?只能说仁智见仁智。本qiang也搜寻了一番,有一篇google的论文,从理论上推导了Causal LM在情境学习(In-Context Learning)中比不上Prefix LM,感兴趣地客官可以看看论文。

5. 总结

一句话足矣~

前缀语言模型可以根据给定的前缀生成后续的文本,而因果语言模型只能根据之前的文本生成后续的文本。

6. 参考

(1) google T5: https://arxiv.org/pdf/1910.10683v4.pdf

(2) 微软UniLM: https://arxiv.org/pdf/1905.03197.pdf

(3) google理论评估PLM与CLM: https://arxiv.org/pdf/2308.06912.pdf

 

标签:LM,面面观,Encoder,Prefix,token,Decoder,Causal
From: https://www.cnblogs.com/mengrennwpu/p/17864802.html

相关文章

  • 检索增强生成 (RAG)的原理——传统检索+LLM生成相结合
    RAG是一种检索增强生成模型,由信息检索系统和seq2seq生成器组成。它的内部知识可以轻松地随时更改或补充,而无需浪费时间或算力重新训练整个模型。举个例子,假设你正在写一篇关于猫的文章,但你不确定如何描述猫的行为。你可以使用RAG来检索与猫行为相关的文档,然后将这些文档作为上下文......
  • LLM模型参数助力多模态大模型高效训练
    随着人工智能技术的快速发展,多模态大模型在各种应用领域展现出了巨大的潜力。然而,其训练过程存在着计算资源消耗大、训练时间漫长等问题,这限制了其在实际场景中的应用。为了解决这些问题,salesforce提出了一个新的训练方法,即基于冻结视觉编码器和LLM模型参数的高效训练多模态大模型(B......
  • 使用Accelerate库在多GPU上进行LLM推理
    大型语言模型(llm)已经彻底改变了自然语言处理领域。随着这些模型在规模和复杂性上的增长,推理的计算需求也显著增加。为了应对这一挑战利用多个gpu变得至关重要。所以本文将在多个gpu上并行执行推理,主要包括:Accelerate库介绍,简单的方法与工作代码示例和使用多个gpu的性能基准测......
  • 使用LangChain与ChatGLM实现本地知识库(一)
      本篇主要内容为介绍ChatGLM3的安装使用,后续才会涉及到使用LangChain实现本地知识库的内容;  ChatGLM为智谱与清华大学开源的一个大语言模型,支持多轮对话、内容创作等,ChatGLM3-6B为ChatGLM3系列中门槛相对较低的一个,本地部署提供兼容OpenAI的API;  LangChain用于快速开发基......
  • 7 Mutilmodal Feature Extraction and Attention-based Fusion for Emotion Estimatio
    摘要。人机交互技术的不断进步,使得情感的计算成为可能。在本文中,我们介绍了我们提交给CVPR2023竞赛的情感行为分析在野外(ABAW)。人机交互中的情感分析应尽可能从多维度入手,填补单个不完善的情感通道,最后通过拟合多个结果确定情感倾向。因此,我们利用了从比赛数据集中不同长度的视......
  • Jenkins从Ubuntu迁移至AlmaLinux问题及相关解决记录
    相关背景之前在Ubuntu平台上搭建了Jenkins(在Ubuntu机器上使用war包安装Jenkins),现在由于一些需求,需要将系统迁移到AlmaLinux平台。由于AlmaLinux属于CentOS系列,与Ubuntu所属的Debian系列不同,在此记录一下迁移中遇到的问题。问题1:账号没有sudo权限现象:根据Linux机器自建账号并赋......
  • LLMLingua:集成LlamaIndex,对提示进行压缩,提供大语言模型的高效推理
    大型语言模型(llm)的出现刺激了多个领域的创新。但是在思维链(CoT)提示和情境学习(ICL)等策略的驱动下,提示的复杂性不断增加,这给计算带来了挑战。这些冗长的提示需要大量的资源来进行推理,因此需要高效的解决方案,本文将介绍LLMLingua与专有的LlamaIndex的进行集成执行高效推理。LL......
  • ChatGLM3革新:推理速度提升2-3倍,成本降低一半的AI大模型
    引言随着人工智能技术的飞速发展,自然语言处理(NLP)已成为最具挑战性和活跃的研究领域之一。在这个领域,大型预训练模型已被证明是实现卓越性能的关键。智谱AI最近发布的ChatGLM3,作为其第三代对话大模型,不仅在性能上有了显著提升,还在多个方面展现了其技术优势。推理速度和成本ChatGL......
  • 2023 CCPC 哈尔滨 BLM
    [2023CCPC哈尔滨](The2ndUniversalCup.Stage10:Harbin-Dashboard-Contest-UniversalCupJudgingSystem(ucup.ac))BLMB.Memory思路:由递推式:\(Mood(i)=\sum_{j=1}^{i}2^{j-i}\timesa_j\)可知,\(f[i]=f[i-1]/2+a[i]\)显然直接\(/2\)会有精度问题啦,怎么办......
  • 为美好的世界献上佐罗兔(2)基于docker安装ChatGLM3
    佐罗兔——rabbitzorro首先我找了一个B站的教学视频,但是他不是基于Docker的https://www.bilibili.com/video/BV1gN4y1r7RX作者一看就是专业讲课的,说三句水两句,不过教程的结构还是可以借鉴的。我的PC配置:N卡RTX306012GB板、i5、32G内存傻瓜安装了dockerDesktop对docke......