[输入参数用法不一致]torchvision.datasets.Flowers102¶
torchvision.datasets.Flowers102¶
torchvision.datasets.Flowers102(root: Union[str, Path], split: str = 'train', transform: Optional[Callable] = None, target_transform: Optional[Callable] = None, download: bool = False)
paddle.vision.datasets.Flowers¶
paddle.vision.datasets.Flowers(data_file=None, label_file=None, setid_file=None, mode='train', transform=None, download=True, backend=None)
两者功能一致,指定数据集文件路径的参数 root
与指定训练集的参数 split
的用法不一致,具体如下:
参数映射¶
torchvision | PaddlePaddle | 备注 |
---|---|---|
root | data_file, label_file, setid_file | 指定数据集目录,Paddle 使用 data_file、label_file 和 setid_file,等价的实现 PyTorch 的 root 的功能,需要转写。 |
split | mode | 训练集、数据集或验证集。对于训练集和数据集,PyTorch 参数与 Paddle 参数相同,为 'train' 或 'test',对于验证集,PyTorch 参数 split='val' 对应 Paddle 参数 mode='valid',需要转写。 |
transform | transform | 图片数据的预处理。 |
target_transform | - | 接受目标数据并转换,Paddle 无此参数,暂无转写方式。 |
download | download | 是否自动下载数据集文件。 |
- | backend | 指定图像类型,PyTorch 无此参数,Paddle 保持默认即可。 |
转写示例¶
root:数据集文件路径¶
# PyTorch 写法
train_dataset = torchvision.datasets.Flowers102(root='./data', split='train')
# Paddle 写法
train_dataset = paddle.vision.datasets.Flowers(data_file='./data/flowers-102/102flowers.tgz', label_file='./data/flowers-102/imagelabels.mat', setid_file='./data/flowers-102/setid.mat', mode='train')
split: 训练集或数据集¶
验证集
# PyTorch 写法
train_dataset = torchvision.datasets.Flowers102(root='./data', split='val')
# Paddle 写法
train_dataset = paddle.vision.datasets.Flowers(data_file='./data/flowers-102/102flowers.tgz', label_file='./data/flowers-102/imagelabels.mat', setid_file='./data/flowers-102/setid.mat', mode='valid')