大语言模型研究进展综述

1、历史

       自20世纪50年代图灵测试被提出以来,研究人员一直在探索和开发能够理解并掌握语言的人工智能技术。

      作为重要的研究方向之一,语言模型得到了学术界的广泛研究,从早期的统计语言模型和神经语言模型开始,发展到基于Transformer的预训练语言模型。

2、现状

       近年来,研究者们发现通过扩大预训练语言模型的参数量和数据量,大语言模型(Large Language Model)能够在效果显著提升的同时,展示出许多小模型不具备的特殊能力(如上下文学习能力、逐步推理能力等)。

       最近,作为代表性的大语言模型应用ChatGPT展现出了超强的人机对话能力任务求解能力,对于整个AI研究社区带来了重大影响。

3、鸟瞰

       3.1 大语言模型的定义

       通常来说,大语言模型指的是那些在大规模文本语料上训练、包含百亿级别(或更多)参数的语言模型,例如GPT-3,PaLM,LLaMA等。

       3.2  大语言模型与小模型的区别

       目前的大语言模型采用与小模型类似的Transformer架构和预训练目标(如 Language Modeling),与小模型的主要区别在于增加模型大小、训练数据和计算资源。

        3.3 大语言模型具备“涌现能力

       大语言模型的表现往往遵循扩展法则,但是对于某些能力,只有当语言模型规模达到某一程度才会显现,这些能力被称为“涌现能力”,代表性的涌现能力包括上下文学习、指令遵循、逐步推理等。

         3.4 大语言模型取得成功的原因

        目前,大语言模型取得如此巨大的成就,我们总结了五方面原因:

               1)模型、数据和计算资源的扩展;

               2)高效稳定的训练手段;

               3)语言模型能力诱导;

               4)对齐训练,将大语言模型与人类偏好对齐;

               5)工具使用(潜在发展方向)。

4、相关资源

图1 大语言模型发展时间线

       4.1 开发大语言模型的公开可用资源

        为了帮助大家速览大规模语言模型的发展进程,概要了解模型的训练需求以及总结有助于训练的可用资源。我们简要总结了可以用于开发大语言模型的公开可用资源,包括模型检查点(model checkpoint)或公开接口(API),训练语料库以及代码库。

        4.2  检查点的模型(model checkpoint)

       对于公开检查点的模型,我们根据模型参数量分成两大类,分别是百亿(10B)参数到千亿(100B)参数模型和大于千亿(100B)参数模型。在每一部分介绍时,我们根据模型的预训练语料、任务,或者评测给出研究不同能力时的推荐模型,并且根据模型原论文罗列了预训练硬件配置。

        4.3  公开接口(API)

        对于公开接口,我们重点介绍了OpenAI的GPT系列接口,包括GPT-3系列到当前的GPT-4系列,并简要介绍了部分接口之间的关系。

        4.4  训练语料库

        对于训练语料库,我们简要总结了一列常用于训练大语言模型的公开数据集。我们按照内容将这些数据集分成了六类:书籍类、CommonCrawl类、Reddit link类、维基百科类、代码类和其他。每一类我们都介绍了数据集的内容、大小以及被用于训练的模型。

        4.5  代码库

        对于代码库,我们搜集了一些用于训练的代码库,包括常用模型库和并行算法库。

        项目访问地址:https://github.com/RUCAIBox/LLMSurvey

5、预训练技术

        预训练是大语言模型能力的基础。当语言模型的参数量扩展到超千亿级别时,从头预训练一个大语言模型就成为一件十分困难且有挑战的事情。

(1)在数据层面,如何收集尽可能多的高质量语料对预训练模型的效果十分关键。本章从预训练语料的收集出发,主要探讨了数据的多种来源(如对话、代码等)和预处理(清洗与编码),并分析了预训练数据数量、质量、多样性等方面对模型效果的影响。

