阅读笔记|A Survey of Large Language Models

阅读笔记

模型选择:是否一定要选择参数量巨大的模型?如果需要更好的泛化能力,用于处理非单一的任务,例如对话,则可用选更大的模型;而对于单一明确的任务,则不一定越大越好,参数小一些的模型也能调教得很好。

接口交互:大语言模型可以使用网络请求接口获取其本身在预训练中没有的额外信息。

多模态:大语言模型展现出良好的多模态理解能力,特别是对于图片数据的处理能力。因此其对于一个网络中拓扑结构、流量矩阵等数据也是存在了可以理解和处理的可能的。

语言如何输入:自然语言首先需要被tokenize,从而将其用数字进行表示,使其可以正式输入模型。在输入模型后,还会进行词嵌入表示(或者是词的分布式表示),也就是进一步用多维向量表示一个词。词嵌入并非Transformer首创,此前的工作中已经在广泛使用词嵌入方法了,大名鼎鼎的Word2Vec就是其中一种。

“预训练和微调”学习范式:预训练是从CV兴起而后借鉴到NLP的一种训练方法,通常是无监督的。对于PLM,通常使用大量语料进行预训练,其过程无需人工标记,而是利用已有的词句信息对某一词进行预测。微调是指在PLM的基础上,进一步根据下游子任务的要求,对PLM进行更具针对性的有监督训练(包括对齐)并更新参数,使其适应子任务。微调主要分为指令微调和对齐微调。对于一些领域的子任务,PLM甚至无需微调也能依靠自身的上下文学习能力达到不错的效果。

与人类对齐:由于预训练数据不可避免参杂与主流价值观不符的内容,模型需要与人类价值观或偏好进行对齐,以减少危害并增加性能。相关工作利用带人类反馈的强化学习(RLHF)进行微调对齐。

扩展与扩展法则:语言模型在模型规模、数据规模和总计算量上的扩展,一般会使模型具备更好的特性与理解输出能力,并更可能涌现能力(包括上下文学习、指令遵循、逐步推理等)。LLMs由于规模扩展而产生的影响的现象成为扩展效应,有相关研究定量描述了LLMs的扩展法则。

代码数据训练提高CoT提示能力:Codex是在PLM基础上使用大量Github代码微调的GPT模型,可以解决困难的编程问题并在数学问题上有显著性能提升,猜测称代码训练可提高其思维链(CoT)提示能力。

LLMs资源:LLMs的预训练需要耗费大量资源(微调更新权重也很消耗),建议在已有开源资源基础上进行开发,包括开源模型和公共API(可微调),以及公开语料库,详细信息下面四张图总结得很好。

图片1.png

图片2.png

图片3.png
图片4.png

模型训练:预训练阶段的任务通常有语言建模和去噪自编码,语言建模任务针对不同模型结构(因果解码器casual decoder、前缀解码器prefix decoder等)有不同任务变体。此外,训练LLM时最为重要的便是设置和技巧。

  • 训练中动态增大batch size以有效稳定LLM训练过程

  • 动态学习率策略如初始采用线性增加预热策略,后续采用余弦衰减策略

  • 使用权重衰减和梯度裁剪来稳定训练,避免模型崩溃。

  • 采用数据并行、流水线并行、张量并行、ZeRO和混合精度训练等方法在有限资源情况下进行高效的并行化训练。

RLHF用于微调:在有监督微调结束后,可以应用基于人类反馈的强化学习来进行对齐微调,更好地学习人类偏好。其中较为关键的我认为有两方面,一方面是奖励模型,相关工作使用有标注数据有监督地训练一个奖励模型预测人类偏好;另一方面是将LLM的微调形式化为强化学习问题。

LLM使用:经过预训练或微调后,模型的使用也别有学问,OpenAI的报告中大量做了这方面的文章。较为著名的使用策略有上下文学习和思维链提示。

LLM评估:主流的评估方法是在公共NLP任务数据集上进行测试评估。而专用于网络配置或是其他类似子任务的公共数据集暂时没有看到。因此这方面的评估需要进一步的设计和探讨。

