nlp第十节——LLM相关

news/2025/3/6 18:24:59/

一、模型蒸馏技术

在这里插入图片描述
本质上是从一个大模型蒸馏出小模型,从小模型训练出来的概率分布(如自回归模型预测下一个字的概率分布)分别与大模型预测的概率分布和ground label求loss。与大模型预测的概率分布用KL散度求loss,与ground label用交叉熵求分布。
KL散度:
在这里插入图片描述

二、SFT(有监督微调)

给模型的输入通常是问答对的形式,答就是对模型输出的监督,所以是一个有监督模型。在预训练阶段通常是对无标注数据进行自监督训练,可以减少很多人工标注的成本。相比较自回归预测下一个字的模型,SFT的区别在于,输入是问答对的方式,且输入与输出间有sep分隔,输出结果仍然按照预测下一个字的概率分布的形式,但是我们需要的结果是从sep开始的,而且loss只从预测出的sep后的第一个字开始计算,直到预测到终止符结束(使用掩码注意力机制进行训练,这是它与预训练在训练方式上的差距)
在这里插入图片描述

三、LLM的一些模型结构变化

multi-head共享:
在这里插入图片描述
第一个就是我们常见的multi-head机制,然后演化成了第三种multi-query,这种机制在计算k,v的时候不用768×768的矩阵,而是768×64的矩阵,再把L×64的矩阵与多个queries矩阵相乘,再拼接在一起,这种方式的目的是减少参数,加速训练。最后演化成了现在常用的第二种grouped-query,这种机制在计算k,v的时候不用768×768的矩阵,而是768×256的矩阵,然后分成四块,再将queries分组,分别相乘。
attention结构:
在这里插入图片描述
左边是传统的transformer block,右边进行了一些改动,将self-attention和feedfarward层并行计算,而不是左边的串行计算。
归一化层位置的选择:
在这里插入图片描述
归一化的方式:
在这里插入图片描述

激活函数:
在这里插入图片描述
swish函数相当于sigmoid(x)×x,有门的机制,对x的内容进行有效提取。
RoPE:
由于transformer在进行运算时,基本上都是线性层,改变两个字的顺序只会改变矩阵中行的位置,没有明显的位置信息,所以提出了位置编码。同时为了能让预测序列比训练序列长的时候仍有好的表现,也就是有比较好的长度外推性,提出了相对位置编码(bert里的position embedding是绝对位置编码,限制了预测的输出的长度)
换一种思维,我们本质上是想保留语序信息,所以我们可以在attention机制的部分保留每个字两两之间的语序信息,也就是保留第m个字和第n个字(m-n)的信息。所以提出了RoPE。它是在q和k矩阵相乘之前分别作用在q,k矩阵上的。
在这里插入图片描述
MOE架构:
在这里插入图片描述
在过线性层时,设置多个线性层,在进入feedforward前先做一个分类任务,经过router选择,一部分选择过线性层A,一部分选择过线性层B,然后按概率加权求和。

四、LLAMA2结构

在这里插入图片描述
在每一个block里,用pre-LN的方式先进行RMSnorm,接着过attention的掩码注意力机制层,q,k首先分别进行相对位置编码(RoPE),然后再相乘归一化后与v相乘,接着过一层线性层,过一层残差链接来到前馈网络,首先依然是RMSnorm,接着过线性层和激活函数再过一层线性层和残差链接。


http://www.ppmy.cn/news/1577136.html

相关文章

蓝桥杯算法——铠甲合体

问题描述 暗影大帝又开始搞事情了!这次他派出了 MM 个战斗力爆表的暗影护法,准备一举摧毁 ERP 研究院!MM 个暗影护法的战斗力可分别用 B1,⋯,BMB1​,⋯,BM​ 表示。 ERP 研究院紧急召唤了 NN 位铠甲勇士前来迎战!每位铠甲勇士都…

如何在React中正确处理异步操作?

文章目录 1. 引言2. 异步操作的典型场景与潜在问题2.1 典型场景2.2 常见问题 3. 基本原则与最佳实践3.1 封装异步逻辑3.2 使用React Hooks管理副作用3.3 管理加载、错误与数据状态3.4 防止内存泄漏3.5 避免竞态条件 4. 在React中处理异步操作的方法4.1 使用 useEffect 处理异步…

Webpack分包与合包深度解析

Webpack分包与合包深度解析 引言:现代前端工程的模块化困境 在单页面应用(SPA)复杂度日益增长的今天,一个未经优化的Webpack构建产物可能面临: 首屏加载缓慢(超过3秒白屏)公共模块重复打包&am…

JAVA毕设项目-基于SSM框架的百色学院创新实践学分认定系统源码+设计文档

文末获取源码数据库文档 感兴趣的可以先收藏,有毕设问题,项目以及论文撰写等问题都可以和博主沟通,尽最大努力帮助更多的人! 百色学院创新实践学分认定系统设计与实现 摘 要 本百色学院创新实践学分认定系统是针对目前实践学分认定…

利用golang embed特性嵌入前端资源问题解决

embed嵌入前端资源,配置前端路由的代码如下 func StartHttpService(port string, assetsFs embed.FS) error {//r : gin.Default()gin.SetMode(gin.ReleaseMode)r : gin.New()r.Use(CORSMiddleware())// 静态文件服务dist, err : fs.Sub(assetsFs, "assets/di…

【数据结构】什么是栈||栈的经典应用||分治递归||斐波那契问题和归并算法||递归实现||顺序栈和链栈的区分

文章目录 🥧栈的初步理解:🥧易错:如何判断栈满🥧栈满理解🥧栈的基本运算📚栈操作的伪代码逻辑(顺序和链栈)📕顺序栈运算实现:顺序栈的表示&#x…

机器学习工程师技术图谱和学习路线

机器学习工程师技术图谱与学习路线(2025年) 一、基础阶段 数学基础 线性代数:矩阵运算、特征值与特征分解(主成分分析/PCA的基础)概率与统计:贝叶斯定理、条件概率、假设检验、分布模型(如朴素贝叶斯分类器的基础)微积分与优化:梯度下降、损失函数优化(如神经网络的…

蓝桥杯刷题周计划(第一周)

目录 前言题目一题目代码题解分析 题目二题目代码题解分析 题目三题目代码题解分析 题目四题目代码题解分析 题目五题目代码题解分析 题目六题目代码题解分析 题目七题目代码题解分析 题目八题目代码题解分析 题目九题目代码题解分析 题目十题目代码题解分析 题目十一题目代码题…