语言模型的进化:从NLP到LLM的跨越之旅

news2024/9/20 15:05:37

在人工智能的浩瀚宇宙中,自然语言处理(NLP)一直是一个充满挑战和机遇的领域。随着技术的发展,我们见证了从传统规则到统计机器学习,再到深度学习和预训练模型的演进。如今,我们站在了大型语言模型(LLM)的门槛上,它们正在重新定义我们与机器交流的方式。本文将深入探讨LLM的发展历程、技术路线、以及它们对未来AI领域的影响。

引言

自然语言处理(NLP)的目标是让机器能够理解、解释和生成人类语言。这一领域的发展经历了几个重要的阶段,每个阶段都标志着对语言理解深度的一次飞跃。从早期的基于规则的系统,到统计学习方法,再到深度学习模型,直至今日的大型语言模型(LLM),每一步都是对前一阶段的超越。
在这里插入图片描述

从规则到统计:NLP的早期探索

规则阶段(1956—1992)

在NLP的早期,研究者依赖于手工编写的规则来处理语言。这一阶段的技术栈包括有限状态机和基于规则的系统。例如,Apertium就是一个基于规则的机器翻译系统,它展示了早期研究者如何通过人工整理词典和编写规则来实现语言的自动翻译。
在这里插入图片描述

统计机器学习阶段(1993—2012)

随着时间的推移,研究者开始转向统计学习方法,使用支持向量机(SVM)、隐马尔可夫模型(HMM)、最大熵模型(MaxEnt)和条件随机场(CRF)等工具。这一阶段的特点是少量人工标注领域数据与人工特征工程的结合,标志着从手工编写规则到机器自动从数据中学习知识的转变。
在这里插入图片描述

深度学习的突破:开启新纪元

深度学习阶段(2013—2018)

深度学习的出现为NLP带来了革命性的变化。以编码器-解码器(Encoder-Decoder)、长短期记忆网络(LSTM)、注意力机制(Attention)和嵌入(Embedding)为代表的技术,使得模型能够处理更大规模的数据集,并且几乎不需要人工特征工程。Google的神经机器翻译系统(2016)就是这一阶段的代表之作。
在这里插入图片描述

预训练模型的兴起:知识的自我发现

预训练阶段(2018—2022)

预训练模型的出现标志着NLP领域的又一次飞跃。以Transformer和注意力机制为核心的技术栈,结合海量无标注数据进行自监督学习,生成通用知识,再通过微调适应特定任务。这一阶段的突变性非常高,因为它扩展了可利用的数据范围,从标注数据拓展到了非标注数据。
在这里插入图片描述

LLM的新时代:智能与通用性的融合

LLM阶段(2023—?)

LLM代表了语言模型的最新发展,它们通常采用解码器为主的架构,结合了Transformer和强化学习人类反馈(RLHF)。这一阶段的特点是两阶段过程:预训练和与人类对齐。预训练阶段利用海量无标注数据和领域数据,通过自监督学习生成知识;与人类对齐阶段则通过使用习惯和价值观对齐,使模型能够适应各种任务。
在这里插入图片描述
回顾各个发展阶段可以看到以下趋势:

数据: 从数据到知识,越来越多数据被利用起来/未来:更多文本数据、更多其它形态数据→任何数据
算法: 表达能力越来越强;规模越来越大;自主学习能力越来越强;从专业向通用/未来:Transformer目前看够用,新型模型(应该强调学习效率)?→AGI?
人机关系: 位置后移,从教导者到监督者/未来:人机协作,机向人学习→人向机学习?→机器拓展人类知识边界

在这里插入图片描述

LLM技术发展路线:多样化的路径

在过去的几年中,LLM技术发展呈现出多样化的路径,包括BERT模式、GPT模式和T5模式等。每种模式都有其特点和适用场景。
在这里插入图片描述

BERT模式(Encoder-Only)

BERT模式通过双向语言模型预训练和任务微调的两阶段(双向语言模型预训练+任务Fine-tuning)过程,适用于自然语言理解类任务。BERT预训练从通用数据中提取通用知识,而微调则从领域数据中提取领域知识。
在这里插入图片描述
适合解决的任务场景:比较适合自然语言理解类,某个场景的具体任务,专而轻;
在这里插入图片描述

