torch.cross¶
- torch.cross(input, other, dim=None, *, out=None) Tensor ¶
返回
input
和other
维度中向量的叉积。支持输入 float、double、cfloat 和 cdouble 数据类型。也支持向量的批次输入,对于这种情况,它会在维度
dim
上计算乘积。在这种情况下,输出具有与输入相同的批次维度。警告
如果未指定
dim
,则默认为找到的第一个大小为 3 的维度。请注意,这可能是意外的。此行为已弃用,将在未来的版本中更改为与
torch.linalg.cross()
匹配。参见
torch.linalg.cross()
默认 dim=-1。- 参数:
input (Tensor) – 输入张量。
其他(张量)- 第二个输入张量
dim(int,可选)- 进行叉积的维度。
- 关键字参数:
输出(张量,可选)- 输出张量。
示例:
>>> a = torch.randn(4, 3) >>> a tensor([[-0.3956, 1.1455, 1.6895], [-0.5849, 1.3672, 0.3599], [-1.1626, 0.7180, -0.0521], [-0.1339, 0.9902, -2.0225]]) >>> b = torch.randn(4, 3) >>> b tensor([[-0.0257, -1.4725, -1.2251], [-1.1479, -0.7005, -1.9757], [-1.3904, 0.3726, -1.1836], [-0.9688, -0.7153, 0.2159]]) >>> torch.cross(a, b, dim=1) tensor([[ 1.0844, -0.5281, 0.6120], [-2.4490, -1.5687, 1.9792], [-0.8304, -1.3037, 0.5650], [-1.2329, 1.9883, 1.0551]]) >>> torch.cross(a, b) tensor([[ 1.0844, -0.5281, 0.6120], [-2.4490, -1.5687, 1.9792], [-0.8304, -1.3037, 0.5650], [-1.2329, 1.9883, 1.0551]])