torch.mm

torch.mm(input, mat2, *, out=None) Tensor

inputmat2两个矩阵进行乘法运算。

如果 input 是一个 $(n \times m)$ 张量,mat2 是一个 $(m \times p)$ 张量,那么 out 将是一个 $(n \times p)$ 张量。

注意

此函数不执行广播。有关矩阵乘法的广播,请参阅 torch.matmul()

支持以 strides 和稀疏形式的二维张量作为输入,并能对 strides 输入进行自动微分。

此操作支持具有稀疏布局的参数。如果提供了out,则使用其布局;否则,结果布局将根据input的布局进行推断。

警告

稀疏支持是一项 beta 功能,某些布局、数据类型和设备的组合可能不被支持,或不具备自动微分功能。如果你发现了缺失的功能,请提交一个特性请求。

该操作支持TensorFloat32

在某些ROCm设备上,当使用float16输入时,此模块会采用不同的精度进行反向传播。

参数
  • 输入 (Tensor) – 进行矩阵乘法运算的第一个张量

  • mat2 (张量) – 进行矩阵乘法运算的第二个矩阵

关键字参数

out (Tensor, 可选) – 指定输出张量。

示例:

>>> mat1 = torch.randn(2, 3)
>>> mat2 = torch.randn(3, 3)
>>> torch.mm(mat1, mat2)
tensor([[ 0.4851,  0.5037, -0.3633],
        [-0.0760, -3.6705,  2.4784]])
本页目录