Transformer面试总结

本文总结了Transformer模型的关键点,包括位置信息处理、Layer Normalization的作用、残差网络的意义、Multi-head Attention的必要性以及与RNN/LSTM的比较。同时,详细解释了Transformer中不同类型的Attention机制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. Transformer的位置信息和bert的位置信息有什么不一样?

Transformer计算token的位置信息这里使用正弦波↓,类似模拟信号传播周期性变化。这样的循环函数可以一定程度上增加模型的泛化能力。
但BERT直接训练一个position embedding来保留位置信息,每个位置随机初始化一个向量,加入模型训练,最后就得到一个包含位置信息的embedding,最后这个position embedding和word embedding的结合方式上,BERT选择直接拼接

2. Transformer里layer-normlization的作用

当我们使用梯度下降法做优化时,随着网络深度的增加,数据的分布会不断发生变化,为了保证数据特征分布的稳定性,我们加入Layer Normalization,这样可以加速模型的收敛速度
Normalization有很多种,但是它们都有一个共同的目的,那就是把输入转化成均值为 0 方差为1的数据。我们在把数据送入激活函数之前进行normalization(归一化),因为我们不希望输入数据落在激活函数的饱和区,发生梯度消失的问题,使得我们的模型训练变得困难
BN的主要思想是: 在每一层的每一批数据(一个batch里的同一通道)上进行归一化
LN的主要思想是: LN也是归一化数据的一种方式,不过是在每一个样本(一个样本里的不同通道)上计算均值和方差,而不是 BN 那种在批方向计算均值和方差!

### Transformer 模型面试题总结 对于准备涉及Transformer模型的面试,了解其核心原理及其在不同应用场景中的实现至关重要。以下是几个关键领域以及可能遇到的相关问题: #### 1. 基础理论 - **什么是自注意力机制?它是如何工作的?** 自注意力机制允许输入序列的不同位置相互关注,从而捕捉到更丰富的上下文信息[^1]。 - **解释编码器-解码器架构的作用是什么?** 编码器负责处理输入数据并将其转换成固定长度的状态向量;而解码器则基于此状态生成目标输出序列[^2]。 #### 2. 实践应用 - **请描述一下BERT的工作流程。** BERT通过双向训练方式来预训练深层双向表征,在此基础上可以微调用于多种自然语言处理任务,如问答系统、情感分析等。 - **GPT系列模型有哪些特点?** GPT采用单向的语言建模方法,即只从前向后预测下一个词的概率分布,并且具有强大的泛化能力,能够适应各种下游任务而不需额外标注的数据集。 #### 3. 技术细节 - **为什么说Positional Encoding很重要?它解决了什么问题?** Positional encoding使得模型能够在不依赖于RNN结构的情况下保留单词的位置信息,这对于保持句子内部顺序非常重要。 - **Multi-head Attention有什么优势?** Multi-head attention可以让模型在同一层内多次独立计算attention权重矩阵,进而捕获更多样化的特征表示。 ```python import torch.nn as nn class TransformerModel(nn.Module): def __init__(self, vocab_size, d_model, nhead, num_encoder_layers, num_decoder_layers): super().__init__() self.embedding = nn.Embedding(vocab_size, d_model) self.transformer = nn.Transformer(d_model=d_model, nhead=nhead, num_encoder_layers=num_encoder_layers, num_decoder_layers=num_decoder_layers) def forward(self, src, tgt): embedded_src = self.embedding(src) embedded_tgt = self.embedding(tgt) output = self.transformer(embedded_src, embedded_tgt) return output ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值