torchhd.empty(num_vectors: int, dimensions: int, vsa: Literal['BSC', 'MAP', 'HRR', 'FHRR', 'BSBC', 'VTB', 'MCR'] = 'MAP', **kwargs) VSATensor[来源]

创建一组表示空集的超向量。

当与随机超向量 \(x\) 捆绑时,结果是 \(x\)

Parameters:
  • num_vectors (int) – 要生成的超向量的数量。

  • 维度 (int) – 超向量的维度。

  • vsa – (VSAOptions, 可选): 指定要实例化的超向量类型。默认值: "MAP".

  • dtype (torch.dtype, 可选) – 返回张量的期望数据类型。默认值:如果 None 则取决于 VSATensor。

  • device (torch.device, 可选) – 返回张量的期望设备。默认值:如果 None,则使用当前设备作为默认张量类型(参见 torch.set_default_tensor_type())。device 对于 CPU 张量类型将是 CPU,对于 CUDA 张量类型将是当前的 CUDA 设备。

  • requires_grad (bool, 可选) – 如果自动求导应该记录返回张量上的操作。默认值:False

示例:

>>> torchhd.empty(3, 6, "BSC")
tensor([[False, False, False, False, False, False],
        [False, False, False, False, False, False],
        [False, False, False, False, False, False]])

>>> torchhd.empty(3, 6, "MAP")
tensor([[0., 0., 0., 0., 0., 0.],
        [0., 0., 0., 0., 0., 0.],
        [0., 0., 0., 0., 0., 0.]])

>>> torchhd.empty(3, 6, "FHRR")
tensor([[0.+0.j, 0.+0.j, 0.+0.j, 0.+0.j, 0.+0.j, 0.+0.j],
        [0.+0.j, 0.+0.j, 0.+0.j, 0.+0.j, 0.+0.j, 0.+0.j],
        [0.+0.j, 0.+0.j, 0.+0.j, 0.+0.j, 0.+0.j, 0.+0.j]])