GPT模式(Decoder-Only)

GPT模式则从单向语言模型预训练和zero shot/few shot prompt或指令的一阶段(单向语言模型预训练+zero shot/few shot prompt/Instruct)过程中发展而来,适合自然语言生成类任务。GPT模式的模型通常是目前规模最大的LLM,它们能够处理更广泛的任务。
在这里插入图片描述
适用场景:比较适合自然语言生成类任务,目前规模最大的LLM,都是这种模式:GPT 系列,PaLM,LaMDA……,重而通;生成类任务/通用模型 建议GPT模式;
在这里插入图片描述

T5模式(Encoder-Decoder)

T5模式结合了BERT和GPT的特点,适用于生成和理解任务。T5模式的填空任务(Span Corruption)是一种有效的预训练方法,它在自然语言理解类任务中表现出色。两阶段(单向语言模型预训练+Fine-tuning为主)
在这里插入图片描述
特点:形似GPT,神似Bert
适用场景:生成和理解都行,从效果上看比较适合自然语言理解类任务,国内很多大型LLM采取这种模式;如果是单一领域的自然语言理解类任务,建议使用T5模式;
在这里插入图片描述

为什么超大LLM都是GPT模式

超大LLM:追求zero shot/ few shot/instruct 效果
目前的研究结论

(模型规模不大时):

  • 自然语言理解类:T5模式效果最好。
  • 自然语言生成类:GPT模式效果最好。
  • Zero shot: GPT模式效果最好。
    如果Pretrain后引入多任务fine-tuning,则T5模式效果好(结论存疑:目前的实验Encoder-Decoder都是Decoder-only参数量的两倍,结论是否可靠?)

目前的研究结论(超大规模):
事实:几乎所有超过100B的LLM模型,都采取GPT模式

可能的原因:
1.Encoder-Decoder里的双向attention,损害zero shot能力(Check)
2.Encoder-Decoder结构在生成Token时,只能对Encoder高层做attentionDecoder-only结构在生成Token时,可以逐层Attention,信息更细粒度
3.Encoder-Decoder训练“中间填空”,生成最后单词Next Token,存在不一致性Decoder-only结构训练和生成方式一致

超大LLM的挑战与机遇

随着模型规模的增长,研究者面临着如何有效利用参数空间的挑战。Chinchilla模型的研究表明,在数据充足的情况下,当前的LLM规模可能比理想规模更大,存在参数空间的浪费,然而,Scaling Law也指出,模型规模越大,数据越多,训练越充分,LLM模型的效果越好。比较可行的思路是:先做小(GPT 3本来不应该这么大),再做大(充分利用模型参数后,继续做大)。
在这里插入图片描述

当然鉴于多模态LLM需要更丰富的现实环境感知能力,对此LLM参数也提出更高的要求。
多模态LLM:视觉输入(图片、视频)、听觉输入(音频)、触觉输入(压力)
在这里插入图片描述
面临问题:多模态LLM看着效果还不错,很大程度依赖于人工整理的大数据集

如 ALIGN:1.8B 图文/LAION:5.8B图文数据(经过CLIP过滤,目前最大图文数据)目前是文字带图像飞?

图像处理:自监督技术路线在尝试,尚未走通(对比学习/MAE)/如果能走通会是AI领域另外一次巨大技术突破;

如果能走通,目前的一些图像理解类任务(语义分割/识别等)估计会被融入LLM,进而消失

在这里插入图片描述

提升LLM的复杂推理能力

尽管当前的LLM具备一定的简单推理能力,但在复杂推理方面仍有不足。例如,多位数加法等任务对LLM来说仍然是一个挑战。研究者正在探索如何通过技术手段,如语义分解,将复杂推理能力蒸馏到更小的模型中。
在这里插入图片描述
当然也可以通过能力外包的形式绕过这个问题,如与工具结合:计算能力(外部计算器)、新信息查询(搜索引擎)等能力借助外部工具完成。
在这里插入图片描述

LLM与物理世界的交互