(2)在模型层面,最引人关注的问题之一即是,为什么大语言模型往往采用 Decoder-Only 架构?本文从 Transformer 做语言模型的主干架构、具体模块和预训练任务三方面向读者们介绍如今大模型的常用方案,并在最后结合文献讨论大家选用 Decoder-Only 架构的原因。

(3)在训练层面,大参数量的模型非常难以优化。研究人员付出众多努力,提出了若干增加训练稳定性,及提升训练效率的方案。本章对 3D 并行、ZeRO 等被集成于 DeepSpeed 等代码库的相关训练技术进行归纳整理,并在最后对如何稳定、高效地预训练一个大语言模型给出建议。

6、微调技术

       预训练之后,“适配微调”(adaptation tuning)可以进一步增强大语言模型能力并满足人类偏好。本章主要介绍了两种适配微调技术:指令微调与对齐微调。

图2 指令格式实例示意图

      指令微调通过收集指令格式的实例(图2)来微调大模型,大大增强了模型遵循人类指令的能力,能够让模型更好地泛化到未知任务。我们展示了两种收集指令格式实例的方法,并讨论了任务数量、实例数量、实例设计等因素对指令微调效果的影响;同时,我们也总结了指令微调过程中常见的数据集合和训练细节,方便研究者训练自己的模型。

图3 基于人类反馈的强化学习工作流程

       对齐微调通过收集人类反馈数据,利用强化学习进一步微调大模型,使模型与人类对齐,更加符合人类的偏好。我们首先讨论了三种常见的对齐标准:有用性、诚实性和无害性,接着展示了三种人类反馈收集方式,最后介绍了基于人类反馈的强化学习流程(图3)。

7、使用技术

图4 两种使用技术上下文学习(ICL)和思维链提示(CoT)的对比

       本章介绍了大模型完成训练之后的使用方法。其中的代表性技术是上下文学习,它以自然语言文本的形式给大模型提供任务描述和/或任务示例。我们重点总结了如何设计有效的任务示例来增强大模型通过上下文学习完成下游任务的效果,包括示例的选择、格式以及顺序。我们还从预训练和推理两个阶段讨论了大模型上下文学习能力的来源。

        此外,思维链提示也受到广泛关注,它的做法是在提示中添加中间推理步骤来增强大模型在推理任务上的性能。根据提示中是否存在样例,思维链提示的使用场景可以分为少样本和零样本两种情况。我们还讨论了思维链提示的适用场景以及大模型思维链推理能力的来源。

8、评估

为了评估大语言模型的有效性和优越性,研究者在大量任务和评测基准上进行了评测与分析。我们从三个角度总结梳理了大语言模型的相关能力评估。

对于大模型的基础评测,我们主要关注了三类任务,包括语言生成任务知识利用任务复杂推理任务。总体来看,大语言模型在各类基础任务中取得了令人瞩目的效果。但与此同时,大语言模型在一些方面也存在亟待解决的问题,包括可控性、幻觉、知识实时性、一致性等等。

除了上述基础任务外,大模型还表现出了很多高级能力。我们着重讨论了人类对齐、外界环境交互、工具操作三大类高级能力及其对应的评估方法。这三种能力极大地丰富了语言模型的应用场景,使得语言模型能做出符合人类价值观和偏好的行为,对现实世界产生作用,以及利用工具扩展能力边界。

接下来,我们介绍了面向大语言模型的现有综合评测基准以及相关实证分析。研究者提出了许多综合评测基准,用于全面的评测和比较大语言模型。同时,另一大类工作着重于对大语言模型通用能力以及专业领域应用能力的分析。

9、总结

该综述文章系统回顾了大语言模型的最新进展,介绍了重要概念与相关技术,最后总结了大语言模型的若干挑战与未来研究方向:

(1)大模型相关的理论和本质

(2)更优的模型架构;

(3)更有效的训练方法;

(4)更高效的使用策略;

(5)安全性与一致性;

(6)应用与生态。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

1、Sentinel基本应用限流规则(1)

