张量是 PyTorch 中的基本数据结构,类似于 NumPy 中的数组。它们是支持自动微分和 GPU 加速的灵活多维数组。

张量的创建

在 PyTorch 中,你可以使用多种方式来创建张量:

  • 使用 Python 列表或 NumPy 数组
  • 使用 PyTorch 的 torch.tensor() 函数
  • 使用 PyTorch 的 torch.zeros(), torch.ones(), torch.randn() 等函数

使用 Python 列表或 NumPy 数组

import torch

# 使用 Python 列表
tensor_from_list = torch.tensor([1, 2, 3])

# 使用 NumPy 数组
tensor_from_numpy = torch.from_numpy(np.array([4, 5, 6]))

使用 PyTorch 函数

# 创建一个全为 0 的张量
zeros_tensor = torch.zeros((2, 3))

# 创建一个全为 1 的张量
ones_tensor = torch.ones((2, 3))

# 创建一个正态分布的张量
randn_tensor = torch.randn((2, 3))

张量的操作

张量支持许多数学运算,例如加法、减法、乘法和除法。

# 张量加法
addition = tensor_from_list + tensor_from_numpy

# 张量乘法
multiplication = tensor_from_list * tensor_from_numpy

图像

张量在图像处理中非常重要。以下是一个使用 PyTorch 创建和操作图像张量的示例。

图像处理在 PyTorch 中

更多关于图像处理的信息

总结

张量是 PyTorch 中的核心概念,理解张量的创建和操作对于进行深度学习任务至关重要。

继续学习 PyTorch