NLP算法面试问题【持续更新中】

本文深入探讨了Transformer中的求和与归一化原理,注意力机制的softmax计算,多头注意力的优势,RNN与Transformer的对比,以及BERT的训练任务、优缺点和微调方法。还涵盖了LSTM的选择、梯度问题解决方案,Deepspeed的分布式计算,大模型生成的采样策略,temperture参数的作用,以及如何创建有效的Prompt。
摘要由CSDN通过智能技术生成

自己在看面经中遇到的一些面试题,结合自己和理解进行了一下整理。

L1正则与L2正则
L1正则为将模型的权重绝对值相加,倾向于使得模型的参数变为0,从而实现特征稀疏。
L2正则为将模型的平方和相加,对模型的参数进行平滑处理,使得模型参数不会发生剧烈的变化。

不同梯度下降及特点
每一个step之后都需要进行梯度更新,因此也衍生出了不同的梯度下降算法。
1、BSD(批量随机下降)
需要计算这个step里所有数据(batch_size)的梯度值,可以找到全局最优解,但是计算开销较大。
2、MBGD(小批量随机下降)
计算这个step一部分数据的梯度值,介于BSD和SGD之间。
3、SGD(随机梯度下降)
随机计算这个step中的一个样本数据,具有随机性,收敛速度较慢,可以跳出局部最优解。

不同激活函数及特点
1、sigmoid
sigmoid(x) = 1 / 1 + exp(-x),可以将(-inf,inf)的数据压缩到0-1之间。令sigmoid(x) = p,求导后的公式为p*(1-p),x偏大或偏小会出现梯度消失。
2、tanh
tanh(x) = exp(x) - exp(-x) / exp(x) + exp(-2x),可以将(-inf,inf)的数据压缩到(-1)-1之间。令tanh(x) = p,求导后的公式为1-p2,x偏大或偏小会出现梯度消失。
3、relu
relu(x) = max(0,x),x为负数时会造成神经元死亡。
4、softmax
softmax(x) = ex1 / (ex1 + … + exn),可以将(-inf,inf)的数据压缩到0-1之间,并且所有结果相加等于1,函数图像“倒7”。令softmax(x) = p,求导后的公式为p*(1-p),x偏大或偏小会出现梯度消失,并且softmax的分母会对所有选项做指数运算,计算开销较大。

Word2vec训练流程
1.随机初始化词嵌入矩阵,包括词表大小vocab_size和嵌入维度embedding_size。
2.分别计算输入与正例和负例的相似度,取sigmoid激活后的结果 - 目标值 作为损失。
3.不断更新词嵌入矩阵,使得损失最小。

transformer中求和与归一化中“求和”是什么意思?
求和的意思就是残差层求和,原本的等式为y = H(x)转化为y = x + H(x),这样做的目的是防止网络层数的加深而造成的梯度消失,无法对前面网络的权重进行有效调整,导致神经网络模型退化(这种退化不是由过拟合造成的,而是较深模型后面添加的不是恒等映射反而是一些非线性层)。已经学习到较饱和的准确率(或者当发现下层的误差变大时),那么接下来的学习目标就转变为恒等映射的学习,也就是使输入x近似于输出H(x),以保持在后面的层次中不会造成精度下降。

transformer为什么会有位置编码
transform中的self- attention只能捕获词与词之间的相关性信息,不能捕获词之间的位置信息,因此需要引入位置编码与词向量编码相加后作为输入向量。

transformer中正余弦的位置编码为什么能够体现位置信息
由于sin和cos函数的特性,sin(a+k)=sin(a)cos(k)+sin(k)cos(a)、cos(a+k)=cos(a)cos(k)-sin(a)sin(k),a位置加上k后可以使用a位置和k位置的线性组合来表示,可以体现出它们的相对位置信息。

注意力机制中计算注意力分数时为什么会除以根号dk?
这和softmax的求导有关,softmax的计算公式=exp(x1)/exp(x1)+exp(x2),另p=exp(x1)/exp(x1)+exp(x2),那么softmax求导之后=p*(1-p),当p趋近于1时,softmax的导数就趋近于0。故除以根号dk的原因是:为了避免softmax计算的结果过大,造成偏导数为0。

多头注意力比单头注意力的好处?
多头可以捕获不同子空间内的特征,抽取到更加丰富的特征信息。

transformer比起RNN的优势?
RNN在传播的过程中会出现信息衰减&

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值