📅  最后修改于: 2023-12-03 14:46:48.334000             🧑  作者: Mango
PyTorch是一个用于科学计算的开源深度学习库,它支持的张量操作类似于NumPy数组。本篇文章将会介绍如何在PyTorch中创建、操作一维张量。
在PyTorch中,可以使用torch.Tensor()
函数创建一维张量。例如,创建一个长度为3的一维张量:
import torch
# 创建一维张量
x = torch.Tensor([1, 2, 3])
print(x)
输出结果:
tensor([1., 2., 3.])
在PyTorch中,一维张量(又称为向量)和其他张量的操作类似。一些常用的属性和方法如下:
shape
: 张量的形状dtype
: 张量的数据类型size()
: 返回张量中元素的个数tolist()
: 将张量转换为Python列表view()
: 改变张量的形状unsqueeze()
: 将一维张量增加一个维度squeeze()
: 将长度为1的维度去掉import torch
x = torch.Tensor([1, 2, 3])
print(x.shape) # torch.Size([3])
print(x.dtype) # torch.float32
print(x.size()) # 3
print(x.tolist()) # [1.0, 2.0, 3.0]
x = x.unsqueeze(0) # 增加一个维度
print(x.shape) # torch.Size([1, 3])
x = x.squeeze(0) # 去掉长度为1的维度
print(x.shape) # torch.Size([3])
一维张量中的元素可以像列表一样通过下标进行访问。也支持多种数学、向量之间的操作。
import torch
# 创建一维张量
x = torch.Tensor([1, 2, 3])
# 访问张量的第一个元素
print(x[0]) # tensor(1.)
# 加法操作
y = torch.Tensor([2, 3, 4])
z = x + y
print(z) # tensor([3., 5., 7.])
# 数乘操作
z = 2 * x
print(z) # tensor([2., 4., 6.])
# 点乘操作
z = x.dot(y)
print(z) # tensor(20.)
在PyTorch中,一维张量是非常基础和重要的概念。它的访问、创建、属性和方法与其他张量操作类似。通过学习和掌握PyTorch的一维张量操作,可以更好地理解和实现深度学习中的向量计算。