PyTorchでメモリ使用量を最小限に抑える PyTorchを使ってディープラーニングのモデルを構築する際、メモリ使用量を最小限に抑えることが非常に重要です。メモリの効率的な利用によって、モデルの学習がスムーズに進み、また推論時のパフォーマンスも向上します。 今回は、バッチサイズBの2D テンソル (B x H x W) を3チャンネルのイメージテンソル (B x 3 x H x W) に変換する際の、非効率的な方法と効率的な方法を比較してみましょう。 非効率的な方法 x = x.unsqueeze(-1) x = torch.cat([x, x, x], dim=3).permute(0, …