TypeError:不能为深度学习模型腌制weakref对象

时间:2020-11-03 15:28:16

标签: python-3.x deep-learning classification tensorflow2.0 tf.keras

当我运行pickle.dump(model,open('modelDL.pkl','wb'))时,我收到TypeError:无法腌制weakref对象。

我创建了一个深度学习模型,试图将其保存。 下面是模型。

model = Sequential()

model.add( Dense(30,activation='relu') )
model.add( Dropout(0.5) ) 
model.add( Dense(20,activation='relu') )
model.add( Dropout(0.5) ) 
model.add( Dense(20,activation='relu') )
model.add( Dropout(0.5) )     
model.add( Dense(1,activation='sigmoid') )

model.compile(optimizer='adam',loss='binary_crossentropy',metrics=['accuracy']) 

1 个答案:

答案 0 :(得分:0)

不能pickleweakref是因为深度学习模型太大,pickle只用于存储小模型

Use this : HDF5 用于存储大数据

from keras.models import load_model

model.save('my_model.h5')  # creates a HDF5 file 'my_model.h5'

返回一个编译好的模型

与上一个相同

model1 = load_model('my_model.h5')

y_pred = model1.predict(x_test)