datamodule
LightningDataModule
はPyTorch Datasetの軽いWrapper.
Train/Eval/Testの分割やDataset preparation & runtime setupなどを包括.
moduleがやってくれる仕事はほとんど無くて、どうも分散環境だといいことがあるみたい.
newしてtrainerにぼんっと突っ込むだけでpreparationからtrain/evalまで全部ラップできるのは確かに楽ではある.
なによりPyTorch Dataset自体が大事.
ここでdownloadやpreprocessingをきちんと定義できるかが理解性・再利用性を決める.