阅读笔记|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进行微调,这一点可以考虑加以利用。

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

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

相关文章

Python简单模拟蓝牙车钥匙协议

本文设计一个简单的蓝牙车钥匙协议,协议包含DH密钥协商和基于RSA的身份认证功能,以及防重放与消息完整性验证。 1. 密钥协商过程: - 设定 DH 参数:素数 p 和生成元 g。 - 发送方(Alice)生成 DH 的私钥 a 并计算公钥 A…

.sketch的文件转.psd文件

我们不能直接把sketch 转成 psd格式,但是还是有迂回办法的!一起跟随我来看看吧 第一步: 在即时设计官网首页「文件导入」的下拉菜单里,选择「Sketch 文件导入」,然后将需要转换的 Sketch 文件导入,接着直接…

web前端之vue3

MENU vue3响应式数据的判断、isRef、isReactive、isReadonly、isProxy、ref、reactive、readonlyvue3的生命周期vue3手写isRef、isReactive、isReadonly、isProxyvue3手写ref、深的refvue3手写shallowRef、浅的refvue3customRefvue3readonly与shallowReadonlyvue3toRaw与markRa…

BearPi Std 板从入门到放弃 - 1 引气入体篇

安装相关开发工具 Keil MDK 工具下载 略, 自行体会 Keil 芯片支持包下载 Keil 包 网址 https://www.keil.com/pack 此处下载的是STM32L4xx的支持包 https://www.keil.com/pack/Keil.STM32L4xx_DFP.2.6.2.pack STM32CubeMX 下载与包下载 i. 下载(需要使用用户&…

DouyinAPI接口系列丨Douyin商品详情数据接口丨Douyin视频详情数据接口

抖音商品详情API是抖音开放平台提供的一套API接口,用于获取商品详情信息。通过该API,开发者可以获取到商品的详细信息,包括商品ID、名称、描述、价格、销量、评价等信息。 在使用抖音商品详情API之前,需要先注册并登录抖音开放平…

fl studio21.2最新汉化中文完整版网盘下载

fl studio 21中文版是Image-Line公司继20版本之后更新的水果音乐制作软件,很多用户不太理解,为什么新版本不叫fl studio 21或fl studio2024,非得直接跳到21.2版本,其实该版本是为了纪念该公司22周年,所以该版本也是推出…

系统监控:使用日志文件 journalctl的使用

journalctl 显示最近登录的: 上面有最近登录的时间,和系统操作 几十年来,Linux日志记录一直由syslogd守护进程管理。Syslogd将收集系统处理和应用程序发送到/dev/log伪设备的日志消息。然后,它会将消息定向到/var/log/目录中适当…

MacDroid Pro for Mac – 安卓设备文件传输助手,实现无缝连接与传输!

想要在Mac电脑上轻松管理和传输您的安卓设备文件吗?MacDroid Pro for Mac 是您的最佳选择!这款强大的文件传输助手可以让您在Mac上与安卓设备之间实现快速、方便的文件传输。 MacDroid Pro for Mac 提供了简单易用的界面,让您能够直接在Mac上…

人工智能和网络安全:坏与好

人工智能似乎可以并且已经被用来帮助网络犯罪和网络攻击的各个方面。 人工智能可以用来令人信服地模仿真人的声音。人工智能工具可以帮助诈骗者制作更好、语法正确的网络钓鱼消息(而糟糕的语法往往会暴露出漏洞),并将其翻译成多种语言&…

字符函数 和 字符串函数

今天我打算介绍一些字符函数和字符串函数,有一些字符串函数我实现了模拟,但文章中没有放出来,如果需要的欢迎来到我的gitee里面拿取(在test.c11-23里面) 这是我的gitee:小汐 (lhysxx) - Gitee.com 字符函数 1. islow…

matlab操作方法(一)——向量及其操作

1.向量及其操作 matlab是英文Matrix Laboratory(矩阵实验室)的简称,是基于矩阵运算的操作环境。matlab中的所有数据都是以矩阵或多维数组的形式存储的。向量和标量是矩阵的两种特殊形式 向量是指单行或者单列的矩阵,它是构成矩阵…

C语言易错知识点八(结构体)

结构体 世间万物,上至飞禽,下至走兽,全都知道一件事:三个臭皮匠,顶个诸葛亮。(假的)即使是处于人类前沿的编程语言也知道要把数据联合在一起,于是便有了数组,结构体&…

org.springframework.jdbc.datasource.lookup.AbstractRoutingDataSource

DynamicDataSource-CSDN博客 /** Copyright 2002-2020 the original author or authors.** Licensed under the Apache License, Version 2.0 (the "License");* you may not use this file except in compliance with the License.* You may obtain a copy of the L…

鸿蒙工具DevEco Studio调试Build task failed. Open the Run window to view details.

DevEco Studio 预览代码时候出现的问题 1.进入设置 2.打开设置,构建,执行,部署下面的Hvigor, 把构建守护进程关掉就行。 然后重启启动一下就好了

破解app思路

1.会看smali代码逻辑 一.快速定位关键代码 1.分析流程 搜索特征字符串 搜索关键 api 通过方法名来判断方法的功能 2.快速定位关键代码 反编译 APK 程序 AndroidManifest.xml>包名/系统版本/组件 程序的主 activity(程序入口界面) 每个 Android 程序…

Redis SDS 源码

底层数据结构的好处: 杜绝缓冲区溢出。减少修改字符串长度时所需的内存重分配次数。二进制安全。兼容部分C字符串函数。 常用命令: set key value、get key 等 应用场景:共享 session、分布式锁,计数器、限流。 1、给char*定义…

前端请求patch接口,只传入已修改字段值的字段

目录 前端仅传递发生更改的字段 为什么 数据举例 递归对比函数 从回显数据到提交更新接口的模拟操作 前端仅传递发生更改的字段 在实际开发中前端肯定会遇到一个更新需求,回显数据 > 修改数据 > 请求更新接口这个步骤。 通常建议前端仅传递发生更改的字…

【重点】【哈希】128.最长连续序列

题目 思路&#xff1a;https://leetcode.cn/problems/longest-consecutive-sequence/solutions/2362995/javapython3cha-xi-biao-ding-wei-mei-ge-l-xk4c/?envTypestudy-plan-v2&envIdtop-100-liked class Solution {public int longestConsecutive(int[] nums) {Set<…

<JavaEE> volatile关键字 -- 保证内存可见性、禁止指令重排序

目录 一、内存可见性 1.1 Java内存模型(JMM) 1.2 内存可见性演示 二、指令重排序 三、关键字 volatile 一、内存可见性 1.1 Java内存模型(JMM) 1&#xff09;什么是Java内存模型&#xff08;JMM&#xff09;&#xff1f;Java内存模型即Java Memory Model&#xff0c;简…

如何使用注解实现接口的幂等性校验

如何使用注解实现接口的幂等性校验 背景什么是幂等性为什么要实现幂等性校验如何实现接口的幂等性校验1. 数据库唯一主键2. 数据库乐观锁3. 防重 Token 令牌4. redis 如何将这几种方式都组装到一起结语 背景 最近在小组同学卷的受不了的情况下&#xff0c;我决定换一个方向卷去…