Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

学習の再開について #4

Closed
daikitemp opened this issue May 23, 2020 · 4 comments
Closed

学習の再開について #4

daikitemp opened this issue May 23, 2020 · 4 comments

Comments

@daikitemp
Copy link

はじめまして。
学習を再開させようとして、前回終了した ***.npz ファイルから学習を再開させようとしたところ、下記のようなエラーが出てしまいました。
KeyError: 'updater/iterator:main/current_position is not a file in the archive'
実行時に、--resume 'model-detector.npz' と指定して実行しました。
chainercv==0.9.0 を使用しております。
いろいろと調べましたが解決できませんでした。
どなたかお力をお貸し下さい。

@IshitaTakeshi
Copy link
Owner

エラーログ全体をお見せいただけないでしょうか

@daikitemp
Copy link
Author

お返事ありがとうございます。
エラーログを以下に示します。
(chainer) [daiki@node RoadDamageDetector]$ python3 train_detector.py --base-network vgg16 --gpu 0 --resume 'model-detector.npz'
Data directory : RoadDamageDataset/All
Batchsize : 32
GPU ID : 0
Base network : vgg16
Pretrained extractor : auto
Pretrained model : None
Output directory : result-detection
Resume from : model-detector.npz
Traceback (most recent call last):
File "train_detector.py", line 251, in
main()
File "train_detector.py", line 239, in main
serializers.load_npz(args.resume, trainer)
File "/home/daiki/.pyenv/versions/anaconda3-2020.02/envs/chainer/lib/python3.8/site-packages/chainer/serializers/npz.py", line 243, in load_npz
d.load(obj)
File "/home/daiki/.pyenv/versions/anaconda3-2020.02/envs/chainer/lib/python3.8/site-packages/chainer/serializer.py", line 83, in load
obj.serialize(self)
File "/home/daiki/.pyenv/versions/anaconda3-2020.02/envs/chainer/lib/python3.8/site-packages/chainer/training/trainer.py", line 388, in serialize
self.updater.serialize(serializer['updater'])
File "/home/daiki/.pyenv/versions/anaconda3-2020.02/envs/chainer/lib/python3.8/site-packages/chainer/training/updaters/standard_updater.py", line 265, in serialize
iterator.serialize(serializer['iterator:' + name])
File "/home/daiki/.pyenv/versions/anaconda3-2020.02/envs/chainer/lib/python3.8/site-packages/chainer/iterators/serial_iterator.py", line 106, in serialize
current_position = serializer('current_position',
File "/home/daiki/.pyenv/versions/anaconda3-2020.02/envs/chainer/lib/python3.8/site-packages/chainer/serializers/npz.py", line 176, in call
dataset = self.npz[key]
File "/home/daiki/.pyenv/versions/anaconda3-2020.02/envs/chainer/lib/python3.8/site-packages/numpy/lib/npyio.py", line 266, in getitem
raise KeyError("%s is not a file in the archive" % key)
KeyError: 'updater/iterator:main/current_position is not a file in the archive'

よろしくお願いいたします。

@IshitaTakeshi
Copy link
Owner

学習を再開する際は model_*.npz ではなく snapshot_*.npz を使ってください.
参考: chainer/chainercv#937 (comment)

@daikitemp
Copy link
Author

snapshotを利用したらできました。
参考も用意していただきありがとうございました。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants