为什么现在的LLM都是Decoder only的架构?
在我看来,Encoder-Decoder架构和Decoder only架构的重要区别,在于它们的机动性和专业性有所差异。Encoder-Decoder架构通常用于处理惩罚一些需要在输入和输出间建立精确映射的任务,比如机器翻译、文本摘要等。在这些任务中,理解输入的精确内容并据此天生特定的输出是非常重要的。而基于这种架构练习出来的模型,一般只能应用于某种特定的任务,比如一个专为机器翻译练习的Encoder-Decoder模型可能不适合直接用于文本摘要或其他范例的任务。
相比之下,Decoder only架构则具有更强的机动性。基于这种架构练习得到的模型可以处理惩罚多种差异范例的文本天生任务,如聊天机器人、内容创作、问答、翻译等等,不需要针对每一种任务进行专门的练习或调整,也不需要在输入和输出间构建严格的映射关系。
https://i-blog.csdnimg.cn/direct/be25ed1f71d64bd98f8e28d2ab692914.png
用经典的transformer结构图进行直观的说明,Encoder-Decoder架构包括左右两部分,而Decoder only架构则只包括右边一部分。
Openai成员们发表的关于初代GPT的文章Improving Language Understanding by Generative Pre-Training(利用通用的预练习来提拔语言的理解能力)中,具体描述了GPT1的Decoder only架构:
https://i-blog.csdnimg.cn/direct/b46facd91568432b85b50c67a1e9e47d.png
其实在ChatGPT横空出世之前,Encoder-Decoder架构着实“风光”了一段时间。
比如当年一经进场就横扫同行,翻译效果令人眼前一亮的谷歌翻译,便是基于当年最为“风骚”的attention技术实现。
https://i-blog.csdnimg.cn/direct/4495c077b5614515a22b3452d04760a5.png
用一张动图来描述“中译英”的过程:起首,将中文句子中的全部词编码成一个向量列表,其中的每一个向量,表示到现在为止全部被读取到的词的含义(也就是编码过程)。一旦整个句子读取完成,解码器便开始工作,依次天生对应的每个英文单词。为了尽量天生精确的词,解码器重点“注意”与天生英语词最干系的编码的汉语向量的权重分布,也就是attention机制在其中起到重要作用。
其实相识了Encoder-Decoder架构的练习思路和过程后,就可以发现这种架构存在的几个最大的缺点:
数据预处理惩罚:Encoder-Decoder模型通常对于输入和输出之间的精确对齐要求非常严格,这也就意味着需要复杂的数据预处理惩罚过程。而且对于差异范例的输入和输出数据,可能需要用到差异的预处理惩罚方法,比如机器翻译中的双语对齐;比如图像字幕辨认任务中的图像预处理惩罚和文本预处理惩罚等等。
输入数据难以获取:Encoder-Decoder架构通常高度依靠于输入和输出之间的关系,这就要求网络到的输入和输出数据具备精确的映射关系,增大了数据网络的难度,大大减少了符合要求的数据量。
练习时间更长:由于结构的复杂性,Encoder-Decoder模型可能需要很长的练习时间。尤其是处理惩罚长序列时,为了理解和编码整个序列的上下文,为了计算序列中每个元素与其他全部元素间的关系,为了储存更多的数据点和中心计算效果,仅在Encoder阶段,就需要斲丧大量的时间和内存,增加练习难度。
模型应用受限:而最令人恼火的,还是费劲力气练习得到的模型,仅对特定范例的任务表现精良,比如谷歌翻译不能用于进行语音辨认,每涉及到一种新的功能,便需要重新练习一个模型,耗时耗力,很不机动。
而去年如雨后春笋般冒出来的各种大模型,一个重要的主打功能便是:多模态。
也就是说,对于大模型的要求是,既能文字聊天,又能语音聊天;既能天生文本,又能画出美图;既能根据文字出音,又能根据文字做视频。
通过体验多模态LLM的聊天功能、图片天生、语音对话等,就可以发现Decoder-only架构的机动性。不仅云云,Decoder-only可以让模型构建和练习的各个步调都显得更加便捷:
机动的输入格式:由于Decoder-only模型本质上是根据给定的文本串天生输出,因此它们可以继承各种格式的输入。包括问题和答复、提示和续写、以及代码和其实行效果等。也就是说,无需特意对输入数据集进行“清洗”。
无需特定的任务架构:与Encoder-Decoder架构差异,Decoder-only模型不需要为差异范例的任务构建特定的encoder部分。也就是说,同一个模型可以在没有或仅需要少量修改的情况下,处理惩罚多种任务。
简化的预练习和微调过程:在预练习和微调阶段,没有繁琐的encoder过程,Decoder-only模型可以更加轻易的进入练习过程。此外,由于练习过程重要关注如何基于给定的上下文天生文本,因此既不需要用户提供复杂的输入输出编码关系,也不需要专门处理惩罚这些复杂的映射。
易于扩展性:由于结构的简朴和统一,Decoder-only模型通常更轻易扩展到更大的模型尺寸,有助于提拔模型的性能和顺应性。这也就是去年涌现出的众多LLM,参数数量可以或许不断攀上新高的重要缘故因由之一。
固然,Decoder-only架构理论上也是存在一些缺点的:比如Decoder-only架构通常只能基于先前的文本来天生新文本,在理解某些复杂输入方面可能不如Encoder-Decoder架构那么强大;比如Decoder-only模型在处理惩罚长序列时可能面对长期依靠的问题,在长文本中维持上下文同等性和干系性可能表现不佳;比如Decoder-only模型更易出现“幻觉”,由于模型在天生新文本时重要依靠于先前天生的文本,而不是直接从原始输入中提取信息,因此输出效果的可靠性可能不如Encoder-Decoder模型。
但是随着算力的不断提拔,数据的不断丰富以及模型结构的日益复杂,Decoder-only架构的干系缺点可以在一定程度上得到降服:
[*]算力的提高可以加速模型的练习和推理过程,即使处理惩罚规模更大、复杂程度更高的数据集时,也显得游刃有余。
[*]更强的计算能力答应模型拥有更大、更复杂的结构,可能有助于改善模型在长期依靠方面的表现,以及一定程度上改善“幻觉”问题。
[*]越来越完善的数据集可以提供更加多样化和覆盖面更广的信息,帮助模型学习到复杂的语言模式和上下文关系,从而提拔天生内容的质量。
[*]基于预练习模型,针对差异范例的任务进行微调,可以显着提高模型的泛化能力和顺应差异任务的能力。
不过任何一种特定结构的模型,都有其上限,简朴的增加模型大小和数据量并不总是办理问题的最佳途径。未来大模型发展到一定阶段,可能面对过拟合和优化困难等问题。到时候想要得到突破,恐怕还是需要各范畴专家灵光一现,从模型基本架构的角度实现突破。
https://i-blog.csdnimg.cn/direct/2c1ae831fc7d49838102e7e28f52e4f6.jpeg
如何学习AI大模型?
我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助许多人得到了学习和成长。
我意识到有许多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的许多狐疑,所以在工作繁忙的情况下还是对峙各种整理和分享。但苦于知识流传途径有限,许多互联网行业朋友无法得到精确的资料得到学习提拔,故此将并将重要的AI大模型资料包括AI大模型入门学习头脑导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。
https://i-blog.csdnimg.cn/direct/8329decc464e4872b4b4c9182c73cbbb.png
第一阶段: 从大模型系统设计入手,讲解大模型的重要方法;
第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;
第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商范畴虚拟试衣系统;
第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;
第五阶段: 大模型微调开发借助以大康健、新零售、新媒体范畴构建适合当前范畴大模型;
第六阶段: 以SD多模态大模型为主,搭建了文生图小步伐案例;
第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。
https://i-blog.csdnimg.cn/direct/36d0e600a1b745e38ec2399fb7dc551e.jpeg
页:
[1]