面试可能的问题(自用)

  1. Transformers的原理结构和流程。encoder-decoder,论文中是分别六层,实际也可以别的层数。每个encoder 由self-attention和feed forward network组成。编码器的输入先流入sa层,它可以让编码器在对特定词进行编码时,使用输入句子时其他词的信息,然后sa层的输出流入ffn。ffn的作用是引入非线性变换。decoder也有sa和ffn,但中间还有个注意力层(encoder-decoder attention),用来帮助解码器关注输入句子的相关部分。
  1. Self-attention原理。矩阵X中的每一行,表示输入句子中的每一个词的词向量,QKV三个矩阵来自同一输入,首先计算q和k之间的点积,为了防止结果过大用softmax操作将其结果归一化为概率分布,再乘以V就得到权重求和的表示。dk是key向量的维度,除以根号dk是为了让反向传播的时候求梯度更加稳定。softmax将分数归一化,使得它们都为正数且和为1
  1. 多头注意力机制。比如8个头,最后将不同的attention拼接起来,再进行一次线性变换。每一组注意力用于将输入映射到不同的子表示空间,这使得模型可以在不同子空间中关注不同的位置。

  2. 残差连接和层归一化。每个编码器的每个子层(sa和ffn)都有一个残差连接,再执行一个layer norm操作。

  1. 第一个编码器的输入是一个序列,最后一个编码器的输出是一组注意力向量key和value。这些向量在解码器的encoder-decoder attention层被使用,这有助于解码器把注意力集中在输入序列的合适位置。

  2. transformer中有两种mask,padding mask和sequence mask。

padding mask:每个批次输入序列的长度不一样,所以要对在较短的输入序列后面补0,太长的是截断。这些填充的位置没什么意义,所以我们的attention机制不应该把注意力放在这些位置上。具体做法:把这些位置的值加上一个非常大的负数,这样经过softmax后,这些位置的概率就会接近0。

sequence mask:使得decoder不能看见未来的信息。具体做法:产生一个上三角矩阵,上三角的值全为0,把这个矩阵作用在每个序列上即可。

  1. 最后的线性层和softmax层。线性层是一个简单的全连接神经网络,把解码器的输出映射到一个更长的向量,被称为logits向量。然后softmax层会把这些分数转换成概率,最后选择最高概率对应的单词。

8.Transformer 用 LN 不用 BN,是因为 BN 在小 batch、变长序列、含 padding 的 NLP 场景下统计量不可靠,而 LN 对每个样本独立归一化,稳定、高效、与 batch 无关,完美适配 Transformer 的自回归和序列建模需求。

改进方案:RMSNorm:去掉 LN 中的均值中心化(只除以均方根),计算更快,性能相当(LLaMA 使用)

相关推荐
weisian1511 天前
入门篇--知名企业-20-阿里巴巴-8--阿里云PAI:AI开发的“全自动装配线”
人工智能·阿里云·云计算·pai
byte轻骑兵1 天前
共绩算力 RTX 5090 极速部署 Stable Diffusion WebUI:新手也能秒开 AI 绘图工作站
人工智能·stable diffusion
baiduopenmap1 天前
【智图译站】ARAG——一种创新的RAG框架及其在城市时空问答的应用
人工智能·百度地图
GISer_Jing1 天前
提示链(Prompt Chaining)、路由、并行化和反思
人工智能·设计模式·prompt·aigc
几何心凉1 天前
离开舒适区之后:从三年前端到 CS 硕士——我在韩国亚大读研的得失
前端·人工智能·年度总结
b***25111 天前
圆柱锂电池双面点焊机:新能源制造的核心工艺装备
人工智能·自动化
予枫的编程笔记1 天前
深度解析Kibana:从基础到进阶的全维度数据可视化指南
java·人工智能·elasticsearch·kibana
算法狗21 天前
面试题:大模型训练需要设置温度系数吗?
人工智能·深度学习·机器学习·面试题
好大哥呀1 天前
Vero VISI 2023:模具与精密制造全流程 CAD/CAM下载安装步骤
人工智能
csdn_aspnet1 天前
Anaconda 加速 AI 模型训练:优化机器学习工作流效率的利器
人工智能·深度学习·机器学习·anaconda