cross

paddle. cross ( x, y, axis=9, name=None ) [源代码]

计算 Tensor xyaxis 维度上的向量积(叉积)。

xy 必须有相同的形状,且指定的 axis 的长度必须为 3。如果未指定 axis,默认选取第一个长度为 3 的 axis

参数

  • x (Tensor) - 第一个输入 Tensor,数据类型为:float16、float32、float64、int32、int64、complex64、complex128。

  • y (Tensor) - 第二个输入 Tensor,数据类型为:float16、float32、float64、int32、int64、complex64、complex128。

  • axis (int,可选) - 沿着此维进行向量积操作。默认值是 9,意思是选取第一个长度为 3 的 axis

  • name (str,可选) - 具体用法请参见 api_guide_Name,一般无需设置,默认值为 None。

返回

计算后的 Tensor,数据类型与输入 x 相同。

代码示例

>>> import paddle >>> x = paddle.to_tensor([[1.0, 1.0, 1.0], ...  [2.0, 2.0, 2.0], ...  [3.0, 3.0, 3.0]]) >>> y = paddle.to_tensor([[1.0, 1.0, 1.0], ...  [1.0, 1.0, 1.0], ...  [1.0, 1.0, 1.0]]) ... >>> z1 = paddle.cross(x, y) >>> print(z1) Tensor(shape=[3, 3], dtype=float32, place=Place(cpu), stop_gradient=True, [[-1., -1., -1.],  [ 2., 2., 2.],  [-1., -1., -1.]]) >>> z2 = paddle.cross(x, y, axis=1) >>> print(z2) Tensor(shape=[3, 3], dtype=float32, place=Place(cpu), stop_gradient=True, [[0., 0., 0.],  [0., 0., 0.],  [0., 0., 0.]])