始める無料で始める

LightningDataModule でデータを分割する

LightningDataModule 内の setup メソッドを完成させます。データセットを適切に分割することで、モデルは一方のサブセットで訓練され、もう一方で検証されるため、過学習を防げます。

dataset はすでにインポート済みです。

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

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

コースを見る

演習の手順

  • データセットを訓練用と検証用に分割するために random_split をインポートします。
  • random_split を使って、データセットを訓練用(80%)と検証用(20%)に分割します。

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

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

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

class SplitDataModule(pl.LightningDataModule):
    def __init__(self):
        super().__init__()
        self.train_data = None
        self.val_data = None
    def setup(self, stage=None):
        # Split the dataset into training (80%) and validation (20%)
        self.____, self.____ = random_split(dataset, [____, ____])
コードを編集して実行