大语言模型的三种主要架构 Decoder-Only、Encoder-Only、Encoder-Decoder
现代大型语言模型(LLM)的演变进化树,如下图:
https://arxiv.org/pdf/2304.13712.pdf
-
基于 Transformer 模型以非灰色显示:
-
decoder-only 模型在蓝色分支,
-
encoder-only 模型在粉色分支,
-
encoder-decoder 模型在绿色分支。
-
-
模型在时间线上的垂直位置表示它们的发布日期。
-
开源模型由实心方块表示,而闭源模型由空心方块表示。
-
右下角的堆积条形图显示了各公司和机构的模型数量。
从时间轴上,我们可以看到:
2021年前,当 OpenAI 决定在 GPT 系列中采用 Decoder-Only 架构时,他们实际上是在逆流而上。在那个时代,Encoder-Decoder 架构,如在 BART 和 Transformer 模型中见到的,是技术巨头和学术界的宠儿,而 Decoder-Only 架构当时被视为一条不被主流认可的小径。
然而,正是这种冒险的选择催生了一个突破性的产品——ChatGPT。它不仅挑战了当时的技术共识,还引领了一个全新的对话生成和文本续写的潮流。ChatGPT 展现的生成连贯、流畅和相关文本的能力,彻底颠覆了业界对 Decoder-Only 架构的看法,将其从一个被边缘化的选择转变为人工智能研究的前沿。
大语言模型常见架构
大语言模型如GPT系列(包括GPT-4)通常采用不同的架构,主要有三种:Decoder-Only、Encoder-Only、以及Encoder-Decoder。每种架构都有其独特的特点和适用场景:
1. Decoder-Only 架构(GPT)
这就像一个讲故事的人。你给他一个开头,比如“有一次,一只小猫走失了”,然后他会继续这个故事,讲述下去,一直到故事结束。
Decoder-Only模型就是这样,它接收一些信息(开头),然后生成接下来的内容(故事)。
特点:擅长创造性的写作,比如写小说或自动生成文章。它更多关注于从已有的信息(开头)扩展出新的内容。
OpenAI 选择了Decder-Only方案(如GPT系列),因为它对于自然语言生成特别有效。这种架构能够更好地理解和预测语言模式,尤其适合处理开放式的、生成性的任务。
2. Encoder-Only 架构(BERT)
这就像是一个专业的书评家。他阅读和理解一本书(输入的信息),然后告诉你这本书是关于什么的,比如它的主题是爱情、冒险还是悬疑。
Encoder-Only模型就是专注于理解和分析输入的信息,而不是创造新的内容。
特点:擅长理解和分类信息,比如判断一段文本的情感倾向(积极还是消极)或者主题分类。
这种架构主要用于处理输入数据,专注于理解和编码信息,而不是生成新的文本。
Encoder-Only模型在理解和分类任务中更为有效,例如文本分类、情感分析等。
3. Encoder-Decoder 架构(如BART、T5)
这就像是翻译家。他先听你说一段话(比如英文),理解它,然后把它翻译成另一种语言(比如中文)。
Encoder-Decoder模型就是这样,先理解输入的信息(Encoder部分),然后基于这个理解生成新的、相关的内容(Decoder部分)。
特点:擅长处理需要理解输入然后生成相关输出的任务,比如翻译或问答系统。
这种模型在需要深入理解输入内容并生成相关响应的任务中表现良好,例如机器翻译、问答系统等。
从上面的介绍,我们可以看到,三种架构都有其适用场景,那为啥OpenAI选择的Decoder-Only大获成功呢?因为:
理解自然语言是通往通用人工智能(AGI)的关键路径
语言是人类智能的一个核心表现。通过有效地处理和生成自然语言,人工智能系统可以更好地理解人类的意图、情感和知识,这是通向AGI的重要一步。
想象一下,语言就像是一座桥。这座桥连接着人类的思维世界与外部世界。当人们交流时,他们实际上是在这座桥上相遇,通过语言的桥梁来分享思想、情感和知识。
现在,设想人工智能(AI)像是一位初到陌生城市的旅者。最开始,这位旅者可能只懂得一些基本的词汇和短语,类似于旅游手册里的内容。随着时间的推移,如果他开始学习当地的语言,了解当地的文化和习俗,他就能更深入地理解这座城市,甚至能够与当地人进行深层次的交流。在这个过程中,这位旅者不仅学会了如何使用语言,还学会了理解当地人的想法、情感和行为方式。
把这个比喻应用到AI上,刚开始,AI就像是只懂得基础语言的旅者。但随着它学习和理解更多的自然语言,它就能更好地理解人类的意图、情感和复杂思想。这种深入的理解能力是通往通用人工智能(AGI)的桥梁,因为它不仅帮助AI理解语言本身,还帮助它理解使用这种语言的人类社会和文化。图:语言就像是一座桥.就像一个逐渐融入新城市的旅者,AI通过学习语言,能够逐渐理解并参与人类的世界。
从语言突破,较少的计算量
OpenAI首席科学家Ilya Sutskever有句话:
“语言是人类知识的压缩”
对比视觉和声音,语言的压缩比要高很多。
相关文章:

大语言模型的三种主要架构 Decoder-Only、Encoder-Only、Encoder-Decoder
现代大型语言模型(LLM)的演变进化树,如下图: https://arxiv.org/pdf/2304.13712.pdf 基于 Transformer 模型以非灰色显示: decoder-only 模型在蓝色分支, encoder-only 模型在粉色分支, encod…...
【MySQL】外连接 where 和 on 的区别
力扣题 1、题目地址 1158. 市场分析 I 2、模拟表 User Column NameTypeuser_idintjoin_datedatefavorite_brandvarchar user_id 是此表主键(具有唯一值的列)。表中描述了购物网站的用户信息,用户可以在此网站上进行商品买卖。 Orders…...

【优化】XXLJOB修改为使用虚拟线程
【优化】XXLJOB修改为使用虚拟线程 新建这几个目录 类, 去找项目对应的xxljob的源码 主要是将 new Thread 改为 虚拟线程 Thread.ofVirtual().name("VT").unstarted 以下代码是 xxljob 2.3.0版本 举一反三 去修改对应版本的代码 <!-- 定…...

金蝶Apusic应用服务器 loadTree JNDI注入漏洞复现(QVD-2023-48297)
0x01 产品简介 金蝶Apusic应用服务器是一款企业级应用服务器,支持Java EE技术,适用于各种商业环境。 0x02 漏洞概述 由于金蝶Apusic应用服务器权限验证不当,导致攻击者可以向loadTree接口执行JNDI注入,造成远程代码执行漏洞。利用该漏洞需低版本JDK。(漏洞比较旧,8月份…...

PromptNER: Prompt Locating and Typing for Named Entity Recognition
原文链接: https://aclanthology.org/2023.acl-long.698.pdf ACL 2023 介绍 问题 目前将prompt方法应用在ner中主要有两种方法:对枚举的span类型进行预测,或者通过构建特殊的prompt来对实体进行定位。但作者认为这些方法存在以下问题…...

QT编写应用的界面自适应分辨率的解决方案
博主在工作机上完成QT软件开发(控件大小与字体大小比例正常),部署到客户机后,发现控件大小与字体大小比例失调,具体表现为控件装不下字体,即字体显示不全,推测是软件不能自适应分辨率导致的。 文…...

Kubernetes pod ip 暴露
1. k8s pod 和 service 网络暴露 借助 iptables 的路由转发功能,打通k8s集群内的pod和service网络,与外部网络联通 # 查看集群的 pod 网段和 service 网段 kubectl -n kube-system describe cm kubeadm-config networking:dnsDomain: cluster.localpod…...

442. 数组中重复的数据
数组中重复的数据 描述 : 给你一个长度为 n 的整数数组 nums ,其中 nums 的所有整数都在范围 [1, n] 内,且每个整数出现 一次 或 两次 。请你找出所有出现 两次 的整数,并以数组形式返回。 你必须设计并实现一个时间复杂度为 O(n) 且仅使用…...

Qt/C++视频监控Onvif工具/组播搜索/显示监控画面/图片参数调节/OSD管理/祖传原创
一、前言 能够写出简单易用而又不失功能强大的组件,一直是我的追求,简单主要体现在易用性,不能搞一些繁琐的流程和一些极难使用的API接口,或者一些看不懂的很难以理解的函数名称,一定是要越简单越好。功能强大主要体现…...

word2003 open word2007+
Win 7 C:\Documents and Settings\Administrator\Application Data\Microsoft\Templates 还是不行,重装office2003吧,再安装转换插件,但是再高版本好像没转换工具...

windows安装、基本使用vim
标题:windows安装、基本使用vim 1.下载并安装GVIM 百度网盘链接 提取码:2apr 进入安装界面,如下,勾选 其它都是默认即可 参考; 2.在powershell中使用vim 参考blog:window10安装vim编辑器 安装好后&…...

【SpringBoot快速入门】(1)SpringBoot的开发步骤、工程构建方法以及工程的快速启动详细讲解
目录 SpringBoot简介1 SpringBoot快速入门1.1 开发步骤1.1.1 创建新模块1.1.2 创建 Controller1.1.3 启动服务器1.1.4 进行测试 2 对比3 官网构建工程3.1 进入SpringBoot官网3.2 选择依赖3.3 生成工程 4 SpringBoot工程快速启动4.1 问题导入4.2 打包4.3 启动 之前我们已经学习的…...

Day69力扣打卡
打卡记录...

机器学习:手撕 AlphaGo(一)
图 1-1: AphaGo 结构概览 1. 前言 AlphaGo 是一个非常经典的模型,不论从影响力还是模型设计上。它的技术迭代演进路径:AlphaGo,AlphaGoZero,AlphaZero,MuZero 更是十分精彩。相信有很多同学因为听了 AlphaGo 的故事对…...

ElasticSearch学习篇9_文本相似度计算方法现状以及基于改进的 Jaccard 算法代码实现
背景 XOP亿级别题库的试题召回以及搜题的举一反三业务场景都涉及使用文本相似搜索技术,学习此方面技术以便更好的服务于业务场景。 目前基于集合的Jaccard算法以及基于编辑距离的Levenshtein在计算文本相似度场景中有着各自的特点,为了优化具体的计算时…...

大创项目推荐 深度学习+python+opencv实现动物识别 - 图像识别
文章目录 0 前言1 课题背景2 实现效果3 卷积神经网络3.1卷积层3.2 池化层3.3 激活函数:3.4 全连接层3.5 使用tensorflow中keras模块实现卷积神经网络 4 inception_v3网络5 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 *…...
Debezium系列之:Flink SQL消费Debezium数据格式,同步数据到下游存储系统
Debezium系列之:Flink SQL消费Debezium数据格式,同步数据到下游存储系统 一、Debezium二、依赖三、使用Debezium Format四、可用元数据五、Format参数六、重复的变更事件七、消费 Debezium Postgres Connector 产生的数据八、数据类型映射一、Debezium Debezium 是一个 CDC(…...
webrtc支持的最小宽度和高度
代码在:h264/sps_parser.cc // // IMPORTANT ONES! Now were getting to resolution. First we read the pic // width/height in macroblocks (16x16), which gives us the base resolution, // and then we continue on until we hit the frame crop offsets, wh…...
虚拟机对象的创建
虚拟机对象 虚拟机在Java堆中对象分配、布局和访问的访问过程 对象的创建 Java对象的创建步骤: 1)类加载检查 虚拟机遇到一条 new 指令时,首先将去检查这个指令的参数是否能在常量池中定位到这个类的符号引用,并且检查这个符号…...

阿里云吴结生:云计算是企业实现数智化的阶梯
云布道师 近年来,越来越多人意识到,我们正处在一个数据爆炸式增长的时代。IDC 预测 2027 年全球产生的数据量将达到 291 ZB,与 2022 年相比,增长了近 2 倍。其中 75% 的数据来自企业,每一个现代化的企业都是一家数据公…...
SkyWalking 10.2.0 SWCK 配置过程
SkyWalking 10.2.0 & SWCK 配置过程 skywalking oap-server & ui 使用Docker安装在K8S集群以外,K8S集群中的微服务使用initContainer按命名空间将skywalking-java-agent注入到业务容器中。 SWCK有整套的解决方案,全安装在K8S群集中。 具体可参…...
Java 语言特性(面试系列1)
一、面向对象编程 1. 封装(Encapsulation) 定义:将数据(属性)和操作数据的方法绑定在一起,通过访问控制符(private、protected、public)隐藏内部实现细节。示例: public …...

中南大学无人机智能体的全面评估!BEDI:用于评估无人机上具身智能体的综合性基准测试
作者:Mingning Guo, Mengwei Wu, Jiarun He, Shaoxian Li, Haifeng Li, Chao Tao单位:中南大学地球科学与信息物理学院论文标题:BEDI: A Comprehensive Benchmark for Evaluating Embodied Agents on UAVs论文链接:https://arxiv.…...

华为OD机试-食堂供餐-二分法
import java.util.Arrays; import java.util.Scanner;public class DemoTest3 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseint a in.nextIn…...
【JavaSE】绘图与事件入门学习笔记
-Java绘图坐标体系 坐标体系-介绍 坐标原点位于左上角,以像素为单位。 在Java坐标系中,第一个是x坐标,表示当前位置为水平方向,距离坐标原点x个像素;第二个是y坐标,表示当前位置为垂直方向,距离坐标原点y个像素。 坐标体系-像素 …...

智能分布式爬虫的数据处理流水线优化:基于深度强化学习的数据质量控制
在数字化浪潮席卷全球的今天,数据已成为企业和研究机构的核心资产。智能分布式爬虫作为高效的数据采集工具,在大规模数据获取中发挥着关键作用。然而,传统的数据处理流水线在面对复杂多变的网络环境和海量异构数据时,常出现数据质…...

【数据分析】R版IntelliGenes用于生物标志物发现的可解释机器学习
禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍流程步骤1. 输入数据2. 特征选择3. 模型训练4. I-Genes 评分计算5. 输出结果 IntelliGenesR 安装包1. 特征选择2. 模型训练和评估3. I-Genes 评分计…...

html css js网页制作成品——HTML+CSS榴莲商城网页设计(4页)附源码
目录 一、👨🎓网站题目 二、✍️网站描述 三、📚网站介绍 四、🌐网站效果 五、🪓 代码实现 🧱HTML 六、🥇 如何让学习不再盲目 七、🎁更多干货 一、👨…...
离线语音识别方案分析
随着人工智能技术的不断发展,语音识别技术也得到了广泛的应用,从智能家居到车载系统,语音识别正在改变我们与设备的交互方式。尤其是离线语音识别,由于其在没有网络连接的情况下仍然能提供稳定、准确的语音处理能力,广…...

【Post-process】【VBA】ETABS VBA FrameObj.GetNameList and write to EXCEL
ETABS API实战:导出框架元素数据到Excel 在结构工程师的日常工作中,经常需要从ETABS模型中提取框架元素信息进行后续分析。手动复制粘贴不仅耗时,还容易出错。今天我们来用简单的VBA代码实现自动化导出。 🎯 我们要实现什么? 一键点击,就能将ETABS中所有框架元素的基…...