LLM主要问题:在语言生成方面,其可控生成和专业化生成能力仍然面临挑战,例如在一般类型数据集训练的LM用于涉及专业知识的医学报告时。在知识利用方面,LM存在幻觉和知识实时性问题。前者表示LM会捏造事实,后者表示LM难以处理需要更新鲜知识的任务。在复杂推理方面,LM存在不一致性和数值计算问题。前者表示LM的推理路径与结果并不一致,后者表示LM的数值计算能力仍然有待提高。

个人感想

  • 此篇论文很好地揭示了LLM在结构、预训练、微调、评估等等诸多方面的细节。但由于技术日新月异,比较遗憾地是没有看到更新的关于多模态方面的介绍。
  • LLM的训练与微调有资源门槛,但有公开的模型可通过API进行微调,这一点可以考虑加以利用。

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

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

相关文章

L1-015:跟奥巴马一起画方块

题目描述 美国总统奥巴马不仅呼吁所有人都学习编程,甚至以身作则编写代码,成为美国历史上首位编写计算机代码的总统。2014年底,为庆祝“计算机科学教育周”正式启动,奥巴马编写了很简单的计算机代码:在屏幕上画一个正方…

[GPT-1]论文实现:Improving Language Understanding by Generative Pre-Training

Efficient Graph-Based Image Segmentation 一、完整代码二、论文解读2.1 GPT架构2.2 GPT的训练方式Unsupervised pre_trainingSupervised fine_training 三、过程实现3.1 导包3.2 数据处理3.3 模型构建3.4 模型配置 四、整体总结 论文:Improving Language Understa…

前端笔记(一):HTML5 入门学习

前言: 在完成 Java 的 SpringBoot 学习并练习了几个项目后,出于对编程的兴趣和没有组织的局限性,为了开发一些个人的小项目,我将开始前端部分的学习,预计会学到 Vue 框架,同时会把自己的学习笔记发布成博客…

WPF实现文字纵向排布的TabItem

文章目录 基本用法文字竖排显示 WPF布局 基本用法 WPF中的TabControl是一个容器控件,用于在单个窗体或页面中承载多个选项卡。每个选项卡可以包含不同的控件,用于显示不同的内容,其最简单的调用方法如下,只需在TabControl中无脑…

Qt Creator 11.0.3同时使用Qt6.5和Qt5.14.2

Qt Creator 11.0.3同时使用Qt6.5和Qt5.14.2 概要方法1.打开Qt Creator中的Kit,这里我直接附上几张截图,不同的版本打开位置可能有所不同,总之最终目的是要打开构建套件(Kit)2.可以看到构建套件里面有包含了“构建套件K…

Java基础-----Date类及其相关类(一)

文章目录 1. Date类1.1 简介1.2 构造方法1.3 主要方法 2. DateFormat 类2.1 简介2.2 实例化方式一:通过静态方法的调用2.2 实例化方式二:通过创建子类对象 3. Calendar类4. GregorianCalendar 1. Date类 1.1 简介 java.util.Date:表示指定的时间信息&a…

Structured Streaming: Apache Spark的流处理引擎

欢迎来到我们的技术博客!今天,我们要探讨的主题是Apache Spark的一个核心组件——Structured Streaming。作为一个可扩展且容错的流处理引擎,Structured Streaming使得处理实时数据流变得更加高效和简便。 什么是Structured Streaming&#…

高端大气简历模板(精选8篇)

想要让简历在众多求职者中脱颖而出,吸引HR的眼球吗,可以看看这8篇精选的高端大气简历模板!本文为大家提供了多种行业、职位的简历案例,助大家打造一份令人惊艳的简历,轻松斩获心仪职位! 高端大气简历模板下…

【Vulnhub 靶场】【HackathonCTF: 2】【简单】【20210620】

1、环境介绍 靶场介绍:https://www.vulnhub.com/entry/hackathonctf-2,714/ 靶场下载:https://download.vulnhub.com/hackathonctf/Hackathon2.zip 靶场难度:简单 发布日期:2021年06月20日 文件大小:2.6 GB 靶场作者&…

