pad sequenceを使ってtutorialのLSTMの例を書き換える試み
長さが異なるTensorをpaddingして長さを揃え、1つのTensorにまとめて返す
batch_first引数
output will be in B x T x * if True, or in T x B x * otherwise
デフォルトはFalse(返り値はT x B x *)
paddingに対応する語彙とラベルを増やす必要があった
pad_sequenceによりDataLoaderのbatch_size引数が指定できるようになった🙌
しかし、batch_size=2では動かない(データが2件なので1か2しか取れない)
batch_size=2にすると、チュートリアルで文ごとに勾配をクリアするというコメントにも反してしまう
# Step 1. Remember that Pytorch accumulates gradients. We need to clear them out before each instance
UserWarningに従ってDataLoaderのnum_workersを指定したところ、訓練がかえって遅くなった(と感じる)
how many subprocesses to use for data loading. 0 means that the data will be loaded in the main process. (default: 0) (DataLoaderのドキュメントより)