PyTorch torch.vstack 函数
torch.vstack 是 PyTorch 中用于垂直(沿行)堆叠张量的函数。
函数定义
torch.vstack(tensors, *, out=None)
使用示例
实例
import torch
# 一维张量垂直堆叠
x1 = torch.tensor([1, 2, 3])
x2 = torch.tensor([4, 5, 6])
result = torch.vstack([x1, x2])
print("一维张量垂直堆叠:")
print(f" x1: {x1}")
print(f" x2: {x2}")
print(f" vstack:n{result}")
# 二维张量垂直堆叠
y1 = torch.tensor([[1, 2], [3, 4]])
y2 = torch.tensor([[5, 6], [7, 8]])
result = torch.vstack([y1, y2])
print("n二维张量垂直堆叠:")
print(f" y1:n{y1}")
print(f" y2:n{y2}")
print(f" vstack:n{result}")
# 多个张量堆叠
z1 = torch.tensor([1, 2, 3])
z2 = torch.tensor([4, 5, 6])
z3 = torch.tensor([7, 8, 9])
result = torch.vstack([z1, z2, z3])
print("n多个一维张量堆叠:")
print(f" result:n{result}")
# 一维张量垂直堆叠
x1 = torch.tensor([1, 2, 3])
x2 = torch.tensor([4, 5, 6])
result = torch.vstack([x1, x2])
print("一维张量垂直堆叠:")
print(f" x1: {x1}")
print(f" x2: {x2}")
print(f" vstack:n{result}")
# 二维张量垂直堆叠
y1 = torch.tensor([[1, 2], [3, 4]])
y2 = torch.tensor([[5, 6], [7, 8]])
result = torch.vstack([y1, y2])
print("n二维张量垂直堆叠:")
print(f" y1:n{y1}")
print(f" y2:n{y2}")
print(f" vstack:n{result}")
# 多个张量堆叠
z1 = torch.tensor([1, 2, 3])
z2 = torch.tensor([4, 5, 6])
z3 = torch.tensor([7, 8, 9])
result = torch.vstack([z1, z2, z3])
print("n多个一维张量堆叠:")
print(f" result:n{result}")
输出结果为:
一维张量垂直堆叠:
x1: tensor([1, 2, 3])
x2: tensor([4, 5, 6])
vstack:
tensor([[1, 2, 3],
[4, 5, 6]])
二维张量垂直堆叠:
y1:
tensor([[1, 2],
[3, 4]])
y2:
tensor([[5, 6],
[7, 8]])
vstack:
tensor([[1, 2],
[3, 4],
[5, 6],
[7, 8]])
多个一维张量堆叠:
result:
tensor([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]])

Pytorch torch 参考手册