LoginSignup
0
1

More than 3 years have passed since last update.

AWS SageMakerでpickleを使ってmodelのsave/loadをするときの注意点

Last updated at Posted at 2020-08-19

概要

AWS SageMakerで学習インスタンスで学習したモデルをpickleをsave、notebook側でloadをしようとしたら、エラーが出たので対処方法を紹介する。

cloudpickleをつかう

pickleでは、シリアライズする側で
グローバル変数またはその変数を参照しているオブジェクトが
名前空間内に存在しない環境でシリアライズできない。

cloudpickle.dump(predictor, open('%s/model'% model_dir, 'wb'))

cloudpickleのバージョンは1.3.0

学習インスタンスではデフォルトが1.5.0になっている。
notebook側は1.3.0である。notebookを1.5.0にあげてもエラーがでたため、学習インスタンス側をバージョンダウンさせる必要がある。

このため、デプロイする際も学習インスタンス同様cloudpickleのバージョンを1.3.0に指定する。

まとめ

簡単なメモ書きになってしまったが、cloudpickleでエラーになった場合は
バージョンを確認すると良い。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1