>>> import torch
>>> inv_freq = 1 / (10000 ** (torch.arange(0.0, 10, 2.0) / 10))
>>> inv_freq
tensor([1.0000e+00, 1.5849e-01, 2.5119e-02, 3.9811e-03, 6.3096e-04])
>>> pos_seq=torch.arange(20-1, -1, -1.0) #qlen+mlen,即10+10的维度然后逆序
>>> pos_seq
tensor([19., 18., 17., 16.
, 15., 14., 13., 12., 11., 10., 9., 8., 7., 6.,
5., 4., 3., 2., 1., 0.])
>>> sinusoid_inp = torch.ger(pos_seq,inv_freq)
>>> sinusoid_inp
tensor([[1.9000e+01, 3.0113e+00, 4.7726e-01, 7.5640e-02, 1.1988e-02],
[1.8000e+01, 2.8528e+00, 4.5214e-01, 7.1659e-02, 1.1357e-02],
[1.7000e+01, 2.6943e+00, 4.2702e-01, 6.7678e-02, 1.0726e-02],
[1.6000e+01, 2.5358e+00, 4.0190e-01, 6.3697e-02, 1.0095e-02],
[1.5000e+01, 2.3773e+00, 3.7678e-01, 5.9716e-02, 9.4644e-03],
[1.4000e+01, 2.2189e+00, 3.5166e-01, 5.5735e-02, 8.8334e-03],
[1.3000e+01, 2.0604e+00, 3.2655e-01, 5.1754e-02, 8.2024e-03],
[1.2000e+01, 1.9019e+00, 3.0143e-01, 4.7773e-02, 7.5715e-03],
[1.1000e+01, 1.7434e+00, 2.7631e-01, 4.3792e-02, 6.9405e-03],
[1.0000e+01, 1.5849e+00, 2.5119e-01, 3.9811e-02, 6.3096e-03],
[9.0000e+00, 1.4264e+00, 2.2607e-01, 3.5830e-02, 5.6786e-03],
[8.0000e+00, 1.2679e+00, 2.0095e-01, 3.1849e-02, 5.0477e-03],
[7.0000e+00, 1.1094e+00, 1.7583e-01, 2.7867e-02, 4.4167e-03],
[6.0000e+00, 9.5094e-01, 1.5071e-01, 2.3886e-02, 3.7857e-03],
[5.0000e+00, 7.9245e-01, 1.2559e-01, 1.9905e-02, 3.1548e-03],
[4.0000e+00, 6.3396e-01, 1.0048e-01, 1.5924e-02, 2.5238e-03],
[3.0000e+00, 4.7547e-01, 7.5357e-02, 1.1943e-02, 1.8929e-03],
[2.0000e+00, 3.1698e-01, 5.0238e-02, 7.9621e-03, 1.2619e-03],
[1.0000e+00, 1.5849e-01, 2.5119e-02, 3.9811e-03, 6.3096e-04],
[0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00]])
>>> sinusoid_inp.sin()
tensor([[ 1.4988e-01, 1.2993e-01, 4.5935e-01, 7.5568e-02, 1.1988e-02],
[-7.5099e-01, 2.8479e-01, 4.3689e-01, 7.1598e-02, 1.1357e-02],
[-9.6140e-01, 4.3251e-01, 4.1416e-01, 6.7627e-02, 1.0726e-02],
[-2.8790e-01, 5.6939e-01, 3.9117e-01, 6.3654e-02, 1.0095e-02],
[ 6.5029e-01, 6.9200e-01, 3.6793e-01, 5.9681e-02, 9.4642e-03],
[ 9.9061e-01, 7.9726e-01, 3.4446e-01, 5.5706e-02, 8.8333e-03],
[ 4.2017e-01, 8.8254e-01, 3.2077e-01, 5.1731e-02, 8.2024e-03],
[-5.3657e-01, 9.4569e-01, 2.9688e-01, 4.7755e-02, 7.5714e-03],
[-9.9999e-01, 9.8514e-01, 2.7281e-01, 4.3778e-02, 6.9405e-03],
[-5.4402e-01, 9.9990e-01, 2.4856e-01, 3.9800e-02, 6.3095e-03],
[ 4.1212e-01, 9.8959e-01, 2.2415e-01, 3.5822e-02, 5.6786e-03],
[ 9.8936e-01, 9.5448e-01, 1.9960e-01, 3.1843e-02, 5.0476e-03],
[ 6.5699e-01, 8.9544e-01, 1.7493e-01, 2.7864e-02, 4.4167e-03],
[-2.7942e-01, 8.1396e-01, 1.5014e-01, 2.3884e-02, 3.7857e-03],
[-9.5892e-01, 7.1207e-01, 1.2526e-01, 1.9904e-02, 3.1548e-03],
[-7.5680e-01, 5.9234e-01, 1.0031e-01, 1.5924e-02, 2.5238e-03],
[ 1.4112e-01, 4.5775e-01