具身智能的概念将LLM与机器人技术结合起来,通过与物理世界的交互,利用强化学习获得具身智能。例如,Google的PaLM-E模型结合了540B的PaLM和22B的ViT,展示了LLM在多模态环境下的潜力。
在这里插入图片描述
在这里插入图片描述

其他研究方向

  1. 新知识的获取:目前有一定困难,也有一些手段(LLM+Retrieval)
  2. 旧知识的修正:目前有一些研究成果,尚需优化
  3. 私域领域知识的融入:Fine-tune?
  4. 更好的理解命令:尚需优化(一本正经的胡说八道)
  5. 训练推理成本的降低:未来一年到两年会快速发展
  6. 中文评测数据集的构建:能力试金石。英文目前有一些评测集,比如HELM/BigBench等,中文缺乏/多任务、高难度、多角度的评测数据集。

结语

本文深入探讨了LLM的发展历程、技术路线以及它们对未来AI领域的影响。LLM的发展不仅仅是技术的进步,更是我们对机器理解能力的一次深刻反思。从规则到统计,再到深度学习和预训练,每一步都为我们提供了新的视角和工具。如今,我们站在大型语言模型的新时代门槛上,面对着前所未有的机遇和挑战。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Unity扩展 Text支持超链接文本

重点提示:当前的文本扩展支持多个超链接,支持修改超链接规则和支持修改超链接颜色。 近期在邮件文本中用到了超链接。最初是在邮件窗口中新加一个按钮用来超链接跳转,之后发现效果表现不如直接在文本中添加,后经过几个小时的资料…

STM32中的DMA:解锁高效数据传输的秘密武器(内附实例)

目录 引言 理解DMA:数据的高效搬运工 DMA的主要特性 多优先级请求 事件标志 数据对齐 多样化的数据传输路径 广泛的数据源与目标 最大数据长度 DMA寄存器详解 增量与循环模式 DMA中断机制 ​编辑 小实验:DMA-ADC串口发送 引言 在现代嵌入…

SpringCloudAlibaba基础五 Nacos配置中心

一 Nacos配置中心介绍 官方文档:https://github.com/alibaba/spring-cloud-alibaba/wiki/Nacos-config Nacos 提供用于存储配置和其他元数据的 key/value 存储,为分布式系统中的外部化配置提供服务器端和客户端支持。使用 Spring Cloud Alibaba Nacos C…

集成sa-token前后端分离部署配置corsFliter解决跨域失效的真正原因

文章目录 1.前言2.问题复现3.解决方法3.1 方式一:后端修改CorsFilter源码3.2 方式二:前端禁用或移除浏览器referrer-policy引用者策略 4.总结 1.前言 缘由请参看下面这篇文章:sa-token前后端分离解决跨域的正确姿势 https://mp.weixin.qq.co…

气象观测站应该怎么选?

在气候变化日益严峻的今天,气象观测站的重要性不言而喻。它们不仅为气象部门提供宝贵的数据支持,还直接关系到农业生产、交通运输、城市规划等多个领域的决策。 在选择气象观测站时,首先要明确自己的功能需求。例如,是用于学术研究…

每日一练全新考试模式解锁|考试升级

🙋频繁有小伙伴咨询:我想举办一场历时一个月的答题活动,学生可以每天打开答题,活动完结后可以导出每天的答题成绩 此前我们都会让小伙伴创建30场考试,然后使用批量分享功能组合起来,对外分享一个链接就可以…

类与对象2 3 十十一 杂烩

目录 组合类 作用域 static friend 常对象常成员函数 常引用 对象指针(指向对象) string 组合类 类的组合/聚合:将已有的类的对象作为新的类的成员。 组合类初始化:内嵌对象成员初始化 普通数据成员初始化。 类必须先…

24下软考《系统规划与管理师》,一个超好背的核心知识点几页纸!

距离下半年软考考试的时间越来越近了,想要备考《系统规划与管理师》的小伙伴们趁着这两周赶紧准备起来,虽说系规相对较好考,但作为高级科目,它要记得东西还是不少的。 今天给大家整理了——系统规划与管理师考前几页纸&#xff0c…

