概述
torch.cat()是PyTorch中一个强大的函数,用于在张量之间创建连接。本文将详细介绍如何使用torch.cat(),并通过实际例子展示其强大的功能。
函数定义
torch.cat()函数接受两个主要参数:要连接的张量列表(tensors)以及连接维度(dim)。其中,dim默认值为0。
示例
连接两个张量
我们创建两个形状相同的张量a和b,并使用torch.cat()将它们在第0维上连接起来。
```python
import torch
a = torch.randn(2, 3)
b = torch.randn(2, 3)
c = torch.cat([a, b], dim=0)
print(c)
```
输出:
```scss
tensor([[...],..., ...]),这里显示的是连接后的张量。
```
连接多个张量
同样,我们可以使用torch.cat()连接多个张量。以下示例展示了如何连接三个张量a、b和c。
```python
a = torch.randn(2, 3)
b = torch.randn(2, 3)
c = torch.randn(2, 3)
d = torch.cat([a, b, c], dim=0)
print(d)
```
输出:一个包含所有张量元素的更大张量。
连接不同形状的张量
torch.cat()的强大之处在于,它甚至可以连接形状不同的张量,只要这些张量至少有一个公共维度。以下示例展示了如何连接形状不同的张量a和b。
```python
a = torch.randn(2, 3) 假设这是一个形状为2x3的张量
b = torch.randn(3, 3) 假设这是一个形状为3x3的张量,可以在第0维上与a连接
c = torch.cat([a, b], dim=0) 使用torch.cat()将a和b在第0维上连接起来
print(c)
```输出:一个形状为5x3的张量,包含了原始张量a和b的所有元素。
文章来自《钓虾网小编|www.jnqjk.cn》整理于网络,文章内容不代表本站立场,转载请注明出处。