mlx.nn.SinusoidalPositionalEncoding

mlx.nn.SinusoidalPositionalEncoding#

class SinusoidalPositionalEncoding(dims: int, min_freq: float = 0.0001, max_freq: float = 1, scale: float | None = None, cos_first: bool = False, full_turns: bool = False)#

实现正弦位置编码。

更多详细信息请参阅论文 Attention Is All You Need

参数:
  • dims (int) – 结果位置嵌入的维度。

  • min_freq (float, 可选) – 期望的最小频率。默认值:0.0001

  • max_freq (float, 可选) – 期望的最大频率。默认值:1

  • scale (float, 可选) – 嵌入的乘法缩放因子。默认值:sqrt(2/dims)

  • cos_first (bool, 可选) – 如果为 True,则使用 [cos(x); sin(x)] 进行嵌入,而不是反过来。默认值:False

  • full_turns (bool, 可选) – 如果为 True,则将频率乘以 2π。默认值:False

方法