Baichuan-7B [问题] RoPE的实现与论文中的描述不一致,

w3nuxt5m  于 2个月前  发布在  其他
关注(0)|答案(1)|浏览(38)

所需先决条件

问题

请问这里的实现为什么和论文里面不一样?

def rotate_half(x):
    """Rotates half the hidden dims of the input."""
    x1 = x[..., : x.shape[-1] // 2]
    x2 = x[..., x.shape[-1] // 2:]
    return torch.cat((-x2, x1), dim=-1)

论文里的计算是

按照这种实现最后的计算结果会是

我看huggingface里面也是这样,好奇为什么选择这种实现?

检查清单

  • 我已在上面提供了所有相关且必要的信息。
  • 我已为这个问题选择了合适的标题。
kognpnkq

kognpnkq1#

在embedding中,神经元的位置是没有顺序的,只需随机选择一半进行反转即可。

相关问题