不同参数规模大语言模型在不同微调方法下所需要的显存总结

原文来自DataLearnerAI官方网站:

不同参数规模大语言模型在不同微调方法下所需要的显存总结 | 数据学习者官方网站(Datalearner)icon-default.png?t=N7T8https://www.datalearner.com/blog/1051703254378255

大模型的微调是当前很多人都在做的事情。微调可以让大语言模型适应特定领域的任务,识别特定的指令等。但是大模型的微调需要的显存较高,而且比较难以估计。与推理不同,微调过程微调方法的选择以及输入序列的长度、批次大小都会影响微调显存的需求。本文根据LLaMA Factory的数据总结一下大模型微调的显存要求。

在此前的文章中,我们已经解释了大模型推理和显存之间的估算方法:需要多少GPU显存才能运行预训练大语言模型?大语言模型参数规模与显存大小的关系估算方法~。即大模型推理显存约等于模型参数乘以2,而微调则只给了方法没有具体公式。

不同参数规模的大模型在不同微调方法下所需的显存大小,十分有参考意义:

微调方法模型精度70亿参数模型130亿参数模型300亿参数模型650亿参数模型8x7B(MoE)
Full16160GB320GB600GB1200GB1000GB
Freeze1620GB40GB120GB240GB200GB
LoRA1616GB32GB80GB160GB120GB
QLoRA810GB16GB40GB80GB80GB
QLoRA46GB12GB24GB48GB32GB

这里的微调方法介绍参考和数据来源见原文:不同参数规模大语言模型在不同微调方法下所需要的显存总结 | 数据学习者官方网站(Datalearner)

这里比较重要的参考是8×7B的MoE模型。这个显然就是前段时间刚刚发布的Mixtral大模型(即Mistral 8×7B MoE,详情参考:MistralAI的混合专家大模型Mistral-7B×8-MoE详细介绍,效果超过LLaMA2-70B和GPT-3.5,推理速度快6倍)。这个模型实际参数450亿,每次推理只会激活120亿的参数。这个模型在微调的时候需要的显存大小和450亿参数规模的模型相当。也就是说,MoE最大的优点应该是提升推理速度。推理现存与微调显存实际上不会有什么优势(根据实际测试,Mixtral 8×7B MoE推理最少也要90多G的显存)。如果使用QLoRA方法,那么显存大小会显著降低。不过,这也会降低一点精度。

原文来自DataLearnerAI:不同参数规模大语言模型在不同微调方法下所需要的显存总结 | 数据学习者官方网站(Datalearner)

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

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

相关文章

【Qt-发布】

Qt编程指南 ■ Qt版本发布■■■ ■ Qt版本发布 生成Release版本。LordCard.exe.查看windeployqt.exe所在目录。 E:\install\Qt\Qt5.14.2\5.14.2\mingw73_64\bin\windeployqt.exe 如果已经将这个路径设置到环境变量中了,那么在当前操作系统的任意目录下都可以访问 …

【华为OD题库-105】滑动窗口最大值-java

题目 题目描述: 有一个N个整数的数组,和一个长度为M的窗口,窗口从数组内的第一个数开始滑动直到窗口不能滑动为止,每次窗口滑动产生一个窗口和(窗口内所有数的和),求窗口滑动产生的所有窗口和的最大值。 输入描述: 第一…

口算练习题(字符串处理)#洛谷

题目描述 王老师正在教简单算术运算。细心的王老师收集了i道学生经常做错的口算题,并且想整理编写成一份练习。 编排这些题目是一件繁琐的事情,为此他想用计算机程序来提高工作效率。王老师希望尽量减少输入的工作量,比如 58 \texttt{58} 5…

IntelliJ IDEA快捷键及调试

文章目录 一、IntelliJ IDEA 常用快捷键一览表1-IDEA的日常快捷键第1组:通用型第2组:提高编写速度(上)第3组:提高编写速度(下)第4组:类结构、查找和查看源码第5组:查找、…

05|提示工程(下):用思维链和思维树提升模型思考质量 ## 什么是 Chain of Thought

05|提示工程(下):用思维链和思维树提升模型思考质量 什么是 Chain of Thought CoT 这个概念来源于学术界,是谷歌大脑的 Jason Wei 等人于 2022 年在论文《Chain-of-Thought Prompting Elicits Reasoning in Large La…

R-列表、矩阵、数组转化为向量

目录 一、c()函数 二、unlist()函数 一、c()函数 c():对应的英文是combine. 当你使用c()函数时,它会将输入的对象连接成一个向量。因此,无论输入是矩阵、数组还是列表,c()函数都会将它们连接成一个简单的向量。因此&#xff…

Linux操作系统—磁盘和文件系统管理实用

1. 硬盘和分区基础: - Linux使用设备文件(例如 /dev/sda)来表示硬盘。 - 使用fdisk或parted等工具对硬盘进行分区。 # 示例:使用fdisk进行分区 sudo fdisk /dev/sda 2. 查看磁盘信息: - 使用lsblk或fdisk查看系统…

