torch.chain_matmul#
- torch.chain_matmul(*matrices, out=None)[源代码]#
返回 个 2 维张量的矩阵乘积。该乘积使用矩阵链顺序算法进行高效计算,该算法选择算术运算成本最低的顺序([CLRS])。请注意,由于这是一个用于计算乘积的函数,因此 必须大于或等于 2;如果等于 2,则返回一个简单的矩阵-矩阵乘积。如果 为 1,则此操作无效——直接返回原始矩阵。
警告
torch.chain_matmul()已弃用,将在未来的 PyTorch 版本中移除。请改用torch.linalg.multi_dot(),它接受一个包含两个或多个张量的列表,而不是多个参数。- 参数:
matrices (Tensors...) – 一个包含 2 个或更多 2 维张量的序列,用于确定其乘积。
out (Tensor, optional) – 输出张量。如果
out=None,则忽略。
- 返回:
如果第 张量的维度为 ,则乘积的维度将是 。
- 返回类型:
示例
>>> a = torch.randn(3, 4) >>> b = torch.randn(4, 5) >>> c = torch.randn(5, 6) >>> d = torch.randn(6, 7) >>> # will raise a deprecation warning >>> torch.chain_matmul(a, b, c, d) tensor([[ -2.3375, -3.9790, -4.1119, -6.6577, 9.5609, -11.5095, -3.2614], [ 21.4038, 3.3378, -8.4982, -5.2457, -10.2561, -2.4684, 2.7163], [ -0.9647, -5.8917, -2.3213, -5.2284, 12.8615, -12.2816, -2.5095]])