Opencv拖动条控制均值滤波卷积核大小,拖动条控制是否保存(涉及知识点:cv2.createTrackbar和cv2.getTrackbarPos的使用)

带拖动条的均值滤波import timeimport cv2 import numpy as npdef callback(int):passcv2.namedWindow(dst,cv2.WINDOW_AUTOSIZE)# 创建trackbar (trackbarname,winname,value,count,callback,userdata) cv2.createTrackbar(ksize, dst, 3, 30, callback) cv2.createTrackbar(s…

基于Amazon Bedrock的企业级生成式AI平台

基于Amazon Bedrock的企业级生成式AI平台 2023.12.2版权声明:本文为博主chszs的原创文章,未经博主允许不得转载。 Amazon Bedrock 是一项新的 AWS 服务,可让企业通过 API 轻松利用和自定义生成式 AI 模型。公司现在可以构建和扩展人工智能应…

Kubernetes学习笔记-Part.09 K8s集群构建

目录 Part.01 Kubernets与docker Part.02 Docker版本 Part.03 Kubernetes原理 Part.04 资源规划 Part.05 基础环境准备 Part.06 Docker安装 Part.07 Harbor搭建 Part.08 K8s环境安装 Part.09 K8s集群构建 Part.10 容器回退 第九章 K8s集群构建 9.1.集群初始化 集群初始化是首…

vue项目node-sass^4.14.1 python gyp 报错解决办法

npm i node-sass4.14.1 --sass_binary_sitehttps://npm.taobao.org/mirrors/node-sass/参考链接:链接

主要分布式文件系统架构对比分析:GFS vs. Tectonic vs. JuiceFS

随着技术的进步和数据的不断爆炸,传统的磁盘文件系统已经暴露出它们的局限性。为了满足不断增长的存储需求,分布式文件系统作为动态且可扩展的解决方案应运而生。在本文中,我们探讨了三种代表性分布式文件系统的设计原则、创新和解决的挑战&a…

网站有必要使用SSL证书吗

随着互联网的快速发展,网络安全问题也变得日益突出,SSL证书的作用日益凸显。 什么是SSL证书? SSL证书(Secure Sockets Layer Certificate),也称为TLS证书(Transport Layer Security Certifica…

基于springboot,vue高校图书馆管理系统

开发工具:IDEA 服务器:Tomcat9.0, jdk1.8 项目构建:maven 数据库:mysql5.7 系统分前后台,项目采用前后端分离 前端技术:vueelementUI 服务端技术:springbootmybatisredis 本项…

工业机器视觉megauging(向光有光)使用说明书(十二,轻量级的visionpro)

关于最后一个工具的介绍:就是这个“相机图像” 我们可以鼠标双击点进去看一看: 在图像上点击,就可以截取一块图像,是可以放大缩小的,这个放大很low,是我以前研究缩放入门时的版本,本想删除&…

文章解读与仿真程序复现思路——电网技术EI\CSCD\北大核心《基于多场景模糊集和改进二阶锥方法的配电网优化调度》

这个标题涉及到配电网(Distribution Network)的优化调度问题,其中使用了两个关键的方法:多场景模糊集和改进二阶锥方法。 多场景模糊集: 多场景: 这可能指的是在考虑不同情景或条件下的配电网运行状态。每个…

[UnityWebGL]修改webgl启动模板

首先了解什么是WEBGGL启动模板,如下图: 其次,启动模板在哪里设置,如下图: 最后,怎么改启动模板里面的内容(提供最简单的方式,直接改官方的): 1、首先在Asset…

<DB2>《AIX服务器DB2数据库裸设备表空间扩容方案》

《AIX服务器DB2数据库裸设备表空间扩容方案》 1 表空间状态查看1.1 连接数据库(实例用户操作)1.2 查看表空间剩余(实例用户操作)1.3 查看所属表空间的容器属性(实例用户操作) 2 VG状态和LV状态查看2.1 查看…