深度学习试题_深度学习理论类常见面试题(二)

8.Attention 对比 RNN 和 CNN,分别有哪点你觉得的优势

对比 RNN 的是,RNN 是基于马尔可夫决策过程,决策链路太短,且单向
对比 CNN 的是,CNN 基于的是窗口式捕捉,没有受限于窗口大小,局部信息获取,且无序

9.写出 Attention 的公式

深度学习试题_深度学习理论类常见面试题(二)_第1张图片

10.Attention 机制,里面的 q,k,v 分别代表什么

  • Q:指的是query,相当于decoder的内容
  • K:指的是key,相当于encoder的内容
  • V:指的是value,相当于encoder的内容

q 和 k 对齐了解码端和编码端的信息相似度,相似度的值进行归一化后会生成对齐概率值 (注意力值)。V 对应的是 encoder 的内容,刚说了 attention 是对 encoder 对重编码, qk 完成权重重新计算,v 复制重编码

11.为什么 self-attention 可以替代 seq2seq

  • seq2seq最大的问题在于将Encoder端的所有信息压缩到一个固定长度的向量中, 并将其作为 Decoder 端首个隐藏状态的输入,来预测 Decoder 端第一个单词 (token)的隐藏状态。在输入序列比较长的时候,这样做显然会损失 Encoder 端的 很多信息,而且这样一股脑的把该固定向量送入 Decoder 端,Decoder 端不能够关 注到其想要关注的信息。
  • self-attention让源序列和目标序列首先“自关联”起来,这样的话,源序列和 目标序列自身的 embedding 表示所蕴含的信息更加丰富,而且后续的 FFN 层也增 强了模型的表达能力,并且 Transformer 并行计算的能力是远远超过 seq2seq 系 列的模型。

解释 GolVe 的损失函数?

其实,一句话解释就是想构造一个向量表征方式,使得向量的点击和共现矩阵中的对应关 系一致。因为共现矩阵中的对应关系证明了,存在 i,k,j 三个不同的文本,如果 i 和 k 相关,j 和 k 相关,那么 p(i,j)=p(j,k)近似于 1,其他情况都过大和过小。

  • 如何处理未出现词?

按照词性进行已知词替换,[unknow-n],[unknow-a],[unknow-v]...,然后再进行训练。 实际去用的时候,判断词性后直接使用对应的 unknown-?向量替代

为什么 GolVe 会用的相对比 W2V 少?

GloVe 算法本身使用了全局信息,自然内存费的也就多一些 公现矩阵,NXN 的,N 为词袋量
W2V 的工程实现结果相对来说支持的更多,比如 most_similarty 等功能

层次 softmax 流程

构造 Huffman Tree 最大化对数似然函数

  • 输入层:是上下文的词语的词向量
  • 投影层:对其求和,所谓求和,就是简单的向量加法
  • 输出层:输出最可能的word

沿着哈夫曼树找到对应词,每一次节点选择就是一次 logistics 选择过程,连乘即为似然 函数
对每层每个变量求偏导,参考 sgd

你可能感兴趣的:(深度学习试题)