老师,求位置编码的时候你搞错了
来源:10-16 位置编码

慕勒7399318
2019-11-11
应该写成下面的
def get_position_embedding(sentence_length, d_model):
# 会进行广播
angle_rads = get_angles(
np.arange(sentence_length)[:, np.newaxis],
np.arange(d_model)[np.newaxis, :],d_model)
# sines.shape: [sentence_length, d_model / 2]
# cosines.shape: [sentence_length, d_model / 2]
angle_rads[:, 0::2] = np.sin(angle_rads[:, 0::2])
angle_rads[:, 1::2] = np.cos(angle_rads[:, 1::2])
写回答
2回答
-
正十七
2019-11-17
同学你好,非常感谢你的提醒。你的实现确实更符合我们课上的描述。
然后这个实现跟我们课上的区别就是是原地操作,而不是奇数位和偶数位都抽出来然后再合并。向量中的值都是一样的,只是有些值的位置发生了变化而已。
其实它们是等价的,因为这里只是要给每个位置有一个独一无二的向量而已。
10 -
qq_慕前端4252840
2021-08-06
这个不用拼接,课上老师的代码拼接以后可能是偶数和偶数在一起,奇数和奇数在一起,不是按奇偶顺序的,但是不影响
00
相似问题