torch 多个张量相乘
时间: 2023-07-03 11:13:50 浏览: 182
多项式相乘
可以使用 `torch.mul()` 函数进行多个张量的逐元素相乘,或者使用 `torch.mm()` 函数进行矩阵乘法(需要满足矩阵乘法的维度要求)。
举个例子,假设有三个大小为 (2, 3) 的张量 `a`、`b` 和 `c`,可以使用以下代码进行逐元素相乘:
```python
import torch
a = torch.tensor([[1, 2, 3], [4, 5, 6]])
b = torch.tensor([[2, 3, 4], [5, 6, 7]])
c = torch.tensor([[3, 4, 5], [6, 7, 8]])
result = torch.mul(torch.mul(a, b), c)
print(result)
```
输出结果为:
```
tensor([[ 6, 24, 60],
[120, 210, 336]])
```
如果要进行矩阵乘法,可以将其中两个张量转置后相乘:
```python
a = torch.tensor([[1, 2, 3], [4, 5, 6]])
b = torch.tensor([[2, 3], [5, 6], [8, 9]])
c = torch.tensor([[3, 4, 5], [6, 7, 8]])
result = torch.mm(torch.mm(a, b), c.t())
print(result)
```
输出结果为:
```
tensor([[163, 236],
[406, 583]])
```
阅读全文