【PyTorch】torch.utils.bottleneck実行時のPicklingErrorの対処法

前回の記事に書きましたが,PyTorchではボトルネック解析の機能があります。

実行方法は↓こんな感じです。

これを実行したときに,よく分からないエラーに遭遇しました。

とりあえず暫定的な対処方法は分かりましたので,記事に残しておきたいと思います。

実行環境

  • Windows環境(コマンドプロンプト上で実行)
  • PyTorch==0.4.1

エラーの内容

ログにPathが含まれている箇所がありましたので,途中は削除していますがこういうPicklingErrorです。

※最後の行の”BatchLoader”というのは自作したclassです。

対処方法

  • DataLoaderを作成するときに使用するtorch.utils.data.DataLoader()が原因
  • 引数のnum_workersを0にするとエラーが解消した

DataLoaderを作成している部分は以下のようにしています。

この中のnum_workersの値を”0″にすると,とりあえずエラーは消えてボトルネックの解析結果が出力されました。

原因は正直よく分かりません…。

スポンサーリンク