PaddlePaddleフレームワークでデータ拡張を行う方法は?
PaddlePaddleフレームワークでは、paddle.vision.transformsモジュールを使用してデータ拡張を行うことができます。以下は一般的に使用されるデータ拡張方法のいくつかです:
- ランダムな横反転
transform = transforms.Compose([
transforms.RandomHorizontalFlip(),
# 其他数据增强方法
])
- ランダムに垂直方向に反転
transform = transforms.Compose([
transforms.RandomVerticalFlip(),
# 其他数据增强方法
])
- ランダム回転
transform = transforms.Compose([
transforms.RandomRotation(degrees=45),
# 其他数据增强方法
])
- ランダムにリサイズされたクロップ
transform = transforms.Compose([
transforms.RandomResizedCrop(size=(224, 224)),
# 其他数据增强方法
])
- テンソルに変換
transform = transforms.Compose([
transforms.ToTensor(),
# 其他数据增强方法
])
これらのデータ拡張手法を組み合わせると、データ拡張の変換を作成し、データをロードする際にこの変換を使用して画像を拡張できます。例えば、
train_dataset = paddle.vision.datasets.MNIST(mode='train', transform=transform)
train_loader = paddle.io.DataLoader(train_dataset, batch_size=32, shuffle=True)