?torch.cat, torch.concat, torch.concatenate
将向量按照指定的维度进行拼接。这三个函数是同一个函数,互为彼此的别名。函数的定义函数写在torch.cat
。
x = torch.randn(2, 3)
print(x)
'''
tensor([[ 0.7004, -0.0935, -0.2668],
[ 0.7922, 0.9567, 1.4191]])
'''
'''
将三个x tensor连接在一起,连接维度为0维
'''
x_row = torch.cat((x, x, x), 0)
print(x_row)
'''
将两个x tensor连接在一起,连接维度为1维
'''
x_col = torch.cat((x, x), 1)
print(x_col)
'''
tensor([[ 0.7004, -0.0935, -0.2668],
[ 0.7922, 0.9567, 1.4191],
[ 0.7004, -0.0935, -0.2668],
[ 0.7922, 0.9567, 1.4191],
[ 0.7004, -0.0935, -0.2668],
[ 0.7922, 0.9567, 1.4191]])
tensor([[ 0.7004, -0.0935, -0.2668, 0.7004, -0.0935, -0.2668],
[ 0.7922, 0.9567, 1.4191, 0.7922, 0.9567, 1.4191]])
'''
将tensor进行拼接,拼接的维度根据dim设置,默认为0(行拼接)
若dim设置为-1,则拼接维度会自动选择