transforms.Compose
时间: 2023-10-14 21:26:54 浏览: 108
`transforms.Compose` 是 PyTorch 中的一个函数,用于将多个数据预处理步骤组合成一个变换(transformation),从而构建一个数据转换管道。它接受一个由多个变换组成的列表,然后将这些变换按照顺序依次应用到数据上,最终返回处理后的数据。这个功能非常有用,因为在深度学习中,通常需要对原始数据进行多种不同的预处理操作,如随机裁剪、缩放、标准化等,而将这些操作组合在一起可以帮助我们更方便地对数据进行处理。下面是一个简单的示例:
```
from torchvision import transforms
# 定义一个变换列表
transform = transforms.Compose([
transforms.Resize((224, 224)),
transforms.ToTensor(),
transforms.Normalize(mean=[0.485, 0.456, 0.406],
std=[0.229, 0.224, 0.225])
])
# 使用变换列表对数据进行预处理
img = Image.open('example.jpg')
img = transform(img)
```
在这个示例中,我们首先定义了一个由三个变换组成的列表,分别是 `Resize`、`ToTensor` 和 `Normalize`。然后我们将这个列表传递给 `Compose` 函数,得到一个新的变换 `transform`。最后,我们使用 `transform` 对一张图片进行了预处理操作,首先将其缩放到 $224 \times 224$ 的大小,然后将其转换为张量,并对其进行了标准化处理。
阅读全文