「Pytorch:data」の版間の差分
ナビゲーションに移動
検索に移動
編集の要約なし |
編集の要約なし |
||
| 22行目: | 22行目: | ||
from torchvision import datasets, transforms | from torchvision import datasets, transforms | ||
from torch.utils.data import DataLoader | from torch.utils.data import DataLoader | ||
# 前処理 | # 前処理 | ||
transform = transforms.Compose([ | transform = transforms.Compose([ | ||
| 32行目: | 32行目: | ||
tl = DataLoader(ds, batch_size=batch_size, shuffle=True) | tl = DataLoader(ds, batch_size=batch_size, shuffle=True) | ||
ここで,torchvision とは,Pytorch で画像データを扱うときに使える便利なライブラリです.Torchvision に含まれる datasets というモジュールはデータのファイルの読み込みやデータセットの分割(学習用・検証用・テスト用に分割)などに,transforms | ここで,torchvision とは,Pytorch で画像データを扱うときに使える便利なライブラリです.Torchvision に含まれる datasets というモジュールはデータのファイルの読み込みやデータセットの分割(学習用・検証用・テスト用に分割)などに,transforms というモジュールはデータの前処理に,それぞれ使われます.また,torch.utils.data (torch の中の utils の中の data というモジュール)に含まれる DataLoader というモジュールは,その名の通りデータローダーを作成するために使われます. | ||
=== datasets === | |||
2025年2月22日 (土) 14:50時点における版
データセットの扱い
Pytorch でデータセットを扱う練習と,データ拡張(data augmentation)機能の実装方法について学びます.
Pytorch の DataLoader とは
PyTorchにおける DataLoader は、大規模なデータセットを効率的にミニバッチに分割し、前処理やシャッフルを行いながら,モデルに供給するための機能です。
前処理には,Pytorchでの用いた学習・推論のために最低限必要な処理と,
- 縦横のサイズ(解像度)調整
- 型キャスト
学習後の精度をより良くするためのデータ拡張があります.
- ランダムな左右反転
- ランダムな並進
- ランダムな回転
- ランダムな色変更
- ランダムなマスク処理
など.
DataLoader の作り方
以下は,最もシンプルな例.
# ライブラリのインポート
from torchvision import datasets, transforms
from torch.utils.data import DataLoader
# 前処理
transform = transforms.Compose([
transforms.ToTensor(),
])
# データローダーの作成
ds = datasets.STL10(root='./data', split='train', download=False, transform=transform)
tl = DataLoader(ds, batch_size=batch_size, shuffle=True)
ここで,torchvision とは,Pytorch で画像データを扱うときに使える便利なライブラリです.Torchvision に含まれる datasets というモジュールはデータのファイルの読み込みやデータセットの分割(学習用・検証用・テスト用に分割)などに,transforms というモジュールはデータの前処理に,それぞれ使われます.また,torch.utils.data (torch の中の utils の中の data というモジュール)に含まれる DataLoader というモジュールは,その名の通りデータローダーを作成するために使われます.