tf.kerasでtrainしていた時、ModelCheckpointのh5ファイルの保存でエラー。
RuntimeError: Unable to create link (name already exists)
h5pyで躓いているらしい。
2.10.0なら上手くいくかもしれないと聞いて試してみたが、エラーは治らなかった。
pip install h5py==2.10.0
エラーに name already exists と出ているので、モデルを構成する各レイヤーの名前を変えてみる。
for i, w in enumerate(my_model.weights):
split_name = w.name.split('/')
new_name = split_name[0] + '_' + str(i) + '/' + split_name[1] + '_' + str(i)
my_model.weights[i]._handle_name = new_name
しかし上手く行かない。
h5の変わりに、SavedModelを使うと上手く保存することが出来た。
tf.keras.callbacks.ModelCheckpoint(save_path.ckpt, ...)
参考
RuntimeError: Unable to create link (name already exists) during model saving with ModelCheckpoint · Issue #27688 · tensorflow/tensorflow
System information Have I written custom code (as opposed to using a stock example script provided in TensorFlow): Yes O...
Getting the RuntimeError: Unable to create link (name already exists) with a multi-input Keras model
I'm unable to save a Keras model as I get the error mentioned in the title. I have been using tensorflow-gpu. My model c...
Save and load models | TensorFlow Core
コメント