大语言模型的三种主要架构 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有句话:

“语言是人类知识的压缩”

对比视觉和声音,语言的压缩比要高很多。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/224347.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

前端工程注入版本号

文章目录 一、前言二、webpack三、vite四、最后 一、前言 容器化时代,当页面出现问题时,如果你的新版本有可能已经修复了,那样你再排查它就没有意义了。为什么不一定是最新版本呢?一是可能是缓存作祟,二是可能运维成员…

Linux部署MeterSphere结合内网穿透实现远程访问服务管理界面

文章目录 前言1. 安装MeterSphere2. 本地访问MeterSphere3. 安装 cpolar内网穿透软件4. 配置MeterSphere公网访问地址5. 公网远程访问MeterSphere6. 固定MeterSphere公网地址 前言 MeterSphere 是一站式开源持续测试平台, 涵盖测试跟踪、接口测试、UI 测试和性能测试等功能&am…

fragstats:景观指数趋势分析

作者:CSDN _养乐多_ 本文将介绍景观指数时间序列的趋势分析,包括趋势类型、斜率、截距等。以及景观指数突变分析所用的软件和 python 代码。 结果如下图所示, 图1 趋势分类图 图2 MK趋势分析 文章目录 一、景观指数计算二、景观指数时间序…

如何将本地websocket发布至公网并实现远程访问服务端

文章目录 1. Java 服务端demo环境2. 在pom文件引入第三包封装的netty框架maven坐标3. 创建服务端,以接口模式调用,方便外部调用4. 启动服务,出现以下信息表示启动成功,暴露端口默认99995. 创建隧道映射内网端口6. 查看状态->在线隧道,复制所创建隧道的公网地址加端口号7. 以…

山海鲸开发者带你了解智慧医疗

在医疗行业日新月异的今天,可视化技术正在逐渐改变我们对医疗的认知与实践。作为山海鲸可视化软件的开发者,我们深知可视化技术在智慧医疗领域的重要性。通过山海鲸可视化这款免费编辑、免费分享的数字孪生软件,我们致力于为智慧医疗领域提供…

开源自托管导航页配置服务Dashy本地搭建结合内网穿透远程访问

开源自托管导航页配置服务Dashy本地搭建结合内网穿透远程访问 简介1. 安装Dashy2. 安装cpolar3.配置公网访问地址4. 固定域名访问 简介 Dashy 是一个开源的自托管的导航页配置服务,具有易于使用的可视化编辑器、状态检查、小工具和主题等功能。你可以将自己常用的一…

C++11(上):新特性讲解

C11新特性讲解 前言1.列表初始化1.1{ }初始化1.2std::initializer_list 2.类型推导2.1 auto2.2 typeid2.3 decltype 3.范围for4.STL的变化4.1新容器4.2容器的新方法 5.右值引用和移动语义5.1 左值引用和右值引用5.2 左值引用与右值引用比较5.3 右值引用的使用场景5.4 右值、左值…

【MySQL】:超详细MySQL完整安装和配置教程

🎥 屿小夏 : 个人主页 🔥个人专栏 : MySQL从入门到进阶 🌄 莫道桑榆晚,为霞尚满天! 文章目录 📑前言一. MySQL数据库1.1 版本1.2 下载1.3 安装1.4 客户端连接 🌤️全篇总…

生物神经网络衍生出的算法

一个生物神经网络的基本结构: 生物神经网络由大量神经元组成,这些神经元之间通过突触相互连接。神经元可以接收来自其他神经元的信号,并根据信号的强度和类型来调整自己的输出信号。这种神经元之间的相互连接和信号传递形成了生物神经网络的基…

Vue 封装echarts饼状图(Pie)组件

目的&#xff1a;减少重复代码&#xff0c;便于维护 效果显示&#xff1a; 组件代码 <template><div class"ldw-data-content-box"><div class"ldw-chilren-box"><div class"title"><div>{{ title }}</div>…

如何通过蓝牙串口启动智能物联网?

