torch.cartesian_prod
- torch.cartesian_prod(*tensors)[源代码]
-
计算给定张量序列的笛卡尔积。其行为与 Python 中的 itertools.product 类似。
- 参数
-
*tensors (Tensor) - 任意数量的一维张量。
- 返回值
-
将所有的输入张量转换成列表,使用itertools.product对这些列表进行操作,最后将得到的结果列表再转换成张量。
- 返回类型
示例:
>>> import itertools >>> a = [1, 2, 3] >>> b = [4, 5] >>> list(itertools.product(a, b)) [(1, 4), (1, 5), (2, 4), (2, 5), (3, 4), (3, 5)] >>> tensor_a = torch.tensor(a) >>> tensor_b = torch.tensor(b) >>> torch.cartesian_prod(tensor_a, tensor_b) tensor([[1, 4], [1, 5], [2, 4], [2, 5], [3, 4], [3, 5]])