类型错误:can';t pickle NotImplementedType对象(在keras、python中)
我在用Keras做深度跑步。 但是,在学习后存储模型的过程中发生了以下错误 TypeError:无法pickle NotImplementedType对象 当我在另一个目录中运行相同的代码时,我没有问题 下面的代码是导致错误的代码部分类型错误:can';t pickle NotImplementedType对象(在keras、python中),python,keras,pickle,Python,Keras,Pickle,我在用Keras做深度跑步。 但是,在学习后存储模型的过程中发生了以下错误 TypeError:无法pickle NotImplementedType对象 当我在另一个目录中运行相同的代码时,我没有问题 下面的代码是导致错误的代码部分 .... model.add(Dense(2, activation='relu')) model.add(Dense(1, activation='sigmoid')) model = multi_gpu_model(model, gpus=4) mo
....
model.add(Dense(2, activation='relu'))
model.add(Dense(1, activation='sigmoid'))
model = multi_gpu_model(model, gpus=4)
model.compile(loss='binary_crossentropy', optimizer = 'adam', metrics = ['accuracy'])
model.fit(x_train,y_train,epochs = 3, batch_size =500)
scores = model.evaluate(x_test,y_test)
#print("%s:.2f%%"%(model.metrics_names[1], scores[1]*100))
model.save('/disk3/seaice/seaice_keras_model2.h5')
keras内的储存方法中是否出现酸洗类型错误
它也是相同的环境,但我不知道为什么它在不同的目录中工作方式不同
如果您能为我提供此问题的解决方案,我将不胜感激。在保存多gpu模型时,Keras文档建议您调用基本模型的
save(fname)
或save_weights(fname)
方法,而不是多gpu模型的方法(请参阅本页最底部)
我会将您的多gpu\U模型
分配给一个新变量,而不是重新分配模型
。这样你就可以很容易地参考你的基本模型,你可以用它来节省重量。我在解决这个问题时发现了一些有趣的东西。当我第一次使用这个模型时,我使用了25亿个数据集。发生错误时,使用了9000万个数据集。因此,我充分降低了模型的层,它再次运行良好。如果模型对于数据量来说太深,是否会出现此问题?或者这是偶然解决的问题?