Sentinel基本应用&限流规则 1.1 概述与作用 随着微服务的流行,服务和服务之间的稳定性变得越来越重要。缓存、降级和限流是保护微服务系统运行稳定性的三大利器。 缓存:提升系统访问速度和增大系统能处理的容量 降级:当服务出问题或者影…

osgEarth之添加shp

目录 效果 代码 代码分析 加载模式 效果 代码 #include "stdafx.h" #include <osg/Notify> #include <osgGA/StateSetManipulator> #include <osgViewer/Viewer> #include <osgViewer/ViewerEventHandlers>#include <osgEarth/MapNo…

IP-guard WebServer 远程命令执行漏洞

IP-guard WebServer 远程命令执行漏洞 免责声明漏洞描述漏洞影响漏洞危害网络测绘Fofa: app="ip-guard"漏洞复现1. 构造poc2. 访问文件3. 执行命令免责声明 仅用于技术交流,目的是向相关安全人员展示漏洞利用方式,以便更好地提高网络安全意识和技术水平。 任何人不得…

高速信号PCB布局怎么布?(电子硬件)

对于高速信号&#xff0c;pcb的设计要求会更多&#xff0c;因为高速信号很容易收到其他外在因素的干扰&#xff0c;导致实际设计出来的东西和原本预期的效果相差很多。 所以在高速信号pcb设计中&#xff0c;需要提前考虑好整体的布局布线&#xff0c;良好的布局可以很好的决定布…

AI:67-基于深度学习的脱机手写汉字识别

🚀 本文选自专栏:AI领域专栏 从基础到实践,深入了解算法、案例和最新趋势。无论你是初学者还是经验丰富的数据科学家,通过案例和项目实践,掌握核心概念和实用技能。每篇案例都包含代码实例,详细讲解供大家学习。 📌📌📌在这个漫长的过程,中途遇到了不少问题,但是…

Django(二、静态文件的配置、链接数据库MySQL)

文章目录 一、静态文件及相关配置1.以登录功能为例2.静态文件3.资源访问4.静态文件资源访问如何解决&#xff1f; 二、静态文件相关配置1. 如何配置静态文件配置&#xff1f;2.接口前缀3. 接口前缀动态匹配4. form表单请求方法补充form表单要注意的点 三、request对象方法reque…

阿里云 :推出通义大模型编码助手产品【通义灵码】

本心、输入输出、结果 文章目录 阿里云 &#xff1a;推出通义大模型编码助手产品【通义灵码】前言通义灵码简介主要功能主要功能点 支持的语言和 IDEjetbrains IDEA 安装计费相关弘扬爱国精神 阿里云 &#xff1a;推出通义大模型编码助手产品【通义灵码】 编辑&#xff1a;简简…

SOLIDWORKS --电磁仿真篇

什么是 SIMULIA? 基于3DEXPERIENCE平台的品牌 多学科多领域的协同仿真与分析优化 三大核心仿真领域 结构仿真 流体仿真 SIMULIA电磁仿真是什么? 完备的求解技术&#xff0c;支持从静场、低频到高频、光波的电磁仿真&#xff0c;支持全波仿真、混合仿真、多物理场仿真和场路…

任务管理器的正确使用教程

快捷键 Ctrlshiftesc&#xff1a;进入任务管理器 我以Win11举例 如何给XX排序 给XX排序&#xff0c;点击空白处可以选择某项降序排列&#xff08;可以找到最占用某项资料的程序&#xff09;&#xff0c;再点击空白处可以选择某项升序排列 文件正在使用&#xff0c;如何解决 …

台式电脑怎么无损备份迁移系统到新硬盘(使用傲梅,免费的就可以)

文章目录 前言一、想要将源硬盘上的系统原封不动地迁移到新硬盘上二、准备工作2.具体步骤 总结 前言 半路接手公司一台台式电脑&#xff0c;C盘&#xff08;120g&#xff09;爆红&#xff0c;仅剩几个G&#xff0c;优化了几次&#xff0c;无果后。准备换一个大一点的增到500g。…

Python实现从Labelme数据集中挑选出含有指定类别的数据集

