Files
obsidian_sycn/网页剪辑/blog.csdn.net/史上最小白之Transformer详解_Stink1995的博客-CSDN博客_transformer.md
2026-07-31 15:28:08 +08:00

1.6 KiB
Raw Permalink Blame History

doc_type, url
doc_type url
hypothesis-highlights https://blog.csdn.net/Tink1995/article/details/105080033

史上最小白之Transformer详解_Stink1995的博客-CSDN博客_transformer

Metadata

Highlights

  • 输入inputs embedding后需要给每个word的词向量添加位置编码positional encoding

  • 咱们的Transformer 的是完全基于self-Attention地,而self-attention是不能获取词语位置信息地

  • 《Attention Is All You Need》论文中Transformer使用的是正余弦位置编码。位置编码通过使用不同频率的正弦、余弦函数生成,然后和对应的位置的词向量相加,位置向量维度必须和词向量的维度一致

  • 可以通过数据训练学习得到positional encoding,类似于训练学习词向量,goole在之后的bert中的positional encoding便是由训练得到地

  • pos表示单词在句子中的绝对位置,pos=0,1,2…,例如:Jerry在"Tom chase Jerry"中的pos=2dmodel表示词向量的维度,在这里dmodel=512;2i和2i+1表示奇偶性,i表示词向量中的第几维,例如这里dmodel=512,故i=012…255。

  • 拼接相加都可以,只是本身词向量的维度512维就已经蛮大了,再拼接一个512维的位置向量,变成1024维,这样训练起来会相对慢一些,影响效率。两者的效果是差不多地,既然效果差不多当然是选择学习习难度较小的相加了。