k8s修改/etc/resolve.conf导致容器域名解析失败

问题: 因为用户原因,修改了k8s主机中/etc/resolve.conf的dns地址,产生的现象就是主机可以解析域名,但是pod不能解析域名; 原因: CoreDNS 是 Kubernetes 集群中的默认 DNS 服务器,负责处理集群内的 DNS 解…

使用代码生成工具快速开发应用-结合后端Web API提供接口和前端页面快速生成,实现通用的业务编码规则管理

1、通用的业务编码规则的管理功能 在前面随笔我们介绍了一个通用的业务编码规则的管理功能,通过代码生成工具Database2Sharp一步步的生成相关的后端和Winform、WPF的界面,进行了整合,通过利用代码生成工具Database2sharp生成节省了常规功能的…

DreamTuner :通过单张图片实现主题驱动的图像生成

该项目由字节跳动开发,你只需要提供一张图片,DreamTuner就能帮你生成与这张图片在主题和风格上一致的新图像。比如你有一张可乐照片,它可以根据你的要求将可乐放在任何场景中或添加其他元素形成一张完美海报! 这个工具特别适用于需…

PyAV 使用浅谈

背景: PyAV是一个用于音频和视频处理的Python库,它提供了一个简单而强大的接口,用于解码、编码、处理和分析各种音频和视频格式。PyAV基于FFmpeg多媒体框架,它本质上是FFmpeg 的Python绑定,因此可以利用FFmpeg的功能来…

【MySQL】数据库之事务

目录 一、什么是事务 二、事务的ACID是什么? 三、有哪些典型的不一致性问题? 第一种:脏读 第二种:不可重复读 第三种:幻读 第四种:丢失更新 四、隔离级别有哪些? (1&#xf…

vue中父子组件传值

父传子 传: 在"标签"上传属性 <Card :name"name"></Card> 接: 在props中 export default {props: {name: String},setup(props) {console.log(props.name);} } 子传父 传: 触发,给一个事件传值 setup(props,{emit}) {emit("get…

Docker介绍、常用命令与操作

Docker介绍、常用命令与操作 学习前言为什么要学习DockerDocker里的必要基础概念常用命令与操作1、基础操作a、查看docker相关信息b、启动或者关闭docker 2、容器操作a、启动一个镜像i、后台运行ii、前台运行 b、容器运行情况查看c、日志查看d、容器删除 3、镜像操作a、镜像拉取…

NCCL 实践与体会

1. 介绍 2. NCCL 开启IB/ROCE/的环境变量设置 export NCCL_IB_DISABLE0;export NCCL_P2P_DISABLE1;NCCL_SHM_DISABLE1 NCCL_IB_HCAmlx5_0,mlx5_1,mlx5_4,mlx5_5;sendrecv_perf -b 8 -e 8192M -f 2 -g 4

框架面试题

文章目录 1. spring中的bean是线程安全的吗2. 事务的实现--AOP3. 项目中用到的AOP4.spring中事务的失效场景5. Bean的生命周期6.spring中的循环引用问题7. springMVC的执行流程8. springboot自动装配原理9. 常见注解10 Mybatis11 Mybatis一二级缓存 1. spring中的bean是线程安全…

PoE交换机传输距离是多少?100米?250米?

你们好&#xff0c;我的网工朋友。 今天和你聊聊PoE交换机&#xff0c;之前有系统地给你讲解过一篇&#xff0c;可以先回顾一下哈&#xff1a;《啥样的交换机才叫高级交换机&#xff1f;这张图告诉你》 为什么都说PoE交换机好&#xff1f;它最显著的特点就是&#xff1a; 可…

SQL手工注入漏洞测试(MySQL数据库)

一、实验平台 https://www.mozhe.cn/bug/detail/elRHc1BCd2VIckQxbjduMG9BVCtkZz09bW96aGUmozhe 二、实验目标 获取到网站的KEY&#xff0c;并提交完成靶场。 三、实验步骤 ①、启动靶机&#xff0c;进行访问查找可能存在注入的页面 ②、通过测试判断注入点的位置(id) (1)…

PyTorch官网demo解读——第一个神经网络(3)

上一篇&#xff1a;PyTorch官网demo解读——第一个神经网络&#xff08;2&#xff09;-CSDN博客 上一篇文章我们讲解了第一个神经网络的模型&#xff0c;这一篇我们来聊聊梯度下降。 大佬说梯度下降是深度学习的灵魂&#xff1b;梯度是损失函数&#xff08;代价函数&#xff…

简述一下微信小程序的路由概念

简述一下微信小程序的路由概念 不管是nodejs的express、koa&#xff0c;还是vue或者是react&#xff0c;包括小程序&#xff0c;这些应用框架中都包含了一个基本核心概念也就是路由所有应用框架中的路由都有共通性&#xff0c;主要包括&#xff1a;静态路由表、分配地址、统一入…