赞
踩
LLMs复读机问题指的是模型倾向于不适当地复制用户输入的文本或者在回复中重复使用相同的句式和短语。这种倾向可能源自模型在处理输入时的一种简便路径,即模仿而不是创造性地响应。生成的内容往往缺乏变化和新颖性,这使得交互体验变得预测性强且单调。
CRF 的核心思想是训练 Transitions 矩阵,该矩阵主要是刻画 tag 与 tag 之间的变化关系。 CRF的作用是通过刻画这种关系来约束模型的生成,比如 BIO, B后面是I, I前面不能是O等。 CRF 的损失函数是 正确路径的得分 - 所有路径的得分和。
FP16 是范围比较小,但是精度比较高;
BP16范围大,但是精度低。
FP16有两个问题:
GLU 的核心思想是通过门控机制来过滤信息,进而提高网络的表达能力和泛化能力。其计算公 式如下:
f(x) = linear_f(x)
g(x) = linear_g(x)
out = f(x) * torch.sigmoid(g(x))
此外,门控机制有助于长距离建模。计算当前的梯度: 计算梯度加权平均: 计算梯度平方的加权平均: 计算最终的梯度值: SwishGLU 的核心思想是将 Swish 和 GLU 结合起来,其公式变为:
f(x) = linear_f(x)
g(x) = linear_g(x)
out = f(x) * g(x) * torch.sigmoid(g(x))
通过对比发现,SwishGLU 实际上只是多乘了一个 g(x)。
lora 的核心思想是低秩分解,即将一个大矩阵 W 转化为 W + AB,其中我们保证初始化的时候 BA = 0,
论文中采用A是高斯初始化,B 为 0 初始化。
在训练过程中,固定 W 的参数,只优化 BA 的参数。此时的优化参数从 d * k 变为了 r * (d + k)。
1. 自注意力
自注意力机制是Transformer的核心部分。它可以动态地将输入序列中的不同位置之间的关系建模,并对不同位置的信息进行加权。自注意力机制利用了三个输入:quer,key和value。通过计算查询和键之间的相似度得到注意力权重,然后将注意力权重与值进行加权求和得到输出。
2. multi-head attention
3. QKV 为啥要进行矩阵变换
我认为核心的思想就是:扩大参数量,提高模型的泛化能力。 实际上,Muti-Query Attention,采用KV 进行参数共享同样能获得较好的结果。
4. 为什么要scale,层归一化,残差块连接
目的是进行归一化。
Transformer还引入了残差连接和层归一化来促进训练的稳定性和收敛性。残差连接允许信息在不同层之间进行直接跳跃,层归一化则对每一层进行归一化操作,减少了梯度的变化。
首先,二者的区别在于,LN 对层进行 Normalization , BN 对 batch 进行 Normalization。
在transformer中采用LayerNorm,与BatchNorm不同的是它是对每单个batch进行的归一化,而batchnorm是对所有batch一起进行归一化的
Layer normalization与BN相比,不需要对一大批数据进行求均值和方差,可以适用于训练和测试过程中不同batch size的情况。同时,Layer normalization还能够处理RNN等具有时间依赖性质的神经网络。
LN 不依赖于 batch size,在batch size 不大的情况下,BN的效果并不好。 从样本角度看,nlp 中的输入,每个token的出现位置是不固定的,每个句子的长度也是不 一样的。同样的一个token,
交叉熵的本质是 对数损失,pytorch 里面实现的是,对于每一个样本来说,计算预测为真实标 签的对数损失值即: -1@log(预测为该真实标签的概率)
主要可以分为两种:绝对位置编码和相对位置编码。
绝对位置编码的思想是通过某种方式计算出位置向量,然后将该向量与输入向量想加。主要 有训练式和三角式两种。s
绝对位置编码一种基于位置嵌入的方法,其中每个位置都被分配了一个唯一的位置向量。这些向量是固定的,与输入序列的内容无关。这种编码方式对于处理较短的序列效果较好,但在处理长序列时可能会存在问题,因为序列的长度超过了模型能够处理的位置编码的范围
相对位置编码的思想是在计算Attention时候引入当前位置和被attention位置之间的相对距 离。典型的有旋转位置编码和ALIBI位置编码。
相对位置编码是一种基于相对位置的方法,其中每个位置被编码为一个偏移量,表示该位置与其他位置之间的相对距离。相对位置编码可以通过在输入嵌入中添加额外的信息来实现。这种编码方式可以处理长序列,有更好的外推性,并且能够在不同的上下文中保持一定的一致性。
RoPE的主要思想:
具用较相对位置更好的外推性
外推性是指大模型在训练时和预测时的输入长度不一致,导致模型的泛化能力下降的问题。
例如,如果一个模型在训练时只使用了512个 token 的文本,那么在预测时如果输入超过512个 token,模型可能无法正确处理。这就限制了大模型在处理长文本或多轮对话等任务时的效果。
1、中文分词
2、英文分词
tokenize有三种粒度:word/subword/char
常见的算法:BPE 和 WordPiece
并行方式可以分为:数据并行,模型并行两种,其中模型并行可以分为流水线并行和张量并行。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。