Python实现从Labelme数据集中挑选出含有指定类别的数据集 前言前提条件相关介绍实验环境Labelme数据集中挑选出含有指定类别的数据集代码实现输出结果 前言 由于本人水平有限&#xff0c;难免出现错漏&#xff0c;敬请批评改正。更多精彩内容&#xff0c;可点击进入Python日常小…

【STM32 开发】| INA219采集电压、电流值

目录 前言1 原理图2 IIC地址说明3 寄存器地址说明4 开始工作前配置5 程序代码1&#xff09;驱动程序2&#xff09;头文件3) 测试代码 前言 INA219 是一款具备 I2C 或 SMBUS 兼容接口的分流器和功率监测计。该器件监测分流器电压降和总线电源电压&#xff0c;转换次数和滤波选项…

算法打卡01——求两数之和

题目&#xff1a; 给定一个整数数组 nums 和一个整数目标值 target&#xff0c;请你在该数组中找出 和为目标值 target 的那 两个 整数&#xff0c;并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是&#xff0c;数组中同一个元素在答案里不能重复出现。 你…

Python进行数据可视化,探索和发现数据中的模式和趋势。

文章目录 前言第一步&#xff1a;导入必要的库第二步&#xff1a;加载数据第三步&#xff1a;创建基本图表第四步&#xff1a;添加更多细节第五步&#xff1a;使用Seaborn库创建更复杂的图表关于Python技术储备一、Python所有方向的学习路线二、Python基础学习视频三、精品Pyth…

2023年度API安全状况详解

随着云计算和移动应用的快速发展&#xff0c;API&#xff08;应用程序接口&#xff09;已成为不可或缺的技术组成部分。然而&#xff0c;API的广泛使用也带来了安全风险。本文将探讨2023年的API安全状况&#xff0c;并介绍了一些应对这些安全挑战的最佳实践。 引言 随着全球互联…

【Leetcode】【每日一题】【简单】2609. 最长平衡子字符串

力扣&#xff08;LeetCode&#xff09;官网 - 全球极客挚爱的技术成长平台备战技术面试&#xff1f;力扣提供海量技术面试资源&#xff0c;帮助你高效提升编程技能&#xff0c;轻松拿下世界 IT 名企 Dream Offer。https://leetcode.cn/problems/find-the-longest-balanced-subs…

在linux安装单机版hadoop-3.3.6

一、下载hadoop https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/core/hadoop-3.3.6/ 二、配置环境变量 1、配置java环境变量 2、配置hadoop环境变量 export HADOOP_HOME/usr/local/bigdata/hadoop-3.3.6 export HBASE_HOME/usr/local/bigdata/hbase-2.5.6 export JA…

C# 继承,抽象,接口,泛型约束,扩展方法

文章目录 前言模拟需求场景模拟重复性高的需求初始类结构继承优化抽象类 需求1&#xff1a;打印CreateTime方法1&#xff1a;使用重载方法2&#xff1a;基类函数方法3&#xff1a;泛型约束方法3.1&#xff1a;普通泛型方法方法3.2&#xff1a;高级泛型约束&#xff0c;扩展方法…

阿里云双11大促,WoSign SSL国密RSA双证书首购4折优惠

阿里云2023双11“金秋云创季”活动盛大开启&#xff01;2023年11月01日至11月31日&#xff0c;阿里云平台WoSign SSL证书“国密/RSA 双证书解决方案”首购4折优惠&#xff01;惊喜折扣、限时福利&#xff0c;机会不容错过&#xff01; 作为阿里云一年一度最盛大的优惠促销活动&…

RAID卡管理工具使用

RAID 基本概念 由于现代数据中心业务量的与日俱增&#xff0c;单台服务器上需要运行的数据也日益增多。当 单个物理磁盘在容量和安全性上不足以支持系统业务时&#xff0c;就需要将多个磁盘以某种特 定方式组合起来&#xff0c;对外作为一个可见的磁盘来使用&#xff0c;才可…