C++语言相关的常见面试题目(二)

1.vector底层实现原理 以下是 std::vector 的一般底层实现原理: 内存分配:当创建一个 std::vector 对象时,会分配一块初始大小的连续内存空间来存储元素。这个大小通常会随着 push_back() 操作而动态增加。 容量和大小:std::vec…

多卡(3090)部署通义千问Qwen2-72B大模型并加速至38tps:vLLM库的使用和错误排查

前一篇文章做了Qwen1的加速,其中关于Auto-GPTQ的安装问题在Qwen2中依然适用。但是Qwen2比Qwen1加载模型快了很多,笔者也不知道为什么。 下面是Hugging Face transformer版的千问2,token生成速度在15个每秒左右,但还不够快&#x…

Spring——IOC创建对象方式

可参考官网:https://docs.spring.io/spring-framework/reference/core/beans/dependencies/factory-collaborators.htmlhttps://docs.spring.io/spring-framework/reference/core/beans/dependencies/factory-collaborators.html 1. 使用无参构造创建对象&#xff0…

Unity--射线检测--RayCast

Unity–射线检测–RayCast 1.射线检测的含义 射线检测,根据名称而言,使用一条射线来检测是击中了某个物体/多个物体 射线检测的包含两个部分: 射线和检测 2.射线检测可以用在哪些地方 射击游戏: 玩家的瞄准和射击:检测玩家视线是否与敌人或其他目标…

初识c++(命名空间,缺省参数,函数重载)

一、命名空间 1、namespace的意义 在C/C中,变量、函数和后面要学到的类都是大量存在的,这些变量、函数和类的名称将都存在于全 局作用域中,可能会导致很多冲突。使用命名空间的目的是对标识符的名称进行本地化,以避免命名 冲突…

ubuntu24.04按关键字卸载不需要的apt包

使用的时候发现一个imagemagic无法正常读取文件,试图卸载 man apt经过尝试后,发现list的一个神奇关键字,用来显示已安装的软件包 sudo apt list --installed | grep image按image关键字过滤: 之后按软件名卸载即可 sudo apt pu…

数学建模论文写作文档word

目录 1. 摘要写法1.1 确定题目与方法1.2 编写开头段落1.3 填写问题一1.4 重复步骤3填写其他问题1.5 编写结尾段落1.6 编写关键词 2. 问题重述2.1 问题背景2.2 问题提出 3. 问题分析4. 问题X模型的建立与求解5. 模型的分析5.1 灵敏度分析5.2 误差分析(主要用于预测类…

DAY2:插件学习

文章目录 插件学习ClangGoogle TestCMakeDoxygen 收获 插件学习 Clang 是什么:Clang 是指 LLVM 项目的编译器的前端部分,支持对 C 家族语言(C、C、Objective-C)的编译。Clang 的功能包括:词法分析、语法分析、语义分析、生成中间中间代码 L…

浅析C++引用

浅析C引用"&" ​ C中引入了一个新的语言特性——引用(&),它表示某一对象的别名,对象与该对象的引用都是指向统一地址。那么我们就来看看关于引用的一些知识点吧🧐 特性 引用在定义时必须初始化一个变量可以有多个引用引…

C-10 凸包

凸包 数学定义 平面的一个子集S被称为是凸的,当且仅当对于任意两点A,B属于S,线段PS都完全属于S过于基础就不详细介绍了 凸包的计算 github上找到了别人的代码,用4种方式实现了凸包的计算,把他放在这里链接地址htt…

六、数据可视化—Wordcloud词云(爬虫及数据可视化)

六、数据可视化—Wordcloud词云(爬虫及数据可视化) 也是一个应用程序 http://amueller.github.io/word_cloud/ Wordcloud词云,在一些知乎,论坛等有这样一些东西,要么做封面,要么做讲解,进行分析…

Echarts 实现数据可视化

Echarts 简介 Echarts 是一个开源的、免费的、成熟的、商业级图表可视化框架,是 Apache 开源社区的顶级项目之一,也是国内使用最多和最为广泛的可视化图表框架之一。 数据可视化图表框架并没有一个统一的行业标准,比较常见的有 D3、Highchart…