当前位置:   article > 正文

transformer代码学习_transformer enc *= d ** 0.5

transformer enc *= d ** 0.5
  • 注意力机制中的mask是怎么回事?将注意力(QK)ij中不存在的项去掉。例如句子最大长度为10,其中一个句子的长度为5,那么j>5的项就不用算了。在机器翻译中,翻译到第i个词时,算自注意力时看不到j>i的K,因此这些j>i的项应该mask掉,注意力矩阵为下三角阵。
  • y_ = label_smoothing(tf.one_hot(y, depth=self.hp.vocab_size))的作用?加入后效果有少量提升。
  • lr = noam_scheme(self.hp.lr, global_step, self.hp.warmup_steps)的作用?让学习率先上升后下降。
  • ln(inputs, epsilon = 1e-8, scope="ln")中outputs = gamma * normalized + beta的gamma 和beta有什么用?
  • 代码中enc *= self.hp.d_model**0.5 # scale的作用?

# embedding

enc = tf.nn.embedding_lookup(self.embeddings, x) # (N, T1, d_model)
enc *= self.hp.d_model**0.5 # scale

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Guff_9hys/article/detail/908599
推荐阅读
相关标签
  

闽ICP备14008679号