質問: train_test_split(Data_X,Data_Y,test_size=0.2, random_state=0)` のようにしています。 この時自作loss関数の計算に、`Data_Y`と推定した`Data_Y`のみならず、`Data_A`と`Data_B`も使いたいです。 今のところ実装を試みている手法は「(3)で振り分けられたインデックスを記録しておき、loss計算時に何個目のバッチかを見て、あらかじめインデックスを合わせて保存しておいた`Data_A`と`Data_B`(の一部)のファイルを読み込む」という方法なのですが、変更箇所が多岐にわたりそうなため、もしもっと効率的かつバグを生まなさそうな方法があれば試したいと思っています。 より効率的な方法をご存じの方、思いついた方など、お知恵を貸していただけないでしょうか。 なお単なる「`Data_Y`と推定した`Data_Y`のみを引数にもつ自作loss関数」を動かすことはできています。よろしくお願いします。
回答: 自己解決したので閉じます。 PyTorch上では、loss関数の引数は自由に持つことができ、教師データと同じサイズのベクトルである必要もないため、追加変数がある場合も、通常のコスト関数の自作と同じように設計することができました。