计算大模型参数量主要依赖于模型的架构和各层配置,我们把常用大模型分为三层:输入层、transformer层、输出层。

输入层

参数组成是Embedding的词表总和

transformer层

参数组成包括归一化参数、QKV的参数、输出全连接线性变换参数、FFN投影参数

输出层

归一化参数、全连接线性变换参数

我们以QwQ-32B为例,计算32B参数组成

QwQ-32B
架构 :使用了 RoPE(旋转位置编码)、SwiGLU、RMSNorm 和带有偏置项的注意力 QKV
各参数维度参考modelscope文件:

  名称 大小
token词表大小 vocab_size 152064
词向量维度 hidden_size 5120
中间维度 intermediate_size 27648
KV共享 num_key_value_heads 8
Q num_heads 40
头维度 head_dim 128
层数 transformer block 64

输入层

词表参数:vocab_size * hidden_size = 152064 * 5120

transformer层

Q的参数:hidden_size * hidden_size = 5120 * 5120
K的参数:由于KV是GQA,总共8个头,所以分成5组,hidden_size * (hidden_size / 5) = (5120 * 5120 / 5)
V的参数:和K一样,hidden_size * (hidden_size / 5) = (5120 * 5120 / 5)
输出后全连接线性转换参数:hidden_size * hidden_size = 5120 * 5120
FFN上投影:intermediate_size * hidden_size = 27648 * 5120
FFN下投影:intermediate_size * hidden_size = 27648 * 5120
SwiGLU门控参数:intermediate_size * hidden_size = 27648 * 5120
两个RMSNorm归一化:2 * hidden_size = 2 * 5120

输出层

归一化忽略不计,全连接线性变换:vocab_size * hidden_size = 152064 * 5120

总参数量

输入层 +(transformer层 * 64 )+ 输出层

关注微信公众号

大模型参数组成计算QwQ-32B为例的更多相关文章

  1. 使用excel估计GARCH模型参数——以GARCH(1,1)为例

    本文的知识点:使用excel求解GARCH模型的系数,以GARCH模型为例,主要采用的是极大似然估计法MLE. 同时给出了R语言的输出结果作为对照验证.     参考了:http://investex ...

  2. MXNET:深度学习计算-模型参数

    我们将深入讲解模型参数的访问和初始化,以及如何在多个层之间共享同一份参数. 之前我们一直在使用默认的初始函数,net.initialize(). from mxnet import init, nd ...

  3. 千亿参数开源大模型 BLOOM 背后的技术

    假设你现在有了数据,也搞到了预算,一切就绪,准备开始训练一个大模型,一显身手了,"一朝看尽长安花"似乎近在眼前 -- 且慢!训练可不仅仅像这两个字的发音那么简单,看看 BLOOM ...

  4. 莫烦python教程学习笔记——利用交叉验证计算模型得分、选择模型参数

    # View more python learning tutorial on my Youtube and Youku channel!!! # Youtube video tutorial: ht ...

  5. 深度学习方法(七):最新SqueezeNet 模型详解,CNN模型参数降低50倍,压缩461倍!

    欢迎转载,转载请注明:本文出自Bin的专栏blog.csdn.net/xbinworld. 技术交流QQ群:433250724,欢迎对算法.技术感兴趣的同学加入. 继续前面关于深度学习CNN经典模型的 ...

  6. 华为高级研究员谢凌曦:下一代AI将走向何方?盘古大模型探路之旅

    摘要:为了更深入理解千亿参数的盘古大模型,华为云社区采访到了华为云EI盘古团队高级研究员谢凌曦.谢博士以非常通俗的方式为我们娓娓道来了盘古大模型研发的"前世今生",以及它背后的艰难 ...

  7. 12. 亿级流量电商系统JVM模型参数二次优化

    亿级流量电商系统JVM模型参数预估方案,在原来的基础上采用ParNew+CMS垃圾收集器 一.亿级流量分析及jvm参数设置 1. 需求分析 大促在即,拥有亿级流量的电商平台开发了一个订单系统,我们应该 ...

  8. 图神经网络之预训练大模型结合:ERNIESage在链接预测任务应用

    1.ERNIESage运行实例介绍(1.8x版本) 本项目原链接:https://aistudio.baidu.com/aistudio/projectdetail/5097085?contribut ...

  9. DeepSpeed Chat: 一键式RLHF训练,让你的类ChatGPT千亿大模型提速省钱15倍

    DeepSpeed Chat: 一键式RLHF训练,让你的类ChatGPT千亿大模型提速省钱15倍 1. 概述 近日来,ChatGPT及类似模型引发了人工智能(AI)领域的一场风潮. 这场风潮对数字世 ...

  10. fluent批量处理——模型参数的设置

    对于常见的工程应用来说,计算的工况很多,尤其优化工作,少则几百,多则上千,面对如此之多的case文件要写,假如按照一个一个的读写的话,相信你一定会为这么机械的工作烦躁,甚至影响今后好几天的心情,那么有 ...

随机推荐

  1. Java 中堆内存和栈内存上的数据分布和特点

    博客:https://www.emanjusaka.com 博客园:https://www.cnblogs.com/emanjusaka 公众号:emanjusaka的编程栈 by emanjusak ...

  2. mongo数据库CPU使用率飙高及优化

    出现的情况 某天高高兴兴上班,发现一台mongo数据库负载较高,达到了300多,且一直很稳定,难道是硬件过时了. 检查主机的资源使用发现一个mongod进程使用了几乎所有的CPU资源. top - 1 ...

  3. 最小生成树可并行化的 Sollin(Boruvka)算法

    上期回顾:https://www.cnblogs.com/ofnoname/p/18715203 在前文中,我们剖析了最小生成树(MST)问题中的两大经典算法: Kruskal 以"边权平等 ...

  4. 安川Yaskawa机器人DX100示教器维修的方法

    安川Yaskawa机器人DX100示教器维修的优劣势分析 安川Yaskawa机器人示教编程,工业机器人维修,即操作人员经过安川机器人示教器,ABB机器人保养,手动操控机器人的关节运动,以使机器人运动到 ...

  5. Windows Api如何创建一个快捷方式并且在开始菜单搜索到自己的应用

    原文链接:http://cshelloworld.com/home/detail/1804473083243925504 当我们点击win10系统搜索框的时候,输入名称 ,win10会帮助我们匹配到对 ...

  6. STM32 学习方法

    前言 学习知识要掌握有效的学习方法,学习技术也是一样,本篇分享关于我学习 STM32 后总结的学习方法. 推荐的学习方法 系统学习 在网上购买一款开发板,使用开发板+开发板配套视频教程+开发板配套源码 ...

  7. useSlots-TS

    import {useSlots, VNode} from 'vue'; export const useGetSlots = () => { const slots = useSlots(); ...

  8. 0003 Failed to build the application: build go_beego/src/hello: cannot load

    我使用beego框架快速建立了一个应用,可当我运行 bee run的时候,出现了如下错误 D:\go_beego\src\product>bee run ______ | ___ \ | |_/ ...

  9. VMware网络虚拟化介绍(之一)

    2014年5月,在我加入VMware三个月之后,我涂鸦了一篇<扒一扒SDN的那些事儿>,当时放言如果阅读量过百就写续篇.后来果然阅读量没过百,也就80多的样子,其中好几份还是我自恋地进去查 ...

  10. nginx下增加https端口的方法

    一.进入根目录我是使用xshell进行远程连接服务器的,连接到服务器首先输入cd /进入到根目录在这里插入图片描述二.配置nginx.conf文件首先输入cd etc/nginx进入到nginx目录在 ...