4月22日-5月7日腾讯nlp算法实习面试题 ( 上 )
共 1600字,需浏览 4分钟
·
2021-05-24 21:29
文 | 七月在线
编 | 小七
目录
FIGHTING
问题1:介绍下word2vec,有哪两种实现,可以用什么方法提高性能,分层softmax介绍一下原理,负采样怎么做,,负采样和原始做法的优缺点比较。
问题2:介绍LSTM和GRU有什么不同?
问题3:介绍一下LSTM单元里面的运算过程。
问题4:CRF的损失函数是什么,具体怎么算?
问题5:transformer介绍一下原理,transformer为什么可以并行,它的计算代价瓶颈在哪?多头注意力机制计算过程?
问题6:BERT介绍一下原理,怎么用BERT计算文本相似度,有哪两种计算方法?
问题7:transformer里自注意力机制的计算过程,为什么要进行缩放,为什么要用多头?
问题1:
介绍下word2vec,有哪两种实现,可以用什么方法提高性能,分层softmax介绍一下原理,负采样怎么做,,负采样和原始做法的优缺点比较。
在进行最优化的求解过程中,从隐藏层到输出的softmax层放入计算量很大,因为要计算所有词的softmax概率,再去找概率最大的值,可以使用层次softmax和负采样两种方法;
层次softmax采用对输出层进行优化的策略,输出层从原始模型利用softmax计算概率值改为利用huffman树进行计算概率值,其优点:由于是二叉树,之前计算量为V,现在变为了logV;由于使用Huffman树是高频的词靠近树根,这样高频词需要更少的时间被找到,符合贪心优化思想;其缺点:如果训练样本中的中心词w是一个很生僻的词,那么就需要在Huffman树中向下走很久。
负采样过程:比如我们有一个训练样本,中心词是w,它周围上下文共有2c个词,记为context(w)。由于这个中心词w和context(w)相关存在,因此它是一个真实的正例。通过Negative Sampling采样,我们得到neg个和w不同的中心词wi,i=1,2,…neg,这样context(w)和wi就组成了neg个并不真实存在的负例。利用这一个正例和neg个负例,我们进行二元逻辑回归,得到负采样对应每个词wi对应的模型参数θi,和每个词的词向量。
负采样相比原始做法:每次只需要更新采样的词的权重,不需要更新所有词的权重,可以减少了训练过程的计算负担,加速模型的计算,另一方面也可以保证模型训练的效果,提高了其结果词向量的质量。
问题2: 介绍LSTM和GRU有什么不同? (1)LSTM和GRU的性能在很多任务上不分伯仲;(2)GRU参数更少,因此更容易收敛,但是在大数据集的情况下,LSTM性能表现更好;
(3)从结构上说,GRU只有两个门,LSTM有三个门,GRU直接将hidden
state传给下一个单元,而LSTM则用memory cell把hidden state包装起来。
问题3:介绍一下LSTM单元里面的运算过程。
问题4:CRF的损失函数是什么,具体怎么算?
在训练过程中,CRF损失函数只需要两个分数:真实路径的分数和所有可能路径的总分数。所有可能路径的分数中,真实路径分数所占的比例会逐渐增加。
损失函数:
实际路径得分:
问题5:transformer介绍一下原理,transformer为什么可以并行,它的计算代价瓶颈在哪?多头注意力机制计算过程?
问题6:BERT介绍一下原理,怎么用BERT计算文本相似度,有哪两种计算方法?
问题7:transformer里自注意力机制的计算过程,为什么要进行缩放,为什么要用多头?
本文素材来源于七月在线社区面试题,关注公号,获取更多面试资料。
AI充电季
点击「阅读原文」,了解活动详情!