1、低功耗蓝牙(BLE)介绍 BLE 技术是一种低成本、短距离、可互操作的鲁棒性无线技术&#xff0c;工作在免许可的 2,4 GHZ 工业、科学、医学(Industrial Scientific Medical&#xff0c;ISM)频段。BLE在设计之初便被定位为一种超低功耗(Ultra Low Power&#xff0c;ULP)无线技术&…

NAT协议的实现方式

在网络通信中&#xff0c;NAT协议&#xff08;Network Address Translation&#xff0c;网络地址转换&#xff09;扮演着关键角色&#xff0c;允许内部网络与外部网络之间进行有效的通信。 实现内外网之间网络地址转换的过程中&#xff0c;NAT采用了不同的实现方式&#xff0c;…

图解LRU缓存

图解LRU缓存 OJ链接 介绍 LRU 缓存机制可以通过哈希表辅以双向链表实现&#xff0c;我们用一个哈希表和一个双向链表维护所有在缓存中的键值对。 双向链表按照被使用的顺序存储了这些键值对&#xff0c;靠近尾部的键值对是最近使用的&#xff0c;而靠近头部的键值对是最久未…

将elementUI,NaiveUI的progress环形进度条设置为渐变色

需求 &#xff1a;进度条要有一个渐变效果。效果图&#xff1a; NaiveUI和elementUI的官方progress组件都是只能设置一种颜色&#xff0c;不符合需求所以改一下。 其实NaiveUI和elementUI设置进度条的实现方式基本一样都是使用svg渲染出两个path&#xff0c;第一个是底色&…

Podman配置mongodb

文章目录 查询镜像拉取镜像查看镜像运行容器创建root用户 查询镜像 podman search mongo拉取镜像 podman pull docker.io/library/mongo查看镜像 podman images运行容器 podman run -d -p 27017:27017 --namemongodb-test docker.io/library/mongo创建root用户 podman exe…

antdesignpro实现滚动加载分页数据

原理解析&#xff1a;每滚动一次相当于翻页&#xff0c;请求后端时给的页码参数要想办法加1&#xff0c;后端才能根据页码给出相应数据 注意后端收到页码参数之后要准确计算出每页的首行数据&#xff0c;关键逻辑代码&#xff1a; # 根据前端传的页码&#xff0c;进行计算下一…

【Linux系统基础】(3)在Linux上部署运维监控Zabbix和Grafana

目录 运维监控Zabbix部署简介安装安装前准备 - Mysql安装Zabbix Server 和 Zabbix Agenta. 安装Zabbix yum库b. 安装Zabbix Server、前端、Agentc. 初始化Mysql数据库d. 为Zabbix Server配置数据库e. 配置Zabbix的PHP前端 配置zabbix 前端&#xff08;WEB UI&#xff09; 运维监…

深度学习 | 基础卷积神经网络

卷积神经网络是人脸识别、自动驾驶汽车等大多数计算机视觉应用的支柱。可以认为是一种特殊的神经网络架构&#xff0c;其中基本的矩阵乘法运算被卷积运算取代&#xff0c;专门处理具有网格状拓扑结构的数据。 1、全连接层的问题 1.1、全连接层的问题 “全连接层”的特点是每个…

基于阿里云服务网格流量泳道的全链路流量管理(二):宽松模式流量泳道

作者&#xff1a;尹航 在前文基于阿里云服务网格流量泳道的全链路流量管理&#xff08;一&#xff09;&#xff1a;严格模式流量泳道中&#xff0c;我们介绍了使用服务网格 ASM 的严格模式流量泳道进行全链路灰度管理的使用场景。该模式对于应用程序无任何要求&#xff0c;只需…

docker 私有仓库

Docker 私有仓库 一、私有仓库搭建 # 1、拉取私有仓库镜像 docker pull registry # 2、启动私有仓库容器 docker run -id --nameregistry -p 5000:5000 registry # 3、打开浏览器 输入地址http://私有仓库服务器ip:5000/v2/_catalog&#xff0c;看到{"repositories&quo…