始める無料で始める

訓練用 DataLoader を作成する

データセットの分割が完了したので、次は訓練中にデータをバッチ単位で供給するデータローダーを定義します。DataLoader はデータを効率的にメモリへ読み込み、シャッフルによって汎化性能の向上を図れます。この演習では、train_dataloader メソッドを完成させましょう。

この演習はコースの一部です

PyTorch Lightning によるスケーラブルな AI モデルの構築

コースを見る

演習の手順

  • DataLoader をインポートします。
  • self.train_data を読み込む DataLoader を返し、汎化性能を高めるためにシャッフルを有効にします。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Import libraries
from torch.utils.data import ____
import lightning.pytorch as pl

class LoaderDataModule(pl.LightningDataModule):
    def __init__(self):
        super().__init__()
        self.train_data = None
        self.val_data = None
    def setup(self, stage=None):
        self.train_data, self.val_data = random_split(dataset, [80, 20])
    def train_dataloader(self):
      	# Complete DataLoader
        return ____(____, batch_size=16, shuffle=____) 
コードを編集して実行